3882 lines
4.5 MiB
3882 lines
4.5 MiB
/**
|
||
* plotly.js v3.1.0
|
||
* 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 Uet=Object.create;var ES=Object.defineProperty,Vet=Object.defineProperties,Get=Object.getOwnPropertyDescriptor,Het=Object.getOwnPropertyDescriptors,jet=Object.getOwnPropertyNames,aee=Object.getOwnPropertySymbols,Wet=Object.getPrototypeOf,see=Object.prototype.hasOwnProperty,Xet=Object.prototype.propertyIsEnumerable;var oee=(e,t,r)=>t in e?ES(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,lee=(e,t)=>{for(var r in t||(t={}))see.call(t,r)&&oee(e,r,t[r]);if(aee)for(var r of aee(t))Xet.call(t,r)&&oee(e,r,t[r]);return e},uee=(e,t)=>Vet(e,Het(t));var ru=(e,t)=>()=>(e&&(t=e(e=0)),t);var ye=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),cee=(e,t)=>{for(var r in t)ES(e,r,{get:t[r],enumerable:!0})},fee=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of jet(t))!see.call(e,i)&&i!==r&&ES(e,i,{get:()=>t[i],enumerable:!(n=Get(t,i))||n.enumerable});return e};var Zet=(e,t,r)=>(r=e!=null?Uet(Wet(e)):{},fee(t||!e||!e.__esModule?ES(r,"default",{value:e,enumerable:!0}):r,e)),B1=e=>fee(ES({},"__esModule",{value:!0}),e);var o6=ye(hee=>{"use strict";hee.version="3.1.0"});var vee=ye((dee,s6)=>{(function(t,r,n){r[t]=r[t]||n(),typeof s6!="undefined"&&s6.exports&&(s6.exports=r[t])})("Promise",typeof window!="undefined"?window:dee,function(){"use strict";var t,r,n,i=Object.prototype.toString,a=typeof setImmediate!="undefined"?function(C){return setImmediate(C)}:setTimeout;try{Object.defineProperty({},"x",{}),t=function(C,E,A,L){return Object.defineProperty(C,E,{value:A,writable:!0,configurable:L!==!1})}}catch(p){t=function(E,A,L){return E[A]=L,E}}n=function(){var C,E,A;function L(_,k){this.fn=_,this.self=k,this.next=void 0}return{add:function(k,M){A=new L(k,M),E?E.next=A:C=A,E=A,A=void 0},drain:function(){var k=C;for(C=E=r=void 0;k;)k.fn.call(k.self),k=k.next}}}();function o(p,C){n.add(p,C),r||(r=a(n.drain))}function s(p){var C,E=typeof p;return p!=null&&(E=="object"||E=="function")&&(C=p.then),typeof C=="function"?C:!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,C,E){var A,L;try{C===!1?E.reject(p.msg):(C===!0?A=p.msg:A=C.call(void 0,p.msg),A===E.promise?E.reject(TypeError("Promise-chain cycle")):(L=s(A))?L.call(A,E.resolve,E.reject):E.resolve(A))}catch(_){E.reject(_)}}function c(p){var C,E=this;if(!E.triggered){E.triggered=!0,E.def&&(E=E.def);try{(C=s(p))?o(function(){var A=new d(E);try{C.call(p,function(){c.apply(A,arguments)},function(){f.apply(A,arguments)})}catch(L){f.call(A,L)}}):(E.msg=p,E.state=1,E.chain.length>0&&o(l,E))}catch(A){f.call(new d(E),A)}}}function f(p){var C=this;C.triggered||(C.triggered=!0,C.def&&(C=C.def),C.msg=p,C.state=2,C.chain.length>0&&o(l,C))}function h(p,C,E,A){for(var L=0;L<C.length;L++)(function(k){p.resolve(C[k]).then(function(g){E(k,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 C=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}),C.chain.push(_),C.state!==0&&o(l,C),_.promise},this.catch=function(A){return this.then(void 0,A)};try{p.call(void 0,function(A){c.call(C,A)},function(A){f.call(C,A)})}catch(E){f.call(C,E)}}var b=t({},"constructor",x,!1);return x.prototype=b,t(b,"__NPO__",0,!1),t(x,"resolve",function(C){var E=this;return C&&typeof C=="object"&&C.__NPO__===1?C:new E(function(L,_){if(typeof L!="function"||typeof _!="function")throw TypeError("Not a function");L(C)})}),t(x,"reject",function(C){return new this(function(A,L){if(typeof A!="function"||typeof L!="function")throw TypeError("Not a function");L(C)})}),t(x,"all",function(C){var E=this;return i.call(C)!="[object Array]"?E.reject(TypeError("Not an array")):C.length===0?E.resolve([]):new E(function(L,_){if(typeof L!="function"||typeof _!="function")throw TypeError("Not a function");var k=C.length,M=Array(k),g=0;h(E,C,function(T,z){M[T]=z,++g===k&&L(M)},_)})}),t(x,"race",function(C){var E=this;return i.call(C)!="[object Array]"?E.reject(TypeError("Not an array")):new E(function(L,_){if(typeof L!="function"||typeof _!="function")throw TypeError("Not a function");h(E,C,function(M,g){L(g)},_)})}),x})});var Oa=ye((ntr,l6)=>{(function(){var e={version:"3.8.2"},t=[].slice,r=function(X){return t.call(X)},n=self.document;function i(X){return X&&(X.ownerDocument||X.document||X).documentElement}function a(X){return X&&(X.ownerDocument&&X.ownerDocument.defaultView||X.document&&X||X.defaultView)}if(n)try{r(n.documentElement.childNodes)[0].nodeType}catch(X){r=function(se){for(var Te=se.length,Ne=new Array(Te);Te--;)Ne[Te]=se[Te];return Ne}}if(Date.now||(Date.now=function(){return+new Date}),n)try{n.createElement("DIV").style.setProperty("opacity",0,"")}catch(X){var o=this.Element.prototype,s=o.setAttribute,l=o.setAttributeNS,u=this.CSSStyleDeclaration.prototype,c=u.setProperty;o.setAttribute=function(se,Te){s.call(this,se,Te+"")},o.setAttributeNS=function(se,Te,Ne){l.call(this,se,Te,Ne+"")},u.setProperty=function(se,Te,Ne){c.call(this,se,Te+"",Ne)}}e.ascending=f;function f(X,se){return X<se?-1:X>se?1:X>=se?0:NaN}e.descending=function(X,se){return se<X?-1:se>X?1:se>=X?0:NaN},e.min=function(X,se){var Te=-1,Ne=X.length,He,Ye;if(arguments.length===1){for(;++Te<Ne;)if((Ye=X[Te])!=null&&Ye>=Ye){He=Ye;break}for(;++Te<Ne;)(Ye=X[Te])!=null&&He>Ye&&(He=Ye)}else{for(;++Te<Ne;)if((Ye=se.call(X,X[Te],Te))!=null&&Ye>=Ye){He=Ye;break}for(;++Te<Ne;)(Ye=se.call(X,X[Te],Te))!=null&&He>Ye&&(He=Ye)}return He},e.max=function(X,se){var Te=-1,Ne=X.length,He,Ye;if(arguments.length===1){for(;++Te<Ne;)if((Ye=X[Te])!=null&&Ye>=Ye){He=Ye;break}for(;++Te<Ne;)(Ye=X[Te])!=null&&Ye>He&&(He=Ye)}else{for(;++Te<Ne;)if((Ye=se.call(X,X[Te],Te))!=null&&Ye>=Ye){He=Ye;break}for(;++Te<Ne;)(Ye=se.call(X,X[Te],Te))!=null&&Ye>He&&(He=Ye)}return He},e.extent=function(X,se){var Te=-1,Ne=X.length,He,Ye,Ct;if(arguments.length===1){for(;++Te<Ne;)if((Ye=X[Te])!=null&&Ye>=Ye){He=Ct=Ye;break}for(;++Te<Ne;)(Ye=X[Te])!=null&&(He>Ye&&(He=Ye),Ct<Ye&&(Ct=Ye))}else{for(;++Te<Ne;)if((Ye=se.call(X,X[Te],Te))!=null&&Ye>=Ye){He=Ct=Ye;break}for(;++Te<Ne;)(Ye=se.call(X,X[Te],Te))!=null&&(He>Ye&&(He=Ye),Ct<Ye&&(Ct=Ye))}return[He,Ct]};function h(X){return X===null?NaN:+X}function d(X){return!isNaN(X)}e.sum=function(X,se){var Te=0,Ne=X.length,He,Ye=-1;if(arguments.length===1)for(;++Ye<Ne;)d(He=+X[Ye])&&(Te+=He);else for(;++Ye<Ne;)d(He=+se.call(X,X[Ye],Ye))&&(Te+=He);return Te},e.mean=function(X,se){var Te=0,Ne=X.length,He,Ye=-1,Ct=Ne;if(arguments.length===1)for(;++Ye<Ne;)d(He=h(X[Ye]))?Te+=He:--Ct;else for(;++Ye<Ne;)d(He=h(se.call(X,X[Ye],Ye)))?Te+=He:--Ct;if(Ct)return Te/Ct},e.quantile=function(X,se){var Te=(X.length-1)*se+1,Ne=Math.floor(Te),He=+X[Ne-1],Ye=Te-Ne;return Ye?He+Ye*(X[Ne]-He):He},e.median=function(X,se){var Te=[],Ne=X.length,He,Ye=-1;if(arguments.length===1)for(;++Ye<Ne;)d(He=h(X[Ye]))&&Te.push(He);else for(;++Ye<Ne;)d(He=h(se.call(X,X[Ye],Ye)))&&Te.push(He);if(Te.length)return e.quantile(Te.sort(f),.5)},e.variance=function(X,se){var Te=X.length,Ne=0,He,Ye,Ct=0,nt=-1,jt=0;if(arguments.length===1)for(;++nt<Te;)d(He=h(X[nt]))&&(Ye=He-Ne,Ne+=Ye/++jt,Ct+=Ye*(He-Ne));else for(;++nt<Te;)d(He=h(se.call(X,X[nt],nt)))&&(Ye=He-Ne,Ne+=Ye/++jt,Ct+=Ye*(He-Ne));if(jt>1)return Ct/(jt-1)},e.deviation=function(){var X=e.variance.apply(this,arguments);return X&&Math.sqrt(X)};function v(X){return{left:function(se,Te,Ne,He){for(arguments.length<3&&(Ne=0),arguments.length<4&&(He=se.length);Ne<He;){var Ye=Ne+He>>>1;X(se[Ye],Te)<0?Ne=Ye+1:He=Ye}return Ne},right:function(se,Te,Ne,He){for(arguments.length<3&&(Ne=0),arguments.length<4&&(He=se.length);Ne<He;){var Ye=Ne+He>>>1;X(se[Ye],Te)>0?He=Ye:Ne=Ye+1}return Ne}}}var x=v(f);e.bisectLeft=x.left,e.bisect=e.bisectRight=x.right,e.bisector=function(X){return v(X.length===1?function(se,Te){return f(X(se),Te)}:X)},e.shuffle=function(X,se,Te){(Ne=arguments.length)<3&&(Te=X.length,Ne<2&&(se=0));for(var Ne=Te-se,He,Ye;Ne;)Ye=Math.random()*Ne--|0,He=X[Ne+se],X[Ne+se]=X[Ye+se],X[Ye+se]=He;return X},e.permute=function(X,se){for(var Te=se.length,Ne=new Array(Te);Te--;)Ne[Te]=X[se[Te]];return Ne},e.pairs=function(X){for(var se=0,Te=X.length-1,Ne,He=X[0],Ye=new Array(Te<0?0:Te);se<Te;)Ye[se]=[Ne=He,He=X[++se]];return Ye},e.transpose=function(X){if(!(Ye=X.length))return[];for(var se=-1,Te=e.min(X,b),Ne=new Array(Te);++se<Te;)for(var He=-1,Ye,Ct=Ne[se]=new Array(Ye);++He<Ye;)Ct[He]=X[He][se];return Ne};function b(X){return X.length}e.zip=function(){return e.transpose(arguments)},e.keys=function(X){var se=[];for(var Te in X)se.push(Te);return se},e.values=function(X){var se=[];for(var Te in X)se.push(X[Te]);return se},e.entries=function(X){var se=[];for(var Te in X)se.push({key:Te,value:X[Te]});return se},e.merge=function(X){for(var se=X.length,Te,Ne=-1,He=0,Ye,Ct;++Ne<se;)He+=X[Ne].length;for(Ye=new Array(He);--se>=0;)for(Ct=X[se],Te=Ct.length;--Te>=0;)Ye[--He]=Ct[Te];return Ye};var p=Math.abs;e.range=function(X,se,Te){if(arguments.length<3&&(Te=1,arguments.length<2&&(se=X,X=0)),(se-X)/Te===1/0)throw new Error("infinite range");var Ne=[],He=C(p(Te)),Ye=-1,Ct;if(X*=He,se*=He,Te*=He,Te<0)for(;(Ct=X+Te*++Ye)>se;)Ne.push(Ct/He);else for(;(Ct=X+Te*++Ye)<se;)Ne.push(Ct/He);return Ne};function C(X){for(var se=1;X*se%1;)se*=10;return se}function E(X,se){for(var Te in se)Object.defineProperty(X.prototype,Te,{value:se[Te],enumerable:!1})}e.map=function(X,se){var Te=new A;if(X instanceof A)X.forEach(function(nt,jt){Te.set(nt,jt)});else if(Array.isArray(X)){var Ne=-1,He=X.length,Ye;if(arguments.length===1)for(;++Ne<He;)Te.set(Ne,X[Ne]);else for(;++Ne<He;)Te.set(se.call(X,Ye=X[Ne],Ne),Ye)}else for(var Ct in X)Te.set(Ct,X[Ct]);return Te};function A(){this._=Object.create(null)}var L="__proto__",_="\0";E(A,{has:g,get:function(X){return this._[k(X)]},set:function(X,se){return this._[k(X)]=se},remove:P,keys:T,values:function(){var X=[];for(var se in this._)X.push(this._[se]);return X},entries:function(){var X=[];for(var se in this._)X.push({key:M(se),value:this._[se]});return X},size:z,empty:O,forEach:function(X){for(var se in this._)X.call(this,M(se),this._[se])}});function k(X){return(X+="")===L||X[0]===_?_+X:X}function M(X){return(X+="")[0]===_?X.slice(1):X}function g(X){return k(X)in this._}function P(X){return(X=k(X))in this._&&delete this._[X]}function T(){var X=[];for(var se in this._)X.push(M(se));return X}function z(){var X=0;for(var se in this._)++X;return X}function O(){for(var X in this._)return!1;return!0}e.nest=function(){var X={},se=[],Te=[],Ne,He;function Ye(nt,jt,gr){if(gr>=se.length)return He?He.call(X,jt):Ne?jt.sort(Ne):jt;for(var yr=-1,Gr=jt.length,qr=se[gr++],_i,bi,Xr,ni=new A,gi;++yr<Gr;)(gi=ni.get(_i=qr(bi=jt[yr])))?gi.push(bi):ni.set(_i,[bi]);return nt?(bi=nt(),Xr=function(Pi,Ai){bi.set(Pi,Ye(nt,Ai,gr))}):(bi={},Xr=function(Pi,Ai){bi[Pi]=Ye(nt,Ai,gr)}),ni.forEach(Xr),bi}function Ct(nt,jt){if(jt>=se.length)return nt;var gr=[],yr=Te[jt++];return nt.forEach(function(Gr,qr){gr.push({key:Gr,values:Ct(qr,jt)})}),yr?gr.sort(function(Gr,qr){return yr(Gr.key,qr.key)}):gr}return X.map=function(nt,jt){return Ye(jt,nt,0)},X.entries=function(nt){return Ct(Ye(e.map,nt,0),0)},X.key=function(nt){return se.push(nt),X},X.sortKeys=function(nt){return Te[se.length-1]=nt,X},X.sortValues=function(nt){return Ne=nt,X},X.rollup=function(nt){return He=nt,X},X},e.set=function(X){var se=new V;if(X)for(var Te=0,Ne=X.length;Te<Ne;++Te)se.add(X[Te]);return se};function V(){this._=Object.create(null)}E(V,{has:g,add:function(X){return this._[k(X+="")]=!0,X},remove:P,values:T,size:z,empty:O,forEach:function(X){for(var se in this._)X.call(this,M(se))}}),e.behavior={};function G(X){return X}e.rebind=function(X,se){for(var Te=1,Ne=arguments.length,He;++Te<Ne;)X[He=arguments[Te]]=Z(X,se,se[He]);return X};function Z(X,se,Te){return function(){var Ne=Te.apply(se,arguments);return Ne===se?X:Ne}}function H(X,se){if(se in X)return se;se=se.charAt(0).toUpperCase()+se.slice(1);for(var Te=0,Ne=N.length;Te<Ne;++Te){var He=N[Te]+se;if(He in X)return He}}var N=["webkit","ms","moz","Moz","o","O"];function j(){}e.dispatch=function(){for(var X=new re,se=-1,Te=arguments.length;++se<Te;)X[arguments[se]]=oe(X);return X};function re(){}re.prototype.on=function(X,se){var Te=X.indexOf("."),Ne="";if(Te>=0&&(Ne=X.slice(Te+1),X=X.slice(0,Te)),X)return arguments.length<2?this[X].on(Ne):this[X].on(Ne,se);if(arguments.length===2){if(se==null)for(X in this)this.hasOwnProperty(X)&&this[X].on(Ne,null);return this}};function oe(X){var se=[],Te=new A;function Ne(){for(var He=se,Ye=-1,Ct=He.length,nt;++Ye<Ct;)(nt=He[Ye].on)&&nt.apply(this,arguments);return X}return Ne.on=function(He,Ye){var Ct=Te.get(He),nt;return arguments.length<2?Ct&&Ct.on:(Ct&&(Ct.on=null,se=se.slice(0,nt=se.indexOf(Ct)).concat(se.slice(nt+1)),Te.remove(He)),Ye&&se.push(Te.set(He,{on:Ye})),X)},Ne}e.event=null;function _e(){e.event.preventDefault()}function Me(){for(var X=e.event,se;se=X.sourceEvent;)X=se;return X}function ke(X){for(var se=new re,Te=0,Ne=arguments.length;++Te<Ne;)se[arguments[Te]]=oe(se);return se.of=function(He,Ye){return function(Ct){try{var nt=Ct.sourceEvent=e.event;Ct.target=X,e.event=Ct,se[Ct.type].apply(He,Ye)}finally{e.event=nt}}},se}e.requote=function(X){return X.replace(me,"\\$&")};var me=/[\\\^\$\*\+\?\|\[\]\(\)\.\{\}]/g,ie={}.__proto__?function(X,se){X.__proto__=se}:function(X,se){for(var Te in se)X[Te]=se[Te]};function Se(X){return ie(X,Pe),X}var Le=function(X,se){return se.querySelector(X)},Ae=function(X,se){return se.querySelectorAll(X)},De=function(X,se){var Te=X.matches||X[H(X,"matchesSelector")];return De=function(Ne,He){return Te.call(Ne,He)},De(X,se)};typeof Sizzle=="function"&&(Le=function(X,se){return Sizzle(X,se)[0]||null},Ae=Sizzle,De=Sizzle.matchesSelector),e.selection=function(){return e.select(n.documentElement)};var Pe=e.selection.prototype=[];Pe.select=function(X){var se=[],Te,Ne,He,Ye;X=ge(X);for(var Ct=-1,nt=this.length;++Ct<nt;){se.push(Te=[]),Te.parentNode=(He=this[Ct]).parentNode;for(var jt=-1,gr=He.length;++jt<gr;)(Ye=He[jt])?(Te.push(Ne=X.call(Ye,Ye.__data__,jt,Ct)),Ne&&"__data__"in Ye&&(Ne.__data__=Ye.__data__)):Te.push(null)}return Se(se)};function ge(X){return typeof X=="function"?X:function(){return Le(X,this)}}Pe.selectAll=function(X){var se=[],Te,Ne;X=Fe(X);for(var He=-1,Ye=this.length;++He<Ye;)for(var Ct=this[He],nt=-1,jt=Ct.length;++nt<jt;)(Ne=Ct[nt])&&(se.push(Te=r(X.call(Ne,Ne.__data__,nt,He))),Te.parentNode=Ne);return Se(se)};function Fe(X){return typeof X=="function"?X:function(){return Ae(X,this)}}var ce="http://www.w3.org/1999/xhtml",Ze={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:Ze,qualify:function(X){var se=X.indexOf(":"),Te=X;return se>=0&&(Te=X.slice(0,se))!=="xmlns"&&(X=X.slice(se+1)),Ze.hasOwnProperty(Te)?{space:Ze[Te],local:X}:X}},Pe.attr=function(X,se){if(arguments.length<2){if(typeof X=="string"){var Te=this.node();return X=e.ns.qualify(X),X.local?Te.getAttributeNS(X.space,X.local):Te.getAttribute(X)}for(se in X)this.each(ct(se,X[se]));return this}return this.each(ct(X,se))};function ct(X,se){X=e.ns.qualify(X);function Te(){this.removeAttribute(X)}function Ne(){this.removeAttributeNS(X.space,X.local)}function He(){this.setAttribute(X,se)}function Ye(){this.setAttributeNS(X.space,X.local,se)}function Ct(){var jt=se.apply(this,arguments);jt==null?this.removeAttribute(X):this.setAttribute(X,jt)}function nt(){var jt=se.apply(this,arguments);jt==null?this.removeAttributeNS(X.space,X.local):this.setAttributeNS(X.space,X.local,jt)}return se==null?X.local?Ne:Te:typeof se=="function"?X.local?nt:Ct:X.local?Ye:He}function pt(X){return X.trim().replace(/\s+/g," ")}Pe.classed=function(X,se){if(arguments.length<2){if(typeof X=="string"){var Te=this.node(),Ne=(X=st(X)).length,He=-1;if(se=Te.classList){for(;++He<Ne;)if(!se.contains(X[He]))return!1}else for(se=Te.getAttribute("class");++He<Ne;)if(!Wt(X[He]).test(se))return!1;return!0}for(se in X)this.each(lt(se,X[se]));return this}return this.each(lt(X,se))};function Wt(X){return new RegExp("(?:^|\\s+)"+e.requote(X)+"(?:\\s+|$)","g")}function st(X){return(X+"").trim().split(/^|\s+/)}function lt(X,se){X=st(X).map(Gt);var Te=X.length;function Ne(){for(var Ye=-1;++Ye<Te;)X[Ye](this,se)}function He(){for(var Ye=-1,Ct=se.apply(this,arguments);++Ye<Te;)X[Ye](this,Ct)}return typeof se=="function"?He:Ne}function Gt(X){var se=Wt(X);return function(Te,Ne){if(He=Te.classList)return Ne?He.add(X):He.remove(X);var He=Te.getAttribute("class")||"";Ne?(se.lastIndex=0,se.test(He)||Te.setAttribute("class",pt(He+" "+X))):Te.setAttribute("class",pt(He.replace(se," ")))}}Pe.style=function(X,se,Te){var Ne=arguments.length;if(Ne<3){if(typeof X!="string"){Ne<2&&(se="");for(Te in X)this.each(Nt(Te,X[Te],se));return this}if(Ne<2){var He=this.node();return a(He).getComputedStyle(He,null).getPropertyValue(X)}Te=""}return this.each(Nt(X,se,Te))};function Nt(X,se,Te){function Ne(){this.style.removeProperty(X)}function He(){this.style.setProperty(X,se,Te)}function Ye(){var Ct=se.apply(this,arguments);Ct==null?this.style.removeProperty(X):this.style.setProperty(X,Ct,Te)}return se==null?Ne:typeof se=="function"?Ye:He}Pe.property=function(X,se){if(arguments.length<2){if(typeof X=="string")return this.node()[X];for(se in X)this.each($t(se,X[se]));return this}return this.each($t(X,se))};function $t(X,se){function Te(){delete this[X]}function Ne(){this[X]=se}function He(){var Ye=se.apply(this,arguments);Ye==null?delete this[X]:this[X]=Ye}return se==null?Te:typeof se=="function"?He:Ne}Pe.text=function(X){return arguments.length?this.each(typeof X=="function"?function(){var se=X.apply(this,arguments);this.textContent=se==null?"":se}:X==null?function(){this.textContent=""}:function(){this.textContent=X}):this.node().textContent},Pe.html=function(X){return arguments.length?this.each(typeof X=="function"?function(){var se=X.apply(this,arguments);this.innerHTML=se==null?"":se}:X==null?function(){this.innerHTML=""}:function(){this.innerHTML=X}):this.node().innerHTML},Pe.append=function(X){return X=sr(X),this.select(function(){return this.appendChild(X.apply(this,arguments))})};function sr(X){function se(){var Ne=this.ownerDocument,He=this.namespaceURI;return He===ce&&Ne.documentElement.namespaceURI===ce?Ne.createElement(X):Ne.createElementNS(He,X)}function Te(){return this.ownerDocument.createElementNS(X.space,X.local)}return typeof X=="function"?X:(X=e.ns.qualify(X)).local?Te:se}Pe.insert=function(X,se){return X=sr(X),se=ge(se),this.select(function(){return this.insertBefore(X.apply(this,arguments),se.apply(this,arguments)||null)})},Pe.remove=function(){return this.each(wr)};function wr(){var X=this.parentNode;X&&X.removeChild(this)}Pe.data=function(X,se){var Te=-1,Ne=this.length,He,Ye;if(!arguments.length){for(X=new Array(Ne=(He=this[0]).length);++Te<Ne;)(Ye=He[Te])&&(X[Te]=Ye.__data__);return X}function Ct(yr,Gr){var qr,_i=yr.length,bi=Gr.length,Xr=Math.min(_i,bi),ni=new Array(bi),gi=new Array(bi),Pi=new Array(_i),Ai,ti;if(se){var Rn=new A,Cn=new Array(_i),Nn;for(qr=-1;++qr<_i;)(Ai=yr[qr])&&(Rn.has(Nn=se.call(Ai,Ai.__data__,qr))?Pi[qr]=Ai:Rn.set(Nn,Ai),Cn[qr]=Nn);for(qr=-1;++qr<bi;)(Ai=Rn.get(Nn=se.call(Gr,ti=Gr[qr],qr)))?Ai!==!0&&(ni[qr]=Ai,Ai.__data__=ti):gi[qr]=ur(ti),Rn.set(Nn,!0);for(qr=-1;++qr<_i;)qr in Cn&&Rn.get(Cn[qr])!==!0&&(Pi[qr]=yr[qr])}else{for(qr=-1;++qr<Xr;)Ai=yr[qr],ti=Gr[qr],Ai?(Ai.__data__=ti,ni[qr]=Ai):gi[qr]=ur(ti);for(;qr<bi;++qr)gi[qr]=ur(Gr[qr]);for(;qr<_i;++qr)Pi[qr]=yr[qr]}gi.update=ni,gi.parentNode=ni.parentNode=Pi.parentNode=yr.parentNode,nt.push(gi),jt.push(ni),gr.push(Pi)}var nt=Ut([]),jt=Se([]),gr=Se([]);if(typeof X=="function")for(;++Te<Ne;)Ct(He=this[Te],X.call(He,He.parentNode.__data__,Te));else for(;++Te<Ne;)Ct(He=this[Te],X);return jt.enter=function(){return nt},jt.exit=function(){return gr},jt};function ur(X){return{__data__:X}}Pe.datum=function(X){return arguments.length?this.property("__data__",X):this.property("__data__")},Pe.filter=function(X){var se=[],Te,Ne,He;typeof X!="function"&&(X=Qe(X));for(var Ye=0,Ct=this.length;Ye<Ct;Ye++){se.push(Te=[]),Te.parentNode=(Ne=this[Ye]).parentNode;for(var nt=0,jt=Ne.length;nt<jt;nt++)(He=Ne[nt])&&X.call(He,He.__data__,nt,Ye)&&Te.push(He)}return Se(se)};function Qe(X){return function(){return De(this,X)}}Pe.order=function(){for(var X=-1,se=this.length;++X<se;)for(var Te=this[X],Ne=Te.length-1,He=Te[Ne],Ye;--Ne>=0;)(Ye=Te[Ne])&&(He&&He!==Ye.nextSibling&&He.parentNode.insertBefore(Ye,He),He=Ye);return this},Pe.sort=function(X){X=Et.apply(this,arguments);for(var se=-1,Te=this.length;++se<Te;)this[se].sort(X);return this.order()};function Et(X){return arguments.length||(X=f),function(se,Te){return se&&Te?X(se.__data__,Te.__data__):!se-!Te}}Pe.each=function(X){return er(this,function(se,Te,Ne){X.call(se,se.__data__,Te,Ne)})};function er(X,se){for(var Te=0,Ne=X.length;Te<Ne;Te++)for(var He=X[Te],Ye=0,Ct=He.length,nt;Ye<Ct;Ye++)(nt=He[Ye])&&se(nt,Ye,Te);return X}Pe.call=function(X){var se=r(arguments);return X.apply(se[0]=this,se),this},Pe.empty=function(){return!this.node()},Pe.node=function(){for(var X=0,se=this.length;X<se;X++)for(var Te=this[X],Ne=0,He=Te.length;Ne<He;Ne++){var Ye=Te[Ne];if(Ye)return Ye}return null},Pe.size=function(){var X=0;return er(this,function(){++X}),X};function Ut(X){return ie(X,Ft),X}var Ft=[];e.selection.enter=Ut,e.selection.enter.prototype=Ft,Ft.append=Pe.append,Ft.empty=Pe.empty,Ft.node=Pe.node,Ft.call=Pe.call,Ft.size=Pe.size,Ft.select=function(X){for(var se=[],Te,Ne,He,Ye,Ct,nt=-1,jt=this.length;++nt<jt;){He=(Ye=this[nt]).update,se.push(Te=[]),Te.parentNode=Ye.parentNode;for(var gr=-1,yr=Ye.length;++gr<yr;)(Ct=Ye[gr])?(Te.push(He[gr]=Ne=X.call(Ye.parentNode,Ct.__data__,gr,nt)),Ne.__data__=Ct.__data__):Te.push(null)}return Se(se)},Ft.insert=function(X,se){return arguments.length<2&&(se=bt(this)),Pe.insert.call(this,X,se)};function bt(X){var se,Te;return function(Ne,He,Ye){var Ct=X[Ye].update,nt=Ct.length,jt;for(Ye!=Te&&(Te=Ye,se=0),He>=se&&(se=He+1);!(jt=Ct[se])&&++se<nt;);return jt}}e.select=function(X){var se;return typeof X=="string"?(se=[Le(X,n)],se.parentNode=n.documentElement):(se=[X],se.parentNode=i(X)),Se([se])},e.selectAll=function(X){var se;return typeof X=="string"?(se=r(Ae(X,n)),se.parentNode=n.documentElement):(se=r(X),se.parentNode=null),Se([se])},Pe.on=function(X,se,Te){var Ne=arguments.length;if(Ne<3){if(typeof X!="string"){Ne<2&&(se=!1);for(Te in X)this.each(yt(Te,X[Te],se));return this}if(Ne<2)return(Ne=this.node()["__on"+X])&&Ne._;Te=!1}return this.each(yt(X,se,Te))};function yt(X,se,Te){var Ne="__on"+X,He=X.indexOf("."),Ye=lr;He>0&&(X=X.slice(0,He));var Ct=Yt.get(X);Ct&&(X=Ct,Ye=Tr);function nt(){var yr=this[Ne];yr&&(this.removeEventListener(X,yr,yr.$),delete this[Ne])}function jt(){var yr=Ye(se,r(arguments));nt.call(this),this.addEventListener(X,this[Ne]=yr,yr.$=Te),yr._=se}function gr(){var yr=new RegExp("^__on([^.]+)"+e.requote(X)+"$"),Gr;for(var qr in this)if(Gr=qr.match(yr)){var _i=this[qr];this.removeEventListener(Gr[1],_i,_i.$),delete this[qr]}}return He?se?jt:nt:se?j:gr}var Yt=e.map({mouseenter:"mouseover",mouseleave:"mouseout"});n&&Yt.forEach(function(X){"on"+X in n&&Yt.remove(X)});function lr(X,se){return function(Te){var Ne=e.event;e.event=Te,se[0]=this.__data__;try{X.apply(this,se)}finally{e.event=Ne}}}function Tr(X,se){var Te=lr(X,se);return function(Ne){var He=this,Ye=Ne.relatedTarget;(!Ye||Ye!==He&&!(Ye.compareDocumentPosition(He)&8))&&Te.call(He,Ne)}}var Rr,ei=0;function Wr(X){var se=".dragsuppress-"+ ++ei,Te="click"+se,Ne=e.select(a(X)).on("touchmove"+se,_e).on("dragstart"+se,_e).on("selectstart"+se,_e);if(Rr==null&&(Rr="onselectstart"in X?!1:H(X.style,"userSelect")),Rr){var He=i(X).style,Ye=He[Rr];He[Rr]="none"}return function(Ct){if(Ne.on(se,null),Rr&&(He[Rr]=Ye),Ct){var nt=function(){Ne.on(Te,null)};Ne.on(Te,function(){_e(),nt()},!0),setTimeout(nt,0)}}}e.mouse=function(X){return dt(X,Me())};var Ur=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function dt(X,se){se.changedTouches&&(se=se.changedTouches[0]);var Te=X.ownerSVGElement||X;if(Te.createSVGPoint){var Ne=Te.createSVGPoint();if(Ur<0){var He=a(X);if(He.scrollX||He.scrollY){Te=e.select("body").append("svg").style({position:"absolute",top:0,left:0,margin:0,padding:0,border:"none"},"important");var Ye=Te[0][0].getScreenCTM();Ur=!(Ye.f||Ye.e),Te.remove()}}return Ur?(Ne.x=se.pageX,Ne.y=se.pageY):(Ne.x=se.clientX,Ne.y=se.clientY),Ne=Ne.matrixTransform(X.getScreenCTM().inverse()),[Ne.x,Ne.y]}var Ct=X.getBoundingClientRect();return[se.clientX-Ct.left-X.clientLeft,se.clientY-Ct.top-X.clientTop]}e.touch=function(X,se,Te){if(arguments.length<3&&(Te=se,se=Me().changedTouches),se){for(var Ne=0,He=se.length,Ye;Ne<He;++Ne)if((Ye=se[Ne]).identifier===Te)return dt(X,Ye)}},e.behavior.drag=function(){var X=ke(He,"drag","dragstart","dragend"),se=null,Te=Ye(j,e.mouse,a,"mousemove","mouseup"),Ne=Ye(Ge,e.touch,G,"touchmove","touchend");function He(){this.on("mousedown.drag",Te).on("touchstart.drag",Ne)}function Ye(Ct,nt,jt,gr,yr){return function(){var Gr=this,qr=e.event.target.correspondingElement||e.event.target,_i=Gr.parentNode,bi=X.of(Gr,arguments),Xr=0,ni=Ct(),gi=".drag"+(ni==null?"":"-"+ni),Pi,Ai=e.select(jt(qr)).on(gr+gi,Cn).on(yr+gi,Nn),ti=Wr(qr),Rn=nt(_i,ni);se?(Pi=se.apply(Gr,arguments),Pi=[Pi.x-Rn[0],Pi.y-Rn[1]]):Pi=[0,0],bi({type:"dragstart"});function Cn(){var ia=nt(_i,ni),Ea,Ia;ia&&(Ea=ia[0]-Rn[0],Ia=ia[1]-Rn[1],Xr|=Ea|Ia,Rn=ia,bi({type:"drag",x:ia[0]+Pi[0],y:ia[1]+Pi[1],dx:Ea,dy:Ia}))}function Nn(){nt(_i,ni)&&(Ai.on(gr+gi,null).on(yr+gi,null),ti(Xr),bi({type:"dragend"}))}}}return He.origin=function(Ct){return arguments.length?(se=Ct,He):se},e.rebind(He,X,"on")};function Ge(){return e.event.changedTouches[0].identifier}e.touches=function(X,se){return arguments.length<2&&(se=Me().touches),se?r(se).map(function(Te){var Ne=dt(X,Te);return Ne.identifier=Te.identifier,Ne}):[]};var Je=1e-6,je=Je*Je,$e=Math.PI,wt=2*$e,Ie=wt-Je,xe=$e/2,Ce=$e/180,vt=180/$e;function nr(X){return X>0?1:X<0?-1:0}function ir(X,se,Te){return(se[0]-X[0])*(Te[1]-X[1])-(se[1]-X[1])*(Te[0]-X[0])}function pr(X){return X>1?0:X<-1?$e:Math.acos(X)}function oi(X){return X>1?xe:X<-1?-xe:Math.asin(X)}function di(X){return((X=Math.exp(X))-1/X)/2}function Jr(X){return((X=Math.exp(X))+1/X)/2}function fi(X){return((X=Math.exp(2*X))-1)/(X+1)}function Hi(X){return(X=Math.sin(X/2))*X}var Pn=Math.SQRT2,wn=2,pn=4;e.interpolateZoom=function(X,se){var Te=X[0],Ne=X[1],He=X[2],Ye=se[0],Ct=se[1],nt=se[2],jt=Ye-Te,gr=Ct-Ne,yr=jt*jt+gr*gr,Gr,qr;if(yr<je)qr=Math.log(nt/He)/Pn,Gr=function(Pi){return[Te+Pi*jt,Ne+Pi*gr,He*Math.exp(Pn*Pi*qr)]};else{var _i=Math.sqrt(yr),bi=(nt*nt-He*He+pn*yr)/(2*He*wn*_i),Xr=(nt*nt-He*He-pn*yr)/(2*nt*wn*_i),ni=Math.log(Math.sqrt(bi*bi+1)-bi),gi=Math.log(Math.sqrt(Xr*Xr+1)-Xr);qr=(gi-ni)/Pn,Gr=function(Pi){var Ai=Pi*qr,ti=Jr(ni),Rn=He/(wn*_i)*(ti*fi(Pn*Ai+ni)-di(ni));return[Te+Rn*jt,Ne+Rn*gr,He*ti/Jr(Pn*Ai+ni)]}}return Gr.duration=qr*1e3,Gr},e.behavior.zoom=function(){var X={x:0,y:0,k:1},se,Te,Ne,He=[960,500],Ye=Vn,Ct=250,nt=0,jt="mousedown.zoom",gr="mousemove.zoom",yr="mouseup.zoom",Gr,qr="touchstart.zoom",_i,bi=ke(Ai,"zoomstart","zoom","zoomend"),Xr,ni,gi,Pi;ea||(ea="onwheel"in n?(kn=function(){return-e.event.deltaY*(e.event.deltaMode?120:1)},"wheel"):"onmousewheel"in n?(kn=function(){return e.event.wheelDelta},"mousewheel"):(kn=function(){return-e.event.detail},"MozMousePixelScroll"));function Ai(Gn){Gn.on(jt,go).on(ea+".zoom",Es).on("dblclick.zoom",Zs).on(qr,Rs)}Ai.event=function(Gn){Gn.each(function(){var Ha=bi.of(this,arguments),Fo=X;Bo?e.select(this).transition().each("start.zoom",function(){X=this.__chart__||{x:0,y:0,k:1},Ia(Ha)}).tween("zoom:zoom",function(){var Uo=He[0],Qs=He[1],Sl=Te?Te[0]:Uo/2,bu=Te?Te[1]:Qs/2,vl=e.interpolateZoom([(Sl-X.x)/X.k,(bu-X.y)/X.k,Uo/X.k],[(Sl-Fo.x)/Fo.k,(bu-Fo.y)/Fo.k,Uo/Fo.k]);return function(Sc){var Ee=vl(Sc),xt=Uo/Ee[2];this.__chart__=X={x:Sl-Ee[0]*xt,y:bu-Ee[1]*xt,k:xt},yo(Ha)}}).each("interrupt.zoom",function(){Da(Ha)}).each("end.zoom",function(){Da(Ha)}):(this.__chart__=X,Ia(Ha),yo(Ha),Da(Ha))})},Ai.translate=function(Gn){return arguments.length?(X={x:+Gn[0],y:+Gn[1],k:X.k},Ea(),Ai):[X.x,X.y]},Ai.scale=function(Gn){return arguments.length?(X={x:X.x,y:X.y,k:null},Cn(+Gn),Ea(),Ai):X.k},Ai.scaleExtent=function(Gn){return arguments.length?(Ye=Gn==null?Vn:[+Gn[0],+Gn[1]],Ai):Ye},Ai.center=function(Gn){return arguments.length?(Ne=Gn&&[+Gn[0],+Gn[1]],Ai):Ne},Ai.size=function(Gn){return arguments.length?(He=Gn&&[+Gn[0],+Gn[1]],Ai):He},Ai.duration=function(Gn){return arguments.length?(Ct=+Gn,Ai):Ct},Ai.x=function(Gn){return arguments.length?(ni=Gn,Xr=Gn.copy(),X={x:0,y:0,k:1},Ai):ni},Ai.y=function(Gn){return arguments.length?(Pi=Gn,gi=Gn.copy(),X={x:0,y:0,k:1},Ai):Pi};function ti(Gn){return[(Gn[0]-X.x)/X.k,(Gn[1]-X.y)/X.k]}function Rn(Gn){return[Gn[0]*X.k+X.x,Gn[1]*X.k+X.y]}function Cn(Gn){X.k=Math.max(Ye[0],Math.min(Ye[1],Gn))}function Nn(Gn,Ha){Ha=Rn(Ha),X.x+=Gn[0]-Ha[0],X.y+=Gn[1]-Ha[1]}function ia(Gn,Ha,Fo,Uo){Gn.__chart__={x:X.x,y:X.y,k:X.k},Cn(Math.pow(2,Uo)),Nn(Te=Ha,Fo),Gn=e.select(Gn),Ct>0&&(Gn=Gn.transition().duration(Ct)),Gn.call(Ai.event)}function Ea(){ni&&ni.domain(Xr.range().map(function(Gn){return(Gn-X.x)/X.k}).map(Xr.invert)),Pi&&Pi.domain(gi.range().map(function(Gn){return(Gn-X.y)/X.k}).map(gi.invert))}function Ia(Gn){nt++||Gn({type:"zoomstart"})}function yo(Gn){Ea(),Gn({type:"zoom",scale:X.k,translate:[X.x,X.y]})}function Da(Gn){--nt||(Gn({type:"zoomend"}),Te=null)}function go(){var Gn=this,Ha=bi.of(Gn,arguments),Fo=0,Uo=e.select(a(Gn)).on(gr,bu).on(yr,vl),Qs=ti(e.mouse(Gn)),Sl=Wr(Gn);fa.call(Gn),Ia(Ha);function bu(){Fo=1,Nn(e.mouse(Gn),Qs),yo(Ha)}function vl(){Uo.on(gr,null).on(yr,null),Sl(Fo),Da(Ha)}}function Rs(){var Gn=this,Ha=bi.of(Gn,arguments),Fo={},Uo=0,Qs,Sl=".zoom-"+e.event.changedTouches[0].identifier,bu="touchmove"+Sl,vl="touchend"+Sl,Sc=[],Ee=e.select(Gn),xt=Wr(Gn);Ir(),Ia(Ha),Ee.on(jt,null).on(qr,Ir);function zt(){var Vr=e.touches(Gn);return Qs=X.k,Vr.forEach(function(mi){mi.identifier in Fo&&(Fo[mi.identifier]=ti(mi))}),Vr}function Ir(){var Vr=e.event.target;e.select(Vr).on(bu,Hr).on(vl,Br),Sc.push(Vr);for(var mi=e.event.changedTouches,Ni=0,Oi=mi.length;Ni<Oi;++Ni)Fo[mi[Ni].identifier]=null;var Mi=zt(),Hn=Date.now();if(Mi.length===1){if(Hn-_i<500){var Qi=Mi[0];ia(Gn,Qi,Fo[Qi.identifier],Math.floor(Math.log(X.k)/Math.LN2)+1),_e()}_i=Hn}else if(Mi.length>1){var Qi=Mi[0],ji=Mi[1],si=Qi[0]-ji[0],Mr=Qi[1]-ji[1];Uo=si*si+Mr*Mr}}function Hr(){var Vr=e.touches(Gn),mi,Ni,Oi,Mi;fa.call(Gn);for(var Hn=0,Qi=Vr.length;Hn<Qi;++Hn,Mi=null)if(Oi=Vr[Hn],Mi=Fo[Oi.identifier]){if(Ni)break;mi=Oi,Ni=Mi}if(Mi){var ji=(ji=Oi[0]-mi[0])*ji+(ji=Oi[1]-mi[1])*ji,si=Uo&&Math.sqrt(ji/Uo);mi=[(mi[0]+Oi[0])/2,(mi[1]+Oi[1])/2],Ni=[(Ni[0]+Mi[0])/2,(Ni[1]+Mi[1])/2],Cn(si*Qs)}_i=null,Nn(mi,Ni),yo(Ha)}function Br(){if(e.event.touches.length){for(var Vr=e.event.changedTouches,mi=0,Ni=Vr.length;mi<Ni;++mi)delete Fo[Vr[mi].identifier];for(var Oi in Fo)return void zt()}e.selectAll(Sc).on(Sl,null),Ee.on(jt,go).on(qr,Rs),xt(),Da(Ha)}}function Es(){var Gn=bi.of(this,arguments);Gr?clearTimeout(Gr):(fa.call(this),se=ti(Te=Ne||e.mouse(this)),Ia(Gn)),Gr=setTimeout(function(){Gr=null,Da(Gn)},50),_e(),Cn(Math.pow(2,kn()*.002)*X.k),Nn(Te,se),yo(Gn)}function Zs(){var Gn=e.mouse(this),Ha=Math.log(X.k)/Math.LN2;ia(this,Gn,ti(Gn),e.event.shiftKey?Math.ceil(Ha)-1:Math.floor(Ha)+1)}return e.rebind(Ai,bi,"on")};var Vn=[0,1/0],kn,ea;e.color=ua;function ua(){}ua.prototype.toString=function(){return this.rgb()+""},e.hsl=Vt;function Vt(X,se,Te){return this instanceof Vt?(this.h=+X,this.s=+se,void(this.l=+Te)):arguments.length<2?X instanceof Vt?new Vt(X.h,X.s,X.l):Ga(""+X,vo,Vt):new Vt(X,se,Te)}var _t=Vt.prototype=new ua;_t.brighter=function(X){return X=Math.pow(.7,arguments.length?X:1),new Vt(this.h,this.s,this.l/X)},_t.darker=function(X){return X=Math.pow(.7,arguments.length?X:1),new Vt(this.h,this.s,X*this.l)},_t.rgb=function(){return tr(this.h,this.s,this.l)};function tr(X,se,Te){var Ne,He;X=isNaN(X)?0:(X%=360)<0?X+360:X,se=isNaN(se)||se<0?0:se>1?1:se,Te=Te<0?0:Te>1?1:Te,He=Te<=.5?Te*(1+se):Te+se-Te*se,Ne=2*Te-He;function Ye(nt){return nt>360?nt-=360:nt<0&&(nt+=360),nt<60?Ne+(He-Ne)*nt/60:nt<180?He:nt<240?Ne+(He-Ne)*(240-nt)/60:Ne}function Ct(nt){return Math.round(Ye(nt)*255)}return new Wa(Ct(X+120),Ct(X),Ct(X-120))}e.hcl=ar;function ar(X,se,Te){return this instanceof ar?(this.h=+X,this.c=+se,void(this.l=+Te)):arguments.length<2?X instanceof ar?new ar(X.h,X.c,X.l):X instanceof ri?Mn(X.l,X.a,X.b):Mn((X=jn((X=e.rgb(X)).r,X.g,X.b)).l,X.a,X.b):new ar(X,se,Te)}var Er=ar.prototype=new ua;Er.brighter=function(X){return new ar(this.h,this.c,Math.min(100,this.l+$r*(arguments.length?X:1)))},Er.darker=function(X){return new ar(this.h,this.c,Math.max(0,this.l-$r*(arguments.length?X:1)))},Er.rgb=function(){return Zr(this.h,this.c,this.l).rgb()};function Zr(X,se,Te){return isNaN(X)&&(X=0),isNaN(se)&&(se=0),new ri(Te,Math.cos(X*=Ce)*se,Math.sin(X)*se)}e.lab=ri;function ri(X,se,Te){return this instanceof ri?(this.l=+X,this.a=+se,void(this.b=+Te)):arguments.length<2?X instanceof ri?new ri(X.l,X.a,X.b):X instanceof ar?Zr(X.h,X.c,X.l):jn((X=Wa(X)).r,X.g,X.b):new ri(X,se,Te)}var $r=18,zi=.95047,Ji=1,en=1.08883,cn=ri.prototype=new ua;cn.brighter=function(X){return new ri(Math.min(100,this.l+$r*(arguments.length?X:1)),this.a,this.b)},cn.darker=function(X){return new ri(Math.max(0,this.l-$r*(arguments.length?X:1)),this.a,this.b)},cn.rgb=function(){return yn(this.l,this.a,this.b)};function yn(X,se,Te){var Ne=(X+16)/116,He=Ne+se/500,Ye=Ne-Te/200;return He=Ba(He)*zi,Ne=Ba(Ne)*Ji,Ye=Ba(Ye)*en,new Wa(ma(3.2404542*He-1.5371385*Ne-.4985314*Ye),ma(-.969266*He+1.8760108*Ne+.041556*Ye),ma(.0556434*He-.2040259*Ne+1.0572252*Ye))}function Mn(X,se,Te){return X>0?new ar(Math.atan2(Te,se)*vt,Math.sqrt(se*se+Te*Te),X):new ar(NaN,NaN,X)}function Ba(X){return X>.206893034?X*X*X:(X-4/29)/7.787037}function la(X){return X>.008856?Math.pow(X,1/3):7.787037*X+4/29}function ma(X){return Math.round(255*(X<=.00304?12.92*X:1.055*Math.pow(X,1/2.4)-.055))}e.rgb=Wa;function Wa(X,se,Te){return this instanceof Wa?(this.r=~~X,this.g=~~se,void(this.b=~~Te)):arguments.length<2?X instanceof Wa?new Wa(X.r,X.g,X.b):Ga(""+X,Wa,tr):new Wa(X,se,Te)}function Fa(X){return new Wa(X>>16,X>>8&255,X&255)}function Wo(X){return Fa(X)+""}var da=Wa.prototype=new ua;da.brighter=function(X){X=Math.pow(.7,arguments.length?X:1);var se=this.r,Te=this.g,Ne=this.b,He=30;return!se&&!Te&&!Ne?new Wa(He,He,He):(se&&se<He&&(se=He),Te&&Te<He&&(Te=He),Ne&&Ne<He&&(Ne=He),new Wa(Math.min(255,se/X),Math.min(255,Te/X),Math.min(255,Ne/X)))},da.darker=function(X){return X=Math.pow(.7,arguments.length?X:1),new Wa(X*this.r,X*this.g,X*this.b)},da.hsl=function(){return vo(this.r,this.g,this.b)},da.toString=function(){return"#"+Wn(this.r)+Wn(this.g)+Wn(this.b)};function Wn(X){return X<16?"0"+Math.max(0,X).toString(16):Math.min(255,X).toString(16)}function Ga(X,se,Te){var Ne=0,He=0,Ye=0,Ct,nt,jt;if(Ct=/([a-z]+)\((.*)\)/.exec(X=X.toLowerCase()),Ct)switch(nt=Ct[2].split(","),Ct[1]){case"hsl":return Te(parseFloat(nt[0]),parseFloat(nt[1])/100,parseFloat(nt[2])/100);case"rgb":return se(Cr(nt[0]),Cr(nt[1]),Cr(nt[2]))}return(jt=Qr.get(X))?se(jt.r,jt.g,jt.b):(X!=null&&X.charAt(0)==="#"&&!isNaN(jt=parseInt(X.slice(1),16))&&(X.length===4?(Ne=(jt&3840)>>4,Ne=Ne>>4|Ne,He=jt&240,He=He>>4|He,Ye=jt&15,Ye=Ye<<4|Ye):X.length===7&&(Ne=(jt&16711680)>>16,He=(jt&65280)>>8,Ye=jt&255)),se(Ne,He,Ye))}function vo(X,se,Te){var Ne=Math.min(X/=255,se/=255,Te/=255),He=Math.max(X,se,Te),Ye=He-Ne,Ct,nt,jt=(He+Ne)/2;return Ye?(nt=jt<.5?Ye/(He+Ne):Ye/(2-He-Ne),X==He?Ct=(se-Te)/Ye+(se<Te?6:0):se==He?Ct=(Te-X)/Ye+2:Ct=(X-se)/Ye+4,Ct*=60):(Ct=NaN,nt=jt>0&&jt<1?0:Ct),new Vt(Ct,nt,jt)}function jn(X,se,Te){X=St(X),se=St(se),Te=St(Te);var Ne=la((.4124564*X+.3575761*se+.1804375*Te)/zi),He=la((.2126729*X+.7151522*se+.072175*Te)/Ji),Ye=la((.0193339*X+.119192*se+.9503041*Te)/en);return ri(116*He-16,500*(Ne-He),200*(He-Ye))}function St(X){return(X/=255)<=.04045?X/12.92:Math.pow((X+.055)/1.055,2.4)}function Cr(X){var se=parseFloat(X);return X.charAt(X.length-1)==="%"?Math.round(se*2.55):se}var Qr=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});Qr.forEach(function(X,se){Qr.set(X,Fa(se))});function pi(X){return typeof X=="function"?X:function(){return X}}e.functor=pi,e.xhr=fn(G);function fn(X){return function(se,Te,Ne){return arguments.length===2&&typeof Te=="function"&&(Ne=Te,Te=null),Sn(se,Te,X,Ne)}}function Sn(X,se,Te,Ne){var He={},Ye=e.dispatch("beforesend","progress","load","error"),Ct={},nt=new XMLHttpRequest,jt=null;self.XDomainRequest&&!("withCredentials"in nt)&&/^(http(s)?:)?\/\//.test(X)&&(nt=new XDomainRequest),"onload"in nt?nt.onload=nt.onerror=gr:nt.onreadystatechange=function(){nt.readyState>3&&gr()};function gr(){var yr=nt.status,Gr;if(!yr&&ki(nt)||yr>=200&&yr<300||yr===304){try{Gr=Te.call(He,nt)}catch(qr){Ye.error.call(He,qr);return}Ye.load.call(He,Gr)}else Ye.error.call(He,nt)}return nt.onprogress=function(yr){var Gr=e.event;e.event=yr;try{Ye.progress.call(He,nt)}finally{e.event=Gr}},He.header=function(yr,Gr){return yr=(yr+"").toLowerCase(),arguments.length<2?Ct[yr]:(Gr==null?delete Ct[yr]:Ct[yr]=Gr+"",He)},He.mimeType=function(yr){return arguments.length?(se=yr==null?null:yr+"",He):se},He.responseType=function(yr){return arguments.length?(jt=yr,He):jt},He.response=function(yr){return Te=yr,He},["get","post"].forEach(function(yr){He[yr]=function(){return He.send.apply(He,[yr].concat(r(arguments)))}}),He.send=function(yr,Gr,qr){if(arguments.length===2&&typeof Gr=="function"&&(qr=Gr,Gr=null),nt.open(yr,X,!0),se!=null&&!("accept"in Ct)&&(Ct.accept=se+",*/*"),nt.setRequestHeader)for(var _i in Ct)nt.setRequestHeader(_i,Ct[_i]);return se!=null&&nt.overrideMimeType&&nt.overrideMimeType(se),jt!=null&&(nt.responseType=jt),qr!=null&&He.on("error",qr).on("load",function(bi){qr(null,bi)}),Ye.beforesend.call(He,nt),nt.send(Gr==null?null:Gr),He},He.abort=function(){return nt.abort(),He},e.rebind(He,Ye,"on"),Ne==null?He:He.get(En(Ne))}function En(X){return X.length===1?function(se,Te){X(se==null?Te:null)}:X}function ki(X){var se=X.responseType;return se&&se!=="text"?X.response:X.responseText}e.dsv=function(X,se){var Te=new RegExp('["'+X+`
|
||
]`),Ne=X.charCodeAt(0);function He(gr,yr,Gr){arguments.length<3&&(Gr=yr,yr=null);var qr=Sn(gr,se,yr==null?Ye:Ct(yr),Gr);return qr.row=function(_i){return arguments.length?qr.response((yr=_i)==null?Ye:Ct(_i)):yr},qr}function Ye(gr){return He.parse(gr.responseText)}function Ct(gr){return function(yr){return He.parse(yr.responseText,gr)}}He.parse=function(gr,yr){var Gr;return He.parseRows(gr,function(qr,_i){if(Gr)return Gr(qr,_i-1);var bi=function(Xr){for(var ni={},gi=qr.length,Pi=0;Pi<gi;++Pi)ni[qr[Pi]]=Xr[Pi];return ni};Gr=yr?function(Xr,ni){return yr(bi(Xr),ni)}:bi})},He.parseRows=function(gr,yr){var Gr={},qr={},_i=[],bi=gr.length,Xr=0,ni=0,gi,Pi;function Ai(){if(Xr>=bi)return qr;if(Pi)return Pi=!1,Gr;var Rn=Xr;if(gr.charCodeAt(Rn)===34){for(var Cn=Rn;Cn++<bi;)if(gr.charCodeAt(Cn)===34){if(gr.charCodeAt(Cn+1)!==34)break;++Cn}Xr=Cn+2;var Nn=gr.charCodeAt(Cn+1);return Nn===13?(Pi=!0,gr.charCodeAt(Cn+2)===10&&++Xr):Nn===10&&(Pi=!0),gr.slice(Rn+1,Cn).replace(/""/g,'"')}for(;Xr<bi;){var Nn=gr.charCodeAt(Xr++),ia=1;if(Nn===10)Pi=!0;else if(Nn===13)Pi=!0,gr.charCodeAt(Xr)===10&&(++Xr,++ia);else if(Nn!==Ne)continue;return gr.slice(Rn,Xr-ia)}return gr.slice(Rn)}for(;(gi=Ai())!==qr;){for(var ti=[];gi!==Gr&&gi!==qr;)ti.push(gi),gi=Ai();yr&&(ti=yr(ti,ni++))==null||_i.push(ti)}return _i},He.format=function(gr){if(Array.isArray(gr[0]))return He.formatRows(gr);var yr=new V,Gr=[];return gr.forEach(function(qr){for(var _i in qr)yr.has(_i)||Gr.push(yr.add(_i))}),[Gr.map(jt).join(X)].concat(gr.map(function(qr){return Gr.map(function(_i){return jt(qr[_i])}).join(X)})).join(`
|
||
`)},He.formatRows=function(gr){return gr.map(nt).join(`
|
||
`)};function nt(gr){return gr.map(jt).join(X)}function jt(gr){return Te.test(gr)?'"'+gr.replace(/\"/g,'""')+'"':gr}return He},e.csv=e.dsv(",","text/csv"),e.tsv=e.dsv(" ","text/tab-separated-values");var _n,ya,Jn,Ma,_o=this[H(this,"requestAnimationFrame")]||function(X){setTimeout(X,17)};e.timer=function(){No.apply(this,arguments)};function No(X,se,Te){var Ne=arguments.length;Ne<2&&(se=0),Ne<3&&(Te=Date.now());var He=Te+se,Ye={c:X,t:He,n:null};return ya?ya.n=Ye:_n=Ye,ya=Ye,Jn||(Ma=clearTimeout(Ma),Jn=1,_o(po)),Ye}function po(){var X=Lo(),se=Co()-X;se>24?(isFinite(se)&&(clearTimeout(Ma),Ma=setTimeout(po,se)),Jn=0):(Jn=1,_o(po))}e.timer.flush=function(){Lo(),Co()};function Lo(){for(var X=Date.now(),se=_n;se;)X>=se.t&&se.c(X-se.t)&&(se.c=null),se=se.n;return X}function Co(){for(var X,se=_n,Te=1/0;se;)se.c?(se.t<Te&&(Te=se.t),se=(X=se).n):se=X?X.n=se.n:_n=se.n;return ya=X,Te}e.round=function(X,se){return se?Math.round(X*(se=Math.pow(10,se)))/se:Math.round(X)},e.geom={};function Fs(X){return X[0]}function zs(X){return X[1]}e.geom.hull=function(X){var se=Fs,Te=zs;if(arguments.length)return Ne(X);function Ne(He){if(He.length<3)return[];var Ye=pi(se),Ct=pi(Te),nt,jt=He.length,gr=[],yr=[];for(nt=0;nt<jt;nt++)gr.push([+Ye.call(this,He[nt],nt),+Ct.call(this,He[nt],nt),nt]);for(gr.sort(cl),nt=0;nt<jt;nt++)yr.push([gr[nt][0],-gr[nt][1]]);var Gr=ul(gr),qr=ul(yr),_i=qr[0]===Gr[0],bi=qr[qr.length-1]===Gr[Gr.length-1],Xr=[];for(nt=Gr.length-1;nt>=0;--nt)Xr.push(He[gr[Gr[nt]][2]]);for(nt=+_i;nt<qr.length-bi;++nt)Xr.push(He[gr[qr[nt]][2]]);return Xr}return Ne.x=function(He){return arguments.length?(se=He,Ne):se},Ne.y=function(He){return arguments.length?(Te=He,Ne):Te},Ne};function ul(X){for(var se=X.length,Te=[0,1],Ne=2,He=2;He<se;He++){for(;Ne>1&&ir(X[Te[Ne-2]],X[Te[Ne-1]],X[He])<=0;)--Ne;Te[Ne++]=He}return Te.slice(0,Ne)}function cl(X,se){return X[0]-se[0]||X[1]-se[1]}e.geom.polygon=function(X){return ie(X,Fl),X};var Fl=e.geom.polygon.prototype=[];Fl.area=function(){for(var X=-1,se=this.length,Te,Ne=this[se-1],He=0;++X<se;)Te=Ne,Ne=this[X],He+=Te[1]*Ne[0]-Te[0]*Ne[1];return He*.5},Fl.centroid=function(X){var se=-1,Te=this.length,Ne=0,He=0,Ye,Ct=this[Te-1],nt;for(arguments.length||(X=-1/(6*this.area()));++se<Te;)Ye=Ct,Ct=this[se],nt=Ye[0]*Ct[1]-Ct[0]*Ye[1],Ne+=(Ye[0]+Ct[0])*nt,He+=(Ye[1]+Ct[1])*nt;return[Ne*X,He*X]},Fl.clip=function(X){for(var se,Te=Ss(X),Ne=-1,He=this.length-Ss(this),Ye,Ct,nt=this[He-1],jt,gr,yr;++Ne<He;){for(se=X.slice(),X.length=0,jt=this[Ne],gr=se[(Ct=se.length-Te)-1],Ye=-1;++Ye<Ct;)yr=se[Ye],cs(yr,nt,jt)?(cs(gr,nt,jt)||X.push(nl(gr,yr,nt,jt)),X.push(yr)):cs(gr,nt,jt)&&X.push(nl(gr,yr,nt,jt)),gr=yr;Te&&X.push(X[0]),nt=jt}return X};function cs(X,se,Te){return(Te[0]-se[0])*(X[1]-se[1])<(Te[1]-se[1])*(X[0]-se[0])}function nl(X,se,Te,Ne){var He=X[0],Ye=Te[0],Ct=se[0]-He,nt=Ne[0]-Ye,jt=X[1],gr=Te[1],yr=se[1]-jt,Gr=Ne[1]-gr,qr=(nt*(jt-gr)-Gr*(He-Ye))/(Gr*Ct-nt*yr);return[He+qr*Ct,jt+qr*yr]}function Ss(X){var se=X[0],Te=X[X.length-1];return!(se[0]-Te[0]||se[1]-Te[1])}var fl,Js,Os,Io=[],us,Zl,Su=[];function nc(){qs(this),this.edge=this.site=this.circle=null}function ws(X){var se=Io.pop()||new nc;return se.site=X,se}function Fn(X){Oo(X),Os.remove(X),Io.push(X),qs(X)}function _a(X){var se=X.circle,Te=se.x,Ne=se.cy,He={x:Te,y:Ne},Ye=X.P,Ct=X.N,nt=[X];Fn(X);for(var jt=Ye;jt.circle&&p(Te-jt.circle.x)<Je&&p(Ne-jt.circle.cy)<Je;)Ye=jt.P,nt.unshift(jt),Fn(jt),jt=Ye;nt.unshift(jt),Oo(jt);for(var gr=Ct;gr.circle&&p(Te-gr.circle.x)<Je&&p(Ne-gr.circle.cy)<Je;)Ct=gr.N,nt.push(gr),Fn(gr),gr=Ct;nt.push(gr),Oo(gr);var yr=nt.length,Gr;for(Gr=1;Gr<yr;++Gr)gr=nt[Gr],jt=nt[Gr-1],ml(gr.edge,jt.site,gr.site,He);jt=nt[0],gr=nt[yr-1],gr.edge=rf(jt.site,gr.site,null,He),aa(jt),aa(gr)}function Vu(X){for(var se=X.x,Te=X.y,Ne,He,Ye,Ct,nt=Os._;nt;)if(Ye=zl(nt,Te)-se,Ye>Je)nt=nt.L;else if(Ct=se-xo(nt,Te),Ct>Je){if(!nt.R){Ne=nt;break}nt=nt.R}else{Ye>-Je?(Ne=nt.P,He=nt):Ct>-Je?(Ne=nt,He=nt.N):Ne=He=nt;break}var jt=ws(X);if(Os.insert(Ne,jt),!(!Ne&&!He)){if(Ne===He){Oo(Ne),He=ws(Ne.site),Os.insert(jt,He),jt.edge=He.edge=rf(Ne.site,jt.site),aa(Ne),aa(He);return}if(!He){jt.edge=rf(Ne.site,jt.site);return}Oo(Ne),Oo(He);var gr=Ne.site,yr=gr.x,Gr=gr.y,qr=X.x-yr,_i=X.y-Gr,bi=He.site,Xr=bi.x-yr,ni=bi.y-Gr,gi=2*(qr*ni-_i*Xr),Pi=qr*qr+_i*_i,Ai=Xr*Xr+ni*ni,ti={x:(ni*Pi-_i*Ai)/gi+yr,y:(qr*Ai-Xr*Pi)/gi+Gr};ml(He.edge,gr,bi,ti),jt.edge=rf(gr,X,null,ti),He.edge=rf(X,bi,null,ti),aa(Ne),aa(He)}}function zl(X,se){var Te=X.site,Ne=Te.x,He=Te.y,Ye=He-se;if(!Ye)return Ne;var Ct=X.P;if(!Ct)return-1/0;Te=Ct.site;var nt=Te.x,jt=Te.y,gr=jt-se;if(!gr)return nt;var yr=nt-Ne,Gr=1/Ye-1/gr,qr=yr/gr;return Gr?(-qr+Math.sqrt(qr*qr-2*Gr*(yr*yr/(-2*gr)-jt+gr/2+He-Ye/2)))/Gr+Ne:(Ne+nt)/2}function xo(X,se){var Te=X.N;if(Te)return zl(Te,se);var Ne=X.site;return Ne.y===se?Ne.x:1/0}function Yl(X){this.site=X,this.edges=[]}Yl.prototype.prepare=function(){for(var X=this.edges,se=X.length,Te;se--;)Te=X[se].edge,(!Te.b||!Te.a)&&X.splice(se,1);return X.sort(Hl),X.length};function Us(X){for(var se=X[0][0],Te=X[1][0],Ne=X[0][1],He=X[1][1],Ye,Ct,nt,jt,gr=Js,yr=gr.length,Gr,qr,_i,bi,Xr,ni;yr--;)if(Gr=gr[yr],!(!Gr||!Gr.prepare()))for(_i=Gr.edges,bi=_i.length,qr=0;qr<bi;)ni=_i[qr].end(),nt=ni.x,jt=ni.y,Xr=_i[++qr%bi].start(),Ye=Xr.x,Ct=Xr.y,(p(nt-Ye)>Je||p(jt-Ct)>Je)&&(_i.splice(qr,0,new Zc(Uf(Gr.site,ni,p(nt-se)<Je&&He-jt>Je?{x:se,y:p(Ye-se)<Je?Ct:He}:p(jt-He)<Je&&Te-nt>Je?{x:p(Ct-He)<Je?Ye:Te,y:He}:p(nt-Te)<Je&&jt-Ne>Je?{x:Te,y:p(Ye-Te)<Je?Ct:Ne}:p(jt-Ne)<Je&&nt-se>Je?{x:p(Ct-Ne)<Je?Ye:se,y:Ne}:null),Gr.site,null)),++bi)}function Hl(X,se){return se.angle-X.angle}function ac(){qs(this),this.x=this.y=this.arc=this.site=this.cy=null}function aa(X){var se=X.P,Te=X.N;if(!(!se||!Te)){var Ne=se.site,He=X.site,Ye=Te.site;if(Ne!==Ye){var Ct=He.x,nt=He.y,jt=Ne.x-Ct,gr=Ne.y-nt,yr=Ye.x-Ct,ni=Ye.y-nt,Gr=2*(jt*ni-gr*yr);if(!(Gr>=-je)){var qr=jt*jt+gr*gr,_i=yr*yr+ni*ni,bi=(ni*qr-gr*_i)/Gr,Xr=(jt*_i-yr*qr)/Gr,ni=Xr+nt,gi=Su.pop()||new ac;gi.arc=X,gi.site=He,gi.x=bi+Ct,gi.y=ni+Math.sqrt(bi*bi+Xr*Xr),gi.cy=ni,X.circle=gi;for(var Pi=null,Ai=Zl._;Ai;)if(gi.y<Ai.y||gi.y===Ai.y&&gi.x<=Ai.x)if(Ai.L)Ai=Ai.L;else{Pi=Ai.P;break}else if(Ai.R)Ai=Ai.R;else{Pi=Ai;break}Zl.insert(Pi,gi),Pi||(us=gi)}}}}function Oo(X){var se=X.circle;se&&(se.P||(us=se.N),Zl.remove(se),Su.push(se),qs(se),X.circle=null)}function qo(X,se,Te,Ne){return function(He){var Ye=He.a,Ct=He.b,nt=Ye.x,jt=Ye.y,gr=Ct.x,yr=Ct.y,Gr=0,qr=1,_i=gr-nt,bi=yr-jt,Xr;if(Xr=X-nt,!(!_i&&Xr>0)){if(Xr/=_i,_i<0){if(Xr<Gr)return;Xr<qr&&(qr=Xr)}else if(_i>0){if(Xr>qr)return;Xr>Gr&&(Gr=Xr)}if(Xr=Te-nt,!(!_i&&Xr<0)){if(Xr/=_i,_i<0){if(Xr>qr)return;Xr>Gr&&(Gr=Xr)}else if(_i>0){if(Xr<Gr)return;Xr<qr&&(qr=Xr)}if(Xr=se-jt,!(!bi&&Xr>0)){if(Xr/=bi,bi<0){if(Xr<Gr)return;Xr<qr&&(qr=Xr)}else if(bi>0){if(Xr>qr)return;Xr>Gr&&(Gr=Xr)}if(Xr=Ne-jt,!(!bi&&Xr<0)){if(Xr/=bi,bi<0){if(Xr>qr)return;Xr>Gr&&(Gr=Xr)}else if(bi>0){if(Xr<Gr)return;Xr<qr&&(qr=Xr)}return Gr>0&&(He.a={x:nt+Gr*_i,y:jt+Gr*bi}),qr<1&&(He.b={x:nt+qr*_i,y:jt+qr*bi}),He}}}}}}function Ol(X){for(var se=fl,Te=qo(X[0][0],X[0][1],X[1][0],X[1][1]),Ne=se.length,He;Ne--;)He=se[Ne],(!Pc(He,X)||!Te(He)||p(He.a.x-He.b.x)<Je&&p(He.a.y-He.b.y)<Je)&&(He.a=He.b=null,se.splice(Ne,1))}function Pc(X,se){var Te=X.b;if(Te)return!0;var Ne=X.a,He=se[0][0],Ye=se[1][0],Ct=se[0][1],nt=se[1][1],jt=X.l,gr=X.r,yr=jt.x,Gr=jt.y,qr=gr.x,_i=gr.y,bi=(yr+qr)/2,Xr=(Gr+_i)/2,ni,gi;if(_i===Gr){if(bi<He||bi>=Ye)return;if(yr>qr){if(!Ne)Ne={x:bi,y:Ct};else if(Ne.y>=nt)return;Te={x:bi,y:nt}}else{if(!Ne)Ne={x:bi,y:nt};else if(Ne.y<Ct)return;Te={x:bi,y:Ct}}}else if(ni=(yr-qr)/(_i-Gr),gi=Xr-ni*bi,ni<-1||ni>1)if(yr>qr){if(!Ne)Ne={x:(Ct-gi)/ni,y:Ct};else if(Ne.y>=nt)return;Te={x:(nt-gi)/ni,y:nt}}else{if(!Ne)Ne={x:(nt-gi)/ni,y:nt};else if(Ne.y<Ct)return;Te={x:(Ct-gi)/ni,y:Ct}}else if(Gr<_i){if(!Ne)Ne={x:He,y:ni*He+gi};else if(Ne.x>=Ye)return;Te={x:Ye,y:ni*Ye+gi}}else{if(!Ne)Ne={x:Ye,y:ni*Ye+gi};else if(Ne.x<He)return;Te={x:He,y:ni*He+gi}}return X.a=Ne,X.b=Te,!0}function Do(X,se){this.l=X,this.r=se,this.a=this.b=null}function rf(X,se,Te,Ne){var He=new Do(X,se);return fl.push(He),Te&&ml(He,X,se,Te),Ne&&ml(He,se,X,Ne),Js[X.i].edges.push(new Zc(He,X,se)),Js[se.i].edges.push(new Zc(He,se,X)),He}function Uf(X,se,Te){var Ne=new Do(X,null);return Ne.a=se,Ne.b=Te,fl.push(Ne),Ne}function ml(X,se,Te,Ne){!X.a&&!X.b?(X.a=Ne,X.l=se,X.r=Te):X.l===Te?X.b=Ne:X.a=Ne}function Zc(X,se,Te){var Ne=X.a,He=X.b;this.edge=X,this.site=se,this.angle=Te?Math.atan2(Te.y-se.y,Te.x-se.x):X.l===se?Math.atan2(He.x-Ne.x,Ne.y-He.y):Math.atan2(Ne.x-He.x,He.y-Ne.y)}Zc.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 Kl(){this._=null}function qs(X){X.U=X.C=X.L=X.R=X.P=X.N=null}Kl.prototype={insert:function(X,se){var Te,Ne,He;if(X){if(se.P=X,se.N=X.N,X.N&&(X.N.P=se),X.N=se,X.R){for(X=X.R;X.L;)X=X.L;X.L=se}else X.R=se;Te=X}else this._?(X=Cf(this._),se.P=null,se.N=X,X.P=X.L=se,Te=X):(se.P=se.N=null,this._=se,Te=null);for(se.L=se.R=null,se.U=Te,se.C=!0,X=se;Te&&Te.C;)Ne=Te.U,Te===Ne.L?(He=Ne.R,He&&He.C?(Te.C=He.C=!1,Ne.C=!0,X=Ne):(X===Te.R&&(yu(this,Te),X=Te,Te=X.U),Te.C=!1,Ne.C=!0,oc(this,Ne))):(He=Ne.L,He&&He.C?(Te.C=He.C=!1,Ne.C=!0,X=Ne):(X===Te.L&&(oc(this,Te),X=Te,Te=X.U),Te.C=!1,Ne.C=!0,yu(this,Ne))),Te=X.U;this._.C=!1},remove:function(X){X.N&&(X.N.P=X.P),X.P&&(X.P.N=X.N),X.N=X.P=null;var se=X.U,Te,Ne=X.L,He=X.R,Ye,Ct;if(Ne?He?Ye=Cf(He):Ye=Ne:Ye=He,se?se.L===X?se.L=Ye:se.R=Ye:this._=Ye,Ne&&He?(Ct=Ye.C,Ye.C=X.C,Ye.L=Ne,Ne.U=Ye,Ye!==He?(se=Ye.U,Ye.U=X.U,X=Ye.R,se.L=X,Ye.R=He,He.U=Ye):(Ye.U=se,se=Ye,X=Ye.R)):(Ct=X.C,X=Ye),X&&(X.U=se),!Ct){if(X&&X.C){X.C=!1;return}do{if(X===this._)break;if(X===se.L){if(Te=se.R,Te.C&&(Te.C=!1,se.C=!0,yu(this,se),Te=se.R),Te.L&&Te.L.C||Te.R&&Te.R.C){(!Te.R||!Te.R.C)&&(Te.L.C=!1,Te.C=!0,oc(this,Te),Te=se.R),Te.C=se.C,se.C=Te.R.C=!1,yu(this,se),X=this._;break}}else if(Te=se.L,Te.C&&(Te.C=!1,se.C=!0,oc(this,se),Te=se.L),Te.L&&Te.L.C||Te.R&&Te.R.C){(!Te.L||!Te.L.C)&&(Te.R.C=!1,Te.C=!0,yu(this,Te),Te=se.L),Te.C=se.C,se.C=Te.L.C=!1,oc(this,se),X=this._;break}Te.C=!0,X=se,se=se.U}while(!X.C);X&&(X.C=!1)}}};function yu(X,se){var Te=se,Ne=se.R,He=Te.U;He?He.L===Te?He.L=Ne:He.R=Ne:X._=Ne,Ne.U=He,Te.U=Ne,Te.R=Ne.L,Te.R&&(Te.R.U=Te),Ne.L=Te}function oc(X,se){var Te=se,Ne=se.L,He=Te.U;He?He.L===Te?He.L=Ne:He.R=Ne:X._=Ne,Ne.U=He,Te.U=Ne,Te.L=Ne.R,Te.L&&(Te.L.U=Te),Ne.R=Te}function Cf(X){for(;X.L;)X=X.L;return X}function sc(X,se){var Te=X.sort(Nh).pop(),Ne,He,Ye;for(fl=[],Js=new Array(X.length),Os=new Kl,Zl=new Kl;;)if(Ye=us,Te&&(!Ye||Te.y<Ye.y||Te.y===Ye.y&&Te.x<Ye.x))(Te.x!==Ne||Te.y!==He)&&(Js[Te.i]=new Yl(Te),Vu(Te),Ne=Te.x,He=Te.y),Te=X.pop();else if(Ye)_a(Ye.arc);else break;se&&(Ol(se),Us(se));var Ct={cells:Js,edges:fl};return Os=Zl=fl=Js=null,Ct}function Nh(X,se){return se.y-X.y||se.x-X.x}e.geom.voronoi=function(X){var se=Fs,Te=zs,Ne=se,He=Te,Ye=kf;if(X)return Ct(X);function Ct(jt){var gr=new Array(jt.length),yr=Ye[0][0],Gr=Ye[0][1],qr=Ye[1][0],_i=Ye[1][1];return sc(nt(jt),Ye).cells.forEach(function(bi,Xr){var ni=bi.edges,gi=bi.site,Pi=gr[Xr]=ni.length?ni.map(function(Ai){var ti=Ai.start();return[ti.x,ti.y]}):gi.x>=yr&&gi.x<=qr&&gi.y>=Gr&&gi.y<=_i?[[yr,_i],[qr,_i],[qr,Gr],[yr,Gr]]:[];Pi.point=jt[Xr]}),gr}function nt(jt){return jt.map(function(gr,yr){return{x:Math.round(Ne(gr,yr)/Je)*Je,y:Math.round(He(gr,yr)/Je)*Je,i:yr}})}return Ct.links=function(jt){return sc(nt(jt)).edges.filter(function(gr){return gr.l&&gr.r}).map(function(gr){return{source:jt[gr.l.i],target:jt[gr.r.i]}})},Ct.triangles=function(jt){var gr=[];return sc(nt(jt)).cells.forEach(function(yr,Gr){for(var qr=yr.site,_i=yr.edges.sort(Hl),bi=-1,Xr=_i.length,ni,gi,Pi=_i[Xr-1].edge,Ai=Pi.l===qr?Pi.r:Pi.l;++bi<Xr;)ni=Pi,gi=Ai,Pi=_i[bi].edge,Ai=Pi.l===qr?Pi.r:Pi.l,Gr<gi.i&&Gr<Ai.i&&fs(qr,gi,Ai)<0&&gr.push([jt[Gr],jt[gi.i],jt[Ai.i]])}),gr},Ct.x=function(jt){return arguments.length?(Ne=pi(se=jt),Ct):se},Ct.y=function(jt){return arguments.length?(He=pi(Te=jt),Ct):Te},Ct.clipExtent=function(jt){return arguments.length?(Ye=jt==null?kf:jt,Ct):Ye===kf?null:Ye},Ct.size=function(jt){return arguments.length?Ct.clipExtent(jt&&[[0,0],jt]):Ye===kf?null:Ye&&Ye[1]},Ct};var kf=[[-1e6,-1e6],[1e6,1e6]];function fs(X,se,Te){return(X.x-Te.x)*(se.y-X.y)-(X.x-se.x)*(Te.y-X.y)}e.geom.delaunay=function(X){return e.geom.voronoi().triangles(X)},e.geom.quadtree=function(X,se,Te,Ne,He){var Ye=Fs,Ct=zs,nt;if(nt=arguments.length)return Ye=nf,Ct=Vf,nt===3&&(He=Te,Ne=se,Te=se=0),jt(X);function jt(gr){var yr,Gr=pi(Ye),qr=pi(Ct),_i,bi,Xr,ni,gi,Pi,Ai,ti;if(se!=null)gi=se,Pi=Te,Ai=Ne,ti=He;else if(Ai=ti=-(gi=Pi=1/0),_i=[],bi=[],ni=gr.length,nt)for(Xr=0;Xr<ni;++Xr)yr=gr[Xr],yr.x<gi&&(gi=yr.x),yr.y<Pi&&(Pi=yr.y),yr.x>Ai&&(Ai=yr.x),yr.y>ti&&(ti=yr.y),_i.push(yr.x),bi.push(yr.y);else for(Xr=0;Xr<ni;++Xr){var Rn=+Gr(yr=gr[Xr],Xr),Cn=+qr(yr,Xr);Rn<gi&&(gi=Rn),Cn<Pi&&(Pi=Cn),Rn>Ai&&(Ai=Rn),Cn>ti&&(ti=Cn),_i.push(Rn),bi.push(Cn)}var Nn=Ai-gi,ia=ti-Pi;Nn>ia?ti=Pi+Nn:Ai=gi+ia;function Ea(Da,go,Rs,Es,Zs,Gn,Ha,Fo){if(!(isNaN(Rs)||isNaN(Es)))if(Da.leaf){var Uo=Da.x,Qs=Da.y;if(Uo!=null)if(p(Uo-Rs)+p(Qs-Es)<.01)Ia(Da,go,Rs,Es,Zs,Gn,Ha,Fo);else{var Sl=Da.point;Da.x=Da.y=Da.point=null,Ia(Da,Sl,Uo,Qs,Zs,Gn,Ha,Fo),Ia(Da,go,Rs,Es,Zs,Gn,Ha,Fo)}else Da.x=Rs,Da.y=Es,Da.point=go}else Ia(Da,go,Rs,Es,Zs,Gn,Ha,Fo)}function Ia(Da,go,Rs,Es,Zs,Gn,Ha,Fo){var Uo=(Zs+Ha)*.5,Qs=(Gn+Fo)*.5,Sl=Rs>=Uo,bu=Es>=Qs,vl=bu<<1|Sl;Da.leaf=!1,Da=Da.nodes[vl]||(Da.nodes[vl]=Jl()),Sl?Zs=Uo:Ha=Uo,bu?Gn=Qs:Fo=Qs,Ea(Da,go,Rs,Es,Zs,Gn,Ha,Fo)}var yo=Jl();if(yo.add=function(Da){Ea(yo,Da,+Gr(Da,++Xr),+qr(Da,Xr),gi,Pi,Ai,ti)},yo.visit=function(Da){hl(Da,yo,gi,Pi,Ai,ti)},yo.find=function(Da){return lc(yo,Da[0],Da[1],gi,Pi,Ai,ti)},Xr=-1,se==null){for(;++Xr<ni;)Ea(yo,gr[Xr],_i[Xr],bi[Xr],gi,Pi,Ai,ti);--Xr}else gr.forEach(yo.add);return _i=bi=gr=yr=null,yo}return jt.x=function(gr){return arguments.length?(Ye=gr,jt):Ye},jt.y=function(gr){return arguments.length?(Ct=gr,jt):Ct},jt.extent=function(gr){return arguments.length?(gr==null?se=Te=Ne=He=null:(se=+gr[0][0],Te=+gr[0][1],Ne=+gr[1][0],He=+gr[1][1]),jt):se==null?null:[[se,Te],[Ne,He]]},jt.size=function(gr){return arguments.length?(gr==null?se=Te=Ne=He=null:(se=Te=0,Ne=+gr[0],He=+gr[1]),jt):se==null?null:[Ne-se,He-Te]},jt};function nf(X){return X.x}function Vf(X){return X.y}function Jl(){return{leaf:!0,nodes:[],point:null,x:null,y:null}}function hl(X,se,Te,Ne,He,Ye){if(!X(se,Te,Ne,He,Ye)){var Ct=(Te+He)*.5,nt=(Ne+Ye)*.5,jt=se.nodes;jt[0]&&hl(X,jt[0],Te,Ne,Ct,nt),jt[1]&&hl(X,jt[1],Ct,Ne,He,nt),jt[2]&&hl(X,jt[2],Te,nt,Ct,Ye),jt[3]&&hl(X,jt[3],Ct,nt,He,Ye)}}function lc(X,se,Te,Ne,He,Ye,Ct){var nt=1/0,jt;return function gr(yr,Gr,qr,_i,bi){if(!(Gr>Ye||qr>Ct||_i<Ne||bi<He)){if(Xr=yr.point){var Xr,ni=se-yr.x,gi=Te-yr.y,Pi=ni*ni+gi*gi;if(Pi<nt){var Ai=Math.sqrt(nt=Pi);Ne=se-Ai,He=Te-Ai,Ye=se+Ai,Ct=Te+Ai,jt=Xr}}for(var ti=yr.nodes,Rn=(Gr+_i)*.5,Cn=(qr+bi)*.5,Nn=se>=Rn,ia=Te>=Cn,Ea=ia<<1|Nn,Ia=Ea+4;Ea<Ia;++Ea)if(yr=ti[Ea&3])switch(Ea&3){case 0:gr(yr,Gr,qr,Rn,Cn);break;case 1:gr(yr,Rn,qr,_i,Cn);break;case 2:gr(yr,Gr,Cn,Rn,bi);break;case 3:gr(yr,Rn,Cn,_i,bi);break}}}(X,Ne,He,Ye,Ct),jt}e.interpolateRgb=Fu;function Fu(X,se){X=e.rgb(X),se=e.rgb(se);var Te=X.r,Ne=X.g,He=X.b,Ye=se.r-Te,Ct=se.g-Ne,nt=se.b-He;return function(jt){return"#"+Wn(Math.round(Te+Ye*jt))+Wn(Math.round(Ne+Ct*jt))+Wn(Math.round(He+nt*jt))}}e.interpolateObject=Cs;function Cs(X,se){var Te={},Ne={},He;for(He in X)He in se?Te[He]=xl(X[He],se[He]):Ne[He]=X[He];for(He in se)He in X||(Ne[He]=se[He]);return function(Ye){for(He in Te)Ne[He]=Te[He](Ye);return Ne}}e.interpolateNumber=js;function js(X,se){return X=+X,se=+se,function(Te){return X*(1-Te)+se*Te}}e.interpolateString=Go;function Go(X,se){var Te=gs.lastIndex=uc.lastIndex=0,Ne,He,Ye,Ct=-1,nt=[],jt=[];for(X=X+"",se=se+"";(Ne=gs.exec(X))&&(He=uc.exec(se));)(Ye=He.index)>Te&&(Ye=se.slice(Te,Ye),nt[Ct]?nt[Ct]+=Ye:nt[++Ct]=Ye),(Ne=Ne[0])===(He=He[0])?nt[Ct]?nt[Ct]+=He:nt[++Ct]=He:(nt[++Ct]=null,jt.push({i:Ct,x:js(Ne,He)})),Te=uc.lastIndex;return Te<se.length&&(Ye=se.slice(Te),nt[Ct]?nt[Ct]+=Ye:nt[++Ct]=Ye),nt.length<2?jt[0]?(se=jt[0].x,function(gr){return se(gr)+""}):function(){return se}:(se=jt.length,function(gr){for(var yr=0,Gr;yr<se;++yr)nt[(Gr=jt[yr]).i]=Gr.x(gr);return nt.join("")})}var gs=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,uc=new RegExp(gs.source,"g");e.interpolate=xl;function xl(X,se){for(var Te=e.interpolators.length,Ne;--Te>=0&&!(Ne=e.interpolators[Te](X,se)););return Ne}e.interpolators=[function(X,se){var Te=typeof se;return(Te==="string"?Qr.has(se.toLowerCase())||/^(#|rgb\(|hsl\()/i.test(se)?Fu:Go:se instanceof ua?Fu:Array.isArray(se)?Gu:Te==="object"&&isNaN(se)?Cs:js)(X,se)}],e.interpolateArray=Gu;function Gu(X,se){var Te=[],Ne=[],He=X.length,Ye=se.length,Ct=Math.min(X.length,se.length),nt;for(nt=0;nt<Ct;++nt)Te.push(xl(X[nt],se[nt]));for(;nt<He;++nt)Ne[nt]=X[nt];for(;nt<Ye;++nt)Ne[nt]=se[nt];return function(jt){for(nt=0;nt<Ct;++nt)Ne[nt]=Te[nt](jt);return Ne}}var Bs=function(){return G},ad=e.map({linear:Bs,poly:Gf,quad:function(){return af},cubic:function(){return Hu},sin:function(){return Ic},exp:function(){return mf},circle:function(){return ql},elastic:_h,back:Qf,bounce:function(){return yf}}),Po=e.map({in:G,out:Yo,"in-out":Pa,"out-in":function(X){return Pa(Yo(X))}});e.ease=function(X){var se=X.indexOf("-"),Te=se>=0?X.slice(0,se):X,Ne=se>=0?X.slice(se+1):"in";return Te=ad.get(Te)||Bs,Ne=Po.get(Ne)||G,od(Ne(Te.apply(null,t.call(arguments,1))))};function od(X){return function(se){return se<=0?0:se>=1?1:X(se)}}function Yo(X){return function(se){return 1-X(1-se)}}function Pa(X){return function(se){return .5*(se<.5?X(2*se):2-X(2-2*se))}}function af(X){return X*X}function Hu(X){return X*X*X}function bl(X){if(X<=0)return 0;if(X>=1)return 1;var se=X*X,Te=se*X;return 4*(X<.5?Te:3*(X-se)+Te-.75)}function Gf(X){return function(se){return Math.pow(se,X)}}function Ic(X){return 1-Math.cos(X*xe)}function mf(X){return Math.pow(2,10*(X-1))}function ql(X){return 1-Math.sqrt(1-X*X)}function _h(X,se){var Te;return arguments.length<2&&(se=.45),arguments.length?Te=se/wt*Math.asin(1/X):(X=1,Te=se/4),function(Ne){return 1+X*Math.pow(2,-10*Ne)*Math.sin((Ne-Te)*wt/se)}}function Qf(X){return X||(X=1.70158),function(se){return se*se*((X+1)*se-X)}}function yf(X){return X<1/2.75?7.5625*X*X:X<2/2.75?7.5625*(X-=1.5/2.75)*X+.75:X<2.5/2.75?7.5625*(X-=2.25/2.75)*X+.9375:7.5625*(X-=2.625/2.75)*X+.984375}e.interpolateHcl=Yc;function Yc(X,se){X=e.hcl(X),se=e.hcl(se);var Te=X.h,Ne=X.c,He=X.l,Ye=se.h-Te,Ct=se.c-Ne,nt=se.l-He;return isNaN(Ct)&&(Ct=0,Ne=isNaN(Ne)?se.c:Ne),isNaN(Ye)?(Ye=0,Te=isNaN(Te)?se.h:Te):Ye>180?Ye-=360:Ye<-180&&(Ye+=360),function(jt){return Zr(Te+Ye*jt,Ne+Ct*jt,He+nt*jt)+""}}e.interpolateHsl=eh;function eh(X,se){X=e.hsl(X),se=e.hsl(se);var Te=X.h,Ne=X.s,He=X.l,Ye=se.h-Te,Ct=se.s-Ne,nt=se.l-He;return isNaN(Ct)&&(Ct=0,Ne=isNaN(Ne)?se.s:Ne),isNaN(Ye)?(Ye=0,Te=isNaN(Te)?se.h:Te):Ye>180?Ye-=360:Ye<-180&&(Ye+=360),function(jt){return tr(Te+Ye*jt,Ne+Ct*jt,He+nt*jt)+""}}e.interpolateLab=th;function th(X,se){X=e.lab(X),se=e.lab(se);var Te=X.l,Ne=X.a,He=X.b,Ye=se.l-Te,Ct=se.a-Ne,nt=se.b-He;return function(jt){return yn(Te+Ye*jt,Ne+Ct*jt,He+nt*jt)+""}}e.interpolateRound=ju;function ju(X,se){return se-=X,function(Te){return Math.round(X+se*Te)}}e.transform=function(X){var se=n.createElementNS(e.ns.prefix.svg,"g");return(e.transform=function(Te){if(Te!=null){se.setAttribute("transform",Te);var Ne=se.transform.baseVal.consolidate()}return new Hf(Ne?Ne.matrix:Kc)})(X)};function Hf(X){var se=[X.a,X.b],Te=[X.c,X.d],Ne=of(se),He=cc(se,Te),Ye=of(Bl(Te,se,-He))||0;se[0]*Te[1]<Te[0]*se[1]&&(se[0]*=-1,se[1]*=-1,Ne*=-1,He*=-1),this.rotate=(Ne?Math.atan2(se[1],se[0]):Math.atan2(-Te[0],Te[1]))*vt,this.translate=[X.e,X.f],this.scale=[Ne,Ye],this.skew=Ye?Math.atan2(He,Ye)*vt:0}Hf.prototype.toString=function(){return"translate("+this.translate+")rotate("+this.rotate+")skewX("+this.skew+")scale("+this.scale+")"};function cc(X,se){return X[0]*se[0]+X[1]*se[1]}function of(X){var se=Math.sqrt(cc(X,X));return se&&(X[0]/=se,X[1]/=se),se}function Bl(X,se,Te){return X[0]+=Te*se[0],X[1]+=Te*se[1],X}var Kc={a:1,b:0,c:0,d:1,e:0,f:0};e.interpolateTransform=sf;function Rc(X){return X.length?X.pop()+",":""}function ms(X,se,Te,Ne){if(X[0]!==se[0]||X[1]!==se[1]){var He=Te.push("translate(",null,",",null,")");Ne.push({i:He-4,x:js(X[0],se[0])},{i:He-2,x:js(X[1],se[1])})}else(se[0]||se[1])&&Te.push("translate("+se+")")}function jf(X,se,Te,Ne){X!==se?(X-se>180?se+=360:se-X>180&&(X+=360),Ne.push({i:Te.push(Rc(Te)+"rotate(",null,")")-2,x:js(X,se)})):se&&Te.push(Rc(Te)+"rotate("+se+")")}function Uh(X,se,Te,Ne){X!==se?Ne.push({i:Te.push(Rc(Te)+"skewX(",null,")")-2,x:js(X,se)}):se&&Te.push(Rc(Te)+"skewX("+se+")")}function rh(X,se,Te,Ne){if(X[0]!==se[0]||X[1]!==se[1]){var He=Te.push(Rc(Te)+"scale(",null,",",null,")");Ne.push({i:He-4,x:js(X[0],se[0])},{i:He-2,x:js(X[1],se[1])})}else(se[0]!==1||se[1]!==1)&&Te.push(Rc(Te)+"scale("+se+")")}function sf(X,se){var Te=[],Ne=[];return X=e.transform(X),se=e.transform(se),ms(X.translate,se.translate,Te,Ne),jf(X.rotate,se.rotate,Te,Ne),Uh(X.skew,se.skew,Te,Ne),rh(X.scale,se.scale,Te,Ne),X=se=null,function(He){for(var Ye=-1,Ct=Ne.length,nt;++Ye<Ct;)Te[(nt=Ne[Ye]).i]=nt.x(He);return Te.join("")}}function xh(X,se){return se=(se-=X=+X)||1/se,function(Te){return(Te-X)/se}}function Mu(X,se){return se=(se-=X=+X)||1/se,function(Te){return Math.max(0,Math.min(1,(Te-X)/se))}}e.layout={},e.layout.bundle=function(){return function(X){for(var se=[],Te=-1,Ne=X.length;++Te<Ne;)se.push(ih(X[Te]));return se}};function ih(X){for(var se=X.source,Te=X.target,Ne=Eu(se,Te),He=[se];se!==Ne;)se=se.parent,He.push(se);for(var Ye=He.length;Te!==Ne;)He.splice(Ye,0,Te),Te=Te.parent;return He}function Ws(X){for(var se=[],Te=X.parent;Te!=null;)se.push(X),X=Te,Te=Te.parent;return se.push(X),se}function Eu(X,se){if(X===se)return X;for(var Te=Ws(X),Ne=Ws(se),He=Te.pop(),Ye=Ne.pop(),Ct=null;He===Ye;)Ct=He,He=Te.pop(),Ye=Ne.pop();return Ct}e.layout.chord=function(){var X={},se,Te,Ne,He,Ye=0,Ct,nt,jt;function gr(){var Gr={},qr=[],_i=e.range(He),bi=[],Xr,ni,gi,Pi,Ai;for(se=[],Te=[],Xr=0,Pi=-1;++Pi<He;){for(ni=0,Ai=-1;++Ai<He;)ni+=Ne[Pi][Ai];qr.push(ni),bi.push(e.range(He)),Xr+=ni}for(Ct&&_i.sort(function(yo,Da){return Ct(qr[yo],qr[Da])}),nt&&bi.forEach(function(yo,Da){yo.sort(function(go,Rs){return nt(Ne[Da][go],Ne[Da][Rs])})}),Xr=(wt-Ye*He)/Xr,ni=0,Pi=-1;++Pi<He;){for(gi=ni,Ai=-1;++Ai<He;){var ti=_i[Pi],Rn=bi[ti][Ai],Cn=Ne[ti][Rn],Nn=ni,ia=ni+=Cn*Xr;Gr[ti+"-"+Rn]={index:ti,subindex:Rn,startAngle:Nn,endAngle:ia,value:Cn}}Te[ti]={index:ti,startAngle:gi,endAngle:ni,value:qr[ti]},ni+=Ye}for(Pi=-1;++Pi<He;)for(Ai=Pi-1;++Ai<He;){var Ea=Gr[Pi+"-"+Ai],Ia=Gr[Ai+"-"+Pi];(Ea.value||Ia.value)&&se.push(Ea.value<Ia.value?{source:Ia,target:Ea}:{source:Ea,target:Ia})}jt&&yr()}function yr(){se.sort(function(Gr,qr){return jt((Gr.source.value+Gr.target.value)/2,(qr.source.value+qr.target.value)/2)})}return X.matrix=function(Gr){return arguments.length?(He=(Ne=Gr)&&Ne.length,se=Te=null,X):Ne},X.padding=function(Gr){return arguments.length?(Ye=Gr,se=Te=null,X):Ye},X.sortGroups=function(Gr){return arguments.length?(Ct=Gr,se=Te=null,X):Ct},X.sortSubgroups=function(Gr){return arguments.length?(nt=Gr,se=null,X):nt},X.sortChords=function(Gr){return arguments.length?(jt=Gr,se&&yr(),X):jt},X.chords=function(){return se||gr(),se},X.groups=function(){return Te||gr(),Te},X},e.layout.force=function(){var X={},se=e.dispatch("start","tick","end"),Te,Ne=[1,1],He,Ye,Ct=.9,nt=al,jt=nh,gr=-30,yr=bh,Gr=.1,qr=.64,_i=[],bi=[],Xr,ni,gi;function Pi(ti){return function(Rn,Cn,Nn,ia){if(Rn.point!==ti){var Ea=Rn.cx-ti.x,Ia=Rn.cy-ti.y,yo=ia-Cn,Da=Ea*Ea+Ia*Ia;if(yo*yo/qr<Da){if(Da<yr){var go=Rn.charge/Da;ti.px-=Ea*go,ti.py-=Ia*go}return!0}if(Rn.point&&Da&&Da<yr){var go=Rn.pointCharge/Da;ti.px-=Ea*go,ti.py-=Ia*go}}return!Rn.charge}}X.tick=function(){if((Ye*=.99)<.005)return Te=null,se.end({type:"end",alpha:Ye=0}),!0;var ti=_i.length,Rn=bi.length,Cn,Nn,ia,Ea,Ia,yo,Da,go,Rs;for(Nn=0;Nn<Rn;++Nn)ia=bi[Nn],Ea=ia.source,Ia=ia.target,go=Ia.x-Ea.x,Rs=Ia.y-Ea.y,(yo=go*go+Rs*Rs)&&(yo=Ye*ni[Nn]*((yo=Math.sqrt(yo))-Xr[Nn])/yo,go*=yo,Rs*=yo,Ia.x-=go*(Da=Ea.weight+Ia.weight?Ea.weight/(Ea.weight+Ia.weight):.5),Ia.y-=Rs*Da,Ea.x+=go*(Da=1-Da),Ea.y+=Rs*Da);if((Da=Ye*Gr)&&(go=Ne[0]/2,Rs=Ne[1]/2,Nn=-1,Da))for(;++Nn<ti;)ia=_i[Nn],ia.x+=(go-ia.x)*Da,ia.y+=(Rs-ia.y)*Da;if(gr)for(_u(Cn=e.geom.quadtree(_i),Ye,gi),Nn=-1;++Nn<ti;)(ia=_i[Nn]).fixed||Cn.visit(Pi(ia));for(Nn=-1;++Nn<ti;)ia=_i[Nn],ia.fixed?(ia.x=ia.px,ia.y=ia.py):(ia.x-=(ia.px-(ia.px=ia.x))*Ct,ia.y-=(ia.py-(ia.py=ia.y))*Ct);se.tick({type:"tick",alpha:Ye})},X.nodes=function(ti){return arguments.length?(_i=ti,X):_i},X.links=function(ti){return arguments.length?(bi=ti,X):bi},X.size=function(ti){return arguments.length?(Ne=ti,X):Ne},X.linkDistance=function(ti){return arguments.length?(nt=typeof ti=="function"?ti:+ti,X):nt},X.distance=X.linkDistance,X.linkStrength=function(ti){return arguments.length?(jt=typeof ti=="function"?ti:+ti,X):jt},X.friction=function(ti){return arguments.length?(Ct=+ti,X):Ct},X.charge=function(ti){return arguments.length?(gr=typeof ti=="function"?ti:+ti,X):gr},X.chargeDistance=function(ti){return arguments.length?(yr=ti*ti,X):Math.sqrt(yr)},X.gravity=function(ti){return arguments.length?(Gr=+ti,X):Gr},X.theta=function(ti){return arguments.length?(qr=ti*ti,X):Math.sqrt(qr)},X.alpha=function(ti){return arguments.length?(ti=+ti,Ye?ti>0?Ye=ti:(Te.c=null,Te.t=NaN,Te=null,se.end({type:"end",alpha:Ye=0})):ti>0&&(se.start({type:"start",alpha:Ye=ti}),Te=No(X.tick)),X):Ye},X.start=function(){var ti,Rn=_i.length,Cn=bi.length,Nn=Ne[0],ia=Ne[1],Ea,Ia;for(ti=0;ti<Rn;++ti)(Ia=_i[ti]).index=ti,Ia.weight=0;for(ti=0;ti<Cn;++ti)Ia=bi[ti],typeof Ia.source=="number"&&(Ia.source=_i[Ia.source]),typeof Ia.target=="number"&&(Ia.target=_i[Ia.target]),++Ia.source.weight,++Ia.target.weight;for(ti=0;ti<Rn;++ti)Ia=_i[ti],isNaN(Ia.x)&&(Ia.x=yo("x",Nn)),isNaN(Ia.y)&&(Ia.y=yo("y",ia)),isNaN(Ia.px)&&(Ia.px=Ia.x),isNaN(Ia.py)&&(Ia.py=Ia.y);if(Xr=[],typeof nt=="function")for(ti=0;ti<Cn;++ti)Xr[ti]=+nt.call(this,bi[ti],ti);else for(ti=0;ti<Cn;++ti)Xr[ti]=nt;if(ni=[],typeof jt=="function")for(ti=0;ti<Cn;++ti)ni[ti]=+jt.call(this,bi[ti],ti);else for(ti=0;ti<Cn;++ti)ni[ti]=jt;if(gi=[],typeof gr=="function")for(ti=0;ti<Rn;++ti)gi[ti]=+gr.call(this,_i[ti],ti);else for(ti=0;ti<Rn;++ti)gi[ti]=gr;function yo(Da,go){if(!Ea){for(Ea=new Array(Rn),Zs=0;Zs<Rn;++Zs)Ea[Zs]=[];for(Zs=0;Zs<Cn;++Zs){var Rs=bi[Zs];Ea[Rs.source.index].push(Rs.target),Ea[Rs.target.index].push(Rs.source)}}for(var Es=Ea[ti],Zs=-1,Gn=Es.length,Ha;++Zs<Gn;)if(!isNaN(Ha=Es[Zs][Da]))return Ha;return Math.random()*go}return X.resume()},X.resume=function(){return X.alpha(.1)},X.stop=function(){return X.alpha(0)},X.drag=function(){if(He||(He=e.behavior.drag().origin(G).on("dragstart.force",Dc).on("drag.force",Ai).on("dragend.force",ks)),!arguments.length)return He;this.on("mouseover.force",bc).on("mouseout.force",du).call(He)};function Ai(ti){ti.px=e.event.x,ti.py=e.event.y,X.resume()}return e.rebind(X,se,"on")};function Dc(X){X.fixed|=2}function ks(X){X.fixed&=-7}function bc(X){X.fixed|=4,X.px=X.x,X.py=X.y}function du(X){X.fixed&=-5}function _u(X,se,Te){var Ne=0,He=0;if(X.charge=0,!X.leaf)for(var Ye=X.nodes,Ct=Ye.length,nt=-1,jt;++nt<Ct;)jt=Ye[nt],jt!=null&&(_u(jt,se,Te),X.charge+=jt.charge,Ne+=jt.charge*jt.cx,He+=jt.charge*jt.cy);if(X.point){X.leaf||(X.point.x+=Math.random()-.5,X.point.y+=Math.random()-.5);var gr=se*Te[X.point.index];X.charge+=X.pointCharge=gr,Ne+=gr*X.point.x,He+=gr*X.point.y}X.cx=Ne/X.charge,X.cy=He/X.charge}var al=20,nh=1,bh=1/0;e.layout.hierarchy=function(){var X=Lf,se=bd,Te=_f;function Ne(He){var Ye=[He],Ct=[],nt;for(He.depth=0;(nt=Ye.pop())!=null;)if(Ct.push(nt),(gr=se.call(Ne,nt,nt.depth))&&(jt=gr.length)){for(var jt,gr,yr;--jt>=0;)Ye.push(yr=gr[jt]),yr.parent=nt,yr.depth=nt.depth+1;Te&&(nt.value=0),nt.children=gr}else Te&&(nt.value=+Te.call(Ne,nt,nt.depth)||0),delete nt.children;return wc(He,function(Gr){var qr,_i;X&&(qr=Gr.children)&&qr.sort(X),Te&&(_i=Gr.parent)&&(_i.value+=Gr.value)}),Ct}return Ne.sort=function(He){return arguments.length?(X=He,Ne):X},Ne.children=function(He){return arguments.length?(se=He,Ne):se},Ne.value=function(He){return arguments.length?(Te=He,Ne):Te},Ne.revalue=function(He){return Te&&(Fc(He,function(Ye){Ye.children&&(Ye.value=0)}),wc(He,function(Ye){var Ct;Ye.children||(Ye.value=+Te.call(Ne,Ye,Ye.depth)||0),(Ct=Ye.parent)&&(Ct.value+=Ye.value)})),He},Ne};function zu(X,se){return e.rebind(X,se,"sort","children","value"),X.nodes=X,X.links=Ou,X}function Fc(X,se){for(var Te=[X];(X=Te.pop())!=null;)if(se(X),(He=X.children)&&(Ne=He.length))for(var Ne,He;--Ne>=0;)Te.push(He[Ne])}function wc(X,se){for(var Te=[X],Ne=[];(X=Te.pop())!=null;)if(Ne.push(X),(Ct=X.children)&&(Ye=Ct.length))for(var He=-1,Ye,Ct;++He<Ye;)Te.push(Ct[He]);for(;(X=Ne.pop())!=null;)se(X)}function bd(X){return X.children}function _f(X){return X.value}function Lf(X,se){return se.value-X.value}function Ou(X){return e.merge(X.map(function(se){return(se.children||[]).map(function(Te){return{source:se,target:Te}})}))}e.layout.partition=function(){var X=e.layout.hierarchy(),se=[1,1];function Te(Ye,Ct,nt,jt){var gr=Ye.children;if(Ye.x=Ct,Ye.y=Ye.depth*jt,Ye.dx=nt,Ye.dy=jt,gr&&(Gr=gr.length)){var yr=-1,Gr,qr,_i;for(nt=Ye.value?nt/Ye.value:0;++yr<Gr;)Te(qr=gr[yr],Ct,_i=qr.value*nt,jt),Ct+=_i}}function Ne(Ye){var Ct=Ye.children,nt=0;if(Ct&&(gr=Ct.length))for(var jt=-1,gr;++jt<gr;)nt=Math.max(nt,Ne(Ct[jt]));return 1+nt}function He(Ye,Ct){var nt=X.call(this,Ye,Ct);return Te(nt[0],0,se[0],se[1]/Ne(nt[0])),nt}return He.size=function(Ye){return arguments.length?(se=Ye,He):se},zu(He,X)},e.layout.pie=function(){var X=Number,se=xf,Te=0,Ne=wt,He=0;function Ye(Ct){var nt=Ct.length,jt=Ct.map(function(Pi,Ai){return+X.call(Ye,Pi,Ai)}),gr=+(typeof Te=="function"?Te.apply(this,arguments):Te),yr=(typeof Ne=="function"?Ne.apply(this,arguments):Ne)-gr,Gr=Math.min(Math.abs(yr)/nt,+(typeof He=="function"?He.apply(this,arguments):He)),qr=Gr*(yr<0?-1:1),_i=e.sum(jt),bi=_i?(yr-nt*qr)/_i:0,Xr=e.range(nt),ni=[],gi;return se!=null&&Xr.sort(se===xf?function(Pi,Ai){return jt[Ai]-jt[Pi]}:function(Pi,Ai){return se(Ct[Pi],Ct[Ai])}),Xr.forEach(function(Pi){ni[Pi]={data:Ct[Pi],value:gi=jt[Pi],startAngle:gr,endAngle:gr+=gi*bi+qr,padAngle:Gr}}),ni}return Ye.value=function(Ct){return arguments.length?(X=Ct,Ye):X},Ye.sort=function(Ct){return arguments.length?(se=Ct,Ye):se},Ye.startAngle=function(Ct){return arguments.length?(Te=Ct,Ye):Te},Ye.endAngle=function(Ct){return arguments.length?(Ne=Ct,Ye):Ne},Ye.padAngle=function(Ct){return arguments.length?(He=Ct,Ye):He},Ye};var xf={};e.layout.stack=function(){var X=G,se=vu,Te=Cu,Ne=Vh,He=jl,Ye=lf;function Ct(nt,jt){if(!(bi=nt.length))return nt;var gr=nt.map(function(Pi,Ai){return X.call(Ct,Pi,Ai)}),yr=gr.map(function(Pi){return Pi.map(function(Ai,ti){return[He.call(Ct,Ai,ti),Ye.call(Ct,Ai,ti)]})}),Gr=se.call(Ct,yr,jt);gr=e.permute(gr,Gr),yr=e.permute(yr,Gr);var qr=Te.call(Ct,yr,jt),_i=gr[0].length,bi,Xr,ni,gi;for(ni=0;ni<_i;++ni)for(Ne.call(Ct,gr[0][ni],gi=qr[ni],yr[0][ni][1]),Xr=1;Xr<bi;++Xr)Ne.call(Ct,gr[Xr][ni],gi+=yr[Xr-1][ni][1],yr[Xr][ni][1]);return nt}return Ct.values=function(nt){return arguments.length?(X=nt,Ct):X},Ct.order=function(nt){return arguments.length?(se=typeof nt=="function"?nt:Pf.get(nt)||vu,Ct):se},Ct.offset=function(nt){return arguments.length?(Te=typeof nt=="function"?nt:Ls.get(nt)||Cu,Ct):Te},Ct.x=function(nt){return arguments.length?(He=nt,Ct):He},Ct.y=function(nt){return arguments.length?(Ye=nt,Ct):Ye},Ct.out=function(nt){return arguments.length?(Ne=nt,Ct):Ne},Ct};function jl(X){return X.x}function lf(X){return X.y}function Vh(X,se,Te){X.y0=se,X.y=Te}var Pf=e.map({"inside-out":function(X){var se=X.length,Te,Ne,He=X.map(Wf),Ye=X.map(Vs),Ct=e.range(se).sort(function(Gr,qr){return He[Gr]-He[qr]}),nt=0,jt=0,gr=[],yr=[];for(Te=0;Te<se;++Te)Ne=Ct[Te],nt<jt?(nt+=Ye[Ne],gr.push(Ne)):(jt+=Ye[Ne],yr.push(Ne));return yr.reverse().concat(gr)},reverse:function(X){return e.range(X.length).reverse()},default:vu}),Ls=e.map({silhouette:function(X){var se=X.length,Te=X[0].length,Ne=[],He=0,Ye,Ct,nt,jt=[];for(Ct=0;Ct<Te;++Ct){for(Ye=0,nt=0;Ye<se;Ye++)nt+=X[Ye][Ct][1];nt>He&&(He=nt),Ne.push(nt)}for(Ct=0;Ct<Te;++Ct)jt[Ct]=(He-Ne[Ct])/2;return jt},wiggle:function(X){var se=X.length,Te=X[0],Ne=Te.length,He,Ye,Ct,nt,jt,gr,yr,Gr,qr,_i=[];for(_i[0]=Gr=qr=0,Ye=1;Ye<Ne;++Ye){for(He=0,nt=0;He<se;++He)nt+=X[He][Ye][1];for(He=0,jt=0,yr=Te[Ye][0]-Te[Ye-1][0];He<se;++He){for(Ct=0,gr=(X[He][Ye][1]-X[He][Ye-1][1])/(2*yr);Ct<He;++Ct)gr+=(X[Ct][Ye][1]-X[Ct][Ye-1][1])/yr;jt+=gr*X[He][Ye][1]}_i[Ye]=Gr-=nt?jt/nt*yr:0,Gr<qr&&(qr=Gr)}for(Ye=0;Ye<Ne;++Ye)_i[Ye]-=qr;return _i},expand:function(X){var se=X.length,Te=X[0].length,Ne=1/se,He,Ye,Ct,nt=[];for(Ye=0;Ye<Te;++Ye){for(He=0,Ct=0;He<se;He++)Ct+=X[He][Ye][1];if(Ct)for(He=0;He<se;He++)X[He][Ye][1]/=Ct;else for(He=0;He<se;He++)X[He][Ye][1]=Ne}for(Ye=0;Ye<Te;++Ye)nt[Ye]=0;return nt},zero:Cu});function vu(X){return e.range(X.length)}function Cu(X){for(var se=-1,Te=X[0].length,Ne=[];++se<Te;)Ne[se]=0;return Ne}function Wf(X){for(var se=1,Te=0,Ne=X[0][1],He,Ye=X.length;se<Ye;++se)(He=X[se][1])>Ne&&(Te=se,Ne=He);return Te}function Vs(X){return X.reduce(bf,0)}function bf(X,se){return X+se[1]}e.layout.histogram=function(){var X=!0,se=Number,Te=If,Ne=zc;function He(Ye,qr){for(var nt=[],jt=Ye.map(se,this),gr=Te.call(this,jt,qr),yr=Ne.call(this,gr,jt,qr),Gr,qr=-1,_i=jt.length,bi=yr.length-1,Xr=X?1:1/_i,ni;++qr<bi;)Gr=nt[qr]=[],Gr.dx=yr[qr+1]-(Gr.x=yr[qr]),Gr.y=0;if(bi>0)for(qr=-1;++qr<_i;)ni=jt[qr],ni>=gr[0]&&ni<=gr[1]&&(Gr=nt[e.bisect(yr,ni,1,bi)-1],Gr.y+=Xr,Gr.push(Ye[qr]));return nt}return He.value=function(Ye){return arguments.length?(se=Ye,He):se},He.range=function(Ye){return arguments.length?(Te=pi(Ye),He):Te},He.bins=function(Ye){return arguments.length?(Ne=typeof Ye=="number"?function(Ct){return Wu(Ct,Ye)}:pi(Ye),He):Ne},He.frequency=function(Ye){return arguments.length?(X=!!Ye,He):X},He};function zc(X,se){return Wu(X,Math.ceil(Math.log(se.length)/Math.LN2+1))}function Wu(X,se){for(var Te=-1,Ne=+X[0],He=(X[1]-Ne)/se,Ye=[];++Te<=se;)Ye[Te]=He*Te+Ne;return Ye}function If(X){return[e.min(X),e.max(X)]}e.layout.pack=function(){var X=e.layout.hierarchy().sort(Xu),se=0,Te=[1,1],Ne;function He(Ye,Ct){var nt=X.call(this,Ye,Ct),jt=nt[0],gr=Te[0],yr=Te[1],Gr=Ne==null?Math.sqrt:typeof Ne=="function"?Ne:function(){return Ne};if(jt.x=jt.y=0,wc(jt,function(_i){_i.r=+Gr(_i.value)}),wc(jt,ah),se){var qr=se*(Ne?1:Math.max(2*jt.r/gr,2*jt.r/yr))/2;wc(jt,function(_i){_i.r+=qr}),wc(jt,ah),wc(jt,function(_i){_i.r-=qr})}return Tc(jt,gr/2,yr/2,Ne?1:1/Math.max(2*jt.r/gr,2*jt.r/yr)),nt}return He.size=function(Ye){return arguments.length?(Te=Ye,He):Te},He.radius=function(Ye){return arguments.length?(Ne=Ye==null||typeof Ye=="function"?Ye:+Ye,He):Ne},He.padding=function(Ye){return arguments.length?(se=+Ye,He):se},zu(He,X)};function Xu(X,se){return X.value-se.value}function uf(X,se){var Te=X._pack_next;X._pack_next=se,se._pack_prev=X,se._pack_next=Te,Te._pack_prev=se}function Xf(X,se){X._pack_next=se,se._pack_prev=X}function Wl(X,se){var Te=se.x-X.x,Ne=se.y-X.y,He=X.r+se.r;return .999*He*He>Te*Te+Ne*Ne}function ah(X){if(!(se=X.children)||!(qr=se.length))return;var se,Te=1/0,Ne=-1/0,He=1/0,Ye=-1/0,Ct,nt,jt,gr,yr,Gr,qr;function _i(ti){Te=Math.min(ti.x-ti.r,Te),Ne=Math.max(ti.x+ti.r,Ne),He=Math.min(ti.y-ti.r,He),Ye=Math.max(ti.y+ti.r,Ye)}if(se.forEach(Zu),Ct=se[0],Ct.x=-Ct.r,Ct.y=0,_i(Ct),qr>1&&(nt=se[1],nt.x=nt.r,nt.y=0,_i(nt),qr>2))for(jt=se[2],wl(Ct,nt,jt),_i(jt),uf(Ct,jt),Ct._pack_prev=jt,uf(jt,nt),nt=Ct._pack_next,gr=3;gr<qr;gr++){wl(Ct,nt,jt=se[gr]);var bi=0,Xr=1,ni=1;for(yr=nt._pack_next;yr!==nt;yr=yr._pack_next,Xr++)if(Wl(yr,jt)){bi=1;break}if(bi==1)for(Gr=Ct._pack_prev;Gr!==yr._pack_prev&&!Wl(Gr,jt);Gr=Gr._pack_prev,ni++);bi?(Xr<ni||Xr==ni&&nt.r<Ct.r?Xf(Ct,nt=yr):Xf(Ct=Gr,nt),gr--):(uf(Ct,jt),nt=jt,_i(jt))}var gi=(Te+Ne)/2,Pi=(He+Ye)/2,Ai=0;for(gr=0;gr<qr;gr++)jt=se[gr],jt.x-=gi,jt.y-=Pi,Ai=Math.max(Ai,jt.r+Math.sqrt(jt.x*jt.x+jt.y*jt.y));X.r=Ai,se.forEach(Oc)}function Zu(X){X._pack_next=X._pack_prev=X}function Oc(X){delete X._pack_next,delete X._pack_prev}function Tc(X,se,Te,Ne){var He=X.children;if(X.x=se+=Ne*X.x,X.y=Te+=Ne*X.y,X.r*=Ne,He)for(var Ye=-1,Ct=He.length;++Ye<Ct;)Tc(He[Ye],se,Te,Ne)}function wl(X,se,Te){var Ne=X.r+Te.r,He=se.x-X.x,Ye=se.y-X.y;if(Ne&&(He||Ye)){var Ct=se.r+Te.r,nt=He*He+Ye*Ye;Ct*=Ct,Ne*=Ne;var jt=.5+(Ne-Ct)/(2*nt),gr=Math.sqrt(Math.max(0,2*Ct*(Ne+nt)-(Ne-=nt)*Ne-Ct*Ct))/(2*nt);Te.x=X.x+jt*He+gr*Ye,Te.y=X.y+jt*Ye-gr*He}else Te.x=X.x+Ne,Te.y=X.y}e.layout.tree=function(){var X=e.layout.hierarchy().sort(null).value(null),se=pu,Te=[1,1],Ne=null;function He(yr,Gr){var qr=X.call(this,yr,Gr),_i=qr[0],bi=Ye(_i);if(wc(bi,Ct),bi.parent.m=-bi.z,Fc(bi,nt),Ne)Fc(_i,gr);else{var Xr=_i,ni=_i,gi=_i;Fc(_i,function(Rn){Rn.x<Xr.x&&(Xr=Rn),Rn.x>ni.x&&(ni=Rn),Rn.depth>gi.depth&&(gi=Rn)});var Pi=se(Xr,ni)/2-Xr.x,Ai=Te[0]/(ni.x+se(ni,Xr)/2+Pi),ti=Te[1]/(gi.depth||1);Fc(_i,function(Rn){Rn.x=(Rn.x+Pi)*Ai,Rn.y=Rn.depth*ti})}return qr}function Ye(yr){for(var Gr={A:null,children:[yr]},qr=[Gr],_i;(_i=qr.pop())!=null;)for(var bi=_i.children,Xr,ni=0,gi=bi.length;ni<gi;++ni)qr.push((bi[ni]=Xr={_:bi[ni],parent:_i,children:(Xr=bi[ni].children)&&Xr.slice()||[],A:null,a:null,z:0,m:0,c:0,s:0,t:null,i:ni}).a=Xr);return Gr.children[0]}function Ct(yr){var Gr=yr.children,qr=yr.parent.children,_i=yr.i?qr[yr.i-1]:null;if(Gr.length){Bc(yr);var bi=(Gr[0].z+Gr[Gr.length-1].z)/2;_i?(yr.z=_i.z+se(yr._,_i._),yr.m=yr.z-bi):yr.z=bi}else _i&&(yr.z=_i.z+se(yr._,_i._));yr.parent.A=jt(yr,_i,yr.parent.A||qr[0])}function nt(yr){yr._.x=yr.z+yr.parent.m,yr.m+=yr.parent.m}function jt(yr,Gr,qr){if(Gr){for(var _i=yr,bi=yr,Xr=Gr,ni=_i.parent.children[0],gi=_i.m,Pi=bi.m,Ai=Xr.m,ti=ni.m,Rn;Xr=cf(Xr),_i=qc(_i),Xr&&_i;)ni=qc(ni),bi=cf(bi),bi.a=yr,Rn=Xr.z+Ai-_i.z-gi+se(Xr._,_i._),Rn>0&&(fc(At(Xr,yr,qr),yr,Rn),gi+=Rn,Pi+=Rn),Ai+=Xr.m,gi+=_i.m,ti+=ni.m,Pi+=bi.m;Xr&&!cf(bi)&&(bi.t=Xr,bi.m+=Ai-Pi),_i&&!qc(ni)&&(ni.t=_i,ni.m+=gi-ti,qr=yr)}return qr}function gr(yr){yr.x*=Te[0],yr.y=yr.depth*Te[1]}return He.separation=function(yr){return arguments.length?(se=yr,He):se},He.size=function(yr){return arguments.length?(Ne=(Te=yr)==null?gr:null,He):Ne?null:Te},He.nodeSize=function(yr){return arguments.length?(Ne=(Te=yr)==null?null:gr,He):Ne?Te:null},zu(He,X)};function pu(X,se){return X.parent==se.parent?1:2}function qc(X){var se=X.children;return se.length?se[0]:X.t}function cf(X){var se=X.children,Te;return(Te=se.length)?se[Te-1]:X.t}function fc(X,se,Te){var Ne=Te/(se.i-X.i);se.c-=Ne,se.s+=Te,X.c+=Ne,se.z+=Te,se.m+=Te}function Bc(X){for(var se=0,Te=0,Ne=X.children,He=Ne.length,Ye;--He>=0;)Ye=Ne[He],Ye.z+=se,Ye.m+=se,se+=Ye.s+(Te+=Ye.c)}function At(X,se,Te){return X.a.parent===se.parent?X.a:Te}e.layout.cluster=function(){var X=e.layout.hierarchy().sort(null).value(null),se=pu,Te=[1,1],Ne=!1;function He(Ye,Ct){var nt=X.call(this,Ye,Ct),jt=nt[0],gr,yr=0;wc(jt,function(Xr){var ni=Xr.children;ni&&ni.length?(Xr.x=kr(ni),Xr.y=Xt(ni)):(Xr.x=gr?yr+=se(Xr,gr):0,Xr.y=0,gr=Xr)});var Gr=Ar(jt),qr=Kr(jt),_i=Gr.x-se(Gr,qr)/2,bi=qr.x+se(qr,Gr)/2;return wc(jt,Ne?function(Xr){Xr.x=(Xr.x-jt.x)*Te[0],Xr.y=(jt.y-Xr.y)*Te[1]}:function(Xr){Xr.x=(Xr.x-_i)/(bi-_i)*Te[0],Xr.y=(1-(jt.y?Xr.y/jt.y:1))*Te[1]}),nt}return He.separation=function(Ye){return arguments.length?(se=Ye,He):se},He.size=function(Ye){return arguments.length?(Ne=(Te=Ye)==null,He):Ne?null:Te},He.nodeSize=function(Ye){return arguments.length?(Ne=(Te=Ye)!=null,He):Ne?Te:null},zu(He,X)};function Xt(X){return 1+e.max(X,function(se){return se.y})}function kr(X){return X.reduce(function(se,Te){return se+Te.x},0)/X.length}function Ar(X){var se=X.children;return se&&se.length?Ar(se[0]):X}function Kr(X){var se=X.children,Te;return se&&(Te=se.length)?Kr(se[Te-1]):X}e.layout.treemap=function(){var X=e.layout.hierarchy(),se=Math.round,Te=[1,1],Ne=null,He=Ei,Ye=!1,Ct,nt="squarify",jt=.5*(1+Math.sqrt(5));function gr(Xr,ni){for(var gi=-1,Pi=Xr.length,Ai,ti;++gi<Pi;)ti=(Ai=Xr[gi]).value*(ni<0?0:ni),Ai.area=isNaN(ti)||ti<=0?0:ti}function yr(Xr){var ni=Xr.children;if(ni&&ni.length){var gi=He(Xr),Pi=[],Ai=ni.slice(),ti,Rn=1/0,Cn,Nn=nt==="slice"?gi.dx:nt==="dice"?gi.dy:nt==="slice-dice"?Xr.depth&1?gi.dy:gi.dx:Math.min(gi.dx,gi.dy),ia;for(gr(Ai,gi.dx*gi.dy/Xr.value),Pi.area=0;(ia=Ai.length)>0;)Pi.push(ti=Ai[ia-1]),Pi.area+=ti.area,nt!=="squarify"||(Cn=qr(Pi,Nn))<=Rn?(Ai.pop(),Rn=Cn):(Pi.area-=Pi.pop().area,_i(Pi,Nn,gi,!1),Nn=Math.min(gi.dx,gi.dy),Pi.length=Pi.area=0,Rn=1/0);Pi.length&&(_i(Pi,Nn,gi,!0),Pi.length=Pi.area=0),ni.forEach(yr)}}function Gr(Xr){var ni=Xr.children;if(ni&&ni.length){var gi=He(Xr),Pi=ni.slice(),Ai,ti=[];for(gr(Pi,gi.dx*gi.dy/Xr.value),ti.area=0;Ai=Pi.pop();)ti.push(Ai),ti.area+=Ai.area,Ai.z!=null&&(_i(ti,Ai.z?gi.dx:gi.dy,gi,!Pi.length),ti.length=ti.area=0);ni.forEach(Gr)}}function qr(Xr,ni){for(var gi=Xr.area,Pi,Ai=0,ti=1/0,Rn=-1,Cn=Xr.length;++Rn<Cn;)(Pi=Xr[Rn].area)&&(Pi<ti&&(ti=Pi),Pi>Ai&&(Ai=Pi));return gi*=gi,ni*=ni,gi?Math.max(ni*Ai*jt/gi,gi/(ni*ti*jt)):1/0}function _i(Xr,ni,gi,Pi){var Ai=-1,ti=Xr.length,Rn=gi.x,Cn=gi.y,Nn=ni?se(Xr.area/ni):0,ia;if(ni==gi.dx){for((Pi||Nn>gi.dy)&&(Nn=gi.dy);++Ai<ti;)ia=Xr[Ai],ia.x=Rn,ia.y=Cn,ia.dy=Nn,Rn+=ia.dx=Math.min(gi.x+gi.dx-Rn,Nn?se(ia.area/Nn):0);ia.z=!0,ia.dx+=gi.x+gi.dx-Rn,gi.y+=Nn,gi.dy-=Nn}else{for((Pi||Nn>gi.dx)&&(Nn=gi.dx);++Ai<ti;)ia=Xr[Ai],ia.x=Rn,ia.y=Cn,ia.dx=Nn,Cn+=ia.dy=Math.min(gi.y+gi.dy-Cn,Nn?se(ia.area/Nn):0);ia.z=!1,ia.dy+=gi.y+gi.dy-Cn,gi.x+=Nn,gi.dx-=Nn}}function bi(Xr){var ni=Ct||X(Xr),gi=ni[0];return gi.x=gi.y=0,gi.value?(gi.dx=Te[0],gi.dy=Te[1]):gi.dx=gi.dy=0,Ct&&X.revalue(gi),gr([gi],gi.dx*gi.dy/gi.value),(Ct?Gr:yr)(gi),Ye&&(Ct=ni),ni}return bi.size=function(Xr){return arguments.length?(Te=Xr,bi):Te},bi.padding=function(Xr){if(!arguments.length)return Ne;function ni(Ai){var ti=Xr.call(bi,Ai,Ai.depth);return ti==null?Ei(Ai):Wi(Ai,typeof ti=="number"?[ti,ti,ti,ti]:ti)}function gi(Ai){return Wi(Ai,Xr)}var Pi;return He=(Ne=Xr)==null?Ei:(Pi=typeof Xr)=="function"?ni:(Pi==="number"&&(Xr=[Xr,Xr,Xr,Xr]),gi),bi},bi.round=function(Xr){return arguments.length?(se=Xr?Math.round:Number,bi):se!=Number},bi.sticky=function(Xr){return arguments.length?(Ye=Xr,Ct=null,bi):Ye},bi.ratio=function(Xr){return arguments.length?(jt=Xr,bi):jt},bi.mode=function(Xr){return arguments.length?(nt=Xr+"",bi):nt},zu(bi,X)};function Ei(X){return{x:X.x,y:X.y,dx:X.dx,dy:X.dy}}function Wi(X,se){var Te=X.x+se[3],Ne=X.y+se[0],He=X.dx-se[1]-se[3],Ye=X.dy-se[0]-se[2];return He<0&&(Te+=He/2,He=0),Ye<0&&(Ne+=Ye/2,Ye=0),{x:Te,y:Ne,dx:He,dy:Ye}}e.random={normal:function(X,se){var Te=arguments.length;return Te<2&&(se=1),Te<1&&(X=0),function(){var Ne,He,Ye;do Ne=Math.random()*2-1,He=Math.random()*2-1,Ye=Ne*Ne+He*He;while(!Ye||Ye>1);return X+se*Ne*Math.sqrt(-2*Math.log(Ye)/Ye)}},logNormal:function(){var X=e.random.normal.apply(e,arguments);return function(){return Math.exp(X())}},bates:function(X){var se=e.random.irwinHall(X);return function(){return se()/X}},irwinHall:function(X){return function(){for(var se=0,Te=0;Te<X;Te++)se+=Math.random();return se}}},e.scale={};function hn(X){var se=X[0],Te=X[X.length-1];return se<Te?[se,Te]:[Te,se]}function Tn(X){return X.rangeExtent?X.rangeExtent():hn(X.range())}function Bn(X,se,Te,Ne){var He=Te(X[0],X[1]),Ye=Ne(se[0],se[1]);return function(Ct){return Ye(He(Ct))}}function Zi(X,se){var Te=0,Ne=X.length-1,He=X[Te],Ye=X[Ne],Ct;return Ye<He&&(Ct=Te,Te=Ne,Ne=Ct,Ct=He,He=Ye,Ye=Ct),X[Te]=se.floor(He),X[Ne]=se.ceil(Ye),X}function $i(X){return X?{floor:function(se){return Math.floor(se/X)*X},ceil:function(se){return Math.ceil(se/X)*X}}:an}var an={floor:G,ceil:G};function Di(X,se,Te,Ne){var He=[],Ye=[],Ct=0,nt=Math.min(X.length,se.length)-1;for(X[nt]<X[0]&&(X=X.slice().reverse(),se=se.slice().reverse());++Ct<=nt;)He.push(Te(X[Ct-1],X[Ct])),Ye.push(Ne(se[Ct-1],se[Ct]));return function(jt){var gr=e.bisect(X,jt,1,nt)-1;return Ye[gr](He[gr](jt))}}e.scale.linear=function(){return $n([0,1],[0,1],xl,!1)};function $n(X,se,Te,Ne){var He,Ye;function Ct(){var jt=Math.min(X.length,se.length)>2?Di:Bn,gr=Ne?Mu:xh;return He=jt(X,se,gr,Te),Ye=jt(se,X,gr,xl),nt}function nt(jt){return He(jt)}return nt.invert=function(jt){return Ye(jt)},nt.domain=function(jt){return arguments.length?(X=jt.map(Number),Ct()):X},nt.range=function(jt){return arguments.length?(se=jt,Ct()):se},nt.rangeRound=function(jt){return nt.range(jt).interpolate(ju)},nt.clamp=function(jt){return arguments.length?(Ne=jt,Ct()):Ne},nt.interpolate=function(jt){return arguments.length?(Te=jt,Ct()):Te},nt.ticks=function(jt){return Na(X,jt)},nt.tickFormat=function(jt,gr){return d3_scale_linearTickFormat(X,jt,gr)},nt.nice=function(jt){return Ra(X,jt),Ct()},nt.copy=function(){return $n(X,se,Te,Ne)},Ct()}function ka(X,se){return e.rebind(X,se,"range","rangeRound","interpolate","clamp")}function Ra(X,se){return Zi(X,$i(La(X,se)[2])),Zi(X,$i(La(X,se)[2])),X}function La(X,se){se==null&&(se=10);var Te=hn(X),Ne=Te[1]-Te[0],He=Math.pow(10,Math.floor(Math.log(Ne/se)/Math.LN10)),Ye=se/Ne*He;return Ye<=.15?He*=10:Ye<=.35?He*=5:Ye<=.75&&(He*=2),Te[0]=Math.ceil(Te[0]/He)*He,Te[1]=Math.floor(Te[1]/He)*He+He*.5,Te[2]=He,Te}function Na(X,se){return e.range.apply(e,La(X,se))}var Yn={s:1,g:1,p:1,r:1,e:1};function zn(X){return-Math.floor(Math.log(X)/Math.LN10+.01)}function Ka(X,se){var Te=zn(se[2]);return X in Yn?Math.abs(Te-zn(Math.max(p(se[0]),p(se[1]))))+ +(X!=="e"):Te-(X==="%")*2}e.scale.log=function(){return bo(e.scale.linear().domain([0,1]),10,!0,[1,10])};function bo(X,se,Te,Ne){function He(nt){return(Te?Math.log(nt<0?0:nt):-Math.log(nt>0?0:-nt))/Math.log(se)}function Ye(nt){return Te?Math.pow(se,nt):-Math.pow(se,-nt)}function Ct(nt){return X(He(nt))}return Ct.invert=function(nt){return Ye(X.invert(nt))},Ct.domain=function(nt){return arguments.length?(Te=nt[0]>=0,X.domain((Ne=nt.map(Number)).map(He)),Ct):Ne},Ct.base=function(nt){return arguments.length?(se=+nt,X.domain(Ne.map(He)),Ct):se},Ct.nice=function(){var nt=Zi(Ne.map(He),Te?Math:Xo);return X.domain(nt),Ne=nt.map(Ye),Ct},Ct.ticks=function(){var nt=hn(Ne),jt=[],gr=nt[0],yr=nt[1],Gr=Math.floor(He(gr)),qr=Math.ceil(He(yr)),_i=se%1?2:se;if(isFinite(qr-Gr)){if(Te){for(;Gr<qr;Gr++)for(var bi=1;bi<_i;bi++)jt.push(Ye(Gr)*bi);jt.push(Ye(Gr))}else for(jt.push(Ye(Gr));Gr++<qr;)for(var bi=_i-1;bi>0;bi--)jt.push(Ye(Gr)*bi);for(Gr=0;jt[Gr]<gr;Gr++);for(qr=jt.length;jt[qr-1]>yr;qr--);jt=jt.slice(Gr,qr)}return jt},Ct.copy=function(){return bo(X.copy(),se,Te,Ne)},ka(Ct,X)}var Xo={floor:function(X){return-Math.ceil(-X)},ceil:function(X){return-Math.floor(-X)}};e.scale.pow=function(){return Ms(e.scale.linear(),1,[0,1])};function Ms(X,se,Te){var Ne=os(se),He=os(1/se);function Ye(Ct){return X(Ne(Ct))}return Ye.invert=function(Ct){return He(X.invert(Ct))},Ye.domain=function(Ct){return arguments.length?(X.domain((Te=Ct.map(Number)).map(Ne)),Ye):Te},Ye.ticks=function(Ct){return Na(Te,Ct)},Ye.tickFormat=function(Ct,nt){return d3_scale_linearTickFormat(Te,Ct,nt)},Ye.nice=function(Ct){return Ye.domain(Ra(Te,Ct))},Ye.exponent=function(Ct){return arguments.length?(Ne=os(se=Ct),He=os(1/se),X.domain(Te.map(Ne)),Ye):se},Ye.copy=function(){return Ms(X.copy(),se,Te)},ka(Ye,X)}function os(X){return function(se){return se<0?-Math.pow(-se,X):Math.pow(se,X)}}e.scale.sqrt=function(){return e.scale.pow().exponent(.5)},e.scale.ordinal=function(){return Ts([],{t:"range",a:[[]]})};function Ts(X,se){var Te,Ne,He;function Ye(nt){return Ne[((Te.get(nt)||(se.t==="range"?Te.set(nt,X.push(nt)):NaN))-1)%Ne.length]}function Ct(nt,jt){return e.range(X.length).map(function(gr){return nt+jt*gr})}return Ye.domain=function(nt){if(!arguments.length)return X;X=[],Te=new A;for(var jt=-1,gr=nt.length,yr;++jt<gr;)Te.has(yr=nt[jt])||Te.set(yr,X.push(yr));return Ye[se.t].apply(Ye,se.a)},Ye.range=function(nt){return arguments.length?(Ne=nt,He=0,se={t:"range",a:arguments},Ye):Ne},Ye.rangePoints=function(nt,jt){arguments.length<2&&(jt=0);var gr=nt[0],yr=nt[1],Gr=X.length<2?(gr=(gr+yr)/2,0):(yr-gr)/(X.length-1+jt);return Ne=Ct(gr+Gr*jt/2,Gr),He=0,se={t:"rangePoints",a:arguments},Ye},Ye.rangeRoundPoints=function(nt,jt){arguments.length<2&&(jt=0);var gr=nt[0],yr=nt[1],Gr=X.length<2?(gr=yr=Math.round((gr+yr)/2),0):(yr-gr)/(X.length-1+jt)|0;return Ne=Ct(gr+Math.round(Gr*jt/2+(yr-gr-(X.length-1+jt)*Gr)/2),Gr),He=0,se={t:"rangeRoundPoints",a:arguments},Ye},Ye.rangeBands=function(nt,jt,gr){arguments.length<2&&(jt=0),arguments.length<3&&(gr=jt);var yr=nt[1]<nt[0],Gr=nt[yr-0],qr=nt[1-yr],_i=(qr-Gr)/(X.length-jt+2*gr);return Ne=Ct(Gr+_i*gr,_i),yr&&Ne.reverse(),He=_i*(1-jt),se={t:"rangeBands",a:arguments},Ye},Ye.rangeRoundBands=function(nt,jt,gr){arguments.length<2&&(jt=0),arguments.length<3&&(gr=jt);var yr=nt[1]<nt[0],Gr=nt[yr-0],qr=nt[1-yr],_i=Math.floor((qr-Gr)/(X.length-jt+2*gr));return Ne=Ct(Gr+Math.round((qr-Gr-(X.length-jt)*_i)/2),_i),yr&&Ne.reverse(),He=Math.round(_i*(1-jt)),se={t:"rangeRoundBands",a:arguments},Ye},Ye.rangeBand=function(){return He},Ye.rangeExtent=function(){return hn(se.a[0])},Ye.copy=function(){return Ts(X,se)},Ye.domain(X)}e.scale.category10=function(){return e.scale.ordinal().range(Ho)},e.scale.category20=function(){return e.scale.ordinal().range(yl)},e.scale.category20b=function(){return e.scale.ordinal().range(Xs)},e.scale.category20c=function(){return e.scale.ordinal().range(Ps)};var Ho=[2062260,16744206,2924588,14034728,9725885,9197131,14907330,8355711,12369186,1556175].map(Wo),yl=[2062260,11454440,16744206,16759672,2924588,10018698,14034728,16750742,9725885,12955861,9197131,12885140,14907330,16234194,8355711,13092807,12369186,14408589,1556175,10410725].map(Wo),Xs=[3750777,5395619,7040719,10264286,6519097,9216594,11915115,13556636,9202993,12426809,15186514,15190932,8666169,11356490,14049643,15177372,8077683,10834324,13528509,14589654].map(Wo),Ps=[3244733,7057110,10406625,13032431,15095053,16616764,16625259,16634018,3253076,7652470,10607003,13101504,7695281,10394312,12369372,14342891,6513507,9868950,12434877,14277081].map(Wo);e.scale.quantile=function(){return va([],[])};function va(X,se){var Te;function Ne(){var Ye=0,Ct=se.length;for(Te=[];++Ye<Ct;)Te[Ye-1]=e.quantile(X,Ye/Ct);return He}function He(Ye){if(!isNaN(Ye=+Ye))return se[e.bisect(Te,Ye)]}return He.domain=function(Ye){return arguments.length?(X=Ye.map(h).filter(d).sort(f),Ne()):X},He.range=function(Ye){return arguments.length?(se=Ye,Ne()):se},He.quantiles=function(){return Te},He.invertExtent=function(Ye){return Ye=se.indexOf(Ye),Ye<0?[NaN,NaN]:[Ye>0?Te[Ye-1]:X[0],Ye<Te.length?Te[Ye]:X[X.length-1]]},He.copy=function(){return va(X,se)},Ne()}e.scale.quantize=function(){return no(0,1,[0,1])};function no(X,se,Te){var Ne,He;function Ye(nt){return Te[Math.max(0,Math.min(He,Math.floor(Ne*(nt-X))))]}function Ct(){return Ne=Te.length/(se-X),He=Te.length-1,Ye}return Ye.domain=function(nt){return arguments.length?(X=+nt[0],se=+nt[nt.length-1],Ct()):[X,se]},Ye.range=function(nt){return arguments.length?(Te=nt,Ct()):Te},Ye.invertExtent=function(nt){return nt=Te.indexOf(nt),nt=nt<0?NaN:nt/Ne+X,[nt,nt+1/Ne]},Ye.copy=function(){return no(X,se,Te)},Ct()}e.scale.threshold=function(){return _s([.5],[0,1])};function _s(X,se){function Te(Ne){if(Ne<=Ne)return se[e.bisect(X,Ne)]}return Te.domain=function(Ne){return arguments.length?(X=Ne,Te):X},Te.range=function(Ne){return arguments.length?(se=Ne,Te):se},Te.invertExtent=function(Ne){return Ne=se.indexOf(Ne),[X[Ne-1],X[Ne]]},Te.copy=function(){return _s(X,se)},Te}e.scale.identity=function(){return is([0,1])};function is(X){function se(Te){return+Te}return se.invert=se,se.domain=se.range=function(Te){return arguments.length?(X=Te.map(se),se):X},se.ticks=function(Te){return Na(X,Te)},se.tickFormat=function(Te,Ne){return d3_scale_linearTickFormat(X,Te,Ne)},se.copy=function(){return is(X)},se}e.svg={};function $l(){return 0}e.svg.arc=function(){var X=Yu,se=Nc,Te=$l,Ne=ku,He=gu,Ye=Uc,Ct=xu;function nt(){var gr=Math.max(0,+X.apply(this,arguments)),yr=Math.max(0,+se.apply(this,arguments)),Gr=He.apply(this,arguments)-xe,qr=Ye.apply(this,arguments)-xe,_i=Math.abs(qr-Gr),bi=Gr>qr?0:1;if(yr<gr&&(Xr=yr,yr=gr,gr=Xr),_i>=Ie)return jt(yr,bi)+(gr?jt(gr,1-bi):"")+"Z";var Xr,ni,gi,Pi,Ai=0,ti=0,Rn,Cn,Nn,ia,Ea,Ia,yo,Da,go=[];if((Pi=(+Ct.apply(this,arguments)||0)/2)&&(gi=Ne===ku?Math.sqrt(gr*gr+yr*yr):+Ne.apply(this,arguments),bi||(ti*=-1),yr&&(ti=oi(gi/yr*Math.sin(Pi))),gr&&(Ai=oi(gi/gr*Math.sin(Pi)))),yr){Rn=yr*Math.cos(Gr+ti),Cn=yr*Math.sin(Gr+ti),Nn=yr*Math.cos(qr-ti),ia=yr*Math.sin(qr-ti);var Rs=Math.abs(qr-Gr-2*ti)<=$e?0:1;if(ti&&Ac(Rn,Cn,Nn,ia)===bi^Rs){var Es=(Gr+qr)/2;Rn=yr*Math.cos(Es),Cn=yr*Math.sin(Es),Nn=ia=null}}else Rn=Cn=0;if(gr){Ea=gr*Math.cos(qr-Ai),Ia=gr*Math.sin(qr-Ai),yo=gr*Math.cos(Gr+Ai),Da=gr*Math.sin(Gr+Ai);var Zs=Math.abs(Gr-qr+2*Ai)<=$e?0:1;if(Ai&&Ac(Ea,Ia,yo,Da)===1-bi^Zs){var Gn=(Gr+qr)/2;Ea=gr*Math.cos(Gn),Ia=gr*Math.sin(Gn),yo=Da=null}}else Ea=Ia=0;if(_i>Je&&(Xr=Math.min(Math.abs(yr-gr)/2,+Te.apply(this,arguments)))>.001){ni=gr<yr^bi?0:1;var Ha=Xr,Fo=Xr;if(_i<$e){var Uo=yo==null?[Ea,Ia]:Nn==null?[Rn,Cn]:nl([Rn,Cn],[yo,Da],[Nn,ia],[Ea,Ia]),Qs=Rn-Uo[0],Sl=Cn-Uo[1],bu=Nn-Uo[0],vl=ia-Uo[1],Sc=1/Math.sin(Math.acos((Qs*bu+Sl*vl)/(Math.sqrt(Qs*Qs+Sl*Sl)*Math.sqrt(bu*bu+vl*vl)))/2),Ee=Math.sqrt(Uo[0]*Uo[0]+Uo[1]*Uo[1]);Fo=Math.min(Xr,(gr-Ee)/(Sc-1)),Ha=Math.min(Xr,(yr-Ee)/(Sc+1))}if(Nn!=null){var xt=Ua(yo==null?[Ea,Ia]:[yo,Da],[Rn,Cn],yr,Ha,bi),zt=Ua([Nn,ia],[Ea,Ia],yr,Ha,bi);Xr===Ha?go.push("M",xt[0],"A",Ha,",",Ha," 0 0,",ni," ",xt[1],"A",yr,",",yr," 0 ",1-bi^Ac(xt[1][0],xt[1][1],zt[1][0],zt[1][1]),",",bi," ",zt[1],"A",Ha,",",Ha," 0 0,",ni," ",zt[0]):go.push("M",xt[0],"A",Ha,",",Ha," 0 1,",ni," ",zt[0])}else go.push("M",Rn,",",Cn);if(yo!=null){var Ir=Ua([Rn,Cn],[yo,Da],gr,-Fo,bi),Hr=Ua([Ea,Ia],Nn==null?[Rn,Cn]:[Nn,ia],gr,-Fo,bi);Xr===Fo?go.push("L",Hr[0],"A",Fo,",",Fo," 0 0,",ni," ",Hr[1],"A",gr,",",gr," 0 ",bi^Ac(Hr[1][0],Hr[1][1],Ir[1][0],Ir[1][1]),",",1-bi," ",Ir[1],"A",Fo,",",Fo," 0 0,",ni," ",Ir[0]):go.push("L",Hr[0],"A",Fo,",",Fo," 0 0,",ni," ",Ir[0])}else go.push("L",Ea,",",Ia)}else go.push("M",Rn,",",Cn),Nn!=null&&go.push("A",yr,",",yr," 0 ",Rs,",",bi," ",Nn,",",ia),go.push("L",Ea,",",Ia),yo!=null&&go.push("A",gr,",",gr," 0 ",Zs,",",1-bi," ",yo,",",Da);return go.push("Z"),go.join("")}function jt(gr,yr){return"M0,"+gr+"A"+gr+","+gr+" 0 1,"+yr+" 0,"+-gr+"A"+gr+","+gr+" 0 1,"+yr+" 0,"+gr}return nt.innerRadius=function(gr){return arguments.length?(X=pi(gr),nt):X},nt.outerRadius=function(gr){return arguments.length?(se=pi(gr),nt):se},nt.cornerRadius=function(gr){return arguments.length?(Te=pi(gr),nt):Te},nt.padRadius=function(gr){return arguments.length?(Ne=gr==ku?ku:pi(gr),nt):Ne},nt.startAngle=function(gr){return arguments.length?(He=pi(gr),nt):He},nt.endAngle=function(gr){return arguments.length?(Ye=pi(gr),nt):Ye},nt.padAngle=function(gr){return arguments.length?(Ct=pi(gr),nt):Ct},nt.centroid=function(){var gr=(+X.apply(this,arguments)+ +se.apply(this,arguments))/2,yr=(+He.apply(this,arguments)+ +Ye.apply(this,arguments))/2-xe;return[Math.cos(yr)*gr,Math.sin(yr)*gr]},nt};var ku="auto";function Yu(X){return X.innerRadius}function Nc(X){return X.outerRadius}function gu(X){return X.startAngle}function Uc(X){return X.endAngle}function xu(X){return X&&X.padAngle}function Ac(X,se,Te,Ne){return(X-Te)*se-(se-Ne)*X>0?0:1}function Ua(X,se,Te,Ne,He){var Ye=X[0]-se[0],Ct=X[1]-se[1],nt=(He?Ne:-Ne)/Math.sqrt(Ye*Ye+Ct*Ct),jt=nt*Ct,gr=-nt*Ye,yr=X[0]+jt,Gr=X[1]+gr,qr=se[0]+jt,_i=se[1]+gr,bi=(yr+qr)/2,Xr=(Gr+_i)/2,ni=qr-yr,gi=_i-Gr,Pi=ni*ni+gi*gi,Ai=Te-Ne,ti=yr*_i-qr*Gr,Rn=(gi<0?-1:1)*Math.sqrt(Math.max(0,Ai*Ai*Pi-ti*ti)),Cn=(ti*gi-ni*Rn)/Pi,Nn=(-ti*ni-gi*Rn)/Pi,ia=(ti*gi+ni*Rn)/Pi,Ea=(-ti*ni+gi*Rn)/Pi,Ia=Cn-bi,yo=Nn-Xr,Da=ia-bi,go=Ea-Xr;return Ia*Ia+yo*yo>Da*Da+go*go&&(Cn=ia,Nn=Ea),[[Cn-jt,Nn-gr],[Cn*Te/Ai,Nn*Te/Ai]]}function oo(){return!0}function Vc(X){var se=Fs,Te=zs,Ne=oo,He=Ku,Ye=He.key,Ct=.7;function nt(jt){var gr=[],yr=[],Gr=-1,qr=jt.length,_i,bi=pi(se),Xr=pi(Te);function ni(){gr.push("M",He(X(yr),Ct))}for(;++Gr<qr;)Ne.call(this,_i=jt[Gr],Gr)?yr.push([+bi.call(this,_i,Gr),+Xr.call(this,_i,Gr)]):yr.length&&(ni(),yr=[]);return yr.length&&ni(),gr.length?gr.join(""):null}return nt.x=function(jt){return arguments.length?(se=jt,nt):se},nt.y=function(jt){return arguments.length?(Te=jt,nt):Te},nt.defined=function(jt){return arguments.length?(Ne=jt,nt):Ne},nt.interpolate=function(jt){return arguments.length?(typeof jt=="function"?Ye=He=jt:Ye=(He=hc.get(jt)||Ku).key,nt):Ye},nt.tension=function(jt){return arguments.length?(Ct=jt,nt):Ct},nt}e.svg.line=function(){return Vc(G)};var hc=e.map({linear:Ku,"linear-closed":ue,step:w,"step-before":B,"step-after":Q,basis:Tt,"basis-open":Kt,"basis-closed":Jt,bundle:xr,cardinal:qe,"cardinal-open":ee,"cardinal-closed":le,monotone:Dt});hc.forEach(function(X,se){se.key=X,se.closed=/-closed$/.test(X)});function Ku(X){return X.length>1?X.join("L"):X+"Z"}function ue(X){return X.join("L")+"Z"}function w(X){for(var se=0,Te=X.length,Ne=X[0],He=[Ne[0],",",Ne[1]];++se<Te;)He.push("H",(Ne[0]+(Ne=X[se])[0])/2,"V",Ne[1]);return Te>1&&He.push("H",Ne[0]),He.join("")}function B(X){for(var se=0,Te=X.length,Ne=X[0],He=[Ne[0],",",Ne[1]];++se<Te;)He.push("V",(Ne=X[se])[1],"H",Ne[0]);return He.join("")}function Q(X){for(var se=0,Te=X.length,Ne=X[0],He=[Ne[0],",",Ne[1]];++se<Te;)He.push("H",(Ne=X[se])[0],"V",Ne[1]);return He.join("")}function ee(X,se){return X.length<4?Ku(X):X[1]+Xe(X.slice(1,-1),ot(X,se))}function le(X,se){return X.length<3?ue(X):X[0]+Xe((X.push(X[0]),X),ot([X[X.length-2]].concat(X,[X[1]]),se))}function qe(X,se){return X.length<3?Ku(X):X[0]+Xe(X,ot(X,se))}function Xe(X,se){if(se.length<1||X.length!=se.length&&X.length!=se.length+2)return Ku(X);var Te=X.length!=se.length,Ne="",He=X[0],Ye=X[1],Ct=se[0],nt=Ct,jt=1;if(Te&&(Ne+="Q"+(Ye[0]-Ct[0]*2/3)+","+(Ye[1]-Ct[1]*2/3)+","+Ye[0]+","+Ye[1],He=X[1],jt=2),se.length>1){nt=se[1],Ye=X[jt],jt++,Ne+="C"+(He[0]+Ct[0])+","+(He[1]+Ct[1])+","+(Ye[0]-nt[0])+","+(Ye[1]-nt[1])+","+Ye[0]+","+Ye[1];for(var gr=2;gr<se.length;gr++,jt++)Ye=X[jt],nt=se[gr],Ne+="S"+(Ye[0]-nt[0])+","+(Ye[1]-nt[1])+","+Ye[0]+","+Ye[1]}if(Te){var yr=X[jt];Ne+="Q"+(Ye[0]+nt[0]*2/3)+","+(Ye[1]+nt[1]*2/3)+","+yr[0]+","+yr[1]}return Ne}function ot(X,se){for(var Te=[],Ne=(1-se)/2,He,Ye=X[0],Ct=X[1],nt=1,jt=X.length;++nt<jt;)He=Ye,Ye=Ct,Ct=X[nt],Te.push([Ne*(Ct[0]-He[0]),Ne*(Ct[1]-He[1])]);return Te}function Tt(X){if(X.length<3)return Ku(X);var se=1,Te=X.length,Ne=X[0],He=Ne[0],Ye=Ne[1],Ct=[He,He,He,(Ne=X[1])[0]],nt=[Ye,Ye,Ye,Ne[1]],jt=[He,",",Ye,"L",Pr(Re,Ct),",",Pr(Re,nt)];for(X.push(X[Te-1]);++se<=Te;)Ne=X[se],Ct.shift(),Ct.push(Ne[0]),nt.shift(),nt.push(Ne[1]),Be(jt,Ct,nt);return X.pop(),jt.push("L",Ne),jt.join("")}function Kt(X){if(X.length<4)return Ku(X);for(var se=[],Te=-1,Ne=X.length,He,Ye=[0],Ct=[0];++Te<3;)He=X[Te],Ye.push(He[0]),Ct.push(He[1]);for(se.push(Pr(Re,Ye)+","+Pr(Re,Ct)),--Te;++Te<Ne;)He=X[Te],Ye.shift(),Ye.push(He[0]),Ct.shift(),Ct.push(He[1]),Be(se,Ye,Ct);return se.join("")}function Jt(X){for(var se,Te=-1,Ne=X.length,He=Ne+4,Ye,Ct=[],nt=[];++Te<4;)Ye=X[Te%Ne],Ct.push(Ye[0]),nt.push(Ye[1]);for(se=[Pr(Re,Ct),",",Pr(Re,nt)],--Te;++Te<He;)Ye=X[Te%Ne],Ct.shift(),Ct.push(Ye[0]),nt.shift(),nt.push(Ye[1]),Be(se,Ct,nt);return se.join("")}function xr(X,se){var Te=X.length-1;if(Te)for(var Ne=X[0][0],He=X[0][1],Ye=X[Te][0]-Ne,Ct=X[Te][1]-He,nt=-1,jt,gr;++nt<=Te;)jt=X[nt],gr=nt/Te,jt[0]=se*jt[0]+(1-se)*(Ne+gr*Ye),jt[1]=se*jt[1]+(1-se)*(He+gr*Ct);return Tt(X)}function Pr(X,se){return X[0]*se[0]+X[1]*se[1]+X[2]*se[2]+X[3]*se[3]}var ve=[0,2/3,1/3,0],be=[0,1/3,2/3,0],Re=[0,1/6,2/3,1/6];function Be(X,se,Te){X.push("C",Pr(ve,se),",",Pr(ve,Te),",",Pr(be,se),",",Pr(be,Te),",",Pr(Re,se),",",Pr(Re,Te))}function tt(X,se){return(se[1]-X[1])/(se[0]-X[0])}function We(X){for(var se=0,Te=X.length-1,Ne=[],He=X[0],Ye=X[1],Ct=Ne[0]=tt(He,Ye);++se<Te;)Ne[se]=(Ct+(Ct=tt(He=Ye,Ye=X[se+1])))/2;return Ne[se]=Ct,Ne}function it(X){for(var se=[],Te,Ne,He,Ye,Ct=We(X),nt=-1,jt=X.length-1;++nt<jt;)Te=tt(X[nt],X[nt+1]),p(Te)<Je?Ct[nt]=Ct[nt+1]=0:(Ne=Ct[nt]/Te,He=Ct[nt+1]/Te,Ye=Ne*Ne+He*He,Ye>9&&(Ye=Te*3/Math.sqrt(Ye),Ct[nt]=Ye*Ne,Ct[nt+1]=Ye*He));for(nt=-1;++nt<=jt;)Ye=(X[Math.min(jt,nt+1)][0]-X[Math.max(0,nt-1)][0])/(6*(1+Ct[nt]*Ct[nt])),se.push([Ye||0,Ct[nt]*Ye||0]);return se}function Dt(X){return X.length<3?Ku(X):X[0]+Xe(X,it(X))}e.svg.line.radial=function(){var X=Vc(Ht);return X.radius=X.x,delete X.x,X.angle=X.y,delete X.y,X};function Ht(X){for(var se,Te=-1,Ne=X.length,He,Ye;++Te<Ne;)se=X[Te],He=se[0],Ye=se[1]-xe,se[0]=He*Math.cos(Ye),se[1]=He*Math.sin(Ye);return X}function rr(X){var se=Fs,Te=Fs,Ne=0,He=zs,Ye=oo,Ct=Ku,nt=Ct.key,jt=Ct,gr="L",yr=.7;function Gr(qr){var _i=[],bi=[],Xr=[],ni=-1,gi=qr.length,Pi,Ai=pi(se),ti=pi(Ne),Rn=se===Te?function(){return Nn}:pi(Te),Cn=Ne===He?function(){return ia}:pi(He),Nn,ia;function Ea(){_i.push("M",Ct(X(Xr),yr),gr,jt(X(bi.reverse()),yr),"Z")}for(;++ni<gi;)Ye.call(this,Pi=qr[ni],ni)?(bi.push([Nn=+Ai.call(this,Pi,ni),ia=+ti.call(this,Pi,ni)]),Xr.push([+Rn.call(this,Pi,ni),+Cn.call(this,Pi,ni)])):bi.length&&(Ea(),bi=[],Xr=[]);return bi.length&&Ea(),_i.length?_i.join(""):null}return Gr.x=function(qr){return arguments.length?(se=Te=qr,Gr):Te},Gr.x0=function(qr){return arguments.length?(se=qr,Gr):se},Gr.x1=function(qr){return arguments.length?(Te=qr,Gr):Te},Gr.y=function(qr){return arguments.length?(Ne=He=qr,Gr):He},Gr.y0=function(qr){return arguments.length?(Ne=qr,Gr):Ne},Gr.y1=function(qr){return arguments.length?(He=qr,Gr):He},Gr.defined=function(qr){return arguments.length?(Ye=qr,Gr):Ye},Gr.interpolate=function(qr){return arguments.length?(typeof qr=="function"?nt=Ct=qr:nt=(Ct=hc.get(qr)||Ku).key,jt=Ct.reverse||Ct,gr=Ct.closed?"M":"L",Gr):nt},Gr.tension=function(qr){return arguments.length?(yr=qr,Gr):yr},Gr}B.reverse=Q,Q.reverse=B,e.svg.area=function(){return rr(G)},e.svg.area.radial=function(){var X=rr(Ht);return X.radius=X.x,delete X.x,X.innerRadius=X.x0,delete X.x0,X.outerRadius=X.x1,delete X.x1,X.angle=X.y,delete X.y,X.startAngle=X.y0,delete X.y0,X.endAngle=X.y1,delete X.y1,X};function dr(X){return X.source}function Sr(X){return X.target}e.svg.chord=function(){var X=dr,se=Sr,Te=Or,Ne=gu,He=Uc;function Ye(yr,Gr){var qr=Ct(this,X,yr,Gr),_i=Ct(this,se,yr,Gr);return"M"+qr.p0+jt(qr.r,qr.p1,qr.a1-qr.a0)+(nt(qr,_i)?gr(qr.r,qr.p1,qr.r,qr.p0):gr(qr.r,qr.p1,_i.r,_i.p0)+jt(_i.r,_i.p1,_i.a1-_i.a0)+gr(_i.r,_i.p1,qr.r,qr.p0))+"Z"}function Ct(yr,Gr,qr,_i){var bi=Gr.call(yr,qr,_i),Xr=Te.call(yr,bi,_i),ni=Ne.call(yr,bi,_i)-xe,gi=He.call(yr,bi,_i)-xe;return{r:Xr,a0:ni,a1:gi,p0:[Xr*Math.cos(ni),Xr*Math.sin(ni)],p1:[Xr*Math.cos(gi),Xr*Math.sin(gi)]}}function nt(yr,Gr){return yr.a0==Gr.a0&&yr.a1==Gr.a1}function jt(yr,Gr,qr){return"A"+yr+","+yr+" 0 "+ +(qr>$e)+",1 "+Gr}function gr(yr,Gr,qr,_i){return"Q 0,0 "+_i}return Ye.radius=function(yr){return arguments.length?(Te=pi(yr),Ye):Te},Ye.source=function(yr){return arguments.length?(X=pi(yr),Ye):X},Ye.target=function(yr){return arguments.length?(se=pi(yr),Ye):se},Ye.startAngle=function(yr){return arguments.length?(Ne=pi(yr),Ye):Ne},Ye.endAngle=function(yr){return arguments.length?(He=pi(yr),Ye):He},Ye};function Or(X){return X.radius}e.svg.diagonal=function(){var X=dr,se=Sr,Te=jr;function Ne(He,Ye){var Ct=X.call(this,He,Ye),nt=se.call(this,He,Ye),jt=(Ct.y+nt.y)/2,gr=[Ct,{x:Ct.x,y:jt},{x:nt.x,y:jt},nt];return gr=gr.map(Te),"M"+gr[0]+"C"+gr[1]+" "+gr[2]+" "+gr[3]}return Ne.source=function(He){return arguments.length?(X=pi(He),Ne):X},Ne.target=function(He){return arguments.length?(se=pi(He),Ne):se},Ne.projection=function(He){return arguments.length?(Te=He,Ne):Te},Ne};function jr(X){return[X.x,X.y]}e.svg.diagonal.radial=function(){var X=e.svg.diagonal(),se=jr,Te=X.projection;return X.projection=function(Ne){return arguments.length?Te(ii(se=Ne)):se},X};function ii(X){return function(){var se=X.apply(this,arguments),Te=se[0],Ne=se[1]-xe;return[Te*Math.cos(Ne),Te*Math.sin(Ne)]}}e.svg.symbol=function(){var X=un,se=Li;function Te(Ne,He){return(In.get(X.call(this,Ne,He))||sn)(se.call(this,Ne,He))}return Te.type=function(Ne){return arguments.length?(X=pi(Ne),Te):X},Te.size=function(Ne){return arguments.length?(se=pi(Ne),Te):se},Te};function Li(){return 64}function un(){return"circle"}function sn(X){var se=Math.sqrt(X/$e);return"M0,"+se+"A"+se+","+se+" 0 1,1 0,"+-se+"A"+se+","+se+" 0 1,1 0,"+se+"Z"}var In=e.map({circle:sn,cross:function(X){var se=Math.sqrt(X/5)/2;return"M"+-3*se+","+-se+"H"+-se+"V"+-3*se+"H"+se+"V"+-se+"H"+3*se+"V"+se+"H"+se+"V"+3*se+"H"+-se+"V"+se+"H"+-3*se+"Z"},diamond:function(X){var se=Math.sqrt(X/(2*Aa)),Te=se*Aa;return"M0,"+-se+"L"+Te+",0 0,"+se+" "+-Te+",0Z"},square:function(X){var se=Math.sqrt(X)/2;return"M"+-se+","+-se+"L"+se+","+-se+" "+se+","+se+" "+-se+","+se+"Z"},"triangle-down":function(X){var se=Math.sqrt(X/Kn),Te=se*Kn/2;return"M0,"+Te+"L"+se+","+-Te+" "+-se+","+-Te+"Z"},"triangle-up":function(X){var se=Math.sqrt(X/Kn),Te=se*Kn/2;return"M0,"+-Te+"L"+se+","+Te+" "+-se+","+Te+"Z"}});e.svg.symbolTypes=In.keys();var Kn=Math.sqrt(3),Aa=Math.tan(30*Ce);Pe.transition=function(X){for(var se=Bo||++mo,Te=To(X),Ne=[],He,Ye,Ct=Is||{time:Date.now(),ease:bl,delay:0,duration:250},nt=-1,jt=this.length;++nt<jt;){Ne.push(He=[]);for(var gr=this[nt],yr=-1,Gr=gr.length;++yr<Gr;)(Ye=gr[yr])&&dl(Ye,yr,Te,se,Ct),He.push(Ye)}return ko(Ne,Te,se)},Pe.interrupt=function(X){return this.each(X==null?fa:$a(To(X)))};var fa=$a(To());function $a(X){return function(){var se,Te,Ne;(se=this[X])&&(Ne=se[Te=se.active])&&(Ne.timer.c=null,Ne.timer.t=NaN,--se.count?delete se[Te]:delete this[X],se.active+=.5,Ne.event&&Ne.event.interrupt.call(this,this.__data__,Ne.index))}}function ko(X,se,Te){return ie(X,Qa),X.namespace=se,X.id=Te,X}var Qa=[],mo=0,Bo,Is;Qa.call=Pe.call,Qa.empty=Pe.empty,Qa.node=Pe.node,Qa.size=Pe.size,e.transition=function(X,se){return X&&X.transition?Bo?X.transition(se):X:e.selection().transition(X)},e.transition.prototype=Qa,Qa.select=function(X){var se=this.id,Te=this.namespace,Ne=[],He,Ye,Ct;X=ge(X);for(var nt=-1,jt=this.length;++nt<jt;){Ne.push(He=[]);for(var gr=this[nt],yr=-1,Gr=gr.length;++yr<Gr;)(Ct=gr[yr])&&(Ye=X.call(Ct,Ct.__data__,yr,nt))?("__data__"in Ct&&(Ye.__data__=Ct.__data__),dl(Ye,yr,Te,se,Ct[Te][se]),He.push(Ye)):He.push(null)}return ko(Ne,Te,se)},Qa.selectAll=function(X){var se=this.id,Te=this.namespace,Ne=[],He,Ye,Ct,nt,jt;X=Fe(X);for(var gr=-1,yr=this.length;++gr<yr;)for(var Gr=this[gr],qr=-1,_i=Gr.length;++qr<_i;)if(Ct=Gr[qr]){jt=Ct[Te][se],Ye=X.call(Ct,Ct.__data__,qr,gr),Ne.push(He=[]);for(var bi=-1,Xr=Ye.length;++bi<Xr;)(nt=Ye[bi])&&dl(nt,bi,Te,se,jt),He.push(nt)}return ko(Ne,Te,se)},Qa.filter=function(X){var se=[],Te,Ne,He;typeof X!="function"&&(X=Qe(X));for(var Ye=0,Ct=this.length;Ye<Ct;Ye++){se.push(Te=[]);for(var Ne=this[Ye],nt=0,jt=Ne.length;nt<jt;nt++)(He=Ne[nt])&&X.call(He,He.__data__,nt,Ye)&&Te.push(He)}return ko(se,this.namespace,this.id)},Qa.tween=function(X,se){var Te=this.id,Ne=this.namespace;return arguments.length<2?this.node()[Ne][Te].tween.get(X):er(this,se==null?function(He){He[Ne][Te].tween.remove(X)}:function(He){He[Ne][Te].tween.set(X,se)})};function As(X,se,Te,Ne){var He=X.id,Ye=X.namespace;return er(X,typeof Te=="function"?function(Ct,nt,jt){Ct[Ye][He].tween.set(se,Ne(Te.call(Ct,Ct.__data__,nt,jt)))}:(Te=Ne(Te),function(Ct){Ct[Ye][He].tween.set(se,Te)}))}Qa.attr=function(X,se){if(arguments.length<2){for(se in X)this.attr(se,X[se]);return this}var Te=X=="transform"?sf:xl,Ne=e.ns.qualify(X);function He(){this.removeAttribute(Ne)}function Ye(){this.removeAttributeNS(Ne.space,Ne.local)}function Ct(jt){return jt==null?He:(jt+="",function(){var gr=this.getAttribute(Ne),yr;return gr!==jt&&(yr=Te(gr,jt),function(Gr){this.setAttribute(Ne,yr(Gr))})})}function nt(jt){return jt==null?Ye:(jt+="",function(){var gr=this.getAttributeNS(Ne.space,Ne.local),yr;return gr!==jt&&(yr=Te(gr,jt),function(Gr){this.setAttributeNS(Ne.space,Ne.local,yr(Gr))})})}return As(this,"attr."+X,se,Ne.local?nt:Ct)},Qa.attrTween=function(X,se){var Te=e.ns.qualify(X);function Ne(Ye,Ct){var nt=se.call(this,Ye,Ct,this.getAttribute(Te));return nt&&function(jt){this.setAttribute(Te,nt(jt))}}function He(Ye,Ct){var nt=se.call(this,Ye,Ct,this.getAttributeNS(Te.space,Te.local));return nt&&function(jt){this.setAttributeNS(Te.space,Te.local,nt(jt))}}return this.tween("attr."+X,Te.local?He:Ne)},Qa.style=function(X,se,Te){var Ne=arguments.length;if(Ne<3){if(typeof X!="string"){Ne<2&&(se="");for(Te in X)this.style(Te,X[Te],se);return this}Te=""}function He(){this.style.removeProperty(X)}function Ye(Ct){return Ct==null?He:(Ct+="",function(){var nt=a(this).getComputedStyle(this,null).getPropertyValue(X),jt;return nt!==Ct&&(jt=xl(nt,Ct),function(gr){this.style.setProperty(X,jt(gr),Te)})})}return As(this,"style."+X,se,Ye)},Qa.styleTween=function(X,se,Te){arguments.length<3&&(Te="");function Ne(He,Ye){var Ct=se.call(this,He,Ye,a(this).getComputedStyle(this,null).getPropertyValue(X));return Ct&&function(nt){this.style.setProperty(X,Ct(nt),Te)}}return this.tween("style."+X,Ne)},Qa.text=function(X){return As(this,"text",X,wo)};function wo(X){return X==null&&(X=""),function(){this.textContent=X}}Qa.remove=function(){var X=this.namespace;return this.each("end.transition",function(){var se;this[X].count<2&&(se=this.parentNode)&&se.removeChild(this)})},Qa.ease=function(X){var se=this.id,Te=this.namespace;return arguments.length<1?this.node()[Te][se].ease:(typeof X!="function"&&(X=e.ease.apply(e,arguments)),er(this,function(Ne){Ne[Te][se].ease=X}))},Qa.delay=function(X){var se=this.id,Te=this.namespace;return arguments.length<1?this.node()[Te][se].delay:er(this,typeof X=="function"?function(Ne,He,Ye){Ne[Te][se].delay=+X.call(Ne,Ne.__data__,He,Ye)}:(X=+X,function(Ne){Ne[Te][se].delay=X}))},Qa.duration=function(X){var se=this.id,Te=this.namespace;return arguments.length<1?this.node()[Te][se].duration:er(this,typeof X=="function"?function(Ne,He,Ye){Ne[Te][se].duration=Math.max(1,X.call(Ne,Ne.__data__,He,Ye))}:(X=Math.max(1,X),function(Ne){Ne[Te][se].duration=X}))},Qa.each=function(X,se){var Te=this.id,Ne=this.namespace;if(arguments.length<2){var He=Is,Ye=Bo;try{Bo=Te,er(this,function(Ct,nt,jt){Is=Ct[Ne][Te],X.call(Ct,Ct.__data__,nt,jt)})}finally{Is=He,Bo=Ye}}else er(this,function(Ct){var nt=Ct[Ne][Te];(nt.event||(nt.event=e.dispatch("start","end","interrupt"))).on(X,se)});return this},Qa.transition=function(){for(var X=this.id,se=++mo,Te=this.namespace,Ne=[],He,Ye,Ct,nt,jt=0,gr=this.length;jt<gr;jt++){Ne.push(He=[]);for(var Ye=this[jt],yr=0,Gr=Ye.length;yr<Gr;yr++)(Ct=Ye[yr])&&(nt=Ct[Te][X],dl(Ct,yr,Te,se,{time:nt.time,ease:nt.ease,delay:nt.delay+nt.duration,duration:nt.duration})),He.push(Ct)}return ko(Ne,Te,se)};function To(X){return X==null?"__transition__":"__transition_"+X+"__"}function dl(X,se,Te,Ne,He){var Ye=X[Te]||(X[Te]={active:0,count:0}),Ct=Ye[Ne],nt,jt,gr,yr,Gr;function qr(Xr){var ni=Ct.delay;if(jt.t=ni+nt,ni<=Xr)return _i(Xr-ni);jt.c=_i}function _i(Xr){var ni=Ye.active,gi=Ye[ni];gi&&(gi.timer.c=null,gi.timer.t=NaN,--Ye.count,delete Ye[ni],gi.event&&gi.event.interrupt.call(X,X.__data__,gi.index));for(var Pi in Ye)if(+Pi<Ne){var Ai=Ye[Pi];Ai.timer.c=null,Ai.timer.t=NaN,--Ye.count,delete Ye[Pi]}jt.c=bi,No(function(){return jt.c&&bi(Xr||1)&&(jt.c=null,jt.t=NaN),1},0,nt),Ye.active=Ne,Ct.event&&Ct.event.start.call(X,X.__data__,se),Gr=[],Ct.tween.forEach(function(ti,Rn){(Rn=Rn.call(X,X.__data__,se))&&Gr.push(Rn)}),yr=Ct.ease,gr=Ct.duration}function bi(Xr){for(var ni=Xr/gr,gi=yr(ni),Pi=Gr.length;Pi>0;)Gr[--Pi].call(X,gi);if(ni>=1)return Ct.event&&Ct.event.end.call(X,X.__data__,se),--Ye.count?delete Ye[Ne]:delete X[Te],1}Ct||(nt=He.time,jt=No(qr,0,nt),Ct=Ye[Ne]={tween:new A,time:nt,timer:jt,delay:He.delay,duration:He.duration,ease:He.ease,index:se},He=null,++Ye.count)}e.svg.axis=function(){var X=e.scale.linear(),se=Nl,Te=6,Ne=6,He=3,Ye=[10],Ct=null,nt;function jt(gr){gr.each(function(){var yr=e.select(this),Gr=this.__chart__||X,qr=this.__chart__=X.copy(),_i=Ct==null?qr.ticks?qr.ticks.apply(qr,Ye):qr.domain():Ct,bi=nt==null?qr.tickFormat?qr.tickFormat.apply(qr,Ye):G:nt,Xr=yr.selectAll(".tick").data(_i,qr),ni=Xr.enter().insert("g",".domain").attr("class","tick").style("opacity",Je),gi=e.transition(Xr.exit()).style("opacity",Je).remove(),Pi=e.transition(Xr.order()).style("opacity",1),Ai=Math.max(Te,0)+He,ti,Rn=Tn(qr),Cn=yr.selectAll(".domain").data([0]),Nn=(Cn.enter().append("path").attr("class","domain"),e.transition(Cn));ni.append("line"),ni.append("text");var ia=ni.select("line"),Ea=Pi.select("line"),Ia=Xr.select("text").text(bi),yo=ni.select("text"),Da=Pi.select("text"),go=se==="top"||se==="left"?-1:1,Rs,Es,Zs,Gn;if(se==="bottom"||se==="top"?(ti=ou,Rs="x",Zs="y",Es="x2",Gn="y2",Ia.attr("dy",go<0?"0em":".71em").style("text-anchor","middle"),Nn.attr("d","M"+Rn[0]+","+go*Ne+"V0H"+Rn[1]+"V"+go*Ne)):(ti=$s,Rs="y",Zs="x",Es="y2",Gn="x2",Ia.attr("dy",".32em").style("text-anchor",go<0?"end":"start"),Nn.attr("d","M"+go*Ne+","+Rn[0]+"H0V"+Rn[1]+"H"+go*Ne)),ia.attr(Gn,go*Te),yo.attr(Zs,go*Ai),Ea.attr(Es,0).attr(Gn,go*Te),Da.attr(Rs,0).attr(Zs,go*Ai),qr.rangeBand){var Ha=qr,Fo=Ha.rangeBand()/2;Gr=qr=function(Uo){return Ha(Uo)+Fo}}else Gr.rangeBand?Gr=qr:gi.call(ti,qr,Gr);ni.call(ti,Gr,qr),Pi.call(ti,qr,qr)})}return jt.scale=function(gr){return arguments.length?(X=gr,jt):X},jt.orient=function(gr){return arguments.length?(se=gr in Lu?gr+"":Nl,jt):se},jt.ticks=function(){return arguments.length?(Ye=r(arguments),jt):Ye},jt.tickValues=function(gr){return arguments.length?(Ct=gr,jt):Ct},jt.tickFormat=function(gr){return arguments.length?(nt=gr,jt):nt},jt.tickSize=function(gr){var yr=arguments.length;return yr?(Te=+gr,Ne=+arguments[yr-1],jt):Te},jt.innerTickSize=function(gr){return arguments.length?(Te=+gr,jt):Te},jt.outerTickSize=function(gr){return arguments.length?(Ne=+gr,jt):Ne},jt.tickPadding=function(gr){return arguments.length?(He=+gr,jt):He},jt.tickSubdivide=function(){return arguments.length&&jt},jt};var Nl="bottom",Lu={top:1,right:1,bottom:1,left:1};function ou(X,se,Te){X.attr("transform",function(Ne){var He=se(Ne);return"translate("+(isFinite(He)?He:Te(Ne))+",0)"})}function $s(X,se,Te){X.attr("transform",function(Ne){var He=se(Ne);return"translate(0,"+(isFinite(He)?He:Te(Ne))+")"})}e.svg.brush=function(){var X=ke(yr,"brushstart","brush","brushend"),se=null,Te=null,Ne=[0,0],He=[0,0],Ye,Ct,nt=!0,jt=!0,gr=dc[0];function yr(Xr){Xr.each(function(){var ni=e.select(this).style("pointer-events","all").style("-webkit-tap-highlight-color","rgba(0,0,0,0)").on("mousedown.brush",bi).on("touchstart.brush",bi),gi=ni.selectAll(".background").data([0]);gi.enter().append("rect").attr("class","background").style("visibility","hidden").style("cursor","crosshair"),ni.selectAll(".extent").data([0]).enter().append("rect").attr("class","extent").style("cursor","move");var Pi=ni.selectAll(".resize").data(gr,G);Pi.exit().remove(),Pi.enter().append("g").attr("class",function(Cn){return"resize "+Cn}).style("cursor",function(Cn){return Ql[Cn]}).append("rect").attr("x",function(Cn){return/[ew]$/.test(Cn)?-3:null}).attr("y",function(Cn){return/^[ns]/.test(Cn)?-3:null}).attr("width",6).attr("height",6).style("visibility","hidden"),Pi.style("display",yr.empty()?"none":null);var Ai=e.transition(ni),ti=e.transition(gi),Rn;se&&(Rn=Tn(se),ti.attr("x",Rn[0]).attr("width",Rn[1]-Rn[0]),qr(Ai)),Te&&(Rn=Tn(Te),ti.attr("y",Rn[0]).attr("height",Rn[1]-Rn[0]),_i(Ai)),Gr(Ai)})}yr.event=function(Xr){Xr.each(function(){var ni=X.of(this,arguments),gi={x:Ne,y:He,i:Ye,j:Ct},Pi=this.__chart__||gi;this.__chart__=gi,Bo?e.select(this).transition().each("start.brush",function(){Ye=Pi.i,Ct=Pi.j,Ne=Pi.x,He=Pi.y,ni({type:"brushstart"})}).tween("brush:brush",function(){var Ai=Gu(Ne,gi.x),ti=Gu(He,gi.y);return Ye=Ct=null,function(Rn){Ne=gi.x=Ai(Rn),He=gi.y=ti(Rn),ni({type:"brush",mode:"resize"})}}).each("end.brush",function(){Ye=gi.i,Ct=gi.j,ni({type:"brush",mode:"resize"}),ni({type:"brushend"})}):(ni({type:"brushstart"}),ni({type:"brush",mode:"resize"}),ni({type:"brushend"}))})};function Gr(Xr){Xr.selectAll(".resize").attr("transform",function(ni){return"translate("+Ne[+/e$/.test(ni)]+","+He[+/^s/.test(ni)]+")"})}function qr(Xr){Xr.select(".extent").attr("x",Ne[0]),Xr.selectAll(".extent,.n>rect,.s>rect").attr("width",Ne[1]-Ne[0])}function _i(Xr){Xr.select(".extent").attr("y",He[0]),Xr.selectAll(".extent,.e>rect,.w>rect").attr("height",He[1]-He[0])}function bi(){var Xr=this,ni=e.select(e.event.target),gi=X.of(Xr,arguments),Pi=e.select(Xr),Ai=ni.datum(),ti=!/^(n|s)$/.test(Ai)&&se,Rn=!/^(e|w)$/.test(Ai)&&Te,Cn=ni.classed("extent"),Nn=Wr(Xr),ia,Ea=e.mouse(Xr),Ia,yo=e.select(a(Xr)).on("keydown.brush",Rs).on("keyup.brush",Es);if(e.event.changedTouches?yo.on("touchmove.brush",Zs).on("touchend.brush",Ha):yo.on("mousemove.brush",Zs).on("mouseup.brush",Ha),Pi.interrupt().selectAll("*").interrupt(),Cn)Ea[0]=Ne[0]-Ea[0],Ea[1]=He[0]-Ea[1];else if(Ai){var Da=+/w$/.test(Ai),go=+/^n/.test(Ai);Ia=[Ne[1-Da]-Ea[0],He[1-go]-Ea[1]],Ea[0]=Ne[Da],Ea[1]=He[go]}else e.event.altKey&&(ia=Ea.slice());Pi.style("pointer-events","none").selectAll(".resize").style("display",null),e.select("body").style("cursor",ni.style("cursor")),gi({type:"brushstart"}),Zs();function Rs(){e.event.keyCode==32&&(Cn||(ia=null,Ea[0]-=Ne[1],Ea[1]-=He[1],Cn=2),_e())}function Es(){e.event.keyCode==32&&Cn==2&&(Ea[0]+=Ne[1],Ea[1]+=He[1],Cn=0,_e())}function Zs(){var Fo=e.mouse(Xr),Uo=!1;Ia&&(Fo[0]+=Ia[0],Fo[1]+=Ia[1]),Cn||(e.event.altKey?(ia||(ia=[(Ne[0]+Ne[1])/2,(He[0]+He[1])/2]),Ea[0]=Ne[+(Fo[0]<ia[0])],Ea[1]=He[+(Fo[1]<ia[1])]):ia=null),ti&&Gn(Fo,se,0)&&(qr(Pi),Uo=!0),Rn&&Gn(Fo,Te,1)&&(_i(Pi),Uo=!0),Uo&&(Gr(Pi),gi({type:"brush",mode:Cn?"move":"resize"}))}function Gn(Fo,Uo,Qs){var Sl=Tn(Uo),bu=Sl[0],vl=Sl[1],Sc=Ea[Qs],Ee=Qs?He:Ne,xt=Ee[1]-Ee[0],zt,Ir;if(Cn&&(bu-=Sc,vl-=xt+Sc),zt=(Qs?jt:nt)?Math.max(bu,Math.min(vl,Fo[Qs])):Fo[Qs],Cn?Ir=(zt+=Sc)+xt:(ia&&(Sc=Math.max(bu,Math.min(vl,2*ia[Qs]-zt))),Sc<zt?(Ir=zt,zt=Sc):Ir=Sc),Ee[0]!=zt||Ee[1]!=Ir)return Qs?Ct=null:Ye=null,Ee[0]=zt,Ee[1]=Ir,!0}function Ha(){Zs(),Pi.style("pointer-events","all").selectAll(".resize").style("display",yr.empty()?"none":null),e.select("body").style("cursor",null),yo.on("mousemove.brush",null).on("mouseup.brush",null).on("touchmove.brush",null).on("touchend.brush",null).on("keydown.brush",null).on("keyup.brush",null),Nn(),gi({type:"brushend"})}}return yr.x=function(Xr){return arguments.length?(se=Xr,gr=dc[!se<<1|!Te],yr):se},yr.y=function(Xr){return arguments.length?(Te=Xr,gr=dc[!se<<1|!Te],yr):Te},yr.clamp=function(Xr){return arguments.length?(se&&Te?(nt=!!Xr[0],jt=!!Xr[1]):se?nt=!!Xr:Te&&(jt=!!Xr),yr):se&&Te?[nt,jt]:se?nt:Te?jt:null},yr.extent=function(Xr){var ni,gi,Pi,Ai,ti;return arguments.length?(se&&(ni=Xr[0],gi=Xr[1],Te&&(ni=ni[0],gi=gi[0]),Ye=[ni,gi],se.invert&&(ni=se(ni),gi=se(gi)),gi<ni&&(ti=ni,ni=gi,gi=ti),(ni!=Ne[0]||gi!=Ne[1])&&(Ne=[ni,gi])),Te&&(Pi=Xr[0],Ai=Xr[1],se&&(Pi=Pi[1],Ai=Ai[1]),Ct=[Pi,Ai],Te.invert&&(Pi=Te(Pi),Ai=Te(Ai)),Ai<Pi&&(ti=Pi,Pi=Ai,Ai=ti),(Pi!=He[0]||Ai!=He[1])&&(He=[Pi,Ai])),yr):(se&&(Ye?(ni=Ye[0],gi=Ye[1]):(ni=Ne[0],gi=Ne[1],se.invert&&(ni=se.invert(ni),gi=se.invert(gi)),gi<ni&&(ti=ni,ni=gi,gi=ti))),Te&&(Ct?(Pi=Ct[0],Ai=Ct[1]):(Pi=He[0],Ai=He[1],Te.invert&&(Pi=Te.invert(Pi),Ai=Te.invert(Ai)),Ai<Pi&&(ti=Pi,Pi=Ai,Ai=ti))),se&&Te?[[ni,Pi],[gi,Ai]]:se?[ni,gi]:Te&&[Pi,Ai])},yr.clear=function(){return yr.empty()||(Ne=[0,0],He=[0,0],Ye=Ct=null),yr},yr.empty=function(){return!!se&&Ne[0]==Ne[1]||!!Te&&He[0]==He[1]},e.rebind(yr,X,"on")};var Ql={n:"ns-resize",e:"ew-resize",s:"ns-resize",w:"ew-resize",nw:"nwse-resize",ne:"nesw-resize",se:"nwse-resize",sw:"nesw-resize"},dc=[["n","e","s","w","nw","ne","se","sw"],["e","w"],["n","s"],[]];e.text=fn(function(X){return X.responseText}),e.json=function(X,se){return Sn(X,"application/json",Tl,se)};function Tl(X){return JSON.parse(X.responseText)}e.html=function(X,se){return Sn(X,"text/html",Al,se)};function Al(X){var se=n.createRange();return se.selectNode(n.body),se.createContextualFragment(X.responseText)}e.xml=fn(function(X){return X.responseXML}),typeof l6=="object"&&l6.exports?l6.exports=e:this.d3=e}).apply(self)});var gO=ye((u6,pee)=>{(function(e,t){typeof u6=="object"&&typeof pee!="undefined"?t(u6):(e=e||self,t(e.d3=e.d3||{}))})(u6,function(e){"use strict";var t=new Date,r=new Date;function n(Qe,Et,er,Ut){function Ft(bt){return Qe(bt=arguments.length===0?new Date:new Date(+bt)),bt}return Ft.floor=function(bt){return Qe(bt=new Date(+bt)),bt},Ft.ceil=function(bt){return Qe(bt=new Date(bt-1)),Et(bt,1),Qe(bt),bt},Ft.round=function(bt){var yt=Ft(bt),Yt=Ft.ceil(bt);return bt-yt<Yt-bt?yt:Yt},Ft.offset=function(bt,yt){return Et(bt=new Date(+bt),yt==null?1:Math.floor(yt)),bt},Ft.range=function(bt,yt,Yt){var lr=[],Tr;if(bt=Ft.ceil(bt),Yt=Yt==null?1:Math.floor(Yt),!(bt<yt)||!(Yt>0))return lr;do lr.push(Tr=new Date(+bt)),Et(bt,Yt),Qe(bt);while(Tr<bt&&bt<yt);return lr},Ft.filter=function(bt){return n(function(yt){if(yt>=yt)for(;Qe(yt),!bt(yt);)yt.setTime(yt-1)},function(yt,Yt){if(yt>=yt)if(Yt<0)for(;++Yt<=0;)for(;Et(yt,-1),!bt(yt););else for(;--Yt>=0;)for(;Et(yt,1),!bt(yt););})},er&&(Ft.count=function(bt,yt){return t.setTime(+bt),r.setTime(+yt),Qe(t),Qe(r),Math.floor(er(t,r))},Ft.every=function(bt){return bt=Math.floor(bt),!isFinite(bt)||!(bt>0)?null:bt>1?Ft.filter(Ut?function(yt){return Ut(yt)%bt===0}:function(yt){return Ft.count(0,yt)%bt===0}):Ft}),Ft}var i=n(function(){},function(Qe,Et){Qe.setTime(+Qe+Et)},function(Qe,Et){return Et-Qe});i.every=function(Qe){return Qe=Math.floor(Qe),!isFinite(Qe)||!(Qe>0)?null:Qe>1?n(function(Et){Et.setTime(Math.floor(Et/Qe)*Qe)},function(Et,er){Et.setTime(+Et+er*Qe)},function(Et,er){return(er-Et)/Qe}):i};var a=i.range,o=1e3,s=6e4,l=36e5,u=864e5,c=6048e5,f=n(function(Qe){Qe.setTime(Qe-Qe.getMilliseconds())},function(Qe,Et){Qe.setTime(+Qe+Et*o)},function(Qe,Et){return(Et-Qe)/o},function(Qe){return Qe.getUTCSeconds()}),h=f.range,d=n(function(Qe){Qe.setTime(Qe-Qe.getMilliseconds()-Qe.getSeconds()*o)},function(Qe,Et){Qe.setTime(+Qe+Et*s)},function(Qe,Et){return(Et-Qe)/s},function(Qe){return Qe.getMinutes()}),v=d.range,x=n(function(Qe){Qe.setTime(Qe-Qe.getMilliseconds()-Qe.getSeconds()*o-Qe.getMinutes()*s)},function(Qe,Et){Qe.setTime(+Qe+Et*l)},function(Qe,Et){return(Et-Qe)/l},function(Qe){return Qe.getHours()}),b=x.range,p=n(function(Qe){Qe.setHours(0,0,0,0)},function(Qe,Et){Qe.setDate(Qe.getDate()+Et)},function(Qe,Et){return(Et-Qe-(Et.getTimezoneOffset()-Qe.getTimezoneOffset())*s)/u},function(Qe){return Qe.getDate()-1}),C=p.range;function E(Qe){return n(function(Et){Et.setDate(Et.getDate()-(Et.getDay()+7-Qe)%7),Et.setHours(0,0,0,0)},function(Et,er){Et.setDate(Et.getDate()+er*7)},function(Et,er){return(er-Et-(er.getTimezoneOffset()-Et.getTimezoneOffset())*s)/c})}var A=E(0),L=E(1),_=E(2),k=E(3),M=E(4),g=E(5),P=E(6),T=A.range,z=L.range,O=_.range,V=k.range,G=M.range,Z=g.range,H=P.range,N=n(function(Qe){Qe.setDate(1),Qe.setHours(0,0,0,0)},function(Qe,Et){Qe.setMonth(Qe.getMonth()+Et)},function(Qe,Et){return Et.getMonth()-Qe.getMonth()+(Et.getFullYear()-Qe.getFullYear())*12},function(Qe){return Qe.getMonth()}),j=N.range,re=n(function(Qe){Qe.setMonth(0,1),Qe.setHours(0,0,0,0)},function(Qe,Et){Qe.setFullYear(Qe.getFullYear()+Et)},function(Qe,Et){return Et.getFullYear()-Qe.getFullYear()},function(Qe){return Qe.getFullYear()});re.every=function(Qe){return!isFinite(Qe=Math.floor(Qe))||!(Qe>0)?null:n(function(Et){Et.setFullYear(Math.floor(Et.getFullYear()/Qe)*Qe),Et.setMonth(0,1),Et.setHours(0,0,0,0)},function(Et,er){Et.setFullYear(Et.getFullYear()+er*Qe)})};var oe=re.range,_e=n(function(Qe){Qe.setUTCSeconds(0,0)},function(Qe,Et){Qe.setTime(+Qe+Et*s)},function(Qe,Et){return(Et-Qe)/s},function(Qe){return Qe.getUTCMinutes()}),Me=_e.range,ke=n(function(Qe){Qe.setUTCMinutes(0,0,0)},function(Qe,Et){Qe.setTime(+Qe+Et*l)},function(Qe,Et){return(Et-Qe)/l},function(Qe){return Qe.getUTCHours()}),me=ke.range,ie=n(function(Qe){Qe.setUTCHours(0,0,0,0)},function(Qe,Et){Qe.setUTCDate(Qe.getUTCDate()+Et)},function(Qe,Et){return(Et-Qe)/u},function(Qe){return Qe.getUTCDate()-1}),Se=ie.range;function Le(Qe){return n(function(Et){Et.setUTCDate(Et.getUTCDate()-(Et.getUTCDay()+7-Qe)%7),Et.setUTCHours(0,0,0,0)},function(Et,er){Et.setUTCDate(Et.getUTCDate()+er*7)},function(Et,er){return(er-Et)/c})}var Ae=Le(0),De=Le(1),Pe=Le(2),ge=Le(3),Fe=Le(4),ce=Le(5),Ze=Le(6),ct=Ae.range,pt=De.range,Wt=Pe.range,st=ge.range,lt=Fe.range,Gt=ce.range,Nt=Ze.range,$t=n(function(Qe){Qe.setUTCDate(1),Qe.setUTCHours(0,0,0,0)},function(Qe,Et){Qe.setUTCMonth(Qe.getUTCMonth()+Et)},function(Qe,Et){return Et.getUTCMonth()-Qe.getUTCMonth()+(Et.getUTCFullYear()-Qe.getUTCFullYear())*12},function(Qe){return Qe.getUTCMonth()}),sr=$t.range,wr=n(function(Qe){Qe.setUTCMonth(0,1),Qe.setUTCHours(0,0,0,0)},function(Qe,Et){Qe.setUTCFullYear(Qe.getUTCFullYear()+Et)},function(Qe,Et){return Et.getUTCFullYear()-Qe.getUTCFullYear()},function(Qe){return Qe.getUTCFullYear()});wr.every=function(Qe){return!isFinite(Qe=Math.floor(Qe))||!(Qe>0)?null:n(function(Et){Et.setUTCFullYear(Math.floor(Et.getUTCFullYear()/Qe)*Qe),Et.setUTCMonth(0,1),Et.setUTCHours(0,0,0,0)},function(Et,er){Et.setUTCFullYear(Et.getUTCFullYear()+er*Qe)})};var ur=wr.range;e.timeDay=p,e.timeDays=C,e.timeFriday=g,e.timeFridays=Z,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=z,e.timeMonth=N,e.timeMonths=j,e.timeSaturday=P,e.timeSaturdays=H,e.timeSecond=f,e.timeSeconds=h,e.timeSunday=A,e.timeSundays=T,e.timeThursday=M,e.timeThursdays=G,e.timeTuesday=_,e.timeTuesdays=O,e.timeWednesday=k,e.timeWednesdays=V,e.timeWeek=A,e.timeWeeks=T,e.timeYear=re,e.timeYears=oe,e.utcDay=ie,e.utcDays=Se,e.utcFriday=ce,e.utcFridays=Gt,e.utcHour=ke,e.utcHours=me,e.utcMillisecond=i,e.utcMilliseconds=a,e.utcMinute=_e,e.utcMinutes=Me,e.utcMonday=De,e.utcMondays=pt,e.utcMonth=$t,e.utcMonths=sr,e.utcSaturday=Ze,e.utcSaturdays=Nt,e.utcSecond=f,e.utcSeconds=h,e.utcSunday=Ae,e.utcSundays=ct,e.utcThursday=Fe,e.utcThursdays=lt,e.utcTuesday=Pe,e.utcTuesdays=Wt,e.utcWednesday=ge,e.utcWednesdays=st,e.utcWeek=Ae,e.utcWeeks=ct,e.utcYear=wr,e.utcYears=ur,Object.defineProperty(e,"__esModule",{value:!0})})});var e3=ye((c6,gee)=>{(function(e,t){typeof c6=="object"&&typeof gee!="undefined"?t(c6,gO()):(e=e||self,t(e.d3=e.d3||{},e.d3))})(c6,function(e,t){"use strict";function r(Ge){if(0<=Ge.y&&Ge.y<100){var Je=new Date(-1,Ge.m,Ge.d,Ge.H,Ge.M,Ge.S,Ge.L);return Je.setFullYear(Ge.y),Je}return new Date(Ge.y,Ge.m,Ge.d,Ge.H,Ge.M,Ge.S,Ge.L)}function n(Ge){if(0<=Ge.y&&Ge.y<100){var Je=new Date(Date.UTC(-1,Ge.m,Ge.d,Ge.H,Ge.M,Ge.S,Ge.L));return Je.setUTCFullYear(Ge.y),Je}return new Date(Date.UTC(Ge.y,Ge.m,Ge.d,Ge.H,Ge.M,Ge.S,Ge.L))}function i(Ge,Je,je){return{y:Ge,m:Je,d:je,H:0,M:0,S:0,L:0}}function a(Ge){var Je=Ge.dateTime,je=Ge.date,$e=Ge.time,wt=Ge.periods,Ie=Ge.days,xe=Ge.shortDays,Ce=Ge.months,vt=Ge.shortMonths,nr=h(wt),ir=d(wt),pr=h(Ie),oi=d(Ie),di=h(xe),Jr=d(xe),fi=h(Ce),Hi=d(Ce),Pn=h(vt),wn=d(vt),pn={a:Ji,A:en,b:cn,B:yn,c:null,d:N,e:N,f:Me,H:j,I:re,j:oe,L:_e,m:ke,M:me,p:Mn,q:Ba,Q:yt,s:Yt,S:ie,u:Se,U:Le,V:Ae,w:De,W:Pe,x:null,X:null,y:ge,Y:Fe,Z:ce,"%":bt},Vn={a:la,A:ma,b:Wa,B:Fa,c:null,d:Ze,e:Ze,f:lt,H:ct,I:pt,j:Wt,L:st,m:Gt,M:Nt,p:Wo,q:da,Q:yt,s:Yt,S:$t,u:sr,U:wr,V:ur,w:Qe,W:Et,x:null,X:null,y:er,Y:Ut,Z:Ft,"%":bt},kn={a:tr,A:ar,b:Er,B:Zr,c:ri,d:M,e:M,f:V,H:P,I:P,j:g,L:O,m:k,M:T,p:_t,q:_,Q:Z,s:H,S:z,u:x,U:b,V:p,w:v,W:C,x:$r,X:zi,y:A,Y:E,Z:L,"%":G};pn.x=ea(je,pn),pn.X=ea($e,pn),pn.c=ea(Je,pn),Vn.x=ea(je,Vn),Vn.X=ea($e,Vn),Vn.c=ea(Je,Vn);function ea(Wn,Ga){return function(vo){var jn=[],St=-1,Cr=0,Qr=Wn.length,pi,fn,Sn;for(vo instanceof Date||(vo=new Date(+vo));++St<Qr;)Wn.charCodeAt(St)===37&&(jn.push(Wn.slice(Cr,St)),(fn=o[pi=Wn.charAt(++St)])!=null?pi=Wn.charAt(++St):fn=pi==="e"?" ":"0",(Sn=Ga[pi])&&(pi=Sn(vo,fn)),jn.push(pi),Cr=St+1);return jn.push(Wn.slice(Cr,St)),jn.join("")}}function ua(Wn,Ga){return function(vo){var jn=i(1900,void 0,1),St=Vt(jn,Wn,vo+="",0),Cr,Qr;if(St!=vo.length)return null;if("Q"in jn)return new Date(jn.Q);if("s"in jn)return new Date(jn.s*1e3+("L"in jn?jn.L:0));if(Ga&&!("Z"in jn)&&(jn.Z=0),"p"in jn&&(jn.H=jn.H%12+jn.p*12),jn.m===void 0&&(jn.m="q"in jn?jn.q:0),"V"in jn){if(jn.V<1||jn.V>53)return null;"w"in jn||(jn.w=1),"Z"in jn?(Cr=n(i(jn.y,0,1)),Qr=Cr.getUTCDay(),Cr=Qr>4||Qr===0?t.utcMonday.ceil(Cr):t.utcMonday(Cr),Cr=t.utcDay.offset(Cr,(jn.V-1)*7),jn.y=Cr.getUTCFullYear(),jn.m=Cr.getUTCMonth(),jn.d=Cr.getUTCDate()+(jn.w+6)%7):(Cr=r(i(jn.y,0,1)),Qr=Cr.getDay(),Cr=Qr>4||Qr===0?t.timeMonday.ceil(Cr):t.timeMonday(Cr),Cr=t.timeDay.offset(Cr,(jn.V-1)*7),jn.y=Cr.getFullYear(),jn.m=Cr.getMonth(),jn.d=Cr.getDate()+(jn.w+6)%7)}else("W"in jn||"U"in jn)&&("w"in jn||(jn.w="u"in jn?jn.u%7:"W"in jn?1:0),Qr="Z"in jn?n(i(jn.y,0,1)).getUTCDay():r(i(jn.y,0,1)).getDay(),jn.m=0,jn.d="W"in jn?(jn.w+6)%7+jn.W*7-(Qr+5)%7:jn.w+jn.U*7-(Qr+6)%7);return"Z"in jn?(jn.H+=jn.Z/100|0,jn.M+=jn.Z%100,n(jn)):r(jn)}}function Vt(Wn,Ga,vo,jn){for(var St=0,Cr=Ga.length,Qr=vo.length,pi,fn;St<Cr;){if(jn>=Qr)return-1;if(pi=Ga.charCodeAt(St++),pi===37){if(pi=Ga.charAt(St++),fn=kn[pi in o?Ga.charAt(St++):pi],!fn||(jn=fn(Wn,vo,jn))<0)return-1}else if(pi!=vo.charCodeAt(jn++))return-1}return jn}function _t(Wn,Ga,vo){var jn=nr.exec(Ga.slice(vo));return jn?(Wn.p=ir[jn[0].toLowerCase()],vo+jn[0].length):-1}function tr(Wn,Ga,vo){var jn=di.exec(Ga.slice(vo));return jn?(Wn.w=Jr[jn[0].toLowerCase()],vo+jn[0].length):-1}function ar(Wn,Ga,vo){var jn=pr.exec(Ga.slice(vo));return jn?(Wn.w=oi[jn[0].toLowerCase()],vo+jn[0].length):-1}function Er(Wn,Ga,vo){var jn=Pn.exec(Ga.slice(vo));return jn?(Wn.m=wn[jn[0].toLowerCase()],vo+jn[0].length):-1}function Zr(Wn,Ga,vo){var jn=fi.exec(Ga.slice(vo));return jn?(Wn.m=Hi[jn[0].toLowerCase()],vo+jn[0].length):-1}function ri(Wn,Ga,vo){return Vt(Wn,Je,Ga,vo)}function $r(Wn,Ga,vo){return Vt(Wn,je,Ga,vo)}function zi(Wn,Ga,vo){return Vt(Wn,$e,Ga,vo)}function Ji(Wn){return xe[Wn.getDay()]}function en(Wn){return Ie[Wn.getDay()]}function cn(Wn){return vt[Wn.getMonth()]}function yn(Wn){return Ce[Wn.getMonth()]}function Mn(Wn){return wt[+(Wn.getHours()>=12)]}function Ba(Wn){return 1+~~(Wn.getMonth()/3)}function la(Wn){return xe[Wn.getUTCDay()]}function ma(Wn){return Ie[Wn.getUTCDay()]}function Wa(Wn){return vt[Wn.getUTCMonth()]}function Fa(Wn){return Ce[Wn.getUTCMonth()]}function Wo(Wn){return wt[+(Wn.getUTCHours()>=12)]}function da(Wn){return 1+~~(Wn.getUTCMonth()/3)}return{format:function(Wn){var Ga=ea(Wn+="",pn);return Ga.toString=function(){return Wn},Ga},parse:function(Wn){var Ga=ua(Wn+="",!1);return Ga.toString=function(){return Wn},Ga},utcFormat:function(Wn){var Ga=ea(Wn+="",Vn);return Ga.toString=function(){return Wn},Ga},utcParse:function(Wn){var Ga=ua(Wn+="",!0);return Ga.toString=function(){return Wn},Ga}}}var o={"-":"",_:" ",0:"0"},s=/^\s*\d+/,l=/^%/,u=/[\\^$*+?|[\]().{}]/g;function c(Ge,Je,je){var $e=Ge<0?"-":"",wt=($e?-Ge:Ge)+"",Ie=wt.length;return $e+(Ie<je?new Array(je-Ie+1).join(Je)+wt:wt)}function f(Ge){return Ge.replace(u,"\\$&")}function h(Ge){return new RegExp("^(?:"+Ge.map(f).join("|")+")","i")}function d(Ge){for(var Je={},je=-1,$e=Ge.length;++je<$e;)Je[Ge[je].toLowerCase()]=je;return Je}function v(Ge,Je,je){var $e=s.exec(Je.slice(je,je+1));return $e?(Ge.w=+$e[0],je+$e[0].length):-1}function x(Ge,Je,je){var $e=s.exec(Je.slice(je,je+1));return $e?(Ge.u=+$e[0],je+$e[0].length):-1}function b(Ge,Je,je){var $e=s.exec(Je.slice(je,je+2));return $e?(Ge.U=+$e[0],je+$e[0].length):-1}function p(Ge,Je,je){var $e=s.exec(Je.slice(je,je+2));return $e?(Ge.V=+$e[0],je+$e[0].length):-1}function C(Ge,Je,je){var $e=s.exec(Je.slice(je,je+2));return $e?(Ge.W=+$e[0],je+$e[0].length):-1}function E(Ge,Je,je){var $e=s.exec(Je.slice(je,je+4));return $e?(Ge.y=+$e[0],je+$e[0].length):-1}function A(Ge,Je,je){var $e=s.exec(Je.slice(je,je+2));return $e?(Ge.y=+$e[0]+(+$e[0]>68?1900:2e3),je+$e[0].length):-1}function L(Ge,Je,je){var $e=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(Je.slice(je,je+6));return $e?(Ge.Z=$e[1]?0:-($e[2]+($e[3]||"00")),je+$e[0].length):-1}function _(Ge,Je,je){var $e=s.exec(Je.slice(je,je+1));return $e?(Ge.q=$e[0]*3-3,je+$e[0].length):-1}function k(Ge,Je,je){var $e=s.exec(Je.slice(je,je+2));return $e?(Ge.m=$e[0]-1,je+$e[0].length):-1}function M(Ge,Je,je){var $e=s.exec(Je.slice(je,je+2));return $e?(Ge.d=+$e[0],je+$e[0].length):-1}function g(Ge,Je,je){var $e=s.exec(Je.slice(je,je+3));return $e?(Ge.m=0,Ge.d=+$e[0],je+$e[0].length):-1}function P(Ge,Je,je){var $e=s.exec(Je.slice(je,je+2));return $e?(Ge.H=+$e[0],je+$e[0].length):-1}function T(Ge,Je,je){var $e=s.exec(Je.slice(je,je+2));return $e?(Ge.M=+$e[0],je+$e[0].length):-1}function z(Ge,Je,je){var $e=s.exec(Je.slice(je,je+2));return $e?(Ge.S=+$e[0],je+$e[0].length):-1}function O(Ge,Je,je){var $e=s.exec(Je.slice(je,je+3));return $e?(Ge.L=+$e[0],je+$e[0].length):-1}function V(Ge,Je,je){var $e=s.exec(Je.slice(je,je+6));return $e?(Ge.L=Math.floor($e[0]/1e3),je+$e[0].length):-1}function G(Ge,Je,je){var $e=l.exec(Je.slice(je,je+1));return $e?je+$e[0].length:-1}function Z(Ge,Je,je){var $e=s.exec(Je.slice(je));return $e?(Ge.Q=+$e[0],je+$e[0].length):-1}function H(Ge,Je,je){var $e=s.exec(Je.slice(je));return $e?(Ge.s=+$e[0],je+$e[0].length):-1}function N(Ge,Je){return c(Ge.getDate(),Je,2)}function j(Ge,Je){return c(Ge.getHours(),Je,2)}function re(Ge,Je){return c(Ge.getHours()%12||12,Je,2)}function oe(Ge,Je){return c(1+t.timeDay.count(t.timeYear(Ge),Ge),Je,3)}function _e(Ge,Je){return c(Ge.getMilliseconds(),Je,3)}function Me(Ge,Je){return _e(Ge,Je)+"000"}function ke(Ge,Je){return c(Ge.getMonth()+1,Je,2)}function me(Ge,Je){return c(Ge.getMinutes(),Je,2)}function ie(Ge,Je){return c(Ge.getSeconds(),Je,2)}function Se(Ge){var Je=Ge.getDay();return Je===0?7:Je}function Le(Ge,Je){return c(t.timeSunday.count(t.timeYear(Ge)-1,Ge),Je,2)}function Ae(Ge,Je){var je=Ge.getDay();return Ge=je>=4||je===0?t.timeThursday(Ge):t.timeThursday.ceil(Ge),c(t.timeThursday.count(t.timeYear(Ge),Ge)+(t.timeYear(Ge).getDay()===4),Je,2)}function De(Ge){return Ge.getDay()}function Pe(Ge,Je){return c(t.timeMonday.count(t.timeYear(Ge)-1,Ge),Je,2)}function ge(Ge,Je){return c(Ge.getFullYear()%100,Je,2)}function Fe(Ge,Je){return c(Ge.getFullYear()%1e4,Je,4)}function ce(Ge){var Je=Ge.getTimezoneOffset();return(Je>0?"-":(Je*=-1,"+"))+c(Je/60|0,"0",2)+c(Je%60,"0",2)}function Ze(Ge,Je){return c(Ge.getUTCDate(),Je,2)}function ct(Ge,Je){return c(Ge.getUTCHours(),Je,2)}function pt(Ge,Je){return c(Ge.getUTCHours()%12||12,Je,2)}function Wt(Ge,Je){return c(1+t.utcDay.count(t.utcYear(Ge),Ge),Je,3)}function st(Ge,Je){return c(Ge.getUTCMilliseconds(),Je,3)}function lt(Ge,Je){return st(Ge,Je)+"000"}function Gt(Ge,Je){return c(Ge.getUTCMonth()+1,Je,2)}function Nt(Ge,Je){return c(Ge.getUTCMinutes(),Je,2)}function $t(Ge,Je){return c(Ge.getUTCSeconds(),Je,2)}function sr(Ge){var Je=Ge.getUTCDay();return Je===0?7:Je}function wr(Ge,Je){return c(t.utcSunday.count(t.utcYear(Ge)-1,Ge),Je,2)}function ur(Ge,Je){var je=Ge.getUTCDay();return Ge=je>=4||je===0?t.utcThursday(Ge):t.utcThursday.ceil(Ge),c(t.utcThursday.count(t.utcYear(Ge),Ge)+(t.utcYear(Ge).getUTCDay()===4),Je,2)}function Qe(Ge){return Ge.getUTCDay()}function Et(Ge,Je){return c(t.utcMonday.count(t.utcYear(Ge)-1,Ge),Je,2)}function er(Ge,Je){return c(Ge.getUTCFullYear()%100,Je,2)}function Ut(Ge,Je){return c(Ge.getUTCFullYear()%1e4,Je,4)}function Ft(){return"+0000"}function bt(){return"%"}function yt(Ge){return+Ge}function Yt(Ge){return Math.floor(+Ge/1e3)}var lr;Tr({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});function Tr(Ge){return lr=a(Ge),e.timeFormat=lr.format,e.timeParse=lr.parse,e.utcFormat=lr.utcFormat,e.utcParse=lr.utcParse,lr}var Rr="%Y-%m-%dT%H:%M:%S.%LZ";function ei(Ge){return Ge.toISOString()}var Wr=Date.prototype.toISOString?ei:e.utcFormat(Rr);function Ur(Ge){var Je=new Date(Ge);return isNaN(Je)?null:Je}var dt=+new Date("2000-01-01T00:00:00.000Z")?Ur:e.utcParse(Rr);e.isoFormat=Wr,e.isoParse=dt,e.timeFormatDefaultLocale=Tr,e.timeFormatLocale=a,Object.defineProperty(e,"__esModule",{value:!0})})});var mO=ye((f6,mee)=>{(function(e,t){typeof f6=="object"&&typeof mee!="undefined"?t(f6):(e=typeof globalThis!="undefined"?globalThis:e||self,t(e.d3=e.d3||{}))})(f6,function(e){"use strict";function t(k){return Math.abs(k=Math.round(k))>=1e21?k.toLocaleString("en").replace(/,/g,""):k.toString(10)}function r(k,M){if((g=(k=M?k.toExponential(M-1):k.toExponential()).indexOf("e"))<0)return null;var g,P=k.slice(0,g);return[P.length>1?P[0]+P.slice(2):P,+k.slice(g+1)]}function n(k){return k=r(Math.abs(k)),k?k[1]:NaN}function i(k,M){return function(g,P){for(var T=g.length,z=[],O=0,V=k[0],G=0;T>0&&V>0&&(G+V+1>P&&(V=Math.max(1,P-G)),z.push(g.substring(T-=V,T+V)),!((G+=V+1)>P));)V=k[O=(O+1)%k.length];return z.reverse().join(M)}}function a(k){return function(M){return M.replace(/[0-9]/g,function(g){return k[+g]})}}var o=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function s(k){if(!(M=o.exec(k)))throw new Error("invalid format: "+k);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(k){this.fill=k.fill===void 0?" ":k.fill+"",this.align=k.align===void 0?">":k.align+"",this.sign=k.sign===void 0?"-":k.sign+"",this.symbol=k.symbol===void 0?"":k.symbol+"",this.zero=!!k.zero,this.width=k.width===void 0?void 0:+k.width,this.comma=!!k.comma,this.precision=k.precision===void 0?void 0:+k.precision,this.trim=!!k.trim,this.type=k.type===void 0?"":k.type+""}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(k){e:for(var M=k.length,g=1,P=-1,T;g<M;++g)switch(k[g]){case".":P=T=g;break;case"0":P===0&&(P=g),T=g;break;default:if(!+k[g])break e;P>0&&(P=0);break}return P>0?k.slice(0,P)+k.slice(T+1):k}var c;function f(k,M){var g=r(k,M);if(!g)return k+"";var P=g[0],T=g[1],z=T-(c=Math.max(-8,Math.min(8,Math.floor(T/3)))*3)+1,O=P.length;return z===O?P:z>O?P+new Array(z-O+1).join("0"):z>0?P.slice(0,z)+"."+P.slice(z):"0."+new Array(1-z).join("0")+r(k,Math.max(0,M+z-1))[0]}function h(k,M){var g=r(k,M);if(!g)return k+"";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(k,M){return(k*100).toFixed(M)},b:function(k){return Math.round(k).toString(2)},c:function(k){return k+""},d:t,e:function(k,M){return k.toExponential(M)},f:function(k,M){return k.toFixed(M)},g:function(k,M){return k.toPrecision(M)},o:function(k){return Math.round(k).toString(8)},p:function(k,M){return h(k*100,M)},r:h,s:f,X:function(k){return Math.round(k).toString(16).toUpperCase()},x:function(k){return Math.round(k).toString(16)}};function v(k){return k}var x=Array.prototype.map,b=["y","z","a","f","p","n","\xB5","m","","k","M","G","T","P","E","Z","Y"];function p(k){var M=k.grouping===void 0||k.thousands===void 0?v:i(x.call(k.grouping,Number),k.thousands+""),g=k.currency===void 0?"":k.currency[0]+"",P=k.currency===void 0?"":k.currency[1]+"",T=k.decimal===void 0?".":k.decimal+"",z=k.numerals===void 0?v:a(x.call(k.numerals,String)),O=k.percent===void 0?"%":k.percent+"",V=k.minus===void 0?"-":k.minus+"",G=k.nan===void 0?"NaN":k.nan+"";function Z(N){N=s(N);var j=N.fill,re=N.align,oe=N.sign,_e=N.symbol,Me=N.zero,ke=N.width,me=N.comma,ie=N.precision,Se=N.trim,Le=N.type;Le==="n"?(me=!0,Le="g"):d[Le]||(ie===void 0&&(ie=12),Se=!0,Le="g"),(Me||j==="0"&&re==="=")&&(Me=!0,j="0",re="=");var Ae=_e==="$"?g:_e==="#"&&/[boxX]/.test(Le)?"0"+Le.toLowerCase():"",De=_e==="$"?P:/[%p]/.test(Le)?O:"",Pe=d[Le],ge=/[defgprs%]/.test(Le);ie=ie===void 0?6:/[gprs]/.test(Le)?Math.max(1,Math.min(21,ie)):Math.max(0,Math.min(20,ie));function Fe(ce){var Ze=Ae,ct=De,pt,Wt,st;if(Le==="c")ct=Pe(ce)+ct,ce="";else{ce=+ce;var lt=ce<0||1/ce<0;if(ce=isNaN(ce)?G:Pe(Math.abs(ce),ie),Se&&(ce=u(ce)),lt&&+ce==0&&oe!=="+"&&(lt=!1),Ze=(lt?oe==="("?oe:V:oe==="-"||oe==="("?"":oe)+Ze,ct=(Le==="s"?b[8+c/3]:"")+ct+(lt&&oe==="("?")":""),ge){for(pt=-1,Wt=ce.length;++pt<Wt;)if(st=ce.charCodeAt(pt),48>st||st>57){ct=(st===46?T+ce.slice(pt+1):ce.slice(pt))+ct,ce=ce.slice(0,pt);break}}}me&&!Me&&(ce=M(ce,1/0));var Gt=Ze.length+ce.length+ct.length,Nt=Gt<ke?new Array(ke-Gt+1).join(j):"";switch(me&&Me&&(ce=M(Nt+ce,Nt.length?ke-ct.length:1/0),Nt=""),re){case"<":ce=Ze+ce+ct+Nt;break;case"=":ce=Ze+Nt+ce+ct;break;case"^":ce=Nt.slice(0,Gt=Nt.length>>1)+Ze+ce+ct+Nt.slice(Gt);break;default:ce=Nt+Ze+ce+ct;break}return z(ce)}return Fe.toString=function(){return N+""},Fe}function H(N,j){var re=Z((N=s(N),N.type="f",N)),oe=Math.max(-8,Math.min(8,Math.floor(n(j)/3)))*3,_e=Math.pow(10,-oe),Me=b[8+oe/3];return function(ke){return re(_e*ke)+Me}}return{format:Z,formatPrefix:H}}var C;E({decimal:".",thousands:",",grouping:[3],currency:["$",""],minus:"-"});function E(k){return C=p(k),e.format=C.format,e.formatPrefix=C.formatPrefix,C}function A(k){return Math.max(0,-n(Math.abs(k)))}function L(k,M){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(n(M)/3)))*3-n(Math.abs(k)))}function _(k,M){return k=Math.abs(k),M=Math.abs(M)-k,Math.max(0,n(M)-n(k))+1}e.FormatSpecifier=l,e.formatDefaultLocale=E,e.formatLocale=p,e.formatSpecifier=s,e.precisionFixed=A,e.precisionPrefix=L,e.precisionRound=_,Object.defineProperty(e,"__esModule",{value:!0})})});var _ee=ye((atr,yee)=>{"use strict";yee.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 Eo=ye((otr,xee)=>{"use strict";var Yet=_ee();xee.exports=function(e){var t=typeof e;if(t==="string"){var r=e;if(e=+e,e===0&&Yet(r))return!1}else if(t!=="number")return!1;return e-e<1}});var hs=ye((str,bee)=>{"use strict";bee.exports={BADNUM:void 0,FP_SAFE:Number.MAX_VALUE*1e-4,ONEMAXYEAR:316224e5,ONEAVGYEAR:315576e5,ONEMINYEAR:31536e6,ONEMAXQUARTER:79488e5,ONEAVGQUARTER:78894e5,ONEMINQUARTER:76896e5,ONEMAXMONTH:26784e5,ONEAVGMONTH:26298e5,ONEMINMONTH:24192e5,ONEWEEK:6048e5,ONEDAY:864e5,ONEHOUR:36e5,ONEMIN:6e4,ONESEC:1e3,ONEMILLI:1,ONEMICROSEC:.001,EPOCHJD:24405875e-1,ALMOST_EQUAL:1-1e-6,LOG_CLIP:10,MINUS_SIGN:"\u2212"}});var yO=ye((h6,wee)=>{(function(e,t){typeof h6=="object"&&typeof wee!="undefined"?t(h6):(e=typeof globalThis!="undefined"?globalThis:e||self,t(e["base64-arraybuffer"]={}))})(h6,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((ltr,Tee)=>{"use strict";Tee.exports=function(t){return window&&window.process&&window.process.versions?Object.prototype.toString.call(t)==="[object Object]":Object.prototype.toString.call(t)==="[object Object]"&&Object.getPrototypeOf(t).hasOwnProperty("hasOwnProperty")}});var vv=ye(mg=>{"use strict";var Ket=yO().decode,Jet=gy(),_O=Array.isArray,$et=ArrayBuffer,Qet=DataView;function Aee(e){return $et.isView(e)&&!(e instanceof Qet)}mg.isTypedArray=Aee;function d6(e){return _O(e)||Aee(e)}mg.isArrayOrTypedArray=d6;function ett(e){return!d6(e[0])}mg.isArray1D=ett;mg.ensureArray=function(e,t){return _O(e)||(e=[]),e.length=t,e};var Ld={u1c:typeof Uint8ClampedArray=="undefined"?void 0:Uint8ClampedArray,i1:typeof Int8Array=="undefined"?void 0:Int8Array,u1:typeof Uint8Array=="undefined"?void 0:Uint8Array,i2:typeof Int16Array=="undefined"?void 0:Int16Array,u2:typeof Uint16Array=="undefined"?void 0:Uint16Array,i4:typeof Int32Array=="undefined"?void 0:Int32Array,u4:typeof Uint32Array=="undefined"?void 0:Uint32Array,f4:typeof Float32Array=="undefined"?void 0:Float32Array,f8:typeof Float64Array=="undefined"?void 0:Float64Array};Ld.uint8c=Ld.u1c;Ld.uint8=Ld.u1;Ld.int8=Ld.i1;Ld.uint16=Ld.u2;Ld.int16=Ld.i2;Ld.uint32=Ld.u4;Ld.int32=Ld.i4;Ld.float32=Ld.f4;Ld.float64=Ld.f8;function xO(e){return e.constructor===ArrayBuffer}mg.isArrayBuffer=xO;mg.decodeTypedArraySpec=function(e){var t=[],r=ttt(e),n=r.dtype,i=Ld[n];if(!i)throw new Error('Error in dtype: "'+n+'"');var a=i.BYTES_PER_ELEMENT,o=r.bdata;xO(o)||(o=Ket(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 Jet(e)&&e.hasOwnProperty("dtype")&&typeof e.dtype=="string"&&e.hasOwnProperty("bdata")&&(typeof e.bdata=="string"||xO(e.bdata))&&(e.shape===void 0||e.hasOwnProperty("shape")&&(typeof e.shape=="string"||typeof e.shape=="number"))};function ttt(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),_O(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 See(e,Math.max,0)};mg.minRowLength=function(e){return See(e,Math.min,1/0)};function See(e,t,r){if(d6(e))if(d6(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 CS=ye((ctr,Lee)=>{"use strict";var Mee=Eo(),wO=vv().isArrayOrTypedArray;Lee.exports=function(t,r){if(Mee(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"?att(t,r,n):{set:Cee(t,n,r),get:Eee(t,n),astr:r,parts:n,obj:t}};function Eee(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]=Eee(n[l],t.slice(s+1))(r),o[l]!==o[0]&&(a=!1);return a?o[0]:o}if(typeof i=="number"&&!wO(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 rtt=/(^|\.)args\[/;function bO(e,t){return e===void 0||e===null&&!t.match(rtt)}function Cee(e,t,r){return function(n){var i=e,a="",o=[[e,a]],s=bO(n,r),l,u;for(u=0;u<t.length-1;u++){if(l=t[u],typeof l=="number"&&!wO(i))throw"array index but container is not an array";if(l===-1){if(s=!ntt(i,t.slice(u+1),n,r),s)break;return}if(!kee(i,l,t[u+1],s))break;if(i=i[l],typeof i!="object"||i===null)throw"container is not an object";a=itt(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 itt(e,t){var r=t;return Mee(t)?r="["+t+"]":e&&(r="."+t),e+r}function ntt(e,t,r,n){var i=wO(r),a=!0,o=r,s=n.replace("-1",0),l=i?!1:bO(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=bO(o,s)),l&&(a=!1),kee(e,c,u,l)&&Cee(e[c],t,n.replace("-1",c))(o);return a}function kee(e,t,r,n){if(e[t]===void 0){if(n)return!1;typeof r=="number"?e[t]=[]:e[t]={}}return!0}function att(e,t,r){return{set:function(){throw"bad container"},get:function(){},astr:t,parts:r,obj:e}}});var Dee=ye((ftr,Ree)=>{"use strict";var t3=CS(),ott=/^\w*$/,stt=0,Pee=1,v6=2,Iee=3,ob=4;Ree.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=ott.test(i),f={set:function(h,d){var v=d===null?ob:stt;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|Iee,x=o.length,u[h]=x}else d!==(c?o[x][i]:t3(o[x],i).get())&&(v=v|v6);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]|Pee,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]|v6,f.set(h,null);if(c){for(a=d;a<o.length;a++)l[a]=l[a]|Iee;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]|v6|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]&Pee&&(v[h+"."+n]=o[d][n]),l[d]&v6&&(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 zee=ye((htr,Fee)=>{"use strict";var ltt=/^(.*)(\.[^\.\[\]]+|\[\d\])$/,utt=/^[^\.\[\]]+$/;Fee.exports=function(e,t){for(;t;){var r=e.match(ltt);if(r)e=r[1];else if(e.match(utt))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 p6=ye((dtr,Oee)=>{"use strict";var ctt=Eo();Oee.exports=function(t,r){if(t>0)return Math.log(t)/Math.LN10;var n=Math.log(Math.min(r[0],r[1]))/Math.LN10;return ctt(n)||(n=Math.log(Math.max(r[0],r[1]))/Math.LN10-6),n}});var Nee=ye((vtr,Bee)=>{"use strict";var qee=vv().isArrayOrTypedArray,kS=gy();Bee.exports=function e(t,r){for(var n in r){var i=r[n],a=t[n];if(a!==i)if(n.charAt(0)==="_"||typeof i=="function"){if(n in t)continue;t[n]=i}else if(qee(i)&&qee(a)&&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((ptr,Uee)=>{"use strict";function ftt(e,t){var r=e%t;return r<0?r+t:r}function htt(e,t){return Math.abs(e)>t/2?e-Math.round(e/t)*t:e}Uee.exports={mod:ftt,modHalf:htt}});var cd=ye((gtr,g6)=>{(function(e){var t=/^\s+/,r=/\s+$/,n=0,i=e.round,a=e.min,o=e.max,s=e.random;function l(ge,Fe){if(ge=ge||"",Fe=Fe||{},ge instanceof l)return ge;if(!(this instanceof l))return new l(ge,Fe);var ce=u(ge);this._originalInput=ge,this._r=ce.r,this._g=ce.g,this._b=ce.b,this._a=ce.a,this._roundA=i(100*this._a)/100,this._format=Fe.format||ce.format,this._gradientType=Fe.gradientType,this._r<1&&(this._r=i(this._r)),this._g<1&&(this._g=i(this._g)),this._b<1&&(this._b=i(this._b)),this._ok=ce.ok,this._tc_id=n++}l.prototype={isDark:function(){return this.getBrightness()<128},isLight:function(){return!this.isDark()},isValid:function(){return this._ok},getOriginalInput:function(){return this._originalInput},getFormat:function(){return this._format},getAlpha:function(){return this._a},getBrightness:function(){var ge=this.toRgb();return(ge.r*299+ge.g*587+ge.b*114)/1e3},getLuminance:function(){var ge=this.toRgb(),Fe,ce,Ze,ct,pt,Wt;return Fe=ge.r/255,ce=ge.g/255,Ze=ge.b/255,Fe<=.03928?ct=Fe/12.92:ct=e.pow((Fe+.055)/1.055,2.4),ce<=.03928?pt=ce/12.92:pt=e.pow((ce+.055)/1.055,2.4),Ze<=.03928?Wt=Ze/12.92:Wt=e.pow((Ze+.055)/1.055,2.4),.2126*ct+.7152*pt+.0722*Wt},setAlpha:function(ge){return this._a=N(ge),this._roundA=i(100*this._a)/100,this},toHsv:function(){var ge=d(this._r,this._g,this._b);return{h:ge.h*360,s:ge.s,v:ge.v,a:this._a}},toHsvString:function(){var ge=d(this._r,this._g,this._b),Fe=i(ge.h*360),ce=i(ge.s*100),Ze=i(ge.v*100);return this._a==1?"hsv("+Fe+", "+ce+"%, "+Ze+"%)":"hsva("+Fe+", "+ce+"%, "+Ze+"%, "+this._roundA+")"},toHsl:function(){var ge=f(this._r,this._g,this._b);return{h:ge.h*360,s:ge.s,l:ge.l,a:this._a}},toHslString:function(){var ge=f(this._r,this._g,this._b),Fe=i(ge.h*360),ce=i(ge.s*100),Ze=i(ge.l*100);return this._a==1?"hsl("+Fe+", "+ce+"%, "+Ze+"%)":"hsla("+Fe+", "+ce+"%, "+Ze+"%, "+this._roundA+")"},toHex:function(ge){return x(this._r,this._g,this._b,ge)},toHexString:function(ge){return"#"+this.toHex(ge)},toHex8:function(ge){return b(this._r,this._g,this._b,this._a,ge)},toHex8String:function(ge){return"#"+this.toHex8(ge)},toRgb:function(){return{r:i(this._r),g:i(this._g),b:i(this._b),a:this._a}},toRgbString:function(){return this._a==1?"rgb("+i(this._r)+", "+i(this._g)+", "+i(this._b)+")":"rgba("+i(this._r)+", "+i(this._g)+", "+i(this._b)+", "+this._roundA+")"},toPercentageRgb:function(){return{r:i(j(this._r,255)*100)+"%",g:i(j(this._g,255)*100)+"%",b:i(j(this._b,255)*100)+"%",a:this._a}},toPercentageRgbString:function(){return this._a==1?"rgb("+i(j(this._r,255)*100)+"%, "+i(j(this._g,255)*100)+"%, "+i(j(this._b,255)*100)+"%)":"rgba("+i(j(this._r,255)*100)+"%, "+i(j(this._g,255)*100)+"%, "+i(j(this._b,255)*100)+"%, "+this._roundA+")"},toName:function(){return this._a===0?"transparent":this._a<1?!1:Z[x(this._r,this._g,this._b,!0)]||!1},toFilter:function(ge){var Fe="#"+p(this._r,this._g,this._b,this._a),ce=Fe,Ze=this._gradientType?"GradientType = 1, ":"";if(ge){var ct=l(ge);ce="#"+p(ct._r,ct._g,ct._b,ct._a)}return"progid:DXImageTransform.Microsoft.gradient("+Ze+"startColorstr="+Fe+",endColorstr="+ce+")"},toString:function(ge){var Fe=!!ge;ge=ge||this._format;var ce=!1,Ze=this._a<1&&this._a>=0,ct=!Fe&&Ze&&(ge==="hex"||ge==="hex6"||ge==="hex3"||ge==="hex4"||ge==="hex8"||ge==="name");return ct?ge==="name"&&this._a===0?this.toName():this.toRgbString():(ge==="rgb"&&(ce=this.toRgbString()),ge==="prgb"&&(ce=this.toPercentageRgbString()),(ge==="hex"||ge==="hex6")&&(ce=this.toHexString()),ge==="hex3"&&(ce=this.toHexString(!0)),ge==="hex4"&&(ce=this.toHex8String(!0)),ge==="hex8"&&(ce=this.toHex8String()),ge==="name"&&(ce=this.toName()),ge==="hsl"&&(ce=this.toHslString()),ge==="hsv"&&(ce=this.toHsvString()),ce||this.toHexString())},clone:function(){return l(this.toString())},_applyModification:function(ge,Fe){var ce=ge.apply(null,[this].concat([].slice.call(Fe)));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(k,arguments)},desaturate:function(){return this._applyModification(C,arguments)},saturate:function(){return this._applyModification(E,arguments)},greyscale:function(){return this._applyModification(A,arguments)},spin:function(){return this._applyModification(M,arguments)},_applyCombination:function(ge,Fe){return ge.apply(null,[this].concat([].slice.call(Fe)))},analogous:function(){return this._applyCombination(O,arguments)},complement:function(){return this._applyCombination(g,arguments)},monochromatic:function(){return this._applyCombination(V,arguments)},splitcomplement:function(){return this._applyCombination(z,arguments)},triad:function(){return this._applyCombination(P,arguments)},tetrad:function(){return this._applyCombination(T,arguments)}},l.fromRatio=function(ge,Fe){if(typeof ge=="object"){var ce={};for(var Ze in ge)ge.hasOwnProperty(Ze)&&(Ze==="a"?ce[Ze]=ge[Ze]:ce[Ze]=me(ge[Ze]));ge=ce}return l(ge,Fe)};function u(ge){var Fe={r:0,g:0,b:0},ce=1,Ze=null,ct=null,pt=null,Wt=!1,st=!1;return typeof ge=="string"&&(ge=De(ge)),typeof ge=="object"&&(Ae(ge.r)&&Ae(ge.g)&&Ae(ge.b)?(Fe=c(ge.r,ge.g,ge.b),Wt=!0,st=String(ge.r).substr(-1)==="%"?"prgb":"rgb"):Ae(ge.h)&&Ae(ge.s)&&Ae(ge.v)?(Ze=me(ge.s),ct=me(ge.v),Fe=v(ge.h,Ze,ct),Wt=!0,st="hsv"):Ae(ge.h)&&Ae(ge.s)&&Ae(ge.l)&&(Ze=me(ge.s),pt=me(ge.l),Fe=h(ge.h,Ze,pt),Wt=!0,st="hsl"),ge.hasOwnProperty("a")&&(ce=ge.a)),ce=N(ce),{ok:Wt,format:ge.format||st,r:a(255,o(Fe.r,0)),g:a(255,o(Fe.g,0)),b:a(255,o(Fe.b,0)),a:ce}}function c(ge,Fe,ce){return{r:j(ge,255)*255,g:j(Fe,255)*255,b:j(ce,255)*255}}function f(ge,Fe,ce){ge=j(ge,255),Fe=j(Fe,255),ce=j(ce,255);var Ze=o(ge,Fe,ce),ct=a(ge,Fe,ce),pt,Wt,st=(Ze+ct)/2;if(Ze==ct)pt=Wt=0;else{var lt=Ze-ct;switch(Wt=st>.5?lt/(2-Ze-ct):lt/(Ze+ct),Ze){case ge:pt=(Fe-ce)/lt+(Fe<ce?6:0);break;case Fe:pt=(ce-ge)/lt+2;break;case ce:pt=(ge-Fe)/lt+4;break}pt/=6}return{h:pt,s:Wt,l:st}}function h(ge,Fe,ce){var Ze,ct,pt;ge=j(ge,360),Fe=j(Fe,100),ce=j(ce,100);function Wt(Gt,Nt,$t){return $t<0&&($t+=1),$t>1&&($t-=1),$t<1/6?Gt+(Nt-Gt)*6*$t:$t<1/2?Nt:$t<2/3?Gt+(Nt-Gt)*(2/3-$t)*6:Gt}if(Fe===0)Ze=ct=pt=ce;else{var st=ce<.5?ce*(1+Fe):ce+Fe-ce*Fe,lt=2*ce-st;Ze=Wt(lt,st,ge+1/3),ct=Wt(lt,st,ge),pt=Wt(lt,st,ge-1/3)}return{r:Ze*255,g:ct*255,b:pt*255}}function d(ge,Fe,ce){ge=j(ge,255),Fe=j(Fe,255),ce=j(ce,255);var Ze=o(ge,Fe,ce),ct=a(ge,Fe,ce),pt,Wt,st=Ze,lt=Ze-ct;if(Wt=Ze===0?0:lt/Ze,Ze==ct)pt=0;else{switch(Ze){case ge:pt=(Fe-ce)/lt+(Fe<ce?6:0);break;case Fe:pt=(ce-ge)/lt+2;break;case ce:pt=(ge-Fe)/lt+4;break}pt/=6}return{h:pt,s:Wt,v:st}}function v(ge,Fe,ce){ge=j(ge,360)*6,Fe=j(Fe,100),ce=j(ce,100);var Ze=e.floor(ge),ct=ge-Ze,pt=ce*(1-Fe),Wt=ce*(1-ct*Fe),st=ce*(1-(1-ct)*Fe),lt=Ze%6,Gt=[ce,Wt,pt,pt,st,ce][lt],Nt=[st,ce,ce,Wt,pt,pt][lt],$t=[pt,pt,st,ce,ce,Wt][lt];return{r:Gt*255,g:Nt*255,b:$t*255}}function x(ge,Fe,ce,Ze){var ct=[ke(i(ge).toString(16)),ke(i(Fe).toString(16)),ke(i(ce).toString(16))];return Ze&&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[0].charAt(0)+ct[1].charAt(0)+ct[2].charAt(0):ct.join("")}function b(ge,Fe,ce,Ze,ct){var pt=[ke(i(ge).toString(16)),ke(i(Fe).toString(16)),ke(i(ce).toString(16)),ke(ie(Ze))];return ct&&pt[0].charAt(0)==pt[0].charAt(1)&&pt[1].charAt(0)==pt[1].charAt(1)&&pt[2].charAt(0)==pt[2].charAt(1)&&pt[3].charAt(0)==pt[3].charAt(1)?pt[0].charAt(0)+pt[1].charAt(0)+pt[2].charAt(0)+pt[3].charAt(0):pt.join("")}function p(ge,Fe,ce,Ze){var ct=[ke(ie(Ze)),ke(i(ge).toString(16)),ke(i(Fe).toString(16)),ke(i(ce).toString(16))];return ct.join("")}l.equals=function(ge,Fe){return!ge||!Fe?!1:l(ge).toRgbString()==l(Fe).toRgbString()},l.random=function(){return l.fromRatio({r:s(),g:s(),b:s()})};function C(ge,Fe){Fe=Fe===0?0:Fe||10;var ce=l(ge).toHsl();return ce.s-=Fe/100,ce.s=re(ce.s),l(ce)}function E(ge,Fe){Fe=Fe===0?0:Fe||10;var ce=l(ge).toHsl();return ce.s+=Fe/100,ce.s=re(ce.s),l(ce)}function A(ge){return l(ge).desaturate(100)}function L(ge,Fe){Fe=Fe===0?0:Fe||10;var ce=l(ge).toHsl();return ce.l+=Fe/100,ce.l=re(ce.l),l(ce)}function _(ge,Fe){Fe=Fe===0?0:Fe||10;var ce=l(ge).toRgb();return ce.r=o(0,a(255,ce.r-i(255*-(Fe/100)))),ce.g=o(0,a(255,ce.g-i(255*-(Fe/100)))),ce.b=o(0,a(255,ce.b-i(255*-(Fe/100)))),l(ce)}function k(ge,Fe){Fe=Fe===0?0:Fe||10;var ce=l(ge).toHsl();return ce.l-=Fe/100,ce.l=re(ce.l),l(ce)}function M(ge,Fe){var ce=l(ge).toHsl(),Ze=(ce.h+Fe)%360;return ce.h=Ze<0?360+Ze:Ze,l(ce)}function g(ge){var Fe=l(ge).toHsl();return Fe.h=(Fe.h+180)%360,l(Fe)}function P(ge){var Fe=l(ge).toHsl(),ce=Fe.h;return[l(ge),l({h:(ce+120)%360,s:Fe.s,l:Fe.l}),l({h:(ce+240)%360,s:Fe.s,l:Fe.l})]}function T(ge){var Fe=l(ge).toHsl(),ce=Fe.h;return[l(ge),l({h:(ce+90)%360,s:Fe.s,l:Fe.l}),l({h:(ce+180)%360,s:Fe.s,l:Fe.l}),l({h:(ce+270)%360,s:Fe.s,l:Fe.l})]}function z(ge){var Fe=l(ge).toHsl(),ce=Fe.h;return[l(ge),l({h:(ce+72)%360,s:Fe.s,l:Fe.l}),l({h:(ce+216)%360,s:Fe.s,l:Fe.l})]}function O(ge,Fe,ce){Fe=Fe||6,ce=ce||30;var Ze=l(ge).toHsl(),ct=360/ce,pt=[l(ge)];for(Ze.h=(Ze.h-(ct*Fe>>1)+720)%360;--Fe;)Ze.h=(Ze.h+ct)%360,pt.push(l(Ze));return pt}function V(ge,Fe){Fe=Fe||6;for(var ce=l(ge).toHsv(),Ze=ce.h,ct=ce.s,pt=ce.v,Wt=[],st=1/Fe;Fe--;)Wt.push(l({h:Ze,s:ct,v:pt})),pt=(pt+st)%1;return Wt}l.mix=function(ge,Fe,ce){ce=ce===0?0:ce||50;var Ze=l(ge).toRgb(),ct=l(Fe).toRgb(),pt=ce/100,Wt={r:(ct.r-Ze.r)*pt+Ze.r,g:(ct.g-Ze.g)*pt+Ze.g,b:(ct.b-Ze.b)*pt+Ze.b,a:(ct.a-Ze.a)*pt+Ze.a};return l(Wt)},l.readability=function(ge,Fe){var ce=l(ge),Ze=l(Fe);return(e.max(ce.getLuminance(),Ze.getLuminance())+.05)/(e.min(ce.getLuminance(),Ze.getLuminance())+.05)},l.isReadable=function(ge,Fe,ce){var Ze=l.readability(ge,Fe),ct,pt;switch(pt=!1,ct=Pe(ce),ct.level+ct.size){case"AAsmall":case"AAAlarge":pt=Ze>=4.5;break;case"AAlarge":pt=Ze>=3;break;case"AAAsmall":pt=Ze>=7;break}return pt},l.mostReadable=function(ge,Fe,ce){var Ze=null,ct=0,pt,Wt,st,lt;ce=ce||{},Wt=ce.includeFallbackColors,st=ce.level,lt=ce.size;for(var Gt=0;Gt<Fe.length;Gt++)pt=l.readability(ge,Fe[Gt]),pt>ct&&(ct=pt,Ze=l(Fe[Gt]));return l.isReadable(ge,Ze,{level:st,size:lt})||!Wt?Ze:(ce.includeFallbackColors=!1,l.mostReadable(ge,["#fff","#000"],ce))};var G=l.names={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"0ff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000",blanchedalmond:"ffebcd",blue:"00f",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",burntsienna:"ea7e5d",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"0ff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"f0f",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"789",lightslategrey:"789",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"0f0",limegreen:"32cd32",linen:"faf0e6",magenta:"f0f",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"663399",red:"f00",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"fff",whitesmoke:"f5f5f5",yellow:"ff0",yellowgreen:"9acd32"},Z=l.hexNames=H(G);function H(ge){var Fe={};for(var ce in ge)ge.hasOwnProperty(ce)&&(Fe[ge[ce]]=ce);return Fe}function N(ge){return ge=parseFloat(ge),(isNaN(ge)||ge<0||ge>1)&&(ge=1),ge}function j(ge,Fe){_e(ge)&&(ge="100%");var ce=Me(ge);return ge=a(Fe,o(0,parseFloat(ge))),ce&&(ge=parseInt(ge*Fe,10)/100),e.abs(ge-Fe)<1e-6?1:ge%Fe/parseFloat(Fe)}function re(ge){return a(1,o(0,ge))}function oe(ge){return parseInt(ge,16)}function _e(ge){return typeof ge=="string"&&ge.indexOf(".")!=-1&&parseFloat(ge)===1}function Me(ge){return typeof ge=="string"&&ge.indexOf("%")!=-1}function ke(ge){return ge.length==1?"0"+ge:""+ge}function me(ge){return ge<=1&&(ge=ge*100+"%"),ge}function ie(ge){return e.round(parseFloat(ge)*255).toString(16)}function Se(ge){return oe(ge)/255}var Le=function(){var ge="[-\\+]?\\d+%?",Fe="[-\\+]?\\d*\\.\\d+%?",ce="(?:"+Fe+")|(?:"+ge+")",Ze="[\\s|\\(]+("+ce+")[,|\\s]+("+ce+")[,|\\s]+("+ce+")\\s*\\)?",ct="[\\s|\\(]+("+ce+")[,|\\s]+("+ce+")[,|\\s]+("+ce+")[,|\\s]+("+ce+")\\s*\\)?";return{CSS_UNIT:new RegExp(ce),rgb:new RegExp("rgb"+Ze),rgba:new RegExp("rgba"+ct),hsl:new RegExp("hsl"+Ze),hsla:new RegExp("hsla"+ct),hsv:new RegExp("hsv"+Ze),hsva:new RegExp("hsva"+ct),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/}}();function Ae(ge){return!!Le.CSS_UNIT.exec(ge)}function De(ge){ge=ge.replace(t,"").replace(r,"").toLowerCase();var Fe=!1;if(G[ge])ge=G[ge],Fe=!0;else if(ge=="transparent")return{r:0,g:0,b:0,a:0,format:"name"};var ce;return(ce=Le.rgb.exec(ge))?{r:ce[1],g:ce[2],b:ce[3]}:(ce=Le.rgba.exec(ge))?{r:ce[1],g:ce[2],b:ce[3],a:ce[4]}:(ce=Le.hsl.exec(ge))?{h:ce[1],s:ce[2],l:ce[3]}:(ce=Le.hsla.exec(ge))?{h:ce[1],s:ce[2],l:ce[3],a:ce[4]}:(ce=Le.hsv.exec(ge))?{h:ce[1],s:ce[2],v:ce[3]}:(ce=Le.hsva.exec(ge))?{h:ce[1],s:ce[2],v:ce[3],a:ce[4]}:(ce=Le.hex8.exec(ge))?{r:oe(ce[1]),g:oe(ce[2]),b:oe(ce[3]),a:Se(ce[4]),format:Fe?"name":"hex8"}:(ce=Le.hex6.exec(ge))?{r:oe(ce[1]),g:oe(ce[2]),b:oe(ce[3]),format:Fe?"name":"hex"}:(ce=Le.hex4.exec(ge))?{r:oe(ce[1]+""+ce[1]),g:oe(ce[2]+""+ce[2]),b:oe(ce[3]+""+ce[3]),a:Se(ce[4]+""+ce[4]),format:Fe?"name":"hex8"}:(ce=Le.hex3.exec(ge))?{r:oe(ce[1]+""+ce[1]),g:oe(ce[2]+""+ce[2]),b:oe(ce[3]+""+ce[3]),format:Fe?"name":"hex"}:!1}function Pe(ge){var Fe,ce;return ge=ge||{level:"AA",size:"small"},Fe=(ge.level||"AA").toUpperCase(),ce=(ge.size||"small").toLowerCase(),Fe!=="AA"&&Fe!=="AAA"&&(Fe="AA"),ce!=="small"&&ce!=="large"&&(ce="small"),{level:Fe,size:ce}}typeof g6!="undefined"&&g6.exports?g6.exports=l:window.tinycolor=l})(Math)});var Ao=ye(IS=>{"use strict";var Vee=gy(),LS=Array.isArray;function dtt(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}IS.extendFlat=function(){return PS(arguments,!1,!1,!1)};IS.extendDeep=function(){return PS(arguments,!0,!1,!1)};IS.extendDeepAll=function(){return PS(arguments,!0,!0,!1)};IS.extendDeepNoArrays=function(){return PS(arguments,!0,!1,!0)};function PS(e,t,r,n){var i=e[0],a=e.length,o,s,l,u,c,f,h;if(a===2&&LS(i)&&LS(e[1])&&i.length===0){if(h=dtt(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&&LS(u)?i[s]=u:t&&u&&(Vee(u)||(c=LS(u)))?(c?(c=!1,f=l&&LS(l)?l:[]):f=l&&Vee(l)?l:{},i[s]=PS([f,u],t,r,n)):(typeof u!="undefined"||r)&&(i[s]=u)}return i}});var ec=ye((ytr,Gee)=>{"use strict";Gee.exports=function(e){var t=e.variantValues,r=e.editType,n=e.colorEditType;n===void 0&&(n=r);var i={editType:r,valType:"integer",min:1,max:1e3,extras:["normal","bold"],dflt:"normal"};e.noNumericWeightValues&&(i.valType="enumerated",i.values=i.extras,i.extras=void 0,i.min=void 0,i.max=void 0);var a={family:{valType:"string",noBlank:!0,strict:!0,editType:r},size:{valType:"number",min:1,editType:r},color:{valType:"color",editType:n},weight:i,style:{editType:r,valType:"enumerated",values:["normal","italic"],dflt:"normal"},variant:e.noFontVariant?void 0:{editType:r,valType:"enumerated",values:t||["normal","small-caps","all-small-caps","all-petite-caps","petite-caps","unicase"],dflt:"normal"},textcase:e.noFontTextcase?void 0:{editType:r,valType:"enumerated",values:["normal","word caps","upper","lower"],dflt:"normal"},lineposition:e.noFontLineposition?void 0:{editType:r,valType:"flaglist",flags:["under","over","through"],extras:["none"],dflt:"none"},shadow:e.noFontShadow?void 0:{editType:r,valType:"string",dflt:e.autoShadowDflt?"auto":"none"},editType:r};return e.autoSize&&(a.size.dflt="auto"),e.autoColor&&(a.color.dflt="auto"),e.arrayOk&&(a.family.arrayOk=!0,a.weight.arrayOk=!0,a.style.arrayOk=!0,e.noFontVariant||(a.variant.arrayOk=!0),e.noFontTextcase||(a.textcase.arrayOk=!0),e.noFontLineposition||(a.lineposition.arrayOk=!0),e.noFontShadow||(a.shadow.arrayOk=!0),a.size.arrayOk=!0,a.color.arrayOk=!0),a}});var RS=ye((_tr,Hee)=>{"use strict";Hee.exports={YANGLE:60,HOVERARROWSIZE:6,HOVERTEXTPAD:3,HOVERFONTSIZE:13,HOVERFONT:"Arial, sans-serif",HOVERMINTIME:50,HOVERID:"-hover"}});var N1=ye((xtr,Xee)=>{"use strict";var jee=RS(),Wee=ec(),TO=Wee({editType:"none"});TO.family.dflt=jee.HOVERFONT;TO.size.dflt=jee.HOVERFONTSIZE;Xee.exports={clickmode:{valType:"flaglist",flags:["event","select"],dflt:"event",editType:"plot",extras:["none"]},dragmode:{valType:"enumerated",values:["zoom","pan","select","lasso","drawclosedpath","drawopenpath","drawline","drawrect","drawcircle","orbit","turntable",!1],dflt:"zoom",editType:"modebar"},hovermode:{valType:"enumerated",values:["x","y","closest",!1,"x unified","y unified"],dflt:"closest",editType:"modebar"},hoversubplots:{valType:"enumerated",values:["single","overlaying","axis"],dflt:"overlaying",editType:"none"},hoverdistance:{valType:"integer",min:-1,dflt:20,editType:"none"},spikedistance:{valType:"integer",min:-1,dflt:-1,editType:"none"},hoverlabel:{bgcolor:{valType:"color",editType:"none"},bordercolor:{valType:"color",editType:"none"},font:TO,grouptitlefont:Wee({editType:"none"}),align:{valType:"enumerated",values:["left","right","auto"],dflt:"auto",editType:"none"},namelength:{valType:"integer",min:-1,dflt:15,editType:"none"},showarrow:{valType:"boolean",dflt:!0,editType:"none"},editType:"none"},selectdirection:{valType:"enumerated",values:["h","v","d","any"],dflt:"any",editType:"none"}}});var i3=ye((btr,Zee)=>{"use strict";var vtt=ec(),DS=N1().hoverlabel,FS=Ao().extendFlat;Zee.exports={hoverlabel:{bgcolor:FS({},DS.bgcolor,{arrayOk:!0}),bordercolor:FS({},DS.bordercolor,{arrayOk:!0}),font:vtt({arrayOk:!0,editType:"none"}),align:FS({},DS.align,{arrayOk:!0}),namelength:FS({},DS.namelength,{arrayOk:!0}),showarrow:FS({},DS.showarrow),editType:"none"}}});var Vl=ye((wtr,Yee)=>{"use strict";var ptt=ec(),gtt=i3();Yee.exports={type:{valType:"enumerated",values:[],dflt:"scatter",editType:"calc+clearAxisTypes",_noTemplating:!0},visible:{valType:"enumerated",values:[!0,!1,"legendonly"],dflt:!0,editType:"calc"},showlegend:{valType:"boolean",dflt:!0,editType:"style"},legend:{valType:"subplotid",dflt:"legend",editType:"style"},legendgroup:{valType:"string",dflt:"",editType:"style"},legendgrouptitle:{text:{valType:"string",dflt:"",editType:"style"},font:ptt({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:gtt.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((Ttr,$ee)=>{"use strict";var mtt=cd(),m6={Greys:[[0,"rgb(0,0,0)"],[1,"rgb(255,255,255)"]],YlGnBu:[[0,"rgb(8,29,88)"],[.125,"rgb(37,52,148)"],[.25,"rgb(34,94,168)"],[.375,"rgb(29,145,192)"],[.5,"rgb(65,182,196)"],[.625,"rgb(127,205,187)"],[.75,"rgb(199,233,180)"],[.875,"rgb(237,248,217)"],[1,"rgb(255,255,217)"]],Greens:[[0,"rgb(0,68,27)"],[.125,"rgb(0,109,44)"],[.25,"rgb(35,139,69)"],[.375,"rgb(65,171,93)"],[.5,"rgb(116,196,118)"],[.625,"rgb(161,217,155)"],[.75,"rgb(199,233,192)"],[.875,"rgb(229,245,224)"],[1,"rgb(247,252,245)"]],YlOrRd:[[0,"rgb(128,0,38)"],[.125,"rgb(189,0,38)"],[.25,"rgb(227,26,28)"],[.375,"rgb(252,78,42)"],[.5,"rgb(253,141,60)"],[.625,"rgb(254,178,76)"],[.75,"rgb(254,217,118)"],[.875,"rgb(255,237,160)"],[1,"rgb(255,255,204)"]],Bluered:[[0,"rgb(0,0,255)"],[1,"rgb(255,0,0)"]],RdBu:[[0,"rgb(5,10,172)"],[.35,"rgb(106,137,247)"],[.5,"rgb(190,190,190)"],[.6,"rgb(220,170,132)"],[.7,"rgb(230,145,90)"],[1,"rgb(178,10,28)"]],Reds:[[0,"rgb(220,220,220)"],[.2,"rgb(245,195,157)"],[.4,"rgb(245,160,105)"],[1,"rgb(178,10,28)"]],Blues:[[0,"rgb(5,10,172)"],[.35,"rgb(40,60,190)"],[.5,"rgb(70,100,245)"],[.6,"rgb(90,120,245)"],[.7,"rgb(106,137,247)"],[1,"rgb(220,220,220)"]],Picnic:[[0,"rgb(0,0,255)"],[.1,"rgb(51,153,255)"],[.2,"rgb(102,204,255)"],[.3,"rgb(153,204,255)"],[.4,"rgb(204,204,255)"],[.5,"rgb(255,255,255)"],[.6,"rgb(255,204,255)"],[.7,"rgb(255,153,255)"],[.8,"rgb(255,102,204)"],[.9,"rgb(255,102,102)"],[1,"rgb(255,0,0)"]],Rainbow:[[0,"rgb(150,0,90)"],[.125,"rgb(0,0,200)"],[.25,"rgb(0,25,255)"],[.375,"rgb(0,152,255)"],[.5,"rgb(44,255,150)"],[.625,"rgb(151,255,0)"],[.75,"rgb(255,234,0)"],[.875,"rgb(255,111,0)"],[1,"rgb(255,0,0)"]],Portland:[[0,"rgb(12,51,131)"],[.25,"rgb(10,136,186)"],[.5,"rgb(242,211,56)"],[.75,"rgb(242,143,56)"],[1,"rgb(217,30,30)"]],Jet:[[0,"rgb(0,0,131)"],[.125,"rgb(0,60,170)"],[.375,"rgb(5,255,255)"],[.625,"rgb(255,255,0)"],[.875,"rgb(250,0,0)"],[1,"rgb(128,0,0)"]],Hot:[[0,"rgb(0,0,0)"],[.3,"rgb(230,0,0)"],[.6,"rgb(255,210,0)"],[1,"rgb(255,255,255)"]],Blackbody:[[0,"rgb(0,0,0)"],[.2,"rgb(230,0,0)"],[.4,"rgb(230,210,0)"],[.7,"rgb(255,255,255)"],[1,"rgb(160,200,255)"]],Earth:[[0,"rgb(0,0,130)"],[.1,"rgb(0,180,180)"],[.2,"rgb(40,210,40)"],[.4,"rgb(230,230,50)"],[.6,"rgb(120,70,20)"],[1,"rgb(255,255,255)"]],Electric:[[0,"rgb(0,0,0)"],[.15,"rgb(30,0,100)"],[.4,"rgb(120,0,100)"],[.6,"rgb(160,90,0)"],[.8,"rgb(230,200,0)"],[1,"rgb(255,250,220)"]],Viridis:[[0,"#440154"],[.06274509803921569,"#48186a"],[.12549019607843137,"#472d7b"],[.18823529411764706,"#424086"],[.25098039215686274,"#3b528b"],[.3137254901960784,"#33638d"],[.3764705882352941,"#2c728e"],[.4392156862745098,"#26828e"],[.5019607843137255,"#21918c"],[.5647058823529412,"#1fa088"],[.6274509803921569,"#28ae80"],[.6901960784313725,"#3fbc73"],[.7529411764705882,"#5ec962"],[.8156862745098039,"#84d44b"],[.8784313725490196,"#addc30"],[.9411764705882353,"#d8e219"],[1,"#fde725"]],Cividis:[[0,"rgb(0,32,76)"],[.058824,"rgb(0,42,102)"],[.117647,"rgb(0,52,110)"],[.176471,"rgb(39,63,108)"],[.235294,"rgb(60,74,107)"],[.294118,"rgb(76,85,107)"],[.352941,"rgb(91,95,109)"],[.411765,"rgb(104,106,112)"],[.470588,"rgb(117,117,117)"],[.529412,"rgb(131,129,120)"],[.588235,"rgb(146,140,120)"],[.647059,"rgb(161,152,118)"],[.705882,"rgb(176,165,114)"],[.764706,"rgb(192,177,109)"],[.823529,"rgb(209,191,102)"],[.882353,"rgb(225,204,92)"],[.941176,"rgb(243,219,79)"],[1,"rgb(255,233,69)"]]},Kee=m6.RdBu;function ytt(e,t){if(t||(t=Kee),!e)return t;function r(){try{e=m6[e]||JSON.parse(e)}catch(n){e=t}}return typeof e=="string"&&(r(),typeof e=="string"&&r()),Jee(e)?e:t}function Jee(e){var t=0;if(!Array.isArray(e)||e.length<2||!e[0]||!e[e.length-1]||+e[0][0]!=0||+e[e.length-1][0]!=1)return!1;for(var r=0;r<e.length;r++){var n=e[r];if(n.length!==2||+n[0]<t||!mtt(n[1]).isValid())return!1;t=+n[0]}return!0}function _tt(e){return m6[e]!==void 0?!0:Jee(e)}$ee.exports={scales:m6,defaultScale:Kee,get:ytt,isValid:_tt}});var Eh=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 Ca=ye((Str,Qee)=>{"use strict";var _p=cd(),xtt=Eo(),btt=vv().isTypedArray,fd=Qee.exports={},y6=Eh();fd.defaults=y6.defaults;var wtt=fd.defaultLine=y6.defaultLine;fd.lightLine=y6.lightLine;var SO=fd.background=y6.background;fd.tinyRGB=function(e){var t=e.toRgb();return"rgb("+Math.round(t.r)+", "+Math.round(t.g)+", "+Math.round(t.b)+")"};fd.rgb=function(e){return fd.tinyRGB(_p(e))};fd.opacity=function(e){return e?_p(e).getAlpha():0};fd.addOpacity=function(e,t){var r=_p(e).toRgb();return"rgba("+Math.round(r.r)+", "+Math.round(r.g)+", "+Math.round(r.b)+", "+t+")"};fd.combine=function(e,t){var r=_p(e).toRgb();if(r.a===1)return _p(e).toRgbString();var n=_p(t||SO).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 _p(a).toRgbString()};fd.interpolate=function(e,t,r){var n=_p(e).toRgb(),i=_p(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 _p(a).toRgbString()};fd.contrast=function(e,t,r){var n=_p(e);n.getAlpha()!==1&&(n=_p(fd.combine(e,SO)));var i=n.isDark()?t?n.lighten(t):SO:r?n.darken(r):wtt;return i.toString()};fd.stroke=function(e,t){var r=_p(t);e.style({stroke:fd.tinyRGB(r),"stroke-opacity":r.getAlpha()})};fd.fill=function(e,t){var r=_p(t);e.style({fill:fd.tinyRGB(r),"fill-opacity":r.getAlpha()})};fd.clean=function(e){if(!(!e||typeof e!="object")){var t=Object.keys(e),r,n,i,a;for(r=0;r<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]=AO(a[n]);else e[i]=AO(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]=AO(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++)fd.clean(a[n])}else a&&typeof a=="object"&&!btt(a)&&fd.clean(a)}};function AO(e){if(xtt(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((Mtr,ete)=>{"use strict";ete.exports={SHOW_PLACEHOLDER:100,HIDE_PLACEHOLDER:1e3,DESELECTDIM:.2}});var n3=ye(tte=>{"use strict";tte.counter=function(e,t,r,n){var i=(t||"")+(r?"":"$"),a=n===!1?"":"^";return e==="xy"?new RegExp(a+"x([2-9]|[1-9][0-9]+)?y([2-9]|[1-9][0-9]+)?"+i):new RegExp(a+e+"([2-9]|[1-9][0-9]+)?"+i)}});var ate=ye(xp=>{"use strict";var MO=Eo(),rte=cd(),ite=Ao().extendFlat,Ttt=Vl(),Att=sb(),Stt=Ca(),Mtt=U1().DESELECTDIM,a3=CS(),nte=n3().counter,Ett=r3().modHalf,dm=vv().isArrayOrTypedArray,V1=vv().isTypedArraySpec,G1=vv().decodeTypedArraySpec;xp.valObjectMeta={data_array:{coerceFunction:function(e,t,r){t.set(dm(e)?e:V1(e)?G1(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=G1(e)),!MO(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=G1(e)),e%1||!MO(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=G1(e)),rte(e).isValid()?t.set(e):t.set(r)}},colorlist:{coerceFunction:function(e,t,r){function n(i){return rte(i).isValid()}!Array.isArray(e)||!e.length?t.set(r):e.every(n)?t.set(e):t.set(r)}},colorscale:{coerceFunction:function(e,t,r){t.set(Att.get(e,r))}},angle:{coerceFunction:function(e,t,r){V1(e)&&(e=G1(e)),e==="auto"?t.set("auto"):MO(e)?t.set(Ett(+e,360)):t.set(r)}},subplotid:{coerceFunction:function(e,t,r,n){var i=n.regex||nte(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:!!nte(r).test(e)}},flaglist:{coerceFunction:function(e,t,r,n){if((n.extras||[]).indexOf(e)!==-1){t.set(e);return}if(typeof e!="string"){t.set(r);return}for(var i=e.split("+"),a=0;a<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)?G1(e):e)}},info_array:{coerceFunction:function(e,t,r,n){function i(C,E,A){var L,_={set:function(k){L=k}};return A===void 0&&(A=E.dflt),xp.valObjectMeta[E.valType].coerceFunction(C,_,A,E),L}if(V1(e)&&(e=G1(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(!_6(e[a][o],n?r[a][o]:r))return!1}else if(!_6(e[a],n?r[a]:r))return!1;return!0}}};xp.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=G1(l),s.set(l),l}var c=xp.valObjectMeta[a.valType].coerceFunction;c(l,s,i,a);var f=s.get();return u&&f===i&&!_6(l,a)&&(l=a3(u,n).get(),c(l,s,i,a),f=s.get()),f};xp.coerce2=function(e,t,r,n,i){var a=a3(e,n),o=xp.coerce(e,t,r,n,i),s=a.get();return s!=null?o:!1};xp.coerceFont=function(e,t,r,n){n||(n={}),r=ite({},r),r=ite(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};xp.coercePattern=function(e,t,r,n){var i=e(t+".shape"),a;if(i||(a=e(t+".path")),i||a){i&&e(t+".solidity"),e(t+".size");var o=e(t+".fillmode"),s=o==="overlay";if(!n){var l=e(t+".bgcolor",s?r:void 0);e(t+".fgcolor",s?Stt.contrast(l):r)}e(t+".fgopacity",s?.5:1)}};xp.coerceHoverinfo=function(e,t,r){var n=t._module.attributes,i=n.hoverinfo?n:Ttt,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 xp.coerce(e,t,i,"hoverinfo",o)};xp.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=Mtt*r),t("selected.marker.opacity",n),t("unselected.marker.opacity",i)}}};function _6(e,t){var r=xp.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}xp.validate=_6});var ub=ye((ktr,ute)=>{"use strict";var ote={staticPlot:{valType:"boolean",dflt:!1},typesetMath:{valType:"boolean",dflt:!0},plotlyServerURL:{valType:"string",dflt:""},editable:{valType:"boolean",dflt:!1},edits:{annotationPosition:{valType:"boolean",dflt:!1},annotationTail:{valType:"boolean",dflt:!1},annotationText:{valType:"boolean",dflt:!1},axisTitleText:{valType:"boolean",dflt:!1},colorbarPosition:{valType:"boolean",dflt:!1},colorbarTitleText:{valType:"boolean",dflt:!1},legendPosition:{valType:"boolean",dflt:!1},legendText:{valType:"boolean",dflt:!1},shapePosition:{valType:"boolean",dflt:!1},titleText:{valType:"boolean",dflt:!1}},editSelection:{valType:"boolean",dflt:!0},autosizable:{valType:"boolean",dflt:!1},responsive:{valType:"boolean",dflt:!1},fillFrame:{valType:"boolean",dflt:!1},frameMargins:{valType:"number",dflt:0,min:0,max:.5},scrollZoom:{valType:"flaglist",flags:["cartesian","gl3d","geo","mapbox","map"],extras:[!0,!1],dflt:"gl3d+geo+map"},doubleClick:{valType:"enumerated",values:[!1,"reset","autosize","reset+autosize"],dflt:"reset+autosize"},doubleClickDelay:{valType:"number",dflt:300,min:0},showAxisDragHandles:{valType:"boolean",dflt:!0},showAxisRangeEntryBoxes:{valType:"boolean",dflt:!0},showTips:{valType:"boolean",dflt:!0},showLink:{valType:"boolean",dflt:!1},linkText:{valType:"string",dflt:"Edit chart",noBlank:!0},sendData:{valType:"boolean",dflt:!0},showSources:{valType:"any",dflt:!1},displayModeBar:{valType:"enumerated",values:["hover",!0,!1],dflt:"hover"},showSendToCloud:{valType:"boolean",dflt:!1},showEditInChartStudio:{valType:"boolean",dflt:!1},modeBarButtonsToRemove:{valType:"any",dflt:[]},modeBarButtonsToAdd:{valType:"any",dflt:[]},modeBarButtons:{valType:"any",dflt:!1},toImageButtonOptions:{valType:"any",dflt:{}},displaylogo:{valType:"boolean",dflt:!0},watermark:{valType:"boolean",dflt:!1},plotGlPixelRatio:{valType:"number",dflt:2,min:1,max:4},setBackground:{valType:"any",dflt:"transparent"},topojsonURL:{valType:"string",noBlank:!0,dflt:"https://cdn.plot.ly/un/"},mapboxAccessToken:{valType:"string",dflt:null},logging:{valType:"integer",min:0,max:2,dflt:1},notifyOnLogging:{valType:"integer",min:0,max:2,dflt:0},queueLength:{valType:"integer",min:0,dflt:0},locale:{valType:"string",dflt:"en-US"},locales:{valType:"any",dflt:{}}},ste={};function lte(e,t){for(var r in e){var n=e[r];n.valType?t[r]=n.dflt:(t[r]||(t[r]={}),lte(n,t[r]))}}lte(ote,ste);ute.exports={configAttributes:ote,dfltConfig:ste}});var CO=ye((Ltr,cte)=>{"use strict";var EO=Oa(),Ctt=Eo(),zS=[];cte.exports=function(e,t){if(zS.indexOf(e)!==-1)return;zS.push(e);var r=1e3;Ctt(t)?r=t:t==="long"&&(r=3e3);var n=EO.select("body").selectAll(".plotly-notifier").data([0]);n.enter().append("div").classed("plotly-notifier",!0);var i=n.selectAll(".notifier-note").data(zS);function a(o){o.duration(700).style("opacity",0).each("end",function(s){var l=zS.indexOf(s);l!==-1&&zS.splice(l,1),EO.select(this).remove()})}i.enter().append("div").classed("notifier-note",!0).style("opacity",0).each(function(o){var s=EO.select(this);s.append("button").classed("notifier-close",!0).html("×").on("click",function(){s.transition().call(a)});for(var l=s.append("p"),u=o.split(/<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 H1=ye((Ptr,fte)=>{"use strict";var o3=ub().dfltConfig,kO=CO(),LO=fte.exports={};LO.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]);kO(r.join("<br>"),"long")}};LO.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]);kO(r.join("<br>"),"stick")}};LO.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]);kO(r.join("<br>"),"stick")}}});var x6=ye((Itr,hte)=>{"use strict";hte.exports=function(){}});var PO=ye((Rtr,dte)=>{"use strict";dte.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 pte=ye((Dtr,vte)=>{vte.exports=ktt;function ktt(){var e=new Float32Array(16);return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var mte=ye((Ftr,gte)=>{gte.exports=Ltt;function Ltt(e){var t=new Float32Array(16);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t}});var _te=ye((ztr,yte)=>{yte.exports=Ptt;function Ptt(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 IO=ye((Otr,xte)=>{xte.exports=Itt;function Itt(e){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var wte=ye((qtr,bte)=>{bte.exports=Rtt;function Rtt(e,t){if(e===t){var r=t[1],n=t[2],i=t[3],a=t[6],o=t[7],s=t[11];e[1]=t[4],e[2]=t[8],e[3]=t[12],e[4]=r,e[6]=t[9],e[7]=t[13],e[8]=n,e[9]=a,e[11]=t[14],e[12]=i,e[13]=o,e[14]=s}else e[0]=t[0],e[1]=t[4],e[2]=t[8],e[3]=t[12],e[4]=t[1],e[5]=t[5],e[6]=t[9],e[7]=t[13],e[8]=t[2],e[9]=t[6],e[10]=t[10],e[11]=t[14],e[12]=t[3],e[13]=t[7],e[14]=t[11],e[15]=t[15];return e}});var Ate=ye((Btr,Tte)=>{Tte.exports=Dtt;function Dtt(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],C=r*s-n*o,E=r*l-i*o,A=r*u-a*o,L=n*l-i*s,_=n*u-a*s,k=i*u-a*l,M=c*x-f*v,g=c*b-h*v,P=c*p-d*v,T=f*b-h*x,z=f*p-d*x,O=h*p-d*b,V=C*O-E*z+A*T+L*P-_*g+k*M;return V?(V=1/V,e[0]=(s*O-l*z+u*T)*V,e[1]=(i*z-n*O-a*T)*V,e[2]=(x*k-b*_+p*L)*V,e[3]=(h*_-f*k-d*L)*V,e[4]=(l*P-o*O-u*g)*V,e[5]=(r*O-i*P+a*g)*V,e[6]=(b*A-v*k-p*E)*V,e[7]=(c*k-h*A+d*E)*V,e[8]=(o*z-s*P+u*M)*V,e[9]=(n*P-r*z-a*M)*V,e[10]=(v*_-x*A+p*C)*V,e[11]=(f*A-c*_-d*C)*V,e[12]=(s*g-o*T-l*M)*V,e[13]=(r*T-n*g+i*M)*V,e[14]=(x*E-v*L-b*C)*V,e[15]=(c*L-f*E+h*C)*V,e):null}});var Mte=ye((Ntr,Ste)=>{Ste.exports=Ftt;function Ftt(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 Cte=ye((Utr,Ete)=>{Ete.exports=ztt;function ztt(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,C=t*s-n*a,E=t*l-i*a,A=r*s-n*o,L=r*l-i*o,_=n*l-i*s,k=u*v-c*d,M=u*x-f*d,g=u*b-h*d,P=c*x-f*v,T=c*b-h*v,z=f*b-h*x;return p*z-C*T+E*P+A*g-L*M+_*k}});var Lte=ye((Vtr,kte)=>{kte.exports=Ott;function Ott(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],C=t[15],E=r[0],A=r[1],L=r[2],_=r[3];return e[0]=E*n+A*s+L*f+_*x,e[1]=E*i+A*l+L*h+_*b,e[2]=E*a+A*u+L*d+_*p,e[3]=E*o+A*c+L*v+_*C,E=r[4],A=r[5],L=r[6],_=r[7],e[4]=E*n+A*s+L*f+_*x,e[5]=E*i+A*l+L*h+_*b,e[6]=E*a+A*u+L*d+_*p,e[7]=E*o+A*c+L*v+_*C,E=r[8],A=r[9],L=r[10],_=r[11],e[8]=E*n+A*s+L*f+_*x,e[9]=E*i+A*l+L*h+_*b,e[10]=E*a+A*u+L*d+_*p,e[11]=E*o+A*c+L*v+_*C,E=r[12],A=r[13],L=r[14],_=r[15],e[12]=E*n+A*s+L*f+_*x,e[13]=E*i+A*l+L*h+_*b,e[14]=E*a+A*u+L*d+_*p,e[15]=E*o+A*c+L*v+_*C,e}});var Ite=ye((Gtr,Pte)=>{Pte.exports=qtt;function qtt(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 Dte=ye((Htr,Rte)=>{Rte.exports=Btt;function Btt(e,t,r){var n=r[0],i=r[1],a=r[2];return e[0]=t[0]*n,e[1]=t[1]*n,e[2]=t[2]*n,e[3]=t[3]*n,e[4]=t[4]*i,e[5]=t[5]*i,e[6]=t[6]*i,e[7]=t[7]*i,e[8]=t[8]*a,e[9]=t[9]*a,e[10]=t[10]*a,e[11]=t[11]*a,e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e}});var zte=ye((jtr,Fte)=>{Fte.exports=Ntt;function Ntt(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,C,E,A,L,_,k,M,g,P,T,z,O,V,G;return Math.abs(s)<1e-6?null:(s=1/s,i*=s,a*=s,o*=s,l=Math.sin(r),u=Math.cos(r),c=1-u,f=t[0],h=t[1],d=t[2],v=t[3],x=t[4],b=t[5],p=t[6],C=t[7],E=t[8],A=t[9],L=t[10],_=t[11],k=i*i*c+u,M=a*i*c+o*l,g=o*i*c-a*l,P=i*a*c-o*l,T=a*a*c+u,z=o*a*c+i*l,O=i*o*c+a*l,V=a*o*c-i*l,G=o*o*c+u,e[0]=f*k+x*M+E*g,e[1]=h*k+b*M+A*g,e[2]=d*k+p*M+L*g,e[3]=v*k+C*M+_*g,e[4]=f*P+x*T+E*z,e[5]=h*P+b*T+A*z,e[6]=d*P+p*T+L*z,e[7]=v*P+C*T+_*z,e[8]=f*O+x*V+E*G,e[9]=h*O+b*V+A*G,e[10]=d*O+p*V+L*G,e[11]=v*O+C*V+_*G,t!==e&&(e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e)}});var qte=ye((Wtr,Ote)=>{Ote.exports=Utt;function Utt(e,t,r){var n=Math.sin(r),i=Math.cos(r),a=t[4],o=t[5],s=t[6],l=t[7],u=t[8],c=t[9],f=t[10],h=t[11];return t!==e&&(e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[4]=a*i+u*n,e[5]=o*i+c*n,e[6]=s*i+f*n,e[7]=l*i+h*n,e[8]=u*i-a*n,e[9]=c*i-o*n,e[10]=f*i-s*n,e[11]=h*i-l*n,e}});var Nte=ye((Xtr,Bte)=>{Bte.exports=Vtt;function Vtt(e,t,r){var n=Math.sin(r),i=Math.cos(r),a=t[0],o=t[1],s=t[2],l=t[3],u=t[8],c=t[9],f=t[10],h=t[11];return t!==e&&(e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[0]=a*i-u*n,e[1]=o*i-c*n,e[2]=s*i-f*n,e[3]=l*i-h*n,e[8]=a*n+u*i,e[9]=o*n+c*i,e[10]=s*n+f*i,e[11]=l*n+h*i,e}});var Vte=ye((Ztr,Ute)=>{Ute.exports=Gtt;function Gtt(e,t,r){var n=Math.sin(r),i=Math.cos(r),a=t[0],o=t[1],s=t[2],l=t[3],u=t[4],c=t[5],f=t[6],h=t[7];return t!==e&&(e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[0]=a*i+u*n,e[1]=o*i+c*n,e[2]=s*i+f*n,e[3]=l*i+h*n,e[4]=u*i-a*n,e[5]=c*i-o*n,e[6]=f*i-s*n,e[7]=h*i-l*n,e}});var Hte=ye((Ytr,Gte)=>{Gte.exports=Htt;function Htt(e,t,r){var n,i,a,o=r[0],s=r[1],l=r[2],u=Math.sqrt(o*o+s*s+l*l);return Math.abs(u)<1e-6?null:(u=1/u,o*=u,s*=u,l*=u,n=Math.sin(t),i=Math.cos(t),a=1-i,e[0]=o*o*a+i,e[1]=s*o*a+l*n,e[2]=l*o*a-s*n,e[3]=0,e[4]=o*s*a-l*n,e[5]=s*s*a+i,e[6]=l*s*a+o*n,e[7]=0,e[8]=o*l*a+s*n,e[9]=s*l*a-o*n,e[10]=l*l*a+i,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e)}});var Wte=ye((Ktr,jte)=>{jte.exports=jtt;function jtt(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,C=o*u;return e[0]=1-(d+x),e[1]=f+C,e[2]=h-p,e[3]=0,e[4]=f-C,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 Zte=ye((Jtr,Xte)=>{Xte.exports=Wtt;function Wtt(e,t){return e[0]=t[0],e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=t[1],e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=t[2],e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var Kte=ye(($tr,Yte)=>{Yte.exports=Xtt;function Xtt(e,t){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=t[0],e[13]=t[1],e[14]=t[2],e[15]=1,e}});var $te=ye((Qtr,Jte)=>{Jte.exports=Ztt;function Ztt(e,t){var r=Math.sin(t),n=Math.cos(t);return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=n,e[6]=r,e[7]=0,e[8]=0,e[9]=-r,e[10]=n,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var ere=ye((err,Qte)=>{Qte.exports=Ytt;function Ytt(e,t){var r=Math.sin(t),n=Math.cos(t);return e[0]=n,e[1]=0,e[2]=-r,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=r,e[9]=0,e[10]=n,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var rre=ye((trr,tre)=>{tre.exports=Ktt;function Ktt(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 RO=ye((rrr,ire)=>{ire.exports=Jtt;function Jtt(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 are=ye((irr,nre)=>{nre.exports=$tt;function $tt(e,t,r,n,i,a,o){var s=1/(r-t),l=1/(i-n),u=1/(a-o);return e[0]=a*2*s,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=a*2*l,e[6]=0,e[7]=0,e[8]=(r+t)*s,e[9]=(i+n)*l,e[10]=(o+a)*u,e[11]=-1,e[12]=0,e[13]=0,e[14]=o*a*2*u,e[15]=0,e}});var sre=ye((nrr,ore)=>{ore.exports=Qtt;function Qtt(e,t,r,n,i){var a=1/Math.tan(t/2),o=1/(n-i);return e[0]=a/r,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=a,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=(i+n)*o,e[11]=-1,e[12]=0,e[13]=0,e[14]=2*i*n*o,e[15]=0,e}});var ure=ye((arr,lre)=>{lre.exports=ert;function ert(e,t,r,n){var i=Math.tan(t.upDegrees*Math.PI/180),a=Math.tan(t.downDegrees*Math.PI/180),o=Math.tan(t.leftDegrees*Math.PI/180),s=Math.tan(t.rightDegrees*Math.PI/180),l=2/(o+s),u=2/(i+a);return e[0]=l,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=u,e[6]=0,e[7]=0,e[8]=-((o-s)*l*.5),e[9]=(i-a)*u*.5,e[10]=n/(r-n),e[11]=-1,e[12]=0,e[13]=0,e[14]=n*r/(r-n),e[15]=0,e}});var fre=ye((orr,cre)=>{cre.exports=trt;function trt(e,t,r,n,i,a,o){var s=1/(t-r),l=1/(n-i),u=1/(a-o);return e[0]=-2*s,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=-2*l,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=2*u,e[11]=0,e[12]=(t+r)*s,e[13]=(i+n)*l,e[14]=(o+a)*u,e[15]=1,e}});var dre=ye((srr,hre)=>{var rrt=IO();hre.exports=irt;function irt(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],C=n[1],E=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?rrt(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=C*h-E*f,a=E*c-p*h,o=p*f-C*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 pre=ye((lrr,vre)=>{vre.exports=nrt;function nrt(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 DO=ye((urr,gre)=>{gre.exports={create:pte(),clone:mte(),copy:_te(),identity:IO(),transpose:wte(),invert:Ate(),adjoint:Mte(),determinant:Cte(),multiply:Lte(),translate:Ite(),scale:Dte(),rotate:zte(),rotateX:qte(),rotateY:Nte(),rotateZ:Vte(),fromRotation:Hte(),fromRotationTranslation:Wte(),fromScaling:Zte(),fromTranslation:Kte(),fromXRotation:$te(),fromYRotation:ere(),fromZRotation:rre(),fromQuat:RO(),frustum:are(),perspective:sre(),perspectiveFromFieldOfView:ure(),ortho:fre(),lookAt:dre(),str:pre()}});var b6=ye(fh=>{"use strict";var art=DO();fh.init2dArray=function(e,t){for(var r=new Array(e),n=0;n<e;n++)r[n]=new Array(t);return r};fh.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};fh.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]=fh.dot(e[i],t);else if(t[0].length){var a=fh.transposeRagged(t);for(n=new Array(a.length),i=0;i<a.length;i++)n[i]=fh.dot(e,a[i])}else for(n=0,i=0;i<r;i++)n+=e[i]*t[i];return n};fh.translationMatrix=function(e,t){return[[1,0,e],[0,1,t],[0,0,1]]};fh.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]]};fh.rotationXYMatrix=function(e,t,r){return fh.dot(fh.dot(fh.translationMatrix(t,r),fh.rotationMatrix(e)),fh.translationMatrix(-t,-r))};fh.apply3DTransform=function(e){return function(){var t=arguments,r=arguments.length===1?t[0]:[t[0],t[1],t[2]||0];return fh.dot(e,[r[0],r[1],r[2],1]).slice(0,3)}};fh.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 fh.dot(e,[r[0],r[1],1]).slice(0,2)}};fh.apply2DTransform2=function(e){var t=fh.apply2DTransform(e);return function(r){return t(r.slice(0,2)).concat(t(r.slice(2,4)))}};fh.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]};fh.inverseTransformMatrix=function(e){var t=[];return art.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 OS=ye((frr,wre)=>{"use strict";var ort=Oa(),mre=H1(),srt=b6(),lrt=DO();function urt(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 crt(e){var t=ort.select(e);return t.node()instanceof HTMLElement&&t.size()&&t.classed("js-plotly-plot")}function yre(e){var t=e&&e.parentNode;t&&t.removeChild(e)}function frt(e,t){_re("global",e,t)}function _re(e,t,r){var n="plotly.js-style-"+e,i=document.getElementById(n);if(!(i&&i.matches(".no-inline-styles"))){i||(i=document.createElement("style"),i.setAttribute("id",n),i.appendChild(document.createTextNode("")),document.head.appendChild(i));var a=i.sheet;a?a.insertRule?a.insertRule(t+"{"+r+"}",0):a.addRule?a.addRule(t,r,0):mre.warn("addStyleRule failed"):mre.warn("Cannot addRelatedStyleRule, probably due to strict CSP...")}}function hrt(e){var t="plotly.js-style-"+e,r=document.getElementById(t);r&&yre(r)}function drt(e,t,r,n,i,a){var o=n.split(":"),s=i.split(":"),l="data-btn-style-event-added";a||(a=document),a.querySelectorAll(e).forEach(function(u){u.getAttribute(l)||(u.addEventListener("mouseenter",function(){var c=this.querySelector(r);c&&(c.style[o[0]]=o[1])}),u.addEventListener("mouseleave",function(){var c=this.querySelector(r);c&&(t&&this.matches(t)?c.style[o[0]]=o[1]:c.style[s[0]]=s[1])}),u.setAttribute(l,!0))})}function vrt(e){var t=bre(e),r=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];return t.forEach(function(n){var i=xre(n);if(i){var a=srt.convertCssMatrix(i);r=lrt.multiply(r,r,a)}}),r}function xre(e){var t=window.getComputedStyle(e,null),r=t.getPropertyValue("-webkit-transform")||t.getPropertyValue("-moz-transform")||t.getPropertyValue("-ms-transform")||t.getPropertyValue("-o-transform")||t.getPropertyValue("transform");return r==="none"?null:r.replace("matrix","").replace("3d","").slice(1,-1).split(",").map(function(n){return+n})}function bre(e){for(var t=[];prt(e);)t.push(e),e=e.parentNode,typeof ShadowRoot=="function"&&e instanceof ShadowRoot&&(e=e.host);return t}function prt(e){return e&&(e instanceof Element||e instanceof HTMLElement)}function grt(e,t){return e&&t&&e.top===t.top&&e.left===t.left&&e.right===t.right&&e.bottom===t.bottom}wre.exports={getGraphDiv:urt,isPlotDiv:crt,removeElement:yre,addStyleRule:frt,addRelatedStyleRule:_re,deleteRelatedStyleRule:hrt,setStyleOnHover:drt,getFullTransformMatrix:vrt,getElementTransformMatrix:xre,getElementAndAncestors:bre,equalDomRects:grt}});var qS=ye((hrr,Tre)=>{"use strict";Tre.exports={mode:{valType:"enumerated",dflt:"afterall",values:["immediate","next","afterall"]},direction:{valType:"enumerated",values:["forward","reverse"],dflt:"forward"},fromcurrent:{valType:"boolean",dflt:!1},frame:{duration:{valType:"number",min:0,dflt:500},redraw:{valType:"boolean",dflt:!0}},transition:{duration:{valType:"number",min:0,dflt:500,editType:"none"},easing:{valType:"enumerated",dflt:"cubic-in-out",values:["linear","quad","cubic","sin","exp","circle","elastic","back","bounce","linear-in","quad-in","cubic-in","sin-in","exp-in","circle-in","elastic-in","back-in","bounce-in","linear-out","quad-out","cubic-out","sin-out","exp-out","circle-out","elastic-out","back-out","bounce-out","linear-in-out","quad-in-out","cubic-in-out","sin-in-out","exp-in-out","circle-in-out","elastic-in-out","back-in-out","bounce-in-out"],editType:"none"},ordering:{valType:"enumerated",values:["layout first","traces first"],dflt:"layout first",editType:"none"}}}});var mc=ye((drr,Lre)=>{"use strict";var Sre=Ao().extendFlat,mrt=gy(),Mre={valType:"flaglist",extras:["none"],flags:["calc","clearAxisTypes","plot","style","markerSize","colorbars"]},Ere={valType:"flaglist",extras:["none"],flags:["calc","plot","legend","ticks","axrange","layoutstyle","modebar","camera","arraydraw","colorbars"]},yrt=Mre.flags.slice().concat(["fullReplot"]),_rt=Ere.flags.slice().concat("layoutReplot");Lre.exports={traces:Mre,layout:Ere,traceFlags:function(){return Are(yrt)},layoutFlags:function(){return Are(_rt)},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:Cre};function Are(e){for(var t={},r=0;r<e.length;r++)t[e[r]]=!1;return t}function Cre(e,t,r){var n=Sre({},e);for(var i in n){var a=n[i];mrt(a)&&(n[i]=kre(a,t,r,i))}return r==="from-root"&&(n.editType=t),n}function kre(e,t,r,n){if(e.valType){var i=Sre({},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]=kre(e.items[a],t,"from-root")}return i}else return Cre(e,t,n.charAt(0)==="_"?"nested":"from-root")}});var Pd=ye(FO=>{"use strict";FO.dash={valType:"string",values:["solid","dot","dash","longdash","dashdot","longdashdot"],dflt:"solid",editType:"style"};FO.pattern={shape:{valType:"enumerated",values:["","/","\\","x","-","|","+","."],dflt:"",arrayOk:!0,editType:"style"},path:{valType:"string",arrayOk:!0,editType:"style"},fillmode:{valType:"enumerated",values:["replace","overlay"],dflt:"replace",editType:"style"},bgcolor:{valType:"color",arrayOk:!0,editType:"style"},fgcolor:{valType:"color",arrayOk:!0,editType:"style"},fgopacity:{valType:"number",editType:"style",min:0,max:1},size:{valType:"number",min:0,dflt:8,arrayOk:!0,editType:"style"},solidity:{valType:"number",min:0,max:1,dflt:.3,arrayOk:!0,editType:"style"},editType:"style"}});var zO=ye((prr,Pre)=>{"use strict";Pre.exports={FORMAT_LINK:"https://github.com/d3/d3-format/tree/v1.4.5#d3-format",DATE_FORMAT_LINK:"https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format"}});var Qo=ye(BS=>{"use strict";var Ire=zO(),xrt=Ire.FORMAT_LINK,brt=Ire.DATE_FORMAT_LINK;function wrt(e){var t=e&&e.supportOther;return["Variables are inserted using %{variable},",'for example "y: %{y}"'+(t?" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown.":"."),`Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example "Price: %{y:$.2f}".`,xrt,"for details on the formatting syntax.",`Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example "Day: %{2019-01-01|%A}".`,brt,"for details on the date formatting syntax."].join(" ")}BS.templateFormatStringDescription=wrt;function OO(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}BS.hovertemplateAttrs=function(e,t){e=e||{},t=t||{};var r=OO(t),n={valType:"string",dflt:"",editType:e.editType||"none"};return e.arrayOk!==!1&&(n.arrayOk=!0),n};BS.texttemplateAttrs=function(e,t){e=e||{},t=t||{};var r=OO(t),n={valType:"string",dflt:"",editType:e.editType||"calc"};return e.arrayOk!==!1&&(n.arrayOk=!0),n};BS.shapeTexttemplateAttrs=function(e,t){e=e||{},t=t||{};var r=e.newshape?"new ":"",n=OO(t),i={valType:"string",dflt:"",editType:e.editType||"arraydraw"};return i}});var A6=ye((mrr,qre)=>{"use strict";function j1(e,t){return t?t.d2l(e):e}function Rre(e,t){return t?t.l2d(e):e}function Trt(e){return e.x0}function Art(e){return e.x1}function Srt(e){return e.y0}function Mrt(e){return e.y1}function Dre(e){return e.x0shift||0}function Fre(e){return e.x1shift||0}function zre(e){return e.y0shift||0}function Ore(e){return e.y1shift||0}function w6(e,t){return j1(e.x1,t)+Fre(e)-j1(e.x0,t)-Dre(e)}function T6(e,t,r){return j1(e.y1,r)+Ore(e)-j1(e.y0,r)-zre(e)}function Ert(e,t){return Math.abs(w6(e,t))}function Crt(e,t,r){return Math.abs(T6(e,t,r))}function krt(e,t,r){return e.type!=="line"?void 0:Math.sqrt(Math.pow(w6(e,t),2)+Math.pow(T6(e,t,r),2))}function Lrt(e,t){return Rre((j1(e.x1,t)+Fre(e)+j1(e.x0,t)+Dre(e))/2,t)}function Prt(e,t,r){return Rre((j1(e.y1,r)+Ore(e)+j1(e.y0,r)+zre(e))/2,r)}function Irt(e,t,r){return e.type!=="line"?void 0:T6(e,t,r)/w6(e,t)}qre.exports={x0:Trt,x1:Art,y0:Srt,y1:Mrt,slope:Irt,dx:w6,dy:T6,width:Ert,height:Crt,length:krt,xcenter:Lrt,ycenter:Prt}});var Ure=ye((yrr,Nre)=>{"use strict";var Rrt=mc().overrideAll,cb=Vl(),Bre=ec(),Drt=Pd().dash,W1=Ao().extendFlat,Frt=Qo().shapeTexttemplateAttrs,zrt=A6();Nre.exports=Rrt({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:Bre({})},legendrank:W1({},cb.legendrank,{}),legendwidth:W1({},cb.legendwidth,{}),line:{color:{valType:"color"},width:{valType:"number",min:0,dflt:4},dash:W1({},Drt,{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:Frt({newshape:!0},{keys:Object.keys(zrt)}),font:Bre({}),textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right","start","middle","end"]},textangle:{valType:"angle",dflt:"auto"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto"},yanchor:{valType:"enumerated",values:["top","middle","bottom"]},padding:{valType:"number",dflt:3,min:0}}},activeshape:{fillcolor:{valType:"color",dflt:"rgb(255,0,255)"},opacity:{valType:"number",min:0,max:1,dflt:.5}}},"none","from-root")});var Gre=ye((_rr,Vre)=>{"use strict";var Ort=Pd().dash,qrt=Ao().extendFlat;Vre.exports={newselection:{mode:{valType:"enumerated",values:["immediate","gradual"],dflt:"immediate",editType:"none"},line:{color:{valType:"color",editType:"none"},width:{valType:"number",min:1,dflt:1,editType:"none"},dash:qrt({},Ort,{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 S6=ye((xrr,Hre)=>{"use strict";Hre.exports=function(e){var t=e.editType;return{t:{valType:"number",dflt:0,editType:t},r:{valType:"number",dflt:0,editType:t},b:{valType:"number",dflt:0,editType:t},l:{valType:"number",dflt:0,editType:t},editType:t}}});var s3=ye((brr,Zre)=>{"use strict";var qO=ec(),Brt=qS(),M6=Eh(),jre=Ure(),Wre=Gre(),Nrt=S6(),Xre=Ao().extendFlat,E6=qO({editType:"calc"});E6.family.dflt='"Open Sans", verdana, arial, sans-serif';E6.size.dflt=12;E6.color.dflt=M6.defaultLine;Zre.exports={font:E6,title:{text:{valType:"string",editType:"layoutstyle"},font:qO({editType:"layoutstyle"}),subtitle:{text:{valType:"string",editType:"layoutstyle"},font:qO({editType:"layoutstyle"}),editType:"layoutstyle"},xref:{valType:"enumerated",dflt:"container",values:["container","paper"],editType:"layoutstyle"},yref:{valType:"enumerated",dflt:"container",values:["container","paper"],editType:"layoutstyle"},x:{valType:"number",min:0,max:1,dflt:.5,editType:"layoutstyle"},y:{valType:"number",min:0,max:1,dflt:"auto",editType:"layoutstyle"},xanchor:{valType:"enumerated",dflt:"auto",values:["auto","left","center","right"],editType:"layoutstyle"},yanchor:{valType:"enumerated",dflt:"auto",values:["auto","top","middle","bottom"],editType:"layoutstyle"},pad:Xre(Nrt({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:M6.background,editType:"plot"},plot_bgcolor:{valType:"color",dflt:M6.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:M6.defaults,editType:"calc"},datarevision:{valType:"any",editType:"calc"},uirevision:{valType:"any",editType:"none"},editrevision:{valType:"any",editType:"none"},selectionrevision:{valType:"any",editType:"none"},template:{valType:"any",editType:"calc"},newshape:jre.newshape,activeshape:jre.activeshape,newselection:Wre.newselection,activeselection:Wre.activeselection,meta:{valType:"any",arrayOk:!0,editType:"plot"},transition:Xre({},Brt.transition,{editType:"none"})}});var Yre=ru(()=>{});var Urt={};var Kre=ru(()=>{Yre()});var qa=ye(tl=>{"use strict";var l3=H1(),Jre=x6(),$re=PO(),Vrt=gy(),Grt=OS().addStyleRule,Qre=Ao(),Hrt=Vl(),jrt=s3(),Wrt=Qre.extendFlat,BO=Qre.extendDeepAll;tl.modules={};tl.allCategories={};tl.allTypes=[];tl.subplotsRegistry={};tl.componentsRegistry={};tl.layoutArrayContainers=[];tl.layoutArrayRegexes=[];tl.traceLayoutAttributes={};tl.localeRegistry={};tl.apiMethodRegistry={};tl.collectableSubplotTypes=null;tl.register=function(t){if(tl.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":Xrt(n);break;case"transform":Krt(n);break;case"component":Yrt(n);break;case"locale":Jrt(n);break;case"apiMethod":var i=n.name;tl.apiMethodRegistry[i]=n.fn;break;default:throw new Error("Invalid module was attempted to be registered!")}}};tl.getModule=function(e){var t=tl.modules[iie(e)];return t?t._module:!1};tl.traceIs=function(e,t){if(e=iie(e),e==="various")return!1;var r=tl.modules[e];return r||(e&&l3.log("Unrecognized trace type "+e+"."),r=tl.modules[Hrt.type.dflt]),!!r.categories[t]};tl.getComponentMethod=function(e,t){var r=tl.componentsRegistry[e];return r&&r[t]||Jre};tl.call=function(){var e=arguments[0],t=[].slice.call(arguments,1);return tl.apiMethodRegistry[e].apply(null,t)};function Xrt(e){var t=e.name,r=e.categories,n=e.meta;if(tl.modules[t]){l3.log("Type "+t+" already registered");return}tl.subplotsRegistry[e.basePlotModule.name]||Zrt(e.basePlotModule);for(var i={},a=0;a<r.length;a++)i[r[a]]=!0,tl.allCategories[r[a]]=!0;tl.modules[t]={_module:e,categories:i},n&&Object.keys(n).length&&(tl.modules[t].meta=n),tl.allTypes.push(t);for(var o in tl.componentsRegistry)tie(o,t);e.layoutAttributes&&Wrt(tl.traceLayoutAttributes,e.layoutAttributes);var s=e.basePlotModule,l=s.name;if(l==="mapbox"){var u=s.constants.styleRules;for(var c in u)Grt(".js-plotly-plot .plotly .mapboxgl-"+c,u[c])}l==="map"&&(Kre(),B1(Urt)),(l==="geo"||l==="mapbox"||l==="map")&&window.PlotlyGeoAssets===void 0&&(window.PlotlyGeoAssets={topojson:{}})}function Zrt(e){var t=e.name;if(tl.subplotsRegistry[t]){l3.log("Plot type "+t+" already registered.");return}eie(e),tl.subplotsRegistry[t]=e;for(var r in tl.componentsRegistry)rie(r,e.name)}function Yrt(e){if(typeof e.name!="string")throw new Error("Component module *name* must be a string.");var t=e.name;tl.componentsRegistry[t]=e,e.layoutAttributes&&(e.layoutAttributes._isLinkedToArray&&$re(tl.layoutArrayContainers,t),eie(e));for(var r in tl.modules)tie(t,r);for(var n in tl.subplotsRegistry)rie(t,n);e.schema&&e.schema.layout&&BO(jrt,e.schema.layout)}function Krt(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(" ")),Vrt(e.attributes)||l3.log(t+" registered without an *attributes* object."),typeof e.supplyDefaults!="function"&&l3.log(t+" registered without a *supplyDefaults* method.")}function Jrt(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=tl.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 eie(e){if(e.layoutAttributes){var t=e.layoutAttributes._arrayAttrRegexps;if(t)for(var r=0;r<t.length;r++)$re(tl.layoutArrayRegexes,t[r])}}function tie(e,t){var r=tl.componentsRegistry[e].schema;if(!(!r||!r.traces)){var n=r.traces[t];n&&BO(tl.modules[t]._module.attributes,n)}}function rie(e,t){var r=tl.componentsRegistry[e].schema;if(!(!r||!r.subplots)){var n=tl.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&&BO(i,o)}}function iie(e){return typeof e=="object"&&(e=e.type),e}});var hie=ye(hh=>{"use strict";var $rt=e3().timeFormat,cie=Eo(),NO=H1(),Z1=r3().mod,f3=hs(),_0=f3.BADNUM,bp=f3.ONEDAY,NS=f3.ONEHOUR,X1=f3.ONEMIN,c3=f3.ONESEC,US=f3.EPOCHJD,my=qa(),nie=e3().utcFormat,Qrt=/^\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,eit=/^\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,aie=new Date().getFullYear()-70;function yy(e){return e&&my.componentsRegistry.calendars&&typeof e=="string"&&e!=="gregorian"}hh.dateTick0=function(e,t){var r=tit(e,!!t);if(t<2)return r;var n=hh.dateTime2ms(r,e);return n+=bp*(t-1),hh.ms2DateTime(n,0,e)};function tit(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"}hh.dfltRange=function(e){return yy(e)?my.getComponentMethod("calendars","DFLTRANGE")[e]:["2000-01-01","2001-01-01"]};hh.isJSDate=function(e){return typeof e=="object"&&e!==null&&typeof e.getTime=="function"};var k6,L6;hh.dateTime2ms=function(e,t){if(hh.isJSDate(e)){var r=e.getTimezoneOffset()*X1,n=(e.getUTCMinutes()-e.getMinutes())*X1+(e.getUTCSeconds()-e.getSeconds())*c3+(e.getUTCMilliseconds()-e.getMilliseconds());if(n){var i=3*X1;r=r-i/2+Z1(n-r+i/2,i)}return e=Number(e)-r,e>=k6&&e<=L6?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?eit:Qrt);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(E){return _0}return x?(x.toJD()-US)*bp+h*NS+d*X1+v*c3:_0}u.length===2?u=(Number(u)+2e3-aie)%100+aie:u=Number(u),c-=1;var C=new Date(Date.UTC(2e3,c,f,h,d));return C.setUTCFullYear(u),C.getUTCMonth()!==c||C.getUTCDate()!==f?_0:C.getTime()+v*c3};k6=hh.MIN_MS=hh.dateTime2ms("-9999");L6=hh.MAX_MS=hh.dateTime2ms("9999-12-31 23:59:59.9999");hh.isDateTime=function(e,t){return hh.dateTime2ms(e,t)!==_0};function u3(e,t){return String(e+Math.pow(10,t)).substr(1)}var C6=90*bp,oie=3*NS,sie=5*X1;hh.ms2DateTime=function(e,t,r){if(typeof e!="number"||!(e>=k6&&e<=L6))return _0;t||(t=0);var n=Math.floor(Z1(e+.05,1)*10),i=Math.round(e-n/10),a,o,s,l,u,c;if(yy(r)){var f=Math.floor(i/bp)+US,h=Math.floor(Z1(e,bp));try{a=my.getComponentMethod("calendars","getCal")(r).fromJD(f).formatDate("yyyy-mm-dd")}catch(d){a=nie("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<C6?Math.floor(h/NS):0,s=t<C6?Math.floor(h%NS/X1):0,l=t<oie?Math.floor(h%X1/c3):0,u=t<sie?h%c3*10+n:0}else c=new Date(i),a=nie("%Y-%m-%d")(c),o=t<C6?c.getUTCHours():0,s=t<C6?c.getUTCMinutes():0,l=t<oie?c.getUTCSeconds():0,u=t<sie?c.getUTCMilliseconds()*10+n:0;return fie(a,o,s,l,u)};hh.ms2DateTimeLocal=function(e){if(!(e>=k6+bp&&e<=L6-bp))return _0;var t=Math.floor(Z1(e+.05,1)*10),r=new Date(Math.round(e-t/10)),n=$rt("%Y-%m-%d")(r),i=r.getHours(),a=r.getMinutes(),o=r.getSeconds(),s=r.getUTCMilliseconds()*10+t;return fie(n,i,a,o,s)};function fie(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}hh.cleanDate=function(e,t,r){if(e===_0)return t;if(hh.isJSDate(e)||typeof e=="number"&&isFinite(e)){if(yy(r))return NO.error("JS Dates and milliseconds are incompatible with world calendars",e),t;if(e=hh.ms2DateTimeLocal(+e),!e&&t!==void 0)return t}else if(!hh.isDateTime(e,r))return NO.error("unrecognized date",e),t;return e};var rit=/%\d?f/g,iit=/%h/g,nit={1:"1",2:"1",3:"2",4:"2"};function lie(e,t,r,n){e=e.replace(rit,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(iit,function(){return nit[r("%q")(i)]}),yy(n))try{e=my.getComponentMethod("calendars","worldCalFmt")(e,t,n)}catch(a){return"Invalid"}return r(e)(i)}var ait=[59,59.9,59.99,59.999,59.9999];function oit(e,t){var r=Z1(e+.05,bp),n=u3(Math.floor(r/NS),2)+":"+u3(Z1(Math.floor(r/X1),60),2);if(t!=="M"){cie(t)||(t=0);var i=Math.min(Z1(e/c3,60),ait[t]),a=(100+i).toFixed(t).substr(1);t>0&&(a=a.replace(/0+$/,"").replace(/[\.]$/,"")),n+=":"+a}return n}hh.formatDate=function(e,t,r,n,i,a){if(i=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 oit(e,r)+`
|
||
`+lie(a.dayMonthYear,e,n,i);return lie(t,e,n,i)};var uie=3*bp;hh.incrementMonth=function(e,t,r){r=yy(r)&&r;var n=Z1(e,bp);if(e=Math.round(e-n),r)try{var i=Math.round(e/bp)+US,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()-US)*bp+n}catch(l){NO.error("invalid ms "+e+" in calendar "+r)}var s=new Date(e+uie);return s.setUTCMonth(s.getUTCMonth()+t)+n-uie};hh.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],!cie(s)){a++;continue}if(!(s%bp))if(l)try{o=l.fromJD(s/bp+US),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 VS=ye((Err,die)=>{"use strict";die.exports=function(t){return t}});var P6=ye(_y=>{"use strict";var sit=Eo(),lit=H1(),uit=VS(),cit=hs().BADNUM,UO=1e-9;_y.findBin=function(e,t,r){if(sit(t.start))return r?Math.ceil((e-t.start)/t.size-UO)-1:Math.floor((e-t.start)/t.size+UO);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?fit:hit:l=r?vit:dit,e+=o*UO*(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&&lit.log("Long binary search..."),n-1};function fit(e,t){return e<t}function hit(e,t){return e<=t}function dit(e,t){return e>t}function vit(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]===cit;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||uit;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((krr,vie)=>{"use strict";vie.exports=function(t){return Object.keys(t).sort()}});var pie=ye(dh=>{"use strict";var GS=Eo(),pit=vv().isArrayOrTypedArray;dh.aggNums=function(e,t,r,n){var i,a;if((!n||n>r.length)&&(n=r.length),GS(t)||(t=!1),pit(r[0])){for(a=new Array(n),i=0;i<n;i++)a[i]=dh.aggNums(e,t,r[i]);r=a}for(i=0;i<n;i++)GS(t)?GS(r[i])&&(t=e(+t,+r[i])):t=r[i];return t};dh.len=function(e){return dh.aggNums(function(t){return t+1},0,e)};dh.mean=function(e,t){return t||(t=dh.len(e)),dh.aggNums(function(r,n){return r+n},0,e)/t};dh.geometricMean=function(e,t){return t||(t=dh.len(e)),Math.pow(dh.aggNums(function(r,n){return r*n},1,e),1/t)};dh.midRange=function(e){if(!(e===void 0||e.length===0))return(dh.aggNums(Math.max,null,e)+dh.aggNums(Math.min,null,e))/2};dh.variance=function(e,t,r){return t||(t=dh.len(e)),GS(r)||(r=dh.mean(e,t)),dh.aggNums(function(n,i){return n+Math.pow(i-r,2)},0,e)/t};dh.stdev=function(e,t,r){return Math.sqrt(dh.variance(e,t,r))};dh.median=function(e){var t=e.slice().sort();return dh.interp(t,.5)};dh.interp=function(e,t){if(!GS(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 xie=ye((Prr,_ie)=>{"use strict";var gie=r3(),VO=gie.mod,git=gie.modHalf,HS=Math.PI,K1=2*HS;function mit(e){return e/180*HS}function yit(e){return e/HS*180}function GO(e){return Math.abs(e[1]-e[0])>K1-1e-14}function mie(e,t){return git(t-e,K1)}function _it(e,t){return Math.abs(mie(e,t))}function yie(e,t){if(GO(t))return!0;var r,n;t[0]<t[1]?(r=t[0],n=t[1]):(r=t[1],n=t[0]),r=VO(r,K1),n=VO(n,K1),r>n&&(n+=K1);var i=VO(e,K1),a=i+K1;return i>=r&&i<=n||a>=r&&a<=n}function xit(e,t,r,n){if(!yie(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 HO(e,t,r,n,i,a,o){i=i||0,a=a||0;var s=GO([r,n]),l,u,c,f,h;s?(l=0,u=HS,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,C){return[p*Math.cos(C)+i,a-p*Math.sin(C)]}var v=Math.abs(c-l)<=HS?0:1;function x(p,C,E){return"A"+[p,p]+" "+[0,v,E]+" "+d(p,C)}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 bit(e,t,r,n,i){return HO(null,e,t,r,n,i,0)}function wit(e,t,r,n,i){return HO(null,e,t,r,n,i,1)}function Tit(e,t,r,n,i,a){return HO(e,t,r,n,i,a,1)}_ie.exports={deg2rad:mit,rad2deg:yit,angleDelta:mie,angleDist:_it,isFullCircle:GO,isAngleInsideSector:yie,isPtInsideSector:xit,pathArc:bit,pathSector:wit,pathAnnulus:Tit}});var bie=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 Aie=ye(hb=>{"use strict";var jO=r3().mod;hb.segmentsIntersect=Tie;function Tie(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(Tie(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(I6(u,c,d,a-t,o-r),I6(u,c,d,s-t,l-r),I6(f,h,v,t-a,r-o),I6(f,h,v,n-a,i-o));return Math.sqrt(x)};function I6(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 R6,WO,wie;hb.getTextLocation=function(t,r,n,i){if((t!==WO||i!==wie)&&(R6={},WO=t,wie=i),R6[n])return R6[n];var a=t.getPointAtLength(jO(n-i/2,r)),o=t.getPointAtLength(jO(n+i/2,r)),s=Math.atan((o.y-a.y)/(o.x-a.x)),l=t.getPointAtLength(jO(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 R6[n]=f,f};hb.clearLocationCache=function(){WO=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,C=b.y<o?o-b.y:b.y>s?b.y-s:0;return Math.sqrt(p*p+C*C)}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 D6=ye(jS=>{"use strict";var xy={};jS.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}}Sie(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)};jS.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}})};jS.clear=function(e){if(e)Sie(xy[e]),delete xy[e];else for(var t in xy)jS.clear(t)};function Sie(e){e&&e.timer!==null&&(clearTimeout(e.timer),e.timer=null)}});var Eie=ye((Frr,Mie)=>{"use strict";Mie.exports=function(t){t._responsiveChartHandler&&(window.removeEventListener("resize",t._responsiveChartHandler),delete t._responsiveChartHandler)}});var Cie=ye((zrr,F6)=>{"use strict";F6.exports=XO;F6.exports.isMobile=XO;F6.exports.default=XO;var Ait=/(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,Sit=/CrOS/,Mit=/android|ipad|playbook|silk/i;function XO(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=Ait.test(t)&&!Sit.test(t)||!!e.tablet&&Mit.test(t);return!r&&e.tablet&&e.featureDetect&&navigator&&navigator.maxTouchPoints>1&&t.indexOf("Macintosh")!==-1&&t.indexOf("Safari")!==-1&&(r=!0),r}});var Lie=ye((Orr,kie)=>{"use strict";var Eit=Eo(),Cit=Cie();kie.exports=function(t){var r;if(t&&t.hasOwnProperty("userAgent")?r=t.userAgent:r=kit(),typeof r!="string")return!0;var n=Cit({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(Eit(u)&&(u=+u),u>=13)return!0}}}return n};function kit(){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 Iie=ye((qrr,Pie)=>{"use strict";var Lit=Oa();Pie.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]=Lit.select(this)}),i}});var Die=ye((Brr,Rie)=>{"use strict";var Pit=qa();Rie.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=Pit.localeRegistry}var u=n.split("-")[0];if(u===n)break;n=u}return r}});var ZO=ye((Nrr,Fie)=>{"use strict";Fie.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 Oie=ye((Urr,zie)=>{"use strict";zie.exports=function(t){for(var r=Dit(t)?Rit:Iit,n=[],i=0;i<t.length;i++){var a=t[i];r(a)&&n.push(a)}return n};function Iit(e){return e.visible===!0}function Rit(e){var t=e[0].trace;return t.visible===!0&&t._length!==0}function Dit(e){return Array.isArray(e)&&Array.isArray(e[0])&&e[0][0]&&e[0][0].trace}});var Bie=ye((Vrr,qie)=>{"use strict";qie.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 Uie=ye((Grr,Nie)=>{"use strict";var Fit=Eo(),zit=hs().BADNUM,Oit=/^['"%,$#\s']+|[, ]|['"%,$#\s']+$/g;Nie.exports=function(t){return typeof t=="string"&&(t=t.replace(Oit,"")),Fit(t)?Number(t):zit}});var Dr=ye((Hrr,ene)=>{"use strict";var WS=Oa(),qit=e3().utcFormat,Bit=mO().format,Xie=Eo(),Zie=hs(),Yie=Zie.FP_SAFE,Nit=-Yie,Vie=Zie.BADNUM,Si=ene.exports={};Si.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 Gie={};Si.warnBadFormat=function(e){var t=String(e);Gie[t]||(Gie[t]=1,Si.warn('encountered bad format: "'+t+'"'))};Si.noFormat=function(e){return String(e)};Si.numberFormat=function(e){var t;try{t=Bit(Si.adjustFormat(e))}catch(r){return Si.warnBadFormat(e),Si.noFormat}return t};Si.nestedProperty=CS();Si.keyedContainer=Dee();Si.relativeAttr=zee();Si.isPlainObject=gy();Si.toLogRange=p6();Si.relinkPrivateKeys=Nee();var J1=vv();Si.isArrayBuffer=J1.isArrayBuffer;Si.isTypedArray=J1.isTypedArray;Si.isArrayOrTypedArray=J1.isArrayOrTypedArray;Si.isArray1D=J1.isArray1D;Si.ensureArray=J1.ensureArray;Si.concat=J1.concat;Si.maxRowLength=J1.maxRowLength;Si.minRowLength=J1.minRowLength;var Kie=r3();Si.mod=Kie.mod;Si.modHalf=Kie.modHalf;var $1=ate();Si.valObjectMeta=$1.valObjectMeta;Si.coerce=$1.coerce;Si.coerce2=$1.coerce2;Si.coerceFont=$1.coerceFont;Si.coercePattern=$1.coercePattern;Si.coerceHoverinfo=$1.coerceHoverinfo;Si.coerceSelectionMarkerOpacity=$1.coerceSelectionMarkerOpacity;Si.validate=$1.validate;var jp=hie();Si.dateTime2ms=jp.dateTime2ms;Si.isDateTime=jp.isDateTime;Si.ms2DateTime=jp.ms2DateTime;Si.ms2DateTimeLocal=jp.ms2DateTimeLocal;Si.cleanDate=jp.cleanDate;Si.isJSDate=jp.isJSDate;Si.formatDate=jp.formatDate;Si.incrementMonth=jp.incrementMonth;Si.dateTick0=jp.dateTick0;Si.dfltRange=jp.dfltRange;Si.findExactDates=jp.findExactDates;Si.MIN_MS=jp.MIN_MS;Si.MAX_MS=jp.MAX_MS;var db=P6();Si.findBin=db.findBin;Si.sorterAsc=db.sorterAsc;Si.sorterDes=db.sorterDes;Si.distinctVals=db.distinctVals;Si.roundUp=db.roundUp;Si.sort=db.sort;Si.findIndexOfMin=db.findIndexOfMin;Si.sortObjectKeys=Y1();var by=pie();Si.aggNums=by.aggNums;Si.len=by.len;Si.mean=by.mean;Si.geometricMean=by.geometricMean;Si.median=by.median;Si.midRange=by.midRange;Si.variance=by.variance;Si.stdev=by.stdev;Si.interp=by.interp;var yg=b6();Si.init2dArray=yg.init2dArray;Si.transposeRagged=yg.transposeRagged;Si.dot=yg.dot;Si.translationMatrix=yg.translationMatrix;Si.rotationMatrix=yg.rotationMatrix;Si.rotationXYMatrix=yg.rotationXYMatrix;Si.apply3DTransform=yg.apply3DTransform;Si.apply2DTransform=yg.apply2DTransform;Si.apply2DTransform2=yg.apply2DTransform2;Si.convertCssMatrix=yg.convertCssMatrix;Si.inverseTransformMatrix=yg.inverseTransformMatrix;var vm=xie();Si.deg2rad=vm.deg2rad;Si.rad2deg=vm.rad2deg;Si.angleDelta=vm.angleDelta;Si.angleDist=vm.angleDist;Si.isFullCircle=vm.isFullCircle;Si.isAngleInsideSector=vm.isAngleInsideSector;Si.isPtInsideSector=vm.isPtInsideSector;Si.pathArc=vm.pathArc;Si.pathSector=vm.pathSector;Si.pathAnnulus=vm.pathAnnulus;var d3=bie();Si.isLeftAnchor=d3.isLeftAnchor;Si.isCenterAnchor=d3.isCenterAnchor;Si.isRightAnchor=d3.isRightAnchor;Si.isTopAnchor=d3.isTopAnchor;Si.isMiddleAnchor=d3.isMiddleAnchor;Si.isBottomAnchor=d3.isBottomAnchor;var v3=Aie();Si.segmentsIntersect=v3.segmentsIntersect;Si.segmentDistance=v3.segmentDistance;Si.getTextLocation=v3.getTextLocation;Si.clearLocationCache=v3.clearLocationCache;Si.getVisibleSegment=v3.getVisibleSegment;Si.findPointOnPath=v3.findPointOnPath;var q6=Ao();Si.extendFlat=q6.extendFlat;Si.extendDeep=q6.extendDeep;Si.extendDeepAll=q6.extendDeepAll;Si.extendDeepNoArrays=q6.extendDeepNoArrays;var YO=H1();Si.log=YO.log;Si.warn=YO.warn;Si.error=YO.error;var Uit=n3();Si.counterRegex=Uit.counter;var KO=D6();Si.throttle=KO.throttle;Si.throttleDone=KO.done;Si.clearThrottle=KO.clear;var _g=OS();Si.getGraphDiv=_g.getGraphDiv;Si.isPlotDiv=_g.isPlotDiv;Si.removeElement=_g.removeElement;Si.addStyleRule=_g.addStyleRule;Si.addRelatedStyleRule=_g.addRelatedStyleRule;Si.deleteRelatedStyleRule=_g.deleteRelatedStyleRule;Si.setStyleOnHover=_g.setStyleOnHover;Si.getFullTransformMatrix=_g.getFullTransformMatrix;Si.getElementTransformMatrix=_g.getElementTransformMatrix;Si.getElementAndAncestors=_g.getElementAndAncestors;Si.equalDomRects=_g.equalDomRects;Si.clearResponsive=Eie();Si.preserveDrawingBuffer=Lie();Si.makeTraceGroups=Iie();Si._=Die();Si.notifier=CO();Si.filterUnique=ZO();Si.filterVisible=Oie();Si.pushUnique=PO();Si.increment=Bie();Si.cleanNumber=Uie();Si.ensureNumber=function(t){return Xie(t)?(t=Number(t),t>Yie||t<Nit?Vie:t):Vie};Si.isIndex=function(e,t){return t!==void 0&&e>=t?!1:Xie(e)&&e>=0&&e%1===0};Si.noop=x6();Si.identity=VS();Si.repeat=function(e,t){for(var r=new Array(t),n=0;n<t;n++)r[n]=e;return r};Si.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=Si.nestedProperty(e,a.replace("?",r)),s=Si.nestedProperty(e,a.replace("?",n)),l=o.get();o.set(s.get()),s.set(l)}};Si.raiseToTop=function(t){t.parentNode.appendChild(t)};Si.cancelTransition=function(e){return e.transition().duration(0)};Si.constrain=function(e,t,r){return t>r?Math.max(r,Math.min(t,e)):Math.max(t,Math.min(r,e))};Si.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};Si.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};Si.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?(Si.warn("randstr failed uniqueness"),o):e(t,r,n,(i||0)+1):o};Si.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};Si.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};Si.syncOrAsync=function(e,t,r){var n,i;function a(){return Si.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)};Si.stripTrailingSlash=function(e){return e.substr(-1)==="/"?e.substr(0,e.length-1):e};Si.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]]}};Si.mergeArray=function(e,t,r,n){var i=typeof n=="function";if(Si.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}};Si.mergeArrayCastPositive=function(e,t,r){return Si.mergeArray(e,t,r,function(n){var i=+n;return isFinite(i)&&i>0?i:0})};Si.fillArray=function(e,t,r,n){if(n=n||Si.identity,Si.isArrayOrTypedArray(e))for(var i=0;i<t.length;i++)t[i][r]=n(e[i])};Si.castOption=function(e,t,r,n){n=n||Si.identity;var i=Si.nestedProperty(e,r).get();return Si.isArrayOrTypedArray(i)?Array.isArray(t)&&Si.isArrayOrTypedArray(i[t[0]])?n(i[t[0]][t[1]]):n(i[t]):i};Si.extractOption=function(e,t,r,n){if(r in e)return e[r];var i=Si.nestedProperty(t,n).get();if(!Array.isArray(i))return i};function Jie(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}Si.tagSelected=function(e,t,r){var n=t.selectedpoints,i=t._indexToPoints,a;i&&(a=Jie(i));function o(f){return f!==void 0&&f<e.length}for(var s=0;s<n.length;s++){var l=n[s];if(Si.isIndex(l)||Si.isArrayOrTypedArray(l)&&Si.isIndex(l[0])&&Si.isIndex(l[1])){var u=a?a[l]:l,c=r?r[u]:u;o(c)&&(e[c].selected=1)}}};Si.selIndices2selPoints=function(e){var t=e.selectedpoints,r=e._indexToPoints;if(r){for(var n=Jie(r),i=[],a=0;a<t.length;a++){var o=t[a];if(Si.isIndex(o)){var s=n[o];Si.isIndex(s)&&i.push(s)}}return i}else return t};Si.getTargetArray=function(e,t){var r=t.target;if(typeof r=="string"&&r){var n=Si.nestedProperty(e,r).get();return Si.isArrayOrTypedArray(n)?n:!1}else if(Si.isArrayOrTypedArray(r))return r;return!1};function $ie(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):Si.isTypedArray(l)?i===-1?n[s]=l.subarray():n[s]=l.subarray(0,i):l&&typeof l=="object"?n[s]=$ie(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}Si.minExtend=$ie;Si.titleCase=function(e){return e.charAt(0).toUpperCase()+e.substr(1)};Si.containsAny=function(e,t){for(var r=0;r<t.length;r++)if(e.indexOf(t[r])!==-1)return!0;return!1};var Vit=/Version\/[\d\.]+.*Safari/;Si.isSafari=function(){return Vit.test(window.navigator.userAgent)};var Git=/iPad|iPhone|iPod/;Si.isIOS=function(){return Git.test(window.navigator.userAgent)};var Hit=/Macintosh.+AppleWebKit.+Gecko\)$/;Si.isMacWKWebView=()=>Hit.test(window.navigator.userAgent);var jit=/Firefox\/(\d+)\.\d+/;Si.getFirefoxVersion=function(){var e=jit.exec(window.navigator.userAgent);if(e&&e.length===2){var t=parseInt(e[1]);if(!isNaN(t))return t}return null};Si.isD3Selection=function(e){return e instanceof WS.selection};Si.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};Si.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};Si.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 Wit=/^([^\[\.]+)\.(.+)?/,Xit=/^([^\.]+)\[([0-9]+)\](\.)?(.+)?/;function z6(e){return e.slice(0,2)==="__"}Si.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(Wit)){if(i=e[r],n=t[1],z6(n))continue;delete e[r],e[n]=Si.extendDeepNoArrays(e[n]||{},Si.objectFromPath(r,Si.expandObjectPaths(i))[n])}else if(t=r.match(Xit)){if(i=e[r],n=t[1],z6(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]||{},Si.extendDeepNoArrays(o,Si.objectFromPath(s,Si.expandObjectPaths(i)));else{if(z6(n))continue;e[n][a]=Si.expandObjectPaths(i)}}else{if(z6(r))continue;e[r]=Si.expandObjectPaths(e[r])}}return e};Si.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};Si.TEMPLATE_STRING_REGEX=/%{([^\s%{}:]*)([:|\|][^}]*)?}/g;var Qie=/^\w*$/;Si.templateString=function(e,t){var r={};return e.replace(Si.TEMPLATE_STRING_REGEX,function(n,i){var a;return Qie.test(i)?a=t[i]:(r[i]=r[i]||Si.nestedProperty(t,i).get,a=r[i](!0)),a!==void 0?a:""})};var Zit={max:10,count:0,name:"hovertemplate"};Si.hovertemplateString=function(){return JO.apply(Zit,arguments)};var Yit={max:10,count:0,name:"texttemplate"};Si.texttemplateString=function(){return JO.apply(Yit,arguments)};var Kit=/^(\S+)([\*\/])(-?\d+(\.\d+)?)$/;function Jit(e){var t=e.match(Kit);return t?{key:t[1],op:t[2],number:Number(t[3])}:{key:e,op:null,number:null}}var $it={max:10,count:0,name:"texttemplate",parseMultDiv:!0};Si.texttemplateStringForShapes=function(){return JO.apply($it,arguments)};var Hie=/^[:|\|]/;function JO(e,t,r){var n=this,i=arguments;return t||(t={}),e.replace(Si.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=Jit(d);d=b.key,v=b.op,x=b.number}var p;if(h){if(p=t[d],p===void 0)return""}else{var C,E;for(E=3;E<i.length;E++)if(C=i[E],!!C){if(C.hasOwnProperty(d)){p=C[d];break}if(Qie.test(d)||(p=Si.nestedProperty(C,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&&(Si.warn("Variable '"+d+"' in "+n.name+" could not be found!"),p=a),n.count===n.max&&Si.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:Si.numberFormat,p!==""&&(p=A(s.replace(Hie,""))(p))),s[0]==="|"){A=r?r.timeFormat:qit;var L=Si.dateTime2ms(p);p=Si.formatDate(L,s.replace(Hie,""),!1,A)}}else{var _=d+"Label";t.hasOwnProperty(_)&&(p=t[_])}return h&&(p="("+p+")",(u||c)&&(p=" "+p),(f||c)&&(p=p+" ")),p})}var O6=48,jie=57;Si.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>=O6&&o<=jie,u=s>=O6&&s<=jie;if(l&&(n=10*n+o-O6),u&&(i=10*i+s-O6),!l||!u){if(n!==i)return n-i;if(o!==s)return o-s}}return i-n};var h3=2e9;Si.seedPseudoRandom=function(){h3=2e9};Si.pseudoRandom=function(){var e=h3;return h3=(69069*h3+1)%4294967296,Math.abs(h3-e)<429496729?Si.pseudoRandom():h3/4294967296};Si.fillText=function(e,t,r){var n=Array.isArray(r)?function(o){r.push(o)}:function(o){r.text=o},i=Si.extractOption(e,t,"htx","hovertext");if(Si.isValidTextValue(i))return n(i);var a=Si.extractOption(e,t,"tx","text");if(Si.isValidTextValue(a))return n(a)};Si.isValidTextValue=function(e){return e||e===0};Si.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};Si.isHidden=function(e){var t=window.getComputedStyle(e).display;return!t||t==="none"};Si.strTranslate=function(e,t){return e||t?"translate("+e+","+t+")":""};Si.strRotate=function(e){return e?"rotate("+e+")":""};Si.strScale=function(e){return e!==1?"scale("+e+")":""};Si.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,Si.strTranslate(i-u*(r+o),a-u*(n+s))+Si.strScale(u)+(l?"rotate("+l+(t?"":" "+r+" "+n)+")":"")};Si.setTransormAndDisplay=function(e,t){e.attr("transform",Si.getTextTransform(t)),e.style("display",t.scale?null:"none")};Si.ensureUniformFontSize=function(e,t){var r=Si.extendFlat({},t);return r.size=Math.max(t.size,e._fullLayout.uniformtext.minsize||0),r};Si.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)};Si.bigFont=function(e){return Math.round(1.2*e)};var Wie=Si.getFirefoxVersion(),Qit=Wie!==null&&Wie<86;Si.getPositionFromD3Event=function(){return Qit?[WS.event.layerX,WS.event.layerY]:[WS.event.offsetX,WS.event.offsetY]}});var ine=ye(()=>{"use strict";var ent=Dr(),tne={"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:focus-within .modebar--hover .modebar-group":"opacity:1;","X .modebar-group":"float:left;display:inline-block;box-sizing:border-box;padding-left:8px;position:relative;vertical-align:middle;white-space:nowrap;","X .modebar-group a":"display:grid;place-content:center;","X .modebar-btn":"position:relative;font-size:16px;padding:3px 4px;height:22px;cursor:pointer;line-height:normal;box-sizing:border-box;border:none;background:rgba(0,0,0,0);","X .modebar-btn svg":"position:relative;","X .modebar-btn:focus-visible":"outline:1px solid #000;outline-offset:1px;border-radius:3px;","X .modebar.vertical":"display:flex;flex-direction:column;flex-wrap:wrap;align-content:flex-end;max-height:100%;","X .modebar.vertical svg":"top:-1px;","X .modebar.vertical .modebar-group":"display:block;float:none;padding-left:0px;padding-bottom:8px;","X .modebar.vertical .modebar-group .modebar-btn":"display:block;text-align:center;","X [data-title]:before,X [data-title]:after":"position:absolute;-webkit-transform:translate3d(0, 0, 0);-moz-transform:translate3d(0, 0, 0);-ms-transform:translate3d(0, 0, 0);-o-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);display:none;opacity:0;z-index:1001;pointer-events:none;top:110%;right:50%;","X [data-title]:hover:before,X [data-title]:hover:after":"display:block;opacity:1;","X [data-title]:before":'content:"";position:absolute;background:rgba(0,0,0,0);border:6px solid rgba(0,0,0,0);z-index:1002;margin-top:-12px;border-bottom-color:#69738a;margin-right:-6px;',"X [data-title]:after":"content:attr(data-title);background:#69738a;color:#fff;padding:8px 10px;font-size:12px;line-height:12px;white-space:nowrap;margin-right:-18px;border-radius:2px;","X .vertical [data-title]:before,X .vertical [data-title]:after":"top:0%;right:200%;","X .vertical [data-title]:before":"border:6px solid rgba(0,0,0,0);border-left-color:#69738a;margin-top:8px;margin-right:-30px;",Y:'font-family:"Open Sans",verdana,arial,sans-serif;position:fixed;top:50px;right:20px;z-index:10000;font-size:10pt;max-width:180px;',"Y p":"margin:0;","Y .notifier-note":"min-width:180px;max-width:250px;border:1px solid #fff;z-index:3000;margin:0;background-color:#8c97af;background-color:rgba(140,151,175,.9);color:#fff;padding:10px;overflow-wrap:break-word;word-wrap:break-word;-ms-hyphens:auto;-webkit-hyphens:auto;hyphens:auto;","Y .notifier-close":"color:#fff;opacity:.8;float:right;padding:0 5px;background:none;border:none;font-size:20px;font-weight:bold;line-height:20px;","Y .notifier-close:hover":"color:#444;text-decoration:none;cursor:pointer;"};for($O in tne)rne=$O.replace(/^,/," ,").replace(/X/g,".js-plotly-plot .plotly").replace(/Y/g,".plotly-notifier"),ent.addStyleRule(rne,tne[$O]);var rne,$O});var QO=ye((Xrr,nne)=>{nne.exports=!0});var tq=ye((Zrr,ane)=>{"use strict";var tnt=QO(),eq;typeof window.matchMedia=="function"?eq=!window.matchMedia("(hover: none)").matches:eq=tnt;ane.exports=eq});var vb=ye((Yrr,rq)=>{"use strict";var p3=typeof Reflect=="object"?Reflect:null,one=p3&&typeof p3.apply=="function"?p3.apply:function(t,r,n){return Function.prototype.apply.call(t,r,n)},B6;p3&&typeof p3.ownKeys=="function"?B6=p3.ownKeys:Object.getOwnPropertySymbols?B6=function(t){return Object.getOwnPropertyNames(t).concat(Object.getOwnPropertySymbols(t))}:B6=function(t){return Object.getOwnPropertyNames(t)};function rnt(e){console&&console.warn&&console.warn(e)}var lne=Number.isNaN||function(t){return t!==t};function Jc(){Jc.init.call(this)}rq.exports=Jc;rq.exports.once=ont;Jc.EventEmitter=Jc;Jc.prototype._events=void 0;Jc.prototype._eventsCount=0;Jc.prototype._maxListeners=void 0;var sne=10;function N6(e){if(typeof e!="function")throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof e)}Object.defineProperty(Jc,"defaultMaxListeners",{enumerable:!0,get:function(){return sne},set:function(e){if(typeof e!="number"||e<0||lne(e))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+e+".");sne=e}});Jc.init=function(){(this._events===void 0||this._events===Object.getPrototypeOf(this)._events)&&(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0};Jc.prototype.setMaxListeners=function(t){if(typeof t!="number"||t<0||lne(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 une(e){return e._maxListeners===void 0?Jc.defaultMaxListeners:e._maxListeners}Jc.prototype.getMaxListeners=function(){return une(this)};Jc.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")one(l,this,r);else for(var u=l.length,c=vne(l,u),n=0;n<u;++n)one(c[n],this,r);return!0};function cne(e,t,r,n){var i,a,o;if(N6(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=une(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,rnt(s)}return e}Jc.prototype.addListener=function(t,r){return cne(this,t,r,!1)};Jc.prototype.on=Jc.prototype.addListener;Jc.prototype.prependListener=function(t,r){return cne(this,t,r,!0)};function int(){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 fne(e,t,r){var n={fired:!1,wrapFn:void 0,target:e,type:t,listener:r},i=int.bind(n);return i.listener=r,n.wrapFn=i,i}Jc.prototype.once=function(t,r){return N6(r),this.on(t,fne(this,t,r)),this};Jc.prototype.prependOnceListener=function(t,r){return N6(r),this.prependListener(t,fne(this,t,r)),this};Jc.prototype.removeListener=function(t,r){var n,i,a,o,s;if(N6(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():nnt(n,a),n.length===1&&(i[t]=n[0]),i.removeListener!==void 0&&this.emit("removeListener",t,s||r)}return this};Jc.prototype.off=Jc.prototype.removeListener;Jc.prototype.removeAllListeners=function(t){var r,n,i;if(n=this._events,n===void 0)return this;if(n.removeListener===void 0)return arguments.length===0?(this._events=Object.create(null),this._eventsCount=0):n[t]!==void 0&&(--this._eventsCount===0?this._events=Object.create(null):delete n[t]),this;if(arguments.length===0){var a=Object.keys(n),o;for(i=0;i<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 hne(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?ant(i):vne(i,i.length)}Jc.prototype.listeners=function(t){return hne(this,t,!0)};Jc.prototype.rawListeners=function(t){return hne(this,t,!1)};Jc.listenerCount=function(e,t){return typeof e.listenerCount=="function"?e.listenerCount(t):dne.call(e,t)};Jc.prototype.listenerCount=dne;function dne(e){var t=this._events;if(t!==void 0){var r=t[e];if(typeof r=="function")return 1;if(r!==void 0)return r.length}return 0}Jc.prototype.eventNames=function(){return this._eventsCount>0?B6(this._events):[]};function vne(e,t){for(var r=new Array(t),n=0;n<t;++n)r[n]=e[n];return r}function nnt(e,t){for(;t+1<e.length;t++)e[t]=e[t+1];e.pop()}function ant(e){for(var t=new Array(e.length),r=0;r<t.length;++r)t[r]=e[r].listener||e[r];return t}function ont(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))}pne(e,t,a,{once:!0}),t!=="error"&&snt(e,i,{once:!0})})}function snt(e,t,r){typeof e.on=="function"&&pne(e,"error",t,r)}function pne(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((Krr,gne)=>{"use strict";var iq=vb().EventEmitter,lnt={init:function(e){if(e._ev instanceof iq)return e;var t=new iq,r=new iq;return e._ev=t,e._internalEv=r,e.on=t.on.bind(t),e.once=t.once.bind(t),e.removeListener=t.removeListener.bind(t),e.removeAllListeners=t.removeAllListeners.bind(t),e._internalOn=r.on.bind(r),e._internalOnce=r.once.bind(r),e._removeInternalListener=r.removeListener.bind(r),e._removeAllInternalListeners=r.removeAllListeners.bind(r),e.emit=function(n,i){t.emit(n,i),r.emit(n,i)},typeof e.addEventListener=="function"&&e.addEventListener("wheel",()=>{}),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}};gne.exports=lnt});var _ne=ye((Jrr,yne)=>{"use strict";var mne=Dr(),unt=ub().dfltConfig;function cnt(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)?mne.extendDeep([],n):mne.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>unt.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=cnt(e,r),t.apply(null,r)};yne.exports=wy});var nq=ye(($rr,xne)=>{"use strict";xne.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(Yh=>{"use strict";var x0=qa(),XS=Dr(),V6=Vl(),aq=s3(),fnt=nq(),hnt=qS(),dnt=ub().configAttributes,bne=mc(),xg=XS.extendDeepAll,m3=XS.isPlainObject,vnt=XS.isArrayOrTypedArray,G6=XS.nestedProperty,pnt=XS.valObjectMeta,oq="_isSubplotObj",H6="_isLinkedToArray",gnt="_arrayAttrRegexps",Tne="_deprecated",sq=[oq,H6,gnt,Tne];Yh.IS_SUBPLOT_OBJ=oq;Yh.IS_LINKED_TO_ARRAY=H6;Yh.DEPRECATED=Tne;Yh.UNDERSCORE_ATTRS=sq;Yh.get=function(){var e={};return x0.allTypes.forEach(function(t){e[t]=ynt(t)}),{defs:{valObjects:pnt,metaKeys:sq.concat(["description","role","editType","impliedEdits"]),editType:{traces:bne.traces,layout:bne.layout},impliedEdits:{}},traces:e,layout:_nt(),frames:xnt(),animation:y3(hnt),config:y3(dnt)}};Yh.crawl=function(e,t,r,n){var i=r||0;n=n||"",Object.keys(e).forEach(function(a){var o=e[a];if(sq.indexOf(a)===-1){var s=(n?n+".":"")+a;t(o,a,e,i,s),!Yh.isValObject(o)&&m3(o)&&a!=="impliedEdits"&&Yh.crawl(o,t,i+1,s)}})};Yh.isValObject=function(e){return e&&e.valType!==void 0};Yh.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)vnt(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="",Yh.crawl(V6,o),e._module&&e._module.attributes&&Yh.crawl(e._module.attributes,o),t};Yh.getTraceValObject=function(e,t){var r=t[0],n=1,i,a,o=e._module;if(o||(o=(x0.modules[e.type||V6.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=V6[r]),Ane(a,t,n)};Yh.getLayoutValObject=function(e,t){var r=mnt(e,t[0]);return Ane(r,t,1)};function mnt(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 aq?aq[t]:!1}function Ane(e,t,r){if(!e)return!1;if(e._isLinkedToArray){if(U6(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++,!U6(t[r]))return!1}else if(e.valType==="info_array"){r++;var i=t[r];if(!U6(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(!U6(o))return!1;e=a[i][o]}else e=a[i]}else e=a}}return e}function U6(e){return e===Math.round(e)&&e>=0}function ynt(e){var t,r;t=x0.modules[e]._module,r=t.basePlotModule;var n={};n.type=null;var i=xg({},V6),a=xg({},t.attributes);Yh.crawl(a,function(l,u,c,f,h){G6(i,h).set(void 0),l===void 0&&G6(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||Yh.crawl(o,function(l){Yh.isValObject(l)&&"anim"in l&&delete l.anim}),o}function _nt(){var e={},t,r;xg(e,aq);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++)wne(e,r,r.attr[n]);else{var i=r.attr==="subplot"?r.name:r.attr;wne(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&&Ant(e,r.layoutAttributes,r.name)}return{layoutAttributes:y3(e)}}function xnt(){var e={frames:xg({},fnt)};return y3(e),e.frames}function y3(e){return bnt(e),wnt(e),Tnt(e),e}function bnt(e){function t(n){return{valType:"string",editType:"none"}}function r(n,i,a){Yh.isValObject(n)?(n.arrayOk===!0||n.valType==="data_array")&&(a[i+"src"]=t(i)):m3(n)&&(n.role="object")}Yh.crawl(e,r)}function wnt(e){function t(r,n,i){if(r){var a=r[H6];a&&(delete r[H6],i[n]={items:{}},i[n].items[a]=r,i[n].role="object")}}Yh.crawl(e,t)}function Tnt(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 wne(e,t,r){var n=G6(e,r),i=xg({},t.layoutAttributes);i[oq]=!0,n.set(i)}function Ant(e,t,r){var n=G6(e,r);n.set(xg(n.get()||{},t))}});var pl=ye(pb=>{"use strict";var x3=Dr(),Snt=Vl(),Q1="templateitemname",lq={name:{valType:"string",editType:"none"}};lq[Q1]={valType:"string",editType:"calc"};pb.templatedArray=function(e,t){return t._isLinkedToArray=e,t.name=lq.name,t[Q1]=lq[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,{},Snt,"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[Mne(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(!Sne(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(Sne(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 Sne(e){return e&&typeof e=="string"}function Mne(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=Mne;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 hd=ye((tir,Ene)=>{"use strict";var ZS=n3().counter;Ene.exports={idRegex:{x:ZS("x","( domain)?"),y:ZS("y","( domain)?")},attrRegex:ZS("[xy]axis"),xAxisMatch:ZS("xaxis"),yAxisMatch:ZS("yaxis"),AX_ID_PATTERN:/^[xyz][0-9]*( domain)?$/,AX_NAME_PATTERN:/^[xyz]axis[0-9]*$/,SUBPLOT_PATTERN:/^x([0-9]*)y([0-9]*)$/,HOUR_PATTERN:"hour",WEEKDAY_PATTERN:"day of week",MINDRAG:8,MINZOOM:20,DRAGGERSIZE:20,REDRAWDELAY:50,DFLTRANGEX:[-1,6],DFLTRANGEY:[-1,4],traceLayerClasses:["imagelayer","heatmaplayer","contourcarpetlayer","contourlayer","funnellayer","waterfalllayer","barlayer","carpetlayer","violinlayer","boxlayer","ohlclayer","scattercarpetlayer","scatterlayer"],clipOnAxisFalseQuery:[".scatterlayer",".barlayer",".funnellayer",".waterfalllayer"],layerValue2layerClass:{"above traces":"above","below traces":"below"},zindexSeparator:"z"}});var hf=ye(wp=>{"use strict";var Mnt=qa(),uq=hd();wp.id2name=function(t){if(!(typeof t!="string"||!t.match(uq.AX_ID_PATTERN))){var r=t.split(" ")[0].substr(1);return r==="1"&&(r=""),t.charAt(0)+"axis"+r}};wp.name2id=function(t){if(t.match(uq.AX_NAME_PATTERN)){var r=t.substr(5);return r==="1"&&(r=""),t.charAt(0)+r}};wp.cleanId=function(t,r,n){var i=/( domain)$/.test(t);if(!(typeof t!="string"||!t.match(uq.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":"")}};wp.list=function(e,t,r){var n=e._fullLayout;if(!n)return[];var i=wp.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};wp.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)};wp.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[wp.id2name(t)]};wp.getFromTrace=function(e,t,r){var n=e._fullLayout,i=null;if(Mnt.traceIs(t,"gl3d")){var a=t.scene;a.substr(0,5)==="scene"&&(i=n[a][r+"axis"])}else i=wp.getFromId(e,t[r+"axis"]||r);return i};wp.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)};wp.ref2id=function(e){return/^[xyz]/.test(e)?e.split(" ")[0]:!1};function Cne(e,t){if(t&&t.length){for(var r=0;r<t.length;r++)if(t[r][e])return!0}return!1}wp.isLinked=function(e,t){return Cne(t,e._axisMatchGroups)||Cne(t,e._axisConstraintGroups)}});var e_=ye((iir,kne)=>{"use strict";function Ent(e){var t=e._fullLayout._zoomlayer;t&&t.selectAll(".outline-controllers").remove()}function Cnt(e){var t=e._fullLayout._zoomlayer;t&&t.selectAll(".select-outline").remove(),e._fullLayout._outlining=!1}kne.exports={clearOutlineControllers:Ent,clearOutline:Cnt}});var j6=ye((nir,Lne)=>{"use strict";Lne.exports={scattermode:{valType:"enumerated",values:["group","overlay"],dflt:"overlay",editType:"calc"},scattergap:{valType:"number",min:0,max:1,editType:"calc"}}});var Id=ye(X6=>{"use strict";var W6=qa(),air=hd().SUBPLOT_PATTERN;X6.getSubplotCalcData=function(e,t,r){var n=W6.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};X6.getModuleCalcData=function(e,t,r){var n=[],i=[],a;if(typeof t=="string"?a=W6.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]};X6.getSubplotData=function(t,r,n){if(!W6.subplotsRegistry[r])return[];for(var i=W6.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 Dne=ye(gb=>{"use strict";var knt=qa(),b3=Dr();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){Pne(e,o,i.cache),i.check=function(){if(a){var c=Pne(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 Pne(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=knt.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=Rne(e,r);break;case"relayout":n=Ine(e,r);break;case"update":n=Rne(e,[r[0],r[2]]).concat(Ine(e,[r[1]]));break;case"animate":n=Lnt(e,r);break;default:n=[]}return n};function Lnt(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 Ine(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 cq(i,function(a,o,s){r.push({type:"layout",prop:a,value:s})},"",0),r}function Rne(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),cq(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 cq(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)?cq(a,t,o,n+1):t(o,i,a)}})}});var Mc=ye((lir,Zne)=>{"use strict";var Une=Oa(),Pnt=e3().timeFormatLocale,Int=mO().formatLocale,YS=Eo(),Rnt=yO(),Xl=qa(),Vne=_3(),Dnt=pl(),ja=Dr(),Gne=Ca(),Fne=hs().BADNUM,Tp=hf(),Fnt=e_().clearOutline,znt=j6(),fq=qS(),Ont=nq(),qnt=Id().getModuleCalcData,zne=ja.relinkPrivateKeys,mb=ja._,ba=Zne.exports={};ja.extendFlat(ba,Xl);ba.attributes=Vl();ba.attributes.type.values=ba.allTypes;ba.fontAttrs=ec();ba.layoutAttributes=s3();var Y6=Dne();ba.executeAPICommand=Y6.executeAPICommand;ba.computeAPICommandBindings=Y6.computeAPICommandBindings;ba.manageCommandObserver=Y6.manageCommandObserver;ba.hasSimpleAPICommandBindings=Y6.hasSimpleAPICommandBindings;ba.redrawText=function(e){return e=ja.getGraphDiv(e),new Promise(function(t){setTimeout(function(){e._fullLayout&&(Xl.getComponentMethod("annotations","draw")(e),Xl.getComponentMethod("legend","draw")(e),Xl.getComponentMethod("colorbar","draw")(e),t(ba.previousPromises(e)))},300)})};ba.resize=function(e){e=ja.getGraphDiv(e);var t,r=new Promise(function(n,i){(!e||ja.isHidden(e))&&i(new Error("Resize must be passed a displayed plot div element.")),e._redrawTimer&&clearTimeout(e._redrawTimer),e._resolveResize&&(t=e._resolveResize),e._resolveResize=n,e._redrawTimer=setTimeout(function(){if(!e.layout||e.layout.width&&e.layout.height||ja.isHidden(e)){n(e);return}delete e.layout.width,delete e.layout.height;var a=e.changed;e.autoplay=!0,Xl.call("relayout",e,{autosize:!0}).then(function(){e.changed=a,e._resolveResize===n&&(delete e._resolveResize,n(e))})},100)});return t&&t(r),r};ba.previousPromises=function(e){if((e._promises||[]).length)return Promise.all(e._promises).then(function(){e._promises=[]})};ba.addLinks=function(e){if(!(!e._context.showLink&&!e._context.showSources)){var t=e._fullLayout,r=ja.ensureSingle(t._paper,"text","js-plot-link-container",function(l){l.style({"font-family":'"Open Sans", Arial, sans-serif',"font-size":"12px",fill:Gne.defaultLine,"pointer-events":"all"}).each(function(){var u=Une.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&&Bnt(e,a),o.text(a.text()&&s.text()?" - ":"")}};function Bnt(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(){ba.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})}}ba.sendDataToCloud=function(e){var t=(window.PLOTLYENV||{}).BASE_URL||e._context.plotlyServerURL;if(t){e.emit("plotly_beforeexport");var r=Une.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=ba.graphJson(e,!1,"keepdata"),n.node().submit(),r.remove(),e.emit("plotly_afterexport"),!1}};var Nnt=["days","shortDays","months","shortMonths","periods","dateTime","date","time","decimal","thousands","grouping","currency"],Unt=["year","month","dayMonth","dayMonthYear"];ba.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||ba.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=One(e,Nnt);if(i._mapboxAccessToken=c.mapboxAccessToken,n._initialAutoSizeIsDone){var d=n.width,v=n.height;ba.supplyLayoutGlobalDefaults(a,i,h),a.width||(i.width=d),a.height||(i.height=v),ba.sanitizeMargins(i)}else{ba.supplyLayoutGlobalDefaults(a,i,h);var x=!a.width||!a.height,b=i.autosize,p=c.autosizable,C=x&&(b||p);C?ba.plotAutoSize(e,a,i):x&&ba.sanitizeMargins(i),!b&&x&&(a.width=i.width,a.height=i.height)}i._d3locale=Hnt(h,i.separators),i._extraFormat=One(e,Unt),i._initialAutoSizeIsDone=!0,i._dataLength=l.length,i._modules=[],i._visibleModules=[],i._basePlotModules=[];var E=i._subplots=Gnt(),A=i._splomAxes={x:{},y:{}},L=i._splomSubplots={};i._splomGridDflt={},i._scatterStackOpts={},i._firstScatter={},i._alignmentOpts={},i._colorAxes={},i._requestRangeslider={},i._traceUids=Vnt(o,l),ba.supplyDataDefaults(l,s,a,i);var _=Object.keys(A.x),k=Object.keys(A.y);if(_.length>1&&k.length>1){for(Xl.getComponentMethod("grid","sizeDefaults")(a,i),f=0;f<_.length;f++)ja.pushUnique(E.xaxis,_[f]);for(f=0;f<k.length;f++)ja.pushUnique(E.yaxis,k[f]);for(var M in L)ja.pushUnique(E.cartesian,M)}if(i._has=ba._hasPlotType.bind(i),o.length===s.length)for(f=0;f<s.length;f++)zne(s[f],o[f]);ba.supplyLayoutModuleDefaults(a,i,s,e._transitionData);var g=i._visibleModules,P=[];for(f=0;f<g.length;f++){var T=g[f].crossTraceDefaults;T&&ja.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&&k.length>15&&i.shapes.length===0&&i.images.length===0,ba.linkSubplots(s,i,o,n),ba.cleanPlot(s,i,o,n);var z=!!(n._has&&n._has("cartesian")),O=!!(i._has&&i._has("cartesian")),V=z,G=O;V&&!G?n._bgLayer.remove():G&&!V&&(i._shouldCreateBgLayer=!0),n._zoomlayer&&!e._dragging&&Fnt({_fullLayout:n}),jnt(s,i),zne(i,n),Xl.getComponentMethod("colorscale","crossTraceDefaults")(s,i),i._preGUI||(i._preGUI={}),i._tracePreGUI||(i._tracePreGUI={});var Z=i._tracePreGUI,H={},N;for(N in Z)H[N]="old";for(f=0;f<s.length;f++)N=s[f]._fullInput.uid,H[N]||(Z[N]={}),H[N]="new";for(N in H)H[N]==="old"&&delete Z[N];Hne(i),Xl.getComponentMethod("rangeslider","makeData")(i),!r&&u.length===s.length&&ba.supplyDefaultsUpdateCalc(u,s)};ba.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=ja.nestedProperty(a,l).get().slice(),ja.nestedProperty(n,l).set(u)}i.trace=n}}};function Vnt(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(ja.randstr(u),i))}return l}function Gnt(){var e=Xl.collectableSubplotTypes,t={},r,n;if(!e){e=[];var i=Xl.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++)ja.pushUnique(e,s[n])}}for(r=0;r<e.length;r++)t[e[r]]=[];return t}function One(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=Xl.localeRegistry}var c=r.split("-")[0];if(n||c===r)break;r=c}return n||a(Xl.localeRegistry.en.format),i}function Hnt(e,t){return e.decimal=t.charAt(0),e.thousands=t.charAt(1),{numberFormat:function(r){try{r=Int(e).format(ja.adjustFormat(r))}catch(n){return ja.warnBadFormat(r),ja.noFormat}return r},timeFormat:Pnt(e).utcFormat}}function jnt(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)}ba.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=[])};ba._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=Xl.modules[i];if(a&&a.categories[e])return!0}return!1};ba.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()}};ba.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=Tp.getFromId(u,f,"x"),v=Tp.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=Tp.list(u,null,!0),C;for(i=0;i<p.length;i++){C=p[i];var E=null;C.overlaying&&(E=Tp.getFromId(u,C.overlaying),E&&E.overlaying&&(C.overlaying=!1,E=null)),C._mainAxis=E||C,E&&(C.domain=E.domain.slice()),C._anchorAxis=C.anchor==="free"?null:Tp.getFromId(u,C.anchor)}for(i=0;i<p.length;i++)if(C=p[i],C._counterAxes.sort(Tp.idSort),C._subplotsWith.sort(ja.subplotSort),C._mainSubplot=Wnt(C,t),C._counterAxes.length&&(C.spikemode&&C.spikemode.indexOf("across")!==-1||C.automargin&&C.mirror&&C.anchor!=="free"||Xl.getComponentMethod("rangeslider","isVisible")(C))){var A=1,L=0;for(a=0;a<C._counterAxes.length;a++){var _=Tp.getFromId(u,C._counterAxes[a]);A=Math.min(A,_.domain[0]),L=Math.max(L,_.domain[1])}A<L&&(C._counterDomainMin=A,C._counterDomainMax=L)}};function Wnt(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=Tp.getFromId(r,c);if(s&&h.overlaying===s){a=f;break}}}return a||o}ba.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=[],Vne.crawl(e._module.attributes,i)),n=0;n<t.length;n++){var a=ja.nestedProperty(e,"_input."+t[n]);a.get()||ja.nestedProperty(e,t[n]).set(null)}};ba.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(C){t.push(C);var E=C._module;E&&(ja.pushUnique(i,E),C.visible===!0&&ja.pushUnique(a,E),ja.pushUnique(o,C._module.basePlotModule),s++,C._input.visible!==!1&&l++)}var d={},v=[],x=(r.template||{}).data||{},b=Dnt.traceTemplater(x);for(u=0;u<e.length;u++)f=e[u],c=b.newTrace(f),c.uid=n._traceUids[u],ba.supplyTraceDefaults(f,c,l,n,u),c.index=u,c._input=f,c._fullInput=c,h(c),Xl.traceIs(c,"carpetAxis")&&(d[c.carpet]=c),Xl.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}};ba.supplyAnimationDefaults=function(e){e=e||{};var t,r={};function n(i,a){return ja.coerce(e||{},r,fq,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]=ba.supplyAnimationFrameDefaults(e.frame[t]||{});else r.frame=ba.supplyAnimationFrameDefaults(e.frame||{});if(Array.isArray(e.transition))for(r.transition=[],t=0;t<e.transition.length;t++)r.transition[t]=ba.supplyAnimationTransitionDefaults(e.transition[t]||{});else r.transition=ba.supplyAnimationTransitionDefaults(e.transition||{});return r};ba.supplyAnimationFrameDefaults=function(e){var t={};function r(n,i){return ja.coerce(e||{},t,fq.frame,n,i)}return r("duration"),r("redraw"),t};ba.supplyAnimationTransitionDefaults=function(e){var t={};function r(n,i){return ja.coerce(e||{},t,fq.transition,n,i)}return r("duration"),r("easing"),t};ba.supplyFrameDefaults=function(e){var t={};function r(n,i){return ja.coerce(e,t,Ont,n,i)}return r("group"),r("name"),r("traces"),r("baseframe"),r("data"),r("layout"),t};ba.supplyTraceDefaults=function(e,t,r,n,i){var a=n.colorway||Gne.defaults,o=a[r%a.length],s;function l(E,A){return ja.coerce(e,t,ba.attributes,E,A)}var u=l("visible");l("type"),l("name",n._traceWord+" "+i),l("uirevision",n.uirevision);var c=ba.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=ja.coerce(e,t,d,b);v[b]&&ja.pushUnique(v[b],p),x+=p}else x=ja.coerce(e,t,d,h);v[f.name]&&ja.pushUnique(v[f.name],x)}}if(u&&(l("customdata"),l("ids"),l("meta"),Xl.traceIs(t,"showLegend")?(ja.coerce(e,t,c.attributes.showlegend?c.attributes:ba.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),Xl.traceIs(t,"noOpacity")||l("opacity"),Xl.traceIs(t,"notLegendIsolatable")&&(t.visible=!!t.visible),Xl.traceIs(t,"noHover")||(t.hovertemplate||ja.coerceHoverinfo(e,t,n),t.type!=="parcats"&&Xl.getComponentMethod("fx","supplyDefaults")(e,t,o,n)),c&&c.selectPoints)){var C=l("selectedpoints");ja.isTypedArray(C)&&(t.selectedpoints=Array.from(C))}return t};ba.supplyLayoutGlobalDefaults=function(e,t,r){function n(f,h){return ja.coerce(e,t,ba.layoutAttributes,f,h)}var i=e.template;ja.isPlainObject(i)&&(t.template=i,t._template=i.layout,t._dataTemplate=i.data),n("autotypenumbers");var a=ja.coerceFont(n,"font"),o=a.size;ja.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),ja.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&&ba.sanitizeMargins(t),Xl.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),Xl.getComponentMethod("modebar","supplyLayoutDefaults")(e,t),Xl.getComponentMethod("shapes","supplyDrawNewShapeDefaults")(e,t,n),Xl.getComponentMethod("selections","supplyDrawNewSelectionDefaults")(e,t,n),n("meta"),ja.isPlainObject(e.transition)&&(n("transition.duration"),n("transition.easing"),n("transition.ordering")),Xl.getComponentMethod("calendars","handleDefaults")(e,t,"calendar"),Xl.getComponentMethod("fx","supplyLayoutGlobalDefaults")(e,t,n),ja.coerce(e,t,znt,"scattermode")};function Z6(e){return typeof e=="string"&&e.substr(e.length-2)==="px"&&parseFloat(e)}ba.plotAutoSize=function(t,r,n){var i=t._context||{},a=i.frameMargins,o,s,l=ja.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=Z6(u.width)||Z6(u.maxWidth)||n.width,s=Z6(u.height)||Z6(u.maxHeight)||n.height,YS(a)&&a>0){var c=1-2*a;o=Math.round(c*o),s=Math.round(c*s)}}var f=ba.layoutAttributes.width.min,h=ba.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}),ba.sanitizeMargins(n)};ba.supplyLayoutModuleDefaults=function(e,t,r,n){var i=Xl.componentsRegistry,a=t._basePlotModules,o,s,l,u=Xl.subplotsRegistry.cartesian;for(o in i)l=i[o],l.includeBasePlot&&l.includeBasePlot(e,t);a.length||a.push(u),t._has("cartesian")&&(Xl.getComponentMethod("grid","contentDefaults")(e,t),u.finalizeSubplots(e,t));for(var c in t._subplots)t._subplots[c].sort(ja.subplotSort);for(s=0;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)};ba.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)),ja.clearThrottle(),ja.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()};ba.style=function(e){var t=e._fullLayout._visibleModules,r=[],n;for(n=0;n<t.length;n++){var i=t[n];i.style&&ja.pushUnique(r,i.style)}for(n=0;n<r.length;n++)r[n](e)};ba.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))}};ba.clearAutoMarginIds=function(e){e._fullLayout._pushmarginIds={}};ba.allowAutoMargin=function(e,t){e._fullLayout._pushmarginIds[t]=1};function Hne(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 jne=2,Wne=2;ba.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=ja.constrain(i-o.l-o.r,jne,s),c=ja.constrain(a-o.t-o.b,Wne,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 C=r.xl!==void 0?r.xl:r.x,E=r.xr!==void 0?r.xr:r.x,A=r.yt!==void 0?r.yt:r.y,L=r.yb!==void 0?r.yb:r.y;d[t]={l:{val:C,size:r.l+x},r:{val:E,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 ba.doAutoMargin(e)}};function Xnt(e){if("_redrawFromAutoMarginCount"in e._fullLayout)return!1;var t=Tp.list(e,"",!0);for(var r in t)if(t[r].autoshift||t[r].shift)return!0;return!1}ba.doAutoMargin=function(e){var t=e._fullLayout,r=t.width,n=t.height;t._size||(t._size={}),Hne(t);var i=t._size,a=t.margin,o={t:0,b:0,l:0,r:0},s=ja.extendFlat({},i),l=a.l,u=a.r,c=a.t,f=a.b,h=t._pushmargin,d=t._pushmarginIds,v=t.minreducedwidth,x=t.minreducedheight;if(a.autoexpand!==!1){for(var b in h)d[b]||delete h[b];var p=e._fullLayout._reservedMargin;for(var C in p)for(var E in p[C]){var A=p[C][E];o[E]=Math.max(o[E],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 k in h)k!=="base"&&YS(h[k][L].size)&&(_=h[k][L].size>_?h[k][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||{},z=P.val,O=P.size,V=T.val,G=T.size,Z=r-o.r-o.l,H=n-o.t-o.b;for(var N in h){if(YS(O)&&h[N].r){var j=h[N].r.val,re=h[N].r.size;if(j>z){var oe=(O*j+(re-Z)*z)/(j-z),_e=(re*(1-z)+(O-Z)*(1-j))/(j-z);oe+_e>l+u&&(l=oe,u=_e)}}if(YS(G)&&h[N].t){var Me=h[N].t.val,ke=h[N].t.size;if(Me>V){var me=(G*Me+(ke-H)*V)/(Me-V),ie=(ke*(1-V)+(G-H)*(1-Me))/(Me-V);me+ie>f+c&&(f=me,c=ie)}}}}}var Se=ja.constrain(r-a.l-a.r,jne,v),Le=ja.constrain(n-a.t-a.b,Wne,x),Ae=Math.max(0,r-Se),De=Math.max(0,n-Le);if(Ae){var Pe=(l+u)/Ae;Pe>1&&(l/=Pe,u/=Pe)}if(De){var ge=(f+c)/De;ge>1&&(f/=ge,c/=ge)}if(i.l=Math.round(l)+o.l,i.r=Math.round(u)+o.r,i.t=Math.round(c)+o.t,i.b=Math.round(f)+o.b,i.p=Math.round(a.pad),i.w=Math.round(r)-i.l-i.r,i.h=Math.round(n)-i.t-i.b,!t._replotting&&(ba.didMarginChange(s,i)||Xnt(e))){"_redrawFromAutoMarginCount"in t?t._redrawFromAutoMarginCount++:t._redrawFromAutoMarginCount=1;var Fe=3*(1+Object.keys(d).length);if(t._redrawFromAutoMarginCount<Fe)return Xl.call("_doPlot",e);t._size=s,ja.warn("Too many auto-margin redraws.")}Znt(e)};function Znt(e){var t=Tp.list(e,"",!0);["_adjustTickLabelsOverflow","_hideCounterAxisInsideTickLabels"].forEach(function(r){for(var n=0;n<t.length;n++){var i=t[n][r];i&&i()}})}var qne=["l","r","t","b","p","w","h"];ba.didMarginChange=function(e,t){for(var r=0;r<qne.length;r++){var n=qne[r],i=e[n],a=t[n];if(!YS(i)||Math.abs(a-i)>1)return!0}return!1};ba.graphJson=function(e,t,r,n,i,a){(i&&t&&!e._fullData||i&&!t&&!e._fullLayout)&&ba.supplyDefaults(e);var o=i?e._fullData:e.data,s=i?e._fullLayout:e.layout,l=(e._transitionData||{})._frames;function u(h,d){if(typeof h=="function")return d?"_function_":null;if(ja.isPlainObject(h)){var v={},x;return Object.keys(h).sort().forEach(function(E){if(["_","["].indexOf(E.charAt(0))===-1){if(typeof h[E]=="function"){d&&(v[E]="_function");return}if(r==="keepdata"){if(E.substr(E.length-3)==="src")return}else if(r==="keepstream"){if(x=h[E+"src"],typeof x=="string"&&x.indexOf(":")>0&&!ja.isPlainObject(h.stream))return}else if(r!=="keepall"&&(x=h[E+"src"],typeof x=="string"&&x.indexOf(":")>0))return;v[E]=u(h[E],d)}}),v}var b=Array.isArray(h),p=ja.isTypedArray(h);if((b||p)&&h.dtype&&h.shape){var C=h.bdata;return u({dtype:h.dtype,shape:h.shape,bdata:ja.isArrayBuffer(C)?Rnt.encode(C):C},d)}return b?h.map(function(E){return u(E,d)}):p?ja.simpleMap(h,ja.identity):ja.isJSDate(h)?ja.ms2DateTimeLocal(+h):h}var c={data:(o||[]).map(function(h){var d=u(h);return t&&delete d.fit,d})};if(!t&&(c.layout=u(s),i)){var f=s._size;c.layout.computed={margin:{b:f.b,l:f.l,r:f.r,t:f.t}}}return l&&(c.frames=u(l)),a&&(c.config=u(e._context,!0)),n==="object"?c:JSON.stringify(c)};ba.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()};ba.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=ba.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]=ba.extendTrace(c.data[o],s.data[n]))}return c};ba.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)}};ba.extendObjectWithContainers=function(e,t,r){var n,i,a,o,s,l,u,c,f=ja.extendDeepNoArrays({},t||{}),h=ja.expandObjectPaths(f),d={};if(r&&r.length)for(a=0;a<r.length;a++)n=ja.nestedProperty(h,r[a]),i=n.get(),i===void 0?ja.nestedProperty(d,r[a]).set(null):(n.set(null),ja.nestedProperty(d,r[a]).set(i));if(e=ja.extendDeepNoArrays(e||{},h),r&&r.length){for(a=0;a<r.length;a++)if(s=ja.nestedProperty(d,r[a]),u=s.get(),!!u){for(l=ja.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]=ba.extendObjectWithContainers(c[o],v)}l.set(c)}}return e};ba.dataArrayContainers=["transforms","dimensions"];ba.layoutArrayContainers=Xl.layoutArrayContainers;ba.extendTrace=function(e,t){return ba.extendObjectWithContainers(e,t,ba.dataArrayContainers)};ba.extendLayout=function(e,t){return ba.extendObjectWithContainers(e,t,ba.layoutArrayContainers)};ba.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]]=ba.extendTrace(e.data[c[f]],t[f])}}var b=ja.expandObjectPaths(ja.extendDeepNoArrays({},r)),p=/^[xy]axis[0-9]*$/;for(var C in b)p.test(C)&&delete b[C].range;ba.extendLayout(e.layout,b),delete e.calcdata,ba.supplyDefaults(e),ba.doCalcdata(e);var E=ja.expandObjectPaths(r);if(E){var A=e._fullLayout._plots;for(var L in A){var _=A[L],k=_.xaxis,M=_.yaxis,g=k.range.slice(),P=M.range.slice(),T=null,z=null,O=null,V=null;Array.isArray(E[k._name+".range"])?T=E[k._name+".range"].slice():Array.isArray((E[k._name]||{}).range)&&(T=E[k._name].range.slice()),Array.isArray(E[M._name+".range"])?z=E[M._name+".range"].slice():Array.isArray((E[M._name]||{}).range)&&(z=E[M._name].range.slice()),g&&T&&(k.r2l(g[0])!==k.r2l(T[0])||k.r2l(g[1])!==k.r2l(T[1]))&&(O={xr0:g,xr1:T}),P&&z&&(M.r2l(P[0])!==M.r2l(z[0])||M.r2l(P[1])!==M.r2l(z[1]))&&(V={yr0:P,yr1:z}),(O||V)&&l.push(ja.extendFlat({plotinfo:_},O,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=ja.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)}},Xne(e,a,o)};ba.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,C=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]))&&(C={yr0:v,yr1:b}),(p||C)&&s.push(ja.extendFlat({plotinfo:c},p,C))}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 E=0;E<f.length;E++)f[E].transitionAxes&&f[E].transitionAxes(e,s,h,l)}function C(){if(e._fullLayout)for(var E=0;E<f.length;E++)f[E].plot(e,v,d,l)}s.length&&t.anim?a.ordering==="traces first"?(h=ja.extendFlat({},a,{duration:0}),v=x,d=a,setTimeout(p,a.duration),C()):(h=a,v=null,d=ja.extendFlat({},a,{duration:0}),setTimeout(C,h.duration),p()):s.length?(h=a,p()):t.anim&&(v=x,d=a,C())},Xne(e,a,o)};function Xne(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 Xl.call("redraw",e)}),e._transitionData._interruptCallbacks.push(function(){e.emit("plotly_transitioninterrupted",[])});var h=0,d=0;function v(){return h++,function(){d++,!n&&d===h&&s(f)}}r.runFn(v),setTimeout(v())})}function s(f){if(e._transitionData)return a(e._transitionData._interruptCallbacks),Promise.resolve().then(function(){if(r.redraw)return Xl.call("redraw",e)}).then(function(){e._transitioning=!1,e._transitioningWithDuration=!1,e.emit("plotly_transitioned",[])}).then(f)}function l(){if(e._transitionData)return e._transitioning=!1,i(e._transitionData._interruptCallbacks)}var u=[ba.previousPromises,l,r.prepareFn,ba.rehover,ba.reselect,o],c=ja.syncOrAsync(u,e);return(!c||!c.then)&&(c=Promise.resolve()),c.then(function(){return e})}ba.doCalcdata=function(e,t){var r=Tp.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=Vne.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(C){if(a=n[C],o=a._module,a.visible===!0&&a.transforms){if(o&&o.calc){var E=o.calc(e,a);E[0]&&E[0].t&&E[0].t._scene&&delete E[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(C,E){if(a=n[C],o=a._module,!!o.isContainer===E){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:Fne,y:Fne}]),A[0].t||(A[0].t={}),A[0].trace=a,u[C]=A}}for(Bne(r,n,i),s=0;s<n.length;s++)b(s,!0);for(s=0;s<n.length;s++)x(s);for(v&&Bne(r,n,i),s=0;s<n.length;s++)b(s,!0);for(s=0;s<n.length;s++)b(s,!1);Nne(e);var p=Knt(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);Nne(e)}Xl.getComponentMethod("fx","calc")(e),Xl.getComponentMethod("errorbars","calc")(e)};var Ynt=/(total|sum|min|max|mean|geometric mean|median) (ascending|descending)/;function Knt(e,t){var r=[],n,i,a,o,s;function l(N,j,re){var oe=j._id.charAt(0);if(N==="histogram2dcontour"){var _e=j._counterAxes[0],Me=Tp.getFromId(t,_e),ke=oe==="x"||_e==="x"&&Me.type==="category",me=oe==="y"||_e==="y"&&Me.type==="category";return function(ie,Se){return ie===0||Se===0||ke&&ie===re[Se].length-1||me&&Se===re.length-1?-1:(oe==="y"?Se:ie)-1}}else return function(ie,Se){return oe==="y"?Se:ie}}var u={min:function(N){return ja.aggNums(Math.min,null,N)},max:function(N){return ja.aggNums(Math.max,null,N)},sum:function(N){return ja.aggNums(function(j,re){return j+re},null,N)},total:function(N){return ja.aggNums(function(j,re){return j+re},null,N)},mean:function(N){return ja.mean(N)},"geometric mean":function(N){return ja.geometricMean(N)},median:function(N){return ja.median(N)}};function c(N,j){return N[1]-j[1]}function f(N,j){return j[1]-N[1]}for(n=0;n<e.length;n++){var h=e[n];if(h.type==="category"){var d=h.categoryorder.match(Ynt);if(d){var v=d[1],x=d[2],b=h._id.charAt(0),p=b==="x",C=[];for(i=0;i<h._categories.length;i++)C.push([h._categories[i],[]]);for(i=0;i<h._traceIndices.length;i++){var E=h._traceIndices[i],A=t._fullData[E];if(A.visible===!0){var L=A.type;Xl.traceIs(A,"histogram")&&(delete A._xautoBinFinished,delete A._yautoBinFinished);var _=L==="splom",k=L==="scattergl",M=t.calcdata[E];for(a=0;a<M.length;a++){var g=M[a],P,T;if(_){var z=A._axesDim[h._id];if(!p){var O=A._diag[z][0];O&&(h=t._fullLayout[Tp.id2name(O)])}var V=g.trace.dimensions[z].values;for(o=0;o<V.length;o++)for(P=h._categoriesMap[V[o]],s=0;s<g.trace.dimensions.length;s++)if(s!==z){var G=g.trace.dimensions[s];C[P][1].push(G.values[o])}}else if(k){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]),C[P][1].push(T);g.t&&g.t._scene&&delete g.t._scene.dirty}else if(g.hasOwnProperty("z")){T=g.z;var Z=l(A.type,h,T);for(o=0;o<T.length;o++)for(s=0;s<T[o].length;s++)P=Z(s,o),P+1&&C[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++)C[P][1].push(T[o])}}}h._categoriesValue=C;var H=[];for(i=0;i<C.length;i++)H.push([C[i][0],u[v](C[i][1])]);H.sort(x==="descending"?f:c),h._categoriesAggregatedValue=H,h._initialCategories=H.map(function(N){return N[0]}),r=r.concat(h.sortByInitialCategories())}}}return r}function Bne(e,t,r){var n={};function i(l){l.clearCalc(),l.type==="multicategory"&&l.setupMultiCategory(t),n[l._id]=1}ja.simpleMap(e,i);for(var a=r._axisMatchGroups||[],o=0;o<a.length;o++)for(var s in a[o])n[s]||i(r[Tp.id2name(s)])}function Nne(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]?ja.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)}}ba.rehover=function(e){e._fullLayout._rehover&&e._fullLayout._rehover()};ba.redrag=function(e){e._fullLayout._redrag&&e._fullLayout._redrag()};ba.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);Xl.getComponentMethod("selections","reselect")(e,i)};ba.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,ja.filterVisible(d),n)}t.traceHash=a};ba.plotBasePlot=function(e,t,r,n,i){var a=Xl.getModule(e),o=qnt(t.calcdata,a)[0];a.plot(t,o,n,i)};ba.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 Wp=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 Kh=ye((cir,Yne)=>{"use strict";Yne.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 iu=ye(b0=>{"use strict";var Ch=Oa(),Ty=Dr(),Jnt=Ty.strTranslate,hq=Wp(),$nt=Kh().LINE_SPACING,Qnt=/([^$]*)([$]+[^$]*[$]+)([^$]*)/;b0.convertToTspans=function(e,t,r){var n=e.text(),i=!e.attr("data-notex")&&t&&t._context.typesetMath&&typeof MathJax!="undefined"&&n.match(Qnt),a=Ch.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=hat(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};iat(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 C=e.node().style.fill||"black",E=v.select("g");E.attr({fill:C,stroke:C});var A=E.node().getBoundingClientRect(),L=A.width,_=A.height;(L>b||_>p)&&(v.style("overflow","hidden"),A=v.node().getBoundingClientRect(),L=A.width,_=A.height);var k=+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,k,M]+")"+Jnt(-L/2,P-_/2)});else if(o[0]==="l")M=P-_/2;else if(o[0]==="a"&&o.indexOf("atitle")!==0)k=0,M=P;else{var T=e.attr("text-anchor");k=k-L*(T==="middle"?.5:T==="end"?1:0),M=M+P-_/2}v.attr({x:k,y:M}),r&&r.call(e,x),l(x)})})):s(),e};var eat=/(<|<|<)/g,tat=/(>|>|>)/g;function rat(e){return e.replace(eat,"\\lt ").replace(tat,"\\gt ")}var Kne=[["$","$"],["\\(","\\)"]];function iat(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:Kne},displayAlign:"left"})},u=function(){a=Ty.extendDeepAll({},MathJax.config),MathJax.config.tex||(MathJax.config.tex={}),MathJax.config.tex.inlineMath=Kne},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 C="math-output-"+Ty.randstr({},64);s=Ch.select("body").append("div").attr({id:C}).style({visibility:"hidden",position:"absolute","font-size":t.fontSize+"px"}).text(rat(e));var E=s.node();return n===2?MathJax.Hub.Typeset(E):MathJax.typeset([E])},d=function(){var C=s.select(n===2?".MathJax_SVG":".MathJax"),E=!C.empty()&&s.select("svg").node();if(!E)Ty.log("There was an error in the tex syntax.",e),r();else{var A=E.getBoundingClientRect(),L;n===2?L=Ch.select("body").select("#MathJax_SVG_glyphs"):L=C.select("defs"),r(C,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 eae={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"},nat={sub:"0.3em",sup:"-0.6em"},aat={sub:"-0.21em",sup:"0.42em"},Jne="\u200B",$ne=["http:","https:","mailto:","",void 0,":"],tae=b0.NEWLINES=/(\r\n?|\n)/g,vq=/(<[^<>]*>)/,pq=/<(\/?)([^ >]*)(\s+(.*))?>/i,oat=/<br(\s+.*)?>/i;b0.BR_TAG_ALL=/<br(\s+.*)?>/gi;var rae=/(^|[\s"'])style\s*=\s*("([^"]*);?"|'([^']*);?')/i,iae=/(^|[\s"'])href\s*=\s*("([^"]*)"|'([^']*)')/i,nae=/(^|[\s"'])target\s*=\s*("([^"\s]*)"|'([^'\s]*)')/i,sat=/(^|[\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&&K6(n)}var lat=/(^|;)\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(vq),s=[],l="",u=0,c=0;c<o.length;c++){var f=o[c],h=f.match(pq),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 uat={mu:"\u03BC",amp:"&",lt:"<",gt:">",nbsp:"\xA0",times:"\xD7",plusmn:"\xB1",deg:"\xB0"},cat=/&(#\d+|#x[\da-fA-F]+|[a-z]+);/g;function K6(e){return e.replace(cat,function(t,r){var n;return r.charAt(0)==="#"?n=fat(r.charAt(1)==="x"?parseInt(r.substr(2),16):parseInt(r.substr(1),10)):n=uat[r],n||t})}b0.convertEntities=K6;function fat(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 hat(e,t){t=t.replace(tae," ");var r=!1,n=[],i,a=-1;function o(){a++;var _=document.createElementNS(hq.svg,"tspan");Ch.select(_).attr({class:"line",dy:a*$nt+"em"}),e.appendChild(_),i=_;var k=n;if(n=[{node:_}],k.length>1)for(var M=1;M<k.length;M++)s(k[M])}function s(_){var k=_.type,M={},g;if(k==="a"){g="a";var P=_.target,T=_.href,z=_.popup;T&&(M={"xlink:xlink:show":P==="_blank"||P.charAt(0)!=="_"?"new":"replace",target:P,"xlink:xlink:href":T},z&&(M.onclick='window.open(this.href.baseVal,this.target.baseVal,"'+z+'");return false;'))}else g="tspan";_.style&&(M.style=_.style);var O=document.createElementNS(hq.svg,g);if(k==="sup"||k==="sub"){l(i,Jne),i.appendChild(O);var V=document.createElementNS(hq.svg,"tspan");l(V,Jne),Ch.select(V).attr("dy",aat[k]),M.dy=nat[k],i.appendChild(O),i.appendChild(V)}else i.appendChild(O);Ch.select(O).attr(M),i=_.node=O,n.push(_)}function l(_,k){_.appendChild(document.createTextNode(k))}function u(_){if(n.length===1){Ty.log("Ignoring unexpected end tag </"+_+">.",t);return}var k=n.pop();_!==k.type&&Ty.log("Start tag <"+k.type+"> doesnt match end tag <"+_+">. Pretending it did match.",t),i=n[n.length-1].node}var c=oat.test(t);c?o():(i=e,n=[{node:e}]);for(var f=t.split(vq),h=0;h<f.length;h++){var d=f[h],v=d.match(pq),x=v&&v[2].toLowerCase(),b=eae[x];if(x==="br")o();else if(b===void 0)l(i,K6(d));else if(v[1])u(x);else{var p=v[4],C={type:x},E=_b(p,rae);if(E?(E=E.replace(lat,"$1 fill:"),b&&(E+=";"+b)):b&&(E=b),E&&(C.style=E),x==="a"){r=!0;var A=_b(p,iae);if(A){var L=aae(A);L&&(C.href=L,C.target=_b(p,nae)||"_blank",C.popup=_b(p,sat))}}s(C)}}return r}function aae(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 $ne.indexOf(i)!==-1&&$ne.indexOf(a)!==-1?t:""}b0.sanitizeHTML=function(t){t=t.replace(tae," ");for(var r=document.createElement("p"),n=r,i=[],a=t.split(vq),o=0;o<a.length;o++){var s=a[o],l=s.match(pq),u=l&&l[2].toLowerCase();if(u in eae)if(l[1])i.length&&(n=i.pop());else{var c=l[4],f=_b(c,rae),h=f?{style:f}:{};if(u==="a"){var d=_b(c,iae);if(d){var v=aae(d);if(v){h.href=v;var x=_b(c,nae);x&&(h.target=x)}}}var b=document.createElement(u);n.appendChild(b),Ch.select(b).attr(h),n=b,i.push(b)}else n.appendChild(document.createTextNode(K6(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=Ch.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 Qne(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 dq="1px ";b0.makeTextShadow=function(e){var t=dq,r=dq,n=dq;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=Ch.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&&Ch.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=Ch.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(Qne(e,c,t)).on("blur",function(){r._editing=!1,e.text(this.textContent).style({opacity:1});var x=Ch.select(this).attr("class"),b;x?b="."+x.split(" ")[0]+"-math-group":b="[class*=-math-group]",b&&Ch.select(e.node().parentNode).select(b).style({opacity:0});var p=this.textContent;Ch.select(this).transition().duration(0).remove(),Ch.select(document).on("mouseup",null),i.edit.call(e,p)}).on("focus",function(){var x=this;r._editing=!0,Ch.select(document).on("mouseup",function(){if(Ch.event.target===x)return!1;document.activeElement===f.node()&&f.node().blur()})}).on("keyup",function(){Ch.event.which===27?(r._editing=!1,e.style({opacity:1}),Ch.select(this).style({opacity:0}).on("blur",function(){return!1}).transition().remove(),i.cancel.call(e,this.textContent)):(i.input.call(e,this.textContent),Ch.select(this).call(Qne(e,c,t)))}).on("keydown",function(){Ch.event.which===13&&this.blur()}).call(s)}return t.immediate?o():a.on("click",o),Ch.rebind(e,i,"on")}});var Dv=ye((hir,dae)=>{"use strict";var dat=Oa(),$6=cd(),JS=Eo(),J6=Dr(),oae=Ca(),vat=sb().isValid;function pat(e,t,r){var n=t?J6.nestedProperty(e,t).get()||{}:e,i=n[r||"color"];i&&i._inputArray&&(i=i._inputArray);var a=!1;if(J6.isArrayOrTypedArray(i)){for(var o=0;o<i.length;o++)if(JS(i[o])){a=!0;break}}return J6.isPlainObject(n)&&(a||n.showscale===!0||JS(n.cmin)&&JS(n.cmax)||vat(n.colorscale)||J6.isPlainObject(n.colorbar))}var sae=["showscale","autocolorscale","colorscale","reversescale","colorbar"],KS=["min","max","mid","auto"];function uae(e){var t=e._colorAx,r=t||e,n={},i,a,o;for(a=0;a<sae.length;a++)o=sae[a],n[o]=r[o];if(t)for(i="c",a=0;a<KS.length;a++)o=KS[a],n[o]=r["c"+o];else{var s;for(a=0;a<KS.length;a++){if(o=KS[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=KS.indexOf(l)!==-1?i+l:l;r[c]=r["_"+c]=u},n}function cae(e){for(var t=uae(e),r=t.min,n=t.max,i=t.reversescale?fae(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 fae(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 hae(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=$6(n[o]).toRgb();a[o]=[s.r,s.g,s.b,s.a]}var l=dat.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 lae(l(h))}:c?f=function(h){return JS(h)?l(h):$6(h).isValid()?h:oae.defaultLine}:f=function(h){return JS(h)?lae(l(h)):$6(h).isValid()?h:oae.defaultLine},f.domain=l.domain,f.range=function(){return n},f}function gat(e,t){return hae(cae(e),t)}function lae(e){var t={r:e[0],g:e[1],b:e[2],a:e[3]};return $6(t).toRgbString()}dae.exports={hasColorscale:pat,extractOpts:uae,extractScale:cae,flipScale:fae,makeColorScaleFunc:hae,makeColorScaleFuncFromTrace:gat}});var df=ye((dir,gae)=>{"use strict";var vae=zO(),mat=vae.FORMAT_LINK,yat=vae.DATE_FORMAT_LINK;function _at(e,t){return{valType:"string",dflt:"",editType:"none",description:(t?gq:pae)("hover text",e)+["By default the values are formatted using "+(t?"generic number format":"`"+e+"axis.hoverformat`")+"."].join(" ")}}function gq(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: "+mat+"."].join(" ")}function pae(e,t){return gq(e,t)+[" And for dates see: "+yat+".","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(" ")}gae.exports={axisHoverFormat:_at,descriptionOnlyNumbers:gq,descriptionWithDates:pae}});var Rd=ye((pir,Rae)=>{"use strict";var mae=ec(),w3=Eh(),Iae=Pd().dash,yq=Ao().extendFlat,yae=pl().templatedArray,vir=Qo().templateFormatStringDescription,_ae=df().descriptionWithDates,xat=hs().ONEDAY,pm=hd(),bat=pm.HOUR_PATTERN,wat=pm.WEEKDAY_PATTERN,mq={valType:"enumerated",values:["auto","linear","array"],editType:"ticks",impliedEdits:{tick0:void 0,dtick:void 0}},Tat=yq({},mq,{values:mq.values.slice().concat(["sync"])});function xae(e){return{valType:"integer",min:0,dflt:e?5:0,editType:"ticks"}}var bae={valType:"any",editType:"ticks",impliedEdits:{tickmode:"linear"}},wae={valType:"any",editType:"ticks",impliedEdits:{tickmode:"linear"}},Tae={valType:"data_array",editType:"ticks"},Aae={valType:"enumerated",values:["outside","inside",""],editType:"ticks"};function Sae(e){var t={valType:"number",min:0,editType:"ticks"};return e||(t.dflt=5),t}function Mae(e){var t={valType:"number",min:0,editType:"ticks"};return e||(t.dflt=1),t}var Eae={valType:"color",dflt:w3.defaultLine,editType:"ticks"},Cae={valType:"color",dflt:w3.lightLine,editType:"ticks"};function kae(e){var t={valType:"number",min:0,editType:"ticks"};return e||(t.dflt=1),t}var Lae=yq({},Iae,{editType:"ticks"}),Pae={valType:"boolean",editType:"ticks"};Rae.exports={visible:{valType:"boolean",editType:"plot"},color:{valType:"color",dflt:w3.defaultLine,editType:"ticks"},title:{text:{valType:"string",editType:"ticks"},font:mae({editType:"ticks"}),standoff:{valType:"number",min:0,editType:"ticks"},editType:"ticks"},type:{valType:"enumerated",values:["-","linear","log","date","category","multicategory"],dflt:"-",editType:"calc",_noTemplating:!0},autotypenumbers:{valType:"enumerated",values:["convert types","strict"],dflt:"convert types",editType:"calc"},autorange:{valType:"enumerated",values:[!0,!1,"reversed","min reversed","max reversed","min","max"],dflt:!0,editType:"axrange",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},autorangeoptions:{minallowed:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},maxallowed:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},clipmin:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},clipmax:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},include:{valType:"any",arrayOk:!0,editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},editType:"plot"},rangemode:{valType:"enumerated",values:["normal","tozero","nonnegative"],dflt:"normal",editType:"plot"},range:{valType:"info_array",items:[{valType:"any",editType:"axrange",impliedEdits:{"^autorange":!1},anim:!0},{valType:"any",editType:"axrange",impliedEdits:{"^autorange":!1},anim:!0}],editType:"axrange",impliedEdits:{autorange:!1},anim:!0},minallowed:{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},maxallowed:{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},fixedrange:{valType:"boolean",dflt:!1,editType:"calc"},modebardisable:{valType:"flaglist",flags:["autoscale","zoominout"],extras:["none"],dflt:"none",editType:"modebar"},insiderange:{valType:"info_array",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},scaleanchor:{valType:"enumerated",values:[pm.idRegex.x.toString(),pm.idRegex.y.toString(),!1],editType:"plot"},scaleratio:{valType:"number",min:0,dflt:1,editType:"plot"},constrain:{valType:"enumerated",values:["range","domain"],editType:"plot"},constraintoward:{valType:"enumerated",values:["left","center","right","top","middle","bottom"],editType:"plot"},matches:{valType:"enumerated",values:[pm.idRegex.x.toString(),pm.idRegex.y.toString()],editType:"calc"},rangebreaks:yae("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:[wat,bat,""],editType:"calc"},values:{valType:"info_array",freeLength:!0,editType:"calc",items:{valType:"any",editType:"calc"}},dvalue:{valType:"number",editType:"calc",min:0,dflt:xat},editType:"calc"}),tickmode:Tat,nticks:xae(),tick0:bae,dtick:wae,ticklabelstep:{valType:"integer",min:1,dflt:1,editType:"ticks"},tickvals:Tae,ticktext:{valType:"data_array",editType:"ticks"},ticks:Aae,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:Sae(),tickwidth:Mae(),tickcolor:Eae,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:yq({},Iae,{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:mae({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:_ae("tick label")},tickformatstops:yae("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:_ae("hover text")},unifiedhovertitle:{text:{valType:"string",dflt:"",editType:"none"},editType:"none"},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:Pae,gridcolor:Cae,gridwidth:kae(),griddash:Lae,zeroline:{valType:"boolean",editType:"ticks"},zerolinecolor:{valType:"color",dflt:w3.defaultLine,editType:"ticks"},zerolinelayer:{valType:"enumerated",values:["above traces","below traces"],dflt:"below traces",editType:"plot"},zerolinewidth:{valType:"number",dflt:1,editType:"ticks"},showdividers:{valType:"boolean",dflt:!0,editType:"ticks"},dividercolor:{valType:"color",dflt: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:mq,nticks:xae("minor"),tick0:bae,dtick:wae,tickvals:Tae,ticks:Aae,ticklen:Sae("minor"),tickwidth:Mae("minor"),tickcolor:Eae,gridcolor:Cae,gridwidth:kae("minor"),griddash:Lae,showgrid:Pae,editType:"ticks"},minorloglabels:{valType:"enumerated",values:["small digits","complete","none"],dflt:"small digits",editType:"calc"},layer:{valType:"enumerated",values:["above traces","below traces"],dflt:"above traces",editType:"plot"},domain:{valType:"info_array",items:[{valType:"number",min:0,max:1,editType:"plot"},{valType:"number",min:0,max:1,editType:"plot"}],dflt:[0,1],editType:"plot"},position:{valType:"number",min:0,max:1,dflt:0,editType:"plot"},autoshift:{valType:"boolean",dflt:!1,editType:"plot"},shift:{valType:"number",editType:"plot"},categoryorder:{valType:"enumerated",values:["trace","category ascending","category descending","array","total ascending","total descending","min ascending","min descending","max ascending","max descending","sum ascending","sum descending","mean ascending","mean descending","geometric mean ascending","geometric mean descending","median ascending","median descending"],dflt:"trace",editType:"calc"},categoryarray:{valType:"data_array",editType:"calc"},uirevision:{valType:"any",editType:"none"},editType:"calc"}});var Q6=ye((gir,zae)=>{"use strict";var $c=Rd(),Dae=ec(),Fae=Ao().extendFlat,Aat=mc().overrideAll;zae.exports=Aat({orientation:{valType:"enumerated",values:["h","v"],dflt:"v"},thicknessmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"pixels"},thickness:{valType:"number",min:0,dflt:30},lenmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"fraction"},len:{valType:"number",min:0,dflt:1},x:{valType:"number"},xref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},xanchor:{valType:"enumerated",values:["left","center","right"]},xpad:{valType:"number",min:0,dflt:10},y:{valType:"number"},yref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},yanchor:{valType:"enumerated",values:["top","middle","bottom"]},ypad:{valType:"number",min:0,dflt:10},outlinecolor:$c.linecolor,outlinewidth:$c.linewidth,bordercolor:$c.linecolor,borderwidth:{valType:"number",min:0,dflt:0},bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)"},tickmode:$c.minor.tickmode,nticks:$c.nticks,tick0:$c.tick0,dtick:$c.dtick,tickvals:$c.tickvals,ticktext:$c.ticktext,ticks:Fae({},$c.ticks,{dflt:""}),ticklabeloverflow:Fae({},$c.ticklabeloverflow,{}),ticklabelposition:{valType:"enumerated",values:["outside","inside","outside top","inside top","outside left","inside left","outside right","inside right","outside bottom","inside bottom"],dflt:"outside"},ticklen:$c.ticklen,tickwidth:$c.tickwidth,tickcolor:$c.tickcolor,ticklabelstep:$c.ticklabelstep,showticklabels:$c.showticklabels,labelalias:$c.labelalias,tickfont:Dae({}),tickangle:$c.tickangle,tickformat:$c.tickformat,tickformatstops:$c.tickformatstops,tickprefix:$c.tickprefix,showtickprefix:$c.showtickprefix,ticksuffix:$c.ticksuffix,showticksuffix:$c.showticksuffix,separatethousands:$c.separatethousands,exponentformat:$c.exponentformat,minexponent:$c.minexponent,showexponent:$c.showexponent,title:{text:{valType:"string"},font:Dae({}),side:{valType:"enumerated",values:["right","top","bottom"]}}},"colorbars","from-root")});var Tu=ye((yir,qae)=>{"use strict";var Sat=Q6(),Mat=n3().counter,Eat=Y1(),Oae=sb().scales,mir=Eat(Oae);function eL(e){return"`"+e+"`"}qae.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"?Oae[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 "+eL(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=eL(u+d),C=eL(u+v),E=eL(u+x),A=C+" and "+E,L={};L[v]=L[x]=void 0;var _={};_[d]=!1;var k={};return c==="color"&&(k.color={valType:"color",arrayOk:!0,editType:l||"style"},r.anim&&(k.color.anim=!0)),k[d]={valType:"boolean",dflt:!0,editType:"calc",impliedEdits:L},k[v]={valType:"number",dflt:null,editType:l||"plot",impliedEdits:_},k[x]={valType:"number",dflt:null,editType:l||"plot",impliedEdits:_},k[b]={valType:"number",dflt:null,editType:"calc",impliedEdits:L},k.colorscale={valType:"colorscale",editType:"calc",dflt:s,impliedEdits:{autocolorscale:!1}},k.autocolorscale={valType:"boolean",dflt:r.autoColorDflt!==!1,editType:"calc",impliedEdits:{colorscale:void 0}},k.reversescale={valType:"boolean",dflt:!1,editType:"plot"},a||(k.showscale={valType:"boolean",dflt:o,editType:"calc"},k.colorbar=Sat),r.noColorAxis||(k.coloraxis={valType:"subplotid",regex:Mat("coloraxis"),dflt:null,editType:"calc"}),k}});var xq=ye((_ir,Bae)=>{"use strict";var Cat=Ao().extendFlat,kat=Tu(),_q=sb().scales;Bae.exports={editType:"calc",colorscale:{editType:"calc",sequential:{valType:"colorscale",dflt:_q.Reds,editType:"calc"},sequentialminus:{valType:"colorscale",dflt:_q.Blues,editType:"calc"},diverging:{valType:"colorscale",dflt:_q.RdBu,editType:"calc"}},coloraxis:Cat({_isSubplotObj:!0,editType:"calc"},kat("",{colorAttr:"corresponding trace color array(s)",noColorAxis:!0,showScaleDflt:!0}))}});var bq=ye((xir,Nae)=>{"use strict";var Lat=Dr();Nae.exports=function(t){return Lat.isPlainObject(t.colorbar)}});var Aq=ye(Tq=>{"use strict";var wq=Eo(),Uae=Dr(),Vae=hs(),Pat=Vae.ONEDAY,Iat=Vae.ONEWEEK;Tq.dtick=function(e,t){var r=t==="log",n=t==="date",i=t==="category",a=n?Pat:1;if(!e)return a;if(wq(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=wq(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};Tq.tick0=function(e,t,r,n){if(t==="date")return Uae.cleanDate(e,Uae.dateTick0(r,n%Iat===0?1:0));if(!(n==="D1"||n==="D2"))return wq(e)?Number(e):0}});var xb=ye((wir,Hae)=>{"use strict";var Gae=Aq(),Rat=Dr().isArrayOrTypedArray,Dat=vv().isTypedArraySpec,Fat=vv().decodeTypedArraySpec;Hae.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(C){var E=s[C];return Dat(E)&&(E=Fat(E)),E!==void 0?E:(l._template||{})[C]}var f=c("tick0"),h=c("dtick"),d=c("tickvals"),v=Rat(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=Gae.dtick(h,i);l.tick0=Gae.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((Tir,Wae)=>{"use strict";var Sq=Dr(),jae=Rd();Wae.exports=function(t,r,n,i){var a=i.isMinor,o=a?t.minor||{}:t,s=a?r.minor:r,l=a?jae.minor:jae,u=a?"minor.":"",c=Sq.coerce2(o,s,l,"ticklen",a?(r.ticklen||5)*.6:void 0),f=Sq.coerce2(o,s,l,"tickwidth",a?r.tickwidth||1:void 0),h=Sq.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 Mq=ye((Air,Xae)=>{"use strict";Xae.exports=function(t){var r=["showexponent","showtickprefix","showticksuffix"],n=r.filter(function(a){return t[a]!==void 0}),i=function(a){return t[a]===t[n[0]]};if(n.every(i)||n.length===1)return t[n[0]]}});var Yd=ye((Sir,Zae)=>{"use strict";var tL=Dr(),zat=pl();Zae.exports=function(t,r,n){var i=n.name,a=n.inclusionAttr||"visible",o=r[i],s=tL.isArrayOrTypedArray(t[i])?t[i]:[],l=r[i]=[],u=zat.arrayTemplater(r,i,a),c,f;for(c=0;c<s.length;c++){var h=s[c];tL.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(tL.isArrayOrTypedArray(o)){var v=Math.min(o.length,l.length);for(c=0;c<v;c++)tL.relinkPrivateKeys(l[c],o[c])}return l}});var t_=ye((Mir,Kae)=>{"use strict";var Eq=Dr(),Oat=Ca().contrast,Yae=Rd(),qat=Mq(),Bat=Yd();Kae.exports=function(t,r,n,i,a){a||(a={});var o=n("labelalias");Eq.isPlainObject(o)||delete r.labelalias;var s=qat(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?Oat(a.bgColor):c&&c!==Yae.color.dflt?c:u.color;if(Eq.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");Bat(t,r,{name:"tickformatstops",inclusionAttr:"enabled",handleItemDefaults:Nat}),r.tickformatstops.length||delete r.tickformatstops,!a.noExp&&!v&&i!=="date"&&(n("showexponent",s),n("exponentformat"),n("minexponent"),n("separatethousands"))}!a.noMinorloglabels&&i==="log"&&n("minorloglabels")}};function Nat(e,t){function r(i,a){return Eq.coerce(e,t,Yae.tickformatstops,i,a)}var n=r("enabled");n&&(r("dtickrange"),r("value"))}});var r_=ye((Eir,Jae)=>{"use strict";var Uat=Mq();Jae.exports=function(t,r,n,i,a){a||(a={});var o=a.tickSuffixDflt,s=Uat(t),l=n("tickprefix");l&&n("showtickprefix",s);var u=n("ticksuffix",o);u&&n("showticksuffix",s)}});var Cq=ye((Cir,$ae)=>{"use strict";var i_=Dr(),Vat=pl(),Gat=xb(),Hat=T3(),jat=t_(),Wat=r_(),Xat=Q6();$ae.exports=function(t,r,n){var i=Vat.newContainer(r,"colorbar"),a=t.colorbar||{};function o(T,z){return i_.coerce(a,i,Xat,T,z)}var s=n.margin||{t:0,b:0,l:0,r:0},l=n.width-s.l-s.r,u=n.height-s.t-s.b,c=o("orientation"),f=c==="v",h=o("thicknessmode");o("thickness",h==="fraction"?30/(f?l:u):30);var d=o("lenmode");o("len",d==="fraction"?1:f?u:l);var v=o("yref"),x=o("xref"),b=v==="paper",p=x==="paper",C,E,A,L="left";f?(A="middle",L=p?"left":"right",C=p?1.02:1,E=.5):(A=b?"bottom":"top",L="center",C=.5,E=b?1.02:1),i_.coerce(a,i,{x:{valType:"number",min:p?-2:0,max:p?3:1,dflt:C}},"x"),i_.coerce(a,i,{y:{valType:"number",min:b?-2:0,max:b?3:1,dflt:E}},"y"),o("xanchor",L),o("xpad"),o("yanchor",A),o("ypad"),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"),Gat(a,i,o,"linear");var k=n.font,M={noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0,outerTicks:!1,font:k};_.indexOf("inside")!==-1&&(M.bgColor="black"),Wat(a,i,o,"linear",M),jat(a,i,o,"linear",M),Hat(a,i,o,"linear",M),o("title.text",n._dfltTitle.colorbar);var g=i.showticklabels?i.tickfont:k,P=i_.extendFlat({},k,{family:g.family,size:i_.bigFont(g.size)});i_.coerceFont(o,"title.font",P),o("title.side",f?"top":"right")}});var Jh=ye((kir,toe)=>{"use strict";var Qae=Eo(),Lq=Dr(),Zat=bq(),Yat=Cq(),eoe=sb().isValid,Kat=qa().traceIs;function kq(e,t){var r=t.slice(0,t.length-1);return t?Lq.nestedProperty(e,r).get()||{}:e}toe.exports=function e(t,r,n,i,a){var o=a.prefix,s=a.cLetter,l="_module"in r,u=kq(t,o),c=kq(r,o),f=kq(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=Kat(r,"contour")&&Lq.nestedProperty(r,"contours.coloring").get()||"heatmap",b=d[v];b?(b[2].push(h),b[0]!==x&&(b[0]=!1,Lq.warn(["Ignoring coloraxis:",v,"setting","as it is linked to incompatible colorscales."].join(" ")))):d[v]=[x,r,[h]];return}}var p=u[s+"min"],C=u[s+"max"],E=Qae(p)&&Qae(C)&&p<C,A=i(o+s+"auto",!E);A?i(o+s+"mid"):(i(o+s+"min"),i(o+s+"max"));var L=u.colorscale,_=f.colorscale,k;if(L!==void 0&&(k=!eoe(L)),_!==void 0&&(k=!eoe(_)),i(o+"autocolorscale",k),i(o+"colorscale"),i(o+"reversescale"),o!=="marker.line."){var M;o&&l&&(M=Zat(u));var g=i(o+"showscale",M);g&&(o&&f&&(c._template=f),Yat(u,c,n))}}});var aoe=ye((Lir,noe)=>{"use strict";var roe=Dr(),Jat=pl(),ioe=xq(),$at=Jh();noe.exports=function(t,r){function n(f,h){return roe.coerce(t,r,ioe,f,h)}n("colorscale.sequential"),n("colorscale.sequentialminus"),n("colorscale.diverging");var i=r._colorAxes,a,o;function s(f,h){return roe.coerce(a,o,ioe.coloraxis,f,h)}for(var l in i){var u=i[l];if(u[0])a=t[l]||{},o=Jat.newContainer(r,l,"coloraxis"),o._name=l,$at(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 soe=ye((Pir,ooe)=>{"use strict";var Qat=Dr(),eot=Dv().hasColorscale,tot=Dv().extractOpts;ooe.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?Qat.nestedProperty(c,f.container).get():c;if(h)if(h.coloraxis)h._colorAx=r[h.coloraxis];else{var d=tot(h),v=d.auto;(v||d.min===void 0)&&n(h,f.min),(v||d.max===void 0)&&n(h,f.max),d.autocolorscale&&n(h,"colorscale")}}for(var a=0;a<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);eot(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 Fv=ye((Iir,uoe)=>{"use strict";var loe=Eo(),Pq=Dr(),rot=Dv().extractOpts;uoe.exports=function(t,r,n){var i=t._fullLayout,a=n.vals,o=n.containerStr,s=o?Pq.nestedProperty(r,o).get():r,l=rot(s),u=l.auto!==!1,c=l.min,f=l.max,h=l.mid,d=function(){return Pq.aggNums(Math.min,null,a)},v=function(){return Pq.aggNums(Math.max,null,a)};if(c===void 0?c=d():u&&(s._colorAx&&loe(c)?c=Math.min(c,d()):c=d()),f===void 0?f=v():u&&(s._colorAx&&loe(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 tc=ye((Rir,coe)=>{"use strict";var rL=sb(),A3=Dv();coe.exports={moduleType:"component",name:"colorscale",attributes:Tu(),layoutAttributes:xq(),supplyLayoutDefaults:aoe(),handleDefaults:Jh(),crossTraceDefaults:soe(),calc:Fv(),scales:rL.scales,defaultScale:rL.defaultScale,getScale:rL.get,isValidScale:rL.isValid,hasColorscale:A3.hasColorscale,extractOpts:A3.extractOpts,extractScale:A3.extractScale,flipScale:A3.flipScale,makeColorScaleFunc:A3.makeColorScaleFunc,makeColorScaleFuncFromTrace:A3.makeColorScaleFuncFromTrace}});var Ru=ye((Dir,hoe)=>{"use strict";var foe=Dr(),iot=vv().isTypedArraySpec;hoe.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 foe.isPlainObject(t)&&(foe.isArrayOrTypedArray(t.size)||iot(t.size))}}});var S3=ye((Fir,doe)=>{"use strict";var not=Eo();doe.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 not(l)&&l>0?Math.max(l,a):0}}});var rp=ye(pv=>{"use strict";var voe=Dr();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=poe(a);if(e[o]===void 0){var s=voe.nestedProperty(t,a).get(),l=goe(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=poe(a);if(e[o]===void 0){for(var s=voe.nestedProperty(t,a).get(),l=new Array(r.length),u=0;u<r.length;u++)l[u]=goe(s,r[u]);e[o]=l}}};var aot={ids:"id",locations:"location",labels:"label",values:"value","marker.colors":"color",parents:"parent"};function poe(e){return aot[e]||e}function goe(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 oot={x:!0,y:!0},sot={"x unified":!0,"y unified":!0};pv.isUnifiedHover=function(e){return typeof e!="string"?!1:!!sot[e]};pv.isXYhover=function(e){return typeof e!="string"?!1:!!oot[e]}});var $S=ye((Oir,moe)=>{moe.exports=uot;var Iq={a:7,c:6,h:1,l:2,m:2,q:4,s:4,t:2,v:1,z:0},lot=/([astvzqmhlc])([^astvzqmhlc]*)/ig;function uot(e){var t=[];return e.replace(lot,function(r,n,i){var a=n.toLowerCase();for(i=fot(i),a=="m"&&i.length>2&&(t.push([n].concat(i.splice(0,2))),a="l",n=n=="m"?"l":"L");;){if(i.length==Iq[a])return i.unshift(n),t.push(i);if(i.length<Iq[a])throw new Error("malformed path data");t.push([n].concat(i.splice(0,Iq[a])))}}),t}var cot=/-?[0-9]*\.?[0-9]+(?:e[-+]?\d+)?/ig;function fot(e){var t=e.match(cot);return t?t.map(Number):[]}});var Aoe=ye((qir,Toe)=>{"use strict";var hot=$S(),ca=function(e,t){return t?Math.round(e*(t=Math.pow(10,t)))/t:Math.round(e)},ds="M0,0Z",yoe=Math.sqrt(2),n_=Math.sqrt(3),Rq=Math.PI,Dq=Math.cos,Fq=Math.sin;Toe.exports={circle:{n:0,f:function(e,t,r){if(vs(t))return ds;var n=ca(e,2),i="M"+n+",0A"+n+","+n+" 0 1,1 0,-"+n+"A"+n+","+n+" 0 0,1 "+n+",0Z";return r?ps(t,r,i):i}},square:{n:1,f:function(e,t,r){if(vs(t))return ds;var n=ca(e,2);return ps(t,r,"M"+n+","+n+"H-"+n+"V-"+n+"H"+n+"Z")}},diamond:{n:2,f:function(e,t,r){if(vs(t))return ds;var n=ca(e*1.3,2);return ps(t,r,"M"+n+",0L0,"+n+"L-"+n+",0L0,-"+n+"Z")}},cross:{n:3,f:function(e,t,r){if(vs(t))return ds;var n=ca(e*.4,2),i=ca(e*1.2,2);return ps(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(vs(t))return ds;var n=ca(e*.8/yoe,2),i="l"+n+","+n,a="l"+n+",-"+n,o="l-"+n+",-"+n,s="l-"+n+","+n;return ps(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(vs(t))return ds;var n=ca(e*2/n_,2),i=ca(e/2,2),a=ca(e,2);return ps(t,r,"M-"+n+","+i+"H"+n+"L0,-"+a+"Z")}},"triangle-down":{n:6,f:function(e,t,r){if(vs(t))return ds;var n=ca(e*2/n_,2),i=ca(e/2,2),a=ca(e,2);return ps(t,r,"M-"+n+",-"+i+"H"+n+"L0,"+a+"Z")}},"triangle-left":{n:7,f:function(e,t,r){if(vs(t))return ds;var n=ca(e*2/n_,2),i=ca(e/2,2),a=ca(e,2);return ps(t,r,"M"+i+",-"+n+"V"+n+"L-"+a+",0Z")}},"triangle-right":{n:8,f:function(e,t,r){if(vs(t))return ds;var n=ca(e*2/n_,2),i=ca(e/2,2),a=ca(e,2);return ps(t,r,"M-"+i+",-"+n+"V"+n+"L"+a+",0Z")}},"triangle-ne":{n:9,f:function(e,t,r){if(vs(t))return ds;var n=ca(e*.6,2),i=ca(e*1.2,2);return ps(t,r,"M-"+i+",-"+n+"H"+n+"V"+i+"Z")}},"triangle-se":{n:10,f:function(e,t,r){if(vs(t))return ds;var n=ca(e*.6,2),i=ca(e*1.2,2);return ps(t,r,"M"+n+",-"+i+"V"+n+"H-"+i+"Z")}},"triangle-sw":{n:11,f:function(e,t,r){if(vs(t))return ds;var n=ca(e*.6,2),i=ca(e*1.2,2);return ps(t,r,"M"+i+","+n+"H-"+n+"V-"+i+"Z")}},"triangle-nw":{n:12,f:function(e,t,r){if(vs(t))return ds;var n=ca(e*.6,2),i=ca(e*1.2,2);return ps(t,r,"M-"+n+","+i+"V-"+n+"H"+i+"Z")}},pentagon:{n:13,f:function(e,t,r){if(vs(t))return ds;var n=ca(e*.951,2),i=ca(e*.588,2),a=ca(-e,2),o=ca(e*-.309,2),s=ca(e*.809,2);return ps(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(vs(t))return ds;var n=ca(e,2),i=ca(e/2,2),a=ca(e*n_/2,2);return ps(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(vs(t))return ds;var n=ca(e,2),i=ca(e/2,2),a=ca(e*n_/2,2);return ps(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(vs(t))return ds;var n=ca(e*.924,2),i=ca(e*.383,2);return ps(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(vs(t))return ds;var n=e*1.4,i=ca(n*.225,2),a=ca(n*.951,2),o=ca(n*.363,2),s=ca(n*.588,2),l=ca(-n,2),u=ca(n*-.309,2),c=ca(n*.118,2),f=ca(n*.809,2),h=ca(n*.382,2);return ps(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(vs(t))return ds;var n=ca(e*.66,2),i=ca(e*.38,2),a=ca(e*.76,2);return ps(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(vs(t))return ds;var n=ca(e*n_*.8,2),i=ca(e*.8,2),a=ca(e*1.6,2),o=ca(e*4,2),s="A "+o+","+o+" 0 0 1 ";return ps(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(vs(t))return ds;var n=ca(e*n_*.8,2),i=ca(e*.8,2),a=ca(e*1.6,2),o=ca(e*4,2),s="A "+o+","+o+" 0 0 1 ";return ps(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(vs(t))return ds;var n=ca(e*1.1,2),i=ca(e*2,2),a="A "+i+","+i+" 0 0 1 ";return ps(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(vs(t))return ds;var n=ca(e*1.4,2),i=ca(e*1.9,2),a="A "+i+","+i+" 0 0 1 ";return ps(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(vs(t))return ds;var n=ca(e*.7,2),i=ca(e*1.4,2);return ps(t,r,"M0,"+i+"L"+n+",0L0,-"+i+"L-"+n+",0Z")}},"diamond-wide":{n:24,f:function(e,t,r){if(vs(t))return ds;var n=ca(e*1.4,2),i=ca(e*.7,2);return ps(t,r,"M0,"+i+"L"+n+",0L0,-"+i+"L-"+n+",0Z")}},hourglass:{n:25,f:function(e,t,r){if(vs(t))return ds;var n=ca(e,2);return ps(t,r,"M"+n+","+n+"H-"+n+"L"+n+",-"+n+"H-"+n+"Z")},noDot:!0},bowtie:{n:26,f:function(e,t,r){if(vs(t))return ds;var n=ca(e,2);return ps(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(vs(t))return ds;var n=ca(e,2);return ps(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(vs(t))return ds;var n=ca(e,2),i=ca(e/yoe,2);return ps(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(vs(t))return ds;var n=ca(e,2);return ps(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(vs(t))return ds;var n=ca(e,2);return ps(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(vs(t))return ds;var n=ca(e*1.3,2);return ps(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(vs(t))return ds;var n=ca(e*1.3,2),i=ca(e*.65,2);return ps(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(vs(t))return ds;var n=ca(e*1.4,2);return ps(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(vs(t))return ds;var n=ca(e,2);return ps(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(vs(t))return ds;var n=ca(e*1.2,2),i=ca(e*.85,2);return ps(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(vs(t))return ds;var n=ca(e/2,2),i=ca(e,2);return ps(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(vs(t))return ds;var n=ca(e*1.2,2),i=ca(e*1.6,2),a=ca(e*.8,2);return ps(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(vs(t))return ds;var n=ca(e*1.2,2),i=ca(e*1.6,2),a=ca(e*.8,2);return ps(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(vs(t))return ds;var n=ca(e*1.2,2),i=ca(e*1.6,2),a=ca(e*.8,2);return ps(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(vs(t))return ds;var n=ca(e*1.2,2),i=ca(e*1.6,2),a=ca(e*.8,2);return ps(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(vs(t))return ds;var n=ca(e*1.4,2);return ps(t,r,"M"+n+",0H-"+n)},needLine:!0,noDot:!0,noFill:!0},"line-ns":{n:42,f:function(e,t,r){if(vs(t))return ds;var n=ca(e*1.4,2);return ps(t,r,"M0,"+n+"V-"+n)},needLine:!0,noDot:!0,noFill:!0},"line-ne":{n:43,f:function(e,t,r){if(vs(t))return ds;var n=ca(e,2);return ps(t,r,"M"+n+",-"+n+"L-"+n+","+n)},needLine:!0,noDot:!0,noFill:!0},"line-nw":{n:44,f:function(e,t,r){if(vs(t))return ds;var n=ca(e,2);return ps(t,r,"M"+n+","+n+"L-"+n+",-"+n)},needLine:!0,noDot:!0,noFill:!0},"arrow-up":{n:45,f:function(e,t,r){if(vs(t))return ds;var n=ca(e,2),i=ca(e*2,2);return ps(t,r,"M0,0L-"+n+","+i+"H"+n+"Z")},backoff:1,noDot:!0},"arrow-down":{n:46,f:function(e,t,r){if(vs(t))return ds;var n=ca(e,2),i=ca(e*2,2);return ps(t,r,"M0,0L-"+n+",-"+i+"H"+n+"Z")},noDot:!0},"arrow-left":{n:47,f:function(e,t,r){if(vs(t))return ds;var n=ca(e*2,2),i=ca(e,2);return ps(t,r,"M0,0L"+n+",-"+i+"V"+i+"Z")},noDot:!0},"arrow-right":{n:48,f:function(e,t,r){if(vs(t))return ds;var n=ca(e*2,2),i=ca(e,2);return ps(t,r,"M0,0L-"+n+",-"+i+"V"+i+"Z")},noDot:!0},"arrow-bar-up":{n:49,f:function(e,t,r){if(vs(t))return ds;var n=ca(e,2),i=ca(e*2,2);return ps(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(vs(t))return ds;var n=ca(e,2),i=ca(e*2,2);return ps(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(vs(t))return ds;var n=ca(e*2,2),i=ca(e,2);return ps(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(vs(t))return ds;var n=ca(e*2,2),i=ca(e,2);return ps(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(vs(t))return ds;var n=Rq/2.5,i=2*e*Dq(n),a=2*e*Fq(n);return ps(t,r,"M0,0L"+-i+","+a+"L"+i+","+a+"Z")},backoff:.9,noDot:!0},"arrow-wide":{n:54,f:function(e,t,r){if(vs(t))return ds;var n=Rq/4,i=2*e*Dq(n),a=2*e*Fq(n);return ps(t,r,"M0,0L"+-i+","+a+"A "+2*e+","+2*e+" 0 0 1 "+i+","+a+"Z")},backoff:.4,noDot:!0}};function vs(e){return e===null}var _oe,xoe,boe,woe;function ps(e,t,r){if((!e||e%360===0)&&!t)return r;if(boe===e&&woe===t&&_oe===r)return xoe;boe=e,woe=t,_oe=r;function n(b,p){var C=Dq(b),E=Fq(b),A=p[0],L=p[1]+(t||0);return[A*C-L*E,A*E+L*C]}for(var i=e/180*Rq,a=0,o=0,s=hot(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 xoe=l,l}});var So=ye((Bir,Hoe)=>{"use strict";var dd=Oa(),Du=Dr(),dot=Du.numberFormat,Ab=Eo(),Uq=cd(),nL=qa(),Kd=Ca(),vot=tc(),eM=Du.strTranslate,aL=iu(),pot=Wp(),got=Kh(),mot=got.LINE_SPACING,Doe=U1().DESELECTDIM,yot=Ru(),_ot=S3(),xot=rp().appendArrayPointValue,Sa=Hoe.exports={};Sa.font=function(e,t){var r=t.variant,n=t.style,i=t.weight,a=t.color,o=t.size,s=t.family,l=t.shadow,u=t.lineposition,c=t.textcase;s&&e.style("font-family",s),o+1&&e.style("font-size",o+"px"),a&&e.call(Kd.fill,a),i&&e.style("font-weight",i),n&&e.style("font-style",n),r&&e.style("font-variant",r),c&&e.style("text-transform",zq(wot(c))),l&&e.style("text-shadow",l==="auto"?aL.makeTextShadow(Kd.contrast(a)):zq(l)),u&&e.style("text-decoration-line",zq(Tot(u)))};function zq(e){return e==="none"?void 0:e}var bot={normal:"none",lower:"lowercase",upper:"uppercase","word caps":"capitalize"};function wot(e){return bot[e]}function Tot(e){return e.replace("under","underline").replace("over","overline").replace("through","line-through").split("+").join(" ")}Sa.setPosition=function(e,t,r){e.attr("x",t).attr("y",r)};Sa.setSize=function(e,t,r){e.attr("width",t).attr("height",r)};Sa.setRect=function(e,t,r,n,i){e.call(Sa.setPosition,t,r).call(Sa.setSize,n,i)};Sa.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",eM(i,a));else return!1;return!0};Sa.translatePoints=function(e,t,r){e.each(function(n){var i=dd.select(this);Sa.translatePoint(n,i,t,r)})};Sa.hideOutsideRangePoint=function(e,t,r,n,i,a){t.attr("display",r.isPtWithinRange(e,i)&&n.isPtWithinRange(e,a)?null:"none")};Sa.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=nL.traceIs(a,"bar-like")?".bartext":".point,.textpoint";e.selectAll(l).each(function(u){Sa.hideOutsideRangePoint(u,dd.select(this),r,n,o,s)})})}};Sa.crispRound=function(e,t,r){return!t||!Ab(t)?r||0:e._context.staticPlot?t:t<1?1:Math.round(t)};Sa.singleLineStyle=function(e,t,r,n,i){t.style("fill","none");var a=(((e||[])[0]||{}).trace||{}).line||{},o=r||a.width||0,s=i||a.dash||"";Kd.stroke(t,n||a.color),Sa.dashLine(t,s,o)};Sa.lineGroupStyle=function(e,t,r,n){e.style("fill","none").each(function(i){var a=(((i||[])[0]||{}).trace||{}).line||{},o=t||a.width||0,s=n||a.dash||"";dd.select(this).call(Kd.stroke,r||a.color).call(Sa.dashLine,s,o)})};Sa.dashLine=function(e,t,r){r=+r||0,t=Sa.dashStyle(t,r),e.style({"stroke-dasharray":t,"stroke-width":r+"px"})};Sa.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 Foe(e,t,r,n){var i=t.fillpattern,a=t.fillgradient,o=Sa.getPatternAttr,s=i&&(o(i.shape,0,"")||o(i.path,0,""));if(s){var l=o(i.bgcolor,0,null),u=o(i.fgcolor,0,null),c=i.fgopacity,f=o(i.size,0,8),h=o(i.solidity,0,.3),d=t.uid;Sa.pattern(e,"point",r,d,s,f,h,void 0,i.fillmode,l,u,c)}else if(a&&a.type!=="none"){var v=a.type,x="scatterfill-"+t.uid;if(n&&(x="legendfill-"+t.uid),!n&&(a.start!==void 0||a.stop!==void 0)){var b,p;v==="horizontal"?(b={x:a.start,y:0},p={x:a.stop,y:0}):v==="vertical"&&(b={x:0,y:a.start},p={x:0,y:a.stop}),b.x=t._xA.c2p(b.x===void 0?t._extremes.x.min[0].val:b.x,!0),b.y=t._yA.c2p(b.y===void 0?t._extremes.y.min[0].val:b.y,!0),p.x=t._xA.c2p(p.x===void 0?t._extremes.x.max[0].val:p.x,!0),p.y=t._yA.c2p(p.y===void 0?t._extremes.y.max[0].val:p.y,!0),e.call(qoe,r,x,"linear",a.colorscale,"fill",b,p,!0,!1)}else v==="horizontal"&&(v=v+"reversed"),e.call(Sa.gradient,r,x,v,a.colorscale,"fill")}else t.fillcolor&&e.call(Kd.fill,t.fillcolor)}Sa.singleFillStyle=function(e,t){var r=dd.select(e.node()),n=r.data(),i=((n[0]||[])[0]||{}).trace||{};Foe(e,i,t,!1)};Sa.fillGroupStyle=function(e,t,r){e.style("stroke-width",0).each(function(n){var i=dd.select(this);n[0].trace&&Foe(i,n[0].trace,t,r)})};var Soe=Aoe();Sa.symbolNames=[];Sa.symbolFuncs=[];Sa.symbolBackOffs=[];Sa.symbolNeedLines={};Sa.symbolNoDot={};Sa.symbolNoFill={};Sa.symbolList=[];Object.keys(Soe).forEach(function(e){var t=Soe[e],r=t.n;Sa.symbolList.push(r,String(r),e,r+100,String(r+100),e+"-open"),Sa.symbolNames[r]=e,Sa.symbolFuncs[r]=t.f,Sa.symbolBackOffs[r]=t.backoff||0,t.needLine&&(Sa.symbolNeedLines[r]=!0),t.noDot?Sa.symbolNoDot[r]=!0:Sa.symbolList.push(r+200,String(r+200),e+"-dot",r+300,String(r+300),e+"-open-dot"),t.noFill&&(Sa.symbolNoFill[r]=!0)});var Aot=Sa.symbolNames.length,Sot="M0,0.5L0.5,0L0,-0.5L-0.5,0Z";Sa.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=Sa.symbolNames.indexOf(e),e>=0&&(e+=t)}return e%100>=Aot||e>=400?0:Math.floor(Math.max(e,0))};function zoe(e,t,r,n){var i=e%100;return Sa.symbolFuncs[i](t,r,n)+(e>=200?Sot:"")}var Moe=dot("~f"),Ooe={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}};Sa.gradient=function(e,t,r,n,i,a){var o=Ooe[n];return qoe(e,t,r,o.type,i,a,o.start,o.stop,!1,o.reversed)};function qoe(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]=[Moe((1-i[d][0])*100),i[d][1]]:h[d]=[Moe(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=dd.select(this);f.attrs&&p.attr(f.attrs),p.attr("id",x);var C=p.selectAll("stop").data(h);C.exit().remove(),C.enter().append("stop"),C.each(function(E){var A=Uq(E[1]);dd.select(this).attr({offset:E[0]+"%","stop-color":Kd.tinyRGB(A),"stop-opacity":A.getAlpha()})})}),e.style(a,Vq(x,t)).style(a+"-opacity",null),e.classed("gradient_filled",!0)}Sa.pattern=function(e,t,r,n,i,a,o,s,l,u,c,f){var h=t==="legend";s&&(l==="overlay"?(u=s,c=Kd.contrast(u)):(u=void 0,c=s));var d=r._fullLayout,v="p"+d._uid+"-"+n,x,b,p=function(O,V,G,Z,H){return Z+(H-Z)*(O-V)/(G-V)},C,E,A,L,_={},k=Uq(c),M=Kd.tinyRGB(k),g=k.getAlpha(),P=f*g;switch(i){case"/":x=a*Math.sqrt(2),b=a*Math.sqrt(2),C="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,E=o*a,L="path",_={d:C,opacity:P,stroke:M,"stroke-width":E+"px"};break;case"\\":x=a*Math.sqrt(2),b=a*Math.sqrt(2),C="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,E=o*a,L="path",_={d:C,opacity:P,stroke:M,"stroke-width":E+"px"};break;case"x":x=a*Math.sqrt(2),b=a*Math.sqrt(2),C="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,E=a-a*Math.sqrt(1-o),L="path",_={d:C,opacity:P,stroke:M,"stroke-width":E+"px"};break;case"|":x=a,b=a,L="path",C="M"+x/2+",0L"+x/2+","+b,E=o*a,L="path",_={d:C,opacity:P,stroke:M,"stroke-width":E+"px"};break;case"-":x=a,b=a,L="path",C="M0,"+b/2+"L"+x+","+b/2,E=o*a,L="path",_={d:C,opacity:P,stroke:M,"stroke-width":E+"px"};break;case"+":x=a,b=a,L="path",C="M"+x/2+",0L"+x/2+","+b+"M0,"+b/2+"L"+x+","+b/2,E=a-a*Math.sqrt(1-o),L="path",_={d:C,opacity:P,stroke:M,"stroke-width":E+"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;default:x=a,b=a,L="path",_={d:i,opacity:P,fill:M};break}var T=[i||"noSh",u||"noBg",c||"noFg",a,o].join(";"),z=d._defs.select(".patterns").selectAll("#"+v).data([T],Du.identity);z.exit().remove(),z.enter().append("pattern").each(function(){var O=dd.select(this);if(O.attr({id:v,width:x+"px",height:b+"px",patternUnits:"userSpaceOnUse",patternTransform:h?"scale(0.8)":""}),u){var V=Uq(u),G=Kd.tinyRGB(V),Z=V.getAlpha(),H=O.selectAll("rect").data([0]);H.exit().remove(),H.enter().append("rect").attr({width:x+"px",height:b+"px",fill:G,"fill-opacity":Z})}var N=O.selectAll(L).data([0]);N.exit().remove(),N.enter().append(L).attr(_)}),e.style("fill",Vq(v,r)).style("fill-opacity",null),e.classed("pattern_filled",!0)};Sa.initGradients=function(e){var t=e._fullLayout,r=Du.ensureSingle(t._defs,"g","gradients");r.selectAll("linearGradient,radialGradient").remove(),dd.select(e).selectAll(".gradient_filled").classed("gradient_filled",!1)};Sa.initPatterns=function(e){var t=e._fullLayout,r=Du.ensureSingle(t._defs,"g","patterns");r.selectAll("pattern").remove(),dd.select(e).selectAll(".pattern_filled").classed("pattern_filled",!1)};Sa.getPatternAttr=function(e,t,r){return e&&Du.isArrayOrTypedArray(e)?t<e.length?e[t]:r:e};Sa.pointStyle=function(e,t,r,n){if(e.size()){var i=Sa.makePointStyleFns(t);e.each(function(a){Sa.singlePointStyle(a,dd.select(this),t,i,r,n)})}};Sa.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=Sa.symbolNumber(e.mx||o.symbol)||0;e.om=u%200>=100;var c=Hq(e,r),f=Gq(e,r);t.attr("d",zoe(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=Kd.defaultLine:v=s.color,Du.isArrayOrTypedArray(o.color)&&(d=Kd.defaultLine,h=!0),"mc"in e?d=e.mcc=n.markerScale(e.mc):d=o.color||o.colors||"rgba(0,0,0,0)",n.selectedColorFn&&(d=n.selectedColorFn(e))}if(e.om)t.call(Kd.stroke,d).style({"stroke-width":(x||1)+"px",fill:"none"});else{t.style("stroke-width",(e.isBlank?0:x)+"px");var p=o.gradient,C=e.mgt;C?h=!0:C=p&&p.type,Du.isArrayOrTypedArray(C)&&(C=C[0],Ooe[C]||(C=0));var E=o.pattern,A=Sa.getPatternAttr,L=E&&(A(E.shape,e.i,"")||A(E.path,e.i,""));if(C&&C!=="none"){var _=e.mgc;_?h=!0:_=p.color;var k=r.uid;h&&(k+="-"+e.i),Sa.gradient(t,i,k,C,[[0,_],[1,d]],"fill")}else if(L){var M=!1,g=E.fgcolor;!g&&a&&a.color&&(g=a.color,M=!0);var P=A(g,e.i,a&&a.color||null),T=A(E.bgcolor,e.i,null),z=E.fgopacity,O=A(E.size,e.i,8),V=A(E.solidity,e.i,.3);M=M||e.mcc||Du.isArrayOrTypedArray(E.shape)||Du.isArrayOrTypedArray(E.path)||Du.isArrayOrTypedArray(E.bgcolor)||Du.isArrayOrTypedArray(E.fgcolor)||Du.isArrayOrTypedArray(E.size)||Du.isArrayOrTypedArray(E.solidity);var G=r.uid;M&&(G+="-"+e.i),Sa.pattern(t,"point",i,G,L,O,V,e.mcc,E.fillmode,T,P,z)}else Du.isArrayOrTypedArray(d)?Kd.fill(t,d[e.i]):Kd.fill(t,d);x&&Kd.stroke(t,v)}};Sa.makePointStyleFns=function(e){var t={},r=e.marker;return t.markerScale=Sa.tryColorscale(r,""),t.lineScale=Sa.tryColorscale(r,"line"),nL.traceIs(e,"symbols")&&(t.ms2mrc=yot.isBubble(e)?_ot(e):function(){return(r.size||6)/2}),e.selectedpoints&&Du.extendFlat(t,Sa.makeSelectedPointStyleFns(e)),t};Sa.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:Doe*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,C=b!==void 0,E=p!==void 0;return nL.traceIs(e,"symbols")&&(C||E)&&(t.selectedSizeFn=function(A){var L=A.mrc||x/2;return A.selected?C?b/2:L:E?p/2:L}),t};Sa.makeSelectedTextStyleFns=function(e){var t={},r=e.selected||{},n=e.unselected||{},i=e.textfont||{},a=r.textfont||{},o=n.textfont||{},s=i.color,l=a.color,u=o.color;return t.selectedTextColorFn=function(c){var f=c.tc||s;return c.selected?l||f:u||(l?f:Kd.addOpacity(f,Doe))},t};Sa.selectedPointStyle=function(e,t){if(!(!e.size()||!t.selectedpoints)){var r=Sa.makeSelectedPointStyleFns(t),n=t.marker||{},i=[];r.selectedOpacityFn&&i.push(function(a,o){a.style("opacity",r.selectedOpacityFn(o))}),r.selectedColorFn&&i.push(function(a,o){Kd.fill(a,r.selectedColorFn(o))}),r.selectedSizeFn&&i.push(function(a,o){var s=o.mx||n.symbol||0,l=r.selectedSizeFn(o);a.attr("d",zoe(Sa.symbolNumber(s),l,Hq(o,t),Gq(o,t))),o.mrc2=l}),i.length&&e.each(function(a){for(var o=dd.select(this),s=0;s<i.length;s++)i[s](o,a)})}};Sa.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 vot.makeColorScaleFuncFromTrace(r)}return Du.identity};var Oq={start:1,end:-1,middle:0,bottom:1,top:-1};function Boe(e,t,r,n,i){var a=dd.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=(aL.lineCount(e)-1)*mot+1,c=Oq[s]*l,f=r*.75+Oq[o]*l+(Oq[o]-1)*u*r/2;e.attr("text-anchor",s),i||a.attr("transform",eM(c,f))}function Noe(e,t){var r=e.ts||t.textfont.size;return Ab(r)&&r>0?r:0}Sa.textPointStyle=function(e,t,r){if(e.size()){var n;if(t.selectedpoints){var i=Sa.makeSelectedTextStyleFns(t);n=i.selectedTextColorFn}var a=t.texttemplate,o=r._fullLayout;e.each(function(s){var l=dd.select(this),u=a?Du.extractOption(s,t,"txt","texttemplate"):Du.extractOption(s,t,"tx","text");if(!u&&u!==0){l.remove();return}if(a){var c=t._module.formatLabels,f=c?c(s,t,o):{},h={};xot(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=Noe(s,t),b=n?n(s):s.tc||t.textfont.color;l.call(Sa.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(aL.convertToTspans,r).call(Boe,v,x,s.mrc)})}};Sa.selectedTextStyle=function(e,t){if(!(!e.size()||!t.selectedpoints)){var r=Sa.makeSelectedTextStyleFns(t);e.each(function(n){var i=dd.select(this),a=r.selectedTextColorFn(n),o=n.tp||t.textposition,s=Noe(n,t);Kd.fill(i,a);var l=nL.traceIs(t,"bar-like");Boe(i,o,s,n.mrc2||n.mrc,l)})}};var Eoe=.5;Sa.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(iL(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};Sa.smoothclosed=function(e,t){if(e.length<3)return"M"+e.join("L")+"Z";var r="M"+e[0],n=e.length-1,i=[iL(e[n],e[0],e[1],t)],a;for(a=1;a<n;a++)i.push(iL(e[a-1],e[a],e[a+1],t));for(i.push(iL(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 Uoe,Voe;function M3(e,t,r){return r&&(e=Goe(e)),t?Tb(e[1]):wb(e[0])}function wb(e){var t=dd.round(e,2);return Uoe=t,t}function Tb(e){var t=dd.round(e,2);return Voe=t,t}function iL(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,Eoe/2),u=Math.pow(o*o+s*s,Eoe/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 Mot={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)}},Eot=function(e,t,r){return"L"+M3(t,0,r)+","+M3(t,1,r)};Sa.steps=function(e){var t=Mot[e]||Eot;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 Goe(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]:Uoe||0,u=t?t[1]:Voe||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,C=p.symbol;Du.isArrayOrTypedArray(C)&&(C=C[b]);var E=p.size;Du.isArrayOrTypedArray(E)&&(E=E[b]),x=p?Sa.symbolBackOffs[Sa.symbolNumber(C)]*E:0,x+=Sa.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}Sa.applyBackoff=Goe;Sa.makeTester=function(){var e=Du.ensureSingleById(dd.select("body"),"svg","js-plotly-tester",function(r){r.attr(pot.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"})});Sa.tester=e,Sa.testref=t};Sa.savedBBoxes={};var qq=0,Cot=1e4;Sa.bBox=function(e,t,r){r||(r=Coe(e));var n;if(r){if(n=Sa.savedBBoxes[r],n)return Du.extendFlat({},n)}else if(e.childNodes.length===1){var i=e.childNodes[0];if(r=Coe(i),r){var a=+i.getAttribute("x")||0,o=+i.getAttribute("y")||0,s=i.getAttribute("transform");if(!s){var l=Sa.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=Sa.savedBBoxes[r],n)return Du.extendFlat({},n)}}var u,c;t?u=e:(c=Sa.tester.node(),u=e.cloneNode(!0),c.appendChild(u)),dd.select(u).attr("transform",null).call(aL.positionText,0,0);var f=u.getBoundingClientRect(),h=Sa.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 qq>=Cot&&(Sa.savedBBoxes={},qq=0),r&&(Sa.savedBBoxes[r]=d),qq++,Du.extendFlat({},d)};function Coe(e){var t=e.getAttribute("data-unformatted");if(t!==null)return t+e.getAttribute("data-math")+e.getAttribute("text-anchor")+e.getAttribute("style")}Sa.setClipUrl=function(e,t,r){e.attr("clip-path",Vq(t,r))};function Vq(e,t){if(!e)return null;var r=t._context,n=r._exportedPlot?"":r._baseUrl||"";return n?"url('"+n+"#"+e+"')":"url(#"+e+")"}Sa.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}};Sa.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+=eM(t,r),o=o.trim(),e[a]("transform",o),o};Sa.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}};Sa.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 kot=/\s*sc.*/;Sa.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(kot,"");i+=n,i=i.trim(),this.setAttribute("transform",i)})}};var Lot=/translate\([^)]*\)\s*$/;Sa.setTextPointsScale=function(e,t,r){e&&e.each(function(){var n,i=dd.select(this),a=i.select("text");if(a.node()){var o=parseFloat(a.attr("x")||0),s=parseFloat(a.attr("y")||0),l=(i.attr("transform")||"").match(Lot);t===1&&r===1?n=[]:n=[eM(o,s),"scale("+t+","+r+")",eM(-o,-s)],l&&n.push(l),i.attr("transform",n.join(""))}})};function Gq(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}Sa.getMarkerStandoff=Gq;var QS=Math.atan2,bb=Math.cos,E3=Math.sin;function koe(e,t){var r=t[0],n=t[1];return[r*bb(e)-n*E3(e),r*E3(e)+n*bb(e)]}var Loe,Poe,Ioe,Roe,Bq,Nq;function Hq(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=QS(h[1]-i,h[0]-n),v=QS(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,C=Loe/180*Math.PI,E=Poe/180*Math.PI,A=C-b,L=bb(E)*E3(A),_=E3(E)*bb(p)-bb(E)*E3(p)*bb(A);x=-QS(L,_)-Math.PI,Loe=u,Poe=c}var k=koe(d,[bb(x),0]),M=koe(v,[E3(x),0]);r=QS(k[1]+M[1],k[0]+M[0])/Math.PI*180,a==="previous"&&!(Nq===t.uid&&e.i===Bq+1)&&(r=null)}if(a==="previous"&&!t._geo)if(Nq===t.uid&&e.i===Bq+1&&Ab(n)&&Ab(i)){var g=n-Ioe,P=i-Roe,T=t.line&&t.line.shape||"",z=T.slice(T.length-1);z==="h"&&(P=0),z==="v"&&(g=0),r+=QS(P,g)/Math.PI*180+90}else r=null}return Ioe=n,Roe=i,Bq=e.i,Nq=t.uid,r}Sa.getMarkerAngle=Hq});var Mb=ye((Nir,Zoe)=>{"use strict";var C3=Oa(),Pot=Eo(),Iot=Mc(),jq=qa(),Sb=Dr(),joe=Sb.strTranslate,oL=So(),sL=Ca(),k3=iu(),Woe=U1(),Rot=Kh().OPPOSITE_SIDE,Xoe=/ [XY][0-9]* /,Wq=1.6,Xq=1.6;function Dot(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,C=b.size,E=b.color,A=b.weight,L=b.style,_=b.variant,k=b.textcase,M=b.lineposition,g=b.shadow,P=r.subtitlePropName,T=!!P,z=r.subtitlePlaceholder,O=(i.title||{}).subtitle||{text:"",font:{}},V=O.text.trim(),G=!1,Z=1,H=O.font,N=H.family,j=H.size,re=H.color,oe=H.weight,_e=H.style,Me=H.variant,ke=H.textcase,me=H.lineposition,ie=H.shadow,Se;a==="title.text"?Se="titleText":a.indexOf("axis")!==-1?Se="axisTitleText":a.indexOf("colorbar")!==-1&&(Se="colorbarTitleText");var Le=e._context.edits[Se];function Ae(Nt,$t){return Nt===void 0||$t===void 0?!1:Nt.replace(Xoe," % ")===$t.replace(Xoe," % ")}v===""?h=0:Ae(v,o)&&(Le||(v=""),h=.2,x=!0),T&&(V===""?Z=0:Ae(V,z)&&(Le||(V=""),Z=.2,G=!0)),r._meta?v=Sb.templateString(v,r._meta):n._meta&&(v=Sb.templateString(v,n._meta));var De=v||V||Le,Pe;f||(f=Sb.ensureSingle(n._infolayer,"g","g-"+t),Pe=n._hColorbarMoveTitle);var ge=f.selectAll("text."+t).data(De?[0]:[]);ge.enter().append("text"),ge.text(v).attr("class",t),ge.exit().remove();var Fe=null,ce=t+"-subtitle",Ze=V||Le;if(T&&Ze&&(Fe=f.selectAll("text."+ce).data(Ze?[0]:[]),Fe.enter().append("text"),Fe.text(V).attr("class",ce),Fe.exit().remove()),!De)return f;function ct(Nt,$t){Sb.syncOrAsync([pt,Wt],{title:Nt,subtitle:$t})}function pt(Nt){var $t=Nt.title,sr=Nt.subtitle,wr;!c&&Pe&&(c={}),c?(wr="",c.rotate&&(wr+="rotate("+[c.rotate,u.x,u.y]+")"),(c.offset||Pe)&&(wr+=joe(0,(c.offset||0)-(Pe||0)))):wr=null,$t.attr("transform",wr);function ur(bt){if(bt){var yt=C3.select(bt.node().parentNode).select("."+ce);if(!yt.empty()){var Yt=bt.node().getBBox();if(Yt.height){var lr=Yt.y+Yt.height+Wq*j;yt.attr("y",lr)}}}}if($t.style("opacity",h*sL.opacity(E)).call(oL.font,{color:sL.rgb(E),size:C3.round(C,2),family:p,weight:A,style:L,variant:_,textcase:k,shadow:g,lineposition:M}).attr(u).call(k3.convertToTspans,e,ur),sr){var Qe=f.select("."+t+"-math-group"),Et=$t.node().getBBox(),er=Qe.node()?Qe.node().getBBox():void 0,Ut=er?er.y+er.height+Wq*j:Et.y+Et.height+Xq*j,Ft=Sb.extendFlat({},u,{y:Ut});sr.attr("transform",wr),sr.style("opacity",Z*sL.opacity(re)).call(oL.font,{color:sL.rgb(re),size:C3.round(j,2),family:N,weight:oe,style:_e,variant:Me,textcase:ke,shadow:ie,lineposition:me}).attr(Ft).call(k3.convertToTspans,e)}return Iot.previousPromises(e)}function Wt(Nt){var $t=Nt.title,sr=C3.select($t.node().parentNode);if(l&&l.selection&&l.side&&v){sr.attr("transform",null);var wr=Rot[l.side],ur=l.side==="left"||l.side==="top"?-1:1,Qe=Pot(l.pad)?l.pad:2,Et=oL.bBox(sr.node()),er={t:0,b:0,l:0,r:0},Ut=e._fullLayout._reservedMargin;for(var Ft in Ut)for(var bt in Ut[Ft]){var yt=Ut[Ft][bt];er[bt]=Math.max(er[bt],yt)}var Yt={left:er.l,top:er.t,right:n.width-er.r,bottom:n.height-er.b},lr=l.maxShift||ur*(Yt[l.side]-Et[l.side]),Tr=0;if(lr<0)Tr=lr;else{var Rr=l.offsetLeft||0,ei=l.offsetTop||0;Et.left-=Rr,Et.right-=Rr,Et.top-=ei,Et.bottom-=ei,l.selection.each(function(){var Ur=oL.bBox(this);Sb.bBoxIntersect(Et,Ur,Qe)&&(Tr=Math.max(Tr,ur*(Ur[l.side]-Et[wr])+Qe))}),Tr=Math.min(lr,Tr),i._titleScoot=Math.abs(Tr)}if(Tr>0||lr<0){var Wr={left:[-Tr,0],right:[Tr,0],top:[0,-Tr],bottom:[0,Tr]}[l.side];sr.attr("transform",joe(Wr[0],Wr[1]))}}}ge.call(ct,Fe);function st(Nt,$t){Nt.text($t).on("mouseover.opacity",function(){C3.select(this).transition().duration(Woe.SHOW_PLACEHOLDER).style("opacity",1)}).on("mouseout.opacity",function(){C3.select(this).transition().duration(Woe.HIDE_PLACEHOLDER).style("opacity",0)})}if(Le&&(v?ge.on(".opacity",null):(st(ge,o),x=!0),ge.call(k3.makeEditable,{gd:e}).on("edit",function(Nt){s!==void 0?jq.call("_guiRestyle",e,a,Nt,s):jq.call("_guiRelayout",e,a,Nt)}).on("cancel",function(){this.text(this.attr("data-unformatted")).call(ct)}).on("input",function(Nt){this.text(Nt||" ").call(k3.positionText,u.x,u.y)}),T)){if(T&&!v){var lt=ge.node().getBBox(),Gt=lt.y+lt.height+Xq*j;Fe.attr("y",Gt)}V?Fe.on(".opacity",null):(st(Fe,z),G=!0),Fe.call(k3.makeEditable,{gd:e}).on("edit",function(Nt){jq.call("_guiRelayout",e,"title.subtitle.text",Nt)}).on("cancel",function(){this.text(this.attr("data-unformatted")).call(ct)}).on("input",function(Nt){this.text(Nt||" ").call(k3.positionText,Fe.attr("x"),Fe.attr("y"))})}return ge.classed("js-placeholder",x),Fe&&Fe.classed("js-placeholder",G),f}Zoe.exports={draw:Dot,SUBTITLE_PADDING_EM:Xq,SUBTITLE_PADDING_MATHJAX_EM:Wq}});var ym=ye((Uir,Qoe)=>{"use strict";var Fot=Oa(),zot=e3().utcFormat,yc=Dr(),Oot=yc.numberFormat,gm=Eo(),a_=yc.cleanNumber,qot=yc.ms2DateTime,Yoe=yc.dateTime2ms,mm=yc.ensureNumber,Koe=yc.isArrayOrTypedArray,o_=hs(),lL=o_.FP_SAFE,bg=o_.BADNUM,Bot=o_.LOG_CLIP,Not=o_.ONEWEEK,uL=o_.ONEDAY,cL=o_.ONEHOUR,Joe=o_.ONEMIN,$oe=o_.ONESEC,fL=hf(),vL=hd(),hL=vL.HOUR_PATTERN,dL=vL.WEEKDAY_PATTERN;function tM(e){return Math.pow(10,e)}function Zq(e){return e!=null}Qoe.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],k=t.range[1];return .5*(_+k-2*Bot*Math.abs(_-k))}else return bg}function o(A,L,_,k){if((k||{}).msUTC&&gm(A))return+A;var M=Yoe(A,_||t.calendar);if(M===bg)if(gm(A)){A=+A;var g=Math.floor(yc.mod(A+.05,1)*10),P=Math.round(A-g/10);M=Yoe(new Date(P))+g/10}else return bg;return M}function s(A,L,_){return qot(A,L,_||t.calendar)}function l(A){return t._categories[Math.round(A)]}function u(A){if(Zq(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),k=0;k<L;k++){var M=(A[0]||[])[k],g=(A[1]||[])[k];_[k]=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 Fot.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 C=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 _=C;t.range[0]>t.range[1]&&(_=!_);for(var k=_?-1:1,M=k*A,g=0,P=0;P<L;P++){var T=k*t._rangebreaks[P].min,z=k*t._rangebreaks[P].max;if(M<T)break;if(M>z)g=P+1;else{g=M<(T+z)/2?P:P+1;break}}var O=t._B[g]||0;return isFinite(O)?v(A,t._m2,O):0},p=function(A){var L=t._rangebreaks.length;if(!L)return x(A,t._m,t._b);for(var _=0,k=0;k<L&&!(A<t._rangebreaks[k].pmin);k++)A>t._rangebreaks[k].pmax&&(_=k+1);return x(A,t._m2,t._B[_])}}t.c2l=t.type==="log"?a:mm,t.l2c=t.type==="log"?tM: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 tM(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 tM(a_(A))},t.d2c=t.r2l=a_,t.c2d=t.l2r=mm,t.c2r=a,t.l2d=tM,t.d2p=function(A,L){return t.l2p(t.d2r(A,L))},t.p2d=function(A){return tM(p(A))},t.r2p=function(A){return t.l2p(a_(A))},t.p2r=p,t.cleanPos=mm):t.type==="date"?(t.d2r=t.r2d=yc.identity,t.d2c=t.r2c=t.d2l=t.r2l=o,t.c2d=t.c2r=t.l2d=t.l2r=s,t.d2p=t.r2p=function(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 yc.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,_,k,M=t._matchGroup;if(M&&t._categories.length===0){for(var g in M)if(g!==n){var P=r[fL.id2name(g)];L=L.concat(P._traceIndices)}}var T=[[0,{}],[0,{}]],z=[];for(_=0;_<L.length;_++){var O=A[L[_]];if(i in O){var V=O[i],G=O._length||yc.minRowLength(V);if(Koe(V[0])&&Koe(V[1]))for(k=0;k<G;k++){var Z=V[0][k],H=V[1][k];Zq(Z)&&Zq(H)&&(z.push([Z,H]),Z in T[0][1]||(T[0][1][Z]=T[0][0]++),H in T[1][1]||(T[1][1][H]=T[1][0]++))}}}for(z.sort(function(N,j){var re=T[0][1],oe=re[N[0]]-re[j[0]];if(oe)return oe;var _e=T[1][1];return _e[N[1]]-_e[j[1]]}),_=0;_<z.length;_++)u(z[_])}),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 k=yc.nestedProperty(t,A).get(),M=yc.simpleMap(k,t.r2l),g=M[1]<M[0];g&&M.reverse();var P=yc.simpleMap([L,_],t.r2l);if(L!==void 0&&M[0]<P[0]&&(k[g?1:0]=L),_!==void 0&&M[1]>P[1]&&(k[g?0:1]=_),k[0]===k[1]){var T=t.l2r(L),z=t.l2r(_);if(L!==void 0){var O=T+1;_!==void 0&&(O=Math.min(O,z)),k[g?1:0]=O}if(_!==void 0){var V=z+1;L!==void 0&&(V=Math.max(V,T)),k[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 _=yc.nestedProperty(t,A).get(),k,M;if(t.type==="date"?M=yc.dfltRange(t.calendar):i==="y"?M=vL.DFLTRANGEY:t._name==="realaxis"?M=[0,1]:M=L.dfltRange||vL.DFLTRANGEX,M=M.slice(),(t.rangemode==="tozero"||t.rangemode==="nonnegative")&&(M[0]=0),!_||_.length!==2){yc.nestedProperty(t,A).set(M);return}var g=_[0]===null,P=_[1]===null;for(t.type==="date"&&!t.autorange&&(_[0]=yc.cleanDate(_[0],bg,t.calendar),_[1]=yc.cleanDate(_[1],bg,t.calendar)),k=0;k<2;k++)if(t.type==="date"){if(!yc.isDateTime(_[k],t.calendar)){t[A]=M;break}if(t.r2l(_[0])===t.r2l(_[1])){var T=yc.constrain(t.r2l(_[0]),yc.MIN_MS+1e3,yc.MAX_MS-1e3);_[0]=t.l2r(T-1e3),_[1]=t.l2r(T+1e3);break}}else{if(!gm(_[k]))if(!(g||P)&&gm(_[1-k]))_[k]=_[1-k]*(k?10:.1);else{t[A]=M;break}if(_[k]<-lL?_[k]=-lL:_[k]>lL&&(_[k]=lL),_[0]===_[1]){var z=Math.max(1,Math.abs(_[0]*1e-6));_[0]-=z,_[1]+=z}}},t.setScale=function(A){var L=r._size;if(t.overlaying){var _=fL.getFromId({_fullLayout:r},t.overlaying);t.domain=_.domain}var k=A&&t._r?"_r":"range",M=t.calendar;t.cleanRange(k);var g=t.r2l(t[k][0],M),P=t.r2l(t[k][1],M),T=i==="y";if(T?(t._offset=L.t+(1-t.domain[1])*L.h,t._length=L.h*(t.domain[1]-t.domain[0]),t._m=t._length/(g-P),t._b=-t._m*P):(t._offset=L.l+t.domain[0]*L.w,t._length=L.w*(t.domain[1]-t.domain[0]),t._m=t._length/(P-g),t._b=-t._m*g),t._rangebreaks=[],t._lBreaks=0,t._m2=0,t._B=[],t.rangebreaks){var z,O;if(t._rangebreaks=t.locateBreaks(Math.min(g,P),Math.max(g,P)),t._rangebreaks.length){for(z=0;z<t._rangebreaks.length;z++)O=t._rangebreaks[z],t._lBreaks+=Math.abs(O.max-O.min);var V=T;g>P&&(V=!V),V&&t._rangebreaks.reverse();var G=V?-1:1;for(t._m2=G*t._length/(Math.abs(P-g)-t._lBreaks),t._B.push(-t._m2*(T?P:g)),z=0;z<t._rangebreaks.length;z++)O=t._rangebreaks[z],t._B.push(t._B[t._B.length-1]-G*t._m2*(O.max-O.min));for(z=0;z<t._rangebreaks.length;z++)O=t._rangebreaks[z],O.pmin=b(O.min),O.pmax=b(O.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||[],_,k,M,g,P;L._cachedPatterns||(L._cachedPatterns=L.map(function(re){return re.enabled&&re.bounds?yc.simpleMap(re.bounds,re.pattern?a_:t.d2c):null})),L._cachedValues||(L._cachedValues=L.map(function(re){return re.enabled&&re.values?yc.simpleMap(re.values,t.d2c).sort(yc.sorterAsc):null}));for(var T=0;T<L.length;T++){var z=L[T];if(z.enabled){if(z.bounds){var O=z.pattern;switch(_=L._cachedPatterns[T],k=_[0],M=_[1],O){case dL:P=new Date(A),g=P.getUTCDay(),k>M&&(M+=7,g<k&&(g+=7));break;case hL:P=new Date(A);var V=P.getUTCHours(),G=P.getUTCMinutes(),Z=P.getUTCSeconds(),H=P.getUTCMilliseconds();g=V+(G/60+Z/3600+H/36e5),k>M&&(M+=24,g<k&&(g+=24));break;case"":g=A;break}if(g>=k&&g<M)return bg}else for(var N=L._cachedValues[T],j=0;j<N.length;j++)if(k=N[j],M=k+z.dvalue,A>=k&&A<M)return bg}}return A},t.locateBreaks=function(A,L){var _,k,M,g,P=[];if(!t.rangebreaks)return P;var T=t.rangebreaks.slice().sort(function(_e,Me){return _e.pattern===dL&&Me.pattern===hL?-1:Me.pattern===dL&&_e.pattern===hL?1:0}),z=function(_e,Me){if(_e=yc.constrain(_e,A,L),Me=yc.constrain(Me,A,L),_e!==Me){for(var ke=!0,me=0;me<P.length;me++){var ie=P[me];_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 O=T[_];if(O.enabled)if(O.bounds){var V=A,G=L;O.pattern&&(V=Math.floor(V)),k=yc.simpleMap(O.bounds,O.pattern?a_:t.r2l),M=k[0],g=k[1];var Z=new Date(V),H,N;switch(O.pattern){case dL:N=Not,H=((g<M?7:0)+(g-M))*uL,V+=M*uL-(Z.getUTCDay()*uL+Z.getUTCHours()*cL+Z.getUTCMinutes()*Joe+Z.getUTCSeconds()*$oe+Z.getUTCMilliseconds());break;case hL:N=uL,H=((g<M?24:0)+(g-M))*cL,V+=M*cL-(Z.getUTCHours()*cL+Z.getUTCMinutes()*Joe+Z.getUTCSeconds()*$oe+Z.getUTCMilliseconds());break;default:V=Math.min(k[0],k[1]),G=Math.max(k[0],k[1]),N=G-V,H=N}for(var j=V;j<G;j+=N)z(j,j+H)}else for(var re=yc.simpleMap(O.values,t.d2c),oe=0;oe<re.length;oe++)M=re[oe],g=M+O.dvalue,z(M,g)}return P.sort(function(_e,Me){return _e.min-Me.min}),P},t.makeCalcdata=function(A,L,_){var k,M,g,P,T=t.type,z=T==="date"&&A[L+"calendar"];if(L in A){if(k=A[L],P=A._length||yc.minRowLength(k),yc.isTypedArray(k)&&(T==="linear"||T==="log")){if(P===k.length)return k;if(k.subarray)return k.subarray(0,P)}if(T==="multicategory")return c(k,P);for(M=new Array(P),g=0;g<P;g++)M[g]=t.d2c(k[g],0,z,_)}else{var O=L+"0"in A?t.d2c(A[L+"0"],0,z):0,V=A["d"+L]?Number(A["d"+L]):1;for(k=A[{x:"y",y:"x"}[L]],P=A._length||k.length,M=new Array(P),g=0;g<P;g++)M[g]=O+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),k=t.r2l(t.range[0]),M=t.r2l(t.range[1]);return k<M?k<=_&&_<=M:M<=_&&_<=k},t._emptyCategories=function(){t._categories=[],t._categoriesMap={}},t.clearCalc=function(){var A=t._matchGroup;if(A){var L=null,_=null;for(var k in A){var M=r[fL.id2name(k)];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 k in _)if(n!==k){var M=r[fL.id2name(k)];M._categories=t._categories,M._categoriesMap=t._categoriesMap,A=A.concat(M._traceIndices)}return A};var E=r._d3locale;t.type==="date"&&(t._dateFormat=E?E.timeFormat:zot,t._extraFormat=r._extraFormat),t._separators=r.separators,t._numFormat=E?E.numberFormat:Oot,delete t._minDtick,delete t._forceTick0}});var L3=ye((Vir,ise)=>{"use strict";var ese=Eo(),Yq=Dr(),Uot=hs().BADNUM,pL=Yq.isArrayOrTypedArray,Vot=Yq.isDateTime,Got=Yq.cleanNumber,tse=Math.round;ise.exports=function(t,r,n){var i=t,a=n.noMultiCategory;if(pL(i)&&!i.length)return"-";if(!a&&Zot(i))return"multicategory";if(a&&Array.isArray(i[0])){for(var o=[],s=0;s<i.length;s++)if(pL(i[s]))for(var l=0;l<i[s].length;l++)o.push(i[s][l]);i=o}if(Wot(i,r))return"date";var u=n.autotypenumbers!=="strict";return Xot(i,u)?"category":jot(i,u)?"linear":"-"};function Hot(e,t){return t?ese(e):typeof e=="number"}function jot(e,t){for(var r=e.length,n=0;n<r;n++)if(Hot(e[n],t))return!0;return!1}function Wot(e,t){for(var r=e.length,n=rse(r),i=0,a=0,o={},s=0;s<r;s+=n){var l=tse(s),u=e[l],c=String(u);o[c]||(o[c]=1,Vot(u,t)&&i++,ese(u)&&a++)}return i>a*2}function rse(e){return Math.max(1,(e-1)/1e3)}function Xot(e,t){for(var r=e.length,n=rse(r),i=0,a=0,o={},s=0;s<r;s+=n){var l=tse(s),u=e[l],c=String(u);if(!o[c]){o[c]=1;var f=typeof u;f==="boolean"?a++:(t?Got(u)!==Uot:f==="number")?i++:f==="string"&&a++}}return a>i*2}function Zot(e){return pL(e[0])&&pL(e[1])}});var wg=ye((Gir,fse)=>{"use strict";var Yot=Oa(),sse=Eo(),s_=Dr(),gL=hs().FP_SAFE,Kot=qa(),Jot=So(),lse=hf(),$ot=lse.getFromId,Qot=lse.isLinked;fse.exports={applyAutorangeOptions:cse,getAutoRange:Kq,makePadFn:Jq,doAutoRange:tst,findExtremes:rst,concatExtremes:eB};function Kq(e,t){var r,n,i=[],a=e._fullLayout,o=Jq(a,t,0),s=Jq(a,t,1),l=eB(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",C=b==="nonnegative",E=t._length,A=E/10,L=0,_,k,M,g,P,T;for(r=0;r<u.length;r++)for(_=u[r],n=0;n<c.length;n++)k=c[n],T=k.val-_.val-nse(t,_.val,k.val),T>0&&(P=E-o(_)-s(k),P>A?T/P>L&&(M=_,g=k,L=T/P):T/E>L&&(M={val:_.val,nopad:1},g={val:k.val,nopad:1},L=T/E));function z(H,N){return Math.max(H,s(N))}if(f===h){var O=f-1,V=f+1;if(p)if(f===0)i=[0,1];else{var G=(f>0?c:u).reduce(z,0),Z=f/(1-Math.min(.5,G/E));i=f>0?[0,Z]:[Z,0]}else C?i=[Math.max(0,O),Math.max(1,V)]:i=[O,V]}else p?(M.val>=0&&(M={val:0,nopad:1}),g.val<=0&&(g={val:0,nopad:1})):C&&(M.val-L*o(M)<0&&(M={val:0,nopad:1}),g.val<=0&&(g={val:1,nopad:1})),L=(g.val-M.val-nse(t,_.val,k.val))/(E-o(M)-s(g)),i=[M.val-L*o(M),g.val+L*s(g)];return i=cse(i,t),t.limitRange&&t.limitRange(),v&&i.reverse(),s_.simpleMap(i,t.l2r||Number)}function nse(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 Jq(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 Qot(e,t._id)||(s=est(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 ase=3;function est(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(C){var E=Yot.select(this),A=E.select(".text-math-group");A.empty()&&(C.bb=Jot.bBox(E.node()))})}for(var d=0;d<s._vals.length;d++){var v=s._vals[d],x=v.bb;if(x){var b=2*ase+x.width,p=2*ase+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 eB(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 C=b[p[l]],E=(C._extremes||{})[n];if(C.visible===!0&&E){for(u=0;u<E.min.length;u++)c=E.min[u],$q(o,c.val,c.pad,{extrapad:c.extrapad});for(u=0;u<E.max.length;u++)c=E.max[u],Qq(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=$ot(e,h),v=eB(e,d,!0),x=t._length/d._length;for(u=0;u<v.min.length;u++)c=v.min[u],$q(o,c.val,c.pad*x,{extrapad:c.extrapad});for(u=0;u<v.max.length;u++)c=v.max[u],Qq(s,c.val,c.pad*x,{extrapad:c.extrapad})}}return{min:o,max:s}}function tst(e,t,r){if(t.setScale(),t.autorange){t.range=r?r.slice():Kq(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,Kot.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=Kq(e,t)),a._input.rangeslider[t._name]=s_.extendFlat({},o)}}function rst(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,C,E;function A(z){if(Array.isArray(z))return u=!0,function(V){return Math.max(Number(z[V]||0),0)};var O=Math.max(Number(z||0),0);return function(){return O}}var L=A((e._m>0?r.ppadplus:r.ppadminus)||r.ppad||0),_=A((e._m>0?r.ppadminus:r.ppadplus)||r.ppad||0),k=A(r.vpadplus||r.vpad),M=A(r.vpadminus||r.vpad);if(!u){if(C=1/0,E=-1/0,l)for(f=0;f<a;f++)h=t[f],h<C&&h>0&&(C=h),h>E&&h<gL&&(E=h);else for(f=0;f<a;f++)h=t[f],h<C&&h>-gL&&(C=h),h>E&&h<gL&&(E=h);t=[C,E],a=2}var g={tozero:s,extrapad:o};function P(z){d=t[z],sse(d)&&(b=L(z),p=_(z),c?(v=e.c2l(d)-M(z),x=e.c2l(d)+k(z)):(C=d-M(z),E=d+k(z),l&&C<E/10&&(C=E/10),v=e.c2l(C),x=e.c2l(E)),s&&(v=Math.min(0,v),x=Math.max(0,x)),ose(v)&&$q(n,v,p,g),ose(x)&&Qq(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 $q(e,t,r,n){use(e,t,r,n,ist)}function Qq(e,t,r,n){use(e,t,r,n,nst)}function use(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 ose(e){return sse(e)&&Math.abs(e)<gL}function ist(e,t){return e<=t}function nst(e,t){return e>=t}function ast(e,t){var r=t.autorangeoptions;return r&&r.minallowed!==void 0&&mL(t,r.minallowed,r.maxallowed)?r.minallowed:r&&r.clipmin!==void 0&&mL(t,r.clipmin,r.clipmax)?Math.max(e,t.d2l(r.clipmin)):e}function ost(e,t){var r=t.autorangeoptions;return r&&r.maxallowed!==void 0&&mL(t,r.minallowed,r.maxallowed)?r.maxallowed:r&&r.clipmax!==void 0&&mL(t,r.clipmin,r.clipmax)?Math.min(e,t.d2l(r.clipmax)):e}function mL(e,t,r){return t!==void 0&&r!==void 0?(t=e.d2l(t),r=e.d2l(r),t<r):!0}function cse(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=ast(r,t),n=ost(n,t),[r,n]}});var ho=ye((Hir,Rse)=>{"use strict";var w0=Oa(),kh=Eo(),P3=Mc(),iM=qa(),Jo=Dr(),I3=Jo.strTranslate,Eb=iu(),sst=Mb(),nM=Ca(),Xp=So(),lst=Rd(),hse=Aq(),Jd=hs(),ust=Jd.ONEMAXYEAR,xL=Jd.ONEAVGYEAR,bL=Jd.ONEMINYEAR,cst=Jd.ONEMAXQUARTER,nB=Jd.ONEAVGQUARTER,wL=Jd.ONEMINQUARTER,fst=Jd.ONEMAXMONTH,R3=Jd.ONEAVGMONTH,TL=Jd.ONEMINMONTH,Zp=Jd.ONEWEEK,zv=Jd.ONEDAY,l_=zv/2,xm=Jd.ONEHOUR,aM=Jd.ONEMIN,AL=Jd.ONESEC,hst=Jd.ONEMILLI,dst=Jd.ONEMICROSEC,Cb=Jd.MINUS_SIGN,EL=Jd.BADNUM,aB={K:"zeroline"},oB={K:"gridline",L:"path"},sB={K:"minor-gridline",L:"path"},Tse={K:"tick",L:"path"},dse={K:"tick",L:"text"},vse={width:["x","r","l","xl","xr"],height:["y","t","b","yt","yb"],right:["r","xr"],left:["l","xl"],top:["t","yt"],bottom:["b","yb"]},CL=Kh(),rM=CL.MID_SHIFT,kb=CL.CAP_SHIFT,oM=CL.LINE_SPACING,vst=CL.OPPOSITE_SIDE,SL=3,Qn=Rse.exports={};Qn.setConvert=ym();var pst=L3(),Ay=hf(),gst=Ay.idSort,mst=Ay.isLinked;Qn.id2name=Ay.id2name;Qn.name2id=Ay.name2id;Qn.cleanId=Ay.cleanId;Qn.list=Ay.list;Qn.listIds=Ay.listIds;Qn.getFromId=Ay.getFromId;Qn.getFromTrace=Ay.getFromTrace;var Ase=wg();Qn.getAutoRange=Ase.getAutoRange;Qn.findExtremes=Ase.findExtremes;var yst=1e-4;function fB(e){var t=(e[1]-e[0])*yst;return[e[0]-t,e[1]+t]}Qn.coerceRef=function(e,t,r,n,i,a){var o=n.charAt(n.length-1),s=r._fullLayout._subplots[o+"axis"],l=n+"ref",u={};return i||(i=s[0]||(typeof a=="string"?a:a[0])),a||(a=i),s=s.concat(s.map(function(c){return c+" domain"})),u[l]={valType:"enumerated",values:s.concat(a?typeof a=="string"?[a]:a:[]),dflt:i},Jo.coerce(e,t,u,l)};Qn.getRefType=function(e){return e===void 0?e:e==="paper"?"paper":e==="pixel"?"pixel":/( domain)$/.test(e)?"domain":"range"};Qn.coercePosition=function(e,t,r,n,i,a){var o,s,l=Qn.getRefType(n);if(l!=="range")o=Jo.ensureNumber,s=r(i,a);else{var u=Qn.getFromId(t,n);a=u.fraction2r(a),s=r(i,a),o=u.cleanPos}e[i]=o(s)};Qn.cleanPosition=function(e,t,r){var n=r==="paper"||r==="pixel"?Jo.ensureNumber:Qn.getFromId(t,r).cleanPos;return n(e)};Qn.redrawComponents=function(e,t){t=t||Qn.listIds(e);var r=e._fullLayout;function n(i,a,o,s){for(var l=iM.getComponentMethod(i,a),u={},c=0;c<t.length;c++)for(var f=r[Qn.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 _st=Qn.getDataConversions=function(e,t,r,n){var i,a=r==="x"||r==="y"||r==="z"?r:n;if(Jo.isArrayOrTypedArray(a)){if(i={type:pst(n,void 0,{autotypenumbers:e._fullLayout.autotypenumbers}),_categories:[]},Qn.setConvert(i),i.type==="category")for(var o=0;o<n.length;o++)i.d2c(n[o])}else i=Qn.getFromTrace(e,t,a);return i?{d2c:i.d2c,c2d:i.c2d}:a==="ids"?{d2c:gse,c2d:gse}:{d2c:pse,c2d:pse}};function pse(e){return+e}function gse(e){return String(e)}Qn.getDataToCoordFunc=function(e,t,r,n){return _st(e,t,r,n).d2c};Qn.counterLetter=function(e){var t=e.charAt(0);if(t==="x")return"y";if(t==="y")return"x"};Qn.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))};Qn.saveRangeInitial=function(e,t){for(var r=Qn.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};Qn.saveShowSpikeInitial=function(e,t){for(var r=Qn.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};Qn.autoBin=function(e,t,r,n,i,a){var o=Jo.aggNums(Math.min,null,e),s=Jo.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:Jo.simpleMap([o,s],t.c2r,0,i),calendar:i},Qn.setConvert(l),a=a&&hse.dtick(a,l.type),a)l.dtick=a,l.tick0=hse.tick0(void 0,l.type,i);else{var u;if(r)u=(s-o)/r;else{var c=Jo.distinctVals(e),f=Math.pow(10,Math.floor(Math.log(c.minDiff)/Math.LN10)),h=f*Jo.roundUp(c.minDiff/f,[.9,1.9,4.9,9.9],!0);u=Math.max(h,2*Jo.stdev(e)/Math.pow(e.length,n?.25:.4)),kh(u)||(u=1)}Qn.autoTicks(l,u)}var d=l.dtick,v=Qn.tickIncrement(Qn.tickFirst(l),d,"reverse",i),x,b;if(typeof d=="number")v=xst(v,e,l,o,s),b=1+Math.floor((s-v)/d),x=v+b*d;else for(l.dtick.charAt(0)==="M"&&(v=bst(v,e,d,o,i)),x=v,b=0;x<=s;)x=Qn.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 xst(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++:kh(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 bst(e,t,r,n,i){var a=Jo.findExactDates(t,i),o=.8;if(a.exactDays>o){var s=Number(r.substr(1));a.exactYears>o&&s%12===0?e=Qn.tickIncrement(e,"M6","reverse")+zv*1.5:a.exactMonths>o?e=Qn.tickIncrement(e,"M1","reverse")+zv*15.5:e-=l_;var l=Qn.tickIncrement(e,r);if(l<=n)return l}return e}Qn.prepMinorTicks=function(e,t,r){if(!t.minor.dtick){delete e.dtick;var n=t.dtick&&kh(t._tmin),i;if(n){var a=Qn.tickIncrement(t._tmin,t.dtick,!0);i=[t._tmin,a*.99+t._tmin*.01]}else{var o=Jo.simpleMap(t.range,t.r2l);i=[o[0],.8*o[0]+.2*o[1]]}if(e.range=Jo.simpleMap(i,t.l2r),e._isMinor=!0,Qn.prepTicks(e,r),n){var s=kh(t.dtick),l=kh(e.dtick),u=s?t.dtick:+t.dtick.substring(1),c=l?e.dtick:+e.dtick.substring(1);s&&l?tB(u,c)?u===2*Zp&&c===2*zv&&(e.dtick=Zp):u===2*Zp&&c===3*zv?e.dtick=Zp:u===Zp&&!(t._input.minor||{}).nticks?e.dtick=zv:mse(u/c,2.5)?e.dtick=u/2:e.dtick=u:String(t.dtick).charAt(0)==="M"?l?e.dtick="M1":tB(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"?tB(u,c)||(e.dtick=mse(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 tB(e,t){return Math.abs((e/t+.5)%1-.5)<.001}function mse(e,t){return Math.abs(e/t-1)<.001}Qn.prepTicks=function(e,t){var r=Jo.simpleMap(e.range,e.r2l,void 0,void 0,t);if(e.tickmode==="auto"||!e.dtick){var n=e.nticks,i;n||(e.type==="category"||e.type==="multicategory"?(i=e.tickfont?Jo.bigFont(e.tickfont.size||12):15,n=e._length/i):(i=e._id.charAt(0)==="y"?40:80,n=Jo.constrain(e._length/i,4,9)+1),e._name==="radialaxis"&&(n*=2)),e.minor&&e.minor.tickmode!=="array"||e.tickmode==="array"&&(n*=100),e._roughDTick=Math.abs(r[1]-r[0])/n,Qn.autoTicks(e,e._roughDTick),e._minDtick>0&&e.dtick<e._minDtick*2&&(e.dtick=e._minDtick,e.tick0=e.l2r(e._forceTick0))}e.ticklabelmode==="period"&&wst(e),e.tick0||(e.tick0=e.type==="date"?"2000-01-01":0),e.type==="date"&&e.dtick<.1&&(e.dtick=.1),Cse(e)};function rB(e){return+e.substring(1)}function wst(e){var t;function r(){return!(kh(e.dtick)||e.dtick.charAt(0)!=="M")}var n=r(),i=Qn.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=zv,a&&!n&&e.dtick<zv&&(e.dtick=zv)):/%[UVW]/.test(i)?(t=Zp,a&&!n&&e.dtick<Zp&&(e.dtick=Zp)):/%[Bbm]/.test(i)?(t=R3,a&&(n?rB(e.dtick)<1:e.dtick<TL)&&(e.dtick="M1")):/%[q]/.test(i)?(t=nB,a&&(n?rB(e.dtick)<3:e.dtick<wL)&&(e.dtick="M3")):/%[Yy]/.test(i)&&(t=xL,a&&(n?rB(e.dtick)<12:e.dtick<bL)&&(e.dtick="M12")))}n=r(),n&&e.tick0===e._dowTick0&&(e.tick0=e._rawTick0),e._definedDelta=t}function Tst(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>=bL?u>=bL&&u<=ust?f=u:f=xL:r===nB&&c>=wL?u>=wL&&u<=cst?f=u:f=nB:c>=TL?u>=TL&&u<=fst?f=u:f=R3:r===Zp&&c>=Zp?f=Zp:c>=zv?f=zv: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)!==EL&&x++}f*=x/v,f||(e[n].drop=!0),h&&u>Zp&&(f=u)}(f>0||n===0)&&(e[n].periodX=i+f/2)}}Qn.calcTicks=function(t,r){for(var n=t.type,i=t.calendar,a=t.ticklabelstep,o=t.ticklabelmode==="period",s=t.range[0]>t.range[1],l=!t.ticklabelindex||Jo.isArrayOrTypedArray(t.ticklabelindex)?t.ticklabelindex:[t.ticklabelindex],u=Jo.simpleMap(t.range,t.r2l,void 0,void 0,r),c=u[1]<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=[],C=[],E=t.minor&&(t.minor.ticks||t.minor.showgrid),A=1;A>=(E?0:1);A--){var L=!A;A?(t._dtickInit=t.dtick,t._tick0Init=t.tick0):(t.minor._dtickInit=t.minor.dtick,t.minor._tick0Init=t.minor.tick0);var _=A?t:Jo.extendFlat({},t,t.minor);if(L?Qn.prepMinorTicks(_,t,r):Qn.prepTicks(_,r),_.tickmode==="array"){A?(b=[],v=yse(t,!L)):(p=[],x=yse(t,!L));continue}if(_.tickmode==="sync"){b=[],v=Ast(t);continue}var k=fB(u),M=k[0],g=k[1],P=kh(_.dtick),T=n==="log"&&!(P||_.dtick.charAt(0)==="L"),z=Qn.tickFirst(_,r);if(A){if(t._tmin=z,z<M!==c)break;(n==="category"||n==="multicategory")&&(g=c?Math.max(-.5,g):Math.min(t._categories.length-.5,g))}var O=null,V=z,G;if(A){var Z;P?Z=t.dtick:n==="date"?typeof t.dtick=="string"&&t.dtick.charAt(0)==="M"&&(Z=R3*t.dtick.substring(1)):Z=t._roughDTick,G=Math.round((t.r2l(V)-t.r2l(t.tick0))/Z)-1}var H=_.dtick;for(_.rangebreaks&&_._tick0Init!==_.tick0&&(V=iB(V,t),c||(V=Qn.tickIncrement(V,H,!c,i))),A&&o&&(V=Qn.tickIncrement(V,H,!c,i),G--);c?V>=g:V<=g;V=Qn.tickIncrement(V,H,c,i)){if(A&&G++,_.rangebreaks&&!c){if(V<M)continue;if(_.maskBreaks(V)===EL&&iB(V,_)>=h)break}if(b.length>d||V===O)break;O=V;var N={value:V};A?(T&&V!==(V|0)&&(N.simpleLabel=!0),a>1&&G%a&&(N.skipLabel=!0),b.push(N)):(N.minor=!0,p.push(N))}}if(!p||p.length<2)l=!1;else{var j=(p[1].value-p[0].value)*(s?-1:1);Zst(j,t.tickformat)||(l=!1)}if(!l)C=b;else{var re=b.concat(p);o&&b.length&&(re=re.slice(1)),re=re.sort(function(Gt,Nt){return Gt.value-Nt.value}).filter(function(Gt,Nt,$t){return Nt===0||Gt.value!==$t[Nt-1].value});var oe=re.map(function(Gt,Nt){return Gt.minor===void 0&&!Gt.skipLabel?Nt:null}).filter(function(Gt){return Gt!==null});oe.forEach(function(Gt){l.map(function(Nt){var $t=Gt+Nt;$t>=0&&$t<re.length&&Jo.pushUnique(C,re[$t])})})}if(E){var _e=t.minor.ticks==="inside"&&t.ticks==="outside"||t.minor.ticks==="outside"&&t.ticks==="inside";if(!_e){for(var Me=b.map(function(Gt){return Gt.value}),ke=[],me=0;me<p.length;me++){var ie=p[me],Se=ie.value;if(Me.indexOf(Se)===-1){for(var Le=!1,Ae=0;!Le&&Ae<b.length;Ae++)1e7+b[Ae].value===1e7+Se&&(Le=!0);Le||ke.push(ie)}}p=ke}}o&&Tst(C,t,t._definedDelta);var De;if(t.rangebreaks){var Pe=t._id.charAt(0)==="y",ge=1;t.tickmode==="auto"&&(ge=t.tickfont?t.tickfont.size:12);var Fe=NaN;for(De=b.length-1;De>-1;De--){if(b[De].drop){b.splice(De,1);continue}b[De].value=iB(b[De].value,t);var ce=t.c2p(b[De].value);(Pe?Fe>ce-ge:Fe<ce+ge)?b.splice(c?De+1:De,1):Fe=ce}}vB(t)&&Math.abs(u[1]-u[0])===360&&b.pop(),t._tmax=(b[b.length-1]||{}).value,t._prevDateHead="",t._inCalcTicks=!0;var Ze,ct=function(Gt){Gt.text="",t._prevDateHead=Ze};b=b.concat(p);function pt(Gt,Nt){var $t=Qn.tickText(Gt,Nt.value,!1,Nt.simpleLabel),sr=Nt.periodX;return sr!==void 0&&($t.periodX=sr,(sr>h||sr<f)&&(sr>h&&($t.periodX=h),sr<f&&($t.periodX=f),ct($t))),$t}var Wt;for(De=0;De<b.length;De++){var st=b[De].minor,lt=b[De].value;st?(l&&C.indexOf(b[De])!==-1?Wt=pt(t,b[De]):Wt={x:lt},Wt.minor=!0,x.push(Wt)):(Ze=t._prevDateHead,Wt=pt(t,b[De]),(b[De].skipLabel||l&&C.indexOf(b[De])===-1)&&ct(Wt),v.push(Wt))}return v=v.concat(x),t._inCalcTicks=!1,o&&v.length&&(v[0].noTick=!0),v};function Sse(e,t){return e.rangebreaks&&(t=t.filter(function(r){return e.maskBreaks(r.x)!==EL})),t}function Ast(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=Qn.tickText(e,a);t._vals[n].minor&&(o.minor=!0,o.text=""),r.push(o)}}return r=Sse(e,r),r}function yse(e,t){var r=Jo.simpleMap(e.range,e.r2l),n=fB(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){Jo.isArrayOrTypedArray(c)||(c=[]);for(var f=0;f<u.length;f++){var h=o(u[f]);if(h>i&&h<a){var d=Qn.tickText(e,h,!1,String(c[f]));l&&(d.minor=!0,d.text=""),s.push(d)}}}}return s=Sse(e,s),s}var yL=[2,5,10],_se=[1,2,3,6,12],xse=[1,2,5,10,15,30],Sst=[1,2,3,7,14],Mse=[-.046,0,.301,.477,.602,.699,.778,.845,.903,.954,1],Ese=[-.301,0,.301,.699,1],Mst=[15,30,45,90,180];function _m(e,t,r){return t*Jo.roundUp(e/t,r)}Qn.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=Jo.dateTick0(e.calendar,0);var a=2*t;if(a>xL)t/=xL,n=i(10),e.dtick="M"+12*_m(t,n,yL);else if(a>R3)t/=R3,e.dtick="M"+_m(t,1,_se);else if(a>zv){if(e.dtick=_m(t,zv,e._hasDayOfWeekBreaks?[1,2,7,14]:Sst),!r){var o=Qn.getTickFormat(e),s=e.ticklabelmode==="period";s&&(e._rawTick0=e.tick0),/%[uVW]/.test(o)?e.tick0=Jo.dateTick0(e.calendar,2):e.tick0=Jo.dateTick0(e.calendar,1),s&&(e._dowTick0=e.tick0)}}else a>xm?e.dtick=_m(t,xm,_se):a>aM?e.dtick=_m(t,aM,xse):a>AL?e.dtick=_m(t,AL,xse):(n=i(10),e.dtick=_m(t,n,yL))}else if(e.type==="log"){e.tick0=0;var l=Jo.simpleMap(e.range,e.r2l);if(e._isMinor&&(t*=1.5),t>.7)e.dtick=Math.ceil(t);else if(Math.abs(l[1]-l[0])<1){var u=1.5*Math.abs((l[1]-l[0])/t);t=Math.abs(Math.pow(10,l[1])-Math.pow(10,l[0]))/u,n=i(10),e.dtick="L"+_m(t,n,yL)}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))):vB(e)?(e.tick0=0,n=1,e.dtick=_m(t,n,Mst)):(e.tick0=0,n=i(10),e.dtick=_m(t,n,yL));if(e.dtick===0&&(e.dtick=1),!kh(e.dtick)&&typeof e.dtick!="string"){var c=e.dtick;throw e.dtick=1,"ax.dtick error: "+String(c)}};function Cse(e){var t=e.dtick;if(e._tickexponent=0,!kh(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>=zv&&i<=10||t>=zv*15)e._tickround="d";else if(t>=aM&&i<=16||t>=xm)e._tickround="M";else if(t>=AL&&i<=19||t>=aM)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(kh(t)||t.charAt(0)==="L"){var o=e.range.map(e.r2d||Number);kh(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&&(ML(e.exponentformat)&&!hB(l)?e._tickexponent=3*Math.round((l-1)/3):e._tickexponent=l)}else e._tickround=null}Qn.tickIncrement=function(e,t,r,n){var i=r?-1:1;if(kh(t))return Jo.increment(e,i*t);var a=t.charAt(0),o=i*Number(t.substr(1));if(a==="M")return Jo.incrementMonth(e,o,n);if(a==="L")return Math.log(Math.pow(10,e)+o)/Math.LN10;if(a==="D"){var s=t==="D2"?Ese:Mse,l=e+i*.01,u=Jo.roundUp(Jo.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)};Qn.tickFirst=function(e,t){var r=e.r2l||Number,n=Jo.simpleMap(e.range,r,void 0,void 0,t),i=n[1]<n[0],a=i?Math.floor:Math.ceil,o=fB(n)[0],s=e.dtick,l=r(e.tick0);if(kh(s)){var u=a((o-l)/s)*s+l;return(e.type==="category"||e.type==="multicategory")&&(u=Jo.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=Qn.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=Qn.tickIncrement(d,b,x<0?!i:i,e.calendar),h++}return Jo.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"?Ese:Mse,C=Jo.roundUp(Jo.mod(o,1),p,i);return Math.floor(o)+Math.log(w0.round(Math.pow(10,C),1))/Math.LN10}else throw"unrecognized dtick "+String(s)}};Qn.tickText=function(e,t,r,n){var i=kse(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&&Jo.isArrayOrTypedArray(e.ticktext)){var f=Jo.simpleMap(e.range,e.r2l),h=(Math.abs(f[1]-f[0])-(e._lBreaks||0))/1e4;for(u=0;u<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"?Est(e,i,r,o):s==="log"?Cst(e,i,r,o,v):s==="category"?kst(e,i):s==="multicategory"?Lst(e,i,r):vB(e)?Ist(e,i,r,o,v):Pst(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};Qn.hoverLabelText=function(e,t,r){r&&(e=Jo.extendFlat({},e,{hoverformat:r}));var n=Jo.isArrayOrTypedArray(t)?t[0]:t,i=Jo.isArrayOrTypedArray(t)?t[1]:void 0;if(i!==void 0&&i!==n)return Qn.hoverLabelText(e,n,r)+" - "+Qn.hoverLabelText(e,i,r);var a=e.type==="log"&&n<=0,o=Qn.tickText(e,e.c2l(a?-n:n),"hover").text;return a?n===0?"0":Cb+o:o};function kse(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 Est(e,t,r,n){var i=e._tickround,a=r&&e.hoverformat||Qn.getTickFormat(e);n=!a&&n,n&&(kh(i)?i=4:i={y:"m",m:"d",d:"M",M:"S",S:4}[i]);var o=Jo.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=lM(e),c=e._trueSide||e.side;(!u&&c==="top"||u&&c==="bottom")&&(o+="<br> ")}t.text=o}function Cst(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=sM(Math.pow(10,o),e,i,n);else if(kh(a)||l==="D"&&(e.minorloglabels==="complete"||Jo.mod(o+.01,1)<.1)){var u;e.minorloglabels==="complete"&&!(Jo.mod(o+.01,1)<.1)&&(u=!0,t.fontSize*=.75);var c=Math.pow(10,o).toExponential(0),f=c.split("e"),h=+f[1],d=Math.abs(h),v=e.exponentformat;v==="power"||ML(v)&&hB(h)?(t.text=f[0],d>0&&(t.text+="x10"),t.text==="1x10"&&(t.text="10"),h!==0&&h!==1&&(t.text+="<sup>"+(h>0?"":Cb)+d+"</sup>"),t.fontSize*=1.25):(v==="e"||v==="E")&&d>2?t.text=f[0]+v+(h>0?"+":Cb)+d:(t.text=sM(Math.pow(10,o),e,"","fakehover"),a==="D1"&&e._id.charAt(0)==="y"&&(t.dy-=t.fontSize/6))}else if(l==="D")t.text=e.minorloglabels==="none"?"":String(Math.round(Math.pow(10,Jo.mod(o,1)))),t.fontSize*=.75;else throw"unrecognized dtick "+String(a);if(e.dtick==="D1"){var x=String(t.text).charAt(0);(x==="0"||x==="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 kst(e,t){var r=e._categories[Math.round(t.x)];r===void 0&&(r=""),t.text=String(r)}function Lst(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 Pst(e,t,r,n,i){i==="never"?i="":e.showexponent==="all"&&Math.abs(t.x/e.dtick)<1e-6&&(i="hide"),t.text=sM(t.x,e,i,n)}function Ist(e,t,r,n,i){if(e.thetaunit==="radians"&&!r){var a=t.x/180;if(a===0)t.text="0";else{var o=Rst(a);if(o[1]>=100)t.text=sM(Jo.deg2rad(t.x),e,i,n);else{var s=t.x<0;o[1]===1?o[0]===1?t.text="\u03C0":t.text=o[0]+"\u03C0":t.text=["<sup>",o[0],"</sup>","\u2044","<sub>",o[1],"</sub>","\u03C0"].join(""),s&&(t.text=Cb+t.text)}}}else t.text=sM(t.x,e,i,n)}function Rst(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 Dst=["f","p","n","\u03BC","m","","k","M","G","T"];function ML(e){return e==="SI"||e==="B"}function hB(e){return e>14||e<-15}function sM(e,t,r,n){var i=e<0,a=t._tickround,o=r||t.exponentformat||"B",s=t._tickexponent,l=Qn.getTickFormat(t),u=t.separatethousands;if(n){var c={exponentformat:o,minexponent:t.minexponent,dtick:t.showexponent==="none"?t.dtick:kh(e)&&Math.abs(e)||1,range:t.showexponent==="none"?t.range.map(t.r2d):[0,e||1]};Cse(c),a=(Number(c._tickround)||0)+4,s=c._tickexponent,t.hoverformat&&(l=t.hoverformat)}if(l)return t._numFormat(l)(e).replace(/-/g,Cb);var f=Math.pow(10,-a)/2;if(o==="none"&&(s=0),e=Math.abs(e),e<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=Jo.numSeparate(e,t._separators,u)}if(s&&o!=="hide"){ML(o)&&hB(s)&&(o="power");var v;s<0?v=Cb+-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":ML(o)&&(e+=Dst[s/3+5])}return i?Cb+e:e}Qn.getTickFormat=function(e){var t;function r(l){return typeof l!="string"?l:Number(l.replace("M",""))*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};Qn.getSubplots=function(e,t){var r=e._fullLayout._subplots,n=r.cartesian.concat(r.gl2d||[]),i=t?Qn.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};Qn.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};Qn.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=Qn.list(e,"x",!0),a=Qn.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})})}};Qn.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(),c.zerolinelayerAbove&&c.zerolinelayerAbove.selectAll("path").remove(),n._infolayer.select(".g-"+f._id+"title").remove(),n._infolayer.select(".g-"+h._id+"title").remove()}});var i=!t||t==="redraw"?Qn.listIds(e):t,a=Qn.list(e),o=a.filter(function(l){return l.autoshift}).map(function(l){return l.overlaying});i.map(function(l){var u=Qn.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 Jo.syncOrAsync(i.map(function(l){return function(){if(l){var u=Qn.getFromId(e,l);r||(r={}),r.axShifts=s,r.overlayingShiftedAx=o;var c=Qn.drawOne(e,u,r);return u._shiftPusher&&cB(u,u._fullDepth||0,s,!0),u._r=u.range.slice(),u._rl=Jo.simpleMap(u._r,u.r2l),c}}}))};Qn.drawOne=function(e,t,r){r=r||{};var n=r.axShifts||{},i=r.overlayingShiftedAx||[],a,o,s;t.setScale();var l=e._fullLayout,u=t._id,c=u.charAt(0),f=Qn.counterLetter(u),h=l._plots[t._mainSubplot],d=t.zerolinelayer==="above traces";if(!h)return;if(t._shiftPusher=t.autoshift||i.indexOf(t._id)!==-1||i.indexOf(t.overlaying)!==-1,t._shiftPusher&t.anchor==="free"){var v=t.linewidth/2||0;t.ticks==="inside"&&(v+=t.ticklen),cB(t,v,n,!0),cB(t,t.shift||0,n,!1)}(r.skipTitle!==!0||t._shift===void 0)&&(t._shift=Xst(t,n));var x=h[c+"axislayer"],b=t._mainLinePosition,p=b+=t._shift,C=t._mainMirrorPosition,E=t._vals=Qn.calcTicks(t),A=[t.mirror,p,C].join("_");for(a=0;a<E.length;a++)E[a].axInfo=A;t._selections={},t._tickAngles&&(t._prevTickAngles=t._tickAngles),t._tickAngles={},t._depth=null;var L={};function _(lt){var Gt=u+(lt||"tick");return L[Gt]||(L[Gt]=qst(t,Gt,p)),L[Gt]}if(t.visible){var k=Qn.makeTransTickFn(t),M=Qn.makeTransTickLabelFn(t),g,P,T=t.ticks==="inside",z=t.ticks==="outside";if(t.tickson==="boundaries"){var O=Fst(t,E);P=Qn.clipEnds(t,O),g=T?P:O}else P=Qn.clipEnds(t,E),g=T&&t.ticklabelmode!=="period"?P:E;var V=t._gridVals=P,G=Ost(t,E);if(!l._hasOnlyLargeSploms){var Z=t._subplotsWith,H={};for(a=0;a<Z.length;a++){o=Z[a],s=l._plots[o];var N=s[f+"axis"],j=N._mainAxis._id;if(!H[j]){H[j]=1;var re=c==="x"?"M0,"+N._offset+"v"+N._length:"M"+N._offset+",0h"+N._length;Qn.drawGrid(e,t,{vals:V,counterAxis:N,layer:s.gridlayer.select("."+u),minorLayer:s.minorGridlayer.select("."+u),path:re,transFn:k}),Qn.drawZeroLine(e,t,{counterAxis:N,layer:d?s.zerolinelayerAbove:s.zerolinelayer,path:re,transFn:k})}}}var oe,_e=Qn.getTickSigns(t),Me=Qn.getTickSigns(t,"minor");if(t.ticks||t.minor&&t.minor.ticks){var ke=Qn.makeTickPath(t,p,_e[2]),me=Qn.makeTickPath(t,p,Me[2],{minor:!0}),ie,Se,Le,Ae;if(t._anchorAxis&&t.mirror&&t.mirror!==!0?(ie=Qn.makeTickPath(t,C,_e[3]),Se=Qn.makeTickPath(t,C,Me[3],{minor:!0}),Le=ke+ie,Ae=me+Se):(ie="",Se="",Le=ke,Ae=me),t.showdividers&&z&&t.tickson==="boundaries"){var De={};for(a=0;a<G.length;a++)De[G[a].x]=1;oe=function(lt){return De[lt.x]?ie:Le}}else oe=function(lt){return lt.minor?Ae:Le}}if(Qn.drawTicks(e,t,{vals:g,layer:x,path:oe,transFn:k}),t.mirror==="allticks"){var Pe=Object.keys(t._linepositions||{});for(a=0;a<Pe.length;a++){o=Pe[a],s=l._plots[o];var ge=t._linepositions[o]||[],Fe=ge[0],ce=ge[1],Ze=ge[2],ct=Qn.makeTickPath(t,Fe,Ze?_e[0]:Me[0],{minor:Ze})+Qn.makeTickPath(t,ce,Ze?_e[1]:Me[1],{minor:Ze});Qn.drawTicks(e,t,{vals:g,layer:s[c+"axislayer"],path:ct,transFn:k})}}var pt=[];if(pt.push(function(){return Qn.drawLabels(e,t,{vals:E,layer:x,plotinfo:s,transFn:M,labelFns:Qn.makeLabelFns(t,p)})}),t.type==="multicategory"){var Wt={x:2,y:10}[c];pt.push(function(){var lt={x:"height",y:"width"}[c],Gt=_()[lt]+Wt+(t._tickAngles[u+"tick"]?t.tickfont.size*oM:0);return Qn.drawLabels(e,t,{vals:zst(t,E),layer:x,cls:u+"tick2",repositionOnUpdate:!0,secondary:!0,transFn:k,labelFns:Qn.makeLabelFns(t,p+Gt*_e[4])})}),pt.push(function(){return t._depth=_e[4]*(_("tick2")[t.side]-p),Nst(e,t,{vals:G,layer:x,path:Qn.makeTickPath(t,p,_e[4],{len:t._depth}),transFn:k})})}else t.title.hasOwnProperty("standoff")&&pt.push(function(){t._depth=_e[4]*(_()[t.side]-p)});var st=iM.getComponentMethod("rangeslider","isVisible")(t);return!r.skipTitle&&!(st&&t.side==="bottom")&&pt.push(function(){return Ust(e,t)}),pt.push(function(){var lt=t.side.charAt(0),Gt=vst[t.side].charAt(0),Nt=Qn.getPxPosition(e,t),$t=z?t.ticklen:0,sr,wr,ur,Qe;(t.automargin||st||t._shiftPusher)&&(t.type==="multicategory"?sr=_("tick2"):(sr=_(),c==="x"&<==="b"&&(t._depth=Math.max(sr.width>0?sr.bottom-Nt:0,$t))));var Et=0,er=0;if(t._shiftPusher&&(Et=Math.max($t,sr.height>0?lt==="l"?Nt-sr.left:sr.right-Nt:0),t.title.text!==l._dfltTitle[c]&&(er=(t._titleStandoff||0)+(t._titleScoot||0),lt==="l"&&(er+=wse(t))),t._fullDepth=Math.max(Et,er)),t.automargin){wr={x:0,y:0,r:0,l:0,t:0,b:0};var Ut=[0,1],Ft=typeof t._shift=="number"?t._shift:0;if(c==="x"){if(lt==="b"?wr[lt]=t._depth:(wr[lt]=t._depth=Math.max(sr.width>0?Nt-sr.top:0,$t),Ut.reverse()),sr.width>0){var bt=sr.right-(t._offset+t._length);bt>0&&(wr.xr=1,wr.r=bt);var yt=t._offset-sr.left;yt>0&&(wr.xl=0,wr.l=yt)}}else if(lt==="l"?(t._depth=Math.max(sr.height>0?Nt-sr.left:0,$t),wr[lt]=t._depth-Ft):(t._depth=Math.max(sr.height>0?sr.right-Nt:0,$t),wr[lt]=t._depth+Ft,Ut.reverse()),sr.height>0){var Yt=sr.bottom-(t._offset+t._length);Yt>0&&(wr.yb=0,wr.b=Yt);var lr=t._offset-sr.top;lr>0&&(wr.yt=1,wr.t=lr)}wr[f]=t.anchor==="free"?t.position:t._anchorAxis.domain[Ut[0]],t.title.text!==l._dfltTitle[c]&&(wr[lt]+=wse(t)+(t.title.standoff||0)),t.mirror&&t.anchor!=="free"&&(ur={x:0,y:0,r:0,l:0,t:0,b:0},ur[Gt]=t.linewidth,t.mirror&&t.mirror!==!0&&(ur[Gt]+=$t),t.mirror===!0||t.mirror==="ticks"?ur[f]=t._anchorAxis.domain[Ut[1]]:(t.mirror==="all"||t.mirror==="allticks")&&(ur[f]=[t._counterDomainMin,t._counterDomainMax][Ut[1]]))}st&&(Qe=iM.getComponentMethod("rangeslider","autoMarginOpts")(e,t)),typeof t.automargin=="string"&&(bse(wr,t.automargin),bse(ur,t.automargin)),P3.autoMargin(e,dB(t),wr),P3.autoMargin(e,Pse(t),ur),P3.autoMargin(e,Ise(t),Qe)}),Jo.syncOrAsync(pt)}};function bse(e,t){if(e){var r=Object.keys(vse).reduce(function(n,i){return t.indexOf(i)!==-1&&vse[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 Fst(e,t){var r=[],n,i=function(a,o){var s=a.xbnd[o];s!==null&&r.push(Jo.extendFlat({},a,{x:s}))};if(t.length){for(n=0;n<t.length;n++)i(t[n],0);i(t[n-1],1)}return r}function zst(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(kse(e,Jo.interp(n[o],.5),o));return r}function Ost(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(Jo.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 qst(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=uB(this);if(l.node().style.display!=="none"){var 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=Qn.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}}Qn.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};Qn.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))}};Qn.makeTransTickLabelFn=function(e){var t=Bst(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(lB(h))+r,a+n)}:function(h){return I3(a+n,i+e._offset+e.l2p(lB(h))+r)}};function lB(e){return e.periodX!==void 0?e.periodX:e.x}function Bst(e){var t=e.ticklabelposition||"",r=e.tickson||"",n=function(v){return t.indexOf(v)!==-1},i=n("top"),a=n("left"),o=n("right"),s=n("bottom"),l=n("inside"),u=r!=="boundaries"&&(s||a||i||o);if(!u&&!l)return[0,0];var c=e.side,f=u?(e.tickwidth||0)/2:0,h=SL,d=e.tickfont?e.tickfont.size:12;return(s||i)&&(f+=d*kb,h+=(e.linewidth||0)/2),(a||o)&&(f+=(e.linewidth||0)/2,h+=SL),l&&c==="top"&&(h-=d*(1-kb)),(a||i)&&(f=-f),(c==="bottom"||c==="right")&&(h=-h),[u?f:0,l?h:0]}Qn.makeTickPath=function(e,t,r,n){n||(n={});var i=n.minor;if(i&&!e.minor)return"";var a=n.len!==void 0?n.len:i?e.minor.ticklen:e.ticklen,o=e._id.charAt(0),s=(e.linewidth||1)/2;return o==="x"?"M0,"+(t+s*r)+"v"+a*r:"M"+(t+s*r)+",0h"+a*r};Qn.makeLabelFns=function(e,t,r){var n=e.ticklabelposition||"",i=e.tickson||"",a=function(O){return n.indexOf(O)!==-1},o=a("top"),s=a("left"),l=a("right"),u=a("bottom"),c=i!=="boundaries"&&(u||s||o||l),f=a("inside"),h=n==="inside"&&e.ticks==="inside"||!f&&e.ticks==="outside"&&i!=="boundaries",d=0,v=0,x=h?e.ticklen:0;if(f?x*=-1:c&&(x=0),h&&(d+=x,r)){var b=Jo.deg2rad(r);d=x*Math.cos(b)+1,v=x*Math.sin(b)}e.showticklabels&&(h||e.showline)&&(d+=.2*e.tickfont.size),d+=(e.linewidth||1)/2*(f?-1:1);var p={labelStandoff:d,labelShift:v},C,E,A,L,_=0,k=e.side,M=e._id.charAt(0),g=e.tickangle,P;if(M==="x")P=!f&&k==="bottom"||f&&k==="top",L=P?1:-1,f&&(L*=-1),C=v*L,E=t+d*L,A=P?1:-.2,Math.abs(g)===90&&(f?A+=rM:g===-90&&k==="bottom"?A=kb:g===90&&k==="top"?A=rM:A=.5,_=rM/2*(g/90)),p.xFn=function(O){return O.dx+C+_*O.fontSize},p.yFn=function(O){return O.dy+E+O.fontSize*A},p.anchorFn=function(O,V){if(c){if(s)return"end";if(l)return"start"}return!kh(V)||V===0||V===180?"middle":V*L<0!==f?"end":"start"},p.heightFn=function(O,V,G){return V<-60||V>60?-.5*G:e.side==="top"!==f?-G:0};else if(M==="y"){if(P=!f&&k==="left"||f&&k==="right",L=P?1:-1,f&&(L*=-1),C=d,E=v*L,A=0,!f&&Math.abs(g)===90&&(g===-90&&k==="left"||g===90&&k==="right"?A=kb:A=.5),f){var T=kh(g)?+g:0;if(T!==0){var z=Jo.deg2rad(T);_=Math.abs(Math.sin(z))*kb*L,A=0}}p.xFn=function(O){return O.dx+t-(C+O.fontSize*A)*L+_*O.fontSize},p.yFn=function(O){return O.dy+E+O.fontSize*rM},p.anchorFn=function(O,V){return kh(V)&&Math.abs(V)===90?"middle":P?"end":"start"},p.heightFn=function(O,V,G){return e.side==="right"&&(V*=-1),V<-30?-G:V<30?-.5*G:0}}return p};function kL(e){return[e.text,e.x,e.axInfo,e.font,e.fontSize,e.fontColor].join("_")}Qn.drawTicks=function(e,t,r){r=r||{};var n=t._id+"tick",i=[].concat(t.minor&&t.minor.ticks?r.vals.filter(function(o){return o.minor&&!o.noTick}):[]).concat(t.ticks?r.vals.filter(function(o){return!o.minor&&!o.noTick}):[]),a=r.layer.selectAll("path."+n).data(i,kL);a.exit().remove(),a.enter().append("path").classed(n,1).classed("ticks",1).classed("crisp",r.crisp!==!1).each(function(o){return nM.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),LL(t,[Tse]),a.attr("transform",r.transFn)};Qn.drawGrid=function(e,t,r){if(r=r||{},t.tickmode!=="sync"){var n=t._id+"grid",i=t.minor&&t.minor.showgrid,a=i?r.vals.filter(function(p){return p.minor}):[],o=t.showgrid?r.vals.filter(function(p){return!p.minor}):[],s=r.counterAxis;if(s&&Qn.shouldShowZeroLine(e,t,s))for(var l=t.tickmode==="array",u=0;u<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,kL);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 nM.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)}}LL(t,[oB,sB])}};Qn.drawZeroLine=function(e,t,r){r=r||r;var n=t._id+"zl",i=Qn.shouldShowZeroLine(e,t,r.counterAxis),a=r.layer.selectAll("path."+n).data(i?[{x:0,id:t._id}]:[]);a.exit().remove(),a.enter().append("path").classed(n,1).classed("zl",1).classed("crisp",r.crisp!==!1).each(function(){r.layer.selectAll("path").sort(function(o,s){return gst(o.id,s.id)})}),a.attr("transform",r.transFn).attr("d",r.path).call(nM.stroke,t.zerolinecolor||nM.defaultLine).style("stroke-width",Xp.crispRound(e,t.zerolinewidth,t._gw||1)+"px").style("display",null),LL(t,[aB])};Qn.drawLabels=function(e,t,r){r=r||{};var n=e._fullLayout,i=t._id,a=t.zerolinelayer==="above traces",o=r.cls||i+"tick",s=r.vals.filter(function(j){return j.text}),l=r.labelFns,u=r.secondary?0:t.tickangle,c=(t._prevTickAngles||{})[o],f=r.layer.selectAll("g."+o).data(t.showticklabels?s:[],kL),h=[];f.enter().append("g").classed(o,1).append("text").attr("text-anchor","middle").each(function(j){var re=w0.select(this),oe=e._promises.length;re.call(Eb.positionText,l.xFn(j),l.yFn(j)).call(Xp.font,{family:j.font,size:j.fontSize,color:j.fontColor,weight:j.fontWeight,style:j.fontStyle,variant:j.fontVariant,textcase:j.fontTextcase,lineposition:j.fontLineposition,shadow:j.fontShadow}).text(j.text).call(Eb.convertToTspans,e),e._promises[oe]?h.push(e._promises.pop().then(function(){d(re,u)})):d(re,u)}),LL(t,[dse]),f.exit().remove(),r.repositionOnUpdate&&f.each(function(j){w0.select(this).select("text").call(Eb.positionText,l.xFn(j),l.yFn(j))});function d(j,re){j.each(function(oe){var _e=w0.select(this),Me=_e.select(".text-math-group"),ke=l.anchorFn(oe,re),me=r.transFn.call(_e.node(),oe)+(kh(re)&&+re!=0?" rotate("+re+","+l.xFn(oe)+","+(l.yFn(oe)-oe.fontSize/2)+")":""),ie=Eb.lineCount(_e),Se=oM*oe.fontSize,Le=l.heightFn(oe,kh(re)?+re:0,(ie-1)*Se);if(Le&&(me+=I3(0,Le)),Me.empty()){var Ae=_e.select("text");Ae.attr({transform:me,"text-anchor":ke}),Ae.style("display",null),t._adjustTickLabelsOverflow&&t._adjustTickLabelsOverflow()}else{var De=Xp.bBox(Me.node()).width,Pe=De*{end:-.5,start:.5}[ke];Me.attr("transform",me+I3(Pe,0))}})}t._adjustTickLabelsOverflow=function(){var j=t.ticklabeloverflow;if(!(!j||j==="allow")){var re=j.indexOf("hide")!==-1,oe=t._id.charAt(0)==="x",_e=0,Me=oe?e._fullLayout.width:e._fullLayout.height;if(j.indexOf("domain")!==-1){var ke=Jo.simpleMap(t.range,t.r2l);_e=t.l2p(ke[0])+t._offset,Me=t.l2p(ke[1])+t._offset}var me=Math.min(_e,Me),ie=Math.max(_e,Me),Se=t.side,Le=1/0,Ae=-1/0;f.each(function(Fe){var ce=w0.select(this),Ze=ce.select(".text-math-group");if(Ze.empty()){var ct=Xp.bBox(ce.node()),pt=0;oe?(ct.right>ie||ct.left<me)&&(pt=1):(ct.bottom>ie||ct.top+(t.tickangle?0:Fe.fontSize/4)<me)&&(pt=1);var Wt=ce.select("text");pt?re&&Wt.style("display","none"):Wt.node().style.display!=="none"&&(Wt.style("display",null),Se==="bottom"||Se==="right"?Le=Math.min(Le,oe?ct.top:ct.left):Le=-1/0,Se==="top"||Se==="left"?Ae=Math.max(Ae,oe?ct.bottom:ct.right):Ae=1/0)}});for(var De in n._plots){var Pe=n._plots[De];if(!(t._id!==Pe.xaxis._id&&t._id!==Pe.yaxis._id)){var ge=oe?Pe.yaxis:Pe.xaxis;ge&&(ge["_visibleLabelMin_"+t._id]=Le,ge["_visibleLabelMax_"+t._id]=Ae)}}}},t._hideCounterAxisInsideTickLabels=function(j){var re=t._id.charAt(0)==="x",oe=[];for(var _e in n._plots){var Me=n._plots[_e];t._id!==Me.xaxis._id&&t._id!==Me.yaxis._id||oe.push(re?Me.yaxis:Me.xaxis)}oe.forEach(function(ke,me){ke&&lM(ke)&&(j||[aB,sB,oB,Tse,dse]).forEach(function(ie){var Se=ie.K==="tick"&&ie.L==="text"&&t.ticklabelmode==="period",Le=n._plots[t._mainSubplot],Ae;if(ie.K===aB.K){var De=a?Le.zerolinelayerAbove:Le.zerolinelayer;Ae=De.selectAll("."+t._id+"zl")}else ie.K===sB.K?Ae=Le.minorGridlayer.selectAll("."+t._id):ie.K===oB.K?Ae=Le.gridlayer.selectAll("."+t._id):Ae=Le[t._id.charAt(0)+"axislayer"];Ae.each(function(){var Pe=w0.select(this);ie.L&&(Pe=Pe.selectAll(ie.L)),Pe.each(function(ge){var Fe=t.l2p(Se?lB(ge):ge.x)+t._offset,ce=w0.select(this);Fe<t["_visibleLabelMax_"+ke._id]&&Fe>t["_visibleLabelMin_"+ke._id]?ce.style("display","none"):ie.K==="tick"&&!me&&ce.node().style.display!=="none"&&ce.style("display",null)})})})})},d(f,c+1?c:u);function v(){return h.length&&Promise.all(h)}var x=null;function b(){if(d(f,u),s.length&&t.autotickangles&&(t.type!=="log"||String(t.dtick).charAt(0)!=="D")){x=t.autotickangles[0];var j=0,re=[],oe,_e=1;f.each(function(wr){j=Math.max(j,wr.fontSize);var ur=t.l2p(wr.x),Qe=uB(this),Et=Xp.bBox(Qe.node());_e=Math.max(_e,Eb.lineCount(Qe)),re.push({top:0,bottom:10,height:10,left:ur-Et.width/2,right:ur+Et.width/2+2,width:Et.width+2})});var Me=(t.tickson==="boundaries"||t.showdividers)&&!r.secondary,ke=s.length,me=Math.abs((s[ke-1].x-s[0].x)*t._m)/(ke-1),ie=Me?me/2:me,Se=Me?t.ticklen:j*1.25*_e,Le=Math.sqrt(Math.pow(ie,2)+Math.pow(Se,2)),Ae=ie/Le,De=t.autotickangles.map(function(wr){return wr*Math.PI/180}),Pe=De.find(function(wr){return Math.abs(Math.cos(wr))<=Ae});Pe===void 0&&(Pe=De.reduce(function(wr,ur){return Math.abs(Math.cos(wr))<Math.abs(Math.cos(ur))?wr:ur},De[0]));var ge=Pe*(180/Math.PI);if(Me){var Fe=2;for(t.ticks&&(Fe+=t.tickwidth/2),oe=0;oe<re.length;oe++){var ce=s[oe].xbnd,Ze=re[oe];if(ce[0]!==null&&Ze.left-t.l2p(ce[0])<Fe||ce[1]!==null&&t.l2p(ce[1])-Ze.right<Fe){x=ge;break}}}else{var ct=t.ticklabelposition||"",pt=t.tickson||"",Wt=function(wr){return ct.indexOf(wr)!==-1},st=Wt("top"),lt=Wt("left"),Gt=Wt("right"),Nt=Wt("bottom"),$t=pt!=="boundaries"&&(Nt||lt||st||Gt),sr=$t?(t.tickwidth||0)+2*SL:0;for(oe=0;oe<re.length-1;oe++)if(Jo.bBoxIntersect(re[oe],re[oe+1],sr)){x=ge;break}}x&&d(f,x)}}t._selections&&(t._selections[o]=f);var p=[v];t.automargin&&n._redrawFromAutoMarginCount&&c===90?(x=c,p.push(function(){d(f,c)})):p.push(b),t._tickAngles&&p.push(function(){t._tickAngles[o]=x===null?kh(u)?u:0:x});var C=function(){var j=0,re=0;return f.each(function(oe,_e){var Me=uB(this),ke=Me.select(".text-math-group");if(ke.empty()){var me;t._vals[_e]&&(me=t._vals[_e].bb||Xp.bBox(Me.node()),t._vals[_e].bb=me),j=Math.max(j,me.width),re=Math.max(re,me.height)}}),{labelsMaxW:j,labelsMaxH:re}},E=t._anchorAxis;if(E&&(E.autorange||E.insiderange)&&lM(t)&&!mst(n,t._id)&&(n._insideTickLabelsUpdaterange||(n._insideTickLabelsUpdaterange={}),E.autorange&&(n._insideTickLabelsUpdaterange[E._name+".autorange"]=E.autorange,p.push(C)),E.insiderange)){var A=C(),L=t._id.charAt(0)==="y"?A.labelsMaxW:A.labelsMaxH;L+=2*SL,t.ticklabelposition==="inside"&&(L+=t.ticklen||0);var _=t.side==="right"||t.side==="top"?1:-1,k=_===1?1:0,M=_===1?0:1,g=[];g[M]=E.range[M];var P=E.range,T=E.r2p(P[k]),z=E.r2p(P[M]),O=n._insideTickLabelsUpdaterange[E._name+".range"];if(O){var V=E.r2p(O[k]),G=E.r2p(O[M]),Z=_*(t._id.charAt(0)==="y"?1:-1);Z*T<Z*V&&(T=V,g[k]=P[k]=O[k]),Z*z>Z*G&&(z=G,g[M]=P[M]=O[M])}var H=Math.abs(z-T);H-L>0?(H-=L,L*=1+L/H):L=0,t._id.charAt(0)!=="y"&&(L=-L),g[k]=E.p2r(E.r2p(P[k])+_*L),E.autorange==="min"||E.autorange==="max reversed"?(g[0]=null,E._rangeInitial0=void 0,E._rangeInitial1=void 0):(E.autorange==="max"||E.autorange==="min reversed")&&(g[1]=null,E._rangeInitial0=void 0,E._rangeInitial1=void 0),n._insideTickLabelsUpdaterange[E._name+".range"]=g}var N=Jo.syncOrAsync(p);return N&&N.then&&e._promises.push(N),N};function Nst(e,t,r){var n=t._id+"divider",i=r.vals,a=r.layer.selectAll("path."+n).data(i,kL);a.exit().remove(),a.enter().insert("path",":first-child").classed(n,1).classed("crisp",1).call(nM.stroke,t.dividercolor).style("stroke-width",Xp.crispRound(e,t.dividerwidth,1)+"px"),a.attr("transform",r.transFn).attr("d",r.path)}Qn.getPxPosition=function(e,t){var r=e._fullLayout._size,n=t._id.charAt(0),i=t.side,a;if(t.anchor!=="free"?a=t._anchorAxis:n==="x"?a={_offset:r.t+(1-(t.position||0))*r.h,_length:0}:n==="y"&&(a={_offset:r.l+(t.position||0)*r.w+t._shift,_length:0}),i==="top"||i==="left")return a._offset;if(i==="bottom"||i==="right")return a._offset+a._length};function wse(e){var t=e.title.font.size,r=(e.title.text.match(Eb.BR_TAG_ALL)||[]).length;return e.title.hasOwnProperty("standoff")?t*(kb+r*oM):r?t*(r+1)*oM:t}function Ust(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*kb:(t.side==="top"||t.side==="left")&&(o=t._depth+t.title.standoff+a*(rM+s*oM));else{var l=lM(t);if(t.type==="multicategory")o=t._depth;else{var u=1.5*a;l&&(u=.5*a,t.ticks==="outside"&&(u+=t.ticklen)),o=10+u+(t.linewidth?t.linewidth-1:0)}l||(i==="x"?o+=t.side==="top"?a*(t.showticklabels?1:0):a*(t.showticklabels?1.5:.5):o+=t.side==="right"?a*(t.showticklabels?1:.5):a*(t.showticklabels?.5:0))}var c=Qn.getPxPosition(e,t),f,h,d;i==="x"?(h=t._offset+t._length/2,d=t.side==="top"?c-o:c+o):(d=t._offset+t._length/2,h=t.side==="right"?c+o:c-o,f={rotate:"-90",offset:0});var v;if(t.type!=="multicategory"){var 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,sst.draw(e,n+"title",{propContainer:t,propName:t._name+".title.text",placeholder:r._dfltTitle[i],avoid:v,transform:f,attributes:{x:h,y:d,"text-anchor":"middle"}})}Qn.shouldShowZeroLine=function(e,t,r){var n=Jo.simpleMap(t.range,t.r2l);return n[0]*n[1]<=0&&t.zeroline&&(t.type==="linear"||t.type==="-")&&!(t.rangebreaks&&t.maskBreaks(0)===EL)&&(Lse(t,0)||!Vst(e,t,r,n)||Gst(e,t))};Qn.clipEnds=function(e,t){return t.filter(function(r){return Lse(e,r.x)})};function Lse(e,t){var r=e.l2p(t);return r>1&&r<e._length-1}function Vst(e,t,r,n){var i=r._mainAxis;if(!i)return;var a=e._fullLayout,o=t._id.charAt(0),s=Qn.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(E){return typeof E=="number"&&Math.abs(E-l)<x}if(b(v._mainLinePosition)||b(v._mainMirrorPosition))return!0;var p=v._linepositions||{};for(var C in p)if(b(p[C][0])||b(p[C][1]))return!0}var c=a._plots[r._mainSubplot];if(!(c.mainplotinfo||c).overlays.length)return u(r,l);for(var f=Qn.list(e,s),h=0;h<f.length;h++){var d=f[h];if(d._mainAxis===i&&u(d,l))return!0}}function Gst(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&&(iM.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 uB(e){var t=w0.select(e),r=t.select(".text-math-group");return r.empty()?t.select("text"):r}Qn.allowAutoMargin=function(e){for(var t=Qn.list(e,"",!0),r=0;r<t.length;r++){var n=t[r];n.automargin&&(P3.allowAutoMargin(e,dB(n)),n.mirror&&P3.allowAutoMargin(e,Pse(n))),iM.getComponentMethod("rangeslider","isVisible")(n)&&P3.allowAutoMargin(e,Ise(n))}};function dB(e){return e._id+".automargin"}function Pse(e){return dB(e)+".mirror"}function Ise(e){return e._id+".rangeslider"}Qn.swap=function(e,t){for(var r=Hst(e,t),n=0;n<r.length;n++)jst(e,r[n].x,r[n].y)};function Hst(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]],_L(l.x,u.x),_L(l.y,u.y);_L(l.x,[o]),_L(l.y,[s])}}return r}function _L(e,t){for(var r=0;r<t.length;r++)e.indexOf(t[r])===-1&&e.push(t[r])}function jst(e,t,r){var n=[],i=[],a=e.layout,o,s;for(o=0;o<t.length;o++)n.push(Qn.getFromId(e,t[o]));for(o=0;o<r.length;o++)i.push(Qn.getFromId(e,r[o]));var l=Object.keys(lst),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 C=i[s][f];f==="type"&&c.indexOf(d)!==-1&&c.indexOf(C)!==-1&&d!==C?b=!0:i[s][f]!==d&&(v=!1)}v&&(x&&(a[n[0]._name].type="linear"),b&&(a[i[0]._name].type="linear"),Wst(a,f,n,i,e._fullLayout._dfltTitle))}}for(o=0;o<e._fullLayout.annotations.length;o++){var E=e._fullLayout.annotations[o];t.indexOf(E.xref)!==-1&&r.indexOf(E.yref)!==-1&&Jo.swapAttrs(a.annotations[o],["?"])}}function Wst(e,t,r,n,i){var a=Jo.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 vB(e){return e._id==="angularaxis"}function iB(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 lM(e){return(e.ticklabelposition||"").indexOf("inside")!==-1}function LL(e,t){lM(e._anchorAxis||{})&&e._hideCounterAxisInsideTickLabels&&e._hideCounterAxisInsideTickLabels(t)}function cB(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 Xst(e,t){return e.autoshift?t[e.overlaying][e.side]:e.shift||0}function Zst(e,t){return/%f/.test(t)?e>=dst:/%L/.test(t)?e>=hst:/%[SX]/.test(t)?e>=AL:/%M/.test(t)?e>=aM:/%[HI]/.test(t)?e>=xm:/%p/.test(t)?e>=l_:/%[Aadejuwx]/.test(t)?e>=zv:/%[UVW]/.test(t)?e>=Zp:/%[Bbm]/.test(t)?e>=TL:/%[q]/.test(t)?e>=wL:/%[Yy]/.test(t)?e>=bL:!0}});var pB=ye((jir,Dse)=>{"use strict";Dse.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 gB=ye((Wir,Fse)=>{"use strict";var Yst=pB();Fse.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&&(Yst(n,c,s),(o==="linear"||o==="-")&&n("rangemode")),r.cleanRange()}});var Ose=ye((Xir,zse)=>{var Kst={left:0,top:0};zse.exports=Jst;function Jst(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=$st(t);return r[0]=n-a.left,r[1]=i-a.top,r}function $st(e){return e===window||e===document||e===document.body?Kst:e.getBoundingClientRect()}});var PL=ye((Zir,qse)=>{"use strict";var Qst=QO();function elt(){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}qse.exports=Qst&&elt()});var Nse=ye((Yir,Bse)=>{"use strict";Bse.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 Gse=ye((Kir,Vse)=>{"use strict";var Use=Dr(),tlt=[["sw-resize","s-resize","se-resize"],["w-resize","move","e-resize"],["nw-resize","n-resize","ne-resize"]];Vse.exports=function(t,r,n,i){return n==="left"?t=0:n==="center"?t=1:n==="right"?t=2:t=Use.constrain(Math.floor(t*3),0,2),i==="bottom"?r=0:i==="middle"?r=1:i==="top"?r=2:r=Use.constrain(Math.floor(r*3),0,2),tlt[r][t]}});var jse=ye((Jir,Hse)=>{"use strict";var rlt=g3(),ilt=D6(),nlt=OS().getGraphDiv,alt=RS(),mB=Hse.exports={};mB.wrapped=function(e,t,r){e=nlt(e),e._fullLayout&&ilt.clear(e._fullLayout._uid+alt.HOVERID),mB.raw(e,t,r)};mB.raw=function(t,r){var n=t._fullLayout,i=t._hoverdata;r||(r={}),!(r.target&&!t._dragged&&rlt.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(($ir,Yse)=>{"use strict";var olt=Ose(),yB=tq(),slt=PL(),llt=Dr().removeElement,ult=hd(),Lb=Yse.exports={};Lb.align=Nse();Lb.getCursor=Gse();var Xse=jse();Lb.unhover=Xse.wrapped;Lb.unhoverRaw=Xse.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,slt?(a._ontouchstart&&a.removeEventListener("touchstart",a._ontouchstart),a._ontouchstart=b,a.addEventListener("touchstart",b,{passive:!1})):a.ontouchstart=b;function v(E,A,L){return Math.abs(E)<L&&(E=0),Math.abs(A)<L&&(A=0),[E,A]}var x=t.clampFn||v;function b(E){r._dragged=!1,r._dragging=!0;var A=Wse(E);o=A[0],s=A[1],h=E.target,f=E,d=E.buttons===2||E.ctrlKey,typeof E.clientX=="undefined"&&typeof E.clientY=="undefined"&&(E.clientX=o,E.clientY=s),l=new Date().getTime(),l-r._mouseDownTime<i?n+=1:(n=1,r._mouseDownTime=l),t.prepFn&&t.prepFn(E,o,s),yB&&!d?(c=Zse(),c.style.cursor=window.getComputedStyle(a).cursor):yB||(c=document,u=window.getComputedStyle(document.documentElement).cursor,document.documentElement.style.cursor=window.getComputedStyle(a).cursor),document.addEventListener("mouseup",C),document.addEventListener("touchend",C),t.dragmode!==!1&&(E.preventDefault(),document.addEventListener("mousemove",p),document.addEventListener("touchmove",p,{passive:!1}))}function p(E){E.preventDefault();var A=Wse(E),L=t.minDrag||ult.MINDRAG,_=x(A[0]-o,A[1]-s,L),k=_[0],M=_[1];(k||M)&&(r._dragged=!0,Lb.unhover(r,E)),r._dragged&&t.moveFn&&!d&&(r._dragdata={element:a,dx:k,dy:M},t.moveFn(k,M))}function C(E){if(delete r._dragdata,t.dragmode!==!1&&(E.preventDefault(),document.removeEventListener("mousemove",p),document.removeEventListener("touchmove",p)),document.removeEventListener("mouseup",C),document.removeEventListener("touchend",C),yB?llt(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",E))}r._dragging=!1,r._dragged=!1}};function Zse(){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=Zse;function Wse(e){return olt(e.changedTouches?e.changedTouches[0]:e,document.body)}});var Tg=ye((Qir,Kse)=>{"use strict";Kse.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 Qse=ye((enr,$se)=>{"use strict";var _B=Tg(),uM="data-savedcursor",Jse="!!";$se.exports=function(t,r){var n=t.attr(uM);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(uM,o.substr(7)).classed(o,!1)}t.attr(uM)||t.attr(uM,Jse)}_B(t,r)}else n&&(t.attr(uM,null),n===Jse?_B(t):_B(t,n))}});var bB=ye((tnr,ele)=>{"use strict";var xB=ec(),clt=Eh();ele.exports={_isSubplotObj:!0,visible:{valType:"boolean",dflt:!0,editType:"legend"},bgcolor:{valType:"color",editType:"legend"},bordercolor:{valType:"color",dflt:clt.defaultLine,editType:"legend"},maxheight:{valType:"number",min:0,editType:"legend"},borderwidth:{valType:"number",min:0,dflt:0,editType:"legend"},font:xB({editType:"legend"}),grouptitlefont:xB({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:xB({editType:"legend"}),side:{valType:"enumerated",values:["top","left","top left","top center","top right"],editType:"legend"},editType:"legend"},editType:"legend"}});var RL=ye(IL=>{"use strict";IL.isGrouped=function(t){return(t.traceorder||"").indexOf("grouped")!==-1};IL.isVertical=function(t){return t.orientation!=="h"};IL.isReversed=function(t){return(t.traceorder||"").indexOf("reversed")!==-1}});var AB=ye((inr,tle)=>{"use strict";var wB=qa(),Yp=Dr(),flt=pl(),hlt=Vl(),dlt=bB(),vlt=s3(),TB=RL();function plt(e,t,r,n){var i=t[e]||{},a=flt.newContainer(r,e);function o(H,N){return Yp.coerce(i,a,dlt,H,N)}var s=Yp.coerceFont(o,"font",r.font);o("bgcolor",r.paper_bgcolor),o("bordercolor");var l=o("visible");if(l){for(var u,c=function(H,N){var j=u._input,re=u;return Yp.coerce(j,re,hlt,H,N)},f=r.font||{},h=Yp.coerceFont(o,"grouptitlefont",f,{overrideDflt:{size:Math.round(f.size*1.1)}}),d=0,v=!1,x="normal",b=(r.shapes||[]).filter(function(H){return H.showlegend}),p=n.concat(b).filter(function(H){return e===(H.legend||"legend")}),C=0;C<p.length;C++)if(u=p[C],!!u.visible){var E=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,(!E&&wB.traceIs(u,"pie-like")||u._input.showlegend===!0)&&d++),Yp.coerceFont(c,"legendgrouptitle.font",h)),(!E&&wB.traceIs(u,"bar")&&r.barmode==="stack"||["tonextx","tonexty"].indexOf(u.fill)!==-1)&&(x=TB.isGrouped({traceorder:x})?"grouped+reversed":"reversed"),u.legendgroup!==void 0&&u.legendgroup!==""&&(x=TB.isReversed({traceorder:x})?"reversed+grouped":"grouped")}var A=Yp.coerce(t,r,vlt,"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"),k=o("xref"),M=L==="h",g=_==="paper",P=k==="paper",T,z,O,V="left";M?(T=0,wB.getComponentMethod("rangeslider","isVisible")(t.xaxis)?g?(z=1.1,O="bottom"):(z=1,O="top"):g?(z=-.1,O="top"):(z=0,O="bottom")):(z=1,O="auto",P?T=1.02:(T=1,V="right")),Yp.coerce(i,a,{x:{valType:"number",editType:"legend",min:P?-2:0,max:P?3:1,dflt:T}},"x"),Yp.coerce(i,a,{y:{valType:"number",editType:"legend",min:g?-2:0,max:g?3:1,dflt:z}},"y"),o("traceorder",x),TB.isGrouped(r[e])&&o("tracegroupgap"),o("entrywidth"),o("entrywidthmode"),o("indentation"),o("itemsizing"),o("itemwidth"),o("itemclick"),o("itemdoubleclick"),o("groupclick"),o("xanchor",V),o("yanchor",O),o("maxheight"),o("valign"),Yp.noneOrAll(i,a,["x","y"]);var G=o("title.text");if(G){o("title.side",M?"left":"top");var Z=Yp.extendFlat({},s,{size:Yp.bigFont(s.size)});Yp.coerceFont(o,"title.font",Z)}}}}tle.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++)Yp.pushUnique(u,a[i].legend);for(r._legends=[],i=0;i<u.length;i++){var c=u[i];plt(c,t,r,a),r[c]&&r[c].visible&&(r[c]._id=c),r._legends.push(c)}}});var ile=ye((nnr,rle)=>{"use strict";var D3=qa(),MB=Dr(),glt=MB.pushUnique,SB=!0;rle.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"&&SB&&r.data&&r._context.showTips&&MB.notifier(MB._(r,"Double-click on legend to isolate one trace"),"long"),SB=!1;var l;if(n===1?l=a:n===2&&(l=o),!l)return;var u=s==="togglegroup",c=i.hiddenlabels?i.hiddenlabels.slice():[],f=t.data()[0][0];if(f.groupTitle&&f.noClick)return;var h=r._fullData,d=(i.shapes||[]).filter(function(Gt){return Gt.showlegend}),v=h.concat(d),x=f.trace;x._isShape&&(x=x._fullInput);var b=x.legendgroup,p,C,E,A,L,_,k={},M=[],g=[],P=[];function T(Gt,Nt){var $t=M.indexOf(Gt),sr=k.visible;return sr||(sr=k.visible=[]),M.indexOf(Gt)===-1&&(M.push(Gt),$t=M.length-1),sr[$t]=Nt,$t}var z=(i.shapes||[]).map(function(Gt){return Gt._input}),O=!1;function V(Gt,Nt){z[Gt].visible=Nt,O=!0}function G(Gt,Nt){if(!(f.groupTitle&&!u)){var $t=Gt._fullInput||Gt,sr=$t._isShape,wr=$t.index;wr===void 0&&(wr=$t._index);var ur=$t.visible===!1?!1:Nt;sr?V(wr,ur):T(wr,ur)}}var Z=x.legend,H=x._fullInput,N=H&&H._isShape;if(!N&&D3.traceIs(x,"pie-like")){var j=f.label,re=c.indexOf(j);if(l==="toggle")re===-1?c.push(j):c.splice(re,1);else if(l==="toggleothers"){var oe=re!==-1,_e=[];for(p=0;p<r.calcdata.length;p++){var Me=r.calcdata[p];for(C=0;C<Me.length;C++){var ke=Me[C],me=ke.label;Z===Me[0].trace.legend&&j!==me&&(c.indexOf(me)===-1&&(oe=!0),glt(c,me),_e.push(me))}}if(!oe)for(var ie=0;ie<_e.length;ie++){var Se=c.indexOf(_e[ie]);Se!==-1&&c.splice(Se,1)}}D3.call("_guiRelayout",r,"hiddenlabels",c)}else{var Le=b&&b.length,Ae=[],De;if(Le)for(p=0;p<v.length;p++)De=v[p],De.visible&&De.legendgroup===b&&Ae.push(p);if(l==="toggle"){var Pe;switch(x.visible){case!0:Pe="legendonly";break;case!1:Pe=!1;break;case"legendonly":Pe=!0;break}if(Le)if(u)for(p=0;p<v.length;p++){var ge=v[p];ge.visible!==!1&&ge.legendgroup===b&&G(ge,Pe)}else G(x,Pe);else G(x,Pe)}else if(l==="toggleothers"){var Fe,ce,Ze,ct,pt,Wt=!0;for(p=0;p<v.length;p++)if(pt=v[p],Fe=pt===x,Ze=pt.showlegend!==!0,!(Fe||Ze)&&(ce=Le&&pt.legendgroup===b,!ce&&pt.legend===Z&&pt.visible===!0&&!D3.traceIs(pt,"notLegendIsolatable"))){Wt=!1;break}for(p=0;p<v.length;p++)if(pt=v[p],!(pt.visible===!1||pt.legend!==Z)&&!D3.traceIs(pt,"notLegendIsolatable"))switch(x.visible){case"legendonly":G(pt,!0);break;case!0:ct=Wt?!0:"legendonly",Fe=pt===x,Ze=pt.showlegend!==!0&&!pt.legendgroup,ce=Fe||Le&&pt.legendgroup===b,G(pt,ce||Ze?!0:ct);break}}for(p=0;p<g.length;p++)if(E=g[p],!!E){var st=E.constructUpdate(),lt=Object.keys(st);for(C=0;C<lt.length;C++)A=lt[C],_=k[A]=k[A]||[],_[P[p]]=st[A]}for(L=Object.keys(k),p=0;p<L.length;p++)for(A=L[p],C=0;C<M.length;C++)k[A].hasOwnProperty(C)||(k[A][C]=void 0);O?D3.call("_guiUpdate",r,k,{shapes:z},M):D3.call("_guiRestyle",r,k,M)}}});var EB=ye((anr,nle)=>{"use strict";nle.exports={scrollBarWidth:6,scrollBarMinHeight:20,scrollBarColor:"#808BA4",scrollBarMargin:4,scrollBarEnterAttrs:{rx:20,ry:3,width:0,height:0},titlePad:2,itemGap:5}});var sle=ye((onr,ole)=>{"use strict";var ale=qa(),CB=RL();ole.exports=function(t,r,n){var i=r._inHover,a=CB.isGrouped(r),o=CB.isReversed(r),s={},l=[],u=!1,c={},f=0,h=0,d,v;function x(H,N,j){if(r.visible!==!1&&!(n&&H!==r._id))if(N===""||!CB.isGrouped(r)){var re="~~i"+f;l.push(re),s[re]=[j],f++}else l.indexOf(N)===-1?(l.push(N),u=!0,s[N]=[j]):s[N].push(j)}for(d=0;d<t.length;d++){var b=t[d],p=b[0],C=p.trace,E=C.legend,A=C.legendgroup;if(!(!i&&(!C.visible||!C.showlegend)))if(ale.traceIs(C,"pie-like"))for(c[A]||(c[A]={}),v=0;v<b.length;v++){var L=b[v].label;c[A][L]||(x(E,A,{label:L,color:b[v].color,i:b[v].i,trace:C,pts:b[v].pts}),c[A][L]=!0,h=Math.max(h,(L||"").length))}else x(E,A,p),h=Math.max(h,(C.name||"").length)}if(!l.length)return[];var _=!u||!a,k=[];for(d=0;d<l.length;d++){var M=s[l[d]];_?k.push(M[0]):k.push(M)}for(_&&(k=[k]),d=0;d<k.length;d++){var g=1/0;for(v=0;v<k[d].length;v++){var P=k[d][v].trace.legendrank;g>P&&(g=P)}k[d][0]._groupMinRank=g,k[d][0]._preGroupSort=d}var T=function(H,N){return H[0]._groupMinRank-N[0]._groupMinRank||H[0]._preGroupSort-N[0]._preGroupSort},z=function(H,N){return H.trace.legendrank-N.trace.legendrank||H._preSort-N._preSort};for(k.forEach(function(H,N){H[0]._preGroupSort=N}),k.sort(T),d=0;d<k.length;d++){k[d].forEach(function(H,N){H._preSort=N}),k[d].sort(z);var O=k[d][0].trace,V=null;for(v=0;v<k[d].length;v++){var G=k[d][v].trace.legendgrouptitle;if(G&&G.text){V=G,i&&(G.font=r._groupTitleFont);break}}if(o&&k[d].reverse(),V){var Z=!1;for(v=0;v<k[d].length;v++)if(ale.traceIs(k[d][v].trace,"pie-like")){Z=!0;break}k[d].unshift({i:-1,groupTitle:V,noClick:Z,trace:{showlegend:O.showlegend,legendgroup:O.legendgroup,visible:r.groupclick==="toggleitem"?!0:O.visible}})}for(v=0;v<k[d].length;v++)k[d][v]=[k[d][v]]}return r._lgroupsLength=k.length,r._maxNameLength=h,k}});var u_=ye(Pb=>{"use strict";var DL=Dr();function lle(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=lle((t*100).toPrecision(3));return DL.numSeparate(n,r)+"%"};Pb.formatPieValue=function(t,r){var n=lle(t.toPrecision(10));return DL.numSeparate(n,r)};Pb.getFirstFilled=function(t,r){if(DL.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(DL.isArrayOrTypedArray(t))return Pb.getFirstFilled(t,r);if(t)return t};Pb.getRotationAngle=function(e){return(e==="auto"?0:e)*Math.PI/180}});var cle=ye((lnr,ule)=>{"use strict";var mlt=So(),ylt=Ca();ule.exports=function(t,r,n,i){var a=n.marker.pattern;a&&a.shape?mlt.pointStyle(t,n,i,r):ylt.fill(t,r.color)}});var F3=ye((unr,dle)=>{"use strict";var fle=Ca(),hle=u_().castOption,_lt=cle();dle.exports=function(t,r,n,i){var a=n.marker.line,o=hle(a.color,r.pts)||fle.defaultLine,s=hle(a.width,r.pts)||0;t.call(_lt,r,n,i).style("stroke-width",s).call(fle.stroke,o)}});var IB=ye((cnr,_le)=>{"use strict";var Ov=Oa(),kB=qa(),mv=Dr(),vle=mv.strTranslate,Kp=So(),T0=Ca(),LB=Dv().extractOpts,FL=Ru(),xlt=F3(),blt=u_().castOption,wlt=EB(),ple=12,gle=5,Ib=2,Tlt=10,z3=5;_le.exports=function(t,r,n){var i=r._fullLayout;n||(n=i.legend);var a=n.itemsizing==="constant",o=n.itemwidth,s=(o+wlt.itemGap*2)/2,l=vle(s,0),u=function(k,M,g,P){var T;if(k+1)T=k;else if(M&&M.width>0)T=M.width;else return 0;return a?P:Math.min(T,g)};t.each(function(k){var M=Ov.select(this),g=mv.ensureSingle(M,"g","layers");g.style("opacity",k[0].trace.opacity);var P=n.indentation,T=n.valign,z=k[0].lineHeight,O=k[0].height;if(T==="middle"&&P===0||!z||!O)g.attr("transform",null);else{var V={top:1,bottom:-1}[T],G=V*(.5*(z-O+3))||0,Z=n.indentation;g.attr("transform",vle(Z,G))}var H=g.selectAll("g.legendfill").data([k]);H.enter().append("g").classed("legendfill",!0);var N=g.selectAll("g.legendlines").data([k]);N.enter().append("g").classed("legendlines",!0);var j=g.selectAll("g.legendsymbols").data([k]);j.enter().append("g").classed("legendsymbols",!0),j.selectAll("g.legendpoints").data([k]).enter().append("g").classed("legendpoints",!0)}).each(_).each(h).each(v).each(d).each(b).each(A).each(E).each(c).each(f).each(p).each(C);function c(k){var M=mle(k),g=M.showFill,P=M.showLine,T=M.showGradientLine,z=M.showGradientFill,O=M.anyFill,V=M.anyLine,G=k[0],Z=G.trace,H,N,j=LB(Z),re=j.colorscale,oe=j.reversescale,_e=function(Ae){if(Ae.size())if(g)Kp.fillGroupStyle(Ae,r,!0);else{var De="legendfill-"+Z.uid;Kp.gradient(Ae,r,De,PB(oe),re,"fill")}},Me=function(Ae){if(Ae.size()){var De="legendline-"+Z.uid;Kp.lineGroupStyle(Ae),Kp.gradient(Ae,r,De,PB(oe),re,"stroke")}},ke=FL.hasMarkers(Z)||!O?"M5,0":V?"M5,-2":"M5,-3",me=Ov.select(this),ie=me.select(".legendfill").selectAll("path").data(g||z?[k]:[]);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 Se=u(void 0,Z.line,Tlt,gle);N=mv.minExtend(Z,{line:{width:Se}}),H=[mv.minExtend(G,{trace:N})]}var Le=me.select(".legendlines").selectAll("path").data(P||T?[H]:[]);Le.enter().append("path").classed("js-line",!0),Le.exit().remove(),Le.attr("d",ke+(T?"l"+o+",0.0001":"h"+o)).call(P?Kp.lineGroupStyle:Me)}function f(k){var M=mle(k),g=M.anyFill,P=M.anyLine,T=M.showLine,z=M.showMarker,O=k[0],V=O.trace,G=!z&&!P&&!g&&FL.hasText(V),Z,H;function N(ie,Se,Le,Ae){var De=mv.nestedProperty(V,ie).get(),Pe=mv.isArrayOrTypedArray(De)&&Se?Se(De):De;if(a&&Pe&&Ae!==void 0&&(Pe=Ae),Le){if(Pe<Le[0])return Le[0];if(Pe>Le[1])return Le[1]}return Pe}function j(ie){return O._distinct&&O.index&&ie[O.index]?ie[O.index]:ie[0]}if(z||G||T){var re={},oe={};if(z){re.mc=N("marker.color",j),re.mx=N("marker.symbol",j),re.mo=N("marker.opacity",mv.mean,[.2,1]),re.mlc=N("marker.line.color",j),re.mlw=N("marker.line.width",mv.mean,[0,5],Ib),oe.marker={sizeref:1,sizemin:1,sizemode:"diameter"};var _e=N("marker.size",mv.mean,[2,16],ple);re.ms=_e,oe.marker.size=_e}T&&(oe.line={width:N("line.width",j,[0,10],gle)}),G&&(re.tx="Aa",re.tp=N("textposition",j),re.ts=10,re.tc=N("textfont.color",j),re.tf=N("textfont.family",j),re.tw=N("textfont.weight",j),re.ty=N("textfont.style",j),re.tv=N("textfont.variant",j),re.tC=N("textfont.textcase",j),re.tE=N("textfont.lineposition",j),re.tS=N("textfont.shadow",j)),Z=[mv.minExtend(O,re)],H=mv.minExtend(V,oe),H.selectedpoints=null,H.texttemplate=null}var Me=Ov.select(this).select("g.legendpoints"),ke=Me.selectAll("path.scatterpts").data(z?Z:[]);ke.enter().insert("path",":first-child").classed("scatterpts",!0).attr("transform",l),ke.exit().remove(),ke.call(Kp.pointStyle,H,r),z&&(Z[0].mrc=3);var me=Me.selectAll("g.pointtext").data(G?Z:[]);me.enter().append("g").classed("pointtext",!0).append("text").attr("transform",l),me.exit().remove(),me.selectAll("text").call(Kp.textPointStyle,H,r)}function h(k){var M=k[0].trace,g=M.type==="waterfall";if(k[0]._distinct&&g){var P=k[0].trace[k[0].dir].marker;return k[0].mc=P.color,k[0].mlw=P.line.width,k[0].mlc=P.line.color,x(k,this,"waterfall")}var T=[];M.visible&&g&&(T=k[0].hasTotals?[["increasing","M-6,-6V6H0Z"],["totals","M6,6H0L-6,-6H-0Z"],["decreasing","M6,6V-6H0Z"]]:[["increasing","M-6,-6V6H6Z"],["decreasing","M6,6V-6H-6Z"]]);var z=Ov.select(this).select("g.legendpoints").selectAll("path.legendwaterfall").data(T);z.enter().append("path").classed("legendwaterfall",!0).attr("transform",l).style("stroke-miterlimit",1),z.exit().remove(),z.each(function(O){var V=Ov.select(this),G=M[O[0]].marker,Z=u(void 0,G.line,z3,Ib);V.attr("d",O[1]).style("stroke-width",Z+"px").call(T0.fill,G.color),Z&&V.call(T0.stroke,G.line.color)})}function d(k){x(k,this)}function v(k){x(k,this,"funnel")}function x(k,M,g){var P=k[0].trace,T=P.marker||{},z=T.line||{},O=T.cornerradius?"M6,3a3,3,0,0,1-3,3H-3a3,3,0,0,1-3-3V-3a3,3,0,0,1,3-3H3a3,3,0,0,1,3,3Z":"M6,6H-6V-6H6Z",V=g?P.visible&&P.type===g:kB.traceIs(P,"bar"),G=Ov.select(M).select("g.legendpoints").selectAll("path.legend"+g).data(V?[k]:[]);G.enter().append("path").classed("legend"+g,!0).attr("d",O).attr("transform",l),G.exit().remove(),G.each(function(Z){var H=Ov.select(this),N=Z[0],j=u(N.mlw,T.line,z3,Ib);H.style("stroke-width",j+"px");var re=N.mcc;if(!n._inHover&&"mc"in N){var oe=LB(T),_e=oe.mid;_e===void 0&&(_e=(oe.max+oe.min)/2),re=Kp.tryColorscale(T,"")(_e)}var Me=re||N.mc||T.color,ke=T.pattern,me=Kp.getPatternAttr,ie=ke&&(me(ke.shape,0,"")||me(ke.path,0,""));if(ie){var Se=me(ke.bgcolor,0,null),Le=me(ke.fgcolor,0,null),Ae=ke.fgopacity,De=yle(ke.size,8,10),Pe=yle(ke.solidity,.5,1),ge="legend-"+P.uid;H.call(Kp.pattern,"legend",r,ge,ie,De,Pe,re,ke.fillmode,Se,Le,Ae)}else H.call(T0.fill,Me);j&&T0.stroke(H,N.mlc||z.color)})}function b(k){var M=k[0].trace,g=Ov.select(this).select("g.legendpoints").selectAll("path.legendbox").data(M.visible&&kB.traceIs(M,"box-violin")?[k]:[]);g.enter().append("path").classed("legendbox",!0).attr("d","M6,6H-6V-6H6Z").attr("transform",l),g.exit().remove(),g.each(function(){var P=Ov.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?ple:mv.constrain(M.marker.size,2,16),sizeref:1,sizemin:1,sizemode:"diameter"}});g.call(Kp.pointStyle,T,r)}else{var z=u(void 0,M.line,z3,Ib);P.style("stroke-width",z+"px").call(T0.fill,M.fillcolor),z&&T0.stroke(P,M.line.color)}})}function p(k){var M=k[0].trace,g=Ov.select(this).select("g.legendpoints").selectAll("path.legendcandle").data(M.visible&&M.type==="candlestick"?[k,k]:[]);g.enter().append("path").classed("legendcandle",!0).attr("d",function(P,T){return T?"M-15,0H-8M-8,6V-6H8Z":"M15,0H8M8,-6V6H-8Z"}).attr("transform",l).style("stroke-miterlimit",1),g.exit().remove(),g.each(function(P,T){var z=Ov.select(this),O=M[T?"increasing":"decreasing"],V=u(void 0,O.line,z3,Ib);z.style("stroke-width",V+"px").call(T0.fill,O.fillcolor),V&&T0.stroke(z,O.line.color)})}function C(k){var M=k[0].trace,g=Ov.select(this).select("g.legendpoints").selectAll("path.legendohlc").data(M.visible&&M.type==="ohlc"?[k,k]:[]);g.enter().append("path").classed("legendohlc",!0).attr("d",function(P,T){return T?"M-15,0H0M-8,-6V0":"M15,0H0M8,6V0"}).attr("transform",l).style("stroke-miterlimit",1),g.exit().remove(),g.each(function(P,T){var z=Ov.select(this),O=M[T?"increasing":"decreasing"],V=u(void 0,O.line,z3,Ib);z.style("fill","none").call(Kp.dashLine,O.line.dash,V),V&&T0.stroke(z,O.line.color)})}function E(k){L(k,this,"pie")}function A(k){L(k,this,"funnelarea")}function L(k,M,g){var P=k[0],T=P.trace,z=g?T.visible&&T.type===g:kB.traceIs(T,g),O=Ov.select(M).select("g.legendpoints").selectAll("path.legend"+g).data(z?[k]:[]);if(O.enter().append("path").classed("legend"+g,!0).attr("d","M6,6H-6V-6H6Z").attr("transform",l),O.exit().remove(),O.size()){var V=T.marker||{},G=u(blt(V.line.width,P.pts),V.line,z3,Ib),Z="pieLike",H=mv.minExtend(T,{marker:{line:{width:G}}},Z),N=mv.minExtend(P,{trace:H},Z);xlt(O,N,H,r)}}function _(k){var M=k[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=Ov.select(this).select("g.legendpoints").selectAll("path.legend3dandfriends").data(P);T.enter().append("path").classed("legend3dandfriends",!0).attr("transform",l).style("stroke-miterlimit",1),T.exit().remove(),T.each(function(z,O){var V=Ov.select(this),G=LB(M),Z=G.colorscale,H=G.reversescale,N=function(_e){if(_e.size()){var Me="legendfill-"+M.uid;Kp.gradient(_e,r,Me,PB(H,g==="radial"),Z,"fill")}},j;if(Z){if(!g){var oe=Z.length;j=O===0?Z[H?oe-1:0][1]:O===1?Z[H?0:oe-1][1]:Z[Math.floor((oe-1)/2)][1]}}else{var re=M.vertexcolor||M.facecolor||M.color;j=mv.isArrayOrTypedArray(re)?re[O]||re[0]:re}V.attr("d",z[0]),j?V.call(T0.fill,j):V.call(N)})}};function PB(e,t){var r=t?"radial":"horizontal";return r+(e?"":"reversed")}function mle(e){var t=e[0].trace,r=t.contours,n=FL.hasLines(t),i=FL.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 yle(e,t,r){return e&&mv.isArrayOrTypedArray(e)?t:e>r?r:e}});var zB=ye((fnr,kle)=>{"use strict";var Ap=Oa(),Lh=Dr(),DB=Mc(),B3=qa(),xle=g3(),RB=gv(),Ph=So(),OL=Ca(),Rb=iu(),ble=ile(),$h=EB(),FB=Kh(),Ele=FB.LINE_SPACING,q3=FB.FROM_TL,wle=FB.FROM_BR,Tle=sle(),Alt=IB(),Ale=RL(),O3=1,Slt=/^legend[0-9]*$/;kle.exports=function(t,r){if(r)Sle(t,r);else{var n=t._fullLayout,i=n._legends,a=n._infolayer.selectAll('[class^="legend"]');a.each(function(){var u=Ap.select(this),c=u.attr("class"),f=c.split(" ")[0];f.match(Slt)&&i.indexOf(f)===-1&&u.remove()});for(var o=0;o<i.length;o++){var s=i[o],l=t._fullLayout[s];Sle(t,l)}}};function Mlt(e,t,r){if(!(t.title.side!=="top center"&&t.title.side!=="top right")){var n=t.title.font,i=n.size*Ele,a=0,o=e.node(),s=Ph.bBox(o).width;t.title.side==="top center"?a=.5*(t._width-2*r-2*$h.titlePad-s):t.title.side==="top right"&&(a=t._width-2*r-2*$h.titlePad-s),Rb.positionText(e,r+$h.titlePad+a,r+i)}}function Sle(e,t){var r=t||{},n=e._fullLayout,i=UL(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=Tle(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&&Tle(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(),DB.autoMargin(e,i);var x=Lh.ensureSingle(o,"g",i,function(M){s||M.attr("pointer-events","all")}),b=Lh.ensureSingleById(n._topdefs,"clipPath",a,function(M){M.append("rect")}),p=Lh.ensureSingle(x,"rect","bg",function(M){M.attr("shape-rendering","crispEdges")});p.call(OL.stroke,r.bordercolor).call(OL.fill,r.bgcolor).style("stroke-width",r.borderwidth+"px");var C=Lh.ensureSingle(x,"g","scrollbox"),E=r.title;r._titleWidth=0,r._titleHeight=0;var A;E.text?(A=Lh.ensureSingle(C,"text",i+"titletext"),A.attr("text-anchor","start").call(Ph.font,E.font).text(E.text),qL(A,C,e,r,O3)):C.selectAll("."+i+"titletext").remove();var L=Lh.ensureSingle(x,"rect","scrollbar",function(M){M.attr($h.scrollBarEnterAttrs).call(OL.fill,$h.scrollBarColor)}),_=C.selectAll("g.groups").data(l);_.enter().append("g").attr("class","groups"),_.exit().remove();var k=_.selectAll("g.traces").data(Lh.identity);k.enter().append("g").attr("class","traces"),k.exit().remove(),k.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(){Ap.select(this).call(Elt,e,r)}).call(Alt,e,r).each(function(){s||Ap.select(this).call(Clt,e,i)}),Lh.syncOrAsync([DB.previousPromises,function(){return Plt(e,_,k,r)},function(){var M=n._size,g=r.borderwidth,P=r.xref==="paper",T=r.yref==="paper";if(E.text&&Mlt(A,r,g),!s){var z,O;P?z=M.l+M.w*r.x-q3[BL(r)]*r._width:z=n.width*r.x-q3[BL(r)]*r._width,T?O=M.t+M.h*(1-r.y)-q3[NL(r)]*r._effHeight:O=n.height*(1-r.y)-q3[NL(r)]*r._effHeight;var V=Ilt(e,i,z,O);if(V)return;if(n.margin.autoexpand){var G=z,Z=O;z=P?Lh.constrain(z,0,n.width-r._width):G,O=T?Lh.constrain(O,0,n.height-r._effHeight):Z,z!==G&&Lh.log("Constrain "+i+".x to make legend fit inside graph"),O!==Z&&Lh.log("Constrain "+i+".y to make legend fit inside graph")}Ph.setTranslate(x,z,O)}if(L.on(".drag",null),x.on("wheel",null),s||r._height<=r._maxHeight||e._context.staticPlot){var H=r._effHeight;s&&(H=r._height),p.attr({width:r._width-g,height:H-g,x:g/2,y:g/2}),Ph.setTranslate(C,0,0),b.select("rect").attr({width:r._width-2*g,height:H-2*g,x:g,y:g}),Ph.setClipUrl(C,a,e),Ph.setRect(L,0,0,0,0),delete r._scrollY}else{var N=Math.max($h.scrollBarMinHeight,r._effHeight*r._effHeight/r._height),j=r._effHeight-N-2*$h.scrollBarMargin,re=r._height-r._effHeight,oe=j/re,_e=Math.min(r._scrollY||0,re);p.attr({width:r._width-2*g+$h.scrollBarWidth+$h.scrollBarMargin,height:r._effHeight-g,x:g/2,y:g/2}),b.select("rect").attr({width:r._width-2*g+$h.scrollBarWidth+$h.scrollBarMargin,height:r._effHeight-2*g,x:g,y:g+_e}),Ph.setClipUrl(C,a,e),De(_e,N,oe),x.on("wheel",function(){_e=Lh.constrain(r._scrollY+Ap.event.deltaY/j*re,0,re),De(_e,N,oe),_e!==0&&_e!==re&&Ap.event.preventDefault()});var Me,ke,me,ie=function(Ze,ct,pt){var Wt=(pt-ct)/oe+Ze;return Lh.constrain(Wt,0,re)},Se=function(Ze,ct,pt){var Wt=(ct-pt)/oe+Ze;return Lh.constrain(Wt,0,re)},Le=Ap.behavior.drag().on("dragstart",function(){var Ze=Ap.event.sourceEvent;Ze.type==="touchstart"?Me=Ze.changedTouches[0].clientY:Me=Ze.clientY,me=_e}).on("drag",function(){var Ze=Ap.event.sourceEvent;Ze.buttons===2||Ze.ctrlKey||(Ze.type==="touchmove"?ke=Ze.changedTouches[0].clientY:ke=Ze.clientY,_e=ie(me,Me,ke),De(_e,N,oe))});L.call(Le);var Ae=Ap.behavior.drag().on("dragstart",function(){var Ze=Ap.event.sourceEvent;Ze.type==="touchstart"&&(Me=Ze.changedTouches[0].clientY,me=_e)}).on("drag",function(){var Ze=Ap.event.sourceEvent;Ze.type==="touchmove"&&(ke=Ze.changedTouches[0].clientY,_e=Se(me,Me,ke),De(_e,N,oe))});C.call(Ae)}function De(Ze,ct,pt){r._scrollY=e._fullLayout[i]._scrollY=Ze,Ph.setTranslate(C,0,-Ze),Ph.setRect(L,r._width,$h.scrollBarMargin+Ze*pt,$h.scrollBarWidth,ct),b.select("rect").attr("y",g+Ze)}if(e._context.edits.legendPosition){var Pe,ge,Fe,ce;x.classed("cursor-move",!0),RB.init({element:x.node(),gd:e,prepFn:function(Ze){if(Ze.target!==L.node()){var ct=Ph.getTranslate(x);Fe=ct.x,ce=ct.y}},moveFn:function(Ze,ct){if(Fe!==void 0&&ce!==void 0){var pt=Fe+Ze,Wt=ce+ct;Ph.setTranslate(x,pt,Wt),Pe=RB.align(pt,r._width,M.l,M.l+M.w,r.xanchor),ge=RB.align(Wt+r._height,-r._height,M.t+M.h,M.t,r.yanchor)}},doneFn:function(){if(Pe!==void 0&&ge!==void 0){var Ze={};Ze[i+".x"]=Pe,Ze[i+".y"]=ge,B3.call("_guiRelayout",e,Ze)}},clickFn:function(Ze,ct){var pt=o.selectAll("g.traces").filter(function(){var Wt=this.getBoundingClientRect();return ct.clientX>=Wt.left&&ct.clientX<=Wt.right&&ct.clientY>=Wt.top&&ct.clientY<=Wt.bottom});pt.size()>0&&Cle(e,x,pt,Ze,ct)}})}}],e)}}function zL(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 Cle(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=xle.triggerHandler(e,"plotly_legendclick",o);if(n===1){if(s===!1)return;t._clickTimeout=setTimeout(function(){e._fullLayout&&ble(r,e,n)},e._context.doubleClickDelay)}else if(n===2){t._clickTimeout&&clearTimeout(t._clickTimeout),e._legendMouseDownTime=0;var l=xle.triggerHandler(e,"plotly_legenddoubleclick",o);l!==!1&&s!==!1&&ble(r,e,n)}}function Elt(e,t,r){var n=UL(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=Lh.templateString(u,a._meta))));var f=Lh.ensureSingle(e,"text",n+"text");f.attr("text-anchor","start").call(Ph.font,c).text(s?Mle(u,l):u);var h=r.indentation+r.itemwidth+$h.itemGap*2;Rb.positionText(f,h,0),s?f.call(Rb.makeEditable,{gd:t,text:u}).call(qL,e,t,r).on("edit",function(d){this.text(Mle(d,l)).call(qL,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)}):qL(f,e,t,r)}function Mle(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 Clt(e,t,r){var n=t._context.doubleClickDelay,i,a=1,o=Lh.ensureSingle(e,"rect",r+"toggle",function(s){t._context.staticPlot||s.style("cursor","pointer").attr("pointer-events","all"),s.call(OL.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)),Cle(t,s,e,a,Ap.event)}}))}function qL(e,t,r,n,i){n._inHover&&e.attr("data-notex",!0),Rb.convertToTspans(e,r,function(){klt(t,r,n,i)})}function klt(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=UL(r);r||(r=t._fullLayout[s]);var l=r.borderwidth,u;n===O3?u=r.title.font:i.groupTitle?u=i.groupTitle.font:u=r.font;var c=u.size*Ele,f,h;if(o){var d=Ph.bBox(o);f=d.height,h=d.width,n===O3?Ph.setTranslate(a,l,l+f*.75):Ph.setTranslate(a,0,f*.25)}else{var v="."+s+(n===O3?"title":"")+"text",x=e.select(v),b=Rb.lineCount(x),p=x.node();if(f=c*b,h=p?Ph.bBox(p).width:0,n===O3)r.title.side==="left"&&(h+=$h.itemGap*2),Rb.positionText(x,l+$h.titlePad,l+c);else{var C=$h.itemGap*2+r.indentation+r.itemwidth;i.groupTitle&&(C=$h.itemGap,h-=r.indentation+r.itemwidth),Rb.positionText(x,C,-c*((b-1)/2-.3))}}n===O3?(r._titleWidth=h,r._titleHeight=f):(i.lineHeight=c,i.height=Math.max(f,16)+3,i.width=h)}function Llt(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 Plt(e,t,r,n){var i=e._fullLayout,a=UL(n);n||(n=i[a]);var o=i._size,s=Ale.isVertical(n),l=Ale.isGrouped(n),u=n.entrywidthmode==="fraction",c=n.borderwidth,f=2*c,h=$h.itemGap,d=n.indentation+n.itemwidth+h*2,v=2*(c+h),x=NL(n),b=n.y<0||n.y===0&&x==="top",p=n.y>1||n.y===1&&x==="bottom",C=n.tracegroupgap,E={};let{orientation:A,yref:L}=n,{maxheight:_}=n,k=b||p||A!=="v"||L!=="paper";_||(_=k?.5:1);let M=k?i.height:o.h;n._maxHeight=Math.max(_>1?_:_*M,30);var g=0;n._width=0,n._height=0;var P=Llt(n);if(s)r.each(function(De){var Pe=De[0].height;Ph.setTranslate(this,c+P[0],c+P[1]+n._height+Pe/2+h),n._height+=Pe,n._width=Math.max(n._width,De[0].width)}),g=d+n._width,n._width+=h+d+f,n._height+=v,l&&(t.each(function(De,Pe){Ph.setTranslate(this,0,Pe*n.tracegroupgap)}),n._height+=(n._lgroupsLength-1)*n.tracegroupgap);else{var T=BL(n),z=n.x<0||n.x===0&&T==="right",O=n.x>1||n.x===1&&T==="left",V=p||b,G=i.width/2;n._maxWidth=Math.max(z?V&&T==="left"?o.l+o.w:G:O?V&&T==="right"?o.r+o.w:G:o.w,2*d);var Z=0,H=0;r.each(function(De){var Pe=zL(De,n,d);Z=Math.max(Z,Pe),H+=Pe}),g=null;var N=0;if(l){var j=0,re=0,oe=0;t.each(function(){var De=0,Pe=0;Ap.select(this).selectAll("g.traces").each(function(Fe){var ce=zL(Fe,n,d),Ze=Fe[0].height;Ph.setTranslate(this,P[0],P[1]+c+h+Ze/2+Pe),Pe+=Ze,De=Math.max(De,ce),E[Fe[0].trace.legendgroup]=De});var ge=De+h;re>0&&ge+c+re>n._maxWidth?(N=Math.max(N,re),re=0,oe+=j+C,j=Pe):j=Math.max(j,Pe),Ph.setTranslate(this,re,oe),re+=ge}),n._width=Math.max(N,re)+c,n._height=oe+j+v}else{var _e=r.size(),Me=H+f+(_e-1)*h<n._maxWidth,ke=0,me=0,ie=0,Se=0;r.each(function(De){var Pe=De[0].height,ge=zL(De,n,d,l),Fe=Me?ge:Z;u||(Fe+=h),Fe+c+me-h>=n._maxWidth&&(N=Math.max(N,Se),me=0,ie+=ke,n._height+=ke,ke=0),Ph.setTranslate(this,P[0]+c+me,P[1]+c+ie+Pe/2+h),Se=me+ge+h,me+=Fe,ke=Math.max(ke,Pe)}),Me?(n._width=me+f,n._height=ke+v):(n._width=Math.max(N,Se)+f,n._height+=ke+v)}}n._width=Math.ceil(Math.max(n._width+P[0],n._titleWidth+2*(c+$h.titlePad))),n._height=Math.ceil(Math.max(n._height+P[1],n._titleHeight+2*(c+$h.itemGap))),n._effHeight=Math.min(n._height,n._maxHeight);var Le=e._context.edits,Ae=Le.legendText||Le.legendPosition;r.each(function(De){var Pe=Ap.select(this).select("."+a+"toggle"),ge=De[0].height,Fe=De[0].trace.legendgroup,ce=zL(De,n,d);l&&Fe!==""&&(ce=E[Fe]);var Ze=Ae?d:g||ce;!s&&!u&&(Ze+=h/2),Ph.setRect(Pe,0,-ge/2,Ze,ge)})}function Ilt(e,t,r,n){var i=e._fullLayout,a=i[t],o=BL(a),s=NL(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 DB.autoMargin(e,t,{x:a.x,y:a.y,l:a._width*q3[o],r:a._width*wle[o],b:a._effHeight*wle[s],t:a._effHeight*q3[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 BL(e){return Lh.isRightAnchor(e)?"right":Lh.isCenterAnchor(e)?"center":"left"}function NL(e){return Lh.isBottomAnchor(e)?"bottom":Lh.isMiddleAnchor(e)?"middle":"top"}function UL(e){return e._id||"legend"}});var NB=ye(BB=>{"use strict";var Db=Oa(),Sy=Eo(),Lle=cd(),Ff=Dr(),Rlt=Ff.pushUnique,OB=Ff.strTranslate,Dlt=Ff.strRotate,Flt=g3(),A0=iu(),zlt=Qse(),bm=So(),vd=Ca(),VL=gv(),wm=ho(),Olt=hd().zindexSeparator,U3=qa(),Ag=rp(),Fb=RS(),qlt=AB(),Blt=zB(),qle=Fb.YANGLE,qB=Math.PI*qle/180,Nlt=1/Math.sin(qB),Ult=Math.cos(qB),Vlt=Math.sin(qB),Qc=Fb.HOVERARROWSIZE,ll=Fb.HOVERTEXTPAD,Ple={box:!0,ohlc:!0,violin:!0,candlestick:!0},Glt={scatter:!0,scattergl:!0,splom:!0};function Ile(e,t){return e.distance-t.distance}BB.hover=function(t,r,n,i){t=Ff.getGraphDiv(t);var a=r.target;Ff.throttle(t._fullLayout._uid+Fb.HOVERID,Fb.HOVERMINTIME,function(){Hlt(t,r,n,i,a)})};BB.loneHover=function(t,r){var n=!0;Array.isArray(t)||(n=!1,t=[t]);var i=r.gd,a=Gle(i),o=Hle(i),s=t.map(function(b){var p=b._x0||b.x0||b.x||0,C=b._x1||b.x1||b.x||0,E=b._y0||b.y0||b.y||0,A=b._y1||b.y1||b.y||0,L=b.eventData;if(L){var _=Math.min(p,C),k=Math.max(p,C),M=Math.min(E,A),g=Math.max(E,A),P=b.trace;if(U3.traceIs(P,"gl3d")){var T=i._fullLayout[P.scene]._scene.container,z=T.offsetLeft,O=T.offsetTop;_+=z,k+=z,M+=O,g+=O}L.bbox={x0:_+o,x1:k+o,y0:M+a,y1:g+a},r.inOut_bbox&&r.inOut_bbox.push(L.bbox)}else L=!1;return{color:b.color||vd.defaultLine,x0:b.x0||b.x||0,x1:b.x1||b.x||0,y0:b.y0||b.y||0,y1:b.y1||b.y||0,xLabel:b.xLabel,yLabel:b.yLabel,zLabel:b.zLabel,text:b.text,name:b.name,idealAlign:b.idealAlign,borderColor:b.borderColor,fontFamily:b.fontFamily,fontSize:b.fontSize,fontColor:b.fontColor,fontWeight:b.fontWeight,fontStyle:b.fontStyle,fontVariant:b.fontVariant,nameLength:b.nameLength,textAlign:b.textAlign,trace:b.trace||{index:0,hoverinfo:""},xa:{_offset:0},ya:{_offset:0},index:0,hovertemplate:b.hovertemplate||!1,hovertemplateLabels:b.hovertemplateLabels||!1,eventData:L}}),l=!1,u=Nle(s,{gd:i,hovermode:"closest",rotateLabels:l,bgColor:r.bgColor||vd.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 C=b.y0-b.by/2;C-f<h?b.offset=h-C+f:b.offset=0,h=C+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 Vle(c,l,v,x),n?c:c.node()};function Hlt(e,t,r,n,i){r||(r="xy"),typeof r=="string"&&(r=r.split(Olt)[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,C=0;C<p;C++)if(o=a[C],u[o]){x=wm.getFromId(e,o,"x"),b=wm.getFromId(e,o,"y");var E=(d?x:b)._subplotsWith;if(E&&E.length)for(var A=0;A<E.length;A++)Rlt(a,E[A])}}if(c&&l!=="single"){var L=c.overlays.map(function(pn){return pn.id});a=a.concat(L)}for(var _=a.length,k=new Array(_),M=new Array(_),g=!1,P=0;P<_;P++)if(o=a[P],u[o])g=!0,k[P]=u[o].xaxis,M[P]=u[o].yaxis;else if(s[o]&&s[o]._subplot){var T=s[o]._subplot;k[P]=T.xaxis,M[P]=T.yaxis}else{Ff.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 VL.unhoverRaw(e,t);var z=s.hoverdistance;z===-1&&(z=1/0);var O=s.spikedistance;O===-1&&(O=1/0);var V=[],G=[],Z,H,N,j,re,oe,_e,Me,ke,me,ie,Se,Le,Ae={hLinePoint:null,vLinePoint:null},De=!1;if(Array.isArray(t))for(h="array",N=0;N<t.length;N++)re=e.calcdata[t[N].curveNumber||0],re&&(oe=re[0].trace,re[0].trace.hoverinfo!=="skip"&&(G.push(re),oe.orientation==="h"&&(De=!0)));else{var Pe=e.calcdata.slice();for(Pe.sort(function(pn,Vn){var kn=pn[0].trace.zorder||0,ea=Vn[0].trace.zorder||0;return kn-ea}),j=0;j<Pe.length;j++)re=Pe[j],oe=re[0].trace,oe.hoverinfo!=="skip"&&Ag.isTraceInSubplots(oe,a)&&(G.push(re),oe.orientation==="h"&&(De=!0));var ge=!i,Fe,ce;if(ge)"xpx"in t?Fe=t.xpx:Fe=k[0]._length/2,"ypx"in t?ce=t.ypx:ce=M[0]._length/2;else{if(Flt.triggerHandler(e,"plotly_beforehover",t)===!1)return;var Ze=i.getBoundingClientRect();Fe=t.clientX-Ze.left,ce=t.clientY-Ze.top,s._calcInverseTransform(e);var ct=Ff.apply3DTransform(s._invTransform)(Fe,ce);if(Fe=ct[0],ce=ct[1],Fe<0||Fe>k[0]._length||ce<0||ce>M[0]._length)return VL.unhoverRaw(e,t)}if(t.pointerX=Fe+k[0]._offset,t.pointerY=ce+M[0]._offset,"xval"in t?Z=Ag.flat(a,t.xval):Z=Ag.p2c(k,Fe),"yval"in t?H=Ag.flat(a,t.yval):H=Ag.p2c(M,ce),!Sy(Z[0])||!Sy(H[0]))return Ff.warn("Fx.hover failed",t,e),VL.unhoverRaw(e,t)}var pt=1/0;function Wt(pn,Vn){for(j=0;j<G.length;j++)if(re=G[j],!(!re||!re[0]||!re[0].trace)&&(oe=re[0].trace,!(oe.visible!==!0||oe._length===0)&&["carpet","contourcarpet"].indexOf(oe._module.name)===-1)){if(ke=h,Ag.isUnifiedHover(ke)&&(ke=ke.charAt(0)),oe.type==="splom"?(Me=0,_e=a[Me]):(_e=Ag.getSubplot(oe),Me=a.indexOf(_e)),Se={cd:re,trace:oe,xa:k[Me],ya:M[Me],maxHoverDistance:z,maxSpikeDistance:O,index:!1,distance:Math.min(pt,z),spikeDistance:1/0,xSpike:void 0,ySpike:void 0,color:vd.defaultLine,name:oe.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]&&(Se.subplot=s[_e]._subplot),s._splomScenes&&s._splomScenes[oe.uid]&&(Se.scene=s._splomScenes[oe.uid]),ke==="array"){var kn=t[j];"pointNumber"in kn?(Se.index=kn.pointNumber,ke="closest"):(ke="","xval"in kn&&(me=kn.xval,ke="x"),"yval"in kn&&(ie=kn.yval,ke=ke?"closest":"y"))}else pn!==void 0&&Vn!==void 0?(me=pn,ie=Vn):(me=Z[Me],ie=H[Me]);if(Le=V.length,z!==0)if(oe._module&&oe._module.hoverPoints){var ea=oe._module.hoverPoints(Se,me,ie,ke,{finiteRange:!0,hoverLayer:s._hoverlayer,hoversubplots:l,gd:e});if(ea)for(var ua,Vt=0;Vt<ea.length;Vt++)ua=ea[Vt],Sy(ua.x0)&&Sy(ua.y0)&&V.push(Zlt(ua,h))}else Ff.log("Unrecognized trace type in hover:",oe);if(h==="closest"&&V.length>Le&&(V.splice(0,Le),pt=V[0].distance),f&&O!==0&&V.length===0){Se.distance=O,Se.index=!1;var _t=oe._module.hoverPoints(Se,me,ie,"closest",{hoverLayer:s._hoverlayer});if(_t&&(_t=_t.filter(function($r){return $r.spikeDistance<=O})),_t&&_t.length){var tr,ar=_t.filter(function($r){return $r.xa.showspikes&&$r.xa.spikesnap!=="hovered data"});if(ar.length){var Er=ar[0];Sy(Er.x0)&&Sy(Er.y0)&&(tr=lt(Er),(!Ae.vLinePoint||Ae.vLinePoint.spikeDistance>tr.spikeDistance)&&(Ae.vLinePoint=tr))}var Zr=_t.filter(function($r){return $r.ya.showspikes&&$r.ya.spikesnap!=="hovered data"});if(Zr.length){var ri=Zr[0];Sy(ri.x0)&&Sy(ri.y0)&&(tr=lt(ri),(!Ae.hLinePoint||Ae.hLinePoint.spikeDistance>tr.spikeDistance)&&(Ae.hLinePoint=tr))}}}}}Wt();function st(pn,Vn,kn){for(var ea=null,ua=1/0,Vt,_t=0;_t<pn.length;_t++)x&&x._id!==pn[_t].xa._id||b&&b._id!==pn[_t].ya._id||(Vt=pn[_t].spikeDistance,kn&&_t===0&&(Vt=-1/0),Vt<=ua&&Vt<=Vn&&(ea=pn[_t],ua=Vt));return ea}function lt(pn){return pn?{xa:pn.xa,ya:pn.ya,x:pn.xSpike!==void 0?pn.xSpike:(pn.x0+pn.x1)/2,y:pn.ySpike!==void 0?pn.ySpike:(pn.y0+pn.y1)/2,distance:pn.distance,spikeDistance:pn.spikeDistance,curveNumber:pn.trace.index,color:pn.color,pointNumber:pn.index}:null}var Gt={fullLayout:s,container:s._hoverlayer,event:t},Nt=e._spikepoints,$t={vLinePoint:Ae.vLinePoint,hLinePoint:Ae.hLinePoint};e._spikepoints=$t;var sr=function(){var pn=V.filter(function(kn){return x&&x._id===kn.xa._id&&b&&b._id===kn.ya._id}),Vn=V.filter(function(kn){return!(x&&x._id===kn.xa._id&&b&&b._id===kn.ya._id)});pn.sort(Ile),Vn.sort(Ile),V=pn.concat(Vn),V=Klt(V,h)};sr();var wr=h.charAt(0),ur=(wr==="x"||wr==="y")&&V[0]&&Glt[V[0].trace.type];if(f&&O!==0&&V.length!==0){var Qe=V.filter(function(pn){return pn.ya.showspikes}),Et=st(Qe,O,ur);Ae.hLinePoint=lt(Et);var er=V.filter(function(pn){return pn.xa.showspikes}),Ut=st(er,O,ur);Ae.vLinePoint=lt(Ut)}if(V.length===0){var Ft=VL.unhoverRaw(e,t);return f&&(Ae.hLinePoint!==null||Ae.vLinePoint!==null)&&Fle(Nt)&&Dle(e,Ae,Gt),Ft}if(f&&Fle(Nt)&&Dle(e,Ae,Gt),Ag.isXYhover(ke)&&V[0].length!==0&&V[0].trace.type!=="splom"){var bt=V[0];Ple[bt.trace.type]?V=V.filter(function(pn){return pn.trace.index===bt.trace.index}):V=[bt];var yt=V.length,Yt=Ole("x",bt,s),lr=Ole("y",bt,s);Wt(Yt,lr);var Tr=[],Rr={},ei=0,Wr=function(pn){var Vn=Ple[pn.trace.type]?Ble(pn):pn.trace.index;if(!Rr[Vn])ei++,Rr[Vn]=ei,Tr.push(pn);else{var kn=Rr[Vn]-1,ea=Tr[kn];kn>0&&Math.abs(pn.distance)<Math.abs(ea.distance)&&(Tr[kn]=pn)}},Ur;for(Ur=0;Ur<yt;Ur++)Wr(V[Ur]);for(Ur=V.length-1;Ur>yt-1;Ur--)Wr(V[Ur]);V=Tr,sr()}var dt=e._hoverdata,Ge=[],Je=Gle(e),je=Hle(e);for(N=0;N<V.length;N++){var $e=V[N],wt=Ag.makeEventData($e,$e.trace,$e.cd);if($e.hovertemplate!==!1){var Ie=!1;$e.cd[$e.index]&&$e.cd[$e.index].ht&&(Ie=$e.cd[$e.index].ht),$e.hovertemplate=Ie||$e.trace.hovertemplate||!1}if($e.xa&&$e.ya){var xe=$e.x0+$e.xa._offset,Ce=$e.x1+$e.xa._offset,vt=$e.y0+$e.ya._offset,nr=$e.y1+$e.ya._offset,ir=Math.min(xe,Ce),pr=Math.max(xe,Ce),oi=Math.min(vt,nr),di=Math.max(vt,nr);wt.bbox={x0:ir+je,x1:pr+je,y0:oi+Je,y1:di+Je}}$e.eventData=[wt],Ge.push(wt)}e._hoverdata=Ge;var Jr=h==="y"&&(G.length>1||V.length>1)||h==="closest"&&De&&V.length>1,fi=vd.combine(s.plot_bgcolor||vd.background,s.paper_bgcolor),Hi=Nle(V,{gd:e,hovermode:h,rotateLabels:Jr,bgColor:fi,container:s._hoverlayer,outerContainer:s._paper.node(),commonLabelOpts:s.hoverlabel,hoverdistance:s.hoverdistance}),Pn=Hi.hoverLabels;if(Ag.isUnifiedHover(h)||(Wlt(Pn,Jr,s,Hi.commonLabelBoundingBox),Vle(Pn,Jr,s._invScaleX,s._invScaleY)),i&&i.tagName){var wn=U3.getComponentMethod("annotations","hasClickToShow")(e,Ge);zlt(Db.select(i),wn?"pointer":"")}!i||n||!Ylt(e,t,dt)||(dt&&e.emit("plotly_unhover",{event:t,points:dt}),e.emit("plotly_hover",{event:t,points:e._hoverdata,xaxes:k,yaxes:M,xvals:Z,yvals:H}))}function Ble(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 jlt=/<extra>([\s\S]*)<\/extra>/;function Nle(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||Fb.HOVERFONT,f=t.fontSize||Fb.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,C=e[0],E=C.xa,A=C.ya,L=i.charAt(0),_=L+"Label",k=C[_];if(k===void 0&&E.type==="multicategory")for(var M=0;M<e.length&&(k=e[M][_],k===void 0);M++);var g=N3(r,l),P=g.top,T=g.width,z=g.height,O=k!==void 0&&C.distance<=t.hoverdistance&&(i==="x"||i==="y");if(O){var V=!0,G,Z;for(G=0;G<e.length;G++)if(V&&e[G].zLabel===void 0&&(V=!1),Z=e[G].hoverinfo||e[G].trace.hoverinfo,Z){var H=Array.isArray(Z)?Z:Z.split("+");if(H.indexOf("all")===-1&&H.indexOf(i)===-1){O=!1;break}}V&&(O=!1)}var N=s.selectAll("g.axistext").data(O?[0]:[]);N.enter().append("g").classed("axistext",!0),N.exit().remove();var j={minX:0,maxX:0,minY:0,maxY:0};if(N.each(function(){var bt=Db.select(this),yt=Ff.ensureSingle(bt,"path","",function(di){di.style({"stroke-width":"1px"})}),Yt=Ff.ensureSingle(bt,"text","",function(di){di.attr("data-notex",1)}),lr=u.bgcolor||vd.defaultLine,Tr=u.bordercolor||vd.contrast(lr),Rr=vd.contrast(lr),ei=u.font,Wr={weight:ei.weight||h,style:ei.style||d,variant:ei.variant||v,textcase:ei.textcase||x,lineposition:ei.lineposition||b,shadow:ei.shadow||p,family:ei.family||c,size:ei.size||f,color:ei.color||Rr};yt.style({fill:lr,stroke:Tr}),Yt.text(k).call(bm.font,Wr).call(A0.positionText,0,0).call(A0.convertToTspans,r),bt.attr("transform","");var Ur=N3(r,Yt.node()),dt,Ge;if(i==="x"){var Je=E.side==="top"?"-":"";Yt.attr("text-anchor","middle").call(A0.positionText,0,E.side==="top"?P-Ur.bottom-Qc-ll:P-Ur.top+Qc+ll),dt=E._offset+(C.x0+C.x1)/2,Ge=A._offset+(E.side==="top"?0:A._length);var je=Ur.width/2+ll,$e=dt;dt<je?$e=je:dt>n.width-je&&($e=n.width-je),yt.attr("d","M"+(dt-$e)+",0L"+(dt-$e+Qc)+","+Je+Qc+"H"+je+"v"+Je+(ll*2+Ur.height)+"H"+-je+"V"+Je+Qc+"H"+(dt-$e-Qc)+"Z"),dt=$e,j.minX=dt-je,j.maxX=dt+je,E.side==="top"?(j.minY=Ge-(ll*2+Ur.height),j.maxY=Ge-ll):(j.minY=Ge+ll,j.maxY=Ge+(ll*2+Ur.height))}else{var wt,Ie,xe;A.side==="right"?(wt="start",Ie=1,xe="",dt=E._offset+E._length):(wt="end",Ie=-1,xe="-",dt=E._offset),Ge=A._offset+(C.y0+C.y1)/2,Yt.attr("text-anchor",wt),yt.attr("d","M0,0L"+xe+Qc+","+Qc+"V"+(ll+Ur.height/2)+"h"+xe+(ll*2+Ur.width)+"V-"+(ll+Ur.height/2)+"H"+xe+Qc+"V-"+Qc+"Z"),j.minY=Ge-(ll+Ur.height/2),j.maxY=Ge+(ll+Ur.height/2),A.side==="right"?(j.minX=dt+Qc,j.maxX=dt+Qc+(ll*2+Ur.width)):(j.minX=dt-Qc-(ll*2+Ur.width),j.maxX=dt-Qc);var Ce=Ur.height/2,vt=P-Ur.top-Ce,nr="clip"+n._uid+"commonlabel"+A._id,ir;if(dt<Ur.width+2*ll+Qc){ir="M-"+(Qc+ll)+"-"+Ce+"h-"+(Ur.width-ll)+"V"+Ce+"h"+(Ur.width-ll)+"Z";var pr=Ur.width-dt+ll;A0.positionText(Yt,pr,vt),wt==="end"&&Yt.selectAll("tspan").each(function(){var di=Db.select(this),Jr=bm.tester.append("text").text(di.text()).call(bm.font,Wr),fi=N3(r,Jr.node());Math.round(fi.width)<Math.round(Ur.width)&&di.attr("x",pr-fi.width),Jr.remove()})}else A0.positionText(Yt,Ie*(ll+Qc),vt),ir=null;var oi=n._topclips.selectAll("#"+nr).data(ir?[0]:[]);oi.enter().append("clipPath").attr("id",nr).append("path"),oi.exit().remove(),oi.select("path").attr("d",ir),bm.setClipUrl(Yt,ir?nr:null,r)}bt.attr("transform",OB(dt,Ge))}),Ag.isUnifiedHover(i)){s.selectAll("g.hovertext").remove();var re=e.filter(function(bt){return bt.hoverinfo!=="none"});if(re.length===0)return[];var oe=n.hoverlabel,_e=oe.font,Me=re[0],ke=((i==="x unified"?Me.xa:Me.ya).unifiedhovertitle||{}).text,me=ke?Ff.hovertemplateString(ke,{},n._d3locale,i==="x unified"?{xa:Me.xa,x:Me.xVal}:{ya:Me.ya,y:Me.yVal}):k,ie={showlegend:!0,legend:{title:{text:me,font:_e},font:_e,bgcolor:oe.bgcolor,bordercolor:oe.bordercolor,borderwidth:1,tracegroupgap:7,traceorder:n.legend?n.legend.traceorder:void 0,orientation:"v"}},Se={font:_e};qlt(ie,Se,r._fullData);var Le=Se.legend;Le.entries=[];for(var Ae=0;Ae<re.length;Ae++){var De=re[Ae];if(De.hoverinfo!=="none"){var Pe=Rle(De,!0,i,n,k),ge=Pe[0],Fe=Pe[1];De.name=Fe,Fe!==""?De.text=Fe+" : "+ge:De.text=ge;var ce=De.cd[De.index];ce&&(ce.mc&&(De.mc=ce.mc),ce.mcc&&(De.mc=ce.mcc),ce.mlc&&(De.mlc=ce.mlc),ce.mlcc&&(De.mlc=ce.mlcc),ce.mlw&&(De.mlw=ce.mlw),ce.mrc&&(De.mrc=ce.mrc),ce.dir&&(De.dir=ce.dir)),De._distinct=!0,Le.entries.push([De])}}Le.entries.sort(function(bt,yt){return bt[0].trace.index-yt[0].trace.index}),Le.layer=s,Le._inHover=!0,Le._groupTitleFont=oe.grouptitlefont,Blt(r,Le);var Ze=s.select("g.legend"),ct=N3(r,Ze.node()),pt=ct.width+2*ll,Wt=ct.height+2*ll,st=re[0],lt=(st.x0+st.x1)/2,Gt=(st.y0+st.y1)/2,Nt=!(U3.traceIs(st.trace,"bar-like")||U3.traceIs(st.trace,"box-violin")),$t,sr;L==="y"?Nt?(sr=Gt-ll,$t=Gt+ll):(sr=Math.min.apply(null,re.map(function(bt){return Math.min(bt.y0,bt.y1)})),$t=Math.max.apply(null,re.map(function(bt){return Math.max(bt.y0,bt.y1)}))):sr=$t=Ff.mean(re.map(function(bt){return(bt.y0+bt.y1)/2}))-Wt/2;var wr,ur;L==="x"?Nt?(wr=lt+ll,ur=lt-ll):(wr=Math.max.apply(null,re.map(function(bt){return Math.max(bt.x0,bt.x1)})),ur=Math.min.apply(null,re.map(function(bt){return Math.min(bt.x0,bt.x1)}))):wr=ur=Ff.mean(re.map(function(bt){return(bt.x0+bt.x1)/2}))-pt/2;var Qe=E._offset,Et=A._offset;$t+=Et,wr+=Qe,ur+=Qe-pt,sr+=Et-Wt;var er,Ut;return wr+pt<T&&wr>=0?er=wr:ur+pt<T&&ur>=0?er=ur:Qe+pt<T?er=Qe:wr-lt<lt-ur+pt?er=T-pt:er=0,er+=ll,$t+Wt<z&&$t>=0?Ut=$t:sr+Wt<z&&sr>=0?Ut=sr:Et+Wt<z?Ut=Et:$t-Gt<Gt-sr+Wt?Ut=z-Wt:Ut=0,Ut+=ll,Ze.attr("transform",OB(er-1,Ut-1)),Ze}var Ft=s.selectAll("g.hovertext").data(e,function(bt){return Ble(bt)});return Ft.enter().append("g").classed("hovertext",!0).each(function(){var bt=Db.select(this);bt.append("rect").call(vd.fill,vd.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})}),Ft.exit().remove(),Ft.each(function(bt){var yt=Db.select(this).attr("transform",""),Yt=bt.color;Array.isArray(Yt)&&(Yt=Yt[bt.eventData[0].pointNumber]);var lr=bt.bgcolor||Yt,Tr=vd.combine(vd.opacity(lr)?lr:vd.defaultLine,o),Rr=vd.combine(vd.opacity(Yt)?Yt:vd.defaultLine,o),ei=bt.borderColor||vd.contrast(Tr),Wr=Rle(bt,O,i,n,k,yt),Ur=Wr[0],dt=Wr[1],Ge=yt.select("text.nums").call(bm.font,{family:bt.fontFamily||c,size:bt.fontSize||f,color:bt.fontColor||ei,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(Ur).attr("data-notex",1).call(A0.positionText,0,0).call(A0.convertToTspans,r),Je=yt.select("text.name"),je=0,$e=0;if(dt&&dt!==Ur){Je.call(bm.font,{family:bt.fontFamily||c,size:bt.fontSize||f,color:Rr,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(dt).attr("data-notex",1).call(A0.positionText,0,0).call(A0.convertToTspans,r);var wt=N3(r,Je.node());je=wt.width+2*ll,$e=wt.height+2*ll}else Je.remove(),yt.select("rect").remove();yt.select("path").style({fill:Tr,stroke:ei});var Ie=bt.xa._offset+(bt.x0+bt.x1)/2,xe=bt.ya._offset+(bt.y0+bt.y1)/2,Ce=Math.abs(bt.x1-bt.x0),vt=Math.abs(bt.y1-bt.y0),nr=N3(r,Ge.node()),ir=nr.width/n._invScaleX,pr=nr.height/n._invScaleY;bt.ty0=(P-nr.top)/n._invScaleY,bt.bx=ir+2*ll,bt.by=Math.max(pr+2*ll,$e),bt.anchor="start",bt.txwidth=ir,bt.tx2width=je,bt.offset=0;var oi=(ir+Qc+ll+je)*n._invScaleX,di,Jr;if(a)bt.pos=Ie,di=xe+vt/2+oi<=z,Jr=xe-vt/2-oi>=0,(bt.idealAlign==="top"||!di)&&Jr?(xe-=vt/2,bt.anchor="end"):di?(xe+=vt/2,bt.anchor="start"):bt.anchor="middle",bt.crossPos=xe;else{if(bt.pos=xe,di=Ie+Ce/2+oi<=T,Jr=Ie-Ce/2-oi>=0,(bt.idealAlign==="left"||!di)&&Jr)Ie-=Ce/2,bt.anchor="end";else if(di)Ie+=Ce/2,bt.anchor="start";else{bt.anchor="middle";var fi=oi/2,Hi=Ie+fi-T,Pn=Ie-fi;Hi>0&&(Ie-=Hi),Pn<0&&(Ie+=-Pn)}bt.crossPos=Ie}Ge.attr("text-anchor",bt.anchor),je&&Je.attr("text-anchor",bt.anchor),yt.attr("transform",OB(Ie,xe)+(a?Dlt(qle):""))}),{hoverLabels:Ft,commonLabelBoundingBox:j}}function Rle(e,t,r,n,i,a){var o="",s="";e.nameOverride!==void 0&&(e.name=e.nameOverride),e.name&&(e.trace._meta&&(e.name=Ff.templateString(e.name,e.trace._meta)),o=zle(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=Ff.hovertemplateString(c,f,n._d3locale,e.eventData[0]||{},e.trace._meta),s=s.replace(jlt,function(h,d){return o=zle(d,e.nameLength),""})}return[s,o]}function Wlt(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(Z){return Z*r._invScaleX},b=function(Z){return Z*r._invScaleY};e.each(function(Z){var H=Z[i],N=Z[a],j=H._id.charAt(0)==="x",re=H.range;c===0&&re&&re[0]>re[1]!==j&&(s=-1);var oe=0,_e=j?r.width:r.height;if(r.hovermode==="x"||r.hovermode==="y"){var Me=Ule(Z,t),ke=Z.anchor,me=ke==="end"?-1:1,ie,Se;if(ke==="middle")ie=Z.crossPos+(j?b(Me.y-Z.by/2):x(Z.bx/2+Z.tx2width/2)),Se=ie+(j?b(Z.by):x(Z.bx));else if(j)ie=Z.crossPos+b(Qc+Me.y)-b(Z.by/2-Qc),Se=ie+b(Z.by);else{var Le=x(me*Qc+Me.x),Ae=Le+x(me*Z.bx);ie=Z.crossPos+Math.min(Le,Ae),Se=Z.crossPos+Math.max(Le,Ae)}j?d!==void 0&&v!==void 0&&Math.min(Se,v)-Math.max(ie,d)>1&&(N.side==="left"?(oe=N._mainLinePosition,_e=r.width):_e=N._mainLinePosition):f!==void 0&&h!==void 0&&Math.min(Se,h)-Math.max(ie,f)>1&&(N.side==="top"?(oe=N._mainLinePosition,_e=r.height):_e=N._mainLinePosition)}u[c++]=[{datum:Z,traceIndex:Z.trace.index,dp:0,pos:Z.pos,posref:Z.posref,size:Z.by*(j?Nlt:1)/2,pmin:oe,pmax:_e}]}),u.sort(function(Z,H){return Z[0].posref-H[0].posref||s*(H[0].traceIndex-Z[0].traceIndex)});var p,C,E,A,L,_,k;function M(Z){var H=Z[0],N=Z[Z.length-1];if(C=H.pmin-H.pos-H.dp+H.size,E=N.pos+N.dp+N.size-H.pmax,C>.01){for(L=Z.length-1;L>=0;L--)Z[L].dp+=C;p=!1}if(!(E<.01)){if(C<-.01){for(L=Z.length-1;L>=0;L--)Z[L].dp-=E;p=!1}if(p){var j=0;for(A=0;A<Z.length;A++)_=Z[A],_.pos+_.dp+_.size>H.pmax&&j++;for(A=Z.length-1;A>=0&&!(j<=0);A--)_=Z[A],_.pos>H.pmax-1&&(_.del=!0,j--);for(A=0;A<Z.length&&!(j<=0);A++)if(_=Z[A],_.pos<H.pmin+1)for(_.del=!0,j--,E=_.size*2,L=Z.length-1;L>=0;L--)Z[L].dp-=E;for(A=Z.length-1;A>=0&&!(j<=0);A--)_=Z[A],_.pos+_.dp+_.size>H.pmax&&(_.del=!0,j--)}}}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],z=P[0];if(C=T.pos+T.dp+T.size-z.pos-z.dp+z.size,C>.01){for(L=P.length-1;L>=0;L--)P[L].dp+=C;for(g.push.apply(g,P),u.splice(A+1,1),k=0,L=g.length-1;L>=0;L--)k+=g[L].dp;for(E=k/g.length,L=g.length-1;L>=0;L--)g[L].dp-=E;p=!1}else A++}u.forEach(M)}for(A=u.length-1;A>=0;A--){var O=u[A];for(L=O.length-1;L>=0;L--){var V=O[L],G=V.datum;G.offset=V.dp,G.del=V.del}}}function Ule(e,t){var r=0,n=e.offset;return t&&(n*=-Vlt,r=e.offset*Ult),{x:r,y:n}}function Xlt(e){var t={start:1,end:-1,middle:0}[e.anchor],r=t*(Qc+ll),n=r+t*(e.txwidth+ll),i=e.anchor==="middle";return i&&(r-=e.tx2width/2,n+=e.txwidth/2+ll),{alignShift:t,textShiftX:r,text2ShiftX:n}}function Vle(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=Xlt(o),h=Ule(o,t),d=h.x,v=h.y,x=u==="middle",b="hoverlabel"in o.trace?o.trace.hoverlabel.showarrow:!0,p;x?p="M-"+i(o.bx/2+o.tx2width/2)+","+a(v-o.by/2)+"h"+i(o.bx)+"v"+a(o.by)+"h-"+i(o.bx)+"Z":b?p="M0,0L"+i(c*Qc+d)+","+a(Qc+v)+"v"+a(o.by/2-Qc)+"h"+i(c*o.bx)+"v-"+a(o.by)+"H"+i(c*Qc+d)+"V"+a(v-Qc)+"Z":p="M"+i(c*Qc+d)+","+a(v-o.by/2)+"h"+i(c*o.bx)+"v"+a(o.by)+"h"+i(-c*o.bx)+"Z",s.select("path").attr("d",p);var C=d+f.textShiftX,E=v+o.ty0-o.by/2+ll,A=o.textAlign||"auto";A!=="auto"&&(A==="left"&&u!=="start"?(l.attr("text-anchor","start"),C=x?-o.bx/2-o.tx2width/2+ll:-o.bx-ll):A==="right"&&u!=="end"&&(l.attr("text-anchor","end"),C=x?o.bx/2-o.tx2width/2-ll:o.bx+ll)),l.call(A0.positionText,i(C),a(E)),o.tx2width&&(s.select("text.name").call(A0.positionText,i(f.text2ShiftX+f.alignShift*ll+d),a(v+o.ty0-o.by/2+ll)),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 Zlt(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=Ff.castOption(i,r,h);return o(v)?v:Ff.extractOption({},n,"",d)}:function(h,d){return Ff.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=Ff.constrain(e.x0,0,e.xa._length),e.x1=Ff.constrain(e.x1,0,e.xa._length),e.y0=Ff.constrain(e.y0,0,e.ya._length),e.y1=Ff.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 Dle(e,t,r){var n=r.container,i=r.fullLayout,a=i._size,o=r.event,s=!!t.hLinePoint,l=!!t.vLinePoint,u,c;if(n.selectAll(".spikeline").remove(),!!(l||s)){var f=vd.combine(i.plot_bgcolor,i.paper_bgcolor);if(s){var h=t.hLinePoint,d,v;u=h&&h.xa,c=h&&h.ya;var x=c.spikesnap;x==="cursor"?(d=o.pointerX,v=o.pointerY):(d=u._offset+h.x,v=c._offset+h.y);var b=Lle.readability(h.color,f)<1.5?vd.contrast(f):h.color,p=c.spikemode,C=c.spikethickness,E=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 k=c._counterDomainMin,M=c._counterDomainMax;c.anchor==="free"&&(k=Math.min(k,c.position),M=Math.max(M,c.position)),L=a.l+k*a.w,_=a.l+M*a.w}n.insert("line",":first-child").attr({x1:L,x2:_,y1:v,y2:v,"stroke-width":C,stroke:E,"stroke-dasharray":bm.dashStyle(c.spikedash,C)}).classed("spikeline",!0).classed("crisp",!0),n.insert("line",":first-child").attr({x1:L,x2:_,y1:v,y2:v,"stroke-width":C+2,stroke:f}).classed("spikeline",!0).classed("crisp",!0)}p.indexOf("marker")!==-1&&n.insert("circle",":first-child").attr({cx:A+(c.side!=="right"?C:-C),cy:v,r:C,fill:E}).classed("spikeline",!0)}if(l){var g=t.vLinePoint,P,T;u=g&&g.xa,c=g&&g.ya;var z=u.spikesnap;z==="cursor"?(P=o.pointerX,T=o.pointerY):(P=u._offset+g.x,T=c._offset+g.y);var O=Lle.readability(g.color,f)<1.5?vd.contrast(f):g.color,V=u.spikemode,G=u.spikethickness,Z=u.spikecolor||O,H=wm.getPxPosition(e,u),N,j;if(V.indexOf("toaxis")!==-1||V.indexOf("across")!==-1){if(V.indexOf("toaxis")!==-1&&(N=H,j=T),V.indexOf("across")!==-1){var re=u._counterDomainMin,oe=u._counterDomainMax;u.anchor==="free"&&(re=Math.min(re,u.position),oe=Math.max(oe,u.position)),N=a.t+(1-oe)*a.h,j=a.t+(1-re)*a.h}n.insert("line",":first-child").attr({x1:P,x2:P,y1:N,y2:j,"stroke-width":G,stroke:Z,"stroke-dasharray":bm.dashStyle(u.spikedash,G)}).classed("spikeline",!0).classed("crisp",!0),n.insert("line",":first-child").attr({x1:P,x2:P,y1:N,y2:j,"stroke-width":G+2,stroke:f}).classed("spikeline",!0).classed("crisp",!0)}V.indexOf("marker")!==-1&&n.insert("circle",":first-child").attr({cx:P,cy:H-(u.side!=="top"?G:-G),r:G,fill:Z}).classed("spikeline",!0)}}}function Ylt(e,t,r){if(!r||r.length!==e._hoverdata.length)return!0;for(var n=r.length-1;n>=0;n--){var i=r[n],a=e._hoverdata[n];if(i.curveNumber!==a.curveNumber||String(i.pointNumber)!==String(a.pointNumber)||String(i.pointNumbers)!==String(a.pointNumbers)||i.binNumber!==a.binNumber)return!0}return!1}function Fle(e,t){return!t||t.vLinePoint!==e._spikepoints.vLinePoint||t.hLinePoint!==e._spikepoints.hLinePoint}function zle(e,t){return A0.plainText(e||"",{len:t,allowedTags:["br","sub","sup","b","i","em","s","u"]})}function Klt(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 Ole(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 Gle(e){return e.offsetTop+e.clientTop}function Hle(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=Ff.apply3DTransform(r._invTransform)(i,a),u=Ff.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 cM=ye((dnr,jle)=>{"use strict";var Jlt=Dr(),$lt=Ca(),Qlt=rp().isUnifiedHover;jle.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&&Qlt(r.hovermode)&&(i.font||(i.font={}),o("size"),o("family"),o("color"),o("weight"),o("style"),o("variant"),a?(i.bgcolor||(i.bgcolor=$lt.combine(r.legend.bgcolor,r.paper_bgcolor)),i.bordercolor||(i.bordercolor=r.legend.bordercolor)):i.bgcolor||(i.bgcolor=r.paper_bgcolor)),n("hoverlabel.bgcolor",i.bgcolor),n("hoverlabel.bordercolor",i.bordercolor),n("hoverlabel.namelength",i.namelength),n("hoverlabel.showarrow",i.showarrow),Jlt.coerceFont(n,"hoverlabel.font",i.font),n("hoverlabel.align",i.align)}});var Xle=ye((vnr,Wle)=>{"use strict";var eut=Dr(),tut=cM(),rut=N1();Wle.exports=function(t,r){function n(i,a){return eut.coerce(t,r,rut,i,a)}tut(t,r,n)}});var Kle=ye((pnr,Yle)=>{"use strict";var Zle=Dr(),iut=i3(),nut=cM();Yle.exports=function(t,r,n,i){function a(s,l){return Zle.coerce(t,r,iut,s,l)}var o=Zle.extendFlat({},i.hoverlabel);r.hovertemplate&&(o.namelength=-1),nut(t,r,a,o)}});var UB=ye((gnr,Jle)=>{"use strict";var aut=Dr(),out=N1();Jle.exports=function(t,r){function n(i,a){return r[i]!==void 0?r[i]:aut.coerce(t,r,out,i,a)}return n("clickmode"),n("hoversubplots"),n("hovermode")}});var eue=ye((mnr,Qle)=>{"use strict";var $le=Dr(),sut=N1(),lut=UB(),uut=cM();Qle.exports=function(t,r){function n(c,f){return $le.coerce(t,r,sut,c,f)}var i=lut(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"),uut(t,r,n),$le.coerceFont(n,"hoverlabel.grouptitlefont",r.hoverlabel.font)}});var iue=ye((ynr,rue)=>{"use strict";var VB=Dr(),tue=qa();rue.exports=function(t){var r=t.calcdata,n=t._fullLayout;function i(u){return function(c){return VB.coerceHoverinfo({hoverinfo:c},{_module:u._module},n)}}for(var a=0;a<r.length;a++){var o=r[a],s=o[0].trace;if(!tue.traceIs(s,"pie-like")){var l=tue.traceIs(s,"2dMap")?cut:VB.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"),l(s.hoverlabel.showarrow,o,"htsa"))}}};function cut(e,t,r,n){n=n||VB.identity,Array.isArray(e)&&(t[0][r]=n(e))}});var aue=ye((_nr,nue)=>{"use strict";var fut=qa(),hut=NB().hover;nue.exports=function(t,r,n){var i=fut.getComponentMethod("annotations","onClick")(t,t._hoverdata);n!==void 0&&hut(t,r,n,!0);function a(){t.emit("plotly_click",{points:t._hoverdata,event:r})}t._hoverdata&&r&&r.target&&(i&&i.then?i.then(a):a(),r.stopImmediatePropagation&&r.stopImmediatePropagation())}});var vf=ye((xnr,lue)=>{"use strict";var dut=Oa(),GL=Dr(),vut=gv(),fM=rp(),oue=N1(),sue=NB();lue.exports={moduleType:"component",name:"fx",constants:RS(),schema:{layout:oue},attributes:i3(),layoutAttributes:oue,supplyLayoutGlobalDefaults:Xle(),supplyDefaults:Kle(),supplyLayoutDefaults:eue(),calc:iue(),getDistanceFunction:fM.getDistanceFunction,getClosest:fM.getClosest,inbox:fM.inbox,quadrature:fM.quadrature,appendArrayPointValue:fM.appendArrayPointValue,castHoverOption:gut,castHoverinfo:mut,hover:sue.hover,unhover:vut.unhover,loneHover:sue.loneHover,loneUnhover:put,click:aue()};function put(e){var t=GL.isD3Selection(e)?e:dut.select(e);t.selectAll("g.hovertext").remove(),t.selectAll(".spikeline").remove()}function gut(e,t,r){return GL.castOption(e,t,"hoverlabel."+r)}function mut(e,t,r){function n(i){return GL.coerceHoverinfo({hoverinfo:i},{_module:e._module},t)}return GL.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 hM=ye((wnr,uue)=>{"use strict";uue.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 HL=ye((Tnr,cue)=>{"use strict";cue.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 WL=ye((Anr,fue)=>{"use strict";var jL=32;fue.exports={CIRCLE_SIDES:jL,i000:0,i090:jL/4,i180:jL/2,i270:jL/4*3,cos45:Math.cos(Math.PI/4),sin45:Math.sin(Math.PI/4),SQRT2:Math.sqrt(2)}});var XL=ye((Snr,due)=>{"use strict";var yut=Dr().strTranslate;function hue(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 _ut(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 xut(e){var t=e._id.charAt(0)==="y"?1:0;return function(r){return hue(e,r[t])}}function but(e){return yut(e.xaxis._offset,e.yaxis._offset)}due.exports={p2r:hue,r2p:_ut,axValue:xut,getTransform:but}});var c_=ye(Ey=>{"use strict";var wut=$S(),gue=WL(),V3=gue.CIRCLE_SIDES,GB=gue.SQRT2,mue=XL(),vue=mue.p2r,pue=mue.r2p,Tut=[0,3,4,5,6,1,2],Aut=[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=Aut[l]:o==="C"&&(u=Tut[l]),r+=e[n][a][u],l>0&&l<s-1&&(r+=",")}}return r};Ey.readPaths=function(e,t,r,n){var i=wut(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,C,E,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],C=+i[v][2],u=+i[v][3],c=+i[v][4],x.push([L,u,c,b,C]);break;case"C":b=+i[v][1],C=+i[v][2],p=+i[v][3],E=+i[v][4],u=+i[v][5],c=+i[v][6],x.push([L,u,c,b,C,p,E]);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],k=+i[v][2];+i[v][4]||(_=-_,k=-k);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+k*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,z=t._fullLayout._size,O=r&&r.xsizemode==="pixel",V=r&&r.ysizemode==="pixel",G=n===!1,Z=0;Z<x.length;Z++){for(l=0;l+2<7;l+=2){var H=x[Z][l+1],N=x[Z][l+2];H===void 0||N===void 0||(u=H,c=N,r&&(r.xaxis&&r.xaxis.p2r?(G&&(H-=r.xaxis._offset),O?H=pue(r.xaxis,r.xanchor)+H:H=vue(r.xaxis,H)):(G&&(H-=z.l),T?H=T.x[0]+H/z.w:H=H/z.w),r.yaxis&&r.yaxis.p2r?(G&&(N-=r.yaxis._offset),V?N=pue(r.yaxis,r.yanchor)-N:N=vue(r.yaxis,N)):(G&&(N-=z.t),T?N=T.y[1]-N/z.h:N=1-N/z.h)),x[Z][l+1]=H,x[Z][l+2]=N)}a[o].push(x[Z].slice())}}return a};function dM(e,t){return Math.abs(e-t)<=1e-6}function ZL(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(!dM(n,i))return!1;var a=e[0][r]-e[3][r],o=e[1][r]-e[2][r];if(!dM(a,o))return!1}return!dM(e[0][1],e[1][1])&&!dM(e[0][1],e[3][1])?!1:!!(ZL(e[0],e[1])*ZL(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(!dM(ZL(e[r],e[a]),ZL(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/GB),s||(s=o=o/GB);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=GB;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 JL=ye((Enr,Mue)=>{"use strict";var yue=hf(),Tue=Sg(),Sut=Tue.drawMode,Mut=Tue.openMode,G3=WL(),_ue=G3.i000,xue=G3.i090,bue=G3.i180,wue=G3.i270,Eut=G3.cos45,Cut=G3.sin45,Aue=XL(),YL=Aue.p2r,f_=Aue.r2p,kut=e_(),Lut=kut.clearOutline,KL=c_(),Put=KL.readPaths,Iut=KL.writePaths,Rut=KL.ellipseOver,Dut=KL.fixDatesForPaths;function Fut(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(!Sut(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=Sue(e,t,a);Lut(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":var b=yue.getFromId(n,v.xref);v.xref.charAt(0)==="x"&&b.type.includes("category")?(f("x0",x.x0-(v.x0shift||0)),f("x1",x.x1-(v.x1shift||0))):(f("x0",x.x0),f("x1",x.x1));var p=yue.getFromId(n,v.yref);v.yref.charAt(0)==="y"&&p.type.includes("category")?(f("y0",x.y0-(v.y0shift||0)),f("y1",x.y1-(v.y1shift||0))):(f("y0",x.y0),f("y1",x.y1));break;case"path":f("path",x.path);break}}}return i===void 0?(h.push(u),h):c?c.getUpdateObj():{}}}}function Sue(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=Mut(r),v=Put(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[_ue][1],C=b[xue][1],E=b[bue][1],A=b[wue][1],L=b[_ue][2],_=b[xue][2],k=b[bue][2],M=b[wue][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),C=f_(s.xaxis,C),E=f_(s.xaxis,E),A=f_(s.xaxis,A)),P&&(L=f_(s.yaxis,L),_=f_(s.yaxis,_),k=f_(s.yaxis,k),M=f_(s.yaxis,M));var T=(C+A)/2,z=(L+k)/2,O=(A-C+E-p)/2,V=(M-_+k-L)/2,G=Rut({x0:T,y0:z,x1:T+O*Eut,y1:z+V*Cut});g&&(G.x0=YL(s.xaxis,G.x0),G.x1=YL(s.xaxis,G.x1)),P&&(G.y0=YL(s.yaxis,G.y0),G.y1=YL(s.yaxis,G.y1)),x.x0=G.x0,x.y0=G.y0,x.x1=G.x1,x.y1=G.y1}else x.type="path",u&&c&&Dut(v,u,c),x.path=Iut(v),b=null;return x}Mue.exports={newShapes:Fut,createShapeObj:Sue}});var jB=ye((Cnr,Eue)=>{"use strict";var zut=Sg(),Out=zut.selectMode,qut=e_(),But=qut.clearOutline,HB=c_(),Nut=HB.readPaths,Uut=HB.writePaths,Vut=HB.fixDatesForPaths;Eue.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(!Out(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=Nut(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&&Vut(v,l,u),x.path=Uut(v),b=null),But(a);for(var p=r.editHelpers,C=(p||{}).modifyItem,E=[],A=0;A<h.length;A++){var L=a._fullLayout.selections[A];if(!L){E[A]=L;continue}if(E[A]=L._input,c!==void 0&&A===a._fullLayout._activeSelectionIndex){var _=x;switch(L.type){case"rect":C("x0",_.x0),C("x1",_.x1),C("y0",_.y0),C("y1",_.y1);break;case"path":C("path",_.path);break}}}return c===void 0?(E.push(x),E):p?p.getUpdateObj():{}}}}});var vM=ye((knr,Cue)=>{"use strict";Cue.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(Dd=>{"use strict";var zb=vM(),kue=Dr(),$L=ho();Dd.rangeToShapePosition=function(e){return e.type==="log"?e.r2d:function(t){return t}};Dd.shapePositionToRange=function(e){return e.type==="log"?e.d2r:function(t){return t}};Dd.decodeDate=function(e){return function(t){return t.replace&&(t=t.replace("_"," ")),e(t)}};Dd.encodeDate=function(e){return function(t){return e(t).replace(" ","_")}};Dd.extractPathCoords=function(e,t,r){var n=[],i=e.match(zb.segmentRE);return i.forEach(function(a){var o=t[a.charAt(0)].drawn;if(o!==void 0){var s=a.substr(1).match(zb.paramRE);if(!(!s||s.length<o)){var l=s[o],u=r?l:kue.cleanNumber(l);n.push(u)}}}),n};Dd.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=Dd.shapePositionToRange(t);o=function(l){var u=pM(t,r);return t._offset+t.r2p(s(l,!0))+u},t.type==="date"&&(o=Dd.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};Dd.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=Dd.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};Dd.roundPositionForSharpStrokeRendering=function(e,t){var r=Math.round(t%2)===1,n=Math.round(e);return r?n+.5:n};Dd.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}};Dd.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}};Dd.getPathString=function(e,t){var r=t.type,n=$L.getRefType(t.xref),i=$L.getRefType(t.yref),a=$L.getFromId(e,t.xref),o=$L.getFromId(e,t.yref),s=e._fullLayout._size,l,u,c,f,h=pM(a,t.x0shift),d=pM(a,t.x1shift),v=pM(o,t.y0shift),x=pM(o,t.y1shift),b,p,C,E;if(a?n==="domain"?u=function(O){return a._offset+a._length*O}:(l=Dd.shapePositionToRange(a),u=function(O){return a._offset+a.r2p(l(O,!0))}):u=function(O){return s.l+s.w*O},o?i==="domain"?f=function(O){return o._offset+o._length*(1-O)}:(c=Dd.shapePositionToRange(o),f=function(O){return o._offset+o.r2p(c(O,!0))}):f=function(O){return s.t+s.h*(1-O)},r==="path")return a&&a.type==="date"&&(u=Dd.decodeDate(u)),o&&o.type==="date"&&(f=Dd.decodeDate(f)),Gut(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);C=L-t.y0+v,E=L-t.y1+x}else C=f(t.y0)+v,E=f(t.y1)+x;if(r==="line")return"M"+b+","+C+"L"+p+","+E;if(r==="rect")return"M"+b+","+C+"H"+p+"V"+E+"H"+b+"Z";var _=(b+p)/2,k=(C+E)/2,M=Math.abs(_-b),g=Math.abs(k-C),P="A"+M+","+g,T=_+M+","+k,z=_+","+(k-g);return"M"+T+P+" 0 1,1 "+z+P+" 0 0,1 "+T+"Z"};function Gut(e,t,r){var n=e.path,i=e.xsizemode,a=e.ysizemode,o=e.xanchor,s=e.yanchor;return n.replace(zb.segmentRE,function(l){var u=0,c=l.charAt(0),f=zb.paramIsX[c],h=zb.paramIsY[c],d=zb.numParams[c],v=l.substr(1).replace(zb.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.*/,""),kue.log("Ignoring extra params in segment "+l)),c+v})}function pM(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 XB=ye((Pnr,Rue)=>{"use strict";var Hut=Dr(),H3=ho(),Lue=iu(),Pue=So(),jut=c_().readPaths,WB=h_(),Wut=WB.getPathString,Iue=A6(),Xut=Kh().FROM_TL;Rue.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=H3.getFromId(t,n.xref),l=H3.getFromId(t,n.yref);for(var u in Iue){var c=Iue[u](n,s,l);c!==void 0&&(o[u]=c)}}a=Hut.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,C,E;if(n.path){var A=Wut(t,n),L=jut(A,t);b=1/0,C=1/0,p=-1/0,E=-1/0;for(var _=0;_<L.length;_++)for(var k=0;k<L[_].length;k++)for(var M=L[_][k],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),C=Math.min(C,T),E=Math.max(E,T)}}else{var z=H3.getFromId(t,n.xref),O=n.x0shift,V=n.x1shift,G=H3.getRefType(n.xref),Z=H3.getFromId(t,n.yref),H=n.y0shift,N=n.y1shift,j=H3.getRefType(n.yref),re=function(Le,Ae){var De=WB.getDataToPixel(t,z,Ae,!1,G);return De(Le)},oe=function(Le,Ae){var De=WB.getDataToPixel(t,Z,Ae,!0,j);return De(Le)};b=re(n.x0,O),p=re(n.x1,V),C=oe(n.y0,H),E=oe(n.y1,N)}var _e=n.label.textangle;_e==="auto"&&(n.type==="line"?_e=Zut(b,C,p,E):_e=0),x.call(function(Le){return Le.call(Pue.font,h).attr({}),Lue.convertToTspans(Le,t),Le});var Me=Pue.bBox(x.node()),ke=Yut(b,C,p,E,n,_e,Me),me=ke.textx,ie=ke.texty,Se=ke.xanchor;x.attr({"text-anchor":{left:"start",center:"middle",right:"end"}[Se],y:ie,x:me,transform:"rotate("+_e+","+me+","+ie+")"}).call(Lue.positionText,me,ie)}};function Zut(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 Yut(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,C,E;if(c==="line"){s==="start"?(b=e,p=t):s==="end"?(b=r,p=n):(b=(e+r)/2,p=(t+n)/2),v==="auto"&&(s==="start"?l==="auto"?r>e?v="left":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];C=-u*h*_,E=u*d*_}else{var k=A[v],M=L[x];C=u*k,E=u*M}b=b+C,p=p+E}else C=u+3,s.indexOf("right")!==-1?(b=Math.max(e,r)-C,v==="auto"&&(v="right")):s.indexOf("left")!==-1?(b=Math.min(e,r)+C,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,E=u,x==="bottom"?p=p-E:x==="top"&&(p=p+E);var g=Xut[x],P=i.label.font.size,T=o.height,z=(T*g-P)*h,O=-(T*g-P)*d;return{textx:b+z,texty:p+O,xanchor:v}}});var tP=ye((Inr,Uue)=>{"use strict";var Kut=Dr(),Jut=Kut.strTranslate,Due=gv(),Oue=Sg(),$ut=Oue.drawMode,que=Oue.selectMode,Bue=qa(),Fue=Ca(),eP=WL(),Qut=eP.i000,ect=eP.i090,tct=eP.i180,rct=eP.i270,ict=e_(),Nue=ict.clearOutlineControllers,YB=c_(),QL=YB.pointsOnRectangle,ZB=YB.pointsOnEllipse,nct=YB.writePaths,act=JL().newShapes,oct=JL().createShapeObj,sct=jB(),lct=XB();Uue.exports=function e(t,r,n,i){i||(i=0);var a=n.gd;function o(){e(t,r,n,i++),(ZB(t[0])||n.hasText)&&s({redrawing:!0})}function s(H){var N={};n.isActiveShape!==void 0&&(n.isActiveShape=!1,N=act(r,n)),n.isActiveSelection!==void 0&&(n.isActiveSelection=!1,N=sct(r,n),a._fullLayout._reselect=!0),Object.keys(N).length&&Bue.call((H||{}).redrawing?"relayout":"_guiRelayout",a,N)}var l=a._fullLayout,u=l._zoomlayer,c=n.dragmode,f=$ut(c),h=que(c);(f||h)&&(a._fullLayout._outlining=!0),Nue(a),r.attr("d",nct(t));var d,v,x,b,p;if(!i&&(n.isActiveShape||n.isActiveSelection)){p=uct([],t);var C=u.append("g").attr("class","outline-controllers");P(C),Z()}if(f&&n.hasText){var E=u.select(".label-temp"),A=oct(r,n,n.dragmode);lct(a,"label-temp",A,E)}function L(H){x=+H.srcElement.getAttribute("data-i"),b=+H.srcElement.getAttribute("data-j"),d[x][b].moveFn=_}function _(H,N){if(t.length){var j=p[x][b][1],re=p[x][b][2],oe=t[x],_e=oe.length;if(QL(oe)){var Me=H,ke=N;if(n.isActiveSelection){var me=zue(oe,b);me[1]===oe[b][1]?ke=0:Me=0}for(var ie=0;ie<_e;ie++)if(ie!==b){var Se=oe[ie];Se[1]===oe[b][1]&&(Se[1]=j+Me),Se[2]===oe[b][2]&&(Se[2]=re+ke)}if(oe[b][1]=j+Me,oe[b][2]=re+ke,!QL(oe))for(var Le=0;Le<_e;Le++)for(var Ae=0;Ae<oe[Le].length;Ae++)oe[Le][Ae]=p[x][Le][Ae]}else oe[b][1]=j+H,oe[b][2]=re+N;o()}}function k(){s()}function M(){if(t.length&&t[x]&&t[x].length){for(var H=[],N=0;N<t[x].length;N++)N!==b&&H.push(t[x][N]);H.length>1&&!(H.length===2&&H[1][0]==="Z")&&(b===0&&(H[0][0]="M"),t[x]=H,o(),s())}}function g(H,N){if(H===2){x=+N.srcElement.getAttribute("data-i"),b=+N.srcElement.getAttribute("data-j");var j=t[x];!QL(j)&&!ZB(j)&&M()}}function P(H){d=[];for(var N=0;N<t.length;N++){var j=t[N],re=QL(j),oe=!re&&ZB(j);d[N]=[];for(var _e=j.length,Me=0;Me<_e;Me++)if(j[Me][0]!=="Z"&&!(oe&&Me!==Qut&&Me!==ect&&Me!==tct&&Me!==rct)){var ke=re&&n.isActiveSelection,me;ke&&(me=zue(j,Me));var ie=j[Me][1],Se=j[Me][2],Le=H.append(ke?"rect":"circle").attr("data-i",N).attr("data-j",Me).style({fill:Fue.background,stroke:Fue.defaultLine,"stroke-width":1,"shape-rendering":"crispEdges"});if(ke){var Ae=me[1]-ie,De=me[2]-Se,Pe=De?5:Math.max(Math.min(25,Math.abs(Ae)-5),5),ge=Ae?5:Math.max(Math.min(25,Math.abs(De)-5),5);Le.classed(De?"cursor-ew-resize":"cursor-ns-resize",!0).attr("width",Pe).attr("height",ge).attr("x",ie-Pe/2).attr("y",Se-ge/2).attr("transform",Jut(Ae/2,De/2))}else Le.classed("cursor-grab",!0).attr("r",5).attr("cx",ie).attr("cy",Se);d[N][Me]={element:Le.node(),gd:a,prepFn:L,doneFn:k,clickFn:g},Due.init(d[N][Me])}}}function T(H,N){if(t.length)for(var j=0;j<t.length;j++)for(var re=0;re<t[j].length;re++)for(var oe=0;oe+2<t[j][re].length;oe+=2)t[j][re][oe+1]=p[j][re][oe+1]+H,t[j][re][oe+2]=p[j][re][oe+2]+N}function z(H,N){T(H,N),o()}function O(H){x=+H.srcElement.getAttribute("data-i"),x||(x=0),v[x].moveFn=z}function V(){s()}function G(H){H===2&&cct(a)}function Z(){if(v=[],!!t.length){var H=0;v[H]={element:r[0][0],gd:a,prepFn:O,doneFn:V,clickFn:G},Due.init(v[H])}}};function uct(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 zue(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 cct(e){if(que(e._fullLayout.dragmode)){Nue(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},Bue.call("_guiRelayout",e,{selections:n})}}}});var aP=ye((Rnr,Jue)=>{"use strict";var fct=Oa(),Xue=qa(),Vue=Dr(),j3=ho(),hct=c_().readPaths,dct=tP(),iP=XB(),Zue=e_().clearOutlineControllers,KB=Ca(),$B=So(),vct=pl().arrayEditor,Gue=gv(),Hue=Tg(),Ob=vM(),Sp=h_(),JB=Sp.getPathString;Jue.exports={draw:QB,drawOne:Yue,eraseActiveShape:mct,drawLabel:iP};function QB(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&&Yue(e,i)}function rP(e){return!!e._fullLayout._outlining}function nP(e){return!e._context.edits.shapePosition}function Yue(e,t){e._fullLayout._paperdiv.selectAll('.shapelayer [data-index="'+t+'"]').remove();var r=Sp.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=JB(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=nP(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}),C=p.append("path").attr(u).style("opacity",c).call(KB.stroke,h).call(KB.fill,f).call($B.dashLine,v,d);Kue(p,e,n),iP(e,t,n,p);var E;if((b||e._context.edits.shapePosition)&&(E=vct(e.layout,"shapes",n)),b){C.style({cursor:"move"});var A={element:C.node(),plotinfo:i,gd:e,editHelpers:E,hasText:n.label.text||n.label.texttemplate,isActiveShape:!0},L=hct(l,e);dct(L,C,A)}else e._context.edits.shapePosition?pct(e,C,n,t,s,E):n.editable===!0&&C.style("pointer-events",x||KB.opacity(f)*c<=.5?"stroke":"all");C.node().addEventListener("click",function(){return gct(e,C)})}}function Kue(e,t,r){var n=(r.xref+r.yref).replace(/paper/g,"").replace(/[xyz][1-9]* *domain/g,"");$B.setClipUrl(e,n?"clip"+t._fullLayout._uid+n:null,t)}function pct(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,C,E,A,L,_,k,M,g,P,T,z=fct.select(t.node().parentNode),O=j3.getFromId(e,r.xref),V=j3.getRefType(r.xref),G=j3.getFromId(e,r.yref),Z=j3.getRefType(r.yref),H=r.x0shift,N=r.x1shift,j=r.y0shift,re=r.y1shift,oe=function(st,lt){var Gt=Sp.getDataToPixel(e,O,lt,!1,V);return Gt(st)},_e=function(st,lt){var Gt=Sp.getDataToPixel(e,G,lt,!0,Z);return Gt(st)},Me=Sp.getPixelToData(e,O,!1,V),ke=Sp.getPixelToData(e,G,!0,Z),me=Le(),ie={element:me.node(),gd:e,prepFn:Pe,doneFn:ge,clickFn:Fe},Se;Gue.init(ie),me.node().onmousemove=De;function Le(){return c?Ae():t}function Ae(){var st=10,lt=Math.max(r.line.width,st),Gt=i.append("g").attr("data-index",n).attr("drag-helper",!0);Gt.append("path").attr("d",t.attr("d")).style({cursor:"move","stroke-width":lt,"stroke-opacity":"0"});var Nt={"fill-opacity":"0"},$t=Math.max(lt/2,st);return Gt.append("circle").attr({"data-line-point":"start-point",cx:l?oe(r.xanchor)+r.x0:oe(r.x0,H),cy:u?_e(r.yanchor)-r.y0:_e(r.y0,j),r:$t}).style(Nt).classed("cursor-grab",!0),Gt.append("circle").attr({"data-line-point":"end-point",cx:l?oe(r.xanchor)+r.x1:oe(r.x1,N),cy:u?_e(r.yanchor)-r.y1:_e(r.y1,re),r:$t}).style(Nt).classed("cursor-grab",!0),Gt}function De(st){if(rP(e)){Se=null;return}if(c)st.target.tagName==="path"?Se="move":Se=st.target.attributes["data-line-point"].value==="start-point"?"resize-over-start-point":"resize-over-end-point";else{var lt=ie.element.getBoundingClientRect(),Gt=lt.right-lt.left,Nt=lt.bottom-lt.top,$t=st.clientX-lt.left,sr=st.clientY-lt.top,wr=!f&&Gt>o&&Nt>s&&!st.shiftKey?Gue.getCursor($t/Gt,1-sr/Nt):"move";Hue(t,wr),Se=wr.split("-")[0]}}function Pe(st){rP(e)||(l&&(p=oe(r.xanchor)),u&&(C=_e(r.yanchor)),r.type==="path"?T=r.path:(d=l?r.x0:oe(r.x0),v=u?r.y0:_e(r.y0),x=l?r.x1:oe(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?(E=v,k="y0",A=b,M="y1"):(E=b,k="y1",A=v,M="y0"),De(st),ct(i,r),Wt(t,r,e),ie.moveFn=Se==="move"?ce:Ze,ie.altKey=st.altKey)}function ge(){rP(e)||(Hue(t),pt(i),Kue(t,e,r),Xue.call("_guiRelayout",e,a.getUpdateObj()))}function Fe(){rP(e)||pt(i)}function ce(st,lt){if(r.type==="path"){var Gt=function(sr){return sr},Nt=Gt,$t=Gt;l?h("xanchor",r.xanchor=Me(p+st)):(Nt=function(wr){return Me(oe(wr)+st)},O&&O.type==="date"&&(Nt=Sp.encodeDate(Nt))),u?h("yanchor",r.yanchor=ke(C+lt)):($t=function(wr){return ke(_e(wr)+lt)},G&&G.type==="date"&&($t=Sp.encodeDate($t))),h("path",r.path=jue(T,Nt,$t))}else l?h("xanchor",r.xanchor=Me(p+st)):(h("x0",r.x0=Me(d+st)),h("x1",r.x1=Me(x+st))),u?h("yanchor",r.yanchor=ke(C+lt)):(h("y0",r.y0=ke(v+lt)),h("y1",r.y1=ke(b+lt)));t.attr("d",JB(e,r)),ct(i,r),iP(e,n,r,z)}function Ze(st,lt){if(f){var Gt=function(Rr){return Rr},Nt=Gt,$t=Gt;l?h("xanchor",r.xanchor=Me(p+st)):(Nt=function(ei){return Me(oe(ei)+st)},O&&O.type==="date"&&(Nt=Sp.encodeDate(Nt))),u?h("yanchor",r.yanchor=ke(C+lt)):($t=function(ei){return ke(_e(ei)+lt)},G&&G.type==="date"&&($t=Sp.encodeDate($t))),h("path",r.path=jue(T,Nt,$t))}else if(c){if(Se==="resize-over-start-point"){var sr=d+st,wr=u?v-lt:v+lt;h("x0",r.x0=l?sr:Me(sr)),h("y0",r.y0=u?wr:ke(wr))}else if(Se==="resize-over-end-point"){var ur=x+st,Qe=u?b-lt:b+lt;h("x1",r.x1=l?ur:Me(ur)),h("y1",r.y1=u?Qe:ke(Qe))}}else{var Et=function(Rr){return Se.indexOf(Rr)!==-1},er=Et("n"),Ut=Et("s"),Ft=Et("w"),bt=Et("e"),yt=er?E+lt:E,Yt=Ut?A+lt:A,lr=Ft?L+st:L,Tr=bt?_+st:_;u&&(er&&(yt=E-lt),Ut&&(Yt=A-lt)),(!u&&Yt-yt>s||u&&yt-Yt>s)&&(h(k,r[k]=u?yt:ke(yt)),h(M,r[M]=u?Yt:ke(Yt))),Tr-lr>o&&(h(g,r[g]=l?lr:Me(lr)),h(P,r[P]=l?Tr:Me(Tr)))}t.attr("d",JB(e,r)),ct(i,r),iP(e,n,r,z)}function ct(st,lt){(l||u)&&Gt();function Gt(){var Nt=lt.type!=="path",$t=st.selectAll(".visual-cue").data([0]),sr=1;$t.enter().append("path").attr({fill:"#fff","fill-rule":"evenodd",stroke:"#000","stroke-width":sr}).classed("visual-cue",!0);var wr=oe(l?lt.xanchor:Vue.midRange(Nt?[lt.x0,lt.x1]:Sp.extractPathCoords(lt.path,Ob.paramIsX))),ur=_e(u?lt.yanchor:Vue.midRange(Nt?[lt.y0,lt.y1]:Sp.extractPathCoords(lt.path,Ob.paramIsY)));if(wr=Sp.roundPositionForSharpStrokeRendering(wr,sr),ur=Sp.roundPositionForSharpStrokeRendering(ur,sr),l&&u){var Qe="M"+(wr-1-sr)+","+(ur-1-sr)+"h-8v2h8 v8h2v-8 h8v-2h-8 v-8h-2 Z";$t.attr("d",Qe)}else if(l){var Et="M"+(wr-1-sr)+","+(ur-9-sr)+"v18 h2 v-18 Z";$t.attr("d",Et)}else{var er="M"+(wr-9-sr)+","+(ur-1-sr)+"h18 v2 h-18 Z";$t.attr("d",er)}}}function pt(st){st.selectAll(".visual-cue").remove()}function Wt(st,lt,Gt){var Nt=lt.xref,$t=lt.yref,sr=j3.getFromId(Gt,Nt),wr=j3.getFromId(Gt,$t),ur="";Nt!=="paper"&&!sr.autorange&&(ur+=Nt),$t!=="paper"&&!wr.autorange&&(ur+=$t),$B.setClipUrl(st,ur?"clip"+Gt._fullLayout._uid+ur:null,Gt)}}function jue(e,t,r){return e.replace(Ob.segmentRE,function(n){var i=0,a=n.charAt(0),o=Ob.paramIsX[a],s=Ob.paramIsY[a],l=Ob.numParams[a],u=n.substr(1).replace(Ob.paramRE,function(c){return i>=l||(o[i]?c=t(c):s[i]&&(c=r(c)),i++),c});return a+u})}function gct(e,t){if(nP(e)){var r=t.node(),n=+r.getAttribute("data-index");if(n>=0){if(n===e._fullLayout._activeShapeIndex){Wue(e);return}e._fullLayout._activeShapeIndex=n,e._fullLayout._deactivateShape=Wue,QB(e)}}}function Wue(e){if(nP(e)){var t=e._fullLayout._activeShapeIndex;t>=0&&(Zue(e),delete e._fullLayout._activeShapeIndex,QB(e))}}function mct(e){if(nP(e)){Zue(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,Xue.call("_guiRelayout",e,{shapes:n})}}}});var rN=ye((Dnr,oce)=>{"use strict";var S0=qa(),$ue=Mc(),Que=hf(),Ll=HL(),yct=aP().eraseActiveShape,oP=Dr(),rl=oP._,Pl=oce.exports={};Pl.toImage={name:"toImage",title:function(e){var t=e._context.toImageButtonOptions||{},r=t.format||"png";return r==="png"?rl(e,"Download plot as a PNG"):rl(e,"Download plot")},icon:Ll.camera,click:function(e){var t=e._context.toImageButtonOptions,r={format:t.format||"png"};oP.notifier(rl(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){oP.notifier(rl(e,"Snapshot succeeded")+" - "+n,"long")}).catch(function(){oP.notifier(rl(e,"Sorry, there was a problem downloading your snapshot!"),"long")})}};Pl.sendDataToCloud={name:"sendDataToCloud",title:function(e){return rl(e,"Edit in Chart Studio")},icon:Ll.disk,click:function(e){$ue.sendDataToCloud(e)}};Pl.editInChartStudio={name:"editInChartStudio",title:function(e){return rl(e,"Edit in Chart Studio")},icon:Ll.pencil,click:function(e){$ue.sendDataToCloud(e)}};Pl.zoom2d={name:"zoom2d",_cat:"zoom",title:function(e){return rl(e,"Zoom")},attr:"dragmode",val:"zoom",icon:Ll.zoombox,click:qv};Pl.pan2d={name:"pan2d",_cat:"pan",title:function(e){return rl(e,"Pan")},attr:"dragmode",val:"pan",icon:Ll.pan,click:qv};Pl.select2d={name:"select2d",_cat:"select",title:function(e){return rl(e,"Box Select")},attr:"dragmode",val:"select",icon:Ll.selectbox,click:qv};Pl.lasso2d={name:"lasso2d",_cat:"lasso",title:function(e){return rl(e,"Lasso Select")},attr:"dragmode",val:"lasso",icon:Ll.lasso,click:qv};Pl.drawclosedpath={name:"drawclosedpath",title:function(e){return rl(e,"Draw closed freeform")},attr:"dragmode",val:"drawclosedpath",icon:Ll.drawclosedpath,click:qv};Pl.drawopenpath={name:"drawopenpath",title:function(e){return rl(e,"Draw open freeform")},attr:"dragmode",val:"drawopenpath",icon:Ll.drawopenpath,click:qv};Pl.drawline={name:"drawline",title:function(e){return rl(e,"Draw line")},attr:"dragmode",val:"drawline",icon:Ll.drawline,click:qv};Pl.drawrect={name:"drawrect",title:function(e){return rl(e,"Draw rectangle")},attr:"dragmode",val:"drawrect",icon:Ll.drawrect,click:qv};Pl.drawcircle={name:"drawcircle",title:function(e){return rl(e,"Draw circle")},attr:"dragmode",val:"drawcircle",icon:Ll.drawcircle,click:qv};Pl.eraseshape={name:"eraseshape",title:function(e){return rl(e,"Erase active shape")},icon:Ll.eraseshape,click:yct};Pl.zoomIn2d={name:"zoomIn2d",_cat:"zoomin",title:function(e){return rl(e,"Zoom in")},attr:"zoom",val:"in",icon:Ll.zoom_plus,click:qv};Pl.zoomOut2d={name:"zoomOut2d",_cat:"zoomout",title:function(e){return rl(e,"Zoom out")},attr:"zoom",val:"out",icon:Ll.zoom_minus,click:qv};Pl.autoScale2d={name:"autoScale2d",_cat:"autoscale",title:function(e){return rl(e,"Autoscale")},attr:"zoom",val:"auto",icon:Ll.autoscale,click:qv};Pl.resetScale2d={name:"resetScale2d",_cat:"resetscale",title:function(e){return rl(e,"Reset axes")},attr:"zoom",val:"reset",icon:Ll.home,click:qv};Pl.hoverClosestCartesian={name:"hoverClosestCartesian",_cat:"hoverclosest",title:function(e){return rl(e,"Show closest data on hover")},attr:"hovermode",val:"closest",icon:Ll.tooltip_basic,gravity:"ne",click:qv};Pl.hoverCompareCartesian={name:"hoverCompareCartesian",_cat:"hoverCompare",title:function(e){return rl(e,"Compare data on hover")},attr:"hovermode",val:function(e){return e._fullLayout._isHoriz?"y":"x"},icon:Ll.tooltip_compare,gravity:"ne",click:qv};function qv(e,t){var r=t.currentTarget,n=r.getAttribute("data-attr"),i=r.getAttribute("data-val")||!0,a=e._fullLayout,o={},s=Que.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,x;for(c=0;c<s.length;c++)if(u=s[c],x=u.modebardisable==="none"||u.modebardisable.indexOf(i==="auto"||i==="reset"?"autoscale":"zoominout")===-1,x&&!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 b=[u.r2l(u.range[0]),u.r2l(u.range[1])],p=[h*b[0]+d*b[1],h*b[1]+d*b[0]];o[v+".range[0]"]=u.l2r(p[0]),o[v+".range[1]"]=u.l2r(p[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)}Pl.zoom3d={name:"zoom3d",_cat:"zoom",title:function(e){return rl(e,"Zoom")},attr:"scene.dragmode",val:"zoom",icon:Ll.zoombox,click:sP};Pl.pan3d={name:"pan3d",_cat:"pan",title:function(e){return rl(e,"Pan")},attr:"scene.dragmode",val:"pan",icon:Ll.pan,click:sP};Pl.orbitRotation={name:"orbitRotation",title:function(e){return rl(e,"Orbital rotation")},attr:"scene.dragmode",val:"orbit",icon:Ll["3d_rotate"],click:sP};Pl.tableRotation={name:"tableRotation",title:function(e){return rl(e,"Turntable rotation")},attr:"scene.dragmode",val:"turntable",icon:Ll["z-axis"],click:sP};function sP(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)}Pl.resetCameraDefault3d={name:"resetCameraDefault3d",_cat:"resetCameraDefault",title:function(e){return rl(e,"Reset camera to default")},attr:"resetDefault",icon:Ll.home,click:eN};Pl.resetCameraLastSave3d={name:"resetCameraLastSave3d",_cat:"resetCameraLastSave",title:function(e){return rl(e,"Reset camera to last save")},attr:"resetLastSave",icon:Ll.movie,click:eN};function eN(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)}Pl.hoverClosest3d={name:"hoverClosest3d",_cat:"hoverclosest",title:function(e){return rl(e,"Toggle show closest data on hover")},attr:"hovermode",val:null,toggle:!0,icon:Ll.tooltip_basic,gravity:"ne",click:_ct};function ece(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 _ct(e,t){var r=ece(e,t);S0.call("_guiRelayout",e,r)}Pl.zoomInGeo={name:"zoomInGeo",_cat:"zoomin",title:function(e){return rl(e,"Zoom in")},attr:"zoom",val:"in",icon:Ll.zoom_plus,click:tN};Pl.zoomOutGeo={name:"zoomOutGeo",_cat:"zoomout",title:function(e){return rl(e,"Zoom out")},attr:"zoom",val:"out",icon:Ll.zoom_minus,click:tN};Pl.resetGeo={name:"resetGeo",_cat:"reset",title:function(e){return rl(e,"Reset")},attr:"reset",val:null,icon:Ll.autoscale,click:tN};Pl.hoverClosestGeo={name:"hoverClosestGeo",_cat:"hoverclosest",title:function(e){return rl(e,"Toggle show closest data on hover")},attr:"hovermode",val:null,toggle:!0,icon:Ll.tooltip_basic,gravity:"ne",click:rce};function tN(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")}Pl.hoverClosestPie={name:"hoverClosestPie",_cat:"hoverclosest",title:function(e){return rl(e,"Toggle show closest data on hover")},attr:"hovermode",val:"closest",icon:Ll.tooltip_basic,gravity:"ne",click:rce};function tce(e){var t=e._fullLayout;return t.hovermode?!1:t._has("cartesian")?t._isHoriz?"y":"x":"closest"}function rce(e){var t=tce(e);S0.call("_guiRelayout",e,"hovermode",t)}Pl.resetViewSankey={name:"resetSankeyGroup",title:function(e){return rl(e,"Reset view")},icon:Ll.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)}};Pl.toggleHover={name:"toggleHover",title:function(e){return rl(e,"Toggle show closest data on hover")},attr:"hovermode",val:null,toggle:!0,icon:Ll.tooltip_basic,gravity:"ne",click:function(e,t){var r=ece(e,t);r.hovermode=tce(e),S0.call("_guiRelayout",e,r)}};Pl.resetViews={name:"resetViews",title:function(e){return rl(e,"Reset views")},icon:Ll.home,click:function(e,t){var r=t.currentTarget;r.setAttribute("data-attr","zoom"),r.setAttribute("data-val","reset"),qv(e,t),r.setAttribute("data-attr","resetLastSave"),eN(e,t),W3(e,"geo"),W3(e,"mapbox"),W3(e,"map")}};Pl.toggleSpikelines={name:"toggleSpikelines",title:function(e){return rl(e,"Toggle Spike Lines")},icon:Ll.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,xct(e))}};function xct(e){for(var t=e._fullLayout,r=t._cartesianSpikesEnabled==="on",n=Que.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}Pl.resetViewMapbox={name:"resetViewMapbox",_cat:"resetView",title:function(e){return rl(e,"Reset view")},attr:"reset",icon:Ll.home,click:function(e){W3(e,"mapbox")}};Pl.resetViewMap={name:"resetViewMap",_cat:"resetView",title:function(e){return rl(e,"Reset view")},attr:"reset",icon:Ll.home,click:function(e){W3(e,"map")}};Pl.zoomInMapbox={name:"zoomInMapbox",_cat:"zoomin",title:function(e){return rl(e,"Zoom in")},attr:"zoom",val:"in",icon:Ll.zoom_plus,click:ice};Pl.zoomInMap={name:"zoomInMap",_cat:"zoomin",title:function(e){return rl(e,"Zoom in")},attr:"zoom",val:"in",icon:Ll.zoom_plus,click:nce};Pl.zoomOutMapbox={name:"zoomOutMapbox",_cat:"zoomout",title:function(e){return rl(e,"Zoom out")},attr:"zoom",val:"out",icon:Ll.zoom_minus,click:ice};Pl.zoomOutMap={name:"zoomOutMap",_cat:"zoomout",title:function(e){return rl(e,"Zoom out")},attr:"zoom",val:"out",icon:Ll.zoom_minus,click:nce};function ice(e,t){ace(e,t,"mapbox")}function nce(e,t){ace(e,t,"map")}function ace(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 iN=ye((Fnr,cce)=>{"use strict";var sce=rN(),bct=Object.keys(sce),lce=["drawline","drawopenpath","drawclosedpath","drawcircle","drawrect","eraseshape"],uce=["v1hovermode","hoverclosest","hovercompare","togglehover","togglespikelines"].concat(lce),X3=[],wct=function(e){if(uce.indexOf(e._cat||e.name)===-1){var t=e.name,r=(e._cat||e.name).toLowerCase();X3.indexOf(t)===-1&&X3.push(t),X3.indexOf(r)===-1&&X3.push(r)}};bct.forEach(function(e){wct(sce[e])});X3.sort();cce.exports={DRAW_MODES:lce,backButtons:uce,foreButtons:X3}});var nN=ye((Onr,fce)=>{"use strict";var znr=iN();fce.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 dce=ye((qnr,hce)=>{"use strict";var Tct=Dr(),gM=Ca(),Act=pl(),Sct=nN();hce.exports=function(t,r){var n=t.modebar||{},i=Act.newContainer(r,"modebar");function a(s,l){return Tct.coerce(n,i,Sct,s,l)}a("orientation"),a("bgcolor",gM.addOpacity(r.paper_bgcolor,.5));var o=gM.contrast(gM.rgb(r.modebar.bgcolor));a("color",gM.addOpacity(o,.3)),a("activecolor",gM.addOpacity(o,.7)),a("uirevision",r.uirevision),a("add"),a("remove")}});var mce=ye((Bnr,gce)=>{"use strict";var aN=Oa(),Mct=Eo(),lP=Dr(),vce=HL(),Ect=o6().version,Cct=new DOMParser;function pce(e){this.container=e.container,this.element=document.createElement("div"),this.update(e.graphInfo,e.buttons),this.container.appendChild(this.element)}var Tm=pce.prototype;Tm.update=function(e,t){this.graphInfo=e;var r=this.graphInfo._context,n=this.graphInfo._fullLayout,i="modebar-"+n._uid;this.element.setAttribute("id",i),this.element.setAttribute("role","toolbar"),this._uid=i,this.element.className="modebar modebar--custom",r.displayModeBar==="hover"&&(this.element.className+=" modebar--hover ease-bg"),n.modebar.orientation==="v"&&(this.element.className+=" vertical",t=t.reverse());var a=n.modebar,o="#"+i+" .modebar-group";document.querySelectorAll(o).forEach(function(f){f.style.backgroundColor=a.bgcolor});var s=!this.hasButtons(t),l=this.hasLogo!==r.displaylogo,u=this.locale!==r.locale;if(this.locale=r.locale,(s||l||u)&&(this.removeAllButtons(),this.updateButtons(t),r.watermark||r.displaylogo)){var c=this.getLogo();r.watermark&&(c.className=c.className+" watermark"),n.modebar.orientation==="v"?this.element.insertBefore(c,this.element.childNodes[0]):this.element.appendChild(c),this.hasLogo=!0}this.updateActiveButton(),lP.setStyleOnHover("#"+i+" .modebar-btn",".active",".icon path","fill: "+a.activecolor,"fill: "+a.color,this.element)};Tm.updateButtons=function(e){var t=this;this.buttons=e,this.buttonElements=[],this.buttonsNames=[],this.buttons.forEach(function(r){var n=t.createGroup();r.forEach(function(i){var a=i.name;if(!a)throw new Error("must provide button 'name' in button config");if(t.buttonsNames.indexOf(a)!==-1)throw new Error("button name '"+a+"' is taken");t.buttonsNames.push(a);var o=t.createButton(i);t.buttonElements.push(o),n.appendChild(o)}),t.element.appendChild(n)})};Tm.createGroup=function(){var e=document.createElement("div");e.className="modebar-group";var t=this.graphInfo._fullLayout.modebar;return e.style.backgroundColor=t.bgcolor,e};Tm.createButton=function(e){var t=this,r=document.createElement("button");r.setAttribute("type","button"),r.setAttribute("rel","tooltip"),r.className="modebar-btn";var n=e.title;n===void 0?n=e.name:typeof n=="function"&&(n=n(this.graphInfo)),(n||n===0)&&(r.setAttribute("data-title",n),r.setAttribute("aria-label",n)),e.attr!==void 0&&r.setAttribute("data-attr",e.attr);var i=e.val;i!==void 0&&(typeof i=="function"&&(i=i(this.graphInfo)),r.setAttribute("data-val",i));var a=e.click;if(typeof a!="function")throw new Error("must provide button 'click' function in button config");r.addEventListener("click",function(s){e.click(t.graphInfo,s),t.updateActiveButton(s.currentTarget)}),r.setAttribute("data-toggle",e.toggle||!1),e.toggle&&aN.select(r).classed("active",!0);var o=e.icon;return typeof o=="function"?r.appendChild(o()):r.appendChild(this.createIcon(o||vce.question)),r.setAttribute("data-gravity",e.gravity||"n"),r};Tm.createIcon=function(e){var t=Mct(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=Cct.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=aN.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:lP.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 kct(e){return e+" (v"+Ect+")"}Tm.getLogo=function(){var e=this.createGroup(),t=document.createElement("a");return t.href="https://plotly.com/",t.target="_blank",t.setAttribute("data-title",kct(lP._(this.graphInfo,"Produced with Plotly.js"))),t.className="modebar-btn plotlyjsicon modebar-btn--logo",t.appendChild(this.createIcon(vce.newplotlylogo)),e.appendChild(t),e};Tm.removeAllButtons=function(){for(;this.element.firstChild;)this.element.removeChild(this.element.firstChild);this.hasLogo=!1};Tm.destroy=function(){lP.removeElement(this.container.querySelector(".modebar"))};function Lct(e,t){var r=e._fullLayout,n=new pce({graphInfo:e,container:r._modebardiv.node(),buttons:t});return r._privateplot&&aN.select(n.element).append("span").classed("badge-private float--left",!0).text("PRIVATE"),n}gce.exports=Lct});var xce=ye((Nnr,_ce)=>{"use strict";var Pct=hf(),yce=Ru(),oN=qa(),Ict=rp().isUnifiedHover,Rct=mce(),uP=rN(),Dct=iN().DRAW_MODES,Fct=Dr().extendDeep;_ce.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=Uct(a):!n.displayModeBar&&n.watermark?o=[]:o=zct(t),i?i.update(t,o):r._modeBar=Rct(t,o)};function zct(e){var t=e._fullLayout,r=e._fullData,n=e._context;function i(N,j){if(typeof j=="string"){if(j.toLowerCase()===N.toLowerCase())return!0}else{var re=j.name,oe=j._cat||j.name;if(re===N||oe===N.toLowerCase())return!0}return!1}var a=t.modebar.add;typeof a=="string"&&(a=[a]);var o=t.modebar.remove;typeof o=="string"&&(o=[o]);var s=n.modeBarButtonsToAdd.concat(a.filter(function(N){for(var j=0;j<n.modeBarButtonsToRemove.length;j++)if(i(N,n.modeBarButtonsToRemove[j]))return!1;return!0})),l=n.modeBarButtonsToRemove.concat(o.filter(function(N){for(var j=0;j<n.modeBarButtonsToAdd.length;j++)if(i(N,n.modeBarButtonsToAdd[j]))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"),C=t._has("smith"),E=t._has("sankey"),A=Oct(t),L=Ict(t.hovermode),_=[];function k(N){if(N.length){for(var j=[],re=0;re<N.length;re++){for(var oe=N[re],_e=uP[oe],Me=_e.name.toLowerCase(),ke=(_e._cat||_e.name).toLowerCase(),me=!1,ie=0;ie<l.length;ie++){var Se=l[ie].toLowerCase();if(Se===Me||Se===ke){me=!0;break}}me||j.push(uP[oe])}_.push(j)}}var M=["toImage"];n.showEditInChartStudio?M.push("editInChartStudio"):n.showSendToCloud&&M.push("sendDataToCloud"),k(M);var g=[],P=[],T=[],z=[];(u||h||d||v)+f+c+x+b+p+C>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"]:E?(P=["hoverClosestCartesian","hoverCompareCartesian"],T=["resetViewSankey"]):P=["toggleHover"],u&&P.push("toggleSpikelines","hoverClosestCartesian","hoverCompareCartesian"),(Bct(r)||L)&&(P=[]),u&&!A&&(g=["zoomIn2d","zoomOut2d","autoScale2d"],T[0]!=="resetViews"&&(T=["resetScale2d"])),c?z=["zoom3d","pan3d","orbitRotation","tableRotation"]:u&&!A||v?z=["zoom2d","pan2d"]:x||b||f?z=["pan2d"]:p&&(z=["zoom2d"]),qct(r)&&z.push("select2d","lasso2d");var O=[],V=function(N){O.indexOf(N)===-1&&P.indexOf(N)!==-1&&O.push(N)};if(Array.isArray(s)){for(var G=[],Z=0;Z<s.length;Z++){var H=s[Z];typeof H=="string"?(H=H.toLowerCase(),Dct.indexOf(H)!==-1?(t._has("mapbox")||t._has("map")||t._has("cartesian"))&&z.push(H):H==="togglespikelines"?V("toggleSpikelines"):H==="togglehover"?V("toggleHover"):H==="hovercompare"?V("hoverCompareCartesian"):H==="hoverclosest"?(V("hoverClosestCartesian"),V("hoverClosestGeo"),V("hoverClosest3d"),V("hoverClosestPie")):H==="v1hovermode"&&(V("hoverClosestCartesian"),V("hoverCompareCartesian"),V("hoverClosestGeo"),V("hoverClosest3d"),V("hoverClosestPie"))):G.push(H)}s=G}return k(z),k(g.concat(T)),k(O),Nct(_,s)}function Oct(e){for(var t=Pct.list({_fullLayout:e},null,!0),r=0;r<t.length;r++){var n=t[r].modebardisable;if(!t[r].fixedrange&&n!=="autoscale+zoominout"&&n!=="zoominout+autoscale")return!1}return!0}function qct(e){for(var t=!1,r=0;r<e.length&&!t;r++){var n=e[r];!n._module||!n._module.selectPoints||(oN.traceIs(n,"scatter-like")?(yce.hasMarkers(n)||yce.hasText(n))&&(t=!0):oN.traceIs(n,"box-violin")?(n.boxpoints==="all"||n.points==="all")&&(t=!0):t=!0)}return t}function Bct(e){for(var t=0;t<e.length;t++)if(!oN.traceIs(e[t],"noHover"))return!1;return!0}function Nct(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 Uct(e){for(var t=Fct([],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(uP[a]!==void 0)t[r][i]=uP[a];else throw new Error(["*modeBarButtons* configuration options","invalid button name"].join(" "))}return t}});var sN=ye((Unr,bce)=>{"use strict";bce.exports={moduleType:"component",name:"modebar",layoutAttributes:nN(),supplyLayoutDefaults:dce(),manage:xce()}});var lN=ye((Vnr,wce)=>{"use strict";var Vct=Kh().FROM_BL;wce.exports=function(t,r,n){n===void 0&&(n=Vct[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(mM=>{"use strict";var qb=Dr(),uN=wg(),Mg=hf().id2name,Gct=Rd(),Tce=lN(),Hct=ym(),jct=hs().ALMOST_EQUAL,Wct=Kh().FROM_BL;mM.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],Xct(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&&qb.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 C=["constrain","range","autorange","rangemode","rangebreaks","categoryorder","categoryarray"],E=!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;_<C.length;_++){d=C[_],v=null;var k;for(u in l)if(c=Mg(u),f=e[c],h=t[c],d in h){if(!h.matches&&(k=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&&(E=!0),d==="autorange"&&v===null&&E&&(v=!1),v===null&&d in k&&(v=k[d]),v!==null)for(u in l)h=t[Mg(u)],h[d]=d==="range"?v.slice():v,d==="rangebreaks"&&(h._hasDayOfWeekBreaks=A,Hct(h,t))}}};function Xct(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(z,O){return qb.coerce(e,t,Gct,z,O)}d("constrain",a?"domain":"range"),qb.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 C=i[Mg(b)];C.type===v&&p.push(b)}var E=Mce(o,f);if(E){var A=[];for(x=0;x<p.length;x++)b=p[x],E[b]||A.push(b);p=A}var L=p.length,_,k;L&&(e.matches||c.matches)&&(_=qb.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)&&(k=qb.coerce(e,t,{scaleanchor:{valType:"enumerated",values:p.concat([!1])}},"scaleanchor",M)),_){t._matchGroup=cN(s,f,_,1);var g=i[Mg(_)],P=Ace(i,t)/Ace(i,g);h!==(_.charAt(0)==="x")&&(P=(h?"x":"y")+P),cN(o,f,_,P)}else e.matches&&n.indexOf(e.matches)!==-1&&qb.warn("ignored "+t._name+'.matches: "'+e.matches+'" to avoid an infinite loop');if(k){var T=d("scaleratio");T||(T=t.scaleratio=1),cN(o,f,k,T)}else e.scaleanchor&&n.indexOf(e.scaleanchor)!==-1&&qb.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 Ace(e,t){var r=t.domain;return r||(r=e[Mg(t.overlaying)].domain),r[1]-r[0]}function Mce(e,t){for(var r=0;r<e.length;r++)if(e[r][t])return e[r];return null}function cN(e,t,r,n){var i,a,o,s,l,u=Mce(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]=fN(f,fN(n,u[s]));e.splice(l,1);return}if(n!==1)for(a=0;a<c.length;a++){var h=c[a];u[h]=fN(n,u[h])}u[r]=1}function fN(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 Zct(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}mM.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=Zct(n[i],r);var h=Object.keys(o),d=1/0,v=0,x=1/0,b={},p={},C=!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"&&(C=!0);if(!(d>jct*v&&!C)){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")Tce(l,f);else{var E=l._inputDomain,A=(l.domain[1]-l.domain[0])/(E[1]-E[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=E.slice(),Tce(l,f);continue}if(L<1&&(l.range=l._input.range=l._inputRange.slice(),f*=L),l.autorange){var _=l.r2l(l.range[0]),k=l.r2l(l.range[1]),M=(_+k)/2,g=M,P=M,T=Math.abs(k-M),z=M-T*f*1.0001,O=M+T*f*1.0001,V=uN.makePadFn(r,l,0),G=uN.makePadFn(r,l,1);Sce(l,f);var Z=Math.abs(l._m),H=uN.concatExtremes(t,l),N=H.min,j=H.max,re,oe;for(oe=0;oe<N.length;oe++)re=N[oe].val-V(N[oe])/Z,re>z&&re<g&&(g=re);for(oe=0;oe<j.length;oe++)re=j[oe].val+G(j[oe])/Z,re<O&&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=_<k?[g,P]:[P,g]}Sce(l,f)}}}};mM.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};mM.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 Sce(e,t){var r=e._inputDomain,n=Wct[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 xM=ye(pd=>{"use strict";var fP=Oa(),Bv=qa(),Jp=Mc(),M0=Dr(),hN=iu(),dN=hM(),yM=Ca(),Z3=So(),Ece=Mb(),Ice=sN(),_M=ho(),Cy=Kh(),Rce=Bb(),Yct=Rce.enforce,Kct=Rce.clean,Cce=wg().doAutoRange,Dce="start",Jct="middle",Fce="end",$ct=hd().zindexSeparator;pd.layoutStyles=function(e){return M0.syncOrAsync([Jp.doAutoMargin,eft],e)};function Qct(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 eft(e){var t=e._fullLayout,r=t._size,n=r.p,i=_M.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(Z3.setSize,t.width,t.height),e._context.setBackground(e,t.paper_bgcolor),pd.drawMainTitle(e),Ice.manage(e),!t._has("cartesian"))return Jp.previousPromises(e);function f(Pe,ge,Fe){var ce=Pe._lw/2;if(Pe._id.charAt(0)==="x"){if(ge){if(Fe==="top")return ge._offset-n-ce}else return r.t+r.h*(1-(Pe.position||0))+ce%1;return ge._offset+ge._length+n+ce}if(ge){if(Fe==="right")return ge._offset+ge._length+n+ce}else return r.l+r.w*(Pe.position||0)+ce%1;return ge._offset-n-ce}for(a=0;a<i.length;a++){l=i[a];var h=l._anchorAxis;l._linepositions={},l._lw=Z3.crispRound(e,l.linewidth,1),l._mainLinePosition=f(l,h,l.side),l._mainMirrorPosition=l.mirror&&h?f(l,h,Cy.OPPOSITE_SIDE[l.side]):null}var d=[],v=[],x=[],b=yM.opacity(t.paper_bgcolor)===1&&yM.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,C=s.yaxis.domain,E=s.plotgroup;if(Qct(p,C,x)&&o.indexOf($ct)===-1){var A=E.node(),L=s.bg=M0.ensureSingle(E,"rect","bg");A.insertBefore(L.node(),A.childNodes[0]),v.push(o)}else E.select("rect.bg").remove(),x.push([p,C]),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(Pe){t._plots[Pe].bg=fP.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(Z3.setRect,u._offset-n,c._offset-n,u._length+2*n,c._length+2*n).call(yM.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 k=s.clipId="clip"+t._uid+o+"plot",M=M0.ensureSingleById(t._clips,"clipPath",k,function(Pe){Pe.classed("plotclip",!0).append("rect")});s.clipRect=M.select("rect").attr({width:u._length,height:c._length}),Z3.setTranslate(s.plot,u._offset,c._offset);var g,P;s._hasClipOnAxisFalse?(g=null,P=k):(g=k,P=null),Z3.setClipUrl(s.plot,g,e),s.layerClipId=P}var T,z,O,V,G,Z,H,N,j,re,oe,_e,Me;function ke(Pe){return"M"+T+","+Pe+"H"+z}function me(Pe){return"M"+u._offset+","+Pe+"h"+u._length}function ie(Pe){return"M"+Pe+","+N+"V"+H}function Se(Pe){return c._shift!==void 0&&(Pe+=c._shift),"M"+Pe+","+c._offset+"v"+c._length}function Le(Pe,ge,Fe){if(!Pe.showline||o!==Pe._mainSubplot)return"";if(!Pe._anchorAxis)return Fe(Pe._mainLinePosition);var ce=ge(Pe._mainLinePosition);return Pe.mirror&&(ce+=ge(Pe._mainMirrorPosition)),ce}for(o in t._plots){s=t._plots[o],u=s.xaxis,c=s.yaxis;var Ae="M0,0";kce(u,o)&&(G=cP(u,"left",c,i),T=u._offset-(G?n+G:0),Z=cP(u,"right",c,i),z=u._offset+u._length+(Z?n+Z:0),O=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]=[O,V]),Ae=Le(u,ke,me),Me&&u.showline&&(u.mirror==="all"||u.mirror==="allticks")&&(Ae+=ke(O)+ke(V)),s.xlines.style("stroke-width",u._lw+"px").call(yM.stroke,u.showline?u.linecolor:"rgba(0,0,0,0)")),s.xlines.attr("d",Ae);var De="M0,0";kce(c,o)&&(oe=cP(c,"bottom",u,i),H=c._offset+c._length+(oe?n:0),_e=cP(c,"top",u,i),N=c._offset-(_e?n:0),j=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]=[j,re]),De=Le(c,ie,Se),Me&&c.showline&&(c.mirror==="all"||c.mirror==="allticks")&&(De+=ie(j)+ie(re)),s.ylines.style("stroke-width",c._lw+"px").call(yM.stroke,c.showline?c.linecolor:"rgba(0,0,0,0)")),s.ylines.attr("d",De)}return _M.makeClipPaths(e),Jp.previousPromises(e)}function kce(e,t){return(e.ticks||e.showline)&&(t===e._mainSubplot||e.mirror==="all"||e.mirror==="allticks")}function Lce(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=Cy.FROM_BL[t];return r.side===t?n.domain[i]===e.domain[i]:r.mirror&&n.domain[1-i]===e.domain[1-i]}function cP(e,t,r,n){if(Lce(e,t,r))return r._lw;for(var i=0;i<n.length;i++){var a=n[i];if(a._mainAxis===r._mainAxis&&Lce(e,t,a))return a._lw}return 0}pd.drawMainTitle=function(e){var t=e._fullLayout.title,r=e._fullLayout,n=sft(r),i=lft(r),a=oft(r,i),o=aft(r,n);if(Ece.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=fP.selectAll(".gtitle"),l=Z3.bBox(fP.selectAll(".g-gtitle").node()).height,u=ift(e,t,l);if(u>0){nft(e,a,u,l),s.attr({x:o,y:a,"text-anchor":n,dy:Pce(t.yanchor)}).call(hN.positionText,o,a);var c=(t.text.match(hN.BR_TAG_ALL)||[]).length;if(c){var f=Cy.LINE_SPACING*c+Cy.MID_SHIFT;t.y===0&&(f=-f),s.selectAll(".line").each(function(){var b=+this.getAttribute("dy").slice(0,-2)-f+"em";this.setAttribute("dy",b)})}var h=fP.selectAll(".gtitle-subtitle");if(h.node()){var d=s.node().getBBox(),v=d.y+d.height,x=v+Ece.SUBTITLE_PADDING_EM*t.subtitle.font.size;h.attr({x:o,y:x,"text-anchor":n,dy:Pce(t.yanchor)}).call(hN.positionText,o,x)}}}};function tft(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 rft(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 ift(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=rft(a,n,i,e._fullLayout.height,r)+t.pad.t+t.pad.b),s>o?s:0}function nft(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"&&tft(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 aft(e,t){var r=e.title,n=e._size,i=0;switch(t===Dce?i=r.pad.l:t===Fce&&(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 oft(e,t){var r=e.title,n=e._size,i=0;if(t==="0em"||!t?i=-r.pad.b:t===Cy.CAP_SHIFT+"em"&&(i=r.pad.t),r.y==="auto")return n.t/2;switch(r.yref){case"paper":return n.t+n.h-n.h*r.y+i;case"container":default:return e.height-e.height*r.y+i}}function Pce(e){return e==="top"?Cy.CAP_SHIFT+.3+"em":e==="bottom"?"-0.3em":Cy.MID_SHIFT+"em"}function sft(e){var t=e.title,r=Jct;return M0.isRightAnchor(t)?r=Fce:M0.isLeftAnchor(t)&&(r=Dce),r}function lft(e){var t=e.title,r="0em";return M0.isTopAnchor(t)?r=Cy.CAP_SHIFT+"em":M0.isMiddleAnchor(t)&&(r=Cy.MID_SHIFT+"em"),r}pd.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)}dN(e),pd.redrawReglTraces(e)}return Jp.style(e),Bv.getComponentMethod("legend","draw")(e),Jp.previousPromises(e)};pd.doColorBars=function(e){return Bv.getComponentMethod("colorbar","draw")(e),Jp.previousPromises(e)};pd.layoutReplot=function(e){var t=e.layout;return e.layout=void 0,Bv.call("_doPlot",e,"",t)};pd.doLegend=function(e){return Bv.getComponentMethod("legend","draw")(e),Jp.previousPromises(e)};pd.doTicksRelayout=function(e){return _M.draw(e,"redraw"),e._fullLayout._hasOnlyLargeSploms&&(Bv.subplotsRegistry.splom.updateGrid(e),dN(e),pd.redrawReglTraces(e)),pd.drawMainTitle(e),Jp.previousPromises(e)};pd.doModeBar=function(e){var t=e._fullLayout;Ice.manage(e);for(var r=0;r<t._basePlotModules.length;r++){var n=t._basePlotModules[r].updateFx;n&&n(e)}return Jp.previousPromises(e)};pd.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)}};pd.drawData=function(e){var t=e._fullLayout;dN(e);for(var r=t._basePlotModules,n=0;n<r.length;n++)r[n].plot(e);return pd.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)};pd.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()}};pd.doAutoRangeAndConstraints=function(e){for(var t=_M.list(e,"",!0),r,n={},i=0;i<t.length;i++)if(r=t[i],!n[r._id]){n[r._id]=1,Kct(e,r),Cce(e,r);var a=r._matchGroup;if(a)for(var o in a){var s=_M.getFromId(e,o);Cce(e,s,r.range),n[o]=1}}Yct(e)};pd.finalDraw=function(e){Bv.getComponentMethod("rangeslider","draw")(e),Bv.getComponentMethod("rangeselector","draw")(e)};pd.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 gN=ye((jnr,Nce)=>{"use strict";var uft=c_().readPaths,cft=tP(),zce=e_().clearOutlineControllers,vN=Ca(),Oce=So(),fft=pl().arrayEditor,qce=h_(),hft=qce.getPathString;Nce.exports={draw:hP,drawOne:Bce,activateLastSelection:pft};function hP(e){var t=e._fullLayout;zce(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++)Bce(e,i)}function dP(e){return e._context.editSelection}function Bce(e,t){e._fullLayout._paperdiv.selectAll('.selectionlayer [data-index="'+t+'"]').remove();var r=qce.makeSelectionsOptionsAndPlotinfo(e,t),n=r.options,i=r.plotinfo;if(!n._input)return;a(e._fullLayout._selectionLayer);function a(o){var s=hft(e,n),l={"data-index":t,"fill-rule":"evenodd",d:s},u=n.opacity,c="rgba(0,0,0,0)",f=n.line.color||vN.contrast(e._fullLayout.plot_bgcolor),h=n.line.width,d=n.line.dash;h||(h=5,d="solid");var v=dP(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(vN.stroke,f).call(vN.fill,c).call(Oce.dashLine,b?"solid":d,b?4+h:h);if(dft(p,e,n),v){var C=fft(e.layout,"selections",n);p.style({cursor:"move"});var E={element:p.node(),plotinfo:i,gd:e,editHelpers:C,isActiveSelection:!0},A=uft(s,e);cft(A,p,E)}else p.style("pointer-events",b?"all":"none");x[b]=p}var L=x[0],_=x[1];_.node().addEventListener("click",function(){return vft(e,L)})}}function dft(e,t,r){var n=r.xref+r.yref;Oce.setClipUrl(e,"clip"+t._fullLayout._uid+n,t)}function vft(e,t){if(dP(e)){var r=t.node(),n=+r.getAttribute("data-index");if(n>=0){if(n===e._fullLayout._activeSelectionIndex){pN(e);return}e._fullLayout._activeSelectionIndex=n,e._fullLayout._deactivateSelection=pN,hP(e)}}}function pft(e){if(dP(e)){var t=e._fullLayout.selections.length-1;e._fullLayout._activeSelectionIndex=t,e._fullLayout._deactivateSelection=pN,hP(e)}}function pN(e){if(dP(e)){var t=e._fullLayout._activeSelectionIndex;t>=0&&(zce(e),delete e._fullLayout._activeSelectionIndex,hP(e))}}});var Vce=ye((Wnr,Uce)=>{function gft(){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}Uce.exports=gft});var Hce=ye((Xnr,Gce)=>{function mft(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}Gce.exports=mft});var Wce=ye((Znr,jce)=>{var yft={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}};jce.exports=yft});var Zce=ye((Ynr,Xce)=>{var bM=Wce();function _ft(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=bM.create();function o(v,x,b,p,C,E){var A=t.pointsCompare(x,C);return A!==0?A:t.pointsSame(b,E)?0:v!==p?v?1:-1:t.pointAboveOrOnLine(b,p?C:E,p?E:C)?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=bM.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=bM.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=bM.create();function p(G,Z){var H=G.seg.start,N=G.seg.end,j=Z.seg.start,re=Z.seg.end;return t.pointsCollinear(H,j,re)?t.pointsCollinear(N,j,re)||t.pointAboveOrOnLine(N,j,re)?1:-1:t.pointAboveOrOnLine(H,j,re)?1:-1}function C(G){return b.findTransition(function(Z){var H=p(G,Z.ev);return H>0})}function E(G,Z){var H=G.seg,N=Z.seg,j=H.start,re=H.end,oe=N.start,_e=N.end;r&&r.checkIntersection(H,N);var Me=t.linesIntersect(j,re,oe,_e);if(Me===!1){if(!t.pointsCollinear(j,re,oe)||t.pointsSame(j,_e)||t.pointsSame(re,oe))return!1;var ke=t.pointsSame(j,oe),me=t.pointsSame(re,_e);if(ke&&me)return Z;var ie=!ke&&t.pointBetween(j,oe,_e),Se=!me&&t.pointBetween(re,oe,_e);if(ke)return Se?h(Z,re):h(G,_e),Z;ie&&(me||(Se?h(Z,re):h(G,_e)),h(Z,j))}else Me.alongA===0&&(Me.alongB===-1?h(G,oe):Me.alongB===0?h(G,Me.pt):Me.alongB===1&&h(G,_e)),Me.alongB===0&&(Me.alongA===-1?h(Z,j):Me.alongA===0?h(Z,Me.pt):Me.alongA===1&&h(Z,re));return!1}for(var A=[];!a.isEmpty();){var L=a.getHead();if(r&&r.vert(L.pt[0]),L.isStart){let G=function(){if(k){var Z=E(L,k);if(Z)return Z}return M?E(L,M):!1};var V=G;r&&r.segmentNew(L.seg,L.primary);var _=C(L),k=_.before?_.before.ev:null,M=_.after?_.after.ev:null;r&&r.tempStatus(L.seg,k?k.seg:!1,M?M.seg:!1);var g=G();if(g){if(e){var P;L.seg.myFill.below===null?P=!0:P=L.seg.myFill.above!==L.seg.myFill.below,P&&(g.seg.myFill.above=!g.seg.myFill.above)}else g.seg.otherFill=L.seg.myFill;r&&r.segmentUpdate(g.seg),L.other.remove(),L.remove()}if(a.getHead()!==L){r&&r.rewind(L.seg);continue}if(e){var P;L.seg.myFill.below===null?P=!0:P=L.seg.myFill.above!==L.seg.myFill.below,M?L.seg.myFill.below=M.seg.myFill.above:L.seg.myFill.below=v,P?L.seg.myFill.above=!L.seg.myFill.below:L.seg.myFill.above=L.seg.myFill.below}else if(L.seg.otherFill===null){var T;M?L.primary===M.primary?T=M.seg.otherFill.above:T=M.seg.myFill.above:T=L.primary?x:v,L.seg.otherFill={above:T,below:T}}r&&r.status(L.seg,k?k.seg:!1,M?M.seg:!1),L.other.status=_.insert(bM.node({ev:L}))}else{var z=L.status;if(z===null)throw new Error("PolyBool: Zero-length segment detected; your epsilon is probably too small or too large");if(b.exists(z.prev)&&b.exists(z.next)&&E(z.prev.ev,z.next.ev),r&&r.statusRemove(z.ev.seg),z.remove(),!L.primary){var O=L.seg.myFill;L.seg.myFill=L.seg.otherFill,L.seg.otherFill=O}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 C=t.pointsCompare(x,b);C!==0&&c(n(C<0?x:b,C<0?b:x),!0)}},calculate:function(v){return d(v,!1)}}:{calculate:function(v,x,b,p){return v.forEach(function(C){c(i(C.start,C.end,C),!0)}),b.forEach(function(C){c(i(C.start,C.end,C),!1)}),d(x,p)}}}Xce.exports=_ft});var Kce=ye((Knr,Yce)=>{function xft(e,t,r){var n=[],i=[];return e.forEach(function(a){var o=a.start,s=a.end;if(t.pointsSame(o,s)){console.warn("PolyBool: Warning: Zero-length segment detected; your epsilon is probably too small or too large");return}r&&r.chainStart(a);var l={index:0,matches_head:!1,matches_pt1:!1},u={index:0,matches_head:!1,matches_pt1:!1},c=l;function f(V,G,Z){return c.index=V,c.matches_head=G,c.matches_pt1=Z,c===l?(c=u,!1):(c=null,!0)}for(var h=0;h<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 C=l.index,E=l.matches_pt1?s:o,A=l.matches_head,d=n[C],L=A?d[0]:d[d.length-1],_=A?d[1]:d[d.length-2],k=A?d[d.length-1]:d[0],M=A?d[d.length-2]:d[1];if(t.pointsCollinear(_,L,E)&&(A?(r&&r.chainRemoveHead(l.index,E),d.shift()):(r&&r.chainRemoveTail(l.index,E),d.pop()),L=_),t.pointsSame(k,E)){n.splice(C,1),t.pointsCollinear(M,k,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,E),d.unshift(E)):(r&&r.chainAddTail(l.index,E),d.push(E));return}function g(V){r&&r.chainReverse(V),n[V].reverse()}function P(V,G){var Z=n[V],H=n[G],N=Z[Z.length-1],j=Z[Z.length-2],re=H[0],oe=H[1];t.pointsCollinear(j,N,re)&&(r&&r.chainRemoveTail(V,N),Z.pop(),N=j),t.pointsCollinear(N,re,oe)&&(r&&r.chainRemoveHead(G,re),H.shift()),r&&r.chainJoin(V,G),n[V]=Z.concat(H),n.splice(G,1)}var T=l.index,z=u.index;r&&r.chainConnect(T,z);var O=n[T].length<n[z].length;l.matches_head?u.matches_head?O?(g(T),P(T,z)):(g(z),P(z,T)):P(z,T):u.matches_head?P(T,z):O?(g(T),P(z,T)):(g(z),P(T,z))}),i}Yce.exports=xft});var $ce=ye((Jnr,Jce)=>{function wM(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 bft={union:function(e,t){return wM(e,[0,2,1,0,2,2,0,0,1,0,1,0,0,0,0,0],t)},intersect:function(e,t){return wM(e,[0,0,0,0,0,2,0,2,0,0,1,1,0,2,1,0],t)},difference:function(e,t){return wM(e,[0,0,0,0,2,0,2,0,1,1,0,0,0,1,2,0],t)},differenceRev:function(e,t){return wM(e,[0,2,1,0,0,0,1,1,0,2,0,2,0,0,0,0],t)},xor:function(e,t){return wM(e,[0,2,1,0,2,0,0,1,1,0,0,2,0,1,2,0],t)}};Jce.exports=bft});var efe=ye(($nr,Qce)=>{var wft={toPolygon:function(e,t){function r(a){if(a.length<=0)return e.segments({inverted:!1,regions:[]});function o(u){var c=u.slice(0,u.length-1);return e.segments({inverted:!1,regions:[c]})}for(var s=o(a[0]),l=1;l<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],C=[],E=0;E<d.length;E++){var A=d[E][0],L=d[E][1];C.push([A,L]),x+=L*b-A*p,b=A,p=L}var _=x<0;return _!==v&&C.reverse(),C.push([C[0][0],C[0][1]]),C}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}}};Qce.exports=wft});var nfe=ye((Qnr,ife)=>{var Tft=Vce(),Aft=Hce(),tfe=Zce(),Sft=Kce(),TM=$ce(),rfe=efe(),E0=!1,AM=Aft(),Mp;Mp={buildLog:function(e){return e===!0?E0=Tft():e===!1&&(E0=!1),E0===!1?!1:E0.list},epsilon:function(e){return AM.epsilon(e)},segments:function(e){var t=tfe(!0,AM,E0);return e.regions.forEach(t.addRegion),{segments:t.calculate(e.inverted),inverted:e.inverted}},combine:function(e,t){var r=tfe(!1,AM,E0);return{combined:r.calculate(e.segments,e.inverted,t.segments,t.inverted),inverted1:e.inverted,inverted2:t.inverted}},selectUnion:function(e){return{segments:TM.union(e.combined,E0),inverted:e.inverted1||e.inverted2}},selectIntersect:function(e){return{segments:TM.intersect(e.combined,E0),inverted:e.inverted1&&e.inverted2}},selectDifference:function(e){return{segments:TM.difference(e.combined,E0),inverted:e.inverted1&&!e.inverted2}},selectDifferenceRev:function(e){return{segments:TM.differenceRev(e.combined,E0),inverted:!e.inverted1&&e.inverted2}},selectXor:function(e){return{segments:TM.xor(e.combined,E0),inverted:e.inverted1!==e.inverted2}},polygon:function(e){return{regions:Sft(e.segments,AM,E0),inverted:e.inverted}},polygonFromGeoJSON:function(e){return rfe.toPolygon(Mp,e)},polygonToGeoJSON:function(e){return rfe.fromPolygon(Mp,AM,e)},union:function(e,t){return SM(e,t,Mp.selectUnion)},intersect:function(e,t){return SM(e,t,Mp.selectIntersect)},difference:function(e,t){return SM(e,t,Mp.selectDifference)},differenceRev:function(e,t){return SM(e,t,Mp.selectDifferenceRev)},xor:function(e,t){return SM(e,t,Mp.selectXor)}};function SM(e,t,r){var n=Mp.segments(e),i=Mp.segments(t),a=Mp.combine(n,i),o=r(a);return Mp.polygon(o)}typeof window=="object"&&(window.PolyBool=Mp);ife.exports=Mp});var ofe=ye((ear,afe)=>{afe.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 MM=ye((tar,sfe)=>{"use strict";var mN=b6().dot,vP=hs().BADNUM,pP=sfe.exports={};pP.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===vP||b<n||b>i||p===vP||p<a||p>o||x&&u(v))}function f(v,x){var b=v[0],p=v[1];if(b===vP||b<n||b>i||p===vP||p<a||p>o)return!1;var C=r.length,E=r[0][0],A=r[0][1],L=0,_,k,M,g,P;for(_=1;_<C;_++)if(k=E,M=A,E=r[_][0],A=r[_][1],g=Math.min(k,E),!(b<g||b>Math.max(k,E)||p>Math.max(M,A)))if(p<Math.min(M,A))b!==g&&L++;else{if(E===k?P=p:P=M+(b-k)*(A-M)/(E-k),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}};pP.isSegmentBent=function(t,r,n,i){var a=t[r],o=[t[n][0]-a[0],t[n][1]-a[1]],s=mN(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=mN(f,o),h<0||h>s||Math.abs(mN(f,u))>i)return!0;return!1};pP.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||pP.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 ufe=ye((rar,lfe)=>{"use strict";lfe.exports={BENDPX:1.5,MINSELECT:12,SELECTDELAY:100,SELECTID:"-select"}});var Pfe=ye((iar,Lfe)=>{"use strict";var cfe=nfe(),Mft=ofe(),kM=qa(),Eft=So().dashStyle,EM=Ca(),Cft=vf(),kft=rp().makeEventData,DM=Sg(),Lft=DM.freeMode,Pft=DM.rectMode,LM=DM.drawMode,bN=DM.openMode,wN=DM.selectMode,ffe=h_(),hfe=vM(),mfe=tP(),yfe=e_().clearOutline,_fe=c_(),yN=_fe.handleEllipse,Ift=_fe.readPaths,Rft=JL().newShapes,Dft=jB(),Fft=gN().activateLastSelection,mP=Dr(),zft=mP.sorterAsc,xfe=MM(),CM=D6(),C0=hf().getFromId,Oft=hM(),qft=xM().redrawReglTraces,yP=ufe(),Am=yP.MINSELECT,Bft=xfe.filter,TN=xfe.tester,AN=XL(),dfe=AN.p2r,Nft=AN.axValue,Uft=AN.getTransform;function SN(e){return e.subplot!==void 0}function Vft(e,t,r,n,i){var a=!SN(n),o=Lft(i),s=Pft(i),l=bN(i),u=LM(i),c=wN(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,C=n.element.getBoundingClientRect(),E=n.plotinfo,A=Uft(E),L=t-C.left,_=r-C.top;x._calcInverseTransform(v);var k=mP.apply3DTransform(x._invTransform)(L,_);L=k[0],_=k[1];var M=x._invScaleX,g=x._invScaleY,P=L,T=_,z="M"+L+","+_,O=n.xaxes[0],V=n.yaxes[0],G=O._length,Z=V._length,H=e.altKey&&!(LM(i)&&l),N,j,re,oe,_e,Me,ke;wfe(e,v,n),o&&(N=Bft([[L,_]],yP.BENDPX));var me=p.selectAll("path.select-outline-"+E.id).data([1]),ie=u?x.newshape:x.newselection;u&&(n.hasText=ie.label.text||ie.label.texttemplate);var Se=u&&!l?ie.fillcolor:"rgba(0,0,0,0)",Le=ie.line.color||(a?EM.contrast(v._fullLayout.plot_bgcolor):"#7f7f7f");me.enter().append("path").attr("class","select-outline select-outline-"+E.id).style({opacity:u?ie.opacity/2:1,"stroke-dasharray":Eft(ie.line.dash,ie.line.width),"stroke-width":ie.line.width+"px","shape-rendering":"crispEdges"}).call(EM.stroke,Le).call(EM.fill,Se).attr("fill-rule","evenodd").classed("cursor-move",!!u).attr("transform",A).attr("d",z+"Z");var Ae=p.append("path").attr("class","zoombox-corners").style({fill:EM.background,stroke:EM.defaultLine,"stroke-width":1}).attr("transform",A).attr("d","M0,0Z");if(u&&n.hasText){var De=p.select(".label-temp");De.empty()&&(De=p.append("g").classed("label-temp",!0).classed("select-outline",!0).style({opacity:.8}))}var Pe=x._uid+yP.SELECTID,ge=[],Fe=_P(v,n.xaxes,n.yaxes,n.subplot);b&&!e.shiftKey&&(n._clearSubplotSelections=function(){if(a){var Ze=O._id,ct=V._id;Efe(v,Ze,ct,Fe);for(var pt=(v.layout||{}).selections||[],Wt=[],st=!1,lt=0;lt<pt.length;lt++){var Gt=x.selections[lt];!Gt||Gt.xref!==Ze||Gt.yref!==ct?Wt.push(pt[lt]):st=!0}st&&(v._fullLayout._noEmitSelectedAtStart=!0,kM.call("_guiRelayout",v,{selections:Wt}))}});var ce=rht(n);n.moveFn=function(Ze,ct){n._clearSubplotSelections&&(n._clearSubplotSelections(),n._clearSubplotSelections=void 0),P=Math.max(0,Math.min(G,M*Ze+L)),T=Math.max(0,Math.min(Z,g*ct+_));var pt=Math.abs(P-L),Wt=Math.abs(T-_);if(s){var st,lt,Gt;if(c){var Nt=x.selectdirection;switch(Nt==="any"?Wt<Math.min(pt*.6,Am)?st="h":pt<Math.min(Wt*.6,Am)?st="v":st="d":st=Nt,st){case"h":lt=h?Z/2:0,Gt=Z;break;case"v":lt=h?G/2:0,Gt=G;break}}if(u)switch(x.newshape.drawdirection){case"vertical":st="h",lt=h?Z/2:0,Gt=Z;break;case"horizontal":st="v",lt=h?G/2:0,Gt=G;break;case"ortho":pt<Wt?(st="h",lt=_,Gt=T):(st="v",lt=L,Gt=P);break;default:st="d"}st==="h"?(oe=d?yN(h,[P,lt],[P,Gt]):[[L,lt],[L,Gt],[P,Gt],[P,lt]],oe.xmin=d?P:Math.min(L,P),oe.xmax=d?P:Math.max(L,P),oe.ymin=Math.min(lt,Gt),oe.ymax=Math.max(lt,Gt),Ae.attr("d","M"+oe.xmin+","+(_-Am)+"h-4v"+2*Am+"h4ZM"+(oe.xmax-1)+","+(_-Am)+"h4v"+2*Am+"h-4Z")):st==="v"?(oe=d?yN(h,[lt,T],[Gt,T]):[[lt,_],[lt,T],[Gt,T],[Gt,_]],oe.xmin=Math.min(lt,Gt),oe.xmax=Math.max(lt,Gt),oe.ymin=d?T:Math.min(_,T),oe.ymax=d?T:Math.max(_,T),Ae.attr("d","M"+(L-Am)+","+oe.ymin+"v-4h"+2*Am+"v4ZM"+(L-Am)+","+(oe.ymax-1)+"v4h"+2*Am+"v-4Z")):st==="d"&&(oe=d?yN(h,[L,_],[P,T]):[[L,_],[L,T],[P,T],[P,_]],oe.xmin=Math.min(L,P),oe.xmax=Math.max(L,P),oe.ymin=Math.min(_,T),oe.ymax=Math.max(_,T),Ae.attr("d","M0,0Z"))}else o&&(N.addPt([P,T]),oe=N.filtered);if(n.selectionDefs&&n.selectionDefs.length?(re=Tfe(n.mergedPolygons,oe,H),oe.subtract=H,j=MN(n.selectionDefs.concat([oe]))):(re=[oe],j=TN(oe)),mfe(Sfe(re,l),me,n),c){var $t=xN(v,!1),sr=$t.eventData?$t.eventData.points.slice():[];$t=xN(v,!1,j,Fe,n),j=$t.selectionTesters,ke=$t.eventData;var wr;N?wr=N.filtered:wr=Cfe(re),CM.throttle(Pe,yP.SELECTDELAY,function(){ge=Mfe(j,Fe);for(var ur=ge.slice(),Qe=0;Qe<sr.length;Qe++){for(var Et=sr[Qe],er=!1,Ut=0;Ut<ur.length;Ut++)if(ur[Ut].curveNumber===Et.curveNumber&&ur[Ut].pointNumber===Et.pointNumber){er=!0;break}er||ur.push(Et)}ur.length&&(ke||(ke={}),ke.points=ur),ce(ke,wr),iht(v,ke)})}},n.clickFn=function(Ze,ct){if(Ae.remove(),v._fullLayout._activeShapeIndex>=0){v._fullLayout._deactivateShape(v);return}if(!u){var pt=x.clickmode;CM.done(Pe).then(function(){if(CM.clear(Pe),Ze===2){for(me.remove(),_e=0;_e<Fe.length;_e++)Me=Fe[_e],Me._module.selectPoints(Me,!1);if(IM(v,Fe),PM(n),CN(v),Fe.length){var Wt=Fe[0].xaxis,st=Fe[0].yaxis;if(Wt&&st){for(var lt=[],Gt=v._fullLayout.selections,Nt=0;Nt<Gt.length;Nt++){var $t=Gt[Nt];$t&&($t.xref!==Wt._id||$t.yref!==st._id)&<.push($t)}lt.length<Gt.length&&(v._fullLayout._noEmitSelectedAtStart=!0,kM.call("_guiRelayout",v,{selections:lt}))}}}else pt.indexOf("select")>-1&&bfe(ct,v,n.xaxes,n.yaxes,n.subplot,n,me),pt==="event"&&RM(v,void 0);Cft.click(v,ct,E.id)}).catch(mP.error)}},n.doneFn=function(){Ae.remove(),CM.done(Pe).then(function(){CM.clear(Pe),!b&&oe&&n.selectionDefs&&(oe.subtract=H,n.selectionDefs.push(oe),n.mergedPolygons.length=0,[].push.apply(n.mergedPolygons,re)),(b||u)&&PM(n,b),n.doneFnCompleted&&n.doneFnCompleted(ge),c&&RM(v,ke)}).catch(mP.error)}}function bfe(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,C,E,A,L;if(Xft(s)){wfe(e,t,a),h=_P(t,r,n,i);var _=Zft(s,h),k=_.pointNumbers.length>0;if(k?Yft(h,_):Kft(h)&&(C=pfe(_))){for(o&&o.remove(),L=0;L<h.length;L++)d=h[L],d._module.selectPoints(d,!1);IM(t,h),PM(a),c&&CN(t)}else{E=e.shiftKey&&(C!==void 0?C:pfe(_)),v=Gft(_.pointNumber,_.searchInfo,E);var M=a.selectionDefs.concat([v]);for(x=MN(M,x),L=0;L<h.length;L++)if(b=h[L]._module.selectPoints(h[L],x),p=Afe(b,h[L]),f.length)for(var g=0;g<p.length;g++)f.push(p[g]);else f=p;if(A={points:f},IM(t,h,A),v&&a&&a.selectionDefs.push(v),o){var P=a.mergedPolygons,T=bN(a.dragmode);mfe(Sfe(P,T),o,a)}c&&RM(t,A)}}}function Gft(e,t,r){return{pointNumber:e,searchInfo:t,subtract:!!r}}function _N(e){return"pointNumber"in e&&"searchInfo"in e}function Hft(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 MN(e){if(!e.length)return;for(var t=[],r=_N(e[0])?0:e[0][0][0],n=r,i=_N(e[0])?0:e[0][0][1],a=i,o=0;o<e.length;o++)if(_N(e[o]))t.push(Hft(e[o]));else{var s=TN(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 wfe(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)&&!(LM(a)&&bN(a));o&&s&&i.selection&&i.selection.selectionDefs&&!r.selectionDefs?(r.selectionDefs=i.selection.selectionDefs,r.mergedPolygons=i.selection.mergedPolygons):(!s||!i.selection)&&PM(r),o||(yfe(t),n._lastSelectedSubplot=i.id)}function jft(e){return e._fullLayout._activeShapeIndex>=0}function Wft(e){return e._fullLayout._activeSelectionIndex>=0}function PM(e,t){var r=e.dragmode,n=e.plotinfo,i=e.gd;jft(i)&&i._fullLayout._deactivateShape(i),Wft(i)&&i._fullLayout._deactivateSelection(i);var a=i._fullLayout,o=a._zoomlayer,s=LM(r),l=wN(r);if(s||l){var u=o.selectAll(".select-outline-"+n.id);if(u&&i._fullLayout._outlining){var c;s&&(c=Rft(u,e)),c&&kM.call("_guiRelayout",i,{shapes:c});var f;l&&!SN(e)&&(f=Dft(u,e)),f&&(i._fullLayout._noEmitSelectedAtStart=!0,kM.call("_guiRelayout",i,{selections:f}).then(function(){t&&Fft(i)})),i._fullLayout._outlining=!1}}n.selection={},n.selection.selectionDefs=e.selectionDefs=[],n.selection.mergedPolygons=e.mergedPolygons=[]}function vfe(e){return e._id}function _P(e,t,r,n){if(!e.calcdata)return[];var i=[],a=t.map(vfe),o=r.map(vfe),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(SN({subplot:n})&&(l.subplot===n||l.geo===n))i.push(gP(l._module,s,t[0],r[0]));else if(l.type==="splom"){if(l._xaxes[a[0]]&&l._yaxes[o[0]]){var c=gP(l._module,s,t[0],r[0]);c.scene=e._fullLayout._splomScenes[l.uid],i.push(c)}}else if(l.type==="sankey"){var f=gP(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(gP(l._module,s,C0(e,l.xaxis),C0(e,l.yaxis)))}return i}function gP(e,t,r,n){return{_module:e,cd:t,xaxis:r,yaxis:n}}function Xft(e){return e&&Array.isArray(e)&&e[0].hoverOnBox!==!0}function Zft(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 pfe(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 Yft(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 Kft(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 IM(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;Jft(e,t)}function Jft(e,t){for(var r=!1,n=0;n<t.length;n++){var i=t[n],a=i.cd;kM.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&&(Oft(e),qft(e))}function Tfe(e,t,r){for(var n=r?cfe.difference:cfe.union,i=n({regions:e},{regions:[t]}),a=i.regions.reverse(),o=0;o<a.length;o++){var s=a[o];s.subtract=EN(s,a.slice(0,o))}return a}function Afe(e,t){if(Array.isArray(e))for(var r=t.cd,n=t.cd[0].trace,i=0;i<e.length;i++)e[i]=kft(e[i],n,r);return e}function Sfe(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 Mfe(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=Afe(a,s),r=r.concat(n)}return r}function xN(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=gfe(e),h=e._fullLayout;if(o){var d=h._zoomlayer,v=h.dragmode,x=LM(v),b=wN(v);if(x||b){var p=C0(e,s,"x"),C=C0(e,l,"y");if(p&&C){var E=d.selectAll(".select-outline-"+o.id);if(E&&e._fullLayout._outlining&&E.length){for(var A=E[0][0],L=A.getAttribute("d"),_=Ift(L,e,o),k=[],M=0;M<_.length;M++){for(var g=_[M],P=[],T=0;T<g.length;T++)P.push([d_(p,g[T][1]),d_(C,g[T][2])]);P.xref=s,P.yref=l,P.subtract=EN(P,k),k.push(P)}f=f.concat(k)}}}}var z=s&&l?[s+l]:h._subplots.cartesian;$ft(e);for(var O={},V=0;V<z.length;V++){var G=z[V],Z=G.indexOf("y"),H=G.slice(0,Z),N=G.slice(Z),j=s&&l?r:void 0;if(j=eht(f,H,N,j),j){var re=n;if(!a){var oe=C0(e,H,"x"),_e=C0(e,N,"y");re=_P(e,[oe],[_e],G);for(var Me=0;Me<re.length;Me++){var ke=re[Me],me=ke.cd[0],ie=me.trace;if(ke._module.name==="scattergl"&&!me.t.xpx){var Se=ie.x,Le=ie.y,Ae=ie._length;me.t.xpx=[],me.t.ypx=[];for(var De=0;De<Ae;De++)me.t.xpx[De]=oe.c2p(Se[De]),me.t.ypx[De]=_e.c2p(Le[De])}ke._module.name==="splom"&&(O[ie.uid]||(O[ie.uid]=!0))}}var Pe=Mfe(j,re);u=u.concat(Pe),c=c.concat(re)}}var ge={points:u};IM(e,c,ge);var Fe=h.clickmode,ce=Fe.indexOf("event")>-1&&t;if(!o&&t){var Ze=gfe(e,!0);if(Ze.length){var ct=Ze[0].xref,pt=Ze[0].yref;if(ct&&pt){var Wt=Cfe(Ze),st=kfe([C0(e,ct,"x"),C0(e,pt,"y")]);st(ge,Wt)}}e._fullLayout._noEmitSelectedAtStart?e._fullLayout._noEmitSelectedAtStart=!1:ce&&RM(e,ge),h._reselect=!1}if(!o&&h._deselect){var lt=h._deselect;s=lt.xref,l=lt.yref,Qft(s,l,c)||Efe(e,s,l,n),ce&&(ge.points.length?RM(e,ge):CN(e)),h._deselect=!1}return{eventData:ge,selectionTesters:r}}function $ft(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 Qft(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 Efe(e,t,r,n){n=_P(e,[C0(e,t,"x")],[C0(e,r,"y")],t+r);for(var i=0;i<n.length;i++){var a=n[i];a._module.selectPoints(a,!1)}IM(e,n)}function eht(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=Tfe(i,o,s),n=MN(i)}else i=[o],n=TN(o)}return n}function gfe(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=C0(e,l,"x"),f=C0(e,u,"y"),h,d,v,x,b;if(s.type==="rect"){b=[];var p=d_(c,s.x0),C=d_(c,s.x1),E=d_(f,s.y0),A=d_(f,s.y1);b=[[p,E],[p,A],[C,A],[C,E]],h=Math.min(p,C),d=Math.max(p,C),v=Math.min(E,A),x=Math.max(E,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"),_=[],k=0;k<L.length;k++){var M=L[k];if(M){M+="Z";var g=ffe.extractPathCoords(M,hfe.paramIsX,"raw"),P=ffe.extractPathCoords(M,hfe.paramIsY,"raw");h=1/0,d=-1/0,v=1/0,x=-1/0,b=[];for(var T=0;T<g.length;T++){var z=d_(c,g[T]),O=d_(f,P[T]);b.push([z,O]),h=Math.min(z,h),d=Math.max(z,d),v=Math.min(O,v),x=Math.max(O,x)}b.xmin=h,b.xmax=d,b.ymin=v,b.ymax=x,b.xref=l,b.yref=u,b.subtract=EN(b,_),_.push(b),r.push(b)}}}}return r}function EN(e,t){for(var r=!1,n=0;n<t.length;n++)for(var i=t[n],a=0;a<e.length;a++)if(Mft(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 Cfe(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 tht(r)}function tht(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 kfe(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]=[dfe(o,u),dfe(o,c)].sort(zft))}else i||(i={}),i[s]=r.map(Nft(o))}n&&(t.range=n),i&&(t.lassoPoints=i)}}function rht(e){var t=e.plotinfo;return t.fillRangeItems||kfe(e.xaxes.concat(e.yaxes))}function iht(e,t){e.emit("plotly_selecting",t)}function RM(e,t){t&&(t.selections=(e.layout||{}).selections||[]),e.emit("plotly_selected",t)}function CN(e){e.emit("plotly_deselect",null)}Lfe.exports={reselect:xN,prepSelect:Vft,clearOutline:yfe,clearSelectionsCache:PM,selectOnClick:bfe}});var kN=ye((nar,Ife)=>{"use strict";Ife.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 FM=ye((aar,Rfe)=>{"use strict";Rfe.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((sar,zfe)=>{"use strict";var Dfe=kN(),Ffe=ec(),xP=hd(),nht=pl().templatedArray,oar=FM();zfe.exports=nht("annotation",{visible:{valType:"boolean",dflt:!0,editType:"calc+arraydraw"},text:{valType:"string",editType:"calc+arraydraw"},textangle:{valType:"angle",dflt:0,editType:"calc+arraydraw"},font:Ffe({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:Dfe.length,dflt:1,editType:"arraydraw"},startarrowhead:{valType:"integer",min:0,max:Dfe.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",xP.idRegex.x.toString()],editType:"calc"},ayref:{valType:"enumerated",dflt:"pixel",values:["pixel",xP.idRegex.y.toString()],editType:"calc"},xref:{valType:"enumerated",values:["paper",xP.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",xP.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:Ffe({editType:"arraydraw"}),editType:"arraydraw"},captureevents:{valType:"boolean",editType:"arraydraw"},editType:"calc"})});var Sm=ye((lar,Ofe)=>{"use strict";Ofe.exports={PTS_LINESONLY:20,minTolerance:.2,toleranceGrowth:10,maxScreensAway:20,eventDataKeys:[]}});var Eg=ye((uar,qfe)=>{"use strict";qfe.exports=function(t){return{valType:"color",editType:"style",anim:!0}}});var pf=ye((car,Hfe)=>{"use strict";var Bfe=df().axisHoverFormat,aht=Qo().texttemplateAttrs,oht=Qo().hovertemplateAttrs,Nfe=Tu(),sht=ec(),lht=Pd().dash,uht=Pd().pattern,cht=So(),fht=Sm(),bP=Ao().extendFlat,hht=Eg();function Ufe(e){return{valType:"any",dflt:0,editType:"calc"}}function Vfe(e){return{valType:"any",editType:"calc"}}function Gfe(e){return{valType:"enumerated",values:["start","middle","end"],dflt:"middle",editType:"calc"}}Hfe.exports={x:{valType:"data_array",editType:"calc+clearAxisTypes",anim:!0},x0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes",anim:!0},dx:{valType:"number",dflt:1,editType:"calc",anim:!0},y:{valType:"data_array",editType:"calc+clearAxisTypes",anim:!0},y0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes",anim:!0},dy:{valType:"number",dflt:1,editType:"calc",anim:!0},xperiod:Ufe("x"),yperiod:Ufe("y"),xperiod0:Vfe("x0"),yperiod0:Vfe("y0"),xperiodalignment:Gfe("x"),yperiodalignment:Gfe("y"),xhoverformat:Bfe("x"),yhoverformat:Bfe("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:aht({},{}),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:oht({},{keys:fht.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:bP({},lht,{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:hht(!0),fillgradient:bP({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:uht,marker:bP({symbol:{valType:"enumerated",values:cht.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:bP({width:{valType:"number",min:0,arrayOk:!0,editType:"style",anim:!0},editType:"calc"},Nfe("marker.line",{anim:!0})),gradient:{type:{valType:"enumerated",values:["radial","horizontal","vertical","none"],arrayOk:!0,dflt:"none",editType:"calc"},color:{valType:"color",arrayOk:!0,editType:"calc"},editType:"calc"},editType:"calc"},Nfe("marker",{anim:!0})),selected:{marker:{opacity:{valType:"number",min:0,max:1,editType:"style"},color:{valType:"color",editType:"style"},size:{valType:"number",min:0,editType:"style"},editType:"style"},textfont:{color:{valType:"color",editType:"style"},editType:"style"},editType:"style"},unselected:{marker:{opacity:{valType:"number",min:0,max:1,editType:"style"},color:{valType:"color",editType:"style"},size:{valType:"number",min:0,editType:"style"},editType:"style"},textfont:{color:{valType:"color",editType:"style"},editType:"style"},editType:"style"},textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right"],dflt:"middle center",arrayOk:!0,editType:"calc"},textfont:sht({editType:"calc",colorEditType:"style",arrayOk:!0}),zorder:{valType:"integer",dflt:0,editType:"plot"}}});var LN=ye((har,Xfe)=>{"use strict";var jfe=Nb(),Wfe=pf().line,dht=Pd().dash,wP=Ao().extendFlat,vht=mc().overrideAll,pht=pl().templatedArray,far=FM();Xfe.exports=vht(pht("selection",{type:{valType:"enumerated",values:["rect","path"]},xref:wP({},jfe.xref,{}),yref:wP({},jfe.yref,{}),x0:{valType:"any"},x1:{valType:"any"},y0:{valType:"any"},y1:{valType:"any"},path:{valType:"string",editType:"arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:.7,editType:"arraydraw"},line:{color:Wfe.color,width:wP({},Wfe.width,{min:1,dflt:1}),dash:wP({},dht,{dflt:"dot"})}}),"arraydraw","from-root")});var Jfe=ye((dar,Kfe)=>{"use strict";var Zfe=Dr(),TP=ho(),ght=Yd(),mht=LN(),Yfe=h_();Kfe.exports=function(t,r){ght(t,r,{name:"selections",handleItemDefaults:yht});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 yht(e,t,r){function n(_,k){return Zfe.coerce(e,t,mht,_,k)}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=TP.coerceRef(e,t,f,c);if(h=TP.getFromId(f,x),h._selectionIndices.push(t._index),v=Yfe.rangeToShapePosition(h),d=Yfe.shapePositionToRange(h),s){var b=c+"0",p=c+"1",C=e[b],E=e[p];e[b]=d(e[b],!0),e[p]=d(e[p],!0),TP.coercePosition(t,f,n,x,b),TP.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]=C,e[p]=E)}}s&&Zfe.noneOrAll(e,t,["x0","x1","y0","y1"])}});var Qfe=ye((par,$fe)=>{"use strict";$fe.exports=function(t,r,n){n("newselection.mode");var i=n("newselection.line.width");i&&(n("newselection.line.color"),n("newselection.line.dash")),n("activeselection.fillcolor"),n("activeselection.opacity")}});var zM=ye((gar,rhe)=>{"use strict";var _ht=qa(),ehe=Dr(),the=hf();rhe.exports=function(t){return function(n,i){var a=n[t];if(Array.isArray(a))for(var o=_ht.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(ehe.isPlainObject(v)){var x=the.cleanId(v.xref,"x",!1),b=the.cleanId(v.yref,"y",!1),p=s.x.test(x),C=s.y.test(b);if(p||C){h||ehe.pushUnique(i._basePlotModules,o);var E=!1;p&&u.indexOf(x)===-1&&(u.push(x),E=!0),C&&c.indexOf(b)===-1&&(c.push(b),E=!0),E&&p&&C&&f.push(x+b)}}}}}});var zf=ye((mar,nhe)=>{"use strict";var ihe=gN(),OM=Pfe();nhe.exports={moduleType:"component",name:"selections",layoutAttributes:LN(),supplyLayoutDefaults:Jfe(),supplyDrawNewSelectionDefaults:Qfe(),includeBasePlot:zM()("selections"),draw:ihe.draw,drawOne:ihe.drawOne,reselect:OM.reselect,prepSelect:OM.prepSelect,clearOutline:OM.clearOutline,clearSelectionsCache:OM.clearSelectionsCache,selectOnClick:OM.selectOnClick}});var ON=ye((yar,Ahe)=>{"use strict";var FN=Oa(),k0=Dr(),ahe=k0.numberFormat,xht=cd(),bht=PL(),AP=qa(),vhe=k0.strTranslate,wht=iu(),ohe=Ca(),v_=So(),Tht=vf(),she=ho(),Aht=Tg(),Sht=gv(),phe=Sg(),SP=phe.selectingOrDrawing,Mht=phe.freeMode,Eht=Kh().FROM_TL,Cht=hM(),kht=xM().redrawReglTraces,Lht=Mc(),IN=hf().getFromId,Pht=zf().prepSelect,Iht=zf().clearOutline,Rht=zf().selectOnClick,PN=lN(),zN=hd(),lhe=zN.MINDRAG,ip=zN.MINZOOM,uhe=!0;function Dht(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,C,E,A,L,_,k,M,g,P,T,z,O,V,G,Z,H;r+=t.yaxis._shift;function N(){if(f=t.xaxis,h=t.yaxis,E=f._length,A=h._length,p=f._offset,C=h._offset,d={},d[f._id]=f,v={},v[h._id]=h,o&&s)for(var bt=t.overlays,yt=0;yt<bt.length;yt++){var Yt=bt[yt].xaxis;d[Yt._id]=Yt;var lr=bt[yt].yaxis;v[lr._id]=lr}x=dhe(d),b=dhe(v),k=che(x,s),M=che(b,o),g=!M&&!k,_=hhe(e,e._fullLayout._axisMatchGroups,d,v),L=hhe(e,e._fullLayout._axisConstraintGroups,d,v,_);var Tr=L.isSubplotConstrained||_.isSubplotConstrained;P=s||Tr,T=o||Tr;var Rr=e._fullLayout;z=Rr._has("scattergl"),O=Rr._has("splom"),V=Rr._has("svg")}N();var j=Oht(M+k,e._fullLayout.dragmode,u),re=mhe(t,o+s+"drag",j,r,n,i,a);if(g&&!u)return re.onmousedown=null,re.style.pointerEvents="none",re;var oe={element:re,gd:e,plotinfo:t};oe.prepFn=function(bt,yt,Yt){var lr=oe.dragmode,Tr=e._fullLayout.dragmode;Tr!==lr&&(oe.dragmode=Tr),N(),Z=e._fullLayout._invScaleX,H=e._fullLayout._invScaleY,g||(u?bt.shiftKey?Tr==="pan"?Tr="zoom":SP(Tr)||(Tr="pan"):bt.ctrlKey&&(Tr="pan"):Tr="pan"),Mht(Tr)?oe.minDrag=1:oe.minDrag=void 0,SP(Tr)?(oe.xaxes=x,oe.yaxes=b,Pht(bt,yt,Yt,oe,Tr)):(oe.clickFn=Me,SP(lr)&&_e(),g||(Tr==="zoom"?(oe.moveFn=Ze,oe.doneFn=pt,oe.minDrag=1,ce(bt,yt,Yt)):Tr==="pan"&&(oe.moveFn=$t,oe.doneFn=Qe))),e._fullLayout._redrag=function(){var Rr=e._dragdata;if(Rr&&Rr.element===re){var ei=e._fullLayout.dragmode;SP(ei)||(N(),Et([0,0,E,A]),oe.moveFn(Rr.dx,Rr.dy))}}};function _e(){oe.plotinfo.selection=!1,Iht(e)}function Me(bt,yt){var Yt=oe.gd;if(Yt._fullLayout._activeShapeIndex>=0){Yt._fullLayout._deactivateShape(Yt);return}var lr=Yt._fullLayout.clickmode;if(DN(Yt),bt===2&&!c&&ur(),u)lr.indexOf("select")>-1&&Rht(yt,Yt,x,b,t.id,oe),lr.indexOf("event")>-1&&Tht.click(Yt,yt,t.id);else if(bt===1&&c){var Tr=o?h:f,Rr=o==="s"||s==="w"?0:1,ei=Tr._name+".range["+Rr+"]",Wr=Fht(Tr,Rr),Ur="left",dt="middle";if(Tr.fixedrange)return;o?(dt=o==="n"?"top":"bottom",Tr.side==="right"&&(Ur="right")):s==="e"&&(Ur="right"),Yt._context.showAxisRangeEntryBoxes&&FN.select(re).call(wht.makeEditable,{gd:Yt,immediate:!0,background:Yt._fullLayout.paper_bgcolor,text:String(Wr),fill:Tr.tickfont?Tr.tickfont.color:"#444",horizontalAlign:Ur,verticalAlign:dt}).on("edit",function(Ge){var Je=Tr.d2r(Ge);Je!==void 0&&AP.call("_guiRelayout",Yt,ei,Je)})}}Sht.init(oe);var ke,me,ie,Se,Le,Ae,De,Pe,ge,Fe;function ce(bt,yt,Yt){var lr=re.getBoundingClientRect();ke=yt-lr.left,me=Yt-lr.top,e._fullLayout._calcInverseTransform(e);var Tr=k0.apply3DTransform(e._fullLayout._invTransform)(ke,me);ke=Tr[0],me=Tr[1],ie={l:ke,r:ke,w:0,t:me,b:me,h:0},Se=e._hmpixcount?e._hmlumcount/e._hmpixcount:xht(e._fullLayout.plot_bgcolor).getLuminance(),Le="M0,0H"+E+"V"+A+"H0V0",Ae=!1,De="xy",Fe=!1,Pe=yhe(l,Se,p,C,Le),ge=_he(l,p,C)}function Ze(bt,yt){if(e._transitioningWithDuration)return!1;var Yt=Math.max(0,Math.min(E,Z*bt+ke)),lr=Math.max(0,Math.min(A,H*yt+me)),Tr=Math.abs(Yt-ke),Rr=Math.abs(lr-me);ie.l=Math.min(ke,Yt),ie.r=Math.max(ke,Yt),ie.t=Math.min(me,lr),ie.b=Math.max(me,lr);function ei(){De="",ie.r=ie.l,ie.t=ie.b,ge.attr("d","M0,0Z")}if(L.isSubplotConstrained)Tr>ip||Rr>ip?(De="xy",Tr/E>Rr/A?(Rr=Tr*A/E,me>lr?ie.t=me-Rr:ie.b=me+Rr):(Tr=Rr*E/A,ke>Yt?ie.l=ke-Tr:ie.r=ke+Tr),ge.attr("d",MP(ie))):ei();else if(_.isSubplotConstrained)if(Tr>ip||Rr>ip){De="xy";var Wr=Math.min(ie.l/E,(A-ie.b)/A),Ur=Math.max(ie.r/E,(A-ie.t)/A);ie.l=Wr*E,ie.r=Ur*E,ie.b=(1-Wr)*A,ie.t=(1-Ur)*A,ge.attr("d",MP(ie))}else ei();else!M||Rr<Math.min(Math.max(Tr*.6,lhe),ip)?Tr<lhe||!k?ei():(ie.t=0,ie.b=A,De="x",ge.attr("d",qht(ie,me))):!k||Tr<Math.min(Rr*.6,ip)?(ie.l=0,ie.r=E,De="y",ge.attr("d",Bht(ie,ke))):(De="xy",ge.attr("d",MP(ie)));ie.w=ie.r-ie.l,ie.h=ie.b-ie.t,De&&(Fe=!0),e._dragged=Fe,xhe(Pe,ge,ie,Le,Ae,Se),ct(),e.emit("plotly_relayouting",G),Ae=!0}function ct(){G={},(De==="xy"||De==="x")&&(RN(x,ie.l/E,ie.r/E,G,L.xaxes),sr("x",G)),(De==="xy"||De==="y")&&(RN(b,(A-ie.b)/A,(A-ie.t)/A,G,L.yaxes),sr("y",G))}function pt(){ct(),DN(e),Qe(),whe(e)}var Wt=[0,0,E,A],st=null,lt=zN.REDRAWDELAY,Gt=t.mainplot?e._fullLayout._plots[t.mainplot]:t;function Nt(bt){if(!e._context._scrollZoom.cartesian&&!e._fullLayout._enablescrollzoom)return;if(_e(),e._transitioningWithDuration){bt.preventDefault(),bt.stopPropagation();return}N(),clearTimeout(st);var yt=-bt.deltaY;if(isFinite(yt)||(yt=bt.wheelDelta/10),!isFinite(yt)){k0.log("Did not find wheel motion attributes: ",bt);return}var Yt=Math.exp(-Math.min(Math.max(yt,-20),20)/200),lr=Gt.draglayer.select(".nsewdrag").node().getBoundingClientRect(),Tr=(bt.clientX-lr.left)/lr.width,Rr=(lr.bottom-bt.clientY)/lr.height,ei;function Wr(Ur,dt,Ge){if(Ur.fixedrange)return;var Je=k0.simpleMap(Ur.range,Ur.r2l),je=Je[0]+(Je[1]-Je[0])*dt;function $e(wt){return Ur.l2r(je+(wt-je)*Ge)}Ur.range=Je.map($e)}if(P){for(s||(Tr=.5),ei=0;ei<x.length;ei++)Wr(x[ei],Tr,Yt);sr("x"),Wt[2]*=Yt,Wt[0]+=Wt[2]*Tr*(1/Yt-1)}if(T){for(o||(Rr=.5),ei=0;ei<b.length;ei++)Wr(b[ei],Rr,Yt);sr("y"),Wt[3]*=Yt,Wt[1]+=Wt[3]*(1-Rr)*(1/Yt-1)}Et(Wt),wr(),e.emit("plotly_relayouting",G),st=setTimeout(function(){e._fullLayout&&(Wt=[0,0,E,A],Qe())},lt),bt.preventDefault()}o.length*s.length!==1&&The(re,Nt);function $t(bt,yt){if(bt=bt*Z,yt=yt*H,e._transitioningWithDuration)return;if(e._fullLayout._replotting=!0,k==="ew"||M==="ns"){var Yt=k?-bt:0,lr=M?-yt:0;if(_.isSubplotConstrained){if(k&&M){var Tr=(bt/E-yt/A)/2;bt=Tr*E,yt=-Tr*A,Yt=-bt,lr=-yt}M?Yt=-lr*E/A:lr=-Yt*A/E}k&&(fhe(x,bt),sr("x")),M&&(fhe(b,yt),sr("y")),Et([Yt,lr,E,A]),wr(),e.emit("plotly_relayouting",G);return}function Rr($e,wt,Ie){for(var xe=1-wt,Ce,vt,nr=0;nr<$e.length;nr++){var ir=$e[nr];if(!ir.fixedrange){Ce=ir,vt=ir._rl[xe]+(ir._rl[wt]-ir._rl[xe])/zht(Ie/ir._length);var pr=ir.l2r(vt);pr!==!1&&pr!==void 0&&(ir.range[wt]=pr)}}return Ce._length*(Ce._rl[wt]-vt)/(Ce._rl[wt]-Ce._rl[xe])}var ei=k==="w"==(M==="n")?1:-1;if(k&&M&&(L.isSubplotConstrained||_.isSubplotConstrained)){var Wr=(bt/E+ei*yt/A)/2;bt=Wr*E,yt=ei*Wr*A}var Ur,dt;if(k==="w"?bt=Rr(x,0,bt):k==="e"?bt=Rr(x,1,-bt):k||(bt=0),M==="n"?yt=Rr(b,1,yt):M==="s"?yt=Rr(b,0,-yt):M||(yt=0),Ur=k==="w"?bt:0,dt=M==="n"?yt:0,L.isSubplotConstrained&&!_.isSubplotConstrained||_.isSubplotConstrained&&k&&M&&ei>0){var Ge;if(_.isSubplotConstrained||!k&&M.length===1){for(Ge=0;Ge<x.length;Ge++)x[Ge].range=x[Ge]._r.slice(),PN(x[Ge],1-yt/A);bt=yt*E/A,Ur=bt/2}if(_.isSubplotConstrained||!M&&k.length===1){for(Ge=0;Ge<b.length;Ge++)b[Ge].range=b[Ge]._r.slice(),PN(b[Ge],1-bt/E);yt=bt*A/E,dt=yt/2}}(!_.isSubplotConstrained||!M)&&sr("x"),(!_.isSubplotConstrained||!k)&&sr("y");var Je=E-bt,je=A-yt;_.isSubplotConstrained&&!(k&&M)&&(k?(dt=Ur?0:bt*A/E,je=Je*A/E):(Ur=dt?0:yt*E/A,Je=je*E/A)),Et([Ur,dt,Je,je]),wr(),e.emit("plotly_relayouting",G)}function sr(bt,yt){for(var Yt=_.isSubplotConstrained?{x:b,y:x}[bt]:_[bt+"axes"],lr=_.isSubplotConstrained?{x,y:b}[bt]:[],Tr=0;Tr<Yt.length;Tr++){var Rr=Yt[Tr],ei=Rr._id,Wr=_.xLinks[ei]||_.yLinks[ei],Ur=lr[0]||d[Wr]||v[Wr];Ur&&(yt?(yt[Rr._name+".range[0]"]=yt[Ur._name+".range[0]"],yt[Rr._name+".range[1]"]=yt[Ur._name+".range[1]"]):Rr.range=Ur.range.slice())}}function wr(){var bt=[],yt;function Yt(ei){for(yt=0;yt<ei.length;yt++)ei[yt].fixedrange||bt.push(ei[yt]._id)}function lr(ei,Wr){for(yt=0;yt<ei.length;yt++){var Ur=ei[yt],dt=Ur[Wr];!Ur.fixedrange&&dt.tickmode==="sync"&&bt.push(dt._id)}}for(P&&(Yt(x),Yt(L.xaxes),Yt(_.xaxes),lr(t.overlays,"xaxis")),T&&(Yt(b),Yt(L.yaxes),Yt(_.yaxes),lr(t.overlays,"yaxis")),G={},yt=0;yt<bt.length;yt++){var Tr=bt[yt],Rr=IN(e,Tr);she.drawOne(e,Rr,{skipTitle:!0}),G[Rr._name+".range[0]"]=Rr.range[0],G[Rr._name+".range[1]"]=Rr.range[1]}she.redrawComponents(e,bt)}function ur(){if(!e._transitioningWithDuration){var bt=e._context.doubleClick,yt=[];k&&(yt=yt.concat(x)),M&&(yt=yt.concat(b)),_.xaxes&&(yt=yt.concat(_.xaxes)),_.yaxes&&(yt=yt.concat(_.yaxes));var Yt={},lr,Tr;if(bt==="reset+autosize")for(bt="autosize",Tr=0;Tr<yt.length;Tr++){lr=yt[Tr];var Rr=lr._rangeInitial0,ei=lr._rangeInitial1,Wr=Rr!==void 0||ei!==void 0;if(Wr&&(Rr!==void 0&&Rr!==lr.range[0]||ei!==void 0&&ei!==lr.range[1])||!Wr&&lr.autorange!==!0){bt="reset";break}}if(bt==="autosize")for(Tr=0;Tr<yt.length;Tr++)lr=yt[Tr],lr.fixedrange||(Yt[lr._name+".autorange"]=!0);else if(bt==="reset"){for((k||L.isSubplotConstrained)&&(yt=yt.concat(L.xaxes)),M&&!L.isSubplotConstrained&&(yt=yt.concat(L.yaxes)),L.isSubplotConstrained&&(k?M||(yt=yt.concat(b)):yt=yt.concat(x)),Tr=0;Tr<yt.length;Tr++)if(lr=yt[Tr],!lr.fixedrange){var Ur=lr._name,dt=lr._autorangeInitial;lr._rangeInitial0===void 0&&lr._rangeInitial1===void 0?Yt[Ur+".autorange"]=!0:lr._rangeInitial0===void 0?(Yt[Ur+".autorange"]=dt,Yt[Ur+".range"]=[null,lr._rangeInitial1]):lr._rangeInitial1===void 0?(Yt[Ur+".range"]=[lr._rangeInitial0,null],Yt[Ur+".autorange"]=dt):Yt[Ur+".range"]=[lr._rangeInitial0,lr._rangeInitial1]}}e.emit("plotly_doubleclick",null),AP.call("_guiRelayout",e,Yt)}}function Qe(){Et([0,0,E,A]),k0.syncOrAsync([Lht.previousPromises,function(){e._fullLayout._replotting=!1,AP.call("_guiRelayout",e,G)}],e)}function Et(bt){var yt=e._fullLayout,Yt=yt._plots,lr=yt._subplots.cartesian,Tr,Rr,ei,Wr;if(O&&AP.subplotsRegistry.splom.drag(e),z){for(Tr=0;Tr<lr.length;Tr++)if(Rr=Yt[lr[Tr]],ei=Rr.xaxis,Wr=Rr.yaxis,Rr._scene){ei.limitRange&&ei.limitRange(),Wr.limitRange&&Wr.limitRange();var Ur=k0.simpleMap(ei.range,ei.r2l),dt=k0.simpleMap(Wr.range,Wr.r2l);Rr._scene.update({range:[Ur[0],dt[0],Ur[1],dt[1]]})}}if((O||z)&&(Cht(e),kht(e)),V){var Ge=bt[2]/f._length,Je=bt[3]/h._length;for(Tr=0;Tr<lr.length;Tr++){Rr=Yt[lr[Tr]],ei=Rr.xaxis,Wr=Rr.yaxis;var je=(P||_.isSubplotConstrained)&&!ei.fixedrange&&d[ei._id],$e=(T||_.isSubplotConstrained)&&!Wr.fixedrange&&v[Wr._id],wt,Ie,xe,Ce;if(je?(wt=Ge,xe=s||_.isSubplotConstrained?bt[0]:Ft(ei,wt)):_.xaHash[ei._id]?(wt=Ge,xe=bt[0]*ei._length/f._length):_.yaHash[ei._id]?(wt=Je,xe=M==="ns"?-bt[1]*ei._length/h._length:Ft(ei,wt,{n:"top",s:"bottom"}[M])):(wt=er(ei,Ge,Je),xe=Ut(ei,wt)),wt>1&&(ei.maxallowed!==void 0&&P===(ei.range[0]<ei.range[1]?"e":"w")||ei.minallowed!==void 0&&P===(ei.range[0]<ei.range[1]?"w":"e"))&&(wt=1,xe=0),$e?(Ie=Je,Ce=o||_.isSubplotConstrained?bt[1]:Ft(Wr,Ie)):_.yaHash[Wr._id]?(Ie=Je,Ce=bt[1]*Wr._length/h._length):_.xaHash[Wr._id]?(Ie=Ge,Ce=k==="ew"?-bt[0]*Wr._length/f._length:Ft(Wr,Ie,{e:"right",w:"left"}[k])):(Ie=er(Wr,Ge,Je),Ce=Ut(Wr,Ie)),Ie>1&&(Wr.maxallowed!==void 0&&T===(Wr.range[0]<Wr.range[1]?"n":"s")||Wr.minallowed!==void 0&&T===(Wr.range[0]<Wr.range[1]?"s":"n"))&&(Ie=1,Ce=0),!(!wt&&!Ie)){wt||(wt=1),Ie||(Ie=1);var vt=ei._offset-xe/wt,nr=Wr._offset-Ce/Ie;Rr.clipRect.call(v_.setTranslate,xe,Ce).call(v_.setScale,wt,Ie),Rr.plot.call(v_.setTranslate,vt,nr).call(v_.setScale,1/wt,1/Ie),(wt!==Rr.xScaleFactor||Ie!==Rr.yScaleFactor)&&(v_.setPointGroupScale(Rr.zoomScalePts,wt,Ie),v_.setTextPointsScale(Rr.zoomScaleTxt,wt,Ie)),v_.hideOutsideRangePoints(Rr.clipOnAxisFalseTraces,Rr),Rr.xScaleFactor=wt,Rr.yScaleFactor=Ie}}}}function er(bt,yt,Yt){return bt.fixedrange?0:P&&L.xaHash[bt._id]?yt:T&&(L.isSubplotConstrained?L.xaHash:L.yaHash)[bt._id]?Yt:0}function Ut(bt,yt){return yt?(bt.range=bt._r.slice(),PN(bt,yt),Ft(bt,yt)):0}function Ft(bt,yt,Yt){return bt._length*(1-yt)*Eht[Yt||bt.constraintoward||"middle"]}return re}function ghe(e,t,r,n){var i=k0.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(Aht,n),i.node()}function mhe(e,t,r,n,i,a,o){var s=ghe(e,"rect",t,r);return FN.select(s).call(v_.setRect,n,i,a,o),s}function che(e,t){for(var r=0;r<e.length;r++)if(!e[r].fixedrange)return t;return""}function Fht(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,ahe("."+i+"g")(Math.pow(10,r))):(i=Math.floor(Math.log(Math.abs(r))/Math.LN10)-Math.floor(Math.log(n)/Math.LN10)+4,ahe("."+String(i)+"g")(r))}function RN(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;RN(i,h,1-h,n,[])}}function fhe(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 zht(e){return 1-(e>=0?Math.min(e,.9):1/(1/Math.max(e,-.3)+3.222))}function Oht(e,t,r){return e?e==="nsew"?r?"":t==="pan"?"move":"crosshair":e.toLowerCase()+"-resize":"pointer"}function yhe(e,t,r,n,i){return e.append("path").attr("class","zoombox").style({fill:t>.2?"rgba(0,0,0,0)":"rgba(255,255,255,0)","stroke-width":0}).attr("transform",vhe(r,n)).attr("d",i+"Z")}function _he(e,t,r){return e.append("path").attr("class","zoombox-corners").style({fill:ohe.background,stroke:ohe.defaultLine,"stroke-width":1,opacity:0}).attr("transform",vhe(t,r)).attr("d","M0,0Z")}function xhe(e,t,r,n,i,a){e.attr("d",n+"M"+r.l+","+r.t+"v"+r.h+"h"+r.w+"v-"+r.h+"h-"+r.w+"Z"),bhe(e,t,i,a)}function bhe(e,t,r,n){r||(e.transition().style("fill",n>.2?"rgba(0,0,0,0.4)":"rgba(255,255,255,0.3)").duration(200),t.transition().style("opacity",1).duration(200))}function DN(e){FN.select(e).selectAll(".zoombox,.js-zoombox-backdrop,.js-zoombox-menu,.zoombox-corners").remove()}function whe(e){uhe&&e.data&&e._context.showTips&&(k0.notifier(k0._(e,"Double-click to zoom back out"),"long"),uhe=!1)}function qht(e,t){return"M"+(e.l-.5)+","+(t-ip-.5)+"h-3v"+(2*ip+1)+"h3ZM"+(e.r+.5)+","+(t-ip-.5)+"h3v"+(2*ip+1)+"h-3Z"}function Bht(e,t){return"M"+(t-ip-.5)+","+(e.t-.5)+"v-3h"+(2*ip+1)+"v3ZM"+(t-ip-.5)+","+(e.b+.5)+"v3h"+(2*ip+1)+"v-3Z"}function MP(e){var t=Math.floor(Math.min(e.b-e.t,e.r-e.l,ip)/2);return"M"+(e.l-3.5)+","+(e.t-.5+t)+"h3v"+-t+"h"+t+"v-3h-"+(t+3)+"ZM"+(e.r+3.5)+","+(e.t-.5+t)+"h-3v"+-t+"h"+-t+"v-3h"+(t+3)+"ZM"+(e.r+3.5)+","+(e.b+.5-t)+"h-3v"+t+"h"+-t+"v3h"+(t+3)+"ZM"+(e.l-3.5)+","+(e.b+.5-t)+"h3v"+t+"h"+t+"v3h-"+(t+3)+"Z"}function hhe(e,t,r,n,i){for(var a=!1,o={},s={},l,u,c,f,h=(i||{}).xaHash,d=(i||{}).yaHash,v=0;v<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&&(k0.extendFlat(o,s),s={});var b={},p=[];for(c in o){var C=IN(e,c);p.push(C),b[C._id]=C}var E={},A=[];for(f in s){var L=IN(e,f);A.push(L),E[L._id]=L}return{xaHash:b,yaHash:E,xaxes:p,yaxes:A,xLinks:o,yLinks:s,isSubplotConstrained:a}}function The(e,t){if(!bht)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 dhe(e){var t=[];for(var r in e)t.push(e[r]);return t}Ahe.exports={makeDragBox:Dht,makeDragger:ghe,makeRectDragger:mhe,makeZoombox:yhe,makeCorners:_he,updateZoombox:xhe,xyCorners:MP,transitionZoombox:bhe,removeZoombox:DN,showDoubleClickNotifier:whe,attachWheelEventHandler:The}});var qN=ye(CP=>{"use strict";var Nht=Oa(),EP=vf(),Uht=gv(),Vht=Tg(),Cg=ON().makeDragBox,gd=hd().DRAGGERSIZE;CP.initInteractions=function(t){var r=t._fullLayout;if(t._context.staticPlot){Nht.select(t).selectAll(".drag").remove();return}if(!(!r._has("cartesian")&&!r._has("splom"))){var n=Object.keys(r._plots||{}).sort(function(a,o){if((r._plots[a].mainplot&&!0)===(r._plots[o].mainplot&&!0)){var s=a.split("y"),l=o.split("y");return s[0]===l[0]?Number(s[1]||1)-Number(l[1]||1):Number(s[0]||1)-Number(l[0]||1)}return r._plots[a].mainplot?1:-1});n.forEach(function(a){var o=r._plots[a],s=o.xaxis,l=o.yaxis;if(!o.mainplot){var u=Cg(t,o,s._offset,l._offset,s._length,l._length,"ns","ew");u.onmousemove=function(h){t._fullLayout._rehover=function(){t._fullLayout._hoversubplot===a&&t._fullLayout._plots[a]&&EP.hover(t,h,a)},EP.hover(t,h,a),t._fullLayout._lasthover=u,t._fullLayout._hoversubplot=a},u.onmouseout=function(h){t._dragging||(t._fullLayout._hoversubplot=null,Uht.unhover(t,h))},t._context.showAxisDragHandles&&(Cg(t,o,s._offset-gd,l._offset-gd,gd,gd,"n","w"),Cg(t,o,s._offset+s._length,l._offset-gd,gd,gd,"n","e"),Cg(t,o,s._offset-gd,l._offset+l._length,gd,gd,"s","w"),Cg(t,o,s._offset+s._length,l._offset+l._length,gd,gd,"s","e"))}if(t._context.showAxisDragHandles){if(a===s._mainSubplot){var c=s._mainLinePosition;s.side==="top"&&(c-=gd),Cg(t,o,s._offset+s._length*.1,c,s._length*.8,gd,"","ew"),Cg(t,o,s._offset,c,s._length*.1,gd,"","w"),Cg(t,o,s._offset+s._length*.9,c,s._length*.1,gd,"","e")}if(a===l._mainSubplot){var f=l._mainLinePosition;l.side!=="right"&&(f-=gd),Cg(t,o,f,l._offset+l._length*.1,gd,l._length*.8,"ns",""),Cg(t,o,f,l._offset+l._length*.9,gd,l._length*.1,"s",""),Cg(t,o,f,l._offset,gd,l._length*.1,"n","")}}});var i=r._hoverlayer.node();i.onmousemove=function(a){a.target=t._fullLayout._lasthover,EP.hover(t,a,r._hoversubplot)},i.onclick=function(a){a.target=t._fullLayout._lasthover,EP.click(t,a)},i.onmousedown=function(a){t._fullLayout._lasthover.onmousedown(a)},CP.updateFx(t)}};CP.updateFx=function(e){var t=e._fullLayout,r=t.dragmode==="pan"?"move":"crosshair";Vht(t._draggers,r)}});var Ehe=ye((xar,Mhe)=>{"use strict";var She=qa();Mhe.exports=function(t){for(var r=She.layoutArrayContainers,n=She.layoutArrayRegexes,i=t.split("[")[0],a,o,s=0;s<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 khe=ye(BM=>{"use strict";var Ght=gy(),BN=x6(),qM=H1(),Hht=P6().sorterAsc,NN=qa();BM.containerArrayMatch=Ehe();var jht=BM.isAddVal=function(t){return t==="add"||Ght(t)},Che=BM.isRemoveVal=function(t){return t===null||t==="remove"};BM.applyContainerArrayChanges=function(t,r,n,i,a){var o=r.astr,s=NN.getComponentMethod(o,"supplyLayoutDefaults"),l=NN.getComponentMethod(o,"draw"),u=NN.getComponentMethod(o,"drawOne"),c=i.replot||i.recalc||s===BN||l===BN,f=t.layout,h=t._fullLayout;if(n[""]){Object.keys(n).length>1&&qM.warn("Full array edits are incompatible with other edits",o);var d=n[""][""];if(Che(d))r.set(null);else if(Array.isArray(d))r.set(d);else return qM.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(Hht),x=r.get(),b=x||[],p=a(h,o).get(),C=[],E=-1,A=b.length,L,_,k,M,g,P,T,z;for(L=0;L<v.length;L++){if(k=v[L],M=n[k],g=Object.keys(M),P=M[""],T=jht(P),k<0||k>b.length-(T?0:1)){qM.warn("index out of range",o,k);continue}if(P!==void 0)g.length>1&&qM.warn("Insertion & removal are incompatible with edits to the same index.",o,k),Che(P)?C.push(k):T?(P==="add"&&(P={}),b.splice(k,0,P),p&&p.splice(k,0,{})):qM.warn("Unrecognized full object edit value",o,k,P),E===-1&&(E=k);else for(_=0;_<g.length;_++)z=o+"["+k+"].",a(b[k],g[_],z).set(M[g[_]])}for(L=C.length-1;L>=0;L--)b.splice(C[L],1),p&&p.splice(C[L],1);if(b.length?x||r.set(b):r.set(null),c)return!1;if(s(f,h),u!==BN){var O;if(E===-1)O=v;else{for(A=Math.max(b.length,A),O=[],L=0;L<v.length&&(k=v[L],!(k>=E));L++)O.push(k);for(L=E;L<A;L++)O.push(L)}for(L=0;L<O.length;L++)u(t,O[L])}else l(t);return!0}});var Ohe=ye(kg=>{"use strict";var Rhe=Eo(),war=RO(),Dhe=qa(),Ep=Dr(),NM=Mc(),Fhe=hf(),zhe=Ca(),UM=Fhe.cleanId,Wht=Fhe.getFromTrace,UN=Dhe.traceIs;kg.clearPromiseQueue=function(e){Array.isArray(e._promises)&&e._promises.length>0&&Ep.log("Clearing previous rejected promises from queue."),e._promises=[]};kg.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=(NM.subplotsRegistry.cartesian||{}).attrRegex,i=(NM.subplotsRegistry.polar||{}).attrRegex,a=(NM.subplotsRegistry.ternary||{}).attrRegex,o=(NM.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=UM(u.anchor)),u.overlaying&&(u.overlaying=UM(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,kP(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];Ep.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];Ep.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];Ep.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"),zhe.clean(e),e.template&&e.template.layout&&kg.cleanLayout(e.template.layout),e};function Y3(e,t){var r=e[t],n=t.charAt(0);r&&r!=="paper"&&(e[t]=UM(r,n,!0))}kg.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"&&kg.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=UM(r.xaxis,"x")),r.yaxis&&(r.yaxis=UM(r.yaxis,"y")),UN(r,"gl3d")&&r.scene&&(r.scene=NM.subplotsRegistry.gl3d.cleanId(r.scene)),!UN(r,"pie-like")&&!UN(r,"bar-like"))if(Array.isArray(r.textposition))for(n=0;n<r.textposition.length;n++)r.textposition[n]=Phe(r.textposition[n]);else r.textposition&&(r.textposition=Phe(r.textposition));var i=Dhe.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"&&Ep.isPlainObject(r.contours)){var s=["x","y","z"];for(n=0;n<s.length;n++){var l=r.contours[s[n]];Ep.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=Lhe(r.increasing),h=Lhe(r.decreasing);if(f!==!1&&h!==!1){var d=Xht(f,h,u,c);d&&(r.name=d)}else(f||h)&&!r.name&&(r.name=f||h)}kP(r,"line")&&delete r.line,"marker"in r&&(kP(r.marker,"line")&&delete r.marker.line,kP(r,"marker")&&delete r.marker),zhe.clean(r),r.autobinx&&(delete r.autobinx,delete r.xbins),r.autobiny&&(delete r.autobiny,delete r.ybins)}};function Lhe(e){if(!Ep.isPlainObject(e))return!1;var t=e.name;return delete e.name,delete e.showlegend,(typeof t=="string"||typeof t=="number")&&String(t)}function Xht(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 Phe(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 kP(e,t){return t in e&&typeof e[t]=="object"&&Object.keys(e[t]).length===0}kg.swapXYData=function(e){var t;if(Ep.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);Ep.swapAttrs(e,["error_?.copy_ystyle"]),n&&Ep.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("+")}};kg.coerceTraceIndices=function(e,t){if(Rhe(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++)Ep.isIndex(t[n],e.data.length)?r.push(t[n]):Ep.warn("trace index (",t[n],") is not a number or is out of bounds");return r}return t};kg.manageArrayContainers=function(e,t,r){var n=e.obj,i=e.parts,a=i.length,o=i[a-1],s=Rhe(o);if(s&&t===null){var l=i.slice(0,a-1).join("."),u=Ep.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 Zht=/(\.[^\[\]\.]+|\[[^\[\]\.]+\])$/;function Ihe(e){var t=e.search(Zht);if(t>0)return e.substr(0,t)}kg.hasParent=function(e,t){for(var r=Ihe(t);r;){if(r in e)return!0;r=Ihe(r)}return!1};var Yht=["x","y","z"];kg.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=Wht(e,i,Yht[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&&Ep.nestedProperty(e.layout,u).set(null)}}}});var UP=ye(Gl=>{"use strict";var IP=Oa(),Kht=Eo(),Jht=tq(),xa=Dr(),Ec=xa.nestedProperty,HN=g3(),np=_ne(),L0=qa(),BP=_3(),es=Mc(),Nv=ho(),$ht=gB(),Qht=Rd(),VN=So(),edt=Ca(),tdt=qN().initInteractions,rdt=Wp(),idt=zf().clearOutline,Vhe=ub().dfltConfig,LP=khe(),Ih=Ohe(),Au=xM(),p_=mc(),ndt=hd().AX_NAME_PATTERN,GN=0,qhe=5;function adt(e,t,r,n){var i;if(e=xa.getGraphDiv(e),HN.init(e),xa.isPlainObject(t)){var a=t;t=a.data,r=a.layout,n=a.config,i=a.frames}var o=HN.triggerHandler(e,"plotly_beforeplot",[t,r,n]);if(o===!1)return Promise.reject();!t&&!r&&!xa.isPlotDiv(e)&&xa.warn("Calling _doPlot as if redrawing but this container doesn't yet have a plot.",e);function s(){if(i)return Gl.addFrames(e,i)}Hhe(e,n),r||(r={}),IP.select(e).classed("js-plotly-plot",!0),VN.makeTester(),Array.isArray(e._promises)||(e._promises=[]);var l=(e.data||[]).length===0&&Array.isArray(t);Array.isArray(t)&&(Ih.cleanData(t),l?e.data=t:e.data.push.apply(e.data,t),e.empty=!1),(!e.layout||l)&&(e.layout=Ih.cleanLayout(r)),es.supplyDefaults(e);var u=e._fullLayout,c=u._has("cartesian");u._replotting=!0,(l||u._shouldCreateBgLayer)&&(Cdt(e),u._shouldCreateBgLayer&&delete u._shouldCreateBgLayer),VN.initGradients(e),VN.initPatterns(e),l&&Nv.saveShowSpikeInitial(e);var f=!e.calcdata||e.calcdata.length!==(e._fullData||[]).length;f&&es.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(){xa.isHidden(e)||es.resize(e)},window.addEventListener("resize",e._responsiveChartHandler)):xa.clearResponsive(e);var d=xa.extendFlat({},u._size),v=0;function x(){for(var k=u._basePlotModules,M=0;M<k.length;M++)k[M].drawFramework&&k[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(z){return z.key}),u._glcanvas.enter().append("canvas").attr("class",function(z){return"gl-canvas gl-canvas-"+z.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)xa.error(T);else return xa.log(T+" Clearing graph and plotting again."),es.cleanPlot([],{},e._fullData,u),es.supplyDefaults(e),u=e._fullLayout,es.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"),es.previousPromises(e)}function b(){if(es.clearAutoMarginIds(e),Au.drawMarginPushers(e),Nv.allowAutoMargin(e),e._fullLayout.title.text&&e._fullLayout.title.automargin&&es.allowAutoMargin(e,"title.automargin"),u._has("pie"))for(var k=e._fullData,M=0;M<k.length;M++){var g=k[M];g.type==="pie"&&g.automargin&&es.allowAutoMargin(e,"pie."+g.uid+".automargin")}return es.doAutoMargin(e),es.previousPromises(e)}function p(){if(es.didMarginChange(d,u._size))return xa.syncOrAsync([b,Au.layoutStyles],e)}function C(){if(!f){E();return}return xa.syncOrAsync([L0.getComponentMethod("shapes","calcAutorange"),L0.getComponentMethod("annotations","calcAutorange"),E],e)}function E(){e._transitioning||(Au.doAutoRangeAndConstraints(e),l&&Nv.saveRangeInitial(e),L0.getComponentMethod("rangeslider","calcAutorange")(e))}function A(){return Nv.draw(e,l?"":"redraw")}var L=[es.previousPromises,s,x,b,p];c&&L.push(C),L.push(Au.layoutStyles),c&&L.push(A,function(M){var g=M._fullLayout._insideTickLabelsUpdaterange;if(g)return M._fullLayout._insideTickLabelsUpdaterange=void 0,VM(M,g).then(function(){Nv.saveRangeInitial(M,!0)})}),L.push(Au.drawData,Au.finalDraw,tdt,es.addLinks,es.rehover,es.redrag,es.reselect,es.doAutoMargin,es.previousPromises);var _=xa.syncOrAsync(L,e);return(!_||!_.then)&&(_=Promise.resolve()),_.then(function(){return GM(e),e})}function GM(e){var t=e._fullLayout;t._redrawFromAutoMarginCount?t._redrawFromAutoMarginCount--:e.emit("plotly_afterplot")}function odt(e){return xa.extendFlat(Vhe,e)}function Ghe(e,t){try{e._fullLayout._paper.style("background",t)}catch(r){xa.error(r)}}function sdt(e,t){var r=edt.combine(t,"white");Ghe(e,r)}function Hhe(e,t){if(!e._context){e._context=xa.extendDeep({},Vhe);var r=IP.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]=sdt: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"&&!Jht&&(n.displayModeBar=!0),(n.setBackground==="transparent"||typeof n.setBackground!="function")&&(n.setBackground=Ghe),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 ldt(e){if(e=xa.getGraphDiv(e),!xa.isPlotDiv(e))throw new Error("This element is not a Plotly plot: "+e);return Ih.cleanData(e.data),Ih.cleanLayout(e.layout),e.calcdata=void 0,Gl._doPlot(e).then(function(){return e.emit("plotly_redraw"),e})}function udt(e,t,r,n){return e=xa.getGraphDiv(e),es.cleanPlot([],{},e._fullData||[],e._fullLayout||{}),es.purge(e),Gl._doPlot(e,t,r,n)}function RP(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 DP(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 jhe(e,t,r){if(!Array.isArray(e.data))throw new Error("gd.data must be an array.");if(typeof t=="undefined")throw new Error("currentIndices is a required argument.");if(Array.isArray(t)||(t=[t]),DP(e,t,"currentIndices"),typeof r!="undefined"&&!Array.isArray(r)&&(r=[r]),typeof r!="undefined"&&DP(e,r,"newIndices"),typeof r!="undefined"&&t.length!==r.length)throw new Error("current and new indices must be of equal length.")}function cdt(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 fdt(e,t,r,n){var i=xa.isPlainObject(n);if(!Array.isArray(e.data))throw new Error("gd.data must be an array");if(!xa.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");DP(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 hdt(e,t,r,n){var i=xa.isPlainObject(n),a=[],o,s,l,u,c;Array.isArray(r)||(r=[r]),r=RP(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=Ec(o,f),s=l.get(),u=t[f][h],!xa.isArrayOrTypedArray(u))throw new Error("attribute: "+f+" index: "+h+" must be an array");if(!xa.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,Kht(c)||(c=-1),a.push({prop:l,target:s,insert:u,maxp:Math.floor(c)})}return a}function Whe(e,t,r,n,i){fdt(e,t,r,n);for(var a=hdt(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 Xhe(e,t){var r=new e.constructor(e.length+t.length);return r.set(e),r.set(t,e.length),r}function Zhe(e,t,r,n){e=xa.getGraphDiv(e);function i(l,u,c){var f,h;if(xa.isTypedArray(l))if(c<0){var d=new l.constructor(0),v=Xhe(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=Whe(e,t,r,n,i),o=Gl.redraw(e),s=[e,a.update,r,a.maxPoints];return np.add(e,Gl.prependTraces,s,Zhe,arguments),o}function Yhe(e,t,r,n){e=xa.getGraphDiv(e);function i(l,u,c){var f,h;if(xa.isTypedArray(l))if(c<=0){var d=new l.constructor(0),v=Xhe(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=Whe(e,t,r,n,i),o=Gl.redraw(e),s=[e,a.update,r,a.maxPoints];return np.add(e,Gl.extendTraces,s,Yhe,arguments),o}function Khe(e,t,r){e=xa.getGraphDiv(e);var n=[],i=Gl.deleteTraces,a=Khe,o=[e,n],s=[e,t],l,u;for(cdt(e,t,r),Array.isArray(t)||(t=[t]),t=t.map(function(c){return xa.extendFlat({},c)}),Ih.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=Gl.redraw(e),np.add(e,i,o,a,s),u;Array.isArray(r)||(r=[r]);try{jhe(e,n,r)}catch(c){throw e.data.splice(e.data.length-t.length,t.length),c}return np.startSequence(e),np.add(e,i,o,a,s),u=Gl.moveTraces(e,n,r),np.stopSequence(e),u}function Jhe(e,t){e=xa.getGraphDiv(e);var r=[],n=Gl.addTraces,i=Jhe,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]),DP(e,t,"indices"),t=RP(t,e.data.length-1),t.sort(xa.sorterDes),s=0;s<t.length;s+=1)l=e.data.splice(t[s],1)[0],r.push(l);var u=Gl.redraw(e);return np.add(e,n,a,i,o),u}function jN(e,t,r){e=xa.getGraphDiv(e);var n=[],i=[],a=jN,o=jN,s=[e,r,t],l=[e,t,r],u;if(jhe(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=RP(t,e.data.length-1),r=RP(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=Gl.redraw(e);return np.add(e,a,s,o,l),c}function FP(e,t,r,n){e=xa.getGraphDiv(e),Ih.clearPromiseQueue(e);var i={};if(typeof t=="string")i[t]=r;else if(xa.isPlainObject(t))i=xa.extendFlat({},t),n===void 0&&(n=r);else return xa.warn("Restyle fail.",t,r,n),Promise.reject();Object.keys(i).length&&(e.changed=!0);var a=Ih.coerceTraceIndices(e,n),o=$he(e,i,a),s=o.flags;s.calc&&(e.calcdata=void 0),s.clearAxisTypes&&Ih.clearAxisTypes(e,a,{});var l=[];s.fullReplot?l.push(Gl._doPlot):(l.push(es.previousPromises),es.supplyDefaults(e),s.markerSize&&(es.doCalcdata(e),NP(l)),s.style&&l.push(Au.doTraceStyle),s.colorbars&&l.push(Au.doColorBars),l.push(GM)),l.push(es.rehover,es.redrag,es.reselect),np.add(e,FP,[e,o.undoit,o.traces],FP,[e,o.redoit,o.traces]);var u=xa.syncOrAsync(l,e);return(!u||!u.then)&&(u=Promise.resolve()),u.then(function(){return e.emit("plotly_restyle",o.eventData),e})}function ky(e){return e===void 0?null:e}function PP(e,t){return t?function(r,n,i){var a=Ec(r,n),o=a.set;return a.set=function(s){var l=(i||"")+n;zP(l,a.get(),s,e),o(s)},a}:Ec}function zP(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++)zP(e+"["+s+"]",i[s],a[s],n);else if(xa.isPlainObject(t)||xa.isPlainObject(r)){var l=xa.isPlainObject(t)?t:{},u=xa.isPlainObject(r)?r:{},c=xa.extendFlat({},l,u);for(var f in c)zP(e+"."+f,l[f],u[f],n)}else n[e]===void 0&&(n[e]=ky(t))}function ddt(e,t,r){for(var n in r){var i=Ec(e,n);zP(n,i.get(),r[n],t)}}function $he(e,t,r){var n=e._fullLayout,i=e._fullData,a=e.data,o=n._guiEditing,s=PP(n._preGUI,o),l=xa.extendDeepAll({},t),u,c=p_.traceFlags(),f={},h={},d;function v(){return r.map(function(){})}function x(ge){var Fe=Nv.id2name(ge);d.indexOf(Fe)===-1&&d.push(Fe)}function b(ge){return"LAYOUT"+ge+".autorange"}function p(ge){return"LAYOUT"+ge+".range"}function C(ge){for(var Fe=ge;Fe<i.length;Fe++)if(i[Fe]._input===a[ge])return i[Fe]}function E(ge,Fe,ce){if(Array.isArray(ge)){ge.forEach(function(Wt){E(Wt,Fe,ce)});return}if(!(ge in t||Ih.hasParent(t,ge))){var Ze;if(ge.substr(0,6)==="LAYOUT")Ze=s(e.layout,ge.replace("LAYOUT",""));else{var ct=r[ce],pt=n._tracePreGUI[C(ct)._fullInput.uid];Ze=PP(pt,o)(a[ct],ge)}ge in h||(h[ge]=v()),h[ge][ce]===void 0&&(h[ge][ce]=ky(Ze.get())),Fe!==void 0&&Ze.set(Fe)}}function A(ge){return function(Fe){return i[Fe][ge]}}function L(ge){return function(Fe,ce){return Fe===!1?i[r[ce]][ge]:null}}for(var _ in t){if(Ih.hasParent(t,_))throw new Error("cannot set "+_+" and a parent attribute simultaneously");var k=t[_],M,g,P,T,z,O;if((_==="autobinx"||_==="autobiny")&&(_=_.charAt(_.length-1)+"bins",Array.isArray(k)?k=k.map(L(_)):k===!1?k=r.map(A(_)):k=null),f[_]=k,_.substr(0,6)==="LAYOUT"){P=s(e.layout,_.replace("LAYOUT","")),h[_]=[ky(P.get())],P.set(Array.isArray(k)?k[0]:k),c.calc=!0;continue}for(h[_]=v(),u=0;u<r.length;u++){M=a[r[u]],g=C(r[u]);var V=n._tracePreGUI[g._fullInput.uid];if(P=PP(V,o)(M,_),T=P.get(),z=Array.isArray(k)?k[u%k.length]:k,z!==void 0){var G=P.parts[P.parts.length-1],Z=_.substr(0,_.length-G.length-1),H=Z?Z+".":"",N=Z?Ec(g,Z).get():g;if(O=BP.getTraceValObject(g,P.parts),O&&O.impliedEdits&&z!==null)for(var j in O.impliedEdits)E(xa.relativeAttr(_,j),O.impliedEdits[j],u);else if((G==="thicknessmode"||G==="lenmode")&&T!==z&&(z==="fraction"||z==="pixels")&&N){var re=n._size,oe=N.orient,_e=oe==="top"||oe==="bottom";if(G==="thicknessmode"){var Me=_e?re.h:re.w;E(H+"thickness",N.thickness*(z==="fraction"?1/Me:Me),u)}else{var ke=_e?re.w:re.h;E(H+"len",N.len*(z==="fraction"?1/ke:ke),u)}}else if(_==="type"&&(z==="pie"!=(T==="pie")||z==="funnelarea"!=(T==="funnelarea"))){var me="x",ie="y";(z==="bar"||T==="bar")&&M.orientation==="h"&&(me="y",ie="x"),xa.swapAttrs(M,["?","?src"],"labels",me),xa.swapAttrs(M,["d?","?0"],"label",me),xa.swapAttrs(M,["?","?src"],"values",ie),T==="pie"||T==="funnelarea"?(Ec(M,"marker.color").set(Ec(M,"marker.colors").get()),n._pielayer.selectAll("g.trace").remove()):L0.traceIs(M,"cartesian")&&Ec(M,"marker.colors").set(Ec(M,"marker.color").get())}h[_][u]=ky(T);var Se=["swapxy","swapxyaxes","orientation","orientationaxes"];if(Se.indexOf(_)!==-1){if(_==="orientation"){P.set(z);var Le=M.x&&!M.y?"h":"v";if((P.get()||Le)===g.orientation)continue}else _==="orientationaxes"&&(M.orientation={v:"h",h:"v"}[g.orientation]);Ih.swapXYData(M),c.calc=c.clearAxisTypes=!0}else es.dataArrayContainers.indexOf(P.parts[0])!==-1?(Ih.manageArrayContainers(P,z,h),c.calc=!0):(O?O.arrayOk&&!L0.traceIs(g,"regl")&&(xa.isArrayOrTypedArray(z)||xa.isArrayOrTypedArray(T))?c.calc=!0:p_.update(c,O):c.calc=!0,P.set(z))}}if(["swapxyaxes","orientationaxes"].indexOf(_)!==-1&&Nv.swap(e,r),_==="orientationaxes"){var Ae=Ec(e.layout,"hovermode"),De=Ae.get();De==="x"?Ae.set("y"):De==="y"?Ae.set("x"):De==="x unified"?Ae.set("y unified"):De==="y unified"&&Ae.set("x unified")}if(["orientation","type"].indexOf(_)!==-1){for(d=[],u=0;u<r.length;u++){var Pe=a[r[u]];L0.traceIs(Pe,"cartesian")&&(x(Pe.xaxis||"x"),x(Pe.yaxis||"y"))}E(d.map(b),!0,0),E(d.map(p),[0,1],0)}}return(c.calc||c.plot)&&(c.fullReplot=!0),{flags:c,undoit:h,redoit:f,traces:r,eventData:xa.extendDeepNoArrays([],[l,r])}}function VM(e,t,r){e=xa.getGraphDiv(e),Ih.clearPromiseQueue(e);var n={};if(typeof t=="string")n[t]=r;else if(xa.isPlainObject(t))n=xa.extendFlat({},t);else return xa.warn("Relayout fail.",t,r),Promise.reject();Object.keys(n).length&&(e.changed=!0);var i=rde(e,n),a=i.flags;a.calc&&(e.calcdata=void 0);var o=[es.previousPromises];a.layoutReplot?o.push(Au.layoutReplot):Object.keys(n).length&&(Qhe(e,a,i)||es.supplyDefaults(e),a.legend&&o.push(Au.doLegend),a.layoutstyle&&o.push(Au.layoutStyles),a.axrange&&NP(o,i.rangesAltered),a.ticks&&o.push(Au.doTicksRelayout),a.modebar&&o.push(Au.doModeBar),a.camera&&o.push(Au.doCamera),a.colorbars&&o.push(Au.doColorBars),o.push(GM)),o.push(es.rehover,es.redrag,es.reselect),np.add(e,VM,[e,i.undoit],VM,[e,i.redoit]);var s=xa.syncOrAsync(o,e);return(!s||!s.then)&&(s=Promise.resolve(e)),s.then(function(){return e.emit("plotly_relayout",i.eventData),e})}function Qhe(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 xa.coerce(a,o,Qht,d,v)},l={};for(var u in r.rangesAltered){var c=Nv.id2name(u);if(a=e.layout[c],o=n[c],$ht(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 NP(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(idt,Au.doAutoRangeAndConstraints,r,Au.drawData,Au.finalDraw)}var ede=/^[xyz]axis[0-9]*\.range(\[[0|1]\])?$/,tde=/^[xyz]axis[0-9]*\.autorange$/,vdt=/^[xyz]axis[0-9]*\.domain(\[[0|1]\])?$/;function rde(e,t){var r=e.layout,n=e._fullLayout,i=n._guiEditing,a=PP(n._preGUI,i),o=Object.keys(t),s=Nv.list(e),l=xa.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={},C={};function E(pt,Wt){if(Array.isArray(pt)){pt.forEach(function(lt){E(lt,Wt)});return}if(!(pt in t||Ih.hasParent(t,pt))){var st=a(r,pt);pt in C||(C[pt]=ky(st.get())),Wt!==void 0&&st.set(Wt)}}var A={},L;function _(pt){var Wt=Nv.name2id(pt.split(".")[0]);return A[Wt]=1,Wt}for(var k in t){if(Ih.hasParent(t,k))throw new Error("cannot set "+k+" and a parent attribute simultaneously");for(var M=a(r,k),g=t[k],P=M.parts.length,T=P-1;T>0&&typeof M.parts[T]!="string";)T--;var z=M.parts[T],O=M.parts[T-1]+"."+z,V=M.parts.slice(0,T).join("."),G=Ec(e.layout,V).get(),Z=Ec(n,V).get(),H=M.get();if(g!==void 0){p[k]=g,C[k]=z==="reverse"?g:ky(H);var N=BP.getLayoutValObject(n,M.parts);if(N&&N.impliedEdits&&g!==null)for(var j in N.impliedEdits)E(xa.relativeAttr(k,j),N.impliedEdits[j]);if(["width","height"].indexOf(k)!==-1)if(g){E("autosize",null);var re=k==="height"?"width":"height";E(re,n[re])}else n[k]=e._initialAutoSize[k];else if(k==="autosize")E("width",g?null:n.width),E("height",g?null:n.height);else if(O.match(ede))_(O),Ec(n,V+"._inputRange").set(null);else if(O.match(tde)){_(O),Ec(n,V+"._inputRange").set(null);var oe=Ec(n,V).get();oe._inputDomain&&(oe._input.domain=oe._inputDomain.slice())}else O.match(vdt)&&Ec(n,V+"._inputDomain").set(null);if(z==="type"){L=G;var _e=Z.type==="linear"&&g==="log",Me=Z.type==="log"&&g==="linear";if(_e||Me){if(!L||!L.range)E(V+".autorange",!0);else if(Z.autorange)_e&&(L.range=L.range[1]>L.range[0]?[1,2]:[2,1]);else{var ke=L.range[0],me=L.range[1];_e?(ke<=0&&me<=0&&E(V+".autorange",!0),ke<=0?ke=me/1e6:me<=0&&(me=ke/1e6),E(V+".range[0]",Math.log(ke)/Math.LN10),E(V+".range[1]",Math.log(me)/Math.LN10)):(E(V+".range[0]",Math.pow(10,ke)),E(V+".range[1]",Math.pow(10,me)))}Array.isArray(n._subplots.polar)&&n._subplots.polar.length&&n[M.parts[0]]&&M.parts[1]==="radialaxis"&&delete n[M.parts[0]]._subplot.viewInitial["radialaxis.range"],L0.getComponentMethod("annotations","convertCoords")(e,Z,g,E),L0.getComponentMethod("images","convertCoords")(e,Z,g,E)}else E(V+".autorange",!0),E(V+".range",null);Ec(n,V+"._inputRange").set(null)}else if(z.match(ndt)){var ie=Ec(n,k).get(),Se=(g||{}).type;(!Se||Se==="-")&&(Se="linear"),L0.getComponentMethod("annotations","convertCoords")(e,ie,Se,E),L0.getComponentMethod("images","convertCoords")(e,ie,Se,E)}var Le=LP.containerArrayMatch(k);if(Le){c=Le.array,f=Le.index;var Ae=Le.property,De=N||{editType:"calc"};f!==""&&Ae===""&&(LP.isAddVal(g)?C[k]=null:LP.isRemoveVal(g)?C[k]=(Ec(r,c).get()||[])[f]:xa.warn("unrecognized full object value",t)),p_.update(b,De),u[c]||(u[c]={});var Pe=u[c][f];Pe||(Pe=u[c][f]={}),Pe[Ae]=g,delete t[k]}else z==="reverse"?(G.range?G.range.reverse():(E(V+".autorange",!0),G.range=[1,0]),Z.autorange?b.calc=!0:b.plot=!0):(k==="dragmode"&&(g===!1&&H!==!1||g!==!1&&H===!1)||n._has("scatter-like")&&n._has("regl")&&k==="dragmode"&&(g==="lasso"||g==="select")&&!(H==="lasso"||H==="select")?b.plot=!0:N?p_.update(b,N):b.calc=!0,M.set(g))}}for(c in u){var ge=LP.applyContainerArrayChanges(e,a(r,c),u[c],b,a);ge||(b.plot=!0)}for(var Fe in A){L=Nv.getFromId(e,Fe);var ce=L&&L._constraintGroup;if(ce){b.calc=!0;for(var Ze in ce)A[Ze]||(Nv.getFromId(e,Ze)._constraintShrinkable=!0)}}(ide(e)||t.height||t.width)&&(b.plot=!0);var ct=n.shapes;for(f=0;f<ct.length;f++)if(ct[f].showlegend){b.calc=!0;break}return(b.plot||b.calc)&&(b.layoutReplot=!0),{flags:b,rangesAltered:A,undoit:C,redoit:p,eventData:l}}function ide(e){var t=e._fullLayout,r=t.width,n=t.height;return e.layout.autosize&&es.plotAutoSize(e,e.layout,t),t.width!==r||t.height!==n}function OP(e,t,r,n){e=xa.getGraphDiv(e),Ih.clearPromiseQueue(e),xa.isPlainObject(t)||(t={}),xa.isPlainObject(r)||(r={}),Object.keys(t).length&&(e.changed=!0),Object.keys(r).length&&(e.changed=!0);var i=Ih.coerceTraceIndices(e,n),a=$he(e,xa.extendFlat({},t),i),o=a.flags,s=rde(e,xa.extendFlat({},r)),l=s.flags;(o.calc||l.calc)&&(e.calcdata=void 0),o.clearAxisTypes&&Ih.clearAxisTypes(e,i,r);var u=[];l.layoutReplot?u.push(Au.layoutReplot):o.fullReplot?u.push(Gl._doPlot):(u.push(es.previousPromises),Qhe(e,l,s)||es.supplyDefaults(e),o.style&&u.push(Au.doTraceStyle),(o.colorbars||l.colorbars)&&u.push(Au.doColorBars),l.legend&&u.push(Au.doLegend),l.layoutstyle&&u.push(Au.layoutStyles),l.axrange&&NP(u,s.rangesAltered),l.ticks&&u.push(Au.doTicksRelayout),l.modebar&&u.push(Au.doModeBar),l.camera&&u.push(Au.doCamera),u.push(GM)),u.push(es.rehover,es.redrag,es.reselect),np.add(e,OP,[e,a.undoit,s.undoit,a.traces],OP,[e,a.redoit,s.redoit,a.traces]);var c=xa.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 XN(e){return function(r){r._fullLayout._guiEditing=!0;var n=e.apply(null,arguments);return r._fullLayout._guiEditing=!1,n}}var pdt=[{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"}],gdt=[{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 Bhe(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 Nhe(e,t){var r=Ec(t,e).get();if(r!==void 0)return r;var n=e.split(".");for(n.pop();n.length>1;)if(n.pop(),r=Ec(t,n.join(".")+".uirevision").get(),r!==void 0)return r;return t.uirevision}function mdt(e,t){for(var r=0;r<t.length;r++)if(t[r]._fullInput.uid===e)return r;return-1}function ydt(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 Uhe(e,t){var r=xa.isPlainObject(e),n=Array.isArray(e);return r||n?(r&&xa.isPlainObject(t)||n&&Array.isArray(t))&&JSON.stringify(e)===JSON.stringify(t):e===t}function _dt(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=Bhe(a,pdt),u){if(d=u.head,v=u.tail,o=u.attr||d+".uirevision",s=Ec(n,o).get(),l=s&&Nhe(o,t),l&&l===s){if(c=i[a],c===null&&(c=void 0),f=Ec(t,a),h=f.get(),Uhe(h,c)){h===void 0&&v==="autorange"&&x.push(d),f.set(ky(Ec(n,a).get()));continue}else if(v==="autorange"||v.substr(0,6)==="range["){var C=i[d+".range[0]"],E=i[d+".range[1]"],A=i[d+".autorange"];if(A||A===null&&C===null&&E===null){if(!(d in b)){var L=Ec(t,d).get();b[d]=L&&(L.autorange||L.autorange!==!1&&(!L.range||L.range.length!==2))}if(b[d]){f.set(ky(Ec(n,a).get()));continue}}}}}else xa.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 k=x[_];if(p[k]){var M=Ec(t,k).get();M&&delete M.autorange}}var g=n._tracePreGUI;for(var P in g){var T=g[P],z=null,O;for(a in T){if(!z){var V=mdt(P,r);if(V<0){delete g[P];break}var G=r[V];O=G._fullInput;var Z=ydt(P,e,O.index);if(Z<0){delete g[P];break}z=e[Z]}if(u=Bhe(a,gdt),u){if(u.attr?(s=Ec(n,u.attr).get(),l=s&&Nhe(u.attr,t)):(s=O.uirevision,l=z.uirevision,l===void 0&&(l=t.uirevision)),l&&l===s&&(c=T[a],c===null&&(c=void 0),f=Ec(z,a),h=f.get(),Uhe(h,c))){f.set(ky(Ec(O,a).get()));continue}}else xa.warn("unrecognized GUI edit: "+a+" in trace uid "+P);delete T[a]}}}function xdt(e,t,r,n){var i,a;function o(){return Gl.addFrames(e,i)}e=xa.getGraphDiv(e),Ih.clearPromiseQueue(e);var s=e._fullData,l=e._fullLayout;if(!xa.isPlotDiv(e)||!s||!l)a=Gl.newPlot(e,t,r,n);else{if(xa.isPlainObject(t)){var u=t;t=u.data,r=u.layout,n=u.config,i=u.frames}var c=!1;if(n){var f=xa.extendDeep({},e._context);e._context=void 0,Hhe(e,n),c=WN(f,e._context)}e.data=t||[],Ih.cleanData(e.data),e.layout=r||{},Ih.cleanLayout(e.layout),_dt(e.data,e.layout,s,l),es.supplyDefaults(e,{skipUpdateCalc:!0});var h=e._fullData,d=e._fullLayout,v=d.datarevision===void 0,x=d.transition,b=wdt(e,l,d,v,x),p=b.newDataRevision,C=bdt(e,s,h,v,x,p);if(ide(e)&&(b.layoutReplot=!0),C.calc||b.calc){e.calcdata=void 0;for(var E=Object.getOwnPropertyNames(d),A=0;A<E.length;A++){var L=E[A],_=L.substring(0,5);if(_==="xaxis"||_==="yaxis"){var k=d[L]._emptyCategories;k&&k()}}}else es.supplyDefaultsUpdateCalc(e.calcdata,h);var M=[];if(i&&(e._transitionData={},es.createTransitionData(e),M.push(o)),d.transition&&!c&&(C.anim||b.anim))b.ticks&&M.push(Au.doTicksRelayout),es.doCalcdata(e),Au.doAutoRangeAndConstraints(e),M.push(function(){return es.transitionFromReact(e,C,b,l)});else if(C.fullReplot||b.layoutReplot||c)e._fullLayout._skipDefaults=!0,M.push(Gl._doPlot);else{for(var g in b.arrays){var P=b.arrays[g];if(P.length){var T=L0.getComponentMethod(g,"drawOne");if(T!==xa.noop)for(var z=0;z<P.length;z++)T(e,P[z]);else{var O=L0.getComponentMethod(g,"draw");if(O===xa.noop)throw new Error("cannot draw components: "+g);O(e)}}}M.push(es.previousPromises),C.style&&M.push(Au.doTraceStyle),(C.colorbars||b.colorbars)&&M.push(Au.doColorBars),b.legend&&M.push(Au.doLegend),b.layoutstyle&&M.push(Au.layoutStyles),b.axrange&&NP(M),b.ticks&&M.push(Au.doTicksRelayout),b.modebar&&M.push(Au.doModeBar),b.camera&&M.push(Au.doCamera),M.push(GM)}M.push(es.rehover,es.redrag,es.reselect),a=xa.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 bdt(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=BP.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,qP(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 wdt(e,t,r,n,i){var a=p_.layoutFlags();a.arrays={},a.rangesAltered={},a.nChanges=0,a.nChangesAnim=0;function o(h){return BP.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 qP(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 qP(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){xa.pushUnique(l.arrays[c],f);return}p_.update(l,i),V!=="none"&&l.nChanges++,n.transition&&i.anim&&l.nChangesAnim++,(ede.test(o)||tde.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 C=i.valType,E,A=d(i),L=Array.isArray(v),_=Array.isArray(x);if(L&&_){var k="_input_"+a,M=e[k],g=t[k];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 z=Math.min(v.length,x.length),O=Math.max(v.length,x.length);if(z!==O)if(i.editType==="arraydraw")T=!0;else{h();continue}for(E=0;E<z;E++)qP(v[E],x[E],b.concat(E),xa.extendFlat({inArray:a,arrayIndex:E},n));if(T)for(E=z;E<O;E++)P.push(E)}else!C&&xa.isPlainObject(v)?qP(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 WN(e,t){var r;for(r in e)if(r.charAt(0)!=="_"){var n=e[r],i=t[r];if(n!==i)if(xa.isPlainObject(n)&&xa.isPlainObject(i)){if(WN(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(xa.isPlainObject(n[a])&&xa.isPlainObject(i[a])){if(WN(n[a],i[a]))return!0}else return!0}else return!0}}function Tdt(e,t,r){if(e=xa.getGraphDiv(e),!xa.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=es.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 z=n._frameQueue.pop();z.onInterrupt&&z.onInterrupt()}e.emit("plotly_animationinterrupted",[])}}function h(z){if(z.length!==0){for(var O=0;O<z.length;O++){var V;z[O].type==="byname"?V=es.computeFrame(e,z[O].name):V=z[O].data;var G=s(O),Z=o(O);Z.duration=Math.min(Z.duration,G.duration);var H={frame:V,name:z[O].name,frameOpts:G,transitionOpts:Z};O===z.length-1&&(H.onComplete=l(u,2),H.onInterrupt=c),n._frameQueue.push(H)}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 z=n._currentFrame=n._frameQueue.shift();if(z){var O=z.name?z.name.toString():null;e._fullLayout._currentFrame=O,n._lastFrameAt=Date.now(),n._timeToNext=z.frameOpts.duration,es.transition(e,z.frame.data,z.frame.layout,Ih.coerceTraceIndices(e,z.frame.traces),z.frameOpts,z.transitionOpts).then(function(){z.onComplete&&z.onComplete()}),e.emit("plotly_animatingframe",{name:O,frame:z.frame,animation:{frame:z.frameOpts,transition:z.transitionOpts}})}else d()}function x(){e.emit("plotly_animating"),n._lastFrameAt=-1/0,n._timeToNext=0,n._runningTransitions=0,n._currentFrame=null;var z=function(){n._animationRaf=window.requestAnimationFrame(z),Date.now()-n._lastFrameAt>n._timeToNext&&v()};z()}var b=0;function p(z){return Array.isArray(i)?b>=i.length?z.transitionOpts=i[b]:z.transitionOpts=i[0]:z.transitionOpts=i,b++,z}var C,E,A=[],L=t==null,_=Array.isArray(t),k=!L&&!_&&xa.isPlainObject(t);if(k)A.push({type:"object",data:p(xa.extendFlat({},t))});else if(L||["string","number"].indexOf(typeof t)!==-1)for(C=0;C<n._frames.length;C++)E=n._frames[C],E&&(L||String(E.group)===String(t))&&A.push({type:"byname",name:String(E.name),data:p({name:E.name})});else if(_)for(C=0;C<t.length;C++){var M=t[C];["number","string"].indexOf(typeof M)!==-1?(M=String(M),A.push({type:"byname",name:M,data:p({name:M})})):xa.isPlainObject(M)&&A.push({type:"object",data:p(xa.extendFlat({},M))})}for(C=0;C<A.length;C++)if(E=A[C],E.type==="byname"&&!n._frameHash[E.data.name]){xa.warn('animate failure: frame not found: "'+E.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(C=0;C<A.length;C++)if(E=A[C],E.type==="byname"&&E.name===g){P=C;break}if(P>0&&P<A.length-1){var T=[];for(C=0;C<A.length;C++)E=A[C],(A[C].type!=="byname"||C>P)&&T.push(E);A=T}}A.length>0?h(A):(e.emit("plotly_animated"),u())})}function Adt(e,t,r){if(e=xa.getGraphDiv(e),t==null)return Promise.resolve();if(!xa.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(xa.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&&GN<qhe&&(GN++,xa.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.'),GN===qhe&&xa.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:es.supplyFrameDefaults(t[n]),index:r&&r[n]!==void 0&&r[n]!==null?r[n]:u+n})}c.sort(function(k,M){return k.index>M.index?-1:k.index<M.index?1:0});var b=[],p=[],C=s.length;for(n=c.length-1;n>=0;n--){if(i=c[n].frame,typeof i.name=="number"&&xa.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,C)),b.push({type:"insert",index:o,value:i}),p.unshift({type:"delete",index:o}),C++}var E=es.modifyFrames,A=es.modifyFrames,L=[e,p],_=[e,b];return np&&np.add(e,E,L,A,_),es.modifyFrames(e,b)}function Sdt(e,t){if(e=xa.getGraphDiv(e),!xa.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=es.modifyFrames,l=es.modifyFrames,u=[e,o],c=[e,a];return np&&np.add(e,s,u,l,c),es.modifyFrames(e,a)}function Mdt(e){e=xa.getGraphDiv(e);var t=e._fullLayout||{},r=e._fullData||[];return es.cleanPlot([],{},r,t),es.purge(e),HN.purge(e),t._container&&t._container.remove(),delete e._context,e}function Edt(e){var t=e._fullLayout,r=e.getBoundingClientRect();if(!xa.equalDomRects(r,t._lastBBox)){var n=t._invTransform=xa.inverseTransformMatrix(xa.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 Cdt(e){var t=IP.select(e),r=e._fullLayout;if(r._calcInverseTransform=Edt,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={};IP.selectAll("defs").each(function(){this.id&&(n[this.id.split("-")[1]]=1)}),r._uid=xa.randstr(n)}r._paperdiv.selectAll(".main-svg").attr(rdt.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")}Gl.animate=Tdt;Gl.addFrames=Adt;Gl.deleteFrames=Sdt;Gl.addTraces=Khe;Gl.deleteTraces=Jhe;Gl.extendTraces=Zhe;Gl.moveTraces=jN;Gl.prependTraces=Yhe;Gl.newPlot=udt;Gl._doPlot=adt;Gl.purge=Mdt;Gl.react=xdt;Gl.redraw=ldt;Gl.relayout=VM;Gl.restyle=FP;Gl.setPlotConfig=odt;Gl.update=OP;Gl._guiRelayout=XN(VM);Gl._guiRestyle=XN(FP);Gl._guiUpdate=XN(OP);Gl._storeDirectGUIEdit=ddt});var Ly=ye(Mm=>{"use strict";var kdt=qa();Mm.getDelay=function(e){return e._has&&(e._has("gl3d")||e._has("mapbox")||e._has("map"))?500:0};Mm.getRedrawFunc=function(e){return function(){kdt.getComponentMethod("colorbar","draw")(e)}};Mm.encodeSVG=function(e){return"data:image/svg+xml,"+encodeURIComponent(e)};Mm.encodeJSON=function(e){return"data:application/json,"+encodeURIComponent(e)};var nde=window.URL||window.webkitURL;Mm.createObjectURL=function(e){return nde.createObjectURL(e)};Mm.revokeObjectURL=function(e){return nde.revokeObjectURL(e)};Mm.createBlob=function(e,t){if(t==="svg")return new window.Blob([e],{type:"image/svg+xml;charset=utf-8"});if(t==="full-json")return new window.Blob([e],{type:"application/json;charset=utf-8"});var r=Ldt(window.atob(e));return new window.Blob([r],{type:"image/"+t})};Mm.octetStream=function(e){document.location.href="data:application/octet-stream"+e};function Ldt(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 VP=ye((Car,ade)=>{"use strict";var YN=Oa(),Mar=Dr(),Pdt=So(),Idt=Ca(),Ear=Wp(),ZN=/"/g,HM="TOBESTRIPPED",Rdt=new RegExp('("'+HM+")|("+HM+'")',"g");function Ddt(e){var t=YN.select("body").append("div").style({display:"none"}).html(""),r=e.replace(/(&[^;]*;)/gi,function(n){return n==="<"?"<":n==="&rt;"?">":n.indexOf("<")!==-1||n.indexOf(">")!==-1?"":t.html(n).text()});return t.remove(),r}function Fdt(e){return e.replace(/&(?!\w+;|\#[0-9]+;| \#x[0-9A-F]+;)/g,"&")}ade.exports=function(t,r,n){var i=t._fullLayout,a=i._paper,o=i._toppaper,s=i.width,l=i.height,u;a.insert("rect",":first-child").call(Pdt.setRect,0,0,s,l).call(Idt.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=YN.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(ZN,HM));var C=this.style.fontWeight;C&&(C==="normal"||C==="400")&&b.style("font-weight",void 0);var E=this.style.fontStyle;E&&E==="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=YN.select(this),p=this.style.fill;p&&p.indexOf("url(")!==-1&&b.style("fill",p.replace(ZN,HM));var C=this.style.stroke;C&&C.indexOf("url(")!==-1&&b.style("stroke",C.replace(ZN,HM))}),(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=Ddt(x),x=Fdt(x),x=x.replace(Rdt,"'"),x}});var GP=ye((kar,ode)=>{"use strict";var zdt=Dr(),Odt=vb().EventEmitter,jM=Ly();function qdt(e){var t=e.emitter||new Odt,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"||zdt.isSafari()?p=jM.encodeSVG(o):(b=jM.createBlob(o,"svg"),p=jM.createObjectURL(b)),l.width=h,l.height=d,x.onload=function(){var C;switch(b=null,jM.revokeObjectURL(p),s!=="svg"&&v.drawImage(x,0,0,h,d),s){case"jpeg":C=l.toDataURL("image/jpeg");break;case"png":C=l.toDataURL("image/png");break;case"webp":C=l.toDataURL("image/webp");break;case"svg":C=p;break;default:var E="Image format is not jpeg, png, svg or webp.";if(i(new Error(E)),!e.promise)return t.emit("error",E)}n(C),e.promise||t.emit("success",C)},x.onerror=function(C){if(b=null,jM.revokeObjectURL(p),i(C),!e.promise)return t.emit("error",C)},x.src=p});return e.promise?r:t}ode.exports=qdt});var JN=ye((Lar,ude)=>{"use strict";var sde=Eo(),lde=UP(),Bdt=Mc(),Em=Dr(),WM=Ly(),Ndt=VP(),Udt=GP(),Vdt=o6().version,KN={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 Gdt(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[_],KN[_])}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(KN.format.values,", "," or ")+".");var s={};function l(_,k){return Em.coerce(t,s,KN,_,k)}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&&sde(a.width)&&(b.width=a.width),f?b.height=f:t.height===null&&sde(a.height)&&(b.height=a.height);var p=Em.extendFlat({},i,{_exportedPlot:!0,staticPlot:!0,setBackground:d}),C=WM.getRedrawFunc(x);function E(){return new Promise(function(_){setTimeout(_,WM.getDelay(x._fullLayout))})}function A(){return new Promise(function(_,k){var M=Ndt(x,u,h),g=x._fullLayout.width,P=x._fullLayout.height;function T(){lde.purge(x),document.body.removeChild(x)}if(u==="full-json"){var z=Bdt.graphJson(x,!1,"keepdata","object",!0,!0);return z.version=Vdt,z=JSON.stringify(z),T(),_(v?z:WM.encodeJSON(z))}if(T(),u==="svg")return _(v?M:WM.encodeSVG(M));var O=document.createElement("canvas");O.id=Em.randstr(),Udt({format:u,width:g,height:P,scale:h,canvas:O,svg:M,promise:!0}).then(_).catch(k)})}function L(_){return v?_.replace(WM.IMAGE_URL_PREFIX,""):_}return new Promise(function(_,k){lde.newPlot(x,r,b,p).then(C).then(E).then(A).then(function(M){_(L(M))}).catch(function(M){k(M)})})}ude.exports=Gdt});var hde=ye((Par,fde)=>{"use strict";var P0=Dr(),Hdt=Mc(),jdt=_3(),Wdt=ub().dfltConfig,Lg=P0.isPlainObject,Vb=Array.isArray,$N=P0.isArrayOrTypedArray;fde.exports=function(t,r){t===void 0&&(t=[]),r===void 0&&(r={});var n=jdt.get(),i=[],a={_context:P0.extendFlat({},Wdt)},o,s;Vb(t)?(a.data=P0.extendDeep([],t),o=t):(a.data=[],o=[],i.push(md("array","data"))),Lg(r)?(a.layout=P0.extendDeep({},r),s=r):(a.layout={},s={},arguments.length>1&&i.push(md("object","layout"))),Hdt.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(md("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(md("invisible",h)),HP(f,d,x,i,h)}var b=a._fullLayout,p=Xdt(n,l);return HP(s,b,p,i,"layout"),i.length===0?void 0:i};function HP(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=Kdt(r,l),d=(h||{}).valType,v=d==="info_array",x=d==="colorscale",b=(h||{}).items;if(!Ydt(r,l))n.push(md("schema",i,u));else if(Lg(c)&&Lg(f)&&d!=="any")HP(c,f,h,n,i,u);else if(v&&Vb(c)){c.length>f.length&&n.push(md("unused",i,u.concat(f.length)));var p=f.length,C=Array.isArray(b);C&&(p=Math.min(p,b.length));var E,A,L,_,k;if(h.dimensions===2)for(A=0;A<p;A++)if(Vb(c[A])){c[A].length>f[A].length&&n.push(md("unused",i,u.concat(A,f[A].length)));var M=f[A].length;for(E=0;E<(C?Math.min(M,b[A].length):M);E++)L=C?b[A][E]:b,_=c[A][E],k=f[A][E],P0.validate(_,L)?k!==_&&k!==+_&&n.push(md("dynamic",i,u.concat(A,E),_,k)):n.push(md("value",i,u.concat(A,E),_))}else n.push(md("array",i,u.concat(A),c[A]));else for(A=0;A<p;A++)L=C?b[A]:b,_=c[A],k=f[A],P0.validate(_,L)?k!==_&&k!==+_&&n.push(md("dynamic",i,u.concat(A),_,k)):n.push(md("value",i,u.concat(A),_))}else if(h.items&&!v&&Vb(c)){var g=b[Object.keys(b)[0]],P=[],T,z;for(T=0;T<f.length;T++){var O=f[T]._index||T;if(z=u.slice(),z.push(O),Lg(c[O])&&Lg(f[T])){P.push(O);var V=c[O],G=f[T];Lg(V)&&V.visible!==!1&&G.visible===!1?n.push(md("invisible",i,z)):HP(V,G,g,n,i,z)}}for(T=0;T<c.length;T++)z=u.slice(),z.push(T),Lg(c[T])?P.indexOf(T)===-1&&n.push(md("unused",i,z)):n.push(md("object",i,z,c[T]))}else!Lg(c)&&Lg(f)?n.push(md("object",i,u,c)):!$N(c)&&$N(f)&&!v&&!x?n.push(md("array",i,u,c)):l in t?P0.validate(c,h)?h.valType==="enumerated"&&(h.coerceNumber&&c!==+f||!$N(c)&&c!==f||String(c)!==String(f))&&n.push(md("dynamic",i,u,c,f)):n.push(md("value",i,u,c)):n.push(md("unused",i,u,c))}return n}function Xdt(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 Zdt={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 md(e,t,r,n,i){r=r||"";var a,o;Vb(t)?(a=t[0],o=t[1]):(a=t,o=null);var s=$dt(r),l=Zdt[e](t,s,n,i);return P0.log(l),{code:e,container:a,trace:o,path:r,astr:s,msg:l}}function Ydt(e,t){var r=cde(t),n=r.keyMinusId,i=r.id;return n in e&&e[n]._isSubplotObj&&i?!0:t in e}function Kdt(e,t){if(t in e)return e[t];var r=cde(t);return e[r.keyMinusId]}var Jdt=P0.counterRegex("([a-z]+)");function cde(e){var t=e.match(Jdt);return{keyMinusId:t&&t[1],id:t&&t[2]}}function $dt(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 vde=ye((Iar,dde)=>{"use strict";var Qdt=Dr(),jP=Ly();function evt(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=jP.createBlob(e,r),u=jP.createObjectURL(l),n.href=u,n.download=t,document.body.appendChild(n),n.click(),document.body.removeChild(n),jP.revokeObjectURL(u),l=null,o(t);if(Qdt.isSafari()){var c=r==="svg"?",":";base64,";return jP.octetStream(c+encodeURIComponent(e)),o(t)}s(new Error("download error"))});return a}dde.exports=evt});var QN=ye((Dar,gde)=>{"use strict";var pde=Dr(),tvt=JN(),rvt=vde(),Rar=Ly();function ivt(e,t){var r;return pde.isPlainObject(e)||(r=pde.getGraphDiv(e)),t=t||{},t.format=t.format||"png",t.width=t.width||null,t.height=t.height||null,t.imageDataOnly=!0,new Promise(function(n,i){r&&r._snapshotInProgress&&i(new Error("Snapshotting already in progress.")),r&&(r._snapshotInProgress=!0);var a=tvt(e,t),o=t.filename||e.fn||"newplot";o+="."+t.format.replace("-","."),a.then(function(s){return r&&(r._snapshotInProgress=!1),rvt(s,o,t.format)}).then(function(s){n(s)}).catch(function(s){r&&(r._snapshotInProgress=!1),i(s)})})}gde.exports=ivt});var bde=ye(eU=>{"use strict";var Cp=Dr(),kp=Cp.isPlainObject,mde=_3(),yde=Mc(),nvt=Vl(),_de=pl(),xde=ub().dfltConfig;eU.makeTemplate=function(e){e=Cp.isPlainObject(e)?e:Cp.getGraphDiv(e),e=Cp.extendDeep({_context:xde},{data:e.data,layout:e.layout}),yde.supplyDefaults(e);var t=e.data||[],r=e.layout||{};r._basePlotModules=e._fullLayout._basePlotModules,r._modules=e._fullLayout._modules;var n={data:{},layout:{}};t.forEach(function(d){var v={};XM(d,v,ovt.bind(null,d));var x=Cp.coerce(d,{},nvt,"type"),b=n.data[x];b||(b=n.data[x]=[]),b.push(v)}),XM(r,n.layout,avt.bind(null,r)),delete n.layout.template;var i=r.template;if(kp(i)){var a=i.layout,o,s,l,u,c,f;kp(a)&&WP(a,n.layout);var h=i.data;if(kp(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++)WP(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 WP(e,t){e=Cp.extendDeep({},e);var r=Object.keys(e).sort(),n,i;function a(c,f,h){if(kp(f)&&kp(c))WP(c,f);else if(Array.isArray(f)&&Array.isArray(c)){var d=_de.arrayTemplater({_template:e},h);for(i=0;i<f.length;i++){var v=f[i],x=d.newItem(v)._template;x&&WP(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,XP(o)===o)for(var l in t){var u=XP(l);l!==u&&u===o&&!(l in e)&&a(s,t[l],o)}}}function XP(e){return e.replace(/[0-9]+$/,"")}function XM(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=XP(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&&kp(s))XM(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(kp(b)){var p=b.name;if(p)v[p]||(XM(b,t,r,I0(s,d,l),I0(s,d,u)),d++,v[p]=1);else if(!h){var C=_de.arrayDefaultKey(o),E=I0(e,C,n),A=I0(s,d,l);XM(b,t,r,A,I0(s,d,u));var L=Cp.nestedProperty(t,A),_=Cp.nestedProperty(t,E);_.set(L.get()),L.set(null),h=!0}}}else{var k=Cp.nestedProperty(t,l);k.set(s)}}}function avt(e,t){return mde.getLayoutValObject(e,Cp.nestedProperty({},t).parts)}function ovt(e,t){return mde.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}eU.validateTemplate=function(e,t){var r=Cp.extendDeep({},{_context:xde,data:e.data,layout:e.layout}),n=r.layout||{};kp(t)||(t=n.template||{});var i=t.layout,a=t.data,o=[];r.layout=n,r.layout.template=t,yde.supplyDefaults(r);var s=r._fullLayout,l=r._fullData,u={};function c(E,A){for(var L in E)if(L.charAt(0)!=="_"&&kp(E[L])){var _=XP(L),k=[],M;for(M=0;M<A.length;M++)k.push(I0(E,L,A[M])),_!==L&&k.push(I0(E,_,A[M]));for(M=0;M<k.length;M++)u[k[M]]=1;c(E[L],k)}}function f(E,A){for(var L in E)if(L.indexOf("defaults")===-1&&kp(E[L])){var _=I0(E,L,A);u[_]?f(E[L],_):o.push({code:"unused",path:_})}}if(kp(i)?(c(s,["layout"]),f(i,"layout")):o.push({code:"layout"}),!kp(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 C(E,A){for(var L in E)if(L.charAt(0)!=="_"){var _=E[L],k=I0(E,L,A);kp(_)?(Array.isArray(E)&&_._template===!1&&_.templateitemname&&o.push({code:"missing",path:k,templateitemname:_.templateitemname}),C(_,k)):Array.isArray(_)&&svt(_)&&C(_,k)}}if(C({data:l,layout:s},""),o.length)return o.map(lvt)};function svt(e){for(var t=0;t<e.length;t++)if(kp(e[t]))return!0}function lvt(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 Tde=ye(ef=>{"use strict";var Qh=UP();ef._doPlot=Qh._doPlot;ef.newPlot=Qh.newPlot;ef.restyle=Qh.restyle;ef.relayout=Qh.relayout;ef.redraw=Qh.redraw;ef.update=Qh.update;ef._guiRestyle=Qh._guiRestyle;ef._guiRelayout=Qh._guiRelayout;ef._guiUpdate=Qh._guiUpdate;ef._storeDirectGUIEdit=Qh._storeDirectGUIEdit;ef.react=Qh.react;ef.extendTraces=Qh.extendTraces;ef.prependTraces=Qh.prependTraces;ef.addTraces=Qh.addTraces;ef.deleteTraces=Qh.deleteTraces;ef.moveTraces=Qh.moveTraces;ef.purge=Qh.purge;ef.addFrames=Qh.addFrames;ef.deleteFrames=Qh.deleteFrames;ef.animate=Qh.animate;ef.setPlotConfig=Qh.setPlotConfig;var uvt=OS().getGraphDiv,cvt=aP().eraseActiveShape;ef.deleteActiveShape=function(e){return cvt(uvt(e))};ef.toImage=JN();ef.validate=hde();ef.downloadImage=QN();var wde=bde();ef.makeTemplate=wde.makeTemplate;ef.validateTemplate=wde.validateTemplate});var K3=ye((Oar,Ade)=>{"use strict";var tU=Dr(),fvt=qa();Ade.exports=function(t,r,n,i){var a=i("x"),o=i("y"),s,l=fvt.getComponentMethod("calendars","handleTraceDefaults");if(l(t,r,["x","y"],n),a){var u=tU.minRowLength(a);o?s=Math.min(u,tU.minRowLength(o)):(s=u,i("y0"),i("dy"))}else{if(!o)return 0;s=tU.minRowLength(o),i("x0"),i("dx")}return r._length=s,s}});var Pg=ye((qar,Ede)=>{"use strict";var Sde=Dr().dateTick0,hvt=hs(),dvt=hvt.ONEWEEK;function Mde(e,t){return e%dvt===0?Sde(t,1):Sde(t,0)}Ede.exports=function(t,r,n,i,a){if(a||(a={x:!0,y:!0}),a.x){var o=i("xperiod");o&&(i("xperiod0",Mde(o,r.xcalendar)),i("xperiodalignment"))}if(a.y){var s=i("yperiod");s&&(i("yperiod0",Mde(s,r.ycalendar)),i("yperiodalignment"))}}});var Lde=ye((Bar,kde)=>{"use strict";var Cde=["orientation","groupnorm","stackgaps"];kde.exports=function(t,r,n,i){var a=n._scatterStackOpts,o=i("stackgroup");if(o){var s=r.xaxis+r.yaxis,l=a[s];l||(l=a[s]={});var u=l[o],c=!1;u?u.traces.push(r):(u=l[o]={traceIndices:[],traces:[r]},c=!0);for(var f={orientation:r.x&&!r.y?"h":"v"},h=0;h<Cde.length;h++){var d=Cde[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 C=u.traces[p];C._input.fill!==C.fill&&(C.fill=u.fillDflt)}}}return u}}});var $p=ye((Nar,Dde)=>{"use strict";var Pde=Ca(),Ide=Dv().hasColorscale,Rde=Jh(),vvt=Ru();Dde.exports=function(t,r,n,i,a,o){var s=vvt.isBubble(t),l=(t.line||{}).color,u;if(o=o||{},l&&(n=l),a("marker.symbol"),a("marker.opacity",s?.7:1),a("marker.size"),o.noAngle||(a("marker.angle"),o.noAngleRef||a("marker.angleref"),o.noStandOff||a("marker.standoff")),a("marker.color",n),Ide(t,"marker")&&Rde(t,r,i,a,{prefix:"marker.",cLetter:"c"}),o.noSelect||(a("selected.marker.color"),a("unselected.marker.color"),a("selected.marker.size"),a("unselected.marker.size")),o.noLine||(l&&!Array.isArray(l)&&r.marker.color!==l?u=l:s?u=Pde.background:u=Pde.defaultLine,a("marker.line.color",u),Ide(t,"marker.line")&&Rde(t,r,i,a,{prefix:"marker.line.",cLetter:"c"}),a("marker.line.width",s?1:0)),s&&(a("marker.sizeref"),a("marker.sizemin"),a("marker.sizemode")),o.gradient){var c=a("marker.gradient.type");c!=="none"&&a("marker.gradient.color")}}});var R0=ye((Uar,Fde)=>{"use strict";var pvt=Dr().isArrayOrTypedArray,gvt=Dv().hasColorscale,mvt=Jh();Fde.exports=function(t,r,n,i,a,o){o||(o={});var s=(t.marker||{}).color;if(s&&s._inputArray&&(s=s._inputArray),a("line.color",n),gvt(t,"line"))mvt(t,r,i,a,{prefix:"line.",cLetter:"c"});else{var l=(pvt(s)?!1:s)||n;a("line.color",l)}a("line.width"),o.noDash||a("line.dash"),o.backoff&&a("line.backoff")}});var J3=ye((Var,zde)=>{"use strict";zde.exports=function(t,r,n){var i=n("line.shape");i==="spline"&&n("line.smoothing")}});var D0=ye((Gar,Ode)=>{"use strict";var yvt=Dr();Ode.exports=function(e,t,r,n,i){i=i||{},n("textposition"),yvt.coerceFont(n,"textfont",i.font||r.font,i),i.noSelect||(n("selected.textfont.color"),n("unselected.textfont.color"))}});var Ig=ye((Har,Bde)=>{"use strict";var ZP=Ca(),qde=Dr().isArrayOrTypedArray;function _vt(e){for(var t=ZP.interpolate(e[0][1],e[1][1],.5),r=2;r<e.length;r++){var n=ZP.interpolate(e[r-1][1],e[r][1],.5);t=ZP.interpolate(t,n,e[r-1][0]/e[r][0])}return t}Bde.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&&!qde(s)?o=s:l&&!qde(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=_vt(f))}}i("fillcolor",ZP.addOpacity((r.line||{}).color||o||u||n,.5))}});var Gde=ye((jar,Vde)=>{"use strict";var Nde=Dr(),xvt=qa(),bvt=pf(),wvt=Sm(),$3=Ru(),Tvt=K3(),Avt=Pg(),Svt=Lde(),Mvt=$p(),Evt=R0(),Ude=J3(),Cvt=D0(),kvt=Ig(),Lvt=Dr().coercePattern;Vde.exports=function(t,r,n,i){function a(d,v){return Nde.coerce(t,r,bvt,d,v)}var o=Tvt(t,r,i,a);if(o||(r.visible=!1),!!r.visible){Avt(t,r,i,a),a("xhoverformat"),a("yhoverformat"),a("zorder");var s=Svt(t,r,i,a);i.scattermode==="group"&&r.orientation===void 0&&a("orientation","v");var l=!s&&o<wvt.PTS_LINESONLY?"lines+markers":"lines";a("text"),a("hovertext"),a("mode",l),$3.hasMarkers(r)&&Mvt(t,r,n,i,a,{gradient:!0}),$3.hasLines(r)&&(Evt(t,r,n,i,a,{backoff:!0}),Ude(t,r,a),a("connectgaps"),a("line.simplify")),$3.hasText(r)&&(a("texttemplate"),Cvt(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"&&(kvt(t,r,n,a,{moduleHasFillgradient:!0}),$3.hasLines(r)||Ude(t,r,a),Lvt(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=xvt.getComponentMethod("errorbars","supplyDefaults");h(t,r,c||f||n,{axis:"y"}),h(t,r,c||f||n,{axis:"x",inherit:"y"}),Nde.coerceSelectionMarkerOpacity(r,a)}}});var Gb=ye((War,Hde)=>{"use strict";var Pvt=Bb().getAxisGroup;Hde.exports=function(t,r,n,i,a){var o=r.orientation,s=r[{v:"x",h:"y"}[o]+"axis"],l=Pvt(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 rU=ye((Xar,jde)=>{"use strict";var Ivt=Dr(),Rvt=Gb(),Dvt=pf();jde.exports=function(t,r){var n,i,a,o=r.scattermode;function s(h){return Ivt.coerce(i._input,i,Dvt,h)}if(r.scattermode==="group")for(a=0;a<t.length;a++)i=t[a],i.type==="scatter"&&(n=i._input,Rvt(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 Xde=ye((Zar,Wde)=>{"use strict";var Fvt=Dr(),zvt=j6();Wde.exports=function(e,t){function r(i,a){return Fvt.coerce(e,t,zvt,i,a)}var n=t.barmode==="group";t.scattermode==="group"&&r("scattergap",n?t.bargap:.2)}});var Rg=ye((Yar,Yde)=>{"use strict";var Ovt=Eo(),Zde=Dr(),qvt=Zde.dateTime2ms,YP=Zde.incrementMonth,Bvt=hs(),Nvt=Bvt.ONEAVGMONTH;Yde.exports=function(t,r,n,i){if(r.type!=="date")return{vals:i};var a=t[n+"periodalignment"];if(!a)return{vals:i};var o=t[n+"period"],s;if(Ovt(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=qvt(h,u)||0,v=[],x=[],b=[],p=i.length,C=0;C<p;C++){var E=i[C],A,L,_;if(s){for(A=Math.round((E-d)/(s*Nvt)),_=YP(d,s*A,u);_>E;)_=YP(_,-s,u);for(;_<=E;)_=YP(_,s,u);L=YP(_,-s,u)}else{for(A=Math.round((E-d)/o),_=d+A*o;_>E;)_-=o;for(;_<=E;)_+=o;L=_-o}v[C]=c?L:f?_:(L+_)/2,x[C]=L,b[C]=_}return{vals:v,starts:x,ends:b}}});var F0=ye((Kar,Jde)=>{"use strict";var iU=Dv().hasColorscale,nU=Fv(),Kde=Ru();Jde.exports=function(t,r){Kde.hasLines(r)&&iU(r,"line")&&nU(t,r,{vals:r.line.color,containerStr:"line",cLetter:"c"}),Kde.hasMarkers(r)&&(iU(r,"marker")&&nU(t,r,{vals:r.marker.color,containerStr:"marker",cLetter:"c"}),iU(r,"marker.line")&&nU(t,r,{vals:r.marker.line.color,containerStr:"marker.line",cLetter:"c"}))}});var Cm=ye((Jar,$de)=>{"use strict";var Yf=Dr();$de.exports=function(t,r){for(var n=0;n<t.length;n++)t[n].i=n;Yf.mergeArray(r.text,t,"tx"),Yf.mergeArray(r.texttemplate,t,"txt"),Yf.mergeArray(r.hovertext,t,"htx"),Yf.mergeArray(r.customdata,t,"data"),Yf.mergeArray(r.textposition,t,"tp"),r.textfont&&(Yf.mergeArrayCastPositive(r.textfont.size,t,"ts"),Yf.mergeArray(r.textfont.color,t,"tc"),Yf.mergeArray(r.textfont.family,t,"tf"),Yf.mergeArray(r.textfont.weight,t,"tw"),Yf.mergeArray(r.textfont.style,t,"ty"),Yf.mergeArray(r.textfont.variant,t,"tv"),Yf.mergeArray(r.textfont.textcase,t,"tC"),Yf.mergeArray(r.textfont.lineposition,t,"tE"),Yf.mergeArray(r.textfont.shadow,t,"tS"));var i=r.marker;if(i){Yf.mergeArrayCastPositive(i.size,t,"ms"),Yf.mergeArrayCastPositive(i.opacity,t,"mo"),Yf.mergeArray(i.symbol,t,"mx"),Yf.mergeArray(i.angle,t,"ma"),Yf.mergeArray(i.standoff,t,"mf"),Yf.mergeArray(i.color,t,"mc");var a=i.line;i.line&&(Yf.mergeArray(a.color,t,"mlc"),Yf.mergeArrayCastPositive(a.width,t,"mlw"));var o=i.gradient;o&&o.type!=="none"&&(Yf.mergeArray(o.type,t,"mgt"),Yf.mergeArray(o.color,t,"mgc"))}}});var z0=ye(($ar,eve)=>{"use strict";var Qde=Dr();eve.exports=function(t,r){Qde.isArrayOrTypedArray(r.selectedpoints)&&Qde.tagSelected(t,r)}});var O0=ye((Qar,sve)=>{"use strict";var tve=Eo(),oU=Dr(),ZM=ho(),rve=Rg(),aU=hs().BADNUM,sU=Ru(),Uvt=F0(),Vvt=Cm(),Gvt=z0();function Hvt(e,t){var r=e._fullLayout,n=t._xA=ZM.getFromId(e,t.xaxis||"x","x"),i=t._yA=ZM.getFromId(e,t.yaxis||"y","y"),a=n.makeCalcdata(t,"x"),o=i.makeCalcdata(t,"y"),s=rve(t,n,"x",a),l=rve(t,i,"y",o),u=s.vals,c=l.vals,f=t._length,h=new Array(f),d=t.ids,v=lU(t,r,n,i),x=!1,b,p,C,E,A,L;ave(r,t);var _="x",k="y",M;if(v)oU.pushUnique(v.traceIndices,t.index),b=v.orientation==="v",b?(k="s",M="x"):(_="s",M="y"),A=v.stackgaps==="interpolate";else{var g=nve(t,f);ive(e,t,n,i,u,c,g)}var P=!!t.xperiodalignment,T=!!t.yperiodalignment;for(p=0;p<f;p++){var z=h[p]={},O=tve(u[p]),V=tve(c[p]);O&&V?(z[_]=u[p],z[k]=c[p],P&&(z.orig_x=a[p],z.xEnd=s.ends[p],z.xStart=s.starts[p]),T&&(z.orig_y=o[p],z.yEnd=l.ends[p],z.yStart=l.starts[p])):v&&(b?O:V)?(z[M]=b?u[p]:c[p],z.gap=!0,A?(z.s=aU,x=!0):z.s=0):z[_]=z[k]=aU,d&&(z.id=String(d[p]))}if(Vvt(h,t),Uvt(e,t),Gvt(h,t),v){for(p=0;p<h.length;)h[p][M]===aU?h.splice(p,1):p++;if(oU.sort(h,function(N,j){return N[M]-j[M]||N.i-j.i}),x){for(p=0;p<h.length-1&&h[p].gap;)p++;for(L=h[p].s,L||(L=h[p].s=0),C=0;C<p;C++)h[C].s=L;for(E=h.length-1;E>p&&h[E].gap;)E--;for(L=h[E].s,C=h.length-1;C>E;C--)h[C].s=L;for(;p<E;)if(p++,h[p].gap){for(C=p+1;h[C].gap;)C++;for(var G=h[p-1][M],Z=h[p-1].s,H=(h[C].s-Z)/(h[C][M]-G);p<C;)h[p].s=Z+(h[p][M]-G)*H,p++}}}return h}function ive(e,t,r,n,i,a,o){var s=t._length,l=e._fullLayout,u=r._id,c=n._id,f=l._firstScatter[ove(t)]===t.uid,h=(lU(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"||!sU.hasMarkers(t)&&!sU.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]=ZM.findExtremes(r,i,v)),c&&(t._extremes[c]=ZM.findExtremes(n,a,x))}function nve(e,t){if(sU.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)},oU.isArrayOrTypedArray(r.size)){var a={type:"linear"};ZM.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 ave(e,t){var r=ove(t),n=e._firstScatter;n[r]||(n[r]=t.uid)}function ove(e){var t=e.stackgroup;return e.xaxis+e.yaxis+e.type+(t?"-"+t:"")}function lU(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}}sve.exports={calc:Hvt,calcMarkerSize:nve,calcAxisExpansion:ive,setFirstScatter:ave,getStackOpts:lU}});var uve=ye((eor,lve)=>{"use strict";lve.exports=KP;var jvt=Dr().distinctVals;function KP(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=jvt(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={}}KP.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};KP.prototype.get=function(t,r,n){var i=this.getLabel(t,r,n);return this.bins[i]||0};KP.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 Hb=ye((tor,dve)=>{"use strict";var q0=Eo(),g_=Dr().isArrayOrTypedArray,Q3=hs().BADNUM,Wvt=qa(),YM=ho(),Xvt=Bb().getAxisGroup,JP=uve();function Zvt(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&&Wvt.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};cU(e,r,n,l,d),cU(e,n,r,s,d)}function cU(e,t,r,n,i){if(n.length){var a,o,s,l,u;switch(Jvt(r,n),i.mode){case"overlay":uU(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&&$vt(e,t,r,o,i),a.length&&uU(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);Kvt(o),o.length&&Qvt(e,t,r,o,i),a.length&&uU(e,t,r,a,i);break}Yvt(n),apt(n,t)}}function Yvt(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=q0(a)?+a:+a.slice(0,-1),s=q0(a)?"px":"%",i.cornerradiusvalue=o,i.cornerradiusform=s))}function Kvt(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=q0(a)?+a:+a.slice(0,-1),s=q0(a)?"px":"%",t=0;t<e.length;t++)r=e[t],i=r[0].t,i.cornerradiusvalue=o,i.cornerradiusform=s}}function Jvt(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),q0(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=q0(s);for(s=c?s:0,n=0;n<i.length;n++)i[n].b=s,c&&(i[n].hasB=1)}}}function uU(e,t,r,n,i){for(var a=0;a<n.length;a++){var o=n[a],s=new JP([o],{posAxis:t,sepNegVal:!1,overlapNoMerge:!i.norm});fU(e,t,s,i),i.norm?(hve(s),hU(r,s,i)):fve(r,s)}}function $vt(e,t,r,n,i){var a=new JP(n,{posAxis:t,sepNegVal:!1,overlapNoMerge:!i.norm});fU(e,t,a,i),ipt(a,t),i.norm?(hve(a),hU(r,a,i)):fve(r,a)}function Qvt(e,t,r,n,i){var a=new JP(n,{posAxis:t,sepNegVal:i.mode==="relative",overlapNoMerge:!(i.norm||i.mode==="stack"||i.mode==="relative")});fU(e,t,a,i),rpt(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&&hU(r,a,i)}function fU(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=Xvt(i,t._id)+l[0][0].trace.orientation;x=i._alignmentOpts[b]||{}}for(var p=0;p<u;p++){var C=l[p],E=C[0].trace;if(t._id!=="angularaxis"){var A=x[E.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*E._offsetIndex+1-L)*h-d)/2:v=c?((2*p+1-u)*h-d)/2:-d/2}var _=C[0].t;_.barwidth=d,_.offsetindex=E._offsetIndex||0,_.poffset=v,_.bargroupwidth=f,_.bardelta=s}r.binWidth=l[0][0].t.barwidth/100,ept(r),tpt(t,r),t._id==="angularaxis"?cve(t,r):cve(t,r,c)}function ept(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++)q0(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++)q0(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 tpt(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 cve(e,t,r){var n=t.traces,i=t.minDiff,a=i/2;YM.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,C=g_(b),E=g_(p);for(v=0;v<s.length;v++){f=s[v];var A=C?b[v]:b,L=E?p[v]:p;h=f.p+A,d=h+L,c.push(h,d)}}u._extremes[e._id]=YM.findExtremes(e,c,{padded:!1})}}function fve(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]=YM.findExtremes(e,u,{tozero:c,padded:!0})}}function rpt(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]=YM.findExtremes(e,h,{tozero:!0,padded:!0}))}}function hve(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 ipt(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 JP([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 hU(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 q0(e.c2l(_))&&(_<s-o||_>l+o||!q0(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 C=f[p];if(C.s!==Q3){var E=Math.abs(a/t.get(C.p,h,C.s));C.b*=E,C.s*=E;var A=C.b,L=A+C.s;C[i]=L,v.push(L),b=b||u(L),C.hasB&&(v.push(A),b=b||u(A)),(!C.hasB||!C.b)&&(x=!0)}}d._extremes[e._id]=YM.findExtremes(e,v,{tozero:x,padded:b})}}function npt(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 apt(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;q0(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],C=p[r]-p.w/2;if(q0(C)){var E=p[r]+p.w/2,A=f(p.p);n[A]?n[A]=[Math.min(C,n[A][0]),Math.max(E,n[A][1])]:n[A]=[C,E]}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,k=p[r];h[k]=k in h?Math.min(h[k],L):L,d[k]=k in d?Math.max(d[k],_):_}}}v&&npt(e,h,d,t)}function eT(e){return e._id.charAt(0)}dve.exports={crossTraceCalc:Zvt,setGroupPositions:cU}});var mve=ye((ror,gve)=>{"use strict";var vve=O0(),pve=Hb().setGroupPositions;function opt(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};pve(e,r,n,l,f),pve(e,n,r,s,f)}gve.exports=function(t,r){t._fullLayout.scattermode==="group"&&opt(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,C,E,A,L,_;for(var k in o){p=o[k];var M=p.traceIndices;if(M.length){for(C=p.stackgaps==="interpolate",E=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++)dU(h,u,g[c],l,_,C,A),u++;if(v!==g[c]){for(f=0;f<l;f++)dU(s[M[f]],c,v,f,_,C,A);g.splice(c,0,v)}c++}for(;c<g.length;c++)dU(h,u,g[c],l,_,C,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(E)for(b=(E==="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 z=h[0].trace,O=vve.calcMarkerSize(z,z._rawLength),V=Array.isArray(O);if(O&&_[l]||V){var G=O;for(O=new Array(P),u=0;u<P;u++)O[u]=h[u].gap?0:V?G[h[u].i]:G}var Z=new Array(P),H=new Array(P);for(u=0;u<P;u++)Z[u]=h[u].x,H[u]=h[u].y;vve.calcAxisExpansion(t,z,n,i,Z,H,O),h[0].t.orientation=p.orientation}}}}};function dU(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=spt(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 spt(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 pU=ye((ior,Tve)=>{"use strict";var lpt=So(),bve=hs(),KM=bve.BADNUM,wve=bve.LOG_CLIP,yve=wve+.5,_ve=wve-.5,$P=Dr(),upt=$P.segmentsIntersect,xve=$P.constrain,vU=Sm();Tve.exports=function(t,r){var n=r.trace||{},i=r.xaxis,a=r.yaxis,o=i.type==="log",s=a.type==="log",l=i._length,u=a._length,c=r.backoff,f=n.marker,h=r.connectGaps,d=r.baseTolerance,v=r.shape,x=v==="linear",b=n.fill&&n.fill!=="none",p=[],C=vU.minTolerance,E=t.length,A=new Array(E),L=0,_,k,M,g,P,T,z,O,V,G,Z,H,N,j,re,oe;function _e(dt){var Ge=t[dt];if(!Ge)return!1;var Je=r.linearized?i.l2p(Ge.x):i.c2p(Ge.x),je=r.linearized?a.l2p(Ge.y):a.c2p(Ge.y);if(Je===KM){if(o&&(Je=i.c2p(Ge.x,!0)),Je===KM)return!1;s&&je===KM&&(Je*=Math.abs(i._m*u*(i._m>0?yve:_ve)/(a._m*l*(a._m>0?yve:_ve)))),Je*=1e3}if(je===KM){if(s&&(je=a.c2p(Ge.y,!0)),je===KM)return!1;je*=1e3}return[Je,je]}function Me(dt,Ge,Je,je){var $e=Je-dt,wt=je-Ge,Ie=.5-dt,xe=.5-Ge,Ce=$e*$e+wt*wt,vt=$e*Ie+wt*xe;if(vt>0&&vt<Ce){var nr=Ie*wt-xe*$e;if(nr*nr<Ce)return!0}}var ke,me;function ie(dt,Ge){var Je=dt[0]/l,je=dt[1]/u,$e=Math.max(0,-Je,Je-1,-je,je-1);return $e&&ke!==void 0&&Me(Je,je,ke,me)&&($e=0),$e&&Ge&&Me(Je,je,Ge[0]/l,Ge[1]/u)&&($e=0),(1+vU.toleranceGrowth*$e)*d}function Se(dt,Ge){var Je=dt[0]-Ge[0],je=dt[1]-Ge[1];return Math.sqrt(Je*Je+je*je)}var Le=vU.maxScreensAway,Ae=-l*Le,De=l*(1+Le),Pe=-u*Le,ge=u*(1+Le),Fe=[[Ae,Pe,De,Pe],[De,Pe,De,ge],[De,ge,Ae,ge],[Ae,ge,Ae,Pe]],ce,Ze,ct,pt,Wt,st;function lt(dt,Ge){for(var Je=[],je=0,$e=0;$e<4;$e++){var wt=Fe[$e],Ie=upt(dt[0],dt[1],Ge[0],Ge[1],wt[0],wt[1],wt[2],wt[3]);Ie&&(!je||Math.abs(Ie.x-Je[0][0])>1||Math.abs(Ie.y-Je[0][1])>1)&&(Ie=[Ie.x,Ie.y],je&&Se(Ie,dt)<Se(Je[0],dt)?Je.unshift(Ie):Je.push(Ie),je++)}return Je}function Gt(dt){if(dt[0]<Ae||dt[0]>De||dt[1]<Pe||dt[1]>ge)return[xve(dt[0],Ae,De),xve(dt[1],Pe,ge)]}function Nt(dt,Ge){if(dt[0]===Ge[0]&&(dt[0]===Ae||dt[0]===De)||dt[1]===Ge[1]&&(dt[1]===Pe||dt[1]===ge))return!0}function $t(dt,Ge){var Je=[],je=Gt(dt),$e=Gt(Ge);return je&&$e&&Nt(je,$e)||(je&&Je.push(je),$e&&Je.push($e)),Je}function sr(dt,Ge,Je){return function(je,$e){var wt=Gt(je),Ie=Gt($e),xe=[];if(wt&&Ie&&Nt(wt,Ie))return xe;wt&&xe.push(wt),Ie&&xe.push(Ie);var Ce=2*$P.constrain((je[dt]+$e[dt])/2,Ge,Je)-((wt||je)[dt]+(Ie||$e)[dt]);if(Ce){var vt;wt&&Ie?vt=Ce>0==wt[dt]>Ie[dt]?wt:Ie:vt=wt||Ie,vt[dt]+=Ce}return xe}}var wr;v==="linear"||v==="spline"?wr=lt:v==="hv"||v==="vh"?wr=$t:v==="hvh"?wr=sr(0,Ae,De):v==="vhv"&&(wr=sr(1,Pe,ge));function ur(dt,Ge){var Je=Ge[0]-dt[0],je=(Ge[1]-dt[1])/Je,$e=(dt[1]*Ge[0]-Ge[1]*dt[0])/Je;return $e>0?[je>0?Ae:De,ge]:[je>0?De:Ae,Pe]}function Qe(dt){var Ge=dt[0],Je=dt[1],je=Ge===A[L-1][0],$e=Je===A[L-1][1];if(!(je&&$e))if(L>1){var wt=Ge===A[L-2][0],Ie=Je===A[L-2][1];je&&(Ge===Ae||Ge===De)&&wt?Ie?L--:A[L-1]=dt:$e&&(Je===Pe||Je===ge)&&Ie?wt?L--:A[L-1]=dt:A[L++]=dt}else A[L++]=dt}function Et(dt){A[L-1][0]!==dt[0]&&A[L-1][1]!==dt[1]&&Qe([ct,pt]),Qe(dt),Wt=null,ct=pt=0}var er=$P.isArrayOrTypedArray(f);function Ut(dt){if(dt&&c&&(dt.i=_,dt.d=t,dt.trace=n,dt.marker=er?f[dt.i]:f,dt.backoff=c),ke=dt[0]/l,me=dt[1]/u,ce=dt[0]<Ae?Ae:dt[0]>De?De:0,Ze=dt[1]<Pe?Pe:dt[1]>ge?ge:0,ce||Ze){if(!L)A[L++]=[ce||dt[0],Ze||dt[1]];else if(Wt){var Ge=wr(Wt,dt);Ge.length>1&&(Et(Ge[0]),A[L++]=Ge[1])}else st=wr(A[L-1],dt)[0],A[L++]=st;var Je=A[L-1];ce&&Ze&&(Je[0]!==ce||Je[1]!==Ze)?(Wt&&(ct!==ce&&pt!==Ze?Qe(ct&&pt?ur(Wt,dt):[ct||ce,pt||Ze]):ct&&pt&&Qe([ct,pt])),Qe([ce,Ze])):ct-ce&&pt-Ze&&Qe([ce||ct,Ze||pt]),Wt=dt,ct=ce,pt=Ze}else Wt&&Et(wr(Wt,dt)[0]),A[L++]=dt}for(_=0;_<E;_++)if(k=_e(_),!!k){for(L=0,Wt=null,Ut(k),_++;_<E;_++){if(g=_e(_),!g){if(h)continue;break}if(!x||!r.simplify){Ut(g);continue}var Ft=_e(_+1);if(G=Se(g,k),!(!(b&&(L===0||L===E-1))&&G<ie(g,Ft)*C)){for(O=[(g[0]-k[0])/G,(g[1]-k[1])/G],P=k,Z=G,H=j=re=0,z=!1,M=g,_++;_<t.length;_++){if(T=Ft,Ft=_e(_+1),!T){if(h)continue;break}if(V=[T[0]-k[0],T[1]-k[1]],oe=V[0]*O[1]-V[1]*O[0],j=Math.min(j,oe),re=Math.max(re,oe),re-j>ie(T,Ft))break;M=T,N=V[0]*O[0]+V[1]*O[1],N>Z?(Z=N,g=T,z=!1):N<H&&(H=N,P=T,z=!0)}if(z?(Ut(g),M!==P&&Ut(P)):(P!==k&&Ut(P),M!==g&&Ut(g)),Ut(M),_>=t.length||!T)break;Ut(T),k=T}}Wt&&Qe([ct||Wt[0],pt||Wt[1]]),p.push(A.slice(0,L))}var bt=v.slice(v.length-1);if(c&&bt!=="h"&&bt!=="v"){for(var yt=!1,Yt=-1,lr=[],Tr=0;Tr<p.length;Tr++)for(var Rr=0;Rr<p[Tr].length-1;Rr++){var ei=p[Tr][Rr],Wr=p[Tr][Rr+1],Ur=lpt.applyBackoff(Wr,ei);(Ur[0]!==Wr[0]||Ur[1]!==Wr[1])&&(yt=!0),lr[Yt+1]||(Yt++,lr[Yt]=[ei,[Ur[0],Ur[1]]])}return yt?lr:p}return p}});var gU=ye((nor,Sve)=>{"use strict";var Ave={tonextx:1,tonexty:1,tonext:1};Sve.exports=function(t,r,n){var i,a,o,s,l,u={},c=!1,f=-1,h=0,d=-1;for(a=0;a<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 Ave&&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 C=b[0].trace,E=p[0].trace;return C._groupIndex-E._groupIndex||C.index-E.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 Ave&&(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((aor,Cve)=>{"use strict";var Dg=Oa(),cpt=qa(),JM=Dr(),tT=JM.ensureSingle,Eve=JM.identity,Kf=So(),rT=Ru(),fpt=pU(),hpt=gU(),QP=MM().tester;Cve.exports=function(t,r,n,i,a,o){var s,l,u=!a,c=!!a&&a.duration>0,f=hpt(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(),dpt(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){Mve(t,v,r,d,f,this,a)})})}else s.each(function(d,v){Mve(t,v,r,d,f,this,a)});u&&s.exit().remove(),i.selectAll("path:not([d])").remove()};function dpt(e,t,r){t.each(function(n){var i=tT(Dg.select(this),"g","fills");Kf.setClipUrl(i,r.layerClipId,e);var a=n[0].trace,o=[];a._ownfill&&o.push("_ownFill"),a._nexttrace&&o.push("_nextFill");var s=i.selectAll("g").data(o,Eve);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 Mve(e,t,r,n,i,a,o){var s=e._context.staticPlot,l;vpt(e,t,r,n,i);var u=!!o&&o.duration>0;function c(sr){return u?sr.transition():sr}var f=r.xaxis,h=r.yaxis,d=n[0].trace,v=d.line,x=Dg.select(a),b=tT(x,"g","errorbars"),p=tT(x,"g","lines"),C=tT(x,"g","points"),E=tT(x,"g","text");if(cpt.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 k,M;_==="y"?(k=1,M=h.c2p(0,!0)):_==="x"&&(k=0,M=f.c2p(0,!0)),n[0][r.isRangePlot?"nodeRangePlot3":"node3"]=x;var g="",P=[],T=d._prevtrace,z=null,O=null;T&&(g=T._prevRevpath||"",L=T._nextFill,P=T._ownPolygons,z=T._fillsegments,O=T._fillElement);var V,G,Z="",H="",N,j,re,oe,_e,Me,ke=[];d._polygons=[];var me=[],ie=[],Se=JM.noop;if(A=d._ownFill,rT.hasLines(d)||d.fill!=="none"){L&&L.datum(n),["hv","vh","hvh","vhv"].indexOf(v.shape)!==-1?(N=Kf.steps(v.shape),j=Kf.steps(v.shape.split("").reverse().join(""))):v.shape==="spline"?N=j=function(sr){var wr=sr[sr.length-1];return sr.length>1&&sr[0][0]===wr[0]&&sr[0][1]===wr[1]?Kf.smoothclosed(sr.slice(1),v.smoothing):Kf.smoothopen(sr,v.smoothing)}:N=j=function(sr){return"M"+sr.join("L")},re=function(sr){return j(sr.reverse())},ie=fpt(n,{xaxis:f,yaxis:h,trace:d,connectGaps:d.connectgaps,baseTolerance:Math.max(v.width||1,3)/4,shape:v.shape,backoff:v.backoff,simplify:v.simplify,fill:d.fill}),me=new Array(ie.length);var Le=0;for(l=0;l<ie.length;l++){var Ae,De=ie[l];!Ae||!_?(Ae=De.slice(),me[Le]=Ae,Le++):Ae.push.apply(Ae,De)}d._fillElement=null,d._fillExclusionElement=O,d._fillsegments=me.slice(0,Le),me=d._fillsegments,ie.length&&(oe=ie[0][0].slice(),_e=ie[ie.length-1],Me=_e[_e.length-1].slice()),Se=function(sr){return function(wr){if(V=N(wr),G=re(wr),Z?_?(Z+="L"+V.substr(1),H=G+("L"+H.substr(1))):(Z+="Z"+V,H=G+"Z"+H):(Z=V,H=G),rT.hasLines(d)){var ur=Dg.select(this);if(ur.datum(n),sr)c(ur.style("opacity",0).attr("d",V).call(Kf.lineGroupStyle)).style("opacity",1);else{var Qe=c(ur);Qe.attr("d",V),Kf.singleLineStyle(n,Qe)}}}}}var Pe=p.selectAll(".js-line").data(ie);c(Pe.exit()).style("opacity",0).remove(),Pe.each(Se(!1)),Pe.enter().append("path").classed("js-line",!0).style("vector-effect",s?"none":"non-scaling-stroke").call(Kf.lineGroupStyle).each(Se(!0)),Kf.setClipUrl(Pe,r.layerClipId,e);function ge(sr){c(sr).attr("d","M0,0Z")}var Fe=function(){var sr=new Array(me.length);for(l=0;l<me.length;l++)sr[l]=QP(me[l]);return sr},ce=function(sr){var wr,ur;if(!sr||sr.length===0)for(wr=new Array(me.length),ur=0;ur<me.length;ur++){var Qe=me[ur][0].slice(),Et=me[ur][me[ur].length-1].slice();Qe[k]=Et[k]=M;var er=[Et,Qe],Ut=er.concat(me[ur]);wr[ur]=QP(Ut)}else{for(wr=new Array(sr.length-1+me.length),ur=0;ur<sr.length-1;ur++)wr[ur]=QP(sr[ur]);var Ft=sr[sr.length-1].slice();for(Ft.reverse(),ur=0;ur<me.length;ur++)wr[sr.length-1+ur]=QP(me[ur].concat(Ft))}return wr};ie.length?(A?(A.datum(n),oe&&Me&&(_?(oe[k]=Me[k]=M,c(A).attr("d","M"+Me+"L"+oe+"L"+Z.substr(1)).call(Kf.singleFillStyle,e),ke=ce(null)):(c(A).attr("d",Z+"Z").call(Kf.singleFillStyle,e),ke=Fe())),d._polygons=ke,d._fillElement=A):L&&(d.fill.substr(0,6)==="tonext"&&Z&&g?(d.fill==="tonext"?(c(L).attr("d",Z+"Z"+g+"Z").call(Kf.singleFillStyle,e),ke=Fe(),d._polygons=ke.concat(P)):(c(L).attr("d",Z+"L"+g.substr(1)+"Z").call(Kf.singleFillStyle,e),ke=ce(z),d._polygons=ke),d._fillElement=L):ge(L)),d._prevRevpath=H):(A?ge(A):L&&ge(L),d._prevRevpath=null),d._ownPolygons=ke;function Ze(sr){return sr.filter(function(wr){return!wr.gap&&wr.vis})}function ct(sr){return sr.filter(function(wr){return wr.vis})}function pt(sr){return sr.filter(function(wr){return!wr.gap})}function Wt(sr){return sr.id}function st(sr){if(sr.ids)return Wt}function lt(){return!1}function Gt(sr,wr,ur){var Qe,Et,er,Ut=ur[0].trace,Ft=rT.hasMarkers(Ut),bt=rT.hasText(Ut),yt=st(Ut),Yt=lt,lr=lt;if(Ft||bt){var Tr=Eve,Rr=Ut.stackgroup,ei=Rr&&e._fullLayout._scatterStackOpts[f._id+h._id][Rr].stackgaps==="infer zero";Ut.marker.maxdisplayed||Ut._needsCull?Tr=ei?ct:Ze:Rr&&!ei&&(Tr=pt),Ft&&(Yt=Tr),bt&&(lr=Tr)}Et=sr.selectAll("path.point"),Qe=Et.data(Yt,yt);var Wr=Qe.enter().append("path").classed("point",!0);u&&Wr.call(Kf.pointStyle,Ut,e).call(Kf.translatePoints,f,h).style("opacity",0).transition().style("opacity",1),Qe.order();var Ur;Ft&&(Ur=Kf.makePointStyleFns(Ut)),Qe.each(function(dt){var Ge=Dg.select(this),Je=c(Ge);er=Kf.translatePoint(dt,Je,f,h),er?(Kf.singlePointStyle(dt,Je,Ut,Ur,e),r.layerClipId&&Kf.hideOutsideRangePoint(dt,Je,f,h,Ut.xcalendar,Ut.ycalendar),Ut.customdata&&Ge.classed("plotly-customdata",dt.data!==null&&dt.data!==void 0)):Je.remove()}),u?Qe.exit().transition().style("opacity",0).remove():Qe.exit().remove(),Et=wr.selectAll("g"),Qe=Et.data(lr,yt),Qe.enter().append("g").classed("textpoint",!0).append("text"),Qe.order(),Qe.each(function(dt){var Ge=Dg.select(this),Je=c(Ge.select("text"));er=Kf.translatePoint(dt,Je,f,h),er?r.layerClipId&&Kf.hideOutsideRangePoint(dt,Ge,f,h,Ut.xcalendar,Ut.ycalendar):Ge.remove()}),Qe.selectAll("text").call(Kf.textPointStyle,Ut,e).each(function(dt){var Ge=f.c2p(dt.x),Je=h.c2p(dt.y);Dg.select(this).selectAll("tspan.line").each(function(){c(Dg.select(this)).attr({x:Ge,y:Je})})}),Qe.exit().remove()}C.datum(n),E.datum(n),Gt(C,E,n);var Nt=d.cliponaxis===!1,$t=Nt?null:r.layerClipId;Kf.setClipUrl(C,$t,e),Kf.setClipUrl(E,$t,e)}function vpt(e,t,r,n,i){var a=r.xaxis,o=r.yaxis,s=Dg.extent(JM.simpleMap(a.range,a.r2c)),l=Dg.extent(JM.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 $d=ye((oor,kve)=>{"use strict";kve.exports={container:"marker",min:"cmin",max:"cmax"}});var tI=ye((sor,Lve)=>{"use strict";var eI=ho();Lve.exports=function(t,r,n){var i={},a={_fullLayout:n},o=eI.getFromTrace(a,r,"x"),s=eI.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=eI.tickText(o,o.c2l(l),!0).text,i.yLabel=eI.tickText(s,s.c2l(u),!0).text,i}});var ap=ye((lor,Pve)=>{"use strict";var mU=Oa(),nT=So(),ppt=qa();function gpt(e){var t=mU.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=mU.select(this),i=r.trace||r[0].trace;yU(n,i,e)}),t.selectAll("g.text").each(function(r){var n=mU.select(this),i=r.trace||r[0].trace;_U(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),ppt.getComponentMethod("errorbars","style")(t)}function yU(e,t,r){nT.pointStyle(e.selectAll("path.point"),t,r)}function _U(e,t,r){nT.textPointStyle(e.selectAll("text"),t,r)}function mpt(e,t,r){var n=t[0].trace;n.selectedpoints?(nT.selectedPointStyle(r.selectAll("path.point"),n),nT.selectedTextStyle(r.selectAll("text"),n)):(yU(r,n,e),_U(r,n,e))}Pve.exports={style:gpt,stylePoints:yU,styleText:_U,styleOnSelect:mpt}});var oT=ye((uor,Ive)=>{"use strict";var aT=Ca(),ypt=Ru();Ive.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)&&ypt.hasLines(t)&&t.line.width?n:t.fillcolor)}});var sT=ye((cor,Dve)=>{"use strict";var rI=Dr(),Rve=vf(),_pt=qa(),xpt=oT(),xU=Ca(),bpt=rI.fillText;Dve.exports=function(t,r,n,i){var a=t.cd,o=a[0].trace,s=t.xa,l=t.ya,u=s.c2p(r),c=l.c2p(n),f=[u,c],h=o.hoveron||"",d=o.mode.indexOf("markers")!==-1?3:.5,v=!!o.xperiodalignment,x=!!o.yperiodalignment;if(h.indexOf("points")!==-1){var b=function(H){if(v){var N=s.c2p(H.xStart),j=s.c2p(H.xEnd);return u>=Math.min(N,j)&&u<=Math.max(N,j)?0:1/0}var re=Math.max(3,H.mrc||0),oe=1-1/re,_e=Math.abs(s.c2p(H.x)-u);return _e<re?oe*_e/re:_e-re+oe},p=function(H){if(x){var N=l.c2p(H.yStart),j=l.c2p(H.yEnd);return c>=Math.min(N,j)&&c<=Math.max(N,j)?0:1/0}var re=Math.max(3,H.mrc||0),oe=1-1/re,_e=Math.abs(l.c2p(H.y)-c);return _e<re?oe*_e/re:_e-re+oe},C=function(H){var N=Math.max(d,H.mrc||0),j=s.c2p(H.x)-u,re=l.c2p(H.y)-c;return Math.max(Math.sqrt(j*j+re*re)-N,1-d/N)},E=Rve.getDistanceFunction(i,b,p,C);if(Rve.getClosest(a,E,t),t.index!==!1){var A=a[t.index],L=s.c2p(A.x,!0),_=l.c2p(A.y,!0),k=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 rI.extendFlat(t,{color:xpt(o,A),x0:L-k,x1:L+k,xLabelVal:P,y0:_-k,y1:_+k,yLabelVal:T,spikeDistance:C(A),hovertemplate:o.hovertemplate}),bpt(A,o,t),_pt.getComponentMethod("errorbars","hoverInfo")(A,o,t),[t]}}function z(H){if(!H)return!1;var N=H.node();try{var j=new DOMPoint(f[0],f[1]);return N.isPointInFill(j)}catch(oe){var re=N.ownerSVGElement.createSVGPoint();return re.x=f[0],re.y=f[1],N.isPointInFill(re)}}function O(H){var N,j=[],re=1/0,oe=-1/0,_e=1/0,Me=-1/0,ke;for(N=0;N<H.length;N++){var me=H[N];me.contains(f)&&(j.push(me),_e=Math.min(_e,me.ymin),Me=Math.max(Me,me.ymax))}if(j.length===0)return null;_e=Math.max(_e,0),Me=Math.min(Me,l._length),ke=(_e+Me)/2;var ie,Se,Le,Ae,De,Pe,ge;for(N=0;N<j.length;N++)for(Se=j[N].pts,ie=1;ie<Se.length;ie++)Pe=Se[ie-1][1],ge=Se[ie][1],Pe>ke!=ge>=ke&&(Ae=Se[ie-1][0],De=Se[ie][0],ge-Pe&&(Le=Ae+(De-Ae)*(ke-Pe)/(ge-Pe),re=Math.min(re,Le),oe=Math.max(oe,Le)));return re=Math.max(re,0),oe=Math.min(oe,s._length),{x0:re,x1:oe,y0:ke,y1:ke}}if(h.indexOf("fills")!==-1&&o._fillElement){var V=z(o._fillElement)&&!z(o._fillExclusionElement);if(V){var G=O(o._polygons);G===null&&(G={x0:f[0],x1:f[0],y0:f[1],y1:f[1]});var Z=xU.defaultLine;return xU.opacity(o.fillcolor)?Z=o.fillcolor:xU.opacity((o.line||{}).color)&&(Z=o.line.color),rI.extendFlat(t,{distance:t.maxHoverDistance,x0:G.x0,x1:G.x1,y0:G.y0,y1:G.y1,color:Z,hovertemplate:!1}),delete t.index,o.text&&!rI.isArrayOrTypedArray(o.text)?t.text=String(o.text):t.text=o.name,[t]}}}});var lT=ye((hor,zve)=>{"use strict";var Fve=Ru();zve.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=[],s=n[0].trace,l,u,c,f,h=!Fve.hasMarkers(s)&&!Fve.hasText(s);if(h)return[];if(r===!1)for(l=0;l<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 qve=ye((dor,Ove)=>{"use strict";Ove.exports={xaxis:{valType:"subplotid",dflt:"x",editType:"calc+clearAxisTypes"},yaxis:{valType:"subplotid",dflt:"y",editType:"calc+clearAxisTypes"}}});var wU=ye((vor,Uve)=>{"use strict";var $M=qa().traceIs,bU=L3();Uve.exports=function(t,r,n,i){n("autotypenumbers",i.autotypenumbersDflt);var a=n("type",(i.splomStash||{}).type);a==="-"&&(wpt(r,i.data),r.type==="-"?r.type="linear":t.type=r.type)};function wpt(e,t){if(e.type==="-"){var r=e._id,n=r.charAt(0),i;r.indexOf("scene")!==-1&&(r=n);var a=Tpt(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:!$M(a,"cartesian")||$M(a,"noMultiCategory")};if(a.type==="box"&&a._hasPreCompStats&&n==={h:"x",v:"y"}[a.orientation||"v"]&&(l.noMultiCategory=!0),l.autotypenumbers=e.autotypenumbers,Nve(a,n)){var u=Bve(a),c=[];for(i=0;i<t.length;i++){var f=t[i];!$M(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=bU(c,s,l)}else if(a.type==="splom"){var h=a.dimensions,d=h[a._axesDim[r]];d.visible&&(e.type=bU(d.values,s,l))}else e.type=bU(a[n]||[a[n+"0"]],s,l)}}}function Tpt(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(Nve(i,r))return i;if((i[r]||[]).length||i[r+"0"])return i}}}function Bve(e){return{v:"x",h:"y"}[e.orientation||"v"]}function Nve(e,t){var r=Bve(e),n=$M(e,"box-violin"),i=$M(e._fullInput||{},"candlestick");return n&&!i&&t===r&&e[r]===void 0&&e[r+"0"]===void 0}});var iI=ye((por,Vve)=>{"use strict";var Apt=vv().isTypedArraySpec;function Spt(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)}Vve.exports=function(t,r,n,i){if(r.type==="category"){var a=t.categoryarray,o=Array.isArray(a)&&a.length>0||Apt(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=Spt(r,i).sort(),l==="category ascending"?r._initialCategories=u:l==="category descending"&&(r._initialCategories=u.reverse()))}}});var QM=ye((gor,Hve)=>{"use strict";var Gve=cd().mix,Mpt=Eh(),Ept=Dr();Hve.exports=function(t,r,n,i){i=i||{};var a=i.dfltColor;function o(M,g){return Ept.coerce2(t,r,i.attributes,M,g)}var s=o("linecolor",a),l=o("linewidth"),u=n("showline",i.showLine||!!s||!!l);u||(delete r.linecolor,delete r.linewidth);var c=Gve(a,i.bgColor,i.blend||Mpt.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=Gve(r.gridcolor,i.bgColor,67).toRgbString(),b=o("minor.gridcolor",x),p=o("minor.gridwidth",r.gridwidth||1),C=o("minor.griddash",r.griddash||"solid"),E=n("minor.showgrid",!!b||!!p||!!C);E||(delete r.minor.gridcolor,delete r.minor.gridwidth,delete r.minor.griddash)}if(!i.noZeroLine){var A=o("zerolinelayer"),L=o("zerolinecolor",a),_=o("zerolinewidth"),k=n("zeroline",i.showGrid||!!L||!!_);k||(delete r.zerolinelayer,delete r.zerolinecolor,delete r.zerolinewidth)}}});var t4=ye((mor,Kve)=>{"use strict";var jve=Eo(),Cpt=qa(),e4=Dr(),kpt=pl(),Lpt=Yd(),TU=Rd(),Wve=xb(),Xve=T3(),Ppt=t_(),Ipt=r_(),Rpt=iI(),Dpt=QM(),Fpt=gB(),Zve=ym(),nI=hd().WEEKDAY_PATTERN,zpt=hd().HOUR_PATTERN;Kve.exports=function(t,r,n,i,a){var o=i.letter,s=i.font||{},l=i.splomStash||{},u=n("visible",!i.visibleDflt),c=r._template||{},f=r.type||c.type||"-",h;if(f==="date"){var d=Cpt.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=e4.coerce(t,r,{ticklabelposition:{valType:"enumerated",dflt:"outside",values:h==="period"?["outside","inside"]:o==="x"?["outside","inside","outside left","inside left","outside right","inside right"]:["outside","inside","outside top","inside top","outside bottom","inside bottom"]}},"ticklabelposition")),i.noTicklabeloverflow||n("ticklabeloverflow",v.indexOf("inside")!==-1?"hide past domain":f==="category"||f==="multicategory"?"allow":"hide past div"),Zve(r,a),Fpt(t,r,n,i),Rpt(t,r,n,i),i.noHover||(f!=="category"&&n("hoverformat"),i.noUnifiedhovertitle||n("unifiedhovertitle.text"));var x=n("color"),b=x!==TU.color.dflt?x:s.color,p=l.label||a._dfltTitle[o];if(Ipt(t,r,n,f,i),!u)return r;n("title.text",p),e4.coerceFont(n,"title.font",s,{overrideDflt:{size:e4.bigFont(s.size),color:b}}),Wve(t,r,n,f);var C=i.hasMinor;if(C&&(kpt.newContainer(r,"minor"),Wve(t,r,n,f,{isMinor:!0})),Ppt(t,r,n,f,i),Xve(t,r,n,i),C){var E=i.isMinor;i.isMinor=!0,Xve(t,r,n,i),i.isMinor=E}Dpt(t,r,n,{dfltColor:x,bgColor:i.bgColor,showGrid:i.showGrid,hasMinor:C,attributes:TU}),C&&!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)&&(A?(n("tickson","boundaries"),delete r.ticklabelposition):n("tickson")),A){var L=n("showdividers");L&&(n("dividercolor"),n("dividerwidth"))}if(f==="date")if(Lpt(t,r,{name:"rangebreaks",inclusionAttr:"enabled",handleItemDefaults:Opt}),!r.rangebreaks.length)delete r.rangebreaks;else{for(var _=0;_<r.rangebreaks.length;_++)if(r.rangebreaks[_].pattern===nI){r._hasDayOfWeekBreaks=!0;break}if(Zve(r,a),a._has("scattergl")||a._has("splom"))for(var k=0;k<i.data.length;k++){var M=i.data[k];(M.type==="scattergl"||M.type==="splom")&&(M.visible=!1,e4.warn(M.type+" traces do not work on axes with rangebreaks. Setting trace "+M.index+" to `visible: false`."))}}return r};function Opt(e,t,r){function n(h,d){return e4.coerce(e,t,TU.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=Yve(a[s]),l){o=nI;break}}var u=n("pattern",o);if(u===nI)for(s=0;s<2;s++)l=Yve(a[s]),l&&(t.bounds[s]=a[s]=l-1);if(u)for(s=0;s<2;s++)switch(l=a[s],u){case nI:if(!jve(l)){t.enabled=!1;return}if(l=+l,l!==Math.floor(l)||l<0||l>=7){t.enabled=!1;return}t.bounds[s]=a[s]=l;break;case zpt:if(!jve(l)){t.enabled=!1;return}if(l=+l,l<0||l>24){t.enabled=!1;return}t.bounds[s]=a[s]=l;break}if(r.autorange===!1){var c=r.range;if(c[0]<c[1]){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 qpt={sun:1,mon:2,tue:3,wed:4,thu:5,fri:6,sat:7};function Yve(e){if(typeof e=="string")return qpt[e.substr(0,3).toLowerCase()]}});var oI=ye((yor,Jve)=>{"use strict";var Bpt=Eo(),aI=Dr();Jve.exports=function(t,r,n,i){var a=i.counterAxes||[],o=i.overlayableAxes||[],s=i.letter,l=i.grid,u=i.overlayingDomain,c,f,h,d,v,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||(Bpt(t.position)?"free":a[0]||"free"),h=h||(s==="x"?"bottom":"left"),d=d||0,v=0,x=!1;var b=aI.coerce(t,r,{anchor:{valType:"enumerated",values:["free"].concat(a),dflt:c}},"anchor"),p=aI.coerce(t,r,{side:{valType:"enumerated",values:s==="x"?["bottom","top"]:["left","right"],dflt:h}},"side");if(b==="free"){if(s==="y"){var C=n("autoshift");C&&(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 E=!1;if(o.length&&(E=aI.coerce(t,r,{overlaying:{valType:"enumerated",values:[!1].concat(o),dflt:!1}},"overlaying")),!E){var A=n("domain",f);A[0]>A[1]-1/4096&&(r.domain=f),aI.noneOrAll(t.domain,r.domain,f),r.tickmode==="sync"&&(r.tickmode="auto")}return n("layer"),r}});var ope=ye((_or,ape)=>{"use strict";var jb=Dr(),$ve=Ca(),Npt=rp().isUnifiedHover,Upt=UB(),Qve=pl(),Vpt=s3(),epe=Rd(),Gpt=wU(),tpe=t4(),Hpt=Bb(),rpe=oI(),SU=hf(),km=SU.id2name,ipe=SU.name2id,jpt=hd().AX_ID_PATTERN,npe=qa(),sI=npe.traceIs,AU=npe.getComponentMethod;function lI(e,t,r){Array.isArray(e[t])?e[t].push(r):e[t]=[r]}ape.exports=function(t,r,n){var i=r.autotypenumbers,a={},o={},s={},l={},u={},c={},f={},h={},d={},v={},x,b;for(x=0;x<n.length;x++){var p=n[x];if(sI(p,"cartesian")){var C;if(p.xaxis)C=km(p.xaxis),lI(a,C,p);else if(p.xaxes)for(b=0;b<p.xaxes.length;b++)lI(a,km(p.xaxes[b]),p);var E;if(p.yaxis)E=km(p.yaxis),lI(a,E,p);else if(p.yaxes)for(b=0;b<p.yaxes.length;b++)lI(a,km(p.yaxes[b]),p);if(p.type==="funnel"?p.orientation==="h"?(C&&(o[C]=!0),E&&(f[E]=!0)):E&&(s[E]=!0):p.type==="image"?(E&&(h[E]=!0),C&&(h[C]=!0)):(E&&(u[E]=!0,c[E]=!0),(!sI(p,"carpet")||p.type==="carpet"&&!p._cheater)&&C&&(l[C]=!0)),p.type==="carpet"&&p._cheater&&C&&(o[C]=!0),sI(p,"2dMap")&&(d[C]=!0,d[E]=!0),sI(p,"oriented")){var A=p.orientation==="h"?E:C;v[A]=!0}}}var L=r._subplots,_=L.xaxis,k=L.yaxis,M=jb.simpleMap(_,km),g=jb.simpleMap(k,km),P=M.concat(g),T=$ve.background;_.length&&k.length&&(T=jb.coerce(t,r,Vpt,"plot_bgcolor"));var z=$ve.combine(T,r.paper_bgcolor),O,V,G,Z,H;function N(){var Et=a[O]||[];H._traceIndices=Et.map(function(er){return er.index}),H._annIndices=[],H._shapeIndices=[],H._selectionIndices=[],H._imgIndices=[],H._subplotsWith=[],H._counterAxes=[],H._name=H._attr=O,H._id=V}function j(Et,er){return jb.coerce(Z,H,epe,Et,er)}function re(Et,er){return jb.coerce2(Z,H,epe,Et,er)}function oe(Et){return Et==="x"?k:_}function _e(Et,er){for(var Ut=Et==="x"?M:g,Ft=[],bt=0;bt<Ut.length;bt++){var yt=Ut[bt];yt!==er&&!(t[yt]||{}).overlaying&&Ft.push(ipe(yt))}return Ft}var Me={x:oe("x"),y:oe("y")},ke=Me.x.concat(Me.y),me={},ie=[];function Se(){var Et=Z.matches;jpt.test(Et)&&ke.indexOf(Et)===-1&&(me[Et]=Z.type,ie=Object.keys(me))}var Le=Upt(t,r),Ae=Npt(Le);for(x=0;x<P.length;x++){O=P[x],V=ipe(O),G=O.charAt(0),jb.isPlainObject(t[O])||(t[O]={}),Z=t[O],H=Qve.newContainer(r,O,G+"axis"),N();var De=G==="x"&&!l[O]&&o[O]||G==="y"&&!u[O]&&s[O],Pe=G==="y"&&(!c[O]&&f[O]||h[O]),ge={hasMinor:!0,letter:G,font:r.font,outerTicks:d[O],showGrid:!v[O],data:a[O]||[],bgColor:z,calendar:r.calendar,automargin:!0,visibleDflt:De,reverseDflt:Pe,autotypenumbersDflt:i,splomStash:((r._splomAxes||{})[G]||{})[V],noAutotickangles:G==="y"};j("uirevision",r.uirevision),Gpt(Z,H,j,ge),tpe(Z,H,j,ge,r);var Fe=Ae&&G===Le.charAt(0),ce=re("spikecolor",Ae?H.color:void 0),Ze=re("spikethickness",Ae?1.5:void 0),ct=re("spikedash",Ae?"dot":void 0),pt=re("spikemode",Ae?"across":void 0),Wt=re("spikesnap"),st=j("showspikes",!!Fe||!!ce||!!Ze||!!ct||!!pt||!!Wt);st||(delete H.spikecolor,delete H.spikethickness,delete H.spikedash,delete H.spikemode,delete H.spikesnap);var lt=km(Z.overlaying),Gt=[0,1];if(r[lt]!==void 0){var Nt=km(r[lt].anchor);r[Nt]!==void 0&&(Gt=r[Nt].domain)}rpe(Z,H,j,{letter:G,counterAxes:Me[G],overlayableAxes:_e(G,O),grid:r.grid,overlayingDomain:Gt}),j("title.standoff"),Se(),H._input=Z}for(x=0;x<ie.length;){V=ie[x++],O=km(V),G=O.charAt(0),jb.isPlainObject(t[O])||(t[O]={}),Z=t[O],H=Qve.newContainer(r,O,G+"axis"),N();var $t={letter:G,font:r.font,outerTicks:d[O],showGrid:!v[O],data:[],bgColor:z,calendar:r.calendar,automargin:!0,visibleDflt:!1,reverseDflt:!1,autotypenumbersDflt:i,splomStash:((r._splomAxes||{})[G]||{})[V]};j("uirevision",r.uirevision),H.type=me[V]||"linear",tpe(Z,H,j,$t,r),rpe(Z,H,j,{letter:G,counterAxes:Me[G],overlayableAxes:_e(G,O),grid:r.grid}),j("fixedrange"),j("modebardisable"),Se(),H._input=Z}var sr=AU("rangeslider","handleDefaults"),wr=AU("rangeselector","handleDefaults");for(x=0;x<M.length;x++)O=M[x],Z=t[O],H=r[O],sr(t,r,O),H.type==="date"&&wr(Z,H,r,g,H.calendar),j("fixedrange"),j("modebardisable");for(x=0;x<g.length;x++){O=g[x],Z=t[O],H=r[O];var ur=r[km(H.anchor)],Qe=AU("rangeslider","isVisible")(ur);j("fixedrange",Qe),j("modebardisable")}Hpt.handleDefaults(t,r,{axIds:ke.concat(ie).sort(SU.idSort),axHasImage:h})}});var upe=ye((xor,lpe)=>{"use strict";var Wpt=Oa(),spe=qa(),uI=Dr(),Qp=So(),cI=ho();lpe.exports=function(t,r,n,i){var a=t._fullLayout;if(r.length===0){cI.redrawComponents(t);return}function o(b){var p=b.xaxis,C=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,C._offset).call(Qp.setScale,1,1);var E=b.plot.selectAll(".scatterlayer .trace");E.selectAll(".point").call(Qp.setPointGroupScale,1,1),E.selectAll(".textpoint").call(Qp.setTextPointsScale,1,1),E.call(Qp.hideOutsideRangePoints,b)}function s(b,p){var C=b.plotinfo,E=C.xaxis,A=C.yaxis,L=E._length,_=A._length,k=!!b.xr1,M=!!b.yr1,g=[];if(k){var P=uI.simpleMap(b.xr0,E.r2l),T=uI.simpleMap(b.xr1,E.r2l),z=P[1]-P[0],O=T[1]-T[0];g[0]=(P[0]*(1-p)+p*T[0]-P[0])/(P[1]-P[0])*L,g[2]=L*(1-p+p*O/z),E.range[0]=E.l2r(P[0]*(1-p)+p*T[0]),E.range[1]=E.l2r(P[1]*(1-p)+p*T[1])}else g[0]=0,g[2]=L;if(M){var V=uI.simpleMap(b.yr0,A.r2l),G=uI.simpleMap(b.yr1,A.r2l),Z=V[1]-V[0],H=G[1]-G[0];g[1]=(V[1]*(1-p)+p*G[1]-V[1])/(V[0]-V[1])*_,g[3]=_*(1-p+p*H/Z),A.range[0]=E.l2r(V[0]*(1-p)+p*G[0]),A.range[1]=A.l2r(V[1]*(1-p)+p*G[1])}else g[1]=0,g[3]=_;cI.drawOne(t,E,{skipTitle:!0}),cI.drawOne(t,A,{skipTitle:!0}),cI.redrawComponents(t,[E._id,A._id]);var N=k?L/g[2]:1,j=M?_/g[3]:1,re=k?g[0]:0,oe=M?g[1]:0,_e=k?g[0]/g[2]*L:0,Me=M?g[1]/g[3]*_:0,ke=E._offset-_e,me=A._offset-Me;C.clipRect.call(Qp.setTranslate,re,oe).call(Qp.setScale,1/N,1/j),C.plot.call(Qp.setTranslate,ke,me).call(Qp.setScale,N,j),Qp.setPointGroupScale(C.zoomScalePts,1/N,1/j),Qp.setTextPointsScale(C.zoomScaleTxt,1/N,1/j)}var l;i&&(l=i());function u(){for(var b={},p=0;p<r.length;p++){var C=r[p],E=C.plotinfo.xaxis,A=C.plotinfo.yaxis;C.xr1&&(b[E._name+".range"]=C.xr1.slice()),C.yr1&&(b[A._name+".range"]=C.yr1.slice())}return l&&l(),spe.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 C=r[p],E=C.plotinfo.xaxis,A=C.plotinfo.yaxis;C.xr0&&(b[E._name+".range"]=C.xr0.slice()),C.yr0&&(b[A._name+".range"]=C.yr0.slice())}return spe.call("relayout",t,b).then(function(){for(var L=0;L<r.length;L++)o(r[L].plotinfo)})}var f,h,d,v=Wpt.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),C=0;C<r.length;C++)s(r[C],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 vh=ye(yv=>{"use strict";var hI=Oa(),cpe=qa(),Wb=Dr(),Xpt=Mc(),Zpt=So(),fpe=Id().getModuleCalcData,m_=hf(),Fg=hd(),Ypt=Wp(),nu=Wb.ensureSingle;function fI(e,t,r){return Wb.ensureSingle(e,t,r,function(n){n.datum(r)})}var Xb=Fg.zindexSeparator;yv.name="cartesian";yv.attr=["xaxis","yaxis"];yv.idRoot=["x","y"];yv.idRegex=Fg.idRegex;yv.attrRegex=Fg.attrRegex;yv.attributes=qve();yv.layoutAttributes=Rd();yv.supplyLayoutDefaults=ope();yv.transitionAxes=upe();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,Fg.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,Fg.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(Fg.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(Xb)!==-1)continue;d+=Xb+(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],C=p[0].trace;c===(C.zorder||0)&&C.xaxis+C.yaxis===f&&((t.indexOf(C.index)!==-1||C.carpet)&&(x&&x[0].trace.xaxis+x[0].trace.yaxis===f&&["tonextx","tonexty","tonext"].indexOf(C.fill)!==-1&&v.indexOf(x)===-1&&v.push(x),v.push(p)),x=p)}hpe(e,h,v,r,n)}}};function hpe(e,t,r,n,i){for(var a=Fg.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,C=cpe.modules[p].categories;if(C.svg){var E=u.layerName||p+"layer",A=E+(v?Number(v)+1:""),L=u.plot;c=fpe(r,L,x),f=c[0],r=c[1],f.length&&h.push({i:a.indexOf(E),zindex:v,className:A,plotMethod:L,cdModule:f}),C.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=hI.select(this),P=M.className;M.plotMethod(e,t,M.cdModule,g,n,i),Fg.clipOnAxisFalseQuery.indexOf("."+P)===-1&&Zpt.setClipUrl(g,t.layerClipId,e)}),o._has("scattergl")&&(u=cpe.getModule("scattergl"),f=fpe(r,u)[0],u.plot(e,t,f)),!e._context.staticPlot&&(t._hasClipOnAxisFalse&&(t.clipOnAxisFalseTraces=t.plot.selectAll(Fg.clipOnAxisFalseQuery.join(",")).selectAll(".trace")),d.length)){var k=t.plot.selectAll(d.join(",")).selectAll(".trace");t.zoomScalePts=k.selectAll("path.point"),t.zoomScaleTxt=k.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)vpe(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(Xb)===-1&&!a[b]){var p="."+b+",."+b+"-x,."+b+"-y";n._cartesianlayer.selectAll(p).remove(),ppe(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=Kpt(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]+=Xb+(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(vpe,t),v.each(function(x){var b=x[0],p=b.indexOf(Xb),C=p!==-1,E=C?b.slice(0,p):b,A=t._plots[b];A||(A=Wb.extendFlat({},t._plots[E]),A&&(A.id=b,t._plots[b]=A,t._subplots.cartesian.push(b))),A&&(A.plotgroup=hI.select(this),dpe(e,A),C||(A.draglayer=nu(t._draggers,"g",b)))})};yv.rangePlot=function(e,t,r){dpe(e,t),hpe(e,t,r),Xpt.style(e)};function Kpt(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),C=[];for(a=0;a<i;a++){s=p[a],l=t._plots[s],u=l.xaxis,c=l.yaxis;for(var E=[],A=1;A<=r;A++){var L="";for(A>1&&(L+=Xb+A),E.push(s+L),o=0;o<l.overlays.length;o++)E.push(l.overlays[o].id+L)}E=E.concat([u.layer,c.layer,u.overlaying||"",c.overlaying||""]),C.push(E)}return C}function dpe(e,t){var r=e._fullLayout,n=t.plotgroup,i=t.id,a=i.indexOf(Xb),o=a!==-1,s=Fg.layerValue2layerClass[t.xaxis.layer],l=Fg.layerValue2layerClass[t.yaxis.layer],u=r._hasOnlyLargeSploms,c=r._zindices.length>1,f=t.mainplotinfo;if(!t.mainplot||c)if(u)t.xlines=nu(n,"path","xlines-above"),t.ylines=nu(n,"path","ylines-above"),t.xaxislayer=nu(n,"g","xaxislayer-above"),t.yaxislayer=nu(n,"g","yaxislayer-above");else{if(!o){var h=nu(n,"g","layer-subplot");t.shapelayer=nu(h,"g","shapelayer"),t.imagelayer=nu(h,"g","imagelayer"),f&&c?(t.minorGridlayer=f.minorGridlayer,t.gridlayer=f.gridlayer,t.zerolinelayer=f.zerolinelayer):(t.minorGridlayer=nu(n,"g","minor-gridlayer"),t.gridlayer=nu(n,"g","gridlayer"),t.zerolinelayer=nu(n,"g","zerolinelayer"));var d=nu(n,"g","layer-between");t.shapelayerBetween=nu(d,"g","shapelayer"),t.imagelayerBetween=nu(d,"g","imagelayer"),nu(n,"path","xlines-below"),nu(n,"path","ylines-below"),t.overlinesBelow=nu(n,"g","overlines-below"),nu(n,"g","xaxislayer-below"),nu(n,"g","yaxislayer-below"),t.overaxesBelow=nu(n,"g","overaxes-below")}t.overplot=nu(n,"g","overplot"),t.plot=nu(t.overplot,"g",i),f&&c?t.zerolinelayerAbove=f.zerolinelayerAbove:t.zerolinelayerAbove=nu(n,"g","zerolinelayer-above"),o||(t.xlines=nu(n,"path","xlines-above"),t.ylines=nu(n,"path","ylines-above"),t.overlinesAbove=nu(n,"g","overlines-above"),nu(n,"g","xaxislayer-above"),nu(n,"g","yaxislayer-above"),t.overaxesAbove=nu(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,t.zerolinelayerAbove=f.zerolinelayerAbove,nu(f.overlinesBelow,"path",x),nu(f.overlinesBelow,"path",b),nu(f.overaxesBelow,"g",x),nu(f.overaxesBelow,"g",b),t.plot=nu(f.overplot,"g",i),nu(f.overlinesAbove,"path",x),nu(f.overlinesAbove,"path",b),nu(f.overaxesAbove,"g",x),nu(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||(fI(t.minorGridlayer,"g",t.xaxis._id),fI(t.minorGridlayer,"g",t.yaxis._id),t.minorGridlayer.selectAll("g").map(function(p){return p[0]}).sort(m_.idSort),fI(t.gridlayer,"g",t.xaxis._id),fI(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 vpe(e,t){if(e){var r={};e.each(function(l){var u=l[0],c=hI.select(this);c.remove(),ppe(u,t),r[u]=!0});for(var n in t._plots)for(var i=t._plots[n],a=i.overlays||[],o=0;o<a.length;o++){var s=a[o];r[s.id]&&s.plot.selectAll(".trace").remove()}}}function ppe(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=hI.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:Ypt.svg,"xlink:href":o,preserveAspectRatio:"none",x:0,y:0,width:a.style.width,height:a.style.height})}n.each(i)};yv.updateFx=qN().updateFx});var mpe=ye((wor,gpe)=>{"use strict";var dI=Ru();gpe.exports={hasLines:dI.hasLines,hasMarkers:dI.hasMarkers,hasText:dI.hasText,isBubble:dI.isBubble,attributes:pf(),layoutAttributes:j6(),supplyDefaults:Gde(),crossTraceDefaults:rU(),supplyLayoutDefaults:Xde(),calc:O0().calc,crossTraceCalc:mve(),arraysToCalcdata:Cm(),plot:iT(),colorbar:$d(),formatLabels:tI(),style:ap().style,styleOnSelect:ap().styleOnSelect,hoverPoints:sT(),selectPoints:lT(),animatable:!0,moduleType:"trace",name:"scatter",basePlotModule:vh(),categories:["cartesian","svg","symbols","errorBarsOK","showLegend","scatter-like","zoomScale"],meta:{}}});var xpe=ye((Tor,_pe)=>{"use strict";var Jpt=Oa(),$pt=Ca(),ype=kN(),MU=Dr(),Qpt=MU.strScale,e0t=MU.strRotate,t0t=MU.strTranslate;_pe.exports=function(t,r,n){var i=t.node(),a=ype[n.arrowhead||0],o=ype[n.startarrowhead||0],s=(n.arrowwidth||1)*(n.arrowsize||1),l=(n.arrowwidth||1)*(n.startarrowsize||1),u=r.indexOf("start")>=0,c=r.indexOf("end")>=0,f=a.backoff*s+n.standoff,h=o.backoff*l+n.startstandoff,d,v,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,C=d.y-v.y;if(x=Math.atan2(C,p),b=x+Math.PI,f&&h&&f+h>Math.sqrt(p*p+C*C)){V();return}if(f){if(f*f>p*p+C*C){V();return}var E=f*Math.cos(x),A=f*Math.sin(x);v.x+=E,v.y+=A,t.attr({x2:v.x,y2:v.y})}if(h){if(h*h>p*p+C*C){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 k=i.getTotalLength(),M="";if(k<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,k)),M="0px,"+h+"px,";var T=i.getPointAtLength(k),z=i.getPointAtLength(k-.1);b=Math.atan2(T.y-z.y,T.x-z.x),v=i.getPointAtLength(Math.max(0,k-f));var O=M?h+f:f;M+=k-O+"px,"+k+"px",t.style("stroke-dasharray",M)}function V(){t.style("stroke-dasharray","0px,100px")}function G(Z,H,N,j){Z.path&&(Z.noRotate&&(N=0),Jpt.select(i.parentNode).append("path").attr({class:t.attr("class"),d:Z.path,transform:t0t(H.x,H.y)+e0t(N*180/Math.PI)+Qpt(j)}).style({fill:$pt.rgb(n.arrowcolor),"stroke-width":0}))}u&&G(o,d,x,l),c&&G(a,v,b,s)}});var vI=ye((Aor,Spe)=>{"use strict";var bpe=Oa(),EU=qa(),r0t=Mc(),__=Dr(),CU=__.strTranslate,i4=ho(),Zb=Ca(),Py=So(),wpe=vf(),kU=iu(),LU=Tg(),r4=gv(),i0t=pl().arrayEditor,n0t=xpe();Spe.exports={draw:a0t,drawOne:Tpe,drawRaw:Ape};function a0t(e){var t=e._fullLayout;t._infolayer.selectAll(".annotation").remove();for(var r=0;r<t.annotations.length;r++)t.annotations[r].visible&&Tpe(e,r);return r0t.previousPromises(e)}function Tpe(e,t){var r=e._fullLayout,n=r.annotations[t]||{},i=i4.getFromId(e,n.xref),a=i4.getFromId(e,n.yref);i&&i.setScale(),a&&a.setScale(),Ape(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=i4.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 Ape(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=i0t(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){bpe.selectAll("#"+x).remove();return}var b={x:{},y:{}},p=+t.textangle||0,C=o._infolayer.append("g").classed(u,!0).attr("data-index",String(r)).style("opacity",t.opacity),E=C.append("g").classed("annotation-text-g",!0),A=l[t.showarrow?"annotationTail":"annotationPosition"],L=t.captureevents||l.annotationText||A;function _(j){var re={index:r,annotation:t._input,fullAnnotation:t,event:j};return n&&(re.subplotId=n),re}var k=E.append("g").style("pointer-events",L?"all":null).call(LU,"pointer").on("click",function(){e._dragging=!1,e.emit("plotly_clickannotation",_(bpe.event))});t.hovertext&&k.on("mouseover",function(){var j=t.hoverlabel,re=j.font,oe=this.getBoundingClientRect(),_e=e.getBoundingClientRect();wpe.loneHover({x0:oe.left-_e.left,x1:oe.right-_e.left,y:(oe.top+oe.bottom)/2-_e.top,text:t.hovertext,color:j.bgcolor,borderColor:j.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(){wpe.loneUnhover(o._hoverlayer.node())});var M=t.borderwidth,g=t.borderpad,P=M+g,T=k.append("rect").attr("class","bg").style("stroke-width",M+"px").call(Zb.stroke,t.bordercolor).call(Zb.fill,t.bgcolor),z=t.width||t.height,O=o._topclips.selectAll("#"+x).data(z?[0]:[]);O.enter().append("clipPath").classed("annclip",!0).attr("id",x).append("rect"),O.exit().remove();var V=t.font,G=o._meta?__.templateString(t.text,o._meta):t.text,Z=k.append("text").classed("annotation-text",!0).text(G);function H(j){return j.call(Py.font,V).attr({"text-anchor":{left:"start",right:"end"}[t.align]||"middle"}),kU.convertToTspans(j,e,N),j}function N(){var j=Z.selectAll("a");if(j.size()===1&&j.text()===Z.text()){var re=k.insert("a",":first-child").attr({"xlink:xlink:href":j.attr("xlink:href"),"xlink:xlink:show":j.attr("xlink:show")}).style({cursor:"pointer"});re.node().appendChild(T.node())}var oe=k.select(".annotation-text-math-group"),_e=!oe.empty(),Me=Py.bBox((_e?oe:Z).node()),ke=Me.width,me=Me.height,ie=t.width||ke,Se=t.height||me,Le=Math.round(ie+2*P),Ae=Math.round(Se+2*P);function De(je,$e){return $e==="auto"&&(je<1/3?$e="left":je>2/3?$e="right":$e="center"),{center:0,middle:0,left:.5,bottom:-.5,right:-.5,top:.5}[$e]}for(var Pe=!1,ge=["x","y"],Fe=0;Fe<ge.length;Fe++){var ce=ge[Fe],Ze=t[ce+"ref"]||ce,ct=t["a"+ce+"ref"],pt={x:i,y:a}[ce],Wt=(p+(ce==="x"?0:-90))*Math.PI/180,st=Le*Math.cos(Wt),lt=Ae*Math.sin(Wt),Gt=Math.abs(st)+Math.abs(lt),Nt=t[ce+"anchor"],$t=t[ce+"shift"]*(ce==="x"?1:-1),sr=b[ce],wr,ur,Qe,Et,er,Ut=i4.getRefType(Ze);if(pt&&Ut!=="domain"){var Ft=pt.r2fraction(t[ce]);(Ft<0||Ft>1)&&(ct===Ze?(Ft=pt.r2fraction(t["a"+ce]),(Ft<0||Ft>1)&&(Pe=!0)):Pe=!0),wr=pt._offset+pt.r2p(t[ce]),Et=.5}else{var bt=Ut==="domain";ce==="x"?(Qe=t[ce],wr=bt?pt._offset+pt._length*Qe:wr=s.l+s.w*Qe):(Qe=1-t[ce],wr=bt?pt._offset+pt._length*Qe:wr=s.t+s.h*Qe),Et=t.showarrow?.5:Qe}if(t.showarrow){sr.head=wr;var yt=t["a"+ce];if(er=st*De(.5,t.xanchor)-lt*De(.5,t.yanchor),ct===Ze){var Yt=i4.getRefType(ct);Yt==="domain"?(ce==="y"&&(yt=1-yt),sr.tail=pt._offset+pt._length*yt):Yt==="paper"?ce==="y"?(yt=1-yt,sr.tail=s.t+s.h*yt):sr.tail=s.l+s.w*yt:sr.tail=pt._offset+pt.r2p(yt),ur=er}else sr.tail=wr+yt,ur=er+yt;sr.text=sr.tail+er;var lr=o[ce==="x"?"width":"height"];if(Ze==="paper"&&(sr.head=__.constrain(sr.head,1,lr-1)),ct==="pixel"){var Tr=-Math.max(sr.tail-3,sr.text),Rr=Math.min(sr.tail+3,sr.text)-lr;Tr>0?(sr.tail+=Tr,sr.text+=Tr):Rr>0&&(sr.tail-=Rr,sr.text-=Rr)}sr.tail+=$t,sr.head+=$t}else er=Gt*De(Et,Nt),ur=er,sr.text=wr+er;sr.text+=$t,er+=$t,ur+=$t,t["_"+ce+"padplus"]=Gt/2+ur,t["_"+ce+"padminus"]=Gt/2-ur,t["_"+ce+"size"]=Gt,t["_"+ce+"shift"]=er}if(Pe){k.remove();return}var ei=0,Wr=0;if(t.align!=="left"&&(ei=(ie-ke)*(t.align==="center"?.5:1)),t.valign!=="top"&&(Wr=(Se-me)*(t.valign==="middle"?.5:1)),_e)oe.select("svg").attr({x:P+ei-1,y:P+Wr}).call(Py.setClipUrl,z?x:null,e);else{var Ur=P+Wr-Me.top,dt=P+ei-Me.left;Z.call(kU.positionText,dt,Ur).call(Py.setClipUrl,z?x:null,e)}O.select("rect").call(Py.setRect,P,P,ie,Se),T.call(Py.setRect,M/2,M/2,Le-M,Ae-M),k.call(Py.setTranslate,Math.round(b.x.text-Le/2),Math.round(b.y.text-Ae/2)),E.attr({transform:"rotate("+p+","+b.x.text+","+b.y.text+")"});var Ge=function(je,$e){C.selectAll(".annotation-arrow-g").remove();var wt=b.x.head,Ie=b.y.head,xe=b.x.tail+je,Ce=b.y.tail+$e,vt=b.x.text+je,nr=b.y.text+$e,ir=__.rotationXYMatrix(p,vt,nr),pr=__.apply2DTransform(ir),oi=__.apply2DTransform2(ir),di=+T.attr("width"),Jr=+T.attr("height"),fi=vt-.5*di,Hi=fi+di,Pn=nr-.5*Jr,wn=Pn+Jr,pn=[[fi,Pn,fi,wn],[fi,wn,Hi,wn],[Hi,wn,Hi,Pn],[Hi,Pn,fi,Pn]].map(oi);if(!pn.reduce(function($r,zi){return $r^!!__.segmentsIntersect(wt,Ie,wt+1e6,Ie+1e6,zi[0],zi[1],zi[2],zi[3])},!1)){pn.forEach(function($r){var zi=__.segmentsIntersect(xe,Ce,wt,Ie,$r[0],$r[1],$r[2],$r[3]);zi&&(xe=zi.x,Ce=zi.y)});var Vn=t.arrowwidth,kn=t.arrowcolor,ea=t.arrowside,ua=C.append("g").style({opacity:Zb.opacity(kn)}).classed("annotation-arrow-g",!0),Vt=ua.append("path").attr("d","M"+xe+","+Ce+"L"+wt+","+Ie).style("stroke-width",Vn+"px").call(Zb.stroke,Zb.rgb(kn));if(n0t(Vt,ea,t),l.annotationPosition&&Vt.node().parentNode&&!n){var _t=wt,tr=Ie;if(t.standoff){var ar=Math.sqrt(Math.pow(wt-xe,2)+Math.pow(Ie-Ce,2));_t+=t.standoff*(xe-wt)/ar,tr+=t.standoff*(Ce-Ie)/ar}var Er=ua.append("path").classed("annotation-arrow",!0).classed("anndrag",!0).classed("cursor-move",!0).attr({d:"M3,3H-3V-3H3ZM0,0L"+(xe-_t)+","+(Ce-tr),transform:CU(_t,tr)}).style("stroke-width",Vn+6+"px").call(Zb.stroke,"rgba(0,0,0,0)").call(Zb.fill,"rgba(0,0,0,0)"),Zr,ri;r4.init({element:Er.node(),gd:e,prepFn:function(){var $r=Py.getTranslate(k);Zr=$r.x,ri=$r.y,i&&i.autorange&&h(i._name+".autorange",!0),a&&a.autorange&&h(a._name+".autorange",!0)},moveFn:function($r,zi){var Ji=pr(Zr,ri),en=Ji[0]+$r,cn=Ji[1]+zi;k.call(Py.setTranslate,en,cn),d("x",y_(i,$r,"x",s,t)),d("y",y_(a,zi,"y",s,t)),t.axref===t.xref&&d("ax",y_(i,$r,"ax",s,t)),t.ayref===t.yref&&d("ay",y_(a,zi,"ay",s,t)),ua.attr("transform",CU($r,zi)),E.attr({transform:"rotate("+p+","+en+","+cn+")"})},doneFn:function(){EU.call("_guiRelayout",e,v());var $r=document.querySelector(".js-notes-box-panel");$r&&$r.redraw($r.selectedObj)}})}}};if(t.showarrow&&Ge(0,0),A){var Je;r4.init({element:k.node(),gd:e,prepFn:function(){Je=E.attr("transform")},moveFn:function(je,$e){var wt="pointer";if(t.showarrow)t.axref===t.xref?d("ax",y_(i,je,"ax",s,t)):d("ax",t.ax+je),t.ayref===t.yref?d("ay",y_(a,$e,"ay",s.w,t)):d("ay",t.ay+$e),Ge(je,$e);else{if(n)return;var Ie,xe;if(i)Ie=y_(i,je,"x",s,t);else{var Ce=t._xsize/s.w,vt=t.x+(t._xshift-t.xshift)/s.w-Ce/2;Ie=r4.align(vt+je/s.w,Ce,0,1,t.xanchor)}if(a)xe=y_(a,$e,"y",s,t);else{var nr=t._ysize/s.h,ir=t.y-(t._yshift+t.yshift)/s.h-nr/2;xe=r4.align(ir-$e/s.h,nr,0,1,t.yanchor)}d("x",Ie),d("y",xe),(!i||!a)&&(wt=r4.getCursor(i?.5:Ie,a?.5:xe,t.xanchor,t.yanchor))}E.attr({transform:CU(je,$e)+Je}),LU(k,wt)},clickFn:function(je,$e){t.captureevents&&e.emit("plotly_clickannotation",_($e))},doneFn:function(){LU(k),EU.call("_guiRelayout",e,v());var je=document.querySelector(".js-notes-box-panel");je&&je.redraw(je.selectedObj)}})}}l.annotationText?Z.call(kU.makeEditable,{delegate:k,gd:e}).call(H).on("edit",function(j){t.text=j,this.call(H),d("text",j),i&&i.autorange&&h(i._name+".autorange",!0),a&&a.autorange&&h(a._name+".autorange",!0),EU.call("_guiRelayout",e,v())}):Z.call(H)}});var Ppe=ye((Sor,Lpe)=>{"use strict";var Mpe=Dr(),o0t=qa(),Epe=pl().arrayEditor;Lpe.exports={hasClickToShow:s0t,onClick:l0t};function s0t(e,t){var r=kpe(e,t);return r.on.length>0||r.explicitOff.length>0}function l0t(e,t){var r=kpe(e,t),n=r.on,i=r.off.concat(r.explicitOff),a={},o=e._fullLayout.annotations,s,l;if(n.length||i.length){for(s=0;s<n.length;s++)l=Epe(e.layout,"annotations",o[n[s]]),l.modifyItem("visible",!0),Mpe.extendFlat(a,l.getUpdateObj());for(s=0;s<i.length;s++)l=Epe(e.layout,"annotations",o[i[s]]),l.modifyItem("visible",!1),Mpe.extendFlat(a,l.getUpdateObj());return o0t.call("update",e,{},a)}}function kpe(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)===Cpe(u._xclick,h)&&d.d2r(f.y)===Cpe(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 Cpe(e,t){return t.type==="log"?t.l2r(e):t.d2r(e)}});var IU=ye((Mor,Ipe)=>{"use strict";var PU=Dr(),uT=Ca();Ipe.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"),PU.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)),C=PU.extendFlat({},x.font);C.color||(C.color=p),PU.coerceFont(i,"hoverlabel.font",C)}i("captureevents",!!v)}});var Dpe=ye((Eor,Rpe)=>{"use strict";var RU=Dr(),Yb=ho(),u0t=Yd(),c0t=IU(),f0t=Nb();Rpe.exports=function(t,r){u0t(t,r,{name:"annotations",handleItemDefaults:h0t})};function h0t(e,t,r){function n(E,A){return RU.coerce(e,t,f0t,E,A)}var i=n("visible"),a=n("clicktoshow");if(i||a){c0t(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(RU.noneOrAll(e,t,["x","y"]),o&&RU.noneOrAll(e,t,["ax","ay"]),a){var p=n("xclick"),C=n("yclick");t._xclick=p===void 0?t.x:Yb.cleanPosition(p,u,t.xref),t._yclick=C===void 0?t.y:Yb.cleanPosition(C,u,t.yref)}}}});var Ope=ye((Cor,zpe)=>{"use strict";var DU=Dr(),Kb=ho(),d0t=vI().draw;zpe.exports=function(t){var r=t._fullLayout,n=DU.filterVisible(r.annotations);if(n.length&&t._fullData.length)return DU.syncOrAsync([d0t,v0t],t)};function v0t(e){var t=e._fullLayout;DU.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"&&Fpe(r,n),o==="range"&&Fpe(r,i)})}function Fpe(e,t){var r=t._id,n=r.charAt(0),i=e[n],a=e["a"+n],o=e[n+"ref"],s=e["a"+n+"ref"],l=e["_"+n+"padplus"],u=e["_"+n+"padminus"],c={x:1,y:-1}[n]*e[n+"shift"],f=3*e.arrowsize*e.arrowwidth||0,h=f+c,d=f-c,v=3*e.startarrowsize*e.arrowwidth||0,x=v+c,b=v-c,p;if(s===o){var C=Kb.findExtremes(t,[t.r2c(i)],{ppadplus:h,ppadminus:d}),E=Kb.findExtremes(t,[t.r2c(a)],{ppadplus:Math.max(l,x),ppadminus:Math.max(u,b)});p={min:[C.min[0],E.min[0]],max:[C.max[0],E.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 Bpe=ye((kor,qpe)=>{"use strict";var p0t=Eo(),g0t=p6();qpe.exports=function(t,r,n,i){r=r||{};var a=n==="log"&&r.type==="linear",o=n==="linear"&&r.type==="log";if(!(a||o))return;var s=t._fullLayout.annotations,l=r._id.charAt(0),u,c;function f(d){var v=u[d],x=null;a?x=g0t(v,r.range):x=Math.pow(10,v),p0t(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 Vpe=ye((Lor,Upe)=>{"use strict";var FU=vI(),Npe=Ppe();Upe.exports={moduleType:"component",name:"annotations",layoutAttributes:Nb(),supplyLayoutDefaults:Dpe(),includeBasePlot:zM()("annotations"),calcAutorange:Ope(),draw:FU.draw,drawOne:FU.drawOne,drawRaw:FU.drawRaw,hasClickToShow:Npe.hasClickToShow,onClick:Npe.onClick,convertCoords:Bpe()}});var pI=ye((Por,Gpe)=>{"use strict";var Cc=Nb(),m0t=mc().overrideAll,y0t=pl().templatedArray;Gpe.exports=m0t(y0t("annotation",{visible:Cc.visible,x:{valType:"any"},y:{valType:"any"},z:{valType:"any"},ax:{valType:"number"},ay:{valType:"number"},xanchor:Cc.xanchor,xshift:Cc.xshift,yanchor:Cc.yanchor,yshift:Cc.yshift,text:Cc.text,textangle:Cc.textangle,font:Cc.font,width:Cc.width,height:Cc.height,opacity:Cc.opacity,align:Cc.align,valign:Cc.valign,bgcolor:Cc.bgcolor,bordercolor:Cc.bordercolor,borderpad:Cc.borderpad,borderwidth:Cc.borderwidth,showarrow:Cc.showarrow,arrowcolor:Cc.arrowcolor,arrowhead:Cc.arrowhead,startarrowhead:Cc.startarrowhead,arrowside:Cc.arrowside,arrowsize:Cc.arrowsize,startarrowsize:Cc.startarrowsize,arrowwidth:Cc.arrowwidth,standoff:Cc.standoff,startstandoff:Cc.startstandoff,hovertext:Cc.hovertext,hoverlabel:Cc.hoverlabel,captureevents:Cc.captureevents}),"calc","from-root")});var jpe=ye((Ior,Hpe)=>{"use strict";var zU=Dr(),_0t=ho(),x0t=Yd(),b0t=IU(),w0t=pI();Hpe.exports=function(t,r,n){x0t(t,r,{name:"annotations",handleItemDefaults:T0t,fullLayout:n.fullLayout})};function T0t(e,t,r,n){function i(s,l){return zU.coerce(e,t,w0t,s,l)}function a(s){var l=s+"axis",u={_fullLayout:{}};return u._fullLayout[l]=r[l],_0t.coercePosition(t,u,i,s,s,.5)}var o=i("visible");o&&(b0t(e,t,n.fullLayout,i),a("x"),a("y"),a("z"),zU.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),zU.noneOrAll(e,t,["ax","ay"])))}});var Ype=ye((Ror,Zpe)=>{"use strict";var Wpe=Dr(),Xpe=ho();Zpe.exports=function(t){for(var r=t.fullSceneLayout,n=r.annotations,i=0;i<n.length;i++)A0t(n[i],t);t.fullLayout._infolayer.selectAll(".annotation-"+t.id).remove()};function A0t(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={},Wpe.extendFlat(e._xa,a),Xpe.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={},Wpe.extendFlat(e._ya,a),Xpe.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 qU=ye((Dor,Kpe)=>{"use strict";function OU(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 S0t(e,t){var r=OU(e.projection,OU(e.view,OU(e.model,[t[0],t[1],t[2],1])));return r}Kpe.exports=S0t});var $pe=ye((For,Jpe)=>{"use strict";var M0t=vI().drawRaw,E0t=qU(),C0t=["x","y","z"];Jpe.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=C0t[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=E0t(t.glplot.cameraParams,[r.xaxis.r2l(o.x)*n[0],r.yaxis.r2l(o.y)*n[1],r.zaxis.r2l(o.z)*n[2]]),M0t(t.graphDiv,o,a,t.id,o._xa,o._ya))}}});var t0e=ye((zor,e0e)=>{"use strict";var k0t=qa(),Qpe=Dr();e0e.exports={moduleType:"component",name:"annotations3d",schema:{subplots:{scene:{annotations:pI()}}},layoutAttributes:pI(),handleDefaults:jpe(),includeBasePlot:L0t,convert:Ype(),draw:$pe()};function L0t(e,t){var r=k0t.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&&(Qpe.pushUnique(t._basePlotModules,r),Qpe.pushUnique(t._subplots.gl3d,o))}}});var BU=ye((qor,a0e)=>{"use strict";var r0e=Nb(),i0e=ec(),n0e=pf().line,P0t=Pd().dash,zg=Ao().extendFlat,I0t=pl().templatedArray,Oor=FM(),cT=Vl(),R0t=Qo().shapeTexttemplateAttrs,D0t=A6();a0e.exports=I0t("shape",{visible:zg({},cT.visible,{editType:"calc+arraydraw"}),showlegend:{valType:"boolean",dflt:!1,editType:"calc+arraydraw"},legend:zg({},cT.legend,{editType:"calc+arraydraw"}),legendgroup:zg({},cT.legendgroup,{editType:"calc+arraydraw"}),legendgrouptitle:{text:zg({},cT.legendgrouptitle.text,{editType:"calc+arraydraw"}),font:i0e({editType:"calc+arraydraw"}),editType:"calc+arraydraw"},legendrank:zg({},cT.legendrank,{editType:"calc+arraydraw"}),legendwidth:zg({},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:zg({},r0e.xref,{}),xsizemode:{valType:"enumerated",values:["scaled","pixel"],dflt:"scaled",editType:"calc+arraydraw"},xanchor:{valType:"any",editType:"calc+arraydraw"},x0:{valType:"any",editType:"calc+arraydraw"},x1:{valType:"any",editType:"calc+arraydraw"},x0shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},x1shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},yref:zg({},r0e.yref,{}),ysizemode:{valType:"enumerated",values:["scaled","pixel"],dflt:"scaled",editType:"calc+arraydraw"},yanchor:{valType:"any",editType:"calc+arraydraw"},y0:{valType:"any",editType:"calc+arraydraw"},y1:{valType:"any",editType:"calc+arraydraw"},y0shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},y1shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},path:{valType:"string",editType:"calc+arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},line:{color:zg({},n0e.color,{editType:"arraydraw"}),width:zg({},n0e.width,{editType:"calc+arraydraw"}),dash:zg({},P0t,{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:R0t({},{keys:Object.keys(D0t)}),font:i0e({editType:"calc+arraydraw",colorEditType:"arraydraw"}),textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right","start","middle","end"],editType:"arraydraw"},textangle:{valType:"angle",dflt:"auto",editType:"calc+arraydraw"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto",editType:"calc+arraydraw"},yanchor:{valType:"enumerated",values:["top","middle","bottom"],editType:"calc+arraydraw"},padding:{valType:"number",dflt:3,min:0,editType:"arraydraw"},editType:"arraydraw"},editType:"arraydraw"})});var l0e=ye((Bor,s0e)=>{"use strict";var n4=Dr(),fT=ho(),F0t=Yd(),z0t=BU(),o0e=h_();s0e.exports=function(t,r){F0t(t,r,{name:"shapes",handleItemDefaults:q0t})};function O0t(e,t){return e?"bottom":t.indexOf("top")!==-1?"top":t.indexOf("bottom")!==-1?"bottom":"middle"}function q0t(e,t,r){function n(j,re){return n4.coerce(e,t,z0t,j,re)}t._isShape=!0;var i=n("visible");if(i){var a=n("showlegend");a&&(n("legend"),n("legendwidth"),n("legendgroup"),n("legendgrouptitle.text"),n4.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,C={_fullLayout:r},E,A,L,_=fT.coerceRef(e,t,C,x,void 0,"paper"),k=fT.getRefType(_);if(k==="range"?(E=fT.getFromId(C,_),E._shapeIndices.push(t._index),L=o0e.rangeToShapePosition(E),A=o0e.shapePositionToRange(E),(E.type==="category"||E.type==="multicategory")&&(n(x+"0shift"),n(x+"1shift"))):A=L=n4.identity,u){var M=.25,g=.75,P=x+"0",T=x+"1",z=e[P],O=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,C,n,_,P,M),fT.coercePosition(t,C,n,_,T,g)),t[P]=L(t[P]),t[T]=L(t[T]),e[P]=z,e[T]=O}if(p==="pixel"){var V=e[b];e[b]=A(e[b],!0),fT.coercePosition(t,C,n,_,b,.25),t[b]=L(t[b]),e[b]=V}}u&&n4.noneOrAll(e,t,["x0","x1","y0","y1"]);var G=l==="line",Z,H;if(u&&(Z=n("label.texttemplate")),Z||(H=n("label.text")),H||Z){n("label.textangle");var N=n("label.textposition",G?"middle":"middle center");n("label.xanchor"),n("label.yanchor",O0t(G,N)),n("label.padding"),n4.coerceFont(n,"label.font",r.font)}}}});var f0e=ye((Nor,c0e)=>{"use strict";var B0t=Ca(),u0e=Dr();function N0t(e,t){return e?"bottom":t.indexOf("top")!==-1?"top":t.indexOf("bottom")!==-1?"bottom":"middle"}c0e.exports=function(t,r,n){n("newshape.visible"),n("newshape.name"),n("newshape.showlegend"),n("newshape.legend"),n("newshape.legendwidth"),n("newshape.legendgroup"),n("newshape.legendgrouptitle.text"),u0e.coerceFont(n,"newshape.legendgrouptitle.font"),n("newshape.legendrank"),n("newshape.drawdirection"),n("newshape.layer"),n("newshape.fillcolor"),n("newshape.fillrule"),n("newshape.opacity");var i=n("newshape.line.width");if(i){var a=(t||{}).plot_bgcolor||"#FFF";n("newshape.line.color",B0t.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",N0t(o,u)),n("newshape.label.padding"),u0e.coerceFont(n,"newshape.label.font",r.font)}n("activeshape.fillcolor"),n("activeshape.opacity")}});var g0e=ye((Uor,p0e)=>{"use strict";var NU=Dr(),hT=ho(),dT=vM(),d0e=h_();p0e.exports=function(t){var r=t._fullLayout,n=NU.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=h0e(o,a,dT.paramIsX),s&&(a._extremes[o._id]=hT.findExtremes(o,s,U0t(a)))),a.yref!=="paper"&&u!=="domain"&&(o=hT.getFromId(t,a.yref),s=h0e(o,a,dT.paramIsY),s&&(a._extremes[o._id]=hT.findExtremes(o,s,V0t(a))))}};function U0t(e){return v0e(e.line.width,e.xsizemode,e.x0,e.x1,e.path,!1)}function V0t(e){return v0e(e.line.width,e.ysizemode,e.y0,e.y1,e.path,!0)}function v0e(e,t,r,n,i,a){var o=e/2,s=a;if(t==="pixel"){var l=i?d0e.extractPathCoords(i,a?dT.paramIsY:dT.paramIsX):[r,n],u=NU.aggNums(Math.max,null,l),c=NU.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 h0e(e,t,r){var n=e._id.charAt(0)==="x"?"x":"y",i=e.type==="category"||e.type==="multicategory",a,o,s=0,l=0,u=i?e.r2c:e.d2c,c=t[n+"sizemode"]==="scaled";if(c?(a=t[n+"0"],o=t[n+"1"],i&&(s=t[n+"0shift"],l=t[n+"1shift"])):(a=t[n+"anchor"],o=t[n+"anchor"]),a!==void 0)return[u(a)+s,u(o)+l];if(t.path){var f=1/0,h=-1/0,d=t.path.match(dT.segmentRE),v,x,b,p,C;for(e.type==="date"&&(u=d0e.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)&&(C=u(p[b]),C<f&&(f=C),C>h&&(h=C)));if(h>=f)return[f,h]}}});var _0e=ye((Vor,y0e)=>{"use strict";var m0e=aP();y0e.exports={moduleType:"component",name:"shapes",layoutAttributes:BU(),supplyLayoutDefaults:l0e(),supplyDrawNewShapeDefaults:f0e(),includeBasePlot:zM()("shapes"),calcAutorange:g0e(),draw:m0e.draw,drawOne:m0e.drawOne}});var UU=ye((Hor,b0e)=>{"use strict";var x0e=hd(),G0t=pl().templatedArray,Gor=FM();b0e.exports=G0t("image",{visible:{valType:"boolean",dflt:!0,editType:"arraydraw"},source:{valType:"string",editType:"arraydraw"},layer:{valType:"enumerated",values:["below","above"],dflt:"above",editType:"arraydraw"},sizex:{valType:"number",dflt:0,editType:"arraydraw"},sizey:{valType:"number",dflt:0,editType:"arraydraw"},sizing:{valType:"enumerated",values:["fill","contain","stretch"],dflt:"contain",editType:"arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},x:{valType:"any",dflt:0,editType:"arraydraw"},y:{valType:"any",dflt:0,editType:"arraydraw"},xanchor:{valType:"enumerated",values:["left","center","right"],dflt:"left",editType:"arraydraw"},yanchor:{valType:"enumerated",values:["top","middle","bottom"],dflt:"top",editType:"arraydraw"},xref:{valType:"enumerated",values:["paper",x0e.idRegex.x.toString()],dflt:"paper",editType:"arraydraw"},yref:{valType:"enumerated",values:["paper",x0e.idRegex.y.toString()],dflt:"paper",editType:"arraydraw"},editType:"arraydraw"})});var T0e=ye((jor,w0e)=>{"use strict";var H0t=Dr(),VU=ho(),j0t=Yd(),W0t=UU(),X0t="images";w0e.exports=function(t,r){var n={name:X0t,handleItemDefaults:Z0t};j0t(t,r,n)};function Z0t(e,t,r){function n(h,d){return H0t.coerce(e,t,W0t,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=VU.coerceRef(e,t,o,u,"paper",void 0);if(c!=="paper"){var f=VU.getFromId(o,c);f._imgIndices.push(t._index)}VU.coercePosition(t,o,n,c,u,0)}return t}});var E0e=ye((Wor,M0e)=>{"use strict";var A0e=Oa(),Y0t=So(),vT=ho(),S0e=hf(),K0t=Wp();M0e.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=S0e.ref2id(l.xref)+S0e.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=A0e.select(this);if(this._imgSrc!==A.source)if(L.attr("xmlns",K0t.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(k){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 z=P.toDataURL("image/png");L.attr("xlink:href",z),k()},L.on("error",g),M.src=A.source,this._imgSrc=A.source;function g(){L.remove(),k()}}.bind(this));t._promises.push(_)}}function h(A){var L=A0e.select(this),_=vT.getFromId(t,A.xref),k=vT.getFromId(t,A.yref),M=vT.getRefType(A.xref)==="domain",g=vT.getRefType(A.yref)==="domain",P=r._size,T,z;_!==void 0?T=typeof A.xref=="string"&&M?_._length*A.sizex:Math.abs(_.l2p(A.sizex)-_.l2p(0)):T=A.sizex*P.w,k!==void 0?z=typeof A.yref=="string"&&g?k._length*A.sizey:Math.abs(k.l2p(A.sizey)-k.l2p(0)):z=A.sizey*P.h;var O=T*c.x[A.xanchor].offset,V=z*c.y[A.yanchor].offset,G=c.x[A.xanchor].sizing+c.y[A.yanchor].sizing,Z,H;switch(_!==void 0?Z=typeof A.xref=="string"&&M?_._length*A.x+_._offset:_.r2p(A.x)+_._offset:Z=A.x*P.w+P.l,Z+=O,k!==void 0?H=typeof A.yref=="string"&&g?k._length*(1-A.y)+k._offset:k.r2p(A.y)+k._offset:H=P.h-A.y*P.h+P.t,H+=V,A.sizing){case"fill":G+=" slice";break;case"stretch":G="none";break}L.attr({x:Z,y:H,width:T,height:z,preserveAspectRatio:G,opacity:A.opacity});var N=_&&vT.getRefType(A.xref)!=="domain"?_._id:"",j=k&&vT.getRefType(A.yref)!=="domain"?k._id:"",re=N+j;Y0t.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 C=r._plots[o];if(C.imagelayer){var E=C.imagelayer.selectAll("image").data(i[o]||[],d);E.enter().append("image"),E.exit().remove(),E.each(function(A){f.bind(this)(A),h.bind(this)(A)}),E.sort(v)}}}});var L0e=ye((Xor,k0e)=>{"use strict";var C0e=Eo(),J0t=p6();k0e.exports=function(t,r,n,i){r=r||{};var a=n==="log"&&r.type==="linear",o=n==="linear"&&r.type==="log";if(a||o){for(var s=t._fullLayout.images,l=r._id.charAt(0),u,c,f=0;f<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=J0t(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));C0e(v)?C0e(x)||(x=null):(v=null,x=null),i(c+l,v),i(c+"size"+l,x)}}}});var I0e=ye((Zor,P0e)=>{"use strict";P0e.exports={moduleType:"component",name:"images",layoutAttributes:UU(),supplyLayoutDefaults:T0e(),includeBasePlot:zM()("images"),draw:E0e(),convertCoords:L0e()}});var gI=ye((Yor,R0e)=>{"use strict";R0e.exports={name:"updatemenus",containerClassName:"updatemenu-container",headerGroupClassName:"updatemenu-header-group",headerClassName:"updatemenu-header",headerArrowClassName:"updatemenu-header-arrow",dropdownButtonGroupClassName:"updatemenu-dropdown-button-group",dropdownButtonClassName:"updatemenu-dropdown-button",buttonClassName:"updatemenu-button",itemRectClassName:"updatemenu-item-rect",itemTextClassName:"updatemenu-item-text",menuIndexAttrName:"updatemenu-active-index",autoMarginIdRoot:"updatemenu-",blankHeaderOpts:{label:" "},minWidth:30,minHeight:30,textPadX:24,arrowPadX:16,rx:2,ry:2,textOffsetX:12,textOffsetY:3,arrowOffsetX:4,gapButtonHeader:5,gapButton:2,activeColor:"#F4FAFF",hoverColor:"#F4FAFF",arrowSymbol:{left:"\u25C4",right:"\u25BA",up:"\u25B2",down:"\u25BC"}}});var GU=ye((Kor,F0e)=>{"use strict";var $0t=ec(),Q0t=Eh(),egt=Ao().extendFlat,tgt=mc().overrideAll,rgt=S6(),D0e=pl().templatedArray,igt=D0e("button",{visible:{valType:"boolean"},method:{valType:"enumerated",values:["restyle","relayout","animate","update","skip"],dflt:"restyle"},args:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},args2:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},label:{valType:"string",dflt:""},execute:{valType:"boolean",dflt:!0}});F0e.exports=tgt(D0e("updatemenu",{_arrayAttrRegexps:[/^updatemenus\[(0|[1-9][0-9]+)\]\.buttons/],visible:{valType:"boolean"},type:{valType:"enumerated",values:["dropdown","buttons"],dflt:"dropdown"},direction:{valType:"enumerated",values:["left","right","up","down"],dflt:"down"},active:{valType:"integer",min:-1,dflt:0},showactive:{valType:"boolean",dflt:!0},buttons:igt,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:egt(rgt({editType:"arraydraw"}),{}),font:$0t({}),bgcolor:{valType:"color"},bordercolor:{valType:"color",dflt:Q0t.borderLine},borderwidth:{valType:"number",min:0,dflt:1,editType:"arraydraw"}}),"arraydraw","from-root")});var B0e=ye((Jor,q0e)=>{"use strict";var mI=Dr(),z0e=Yd(),O0e=GU(),ngt=gI(),agt=ngt.name,ogt=O0e.buttons;q0e.exports=function(t,r){var n={name:agt,handleItemDefaults:sgt};z0e(t,r,n)};function sgt(e,t,r){function n(o,s){return mI.coerce(e,t,O0e,o,s)}var i=z0e(e,t,{name:"buttons",handleItemDefaults:lgt}),a=n("visible",i.length>0);a&&(n("active"),n("direction"),n("type"),n("showactive"),n("x"),n("y"),mI.noneOrAll(e,t,["x","y"]),n("xanchor"),n("yanchor"),n("pad.t"),n("pad.r"),n("pad.b"),n("pad.l"),mI.coerceFont(n,"font",r.font),n("bgcolor",r.paper_bgcolor),n("bordercolor"),n("borderwidth"))}function lgt(e,t){function r(i,a){return mI.coerce(e,t,ogt,i,a)}var n=r("visible",e.method==="skip"||Array.isArray(e.args));n&&(r("method"),r("args"),r("args2"),r("label"),r("execute"))}});var V0e=ye(($or,U0e)=>{"use strict";U0e.exports=Sf;var Og=Oa(),N0e=Ca(),pT=So(),yI=Dr();function Sf(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})}Sf.barWidth=2;Sf.barLength=20;Sf.barRadius=2;Sf.barPad=1;Sf.barColor="#808BA4";Sf.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,C,E,A,L;!h&&!d&&!v&&!x&&(this.position.direction="down",h=!0);var _=h||x;_?(C=s,E=C+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?(E=s+b,C=Math.max(E-b,0),b=E-C):(C=s,E=Math.min(C+b,a),b=E-C)),this._box={l:C,t:A,w:b,h:p};var k=l>b,M=Sf.barLength+2*Sf.barPad,g=Sf.barWidth+2*Sf.barPad,P=s,T=u+c;T+g>o&&(T=o-g);var z=this.container.selectAll("rect.scrollbar-horizontal").data(k?[0]:[]);z.exit().on(".drag",null).remove(),z.enter().append("rect").classed("scrollbar-horizontal",!0).call(N0e.fill,Sf.barColor),k?(this.hbar=z.attr({rx:Sf.barRadius,ry:Sf.barRadius,x:P,y:T,width:M,height:g}),this._hbarXMin=P+M/2,this._hbarTranslateMax=b-M):(delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax);var O=c>p,V=Sf.barWidth+2*Sf.barPad,G=Sf.barLength+2*Sf.barPad,Z=s+l,H=u;Z+V>a&&(Z=a-V);var N=this.container.selectAll("rect.scrollbar-vertical").data(O?[0]:[]);N.exit().on(".drag",null).remove(),N.enter().append("rect").classed("scrollbar-vertical",!0).call(N0e.fill,Sf.barColor),O?(this.vbar=N.attr({rx:Sf.barRadius,ry:Sf.barRadius,x:Z,y:H,width:V,height:G}),this._vbarYMin=H+G/2,this._vbarTranslateMax=p-G):(delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax);var j=this.id,re=C-.5,oe=O?E+V+.5:E+.5,_e=A-.5,Me=k?L+g+.5:L+.5,ke=i._topdefs.selectAll("#"+j).data(k||O?[0]:[]);if(ke.exit().remove(),ke.enter().append("clipPath").attr("id",j).append("rect"),k||O?(this._clipRect=ke.select("rect").attr({x:Math.floor(re),y:Math.floor(_e),width:Math.ceil(oe)-Math.floor(re),height:Math.ceil(Me)-Math.floor(_e)}),this.container.call(pT.setClipUrl,j,this.gd),this.bg.attr({x:s,y:u,width:l,height:c})):(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(pT.setClipUrl,null),delete this._clipRect),k||O){var me=Og.behavior.drag().on("dragstart",function(){Og.event.sourceEvent.preventDefault()}).on("drag",this._onBoxDrag.bind(this));this.container.on("wheel",null).on("wheel",this._onBoxWheel.bind(this)).on(".drag",null).call(me);var ie=Og.behavior.drag().on("dragstart",function(){Og.event.sourceEvent.preventDefault(),Og.event.sourceEvent.stopPropagation()}).on("drag",this._onBarDrag.bind(this));k&&this.hbar.on(".drag",null).call(ie),O&&this.vbar.on(".drag",null).call(ie)}this.setTranslate(r,n)};Sf.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)};Sf.prototype._onBoxDrag=function(){var t=this.translateX,r=this.translateY;this.hbar&&(t-=Og.event.dx),this.vbar&&(r-=Og.event.dy),this.setTranslate(t,r)};Sf.prototype._onBoxWheel=function(){var t=this.translateX,r=this.translateY;this.hbar&&(t+=Og.event.deltaY),this.vbar&&(r+=Og.event.deltaY),this.setTranslate(t,r)};Sf.prototype._onBarDrag=function(){var t=this.translateX,r=this.translateY;if(this.hbar){var n=t+this._hbarXMin,i=n+this._hbarTranslateMax,a=yI.constrain(Og.event.x,n,i),o=(a-n)/(i-n),s=this.position.w-this._box.w;t=o*s}if(this.vbar){var l=r+this._vbarYMin,u=l+this._vbarTranslateMax,c=yI.constrain(Og.event.y,l,u),f=(c-l)/(u-l),h=this.position.h-this._box.h;r=f*h}this.setTranslate(t,r)};Sf.prototype.setTranslate=function(t,r){var n=this.position.w-this._box.w,i=this.position.h-this._box.h;if(t=yI.constrain(t||0,0,n),r=yI.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 $0e=ye((Qor,J0e)=>{"use strict";var gT=Oa(),a4=Mc(),o4=Ca(),mT=So(),e0=Dr(),_I=iu(),ugt=pl().arrayEditor,H0e=Kh().LINE_SPACING,ts=gI(),cgt=V0e();J0e.exports=function(t){var r=t._fullLayout,n=e0.filterVisible(r[ts.name]);function i(h){a4.autoMargin(t,Y0e(h))}var a=r._menulayer.selectAll("g."+ts.containerClassName).data(n.length>0?[0]:[]);if(a.enter().append("g").classed(ts.containerClassName,!0).style("cursor","pointer"),a.exit().each(function(){gT.select(this).selectAll("g."+ts.headerGroupClassName).each(i)}).remove(),n.length!==0){var o=a.selectAll("g."+ts.headerGroupClassName).data(n,fgt);o.enter().append("g").classed(ts.headerGroupClassName,!0);for(var s=e0.ensureSingle(a,"g",ts.dropdownButtonGroupClassName,function(h){h.style("pointer-events","all")}),l=0;l<n.length;l++){var u=n[l];mgt(t,u)}var c="updatemenus"+r._uid,f=new cgt(t,s,c);o.enter().size()&&(s.node().parentNode.appendChild(s.node()),s.call(jU)),o.exit().each(function(h){s.call(jU),i(h)}).remove(),o.each(function(h){var d=gT.select(this),v=h.type==="dropdown"?s:null;a4.manageCommandObserver(t,h,h.buttons,function(x){HU(t,h,h.buttons[x.index],d,v,f,x.index,!0)}),h.type==="dropdown"?(W0e(t,d,s,f,h),j0e(s,h)&&s4(t,d,s,f,h)):s4(t,d,null,null,h)})}};function fgt(e){return e._index}function hgt(e){return+e.attr(ts.menuIndexAttrName)==-1}function j0e(e,t){return+e.attr(ts.menuIndexAttrName)===t._index}function HU(e,t,r,n,i,a,o,s){t.active=o,ugt(e.layout,ts.name,t).applyUpdate("active",o),t.type==="buttons"?s4(e,n,null,null,t):t.type==="dropdown"&&(i.attr(ts.menuIndexAttrName,"-1"),W0e(e,n,i,a,t),s||s4(e,n,i,a,t))}function W0e(e,t,r,n,i){var a=e0.ensureSingle(t,"g",ts.headerClassName,function(h){h.style("pointer-events","all")}),o=i._dims,s=i.active,l=i.buttons[s]||ts.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(WU,i,l,e).call(K0e,i,u,c);var f=e0.ensureSingle(t,"text",ts.headerArrowClassName,function(h){h.attr("text-anchor","end").call(mT.font,i.font).text(ts.arrowSymbol[i.direction])});f.attr({x:o.headerWidth-ts.arrowOffsetX+i.pad.l,y:o.headerHeight/2+ts.textOffsetY+i.pad.t}),a.on("click",function(){r.call(jU,String(j0e(r,i)?-1:i._index)),s4(e,t,r,n,i)}),a.on("mouseover",function(){a.call(X0e)}),a.on("mouseout",function(){a.call(Z0e,i)}),mT.setTranslate(t,o.lx,o.ly)}function s4(e,t,r,n,i){r||(r=t,r.attr("pointer-events","all"));var a=!hgt(r)||i.type==="buttons"?i.buttons:[],o=i.type==="dropdown"?ts.dropdownButtonClassName:ts.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+ts.gapButtonHeader:c=h.headerWidth+ts.gapButtonHeader),i.type==="dropdown"&&i.direction==="up"&&(f=-ts.gapButtonHeader+ts.gapButton-h.openHeight),i.type==="dropdown"&&i.direction==="left"&&(c=-ts.gapButtonHeader+ts.gapButton-h.openWidth);var v={x:h.lx+c+i.pad.l,y:h.ly+f+i.pad.t,yPad:ts.gapButton,xPad:ts.gapButton,index:0},x={l:v.x+i.borderwidth,t:v.y+i.borderwidth};s.each(function(b,p){var C=gT.select(this);C.call(WU,i,b,e).call(K0e,i,v),C.on("click",function(){gT.event.defaultPrevented||(b.execute&&(b.args2&&i.active===p?(HU(e,i,b,t,r,n,-1),a4.executeAPICommand(e,b.method,b.args2)):(HU(e,i,b,t,r,n,p),a4.executeAPICommand(e,b.method,b.args))),e.emit("plotly_buttonclicked",{menu:i,button:b,active:i.active}))}),C.on("mouseover",function(){C.call(X0e)}),C.on("mouseout",function(){C.call(Z0e,i),s.call(G0e,i)})}),s.call(G0e,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()?dgt(e,t,r,n,i,x):vgt(n))}function dgt(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]+ts.gapButton;else for(c=0,h=0;h<u;h++)c+=l.widths[h]+ts.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 vgt(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 WU(e,t,r,n){e.call(pgt,t).call(ggt,t,r,n)}function pgt(e,t){var r=e0.ensureSingle(e,"rect",ts.itemRectClassName,function(n){n.attr({rx:ts.rx,ry:ts.ry,"shape-rendering":"crispEdges"})});r.call(o4.stroke,t.bordercolor).call(o4.fill,t.bgcolor).style("stroke-width",t.borderwidth+"px")}function ggt(e,t,r,n){var i=e0.ensureSingle(e,"text",ts.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(_I.convertToTspans,n)}function G0e(e,t){var r=t.active;e.each(function(n,i){var a=gT.select(this);i===r&&t.showactive&&a.select("rect."+ts.itemRectClassName).call(o4.fill,ts.activeColor)})}function X0e(e){e.select("rect."+ts.itemRectClassName).call(o4.fill,ts.hoverColor)}function Z0e(e,t){e.select("rect."+ts.itemRectClassName).call(o4.fill,t.bgcolor)}function mgt(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."+ts.dropdownButtonClassName).data(e0.filterVisible(t.buttons));n.enter().append("g").classed(ts.dropdownButtonClassName,!0);var i=["up","down"].indexOf(t.direction)!==-1;n.each(function(c,f){var h=gT.select(this);h.call(WU,t,c,e);var d=h.select("."+ts.itemTextClassName),v=d.node()&&mT.bBox(d.node()).width,x=Math.max(v+ts.textPadX,ts.minWidth),b=t.font.size*H0e,p=_I.lineCount(d),C=Math.max(b*p,ts.minHeight)+ts.textOffsetY;C=Math.ceil(C),x=Math.ceil(x),r.widths[f]=x,r.heights[f]=C,r.height1=Math.max(r.height1,C),r.width1=Math.max(r.width1,x),i?(r.totalWidth=Math.max(r.totalWidth,x),r.openWidth=r.totalWidth,r.totalHeight+=C+ts.gapButton,r.openHeight+=C+ts.gapButton):(r.totalWidth+=x+ts.gapButton,r.openWidth+=x+ts.gapButton,r.totalHeight=Math.max(r.totalHeight,C),r.openHeight=r.totalHeight)}),i?r.totalHeight-=ts.gapButton:r.totalWidth-=ts.gapButton,r.headerWidth=r.width1+ts.arrowPadX,r.headerHeight=r.height1,t.type==="dropdown"&&(i?(r.width1+=ts.arrowPadX,r.totalHeight=r.height1):r.totalWidth=r.width1,r.totalWidth+=ts.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),a4.autoMargin(e,Y0e(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 Y0e(e){return ts.autoMarginIdRoot+e._index}function K0e(e,t,r,n){n=n||{};var i=e.select("."+ts.itemRectClassName),a=e.select("."+ts.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*H0e,h=_I.lineCount(a),d=(h-1)*f/2;_I.positionText(a,ts.textOffsetX,c/2-d+ts.textOffsetY),u?r.y+=l.heights[s]+r.yPad:r.x+=l.widths[s]+r.xPad,r.index++}function jU(e,t){e.attr(ts.menuIndexAttrName,t||"-1").selectAll("g."+ts.dropdownButtonClassName).remove()}});var ege=ye((esr,Q0e)=>{"use strict";var ygt=gI();Q0e.exports={moduleType:"component",name:ygt.name,layoutAttributes:GU(),supplyLayoutDefaults:B0e(),draw:$0e()}});var l4=ye((tsr,tge)=>{"use strict";tge.exports={name:"sliders",containerClassName:"slider-container",groupClassName:"slider-group",inputAreaClass:"slider-input-area",railRectClass:"slider-rail-rect",railTouchRectClass:"slider-rail-touch-rect",gripRectClass:"slider-grip-rect",tickRectClass:"slider-tick-rect",inputProxyClass:"slider-input-proxy",labelsClass:"slider-labels",labelGroupClass:"slider-label-group",labelClass:"slider-label",currentValueClass:"slider-current-value",railHeight:5,menuIndexAttrName:"slider-active-index",autoMarginIdRoot:"slider-",minWidth:30,minHeight:30,textPadX:40,arrowOffsetX:4,railRadius:2,railWidth:5,railBorder:4,railBorderWidth:1,railBorderColor:"#bec8d9",railBgColor:"#f8fafc",railInset:8,stepInset:10,gripRadius:10,gripWidth:20,gripHeight:20,gripBorder:20,gripBorderWidth:1,gripBorderColor:"#bec8d9",gripBgColor:"#f6f8fa",gripBgActiveColor:"#dbdde0",labelPadding:8,labelOffset:0,tickWidth:1,tickColor:"#333",tickOffset:25,tickLength:7,minorTickOffset:25,minorTickColor:"#333",minorTickLength:4,currentValuePadding:8,currentValueInset:0}});var XU=ye((rsr,nge)=>{"use strict";var rge=ec(),_gt=S6(),xgt=Ao().extendDeepAll,bgt=mc().overrideAll,wgt=qS(),ige=pl().templatedArray,Jb=l4(),Tgt=ige("step",{visible:{valType:"boolean",dflt:!0},method:{valType:"enumerated",values:["restyle","relayout","animate","update","skip"],dflt:"restyle"},args:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},label:{valType:"string"},value:{valType:"string"},execute:{valType:"boolean",dflt:!0}});nge.exports=bgt(ige("slider",{visible:{valType:"boolean",dflt:!0},active:{valType:"number",min:0,dflt:0},steps:Tgt,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:xgt(_gt({editType:"arraydraw"}),{},{t:{dflt:20}}),xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left"},y:{valType:"number",min:-2,max:3,dflt:0},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"top"},transition:{duration:{valType:"number",min:0,dflt:150},easing:{valType:"enumerated",values:wgt.transition.easing.values,dflt:"cubic-in-out"}},currentvalue:{visible:{valType:"boolean",dflt:!0},xanchor:{valType:"enumerated",values:["left","center","right"],dflt:"left"},offset:{valType:"number",dflt:10},prefix:{valType:"string"},suffix:{valType:"string"},font:rge({})},font:rge({}),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 lge=ye((isr,sge)=>{"use strict";var yT=Dr(),age=Yd(),oge=XU(),Agt=l4(),Sgt=Agt.name,Mgt=oge.steps;sge.exports=function(t,r){age(t,r,{name:Sgt,handleItemDefaults:Egt})};function Egt(e,t,r){function n(f,h){return yT.coerce(e,t,oge,f,h)}for(var i=age(e,t,{name:"steps",handleItemDefaults:Cgt}),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 Cgt(e,t){function r(a,o){return yT.coerce(e,t,Mgt,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 yge=ye((nsr,mge)=>{"use strict";var qg=Oa(),xI=Mc(),x_=Ca(),Bg=So(),t0=Dr(),kgt=t0.strTranslate,u4=iu(),Lgt=pl().arrayEditor,Ds=l4(),KU=Kh(),fge=KU.LINE_SPACING,ZU=KU.FROM_TL,YU=KU.FROM_BR;mge.exports=function(t){var r=t._context.staticPlot,n=t._fullLayout,i=Pgt(n,t),a=n._infolayer.selectAll("g."+Ds.containerClassName).data(i.length>0?[0]:[]);a.enter().append("g").classed(Ds.containerClassName,!0).style("cursor",r?null:"ew-resize");function o(c){c._commandObserver&&(c._commandObserver.remove(),delete c._commandObserver),xI.autoMargin(t,hge(c))}if(a.exit().each(function(){qg.select(this).selectAll("g."+Ds.groupClassName).each(o)}).remove(),i.length!==0){var s=a.selectAll("g."+Ds.groupClassName).data(i,Igt);s.enter().append("g").classed(Ds.groupClassName,!0),s.exit().each(o).remove();for(var l=0;l<i.length;l++){var u=i[l];Rgt(t,u)}s.each(function(c){var f=qg.select(this);qgt(c),xI.manageCommandObserver(t,c,c._visibleSteps,function(h){var d=f.data()[0];d.active!==h.index&&(d._dragging||vge(t,f,d,h.index,!1,!0))}),Dgt(t,qg.select(this),c)})}};function hge(e){return Ds.autoMarginIdRoot+e._index}function Pgt(e,t){for(var r=e[Ds.name],n=[],i=0;i<r.length;i++){var a=r[i];a.visible&&(a._gd=t,n.push(a))}return n}function Igt(e){return e._index}function Rgt(e,t){var r=Bg.tester.selectAll("g."+Ds.labelGroupClass).data(t._visibleSteps);r.enter().append("g").classed(Ds.labelGroupClass,!0);var n=0,i=0;r.each(function(v){var x=qg.select(this),b=dge(x,{step:v},t),p=b.node();if(p){var C=Bg.bBox(p);i=Math.max(i,C.height),n=Math.max(n,C.width)}}),r.remove();var a=t._dims={};a.inputAreaWidth=Math.max(Ds.railWidth,Ds.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*Ds.stepInset,l=s/(t._stepCount-1),u=n+Ds.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=bI(c,t,v.label),b=x.node()&&Bg.bBox(x.node())||{width:0,height:0},p=u4.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+Ds.tickOffset+t.ticklen+Ds.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*YU[h],t:a.height*ZU[h]};t.lenmode==="fraction"?(d.l=0,d.xl=t.x-t.len*ZU[f],d.r=0,d.xr=t.x+t.len*YU[f]):(d.x=t.x,d.l=a.outerLength*ZU[f],d.r=a.outerLength*YU[f]),xI.autoMargin(e,hge(t),d)}function Dgt(e,t,r){(r.steps[r.active]||{}).visible||(r.active=r._visibleSteps[0]._index),t.call(bI,r).call(Ngt,r).call(zgt,r).call(Ogt,r).call(Bgt,e,r).call(Fgt,e,r);var n=r._dims;Bg.setTranslate(t,n.lx+r.pad.l,n.ly+r.pad.t),t.call(gge,r,!1),t.call(bI,r)}function bI(e,t,r){if(t.currentvalue.visible){var n=t._dims,i,a;switch(t.currentvalue.xanchor){case"right":i=n.inputAreaLength-Ds.currentValueInset-n.currentValueMaxWidth,a="left";break;case"center":i=n.inputAreaLength*.5,a="middle";break;default:i=Ds.currentValueInset,a="left"}var o=t0.ensureSingle(e,"text",Ds.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(u4.convertToTspans,t._gd);var c=u4.lineCount(o),f=(n.currentValueMaxLines+1-c)*t.currentvalue.font.size*fge;return u4.positionText(o,i,f),o}}function Fgt(e,t,r){var n=t0.ensureSingle(e,"rect",Ds.gripRectClass,function(i){i.call(pge,t,e,r).style("pointer-events","all")});n.attr({width:Ds.gripWidth,height:Ds.gripHeight,rx:Ds.gripRadius,ry:Ds.gripRadius}).call(x_.stroke,r.bordercolor).call(x_.fill,r.bgcolor).style("stroke-width",r.borderwidth+"px")}function dge(e,t,r){var n=t0.ensureSingle(e,"text",Ds.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(u4.convertToTspans,r._gd),n}function zgt(e,t){var r=t0.ensureSingle(e,"g",Ds.labelsClass),n=t._dims,i=r.selectAll("g."+Ds.labelGroupClass).data(n.labelSteps);i.enter().append("g").classed(Ds.labelGroupClass,!0),i.exit().remove(),i.each(function(a){var o=qg.select(this);o.call(dge,a,t),Bg.setTranslate(o,JU(t,a.fraction),Ds.tickOffset+t.ticklen+t.font.size*fge+Ds.labelOffset+n.currentValueTotalHeight)})}function uge(e,t,r,n,i){var a=Math.round(n*(r._stepCount-1)),o=r._visibleSteps[a]._index;o!==r.active&&vge(e,t,r,o,!0,i)}function vge(e,t,r,n,i,a){var o=r.active;r.active=n,Lgt(e.layout,Ds.name,r).applyUpdate("active",n);var s=r.steps[r.active];t.call(gge,r,a),t.call(bI,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&&xI.executeAPICommand(e,l.method,l.args),t._nextMethod=null,t._nextMethodRaf=null)})))}function pge(e,t,r){if(t._context.staticPlot)return;var n=r.node(),i=qg.select(t);function a(){return r.data()[0]}function o(){var s=a();t.emit("plotly_sliderstart",{slider:s});var l=r.select("."+Ds.gripRectClass);qg.event.stopPropagation(),qg.event.preventDefault(),l.call(x_.fill,s.activebgcolor);var u=cge(s,qg.mouse(n)[0]);uge(t,r,s,u,!0),s._dragging=!0;function c(){var h=a(),d=cge(h,qg.mouse(n)[0]);uge(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 Ogt(e,t){var r=e.selectAll("rect."+Ds.tickRectClass).data(t._visibleSteps),n=t._dims;r.enter().append("rect").classed(Ds.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=qg.select(this);s.attr({height:o?t.ticklen:t.minorticklen}).call(x_.fill,t.tickcolor),Bg.setTranslate(s,JU(t,a/(t._stepCount-1))-.5*t.tickwidth,(o?Ds.tickOffset:Ds.minorTickOffset)+n.currentValueTotalHeight)})}function qgt(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 gge(e,t,r){for(var n=e.select("rect."+Ds.gripRectClass),i=0,a=0;a<t._stepCount;a++)if(t._visibleSteps[a]._index===t.active){i=a;break}var o=JU(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",kgt(o-Ds.gripWidth*.5,t._dims.currentValueTotalHeight))}}function JU(e,t){var r=e._dims;return r.inputAreaStart+Ds.stepInset+(r.inputAreaLength-2*Ds.stepInset)*Math.min(1,Math.max(0,t))}function cge(e,t){var r=e._dims;return Math.min(1,Math.max(0,(t-Ds.stepInset-r.inputAreaStart)/(r.inputAreaLength-2*Ds.stepInset-2*r.inputAreaStart)))}function Bgt(e,t,r){var n=r._dims,i=t0.ensureSingle(e,"rect",Ds.railTouchRectClass,function(a){a.call(pge,t,e,r).style("pointer-events","all")});i.attr({width:n.inputAreaLength,height:Math.max(n.inputAreaWidth,Ds.tickOffset+r.ticklen+n.labelHeight)}).call(x_.fill,r.bgcolor).attr("opacity",0),Bg.setTranslate(i,0,n.currentValueTotalHeight)}function Ngt(e,t){var r=t._dims,n=r.inputAreaLength-Ds.railInset*2,i=t0.ensureSingle(e,"rect",Ds.railRectClass);i.attr({width:n,height:Ds.railWidth,rx:Ds.railRadius,ry:Ds.railRadius,"shape-rendering":"crispEdges"}).call(x_.stroke,t.bordercolor).call(x_.fill,t.bgcolor).style("stroke-width",t.borderwidth+"px"),Bg.setTranslate(i,Ds.railInset,(r.inputAreaWidth-Ds.railWidth)*.5+r.currentValueTotalHeight)}});var xge=ye((asr,_ge)=>{"use strict";var Ugt=l4();_ge.exports={moduleType:"component",name:Ugt.name,layoutAttributes:XU(),supplyLayoutDefaults:lge(),draw:yge()}});var wI=ye((osr,wge)=>{"use strict";var bge=Eh();wge.exports={bgcolor:{valType:"color",dflt:bge.background,editType:"plot"},bordercolor:{valType:"color",dflt:bge.defaultLine,editType:"plot"},borderwidth:{valType:"integer",dflt:0,min:0,editType:"plot"},autorange:{valType:"boolean",dflt:!0,editType:"calc",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},range:{valType:"info_array",items:[{valType:"any",editType:"calc",impliedEdits:{"^autorange":!1}},{valType:"any",editType:"calc",impliedEdits:{"^autorange":!1}}],editType:"calc",impliedEdits:{autorange:!1}},thickness:{valType:"number",dflt:.15,min:0,max:1,editType:"plot"},visible:{valType:"boolean",dflt:!0,editType:"calc"},editType:"calc"}});var $U=ye((ssr,Tge)=>{"use strict";Tge.exports={_isSubplotObj:!0,rangemode:{valType:"enumerated",values:["auto","fixed","match"],dflt:"match",editType:"calc"},range:{valType:"info_array",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},editType:"calc"}});var TI=ye((lsr,Age)=>{"use strict";Age.exports={name:"rangeslider",containerClassName:"rangeslider-container",bgClassName:"rangeslider-bg",rangePlotClassName:"rangeslider-rangeplot",maskMinClassName:"rangeslider-mask-min",maskMaxClassName:"rangeslider-mask-max",slideBoxClassName:"rangeslider-slidebox",grabberMinClassName:"rangeslider-grabber-min",grabAreaMinClassName:"rangeslider-grabarea-min",handleMinClassName:"rangeslider-handle-min",grabberMaxClassName:"rangeslider-grabber-max",grabAreaMaxClassName:"rangeslider-grabarea-max",handleMaxClassName:"rangeslider-handle-max",maskMinOppAxisClassName:"rangeslider-mask-min-opp-axis",maskMaxOppAxisClassName:"rangeslider-mask-max-opp-axis",maskColor:"rgba(0,0,0,0.4)",maskOppAxisColor:"rgba(0,0,0,0.2)",slideBoxFill:"transparent",slideBoxCursor:"ew-resize",grabAreaFill:"transparent",grabAreaCursor:"col-resize",grabAreaWidth:10,handleWidth:4,handleRadius:1,handleStrokeWidth:1,extraPad:15}});var Ege=ye(SI=>{"use strict";var Vgt=hf(),Ggt=iu(),Sge=TI(),Hgt=Kh().LINE_SPACING,AI=Sge.name;function Mge(e){var t=e&&e[AI];return t&&t.visible}SI.isVisible=Mge;SI.makeData=function(e){for(var t=Vgt.list({_fullLayout:e},"x",!0),r=e.margin,n=[],i=0;i<t.length;i++){var a=t[i];if(Mge(a)){n.push(a);var o=a[AI];o._id=AI+a._id,o._height=(e.height-r.b-r.t)*o.thickness,o._offsetShift=Math.floor(o.borderwidth/2)}}e._rangeSliderData=n};SI.autoMarginOpts=function(e,t){var r=e._fullLayout,n=t[AI],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(Ggt.BR_TAG_ALL)||[]).length;o+=s*t.title.font.size*Hgt}return{x:0,y:t._counterDomainMin,l:0,r:0,t:0,b:n._height+a+Math.max(r.margin.b,o),pad:Sge.extraPad+n._offsetShift*2}}});var Pge=ye((csr,Lge)=>{"use strict";var MI=Dr(),Cge=pl(),kge=hf(),jgt=wI(),Wgt=$U();Lge.exports=function(t,r,n){var i=t[n],a=r[n];if(!(i.rangeslider||r._requestRangeslider[a._id]))return;MI.isPlainObject(i.rangeslider)||(i.rangeslider={});var o=i.rangeslider,s=Cge.newContainer(a,"rangeslider");function l(L,_){return MI.coerce(o,s,jgt,L,_)}var u,c;function f(L,_){return MI.coerce(u,c,Wgt,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"))===kge.name2id(n)}).map(function(L){return L.substr(L.indexOf("y"),L.length)}),x=MI.simpleMap(v,kge.id2name),b=0;b<x.length;b++){var p=x[b];u=o[p]||{},c=Cge.newContainer(s,p,"yaxis");var C=r[p],E;u.range&&C.isValidRange(u.range)&&(E="fixed");var A=f("rangemode",E);A!=="match"&&f("range",C.range.slice())}s._input=o}}});var Rge=ye((fsr,Ige)=>{"use strict";var Xgt=hf().list,Zgt=wg().getAutoRange,Ygt=TI();Ige.exports=function(t){for(var r=Xgt(t,"x",!0),n=0;n<r.length;n++){var i=r[n],a=i[Ygt.name];a&&a.visible&&a.autorange&&(a._input.autorange=!0,a._input.range=a.range=Zgt(t,i))}}});var Oge=ye((hsr,zge)=>{"use strict";var EI=Oa(),Kgt=qa(),Jgt=Mc(),Jf=Dr(),CI=Jf.strTranslate,Fge=So(),b_=Ca(),$gt=Mb(),Qgt=vh(),QU=hf(),emt=gv(),tmt=Tg(),il=TI();zge.exports=function(e){for(var t=e._fullLayout,r=t._rangeSliderData,n=0;n<r.length;n++){var i=r[n][il.name];i._clipId=i._id+"-"+t._uid}function a(s){return s._name}var o=t._infolayer.selectAll("g."+il.containerClassName).data(r,a);o.exit().each(function(s){var l=s[il.name];t._topdefs.select("#"+l._clipId).remove()}).remove(),r.length!==0&&(o.enter().append("g").classed(il.containerClassName,!0).attr("pointer-events","all"),o.each(function(s){var l=EI.select(this),u=s[il.name],c=t[QU.id2name(s.anchor)],f=u[QU.id2name(s.anchor)];if(u.range){var h=Jf.simpleMap(u.range,s.r2l),d=Jf.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=Jf.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]),C=Math.round(x.t+x.h*(1-s._counterDomainMin)+(s.side==="bottom"?s._depth:0)+u._offsetShift+il.extraPad);l.attr("transform",CI(p,C)),u._rl=Jf.simpleMap(u.range,s.r2l);var E=u._rl[0],A=u._rl[1],L=A-E;if(u.p2d=function(G){return G/u._width*L+E},u.d2p=function(G){return(G-E)/L*u._width},s.rangebreaks){var _=s.locateBreaks(E,A);if(_.length){var k,M,g=0;for(k=0;k<_.length;k++)M=_[k],g+=M.max-M.min;var P=u._width/(A-E-g),T=[-P*E];for(k=0;k<_.length;k++)M=_[k],T.push(T[T.length-1]-P*(M.max-M.min));for(u.d2p=function(G){for(var Z=T[0],H=0;H<_.length;H++){var N=_[H];if(G>=N.max)Z=T[H+1];else if(G<N.min)break}return Z+P*G},k=0;k<_.length;k++)M=_[k],M.pmin=u.d2p(M.min),M.pmax=u.d2p(M.max);u.p2d=function(G){for(var Z=T[0],H=0;H<_.length;H++){var N=_[H];if(G>=N.pmax)Z=T[H+1];else if(G<N.pmin)break}return(G-Z)/P}}}if(f.rangemode!=="match"){var z=c.r2l(f.range[0]),O=c.r2l(f.range[1]),V=O-z;u.d2pOppAxis=function(G){return(G-z)/V*u._height}}l.call(amt,e,s,u).call(omt,e,s,u).call(smt,e,s,u).call(umt,e,s,u,f).call(cmt,e,s,u).call(fmt,e,s,u),rmt(l,e,s,u),nmt(l,e,s,u,c,f),s.side==="bottom"&&$gt.draw(e,s._id+"title",{propContainer:s,propName:s._name+".title",placeholder:t._dfltTitle.x,attributes:{x:s._offset+s._length/2,y:C+u._height+u._offsetShift+10+1.5*s.title.font.size,"text-anchor":"middle"}})}))};function Dge(e){return typeof e.clientX=="number"?e.clientX:e.touches&&e.touches.length>0?e.touches[0].clientX:0}function rmt(e,t,r,n){if(t._context.staticPlot)return;var i=e.select("rect."+il.slideBoxClassName).node(),a=e.select("rect."+il.grabAreaMinClassName).node(),o=e.select("rect."+il.grabAreaMaxClassName).node();function s(){var l=EI.event,u=l.target,c=Dge(l),f=c-e.node().getBoundingClientRect().left,h=n.d2p(r._rl[0]),d=n.d2p(r._rl[1]),v=emt.coverSlip();this.addEventListener("touchmove",x),this.addEventListener("touchend",b),v.addEventListener("mousemove",x),v.addEventListener("mouseup",b);function x(p){var C=Dge(p),E=+C-c,A,L,_;switch(u){case i:if(_="ew-resize",h+E>r._length||d+E<0)return;A=h+E,L=d+E;break;case a:if(_="col-resize",h+E>r._length)return;A=h+E,L=d;break;case o:if(_="col-resize",d+E<0)return;A=h,L=d+E;break;default:_="ew-resize",A=f,L=f+E;break}if(L<A){var k=L;L=A,A=k}n._pixelMin=A,n._pixelMax=L,tmt(EI.select(v),_),imt(e,t,r,n)}function b(){v.removeEventListener("mousemove",x),v.removeEventListener("mouseup",b),this.removeEventListener("touchmove",x),this.removeEventListener("touchend",b),Jf.removeElement(v)}}e.on("mousedown",s),e.on("touchstart",s)}function imt(e,t,r,n){function i(s){return r.l2r(Jf.constrain(s,n._rl[0],n._rl[1]))}var a=i(n.p2d(n._pixelMin)),o=i(n.p2d(n._pixelMax));window.requestAnimationFrame(function(){Kgt.call("_guiRelayout",t,r._name+".range",[a,o])})}function nmt(e,t,r,n,i,a){var o=il.handleWidth/2;function s(p){return Jf.constrain(p,0,n._width)}function l(p){return Jf.constrain(p,0,n._height)}function u(p){return Jf.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."+il.slideBoxClassName).attr("x",c).attr("width",f-c),e.select("rect."+il.maskMinClassName).attr("width",c),e.select("rect."+il.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."+il.maskMinOppAxisClassName).attr("x",c).attr("height",h).attr("width",f-c),e.select("rect."+il.maskMaxOppAxisClassName).attr("x",c).attr("y",d).attr("height",n._height-d).attr("width",f-c),e.select("rect."+il.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."+il.grabberMinClassName).attr("transform",CI(x,v)),e.select("g."+il.grabberMaxClassName).attr("transform",CI(b,v))}function amt(e,t,r,n){var i=Jf.ensureSingle(e,"rect",il.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=Fge.crispRound(t,n.borderwidth);i.attr({width:n._width+a,height:n._height+a,transform:CI(o,o),"stroke-width":s}).call(b_.stroke,n.bordercolor).call(b_.fill,n.bgcolor)}function omt(e,t,r,n){var i=t._fullLayout,a=Jf.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 smt(e,t,r,n){var i=t.calcdata,a=e.selectAll("g."+il.rangePlotClassName).data(r._subplotsWith,Jf.identity);a.enter().append("g").attr("class",function(s){return il.rangePlotClassName+" "+s}).call(Fge.setClipUrl,n._clipId,t),a.order(),a.exit().remove();var o;a.each(function(s,l){var u=EI.select(this),c=l===0,f=QU.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),Jgt.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),Qgt.rangePlot(t,p,lmt(i,s))})}function lmt(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 umt(e,t,r,n,i){var a=Jf.ensureSingle(e,"rect",il.maskMinClassName,function(u){u.attr({x:0,y:0,"shape-rendering":"crispEdges"})});a.attr("height",n._height).call(b_.fill,il.maskColor);var o=Jf.ensureSingle(e,"rect",il.maskMaxClassName,function(u){u.attr({y:0,"shape-rendering":"crispEdges"})});if(o.attr("height",n._height).call(b_.fill,il.maskColor),i.rangemode!=="match"){var s=Jf.ensureSingle(e,"rect",il.maskMinOppAxisClassName,function(u){u.attr({y:0,"shape-rendering":"crispEdges"})});s.attr("width",n._width).call(b_.fill,il.maskOppAxisColor);var l=Jf.ensureSingle(e,"rect",il.maskMaxOppAxisClassName,function(u){u.attr({y:0,"shape-rendering":"crispEdges"})});l.attr("width",n._width).style("border-top",il.maskOppBorder).call(b_.fill,il.maskOppAxisColor)}}function cmt(e,t,r,n){if(!t._context.staticPlot){var i=Jf.ensureSingle(e,"rect",il.slideBoxClassName,function(a){a.attr({y:0,cursor:il.slideBoxCursor,"shape-rendering":"crispEdges"})});i.attr({height:n._height,fill:il.slideBoxFill})}}function fmt(e,t,r,n){var i=Jf.ensureSingle(e,"g",il.grabberMinClassName),a=Jf.ensureSingle(e,"g",il.grabberMaxClassName),o={x:0,width:il.handleWidth,rx:il.handleRadius,fill:b_.background,stroke:b_.defaultLine,"stroke-width":il.handleStrokeWidth,"shape-rendering":"crispEdges"},s={y:Math.round(n._height/4),height:Math.round(n._height/2)},l=Jf.ensureSingle(i,"rect",il.handleMinClassName,function(d){d.attr(o)});l.attr(s);var u=Jf.ensureSingle(a,"rect",il.handleMaxClassName,function(d){d.attr(o)});u.attr(s);var c={width:il.grabAreaWidth,x:0,y:0,fill:il.grabAreaFill,cursor:t._context.staticPlot?void 0:il.grabAreaCursor},f=Jf.ensureSingle(i,"rect",il.grabAreaMinClassName,function(d){d.attr(c)});f.attr("height",n._height);var h=Jf.ensureSingle(a,"rect",il.grabAreaMaxClassName,function(d){d.attr(c)});h.attr("height",n._height)}});var Bge=ye((dsr,qge)=>{"use strict";var hmt=Dr(),dmt=wI(),vmt=$U(),eV=Ege();qge.exports={moduleType:"component",name:"rangeslider",schema:{subplots:{xaxis:{rangeslider:hmt.extendFlat({},dmt,{yaxis:vmt})}}},layoutAttributes:wI(),handleDefaults:Pge(),calcAutorange:Rge(),draw:Oge(),isVisible:eV.isVisible,makeData:eV.makeData,autoMarginOpts:eV.autoMarginOpts}});var kI=ye((vsr,Uge)=>{"use strict";var pmt=ec(),Nge=Eh(),gmt=pl().templatedArray,mmt=gmt("button",{visible:{valType:"boolean",dflt:!0,editType:"plot"},step:{valType:"enumerated",values:["month","year","day","hour","minute","second","all"],dflt:"month",editType:"plot"},stepmode:{valType:"enumerated",values:["backward","todate"],dflt:"backward",editType:"plot"},count:{valType:"number",min:0,dflt:1,editType:"plot"},label:{valType:"string",editType:"plot"},editType:"plot"});Uge.exports={visible:{valType:"boolean",editType:"plot"},buttons:mmt,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:pmt({editType:"plot"}),bgcolor:{valType:"color",dflt:Nge.lightLine,editType:"plot"},activecolor:{valType:"color",editType:"plot"},bordercolor:{valType:"color",dflt:Nge.defaultLine,editType:"plot"},borderwidth:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"plot"}});var tV=ye((psr,Vge)=>{"use strict";Vge.exports={yPad:.02,minButtonWidth:30,rx:3,ry:3,lightAmount:25,darkAmount:10}});var jge=ye((gsr,Hge)=>{"use strict";var LI=Dr(),ymt=Ca(),_mt=pl(),xmt=Yd(),Gge=kI(),rV=tV();Hge.exports=function(t,r,n,i,a){var o=t.rangeselector||{},s=_mt.newContainer(r,"rangeselector");function l(d,v){return LI.coerce(o,s,Gge,d,v)}var u=xmt(o,s,{name:"buttons",handleItemDefaults:bmt,calendar:a}),c=l("visible",u.length>0);if(c){var f=wmt(r,n,i);l("x",f[0]),l("y",f[1]),LI.noneOrAll(t,r,["x","y"]),l("xanchor"),l("yanchor"),LI.coerceFont(l,"font",n.font);var h=l("bgcolor");l("activecolor",ymt.contrast(h,rV.lightAmount,rV.darkAmount)),l("bordercolor"),l("borderwidth")}};function bmt(e,t,r,n){var i=n.calendar;function a(l,u){return LI.coerce(e,t,Gge.buttons,l,u)}var o=a("visible");if(o){var s=a("step");s!=="all"&&(i&&i!=="gregorian"&&(s==="month"||s==="year")?t.stepmode="backward":a("stepmode"),a("count")),a("label")}}function wmt(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+rV.yPad]}});var Xge=ye((msr,Wge)=>{"use strict";var Tmt=gO(),Amt=Dr().titleCase;Wge.exports=function(t,r){var n=t._name,i={};if(r.step==="all")i[n+".autorange"]=!0;else{var a=Smt(t,r);i[n+".range[0]"]=a[0],i[n+".range[1]"]=a[1]}return i};function Smt(e,t){var r=e.range,n=new Date(e.r2l(r[1])),i=t.step,a=Tmt["utc"+Amt(i)],o=t.count,s;switch(t.stepmode){case"backward":s=e.l2r(+a.offset(n,-o));break;case"todate":var l=a.offset(n,-o);s=e.l2r(+a.ceil(l));break}var u=r[1];return[s,u]}});var tme=ye((ysr,eme)=>{"use strict";var II=Oa(),Mmt=qa(),Emt=Mc(),Zge=Ca(),Qge=So(),Iy=Dr(),Yge=Iy.strTranslate,PI=iu(),Cmt=hf(),aV=Kh(),Kge=aV.LINE_SPACING,Jge=aV.FROM_TL,$ge=aV.FROM_BR,nV=tV(),kmt=Xge();eme.exports=function(t){var r=t._fullLayout,n=r._infolayer.selectAll(".rangeselector").data(Lmt(t),Pmt);n.enter().append("g").classed("rangeselector",!0),n.exit().remove(),n.style({cursor:"pointer","pointer-events":"all"}),n.each(function(i){var a=II.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=II.select(this),f=kmt(o,u);u._isActive=Imt(o,u,f),c.call(iV,s,u),c.call(Dmt,s,u,t),c.on("click",function(){t._dragged||Mmt.call("_guiRelayout",t,f)}),c.on("mouseover",function(){u._isHovered=!0,c.call(iV,s,u)}),c.on("mouseout",function(){u._isHovered=!1,c.call(iV,s,u)})}),zmt(t,l,s,o._name,a)})};function Lmt(e){for(var t=Cmt.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 Pmt(e){return e._id}function Imt(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 iV(e,t,r){var n=Iy.ensureSingle(e,"rect","selector-rect",function(i){i.attr("shape-rendering","crispEdges")});n.attr({rx:nV.rx,ry:nV.ry}),n.call(Zge.stroke,t.bordercolor).call(Zge.fill,Rmt(t,r)).style("stroke-width",t.borderwidth+"px")}function Rmt(e,t){return t._isActive||t._isHovered?e.activecolor:e.bgcolor}function Dmt(e,t,r,n){function i(o){PI.convertToTspans(o,n)}var a=Iy.ensureSingle(e,"text","selector-text",function(o){o.attr("text-anchor","middle")});a.call(Qge.font,t.font).text(Fmt(r,n._fullLayout._meta)).call(i)}function Fmt(e,t){return e.label?t?Iy.templateString(e.label,t):e.label:e.step==="all"?"all":e.count+e.step.charAt(0)}function zmt(e,t,r,n,i){var a=0,o=0,s=r.borderwidth;t.each(function(){var d=II.select(this),v=d.select(".selector-text"),x=r.font.size*Kge,b=Math.max(x*PI.lineCount(v),16)+3;o=Math.max(o,b)}),t.each(function(){var d=II.select(this),v=d.select(".selector-rect"),x=d.select(".selector-text"),b=x.node()&&Qge.bBox(x.node()).width,p=r.font.size*Kge,C=PI.lineCount(x),E=Math.max(b+10,nV.minButtonWidth);d.attr("transform",Yge(s+a,s)),v.attr({x:0,y:0,width:E,height:o}),PI.positionText(x,E/2,o/2-(C-1)*p/2+3),a+=E+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),Emt.autoMargin(e,n+"-range-selector",{x:r.x,y:r.y,l:a*Jge[f],r:a*$ge[f],b:o*$ge[h],t:o*Jge[h]}),i.attr("transform",Yge(u,c))}});var ime=ye((_sr,rme)=>{"use strict";rme.exports={moduleType:"component",name:"rangeselector",schema:{subplots:{xaxis:{rangeselector:kI()}}},layoutAttributes:kI(),handleDefaults:jge(),draw:tme()}});var kc=ye(oV=>{"use strict";var nme=Ao().extendFlat;oV.attributes=function(e,t){e=e||{},t=t||{};var r={valType:"info_array",editType:e.editType,items:[{valType:"number",min:0,max:1,editType:e.editType},{valType:"number",min:0,max:1,editType:e.editType}],dflt:[0,1]},n=e.name?e.name+" ":"",i=e.trace?"trace ":"subplot ",a=t.description?" "+t.description:"",o={x:nme({},r,{}),y:nme({},r,{}),editType:e.editType};return e.noGridCell||(o.row={valType:"integer",min:0,dflt:0,editType:e.editType},o.column={valType:"integer",min:0,dflt:0,editType:e.editType}),o};oV.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 lV=ye((bsr,lme)=>{"use strict";var Omt=Dr(),qmt=n3().counter,Bmt=kc().attributes,ame=hd().idRegex,Nmt=pl(),sV={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:[qmt("xy").toString(),""],editType:"plot"},editType:"plot"},xaxes:{valType:"info_array",freeLength:!0,items:{valType:"enumerated",values:[ame.x.toString(),""],editType:"plot"},editType:"plot"},yaxes:{valType:"info_array",freeLength:!0,items:{valType:"enumerated",values:[ame.y.toString(),""],editType:"plot"},editType:"plot"},pattern:{valType:"enumerated",values:["independent","coupled"],dflt:"coupled",editType:"plot"},xgap:{valType:"number",min:0,max:1,editType:"plot"},ygap:{valType:"number",min:0,max:1,editType:"plot"},domain:Bmt({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 RI(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 Umt(e,t){var r=e.grid||{},n=RI(t,r,"x"),i=RI(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=Nmt.newContainer(t,"grid");function h(_,k){return Omt.coerce(r,f,sV,_,k)}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",C=a?.2:.1,E=a?.3:.1,A,L;l&&t._splomGridDflt&&(A=t._splomGridDflt.xside,L=t._splomGridDflt.yside),f._domains={x:ome("x",h,C,A,v),y:ome("y",h,E,L,d,p)}}function ome(e,t,r,n,i,a){var o=t(e+"gap",r),s=t("domain."+e);t(e+"side",n);for(var l=new Array(i),u=s[0],c=(s[1]-u)/(i-o),f=c*(1-o),h=0;h<i;h++){var d=u+c*h;l[a?i-1-h:h]=[d,d+f]}return l}function Vmt(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 C=1;for(u=0;u<o;u++){var E=v[u]=new Array(s),A=p[u]||[];for(c=0;c<s;c++)if(l?(d=C===1?"xy":"x"+C+"y"+C,C++):d=A[c],E[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;E[c]=d,b[f]=c,b[h]=u}}}else{var L=RI(t,n,"x"),_=RI(t,n,"y");r.xaxes=sme(L,i.xaxis,s,b,"x"),r.yaxes=sme(_,i.yaxis,o,b,"y")}var k=r._anchors={},M=r.roworder==="top to bottom";for(var g in b){var P=g.charAt(0),T=r[P+"side"],z,O,V;if(T.length<8)k[g]="free";else if(P==="x"){if(T.charAt(0)==="t"===M?(z=0,O=1,V=o):(z=o-1,O=-1,V=-1),a){var G=b[g];for(u=z;u!==V;u+=O)if(d=v[u][G],!!d&&(x=d.indexOf("y"),d.slice(0,x)===g)){k[g]=d.slice(x);break}}else for(u=z;u!==V;u+=O)if(h=r.yaxes[u],i.cartesian.indexOf(g+h)!==-1){k[g]=h;break}}else if(T.charAt(0)==="l"?(z=0,O=1,V=s):(z=s-1,O=-1,V=-1),a){var Z=b[g];for(u=z;u!==V;u+=O)if(d=v[Z][u],!!d&&(x=d.indexOf("y"),d.slice(x)===g)){k[g]=d.slice(0,x);break}}else for(u=z;u!==V;u+=O)if(f=r.xaxes[u],i.cartesian.indexOf(f+g)!==-1){k[g]=f;break}}}}function sme(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}lme.exports={moduleType:"component",name:"grid",schema:{layout:{grid:sV}},layoutAttributes:sV,sizeDefaults:Umt,contentDefaults:Vmt}});var uV=ye((wsr,ume)=>{"use strict";ume.exports={visible:{valType:"boolean",editType:"calc"},type:{valType:"enumerated",values:["percent","constant","sqrt","data"],editType:"calc"},symmetric:{valType:"boolean",editType:"calc"},array:{valType:"data_array",editType:"calc"},arrayminus:{valType:"data_array",editType:"calc"},value:{valType:"number",min:0,dflt:10,editType:"calc"},valueminus:{valType:"number",min:0,dflt:10,editType:"calc"},traceref:{valType:"integer",min:0,dflt:0,editType:"style"},tracerefminus:{valType:"integer",min:0,dflt:0,editType:"style"},copy_ystyle:{valType:"boolean",editType:"plot"},copy_zstyle:{valType:"boolean",editType:"style"},color:{valType:"color",editType:"style"},thickness:{valType:"number",min:0,dflt:2,editType:"style"},width:{valType:"number",min:0,editType:"plot"},editType:"calc"}});var hme=ye((Tsr,fme)=>{"use strict";var cme=Eo(),Gmt=qa(),Hmt=Dr(),jmt=pl(),Wmt=uV();fme.exports=function(e,t,r,n){var i="error_"+n.axis,a=jmt.newContainer(t,i),o=e[i]||{};function s(v,x){return Hmt.coerce(o,a,Wmt,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||cme(o.thickness)||cme(o.width)))}(!n.inherit||!a[h])&&(s("color",r),s("thickness"),s("width",Gmt.traceIs(t,"gl3d")?0:4))}}});var cV=ye((Asr,vme)=>{"use strict";vme.exports=function(t){var r=t.type,n=t.symmetric;if(r==="data"){var i=t.array||[];if(n)return function(u,c){var f=+i[c];return[f,f]};var a=t.arrayminus||[];return function(u,c){var f=+i[c],h=+a[c];return!isNaN(f)||!isNaN(h)?[h||0,f||0]:[NaN,NaN]}}else{var o=dme(r,t.value),s=dme(r,t.valueminus);return n||t.valueminus===void 0?function(u){var c=o(u);return[c,c]}:function(u){return[s(u),o(u)]}}};function dme(e,t){if(e==="percent")return function(r){return Math.abs(r*t/100)};if(e==="constant")return function(){return Math.abs(t)};if(e==="sqrt")return function(r){return Math.sqrt(Math.abs(r))}}});var mme=ye((Ssr,gme)=>{"use strict";var fV=Eo(),Xmt=qa(),hV=ho(),Zmt=Dr(),Ymt=cV();gme.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&&Xmt.traceIs(a,"errorBarsOK")){var o=hV.getFromId(t,a.xaxis),s=hV.getFromId(t,a.yaxis);pme(i,a,o,"x"),pme(i,a,s,"y")}}};function pme(e,t,r,n){var i=t["error_"+n]||{},a=i.visible&&["linear","log"].indexOf(r.type)!==-1,o=[];if(a){for(var s=Ymt(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(fV(r.c2l(f))){var h=s(f,c);if(fV(h[0])&&fV(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=hV.findExtremes(r,o,Zmt.extendFlat({tozero:b.opts.tozero},{padded:!0}));b.min=b.min.concat(p.min),b.max=b.max.concat(p.max)}}});var xme=ye((Msr,_me)=>{"use strict";var yme=Oa(),w_=Eo(),Kmt=So(),Jmt=Ru();_me.exports=function(t,r,n,i){var a,o=n.xaxis,s=n.yaxis,l=i&&i.duration>0,u=t._context.staticPlot;r.each(function(c){var f=c[0].trace,h=f.error_x||{},d=f.error_y||{},v;f.ids&&(v=function(C){return C.id});var x=Jmt.hasMarkers(f)&&f.marker.maxdisplayed>0;!d.visible&&!h.visible&&(c=[]);var b=yme.select(this).selectAll("g.errorbar").data(c,v);if(b.exit().remove(),!!c.length){h.visible||b.selectAll("path.xerror").remove(),d.visible||b.selectAll("path.yerror").remove(),b.style("opacity",1);var p=b.enter().append("g").classed("errorbar",!0);l&&p.style("opacity",0).transition().duration(i.duration).style("opacity",1),Kmt.setClipUrl(b,n.layerClipId,t),b.each(function(C){var E=yme.select(this),A=$mt(C,o,s);if(!(x&&!C.vis)){var L,_=E.select("path.yerror");if(d.visible&&w_(A.x)&&w_(A.yh)&&w_(A.ys)){var k=d.width;L="M"+(A.x-k)+","+A.yh+"h"+2*k+"m-"+k+",0V"+A.ys,A.noYS||(L+="m-"+k+",0h"+2*k),a=!_.size(),a?_=E.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=E.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=E.append("path").style("vector-effect",u?"none":"non-scaling-stroke").classed("xerror",!0):l&&(M=M.transition().duration(i.duration).ease(i.easing)),M.attr("d",L)}else M.remove()}})}})};function $mt(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 Tme=ye((Esr,wme)=>{"use strict";var Qmt=Oa(),bme=Ca();wme.exports=function(t){t.each(function(r){var n=r[0].trace,i=n.error_y||{},a=n.error_x||{},o=Qmt.select(this);o.selectAll("path.yerror").style("stroke-width",i.thickness+"px").call(bme.stroke,i.color),a.copy_ystyle&&(a=i),o.selectAll("path.xerror").style("stroke-width",a.thickness+"px").call(bme.stroke,a.color)})}});var Mme=ye((Csr,Sme)=>{"use strict";var c4=Dr(),Ame=mc().overrideAll,f4=uV(),$b={error_x:c4.extendFlat({},f4),error_y:c4.extendFlat({},f4)};delete $b.error_x.copy_zstyle;delete $b.error_y.copy_zstyle;delete $b.error_y.copy_ystyle;var h4={error_x:c4.extendFlat({},f4),error_y:c4.extendFlat({},f4),error_z:c4.extendFlat({},f4)};delete h4.error_x.copy_ystyle;delete h4.error_y.copy_ystyle;delete h4.error_z.copy_ystyle;delete h4.error_z.copy_zstyle;Sme.exports={moduleType:"component",name:"errorbars",schema:{traces:{scatter:$b,bar:$b,histogram:$b,scatter3d:Ame(h4,"calc","nested"),scattergl:Ame($b,"calc","nested")}},supplyDefaults:hme(),calc:mme(),makeComputeError:cV(),plot:xme(),style:Tme(),hoverInfo:eyt};function eyt(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 Cme=ye((ksr,Eme)=>{"use strict";Eme.exports={cn:{colorbar:"colorbar",cbbg:"cbbg",cbfill:"cbfill",cbfills:"cbfills",cbline:"cbline",cblines:"cblines",cbaxis:"cbaxis",cbtitleunshift:"cbtitleunshift",cbtitle:"cbtitle",cboutline:"cboutline",crisp:"crisp",jsPlaceholder:"js-placeholder"}}});var Fme=ye((Lsr,Dme)=>{"use strict";var T_=Oa(),dV=cd(),FI=Mc(),kme=qa(),Ry=ho(),DI=gv(),B0=Dr(),Ug=B0.strTranslate,Rme=Ao().extendFlat,vV=Tg(),Ng=So(),pV=Ca(),tyt=Mb(),ryt=iu(),iyt=Dv().flipScale,nyt=t4(),ayt=oI(),oyt=Rd(),gV=Kh(),Lme=gV.LINE_SPACING,Pme=gV.FROM_TL,Ime=gV.FROM_BR,gf=Cme().cn;function syt(e){var t=e._fullLayout,r=t._infolayer.selectAll("g."+gf.colorbar).data(lyt(e),function(n){return n._id});r.enter().append("g").attr("class",function(n){return n._id}).classed(gf.colorbar,!0),r.each(function(n){var i=T_.select(this);B0.ensureSingle(i,"rect",gf.cbbg),B0.ensureSingle(i,"g",gf.cbfills),B0.ensureSingle(i,"g",gf.cblines),B0.ensureSingle(i,"g",gf.cbaxis,function(o){o.classed(gf.crisp,!0)}),B0.ensureSingle(i,"g",gf.cbtitleunshift,function(o){o.append("g").classed(gf.cbtitle,!0)}),B0.ensureSingle(i,"rect",gf.cboutline);var a=uyt(i,n,e);a&&a.then&&(e._promises||[]).push(a),e._context.edits.colorbarPosition&&cyt(i,n,e)}),r.exit().each(function(n){FI.autoMargin(e,n._id)}).remove(),r.order()}function lyt(e){var t=e._fullLayout,r=e.calcdata,n=[],i,a,o,s;function l(E){return Rme(E,{_fillcolor:null,_line:{color:null,width:null,dash:null},_levels:{start:null,end:null,size:null},_filllevels:null,_fillgradient:null,_zrange:null})}function u(){typeof s.calc=="function"?s.calc(e,o,i):(i._fillgradient=a.reversescale?iyt(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 C=t._colorAxes[p];i=l(a.colorbar),i._id="cb"+p,i._propPrefix=p+".colorbar.",i._meta=t._meta,s={min:"cmin",max:"cmax"},C[0]!=="heatmap"&&(o=C[1],s.calc=o._module.colorbar.calc),u(),n.push(i)}return n}function uyt(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",C=t.xref==="paper",E=r._fullLayout,A=E._size,L=t._fillcolor,_=t._line,k=t.title,M=k.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},z=t._levels,O=fyt(r,t,g),V=O.fill,G=O.line,Z=Math.round(o*(s==="fraction"?n?A.w:A.h:1)),H=Z/(n?A.w:A.h),N=Math.round(i*(a==="fraction"?n?A.h:A.w:1)),j=N/(n?A.h:A.w),re=C?A.w:r._fullLayout.width,oe=p?A.h:r._fullLayout.height,_e=Math.round(n?x*re+d:b*oe+v),Me={center:.5,right:1}[f]||0,ke={top:1,middle:.5}[h]||0,me=n?x-Me*H:b-ke*H,ie=n?b-ke*j:x-Me*j,Se=Math.round(n?oe*(1-ie):re*ie);t._lenFrac=j,t._thickFrac=H,t._uFrac=me,t._vFrac=ie;var Le=t._axis=hyt(r,t,g);Le.position=H+(n?x+d/A.w:b+v/A.h);var Ae=["top","bottom"].indexOf(M)!==-1;if(n&&Ae&&(Le.title.side=M,Le.titlex=x+d/A.w,Le.titley=ie+(k.side==="top"?j-v/A.h:v/A.h)),!n&&!Ae&&(Le.title.side=M,Le.titley=b+v/A.h,Le.titlex=ie+d/A.w),_.color&&t.tickmode==="auto"){Le.tickmode="linear",Le.tick0=z.start;var De=z.size,Pe=B0.constrain(N/50,4,15)+1,ge=(g[1]-g[0])/((t.nticks||Pe)*De);if(ge>1){var Fe=Math.pow(10,Math.floor(Math.log(ge)/Math.LN10));De*=Fe*B0.roundUp(ge/Fe,[2,5,10]),(Math.abs(z.start)/z.size+1e-6)%1<2e-6&&(Le.tick0=0)}Le.dtick=De}Le.domain=n?[ie+v/A.h,ie+j-v/A.h]:[ie+d/A.w,ie+j-d/A.w],Le.setScale(),e.attr("transform",Ug(Math.round(A.l),Math.round(A.t)));var ce=e.select("."+gf.cbtitleunshift).attr("transform",Ug(-Math.round(A.l),-Math.round(A.t))),Ze=Le.ticklabelposition,ct=Le.title.font.size,pt=e.select("."+gf.cbaxis),Wt,st=0,lt=0;function Gt(ur,Qe){var Et={propContainer:Le,propName:t._propPrefix+"title",traceIndex:t._traceIndex,_meta:t._meta,placeholder:E._dfltTitle.colorbar,containerGroup:e.select("."+gf.cbtitle)},er=ur.charAt(0)==="h"?ur.substr(1):"h"+ur;e.selectAll("."+er+",."+er+"-math-group").remove(),tyt.draw(r,ur,Rme(Et,Qe||{}))}function Nt(){if(n&&Ae||!n&&!Ae){var ur,Qe;M==="top"&&(ur=d+A.l+re*x,Qe=v+A.t+oe*(1-ie-j)+3+ct*.75),M==="bottom"&&(ur=d+A.l+re*x,Qe=v+A.t+oe*(1-ie)-3-ct*.25),M==="right"&&(Qe=v+A.t+oe*b+3+ct*.75,ur=d+A.l+re*ie),Gt(Le._id+"title",{attributes:{x:ur,y:Qe,"text-anchor":n?"start":"middle"}})}}function $t(){if(n&&!Ae||!n&&Ae){var ur=Le.position||0,Qe=Le._offset+Le._length/2,Et,er;if(M==="right")er=Qe,Et=A.l+re*ur+10+ct*(Le.showticklabels?1:.5);else if(Et=Qe,M==="bottom"&&(er=A.t+oe*ur+10+(Ze.indexOf("inside")===-1?Le.tickfont.size:0)+(Le.ticks!=="intside"&&t.ticklen||0)),M==="top"){var Ut=k.text.split("<br>").length;er=A.t+oe*ur+10-Z-Lme*ct*Ut}Gt((n?"h":"v")+Le._id+"title",{avoid:{selection:T_.select(r).selectAll("g."+Le._id+"tick"),side:M,offsetTop:n?0:A.t,offsetLeft:n?A.l:0,maxShift:n?E.width:E.height},attributes:{x:Et,y:er,"text-anchor":"middle"},transform:{rotate:n?-90:0,offset:0}})}}function sr(){if(!n&&!Ae||n&&Ae){var ur=e.select("."+gf.cbtitle),Qe=ur.select("text"),Et=[-l/2,l/2],er=ur.select(".h"+Le._id+"title-math-group").node(),Ut=15.6;Qe.node()&&(Ut=parseInt(Qe.node().style.fontSize,10)*Lme);var Ft;if(er?(Ft=Ng.bBox(er),lt=Ft.width,st=Ft.height,st>Ut&&(Et[1]-=(st-Ut)/2)):Qe.node()&&!Qe.classed(gf.jsPlaceholder)&&(Ft=Ng.bBox(Qe.node()),lt=Ft.width,st=Ft.height),n){if(st){if(st+=5,M==="top")Le.domain[1]-=st/A.h,Et[1]*=-1;else{Le.domain[0]+=st/A.h;var bt=ryt.lineCount(Qe);Et[1]+=(1-bt)*Ut}ur.attr("transform",Ug(Et[0],Et[1])),Le.setScale()}}else lt&&(M==="right"&&(Le.domain[0]+=(lt+ct/2)/A.w),ur.attr("transform",Ug(Et[0],Et[1])),Le.setScale())}e.selectAll("."+gf.cbfills+",."+gf.cblines).attr("transform",n?Ug(0,Math.round(A.h*(1-Le.domain[1]))):Ug(Math.round(A.w*Le.domain[0]),0)),pt.attr("transform",n?Ug(0,Math.round(-A.t)):Ug(Math.round(-A.l),0));var yt=e.select("."+gf.cbfills).selectAll("rect."+gf.cbfill).attr("style","").data(V);yt.enter().append("rect").classed(gf.cbfill,!0).attr("style",""),yt.exit().remove();var Yt=g.map(Le.c2p).map(Math.round).sort(function(Wr,Ur){return Wr-Ur});yt.each(function(Wr,Ur){var dt=[Ur===0?g[0]:(V[Ur]+V[Ur-1])/2,Ur===V.length-1?g[1]:(V[Ur]+V[Ur+1])/2].map(Le.c2p).map(Math.round);n&&(dt[1]=B0.constrain(dt[1]+(dt[1]>dt[0])?1:-1,Yt[0],Yt[1]));var Ge=T_.select(this).attr(n?"x":"y",_e).attr(n?"y":"x",T_.min(dt)).attr(n?"width":"height",Math.max(Z,2)).attr(n?"height":"width",Math.max(T_.max(dt)-T_.min(dt),2));if(t._fillgradient)Ng.gradient(Ge,r,t._id,n?"vertical":"horizontalreversed",t._fillgradient,"fill");else{var Je=T(Wr).replace("e-","");Ge.attr("fill",dV(Je).toHexString())}});var lr=e.select("."+gf.cblines).selectAll("path."+gf.cbline).data(_.color&&_.width?G:[]);lr.enter().append("path").classed(gf.cbline,!0),lr.exit().remove(),lr.each(function(Wr){var Ur=_e,dt=Math.round(Le.c2p(Wr))+_.width/2%1;T_.select(this).attr("d","M"+(n?Ur+","+dt:dt+","+Ur)+(n?"h":"v")+Z).call(Ng.lineGroupStyle,_.width,P(Wr),_.dash)}),pt.selectAll("g."+Le._id+"tick,path").remove();var Tr=_e+Z+(l||0)/2-(t.ticks==="outside"?1:0),Rr=Ry.calcTicks(Le),ei=Ry.getTickSigns(Le)[2];return Ry.drawTicks(r,Le,{vals:Le.ticks==="inside"?Ry.clipEnds(Le,Rr):Rr,layer:pt,path:Ry.makeTickPath(Le,Tr,ei),transFn:Ry.makeTransTickFn(Le)}),Ry.drawLabels(r,Le,{vals:Rr,layer:pt,transFn:Ry.makeTransTickLabelFn(Le),labelFns:Ry.makeLabelFns(Le,Tr)})}function wr(){var ur,Qe=Z+l/2;Ze.indexOf("inside")===-1&&(ur=Ng.bBox(pt.node()),Qe+=n?ur.width:ur.height),Wt=ce.select("text");var Et=0,er=n&&M==="top",Ut=!n&&M==="right",Ft=0;if(Wt.node()&&!Wt.classed(gf.jsPlaceholder)){var bt,yt=ce.select(".h"+Le._id+"title-math-group").node();yt&&(n&&Ae||!n&&!Ae)?(ur=Ng.bBox(yt),Et=ur.width,bt=ur.height):(ur=Ng.bBox(ce.node()),Et=ur.right-A.l-(n?_e:Se),bt=ur.bottom-A.t-(n?Se:_e),!n&&M==="top"&&(Qe+=ur.height,Ft=ur.height)),Ut&&(Wt.attr("transform",Ug(Et/2+ct/2,0)),Et*=2),Qe=Math.max(Qe,n?Et:bt)}var Yt=(n?d:v)*2+Qe+u+l/2,lr=0;!n&&k.text&&h==="bottom"&&b<=0&&(lr=Yt/2,Yt+=lr,Ft+=lr),E._hColorbarMoveTitle=lr,E._hColorbarMoveCBTitle=Ft;var Tr=u+l,Rr=(n?_e:Se)-Tr/2-(n?d:0),ei=(n?Se:_e)-(n?N:v+Ft-lr);e.select("."+gf.cbbg).attr("x",Rr).attr("y",ei).attr(n?"width":"height",Math.max(Yt-lr,2)).attr(n?"height":"width",Math.max(N+Tr,2)).call(pV.fill,c).call(pV.stroke,t.bordercolor).style("stroke-width",u);var Wr=Ut?Math.max(Et-10,0):0;e.selectAll("."+gf.cboutline).attr("x",(n?_e:Se+d)+Wr).attr("y",(n?Se+v-N:_e)+(er?st:0)).attr(n?"width":"height",Math.max(Z,2)).attr(n?"height":"width",Math.max(N-(n?2*v+st:2*d+Wr),2)).call(pV.stroke,t.outlinecolor).style({fill:"none","stroke-width":l});var Ur=n?Me*Yt:0,dt=n?0:(1-ke)*Yt-Ft;if(Ur=C?A.l-Ur:-Ur,dt=p?A.t-dt:-dt,e.attr("transform",Ug(Ur,dt)),!n&&(u||dV(c).getAlpha()&&!dV.equals(E.paper_bgcolor,c))){var Ge=pt.selectAll("text"),Je=Ge[0].length,je=e.select("."+gf.cbbg).node(),$e=Ng.bBox(je),wt=Ng.getTranslate(e),Ie=2;Ge.each(function(fi,Hi){var Pn=0,wn=Je-1;if(Hi===Pn||Hi===wn){var pn=Ng.bBox(this),Vn=Ng.getTranslate(this),kn;if(Hi===wn){var ea=pn.right+Vn.x,ua=$e.right+wt.x+Se-u-Ie+x;kn=ua-ea,kn>0&&(kn=0)}else if(Hi===Pn){var Vt=pn.left+Vn.x,_t=$e.left+wt.x+Se+u+Ie;kn=_t-Vt,kn<0&&(kn=0)}kn&&(Je<3?this.setAttribute("transform","translate("+kn+",0) "+this.getAttribute("transform")):this.setAttribute("visibility","hidden"))}})}var xe={},Ce=Pme[f],vt=Ime[f],nr=Pme[h],ir=Ime[h],pr=Yt-Z;n?(a==="pixels"?(xe.y=b,xe.t=N*nr,xe.b=N*ir):(xe.t=xe.b=0,xe.yt=b+i*nr,xe.yb=b-i*ir),s==="pixels"?(xe.x=x,xe.l=Yt*Ce,xe.r=Yt*vt):(xe.l=pr*Ce,xe.r=pr*vt,xe.xl=x-o*Ce,xe.xr=x+o*vt)):(a==="pixels"?(xe.x=x,xe.l=N*Ce,xe.r=N*vt):(xe.l=xe.r=0,xe.xl=x+i*Ce,xe.xr=x-i*vt),s==="pixels"?(xe.y=1-b,xe.t=Yt*nr,xe.b=Yt*ir):(xe.t=pr*nr,xe.b=pr*ir,xe.yt=b-o*nr,xe.yb=b+o*ir));var oi=t.y<.5?"b":"t",di=t.x<.5?"l":"r";r._fullLayout._reservedMargin[t._id]={};var Jr={r:E.width-Rr-Ur,l:Rr+xe.r,b:E.height-ei-dt,t:ei+xe.b};C&&p?FI.autoMargin(r,t._id,xe):C?r._fullLayout._reservedMargin[t._id][oi]=Jr[oi]:p||n?r._fullLayout._reservedMargin[t._id][di]=Jr[di]:r._fullLayout._reservedMargin[t._id][oi]=Jr[oi]}return B0.syncOrAsync([FI.previousPromises,Nt,sr,$t,FI.previousPromises,wr],r)}function cyt(e,t,r){var n=t.orientation==="v",i=r._fullLayout,a=i._size,o,s,l;DI.init({element:e.node(),gd:r,prepFn:function(){o=e.attr("transform"),vV(e)},moveFn:function(u,c){e.attr("transform",o+Ug(u,c)),s=DI.align((n?t._uFrac:t._vFrac)+u/a.w,n?t._thickFrac:t._lenFrac,0,1,t.xanchor),l=DI.align((n?t._vFrac:1-t._uFrac)-c/a.h,n?t._lenFrac:t._thickFrac,0,1,t.yanchor);var f=DI.getCursor(s,l,t.xanchor,t.yanchor);vV(e,f)},doneFn:function(){if(vV(e),s!==void 0&&l!==void 0){var u={};u[t._propPrefix+"x"]=s,u[t._propPrefix+"y"]=l,t._traceIndex!==void 0?kme.call("_guiRestyle",r,u,t._traceIndex):kme.call("_guiRelayout",r,u)}}})}function fyt(e,t,r){var n=t._levels,i=[],a=[],o,s,l=n.end+n.size/100,u=n.size,c=1.001*r[0]-.001*r[1],f=1.001*r[1]-.001*r[0];for(s=0;s<1e5&&(o=n.start+s*u,!(u>0?o>=l:o<=l));s++)o>c&&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 hyt(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,oyt,c,f)}return nyt(a,s,u,l,n),ayt(a,s,u,l),s}Dme.exports={draw:syt}});var Ome=ye((Psr,zme)=>{"use strict";zme.exports={moduleType:"component",name:"colorbar",attributes:Q6(),supplyDefaults:Cq(),draw:Fme().draw,hasColorbar:bq()}});var Bme=ye((Isr,qme)=>{"use strict";qme.exports={moduleType:"component",name:"legend",layoutAttributes:bB(),supplyLayoutDefaults:AB(),draw:zB(),style:IB()}});var Ume=ye((Rsr,Nme)=>{"use strict";Nme.exports={moduleType:"locale",name:"en",dictionary:{"Click to enter Colorscale title":"Click to enter Colourscale title"},format:{days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],periods:["AM","PM"],dateTime:"%a %b %e %X %Y",date:"%d/%m/%Y",time:"%H:%M:%S",decimal:".",thousands:",",grouping:[3],currency:["$",""],year:"%Y",month:"%b %Y",dayMonth:"%b %-d",dayMonthYear:"%b %-d, %Y"}}});var Gme=ye((Dsr,Vme)=>{"use strict";Vme.exports={moduleType:"locale",name:"en-US",dictionary:{"Click to enter Colorscale title":"Click to enter Colorscale title"},format:{date:"%m/%d/%Y"}}});var yV=ye((Fsr,Xme)=>{"use strict";var dyt=qa(),Wme=Dr(),mV=Wme.extendFlat,Hme=Wme.extendDeep;function jme(e){var t;switch(e){case"themes__thumb":t={autosize:!0,width:150,height:150,title:{text:""},showlegend:!1,margin:{l:5,r:5,t:5,b:5,pad:0},annotations:[]};break;case"thumbnail":t={title:{text:""},hidesources:!0,showlegend:!1,borderwidth:0,bordercolor:"",margin:{l:1,r:1,t:1,b:1,pad:0},annotations:[]};break;default:t={}}return t}function vyt(e){var t=["xaxis","yaxis","zaxis"];return t.indexOf(e.slice(0,5))>-1}Xme.exports=function(t,r){var n,i=t.data,a=t.layout,o=Hme([],i),s=Hme({},a,jme(r.tileClass)),l=t._context||{};if(r.width&&(s.width=r.width),r.height&&(s.height=r.height),r.tileClass==="thumbnail"||r.tileClass==="themes__thumb"){s.annotations=[];var u=Object.keys(s);for(n=0;n<u.length;n++)vyt(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),dyt.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={}),mV(d.xaxis,h),mV(d.yaxis,h),mV(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=jme(r.tileClass),x}});var Kme=ye((zsr,Yme)=>{"use strict";var pyt=vb().EventEmitter,gyt=qa(),myt=Dr(),Zme=Ly(),yyt=yV(),_yt=VP(),xyt=GP();function byt(e,t){var r=new pyt,n=yyt(e,{format:"png"}),i=n.gd;i.style.position="absolute",i.style.left="-5000px",document.body.appendChild(i);function a(){var s=Zme.getDelay(i._fullLayout);setTimeout(function(){var l=_yt(i),u=document.createElement("canvas");u.id=myt.randstr(),r=xyt({format:t.format,width:i._fullLayout.width,height:i._fullLayout.height,canvas:u,emitter:r,svg:l}),r.clean=function(){i&&document.body.removeChild(i)}},s)}var o=Zme.getRedrawFunc(i);return gyt.call("_doPlot",i,n.data,n.layout,n.config).then(o).then(a).catch(function(s){r.emit("error",s)}),r}Yme.exports=byt});var Qme=ye((Osr,$me)=>{"use strict";var Jme=Ly(),wyt={getDelay:Jme.getDelay,getRedrawFunc:Jme.getRedrawFunc,clone:yV(),toSVG:VP(),svgToImg:GP(),toImage:Kme(),downloadImage:QN()};$me.exports=wyt});var tye=ye(Dy=>{"use strict";Dy.version=o6().version;vee();ine();var Tyt=qa(),d4=Dy.register=Tyt.register,xV=Tde(),eye=Object.keys(xV);for(zI=0;zI<eye.length;zI++)_T=eye[zI],_T.charAt(0)!=="_"&&(Dy[_T]=xV[_T]),d4({moduleType:"apiMethod",name:_T,fn:xV[_T]});var _T,zI;d4(mpe());d4([Vpe(),t0e(),zf(),_0e(),I0e(),ege(),xge(),Bge(),ime(),lV(),Mme(),tc(),Ome(),Bme(),vf(),sN()]);d4([Ume(),Gme()]);window.PlotlyLocales&&Array.isArray(window.PlotlyLocales)&&(d4(window.PlotlyLocales),delete window.PlotlyLocales);Dy.Icons=HL();var OI=vf(),_V=Mc();Dy.Plots={resize:_V.resize,graphJson:_V.graphJson,sendDataToCloud:_V.sendDataToCloud};Dy.Fx={hover:OI.hover,unhover:OI.unhover,loneHover:OI.loneHover,loneUnhover:OI.loneUnhover};Dy.Snapshot=Qme();Dy.PlotSchema=_3()});var iye=ye((Bsr,rye)=>{"use strict";rye.exports=tye()});var Qb=ye((Nsr,nye)=>{"use strict";nye.exports={TEXTPAD:3,eventDataKeys:["value","label"]}});var Lm=ye((Usr,lye)=>{"use strict";var Of=pf(),aye=df().axisHoverFormat,Ayt=Qo().hovertemplateAttrs,Syt=Qo().texttemplateAttrs,sye=Tu(),Myt=ec(),oye=Qb(),Eyt=Pd().pattern,e2=Ao().extendFlat,bV=Myt({editType:"calc",arrayOk:!0,colorEditType:"style"}),Cyt=Of.marker,kyt=Cyt.line,Lyt=e2({},kyt.width,{dflt:0}),Pyt=e2({width:Lyt,editType:"calc"},sye("marker.line")),Iyt=e2({line:Pyt,editType:"calc"},sye("marker"),{opacity:{valType:"number",arrayOk:!0,dflt:1,min:0,max:1,editType:"style"},pattern:Eyt,cornerradius:{valType:"any",editType:"calc"}});lye.exports={x:Of.x,x0:Of.x0,dx:Of.dx,y:Of.y,y0:Of.y0,dy:Of.dy,xperiod:Of.xperiod,yperiod:Of.yperiod,xperiod0:Of.xperiod0,yperiod0:Of.yperiod0,xperiodalignment:Of.xperiodalignment,yperiodalignment:Of.yperiodalignment,xhoverformat:aye("x"),yhoverformat:aye("y"),text:Of.text,texttemplate:Syt({editType:"plot"},{keys:oye.eventDataKeys}),hovertext:Of.hovertext,hovertemplate:Ayt({},{keys:oye.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({},bV,{}),insidetextfont:e2({},bV,{}),outsidetextfont:e2({},bV,{}),constraintext:{valType:"enumerated",values:["inside","outside","both","none"],dflt:"both",editType:"calc"},cliponaxis:e2({},Of.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:Iyt,offsetgroup:Of.offsetgroup,alignmentgroup:Of.alignmentgroup,selected:{marker:{opacity:Of.selected.marker.opacity,color:Of.selected.marker.color,editType:"style"},textfont:Of.selected.textfont,editType:"style"},unselected:{marker:{opacity:Of.unselected.marker.opacity,color:Of.unselected.marker.color,editType:"style"},textfont:Of.unselected.textfont,editType:"style"},zorder:Of.zorder}});var qI=ye((Vsr,uye)=>{"use strict";uye.exports={barmode:{valType:"enumerated",values:["stack","group","overlay","relative"],dflt:"group",editType:"calc"},barnorm:{valType:"enumerated",values:["","fraction","percent"],dflt:"",editType:"calc"},bargap:{valType:"number",min:0,max:1,editType:"calc"},bargroupgap:{valType:"number",min:0,max:1,dflt:0,editType:"calc"},barcornerradius:{valType:"any",editType:"calc"}}});var BI=ye((Gsr,hye)=>{"use strict";var Ryt=Ca(),cye=Dv().hasColorscale,fye=Jh(),Dyt=Dr().coercePattern;hye.exports=function(t,r,n,i,a){var o=n("marker.color",i),s=cye(t,"marker");s&&fye(t,r,a,n,{prefix:"marker.",cLetter:"c"}),n("marker.line.color",Ryt.defaultLine),cye(t,"marker.line")&&fye(t,r,a,n,{prefix:"marker.line.",cLetter:"c"}),n("marker.line.width"),n("marker.opacity"),Dyt(n,"marker.pattern",o,s),n("selected.marker.color"),n("unselected.marker.color")}});var r0=ye((Hsr,yye)=>{"use strict";var dye=Eo(),xT=Dr(),vye=Ca(),Fyt=qa(),zyt=K3(),Oyt=Pg(),qyt=BI(),Byt=Gb(),pye=Lm(),NI=xT.coerceFont;function Nyt(e,t,r,n){function i(u,c){return xT.coerce(e,t,pye,u,c)}var a=zyt(e,t,n,i);if(!a){t.visible=!1;return}Oyt(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");mye(e,t,n,i,o,{moduleHasSelected:!0,moduleHasUnselected:!0,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),qyt(e,t,i,r,n);var s=(t.marker.line||{}).color,l=Fyt.getComponentMethod("errorbars","supplyDefaults");l(e,t,s||vye.defaultLine,{axis:"y"}),l(e,t,s||vye.defaultLine,{axis:"x",inherit:"y"}),xT.coerceSelectionMarkerOpacity(t,i)}function Uyt(e,t){var r,n;function i(s,l){return xT.coerce(n._input,n,pye,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=gye(o)),Byt(r,n,t,i,t.barmode)}}function gye(e){if(dye(e)){if(e=+e,e>=0)return e}else if(typeof e=="string"&&(e=e.trim(),e.slice(-1)==="%"&&dye(e.slice(0,-1))&&(e=+e.slice(0,-1),e>=0)))return e+"%"}function mye(e,t,r,n,i,a){a=a||{};var o=a.moduleHasSelected!==!1,s=a.moduleHasUnselected!==!1,l=a.moduleHasConstrain!==!1,u=a.moduleHasCliponaxis!==!1,c=a.moduleHasTextangle!==!1,f=a.moduleHasInsideanchor!==!1,h=!!a.hasPathbar,d=Array.isArray(i)||i==="auto",v=d||i==="inside",x=d||i==="outside";if(v||x){var b=NI(n,"textfont",r.font),p=xT.extendFlat({},b),C=e.textfont&&e.textfont.color,E=!C;if(E&&delete p.color,NI(n,"insidetextfont",p),h){var A=xT.extendFlat({},b);E&&delete A.color,NI(n,"pathbar.textfont",A)}x&&NI(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")}yye.exports={supplyDefaults:Nyt,crossTraceDefaults:Uyt,handleText:mye,validateCornerradius:gye}});var wV=ye((jsr,_ye)=>{"use strict";var Vyt=qa(),Gyt=ho(),Hyt=Dr(),jyt=qI(),Wyt=r0().validateCornerradius;_ye.exports=function(e,t,r){function n(x,b){return Hyt.coerce(e,t,jyt,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(Vyt.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=Gyt.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=Wyt(v)}});var v4=ye((Wsr,xye)=>{"use strict";var bT=Dr();xye.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 Mye=ye((Xsr,Sye)=>{"use strict";var bye=ho(),wye=Rg(),Tye=Dv().hasColorscale,Aye=Fv(),Xyt=v4(),Zyt=z0();Sye.exports=function(t,r){var n=bye.getFromId(t,r.xaxis||"x"),i=bye.getFromId(t,r.yaxis||"y"),a,o,s,l,u,c,f={msUTC:!!(r.base||r.base===0)};r.orientation==="h"?(a=n.makeCalcdata(r,"x",f),s=i.makeCalcdata(r,"y"),l=wye(r,i,"y",s),u=!!r.yperiodalignment,c="y"):(a=i.makeCalcdata(r,"y",f),s=n.makeCalcdata(r,"x"),l=wye(r,n,"x",s),u=!!r.xperiodalignment,c="x"),o=l.vals;for(var h=Math.min(o.length,a.length),d=new Array(h),v=0;v<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 Tye(r,"marker")&&Aye(t,r,{vals:r.marker.color,containerStr:"marker",cLetter:"c"}),Tye(r,"marker.line")&&Aye(t,r,{vals:r.marker.line.color,containerStr:"marker.line",cLetter:"c"}),Xyt(d,r),Zyt(d,r),d}});var _v=ye((Zsr,Cye)=>{"use strict";var Yyt=Oa(),Kyt=Dr();function Jyt(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=Yyt.select(this).select("text");Kyt.setTransormAndDisplay(u,l)}})}}function $yt(e,t,r){if(r.uniformtext.mode){var n=Eye(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 Qyt(e,t){var r=Eye(e);t[r]=void 0}function Eye(e){return"_"+e+"Text_minsize"}Cye.exports={recordMinTextSize:$yt,clearMinTextSize:Qyt,resizeText:Jyt}});var UI=ye(t2=>{"use strict";var e1t=Eo(),t1t=cd(),kye=Dr().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(e1t(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 t1t(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 kye(e)?t<e.length&&(r=e[t]):r=e,r};t2.getLineWidth=function(e,t){var r=0<t.mlw?t.mlw:kye(e.marker.line.width)?0:e.marker.line.width;return r}});var N0=ye((Ksr,Nye)=>{"use strict";var p4=Oa(),r1t=Ca(),g4=So(),Lye=Dr(),Pye=qa(),Iye=_v().resizeText,TV=Lm(),i1t=TV.textfont,n1t=TV.insidetextfont,a1t=TV.outsidetextfont,Qd=UI();function o1t(e){var t=p4.select(e).selectAll('g[class^="barlayer"]').selectAll("g.trace");Iye(e,t,"bar");var r=t.size(),n=e._fullLayout;t.style("opacity",function(i){return i[0].trace.opacity}).each(function(i){(n.barmode==="stack"&&r>1||n.bargap===0&&n.bargroupgap===0&&!i[0].trace.marker.line.width)&&p4.select(this).attr("shape-rendering","crispEdges")}),t.selectAll("g.points").each(function(i){var a=p4.select(this),o=i[0].trace;Rye(a,o,e)}),Pye.getComponentMethod("errorbars","style")(t)}function Rye(e,t,r){g4.pointStyle(e.selectAll("path"),t,r),Dye(e,t,r)}function Dye(e,t,r){e.selectAll("text").each(function(n){var i=p4.select(this),a=Lye.ensureUniformFontSize(r,Fye(i,n,t,r));g4.font(i,a)})}function s1t(e,t,r){var n=t[0].trace;n.selectedpoints?l1t(r,n,e):(Rye(r,n,e),Pye.getComponentMethod("errorbars","style")(r))}function l1t(e,t,r){g4.selectedPointStyle(e.selectAll("path"),t),u1t(e.selectAll("text"),t,r)}function u1t(e,t,r){e.each(function(n){var i=p4.select(this),a;if(n.selected){a=Lye.ensureUniformFontSize(r,Fye(i,n,t,r));var o=t.selected.textfont&&t.selected.textfont.color;o&&(a.color=o),g4.font(i,a)}else g4.selectedTextStyle(i,t)})}function Fye(e,t,r,n){var i=n._fullLayout.font,a=r.textfont;if(e.classed("bartext-inside")){var o=Bye(t,r);a=Oye(r,t.i,i,o)}else e.classed("bartext-outside")&&(a=qye(r,t.i,i));return a}function zye(e,t,r){return AV(i1t,e.textfont,t,r)}function Oye(e,t,r,n){var i=zye(e,t,r),a=e._input.textfont===void 0||e._input.textfont.color===void 0||Array.isArray(e.textfont.color)&&e.textfont.color[t]===void 0;return a&&(i={color:r1t.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}),AV(n1t,e.insidetextfont,t,i)}function qye(e,t,r){var n=zye(e,t,r);return AV(a1t,e.outsidetextfont,t,n)}function AV(e,t,r,n){t=t||{};var i=Qd.getValue(t.family,r),a=Qd.getValue(t.size,r),o=Qd.getValue(t.color,r),s=Qd.getValue(t.weight,r),l=Qd.getValue(t.style,r),u=Qd.getValue(t.variant,r),c=Qd.getValue(t.textcase,r),f=Qd.getValue(t.lineposition,r),h=Qd.getValue(t.shadow,r);return{family:Qd.coerceString(e.family,i,n.family),size:Qd.coerceNumber(e.size,a,n.size),color:Qd.coerceColor(e.color,o,n.color),weight:Qd.coerceString(e.weight,s,n.weight),style:Qd.coerceString(e.style,l,n.style),variant:Qd.coerceString(e.variant,u,n.variant),textcase:Qd.coerceString(e.variant,c,n.textcase),lineposition:Qd.coerceString(e.variant,f,n.lineposition),shadow:Qd.coerceString(e.variant,h,n.shadow)}}function Bye(e,t){return t.type==="waterfall"?t[e.dir].marker.color:e.mcc||e.mc||t.marker.color}Nye.exports={style:o1t,styleTextPoints:Dye,styleOnSelect:s1t,getInsideTextFont:Oye,getOutsideTextFont:qye,getBarColor:Bye,resizeText:Iye}});var i2=ye((Jsr,Zye)=>{"use strict";var VI=Oa(),GI=Eo(),Fd=Dr(),c1t=iu(),f1t=Ca(),A_=So(),h1t=qa(),HI=ho().tickText,Uye=_v(),d1t=Uye.recordMinTextSize,v1t=Uye.clearMinTextSize,SV=N0(),wT=UI(),p1t=Qb(),Vye=Lm(),g1t=Vye.text,m1t=Vye.textposition,y1t=rp().appendArrayPointValue,Uv=p1t.TEXTPAD;function _1t(e){return e.id}function x1t(e){if(e.ids)return _1t}function MV(e){return(e>0)-(e<0)}function Pm(e,t){return e<t?1:-1}function b1t(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 Gye(e,t,r,n){if(!t.uniformtext.mode&&Hye(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 Hye(e){return e&&e.duration>0}function w1t(e,t,r,n,i,a){var o=t.xaxis,s=t.yaxis,l=e._fullLayout,u=e._context.staticPlot;i||(i={mode:l.barmode,norm:l.barmode,gap:l.bargap,groupgap:l.bargroupgap},v1t("bar",l));var c=Fd.makeTraceGroups(n,r,"trace bars").each(function(f){var h=VI.select(this),d=f[0].trace,v=f[0].t,x=d.type==="waterfall",b=d.type==="funnel",p=d.type==="histogram",C=d.type==="bar",E=C||b,A=0;x&&d.connector.visible&&d.connector.mode==="between"&&(A=d.connector.line.width/2);var L=d.orientation==="h",_=Hye(i),k=Fd.ensureSingle(h,"g","points"),M=x1t(d),g=k.selectAll("g.point").data(Fd.identity,M);g.enter().append("g").classed("point",!0),g.exit().remove(),g.each(function(T,z){var O=VI.select(this),V=b1t(T,o,s,L),G=V[0][0],Z=V[0][1],H=V[1][0],N=V[1][1],j=(L?Z-G:N-H)===0;j&&E&&wT.getLineWidth(d,T)&&(j=!1),j||(j=!GI(G)||!GI(Z)||!GI(H)||!GI(N)),T.isBlank=j,j&&(L?Z=G:N=H),A&&!j&&(L?(G-=Pm(G,Z)*A,Z+=Pm(G,Z)*A):(H-=Pm(H,N)*A,N+=Pm(H,N)*A));var re,oe;if(d.type==="waterfall"){if(!j){var _e=d[T.dir].marker;re=_e.line.width,oe=_e.color}}else re=wT.getLineWidth(d,T),oe=T.mc||d.marker.color;function Me(Qe){var Et=VI.round(re/2%1,2);return i.gap===0&&i.groupgap===0?VI.round(Math.round(Qe)-Et,2):Qe}function ke(Qe,Et,er){return er&&Qe===Et?Qe:Math.abs(Qe-Et)>=2?Me(Qe):Qe>Et?Math.ceil(Qe):Math.floor(Qe)}var me=f1t.opacity(oe),ie=me<1||re>.01?Me:ke;e._context.staticPlot||(G=ie(G,Z,L),Z=ie(Z,G,L),H=ie(H,N,!L),N=ie(N,H,!L));var Se=L?o.c2p:s.c2p,Le;T.s0>0?Le=T._sMax:T.s0<0?Le=T._sMin:Le=T.s1>0?T._sMax:T._sMin;function Ae(Qe,Et){if(!Qe)return 0;var er=Math.abs(L?N-H:Z-G),Ut=Math.abs(L?Z-G:N-H),Ft=ie(Math.abs(Se(Le,!0)-Se(0,!0))),bt=T.hasB?Math.min(er/2,Ut/2):Math.min(er/2,Ft),yt;if(Et==="%"){var Yt=Math.min(50,Qe);yt=er*(Yt/100)}else yt=Qe;return ie(Math.max(Math.min(yt,bt),0))}var De=C||p?Ae(v.cornerradiusvalue,v.cornerradiusform):0,Pe,ge,Fe="M"+G+","+H+"V"+N+"H"+Z+"V"+H+"Z",ce=0;if(De&&T.s){var Ze=MV(T.s0)===0||MV(T.s)===MV(T.s0)?T.s1:T.s0;if(ce=ie(T.hasB?0:Math.abs(Se(Le,!0)-Se(Ze,!0))),ce<De){var ct=Pm(G,Z),pt=Pm(H,N),Wt=ct===-pt?1:0;if(L)if(T.hasB)Pe="M"+(G+De*ct)+","+H+"A "+De+","+De+" 0 0 "+Wt+" "+G+","+(H+De*pt)+"V"+(N-De*pt)+"A "+De+","+De+" 0 0 "+Wt+" "+(G+De*ct)+","+N+"H"+(Z-De*ct)+"A "+De+","+De+" 0 0 "+Wt+" "+Z+","+(N-De*pt)+"V"+(H+De*pt)+"A "+De+","+De+" 0 0 "+Wt+" "+(Z-De*ct)+","+H+"Z";else{ge=Math.abs(Z-G)+ce;var st=ge<De?De-Math.sqrt(ge*(2*De-ge)):0,lt=ce>0?Math.sqrt(ce*(2*De-ce)):0,Gt=ct>0?Math.max:Math.min;Pe="M"+G+","+H+"V"+(N-st*pt)+"H"+Gt(Z-(De-ce)*ct,G)+"A "+De+","+De+" 0 0 "+Wt+" "+Z+","+(N-De*pt-lt)+"V"+(H+De*pt+lt)+"A "+De+","+De+" 0 0 "+Wt+" "+Gt(Z-(De-ce)*ct,G)+","+(H+st*pt)+"Z"}else if(T.hasB)Pe="M"+(G+De*ct)+","+H+"A "+De+","+De+" 0 0 "+Wt+" "+G+","+(H+De*pt)+"V"+(N-De*pt)+"A "+De+","+De+" 0 0 "+Wt+" "+(G+De*ct)+","+N+"H"+(Z-De*ct)+"A "+De+","+De+" 0 0 "+Wt+" "+Z+","+(N-De*pt)+"V"+(H+De*pt)+"A "+De+","+De+" 0 0 "+Wt+" "+(Z-De*ct)+","+H+"Z";else{ge=Math.abs(N-H)+ce;var Nt=ge<De?De-Math.sqrt(ge*(2*De-ge)):0,$t=ce>0?Math.sqrt(ce*(2*De-ce)):0,sr=pt>0?Math.max:Math.min;Pe="M"+(G+Nt*ct)+","+H+"V"+sr(N-(De-ce)*pt,H)+"A "+De+","+De+" 0 0 "+Wt+" "+(G+De*ct-$t)+","+N+"H"+(Z-De*ct+$t)+"A "+De+","+De+" 0 0 "+Wt+" "+(Z-Nt*ct)+","+sr(N-(De-ce)*pt,H)+"V"+H+"Z"}}else Pe=Fe}else Pe=Fe;var wr=Gye(Fd.ensureSingle(O,"path"),l,i,a);if(wr.style("vector-effect",u?"none":"non-scaling-stroke").attr("d",isNaN((Z-G)*(N-H))||j&&e._context.staticPlot?"M0,0Z":Pe).call(A_.setClipUrl,t.layerClipId,e),!l.uniformtext.mode&&_){var ur=A_.makePointStyleFns(d);A_.singlePointStyle(T,wr,d,ur,e)}T1t(e,t,O,f,z,G,Z,H,N,De,ce,i,a),t.layerClipId&&A_.hideOutsideRangePoint(T,O.select("text"),o,s,d.xcalendar,d.ycalendar)});var P=d.cliponaxis===!1;A_.setClipUrl(h,P?null:t.layerClipId,e)});h1t.getComponentMethod("errorbars","plot")(e,c,t,i)}function T1t(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(ge,Fe,ce){var Ze=Fd.ensureSingle(ge,"text").text(Fe).attr({class:"bartext bartext-"+b,"text-anchor":"middle","data-notex":1}).call(A_.font,ce).call(c1t.convertToTspans,e);return Ze}var C=n[0].trace,E=C.orientation==="h",A=M1t(x,n,i,d,v);b=E1t(C,i);var L=f.mode==="stack"||f.mode==="relative",_=n[i],k=!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=SV.getBarColor(n[i],C),z=SV.getInsideTextFont(C,i,P,T),O=SV.getOutsideTextFont(C,i,P),V=C.insidetextanchor||"end",G=r.datum();E?d.type==="log"&&G.s0<=0&&(d.range[0]<d.range[1]?a=0:a=d._length):v.type==="log"&&G.s0<=0&&(v.range[0]<v.range[1]?s=v._length:s=0);var Z=Math.abs(o-a),H=Math.abs(l-s),N=Z-2*Uv,j=H-2*Uv,re,oe,_e,Me,ke;if(b==="outside"&&!k&&!_.hasB&&(b="inside"),b==="auto")if(k){b="inside",ke=Fd.ensureUniformFontSize(e,z),re=p(r,A,ke),oe=A_.bBox(re.node()),_e=oe.width,Me=oe.height;var me=_e>0&&Me>0,ie;g?M?ie=r2(N-2*u,j,_e,Me,E)||r2(N,j-2*u,_e,Me,E):E?ie=r2(N-(u-c),j,_e,Me,E)||r2(N,j-2*(u-c),_e,Me,E):ie=r2(N,j-(u-c),_e,Me,E)||r2(N-2*(u-c),j,_e,Me,E):ie=r2(N,j,_e,Me,E),me&&ie?b="inside":(b="outside",re.remove(),re=null)}else b="inside";if(!re){ke=Fd.ensureUniformFontSize(e,b==="outside"?O:z),re=p(r,A,ke);var Se=re.attr("transform");if(re.attr("transform",""),oe=A_.bBox(re.node()),_e=oe.width,Me=oe.height,re.attr("transform",Se),_e<=0||Me<=0){re.remove();return}}var Le=C.textangle,Ae,De;b==="outside"?(De=C.constraintext==="both"||C.constraintext==="outside",Ae=S1t(a,o,s,l,oe,{isHorizontal:E,constrained:De,angle:Le})):(De=C.constraintext==="both"||C.constraintext==="inside",Ae=Xye(a,o,s,l,oe,{isHorizontal:E,constrained:De,angle:Le,anchor:V,hasB:M,r:u,overhead:c})),Ae.fontSize=ke.size,d1t(C.type==="histogram"?"bar":C.type,Ae,x),_.transform=Ae;var Pe=Gye(re,x,f,h);Fd.setTransormAndDisplay(Pe,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 jye(e){return e==="auto"?0:e}function Wye(e,t){var r=Math.PI/180*t,n=Math.abs(Math.sin(r)),i=Math.abs(Math.cos(r));return{x:e.width*i+e.height*n,y:e.width*n+e.height*i}}function Xye(e,t,r,n,i,a){var o=!!a.isHorizontal,s=!!a.constrained,l=a.angle||0,u=a.anchor,c=u==="end",f=u==="start",h=a.leftToRight||0,d=(h+1)/2,v=1-d,x=a.hasB,b=a.r,p=a.overhead,C=i.width,E=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 k=jye(l);l==="auto"&&!(C<=A&&E<=L)&&(C>A||E>L)&&(!(C>L||E>A)||C<E!=A<L)&&(k+=90);var M=Wye(i,k),g,P;if(b&&b-p>Uv){var T=A1t(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 z=i.left*v+i.right*d,O=(i.top+i.bottom)/2,V=(e+Uv)*v+(t-Uv)*d,G=(r+n)/2,Z=0,H=0;if(f||c){var N=(o?M.x:M.y)/2;b&&(c||x)&&(_+=P);var j=o?Pm(e,t):Pm(r,n);o?f?(V=e+j*_,Z=-j*N):(V=t-j*_,Z=j*N):f?(G=r+j*_,H=-j*N):(G=n-j*_,H=j*N)}return{textX:z,textY:O,targetX:V,targetY:G,anchorX:Z,anchorY:H,scale:g,rotate:k}}function A1t(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,C,E;return i.y/i.x>=c/(u-d)?C=c/i.y:i.y/i.x<=(c-v)/u?C=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,C=(-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,C=(-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,C=(-b+Math.sqrt(b*b-4*x*p))/(2*x)),C=Math.min(1,C),s?E=Math.max(0,f-Math.sqrt(Math.max(0,f*f-(f-(c-i.y*C)/2)*(f-(c-i.y*C)/2)))-o):E=Math.max(0,f-Math.sqrt(Math.max(0,f*f-(f-(u-i.x*C)/2)*(f-(u-i.x*C)/2)))-o),{scale:C,pad:E}}function S1t(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=jye(l),b=Wye(i,x),p=(o?b.x:b.y)/2,C=(i.left+i.right)/2,E=(i.top+i.bottom)/2,A=(e+t)/2,L=(r+n)/2,_=0,k=0,M=o?Pm(t,e):Pm(r,n);return o?(A=t-M*d,_=M*p):(L=n+M*d,k=-M*p),{textX:C,textY:E,targetX:A,targetY:L,anchorX:_,anchorY:k,scale:v,rotate:x}}function M1t(e,t,r,n,i){var a=t[0].trace,o=a.texttemplate,s;return o?s=C1t(e,t,r,n,i):a.textinfo?s=k1t(t,r,n,i):s=wT.getValue(a.text,r),wT.coerceString(g1t,s)}function E1t(e,t){var r=wT.getValue(e.textposition,t);return wT.coerceEnumerated(m1t,r)}function C1t(e,t,r,n,i){var a=t[0].trace,o=Fd.castOption(a,r,"texttemplate");if(!o)return"";var s=a.type==="histogram",l=a.type==="waterfall",u=a.type==="funnel",c=a.orientation==="h",f,h,d,v;c?(f="y",h=i,d="x",v=n):(f="x",h=n,d="y",v=i);function x(_){return HI(h,h.c2l(_),!0).text}function b(_){return HI(v,v.c2l(_),!0).text}var p=t[r],C={};C.label=p.p,C.labelLabel=C[f+"Label"]=x(p.p);var E=Fd.castOption(a,p.i,"text");(E===0||E)&&(C.text=E),C.value=p.s,C.valueLabel=C[d+"Label"]=b(p.s);var A={};y1t(A,a,p.i),(s||A.x===void 0)&&(A.x=c?C.value:C.label),(s||A.y===void 0)&&(A.y=c?C.label:C.value),(s||A.xLabel===void 0)&&(A.xLabel=c?C.valueLabel:C.labelLabel),(s||A.yLabel===void 0)&&(A.yLabel=c?C.labelLabel:C.valueLabel),l&&(C.delta=+p.rawS||p.s,C.deltaLabel=b(C.delta),C.final=p.v,C.finalLabel=b(C.final),C.initial=C.final-C.delta,C.initialLabel=b(C.initial)),u&&(C.value=p.s,C.valueLabel=b(C.value),C.percentInitial=p.begR,C.percentInitialLabel=Fd.formatPercent(p.begR),C.percentPrevious=p.difR,C.percentPreviousLabel=Fd.formatPercent(p.difR),C.percentTotal=p.sumR,C.percenTotalLabel=Fd.formatPercent(p.sumR));var L=Fd.castOption(a,p.i,"customdata");return L&&(C.customdata=L),Fd.texttemplateString(o,C,e._d3locale,A,C,a._meta||{})}function k1t(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 HI(_,L,!0).text}function u(L){var _=a?r:n;return HI(_,+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=Fd.castOption(i,f.i,"text"),(v===0||v)&&d.push(v)),o){var b=+f.rawS||f.s,p=f.v,C=p-b;x("initial")&&d.push(u(C)),x("delta")&&d.push(u(b)),x("final")&&d.push(u(p))}if(s){x("value")&&d.push(u(f.s));var E=0;x("percent initial")&&E++,x("percent previous")&&E++,x("percent total")&&E++;var A=E>1;x("percent initial")&&(v=Fd.formatPercent(f.begR),A&&(v+=" of initial"),d.push(v)),x("percent previous")&&(v=Fd.formatPercent(f.difR),A&&(v+=" of previous"),d.push(v)),x("percent total")&&(v=Fd.formatPercent(f.sumR),A&&(v+=" of total"),d.push(v))}return d.join("<br>")}Zye.exports={plot:w1t,toMoveInsideBar:Xye}});var TT=ye(($sr,$ye)=>{"use strict";var m4=vf(),L1t=qa(),Yye=Ca(),P1t=Dr().fillText,I1t=UI().getLineWidth,EV=ho().hoverLabelText,R1t=hs().BADNUM;function D1t(e,t,r,n,i){var a=Kye(e,t,r,n,i);if(a){var o=a.cd,s=o[0].trace,l=o[a.index];return a.color=Jye(s,l),L1t.getComponentMethod("errorbars","hoverInfo")(l,s,a),[a]}}function Kye(e,t,r,n,i){var a=e.cd,o=a[0].trace,s=a[0].t,l=n==="closest",u=o.type==="waterfall",c=e.maxHoverDistance,f=e.maxSpikeDistance,h,d,v,x,b,p,C;o.orientation==="h"?(h=r,d=t,v="y",x="x",b=G,p=z):(h=t,d=r,v="x",x="y",p=G,b=z);var E=o[v+"period"],A=l||E;function L(ie){return k(ie,-1)}function _(ie){return k(ie,1)}function k(ie,Se){var Le=ie.w;return ie[v]+Se*Le/2}function M(ie){return ie[v+"End"]-ie[v+"Start"]}var g=l?L:E?function(ie){return ie.p-M(ie)/2}:function(ie){return Math.min(L(ie),ie.p-s.bardelta/2)},P=l?_:E?function(ie){return ie.p+M(ie)/2}:function(ie){return Math.max(_(ie),ie.p+s.bardelta/2)};function T(ie,Se,Le){return i.finiteRange&&(Le=0),m4.inbox(ie-h,Se-h,Le+Math.min(1,Math.abs(Se-ie)/C)-1)}function z(ie){return T(g(ie),P(ie),c)}function O(ie){return T(L(ie),_(ie),f)}function V(ie){var Se=ie[x];if(u){var Le=Math.abs(ie.rawS)||0;d>0?Se+=Le:d<0&&(Se-=Le)}return Se}function G(ie){var Se=d,Le=ie.b,Ae=V(ie);return m4.inbox(Le-Se,Ae-Se,c+(Ae-Se)/(Ae-Le)-1)}function Z(ie){var Se=d,Le=ie.b,Ae=V(ie);return m4.inbox(Le-Se,Ae-Se,f+(Ae-Se)/(Ae-Le)-1)}var H=e[v+"a"],N=e[x+"a"];C=Math.abs(H.r2c(H.range[1])-H.r2c(H.range[0]));function j(ie){return(b(ie)+p(ie))/2}var re=m4.getDistanceFunction(n,b,p,j);if(m4.getClosest(a,re,e),e.index!==!1&&a[e.index].p!==R1t){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 oe=e.index,_e=a[oe],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"]=H.c2p(l?g(_e):ke[0],!0),e[v+"1"]=H.c2p(l?P(_e):ke[1],!0);var me=_e.orig_p!==void 0;return e[v+"LabelVal"]=me?_e.orig_p:_e.p,e.labelLabel=EV(H,e[v+"LabelVal"],o[v+"hoverformat"]),e.valueLabel=EV(N,e[x+"LabelVal"],o[x+"hoverformat"]),e.baseLabel=EV(N,_e.b,o[x+"hoverformat"]),e.spikeDistance=(Z(_e)+O(_e))/2,e[v+"Spike"]=H.c2p(_e.p,!0),P1t(_e,o,e),e.hovertemplate=o.hovertemplate,e}}function Jye(e,t){var r=t.mcc||e.marker.color,n=t.mlcc||e.marker.line.color,i=I1t(e,t);if(Yye.opacity(r))return r;if(Yye.opacity(n)&&i)return n}$ye.exports={hoverPoints:D1t,hoverOnBars:Kye,getTraceColor:Jye}});var e1e=ye((Qsr,Qye)=>{"use strict";Qye.exports=function(t,r,n){return t.x="xVal"in r?r.xVal:r.x,t.y="yVal"in r?r.yVal:r.y,r.xa&&(t.xaxis=r.xa),r.ya&&(t.yaxis=r.ya),n.orientation==="h"?(t.label=t.y,t.value=t.x):(t.label=t.x,t.value=t.y),t}});var AT=ye((elr,t1e)=>{"use strict";t1e.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=n[0].trace,s=o.type==="funnel",l=o.orientation==="h",u=[],c;if(r===!1)for(c=0;c<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:F1t(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 F1t(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 i1e=ye((tlr,r1e)=>{"use strict";r1e.exports={attributes:Lm(),layoutAttributes:qI(),supplyDefaults:r0().supplyDefaults,crossTraceDefaults:r0().crossTraceDefaults,supplyLayoutDefaults:wV(),calc:Mye(),crossTraceCalc:Hb().crossTraceCalc,colorbar:$d(),arraysToCalcdata:v4(),plot:i2().plot,style:N0().style,styleOnSelect:N0().styleOnSelect,hoverPoints:TT().hoverPoints,eventData:e1e(),selectPoints:AT(),moduleType:"trace",name:"bar",basePlotModule:vh(),categories:["bar-like","cartesian","svg","bar","oriented","errorBarsOK","showLegend","zoomScale"],animatable:!0,meta:{}}});var a1e=ye((rlr,n1e)=>{"use strict";n1e.exports=i1e()});var y4=ye((ilr,u1e)=>{"use strict";var z1t=Eg(),U0=pf(),o1e=Lm(),O1t=Eh(),s1e=df().axisHoverFormat,q1t=Qo().hovertemplateAttrs,Fy=Ao().extendFlat,ST=U0.marker,l1e=ST.line;u1e.exports={y:{valType:"data_array",editType:"calc+clearAxisTypes"},x:{valType:"data_array",editType:"calc+clearAxisTypes"},x0:{valType:"any",editType:"calc+clearAxisTypes"},y0:{valType:"any",editType:"calc+clearAxisTypes"},dx:{valType:"number",editType:"calc"},dy:{valType:"number",editType:"calc"},xperiod:U0.xperiod,yperiod:U0.yperiod,xperiod0:U0.xperiod0,yperiod0:U0.yperiod0,xperiodalignment:U0.xperiodalignment,yperiodalignment:U0.yperiodalignment,xhoverformat:s1e("x"),yhoverformat:s1e("y"),name:{valType:"string",editType:"calc+clearAxisTypes"},q1:{valType:"data_array",editType:"calc+clearAxisTypes"},median:{valType:"data_array",editType:"calc+clearAxisTypes"},q3:{valType:"data_array",editType:"calc+clearAxisTypes"},lowerfence:{valType:"data_array",editType:"calc"},upperfence:{valType:"data_array",editType:"calc"},notched:{valType:"boolean",editType:"calc"},notchwidth:{valType:"number",min:0,max:.5,dflt:.25,editType:"calc"},notchspan:{valType:"data_array",editType:"calc"},boxpoints:{valType:"enumerated",values:["all","outliers","suspectedoutliers",!1],editType:"calc"},jitter:{valType:"number",min:0,max:1,editType:"calc"},pointpos:{valType:"number",min:-2,max:2,editType:"calc"},sdmultiple:{valType:"number",min:0,editType:"calc",dflt:1},sizemode:{valType:"enumerated",values:["quartiles","sd"],editType:"calc",dflt:"quartiles"},boxmean:{valType:"enumerated",values:[!0,"sd",!1],editType:"calc"},mean:{valType:"data_array",editType:"calc"},sd:{valType:"data_array",editType:"calc"},orientation:{valType:"enumerated",values:["v","h"],editType:"calc+clearAxisTypes"},quartilemethod:{valType:"enumerated",values:["linear","exclusive","inclusive"],dflt:"linear",editType:"calc"},width:{valType:"number",min:0,dflt:0,editType:"calc"},marker:{outliercolor:{valType:"color",dflt:"rgba(0, 0, 0, 0)",editType:"style"},symbol:Fy({},ST.symbol,{arrayOk:!1,editType:"plot"}),opacity:Fy({},ST.opacity,{arrayOk:!1,dflt:1,editType:"style"}),angle:Fy({},ST.angle,{arrayOk:!1,editType:"calc"}),size:Fy({},ST.size,{arrayOk:!1,editType:"calc"}),color:Fy({},ST.color,{arrayOk:!1,editType:"style"}),line:{color:Fy({},l1e.color,{arrayOk:!1,dflt:O1t.defaultLine,editType:"style"}),width:Fy({},l1e.width,{arrayOk:!1,dflt:0,editType:"style"}),outliercolor:{valType:"color",editType:"style"},outlierwidth:{valType:"number",min:0,dflt:1,editType:"style"},editType:"style"},editType:"plot"},line:{color:{valType:"color",editType:"style"},width:{valType:"number",min:0,dflt:2,editType:"style"},editType:"plot"},fillcolor:z1t(),whiskerwidth:{valType:"number",min:0,max:1,dflt:.5,editType:"calc"},showwhiskers:{valType:"boolean",editType:"calc"},offsetgroup:o1e.offsetgroup,alignmentgroup:o1e.alignmentgroup,selected:{marker:U0.selected.marker,editType:"style"},unselected:{marker:U0.unselected.marker,editType:"style"},text:Fy({},U0.text,{}),hovertext:Fy({},U0.hovertext,{}),hovertemplate:q1t({}),hoveron:{valType:"flaglist",flags:["boxes","points"],dflt:"boxes+points",editType:"style"},zorder:U0.zorder}});var _4=ye((nlr,c1e)=>{"use strict";c1e.exports={boxmode:{valType:"enumerated",values:["group","overlay"],dflt:"overlay",editType:"calc"},boxgap:{valType:"number",min:0,max:1,dflt:.3,editType:"calc"},boxgroupgap:{valType:"number",min:0,max:1,dflt:.3,editType:"calc"}}});var b4=ye((alr,v1e)=>{"use strict";var V0=Dr(),B1t=qa(),N1t=Ca(),U1t=Pg(),V1t=Gb(),f1e=L3(),x4=y4();function G1t(e,t,r,n){function i(v,x){return V0.coerce(e,t,x4,v,x)}if(h1e(e,t,i,n),t.visible!==!1){U1t(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",N1t.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,x4.notchwidth)&&(f=!0);var d=i("notched",f);d&&i("notchwidth"),d1e(e,t,i,{prefix:"box"}),i("zorder")}}function h1e(e,t,r,n){function i(P){var T=0;return P&&P.length&&(T+=1,V0.isArrayOrTypedArray(P[0])&&P[0].length&&(T+=1)),T}function a(P){return V0.validate(e[P],x4[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},C,E;if(t._hasPreCompStats)switch(String(d)+String(h)){case"00":var A=a("x0")||a("dx"),L=a("y0")||a("dy");L&&!A?C="h":C="v",E=l;break;case"10":C="v",E=Math.min(l,x);break;case"20":C="h",E=Math.min(l,s.length);break;case"01":C="h",E=Math.min(l,v);break;case"02":C="v",E=Math.min(l,o.length);break;case"12":C="v",E=Math.min(l,x,o.length);break;case"21":C="h",E=Math.min(l,s.length,v);break;case"11":E=0;break;case"22":var _=!1,k;for(k=0;k<s.length;k++)if(f1e(s[k],b,p)==="category"){_=!0;break}if(_)C="v",E=Math.min(l,x,o.length);else{for(k=0;k<o.length;k++)if(f1e(o[k],b,p)==="category"){_=!0;break}_?(C="h",E=Math.min(l,s.length,v)):(C="v",E=Math.min(l,x,o.length))}break}else h>0?(C="v",d>0?E=Math.min(x,v):E=Math.min(v)):d>0?(C="h",E=Math.min(x)):E=0;if(!E){t.visible=!1;return}t._length=E;var M=r("orientation",C);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=B1t.getComponentMethod("calendars","handleTraceDefaults");g(e,t,["x","y"],n)}function d1e(e,t,r,n){var i=n.prefix,a=V0.coerce2(e,t,x4,"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 H1t(e,t){var r,n;function i(l){return V0.coerce(n._input,n,x4,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"&&V1t(r,n,t,i,s)}}}v1e.exports={supplyDefaults:G1t,crossTraceDefaults:H1t,handleSampleDefaults:h1e,handlePointsDefaults:d1e}});var jI=ye((olr,g1e)=>{"use strict";var j1t=qa(),W1t=Dr(),X1t=_4();function p1e(e,t,r,n,i){for(var a=i+"Layout",o=!1,s=0;s<r.length;s++){var l=r[s];if(j1t.traceIs(l,a)){o=!0;break}}o&&(n(i+"mode"),n(i+"gap"),n(i+"groupgap"))}function Z1t(e,t,r){function n(i,a){return W1t.coerce(e,t,X1t,i,a)}p1e(e,t,r,n,"box")}g1e.exports={supplyLayoutDefaults:Z1t,_supply:p1e}});var LV=ye((slr,S1e)=>{"use strict";var kV=Eo(),WI=ho(),Y1t=Rg(),ph=Dr(),i0=hs().BADNUM,zy=ph._;S1e.exports=function(t,r){var n=t._fullLayout,i=WI.getFromId(t,r.xaxis||"x"),a=WI.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=K1t(r,d,h,n[s]),b=x[0],p=x[1],C=ph.distinctVals(b,h),E=C.vals,A=C.minDiff/2,L,_,k,M,g,P,T=(r.boxpoints||r.points)==="all"?ph.identity:function(Wt){return Wt.v<L.lf||Wt.v>L.uf};if(r._hasPreCompStats){var z=r[f],O=function(Wt){return c.d2c((r[Wt]||[])[l])},V=1/0,G=-1/0;for(l=0;l<r._length;l++){var Z=b[l];if(kV(Z)){if(L={},L.pos=L[d]=Z,v&&p&&(L.orig_p=p[l]),L.q1=O("q1"),L.med=O("median"),L.q3=O("q3"),_=[],z&&ph.isArrayOrTypedArray(z[l]))for(u=0;u<z[l].length;u++)P=c.d2c(z[l][u]),P!==i0&&(g={v:P,i:[l,u]},m1e(g,r,[l,u]),_.push(g));if(L.pts=_.sort(y1e),k=L[f]=_.map(_1e),M=k.length,L.med!==i0&&L.q1!==i0&&L.q3!==i0&&L.med>=L.q1&&L.q3>=L.med){var H=O("lowerfence");L.lf=H!==i0&&H<=L.q1?H:x1e(L,k,M);var N=O("upperfence");L.uf=N!==i0&&N>=L.q3?N:b1e(L,k,M);var j=O("mean");L.mean=j!==i0?j:M?ph.mean(k,M):(L.q1+L.q3)/2;var re=O("sd");L.sd=j!==i0&&re>=0?re:M?ph.stdev(k,M,L.mean):L.q3-L.q1,L.lo=w1e(L),L.uo=T1e(L);var oe=O("notchspan");oe=oe!==i0&&oe>0?oe:A1e(L,M),L.ln=L.med-oe,L.un=L.med+oe;var _e=L.lf,Me=L.uf;r.boxpoints&&k.length&&(_e=Math.min(_e,k[0]),Me=Math.max(Me,k[M-1])),r.notched&&(_e=Math.min(_e,L.ln),Me=Math.max(Me,L.un)),L.min=_e,L.max=Me}else{ph.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),G=Math.max(G,L.max),L.pts2=_.filter(T),o.push(L)}}r._extremes[c._id]=WI.findExtremes(c,[V,G],{padded:!0})}else{var me=c.makeCalcdata(r,f),ie=J1t(E,A),Se=E.length,Le=$1t(Se);for(l=0;l<r._length;l++)if(P=me[l],!!kV(P)){var Ae=ph.findBin(b[l],ie);Ae>=0&&Ae<Se&&(g={v:P,i:l},m1e(g,r,l),Le[Ae].push(g))}var De=1/0,Pe=-1/0,ge=r.quartilemethod,Fe=ge==="exclusive",ce=ge==="inclusive";for(l=0;l<Se;l++)if(Le[l].length>0){if(L={},L.pos=L[d]=E[l],_=L.pts=Le[l].sort(y1e),k=L[f]=_.map(_1e),M=k.length,L.min=k[0],L.max=k[M-1],L.mean=ph.mean(k,M),L.sd=ph.stdev(k,M,L.mean)*r.sdmultiple,L.med=ph.interp(k,.5),M%2&&(Fe||ce)){var Ze,ct;Fe?(Ze=k.slice(0,M/2),ct=k.slice(M/2+1)):ce&&(Ze=k.slice(0,M/2+1),ct=k.slice(M/2)),L.q1=ph.interp(Ze,.5),L.q3=ph.interp(ct,.5)}else L.q1=ph.interp(k,.25),L.q3=ph.interp(k,.75);L.lf=x1e(L,k,M),L.uf=b1e(L,k,M),L.lo=w1e(L),L.uo=T1e(L);var pt=A1e(L,M);L.ln=L.med-pt,L.un=L.med+pt,De=Math.min(De,L.ln),Pe=Math.max(Pe,L.un),L.pts2=_.filter(T),o.push(L)}r.notched&&ph.isTypedArray(me)&&(me=Array.from(me)),r._extremes[c._id]=WI.findExtremes(c,r.notched?me.concat([De,Pe]):me,{padded:!0})}return Q1t(o,r),o.length>0?(o[0].t={num:n[s],dPos:A,posLetter:d,valLetter:f,labels:{med:zy(t,"median:"),min:zy(t,"min:"),q1:zy(t,"q1:"),q3:zy(t,"q3:"),max:zy(t,"max:"),mean:r.boxmean==="sd"||r.sizemode==="sd"?zy(t,"mean \xB1 \u03C3:").replace("\u03C3",r.sdmultiple===1?"\u03C3":r.sdmultiple+"\u03C3"):zy(t,"mean:"),lf:zy(t,"lower fence:"),uf:zy(t,"upper fence:")}},n[s]++,o):[{t:{empty:!0}}]};function K1t(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=Y1t(e,r,t,s).vals;return[l,s]}var u;a?u=e[t+"0"]:"name"in e&&(r.type==="category"||kV(e.name)&&["linear","log"].indexOf(r.type)!==-1||ph.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 J1t(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 $1t(e){for(var t=new Array(e),r=0;r<e;r++)t[r]=[];return t}var CV={text:"tx",hovertext:"htx"};function m1e(e,t,r){for(var n in CV)ph.isArrayOrTypedArray(t[n])&&(Array.isArray(r)?ph.isArrayOrTypedArray(t[n][r[0]])&&(e[CV[n]]=t[n][r[0]][r[1]]):e[CV[n]]=t[n][r])}function Q1t(e,t){if(ph.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;ph.tagSelected(n,t,i)}}function y1e(e,t){return e.v-t.v}function _1e(e){return e.v}function x1e(e,t,r){return r===0?e.q1:Math.min(e.q1,t[Math.min(ph.findBin(2.5*e.q1-1.5*e.q3,t,!0)+1,r-1)])}function b1e(e,t,r){return r===0?e.q3:Math.max(e.q3,t[Math.max(ph.findBin(2.5*e.q3-1.5*e.q1,t),0)])}function w1e(e){return 4*e.q1-3*e.q3}function T1e(e){return 4*e.q3-3*e.q1}function A1e(e,t){return t===0?0:1.57*(e.q3-e.q1)/Math.sqrt(t)}});var XI=ye((llr,k1e)=>{"use strict";var M1e=ho(),e_t=Dr(),t_t=Bb().getAxisGroup,E1e=["v","h"];function r_t(e,t){for(var r=e.calcdata,n=t.xaxis,i=t.yaxis,a=0;a<E1e.length;a++){for(var o=E1e[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)}C1e("box",e,l,s)}}function C1e(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=e_t.distinctVals(f);(n.type==="category"||n.type==="multicategory")&&(d.minDiff=1);var v=d.minDiff/2;M1e.minDtick(n,d.minDiff,d.vals[0],!0);var x=e==="violin"?"_numViolins":"_numBoxes",b=a[x],p=a[e+"mode"]==="group"&&b>1,C=1-a[e+"gap"],E=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,k=A.side,M,g,P,T;if(_)M=g=T=_/2,P=0;else if(M=v,p){var z=t_t(a,n._id)+A.orientation,O=a._alignmentOpts[z]||{},V=O[A.alignmentgroup]||{},G=Object.keys(V.offsetGroups||{}).length,Z=G||b,H=G?A._offsetIndex:L.num;g=M*C*E/Z,P=2*M*(-.5+(H+.5)/Z)*C,T=M*C/Z}else g=M*C*E,P=0,T=M;L.dPos=M,L.bPos=P,L.bdPos=g,L.wHover=T;var N,j,re=P+g,oe,_e,Me,ke,me,ie,Se=!!_,Le=(A.boxpoints||A.points)&&h>0;if(k==="positive"?(N=M*(_?1:.5),oe=re,j=oe=P):k==="negative"?(N=oe=P,j=M*(_?1:.5),_e=re):(N=j=M,oe=_e=re),Le){var Ae=A.pointpos,De=A.jitter,Pe=A.marker.size/2,ge=0;Ae+De>=0&&(ge=re*(Ae+De),ge>N?(Se=!0,me=Pe,Me=ge):ge>oe&&(me=Pe,Me=N)),ge<=N&&(Me=N);var Fe=0;Ae-De<=0&&(Fe=-re*(Ae-De),Fe>j?(Se=!0,ie=Pe,ke=Fe):Fe>_e&&(ie=Pe,ke=j)),Fe<=j&&(ke=j)}else Me=N,ke=j;var ce=new Array(c.length);for(u=0;u<c.length;u++)ce[u]=c[u].pos;A._extremes[o]=M1e.findExtremes(n,ce,{padded:Se,vpadminus:ke,vpadplus:Me,vpadLinearized:!0,ppadminus:{x:ie,y:me}[s],ppadplus:{x:me,y:ie}[s]})}}}k1e.exports={crossTraceCalc:r_t,setPositionOffset:C1e}});var ZI=ye((ulr,D1e)=>{"use strict";var MT=Oa(),n2=Dr(),i_t=So(),L1e=5,n_t=.01;function a_t(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),P1e(l,{pos:h,val:d},f,c,i),I1e(l,{x:a,y:o},f,c),R1e(l,{pos:h,val:d},f,c)})}function P1e(e,t,r,n,i){var a=r.orientation==="h",o=t.val,s=t.pos,l=!!s.rangebreaks,u=n.bPos,c=n.wdPos||0,f=n.bPosPxOffset||0,h=r.whiskerwidth||0,d=r.showwhiskers!==!1,v=r.notched||!1,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 C=e.selectAll("path.box").data(r.type!=="violin"||r.box.visible?n2.identity:[]);C.enter().append("path").style("vector-effect",i?"none":"non-scaling-stroke").attr("class","box"),C.exit().remove(),C.each(function(E){if(E.empty)return MT.select(this).attr("d","M0,0Z");var A=s.c2l(E.pos+u,!0),L=s.l2p(A-b)+f,_=s.l2p(A+p)+f,k=l?(L+_)/2:s.l2p(A)+f,M=r.whiskerwidth,g=l?L*M+(1-M)*k:s.l2p(A-c)+f,P=l?_*M+(1-M)*k:s.l2p(A+c)+f,T=s.l2p(A-b*x)+f,z=s.l2p(A+p*x)+f,O=r.sizemode==="sd",V=o.c2p(O?E.mean-E.sd:E.q1,!0),G=O?o.c2p(E.mean+E.sd,!0):o.c2p(E.q3,!0),Z=n2.constrain(O?o.c2p(E.mean,!0):o.c2p(E.med,!0),Math.min(V,G)+1,Math.max(V,G)-1),H=E.lf===void 0||r.boxpoints===!1||O,N=o.c2p(H?E.min:E.lf,!0),j=o.c2p(H?E.max:E.uf,!0),re=o.c2p(E.ln,!0),oe=o.c2p(E.un,!0);a?MT.select(this).attr("d","M"+Z+","+T+"V"+z+"M"+V+","+L+"V"+_+(v?"H"+re+"L"+Z+","+z+"L"+oe+","+_:"")+"H"+G+"V"+L+(v?"H"+oe+"L"+Z+","+T+"L"+re+","+L:"")+"Z"+(d?"M"+V+","+k+"H"+N+"M"+G+","+k+"H"+j+(h===0?"":"M"+N+","+g+"V"+P+"M"+j+","+g+"V"+P):"")):MT.select(this).attr("d","M"+T+","+Z+"H"+z+"M"+L+","+V+"H"+_+(v?"V"+re+"L"+z+","+Z+"L"+_+","+oe:"")+"V"+G+"H"+L+(v?"V"+oe+"L"+T+","+Z+"L"+L+","+re:"")+"Z"+(d?"M"+k+","+V+"V"+N+"M"+k+","+G+"V"+j+(h===0?"":"M"+g+","+N+"H"+P+"M"+g+","+j+"H"+P):""))})}function I1e(e,t,r,n){var i=t.x,a=t.y,o=n.bdPos,s=n.bPos,l=r.boxpoints||r.points;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*n_t,C=[],E=0,A;if(r.jitter){if(x===0)for(E=1,C=new Array(v.length),d=0;d<v.length;d++)C[d]=1;else for(d=0;d<v.length;d++){var L=Math.max(0,d-L1e),_=v[L].v,k=Math.min(v.length-1,d+L1e),M=v[k].v;l!=="all"&&(v[d].v<h.lf?M=Math.min(M,h.lf):_=Math.max(_,h.uf));var g=Math.sqrt(p*(k-L)/(M-_+b))||0;g=n2.constrain(Math.abs(g),0,1),C.push(g),E=Math.max(g,E)}A=r.jitter*2/(E||1)}for(d=0;d<v.length;d++){var P=v[d],T=P.v,z=r.jitter?A*C[d]*(n2.pseudoRandom()-.5):0,O=h.pos+s+o*(r.pointpos+z);r.orientation==="h"?(P.y=O,P.x=T):(P.x=O,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(i_t.translatePoints,i,a)}function R1e(e,t,r,n){var i=t.val,a=t.pos,o=!!a.rangebreaks,s=n.bPos,l=n.bPosPxOffset||0,u=r.boxmean||(r.meanline||{}).visible,c,f;Array.isArray(n.bdPos)?(c=n.bdPos[0],f=n.bdPos[1]):(c=n.bdPos,f=n.bdPos);var h=e.selectAll("path.mean").data(r.type==="box"&&r.boxmean||r.type==="violin"&&r.box.visible&&r.meanline.visible?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,C=i.c2p(d.mean,!0),E=i.c2p(d.mean-d.sd,!0),A=i.c2p(d.mean+d.sd,!0);r.orientation==="h"?MT.select(this).attr("d","M"+C+","+x+"V"+b+(u==="sd"?"m0,0L"+E+","+p+"L"+C+","+x+"L"+A+","+p+"Z":"")):MT.select(this).attr("d","M"+x+","+C+"H"+b+(u==="sd"?"m0,0L"+p+","+E+"L"+x+","+C+"L"+p+","+A+"Z":""))})}D1e.exports={plot:a_t,plotBoxAndWhiskers:P1e,plotPoints:I1e,plotBoxMean:R1e}});var YI=ye((clr,F1e)=>{"use strict";var PV=Oa(),IV=Ca(),RV=So();function o_t(e,t,r){var n=r||PV.select(e).selectAll("g.trace.boxes");n.style("opacity",function(i){return i[0].trace.opacity}),n.each(function(i){var a=PV.select(this),o=i[0].trace,s=o.line.width;function l(f,h,d,v){f.style("stroke-width",h+"px").call(IV.stroke,d).call(IV.fill,v)}var u=a.selectAll("path.box");if(o.type==="candlestick")u.each(function(f){if(!f.empty){var h=PV.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(IV.stroke,o.line.color);var c=a.selectAll("path.point");RV.pointStyle(c,o,e)}})}function s_t(e,t,r){var n=t[0].trace,i=r.selectAll("path.point");n.selectedpoints?RV.selectedPointStyle(i,n):RV.pointStyle(i,n,e)}F1e.exports={style:o_t,styleOnSelect:s_t}});var FV=ye((flr,B1e)=>{"use strict";var l_t=ho(),DV=Dr(),S_=vf(),z1e=Ca(),u_t=DV.fillText;function c_t(e,t,r,n){var i=e.cd,a=i[0].trace,o=a.hoveron,s=[],l;return o.indexOf("boxes")!==-1&&(s=s.concat(O1e(e,t,r,n))),o.indexOf("points")!==-1&&(l=q1e(e,t,r)),n==="closest"?l?[l]:s:(l&&s.push(l),s)}function O1e(e,t,r,n){var i=e.cd,a=e.xa,o=e.ya,s=i[0].trace,l=i[0].t,u=s.type==="violin",c,f,h,d,v,x,b,p,C,E,A,L=l.bdPos,_,k,M=l.wHover,g=function(Pe){return h.c2l(Pe.pos)+l.bPos-h.c2l(x)};u&&s.side!=="both"?(s.side==="positive"&&(C=function(Pe){var ge=g(Pe);return S_.inbox(ge,ge+M,E)},_=L,k=0),s.side==="negative"&&(C=function(Pe){var ge=g(Pe);return S_.inbox(ge-M,ge,E)},_=0,k=L)):(C=function(Pe){var ge=g(Pe);return S_.inbox(ge-M,ge+M,E)},_=k=L);var P;u?P=function(Pe){return S_.inbox(Pe.span[0]-v,Pe.span[1]-v,E)}:P=function(Pe){return S_.inbox(Pe.min-v,Pe.max-v,E)},s.orientation==="h"?(v=t,x=r,b=P,p=C,c="y",h=o,f="x",d=a):(v=r,x=t,b=C,p=P,c="x",h=a,f="y",d=o);var T=Math.min(1,L/Math.abs(h.r2c(h.range[1])-h.r2c(h.range[0])));E=e.maxHoverDistance-T,A=e.maxSpikeDistance-T;function z(Pe){return(b(Pe)+p(Pe))/2}var O=S_.getDistanceFunction(n,b,p,z);if(S_.getClosest(i,O,e),e.index===!1)return[];var V=i[e.index],G=s.line.color,Z=(s.marker||{}).color;z1e.opacity(G)&&s.line.width?e.color=G:z1e.opacity(Z)&&s.boxpoints?e.color=Z:e.color=s.fillcolor,e[c+"0"]=h.c2p(V.pos+l.bPos-k,!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 H=c+"Spike";e.spikeDistance=z(V)*A/E,e[H]=h.c2p(V.pos,!0);var N=s.boxmean||s.sizemode==="sd"||(s.meanline||{}).visible,j=s.boxpoints||s.points,re=j&&N?["max","uf","q3","med","mean","q1","lf","min"]:j&&!N?["max","uf","q3","med","q1","lf","min"]:!j&&N?["max","q3","med","mean","q1","min"]:["max","q3","med","q1","min"],oe=d.range[1]<d.range[0];s.orientation===(oe?"v":"h")&&re.reverse();for(var _e=e.spikeDistance,Me=e[H],ke=[],me=0;me<re.length;me++){var ie=re[me];if(ie in V){var Se=V[ie],Le=d.c2p(Se,!0),Ae=DV.extendFlat({},e);Ae.attr=ie,Ae[f+"0"]=Ae[f+"1"]=Le,Ae[f+"LabelVal"]=Se,Ae[f+"Label"]=(l.labels?l.labels[ie]+" ":"")+l_t.hoverLabelText(d,Se,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[H]=void 0;for(var De=0;De<ke.length;De++)ke[De].attr!=="med"?(ke[De].name="",ke[De].spikeDistance=void 0,ke[De][H]=void 0):(ke[De].spikeDistance=_e,ke[De][H]=Me);return ke}function q1e(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 C=h(x);C<=e.distance&&(e.distance=C,d=[b,p])}}if(!d)return!1;v=n[d[0]],x=v.pts[d[1]];var E=i.c2p(x.x,!0),A=a.c2p(x.y,!0),L=x.mrc||1;u=DV.extendFlat({},e,{index:x.i,color:(o.marker||{}).color,name:o.name,x0:E-L,x1:E+L,y0:A-L,y1:A+L,spikeDistance:e.distance,hovertemplate:o.hovertemplate});var _=v.orig_p,k=_!==void 0?_:v.pos,M;o.orientation==="h"?(M=a,u.xLabelVal=x.x,u.yLabelVal=k):(M=i,u.xLabelVal=k,u.yLabelVal=x.y);var g=M._id.charAt(0);return u[g+"Spike"]=M.c2p(v.pos,!0),u_t(x,o,u),u}B1e.exports={hoverPoints:c_t,hoverOnBoxes:O1e,hoverOnPoints:q1e}});var U1e=ye((hlr,N1e)=>{"use strict";N1e.exports=function(t,r){return r.hoverOnBox&&(t.hoverOnBox=r.hoverOnBox),"xVal"in r&&(t.x=r.xVal),"yVal"in r&&(t.y=r.yVal),r.xa&&(t.xaxis=r.xa),r.ya&&(t.yaxis=r.ya),t}});var zV=ye((dlr,V1e)=>{"use strict";V1e.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=[],s,l;if(r===!1)for(s=0;s<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 H1e=ye((vlr,G1e)=>{"use strict";G1e.exports={attributes:y4(),layoutAttributes:_4(),supplyDefaults:b4().supplyDefaults,crossTraceDefaults:b4().crossTraceDefaults,supplyLayoutDefaults:jI().supplyLayoutDefaults,calc:LV(),crossTraceCalc:XI().crossTraceCalc,plot:ZI().plot,style:YI().style,styleOnSelect:YI().styleOnSelect,hoverPoints:FV().hoverPoints,eventData:U1e(),selectPoints:zV(),moduleType:"trace",name:"box",basePlotModule:vh(),categories:["cartesian","svg","symbols","oriented","box-violin","showLegend","boxLayout","zoomScale"],meta:{}}});var W1e=ye((plr,j1e)=>{"use strict";j1e.exports=H1e()});var ET=ye((glr,X1e)=>{"use strict";var n0=pf(),f_t=Vl(),h_t=ec(),OV=df().axisHoverFormat,d_t=Qo().hovertemplateAttrs,v_t=Qo().texttemplateAttrs,p_t=Tu(),Lp=Ao().extendFlat;X1e.exports=Lp({z:{valType:"data_array",editType:"calc"},x:Lp({},n0.x,{impliedEdits:{xtype:"array"}}),x0:Lp({},n0.x0,{impliedEdits:{xtype:"scaled"}}),dx:Lp({},n0.dx,{impliedEdits:{xtype:"scaled"}}),y:Lp({},n0.y,{impliedEdits:{ytype:"array"}}),y0:Lp({},n0.y0,{impliedEdits:{ytype:"scaled"}}),dy:Lp({},n0.dy,{impliedEdits:{ytype:"scaled"}}),xperiod:Lp({},n0.xperiod,{impliedEdits:{xtype:"scaled"}}),yperiod:Lp({},n0.yperiod,{impliedEdits:{ytype:"scaled"}}),xperiod0:Lp({},n0.xperiod0,{impliedEdits:{xtype:"scaled"}}),yperiod0:Lp({},n0.yperiod0,{impliedEdits:{ytype:"scaled"}}),xperiodalignment:Lp({},n0.xperiodalignment,{impliedEdits:{xtype:"scaled"}}),yperiodalignment:Lp({},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:OV("x"),yhoverformat:OV("y"),zhoverformat:OV("z",1),hovertemplate:d_t(),texttemplate:v_t({arrayOk:!1,editType:"plot"},{keys:["x","y","z","text"]}),textfont:h_t({editType:"plot",autoSize:!0,autoColor:!0,colorEditType:"style"}),showlegend:Lp({},f_t.showlegend,{dflt:!1}),zorder:n0.zorder},p_t("",{cLetter:"z",autoColorDflt:!1}))});var JI=ye((mlr,Y1e)=>{"use strict";var g_t=Eo(),KI=Dr(),m_t=qa();Y1e.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(KI.isArray1D(s)){l=n(a),u=n(o);var c=KI.minRowLength(l),f=KI.minRowLength(u);if(c===0||f===0)return 0;r._length=Math.min(c,f,s.length)}else{if(l=Z1e(a,n),u=Z1e(o,n),!y_t(s))return 0;n("transpose"),r._length=null}var h=m_t.getComponentMethod("calendars","handleTraceDefaults");return h(t,r,[a,o],i),!0};function Z1e(e,t){var r=t(e),n=r?t(e+"type","array"):"scaled";return n==="scaled"&&(t(e+"0"),t("d"+e)),r}function y_t(e){for(var t=!0,r=!1,n=!1,i,a=0;a<e.length;a++){if(i=e[a],!KI.isArrayOrTypedArray(i)){t=!1;break}i.length>0&&(r=!0);for(var o=0;o<i.length;o++)if(g_t(i[o])){n=!0;break}}return t&&r&&n}});var w4=ye((ylr,J1e)=>{"use strict";var K1e=Dr();J1e.exports=function(t,r){t("texttemplate");var n=K1e.extendFlat({},r.font,{color:"auto",size:"auto"});K1e.coerceFont(t,"textfont",n)}});var qV=ye((_lr,$1e)=>{"use strict";$1e.exports=function(t,r,n){var i=n("zsmooth");i===!1&&(n("xgap"),n("ygap")),n("zhoverformat")}});var t_e=ye((xlr,e_e)=>{"use strict";var Q1e=Dr(),__t=JI(),x_t=w4(),b_t=Pg(),w_t=qV(),T_t=Jh(),A_t=ET();e_e.exports=function(t,r,n,i){function a(s,l){return Q1e.coerce(t,r,A_t,s,l)}var o=__t(t,r,a,i);if(!o){r.visible=!1;return}b_t(t,r,i,a),a("xhoverformat"),a("yhoverformat"),a("text"),a("hovertext"),a("hovertemplate"),x_t(a,i),w_t(t,r,a,i),a("hoverongaps"),a("connectgaps",Q1e.isArray1D(r.z)&&r.zsmooth!==!1),T_t(t,r,i,a,{prefix:"",cLetter:"z"}),a("zorder")}});var BV=ye((blr,r_e)=>{"use strict";var CT=Eo();r_e.exports={count:function(e,t,r){return r[e]++,1},sum:function(e,t,r,n){var i=n[t];return CT(i)?(i=Number(i),r[e]+=i,i):0},avg:function(e,t,r,n,i){var a=n[t];return CT(a)&&(a=Number(a),r[e]+=a,i[e]++),0},min:function(e,t,r,n){var i=n[t];if(CT(i))if(i=Number(i),CT(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(CT(i))if(i=Number(i),CT(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 NV=ye((wlr,i_e)=>{"use strict";i_e.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 UV=ye((Tlr,n_e)=>{"use strict";n_e.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 VV=ye((Alr,h_e)=>{"use strict";var kT=hs(),a2=kT.ONEAVGYEAR,a_e=kT.ONEAVGMONTH,QI=kT.ONEDAY,o_e=kT.ONEHOUR,s_e=kT.ONEMIN,l_e=kT.ONESEC,u_e=ho().tickIncrement;h_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($I(u+s,u+l,i,a),$I(c+s,c+l,i,a)),h=Math.min($I(u+o,u+s,i,a),$I(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>QI){var x=d===a2?1:6,b=d===a2?"M12":"M1";return function(p,C){var E=i.c2d(p,a2,a),A=E.indexOf("-",x);A>0&&(E=E.substr(0,A));var L=i.d2c(E,0,a);if(L<p){var _=u_e(L,b,!1,a);(L+_)/2<p+t&&(L=_)}return C&&v?u_e(L,b,!0,a):L}}return function(p,C){var E=d*Math.round(p/d);return E+d/10<p&&E+d*.9<p+t&&(E+=d),C&&v&&(E-=d),E}};function $I(e,t,r,n){if(e*t<=0)return 1/0;for(var i=Math.abs(t-e),a=r.type==="date",o=c_e(i,a),s=0;s<10;s++){var l=c_e(o*80,a);if(o===l)break;if(S_t(l,e,t,a,r,n))o=l;else break}return o}function c_e(e,t){return t&&e>l_e?e>QI?e>a2*1.1?a2:e>a_e*1.1?a_e:QI:e>o_e?o_e:e>s_e?s_e:l_e:Math.pow(10,Math.floor(Math.log(e)/Math.LN10))}function S_t(e,t,r,n,i,a){if(n&&e>QI){var o=f_e(t,i,a),s=f_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 f_e(e,t,r){var n=t.c2d(e,a2,r).split("-");return n[0]===""&&(n.unshift(),n[0]="-"+n[0]),n}});var jV=ye((Slr,p_e)=>{"use strict";var GV=Eo(),Vv=Dr(),d_e=qa(),G0=ho(),M_t=v4(),v_e=BV(),E_t=NV(),C_t=UV(),k_t=VV();function L_t(e,t){var r=[],n=[],i=t.orientation==="h",a=G0.getFromId(e,i?t.yaxis:t.xaxis),o=i?"y":"x",s={x:"y",y:"x"}[o],l=t[o+"calendar"],u=t.cumulative,c,f=HV(e,t,a,o),h=f[0],d=f[1],v=typeof h.size=="string",x=[],b=v?x:h,p=[],C=[],E=[],A=0,L=t.histnorm,_=t.histfunc,k=L.indexOf("density")!==-1,M,g,P;u.enabled&&k&&(L=L.replace(/ ?density$/,""),k=!1);var T=_==="max"||_==="min",z=T?null:0,O=v_e.count,V=E_t[L],G=!1,Z=function(ge){return a.r2c(ge,0,l)},H;for(Vv.isArrayOrTypedArray(t[s])&&_!=="count"&&(H=t[s],G=_==="avg",O=v_e[_]),c=Z(h.start),g=Z(h.end)+(c-G0.tickIncrement(c,h.size,!1,l))/1e6;c<g&&r.length<1e6&&(M=G0.tickIncrement(c,h.size,!1,l),r.push((c+M)/2),n.push(z),E.push([]),x.push(c),k&&p.push(1/(M-c)),G&&C.push(0),!(M<=c));)c=M;x.push(c),!v&&a.type==="date"&&(b={start:Z(b.start),end:Z(b.end),size:b.size}),e._fullLayout._roundFnOpts||(e._fullLayout._roundFnOpts={});var N=t["_"+o+"bingroup"],j={leftGap:1/0,rightGap:1/0};N&&(e._fullLayout._roundFnOpts[N]||(e._fullLayout._roundFnOpts[N]=j),j=e._fullLayout._roundFnOpts[N]);var re=n.length,oe=!0,_e=j.leftGap,Me=j.rightGap,ke={};for(c=0;c<d.length;c++){var me=d[c];P=Vv.findBin(me,b),P>=0&&P<re&&(A+=O(P,c,n,H,C),oe&&E[P].length&&me!==d[E[P][0]]&&(oe=!1),E[P].push(c),ke[c]=P,_e=Math.min(_e,me-x[P]),Me=Math.min(Me,x[P+1]-me))}j.leftGap=_e,j.rightGap=Me;var ie;oe||(ie=function(ge,Fe){return function(){var ce=e._fullLayout._roundFnOpts[N];return k_t(ce.leftGap,ce.rightGap,x,a,l)(ge,Fe)}}),G&&(A=C_t(n,C)),V&&V(n,A,p),u.enabled&&R_t(n,u.direction,u.currentbin);var Se=Math.min(r.length,n.length),Le=[],Ae=0,De=Se-1;for(c=0;c<Se;c++)if(n[c]){Ae=c;break}for(c=Se-1;c>=Ae;c--)if(n[c]){De=c;break}for(c=Ae;c<=De;c++)if(GV(r[c])&&GV(n[c])){var Pe={p:r[c],s:n[c],b:0};u.enabled||(Pe.pts=E[c],oe?Pe.ph0=Pe.ph1=E[c].length?d[E[c][0]]:r[c]:(t._computePh=!0,Pe.ph0=ie(x[c]),Pe.ph1=ie(x[c+1],!0))),Le.push(Pe)}return Le.length===1&&(Le[0].width1=G0.tickIncrement(Le[0].p,h.size,!1,l)-Le[0].p),M_t(Le,t),Vv.isArrayOrTypedArray(t.selectedpoints)&&Vv.tagSelected(Le,t,ke),Le}function HV(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(me){return r.r2c(me,0,d)},C=function(me){return r.c2r(me,0,d)},E=r.type==="date"?function(me){return me||me===0?Vv.cleanDate(me,null,d):null}:function(me){return GV(me)?Number(me):null};function A(me,ie,Se){ie[me+"Found"]?(ie[me]=E(ie[me]),ie[me]===null&&(ie[me]=Se[me])):(x[me]=ie[me]=Se[me],Vv.nestedProperty(f[0],a+"."+me).set(Se[me]))}if(t["_"+n+"autoBinFinished"])delete t["_"+n+"autoBinFinished"];else{f=l.traces;var L=[],_=!0,k=!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),d_e.traceIs(h,"2dMap")&&(k=!0),h.type==="histogram2dcontour"&&(M=!0))}d=f[0][n+"calendar"];var P=G0.autoBin(L,r,l.nbins,k,d,l.sizeFound&&l.size),T=f[0]._autoBin={};if(x=T[l.dirs[0]]={},M&&(l.size||(P.start=C(G0.tickIncrement(p(P.start),P.size,!0,d))),l.end===void 0&&(P.end=C(G0.tickIncrement(p(P.end),P.size,!1,d)))),u&&!d_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=P_t(e,t,r,n,a)}b=h.cumulative||{},b.enabled&&b.currentbin!=="include"&&(b.direction==="decreasing"?P.start=C(G0.tickIncrement(p(P.start),P.size,!0,d)):P.end=C(G0.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 z=t._input[a]||{},O=Vv.extendFlat({},l),V=l.start,G=r.r2l(z.start),Z=G!==void 0;if((l.startFound||Z)&&G!==r.r2l(V)){var H=Z?G: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:[H,G0.tickIncrement(H,l.size,!1,d)].map(r.l2r)},j=G0.tickFirst(N);j>r.r2l(H)&&(j=G0.tickIncrement(j,l.size,!0,d)),O.start=r.l2r(j),Z||Vv.nestedProperty(t,a+".start").set(O.start)}var re=l.end,oe=r.r2l(z.end),_e=oe!==void 0;if((l.endFound||_e)&&oe!==r.r2l(re)){var Me=_e?oe:Vv.aggNums(Math.max,null,v);O.end=r.l2r(Me),_e||Vv.nestedProperty(t,a+".start").set(O.end)}var ke="autobin"+n;return t._input[ke]===!1&&(t._input[a]=Vv.extendFlat({},t[a]||{}),delete t._input[ke],delete t[ke]),[O,v]}function P_t(e,t,r,n,i){var a=e._fullLayout,o=I_t(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=HV(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"],C=0;C<p.length;C++)if(p[C]!==void 0){b[c]=p[C];break}for(isFinite(l)||(l=Vv.distinctVals(b).minDiff),c=0;c<u.length;c++){f=u[c];var E=f[n+"calendar"],A={start:r.c2r(b[c]-l/2,0,E),end:r.c2r(b[c]+l/2,0,E),size:l};f._input[i]=f[i]=A,h=a._histogramBinOpts[f["_"+n+"bingroup"]],h&&Vv.extendFlat(h,A)}return t[i]}function I_t(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 R_t(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())}}p_e.exports={calc:L_t,calcAllAutoBins:HV}});var T_e=ye((Mlr,w_e)=>{"use strict";var g_e=Dr(),LT=ho(),m_e=BV(),D_t=NV(),F_t=UV(),z_t=VV(),y_e=jV().calcAllAutoBins;w_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(bt){return n.r2c(bt,0,a)},l=function(bt){return i.r2c(bt,0,o)},u=function(bt){return n.c2r(bt,0,a)},c=function(bt){return i.c2r(bt,0,o)},f,h,d,v,x=y_e(t,r,n,"x"),b=x[0],p=x[1],C=y_e(t,r,i,"y"),E=C[0],A=C[1],L=r._length;p.length>L&&p.splice(L,p.length-L),A.length>L&&A.splice(L,A.length-L);var _=[],k=[],M=[],g=typeof b.size=="string",P=typeof E.size=="string",T=[],z=[],O=g?T:b,V=P?z:E,G=0,Z=[],H=[],N=r.histnorm,j=r.histfunc,re=N.indexOf("density")!==-1,oe=j==="max"||j==="min",_e=oe?null:0,Me=m_e.count,ke=D_t[N],me=!1,ie=[],Se=[],Le="z"in r?r.z:"marker"in r&&Array.isArray(r.marker.color)?r.marker.color:"";Le&&j!=="count"&&(me=j==="avg",Me=m_e[j]);var Ae=b.size,De=s(b.start),Pe=s(b.end)+(De-LT.tickIncrement(De,Ae,!1,a))/1e6;for(f=De;f<Pe;f=LT.tickIncrement(f,Ae,!1,a))k.push(_e),T.push(f),me&&M.push(0);T.push(f);var ge=k.length,Fe=(f-De)/ge,ce=u(De+Fe/2),Ze=E.size,ct=l(E.start),pt=l(E.end)+(ct-LT.tickIncrement(ct,Ze,!1,o))/1e6;for(f=ct;f<pt;f=LT.tickIncrement(f,Ze,!1,o)){_.push(k.slice()),z.push(f);var Wt=new Array(ge);for(h=0;h<ge;h++)Wt[h]=[];H.push(Wt),me&&Z.push(M.slice())}z.push(f);var st=_.length,lt=(f-ct)/st,Gt=c(ct+lt/2);re&&(ie=__e(k.length,O,Fe,g),Se=__e(_.length,V,lt,P)),!g&&n.type==="date"&&(O=x_e(s,O)),!P&&i.type==="date"&&(V=x_e(l,V));var Nt=!0,$t=!0,sr=new Array(ge),wr=new Array(st),ur=1/0,Qe=1/0,Et=1/0,er=1/0;for(f=0;f<L;f++){var Ut=p[f],Ft=A[f];d=g_e.findBin(Ut,O),v=g_e.findBin(Ft,V),d>=0&&d<ge&&v>=0&&v<st&&(G+=Me(d,f,_[v],Le,Z[v]),H[v][d].push(f),Nt&&(sr[d]===void 0?sr[d]=Ut:sr[d]!==Ut&&(Nt=!1)),$t&&(wr[v]===void 0?wr[v]=Ft:wr[v]!==Ft&&($t=!1)),ur=Math.min(ur,Ut-T[d]),Qe=Math.min(Qe,T[d+1]-Ut),Et=Math.min(Et,Ft-z[v]),er=Math.min(er,z[v+1]-Ft))}if(me)for(v=0;v<st;v++)G+=F_t(_[v],Z[v]);if(ke)for(v=0;v<st;v++)ke(_[v],G,ie,Se[v]);return{x:p,xRanges:b_e(T,Nt&&sr,ur,Qe,n,a),x0:ce,dx:Fe,y:A,yRanges:b_e(z,$t&&wr,Et,er,i,o),y0:Gt,dy:lt,z:_,pts:H}};function __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 x_e(e,t){return{start:e(t.start),end:e(t.end),size:t.size}}function b_e(e,t,r,n,i,a){var o,s=e.length-1,l=new Array(s),u=z_t(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 e8=ye((Elr,M_e)=>{"use strict";var Im=Dr(),A_e=hs().BADNUM,S_e=Rg();M_e.exports=function(t,r,n,i,a,o){var s=t._length,l=r.makeCalcdata(t,i),u=n.makeCalcdata(t,a);l=S_e(t,r,i,l).vals,u=S_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,C=Im.distinctVals(u),E=C.vals,A=[],L,_,k=E.length,M=p.length;for(v=0;v<o.length;v++)A[v]=Im.init2dArray(k,M);f&&(L=Im.init2dArray(k,M)),d&&(_=Im.init2dArray(k,M));var g=Im.init2dArray(k,M);for(v=0;v<s;v++)if(l[v]!==A_e&&u[v]!==A_e){var P=Im.findBin(l[v]+b.minDiff/2,p),T=Im.findBin(u[v]+C.minDiff/2,E);for(x=0;x<o.length;x++){var z=o[x],O=t[z],V=A[x];V[T][P]=O[v],g[T][P]=v}f&&(L[T][P]=c[v]),d&&(_[T][P]=h[v])}for(t["_"+i]=p,t["_"+a]=E,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(G){return r._categories[G]})),n&&n.type==="category"&&(t["_"+a+"CategoryMap"]=E.map(function(G){return n._categories[G]})),t._after2before=g}});var r8=ye((Clr,E_e)=>{"use strict";var O_t=Eo(),q_t=Dr(),t8=hs().BADNUM;E_e.exports=function(t,r,n,i){var a,o,s,l,u,c;function f(p){if(O_t(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,C,E){return(p[E]||[])[C]}}else a=t.length,s=function(p,C){return p[C].length},l=function(p,C,E){return(p[C]||[])[E]};var h=function(p,C,E){return C===t8||E===t8?t8:l(p,C,E)};function d(p){if(r&&r.type!=="carpet"&&r.type!=="contourcarpet"&&p&&p.type==="category"&&r["_"+p._id.charAt(0)].length){var C=p._id.charAt(0),E={},A=r["_"+C+"CategoryMap"]||r[C];for(u=0;u<A.length;u++)E[A[u]]=u;return function(L){var _=E[p._categories[L]];return _+1?_:t8}}else return q_t.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 i8=ye((klr,L_e)=>{"use strict";var B_t=Dr(),C_e=.01,N_t=[[-1,0],[1,0],[0,-1],[0,1]];function U_t(e){return .5-.25*Math.min(1,e*.5)}L_e.exports=function(t,r){var n=1,i;for(k_e(t,r),i=0;i<r.length&&!(r[i][2]<4);i++);for(r=r.slice(i),i=0;i<100&&n>C_e;i++)n=k_e(t,r,U_t(n));return n>C_e&&B_t.log("interp2d didn't converge quickly",n),t};function k_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=N_t[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 n8=ye((Llr,P_e)=>{"use strict";var V_t=Dr().maxRowLength;P_e.exports=function(t){var r=[],n={},i=[],a=t[0],o=[],s=[0,0,0],l=V_t(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,C){return C[2]-p[2]})}});var WV=ye((Plr,D_e)=>{"use strict";var I_e=qa(),R_e=Dr().isArrayOrTypedArray;D_e.exports=function(t,r,n,i,a,o){var s=[],l=I_e.traceIs(t,"contour"),u=I_e.traceIs(t,"histogram"),c,f,h,d=R_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(R_e(r)&&r.length===1)c=r[0];else if(n===void 0)c=0;else{var C=o.type==="log"?o.d2c:o.r2c;c=C(n,0,p)}for(f=i||1,h=l?0:-.5;h<a;h++)s.push(c+f*h)}return s}});var s8=ye((Ilr,q_e)=>{"use strict";var F_e=qa(),XV=Dr(),a8=ho(),z_e=Rg(),G_t=T_e(),H_t=Fv(),j_t=e8(),W_t=r8(),X_t=i8(),Z_t=n8(),o8=WV(),ZV=hs().BADNUM;q_e.exports=function(t,r){var n=a8.getFromId(t,r.xaxis||"x"),i=a8.getFromId(t,r.yaxis||"y"),a=F_e.traceIs(r,"contour"),o=F_e.traceIs(r,"histogram"),s=a?"best":r.zsmooth,l,u,c,f,h,d,v,x,b,p,C;if(n._minDtick=0,i._minDtick=0,o)C=G_t(t,r),f=C.orig_x,l=C.x,u=C.x0,c=C.dx,x=C.orig_y,h=C.y,d=C.y0,v=C.dy,b=C.z;else{var E=r.z;XV.isArray1D(E)?(j_t(r,n,i,"x","y",["z"]),l=r._x,h=r._y,E=r._z):(f=r.x?n.makeCalcdata(r,"x"):[],x=r.y?i.makeCalcdata(r,"y"):[],l=z_e(r,n,"x",f).vals,h=z_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=W_t(E,r,n,i)}(n.rangebreaks||i.rangebreaks)&&(b=Y_t(l,h,b),o||(l=O_e(l),h=O_e(h),r._x=l,r._y=h)),!o&&(a||r.connectgaps)&&(r._emptypoints=Z_t(b),X_t(b,r._emptypoints));function A(O){s=r._input.zsmooth=r.zsmooth=!1,XV.warn('cannot use zsmooth: "fast": '+O)}function L(O){if(O.length>1){var V=(O[O.length-1]-O[0])/(O.length-1),G=Math.abs(V/100);for(p=0;p<O.length-1;p++)if(Math.abs(O[p+1]-O[p]-V)>G)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 _=XV.maxRowLength(b),k=r.xtype==="scaled"?"":l,M=o8(r,k,u,c,_,n),g=r.ytype==="scaled"?"":h,P=o8(r,g,d,v,b.length,i);r._extremes[n._id]=a8.findExtremes(n,M),r._extremes[i._id]=a8.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),k&&k.length===M.length-1&&(T.xCenter=k),g&&g.length===P.length-1&&(T.yCenter=g),o&&(T.xRanges=C.xRanges,T.yRanges=C.yRanges,T.pts=C.pts),a||H_t(t,r,{vals:b,cLetter:"z"}),a&&r.contours&&r.contours.coloring==="heatmap"){var z={type:r.type==="contour"?"heatmap":"histogram2d",xcalendar:r.xcalendar,ycalendar:r.ycalendar};T.xfill=o8(z,k,u,c,_,n),T.yfill=o8(z,g,d,v,b.length,i)}return[T]};function O_e(e){for(var t=[],r=e.length,n=0;n<r;n++){var i=e[n];i!==ZV&&t.push(i)}return t}function Y_t(e,t,r){for(var n=[],i=-1,a=0;a<r.length;a++)if(t[a]!==ZV){i++,n[i]=[];for(var o=0;o<r[a].length;o++)e[o]!==ZV&&n[i].push(r[a][o])}return n}});var u8=ye(l8=>{"use strict";l8.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"]];l8.STYLE=l8.CSS_DECLARATIONS.map(function(e){return e.join(": ")+"; "}).join("")});var KV=ye((Dlr,N_e)=>{"use strict";var B_e=u8(),K_t=So(),YV=Dr(),PT=null;function J_t(){if(PT!==null)return PT;PT=!1;var e=YV.isSafari()||YV.isMacWKWebView()||YV.isIOS();if(window.navigator.userAgent&&!e){var t=Array.from(B_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=K_t.tester.append("image").attr("style",B_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}N_e.exports=J_t});var c8=ye((Flr,Y_e)=>{"use strict";var U_e=Oa(),$_t=cd(),Q_t=qa(),ext=So(),txt=ho(),H0=Dr(),V_e=iu(),rxt=tI(),ixt=Ca(),nxt=tc().extractOpts,axt=tc().makeColorScaleFuncFromTrace,oxt=Wp(),sxt=Kh(),JV=sxt.LINE_SPACING,lxt=KV(),uxt=u8().STYLE,X_e="heatmap-label";function Z_e(e){return e.selectAll("g."+X_e)}function G_e(e){Z_e(e).remove()}Y_e.exports=function(e,t,r,n){var i=t.xaxis,a=t.yaxis;H0.makeTraceGroups(n,r,"hm").each(function(o){var s=U_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=Q_t.traceIs(u,"contour"),C=p?"best":u.zsmooth,E=h.length,A=H0.maxRowLength(h),L=!1,_=!1,k,M,g,P,T,z,O,V;for(z=0;k===void 0&&z<d.length-1;)k=i.c2p(d[z]),z++;for(z=d.length-1;M===void 0&&z>0;)M=i.c2p(d[z]),z--;for(M<k&&(g=M,M=k,k=g,L=!0),z=0;P===void 0&&z<v.length-1;)P=a.c2p(v[z]),z++;for(z=v.length-1;T===void 0&&z>0;)T=a.c2p(v[z]),z--;T<P&&(g=P,P=T,T=g,_=!0),p&&(x=d,b=v,d=l.xfill,v=l.yfill);var G="default";if(C?G=C==="best"?"smooth":"fast":u._islinear&&c===0&&f===0&&lxt()&&(G="fast"),G!=="fast"){var Z=C==="best"?0:.5;k=Math.max(-Z*i._length,k),M=Math.min((1+Z)*i._length,M),P=Math.max(-Z*a._length,P),T=Math.min((1+Z)*a._length,T)}var H=Math.round(M-k),N=Math.round(T-P),j=k>=i._length||M<=0||P>=a._length||T<=0;if(j){var re=s.selectAll("image").data([]);re.exit().remove(),G_e(s);return}var oe,_e;G==="fast"?(oe=A,_e=E):(oe=H,_e=N);var Me=document.createElement("canvas");Me.width=oe,Me.height=_e;var ke=Me.getContext("2d",{willReadFrequently:!0}),me=axt(u,{noNumericCheck:!0,returnArray:!0}),ie,Se;G==="fast"?(ie=L?function(cn){return A-1-cn}:H0.identity,Se=_?function(cn){return E-1-cn}:H0.identity):(ie=function(cn){return H0.constrain(Math.round(i.c2p(d[cn])-k),0,H)},Se=function(cn){return H0.constrain(Math.round(a.c2p(v[cn])-P),0,N)});var Le=Se(0),Ae=[Le,Le],De=L?0:1,Pe=_?0:1,ge=0,Fe=0,ce=0,Ze=0,ct,pt,Wt,st,lt;function Gt(cn,yn){if(cn!==void 0){var Mn=me(cn);return Mn[0]=Math.round(Mn[0]),Mn[1]=Math.round(Mn[1]),Mn[2]=Math.round(Mn[2]),ge+=yn,Fe+=Mn[0]*yn,ce+=Mn[1]*yn,Ze+=Mn[2]*yn,Mn}return[0,0,0,0]}function Nt(cn,yn,Mn,Ba){var la=cn[Mn.bin0];if(la===void 0)return Gt(void 0,1);var ma=cn[Mn.bin1],Wa=yn[Mn.bin0],Fa=yn[Mn.bin1],Wo=ma-la||0,da=Wa-la||0,Wn;return ma===void 0?Fa===void 0?Wn=0:Wa===void 0?Wn=2*(Fa-la):Wn=(2*Fa-Wa-la)*2/3:Fa===void 0?Wa===void 0?Wn=0:Wn=(2*la-ma-Wa)*2/3:Wa===void 0?Wn=(2*Fa-ma-la)*2/3:Wn=Fa+la-ma-Wa,Gt(la+Mn.frac*Wo+Ba.frac*(da+Mn.frac*Wn))}if(G!=="default"){var $t=0,sr;try{sr=new Uint8Array(oe*_e*4)}catch(cn){sr=new Array(oe*_e*4)}if(G==="smooth"){var wr=x||d,ur=b||v,Qe=new Array(wr.length),Et=new Array(ur.length),er=new Array(H),Ut=x?j_e:H_e,Ft=b?j_e:H_e,bt,yt,Yt;for(z=0;z<wr.length;z++)Qe[z]=Math.round(i.c2p(wr[z])-k);for(z=0;z<ur.length;z++)Et[z]=Math.round(a.c2p(ur[z])-P);for(z=0;z<H;z++)er[z]=Ut(z,Qe);for(O=0;O<N;O++)for(bt=Ft(O,Et),yt=h[bt.bin0],Yt=h[bt.bin1],z=0;z<H;z++,$t+=4)lt=Nt(yt,Yt,er[z],bt),W_e(sr,$t,lt)}else for(O=0;O<E;O++)for(st=h[O],Ae=Se(O),z=0;z<A;z++)lt=Gt(st[z],1),$t=(Ae*A+ie(z))*4,W_e(sr,$t,lt);var lr=ke.createImageData(oe,_e);try{lr.data.set(sr)}catch(cn){var Tr=lr.data,Rr=Tr.length;for(O=0;O<Rr;O++)Tr[O]=sr[O]}ke.putImageData(lr,0,0)}else{var ei=Math.floor(c/2),Wr=Math.floor(f/2);for(O=0;O<E;O++)if(st=h[O],Ae.reverse(),Ae[Pe]=Se(O+1),!(Ae[0]===Ae[1]||Ae[0]===void 0||Ae[1]===void 0))for(pt=ie(0),ct=[pt,pt],z=0;z<A;z++)ct.reverse(),ct[De]=ie(z+1),!(ct[0]===ct[1]||ct[0]===void 0||ct[1]===void 0)&&(Wt=st[z],lt=Gt(Wt,(ct[1]-ct[0])*(Ae[1]-Ae[0])),ke.fillStyle="rgba("+lt.join(",")+")",ke.fillRect(ct[0]+ei,Ae[0]+Wr,ct[1]-ct[0]-c,Ae[1]-Ae[0]-f))}Fe=Math.round(Fe/ge),ce=Math.round(ce/ge),Ze=Math.round(Ze/ge);var Ur=$_t("rgb("+Fe+","+ce+","+Ze+")");e._hmpixcount=(e._hmpixcount||0)+ge,e._hmlumcount=(e._hmlumcount||0)+ge*Ur.getLuminance();var dt=s.selectAll("image").data(o);dt.enter().append("svg:image").attr({xmlns:oxt.svg,preserveAspectRatio:"none"}),dt.attr({height:N,width:H,x:k,y:P,"xlink:href":Me.toDataURL("image/png")}),G==="fast"&&!C&&dt.attr("style",uxt),G_e(s);var Ge=u.texttemplate;if(Ge){var Je=nxt(u),je={type:"linear",range:[Je.min,Je.max],_separators:i._separators,_numFormat:i._numFormat},$e=u.type==="histogram2dcontour",wt=u.type==="contour",Ie=wt?1:0,xe=wt?E-1:E,Ce=wt?1:0,vt=wt?A-1:A,nr=[];for(z=Ie;z<xe;z++){var ir;if(wt)ir=l.y[z];else if($e){if(z===0||z===E-1)continue;ir=l.y[z]}else if(l.yCenter)ir=l.yCenter[z];else{if(z+1===E&&l.y[z+1]===void 0)continue;ir=(l.y[z]+l.y[z+1])/2}var pr=Math.round(a.c2p(ir));if(!(0>pr||pr>a._length))for(O=Ce;O<vt;O++){var oi;if(wt)oi=l.x[O];else if($e){if(O===0||O===A-1)continue;oi=l.x[O]}else if(l.xCenter)oi=l.xCenter[O];else{if(O+1===A&&l.x[O+1]===void 0)continue;oi=(l.x[O]+l.x[O+1])/2}var di=Math.round(i.c2p(oi));if(!(0>di||di>i._length)){var Jr=rxt({x:oi,y:ir},u,e._fullLayout);Jr.x=oi,Jr.y=ir;var fi=l.z[z][O];fi===void 0?(Jr.z="",Jr.zLabel=""):(Jr.z=fi,Jr.zLabel=txt.tickText(je,fi,"hover").text);var Hi=l.text&&l.text[z]&&l.text[z][O];(Hi===void 0||Hi===!1)&&(Hi=""),Jr.text=Hi;var Pn=H0.texttemplateString(Ge,Jr,e._fullLayout._d3locale,Jr,u._meta||{});if(Pn){var wn=Pn.split("<br>"),pn=wn.length,Vn=0;for(V=0;V<pn;V++)Vn=Math.max(Vn,wn[V].length);nr.push({l:pn,c:Vn,t:Pn,x:di,y:pr,z:fi})}}}}var kn=u.textfont,ea=kn.size,ua=e._fullLayout.font.size;if(!ea||ea==="auto"){var Vt=1/0,_t=1/0,tr=0,ar=0;for(V=0;V<nr.length;V++){var Er=nr[V];if(tr=Math.max(tr,Er.l),ar=Math.max(ar,Er.c),V<nr.length-1){var Zr=nr[V+1],ri=Math.abs(Zr.x-Er.x),$r=Math.abs(Zr.y-Er.y);ri&&(Vt=Math.min(Vt,ri)),$r&&(_t=Math.min(_t,$r))}}!isFinite(Vt)||!isFinite(_t)?ea=ua:(Vt-=c,_t-=f,Vt/=ar,_t/=tr,Vt/=JV/2,_t/=JV,ea=Math.min(Math.floor(Vt),Math.floor(_t),ua))}if(ea<=0||!isFinite(ea))return;var zi=function(cn){return cn.x},Ji=function(cn){return cn.y-ea*(cn.l*JV/2-1)},en=Z_e(s).data(nr);en.enter().append("g").classed(X_e,1).append("text").attr("text-anchor","middle").each(function(cn){var yn=U_e.select(this),Mn=kn.color;(!Mn||Mn==="auto")&&(Mn=ixt.contrast(cn.z===void 0?e._fullLayout.plot_bgcolor:"rgba("+me(cn.z).join()+")")),yn.attr("data-notex",1).call(V_e.positionText,zi(cn),Ji(cn)).call(ext.font,{family:kn.family,size:ea,color:Mn,weight:kn.weight,style:kn.style,variant:kn.variant,textcase:kn.textcase,lineposition:kn.lineposition,shadow:kn.shadow}).text(cn.t).call(V_e.convertToTspans,e)})}})};function H_e(e,t){var r=t.length-2,n=H0.constrain(H0.findBin(e,t),0,r),i=t[n],a=t[n+1],o=H0.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 j_e(e,t){var r=t.length-1,n=H0.constrain(H0.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 W_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((zlr,K_e)=>{"use strict";K_e.exports={min:"zmin",max:"zmax"}});var f8=ye((Olr,J_e)=>{"use strict";var cxt=Oa();J_e.exports=function(t){cxt.select(t).selectAll(".hm image").style("opacity",function(r){return r.trace.opacity})}});var d8=ye((qlr,Q_e)=>{"use strict";var $_e=vf(),T4=Dr(),h8=T4.isArrayOrTypedArray,fxt=ho(),hxt=tc().extractOpts;Q_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,C=f,E=h,A,L,_,k;if(t.index!==!1){try{_=Math.round(t.index[1]),k=Math.round(t.index[0])}catch(re){T4.error("Error hovering on heatmap, pointNumber must be [row,col], found:",t.index);return}if(_<0||_>=d[0].length||k<0||k>d.length)return}else{if($_e.inbox(r-f[0],r-f[f.length-1],0)>0||$_e.inbox(n-h[0],n-h[h.length-1],0)>0)return;if(o){var M;for(C=[2*f[0]-f[1]],M=1;M<f.length;M++)C.push((f[M]+f[M-1])/2);for(C.push([2*f[f.length-1]-f[f.length-2]]),E=[2*h[0]-h[1]],M=1;M<h.length;M++)E.push((h[M]+h[M-1])/2);E.push([2*h[h.length-1]-h[h.length-2]])}_=Math.max(0,Math.min(C.length-2,T4.findBin(r,C))),k=Math.max(0,Math.min(E.length-2,T4.findBin(n,E)))}var g=u.c2p(f[_]),P=u.c2p(f[_+1]),T=c.c2p(h[k]),z=c.c2p(h[k+1]),O,V;o?(O=s.orig_x||f,V=s.orig_y||h,P=g,A=O[_],z=T,L=V[k]):(O=s.orig_x||v||f,V=s.orig_y||x||h,A=v?O[_]:(O[_]+O[_+1])/2,L=x?V[k]:(V[k]+V[k+1])/2,u&&u.type==="category"&&(A=f[_]),c&&c.type==="category"&&(L=h[k]),l.zsmooth&&(g=P=u.c2p(A),T=z=c.c2p(L)));var G=d[k][_];if(b&&!b[k][_]&&(G=void 0),!(G===void 0&&!l.hoverongaps)){var Z;h8(s.hovertext)&&h8(s.hovertext[k])?Z=s.hovertext[k][_]:h8(s.text)&&h8(s.text[k])&&(Z=s.text[k][_]);var H=hxt(l),N={type:"linear",range:[H.min,H.max],hoverformat:p,_separators:u._separators,_numFormat:u._numFormat},j=fxt.tickText(N,G,"hover").text;return[T4.extendFlat(t,{index:l._after2before?l._after2before[k][_]:[k,_],distance:t.maxHoverDistance,spikeDistance:t.maxSpikeDistance,x0:g,x1:P,y0:T,y1:z,xLabelVal:A,yLabelVal:L,zLabelVal:G,zLabel:j,text:Z})]}}});var txe=ye((Blr,exe)=>{"use strict";exe.exports={attributes:ET(),supplyDefaults:t_e(),calc:s8(),plot:c8(),colorbar:M_(),style:f8(),hoverPoints:d8(),moduleType:"trace",name:"heatmap",basePlotModule:vh(),categories:["cartesian","svg","2dMap","showLegend"],meta:{}}});var ixe=ye((Nlr,rxe)=>{"use strict";rxe.exports=txe()});var $V=ye((Ulr,nxe)=>{"use strict";nxe.exports=function(t,r){return{start:{valType:"any",editType:"calc"},end:{valType:"any",editType:"calc"},size:{valType:"any",editType:"calc"},editType:"calc"}}});var oxe=ye((Vlr,axe)=>{"use strict";axe.exports={eventDataKeys:["binNumber"]}});var v8=ye((Glr,uxe)=>{"use strict";var Pp=Lm(),sxe=df().axisHoverFormat,dxt=Qo().hovertemplateAttrs,vxt=Qo().texttemplateAttrs,QV=ec(),lxe=$V(),pxt=oxe(),eG=Ao().extendFlat;uxe.exports={x:{valType:"data_array",editType:"calc+clearAxisTypes"},y:{valType:"data_array",editType:"calc+clearAxisTypes"},xhoverformat:sxe("x"),yhoverformat:sxe("y"),text:eG({},Pp.text,{}),hovertext:eG({},Pp.hovertext,{}),orientation:Pp.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:lxe("x",!0),nbinsy:{valType:"integer",min:0,dflt:0,editType:"calc"},ybins:lxe("y",!0),autobinx:{valType:"boolean",dflt:null,editType:"calc"},autobiny:{valType:"boolean",dflt:null,editType:"calc"},bingroup:{valType:"string",dflt:"",editType:"calc"},hovertemplate:dxt({},{keys:pxt.eventDataKeys}),texttemplate:vxt({arrayOk:!1,editType:"plot"},{keys:["label","value"]}),textposition:eG({},Pp.textposition,{arrayOk:!1}),textfont:QV({arrayOk:!1,editType:"plot",colorEditType:"style"}),outsidetextfont:QV({arrayOk:!1,editType:"plot",colorEditType:"style"}),insidetextfont:QV({arrayOk:!1,editType:"plot",colorEditType:"style"}),insidetextanchor:Pp.insidetextanchor,textangle:Pp.textangle,cliponaxis:Pp.cliponaxis,constraintext:Pp.constraintext,marker:Pp.marker,offsetgroup:Pp.offsetgroup,alignmentgroup:Pp.alignmentgroup,selected:Pp.selected,unselected:Pp.unselected,zorder:Pp.zorder}});var dxe=ye((Hlr,hxe)=>{"use strict";var cxe=qa(),A4=Dr(),fxe=Ca(),gxt=r0().handleText,mxt=BI(),yxt=v8();hxe.exports=function(t,r,n,i){function a(C,E){return A4.coerce(t,r,yxt,C,E)}var o=a("x"),s=a("y"),l=a("cumulative.enabled");l&&(a("cumulative.direction"),a("cumulative.currentbin")),a("text");var u=a("textposition");gxt(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(A4.minRowLength(o)&&A4.minRowLength(s)):A4.minRowLength(r[f]||[]);if(!d){r.visible=!1;return}r._length=d;var v=cxe.getComponentMethod("calendars","handleTraceDefaults");v(t,r,["x","y"],i);var x=r[h];x&&a("histfunc"),a("histnorm"),a("autobin"+f),mxt(t,r,a,n,i),A4.coerceSelectionMarkerOpacity(r,a);var b=(r.marker.line||{}).color,p=cxe.getComponentMethod("errorbars","supplyDefaults");p(t,r,b||fxe.defaultLine,{axis:"y"}),p(t,r,b||fxe.defaultLine,{axis:"x",inherit:"y"}),a("zorder")}});var g8=ye((jlr,gxe)=>{"use strict";var S4=Dr(),_xt=hf(),p8=qa().traceIs,xxt=Gb(),bxt=r0().validateCornerradius,vxe=S4.nestedProperty,tG=Bb().getAxisGroup,pxe=[{aStr:{x:"xbins.start",y:"ybins.start"},name:"start"},{aStr:{x:"xbins.end",y:"ybins.end"},name:"end"},{aStr:{x:"xbins.size",y:"ybins.size"},name:"size"},{aStr:{x:"nbinsx",y:"nbinsy"},name:"nbins"}],wxt=["x","y"];gxe.exports=function(t,r){var n=r._histogramBinOpts={},i=[],a={},o=[],s,l,u,c,f,h,d;function v(G,Z){return S4.coerce(s._input,s,s._module.attributes,G,Z)}function x(G){return G.orientation==="v"?"x":"y"}function b(G,Z){var H=_xt.getFromTrace({_fullLayout:r},G,Z);return H.type}function p(G,Z,H){var N=G.uid+"__"+H;Z||(Z=N);var j=b(G,H),re=G[H+"calendar"]||"",oe=n[Z],_e=!0;oe&&(j===oe.axType&&re===oe.calendar?(_e=!1,oe.traces.push(G),oe.dirs.push(H)):(Z=N,j!==oe.axType&&S4.warn(["Attempted to group the bins of trace",G.index,"set on a","type:"+j,"axis","with bins on","type:"+oe.axType,"axis."].join(" ")),re!==oe.calendar&&S4.warn(["Attempted to group the bins of trace",G.index,"set with a",re,"calendar","with bins",oe.calendar?"on a "+oe.calendar+" calendar":"w/o a set calendar"].join(" ")))),_e&&(n[Z]={traces:[G],dirs:[H],axType:j,calendar:G[H+"calendar"]||""}),G["_"+H+"bingroup"]=Z}for(f=0;f<t.length;f++)if(s=t[f],p8(s,"histogram")){if(i.push(s),delete s._xautoBinFinished,delete s._yautoBinFinished,s.type==="histogram"){var C=v("marker.cornerradius",r.barcornerradius);s.marker&&(s.marker.cornerradius=bxt(C))}p8(s,"2dMap")||xxt(s._input,s,r,v,r.barmode)}var E=r._alignmentOpts||{};for(f=0;f<i.length;f++){if(s=i[f],u="",!p8(s,"2dMap")){if(c=x(s),r.barmode==="group"&&s.alignmentgroup){var A=s[c+"axis"],L=tG(r,A)+s.orientation;(E[L]||{})[s.alignmentgroup]&&(u=L)}!u&&r.barmode!=="overlay"&&(u=tG(r,s.xaxis)+tG(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 k=s._input.bingroup;k&&k!==u&&S4.warn(["Trace",s.index,"must match","within bingroup",u+".","Ignoring its bingroup:",k,"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(p8(s,"2dMap"))for(d=0;d<2;d++){c=wxt[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<pxe.length;h++){var T=pxe[h],z=T.name,O,V;if(!(z==="nbins"&&P.sizeFound)){for(f=0;f<l.length;f++){if(s=l[f],c=P.dirs[f],O=T.aStr[c],vxe(s._input,O).get()!==void 0){P[z]=v(O),P[z+"Found"]=!0;break}V=(s._autoBin||{})[c]||{},V[z]&&vxe(s,O).set(V[z])}if(z==="start"||z==="end")for(;f<l.length;f++)s=l[f],s["_"+c+"bingroup"]&&(V=(s._autoBin||{})[c]||{},v(O,V[z]));z==="nbins"&&!P.sizeFound&&!P.nbinsFound&&(s=l[0],P[z]=v(O))}}}}});var yxe=ye((Wlr,mxe)=>{"use strict";var Txt=TT().hoverPoints,Axt=ho().hoverLabelText;mxe.exports=function(t,r,n,i,a){var o=Txt(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"]=Axt(t[u+"a"],[s.ph0,s.ph1],l[u+"hoverformat"])}return o}}});var rG=ye((Xlr,_xe)=>{"use strict";_xe.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 bxe=ye((Zlr,xxe)=>{"use strict";xxe.exports={attributes:v8(),layoutAttributes:qI(),supplyDefaults:dxe(),crossTraceDefaults:g8(),supplyLayoutDefaults:wV(),calc:jV().calc,crossTraceCalc:Hb().crossTraceCalc,plot:i2().plot,layerName:"barlayer",style:N0().style,styleOnSelect:N0().styleOnSelect,colorbar:$d(),hoverPoints:yxe(),selectPoints:AT(),eventData:rG(),moduleType:"trace",name:"histogram",basePlotModule:vh(),categories:["bar-like","cartesian","svg","bar","histogram","oriented","errorBarsOK","showLegend"],meta:{}}});var Txe=ye((Ylr,wxe)=>{"use strict";wxe.exports=bxe()});var y8=ye((Klr,Sxe)=>{"use strict";var Vg=v8(),Axe=$V(),m8=ET(),Sxt=Vl(),iG=df().axisHoverFormat,Mxt=Qo().hovertemplateAttrs,Ext=Qo().texttemplateAttrs,Cxt=Tu(),M4=Ao().extendFlat;Sxe.exports=M4({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:Axe("x"),nbinsy:Vg.nbinsy,ybins:Axe("y"),autobinx:Vg.autobinx,autobiny:Vg.autobiny,bingroup:M4({},Vg.bingroup,{}),xbingroup:M4({},Vg.bingroup,{}),ybingroup:M4({},Vg.bingroup,{}),xgap:m8.xgap,ygap:m8.ygap,zsmooth:m8.zsmooth,xhoverformat:iG("x"),yhoverformat:iG("y"),zhoverformat:iG("z",1),hovertemplate:Mxt({},{keys:"z"}),texttemplate:Ext({arrayOk:!1,editType:"plot"},{keys:"z"}),textfont:m8.textfont,showlegend:M4({},Sxt.showlegend,{dflt:!1})},Cxt("",{cLetter:"z",autoColorDflt:!1}))});var nG=ye((Jlr,Exe)=>{"use strict";var kxt=qa(),Mxe=Dr();Exe.exports=function(t,r,n,i){var a=n("x"),o=n("y"),s=Mxe.minRowLength(a),l=Mxe.minRowLength(o);if(!s||!l){r.visible=!1;return}r._length=Math.min(s,l);var u=kxt.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 kxe=ye(($lr,Cxe)=>{"use strict";var Lxt=Dr(),Pxt=nG(),Ixt=qV(),Rxt=Jh(),Dxt=w4(),Fxt=y8();Cxe.exports=function(t,r,n,i){function a(o,s){return Lxt.coerce(t,r,Fxt,o,s)}Pxt(t,r,a,i),r.visible!==!1&&(Ixt(t,r,a,i),Rxt(t,r,i,a,{prefix:"",cLetter:"z"}),a("hovertemplate"),Dxt(a,i),a("xhoverformat"),a("yhoverformat"))}});var Ixe=ye((Qlr,Pxe)=>{"use strict";var zxt=d8(),Lxe=ho().hoverLabelText;Pxe.exports=function(t,r,n,i,a){var o=zxt(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=Lxe(t.xa,[h[0],h[1]],f.xhoverformat),t.yLabel=Lxe(t.ya,[d[0],d[1]],f.yhoverformat),o}}});var Dxe=ye((eur,Rxe)=>{"use strict";Rxe.exports={attributes:y8(),supplyDefaults:kxe(),crossTraceDefaults:g8(),calc:s8(),plot:c8(),layerName:"heatmaplayer",colorbar:M_(),style:f8(),hoverPoints:Ixe(),eventData:rG(),moduleType:"trace",name:"histogram2d",basePlotModule:vh(),categories:["cartesian","svg","2dMap","histogram","showLegend"],meta:{}}});var zxe=ye((tur,Fxe)=>{"use strict";Fxe.exports=Dxe()});var _8=ye((rur,Oxe)=>{"use strict";Oxe.exports={COMPARISON_OPS:["=","!=","<",">=",">","<="],COMPARISON_OPS2:["=","<",">=",">","<="],INTERVAL_OPS:["[]","()","[)","(]","][",")(","](",")["],SET_OPS:["{}","}{"],CONSTRAINT_REDUCTION:{"=":"=","<":"<","<=":"<",">":">",">=":">","[]":"[]","()":"[]","[)":"[]","(]":"[]","][":"][",")(":"][","](":"][",")[":"]["}}});var E4=ye((iur,Uxe)=>{"use strict";var ed=ET(),x8=pf(),Bxe=df(),aG=Bxe.axisHoverFormat,Oxt=Bxe.descriptionOnlyNumbers,qxt=Tu(),Bxt=Pd().dash,Nxt=ec(),IT=Ao().extendFlat,Nxe=_8(),Uxt=Nxe.COMPARISON_OPS2,Vxt=Nxe.INTERVAL_OPS,qxe=x8.line;Uxe.exports=IT({z:ed.z,x:ed.x,x0:ed.x0,dx:ed.dx,y:ed.y,y0:ed.y0,dy:ed.dy,xperiod:ed.xperiod,yperiod:ed.yperiod,xperiod0:x8.xperiod0,yperiod0:x8.yperiod0,xperiodalignment:ed.xperiodalignment,yperiodalignment:ed.yperiodalignment,text:ed.text,hovertext:ed.hovertext,transpose:ed.transpose,xtype:ed.xtype,ytype:ed.ytype,xhoverformat:aG("x"),yhoverformat:aG("y"),zhoverformat:aG("z",1),hovertemplate:ed.hovertemplate,texttemplate:IT({},ed.texttemplate,{}),textfont:IT({},ed.textfont,{}),hoverongaps:ed.hoverongaps,connectgaps:IT({},ed.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:Nxt({editType:"plot",colorEditType:"style"}),labelformat:{valType:"string",dflt:"",editType:"plot",description:Oxt("contour label")},operation:{valType:"enumerated",values:[].concat(Uxt).concat(Vxt),dflt:"=",editType:"calc"},value:{valType:"any",dflt:0,editType:"calc"},editType:"calc",impliedEdits:{autocontour:!1}},line:{color:IT({},qxe.color,{editType:"style+colorbars"}),width:{valType:"number",min:0,editType:"style+colorbars"},dash:Bxt,smoothing:IT({},qxe.smoothing,{}),editType:"plot"},zorder:x8.zorder},qxt("",{cLetter:"z",autoColorDflt:!1,editTypeOverride:"calc"}))});var sG=ye((nur,Gxe)=>{"use strict";var Gv=y8(),Oy=E4(),Gxt=Tu(),oG=df().axisHoverFormat,Vxe=Ao().extendFlat;Gxe.exports=Vxe({x:Gv.x,y:Gv.y,z:Gv.z,marker:Gv.marker,histnorm:Gv.histnorm,histfunc:Gv.histfunc,nbinsx:Gv.nbinsx,xbins:Gv.xbins,nbinsy:Gv.nbinsy,ybins:Gv.ybins,autobinx:Gv.autobinx,autobiny:Gv.autobiny,bingroup:Gv.bingroup,xbingroup:Gv.xbingroup,ybingroup:Gv.ybingroup,autocontour:Oy.autocontour,ncontours:Oy.ncontours,contours:Oy.contours,line:{color:Oy.line.color,width:Vxe({},Oy.line.width,{dflt:.5}),dash:Oy.line.dash,smoothing:Oy.line.smoothing,editType:"plot"},xhoverformat:oG("x"),yhoverformat:oG("y"),zhoverformat:oG("z",1),hovertemplate:Gv.hovertemplate,texttemplate:Oy.texttemplate,textfont:Oy.textfont},Gxt("",{cLetter:"z",editTypeOverride:"calc"}))});var b8=ye((aur,Hxe)=>{"use strict";Hxe.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 lG=ye((our,jxe)=>{"use strict";var Hxt=Dr();jxe.exports=function(t,r,n,i){i||(i={});var a=t("contours.showlabels");if(a){var o=r.font;Hxt.coerceFont(t,"contours.labelfont",o,{overrideDflt:{color:n}}),t("contours.labelformat")}i.hasHover!==!1&&t("zhoverformat")}});var w8=ye((sur,Wxe)=>{"use strict";var jxt=Jh(),Wxt=lG();Wxe.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,jxt(t,r,i,n,{prefix:"",cLetter:"z"})),n("line.smoothing"),Wxt(n,i,l,a)}});var Kxe=ye((lur,Yxe)=>{"use strict";var Xxe=Dr(),Xxt=nG(),Zxt=b8(),Yxt=w8(),Kxt=w4(),Zxe=sG();Yxe.exports=function(t,r,n,i){function a(s,l){return Xxe.coerce(t,r,Zxe,s,l)}function o(s){return Xxe.coerce2(t,r,Zxe,s)}Xxt(t,r,a,i),r.visible!==!1&&(Zxt(t,r,a,o),Yxt(t,r,a,i),a("xhoverformat"),a("yhoverformat"),a("hovertemplate"),r.contours&&r.contours.coloring==="heatmap"&&Kxt(a,i))}});var fG=ye((uur,$xe)=>{"use strict";var cG=ho(),uG=Dr();$xe.exports=function(t,r){var n=t.contours;if(t.autocontour){var i=t.zmin,a=t.zmax;(t.zauto||i===void 0)&&(i=uG.aggNums(Math.min,null,r)),(t.zauto||a===void 0)&&(a=uG.aggNums(Math.max,null,r));var o=Jxe(i,a,t.ncontours);n.size=o.dtick,n.start=cG.tickFirst(o),o.range.reverse(),n.end=cG.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={}),uG.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=Jxe(s,l,t.ncontours).dtick,u.size=n.size=c}}};function Jxe(e,t,r){var n={type:"linear",range:[e,t]};return cG.autoTicks(n,(t-e)/(r||15)),n}});var C4=ye((cur,Qxe)=>{"use strict";Qxe.exports=function(t){return t.end+t.size/1e6}});var hG=ye((fur,tbe)=>{"use strict";var ebe=tc(),Jxt=s8(),$xt=fG(),Qxt=C4();tbe.exports=function(t,r){var n=Jxt(t,r),i=n[0].z;$xt(r,i);var a=r.contours,o=ebe.extractOpts(r),s;if(a.coloring==="heatmap"&&o.auto&&r.autocontour===!1){var l=a.start,u=Qxt(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 ebe.calc(t,r,{vals:s,cLetter:"z"}),n}});var k4=ye((hur,rbe)=>{"use strict";rbe.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 dG=ye((dur,ibe)=>{"use strict";var T8=k4();ibe.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(T8.BOTTOMSTART)),s===n-2&&(u=u.concat(T8.TOPSTART)),o=0;o<i-1;o++)for(l=u.slice(),o===0&&(l=l.concat(T8.LEFTSTART)),o===i-2&&(l=l.concat(T8.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=ebt(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 ebt(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 vG=ye((vur,obe)=>{"use strict";var A8=Dr(),RT=k4();obe.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],nbe(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),nbe(s,a,void 0,r,n);i===1e4&&A8.log("Infinite loop in contour?")}};function L4(e,t,r,n){return Math.abs(e[0]-t[0])<r&&Math.abs(e[1]-t[1])<n}function tbt(e,t){var r=e[2]-t[2],n=e[3]-t[3];return Math.sqrt(r*r+n*n)}function nbe(e,t,r,n,i){var a=t.join(","),o=e.crossings[a],s=rbt(o,r,t),l=[abe(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){A8.log("Found bad marching index:",o,t,e.level);break}l.push(abe(e,t,s)),t[0]+=s[0],t[1]+=s[1],a=t.join(","),L4(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&&A8.log("Infinite loop in contour?");var b=L4(l[0],l[l.length-1],n,i),p=0,C=.2*e.smoothing,E=[],A=0,L,_,k,M,g,P,T,z,O,V,G;for(d=1;d<l.length;d++)T=tbt(l[d],l[d-1]),p+=T,E.push(T);var Z=p/E.length*C;function H(re){return l[re%l.length]}for(d=l.length-2;d>=A;d--)if(L=E[d],L<Z){for(k=0,_=d-1;_>=A&&L+E[_]<Z;_--)L+=E[_];if(b&&d===l.length-2)for(k=0;k<_&&L+E[k]<Z;k++)L+=E[k];g=d-_+k+1,P=Math.floor((d+_+k+2)/2),!b&&d===l.length-2?M=l[l.length-1]:!b&&_===-1?M=l[0]:g%2?M=H(P):M=[(H(P)[0]+H(P+1)[0])/2,(H(P)[1]+H(P+1)[1])/2],l.splice(_+1,d-_+1,M),d=_+1,k&&(A=k),b&&(d===l.length-2?l[k]=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||A8.log("Unclosed interior contour?",e.level,f.join(","),l.join("L"));var N=!1;for(z=0;z<e.edgepaths.length;z++)if(V=e.edgepaths[z],!N&&L4(V[0],l[l.length-1],n,i)){l.pop(),N=!0;var j=!1;for(O=0;O<e.edgepaths.length;O++)if(G=e.edgepaths[O],L4(G[G.length-1],l[0],n,i)){j=!0,l.shift(),e.edgepaths.splice(z,1),O===z?e.paths.push(l.concat(G)):(O>z&&O--,e.edgepaths[O]=G.concat(l,V));break}j||(e.edgepaths[z]=l.concat(V))}for(z=0;z<e.edgepaths.length&&!N;z++)V=e.edgepaths[z],L4(V[V.length-1],l[0],n,i)&&(l.shift(),e.edgepaths[z]=V.concat(l),N=!0);N||e.edgepaths.push(l)}}function rbt(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 abe(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 cbe=ye((pur,ube)=>{"use strict";var pG=_8(),ibt=Eo();ube.exports={"[]":sbe("[]"),"][":sbe("]["),">":gG(">"),"<":gG("<"),"=":gG("=")};function lbe(e,t){var r=Array.isArray(t),n;function i(a){return ibt(a)?+a:null}return pG.COMPARISON_OPS2.indexOf(e)!==-1?n=i(r?t[0]:t):pG.INTERVAL_OPS.indexOf(e)!==-1?n=r?[i(t[0]),i(t[1])]:[i(t),i(t)]:pG.SET_OPS.indexOf(e)!==-1&&(n=r?t.map(i):[i(t)]),n}function sbe(e){return function(t){t=lbe(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 gG(e){return function(t){return t=lbe(e,t),{start:t,end:1/0,size:1/0}}}});var mG=ye((gur,hbe)=>{"use strict";var fbe=Dr(),nbt=cbe(),abt=C4();hbe.exports=function(t,r,n){for(var i=t.type==="constraint"?nbt[t._operation](t.value):t,a=i.size,o=[],s=abt(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(fbe.extendFlat({level:c,crossings:{},starts:[],edgepaths:[],paths:[],z:n.z,smoothing:n.trace.line.smoothing},u)),o.length>1e3){fbe.warn("Too many contours, clipping at 1000",t);break}return o}});var yG=ye((mur,vbe)=>{"use strict";var DT=Dr();vbe.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=dbe(e[0]),i=dbe(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 dbe(e){return DT.extendFlat({},e,{edgepaths:DT.extendDeep([],e.edgepaths),paths:DT.extendDeep([],e.paths),starts:DT.extendDeep([],e.starts)})}});var _G=ye((yur,pbe)=>{"use strict";pbe.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 S8=ye(Hv=>{"use strict";var I4=Oa(),zd=Dr(),qy=So(),obt=tc(),ybe=iu(),gbe=ho(),mbe=ym(),sbt=c8(),_be=dG(),xbe=vG(),lbt=mG(),ubt=yG(),bbe=_G(),P4=k4(),Rm=P4.LABELOPTIMIZER;Hv.plot=function(t,r,n,i){var a=r.xaxis,o=r.yaxis;zd.makeTraceGroups(i,n,"contour").each(function(s){var l=I4.select(this),u=s[0],c=u.trace,f=u.x,h=u.y,d=c.contours,v=lbt(d,r,u),x=zd.ensureSingle(l,"g","heatmapcoloring"),b=[];d.coloring==="heatmap"&&(b=[s]),sbt(t,r,b,x),_be(v),xbe(v);var p=a.c2p(f[0],!0),C=a.c2p(f[f.length-1],!0),E=o.c2p(h[0],!0),A=o.c2p(h[h.length-1],!0),L=[[p,A],[C,A],[C,E],[p,E]],_=v;d.type==="constraint"&&(_=ubt(v,d._operation)),cbt(l,L,d),fbt(l,_,L,d),hbt(l,v,t,u,d),vbt(l,r,t,u,L)})};function cbt(e,t,r){var n=zd.ensureSingle(e,"g","contourbg"),i=n.selectAll("path").data(r.coloring==="fill"?[0]:[]);i.enter().append("path"),i.exit().remove(),i.attr("d","M"+t.join("L")+"Z").style("stroke","none")}function fbt(e,t,r,n){var i=n.coloring==="fill"||n.type==="constraint"&&n._operation!=="=",a="M"+r.join("L")+"Z";i&&bbe(t,n);var o=zd.ensureSingle(e,"g","contourfill"),s=o.selectAll("path").data(i?t:[]);s.enter().append("path"),s.exit().remove(),s.each(function(l){var u=(l.prefixBoundary?a:"")+wbe(l,r);u?I4.select(this).attr("d",u).style("stroke","none"):I4.select(this).remove()})}function wbe(e,t){var r="",n=0,i=e.edgepaths.map(function(p,C){return C}),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=qy.smoothopen(e.edgepaths[n],e.smoothing),r+=a?f:f.replace(/^M/,"L"),i.splice(i.indexOf(n),1),o=e.edgepaths[n][e.edgepaths[n].length-1],u=-1,l=0;l<4;l++){if(!o){zd.log("Missing end?",n,e);break}for(h(o)&&!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):zd.log("endpt to newendpt is not vert. or horz.",o,s,b)}if(o=s,u>=0)break;r+="L"+s}if(u===e.edgepaths.length){zd.log("unclosed perimeter path");break}n=u,a=i.indexOf(n)===-1,a&&(n=i[0],r+="Z")}for(n=0;n<e.paths.length;n++)r+=qy.smoothclosed(e.paths[n],e.smoothing);return r}function hbt(e,t,r,n,i){var a=r._context.staticPlot,o=zd.ensureSingle(e,"g","contourlines"),s=i.showlines!==!1,l=i.showlabels,u=s&&l,c=Hv.createLines(o,s||l,t,a),f=Hv.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=[];zd.clearLocationCache();var x=Hv.labelFormatter(r,n),b=qy.tester.append("text").attr("data-notex",1).call(qy.font,i.labelfont),p=t[0].xaxis,C=t[0].yaxis,E=p._length,A=C._length,L=p.range,_=C.range,k=zd.aggNums(Math.min,null,n.x),M=zd.aggNums(Math.max,null,n.x),g=zd.aggNums(Math.min,null,n.y),P=zd.aggNums(Math.max,null,n.y),T=Math.max(p.c2p(k,!0),0),z=Math.min(p.c2p(M,!0),E),O=Math.max(C.c2p(P,!0),0),V=Math.min(C.c2p(g,!0),A),G={};L[0]<L[1]?(G.left=T,G.right=z):(G.left=z,G.right=T),_[0]<_[1]?(G.top=O,G.bottom=V):(G.top=V,G.bottom=O),G.middle=(G.top+G.bottom)/2,G.center=(G.left+G.right)/2,d.push([[G.left,G.top],[G.right,G.top],[G.right,G.bottom],[G.left,G.bottom]]);var Z=Math.sqrt(E*E+A*A),H=P4.LABELDISTANCE*Z/Math.max(1,t.length/P4.LABELINCREASE);c.each(function(N){var j=Hv.calcTextOpts(N.level,x,b,r);I4.select(this).selectAll("path").each(function(){var re=this,oe=zd.getVisibleSegment(re,G,j.height/2);if(oe&&!(oe.len<(j.width+j.height)*P4.LABELMIN))for(var _e=Math.min(Math.ceil(oe.len/H),P4.LABELMAX),Me=0;Me<_e;Me++){var ke=Hv.findBestTextLocation(re,oe,j,v,G);if(!ke)break;Hv.addLabelData(ke,j,v,d)}})}),b.remove(),Hv.drawLabels(h,v,r,f,u?d:null)}l&&!s&&c.remove()}Hv.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 qy.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 qy.smoothclosed(l,i)}).style("stroke-miterlimit",1).style("vector-effect",n?"none":"non-scaling-stroke")}return a};Hv.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),qy.setClipUrl(e,a,r),o};Hv.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,mbe(a,r);else{var o=obt.extractOpts(n);if(o&&o.colorbar&&o.colorbar._axis)a=o.colorbar._axis;else{if(i.type==="constraint"){var s=i.value;zd.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),mbe(a,r),gbe.prepTicks(a),a._tmin=null,a._tmax=null}}return function(l){return gbe.tickText(a,l).text}};Hv.calcTextOpts=function(e,t,r,n){var i=t(e);r.text(i).call(ybe.convertToTspans,n);var a=r.node(),o=qy.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}};Hv.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=zd.getTextLocation(e,t.total,d,a),x=dbt(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 dbt(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,C=0;C<r.length;C++){var E=r[C],A=Math.cos(E.theta)*E.width/2,L=Math.sin(E.theta)*E.width/2,_=zd.segmentDistance(v,x,b,p,E.x-A,E.y-L,E.x+A,E.y+L)*2/(t.height+E.height),k=E.level===t.level,M=k?Rm.SAMELEVELDISTANCE:1;if(_<=M)return 1/0;var g=Rm.NEIGHBORCOST*(k?Rm.SAMELEVELFACTOR:1);d+=g/(_-M)}return d}Hv.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)};Hv.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;I4.select(this).text(u.text).attr({x:c,y:f,transform:"rotate("+180*u.theta/Math.PI+" "+c+" "+f+")"}).call(ybe.convertToTspans,r)}),i){for(var o="",s=0;s<i.length;s++)o+="M"+i[s].join("L")+"Z";var l=zd.ensureSingle(n,"path","");l.attr("d",o)}};function vbt(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:pbt(n),smoothing:0};_be([u]),xbe([u]),bbe([u],{type:"levels"});var c=zd.ensureSingle(l,"path","");c.attr("d",(u.prefixBoundary?"M"+i.join("L")+"Z":"")+wbe(u,i))}else s=null;qy.setClipUrl(e,s,r)}function pbt(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 bG=ye((xur,Tbe)=>{"use strict";var gbt=Oa(),xG=tc(),mbt=C4();Tbe.exports=function(t){var r=t.contours,n=r.start,i=mbt(r),a=r.size||1,o=Math.floor((i-n)/a)+1,s=r.coloring==="lines"?0:1,l=xG.extractOpts(t);isFinite(a)||(a=1,o=1);var u=l.reversescale?xG.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=gbt.extent([x,b,r.start,r.start+a*(o-1)]),C=p[x<b?0:1],E=p[x<b?1:0];C!==x&&(f.splice(0,0,C),h.splice(0,0,h[0])),E!==b&&(f.push(E),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 xG.makeColorScaleFunc({domain:f,range:h},{noNumericCheck:!0})}});var E8=ye((bur,Sbe)=>{"use strict";var M8=Oa(),Abe=So(),ybt=f8(),_bt=bG();Sbe.exports=function(t){var r=M8.select(t).selectAll("g.contour");r.style("opacity",function(n){return n[0].trace.opacity}),r.each(function(n){var i=M8.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?_bt(a):null;i.selectAll("g.contourlevel").each(function(b){M8.select(this).selectAll("path").call(Abe.lineGroupStyle,s.width,f?d(b.level):s.color,s.dash)});var v=o.labelfont;if(i.selectAll("g.contourlabels text").each(function(b){Abe.font(M8.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))}}),ybt(t)}});var C8=ye((wur,Ebe)=>{"use strict";var Mbe=tc(),xbt=bG(),bbt=C4();function wbt(e,t,r){var n=t.contours,i=t.line,a=n.size||1,o=n.coloring,s=xbt(t,{isColorbar:!0});if(o==="heatmap"){var l=Mbe.extractOpts(t);r._fillgradient=l.reversescale?Mbe.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:bbt(n),size:a}}Ebe.exports={min:"zmin",max:"zmax",calc:wbt}});var wG=ye((Tur,Cbe)=>{"use strict";var k8=Ca(),Tbt=d8();Cbe.exports=function(t,r,n,i,a){a||(a={}),a.isContour=!0;var o=Tbt(t,r,n,i,a);return o&&o.forEach(function(s){var l=s.trace;l.contours.type==="constraint"&&(l.fillcolor&&k8.opacity(l.fillcolor)?s.color=k8.addOpacity(l.fillcolor,1):l.contours.showlines&&k8.opacity(l.line.color)&&(s.color=k8.addOpacity(l.line.color,1)))}),o}});var Lbe=ye((Aur,kbe)=>{"use strict";kbe.exports={attributes:sG(),supplyDefaults:Kxe(),crossTraceDefaults:g8(),calc:hG(),plot:S8().plot,layerName:"contourlayer",style:E8(),colorbar:C8(),hoverPoints:wG(),moduleType:"trace",name:"histogram2dcontour",basePlotModule:vh(),categories:["cartesian","svg","2dMap","contour","histogram","showLegend"],meta:{}}});var Ibe=ye((Sur,Pbe)=>{"use strict";Pbe.exports=Lbe()});var TG=ye((Mur,qbe)=>{"use strict";var Rbe=Eo(),Abt=lG(),zbe=Ca(),Dbe=zbe.addOpacity,Sbt=zbe.opacity,Obe=_8(),Fbe=Dr().isArrayOrTypedArray,Mbt=Obe.CONSTRAINT_REDUCTION,Ebt=Obe.COMPARISON_OPS2;qbe.exports=function(t,r,n,i,a,o){var s=r.contours,l,u,c,f=n("contours.operation");if(s._operation=Mbt[f],Cbt(n,s),f==="="?l=s.showlines=!0:(l=n("contours.showlines"),c=n("fillcolor",Dbe((t.line||{}).color||a,.5))),l){var h=c&&Sbt(c)?Dbe(r.fillcolor,1):a;u=n("line.color",h),n("line.width",2),n("line.dash")}n("line.smoothing"),Abt(n,i,u,o)};function Cbt(e,t){var r;Ebt.indexOf(t.operation)===-1?(e("contours.value",[0,1]),Fbe(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])]:Rbe(t.value)&&(r=parseFloat(t.value),t.value=[r,r+1])):(e("contours.value",0),Rbe(t.value)||(Fbe(t.value)?t.value=parseFloat(t.value[0]):t.value=0))}});var Ube=ye((Eur,Nbe)=>{"use strict";var AG=Dr(),kbt=JI(),Lbt=Pg(),Pbt=TG(),Ibt=b8(),Rbt=w8(),Dbt=w4(),Bbe=E4();Nbe.exports=function(t,r,n,i){function a(u,c){return AG.coerce(t,r,Bbe,u,c)}function o(u){return AG.coerce2(t,r,Bbe,u)}var s=kbt(t,r,a,i);if(!s){r.visible=!1;return}Lbt(t,r,i,a),a("xhoverformat"),a("yhoverformat"),a("text"),a("hovertext"),a("hoverongaps"),a("hovertemplate");var l=a("contours.type")==="constraint";a("connectgaps",AG.isArray1D(r.z)),l?Pbt(t,r,a,i,n):(Ibt(t,r,a,o),Rbt(t,r,a,i)),r.contours&&r.contours.coloring==="heatmap"&&Dbt(a,i),a("zorder")}});var Gbe=ye((Cur,Vbe)=>{"use strict";Vbe.exports={attributes:E4(),supplyDefaults:Ube(),calc:hG(),plot:S8().plot,style:E8(),colorbar:C8(),hoverPoints:wG(),moduleType:"trace",name:"contour",basePlotModule:vh(),categories:["cartesian","svg","2dMap","contour","showLegend"],meta:{}}});var jbe=ye((kur,Hbe)=>{"use strict";Hbe.exports=Gbe()});var SG=ye((Lur,Xbe)=>{"use strict";var Fbt=Qo().hovertemplateAttrs,zbt=Qo().texttemplateAttrs,Obt=Eg(),a0=pf(),qbt=Vl(),Wbe=Tu(),Bbt=Pd().dash,E_=Ao().extendFlat,j0=a0.marker,R4=a0.line,Nbt=j0.line;Xbe.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:zbt({editType:"plot"},{keys:["a","b","c","text"]}),hovertext:E_({},a0.hovertext,{}),line:{color:R4.color,width:R4.width,dash:Bbt,backoff:R4.backoff,shape:E_({},R4.shape,{values:["linear","spline"]}),smoothing:R4.smoothing,editType:"calc"},connectgaps:a0.connectgaps,cliponaxis:a0.cliponaxis,fill:E_({},a0.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:Obt(),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:Nbt.width,editType:"calc"},Wbe("marker.line")),gradient:j0.gradient,editType:"calc"},Wbe("marker")),textfont:a0.textfont,textposition:a0.textposition,selected:a0.selected,unselected:a0.unselected,hoverinfo:E_({},qbt.hoverinfo,{flags:["a","b","c","text","name"]}),hoveron:a0.hoveron,hovertemplate:Fbt()}});var Jbe=ye((Pur,Kbe)=>{"use strict";var Zbe=Dr(),Ubt=Sm(),FT=Ru(),Vbt=$p(),Gbt=R0(),Ybe=J3(),Hbt=D0(),jbt=Ig(),Wbt=SG();Kbe.exports=function(t,r,n,i){function a(h,d){return Zbe.coerce(t,r,Wbt,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<Ubt.PTS_LINESONLY?"lines+markers":"lines";a("mode",c),FT.hasMarkers(r)&&Vbt(t,r,n,i,a,{gradient:!0}),FT.hasLines(r)&&(Gbt(t,r,n,i,a,{backoff:!0}),Ybe(t,r,a),a("connectgaps")),FT.hasText(r)&&(a("texttemplate"),Hbt(t,r,i,a));var f=[];(FT.hasMarkers(r)||FT.hasText(r))&&(a("cliponaxis"),a("marker.maxdisplayed"),f.push("points")),a("fill"),r.fill!=="none"&&(jbt(t,r,n,a),FT.hasLines(r)||Ybe(t,r,a)),(r.fill==="tonext"||r.fill==="toself")&&f.push("fills"),a("hoveron",f.join("+")||"points"),Zbe.coerceSelectionMarkerOpacity(r,a)}});var Qbe=ye((Iur,$be)=>{"use strict";var MG=ho();$be.exports=function(t,r,n){var i={},a=n[r.subplot]._subplot;return i.aLabel=MG.tickText(a.aaxis,t.a,!0).text,i.bLabel=MG.tickText(a.baxis,t.b,!0).text,i.cLabel=MG.tickText(a.caxis,t.c,!0).text,i}});var i2e=ye((Rur,r2e)=>{"use strict";var EG=Eo(),Xbt=F0(),Zbt=Cm(),Ybt=z0(),Kbt=O0().calcMarkerSize,e2e=["a","b","c"],t2e={a:["b","c"],b:["a","c"],c:["a","b"]};r2e.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<e2e.length;l++)if(c=e2e[l],!o[c]){for(h=o[t2e[c][0]],d=o[t2e[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,C,E,A,L;for(l=0;l<v;l++)b=o.a[l],p=o.b[l],C=o.c[l],EG(b)&&EG(p)&&EG(C)?(b=+b,p=+p,C=+C,E=i/(b+p+C),E!==1&&(b*=E,p*=E,C*=E),L=b,A=C-p,x[l]={x:A,y:L,a:b,b:p,c:C},s&&(x[l].id=s[l])):x[l]={x:!1,y:!1};return Kbt(r,v),Xbt(t,r),Zbt(x,r),Ybt(x,r),x}});var a2e=ye((Dur,n2e)=>{"use strict";var Jbt=iT();n2e.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)}Jbt(t,s,n,l)}});var s2e=ye((Fur,o2e)=>{"use strict";var $bt=sT();o2e.exports=function(t,r,n,i){var a=$bt(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 C(A,L){p.push(A._hovertitle+": "+L)}if(!h.hovertemplate){var E=b.split("+");E.indexOf("all")!==-1&&(E=["a","b","c"]),E.indexOf("a")!==-1&&C(d.aaxis,o.aLabel),E.indexOf("b")!==-1&&C(d.baxis,o.bLabel),E.indexOf("c")!==-1&&C(d.caxis,o.cLabel)}return o.extraText=p.join("<br>"),o.hovertemplate=h.hovertemplate,a}});var u2e=ye((zur,l2e)=>{"use strict";l2e.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 x2e=ye((Our,_2e)=>{"use strict";var p2e=Oa(),Qbt=cd(),CG=qa(),By=Dr(),Dm=By.strTranslate,L8=By._,OT=Ca(),P8=So(),D4=ym(),kG=Ao().extendFlat,e2t=Mc(),C_=ho(),c2e=gv(),f2e=vf(),g2e=Sg(),h2e=g2e.freeMode,t2t=g2e.rectMode,LG=Mb(),r2t=zf().prepSelect,i2t=zf().selectOnClick,n2t=zf().clearOutline,a2t=zf().clearSelectionsCache,m2e=hd();function y2e(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}_2e.exports=y2e;var Fm=y2e.prototype;Fm.init=function(e){this.container=e._ternarylayer,this.defs=e._defs,this.layoutId=e._uid,this.traceHash={},this.layers={}};Fm.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),e2t.generalUpdatePerTraceModule(r.graphDiv,r,e,n),r.layers.plotbg.select("path").call(OT.fill,n.bgcolor)};Fm.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),P8.setClipUrl(t.layers.backplot,i,r),P8.setClipUrl(t.layers.grids,i,r)};Fm.updateFx=function(e){e._ternarylayer.selectAll("g.toplevel").style("cursor",e.dragmode==="pan"?"move":"crosshair")};Fm.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=p2e.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 zT=Math.sqrt(4/3);Fm.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,C,E;l>zT*u?(p=u,b=p*zT):(b=l,p=b/zT),C=o*b/l,E=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-C/2,i+C/2],_id:"x"},D4(r.xaxis,r.graphDiv._fullLayout),r.xaxis.setScale(),r.xaxis.isPtWithinRange=function(V){return V.a>=r.aaxis.range[0]&&V.a<=r.aaxis.range[1]&&V.b>=r.baxis.range[1]&&V.b<=r.baxis.range[0]&&V.c>=r.caxis.range[1]&&V.c<=r.caxis.range[0]},r.yaxis={type:"linear",range:[f,c-h-d],domain:[a-E/2,a+E/2],_id:"y"},D4(r.yaxis,r.graphDiv._fullLayout),r.yaxis.setScale(),r.yaxis.isPtWithinRange=function(){return!0};var A=r.yaxis.domain[0],L=r.aaxis=kG({},e.aaxis,{range:[f,c-h-d],side:"left",tickangle:(+e.aaxis.tickangle||0)-30,domain:[A,A+E*zT],anchor:"free",position:0,_id:"y",_length:b});D4(L,r.graphDiv._fullLayout),L.setScale();var _=r.baxis=kG({},e.baxis,{range:[c-f-d,h],side:"bottom",domain:r.xaxis.domain,anchor:"free",position:0,_id:"x",_length:b});D4(_,r.graphDiv._fullLayout),_.setScale();var k=r.caxis=kG({},e.caxis,{range:[c-f-h,d],side:"right",tickangle:(+e.caxis.tickangle||0)+30,domain:[A,A+E*zT],anchor:"free",position:0,_id:"y",_length:b});D4(k,r.graphDiv._fullLayout),k.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 z=Dm(v+b/2,x)+"rotate(30)"+Dm(0,-L._offset);r.layers.aaxis.attr("transform",z),r.layers.agrid.attr("transform",z);var O=Dm(v+b/2,x)+"rotate(-30)"+Dm(0,-k._offset);r.layers.caxis.attr("transform",O),r.layers.cgrid.attr("transform",O),r.drawAxes(!0),r.layers.aline.select("path").attr("d",L.showline?"M"+v+","+(x+p)+"l"+b/2+",-"+p:"M0,0").call(OT.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(OT.stroke,_.linecolor||"#000").style("stroke-width",(_.linewidth||0)+"px"),r.layers.cline.select("path").attr("d",k.showline?"M"+(v+b/2)+","+x+"l"+b/2+","+p:"M0,0").call(OT.stroke,k.linecolor||"#000").style("stroke-width",(k.linewidth||0)+"px"),r.graphDiv._context.staticPlot||r.initInteractions(),P8.setClipUrl(r.layers.frontplot,r._hasClipOnAxisFalse?null:r.clipId,r.graphDiv)};Fm.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"]=LG.draw(r,"a"+n,{propContainer:a,propName:t.id+".aaxis.title",placeholder:L8(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"]=LG.draw(r,"b"+n,{propContainer:o,propName:t.id+".baxis.title",placeholder:L8(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"]=LG.draw(r,"c"+n,{propContainer:s,propName:t.id+".caxis.title",placeholder:L8(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"}})}};Fm.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=o2t(e);t[l]!==u&&(o.selectAll("."+a+"tick").remove(),t[l]=u),e.setScale();var c=C_.calcTicks(e),f=C_.clipEnds(e,c),h=C_.makeTransTickFn(e),d=C_.getTickSigns(e)[2],v=By.deg2rad(s),x=d*(e.linewidth||1)/2,b=d*e.ticklen,p=t.w,C=t.h,E=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"+C+",-"+p/2,b:"M0,0l-"+p/2+",-"+C,c:"M0,0l-"+C+","+p/2}[i];C_.drawTicks(r,e,{vals:e.ticks==="inside"?f:c,layer:o,path:E,transFn:h,crisp:!1}),C_.drawGrid(r,e,{vals:f,layer:t.layers[i+"grid"],path:A,transFn:h,crisp:!1}),C_.drawLabels(r,e,{vals:c,layer:o,transFn:h,labelFns:C_.makeLabelFns(e,0,s)})};function o2t(e){return e.ticks+String(e.ticklen)+String(e.showticklabels)}var yd=m2e.MINZOOM/2+.87,s2t="m-0.87,.5h"+yd+"v3h-"+(yd+5.2)+"l"+(yd/2+2.6)+",-"+(yd*.87+4.5)+"l2.6,1.5l-"+yd/2+","+yd*.87+"Z",l2t="m0.87,.5h-"+yd+"v3h"+(yd+5.2)+"l-"+(yd/2+2.6)+",-"+(yd*.87+4.5)+"l-2.6,1.5l"+yd/2+","+yd*.87+"Z",u2t="m0,1l"+yd/2+","+yd*.87+"l2.6,-1.5l-"+(yd/2+2.6)+",-"+(yd*.87+4.5)+"l-"+(yd/2+2.6)+","+(yd*.87+4.5)+"l2.6,1.5l"+yd/2+",-"+yd*.87+"Z",c2t="m0.5,0.5h5v-2h-5v-5h-2v5h-5v2h5v5h2Z",d2e=!0;Fm.clearOutline=function(){a2t(this.dragOptions),n2t(this.dragOptions.gd)};Fm.initInteractions=function(){var e=this,t=e.layers.plotbg.select("path").node(),r=e.graphDiv,n=r._fullLayout._zoomlayer,i,a;this.dragOptions={element:t,gd:r,plotinfo:{id:e.id,domain:r._fullLayout[e.id].domain,xaxis:e.xaxis,yaxis:e.yaxis},subplot:e.id,prepFn:function(T,z,O){e.dragOptions.xaxes=[e.xaxis],e.dragOptions.yaxes=[e.yaxis],i=r._fullLayout._invScaleX,a=r._fullLayout._invScaleY;var V=e.dragOptions.dragmode=r._fullLayout.dragmode;h2e(V)?e.dragOptions.minDrag=1:e.dragOptions.minDrag=void 0,V==="zoom"?(e.dragOptions.moveFn=_,e.dragOptions.clickFn=p,e.dragOptions.doneFn=k,C(T,z,O)):V==="pan"?(e.dragOptions.moveFn=g,e.dragOptions.clickFn=p,e.dragOptions.doneFn=P,M(),e.clearOutline(r)):(t2t(V)||h2e(V))&&r2t(T,z,O,e.dragOptions,V)}};var o,s,l,u,c,f,h,d,v,x;function b(T){var z={};return z[e.id+".aaxis.min"]=T.a,z[e.id+".baxis.min"]=T.b,z[e.id+".caxis.min"]=T.c,z}function p(T,z){var O=r._fullLayout.clickmode;v2e(r),T===2&&(r.emit("plotly_doubleclick",null),CG.call("_guiRelayout",r,b({a:0,b:0,c:0}))),O.indexOf("select")>-1&&T===1&&i2t(z,r,[e.xaxis],[e.yaxis],e.id,e.dragOptions),O.indexOf("event")>-1&&f2e.click(r,z,e.id)}function C(T,z,O){var V=t.getBoundingClientRect();o=z-V.left,s=O-V.top,r._fullLayout._calcInverseTransform(r);var G=r._fullLayout._invTransform,Z=By.apply3DTransform(G)(o,s);o=Z[0],s=Z[1],l={a:e.aaxis.range[0],b:e.baxis.range[1],c:e.caxis.range[1]},c=l,u=e.aaxis.range[1]-l.a,f=Qbt(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:OT.background,stroke:OT.defaultLine,"stroke-width":1,opacity:0}).attr("d","M0,0Z"),e.clearOutline(r)}function E(T,z){return 1-z/e.h}function A(T,z){return 1-(T+(e.h-z)/Math.sqrt(3))/e.w}function L(T,z){return(T-(e.h-z)/Math.sqrt(3))/e.w}function _(T,z){var O=o+T*i,V=s+z*a,G=Math.max(0,Math.min(1,E(o,s),E(O,V))),Z=Math.max(0,Math.min(1,A(o,s),A(O,V))),H=Math.max(0,Math.min(1,L(o,s),L(O,V))),N=(G/2+H)*e.w,j=(1-G/2-Z)*e.w,re=(N+j)/2,oe=j-N,_e=(1-G)*e.h,Me=_e-oe/zT;oe<m2e.MINZOOM?(c=l,v.attr("d",h),x.attr("d","M0,0Z")):(c={a:l.a+G*u,b:l.b+Z*u,c:l.c+H*u},v.attr("d",h+"M"+N+","+_e+"H"+j+"L"+re+","+Me+"L"+N+","+_e+"Z"),x.attr("d","M"+o+","+s+c2t+"M"+N+","+_e+s2t+"M"+j+","+_e+l2t+"M"+re+","+Me+u2t)),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 k(){v2e(r),c!==l&&(CG.call("_guiRelayout",r,b(c)),d2e&&r.data&&r._context.showTips&&(By.notifier(L8(r,"Double-click to zoom back out"),"long"),d2e=!1))}function M(){l={a:e.aaxis.range[0],b:e.baxis.range[1],c:e.caxis.range[1]},c=l}function g(T,z){var O=T/e.xaxis._m,V=z/e.yaxis._m;c={a:l.a-V,b:l.b+(O+V)/2,c:l.c-(O-V)/2};var G=[c.a,c.b,c.c].sort(By.sorterAsc),Z={a:G.indexOf(c.a),b:G.indexOf(c.b),c:G.indexOf(c.c)};G[0]<0&&(G[1]+G[0]/2<0?(G[2]+=G[0]+G[1],G[0]=G[1]=0):(G[2]+=G[0]/2,G[1]+=G[0]/2,G[0]=0),c={a:G[Z.a],b:G[Z.b],c:G[Z.c]},z=(l.a-c.a)*e.yaxis._m,T=(l.c-c.c-l.b+c.b)*e.xaxis._m);var H=Dm(e.x0+T,e.y0+z);e.plotContainer.selectAll(".scatterlayer,.maplayer").attr("transform",H);var N=Dm(-T,-z);e.clipDefRelative.select("path").attr("transform",N),e.aaxis.range=[c.a,e.sum-c.b-c.c],e.baxis.range=[e.sum-c.a-c.c,c.b],e.caxis.range=[e.sum-c.a-c.b,c.c],e.drawAxes(!1),e._hasClipOnAxisFalse&&e.plotContainer.select(".scatterlayer").selectAll(".trace").call(P8.hideOutsideRangePoints,e),r.emit("plotly_relayouting",b(c))}function P(){CG.call("_guiRelayout",r,b(c))}t.onmousemove=function(T){f2e.hover(r,T,e.id),r._fullLayout._lasthover=t,r._fullLayout._hoversubplot=e.id},t.onmouseout=function(T){r._dragging||c2e.unhover(r,T)},c2e.init(this.dragOptions)};function v2e(e){p2e.select(e).selectAll(".zoombox,.js-zoombox-backdrop,.js-zoombox-menu,.zoombox-corners").remove()}});var RG=ye((qur,b2e)=>{"use strict";var f2t=Eh(),h2t=kc().attributes,lu=Rd(),d2t=mc().overrideAll,PG=Ao().extendFlat,IG={title:{text:lu.title.text,font:lu.title.font},color:lu.color,tickmode:lu.minor.tickmode,nticks:PG({},lu.nticks,{dflt:6,min:1}),tick0:lu.tick0,dtick:lu.dtick,tickvals:lu.tickvals,ticktext:lu.ticktext,ticks:lu.ticks,ticklen:lu.ticklen,tickwidth:lu.tickwidth,tickcolor:lu.tickcolor,ticklabelstep:lu.ticklabelstep,showticklabels:lu.showticklabels,labelalias:lu.labelalias,showtickprefix:lu.showtickprefix,tickprefix:lu.tickprefix,showticksuffix:lu.showticksuffix,ticksuffix:lu.ticksuffix,showexponent:lu.showexponent,exponentformat:lu.exponentformat,minexponent:lu.minexponent,separatethousands:lu.separatethousands,tickfont:lu.tickfont,tickangle:lu.tickangle,tickformat:lu.tickformat,tickformatstops:lu.tickformatstops,hoverformat:lu.hoverformat,showline:PG({},lu.showline,{dflt:!0}),linecolor:lu.linecolor,linewidth:lu.linewidth,showgrid:PG({},lu.showgrid,{dflt:!0}),gridcolor:lu.gridcolor,gridwidth:lu.gridwidth,griddash:lu.griddash,layer:lu.layer,min:{valType:"number",dflt:0,min:0}},I8=b2e.exports=d2t({domain:h2t({name:"ternary"}),bgcolor:{valType:"color",dflt:f2t.background},sum:{valType:"number",dflt:1,min:0},aaxis:IG,baxis:IG,caxis:IG},"plot","from-root");I8.uirevision={valType:"any",editType:"none"};I8.aaxis.uirevision=I8.baxis.uirevision=I8.caxis.uirevision={valType:"any",editType:"none"}});var k_=ye((Bur,w2e)=>{"use strict";var v2t=Dr(),p2t=pl(),g2t=kc().defaults;w2e.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(C,E){return v2t.coerce(h,d,o,C,E)}for(var x=0;x<c;x++){var b=u[x];t[b]?h=t[b]:h=t[b]={},d=p2t.newContainer(r,b,f),i.noUirevision||v("uirevision",r.uirevision);var p={};p[l]=[x/c,(x+1)/c],g2t(d,r,v,p),i.id=b,s(h,d,v,i)}}});var M2e=ye((Nur,S2e)=>{"use strict";var m2t=Ca(),y2t=pl(),R8=Dr(),_2t=k_(),x2t=t_(),b2t=r_(),w2t=T3(),T2t=xb(),A2t=QM(),A2e=RG(),T2e=["aaxis","baxis","caxis"];S2e.exports=function(t,r,n){_2t(t,r,n,{type:"ternary",attributes:A2e,handleDefaults:S2t,font:r.font,paper_bgcolor:r.paper_bgcolor})};function S2t(e,t,r,n){var i=r("bgcolor"),a=r("sum");n.bgColor=m2t.combine(i,n.paper_bgcolor);for(var o,s,l,u=0;u<T2e.length;u++)o=T2e[u],s=e[o]||{},l=y2t.newContainer(t,o),l._name=o,M2t(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 M2t(e,t,r,n){var i=A2e[t._name];function a(d,v){return R8.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,R8.coerceFont(a,"title.font",r.font,{overrideDflt:{size:R8.bigFont(r.font.size),color:s}}),a("min"),T2t(e,t,a,"linear"),b2t(e,t,a,"linear"),x2t(e,t,a,"linear",{noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0}),w2t(e,t,a,{outerTicks:!0});var h=a("showticklabels");h&&(R8.coerceFont(a,"tickfont",r.font,{overrideDflt:{color:s}}),a("tickangle"),a("tickformat")),A2t(e,t,a,{dfltColor:o,bgColor:r.bgColor,blend:60,showLine:!0,showGrid:!0,noZeroLine:!0,attributes:i}),a("hoverformat"),a("layer")}});var E2e=ye(W0=>{"use strict";var E2t=x2e(),C2t=Id().getSubplotCalcData,k2t=Dr().counterRegex,qT="ternary";W0.name=qT;var L2t=W0.attr="subplot";W0.idRoot=qT;W0.idRegex=W0.attrRegex=k2t(qT);var P2t=W0.attributes={};P2t[L2t]={valType:"subplotid",dflt:"ternary",editType:"calc"};W0.layoutAttributes=RG();W0.supplyLayoutDefaults=M2e();W0.plot=function(t){for(var r=t._fullLayout,n=t.calcdata,i=r._subplots[qT],a=0;a<i.length;a++){var o=i[a],s=C2t(n,qT,o),l=r[o]._subplot;l||(l=new E2t({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[qT]||[],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 k2e=ye((Vur,C2e)=>{"use strict";C2e.exports={attributes:SG(),supplyDefaults:Jbe(),colorbar:$d(),formatLabels:Qbe(),calc:i2e(),plot:a2e(),style:ap().style,styleOnSelect:ap().styleOnSelect,hoverPoints:s2e(),selectPoints:lT(),eventData:u2e(),moduleType:"trace",name:"scatterternary",basePlotModule:E2e(),categories:["ternary","symbols","showLegend","scatter-like"],meta:{}}});var P2e=ye((Gur,L2e)=>{"use strict";L2e.exports=k2e()});var DG=ye((Hur,R2e)=>{"use strict";var td=y4(),BT=Ao().extendFlat,I2e=df().axisHoverFormat;R2e.exports={y:td.y,x:td.x,x0:td.x0,y0:td.y0,xhoverformat:I2e("x"),yhoverformat:I2e("y"),name:BT({},td.name,{}),orientation:BT({},td.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:td.fillcolor,points:BT({},td.boxpoints,{}),jitter:BT({},td.jitter,{}),pointpos:BT({},td.pointpos,{}),width:BT({},td.width,{}),marker:td.marker,text:td.text,hovertext:td.hovertext,hovertemplate:td.hovertemplate,quartilemethod:td.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:td.offsetgroup,alignmentgroup:td.alignmentgroup,selected:td.selected,unselected:td.unselected,hoveron:{valType:"flaglist",flags:["violins","points","kde"],dflt:"violins+points+kde",extras:["all"],editType:"style"},zorder:td.zorder}});var OG=ye((jur,D2e)=>{"use strict";var FG=_4(),zG=Dr().extendFlat;D2e.exports={violinmode:zG({},FG.boxmode,{}),violingap:zG({},FG.boxgap,{}),violingroupgap:zG({},FG.boxgroupgap,{})}});var B2e=ye((Wur,q2e)=>{"use strict";var F2e=Dr(),I2t=Ca(),z2e=b4(),O2e=DG();q2e.exports=function(t,r,n,i){function a(L,_){return F2e.coerce(t,r,O2e,L,_)}function o(L,_){return F2e.coerce2(t,r,O2e,L,_)}if(z2e.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",I2t.addOpacity(r.line.color,.5));z2e.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 C=o("meanline.color",c),E=o("meanline.width",f),A=a("meanline.visible",!!(C||E));A||(r.meanline={visible:!1}),a("quartilemethod"),a("zorder")}}});var U2e=ye((Xur,N2e)=>{"use strict";var R2t=Dr(),D2t=OG(),F2t=jI();N2e.exports=function(t,r,n){function i(a,o){return R2t.coerce(t,r,D2t,a,o)}F2t._supply(t,r,n,i,"violin")}});var D8=ye(o2=>{"use strict";var z2t=Dr(),O2t={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=O2t.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=z2t.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 H2e=ye((Yur,G2e)=>{"use strict";var qG=Dr(),BG=ho(),q2t=LV(),V2e=D8(),B2t=hs().BADNUM;G2e.exports=function(t,r){var n=q2t(t,r);if(n[0].t.empty)return n;for(var i=t._fullLayout,a=BG.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(V2e.extractVal),d=f.bandwidth=U2t(r,f,h),v=f.span=V2t(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 qG.error("Something went wrong with computing the violin span"),n[0].t.empty=!0,n;var C=V2e.makeKDE(f,r,h);f.density=new Array(b);for(var E=0,A=v[0];A<v[1]+p/2;E++,A+=p){var L=C(A);f.density[E]={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 _=BG.findExtremes(a,[o,s],{padded:!0});if(r._extremes[a._id]=_,r.width)n[0].t.maxKDE=l;else{var k=i._violinScaleGroupStats,M=r.scalegroup,g=k[M];g?(g.maxKDE=Math.max(g.maxKDE,l),g.maxCount=Math.max(g.maxCount,u)):k[M]={maxKDE:l,maxCount:u}}return n[0].t.labels.kde=qG._(t,"kde:"),n};function N2t(e,t,r){var n=Math.min(t,r/1.349);return 1.059*n*Math.pow(e,-.2)}function U2t(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=qG.stdev(r,i-1,t.mean);return Math.max(N2t(i,a,t.q3-t.q1),n/100)}function V2t(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===B2t?s[f]:d}i==="soft"?l=s:i==="hard"?l=o:l=[u(0),u(1)];var c={type:"linear",range:l};return BG.setConvert(c),c.cleanRange(),l}});var X2e=ye((Kur,W2e)=>{"use strict";var G2t=XI().setPositionOffset,j2e=["v","h"];W2e.exports=function(t,r){for(var n=t.calcdata,i=r.xaxis,a=r.yaxis,o=0;o<j2e.length;o++){for(var s=j2e[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)}G2t("violin",t,u,l)}}});var Y2e=ye((Jur,Z2e)=>{"use strict";var NG=Oa(),UG=Dr(),H2t=So(),VG=ZI(),j2t=pU(),W2t=D8();Z2e.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=j2t(c,{xaxis:s,yaxis:l,trace:f,connectGaps:!0,baseTolerance:.75,shape:"spline",simplify:!0,linearized:!0});return H2t.smoothopen(h[0],1)}UG.makeTraceGroups(i,n,"trace violins").each(function(c){var f=NG.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"],C=r[d.posLetter+"axis"],E=v.side==="both",A=E||v.side==="positive",L=E||v.side==="negative",_=f.selectAll("path.violin").data(UG.identity);_.enter().append("path").style("vector-effect",a?"none":"non-scaling-stroke").attr("class","violin"),_.exit().remove(),_.each(function(V){var G=NG.select(this),Z=V.density,H=Z.length,N=C.c2l(V.pos+x,!0),j=C.l2p(N),re;if(v.width)re=d.maxKDE/b;else{var oe=o._violinScaleGroupStats[v.scalegroup];re=v.scalemode==="count"?oe.maxKDE/b*(oe.maxCount/V.pts.length):oe.maxKDE/b}var _e,Me,ke,me,ie,Se,Le;if(A){for(Se=new Array(H),me=0;me<H;me++)Le=Se[me]={},Le[d.posLetter]=N+Z[me].v/re,Le[d.valLetter]=p.c2l(Z[me].t,!0);_e=u(Se,v)}if(L){for(Se=new Array(H),ie=0,me=H-1;ie<H;ie++,me--)Le=Se[ie]={},Le[d.posLetter]=N-Z[me].v/re,Le[d.valLetter]=p.c2l(Z[me].t,!0);Me=u(Se,v)}if(E)ke=_e+"L"+Me.substr(1)+"Z";else{var Ae=[j,p.c2p(Z[0].t)],De=[j,p.c2p(Z[H-1].t)];v.orientation==="h"&&(Ae.reverse(),De.reverse()),A?ke="M"+Ae+"L"+_e.substr(1)+"L"+De:ke="M"+De+"L"+Me.substr(1)+"L"+Ae}G.attr("d",ke),V.posCenterPx=j,V.posDensityScale=re*b,V.path=G.node(),V.pathLength=V.path.getTotalLength()/(E?2:1)});var k=v.box,M=k.width,g=(k.line||{}).width,P,T;E?(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]),VG.plotBoxAndWhiskers(f,{pos:C,val:p},v,{bPos:x,bdPos:P,bPosPxOffset:T}),VG.plotBoxMean(f,{pos:C,val:p},v,{bPos:x,bdPos:P,bPosPxOffset:T});var z;!v.box.visible&&v.meanline.visible&&(z=UG.identity);var O=f.selectAll("path.meanline").data(z||[]);O.enter().append("path").attr("class","meanline").style("fill","none").style("vector-effect",a?"none":"non-scaling-stroke"),O.exit().remove(),O.each(function(V){var G=p.c2p(V.mean,!0),Z=W2t.getPositionOnKdePath(V,v,G);NG.select(this).attr("d",v.orientation==="h"?"M"+G+","+Z[0]+"V"+Z[1]:"M"+Z[0]+","+G+"H"+Z[1])}),VG.plotPoints(f,{x:s,y:l},v,d)})}});var $2e=ye(($ur,J2e)=>{"use strict";var K2e=Oa(),NT=Ca(),X2t=ap().stylePoints;J2e.exports=function(t){var r=K2e.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=K2e.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),X2t(a,i,t)})}});var rwe=ye((Qur,twe)=>{"use strict";var Z2t=Ca(),GG=Dr(),Y2t=ho(),Q2e=FV(),ewe=D8();twe.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=Q2e.hoverOnBoxes(t,r,n,i);if(f&&x.length>0){var b=t.xa,p=t.ya,C,E,A,L,_;l.orientation==="h"?(_=r,C="y",A=p,E="x",L=b):(_=n,C="x",A=b,E="y",L=p);var k=s[t.index];if(_>=k.span[0]&&_<=k.span[1]){var M=GG.extendFlat({},t),g=L.c2p(_,!0),P=ewe.getKdeValue(k,l,_),T=ewe.getPositionOnKdePath(k,l,g),z=A._offset,O=A._length;M[C+"0"]=T[0],M[C+"1"]=T[1],M[E+"0"]=M[E+"1"]=g,M[E+"Label"]=E+": "+Y2t.hoverLabelText(L,_,l[E+"hoverformat"])+", "+s[0].t.labels.kde+" "+P.toFixed(3);for(var V=0,G=0;G<x.length;G++)if(x[G].attr==="med"){V=G;break}M.spikeDistance=x[V].spikeDistance;var Z=C+"Spike";M[Z]=x[V][Z],x[V].spikeDistance=void 0,x[V][Z]=void 0,M.hovertemplate=!1,h.push(M),v={},v[C+"1"]=GG.constrain(z+T[0],z,z+O),v[C+"2"]=GG.constrain(z+T[1],z,z+O),v[E+"1"]=v[E+"2"]=L._offset+g}}c&&(h=h.concat(x))}u.indexOf("points")!==-1&&(d=Q2e.hoverOnPoints(t,r,n));var H=o.selectAll(".violinline-"+l.uid).data(v?[0]:[]);return H.enter().append("line").classed("violinline-"+l.uid,!0).attr("stroke-width",1.5),H.exit().remove(),H.attr(v).call(Z2t.stroke,t.color),i==="closest"?d?[d]:h:(d&&h.push(d),h)}});var nwe=ye((ecr,iwe)=>{"use strict";iwe.exports={attributes:DG(),layoutAttributes:OG(),supplyDefaults:B2e(),crossTraceDefaults:b4().crossTraceDefaults,supplyLayoutDefaults:U2e(),calc:H2e(),crossTraceCalc:X2e(),plot:Y2e(),style:$2e(),styleOnSelect:ap().styleOnSelect,hoverPoints:rwe(),selectPoints:zV(),moduleType:"trace",name:"violin",basePlotModule:vh(),categories:["cartesian","svg","symbols","oriented","box-violin","showLegend","violinLayout","zoomScale"],meta:{}}});var owe=ye((tcr,awe)=>{"use strict";awe.exports=nwe()});var lwe=ye((rcr,swe)=>{"use strict";swe.exports={eventDataKeys:["percentInitial","percentPrevious","percentTotal"]}});var jG=ye((icr,fwe)=>{"use strict";var jc=Lm(),HG=pf().line,K2t=Vl(),uwe=df().axisHoverFormat,J2t=Qo().hovertemplateAttrs,$2t=Qo().texttemplateAttrs,cwe=lwe(),Ny=Ao().extendFlat,Q2t=Ca();fwe.exports={x:jc.x,x0:jc.x0,dx:jc.dx,y:jc.y,y0:jc.y0,dy:jc.dy,xperiod:jc.xperiod,yperiod:jc.yperiod,xperiod0:jc.xperiod0,yperiod0:jc.yperiod0,xperiodalignment:jc.xperiodalignment,yperiodalignment:jc.yperiodalignment,xhoverformat:uwe("x"),yhoverformat:uwe("y"),hovertext:jc.hovertext,hovertemplate:J2t({},{keys:cwe.eventDataKeys}),hoverinfo:Ny({},K2t.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:$2t({editType:"plot"},{keys:cwe.eventDataKeys.concat(["label","value"])}),text:jc.text,textposition:jc.textposition,insidetextanchor:Ny({},jc.insidetextanchor,{dflt:"middle"}),textangle:Ny({},jc.textangle,{dflt:0}),textfont:jc.textfont,insidetextfont:jc.insidetextfont,outsidetextfont:jc.outsidetextfont,constraintext:jc.constraintext,cliponaxis:jc.cliponaxis,orientation:Ny({},jc.orientation,{}),offset:Ny({},jc.offset,{arrayOk:!1}),width:Ny({},jc.width,{arrayOk:!1}),marker:ewt(),connector:{fillcolor:{valType:"color",editType:"style"},line:{color:Ny({},HG.color,{dflt:Q2t.defaultLine}),width:Ny({},HG.width,{dflt:0,editType:"plot"}),dash:HG.dash,editType:"style"},visible:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},offsetgroup:jc.offsetgroup,alignmentgroup:jc.alignmentgroup,zorder:jc.zorder};function ewt(){var e=Ny({},jc.marker);return delete e.pattern,delete e.cornerradius,e}});var WG=ye((ncr,hwe)=>{"use strict";hwe.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 ZG=ye((acr,vwe)=>{"use strict";var F8=Dr(),twt=Gb(),rwt=r0().handleText,iwt=K3(),nwt=Pg(),dwe=jG(),XG=Ca();function awt(e,t,r,n){function i(f,h){return F8.coerce(e,t,dwe,f,h)}var a=iwt(e,t,n,i);if(!a){t.visible=!1;return}nwt(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");rwt(e,t,n,i,s,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),t.textposition!=="none"&&!t.texttemplate&&i("textinfo",F8.isArrayOrTypedArray(o)?"text+value":"value");var l=i("marker.color",r);i("marker.line.color",XG.defaultLine),i("marker.line.width");var u=i("connector.visible");if(u){i("connector.fillcolor",owt(l));var c=i("connector.line.width");c&&(i("connector.line.color"),i("connector.line.dash"))}i("zorder")}function owt(e){var t=F8.isArrayOrTypedArray(e)?"#000":e;return XG.addOpacity(t,.5*XG.opacity(t))}function swt(e,t){var r,n;function i(o){return F8.coerce(n._input,n,dwe,o)}for(var a=0;a<e.length;a++)n=e[a],n.type==="funnel"&&(r=n._input,twt(r,n,t,i,t.funnelmode))}vwe.exports={supplyDefaults:awt,crossTraceDefaults:swt}});var gwe=ye((ocr,pwe)=>{"use strict";var lwt=Dr(),uwt=WG();pwe.exports=function(e,t,r){var n=!1;function i(s,l){return lwt.coerce(e,t,uwt,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 ywe=ye((scr,mwe)=>{"use strict";var UT=Dr();mwe.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 wwe=ye((lcr,bwe)=>{"use strict";var _we=ho(),xwe=Rg(),cwt=ywe(),fwt=z0(),F4=hs().BADNUM;bwe.exports=function(t,r){var n=_we.getFromId(t,r.xaxis||"x"),i=_we.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=xwe(r,i,"y",s),u=!!r.yperiodalignment,c="y"):(a=i.makeCalcdata(r,"y"),s=n.makeCalcdata(r,"x"),l=xwe(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]=F4);var x=!1;a[f]!==F4&&f+1<d&&a[f+1]!==F4&&(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+=YG(h.s),h.begR=YG(h.s)/YG(v[0].s)}var b;for(f=0;f<d;f++)h=v[f],h.s!==F4&&(h.sumR=h.s/v[0].vTotal,h.difR=b!==void 0?h.s/b:1,b=h.s);return cwt(v,r),fwt(v,r),v};function YG(e){return e===F4?0:e}});var Swe=ye((ucr,Awe)=>{"use strict";var Twe=Hb().setGroupPositions;Awe.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(Twe(t,o,s,u,x),Twe(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 kwe=ye((ccr,Cwe)=>{"use strict";var z8=Oa(),P_=Dr(),Mwe=So(),L_=hs().BADNUM,hwt=i2(),dwt=_v().clearMinTextSize;Cwe.exports=function(t,r,n,i){var a=t._fullLayout;dwt("funnel",a),vwt(t,r,n,i),pwt(t,r,n,i),hwt.plot(t,r,n,i,{mode:a.funnelmode,norm:a.funnelmode,gap:a.funnelgap,groupgap:a.funnelgroupgap})};function vwt(e,t,r,n){var i=t.xaxis,a=t.yaxis;P_.makeTraceGroups(n,r,"trace bars").each(function(o){var s=z8.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=Ewe(d,i,a,c),b=x[0],p=x[1],C="";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?C+="M"+b[0]+","+p[1]+"L"+b[2]+","+p[2]+"H"+b[3]+"L"+b[1]+","+p[1]+"Z":C+="M"+b[1]+","+p[1]+"L"+b[2]+","+p[3]+"V"+p[2]+"L"+b[1]+","+p[0]+"Z"),C===""&&(C="M0,0Z"),P_.ensureSingle(z8.select(this),"path").attr("d",C).call(Mwe.setClipUrl,t.layerClipId,e)}})})}function pwt(e,t,r,n){var i=t.xaxis,a=t.yaxis;P_.makeTraceGroups(n,r,"trace bars").each(function(o){var s=z8.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=Ewe(d,i,a,c),b=x[0],p=x[1],C="";b[3]!==void 0&&p[3]!==void 0&&(c?(C+="M"+b[0]+","+p[1]+"L"+b[2]+","+p[2],C+="M"+b[1]+","+p[1]+"L"+b[3]+","+p[2]):(C+="M"+b[1]+","+p[1]+"L"+b[2]+","+p[3],C+="M"+b[1]+","+p[0]+"L"+b[2]+","+p[2])),C===""&&(C="M0,0Z"),P_.ensureSingle(z8.select(this),"path").attr("d",C).call(Mwe.setClipUrl,t.layerClipId,e)}})})}function Ewe(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 Iwe=ye((fcr,Pwe)=>{"use strict";var z4=Oa(),Lwe=So(),KG=Ca(),gwt=U1().DESELECTDIM,mwt=N0(),ywt=_v().resizeText,_wt=mwt.styleTextPoints;function xwt(e,t,r){var n=r||z4.select(e).selectAll('g[class^="funnellayer"]').selectAll("g.trace");ywt(e,n,"funnel"),n.style("opacity",function(i){return i[0].trace.opacity}),n.each(function(i){var a=z4.select(this),o=i[0].trace;a.selectAll(".point > path").each(function(s){if(!s.isBlank){var l=o.marker;z4.select(this).call(KG.fill,s.mc||l.color).call(KG.stroke,s.mlc||l.line.color).call(Lwe.dashLine,l.line.dash,s.mlw||l.line.width).style("opacity",o.selectedpoints&&!s.selected?gwt:1)}}),_wt(a,o,e),a.selectAll(".regions").each(function(){z4.select(this).selectAll("path").style("stroke-width",0).call(KG.fill,o.connector.fillcolor)}),a.selectAll(".lines").each(function(){var s=o.connector.line;Lwe.lineGroupStyle(z4.select(this).selectAll("path"),s.width,s.color,s.dash)})})}Pwe.exports={style:xwt}});var Fwe=ye((hcr,Dwe)=>{"use strict";var Rwe=Ca().opacity,bwt=TT().hoverOnBars,JG=Dr().formatPercent;Dwe.exports=function(t,r,n,i,a){var o=bwt(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=JG(f.begR,1),o.percentPrevious=f.difR,o.percentPreviousLabel=JG(f.difR,1),o.percentTotal=f.sumR,o.percentTotalLabel=JG(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(C){return x||b.indexOf(C)!==-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=wwt(l,f),[o]}};function wwt(e,t){var r=e.marker,n=t.mc||r.color,i=t.mlc||r.line.color,a=t.mlw||r.line.width;if(Rwe(n))return n;if(Rwe(i)&&a)return i}});var Owe=ye((dcr,zwe)=>{"use strict";zwe.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 Bwe=ye((vcr,qwe)=>{"use strict";qwe.exports={attributes:jG(),layoutAttributes:WG(),supplyDefaults:ZG().supplyDefaults,crossTraceDefaults:ZG().crossTraceDefaults,supplyLayoutDefaults:gwe(),calc:wwe(),crossTraceCalc:Swe(),plot:kwe(),style:Iwe().style,hoverPoints:Fwe(),eventData:Owe(),selectPoints:AT(),moduleType:"trace",name:"funnel",basePlotModule:vh(),categories:["bar-like","cartesian","svg","oriented","showLegend","zoomScale"],meta:{}}});var Uwe=ye((pcr,Nwe)=>{"use strict";Nwe.exports=Bwe()});var Gwe=ye((gcr,Vwe)=>{"use strict";Vwe.exports={eventDataKeys:["initial","delta","final"]}});var eH=ye((mcr,Wwe)=>{"use strict";var _c=Lm(),$G=pf().line,Twt=Vl(),Hwe=df().axisHoverFormat,Awt=Qo().hovertemplateAttrs,Swt=Qo().texttemplateAttrs,jwe=Gwe(),VT=Ao().extendFlat,Mwt=Ca();function QG(e){return{marker:{color:VT({},_c.marker.color,{arrayOk:!1,editType:"style"}),line:{color:VT({},_c.marker.line.color,{arrayOk:!1,editType:"style"}),width:VT({},_c.marker.line.width,{arrayOk:!1,editType:"style"}),editType:"style"},editType:"style"},editType:"style"}}Wwe.exports={measure:{valType:"data_array",dflt:[],editType:"calc"},base:{valType:"number",dflt:null,arrayOk:!1,editType:"calc"},x:_c.x,x0:_c.x0,dx:_c.dx,y:_c.y,y0:_c.y0,dy:_c.dy,xperiod:_c.xperiod,yperiod:_c.yperiod,xperiod0:_c.xperiod0,yperiod0:_c.yperiod0,xperiodalignment:_c.xperiodalignment,yperiodalignment:_c.yperiodalignment,xhoverformat:Hwe("x"),yhoverformat:Hwe("y"),hovertext:_c.hovertext,hovertemplate:Awt({},{keys:jwe.eventDataKeys}),hoverinfo:VT({},Twt.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:Swt({editType:"plot"},{keys:jwe.eventDataKeys.concat(["label"])}),text:_c.text,textposition:_c.textposition,insidetextanchor:_c.insidetextanchor,textangle:_c.textangle,textfont:_c.textfont,insidetextfont:_c.insidetextfont,outsidetextfont:_c.outsidetextfont,constraintext:_c.constraintext,cliponaxis:_c.cliponaxis,orientation:_c.orientation,offset:_c.offset,width:_c.width,increasing:QG("increasing"),decreasing:QG("decreasing"),totals:QG("intermediate sums and total"),connector:{line:{color:VT({},$G.color,{dflt:Mwt.defaultLine}),width:VT({},$G.width,{editType:"plot"}),dash:$G.dash,editType:"plot"},mode:{valType:"enumerated",values:["spanning","between"],dflt:"between",editType:"plot"},visible:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},offsetgroup:_c.offsetgroup,alignmentgroup:_c.alignmentgroup,zorder:_c.zorder}});var tH=ye((ycr,Xwe)=>{"use strict";Xwe.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 GT=ye((_cr,Zwe)=>{"use strict";Zwe.exports={INCREASING:{COLOR:"#3D9970",SYMBOL:"\u25B2"},DECREASING:{COLOR:"#FF4136",SYMBOL:"\u25BC"}}});var iH=ye((xcr,$we)=>{"use strict";var Ywe=Dr(),Ewt=Gb(),Cwt=r0().handleText,kwt=K3(),Lwt=Pg(),Kwe=eH(),Pwt=Ca(),Jwe=GT(),Iwt=Jwe.INCREASING.COLOR,Rwt=Jwe.DECREASING.COLOR,Dwt="#4499FF";function rH(e,t,r){e(t+".marker.color",r),e(t+".marker.line.color",Pwt.defaultLine),e(t+".marker.line.width")}function Fwt(e,t,r,n){function i(u,c){return Ywe.coerce(e,t,Kwe,u,c)}var a=kwt(e,t,n,i);if(!a){t.visible=!1;return}Lwt(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");Cwt(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")),rH(i,"increasing",Iwt),rH(i,"decreasing",Rwt),rH(i,"totals",Dwt);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 zwt(e,t){var r,n;function i(o){return Ywe.coerce(n._input,n,Kwe,o)}if(t.waterfallmode==="group")for(var a=0;a<e.length;a++)n=e[a],r=n._input,Ewt(r,n,t,i,t.waterfallmode)}$we.exports={supplyDefaults:Fwt,crossTraceDefaults:zwt}});var e3e=ye((bcr,Qwe)=>{"use strict";var Owt=Dr(),qwt=tH();Qwe.exports=function(e,t,r){var n=!1;function i(s,l){return Owt.coerce(e,t,qwt,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 o3e=ye((wcr,a3e)=>{"use strict";var t3e=ho(),r3e=Rg(),i3e=Dr().mergeArray,Bwt=z0(),n3e=hs().BADNUM;function nH(e){return e==="a"||e==="absolute"}function aH(e){return e==="t"||e==="total"}a3e.exports=function(t,r){var n=t3e.getFromId(t,r.xaxis||"x"),i=t3e.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=r3e(r,i,"y",s),u=!!r.yperiodalignment,c="y"):(a=i.makeCalcdata(r,"y"),s=n.makeCalcdata(r,"x"),l=r3e(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,C=!1;(a[b]!==n3e||aH(r.measure[b])||nH(r.measure[b]))&&b+1<f&&(a[b+1]!==n3e||aH(r.measure[b+1])||nH(r.measure[b+1]))&&(C=!0);var E=h[b]={i:b,p:o[b],s:p,rawS:p,cNext:C};nH(r.measure[b])?(d=E.s,E.isSum=!0,E.dir="totals",E.s=d):aH(r.measure[b])?(E.isSum=!0,E.dir="totals",E.s=d):(E.isSum=!1,E.dir=E.rawS<0?"decreasing":"increasing",v=E.s,E.s=d+v,d+=v),E.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&&(E.id=String(r.ids[b])),E.v=(r.base||0)+d}return h.length&&(h[0].hasTotals=x),i3e(r.text,h,"tx"),i3e(r.hovertext,h,"htx"),Bwt(h,r),h}});var u3e=ye((Tcr,l3e)=>{"use strict";var s3e=Hb().setGroupPositions;l3e.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(s3e(t,o,s,u,v),s3e(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 h3e=ye((Acr,f3e)=>{"use strict";var c3e=Oa(),O8=Dr(),Nwt=So(),HT=hs().BADNUM,Uwt=i2(),Vwt=_v().clearMinTextSize;f3e.exports=function(t,r,n,i){var a=t._fullLayout;Vwt("waterfall",a),Uwt.plot(t,r,n,i,{mode:a.waterfallmode,norm:a.waterfallmode,gap:a.waterfallgap,groupgap:a.waterfallgroupgap}),Gwt(t,r,n,i)};function Gwt(e,t,r,n){var i=t.xaxis,a=t.yaxis;O8.makeTraceGroups(n,r,"trace bars").each(function(o){var s=c3e.select(this),l=o[0].trace,u=O8.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(O8.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=Hwt(v,i,a,c),p=b[0],C=b[1],E="";p[0]!==HT&&C[0]!==HT&&p[1]!==HT&&C[1]!==HT&&(f==="spanning"&&!v.isSum&&x>0&&(c?E+="M"+p[0]+","+C[1]+"V"+C[0]:E+="M"+p[1]+","+C[0]+"H"+p[0]),f!=="between"&&(v.isSum||x<d-1)&&(c?E+="M"+p[1]+","+C[0]+"V"+C[1]:E+="M"+p[0]+","+C[1]+"H"+p[1]),p[2]!==HT&&C[2]!==HT&&(c?E+="M"+p[1]+","+C[1]+"V"+C[2]:E+="M"+p[1]+","+C[1]+"H"+p[2])),E===""&&(E="M0,0Z"),O8.ensureSingle(c3e.select(this),"path").attr("d",E).call(Nwt.setClipUrl,t.layerClipId,e)}})})}function Hwt(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 g3e=ye((Scr,p3e)=>{"use strict";var q8=Oa(),d3e=So(),v3e=Ca(),jwt=U1().DESELECTDIM,Wwt=N0(),Xwt=_v().resizeText,Zwt=Wwt.styleTextPoints;function Ywt(e,t,r){var n=r||q8.select(e).selectAll('g[class^="waterfalllayer"]').selectAll("g.trace");Xwt(e,n,"waterfall"),n.style("opacity",function(i){return i[0].trace.opacity}),n.each(function(i){var a=q8.select(this),o=i[0].trace;a.selectAll(".point > path").each(function(s){if(!s.isBlank){var l=o[s.dir].marker;q8.select(this).call(v3e.fill,l.color).call(v3e.stroke,l.line.color).call(d3e.dashLine,l.line.dash,l.line.width).style("opacity",o.selectedpoints&&!s.selected?jwt:1)}}),Zwt(a,o,e),a.selectAll(".lines").each(function(){var s=o.connector.line;d3e.lineGroupStyle(q8.select(this).selectAll("path"),s.width,s.color,s.dash)})})}p3e.exports={style:Ywt}});var b3e=ye((Mcr,x3e)=>{"use strict";var Kwt=ho().hoverLabelText,m3e=Ca().opacity,Jwt=TT().hoverOnBars,y3e=GT(),_3e={increasing:y3e.INCREASING.SYMBOL,decreasing:y3e.DECREASING.SYMBOL};x3e.exports=function(t,r,n,i,a){var o=Jwt(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 Kwt(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,C=[];if(p&&p!=="none"&&p!=="skip"){var E=p==="all",A=p.split("+"),L=function(_){return E||A.indexOf(_)!==-1};v.isSum||(L("final")&&(u?!L("x"):!L("y"))&&C.push(o.finalLabel),L("delta")&&(x<0?C.push(o.deltaLabel+" "+_3e.decreasing):C.push(o.deltaLabel+" "+_3e.increasing)),L("initial")&&C.push("Initial: "+o.initialLabel))}return C.length&&(o.extraText=C.join("<br>")),o.color=$wt(l,v),[o]};function $wt(e,t){var r=e[t.dir].marker,n=r.color,i=r.line.color,a=r.line.width;if(m3e(n))return n;if(m3e(i)&&a)return i}});var T3e=ye((Ecr,w3e)=>{"use strict";w3e.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 S3e=ye((Ccr,A3e)=>{"use strict";A3e.exports={attributes:eH(),layoutAttributes:tH(),supplyDefaults:iH().supplyDefaults,crossTraceDefaults:iH().crossTraceDefaults,supplyLayoutDefaults:e3e(),calc:o3e(),crossTraceCalc:u3e(),plot:h3e(),style:g3e().style,hoverPoints:b3e(),eventData:T3e(),selectPoints:AT(),moduleType:"trace",name:"waterfall",basePlotModule:vh(),categories:["bar-like","cartesian","svg","oriented","showLegend","zoomScale"],meta:{}}});var E3e=ye((kcr,M3e)=>{"use strict";M3e.exports=S3e()});var jT=ye((Lcr,C3e)=>{"use strict";C3e.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 oH=ye((Pcr,L3e)=>{"use strict";var Qwt=Vl(),e3t=pf().zorder,t3t=Qo().hovertemplateAttrs,k3e=Ao().extendFlat,r3t=jT().colormodel,q4=["rgb","rgba","rgba256","hsl","hsla"],i3t=[],n3t=[];for(WT=0;WT<q4.length;WT++)O4=r3t[q4[WT]],i3t.push("For the `"+q4[WT]+"` colormodel, it is ["+(O4.zminDflt||O4.min).join(", ")+"]."),n3t.push("For the `"+q4[WT]+"` colormodel, it is ["+(O4.zmaxDflt||O4.max).join(", ")+"].");var O4,WT;L3e.exports=k3e({source:{valType:"string",editType:"calc"},z:{valType:"data_array",editType:"calc"},colormodel:{valType:"enumerated",values:q4,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:k3e({},Qwt.hoverinfo,{flags:["x","y","z","color","name","text"],dflt:"x+y+z+text+name"}),hovertemplate:t3t({},{keys:["z","color","colormodel"]}),zorder:e3t})});var R3e=ye((Icr,I3e)=>{"use strict";var a3t=Dr(),o3t=oH(),P3e=jT(),s3t=Ly().IMAGE_URL_PREFIX;I3e.exports=function(t,r){function n(o,s){return a3t.coerce(t,r,o3t,o,s)}n("source"),r.source&&!r.source.match(s3t)&&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=P3e.colormodel[r.colormodel],n("zmin",a.zminDflt||a.min),n("zmax",a.zmaxDflt||a.max)):r._hasSource&&(r.colormodel="rgba256",a=P3e.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((Rcr,sH)=>{typeof Object.create=="function"?sH.exports=function(t,r){r&&(t.super_=r,t.prototype=Object.create(r.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}))}:sH.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 lH=ye((Dcr,D3e)=>{D3e.exports=vb().EventEmitter});var O3e=ye(B8=>{"use strict";B8.byteLength=u3t;B8.toByteArray=f3t;B8.fromByteArray=v3t;var zm=[],X0=[],l3t=typeof Uint8Array!="undefined"?Uint8Array:Array,uH="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(s2=0,F3e=uH.length;s2<F3e;++s2)zm[s2]=uH[s2],X0[uH.charCodeAt(s2)]=s2;var s2,F3e;X0[45]=62;X0[95]=63;function z3e(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 u3t(e){var t=z3e(e),r=t[0],n=t[1];return(r+n)*3/4-n}function c3t(e,t,r){return(t+r)*3/4-r}function f3t(e){var t,r=z3e(e),n=r[0],i=r[1],a=new l3t(c3t(e,n,i)),o=0,s=i>0?n-4:n,l;for(l=0;l<s;l+=4)t=X0[e.charCodeAt(l)]<<18|X0[e.charCodeAt(l+1)]<<12|X0[e.charCodeAt(l+2)]<<6|X0[e.charCodeAt(l+3)],a[o++]=t>>16&255,a[o++]=t>>8&255,a[o++]=t&255;return i===2&&(t=X0[e.charCodeAt(l)]<<2|X0[e.charCodeAt(l+1)]>>4,a[o++]=t&255),i===1&&(t=X0[e.charCodeAt(l)]<<10|X0[e.charCodeAt(l+1)]<<4|X0[e.charCodeAt(l+2)]>>2,a[o++]=t>>8&255,a[o++]=t&255),a}function h3t(e){return zm[e>>18&63]+zm[e>>12&63]+zm[e>>6&63]+zm[e&63]}function d3t(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(h3t(n));return i.join("")}function v3t(e){for(var t,r=e.length,n=r%3,i=[],a=16383,o=0,s=r-n;o<s;o+=a)i.push(d3t(e,o,o+a>s?s:o+a));return n===1?(t=e[r-1],i.push(zm[t>>2]+zm[t<<4&63]+"==")):n===2&&(t=(e[r-2]<<8)+e[r-1],i.push(zm[t>>10]+zm[t>>4&63]+zm[t<<2&63]+"=")),i.join("")}});var q3e=ye(cH=>{cH.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)};cH.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 fH=O3e(),ZT=q3e(),B3e=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;KT.Buffer=ta;KT.SlowBuffer=x3t;KT.INSPECT_MAX_BYTES=50;var N8=2147483647;KT.kMaxLength=N8;ta.TYPED_ARRAY_SUPPORT=p3t();!ta.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 p3t(){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(ta.prototype,"parent",{enumerable:!0,get:function(){if(ta.isBuffer(this))return this.buffer}});Object.defineProperty(ta.prototype,"offset",{enumerable:!0,get:function(){if(ta.isBuffer(this))return this.byteOffset}});function Vy(e){if(e>N8)throw new RangeError('The value "'+e+'" is invalid for option "size"');let t=new Uint8Array(e);return Object.setPrototypeOf(t,ta.prototype),t}function ta(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 pH(e)}return G3e(e,t,r)}ta.poolSize=8192;function G3e(e,t,r){if(typeof e=="string")return m3t(e,t);if(ArrayBuffer.isView(e))return y3t(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(Om(e,ArrayBuffer)||e&&Om(e.buffer,ArrayBuffer)||typeof SharedArrayBuffer!="undefined"&&(Om(e,SharedArrayBuffer)||e&&Om(e.buffer,SharedArrayBuffer)))return dH(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 ta.from(n,t,r);let i=_3t(e);if(i)return i;if(typeof Symbol!="undefined"&&Symbol.toPrimitive!=null&&typeof e[Symbol.toPrimitive]=="function")return ta.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)}ta.from=function(e,t,r){return G3e(e,t,r)};Object.setPrototypeOf(ta.prototype,Uint8Array.prototype);Object.setPrototypeOf(ta,Uint8Array);function H3e(e){if(typeof e!="number")throw new TypeError('"size" argument must be of type number');if(e<0)throw new RangeError('The value "'+e+'" is invalid for option "size"')}function g3t(e,t,r){return H3e(e),e<=0?Vy(e):t!==void 0?typeof r=="string"?Vy(e).fill(t,r):Vy(e).fill(t):Vy(e)}ta.alloc=function(e,t,r){return g3t(e,t,r)};function pH(e){return H3e(e),Vy(e<0?0:gH(e)|0)}ta.allocUnsafe=function(e){return pH(e)};ta.allocUnsafeSlow=function(e){return pH(e)};function m3t(e,t){if((typeof t!="string"||t==="")&&(t="utf8"),!ta.isEncoding(t))throw new TypeError("Unknown encoding: "+t);let r=j3e(e,t)|0,n=Vy(r),i=n.write(e,t);return i!==r&&(n=n.slice(0,i)),n}function hH(e){let t=e.length<0?0:gH(e.length)|0,r=Vy(t);for(let n=0;n<t;n+=1)r[n]=e[n]&255;return r}function y3t(e){if(Om(e,Uint8Array)){let t=new Uint8Array(e);return dH(t.buffer,t.byteOffset,t.byteLength)}return hH(e)}function dH(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,ta.prototype),n}function _3t(e){if(ta.isBuffer(e)){let t=gH(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"||yH(e.length)?Vy(0):hH(e);if(e.type==="Buffer"&&Array.isArray(e.data))return hH(e.data)}function gH(e){if(e>=N8)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+N8.toString(16)+" bytes");return e|0}function x3t(e){return+e!=e&&(e=0),ta.alloc(+e)}ta.isBuffer=function(t){return t!=null&&t._isBuffer===!0&&t!==ta.prototype};ta.compare=function(t,r){if(Om(t,Uint8Array)&&(t=ta.from(t,t.offset,t.byteLength)),Om(r,Uint8Array)&&(r=ta.from(r,r.offset,r.byteLength)),!ta.isBuffer(t)||!ta.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};ta.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}};ta.concat=function(t,r){if(!Array.isArray(t))throw new TypeError('"list" argument must be an Array of Buffers');if(t.length===0)return ta.alloc(0);let n;if(r===void 0)for(r=0,n=0;n<t.length;++n)r+=t[n].length;let i=ta.allocUnsafe(r),a=0;for(n=0;n<t.length;++n){let o=t[n];if(Om(o,Uint8Array))a+o.length>i.length?(ta.isBuffer(o)||(o=ta.from(o)),o.copy(i,a)):Uint8Array.prototype.set.call(i,o,a);else if(ta.isBuffer(o))o.copy(i,a);else throw new TypeError('"list" argument must be an Array of Buffers');a+=o.length}return i};function j3e(e,t){if(ta.isBuffer(e))return e.length;if(ArrayBuffer.isView(e)||Om(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 vH(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return r*2;case"hex":return r>>>1;case"base64":return eTe(e).length;default:if(i)return n?-1:vH(e).length;t=(""+t).toLowerCase(),i=!0}}ta.byteLength=j3e;function b3t(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 P3t(this,t,r);case"utf8":case"utf-8":return X3e(this,t,r);case"ascii":return k3t(this,t,r);case"latin1":case"binary":return L3t(this,t,r);case"base64":return E3t(this,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return I3t(this,t,r);default:if(n)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),n=!0}}ta.prototype._isBuffer=!0;function l2(e,t,r){let n=e[t];e[t]=e[r],e[r]=n}ta.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};ta.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};ta.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};ta.prototype.toString=function(){let t=this.length;return t===0?"":arguments.length===0?X3e(this,0,t):b3t.apply(this,arguments)};ta.prototype.toLocaleString=ta.prototype.toString;ta.prototype.equals=function(t){if(!ta.isBuffer(t))throw new TypeError("Argument must be a Buffer");return this===t?!0:ta.compare(this,t)===0};ta.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+">"};B3e&&(ta.prototype[B3e]=ta.prototype.inspect);ta.prototype.compare=function(t,r,n,i,a){if(Om(t,Uint8Array)&&(t=ta.from(t,t.offset,t.byteLength)),!ta.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 W3e(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,yH(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=ta.from(t,n)),ta.isBuffer(t))return t.length===0?-1:N3e(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):N3e(e,[t],r,n,i);throw new TypeError("val must be string, number or Buffer")}function N3e(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}ta.prototype.includes=function(t,r,n){return this.indexOf(t,r,n)!==-1};ta.prototype.indexOf=function(t,r,n){return W3e(this,t,r,n,!0)};ta.prototype.lastIndexOf=function(t,r,n){return W3e(this,t,r,n,!1)};function w3t(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(yH(s))return o;e[r+o]=s}return o}function T3t(e,t,r,n){return U8(vH(t,e.length-r),e,r,n)}function A3t(e,t,r,n){return U8(z3t(t),e,r,n)}function S3t(e,t,r,n){return U8(eTe(t),e,r,n)}function M3t(e,t,r,n){return U8(O3t(t,e.length-r),e,r,n)}ta.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 w3t(this,t,r,n);case"utf8":case"utf-8":return T3t(this,t,r,n);case"ascii":case"latin1":case"binary":return A3t(this,t,r,n);case"base64":return S3t(this,t,r,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return M3t(this,t,r,n);default:if(o)throw new TypeError("Unknown encoding: "+i);i=(""+i).toLowerCase(),o=!0}};ta.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function E3t(e,t,r){return t===0&&r===e.length?fH.fromByteArray(e):fH.fromByteArray(e.slice(t,r))}function X3e(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 C3t(n)}var U3e=4096;function C3t(e){let t=e.length;if(t<=U3e)return String.fromCharCode.apply(String,e);let r="",n=0;for(;n<t;)r+=String.fromCharCode.apply(String,e.slice(n,n+=U3e));return r}function k3t(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 L3t(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 P3t(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+=q3t[e[a]];return i}function I3t(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}ta.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,ta.prototype),i};function ev(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")}ta.prototype.readUintLE=ta.prototype.readUIntLE=function(t,r,n){t=t>>>0,r=r>>>0,n||ev(t,r,this.length);let i=this[t],a=1,o=0;for(;++o<r&&(a*=256);)i+=this[t+o]*a;return i};ta.prototype.readUintBE=ta.prototype.readUIntBE=function(t,r,n){t=t>>>0,r=r>>>0,n||ev(t,r,this.length);let i=this[t+--r],a=1;for(;r>0&&(a*=256);)i+=this[t+--r]*a;return i};ta.prototype.readUint8=ta.prototype.readUInt8=function(t,r){return t=t>>>0,r||ev(t,1,this.length),this[t]};ta.prototype.readUint16LE=ta.prototype.readUInt16LE=function(t,r){return t=t>>>0,r||ev(t,2,this.length),this[t]|this[t+1]<<8};ta.prototype.readUint16BE=ta.prototype.readUInt16BE=function(t,r){return t=t>>>0,r||ev(t,2,this.length),this[t]<<8|this[t+1]};ta.prototype.readUint32LE=ta.prototype.readUInt32LE=function(t,r){return t=t>>>0,r||ev(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+this[t+3]*16777216};ta.prototype.readUint32BE=ta.prototype.readUInt32BE=function(t,r){return t=t>>>0,r||ev(t,4,this.length),this[t]*16777216+(this[t+1]<<16|this[t+2]<<8|this[t+3])};ta.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)&&B4(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))});ta.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)&&B4(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)});ta.prototype.readIntLE=function(t,r,n){t=t>>>0,r=r>>>0,n||ev(t,r,this.length);let i=this[t],a=1,o=0;for(;++o<r&&(a*=256);)i+=this[t+o]*a;return a*=128,i>=a&&(i-=Math.pow(2,8*r)),i};ta.prototype.readIntBE=function(t,r,n){t=t>>>0,r=r>>>0,n||ev(t,r,this.length);let i=r,a=1,o=this[t+--i];for(;i>0&&(a*=256);)o+=this[t+--i]*a;return a*=128,o>=a&&(o-=Math.pow(2,8*r)),o};ta.prototype.readInt8=function(t,r){return t=t>>>0,r||ev(t,1,this.length),this[t]&128?(255-this[t]+1)*-1:this[t]};ta.prototype.readInt16LE=function(t,r){t=t>>>0,r||ev(t,2,this.length);let n=this[t]|this[t+1]<<8;return n&32768?n|4294901760:n};ta.prototype.readInt16BE=function(t,r){t=t>>>0,r||ev(t,2,this.length);let n=this[t+1]|this[t]<<8;return n&32768?n|4294901760:n};ta.prototype.readInt32LE=function(t,r){return t=t>>>0,r||ev(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24};ta.prototype.readInt32BE=function(t,r){return t=t>>>0,r||ev(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]};ta.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)&&B4(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)});ta.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)&&B4(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)});ta.prototype.readFloatLE=function(t,r){return t=t>>>0,r||ev(t,4,this.length),ZT.read(this,t,!0,23,4)};ta.prototype.readFloatBE=function(t,r){return t=t>>>0,r||ev(t,4,this.length),ZT.read(this,t,!1,23,4)};ta.prototype.readDoubleLE=function(t,r){return t=t>>>0,r||ev(t,8,this.length),ZT.read(this,t,!0,52,8)};ta.prototype.readDoubleBE=function(t,r){return t=t>>>0,r||ev(t,8,this.length),ZT.read(this,t,!1,52,8)};function Ip(e,t,r,n,i,a){if(!ta.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")}ta.prototype.writeUintLE=ta.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;Ip(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};ta.prototype.writeUintBE=ta.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;Ip(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};ta.prototype.writeUint8=ta.prototype.writeUInt8=function(t,r,n){return t=+t,r=r>>>0,n||Ip(this,t,r,1,255,0),this[r]=t&255,r+1};ta.prototype.writeUint16LE=ta.prototype.writeUInt16LE=function(t,r,n){return t=+t,r=r>>>0,n||Ip(this,t,r,2,65535,0),this[r]=t&255,this[r+1]=t>>>8,r+2};ta.prototype.writeUint16BE=ta.prototype.writeUInt16BE=function(t,r,n){return t=+t,r=r>>>0,n||Ip(this,t,r,2,65535,0),this[r]=t>>>8,this[r+1]=t&255,r+2};ta.prototype.writeUint32LE=ta.prototype.writeUInt32LE=function(t,r,n){return t=+t,r=r>>>0,n||Ip(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};ta.prototype.writeUint32BE=ta.prototype.writeUInt32BE=function(t,r,n){return t=+t,r=r>>>0,n||Ip(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 Z3e(e,t,r,n,i){Q3e(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 Y3e(e,t,r,n,i){Q3e(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}ta.prototype.writeBigUInt64LE=I_(function(t,r=0){return Z3e(this,t,r,BigInt(0),BigInt("0xffffffffffffffff"))});ta.prototype.writeBigUInt64BE=I_(function(t,r=0){return Y3e(this,t,r,BigInt(0),BigInt("0xffffffffffffffff"))});ta.prototype.writeIntLE=function(t,r,n,i){if(t=+t,r=r>>>0,!i){let l=Math.pow(2,8*n-1);Ip(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};ta.prototype.writeIntBE=function(t,r,n,i){if(t=+t,r=r>>>0,!i){let l=Math.pow(2,8*n-1);Ip(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};ta.prototype.writeInt8=function(t,r,n){return t=+t,r=r>>>0,n||Ip(this,t,r,1,127,-128),t<0&&(t=255+t+1),this[r]=t&255,r+1};ta.prototype.writeInt16LE=function(t,r,n){return t=+t,r=r>>>0,n||Ip(this,t,r,2,32767,-32768),this[r]=t&255,this[r+1]=t>>>8,r+2};ta.prototype.writeInt16BE=function(t,r,n){return t=+t,r=r>>>0,n||Ip(this,t,r,2,32767,-32768),this[r]=t>>>8,this[r+1]=t&255,r+2};ta.prototype.writeInt32LE=function(t,r,n){return t=+t,r=r>>>0,n||Ip(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};ta.prototype.writeInt32BE=function(t,r,n){return t=+t,r=r>>>0,n||Ip(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};ta.prototype.writeBigInt64LE=I_(function(t,r=0){return Z3e(this,t,r,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});ta.prototype.writeBigInt64BE=I_(function(t,r=0){return Y3e(this,t,r,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});function K3e(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 J3e(e,t,r,n,i){return t=+t,r=r>>>0,i||K3e(e,t,r,4,34028234663852886e22,-34028234663852886e22),ZT.write(e,t,r,n,23,4),r+4}ta.prototype.writeFloatLE=function(t,r,n){return J3e(this,t,r,!0,n)};ta.prototype.writeFloatBE=function(t,r,n){return J3e(this,t,r,!1,n)};function $3e(e,t,r,n,i){return t=+t,r=r>>>0,i||K3e(e,t,r,8,17976931348623157e292,-17976931348623157e292),ZT.write(e,t,r,n,52,8),r+8}ta.prototype.writeDoubleLE=function(t,r,n){return $3e(this,t,r,!0,n)};ta.prototype.writeDoubleBE=function(t,r,n){return $3e(this,t,r,!1,n)};ta.prototype.copy=function(t,r,n,i){if(!ta.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};ta.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"&&!ta.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=ta.isBuffer(t)?t:ta.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 XT={};function mH(e,t,r){XT[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}`}}}mH("ERR_BUFFER_OUT_OF_BOUNDS",function(e){return e?`${e} is outside of buffer bounds`:"Attempt to access memory outside buffer bounds"},RangeError);mH("ERR_INVALID_ARG_TYPE",function(e,t){return`The "${e}" argument must be of type number. Received type ${typeof t}`},TypeError);mH("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=V3e(String(r)):typeof r=="bigint"&&(i=String(r),(r>BigInt(2)**BigInt(32)||r<-(BigInt(2)**BigInt(32)))&&(i=V3e(i)),i+="n"),n+=` It must be ${t}. Received ${i}`,n},RangeError);function V3e(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 R3t(e,t,r){YT(t,"offset"),(e[t]===void 0||e[t+r]===void 0)&&B4(t,e.length-(r+1))}function Q3e(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 XT.ERR_OUT_OF_RANGE("value",s,e)}R3t(n,i,a)}function YT(e,t){if(typeof e!="number")throw new XT.ERR_INVALID_ARG_TYPE(t,"number",e)}function B4(e,t,r){throw Math.floor(e)!==e?(YT(e,r),new XT.ERR_OUT_OF_RANGE(r||"offset","an integer",e)):t<0?new XT.ERR_BUFFER_OUT_OF_BOUNDS:new XT.ERR_OUT_OF_RANGE(r||"offset",`>= ${r?1:0} and <= ${t}`,e)}var D3t=/[^+/0-9A-Za-z-_]/g;function F3t(e){if(e=e.split("=")[0],e=e.trim().replace(D3t,""),e.length<2)return"";for(;e.length%4!==0;)e=e+"=";return e}function vH(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 z3t(e){let t=[];for(let r=0;r<e.length;++r)t.push(e.charCodeAt(r)&255);return t}function O3t(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 eTe(e){return fH.toByteArray(F3t(e))}function U8(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 Om(e,t){return e instanceof t||e!=null&&e.constructor!=null&&e.constructor.name!=null&&e.constructor.name===t.name}function yH(e){return e!==e}var q3t=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"?B3t:e}function B3t(){throw new Error("BigInt not supported")}});var V8=ye((Bcr,tTe)=>{"use strict";tTe.exports=function(){if(typeof Symbol!="function"||typeof Object.getOwnPropertySymbols!="function")return!1;if(typeof Symbol.iterator=="symbol")return!0;var t={},r=Symbol("test"),n=Object(r);if(typeof r=="string"||Object.prototype.toString.call(r)!=="[object Symbol]"||Object.prototype.toString.call(n)!=="[object Symbol]")return!1;var i=42;t[r]=i;for(var a in t)return!1;if(typeof Object.keys=="function"&&Object.keys(t).length!==0||typeof Object.getOwnPropertyNames=="function"&&Object.getOwnPropertyNames(t).length!==0)return!1;var o=Object.getOwnPropertySymbols(t);if(o.length!==1||o[0]!==r||!Object.prototype.propertyIsEnumerable.call(t,r))return!1;if(typeof Object.getOwnPropertyDescriptor=="function"){var s=Object.getOwnPropertyDescriptor(t,r);if(s.value!==i||s.enumerable!==!0)return!1}return!0}});var N4=ye((Ncr,rTe)=>{"use strict";var N3t=V8();rTe.exports=function(){return N3t()&&!!Symbol.toStringTag}});var _H=ye((Ucr,iTe)=>{"use strict";iTe.exports=Object});var aTe=ye((Vcr,nTe)=>{"use strict";nTe.exports=Error});var sTe=ye((Gcr,oTe)=>{"use strict";oTe.exports=EvalError});var uTe=ye((Hcr,lTe)=>{"use strict";lTe.exports=RangeError});var fTe=ye((jcr,cTe)=>{"use strict";cTe.exports=ReferenceError});var xH=ye((Wcr,hTe)=>{"use strict";hTe.exports=SyntaxError});var JT=ye((Xcr,dTe)=>{"use strict";dTe.exports=TypeError});var pTe=ye((Zcr,vTe)=>{"use strict";vTe.exports=URIError});var mTe=ye((Ycr,gTe)=>{"use strict";gTe.exports=Math.abs});var _Te=ye((Kcr,yTe)=>{"use strict";yTe.exports=Math.floor});var bTe=ye((Jcr,xTe)=>{"use strict";xTe.exports=Math.max});var TTe=ye(($cr,wTe)=>{"use strict";wTe.exports=Math.min});var STe=ye((Qcr,ATe)=>{"use strict";ATe.exports=Math.pow});var ETe=ye((efr,MTe)=>{"use strict";MTe.exports=Math.round});var kTe=ye((tfr,CTe)=>{"use strict";CTe.exports=Number.isNaN||function(t){return t!==t}});var PTe=ye((rfr,LTe)=>{"use strict";var U3t=kTe();LTe.exports=function(t){return U3t(t)||t===0?t:t<0?-1:1}});var RTe=ye((ifr,ITe)=>{"use strict";ITe.exports=Object.getOwnPropertyDescriptor});var c2=ye((nfr,DTe)=>{"use strict";var G8=RTe();if(G8)try{G8([],"length")}catch(e){G8=null}DTe.exports=G8});var U4=ye((afr,FTe)=>{"use strict";var H8=Object.defineProperty||!1;if(H8)try{H8({},"a",{value:1})}catch(e){H8=!1}FTe.exports=H8});var qTe=ye((ofr,OTe)=>{"use strict";var zTe=typeof Symbol!="undefined"&&Symbol,V3t=V8();OTe.exports=function(){return typeof zTe!="function"||typeof Symbol!="function"||typeof zTe("foo")!="symbol"||typeof Symbol("bar")!="symbol"?!1:V3t()}});var bH=ye((sfr,BTe)=>{"use strict";BTe.exports=typeof Reflect!="undefined"&&Reflect.getPrototypeOf||null});var wH=ye((lfr,NTe)=>{"use strict";var G3t=_H();NTe.exports=G3t.getPrototypeOf||null});var GTe=ye((ufr,VTe)=>{"use strict";var H3t="Function.prototype.bind called on incompatible ",j3t=Object.prototype.toString,W3t=Math.max,X3t="[object Function]",UTe=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},Z3t=function(t,r){for(var n=[],i=r||0,a=0;i<t.length;i+=1,a+=1)n[a]=t[i];return n},Y3t=function(e,t){for(var r="",n=0;n<e.length;n+=1)r+=e[n],n+1<e.length&&(r+=t);return r};VTe.exports=function(t){var r=this;if(typeof r!="function"||j3t.apply(r)!==X3t)throw new TypeError(H3t+r);for(var n=Z3t(arguments,1),i,a=function(){if(this instanceof i){var c=r.apply(this,UTe(n,arguments));return Object(c)===c?c:this}return r.apply(t,UTe(n,arguments))},o=W3t(0,r.length-n.length),s=[],l=0;l<o;l++)s[l]="$"+l;if(i=Function("binder","return function ("+Y3t(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 $T=ye((cfr,HTe)=>{"use strict";var K3t=GTe();HTe.exports=Function.prototype.bind||K3t});var j8=ye((ffr,jTe)=>{"use strict";jTe.exports=Function.prototype.call});var TH=ye((hfr,WTe)=>{"use strict";WTe.exports=Function.prototype.apply});var ZTe=ye((dfr,XTe)=>{"use strict";XTe.exports=typeof Reflect!="undefined"&&Reflect&&Reflect.apply});var KTe=ye((vfr,YTe)=>{"use strict";var J3t=$T(),$3t=TH(),Q3t=j8(),eTt=ZTe();YTe.exports=eTt||J3t.call(Q3t,$3t)});var $Te=ye((pfr,JTe)=>{"use strict";var tTt=$T(),rTt=JT(),iTt=j8(),nTt=KTe();JTe.exports=function(t){if(t.length<1||typeof t[0]!="function")throw new rTt("a function is required");return nTt(tTt,iTt,t)}});var nAe=ye((gfr,iAe)=>{"use strict";var aTt=$Te(),QTe=c2(),tAe;try{tAe=[].__proto__===Array.prototype}catch(e){if(!e||typeof e!="object"||!("code"in e)||e.code!=="ERR_PROTO_ACCESS")throw e}var AH=!!tAe&&QTe&&QTe(Object.prototype,"__proto__"),rAe=Object,eAe=rAe.getPrototypeOf;iAe.exports=AH&&typeof AH.get=="function"?aTt([AH.get]):typeof eAe=="function"?function(t){return eAe(t==null?t:rAe(t))}:!1});var uAe=ye((mfr,lAe)=>{"use strict";var aAe=bH(),oAe=wH(),sAe=nAe();lAe.exports=aAe?function(t){return aAe(t)}:oAe?function(t){if(!t||typeof t!="object"&&typeof t!="function")throw new TypeError("getProto: not an object");return oAe(t)}:sAe?function(t){return sAe(t)}:null});var fAe=ye((yfr,cAe)=>{"use strict";var oTt=Function.prototype.call,sTt=Object.prototype.hasOwnProperty,lTt=$T();cAe.exports=lTt.call(oTt,sTt)});var Z8=ye((_fr,mAe)=>{"use strict";var uu,uTt=_H(),cTt=aTe(),fTt=sTe(),hTt=uTe(),dTt=fTe(),rA=xH(),tA=JT(),vTt=pTe(),pTt=mTe(),gTt=_Te(),mTt=bTe(),yTt=TTe(),_Tt=STe(),xTt=ETe(),bTt=PTe(),pAe=Function,SH=function(e){try{return pAe('"use strict"; return ('+e+").constructor;")()}catch(t){}},V4=c2(),wTt=U4(),MH=function(){throw new tA},TTt=V4?function(){try{return arguments.callee,MH}catch(e){try{return V4(arguments,"callee").get}catch(t){return MH}}}():MH,QT=qTe()(),tv=uAe(),ATt=wH(),STt=bH(),gAe=TH(),G4=j8(),eA={},MTt=typeof Uint8Array=="undefined"||!tv?uu:tv(Uint8Array),f2={__proto__:null,"%AggregateError%":typeof AggregateError=="undefined"?uu:AggregateError,"%Array%":Array,"%ArrayBuffer%":typeof ArrayBuffer=="undefined"?uu:ArrayBuffer,"%ArrayIteratorPrototype%":QT&&tv?tv([][Symbol.iterator]()):uu,"%AsyncFromSyncIteratorPrototype%":uu,"%AsyncFunction%":eA,"%AsyncGenerator%":eA,"%AsyncGeneratorFunction%":eA,"%AsyncIteratorPrototype%":eA,"%Atomics%":typeof Atomics=="undefined"?uu:Atomics,"%BigInt%":typeof BigInt=="undefined"?uu:BigInt,"%BigInt64Array%":typeof BigInt64Array=="undefined"?uu:BigInt64Array,"%BigUint64Array%":typeof BigUint64Array=="undefined"?uu:BigUint64Array,"%Boolean%":Boolean,"%DataView%":typeof DataView=="undefined"?uu:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":cTt,"%eval%":eval,"%EvalError%":fTt,"%Float16Array%":typeof Float16Array=="undefined"?uu:Float16Array,"%Float32Array%":typeof Float32Array=="undefined"?uu:Float32Array,"%Float64Array%":typeof Float64Array=="undefined"?uu:Float64Array,"%FinalizationRegistry%":typeof FinalizationRegistry=="undefined"?uu:FinalizationRegistry,"%Function%":pAe,"%GeneratorFunction%":eA,"%Int8Array%":typeof Int8Array=="undefined"?uu:Int8Array,"%Int16Array%":typeof Int16Array=="undefined"?uu:Int16Array,"%Int32Array%":typeof Int32Array=="undefined"?uu:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":QT&&tv?tv(tv([][Symbol.iterator]())):uu,"%JSON%":typeof JSON=="object"?JSON:uu,"%Map%":typeof Map=="undefined"?uu:Map,"%MapIteratorPrototype%":typeof Map=="undefined"||!QT||!tv?uu:tv(new Map()[Symbol.iterator]()),"%Math%":Math,"%Number%":Number,"%Object%":uTt,"%Object.getOwnPropertyDescriptor%":V4,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":typeof Promise=="undefined"?uu:Promise,"%Proxy%":typeof Proxy=="undefined"?uu:Proxy,"%RangeError%":hTt,"%ReferenceError%":dTt,"%Reflect%":typeof Reflect=="undefined"?uu:Reflect,"%RegExp%":RegExp,"%Set%":typeof Set=="undefined"?uu:Set,"%SetIteratorPrototype%":typeof Set=="undefined"||!QT||!tv?uu:tv(new Set()[Symbol.iterator]()),"%SharedArrayBuffer%":typeof SharedArrayBuffer=="undefined"?uu:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":QT&&tv?tv(""[Symbol.iterator]()):uu,"%Symbol%":QT?Symbol:uu,"%SyntaxError%":rA,"%ThrowTypeError%":TTt,"%TypedArray%":MTt,"%TypeError%":tA,"%Uint8Array%":typeof Uint8Array=="undefined"?uu:Uint8Array,"%Uint8ClampedArray%":typeof Uint8ClampedArray=="undefined"?uu:Uint8ClampedArray,"%Uint16Array%":typeof Uint16Array=="undefined"?uu:Uint16Array,"%Uint32Array%":typeof Uint32Array=="undefined"?uu:Uint32Array,"%URIError%":vTt,"%WeakMap%":typeof WeakMap=="undefined"?uu:WeakMap,"%WeakRef%":typeof WeakRef=="undefined"?uu:WeakRef,"%WeakSet%":typeof WeakSet=="undefined"?uu:WeakSet,"%Function.prototype.call%":G4,"%Function.prototype.apply%":gAe,"%Object.defineProperty%":wTt,"%Object.getPrototypeOf%":ATt,"%Math.abs%":pTt,"%Math.floor%":gTt,"%Math.max%":mTt,"%Math.min%":yTt,"%Math.pow%":_Tt,"%Math.round%":xTt,"%Math.sign%":bTt,"%Reflect.getPrototypeOf%":STt};if(tv)try{null.error}catch(e){hAe=tv(tv(e)),f2["%Error.prototype%"]=hAe}var hAe,ETt=function e(t){var r;if(t==="%AsyncFunction%")r=SH("async function () {}");else if(t==="%GeneratorFunction%")r=SH("function* () {}");else if(t==="%AsyncGeneratorFunction%")r=SH("async function* () {}");else if(t==="%AsyncGenerator%"){var n=e("%AsyncGeneratorFunction%");n&&(r=n.prototype)}else if(t==="%AsyncIteratorPrototype%"){var i=e("%AsyncGenerator%");i&&tv&&(r=tv(i.prototype))}return f2[t]=r,r},dAe={__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"]},H4=$T(),W8=fAe(),CTt=H4.call(G4,Array.prototype.concat),kTt=H4.call(gAe,Array.prototype.splice),vAe=H4.call(G4,String.prototype.replace),X8=H4.call(G4,String.prototype.slice),LTt=H4.call(G4,RegExp.prototype.exec),PTt=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,ITt=/\\(\\)?/g,RTt=function(t){var r=X8(t,0,1),n=X8(t,-1);if(r==="%"&&n!=="%")throw new rA("invalid intrinsic syntax, expected closing `%`");if(n==="%"&&r!=="%")throw new rA("invalid intrinsic syntax, expected opening `%`");var i=[];return vAe(t,PTt,function(a,o,s,l){i[i.length]=s?vAe(l,ITt,"$1"):o||a}),i},DTt=function(t,r){var n=t,i;if(W8(dAe,n)&&(i=dAe[n],n="%"+i[0]+"%"),W8(f2,n)){var a=f2[n];if(a===eA&&(a=ETt(n)),typeof a=="undefined"&&!r)throw new tA("intrinsic "+t+" exists, but is not available. Please file an issue!");return{alias:i,name:n,value:a}}throw new rA("intrinsic "+t+" does not exist!")};mAe.exports=function(t,r){if(typeof t!="string"||t.length===0)throw new tA("intrinsic name must be a non-empty string");if(arguments.length>1&&typeof r!="boolean")throw new tA('"allowMissing" argument must be a boolean');if(LTt(/^%?[^%]*%?$/,t)===null)throw new rA("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var n=RTt(t),i=n.length>0?n[0]:"",a=DTt("%"+i+"%",r),o=a.name,s=a.value,l=!1,u=a.alias;u&&(i=u[0],kTt(n,CTt([0,1],u)));for(var c=1,f=!0;c<n.length;c+=1){var h=n[c],d=X8(h,0,1),v=X8(h,-1);if((d==='"'||d==="'"||d==="`"||v==='"'||v==="'"||v==="`")&&d!==v)throw new rA("property names with quotes must have matching quotes");if((h==="constructor"||!f)&&(l=!0),i+="."+h,o="%"+i+"%",W8(f2,o))s=f2[o];else if(s!=null){if(!(h in s)){if(!r)throw new tA("base intrinsic for "+t+" exists, but the property is not available.");return}if(V4&&c+1>=n.length){var x=V4(s,h);f=!!x,f&&"get"in x&&!("originalValue"in x.get)?s=x.get:s=s[h]}else f=W8(s,h),s=s[h];f&&!l&&(f2[o]=s)}}return s}});var bAe=ye((xfr,xAe)=>{"use strict";var yAe=U4(),FTt=xH(),iA=JT(),_Ae=c2();xAe.exports=function(t,r,n){if(!t||typeof t!="object"&&typeof t!="function")throw new iA("`obj` must be an object or a function`");if(typeof r!="string"&&typeof r!="symbol")throw new iA("`property` must be a string or a symbol`");if(arguments.length>3&&typeof arguments[3]!="boolean"&&arguments[3]!==null)throw new iA("`nonEnumerable`, if provided, must be a boolean or null");if(arguments.length>4&&typeof arguments[4]!="boolean"&&arguments[4]!==null)throw new iA("`nonWritable`, if provided, must be a boolean or null");if(arguments.length>5&&typeof arguments[5]!="boolean"&&arguments[5]!==null)throw new iA("`nonConfigurable`, if provided, must be a boolean or null");if(arguments.length>6&&typeof arguments[6]!="boolean")throw new iA("`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=!!_Ae&&_Ae(t,r);if(yAe)yAe(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 FTt("This environment does not support defining a property as non-configurable, non-writable, or non-enumerable.")}});var CH=ye((bfr,TAe)=>{"use strict";var EH=U4(),wAe=function(){return!!EH};wAe.hasArrayLengthDefineBug=function(){if(!EH)return null;try{return EH([],"length",{value:1}).length!==1}catch(t){return!0}};TAe.exports=wAe});var CAe=ye((wfr,EAe)=>{"use strict";var zTt=Z8(),AAe=bAe(),OTt=CH()(),SAe=c2(),MAe=JT(),qTt=zTt("%Math.floor%");EAe.exports=function(t,r){if(typeof t!="function")throw new MAe("`fn` is not a function");if(typeof r!="number"||r<0||r>4294967295||qTt(r)!==r)throw new MAe("`length` must be a positive 32-bit integer");var n=arguments.length>2&&!!arguments[2],i=!0,a=!0;if("length"in t&&SAe){var o=SAe(t,"length");o&&!o.configurable&&(i=!1),o&&!o.writable&&(a=!1)}return(i||a||!n)&&(OTt?AAe(t,"length",r,!0,!0):AAe(t,"length",r)),t}});var j4=ye((Tfr,Y8)=>{"use strict";var kH=$T(),K8=Z8(),BTt=CAe(),NTt=JT(),PAe=K8("%Function.prototype.apply%"),IAe=K8("%Function.prototype.call%"),RAe=K8("%Reflect.apply%",!0)||kH.call(IAe,PAe),kAe=U4(),UTt=K8("%Math.max%");Y8.exports=function(t){if(typeof t!="function")throw new NTt("a function is required");var r=RAe(kH,IAe,arguments);return BTt(r,1+UTt(0,t.length-(arguments.length-1)),!0)};var LAe=function(){return RAe(kH,PAe,arguments)};kAe?kAe(Y8.exports,"apply",{value:LAe}):Y8.exports.apply=LAe});var nA=ye((Afr,zAe)=>{"use strict";var DAe=Z8(),FAe=j4(),VTt=FAe(DAe("String.prototype.indexOf"));zAe.exports=function(t,r){var n=DAe(t,!!r);return typeof n=="function"&&VTt(t,".prototype.")>-1?FAe(n):n}});var BAe=ye((Sfr,qAe)=>{"use strict";var GTt=N4()(),HTt=nA(),LH=HTt("Object.prototype.toString"),J8=function(t){return GTt&&t&&typeof t=="object"&&Symbol.toStringTag in t?!1:LH(t)==="[object Arguments]"},OAe=function(t){return J8(t)?!0:t!==null&&typeof t=="object"&&typeof t.length=="number"&&t.length>=0&&LH(t)!=="[object Array]"&&LH(t.callee)==="[object Function]"},jTt=function(){return J8(arguments)}();J8.isLegacyArguments=OAe;qAe.exports=jTt?J8:OAe});var VAe=ye((Mfr,UAe)=>{"use strict";var WTt=Object.prototype.toString,XTt=Function.prototype.toString,ZTt=/^\s*(?:function)?\*/,NAe=N4()(),PH=Object.getPrototypeOf,YTt=function(){if(!NAe)return!1;try{return Function("return function*() {}")()}catch(e){}},IH;UAe.exports=function(t){if(typeof t!="function")return!1;if(ZTt.test(XTt.call(t)))return!0;if(!NAe){var r=WTt.call(t);return r==="[object GeneratorFunction]"}if(!PH)return!1;if(typeof IH=="undefined"){var n=YTt();IH=n?PH(n):!1}return PH(t)===IH}});var WAe=ye((Efr,jAe)=>{"use strict";var HAe=Function.prototype.toString,aA=typeof Reflect=="object"&&Reflect!==null&&Reflect.apply,DH,$8;if(typeof aA=="function"&&typeof Object.defineProperty=="function")try{DH=Object.defineProperty({},"length",{get:function(){throw $8}}),$8={},aA(function(){throw 42},null,DH)}catch(e){e!==$8&&(aA=null)}else aA=null;var KTt=/^\s*class\b/,FH=function(t){try{var r=HAe.call(t);return KTt.test(r)}catch(n){return!1}},RH=function(t){try{return FH(t)?!1:(HAe.call(t),!0)}catch(r){return!1}},Q8=Object.prototype.toString,JTt="[object Object]",$Tt="[object Function]",QTt="[object GeneratorFunction]",eAt="[object HTMLAllCollection]",tAt="[object HTML document.all class]",rAt="[object HTMLCollection]",iAt=typeof Symbol=="function"&&!!Symbol.toStringTag,nAt=!(0 in[,]),zH=function(){return!1};typeof document=="object"&&(GAe=document.all,Q8.call(GAe)===Q8.call(document.all)&&(zH=function(t){if((nAt||!t)&&(typeof t=="undefined"||typeof t=="object"))try{var r=Q8.call(t);return(r===eAt||r===tAt||r===rAt||r===JTt)&&t("")==null}catch(n){}return!1}));var GAe;jAe.exports=aA?function(t){if(zH(t))return!0;if(!t||typeof t!="function"&&typeof t!="object")return!1;try{aA(t,null,DH)}catch(r){if(r!==$8)return!1}return!FH(t)&&RH(t)}:function(t){if(zH(t))return!0;if(!t||typeof t!="function"&&typeof t!="object")return!1;if(iAt)return RH(t);if(FH(t))return!1;var r=Q8.call(t);return r!==$Tt&&r!==QTt&&!/^\[object HTML/.test(r)?!1:RH(t)}});var OH=ye((Cfr,ZAe)=>{"use strict";var aAt=WAe(),oAt=Object.prototype.toString,XAe=Object.prototype.hasOwnProperty,sAt=function(t,r,n){for(var i=0,a=t.length;i<a;i++)XAe.call(t,i)&&(n==null?r(t[i],i,t):r.call(n,t[i],i,t))},lAt=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)},uAt=function(t,r,n){for(var i in t)XAe.call(t,i)&&(n==null?r(t[i],i,t):r.call(n,t[i],i,t))},cAt=function(t,r,n){if(!aAt(r))throw new TypeError("iterator must be a function");var i;arguments.length>=3&&(i=n),oAt.call(t)==="[object Array]"?sAt(t,r,i):typeof t=="string"?lAt(t,r,i):uAt(t,r,i)};ZAe.exports=cAt});var BH=ye((kfr,YAe)=>{"use strict";var qH=["BigInt64Array","BigUint64Array","Float32Array","Float64Array","Int16Array","Int32Array","Int8Array","Uint16Array","Uint32Array","Uint8Array","Uint8ClampedArray"],fAt=typeof globalThis=="undefined"?window:globalThis;YAe.exports=function(){for(var t=[],r=0;r<qH.length;r++)typeof fAt[qH[r]]=="function"&&(t[t.length]=qH[r]);return t}});var e5e=ye((Lfr,QAe)=>{"use strict";var tR=OH(),hAt=BH(),KAe=j4(),VH=nA(),eR=c2(),dAt=VH("Object.prototype.toString"),$Ae=N4()(),JAe=typeof globalThis=="undefined"?window:globalThis,UH=hAt(),GH=VH("String.prototype.slice"),NH=Object.getPrototypeOf,vAt=VH("Array.prototype.indexOf",!0)||function(t,r){for(var n=0;n<t.length;n+=1)if(t[n]===r)return n;return-1},rR={__proto__:null};$Ae&&eR&&NH?tR(UH,function(e){var t=new JAe[e];if(Symbol.toStringTag in t){var r=NH(t),n=eR(r,Symbol.toStringTag);if(!n){var i=NH(r);n=eR(i,Symbol.toStringTag)}rR["$"+e]=KAe(n.get)}}):tR(UH,function(e){var t=new JAe[e],r=t.slice||t.set;r&&(rR["$"+e]=KAe(r))});var pAt=function(t){var r=!1;return tR(rR,function(n,i){if(!r)try{"$"+n(t)===i&&(r=GH(i,1))}catch(a){}}),r},gAt=function(t){var r=!1;return tR(rR,function(n,i){if(!r)try{n(t),r=GH(i,1)}catch(a){}}),r};QAe.exports=function(t){if(!t||typeof t!="object")return!1;if(!$Ae){var r=GH(dAt(t),8,-1);return vAt(UH,r)>-1?r:r!=="Object"?!1:gAt(t)}return eR?pAt(t):null}});var o5e=ye((Pfr,a5e)=>{"use strict";var t5e=OH(),mAt=BH(),jH=nA(),yAt=jH("Object.prototype.toString"),r5e=N4()(),iR=c2(),_At=typeof globalThis=="undefined"?window:globalThis,i5e=mAt(),xAt=jH("Array.prototype.indexOf",!0)||function(t,r){for(var n=0;n<t.length;n+=1)if(t[n]===r)return n;return-1},bAt=jH("String.prototype.slice"),n5e={},HH=Object.getPrototypeOf;r5e&&iR&&HH&&t5e(i5e,function(e){var t=new _At[e];if(Symbol.toStringTag in t){var r=HH(t),n=iR(r,Symbol.toStringTag);if(!n){var i=HH(r);n=iR(i,Symbol.toStringTag)}n5e[e]=n.get}});var wAt=function(t){var r=!1;return t5e(n5e,function(n,i){if(!r)try{r=n.call(t)===i}catch(a){}}),r};a5e.exports=function(t){if(!t||typeof t!="object")return!1;if(!r5e||!(Symbol.toStringTag in t)){var r=bAt(yAt(t),8,-1);return xAt(i5e,r)>-1}return iR?wAt(t):!1}});var ZH=ye(cu=>{"use strict";var TAt=BAe(),AAt=VAe(),Gg=e5e(),s5e=o5e();function oA(e){return e.call.bind(e)}var l5e=typeof BigInt!="undefined",u5e=typeof Symbol!="undefined",Z0=oA(Object.prototype.toString),SAt=oA(Number.prototype.valueOf),MAt=oA(String.prototype.valueOf),EAt=oA(Boolean.prototype.valueOf);l5e&&(c5e=oA(BigInt.prototype.valueOf));var c5e;u5e&&(f5e=oA(Symbol.prototype.valueOf));var f5e;function X4(e,t){if(typeof e!="object")return!1;try{return t(e),!0}catch(r){return!1}}cu.isArgumentsObject=TAt;cu.isGeneratorFunction=AAt;cu.isTypedArray=s5e;function CAt(e){return typeof Promise!="undefined"&&e instanceof Promise||e!==null&&typeof e=="object"&&typeof e.then=="function"&&typeof e.catch=="function"}cu.isPromise=CAt;function kAt(e){return typeof ArrayBuffer!="undefined"&&ArrayBuffer.isView?ArrayBuffer.isView(e):s5e(e)||d5e(e)}cu.isArrayBufferView=kAt;function LAt(e){return Gg(e)==="Uint8Array"}cu.isUint8Array=LAt;function PAt(e){return Gg(e)==="Uint8ClampedArray"}cu.isUint8ClampedArray=PAt;function IAt(e){return Gg(e)==="Uint16Array"}cu.isUint16Array=IAt;function RAt(e){return Gg(e)==="Uint32Array"}cu.isUint32Array=RAt;function DAt(e){return Gg(e)==="Int8Array"}cu.isInt8Array=DAt;function FAt(e){return Gg(e)==="Int16Array"}cu.isInt16Array=FAt;function zAt(e){return Gg(e)==="Int32Array"}cu.isInt32Array=zAt;function OAt(e){return Gg(e)==="Float32Array"}cu.isFloat32Array=OAt;function qAt(e){return Gg(e)==="Float64Array"}cu.isFloat64Array=qAt;function BAt(e){return Gg(e)==="BigInt64Array"}cu.isBigInt64Array=BAt;function NAt(e){return Gg(e)==="BigUint64Array"}cu.isBigUint64Array=NAt;function nR(e){return Z0(e)==="[object Map]"}nR.working=typeof Map!="undefined"&&nR(new Map);function UAt(e){return typeof Map=="undefined"?!1:nR.working?nR(e):e instanceof Map}cu.isMap=UAt;function aR(e){return Z0(e)==="[object Set]"}aR.working=typeof Set!="undefined"&&aR(new Set);function VAt(e){return typeof Set=="undefined"?!1:aR.working?aR(e):e instanceof Set}cu.isSet=VAt;function oR(e){return Z0(e)==="[object WeakMap]"}oR.working=typeof WeakMap!="undefined"&&oR(new WeakMap);function GAt(e){return typeof WeakMap=="undefined"?!1:oR.working?oR(e):e instanceof WeakMap}cu.isWeakMap=GAt;function XH(e){return Z0(e)==="[object WeakSet]"}XH.working=typeof WeakSet!="undefined"&&XH(new WeakSet);function HAt(e){return XH(e)}cu.isWeakSet=HAt;function sR(e){return Z0(e)==="[object ArrayBuffer]"}sR.working=typeof ArrayBuffer!="undefined"&&sR(new ArrayBuffer);function h5e(e){return typeof ArrayBuffer=="undefined"?!1:sR.working?sR(e):e instanceof ArrayBuffer}cu.isArrayBuffer=h5e;function lR(e){return Z0(e)==="[object DataView]"}lR.working=typeof ArrayBuffer!="undefined"&&typeof DataView!="undefined"&&lR(new DataView(new ArrayBuffer(1),0,1));function d5e(e){return typeof DataView=="undefined"?!1:lR.working?lR(e):e instanceof DataView}cu.isDataView=d5e;var WH=typeof SharedArrayBuffer!="undefined"?SharedArrayBuffer:void 0;function W4(e){return Z0(e)==="[object SharedArrayBuffer]"}function v5e(e){return typeof WH=="undefined"?!1:(typeof W4.working=="undefined"&&(W4.working=W4(new WH)),W4.working?W4(e):e instanceof WH)}cu.isSharedArrayBuffer=v5e;function jAt(e){return Z0(e)==="[object AsyncFunction]"}cu.isAsyncFunction=jAt;function WAt(e){return Z0(e)==="[object Map Iterator]"}cu.isMapIterator=WAt;function XAt(e){return Z0(e)==="[object Set Iterator]"}cu.isSetIterator=XAt;function ZAt(e){return Z0(e)==="[object Generator]"}cu.isGeneratorObject=ZAt;function YAt(e){return Z0(e)==="[object WebAssembly.Module]"}cu.isWebAssemblyCompiledModule=YAt;function p5e(e){return X4(e,SAt)}cu.isNumberObject=p5e;function g5e(e){return X4(e,MAt)}cu.isStringObject=g5e;function m5e(e){return X4(e,EAt)}cu.isBooleanObject=m5e;function y5e(e){return l5e&&X4(e,c5e)}cu.isBigIntObject=y5e;function _5e(e){return u5e&&X4(e,f5e)}cu.isSymbolObject=_5e;function KAt(e){return p5e(e)||g5e(e)||m5e(e)||y5e(e)||_5e(e)}cu.isBoxedPrimitive=KAt;function JAt(e){return typeof Uint8Array!="undefined"&&(h5e(e)||v5e(e))}cu.isAnyArrayBuffer=JAt;["isProxy","isExternal","isModuleNamespaceObject"].forEach(function(e){Object.defineProperty(cu,e,{enumerable:!1,value:function(){throw new Error(e+" is not supported in userland")}})})});var YH=ye((Rfr,x5e)=>{x5e.exports=function(t){return t&&typeof t=="object"&&typeof t.copy=="function"&&typeof t.fill=="function"&&typeof t.readUInt8=="function"}});var tj=ye(fu=>{var b5e=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},$At=/%[sdj%]/g;fu.format=function(e){if(!pR(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($At,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])vR(o)||!sA(o)?a+=" "+o:a+=" "+R_(o);return a};fu.deprecate=function(e,t){if(typeof process!="undefined"&&process.noDeprecation===!0)return e;if(typeof process=="undefined")return function(){return fu.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 uR={},w5e=/^$/;cR="false",cR=cR.replace(/[|\\{}()[\]^$+?.]/g,"\\$&").replace(/\*/g,".*").replace(/,/g,"$|^").toUpperCase(),w5e=new RegExp("^"+cR+"$","i");var cR;fu.debuglog=function(e){if(e=e.toUpperCase(),!uR[e])if(w5e.test(e)){var t=process.pid;uR[e]=function(){var r=fu.format.apply(fu,arguments);console.error("%s %d: %s",e,t,r)}}else uR[e]=function(){};return uR[e]};function R_(e,t){var r={seen:[],stylize:e5t};return arguments.length>=3&&(r.depth=arguments[2]),arguments.length>=4&&(r.colors=arguments[3]),QH(t)?r.showHidden=t:t&&fu._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=QAt),hR(r,e,r.depth)}fu.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 QAt(e,t){var r=R_.styles[t];return r?"\x1B["+R_.colors[r][0]+"m"+e+"\x1B["+R_.colors[r][1]+"m":e}function e5t(e,t){return e}function t5t(e){var t={};return e.forEach(function(r,n){t[r]=!0}),t}function hR(e,t,r){if(e.customInspect&&t&&fR(t.inspect)&&t.inspect!==fu.inspect&&!(t.constructor&&t.constructor.prototype===t)){var n=t.inspect(r,e);return pR(n)||(n=hR(e,n,r)),n}var i=r5t(e,t);if(i)return i;var a=Object.keys(t),o=t5t(a);if(e.showHidden&&(a=Object.getOwnPropertyNames(t)),Y4(t)&&(a.indexOf("message")>=0||a.indexOf("description")>=0))return KH(t);if(a.length===0){if(fR(t)){var s=t.name?": "+t.name:"";return e.stylize("[Function"+s+"]","special")}if(Z4(t))return e.stylize(RegExp.prototype.toString.call(t),"regexp");if(dR(t))return e.stylize(Date.prototype.toString.call(t),"date");if(Y4(t))return KH(t)}var l="",u=!1,c=["{","}"];if(T5e(t)&&(u=!0,c=["[","]"]),fR(t)){var f=t.name?": "+t.name:"";l=" [Function"+f+"]"}if(Z4(t)&&(l=" "+RegExp.prototype.toString.call(t)),dR(t)&&(l=" "+Date.prototype.toUTCString.call(t)),Y4(t)&&(l=" "+KH(t)),a.length===0&&(!u||t.length==0))return c[0]+l+c[1];if(r<0)return Z4(t)?e.stylize(RegExp.prototype.toString.call(t),"regexp"):e.stylize("[Object]","special");e.seen.push(t);var h;return u?h=i5t(e,t,r,o,a):h=a.map(function(d){return $H(e,t,r,o,d,u)}),e.seen.pop(),n5t(h,l,c)}function r5t(e,t){if(d2(t))return e.stylize("undefined","undefined");if(pR(t)){var r="'"+JSON.stringify(t).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(r,"string")}if(A5e(t))return e.stylize(""+t,"number");if(QH(t))return e.stylize(""+t,"boolean");if(vR(t))return e.stylize("null","null")}function KH(e){return"["+Error.prototype.toString.call(e)+"]"}function i5t(e,t,r,n,i){for(var a=[],o=0,s=t.length;o<s;++o)S5e(t,String(o))?a.push($H(e,t,r,n,String(o),!0)):a.push("");return i.forEach(function(l){l.match(/^\d+$/)||a.push($H(e,t,r,n,l,!0))}),a}function $H(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")),S5e(n,i)||(o="["+i+"]"),s||(e.seen.indexOf(l.value)<0?(vR(r)?s=hR(e,l.value,null):s=hR(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 n5t(e,t,r){var n=0,i=e.reduce(function(a,o){return n++,o.indexOf(`
|
||
`)>=0&&n++,a+o.replace(/\u001b\[\d\d?m/g,"").length+1},0);return i>60?r[0]+(t===""?"":t+`
|
||
`)+" "+e.join(`,
|
||
`)+" "+r[1]:r[0]+t+" "+e.join(", ")+" "+r[1]}fu.types=ZH();function T5e(e){return Array.isArray(e)}fu.isArray=T5e;function QH(e){return typeof e=="boolean"}fu.isBoolean=QH;function vR(e){return e===null}fu.isNull=vR;function a5t(e){return e==null}fu.isNullOrUndefined=a5t;function A5e(e){return typeof e=="number"}fu.isNumber=A5e;function pR(e){return typeof e=="string"}fu.isString=pR;function o5t(e){return typeof e=="symbol"}fu.isSymbol=o5t;function d2(e){return e===void 0}fu.isUndefined=d2;function Z4(e){return sA(e)&&ej(e)==="[object RegExp]"}fu.isRegExp=Z4;fu.types.isRegExp=Z4;function sA(e){return typeof e=="object"&&e!==null}fu.isObject=sA;function dR(e){return sA(e)&&ej(e)==="[object Date]"}fu.isDate=dR;fu.types.isDate=dR;function Y4(e){return sA(e)&&(ej(e)==="[object Error]"||e instanceof Error)}fu.isError=Y4;fu.types.isNativeError=Y4;function fR(e){return typeof e=="function"}fu.isFunction=fR;function s5t(e){return e===null||typeof e=="boolean"||typeof e=="number"||typeof e=="string"||typeof e=="symbol"||typeof e=="undefined"}fu.isPrimitive=s5t;fu.isBuffer=YH();function ej(e){return Object.prototype.toString.call(e)}function JH(e){return e<10?"0"+e.toString(10):e.toString(10)}var l5t=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function u5t(){var e=new Date,t=[JH(e.getHours()),JH(e.getMinutes()),JH(e.getSeconds())].join(":");return[e.getDate(),l5t[e.getMonth()],t].join(" ")}fu.log=function(){console.log("%s - %s",u5t(),fu.format.apply(fu,arguments))};fu.inherits=Uy();fu._extend=function(e,t){if(!t||!sA(t))return e;for(var r=Object.keys(t),n=r.length;n--;)e[r[n]]=t[r[n]];return e};function S5e(e,t){return Object.prototype.hasOwnProperty.call(e,t)}var h2=typeof Symbol!="undefined"?Symbol("util.promisify.custom"):void 0;fu.promisify=function(t){if(typeof t!="function")throw new TypeError('The "original" argument must be of type Function');if(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,b5e(t))};fu.promisify.custom=h2;function c5t(e,t){if(!e){var r=new Error("Promise was rejected with a falsy value");r.reason=e,e=r}return t(e)}function f5t(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(c5t.bind(null,s,o))})}return Object.setPrototypeOf(t,Object.getPrototypeOf(e)),Object.defineProperties(t,b5e(e)),t}fu.callbackify=f5t});var k5e=ye((Ffr,C5e)=>{"use strict";function M5e(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 h5t(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?M5e(Object(r),!0).forEach(function(n){d5t(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):M5e(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function d5t(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function v5t(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function E5e(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 p5t(e,t,r){return t&&E5e(e.prototype,t),r&&E5e(e,r),e}var g5t=u2(),gR=g5t.Buffer,m5t=tj(),rj=m5t.inspect,y5t=rj&&rj.custom||"inspect";function _5t(e,t,r){gR.prototype.copy.call(e,t,r)}C5e.exports=function(){function e(){v5t(this,e),this.head=null,this.tail=null,this.length=0}return p5t(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 gR.alloc(0);for(var n=gR.allocUnsafe(r>>>0),i=this.head,a=0;i;)_5t(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=gR.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:y5t,value:function(r,n){return rj(this,h5t({},n,{depth:0,customInspect:!1}))}}]),e}()});var nj=ye((zfr,P5e)=>{"use strict";function x5t(e,t){var r=this,n=this._readableState&&this._readableState.destroyed,i=this._writableState&&this._writableState.destroyed;return n||i?(t?t(e):e&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,process.nextTick(ij,this,e)):process.nextTick(ij,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(mR,r):(r._writableState.errorEmitted=!0,process.nextTick(L5e,r,a)):process.nextTick(L5e,r,a):t?(process.nextTick(mR,r),t(a)):process.nextTick(mR,r)}),this)}function L5e(e,t){ij(e,t),mR(e)}function mR(e){e._writableState&&!e._writableState.emitClose||e._readableState&&!e._readableState.emitClose||e.emit("close")}function b5t(){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 ij(e,t){e.emit("error",t)}function w5t(e,t){var r=e._readableState,n=e._writableState;r&&r.autoDestroy||n&&n.autoDestroy?e.destroy(t):e.emit("error",t)}P5e.exports={destroy:x5t,undestroy:b5t,errorOrDestroy:w5t}});var v2=ye((Ofr,D5e)=>{"use strict";function T5t(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,e.__proto__=t}var R5e={};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){T5t(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,R5e[e]=i}function I5e(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 S5t(e,t,r){return(r===void 0||r>e.length)&&(r=e.length),e.substring(r-t.length,r)===t}function M5t(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(S5t(e," argument"))i="The ".concat(e," ").concat(n," ").concat(I5e(t,"type"));else{var a=M5t(e,".")?"property":"argument";i='The "'.concat(e,'" ').concat(a," ").concat(n," ").concat(I5e(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");D5e.exports.codes=R5e});var aj=ye((qfr,F5e)=>{"use strict";var E5t=v2().codes.ERR_INVALID_OPT_VALUE;function C5t(e,t,r){return e.highWaterMark!=null?e.highWaterMark:t?e[r]:null}function k5t(e,t,r,n){var i=C5t(t,n,r);if(i!=null){if(!(isFinite(i)&&Math.floor(i)===i)||i<0){var a=n?r:"highWaterMark";throw new E5t(a,i)}return Math.floor(i)}return e.objectMode?16:16*1024}F5e.exports={getHighWaterMark:k5t}});var O5e=ye((Bfr,z5e)=>{z5e.exports=L5t;function L5t(e,t){if(oj("noDeprecation"))return e;var r=!1;function n(){if(!r){if(oj("throwDeprecation"))throw new Error(t);oj("traceDeprecation")?console.trace(t):console.warn(t),r=!0}return e.apply(this,arguments)}return n}function oj(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 uj=ye((Nfr,G5e)=>{"use strict";G5e.exports=Rh;function B5e(e){var t=this;this.next=null,this.entry=null,this.finish=function(){iSt(t,e)}}var lA;Rh.WritableState=J4;var P5t={deprecate:O5e()},N5e=lH(),_R=u2().Buffer,I5t=window.Uint8Array||function(){};function R5t(e){return _R.from(e)}function D5t(e){return _R.isBuffer(e)||e instanceof I5t}var lj=nj(),F5t=aj(),z5t=F5t.getHighWaterMark,D_=v2().codes,O5t=D_.ERR_INVALID_ARG_TYPE,q5t=D_.ERR_METHOD_NOT_IMPLEMENTED,B5t=D_.ERR_MULTIPLE_CALLBACK,N5t=D_.ERR_STREAM_CANNOT_PIPE,U5t=D_.ERR_STREAM_DESTROYED,V5t=D_.ERR_STREAM_NULL_VALUES,G5t=D_.ERR_STREAM_WRITE_AFTER_END,H5t=D_.ERR_UNKNOWN_ENCODING,uA=lj.errorOrDestroy;Uy()(Rh,N5e);function j5t(){}function J4(e,t,r){lA=lA||p2(),e=e||{},typeof r!="boolean"&&(r=t instanceof lA),this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.writableObjectMode),this.highWaterMark=z5t(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){$5t(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 B5e(this)}J4.prototype.getBuffer=function(){for(var t=this.bufferedRequest,r=[];t;)r.push(t),t=t.next;return r};(function(){try{Object.defineProperty(J4.prototype,"buffer",{get:P5t.deprecate(function(){return this.getBuffer()},"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(e){}})();var yR;typeof Symbol=="function"&&Symbol.hasInstance&&typeof Function.prototype[Symbol.hasInstance]=="function"?(yR=Function.prototype[Symbol.hasInstance],Object.defineProperty(Rh,Symbol.hasInstance,{value:function(t){return yR.call(this,t)?!0:this!==Rh?!1:t&&t._writableState instanceof J4}})):yR=function(t){return t instanceof this};function Rh(e){lA=lA||p2();var t=this instanceof lA;if(!t&&!yR.call(Rh,this))return new Rh(e);this._writableState=new J4(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)),N5e.call(this)}Rh.prototype.pipe=function(){uA(this,new N5t)};function W5t(e,t){var r=new G5t;uA(e,r),process.nextTick(t,r)}function X5t(e,t,r,n){var i;return r===null?i=new V5t:typeof r!="string"&&!t.objectMode&&(i=new O5t("chunk",["string","Buffer"],r)),i?(uA(e,i),process.nextTick(n,i),!1):!0}Rh.prototype.write=function(e,t,r){var n=this._writableState,i=!1,a=!n.objectMode&&D5t(e);return a&&!_R.isBuffer(e)&&(e=R5t(e)),typeof t=="function"&&(r=t,t=null),a?t="buffer":t||(t=n.defaultEncoding),typeof r!="function"&&(r=j5t),n.ending?W5t(this,r):(a||X5t(this,n,e,r))&&(n.pendingcb++,i=Y5t(this,n,a,e,t,r)),i};Rh.prototype.cork=function(){this._writableState.corked++};Rh.prototype.uncork=function(){var e=this._writableState;e.corked&&(e.corked--,!e.writing&&!e.corked&&!e.bufferProcessing&&e.bufferedRequest&&U5e(this,e))};Rh.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 H5t(t);return this._writableState.defaultEncoding=t,this};Object.defineProperty(Rh.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}});function Z5t(e,t,r){return!e.objectMode&&e.decodeStrings!==!1&&typeof t=="string"&&(t=_R.from(t,r)),t}Object.defineProperty(Rh.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}});function Y5t(e,t,r,n,i,a){if(!r){var o=Z5t(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 sj(e,t,!1,s,n,i,a);return l}function sj(e,t,r,n,i,a,o){t.writelen=n,t.writecb=o,t.writing=!0,t.sync=!0,t.destroyed?t.onwrite(new U5t("write")):r?e._writev(i,t.onwrite):e._write(i,a,t.onwrite),t.sync=!1}function K5t(e,t,r,n,i){--t.pendingcb,r?(process.nextTick(i,n),process.nextTick(K4,e,t),e._writableState.errorEmitted=!0,uA(e,n)):(i(n),e._writableState.errorEmitted=!0,uA(e,n),K4(e,t))}function J5t(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}function $5t(e,t){var r=e._writableState,n=r.sync,i=r.writecb;if(typeof i!="function")throw new B5t;if(J5t(r),t)K5t(e,r,n,t,i);else{var a=V5e(r)||e.destroyed;!a&&!r.corked&&!r.bufferProcessing&&r.bufferedRequest&&U5e(e,r),n?process.nextTick(q5e,e,r,a,i):q5e(e,r,a,i)}}function q5e(e,t,r,n){r||Q5t(e,t),t.pendingcb--,n(),K4(e,t)}function Q5t(e,t){t.length===0&&t.needDrain&&(t.needDrain=!1,e.emit("drain"))}function U5e(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,sj(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 B5e(t),t.bufferedRequestCount=0}else{for(;r;){var l=r.chunk,u=r.encoding,c=r.callback,f=t.objectMode?1:l.length;if(sj(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}Rh.prototype._write=function(e,t,r){r(new q5t("_write()"))};Rh.prototype._writev=null;Rh.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||rSt(this,n,r),this};Object.defineProperty(Rh.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}});function V5e(e){return e.ending&&e.length===0&&e.bufferedRequest===null&&!e.finished&&!e.writing}function eSt(e,t){e._final(function(r){t.pendingcb--,r&&uA(e,r),t.prefinished=!0,e.emit("prefinish"),K4(e,t)})}function tSt(e,t){!t.prefinished&&!t.finalCalled&&(typeof e._final=="function"&&!t.destroyed?(t.pendingcb++,t.finalCalled=!0,process.nextTick(eSt,e,t)):(t.prefinished=!0,e.emit("prefinish")))}function K4(e,t){var r=V5e(t);if(r&&(tSt(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 rSt(e,t,r){t.ending=!0,K4(e,t),r&&(t.finished?process.nextTick(r):e.once("finish",r)),t.ended=!0,e.writable=!1}function iSt(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(Rh.prototype,"destroyed",{enumerable:!1,get:function(){return this._writableState===void 0?!1:this._writableState.destroyed},set:function(t){this._writableState&&(this._writableState.destroyed=t)}});Rh.prototype.destroy=lj.destroy;Rh.prototype._undestroy=lj.undestroy;Rh.prototype._destroy=function(e,t){t(e)}});var p2=ye((Ufr,j5e)=>{"use strict";var nSt=Object.keys||function(e){var t=[];for(var r in e)t.push(r);return t};j5e.exports=qm;var H5e=hj(),fj=uj();Uy()(qm,H5e);for(cj=nSt(fj.prototype),xR=0;xR<cj.length;xR++)bR=cj[xR],qm.prototype[bR]||(qm.prototype[bR]=fj.prototype[bR]);var cj,bR,xR;function qm(e){if(!(this instanceof qm))return new qm(e);H5e.call(this,e),fj.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",aSt)))}Object.defineProperty(qm.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}});Object.defineProperty(qm.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}});Object.defineProperty(qm.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}});function aSt(){this._writableState.ended||process.nextTick(oSt,this)}function oSt(e){e.end()}Object.defineProperty(qm.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 Z5e=ye((dj,X5e)=>{var wR=u2(),Bm=wR.Buffer;function W5e(e,t){for(var r in e)t[r]=e[r]}Bm.from&&Bm.alloc&&Bm.allocUnsafe&&Bm.allocUnsafeSlow?X5e.exports=wR:(W5e(wR,dj),dj.Buffer=g2);function g2(e,t,r){return Bm(e,t,r)}g2.prototype=Object.create(Bm.prototype);W5e(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 wR.SlowBuffer(e)}});var gj=ye(K5e=>{"use strict";var pj=Z5e().Buffer,Y5e=pj.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 sSt(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 lSt(e){var t=sSt(e);if(typeof t!="string"&&(pj.isEncoding===Y5e||!Y5e(e)))throw new Error("Unknown encoding: "+e);return t||e}K5e.StringDecoder=$4;function $4(e){this.encoding=lSt(e);var t;switch(this.encoding){case"utf16le":this.text=vSt,this.end=pSt,t=4;break;case"utf8":this.fillLast=fSt,t=4;break;case"base64":this.text=gSt,this.end=mSt,t=3;break;default:this.write=ySt,this.end=_St;return}this.lastNeed=0,this.lastTotal=0,this.lastChar=pj.allocUnsafe(t)}$4.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||""};$4.prototype.end=dSt;$4.prototype.text=hSt;$4.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 vj(e){return e<=127?0:e>>5===6?2:e>>4===14?3:e>>3===30?4:e>>6===2?-1:-2}function uSt(e,t,r){var n=t.length-1;if(n<r)return 0;var i=vj(t[n]);return i>=0?(i>0&&(e.lastNeed=i-1),i):--n<r||i===-2?0:(i=vj(t[n]),i>=0?(i>0&&(e.lastNeed=i-2),i):--n<r||i===-2?0:(i=vj(t[n]),i>=0?(i>0&&(i===2?i=0:e.lastNeed=i-3),i):0))}function cSt(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 fSt(e){var t=this.lastTotal-this.lastNeed,r=cSt(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 hSt(e,t){var r=uSt(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 dSt(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+"\uFFFD":t}function vSt(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 pSt(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed){var r=this.lastTotal-this.lastNeed;return t+this.lastChar.toString("utf16le",0,r)}return t}function gSt(e,t){var r=(e.length-t)%3;return r===0?e.toString("base64",t):(this.lastNeed=3-r,this.lastTotal=3,r===1?this.lastChar[0]=e[e.length-1]:(this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1]),e.toString("base64",t,e.length-r))}function mSt(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+this.lastChar.toString("base64",0,3-this.lastNeed):t}function ySt(e){return e.toString(this.encoding)}function _St(e){return e&&e.length?this.write(e):""}});var TR=ye((Gfr,Q5e)=>{"use strict";var J5e=v2().codes.ERR_STREAM_PREMATURE_CLOSE;function xSt(e){var t=!1;return function(){if(!t){t=!0;for(var r=arguments.length,n=new Array(r),i=0;i<r;i++)n[i]=arguments[i];e.apply(this,n)}}}function bSt(){}function wSt(e){return e.setHeader&&typeof e.abort=="function"}function $5e(e,t,r){if(typeof t=="function")return $5e(e,null,t);t||(t={}),r=xSt(r||bSt);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 J5e),r.call(e,v);if(i&&!o)return(!e._writableState||!e._writableState.ended)&&(v=new J5e),r.call(e,v)},h=function(){e.req.on("finish",s)};return wSt(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)}}Q5e.exports=$5e});var tSe=ye((Hfr,eSe)=>{"use strict";var AR;function F_(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var TSt=TR(),z_=Symbol("lastResolve"),m2=Symbol("lastReject"),Q4=Symbol("error"),SR=Symbol("ended"),y2=Symbol("lastPromise"),mj=Symbol("handlePromise"),_2=Symbol("stream");function O_(e,t){return{value:e,done:t}}function ASt(e){var t=e[z_];if(t!==null){var r=e[_2].read();r!==null&&(e[y2]=null,e[z_]=null,e[m2]=null,t(O_(r,!1)))}}function SSt(e){process.nextTick(ASt,e)}function MSt(e,t){return function(r,n){e.then(function(){if(t[SR]){r(O_(void 0,!0));return}t[mj](r,n)},n)}}var ESt=Object.getPrototypeOf(function(){}),CSt=Object.setPrototypeOf((AR={get stream(){return this[_2]},next:function(){var t=this,r=this[Q4];if(r!==null)return Promise.reject(r);if(this[SR])return Promise.resolve(O_(void 0,!0));if(this[_2].destroyed)return new Promise(function(o,s){process.nextTick(function(){t[Q4]?s(t[Q4]):o(O_(void 0,!0))})});var n=this[y2],i;if(n)i=new Promise(MSt(n,this));else{var a=this[_2].read();if(a!==null)return Promise.resolve(O_(a,!1));i=new Promise(this[mj])}return this[y2]=i,i}},F_(AR,Symbol.asyncIterator,function(){return this}),F_(AR,"return",function(){var t=this;return new Promise(function(r,n){t[_2].destroy(null,function(i){if(i){n(i);return}r(O_(void 0,!0))})})}),AR),ESt),kSt=function(t){var r,n=Object.create(CSt,(r={},F_(r,_2,{value:t,writable:!0}),F_(r,z_,{value:null,writable:!0}),F_(r,m2,{value:null,writable:!0}),F_(r,Q4,{value:null,writable:!0}),F_(r,SR,{value:t._readableState.endEmitted,writable:!0}),F_(r,mj,{value:function(a,o){var s=n[_2].read();s?(n[y2]=null,n[z_]=null,n[m2]=null,a(O_(s,!1))):(n[z_]=a,n[m2]=o)},writable:!0}),r));return n[y2]=null,TSt(t,function(i){if(i&&i.code!=="ERR_STREAM_PREMATURE_CLOSE"){var a=n[m2];a!==null&&(n[y2]=null,n[z_]=null,n[m2]=null,a(i)),n[Q4]=i;return}var o=n[z_];o!==null&&(n[y2]=null,n[z_]=null,n[m2]=null,o(O_(void 0,!0))),n[SR]=!0}),t.on("readable",SSt.bind(null,n)),n};eSe.exports=kSt});var iSe=ye((jfr,rSe)=>{rSe.exports=function(){throw new Error("Readable.from is not available in the browser")}});var hj=ye((Xfr,dSe)=>{"use strict";dSe.exports=Bu;var cA;Bu.ReadableState=sSe;var Wfr=vb().EventEmitter,oSe=function(t,r){return t.listeners(r).length},tE=lH(),MR=u2().Buffer,LSt=window.Uint8Array||function(){};function PSt(e){return MR.from(e)}function ISt(e){return MR.isBuffer(e)||e instanceof LSt}var yj=tj(),au;yj&&yj.debuglog?au=yj.debuglog("stream"):au=function(){};var RSt=k5e(),Sj=nj(),DSt=aj(),FSt=DSt.getHighWaterMark,ER=v2().codes,zSt=ER.ERR_INVALID_ARG_TYPE,OSt=ER.ERR_STREAM_PUSH_AFTER_EOF,qSt=ER.ERR_METHOD_NOT_IMPLEMENTED,BSt=ER.ERR_STREAM_UNSHIFT_AFTER_END_EVENT,fA,_j,xj;Uy()(Bu,tE);var eE=Sj.errorOrDestroy,bj=["error","close","destroy","pause","resume"];function NSt(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 sSe(e,t,r){cA=cA||p2(),e=e||{},typeof r!="boolean"&&(r=t instanceof cA),this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.readableObjectMode),this.highWaterMark=FSt(this,e,"readableHighWaterMark",r),this.buffer=new RSt,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&&(fA||(fA=gj().StringDecoder),this.decoder=new fA(e.encoding),this.encoding=e.encoding)}function Bu(e){if(cA=cA||p2(),!(this instanceof Bu))return new Bu(e);var t=this instanceof cA;this._readableState=new sSe(e,this,t),this.readable=!0,e&&(typeof e.read=="function"&&(this._read=e.read),typeof e.destroy=="function"&&(this._destroy=e.destroy)),tE.call(this)}Object.defineProperty(Bu.prototype,"destroyed",{enumerable:!1,get:function(){return this._readableState===void 0?!1:this._readableState.destroyed},set:function(t){this._readableState&&(this._readableState.destroyed=t)}});Bu.prototype.destroy=Sj.destroy;Bu.prototype._undestroy=Sj.undestroy;Bu.prototype._destroy=function(e,t){t(e)};Bu.prototype.push=function(e,t){var r=this._readableState,n;return r.objectMode?n=!0:typeof e=="string"&&(t=t||r.defaultEncoding,t!==r.encoding&&(e=MR.from(e,t),t=""),n=!0),lSe(this,e,t,!1,n)};Bu.prototype.unshift=function(e){return lSe(this,e,null,!0,!1)};function lSe(e,t,r,n,i){au("readableAddChunk",t);var a=e._readableState;if(t===null)a.reading=!1,GSt(e,a);else{var o;if(i||(o=USt(a,t)),o)eE(e,o);else if(a.objectMode||t&&t.length>0)if(typeof t!="string"&&!a.objectMode&&Object.getPrototypeOf(t)!==MR.prototype&&(t=PSt(t)),n)a.endEmitted?eE(e,new BSt):wj(e,a,t,!0);else if(a.ended)eE(e,new OSt);else{if(a.destroyed)return!1;a.reading=!1,a.decoder&&!r?(t=a.decoder.write(t),a.objectMode||t.length!==0?wj(e,a,t,!1):Aj(e,a)):wj(e,a,t,!1)}else n||(a.reading=!1,Aj(e,a))}return!a.ended&&(a.length<a.highWaterMark||a.length===0)}function wj(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&&CR(e)),Aj(e,t)}function USt(e,t){var r;return!ISt(t)&&typeof t!="string"&&t!==void 0&&!e.objectMode&&(r=new zSt("chunk",["string","Buffer","Uint8Array"],t)),r}Bu.prototype.isPaused=function(){return this._readableState.flowing===!1};Bu.prototype.setEncoding=function(e){fA||(fA=gj().StringDecoder);var t=new fA(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 nSe=1073741824;function VSt(e){return e>=nSe?e=nSe:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}function aSe(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=VSt(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}Bu.prototype.read=function(e){au("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 au("read: emitReadable",t.length,t.ended),t.length===0&&t.ended?Tj(this):CR(this),null;if(e=aSe(e,t),e===0&&t.ended)return t.length===0&&Tj(this),null;var n=t.needReadable;au("need readable",n),(t.length===0||t.length-e<t.highWaterMark)&&(n=!0,au("length less than watermark",n)),t.ended||t.reading?(n=!1,au("reading or ended",n)):n&&(au("do read"),t.reading=!0,t.sync=!0,t.length===0&&(t.needReadable=!0),this._read(t.highWaterMark),t.sync=!1,t.reading||(e=aSe(r,t)));var i;return e>0?i=fSe(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&&Tj(this)),i!==null&&this.emit("data",i),i};function GSt(e,t){if(au("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?CR(e):(t.needReadable=!1,t.emittedReadable||(t.emittedReadable=!0,uSe(e)))}}function CR(e){var t=e._readableState;au("emitReadable",t.needReadable,t.emittedReadable),t.needReadable=!1,t.emittedReadable||(au("emitReadable",t.flowing),t.emittedReadable=!0,process.nextTick(uSe,e))}function uSe(e){var t=e._readableState;au("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,Mj(e)}function Aj(e,t){t.readingMore||(t.readingMore=!0,process.nextTick(HSt,e,t))}function HSt(e,t){for(;!t.reading&&!t.ended&&(t.length<t.highWaterMark||t.flowing&&t.length===0);){var r=t.length;if(au("maybeReadMore read 0"),e.read(0),r===t.length)break}t.readingMore=!1}Bu.prototype._read=function(e){eE(this,new qSt("_read()"))};Bu.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,au("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){au("onunpipe"),b===r&&p&&p.hasUnpiped===!1&&(p.hasUnpiped=!0,c())}function s(){au("onend"),e.end()}var l=jSt(r);e.on("drain",l);var u=!1;function c(){au("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){au("ondata");var p=e.write(b);au("dest.write",p),p===!1&&((n.pipesCount===1&&n.pipes===e||n.pipesCount>1&&hSe(n.pipes,e)!==-1)&&!u&&(au("false write response, pause",n.awaitDrain),n.awaitDrain++),r.pause())}function h(b){au("onerror",b),x(),e.removeListener("error",h),oSe(e,"error")===0&&eE(e,b)}NSt(e,"error",h);function d(){e.removeListener("finish",v),x()}e.once("close",d);function v(){au("onfinish"),e.removeListener("close",d),x()}e.once("finish",v);function x(){au("unpipe"),r.unpipe(e)}return e.emit("pipe",r),n.flowing||(au("pipe resume"),r.resume()),e};function jSt(e){return function(){var r=e._readableState;au("pipeOnDrain",r.awaitDrain),r.awaitDrain&&r.awaitDrain--,r.awaitDrain===0&&oSe(e,"data")&&(r.flowing=!0,Mj(e))}}Bu.prototype.unpipe=function(e){var t=this._readableState,r={hasUnpiped:!1};if(t.pipesCount===0)return this;if(t.pipesCount===1)return e&&e!==t.pipes?this:(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,r),this);if(!e){var n=t.pipes,i=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var a=0;a<i;a++)n[a].emit("unpipe",this,{hasUnpiped:!1});return this}var o=hSe(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)};Bu.prototype.on=function(e,t){var r=tE.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,au("on readable",n.length,n.reading),n.length?CR(this):n.reading||process.nextTick(WSt,this)),r};Bu.prototype.addListener=Bu.prototype.on;Bu.prototype.removeListener=function(e,t){var r=tE.prototype.removeListener.call(this,e,t);return e==="readable"&&process.nextTick(cSe,this),r};Bu.prototype.removeAllListeners=function(e){var t=tE.prototype.removeAllListeners.apply(this,arguments);return(e==="readable"||e===void 0)&&process.nextTick(cSe,this),t};function cSe(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 WSt(e){au("readable nexttick read 0"),e.read(0)}Bu.prototype.resume=function(){var e=this._readableState;return e.flowing||(au("resume"),e.flowing=!e.readableListening,XSt(this,e)),e.paused=!1,this};function XSt(e,t){t.resumeScheduled||(t.resumeScheduled=!0,process.nextTick(ZSt,e,t))}function ZSt(e,t){au("resume",t.reading),t.reading||e.read(0),t.resumeScheduled=!1,e.emit("resume"),Mj(e),t.flowing&&!t.reading&&e.read(0)}Bu.prototype.pause=function(){return au("call pause flowing=%j",this._readableState.flowing),this._readableState.flowing!==!1&&(au("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this};function Mj(e){var t=e._readableState;for(au("flow",t.flowing);t.flowing&&e.read()!==null;);}Bu.prototype.wrap=function(e){var t=this,r=this._readableState,n=!1;e.on("end",function(){if(au("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(au("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<bj.length;a++)e.on(bj[a],this.emit.bind(this,bj[a]));return this._read=function(o){au("wrapped _read",o),n&&(n=!1,e.resume())},this};typeof Symbol=="function"&&(Bu.prototype[Symbol.asyncIterator]=function(){return _j===void 0&&(_j=tSe()),_j(this)});Object.defineProperty(Bu.prototype,"readableHighWaterMark",{enumerable:!1,get:function(){return this._readableState.highWaterMark}});Object.defineProperty(Bu.prototype,"readableBuffer",{enumerable:!1,get:function(){return this._readableState&&this._readableState.buffer}});Object.defineProperty(Bu.prototype,"readableFlowing",{enumerable:!1,get:function(){return this._readableState.flowing},set:function(t){this._readableState&&(this._readableState.flowing=t)}});Bu._fromList=fSe;Object.defineProperty(Bu.prototype,"readableLength",{enumerable:!1,get:function(){return this._readableState.length}});function fSe(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 Tj(e){var t=e._readableState;au("endReadable",t.endEmitted),t.endEmitted||(t.ended=!0,process.nextTick(YSt,t,e))}function YSt(e,t){if(au("endReadableNT",e.endEmitted,e.length),!e.endEmitted&&e.length===0&&(e.endEmitted=!0,t.readable=!1,t.emit("end"),e.autoDestroy)){var r=t._writableState;(!r||r.autoDestroy&&r.finished)&&t.destroy()}}typeof Symbol=="function"&&(Bu.from=function(e,t){return xj===void 0&&(xj=iSe()),xj(Bu,e,t)});function hSe(e,t){for(var r=0,n=e.length;r<n;r++)if(e[r]===t)return r;return-1}});var Ej=ye((Zfr,pSe)=>{"use strict";pSe.exports=Gy;var kR=v2().codes,KSt=kR.ERR_METHOD_NOT_IMPLEMENTED,JSt=kR.ERR_MULTIPLE_CALLBACK,$St=kR.ERR_TRANSFORM_ALREADY_TRANSFORMING,QSt=kR.ERR_TRANSFORM_WITH_LENGTH_0,LR=p2();Uy()(Gy,LR);function eMt(e,t){var r=this._transformState;r.transforming=!1;var n=r.writecb;if(n===null)return this.emit("error",new JSt);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 Gy(e){if(!(this instanceof Gy))return new Gy(e);LR.call(this,e),this._transformState={afterTransform:eMt.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",tMt)}function tMt(){var e=this;typeof this._flush=="function"&&!this._readableState.destroyed?this._flush(function(t,r){vSe(e,t,r)}):vSe(this,null,null)}Gy.prototype.push=function(e,t){return this._transformState.needTransform=!1,LR.prototype.push.call(this,e,t)};Gy.prototype._transform=function(e,t,r){r(new KSt("_transform()"))};Gy.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)}};Gy.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};Gy.prototype._destroy=function(e,t){LR.prototype._destroy.call(this,e,function(r){t(r)})};function vSe(e,t,r){if(t)return e.emit("error",t);if(r!=null&&e.push(r),e._writableState.length)throw new QSt;if(e._transformState.transforming)throw new $St;return e.push(null)}});var ySe=ye((Yfr,mSe)=>{"use strict";mSe.exports=rE;var gSe=Ej();Uy()(rE,gSe);function rE(e){if(!(this instanceof rE))return new rE(e);gSe.call(this,e)}rE.prototype._transform=function(e,t,r){r(null,e)}});var TSe=ye((Kfr,wSe)=>{"use strict";var Cj;function rMt(e){var t=!1;return function(){t||(t=!0,e.apply(void 0,arguments))}}var bSe=v2().codes,iMt=bSe.ERR_MISSING_ARGS,nMt=bSe.ERR_STREAM_DESTROYED;function _Se(e){if(e)throw e}function aMt(e){return e.setHeader&&typeof e.abort=="function"}function oMt(e,t,r,n){n=rMt(n);var i=!1;e.on("close",function(){i=!0}),Cj===void 0&&(Cj=TR()),Cj(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,aMt(e))return e.abort();if(typeof e.destroy=="function")return e.destroy();n(o||new nMt("pipe"))}}}function xSe(e){e()}function sMt(e,t){return e.pipe(t)}function lMt(e){return!e.length||typeof e[e.length-1]!="function"?_Se:e.pop()}function uMt(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];var n=lMt(t);if(Array.isArray(t[0])&&(t=t[0]),t.length<2)throw new iMt("streams");var i,a=t.map(function(o,s){var l=s<t.length-1,u=s>0;return oMt(o,l,u,function(c){i||(i=c),c&&a.forEach(xSe),!l&&(a.forEach(xSe),n(i))})});return t.reduce(sMt)}wSe.exports=uMt});var SSe=ye((Jfr,ASe)=>{ASe.exports=K0;var kj=vb().EventEmitter,cMt=Uy();cMt(K0,kj);K0.Readable=hj();K0.Writable=uj();K0.Duplex=p2();K0.Transform=Ej();K0.PassThrough=ySe();K0.finished=TR();K0.pipeline=TSe();K0.Stream=K0;function K0(){kj.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(),kj.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 dA=ye(hu=>{var MSe=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},fMt=/%[sdj%]/g;hu.format=function(e){if(!OR(e)){for(var t=[],r=0;r<arguments.length;r++)t.push(q_(arguments[r]));return t.join(" ")}for(var r=1,n=arguments,i=n.length,a=String(e).replace(fMt,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])zR(o)||!hA(o)?a+=" "+o:a+=" "+q_(o);return a};hu.deprecate=function(e,t){if(typeof process!="undefined"&&process.noDeprecation===!0)return e;if(typeof process=="undefined")return function(){return hu.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 PR={},ESe=/^$/;IR="false",IR=IR.replace(/[|\\{}()[\]^$+?.]/g,"\\$&").replace(/\*/g,".*").replace(/,/g,"$|^").toUpperCase(),ESe=new RegExp("^"+IR+"$","i");var IR;hu.debuglog=function(e){if(e=e.toUpperCase(),!PR[e])if(ESe.test(e)){var t=process.pid;PR[e]=function(){var r=hu.format.apply(hu,arguments);console.error("%s %d: %s",e,t,r)}}else PR[e]=function(){};return PR[e]};function q_(e,t){var r={seen:[],stylize:dMt};return arguments.length>=3&&(r.depth=arguments[2]),arguments.length>=4&&(r.colors=arguments[3]),Rj(t)?r.showHidden=t:t&&hu._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=hMt),DR(r,e,r.depth)}hu.inspect=q_;q_.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]};q_.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"};function hMt(e,t){var r=q_.styles[t];return r?"\x1B["+q_.colors[r][0]+"m"+e+"\x1B["+q_.colors[r][1]+"m":e}function dMt(e,t){return e}function vMt(e){var t={};return e.forEach(function(r,n){t[r]=!0}),t}function DR(e,t,r){if(e.customInspect&&t&&RR(t.inspect)&&t.inspect!==hu.inspect&&!(t.constructor&&t.constructor.prototype===t)){var n=t.inspect(r,e);return OR(n)||(n=DR(e,n,r)),n}var i=pMt(e,t);if(i)return i;var a=Object.keys(t),o=vMt(a);if(e.showHidden&&(a=Object.getOwnPropertyNames(t)),nE(t)&&(a.indexOf("message")>=0||a.indexOf("description")>=0))return Lj(t);if(a.length===0){if(RR(t)){var s=t.name?": "+t.name:"";return e.stylize("[Function"+s+"]","special")}if(iE(t))return e.stylize(RegExp.prototype.toString.call(t),"regexp");if(FR(t))return e.stylize(Date.prototype.toString.call(t),"date");if(nE(t))return Lj(t)}var l="",u=!1,c=["{","}"];if(CSe(t)&&(u=!0,c=["[","]"]),RR(t)){var f=t.name?": "+t.name:"";l=" [Function"+f+"]"}if(iE(t)&&(l=" "+RegExp.prototype.toString.call(t)),FR(t)&&(l=" "+Date.prototype.toUTCString.call(t)),nE(t)&&(l=" "+Lj(t)),a.length===0&&(!u||t.length==0))return c[0]+l+c[1];if(r<0)return iE(t)?e.stylize(RegExp.prototype.toString.call(t),"regexp"):e.stylize("[Object]","special");e.seen.push(t);var h;return u?h=gMt(e,t,r,o,a):h=a.map(function(d){return Ij(e,t,r,o,d,u)}),e.seen.pop(),mMt(h,l,c)}function pMt(e,t){if(b2(t))return e.stylize("undefined","undefined");if(OR(t)){var r="'"+JSON.stringify(t).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(r,"string")}if(kSe(t))return e.stylize(""+t,"number");if(Rj(t))return e.stylize(""+t,"boolean");if(zR(t))return e.stylize("null","null")}function Lj(e){return"["+Error.prototype.toString.call(e)+"]"}function gMt(e,t,r,n,i){for(var a=[],o=0,s=t.length;o<s;++o)LSe(t,String(o))?a.push(Ij(e,t,r,n,String(o),!0)):a.push("");return i.forEach(function(l){l.match(/^\d+$/)||a.push(Ij(e,t,r,n,l,!0))}),a}function Ij(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")),LSe(n,i)||(o="["+i+"]"),s||(e.seen.indexOf(l.value)<0?(zR(r)?s=DR(e,l.value,null):s=DR(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 mMt(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]}hu.types=ZH();function CSe(e){return Array.isArray(e)}hu.isArray=CSe;function Rj(e){return typeof e=="boolean"}hu.isBoolean=Rj;function zR(e){return e===null}hu.isNull=zR;function yMt(e){return e==null}hu.isNullOrUndefined=yMt;function kSe(e){return typeof e=="number"}hu.isNumber=kSe;function OR(e){return typeof e=="string"}hu.isString=OR;function _Mt(e){return typeof e=="symbol"}hu.isSymbol=_Mt;function b2(e){return e===void 0}hu.isUndefined=b2;function iE(e){return hA(e)&&Dj(e)==="[object RegExp]"}hu.isRegExp=iE;hu.types.isRegExp=iE;function hA(e){return typeof e=="object"&&e!==null}hu.isObject=hA;function FR(e){return hA(e)&&Dj(e)==="[object Date]"}hu.isDate=FR;hu.types.isDate=FR;function nE(e){return hA(e)&&(Dj(e)==="[object Error]"||e instanceof Error)}hu.isError=nE;hu.types.isNativeError=nE;function RR(e){return typeof e=="function"}hu.isFunction=RR;function xMt(e){return e===null||typeof e=="boolean"||typeof e=="number"||typeof e=="string"||typeof e=="symbol"||typeof e=="undefined"}hu.isPrimitive=xMt;hu.isBuffer=YH();function Dj(e){return Object.prototype.toString.call(e)}function Pj(e){return e<10?"0"+e.toString(10):e.toString(10)}var bMt=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function wMt(){var e=new Date,t=[Pj(e.getHours()),Pj(e.getMinutes()),Pj(e.getSeconds())].join(":");return[e.getDate(),bMt[e.getMonth()],t].join(" ")}hu.log=function(){console.log("%s - %s",wMt(),hu.format.apply(hu,arguments))};hu.inherits=Uy();hu._extend=function(e,t){if(!t||!hA(t))return e;for(var r=Object.keys(t),n=r.length;n--;)e[r[n]]=t[r[n]];return e};function LSe(e,t){return Object.prototype.hasOwnProperty.call(e,t)}var x2=typeof Symbol!="undefined"?Symbol("util.promisify.custom"):void 0;hu.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,MSe(t))};hu.promisify.custom=x2;function TMt(e,t){if(!e){var r=new Error("Promise was rejected with a falsy value");r.reason=e,e=r}return t(e)}function AMt(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(TMt.bind(null,s,o))})}return Object.setPrototypeOf(t,Object.getPrototypeOf(e)),Object.defineProperties(t,MSe(e)),t}hu.callbackify=AMt});var Oj=ye((Qfr,DSe)=>{"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 PSe(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,MMt(n.key),n)}}function SMt(e,t,r){return t&&PSe(e.prototype,t),r&&PSe(e,r),Object.defineProperty(e,"prototype",{writable:!1}),e}function MMt(e){var t=EMt(e,"string");return B_(t)==="symbol"?t:String(t)}function EMt(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 CMt(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function kMt(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&&zj(e,t)}function zj(e,t){return zj=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(n,i){return n.__proto__=i,n},zj(e,t)}function LMt(e){var t=RMt();return function(){var n=qR(e),i;if(t){var a=qR(this).constructor;i=Reflect.construct(n,arguments,a)}else i=n.apply(this,arguments);return PMt(this,i)}}function PMt(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 IMt(e)}function IMt(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function RMt(){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 qR(e){return qR=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(r){return r.__proto__||Object.getPrototypeOf(r)},qR(e)}var RSe={},vA,Fj;function aE(e,t,r){r||(r=Error);function n(a,o,s){return typeof t=="string"?t:t(a,o,s)}var i=function(a){kMt(s,a);var o=LMt(s);function s(l,u,c){var f;return CMt(this,s),f=o.call(this,n(l,u,c)),f.code=e,f}return SMt(s)}(r);RSe[e]=i}function ISe(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 DMt(e,t,r){return e.substr(!r||r<0?0:+r,t.length)===t}function FMt(e,t,r){return(r===void 0||r>e.length)&&(r=e.length),e.substring(r-t.length,r)===t}function zMt(e,t,r){return typeof r!="number"&&(r=0),r+t.length>e.length?!1:e.indexOf(t,r)!==-1}aE("ERR_AMBIGUOUS_ARGUMENT",'The "%s" argument is ambiguous. %s',TypeError);aE("ERR_INVALID_ARG_TYPE",function(e,t,r){vA===void 0&&(vA=oE()),vA(typeof e=="string","'name' must be a string");var n;typeof t=="string"&&DMt(t,"not ")?(n="must not be",t=t.replace(/^not /,"")):n="must be";var i;if(FMt(e," argument"))i="The ".concat(e," ").concat(n," ").concat(ISe(t,"type"));else{var a=zMt(e,".")?"property":"argument";i='The "'.concat(e,'" ').concat(a," ").concat(n," ").concat(ISe(t,"type"))}return i+=". Received type ".concat(B_(r)),i},TypeError);aE("ERR_INVALID_ARG_VALUE",function(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"is invalid";Fj===void 0&&(Fj=dA());var n=Fj.inspect(t);return n.length>128&&(n="".concat(n.slice(0,128),"...")),"The argument '".concat(e,"' ").concat(r,". Received ").concat(n)},TypeError,RangeError);aE("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);aE("ERR_MISSING_ARGS",function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];vA===void 0&&(vA=oE()),vA(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);DSe.exports.codes=RSe});var HSe=ye((ehr,GSe)=>{"use strict";function FSe(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 zSe(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?FSe(Object(r),!0).forEach(function(n){OMt(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):FSe(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function OMt(e,t,r){return t=NSe(t),t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function qMt(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function OSe(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,NSe(n.key),n)}}function BMt(e,t,r){return t&&OSe(e.prototype,t),r&&OSe(e,r),Object.defineProperty(e,"prototype",{writable:!1}),e}function NSe(e){var t=NMt(e,"string");return Rp(t)==="symbol"?t:String(t)}function NMt(e,t){if(Rp(e)!=="object"||e===null)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t||"default");if(Rp(n)!=="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function UMt(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&&cE(e,t)}function VMt(e){var t=VSe();return function(){var n=fE(e),i;if(t){var a=fE(this).constructor;i=Reflect.construct(n,arguments,a)}else i=n.apply(this,arguments);return USe(this,i)}}function USe(e,t){if(t&&(Rp(t)==="object"||typeof t=="function"))return t;if(t!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return qj(e)}function qj(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function Bj(e){var t=typeof Map=="function"?new Map:void 0;return Bj=function(n){if(n===null||!GMt(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 BR(n,arguments,fE(this).constructor)}return i.prototype=Object.create(n.prototype,{constructor:{value:i,enumerable:!1,writable:!0,configurable:!0}}),cE(i,n)},Bj(e)}function BR(e,t,r){return VSe()?BR=Reflect.construct.bind():BR=function(i,a,o){var s=[null];s.push.apply(s,a);var l=Function.bind.apply(i,s),u=new l;return o&&cE(u,o.prototype),u},BR.apply(null,arguments)}function VSe(){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 GMt(e){return Function.toString.call(e).indexOf("[native code]")!==-1}function cE(e,t){return cE=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(n,i){return n.__proto__=i,n},cE(e,t)}function fE(e){return fE=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(r){return r.__proto__||Object.getPrototypeOf(r)},fE(e)}function Rp(e){"@babel/helpers - typeof";return Rp=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},Rp(e)}var HMt=dA(),Nj=HMt.inspect,jMt=Oj(),WMt=jMt.codes.ERR_INVALID_ARG_TYPE;function qSe(e,t,r){return(r===void 0||r>e.length)&&(r=e.length),e.substring(r-t.length,r)===t}function XMt(e,t){if(t=Math.floor(t),e.length==0||t==0)return"";var r=e.length*t;for(t=Math.floor(Math.log(t)/Math.log(2));t;)e+=e,t--;return e+=e.substring(0,r-e.length),e}var Hg="",sE="",lE="",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:"},ZMt=10;function BSe(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 uE(e){return Nj(e,{compact:!1,customInspect:!1,depth:1e3,maxArrayLength:1/0,showHidden:!1,breakLength:1/0,showProxy:!1,sorted:!0,getters:!0})}function YMt(e,t,r){var n="",i="",a=0,o="",s=!1,l=uE(e),u=l.split(`
|
||
`),c=uE(t).split(`
|
||
`),f=0,h="";if(r==="strictEqual"&&Rp(e)==="object"&&Rp(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<=ZMt){if((Rp(e)!=="object"||e===null)&&(Rp(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(XMt(" ",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 C=l.split(`
|
||
`);if(C.length>30)for(C[26]="".concat(Hg,"...").concat(xv);C.length>27;)C.pop();return"".concat(w2.notIdentical,`
|
||
|
||
`).concat(C.join(`
|
||
`),`
|
||
`)}f>3&&(o=`
|
||
`.concat(Hg,"...").concat(xv).concat(o),s=!0),n!==""&&(o=`
|
||
`.concat(n).concat(o),n="");var E=0,A=w2[r]+`
|
||
`.concat(sE,"+ actual").concat(xv," ").concat(lE,"- expected").concat(xv),L=" ".concat(Hg,"...").concat(xv," Lines skipped");for(f=0;f<p;f++){var _=f-a;if(u.length<f+1)_>1&&f>2&&(_>4?(i+=`
|
||
`.concat(Hg,"...").concat(xv),s=!0):_>3&&(i+=`
|
||
`.concat(c[f-2]),E++),i+=`
|
||
`.concat(c[f-1]),E++),a=f,n+=`
|
||
`.concat(lE,"-").concat(xv," ").concat(c[f]),E++;else if(c.length<f+1)_>1&&f>2&&(_>4?(i+=`
|
||
`.concat(Hg,"...").concat(xv),s=!0):_>3&&(i+=`
|
||
`.concat(u[f-2]),E++),i+=`
|
||
`.concat(u[f-1]),E++),a=f,i+=`
|
||
`.concat(sE,"+").concat(xv," ").concat(u[f]),E++;else{var k=c[f],M=u[f],g=M!==k&&(!qSe(M,",")||M.slice(0,-1)!==k);g&&qSe(k,",")&&k.slice(0,-1)===M&&(g=!1,M+=","),g?(_>1&&f>2&&(_>4?(i+=`
|
||
`.concat(Hg,"...").concat(xv),s=!0):_>3&&(i+=`
|
||
`.concat(u[f-2]),E++),i+=`
|
||
`.concat(u[f-1]),E++),a=f,i+=`
|
||
`.concat(sE,"+").concat(xv," ").concat(M),n+=`
|
||
`.concat(lE,"-").concat(xv," ").concat(k),E+=2):(i+=n,n="",(_===1||f===0)&&(i+=`
|
||
`.concat(M),E++))}if(E>20&&f<p-2)return"".concat(A).concat(L,`
|
||
`).concat(i,`
|
||
`).concat(Hg,"...").concat(xv).concat(n,`
|
||
`)+"".concat(Hg,"...").concat(xv)}return"".concat(A).concat(s?L:"",`
|
||
`).concat(i).concat(n).concat(o).concat(h)}var KMt=function(e,t){UMt(n,e);var r=VMt(n);function n(i){var a;if(qMt(this,n),Rp(i)!=="object"||i===null)throw new WMt("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?(Hg="\x1B[34m",sE="\x1B[32m",xv="\x1B[39m",lE="\x1B[31m"):(Hg="",sE="",xv="",lE="")),Rp(u)==="object"&&u!==null&&Rp(c)==="object"&&c!==null&&"stack"in u&&u instanceof Error&&"stack"in c&&c instanceof Error&&(u=BSe(u),c=BSe(c)),s==="deepStrictEqual"||s==="strictEqual")a=r.call(this,YMt(u,c,s));else if(s==="notDeepStrictEqual"||s==="notStrictEqual"){var h=w2[s],d=uE(u).split(`
|
||
`);if(s==="notStrictEqual"&&Rp(u)==="object"&&u!==null&&(h=w2.notStrictEqualObject),d.length>30)for(d[26]="".concat(Hg,"...").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=uE(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(uE(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(qj(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(qj(a),l),a.stack,a.name="AssertionError",USe(a)}return BMt(n,[{key:"toString",value:function(){return"".concat(this.name," [").concat(this.code,"]: ").concat(this.message)}},{key:t,value:function(a,o){return Nj(this,zSe(zSe({},o),{},{customInspect:!1,depth:0}))}}]),n}(Bj(Error),Nj.custom);GSe.exports=KMt});var Uj=ye((thr,WSe)=>{"use strict";var jSe=Object.prototype.toString;WSe.exports=function(t){var r=jSe.call(t),n=r==="[object Arguments]";return n||(n=r!=="[object Array]"&&t!==null&&typeof t=="object"&&typeof t.length=="number"&&t.length>=0&&jSe.call(t.callee)==="[object Function]"),n}});var tMe=ye((rhr,eMe)=>{"use strict";var QSe;Object.keys||(hE=Object.prototype.hasOwnProperty,Vj=Object.prototype.toString,XSe=Uj(),Gj=Object.prototype.propertyIsEnumerable,ZSe=!Gj.call({toString:null},"toString"),YSe=Gj.call(function(){},"prototype"),dE=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],NR=function(e){var t=e.constructor;return t&&t.prototype===e},KSe={$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},JSe=function(){if(typeof window=="undefined")return!1;for(var e in window)try{if(!KSe["$"+e]&&hE.call(window,e)&&window[e]!==null&&typeof window[e]=="object")try{NR(window[e])}catch(t){return!0}}catch(t){return!0}return!1}(),$Se=function(e){if(typeof window=="undefined"||!JSe)return NR(e);try{return NR(e)}catch(t){return!1}},QSe=function(t){var r=t!==null&&typeof t=="object",n=Vj.call(t)==="[object Function]",i=XSe(t),a=r&&Vj.call(t)==="[object String]",o=[];if(!r&&!n&&!i)throw new TypeError("Object.keys called on a non-object");var s=YSe&&n;if(a&&t.length>0&&!hE.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")&&hE.call(t,c)&&o.push(String(c));if(ZSe)for(var f=$Se(t),h=0;h<dE.length;++h)!(f&&dE[h]==="constructor")&&hE.call(t,dE[h])&&o.push(dE[h]);return o});var hE,Vj,XSe,Gj,ZSe,YSe,dE,NR,KSe,JSe,$Se;eMe.exports=QSe});var Hj=ye((ihr,nMe)=>{"use strict";var JMt=Array.prototype.slice,$Mt=Uj(),rMe=Object.keys,UR=rMe?function(t){return rMe(t)}:tMe(),iMe=Object.keys;UR.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 $Mt(n)?iMe(JMt.call(n)):iMe(n)})}else Object.keys=UR;return Object.keys||UR};nMe.exports=UR});var cMe=ye((nhr,uMe)=>{"use strict";var QMt=Hj(),sMe=V8()(),lMe=nA(),aMe=Object,e4t=lMe("Array.prototype.push"),oMe=lMe("Object.prototype.propertyIsEnumerable"),t4t=sMe?Object.getOwnPropertySymbols:null;uMe.exports=function(t,r){if(t==null)throw new TypeError("target must be an object");var n=aMe(t);if(arguments.length===1)return n;for(var i=1;i<arguments.length;++i){var a=aMe(arguments[i]),o=QMt(a),s=sMe&&(Object.getOwnPropertySymbols||t4t);if(s)for(var l=s(a),u=0;u<l.length;++u){var c=l[u];oMe(a,c)&&e4t(o,c)}for(var f=0;f<o.length;++f){var h=o[f];if(oMe(a,h)){var d=a[h];n[h]=d}}}return n}});var hMe=ye((ahr,fMe)=>{"use strict";var jj=cMe(),r4t=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},i4t=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};fMe.exports=function(){return!Object.assign||r4t()||i4t()?jj:Object.assign}});var Wj=ye((ohr,vMe)=>{"use strict";var dMe=function(e){return e!==e};vMe.exports=function(t,r){return t===0&&r===0?1/t===1/r:!!(t===r||dMe(t)&&dMe(r))}});var VR=ye((shr,pMe)=>{"use strict";var n4t=Wj();pMe.exports=function(){return typeof Object.is=="function"?Object.is:n4t}});var vE=ye((lhr,_Me)=>{"use strict";var a4t=Hj(),o4t=typeof Symbol=="function"&&typeof Symbol("foo")=="symbol",s4t=Object.prototype.toString,l4t=Array.prototype.concat,gMe=Object.defineProperty,u4t=function(e){return typeof e=="function"&&s4t.call(e)==="[object Function]"},c4t=CH()(),mMe=gMe&&c4t,f4t=function(e,t,r,n){if(t in e){if(n===!0){if(e[t]===r)return}else if(!u4t(n)||!n())return}mMe?gMe(e,t,{configurable:!0,enumerable:!1,value:r,writable:!0}):e[t]=r},yMe=function(e,t){var r=arguments.length>2?arguments[2]:{},n=a4t(t);o4t&&(n=l4t.call(n,Object.getOwnPropertySymbols(t)));for(var i=0;i<n.length;i+=1)f4t(e,n[i],t[n[i]],r[n[i]])};yMe.supportsDescriptors=!!mMe;_Me.exports=yMe});var bMe=ye((uhr,xMe)=>{"use strict";var h4t=VR(),d4t=vE();xMe.exports=function(){var t=h4t();return d4t(Object,{is:t},{is:function(){return Object.is!==t}}),t}});var SMe=ye((chr,AMe)=>{"use strict";var v4t=vE(),p4t=j4(),g4t=Wj(),wMe=VR(),m4t=bMe(),TMe=p4t(wMe(),Object);v4t(TMe,{getPolyfill:wMe,implementation:g4t,shim:m4t});AMe.exports=TMe});var Xj=ye((fhr,MMe)=>{"use strict";MMe.exports=function(t){return t!==t}});var Zj=ye((hhr,EMe)=>{"use strict";var y4t=Xj();EMe.exports=function(){return Number.isNaN&&Number.isNaN(NaN)&&!Number.isNaN("a")?Number.isNaN:y4t}});var kMe=ye((dhr,CMe)=>{"use strict";var _4t=vE(),x4t=Zj();CMe.exports=function(){var t=x4t();return _4t(Number,{isNaN:t},{isNaN:function(){return Number.isNaN!==t}}),t}});var RMe=ye((vhr,IMe)=>{"use strict";var b4t=j4(),w4t=vE(),T4t=Xj(),LMe=Zj(),A4t=kMe(),PMe=b4t(LMe(),Number);w4t(PMe,{getPolyfill:LMe,implementation:T4t,shim:A4t});IMe.exports=PMe});var QMe=ye((phr,$Me)=>{"use strict";function DMe(e,t){return C4t(e)||E4t(e,t)||M4t(e,t)||S4t()}function S4t(){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 M4t(e,t){if(e){if(typeof e=="string")return FMe(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 FMe(e,t)}}function FMe(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 E4t(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 C4t(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 k4t=/a/g.flags!==void 0,YR=function(t){var r=[];return t.forEach(function(n){return r.push(n)}),r},zMe=function(t){var r=[];return t.forEach(function(n,i){return r.push([i,n])}),r},XMe=Object.is?Object.is:SMe(),XR=Object.getOwnPropertySymbols?Object.getOwnPropertySymbols:function(){return[]},Yj=Number.isNaN?Number.isNaN:RMe();function Jj(e){return e.call.bind(e)}var gE=Jj(Object.prototype.hasOwnProperty),ZR=Jj(Object.prototype.propertyIsEnumerable),OMe=Jj(Object.prototype.toString),op=dA().types,L4t=op.isAnyArrayBuffer,P4t=op.isArrayBufferView,qMe=op.isDate,GR=op.isMap,BMe=op.isRegExp,HR=op.isSet,I4t=op.isNativeError,R4t=op.isBoxedPrimitive,NMe=op.isNumberObject,UMe=op.isStringObject,VMe=op.isBooleanObject,GMe=op.isBigIntObject,D4t=op.isSymbolObject,F4t=op.isFloat32Array,z4t=op.isFloat64Array;function O4t(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 jR(e){return Object.keys(e).filter(O4t).concat(XR(e).filter(Object.prototype.propertyIsEnumerable.bind(e)))}function ZMe(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 WR=void 0,q4t=!0,B4t=!1,Kj=0,$j=1,YMe=2,KMe=3;function N4t(e,t){return k4t?e.source===t.source&&e.flags===t.flags:RegExp.prototype.toString.call(e)===RegExp.prototype.toString.call(t)}function U4t(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 V4t(e,t){return e.byteLength!==t.byteLength?!1:ZMe(new Uint8Array(e.buffer,e.byteOffset,e.byteLength),new Uint8Array(t.buffer,t.byteOffset,t.byteLength))===0}function G4t(e,t){return e.byteLength===t.byteLength&&ZMe(new Uint8Array(e),new Uint8Array(t))===0}function H4t(e,t){return NMe(e)?NMe(t)&&XMe(Number.prototype.valueOf.call(e),Number.prototype.valueOf.call(t)):UMe(e)?UMe(t)&&String.prototype.valueOf.call(e)===String.prototype.valueOf.call(t):VMe(e)?VMe(t)&&Boolean.prototype.valueOf.call(e)===Boolean.prototype.valueOf.call(t):GMe(e)?GMe(t)&&BigInt.prototype.valueOf.call(e)===BigInt.prototype.valueOf.call(t):D4t(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?XMe(e,t):!0;if(r){if(J0(e)!=="object")return typeof e=="number"&&Yj(e)&&Yj(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=OMe(e),a=OMe(t);if(i!==a)return!1;if(Array.isArray(e)){if(e.length!==t.length)return!1;var o=jR(e,WR),s=jR(t,WR);return o.length!==s.length?!1:pE(e,t,r,n,$j,o)}if(i==="[object Object]"&&(!GR(e)&&GR(t)||!HR(e)&&HR(t)))return!1;if(qMe(e)){if(!qMe(t)||Date.prototype.getTime.call(e)!==Date.prototype.getTime.call(t))return!1}else if(BMe(e)){if(!BMe(t)||!N4t(e,t))return!1}else if(I4t(e)||e instanceof Error){if(e.message!==t.message||e.name!==t.name)return!1}else if(P4t(e)){if(!r&&(F4t(e)||z4t(e))){if(!U4t(e,t))return!1}else if(!V4t(e,t))return!1;var l=jR(e,WR),u=jR(t,WR);return l.length!==u.length?!1:pE(e,t,r,n,Kj,l)}else{if(HR(e))return!HR(t)||e.size!==t.size?!1:pE(e,t,r,n,YMe);if(GR(e))return!GR(t)||e.size!==t.size?!1:pE(e,t,r,n,KMe);if(L4t(e)){if(!G4t(e,t))return!1}else if(R4t(e)&&!H4t(e,t))return!1}return pE(e,t,r,n,Kj)}function HMe(e,t){return t.filter(function(r){return ZR(e,r)})}function pE(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(!gE(t,a[s]))return!1;if(r&&arguments.length===5){var l=XR(e);if(l.length!==0){var u=0;for(s=0;s<l.length;s++){var c=l[s];if(ZR(e,c)){if(!ZR(t,c))return!1;a.push(c),u++}else if(ZR(t,c))return!1}var f=XR(t);if(l.length!==f.length&&HMe(t,f).length!==u)return!1}else{var h=XR(t);if(h.length!==0&&HMe(t,h).length!==0)return!1}}if(a.length===0&&(i===Kj||i===$j&&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=Y4t(e,t,r,a,n,i);return n.val1.delete(e),n.val2.delete(t),x}function jMe(e,t,r,n){for(var i=YR(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 JMe(e){switch(J0(e)){case"undefined":return null;case"object":return;case"symbol":return!1;case"string":e=+e;case"number":if(Yj(e))return!1}return!0}function j4t(e,t,r){var n=JMe(r);return n!=null?n:t.has(n)&&!e.has(n)}function W4t(e,t,r,n,i){var a=JMe(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 X4t(e,t,r,n){for(var i=null,a=YR(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||!j4t(e,t,s))return!1;i===null&&(i=new Set),i.add(s)}}if(i!==null){for(var l=YR(t),u=0;u<l.length;u++){var c=l[u];if(J0(c)==="object"&&c!==null){if(!jMe(i,c,r,n))return!1}else if(!r&&!e.has(c)&&!jMe(i,c,r,n))return!1}return i.size===0}return!0}function WMe(e,t,r,n,i,a){for(var o=YR(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 Z4t(e,t,r,n){for(var i=null,a=zMe(e),o=0;o<a.length;o++){var s=DMe(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||!W4t(e,t,l,u,n))return!1;i===null&&(i=new Set),i.add(l)}}}if(i!==null){for(var f=zMe(t),h=0;h<f.length;h++){var d=DMe(f[h],2),v=d[0],x=d[1];if(J0(v)==="object"&&v!==null){if(!WMe(i,e,v,x,r,n))return!1}else if(!r&&(!e.has(v)||!$0(e.get(v),x,!1,n))&&!WMe(i,e,v,x,!1,n))return!1}return i.size===0}return!0}function Y4t(e,t,r,n,i,a){var o=0;if(a===YMe){if(!X4t(e,t,r,i))return!1}else if(a===KMe){if(!Z4t(e,t,r,i))return!1}else if(a===$j)for(;o<e.length;o++)if(gE(e,o)){if(!gE(t,o)||!$0(e[o],t[o],r,i))return!1}else{if(gE(t,o))return!1;for(var s=Object.keys(e);o<s.length;o++){var l=s[o];if(!gE(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 K4t(e,t){return $0(e,t,B4t)}function J4t(e,t){return $0(e,t,q4t)}$Me.exports={isDeepEqual:K4t,isDeepStrictEqual:J4t}});var oE=ye((ghr,m4e)=>{"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 e4e(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,Q4t(n.key),n)}}function $4t(e,t,r){return t&&e4e(e.prototype,t),r&&e4e(e,r),Object.defineProperty(e,"prototype",{writable:!1}),e}function Q4t(e){var t=eEt(e,"string");return jg(t)==="symbol"?t:String(t)}function eEt(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 tEt(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var rEt=Oj(),mE=rEt.codes,t4e=mE.ERR_AMBIGUOUS_ARGUMENT,pA=mE.ERR_INVALID_ARG_TYPE,iEt=mE.ERR_INVALID_ARG_VALUE,nEt=mE.ERR_INVALID_RETURN_VALUE,U_=mE.ERR_MISSING_ARGS,V_=HSe(),aEt=dA(),KR=aEt.inspect,a4e=dA().types,oEt=a4e.isPromise,JR=a4e.isRegExp,sEt=hMe()(),o4e=VR()(),$R=nA()("RegExp.prototype.test"),N_,QR;function yE(){var e=QMe();N_=e.isDeepEqual,QR=e.isDeepStrictEqual}var r4e=!1,Mf=m4e.exports=Qj,eD={};function Wg(e){throw e.message instanceof Error?e.message:new V_(e)}function s4e(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(r4e===!1){r4e=!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||s4e};r!==void 0&&(l.message=r);var u=new V_(l);throw o&&(u.message=o,u.generatedMessage=!0),u}Mf.fail=s4e;Mf.AssertionError=V_;function l4e(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 Qj(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];l4e.apply(void 0,[Qj,t.length].concat(t))}Mf.ok=Qj;Mf.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})};Mf.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})};Mf.deepEqual=function e(t,r,n){if(arguments.length<2)throw new U_("actual","expected");N_===void 0&&yE(),N_(t,r)||Wg({actual:t,expected:r,message:n,operator:"deepEqual",stackStartFn:e})};Mf.notDeepEqual=function e(t,r,n){if(arguments.length<2)throw new U_("actual","expected");N_===void 0&&yE(),N_(t,r)&&Wg({actual:t,expected:r,message:n,operator:"notDeepEqual",stackStartFn:e})};Mf.deepStrictEqual=function e(t,r,n){if(arguments.length<2)throw new U_("actual","expected");N_===void 0&&yE(),QR(t,r)||Wg({actual:t,expected:r,message:n,operator:"deepStrictEqual",stackStartFn:e})};Mf.notDeepStrictEqual=u4e;function u4e(e,t,r){if(arguments.length<2)throw new U_("actual","expected");N_===void 0&&yE(),QR(e,t)&&Wg({actual:e,expected:t,message:r,operator:"notDeepStrictEqual",stackStartFn:u4e})}Mf.strictEqual=function e(t,r,n){if(arguments.length<2)throw new U_("actual","expected");o4e(t,r)||Wg({actual:t,expected:r,message:n,operator:"strictEqual",stackStartFn:e})};Mf.notStrictEqual=function e(t,r,n){if(arguments.length<2)throw new U_("actual","expected");o4e(t,r)&&Wg({actual:t,expected:r,message:n,operator:"notStrictEqual",stackStartFn:e})};var i4e=$4t(function e(t,r,n){var i=this;tEt(this,e),r.forEach(function(a){a in t&&(n!==void 0&&typeof n[a]=="string"&&JR(t[a])&&$R(t[a],n[a])?i[a]=n[a]:i[a]=t[a])})});function lEt(e,t,r,n,i,a){if(!(r in e)||!QR(e[r],t[r])){if(!n){var o=new i4e(e,i),s=new i4e(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 c4e(e,t,r,n){if(typeof t!="function"){if(JR(t))return $R(t,e);if(arguments.length===2)throw new pA("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 iEt("error",t,"may not be an empty object");return N_===void 0&&yE(),a.forEach(function(o){typeof e[o]=="string"&&JR(t[o])&&$R(t[o],e[o])||lEt(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 f4e(e){if(typeof e!="function")throw new pA("fn","Function",e);try{e()}catch(t){return t}return eD}function n4e(e){return oEt(e)||e!==null&&jg(e)==="object"&&typeof e.then=="function"&&typeof e.catch=="function"}function h4e(e){return Promise.resolve().then(function(){var t;if(typeof e=="function"){if(t=e(),!n4e(t))throw new nEt("instance of Promise","promiseFn",t)}else if(n4e(e))t=e;else throw new pA("promiseFn",["Function","Promise"],e);return Promise.resolve().then(function(){return t}).then(function(){return eD}).catch(function(r){return r})})}function d4e(e,t,r,n){if(typeof r=="string"){if(arguments.length===4)throw new pA("error",["Object","Error","Function","RegExp"],r);if(jg(t)==="object"&&t!==null){if(t.message===r)throw new t4e("error/message",'The error message "'.concat(t.message,'" is identical to the message.'))}else if(t===r)throw new t4e("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 pA("error",["Object","Error","Function","RegExp"],r);if(t===eD){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&&!c4e(t,r,n,e))throw t}function v4e(e,t,r,n){if(t!==eD){if(typeof r=="string"&&(n=r,r=void 0),!r||c4e(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}}Mf.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];d4e.apply(void 0,[e,f4e(t)].concat(n))};Mf.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 h4e(t).then(function(a){return d4e.apply(void 0,[e,a].concat(n))})};Mf.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];v4e.apply(void 0,[e,f4e(t)].concat(n))};Mf.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 h4e(t).then(function(a){return v4e.apply(void 0,[e,a].concat(n))})};Mf.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+=KR(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 p4e(e,t,r,n,i){if(!JR(t))throw new pA("regexp","RegExp",t);var a=i==="match";if(typeof e!="string"||$R(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(KR(e),")"):(a?"The input did not match the regular expression ":"The input was expected to not match the regular expression ")+"".concat(KR(t),`. Input:
|
||
|
||
`).concat(KR(e),`
|
||
`));var s=new V_({actual:e,expected:t,message:r,operator:i,stackStartFn:n});throw s.generatedMessage=o,s}}Mf.match=function e(t,r,n){p4e(t,r,n,e,"match")};Mf.doesNotMatch=function e(t,r,n){p4e(t,r,n,e,"doesNotMatch")};function g4e(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];l4e.apply(void 0,[g4e,t.length].concat(t))}Mf.strict=sEt(g4e,Mf,{equal:Mf.strictEqual,deepEqual:Mf.deepStrictEqual,notEqual:Mf.notStrictEqual,notDeepEqual:Mf.notDeepStrictEqual});Mf.strict.strict=Mf.strict});var _4e=ye((mhr,y4e)=>{var _E=1e3,xE=_E*60,bE=xE*60,wE=bE*24,uEt=wE*365.25;y4e.exports=function(e,t){t=t||{};var r=typeof e;if(r==="string"&&e.length>0)return cEt(e);if(r==="number"&&isNaN(e)===!1)return t.long?hEt(e):fEt(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))};function cEt(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*uEt;case"days":case"day":case"d":return r*wE;case"hours":case"hour":case"hrs":case"hr":case"h":return r*bE;case"minutes":case"minute":case"mins":case"min":case"m":return r*xE;case"seconds":case"second":case"secs":case"sec":case"s":return r*_E;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function fEt(e){return e>=wE?Math.round(e/wE)+"d":e>=bE?Math.round(e/bE)+"h":e>=xE?Math.round(e/xE)+"m":e>=_E?Math.round(e/_E)+"s":e+"ms"}function hEt(e){return tD(e,wE,"day")||tD(e,bE,"hour")||tD(e,xE,"minute")||tD(e,_E,"second")||e+" ms"}function tD(e,t,r){if(!(e<t))return e<t*1.5?Math.floor(e/t)+" "+r:Math.ceil(e/t)+" "+r+"s"}});var b4e=ye((Lc,x4e)=>{Lc=x4e.exports=tW.debug=tW.default=tW;Lc.coerce=mEt;Lc.disable=pEt;Lc.enable=vEt;Lc.enabled=gEt;Lc.humanize=_4e();Lc.names=[];Lc.skips=[];Lc.formatters={};var eW;function dEt(e){var t=0,r;for(r in e)t=(t<<5)-t+e.charCodeAt(r),t|=0;return Lc.colors[Math.abs(t)%Lc.colors.length]}function tW(e){function t(){if(t.enabled){var r=t,n=+new Date,i=n-(eW||n);r.diff=i,r.prev=eW,r.curr=n,eW=n;for(var a=new Array(arguments.length),o=0;o<a.length;o++)a[o]=arguments[o];a[0]=Lc.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=Lc.formatters[c];if(typeof f=="function"){var h=a[s];u=f.call(r,h),a.splice(s,1),s--}return u}),Lc.formatArgs.call(r,a);var l=t.log||Lc.log||console.log.bind(console);l.apply(r,a)}}return t.namespace=e,t.enabled=Lc.enabled(e),t.useColors=Lc.useColors(),t.color=dEt(e),typeof Lc.init=="function"&&Lc.init(t),t}function vEt(e){Lc.save(e),Lc.names=[],Lc.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]==="-"?Lc.skips.push(new RegExp("^"+e.substr(1)+"$")):Lc.names.push(new RegExp("^"+e+"$")))}function pEt(){Lc.enable("")}function gEt(e){var t,r;for(t=0,r=Lc.skips.length;t<r;t++)if(Lc.skips[t].test(e))return!1;for(t=0,r=Lc.names.length;t<r;t++)if(Lc.names[t].test(e))return!0;return!1}function mEt(e){return e instanceof Error?e.stack||e.message:e}});var A4e=ye((sp,T4e)=>{sp=T4e.exports=b4e();sp.log=xEt;sp.formatArgs=_Et;sp.save=bEt;sp.load=w4e;sp.useColors=yEt;sp.storage=typeof chrome!="undefined"&&typeof chrome.storage!="undefined"?chrome.storage.local:wEt();sp.colors=["lightseagreen","forestgreen","goldenrod","dodgerblue","darkorchid","crimson"];function yEt(){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+)/)}sp.formatters.j=function(e){try{return JSON.stringify(e)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}};function _Et(e){var t=this.useColors;if(e[0]=(t?"%c":"")+this.namespace+(t?" %c":" ")+e[0]+(t?"%c ":" ")+"+"+sp.humanize(this.diff),!!t){var r="color: "+this.color;e.splice(1,0,r,"color: inherit");var n=0,i=0;e[0].replace(/%[a-zA-Z%]/g,function(a){a!=="%%"&&(n++,a==="%c"&&(i=n))}),e.splice(i,0,r)}}function xEt(){return typeof console=="object"&&console.log&&Function.prototype.apply.call(console.log,console,arguments)}function bEt(e){try{e==null?sp.storage.removeItem("debug"):sp.storage.debug=e}catch(t){}}function w4e(){var e;try{e=sp.storage.debug}catch(t){}return!e&&typeof process!="undefined"&&"env"in process&&(e=process.env.DEBUG),e}sp.enable(w4e());function wEt(){try{return window.localStorage}catch(e){}}});var I4e=ye((yhr,P4e)=>{var gA=oE(),G_=A4e()("stream-parser");P4e.exports=AEt;var M4e=-1,rD=0,TEt=1,E4e=2;function AEt(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");G_("extending Parser into stream"),e._bytes=SEt,e._skipBytes=MEt,t&&(e._passthrough=EEt),t?e._transform=kEt:e._write=CEt}function TE(e){G_("initializing parser stream"),e._parserBytesLeft=0,e._parserBuffers=[],e._parserBuffered=0,e._parserState=M4e,e._parserCallback=null,typeof e.push=="function"&&(e._parserOutput=e.push.bind(e)),e._parserInit=!0}function SEt(e,t){gA(!this._parserCallback,'there is already a "callback" set!'),gA(isFinite(e)&&e>0,'can only buffer a finite number of bytes > 0, got "'+e+'"'),this._parserInit||TE(this),G_("buffering %o bytes",e),this._parserBytesLeft=e,this._parserCallback=t,this._parserState=rD}function MEt(e,t){gA(!this._parserCallback,'there is already a "callback" set!'),gA(e>0,'can only skip > 0 bytes, got "'+e+'"'),this._parserInit||TE(this),G_("skipping %o bytes",e),this._parserBytesLeft=e,this._parserCallback=t,this._parserState=TEt}function EEt(e,t){gA(!this._parserCallback,'There is already a "callback" set!'),gA(e>0,'can only pass through > 0 bytes, got "'+e+'"'),this._parserInit||TE(this),G_("passing through %o bytes",e),this._parserBytesLeft=e,this._parserCallback=t,this._parserState=E4e}function CEt(e,t,r){this._parserInit||TE(this),G_("write(%o bytes)",e.length),typeof t=="function"&&(r=t),k4e(this,e,null,r)}function kEt(e,t,r){this._parserInit||TE(this),G_("transform(%o bytes)",e.length),typeof t!="function"&&(t=this._parserOutput),k4e(this,e,t,r)}function C4e(e,t,r,n){return e._parserBytesLeft<=0?n(new Error("got data but not currently parsing anything")):t.length<=e._parserBytesLeft?function(){return S4e(e,t,r,n)}:function(){var i=t.slice(0,e._parserBytesLeft);return S4e(e,i,r,function(a){if(a)return n(a);if(t.length>i.length)return function(){return C4e(e,t.slice(i.length),r,n)}})}}function S4e(e,t,r,n){if(e._parserBytesLeft-=t.length,G_("%o bytes left for stream piece",e._parserBytesLeft),e._parserState===rD?(e._parserBuffers.push(t),e._parserBuffered+=t.length):e._parserState===E4e&&r(t),e._parserBytesLeft===0){var i=e._parserCallback;if(i&&e._parserState===rD&&e._parserBuffers.length>1&&(t=Buffer.concat(e._parserBuffers,e._parserBuffered)),e._parserState!==rD&&(t=null),e._parserCallback=null,e._parserBuffered=0,e._parserState=M4e,e._parserBuffers.splice(0),i){var a=[];t&&a.push(t),r&&a.push(r);var o=i.length>a.length;o&&a.push(L4e(n));var s=i.apply(e,a);if(!o||n===s)return n}}else return n}var k4e=L4e(C4e);function L4e(e){return function(){for(var t=e.apply(this,arguments);typeof t=="function";)t=t();return t}}});var rc=ye(Hy=>{"use strict";var R4e=SSe().Transform,LEt=I4e();function AE(){R4e.call(this,{readableObjectMode:!0})}AE.prototype=Object.create(R4e.prototype);AE.prototype.constructor=AE;LEt(AE.prototype);Hy.ParserStream=AE;Hy.sliceEq=function(e,t,r){for(var n=t,i=0;i<r.length;)if(e[n++]!==r[i++])return!1;return!0};Hy.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};Hy.readUInt16LE=function(e,t){return e[t]|e[t+1]<<8};Hy.readUInt16BE=function(e,t){return e[t+1]|e[t]<<8};Hy.readUInt32LE=function(e,t){return e[t]|e[t+1]<<8|e[t+2]<<16|e[t+3]*16777216};Hy.readUInt32BE=function(e,t){return e[t+3]|e[t+2]<<8|e[t+1]<<16|e[t]*16777216};function iD(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)}iD.prototype=Object.create(Error.prototype);iD.prototype.constructor=iD;Hy.ProbeError=iD});var D4e=ye((xhr,nD)=>{"use strict";var mA=rc().readUInt16BE,iW=rc().readUInt32BE;function SE(e,t){if(e.length<4+t)return null;var r=iW(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}}nD.exports.unbox=SE;function PEt(e,t){for(var r=0;;){var n=SE(e,r);if(!n)break;switch(n.boxtype){case"ispe":t.sizes.push({width:iW(n.data,4),height:iW(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 rW(e,t,r){for(var n=0,i=0;i<r;i++)n=n*256+(e[t+i]||0);return n}function IEt(e,t){for(var r=e[4]>>4&15,n=e[4]&15,i=e[5]>>4&15,a=mA(e,6),o=8,s=0;s<a;s++){var l=mA(e,o);o+=2;var u=mA(e,o);o+=2;var c=rW(e,o,i);o+=i;var f=mA(e,o);if(o+=2,u===0&&f===1){var h=rW(e,o,r),d=rW(e,o+r,n);t.item_loc[l]={length:d,offset:h+c}}o+=f*(r+n)}}function REt(e,t){for(var r=mA(e,4),n=6,i=0;i<r;i++){var a=SE(e,n);if(!a)break;if(a.boxtype==="infe"){for(var o=mA(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 DEt(e,t){for(var r=0;;){var n=SE(e,r);if(!n)break;n.boxtype==="ipco"&&PEt(n.data,t),r=n.end}}function FEt(e,t){for(var r=4;;){var n=SE(e,r);if(!n)break;n.boxtype==="iprp"&&DEt(n.data,t),n.boxtype==="iloc"&&IEt(n.data,t),n.boxtype==="iinf"&&REt(n.data,t),r=n.end}}function zEt(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}nD.exports.readSizeFromMeta=function(e){var t={sizes:[],transforms:[],item_inf:{},item_loc:{}};if(FEt(e,t),!!t.sizes.length){var r=zEt(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}}};nD.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 oD=ye((bhr,nW)=>{"use strict";function aD(e,t){var r=new Error(e);return r.code=t,r}function OEt(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 aD("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 aD("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 aD("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 aD("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=OEt(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)})};nW.exports.ExifParser=jy;nW.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 z4e=ye((whr,F4e)=>{"use strict";var qEt=rc().str2arr,BEt=rc().sliceEq,NEt=rc().readUInt32BE,sD=D4e(),UEt=oD(),VEt=qEt("ftyp");F4e.exports=function(e){if(BEt(e,4,VEt)){var t=sD.unbox(e,0);if(t){var r=sD.getMimeType(t.data);if(r){for(var n,i=t.end;;){var a=sD.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=sD.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=NEt(e,o.exif_location.offset),u=e.slice(o.exif_location.offset+l+4,o.exif_location.offset+o.exif_location.length),c=UEt.get_orientation(u);c>0&&(s.orientation=c)}return s}}}}}}});var B4e=ye((Thr,q4e)=>{"use strict";var GEt=rc().str2arr,HEt=rc().sliceEq,O4e=rc().readUInt16LE,jEt=GEt("BM");q4e.exports=function(e){if(!(e.length<26)&&HEt(e,0,jEt))return{width:O4e(e,18),height:O4e(e,22),type:"bmp",mime:"image/bmp",wUnits:"px",hUnits:"px"}}});var H4e=ye((Ahr,G4e)=>{"use strict";var V4e=rc().str2arr,N4e=rc().sliceEq,U4e=rc().readUInt16LE,WEt=V4e("GIF87a"),XEt=V4e("GIF89a");G4e.exports=function(e){if(!(e.length<10)&&!(!N4e(e,0,WEt)&&!N4e(e,0,XEt)))return{width:U4e(e,6),height:U4e(e,8),type:"gif",mime:"image/gif",wUnits:"px",hUnits:"px"}}});var X4e=ye((Shr,W4e)=>{"use strict";var aW=rc().readUInt16LE,ZEt=0,YEt=1,j4e=16;W4e.exports=function(e){var t=aW(e,0),r=aW(e,2),n=aW(e,4);if(!(t!==ZEt||r!==YEt||!n)){for(var i=[],a={width:0,height:0},o=0;o<n;o++){var s=e[6+j4e*o]||256,l=e[6+j4e*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 Y4e=ye((Mhr,Z4e)=>{"use strict";var oW=rc().readUInt16BE,KEt=rc().str2arr,JEt=rc().sliceEq,$Et=oD(),QEt=KEt("Exif\0\0");Z4e.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=oW(e,t)-2,t+=2}else return;if(r===217||r===218)return;var i;if(r===225&&n>=10&&JEt(e,t,QEt)&&(i=$Et.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:oW(e,t+3),height:oW(e,t+1),type:"jpg",mime:"image/jpeg",wUnits:"px",hUnits:"px"};return i>0&&(a.orientation=i),a}t+=n}}});var eEe=ye((Ehr,Q4e)=>{"use strict";var $4e=rc().str2arr,K4e=rc().sliceEq,J4e=rc().readUInt32BE,eCt=$4e(`\x89PNG\r
|
||
|
||
`),tCt=$4e("IHDR");Q4e.exports=function(e){if(!(e.length<24)&&K4e(e,0,eCt)&&K4e(e,12,tCt))return{width:J4e(e,16),height:J4e(e,20),type:"png",mime:"image/png",wUnits:"px",hUnits:"px"}}});var iEe=ye((Chr,rEe)=>{"use strict";var rCt=rc().str2arr,iCt=rc().sliceEq,tEe=rc().readUInt32BE,nCt=rCt("8BPS\0");rEe.exports=function(e){if(!(e.length<22)&&iCt(e,0,nCt))return{width:tEe(e,18),height:tEe(e,14),type:"psd",mime:"image/vnd.adobe.photoshop",wUnits:"px",hUnits:"px"}}});var oEe=ye((khr,aEe)=>{"use strict";function aCt(e){return e===32||e===9||e===13||e===10}function yA(e){return typeof e=="number"&&isFinite(e)&&e>0}function oCt(e){var t=0,r=e.length;for(e[0]===239&&e[1]===187&&e[2]===191&&(t=3);t<r&&aCt(e[t]);)t++;return t===r?!1:e[t]===60}var sCt=/<[-_.:a-zA-Z0-9][^>]*>/,lCt=/^<([-_.:a-zA-Z0-9]+:)?svg\s/,uCt=/[^-]\bwidth="([^%]+?)"|[^-]\bwidth='([^%]+?)'/,cCt=/\bheight="([^%]+?)"|\bheight='([^%]+?)'/,fCt=/\bview[bB]ox="(.+?)"|\bview[bB]ox='(.+?)'/,nEe=/in$|mm$|cm$|pt$|pc$|px$|em$|ex$/;function hCt(e){var t=e.match(uCt),r=e.match(cCt),n=e.match(fCt);return{width:t&&(t[1]||t[2]),height:r&&(r[1]||r[2]),viewbox:n&&(n[1]||n[2])}}function Nm(e){return nEe.test(e)?e.match(nEe)[0]:"px"}aEe.exports=function(e){if(oCt(e)){for(var t="",r=0;r<e.length;r++)t+=String.fromCharCode(e[r]);var n=(t.match(sCt)||[""])[0];if(lCt.test(n)){var i=hCt(n),a=parseFloat(i.width),o=parseFloat(i.height);if(i.width&&i.height)return!yA(a)||!yA(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(!(!yA(u)||!yA(c))&&Nm(l.width)===Nm(l.height)){var f=u/c;return i.width?yA(a)?{width:a,height:a/f,type:"svg",mime:"image/svg+xml",wUnits:Nm(i.width),hUnits:Nm(i.width)}:void 0:i.height?yA(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 fEe=ye((Lhr,cEe)=>{"use strict";var uEe=rc().str2arr,sEe=rc().sliceEq,dCt=rc().readUInt16LE,vCt=rc().readUInt16BE,pCt=rc().readUInt32LE,gCt=rc().readUInt32BE,mCt=uEe("II*\0"),yCt=uEe("MM\0*");function lD(e,t,r){return r?vCt(e,t):dCt(e,t)}function sW(e,t,r){return r?gCt(e,t):pCt(e,t)}function lEe(e,t,r){var n=lD(e,t+2,r),i=sW(e,t+4,r);return i!==1||n!==3&&n!==4?null:n===3?lD(e,t+8,r):sW(e,t+8,r)}cEe.exports=function(e){if(!(e.length<8)&&!(!sEe(e,0,mCt)&&!sEe(e,0,yCt))){var t=e[0]===77,r=sW(e,4,t)-8;if(!(r<0)){var n=r+8;if(!(e.length-n<2)){var i=lD(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=lD(e,n+a,t),l===256?o=lEe(e,n+a,t):l===257&&(s=lEe(e,n+a,t));if(o&&s)return{width:o,height:s,type:"tiff",mime:"image/tiff",wUnits:"px",hUnits:"px"}}}}}}});var gEe=ye((Phr,pEe)=>{"use strict";var vEe=rc().str2arr,hEe=rc().sliceEq,dEe=rc().readUInt16LE,lW=rc().readUInt32LE,_Ct=oD(),xCt=vEe("RIFF"),bCt=vEe("WEBP");function wCt(e,t){if(!(e[t+3]!==157||e[t+4]!==1||e[t+5]!==42))return{width:dEe(e,t+6)&16383,height:dEe(e,t+8)&16383,type:"webp",mime:"image/webp",wUnits:"px",hUnits:"px"}}function TCt(e,t){if(e[t]===47){var r=lW(e,t+1);return{width:(r&16383)+1,height:(r>>14&16383)+1,type:"webp",mime:"image/webp",wUnits:"px",hUnits:"px"}}}function ACt(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"}}pEe.exports=function(e){if(!(e.length<16)&&!(!hEe(e,0,xCt)&&!hEe(e,8,bCt))){var t=12,r=null,n=0,i=lW(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=lW(e,t+4);a==="VP8 "&&o>=10?r=r||wCt(e,t+8):a==="VP8L"&&o>=9?r=r||TCt(e,t+8):a==="VP8X"&&o>=10?r=r||ACt(e,t+8):a==="EXIF"&&(n=_Ct.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 yEe=ye((Ihr,mEe)=>{"use strict";mEe.exports={avif:z4e(),bmp:B4e(),gif:H4e(),ico:X4e(),jpeg:Y4e(),png:eEe(),psd:iEe(),svg:oEe(),tiff:fEe(),webp:gEe()}});var _Ee=ye((Rhr,cW)=>{"use strict";var uW=yEe();function SCt(e){for(var t=Object.keys(uW),r=0;r<t.length;r++){var n=uW[t[r]](e);if(n)return n}return null}cW.exports=function(t){return SCt(t)};cW.exports.parsers=uW});var bEe=ye(xEe=>{"use strict";var MCt=_Ee(),ECt=Ly().IMAGE_URL_PREFIX,CCt=u2().Buffer;xEe.getImageSize=function(e){var t=e.replace(ECt,""),r=new CCt(t,"base64");return MCt(r)}});var AEe=ye((Fhr,TEe)=>{"use strict";var wEe=Dr(),kCt=jT(),LCt=Eo(),uD=ho(),PCt=Dr().maxRowLength,ICt=bEe().getImageSize;TEe.exports=function(t,r){var n,i;if(r._hasZ)n=r.z.length,i=PCt(r.z);else if(r._hasSource){var a=ICt(r.source);n=a.height,i=a.width}var o=uD.getFromId(t,r.xaxis||"x"),s=uD.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]=uD.findExtremes(o,f),r._extremes[s._id]=uD.findExtremes(s,h),r._scaler=FCt(r);var d={x0:l,y0:u,z:r.z,w:i,h:n};return[d]};function RCt(e,t,r,n){return function(i){return wEe.constrain((i-e)*t,r,n)}}function DCt(e,t){return function(r){return wEe.constrain(r,e,t)}}function FCt(e){var t=kCt.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(RCt(e.zmin[i],(t.max[i]-t.min[i])/(e.zmax[i]-e.zmin[i]),t.min[i],t.max[i])):e._sArray.push(DCt(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(!LCt(l))return!1;o[s]=e._sArray[s](l)}return o}}});var EEe=ye((zhr,MEe)=>{"use strict";var zCt=Oa(),T2=Dr(),SEe=T2.strTranslate,OCt=Wp(),qCt=jT(),BCt=KV(),NCt=u8().STYLE;MEe.exports=function(t,r,n,i){var a=r.xaxis,o=r.yaxis,s=!t._context._exportedPlot&&BCt();T2.makeTraceGroups(i,n,"im").each(function(l){var u=zCt.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,C=f.dx,E=f.dy,A,L,_,k,M,g;for(g=0;A===void 0&&g<b;)A=a.c2p(v+g*C),g++;for(g=b;L===void 0&&g>0;)L=a.c2p(v+g*C),g--;for(g=0;k===void 0&&g<p;)k=o.c2p(x+g*E),g++;for(g=p;M===void 0&&g>0;)M=o.c2p(x+g*E),g--;if(L<A&&(_=L,L=A,A=_),M<k&&(_=k,k=M,M=_),!h){var P=.5;A=Math.max(-P*a._length,A),L=Math.min((1+P)*a._length,L),k=Math.max(-P*o._length,k),M=Math.min((1+P)*o._length,M)}var T=Math.round(L-A),z=Math.round(M-k),O=T<=0||z<=0;if(O){var V=u.selectAll("image").data([]);V.exit().remove();return}function G(me){var ie=document.createElement("canvas");ie.width=T,ie.height=z;var Se=ie.getContext("2d",{willReadFrequently:!0}),Le=function(st){return T2.constrain(Math.round(a.c2p(v+st*C)-A),0,T)},Ae=function(st){return T2.constrain(Math.round(o.c2p(x+st*E)-k),0,z)},De=qCt.colormodel[f.colormodel],Pe=De.colormodel||f.colormodel,ge=De.fmt,Fe;for(g=0;g<c.w;g++){var ce=Le(g),Ze=Le(g+1);if(!(Ze===ce||isNaN(Ze)||isNaN(ce)))for(var ct=0;ct<c.h;ct++){var pt=Ae(ct),Wt=Ae(ct+1);Wt===pt||isNaN(Wt)||isNaN(pt)||!me(g,ct)||(Fe=f._scaler(me(g,ct)),Fe?Se.fillStyle=Pe+"("+ge(Fe).join(",")+")":Se.fillStyle="rgba(0,0,0,0)",Se.fillRect(ce,pt,Ze-ce,Wt-pt))}}return ie}var Z=u.selectAll("image").data([l]);Z.enter().append("svg:image").attr({xmlns:OCt.svg,preserveAspectRatio:"none"}),Z.exit().remove();var H=f.zsmooth===!1?NCt:"";if(h){var N=T2.simpleMap(a.range,a.r2l),j=T2.simpleMap(o.range,o.r2l),re=N[1]<N[0],oe=j[1]>j[0];if(re||oe){var _e=A+T/2,Me=k+z/2;H+="transform:"+SEe(_e+"px",Me+"px")+"scale("+(re?-1:1)+","+(oe?-1:1)+")"+SEe(-_e+"px",-Me+"px")+";"}}Z.attr("style",H);var ke=new Promise(function(me){if(f._hasZ)me();else if(f._hasSource)if(f._canvas&&f._canvas.el.width===b&&f._canvas.el.height===p&&f._canvas.source===f.source)me();else{var ie=document.createElement("canvas");ie.width=b,ie.height=p;var Se=ie.getContext("2d",{willReadFrequently:!0});f._image=f._image||new Image;var Le=f._image;Le.onload=function(){Se.drawImage(Le,0,0),f._canvas={el:ie,source:f.source},me()},Le.setAttribute("src",f.source)}}).then(function(){var me,ie;if(f._hasZ)ie=G(function(Ae,De){var Pe=d[De][Ae];return T2.isTypedArray(Pe)&&(Pe=Array.from(Pe)),Pe}),me=ie.toDataURL("image/png");else if(f._hasSource)if(h)me=f.source;else{var Se=f._canvas.el.getContext("2d",{willReadFrequently:!0}),Le=Se.getImageData(0,0,b,p).data;ie=G(function(Ae,De){var Pe=4*(De*b+Ae);return[Le[Pe],Le[Pe+1],Le[Pe+2],Le[Pe+3]]}),me=ie.toDataURL("image/png")}Z.attr({"xlink:href":me,height:z,width:T,x:A,y:k})});t._promises.push(ke)})}});var kEe=ye((Ohr,CEe)=>{"use strict";var UCt=Oa();CEe.exports=function(t){UCt.select(t).selectAll(".im image").style("opacity",function(r){return r[0].trace.opacity})}});var REe=ye((qhr,IEe)=>{"use strict";var LEe=vf(),PEe=Dr(),cD=PEe.isArrayOrTypedArray,VCt=jT();IEe.exports=function(t,r,n){var i=t.cd[0],a=i.trace,o=t.xa,s=t.ya;if(!(LEe.inbox(r-i.x0,r-(i.x0+i.w*a.dx),0)>0||LEe.inbox(n-i.y0,n-(i.y0+i.h*a.dy),0)>0)){var l=Math.floor((r-i.x0)/a.dx),u=Math.floor(Math.abs(n-i.y0)/a.dy),c;if(a._hasZ?c=i.z[u][l]:a._hasSource&&(c=a._canvas.el.getContext("2d",{willReadFrequently:!0}).getImageData(l,u,1,1).data),!!c){var f=i.hi||a.hoverinfo,h;if(f){var d=f.split("+");d.indexOf("all")!==-1&&(d=["color"]),d.indexOf("color")!==-1&&(h=!0)}var v=VCt.colormodel[a.colormodel],x=v.colormodel||a.colormodel,b=x.length,p=a._scaler(c),C=v.suffix,E=[];(a.hovertemplate||h)&&(E.push("["+[p[0]+C[0],p[1]+C[1],p[2]+C[2]].join(", ")),b===4&&E.push(", "+p[3]+C[3]),E.push("]"),E=E.join(""),t.extraText=x.toUpperCase()+": "+E);var A;cD(a.hovertext)&&cD(a.hovertext[u])?A=a.hovertext[u][l]:cD(a.text)&&cD(a.text[u])&&(A=a.text[u][l]);var L=s.c2p(i.y0+(u+.5)*a.dy),_=i.x0+(l+.5)*a.dx,k=i.y0+(u+.5)*a.dy,M="["+c.slice(0,a.colormodel.length).join(", ")+"]";return[PEe.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:k,yLabelVal:k,zLabelVal:M,text:A,hovertemplateLabels:{zLabel:M,colorLabel:E,"color[0]Label":p[0]+C[0],"color[1]Label":p[1]+C[1],"color[2]Label":p[2]+C[2],"color[3]Label":p[3]+C[3]}})]}}}});var FEe=ye((Bhr,DEe)=>{"use strict";DEe.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 OEe=ye((Nhr,zEe)=>{"use strict";zEe.exports={attributes:oH(),supplyDefaults:R3e(),calc:AEe(),plot:EEe(),style:kEe(),hoverPoints:REe(),eventData:FEe(),moduleType:"trace",name:"image",basePlotModule:vh(),categories:["cartesian","svg","2dMap","noSortingByValue"],animatable:!1,meta:{}}});var BEe=ye((Uhr,qEe)=>{"use strict";qEe.exports=OEe()});var A2=ye((Vhr,NEe)=>{"use strict";var GCt=Vl(),HCt=kc().attributes,jCt=ec(),WCt=Eh(),XCt=Qo().hovertemplateAttrs,ZCt=Qo().texttemplateAttrs,ME=Ao().extendFlat,YCt=Pd().pattern,fD=jCt({editType:"plot",arrayOk:!0,colorEditType:"plot"});NEe.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:WCt.defaultLine,arrayOk:!0,editType:"style"},width:{valType:"number",min:0,dflt:0,arrayOk:!0,editType:"style"},editType:"calc"},pattern:YCt,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:ME({},GCt.hoverinfo,{flags:["label","text","value","percent","name"]}),hovertemplate:XCt({},{keys:["label","color","value","percent","text"]}),texttemplate:ZCt({editType:"plot"},{keys:["label","color","value","percent","text"]}),textposition:{valType:"enumerated",values:["inside","outside","auto","none"],dflt:"auto",arrayOk:!0,editType:"plot"},textfont:ME({},fD,{}),insidetextorientation:{valType:"enumerated",values:["horizontal","radial","tangential","auto"],dflt:"auto",editType:"plot"},insidetextfont:ME({},fD,{}),outsidetextfont:ME({},fD,{}),automargin:{valType:"boolean",dflt:!1,editType:"plot"},title:{text:{valType:"string",dflt:"",editType:"plot"},font:ME({},fD,{}),position:{valType:"enumerated",values:["top left","top center","top right","middle center","bottom left","bottom center","bottom right"],editType:"plot"},editType:"plot"},domain:HCt({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((Ghr,GEe)=>{"use strict";var KCt=Eo(),EE=Dr(),JCt=A2(),$Ct=kc().defaults,QCt=r0().handleText,ekt=Dr().coercePattern;function UEe(e,t){var r=EE.isArrayOrTypedArray(e),n=EE.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(KCt(s)&&s>0){a=!0;break}}a||(i=0)}return{hasLabels:r,hasValues:n,len:i}}function VEe(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");ekt(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 tkt(e,t,r,n){function i(C,E){return EE.coerce(e,t,JCt,C,E)}var a=i("labels"),o=i("values"),s=UEe(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,VEe(e,t,n,i,!0),i("scalegroup");var u=i("text"),c=i("texttemplate"),f;if(c||(f=i("textinfo",EE.isArrayOrTypedArray(u)?"text+percent":"percent")),i("hovertext"),i("hovertemplate"),c||f&&f!=="none"){var h=i("textposition");QCt(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");$Ct(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"),EE.coerceFont(i,"title.font",n.font)}i("sort"),i("direction"),i("rotation"),i("pull")}GEe.exports={handleLabelsAndValues:UEe,handleMarkerDefaults:VEe,supplyDefaults:tkt}});var hD=ye((Hhr,HEe)=>{"use strict";HEe.exports={hiddenlabels:{valType:"data_array",editType:"calc"},piecolorway:{valType:"colorlist",editType:"calc"},extendpiecolors:{valType:"boolean",dflt:!0,editType:"calc"}}});var WEe=ye((jhr,jEe)=>{"use strict";var rkt=Dr(),ikt=hD();jEe.exports=function(t,r){function n(i,a){return rkt.coerce(t,r,ikt,i,a)}n("hiddenlabels"),n("piecolorway",r.colorway),n("extendpiecolors")}});var _A=ye((Whr,YEe)=>{"use strict";var nkt=Eo(),fW=cd(),akt=Ca(),okt={};function skt(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=XEe(n["_"+t.type+"colormap"]),v=0,x=!1;for(c=0;c<l;c++){var b,p,C;if(u){if(b=s[c],!nkt(b))continue;b=+b}else b=1;p=a[c],(p===void 0||p==="")&&(p=c),p=String(p);var E=h[p];E===void 0?(h[p]=r.length,C=i.indexOf(p)!==-1,C||(v+=b),r.push({v:b,label:p,color:d(o[c],p),i:c,pts:[c],hidden:C})):(x=!0,f=r[E],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 XEe(e){return function(r,n){return!r||(r=fW(r),!r.isValid())?!1:(r=akt.addOpacity(r,r.getAlpha()),e[n]||(e[n]=r),r)}}function lkt(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=ZEe(a,okt));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 ZEe(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(fW(e[r]).lighten(20).toHexString());for(r=0;r<e.length;r++)i.push(fW(e[r]).darken(20).toHexString());t[n]=i}return i}YEe.exports={calc:skt,crossTraceCalc:lkt,makePullColorFn:XEe,generateExtendedColors:ZEe}});var JEe=ye((Xhr,KEe)=>{"use strict";var ukt=rp().appendArrayMultiPointValues;KEe.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]),ukt(n,r,t.pts),r.type==="funnelarea"&&(delete n.v,delete n.i),n}});var gD=ye((Zhr,yCe)=>{"use strict";var Dp=Oa(),ckt=Mc(),dD=vf(),iCe=Ca(),Wy=So(),rv=Dr(),fkt=rv.strScale,$Ee=rv.strTranslate,hW=iu(),nCe=_v(),hkt=nCe.recordMinTextSize,dkt=nCe.clearMinTextSize,aCe=Qb().TEXTPAD,as=u_(),vD=JEe(),QEe=Dr().isValidTextValue;function vkt(e,t){var r=e._context.staticPlot,n=e._fullLayout,i=n._size;dkt("pie",n),lCe(t,e),pCe(t,i);var a=rv.makeTraceGroups(n._pielayer,t,"trace").each(function(o){var s=Dp.select(this),l=o[0],u=l.trace;Tkt(o),s.attr("stroke-linejoin","round"),s.each(function(){var c=Dp.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){Dp.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,k=l.cy,M=Dp.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(oCe,e,o),u.pull){var P=+as.castOption(u.pull,A.pts)||0;P>0&&(_+=P*A.pxmid[0],k+=P*A.pxmid[1])}A.cxFinal=_,A.cyFinal=k;function T(N,j,re,oe){var _e=oe*(j[0]-N[0]),Me=oe*(j[1]-N[1]);return"a"+oe*l.r+","+oe*l.r+" 0 "+A.largeArc+(re?" 1 ":" 0 ")+_e+","+Me}var z=u.hole;if(A.v===l.vTotal){var O="M"+(_+A.px0[0])+","+(k+A.px0[1])+T(A.px0,A.pxmid,!0,1)+T(A.pxmid,A.px0,!0,1)+"Z";z?g.attr("d","M"+(_+z*A.px0[0])+","+(k+z*A.px0[1])+T(A.px0,A.pxmid,!1,z)+T(A.pxmid,A.px0,!1,z)+"Z"+O):g.attr("d",O)}else{var V=T(A.px0,A.px1,!0,1);if(z){var G=1-z;g.attr("d","M"+(_+z*A.px1[0])+","+(k+z*A.px1[1])+T(A.px1,A.px0,!1,z)+"l"+G*A.px0[0]+","+G*A.px0[1]+V+"Z")}else g.attr("d","M"+_+","+k+"l"+A.px0[0]+","+A.px0[1]+V+"Z")}gCe(e,A,l);var Z=as.castOption(u.textposition,A.pts),H=M.selectAll("g.slicetext").data(A.text&&Z!=="none"?[0]:[]);H.enter().append("g").classed("slicetext",!0),H.exit().remove(),H.each(function(){var N=rv.ensureSingle(Dp.select(this),"text","",function(ie){ie.attr("data-notex",1)}),j=rv.ensureUniformFontSize(e,Z==="outside"?gkt(u,A,n.font):sCe(u,A,n.font));N.text(A.text).attr({class:"slicetext",transform:"","text-anchor":"middle"}).call(Wy.font,j).call(hW.convertToTspans,e);var re=Wy.bBox(N.node()),oe;if(Z==="outside")oe=rCe(re,A);else if(oe=uCe(re,A,l),Z==="auto"&&oe.scale<1){var _e=rv.ensureUniformFontSize(e,u.outsidetextfont);N.call(Wy.font,_e),re=Wy.bBox(N.node()),oe=rCe(re,A)}var Me=oe.textPosAngle,ke=Me===void 0?A.pxmid:pD(l.r,Me);if(oe.targetX=_+ke[0]*oe.rCenter+(oe.x||0),oe.targetY=k+ke[1]*oe.rCenter+(oe.y||0),mCe(oe,re),oe.outside){var me=oe.targetY;A.yLabelMin=me-re.height/2,A.yLabelMid=me,A.yLabelMax=me+re.height/2,A.labelExtraX=0,A.labelExtraY=0,h=!0}oe.fontSize=j.size,hkt(u.type,oe,n),o[L].transform=oe,rv.setTransormAndDisplay(N,oe)})});var d=Dp.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=rv.ensureSingle(Dp.select(this),"text","",function(k){k.attr("data-notex",1)}),L=u.title.text;u._meta&&(L=rv.templateString(L,u._meta)),A.text(L).attr({class:"titletext",transform:"","text-anchor":"middle"}).call(Wy.font,u.title.font).call(hW.convertToTspans,e);var _;u.title.position==="middle center"?_=_kt(l):_=dCe(l,i),A.attr("transform",$Ee(_.x,_.y)+fkt(Math.min(1,_.scale))+$Ee(_.tx,_.ty))}),h&&bkt(f,u),pkt(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]),C=(.5*b-l.r)/i.w,E=(.5*p-l.r)/i.h;ckt.autoMargin(e,"pie."+u.uid+".automargin",{xl:x.x[0]-C,xr:x.x[1]+C,yb:x.y[0]-E,yt:x.y[1]+E,l:Math.max(l.cx-l.r-v.left,0),r:Math.max(v.right-(l.cx+l.r),0),b:Math.max(v.bottom-(l.cy+l.r),0),t:Math.max(l.cy-l.r-v.top,0),pad:5})}})});setTimeout(function(){a.selectAll("tspan").each(function(){var o=Dp.select(this);o.attr("dy")&&o.attr("dy",o.attr("dy"))})},0)}function pkt(e,t){e.each(function(r){var n=Dp.select(this);if(!r.labelExtraX&&!r.labelExtraY){n.select("path.textline").remove();return}var i=n.select("g.slicetext text");r.transform.targetX+=r.labelExtraX,r.transform.targetY+=r.labelExtraY,rv.setTransormAndDisplay(i,r.transform);var a=r.cxFinal+r.pxmid[0],o=r.cyFinal+r.pxmid[1],s="M"+a+","+o,l=(r.yLabelMax-r.yLabelMin)*(r.pxmid[0]<0?-1:1)/4;if(r.labelExtraX){var u=r.labelExtraX*r.pxmid[1]/r.pxmid[0],c=r.yLabelMid+r.labelExtraY-(r.cyFinal+r.pxmid[1]);Math.abs(u)>Math.abs(c)?s+="l"+c*r.pxmid[0]/r.pxmid[1]+","+c+"H"+(a+r.labelExtraX+l):s+="l"+r.labelExtraX+","+u+"v"+(c-u)+"h"+l}else s+="V"+(r.yLabelMid+r.labelExtraY)+"h"+l;rv.ensureSingle(n,"path","textline").call(iCe.stroke,t.outsidetextfont.color).attr({"stroke-width":Math.min(2,t.outsidetextfont.size/8),d:s,fill:"none"})})}function oCe(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=dD.castHoverinfo({hoverinfo:[as.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=as.castOption(c.hovertext||c.text,l.pts),f&&f.indexOf("text")!==-1){var p=l.text;rv.isValidTextValue(p)&&b.push(p)}l.value=l.v,l.valueLabel=as.formatPieValue(l.v,x),f&&f.indexOf("value")!==-1&&b.push(l.valueLabel),l.percent=l.v/n.vTotal,l.percentLabel=as.formatPiePercent(l.percent,x),f&&f.indexOf("percent")!==-1&&b.push(l.percentLabel);var C=c.hoverlabel,E=C.font,A=[];dD.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:as.castOption(C.bgcolor,l.pts)||l.color,borderColor:as.castOption(C.bordercolor,l.pts),fontFamily:as.castOption(E.family,l.pts),fontSize:as.castOption(E.size,l.pts),fontColor:as.castOption(E.color,l.pts),nameLength:as.castOption(C.namelength,l.pts),textAlign:as.castOption(C.align,l.pts),hovertemplate:as.castOption(c.hovertemplate,l.pts),hovertemplateLabels:l,eventData:[vD(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:[vD(l,c)],event:Dp.event})}}),e.on("mouseout",function(l){var u=t._fullLayout,c=t._fullData[o.index],f=Dp.select(this).datum();o._hasHoverEvent&&(l.originalEvent=Dp.event,t.emit("plotly_unhover",{points:[vD(f,c)],event:Dp.event}),o._hasHoverEvent=!1),o._hasHoverLabel&&(dD.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=[vD(l,c)],dD.click(t,Dp.event))})}function gkt(e,t,r){var n=as.castOption(e.outsidetextfont.color,t.pts)||as.castOption(e.textfont.color,t.pts)||r.color,i=as.castOption(e.outsidetextfont.family,t.pts)||as.castOption(e.textfont.family,t.pts)||r.family,a=as.castOption(e.outsidetextfont.size,t.pts)||as.castOption(e.textfont.size,t.pts)||r.size,o=as.castOption(e.outsidetextfont.weight,t.pts)||as.castOption(e.textfont.weight,t.pts)||r.weight,s=as.castOption(e.outsidetextfont.style,t.pts)||as.castOption(e.textfont.style,t.pts)||r.style,l=as.castOption(e.outsidetextfont.variant,t.pts)||as.castOption(e.textfont.variant,t.pts)||r.variant,u=as.castOption(e.outsidetextfont.textcase,t.pts)||as.castOption(e.textfont.textcase,t.pts)||r.textcase,c=as.castOption(e.outsidetextfont.lineposition,t.pts)||as.castOption(e.textfont.lineposition,t.pts)||r.lineposition,f=as.castOption(e.outsidetextfont.shadow,t.pts)||as.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 sCe(e,t,r){var n=as.castOption(e.insidetextfont.color,t.pts);!n&&e._input.textfont&&(n=as.castOption(e._input.textfont.color,t.pts));var i=as.castOption(e.insidetextfont.family,t.pts)||as.castOption(e.textfont.family,t.pts)||r.family,a=as.castOption(e.insidetextfont.size,t.pts)||as.castOption(e.textfont.size,t.pts)||r.size,o=as.castOption(e.insidetextfont.weight,t.pts)||as.castOption(e.textfont.weight,t.pts)||r.weight,s=as.castOption(e.insidetextfont.style,t.pts)||as.castOption(e.textfont.style,t.pts)||r.style,l=as.castOption(e.insidetextfont.variant,t.pts)||as.castOption(e.textfont.variant,t.pts)||r.variant,u=as.castOption(e.insidetextfont.textcase,t.pts)||as.castOption(e.textfont.textcase,t.pts)||r.textcase,c=as.castOption(e.insidetextfont.lineposition,t.pts)||as.castOption(e.textfont.lineposition,t.pts)||r.lineposition,f=as.castOption(e.insidetextfont.shadow,t.pts)||as.castOption(e.textfont.shadow,t.pts)||r.shadow;return{color:n||iCe.contrast(t.color),family:i,size:a,weight:o,style:s,variant:l,textcase:u,lineposition:c,shadow:f}}function lCe(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=rv.templateString(a,n._meta));var o=Wy.tester.append("text").attr("data-notex",1).text(a).call(Wy.font,n.title.font).call(hW.convertToTspans,t),s=Wy.bBox(o.node(),!0);r.titleBox={width:s.width,height:s.height},o.remove()}}function uCe(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(mkt(t,M)){var P=Math.abs(M-t.startangle),T=Math.abs(M-t.stopangle),z=P<T?P:T;g==="tan"?b=tCe(e,n,o,z,0):b=eCe(e,n,o,z,Math.PI/2),b.textPosAngle=M,x.push(b)}},C;if(f||h){for(C=4;C>=-4;C-=2)p(Math.PI*C,"tan");for(C=4;C>=-4;C-=2)p(Math.PI*(C+1),"tan")}if(f||d){for(C=4;C>=-4;C-=2)p(Math.PI*(C+1.5),"rad");for(C=4;C>=-4;C-=2)p(Math.PI*(C+.5),"rad")}}if(s||v||f){var E=Math.sqrt(e.width*e.width+e.height*e.height);if(b={scale:i*n*2/E,rCenter:1-i,rotate:0},b.textPosAngle=(t.startangle+t.stopangle)/2,b.scale>=1)return b;x.push(b)}(v||d)&&(b=eCe(e,n,o,l,u),b.textPosAngle=(t.startangle+t.stopangle)/2,x.push(b)),(v||h)&&(b=tCe(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 k=x[_].scale;if(L<k&&(L=k,A=_),!v&&L>=1)break}return x[A]}function mkt(e,t){var r=e.startangle,n=e.stopangle;return r>t&&t>n||r<t&&t<n}function eCe(e,t,r,n,i){t=Math.max(0,t-2*aCe);var a=e.width/e.height,o=hCe(a,n,t,r);return{scale:o*2/e.height,rCenter:cCe(a,o/t),rotate:fCe(i)}}function tCe(e,t,r,n,i){t=Math.max(0,t-2*aCe);var a=e.height/e.width,o=hCe(a,n,t,r);return{scale:o*2/e.width,rCenter:cCe(a,o/t),rotate:fCe(i+Math.PI/2)}}function cCe(e,t){return Math.cos(t)-e*t}function fCe(e){return(180/Math.PI*e+720)%180-90}function hCe(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 ykt(e,t){return e.v===t.vTotal&&!t.trace.hole?1:Math.min(1/(1+1/Math.sin(e.halfangle)),e.ring/2)}function rCe(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 _kt(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 dCe(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=vCe(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=xkt(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=dW(e,t)/e.titleBox.height,{x:o.x,y:o.y,scale:Math.min(r,n),tx:s.tx,ty:s.ty}}function xkt(e,t){return e/(t===void 0?1:t)}function dW(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 vCe(e){var t=e.pull;if(!t)return 0;var r;if(rv.isArrayOrTypedArray(t))for(t=0,r=0;r<e.pull.length;r++)e.pull[r]>t&&(t=e.pull[r]);return t}function bkt(e,t){var r,n,i,a,o,s,l,u,c,f,h,d,v;function x(E,A){return E.pxmid[1]-A.pxmid[1]}function b(E,A){return A.pxmid[1]-E.pxmid[1]}function p(E,A){A||(A={});var L=A.labelExtraY+(n?A.yLabelMax:A.yLabelMin),_=n?E.yLabelMin:E.yLabelMax,k=n?E.yLabelMax:E.yLabelMin,M=E.cyFinal+o(E.px0[1],E.px1[1]),g=L-_,P,T,z,O,V,G;if(g*l>0&&(E.labelExtraY=g),!!rv.isArrayOrTypedArray(t.pull))for(T=0;T<f.length;T++)z=f[T],!(z===E||(as.castOption(t.pull,E.pts)||0)>=(as.castOption(t.pull,z.pts)||0))&&((E.pxmid[1]-z.pxmid[1])*l>0?(O=z.cyFinal+o(z.px0[1],z.px1[1]),g=O-_-E.labelExtraY,g*l>0&&(E.labelExtraY+=g)):(k+E.labelExtraY-M)*l>0&&(P=3*s*Math.abs(T-f.indexOf(E)),V=z.cxFinal+a(z.px0[0],z.px1[0]),G=V+P-(E.cxFinal+E.pxmid[0])-E.labelExtraX,G*s>0&&(E.labelExtraX+=G)))}for(n=0;n<2;n++)for(i=n?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 C=h&&d[h-1];v&&!h&&(C=v),p(d[h],C)}}}function pCe(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-=dW(i,t));var u=s/2,c=l/2;a.type==="funnelarea"&&!a.scalegroup&&(c/=a.aspectratio),i.r=Math.min(u,c)/(1+vCe(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-=dW(i,t)),a.scalegroup&&r.indexOf(a.scalegroup)===-1&&r.push(a.scalegroup)}wkt(e,r)}function wkt(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 Tkt(e){var t=e[0],r=t.r,n=t.trace,i=as.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=pD(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=pD(r,i),u.midangle=i,i+=a*u.v/2,c=pD(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=ykt(u,t))}function pD(e,t){return[e*Math.sin(t),-e*Math.cos(t)]}function gCe(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=as.getFirstFilled(i.text,t.pts);QEe(x)&&v.push(x)}f&&v.push(as.formatPieValue(t.v,d)),h&&v.push(as.formatPiePercent(t.v/r.vTotal,d)),t.text=v.join("<br>")}function b(A){return{label:A.label,value:A.v,valueLabel:as.formatPieValue(A.v,n.separators),percent:A.v/r.vTotal,percentLabel:as.formatPiePercent(A.v/r.vTotal,n.separators),color:A.color,text:A.text,customdata:rv.castOption(i,A.i,"customdata")}}if(a){var p=rv.castOption(i,t.i,"texttemplate");if(!p)t.text="";else{var C=b(t),E=as.getFirstFilled(i.text,t.pts);(QEe(E)||E==="")&&(C.text=E),t.text=rv.texttemplateString(p,C,e._fullLayout._d3locale,C,i._meta||{})}}}function mCe(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}yCe.exports={plot:vkt,formatSliceLabel:gCe,transformInsideText:uCe,determineInsideTextFont:sCe,positionTitleOutside:dCe,prerenderTitles:lCe,layoutAreas:pCe,attachFxHandlers:oCe,computeTransform:mCe}});var bCe=ye((Yhr,xCe)=>{"use strict";var _Ce=Oa(),Akt=F3(),Skt=_v().resizeText;xCe.exports=function(t){var r=t._fullLayout._pielayer.selectAll(".trace");Skt(t,r,"pie"),r.each(function(n){var i=n[0],a=i.trace,o=_Ce.select(this);o.style({opacity:a.opacity}),o.selectAll("path.surface").each(function(s){_Ce.select(this).call(Akt,s,a,t)})})}});var TCe=ye(xA=>{"use strict";var wCe=Mc();xA.name="pie";xA.plot=function(e,t,r,n){wCe.plotBasePlot(xA.name,e,t,r,n)};xA.clean=function(e,t,r,n){wCe.cleanBasePlot(xA.name,e,t,r,n)}});var SCe=ye((Jhr,ACe)=>{"use strict";ACe.exports={attributes:A2(),supplyDefaults:S2().supplyDefaults,supplyLayoutDefaults:WEe(),layoutAttributes:hD(),calc:_A().calc,crossTraceCalc:_A().crossTraceCalc,plot:gD().plot,style:bCe(),styleOne:F3(),moduleType:"trace",name:"pie",basePlotModule:TCe(),categories:["pie-like","pie","showLegend"],meta:{}}});var ECe=ye(($hr,MCe)=>{"use strict";MCe.exports=SCe()});var kCe=ye(bA=>{"use strict";var CCe=Mc();bA.name="sunburst";bA.plot=function(e,t,r,n){CCe.plotBasePlot(bA.name,e,t,r,n)};bA.clean=function(e,t,r,n){CCe.cleanBasePlot(bA.name,e,t,r,n)}});var vW=ye((edr,LCe)=>{"use strict";LCe.exports={CLICK_TRANSITION_TIME:750,CLICK_TRANSITION_EASING:"linear",eventDataKeys:["currentPath","root","entry","percentRoot","percentEntry","percentParent"]}});var kE=ye((tdr,ICe)=>{"use strict";var Mkt=Vl(),Ekt=Qo().hovertemplateAttrs,Ckt=Qo().texttemplateAttrs,kkt=Tu(),Lkt=kc().attributes,Xy=A2(),PCe=vW(),CE=Ao().extendFlat,Pkt=Pd().pattern;ICe.exports={labels:{valType:"data_array",editType:"calc"},parents:{valType:"data_array",editType:"calc"},values:{valType:"data_array",editType:"calc"},branchvalues:{valType:"enumerated",values:["remainder","total"],dflt:"remainder",editType:"calc"},count:{valType:"flaglist",flags:["branches","leaves"],dflt:"leaves",editType:"calc"},level:{valType:"any",editType:"plot",anim:!0},maxdepth:{valType:"integer",editType:"plot",dflt:-1},marker:CE({colors:{valType:"data_array",editType:"calc"},line:{color:CE({},Xy.marker.line.color,{dflt:null}),width:CE({},Xy.marker.line.width,{dflt:1}),editType:"calc"},pattern:Pkt,editType:"calc"},kkt("marker",{colorAttr:"colors",anim:!1})),leaf:{opacity:{valType:"number",editType:"style",min:0,max:1},editType:"plot"},text:Xy.text,textinfo:{valType:"flaglist",flags:["label","text","value","current path","percent root","percent entry","percent parent"],extras:["none"],editType:"plot"},texttemplate:Ckt({editType:"plot"},{keys:PCe.eventDataKeys.concat(["label","value"])}),hovertext:Xy.hovertext,hoverinfo:CE({},Mkt.hoverinfo,{flags:["label","text","value","name","current path","percent root","percent entry","percent parent"],dflt:"label+text+value+name"}),hovertemplate:Ekt({},{keys:PCe.eventDataKeys}),textfont:Xy.textfont,insidetextorientation:Xy.insidetextorientation,insidetextfont:Xy.insidetextfont,outsidetextfont:CE({},Xy.outsidetextfont,{}),rotation:{valType:"angle",dflt:0,editType:"plot"},sort:Xy.sort,root:{color:{valType:"color",editType:"calc",dflt:"rgba(0,0,0,0)"},editType:"calc"},domain:Lkt({name:"sunburst",trace:!0,editType:"calc"})}});var pW=ye((rdr,RCe)=>{"use strict";RCe.exports={sunburstcolorway:{valType:"colorlist",editType:"calc"},extendsunburstcolors:{valType:"boolean",dflt:!0,editType:"calc"}}});var OCe=ye((idr,zCe)=>{"use strict";var DCe=Dr(),Ikt=kE(),Rkt=kc().defaults,Dkt=r0().handleText,Fkt=S2().handleMarkerDefaults,FCe=tc(),zkt=FCe.hasColorscale,Okt=FCe.handleDefaults;zCe.exports=function(t,r,n,i){function a(h,d){return DCe.coerce(t,r,Ikt,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"),Fkt(t,r,i,a);var u=r._hasColorscale=zkt(t,"marker","colors")||(t.marker||{}).coloraxis;u&&Okt(t,r,i,a,{prefix:"marker.",cLetter:"c"}),a("leaf.opacity",u?1:.7);var c=a("text");a("texttemplate"),r.texttemplate||a("textinfo",DCe.isArrayOrTypedArray(c)?"text+label":"label"),a("hovertext"),a("hovertemplate");var f="auto";Dkt(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"),Rkt(r,i,a),r._length=null}});var BCe=ye((ndr,qCe)=>{"use strict";var qkt=Dr(),Bkt=pW();qCe.exports=function(t,r){function n(i,a){return qkt.coerce(t,r,Bkt,i,a)}n("sunburstcolorway",r.colorway),n("extendsunburstcolors")}});var LE=ye((mD,NCe)=>{(function(e,t){typeof mD=="object"&&typeof NCe!="undefined"?t(mD):(e=e||self,t(e.d3=e.d3||{}))})(mD,function(e){"use strict";function t(je,$e){return je.parent===$e.parent?1:2}function r(je){return je.reduce(n,0)/je.length}function n(je,$e){return je+$e.x}function i(je){return 1+je.reduce(a,0)}function a(je,$e){return Math.max(je,$e.y)}function o(je){for(var $e;$e=je.children;)je=$e[0];return je}function s(je){for(var $e;$e=je.children;)je=$e[$e.length-1];return je}function l(){var je=t,$e=1,wt=1,Ie=!1;function xe(Ce){var vt,nr=0;Ce.eachAfter(function(Jr){var fi=Jr.children;fi?(Jr.x=r(fi),Jr.y=i(fi)):(Jr.x=vt?nr+=je(Jr,vt):0,Jr.y=0,vt=Jr)});var ir=o(Ce),pr=s(Ce),oi=ir.x-je(ir,pr)/2,di=pr.x+je(pr,ir)/2;return Ce.eachAfter(Ie?function(Jr){Jr.x=(Jr.x-Ce.x)*$e,Jr.y=(Ce.y-Jr.y)*wt}:function(Jr){Jr.x=(Jr.x-oi)/(di-oi)*$e,Jr.y=(1-(Ce.y?Jr.y/Ce.y:1))*wt})}return xe.separation=function(Ce){return arguments.length?(je=Ce,xe):je},xe.size=function(Ce){return arguments.length?(Ie=!1,$e=+Ce[0],wt=+Ce[1],xe):Ie?null:[$e,wt]},xe.nodeSize=function(Ce){return arguments.length?(Ie=!0,$e=+Ce[0],wt=+Ce[1],xe):Ie?[$e,wt]:null},xe}function u(je){var $e=0,wt=je.children,Ie=wt&&wt.length;if(!Ie)$e=1;else for(;--Ie>=0;)$e+=wt[Ie].value;je.value=$e}function c(){return this.eachAfter(u)}function f(je){var $e=this,wt,Ie=[$e],xe,Ce,vt;do for(wt=Ie.reverse(),Ie=[];$e=wt.pop();)if(je($e),xe=$e.children,xe)for(Ce=0,vt=xe.length;Ce<vt;++Ce)Ie.push(xe[Ce]);while(Ie.length);return this}function h(je){for(var $e=this,wt=[$e],Ie,xe;$e=wt.pop();)if(je($e),Ie=$e.children,Ie)for(xe=Ie.length-1;xe>=0;--xe)wt.push(Ie[xe]);return this}function d(je){for(var $e=this,wt=[$e],Ie=[],xe,Ce,vt;$e=wt.pop();)if(Ie.push($e),xe=$e.children,xe)for(Ce=0,vt=xe.length;Ce<vt;++Ce)wt.push(xe[Ce]);for(;$e=Ie.pop();)je($e);return this}function v(je){return this.eachAfter(function($e){for(var wt=+je($e.data)||0,Ie=$e.children,xe=Ie&&Ie.length;--xe>=0;)wt+=Ie[xe].value;$e.value=wt})}function x(je){return this.eachBefore(function($e){$e.children&&$e.children.sort(je)})}function b(je){for(var $e=this,wt=p($e,je),Ie=[$e];$e!==wt;)$e=$e.parent,Ie.push($e);for(var xe=Ie.length;je!==wt;)Ie.splice(xe,0,je),je=je.parent;return Ie}function p(je,$e){if(je===$e)return je;var wt=je.ancestors(),Ie=$e.ancestors(),xe=null;for(je=wt.pop(),$e=Ie.pop();je===$e;)xe=je,je=wt.pop(),$e=Ie.pop();return xe}function C(){for(var je=this,$e=[je];je=je.parent;)$e.push(je);return $e}function E(){var je=[];return this.each(function($e){je.push($e)}),je}function A(){var je=[];return this.eachBefore(function($e){$e.children||je.push($e)}),je}function L(){var je=this,$e=[];return je.each(function(wt){wt!==je&&$e.push({source:wt.parent,target:wt})}),$e}function _(je,$e){var wt=new T(je),Ie=+je.value&&(wt.value=je.value),xe,Ce=[wt],vt,nr,ir,pr;for($e==null&&($e=M);xe=Ce.pop();)if(Ie&&(xe.value=+xe.data.value),(nr=$e(xe.data))&&(pr=nr.length))for(xe.children=new Array(pr),ir=pr-1;ir>=0;--ir)Ce.push(vt=xe.children[ir]=new T(nr[ir])),vt.parent=xe,vt.depth=xe.depth+1;return wt.eachBefore(P)}function k(){return _(this).eachBefore(g)}function M(je){return je.children}function g(je){je.data=je.data.data}function P(je){var $e=0;do je.height=$e;while((je=je.parent)&&je.height<++$e)}function T(je){this.data=je,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:C,descendants:E,leaves:A,links:L,copy:k};var z=Array.prototype.slice;function O(je){for(var $e=je.length,wt,Ie;$e;)Ie=Math.random()*$e--|0,wt=je[$e],je[$e]=je[Ie],je[Ie]=wt;return je}function V(je){for(var $e=0,wt=(je=O(z.call(je))).length,Ie=[],xe,Ce;$e<wt;)xe=je[$e],Ce&&H(Ce,xe)?++$e:(Ce=j(Ie=G(Ie,xe)),$e=0);return Ce}function G(je,$e){var wt,Ie;if(N($e,je))return[$e];for(wt=0;wt<je.length;++wt)if(Z($e,je[wt])&&N(oe(je[wt],$e),je))return[je[wt],$e];for(wt=0;wt<je.length-1;++wt)for(Ie=wt+1;Ie<je.length;++Ie)if(Z(oe(je[wt],je[Ie]),$e)&&Z(oe(je[wt],$e),je[Ie])&&Z(oe(je[Ie],$e),je[wt])&&N(_e(je[wt],je[Ie],$e),je))return[je[wt],je[Ie],$e];throw new Error}function Z(je,$e){var wt=je.r-$e.r,Ie=$e.x-je.x,xe=$e.y-je.y;return wt<0||wt*wt<Ie*Ie+xe*xe}function H(je,$e){var wt=je.r-$e.r+1e-6,Ie=$e.x-je.x,xe=$e.y-je.y;return wt>0&&wt*wt>Ie*Ie+xe*xe}function N(je,$e){for(var wt=0;wt<$e.length;++wt)if(!H(je,$e[wt]))return!1;return!0}function j(je){switch(je.length){case 1:return re(je[0]);case 2:return oe(je[0],je[1]);case 3:return _e(je[0],je[1],je[2])}}function re(je){return{x:je.x,y:je.y,r:je.r}}function oe(je,$e){var wt=je.x,Ie=je.y,xe=je.r,Ce=$e.x,vt=$e.y,nr=$e.r,ir=Ce-wt,pr=vt-Ie,oi=nr-xe,di=Math.sqrt(ir*ir+pr*pr);return{x:(wt+Ce+ir/di*oi)/2,y:(Ie+vt+pr/di*oi)/2,r:(di+xe+nr)/2}}function _e(je,$e,wt){var Ie=je.x,xe=je.y,Ce=je.r,vt=$e.x,nr=$e.y,ir=$e.r,pr=wt.x,oi=wt.y,di=wt.r,Jr=Ie-vt,fi=Ie-pr,Hi=xe-nr,Pn=xe-oi,wn=ir-Ce,pn=di-Ce,Vn=Ie*Ie+xe*xe-Ce*Ce,kn=Vn-vt*vt-nr*nr+ir*ir,ea=Vn-pr*pr-oi*oi+di*di,ua=fi*Hi-Jr*Pn,Vt=(Hi*ea-Pn*kn)/(ua*2)-Ie,_t=(Pn*wn-Hi*pn)/ua,tr=(fi*kn-Jr*ea)/(ua*2)-xe,ar=(Jr*pn-fi*wn)/ua,Er=_t*_t+ar*ar-1,Zr=2*(Ce+Vt*_t+tr*ar),ri=Vt*Vt+tr*tr-Ce*Ce,$r=-(Er?(Zr+Math.sqrt(Zr*Zr-4*Er*ri))/(2*Er):ri/Zr);return{x:Ie+Vt+_t*$r,y:xe+tr+ar*$r,r:$r}}function Me(je,$e,wt){var Ie=je.x-$e.x,xe,Ce,vt=je.y-$e.y,nr,ir,pr=Ie*Ie+vt*vt;pr?(Ce=$e.r+wt.r,Ce*=Ce,ir=je.r+wt.r,ir*=ir,Ce>ir?(xe=(pr+ir-Ce)/(2*pr),nr=Math.sqrt(Math.max(0,ir/pr-xe*xe)),wt.x=je.x-xe*Ie-nr*vt,wt.y=je.y-xe*vt+nr*Ie):(xe=(pr+Ce-ir)/(2*pr),nr=Math.sqrt(Math.max(0,Ce/pr-xe*xe)),wt.x=$e.x+xe*Ie-nr*vt,wt.y=$e.y+xe*vt+nr*Ie)):(wt.x=$e.x+wt.r,wt.y=$e.y)}function ke(je,$e){var wt=je.r+$e.r-1e-6,Ie=$e.x-je.x,xe=$e.y-je.y;return wt>0&&wt*wt>Ie*Ie+xe*xe}function me(je){var $e=je._,wt=je.next._,Ie=$e.r+wt.r,xe=($e.x*wt.r+wt.x*$e.r)/Ie,Ce=($e.y*wt.r+wt.y*$e.r)/Ie;return xe*xe+Ce*Ce}function ie(je){this._=je,this.next=null,this.previous=null}function Se(je){if(!(xe=je.length))return 0;var $e,wt,Ie,xe,Ce,vt,nr,ir,pr,oi,di;if($e=je[0],$e.x=0,$e.y=0,!(xe>1))return $e.r;if(wt=je[1],$e.x=-wt.r,wt.x=$e.r,wt.y=0,!(xe>2))return $e.r+wt.r;Me(wt,$e,Ie=je[2]),$e=new ie($e),wt=new ie(wt),Ie=new ie(Ie),$e.next=Ie.previous=wt,wt.next=$e.previous=Ie,Ie.next=wt.previous=$e;e:for(nr=3;nr<xe;++nr){Me($e._,wt._,Ie=je[nr]),Ie=new ie(Ie),ir=wt.next,pr=$e.previous,oi=wt._.r,di=$e._.r;do if(oi<=di){if(ke(ir._,Ie._)){wt=ir,$e.next=wt,wt.previous=$e,--nr;continue e}oi+=ir._.r,ir=ir.next}else{if(ke(pr._,Ie._)){$e=pr,$e.next=wt,wt.previous=$e,--nr;continue e}di+=pr._.r,pr=pr.previous}while(ir!==pr.next);for(Ie.previous=$e,Ie.next=wt,$e.next=wt.previous=wt=Ie,Ce=me($e);(Ie=Ie.next)!==wt;)(vt=me(Ie))<Ce&&($e=Ie,Ce=vt);wt=$e.next}for($e=[wt._],Ie=wt;(Ie=Ie.next)!==wt;)$e.push(Ie._);for(Ie=V($e),nr=0;nr<xe;++nr)$e=je[nr],$e.x-=Ie.x,$e.y-=Ie.y;return Ie.r}function Le(je){return Se(je),je}function Ae(je){return je==null?null:De(je)}function De(je){if(typeof je!="function")throw new Error;return je}function Pe(){return 0}function ge(je){return function(){return je}}function Fe(je){return Math.sqrt(je.value)}function ce(){var je=null,$e=1,wt=1,Ie=Pe;function xe(Ce){return Ce.x=$e/2,Ce.y=wt/2,je?Ce.eachBefore(Ze(je)).eachAfter(ct(Ie,.5)).eachBefore(pt(1)):Ce.eachBefore(Ze(Fe)).eachAfter(ct(Pe,1)).eachAfter(ct(Ie,Ce.r/Math.min($e,wt))).eachBefore(pt(Math.min($e,wt)/(2*Ce.r))),Ce}return xe.radius=function(Ce){return arguments.length?(je=Ae(Ce),xe):je},xe.size=function(Ce){return arguments.length?($e=+Ce[0],wt=+Ce[1],xe):[$e,wt]},xe.padding=function(Ce){return arguments.length?(Ie=typeof Ce=="function"?Ce:ge(+Ce),xe):Ie},xe}function Ze(je){return function($e){$e.children||($e.r=Math.max(0,+je($e)||0))}}function ct(je,$e){return function(wt){if(Ie=wt.children){var Ie,xe,Ce=Ie.length,vt=je(wt)*$e||0,nr;if(vt)for(xe=0;xe<Ce;++xe)Ie[xe].r+=vt;if(nr=Se(Ie),vt)for(xe=0;xe<Ce;++xe)Ie[xe].r-=vt;wt.r=nr+vt}}}function pt(je){return function($e){var wt=$e.parent;$e.r*=je,wt&&($e.x=wt.x+je*$e.x,$e.y=wt.y+je*$e.y)}}function Wt(je){je.x0=Math.round(je.x0),je.y0=Math.round(je.y0),je.x1=Math.round(je.x1),je.y1=Math.round(je.y1)}function st(je,$e,wt,Ie,xe){for(var Ce=je.children,vt,nr=-1,ir=Ce.length,pr=je.value&&(Ie-$e)/je.value;++nr<ir;)vt=Ce[nr],vt.y0=wt,vt.y1=xe,vt.x0=$e,vt.x1=$e+=vt.value*pr}function lt(){var je=1,$e=1,wt=0,Ie=!1;function xe(vt){var nr=vt.height+1;return vt.x0=vt.y0=wt,vt.x1=je,vt.y1=$e/nr,vt.eachBefore(Ce($e,nr)),Ie&&vt.eachBefore(Wt),vt}function Ce(vt,nr){return function(ir){ir.children&&st(ir,ir.x0,vt*(ir.depth+1)/nr,ir.x1,vt*(ir.depth+2)/nr);var pr=ir.x0,oi=ir.y0,di=ir.x1-wt,Jr=ir.y1-wt;di<pr&&(pr=di=(pr+di)/2),Jr<oi&&(oi=Jr=(oi+Jr)/2),ir.x0=pr,ir.y0=oi,ir.x1=di,ir.y1=Jr}}return xe.round=function(vt){return arguments.length?(Ie=!!vt,xe):Ie},xe.size=function(vt){return arguments.length?(je=+vt[0],$e=+vt[1],xe):[je,$e]},xe.padding=function(vt){return arguments.length?(wt=+vt,xe):wt},xe}var Gt="$",Nt={depth:-1},$t={};function sr(je){return je.id}function wr(je){return je.parentId}function ur(){var je=sr,$e=wr;function wt(Ie){var xe,Ce,vt=Ie.length,nr,ir,pr,oi=new Array(vt),di,Jr,fi={};for(Ce=0;Ce<vt;++Ce)xe=Ie[Ce],pr=oi[Ce]=new T(xe),(di=je(xe,Ce,Ie))!=null&&(di+="")&&(Jr=Gt+(pr.id=di),fi[Jr]=Jr in fi?$t:pr);for(Ce=0;Ce<vt;++Ce)if(pr=oi[Ce],di=$e(Ie[Ce],Ce,Ie),di==null||!(di+="")){if(nr)throw new Error("multiple roots");nr=pr}else{if(ir=fi[Gt+di],!ir)throw new Error("missing: "+di);if(ir===$t)throw new Error("ambiguous: "+di);ir.children?ir.children.push(pr):ir.children=[pr],pr.parent=ir}if(!nr)throw new Error("no root");if(nr.parent=Nt,nr.eachBefore(function(Hi){Hi.depth=Hi.parent.depth+1,--vt}).eachBefore(P),nr.parent=null,vt>0)throw new Error("cycle");return nr}return wt.id=function(Ie){return arguments.length?(je=De(Ie),wt):je},wt.parentId=function(Ie){return arguments.length?($e=De(Ie),wt):$e},wt}function Qe(je,$e){return je.parent===$e.parent?1:2}function Et(je){var $e=je.children;return $e?$e[0]:je.t}function er(je){var $e=je.children;return $e?$e[$e.length-1]:je.t}function Ut(je,$e,wt){var Ie=wt/($e.i-je.i);$e.c-=Ie,$e.s+=wt,je.c+=Ie,$e.z+=wt,$e.m+=wt}function Ft(je){for(var $e=0,wt=0,Ie=je.children,xe=Ie.length,Ce;--xe>=0;)Ce=Ie[xe],Ce.z+=$e,Ce.m+=$e,$e+=Ce.s+(wt+=Ce.c)}function bt(je,$e,wt){return je.a.parent===$e.parent?je.a:wt}function yt(je,$e){this._=je,this.parent=null,this.children=null,this.A=null,this.a=this,this.z=0,this.m=0,this.c=0,this.s=0,this.t=null,this.i=$e}yt.prototype=Object.create(T.prototype);function Yt(je){for(var $e=new yt(je,0),wt,Ie=[$e],xe,Ce,vt,nr;wt=Ie.pop();)if(Ce=wt._.children)for(wt.children=new Array(nr=Ce.length),vt=nr-1;vt>=0;--vt)Ie.push(xe=wt.children[vt]=new yt(Ce[vt],vt)),xe.parent=wt;return($e.parent=new yt(null,0)).children=[$e],$e}function lr(){var je=Qe,$e=1,wt=1,Ie=null;function xe(pr){var oi=Yt(pr);if(oi.eachAfter(Ce),oi.parent.m=-oi.z,oi.eachBefore(vt),Ie)pr.eachBefore(ir);else{var di=pr,Jr=pr,fi=pr;pr.eachBefore(function(Vn){Vn.x<di.x&&(di=Vn),Vn.x>Jr.x&&(Jr=Vn),Vn.depth>fi.depth&&(fi=Vn)});var Hi=di===Jr?1:je(di,Jr)/2,Pn=Hi-di.x,wn=$e/(Jr.x+Hi+Pn),pn=wt/(fi.depth||1);pr.eachBefore(function(Vn){Vn.x=(Vn.x+Pn)*wn,Vn.y=Vn.depth*pn})}return pr}function Ce(pr){var oi=pr.children,di=pr.parent.children,Jr=pr.i?di[pr.i-1]:null;if(oi){Ft(pr);var fi=(oi[0].z+oi[oi.length-1].z)/2;Jr?(pr.z=Jr.z+je(pr._,Jr._),pr.m=pr.z-fi):pr.z=fi}else Jr&&(pr.z=Jr.z+je(pr._,Jr._));pr.parent.A=nr(pr,Jr,pr.parent.A||di[0])}function vt(pr){pr._.x=pr.z+pr.parent.m,pr.m+=pr.parent.m}function nr(pr,oi,di){if(oi){for(var Jr=pr,fi=pr,Hi=oi,Pn=Jr.parent.children[0],wn=Jr.m,pn=fi.m,Vn=Hi.m,kn=Pn.m,ea;Hi=er(Hi),Jr=Et(Jr),Hi&&Jr;)Pn=Et(Pn),fi=er(fi),fi.a=pr,ea=Hi.z+Vn-Jr.z-wn+je(Hi._,Jr._),ea>0&&(Ut(bt(Hi,pr,di),pr,ea),wn+=ea,pn+=ea),Vn+=Hi.m,wn+=Jr.m,kn+=Pn.m,pn+=fi.m;Hi&&!er(fi)&&(fi.t=Hi,fi.m+=Vn-pn),Jr&&!Et(Pn)&&(Pn.t=Jr,Pn.m+=wn-kn,di=pr)}return di}function ir(pr){pr.x*=$e,pr.y=pr.depth*wt}return xe.separation=function(pr){return arguments.length?(je=pr,xe):je},xe.size=function(pr){return arguments.length?(Ie=!1,$e=+pr[0],wt=+pr[1],xe):Ie?null:[$e,wt]},xe.nodeSize=function(pr){return arguments.length?(Ie=!0,$e=+pr[0],wt=+pr[1],xe):Ie?[$e,wt]:null},xe}function Tr(je,$e,wt,Ie,xe){for(var Ce=je.children,vt,nr=-1,ir=Ce.length,pr=je.value&&(xe-wt)/je.value;++nr<ir;)vt=Ce[nr],vt.x0=$e,vt.x1=Ie,vt.y0=wt,vt.y1=wt+=vt.value*pr}var Rr=(1+Math.sqrt(5))/2;function ei(je,$e,wt,Ie,xe,Ce){for(var vt=[],nr=$e.children,ir,pr,oi=0,di=0,Jr=nr.length,fi,Hi,Pn=$e.value,wn,pn,Vn,kn,ea,ua,Vt;oi<Jr;){fi=xe-wt,Hi=Ce-Ie;do wn=nr[di++].value;while(!wn&&di<Jr);for(pn=Vn=wn,ua=Math.max(Hi/fi,fi/Hi)/(Pn*je),Vt=wn*wn*ua,ea=Math.max(Vn/Vt,Vt/pn);di<Jr;++di){if(wn+=pr=nr[di].value,pr<pn&&(pn=pr),pr>Vn&&(Vn=pr),Vt=wn*wn*ua,kn=Math.max(Vn/Vt,Vt/pn),kn>ea){wn-=pr;break}ea=kn}vt.push(ir={value:wn,dice:fi<Hi,children:nr.slice(oi,di)}),ir.dice?st(ir,wt,Ie,xe,Pn?Ie+=Hi*wn/Pn:Ce):Tr(ir,wt,Ie,Pn?wt+=fi*wn/Pn:xe,Ce),Pn-=wn,oi=di}return vt}var Wr=function je($e){function wt(Ie,xe,Ce,vt,nr){ei($e,Ie,xe,Ce,vt,nr)}return wt.ratio=function(Ie){return je((Ie=+Ie)>1?Ie:1)},wt}(Rr);function Ur(){var je=Wr,$e=!1,wt=1,Ie=1,xe=[0],Ce=Pe,vt=Pe,nr=Pe,ir=Pe,pr=Pe;function oi(Jr){return Jr.x0=Jr.y0=0,Jr.x1=wt,Jr.y1=Ie,Jr.eachBefore(di),xe=[0],$e&&Jr.eachBefore(Wt),Jr}function di(Jr){var fi=xe[Jr.depth],Hi=Jr.x0+fi,Pn=Jr.y0+fi,wn=Jr.x1-fi,pn=Jr.y1-fi;wn<Hi&&(Hi=wn=(Hi+wn)/2),pn<Pn&&(Pn=pn=(Pn+pn)/2),Jr.x0=Hi,Jr.y0=Pn,Jr.x1=wn,Jr.y1=pn,Jr.children&&(fi=xe[Jr.depth+1]=Ce(Jr)/2,Hi+=pr(Jr)-fi,Pn+=vt(Jr)-fi,wn-=nr(Jr)-fi,pn-=ir(Jr)-fi,wn<Hi&&(Hi=wn=(Hi+wn)/2),pn<Pn&&(Pn=pn=(Pn+pn)/2),je(Jr,Hi,Pn,wn,pn))}return oi.round=function(Jr){return arguments.length?($e=!!Jr,oi):$e},oi.size=function(Jr){return arguments.length?(wt=+Jr[0],Ie=+Jr[1],oi):[wt,Ie]},oi.tile=function(Jr){return arguments.length?(je=De(Jr),oi):je},oi.padding=function(Jr){return arguments.length?oi.paddingInner(Jr).paddingOuter(Jr):oi.paddingInner()},oi.paddingInner=function(Jr){return arguments.length?(Ce=typeof Jr=="function"?Jr:ge(+Jr),oi):Ce},oi.paddingOuter=function(Jr){return arguments.length?oi.paddingTop(Jr).paddingRight(Jr).paddingBottom(Jr).paddingLeft(Jr):oi.paddingTop()},oi.paddingTop=function(Jr){return arguments.length?(vt=typeof Jr=="function"?Jr:ge(+Jr),oi):vt},oi.paddingRight=function(Jr){return arguments.length?(nr=typeof Jr=="function"?Jr:ge(+Jr),oi):nr},oi.paddingBottom=function(Jr){return arguments.length?(ir=typeof Jr=="function"?Jr:ge(+Jr),oi):ir},oi.paddingLeft=function(Jr){return arguments.length?(pr=typeof Jr=="function"?Jr:ge(+Jr),oi):pr},oi}function dt(je,$e,wt,Ie,xe){var Ce=je.children,vt,nr=Ce.length,ir,pr=new Array(nr+1);for(pr[0]=ir=vt=0;vt<nr;++vt)pr[vt+1]=ir+=Ce[vt].value;oi(0,nr,je.value,$e,wt,Ie,xe);function oi(di,Jr,fi,Hi,Pn,wn,pn){if(di>=Jr-1){var Vn=Ce[di];Vn.x0=Hi,Vn.y0=Pn,Vn.x1=wn,Vn.y1=pn;return}for(var kn=pr[di],ea=fi/2+kn,ua=di+1,Vt=Jr-1;ua<Vt;){var _t=ua+Vt>>>1;pr[_t]<ea?ua=_t+1:Vt=_t}ea-pr[ua-1]<pr[ua]-ea&&di+1<ua&&--ua;var tr=pr[ua]-kn,ar=fi-tr;if(wn-Hi>pn-Pn){var Er=(Hi*ar+wn*tr)/fi;oi(di,ua,tr,Hi,Pn,Er,pn),oi(ua,Jr,ar,Er,Pn,wn,pn)}else{var Zr=(Pn*ar+pn*tr)/fi;oi(di,ua,tr,Hi,Pn,wn,Zr),oi(ua,Jr,ar,Hi,Zr,wn,pn)}}}function Ge(je,$e,wt,Ie,xe){(je.depth&1?Tr:st)(je,$e,wt,Ie,xe)}var Je=function je($e){function wt(Ie,xe,Ce,vt,nr){if((ir=Ie._squarify)&&ir.ratio===$e)for(var ir,pr,oi,di,Jr=-1,fi,Hi=ir.length,Pn=Ie.value;++Jr<Hi;){for(pr=ir[Jr],oi=pr.children,di=pr.value=0,fi=oi.length;di<fi;++di)pr.value+=oi[di].value;pr.dice?st(pr,xe,Ce,vt,Ce+=(nr-Ce)*pr.value/Pn):Tr(pr,xe,Ce,xe+=(vt-xe)*pr.value/Pn,nr),Pn-=pr.value}else Ie._squarify=ir=ei($e,Ie,xe,Ce,vt,nr),ir.ratio=$e}return wt.ratio=function(Ie){return je((Ie=+Ie)>1?Ie:1)},wt}(Rr);e.cluster=l,e.hierarchy=_,e.pack=ce,e.packEnclose=V,e.packSiblings=Le,e.partition=lt,e.stratify=ur,e.tree=lr,e.treemap=Ur,e.treemapBinary=dt,e.treemapDice=st,e.treemapResquarify=Je,e.treemapSlice=Tr,e.treemapSliceDice=Ge,e.treemapSquarify=Wr,Object.defineProperty(e,"__esModule",{value:!0})})});var IE=ye(PE=>{"use strict";var UCe=LE(),Nkt=Eo(),wA=Dr(),Ukt=tc().makeColorScaleFuncFromTrace,Vkt=_A().makePullColorFn,Gkt=_A().generateExtendedColors,Hkt=tc().calc,jkt=hs().ALMOST_EQUAL,Wkt={},Xkt={},Zkt={};PE.calc=function(e,t){var r=e._fullLayout,n=t.ids,i=wA.isArrayOrTypedArray(n),a=t.labels,o=t.parents,s=t.values,l=wA.isArrayOrTypedArray(s),u=[],c={},f={},h=function(H,N){c[H]?c[H].push(N):c[H]=[N],f[N]=1},d=function(H){return H||typeof H=="number"},v=function(H){return!l||Nkt(s[H])&&s[H]>=0},x,b,p;i?(x=Math.min(n.length,o.length),b=function(H){return d(n[H])&&v(H)},p=function(H){return String(n[H])}):(x=Math.min(a.length,o.length),b=function(H){return d(a[H])&&v(H)},p=function(H){return String(a[H])}),l&&(x=Math.min(x,s.length));for(var C=0;C<x;C++)if(b(C)){var E=p(C),A=d(o[C])?String(o[C]):"",L={i:C,id:E,pid:A,label:d(a[C])?String(a[C]):""};l&&(L.v=+s[C]),u.push(L),h(A,E)}if(c[""]){if(c[""].length>1){for(var M=wA.randstr(),g=0;g<u.length;g++)u[g].pid===""&&(u[g].pid=M);u.unshift({hasMultipleRoots:!0,id:M,pid:"",label:""})}}else{var _=[],k;for(k in c)f[k]||_.push(k);if(_.length===1)k=_[0],u.unshift({hasImpliedRoot:!0,id:k,pid:"",label:k});else return wA.warn(["Multiple implied roots, cannot build",t.type,"hierarchy of",t.name+".","These roots include:",_.join(", ")].join(" "))}var P;try{P=UCe.stratify().id(function(H){return H.id}).parentId(function(H){return H.pid})(u)}catch(H){return wA.warn(["Failed to build",t.type,"hierarchy of",t.name+".","Error:",H.message].join(" "))}var T=UCe.hierarchy(P),z=!1;if(l)switch(t.branchvalues){case"remainder":T.sum(function(H){return H.data.v});break;case"total":T.each(function(H){var N=H.data.data,j=N.v;if(H.children){var re=H.children.reduce(function(oe,_e){return oe+_e.data.data.v},0);if((N.hasImpliedRoot||N.hasMultipleRoots)&&(j=re),j<re*jkt)return z=!0,wA.warn(["Total value for node",H.data.data.id,"of",t.name,"is smaller than the sum of its children.",`
|
||
parent value =`,j,`
|
||
children sum =`,re].join(" "))}H.value=j});break}else VCe(T,t,{branches:t.count.indexOf("branches")!==-1,leaves:t.count.indexOf("leaves")!==-1});if(!z){t.sort&&T.sort(function(H,N){return N.value-H.value});var O,V,G=t.marker.colors||[],Z=!!G.length;return t._hasColorscale?(Z||(G=l?t.values:t._values),Hkt(e,t,{vals:G,containerStr:"marker",cLetter:"c"}),V=Ukt(t.marker)):O=Vkt(r["_"+t.type+"colormap"]),T.each(function(H){var N=H.data.data;N.color=t._hasColorscale?V(G[N.i]):O(G[N.i],N.id)}),u[0].hierarchy=T,u}};PE._runCrossTraceCalc=function(e,t){var r=t._fullLayout,n=t.calcdata,i=r[e+"colorway"],a=r["_"+e+"colormap"];r["extend"+e+"colors"]&&(i=Gkt(i,e==="icicle"?Zkt:e==="treemap"?Xkt:Wkt));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))}};PE.crossTraceCalc=function(e){return PE._runCrossTraceCalc("sunburst",e)};function VCe(e,t,r){var n=0,i=e.children;if(i){for(var a=i.length,o=0;o<a;o++)n+=VCe(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 Zy(e,t,r){e.prototype=t.prototype=r,r.constructor=e}function H_(e,t){var r=Object.create(e.prototype);for(var n in t)r[n]=t[n];return r}var yD=ru(()=>{});function Vm(){}function HCe(){return this.rgb().formatHex()}function r6t(){return this.rgb().formatHex8()}function i6t(){return JCe(this).formatHsl()}function jCe(){return this.rgb().formatRgb()}function W_(e){var t,r;return e=(e+"").trim().toLowerCase(),(t=Ykt.exec(e))?(r=t[1].length,t=parseInt(t[1],16),r===6?WCe(t):r===3?new _d(t>>8&15|t>>4&240,t>>4&15|t&240,(t&15)<<4|t&15,1):r===8?_D(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):r===4?_D(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=Kkt.exec(e))?new _d(t[1],t[2],t[3],1):(t=Jkt.exec(e))?new _d(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=$kt.exec(e))?_D(t[1],t[2],t[3],t[4]):(t=Qkt.exec(e))?_D(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=e6t.exec(e))?YCe(t[1],t[2]/100,t[3]/100,1):(t=t6t.exec(e))?YCe(t[1],t[2]/100,t[3]/100,t[4]):GCe.hasOwnProperty(e)?WCe(GCe[e]):e==="transparent"?new _d(NaN,NaN,NaN,0):null}function WCe(e){return new _d(e>>16&255,e>>8&255,e&255,1)}function _D(e,t,r,n){return n<=0&&(e=t=r=NaN),new _d(e,t,r,n)}function DE(e){return e instanceof Vm||(e=W_(e)),e?(e=e.rgb(),new _d(e.r,e.g,e.b,e.opacity)):new _d}function AA(e,t,r,n){return arguments.length===1?DE(e):new _d(e,t,r,n==null?1:n)}function _d(e,t,r,n){this.r=+e,this.g=+t,this.b=+r,this.opacity=+n}function XCe(){return`#${M2(this.r)}${M2(this.g)}${M2(this.b)}`}function n6t(){return`#${M2(this.r)}${M2(this.g)}${M2(this.b)}${M2((isNaN(this.opacity)?1:this.opacity)*255)}`}function ZCe(){let e=bD(this.opacity);return`${e===1?"rgb(":"rgba("}${E2(this.r)}, ${E2(this.g)}, ${E2(this.b)}${e===1?")":`, ${e})`}`}function bD(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 YCe(e,t,r,n){return n<=0?e=t=r=NaN:r<=0||r>=1?e=t=NaN:t<=0&&(e=NaN),new Xg(e,t,r,n)}function JCe(e){if(e instanceof Xg)return new Xg(e.h,e.s,e.l,e.opacity);if(e instanceof Vm||(e=W_(e)),!e)return new Xg;if(e instanceof Xg)return e;e=e.rgb();var t=e.r/255,r=e.g/255,n=e.b/255,i=Math.min(t,r,n),a=Math.max(t,r,n),o=NaN,s=a-i,l=(a+i)/2;return s?(t===a?o=(r-n)/s+(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 Xg(o,s,l,e.opacity)}function FE(e,t,r,n){return arguments.length===1?JCe(e):new Xg(e,t,r,n==null?1:n)}function Xg(e,t,r,n){this.h=+e,this.s=+t,this.l=+r,this.opacity=+n}function KCe(e){return e=(e||0)%360,e<0?e+360:e}function xD(e){return Math.max(0,Math.min(1,e||0))}function gW(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_,C2,TA,RE,Um,Ykt,Kkt,Jkt,$kt,Qkt,e6t,t6t,GCe,wD=ru(()=>{yD();j_=.7,C2=1/j_,TA="\\s*([+-]?\\d+)\\s*",RE="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",Um="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",Ykt=/^#([0-9a-f]{3,8})$/,Kkt=new RegExp(`^rgb\\(${TA},${TA},${TA}\\)$`),Jkt=new RegExp(`^rgb\\(${Um},${Um},${Um}\\)$`),$kt=new RegExp(`^rgba\\(${TA},${TA},${TA},${RE}\\)$`),Qkt=new RegExp(`^rgba\\(${Um},${Um},${Um},${RE}\\)$`),e6t=new RegExp(`^hsl\\(${RE},${Um},${Um}\\)$`),t6t=new RegExp(`^hsla\\(${RE},${Um},${Um},${RE}\\)$`),GCe={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};Zy(Vm,W_,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:HCe,formatHex:HCe,formatHex8:r6t,formatHsl:i6t,formatRgb:jCe,toString:jCe});Zy(_d,AA,H_(Vm,{brighter(e){return e=e==null?C2:Math.pow(C2,e),new _d(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?j_:Math.pow(j_,e),new _d(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new _d(E2(this.r),E2(this.g),E2(this.b),bD(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:XCe,formatHex:XCe,formatHex8:n6t,formatRgb:ZCe,toString:ZCe}));Zy(Xg,FE,H_(Vm,{brighter(e){return e=e==null?C2:Math.pow(C2,e),new Xg(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?j_:Math.pow(j_,e),new Xg(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,t=isNaN(e)||isNaN(this.s)?0:this.s,r=this.l,n=r+(r<.5?r:1-r)*t,i=2*r-n;return new _d(gW(e>=240?e-240:e+120,i,n),gW(e,i,n),gW(e<120?e+240:e-120,i,n),this.opacity)},clamp(){return new Xg(KCe(this.h),xD(this.s),xD(this.l),bD(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=bD(this.opacity);return`${e===1?"hsl(":"hsla("}${KCe(this.h)}, ${xD(this.s)*100}%, ${xD(this.l)*100}%${e===1?")":`, ${e})`}`}}))});var TD,AD,mW=ru(()=>{TD=Math.PI/180,AD=180/Math.PI});function ike(e){if(e instanceof Gm)return new Gm(e.l,e.a,e.b,e.opacity);if(e instanceof Yy)return nke(e);e instanceof _d||(e=DE(e));var t=bW(e.r),r=bW(e.g),n=bW(e.b),i=yW((.2225045*t+.7168786*r+.0606169*n)/QCe),a,o;return t===r&&r===n?a=o=i:(a=yW((.4360747*t+.3850649*r+.1430804*n)/$Ce),o=yW((.0139322*t+.0971045*r+.7141733*n)/eke)),new Gm(116*i-16,500*(a-i),200*(i-o),e.opacity)}function MA(e,t,r,n){return arguments.length===1?ike(e):new Gm(e,t,r,n==null?1:n)}function Gm(e,t,r,n){this.l=+e,this.a=+t,this.b=+r,this.opacity=+n}function yW(e){return e>a6t?Math.pow(e,1/3):e/rke+tke}function _W(e){return e>SA?e*e*e:rke*(e-tke)}function xW(e){return 255*(e<=.0031308?12.92*e:1.055*Math.pow(e,1/2.4)-.055)}function bW(e){return(e/=255)<=.04045?e/12.92:Math.pow((e+.055)/1.055,2.4)}function o6t(e){if(e instanceof Yy)return new Yy(e.h,e.c,e.l,e.opacity);if(e instanceof Gm||(e=ike(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)*AD;return new Yy(t<0?t+360:t,Math.sqrt(e.a*e.a+e.b*e.b),e.l,e.opacity)}function zE(e,t,r,n){return arguments.length===1?o6t(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 nke(e){if(isNaN(e.h))return new Gm(e.l,0,0,e.opacity);var t=e.h*TD;return new Gm(e.l,Math.cos(t)*e.c,Math.sin(t)*e.c,e.opacity)}var SD,$Ce,QCe,eke,tke,SA,rke,a6t,ake=ru(()=>{yD();wD();mW();SD=18,$Ce=.96422,QCe=1,eke=.82521,tke=4/29,SA=6/29,rke=3*SA*SA,a6t=SA*SA*SA;Zy(Gm,MA,H_(Vm,{brighter(e){return new Gm(this.l+SD*(e==null?1:e),this.a,this.b,this.opacity)},darker(e){return new Gm(this.l-SD*(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=$Ce*_W(t),e=QCe*_W(e),r=eke*_W(r),new _d(xW(3.1338561*t-1.6168667*e-.4906146*r),xW(-.9787684*t+1.9161415*e+.033454*r),xW(.0719453*t-.2289914*e+1.4052427*r),this.opacity)}}));Zy(Yy,zE,H_(Vm,{brighter(e){return new Yy(this.h,this.c,this.l+SD*(e==null?1:e),this.opacity)},darker(e){return new Yy(this.h,this.c,this.l-SD*(e==null?1:e),this.opacity)},rgb(){return nke(this).rgb()}}))});function s6t(e){if(e instanceof k2)return new k2(e.h,e.s,e.l,e.opacity);e instanceof _d||(e=DE(e));var t=e.r/255,r=e.g/255,n=e.b/255,i=(lke*n+oke*t-ske*r)/(lke+oke-ske),a=n-i,o=(OE*(r-i)-TW*a)/MD,s=Math.sqrt(o*o+a*a)/(OE*i*(1-i)),l=s?Math.atan2(o,a)*AD-120:NaN;return new k2(l<0?l+360:l,s,i,e.opacity)}function EA(e,t,r,n){return arguments.length===1?s6t(e):new k2(e,t,r,n==null?1:n)}function k2(e,t,r,n){this.h=+e,this.s=+t,this.l=+r,this.opacity=+n}var uke,wW,TW,MD,OE,oke,ske,lke,cke=ru(()=>{yD();wD();mW();uke=-.14861,wW=1.78277,TW=-.29227,MD=-.90649,OE=1.97294,oke=OE*MD,ske=OE*wW,lke=wW*TW-MD*uke;Zy(k2,EA,H_(Vm,{brighter(e){return e=e==null?C2:Math.pow(C2,e),new k2(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?j_:Math.pow(j_,e),new k2(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=isNaN(this.h)?0:(this.h+120)*TD,t=+this.l,r=isNaN(this.s)?0:this.s*t*(1-t),n=Math.cos(e),i=Math.sin(e);return new _d(255*(t+r*(uke*n+wW*i)),255*(t+r*(TW*n+MD*i)),255*(t+r*(OE*n)),this.opacity)}}))});var L2=ru(()=>{wD();ake();cke()});function AW(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 ED(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 AW((r-n/t)*t,o,i,a,s)}}var CD=ru(()=>{});function kD(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 AW((r-n/t)*t,i,a,o,s)}}var SW=ru(()=>{CD()});var CA,MW=ru(()=>{CA=e=>()=>e});function fke(e,t){return function(r){return e+r*t}}function l6t(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 X_(e,t){var r=t-e;return r?fke(e,r>180||r<-180?r-360*Math.round(r/360):r):CA(isNaN(e)?t:e)}function hke(e){return(e=+e)==1?$f:function(t,r){return r-t?l6t(t,r,e):CA(isNaN(t)?r:t)}}function $f(e,t){var r=t-e;return r?fke(e,r):CA(isNaN(e)?t:e)}var P2=ru(()=>{MW()});function dke(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=AA(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 qE,vke,pke,EW=ru(()=>{L2();CD();SW();P2();qE=function e(t){var r=hke(t);function n(i,a){var o=r((i=AA(i)).r,(a=AA(a)).r),s=r(i.g,a.g),l=r(i.b,a.b),u=$f(i.opacity,a.opacity);return function(c){return i.r=o(c),i.g=s(c),i.b=l(c),i.opacity=u(c),i+""}}return n.gamma=e,n}(1);vke=dke(ED),pke=dke(kD)});function kA(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 LD(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}var PD=ru(()=>{});function gke(e,t){return(LD(t)?kA:CW)(e,t)}function CW(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]=Z_(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 kW=ru(()=>{BE();PD()});function ID(e,t){var r=new Date;return e=+e,t=+t,function(n){return r.setTime(e*(1-n)+t*n),r}}var LW=ru(()=>{});function Fp(e,t){return e=+e,t=+t,function(r){return e*(1-r)+t*r}}var NE=ru(()=>{});function RD(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]=Z_(e[i],t[i]):n[i]=t[i];return function(a){for(i in r)n[i]=r[i](a);return n}}var PW=ru(()=>{BE()});function u6t(e){return function(){return e}}function c6t(e){return function(t){return e(t)+""}}function DD(e,t){var r=RW.lastIndex=IW.lastIndex=0,n,i,a,o=-1,s=[],l=[];for(e=e+"",t=t+"";(n=RW.exec(e))&&(i=IW.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=IW.lastIndex;return r<t.length&&(a=t.slice(r),s[o]?s[o]+=a:s[++o]=a),s.length<2?l[0]?c6t(l[0].x):u6t(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 RW,IW,DW=ru(()=>{NE();RW=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,IW=new RegExp(RW.source,"g")});function Z_(e,t){var r=typeof t,n;return t==null||r==="boolean"?CA(t):(r==="number"?Fp:r==="string"?(n=W_(t))?(t=n,qE):DD:t instanceof W_?qE:t instanceof Date?ID:LD(t)?kA:Array.isArray(t)?CW:typeof t.valueOf!="function"&&typeof t.toString!="function"||isNaN(t)?RD:Fp)(e,t)}var BE=ru(()=>{L2();EW();kW();LW();NE();PW();DW();MW();PD()});function mke(e){var t=e.length;return function(r){return e[Math.max(0,Math.min(t-1,Math.floor(r*t)))]}}var yke=ru(()=>{});function _ke(e,t){var r=X_(+e,+t);return function(n){var i=r(n);return i-360*Math.floor(i/360)}}var xke=ru(()=>{P2()});function bke(e,t){return e=+e,t=+t,function(r){return Math.round(e*(1-r)+t*r)}}var wke=ru(()=>{});function FW(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)*Tke,skewX:Math.atan(l)*Tke,scaleX:o,scaleY:s}}var Tke,FD,Ake=ru(()=>{Tke=180/Math.PI,FD={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1}});function Ske(e){let t=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(e+"");return t.isIdentity?FD:FW(t.a,t.b,t.c,t.d,t.e,t.f)}function Mke(e){return e==null?FD:(zD||(zD=document.createElementNS("http://www.w3.org/2000/svg","g")),zD.setAttribute("transform",e),(e=zD.transform.baseVal.consolidate())?(e=e.matrix,FW(e.a,e.b,e.c,e.d,e.e,e.f)):FD)}var zD,Eke=ru(()=>{Ake()});function Cke(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 kke,Lke,Pke=ru(()=>{NE();Eke();kke=Cke(Ske,"px, ","px)","deg)"),Lke=Cke(Mke,", ",")",")")});function Ike(e){return((e=Math.exp(e))+1/e)/2}function h6t(e){return((e=Math.exp(e))-1/e)/2}function d6t(e){return((e=Math.exp(2*e))-1)/(e+1)}var f6t,Rke,Dke=ru(()=>{f6t=1e-12;Rke=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<f6t)p=Math.log(h/u)/t,b=function(k){return[s+k*d,l+k*v,u*Math.exp(t*k*p)]};else{var C=Math.sqrt(x),E=(h*h-u*u+n*x)/(2*u*r*C),A=(h*h-u*u-n*x)/(2*h*r*C),L=Math.log(Math.sqrt(E*E+1)-E),_=Math.log(Math.sqrt(A*A+1)-A);p=(_-L)/t,b=function(k){var M=k*p,g=Ike(L),P=u/(r*C)*(g*d6t(t*M+L)-h6t(L));return[s+P*d,l+P*v,u*g/Ike(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 Fke(e){return function(t,r){var n=e((t=FE(t)).h,(r=FE(r)).h),i=$f(t.s,r.s),a=$f(t.l,r.l),o=$f(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 zke,Oke,qke=ru(()=>{L2();P2();zke=Fke(X_),Oke=Fke($f)});function zW(e,t){var r=$f((e=MA(e)).l,(t=MA(t)).l),n=$f(e.a,t.a),i=$f(e.b,t.b),a=$f(e.opacity,t.opacity);return function(o){return e.l=r(o),e.a=n(o),e.b=i(o),e.opacity=a(o),e+""}}var Bke=ru(()=>{L2();P2()});function Nke(e){return function(t,r){var n=e((t=zE(t)).h,(r=zE(r)).h),i=$f(t.c,r.c),a=$f(t.l,r.l),o=$f(t.opacity,r.opacity);return function(s){return t.h=n(s),t.c=i(s),t.l=a(s),t.opacity=o(s),t+""}}}var Uke,Vke,Gke=ru(()=>{L2();P2();Uke=Nke(X_),Vke=Nke($f)});function Hke(e){return function t(r){r=+r;function n(i,a){var o=e((i=EA(i)).h,(a=EA(a)).h),s=$f(i.s,a.s),l=$f(i.l,a.l),u=$f(i.opacity,a.opacity);return function(c){return i.h=o(c),i.s=s(c),i.l=l(Math.pow(c,r)),i.opacity=u(c),i+""}}return n.gamma=t,n}(1)}var jke,Wke,Xke=ru(()=>{L2();P2();jke=Hke(X_),Wke=Hke($f)});function OW(e,t){t===void 0&&(t=e,e=Z_);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 Zke=ru(()=>{BE()});function Yke(e,t){for(var r=new Array(t),n=0;n<t;++n)r[n]=e(n/(t-1));return r}var Kke=ru(()=>{});var I2={};cee(I2,{interpolate:()=>Z_,interpolateArray:()=>gke,interpolateBasis:()=>ED,interpolateBasisClosed:()=>kD,interpolateCubehelix:()=>jke,interpolateCubehelixLong:()=>Wke,interpolateDate:()=>ID,interpolateDiscrete:()=>mke,interpolateHcl:()=>Uke,interpolateHclLong:()=>Vke,interpolateHsl:()=>zke,interpolateHslLong:()=>Oke,interpolateHue:()=>_ke,interpolateLab:()=>zW,interpolateNumber:()=>Fp,interpolateNumberArray:()=>kA,interpolateObject:()=>RD,interpolateRgb:()=>qE,interpolateRgbBasis:()=>vke,interpolateRgbBasisClosed:()=>pke,interpolateRound:()=>bke,interpolateString:()=>DD,interpolateTransformCss:()=>kke,interpolateTransformSvg:()=>Lke,interpolateZoom:()=>Rke,piecewise:()=>OW,quantize:()=>Yke});var R2=ru(()=>{BE();kW();CD();SW();LW();yke();xke();NE();PD();PW();wke();DW();Pke();Dke();EW();qke();Bke();Gke();Xke();Zke();Kke()});var OD=ye((Zvr,Jke)=>{"use strict";var v6t=So(),p6t=Ca();Jke.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),v6t.pointStyle(t,n,i,r)}else p6t.fill(t,l)}});var qW=ye((Yvr,r6e)=>{"use strict";var $ke=Oa(),Qke=Ca(),e6e=Dr(),g6t=_v().resizeText,m6t=OD();function y6t(e){var t=e._fullLayout._sunburstlayer.selectAll(".trace");g6t(e,t,"sunburst"),t.each(function(r){var n=$ke.select(this),i=r[0],a=i.trace;n.style("opacity",a.opacity),n.selectAll("path.surface").each(function(o){$ke.select(this).call(t6e,o,a,e)})})}function t6e(e,t,r,n){var i=t.data.data,a=!t.children,o=i.i,s=e6e.castOption(r,o,"marker.line.color")||Qke.defaultLine,l=e6e.castOption(r,o,"marker.line.width")||0;e.call(m6t,t,r,n).style("stroke-width",l).call(Qke.stroke,s).style("opacity",a?r.leaf.opacity:null)}r6e.exports={style:y6t,styleOne:t6e}});var Ky=ye(Ns=>{"use strict";var D2=Dr(),_6t=Ca(),x6t=Tg(),i6e=u_();Ns.findEntryWithLevel=function(e,t){var r;return t&&e.eachAfter(function(n){if(Ns.getPtId(n)===t)return r=n.copy()}),r||e};Ns.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(Ns.getPtId(o)===t)return r=n.copy()}}),r||e};Ns.isEntry=function(e){return!e.parent};Ns.isLeaf=function(e){return!e.children};Ns.getPtId=function(e){return e.data.data.id};Ns.getPtLabel=function(e){return e.data.data.label};Ns.getValue=function(e){return e.value};Ns.isHierarchyRoot=function(e){return n6e(e)===""};Ns.setSliceCursor=function(e,t,r){var n=r.isTransitioning;if(!n){var i=e.datum();n=r.hideOnRoot&&Ns.isHierarchyRoot(i)||r.hideOnLeaves&&Ns.isLeaf(i)}x6t(e,n?null:"pointer")};function b6t(e,t,r){return{color:Ns.getOutsideTextFontKey("color",e,t,r),family:Ns.getOutsideTextFontKey("family",e,t,r),size:Ns.getOutsideTextFontKey("size",e,t,r),weight:Ns.getOutsideTextFontKey("weight",e,t,r),style:Ns.getOutsideTextFontKey("style",e,t,r),variant:Ns.getOutsideTextFontKey("variant",e,t,r),textcase:Ns.getOutsideTextFontKey("textcase",e,t,r),lineposition:Ns.getOutsideTextFontKey("lineposition",e,t,r),shadow:Ns.getOutsideTextFontKey("shadow",e,t,r)}}function w6t(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||_6t.contrast(a.color),family:Ns.getInsideTextFontKey("family",e,t,r,n),size:Ns.getInsideTextFontKey("size",e,t,r,n),weight:Ns.getInsideTextFontKey("weight",e,t,r,n),style:Ns.getInsideTextFontKey("style",e,t,r,n),variant:Ns.getInsideTextFontKey("variant",e,t,r,n),textcase:Ns.getInsideTextFontKey("textcase",e,t,r,n),lineposition:Ns.getInsideTextFontKey("lineposition",e,t,r,n),shadow:Ns.getInsideTextFontKey("shadow",e,t,r,n)}}Ns.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};Ns.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};Ns.isOutsideText=function(e,t){return!e._hasColorscale&&Ns.isHierarchyRoot(t)};Ns.determineTextFont=function(e,t,r,n){return Ns.isOutsideText(e,t)?b6t(e,t,r):w6t(e,t,r,n)};Ns.hasTransition=function(e){return!!(e&&e.duration>0)};Ns.getMaxDepth=function(e){return e.maxdepth>=0?e.maxdepth:1/0};Ns.isHeader=function(e,t){return!(Ns.isLeaf(e)||e.depth===t._maxDepth-1)};function n6e(e){return e.data.data.pid}Ns.getParent=function(e,t){return Ns.findEntryWithLevel(e,n6e(t))};Ns.listPath=function(e,t){var r=e.parent;if(!r)return[];var n=t?[r.data[t]]:[r];return Ns.listPath(r,t).concat(n)};Ns.getPath=function(e){return Ns.listPath(e,"label").join("/")+"/"};Ns.formatValue=i6e.formatPieValue;Ns.formatPercent=function(e,t){var r=D2.formatPercent(e,0);return r==="0%"&&(r=i6e.formatPiePercent(e,t)),r}});var GE=ye((Jvr,s6e)=>{"use strict";var LA=Oa(),a6e=qa(),T6t=rp().appendArrayPointValue,UE=vf(),o6e=Dr(),A6t=g3(),rd=Ky(),S6t=u_(),M6t=S6t.formatPieValue;s6e.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,C=p.i,E=rd.isHierarchyRoot(v),A=rd.getParent(l,v),L=rd.getValue(v),_=function(Me){return o6e.castOption(b,C,Me)},k=_("hovertemplate"),M=UE.castHoverinfo(b,x,C),g=x.separators,P;if(k||M&&M!=="none"&&M!=="skip"){var T,z;u&&(T=o.cx+v.pxmid[0]*(1-v.rInscribed),z=o.cy+v.pxmid[1]*(1-v.rInscribed)),c&&(T=v._hoverX,z=v._hoverY);var O={},V=[],G=[],Z=function(Me){return V.indexOf(Me)!==-1};M&&(V=M==="all"?b._module.attributes.hoverinfo.flags:M.split("+")),O.label=p.label,Z("label")&&O.label&&G.push(O.label),p.hasOwnProperty("v")&&(O.value=p.v,O.valueLabel=M6t(O.value,g),Z("value")&&G.push(O.valueLabel)),O.currentPath=v.currentPath=rd.getPath(v.data),Z("current path")&&!E&&G.push(O.currentPath);var H,N=[],j=function(){N.indexOf(H)===-1&&(G.push(H),N.push(H))};O.percentParent=v.percentParent=L/rd.getValue(A),O.parent=v.parentString=rd.getPtLabel(A),Z("percent parent")&&(H=rd.formatPercent(O.percentParent,g)+" of "+O.parent,j()),O.percentEntry=v.percentEntry=L/rd.getValue(r),O.entry=v.entry=rd.getPtLabel(r),Z("percent entry")&&!E&&!v.onPathbar&&(H=rd.formatPercent(O.percentEntry,g)+" of "+O.entry,j()),O.percentRoot=v.percentRoot=L/rd.getValue(l),O.root=v.root=rd.getPtLabel(l),Z("percent root")&&!E&&(H=rd.formatPercent(O.percentRoot,g)+" of "+O.root,j()),O.text=_("hovertext")||_("text"),Z("text")&&(H=O.text,o6e.isValidTextValue(H)&&G.push(H)),P=[VE(v,b,a.eventDataKeys)];var re={trace:b,y:z,_x0:v._x0,_x1:v._x1,_y0:v._y0,_y1:v._y1,text:G.join("<br>"),name:k||Z("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:k,hovertemplateLabels:O,eventData:P};u&&(re.x0=T-v.rInscribed*v.rpx1,re.x1=T+v.rInscribed*v.rpx1,re.idealAlign=v.pxmid[0]<0?"left":"right"),c&&(re.x=T,re.idealAlign=T<0?"left":"right");var oe=[];UE.loneHover(re,{container:x._hoverlayer.node(),outerContainer:x._paper.node(),gd:n,inOut_bbox:oe}),P[0].bbox=oe[0],s._hasHoverLabel=!0}if(c){var _e=t.select("path.surface");a.styleOne(_e,v,b,n,{hovered:!0})}s._hasHoverEvent=!0,n.emit("plotly_hover",{points:P||[VE(v,b,a.eventDataKeys)],event:LA.event})}},h=function(v){var x=n._fullLayout,b=n._fullData[s.index],p=LA.select(this).datum();if(s._hasHoverEvent&&(v.originalEvent=LA.event,n.emit("plotly_unhover",{points:[VE(p,b,a.eventDataKeys)],event:LA.event}),s._hasHoverEvent=!1),s._hasHoverLabel&&(UE.loneUnhover(x._hoverlayer.node()),s._hasHoverLabel=!1),c){var C=t.select("path.surface");a.styleOne(C,p,b,n,{hovered:!1})}},d=function(v){var x=n._fullLayout,b=n._fullData[s.index],p=u&&(rd.isHierarchyRoot(v)||rd.isLeaf(v)),C=rd.getPtId(v),E=rd.isEntry(v)?rd.findEntryWithChild(l,C):rd.findEntryWithLevel(l,C),A=rd.getPtId(E),L={points:[VE(v,b,a.eventDataKeys)],event:LA.event};p||(L.nextLevel=A);var _=A6t.triggerHandler(n,"plotly_"+s.type+"click",L);if(_!==!1&&x.hovermode&&(n._hoverdata=[VE(v,b,a.eventDataKeys)],UE.click(n,LA.event)),!p&&_!==!1&&!n._dragging&&!n._transitioning){a6e.call("_storeDirectGUIEdit",b,x._tracePreGUI[b.uid],{level:b.level});var k={data:[{level:A}],traces:[s.index]},M={frame:{redraw:!1,duration:a.transitionTime},transition:{duration:a.transitionTime,easing:a.transitionEasing},mode:"immediate",fromcurrent:!0};UE.loneUnhover(x._hoverlayer.node()),a6e.call("animate",n,k,M)}};t.on("mouseover",f),t.on("mouseout",h),t.on("click",d)};function VE(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&&!rd.isHierarchyRoot(e)&&(i.parent=e.parentString),T6t(i,t,n.i),i}});var BD=ye(qD=>{"use strict";var HE=Oa(),E6t=LE(),Zg=(R2(),B1(I2)).interpolate,l6e=So(),bv=Dr(),C6t=iu(),h6e=_v(),u6e=h6e.recordMinTextSize,k6t=h6e.clearMinTextSize,d6e=gD(),L6t=u_().getRotationAngle,P6t=d6e.computeTransform,I6t=d6e.transformInsideText,R6t=qW().styleOne,D6t=N0().resizeText,F6t=GE(),BW=vW(),Il=Ky();qD.plot=function(e,t,r,n){var i=e._fullLayout,a=i._sunburstlayer,o,s,l=!r,u=!i.uniformtext.mode&&Il.hasTransition(r);if(k6t("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=HE.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){c6e(e,f,this,r)})})}else o.each(function(f){c6e(e,f,this,r)}),i.uniformtext.mode&&D6t(e,i._sunburstlayer.selectAll(".trace"),"sunburst");l&&o.exit().remove()};function c6e(e,t,r,n){var i=e._context.staticPlot,a=e._fullLayout,o=!a.uniformtext.mode&&Il.hasTransition(n),s=HE.select(r),l=s.selectAll("g.slice"),u=t[0],c=u.trace,f=u.hierarchy,h=Il.findEntryWithLevel(f,c.level),d=Il.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]),C=.5*Math.min(b,p),E=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(me){_[Il.getPtId(me)]={rpx0:me.rpx0,rpx1:me.rpx1,x0:me.x0,x1:me.x1,transform:me.transform},!L&&Il.isEntry(me)&&(L=me)});var k=z6t(h).descendants(),M=h.height+1,g=0,P=d;u.hasMultipleRoots&&Il.isHierarchyRoot(h)&&(k=k.slice(1),M-=1,g=1,P+=1),k=k.filter(function(me){return me.y1<=P});var T=L6t(c.rotation);T&&k.forEach(function(me){me.x0+=T,me.x1+=T});var z=Math.min(M,d),O=function(me){return(me-g)/z*C},V=function(me,ie){return[me*Math.cos(ie),-me*Math.sin(ie)]},G=function(me){return bv.pathAnnulus(me.rpx0,me.rpx1,me.x0,me.x1,E,A)},Z=function(me){return E+f6e(me)[0]*(me.transform.rCenter||0)+(me.transform.x||0)},H=function(me){return A+f6e(me)[1]*(me.transform.rCenter||0)+(me.transform.y||0)};l=l.data(k,Il.getPtId),l.enter().append("g").classed("slice",!0),o?l.exit().transition().each(function(){var me=HE.select(this),ie=me.select("path.surface");ie.transition().attrTween("d",function(Le){var Ae=oe(Le);return function(De){return G(Ae(De))}});var Se=me.select("g.slicetext");Se.attr("opacity",0)}).remove():l.exit().remove(),l.order();var N=null;if(o&&L){var j=Il.getPtId(L);l.each(function(me){N===null&&Il.getPtId(me)===j&&(N=me.x1)})}var re=l;o&&(re=re.transition().each("end",function(){var me=HE.select(this);Il.setSliceCursor(me,e,{hideOnRoot:!0,hideOnLeaves:!0,isTransitioning:!1})})),re.each(function(me){var ie=HE.select(this),Se=bv.ensureSingle(ie,"path","surface",function(Fe){Fe.style("pointer-events",i?"none":"all")});me.rpx0=O(me.y0),me.rpx1=O(me.y1),me.xmid=(me.x0+me.x1)/2,me.pxmid=V(me.rpx1,me.xmid),me.midangle=-(me.xmid-Math.PI/2),me.startangle=-(me.x0-Math.PI/2),me.stopangle=-(me.x1-Math.PI/2),me.halfangle=.5*Math.min(bv.angleDelta(me.x0,me.x1)||Math.PI,Math.PI),me.ring=1-me.rpx0/me.rpx1,me.rInscribed=O6t(me,c),o?Se.transition().attrTween("d",function(Fe){var ce=_e(Fe);return function(Ze){return G(ce(Ze))}}):Se.attr("d",G),ie.call(F6t,h,e,t,{eventDataKeys:BW.eventDataKeys,transitionTime:BW.CLICK_TRANSITION_TIME,transitionEasing:BW.CLICK_TRANSITION_EASING}).call(Il.setSliceCursor,e,{hideOnRoot:!0,hideOnLeaves:!0,isTransitioning:e._transitioning}),Se.call(R6t,me,c,e);var Le=bv.ensureSingle(ie,"g","slicetext"),Ae=bv.ensureSingle(Le,"text","",function(Fe){Fe.attr("data-notex",1)}),De=bv.ensureUniformFontSize(e,Il.determineTextFont(c,me,a.font));Ae.text(qD.formatSliceLabel(me,h,c,t,a)).classed("slicetext",!0).attr("text-anchor","middle").call(l6e.font,De).call(C6t.convertToTspans,e);var Pe=l6e.bBox(Ae.node());me.transform=I6t(Pe,me,u),me.transform.targetX=Z(me),me.transform.targetY=H(me);var ge=function(Fe,ce){var Ze=Fe.transform;return P6t(Ze,ce),Ze.fontSize=De.size,u6e(c.type,Ze,a),bv.getTextTransform(Ze)};o?Ae.transition().attrTween("transform",function(Fe){var ce=Me(Fe);return function(Ze){return ge(ce(Ze),Pe)}}):Ae.attr("transform",ge(me,Pe))});function oe(me){var ie=Il.getPtId(me),Se=_[ie],Le=_[Il.getPtId(h)],Ae;if(Le){var De=(me.x1>Le.x1?2*Math.PI:0)+T;Ae=me.rpx1<Le.rpx1?{x0:me.x0,x1:me.x1,rpx0:0,rpx1:0}:{x0:De,x1:De,rpx0:me.rpx0,rpx1:me.rpx1}}else{var Pe,ge=Il.getPtId(me.parent);l.each(function(pt){if(Il.getPtId(pt)===ge)return Pe=pt});var Fe=Pe.children,ce;Fe.forEach(function(pt,Wt){if(Il.getPtId(pt)===ie)return ce=Wt});var Ze=Fe.length,ct=Zg(Pe.x0,Pe.x1);Ae={rpx0:C,rpx1:C,x0:ct(ce/Ze),x1:ct((ce+1)/Ze)}}return Zg(Se,Ae)}function _e(me){var ie=_[Il.getPtId(me)],Se,Le={x0:me.x0,x1:me.x1,rpx0:me.rpx0,rpx1:me.rpx1};if(ie)Se=ie;else if(L)if(me.parent)if(N){var Ae=(me.x1>N?2*Math.PI:0)+T;Se={x0:Ae,x1:Ae}}else Se={rpx0:C,rpx1:C},bv.extendFlat(Se,ke(me));else Se={rpx0:0,rpx1:0};else Se={x0:T,x1:T};return Zg(Se,Le)}function Me(me){var ie=_[Il.getPtId(me)],Se,Le=me.transform;if(ie)Se=ie;else if(Se={rpx1:me.rpx1,transform:{textPosAngle:Le.textPosAngle,scale:0,rotate:Le.rotate,rCenter:Le.rCenter,x:Le.x,y:Le.y}},L)if(me.parent)if(N){var Ae=me.x1>N?2*Math.PI:0;Se.x0=Se.x1=Ae}else bv.extendFlat(Se,ke(me));else Se.x0=Se.x1=T;else Se.x0=Se.x1=T;var De=Zg(Se.transform.textPosAngle,me.transform.textPosAngle),Pe=Zg(Se.rpx1,me.rpx1),ge=Zg(Se.x0,me.x0),Fe=Zg(Se.x1,me.x1),ce=Zg(Se.transform.scale,Le.scale),Ze=Zg(Se.transform.rotate,Le.rotate),ct=Le.rCenter===0?3:Se.transform.rCenter===0?1/3:1,pt=Zg(Se.transform.rCenter,Le.rCenter),Wt=function(st){return pt(Math.pow(st,ct))};return function(st){var lt=Pe(st),Gt=ge(st),Nt=Fe(st),$t=Wt(st),sr=V(lt,(Gt+Nt)/2),wr=De(st),ur={pxmid:sr,rpx1:lt,transform:{textPosAngle:wr,rCenter:$t,x:Le.x,y:Le.y}};return u6e(c.type,Le,a),{transform:{targetX:Z(ur),targetY:H(ur),scale:ce(st),rotate:Ze(st),rCenter:$t}}}}function ke(me){var ie=me.parent,Se=_[Il.getPtId(ie)],Le={};if(Se){var Ae=ie.children,De=Ae.indexOf(me),Pe=Ae.length,ge=Zg(Se.x0,Se.x1);Le.x0=ge(De/Pe),Le.x1=ge(De/Pe)}else Le.x0=Le.x1=0;return Le}}function z6t(e){return E6t.partition().size([2*Math.PI,e.height+1])(e)}qD.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=Il.isHierarchyRoot(e),h=Il.getParent(c,e),d=Il.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(Il.formatValue(u.v,s)),!f){x("current path")&&b.push(Il.getPath(e.data));var C=0;x("percent parent")&&C++,x("percent entry")&&C++,x("percent root")&&C++;var E=C>1;if(C){var A,L=function(g){p=Il.formatPercent(A,s),E&&(p+=" of "+g),b.push(p)};x("percent parent")&&!f&&(A=d/Il.getValue(h),L("parent")),x("percent entry")&&(A=d/Il.getValue(t),L("entry")),x("percent root")&&(A=d/Il.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 k={};u.label&&(k.label=u.label),u.hasOwnProperty("v")&&(k.value=u.v,k.valueLabel=Il.formatValue(u.v,s)),k.currentPath=Il.getPath(e.data),f||(k.percentParent=d/Il.getValue(h),k.percentParentLabel=Il.formatPercent(k.percentParent,s),k.parent=Il.getPtLabel(h)),k.percentEntry=d/Il.getValue(t),k.percentEntryLabel=Il.formatPercent(k.percentEntry,s),k.entry=Il.getPtLabel(t),k.percentRoot=d/Il.getValue(c),k.percentRootLabel=Il.formatPercent(k.percentRoot,s),k.root=Il.getPtLabel(c),u.hasOwnProperty("color")&&(k.color=u.color);var M=bv.castOption(r,u.i,"text");return(bv.isValidTextValue(M)||M==="")&&(k.text=M),k.customdata=bv.castOption(r,u.i,"customdata"),bv.texttemplateString(_,k,i._d3locale,k,r._meta||{})};function O6t(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 f6e(e){return q6t(e.rpx1,e.transform.textPosAngle)}function q6t(e,t){return[e*Math.sin(t),-e*Math.cos(t)]}});var p6e=ye((Qvr,v6e)=>{"use strict";v6e.exports={moduleType:"trace",name:"sunburst",basePlotModule:kCe(),categories:[],animatable:!0,attributes:kE(),layoutAttributes:pW(),supplyDefaults:OCe(),supplyLayoutDefaults:BCe(),calc:IE().calc,crossTraceCalc:IE().crossTraceCalc,plot:BD().plot,style:qW().style,colorbar:$d(),meta:{}}});var m6e=ye((epr,g6e)=>{"use strict";g6e.exports=p6e()});var _6e=ye(PA=>{"use strict";var y6e=Mc();PA.name="treemap";PA.plot=function(e,t,r,n){y6e.plotBasePlot(PA.name,e,t,r,n)};PA.clean=function(e,t,r,n){y6e.cleanBasePlot(PA.name,e,t,r,n)}});var F2=ye((rpr,x6e)=>{"use strict";x6e.exports={CLICK_TRANSITION_TIME:750,CLICK_TRANSITION_EASING:"poly",eventDataKeys:["currentPath","root","entry","percentRoot","percentEntry","percentParent"],gapWithPathbar:1}});var ND=ye((ipr,w6e)=>{"use strict";var B6t=Qo().hovertemplateAttrs,N6t=Qo().texttemplateAttrs,U6t=Tu(),V6t=kc().attributes,z2=A2(),Q0=kE(),b6e=F2(),NW=Ao().extendFlat,G6t=Pd().pattern;w6e.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:NW({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:G6t,depthfade:{valType:"enumerated",values:[!0,!1,"reversed"],editType:"style"},line:Q0.marker.line,cornerradius:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"calc"},U6t("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:NW({},z2.textfont,{}),editType:"calc"},text:z2.text,textinfo:Q0.textinfo,texttemplate:N6t({editType:"plot"},{keys:b6e.eventDataKeys.concat(["label","value"])}),hovertext:z2.hovertext,hoverinfo:Q0.hoverinfo,hovertemplate:B6t({},{keys:b6e.eventDataKeys}),textfont:z2.textfont,insidetextfont:z2.insidetextfont,outsidetextfont:NW({},z2.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:z2.sort,root:Q0.root,domain:V6t({name:"treemap",trace:!0,editType:"calc"})}});var UW=ye((npr,T6e)=>{"use strict";T6e.exports={treemapcolorway:{valType:"colorlist",editType:"calc"},extendtreemapcolors:{valType:"boolean",dflt:!0,editType:"calc"}}});var E6e=ye((apr,M6e)=>{"use strict";var A6e=Dr(),H6t=ND(),j6t=Ca(),W6t=kc().defaults,X6t=r0().handleText,Z6t=Qb().TEXTPAD,Y6t=S2().handleMarkerDefaults,S6e=tc(),K6t=S6e.hasColorscale,J6t=S6e.handleDefaults;M6e.exports=function(t,r,n,i){function a(b,p){return A6e.coerce(t,r,H6t,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",A6e.isArrayOrTypedArray(c)?"text+label":"label"),a("hovertext"),a("hovertemplate");var f=a("pathbar.visible"),h="auto";X6t(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;Y6t(t,r,i,a);var v=r._hasColorscale=K6t(t,"marker","colors")||(t.marker||{}).coloraxis;v?J6t(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:j6t.contrast(i.paper_bgcolor)}}},f&&(a("pathbar.thickness",r.pathbar.textfont.size+2*Z6t),a("pathbar.side"),a("pathbar.edgeshape")),a("sort"),a("root.color"),W6t(r,i,a),r._length=null}});var k6e=ye((opr,C6e)=>{"use strict";var $6t=Dr(),Q6t=UW();C6e.exports=function(t,r){function n(i,a){return $6t.coerce(t,r,Q6t,i,a)}n("treemapcolorway",r.colorway),n("extendtreemapcolors")}});var GW=ye(VW=>{"use strict";var L6e=IE();VW.calc=function(e,t){return L6e.calc(e,t)};VW.crossTraceCalc=function(e){return L6e._runCrossTraceCalc("treemap",e)}});var HW=ye((lpr,P6e)=>{"use strict";P6e.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 jW=ye((upr,I6e)=>{"use strict";var IA=LE(),eLt=HW();I6e.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=IA.treemap().tile(tLt(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)&&eLt(h,r,{swapXY:o,flipX:i,flipY:a}),h};function tLt(e,t){switch(e){case"squarify":return IA.treemapSquarify.ratio(t);case"binary":return IA.treemapBinary;case"dice":return IA.treemapDice;case"slice":return IA.treemapSlice;default:return IA.treemapSliceDice}}});var UD=ye((cpr,z6e)=>{"use strict";var R6e=Oa(),RA=Ca(),D6e=Dr(),WW=Ky(),rLt=_v().resizeText,iLt=OD();function nLt(e){var t=e._fullLayout._treemaplayer.selectAll(".trace");rLt(e,t,"treemap"),t.each(function(r){var n=R6e.select(this),i=r[0],a=i.trace;n.style("opacity",a.opacity),n.selectAll("path.surface").each(function(o){R6e.select(this).call(F6e,o,a,e,{hovered:!1})})})}function F6e(e,t,r,n,i){var a=(i||{}).hovered,o=t.data.data,s=o.i,l,u,c=o.color,f=WW.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=D6e.castOption(r,s,"marker.line.color")||RA.defaultLine,u=D6e.castOption(r,s,"marker.line.width")||0,!r._hasColorscale&&!t.onPathbar){var d=r.marker.depthfade;if(d){var v=RA.combine(RA.addOpacity(r._backgroundColor,.75),c),x;if(d===!0){var b=WW.getMaxDepth(r);isFinite(b)?WW.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 C=.5*p/x;c=RA.combine(RA.addOpacity(v,C),c)}}}e.call(iLt,t,r,n,c).style("stroke-width",u).call(RA.stroke,l).style("opacity",h)}z6e.exports={style:nLt,styleOne:F6e}});var U6e=ye((fpr,N6e)=>{"use strict";var O6e=Oa(),VD=Dr(),q6e=So(),aLt=iu(),oLt=jW(),B6e=UD().styleOne,XW=F2(),DA=Ky(),sLt=GE(),ZW=!0;N6e.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,C={},E=t._context.staticPlot,A=t._fullLayout,L=r[0],_=L.trace,k=L.hierarchy,M=s/_._entryDepth,g=DA.listPath(n.data,"id"),P=oLt(k.copy(),[s,l],{packing:"dice",pad:{inner:0,top:0,left:0,right:0,bottom:0}}).descendants();P=P.filter(function(z){var O=g.indexOf(z.data.id);return O===-1?!1:(z.x0=M*O,z.x1=M*(O+1),z.y0=o,z.y1=o+l,z.onPathbar=!0,!0)}),P.reverse(),i=i.data(P,DA.getPtId),i.enter().append("g").classed("pathbar",!0),x(i,ZW,C,[s,l],f),i.order();var T=i;v&&(T=T.transition().each("end",function(){var z=O6e.select(this);DA.setSliceCursor(z,t,{hideOnRoot:!1,hideOnLeaves:!1,isTransitioning:!1})})),T.each(function(z){z._x0=u(z.x0),z._x1=u(z.x1),z._y0=c(z.y0),z._y1=c(z.y1),z._hoverX=u(z.x1-Math.min(s,l)/2),z._hoverY=c(z.y1-l/2);var O=O6e.select(this),V=VD.ensureSingle(O,"path","surface",function(N){N.style("pointer-events",E?"none":"all")});v?V.transition().attrTween("d",function(N){var j=b(N,ZW,C,[s,l]);return function(re){return f(j(re))}}):V.attr("d",f),O.call(sLt,n,t,r,{styleOne:B6e,eventDataKeys:XW.eventDataKeys,transitionTime:XW.CLICK_TRANSITION_TIME,transitionEasing:XW.CLICK_TRANSITION_EASING}).call(DA.setSliceCursor,t,{hideOnRoot:!1,hideOnLeaves:!1,isTransitioning:t._transitioning}),V.call(B6e,z,_,t,{hovered:!1}),z._text=(DA.getPtLabel(z)||"").split("<br>").join(" ")||"";var G=VD.ensureSingle(O,"g","slicetext"),Z=VD.ensureSingle(G,"text","",function(N){N.attr("data-notex",1)}),H=VD.ensureUniformFontSize(t,DA.determineTextFont(_,z,A.font,{onPathbar:!0}));Z.text(z._text||" ").classed("slicetext",!0).attr("text-anchor","start").call(q6e.font,H).call(aLt.convertToTspans,t),z.textBB=q6e.bBox(Z.node()),z.transform=h(z,{fontSize:H.size,onPathbar:!0}),z.transform.fontSize=H.size,v?Z.transition().attrTween("transform",function(N){var j=p(N,ZW,C,[s,l]);return function(re){return d(j(re))}}):Z.attr("transform",d(z))})}});var j6e=ye((hpr,H6e)=>{"use strict";var V6e=Oa(),YW=(R2(),B1(I2)).interpolate,Y_=Ky(),jE=Dr(),G6e=Qb().TEXTPAD,lLt=i2(),uLt=lLt.toMoveInsideBar,cLt=_v(),KW=cLt.recordMinTextSize,fLt=F2(),hLt=U6e();function O2(e){return Y_.isHierarchyRoot(e)?"":Y_.getPtId(e)}H6e.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=V6e.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),C=Y_.getMaxDepth(l),E=function(Qe){return Qe.data.depth-h.data.depth<C},A=o._size,L=l.domain,_=A.w*(L.x[1]-L.x[0]),k=A.h*(L.y[1]-L.y[0]),M=_,g=l.pathbar.thickness,P=l.marker.line.width+fLt.gapWithPathbar,T=l.pathbar.visible?l.pathbar.side.indexOf("bottom")>-1?k+P:-(g+P):0,z={x0:M,x1:M,y0:T,y1:T+g},O=function(Qe,Et,er){var Ut=l.tiling.pad,Ft=function(lr){return lr-Ut<=Et.x0},bt=function(lr){return lr+Ut>=Et.x1},yt=function(lr){return lr-Ut<=Et.y0},Yt=function(lr){return lr+Ut>=Et.y1};return Qe.x0===Et.x0&&Qe.x1===Et.x1&&Qe.y0===Et.y0&&Qe.y1===Et.y1?{x0:Qe.x0,x1:Qe.x1,y0:Qe.y0,y1:Qe.y1}:{x0:Ft(Qe.x0-Ut)?0:bt(Qe.x0-Ut)?er[0]:Qe.x0,x1:Ft(Qe.x1+Ut)?0:bt(Qe.x1+Ut)?er[0]:Qe.x1,y0:yt(Qe.y0-Ut)?0:Yt(Qe.y0-Ut)?er[1]:Qe.y0,y1:yt(Qe.y1+Ut)?0:Yt(Qe.y1+Ut)?er[1]:Qe.y1}},V=null,G={},Z={},H=null,N=function(Qe,Et){return Et?G[O2(Qe)]:Z[O2(Qe)]},j=function(Qe,Et,er,Ut){if(Et)return G[O2(f)]||z;var Ft=Z[l.level]||er;return E(Qe)?O(Qe,Ft,Ut):{}};s.hasMultipleRoots&&b&&C++,l._maxDepth=C,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,oe=-k/2+A.t+A.h*(1-(L.y[1]+L.y[0])/2),_e=function(Qe){return re+Qe},Me=function(Qe){return oe+Qe},ke=Me(0),me=_e(0),ie=function(Qe){return me+Qe},Se=function(Qe){return ke+Qe};function Le(Qe,Et){return Qe+","+Et}var Ae=ie(0),De=function(Qe){Qe.x=Math.max(Ae,Qe.x)},Pe=l.pathbar.edgeshape,ge=function(Qe){var Et=ie(Math.max(Math.min(Qe.x0,Qe.x0),0)),er=ie(Math.min(Math.max(Qe.x1,Qe.x1),M)),Ut=Se(Qe.y0),Ft=Se(Qe.y1),bt=g/2,yt={},Yt={};yt.x=Et,Yt.x=er,yt.y=Yt.y=(Ut+Ft)/2;var lr={x:Et,y:Ut},Tr={x:er,y:Ut},Rr={x:er,y:Ft},ei={x:Et,y:Ft};return Pe===">"?(lr.x-=bt,Tr.x-=bt,Rr.x-=bt,ei.x-=bt):Pe==="/"?(Rr.x-=bt,ei.x-=bt,yt.x-=bt/2,Yt.x-=bt/2):Pe==="\\"?(lr.x-=bt,Tr.x-=bt,yt.x-=bt/2,Yt.x-=bt/2):Pe==="<"&&(yt.x-=bt,Yt.x-=bt),De(lr),De(ei),De(yt),De(Tr),De(Rr),De(Yt),"M"+Le(lr.x,lr.y)+"L"+Le(Tr.x,Tr.y)+"L"+Le(Yt.x,Yt.y)+"L"+Le(Rr.x,Rr.y)+"L"+Le(ei.x,ei.y)+"L"+Le(yt.x,yt.y)+"Z"},Fe=l[c?"tiling":"marker"].pad,ce=function(Qe){return l.textposition.indexOf(Qe)!==-1},Ze=ce("top"),ct=ce("left"),pt=ce("right"),Wt=ce("bottom"),st=function(Qe){var Et=_e(Qe.x0),er=_e(Qe.x1),Ut=Me(Qe.y0),Ft=Me(Qe.y1),bt=er-Et,yt=Ft-Ut;if(!bt||!yt)return"";var Yt=l.marker.cornerradius||0,lr=Math.min(Yt,bt/2,yt/2);lr&&Qe.data&&Qe.data.data&&Qe.data.data.label&&(Ze&&(lr=Math.min(lr,Fe.t)),ct&&(lr=Math.min(lr,Fe.l)),pt&&(lr=Math.min(lr,Fe.r)),Wt&&(lr=Math.min(lr,Fe.b)));var Tr=function(Rr,ei){return lr?"a"+Le(lr,lr)+" 0 0 1 "+Le(Rr,ei):""};return"M"+Le(Et,Ut+lr)+Tr(lr,-lr)+"L"+Le(er-lr,Ut)+Tr(lr,lr)+"L"+Le(er,Ft-lr)+Tr(-lr,lr)+"L"+Le(Et+lr,Ft)+Tr(-lr,-lr)+"Z"},lt=function(Qe,Et){var er=Qe.x0,Ut=Qe.x1,Ft=Qe.y0,bt=Qe.y1,yt=Qe.textBB,Yt=Ze||Et.isHeader&&!Wt,lr=Yt?"start":Wt?"end":"middle",Tr=ce("right"),Rr=ce("left")||Et.onPathbar,ei=Rr?-1:Tr?1:0;if(Et.isHeader){if(er+=(c?Fe:Fe.l)-G6e,Ut-=(c?Fe:Fe.r)-G6e,er>=Ut){var Wr=(er+Ut)/2;er=Wr,Ut=Wr}var Ur;Wt?(Ur=bt-(c?Fe:Fe.b),Ft<Ur&&Ur<bt&&(Ft=Ur)):(Ur=Ft+(c?Fe:Fe.t),Ft<Ur&&Ur<bt&&(bt=Ur))}var dt=uLt(er,Ut,Ft,bt,yt,{isHorizontal:!1,constrained:!0,angle:0,anchor:lr,leftToRight:ei});return dt.fontSize=Et.fontSize,dt.targetX=_e(dt.targetX),dt.targetY=Me(dt.targetY),isNaN(dt.targetX)||isNaN(dt.targetY)?{}:(er!==Ut&&Ft!==bt&&KW(l.type,dt,o),{scale:dt.scale,rotate:dt.rotate,textX:dt.textX,textY:dt.textY,anchorX:dt.anchorX,anchorY:dt.anchorY,targetX:dt.targetX,targetY:dt.targetY})},Gt=function(Qe,Et){for(var er,Ut=0,Ft=Qe;!er&&Ut<C;)Ut++,Ft=Ft.parent,Ft?er=N(Ft,Et):Ut=C;return er||{}},Nt=function(Qe,Et,er,Ut){var Ft=N(Qe,Et),bt;if(Et)bt=z;else{var yt=N(h,Et);yt?bt=O(Qe,yt,Ut):bt={}}return YW(Ft,bt)},$t=function(Qe,Et,er,Ut,Ft){var bt=N(Qe,Et),yt;if(bt)yt=bt;else if(Et)yt=z;else if(V)if(Qe.parent){var Yt=H||er;Yt&&!Et?yt=O(Qe,Yt,Ut):(yt={},jE.extendFlat(yt,Gt(Qe,Et)))}else yt=jE.extendFlat({},Qe),c&&(Ft.orientation==="h"?Ft.flipX?yt.x0=Qe.x1:yt.x1=0:Ft.flipY?yt.y0=Qe.y1:yt.y1=0);else yt={};return YW(yt,{x0:Qe.x0,x1:Qe.x1,y0:Qe.y0,y1:Qe.y1})},sr=function(Qe,Et,er,Ut){var Ft=N(Qe,Et),bt={},yt=j(Qe,Et,er,Ut);jE.extendFlat(bt,{transform:lt({x0:yt.x0,x1:yt.x1,y0:yt.y0,y1:yt.y1,textBB:Qe.textBB,_text:Qe._text},{isHeader:Y_.isHeader(Qe,l)})}),Ft?bt=Ft:Qe.parent&&jE.extendFlat(bt,Gt(Qe,Et));var Yt=Qe.transform;return Qe.x0!==Qe.x1&&Qe.y0!==Qe.y1&&KW(l.type,Yt,o),YW(bt,{transform:{scale:Yt.scale,rotate:Yt.rotate,textX:Yt.textX,textY:Yt.textY,anchorX:Yt.anchorX,anchorY:Yt.anchorY,targetX:Yt.targetX,targetY:Yt.targetY}})},wr=function(Qe,Et,er,Ut,Ft){var bt=Ut[0],yt=Ut[1];p?Qe.exit().transition().each(function(){var Yt=V6e.select(this),lr=Yt.select("path.surface");lr.transition().attrTween("d",function(Rr){var ei=Nt(Rr,Et,er,[bt,yt]);return function(Wr){return Ft(ei(Wr))}});var Tr=Yt.select("g.slicetext");Tr.attr("opacity",0)}).remove():Qe.exit().remove()},ur=function(Qe){var Et=Qe.transform;return Qe.x0!==Qe.x1&&Qe.y0!==Qe.y1&&KW(l.type,Et,o),jE.getTextTransform({textX:Et.textX,textY:Et.textY,anchorX:Et.anchorX,anchorY:Et.anchorY,targetX:Et.targetX,targetY:Et.targetY,scale:Et.scale,rotate:Et.rotate})};p&&(v.each(function(Qe){G[O2(Qe)]={x0:Qe.x0,x1:Qe.x1,y0:Qe.y0,y1:Qe.y1},Qe.transform&&(G[O2(Qe)].transform={textX:Qe.transform.textX,textY:Qe.transform.textY,anchorX:Qe.transform.anchorX,anchorY:Qe.transform.anchorY,targetX:Qe.transform.targetX,targetY:Qe.transform.targetY,scale:Qe.transform.scale,rotate:Qe.transform.rotate})}),x.each(function(Qe){Z[O2(Qe)]={x0:Qe.x0,x1:Qe.x1,y0:Qe.y0,y1:Qe.y1},Qe.transform&&(Z[O2(Qe)].transform={textX:Qe.transform.textX,textY:Qe.transform.textY,anchorX:Qe.transform.anchorX,anchorY:Qe.transform.anchorY,targetX:Qe.transform.targetX,targetY:Qe.transform.targetY,scale:Qe.transform.scale,rotate:Qe.transform.rotate}),!V&&Y_.isEntry(Qe)&&(V=Qe)})),H=a(t,r,h,x,{width:_,height:k,viewX:_e,viewY:Me,pathSlice:st,toMoveInsideSlice:lt,prevEntry:V,makeUpdateSliceInterpolator:$t,makeUpdateTextInterpolator:sr,handleSlicesExit:wr,hasTransition:p,strTransform:ur}),l.pathbar.visible?hLt(t,r,h,v,{barDifY:T,width:M,height:g,viewX:ie,viewY:Se,pathSlice:ge,toMoveInsideSlice:lt,makeUpdateSliceInterpolator:$t,makeUpdateTextInterpolator:sr,handleSlicesExit:wr,hasTransition:p,strTransform:ur}):v.remove()}});var JW=ye((dpr,X6e)=>{"use strict";var dLt=Oa(),vLt=Ky(),pLt=_v(),gLt=pLt.clearMinTextSize,mLt=N0().resizeText,W6e=j6e();X6e.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(gLt(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&&vLt.hasTransition(n)){i&&(f=i());var d=dLt.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){W6e(t,v,this,n,s)})})}else c.each(function(v){W6e(t,v,this,n,s)}),l.uniformtext.mode&&mLt(t,u.selectAll(".trace"),o);h&&c.exit().remove()}});var $6e=ye((vpr,J6e)=>{"use strict";var Z6e=Oa(),GD=Dr(),Y6e=So(),yLt=iu(),_Lt=jW(),K6e=UD().styleOne,$W=F2(),K_=Ky(),xLt=GE(),bLt=BD().formatSliceLabel,QW=!1;J6e.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,C={},E=t._context.staticPlot,A=t._fullLayout,L=r[0],_=L.trace,k=_.textposition.indexOf("left")!==-1,M=_.textposition.indexOf("right")!==-1,g=_.textposition.indexOf("bottom")!==-1,P=!g&&!_.marker.pad.t||g&&!_.marker.pad.b,T=_Lt(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}}),z=T.descendants(),O=1/0,V=-1/0;z.forEach(function(j){var re=j.depth;re>=_._maxDepth?(j.x0=j.x1=(j.x0+j.x1)/2,j.y0=j.y1=(j.y0+j.y1)/2):(O=Math.min(O,re),V=Math.max(V,re))}),i=i.data(z,K_.getPtId),_._maxVisibleLayers=isFinite(V)?V-O+1:0,i.enter().append("g").classed("slice",!0),v(i,QW,C,[o,s],c),i.order();var G=null;if(d&&p){var Z=K_.getPtId(p);i.each(function(j){G===null&&K_.getPtId(j)===Z&&(G={x0:j.x0,x1:j.x1,y0:j.y0,y1:j.y1})})}var H=function(){return G||{x0:0,x1:o,y0:0,y1:s}},N=i;return d&&(N=N.transition().each("end",function(){var j=Z6e.select(this);K_.setSliceCursor(j,t,{hideOnRoot:!0,hideOnLeaves:!1,isTransitioning:!1})})),N.each(function(j){var re=K_.isHeader(j,_);j._x0=l(j.x0),j._x1=l(j.x1),j._y0=u(j.y0),j._y1=u(j.y1),j._hoverX=l(j.x1-_.marker.pad.r),j._hoverY=u(g?j.y1-_.marker.pad.b/2:j.y0+_.marker.pad.t/2);var oe=Z6e.select(this),_e=GD.ensureSingle(oe,"path","surface",function(Le){Le.style("pointer-events",E?"none":"all")});d?_e.transition().attrTween("d",function(Le){var Ae=x(Le,QW,H(),[o,s]);return function(De){return c(Ae(De))}}):_e.attr("d",c),oe.call(xLt,n,t,r,{styleOne:K6e,eventDataKeys:$W.eventDataKeys,transitionTime:$W.CLICK_TRANSITION_TIME,transitionEasing:$W.CLICK_TRANSITION_EASING}).call(K_.setSliceCursor,t,{isTransitioning:t._transitioning}),_e.call(K6e,j,_,t,{hovered:!1}),j.x0===j.x1||j.y0===j.y1?j._text="":re?j._text=P?"":K_.getPtLabel(j)||"":j._text=bLt(j,n,_,r,A)||"";var Me=GD.ensureSingle(oe,"g","slicetext"),ke=GD.ensureSingle(Me,"text","",function(Le){Le.attr("data-notex",1)}),me=GD.ensureUniformFontSize(t,K_.determineTextFont(_,j,A.font)),ie=j._text||" ",Se=re&&ie.indexOf("<br>")===-1;ke.text(ie).classed("slicetext",!0).attr("text-anchor",M?"end":k||Se?"start":"middle").call(Y6e.font,me).call(yLt.convertToTspans,t),j.textBB=Y6e.bBox(ke.node()),j.transform=f(j,{fontSize:me.size,isHeader:re}),j.transform.fontSize=me.size,d?ke.transition().attrTween("transform",function(Le){var Ae=b(Le,QW,H(),[o,s]);return function(De){return h(Ae(De))}}):ke.attr("transform",h(j))}),G}});var eLe=ye((ppr,Q6e)=>{"use strict";var wLt=JW(),TLt=$6e();Q6e.exports=function(t,r,n,i){return wLt(t,r,n,i,{type:"treemap",drawDescendants:TLt})}});var rLe=ye((gpr,tLe)=>{"use strict";tLe.exports={moduleType:"trace",name:"treemap",basePlotModule:_6e(),categories:[],animatable:!0,attributes:ND(),layoutAttributes:UW(),supplyDefaults:E6e(),supplyLayoutDefaults:k6e(),calc:GW().calc,crossTraceCalc:GW().crossTraceCalc,plot:eLe(),style:UD().style,colorbar:$d(),meta:{}}});var nLe=ye((mpr,iLe)=>{"use strict";iLe.exports=rLe()});var oLe=ye(FA=>{"use strict";var aLe=Mc();FA.name="icicle";FA.plot=function(e,t,r,n){aLe.plotBasePlot(FA.name,e,t,r,n)};FA.clean=function(e,t,r,n){aLe.cleanBasePlot(FA.name,e,t,r,n)}});var eX=ye((_pr,lLe)=>{"use strict";var ALt=Qo().hovertemplateAttrs,SLt=Qo().texttemplateAttrs,MLt=Tu(),ELt=kc().attributes,WE=A2(),o0=kE(),HD=ND(),sLe=F2(),CLt=Ao().extendFlat,kLt=Pd().pattern;lLe.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:HD.tiling.flip,pad:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"calc"},marker:CLt({colors:o0.marker.colors,line:o0.marker.line,pattern:kLt,editType:"calc"},MLt("marker",{colorAttr:"colors",anim:!1})),leaf:o0.leaf,pathbar:HD.pathbar,text:WE.text,textinfo:o0.textinfo,texttemplate:SLt({editType:"plot"},{keys:sLe.eventDataKeys.concat(["label","value"])}),hovertext:WE.hovertext,hoverinfo:o0.hoverinfo,hovertemplate:ALt({},{keys:sLe.eventDataKeys}),textfont:WE.textfont,insidetextfont:WE.insidetextfont,outsidetextfont:HD.outsidetextfont,textposition:HD.textposition,sort:WE.sort,root:o0.root,domain:ELt({name:"icicle",trace:!0,editType:"calc"})}});var tX=ye((xpr,uLe)=>{"use strict";uLe.exports={iciclecolorway:{valType:"colorlist",editType:"calc"},extendiciclecolors:{valType:"boolean",dflt:!0,editType:"calc"}}});var dLe=ye((bpr,hLe)=>{"use strict";var cLe=Dr(),LLt=eX(),PLt=Ca(),ILt=kc().defaults,RLt=r0().handleText,DLt=Qb().TEXTPAD,FLt=S2().handleMarkerDefaults,fLe=tc(),zLt=fLe.hasColorscale,OLt=fLe.handleDefaults;hLe.exports=function(t,r,n,i){function a(d,v){return cLe.coerce(t,r,LLt,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",cLe.isArrayOrTypedArray(u)?"text+label":"label"),a("hovertext"),a("hovertemplate");var c=a("pathbar.visible"),f="auto";RLt(t,r,i,a,f,{hasPathbar:c,moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),a("textposition"),FLt(t,r,i,a);var h=r._hasColorscale=zLt(t,"marker","colors")||(t.marker||{}).coloraxis;h&&OLt(t,r,i,a,{prefix:"marker.",cLetter:"c"}),a("leaf.opacity",h?1:.7),r._hovered={marker:{line:{width:2,color:PLt.contrast(i.paper_bgcolor)}}},c&&(a("pathbar.thickness",r.pathbar.textfont.size+2*DLt),a("pathbar.side"),a("pathbar.edgeshape")),a("sort"),a("root.color"),ILt(r,i,a),r._length=null}});var pLe=ye((wpr,vLe)=>{"use strict";var qLt=Dr(),BLt=tX();vLe.exports=function(t,r){function n(i,a){return qLt.coerce(t,r,BLt,i,a)}n("iciclecolorway",r.colorway),n("extendiciclecolors")}});var iX=ye(rX=>{"use strict";var gLe=IE();rX.calc=function(e,t){return gLe.calc(e,t)};rX.crossTraceCalc=function(e){return gLe._runCrossTraceCalc("icicle",e)}});var yLe=ye((Apr,mLe)=>{"use strict";var NLt=LE(),ULt=HW();mLe.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=NLt.partition().padding(n.pad.inner).size(o?[r[1],l]:[r[0],u])(t);return(o||i||a)&&ULt(c,r,{swapXY:o,flipX:i,flipY:a}),c}});var nX=ye((Spr,TLe)=>{"use strict";var _Le=Oa(),xLe=Ca(),bLe=Dr(),VLt=_v().resizeText,GLt=OD();function HLt(e){var t=e._fullLayout._iciclelayer.selectAll(".trace");VLt(e,t,"icicle"),t.each(function(r){var n=_Le.select(this),i=r[0],a=i.trace;n.style("opacity",a.opacity),n.selectAll("path.surface").each(function(o){_Le.select(this).call(wLe,o,a,e)})})}function wLe(e,t,r,n){var i=t.data.data,a=!t.children,o=i.i,s=bLe.castOption(r,o,"marker.line.color")||xLe.defaultLine,l=bLe.castOption(r,o,"marker.line.width")||0;e.call(GLt,t,r,n).style("stroke-width",l).call(xLe.stroke,s).style("opacity",a?r.leaf.opacity:null)}TLe.exports={style:HLt,styleOne:wLe}});var CLe=ye((Mpr,ELe)=>{"use strict";var ALe=Oa(),jD=Dr(),SLe=So(),jLt=iu(),WLt=yLe(),MLe=nX().styleOne,aX=F2(),zA=Ky(),XLt=GE(),ZLt=BD().formatSliceLabel,oX=!1;ELe.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,C={},E=t._context.staticPlot,A=t._fullLayout,L=r[0],_=L.trace,k=_.textposition.indexOf("left")!==-1,M=_.textposition.indexOf("right")!==-1,g=_.textposition.indexOf("bottom")!==-1,P=WLt(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(),z=1/0,O=-1/0;T.forEach(function(N){var j=N.depth;j>=_._maxDepth?(N.x0=N.x1=(N.x0+N.x1)/2,N.y0=N.y1=(N.y0+N.y1)/2):(z=Math.min(z,j),O=Math.max(O,j))}),i=i.data(T,zA.getPtId),_._maxVisibleLayers=isFinite(O)?O-z+1:0,i.enter().append("g").classed("slice",!0),v(i,oX,C,[o,s],c),i.order();var V=null;if(d&&p){var G=zA.getPtId(p);i.each(function(N){V===null&&zA.getPtId(N)===G&&(V={x0:N.x0,x1:N.x1,y0:N.y0,y1:N.y1})})}var Z=function(){return V||{x0:0,x1:o,y0:0,y1:s}},H=i;return d&&(H=H.transition().each("end",function(){var N=ALe.select(this);zA.setSliceCursor(N,t,{hideOnRoot:!0,hideOnLeaves:!1,isTransitioning:!1})})),H.each(function(N){N._x0=l(N.x0),N._x1=l(N.x1),N._y0=u(N.y0),N._y1=u(N.y1),N._hoverX=l(N.x1-_.tiling.pad),N._hoverY=u(g?N.y1-_.tiling.pad/2:N.y0+_.tiling.pad/2);var j=ALe.select(this),re=jD.ensureSingle(j,"path","surface",function(ke){ke.style("pointer-events",E?"none":"all")});d?re.transition().attrTween("d",function(ke){var me=x(ke,oX,Z(),[o,s],{orientation:_.tiling.orientation,flipX:_.tiling.flip.indexOf("x")>-1,flipY:_.tiling.flip.indexOf("y")>-1});return function(ie){return c(me(ie))}}):re.attr("d",c),j.call(XLt,n,t,r,{styleOne:MLe,eventDataKeys:aX.eventDataKeys,transitionTime:aX.CLICK_TRANSITION_TIME,transitionEasing:aX.CLICK_TRANSITION_EASING}).call(zA.setSliceCursor,t,{isTransitioning:t._transitioning}),re.call(MLe,N,_,t,{hovered:!1}),N.x0===N.x1||N.y0===N.y1?N._text="":N._text=ZLt(N,n,_,r,A)||"";var oe=jD.ensureSingle(j,"g","slicetext"),_e=jD.ensureSingle(oe,"text","",function(ke){ke.attr("data-notex",1)}),Me=jD.ensureUniformFontSize(t,zA.determineTextFont(_,N,A.font));_e.text(N._text||" ").classed("slicetext",!0).attr("text-anchor",M?"end":k?"start":"middle").call(SLe.font,Me).call(jLt.convertToTspans,t),N.textBB=SLe.bBox(_e.node()),N.transform=f(N,{fontSize:Me.size}),N.transform.fontSize=Me.size,d?_e.transition().attrTween("transform",function(ke){var me=b(ke,oX,Z(),[o,s]);return function(ie){return h(me(ie))}}):_e.attr("transform",h(N))}),V}});var LLe=ye((Epr,kLe)=>{"use strict";var YLt=JW(),KLt=CLe();kLe.exports=function(t,r,n,i){return YLt(t,r,n,i,{type:"icicle",drawDescendants:KLt})}});var ILe=ye((Cpr,PLe)=>{"use strict";PLe.exports={moduleType:"trace",name:"icicle",basePlotModule:oLe(),categories:[],animatable:!0,attributes:eX(),layoutAttributes:tX(),supplyDefaults:dLe(),supplyLayoutDefaults:pLe(),calc:iX().calc,crossTraceCalc:iX().crossTraceCalc,plot:LLe(),style:nX().style,colorbar:$d(),meta:{}}});var DLe=ye((kpr,RLe)=>{"use strict";RLe.exports=ILe()});var zLe=ye(OA=>{"use strict";var FLe=Mc();OA.name="funnelarea";OA.plot=function(e,t,r,n){FLe.plotBasePlot(OA.name,e,t,r,n)};OA.clean=function(e,t,r,n){FLe.cleanBasePlot(OA.name,e,t,r,n)}});var sX=ye((Ppr,OLe)=>{"use strict";var iv=A2(),JLt=Vl(),$Lt=kc().attributes,QLt=Qo().hovertemplateAttrs,ePt=Qo().texttemplateAttrs,q2=Ao().extendFlat;OLe.exports={labels:iv.labels,label0:iv.label0,dlabel:iv.dlabel,values:iv.values,marker:{colors:iv.marker.colors,line:{color:q2({},iv.marker.line.color,{dflt:null}),width:q2({},iv.marker.line.width,{dflt:1}),editType:"calc"},pattern:iv.marker.pattern,editType:"calc"},text:iv.text,hovertext:iv.hovertext,scalegroup:q2({},iv.scalegroup,{}),textinfo:q2({},iv.textinfo,{flags:["label","text","value","percent"]}),texttemplate:ePt({editType:"plot"},{keys:["label","color","value","text","percent"]}),hoverinfo:q2({},JLt.hoverinfo,{flags:["label","text","value","percent","name"]}),hovertemplate:QLt({},{keys:["label","color","value","text","percent"]}),textposition:q2({},iv.textposition,{values:["inside","none"],dflt:"inside"}),textfont:iv.textfont,insidetextfont:iv.insidetextfont,title:{text:iv.title.text,font:iv.title.font,position:q2({},iv.title.position,{values:["top left","top center","top right"],dflt:"top center"}),editType:"plot"},domain:$Lt({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 lX=ye((Ipr,qLe)=>{"use strict";var tPt=hD().hiddenlabels;qLe.exports={hiddenlabels:tPt,funnelareacolorway:{valType:"colorlist",editType:"calc"},extendfunnelareacolors:{valType:"boolean",dflt:!0,editType:"calc"}}});var ULe=ye((Rpr,NLe)=>{"use strict";var BLe=Dr(),rPt=sX(),iPt=kc().defaults,nPt=r0().handleText,aPt=S2().handleLabelsAndValues,oPt=S2().handleMarkerDefaults;NLe.exports=function(t,r,n,i){function a(x,b){return BLe.coerce(t,r,rPt,x,b)}var o=a("labels"),s=a("values"),l=aPt(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,oPt(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");nPt(t,r,i,a,d,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1})}else h==="none"&&a("textposition","none");iPt(r,i,a);var v=a("title.text");v&&(a("title.position"),BLe.coerceFont(a,"title.font",i.font)),a("aspectratio"),a("baseratio")}});var GLe=ye((Dpr,VLe)=>{"use strict";var sPt=Dr(),lPt=lX();VLe.exports=function(t,r){function n(i,a){return sPt.coerce(t,r,lPt,i,a)}n("hiddenlabels"),n("funnelareacolorway",r.colorway),n("extendfunnelareacolors")}});var uX=ye((Fpr,jLe)=>{"use strict";var HLe=_A();function uPt(e,t){return HLe.calc(e,t)}function cPt(e){HLe.crossTraceCalc(e,{type:"funnelarea"})}jLe.exports={calc:uPt,crossTraceCalc:cPt}});var KLe=ye((zpr,YLe)=>{"use strict";var B2=Oa(),cX=So(),J_=Dr(),fPt=J_.strScale,WLe=J_.strTranslate,XLe=iu(),hPt=i2(),dPt=hPt.toMoveInsideBar,ZLe=_v(),vPt=ZLe.recordMinTextSize,pPt=ZLe.clearMinTextSize,gPt=u_(),qA=gD(),mPt=qA.attachFxHandlers,yPt=qA.determineInsideTextFont,_Pt=qA.layoutAreas,xPt=qA.prerenderTitles,bPt=qA.positionTitleOutside,wPt=qA.formatSliceLabel;YLe.exports=function(t,r){var n=t._context.staticPlot,i=t._fullLayout;pPt("funnelarea",i),xPt(r,t),_Pt(r,i._size),J_.makeTraceGroups(i._funnelarealayer,r,"trace").each(function(a){var o=B2.select(this),s=a[0],l=s.trace;APt(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(mPt,t,a);var p="M"+(d+f.TR[0])+","+(v+f.TR[1])+fX(f.TR,f.BR)+fX(f.BR,f.BL)+fX(f.BL,f.TL)+"Z";b.attr("d",p),wPt(t,f,s);var C=gPt.castOption(l.textposition,f.pts),E=x.selectAll("g.slicetext").data(f.text&&C!=="none"?[0]:[]);E.enter().append("g").classed("slicetext",!0),E.exit().remove(),E.each(function(){var A=J_.ensureSingle(B2.select(this),"text","",function(z){z.attr("data-notex",1)}),L=J_.ensureUniformFontSize(t,yPt(l,f,i.font));A.text(f.text).attr({class:"slicetext",transform:"","text-anchor":"middle"}).call(cX.font,L).call(XLe.convertToTspans,t);var _=cX.bBox(A.node()),k,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,k=dPt(M,g,P,T,_,{isHorizontal:!0,constrained:!0,angle:0,anchor:"middle"}),k.fontSize=L.size,vPt(l.type,k,i),a[h].transform=k,J_.setTransormAndDisplay(A,k)})});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(cX.font,l.title.font).call(XLe.convertToTspans,t);var d=bPt(s,i._size);f.attr("transform",WLe(d.x,d.y)+fPt(Math.min(1,d.scale))+WLe(d.tx,d.ty))})})})};function fX(e,t){var r=t[0]-e[0],n=t[1]-e[1];return"l"+r+","+n}function TPt(e,t){return[.5*(e[0]+t[0]),.5*(e[1]+t[1])]}function APt(e){if(!e.length)return;var t=e[0],r=t.trace,n=r.aspectratio,i=r.baseratio;i>.999&&(i=.999);var a=Math.pow(i,2),o=t.vTotal,s=o*a/(1-a),l=o,u=s/o;function c(){var O=Math.sqrt(u);return{x:O,y:-O}}function f(){var O=c();return[O.x,O.y]}var h,d=[];d.push(f());var v,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,C=-1/0;for(v=0;v<d.length;v++)h=d[v],p=Math.min(p,h[1]),C=Math.max(C,h[1]);for(v=0;v<d.length;v++)d[v][1]-=(C+p)/2;var E=d[d.length-1][0],A=t.r,L=(C-p)/2,_=A/E,k=A/L*n;for(t.r=k*L,v=0;v<d.length;v++)d[v][0]*=_,d[v][1]*=k;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],z=d[P][1];x.TL=[-T,z],x.TR=[T,z],x.BL=M,x.BR=g,x.pxmid=TPt(x.TR,x.BR),M=x.TL,g=x.TR}}});var QLe=ye((Opr,$Le)=>{"use strict";var JLe=Oa(),SPt=F3(),MPt=_v().resizeText;$Le.exports=function(t){var r=t._fullLayout._funnelarealayer.selectAll(".trace");MPt(t,r,"funnelarea"),r.each(function(n){var i=n[0],a=i.trace,o=JLe.select(this);o.style({opacity:a.opacity}),o.selectAll("path.surface").each(function(s){JLe.select(this).call(SPt,s,a,t)})})}});var tPe=ye((qpr,ePe)=>{"use strict";ePe.exports={moduleType:"trace",name:"funnelarea",basePlotModule:zLe(),categories:["pie-like","funnelarea","showLegend"],attributes:sX(),layoutAttributes:lX(),supplyDefaults:ULe(),supplyLayoutDefaults:GLe(),calc:uX().calc,crossTraceCalc:uX().crossTraceCalc,plot:KLe(),style:QLe(),styleOne:F3(),meta:{}}});var iPe=ye((Bpr,rPe)=>{"use strict";rPe.exports=tPe()});var Od=ye((Npr,nPe)=>{(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(Ie,xe){if(!(Ie instanceof xe))throw new TypeError("Cannot call a class as a function")}function u(Ie,xe){for(var Ce=0;Ce<xe.length;Ce++){var vt=xe[Ce];vt.enumerable=vt.enumerable||!1,vt.configurable=!0,"value"in vt&&(vt.writable=!0),Object.defineProperty(Ie,f(vt.key),vt)}}function c(Ie,xe,Ce){return xe&&u(Ie.prototype,xe),Ce&&u(Ie,Ce),Object.defineProperty(Ie,"prototype",{writable:!1}),Ie}function f(Ie){var xe=h(Ie,"string");return A(xe)=="symbol"?xe:xe+""}function h(Ie,xe){if(A(Ie)!="object"||!Ie)return Ie;var Ce=Ie[Symbol.toPrimitive];if(Ce!==void 0){var vt=Ce.call(Ie,xe||"default");if(A(vt)!="object")return vt;throw new TypeError("@@toPrimitive must return a primitive value.")}return(xe==="string"?String:Number)(Ie)}function d(Ie,xe,Ce){return xe=p(xe),v(Ie,b()?Reflect.construct(xe,Ce||[],p(Ie).constructor):xe.apply(Ie,Ce))}function v(Ie,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(Ie)}function x(Ie){if(Ie===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return Ie}function b(){try{var Ie=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(xe){}return(b=function(){return!!Ie})()}function p(Ie){return p=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(xe){return xe.__proto__||Object.getPrototypeOf(xe)},p(Ie)}function C(Ie,xe){if(typeof xe!="function"&&xe!==null)throw new TypeError("Super expression must either be null or a function");Ie.prototype=Object.create(xe&&xe.prototype,{constructor:{value:Ie,writable:!0,configurable:!0}}),Object.defineProperty(Ie,"prototype",{writable:!1}),xe&&E(Ie,xe)}function E(Ie,xe){return E=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(Ce,vt){return Ce.__proto__=vt,Ce},E(Ie,xe)}function A(Ie){"@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(Ie)}var L=o(7507),_=o(3778),k=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 Ie=new Uint8Array(1),xe={foo:function(){return 42}};return Object.setPrototypeOf(xe,Uint8Array.prototype),Object.setPrototypeOf(Ie,xe),Ie.foo()===42}catch(Ce){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(Ie){if(Ie>M)throw new RangeError('The value "'+Ie+'" is invalid for option "size"');var xe=new Uint8Array(Ie);return Object.setPrototypeOf(xe,T.prototype),xe}function T(Ie,xe,Ce){if(typeof Ie=="number"){if(typeof xe=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return G(Ie)}return z(Ie,xe,Ce)}T.poolSize=8192;function z(Ie,xe,Ce){if(typeof Ie=="string")return Z(Ie,xe);if(ArrayBuffer.isView(Ie))return N(Ie);if(Ie==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+A(Ie));if(Ge(Ie,ArrayBuffer)||Ie&&Ge(Ie.buffer,ArrayBuffer)||typeof SharedArrayBuffer!="undefined"&&(Ge(Ie,SharedArrayBuffer)||Ie&&Ge(Ie.buffer,SharedArrayBuffer)))return j(Ie,xe,Ce);if(typeof Ie=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');var vt=Ie.valueOf&&Ie.valueOf();if(vt!=null&&vt!==Ie)return T.from(vt,xe,Ce);var nr=re(Ie);if(nr)return nr;if(typeof Symbol!="undefined"&&Symbol.toPrimitive!=null&&typeof Ie[Symbol.toPrimitive]=="function")return T.from(Ie[Symbol.toPrimitive]("string"),xe,Ce);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+A(Ie))}T.from=function(Ie,xe,Ce){return z(Ie,xe,Ce)},Object.setPrototypeOf(T.prototype,Uint8Array.prototype),Object.setPrototypeOf(T,Uint8Array);function O(Ie){if(typeof Ie!="number")throw new TypeError('"size" argument must be of type number');if(Ie<0)throw new RangeError('The value "'+Ie+'" is invalid for option "size"')}function V(Ie,xe,Ce){return O(Ie),Ie<=0?P(Ie):xe!==void 0?typeof Ce=="string"?P(Ie).fill(xe,Ce):P(Ie).fill(xe):P(Ie)}T.alloc=function(Ie,xe,Ce){return V(Ie,xe,Ce)};function G(Ie){return O(Ie),P(Ie<0?0:oe(Ie)|0)}T.allocUnsafe=function(Ie){return G(Ie)},T.allocUnsafeSlow=function(Ie){return G(Ie)};function Z(Ie,xe){if((typeof xe!="string"||xe==="")&&(xe="utf8"),!T.isEncoding(xe))throw new TypeError("Unknown encoding: "+xe);var Ce=Me(Ie,xe)|0,vt=P(Ce),nr=vt.write(Ie,xe);return nr!==Ce&&(vt=vt.slice(0,nr)),vt}function H(Ie){for(var xe=Ie.length<0?0:oe(Ie.length)|0,Ce=P(xe),vt=0;vt<xe;vt+=1)Ce[vt]=Ie[vt]&255;return Ce}function N(Ie){if(Ge(Ie,Uint8Array)){var xe=new Uint8Array(Ie);return j(xe.buffer,xe.byteOffset,xe.byteLength)}return H(Ie)}function j(Ie,xe,Ce){if(xe<0||Ie.byteLength<xe)throw new RangeError('"offset" is outside of buffer bounds');if(Ie.byteLength<xe+(Ce||0))throw new RangeError('"length" is outside of buffer bounds');var vt;return xe===void 0&&Ce===void 0?vt=new Uint8Array(Ie):Ce===void 0?vt=new Uint8Array(Ie,xe):vt=new Uint8Array(Ie,xe,Ce),Object.setPrototypeOf(vt,T.prototype),vt}function re(Ie){if(T.isBuffer(Ie)){var xe=oe(Ie.length)|0,Ce=P(xe);return Ce.length===0||Ie.copy(Ce,0,0,xe),Ce}if(Ie.length!==void 0)return typeof Ie.length!="number"||Je(Ie.length)?P(0):H(Ie);if(Ie.type==="Buffer"&&Array.isArray(Ie.data))return H(Ie.data)}function oe(Ie){if(Ie>=M)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+M.toString(16)+" bytes");return Ie|0}function _e(Ie){return+Ie!=Ie&&(Ie=0),T.alloc(+Ie)}T.isBuffer=function(xe){return xe!=null&&xe._isBuffer===!0&&xe!==T.prototype},T.compare=function(xe,Ce){if(Ge(xe,Uint8Array)&&(xe=T.from(xe,xe.offset,xe.byteLength)),Ge(Ce,Uint8Array)&&(Ce=T.from(Ce,Ce.offset,Ce.byteLength)),!T.isBuffer(xe)||!T.isBuffer(Ce))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(xe===Ce)return 0;for(var vt=xe.length,nr=Ce.length,ir=0,pr=Math.min(vt,nr);ir<pr;++ir)if(xe[ir]!==Ce[ir]){vt=xe[ir],nr=Ce[ir];break}return vt<nr?-1:nr<vt?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,Ce){if(!Array.isArray(xe))throw new TypeError('"list" argument must be an Array of Buffers');if(xe.length===0)return T.alloc(0);var vt;if(Ce===void 0)for(Ce=0,vt=0;vt<xe.length;++vt)Ce+=xe[vt].length;var nr=T.allocUnsafe(Ce),ir=0;for(vt=0;vt<xe.length;++vt){var pr=xe[vt];if(Ge(pr,Uint8Array))ir+pr.length>nr.length?(T.isBuffer(pr)||(pr=T.from(pr)),pr.copy(nr,ir)):Uint8Array.prototype.set.call(nr,pr,ir);else if(T.isBuffer(pr))pr.copy(nr,ir);else throw new TypeError('"list" argument must be an Array of Buffers');ir+=pr.length}return nr};function Me(Ie,xe){if(T.isBuffer(Ie))return Ie.length;if(ArrayBuffer.isView(Ie)||Ge(Ie,ArrayBuffer))return Ie.byteLength;if(typeof Ie!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+A(Ie));var Ce=Ie.length,vt=arguments.length>2&&arguments[2]===!0;if(!vt&&Ce===0)return 0;for(var nr=!1;;)switch(xe){case"ascii":case"latin1":case"binary":return Ce;case"utf8":case"utf-8":return Rr(Ie).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return Ce*2;case"hex":return Ce>>>1;case"base64":return Ur(Ie).length;default:if(nr)return vt?-1:Rr(Ie).length;xe=(""+xe).toLowerCase(),nr=!0}}T.byteLength=Me;function ke(Ie,xe,Ce){var vt=!1;if((xe===void 0||xe<0)&&(xe=0),xe>this.length||((Ce===void 0||Ce>this.length)&&(Ce=this.length),Ce<=0)||(Ce>>>=0,xe>>>=0,Ce<=xe))return"";for(Ie||(Ie="utf8");;)switch(Ie){case"hex":return st(this,xe,Ce);case"utf8":case"utf-8":return ce(this,xe,Ce);case"ascii":return pt(this,xe,Ce);case"latin1":case"binary":return Wt(this,xe,Ce);case"base64":return Fe(this,xe,Ce);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return lt(this,xe,Ce);default:if(vt)throw new TypeError("Unknown encoding: "+Ie);Ie=(Ie+"").toLowerCase(),vt=!0}}T.prototype._isBuffer=!0;function me(Ie,xe,Ce){var vt=Ie[xe];Ie[xe]=Ie[Ce],Ie[Ce]=vt}T.prototype.swap16=function(){var xe=this.length;if(xe%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var Ce=0;Ce<xe;Ce+=2)me(this,Ce,Ce+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 Ce=0;Ce<xe;Ce+=4)me(this,Ce,Ce+3),me(this,Ce+1,Ce+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 Ce=0;Ce<xe;Ce+=8)me(this,Ce,Ce+7),me(this,Ce+1,Ce+6),me(this,Ce+2,Ce+5),me(this,Ce+3,Ce+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="",Ce=a.IS;return xe=this.toString("hex",0,Ce).replace(/(.{2})/g,"$1 ").trim(),this.length>Ce&&(xe+=" ... "),"<Buffer "+xe+">"},k&&(T.prototype[k]=T.prototype.inspect),T.prototype.compare=function(xe,Ce,vt,nr,ir){if(Ge(xe,Uint8Array)&&(xe=T.from(xe,xe.offset,xe.byteLength)),!T.isBuffer(xe))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+A(xe));if(Ce===void 0&&(Ce=0),vt===void 0&&(vt=xe?xe.length:0),nr===void 0&&(nr=0),ir===void 0&&(ir=this.length),Ce<0||vt>xe.length||nr<0||ir>this.length)throw new RangeError("out of range index");if(nr>=ir&&Ce>=vt)return 0;if(nr>=ir)return-1;if(Ce>=vt)return 1;if(Ce>>>=0,vt>>>=0,nr>>>=0,ir>>>=0,this===xe)return 0;for(var pr=ir-nr,oi=vt-Ce,di=Math.min(pr,oi),Jr=this.slice(nr,ir),fi=xe.slice(Ce,vt),Hi=0;Hi<di;++Hi)if(Jr[Hi]!==fi[Hi]){pr=Jr[Hi],oi=fi[Hi];break}return pr<oi?-1:oi<pr?1:0};function ie(Ie,xe,Ce,vt,nr){if(Ie.length===0)return-1;if(typeof Ce=="string"?(vt=Ce,Ce=0):Ce>2147483647?Ce=2147483647:Ce<-2147483648&&(Ce=-2147483648),Ce=+Ce,Je(Ce)&&(Ce=nr?0:Ie.length-1),Ce<0&&(Ce=Ie.length+Ce),Ce>=Ie.length){if(nr)return-1;Ce=Ie.length-1}else if(Ce<0)if(nr)Ce=0;else return-1;if(typeof xe=="string"&&(xe=T.from(xe,vt)),T.isBuffer(xe))return xe.length===0?-1:Se(Ie,xe,Ce,vt,nr);if(typeof xe=="number")return xe=xe&255,typeof Uint8Array.prototype.indexOf=="function"?nr?Uint8Array.prototype.indexOf.call(Ie,xe,Ce):Uint8Array.prototype.lastIndexOf.call(Ie,xe,Ce):Se(Ie,[xe],Ce,vt,nr);throw new TypeError("val must be string, number or Buffer")}function Se(Ie,xe,Ce,vt,nr){var ir=1,pr=Ie.length,oi=xe.length;if(vt!==void 0&&(vt=String(vt).toLowerCase(),vt==="ucs2"||vt==="ucs-2"||vt==="utf16le"||vt==="utf-16le")){if(Ie.length<2||xe.length<2)return-1;ir=2,pr/=2,oi/=2,Ce/=2}function di(wn,pn){return ir===1?wn[pn]:wn.readUInt16BE(pn*ir)}var Jr;if(nr){var fi=-1;for(Jr=Ce;Jr<pr;Jr++)if(di(Ie,Jr)===di(xe,fi===-1?0:Jr-fi)){if(fi===-1&&(fi=Jr),Jr-fi+1===oi)return fi*ir}else fi!==-1&&(Jr-=Jr-fi),fi=-1}else for(Ce+oi>pr&&(Ce=pr-oi),Jr=Ce;Jr>=0;Jr--){for(var Hi=!0,Pn=0;Pn<oi;Pn++)if(di(Ie,Jr+Pn)!==di(xe,Pn)){Hi=!1;break}if(Hi)return Jr}return-1}T.prototype.includes=function(xe,Ce,vt){return this.indexOf(xe,Ce,vt)!==-1},T.prototype.indexOf=function(xe,Ce,vt){return ie(this,xe,Ce,vt,!0)},T.prototype.lastIndexOf=function(xe,Ce,vt){return ie(this,xe,Ce,vt,!1)};function Le(Ie,xe,Ce,vt){Ce=Number(Ce)||0;var nr=Ie.length-Ce;vt?(vt=Number(vt),vt>nr&&(vt=nr)):vt=nr;var ir=xe.length;vt>ir/2&&(vt=ir/2);var pr;for(pr=0;pr<vt;++pr){var oi=parseInt(xe.substr(pr*2,2),16);if(Je(oi))return pr;Ie[Ce+pr]=oi}return pr}function Ae(Ie,xe,Ce,vt){return dt(Rr(xe,Ie.length-Ce),Ie,Ce,vt)}function De(Ie,xe,Ce,vt){return dt(ei(xe),Ie,Ce,vt)}function Pe(Ie,xe,Ce,vt){return dt(Ur(xe),Ie,Ce,vt)}function ge(Ie,xe,Ce,vt){return dt(Wr(xe,Ie.length-Ce),Ie,Ce,vt)}T.prototype.write=function(xe,Ce,vt,nr){if(Ce===void 0)nr="utf8",vt=this.length,Ce=0;else if(vt===void 0&&typeof Ce=="string")nr=Ce,vt=this.length,Ce=0;else if(isFinite(Ce))Ce=Ce>>>0,isFinite(vt)?(vt=vt>>>0,nr===void 0&&(nr="utf8")):(nr=vt,vt=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");var ir=this.length-Ce;if((vt===void 0||vt>ir)&&(vt=ir),xe.length>0&&(vt<0||Ce<0)||Ce>this.length)throw new RangeError("Attempt to write outside buffer bounds");nr||(nr="utf8");for(var pr=!1;;)switch(nr){case"hex":return Le(this,xe,Ce,vt);case"utf8":case"utf-8":return Ae(this,xe,Ce,vt);case"ascii":case"latin1":case"binary":return De(this,xe,Ce,vt);case"base64":return Pe(this,xe,Ce,vt);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return ge(this,xe,Ce,vt);default:if(pr)throw new TypeError("Unknown encoding: "+nr);nr=(""+nr).toLowerCase(),pr=!0}},T.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function Fe(Ie,xe,Ce){return xe===0&&Ce===Ie.length?L.fromByteArray(Ie):L.fromByteArray(Ie.slice(xe,Ce))}function ce(Ie,xe,Ce){Ce=Math.min(Ie.length,Ce);for(var vt=[],nr=xe;nr<Ce;){var ir=Ie[nr],pr=null,oi=ir>239?4:ir>223?3:ir>191?2:1;if(nr+oi<=Ce){var di=void 0,Jr=void 0,fi=void 0,Hi=void 0;switch(oi){case 1:ir<128&&(pr=ir);break;case 2:di=Ie[nr+1],(di&192)===128&&(Hi=(ir&31)<<6|di&63,Hi>127&&(pr=Hi));break;case 3:di=Ie[nr+1],Jr=Ie[nr+2],(di&192)===128&&(Jr&192)===128&&(Hi=(ir&15)<<12|(di&63)<<6|Jr&63,Hi>2047&&(Hi<55296||Hi>57343)&&(pr=Hi));break;case 4:di=Ie[nr+1],Jr=Ie[nr+2],fi=Ie[nr+3],(di&192)===128&&(Jr&192)===128&&(fi&192)===128&&(Hi=(ir&15)<<18|(di&63)<<12|(Jr&63)<<6|fi&63,Hi>65535&&Hi<1114112&&(pr=Hi))}}pr===null?(pr=65533,oi=1):pr>65535&&(pr-=65536,vt.push(pr>>>10&1023|55296),pr=56320|pr&1023),vt.push(pr),nr+=oi}return ct(vt)}var Ze=4096;function ct(Ie){var xe=Ie.length;if(xe<=Ze)return String.fromCharCode.apply(String,Ie);for(var Ce="",vt=0;vt<xe;)Ce+=String.fromCharCode.apply(String,Ie.slice(vt,vt+=Ze));return Ce}function pt(Ie,xe,Ce){var vt="";Ce=Math.min(Ie.length,Ce);for(var nr=xe;nr<Ce;++nr)vt+=String.fromCharCode(Ie[nr]&127);return vt}function Wt(Ie,xe,Ce){var vt="";Ce=Math.min(Ie.length,Ce);for(var nr=xe;nr<Ce;++nr)vt+=String.fromCharCode(Ie[nr]);return vt}function st(Ie,xe,Ce){var vt=Ie.length;(!xe||xe<0)&&(xe=0),(!Ce||Ce<0||Ce>vt)&&(Ce=vt);for(var nr="",ir=xe;ir<Ce;++ir)nr+=je[Ie[ir]];return nr}function lt(Ie,xe,Ce){for(var vt=Ie.slice(xe,Ce),nr="",ir=0;ir<vt.length-1;ir+=2)nr+=String.fromCharCode(vt[ir]+vt[ir+1]*256);return nr}T.prototype.slice=function(xe,Ce){var vt=this.length;xe=~~xe,Ce=Ce===void 0?vt:~~Ce,xe<0?(xe+=vt,xe<0&&(xe=0)):xe>vt&&(xe=vt),Ce<0?(Ce+=vt,Ce<0&&(Ce=0)):Ce>vt&&(Ce=vt),Ce<xe&&(Ce=xe);var nr=this.subarray(xe,Ce);return Object.setPrototypeOf(nr,T.prototype),nr};function Gt(Ie,xe,Ce){if(Ie%1!==0||Ie<0)throw new RangeError("offset is not uint");if(Ie+xe>Ce)throw new RangeError("Trying to access beyond buffer length")}T.prototype.readUintLE=T.prototype.readUIntLE=function(xe,Ce,vt){xe=xe>>>0,Ce=Ce>>>0,vt||Gt(xe,Ce,this.length);for(var nr=this[xe],ir=1,pr=0;++pr<Ce&&(ir*=256);)nr+=this[xe+pr]*ir;return nr},T.prototype.readUintBE=T.prototype.readUIntBE=function(xe,Ce,vt){xe=xe>>>0,Ce=Ce>>>0,vt||Gt(xe,Ce,this.length);for(var nr=this[xe+--Ce],ir=1;Ce>0&&(ir*=256);)nr+=this[xe+--Ce]*ir;return nr},T.prototype.readUint8=T.prototype.readUInt8=function(xe,Ce){return xe=xe>>>0,Ce||Gt(xe,1,this.length),this[xe]},T.prototype.readUint16LE=T.prototype.readUInt16LE=function(xe,Ce){return xe=xe>>>0,Ce||Gt(xe,2,this.length),this[xe]|this[xe+1]<<8},T.prototype.readUint16BE=T.prototype.readUInt16BE=function(xe,Ce){return xe=xe>>>0,Ce||Gt(xe,2,this.length),this[xe]<<8|this[xe+1]},T.prototype.readUint32LE=T.prototype.readUInt32LE=function(xe,Ce){return xe=xe>>>0,Ce||Gt(xe,4,this.length),(this[xe]|this[xe+1]<<8|this[xe+2]<<16)+this[xe+3]*16777216},T.prototype.readUint32BE=T.prototype.readUInt32BE=function(xe,Ce){return xe=xe>>>0,Ce||Gt(xe,4,this.length),this[xe]*16777216+(this[xe+1]<<16|this[xe+2]<<8|this[xe+3])},T.prototype.readBigUInt64LE=$e(function(xe){xe=xe>>>0,yt(xe,"offset");var Ce=this[xe],vt=this[xe+7];(Ce===void 0||vt===void 0)&&Yt(xe,this.length-8);var nr=Ce+this[++xe]*Math.pow(2,8)+this[++xe]*Math.pow(2,16)+this[++xe]*Math.pow(2,24),ir=this[++xe]+this[++xe]*Math.pow(2,8)+this[++xe]*Math.pow(2,16)+vt*Math.pow(2,24);return BigInt(nr)+(BigInt(ir)<<BigInt(32))}),T.prototype.readBigUInt64BE=$e(function(xe){xe=xe>>>0,yt(xe,"offset");var Ce=this[xe],vt=this[xe+7];(Ce===void 0||vt===void 0)&&Yt(xe,this.length-8);var nr=Ce*Math.pow(2,24)+this[++xe]*Math.pow(2,16)+this[++xe]*Math.pow(2,8)+this[++xe],ir=this[++xe]*Math.pow(2,24)+this[++xe]*Math.pow(2,16)+this[++xe]*Math.pow(2,8)+vt;return(BigInt(nr)<<BigInt(32))+BigInt(ir)}),T.prototype.readIntLE=function(xe,Ce,vt){xe=xe>>>0,Ce=Ce>>>0,vt||Gt(xe,Ce,this.length);for(var nr=this[xe],ir=1,pr=0;++pr<Ce&&(ir*=256);)nr+=this[xe+pr]*ir;return ir*=128,nr>=ir&&(nr-=Math.pow(2,8*Ce)),nr},T.prototype.readIntBE=function(xe,Ce,vt){xe=xe>>>0,Ce=Ce>>>0,vt||Gt(xe,Ce,this.length);for(var nr=Ce,ir=1,pr=this[xe+--nr];nr>0&&(ir*=256);)pr+=this[xe+--nr]*ir;return ir*=128,pr>=ir&&(pr-=Math.pow(2,8*Ce)),pr},T.prototype.readInt8=function(xe,Ce){return xe=xe>>>0,Ce||Gt(xe,1,this.length),this[xe]&128?(255-this[xe]+1)*-1:this[xe]},T.prototype.readInt16LE=function(xe,Ce){xe=xe>>>0,Ce||Gt(xe,2,this.length);var vt=this[xe]|this[xe+1]<<8;return vt&32768?vt|4294901760:vt},T.prototype.readInt16BE=function(xe,Ce){xe=xe>>>0,Ce||Gt(xe,2,this.length);var vt=this[xe+1]|this[xe]<<8;return vt&32768?vt|4294901760:vt},T.prototype.readInt32LE=function(xe,Ce){return xe=xe>>>0,Ce||Gt(xe,4,this.length),this[xe]|this[xe+1]<<8|this[xe+2]<<16|this[xe+3]<<24},T.prototype.readInt32BE=function(xe,Ce){return xe=xe>>>0,Ce||Gt(xe,4,this.length),this[xe]<<24|this[xe+1]<<16|this[xe+2]<<8|this[xe+3]},T.prototype.readBigInt64LE=$e(function(xe){xe=xe>>>0,yt(xe,"offset");var Ce=this[xe],vt=this[xe+7];(Ce===void 0||vt===void 0)&&Yt(xe,this.length-8);var nr=this[xe+4]+this[xe+5]*Math.pow(2,8)+this[xe+6]*Math.pow(2,16)+(vt<<24);return(BigInt(nr)<<BigInt(32))+BigInt(Ce+this[++xe]*Math.pow(2,8)+this[++xe]*Math.pow(2,16)+this[++xe]*Math.pow(2,24))}),T.prototype.readBigInt64BE=$e(function(xe){xe=xe>>>0,yt(xe,"offset");var Ce=this[xe],vt=this[xe+7];(Ce===void 0||vt===void 0)&&Yt(xe,this.length-8);var nr=(Ce<<24)+this[++xe]*Math.pow(2,16)+this[++xe]*Math.pow(2,8)+this[++xe];return(BigInt(nr)<<BigInt(32))+BigInt(this[++xe]*Math.pow(2,24)+this[++xe]*Math.pow(2,16)+this[++xe]*Math.pow(2,8)+vt)}),T.prototype.readFloatLE=function(xe,Ce){return xe=xe>>>0,Ce||Gt(xe,4,this.length),_.read(this,xe,!0,23,4)},T.prototype.readFloatBE=function(xe,Ce){return xe=xe>>>0,Ce||Gt(xe,4,this.length),_.read(this,xe,!1,23,4)},T.prototype.readDoubleLE=function(xe,Ce){return xe=xe>>>0,Ce||Gt(xe,8,this.length),_.read(this,xe,!0,52,8)},T.prototype.readDoubleBE=function(xe,Ce){return xe=xe>>>0,Ce||Gt(xe,8,this.length),_.read(this,xe,!1,52,8)};function Nt(Ie,xe,Ce,vt,nr,ir){if(!T.isBuffer(Ie))throw new TypeError('"buffer" argument must be a Buffer instance');if(xe>nr||xe<ir)throw new RangeError('"value" argument is out of bounds');if(Ce+vt>Ie.length)throw new RangeError("Index out of range")}T.prototype.writeUintLE=T.prototype.writeUIntLE=function(xe,Ce,vt,nr){if(xe=+xe,Ce=Ce>>>0,vt=vt>>>0,!nr){var ir=Math.pow(2,8*vt)-1;Nt(this,xe,Ce,vt,ir,0)}var pr=1,oi=0;for(this[Ce]=xe&255;++oi<vt&&(pr*=256);)this[Ce+oi]=xe/pr&255;return Ce+vt},T.prototype.writeUintBE=T.prototype.writeUIntBE=function(xe,Ce,vt,nr){if(xe=+xe,Ce=Ce>>>0,vt=vt>>>0,!nr){var ir=Math.pow(2,8*vt)-1;Nt(this,xe,Ce,vt,ir,0)}var pr=vt-1,oi=1;for(this[Ce+pr]=xe&255;--pr>=0&&(oi*=256);)this[Ce+pr]=xe/oi&255;return Ce+vt},T.prototype.writeUint8=T.prototype.writeUInt8=function(xe,Ce,vt){return xe=+xe,Ce=Ce>>>0,vt||Nt(this,xe,Ce,1,255,0),this[Ce]=xe&255,Ce+1},T.prototype.writeUint16LE=T.prototype.writeUInt16LE=function(xe,Ce,vt){return xe=+xe,Ce=Ce>>>0,vt||Nt(this,xe,Ce,2,65535,0),this[Ce]=xe&255,this[Ce+1]=xe>>>8,Ce+2},T.prototype.writeUint16BE=T.prototype.writeUInt16BE=function(xe,Ce,vt){return xe=+xe,Ce=Ce>>>0,vt||Nt(this,xe,Ce,2,65535,0),this[Ce]=xe>>>8,this[Ce+1]=xe&255,Ce+2},T.prototype.writeUint32LE=T.prototype.writeUInt32LE=function(xe,Ce,vt){return xe=+xe,Ce=Ce>>>0,vt||Nt(this,xe,Ce,4,4294967295,0),this[Ce+3]=xe>>>24,this[Ce+2]=xe>>>16,this[Ce+1]=xe>>>8,this[Ce]=xe&255,Ce+4},T.prototype.writeUint32BE=T.prototype.writeUInt32BE=function(xe,Ce,vt){return xe=+xe,Ce=Ce>>>0,vt||Nt(this,xe,Ce,4,4294967295,0),this[Ce]=xe>>>24,this[Ce+1]=xe>>>16,this[Ce+2]=xe>>>8,this[Ce+3]=xe&255,Ce+4};function $t(Ie,xe,Ce,vt,nr){bt(xe,vt,nr,Ie,Ce,7);var ir=Number(xe&BigInt(4294967295));Ie[Ce++]=ir,ir=ir>>8,Ie[Ce++]=ir,ir=ir>>8,Ie[Ce++]=ir,ir=ir>>8,Ie[Ce++]=ir;var pr=Number(xe>>BigInt(32)&BigInt(4294967295));return Ie[Ce++]=pr,pr=pr>>8,Ie[Ce++]=pr,pr=pr>>8,Ie[Ce++]=pr,pr=pr>>8,Ie[Ce++]=pr,Ce}function sr(Ie,xe,Ce,vt,nr){bt(xe,vt,nr,Ie,Ce,7);var ir=Number(xe&BigInt(4294967295));Ie[Ce+7]=ir,ir=ir>>8,Ie[Ce+6]=ir,ir=ir>>8,Ie[Ce+5]=ir,ir=ir>>8,Ie[Ce+4]=ir;var pr=Number(xe>>BigInt(32)&BigInt(4294967295));return Ie[Ce+3]=pr,pr=pr>>8,Ie[Ce+2]=pr,pr=pr>>8,Ie[Ce+1]=pr,pr=pr>>8,Ie[Ce]=pr,Ce+8}T.prototype.writeBigUInt64LE=$e(function(xe){var Ce=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return $t(this,xe,Ce,BigInt(0),BigInt("0xffffffffffffffff"))}),T.prototype.writeBigUInt64BE=$e(function(xe){var Ce=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return sr(this,xe,Ce,BigInt(0),BigInt("0xffffffffffffffff"))}),T.prototype.writeIntLE=function(xe,Ce,vt,nr){if(xe=+xe,Ce=Ce>>>0,!nr){var ir=Math.pow(2,8*vt-1);Nt(this,xe,Ce,vt,ir-1,-ir)}var pr=0,oi=1,di=0;for(this[Ce]=xe&255;++pr<vt&&(oi*=256);)xe<0&&di===0&&this[Ce+pr-1]!==0&&(di=1),this[Ce+pr]=(xe/oi>>0)-di&255;return Ce+vt},T.prototype.writeIntBE=function(xe,Ce,vt,nr){if(xe=+xe,Ce=Ce>>>0,!nr){var ir=Math.pow(2,8*vt-1);Nt(this,xe,Ce,vt,ir-1,-ir)}var pr=vt-1,oi=1,di=0;for(this[Ce+pr]=xe&255;--pr>=0&&(oi*=256);)xe<0&&di===0&&this[Ce+pr+1]!==0&&(di=1),this[Ce+pr]=(xe/oi>>0)-di&255;return Ce+vt},T.prototype.writeInt8=function(xe,Ce,vt){return xe=+xe,Ce=Ce>>>0,vt||Nt(this,xe,Ce,1,127,-128),xe<0&&(xe=255+xe+1),this[Ce]=xe&255,Ce+1},T.prototype.writeInt16LE=function(xe,Ce,vt){return xe=+xe,Ce=Ce>>>0,vt||Nt(this,xe,Ce,2,32767,-32768),this[Ce]=xe&255,this[Ce+1]=xe>>>8,Ce+2},T.prototype.writeInt16BE=function(xe,Ce,vt){return xe=+xe,Ce=Ce>>>0,vt||Nt(this,xe,Ce,2,32767,-32768),this[Ce]=xe>>>8,this[Ce+1]=xe&255,Ce+2},T.prototype.writeInt32LE=function(xe,Ce,vt){return xe=+xe,Ce=Ce>>>0,vt||Nt(this,xe,Ce,4,2147483647,-2147483648),this[Ce]=xe&255,this[Ce+1]=xe>>>8,this[Ce+2]=xe>>>16,this[Ce+3]=xe>>>24,Ce+4},T.prototype.writeInt32BE=function(xe,Ce,vt){return xe=+xe,Ce=Ce>>>0,vt||Nt(this,xe,Ce,4,2147483647,-2147483648),xe<0&&(xe=4294967295+xe+1),this[Ce]=xe>>>24,this[Ce+1]=xe>>>16,this[Ce+2]=xe>>>8,this[Ce+3]=xe&255,Ce+4},T.prototype.writeBigInt64LE=$e(function(xe){var Ce=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return $t(this,xe,Ce,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))}),T.prototype.writeBigInt64BE=$e(function(xe){var Ce=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return sr(this,xe,Ce,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});function wr(Ie,xe,Ce,vt,nr,ir){if(Ce+vt>Ie.length)throw new RangeError("Index out of range");if(Ce<0)throw new RangeError("Index out of range")}function ur(Ie,xe,Ce,vt,nr){return xe=+xe,Ce=Ce>>>0,nr||wr(Ie,xe,Ce,4,34028234663852886e22,-34028234663852886e22),_.write(Ie,xe,Ce,vt,23,4),Ce+4}T.prototype.writeFloatLE=function(xe,Ce,vt){return ur(this,xe,Ce,!0,vt)},T.prototype.writeFloatBE=function(xe,Ce,vt){return ur(this,xe,Ce,!1,vt)};function Qe(Ie,xe,Ce,vt,nr){return xe=+xe,Ce=Ce>>>0,nr||wr(Ie,xe,Ce,8,17976931348623157e292,-17976931348623157e292),_.write(Ie,xe,Ce,vt,52,8),Ce+8}T.prototype.writeDoubleLE=function(xe,Ce,vt){return Qe(this,xe,Ce,!0,vt)},T.prototype.writeDoubleBE=function(xe,Ce,vt){return Qe(this,xe,Ce,!1,vt)},T.prototype.copy=function(xe,Ce,vt,nr){if(!T.isBuffer(xe))throw new TypeError("argument should be a Buffer");if(vt||(vt=0),!nr&&nr!==0&&(nr=this.length),Ce>=xe.length&&(Ce=xe.length),Ce||(Ce=0),nr>0&&nr<vt&&(nr=vt),nr===vt||xe.length===0||this.length===0)return 0;if(Ce<0)throw new RangeError("targetStart out of bounds");if(vt<0||vt>=this.length)throw new RangeError("Index out of range");if(nr<0)throw new RangeError("sourceEnd out of bounds");nr>this.length&&(nr=this.length),xe.length-Ce<nr-vt&&(nr=xe.length-Ce+vt);var ir=nr-vt;return this===xe&&typeof Uint8Array.prototype.copyWithin=="function"?this.copyWithin(Ce,vt,nr):Uint8Array.prototype.set.call(xe,this.subarray(vt,nr),Ce),ir},T.prototype.fill=function(xe,Ce,vt,nr){if(typeof xe=="string"){if(typeof Ce=="string"?(nr=Ce,Ce=0,vt=this.length):typeof vt=="string"&&(nr=vt,vt=this.length),nr!==void 0&&typeof nr!="string")throw new TypeError("encoding must be a string");if(typeof nr=="string"&&!T.isEncoding(nr))throw new TypeError("Unknown encoding: "+nr);if(xe.length===1){var ir=xe.charCodeAt(0);(nr==="utf8"&&ir<128||nr==="latin1")&&(xe=ir)}}else typeof xe=="number"?xe=xe&255:typeof xe=="boolean"&&(xe=Number(xe));if(Ce<0||this.length<Ce||this.length<vt)throw new RangeError("Out of range index");if(vt<=Ce)return this;Ce=Ce>>>0,vt=vt===void 0?this.length:vt>>>0,xe||(xe=0);var pr;if(typeof xe=="number")for(pr=Ce;pr<vt;++pr)this[pr]=xe;else{var oi=T.isBuffer(xe)?xe:T.from(xe,nr),di=oi.length;if(di===0)throw new TypeError('The value "'+xe+'" is invalid for argument "value"');for(pr=0;pr<vt-Ce;++pr)this[pr+Ce]=oi[pr%di]}return this};var Et={};function er(Ie,xe,Ce){Et[Ie]=function(vt){function nr(){var ir;return l(this,nr),ir=d(this,nr),Object.defineProperty(ir,"message",{value:xe.apply(ir,arguments),writable:!0,configurable:!0}),ir.name="".concat(ir.name," [").concat(Ie,"]"),ir.stack,delete ir.name,ir}return C(nr,vt),c(nr,[{key:"code",get:function(){return Ie},set:function(pr){Object.defineProperty(this,"code",{configurable:!0,enumerable:!0,value:pr,writable:!0})}},{key:"toString",value:function(){return"".concat(this.name," [").concat(Ie,"]: ").concat(this.message)}}])}(Ce)}er("ERR_BUFFER_OUT_OF_BOUNDS",function(Ie){return Ie?"".concat(Ie," is outside of buffer bounds"):"Attempt to access memory outside buffer bounds"},RangeError),er("ERR_INVALID_ARG_TYPE",function(Ie,xe){return'The "'.concat(Ie,'" argument must be of type number. Received type ').concat(A(xe))},TypeError),er("ERR_OUT_OF_RANGE",function(Ie,xe,Ce){var vt='The value of "'.concat(Ie,'" is out of range.'),nr=Ce;return Number.isInteger(Ce)&&Math.abs(Ce)>Math.pow(2,32)?nr=Ut(String(Ce)):typeof Ce=="bigint"&&(nr=String(Ce),(Ce>Math.pow(BigInt(2),BigInt(32))||Ce<-Math.pow(BigInt(2),BigInt(32)))&&(nr=Ut(nr)),nr+="n"),vt+=" It must be ".concat(xe,". Received ").concat(nr),vt},RangeError);function Ut(Ie){for(var xe="",Ce=Ie.length,vt=Ie[0]==="-"?1:0;Ce>=vt+4;Ce-=3)xe="_".concat(Ie.slice(Ce-3,Ce)).concat(xe);return"".concat(Ie.slice(0,Ce)).concat(xe)}function Ft(Ie,xe,Ce){yt(xe,"offset"),(Ie[xe]===void 0||Ie[xe+Ce]===void 0)&&Yt(xe,Ie.length-(Ce+1))}function bt(Ie,xe,Ce,vt,nr,ir){if(Ie>Ce||Ie<xe){var pr=typeof xe=="bigint"?"n":"",oi;throw ir>3?xe===0||xe===BigInt(0)?oi=">= 0".concat(pr," and < 2").concat(pr," ** ").concat((ir+1)*8).concat(pr):oi=">= -(2".concat(pr," ** ").concat((ir+1)*8-1).concat(pr,") and < 2 ** ")+"".concat((ir+1)*8-1).concat(pr):oi=">= ".concat(xe).concat(pr," and <= ").concat(Ce).concat(pr),new Et.ERR_OUT_OF_RANGE("value",oi,Ie)}Ft(vt,nr,ir)}function yt(Ie,xe){if(typeof Ie!="number")throw new Et.ERR_INVALID_ARG_TYPE(xe,"number",Ie)}function Yt(Ie,xe,Ce){throw Math.floor(Ie)!==Ie?(yt(Ie,Ce),new Et.ERR_OUT_OF_RANGE(Ce||"offset","an integer",Ie)):xe<0?new Et.ERR_BUFFER_OUT_OF_BOUNDS:new Et.ERR_OUT_OF_RANGE(Ce||"offset",">= ".concat(Ce?1:0," and <= ").concat(xe),Ie)}var lr=/[^+/0-9A-Za-z-_]/g;function Tr(Ie){if(Ie=Ie.split("=")[0],Ie=Ie.trim().replace(lr,""),Ie.length<2)return"";for(;Ie.length%4!==0;)Ie=Ie+"=";return Ie}function Rr(Ie,xe){xe=xe||1/0;for(var Ce,vt=Ie.length,nr=null,ir=[],pr=0;pr<vt;++pr){if(Ce=Ie.charCodeAt(pr),Ce>55295&&Ce<57344){if(!nr){if(Ce>56319){(xe-=3)>-1&&ir.push(239,191,189);continue}else if(pr+1===vt){(xe-=3)>-1&&ir.push(239,191,189);continue}nr=Ce;continue}if(Ce<56320){(xe-=3)>-1&&ir.push(239,191,189),nr=Ce;continue}Ce=(nr-55296<<10|Ce-56320)+65536}else nr&&(xe-=3)>-1&&ir.push(239,191,189);if(nr=null,Ce<128){if((xe-=1)<0)break;ir.push(Ce)}else if(Ce<2048){if((xe-=2)<0)break;ir.push(Ce>>6|192,Ce&63|128)}else if(Ce<65536){if((xe-=3)<0)break;ir.push(Ce>>12|224,Ce>>6&63|128,Ce&63|128)}else if(Ce<1114112){if((xe-=4)<0)break;ir.push(Ce>>18|240,Ce>>12&63|128,Ce>>6&63|128,Ce&63|128)}else throw new Error("Invalid code point")}return ir}function ei(Ie){for(var xe=[],Ce=0;Ce<Ie.length;++Ce)xe.push(Ie.charCodeAt(Ce)&255);return xe}function Wr(Ie,xe){for(var Ce,vt,nr,ir=[],pr=0;pr<Ie.length&&!((xe-=2)<0);++pr)Ce=Ie.charCodeAt(pr),vt=Ce>>8,nr=Ce%256,ir.push(nr),ir.push(vt);return ir}function Ur(Ie){return L.toByteArray(Tr(Ie))}function dt(Ie,xe,Ce,vt){var nr;for(nr=0;nr<vt&&!(nr+Ce>=xe.length||nr>=Ie.length);++nr)xe[nr+Ce]=Ie[nr];return nr}function Ge(Ie,xe){return Ie instanceof xe||Ie!=null&&Ie.constructor!=null&&Ie.constructor.name!=null&&Ie.constructor.name===xe.name}function Je(Ie){return Ie!==Ie}var je=function(){for(var Ie="0123456789abcdef",xe=new Array(256),Ce=0;Ce<16;++Ce)for(var vt=Ce*16,nr=0;nr<16;++nr)xe[vt+nr]=Ie[Ce]+Ie[nr];return xe}();function $e(Ie){return typeof BigInt=="undefined"?wt:Ie}function wt(){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,C=0;C<p.length;++C)p[C].lookAt(d,v,x,b)},f.rotate=function(d,v,x,b){for(var p=this._controllerList,C=0;C<p.length;++C)p[C].rotate(d,v,x,b)},f.pan=function(d,v,x,b){for(var p=this._controllerList,C=0;C<p.length;++C)p[C].pan(d,v,x,b)},f.translate=function(d,v,x,b){for(var p=this._controllerList,C=0;C<p.length;++C)p[C].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],C=d.mode||"turntable",E=s(),A=l(),L=u();return E.setDistanceLimits(p[0],p[1]),E.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:E,orbit:A,matrix:L},C)}},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,C=s(b,d-p);return C+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 C=s(d,p),E=l(C[h+1]);E===0&&(E=1);for(var A=new Array(h+1),v=0;v<=h;++v)A[v]=l(C[v])/E;return A}},7507:function(i,a){"use strict";a.byteLength=d,a.toByteArray=x,a.fromByteArray=C;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(E){var A=E.length;if(A%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var L=E.indexOf("=");L===-1&&(L=A);var _=L===A?0:4-L%4;return[L,_]}function d(E){var A=h(E),L=A[0],_=A[1];return(L+_)*3/4-_}function v(E,A,L){return(A+L)*3/4-L}function x(E){var A,L=h(E),_=L[0],k=L[1],M=new l(v(E,_,k)),g=0,P=k>0?_-4:_,T;for(T=0;T<P;T+=4)A=s[E.charCodeAt(T)]<<18|s[E.charCodeAt(T+1)]<<12|s[E.charCodeAt(T+2)]<<6|s[E.charCodeAt(T+3)],M[g++]=A>>16&255,M[g++]=A>>8&255,M[g++]=A&255;return k===2&&(A=s[E.charCodeAt(T)]<<2|s[E.charCodeAt(T+1)]>>4,M[g++]=A&255),k===1&&(A=s[E.charCodeAt(T)]<<10|s[E.charCodeAt(T+1)]<<4|s[E.charCodeAt(T+2)]>>2,M[g++]=A>>8&255,M[g++]=A&255),M}function b(E){return o[E>>18&63]+o[E>>12&63]+o[E>>6&63]+o[E&63]}function p(E,A,L){for(var _,k=[],M=A;M<L;M+=3)_=(E[M]<<16&16711680)+(E[M+1]<<8&65280)+(E[M+2]&255),k.push(b(_));return k.join("")}function C(E){for(var A,L=E.length,_=L%3,k=[],M=16383,g=0,P=L-_;g<P;g+=M)k.push(p(E,g,g+M>P?P:g+M));return _===1?(A=E[L-1],k.push(o[A>>2]+o[A<<4&63]+"==")):_===2&&(A=(E[L-2]<<8)+E[L-1],k.push(o[A>>10]+o[A>>4&63]+o[A<<2&63]+"=")),k.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,C;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]),C=x[0].clone();else if(l(x))C=x.clone();else if(typeof x=="string")C=c(x);else if(!x)C=u(1);else if(x===Math.floor(x))C=u(x);else{for(;x!==Math.floor(x);)x=x*Math.pow(2,256),b+=256;C=u(x)}return b>0?p=p.ushln(b):b<0&&(C=C.ushln(-b)),f(p,C)}},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 C=l(x)+4,E=s(b.ushln(C).divRound(h));return p*(x+E*Math.pow(2,-C))}else{var A=h.bitLength()-b.bitLength()+53,E=s(b.ushln(A).divRound(h));return A<1023?p*E*Math.pow(2,-A):(E*=Math.pow(2,-1023),p*E*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,C=f[p],E=d!==void 0?d(C,h):C-h;E>=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,C=f[p],E=d!==void 0?d(C,h):C-h;E>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,C=f[p],E=d!==void 0?d(C,h):C-h;E<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,C=f[p],E=d!==void 0?d(C,h):C-h;E<=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],C=d!==void 0?d(p,h):p-h;if(C===0)return b;C<=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(H,N){if(!H)throw new Error(N||"Assertion failed")}function c(H,N){H.super_=N;var j=function(){};j.prototype=N.prototype,H.prototype=new j,H.prototype.constructor=H}function f(H,N,j){if(f.isBN(H))return H;this.negative=0,this.words=null,this.length=0,this.red=null,H!==null&&((N==="le"||N==="be")&&(j=N,N=10),this._init(H||0,N||10,j||"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(H){}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,j){return N.cmp(j)>0?N:j},f.min=function(N,j){return N.cmp(j)<0?N:j},f.prototype._init=function(N,j,re){if(typeof N=="number")return this._initNumber(N,j,re);if(typeof N=="object")return this._initArray(N,j,re);j==="hex"&&(j=16),u(j===(j|0)&&j>=2&&j<=36),N=N.toString().replace(/\s+/g,"");var oe=0;N[0]==="-"&&(oe++,this.negative=1),oe<N.length&&(j===16?this._parseHex(N,oe,re):(this._parseBase(N,j,oe),re==="le"&&this._initArray(this.toArray(),j,re)))},f.prototype._initNumber=function(N,j,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(),j,re)},f.prototype._initArray=function(N,j,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 oe=0;oe<this.length;oe++)this.words[oe]=0;var _e,Me,ke=0;if(re==="be")for(oe=N.length-1,_e=0;oe>=0;oe-=3)Me=N[oe]|N[oe-1]<<8|N[oe-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(oe=0,_e=0;oe<N.length;oe+=3)Me=N[oe]|N[oe+1]<<8|N[oe+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(H,N){var j=H.charCodeAt(N);return j>=65&&j<=70?j-55:j>=97&&j<=102?j-87:j-48&15}function v(H,N,j){var re=d(H,j);return j-1>=N&&(re|=d(H,j-1)<<4),re}f.prototype._parseHex=function(N,j,re){this.length=Math.ceil((N.length-j)/6),this.words=new Array(this.length);for(var oe=0;oe<this.length;oe++)this.words[oe]=0;var _e=0,Me=0,ke;if(re==="be")for(oe=N.length-1;oe>=j;oe-=2)ke=v(N,j,oe)<<_e,this.words[Me]|=ke&67108863,_e>=18?(_e-=18,Me+=1,this.words[Me]|=ke>>>26):_e+=8;else{var me=N.length-j;for(oe=me%2===0?j+1:j;oe<N.length;oe+=2)ke=v(N,j,oe)<<_e,this.words[Me]|=ke&67108863,_e>=18?(_e-=18,Me+=1,this.words[Me]|=ke>>>26):_e+=8}this.strip()};function x(H,N,j,re){for(var oe=0,_e=Math.min(H.length,j),Me=N;Me<_e;Me++){var ke=H.charCodeAt(Me)-48;oe*=re,ke>=49?oe+=ke-49+10:ke>=17?oe+=ke-17+10:oe+=ke}return oe}f.prototype._parseBase=function(N,j,re){this.words=[0],this.length=1;for(var oe=0,_e=1;_e<=67108863;_e*=j)oe++;oe--,_e=_e/j|0;for(var Me=N.length-re,ke=Me%oe,me=Math.min(Me,Me-ke)+re,ie=0,Se=re;Se<me;Se+=oe)ie=x(N,Se,Se+oe,j),this.imuln(_e),this.words[0]+ie<67108864?this.words[0]+=ie:this._iaddn(ie);if(ke!==0){var Le=1;for(ie=x(N,Se,N.length,j),Se=0;Se<ke;Se++)Le*=j;this.imuln(Le),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 j=0;j<this.length;j++)N.words[j]=this.words[j];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],C=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];f.prototype.toString=function(N,j){N=N||10,j=j|0||1;var re;if(N===16||N==="hex"){re="";for(var oe=0,_e=0,Me=0;Me<this.length;Me++){var ke=this.words[Me],me=((ke<<oe|_e)&16777215).toString(16);_e=ke>>>24-oe&16777215,_e!==0||Me!==this.length-1?re=b[6-me.length]+me+re:re=me+re,oe+=2,oe>=26&&(oe-=26,Me--)}for(_e!==0&&(re=_e.toString(16)+re);re.length%j!==0;)re="0"+re;return this.negative!==0&&(re="-"+re),re}if(N===(N|0)&&N>=2&&N<=36){var ie=p[N],Se=C[N];re="";var Le=this.clone();for(Le.negative=0;!Le.isZero();){var Ae=Le.modn(Se).toString(N);Le=Le.idivn(Se),Le.isZero()?re=Ae+re:re=b[ie-Ae.length]+Ae+re}for(this.isZero()&&(re="0"+re);re.length%j!==0;)re="0"+re;return this.negative!==0&&(re="-"+re),re}u(!1,"Base should be between 2 and 36")},f.prototype.toNumber=function(){var N=this.words[0];return this.length===2?N+=this.words[1]*67108864:this.length===3&&this.words[2]===1?N+=4503599627370496+this.words[1]*67108864:this.length>2&&u(!1,"Number can only safely store up to 53 bits"),this.negative!==0?-N:N},f.prototype.toJSON=function(){return this.toString(16)},f.prototype.toBuffer=function(N,j){return u(typeof h!="undefined"),this.toArrayLike(h,N,j)},f.prototype.toArray=function(N,j){return this.toArrayLike(Array,N,j)},f.prototype.toArrayLike=function(N,j,re){var oe=this.byteLength(),_e=re||Math.max(1,oe);u(oe<=_e,"byte array longer than desired length"),u(_e>0,"Requested array length <= 0"),this.strip();var Me=j==="le",ke=new N(_e),me,ie,Se=this.clone();if(Me){for(ie=0;!Se.isZero();ie++)me=Se.andln(255),Se.iushrn(8),ke[ie]=me;for(;ie<_e;ie++)ke[ie]=0}else{for(ie=0;ie<_e-oe;ie++)ke[ie]=0;for(ie=0;!Se.isZero();ie++)me=Se.andln(255),Se.iushrn(8),ke[_e-ie-1]=me}return ke},Math.clz32?f.prototype._countBits=function(N){return 32-Math.clz32(N)}:f.prototype._countBits=function(N){var j=N,re=0;return j>=4096&&(re+=13,j>>>=13),j>=64&&(re+=7,j>>>=7),j>=8&&(re+=4,j>>>=4),j>=2&&(re+=2,j>>>=2),re+j},f.prototype._zeroBits=function(N){if(N===0)return 26;var j=N,re=0;return(j&8191)===0&&(re+=13,j>>>=13),(j&127)===0&&(re+=7,j>>>=7),(j&15)===0&&(re+=4,j>>>=4),(j&3)===0&&(re+=2,j>>>=2),(j&1)===0&&re++,re},f.prototype.bitLength=function(){var N=this.words[this.length-1],j=this._countBits(N);return(this.length-1)*26+j};function E(H){for(var N=new Array(H.bitLength()),j=0;j<N.length;j++){var re=j/26|0,oe=j%26;N[j]=(H.words[re]&1<<oe)>>>oe}return N}f.prototype.zeroBits=function(){if(this.isZero())return 0;for(var N=0,j=0;j<this.length;j++){var re=this._zeroBits(this.words[j]);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 j=0;j<N.length;j++)this.words[j]=this.words[j]|N.words[j];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 j;this.length>N.length?j=N:j=this;for(var re=0;re<j.length;re++)this.words[re]=this.words[re]&N.words[re];return this.length=j.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 j,re;this.length>N.length?(j=this,re=N):(j=N,re=this);for(var oe=0;oe<re.length;oe++)this.words[oe]=j.words[oe]^re.words[oe];if(this!==j)for(;oe<j.length;oe++)this.words[oe]=j.words[oe];return this.length=j.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 j=Math.ceil(N/26)|0,re=N%26;this._expand(j),re>0&&j--;for(var oe=0;oe<j;oe++)this.words[oe]=~this.words[oe]&67108863;return re>0&&(this.words[oe]=~this.words[oe]&67108863>>26-re),this.strip()},f.prototype.notn=function(N){return this.clone().inotn(N)},f.prototype.setn=function(N,j){u(typeof N=="number"&&N>=0);var re=N/26|0,oe=N%26;return this._expand(re+1),j?this.words[re]=this.words[re]|1<<oe:this.words[re]=this.words[re]&~(1<<oe),this.strip()},f.prototype.iadd=function(N){var j;if(this.negative!==0&&N.negative===0)return this.negative=0,j=this.isub(N),this.negative^=1,this._normSign();if(this.negative===0&&N.negative!==0)return N.negative=0,j=this.isub(N),N.negative=1,j._normSign();var re,oe;this.length>N.length?(re=this,oe=N):(re=N,oe=this);for(var _e=0,Me=0;Me<oe.length;Me++)j=(re.words[Me]|0)+(oe.words[Me]|0)+_e,this.words[Me]=j&67108863,_e=j>>>26;for(;_e!==0&&Me<re.length;Me++)j=(re.words[Me]|0)+_e,this.words[Me]=j&67108863,_e=j>>>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 j;return N.negative!==0&&this.negative===0?(N.negative=0,j=this.sub(N),N.negative^=1,j):N.negative===0&&this.negative!==0?(this.negative=0,j=N.sub(this),this.negative=1,j):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 j=this.iadd(N);return N.negative=1,j._normSign()}else if(this.negative!==0)return this.negative=0,this.iadd(N),this.negative=1,this._normSign();var re=this.cmp(N);if(re===0)return this.negative=0,this.length=1,this.words[0]=0,this;var oe,_e;re>0?(oe=this,_e=N):(oe=N,_e=this);for(var Me=0,ke=0;ke<_e.length;ke++)j=(oe.words[ke]|0)-(_e.words[ke]|0)+Me,Me=j>>26,this.words[ke]=j&67108863;for(;Me!==0&&ke<oe.length;ke++)j=(oe.words[ke]|0)+Me,Me=j>>26,this.words[ke]=j&67108863;if(Me===0&&ke<oe.length&&oe!==this)for(;ke<oe.length;ke++)this.words[ke]=oe.words[ke];return this.length=Math.max(this.length,ke),oe!==this&&(this.negative=1),this.strip()},f.prototype.sub=function(N){return this.clone().isub(N)};function A(H,N,j){j.negative=N.negative^H.negative;var re=H.length+N.length|0;j.length=re,re=re-1|0;var oe=H.words[0]|0,_e=N.words[0]|0,Me=oe*_e,ke=Me&67108863,me=Me/67108864|0;j.words[0]=ke;for(var ie=1;ie<re;ie++){for(var Se=me>>>26,Le=me&67108863,Ae=Math.min(ie,N.length-1),De=Math.max(0,ie-H.length+1);De<=Ae;De++){var Pe=ie-De|0;oe=H.words[Pe]|0,_e=N.words[De]|0,Me=oe*_e+Le,Se+=Me/67108864|0,Le=Me&67108863}j.words[ie]=Le|0,me=Se|0}return me!==0?j.words[ie]=me|0:j.length--,j.strip()}var L=function(N,j,re){var oe=N.words,_e=j.words,Me=re.words,ke=0,me,ie,Se,Le=oe[0]|0,Ae=Le&8191,De=Le>>>13,Pe=oe[1]|0,ge=Pe&8191,Fe=Pe>>>13,ce=oe[2]|0,Ze=ce&8191,ct=ce>>>13,pt=oe[3]|0,Wt=pt&8191,st=pt>>>13,lt=oe[4]|0,Gt=lt&8191,Nt=lt>>>13,$t=oe[5]|0,sr=$t&8191,wr=$t>>>13,ur=oe[6]|0,Qe=ur&8191,Et=ur>>>13,er=oe[7]|0,Ut=er&8191,Ft=er>>>13,bt=oe[8]|0,yt=bt&8191,Yt=bt>>>13,lr=oe[9]|0,Tr=lr&8191,Rr=lr>>>13,ei=_e[0]|0,Wr=ei&8191,Ur=ei>>>13,dt=_e[1]|0,Ge=dt&8191,Je=dt>>>13,je=_e[2]|0,$e=je&8191,wt=je>>>13,Ie=_e[3]|0,xe=Ie&8191,Ce=Ie>>>13,vt=_e[4]|0,nr=vt&8191,ir=vt>>>13,pr=_e[5]|0,oi=pr&8191,di=pr>>>13,Jr=_e[6]|0,fi=Jr&8191,Hi=Jr>>>13,Pn=_e[7]|0,wn=Pn&8191,pn=Pn>>>13,Vn=_e[8]|0,kn=Vn&8191,ea=Vn>>>13,ua=_e[9]|0,Vt=ua&8191,_t=ua>>>13;re.negative=N.negative^j.negative,re.length=19,me=Math.imul(Ae,Wr),ie=Math.imul(Ae,Ur),ie=ie+Math.imul(De,Wr)|0,Se=Math.imul(De,Ur);var tr=(ke+me|0)+((ie&8191)<<13)|0;ke=(Se+(ie>>>13)|0)+(tr>>>26)|0,tr&=67108863,me=Math.imul(ge,Wr),ie=Math.imul(ge,Ur),ie=ie+Math.imul(Fe,Wr)|0,Se=Math.imul(Fe,Ur),me=me+Math.imul(Ae,Ge)|0,ie=ie+Math.imul(Ae,Je)|0,ie=ie+Math.imul(De,Ge)|0,Se=Se+Math.imul(De,Je)|0;var ar=(ke+me|0)+((ie&8191)<<13)|0;ke=(Se+(ie>>>13)|0)+(ar>>>26)|0,ar&=67108863,me=Math.imul(Ze,Wr),ie=Math.imul(Ze,Ur),ie=ie+Math.imul(ct,Wr)|0,Se=Math.imul(ct,Ur),me=me+Math.imul(ge,Ge)|0,ie=ie+Math.imul(ge,Je)|0,ie=ie+Math.imul(Fe,Ge)|0,Se=Se+Math.imul(Fe,Je)|0,me=me+Math.imul(Ae,$e)|0,ie=ie+Math.imul(Ae,wt)|0,ie=ie+Math.imul(De,$e)|0,Se=Se+Math.imul(De,wt)|0;var Er=(ke+me|0)+((ie&8191)<<13)|0;ke=(Se+(ie>>>13)|0)+(Er>>>26)|0,Er&=67108863,me=Math.imul(Wt,Wr),ie=Math.imul(Wt,Ur),ie=ie+Math.imul(st,Wr)|0,Se=Math.imul(st,Ur),me=me+Math.imul(Ze,Ge)|0,ie=ie+Math.imul(Ze,Je)|0,ie=ie+Math.imul(ct,Ge)|0,Se=Se+Math.imul(ct,Je)|0,me=me+Math.imul(ge,$e)|0,ie=ie+Math.imul(ge,wt)|0,ie=ie+Math.imul(Fe,$e)|0,Se=Se+Math.imul(Fe,wt)|0,me=me+Math.imul(Ae,xe)|0,ie=ie+Math.imul(Ae,Ce)|0,ie=ie+Math.imul(De,xe)|0,Se=Se+Math.imul(De,Ce)|0;var Zr=(ke+me|0)+((ie&8191)<<13)|0;ke=(Se+(ie>>>13)|0)+(Zr>>>26)|0,Zr&=67108863,me=Math.imul(Gt,Wr),ie=Math.imul(Gt,Ur),ie=ie+Math.imul(Nt,Wr)|0,Se=Math.imul(Nt,Ur),me=me+Math.imul(Wt,Ge)|0,ie=ie+Math.imul(Wt,Je)|0,ie=ie+Math.imul(st,Ge)|0,Se=Se+Math.imul(st,Je)|0,me=me+Math.imul(Ze,$e)|0,ie=ie+Math.imul(Ze,wt)|0,ie=ie+Math.imul(ct,$e)|0,Se=Se+Math.imul(ct,wt)|0,me=me+Math.imul(ge,xe)|0,ie=ie+Math.imul(ge,Ce)|0,ie=ie+Math.imul(Fe,xe)|0,Se=Se+Math.imul(Fe,Ce)|0,me=me+Math.imul(Ae,nr)|0,ie=ie+Math.imul(Ae,ir)|0,ie=ie+Math.imul(De,nr)|0,Se=Se+Math.imul(De,ir)|0;var ri=(ke+me|0)+((ie&8191)<<13)|0;ke=(Se+(ie>>>13)|0)+(ri>>>26)|0,ri&=67108863,me=Math.imul(sr,Wr),ie=Math.imul(sr,Ur),ie=ie+Math.imul(wr,Wr)|0,Se=Math.imul(wr,Ur),me=me+Math.imul(Gt,Ge)|0,ie=ie+Math.imul(Gt,Je)|0,ie=ie+Math.imul(Nt,Ge)|0,Se=Se+Math.imul(Nt,Je)|0,me=me+Math.imul(Wt,$e)|0,ie=ie+Math.imul(Wt,wt)|0,ie=ie+Math.imul(st,$e)|0,Se=Se+Math.imul(st,wt)|0,me=me+Math.imul(Ze,xe)|0,ie=ie+Math.imul(Ze,Ce)|0,ie=ie+Math.imul(ct,xe)|0,Se=Se+Math.imul(ct,Ce)|0,me=me+Math.imul(ge,nr)|0,ie=ie+Math.imul(ge,ir)|0,ie=ie+Math.imul(Fe,nr)|0,Se=Se+Math.imul(Fe,ir)|0,me=me+Math.imul(Ae,oi)|0,ie=ie+Math.imul(Ae,di)|0,ie=ie+Math.imul(De,oi)|0,Se=Se+Math.imul(De,di)|0;var $r=(ke+me|0)+((ie&8191)<<13)|0;ke=(Se+(ie>>>13)|0)+($r>>>26)|0,$r&=67108863,me=Math.imul(Qe,Wr),ie=Math.imul(Qe,Ur),ie=ie+Math.imul(Et,Wr)|0,Se=Math.imul(Et,Ur),me=me+Math.imul(sr,Ge)|0,ie=ie+Math.imul(sr,Je)|0,ie=ie+Math.imul(wr,Ge)|0,Se=Se+Math.imul(wr,Je)|0,me=me+Math.imul(Gt,$e)|0,ie=ie+Math.imul(Gt,wt)|0,ie=ie+Math.imul(Nt,$e)|0,Se=Se+Math.imul(Nt,wt)|0,me=me+Math.imul(Wt,xe)|0,ie=ie+Math.imul(Wt,Ce)|0,ie=ie+Math.imul(st,xe)|0,Se=Se+Math.imul(st,Ce)|0,me=me+Math.imul(Ze,nr)|0,ie=ie+Math.imul(Ze,ir)|0,ie=ie+Math.imul(ct,nr)|0,Se=Se+Math.imul(ct,ir)|0,me=me+Math.imul(ge,oi)|0,ie=ie+Math.imul(ge,di)|0,ie=ie+Math.imul(Fe,oi)|0,Se=Se+Math.imul(Fe,di)|0,me=me+Math.imul(Ae,fi)|0,ie=ie+Math.imul(Ae,Hi)|0,ie=ie+Math.imul(De,fi)|0,Se=Se+Math.imul(De,Hi)|0;var zi=(ke+me|0)+((ie&8191)<<13)|0;ke=(Se+(ie>>>13)|0)+(zi>>>26)|0,zi&=67108863,me=Math.imul(Ut,Wr),ie=Math.imul(Ut,Ur),ie=ie+Math.imul(Ft,Wr)|0,Se=Math.imul(Ft,Ur),me=me+Math.imul(Qe,Ge)|0,ie=ie+Math.imul(Qe,Je)|0,ie=ie+Math.imul(Et,Ge)|0,Se=Se+Math.imul(Et,Je)|0,me=me+Math.imul(sr,$e)|0,ie=ie+Math.imul(sr,wt)|0,ie=ie+Math.imul(wr,$e)|0,Se=Se+Math.imul(wr,wt)|0,me=me+Math.imul(Gt,xe)|0,ie=ie+Math.imul(Gt,Ce)|0,ie=ie+Math.imul(Nt,xe)|0,Se=Se+Math.imul(Nt,Ce)|0,me=me+Math.imul(Wt,nr)|0,ie=ie+Math.imul(Wt,ir)|0,ie=ie+Math.imul(st,nr)|0,Se=Se+Math.imul(st,ir)|0,me=me+Math.imul(Ze,oi)|0,ie=ie+Math.imul(Ze,di)|0,ie=ie+Math.imul(ct,oi)|0,Se=Se+Math.imul(ct,di)|0,me=me+Math.imul(ge,fi)|0,ie=ie+Math.imul(ge,Hi)|0,ie=ie+Math.imul(Fe,fi)|0,Se=Se+Math.imul(Fe,Hi)|0,me=me+Math.imul(Ae,wn)|0,ie=ie+Math.imul(Ae,pn)|0,ie=ie+Math.imul(De,wn)|0,Se=Se+Math.imul(De,pn)|0;var Ji=(ke+me|0)+((ie&8191)<<13)|0;ke=(Se+(ie>>>13)|0)+(Ji>>>26)|0,Ji&=67108863,me=Math.imul(yt,Wr),ie=Math.imul(yt,Ur),ie=ie+Math.imul(Yt,Wr)|0,Se=Math.imul(Yt,Ur),me=me+Math.imul(Ut,Ge)|0,ie=ie+Math.imul(Ut,Je)|0,ie=ie+Math.imul(Ft,Ge)|0,Se=Se+Math.imul(Ft,Je)|0,me=me+Math.imul(Qe,$e)|0,ie=ie+Math.imul(Qe,wt)|0,ie=ie+Math.imul(Et,$e)|0,Se=Se+Math.imul(Et,wt)|0,me=me+Math.imul(sr,xe)|0,ie=ie+Math.imul(sr,Ce)|0,ie=ie+Math.imul(wr,xe)|0,Se=Se+Math.imul(wr,Ce)|0,me=me+Math.imul(Gt,nr)|0,ie=ie+Math.imul(Gt,ir)|0,ie=ie+Math.imul(Nt,nr)|0,Se=Se+Math.imul(Nt,ir)|0,me=me+Math.imul(Wt,oi)|0,ie=ie+Math.imul(Wt,di)|0,ie=ie+Math.imul(st,oi)|0,Se=Se+Math.imul(st,di)|0,me=me+Math.imul(Ze,fi)|0,ie=ie+Math.imul(Ze,Hi)|0,ie=ie+Math.imul(ct,fi)|0,Se=Se+Math.imul(ct,Hi)|0,me=me+Math.imul(ge,wn)|0,ie=ie+Math.imul(ge,pn)|0,ie=ie+Math.imul(Fe,wn)|0,Se=Se+Math.imul(Fe,pn)|0,me=me+Math.imul(Ae,kn)|0,ie=ie+Math.imul(Ae,ea)|0,ie=ie+Math.imul(De,kn)|0,Se=Se+Math.imul(De,ea)|0;var en=(ke+me|0)+((ie&8191)<<13)|0;ke=(Se+(ie>>>13)|0)+(en>>>26)|0,en&=67108863,me=Math.imul(Tr,Wr),ie=Math.imul(Tr,Ur),ie=ie+Math.imul(Rr,Wr)|0,Se=Math.imul(Rr,Ur),me=me+Math.imul(yt,Ge)|0,ie=ie+Math.imul(yt,Je)|0,ie=ie+Math.imul(Yt,Ge)|0,Se=Se+Math.imul(Yt,Je)|0,me=me+Math.imul(Ut,$e)|0,ie=ie+Math.imul(Ut,wt)|0,ie=ie+Math.imul(Ft,$e)|0,Se=Se+Math.imul(Ft,wt)|0,me=me+Math.imul(Qe,xe)|0,ie=ie+Math.imul(Qe,Ce)|0,ie=ie+Math.imul(Et,xe)|0,Se=Se+Math.imul(Et,Ce)|0,me=me+Math.imul(sr,nr)|0,ie=ie+Math.imul(sr,ir)|0,ie=ie+Math.imul(wr,nr)|0,Se=Se+Math.imul(wr,ir)|0,me=me+Math.imul(Gt,oi)|0,ie=ie+Math.imul(Gt,di)|0,ie=ie+Math.imul(Nt,oi)|0,Se=Se+Math.imul(Nt,di)|0,me=me+Math.imul(Wt,fi)|0,ie=ie+Math.imul(Wt,Hi)|0,ie=ie+Math.imul(st,fi)|0,Se=Se+Math.imul(st,Hi)|0,me=me+Math.imul(Ze,wn)|0,ie=ie+Math.imul(Ze,pn)|0,ie=ie+Math.imul(ct,wn)|0,Se=Se+Math.imul(ct,pn)|0,me=me+Math.imul(ge,kn)|0,ie=ie+Math.imul(ge,ea)|0,ie=ie+Math.imul(Fe,kn)|0,Se=Se+Math.imul(Fe,ea)|0,me=me+Math.imul(Ae,Vt)|0,ie=ie+Math.imul(Ae,_t)|0,ie=ie+Math.imul(De,Vt)|0,Se=Se+Math.imul(De,_t)|0;var cn=(ke+me|0)+((ie&8191)<<13)|0;ke=(Se+(ie>>>13)|0)+(cn>>>26)|0,cn&=67108863,me=Math.imul(Tr,Ge),ie=Math.imul(Tr,Je),ie=ie+Math.imul(Rr,Ge)|0,Se=Math.imul(Rr,Je),me=me+Math.imul(yt,$e)|0,ie=ie+Math.imul(yt,wt)|0,ie=ie+Math.imul(Yt,$e)|0,Se=Se+Math.imul(Yt,wt)|0,me=me+Math.imul(Ut,xe)|0,ie=ie+Math.imul(Ut,Ce)|0,ie=ie+Math.imul(Ft,xe)|0,Se=Se+Math.imul(Ft,Ce)|0,me=me+Math.imul(Qe,nr)|0,ie=ie+Math.imul(Qe,ir)|0,ie=ie+Math.imul(Et,nr)|0,Se=Se+Math.imul(Et,ir)|0,me=me+Math.imul(sr,oi)|0,ie=ie+Math.imul(sr,di)|0,ie=ie+Math.imul(wr,oi)|0,Se=Se+Math.imul(wr,di)|0,me=me+Math.imul(Gt,fi)|0,ie=ie+Math.imul(Gt,Hi)|0,ie=ie+Math.imul(Nt,fi)|0,Se=Se+Math.imul(Nt,Hi)|0,me=me+Math.imul(Wt,wn)|0,ie=ie+Math.imul(Wt,pn)|0,ie=ie+Math.imul(st,wn)|0,Se=Se+Math.imul(st,pn)|0,me=me+Math.imul(Ze,kn)|0,ie=ie+Math.imul(Ze,ea)|0,ie=ie+Math.imul(ct,kn)|0,Se=Se+Math.imul(ct,ea)|0,me=me+Math.imul(ge,Vt)|0,ie=ie+Math.imul(ge,_t)|0,ie=ie+Math.imul(Fe,Vt)|0,Se=Se+Math.imul(Fe,_t)|0;var yn=(ke+me|0)+((ie&8191)<<13)|0;ke=(Se+(ie>>>13)|0)+(yn>>>26)|0,yn&=67108863,me=Math.imul(Tr,$e),ie=Math.imul(Tr,wt),ie=ie+Math.imul(Rr,$e)|0,Se=Math.imul(Rr,wt),me=me+Math.imul(yt,xe)|0,ie=ie+Math.imul(yt,Ce)|0,ie=ie+Math.imul(Yt,xe)|0,Se=Se+Math.imul(Yt,Ce)|0,me=me+Math.imul(Ut,nr)|0,ie=ie+Math.imul(Ut,ir)|0,ie=ie+Math.imul(Ft,nr)|0,Se=Se+Math.imul(Ft,ir)|0,me=me+Math.imul(Qe,oi)|0,ie=ie+Math.imul(Qe,di)|0,ie=ie+Math.imul(Et,oi)|0,Se=Se+Math.imul(Et,di)|0,me=me+Math.imul(sr,fi)|0,ie=ie+Math.imul(sr,Hi)|0,ie=ie+Math.imul(wr,fi)|0,Se=Se+Math.imul(wr,Hi)|0,me=me+Math.imul(Gt,wn)|0,ie=ie+Math.imul(Gt,pn)|0,ie=ie+Math.imul(Nt,wn)|0,Se=Se+Math.imul(Nt,pn)|0,me=me+Math.imul(Wt,kn)|0,ie=ie+Math.imul(Wt,ea)|0,ie=ie+Math.imul(st,kn)|0,Se=Se+Math.imul(st,ea)|0,me=me+Math.imul(Ze,Vt)|0,ie=ie+Math.imul(Ze,_t)|0,ie=ie+Math.imul(ct,Vt)|0,Se=Se+Math.imul(ct,_t)|0;var Mn=(ke+me|0)+((ie&8191)<<13)|0;ke=(Se+(ie>>>13)|0)+(Mn>>>26)|0,Mn&=67108863,me=Math.imul(Tr,xe),ie=Math.imul(Tr,Ce),ie=ie+Math.imul(Rr,xe)|0,Se=Math.imul(Rr,Ce),me=me+Math.imul(yt,nr)|0,ie=ie+Math.imul(yt,ir)|0,ie=ie+Math.imul(Yt,nr)|0,Se=Se+Math.imul(Yt,ir)|0,me=me+Math.imul(Ut,oi)|0,ie=ie+Math.imul(Ut,di)|0,ie=ie+Math.imul(Ft,oi)|0,Se=Se+Math.imul(Ft,di)|0,me=me+Math.imul(Qe,fi)|0,ie=ie+Math.imul(Qe,Hi)|0,ie=ie+Math.imul(Et,fi)|0,Se=Se+Math.imul(Et,Hi)|0,me=me+Math.imul(sr,wn)|0,ie=ie+Math.imul(sr,pn)|0,ie=ie+Math.imul(wr,wn)|0,Se=Se+Math.imul(wr,pn)|0,me=me+Math.imul(Gt,kn)|0,ie=ie+Math.imul(Gt,ea)|0,ie=ie+Math.imul(Nt,kn)|0,Se=Se+Math.imul(Nt,ea)|0,me=me+Math.imul(Wt,Vt)|0,ie=ie+Math.imul(Wt,_t)|0,ie=ie+Math.imul(st,Vt)|0,Se=Se+Math.imul(st,_t)|0;var Ba=(ke+me|0)+((ie&8191)<<13)|0;ke=(Se+(ie>>>13)|0)+(Ba>>>26)|0,Ba&=67108863,me=Math.imul(Tr,nr),ie=Math.imul(Tr,ir),ie=ie+Math.imul(Rr,nr)|0,Se=Math.imul(Rr,ir),me=me+Math.imul(yt,oi)|0,ie=ie+Math.imul(yt,di)|0,ie=ie+Math.imul(Yt,oi)|0,Se=Se+Math.imul(Yt,di)|0,me=me+Math.imul(Ut,fi)|0,ie=ie+Math.imul(Ut,Hi)|0,ie=ie+Math.imul(Ft,fi)|0,Se=Se+Math.imul(Ft,Hi)|0,me=me+Math.imul(Qe,wn)|0,ie=ie+Math.imul(Qe,pn)|0,ie=ie+Math.imul(Et,wn)|0,Se=Se+Math.imul(Et,pn)|0,me=me+Math.imul(sr,kn)|0,ie=ie+Math.imul(sr,ea)|0,ie=ie+Math.imul(wr,kn)|0,Se=Se+Math.imul(wr,ea)|0,me=me+Math.imul(Gt,Vt)|0,ie=ie+Math.imul(Gt,_t)|0,ie=ie+Math.imul(Nt,Vt)|0,Se=Se+Math.imul(Nt,_t)|0;var la=(ke+me|0)+((ie&8191)<<13)|0;ke=(Se+(ie>>>13)|0)+(la>>>26)|0,la&=67108863,me=Math.imul(Tr,oi),ie=Math.imul(Tr,di),ie=ie+Math.imul(Rr,oi)|0,Se=Math.imul(Rr,di),me=me+Math.imul(yt,fi)|0,ie=ie+Math.imul(yt,Hi)|0,ie=ie+Math.imul(Yt,fi)|0,Se=Se+Math.imul(Yt,Hi)|0,me=me+Math.imul(Ut,wn)|0,ie=ie+Math.imul(Ut,pn)|0,ie=ie+Math.imul(Ft,wn)|0,Se=Se+Math.imul(Ft,pn)|0,me=me+Math.imul(Qe,kn)|0,ie=ie+Math.imul(Qe,ea)|0,ie=ie+Math.imul(Et,kn)|0,Se=Se+Math.imul(Et,ea)|0,me=me+Math.imul(sr,Vt)|0,ie=ie+Math.imul(sr,_t)|0,ie=ie+Math.imul(wr,Vt)|0,Se=Se+Math.imul(wr,_t)|0;var ma=(ke+me|0)+((ie&8191)<<13)|0;ke=(Se+(ie>>>13)|0)+(ma>>>26)|0,ma&=67108863,me=Math.imul(Tr,fi),ie=Math.imul(Tr,Hi),ie=ie+Math.imul(Rr,fi)|0,Se=Math.imul(Rr,Hi),me=me+Math.imul(yt,wn)|0,ie=ie+Math.imul(yt,pn)|0,ie=ie+Math.imul(Yt,wn)|0,Se=Se+Math.imul(Yt,pn)|0,me=me+Math.imul(Ut,kn)|0,ie=ie+Math.imul(Ut,ea)|0,ie=ie+Math.imul(Ft,kn)|0,Se=Se+Math.imul(Ft,ea)|0,me=me+Math.imul(Qe,Vt)|0,ie=ie+Math.imul(Qe,_t)|0,ie=ie+Math.imul(Et,Vt)|0,Se=Se+Math.imul(Et,_t)|0;var Wa=(ke+me|0)+((ie&8191)<<13)|0;ke=(Se+(ie>>>13)|0)+(Wa>>>26)|0,Wa&=67108863,me=Math.imul(Tr,wn),ie=Math.imul(Tr,pn),ie=ie+Math.imul(Rr,wn)|0,Se=Math.imul(Rr,pn),me=me+Math.imul(yt,kn)|0,ie=ie+Math.imul(yt,ea)|0,ie=ie+Math.imul(Yt,kn)|0,Se=Se+Math.imul(Yt,ea)|0,me=me+Math.imul(Ut,Vt)|0,ie=ie+Math.imul(Ut,_t)|0,ie=ie+Math.imul(Ft,Vt)|0,Se=Se+Math.imul(Ft,_t)|0;var Fa=(ke+me|0)+((ie&8191)<<13)|0;ke=(Se+(ie>>>13)|0)+(Fa>>>26)|0,Fa&=67108863,me=Math.imul(Tr,kn),ie=Math.imul(Tr,ea),ie=ie+Math.imul(Rr,kn)|0,Se=Math.imul(Rr,ea),me=me+Math.imul(yt,Vt)|0,ie=ie+Math.imul(yt,_t)|0,ie=ie+Math.imul(Yt,Vt)|0,Se=Se+Math.imul(Yt,_t)|0;var Wo=(ke+me|0)+((ie&8191)<<13)|0;ke=(Se+(ie>>>13)|0)+(Wo>>>26)|0,Wo&=67108863,me=Math.imul(Tr,Vt),ie=Math.imul(Tr,_t),ie=ie+Math.imul(Rr,Vt)|0,Se=Math.imul(Rr,_t);var da=(ke+me|0)+((ie&8191)<<13)|0;return ke=(Se+(ie>>>13)|0)+(da>>>26)|0,da&=67108863,Me[0]=tr,Me[1]=ar,Me[2]=Er,Me[3]=Zr,Me[4]=ri,Me[5]=$r,Me[6]=zi,Me[7]=Ji,Me[8]=en,Me[9]=cn,Me[10]=yn,Me[11]=Mn,Me[12]=Ba,Me[13]=la,Me[14]=ma,Me[15]=Wa,Me[16]=Fa,Me[17]=Wo,Me[18]=da,ke!==0&&(Me[19]=ke,re.length++),re};Math.imul||(L=A);function _(H,N,j){j.negative=N.negative^H.negative,j.length=H.length+N.length;for(var re=0,oe=0,_e=0;_e<j.length-1;_e++){var Me=oe;oe=0;for(var ke=re&67108863,me=Math.min(_e,N.length-1),ie=Math.max(0,_e-H.length+1);ie<=me;ie++){var Se=_e-ie,Le=H.words[Se]|0,Ae=N.words[ie]|0,De=Le*Ae,Pe=De&67108863;Me=Me+(De/67108864|0)|0,Pe=Pe+ke|0,ke=Pe&67108863,Me=Me+(Pe>>>26)|0,oe+=Me>>>26,Me&=67108863}j.words[_e]=ke,re=Me,Me=oe}return re!==0?j.words[_e]=re:j.length--,j.strip()}function k(H,N,j){var re=new M;return re.mulp(H,N,j)}f.prototype.mulTo=function(N,j){var re,oe=this.length+N.length;return this.length===10&&N.length===10?re=L(this,N,j):oe<63?re=A(this,N,j):oe<1024?re=_(this,N,j):re=k(this,N,j),re};function M(H,N){this.x=H,this.y=N}M.prototype.makeRBT=function(N){for(var j=new Array(N),re=f.prototype._countBits(N)-1,oe=0;oe<N;oe++)j[oe]=this.revBin(oe,re,N);return j},M.prototype.revBin=function(N,j,re){if(N===0||N===re-1)return N;for(var oe=0,_e=0;_e<j;_e++)oe|=(N&1)<<j-_e-1,N>>=1;return oe},M.prototype.permute=function(N,j,re,oe,_e,Me){for(var ke=0;ke<Me;ke++)oe[ke]=j[N[ke]],_e[ke]=re[N[ke]]},M.prototype.transform=function(N,j,re,oe,_e,Me){this.permute(Me,N,j,re,oe,_e);for(var ke=1;ke<_e;ke<<=1)for(var me=ke<<1,ie=Math.cos(2*Math.PI/me),Se=Math.sin(2*Math.PI/me),Le=0;Le<_e;Le+=me)for(var Ae=ie,De=Se,Pe=0;Pe<ke;Pe++){var ge=re[Le+Pe],Fe=oe[Le+Pe],ce=re[Le+Pe+ke],Ze=oe[Le+Pe+ke],ct=Ae*ce-De*Ze;Ze=Ae*Ze+De*ce,ce=ct,re[Le+Pe]=ge+ce,oe[Le+Pe]=Fe+Ze,re[Le+Pe+ke]=ge-ce,oe[Le+Pe+ke]=Fe-Ze,Pe!==me&&(ct=ie*Ae-Se*De,De=ie*De+Se*Ae,Ae=ct)}},M.prototype.guessLen13b=function(N,j){var re=Math.max(j,N)|1,oe=re&1,_e=0;for(re=re/2|0;re;re=re>>>1)_e++;return 1<<_e+1+oe},M.prototype.conjugate=function(N,j,re){if(!(re<=1))for(var oe=0;oe<re/2;oe++){var _e=N[oe];N[oe]=N[re-oe-1],N[re-oe-1]=_e,_e=j[oe],j[oe]=-j[re-oe-1],j[re-oe-1]=-_e}},M.prototype.normalize13b=function(N,j){for(var re=0,oe=0;oe<j/2;oe++){var _e=Math.round(N[2*oe+1]/j)*8192+Math.round(N[2*oe]/j)+re;N[oe]=_e&67108863,_e<67108864?re=0:re=_e/67108864|0}return N},M.prototype.convert13b=function(N,j,re,oe){for(var _e=0,Me=0;Me<j;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*j;Me<oe;++Me)re[Me]=0;u(_e===0),u((_e&-8192)===0)},M.prototype.stub=function(N){for(var j=new Array(N),re=0;re<N;re++)j[re]=0;return j},M.prototype.mulp=function(N,j,re){var oe=2*this.guessLen13b(N.length,j.length),_e=this.makeRBT(oe),Me=this.stub(oe),ke=new Array(oe),me=new Array(oe),ie=new Array(oe),Se=new Array(oe),Le=new Array(oe),Ae=new Array(oe),De=re.words;De.length=oe,this.convert13b(N.words,N.length,ke,oe),this.convert13b(j.words,j.length,Se,oe),this.transform(ke,Me,me,ie,oe,_e),this.transform(Se,Me,Le,Ae,oe,_e);for(var Pe=0;Pe<oe;Pe++){var ge=me[Pe]*Le[Pe]-ie[Pe]*Ae[Pe];ie[Pe]=me[Pe]*Ae[Pe]+ie[Pe]*Le[Pe],me[Pe]=ge}return this.conjugate(me,ie,oe),this.transform(me,ie,De,Me,oe,_e),this.conjugate(De,Me,oe),this.normalize13b(De,oe),re.negative=N.negative^j.negative,re.length=N.length+j.length,re.strip()},f.prototype.mul=function(N){var j=new f(null);return j.words=new Array(this.length+N.length),this.mulTo(N,j)},f.prototype.mulf=function(N){var j=new f(null);return j.words=new Array(this.length+N.length),k(this,N,j)},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 j=0,re=0;re<this.length;re++){var oe=(this.words[re]|0)*N,_e=(oe&67108863)+(j&67108863);j>>=26,j+=oe/67108864|0,j+=_e>>>26,this.words[re]=_e&67108863}return j!==0&&(this.words[re]=j,this.length++),this},f.prototype.muln=function(N){return this.clone().imuln(N)},f.prototype.sqr=function(){return this.mul(this)},f.prototype.isqr=function(){return this.imul(this.clone())},f.prototype.pow=function(N){var j=E(N);if(j.length===0)return new f(1);for(var re=this,oe=0;oe<j.length&&j[oe]===0;oe++,re=re.sqr());if(++oe<j.length)for(var _e=re.sqr();oe<j.length;oe++,_e=_e.sqr())j[oe]!==0&&(re=re.mul(_e));return re},f.prototype.iushln=function(N){u(typeof N=="number"&&N>=0);var j=N%26,re=(N-j)/26,oe=67108863>>>26-j<<26-j,_e;if(j!==0){var Me=0;for(_e=0;_e<this.length;_e++){var ke=this.words[_e]&oe,me=(this.words[_e]|0)-ke<<j;this.words[_e]=me|Me,Me=ke>>>26-j}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,j,re){u(typeof N=="number"&&N>=0);var oe;j?oe=(j-j%26)/26:oe=0;var _e=N%26,Me=Math.min((N-_e)/26,this.length),ke=67108863^67108863>>>_e<<_e,me=re;if(oe-=Me,oe=Math.max(0,oe),me){for(var ie=0;ie<Me;ie++)me.words[ie]=this.words[ie];me.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 Se=0;for(ie=this.length-1;ie>=0&&(Se!==0||ie>=oe);ie--){var Le=this.words[ie]|0;this.words[ie]=Se<<26-_e|Le>>>_e,Se=Le&ke}return me&&Se!==0&&(me.words[me.length++]=Se),this.length===0&&(this.words[0]=0,this.length=1),this.strip()},f.prototype.ishrn=function(N,j,re){return u(this.negative===0),this.iushrn(N,j,re)},f.prototype.shln=function(N){return this.clone().ishln(N)},f.prototype.ushln=function(N){return this.clone().iushln(N)},f.prototype.shrn=function(N){return this.clone().ishrn(N)},f.prototype.ushrn=function(N){return this.clone().iushrn(N)},f.prototype.testn=function(N){u(typeof N=="number"&&N>=0);var j=N%26,re=(N-j)/26,oe=1<<j;if(this.length<=re)return!1;var _e=this.words[re];return!!(_e&oe)},f.prototype.imaskn=function(N){u(typeof N=="number"&&N>=0);var j=N%26,re=(N-j)/26;if(u(this.negative===0,"imaskn works only with positive numbers"),this.length<=re)return this;if(j!==0&&re++,this.length=Math.min(re,this.length),j!==0){var oe=67108863^67108863>>>j<<j;this.words[this.length-1]&=oe}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 j=0;j<this.length&&this.words[j]>=67108864;j++)this.words[j]-=67108864,j===this.length-1?this.words[j+1]=1:this.words[j+1]++;return this.length=Math.max(this.length,j+1),this},f.prototype.isubn=function(N){if(u(typeof N=="number"),u(N<67108864),N<0)return this.iaddn(-N);if(this.negative!==0)return this.negative=0,this.iaddn(N),this.negative=1,this;if(this.words[0]-=N,this.length===1&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var j=0;j<this.length&&this.words[j]<0;j++)this.words[j]+=67108864,this.words[j+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,j,re){var oe=N.length+re,_e;this._expand(oe);var Me,ke=0;for(_e=0;_e<N.length;_e++){Me=(this.words[_e+re]|0)+ke;var me=(N.words[_e]|0)*j;Me-=me&67108863,ke=(Me>>26)-(me/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,j){var re=this.length-N.length,oe=this.clone(),_e=N,Me=_e.words[_e.length-1]|0,ke=this._countBits(Me);re=26-ke,re!==0&&(_e=_e.ushln(re),oe.iushln(re),Me=_e.words[_e.length-1]|0);var me=oe.length-_e.length,ie;if(j!=="mod"){ie=new f(null),ie.length=me+1,ie.words=new Array(ie.length);for(var Se=0;Se<ie.length;Se++)ie.words[Se]=0}var Le=oe.clone()._ishlnsubmul(_e,1,me);Le.negative===0&&(oe=Le,ie&&(ie.words[me]=1));for(var Ae=me-1;Ae>=0;Ae--){var De=(oe.words[_e.length+Ae]|0)*67108864+(oe.words[_e.length+Ae-1]|0);for(De=Math.min(De/Me|0,67108863),oe._ishlnsubmul(_e,De,Ae);oe.negative!==0;)De--,oe.negative=0,oe._ishlnsubmul(_e,1,Ae),oe.isZero()||(oe.negative^=1);ie&&(ie.words[Ae]=De)}return ie&&ie.strip(),oe.strip(),j!=="div"&&re!==0&&oe.iushrn(re),{div:ie||null,mod:oe}},f.prototype.divmod=function(N,j,re){if(u(!N.isZero()),this.isZero())return{div:new f(0),mod:new f(0)};var oe,_e,Me;return this.negative!==0&&N.negative===0?(Me=this.neg().divmod(N,j),j!=="mod"&&(oe=Me.div.neg()),j!=="div"&&(_e=Me.mod.neg(),re&&_e.negative!==0&&_e.iadd(N)),{div:oe,mod:_e}):this.negative===0&&N.negative!==0?(Me=this.divmod(N.neg(),j),j!=="mod"&&(oe=Me.div.neg()),{div:oe,mod:Me.mod}):(this.negative&N.negative)!==0?(Me=this.neg().divmod(N.neg(),j),j!=="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?j==="div"?{div:this.divn(N.words[0]),mod:null}:j==="mod"?{div:null,mod:new f(this.modn(N.words[0]))}:{div:this.divn(N.words[0]),mod:new f(this.modn(N.words[0]))}:this._wordDiv(N,j)},f.prototype.div=function(N){return this.divmod(N,"div",!1).div},f.prototype.mod=function(N){return this.divmod(N,"mod",!1).mod},f.prototype.umod=function(N){return this.divmod(N,"mod",!0).mod},f.prototype.divRound=function(N){var j=this.divmod(N);if(j.mod.isZero())return j.div;var re=j.div.negative!==0?j.mod.isub(N):j.mod,oe=N.ushrn(1),_e=N.andln(1),Me=re.cmp(oe);return Me<0||_e===1&&Me===0?j.div:j.div.negative!==0?j.div.isubn(1):j.div.iaddn(1)},f.prototype.modn=function(N){u(N<=67108863);for(var j=(1<<26)%N,re=0,oe=this.length-1;oe>=0;oe--)re=(j*re+(this.words[oe]|0))%N;return re},f.prototype.idivn=function(N){u(N<=67108863);for(var j=0,re=this.length-1;re>=0;re--){var oe=(this.words[re]|0)+j*67108864;this.words[re]=oe/N|0,j=oe%N}return this.strip()},f.prototype.divn=function(N){return this.clone().idivn(N)},f.prototype.egcd=function(N){u(N.negative===0),u(!N.isZero());var j=this,re=N.clone();j.negative!==0?j=j.umod(N):j=j.clone();for(var oe=new f(1),_e=new f(0),Me=new f(0),ke=new f(1),me=0;j.isEven()&&re.isEven();)j.iushrn(1),re.iushrn(1),++me;for(var ie=re.clone(),Se=j.clone();!j.isZero();){for(var Le=0,Ae=1;(j.words[0]&Ae)===0&&Le<26;++Le,Ae<<=1);if(Le>0)for(j.iushrn(Le);Le-- >0;)(oe.isOdd()||_e.isOdd())&&(oe.iadd(ie),_e.isub(Se)),oe.iushrn(1),_e.iushrn(1);for(var De=0,Pe=1;(re.words[0]&Pe)===0&&De<26;++De,Pe<<=1);if(De>0)for(re.iushrn(De);De-- >0;)(Me.isOdd()||ke.isOdd())&&(Me.iadd(ie),ke.isub(Se)),Me.iushrn(1),ke.iushrn(1);j.cmp(re)>=0?(j.isub(re),oe.isub(Me),_e.isub(ke)):(re.isub(j),Me.isub(oe),ke.isub(_e))}return{a:Me,b:ke,gcd:re.iushln(me)}},f.prototype._invmp=function(N){u(N.negative===0),u(!N.isZero());var j=this,re=N.clone();j.negative!==0?j=j.umod(N):j=j.clone();for(var oe=new f(1),_e=new f(0),Me=re.clone();j.cmpn(1)>0&&re.cmpn(1)>0;){for(var ke=0,me=1;(j.words[0]&me)===0&&ke<26;++ke,me<<=1);if(ke>0)for(j.iushrn(ke);ke-- >0;)oe.isOdd()&&oe.iadd(Me),oe.iushrn(1);for(var ie=0,Se=1;(re.words[0]&Se)===0&&ie<26;++ie,Se<<=1);if(ie>0)for(re.iushrn(ie);ie-- >0;)_e.isOdd()&&_e.iadd(Me),_e.iushrn(1);j.cmp(re)>=0?(j.isub(re),oe.isub(_e)):(re.isub(j),_e.isub(oe))}var Le;return j.cmpn(1)===0?Le=oe:Le=_e,Le.cmpn(0)<0&&Le.iadd(N),Le},f.prototype.gcd=function(N){if(this.isZero())return N.abs();if(N.isZero())return this.abs();var j=this.clone(),re=N.clone();j.negative=0,re.negative=0;for(var oe=0;j.isEven()&&re.isEven();oe++)j.iushrn(1),re.iushrn(1);do{for(;j.isEven();)j.iushrn(1);for(;re.isEven();)re.iushrn(1);var _e=j.cmp(re);if(_e<0){var Me=j;j=re,re=Me}else if(_e===0||re.cmpn(1)===0)break;j.isub(re)}while(!0);return re.iushln(oe)},f.prototype.invm=function(N){return this.egcd(N).a.umod(N)},f.prototype.isEven=function(){return(this.words[0]&1)===0},f.prototype.isOdd=function(){return(this.words[0]&1)===1},f.prototype.andln=function(N){return this.words[0]&N},f.prototype.bincn=function(N){u(typeof N=="number");var j=N%26,re=(N-j)/26,oe=1<<j;if(this.length<=re)return this._expand(re+1),this.words[re]|=oe,this;for(var _e=oe,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 j=N<0;if(this.negative!==0&&!j)return-1;if(this.negative===0&&j)return 1;this.strip();var re;if(this.length>1)re=1;else{j&&(N=-N),u(N<=67108863,"Number is too big");var oe=this.words[0]|0;re=oe===N?0:oe<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 j=this.ucmp(N);return this.negative!==0?-j|0:j},f.prototype.ucmp=function(N){if(this.length>N.length)return 1;if(this.length<N.length)return-1;for(var j=0,re=this.length-1;re>=0;re--){var oe=this.words[re]|0,_e=N.words[re]|0;if(oe!==_e){oe<_e?j=-1:oe>_e&&(j=1);break}}return j},f.prototype.gtn=function(N){return this.cmpn(N)===1},f.prototype.gt=function(N){return this.cmp(N)===1},f.prototype.gten=function(N){return this.cmpn(N)>=0},f.prototype.gte=function(N){return this.cmp(N)>=0},f.prototype.ltn=function(N){return this.cmpn(N)===-1},f.prototype.lt=function(N){return this.cmp(N)===-1},f.prototype.lten=function(N){return this.cmpn(N)<=0},f.prototype.lte=function(N){return this.cmp(N)<=0},f.prototype.eqn=function(N){return this.cmpn(N)===0},f.prototype.eq=function(N){return this.cmp(N)===0},f.red=function(N){return new G(N)},f.prototype.toRed=function(N){return u(!this.red,"Already a number in reduction context"),u(this.negative===0,"red works only with positives"),N.convertTo(this)._forceRed(N)},f.prototype.fromRed=function(){return u(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},f.prototype._forceRed=function(N){return this.red=N,this},f.prototype.forceRed=function(N){return u(!this.red,"Already a number in reduction context"),this._forceRed(N)},f.prototype.redAdd=function(N){return u(this.red,"redAdd works only with red numbers"),this.red.add(this,N)},f.prototype.redIAdd=function(N){return u(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,N)},f.prototype.redSub=function(N){return u(this.red,"redSub works only with red numbers"),this.red.sub(this,N)},f.prototype.redISub=function(N){return u(this.red,"redISub works only with red numbers"),this.red.isub(this,N)},f.prototype.redShl=function(N){return u(this.red,"redShl works only with red numbers"),this.red.shl(this,N)},f.prototype.redMul=function(N){return u(this.red,"redMul works only with red numbers"),this.red._verify2(this,N),this.red.mul(this,N)},f.prototype.redIMul=function(N){return u(this.red,"redMul works only with red numbers"),this.red._verify2(this,N),this.red.imul(this,N)},f.prototype.redSqr=function(){return u(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},f.prototype.redISqr=function(){return u(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},f.prototype.redSqrt=function(){return u(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},f.prototype.redInvm=function(){return u(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},f.prototype.redNeg=function(){return u(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},f.prototype.redPow=function(N){return u(this.red&&!N.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,N)};var g={k256:null,p224:null,p192:null,p25519:null};function P(H,N){this.name=H,this.p=new f(N,16),this.n=this.p.bitLength(),this.k=new f(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}P.prototype._tmp=function(){var N=new f(null);return N.words=new Array(Math.ceil(this.n/13)),N},P.prototype.ireduce=function(N){var j=N,re;do this.split(j,this.tmp),j=this.imulK(j),j=j.iadd(this.tmp),re=j.bitLength();while(re>this.n);var oe=re<this.n?-1:j.ucmp(this.p);return oe===0?(j.words[0]=0,j.length=1):oe>0?j.isub(this.p):j.strip!==void 0?j.strip():j._strip(),j},P.prototype.split=function(N,j){N.iushrn(this.n,0,j)},P.prototype.imulK=function(N){return N.imul(this.k)};function T(){P.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}c(T,P),T.prototype.split=function(N,j){for(var re=4194303,oe=Math.min(N.length,9),_e=0;_e<oe;_e++)j.words[_e]=N.words[_e];if(j.length=oe,N.length<=9){N.words[0]=0,N.length=1;return}var Me=N.words[9];for(j.words[j.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 j=0,re=0;re<N.length;re++){var oe=N.words[re]|0;j+=oe*977,N.words[re]=j&67108863,j=oe*64+(j/67108864|0)}return N.words[N.length-1]===0&&(N.length--,N.words[N.length-1]===0&&N.length--),N};function z(){P.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}c(z,P);function O(){P.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}c(O,P);function V(){P.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}c(V,P),V.prototype.imulK=function(N){for(var j=0,re=0;re<N.length;re++){var oe=(N.words[re]|0)*19+j,_e=oe&67108863;oe>>>=26,N.words[re]=_e,j=oe}return j!==0&&(N.words[N.length++]=j),N},f._prime=function(N){if(g[N])return g[N];var j;if(N==="k256")j=new T;else if(N==="p224")j=new z;else if(N==="p192")j=new O;else if(N==="p25519")j=new V;else throw new Error("Unknown prime "+N);return g[N]=j,j};function G(H){if(typeof H=="string"){var N=f._prime(H);this.m=N.p,this.prime=N}else u(H.gtn(1),"modulus must be greater than 1"),this.m=H,this.prime=null}G.prototype._verify1=function(N){u(N.negative===0,"red works only with positives"),u(N.red,"red works only with red numbers")},G.prototype._verify2=function(N,j){u((N.negative|j.negative)===0,"red works only with positives"),u(N.red&&N.red===j.red,"red works only with red numbers")},G.prototype.imod=function(N){return this.prime?this.prime.ireduce(N)._forceRed(this):N.umod(this.m)._forceRed(this)},G.prototype.neg=function(N){return N.isZero()?N.clone():this.m.sub(N)._forceRed(this)},G.prototype.add=function(N,j){this._verify2(N,j);var re=N.add(j);return re.cmp(this.m)>=0&&re.isub(this.m),re._forceRed(this)},G.prototype.iadd=function(N,j){this._verify2(N,j);var re=N.iadd(j);return re.cmp(this.m)>=0&&re.isub(this.m),re},G.prototype.sub=function(N,j){this._verify2(N,j);var re=N.sub(j);return re.cmpn(0)<0&&re.iadd(this.m),re._forceRed(this)},G.prototype.isub=function(N,j){this._verify2(N,j);var re=N.isub(j);return re.cmpn(0)<0&&re.iadd(this.m),re},G.prototype.shl=function(N,j){return this._verify1(N),this.imod(N.ushln(j))},G.prototype.imul=function(N,j){return this._verify2(N,j),this.imod(N.imul(j))},G.prototype.mul=function(N,j){return this._verify2(N,j),this.imod(N.mul(j))},G.prototype.isqr=function(N){return this.imul(N,N.clone())},G.prototype.sqr=function(N){return this.mul(N,N)},G.prototype.sqrt=function(N){if(N.isZero())return N.clone();var j=this.m.andln(3);if(u(j%2===1),j===3){var re=this.m.add(new f(1)).iushrn(2);return this.pow(N,re)}for(var oe=this.m.subn(1),_e=0;!oe.isZero()&&oe.andln(1)===0;)_e++,oe.iushrn(1);u(!oe.isZero());var Me=new f(1).toRed(this),ke=Me.redNeg(),me=this.m.subn(1).iushrn(1),ie=this.m.bitLength();for(ie=new f(2*ie*ie).toRed(this);this.pow(ie,me).cmp(ke)!==0;)ie.redIAdd(ke);for(var Se=this.pow(ie,oe),Le=this.pow(N,oe.addn(1).iushrn(1)),Ae=this.pow(N,oe),De=_e;Ae.cmp(Me)!==0;){for(var Pe=Ae,ge=0;Pe.cmp(Me)!==0;ge++)Pe=Pe.redSqr();u(ge<De);var Fe=this.pow(Se,new f(1).iushln(De-ge-1));Le=Le.redMul(Fe),Se=Fe.redSqr(),Ae=Ae.redMul(Se),De=ge}return Le},G.prototype.invm=function(N){var j=N._invmp(this.m);return j.negative!==0?(j.negative=0,this.imod(j).redNeg()):this.imod(j)},G.prototype.pow=function(N,j){if(j.isZero())return new f(1).toRed(this);if(j.cmpn(1)===0)return N.clone();var re=4,oe=new Array(1<<re);oe[0]=new f(1).toRed(this),oe[1]=N;for(var _e=2;_e<oe.length;_e++)oe[_e]=this.mul(oe[_e-1],N);var Me=oe[0],ke=0,me=0,ie=j.bitLength()%26;for(ie===0&&(ie=26),_e=j.length-1;_e>=0;_e--){for(var Se=j.words[_e],Le=ie-1;Le>=0;Le--){var Ae=Se>>Le&1;if(Me!==oe[0]&&(Me=this.sqr(Me)),Ae===0&&ke===0){me=0;continue}ke<<=1,ke|=Ae,me++,!(me!==re&&(_e!==0||Le!==0))&&(Me=this.mul(Me,oe[ke]),me=0,ke=0)}ie=26}return Me},G.prototype.convertTo=function(N){var j=N.umod(this.m);return j===N?j.clone():j},G.prototype.convertFrom=function(N){var j=N.clone();return j.red=null,j},f.mont=function(N){return new Z(N)};function Z(H){G.call(this,H),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new f(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}c(Z,G),Z.prototype.convertTo=function(N){return this.imod(N.ushln(this.shift))},Z.prototype.convertFrom=function(N){var j=this.imod(N.mul(this.rinv));return j.red=null,j},Z.prototype.imul=function(N,j){if(N.isZero()||j.isZero())return N.words[0]=0,N.length=1,N;var re=N.imul(j),oe=re.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),_e=re.isub(oe).iushrn(this.shift),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)},Z.prototype.mul=function(N,j){if(N.isZero()||j.isZero())return new f(0)._forceRed(this);var re=N.mul(j),oe=re.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),_e=re.isub(oe).iushrn(this.shift),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)},Z.prototype.invm=function(N){var j=this.imod(N._invmp(this.m).mul(this.r2));return j._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 C=b[1];b[1]=b[0],b[0]=C}}}return h}},6867:function(i,a,o){"use strict";i.exports=p;var s=o(1888),l=o(855),u=o(7150);function c(C,E){for(var A=0;A<C;++A)if(!(E[A]<=E[A+C]))return!0;return!1}function f(C,E,A,L){for(var _=0,k=0,M=0,g=C.length;M<g;++M){var P=C[M];if(!c(E,P)){for(var T=0;T<2*E;++T)A[_++]=P[T];L[k++]=M}}return k}function h(C,E,A,L){var _=C.length,k=E.length;if(!(_<=0||k<=0)){var M=C[0].length>>>1;if(!(M<=0)){var g,P=s.mallocDouble(2*M*_),T=s.mallocInt32(_);if(_=f(C,M,P,T),_>0){if(M===1&&L)l.init(_),g=l.sweepComplete(M,A,0,_,P,T,0,_,P,T);else{var z=s.mallocDouble(2*M*k),O=s.mallocInt32(k);k=f(E,M,z,O),k>0&&(l.init(_+k),M===1?g=l.sweepBipartite(M,A,0,_,P,T,0,k,z,O):g=u(M,A,L,_,P,T,k,z,O),s.free(z),s.free(O))}s.free(P),s.free(T)}return g}}}var d;function v(C,E){d.push([C,E])}function x(C){return d=[],h(C,C,v,!0),d}function b(C,E){return d=[],h(C,E,v,!1),d}function p(C,E,A){switch(arguments.length){case 1:return x(C);case 2:return typeof E=="function"?h(C,C,E,!0):b(C,E);case 3:return h(C,E,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,C,E,A,L,_){for(var k=2*h,M=x,g=k*x;M<b;++M,g+=k){var P=p[d+g],T=p[d+g+h],z=C[M];e:for(var O=E,V=k*E;O<A;++O,V+=k){var G=L[d+V],Z=L[d+V+h],H=_[O];if(!(Z<P||T<G)){for(var N=d+1;N<h;++N){var j=p[N+g],re=p[N+h+g],oe=L[N+V],_e=L[N+h+V];if(re<oe||_e<j)continue e}var Me=v(z,H);if(Me!==void 0)return Me}}}}function c(h,d,v,x,b,p,C,E,A,L,_){for(var k=2*h,M=E,g=k*E;M<A;++M,g+=k){var P=L[d+g],T=L[d+g+h],z=_[M];e:for(var O=x,V=k*x;O<b;++O,V+=k){var G=p[d+V],Z=p[d+V+h],H=C[O];if(!(T<G||Z<P)){for(var N=d+1;N<h;++N){var j=p[N+V],re=p[N+h+V],oe=L[N+g],_e=L[N+h+g];if(re<oe||_e<j)continue e}var Me=v(H,z);if(Me!==void 0)return Me}}}}function f(h,d,v,x,b,p,C,E,A,L,_){return b-x>A-E?u(h,d,v,x,b,p,C,E,A,L,_):c(h,d,v,x,b,p,C,E,A,L,_)}return f}function s(){function u(v,x,b,p,C,E,A,L,_,k,M){for(var g=2*v,P=p,T=g*p;P<C;++P,T+=g){var z=E[x+T],O=E[x+T+v],V=A[P];e:for(var G=L,Z=g*L;G<_;++G,Z+=g){var H=k[x+Z],N=M[G];if(!(H<=z||O<H)){for(var j=x+1;j<v;++j){var re=E[j+T],oe=E[j+v+T],_e=k[j+Z],Me=k[j+v+Z];if(oe<_e||Me<re)continue e}var ke=b(N,V);if(ke!==void 0)return ke}}}}function c(v,x,b,p,C,E,A,L,_,k,M){for(var g=2*v,P=p,T=g*p;P<C;++P,T+=g){var z=E[x+T],O=E[x+T+v],V=A[P];e:for(var G=L,Z=g*L;G<_;++G,Z+=g){var H=k[x+Z],N=M[G];if(!(H<z||O<H)){for(var j=x+1;j<v;++j){var re=E[j+T],oe=E[j+v+T],_e=k[j+Z],Me=k[j+v+Z];if(oe<_e||Me<re)continue e}var ke=b(V,N);if(ke!==void 0)return ke}}}}function f(v,x,b,p,C,E,A,L,_,k,M){for(var g=2*v,P=L,T=g*L;P<_;++P,T+=g){var z=k[x+T],O=M[P];e:for(var V=p,G=g*p;V<C;++V,G+=g){var Z=E[x+G],H=E[x+G+v],N=A[V];if(!(z<=Z||H<z)){for(var j=x+1;j<v;++j){var re=E[j+G],oe=E[j+v+G],_e=k[j+T],Me=k[j+v+T];if(oe<_e||Me<re)continue e}var ke=b(O,N);if(ke!==void 0)return ke}}}}function h(v,x,b,p,C,E,A,L,_,k,M){for(var g=2*v,P=L,T=g*L;P<_;++P,T+=g){var z=k[x+T],O=M[P];e:for(var V=p,G=g*p;V<C;++V,G+=g){var Z=E[x+G],H=E[x+G+v],N=A[V];if(!(z<Z||H<z)){for(var j=x+1;j<v;++j){var re=E[j+G],oe=E[j+v+G],_e=k[j+T],Me=k[j+v+T];if(oe<_e||Me<re)continue e}var ke=b(N,O);if(ke!==void 0)return ke}}}}function d(v,x,b,p,C,E,A,L,_,k,M,g){return E-C>k-_?p?u(v,x,b,C,E,A,L,_,k,M,g):c(v,x,b,C,E,A,L,_,k,M,g):p?f(v,x,b,C,E,A,L,_,k,M,g):h(v,x,b,C,E,A,L,_,k,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=H;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,C=v("!(lo>=p0)&&!(p1>=hi)"),E=v("lo===p0"),A=v("lo<p0"),L=v("hi<=p0"),_=v("lo<=p0&&p0<=hi"),k=v("lo<p0&&p0<=hi"),M=6,g=2,P=1024,T=s.mallocInt32(P),z=s.mallocDouble(P);function O(N,j){var re=8*l.log2(j+1)*(N+1)|0,oe=l.nextPow2(M*re);T.length<oe&&(s.free(T),T=s.mallocInt32(oe));var _e=l.nextPow2(g*re);z.length<_e&&(s.free(z),z=s.mallocDouble(_e))}function V(N,j,re,oe,_e,Me,ke,me,ie){var Se=M*N;T[Se]=j,T[Se+1]=re,T[Se+2]=oe,T[Se+3]=_e,T[Se+4]=Me,T[Se+5]=ke;var Le=g*N;z[Le]=me,z[Le+1]=ie}function G(N,j,re,oe,_e,Me,ke,me,ie,Se,Le){var Ae=2*N,De=ie*Ae,Pe=Se[De+j];e:for(var ge=_e,Fe=_e*Ae;ge<Me;++ge,Fe+=Ae){var ce=ke[Fe+j],Ze=ke[Fe+j+N];if(!(Pe<ce||Ze<Pe)&&!(oe&&Pe===ce)){for(var ct=me[ge],pt=j+1;pt<N;++pt){var ce=ke[Fe+pt],Ze=ke[Fe+pt+N],Wt=Se[De+pt],st=Se[De+pt+N];if(Ze<Wt||st<ce)continue e}var lt;if(oe?lt=re(Le,ct):lt=re(ct,Le),lt!==void 0)return lt}}}function Z(N,j,re,oe,_e,Me,ke,me,ie,Se){var Le=2*N,Ae=me*Le,De=ie[Ae+j];e:for(var Pe=oe,ge=oe*Le;Pe<_e;++Pe,ge+=Le){var Fe=ke[Pe];if(Fe!==Se){var ce=Me[ge+j],Ze=Me[ge+j+N];if(!(De<ce||Ze<De)){for(var ct=j+1;ct<N;++ct){var ce=Me[ge+ct],Ze=Me[ge+ct+N],pt=ie[Ae+ct],Wt=ie[Ae+ct+N];if(Ze<pt||Wt<ce)continue e}var st=re(Fe,Se);if(st!==void 0)return st}}}}function H(N,j,re,oe,_e,Me,ke,me,ie){O(N,oe+ke);var Se=0,Le=2*N,Ae;for(V(Se++,0,0,oe,0,ke,re?16:0,-1/0,1/0),re||V(Se++,0,0,ke,0,oe,1,-1/0,1/0);Se>0;){Se-=1;var De=Se*M,Pe=T[De],ge=T[De+1],Fe=T[De+2],ce=T[De+3],Ze=T[De+4],ct=T[De+5],pt=Se*g,Wt=z[pt],st=z[pt+1],lt=ct&1,Gt=!!(ct&16),Nt=_e,$t=Me,sr=me,wr=ie;if(lt&&(Nt=me,$t=ie,sr=_e,wr=Me),!(ct&2&&(Fe=A(N,Pe,ge,Fe,Nt,$t,st),ge>=Fe))&&!(ct&4&&(ge=L(N,Pe,ge,Fe,Nt,$t,Wt),ge>=Fe))){var ur=Fe-ge,Qe=Ze-ce;if(Gt){if(N*ur*(ur+Qe)<p){if(Ae=h.scanComplete(N,Pe,j,ge,Fe,Nt,$t,ce,Ze,sr,wr),Ae!==void 0)return Ae;continue}}else if(N*Math.min(ur,Qe)<x){if(Ae=c(N,Pe,j,lt,ge,Fe,Nt,$t,ce,Ze,sr,wr),Ae!==void 0)return Ae;continue}else if(N*ur*Qe<b){if(Ae=h.scanBipartite(N,Pe,j,lt,ge,Fe,Nt,$t,ce,Ze,sr,wr),Ae!==void 0)return Ae;continue}var Et=C(N,Pe,ge,Fe,Nt,$t,Wt,st);if(ge<Et)if(N*(Et-ge)<x){if(Ae=f(N,Pe+1,j,ge,Et,Nt,$t,ce,Ze,sr,wr),Ae!==void 0)return Ae}else if(Pe===N-2){if(lt?Ae=h.sweepBipartite(N,j,ce,Ze,sr,wr,ge,Et,Nt,$t):Ae=h.sweepBipartite(N,j,ge,Et,Nt,$t,ce,Ze,sr,wr),Ae!==void 0)return Ae}else V(Se++,Pe+1,ge,Et,ce,Ze,lt,-1/0,1/0),V(Se++,Pe+1,ce,Ze,ge,Et,lt^1,-1/0,1/0);if(Et<Fe){var er=d(N,Pe,ce,Ze,sr,wr),Ut=sr[Le*er+Pe],Ft=E(N,Pe,er,Ze,sr,wr,Ut);if(Ft<Ze&&V(Se++,Pe,Et,Fe,Ft,Ze,(lt|4)+(Gt?16:0),Ut,st),ce<er&&V(Se++,Pe,Et,Fe,ce,er,(lt|2)+(Gt?16:0),Wt,Ut),er+1===Ft){if(Gt?Ae=Z(N,Pe,j,Et,Fe,Nt,$t,er,sr,wr[er]):Ae=G(N,Pe,j,lt,Et,Fe,Nt,$t,er,sr,wr[er]),Ae!==void 0)return Ae}else if(er<Ft){var bt;if(Gt){if(bt=_(N,Pe,Et,Fe,Nt,$t,Ut),Et<bt){var yt=E(N,Pe,Et,bt,Nt,$t,Ut);if(Pe===N-2){if(Et<yt&&(Ae=h.sweepComplete(N,j,Et,yt,Nt,$t,er,Ft,sr,wr),Ae!==void 0)||yt<bt&&(Ae=h.sweepBipartite(N,j,yt,bt,Nt,$t,er,Ft,sr,wr),Ae!==void 0))return Ae}else Et<yt&&V(Se++,Pe+1,Et,yt,er,Ft,16,-1/0,1/0),yt<bt&&(V(Se++,Pe+1,yt,bt,er,Ft,0,-1/0,1/0),V(Se++,Pe+1,er,Ft,yt,bt,1,-1/0,1/0))}}else lt?bt=k(N,Pe,Et,Fe,Nt,$t,Ut):bt=_(N,Pe,Et,Fe,Nt,$t,Ut),Et<bt&&(Pe===N-2?lt?Ae=h.sweepBipartite(N,j,er,Ft,sr,wr,Et,bt,Nt,$t):Ae=h.sweepBipartite(N,j,Et,bt,Nt,$t,er,Ft,sr,wr):(V(Se++,Pe+1,Et,bt,er,Ft,lt,-1/0,1/0),V(Se++,Pe+1,er,Ft,Et,bt,lt^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 C=2*h,E=C*(v+1)+d,A=v+1;A<x;++A,E+=C)for(var L=b[E],_=A,k=C*(A-1);_>v&&b[k+d]>L;--_,k-=C){for(var M=k,g=k+C,P=0;P<C;++P,++M,++g){var T=b[M];b[M]=b[g],b[g]=T}var z=p[_];p[_]=p[_-1],p[_-1]=z}}function f(h,d,v,x,b,p){if(x<=v+1)return v;for(var C=v,E=x,A=x+v>>>1,L=2*h,_=A,k=b[L*A+d];C<E;){if(E-C<u){c(h,d,C,E,b,p),k=b[L*A+d];break}var M=E-C,g=Math.random()*M+C|0,P=b[L*g+d],T=Math.random()*M+C|0,z=b[L*T+d],O=Math.random()*M+C|0,V=b[L*O+d];P<=z?V>=z?(_=T,k=z):P>=V?(_=g,k=P):(_=O,k=V):z>=V?(_=T,k=z):V>=P?(_=g,k=P):(_=O,k=V);for(var H=L*(E-1),N=L*_,G=0;G<L;++G,++H,++N){var Z=b[H];b[H]=b[N],b[N]=Z}var j=p[E-1];p[E-1]=p[_],p[_]=j,_=l(h,d,C,E-1,b,p,k);for(var H=L*(E-1),N=L*_,G=0;G<L;++G,++H,++N){var Z=b[H];b[H]=b[N],b[N]=Z}var j=p[E-1];if(p[E-1]=p[_],p[_]=j,A<_){for(E=_-1;C<E&&b[L*(E-1)+d]===k;)E-=1;E+=1}else if(_<A)for(C=_+1;C<E&&b[L*C+d]===k;)C+=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,C,E,A){for(var L=2*v,_=L*b,k=_,M=b,g=x,P=v+x,T=b;p>T;++T,_+=L){var z=C[_+g];if(z===A)if(M===T)M+=1,k+=L;else{for(var O=0;L>O;++O){var V=C[_+O];C[_+O]=C[k],C[k++]=V}var G=E[T];E[T]=E[M],E[M++]=G}}return M}function l(v,x,b,p,C,E,A){for(var L=2*v,_=L*b,k=_,M=b,g=x,P=v+x,T=b;p>T;++T,_+=L){var z=C[_+g];if(z<A)if(M===T)M+=1,k+=L;else{for(var O=0;L>O;++O){var V=C[_+O];C[_+O]=C[k],C[k++]=V}var G=E[T];E[T]=E[M],E[M++]=G}}return M}function u(v,x,b,p,C,E,A){for(var L=2*v,_=L*b,k=_,M=b,g=x,P=v+x,T=b;p>T;++T,_+=L){var z=C[_+P];if(z<=A)if(M===T)M+=1,k+=L;else{for(var O=0;L>O;++O){var V=C[_+O];C[_+O]=C[k],C[k++]=V}var G=E[T];E[T]=E[M],E[M++]=G}}return M}function c(v,x,b,p,C,E,A){for(var L=2*v,_=L*b,k=_,M=b,g=x,P=v+x,T=b;p>T;++T,_+=L){var z=C[_+P];if(z<=A)if(M===T)M+=1,k+=L;else{for(var O=0;L>O;++O){var V=C[_+O];C[_+O]=C[k],C[k++]=V}var G=E[T];E[T]=E[M],E[M++]=G}}return M}function f(v,x,b,p,C,E,A){for(var L=2*v,_=L*b,k=_,M=b,g=x,P=v+x,T=b;p>T;++T,_+=L){var z=C[_+g],O=C[_+P];if(z<=A&&A<=O)if(M===T)M+=1,k+=L;else{for(var V=0;L>V;++V){var G=C[_+V];C[_+V]=C[k],C[k++]=G}var Z=E[T];E[T]=E[M],E[M++]=Z}}return M}function h(v,x,b,p,C,E,A){for(var L=2*v,_=L*b,k=_,M=b,g=x,P=v+x,T=b;p>T;++T,_+=L){var z=C[_+g],O=C[_+P];if(z<A&&A<=O)if(M===T)M+=1,k+=L;else{for(var V=0;L>V;++V){var G=C[_+V];C[_+V]=C[k],C[k++]=G}var Z=E[T];E[T]=E[M],E[M++]=Z}}return M}function d(v,x,b,p,C,E,A,L){for(var _=2*v,k=_*b,M=k,g=b,P=x,T=v+x,z=b;p>z;++z,k+=_){var O=C[k+P],V=C[k+T];if(!(O>=A)&&!(L>=V))if(g===z)g+=1,M+=_;else{for(var G=0;_>G;++G){var Z=C[k+G];C[k+G]=C[M],C[M++]=Z}var H=E[z];E[z]=E[g],E[g++]=H}}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 C=2*(x+1),E=x+1;E<=b;++E){for(var A=p[C++],L=p[C++],_=E,k=C-2;_-- >x;){var M=p[k-2],g=p[k-1];if(M<A)break;if(M===A&&g<L)break;p[k]=M,p[k+1]=g,k-=2}p[k]=A,p[k+1]=L}}function l(x,b,p){x*=2,b*=2;var C=p[x],E=p[x+1];p[x]=p[b],p[x+1]=p[b+1],p[b]=C,p[b+1]=E}function u(x,b,p){x*=2,b*=2,p[x]=p[b],p[x+1]=p[b+1]}function c(x,b,p,C){x*=2,b*=2,p*=2;var E=C[x],A=C[x+1];C[x]=C[b],C[x+1]=C[b+1],C[b]=C[p],C[b+1]=C[p+1],C[p]=E,C[p+1]=A}function f(x,b,p,C,E){x*=2,b*=2,E[x]=E[b],E[b]=p,E[x+1]=E[b+1],E[b+1]=C}function h(x,b,p){x*=2,b*=2;var C=p[x],E=p[b];return C<E?!1:C===E?p[x+1]>p[b+1]:!0}function d(x,b,p,C){x*=2;var E=C[x];return E<b?!0:E===b?C[x+1]<p:!1}function v(x,b,p){var C=(b-x+1)/6|0,E=x+C,A=b-C,L=x+b>>1,_=L-C,k=L+C,M=E,g=_,P=L,T=k,z=A,O=x+1,V=b-1,G=0;h(M,g,p)&&(G=M,M=g,g=G),h(T,z,p)&&(G=T,T=z,z=G),h(M,P,p)&&(G=M,M=P,P=G),h(g,P,p)&&(G=g,g=P,P=G),h(M,T,p)&&(G=M,M=T,T=G),h(P,T,p)&&(G=P,P=T,T=G),h(g,z,p)&&(G=g,g=z,z=G),h(g,P,p)&&(G=g,g=P,P=G),h(T,z,p)&&(G=T,T=z,z=G);for(var Z=p[2*g],H=p[2*g+1],N=p[2*T],j=p[2*T+1],re=2*M,oe=2*P,_e=2*z,Me=2*E,ke=2*L,me=2*A,ie=0;ie<2;++ie){var Se=p[re+ie],Le=p[oe+ie],Ae=p[_e+ie];p[Me+ie]=Se,p[ke+ie]=Le,p[me+ie]=Ae}u(_,x,p),u(k,b,p);for(var De=O;De<=V;++De)if(d(De,Z,H,p))De!==O&&l(De,O,p),++O;else if(!d(De,N,j,p))for(;;)if(d(V,N,j,p)){d(V,Z,H,p)?(c(De,O,V,p),++O,--V):(l(De,V,p),--V);break}else{if(--V<De)break;continue}f(x,O-1,Z,H,p),f(b,V+1,N,j,p),O-2-x<=a?s(x,O-2,p):v(x,O-2,p),b-(V+2)<=a?s(V+2,b,p):v(V+2,b,p),V-O<=a?s(O,V,p):v(O,V,p)}},855:function(i,a,o){"use strict";i.exports={init:E,sweepBipartite:_,sweepComplete:k,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),C=s.mallocDouble(f*8);function E(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 z=8*T;C.length<z&&(s.free(C),C=s.mallocDouble(z))}function A(P,T,z,O){var V=T[O],G=P[z-1];P[V]=G,T[G]=V}function L(P,T,z,O){P[z]=O,T[O]=z}function _(P,T,z,O,V,G,Z,H,N,j){for(var re=0,oe=2*P,_e=P-1,Me=oe-1,ke=z;ke<O;++ke){var me=G[ke],ie=oe*ke;C[re++]=V[ie+_e],C[re++]=-(me+1),C[re++]=V[ie+Me],C[re++]=me}for(var ke=Z;ke<H;++ke){var me=j[ke]+c,Se=oe*ke;C[re++]=N[Se+_e],C[re++]=-me,C[re++]=N[Se+Me],C[re++]=me}var Le=re>>>1;u(C,Le);for(var Ae=0,De=0,ke=0;ke<Le;++ke){var Pe=C[2*ke+1]|0;if(Pe>=c)Pe=Pe-c|0,A(v,x,De--,Pe);else if(Pe>=0)A(h,d,Ae--,Pe);else if(Pe<=-c){Pe=-Pe-c|0;for(var ge=0;ge<Ae;++ge){var Fe=T(h[ge],Pe);if(Fe!==void 0)return Fe}L(v,x,De++,Pe)}else{Pe=-Pe-1|0;for(var ge=0;ge<De;++ge){var Fe=T(Pe,v[ge]);if(Fe!==void 0)return Fe}L(h,d,Ae++,Pe)}}}function k(P,T,z,O,V,G,Z,H,N,j){for(var re=0,oe=2*P,_e=P-1,Me=oe-1,ke=z;ke<O;++ke){var me=G[ke]+1<<1,ie=oe*ke;C[re++]=V[ie+_e],C[re++]=-me,C[re++]=V[ie+Me],C[re++]=me}for(var ke=Z;ke<H;++ke){var me=j[ke]+1<<1,Se=oe*ke;C[re++]=N[Se+_e],C[re++]=-me|1,C[re++]=N[Se+Me],C[re++]=me|1}var Le=re>>>1;u(C,Le);for(var Ae=0,De=0,Pe=0,ke=0;ke<Le;++ke){var ge=C[2*ke+1]|0,Fe=ge&1;if(ke<Le-1&&ge>>1===C[2*ke+3]>>1&&(Fe=2,ke+=1),ge<0){for(var ce=-(ge>>1)-1,Ze=0;Ze<Pe;++Ze){var ct=T(b[Ze],ce);if(ct!==void 0)return ct}if(Fe!==0)for(var Ze=0;Ze<Ae;++Ze){var ct=T(h[Ze],ce);if(ct!==void 0)return ct}if(Fe!==1)for(var Ze=0;Ze<De;++Ze){var ct=T(v[Ze],ce);if(ct!==void 0)return ct}Fe===0?L(h,d,Ae++,ce):Fe===1?L(v,x,De++,ce):Fe===2&&L(b,p,Pe++,ce)}else{var ce=(ge>>1)-1;Fe===0?A(h,d,Ae--,ce):Fe===1?A(v,x,De--,ce):Fe===2&&A(b,p,Pe--,ce)}}}function M(P,T,z,O,V,G,Z,H,N,j,re,oe){var _e=0,Me=2*P,ke=T,me=T+P,ie=1,Se=1;O?Se=c:ie=c;for(var Le=V;Le<G;++Le){var Ae=Le+ie,De=Me*Le;C[_e++]=Z[De+ke],C[_e++]=-Ae,C[_e++]=Z[De+me],C[_e++]=Ae}for(var Le=N;Le<j;++Le){var Ae=Le+Se,Pe=Me*Le;C[_e++]=re[Pe+ke],C[_e++]=-Ae}var ge=_e>>>1;u(C,ge);for(var Fe=0,Le=0;Le<ge;++Le){var ce=C[2*Le+1]|0;if(ce<0){var Ae=-ce,Ze=!1;if(Ae>=c?(Ze=!O,Ae-=c):(Ze=!!O,Ae-=1),Ze)L(h,d,Fe++,Ae);else{var ct=oe[Ae],pt=Me*Ae,Wt=re[pt+T+1],st=re[pt+T+1+P];e:for(var lt=0;lt<Fe;++lt){var Gt=h[lt],Nt=Me*Gt;if(!(st<Z[Nt+T+1]||Z[Nt+T+1+P]<Wt)){for(var $t=T+2;$t<P;++$t)if(re[pt+$t+P]<Z[Nt+$t]||Z[Nt+$t+P]<re[pt+$t])continue e;var sr=H[Gt],wr;if(O?wr=z(ct,sr):wr=z(sr,ct),wr!==void 0)return wr}}}}else A(h,d,Fe--,ce-ie)}}function g(P,T,z,O,V,G,Z,H,N,j,re){for(var oe=0,_e=2*P,Me=T,ke=T+P,me=O;me<V;++me){var ie=me+c,Se=_e*me;C[oe++]=G[Se+Me],C[oe++]=-ie,C[oe++]=G[Se+ke],C[oe++]=ie}for(var me=H;me<N;++me){var ie=me+1,Le=_e*me;C[oe++]=j[Le+Me],C[oe++]=-ie}var Ae=oe>>>1;u(C,Ae);for(var De=0,me=0;me<Ae;++me){var Pe=C[2*me+1]|0;if(Pe<0){var ie=-Pe;if(ie>=c)h[De++]=ie-c;else{ie-=1;var ge=re[ie],Fe=_e*ie,ce=j[Fe+T+1],Ze=j[Fe+T+1+P];e:for(var ct=0;ct<De;++ct){var pt=h[ct],Wt=Z[pt];if(Wt===ge)break;var st=_e*pt;if(!(Ze<G[st+T+1]||G[st+T+1+P]<ce)){for(var lt=T+2;lt<P;++lt)if(j[Fe+lt+P]<G[st+lt]||G[st+lt+P]<j[Fe+lt])continue e;var Gt=z(Wt,ge);if(Gt!==void 0)return Gt}}}}else{for(var ie=Pe-c,ct=De-1;ct>=0;--ct)if(h[ct]===ie){for(var lt=ct+1;lt<De;++lt)h[lt-1]=h[lt];break}--De}}}},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,C){return p in b?b[p]:C}function x(b,p,C){Array.isArray(p)?(C=C||{},p=p||[]):(C=p||{},p=[]);var E=!!v(C,"delaunay",!0),A=!!v(C,"interior",!0),L=!!v(C,"exterior",!0),_=!!v(C,"infinity",!1);if(!A&&!L||b.length===0)return[];var k=s(b,p);if(E||A!==L||_){for(var M=l(b.length,d(p)),g=0;g<k.length;++g){var P=k[g];M.addTriangle(P[0],P[1],P[2])}return E&&u(b,M),L?A?_?c(M,0,_):M.cells():c(M,1,_):c(M,-1)}else return k}},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 C=v;v=x,x=C,C=b,b=p,p=C}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],C=1;C<p.length;C+=2){var E=p[C];if(!(E<b)&&!h.isConstraint(b,E)){for(var A=p[C-1],L=-1,_=1;_<p.length;_+=2)if(p[_-1]===E){L=p[_];break}L<0||s(f[b],f[E],f[A],f[L])<0&&d.push(b,E)}}for(;d.length>0;){for(var E=d.pop(),b=d.pop(),A=-1,L=-1,p=x[b],k=1;k<p.length;k+=2){var M=p[k-1],g=p[k];M===E?L=g:g===E&&(A=M)}A<0||L<0||s(f[b],f[E],f[A],f[L])>=0||(h.flip(b,E),u(f,h,d,A,b,L),u(f,h,d,b,L,A),u(f,h,d,L,E,A),u(f,h,d,E,A,L))}}},5023:function(i,a,o){"use strict";var s=o(2478);i.exports=d;function l(v,x,b,p,C,E,A){this.cells=v,this.neighbor=x,this.flags=p,this.constraint=b,this.active=C,this.next=E,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 C=x,E=b,A=p;return b<p?b<x&&(C=b,E=p,A=x):p<x&&(C=p,E=x,A=b),C<0?-1:(v[0]=C,v[1]=E,v[2]=A,s.eq(this.cells,v,c))}}();function f(v,x){for(var b=v.cells(),p=b.length,C=0;C<p;++C){var E=b[C],A=E[0],L=E[1],_=E[2];L<_?L<A&&(E[0]=L,E[1]=_,E[2]=A):_<A&&(E[0]=_,E[1]=A,E[2]=L)}b.sort(c);for(var k=new Array(p),C=0;C<k.length;++C)k[C]=0;var M=[],g=[],P=new Array(3*p),T=new Array(3*p),z=null;x&&(z=[]);for(var O=new l(b,P,T,k,M,g,z),C=0;C<p;++C)for(var E=b[C],V=0;V<3;++V){var A=E[V],L=E[(V+1)%3],G=P[3*C+V]=O.locate(L,A,v.opposite(L,A)),Z=T[3*C+V]=v.isConstraint(A,L);G<0&&(Z?g.push(C):(M.push(C),k[C]=1),x&&z.push([L,A,-1]))}return O}function h(v,x,b){for(var p=0,C=0;C<v.length;++C)x[C]===b&&(v[p++]=v[C]);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 C=1,E=p.active,A=p.next,L=p.flags,_=p.cells,k=p.constraint,M=p.neighbor;E.length>0||A.length>0;){for(;E.length>0;){var g=E.pop();if(L[g]!==-C){L[g]=C;for(var P=_[g],T=0;T<3;++T){var z=M[3*g+T];z>=0&&L[z]===0&&(k[3*g+T]?A.push(z):(E.push(z),L[z]=C))}}}var O=A;A=E,E=O,A.length=0,C=-C}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,_,k,M,g){this.a=L,this.b=_,this.idx=k,this.lowerIds=M,this.upperIds=g}function d(L,_,k,M){this.a=L,this.b=_,this.type=k,this.idx=M}function v(L,_){var k=L.a[0]-_.a[0]||L.a[1]-_.a[1]||L.type-_.type;return k||L.type!==u&&(k=l(L.a,L.b,_.b),k)?k:L.idx-_.idx}function x(L,_){return l(L.a,L.b,_)}function b(L,_,k,M,g){for(var P=s.lt(_,M,x),T=s.gt(_,M,x),z=P;z<T;++z){for(var O=_[z],V=O.lowerIds,Z=V.length;Z>1&&l(k[V[Z-2]],k[V[Z-1]],M)>0;)L.push([V[Z-1],V[Z-2],g]),Z-=1;V.length=Z,V.push(g);for(var G=O.upperIds,Z=G.length;Z>1&&l(k[G[Z-2]],k[G[Z-1]],M)<0;)L.push([G[Z-2],G[Z-1],g]),Z-=1;G.length=Z,G.push(g)}}function p(L,_){var k;return L.a[0]<_.a[0]?k=l(L.a,L.b,_.a):k=l(_.b,_.a,L.a),k||(_.b[0]<L.b[0]?k=l(L.a,L.b,_.b):k=l(_.b,_.a,L.b),k||L.idx-_.idx)}function C(L,_,k){var M=s.le(L,k,p),g=L[M],P=g.upperIds,T=P[P.length-1];g.upperIds=[T],L.splice(M+1,0,new h(k.a,k.b,k.idx,[T],P))}function E(L,_,k){var M=k.a;k.a=k.b,k.b=M;var g=s.eq(L,k,p),P=L[g],T=L[g-1];T.upperIds=P.upperIds,L.splice(g,1)}function A(L,_){for(var k=L.length,M=_.length,g=[],P=0;P<k;++P)g.push(new d(L[P],null,u,P));for(var P=0;P<M;++P){var T=_[P],z=L[T[0]],O=L[T[1]];z[0]<O[0]?g.push(new d(z,O,f,P),new d(O,z,c,P)):z[0]>O[0]&&g.push(new d(O,z,f,P),new d(z,O,c,P))}g.sort(v);for(var V=g[0].a[0]-(1+Math.abs(g[0].a[0]))*Math.pow(2,-52),G=[new h([V,1],[V,0],-1,[],[],[],[])],Z=[],P=0,H=g.length;P<H;++P){var N=g[P],j=N.type;j===u?b(Z,G,L,N.a,N.idx):j===f?C(G,L,N):E(G,L,N)}return Z}},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,C=b.length;p<C;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,C=b.length;p<C;p+=2){var E=b[p],A=b[p+1];v<Math.min(E,A)&&d.push([v,E,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 C=0;C<=p;++C)x[C][p]=x[p][C]=2*u(h[p],h[C]);b[p]=u(h[p],h[p])}for(var E=l(x,b),A=0,L=E[d+1],p=0;p<L.length;++p)A+=L[p];for(var _=new Array(d),p=0;p<d;++p){for(var L=E[p],k=0,C=0;C<L.length;++C)k+=L[C];_[p]=k/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=z;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(O){var V=h(O);return[v(V,-1/0),v(V,1/0)]}function p(O,V){for(var G=new Array(V.length),Z=0;Z<V.length;++Z){var H=V[Z],N=O[H[0]],j=O[H[1]];G[Z]=[v(Math.min(N[0],j[0]),-1/0),v(Math.min(N[1],j[1]),-1/0),v(Math.max(N[0],j[0]),1/0),v(Math.max(N[1],j[1]),1/0)]}return G}function C(O){for(var V=new Array(O.length),G=0;G<O.length;++G){var Z=O[G];V[G]=[v(Z[0],-1/0),v(Z[1],-1/0),v(Z[0],1/0),v(Z[1],1/0)]}return V}function E(O,V,G){var Z=[];return l(G,function(H,N){var j=V[H],re=V[N];if(!(j[0]===re[0]||j[0]===re[1]||j[1]===re[0]||j[1]===re[1])){var oe=O[j[0]],_e=O[j[1]],Me=O[re[0]],ke=O[re[1]];u(oe,_e,Me,ke)&&Z.push([H,N])}}),Z}function A(O,V,G,Z){var H=[];return l(G,Z,function(N,j){var re=V[N];if(!(re[0]===j||re[1]===j)){var oe=O[j],_e=O[re[0]],Me=O[re[1]];u(_e,Me,oe,oe)&&H.push([N,j])}}),H}function L(O,V,G,Z,H){var N,j,re=O.map(function(pt){return[c(pt[0]),c(pt[1])]});for(N=0;N<G.length;++N){var oe=G[N];j=oe[0];var _e=oe[1],Me=V[j],ke=V[_e],me=x(d(O[Me[0]]),d(O[Me[1]]),d(O[ke[0]]),d(O[ke[1]]));if(me){var ie=O.length;O.push([h(me[0]),h(me[1])]),re.push(me),Z.push([j,ie],[_e,ie])}}for(Z.sort(function(pt,Wt){if(pt[0]!==Wt[0])return pt[0]-Wt[0];var st=re[pt[1]],lt=re[Wt[1]];return f(st[0],lt[0])||f(st[1],lt[1])}),N=Z.length-1;N>=0;--N){var Se=Z[N];j=Se[0];var Le=V[j],Ae=Le[0],De=Le[1],Pe=O[Ae],ge=O[De];if((Pe[0]-ge[0]||Pe[1]-ge[1])<0){var Fe=Ae;Ae=De,De=Fe}Le[0]=Ae;var ce=Le[1]=Se[1],Ze;for(H&&(Ze=Le[2]);N>0&&Z[N-1][0]===j;){var Se=Z[--N],ct=Se[1];H?V.push([ce,ct,Ze]):V.push([ce,ct]),ce=ct}H?V.push([ce,De,Ze]):V.push([ce,De])}return re}function _(O,V,G){for(var Z=V.length,H=new s(Z),N=[],j=0;j<V.length;++j){var re=V[j],oe=b(re[0]),_e=b(re[1]);N.push([v(oe[0],-1/0),v(_e[0],-1/0),v(oe[1],1/0),v(_e[1],1/0)])}l(N,function(Se,Le){H.link(Se,Le)});for(var Me=!0,ke=new Array(Z),j=0;j<Z;++j){var me=H.find(j);me!==j&&(Me=!1,O[me]=[Math.min(O[j][0],O[me][0]),Math.min(O[j][1],O[me][1])])}if(Me)return null;for(var ie=0,j=0;j<Z;++j){var me=H.find(j);me===j?(ke[j]=ie,O[ie++]=O[j]):ke[j]=-1}O.length=ie;for(var j=0;j<Z;++j)ke[j]<0&&(ke[j]=ke[H.find(j)]);return ke}function k(O,V){return O[0]-V[0]||O[1]-V[1]}function M(O,V){var G=O[0]-V[0]||O[1]-V[1];return G||(O[2]<V[2]?-1:O[2]>V[2]?1:0)}function g(O,V,G){if(O.length!==0){if(V)for(var Z=0;Z<O.length;++Z){var H=O[Z],N=V[H[0]],j=V[H[1]];H[0]=Math.min(N,j),H[1]=Math.max(N,j)}else for(var Z=0;Z<O.length;++Z){var H=O[Z],N=H[0],j=H[1];H[0]=Math.min(N,j),H[1]=Math.max(N,j)}G?O.sort(M):O.sort(k);for(var re=1,Z=1;Z<O.length;++Z){var oe=O[Z-1],_e=O[Z];_e[0]===oe[0]&&_e[1]===oe[1]&&(!G||_e[2]===oe[2])||(O[re++]=_e)}O.length=re}}function P(O,V,G){var Z=_(O,[],C(O));return g(V,Z,G),!!Z}function T(O,V,G){var Z=p(O,V),H=E(O,V,Z),N=C(O),j=A(O,V,Z,N),re=L(O,V,H,j,G),oe=_(O,re,N);return g(V,oe,G),oe?!0:H.length>0||j.length>0}function z(O,V,G){var Z;if(G){Z=V;for(var H=new Array(V.length),N=0;N<V.length;++N){var j=V[N];H[N]=[j[0],j[1],G[N]]}V=H}for(var re=P(O,V,!!G);T(O,V,!!G);)re=!0;if(G&&re){Z.length=0,G.length=0;for(var N=0;N<V.length;++N){var j=V[N];Z.push([j[0],j[1]]),G.push(j[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,C,E){var A=f(p,b),L=f(E,C),_=v(A,L);if(c(_)===0)return null;var k=f(b,C),M=v(L,k),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,C,E,A,L,g,_,k;if(d||(d={}),L=(d.nshades||72)-1,A=d.format||"hex",E=d.colormap,E||(E="jet"),typeof E=="string"){if(E=E.toLowerCase(),!s[E])throw Error(E+" not a supported colorscale");C=s[E]}else if(Array.isArray(E))C=E.slice();else throw Error("unsupported colormap option",E);if(C.length>L+1)throw new Error(E+" map requires nshades to be at least size "+C.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=C.map(function(z){return Math.round(z.index*L)}),_[0]=Math.min(Math.max(_[0],0),1),_[1]=Math.min(Math.max(_[1],0),1);var M=C.map(function(z,O){var V=C[O].index,G=C[O].rgb.slice();return G.length===4&&G[3]>=0&&G[3]<=1||(G[3]=_[0]+(_[1]-_[0])*V),G}),g=[];for(k=0;k<v.length-1;++k){p=v[k+1]-v[k],x=M[k],b=M[k+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(C[C.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]),C=u(v[1],-x[1]),E=u(b[0],-x[0]),A=u(b[1],-x[1]),L=f(c(p,E),c(C,A));return L[L.length-1]>=0}function d(v,x,b,p){var C=s(x,b,p);if(C===0){var E=l(s(v,x,b)),A=l(s(v,x,p));if(E===A){if(E===0){var L=h(v,x,b),_=h(v,x,p);return L===_?0:L?1:-1}return 0}else{if(A===0)return E>0||h(v,x,p)?-1:1;if(E===0)return A>0||h(v,x,b)?1:-1}return l(A-E)}var k=s(v,x,b);if(k>0)return C>0&&s(v,x,p)>0?1:-1;if(k<0)return C>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],C=l[2],E=l[3],A=u[0],L=u[1],_=u[2],k=u[3];return b+p+C+E-(A+L+_+k)||a(b,p,C,E)-a(A,L,_,k,A)||a(b+p,b+C,b+E,p+C,p+E,C+E)-a(A+L,A+_,A+k,L+_,L+k,_+k)||a(b+p+C,b+p+E,b+C+E,p+C+E)-a(A+L+_,A+L+k,A+_+k,L+_+k);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],C=0;C<p.length;++C){var E=p[C];if(E<x)p[C]=d[E];else{E=E-x;for(var A=0;A<x;++A)E>=d[A]&&(E+=1);p[C]=E}}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,C=v*(3-2*f),E=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]+C*u[A]+E*c[A];return h}return b*s+p*l+C*u+E*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,C=0;C<p;++C){var E=b[C]-x[C];if(E)return E}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),C=1;C<d;++C){var E=b[C-1],A=b[C];p[C-1]=[E[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),C=1,E=0;E<x;++E){for(var A=d[E],L=new Array(b+1),_=0,k=0;k<b;++k){var M=A[k];L[k]=M,_+=M*M}L[b]=_,p[E]=new u(L,E),C=Math.max(_,C)}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)*C,z=new Array(b+1),E=0;E<=b;++E)z[E]=0;z[b]=T,g[0]=z.slice(),P[0]=-1;for(var E=0;E<=b;++E){var L=z.slice();L[E]=1,g[E+1]=L,P[E+1]=-1}for(var E=0;E<x;++E){var O=p[E];g[E+b+1]=O.point,P[E+b+1]=O.index}var V=s(g,!1);if(v?V=V.filter(function(G){for(var Z=0,H=0;H<=b;++H){var N=P[G[H]];if(N<0&&++Z>=2)return!1;G[H]=N}return!0}):V=V.filter(function(G){for(var Z=0;Z<=b;++Z){var H=P[G[Z]];if(H<0)return!1;G[Z]=H}return!0}),b&1)for(var E=0;E<V.length;++E){var O=V[E],L=O[0];O[0]=O[1],O[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 C=function(L,_){return s[0]=L,s[1]=_,o[0]},E=function(L){return o[0]=L,s[0]},A=function(L){return o[0]=L,s[1]};var u=C,c=E,f=A;i.exports=function(_){return o[0]=_,[s[0],s[1]]},i.exports.pack=C,i.exports.lo=E,i.exports.hi=A}else if(s[0]===1072693248){let C=function(L,_){return s[1]=L,s[0]=_,o[0]},E=function(L){return o[0]=L,s[1]},A=function(L){return o[0]=L,s[0]};var h=C,d=E,v=A;i.exports=function(_){return o[0]=_,[s[1],s[0]]},i.exports.pack=C,i.exports.lo=E,i.exports.hi=A}else a=!1}if(!a){let C=function(L,_){return l.writeUInt32LE(L,0,!0),l.writeUInt32LE(_,4,!0),l.readDoubleLE(0,!0)},E=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=C,b=E,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=C,i.exports.lo=E,i.exports.hi=A}i.exports.sign=function(C){return i.exports.hi(C)>>>31},i.exports.exponent=function(C){var E=i.exports.hi(C);return(E<<1>>>21)-1023},i.exports.fraction=function(C){var E=i.exports.lo(C),A=i.exports.hi(C),L=A&(1<<20)-1;return A&2146435072&&(L+=1048576),[E,L]},i.exports.denormalized=function(C){var E=i.exports.hi(C);return!(E&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),C=this._scratch[0],E=this._state,A=this._velocity,L=this.dimension,_=this.bounds;if(p<0)for(var k=L-1,M=0;M<L;++M,--k)C[M]=E[k];else if(p>=b-1)for(var k=E.length-1,g=v-x[b-1],M=0;M<L;++M,--k)C[M]=E[k]+g*A[k];else{for(var k=L*(p+1)-1,P=x[p],T=x[p+1],z=T-P||1,O=this._scratch[1],V=this._scratch[2],G=this._scratch[3],Z=this._scratch[4],H=!0,M=0;M<L;++M,--k)O[M]=E[k],G[M]=A[k]*z,V[M]=E[k+L],Z[M]=A[k+L]*z,H=H&&O[M]===V[M]&&G[M]===Z[M]&&G[M]===0;if(H)for(var M=0;M<L;++M)C[M]=O[M];else s(O,G,V,Z,(v-P)/z,C)}for(var N=_[0],j=_[1],M=0;M<L;++M)C[M]=u(N[M],j[M],C[M]);return C},f.dcurve=function(v){var x=this._time,b=x.length,p=l.le(x,v),C=this._scratch[0],E=this._state,A=this._velocity,L=this.dimension;if(p>=b-1)for(var _=E.length-1,k=v-x[b-1],M=0;M<L;++M,--_)C[M]=A[_];else{for(var _=L*(p+1)-1,g=x[p],P=x[p+1],T=P-g||1,z=this._scratch[1],O=this._scratch[2],V=this._scratch[3],G=this._scratch[4],Z=!0,M=0;M<L;++M,--_)z[M]=E[_],V[M]=A[_]*T,O[M]=E[_+L],G[M]=A[_+L]*T,Z=Z&&z[M]===O[M]&&V[M]===G[M]&&V[M]===0;if(Z)for(var M=0;M<L;++M)C[M]=0;else{s.derivative(z,V,O,G,(v-g)/T,C);for(var M=0;M<L;++M)C[M]/=T}}return C},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,C=this._velocity,E=p.length-this.dimension,A=this.bounds,L=A[0],_=A[1];this._time.push(x,v);for(var k=0;k<2;++k)for(var M=0;M<b;++M)p.push(p[E++]),C.push(0);this._time.push(v);for(var M=b;M>0;--M)p.push(u(L[M-1],_[M-1],arguments[M])),C.push(0)}},f.push=function(v){var x=this.lastT(),b=this.dimension;if(!(v<x||arguments.length!==b+1)){var p=this._state,C=this._velocity,E=p.length-this.dimension,A=v-x,L=this.bounds,_=L[0],k=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],k[g-1],arguments[g]);p.push(P),C.push((P-p[E++])*M)}}},f.set=function(v){var x=this.dimension;if(!(v<this.lastT()||arguments.length!==x+1)){var b=this._state,p=this._velocity,C=this.bounds,E=C[0],A=C[1];this._time.push(v);for(var L=x;L>0;--L)b.push(u(E[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,C=this._velocity,E=p.length-this.dimension,A=this.bounds,L=A[0],_=A[1],k=v-x,M=k>1e-6?1/k: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[E++]+P)),C.push(P*M)}}},f.idle=function(v){var x=this.lastT();if(!(v<x)){var b=this.dimension,p=this._state,C=this._velocity,E=p.length-b,A=this.bounds,L=A[0],_=A[1],k=v-x;this._time.push(v);for(var M=b-1;M>=0;--M)p.push(u(L[M],_[M],p[E]+k*C[E])),C.push(0),E+=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(_,k,M,g,P,T){this._color=_,this.key=k,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(_,k){return new s(_,k.key,k.value,k.left,k.right,k._count)}function c(_){_._count=1+(_.left?_.left._count:0)+(_.right?_.right._count:0)}function f(_,k){this._compare=_,this.root=k}var h=f.prototype;Object.defineProperty(h,"keys",{get:function(){var _=[];return this.forEach(function(k,M){_.push(k)}),_}}),Object.defineProperty(h,"values",{get:function(){var _=[];return this.forEach(function(k,M){_.push(M)}),_}}),Object.defineProperty(h,"length",{get:function(){return this.root?this.root._count:0}}),h.insert=function(_,k){for(var M=this._compare,g=this.root,P=[],T=[];g;){var z=M(_,g.key);P.push(g),T.push(z),z<=0?g=g.left:g=g.right}P.push(new s(a,_,k,null,null,1));for(var O=P.length-2;O>=0;--O){var g=P[O];T[O]<=0?P[O]=new s(g._color,g.key,g.value,P[O+1],g.right,g._count+1):P[O]=new s(g._color,g.key,g.value,g.left,P[O+1],g._count+1)}for(var O=P.length-1;O>1;--O){var V=P[O-1],g=P[O];if(V._color===o||g._color===o)break;var G=P[O-2];if(G.left===V)if(V.left===g){var Z=G.right;if(Z&&Z._color===a)V._color=o,G.right=u(o,Z),G._color=a,O-=1;else{if(G._color=a,G.left=V.right,V._color=o,V.right=G,P[O-2]=V,P[O-1]=g,c(G),c(V),O>=3){var H=P[O-3];H.left===G?H.left=V:H.right=V}break}}else{var Z=G.right;if(Z&&Z._color===a)V._color=o,G.right=u(o,Z),G._color=a,O-=1;else{if(V.right=g.left,G._color=a,G.left=g.right,g._color=o,g.left=V,g.right=G,P[O-2]=g,P[O-1]=V,c(G),c(V),c(g),O>=3){var H=P[O-3];H.left===G?H.left=g:H.right=g}break}}else if(V.right===g){var Z=G.left;if(Z&&Z._color===a)V._color=o,G.left=u(o,Z),G._color=a,O-=1;else{if(G._color=a,G.right=V.left,V._color=o,V.left=G,P[O-2]=V,P[O-1]=g,c(G),c(V),O>=3){var H=P[O-3];H.right===G?H.right=V:H.left=V}break}}else{var Z=G.left;if(Z&&Z._color===a)V._color=o,G.left=u(o,Z),G._color=a,O-=1;else{if(V.left=g.right,G._color=a,G.right=g.left,g._color=o,g.right=V,g.left=G,P[O-2]=g,P[O-1]=V,c(G),c(V),c(g),O>=3){var H=P[O-3];H.right===G?H.right=g:H.left=g}break}}}return P[0]._color=o,new f(M,P[0])};function d(_,k){if(k.left){var M=d(_,k.left);if(M)return M}var M=_(k.key,k.value);if(M)return M;if(k.right)return d(_,k.right)}function v(_,k,M,g){var P=k(_,g.key);if(P<=0){if(g.left){var T=v(_,k,M,g.left);if(T)return T}var T=M(g.key,g.value);if(T)return T}if(g.right)return v(_,k,M,g.right)}function x(_,k,M,g,P){var T=M(_,P.key),z=M(k,P.key),O;if(T<=0&&(P.left&&(O=x(_,k,M,g,P.left),O)||z>0&&(O=g(P.key,P.value),O)))return O;if(z>0&&P.right)return x(_,k,M,g,P.right)}h.forEach=function(k,M,g){if(this.root)switch(arguments.length){case 1:return d(k,this.root);case 2:return v(M,this._compare,k,this.root);case 3:return this._compare(M,g)>=0?void 0:x(M,g,this._compare,k,this.root)}},Object.defineProperty(h,"begin",{get:function(){for(var _=[],k=this.root;k;)_.push(k),k=k.left;return new b(this,_)}}),Object.defineProperty(h,"end",{get:function(){for(var _=[],k=this.root;k;)_.push(k),k=k.right;return new b(this,_)}}),h.at=function(_){if(_<0)return new b(this,[]);for(var k=this.root,M=[];;){if(M.push(k),k.left){if(_<k.left._count){k=k.left;continue}_-=k.left._count}if(!_)return new b(this,M);if(_-=1,k.right){if(_>=k.right._count)break;k=k.right}else break}return new b(this,[])},h.ge=function(_){for(var k=this._compare,M=this.root,g=[],P=0;M;){var T=k(_,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 k=this._compare,M=this.root,g=[],P=0;M;){var T=k(_,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 k=this._compare,M=this.root,g=[],P=0;M;){var T=k(_,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 k=this._compare,M=this.root,g=[],P=0;M;){var T=k(_,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 k=this._compare,M=this.root,g=[];M;){var P=k(_,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 k=this.find(_);return k?k.remove():this},h.get=function(_){for(var k=this._compare,M=this.root;M;){var g=k(_,M.key);if(g===0)return M.value;g<=0?M=M.left:M=M.right}};function b(_,k){this.tree=_,this._stack=k}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 C(_,k){_.key=k.key,_.value=k.value,_.left=k.left,_.right=k.right,_._color=k._color,_._count=k._count}function E(_){for(var k,M,g,P,T=_.length-1;T>=0;--T){if(k=_[T],T===0){k._color=o;return}if(M=_[T-1],M.left===k){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,k._color=o,M._color=o,P._color=o,c(M),c(g),T>1){var z=_[T-2];z.left===M?z.left=g:z.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,k._color=o,c(M),c(g),c(P),T>1){var z=_[T-2];z.left===M?z.left=P:z.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 z=_[T-2];z.left===M?z.left=g:z.right=g}_[T-1]=g,_[T]=M,T+1<_.length?_[T+1]=k:_.push(k),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,k._color=o,M._color=o,P._color=o,c(M),c(g),T>1){var z=_[T-2];z.right===M?z.right=g:z.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,k._color=o,c(M),c(g),c(P),T>1){var z=_[T-2];z.right===M?z.right=P:z.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 z=_[T-2];z.right===M?z.right=g:z.left=g}_[T-1]=g,_[T]=M,T+1<_.length?_[T+1]=k:_.push(k),T=T+2}}}}p.remove=function(){var _=this._stack;if(_.length===0)return this.tree;var k=new Array(_.length),M=_[_.length-1];k[k.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]?k[g]=new s(M._color,M.key,M.value,k[g+1],M.right,M._count):k[g]=new s(M._color,M.key,M.value,M.left,k[g+1],M._count)}if(M=k[k.length-1],M.left&&M.right){var P=k.length;for(M=M.left;M.right;)k.push(M),M=M.right;var T=k[P-1];k.push(new s(M._color,T.key,T.value,M.left,M.right,M._count)),k[P-1].key=M.key,k[P-1].value=M.value;for(var g=k.length-2;g>=P;--g)M=k[g],k[g]=new s(M._color,M.key,M.value,M.left,k[g+1],M._count);k[P-1].left=k[P]}if(M=k[k.length-1],M._color===a){var z=k[k.length-2];z.left===M?z.left=null:z.right===M&&(z.right=null),k.pop();for(var g=0;g<k.length;++g)k[g]._count--;return new f(this.tree._compare,k[0])}else if(M.left||M.right){M.left?C(M,M.left):M.right&&C(M,M.right),M._color=o;for(var g=0;g<k.length-1;++g)k[g]._count--;return new f(this.tree._compare,k[0])}else{if(k.length===1)return new f(this.tree._compare,null);for(var g=0;g<k.length;++g)k[g]._count--;var O=k[k.length-2];E(k),O.left===M?O.left=null:O.right=null}return new f(this.tree._compare,k[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,k=this._stack;if(k.length===0){var M=this.tree.root;return M?M._count:0}else k[k.length-1].left&&(_=k[k.length-1].left._count);for(var g=k.length-2;g>=0;--g)k[g+1]===k[g].right&&(++_,k[g].left&&(_+=k[g].left._count));return _},enumerable:!0}),p.next=function(){var _=this._stack;if(_.length!==0){var k=_[_.length-1];if(k.right)for(k=k.right;k;)_.push(k),k=k.left;else for(_.pop();_.length>0&&_[_.length-1].right===k;)k=_[_.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 k=_.length-1;k>0;--k)if(_[k-1].left===_[k])return!0;return!1}}),p.update=function(_){var k=this._stack;if(k.length===0)throw new Error("Can't update empty node!");var M=new Array(k.length),g=k[k.length-1];M[M.length-1]=new s(g._color,g.key,_,g.left,g.right,g._count);for(var P=k.length-2;P>=0;--P)g=k[P],g.left===k[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 k=_[_.length-1];if(k.left)for(k=k.left;k;)_.push(k),k=k.right;else for(_.pop();_.length>0&&_[_.length-1].left===k;)k=_[_.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 k=_.length-1;k>0;--k)if(_[k-1].right===_[k])return!0;return!1}});function A(_,k){return _<k?-1:_>k?1:0}function L(_){return new f(_||A,null)}},3837:function(i,a,o){"use strict";i.exports=O;var s=o(4935),l=o(501),u=o(5304),c=o(6429),f=o(6444),h=new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]),d=ArrayBuffer,v=DataView;function x(V){return d.isView(V)&&!(V instanceof v)}function b(V){return Array.isArray(V)||x(V)}function p(V,G){return V[0]=G[0],V[1]=G[1],V[2]=G[2],V}function C(V){this.gl=V,this.pixelRatio=1,this.bounds=[[-10,-10,-10],[10,10,10]],this.ticks=[[],[],[]],this.autoTicks=!0,this.tickSpacing=[1,1,1],this.tickEnable=[!0,!0,!0],this.tickFont=["sans-serif","sans-serif","sans-serif"],this.tickFontStyle=["normal","normal","normal"],this.tickFontWeight=["normal","normal","normal"],this.tickFontVariant=["normal","normal","normal"],this.tickSize=[12,12,12],this.tickAngle=[0,0,0],this.tickAlign=["auto","auto","auto"],this.tickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.tickPad=[10,10,10],this.lastCubeProps={cubeEdges:[0,0,0],axis:[0,0,0]},this.labels=["x","y","z"],this.labelEnable=[!0,!0,!0],this.labelFont=["sans-serif","sans-serif","sans-serif"],this.labelFontStyle=["normal","normal","normal"],this.labelFontWeight=["normal","normal","normal"],this.labelFontVariant=["normal","normal","normal"],this.labelSize=[20,20,20],this.labelAngle=[0,0,0],this.labelAlign=["auto","auto","auto"],this.labelColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.labelPad=[10,10,10],this.lineEnable=[!0,!0,!0],this.lineMirror=[!1,!1,!1],this.lineWidth=[1,1,1],this.lineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.lineTickEnable=[!0,!0,!0],this.lineTickMirror=[!1,!1,!1],this.lineTickLength=[0,0,0],this.lineTickWidth=[1,1,1],this.lineTickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.gridEnable=[!0,!0,!0],this.gridWidth=[1,1,1],this.gridColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroEnable=[!0,!0,!0],this.zeroLineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroLineWidth=[2,2,2],this.backgroundEnable=[!1,!1,!1],this.backgroundColor=[[.8,.8,.8,.5],[.8,.8,.8,.5],[.8,.8,.8,.5]],this._firstInit=!0,this._text=null,this._lines=null,this._background=u(V)}var E=C.prototype;E.update=function(V){V=V||{};function G(Ae,De,Pe){if(Pe in V){var ge=V[Pe],Fe=this[Pe],ce;(Ae?b(ge)&&b(ge[0]):b(ge))?this[Pe]=ce=[De(ge[0]),De(ge[1]),De(ge[2])]:this[Pe]=ce=[De(ge),De(ge),De(ge)];for(var Ze=0;Ze<3;++Ze)if(ce[Ze]!==Fe[Ze])return!0}return!1}var Z=G.bind(this,!1,Number),H=G.bind(this,!1,Boolean),N=G.bind(this,!1,String),j=G.bind(this,!0,function(Ae){if(b(Ae)){if(Ae.length===3)return[+Ae[0],+Ae[1],+Ae[2],1];if(Ae.length===4)return[+Ae[0],+Ae[1],+Ae[2],+Ae[3]]}return[0,0,0,1]}),re,oe=!1,_e=!1;if("bounds"in V)for(var Me=V.bounds,ke=0;ke<2;++ke)for(var me=0;me<3;++me)Me[ke][me]!==this.bounds[ke][me]&&(_e=!0),this.bounds[ke][me]=Me[ke][me];if("ticks"in V){re=V.ticks,oe=!0,this.autoTicks=!1;for(var ke=0;ke<3;++ke)this.tickSpacing[ke]=0}else Z("tickSpacing")&&(this.autoTicks=!0,_e=!0);if(this._firstInit&&("ticks"in V||"tickSpacing"in V||(this.autoTicks=!0),_e=!0,oe=!0,this._firstInit=!1),_e&&this.autoTicks&&(re=f.create(this.bounds,this.tickSpacing),oe=!0),oe){for(var ke=0;ke<3;++ke)re[ke].sort(function(De,Pe){return De.x-Pe.x});f.equal(re,this.ticks)?oe=!1:this.ticks=re}H("tickEnable"),N("tickFont")&&(oe=!0),N("tickFontStyle")&&(oe=!0),N("tickFontWeight")&&(oe=!0),N("tickFontVariant")&&(oe=!0),Z("tickSize"),Z("tickAngle"),Z("tickPad"),j("tickColor");var ie=N("labels");N("labelFont")&&(ie=!0),N("labelFontStyle")&&(ie=!0),N("labelFontWeight")&&(ie=!0),N("labelFontVariant")&&(ie=!0),H("labelEnable"),Z("labelSize"),Z("labelPad"),j("labelColor"),H("lineEnable"),H("lineMirror"),Z("lineWidth"),j("lineColor"),H("lineTickEnable"),H("lineTickMirror"),Z("lineTickLength"),Z("lineTickWidth"),j("lineTickColor"),H("gridEnable"),Z("gridWidth"),j("gridColor"),H("zeroEnable"),j("zeroLineColor"),Z("zeroLineWidth"),H("backgroundEnable"),j("backgroundColor");var Se=[{family:this.labelFont[0],style:this.labelFontStyle[0],weight:this.labelFontWeight[0],variant:this.labelFontVariant[0]},{family:this.labelFont[1],style:this.labelFontStyle[1],weight:this.labelFontWeight[1],variant:this.labelFontVariant[1]},{family:this.labelFont[2],style:this.labelFontStyle[2],weight:this.labelFontWeight[2],variant:this.labelFontVariant[2]}],Le=[{family:this.tickFont[0],style:this.tickFontStyle[0],weight:this.tickFontWeight[0],variant:this.tickFontVariant[0]},{family:this.tickFont[1],style:this.tickFontStyle[1],weight:this.tickFontWeight[1],variant:this.tickFontVariant[1]},{family:this.tickFont[2],style:this.tickFontStyle[2],weight:this.tickFontWeight[2],variant:this.tickFontVariant[2]}];this._text?this._text&&(ie||oe)&&this._text.update(this.bounds,this.labels,Se,this.ticks,Le):this._text=s(this.gl,this.bounds,this.labels,Se,this.ticks,Le),this._lines&&oe&&(this._lines.dispose(),this._lines=null),this._lines||(this._lines=l(this.gl,this.bounds,this.ticks))};function 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,G,Z,H,N){for(var j=V.primalOffset,re=V.primalMinor,oe=V.mirrorOffset,_e=V.mirrorMinor,Me=H[G],ke=0;ke<3;++ke)if(G!==ke){var me=j,ie=oe,Se=re,Le=_e;Me&1<<ke&&(me=oe,ie=j,Se=_e,Le=re),me[ke]=Z[0][ke],ie[ke]=Z[1][ke],N[ke]>0?(Se[ke]=-1,Le[ke]=0):(Se[ke]=0,Le[ke]=1)}}var k=[0,0,0],M={model:h,view:h,projection:h,_ortho:!1};E.isOpaque=function(){return!0},E.isTransparent=function(){return!1},E.drawTransparent=function(V){};var g=0,P=[0,0,0],T=[0,0,0],z=[0,0,0];E.draw=function(V){V=V||M;for(var Pe=this.gl,G=V.model||h,Z=V.view||h,H=V.projection||h,N=this.bounds,j=V._ortho||!1,re=c(G,Z,H,N,j),oe=re.cubeEdges,_e=re.axis,Me=Z[12],ke=Z[13],me=Z[14],ie=Z[15],Se=j?2:1,Le=Se*this.pixelRatio*(H[3]*Me+H[7]*ke+H[11]*me+H[15]*ie)/Pe.drawingBufferHeight,Ae=0;Ae<3;++Ae)this.lastCubeProps.cubeEdges[Ae]=oe[Ae],this.lastCubeProps.axis[Ae]=_e[Ae];for(var De=L,Ae=0;Ae<3;++Ae)_(L[Ae],Ae,this.bounds,oe,_e);for(var Pe=this.gl,ge=k,Ae=0;Ae<3;++Ae)this.backgroundEnable[Ae]?ge[Ae]=_e[Ae]:ge[Ae]=0;this._background.draw(G,Z,H,N,ge,this.backgroundColor),this._lines.bind(G,Z,H,this);for(var Ae=0;Ae<3;++Ae){var Fe=[0,0,0];_e[Ae]>0?Fe[Ae]=N[1][Ae]:Fe[Ae]=N[0][Ae];for(var ce=0;ce<2;++ce){var Ze=(Ae+1+ce)%3,ct=(Ae+1+(ce^1))%3;this.gridEnable[Ze]&&this._lines.drawGrid(Ze,ct,this.bounds,Fe,this.gridColor[Ze],this.gridWidth[Ze]*this.pixelRatio)}for(var ce=0;ce<2;++ce){var Ze=(Ae+1+ce)%3,ct=(Ae+1+(ce^1))%3;this.zeroEnable[ct]&&Math.min(N[0][ct],N[1][ct])<=0&&Math.max(N[0][ct],N[1][ct])>=0&&this._lines.drawZero(Ze,ct,this.bounds,Fe,this.zeroLineColor[ct],this.zeroLineWidth[ct]*this.pixelRatio)}}for(var Ae=0;Ae<3;++Ae){this.lineEnable[Ae]&&this._lines.drawAxisLine(Ae,this.bounds,De[Ae].primalOffset,this.lineColor[Ae],this.lineWidth[Ae]*this.pixelRatio),this.lineMirror[Ae]&&this._lines.drawAxisLine(Ae,this.bounds,De[Ae].mirrorOffset,this.lineColor[Ae],this.lineWidth[Ae]*this.pixelRatio);for(var pt=p(P,De[Ae].primalMinor),Wt=p(T,De[Ae].mirrorMinor),st=this.lineTickLength,ce=0;ce<3;++ce){var lt=Le/G[5*ce];pt[ce]*=st[ce]*lt,Wt[ce]*=st[ce]*lt}this.lineTickEnable[Ae]&&this._lines.drawAxisTicks(Ae,De[Ae].primalOffset,pt,this.lineTickColor[Ae],this.lineTickWidth[Ae]*this.pixelRatio),this.lineTickMirror[Ae]&&this._lines.drawAxisTicks(Ae,De[Ae].mirrorOffset,Wt,this.lineTickColor[Ae],this.lineTickWidth[Ae]*this.pixelRatio)}this._lines.unbind(),this._text.bind(G,Z,H,this.pixelRatio);var Gt,Nt=.5,$t,sr;function wr(Ft){sr=[0,0,0],sr[Ft]=1}function ur(Ft,bt,yt){var Yt=(Ft+1)%3,lr=(Ft+2)%3,Tr=bt[Yt],Rr=bt[lr],ei=yt[Yt],Wr=yt[lr];if(Tr>0&&Wr>0){wr(Yt);return}else if(Tr>0&&Wr<0){wr(Yt);return}else if(Tr<0&&Wr>0){wr(Yt);return}else if(Tr<0&&Wr<0){wr(Yt);return}else if(Rr>0&&ei>0){wr(lr);return}else if(Rr>0&&ei<0){wr(lr);return}else if(Rr<0&&ei>0){wr(lr);return}else if(Rr<0&&ei<0){wr(lr);return}}for(var Ae=0;Ae<3;++Ae){for(var Qe=De[Ae].primalMinor,Et=De[Ae].mirrorMinor,er=p(z,De[Ae].primalOffset),ce=0;ce<3;++ce)this.lineTickEnable[Ae]&&(er[ce]+=Le*Qe[ce]*Math.max(this.lineTickLength[ce],0)/G[5*ce]);var Ut=[0,0,0];if(Ut[Ae]=1,this.tickEnable[Ae]){this.tickAngle[Ae]===-3600?(this.tickAngle[Ae]=0,this.tickAlign[Ae]="auto"):this.tickAlign[Ae]=-1,$t=1,Gt=[this.tickAlign[Ae],Nt,$t],Gt[0]==="auto"?Gt[0]=g:Gt[0]=parseInt(""+Gt[0]),sr=[0,0,0],ur(Ae,Qe,Et);for(var ce=0;ce<3;++ce)er[ce]+=Le*Qe[ce]*this.tickPad[ce]/G[5*ce];this._text.drawTicks(Ae,this.tickSize[Ae],this.tickAngle[Ae],er,this.tickColor[Ae],Ut,sr,Gt)}if(this.labelEnable[Ae]){$t=0,sr=[0,0,0],this.labels[Ae].length>4&&(wr(Ae),$t=1),Gt=[this.labelAlign[Ae],Nt,$t],Gt[0]==="auto"?Gt[0]=g:Gt[0]=parseInt(""+Gt[0]);for(var ce=0;ce<3;++ce)er[ce]+=Le*Qe[ce]*this.labelPad[ce]/G[5*ce];er[Ae]+=.5*(N[0][Ae]+N[1][Ae]),this._text.drawLabel(Ae,this.labelSize[Ae],this.labelAngle[Ae],er,this.labelColor[Ae],[0,0,0],sr,Gt)}}this._text.unbind()},E.dispose=function(){this._text.dispose(),this._lines.dispose(),this._background.dispose(),this._lines=null,this._text=null,this._background=null,this.gl=null};function O(V,G){var Z=new C(V);return Z.update(G),Z}},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,C){for(var E=!1,A=0;A<3;++A)E=E||p[A];if(E){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:C},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 C=(p+1)%3,E=(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 k=-1;k<=1;k+=2){A[C]=k;for(var M=-1;M<=1;M+=2)A[E]=M,v.push(A[0],A[1],A[2],L[0],L[1],L[2]),b+=1}var g=C;C=E,E=g}var P=s(d,new Float32Array(v)),T=s(d,new Uint16Array(x),d.ELEMENT_ARRAY_BUFFER),z=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),O=u(d);return O.attributes.position.location=0,O.attributes.normal.location=1,new c(d,P,z,O)}},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 k=0;k<8;++k)h[k]=[1,1,1,1],d[k]=[1,1,1]})();function b(k,M,g){for(var P=0;P<4;++P){k[P]=g[12+P];for(var T=0;T<3;++T)k[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 C(k){for(var M=0;M<p.length;++M)if(k=u.positive(k,p[M]),k.length<3)return 0;for(var g=k[0],P=g[0]/g[3],T=g[1]/g[3],z=0,M=1;M+1<k.length;++M){var O=k[M],V=k[M+1],G=O[0]/O[3],Z=O[1]/O[3],H=V[0]/V[3],N=V[1]/V[3],j=G-P,re=Z-T,oe=H-P,_e=N-T;z+=Math.abs(j*_e-re*oe)}return z}var E=[1,1,1],A=[0,0,0],L={cubeEdges:E,axis:A};function _(k,M,g,P,T){l(f,M,k),l(f,g,f);for(var z=0,O=0;O<2;++O){v[2]=P[O][2];for(var V=0;V<2;++V){v[1]=P[V][1];for(var G=0;G<2;++G)v[0]=P[G][0],b(h[z],v,f),z+=1}}for(var Z=-1,O=0;O<8;++O){for(var H=h[O][3],N=0;N<3;++N)d[O][N]=h[O][N]/H;T&&(d[O][2]*=-1),H<0&&(Z<0||d[O][2]<d[Z][2])&&(Z=O)}if(Z<0){Z=0;for(var j=0;j<3;++j){for(var re=(j+2)%3,oe=(j+1)%3,_e=-1,Me=-1,ke=0;ke<2;++ke){var me=ke<<j,ie=me+(ke<<re)+(1-ke<<oe),Se=me+(1-ke<<re)+(ke<<oe);c(d[me],d[ie],d[Se],x)<0||(ke?_e=1:Me=1)}if(_e<0||Me<0){Me>_e&&(Z|=1<<j);continue}for(var ke=0;ke<2;++ke){var me=ke<<j,ie=me+(ke<<re)+(1-ke<<oe),Se=me+(1-ke<<re)+(ke<<oe),Le=C([h[me],h[ie],h[Se],h[me+(1<<re)+(1<<oe)]]);ke?_e=Le:Me=Le}if(Me>_e){Z|=1<<j;continue}}}for(var Ae=7^Z,De=-1,O=0;O<8;++O)O===Z||O===Ae||(De<0||d[De][1]>d[O][1])&&(De=O);for(var Pe=-1,O=0;O<3;++O){var ge=De^1<<O;if(!(ge===Z||ge===Ae)){Pe<0&&(Pe=ge);var oe=d[ge];oe[0]<d[Pe][0]&&(Pe=ge)}}for(var Fe=-1,O=0;O<3;++O){var ge=De^1<<O;if(!(ge===Z||ge===Ae||ge===Pe)){Fe<0&&(Fe=ge);var oe=d[ge];oe[0]>d[Fe][0]&&(Fe=ge)}}var ce=E;ce[0]=ce[1]=ce[2]=0,ce[s.log2(Pe^De)]=De&Pe,ce[s.log2(De^Fe)]=De&Fe;var Ze=Fe^7;Ze===Z||Ze===Ae?(Ze=Pe^7,ce[s.log2(Fe^Ze)]=Ze&Fe):ce[s.log2(Pe^Ze)]=Ze&Pe;for(var ct=A,pt=Z,j=0;j<3;++j)pt&1<<j?ct[j]=-1:ct[j]=1;return L}},501:function(i,a,o){"use strict";i.exports=E;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,_,k,M,g,P,T){this.gl=A,this.vertBuffer=L,this.vao=_,this.shader=k,this.tickCount=M,this.tickOffset=g,this.gridCount=P,this.gridOffset=T}var C=p.prototype;C.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()},C.unbind=function(){this.vao.unbind()},C.drawAxisLine=function(A,L,_,k,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=k;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)},C.drawAxisTicks=function(A,L,_,k,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=k,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])}},C.drawGrid=function(A,L,_,k,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,k);T[L]+=_[0][L],this.shader.uniforms.offset=T;var z=x(c);z[A]=1,this.shader.uniforms.majorAxis=z;var O=x(h);O[A]=1,this.shader.uniforms.screenAxis=O,this.shader.uniforms.lineWidth=g,this.shader.uniforms.color=M,this.vao.draw(this.gl.TRIANGLES,this.gridCount[A],this.gridOffset[A])}},C.drawZero=function(A,L,_,k,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,k);T[A]+=_[0][A],this.shader.uniforms.offset=T;var z=x(h);z[L]=1,this.shader.uniforms.screenAxis=z,this.shader.uniforms.lineWidth=g,this.shader.uniforms.color=M,this.vao.draw(this.gl.TRIANGLES,6)},C.dispose=function(){this.vao.dispose(),this.vertBuffer.dispose(),this.shader.dispose()};function E(A,L,_){var k=[],M=[0,0,0],g=[0,0,0],P=[0,0,0],T=[0,0,0];k.push(0,0,1,0,1,1,0,0,-1,0,0,-1,0,1,1,0,1,-1);for(var z=0;z<3;++z){for(var G=k.length/3|0,O=0;O<_[z].length;++O){var V=+_[z][O].x;k.push(V,0,1,V,1,1,V,0,-1,V,0,-1,V,1,1,V,1,-1)}var H=k.length/3|0;M[z]=G,g[z]=H-G;for(var G=k.length/3|0,Z=0;Z<_[z].length;++Z){var V=+_[z][Z].x;k.push(V,0,1,V,1,1,V,0,-1,V,0,-1,V,1,1,V,1,-1)}var H=k.length/3|0;P[z]=G,T[z]=H-G}var N=s(A,new Float32Array(k)),j=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,j,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=C;var s=o(2762),l=o(8116),u=o(4359),c=o(1879).Q,f=window||process.global||{},h=f.__TEXT_CACHE||{};f.__TEXT_CACHE={};var d=3;function v(E,A,L,_){this.gl=E,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(E,A,L,_){this.vao.bind(),this.shader.bind();var k=this.shader.uniforms;k.model=E,k.view=A,k.projection=L,k.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(E,A,L,_,k){var M=[];function g(j,re,oe,_e,Me,ke){var me=[oe.style,oe.weight,oe.variant,oe.family].join("_"),ie=h[me];ie||(ie=h[me]={});var Se=ie[re];Se||(Se=ie[re]=p(re,{triangles:!0,font:oe.family,fontStyle:oe.style,fontWeight:oe.weight,fontVariant:oe.variant,textAlign:"center",textBaseline:"middle",lineSpacing:Me,styletags:ke}));for(var Le=(_e||12)/12,Ae=Se.positions,De=Se.cells,Pe=0,ge=De.length;Pe<ge;++Pe)for(var Fe=De[Pe],ce=2;ce>=0;--ce){var Ze=Ae[Fe[ce]];M.push(Le*Ze[0],-Le*Ze[1],j)}}for(var P=[0,0,0],T=[0,0,0],z=[0,0,0],O=[0,0,0],V=1.25,G={breaklines:!0,bolds:!0,italics:!0,subscripts:!0,superscripts:!0},Z=0;Z<3;++Z){z[Z]=M.length/d|0,g(.5*(E[0][Z]+E[1][Z]),A[Z],L[Z],12,V,G),O[Z]=(M.length/d|0)-z[Z],P[Z]=M.length/d|0;for(var H=0;H<_[Z].length;++H)if(_[Z][H].text){var N={family:_[Z][H].font||k[Z].family,style:k[Z].fontStyle||k[Z].style,weight:k[Z].fontWeight||k[Z].weight,variant:k[Z].fontVariant||k[Z].variant};g(_[Z][H].x,_[Z][H].text,N,_[Z][H].fontSize||12,V,G)}T[Z]=(M.length/d|0)-P[Z]}this.buffer.update(M),this.tickOffset=P,this.tickCount=T,this.labelOffset=z,this.labelCount=O},x.drawTicks=function(E,A,L,_,k,M,g,P){this.tickCount[E]&&(this.shader.uniforms.axis=M,this.shader.uniforms.color=k,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[E],this.tickOffset[E]))},x.drawLabel=function(E,A,L,_,k,M,g,P){this.labelCount[E]&&(this.shader.uniforms.axis=M,this.shader.uniforms.color=k,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[E],this.labelOffset[E]))},x.dispose=function(){this.shader.dispose(),this.vao.dispose(),this.buffer.dispose()};function p(E,A){try{return u(E,A)}catch(L){return console.warn('error vectorizing text:"'+E+'" error:',L),{cells:[],positions:[]}}}function C(E,A,L,_,k,M){var g=s(E),P=l(E,[{buffer:g,size:3}]),T=c(E);T.attributes.position.location=0;var z=new v(E,T,g,P);return z.update(A,L,_,k,M),z}},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,C=x%v;x<0?(p=-Math.ceil(p)|0,C=-C|0):(p=Math.floor(p)|0,C=C|0);var E=""+p;if(x<0&&(E="-"+E),d){for(var A=""+C;A.length<d;)A="0"+A;return E+"."+A}else return E}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(_,k,M){this.lo=_,this.hi=k,this.pixelsPerDataUnit=M}var b=[0,0,0,1],p=[0,0,0,1];function C(_,k,M,g,P){for(var T=0;T<3;++T){for(var z=b,O=p,V=0;V<3;++V)O[V]=z[V]=M[V];O[3]=z[3]=1,O[T]+=1,h(O,O,k),O[3]<0&&(_[T]=1/0),z[T]-=1,h(z,z,k),z[3]<0&&(_[T]=1/0);var G=(z[0]/z[3]-O[0]/O[3])*g,Z=(z[1]/z[3]-O[1]/O[3])*P;_[T]=.25*Math.sqrt(G*G+Z*Z)}return _}var E=[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(_,k,M,g,Z){var T=k.model||d,z=k.view||d,O=k.projection||d,V=k._ortho||!1,G=_.bounds,Z=Z||u(T,z,O,G,V),H=Z.axis;c(v,z,T),c(v,O,v);for(var N=E,j=0;j<3;++j)N[j].lo=1/0,N[j].hi=-1/0,N[j].pixelsPerDataUnit=1/0;var re=s(f(v,v));f(v,v);for(var oe=0;oe<3;++oe){var _e=(oe+1)%3,Me=(oe+2)%3,ke=A;e:for(var j=0;j<2;++j){var me=[];if(H[oe]<0!=!!j){ke[oe]=G[j][oe];for(var ie=0;ie<2;++ie){ke[_e]=G[ie^j][_e];for(var Se=0;Se<2;++Se)ke[Me]=G[Se^ie^j][Me],me.push(ke.slice())}for(var Le=V?5:4,ie=Le;ie===Le;++ie){if(me.length===0)continue e;me=l.positive(me,re[ie])}for(var ie=0;ie<me.length;++ie)for(var Me=me[ie],Ae=C(A,v,Me,M,g),Se=0;Se<3;++Se)N[Se].lo=Math.min(N[Se].lo,Me[Se]),N[Se].hi=Math.max(N[Se].hi,Me[Se]),Se!==oe&&(N[Se].pixelsPerDataUnit=Math.min(N[Se].pixelsPerDataUnit,Math.abs(Ae[Se])))}}}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,C,E,A,L){this.gl=p,this.type=C,this.handle=E,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,C,E,A,L,_){var k=L.length*L.BYTES_PER_ELEMENT;if(_<0)return p.bufferData(C,L,A),k;if(k+_>E)throw new Error("gl-buffer: If resizing buffer, must not specify offset");return p.bufferSubData(C,_,L),E}function v(p,C){for(var E=s.malloc(p.length,C),A=p.length,L=0;L<A;++L)E[L]=p[L];return E}function x(p,C){for(var E=1,A=C.length-1;A>=0;--A){if(C[A]!==E)return!1;E*=p[A]}return!0}h.update=function(p,C){if(typeof C!="number"&&(C=-1),this.bind(),typeof p=="object"&&typeof p.shape!="undefined"){var E=p.dtype;if(c.indexOf(E)<0&&(E="float32"),this.type===this.gl.ELEMENT_ARRAY_BUFFER){var A=gl.getExtension("OES_element_index_uint");A&&E!=="uint16"?E="uint32":E="uint16"}if(E===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,C):this.length=d(this.gl,this.type,this.length,this.usage,p.data.subarray(p.offset,p.shape[0]),C);else{var L=s.malloc(p.size,E),_=u(L,p.shape);l.assign(_,p),C<0?this.length=d(this.gl,this.type,this.length,this.usage,L,C):this.length=d(this.gl,this.type,this.length,this.usage,L.subarray(0,p.size),C),s.free(L)}}else if(Array.isArray(p)){var k;this.type===this.gl.ELEMENT_ARRAY_BUFFER?k=v(p,"uint16"):k=v(p,"float32"),C<0?this.length=d(this.gl,this.type,this.length,this.usage,k,C):this.length=d(this.gl,this.type,this.length,this.usage,k.subarray(0,p.length),C),s.free(k)}else if(typeof p=="object"&&typeof p.length=="number")this.length=d(this.gl,this.type,this.length,this.usage,p,C);else if(typeof p=="number"||p===void 0){if(C>=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,C,E,A){if(E=E||p.ARRAY_BUFFER,A=A||p.DYNAMIC_DRAW,E!==p.ARRAY_BUFFER&&E!==p.ELEMENT_ARRAY_BUFFER)throw new Error("gl-buffer: Invalid type for webgl buffer, must be either gl.ARRAY_BUFFER or gl.ELEMENT_ARRAY_BUFFER");if(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,E,L,0,A);return _.update(C),_}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,C=-1/0,E=1/0,A=-1/0,L=null,_=null,k=[],M=1/0,g=!1,P=u.coneSizemode==="raw",T=0;T<f.length;T++){var z=f[T];x=Math.min(z[0],x),b=Math.max(z[0],b),p=Math.min(z[1],p),C=Math.max(z[1],C),E=Math.min(z[2],E),A=Math.max(z[2],A);var O=h[T];if(s.length(O)>v&&(v=s.length(O)),T&&!P){var V=2*s.distance(L,z)/(s.length(_)+s.length(O));V?(M=Math.min(M,V),g=!1):g=!0}g||(L=z,_=O),k.push(O)}var G=[x,p,E],Z=[b,C,A];c&&(c[0]=G,c[1]=Z),v===0&&(v=1);var H=1/v;isFinite(M)||(M=1),d.vectorScale=M;var N=u.coneSize||(P?1:.5);u.absoluteConeSize&&(N=u.absoluteConeSize*H),d.coneScale=N;for(var T=0,j=0;T<f.length;T++)for(var z=f[T],re=z[0],oe=z[1],_e=z[2],Me=k[T],ke=s.length(Me)*H,me=0,ie=8;me<ie;me++){d.positions.push([re,oe,_e,j++]),d.positions.push([re,oe,_e,j++]),d.positions.push([re,oe,_e,j++]),d.positions.push([re,oe,_e,j++]),d.positions.push([re,oe,_e,j++]),d.positions.push([re,oe,_e,j++]),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 Se=d.positions.length;d.cells.push([Se-6,Se-5,Se-4],[Se-3,Se-2,Se-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(k,M,g,P,T,z,O,V,G,Z,H){this.gl=k,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=z,this.triangleColors=V,this.triangleUVs=G,this.triangleIds=O,this.triangleVAO=Z,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=H,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(k){this.pickId=k};function C(k){for(var M=v({colormap:k,nshades:256,format:"rgba"}),g=new Uint8Array(256*4),P=0;P<256;++P){for(var T=M[P],z=0;z<3;++z)g[4*P+z]=T[z];g[4*P+3]=T[3]*255}return d(g,[256,256,4],[4,0,1])}function E(k){for(var M=k.length,g=new Array(M),P=0;P<M;++P)g[P]=k[P][2];return g}p.update=function(k){k=k||{};var M=this.gl;this.dirty=!0,"lightPosition"in k&&(this.lightPosition=k.lightPosition),"opacity"in k&&(this.opacity=k.opacity),"ambient"in k&&(this.ambientLight=k.ambient),"diffuse"in k&&(this.diffuseLight=k.diffuse),"specular"in k&&(this.specularLight=k.specular),"roughness"in k&&(this.roughness=k.roughness),"fresnel"in k&&(this.fresnel=k.fresnel),k.tubeScale!==void 0&&(this.tubeScale=k.tubeScale),k.vectorScale!==void 0&&(this.vectorScale=k.vectorScale),k.coneScale!==void 0&&(this.coneScale=k.coneScale),k.coneOffset!==void 0&&(this.coneOffset=k.coneOffset),k.colormap&&(this.texture.shape=[256,256],this.texture.minFilter=M.LINEAR_MIPMAP_LINEAR,this.texture.magFilter=M.LINEAR,this.texture.setPixels(C(k.colormap)),this.texture.generateMipmap());var g=k.cells,P=k.positions,T=k.vectors;if(!(!P||!g||!T)){var z=[],O=[],V=[],G=[],Z=[];this.cells=g,this.positions=P,this.vectors=T;var H=k.meshColor||[1,1,1,1],N=k.vertexIntensity,j=1/0,re=-1/0;if(N)if(k.vertexIntensityBounds)j=+k.vertexIntensityBounds[0],re=+k.vertexIntensityBounds[1];else for(var oe=0;oe<N.length;++oe){var _e=N[oe];j=Math.min(j,_e),re=Math.max(re,_e)}else for(var oe=0;oe<P.length;++oe){var _e=P[oe][2];j=Math.min(j,_e),re=Math.max(re,_e)}N?this.intensity=N:this.intensity=E(P),this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]];for(var oe=0;oe<P.length;++oe)for(var Me=P[oe],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 me=0;e:for(var oe=0;oe<g.length;++oe){var ie=g[oe];switch(ie.length){case 3:for(var ke=0;ke<3;++ke)for(var Se=ie[ke],Me=P[Se],Le=0;Le<3;++Le)if(isNaN(Me[Le])||!isFinite(Me[Le]))continue e;for(var ke=0;ke<3;++ke){var Se=ie[2-ke],Me=P[Se];z.push(Me[0],Me[1],Me[2],Me[3]);var Ae=T[Se];O.push(Ae[0],Ae[1],Ae[2],Ae[3]||0);var De=H;De.length===3?V.push(De[0],De[1],De[2],1):V.push(De[0],De[1],De[2],De[3]);var Pe;N?Pe=[(N[Se]-j)/(re-j),0]:Pe=[(Me[2]-j)/(re-j),0],G.push(Pe[0],Pe[1]),Z.push(oe)}me+=1;break;default:break}}this.triangleCount=me,this.trianglePositions.update(z),this.triangleVectors.update(O),this.triangleColors.update(V),this.triangleUVs.update(G),this.triangleIds.update(new Uint32Array(Z))}},p.drawTransparent=p.draw=function(k){k=k||{};for(var M=this.gl,g=k.model||x,P=k.view||x,T=k.projection||x,z=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],O=0;O<3;++O)z[0][O]=Math.max(z[0][O],this.clipBounds[0][O]),z[1][O]=Math.min(z[1][O],this.clipBounds[1][O]);var V={model:g,view:P,projection:T,inverseModel:x.slice(),clipBounds:z,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 G=new Array(16);f(G,V.view,V.model),f(G,V.projection,G),h(G,G);for(var O=0;O<3;++O)V.eyePosition[O]=G[12+O]/G[15];for(var Z=G[15],O=0;O<3;++O)Z+=this.lightPosition[O]*G[4*O+3];for(var O=0;O<3;++O){for(var H=G[12+O],N=0;N<3;++N)H+=G[4*N+O]*this.lightPosition[N];V.lightPosition[O]=H/Z}if(this.triangleCount>0){var j=this.triShader;j.bind(),j.uniforms=V,this.triangleVAO.bind(),M.drawArrays(M.TRIANGLES,0,this.triangleCount*3),this.triangleVAO.unbind()}},p.drawPick=function(k){k=k||{};for(var M=this.gl,g=k.model||x,P=k.view||x,T=k.projection||x,z=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],O=0;O<3;++O)z[0][O]=Math.max(z[0][O],this.clipBounds[0][O]),z[1][O]=Math.min(z[1][O],this.clipBounds[1][O]);this._model=[].slice.call(g),this._view=[].slice.call(P),this._projection=[].slice.call(T),this._resolution=[M.drawingBufferWidth,M.drawingBufferHeight];var V={model:g,view:P,projection:T,clipBounds:z,tubeScale:this.tubeScale,vectorScale:this.vectorScale,coneScale:this.coneScale,coneOffset:this.coneOffset,pickId:this.pickId/255},G=this.pickShader;G.bind(),G.uniforms=V,this.triangleCount>0&&(this.triangleVAO.bind(),M.drawArrays(M.TRIANGLES,0,this.triangleCount*3),this.triangleVAO.unbind())},p.pick=function(k){if(!k||k.id!==this.pickId)return null;var M=k.value[0]+256*k.value[1]+65536*k.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(k,M){var g=s(k,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(k,M){var g=s(k,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 _(k,M,g){var P=g.shaders;arguments.length===1&&(M=k,k=M.gl);var T=A(k,P),z=L(k,P),O=c(k,d(new Uint8Array([255,255,255,255]),[1,1,4]));O.generateMipmap(),O.minFilter=k.LINEAR_MIPMAP_LINEAR,O.magFilter=k.LINEAR;var V=l(k),G=l(k),Z=l(k),H=l(k),N=l(k),j=u(k,[{buffer:V,type:k.FLOAT,size:4},{buffer:N,type:k.UNSIGNED_BYTE,size:4,normalized:!0},{buffer:Z,type:k.FLOAT,size:4},{buffer:H,type:k.FLOAT,size:2},{buffer:G,type:k.FLOAT,size:4}]),re=new b(k,O,T,z,V,G,N,Z,H,j,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,C,E,A){this.gl=p,this.shader=A,this.buffer=C,this.vao=E,this.pixelRatio=1,this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.lineWidth=[1,1,1],this.capSize=[10,10,10],this.lineCount=[0,0,0],this.lineOffset=[0,0,0],this.opacity=1,this.hasAlpha=!1}var h=f.prototype;h.isOpaque=function(){return!this.hasAlpha},h.isTransparent=function(){return this.hasAlpha},h.drawTransparent=h.draw=function(p){var C=this.gl,E=this.shader.uniforms;this.shader.bind();var A=E.view=p.view||c,L=E.projection=p.projection||c;E.model=p.model||c,E.clipBounds=this.clipBounds,E.opacity=this.opacity;var _=A[12],k=A[13],M=A[14],g=A[15],P=p._ortho||!1,T=P?2:1,z=T*this.pixelRatio*(L[3]*_+L[7]*k+L[11]*M+L[15]*g)/C.drawingBufferHeight;this.vao.bind();for(var O=0;O<3;++O)C.lineWidth(this.lineWidth[O]*this.pixelRatio),E.capSize=this.capSize[O]*z,this.lineCount[O]&&C.drawArrays(C.LINES,this.lineOffset[O],this.lineCount[O]);this.vao.unbind()};function d(p,C){for(var E=0;E<3;++E)p[0][E]=Math.min(p[0][E],C[E]),p[1][E]=Math.max(p[1][E],C[E])}var v=function(){for(var p=new Array(3),C=0;C<3;++C){for(var E=[],A=1;A<=2;++A)for(var L=-1;L<=1;L+=2){var _=(A+C)%3,k=[0,0,0];k[_]=L,E.push(k)}p[C]=E}return p}();function x(p,C,E,A){for(var L=v[A],_=0;_<L.length;++_){var k=L[_];p.push(C[0],C[1],C[2],E[0],E[1],E[2],E[3],k[0],k[1],k[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 C=p.color||[[0,0,0],[0,0,0],[0,0,0]],E=p.position,A=p.error;if(Array.isArray(C[0])||(C=[C,C,C]),E&&A){var L=[],_=E.length,k=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]=k;e:for(var g=0;g<_;++g){for(var P=E[g],T=0;T<3;++T)if(isNaN(P[T])||!isFinite(P[T]))continue e;var z=A[g],O=C[M];if(Array.isArray(O[0])&&(O=C[g]),O.length===3?O=[O[0],O[1],O[2],1]:O.length===4&&(O=[O[0],O[1],O[2],O[3]],!this.hasAlpha&&O[3]<1&&(this.hasAlpha=!0)),!(isNaN(z[0][M])||isNaN(z[1][M]))){if(z[0][M]<0){var V=P.slice();V[M]+=z[0][M],L.push(P[0],P[1],P[2],O[0],O[1],O[2],O[3],0,0,0,V[0],V[1],V[2],O[0],O[1],O[2],O[3],0,0,0),d(this.bounds,V),k+=2+x(L,V,O,M)}if(z[1][M]>0){var V=P.slice();V[M]+=z[1][M],L.push(P[0],P[1],P[2],O[0],O[1],O[2],O[3],0,0,0,V[0],V[1],V[2],O[0],O[1],O[2],O[3],0,0,0),d(this.bounds,V),k+=2+x(L,V,O,M)}}}this.lineCount[M]=k-this.lineOffset[M]}this.buffer.update(L)}},h.dispose=function(){this.shader.dispose(),this.buffer.dispose(),this.vao.dispose()};function b(p){var C=p.gl,E=s(C),A=l(C,[{buffer:E,type:C.FLOAT,size:3,offset:0,stride:40},{buffer:E,type:C.FLOAT,size:4,offset:12,stride:40},{buffer:E,type:C.FLOAT,size:3,offset:28,stride:40}]),L=u(C);L.attributes.position.location=0,L.attributes.color.location=1,L.attributes.offset.location=2;var _=new f(C,E,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=k;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 z=new Array(P),O=0;O<T;++O)z[O]=M.COLOR_ATTACHMENT0+O;for(var O=T;O<P;++O)z[O]=M.NONE;l[T]=z}}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,z,O){if(!T)return null;var V=s(M,g,P,z,T);return V.magFilter=M.NEAREST,V.minFilter=M.NEAREST,V.mipSamples=1,V.bind(),M.framebufferTexture2D(M.FRAMEBUFFER,O,M.TEXTURE_2D,V.handle,0),V}function C(M,g,P,T,z){var O=M.createRenderbuffer();return M.bindRenderbuffer(M.RENDERBUFFER,O),M.renderbufferStorage(M.RENDERBUFFER,T,g,P),M.framebufferRenderbuffer(M.FRAMEBUFFER,z,M.RENDERBUFFER,O),O}function E(M){var g=d(M.gl),P=M.gl,T=M.handle=P.createFramebuffer(),z=M._shape[0],O=M._shape[1],V=M.color.length,G=M._ext,Z=M._useStencil,H=M._useDepth,N=M._colorType;P.bindFramebuffer(P.FRAMEBUFFER,T);for(var j=0;j<V;++j)M.color[j]=p(P,z,O,N,P.RGBA,P.COLOR_ATTACHMENT0+j);V===0?(M._color_rb=C(P,z,O,P.RGBA4,P.COLOR_ATTACHMENT0),G&&G.drawBuffersWEBGL(l[0])):V>1&&G.drawBuffersWEBGL(l[V]);var re=P.getExtension("WEBGL_depth_texture");re?Z?M.depth=p(P,z,O,re.UNSIGNED_INT_24_8_WEBGL,P.DEPTH_STENCIL,P.DEPTH_STENCIL_ATTACHMENT):H&&(M.depth=p(P,z,O,P.UNSIGNED_SHORT,P.DEPTH_COMPONENT,P.DEPTH_ATTACHMENT)):H&&Z?M._depth_rb=C(P,z,O,P.DEPTH_STENCIL,P.DEPTH_STENCIL_ATTACHMENT):H?M._depth_rb=C(P,z,O,P.DEPTH_COMPONENT16,P.DEPTH_ATTACHMENT):Z&&(M._depth_rb=C(P,z,O,P.STENCIL_INDEX,P.STENCIL_ATTACHMENT));var oe=P.checkFramebufferStatus(P.FRAMEBUFFER);if(oe!==P.FRAMEBUFFER_COMPLETE){M._destroyed=!0,P.bindFramebuffer(P.FRAMEBUFFER,null),P.deleteFramebuffer(M.handle),M.handle=null,M.depth&&(M.depth.dispose(),M.depth=null),M._depth_rb&&(P.deleteRenderbuffer(M._depth_rb),M._depth_rb=null);for(var j=0;j<M.color.length;++j)M.color[j].dispose(),M.color[j]=null;M._color_rb&&(P.deleteRenderbuffer(M._color_rb),M._color_rb=null),v(P,g),b(oe)}v(P,g)}function A(M,g,P,T,z,O,V,G){this.gl=M,this._shape=[g|0,P|0],this._destroyed=!1,this._ext=G,this.color=new Array(z);for(var Z=0;Z<z;++Z)this.color[Z]=null;this._color_rb=null,this.depth=null,this._depth_rb=null,this._colorType=T,this._useDepth=O,this._useStencil=V;var H=this,N=[g|0,P|0];Object.defineProperties(N,{0:{get:function(){return H._shape[0]},set:function(j){return H.width=j}},1:{get:function(){return H._shape[1]},set:function(j){return H.height=j}}}),this._shapeVector=N,E(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,z=T.getParameter(T.MAX_RENDERBUFFER_SIZE);if(g<0||g>z||P<0||P>z)throw new Error("gl-fbo: Can't resize FBO, invalid dimensions");M._shape[0]=g,M._shape[1]=P;for(var O=d(T),V=0;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 G=T.checkFramebufferStatus(T.FRAMEBUFFER);G!==T.FRAMEBUFFER_COMPLETE&&(M.dispose(),v(T,O),b(G)),v(T,O)}}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 k(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 z=M.getExtension("WEBGL_draw_buffers");if(!l&&z&&x(M,z),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 O=M.getParameter(M.MAX_RENDERBUFFER_SIZE);if(g<0||g>O||P<0||P>O)throw new Error("gl-fbo: Parameters are too large for FBO");T=T||{};var V=1;if("color"in T){if(V=Math.max(T.color|0,0),V<0)throw new Error("gl-fbo: Must specify a nonnegative number of colors");if(V>1)if(z){if(V>M.getParameter(z.MAX_COLOR_ATTACHMENTS_WEBGL))throw new Error("gl-fbo: Context does not support "+V+" draw buffers")}else throw new Error("gl-fbo: Multiple draw buffer extension not supported")}var G=M.UNSIGNED_BYTE,Z=M.getExtension("OES_texture_float");if(T.float&&V>0){if(!Z)throw new Error("gl-fbo: Context does not support floating point textures");G=M.FLOAT}else T.preferFloat&&V>0&&Z&&(G=M.FLOAT);var H=!0;"depth"in T&&(H=!!T.depth);var N=!1;return"stencil"in T&&(N=!!T.stencil),new A(M,g,P,G,V,H,N,z)}},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),C=s("%s%s",p,h),E=h.split(`
|
||
`),A={},L=0;L<E.length;L++){var _=E[L];if(!(_===""||_==="\0")){var k=parseInt(_.split(":")[2]);if(isNaN(k))throw new Error(s("Could not parse error: %s",_));A[k]=_}}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:C.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,z){return c[0]=z,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,C=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function E(g,P){for(var T=0,z=0;z<3;++z){var O=g[z]-P[z];T+=O*O}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,z){this.arcLength=g,this.position=P,this.index=T,this.dataCoordinate=z}function _(g,P,T,z,O,V){this.gl=g,this.shader=P,this.pickShader=T,this.buffer=z,this.vao=O,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 k=_.prototype;k.isTransparent=function(){return this.hasAlpha},k.isOpaque=function(){return!this.hasAlpha},k.pickSlots=1,k.setPickBase=function(g){this.pickId=g},k.drawTransparent=k.draw=function(g){if(this.vertexCount){var P=this.gl,T=this.shader,z=this.vao;T.bind(),T.uniforms={model:g.model||C,view:g.view||C,projection:g.projection||C,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},z.bind(),z.draw(P.TRIANGLE_STRIP,this.vertexCount),z.unbind()}},k.drawPick=function(g){if(this.vertexCount){var P=this.gl,T=this.pickShader,z=this.vao;T.bind(),T.uniforms={model:g.model||C,view:g.view||C,projection:g.projection||C,pickId:this.pickId,clipBounds:A(this.clipBounds),screenShape:[P.drawingBufferWidth,P.drawingBufferHeight],pixelRatio:this.pixelRatio},z.bind(),z.draw(P.TRIANGLE_STRIP,this.vertexCount),z.unbind()}},k.update=function(g){var P,T;this.dirty=!0;var z=!!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 O=[],V=[],G=[],Z=0,H=0,N=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],j=g.position||g.positions;if(j){var re=g.color||g.colors||[0,0,0,1],oe=g.lineWidth||1,_e=!1;e:for(P=1;P<j.length;++P){var Me=j[P-1],ke=j[P];for(V.push(Z),G.push(Me.slice()),T=0;T<3;++T){if(isNaN(Me[T])||isNaN(ke[T])||!isFinite(Me[T])||!isFinite(ke[T])){if(!z&&O.length>0){for(var me=0;me<24;++me)O.push(O[O.length-12]);H+=2,_e=!0}continue e}N[0][T]=Math.min(N[0][T],Me[T],ke[T]),N[1][T]=Math.max(N[1][T],Me[T],ke[T])}var ie,Se;Array.isArray(re[0])?(ie=re.length>P-1?re[P-1]:re.length>0?re[re.length-1]:[0,0,0,1],Se=re.length>P?re[P]:re.length>0?re[re.length-1]:[0,0,0,1]):ie=Se=re,ie.length===3&&(ie=[ie[0],ie[1],ie[2],1]),Se.length===3&&(Se=[Se[0],Se[1],Se[2],1]),!this.hasAlpha&&ie[3]<1&&(this.hasAlpha=!0);var Le;Array.isArray(oe)?Le=oe.length>P-1?oe[P-1]:oe.length>0?oe[oe.length-1]:[0,0,0,1]:Le=oe;var Ae=Z;if(Z+=E(Me,ke),_e){for(T=0;T<2;++T)O.push(Me[0],Me[1],Me[2],ke[0],ke[1],ke[2],Ae,Le,ie[0],ie[1],ie[2],ie[3]);H+=2,_e=!1}O.push(Me[0],Me[1],Me[2],ke[0],ke[1],ke[2],Ae,Le,ie[0],ie[1],ie[2],ie[3],Me[0],Me[1],Me[2],ke[0],ke[1],ke[2],Ae,-Le,ie[0],ie[1],ie[2],ie[3],ke[0],ke[1],ke[2],Me[0],Me[1],Me[2],Z,-Le,Se[0],Se[1],Se[2],Se[3],ke[0],ke[1],ke[2],Me[0],Me[1],Me[2],Z,Le,Se[0],Se[1],Se[2],Se[3]),H+=4}}if(this.buffer.update(O),V.push(Z),G.push(j[j.length-1].slice()),this.bounds=N,this.vertexCount=H,this.points=G,this.arcLength=V,"dashes"in g){var De=g.dashes,Pe=De.slice();for(Pe.unshift(0),P=1;P<Pe.length;++P)Pe[P]=Pe[P-1]+Pe[P];var ge=v(new Array(256*4),[256,1,4]);for(P=0;P<256;++P){for(T=0;T<4;++T)ge.set(P,0,T,0);d.le(Pe,Pe[Pe.length-1]*P/255)&1?ge.set(P,0,0,0):ge.set(P,0,0,255)}this.texture.setPixels(ge)}},k.dispose=function(){this.shader.dispose(),this.vao.dispose(),this.buffer.dispose()},k.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 z=this.points[T],O=this.points[Math.min(T+1,this.points.length-1)],V=(P-this.arcLength[T])/(this.arcLength[T+1]-this.arcLength[T]),G=1-V,Z=[0,0,0],H=0;H<3;++H)Z[H]=G*z[H]+V*O[H];var N=Math.min(V<.5?T:T+1,this.points.length-1);return new L(P,Z,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 z=p(P);z.attributes.position.location=0,z.attributes.nextPosition.location=1,z.attributes.arcLength.location=2,z.attributes.lineWidth.location=3,z.attributes.color.location=4;for(var O=s(P),V=l(P,[{buffer:O,size:3,offset:0,stride:48},{buffer:O,size:3,offset:12,stride:48},{buffer:O,size:1,offset:24,stride:48},{buffer:O,size:1,offset:28,stride:48},{buffer:O,size:4,offset:32,stride:48}]),G=v(new Array(256*4),[256,1,4]),Z=0;Z<1024;++Z)G.data[Z]=255;var H=u(P,G);H.wrap=P.REPEAT;var N=new _(P,T,z,O,V,H);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],C=o[11],E=o[12],A=o[13],L=o[14],_=o[15],k=s*h-l*f,M=s*d-u*f,g=s*v-c*f,P=l*d-u*h,T=l*v-c*h,z=u*v-c*d,O=x*A-b*E,V=x*L-p*E,G=x*_-C*E,Z=b*L-p*A,H=b*_-C*A,N=p*_-C*L;return k*N-M*H+g*Z+P*G-T*V+z*O}},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,C=c*h,E=c*d,A=c*v,L=f*h,_=f*d,k=f*v;return o[0]=1-p-A,o[1]=b+k,o[2]=C-_,o[3]=0,o[4]=b-k,o[5]=1-x-A,o[6]=E+L,o[7]=0,o[8]=C+_,o[9]=E-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,C=u*x,E=c*v,A=c*x,L=f*x,_=h*d,k=h*v,M=h*x;return o[0]=1-(E+L),o[1]=p+M,o[2]=C-k,o[3]=0,o[4]=p-M,o[5]=1-(b+L),o[6]=A+_,o[7]=0,o[8]=C+k,o[9]=A-_,o[10]=1-(b+E),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],C=s[10],E=s[11],A=s[12],L=s[13],_=s[14],k=s[15],M=l*d-u*h,g=l*v-c*h,P=l*x-f*h,T=u*v-c*d,z=u*x-f*d,O=c*x-f*v,V=b*L-p*A,G=b*_-C*A,Z=b*k-E*A,H=p*_-C*L,N=p*k-E*L,j=C*k-E*_,re=M*j-g*N+P*H+T*Z-z*G+O*V;return re?(re=1/re,o[0]=(d*j-v*N+x*H)*re,o[1]=(c*N-u*j-f*H)*re,o[2]=(L*O-_*z+k*T)*re,o[3]=(C*z-p*O-E*T)*re,o[4]=(v*Z-h*j-x*G)*re,o[5]=(l*j-c*Z+f*G)*re,o[6]=(_*P-A*O-k*g)*re,o[7]=(b*O-C*P+E*g)*re,o[8]=(h*N-d*Z+x*V)*re,o[9]=(u*Z-l*N-f*V)*re,o[10]=(A*z-L*P+k*M)*re,o[11]=(p*P-b*z-E*M)*re,o[12]=(d*G-h*H-v*V)*re,o[13]=(l*H-u*G+c*V)*re,o[14]=(L*g-A*T-_*M)*re,o[15]=(b*T-p*g+C*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,C,E,A,L,_,k=c[0],M=c[1],g=c[2],P=h[0],T=h[1],z=h[2],O=f[0],V=f[1],G=f[2];return Math.abs(k-O)<1e-6&&Math.abs(M-V)<1e-6&&Math.abs(g-G)<1e-6?s(u):(E=k-O,A=M-V,L=g-G,_=1/Math.sqrt(E*E+A*A+L*L),E*=_,A*=_,L*=_,d=T*L-z*A,v=z*E-P*L,x=P*A-T*E,_=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-E*x,C=E*v-A*d,_=Math.sqrt(b*b+p*p+C*C),_?(_=1/_,b*=_,p*=_,C*=_):(b=0,p=0,C=0),u[0]=d,u[1]=b,u[2]=E,u[3]=0,u[4]=v,u[5]=p,u[6]=A,u[7]=0,u[8]=x,u[9]=C,u[10]=L,u[11]=0,u[12]=-(d*k+v*M+x*g),u[13]=-(b*k+p*M+C*g),u[14]=-(E*k+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],C=s[9],E=s[10],A=s[11],L=s[12],_=s[13],k=s[14],M=s[15],g=l[0],P=l[1],T=l[2],z=l[3];return o[0]=g*u+P*d+T*p+z*L,o[1]=g*c+P*v+T*C+z*_,o[2]=g*f+P*x+T*E+z*k,o[3]=g*h+P*b+T*A+z*M,g=l[4],P=l[5],T=l[6],z=l[7],o[4]=g*u+P*d+T*p+z*L,o[5]=g*c+P*v+T*C+z*_,o[6]=g*f+P*x+T*E+z*k,o[7]=g*h+P*b+T*A+z*M,g=l[8],P=l[9],T=l[10],z=l[11],o[8]=g*u+P*d+T*p+z*L,o[9]=g*c+P*v+T*C+z*_,o[10]=g*f+P*x+T*E+z*k,o[11]=g*h+P*b+T*A+z*M,g=l[12],P=l[13],T=l[14],z=l[15],o[12]=g*u+P*d+T*p+z*L,o[13]=g*c+P*v+T*C+z*_,o[14]=g*f+P*x+T*E+z*k,o[15]=g*h+P*b+T*A+z*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,C,E,A,L,_,k,M,g,P,T,z,O,V,G,Z,H,N,j,re,oe;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],C=s[1],E=s[2],A=s[3],L=s[4],_=s[5],k=s[6],M=s[7],g=s[8],P=s[9],T=s[10],z=s[11],O=c*c*b+x,V=f*c*b+h*v,G=h*c*b-f*v,Z=c*f*b-h*v,H=f*f*b+x,N=h*f*b+c*v,j=c*h*b+f*v,re=f*h*b-c*v,oe=h*h*b+x,o[0]=p*O+L*V+g*G,o[1]=C*O+_*V+P*G,o[2]=E*O+k*V+T*G,o[3]=A*O+M*V+z*G,o[4]=p*Z+L*H+g*N,o[5]=C*Z+_*H+P*N,o[6]=E*Z+k*H+T*N,o[7]=A*Z+M*H+z*N,o[8]=p*j+L*re+g*oe,o[9]=C*j+_*re+P*oe,o[10]=E*j+k*re+T*oe,o[11]=A*j+M*re+z*oe,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],C=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+C*u,o[8]=x*c-f*u,o[9]=b*c-h*u,o[10]=p*c-d*u,o[11]=C*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],C=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-C*u,o[8]=f*u+x*c,o[9]=h*u+b*c,o[10]=d*u+p*c,o[11]=v*u+C*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],C=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+C*u,o[4]=x*c-f*u,o[5]=b*c-h*u,o[6]=p*c-d*u,o[7]=C*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,C,E,A,L,_,k;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],C=s[6],E=s[7],A=s[8],L=s[9],_=s[10],k=s[11],o[0]=h,o[1]=d,o[2]=v,o[3]=x,o[4]=b,o[5]=p,o[6]=C,o[7]=E,o[8]=A,o[9]=L,o[10]=_,o[11]=k,o[12]=h*u+b*c+A*f+s[12],o[13]=d*u+p*c+L*f+s[13],o[14]=v*u+C*c+_*f+s[14],o[15]=x*u+E*c+k*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 C=0;C<4;++C)b[C]+=v[4*p+C]*x[p];return b}function c(v,x,b,p,C){for(var E=u(p,u(b,u(x,[v[0],v[1],v[2],1]))),A=0;A<3;++A)E[A]/=E[3];return[.5*C[0]*(1+E[0]),.5*C[1]*(1-E[1])]}function f(v,x){if(v.length===2){for(var b=0,p=0,C=0;C<2;++C)b+=Math.pow(x[C]-v[0][C],2),p+=Math.pow(x[C]-v[1][C],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 E=[0,0];return l(v[0],v[1],v[2],x,E),s(v,E)}return[]}function h(v,x){for(var b=[0,0,0],p=0;p<v.length;++p)for(var C=v[p],E=x[p],A=0;A<3;++A)b[A]+=E*C[A];return b}function d(v,x,b,p,C,E){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,C,E);for(var _=0,k=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<k&&(k=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)));
|
||
}`]),C=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:C,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),C=o(7765),E=o(1888),A=o(840),L=o(7626),_=A.meshShader,k=A.wireShader,M=A.pointShader,g=A.pickShader,P=A.pointPickShader,T=A.contourShader,z=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function O(me,ie,Se,Le,Ae,De,Pe,ge,Fe,ce,Ze,ct,pt,Wt,st,lt,Gt,Nt,$t,sr,wr,ur,Qe,Et,er,Ut,Ft){this.gl=me,this.pixelRatio=1,this.cells=[],this.positions=[],this.intensity=[],this.texture=ie,this.dirty=!0,this.triShader=Se,this.lineShader=Le,this.pointShader=Ae,this.pickShader=De,this.pointPickShader=Pe,this.contourShader=ge,this.trianglePositions=Fe,this.triangleColors=Ze,this.triangleNormals=pt,this.triangleUVs=ct,this.triangleIds=ce,this.triangleVAO=Wt,this.triangleCount=0,this.lineWidth=1,this.edgePositions=st,this.edgeColors=Gt,this.edgeUVs=Nt,this.edgeIds=lt,this.edgeVAO=$t,this.edgeCount=0,this.pointPositions=sr,this.pointColors=ur,this.pointUVs=Qe,this.pointSizes=Et,this.pointIds=wr,this.pointVAO=er,this.pointCount=0,this.contourLineWidth=1,this.contourPositions=Ut,this.contourVAO=Ft,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=z,this._view=z,this._projection=z,this._resolution=[1,1]}var V=O.prototype;V.isOpaque=function(){return!this.hasAlpha},V.isTransparent=function(){return this.hasAlpha},V.pickSlots=1,V.setPickBase=function(me){this.pickId=me};function G(me,ie){if(!ie||!ie.length)return 1;for(var Se=0;Se<ie.length;++Se){if(ie.length<2)return 1;if(ie[Se][0]===me)return ie[Se][1];if(ie[Se][0]>me&&Se>0){var Le=(ie[Se][0]-me)/(ie[Se][0]-ie[Se-1][0]);return ie[Se][1]*(1-Le)+Le*ie[Se-1][1]}}return 1}function Z(me,ie){for(var Se=p({colormap:me,nshades:256,format:"rgba"}),Le=new Uint8Array(256*4),Ae=0;Ae<256;++Ae){for(var De=Se[Ae],Pe=0;Pe<3;++Pe)Le[4*Ae+Pe]=De[Pe];ie?Le[4*Ae+3]=255*G(Ae/255,ie):Le[4*Ae+3]=255*De[3]}return b(Le,[256,256,4],[4,0,1])}function H(me){for(var ie=me.length,Se=new Array(ie),Le=0;Le<ie;++Le)Se[Le]=me[Le][2];return Se}V.highlight=function(me){if(!me||!this.contourEnable){this.contourCount=0;return}for(var ie=C(this.cells,this.intensity,me.intensity),Se=ie.cells,Le=ie.vertexIds,Ae=ie.vertexWeights,De=Se.length,Pe=E.mallocFloat32(2*3*De),ge=0,Fe=0;Fe<De;++Fe)for(var ce=Se[Fe],Ze=0;Ze<2;++Ze){var ct=ce[0];ce.length===2&&(ct=ce[Ze]);for(var pt=Le[ct][0],Wt=Le[ct][1],st=Ae[ct],lt=1-st,Gt=this.positions[pt],Nt=this.positions[Wt],$t=0;$t<3;++$t)Pe[ge++]=st*Gt[$t]+lt*Nt[$t]}this.contourCount=ge/3|0,this.contourPositions.update(Pe.subarray(0,ge)),E.free(Pe)},V.update=function(me){me=me||{};var ie=this.gl;this.dirty=!0,"contourEnable"in me&&(this.contourEnable=me.contourEnable),"contourColor"in me&&(this.contourColor=me.contourColor),"lineWidth"in me&&(this.lineWidth=me.lineWidth),"lightPosition"in me&&(this.lightPosition=me.lightPosition),this.hasAlpha=!1,"opacity"in me&&(this.opacity=me.opacity,this.opacity<1&&(this.hasAlpha=!0)),"opacityscale"in me&&(this.opacityscale=me.opacityscale,this.hasAlpha=!0),"ambient"in me&&(this.ambientLight=me.ambient),"diffuse"in me&&(this.diffuseLight=me.diffuse),"specular"in me&&(this.specularLight=me.specular),"roughness"in me&&(this.roughness=me.roughness),"fresnel"in me&&(this.fresnel=me.fresnel),me.texture?(this.texture.dispose(),this.texture=h(ie,me.texture)):me.colormap&&(this.texture.shape=[256,256],this.texture.minFilter=ie.LINEAR_MIPMAP_LINEAR,this.texture.magFilter=ie.LINEAR,this.texture.setPixels(Z(me.colormap,this.opacityscale)),this.texture.generateMipmap());var Se=me.cells,Le=me.positions;if(!(!Le||!Se)){var Ae=[],De=[],Pe=[],ge=[],Fe=[],ce=[],Ze=[],ct=[],pt=[],Wt=[],st=[],lt=[],Gt=[],Nt=[];this.cells=Se,this.positions=Le;var $t=me.vertexNormals,sr=me.cellNormals,wr=me.vertexNormalsEpsilon===void 0?s:me.vertexNormalsEpsilon,ur=me.faceNormalsEpsilon===void 0?l:me.faceNormalsEpsilon;me.useFacetNormals&&!sr&&(sr=d.faceNormals(Se,Le,ur)),!sr&&!$t&&($t=d.vertexNormals(Se,Le,wr));var Qe=me.vertexColors,Et=me.cellColors,er=me.meshColor||[1,1,1,1],Ut=me.vertexUVs,Ft=me.vertexIntensity,bt=me.cellUVs,yt=me.cellIntensity,Yt=1/0,lr=-1/0;if(!Ut&&!bt)if(Ft)if(me.vertexIntensityBounds)Yt=+me.vertexIntensityBounds[0],lr=+me.vertexIntensityBounds[1];else for(var Tr=0;Tr<Ft.length;++Tr){var Rr=Ft[Tr];Yt=Math.min(Yt,Rr),lr=Math.max(lr,Rr)}else if(yt)if(me.cellIntensityBounds)Yt=+me.cellIntensityBounds[0],lr=+me.cellIntensityBounds[1];else for(var Tr=0;Tr<yt.length;++Tr){var Rr=yt[Tr];Yt=Math.min(Yt,Rr),lr=Math.max(lr,Rr)}else for(var Tr=0;Tr<Le.length;++Tr){var Rr=Le[Tr][2];Yt=Math.min(Yt,Rr),lr=Math.max(lr,Rr)}Ft?this.intensity=Ft:yt?this.intensity=yt:this.intensity=H(Le),this.pickVertex=!(yt||Et);var ei=me.pointSizes,Wr=me.pointSize||1;this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]];for(var Tr=0;Tr<Le.length;++Tr)for(var Ur=Le[Tr],dt=0;dt<3;++dt)isNaN(Ur[dt])||!isFinite(Ur[dt])||(this.bounds[0][dt]=Math.min(this.bounds[0][dt],Ur[dt]),this.bounds[1][dt]=Math.max(this.bounds[1][dt],Ur[dt]));var Ge=0,Je=0,je=0;e:for(var Tr=0;Tr<Se.length;++Tr){var $e=Se[Tr];switch($e.length){case 1:for(var wt=$e[0],Ur=Le[wt],dt=0;dt<3;++dt)if(isNaN(Ur[dt])||!isFinite(Ur[dt]))continue e;Wt.push(Ur[0],Ur[1],Ur[2]);var Ie;Qe?Ie=Qe[wt]:Et?Ie=Et[Tr]:Ie=er,this.opacityscale&&Ft?De.push(Ie[0],Ie[1],Ie[2],this.opacity*G((Ft[wt]-Yt)/(lr-Yt),this.opacityscale)):Ie.length===3?st.push(Ie[0],Ie[1],Ie[2],this.opacity):(st.push(Ie[0],Ie[1],Ie[2],Ie[3]*this.opacity),Ie[3]<1&&(this.hasAlpha=!0));var xe;Ut?xe=Ut[wt]:Ft?xe=[(Ft[wt]-Yt)/(lr-Yt),0]:bt?xe=bt[Tr]:yt?xe=[(yt[Tr]-Yt)/(lr-Yt),0]:xe=[(Ur[2]-Yt)/(lr-Yt),0],lt.push(xe[0],xe[1]),ei?Gt.push(ei[wt]):Gt.push(Wr),Nt.push(Tr),je+=1;break;case 2:for(var dt=0;dt<2;++dt)for(var wt=$e[dt],Ur=Le[wt],Ce=0;Ce<3;++Ce)if(isNaN(Ur[Ce])||!isFinite(Ur[Ce]))continue e;for(var dt=0;dt<2;++dt){var wt=$e[dt],Ur=Le[wt];ce.push(Ur[0],Ur[1],Ur[2]);var Ie;Qe?Ie=Qe[wt]:Et?Ie=Et[Tr]:Ie=er,this.opacityscale&&Ft?De.push(Ie[0],Ie[1],Ie[2],this.opacity*G((Ft[wt]-Yt)/(lr-Yt),this.opacityscale)):Ie.length===3?Ze.push(Ie[0],Ie[1],Ie[2],this.opacity):(Ze.push(Ie[0],Ie[1],Ie[2],Ie[3]*this.opacity),Ie[3]<1&&(this.hasAlpha=!0));var xe;Ut?xe=Ut[wt]:Ft?xe=[(Ft[wt]-Yt)/(lr-Yt),0]:bt?xe=bt[Tr]:yt?xe=[(yt[Tr]-Yt)/(lr-Yt),0]:xe=[(Ur[2]-Yt)/(lr-Yt),0],ct.push(xe[0],xe[1]),pt.push(Tr)}Je+=1;break;case 3:for(var dt=0;dt<3;++dt)for(var wt=$e[dt],Ur=Le[wt],Ce=0;Ce<3;++Ce)if(isNaN(Ur[Ce])||!isFinite(Ur[Ce]))continue e;for(var dt=0;dt<3;++dt){var wt=$e[2-dt],Ur=Le[wt];Ae.push(Ur[0],Ur[1],Ur[2]);var Ie;Qe?Ie=Qe[wt]:Et?Ie=Et[Tr]:Ie=er,Ie?this.opacityscale&&Ft?De.push(Ie[0],Ie[1],Ie[2],this.opacity*G((Ft[wt]-Yt)/(lr-Yt),this.opacityscale)):Ie.length===3?De.push(Ie[0],Ie[1],Ie[2],this.opacity):(De.push(Ie[0],Ie[1],Ie[2],Ie[3]*this.opacity),Ie[3]<1&&(this.hasAlpha=!0)):De.push(.5,.5,.5,1);var xe;Ut?xe=Ut[wt]:Ft?xe=[(Ft[wt]-Yt)/(lr-Yt),0]:bt?xe=bt[Tr]:yt?xe=[(yt[Tr]-Yt)/(lr-Yt),0]:xe=[(Ur[2]-Yt)/(lr-Yt),0],ge.push(xe[0],xe[1]);var vt;$t?vt=$t[wt]:vt=sr[Tr],Pe.push(vt[0],vt[1],vt[2]),Fe.push(Tr)}Ge+=1;break;default:break}}this.pointCount=je,this.edgeCount=Je,this.triangleCount=Ge,this.pointPositions.update(Wt),this.pointColors.update(st),this.pointUVs.update(lt),this.pointSizes.update(Gt),this.pointIds.update(new Uint32Array(Nt)),this.edgePositions.update(ce),this.edgeColors.update(Ze),this.edgeUVs.update(ct),this.edgeIds.update(new Uint32Array(pt)),this.trianglePositions.update(Ae),this.triangleColors.update(De),this.triangleUVs.update(ge),this.triangleNormals.update(Pe),this.triangleIds.update(new Uint32Array(Fe))}},V.drawTransparent=V.draw=function(me){me=me||{};for(var ie=this.gl,Se=me.model||z,Le=me.view||z,Ae=me.projection||z,De=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],Pe=0;Pe<3;++Pe)De[0][Pe]=Math.max(De[0][Pe],this.clipBounds[0][Pe]),De[1][Pe]=Math.min(De[1][Pe],this.clipBounds[1][Pe]);var ge={model:Se,view:Le,projection:Ae,inverseModel:z.slice(),clipBounds:De,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};ge.inverseModel=x(ge.inverseModel,ge.model),ie.disable(ie.CULL_FACE),this.texture.bind(0);var Fe=new Array(16);v(Fe,ge.view,ge.model),v(Fe,ge.projection,Fe),x(Fe,Fe);for(var Pe=0;Pe<3;++Pe)ge.eyePosition[Pe]=Fe[12+Pe]/Fe[15];for(var ce=Fe[15],Pe=0;Pe<3;++Pe)ce+=this.lightPosition[Pe]*Fe[4*Pe+3];for(var Pe=0;Pe<3;++Pe){for(var Ze=Fe[12+Pe],ct=0;ct<3;++ct)Ze+=Fe[4*ct+Pe]*this.lightPosition[ct];ge.lightPosition[Pe]=Ze/ce}if(this.triangleCount>0){var pt=this.triShader;pt.bind(),pt.uniforms=ge,this.triangleVAO.bind(),ie.drawArrays(ie.TRIANGLES,0,this.triangleCount*3),this.triangleVAO.unbind()}if(this.edgeCount>0&&this.lineWidth>0){var pt=this.lineShader;pt.bind(),pt.uniforms=ge,this.edgeVAO.bind(),ie.lineWidth(this.lineWidth*this.pixelRatio),ie.drawArrays(ie.LINES,0,this.edgeCount*2),this.edgeVAO.unbind()}if(this.pointCount>0){var pt=this.pointShader;pt.bind(),pt.uniforms=ge,this.pointVAO.bind(),ie.drawArrays(ie.POINTS,0,this.pointCount),this.pointVAO.unbind()}if(this.contourEnable&&this.contourCount>0&&this.contourLineWidth>0){var pt=this.contourShader;pt.bind(),pt.uniforms=ge,this.contourVAO.bind(),ie.drawArrays(ie.LINES,0,this.contourCount),this.contourVAO.unbind()}},V.drawPick=function(me){me=me||{};for(var ie=this.gl,Se=me.model||z,Le=me.view||z,Ae=me.projection||z,De=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],Pe=0;Pe<3;++Pe)De[0][Pe]=Math.max(De[0][Pe],this.clipBounds[0][Pe]),De[1][Pe]=Math.min(De[1][Pe],this.clipBounds[1][Pe]);this._model=[].slice.call(Se),this._view=[].slice.call(Le),this._projection=[].slice.call(Ae),this._resolution=[ie.drawingBufferWidth,ie.drawingBufferHeight];var ge={model:Se,view:Le,projection:Ae,clipBounds:De,pickId:this.pickId/255},Fe=this.pickShader;if(Fe.bind(),Fe.uniforms=ge,this.triangleCount>0&&(this.triangleVAO.bind(),ie.drawArrays(ie.TRIANGLES,0,this.triangleCount*3),this.triangleVAO.unbind()),this.edgeCount>0&&(this.edgeVAO.bind(),ie.lineWidth(this.lineWidth*this.pixelRatio),ie.drawArrays(ie.LINES,0,this.edgeCount*2),this.edgeVAO.unbind()),this.pointCount>0){var Fe=this.pointPickShader;Fe.bind(),Fe.uniforms=ge,this.pointVAO.bind(),ie.drawArrays(ie.POINTS,0,this.pointCount),this.pointVAO.unbind()}},V.pick=function(me){if(!me||me.id!==this.pickId)return null;for(var ie=me.value[0]+256*me.value[1]+65536*me.value[2],Se=this.cells[ie],Le=this.positions,Ae=new Array(Se.length),De=0;De<Se.length;++De)Ae[De]=Le[Se[De]];var Pe=me.coord[0],ge=me.coord[1];if(!this.pickVertex){var Fe=this.positions[Se[0]],ce=this.positions[Se[1]],Ze=this.positions[Se[2]],ct=[(Fe[0]+ce[0]+Ze[0])/3,(Fe[1]+ce[1]+Ze[1])/3,(Fe[2]+ce[2]+Ze[2])/3];return{_cellCenter:!0,position:[Pe,ge],index:ie,cell:Se,cellId:ie,intensity:this.intensity[ie],dataCoordinate:ct}}var pt=L(Ae,[Pe*this.pixelRatio,this._resolution[1]-ge*this.pixelRatio],this._model,this._view,this._projection,this._resolution);if(!pt)return null;for(var Wt=pt[2],st=0,De=0;De<Se.length;++De)st+=Wt[De]*this.intensity[Se[De]];return{position:pt[1],index:Se[pt[0]],cell:Se,cellId:ie,intensity:st,dataCoordinate:this.positions[Se[pt[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(me){var ie=u(me,_.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 j(me){var ie=u(me,k.vertex,k.fragment);return ie.attributes.position.location=0,ie.attributes.color.location=2,ie.attributes.uv.location=3,ie}function re(me){var ie=u(me,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 oe(me){var ie=u(me,g.vertex,g.fragment);return ie.attributes.position.location=0,ie.attributes.id.location=1,ie}function _e(me){var ie=u(me,P.vertex,P.fragment);return ie.attributes.position.location=0,ie.attributes.id.location=1,ie.attributes.pointSize.location=4,ie}function Me(me){var ie=u(me,T.vertex,T.fragment);return ie.attributes.position.location=0,ie}function ke(me,ie){arguments.length===1&&(ie=me,me=ie.gl);var Se=me.getExtension("OES_standard_derivatives")||me.getExtension("MOZ_OES_standard_derivatives")||me.getExtension("WEBKIT_OES_standard_derivatives");if(!Se)throw new Error("derivatives not supported");var Le=N(me),Ae=j(me),De=re(me),Pe=oe(me),ge=_e(me),Fe=Me(me),ce=h(me,b(new Uint8Array([255,255,255,255]),[1,1,4]));ce.generateMipmap(),ce.minFilter=me.LINEAR_MIPMAP_LINEAR,ce.magFilter=me.LINEAR;var Ze=c(me),ct=c(me),pt=c(me),Wt=c(me),st=c(me),lt=f(me,[{buffer:Ze,type:me.FLOAT,size:3},{buffer:st,type:me.UNSIGNED_BYTE,size:4,normalized:!0},{buffer:ct,type:me.FLOAT,size:4},{buffer:pt,type:me.FLOAT,size:2},{buffer:Wt,type:me.FLOAT,size:3}]),Gt=c(me),Nt=c(me),$t=c(me),sr=c(me),wr=f(me,[{buffer:Gt,type:me.FLOAT,size:3},{buffer:sr,type:me.UNSIGNED_BYTE,size:4,normalized:!0},{buffer:Nt,type:me.FLOAT,size:4},{buffer:$t,type:me.FLOAT,size:2}]),ur=c(me),Qe=c(me),Et=c(me),er=c(me),Ut=c(me),Ft=f(me,[{buffer:ur,type:me.FLOAT,size:3},{buffer:Ut,type:me.UNSIGNED_BYTE,size:4,normalized:!0},{buffer:Qe,type:me.FLOAT,size:4},{buffer:Et,type:me.FLOAT,size:2},{buffer:er,type:me.FLOAT,size:1}]),bt=c(me),yt=f(me,[{buffer:bt,type:me.FLOAT,size:3}]),Yt=new O(me,ce,Le,Ae,De,Pe,ge,Fe,Ze,st,ct,pt,Wt,lt,Gt,sr,Nt,$t,wr,ur,Ut,Qe,Et,er,Ft,bt,yt);return Yt.update(ie),Yt}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}),C=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],E=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 k=s(),M=this.delay,g=k-2*M;p.idle(k-M),p.recalcMatrix(g),p.flush(k-(100+M*2));for(var P=!0,T=p.computedMatrix,z=0;z<16;++z)P=P&&C[z]===T[z],C[z]=T[z];var O=v.clientWidth===A&&v.clientHeight===L;return A=v.clientWidth,L=v.clientHeight,P?!O:(E=Math.exp(p.computedRadius[0]),!0)},lookAt:function(k,M,g){p.lookAt(p.lastT(),k,M,g)},rotate:function(k,M,g){p.rotate(p.lastT(),k,M,g)},pan:function(k,M,g){p.pan(p.lastT(),k,M,g)},translate:function(k,M,g){p.translate(p.lastT(),k,M,g)}};return Object.defineProperties(_,{matrix:{get:function(){return p.computedMatrix},set:function(k){return p.setMatrix(p.lastT(),k),p.computedMatrix},enumerable:!0},mode:{get:function(){return p.getMode()},set:function(k){var M=p.computedUp.slice(),g=p.computedEye.slice(),P=p.computedCenter.slice();if(p.setMode(k),k==="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(k){return p.lookAt(p.lastT(),null,k),p.computedCenter},enumerable:!0},eye:{get:function(){return p.computedEye},set:function(k){return p.lookAt(p.lastT(),k),p.computedEye},enumerable:!0},up:{get:function(){return p.computedUp},set:function(k){return p.lookAt(p.lastT(),null,null,k),p.computedUp},enumerable:!0},distance:{get:function(){return E},set:function(k){return p.setDistance(p.lastT(),k),k},enumerable:!0},distanceLimits:{get:function(){return p.getDistanceLimits(b)},set:function(k){return p.setDistanceLimits(k),k},enumerable:!0}}),v.addEventListener("contextmenu",function(k){return k.preventDefault(),!1}),_._lastX=-1,_._lastY=-1,_._lastMods={shift:!1,control:!1,alt:!1,meta:!1},_.enableMouseListeners=function(){_.mouseListener=u(v,k),v.addEventListener("touchstart",function(M){var g=f(M.changedTouches[0],v);k(0,g[0],g[1],_._lastMods),k(1,g[0],g[1],_._lastMods)},h?{passive:!0}:!1),v.addEventListener("touchmove",function(M){var g=f(M.changedTouches[0],v);k(1,g[0],g[1],_._lastMods),M.preventDefault()},h?{passive:!1}:!1),v.addEventListener("touchend",function(M){k(0,_._lastX,_._lastY,_._lastMods)},h?{passive:!0}:!1);function k(M,g,P,T){var z=_.keyBindingMode;if(z!==!1){var O=z==="rotate",V=z==="pan",G=z==="zoom",Z=!!T.control,H=!!T.alt,N=!!T.shift,j=!!(M&1),re=!!(M&2),oe=!!(M&4),_e=1/v.clientHeight,Me=_e*(g-_._lastX),ke=_e*(P-_._lastY),me=_.flipX?1:-1,ie=_.flipY?1:-1,Se=Math.PI*_.rotateSpeed,Le=s();if(_._lastX!==-1&&_._lastY!==-1&&((O&&j&&!Z&&!H&&!N||j&&!Z&&!H&&N)&&p.rotate(Le,me*Se*Me,-ie*Se*ke,0),(V&&j&&!Z&&!H&&!N||re||j&&Z&&!H&&!N)&&p.pan(Le,-_.translateSpeed*Me*E,_.translateSpeed*ke*E,0),G&&j&&!Z&&!H&&!N||oe||j&&!Z&&H&&!N)){var Ae=-_.zoomSpeed*ke/window.innerHeight*(Le-p.lastT())*100;p.pan(Le,0,0,E*(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,z=s();if(Math.abs(M)>Math.abs(g))p.rotate(z,0,0,-M*P*Math.PI*_.rotateSpeed/window.innerWidth);else if(!_._ortho){var O=-_.zoomSpeed*T*g/window.innerHeight*(z-p.lastT())/20;p.pan(z,0,0,E*(Math.exp(O)-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),C=o(9216)({tablet:!0,featureDetect:!0});i.exports={createScene:k,createCamera:s};function E(){this.mouse=[-1,-1],this.screen=null,this.distance=1/0,this.index=null,this.dataCoordinate=null,this.dataPosition=null,this.object=null,this.data=null}function A(g,P){var T=null;try{T=g.getContext("webgl",P),T||(T=g.getContext("experimental-webgl",P))}catch(z){return null}return T}function L(g){var P=Math.round(Math.log(Math.abs(g))/Math.log(10));if(P<0){var T=Math.round(Math.pow(10,-P));return Math.ceil(g*T)/T}else if(P>0){var T=Math.round(Math.pow(10,P));return Math.ceil(g/T)*T}return Math.ceil(g)}function _(g){return typeof g=="boolean"?g:!0}function k(g){g=g||{},g.camera=g.camera||{};var P=g.canvas;if(!P)if(P=document.createElement("canvas"),g.container){var T=g.container;T.appendChild(P)}else document.body.appendChild(P);var z=g.gl;if(z||(g.glOptions&&(C=!!g.glOptions.preserveDrawingBuffer),z=A(P,g.glOptions||{premultipliedAlpha:!0,antialias:!0,preserveDrawingBuffer:C})),!z)throw new Error("webgl not supported");var O=g.bounds||[[-10,-10,-10],[10,10,10]],V=new E,G=h(z,z.drawingBufferWidth,z.drawingBufferHeight,{preferFloat:!C}),Z=p(z),H=g.cameraObject&&g.cameraObject._ortho===!0||g.camera.projection&&g.camera.projection.type==="orthographic"||!1,N={eye:g.camera.eye||[2,0,0],center:g.camera.center||[0,0,0],up:g.camera.up||[0,1,0],zoomMin:g.camera.zoomMax||.1,zoomMax:g.camera.zoomMin||100,mode:g.camera.mode||"turntable",_ortho:H},j=g.axes||{},re=l(z,j);re.enable=!j.disable;var oe=g.spikes||{},_e=c(z,oe),Me=[],ke=[],me=[],ie=[],Se=!0,Pe=!0,Le=new Array(16),Ae=new Array(16),De={view:null,projection:Le,model:Ae,_ortho:!1},Pe=!0,ge=[z.drawingBufferWidth,z.drawingBufferHeight],Fe=g.cameraObject||s(P,N),ce={gl:z,contextLost:!1,pixelRatio:g.pixelRatio||1,canvas:P,selection:V,camera:Fe,axes:re,axesPixels:null,spikes:_e,bounds:O,objects:Me,shape:ge,aspect:g.aspectRatio||[1,1,1],pickRadius:g.pickRadius||10,zNear:g.zNear||.01,zFar:g.zFar||1e3,fovy:g.fovy||Math.PI/4,clearColor:g.clearColor||[0,0,0,0],autoResize:_(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:De,oncontextloss:null,mouseListener:null,_stopped:!1,getAspectratio:function(){return{x:this.aspect[0],y:this.aspect[1],z:this.aspect[2]}},setAspectratio:function(sr){this.aspect[0]=sr.x,this.aspect[1]=sr.y,this.aspect[2]=sr.z,Pe=!0},setBounds:function(sr,wr){this.bounds[0][sr]=wr.min,this.bounds[1][sr]=wr.max},setClearColor:function(sr){this.clearColor=sr},clearRGBA:function(){this.gl.clearColor(this.clearColor[0],this.clearColor[1],this.clearColor[2],this.clearColor[3]),this.gl.clear(this.gl.COLOR_BUFFER_BIT|this.gl.DEPTH_BUFFER_BIT)}},Ze=[z.drawingBufferWidth/ce.pixelRatio|0,z.drawingBufferHeight/ce.pixelRatio|0];function ct(){if(!ce._stopped&&ce.autoResize){var sr=P.parentNode,wr=1,ur=1;sr&&sr!==document.body?(wr=sr.clientWidth,ur=sr.clientHeight):(wr=window.innerWidth,ur=window.innerHeight);var Qe=Math.ceil(wr*ce.pixelRatio)|0,Et=Math.ceil(ur*ce.pixelRatio)|0;if(Qe!==P.width||Et!==P.height){P.width=Qe,P.height=Et;var er=P.style;er.position=er.position||"absolute",er.left="0px",er.top="0px",er.width=wr+"px",er.height=ur+"px",Se=!0}}}ce.autoResize&&ct(),window.addEventListener("resize",ct);function pt(){for(var sr=Me.length,wr=ie.length,ur=0;ur<wr;++ur)me[ur]=0;e:for(var ur=0;ur<sr;++ur){var Qe=Me[ur],Et=Qe.pickSlots;if(!Et){ke[ur]=-1;continue}for(var er=0;er<wr;++er)if(me[er]+Et<255){ke[ur]=er,Qe.setPickBase(me[er]+1),me[er]+=Et;continue e}var Ut=f(z,ge);ke[ur]=wr,ie.push(Ut),me.push(Et),Qe.setPickBase(1),wr+=1}for(;wr>0&&me[wr-1]===0;)me.pop(),ie.pop().dispose()}ce.update=function(sr){ce._stopped||(sr=sr||{},Se=!0,Pe=!0)},ce.add=function(sr){ce._stopped||(sr.axes=re,Me.push(sr),ke.push(-1),Se=!0,Pe=!0,pt())},ce.remove=function(sr){if(!ce._stopped){var wr=Me.indexOf(sr);wr<0||(Me.splice(wr,1),ke.pop(),Se=!0,Pe=!0,pt())}},ce.dispose=function(){if(!ce._stopped&&(ce._stopped=!0,window.removeEventListener("resize",ct),P.removeEventListener("webglcontextlost",Wt),ce.mouseListener.enabled=!1,!ce.contextLost)){re.dispose(),_e.dispose();for(var sr=0;sr<Me.length;++sr)Me[sr].dispose();G.dispose();for(var sr=0;sr<ie.length;++sr)ie[sr].dispose();Z.dispose(),z=null,re=null,_e=null,Me=[]}},ce._mouseRotating=!1,ce._prevButtons=0,ce.enableMouseListeners=function(){ce.mouseListener=v(P,function(sr,wr,ur){if(!ce._stopped){var Qe=ie.length,Et=Me.length,er=V.object;V.distance=1/0,V.mouse[0]=wr,V.mouse[1]=ur,V.object=null,V.screen=null,V.dataCoordinate=V.dataPosition=null;var Ut=!1;if(sr&&ce._prevButtons)ce._mouseRotating=!0;else{ce._mouseRotating&&(Pe=!0),ce._mouseRotating=!1;for(var Ft=0;Ft<Qe;++Ft){var bt=ie[Ft].query(wr,Ze[1]-ur-1,ce.pickRadius);if(bt){if(bt.distance>V.distance)continue;for(var yt=0;yt<Et;++yt){var Yt=Me[yt];if(ke[yt]===Ft){var lr=Yt.pick(bt);lr&&(V.buttons=sr,V.screen=bt.coord,V.distance=bt.distance,V.object=Yt,V.index=lr.distance,V.dataPosition=lr.position,V.dataCoordinate=lr.dataCoordinate,V.data=lr,Ut=!0)}}}}}er&&er!==V.object&&(er.highlight&&er.highlight(null),Se=!0),V.object&&(V.object.highlight&&V.object.highlight(V.data),Se=!0),Ut=Ut||V.object!==er,Ut&&ce.onselect&&ce.onselect(V),sr&1&&!(ce._prevButtons&1)&&ce.onclick&&ce.onclick(V),ce._prevButtons=sr}})};function Wt(){if(ce.contextLost)return!0;z.isContextLost()&&(ce.contextLost=!0,ce.mouseListener.enabled=!1,ce.selection.object=null,ce.oncontextloss&&ce.oncontextloss())}P.addEventListener("webglcontextlost",Wt);function st(){if(!Wt()){z.colorMask(!0,!0,!0,!0),z.depthMask(!0),z.disable(z.BLEND),z.enable(z.DEPTH_TEST),z.depthFunc(z.LEQUAL);for(var sr=Me.length,wr=ie.length,ur=0;ur<wr;++ur){var Qe=ie[ur];Qe.shape=Ze,Qe.begin();for(var Et=0;Et<sr;++Et)if(ke[Et]===ur){var er=Me[Et];er.drawPick&&(er.pixelRatio=1,er.drawPick(De))}Qe.end()}}}var lt=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],Gt=[lt[0].slice(),lt[1].slice()];function Nt(){if(!Wt()){ct();var sr=ce.camera.tick();De.view=ce.camera.matrix,Se=Se||sr,Pe=Pe||sr,re.pixelRatio=ce.pixelRatio,_e.pixelRatio=ce.pixelRatio;var wr=Me.length,ur=lt[0],Qe=lt[1];ur[0]=ur[1]=ur[2]=1/0,Qe[0]=Qe[1]=Qe[2]=-1/0;for(var Et=0;Et<wr;++Et){var er=Me[Et];er.pixelRatio=ce.pixelRatio,er.axes=ce.axes,Se=Se||!!er.dirty,Pe=Pe||!!er.dirty;var Ut=er.bounds;if(Ut)for(var Ft=Ut[0],bt=Ut[1],yt=0;yt<3;++yt)ur[yt]=Math.min(ur[yt],Ft[yt]),Qe[yt]=Math.max(Qe[yt],bt[yt])}var Yt=ce.bounds;if(ce.autoBounds)for(var yt=0;yt<3;++yt){if(Qe[yt]<ur[yt])ur[yt]=-1,Qe[yt]=1;else{ur[yt]===Qe[yt]&&(ur[yt]-=1,Qe[yt]+=1);var lr=.05*(Qe[yt]-ur[yt]);ur[yt]=ur[yt]-lr,Qe[yt]=Qe[yt]+lr}Yt[0][yt]=ur[yt],Yt[1][yt]=Qe[yt]}for(var Tr=!1,yt=0;yt<3;++yt)Tr=Tr||Gt[0][yt]!==Yt[0][yt]||Gt[1][yt]!==Yt[1][yt],Gt[0][yt]=Yt[0][yt],Gt[1][yt]=Yt[1][yt];if(Pe=Pe||Tr,Se=Se||Tr,!!Se){if(Tr){for(var Rr=[0,0,0],Et=0;Et<3;++Et)Rr[Et]=L((Yt[1][Et]-Yt[0][Et])/10);re.autoTicks?re.update({bounds:Yt,tickSpacing:Rr}):re.update({bounds:Yt})}var ei=z.drawingBufferWidth,Wr=z.drawingBufferHeight;ge[0]=ei,ge[1]=Wr,Ze[0]=Math.max(ei/ce.pixelRatio,1)|0,Ze[1]=Math.max(Wr/ce.pixelRatio,1)|0,M(ce,H);for(var Et=0;Et<wr;++Et){var er=Me[Et];er.axesBounds=Yt,ce.clipToBounds&&(er.clipBounds=Yt)}V.object&&(ce.snapToData?_e.position=V.dataCoordinate:_e.position=V.dataPosition,_e.bounds=Yt),Pe&&(Pe=!1,st()),ce.axesPixels=u(ce.axes,De,ei,Wr),ce.onrender&&ce.onrender(),z.bindFramebuffer(z.FRAMEBUFFER,null),z.viewport(0,0,ei,Wr),ce.clearRGBA(),z.depthMask(!0),z.colorMask(!0,!0,!0,!0),z.enable(z.DEPTH_TEST),z.depthFunc(z.LEQUAL),z.disable(z.BLEND),z.disable(z.CULL_FACE);var Ur=!1;re.enable&&(Ur=Ur||re.isTransparent(),re.draw(De)),_e.axes=re,V.object&&_e.draw(De),z.disable(z.CULL_FACE);for(var Et=0;Et<wr;++Et){var er=Me[Et];er.axes=re,er.pixelRatio=ce.pixelRatio,er.isOpaque&&er.isOpaque()&&er.draw(De),er.isTransparent&&er.isTransparent()&&(Ur=!0)}if(Ur){G.shape=ge,G.bind(),z.clear(z.DEPTH_BUFFER_BIT),z.colorMask(!1,!1,!1,!1),z.depthMask(!0),z.depthFunc(z.LESS),re.enable&&re.isTransparent()&&re.drawTransparent(De);for(var Et=0;Et<wr;++Et){var er=Me[Et];er.isOpaque&&er.isOpaque()&&er.draw(De)}z.enable(z.BLEND),z.blendEquation(z.FUNC_ADD),z.blendFunc(z.ONE,z.ONE_MINUS_SRC_ALPHA),z.colorMask(!0,!0,!0,!0),z.depthMask(!1),z.clearColor(0,0,0,0),z.clear(z.COLOR_BUFFER_BIT),re.isTransparent()&&re.drawTransparent(De);for(var Et=0;Et<wr;++Et){var er=Me[Et];er.isTransparent&&er.isTransparent()&&er.drawTransparent(De)}z.bindFramebuffer(z.FRAMEBUFFER,null),z.blendFunc(z.ONE,z.ONE_MINUS_SRC_ALPHA),z.disable(z.DEPTH_TEST),Z.bind(),G.color[0].bind(0),Z.uniforms.accumBuffer=0,d(z),z.disable(z.BLEND)}Se=!1;for(var Et=0;Et<wr;++Et)Me[Et].dirty=!1}}}function $t(){ce._stopped||ce.contextLost||(Nt(),requestAnimationFrame($t))}return ce.enableMouseListeners(),$t(),ce.redraw=function(){ce._stopped||(Se=!0,Nt())},ce}function M(g,P){var T=g.bounds,z=g.cameraParams,O=z.projection,V=z.model,G=g.gl.drawingBufferWidth,Z=g.gl.drawingBufferHeight,H=g.zNear,N=g.zFar,j=g.fovy,re=G/Z;P?(b(O,-re,re,-1,1,H,N),z._ortho=!0):(x(O,j,re,H,N),z._ortho=!1);for(var oe=0;oe<16;++oe)V[oe]=0;V[15]=1;for(var _e=0,oe=0;oe<3;++oe)_e=Math.max(_e,T[1][oe]-T[0][oe]);for(var oe=0;oe<3;++oe)g.autoScale?V[5*oe]=g.aspect[oe]/(T[1][oe]-T[0][oe]):V[5*oe]=1/_e,g.autoCenter&&(V[12+oe]=-V[5*oe]*.5*(T[0][oe]+T[1][oe]))}},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],C,E,A,L,_;return E=c*v+f*x+h*b+d*p,E<0&&(E=-E,v=-v,x=-x,b=-b,p=-p),1-E>1e-6?(C=Math.acos(E),A=Math.sin(C),L=Math.sin((1-u)*C)/A,_=Math.sin(u*C)/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),C,E;if(h&&h!==1){for(C=0;C<b.positions.length;++C)for(E=0;E<b.positions[C].length;++E)b.positions[C][E]/=h;for(C=0;C<p.positions.length;++C)for(E=0;E<p.positions[C].length;++E)p.positions[C][E]/=h}var A=[[1/0,1/0],[-1/0,-1/0]],L=p.positions.length;for(C=0;C<L;++C){var _=p.positions[C];for(E=0;E<2;++E)A[0][E]=Math.min(A[0][E],_[E]),A[1][E]=Math.max(A[1][E],_[E])}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},C={vertex:u,fragment:d,attributes:v},E={vertex:c,fragment:d,attributes:v},A={vertex:f,fragment:d,attributes:v};function L(_,k){var M=s(_,k),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(_,C)},a.createPickOrtho=function(_){return L(_,E)},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 C(Ae){return b.isView(Ae)&&!(Ae instanceof p)}function E(Ae){return Array.isArray(Ae)||C(Ae)}i.exports=Le;function A(Ae,De){var Pe=Ae[0],ge=Ae[1],Fe=Ae[2],ce=Ae[3];return Ae[0]=De[0]*Pe+De[4]*ge+De[8]*Fe+De[12]*ce,Ae[1]=De[1]*Pe+De[5]*ge+De[9]*Fe+De[13]*ce,Ae[2]=De[2]*Pe+De[6]*ge+De[10]*Fe+De[14]*ce,Ae[3]=De[3]*Pe+De[7]*ge+De[11]*Fe+De[15]*ce,Ae}function L(Ae,De,Pe,ge){return A(ge,ge,Pe),A(ge,ge,De),A(ge,ge,Ae)}function _(Ae,De){this.index=Ae,this.dataCoordinate=this.position=De}function k(Ae){return Ae===!0||Ae>1?1:Ae}function M(Ae,De,Pe,ge,Fe,ce,Ze,ct,pt,Wt,st,lt){this.gl=Ae,this.pixelRatio=1,this.shader=De,this.orthoShader=Pe,this.projectShader=ge,this.pointBuffer=Fe,this.colorBuffer=ce,this.glyphBuffer=Ze,this.idBuffer=ct,this.vao=pt,this.vertexCount=0,this.lineVertexCount=0,this.opacity=1,this.hasAlpha=!1,this.lineWidth=0,this.projectScale=[.6666666666666666,.6666666666666666,.6666666666666666],this.projectOpacity=[1,1,1],this.projectHasAlpha=!1,this.pickId=0,this.pickPerspectiveShader=Wt,this.pickOrthoShader=st,this.pickProjectShader=lt,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],z=[0,0,0],O=[0,0,0,1],V=[0,0,0,1],G=x.slice(),Z=[0,0,0],H=[[0,0,0],[0,0,0]];function N(Ae){return Ae[0]=Ae[1]=Ae[2]=0,Ae}function j(Ae,De){return Ae[0]=De[0],Ae[1]=De[1],Ae[2]=De[2],Ae[3]=1,Ae}function re(Ae,De,Pe,ge){return Ae[0]=De[0],Ae[1]=De[1],Ae[2]=De[2],Ae[Pe]=ge,Ae}function oe(Ae){for(var De=H,Pe=0;Pe<2;++Pe)for(var ge=0;ge<3;++ge)De[Pe][ge]=Math.max(Math.min(Ae[Pe][ge],1e8),-1e8);return De}function _e(Ae,De,Pe,ge){var Fe=De.axesProject,ce=De.gl,Ze=Ae.uniforms,ct=Pe.model||x,pt=Pe.view||x,Wt=Pe.projection||x,st=De.axesBounds,lt=oe(De.clipBounds),Gt;De.axes&&De.axes.lastCubeProps?Gt=De.axes.lastCubeProps.axis:Gt=[1,1,1],P[0]=2/ce.drawingBufferWidth,P[1]=2/ce.drawingBufferHeight,Ae.bind(),Ze.view=pt,Ze.projection=Wt,Ze.screenSize=P,Ze.highlightId=De.highlightId,Ze.highlightScale=De.highlightScale,Ze.clipBounds=lt,Ze.pickGroup=De.pickId/255,Ze.pixelRatio=ge;for(var Nt=0;Nt<3;++Nt)if(Fe[Nt]){Ze.scale=De.projectScale[Nt],Ze.opacity=De.projectOpacity[Nt];for(var $t=G,sr=0;sr<16;++sr)$t[sr]=0;for(var sr=0;sr<4;++sr)$t[5*sr]=1;$t[5*Nt]=0,Gt[Nt]<0?$t[12+Nt]=st[0][Nt]:$t[12+Nt]=st[1][Nt],f($t,ct,$t),Ze.model=$t;var wr=(Nt+1)%3,ur=(Nt+2)%3,Qe=N(T),Et=N(z);Qe[wr]=1,Et[ur]=1;var er=L(Wt,pt,ct,j(O,Qe)),Ut=L(Wt,pt,ct,j(V,Et));if(Math.abs(er[1])>Math.abs(Ut[1])){var Ft=er;er=Ut,Ut=Ft,Ft=Qe,Qe=Et,Et=Ft;var bt=wr;wr=ur,ur=bt}er[0]<0&&(Qe[wr]=-1),Ut[1]>0&&(Et[ur]=-1);for(var yt=0,Yt=0,sr=0;sr<4;++sr)yt+=Math.pow(ct[4*wr+sr],2),Yt+=Math.pow(ct[4*ur+sr],2);Qe[wr]/=Math.sqrt(yt),Et[ur]/=Math.sqrt(Yt),Ze.axes[0]=Qe,Ze.axes[1]=Et,Ze.fragClipBounds[0]=re(Z,lt[0],Nt,-1e8),Ze.fragClipBounds[1]=re(Z,lt[1],Nt,1e8),De.vao.bind(),De.vao.draw(ce.TRIANGLES,De.vertexCount),De.lineWidth>0&&(ce.lineWidth(De.lineWidth*ge),De.vao.draw(ce.LINES,De.lineVertexCount,De.vertexCount)),De.vao.unbind()}}var Me=[-1e8,-1e8,-1e8],ke=[1e8,1e8,1e8],me=[Me,ke];function ie(Ae,De,Pe,ge,Fe,ce,Ze){var ct=Pe.gl;if((ce===Pe.projectHasAlpha||Ze)&&_e(De,Pe,ge,Fe),ce===Pe.hasAlpha||Ze){Ae.bind();var pt=Ae.uniforms;pt.model=ge.model||x,pt.view=ge.view||x,pt.projection=ge.projection||x,P[0]=2/ct.drawingBufferWidth,P[1]=2/ct.drawingBufferHeight,pt.screenSize=P,pt.highlightId=Pe.highlightId,pt.highlightScale=Pe.highlightScale,pt.fragClipBounds=me,pt.clipBounds=Pe.axes.bounds,pt.opacity=Pe.opacity,pt.pickGroup=Pe.pickId/255,pt.pixelRatio=Fe,Pe.vao.bind(),Pe.vao.draw(ct.TRIANGLES,Pe.vertexCount),Pe.lineWidth>0&&(ct.lineWidth(Pe.lineWidth*Fe),Pe.vao.draw(ct.LINES,Pe.lineVertexCount,Pe.vertexCount)),Pe.vao.unbind()}}g.draw=function(Ae){var De=this.useOrtho?this.orthoShader:this.shader;ie(De,this.projectShader,this,Ae,this.pixelRatio,!1,!1)},g.drawTransparent=function(Ae){var De=this.useOrtho?this.orthoShader:this.shader;ie(De,this.projectShader,this,Ae,this.pixelRatio,!0,!1)},g.drawPick=function(Ae){var De=this.useOrtho?this.pickOrthoShader:this.pickPerspectiveShader;ie(De,this.pickProjectShader,this,Ae,1,!0,!0)},g.pick=function(Ae){if(!Ae||Ae.id!==this.pickId)return null;var De=Ae.value[2]+(Ae.value[1]<<8)+(Ae.value[0]<<16);if(De>=this.pointCount||De<0)return null;var Pe=this.points[De],ge=this._selectResult;ge.index=De;for(var Fe=0;Fe<3;++Fe)ge.position[Fe]=ge.dataCoordinate[Fe]=Pe[Fe];return ge},g.highlight=function(Ae){if(!Ae)this.highlightId=[1,1,1,1];else{var De=Ae.index,Pe=De&255,ge=De>>8&255,Fe=De>>16&255;this.highlightId=[Pe/255,ge/255,Fe/255,0]}};function Se(Ae,De,Pe,ge){var Fe;E(Ae)?De<Ae.length?Fe=Ae[De]:Fe=void 0:Fe=Ae,Fe=v(Fe);var ce=!0;s(Fe)&&(Fe="\u25BC",ce=!1),Pe||(Pe={});var Ze=Pe.family;E(Ze)&&(Ze=Ze[De]),Ze||(Ze="normal");var ct=Pe.weight;E(ct)&&(ct=ct[De]),ct||(ct="normal");var pt=Pe.style;E(pt)&&(pt=pt[De]),pt||(pt="normal");var Wt=Pe.variant;E(Wt)&&(Wt=Wt[De]),Wt||(Wt="normal");var st=d(Fe,{family:Ze,weight:ct,style:pt,variant:Wt},ge),st=d(Fe,Pe,ge);return{mesh:st[0],lines:st[1],bounds:st[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(E(Ae.project))this.axesProject=Ae.project;else{var De=!!Ae.project;this.axesProject=[De,De,De]}if("projectScale"in Ae)if(E(Ae.projectScale))this.projectScale=Ae.projectScale.slice();else{var Pe=+Ae.projectScale;this.projectScale=[Pe,Pe,Pe]}if(this.projectHasAlpha=!1,"projectOpacity"in Ae){if(E(Ae.projectOpacity))this.projectOpacity=Ae.projectOpacity.slice();else{var Pe=+Ae.projectOpacity;this.projectOpacity=[Pe,Pe,Pe]}for(var ge=0;ge<3;++ge)this.projectOpacity[ge]=k(this.projectOpacity[ge]),this.projectOpacity[ge]<1&&(this.projectHasAlpha=!0)}this.hasAlpha=!1,"opacity"in Ae&&(this.opacity=k(Ae.opacity),this.opacity<1&&(this.hasAlpha=!0)),this.dirty=!0;var Fe=Ae.position,ce={family:Ae.font||"normal",style:Ae.fontStyle||"normal",weight:Ae.fontWeight||"normal",variant:Ae.fontVariant||"normal"},Ze=Ae.alignment||[0,0],ct,pt;if(Ze.length===2)ct=Ze[0],pt=Ze[1];else{ct=[],pt=[];for(var ge=0;ge<Ze.length;++ge)ct[ge]=Ze[ge][0],pt[ge]=Ze[ge][1]}var Wt=[1/0,1/0,1/0],st=[-1/0,-1/0,-1/0],lt=Ae.glyph,Gt=Ae.color,Nt=Ae.size,$t=Ae.angle,sr=Ae.lineColor,wr=-1,ur=0,Qe=0,Et=0;if(Fe.length){Et=Fe.length;e:for(var ge=0;ge<Et;++ge){for(var er=Fe[ge],Ut=0;Ut<3;++Ut)if(isNaN(er[Ut])||!isFinite(er[Ut]))continue e;var Ft=Se(lt,ge,ce,this.pixelRatio),bt=Ft.mesh,yt=Ft.lines,Yt=Ft.bounds;ur+=bt.cells.length*3,Qe+=yt.edges.length*2}}var lr=ur+Qe,Tr=c.mallocFloat(3*lr),Rr=c.mallocFloat(4*lr),ei=c.mallocFloat(2*lr),Wr=c.mallocUint32(lr);if(lr>0){var Ur=0,dt=ur,Ge=[0,0,0,1],Je=[0,0,0,1],je=E(Gt)&&E(Gt[0]),$e=E(sr)&&E(sr[0]);e:for(var ge=0;ge<Et;++ge){wr+=1;for(var er=Fe[ge],Ut=0;Ut<3;++Ut){if(isNaN(er[Ut])||!isFinite(er[Ut]))continue e;st[Ut]=Math.max(st[Ut],er[Ut]),Wt[Ut]=Math.min(Wt[Ut],er[Ut])}var Ft=Se(lt,ge,ce,this.pixelRatio),bt=Ft.mesh,yt=Ft.lines,Yt=Ft.bounds,wt=Ft.visible;if(!wt)Ge=[1,1,1,0];else if(E(Gt)){var Ie;if(je?ge<Gt.length?Ie=Gt[ge]:Ie=[0,0,0,0]:Ie=Gt,Ie.length===3){for(var Ut=0;Ut<3;++Ut)Ge[Ut]=Ie[Ut];Ge[3]=1}else if(Ie.length===4){for(var Ut=0;Ut<4;++Ut)Ge[Ut]=Ie[Ut];!this.hasAlpha&&Ie[3]<1&&(this.hasAlpha=!0)}}else Ge[0]=Ge[1]=Ge[2]=0,Ge[3]=1;if(!wt)Je=[1,1,1,0];else if(E(sr)){var Ie;if($e?ge<sr.length?Ie=sr[ge]:Ie=[0,0,0,0]:Ie=sr,Ie.length===3){for(var Ut=0;Ut<3;++Ut)Je[Ut]=Ie[Ut];Je[Ut]=1}else if(Ie.length===4){for(var Ut=0;Ut<4;++Ut)Je[Ut]=Ie[Ut];!this.hasAlpha&&Ie[3]<1&&(this.hasAlpha=!0)}}else Je[0]=Je[1]=Je[2]=0,Je[3]=1;var xe=.5;wt?E(Nt)?ge<Nt.length?xe=+Nt[ge]:xe=12:Nt?xe=+Nt:this.useOrtho&&(xe=12):xe=0;var Ce=0;E($t)?ge<$t.length?Ce=+$t[ge]:Ce=0:$t&&(Ce=+$t);for(var vt=Math.cos(Ce),nr=Math.sin(Ce),er=Fe[ge],Ut=0;Ut<3;++Ut)st[Ut]=Math.max(st[Ut],er[Ut]),Wt[Ut]=Math.min(Wt[Ut],er[Ut]);var ir=ct,pr=pt,ir=0;E(ct)?ge<ct.length?ir=ct[ge]:ir=0:ct&&(ir=ct);var pr=0;E(pt)?ge<pt.length?pr=pt[ge]:pr=0:pt&&(pr=pt),ir*=ir>0?1-Yt[0][0]:ir<0?1+Yt[1][0]:1,pr*=pr>0?1-Yt[0][1]:pr<0?1+Yt[1][1]:1;for(var oi=[ir,pr],Pn=bt.cells||[],wn=bt.positions||[],Ut=0;Ut<Pn.length;++Ut)for(var di=Pn[Ut],Jr=0;Jr<3;++Jr){for(var fi=0;fi<3;++fi)Tr[3*Ur+fi]=er[fi];for(var fi=0;fi<4;++fi)Rr[4*Ur+fi]=Ge[fi];Wr[Ur]=wr;var Hi=wn[di[Jr]];ei[2*Ur]=xe*(vt*Hi[0]-nr*Hi[1]+oi[0]),ei[2*Ur+1]=xe*(nr*Hi[0]+vt*Hi[1]+oi[1]),Ur+=1}for(var Pn=yt.edges,wn=yt.positions,Ut=0;Ut<Pn.length;++Ut)for(var di=Pn[Ut],Jr=0;Jr<2;++Jr){for(var fi=0;fi<3;++fi)Tr[3*dt+fi]=er[fi];for(var fi=0;fi<4;++fi)Rr[4*dt+fi]=Je[fi];Wr[dt]=wr;var Hi=wn[di[Jr]];ei[2*dt]=xe*(vt*Hi[0]-nr*Hi[1]+oi[0]),ei[2*dt+1]=xe*(nr*Hi[0]+vt*Hi[1]+oi[1]),dt+=1}}}this.bounds=[Wt,st],this.points=Fe,this.pointCount=Fe.length,this.vertexCount=ur,this.lineVertexCount=Qe,this.pointBuffer.update(Tr),this.colorBuffer.update(Rr),this.glyphBuffer.update(ei),this.idBuffer.update(Wr),c.free(Tr),c.free(Rr),c.free(ei),c.free(Wr)},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 Le(Ae){var De=Ae.gl,Pe=h.createPerspective(De),ge=h.createOrtho(De),Fe=h.createProject(De),ce=h.createPickPerspective(De),Ze=h.createPickOrtho(De),ct=h.createPickProject(De),pt=l(De),Wt=l(De),st=l(De),lt=l(De),Gt=u(De,[{buffer:pt,size:3,type:De.FLOAT},{buffer:Wt,size:4,type:De.FLOAT},{buffer:st,size:2,type:De.FLOAT},{buffer:lt,size:4,type:De.UNSIGNED_BYTE,normalized:!0}]),Nt=new M(De,Pe,ge,Fe,pt,Wt,st,lt,Gt,ce,Ze,ct);return Nt.update(Ae),Nt}},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,C){for(var E=1e8,A=-1,L=-1,_=b.shape[0],k=b.shape[1],M=0;M<_;M++)for(var g=0;g<k;g++){var P=b.get(M,g,0),T=b.get(M,g,1),z=b.get(M,g,2),O=b.get(M,g,3);if(P<255||T<255||z<255||O<255){var V=p-M,G=C-g,Z=V*V+G*G;Z<E&&(E=Z,A=M,L=g)}}return[A,L,E]};function h(b,p,C,E,A){this.coord=[b,p],this.id=C,this.value=E,this.distance=A}function d(b,p,C){this.gl=b,this.fbo=p,this.buffer=C,this._readTimeout=null;var E=this;this._readCallback=function(){E.gl&&(p.bind(),b.readPixels(0,0,p.shape[0],p.shape[1],b.RGBA,b.UNSIGNED_BYTE,E.buffer),E._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],C=this.fbo.shape[1];if(C*p*4>this.buffer.length){l.free(this.buffer);for(var E=this.buffer=l.mallocUint8(c(C*p*4)),A=0;A<C*p*4;++A)E[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,C){if(!this.gl)return null;var E=this.fbo.shape.slice();b=b|0,p=p|0,typeof C!="number"&&(C=1);var A=Math.min(Math.max(b-C,0),E[0])|0,L=Math.min(Math.max(b+C,0),E[0])|0,_=Math.min(Math.max(p-C,0),E[1])|0,k=Math.min(Math.max(p+C,0),E[1])|0;if(L<=A||k<=_)return null;var M=[L-A,k-_],g=u(this.buffer,[M[0],M[1],4],[4,E[0]*4,1],4*(A+E[0]*_)),P=f(g.hi(M[0],M[1],1),C,C),T=P[0],z=P[1];if(T<0||Math.pow(this.radius,2)<P[2])return null;var O=g.get(T,z,0),V=g.get(T,z,1),G=g.get(T,z,2),Z=g.get(T,z,3);return new h(T+A|0,z+_|0,O,[V,G,Z],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 C=p[0],E=p[1],A={},L=s(b,C,E,A),_=l.mallocUint8(C*E*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,C=this.gl.getProgramParameter(this.program,this.gl.ACTIVE_ATTRIBUTES),E=this.gl.lastAttribCount;if(C>E)for(p=E;p<C;p++)this.gl.enableVertexAttribArray(p);else if(E>C)for(p=C;p<E;p++)this.gl.disableVertexAttribArray(p);this.gl.lastAttribCount=C,this.gl.useProgram(this.program)},v.dispose=function(){for(var p=this.gl.lastAttribCount,C=0;C<p;C++)this.gl.disableVertexAttribArray(C);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,C){return p.name<C.name?-1:1}v.update=function(p,C,E,A){if(!C||arguments.length===1){var L=p;p=L.vertex,C=L.fragment,E=L.uniforms,A=L.attributes}var _=this,k=_.gl,M=_._vref;_._vref=c.shader(k,k.VERTEX_SHADER,p),M&&M.dispose(),_.vertShader=_._vref.shader;var g=this._fref;if(_._fref=c.shader(k,k.FRAGMENT_SHADER,C),g&&g.dispose(),_.fragShader=_._fref.shader,!E||!A){var P=k.createProgram();if(k.attachShader(P,_.fragShader),k.attachShader(P,_.vertShader),k.linkProgram(P),!k.getProgramParameter(P,k.LINK_STATUS)){var T=k.getProgramInfoLog(P);throw new h(T,"Error linking program:"+T)}E=E||f.uniforms(k,P),A=A||f.attributes(k,P),k.deleteProgram(P)}A=A.slice(),A.sort(x);var z=[],O=[],V=[],G;for(G=0;G<A.length;++G){var Z=A[G];if(Z.type.indexOf("mat")>=0){for(var H=Z.type.charAt(Z.type.length-1)|0,N=new Array(H),j=0;j<H;++j)N[j]=V.length,O.push(Z.name+"["+j+"]"),typeof Z.location=="number"?V.push(Z.location+j):Array.isArray(Z.location)&&Z.location.length===H&&typeof Z.location[j]=="number"?V.push(Z.location[j]|0):V.push(-1);z.push({name:Z.name,type:Z.type,locations:N})}else z.push({name:Z.name,type:Z.type,locations:[V.length]}),O.push(Z.name),typeof Z.location=="number"?V.push(Z.location|0):V.push(-1)}var re=0;for(G=0;G<V.length;++G)if(V[G]<0){for(;V.indexOf(re)>=0;)re+=1;V[G]=re}var oe=new Array(E.length);function _e(){_.program=c.program(k,_._vref,_._fref,O,V);for(var Me=0;Me<E.length;++Me)oe[Me]=k.getUniformLocation(_.program,E[Me].name)}_e(),_._relink=_e,_.types={uniforms:u(E),attributes:u(A)},_.attributes=l(k,_,z,V),Object.defineProperty(_,"uniforms",s(k,_,E,oe))};function b(p,C,E,A,L){var _=new d(p);return _.update(C,E,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,C,E){this._gl=v,this._wrapper=x,this._index=b,this._locations=p,this._dimension=C,this._constFunc=E}var u=l.prototype;u.pointer=function(x,b,p,C){var E=this,A=E._gl,L=E._locations[E._index];A.vertexAttribPointer(L,E._dimension,x||A.FLOAT,!!b,p||0,C||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,C){return b.length===void 0?v.vertexAttrib3f(x,b,p,C):v.vertexAttrib3fv(x,b)},function(v,x,b,p,C,E){return b.length===void 0?v.vertexAttrib4f(x,b,p,C,E):v.vertexAttrib4fv(x,b)}];function f(v,x,b,p,C,E,A){var L=c[C],_=new l(v,x,b,p,C,L);Object.defineProperty(E,A,{set:function(k){return v.disableVertexAttribArray(p[b]),L(v,p[b],k),k},get:function(){return _},enumerable:!0})}function h(v,x,b,p,C,E,A){for(var L=new Array(C),_=new Array(C),k=0;k<C;++k)f(v,x,b[k],p,C,L,k),_[k]=L[k];Object.defineProperty(L,"location",{set:function(P){if(Array.isArray(P))for(var T=0;T<C;++T)_[T].location=P[T];else for(var T=0;T<C;++T)_[T].location=P+T;return P},get:function(){for(var P=new Array(C),T=0;T<C;++T)P[T]=p[b[T]];return P},enumerable:!0}),L.pointer=function(P,T,z,O){P=P||v.FLOAT,T=!!T,z=z||C*C,O=O||0;for(var V=0;V<C;++V){var G=p[b[V]];v.vertexAttribPointer(G,C,P,T,z,O+V*C),v.enableVertexAttribArray(G)}};var M=new Array(C),g=v["vertexAttrib"+C+"fv"];Object.defineProperty(E,A,{set:function(P){for(var T=0;T<C;++T){var z=p[b[T]];if(v.disableVertexAttribArray(z),Array.isArray(P[0]))g.call(v,z,P[T]);else{for(var O=0;O<C;++O)M[O]=P[C*T+O];g.call(v,z,M)}}return P},get:function(){return L},enumerable:!0})}function d(v,x,b,p){for(var C={},E=0,A=b.length;E<A;++E){var L=b[E],_=L.name,k=L.type,M=L.locations;switch(k){case"bool":case"int":case"float":f(v,x,M[0],p,1,C,_);break;default:if(k.indexOf("vec")>=0){var g=k.charCodeAt(k.length-1)-48;if(g<2||g>4)throw new s("","Invalid data type for attribute "+_+": "+k);f(v,x,M[0],p,g,C,_)}else if(k.indexOf("mat")>=0){var g=k.charCodeAt(k.length-1)-48;if(g<2||g>4)throw new s("","Invalid data type for attribute "+_+": "+k);h(v,x,M,p,g,C,_)}else throw new s("","Unknown data type for attribute "+_+": "+k);break}}return C}},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(k){return function(M,g,P){return M.getUniform(g.program,P[k])}}function p(k){return function(g){for(var P=C("",k),T=0;T<P.length;++T){var z=P[T],O=z[0],V=z[1];if(x[V]){var G=g;if(typeof O=="string"&&(O.indexOf(".")===0||O.indexOf("[")===0)){var Z=O;if(O.indexOf(".")===0&&(Z=O.slice(1)),Z.indexOf("]")===Z.length-1){var H=Z.indexOf("["),N=Z.slice(0,H),j=Z.slice(H+1,Z.length-1);G=N?g[N][j]:g[j]}else G=g[Z]}var re=v[V].type,oe;switch(re){case"bool":case"int":case"sampler2D":case"samplerCube":h.uniform1i(x[V],G);break;case"float":h.uniform1f(x[V],G);break;default:var _e=re.indexOf("vec");if(0<=_e&&_e<=1&&re.length===4+_e){if(oe=re.charCodeAt(re.length-1)-48,oe<2||oe>4)throw new l("","Invalid data type");switch(re.charAt(0)){case"b":case"i":h["uniform"+oe+"iv"](x[V],G);break;case"v":h["uniform"+oe+"fv"](x[V],G);break;default:throw new l("","Unrecognized data type for vector "+name+": "+re)}}else if(re.indexOf("mat")===0&&re.length===4){if(oe=re.charCodeAt(re.length-1)-48,oe<2||oe>4)throw new l("","Invalid uniform dimension type for matrix "+name+": "+re);h["uniformMatrix"+oe+"fv"](x[V],!1,G);break}else throw new l("","Unknown uniform data type for "+name+": "+re)}}}}}function C(k,M){if(typeof M!="object")return[[k,M]];var g=[];for(var P in M){var T=M[P],z=k;parseInt(P)+""===P?z+="["+P+"]":z+="."+P,typeof T=="object"?g.push.apply(g,C(z,T)):g.push([z,T])}return g}function E(k){switch(k){case"bool":return!1;case"int":case"sampler2D":case"samplerCube":return 0;case"float":return 0;default:var M=k.indexOf("vec");if(0<=M&&M<=1&&k.length===4+M){var g=k.charCodeAt(k.length-1)-48;if(g<2||g>4)throw new l("","Invalid data type");return k.charAt(0)==="b"?c(g,!1):c(g,0)}else if(k.indexOf("mat")===0&&k.length===4){var g=k.charCodeAt(k.length-1)-48;if(g<2||g>4)throw new l("","Invalid uniform dimension type for matrix "+name+": "+k);return c(g*g,0)}else throw new l("","Unknown uniform data type for "+name+": "+k)}}function A(k,M,g){if(typeof g=="object"){var P=L(g);Object.defineProperty(k,M,{get:u(P),set:p(g),enumerable:!0,configurable:!1})}else x[g]?Object.defineProperty(k,M,{get:b(g),set:p(g),enumerable:!0,configurable:!1}):k[M]=E(v[g].type)}function L(k){var M;if(Array.isArray(k)){M=new Array(k.length);for(var g=0;g<k.length;++g)A(M,g,k[g])}else{M={};for(var P in k)A(M,P,k[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 C=0;C<b.size;++C)v.push({name:b.name.replace("[0]","["+C+"]"),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=C,a.program=E;var s=o(8866),l=o(2992),u=typeof WeakMap=="undefined"?o(606):WeakMap,c=new u,f=0;function h(A,L,_,k,M,g,P){this.id=A,this.src=L,this.type=_,this.shader=k,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,k=0,M=_.length;k<M;++k){var g=A.programs[_[k]];g&&(delete A.programs[k],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 k=A.createShader(L);if(A.shaderSource(k,_),A.compileShader(k),!A.getShaderParameter(k,A.COMPILE_STATUS)){var M=A.getShaderInfoLog(k);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 k}v.getShaderReference=function(A,L){var _=this.gl,k=this.shaders[A===_.FRAGMENT_SHADER|0],M=k[L];if(!M||!_.isShader(M.shader)){var g=x(_,A,L);M=k[L]=new h(f++,L,A,g,[],1,this)}else M.count+=1;return M};function b(A,L,_,k,M){var g=A.createProgram();A.attachShader(g,L),A.attachShader(g,_);for(var P=0;P<k.length;++P)A.bindAttribLocation(g,M[P],k[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,_,k){var M=[A.id,L.id,_.join(":"),k.join(":")].join("@"),g=this.programs[M];return(!g||!this.gl.isProgram(g))&&(this.programs[M]=g=b(this.gl,A.shader,L.shader,_,k),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 C(A,L,_){return p(A).getShaderReference(L,_)}function E(A,L,_,k,M){return p(A).getProgram(L,_,k,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,C,E,A){this.gl=p,this.buffer=C,this.vao=E,this.shader=A,this.pixelRatio=1,this.bounds=[[-1e3,-1e3,-1e3],[1e3,1e3,1e3]],this.position=[0,0,0],this.lineWidth=[2,2,2],this.colors=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.enabled=[!0,!0,!0],this.drawSides=[!0,!0,!0],this.axes=null}var h=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 C=this.gl,E=this.vao,A=this.shader;E.bind(),A.bind();var L=p.model||c,_=p.view||c,k=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]=C.drawingBufferWidth,x[1]=C.drawingBufferHeight,A.uniforms.model=L,A.uniforms.view=_,A.uniforms.projection=k,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]&&(E.draw(C.TRIANGLES,6,6*T),this.drawSides[T]&&E.draw(C.TRIANGLES,12,18+12*T));E.unbind()},h.update=function(p){p&&("bounds"in p&&(this.bounds=p.bounds),"position"in p&&(this.position=p.position),"lineWidth"in p&&(this.lineWidth=p.lineWidth),"colors"in p&&(this.colors=p.colors),"enabled"in p&&(this.enabled=p.enabled),"drawSides"in p&&(this.drawSides=p.drawSides))},h.dispose=function(){this.vao.dispose(),this.buffer.dispose(),this.shader.dispose()};function b(p,C){var E=[];function A(g,P,T,z,O,V){var G=[g,P,T,0,0,0,1];G[z+3]=1,G[z]=O,E.push.apply(E,G),G[6]=-1,E.push.apply(E,G),G[z]=V,E.push.apply(E,G),E.push.apply(E,G),G[6]=1,E.push.apply(E,G),G[z]=O,E.push.apply(E,G)}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,E),_=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}]),k=u(p);k.attributes.position.location=0,k.attributes.color.location=1,k.attributes.weight.location=2;var M=new f(p,L,_,k);return M.update(C),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,_,k){for(var M=A.points,g=A.velocities,P=A.divergences,T=[],z=[],O=[],V=[],G=[],Z=[],H=0,N=0,j=l.create(),re=l.create(),oe=8,_e=0;_e<M.length;_e++){var Me=M[_e],ke=g[_e],me=P[_e];L===0&&(me=_*.05),N=s.length(ke)/k,j=l.create(),s.copy(j,ke),j[3]=me;for(var ie=0;ie<oe;ie++)G[ie]=[Me[0],Me[1],Me[2],ie];if(V.length>0)for(var ie=0;ie<oe;ie++){var Se=(ie+1)%oe;T.push(V[ie],G[ie],G[Se],G[Se],V[Se],V[ie]),O.push(re,j,j,j,re,re),Z.push(H,N,N,N,H,H);var Le=T.length;z.push([Le-6,Le-5,Le-4],[Le-3,Le-2,Le-1])}var Ae=V;V=G,G=Ae;var De=re;re=j,j=De;var Pe=H;H=N,N=Pe}return{positions:T,cells:z,vectors:O,vertexIntensity:Z}},f=function(A,L,_,k){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 z=A.map(function(_e){return c(_e,_,k,M)}),O=[],V=[],G=[],Z=[],g=0;g<z.length;g++){var H=z[g],N=O.length;O=O.concat(H.positions),G=G.concat(H.vectors),Z=Z.concat(H.vertexIntensity);for(var T=0;T<H.cells.length;T++){var j=H.cells[T],re=[];V.push(re);for(var oe=0;oe<j.length;oe++)re.push(j[oe]+N)}}return{positions:O,cells:V,vectors:G,vertexIntensity:Z,colormap:L}},h=function(A,L){var _=A.length,k;for(k=0;k<_;k++){var M=A[k];if(M===L)return k;if(M>L)return k-1}return k},d=function(A,L,_){return A<L?L:A>_?_:A},v=function(A,L,_){var k=L.vectors,M=L.meshgrid,g=A[0],P=A[1],T=A[2],z=M[0].length,O=M[1].length,V=M[2].length,G=h(M[0],g),Z=h(M[1],P),H=h(M[2],T),N=G+1,j=Z+1,re=H+1;if(G=d(G,0,z-1),N=d(N,0,z-1),Z=d(Z,0,O-1),j=d(j,0,O-1),H=d(H,0,V-1),re=d(re,0,V-1),G<0||Z<0||H<0||N>z-1||j>O-1||re>V-1)return s.create();var oe=M[0][G],_e=M[0][N],Me=M[1][Z],ke=M[1][j],me=M[2][H],ie=M[2][re],Se=(g-oe)/(_e-oe),Le=(P-Me)/(ke-Me),Ae=(T-me)/(ie-me);isFinite(Se)||(Se=.5),isFinite(Le)||(Le=.5),isFinite(Ae)||(Ae=.5);var De,Pe,ge,Fe,ce,Ze;switch(_.reversedX&&(G=z-1-G,N=z-1-N),_.reversedY&&(Z=O-1-Z,j=O-1-j),_.reversedZ&&(H=V-1-H,re=V-1-re),_.filled){case 5:ce=H,Ze=re,ge=Z*V,Fe=j*V,De=G*V*O,Pe=N*V*O;break;case 4:ce=H,Ze=re,De=G*V,Pe=N*V,ge=Z*V*z,Fe=j*V*z;break;case 3:ge=Z,Fe=j,ce=H*O,Ze=re*O,De=G*O*V,Pe=N*O*V;break;case 2:ge=Z,Fe=j,De=G*O,Pe=N*O,ce=H*O*z,Ze=re*O*z;break;case 1:De=G,Pe=N,ce=H*z,Ze=re*z,ge=Z*z*V,Fe=j*z*V;break;default:De=G,Pe=N,ge=Z*z,Fe=j*z,ce=H*z*O,Ze=re*z*O;break}var ct=k[De+ge+ce],pt=k[De+ge+Ze],Wt=k[De+Fe+ce],st=k[De+Fe+Ze],lt=k[Pe+ge+ce],Gt=k[Pe+ge+Ze],Nt=k[Pe+Fe+ce],$t=k[Pe+Fe+Ze],sr=s.create(),wr=s.create(),ur=s.create(),Qe=s.create();s.lerp(sr,ct,lt,Se),s.lerp(wr,pt,Gt,Se),s.lerp(ur,Wt,Nt,Se),s.lerp(Qe,st,$t,Se);var Et=s.create(),er=s.create();s.lerp(Et,sr,ur,Le),s.lerp(er,wr,Qe,Le);var Ut=s.create();return s.lerp(Ut,Et,er,Ae),Ut},x=function(A,L){var _=L[0],k=L[1],M=L[2];return A[0]=_<0?-_:_,A[1]=k<0?-k:k,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,k=1;k<_;k++){var M=Math.abs(A[k]-A[k-1]);M<L&&(L=M)}return L},p=function(A){for(var L=[],_=[],k=[],M={},g={},P={},T=A.length,z=0;z<T;z++){var O=A[z],V=O[0],G=O[1],Z=O[2];M[V]||(L.push(V),M[V]=!0),g[G]||(_.push(G),g[G]=!0),P[Z]||(k.push(Z),P[Z]=!0)}var H=b(L),N=b(_),j=b(k),re=Math.min(H,N,j);return isFinite(re)?re:1};i.exports=function(A,L){var _=A.startingPositions,k=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 z=A.getVelocity||function(Gt){return v(Gt,A,T)},O=A.getDivergence||function(Gt,Nt){var $t=s.create(),sr=1e-4;s.add($t,Gt,[sr,0,0]);var wr=z($t);s.subtract(wr,wr,Nt),s.scale(wr,wr,1/sr),s.add($t,Gt,[0,sr,0]);var ur=z($t);s.subtract(ur,ur,Nt),s.scale(ur,ur,1/sr),s.add($t,Gt,[0,0,sr]);var Qe=z($t);return s.subtract(Qe,Qe,Nt),s.scale(Qe,Qe,1/sr),s.add($t,wr,ur),s.add($t,$t,Qe),$t},V=[],G=L[0][0],Z=L[0][1],H=L[0][2],N=L[1][0],j=L[1][1],re=L[1][2],oe=function(Gt){var Nt=Gt[0],$t=Gt[1],sr=Gt[2];return!(Nt<G||Nt>N||$t<Z||$t>j||sr<H||sr>re)},_e=s.distance(L[0],L[1]),Me=10*_e/k,ke=Me*Me,me=1,ie=0,Se=_.length;Se>1&&(me=p(_));for(var Le=0;Le<Se;Le++){var Ae=s.create();s.copy(Ae,_[Le]);var De=[Ae],Pe=[],ge=z(Ae),Fe=Ae;Pe.push(ge);var ce=[],Ze=O(Ae,ge),ct=s.length(Ze);isFinite(ct)&&ct>ie&&(ie=ct),ce.push(ct),V.push({points:De,velocities:Pe,divergences:ce});for(var pt=0;pt<k*100&&De.length<k&&oe(Ae);){pt++;var Wt=s.clone(ge),st=s.squaredLength(Wt);if(st===0)break;if(st>ke&&s.scale(Wt,Wt,Me/Math.sqrt(st)),s.add(Wt,Wt,Ae),ge=z(Wt),s.squaredDistance(Fe,Wt)-ke>-1e-4*ke){De.push(Wt),Fe=Wt,Pe.push(ge);var Ze=O(Wt,ge),ct=s.length(Ze);isFinite(ct)&&ct>ie&&(ie=ct),ce.push(ct)}Ae=Wt}}var lt=f(V,A.colormap,ie,me);return g?lt.tubeScale=g:(ie===0&&(ie=1),lt.tubeScale=M*.5*me/ie),lt};var C=o(6740),E=o(6405).createMesh;i.exports.createTubeMesh=function(A,L){return E(A,L,{shaders:C,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=De;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),C=o(7608),E=o(2478),A=o(6199),L=o(990),_=L.createShader,k=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],z=[[0,0],[0,1],[1,0],[1,1],[1,0],[0,1]],O=[[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 Pe=0;Pe<3;++Pe){var ge=O[Pe],Fe=(Pe+1)%3,ce=(Pe+2)%3;ge[Fe+0]=1,ge[ce+3]=1,ge[Pe+6]=1}})();function V(Pe,ge,Fe,ce,Ze){this.position=Pe,this.index=ge,this.uv=Fe,this.level=ce,this.dataCoordinate=Ze}var G=256;function Z(Pe,ge,Fe,ce,Ze,ct,pt,Wt,st,lt,Gt,Nt,$t,sr,wr){this.gl=Pe,this.shape=ge,this.bounds=Fe,this.objectOffset=wr,this.intensityBounds=[],this._shader=ce,this._pickShader=Ze,this._coordinateBuffer=ct,this._vao=pt,this._colorMap=Wt,this._contourShader=st,this._contourPickShader=lt,this._contourBuffer=Gt,this._contourVAO=Nt,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=$t,this._dynamicVAO=sr,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 H=Z.prototype;H.genColormap=function(Pe,ge){var Fe=!1,ce=v([h({colormap:Pe,nshades:G,format:"rgba"}).map(function(Ze,ct){var pt=ge?N(ct/255,ge):Ze[3];return pt<1&&(Fe=!0),[Ze[0],Ze[1],Ze[2],255*pt]})]);return d.divseq(ce,255),this.hasAlphaScale=Fe,ce},H.isTransparent=function(){return this.opacity<1||this.hasAlphaScale},H.isOpaque=function(){return!this.isTransparent()},H.pickSlots=1,H.setPickBase=function(Pe){this.pickId=Pe};function N(Pe,ge){if(!ge||!ge.length)return 1;for(var Fe=0;Fe<ge.length;++Fe){if(ge.length<2)return 1;if(ge[Fe][0]===Pe)return ge[Fe][1];if(ge[Fe][0]>Pe&&Fe>0){var ce=(ge[Fe][0]-Pe)/(ge[Fe][0]-ge[Fe-1][0]);return ge[Fe][1]*(1-ce)+ce*ge[Fe-1][1]}}return 1}var j=[0,0,0],re={showSurface:!1,showContour:!1,projections:[T.slice(),T.slice(),T.slice()],clipBounds:[[[0,0,0],[0,0,0]],[[0,0,0],[0,0,0]],[[0,0,0],[0,0,0]]]};function oe(Pe,ge){var Fe,ce,Ze,ct=ge.axes&&ge.axes.lastCubeProps.axis||j,pt=ge.showSurface,Wt=ge.showContour;for(Fe=0;Fe<3;++Fe)for(pt=pt||ge.surfaceProject[Fe],ce=0;ce<3;++ce)Wt=Wt||ge.contourProject[Fe][ce];for(Fe=0;Fe<3;++Fe){var st=re.projections[Fe];for(ce=0;ce<16;++ce)st[ce]=0;for(ce=0;ce<4;++ce)st[5*ce]=1;st[5*Fe]=0,st[12+Fe]=ge.axesBounds[+(ct[Fe]>0)][Fe],p(st,Pe.model,st);var lt=re.clipBounds[Fe];for(Ze=0;Ze<2;++Ze)for(ce=0;ce<3;++ce)lt[Ze][ce]=Pe.clipBounds[Ze][ce];lt[0][Fe]=-1e8,lt[1][Fe]=1e8}return re.showSurface=pt,re.showContour=Wt,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 me(Pe,ge){Pe=Pe||{};var Fe=this.gl;Fe.disable(Fe.CULL_FACE),this._colorMap.bind(0);var ce=_e;ce.model=Pe.model||T,ce.view=Pe.view||T,ce.projection=Pe.projection||T,ce.lowerBound=[this.bounds[0][0],this.bounds[0][1],this.colorBounds[0]||this.bounds[0][2]],ce.upperBound=[this.bounds[1][0],this.bounds[1][1],this.colorBounds[1]||this.bounds[1][2]],ce.objectOffset=this.objectOffset,ce.contourColor=this.contourColor[0],ce.inverseModel=C(ce.inverseModel,ce.model);for(var Ze=0;Ze<2;++Ze)for(var ct=ce.clipBounds[Ze],pt=0;pt<3;++pt)ct[pt]=Math.min(Math.max(this.clipBounds[Ze][pt],-1e8),1e8);ce.kambient=this.ambientLight,ce.kdiffuse=this.diffuseLight,ce.kspecular=this.specularLight,ce.roughness=this.roughness,ce.fresnel=this.fresnel,ce.opacity=this.opacity,ce.height=0,ce.permutation=ke,ce.vertexColor=this.vertexColor;var Wt=Me;for(p(Wt,ce.view,ce.model),p(Wt,ce.projection,Wt),C(Wt,Wt),Ze=0;Ze<3;++Ze)ce.eyePosition[Ze]=Wt[12+Ze]/Wt[15];var st=Wt[15];for(Ze=0;Ze<3;++Ze)st+=this.lightPosition[Ze]*Wt[4*Ze+3];for(Ze=0;Ze<3;++Ze){var lt=Wt[12+Ze];for(pt=0;pt<3;++pt)lt+=Wt[4*pt+Ze]*this.lightPosition[pt];ce.lightPosition[Ze]=lt/st}var Gt=oe(ce,this);if(Gt.showSurface){for(this._shader.bind(),this._shader.uniforms=ce,this._vao.bind(),this.showSurface&&this._vertexCount&&this._vao.draw(Fe.TRIANGLES,this._vertexCount),Ze=0;Ze<3;++Ze)!this.surfaceProject[Ze]||!this.vertexCount||(this._shader.uniforms.model=Gt.projections[Ze],this._shader.uniforms.clipBounds=Gt.clipBounds[Ze],this._vao.draw(Fe.TRIANGLES,this._vertexCount));this._vao.unbind()}if(Gt.showContour){var Nt=this._contourShader;ce.kambient=1,ce.kdiffuse=0,ce.kspecular=0,ce.opacity=1,Nt.bind(),Nt.uniforms=ce;var $t=this._contourVAO;for($t.bind(),Ze=0;Ze<3;++Ze)for(Nt.uniforms.permutation=O[Ze],Fe.lineWidth(this.contourWidth[Ze]*this.pixelRatio),pt=0;pt<this.contourLevels[Ze].length;++pt)pt===this.highlightLevel[Ze]?(Nt.uniforms.contourColor=this.highlightColor[Ze],Nt.uniforms.contourTint=this.highlightTint[Ze]):(pt===0||pt-1===this.highlightLevel[Ze])&&(Nt.uniforms.contourColor=this.contourColor[Ze],Nt.uniforms.contourTint=this.contourTint[Ze]),this._contourCounts[Ze][pt]&&(Nt.uniforms.height=this.contourLevels[Ze][pt],$t.draw(Fe.LINES,this._contourCounts[Ze][pt],this._contourOffsets[Ze][pt]));for(Ze=0;Ze<3;++Ze)for(Nt.uniforms.model=Gt.projections[Ze],Nt.uniforms.clipBounds=Gt.clipBounds[Ze],pt=0;pt<3;++pt)if(this.contourProject[Ze][pt]){Nt.uniforms.permutation=O[pt],Fe.lineWidth(this.contourWidth[pt]*this.pixelRatio);for(var sr=0;sr<this.contourLevels[pt].length;++sr)sr===this.highlightLevel[pt]?(Nt.uniforms.contourColor=this.highlightColor[pt],Nt.uniforms.contourTint=this.highlightTint[pt]):(sr===0||sr-1===this.highlightLevel[pt])&&(Nt.uniforms.contourColor=this.contourColor[pt],Nt.uniforms.contourTint=this.contourTint[pt]),this._contourCounts[pt][sr]&&(Nt.uniforms.height=this.contourLevels[pt][sr],$t.draw(Fe.LINES,this._contourCounts[pt][sr],this._contourOffsets[pt][sr]))}for($t.unbind(),$t=this._dynamicVAO,$t.bind(),Ze=0;Ze<3;++Ze)if(this._dynamicCounts[Ze]!==0)for(Nt.uniforms.model=ce.model,Nt.uniforms.clipBounds=ce.clipBounds,Nt.uniforms.permutation=O[Ze],Fe.lineWidth(this.dynamicWidth[Ze]*this.pixelRatio),Nt.uniforms.contourColor=this.dynamicColor[Ze],Nt.uniforms.contourTint=this.dynamicTint[Ze],Nt.uniforms.height=this.dynamicLevel[Ze],$t.draw(Fe.LINES,this._dynamicCounts[Ze],this._dynamicOffsets[Ze]),pt=0;pt<3;++pt)this.contourProject[pt][Ze]&&(Nt.uniforms.model=Gt.projections[pt],Nt.uniforms.clipBounds=Gt.clipBounds[pt],$t.draw(Fe.LINES,this._dynamicCounts[Ze],this._dynamicOffsets[Ze]));$t.unbind()}}H.draw=function(Pe){return me.call(this,Pe,!1)},H.drawTransparent=function(Pe){return me.call(this,Pe,!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]};H.drawPick=function(Pe){Pe=Pe||{};var ge=this.gl;ge.disable(ge.CULL_FACE);var Fe=ie;Fe.model=Pe.model||T,Fe.view=Pe.view||T,Fe.projection=Pe.projection||T,Fe.shape=this._field[2].shape,Fe.pickId=this.pickId/255,Fe.lowerBound=this.bounds[0],Fe.upperBound=this.bounds[1],Fe.objectOffset=this.objectOffset,Fe.permutation=ke;for(var ce=0;ce<2;++ce)for(var Ze=Fe.clipBounds[ce],ct=0;ct<3;++ct)Ze[ct]=Math.min(Math.max(this.clipBounds[ce][ct],-1e8),1e8);var pt=oe(Fe,this);if(pt.showSurface){for(this._pickShader.bind(),this._pickShader.uniforms=Fe,this._vao.bind(),this._vao.draw(ge.TRIANGLES,this._vertexCount),ce=0;ce<3;++ce)this.surfaceProject[ce]&&(this._pickShader.uniforms.model=pt.projections[ce],this._pickShader.uniforms.clipBounds=pt.clipBounds[ce],this._vao.draw(ge.TRIANGLES,this._vertexCount));this._vao.unbind()}if(pt.showContour){var Wt=this._contourPickShader;Wt.bind(),Wt.uniforms=Fe;var st=this._contourVAO;for(st.bind(),ct=0;ct<3;++ct)for(ge.lineWidth(this.contourWidth[ct]*this.pixelRatio),Wt.uniforms.permutation=O[ct],ce=0;ce<this.contourLevels[ct].length;++ce)this._contourCounts[ct][ce]&&(Wt.uniforms.height=this.contourLevels[ct][ce],st.draw(ge.LINES,this._contourCounts[ct][ce],this._contourOffsets[ct][ce]));for(ce=0;ce<3;++ce)for(Wt.uniforms.model=pt.projections[ce],Wt.uniforms.clipBounds=pt.clipBounds[ce],ct=0;ct<3;++ct)if(this.contourProject[ce][ct]){Wt.uniforms.permutation=O[ct],ge.lineWidth(this.contourWidth[ct]*this.pixelRatio);for(var lt=0;lt<this.contourLevels[ct].length;++lt)this._contourCounts[ct][lt]&&(Wt.uniforms.height=this.contourLevels[ct][lt],st.draw(ge.LINES,this._contourCounts[ct][lt],this._contourOffsets[ct][lt]))}st.unbind()}},H.pick=function(Pe){if(!Pe||Pe.id!==this.pickId)return null;var ge=this._field[2].shape,Fe=this._pickResult,ce=ge[0]*(Pe.value[0]+(Pe.value[2]>>4)/16)/255,Ze=Math.floor(ce),ct=ce-Ze,pt=ge[1]*(Pe.value[1]+(Pe.value[2]&15)/16)/255,Wt=Math.floor(pt),st=pt-Wt;Ze+=1,Wt+=1;var lt=Fe.position;lt[0]=lt[1]=lt[2]=0;for(var Gt=0;Gt<2;++Gt)for(var Nt=Gt?ct:1-ct,$t=0;$t<2;++$t)for(var sr=$t?st:1-st,wr=Ze+Gt,ur=Wt+$t,Qe=Nt*sr,Et=0;Et<3;++Et)lt[Et]+=this._field[Et].get(wr,ur)*Qe;for(var er=this._pickResult.level,Ut=0;Ut<3;++Ut)if(er[Ut]=E.le(this.contourLevels[Ut],lt[Ut]),er[Ut]<0)this.contourLevels[Ut].length>0&&(er[Ut]=0);else if(er[Ut]<this.contourLevels[Ut].length-1){var Ft=this.contourLevels[Ut][er[Ut]],bt=this.contourLevels[Ut][er[Ut]+1];Math.abs(Ft-lt[Ut])>Math.abs(bt-lt[Ut])&&(er[Ut]+=1)}for(Fe.index[0]=ct<.5?Ze:Ze+1,Fe.index[1]=st<.5?Wt:Wt+1,Fe.uv[0]=ce/ge[0],Fe.uv[1]=pt/ge[1],Et=0;Et<3;++Et)Fe.dataCoordinate[Et]=this._field[Et].get(Fe.index[0],Fe.index[1]);return Fe},H.padField=function(Pe,ge){var Fe=ge.shape.slice(),ce=Pe.shape.slice();d.assign(Pe.lo(1,1).hi(Fe[0],Fe[1]),ge),d.assign(Pe.lo(1).hi(Fe[0],1),ge.hi(Fe[0],1)),d.assign(Pe.lo(1,ce[1]-1).hi(Fe[0],1),ge.lo(0,Fe[1]-1).hi(Fe[0],1)),d.assign(Pe.lo(0,1).hi(1,Fe[1]),ge.hi(1)),d.assign(Pe.lo(ce[0]-1,1).hi(1,Fe[1]),ge.lo(Fe[0]-1)),Pe.set(0,0,ge.get(0,0)),Pe.set(0,ce[1]-1,ge.get(0,Fe[1]-1)),Pe.set(ce[0]-1,0,ge.get(Fe[0]-1,0)),Pe.set(ce[0]-1,ce[1]-1,ge.get(Fe[0]-1,Fe[1]-1))};function Se(Pe,ge){return Array.isArray(Pe)?[ge(Pe[0]),ge(Pe[1]),ge(Pe[2])]:[ge(Pe),ge(Pe),ge(Pe)]}function Le(Pe){return Array.isArray(Pe)?Pe.length===3?[Pe[0],Pe[1],Pe[2],1]:[Pe[0],Pe[1],Pe[2],Pe[3]]:[0,0,0,1]}function Ae(Pe){if(Array.isArray(Pe)){if(Array.isArray(Pe))return[Le(Pe[0]),Le(Pe[1]),Le(Pe[2])];var ge=Le(Pe);return[ge.slice(),ge.slice(),ge.slice()]}}H.update=function(Pe){Pe=Pe||{},this.objectOffset=Pe.objectOffset||this.objectOffset,this.dirty=!0,"contourWidth"in Pe&&(this.contourWidth=Se(Pe.contourWidth,Number)),"showContour"in Pe&&(this.showContour=Se(Pe.showContour,Boolean)),"showSurface"in Pe&&(this.showSurface=!!Pe.showSurface),"contourTint"in Pe&&(this.contourTint=Se(Pe.contourTint,Boolean)),"contourColor"in Pe&&(this.contourColor=Ae(Pe.contourColor)),"contourProject"in Pe&&(this.contourProject=Se(Pe.contourProject,function(yn){return Se(yn,Boolean)})),"surfaceProject"in Pe&&(this.surfaceProject=Pe.surfaceProject),"dynamicColor"in Pe&&(this.dynamicColor=Ae(Pe.dynamicColor)),"dynamicTint"in Pe&&(this.dynamicTint=Se(Pe.dynamicTint,Number)),"dynamicWidth"in Pe&&(this.dynamicWidth=Se(Pe.dynamicWidth,Number)),"opacity"in Pe&&(this.opacity=Pe.opacity),"opacityscale"in Pe&&(this.opacityscale=Pe.opacityscale),"colorBounds"in Pe&&(this.colorBounds=Pe.colorBounds),"vertexColor"in Pe&&(this.vertexColor=Pe.vertexColor?1:0),"colormap"in Pe&&this._colorMap.setPixels(this.genColormap(Pe.colormap,this.opacityscale));var ge=Pe.field||Pe.coords&&Pe.coords[2]||null,Fe=!1;if(ge||(this._field[2].shape[0]||this._field[2].shape[2]?ge=this._field[2].lo(1,1).hi(this._field[2].shape[0]-2,this._field[2].shape[1]-2):ge=this._field[2].hi(0,0)),"field"in Pe||"coords"in Pe){var ce=(ge.shape[0]+2)*(ge.shape[1]+2);ce>this._field[2].data.length&&(f.freeFloat(this._field[2].data),this._field[2].data=f.mallocFloat(s.nextPow2(ce))),this._field[2]=x(this._field[2].data,[ge.shape[0]+2,ge.shape[1]+2]),this.padField(this._field[2],ge),this.shape=ge.shape.slice();for(var Ze=this.shape,ct=0;ct<2;++ct)this._field[2].size>this._field[ct].data.length&&(f.freeFloat(this._field[ct].data),this._field[ct].data=f.mallocFloat(this._field[2].size)),this._field[ct]=x(this._field[ct].data,[Ze[0]+2,Ze[1]+2]);if(Pe.coords){var pt=Pe.coords;if(!Array.isArray(pt)||pt.length!==3)throw new Error("gl-surface: invalid coordinates for x/y");for(ct=0;ct<2;++ct){var Wt=pt[ct];for($t=0;$t<2;++$t)if(Wt.shape[$t]!==Ze[$t])throw new Error("gl-surface: coords have incorrect shape");this.padField(this._field[ct],Wt)}}else if(Pe.ticks){var st=Pe.ticks;if(!Array.isArray(st)||st.length!==2)throw new Error("gl-surface: invalid ticks");for(ct=0;ct<2;++ct){var lt=st[ct];if((Array.isArray(lt)||lt.length)&&(lt=x(lt)),lt.shape[0]!==Ze[ct])throw new Error("gl-surface: invalid tick length");var Gt=x(lt.data,Ze);Gt.stride[ct]=lt.stride[0],Gt.stride[ct^1]=0,this.padField(this._field[ct],Gt)}}else{for(ct=0;ct<2;++ct){var Nt=[0,0];Nt[ct]=1,this._field[ct]=x(this._field[ct].data,[Ze[0]+2,Ze[1]+2],Nt,0)}this._field[0].set(0,0,0);for(var $t=0;$t<Ze[0];++$t)this._field[0].set($t+1,0,$t);for(this._field[0].set(Ze[0]+1,0,Ze[0]-1),this._field[1].set(0,0,0),$t=0;$t<Ze[1];++$t)this._field[1].set(0,$t+1,$t);this._field[1].set(0,Ze[1]+1,Ze[1]-1)}var sr=this._field,wr=x(f.mallocFloat(sr[2].size*3*2),[3,Ze[0]+2,Ze[1]+2,2]);for(ct=0;ct<3;++ct)A(wr.pick(ct),sr[ct],"mirror");var ur=x(f.mallocFloat(sr[2].size*3),[Ze[0]+2,Ze[1]+2,3]);for(ct=0;ct<Ze[0]+2;++ct)for($t=0;$t<Ze[1]+2;++$t){var Qe=wr.get(0,ct,$t,0),Et=wr.get(0,ct,$t,1),er=wr.get(1,ct,$t,0),Ut=wr.get(1,ct,$t,1),Ft=wr.get(2,ct,$t,0),bt=wr.get(2,ct,$t,1),yt=er*bt-Ut*Ft,Yt=Ft*Et-bt*Qe,lr=Qe*Ut-Et*er,Tr=Math.sqrt(yt*yt+Yt*Yt+lr*lr);Tr<1e-8?(Tr=Math.max(Math.abs(yt),Math.abs(Yt),Math.abs(lr)),Tr<1e-8?(lr=1,Yt=yt=0,Tr=1):Tr=1/Tr):Tr=1/Math.sqrt(Tr),ur.set(ct,$t,0,yt*Tr),ur.set(ct,$t,1,Yt*Tr),ur.set(ct,$t,2,lr*Tr)}f.free(wr.data);var Rr=[1/0,1/0,1/0],ei=[-1/0,-1/0,-1/0],Wr=1/0,Ur=-1/0,dt=(Ze[0]-1)*(Ze[1]-1)*6,Ge=f.mallocFloat(s.nextPow2(10*dt)),Je=0,je=0;for(ct=0;ct<Ze[0]-1;++ct)e:for($t=0;$t<Ze[1]-1;++$t){for(var $e=0;$e<2;++$e)for(var wt=0;wt<2;++wt)for(var Ie=0;Ie<3;++Ie){var xe=this._field[Ie].get(1+ct+$e,1+$t+wt);if(isNaN(xe)||!isFinite(xe))continue e}for(Ie=0;Ie<6;++Ie){var Ce=ct+z[Ie][0],vt=$t+z[Ie][1],nr=this._field[0].get(Ce+1,vt+1),ir=this._field[1].get(Ce+1,vt+1);xe=this._field[2].get(Ce+1,vt+1),yt=ur.get(Ce+1,vt+1,0),Yt=ur.get(Ce+1,vt+1,1),lr=ur.get(Ce+1,vt+1,2),Pe.intensity&&(pr=Pe.intensity.get(Ce,vt));var pr=Pe.intensity?Pe.intensity.get(Ce,vt):xe+this.objectOffset[2];Ge[Je++]=Ce,Ge[Je++]=vt,Ge[Je++]=nr,Ge[Je++]=ir,Ge[Je++]=xe,Ge[Je++]=0,Ge[Je++]=pr,Ge[Je++]=yt,Ge[Je++]=Yt,Ge[Je++]=lr,Rr[0]=Math.min(Rr[0],nr+this.objectOffset[0]),Rr[1]=Math.min(Rr[1],ir+this.objectOffset[1]),Rr[2]=Math.min(Rr[2],xe+this.objectOffset[2]),Wr=Math.min(Wr,pr),ei[0]=Math.max(ei[0],nr+this.objectOffset[0]),ei[1]=Math.max(ei[1],ir+this.objectOffset[1]),ei[2]=Math.max(ei[2],xe+this.objectOffset[2]),Ur=Math.max(Ur,pr),je+=1}}for(Pe.intensityBounds&&(Wr=+Pe.intensityBounds[0],Ur=+Pe.intensityBounds[1]),ct=6;ct<Je;ct+=10)Ge[ct]=(Ge[ct]-Wr)/(Ur-Wr);this._vertexCount=je,this._coordinateBuffer.update(Ge.subarray(0,Je)),f.freeFloat(Ge),f.free(ur.data),this.bounds=[Rr,ei],this.intensity=Pe.intensity||this._field[2],(this.intensityBounds[0]!==Wr||this.intensityBounds[1]!==Ur)&&(Fe=!0),this.intensityBounds=[Wr,Ur]}if("levels"in Pe){var oi=Pe.levels;for(Array.isArray(oi[0])?oi=oi.slice():oi=[[],[],oi],ct=0;ct<3;++ct)oi[ct]=oi[ct].slice(),oi[ct].sort(function(yn,Mn){return yn-Mn});for(ct=0;ct<3;++ct)for($t=0;$t<oi[ct].length;++$t)oi[ct][$t]-=this.objectOffset[ct];e:for(ct=0;ct<3;++ct){if(oi[ct].length!==this.contourLevels[ct].length){Fe=!0;break}for($t=0;$t<oi[ct].length;++$t)if(oi[ct][$t]!==this.contourLevels[ct][$t]){Fe=!0;break e}}this.contourLevels=oi}if(Fe){sr=this._field,Ze=this.shape;for(var di=[],Jr=0;Jr<3;++Jr){var fi=this.contourLevels[Jr],Hi=[],Pn=[],wn=[0,0,0];for(ct=0;ct<fi.length;++ct){var pn=b(this._field[Jr],fi[ct]);Hi.push(di.length/5|0),je=0;e:for($t=0;$t<pn.cells.length;++$t){var Vn=pn.cells[$t];for(Ie=0;Ie<2;++Ie){var kn=pn.positions[Vn[Ie]],ea=kn[0],ua=Math.floor(ea)|0,Vt=ea-ua,_t=kn[1],tr=Math.floor(_t)|0,ar=_t-tr,Er=!1;t:for(var Zr=0;Zr<3;++Zr){wn[Zr]=0;var ri=(Jr+Zr+1)%3;for($e=0;$e<2;++$e){var $r=$e?Vt:1-Vt;for(Ce=Math.min(Math.max(ua+$e,0),Ze[0])|0,wt=0;wt<2;++wt){var zi=wt?ar:1-ar;if(vt=Math.min(Math.max(tr+wt,0),Ze[1])|0,Zr<2?xe=this._field[ri].get(Ce,vt):xe=(this.intensity.get(Ce,vt)-this.intensityBounds[0])/(this.intensityBounds[1]-this.intensityBounds[0]),!isFinite(xe)||isNaN(xe)){Er=!0;break t}var Ji=$r*zi;wn[Zr]+=Ji*xe}}}if(!Er)di.push(wn[0],wn[1],kn[0],kn[1],wn[2]),je+=1;else{if(Ie>0){for(var en=0;en<5;++en)di.pop();je-=1}continue e}}}Pn.push(je)}this._contourOffsets[Jr]=Hi,this._contourCounts[Jr]=Pn}var cn=f.mallocFloat(di.length);for(ct=0;ct<di.length;++ct)cn[ct]=di[ct];this._contourBuffer.update(cn),f.freeFloat(cn)}},H.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 Pe=0;Pe<3;++Pe)f.freeFloat(this._field[Pe].data)},H.highlight=function(Pe){var ge;if(!Pe){this._dynamicCounts=[0,0,0],this.dyanamicLevel=[NaN,NaN,NaN],this.highlightLevel=[-1,-1,-1];return}for(ge=0;ge<3;++ge)this.enableHighlight[ge]?this.highlightLevel[ge]=Pe.level[ge]:this.highlightLevel[ge]=-1;var Fe;for(this.snapToData?Fe=Pe.dataCoordinate:Fe=Pe.position,ge=0;ge<3;++ge)Fe[ge]-=this.objectOffset[ge];if(!((!this.enableDynamic[0]||Fe[0]===this.dynamicLevel[0])&&(!this.enableDynamic[1]||Fe[1]===this.dynamicLevel[1])&&(!this.enableDynamic[2]||Fe[2]===this.dynamicLevel[2]))){for(var ce=0,Ze=this.shape,ct=f.mallocFloat(12*Ze[0]*Ze[1]),pt=0;pt<3;++pt){if(!this.enableDynamic[pt]){this.dynamicLevel[pt]=NaN,this._dynamicCounts[pt]=0;continue}this.dynamicLevel[pt]=Fe[pt];var Wt=(pt+1)%3,st=(pt+2)%3,lt=this._field[pt],Gt=this._field[Wt],Nt=this._field[st],$t=b(lt,Fe[pt]),sr=$t.cells,wr=$t.positions;for(this._dynamicOffsets[pt]=ce,ge=0;ge<sr.length;++ge)for(var ur=sr[ge],Qe=0;Qe<2;++Qe){var Et=wr[ur[Qe]],er=+Et[0],Ut=er|0,Ft=Math.min(Ut+1,Ze[0])|0,bt=er-Ut,yt=1-bt,Yt=+Et[1],lr=Yt|0,Tr=Math.min(lr+1,Ze[1])|0,Rr=Yt-lr,ei=1-Rr,Wr=yt*ei,Ur=yt*Rr,dt=bt*ei,Ge=bt*Rr,Je=Wr*Gt.get(Ut,lr)+Ur*Gt.get(Ut,Tr)+dt*Gt.get(Ft,lr)+Ge*Gt.get(Ft,Tr),je=Wr*Nt.get(Ut,lr)+Ur*Nt.get(Ut,Tr)+dt*Nt.get(Ft,lr)+Ge*Nt.get(Ft,Tr);if(isNaN(Je)||isNaN(je)){Qe&&(ce-=1);break}ct[2*ce+0]=Je,ct[2*ce+1]=je,ce+=1}this._dynamicCounts[pt]=ce-this._dynamicOffsets[pt]}this._dynamicBuffer.update(ct.subarray(0,2*ce)),f.freeFloat(ct)}};function De(Pe){var ge=Pe.gl,Fe=_(ge),ce=M(ge),Ze=k(ge),ct=g(ge),pt=l(ge),Wt=u(ge,[{buffer:pt,size:4,stride:P,offset:0},{buffer:pt,size:3,stride:P,offset:16},{buffer:pt,size:3,stride:P,offset:28}]),st=l(ge),lt=u(ge,[{buffer:st,size:4,stride:20,offset:0},{buffer:st,size:1,stride:20,offset:16}]),Gt=l(ge),Nt=u(ge,[{buffer:Gt,size:2,type:ge.FLOAT}]),$t=c(ge,1,G,ge.RGBA,ge.UNSIGNED_BYTE);$t.minFilter=ge.LINEAR,$t.magFilter=ge.LINEAR;var sr=new Z(ge,[0,0],[[0,0,0],[0,0,0]],Fe,ce,pt,Wt,$t,Ze,ct,st,lt,Gt,Nt,[0,0,0]),wr={levels:[[],[],[]]};for(var ur in Pe)wr[ur]=Pe[ur];return wr.colormap=wr.colormap||"jet",sr.update(wr),sr}},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,z){var O=P.gl,V=O.getParameter(O.MAX_TEXTURE_SIZE);if(T<0||T>V||z<0||z>V)throw new Error("gl-texture2d: Invalid texture size");return P._shape=[T,z],P.bind(),O.texImage2D(O.TEXTURE_2D,0,P.format,T,z,0,P.format,P.type,null),P._mipLevels=[0],P}function p(P,T,z,O,V,G){this.gl=P,this.handle=T,this.format=V,this.type=G,this._shape=[z,O],this._mipLevels=[0],this._magFilter=P.NEAREST,this._minFilter=P.NEAREST,this._wrapS=P.CLAMP_TO_EDGE,this._wrapT=P.CLAMP_TO_EDGE,this._anisoSamples=1;var Z=this,H=[this._wrapS,this._wrapT];Object.defineProperties(H,[{get:function(){return Z._wrapS},set:function(j){return Z.wrapS=j}},{get:function(){return Z._wrapT},set:function(j){return Z.wrapT=j}}]),this._wrapVector=H;var N=[this._shape[0],this._shape[1]];Object.defineProperties(N,[{get:function(){return Z._shape[0]},set:function(j){return Z.width=j}},{get:function(){return Z._shape[1]},set:function(j){return Z.height=j}}]),this._shapeVector=N}var C=p.prototype;Object.defineProperties(C,{minFilter:{get:function(){return this._minFilter},set:function(P){this.bind();var T=this.gl;if(this.type===T.FLOAT&&c.indexOf(P)>=0&&(T.getExtension("OES_texture_float_linear")||(P=T.NEAREST)),f.indexOf(P)<0)throw new Error("gl-texture2d: Unknown filter mode "+P);return T.texParameteri(T.TEXTURE_2D,T.TEXTURE_MIN_FILTER,P),this._minFilter=P}},magFilter:{get:function(){return this._magFilter},set:function(P){this.bind();var T=this.gl;if(this.type===T.FLOAT&&c.indexOf(P)>=0&&(T.getExtension("OES_texture_float_linear")||(P=T.NEAREST)),f.indexOf(P)<0)throw new Error("gl-texture2d: Unknown filter mode "+P);return T.texParameteri(T.TEXTURE_2D,T.TEXTURE_MAG_FILTER,P),this._magFilter=P}},mipSamples:{get:function(){return this._anisoSamples},set:function(P){var T=this._anisoSamples;if(this._anisoSamples=Math.max(P,1)|0,T!==this._anisoSamples){var z=this.gl.getExtension("EXT_texture_filter_anisotropic");z&&this.gl.texParameterf(this.gl.TEXTURE_2D,z.TEXTURE_MAX_ANISOTROPY_EXT,this._anisoSamples)}return this._anisoSamples}},wrapS:{get:function(){return this._wrapS},set:function(P){if(this.bind(),h.indexOf(P)<0)throw new Error("gl-texture2d: Unknown wrap mode "+P);return this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_S,P),this._wrapS=P}},wrapT:{get:function(){return this._wrapT},set:function(P){if(this.bind(),h.indexOf(P)<0)throw new Error("gl-texture2d: Unknown wrap mode "+P);return this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_T,P),this._wrapT=P}},wrap:{get:function(){return this._wrapVector},set:function(P){if(Array.isArray(P)||(P=[P,P]),P.length!==2)throw new Error("gl-texture2d: Must specify wrap mode for rows and columns");for(var T=0;T<2;++T)if(h.indexOf(P[T])<0)throw new Error("gl-texture2d: Unknown wrap mode "+P);this._wrapS=P[0],this._wrapT=P[1];var z=this.gl;return this.bind(),z.texParameteri(z.TEXTURE_2D,z.TEXTURE_WRAP_S,this._wrapS),z.texParameteri(z.TEXTURE_2D,z.TEXTURE_WRAP_T,this._wrapT),P}},shape:{get:function(){return this._shapeVector},set:function(P){if(!Array.isArray(P))P=[P|0,P|0];else if(P.length!==2)throw new Error("gl-texture2d: Invalid texture shape");return b(this,P[0]|0,P[1]|0),[P[0]|0,P[1]|0]}},width:{get:function(){return this._shape[0]},set:function(P){return P=P|0,b(this,P,this._shape[1]),P}},height:{get:function(){return this._shape[1]},set:function(P){return P=P|0,b(this,this._shape[0],P),P}}}),C.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},C.dispose=function(){this.gl.deleteTexture(this.handle)},C.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)},C.setPixels=function(P,T,z,O){var V=this.gl;this.bind(),Array.isArray(T)?(O=z,z=T[1]|0,T=T[0]|0):(T=T||0,z=z||0),O=O||0;var G=v(P)?P:P.raw;if(G){var Z=this._mipLevels.indexOf(O)<0;Z?(V.texImage2D(V.TEXTURE_2D,0,this.format,this.format,this.type,G),this._mipLevels.push(O)):V.texSubImage2D(V.TEXTURE_2D,O,T,z,this.format,this.type,G)}else if(P.shape&&P.stride&&P.data){if(P.shape.length<2||T+P.shape[1]>this._shape[1]>>>O||z+P.shape[0]>this._shape[0]>>>O||T<0||z<0)throw new Error("gl-texture2d: Texture dimensions are out of bounds");A(V,T,z,O,this.format,this.type,this._mipLevels,P)}else throw new Error("gl-texture2d: Unsupported data type")};function E(P,T){return P.length===3?T[2]===1&&T[1]===P[0]*P[2]&&T[0]===P[2]:T[0]===1&&T[1]===P[0]}function A(P,T,z,O,V,G,Z,H){var N=H.dtype,j=H.shape.slice();if(j.length<2||j.length>3)throw new Error("gl-texture2d: Invalid ndarray, must be 2d or 3d");var re=0,oe=0,_e=E(j,H.stride.slice());N==="float32"?re=P.FLOAT:N==="float64"?(re=P.FLOAT,_e=!1,N="float32"):N==="uint8"?re=P.UNSIGNED_BYTE:(re=P.UNSIGNED_BYTE,_e=!1,N="uint8");var Me=1;if(j.length===2)oe=P.LUMINANCE,j=[j[0],j[1],1],H=s(H.data,j,[H.stride[0],H.stride[1],1],H.offset);else if(j.length===3){if(j[2]===1)oe=P.ALPHA;else if(j[2]===2)oe=P.LUMINANCE_ALPHA;else if(j[2]===3)oe=P.RGB;else if(j[2]===4)oe=P.RGBA;else throw new Error("gl-texture2d: Invalid shape for pixel coords");Me=j[2]}else throw new Error("gl-texture2d: Invalid shape for texture");if((oe===P.LUMINANCE||oe===P.ALPHA)&&(V===P.LUMINANCE||V===P.ALPHA)&&(oe=V),oe!==V)throw new Error("gl-texture2d: Incompatible texture format for setPixels");var ke=H.size,me=Z.indexOf(O)<0;if(me&&Z.push(O),re===G&&_e)H.offset===0&&H.data.length===ke?me?P.texImage2D(P.TEXTURE_2D,O,V,j[0],j[1],0,V,G,H.data):P.texSubImage2D(P.TEXTURE_2D,O,T,z,j[0],j[1],V,G,H.data):me?P.texImage2D(P.TEXTURE_2D,O,V,j[0],j[1],0,V,G,H.data.subarray(H.offset,H.offset+ke)):P.texSubImage2D(P.TEXTURE_2D,O,T,z,j[0],j[1],V,G,H.data.subarray(H.offset,H.offset+ke));else{var ie;G===P.FLOAT?ie=u.mallocFloat32(ke):ie=u.mallocUint8(ke);var Se=s(ie,j,[j[2],j[2]*j[0],1]);re===P.FLOAT&&G===P.UNSIGNED_BYTE?x(Se,H):l.assign(Se,H),me?P.texImage2D(P.TEXTURE_2D,O,V,j[0],j[1],0,V,G,ie.subarray(0,ke)):P.texSubImage2D(P.TEXTURE_2D,O,T,z,j[0],j[1],V,G,ie.subarray(0,ke)),G===P.FLOAT?u.freeFloat32(ie):u.freeUint8(ie)}}function L(P){var T=P.createTexture();return P.bindTexture(P.TEXTURE_2D,T),P.texParameteri(P.TEXTURE_2D,P.TEXTURE_MIN_FILTER,P.NEAREST),P.texParameteri(P.TEXTURE_2D,P.TEXTURE_MAG_FILTER,P.NEAREST),P.texParameteri(P.TEXTURE_2D,P.TEXTURE_WRAP_S,P.CLAMP_TO_EDGE),P.texParameteri(P.TEXTURE_2D,P.TEXTURE_WRAP_T,P.CLAMP_TO_EDGE),T}function _(P,T,z,O,V){var G=P.getParameter(P.MAX_TEXTURE_SIZE);if(T<0||T>G||z<0||z>G)throw new Error("gl-texture2d: Invalid texture shape");if(V===P.FLOAT&&!P.getExtension("OES_texture_float"))throw new Error("gl-texture2d: Floating point textures not supported on this platform");var Z=L(P);return P.texImage2D(P.TEXTURE_2D,0,O,T,z,0,O,V,null),new p(P,Z,T,z,O,V)}function k(P,T,z,O,V,G){var Z=L(P);return P.texImage2D(P.TEXTURE_2D,0,V,V,G,T),new p(P,Z,z,O,V,G)}function M(P,T){var z=T.dtype,O=T.shape.slice(),V=P.getParameter(P.MAX_TEXTURE_SIZE);if(O[0]<0||O[0]>V||O[1]<0||O[1]>V)throw new Error("gl-texture2d: Invalid texture size");var G=E(O,T.stride.slice()),Z=0;z==="float32"?Z=P.FLOAT:z==="float64"?(Z=P.FLOAT,G=!1,z="float32"):z==="uint8"?Z=P.UNSIGNED_BYTE:(Z=P.UNSIGNED_BYTE,G=!1,z="uint8");var H=0;if(O.length===2)H=P.LUMINANCE,O=[O[0],O[1],1],T=s(T.data,O,[T.stride[0],T.stride[1],1],T.offset);else if(O.length===3)if(O[2]===1)H=P.ALPHA;else if(O[2]===2)H=P.LUMINANCE_ALPHA;else if(O[2]===3)H=P.RGB;else if(O[2]===4)H=P.RGBA;else throw new Error("gl-texture2d: Invalid shape for pixel coords");else throw new Error("gl-texture2d: Invalid shape for texture");Z===P.FLOAT&&!P.getExtension("OES_texture_float")&&(Z=P.UNSIGNED_BYTE,G=!1);var N,j,re=T.size;if(G)T.offset===0&&T.data.length===re?N=T.data:N=T.data.subarray(T.offset,T.offset+re);else{var oe=[O[2],O[2]*O[0],1];j=u.malloc(re,z);var _e=s(j,O,oe,0);(z==="float32"||z==="float64")&&Z===P.UNSIGNED_BYTE?x(_e,T):l.assign(_e,T),N=j.subarray(0,re)}var Me=L(P);return P.texImage2D(P.TEXTURE_2D,0,H,O[0],O[1],0,H,Z,N),G||u.free(j),new p(P,Me,O[0],O[1],H,Z)}function g(P){if(arguments.length<=1)throw new Error("gl-texture2d: Missing arguments for texture2d constructor");if(c||d(P),typeof arguments[1]=="number")return _(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],z=v(T)?T:T.raw;if(z)return k(P,z,T.width|0,T.height|0,arguments[2]||P.RGBA,arguments[3]||P.UNSIGNED_BYTE);if(T.shape&&T.data&&T.stride)return M(P,T)}throw new Error("gl-texture2d: Invalid arguments for texture2d constructor")}},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,C=x*f+h*c-d*u,E=-h*u-d*c-v*f;return o[0]=b*x+E*-h+p*-v-C*-d,o[1]=p*x+E*-d+C*-h-b*-v,o[2]=C*x+E*-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,C=x*f+h*c-d*u,E=-h*u-d*c-v*f;return o[0]=b*x+E*-h+p*-v-C*-d,o[1]=p*x+E*-d+C*-h-b*-v,o[2]=C*x+E*-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,C=4,E=5,A=6,L=7,_=8,k=9,M=10,g=11,P=["block-comment","line-comment","preprocessor","operator","integer","float","ident","builtin","keyword","whitespace","eof","integer"];function T(z){var O=0,V=0,G=h,Z,H,N=[],j=[],re=0,oe=0,_e=1,Me=0,ke=0,me=!1,ie=!1,Se="",Le;z=z||{};var Ae=u,De=s;z.version==="300 es"&&(Ae=f,De=c);for(var Pe={},ge={},O=0;O<Ae.length;O++)Pe[Ae[O]]=!0;for(var O=0;O<De.length;O++)ge[De[O]]=!0;return function(Qe){return j=[],Qe!==null?ce(Qe):Ze()};function Fe(Qe){Qe.length&&j.push({type:P[G],data:Qe,position:ke,line:_e,column:Me})}function ce(Qe){O=0,Qe.toString&&(Qe=Qe.toString()),Se+=Qe.replace(/\r\n/g,`
|
||
`),Le=Se.length;for(var Et;Z=Se[O],O<Le;){switch(Et=O,G){case v:O=lt();break;case x:O=st();break;case b:O=Wt();break;case p:O=Gt();break;case C:O=sr();break;case g:O=$t();break;case E:O=wr();break;case d:O=ur();break;case k:O=pt();break;case h:O=ct();break}if(Et!==O)switch(Se[Et]){case`
|
||
`:Me=0,++_e;break;default:++Me;break}}return V+=O,Se=Se.slice(O),j}function Ze(Qe){return N.length&&Fe(N.join("")),G=M,Fe("(eof)"),j}function ct(){return N=N.length?[]:N,H==="/"&&Z==="*"?(ke=V+O-1,G=v,H=Z,O+1):H==="/"&&Z==="/"?(ke=V+O-1,G=x,H=Z,O+1):Z==="#"?(G=b,ke=V+O,O):/\s/.test(Z)?(G=k,ke=V+O,O):(me=/\d/.test(Z),ie=/[^\w_]/.test(Z),ke=V+O,G=me?C:ie?p:d,O)}function pt(){return/[^\s]/g.test(Z)?(Fe(N.join("")),G=h,O):(N.push(Z),H=Z,O+1)}function Wt(){return(Z==="\r"||Z===`
|
||
`)&&H!=="\\"?(Fe(N.join("")),G=h,O):(N.push(Z),H=Z,O+1)}function st(){return Wt()}function lt(){return Z==="/"&&H==="*"?(N.push(Z),Fe(N.join("")),G=h,O+1):(N.push(Z),H=Z,O+1)}function Gt(){if(H==="."&&/\d/.test(Z))return G=E,O;if(H==="/"&&Z==="*")return G=v,O;if(H==="/"&&Z==="/")return G=x,O;if(Z==="."&&N.length){for(;Nt(N););return G=E,O}if(Z===";"||Z===")"||Z==="("){if(N.length)for(;Nt(N););return Fe(Z),G=h,O+1}var Qe=N.length===2&&Z!=="=";if(/[\w_\d\s]/.test(Z)||Qe){for(;Nt(N););return G=h,O}return N.push(Z),H=Z,O+1}function Nt(Qe){var Et=0,er,Ut;do{if(er=l.indexOf(Qe.slice(0,Qe.length+Et).join("")),Ut=l[er],er===-1){if(Et--+Qe.length>0)continue;Ut=Qe.slice(0,1).join("")}return Fe(Ut),ke+=Ut.length,N=N.slice(Ut.length),N.length}while(!0)}function $t(){return/[^a-fA-F0-9]/.test(Z)?(Fe(N.join("")),G=h,O):(N.push(Z),H=Z,O+1)}function sr(){return Z==="."||/[eE]/.test(Z)?(N.push(Z),G=E,H=Z,O+1):Z==="x"&&N.length===1&&N[0]==="0"?(G=g,N.push(Z),H=Z,O+1):/[^\d]/.test(Z)?(Fe(N.join("")),G=h,O):(N.push(Z),H=Z,O+1)}function wr(){return Z==="f"&&(N.push(Z),H=Z,O+=1),/[eE]/.test(Z)||(Z==="-"||Z==="+")&&/[eE]/.test(H)?(N.push(Z),H=Z,O+1):/[^\d]/.test(Z)?(Fe(N.join("")),G=h,O):(N.push(Z),H=Z,O+1)}function ur(){if(/[^\d\w_]/.test(Z)){var Qe=N.join("");return ge[Qe]?G=_:Pe[Qe]?G=L:G=A,Fe(N.join("")),G=h,O}return N.push(Z),H=Z,O+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,C=l?-1:1,E=o[s+p];for(p+=C,f=E&(1<<-b)-1,E>>=-b,b+=d;b>0;f=f*256+o[s+p],p+=C,b-=8);for(h=f&(1<<-b)-1,f>>=-b,b+=u;b>0;h=h*256+o[s+p],p+=C,b-=8);if(f===0)f=1-x;else{if(f===v)return h?NaN:(E?-1:1)*(1/0);h=h+Math.pow(2,u),f=f-x}return(E?-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,C=c===23?Math.pow(2,-24)-Math.pow(2,-77):0,E=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+=C/v:s+=C*Math.pow(2,1-p),s*v>=2&&(h++,v/=2),h+p>=b?(d=0,h=b):h+p>=1?(d=(s*v-1)*Math.pow(2,c),h=h+p):(d=s*Math.pow(2,p-1)*Math.pow(2,c),h=0));c>=8;o[l+E]=d&255,E+=A,d/=256,c-=8);for(h=h<<c|d,x+=c;x>0;o[l+E]=h&255,E+=A,h/=256,x-=8);o[l+E-A]|=L*128}},8954:function(i,a,o){"use strict";i.exports=p;var s=o(3250),l=o(6803).Fw;function u(C,E,A){this.vertices=C,this.adjacent=E,this.boundary=A,this.lastVisited=-1}u.prototype.flip=function(){var C=this.vertices[0];this.vertices[0]=this.vertices[1],this.vertices[1]=C;var E=this.adjacent[0];this.adjacent[0]=this.adjacent[1],this.adjacent[1]=E};function c(C,E,A){this.vertices=C,this.cell=E,this.index=A}function f(C,E){return l(C.vertices,E.vertices)}function h(C){return function(){var E=this.tuple;return C.apply(this,E)}}function d(C){var E=s[C+1];return E||(E=s),h(E)}var v=[];function x(C,E,A){this.dimension=C,this.vertices=E,this.simplices=A,this.interior=A.filter(function(k){return!k.boundary}),this.tuple=new Array(C+1);for(var L=0;L<=C;++L)this.tuple[L]=this.vertices[L];var _=v[C];_||(_=v[C]=d(C)),this.orient=_}var b=x.prototype;b.handleBoundaryDegeneracy=function(C,E){var A=this.dimension,L=this.vertices.length-1,_=this.tuple,k=this.vertices,M=[C];for(C.lastVisited=-L;M.length>0;){C=M.pop();for(var g=C.adjacent,P=0;P<=A;++P){var T=g[P];if(!(!T.boundary||T.lastVisited<=-L)){for(var z=T.vertices,O=0;O<=A;++O){var V=z[O];V<0?_[O]=E:_[O]=k[V]}var G=this.orient();if(G>0)return T;T.lastVisited=-L,G===0&&M.push(T)}}}return null},b.walk=function(C,E){var A=this.vertices.length-1,L=this.dimension,_=this.vertices,k=this.tuple,M=E?this.interior.length*Math.random()|0:this.interior.length-1,g=this.interior[M];e:for(;!g.boundary;){for(var P=g.vertices,T=g.adjacent,z=0;z<=L;++z)k[z]=_[P[z]];g.lastVisited=A;for(var z=0;z<=L;++z){var O=T[z];if(!(O.lastVisited>=A)){var V=k[z];k[z]=C;var G=this.orient();if(k[z]=V,G<0){g=O;continue e}else O.boundary?O.lastVisited=-A:O.lastVisited=A}}return}return g},b.addPeaks=function(C,E){var A=this.vertices.length-1,L=this.dimension,_=this.vertices,k=this.tuple,M=this.interior,g=this.simplices,P=[E];E.lastVisited=A,E.vertices[E.vertices.indexOf(-1)]=A,E.boundary=!1,M.push(E);for(var T=[];P.length>0;){var E=P.pop(),z=E.vertices,O=E.adjacent,V=z.indexOf(A);if(!(V<0)){for(var G=0;G<=L;++G)if(G!==V){var Z=O[G];if(!(!Z.boundary||Z.lastVisited>=A)){var H=Z.vertices;if(Z.lastVisited!==-A){for(var N=0,j=0;j<=L;++j)H[j]<0?(N=j,k[j]=C):k[j]=_[H[j]];var re=this.orient();if(re>0){H[N]=A,Z.boundary=!1,M.push(Z),P.push(Z),Z.lastVisited=A;continue}else Z.lastVisited=-A}var oe=Z.adjacent,_e=z.slice(),Me=O.slice(),ke=new u(_e,Me,!0);g.push(ke);var me=oe.indexOf(E);if(!(me<0)){oe[me]=ke,Me[V]=Z,_e[G]=-1,Me[G]=E,O[G]=ke,ke.flip();for(var j=0;j<=L;++j){var ie=_e[j];if(!(ie<0||ie===A)){for(var Se=new Array(L-1),Le=0,Ae=0;Ae<=L;++Ae){var De=_e[Ae];De<0||Ae===j||(Se[Le++]=De)}T.push(new c(Se,ke,j))}}}}}}}T.sort(f);for(var G=0;G+1<T.length;G+=2){var Pe=T[G],ge=T[G+1],Fe=Pe.index,ce=ge.index;Fe<0||ce<0||(Pe.cell.adjacent[Pe.index]=ge.cell,ge.cell.adjacent[ge.index]=Pe.cell)}},b.insert=function(C,E){var A=this.vertices;A.push(C);var L=this.walk(C,E);if(L){for(var _=this.dimension,k=this.tuple,M=0;M<=_;++M){var g=L.vertices[M];g<0?k[M]=C:k[M]=A[g]}var P=this.orient(k);P<0||P===0&&(L=this.handleBoundaryDegeneracy(L,C),!L)||this.addPeaks(C,L)}},b.boundary=function(){for(var C=this.dimension,E=[],A=this.simplices,L=A.length,_=0;_<L;++_){var k=A[_];if(k.boundary){for(var M=new Array(C),g=k.vertices,P=0,T=0,z=0;z<=C;++z)g[z]>=0?M[P++]=g[z]:T=z&1;if(T===(C&1)){var O=M[0];M[0]=M[1],M[1]=O}E.push(M)}}return E};function p(C,E){var A=C.length;if(A===0)throw new Error("Must have at least d+1 points");var L=C[0].length;if(A<=L)throw new Error("Must input at least d+1 points");var _=C.slice(0,L+1),k=s.apply(void 0,_);if(k===0)throw new Error("Input not in general position");for(var M=new Array(L+1),g=0;g<=L;++g)M[g]=g;k<0&&(M[0]=1,M[1]=0);for(var P=new u(M,new Array(L+1),!1),T=P.adjacent,z=new Array(L+2),g=0;g<=L;++g){for(var O=M.slice(),V=0;V<=L;++V)V===g&&(O[V]=-1);var G=O[0];O[0]=O[1],O[1]=G;var Z=new u(O,new Array(L+1),!0);T[g]=Z,z[g]=Z}z[L+1]=P;for(var g=0;g<=L;++g)for(var O=T[g].vertices,H=T[g].adjacent,V=0;V<=L;++V){var N=O[V];if(N<0){H[V]=P;continue}for(var j=0;j<=L;++j)T[j].vertices.indexOf(N)<0&&(H[V]=T[j])}for(var re=new x(L,_,z),oe=!!E,g=L+1;g<A;++g)re.insert(C[g],oe);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,z,O,V,G){this.mid=T,this.left=z,this.right=O,this.leftPoints=V,this.rightPoints=G,this.count=(z?z.count:0)+(O?O.count:0)+V.length}var h=f.prototype;function d(T,z){T.mid=z.mid,T.left=z.left,T.right=z.right,T.leftPoints=z.leftPoints,T.rightPoints=z.rightPoints,T.count=z.count}function v(T,z){var O=k(z);T.mid=O.mid,T.left=O.left,T.right=O.right,T.leftPoints=O.leftPoints,T.rightPoints=O.rightPoints,T.count=O.count}function x(T,z){var O=T.intervals([]);O.push(z),v(T,O)}function b(T,z){var O=T.intervals([]),V=O.indexOf(z);return V<0?l:(O.splice(V,1),v(T,O),u)}h.intervals=function(T){return T.push.apply(T,this.leftPoints),this.left&&this.left.intervals(T),this.right&&this.right.intervals(T),T},h.insert=function(T){var z=this.count-this.leftPoints.length;if(this.count+=1,T[1]<this.mid)this.left?4*(this.left.count+1)>3*(z+1)?x(this,T):this.left.insert(T):this.left=k([T]);else if(T[0]>this.mid)this.right?4*(this.right.count+1)>3*(z+1)?x(this,T):this.right.insert(T):this.right=k([T]);else{var O=s.ge(this.leftPoints,T,L),V=s.ge(this.rightPoints,T,_);this.leftPoints.splice(O,0,T),this.rightPoints.splice(V,0,T)}},h.remove=function(T){var z=this.count-this.leftPoints;if(T[1]<this.mid){if(!this.left)return l;var O=this.right?this.right.count:0;if(4*O>3*(z-1))return b(this,T);var V=this.left.remove(T);return V===c?(this.left=null,this.count-=1,u):(V===u&&(this.count-=1),V)}else if(T[0]>this.mid){if(!this.right)return l;var G=this.left?this.left.count:0;if(4*G>3*(z-1))return b(this,T);var V=this.right.remove(T);return V===c?(this.right=null,this.count-=1,u):(V===u&&(this.count-=1),V)}else{if(this.count===1)return this.leftPoints[0]===T?c:l;if(this.leftPoints.length===1&&this.leftPoints[0]===T){if(this.left&&this.right){for(var Z=this,H=this.left;H.right;)Z=H,H=H.right;if(Z===this)H.right=this.right;else{var N=this.left,V=this.right;Z.count-=H.count,Z.right=H.left,H.left=N,H.right=V}d(this,H),this.count=(this.left?this.left.count:0)+(this.right?this.right.count:0)+this.leftPoints.length}else this.left?d(this,this.left):d(this,this.right);return u}for(var N=s.ge(this.leftPoints,T,L);N<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,z,O){for(var V=0;V<T.length&&T[V][0]<=z;++V){var G=O(T[V]);if(G)return G}}function C(T,z,O){for(var V=T.length-1;V>=0&&T[V][1]>=z;--V){var G=O(T[V]);if(G)return G}}function E(T,z){for(var O=0;O<T.length;++O){var V=z(T[O]);if(V)return V}}h.queryPoint=function(T,z){if(T<this.mid){if(this.left){var O=this.left.queryPoint(T,z);if(O)return O}return p(this.leftPoints,T,z)}else if(T>this.mid){if(this.right){var O=this.right.queryPoint(T,z);if(O)return O}return C(this.rightPoints,T,z)}else return E(this.leftPoints,z)},h.queryInterval=function(T,z,O){if(T<this.mid&&this.left){var V=this.left.queryInterval(T,z,O);if(V)return V}if(z>this.mid&&this.right){var V=this.right.queryInterval(T,z,O);if(V)return V}return z<this.mid?p(this.leftPoints,z,O):T>this.mid?C(this.rightPoints,T,O):E(this.leftPoints,O)};function A(T,z){return T-z}function L(T,z){var O=T[0]-z[0];return O||T[1]-z[1]}function _(T,z){var O=T[1]-z[1];return O||T[0]-z[0]}function k(T){if(T.length===0)return null;for(var z=[],O=0;O<T.length;++O)z.push(T[O][0],T[O][1]);z.sort(A);for(var V=z[z.length>>1],G=[],Z=[],H=[],O=0;O<T.length;++O){var N=T[O];N[1]<V?G.push(N):V<N[0]?Z.push(N):H.push(N)}var j=H,re=H.slice();return j.sort(L),re.sort(_),new f(V,k(G),k(Z),j,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 z=this.root.remove(T);return z===c&&(this.root=null),z!==l}return!1},g.queryPoint=function(T,z){if(this.root)return this.root.queryPoint(T,z)},g.queryInterval=function(T,z,O){if(T<=z&&this.root)return this.root.queryInterval(T,z,O)},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(k(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]],C=[0,0,0];i.exports=function(k,M,g,P,T,z){if(M||(M=[0,0,0]),g||(g=[0,0,0]),P||(P=[0,0,0]),T||(T=[0,0,0,1]),z||(z=[0,0,0,1]),!s(v,k)||(u(x,v),x[3]=0,x[7]=0,x[11]=0,x[15]=1,Math.abs(c(x)<1e-8)))return!1;var O=v[3],V=v[7],G=v[11],Z=v[12],H=v[13],N=v[14],j=v[15];if(O!==0||V!==0||G!==0){b[0]=O,b[1]=V,b[2]=G,b[3]=j;var re=f(x,x);if(!re)return!1;h(x,x),E(T,b,x)}else T[0]=T[1]=T[2]=0,T[3]=1;if(M[0]=Z,M[1]=H,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(C,p[1],p[2]),d.dot(p[0],C)<0)for(var oe=0;oe<3;oe++)g[oe]*=-1,p[oe][0]*=-1,p[oe][1]*=-1,p[oe][2]*=-1;return z[0]=.5*Math.sqrt(Math.max(1+p[0][0]-p[1][1]-p[2][2],0)),z[1]=.5*Math.sqrt(Math.max(1-p[0][0]+p[1][1]-p[2][2],0)),z[2]=.5*Math.sqrt(Math.max(1-p[0][0]-p[1][1]+p[2][2],0)),z[3]=.5*Math.sqrt(Math.max(1+p[0][0]+p[1][1]+p[2][2],0)),p[2][1]>p[1][2]&&(z[0]=-z[0]),p[0][2]>p[2][0]&&(z[1]=-z[1]),p[1][0]>p[0][1]&&(z[2]=-z[2]),!0};function E(_,k,M){var g=k[0],P=k[1],T=k[2],z=k[3];return _[0]=M[0]*g+M[4]*P+M[8]*T+M[12]*z,_[1]=M[1]*g+M[5]*P+M[9]*T+M[13]*z,_[2]=M[2]*g+M[6]*P+M[10]*T+M[14]*z,_[3]=M[3]*g+M[7]*P+M[11]*T+M[15]*z,_}function A(_,k){_[0][0]=k[0],_[0][1]=k[1],_[0][2]=k[2],_[1][0]=k[4],_[1][1]=k[5],_[1][2]=k[6],_[2][0]=k[8],_[2][1]=k[9],_[2][2]=k[10]}function L(_,k,M,g,P){_[0]=k[0]*g+M[0]*P,_[1]=k[1]*g+M[1]*P,_[2]=k[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(E,A,L,_){if(c(A)===0||c(L)===0)return!1;var k=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!k||!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(E,v.translate,v.scale,v.skew,v.perspective,v.quaternion),!0)}function b(){return{translate:p(),scale:p(1),skew:p(),perspective:C(),quaternion:C()}}function p(E){return[E||0,E||0,E||0]}function C(){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 C(_){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 E=C.prototype;E.recalcMatrix=function(_){var k=this._time,M=s.le(k,_),g=this.computedMatrix;if(!(M<0)){var P=this._components;if(M===k.length-1)for(var T=16*M,z=0;z<16;++z)g[z]=P[T++];else{for(var O=k[M+1]-k[M],T=16*M,V=this.prevMatrix,G=!0,z=0;z<16;++z)V[z]=P[T++];for(var Z=this.nextMatrix,z=0;z<16;++z)Z[z]=P[T++],G=G&&V[z]===Z[z];if(O<1e-6||G)for(var z=0;z<16;++z)g[z]=V[z];else l(g,V,Z,(_-k[M])/O)}var H=this.computedUp;H[0]=g[1],H[1]=g[5],H[2]=g[9],b(H,H);var N=this.computedInverse;u(N,g);var j=this.computedEye,re=N[15];j[0]=N[12]/re,j[1]=N[13]/re,j[2]=N[14]/re;for(var oe=this.computedCenter,_e=Math.exp(this.computedRadius[0]),z=0;z<3;++z)oe[z]=j[z]-g[2+4*z]*_e}},E.idle=function(_){if(!(_<this.lastT())){for(var k=this._components,M=k.length-16,g=0;g<16;++g)k.push(k[M++]);this._time.push(_)}},E.flush=function(_){var k=s.gt(this._time,_)-2;k<0||(this._time.splice(0,k),this._components.splice(0,16*k))},E.lastT=function(){return this._time[this._time.length-1]},E.lookAt=function(_,k,M,g){this.recalcMatrix(_),k=k||this.computedEye,M=M||p,g=g||this.computedUp,this.setMatrix(_,d(this.computedMatrix,k,M,g));for(var P=0,T=0;T<3;++T)P+=Math.pow(M[T]-k[T],2);P=Math.log(Math.sqrt(P)),this.computedRadius[0]=P},E.rotate=function(_,k,M,g){this.recalcMatrix(_);var P=this.computedInverse;k&&f(P,P,k),M&&c(P,P,M),g&&h(P,P,g),this.setMatrix(_,u(this.computedMatrix,P))};var A=[0,0,0];E.pan=function(_,k,M,g){A[0]=-(k||0),A[1]=-(M||0),A[2]=-(g||0),this.recalcMatrix(_);var P=this.computedInverse;v(P,P,A),this.setMatrix(_,u(P,P))},E.translate=function(_,k,M,g){A[0]=k||0,A[1]=M||0,A[2]=g||0,this.recalcMatrix(_);var P=this.computedMatrix;v(P,P,A),this.setMatrix(_,P)},E.setMatrix=function(_,k){if(!(_<this.lastT())){this._time.push(_);for(var M=0;M<16;++M)this._components.push(k[M])}},E.setDistance=function(_,k){this.computedRadius[0]=k},E.setDistanceLimits=function(_,k){var M=this._limits;M[0]=_,M[1]=k},E.getDistanceLimits=function(_){var k=this._limits;return _?(_[0]=k[0],_[1]=k[1],_):k};function L(_){_=_||{};var k=_.matrix||[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];return new C(k)}},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 C=new Array(c),f=0;f<c;++f)C[f]=f;return c===2&&u[0][0]===u[1][0]&&u[0][1]===u[1][1]?[0]:C}for(var h=new Array(c),f=0;f<c;++f)h[f]=f;h.sort(function(_,k){var M=u[_][0]-u[k][0];return M||u[_][1]-u[k][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 C=new Array(v.length+d.length-2),E=0,f=0,A=d.length;f<A;++f)C[E++]=d[f];for(var L=v.length-2;L>0;--L)C[E++]=v[L];return C}},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 z=!1;return"altKey"in T&&(z=z||T.altKey!==v.alt,v.alt=!!T.altKey),"shiftKey"in T&&(z=z||T.shiftKey!==v.shift,v.shift=!!T.shiftKey),"ctrlKey"in T&&(z=z||T.ctrlKey!==v.control,v.control=!!T.ctrlKey),"metaKey"in T&&(z=z||T.metaKey!==v.meta,v.meta=!!T.metaKey),z}function p(T,z){var O=s.x(z),V=s.y(z);"buttons"in z&&(T=z.buttons|0),(T!==f||O!==h||V!==d||b(z))&&(f=T|0,h=O||0,d=V||0,c&&c(f,h,d,v))}function C(T){p(0,T)}function E(){(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 k(T){p(f&~s.buttons(T),T)}function M(){x||(x=!0,u.addEventListener("mousemove",L),u.addEventListener("mousedown",_),u.addEventListener("mouseup",k),u.addEventListener("mouseleave",C),u.addEventListener("mouseenter",C),u.addEventListener("mouseout",C),u.addEventListener("mouseover",C),u.addEventListener("blur",E),u.addEventListener("keyup",A),u.addEventListener("keydown",A),u.addEventListener("keypress",A),u!==window&&(window.addEventListener("blur",E),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",k),u.removeEventListener("mouseleave",C),u.removeEventListener("mouseenter",C),u.removeEventListener("mouseout",C),u.removeEventListener("mouseover",C),u.removeEventListener("blur",E),u.removeEventListener("keyup",A),u.removeEventListener("keydown",A),u.removeEventListener("keypress",A),u!==window&&(window.removeEventListener("blur",E),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,C=v.deltaMode,E=1;switch(C){case 1:E=h;break;case 2:E=window.innerHeight;break}if(x*=E,b*=E,p*=E,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(C,E,A,L){var _=C.shape[0]|0,k=C.shape[1]|0,M=C.data,g=C.offset|0,P=C.stride[0]|0,T=C.stride[1]|0,z=g,O,V=-P|0,G=0,Z=-T|0,H=0,N=-P-T|0,j=0,re=P|0,oe=T-P*_|0,_e=0,Me=0,ke=0,me=2*_|0,ie=x(me),Se=x(me),Le=0,Ae=0,De=-1,Pe=-1,ge=0,Fe=-_|0,ce=_|0,Ze=0,ct=-_-1|0,pt=_-1|0,Wt=0,st=0,lt=0;for(_e=0;_e<_;++_e)ie[Le++]=v(M[z],E,A,L),z+=re;if(z+=oe,k>0){if(Me=1,ie[Le++]=v(M[z],E,A,L),z+=re,_>0)for(_e=1,O=M[z],Ae=ie[Le]=v(O,E,A,L),ge=ie[Le+De],Ze=ie[Le+Fe],Wt=ie[Le+ct],(Ae!==ge||Ae!==Ze||Ae!==Wt)&&(G=M[z+V],H=M[z+Z],j=M[z+N],h(_e,Me,O,G,H,j,Ae,ge,Ze,Wt,E,A,L),st=Se[Le]=ke++),Le+=1,z+=re,_e=2;_e<_;++_e)O=M[z],Ae=ie[Le]=v(O,E,A,L),ge=ie[Le+De],Ze=ie[Le+Fe],Wt=ie[Le+ct],(Ae!==ge||Ae!==Ze||Ae!==Wt)&&(G=M[z+V],H=M[z+Z],j=M[z+N],h(_e,Me,O,G,H,j,Ae,ge,Ze,Wt,E,A,L),st=Se[Le]=ke++,Wt!==ge&&d(Se[Le+De],st,j,G,Wt,ge,E,A,L)),Le+=1,z+=re;for(z+=oe,Le=0,lt=De,De=Pe,Pe=lt,lt=Fe,Fe=ce,ce=lt,lt=ct,ct=pt,pt=lt,Me=2;Me<k;++Me){if(ie[Le++]=v(M[z],E,A,L),z+=re,_>0)for(_e=1,O=M[z],Ae=ie[Le]=v(O,E,A,L),ge=ie[Le+De],Ze=ie[Le+Fe],Wt=ie[Le+ct],(Ae!==ge||Ae!==Ze||Ae!==Wt)&&(G=M[z+V],H=M[z+Z],j=M[z+N],h(_e,Me,O,G,H,j,Ae,ge,Ze,Wt,E,A,L),st=Se[Le]=ke++,Wt!==Ze&&d(Se[Le+Fe],st,H,j,Ze,Wt,E,A,L)),Le+=1,z+=re,_e=2;_e<_;++_e)O=M[z],Ae=ie[Le]=v(O,E,A,L),ge=ie[Le+De],Ze=ie[Le+Fe],Wt=ie[Le+ct],(Ae!==ge||Ae!==Ze||Ae!==Wt)&&(G=M[z+V],H=M[z+Z],j=M[z+N],h(_e,Me,O,G,H,j,Ae,ge,Ze,Wt,E,A,L),st=Se[Le]=ke++,Wt!==Ze&&d(Se[Le+Fe],st,H,j,Ze,Wt,E,A,L),Wt!==ge&&d(Se[Le+De],st,j,G,Wt,ge,E,A,L)),Le+=1,z+=re;Me&1&&(Le=0),lt=De,De=Pe,Pe=lt,lt=Fe,Fe=ce,ce=lt,lt=ct,ct=pt,pt=lt,z+=oe}}b(Se),b(ie)}},"false,1,0":function(h,d,v,x,b){return function(C,E,A,L){var _=C.shape[0]|0,k=C.shape[1]|0,M=C.data,g=C.offset|0,P=C.stride[0]|0,T=C.stride[1]|0,z=g,O,V=-P|0,G=0,Z=-T|0,H=0,N=-P-T|0,j=0,re=T|0,oe=P-T*k|0,_e=0,Me=0,ke=0,me=2*k|0,ie=x(me),Se=x(me),Le=0,Ae=0,De=-1,Pe=-1,ge=0,Fe=-k|0,ce=k|0,Ze=0,ct=-k-1|0,pt=k-1|0,Wt=0,st=0,lt=0;for(Me=0;Me<k;++Me)ie[Le++]=v(M[z],E,A,L),z+=re;if(z+=oe,_>0){if(_e=1,ie[Le++]=v(M[z],E,A,L),z+=re,k>0)for(Me=1,O=M[z],Ae=ie[Le]=v(O,E,A,L),Ze=ie[Le+Fe],ge=ie[Le+De],Wt=ie[Le+ct],(Ae!==Ze||Ae!==ge||Ae!==Wt)&&(G=M[z+V],H=M[z+Z],j=M[z+N],h(_e,Me,O,G,H,j,Ae,Ze,ge,Wt,E,A,L),st=Se[Le]=ke++),Le+=1,z+=re,Me=2;Me<k;++Me)O=M[z],Ae=ie[Le]=v(O,E,A,L),Ze=ie[Le+Fe],ge=ie[Le+De],Wt=ie[Le+ct],(Ae!==Ze||Ae!==ge||Ae!==Wt)&&(G=M[z+V],H=M[z+Z],j=M[z+N],h(_e,Me,O,G,H,j,Ae,Ze,ge,Wt,E,A,L),st=Se[Le]=ke++,Wt!==ge&&d(Se[Le+De],st,H,j,ge,Wt,E,A,L)),Le+=1,z+=re;for(z+=oe,Le=0,lt=Fe,Fe=ce,ce=lt,lt=De,De=Pe,Pe=lt,lt=ct,ct=pt,pt=lt,_e=2;_e<_;++_e){if(ie[Le++]=v(M[z],E,A,L),z+=re,k>0)for(Me=1,O=M[z],Ae=ie[Le]=v(O,E,A,L),Ze=ie[Le+Fe],ge=ie[Le+De],Wt=ie[Le+ct],(Ae!==Ze||Ae!==ge||Ae!==Wt)&&(G=M[z+V],H=M[z+Z],j=M[z+N],h(_e,Me,O,G,H,j,Ae,Ze,ge,Wt,E,A,L),st=Se[Le]=ke++,Wt!==Ze&&d(Se[Le+Fe],st,j,G,Wt,Ze,E,A,L)),Le+=1,z+=re,Me=2;Me<k;++Me)O=M[z],Ae=ie[Le]=v(O,E,A,L),Ze=ie[Le+Fe],ge=ie[Le+De],Wt=ie[Le+ct],(Ae!==Ze||Ae!==ge||Ae!==Wt)&&(G=M[z+V],H=M[z+Z],j=M[z+N],h(_e,Me,O,G,H,j,Ae,Ze,ge,Wt,E,A,L),st=Se[Le]=ke++,Wt!==ge&&d(Se[Le+De],st,H,j,ge,Wt,E,A,L),Wt!==Ze&&d(Se[Le+Fe],st,j,G,Wt,Ze,E,A,L)),Le+=1,z+=re;_e&1&&(Le=0),lt=Fe,Fe=ce,ce=lt,lt=De,De=Pe,Pe=lt,lt=ct,ct=pt,pt=lt,z+=oe}}b(Se),b(ie)}}};function u(f,h,d,v,x,b){var p=[b,x].join(","),C=l[p];return C(f,h,d,s.mallocUint32,s.freeUint32)}function c(f){function h(E){throw new Error("ndarray-extract-contour: "+E)}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),C=0;C<v;++C)b.indexOf(C)>=0?p[C]=!0:p[C]=!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,_,k,M){var g=L[0],P=k[0];M|=0;var T=0,z=P;for(T=0;T<g;++T)_[M]=0,M+=z},fdTemplate1:function(L,_,k,M,g,P,T){var z=L[0],O=k[0],V=P[0],G=-1*O,Z=O;M|=0,T|=0;var H=0,N=O,j=V;for(H=0;H<z;++H)g[T]=.5*(_[M+G]-_[M+Z]),M+=N,T+=j},fdTemplate2:function(L,_,k,M,g,P,T,z,O,V){var G=L[0],Z=L[1],H=k[0],N=k[1],j=P[0],re=P[1],oe=O[0],_e=O[1],Me=-1*H,ke=H,me=-1*N,ie=N;M|=0,T|=0,V|=0;var Se=0,Le=0,Ae=N,De=H-Z*N,Pe=re,ge=j-Z*re,Fe=_e,ce=oe-Z*_e;for(Le=0;Le<G;++Le){for(Se=0;Se<Z;++Se)g[T]=.5*(_[M+Me]-_[M+ke]),z[V]=.5*(_[M+me]-_[M+ie]),M+=Ae,T+=Pe,V+=Fe;M+=De,T+=ge,V+=ce}}},u={cdiff:function(L){var _={};return function(M,g,P){var T=M.dtype,z=M.order,O=g.dtype,V=g.order,G=P.dtype,Z=P.order,H=[T,z.join(),O,V.join(),G,Z.join()].join(),N=_[H];return N||(_[H]=N=L([T,z,O,V,G,Z])),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(),z=_[T];return z||(_[T]=z=L([g,P])),z(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,z=g.dtype,O=g.order,V=[P,T.join(),z,O.join()].join(),G=_[V];return G||(_[V]=G=L([P,T,z,O])),G(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,z=M.order,O=g.dtype,V=g.order,G=P.dtype,Z=P.order,H=[T,z.join(),O,V.join(),G,Z.join()].join(),N=_[H];return N||(_[H]=N=L([T,z,O,V,G,Z])),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 C(L){return L in d?d[L]:d[L]=h({funcName:"fdTemplate"+L})}function E(L,_,k,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&&(k(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&&(k(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&&(k(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&&(k(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 k=L.length,M=[b,p],g=1;g<=k;++g)M.push(C(g));var P=E,T=P.apply(void 0,M);return v[_]=T,T}i.exports=function(_,k,M){if(Array.isArray(M)||(typeof M=="string"?M=s(k.dimension,M):M=s(k.dimension,"clamp")),k.size===0)return _;if(k.dimension===0)return _.set(0),_;var g=A(M);return g(_,k)}},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),C=h-p,E=0<=p&&p<c.shape[1],A=0<=p+1&&p+1<c.shape[1],L=x&&E?c.get(d,p):0,_=x&&A?c.get(d,p+1):0,k=b&&E?c.get(d+1,p):0,M=b&&A?c.get(d+1,p+1):0;return(1-C)*((1-v)*L+v*k)+C*((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],C=Math.floor(h),E=h-C,A=0<=C&&C<c.shape[1],L=0<=C+1&&C+1<c.shape[1],_=Math.floor(d),k=d-_,M=0<=_&&_<c.shape[2],g=0<=_+1&&_+1<c.shape[2],P=b&&A&&M?c.get(v,C,_):0,T=b&&L&&M?c.get(v,C+1,_):0,z=p&&A&&M?c.get(v+1,C,_):0,O=p&&L&&M?c.get(v+1,C+1,_):0,V=b&&A&&g?c.get(v,C,_+1):0,G=b&&L&&g?c.get(v,C+1,_+1):0,Z=p&&A&&g?c.get(v+1,C,_+1):0,H=p&&L&&g?c.get(v+1,C+1,_+1):0;return(1-k)*((1-E)*((1-x)*P+x*z)+E*((1-x)*T+x*O))+k*((1-E)*((1-x)*V+x*Z)+E*((1-x)*G+x*H))}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 C=0,E,A,L;e:for(b=0;b<1<<f;++b){for(A=1,L=c.offset,E=0;E<f;++E)if(b&1<<E){if(!x[E])continue e;A*=d[E],L+=c.stride[E]*(h[E]+1)}else{if(!v[E])continue e;A*=1-d[E],L+=c.stride[E]*h[E]}C+=A*c.data[L]}return C}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,C){var E=v[0],A=v[1],L=v[2],_=b[0],k=b[1],M=b[2];p|=0;var g=0,P=0,T=0,z=M,O=k-L*M,V=_-A*k;for(T=0;T<E;++T){for(P=0;P<A;++P){for(g=0;g<L;++g)x[p]/=C,p+=z;p+=O}p+=V}}},"uint8,2,0,1,float64,2,1,0":function(){return function(v,x,b,p,C,E,A,L){var _=v[0],k=v[1],M=v[2],g=b[0],P=b[1],T=b[2],z=E[0],O=E[1],V=E[2];p|=0,A|=0;for(var G=p,Z=A,H=v[0]|0;H>0;){H<64?(_=H,H=0):(_=64,H-=64);for(var N=v[1]|0;N>0;){N<64?(k=N,N=0):(k=64,N-=64),p=G+H*g+N*P,A=Z+H*z+N*O;var j=0,re=0,oe=0,_e=T,Me=g-M*T,ke=P-_*g,me=V,ie=z-M*V,Se=O-_*z;for(oe=0;oe<k;++oe){for(re=0;re<_;++re){for(j=0;j<M;++j)x[p]=C[A]*L,p+=_e,A+=me;p+=Me,A+=ie}p+=ke,A+=Se}}}}},"float32,1,0,float32,1,0":function(){return function(v,x,b,p,C,E,A){var L=v[0],_=v[1],k=b[0],M=b[1],g=E[0],P=E[1];p|=0,A|=0;var T=0,z=0,O=M,V=k-_*M,G=P,Z=g-_*P;for(z=0;z<L;++z){for(T=0;T<_;++T)x[p]=C[A],p+=O,A+=G;p+=V,A+=Z}}},"float32,1,0,float32,0,1":function(){return function(v,x,b,p,C,E,A){var L=v[0],_=v[1],k=b[0],M=b[1],g=E[0],P=E[1];p|=0,A|=0;for(var T=p,z=A,O=v[1]|0;O>0;){O<64?(_=O,O=0):(_=64,O-=64);for(var V=v[0]|0;V>0;){V<64?(L=V,V=0):(L=64,V-=64),p=T+O*M+V*k,A=z+O*P+V*g;var G=0,Z=0,H=M,N=k-_*M,j=P,re=g-_*P;for(Z=0;Z<L;++Z){for(G=0;G<_;++G)x[p]=C[A],p+=H,A+=j;p+=N,A+=re}}}}},"uint8,2,0,1,uint8,1,2,0":function(){return function(v,x,b,p,C,E,A){var L=v[0],_=v[1],k=v[2],M=b[0],g=b[1],P=b[2],T=E[0],z=E[1],O=E[2];p|=0,A|=0;for(var V=p,G=A,Z=v[2]|0;Z>0;){Z<64?(k=Z,Z=0):(k=64,Z-=64);for(var H=v[0]|0;H>0;){H<64?(L=H,H=0):(L=64,H-=64);for(var N=v[1]|0;N>0;){N<64?(_=N,N=0):(_=64,N-=64),p=V+Z*P+H*M+N*g,A=G+Z*O+H*T+N*z;var j=0,re=0,oe=0,_e=P,Me=M-k*P,ke=g-L*M,me=O,ie=T-k*O,Se=z-L*T;for(oe=0;oe<_;++oe){for(re=0;re<L;++re){for(j=0;j<k;++j)x[p]=C[A],p+=_e,A+=me;p+=Me,A+=ie}p+=ke,A+=Se}}}}}},"uint8,2,0,1,array,2,0,1":function(){return function(v,x,b,p,C,E,A){var L=v[0],_=v[1],k=v[2],M=b[0],g=b[1],P=b[2],T=E[0],z=E[1],O=E[2];p|=0,A|=0;var V=0,G=0,Z=0,H=P,N=M-k*P,j=g-L*M,re=O,oe=T-k*O,_e=z-L*T;for(Z=0;Z<_;++Z){for(G=0;G<L;++G){for(V=0;V<k;++V)x[p]=C[A],p+=H,A+=re;p+=N,A+=oe}p+=j,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,C){var E=b.dtype,A=b.order,L=p.dtype,_=p.order,k=C.dtype,M=C.order,g=[E,A.join(),L,_.join(),k,M.join()].join(),P=v[g];return P||(v[g]=P=d([E,A,L,_,k,M])),P(b.shape.slice(0),b.data,b.stride,b.offset|0,p.data,p.stride,p.offset|0,C.data,C.stride,C.offset|0)}},muls:function(d){var v={};return function(b,p,C){var E=b.dtype,A=b.order,L=p.dtype,_=p.order,k=[E,A.join(),L,_.join()].join(),M=v[k];return M||(v[k]=M=d([E,A,L,_])),M(b.shape.slice(0),b.data,b.stride,b.offset|0,p.data,p.stride,p.offset|0,C)}},mulseq:function(d){var v={};return function(b,p){var C=b.dtype,E=b.order,A=[C,E.join()].join(),L=v[A];return L||(v[A]=L=d([C,E])),L(b.shape.slice(0),b.data,b.stride,b.offset|0,p)}},div:function(d){var v={};return function(b,p,C){var E=b.dtype,A=b.order,L=p.dtype,_=p.order,k=C.dtype,M=C.order,g=[E,A.join(),L,_.join(),k,M.join()].join(),P=v[g];return P||(v[g]=P=d([E,A,L,_,k,M])),P(b.shape.slice(0),b.data,b.stride,b.offset|0,p.data,p.stride,p.offset|0,C.data,C.stride,C.offset|0)}},divs:function(d){var v={};return function(b,p,C){var E=b.dtype,A=b.order,L=p.dtype,_=p.order,k=[E,A.join(),L,_.join()].join(),M=v[k];return M||(v[k]=M=d([E,A,L,_])),M(b.shape.slice(0),b.data,b.stride,b.offset|0,p.data,p.stride,p.offset|0,C)}},divseq:function(d){var v={};return function(b,p){var C=b.dtype,E=b.order,A=[C,E.join()].join(),L=v[A];return L||(v[A]=L=d([C,E])),L(b.shape.slice(0),b.data,b.stride,b.offset|0,p)}},assign:function(d){var v={};return function(b,p){var C=b.dtype,E=b.order,A=p.dtype,L=p.order,_=[C,E.join(),A,L.join()].join(),k=v[_];return k||(v[_]=k=d([C,E,A,L])),k(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],C=f[2],E=d[0],A=d[1],L=d[2],_=[0,0,0];v|=0;var k=0,M=0,g=0,P=L,T=A-C*L,z=E-p*A;for(g=0;g<b;++g){for(M=0;M<p;++M){for(k=0;k<C;++k){{var O=x,V;for(V=0;V<_.length-1;++V)O=O[_[V]];h[v]=O[_[_.length-1]]}v+=P,++_[2]}v+=T,_[2]-=C,++_[1]}v+=z,_[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,C=[b,p.join()].join(),E=h[C];return E||(h[C]=E=f([b,p])),E(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(C,E,A,L,_,k,M,g,P,T,z){var O,V,G,Z=C*_+L,H,N=x(g),j,re,oe,_e;for(O=C+1;O<=E;++O){for(V=O,Z+=_,G=Z,j=0,re=Z,H=0;H<g;++H)N[j++]=A[re],re+=P;e:for(;V-- >C;){j=0,re=G-_;t:for(H=0;H<g;++H){if(oe=A[re],_e=N[j],oe<_e)break e;if(oe>_e)break t;re+=T,j+=z}for(j=G,re=G-_,H=0;H<g;++H)A[j]=A[re],j+=P,re+=P;G-=_}for(j=G,re=0,H=0;H<g;++H)A[j]=N[re++],j+=P}b(N)}}};function c(x,b){var p=l(b),C=[b,x].join(","),E=u[C];return p?E(p[0],p[1]):E()}var f={"uint32,1,0":function(x,b,p){return function C(E,A,L,_,k,M,g,P,T,z,O){var V=(A-E+1)/6|0,G=E+V,Z=A-V,H=E+A>>1,N=H-V,j=H+V,re=G,oe=N,_e=H,Me=j,ke=Z,me=E+1,ie=A-1,Se=!0,Le,Ae,De,Pe,ge,Fe,ce,Ze,ct,pt=0,Wt=0,st=0,lt,Gt,Nt,$t,sr,wr,ur,Qe,Et,er,Ut,Ft,bt,yt,Yt,lr,Tr=P,Rr=b(Tr),ei=b(Tr);Gt=k*re,Nt=k*oe,lr=_;e:for(lt=0;lt<P;++lt){if(ce=Gt+lr,Ze=Nt+lr,st=L[ce]-L[Ze],st>0){Ae=re,re=oe,oe=Ae;break e}if(st<0)break e;lr+=z}Gt=k*Me,Nt=k*ke,lr=_;e:for(lt=0;lt<P;++lt){if(ce=Gt+lr,Ze=Nt+lr,st=L[ce]-L[Ze],st>0){Ae=Me,Me=ke,ke=Ae;break e}if(st<0)break e;lr+=z}Gt=k*re,Nt=k*_e,lr=_;e:for(lt=0;lt<P;++lt){if(ce=Gt+lr,Ze=Nt+lr,st=L[ce]-L[Ze],st>0){Ae=re,re=_e,_e=Ae;break e}if(st<0)break e;lr+=z}Gt=k*oe,Nt=k*_e,lr=_;e:for(lt=0;lt<P;++lt){if(ce=Gt+lr,Ze=Nt+lr,st=L[ce]-L[Ze],st>0){Ae=oe,oe=_e,_e=Ae;break e}if(st<0)break e;lr+=z}Gt=k*re,Nt=k*Me,lr=_;e:for(lt=0;lt<P;++lt){if(ce=Gt+lr,Ze=Nt+lr,st=L[ce]-L[Ze],st>0){Ae=re,re=Me,Me=Ae;break e}if(st<0)break e;lr+=z}Gt=k*_e,Nt=k*Me,lr=_;e:for(lt=0;lt<P;++lt){if(ce=Gt+lr,Ze=Nt+lr,st=L[ce]-L[Ze],st>0){Ae=_e,_e=Me,Me=Ae;break e}if(st<0)break e;lr+=z}Gt=k*oe,Nt=k*ke,lr=_;e:for(lt=0;lt<P;++lt){if(ce=Gt+lr,Ze=Nt+lr,st=L[ce]-L[Ze],st>0){Ae=oe,oe=ke,ke=Ae;break e}if(st<0)break e;lr+=z}Gt=k*oe,Nt=k*_e,lr=_;e:for(lt=0;lt<P;++lt){if(ce=Gt+lr,Ze=Nt+lr,st=L[ce]-L[Ze],st>0){Ae=oe,oe=_e,_e=Ae;break e}if(st<0)break e;lr+=z}Gt=k*Me,Nt=k*ke,lr=_;e:for(lt=0;lt<P;++lt){if(ce=Gt+lr,Ze=Nt+lr,st=L[ce]-L[Ze],st>0){Ae=Me,Me=ke,ke=Ae;break e}if(st<0)break e;lr+=z}for(Gt=k*re,Nt=k*oe,$t=k*_e,sr=k*Me,wr=k*ke,ur=k*G,Qe=k*H,Et=k*Z,Yt=0,lr=_,lt=0;lt<P;++lt)ce=Gt+lr,Ze=Nt+lr,ct=$t+lr,er=sr+lr,Ut=wr+lr,Ft=ur+lr,bt=Qe+lr,yt=Et+lr,Rr[Yt]=L[Ze],ei[Yt]=L[er],Se=Se&&Rr[Yt]===ei[Yt],De=L[ce],Pe=L[ct],ge=L[Ut],L[Ft]=De,L[bt]=Pe,L[yt]=ge,++Yt,lr+=T;for(Gt=k*N,Nt=k*E,lr=_,lt=0;lt<P;++lt)ce=Gt+lr,Ze=Nt+lr,L[ce]=L[Ze],lr+=T;for(Gt=k*j,Nt=k*A,lr=_,lt=0;lt<P;++lt)ce=Gt+lr,Ze=Nt+lr,L[ce]=L[Ze],lr+=T;if(Se)for(Fe=me;Fe<=ie;++Fe){ce=_+Fe*k,Yt=0;e:for(lt=0;lt<P;++lt){if(st=L[ce]-Rr[Yt],st!==0)break e;Yt+=O,ce+=z}if(st!==0)if(st<0){if(Fe!==me)for(Gt=k*Fe,Nt=k*me,lr=_,lt=0;lt<P;++lt)ce=Gt+lr,Ze=Nt+lr,Le=L[ce],L[ce]=L[Ze],L[Ze]=Le,lr+=T;++me}else for(;;){ce=_+ie*k,Yt=0;e:for(lt=0;lt<P;++lt){if(st=L[ce]-Rr[Yt],st!==0)break e;Yt+=O,ce+=z}if(st>0)ie--;else if(st<0){for(Gt=k*Fe,Nt=k*me,$t=k*ie,lr=_,lt=0;lt<P;++lt)ce=Gt+lr,Ze=Nt+lr,ct=$t+lr,Le=L[ce],L[ce]=L[Ze],L[Ze]=L[ct],L[ct]=Le,lr+=T;++me,--ie;break}else{for(Gt=k*Fe,Nt=k*ie,lr=_,lt=0;lt<P;++lt)ce=Gt+lr,Ze=Nt+lr,Le=L[ce],L[ce]=L[Ze],L[Ze]=Le,lr+=T;--ie;break}}}else for(Fe=me;Fe<=ie;++Fe){ce=_+Fe*k,Yt=0;e:for(lt=0;lt<P;++lt){if(pt=L[ce]-Rr[Yt],pt!==0)break e;Yt+=O,ce+=z}if(pt<0){if(Fe!==me)for(Gt=k*Fe,Nt=k*me,lr=_,lt=0;lt<P;++lt)ce=Gt+lr,Ze=Nt+lr,Le=L[ce],L[ce]=L[Ze],L[Ze]=Le,lr+=T;++me}else{ce=_+Fe*k,Yt=0;e:for(lt=0;lt<P;++lt){if(Wt=L[ce]-ei[Yt],Wt!==0)break e;Yt+=O,ce+=z}if(Wt>0)for(;;){ce=_+ie*k,Yt=0;e:for(lt=0;lt<P;++lt){if(st=L[ce]-ei[Yt],st!==0)break e;Yt+=O,ce+=z}if(st>0){if(--ie<Fe)break;continue}else{ce=_+ie*k,Yt=0;e:for(lt=0;lt<P;++lt){if(st=L[ce]-Rr[Yt],st!==0)break e;Yt+=O,ce+=z}if(st<0){for(Gt=k*Fe,Nt=k*me,$t=k*ie,lr=_,lt=0;lt<P;++lt)ce=Gt+lr,Ze=Nt+lr,ct=$t+lr,Le=L[ce],L[ce]=L[Ze],L[Ze]=L[ct],L[ct]=Le,lr+=T;++me,--ie}else{for(Gt=k*Fe,Nt=k*ie,lr=_,lt=0;lt<P;++lt)ce=Gt+lr,Ze=Nt+lr,Le=L[ce],L[ce]=L[Ze],L[Ze]=Le,lr+=T;--ie}break}}}}for(Gt=k*E,Nt=k*(me-1),Yt=0,lr=_,lt=0;lt<P;++lt)ce=Gt+lr,Ze=Nt+lr,L[ce]=L[Ze],L[Ze]=Rr[Yt],++Yt,lr+=T;for(Gt=k*A,Nt=k*(ie+1),Yt=0,lr=_,lt=0;lt<P;++lt)ce=Gt+lr,Ze=Nt+lr,L[ce]=L[Ze],L[Ze]=ei[Yt],++Yt,lr+=T;if(me-2-E<=32?x(E,me-2,L,_,k,M,g,P,T,z,O):C(E,me-2,L,_,k,M,g,P,T,z,O),A-(ie+2)<=32?x(ie+2,A,L,_,k,M,g,P,T,z,O):C(ie+2,A,L,_,k,M,g,P,T,z,O),Se){p(Rr),p(ei);return}if(me<G&&ie>Z){e:for(;;){for(ce=_+me*k,Yt=0,lr=_,lt=0;lt<P;++lt){if(L[ce]!==Rr[Yt])break e;++Yt,ce+=T}++me}e:for(;;){for(ce=_+ie*k,Yt=0,lr=_,lt=0;lt<P;++lt){if(L[ce]!==ei[Yt])break e;++Yt,ce+=T}--ie}for(Fe=me;Fe<=ie;++Fe){ce=_+Fe*k,Yt=0;e:for(lt=0;lt<P;++lt){if(pt=L[ce]-Rr[Yt],pt!==0)break e;Yt+=O,ce+=z}if(pt===0){if(Fe!==me)for(Gt=k*Fe,Nt=k*me,lr=_,lt=0;lt<P;++lt)ce=Gt+lr,Ze=Nt+lr,Le=L[ce],L[ce]=L[Ze],L[Ze]=Le,lr+=T;++me}else{ce=_+Fe*k,Yt=0;e:for(lt=0;lt<P;++lt){if(Wt=L[ce]-ei[Yt],Wt!==0)break e;Yt+=O,ce+=z}if(Wt===0)for(;;){ce=_+ie*k,Yt=0;e:for(lt=0;lt<P;++lt){if(st=L[ce]-ei[Yt],st!==0)break e;Yt+=O,ce+=z}if(st===0){if(--ie<Fe)break;continue}else{ce=_+ie*k,Yt=0;e:for(lt=0;lt<P;++lt){if(st=L[ce]-Rr[Yt],st!==0)break e;Yt+=O,ce+=z}if(st<0){for(Gt=k*Fe,Nt=k*me,$t=k*ie,lr=_,lt=0;lt<P;++lt)ce=Gt+lr,Ze=Nt+lr,ct=$t+lr,Le=L[ce],L[ce]=L[Ze],L[Ze]=L[ct],L[ct]=Le,lr+=T;++me,--ie}else{for(Gt=k*Fe,Nt=k*ie,lr=_,lt=0;lt<P;++lt)ce=Gt+lr,Ze=Nt+lr,Le=L[ce],L[ce]=L[Ze],L[Ze]=Le,lr+=T;--ie}break}}}}}p(Rr),p(ei),ie-me<=32?x(me,ie,L,_,k,M,g,P,T,z,O):C(me,ie,L,_,k,M,g,P,T,z,O)}}};function h(x,b,p){var C=l(b),E=[b,x].join(","),A=f[E];return x.length>1&&C?A(p,C[0],C[1]):A(p)}var d={"uint32,1,0":function(x,b){return function(p){var C=p.data,E=p.offset|0,A=p.shape,L=p.stride,_=L[0]|0,k=A[0]|0,M=L[1]|0,g=A[1]|0,P=M,T=M,z=1;k<=32?x(0,k-1,C,E,_,M,k,g,P,T,z):b(0,k-1,C,E,_,M,k,g,P,T,z)}}};function v(x,b){var p=[b,x].join(","),C=d[p],E=c(x,b),A=h(x,b,E);return C(E,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),C;for(C=0;C<p.length;++C)p[C]=[Math.abs(b[C]),C];p.sort(u);var E=new Array(p.length);for(C=0;C<E.length;++C)E[C]=p[C][1];return E}var f={T:function(b){function p(E){this.data=E}var C=p.prototype;return C.dtype=b,C.index=function(){return-1},C.size=0,C.dimension=-1,C.shape=C.stride=C.order=[],C.lo=C.hi=C.transpose=C.step=function(){return new p(this.data)},C.get=C.set=function(){},C.pick=function(){return null},function(A){return new p(A)}},0:function(b,p){function C(A,L){this.data=A,this.offset=L}var E=C.prototype;return E.dtype=b,E.index=function(){return this.offset},E.dimension=0,E.size=1,E.shape=E.stride=E.order=[],E.lo=E.hi=E.transpose=E.step=function(){return new C(this.data,this.offset)},E.pick=function(){return p(this.data)},E.valueOf=E.get=function(){return b==="generic"?this.data.get(this.offset):this.data[this.offset]},E.set=function(L){return b==="generic"?this.data.set(this.offset,L):this.data[this.offset]=L},function(L,_,k,M){return new C(L,M)}},1:function(b,p,C){function E(L,_,k,M){this.data=L,this.shape=[_],this.stride=[k],this.offset=M|0}var A=E.prototype;return A.dtype=b,A.dimension=1,Object.defineProperty(A,"size",{get:function(){return this.shape[0]}}),A.order=[0],A.set=function(_,k){return b==="generic"?this.data.set(this.offset+this.stride[0]*_,k):this.data[this.offset+this.stride[0]*_]=k},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 E(this.data,typeof _!="number"||_<0?this.shape[0]:_|0,this.stride[0],this.offset)},A.lo=function(_){var k=this.offset,M=0,g=this.shape[0],P=this.stride[0];return typeof _=="number"&&_>=0&&(M=_|0,k+=P*M,g-=M),new E(this.data,g,P,k)},A.step=function(_){var k=this.shape[0],M=this.stride[0],g=this.offset,P=0,T=Math.ceil;return typeof _=="number"&&(P=_|0,P<0?(g+=M*(k-1),k=T(-k/P)):k=T(k/P),M*=P),new E(this.data,k,M,g)},A.transpose=function(_){_=_===void 0?0:_|0;var k=this.shape,M=this.stride;return new E(this.data,k[_],M[_],this.offset)},A.pick=function(_){var k=[],M=[],g=this.offset;typeof _=="number"&&_>=0?g=g+this.stride[0]*_|0:(k.push(this.shape[0]),M.push(this.stride[0]));var P=p[k.length+1];return P(this.data,k,M,g)},function(_,k,M,g){return new E(_,k[0],M[0],g)}},2:function(b,p,C){function E(L,_,k,M,g,P){this.data=L,this.shape=[_,k],this.stride=[M,g],this.offset=P|0}var A=E.prototype;return A.dtype=b,A.dimension=2,Object.defineProperty(A,"size",{get:function(){return this.shape[0]*this.shape[1]}}),Object.defineProperty(A,"order",{get:function(){return Math.abs(this.stride[0])>Math.abs(this.stride[1])?[1,0]:[0,1]}}),A.set=function(_,k,M){return b==="generic"?this.data.set(this.offset+this.stride[0]*_+this.stride[1]*k,M):this.data[this.offset+this.stride[0]*_+this.stride[1]*k]=M},A.get=function(_,k){return b==="generic"?this.data.get(this.offset+this.stride[0]*_+this.stride[1]*k):this.data[this.offset+this.stride[0]*_+this.stride[1]*k]},A.index=function(_,k){return this.offset+this.stride[0]*_+this.stride[1]*k},A.hi=function(_,k){return new E(this.data,typeof _!="number"||_<0?this.shape[0]:_|0,typeof k!="number"||k<0?this.shape[1]:k|0,this.stride[0],this.stride[1],this.offset)},A.lo=function(_,k){var M=this.offset,g=0,P=this.shape[0],T=this.shape[1],z=this.stride[0],O=this.stride[1];return typeof _=="number"&&_>=0&&(g=_|0,M+=z*g,P-=g),typeof k=="number"&&k>=0&&(g=k|0,M+=O*g,T-=g),new E(this.data,P,T,z,O,M)},A.step=function(_,k){var M=this.shape[0],g=this.shape[1],P=this.stride[0],T=this.stride[1],z=this.offset,O=0,V=Math.ceil;return typeof _=="number"&&(O=_|0,O<0?(z+=P*(M-1),M=V(-M/O)):M=V(M/O),P*=O),typeof k=="number"&&(O=k|0,O<0?(z+=T*(g-1),g=V(-g/O)):g=V(g/O),T*=O),new E(this.data,M,g,P,T,z)},A.transpose=function(_,k){_=_===void 0?0:_|0,k=k===void 0?1:k|0;var M=this.shape,g=this.stride;return new E(this.data,M[_],M[k],g[_],g[k],this.offset)},A.pick=function(_,k){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 k=="number"&&k>=0?P=P+this.stride[1]*k|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(_,k,M,g){return new E(_,k[0],k[1],M[0],M[1],g)}},3:function(b,p,C){function E(L,_,k,M,g,P,T,z){this.data=L,this.shape=[_,k,M],this.stride=[g,P,T],this.offset=z|0}var A=E.prototype;return A.dtype=b,A.dimension=3,Object.defineProperty(A,"size",{get:function(){return this.shape[0]*this.shape[1]*this.shape[2]}}),Object.defineProperty(A,"order",{get:function(){var _=Math.abs(this.stride[0]),k=Math.abs(this.stride[1]),M=Math.abs(this.stride[2]);return _>k?k>M?[2,1,0]:_>M?[1,2,0]:[1,0,2]:_>M?[2,0,1]:M>k?[0,1,2]:[0,2,1]}}),A.set=function(_,k,M,g){return b==="generic"?this.data.set(this.offset+this.stride[0]*_+this.stride[1]*k+this.stride[2]*M,g):this.data[this.offset+this.stride[0]*_+this.stride[1]*k+this.stride[2]*M]=g},A.get=function(_,k,M){return b==="generic"?this.data.get(this.offset+this.stride[0]*_+this.stride[1]*k+this.stride[2]*M):this.data[this.offset+this.stride[0]*_+this.stride[1]*k+this.stride[2]*M]},A.index=function(_,k,M){return this.offset+this.stride[0]*_+this.stride[1]*k+this.stride[2]*M},A.hi=function(_,k,M){return new E(this.data,typeof _!="number"||_<0?this.shape[0]:_|0,typeof k!="number"||k<0?this.shape[1]:k|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(_,k,M){var g=this.offset,P=0,T=this.shape[0],z=this.shape[1],O=this.shape[2],V=this.stride[0],G=this.stride[1],Z=this.stride[2];return typeof _=="number"&&_>=0&&(P=_|0,g+=V*P,T-=P),typeof k=="number"&&k>=0&&(P=k|0,g+=G*P,z-=P),typeof M=="number"&&M>=0&&(P=M|0,g+=Z*P,O-=P),new E(this.data,T,z,O,V,G,Z,g)},A.step=function(_,k,M){var g=this.shape[0],P=this.shape[1],T=this.shape[2],z=this.stride[0],O=this.stride[1],V=this.stride[2],G=this.offset,Z=0,H=Math.ceil;return typeof _=="number"&&(Z=_|0,Z<0?(G+=z*(g-1),g=H(-g/Z)):g=H(g/Z),z*=Z),typeof k=="number"&&(Z=k|0,Z<0?(G+=O*(P-1),P=H(-P/Z)):P=H(P/Z),O*=Z),typeof M=="number"&&(Z=M|0,Z<0?(G+=V*(T-1),T=H(-T/Z)):T=H(T/Z),V*=Z),new E(this.data,g,P,T,z,O,V,G)},A.transpose=function(_,k,M){_=_===void 0?0:_|0,k=k===void 0?1:k|0,M=M===void 0?2:M|0;var g=this.shape,P=this.stride;return new E(this.data,g[_],g[k],g[M],P[_],P[k],P[M],this.offset)},A.pick=function(_,k,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 k=="number"&&k>=0?T=T+this.stride[1]*k|0:(g.push(this.shape[1]),P.push(this.stride[1])),typeof M=="number"&&M>=0?T=T+this.stride[2]*M|0:(g.push(this.shape[2]),P.push(this.stride[2]));var z=p[g.length+1];return z(this.data,g,P,T)},function(_,k,M,g){return new E(_,k[0],k[1],k[2],M[0],M[1],M[2],g)}},4:function(b,p,C){function E(L,_,k,M,g,P,T,z,O,V){this.data=L,this.shape=[_,k,M,g],this.stride=[P,T,z,O],this.offset=V|0}var A=E.prototype;return A.dtype=b,A.dimension=4,Object.defineProperty(A,"size",{get:function(){return this.shape[0]*this.shape[1]*this.shape[2]*this.shape[3]}}),Object.defineProperty(A,"order",{get:C}),A.set=function(_,k,M,g,P){return b==="generic"?this.data.set(this.offset+this.stride[0]*_+this.stride[1]*k+this.stride[2]*M+this.stride[3]*g,P):this.data[this.offset+this.stride[0]*_+this.stride[1]*k+this.stride[2]*M+this.stride[3]*g]=P},A.get=function(_,k,M,g){return b==="generic"?this.data.get(this.offset+this.stride[0]*_+this.stride[1]*k+this.stride[2]*M+this.stride[3]*g):this.data[this.offset+this.stride[0]*_+this.stride[1]*k+this.stride[2]*M+this.stride[3]*g]},A.index=function(_,k,M,g){return this.offset+this.stride[0]*_+this.stride[1]*k+this.stride[2]*M+this.stride[3]*g},A.hi=function(_,k,M,g){return new E(this.data,typeof _!="number"||_<0?this.shape[0]:_|0,typeof k!="number"||k<0?this.shape[1]:k|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(_,k,M,g){var P=this.offset,T=0,z=this.shape[0],O=this.shape[1],V=this.shape[2],G=this.shape[3],Z=this.stride[0],H=this.stride[1],N=this.stride[2],j=this.stride[3];return typeof _=="number"&&_>=0&&(T=_|0,P+=Z*T,z-=T),typeof k=="number"&&k>=0&&(T=k|0,P+=H*T,O-=T),typeof M=="number"&&M>=0&&(T=M|0,P+=N*T,V-=T),typeof g=="number"&&g>=0&&(T=g|0,P+=j*T,G-=T),new E(this.data,z,O,V,G,Z,H,N,j,P)},A.step=function(_,k,M,g){var P=this.shape[0],T=this.shape[1],z=this.shape[2],O=this.shape[3],V=this.stride[0],G=this.stride[1],Z=this.stride[2],H=this.stride[3],N=this.offset,j=0,re=Math.ceil;return typeof _=="number"&&(j=_|0,j<0?(N+=V*(P-1),P=re(-P/j)):P=re(P/j),V*=j),typeof k=="number"&&(j=k|0,j<0?(N+=G*(T-1),T=re(-T/j)):T=re(T/j),G*=j),typeof M=="number"&&(j=M|0,j<0?(N+=Z*(z-1),z=re(-z/j)):z=re(z/j),Z*=j),typeof g=="number"&&(j=g|0,j<0?(N+=H*(O-1),O=re(-O/j)):O=re(O/j),H*=j),new E(this.data,P,T,z,O,V,G,Z,H,N)},A.transpose=function(_,k,M,g){_=_===void 0?0:_|0,k=k===void 0?1:k|0,M=M===void 0?2:M|0,g=g===void 0?3:g|0;var P=this.shape,T=this.stride;return new E(this.data,P[_],P[k],P[M],P[g],T[_],T[k],T[M],T[g],this.offset)},A.pick=function(_,k,M,g){var P=[],T=[],z=this.offset;typeof _=="number"&&_>=0?z=z+this.stride[0]*_|0:(P.push(this.shape[0]),T.push(this.stride[0])),typeof k=="number"&&k>=0?z=z+this.stride[1]*k|0:(P.push(this.shape[1]),T.push(this.stride[1])),typeof M=="number"&&M>=0?z=z+this.stride[2]*M|0:(P.push(this.shape[2]),T.push(this.stride[2])),typeof g=="number"&&g>=0?z=z+this.stride[3]*g|0:(P.push(this.shape[3]),T.push(this.stride[3]));var O=p[P.length+1];return O(this.data,P,T,z)},function(_,k,M,g){return new E(_,k[0],k[1],k[2],k[3],M[0],M[1],M[2],M[3],g)}},5:function(p,C,E){function A(_,k,M,g,P,T,z,O,V,G,Z,H){this.data=_,this.shape=[k,M,g,P,T],this.stride=[z,O,V,G,Z],this.offset=H|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:E}),L.set=function(k,M,g,P,T,z){return p==="generic"?this.data.set(this.offset+this.stride[0]*k+this.stride[1]*M+this.stride[2]*g+this.stride[3]*P+this.stride[4]*T,z):this.data[this.offset+this.stride[0]*k+this.stride[1]*M+this.stride[2]*g+this.stride[3]*P+this.stride[4]*T]=z},L.get=function(k,M,g,P,T){return p==="generic"?this.data.get(this.offset+this.stride[0]*k+this.stride[1]*M+this.stride[2]*g+this.stride[3]*P+this.stride[4]*T):this.data[this.offset+this.stride[0]*k+this.stride[1]*M+this.stride[2]*g+this.stride[3]*P+this.stride[4]*T]},L.index=function(k,M,g,P,T){return this.offset+this.stride[0]*k+this.stride[1]*M+this.stride[2]*g+this.stride[3]*P+this.stride[4]*T},L.hi=function(k,M,g,P,T){return new A(this.data,typeof k!="number"||k<0?this.shape[0]:k|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(k,M,g,P,T){var z=this.offset,O=0,V=this.shape[0],G=this.shape[1],Z=this.shape[2],H=this.shape[3],N=this.shape[4],j=this.stride[0],re=this.stride[1],oe=this.stride[2],_e=this.stride[3],Me=this.stride[4];return typeof k=="number"&&k>=0&&(O=k|0,z+=j*O,V-=O),typeof M=="number"&&M>=0&&(O=M|0,z+=re*O,G-=O),typeof g=="number"&&g>=0&&(O=g|0,z+=oe*O,Z-=O),typeof P=="number"&&P>=0&&(O=P|0,z+=_e*O,H-=O),typeof T=="number"&&T>=0&&(O=T|0,z+=Me*O,N-=O),new A(this.data,V,G,Z,H,N,j,re,oe,_e,Me,z)},L.step=function(k,M,g,P,T){var z=this.shape[0],O=this.shape[1],V=this.shape[2],G=this.shape[3],Z=this.shape[4],H=this.stride[0],N=this.stride[1],j=this.stride[2],re=this.stride[3],oe=this.stride[4],_e=this.offset,Me=0,ke=Math.ceil;return typeof k=="number"&&(Me=k|0,Me<0?(_e+=H*(z-1),z=ke(-z/Me)):z=ke(z/Me),H*=Me),typeof M=="number"&&(Me=M|0,Me<0?(_e+=N*(O-1),O=ke(-O/Me)):O=ke(O/Me),N*=Me),typeof g=="number"&&(Me=g|0,Me<0?(_e+=j*(V-1),V=ke(-V/Me)):V=ke(V/Me),j*=Me),typeof P=="number"&&(Me=P|0,Me<0?(_e+=re*(G-1),G=ke(-G/Me)):G=ke(G/Me),re*=Me),typeof T=="number"&&(Me=T|0,Me<0?(_e+=oe*(Z-1),Z=ke(-Z/Me)):Z=ke(Z/Me),oe*=Me),new A(this.data,z,O,V,G,Z,H,N,j,re,oe,_e)},L.transpose=function(k,M,g,P,T){k=k===void 0?0:k|0,M=M===void 0?1:M|0,g=g===void 0?2:g|0,P=P===void 0?3:P|0,T=T===void 0?4:T|0;var z=this.shape,O=this.stride;return new A(this.data,z[k],z[M],z[g],z[P],z[T],O[k],O[M],O[g],O[P],O[T],this.offset)},L.pick=function(k,M,g,P,T){var z=[],O=[],V=this.offset;typeof k=="number"&&k>=0?V=V+this.stride[0]*k|0:(z.push(this.shape[0]),O.push(this.stride[0])),typeof M=="number"&&M>=0?V=V+this.stride[1]*M|0:(z.push(this.shape[1]),O.push(this.stride[1])),typeof g=="number"&&g>=0?V=V+this.stride[2]*g|0:(z.push(this.shape[2]),O.push(this.stride[2])),typeof P=="number"&&P>=0?V=V+this.stride[3]*P|0:(z.push(this.shape[3]),O.push(this.stride[3])),typeof T=="number"&&T>=0?V=V+this.stride[4]*T|0:(z.push(this.shape[4]),O.push(this.stride[4]));var G=C[z.length+1];return G(this.data,z,O,V)},function(k,M,g,P){return new A(k,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 C=p===-1?"T":String(p),E=f[C];return p===-1?E(b):p===0?E(b,v[b][0]):E(b,v[b],c)}function d(b){if(s(b))return"buffer";if(l)switch(Object.prototype.toString.call(b)){case"[object Float64Array]":return"float64";case"[object Float32Array]":return"float32";case"[object Int8Array]":return"int8";case"[object Int16Array]":return"int16";case"[object Int32Array]":return"int32";case"[object Uint8ClampedArray]":return"uint8_clamped";case"[object Uint8Array]":return"uint8";case"[object Uint16Array]":return"uint16";case"[object Uint32Array]":return"uint32";case"[object BigInt64Array]":return"bigint64";case"[object BigUint64Array]":return"biguint64"}return Array.isArray(b)?"array":"generic"}var v={generic:[],buffer:[],array:[],float32:[],float64:[],int8:[],int16:[],int32:[],uint8_clamped:[],uint8:[],uint16:[],uint32:[],bigint64:[],biguint64:[]};function x(b,p,C,E){if(b===void 0){var g=v.array[0];return g([])}else typeof b=="number"&&(b=[b]);p===void 0&&(p=[b.length]);var A=p.length;if(C===void 0){C=new Array(A);for(var L=A-1,_=1;L>=0;--L)C[L]=_,_*=p[L]}if(E===void 0){E=0;for(var L=0;L<A;++L)C[L]<0&&(E-=(p[L]-1)*C[L])}for(var k=d(b),M=v[k];M.length<=A+1;)M.push(h(k,M.length-1));var g=M[A+1];return g(b,p,C,E)}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],C=x[0],E=0;E<x.length;++E){b=p,p=C,C=x[(E+1)%x.length];for(var A=u[b],L=u[p],_=u[C],k=new Array(3),M=0,g=new Array(3),P=0,T=0;T<3;++T)k[T]=A[T]-L[T],M+=k[T]*k[T],g[T]=_[T]-L[T],P+=g[T]*g[T];if(M*P>d)for(var z=h[p],O=1/Math.sqrt(M*P),T=0;T<3;++T){var V=(T+1)%3,G=(T+2)%3;z[T]+=O*(g[V]*k[G]-g[G]*k[V])}}for(var v=0;v<f;++v){for(var z=h[v],Z=0,T=0;T<3;++T)Z+=z[T]*z[T];if(Z>d)for(var O=1/Math.sqrt(Z),T=0;T<3;++T)z[T]*=O;else for(var T=0;T<3;++T)z[T]=0}return h},a.faceNormals=function(l,u,c){for(var f=l.length,h=new Array(f),d=c===void 0?s:c,v=0;v<f;++v){for(var x=l[v],b=new Array(3),p=0;p<3;++p)b[p]=u[x[p]];for(var C=new Array(3),E=new Array(3),p=0;p<3;++p)C[p]=b[1][p]-b[0][p],E[p]=b[2][p]-b[0][p];for(var A=new Array(3),L=0,p=0;p<3;++p){var _=(p+1)%3,k=(p+2)%3;A[p]=C[_]*E[k]-C[k]*E[_],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 C=Math.max(s,f,x),p=Math.sqrt(2*C-b+1);s>=C?(o[0]=.5*p,o[1]=.5*(c+l)/p,o[2]=.5*(d+u)/p,o[3]=.5*(h-v)/p):f>=C?(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(C,E,A){return Math.sqrt(Math.pow(C,2)+Math.pow(E,2)+Math.pow(A,2))}function d(C,E,A,L){return Math.sqrt(Math.pow(C,2)+Math.pow(E,2)+Math.pow(A,2)+Math.pow(L,2))}function v(C,E){var A=E[0],L=E[1],_=E[2],k=E[3],M=d(A,L,_,k);M>1e-6?(C[0]=A/M,C[1]=L/M,C[2]=_/M,C[3]=k/M):(C[0]=C[1]=C[2]=0,C[3]=1)}function x(C,E,A){this.radius=s([A]),this.center=s(E),this.rotation=s(C),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(C){this.radius.curve(C),this.center.curve(C),this.rotation.curve(C);var E=this.computedRotation;v(E,E);var A=this.computedMatrix;u(A,E);var L=this.computedCenter,_=this.computedEye,k=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],k[0]=A[1],k[1]=A[5],k[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(C,E){this.recalcMatrix(C);var A=this.computedMatrix;if(E){for(var L=0;L<16;++L)E[L]=A[L];return E}return A},b.idle=function(C){this.center.idle(C),this.radius.idle(C),this.rotation.idle(C)},b.flush=function(C){this.center.flush(C),this.radius.flush(C),this.rotation.flush(C)},b.pan=function(C,E,A,L){E=E||0,A=A||0,L=L||0,this.recalcMatrix(C);var _=this.computedMatrix,k=_[1],M=_[5],g=_[9],P=h(k,M,g);k/=P,M/=P,g/=P;var T=_[0],z=_[4],O=_[8],V=T*k+z*M+O*g;T-=k*V,z-=M*V,O-=g*V;var G=h(T,z,O);T/=G,z/=G,O/=G;var Z=_[2],H=_[6],N=_[10],j=Z*k+H*M+N*g,re=Z*T+H*z+N*O;Z-=j*k+re*T,H-=j*M+re*z,N-=j*g+re*O;var oe=h(Z,H,N);Z/=oe,H/=oe,N/=oe;var _e=T*E+k*A,Me=z*E+M*A,ke=O*E+g*A;this.center.move(C,_e,Me,ke);var me=Math.exp(this.computedRadius[0]);me=Math.max(1e-4,me+L),this.radius.set(C,Math.log(me))},b.rotate=function(C,E,A,L){this.recalcMatrix(C),E=E||0,A=A||0;var _=this.computedMatrix,k=_[0],M=_[4],g=_[8],P=_[1],T=_[5],z=_[9],O=_[2],V=_[6],G=_[10],Z=E*k+A*P,H=E*M+A*T,N=E*g+A*z,j=-(V*N-G*H),re=-(G*Z-O*N),oe=-(O*H-V*Z),_e=Math.sqrt(Math.max(0,1-Math.pow(j,2)-Math.pow(re,2)-Math.pow(oe,2))),Me=d(j,re,oe,_e);Me>1e-6?(j/=Me,re/=Me,oe/=Me,_e/=Me):(j=re=oe=0,_e=1);var ke=this.computedRotation,me=ke[0],ie=ke[1],Se=ke[2],Le=ke[3],Ae=me*_e+Le*j+ie*oe-Se*re,De=ie*_e+Le*re+Se*j-me*oe,Pe=Se*_e+Le*oe+me*re-ie*j,ge=Le*_e-me*j-ie*re-Se*oe;if(L){j=O,re=V,oe=G;var Fe=Math.sin(L)/h(j,re,oe);j*=Fe,re*=Fe,oe*=Fe,_e=Math.cos(E),Ae=Ae*_e+ge*j+De*oe-Pe*re,De=De*_e+ge*re+Pe*j-Ae*oe,Pe=Pe*_e+ge*oe+Ae*re-De*j,ge=ge*_e-Ae*j-De*re-Pe*oe}var ce=d(Ae,De,Pe,ge);ce>1e-6?(Ae/=ce,De/=ce,Pe/=ce,ge/=ce):(Ae=De=Pe=0,ge=1),this.rotation.set(C,Ae,De,Pe,ge)},b.lookAt=function(C,E,A,L){this.recalcMatrix(C),A=A||this.computedCenter,E=E||this.computedEye,L=L||this.computedUp;var _=this.computedMatrix;l(_,E,A,L);var k=this.computedRotation;f(k,_[0],_[1],_[2],_[4],_[5],_[6],_[8],_[9],_[10]),v(k,k),this.rotation.set(C,k[0],k[1],k[2],k[3]);for(var M=0,g=0;g<3;++g)M+=Math.pow(A[g]-E[g],2);this.radius.set(C,.5*Math.log(Math.max(M,1e-6))),this.center.set(C,A[0],A[1],A[2])},b.translate=function(C,E,A,L){this.center.move(C,E||0,A||0,L||0)},b.setMatrix=function(C,E){var A=this.computedRotation;f(A,E[0],E[1],E[2],E[4],E[5],E[6],E[8],E[9],E[10]),v(A,A),this.rotation.set(C,A[0],A[1],A[2],A[3]);var L=this.computedMatrix;c(L,E);var _=L[15];if(Math.abs(_)>1e-6){var k=L[12]/_,M=L[13]/_,g=L[14]/_;this.recalcMatrix(C);var P=Math.exp(this.computedRadius[0]);this.center.set(C,k-L[2]*P,M-L[6]*P,g-L[10]*P),this.radius.idle(C)}else this.center.idle(C),this.radius.idle(C)},b.setDistance=function(C,E){E>0&&this.radius.set(C,Math.log(E))},b.setDistanceLimits=function(C,E){C>0?C=Math.log(C):C=-1/0,E>0?E=Math.log(E):E=1/0,E=Math.max(E,C),this.radius.bounds[0][0]=C,this.radius.bounds[1][0]=E},b.getDistanceLimits=function(C){var E=this.radius.bounds;return C?(C[0]=Math.exp(E[0][0]),C[1]=Math.exp(E[1][0]),C):[Math.exp(E[0][0]),Math.exp(E[1][0])]},b.toJSON=function(){return this.recalcMatrix(this.lastT()),{center:this.computedCenter.slice(),rotation:this.computedRotation.slice(),distance:Math.log(this.computedRadius[0]),zoomMin:this.radius.bounds[0][0],zoomMax:this.radius.bounds[1][0]}},b.fromJSON=function(C){var E=this.lastT(),A=C.center;A&&this.center.set(E,A[0],A[1],A[2]);var L=C.rotation;L&&this.rotation.set(E,L[0],L[1],L[2],L[3]);var _=C.distance;_&&_>0&&this.radius.set(E,Math.log(_)),this.setDistanceLimits(C.zoomMin,C.zoomMax)};function p(C){C=C||{};var E=C.center||[0,0,0],A=C.rotation||[0,0,0,1],L=C.radius||1;E=[].slice.call(E,0,3),A=[].slice.call(A,0,4),v(A,A);var _=new x(A,E,Math.log(L));return _.setDistanceLimits(C.zoomMin,C.zoomMax),("eye"in C||"up"in C)&&_.lookAt(0,C.eye,C.center,C.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 C(g,P,T){for(var z,O,V,G=0;G<2;++G)if(d[G][P].length>0){z=d[G][P][0],V=G;break}O=z[V^1];for(var Z=0;Z<2;++Z)for(var H=d[Z][P],N=0;N<H.length;++N){var j=H[N],re=j[Z^1],oe=s(c[g],c[P],c[O],c[re]);oe>0&&(z=j,O=re,V=Z)}return T||z&&p(z,V),O}function E(g,P){var T=d[P][g][0],z=[g];p(T,P);for(var O=T[P^1],V=P;;){for(;O!==g;)z.push(O),O=C(z[z.length-2],O,!1);if(d[0][g].length+d[1][g].length===0)break;var G=z[z.length-1],Z=g,H=z[1],N=C(G,Z,!0);if(s(c[G],c[Z],c[H],c[N])<0)break;z.push(g),O=C(G,Z)}return z}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 k=d[0][v].length,M=E(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 C=f[p],x=0;x<C.length;++x){var E=C[x];--d[E]===0&&v.push(E)}}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 k=u[x];h[k[0]]&&h[k[1]]&&_.push([A[k[0]],A[k[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,C){for(var E=new Array(p),A=0;A<p;++A)E[A]=C;return E}function x(p){for(var C=new Array(p),E=0;E<p;++E)C[E]=[];return C}function b(p,C){var Fe=d(p,C);p=Fe[0],C=Fe[1];for(var E=C.length,A=p.length,L=s(p,C.length),_=0;_<E;++_)if(L[_].length%2===1)throw new Error("planar-graph-to-polyline: graph must be manifold");var k=l(p,C);function M(lt){for(var Gt=lt.length,Nt=[0],$t=0;$t<Gt;++$t){var sr=C[lt[$t]],wr=C[lt[($t+1)%Gt]],ur=c(-sr[0],sr[1]),Qe=c(-sr[0],wr[1]),Et=c(wr[0],sr[1]),er=c(wr[0],wr[1]);Nt=f(Nt,f(f(ur,Qe),f(Et,er)))}return Nt[Nt.length-1]>0}k=k.filter(M);for(var g=k.length,P=new Array(g),T=new Array(g),_=0;_<g;++_){P[_]=_;var z=new Array(g),O=k[_].map(function(Gt){return C[Gt]}),V=u([O]),G=0;e:for(var Z=0;Z<g;++Z)if(z[Z]=0,_!==Z){for(var H=k[Z],N=H.length,j=0;j<N;++j){var re=V(C[H[j]]);if(re!==0){re<0&&(z[Z]=1,G+=1);continue e}}z[Z]=1,G+=1}T[_]=[G,_,z]}T.sort(function(lt,Gt){return Gt[0]-lt[0]});for(var _=0;_<g;++_)for(var z=T[_],oe=z[1],_e=z[2],Z=0;Z<g;++Z)_e[Z]&&(P[Z]=oe);for(var Me=x(g),_=0;_<g;++_)Me[_].push(P[_]),Me[P[_]].push(_);for(var ke={},me=v(E,!1),_=0;_<g;++_)for(var H=k[_],N=H.length,Z=0;Z<N;++Z){var ie=H[Z],Se=H[(Z+1)%N],Le=Math.min(ie,Se)+":"+Math.max(ie,Se);if(Le in ke){var Ae=ke[Le];Me[Ae].push(_),Me[_].push(Ae),me[ie]=me[Se]=!0}else ke[Le]=_}function De(lt){for(var Gt=lt.length,Nt=0;Nt<Gt;++Nt)if(!me[lt[Nt]])return!1;return!0}for(var Pe=[],ge=v(g,-1),_=0;_<g;++_)P[_]===_&&!De(k[_])?(Pe.push(_),ge[_]=0):ge[_]=-1;for(var Fe=[];Pe.length>0;){var ce=Pe.pop(),Ze=Me[ce];h(Ze,function(lt,Gt){return lt-Gt});var ct=Ze.length,pt=ge[ce],Wt;if(pt===0){var H=k[ce];Wt=[H]}for(var _=0;_<ct;++_){var st=Ze[_];if(!(ge[st]>=0)&&(ge[st]=pt^1,Pe.push(st),pt===0)){var H=k[st];De(H)||(H.reverse(),Wt.push(H))}}pt===0&&Fe.push(Wt)}return Fe}},5085:function(i,a,o){i.exports=C;var s=o(3250)[3],l=o(4209),u=o(3352),c=o(2478);function f(){return!0}function h(E){return function(A,L){var _=E[A];return _?!!_.queryPoint(L,f):!1}}function d(E){for(var A={},L=0;L<E.length;++L){var _=E[L],k=_[0][0],M=_[0][1],g=_[1][1],P=[Math.min(M,g),Math.max(M,g)];k in A?A[k].push(P):A[k]=[P]}for(var T={},z=Object.keys(A),L=0;L<z.length;++L){var O=A[z[L]];T[z[L]]=u(O)}return h(T)}function v(E,A){return function(L){var _=c.le(A,L[0]);if(_<0)return 1;var k=E[_];if(!k)if(_>0&&A[_]===L[0])k=E[_-1];else return 1;for(var M=1;k;){var g=k.key,P=s(L,g[0],g[1]);if(g[0][0]<g[1][0])if(P<0)k=k.left;else if(P>0)M=-1,k=k.right;else return 0;else if(P>0)k=k.left;else if(P<0)M=1,k=k.right;else return 0}return M}}function x(E){return 1}function b(E){return function(L){return E(L[0],L[1])?0:1}}function p(E,A){return function(_){return E(_[0],_[1])?0:A(_)}}function C(E){for(var A=E.length,L=[],_=[],k=0,M=0;M<A;++M)for(var g=E[M],P=g.length,T=P-1,z=0;z<P;T=z++){var O=g[T],V=g[z];O[0]===V[0]?_.push([O,V]):L.push([O,V])}if(L.length===0)return _.length===0?x:b(d(_));var G=l(L),Z=v(G.slabs,G.coordinates);return _.length===0?Z:p(d(_),Z)}},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,C=0,E=0,A=0,v=0;v<h.length;++v){var L=o[v],_=s[v],k=a[v];x+=L*L,b+=L*_,p+=_*_,C+=k*L,E+=k*_,A+=k*k}var M=Math.abs(x*p-b*b),g=b*E-p*C,P=b*C-x*E,T;if(g+P<=M)if(g<0)P<0&&C<0?(P=0,-C>=x?(g=1,T=x+2*C+A):(g=-C/x,T=C*g+A)):(g=0,E>=0?(P=0,T=A):-E>=p?(P=1,T=p+2*E+A):(P=-E/p,T=E*P+A));else if(P<0)P=0,C>=0?(g=0,T=A):-C>=x?(g=1,T=x+2*C+A):(g=-C/x,T=C*g+A);else{var z=1/M;g*=z,P*=z,T=g*(x*g+b*P+2*C)+P*(b*g+p*P+2*E)+A}else{var O,V,G,Z;g<0?(O=b+C,V=p+E,V>O?(G=V-O,Z=x-2*b+p,G>=Z?(g=1,P=0,T=x+2*C+A):(g=G/Z,P=1-g,T=g*(x*g+b*P+2*C)+P*(b*g+p*P+2*E)+A)):(g=0,V<=0?(P=1,T=p+2*E+A):E>=0?(P=0,T=A):(P=-E/p,T=E*P+A))):P<0?(O=b+E,V=x+C,V>O?(G=V-O,Z=x-2*b+p,G>=Z?(P=1,g=0,T=p+2*E+A):(P=G/Z,g=1-P,T=g*(x*g+b*P+2*C)+P*(b*g+p*P+2*E)+A)):(P=0,V<=0?(g=1,T=x+2*C+A):C>=0?(g=0,T=A):(g=-C/x,T=C*g+A))):(G=p+E-b-C,G<=0?(g=0,P=1,T=p+2*E+A):(Z=x-2*b+p,G>=Z?(g=1,P=0,T=x+2*C+A):(g=G/Z,P=1-g,T=g*(x*g+b*P+2*C)+P*(b*g+p*P+2*E)+A)))}for(var H=1-g-P,v=0;v<h.length;++v)d[v]=H*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,_,k){return function(g){return k(A(_(g[0][0],g[1][1]),_(-g[0][1],g[1][0])))}}function d(A,L,_,k){return function(g){return k(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,_,k){return function(g){return k(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,_,k){return function(g){return k(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 C(A,L,_,k,M,g,P,T){return function(O){switch(O.length){case 0:return A(O);case 1:return L(O);case 2:return _(O);case 3:return k(O);case 4:return M(O);case 5:return g(O)}var V=P[O.length];return V||(V=P[O.length]=T(O.length)),V(O)}}function E(){for(;p.length<f;)p.push(b(p.length));i.exports=C.apply(void 0,p.concat([p,b]));for(var A=0;A<p.length;++A)i.exports[A]=p[A]}E()},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?C:E;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 z(O,V,G){var Z=P(O[0],O[0]),H=T(Z,V[0]),N=T(Z,G[0]),j=P(V[0],V[0]),re=T(j,O[0]),oe=T(j,G[0]),_e=P(G[0],G[0]),Me=T(_e,O[0]),ke=T(_e,V[0]),me=M(g(ke,oe),g(re,H)),ie=g(Me,N),Se=g(me,ie);return Se[Se.length-1]}return z}function p(M,g,P,T){function z(O,V,G,Z){var H=M(P(O[0],O[0]),P(O[1],O[1])),N=T(H,V[0]),j=T(H,G[0]),re=T(H,Z[0]),oe=M(P(V[0],V[0]),P(V[1],V[1])),_e=T(oe,O[0]),Me=T(oe,G[0]),ke=T(oe,Z[0]),me=M(P(G[0],G[0]),P(G[1],G[1])),ie=T(me,O[0]),Se=T(me,V[0]),Le=T(me,Z[0]),Ae=M(P(Z[0],Z[0]),P(Z[1],Z[1])),De=T(Ae,O[0]),Pe=T(Ae,V[0]),ge=T(Ae,G[0]),Fe=M(M(T(g(ge,Le),V[1]),M(T(g(Pe,ke),-G[1]),T(g(Se,Me),Z[1]))),M(T(g(Pe,ke),O[1]),M(T(g(De,re),-V[1]),T(g(_e,N),Z[1])))),ce=M(M(T(g(ge,Le),O[1]),M(T(g(De,re),-G[1]),T(g(ie,j),Z[1]))),M(T(g(Se,Me),O[1]),M(T(g(ie,j),-V[1]),T(g(_e,N),G[1])))),Ze=g(Fe,ce);return Ze[Ze.length-1]}return z}function C(M,g,P,T){function z(O,V,G,Z,H){var N=M(P(O[0],O[0]),M(P(O[1],O[1]),P(O[2],O[2]))),j=T(N,V[0]),re=T(N,G[0]),oe=T(N,Z[0]),_e=T(N,H[0]),Me=M(P(V[0],V[0]),M(P(V[1],V[1]),P(V[2],V[2]))),ke=T(Me,O[0]),me=T(Me,G[0]),ie=T(Me,Z[0]),Se=T(Me,H[0]),Le=M(P(G[0],G[0]),M(P(G[1],G[1]),P(G[2],G[2]))),Ae=T(Le,O[0]),De=T(Le,V[0]),Pe=T(Le,Z[0]),ge=T(Le,H[0]),Fe=M(P(Z[0],Z[0]),M(P(Z[1],Z[1]),P(Z[2],Z[2]))),ce=T(Fe,O[0]),Ze=T(Fe,V[0]),ct=T(Fe,G[0]),pt=T(Fe,H[0]),Wt=M(P(H[0],H[0]),M(P(H[1],H[1]),P(H[2],H[2]))),st=T(Wt,O[0]),lt=T(Wt,V[0]),Gt=T(Wt,G[0]),Nt=T(Wt,Z[0]),$t=M(M(M(T(M(T(g(Nt,pt),G[1]),M(T(g(Gt,ge),-Z[1]),T(g(ct,Pe),H[1]))),V[2]),M(T(M(T(g(Nt,pt),V[1]),M(T(g(lt,Se),-Z[1]),T(g(Ze,ie),H[1]))),-G[2]),T(M(T(g(Gt,ge),V[1]),M(T(g(lt,Se),-G[1]),T(g(De,me),H[1]))),Z[2]))),M(T(M(T(g(ct,Pe),V[1]),M(T(g(Ze,ie),-G[1]),T(g(De,me),Z[1]))),-H[2]),M(T(M(T(g(Nt,pt),V[1]),M(T(g(lt,Se),-Z[1]),T(g(Ze,ie),H[1]))),O[2]),T(M(T(g(Nt,pt),O[1]),M(T(g(st,_e),-Z[1]),T(g(ce,oe),H[1]))),-V[2])))),M(M(T(M(T(g(lt,Se),O[1]),M(T(g(st,_e),-V[1]),T(g(ke,j),H[1]))),Z[2]),M(T(M(T(g(Ze,ie),O[1]),M(T(g(ce,oe),-V[1]),T(g(ke,j),Z[1]))),-H[2]),T(M(T(g(ct,Pe),V[1]),M(T(g(Ze,ie),-G[1]),T(g(De,me),Z[1]))),O[2]))),M(T(M(T(g(ct,Pe),O[1]),M(T(g(ce,oe),-G[1]),T(g(Ae,re),Z[1]))),-V[2]),M(T(M(T(g(Ze,ie),O[1]),M(T(g(ce,oe),-V[1]),T(g(ke,j),Z[1]))),G[2]),T(M(T(g(De,me),O[1]),M(T(g(Ae,re),-V[1]),T(g(ke,j),G[1]))),-Z[2]))))),sr=M(M(M(T(M(T(g(Nt,pt),G[1]),M(T(g(Gt,ge),-Z[1]),T(g(ct,Pe),H[1]))),O[2]),T(M(T(g(Nt,pt),O[1]),M(T(g(st,_e),-Z[1]),T(g(ce,oe),H[1]))),-G[2])),M(T(M(T(g(Gt,ge),O[1]),M(T(g(st,_e),-G[1]),T(g(Ae,re),H[1]))),Z[2]),T(M(T(g(ct,Pe),O[1]),M(T(g(ce,oe),-G[1]),T(g(Ae,re),Z[1]))),-H[2]))),M(M(T(M(T(g(Gt,ge),V[1]),M(T(g(lt,Se),-G[1]),T(g(De,me),H[1]))),O[2]),T(M(T(g(Gt,ge),O[1]),M(T(g(st,_e),-G[1]),T(g(Ae,re),H[1]))),-V[2])),M(T(M(T(g(lt,Se),O[1]),M(T(g(st,_e),-V[1]),T(g(ke,j),H[1]))),G[2]),T(M(T(g(De,me),O[1]),M(T(g(Ae,re),-V[1]),T(g(ke,j),G[1]))),-H[2])))),wr=g($t,sr);return wr[wr.length-1]}return z}function E(M,g,P,T){function z(O,V,G,Z,H,N){var j=M(M(P(O[0],O[0]),P(O[1],O[1])),M(P(O[2],O[2]),P(O[3],O[3]))),re=T(j,V[0]),oe=T(j,G[0]),_e=T(j,Z[0]),Me=T(j,H[0]),ke=T(j,N[0]),me=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(me,O[0]),Se=T(me,G[0]),Le=T(me,Z[0]),Ae=T(me,H[0]),De=T(me,N[0]),Pe=M(M(P(G[0],G[0]),P(G[1],G[1])),M(P(G[2],G[2]),P(G[3],G[3]))),ge=T(Pe,O[0]),Fe=T(Pe,V[0]),ce=T(Pe,Z[0]),Ze=T(Pe,H[0]),ct=T(Pe,N[0]),pt=M(M(P(Z[0],Z[0]),P(Z[1],Z[1])),M(P(Z[2],Z[2]),P(Z[3],Z[3]))),Wt=T(pt,O[0]),st=T(pt,V[0]),lt=T(pt,G[0]),Gt=T(pt,H[0]),Nt=T(pt,N[0]),$t=M(M(P(H[0],H[0]),P(H[1],H[1])),M(P(H[2],H[2]),P(H[3],H[3]))),sr=T($t,O[0]),wr=T($t,V[0]),ur=T($t,G[0]),Qe=T($t,Z[0]),Et=T($t,N[0]),er=M(M(P(N[0],N[0]),P(N[1],N[1])),M(P(N[2],N[2]),P(N[3],N[3]))),Ut=T(er,O[0]),Ft=T(er,V[0]),bt=T(er,G[0]),yt=T(er,Z[0]),Yt=T(er,H[0]),lr=M(M(M(T(M(M(T(M(T(g(Yt,Et),Z[1]),M(T(g(yt,Nt),-H[1]),T(g(Qe,Gt),N[1]))),G[2]),T(M(T(g(Yt,Et),G[1]),M(T(g(bt,ct),-H[1]),T(g(ur,Ze),N[1]))),-Z[2])),M(T(M(T(g(yt,Nt),G[1]),M(T(g(bt,ct),-Z[1]),T(g(lt,ce),N[1]))),H[2]),T(M(T(g(Qe,Gt),G[1]),M(T(g(ur,Ze),-Z[1]),T(g(lt,ce),H[1]))),-N[2]))),V[3]),M(T(M(M(T(M(T(g(Yt,Et),Z[1]),M(T(g(yt,Nt),-H[1]),T(g(Qe,Gt),N[1]))),V[2]),T(M(T(g(Yt,Et),V[1]),M(T(g(Ft,De),-H[1]),T(g(wr,Ae),N[1]))),-Z[2])),M(T(M(T(g(yt,Nt),V[1]),M(T(g(Ft,De),-Z[1]),T(g(st,Le),N[1]))),H[2]),T(M(T(g(Qe,Gt),V[1]),M(T(g(wr,Ae),-Z[1]),T(g(st,Le),H[1]))),-N[2]))),-G[3]),T(M(M(T(M(T(g(Yt,Et),G[1]),M(T(g(bt,ct),-H[1]),T(g(ur,Ze),N[1]))),V[2]),T(M(T(g(Yt,Et),V[1]),M(T(g(Ft,De),-H[1]),T(g(wr,Ae),N[1]))),-G[2])),M(T(M(T(g(bt,ct),V[1]),M(T(g(Ft,De),-G[1]),T(g(Fe,Se),N[1]))),H[2]),T(M(T(g(ur,Ze),V[1]),M(T(g(wr,Ae),-G[1]),T(g(Fe,Se),H[1]))),-N[2]))),Z[3]))),M(M(T(M(M(T(M(T(g(yt,Nt),G[1]),M(T(g(bt,ct),-Z[1]),T(g(lt,ce),N[1]))),V[2]),T(M(T(g(yt,Nt),V[1]),M(T(g(Ft,De),-Z[1]),T(g(st,Le),N[1]))),-G[2])),M(T(M(T(g(bt,ct),V[1]),M(T(g(Ft,De),-G[1]),T(g(Fe,Se),N[1]))),Z[2]),T(M(T(g(lt,ce),V[1]),M(T(g(st,Le),-G[1]),T(g(Fe,Se),Z[1]))),-N[2]))),-H[3]),T(M(M(T(M(T(g(Qe,Gt),G[1]),M(T(g(ur,Ze),-Z[1]),T(g(lt,ce),H[1]))),V[2]),T(M(T(g(Qe,Gt),V[1]),M(T(g(wr,Ae),-Z[1]),T(g(st,Le),H[1]))),-G[2])),M(T(M(T(g(ur,Ze),V[1]),M(T(g(wr,Ae),-G[1]),T(g(Fe,Se),H[1]))),Z[2]),T(M(T(g(lt,ce),V[1]),M(T(g(st,Le),-G[1]),T(g(Fe,Se),Z[1]))),-H[2]))),N[3])),M(T(M(M(T(M(T(g(Yt,Et),Z[1]),M(T(g(yt,Nt),-H[1]),T(g(Qe,Gt),N[1]))),V[2]),T(M(T(g(Yt,Et),V[1]),M(T(g(Ft,De),-H[1]),T(g(wr,Ae),N[1]))),-Z[2])),M(T(M(T(g(yt,Nt),V[1]),M(T(g(Ft,De),-Z[1]),T(g(st,Le),N[1]))),H[2]),T(M(T(g(Qe,Gt),V[1]),M(T(g(wr,Ae),-Z[1]),T(g(st,Le),H[1]))),-N[2]))),O[3]),T(M(M(T(M(T(g(Yt,Et),Z[1]),M(T(g(yt,Nt),-H[1]),T(g(Qe,Gt),N[1]))),O[2]),T(M(T(g(Yt,Et),O[1]),M(T(g(Ut,ke),-H[1]),T(g(sr,Me),N[1]))),-Z[2])),M(T(M(T(g(yt,Nt),O[1]),M(T(g(Ut,ke),-Z[1]),T(g(Wt,_e),N[1]))),H[2]),T(M(T(g(Qe,Gt),O[1]),M(T(g(sr,Me),-Z[1]),T(g(Wt,_e),H[1]))),-N[2]))),-V[3])))),M(M(M(T(M(M(T(M(T(g(Yt,Et),V[1]),M(T(g(Ft,De),-H[1]),T(g(wr,Ae),N[1]))),O[2]),T(M(T(g(Yt,Et),O[1]),M(T(g(Ut,ke),-H[1]),T(g(sr,Me),N[1]))),-V[2])),M(T(M(T(g(Ft,De),O[1]),M(T(g(Ut,ke),-V[1]),T(g(ie,re),N[1]))),H[2]),T(M(T(g(wr,Ae),O[1]),M(T(g(sr,Me),-V[1]),T(g(ie,re),H[1]))),-N[2]))),Z[3]),T(M(M(T(M(T(g(yt,Nt),V[1]),M(T(g(Ft,De),-Z[1]),T(g(st,Le),N[1]))),O[2]),T(M(T(g(yt,Nt),O[1]),M(T(g(Ut,ke),-Z[1]),T(g(Wt,_e),N[1]))),-V[2])),M(T(M(T(g(Ft,De),O[1]),M(T(g(Ut,ke),-V[1]),T(g(ie,re),N[1]))),Z[2]),T(M(T(g(st,Le),O[1]),M(T(g(Wt,_e),-V[1]),T(g(ie,re),Z[1]))),-N[2]))),-H[3])),M(T(M(M(T(M(T(g(Qe,Gt),V[1]),M(T(g(wr,Ae),-Z[1]),T(g(st,Le),H[1]))),O[2]),T(M(T(g(Qe,Gt),O[1]),M(T(g(sr,Me),-Z[1]),T(g(Wt,_e),H[1]))),-V[2])),M(T(M(T(g(wr,Ae),O[1]),M(T(g(sr,Me),-V[1]),T(g(ie,re),H[1]))),Z[2]),T(M(T(g(st,Le),O[1]),M(T(g(Wt,_e),-V[1]),T(g(ie,re),Z[1]))),-H[2]))),N[3]),T(M(M(T(M(T(g(yt,Nt),G[1]),M(T(g(bt,ct),-Z[1]),T(g(lt,ce),N[1]))),V[2]),T(M(T(g(yt,Nt),V[1]),M(T(g(Ft,De),-Z[1]),T(g(st,Le),N[1]))),-G[2])),M(T(M(T(g(bt,ct),V[1]),M(T(g(Ft,De),-G[1]),T(g(Fe,Se),N[1]))),Z[2]),T(M(T(g(lt,ce),V[1]),M(T(g(st,Le),-G[1]),T(g(Fe,Se),Z[1]))),-N[2]))),O[3]))),M(M(T(M(M(T(M(T(g(yt,Nt),G[1]),M(T(g(bt,ct),-Z[1]),T(g(lt,ce),N[1]))),O[2]),T(M(T(g(yt,Nt),O[1]),M(T(g(Ut,ke),-Z[1]),T(g(Wt,_e),N[1]))),-G[2])),M(T(M(T(g(bt,ct),O[1]),M(T(g(Ut,ke),-G[1]),T(g(ge,oe),N[1]))),Z[2]),T(M(T(g(lt,ce),O[1]),M(T(g(Wt,_e),-G[1]),T(g(ge,oe),Z[1]))),-N[2]))),-V[3]),T(M(M(T(M(T(g(yt,Nt),V[1]),M(T(g(Ft,De),-Z[1]),T(g(st,Le),N[1]))),O[2]),T(M(T(g(yt,Nt),O[1]),M(T(g(Ut,ke),-Z[1]),T(g(Wt,_e),N[1]))),-V[2])),M(T(M(T(g(Ft,De),O[1]),M(T(g(Ut,ke),-V[1]),T(g(ie,re),N[1]))),Z[2]),T(M(T(g(st,Le),O[1]),M(T(g(Wt,_e),-V[1]),T(g(ie,re),Z[1]))),-N[2]))),G[3])),M(T(M(M(T(M(T(g(bt,ct),V[1]),M(T(g(Ft,De),-G[1]),T(g(Fe,Se),N[1]))),O[2]),T(M(T(g(bt,ct),O[1]),M(T(g(Ut,ke),-G[1]),T(g(ge,oe),N[1]))),-V[2])),M(T(M(T(g(Ft,De),O[1]),M(T(g(Ut,ke),-V[1]),T(g(ie,re),N[1]))),G[2]),T(M(T(g(Fe,Se),O[1]),M(T(g(ge,oe),-V[1]),T(g(ie,re),G[1]))),-N[2]))),-Z[3]),T(M(M(T(M(T(g(lt,ce),V[1]),M(T(g(st,Le),-G[1]),T(g(Fe,Se),Z[1]))),O[2]),T(M(T(g(lt,ce),O[1]),M(T(g(Wt,_e),-G[1]),T(g(ge,oe),Z[1]))),-V[2])),M(T(M(T(g(st,Le),O[1]),M(T(g(Wt,_e),-V[1]),T(g(ie,re),Z[1]))),G[2]),T(M(T(g(Fe,Se),O[1]),M(T(g(ge,oe),-V[1]),T(g(ie,re),G[1]))),-Z[2]))),N[3]))))),Tr=M(M(M(T(M(M(T(M(T(g(Yt,Et),Z[1]),M(T(g(yt,Nt),-H[1]),T(g(Qe,Gt),N[1]))),G[2]),T(M(T(g(Yt,Et),G[1]),M(T(g(bt,ct),-H[1]),T(g(ur,Ze),N[1]))),-Z[2])),M(T(M(T(g(yt,Nt),G[1]),M(T(g(bt,ct),-Z[1]),T(g(lt,ce),N[1]))),H[2]),T(M(T(g(Qe,Gt),G[1]),M(T(g(ur,Ze),-Z[1]),T(g(lt,ce),H[1]))),-N[2]))),O[3]),M(T(M(M(T(M(T(g(Yt,Et),Z[1]),M(T(g(yt,Nt),-H[1]),T(g(Qe,Gt),N[1]))),O[2]),T(M(T(g(Yt,Et),O[1]),M(T(g(Ut,ke),-H[1]),T(g(sr,Me),N[1]))),-Z[2])),M(T(M(T(g(yt,Nt),O[1]),M(T(g(Ut,ke),-Z[1]),T(g(Wt,_e),N[1]))),H[2]),T(M(T(g(Qe,Gt),O[1]),M(T(g(sr,Me),-Z[1]),T(g(Wt,_e),H[1]))),-N[2]))),-G[3]),T(M(M(T(M(T(g(Yt,Et),G[1]),M(T(g(bt,ct),-H[1]),T(g(ur,Ze),N[1]))),O[2]),T(M(T(g(Yt,Et),O[1]),M(T(g(Ut,ke),-H[1]),T(g(sr,Me),N[1]))),-G[2])),M(T(M(T(g(bt,ct),O[1]),M(T(g(Ut,ke),-G[1]),T(g(ge,oe),N[1]))),H[2]),T(M(T(g(ur,Ze),O[1]),M(T(g(sr,Me),-G[1]),T(g(ge,oe),H[1]))),-N[2]))),Z[3]))),M(M(T(M(M(T(M(T(g(yt,Nt),G[1]),M(T(g(bt,ct),-Z[1]),T(g(lt,ce),N[1]))),O[2]),T(M(T(g(yt,Nt),O[1]),M(T(g(Ut,ke),-Z[1]),T(g(Wt,_e),N[1]))),-G[2])),M(T(M(T(g(bt,ct),O[1]),M(T(g(Ut,ke),-G[1]),T(g(ge,oe),N[1]))),Z[2]),T(M(T(g(lt,ce),O[1]),M(T(g(Wt,_e),-G[1]),T(g(ge,oe),Z[1]))),-N[2]))),-H[3]),T(M(M(T(M(T(g(Qe,Gt),G[1]),M(T(g(ur,Ze),-Z[1]),T(g(lt,ce),H[1]))),O[2]),T(M(T(g(Qe,Gt),O[1]),M(T(g(sr,Me),-Z[1]),T(g(Wt,_e),H[1]))),-G[2])),M(T(M(T(g(ur,Ze),O[1]),M(T(g(sr,Me),-G[1]),T(g(ge,oe),H[1]))),Z[2]),T(M(T(g(lt,ce),O[1]),M(T(g(Wt,_e),-G[1]),T(g(ge,oe),Z[1]))),-H[2]))),N[3])),M(T(M(M(T(M(T(g(Yt,Et),G[1]),M(T(g(bt,ct),-H[1]),T(g(ur,Ze),N[1]))),V[2]),T(M(T(g(Yt,Et),V[1]),M(T(g(Ft,De),-H[1]),T(g(wr,Ae),N[1]))),-G[2])),M(T(M(T(g(bt,ct),V[1]),M(T(g(Ft,De),-G[1]),T(g(Fe,Se),N[1]))),H[2]),T(M(T(g(ur,Ze),V[1]),M(T(g(wr,Ae),-G[1]),T(g(Fe,Se),H[1]))),-N[2]))),O[3]),T(M(M(T(M(T(g(Yt,Et),G[1]),M(T(g(bt,ct),-H[1]),T(g(ur,Ze),N[1]))),O[2]),T(M(T(g(Yt,Et),O[1]),M(T(g(Ut,ke),-H[1]),T(g(sr,Me),N[1]))),-G[2])),M(T(M(T(g(bt,ct),O[1]),M(T(g(Ut,ke),-G[1]),T(g(ge,oe),N[1]))),H[2]),T(M(T(g(ur,Ze),O[1]),M(T(g(sr,Me),-G[1]),T(g(ge,oe),H[1]))),-N[2]))),-V[3])))),M(M(M(T(M(M(T(M(T(g(Yt,Et),V[1]),M(T(g(Ft,De),-H[1]),T(g(wr,Ae),N[1]))),O[2]),T(M(T(g(Yt,Et),O[1]),M(T(g(Ut,ke),-H[1]),T(g(sr,Me),N[1]))),-V[2])),M(T(M(T(g(Ft,De),O[1]),M(T(g(Ut,ke),-V[1]),T(g(ie,re),N[1]))),H[2]),T(M(T(g(wr,Ae),O[1]),M(T(g(sr,Me),-V[1]),T(g(ie,re),H[1]))),-N[2]))),G[3]),T(M(M(T(M(T(g(bt,ct),V[1]),M(T(g(Ft,De),-G[1]),T(g(Fe,Se),N[1]))),O[2]),T(M(T(g(bt,ct),O[1]),M(T(g(Ut,ke),-G[1]),T(g(ge,oe),N[1]))),-V[2])),M(T(M(T(g(Ft,De),O[1]),M(T(g(Ut,ke),-V[1]),T(g(ie,re),N[1]))),G[2]),T(M(T(g(Fe,Se),O[1]),M(T(g(ge,oe),-V[1]),T(g(ie,re),G[1]))),-N[2]))),-H[3])),M(T(M(M(T(M(T(g(ur,Ze),V[1]),M(T(g(wr,Ae),-G[1]),T(g(Fe,Se),H[1]))),O[2]),T(M(T(g(ur,Ze),O[1]),M(T(g(sr,Me),-G[1]),T(g(ge,oe),H[1]))),-V[2])),M(T(M(T(g(wr,Ae),O[1]),M(T(g(sr,Me),-V[1]),T(g(ie,re),H[1]))),G[2]),T(M(T(g(Fe,Se),O[1]),M(T(g(ge,oe),-V[1]),T(g(ie,re),G[1]))),-H[2]))),N[3]),T(M(M(T(M(T(g(Qe,Gt),G[1]),M(T(g(ur,Ze),-Z[1]),T(g(lt,ce),H[1]))),V[2]),T(M(T(g(Qe,Gt),V[1]),M(T(g(wr,Ae),-Z[1]),T(g(st,Le),H[1]))),-G[2])),M(T(M(T(g(ur,Ze),V[1]),M(T(g(wr,Ae),-G[1]),T(g(Fe,Se),H[1]))),Z[2]),T(M(T(g(lt,ce),V[1]),M(T(g(st,Le),-G[1]),T(g(Fe,Se),Z[1]))),-H[2]))),O[3]))),M(M(T(M(M(T(M(T(g(Qe,Gt),G[1]),M(T(g(ur,Ze),-Z[1]),T(g(lt,ce),H[1]))),O[2]),T(M(T(g(Qe,Gt),O[1]),M(T(g(sr,Me),-Z[1]),T(g(Wt,_e),H[1]))),-G[2])),M(T(M(T(g(ur,Ze),O[1]),M(T(g(sr,Me),-G[1]),T(g(ge,oe),H[1]))),Z[2]),T(M(T(g(lt,ce),O[1]),M(T(g(Wt,_e),-G[1]),T(g(ge,oe),Z[1]))),-H[2]))),-V[3]),T(M(M(T(M(T(g(Qe,Gt),V[1]),M(T(g(wr,Ae),-Z[1]),T(g(st,Le),H[1]))),O[2]),T(M(T(g(Qe,Gt),O[1]),M(T(g(sr,Me),-Z[1]),T(g(Wt,_e),H[1]))),-V[2])),M(T(M(T(g(wr,Ae),O[1]),M(T(g(sr,Me),-V[1]),T(g(ie,re),H[1]))),Z[2]),T(M(T(g(st,Le),O[1]),M(T(g(Wt,_e),-V[1]),T(g(ie,re),Z[1]))),-H[2]))),G[3])),M(T(M(M(T(M(T(g(ur,Ze),V[1]),M(T(g(wr,Ae),-G[1]),T(g(Fe,Se),H[1]))),O[2]),T(M(T(g(ur,Ze),O[1]),M(T(g(sr,Me),-G[1]),T(g(ge,oe),H[1]))),-V[2])),M(T(M(T(g(wr,Ae),O[1]),M(T(g(sr,Me),-V[1]),T(g(ie,re),H[1]))),G[2]),T(M(T(g(Fe,Se),O[1]),M(T(g(ge,oe),-V[1]),T(g(ie,re),G[1]))),-H[2]))),-Z[3]),T(M(M(T(M(T(g(lt,ce),V[1]),M(T(g(st,Le),-G[1]),T(g(Fe,Se),Z[1]))),O[2]),T(M(T(g(lt,ce),O[1]),M(T(g(Wt,_e),-G[1]),T(g(ge,oe),Z[1]))),-V[2])),M(T(M(T(g(st,Le),O[1]),M(T(g(Wt,_e),-V[1]),T(g(ie,re),Z[1]))),G[2]),T(M(T(g(Fe,Se),O[1]),M(T(g(ge,oe),-V[1]),T(g(ie,re),G[1]))),-Z[2]))),H[3]))))),Rr=g(lr,Tr);return Rr[Rr.length-1]}return z}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,z,O,V,G){function Z(H,N,j,re,oe,_e){switch(arguments.length){case 0:case 1:return 0;case 2:return T(H,N);case 3:return z(H,N,j);case 4:return O(H,N,j,re);case 5:return V(H,N,j,re,oe);case 6:return G(H,N,j,re,oe,_e)}for(var Me=new Array(arguments.length),ke=0;ke<arguments.length;++ke)Me[ke]=arguments[ke];return M(Me)}return Z}function k(){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]}k()},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(_,k){return[A([[+k[0],+_[0][1]],[+k[1],+_[1][1]]]),A([[+_[0][0],+k[0]],[+_[1][0],+k[1]]]),A(_)]}}function d(A){return function(_,k){return[A([[+k[0],+_[0][1],+_[0][2]],[+k[1],+_[1][1],+_[1][2]],[+k[2],+_[2][1],+_[2][2]]]),A([[+_[0][0],+k[0],+_[0][2]],[+_[1][0],+k[1],+_[1][2]],[+_[2][0],+k[2],+_[2][2]]]),A([[+_[0][0],+_[0][1],+k[0]],[+_[1][0],+_[1][1],+k[1]],[+_[2][0],+_[2][1],+k[2]]]),A(_)]}}function v(A){return function(_,k){return[A([[+k[0],+_[0][1],+_[0][2],+_[0][3]],[+k[1],+_[1][1],+_[1][2],+_[1][3]],[+k[2],+_[2][1],+_[2][2],+_[2][3]],[+k[3],+_[3][1],+_[3][2],+_[3][3]]]),A([[+_[0][0],+k[0],+_[0][2],+_[0][3]],[+_[1][0],+k[1],+_[1][2],+_[1][3]],[+_[2][0],+k[2],+_[2][2],+_[2][3]],[+_[3][0],+k[3],+_[3][2],+_[3][3]]]),A([[+_[0][0],+_[0][1],+k[0],+_[0][3]],[+_[1][0],+_[1][1],+k[1],+_[1][3]],[+_[2][0],+_[2][1],+k[2],+_[2][3]],[+_[3][0],+_[3][1],+k[3],+_[3][3]]]),A([[+_[0][0],+_[0][1],+_[0][2],+k[0]],[+_[1][0],+_[1][1],+_[1][2],+k[1]],[+_[2][0],+_[2][1],+_[2][2],+k[2]],[+_[3][0],+_[3][1],+_[3][2],+k[3]]]),A(_)]}}function x(A){return function(_,k){return[A([[+k[0],+_[0][1],+_[0][2],+_[0][3],+_[0][4]],[+k[1],+_[1][1],+_[1][2],+_[1][3],+_[1][4]],[+k[2],+_[2][1],+_[2][2],+_[2][3],+_[2][4]],[+k[3],+_[3][1],+_[3][2],+_[3][3],+_[3][4]],[+k[4],+_[4][1],+_[4][2],+_[4][3],+_[4][4]]]),A([[+_[0][0],+k[0],+_[0][2],+_[0][3],+_[0][4]],[+_[1][0],+k[1],+_[1][2],+_[1][3],+_[1][4]],[+_[2][0],+k[2],+_[2][2],+_[2][3],+_[2][4]],[+_[3][0],+k[3],+_[3][2],+_[3][3],+_[3][4]],[+_[4][0],+k[4],+_[4][2],+_[4][3],+_[4][4]]]),A([[+_[0][0],+_[0][1],+k[0],+_[0][3],+_[0][4]],[+_[1][0],+_[1][1],+k[1],+_[1][3],+_[1][4]],[+_[2][0],+_[2][1],+k[2],+_[2][3],+_[2][4]],[+_[3][0],+_[3][1],+k[3],+_[3][3],+_[3][4]],[+_[4][0],+_[4][1],+k[4],+_[4][3],+_[4][4]]]),A([[+_[0][0],+_[0][1],+_[0][2],+k[0],+_[0][4]],[+_[1][0],+_[1][1],+_[1][2],+k[1],+_[1][4]],[+_[2][0],+_[2][1],+_[2][2],+k[2],+_[2][4]],[+_[3][0],+_[3][1],+_[3][2],+k[3],+_[3][4]],[+_[4][0],+_[4][1],+_[4][2],+k[4],+_[4][4]]]),A([[+_[0][0],+_[0][1],+_[0][2],+_[0][3],+k[0]],[+_[1][0],+_[1][1],+_[1][2],+_[1][3],+k[1]],[+_[2][0],+_[2][1],+_[2][2],+_[2][3],+k[2]],[+_[3][0],+_[3][1],+_[3][2],+_[3][3],+k[3]],[+_[4][0],+_[4][1],+_[4][2],+_[4][3],+k[4]]]),A(_)]}}function b(A){return function(_,k){return[A([[+k[0],+_[0][1],+_[0][2],+_[0][3],+_[0][4],+_[0][5]],[+k[1],+_[1][1],+_[1][2],+_[1][3],+_[1][4],+_[1][5]],[+k[2],+_[2][1],+_[2][2],+_[2][3],+_[2][4],+_[2][5]],[+k[3],+_[3][1],+_[3][2],+_[3][3],+_[3][4],+_[3][5]],[+k[4],+_[4][1],+_[4][2],+_[4][3],+_[4][4],+_[4][5]],[+k[5],+_[5][1],+_[5][2],+_[5][3],+_[5][4],+_[5][5]]]),A([[+_[0][0],+k[0],+_[0][2],+_[0][3],+_[0][4],+_[0][5]],[+_[1][0],+k[1],+_[1][2],+_[1][3],+_[1][4],+_[1][5]],[+_[2][0],+k[2],+_[2][2],+_[2][3],+_[2][4],+_[2][5]],[+_[3][0],+k[3],+_[3][2],+_[3][3],+_[3][4],+_[3][5]],[+_[4][0],+k[4],+_[4][2],+_[4][3],+_[4][4],+_[4][5]],[+_[5][0],+k[5],+_[5][2],+_[5][3],+_[5][4],+_[5][5]]]),A([[+_[0][0],+_[0][1],+k[0],+_[0][3],+_[0][4],+_[0][5]],[+_[1][0],+_[1][1],+k[1],+_[1][3],+_[1][4],+_[1][5]],[+_[2][0],+_[2][1],+k[2],+_[2][3],+_[2][4],+_[2][5]],[+_[3][0],+_[3][1],+k[3],+_[3][3],+_[3][4],+_[3][5]],[+_[4][0],+_[4][1],+k[4],+_[4][3],+_[4][4],+_[4][5]],[+_[5][0],+_[5][1],+k[5],+_[5][3],+_[5][4],+_[5][5]]]),A([[+_[0][0],+_[0][1],+_[0][2],+k[0],+_[0][4],+_[0][5]],[+_[1][0],+_[1][1],+_[1][2],+k[1],+_[1][4],+_[1][5]],[+_[2][0],+_[2][1],+_[2][2],+k[2],+_[2][4],+_[2][5]],[+_[3][0],+_[3][1],+_[3][2],+k[3],+_[3][4],+_[3][5]],[+_[4][0],+_[4][1],+_[4][2],+k[4],+_[4][4],+_[4][5]],[+_[5][0],+_[5][1],+_[5][2],+k[5],+_[5][4],+_[5][5]]]),A([[+_[0][0],+_[0][1],+_[0][2],+_[0][3],+k[0],+_[0][5]],[+_[1][0],+_[1][1],+_[1][2],+_[1][3],+k[1],+_[1][5]],[+_[2][0],+_[2][1],+_[2][2],+_[2][3],+k[2],+_[2][5]],[+_[3][0],+_[3][1],+_[3][2],+_[3][3],+k[3],+_[3][5]],[+_[4][0],+_[4][1],+_[4][2],+_[4][3],+k[4],+_[4][5]],[+_[5][0],+_[5][1],+_[5][2],+_[5][3],+k[5],+_[5][5]]]),A([[+_[0][0],+_[0][1],+_[0][2],+_[0][3],+_[0][4],+k[0]],[+_[1][0],+_[1][1],+_[1][2],+_[1][3],+_[1][4],+k[1]],[+_[2][0],+_[2][1],+_[2][2],+_[2][3],+_[2][4],+k[2]],[+_[3][0],+_[3][1],+_[3][2],+_[3][3],+_[3][4],+k[3]],[+_[4][0],+_[4][1],+_[4][2],+_[4][3],+_[4][4],+k[4]],[+_[5][0],+_[5][1],+_[5][2],+_[5][3],+_[5][4],+k[5]]]),A(_)]}}var p=[c,f];function C(A,L,_,k,M,g,P,T){return function(O,V){switch(O.length){case 0:return A(O,V);case 1:return L(O,V);case 2:return _(O,V);case 3:return k(O,V);case 4:return M(O,V);case 5:return g(O,V)}var G=P[O.length];return G||(G=P[O.length]=T(O.length)),G(O,V)}}function E(){for(;p.length<l;)p.push(u(p.length));i.exports=C.apply(void 0,p.concat([p,u]));for(var A=0;A<l;++A)i.exports[A]=p[A]}E()},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,z){return function(V,G,Z){var H=g(g(P(G[1],Z[0]),P(-Z[1],G[0])),g(P(V[1],G[0]),P(-G[1],V[0]))),N=g(P(V[1],Z[0]),P(-Z[1],V[0])),j=z(H,N);return j[j.length-1]}}function b(g,P,T,z){return function(V,G,Z,H){var N=g(g(T(g(P(Z[1],H[0]),P(-H[1],Z[0])),G[2]),g(T(g(P(G[1],H[0]),P(-H[1],G[0])),-Z[2]),T(g(P(G[1],Z[0]),P(-Z[1],G[0])),H[2]))),g(T(g(P(G[1],H[0]),P(-H[1],G[0])),V[2]),g(T(g(P(V[1],H[0]),P(-H[1],V[0])),-G[2]),T(g(P(V[1],G[0]),P(-G[1],V[0])),H[2])))),j=g(g(T(g(P(Z[1],H[0]),P(-H[1],Z[0])),V[2]),g(T(g(P(V[1],H[0]),P(-H[1],V[0])),-Z[2]),T(g(P(V[1],Z[0]),P(-Z[1],V[0])),H[2]))),g(T(g(P(G[1],Z[0]),P(-Z[1],G[0])),V[2]),g(T(g(P(V[1],Z[0]),P(-Z[1],V[0])),-G[2]),T(g(P(V[1],G[0]),P(-G[1],V[0])),Z[2])))),re=z(N,j);return re[re.length-1]}}function p(g,P,T,z){return function(V,G,Z,H,N){var j=g(g(g(T(g(T(g(P(H[1],N[0]),P(-N[1],H[0])),Z[2]),g(T(g(P(Z[1],N[0]),P(-N[1],Z[0])),-H[2]),T(g(P(Z[1],H[0]),P(-H[1],Z[0])),N[2]))),G[3]),g(T(g(T(g(P(H[1],N[0]),P(-N[1],H[0])),G[2]),g(T(g(P(G[1],N[0]),P(-N[1],G[0])),-H[2]),T(g(P(G[1],H[0]),P(-H[1],G[0])),N[2]))),-Z[3]),T(g(T(g(P(Z[1],N[0]),P(-N[1],Z[0])),G[2]),g(T(g(P(G[1],N[0]),P(-N[1],G[0])),-Z[2]),T(g(P(G[1],Z[0]),P(-Z[1],G[0])),N[2]))),H[3]))),g(T(g(T(g(P(Z[1],H[0]),P(-H[1],Z[0])),G[2]),g(T(g(P(G[1],H[0]),P(-H[1],G[0])),-Z[2]),T(g(P(G[1],Z[0]),P(-Z[1],G[0])),H[2]))),-N[3]),g(T(g(T(g(P(H[1],N[0]),P(-N[1],H[0])),G[2]),g(T(g(P(G[1],N[0]),P(-N[1],G[0])),-H[2]),T(g(P(G[1],H[0]),P(-H[1],G[0])),N[2]))),V[3]),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(g(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(T(g(T(g(P(G[1],H[0]),P(-H[1],G[0])),V[2]),g(T(g(P(V[1],H[0]),P(-H[1],V[0])),-G[2]),T(g(P(V[1],G[0]),P(-G[1],V[0])),H[2]))),-N[3]),T(g(T(g(P(Z[1],H[0]),P(-H[1],Z[0])),G[2]),g(T(g(P(G[1],H[0]),P(-H[1],G[0])),-Z[2]),T(g(P(G[1],Z[0]),P(-Z[1],G[0])),H[2]))),V[3]))),g(T(g(T(g(P(Z[1],H[0]),P(-H[1],Z[0])),V[2]),g(T(g(P(V[1],H[0]),P(-H[1],V[0])),-Z[2]),T(g(P(V[1],Z[0]),P(-Z[1],V[0])),H[2]))),-G[3]),g(T(g(T(g(P(G[1],H[0]),P(-H[1],G[0])),V[2]),g(T(g(P(V[1],H[0]),P(-H[1],V[0])),-G[2]),T(g(P(V[1],G[0]),P(-G[1],V[0])),H[2]))),Z[3]),T(g(T(g(P(G[1],Z[0]),P(-Z[1],G[0])),V[2]),g(T(g(P(V[1],Z[0]),P(-Z[1],V[0])),-G[2]),T(g(P(V[1],G[0]),P(-G[1],V[0])),Z[2]))),-H[3]))))),re=g(g(g(T(g(T(g(P(H[1],N[0]),P(-N[1],H[0])),Z[2]),g(T(g(P(Z[1],N[0]),P(-N[1],Z[0])),-H[2]),T(g(P(Z[1],H[0]),P(-H[1],Z[0])),N[2]))),V[3]),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]))),-Z[3])),g(T(g(T(g(P(Z[1],N[0]),P(-N[1],Z[0])),V[2]),g(T(g(P(V[1],N[0]),P(-N[1],V[0])),-Z[2]),T(g(P(V[1],Z[0]),P(-Z[1],V[0])),N[2]))),H[3]),T(g(T(g(P(Z[1],H[0]),P(-H[1],Z[0])),V[2]),g(T(g(P(V[1],H[0]),P(-H[1],V[0])),-Z[2]),T(g(P(V[1],Z[0]),P(-Z[1],V[0])),H[2]))),-N[3]))),g(g(T(g(T(g(P(Z[1],N[0]),P(-N[1],Z[0])),G[2]),g(T(g(P(G[1],N[0]),P(-N[1],G[0])),-Z[2]),T(g(P(G[1],Z[0]),P(-Z[1],G[0])),N[2]))),V[3]),T(g(T(g(P(Z[1],N[0]),P(-N[1],Z[0])),V[2]),g(T(g(P(V[1],N[0]),P(-N[1],V[0])),-Z[2]),T(g(P(V[1],Z[0]),P(-Z[1],V[0])),N[2]))),-G[3])),g(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]))),Z[3]),T(g(T(g(P(G[1],Z[0]),P(-Z[1],G[0])),V[2]),g(T(g(P(V[1],Z[0]),P(-Z[1],V[0])),-G[2]),T(g(P(V[1],G[0]),P(-G[1],V[0])),Z[2]))),-N[3])))),oe=z(j,re);return oe[oe.length-1]}}function C(g){var P=g===3?x:g===4?b:p;return P(l,s,u,c)}var E=C(3),A=C(4),L=[function(){return 0},function(){return 0},function(P,T){return T[0]-P[0]},function(P,T,z){var O=(P[1]-z[1])*(T[0]-z[0]),V=(P[0]-z[0])*(T[1]-z[1]),G=O-V,Z;if(O>0){if(V<=0)return G;Z=O+V}else if(O<0){if(V>=0)return G;Z=-(O+V)}else return G;var H=d*Z;return G>=H||G<=-H?G:E(P,T,z)},function(P,T,z,O){var V=P[0]-O[0],G=T[0]-O[0],Z=z[0]-O[0],H=P[1]-O[1],N=T[1]-O[1],j=z[1]-O[1],re=P[2]-O[2],oe=T[2]-O[2],_e=z[2]-O[2],Me=G*j,ke=Z*N,me=Z*H,ie=V*j,Se=V*N,Le=G*H,Ae=re*(Me-ke)+oe*(me-ie)+_e*(Se-Le),De=(Math.abs(Me)+Math.abs(ke))*Math.abs(re)+(Math.abs(me)+Math.abs(ie))*Math.abs(oe)+(Math.abs(Se)+Math.abs(Le))*Math.abs(_e),Pe=v*De;return Ae>Pe||-Ae>Pe?Ae:A(P,T,z,O)}];function _(g){var P=L[g.length];return P||(P=L[g.length]=C(g.length)),P.apply(void 0,g)}function k(g,P,T,z,O,V,G){return function(H,N,j,re,oe){switch(arguments.length){case 0:case 1:return 0;case 2:return z(H,N);case 3:return O(H,N,j);case 4:return V(H,N,j,re);case 5:return G(H,N,j,re,oe)}for(var _e=new Array(arguments.length),Me=0;Me<arguments.length;++Me)_e[Me]=arguments[Me];return g(_e)}}function M(){for(;L.length<=f;)L.push(C(L.length));i.exports=k.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 C=1;C<h;++C){s(c[C],f,b);var E=x[1];l(E,b[0],x),x[0]&&(v[p++]=x[0]);var A=b[1],L=x[1],_=A+L,k=_-A,M=L-k;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),C=Math.max(x,b),E=h[v],A=d[v],L=Math.min(E,A),_=Math.max(E,A);if(_<p||C<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],C=b(p),E=-l[x],A=b(E),L,_;C<A?(_=p,v+=1,v<u&&(p=s[v],C=b(p))):(_=E,x+=1,x<c&&(E=-l[x],A=b(E))),v<u&&C<A||x>=c?(L=p,v+=1,v<u&&(p=s[v],C=b(p))):(L=E,x+=1,x<c&&(E=-l[x],A=b(E)));for(var k=L+_,M=k-L,g=_-M,P=g,T=k,z,O,V,G,Z;v<u&&x<c;)C<A?(L=p,v+=1,v<u&&(p=s[v],C=b(p))):(L=E,x+=1,x<c&&(E=-l[x],A=b(E))),_=P,k=L+_,M=k-L,g=_-M,g&&(h[d++]=g),z=T+k,O=z-T,V=z-O,G=k-O,Z=T-V,P=Z+G,T=z;for(;v<u;)L=p,_=P,k=L+_,M=k-L,g=_-M,g&&(h[d++]=g),z=T+k,O=z-T,V=z-O,G=k-O,Z=T-V,P=Z+G,T=z,v+=1,v<u&&(p=s[v]);for(;x<c;)L=E,_=P,k=L+_,M=k-L,g=_-M,g&&(h[d++]=g),z=T+k,O=z-T,V=z-O,G=k-O,Z=T-V,P=Z+G,T=z,x+=1,x<c&&(E=-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],C=b(p),E=l[x],A=b(E),L,_;C<A?(_=p,v+=1,v<u&&(p=s[v],C=b(p))):(_=E,x+=1,x<c&&(E=l[x],A=b(E))),v<u&&C<A||x>=c?(L=p,v+=1,v<u&&(p=s[v],C=b(p))):(L=E,x+=1,x<c&&(E=l[x],A=b(E)));for(var k=L+_,M=k-L,g=_-M,P=g,T=k,z,O,V,G,Z;v<u&&x<c;)C<A?(L=p,v+=1,v<u&&(p=s[v],C=b(p))):(L=E,x+=1,x<c&&(E=l[x],A=b(E))),_=P,k=L+_,M=k-L,g=_-M,g&&(h[d++]=g),z=T+k,O=z-T,V=z-O,G=k-O,Z=T-V,P=Z+G,T=z;for(;v<u;)L=p,_=P,k=L+_,M=k-L,g=_-M,g&&(h[d++]=g),z=T+k,O=z-T,V=z-O,G=k-O,Z=T-V,P=Z+G,T=z,v+=1,v<u&&(p=s[v]);for(;x<c;)L=E,_=P,k=L+_,M=k-L,g=_-M,g&&(h[d++]=g),z=T+k,O=z-T,V=z-O,G=k-O,Z=T-V,P=Z+G,T=z,x+=1,x<c&&(E=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(C){for(var E=C.length,A=0,L=0;L<E;++L)A=Math.max(A,C[L].length)|0;return A-1}function h(C,E){for(var A=C.length,L=l.mallocUint8(A),_=0;_<A;++_)L[_]=C[_]<E|0;return L}function d(C,E){for(var A=C.length,L=E*(E+1)/2*A|0,_=l.mallocUint32(L*2),k=0,M=0;M<A;++M)for(var g=C[M],E=g.length,P=0;P<E;++P)for(var T=0;T<P;++T){var z=g[T],O=g[P];_[k++]=Math.min(z,O)|0,_[k++]=Math.max(z,O)|0}var V=k/2|0;u(s(_,[V,2]));for(var G=2,M=2;M<k;M+=2)_[M-2]===_[M]&&_[M-1]===_[M+1]||(_[G++]=_[M],_[G++]=_[M+1]);return s(_,[G/2|0,2])}function v(C,E,A,L){for(var _=C.data,k=C.shape[0],M=l.mallocDouble(k),g=0,P=0;P<k;++P){var T=_[2*P],z=_[2*P+1];if(A[T]!==A[z]){var O=E[T],V=E[z];_[2*g]=T,_[2*g+1]=z,M[g++]=(V-L)/(V-O)}}return C.shape[0]=g,s(M,[g])}function x(C,E){var A=l.mallocInt32(E*2),L=C.shape[0],_=C.data;A[0]=0;for(var k=0,M=0;M<L;++M){var g=_[2*M];if(g!==k){for(A[2*k+1]=M;++k<g;)A[2*k]=M,A[2*k+1]=M;A[2*k]=M}}for(A[2*k+1]=L;++k<E;)A[2*k]=A[2*k+1]=L;return A}function b(C){for(var E=C.shape[0]|0,A=C.data,L=new Array(E),_=0;_<E;++_)L[_]=[A[2*_],A[2*_+1]];return L}function p(C,E,A,L){A=A||0,typeof L=="undefined"&&(L=f(C));var _=C.length;if(_===0||L<1)return{cells:[],vertexIds:[],vertexWeights:[]};var k=h(E,+A),M=d(C,L),g=v(M,E,k,+A),P=x(M,E.length|0),T=c(L)(C,M.data,P,k),z=b(M),O=[].slice.call(g.data,0,g.shape[0]);return l.free(k),l.free(M.data),l.free(g.data),l.free(P),{cells:T,vertexIds:z,vertexWeights:O}}},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 C=b+p>>1,E=f[2*C+1];if(E===x)return C;x<E?p=C:b=C+1}return b}function u(c,f,h,d){for(var v=c.length,x=[],b=0;b<v;++b)var p=c[b],C=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 C=b+p>>1,E=f[2*C+1];if(E===x)return C;x<E?p=C:b=C+1}return b}function u(c,f,h,d){for(var v=c.length,x=[],b=0;b<v;++b){var p=c[b],C=p.length;if(C===2){var E=(d[p[0]]<<0)+(d[p[1]]<<1);if(E===0||E===3)continue;switch(E){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 C=b+p>>1,E=f[2*C+1];if(E===x)return C;x<E?p=C:b=C+1}return b}function u(c,f,h,d){for(var v=c.length,x=[],b=0;b<v;++b){var p=c[b],C=p.length;if(C===3){var E=(d[p[0]]<<0)+(d[p[1]]<<1)+(d[p[2]]<<2);if(E===0||E===7)continue;switch(E){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(C===2){var E=(d[p[0]]<<0)+(d[p[1]]<<1);if(E===0||E===3)continue;switch(E){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 C=b+p>>1,E=f[2*C+1];if(E===x)return C;x<E?p=C:b=C+1}return b}function u(c,f,h,d){for(var v=c.length,x=[],b=0;b<v;++b){var p=c[b],C=p.length;if(C===4){var E=(d[p[0]]<<0)+(d[p[1]]<<1)+(d[p[2]]<<2)+(d[p[3]]<<3);if(E===0||E===15)continue;switch(E){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(C===3){var E=(d[p[0]]<<0)+(d[p[1]]<<1)+(d[p[2]]<<2);if(E===0||E===7)continue;switch(E){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(C===2){var E=(d[p[0]]<<0)+(d[p[1]]<<1);if(E===0||E===3)continue;switch(E){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,z=Math.max,O=0,V=P.length;O<V;++O)T=z(T,P[O].length);return T-1}s=c;function f(P){for(var T=-1,z=Math.max,O=0,V=P.length;O<V;++O)for(var G=P[O],Z=0,H=G.length;Z<H;++Z)T=z(T,G[Z]);return T+1}s=f;function h(P){for(var T=new Array(P.length),z=0,O=P.length;z<O;++z)T[z]=P[z].slice(0);return T}s=h;function d(P,T){var z=P.length,O=P.length-T.length,V=Math.min;if(O)return O;switch(z){case 0:return 0;case 1:return P[0]-T[0];case 2:var j=P[0]+P[1]-T[0]-T[1];return j||V(P[0],P[1])-V(T[0],T[1]);case 3:var G=P[0]+P[1],Z=T[0]+T[1];if(j=G+P[2]-(Z+T[2]),j)return j;var H=V(P[0],P[1]),N=V(T[0],T[1]),j=V(H,P[2])-V(N,T[2]);return j||V(H+P[2],G)-V(N+T[2],Z);default:var re=P.slice(0);re.sort();var oe=T.slice(0);oe.sort();for(var _e=0;_e<z;++_e)if(O=re[_e]-oe[_e],O)return O;return 0}}a.Fw=d;function v(P,T){return d(P[0],T[0])}function x(P,T){if(T){for(var z=P.length,O=new Array(z),V=0;V<z;++V)O[V]=[P[V],T[V]];O.sort(v);for(var V=0;V<z;++V)P[V]=O[V][0],T[V]=O[V][1];return P}else return P.sort(d),P}s=x;function b(P){if(P.length===0)return[];for(var T=1,z=P.length,O=1;O<z;++O){var V=P[O];if(d(V,P[O-1])){if(O===T){T++;continue}P[T++]=V}}return P.length=T,P}s=b;function p(P,T){for(var z=0,O=P.length-1,V=-1;z<=O;){var G=z+O>>1,Z=d(P[G],T);Z<=0?(Z===0&&(V=G),z=G+1):Z>0&&(O=G-1)}return V}s=p;function C(P,T){for(var z=new Array(P.length),O=0,V=z.length;O<V;++O)z[O]=[];for(var G=[],O=0,Z=T.length;O<Z;++O)for(var H=T[O],N=H.length,j=1,re=1<<N;j<re;++j){G.length=l.popCount(j);for(var oe=0,_e=0;_e<N;++_e)j&1<<_e&&(G[oe++]=H[_e]);var Me=p(P,G);if(!(Me<0))for(;z[Me++].push(O),!(Me>=P.length||d(P[Me],G)!==0););}return z}s=C;function E(P,T){if(!T)return C(b(L(P,0)),P,0);for(var z=new Array(T),O=0;O<T;++O)z[O]=[];for(var O=0,V=P.length;O<V;++O)for(var G=P[O],Z=0,H=G.length;Z<H;++Z)z[G[Z]].push(O);return z}s=E;function A(P){for(var T=[],z=0,O=P.length;z<O;++z)for(var V=P[z],G=V.length|0,Z=1,H=1<<G;Z<H;++Z){for(var N=[],j=0;j<G;++j)Z>>>j&1&&N.push(V[j]);T.push(N)}return x(T)}s=A;function L(P,T){if(T<0)return[];for(var z=[],O=(1<<T+1)-1,V=0;V<P.length;++V)for(var G=P[V],Z=O;Z<1<<G.length;Z=l.nextCombination(Z)){for(var H=new Array(T+1),N=0,j=0;j<G.length;++j)Z&1<<j&&(H[N++]=G[j]);z.push(H)}return x(z)}s=L;function _(P){for(var T=[],z=0,O=P.length;z<O;++z)for(var V=P[z],G=0,Z=V.length;G<Z;++G){for(var H=new Array(V.length-1),N=0,j=0;N<Z;++N)N!==G&&(H[j++]=V[N]);T.push(H)}return x(T)}s=_;function k(P,T){for(var z=new u(T),O=0;O<P.length;++O)for(var V=P[O],G=0;G<V.length;++G)for(var Z=G+1;Z<V.length;++Z)z.link(V[G],V[Z]);for(var H=[],N=z.ranks,O=0;O<N.length;++O)N[O]=-1;for(var O=0;O<P.length;++O){var j=z.find(P[O][0]);N[j]<0?(N[j]=H.length,H.push([P[O].slice(0)])):H[N[j]].push(P[O].slice(0))}return H}function M(P){for(var T=b(x(L(P,0))),z=new u(T.length),O=0;O<P.length;++O)for(var V=P[O],G=0;G<V.length;++G)for(var Z=p(T,[V[G]]),H=G+1;H<V.length;++H)z.link(Z,p(T,[V[H]]));for(var N=[],j=z.ranks,O=0;O<j.length;++O)j[O]=-1;for(var O=0;O<P.length;++O){var re=z.find(p(T,[P[O][0]]));j[re]<0?(j[re]=N.length,N.push([P[O].slice(0)])):N[j[re]].push(P[O].slice(0))}return N}function g(P,T){return T?k(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,z=0,O=g.length;z<O;++z)P=T(P,g[z].length);return P-1}a.dimension=u;function c(g){for(var P=-1,T=Math.max,z=0,O=g.length;z<O;++z)for(var V=g[z],G=0,Z=V.length;G<Z;++G)P=T(P,V[G]);return P+1}a.countVertices=c;function f(g){for(var P=new Array(g.length),T=0,z=g.length;T<z;++T)P[T]=g[T].slice(0);return P}a.cloneCells=f;function h(g,P){var T=g.length,z=g.length-P.length,O=Math.min;if(z)return z;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||O(g[0],g[1])-O(P[0],P[1]);case 3:var V=g[0]+g[1],G=P[0]+P[1];if(N=V+g[2]-(G+P[2]),N)return N;var Z=O(g[0],g[1]),H=O(P[0],P[1]),N=O(Z,g[2])-O(H,P[2]);return N||O(Z+g[2],V)-O(H+P[2],G);default:var j=g.slice(0);j.sort();var re=P.slice(0);re.sort();for(var oe=0;oe<T;++oe)if(z=j[oe]-re[oe],z)return z;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,z=new Array(T),O=0;O<T;++O)z[O]=[g[O],P[O]];z.sort(d);for(var O=0;O<T;++O)g[O]=z[O][0],P[O]=z[O][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,z=1;z<T;++z){var O=g[z];if(h(O,g[z-1])){if(z===P){P++;continue}g[P++]=O}}return g.length=P,g}a.unique=x;function b(g,P){for(var T=0,z=g.length-1,O=-1;T<=z;){var V=T+z>>1,G=h(g[V],P);G<=0?(G===0&&(O=V),T=V+1):G>0&&(z=V-1)}return O}a.findCell=b;function p(g,P){for(var T=new Array(g.length),z=0,O=T.length;z<O;++z)T[z]=[];for(var V=[],z=0,G=P.length;z<G;++z)for(var Z=P[z],H=Z.length,N=1,j=1<<H;N<j;++N){V.length=s.popCount(N);for(var re=0,oe=0;oe<H;++oe)N&1<<oe&&(V[re++]=Z[oe]);var _e=b(g,V);if(!(_e<0))for(;T[_e++].push(z),!(_e>=g.length||h(g[_e],V)!==0););}return T}a.incidence=p;function C(g,P){if(!P)return p(x(A(g,0)),g,0);for(var T=new Array(P),z=0;z<P;++z)T[z]=[];for(var z=0,O=g.length;z<O;++z)for(var V=g[z],G=0,Z=V.length;G<Z;++G)T[V[G]].push(z);return T}a.dual=C;function E(g){for(var P=[],T=0,z=g.length;T<z;++T)for(var O=g[T],V=O.length|0,G=1,Z=1<<V;G<Z;++G){for(var H=[],N=0;N<V;++N)G>>>N&1&&H.push(O[N]);P.push(H)}return v(P)}a.explode=E;function A(g,P){if(P<0)return[];for(var T=[],z=(1<<P+1)-1,O=0;O<g.length;++O)for(var V=g[O],G=z;G<1<<V.length;G=s.nextCombination(G)){for(var Z=new Array(P+1),H=0,N=0;N<V.length;++N)G&1<<N&&(Z[H++]=V[N]);T.push(Z)}return v(T)}a.skeleton=A;function L(g){for(var P=[],T=0,z=g.length;T<z;++T)for(var O=g[T],V=0,G=O.length;V<G;++V){for(var Z=new Array(O.length-1),H=0,N=0;H<G;++H)H!==V&&(Z[N++]=O[H]);P.push(Z)}return v(P)}a.boundary=L;function _(g,P){for(var T=new l(P),z=0;z<g.length;++z)for(var O=g[z],V=0;V<O.length;++V)for(var G=V+1;G<O.length;++G)T.link(O[V],O[G]);for(var Z=[],H=T.ranks,z=0;z<H.length;++z)H[z]=-1;for(var z=0;z<g.length;++z){var N=T.find(g[z][0]);H[N]<0?(H[N]=Z.length,Z.push([g[z].slice(0)])):Z[H[N]].push(g[z].slice(0))}return Z}function k(g){for(var P=x(v(A(g,0))),T=new l(P.length),z=0;z<g.length;++z)for(var O=g[z],V=0;V<O.length;++V)for(var G=b(P,[O[V]]),Z=V+1;Z<O.length;++Z)T.link(G,b(P,[O[Z]]));for(var H=[],N=T.ranks,z=0;z<N.length;++z)N[z]=-1;for(var z=0;z<g.length;++z){var j=T.find(b(P,[g[z][0]]));N[j]<0?(N[j]=H.length,H.push([g[z].slice(0)])):H[N[j]].push(g[z].slice(0))}return H}function M(g,P){return P?_(g,P):k(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),C=new Array(v),E=new Array(v),A=0;A<v;++A)b[A]=p[A]=-1,C[A]=1/0,E[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],k=L[0];p[k]!==-1?p[k]=-2:p[k]=_,b[_]!==-1?b[_]=-2:b[_]=k}function M(ie){if(E[ie])return 1/0;var Se=b[ie],Le=p[ie];return Se<0||Le<0?1/0:u(h[ie],h[Se],h[Le])}function g(ie,Se){var Le=H[ie],Ae=H[Se];H[ie]=Ae,H[Se]=Le,N[Le]=Se,N[Ae]=ie}function P(ie){return C[H[ie]]}function T(ie){return ie&1?ie-1>>1:(ie>>1)-1}function z(ie){for(var Se=P(ie);;){var Le=Se,Ae=2*ie+1,De=2*(ie+1),Pe=ie;if(Ae<re){var ge=P(Ae);ge<Le&&(Pe=Ae,Le=ge)}if(De<re){var Fe=P(De);Fe<Le&&(Pe=De)}if(Pe===ie)return ie;g(ie,Pe),ie=Pe}}function O(ie){for(var Se=P(ie);ie>0;){var Le=T(ie);if(Le>=0){var Ae=P(Le);if(Se<Ae){g(ie,Le),ie=Le;continue}}return ie}}function V(){if(re>0){var ie=H[0];return g(0,re-1),re-=1,z(0),ie}return-1}function G(ie,Se){var Le=H[ie];return C[Le]===Se?ie:(C[Le]=-1/0,O(ie),V(),C[Le]=Se,re+=1,O(re-1))}function Z(ie){if(!E[ie]){E[ie]=!0;var Se=b[ie],Le=p[ie];b[Le]>=0&&(b[Le]=Se),p[Se]>=0&&(p[Se]=Le),N[Se]>=0&&G(N[Se],M(Se)),N[Le]>=0&&G(N[Le],M(Le))}}for(var H=[],N=new Array(v),A=0;A<v;++A){var j=C[A]=M(A);j<1/0?(N[A]=H.length,H.push(A)):N[A]=-1}for(var re=H.length,A=re>>1;A>=0;--A)z(A);for(;;){var oe=V();if(oe<0||C[oe]>d)break;Z(oe)}for(var _e=[],A=0;A<v;++A)E[A]||(N[A]=_e.length,_e.push(h[A].slice()));var Me=_e.length;function ke(ie,Se){if(ie[Se]<0)return Se;var Le=Se,Ae=Se;do{var De=ie[Ae];if(!E[Ae]||De<0||De===Ae||(Ae=De,De=ie[Ae],!E[Ae]||De<0||De===Ae))break;Ae=De,Le=ie[Le]}while(Le!==Ae);for(var Pe=Se;Pe!==Ae;Pe=ie[Pe])ie[Pe]=Ae;return Ae}var me=[];return f.forEach(function(ie){var Se=ke(b,ie[0]),Le=ke(p,ie[1]);if(Se>=0&&Le>=0&&Se!==Le){var Ae=N[Se],De=N[Le];Ae!==De&&me.push([Ae,De])}}),l.unique(l.normalize(me)),{positions:_e,edges:me}}},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 C,E;c[0][1]<c[1][1]?(C=c[0],E=c[1]):(C=c[1],E=c[0]);var A=s(d,h,C);return A||(A=s(d,h,E),A)?A:E-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(C,E,A){this.slabs=C,this.coordinates=E,this.horizontal=A}var h=f.prototype;function d(C,E){return C.y-E}function v(C,E){for(var A=null;C;){var L=C.key,_,k;L[0][0]<L[1][0]?(_=L[0],k=L[1]):(_=L[1],k=L[0]);var M=u(_,k,E);if(M<0)C=C.left;else if(M>0)if(E[0]!==L[1][0])A=C,C=C.right;else{var g=v(C.right,E);if(g)return g;C=C.left}else{if(E[0]!==L[1][0])return C;var g=v(C.right,E);if(g)return g;C=C.left}}return A}h.castUp=function(C){var E=s.le(this.coordinates,C[0]);if(E<0)return-1;var A=this.slabs[E],L=v(this.slabs[E],C),_=-1;if(L&&(_=L.value),this.coordinates[E]===C[0]){var k=null;if(L&&(k=L.key),E>0){var M=v(this.slabs[E-1],C);M&&(k?c(M.key,k)>0&&(k=M.key,_=M.value):(_=M.value,k=M.key))}var g=this.horizontal[E];if(g.length>0){var P=s.ge(g,C[1],d);if(P<g.length){var T=g[P];if(C[1]===T.y){if(T.closed)return T.index;for(;P<g.length-1&&g[P+1].y===C[1];)if(P=P+1,T=g[P],T.closed)return T.index;if(T.y===C[1]&&!T.start){if(P=P+1,P>=g.length)return _;T=g[P]}}if(T.start)if(k){var z=u(k[0],k[1],[C[0],T.y]);k[0][0]>k[1][0]&&(z=-z),z>0&&(_=T.index)}else _=T.index;else T.y!==C[1]&&(_=T.index)}}}return _};function x(C,E,A,L){this.y=C,this.index=E,this.start=A,this.closed=L}function b(C,E,A,L){this.x=C,this.segment=E,this.create=A,this.index=L}function p(C){for(var E=C.length,A=2*E,L=new Array(A),_=0;_<E;++_){var k=C[_],M=k[0][0]<k[1][0];L[2*_]=new b(k[0][0],k,M,_),L[2*_+1]=new b(k[1][0],k,!M,_)}L.sort(function(H,N){var j=H.x-N.x;return j||(j=H.create-N.create,j)?j:Math.min(H.segment[0][1],H.segment[1][1])-Math.min(N.segment[0][1],N.segment[1][1])});for(var g=l(c),P=[],T=[],z=[],O=-1/0,_=0;_<A;){for(var V=L[_].x,G=[];_<A;){var Z=L[_];if(Z.x!==V)break;_+=1,Z.segment[0][0]===Z.x&&Z.segment[1][0]===Z.x?Z.create&&(Z.segment[0][1]<Z.segment[1][1]?(G.push(new x(Z.segment[0][1],Z.index,!0,!0)),G.push(new x(Z.segment[1][1],Z.index,!1,!1))):(G.push(new x(Z.segment[1][1],Z.index,!0,!1)),G.push(new x(Z.segment[0][1],Z.index,!1,!0)))):Z.create?g=g.insert(Z.segment,Z.index):g=g.remove(Z.segment)}P.push(g.root),T.push(V),z.push(G)}return new f(P,T,z)}},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 C=p-x,E=-x/C;E<0?E=0:E>1&&(E=1);for(var A=1-E,L=v.length,_=new Array(L),k=0;k<L;++k)_[k]=E*v[k]+A*b[k];return _}function f(v,x){for(var b=[],p=[],C=u(v[v.length-1],x),E=v[v.length-1],A=v[0],L=0;L<v.length;++L,E=A){A=v[L];var _=u(A,x);if(C<0&&_>0||C>0&&_<0){var k=c(E,_,A,C);b.push(k),p.push(k.slice())}_<0?p.push(A.slice()):_>0?b.push(A.slice()):(b.push(A.slice()),p.push(A.slice())),C=_}return{positive:b,negative:p}}function h(v,x){for(var b=[],p=u(v[v.length-1],x),C=v[v.length-1],E=v[0],A=0;A<v.length;++A,C=E){E=v[A];var L=u(E,x);(p<0&&L>0||p>0&&L<0)&&b.push(c(C,L,E,p)),L>=0&&b.push(E.slice()),p=L}return b}function d(v,x){for(var b=[],p=u(v[v.length-1],x),C=v[v.length-1],E=v[0],A=0;A<v.length;++A,C=E){E=v[A];var L=u(E,x);(p<0&&L>0||p>0&&L<0)&&b.push(c(C,L,E,p)),L<=0&&b.push(E.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,C,E="",A,L,_,k,M,g,P,T;for(A=0;A<p;A++)if(typeof v[A]=="string")E+=v[A];else if(typeof v[A]=="object"){if(_=v[A],_.keys)for(C=x[b],L=0;L<_.keys.length;L++){if(C==null)throw new Error(u('[sprintf] Cannot access property "%s" of undefined value "%s"',_.keys[L],_.keys[L-1]));C=C[_.keys[L]]}else _.param_no?C=x[_.param_no]:C=x[b++];if(l.not_type.test(_.type)&&l.not_primitive.test(_.type)&&C instanceof Function&&(C=C()),l.numeric_arg.test(_.type)&&typeof C!="number"&&isNaN(C))throw new TypeError(u("[sprintf] expecting number but found %T",C));switch(l.number.test(_.type)&&(P=C>=0),_.type){case"b":C=parseInt(C,10).toString(2);break;case"c":C=String.fromCharCode(parseInt(C,10));break;case"d":case"i":C=parseInt(C,10);break;case"j":C=JSON.stringify(C,null,_.width?parseInt(_.width):0);break;case"e":C=_.precision?parseFloat(C).toExponential(_.precision):parseFloat(C).toExponential();break;case"f":C=_.precision?parseFloat(C).toFixed(_.precision):parseFloat(C);break;case"g":C=_.precision?String(Number(C.toPrecision(_.precision))):parseFloat(C);break;case"o":C=(parseInt(C,10)>>>0).toString(8);break;case"s":C=String(C),C=_.precision?C.substring(0,_.precision):C;break;case"t":C=String(!!C),C=_.precision?C.substring(0,_.precision):C;break;case"T":C=Object.prototype.toString.call(C).slice(8,-1).toLowerCase(),C=_.precision?C.substring(0,_.precision):C;break;case"u":C=parseInt(C,10)>>>0;break;case"v":C=C.valueOf(),C=_.precision?C.substring(0,_.precision):C;break;case"x":C=(parseInt(C,10)>>>0).toString(16);break;case"X":C=(parseInt(C,10)>>>0).toString(16).toUpperCase();break}l.json.test(_.type)?E+=C:(l.number.test(_.type)&&(!P||_.sign)?(T=P?"+":"-",C=C.toString().replace(l.sign,"")):T="",M=_.pad_char?_.pad_char==="0"?"0":_.pad_char.charAt(1):" ",g=_.width-(T+C).length,k=_.width&&g>0?M.repeat(g):"",E+=_.align?T+C+k:M==="0"?T+k+C:k+T+C)}return E}var h=Object.create(null);function d(v){if(h[v])return h[v];for(var x=v,b,p=[],C=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]){C|=1;var E=[],A=b[2],L=[];if((L=l.key.exec(A))!==null)for(E.push(L[1]);(A=A.substring(L[0].length))!=="";)if((L=l.key_access.exec(A))!==null)E.push(L[1]);else if((L=l.index_access.exec(A))!==null)E.push(L[1]);else throw new SyntaxError("[sprintf] failed to parse named argument key");else throw new SyntaxError("[sprintf] failed to parse named argument key");b[2]=E}else C|=2;if(C===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(E,A,L,_){return E>_|0},vertex:function(E,A,L,_,k,M,g,P,T,z,O,V,G){var Z=(g<<0)+(P<<1)+(T<<2)+(z<<3)|0;if(!(Z===0||Z===15))switch(Z){case 0:O.push([E-.5,A-.5]);break;case 1:O.push([E-.25-.25*(_+L-2*G)/(L-_),A-.25-.25*(k+L-2*G)/(L-k)]);break;case 2:O.push([E-.75-.25*(-_-L+2*G)/(_-L),A-.25-.25*(M+_-2*G)/(_-M)]);break;case 3:O.push([E-.5,A-.5-.5*(k+L+M+_-4*G)/(L-k+_-M)]);break;case 4:O.push([E-.25-.25*(M+k-2*G)/(k-M),A-.75-.25*(-k-L+2*G)/(k-L)]);break;case 5:O.push([E-.5-.5*(_+L+M+k-4*G)/(L-_+k-M),A-.5]);break;case 6:O.push([E-.5-.25*(-_-L+M+k)/(_-L+k-M),A-.5-.25*(-k-L+M+_)/(k-L+_-M)]);break;case 7:O.push([E-.75-.25*(M+k-2*G)/(k-M),A-.75-.25*(M+_-2*G)/(_-M)]);break;case 8:O.push([E-.75-.25*(-M-k+2*G)/(M-k),A-.75-.25*(-M-_+2*G)/(M-_)]);break;case 9:O.push([E-.5-.25*(_+L+-M-k)/(L-_+M-k),A-.5-.25*(k+L+-M-_)/(L-k+M-_)]);break;case 10:O.push([E-.5-.5*(-_-L+-M-k+4*G)/(_-L+M-k),A-.5]);break;case 11:O.push([E-.25-.25*(-M-k+2*G)/(M-k),A-.75-.25*(k+L-2*G)/(L-k)]);break;case 12:O.push([E-.5,A-.5-.5*(-k-L+-M-_+4*G)/(k-L+M-_)]);break;case 13:O.push([E-.75-.25*(_+L-2*G)/(L-_),A-.25-.25*(-M-_+2*G)/(M-_)]);break;case 14:O.push([E-.25-.25*(-_-L+2*G)/(_-L),A-.25-.25*(-k-L+2*G)/(k-L)]);break;case 15:O.push([E-.5,A-.5]);break}},cell:function(E,A,L,_,k,M,g,P,T){k?P.push([E,A]):P.push([A,E])}});return function(C,E){var A=[],L=[];return p(C,A,L,E),{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,C=new Array(p),E=new Array(p),A=0;A<p;++A)C[A]=[b[A]],E[A]=[A];return{positions:C,cells:E}}var h={};function d(v,C){if(v.dimension<=0)return{positions:[],cells:[]};if(v.dimension===1)return f(v,C);var b=v.order.join()+"-"+v.dtype,p=h[b],C=+C||0;return p||(p=h[b]=c(v.order,v.dtype)),p(v,C)}},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=E;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]),k=Math.abs(A[2]),M=[0,0,0];L>Math.max(_,k)?M[2]=1:_>Math.max(L,k)?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,_,k,M,g,P,T){this.center=s(_),this.up=s(k),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 z=0;z<16;++z)this.computedMatrix[z]=.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,k=0,M=0,g=0;g<3;++g)M+=L[g]*_[g],k+=L[g]*L[g];for(var P=Math.sqrt(k),T=0,g=0;g<3;++g)_[g]-=L[g]*M/k,T+=_[g]*_[g],L[g]/=P;for(var z=Math.sqrt(T),g=0;g<3;++g)_[g]/=z;var O=this.computedToward;c(O,L,_),f(O,O);for(var V=Math.exp(this.computedRadius[0]),G=this.computedAngle[0],Z=this.computedAngle[1],H=Math.cos(G),N=Math.sin(G),j=Math.cos(Z),re=Math.sin(Z),oe=this.computedCenter,_e=H*j,Me=N*j,ke=re,me=-H*re,ie=-N*re,Se=j,Le=this.computedEye,Ae=this.computedMatrix,g=0;g<3;++g){var De=_e*_[g]+Me*O[g]+ke*L[g];Ae[4*g+1]=me*_[g]+ie*O[g]+Se*L[g],Ae[4*g+2]=De,Ae[4*g+3]=0}var Pe=Ae[1],ge=Ae[5],Fe=Ae[9],ce=Ae[2],Ze=Ae[6],ct=Ae[10],pt=ge*ct-Fe*Ze,Wt=Fe*ce-Pe*ct,st=Pe*Ze-ge*ce,lt=d(pt,Wt,st);pt/=lt,Wt/=lt,st/=lt,Ae[0]=pt,Ae[4]=Wt,Ae[8]=st;for(var g=0;g<3;++g)Le[g]=oe[g]+Ae[2+4*g]*V;for(var g=0;g<3;++g){for(var T=0,Gt=0;Gt<3;++Gt)T+=Ae[g+4*Gt]*Le[Gt];Ae[12+g]=-T}Ae[15]=1},p.getMatrix=function(A,L){this.recalcMatrix(A);var _=this.computedMatrix;if(L){for(var k=0;k<16;++k)L[k]=_[k];return L}return _};var C=[0,0,0];p.rotate=function(A,L,_,k){if(this.angle.move(A,L,_),k){this.recalcMatrix(A);var M=this.computedMatrix;C[0]=M[2],C[1]=M[6],C[2]=M[10];for(var g=this.computedUp,P=this.computedRight,T=this.computedToward,z=0;z<3;++z)M[4*z]=g[z],M[4*z+1]=P[z],M[4*z+2]=T[z];u(M,M,k,C);for(var z=0;z<3;++z)g[z]=M[4*z],P[z]=M[4*z+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,_,k){L=L||0,_=_||0,k=k||0,this.recalcMatrix(A);var M=this.computedMatrix,g=Math.exp(this.computedRadius[0]),P=M[1],T=M[5],z=M[9],O=d(P,T,z);P/=O,T/=O,z/=O;var V=M[0],G=M[4],Z=M[8],H=V*P+G*T+Z*z;V-=P*H,G-=T*H,Z-=z*H;var N=d(V,G,Z);V/=N,G/=N,Z/=N;var j=V*L+P*_,re=G*L+T*_,oe=Z*L+z*_;this.center.move(A,j,re,oe);var _e=Math.exp(this.computedRadius[0]);_e=Math.max(1e-4,_e+k),this.radius.set(A,Math.log(_e))},p.translate=function(A,L,_,k){this.center.move(A,L||0,_||0,k||0)},p.setMatrix=function(A,L,_,k){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],z=L[M+4],O=L[M+8];if(k){var G=Math.abs(T),Z=Math.abs(z),H=Math.abs(O),N=Math.max(G,Z,H);G===N?(T=T<0?-1:1,z=O=0):H===N?(O=O<0?-1:1,T=z=0):(z=z<0?-1:1,T=O=0)}else{var V=d(T,z,O);T/=V,z/=V,O/=V}var j=L[g],re=L[g+4],oe=L[g+8],_e=j*T+re*z+oe*O;j-=T*_e,re-=z*_e,oe-=O*_e;var Me=d(j,re,oe);j/=Me,re/=Me,oe/=Me;var ke=z*oe-O*re,me=O*j-T*oe,ie=T*re-z*j,Se=d(ke,me,ie);ke/=Se,me/=Se,ie/=Se,this.center.jump(A,ur,Qe,Et),this.radius.idle(A),this.up.jump(A,T,z,O),this.right.jump(A,j,re,oe);var Le,Ae;if(M===2){var De=L[1],Pe=L[5],ge=L[9],Fe=De*j+Pe*re+ge*oe,ce=De*ke+Pe*me+ge*ie;Wt<0?Le=-Math.PI/2:Le=Math.PI/2,Ae=Math.atan2(ce,Fe)}else{var Ze=L[2],ct=L[6],pt=L[10],Wt=Ze*T+ct*z+pt*O,st=Ze*j+ct*re+pt*oe,lt=Ze*ke+ct*me+pt*ie;Le=Math.asin(v(Wt)),Ae=Math.atan2(lt,st)}this.angle.jump(A,Ae,Le),this.recalcMatrix(A);var Gt=L[2],Nt=L[6],$t=L[10],sr=this.computedMatrix;l(sr,L);var wr=sr[15],ur=sr[12]/wr,Qe=sr[13]/wr,Et=sr[14]/wr,er=Math.exp(this.computedRadius[0]);this.center.jump(A,ur-Gt*er,Qe-Nt*er,Et-$t*er)},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,_,k){this.recalcMatrix(A),L=L||this.computedEye,_=_||this.computedCenter,k=k||this.computedUp;var M=k[0],g=k[1],P=k[2],T=d(M,g,P);if(!(T<1e-6)){M/=T,g/=T,P/=T;var z=L[0]-_[0],O=L[1]-_[1],V=L[2]-_[2],G=d(z,O,V);if(!(G<1e-6)){z/=G,O/=G,V/=G;var Z=this.computedRight,H=Z[0],N=Z[1],j=Z[2],re=M*H+g*N+P*j;H-=re*M,N-=re*g,j-=re*P;var oe=d(H,N,j);if(!(oe<.01&&(H=g*V-P*O,N=P*z-M*V,j=M*O-g*z,oe=d(H,N,j),oe<1e-6))){H/=oe,N/=oe,j/=oe,this.up.set(A,M,g,P),this.right.set(A,H,N,j),this.center.set(A,_[0],_[1],_[2]),this.radius.set(A,Math.log(G));var _e=g*j-P*N,Me=P*H-M*j,ke=M*N-g*H,me=d(_e,Me,ke);_e/=me,Me/=me,ke/=me;var ie=M*z+g*O+P*V,Se=H*z+N*O+j*V,Le=_e*z+Me*O+ke*V,Ae=Math.asin(v(ie)),De=Math.atan2(Le,Se),Pe=this.angle._state,ge=Pe[Pe.length-1],Fe=Pe[Pe.length-2];ge=ge%(2*Math.PI);var ce=Math.abs(ge+2*Math.PI-De),Ze=Math.abs(ge-De),ct=Math.abs(ge-2*Math.PI-De);ce<Ze&&(ge+=2*Math.PI),ct<Ze&&(ge-=2*Math.PI),this.angle.jump(this.angle.lastT(),ge,Fe),this.angle.set(A,De,Ae)}}}};function E(A){A=A||{};var L=A.center||[0,0,0],_=A.up||[0,1,0],k=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(_,_),k=[].slice.call(k,0,3),f(k,k),"eye"in A){var T=A.eye,z=[T[0]-L[0],T[1]-L[1],T[2]-L[2]];c(k,z,_),d(k[0],k[1],k[2])<1e-6?k=x(_):f(k,k),M=d(z[0],z[1],z[2]);var O=h(_,z)/M,V=h(k,z)/M;P=Math.acos(O),g=Math.acos(V)}return M=Math.log(M),new b(A.zoomMin,A.zoomMax,L,_,k,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,C=l-p,E=c-d*p,A=E-v*p,L=A-d*C,_=v*C-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(H){if(u.isBuffer(H))x[s.log2(H.length)].push(H);else{if(Object.prototype.toString.call(H)!=="[object ArrayBuffer]"&&(H=H.buffer),!H)return;var N=H.length||H.byteLength,j=s.log2(N)|0;v[j].push(H)}};function b(Z){if(Z){var H=Z.length||Z.byteLength,N=s.log2(H);v[N].push(Z)}}function p(Z){b(Z.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(H){x[s.log2(H.length)].push(H)},a.malloc=function(H,N){if(N===void 0||N==="arraybuffer")return C(H);switch(N){case"uint8":return E(H);case"uint16":return A(H);case"uint32":return L(H);case"int8":return _(H);case"int16":return k(H);case"int32":return M(H);case"float":case"float32":return g(H);case"double":case"float64":return P(H);case"uint8_clamped":return T(H);case"bigint64":return O(H);case"biguint64":return z(H);case"buffer":return G(H);case"data":case"dataview":return V(H);default:return null}return null};function C(H){var H=s.nextPow2(H),N=s.log2(H),j=v[N];return j.length>0?j.pop():new ArrayBuffer(H)}a.mallocArrayBuffer=C;function E(Z){return new Uint8Array(C(Z),0,Z)}a.mallocUint8=E;function A(Z){return new Uint16Array(C(2*Z),0,Z)}a.mallocUint16=A;function L(Z){return new Uint32Array(C(4*Z),0,Z)}a.mallocUint32=L;function _(Z){return new Int8Array(C(Z),0,Z)}a.mallocInt8=_;function k(Z){return new Int16Array(C(2*Z),0,Z)}a.mallocInt16=k;function M(Z){return new Int32Array(C(4*Z),0,Z)}a.mallocInt32=M;function g(Z){return new Float32Array(C(4*Z),0,Z)}a.mallocFloat32=a.mallocFloat=g;function P(Z){return new Float64Array(C(8*Z),0,Z)}a.mallocFloat64=a.mallocDouble=P;function T(Z){return c?new Uint8ClampedArray(C(Z),0,Z):E(Z)}a.mallocUint8Clamped=T;function z(Z){return f?new BigUint64Array(C(8*Z),0,Z):null}a.mallocBigUint64=z;function O(Z){return h?new BigInt64Array(C(8*Z),0,Z):null}a.mallocBigInt64=O;function V(Z){return new DataView(C(Z),0,Z)}a.mallocDataView=V;function G(Z){Z=s.nextPow2(Z);var H=s.log2(Z),N=x[H];return N.length>0?N.pop():new u(Z)}a.mallocBuffer=G,a.clearCache=function(){for(var H=0;H<32;++H)d.UINT8[H].length=0,d.UINT16[H].length=0,d.UINT32[H].length=0,d.INT8[H].length=0,d.INT16[H].length=0,d.INT32[H].length=0,d.FLOAT[H].length=0,d.DOUBLE[H].length=0,d.BIGUINT64[H].length=0,d.BIGINT64[H].length=0,d.UINT8C[H].length=0,v[H].length=0,x[H].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=O,i.exports.processPixels=z;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",C="+",E="+1",A="sub",L="-",_="-1";function k(V,G,Z,H){for(var N="<"+V+">",j="</"+V+">",re=N.length,oe=j.length,_e=G[0]===C||G[0]===L,Me=0,ke=-oe;Me>-1&&(Me=Z.indexOf(N,Me),!(Me===-1||(ke=Z.indexOf(j,Me+re),ke===-1)||ke<=Me));){for(var me=Me;me<ke+oe;++me)if(me<Me+re||me>=ke)H[me]=null,Z=Z.substr(0,me)+" "+Z.substr(me+1);else if(H[me]!==null){var ie=H[me].indexOf(G[0]);ie===-1?H[me]+=G:_e&&(H[me]=H[me].substr(0,ie+1)+(1+parseInt(H[me][ie+1]))+H[me].substr(ie+2))}var Se=Me+re,Le=Z.substr(Se,ke-Se),Ae=Le.indexOf(N);Ae!==-1?Me=Ae:Me=ke+oe}return H}function M(V,G,Z){for(var H=G.textAlign||"start",N=G.textBaseline||"alphabetic",j=[1<<30,1<<30],re=[0,0],oe=V.length,_e=0;_e<oe;++_e)for(var Me=V[_e],ke=0;ke<2;++ke)j[ke]=Math.min(j[ke],Me[ke])|0,re[ke]=Math.max(re[ke],Me[ke])|0;var me=0;switch(H){case"center":me=-.5*(j[0]+re[0]);break;case"right":case"end":me=-re[0];break;case"left":case"start":me=-j[0];break;default:throw new Error("vectorize-text: Unrecognized textAlign: '"+H+"'")}var ie=0;switch(N){case"hanging":case"top":ie=-j[1];break;case"middle":ie=-.5*(j[1]+re[1]);break;case"alphabetic":case"ideographic":ie=-3*Z;break;case"bottom":ie=-re[1];break;default:throw new Error("vectorize-text: Unrecoginized textBaseline: '"+N+"'")}var Se=1/Z;return"lineHeight"in G?Se*=+G.lineHeight:"width"in G?Se=G.width/(re[0]-j[0]):"height"in G&&(Se=G.height/(re[1]-j[1])),V.map(function(Le){return[Se*(Le[0]+me),Se*(Le[1]+ie)]})}function g(V,G,Z,H,N,j){Z=Z.replace(/\n/g,""),j.breaklines===!0?Z=Z.replace(/\<br\>/g,`
|
||
`):Z=Z.replace(/\<br\>/g," ");var re="",oe=[];for(ge=0;ge<Z.length;++ge)oe[ge]=re;j.bolds===!0&&(oe=k(d,v,Z,oe)),j.italics===!0&&(oe=k(x,b,Z,oe)),j.superscripts===!0&&(oe=k(p,E,Z,oe)),j.subscripts===!0&&(oe=k(A,_,Z,oe));var _e=[],Me="";for(ge=0;ge<Z.length;++ge)oe[ge]!==null&&(Me+=Z[ge],_e.push(oe[ge]));var ke=Me.split(`
|
||
`),me=ke.length,ie=Math.round(N*H),Se=H,Le=H*2,Ae=0,De=me*ie+Le;V.height<De&&(V.height=De),G.fillStyle="#000",G.fillRect(0,0,V.width,V.height),G.fillStyle="#fff";var Pe,ge,Fe,ce,Ze,ct=0,pt="";function Wt(){if(pt!==""){var Qe=G.measureText(pt).width;G.fillText(pt,Se+Fe,Le+ce),Fe+=Qe}}function st(){return""+Math.round(Ze)+"px "}function lt(Qe,Et){var er=""+G.font;if(j.subscripts===!0){var Ut=Qe.indexOf(L),Ft=Et.indexOf(L),bt=Ut>-1?parseInt(Qe[1+Ut]):0,yt=Ft>-1?parseInt(Et[1+Ft]):0;bt!==yt&&(er=er.replace(st(),"?px "),Ze*=Math.pow(.75,yt-bt),er=er.replace("?px ",st())),ce+=.25*ie*(yt-bt)}if(j.superscripts===!0){var Yt=Qe.indexOf(C),lr=Et.indexOf(C),Tr=Yt>-1?parseInt(Qe[1+Yt]):0,Rr=lr>-1?parseInt(Et[1+lr]):0;Tr!==Rr&&(er=er.replace(st(),"?px "),Ze*=Math.pow(.75,Rr-Tr),er=er.replace("?px ",st())),ce-=.25*ie*(Rr-Tr)}if(j.bolds===!0){var ei=Qe.indexOf(v)>-1,Wr=Et.indexOf(v)>-1;!ei&&Wr&&(Ur?er=er.replace("italic ","italic bold "):er="bold "+er),ei&&!Wr&&(er=er.replace("bold ",""))}if(j.italics===!0){var Ur=Qe.indexOf(b)>-1,dt=Et.indexOf(b)>-1;!Ur&&dt&&(er="italic "+er),Ur&&!dt&&(er=er.replace("italic ",""))}G.font=er}for(Pe=0;Pe<me;++Pe){var Gt=ke[Pe]+`
|
||
`;for(Fe=0,ce=Pe*ie,Ze=H,pt="",ge=0;ge<Gt.length;++ge){var Nt=ge+ct<_e.length?_e[ge+ct]:_e[_e.length-1];re===Nt?pt+=Gt[ge]:(Wt(),pt=Gt[ge],Nt!==void 0&&(lt(re,Nt),re=Nt))}Wt(),ct+=Gt.length;var $t=Math.round(Fe+2*Se)|0;Ae<$t&&(Ae=$t)}var sr=Ae,wr=Le+ie*me,ur=l(G.getImageData(0,0,sr,wr).data,[wr,sr,4]);return ur.pick(-1,-1,0).transpose(1,0)}function P(V,G){var Z=s(V,128);return G?u(Z.cells,Z.positions,.25):{edges:Z.cells,positions:Z.positions}}function T(V,G,Z,H){var N=P(V,H),j=M(N.positions,G,Z),re=N.edges,oe=G.orientation==="ccw";if(c(j,re),G.polygons||G.polygon||G.polyline){for(var _e=h(re,j),Me=new Array(_e.length),ke=0;ke<_e.length;++ke){for(var me=_e[ke],ie=new Array(me.length),Se=0;Se<me.length;++Se){for(var Le=me[Se],Ae=new Array(Le.length),De=0;De<Le.length;++De)Ae[De]=j[Le[De]].slice();oe&&Ae.reverse(),ie[Se]=Ae}Me[ke]=ie}return Me}else return G.triangles||G.triangulate||G.triangle?{cells:f(j,re,{delaunay:!1,exterior:!1,interior:!0}),positions:j}:{edges:re,positions:j}}function z(V,G,Z){try{return T(V,G,Z,!0)}catch(H){}try{return T(V,G,Z,!1)}catch(H){}return G.polygons||G.polyline||G.polygon?[]:G.triangles||G.triangulate||G.triangle?{cells:[],positions:[]}:{edges:[],positions:[]}}function O(V,G,Z,H){var N=64,j=1.25,re={breaklines:!1,bolds:!1,italics:!1,subscripts:!1,superscripts:!1};H&&(H.size&&H.size>0&&(N=H.size),H.lineSpacing&&H.lineSpacing>0&&(j=H.lineSpacing),H.styletags&&H.styletags.breaklines&&(re.breaklines=!!H.styletags.breaklines),H.styletags&&H.styletags.bolds&&(re.bolds=!!H.styletags.bolds),H.styletags&&H.styletags.italics&&(re.italics=!!H.styletags.italics),H.styletags&&H.styletags.subscripts&&(re.subscripts=!!H.styletags.subscripts),H.styletags&&H.styletags.superscripts&&(re.superscripts=!!H.styletags.superscripts)),Z.font=[H.fontStyle,H.fontVariant,H.fontWeight,N+"px",H.font].filter(function(_e){return _e}).join(" "),Z.textAlign="start",Z.textBaseline="alphabetic",Z.direction="ltr";var oe=g(G,Z,V,N,j,re);return z(oe,H,N)}},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),C=new Uint8Array(p);crypto.getRandomValues(C),b=x+"rand:"+Array.prototype.map.call(C,function(T){return(T%36).toString(36)}).join("")+"___"}function E(T){return!(T.substr(0,x.length)==x&&T.substr(T.length-3)==="___")}if(d(Object,"getOwnPropertyNames",{value:function(z){return h(z).filter(E)}}),"getPropertyNames"in Object){var A=Object.getPropertyNames;d(Object,"getPropertyNames",{value:function(z){return A(z).filter(E)}})}function L(T){if(T!==Object(T))throw new TypeError("Not an object: "+T);var z=T[b];if(z&&z.key===T)return z;if(v(T)){z={key:T};try{return d(T,b,{value:z,writable:!1,enumerable:!1,configurable:!1}),z}catch(O){return}}}(function(){var T=Object.freeze;d(Object,"freeze",{value:function(G){return L(G),T(G)}});var z=Object.seal;d(Object,"seal",{value:function(G){return L(G),z(G)}});var O=Object.preventExtensions;d(Object,"preventExtensions",{value:function(G){return L(G),O(G)}})})();function _(T){return T.prototype=null,Object.freeze(T)}var k=!1;function M(){!k&&typeof console!="undefined"&&(k=!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=[],z=[],O=g++;function V(N,j){var re,oe=L(N);return oe?O in oe?oe[O]:j:(re=T.indexOf(N),re>=0?z[re]:j)}function G(N){var j=L(N);return j?O in j:T.indexOf(N)>=0}function Z(N,j){var re,oe=L(N);return oe?oe[O]=j:(re=T.indexOf(N),re>=0?z[re]=j:(re=T.length,z[re]=j,T[re]=N)),this}function H(N){var j=L(N),re,oe;return j?O in j&&delete j[O]:(re=T.indexOf(N),re<0?!1:(oe=T.length-1,T[re]=void 0,z[re]=z[oe],T[re]=T[oe],T.length=oe,z.length=oe,!0))}return Object.create(P.prototype,{get___:{value:_(V)},has___:{value:_(G)},set___:{value:_(Z)},delete___:{value:_(H)}})};P.prototype=Object.create(Object.prototype,{get:{value:function(z,O){return this.get___(z,O)},writable:!0,configurable:!0},has:{value:function(z){return this.has___(z)},writable:!0,configurable:!0},set:{value:function(z,O){return this.set___(z,O)},writable:!0,configurable:!0},delete:{value:function(z){return this.delete___(z)},writable:!0,configurable:!0}}),typeof l=="function"?function(){s&&typeof Proxy!="undefined"&&(Proxy=void 0);function T(){this instanceof P||M();var z=new l,O=void 0,V=!1;function G(j,re){return O?z.has(j)?z.get(j):O.get___(j,re):z.get(j,re)}function Z(j){return z.has(j)||(O?O.has___(j):!1)}var H;s?H=function(j,re){return z.set(j,re),z.has(j)||(O||(O=new P),O.set(j,re)),this}:H=function(j,re){if(V)try{z.set(j,re)}catch(oe){O||(O=new P),O.set___(j,re)}else z.set(j,re);return this};function N(j){var re=!!z.delete(j);return O&&O.delete___(j)||re}return Object.create(P.prototype,{get___:{value:_(G)},has___:{value:_(Z)},set___:{value:_(H)},delete___:{value:_(N)},permitHostObjects___:{value:_(function(j){if(j===o)V=!0;else throw new Error("bogus call to permitHostObjects___")})}})}T.prototype=P.prototype,i.exports=T,Object.defineProperty(WeakMap.prototype,"constructor",{value:WeakMap,enumerable:!1,configurable:!0,writable:!0})}():(typeof Proxy!="undefined"&&(Proxy=void 0),i.exports=P)})()},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],C=d[0],E=[0],A=C;v|=0;var L=0,_=C;for(L=0;L<p;++L){{var k=h[v]-b,M=h[v+A]-b;k>=0!=M>=0&&x.push(E[0]+.5+.5*(k+M)/(k-M))}v+=_,++E[0]}}}function o(){return a()}var s=o;function l(f){var h={};return function(v,x,b){var p=v.dtype,C=v.order,E=[p,C.join()].join(),A=h[E];return A||(h[E]=A=f([p,C])),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);nPe.exports=n})()});var hX=ye((Upr,aPe)=>{"use strict";aPe.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 uPe=ye((Vpr,lPe)=>{"use strict";var oPe=hX();lPe.exports=EPt;var sPe={red:0,orange:60,yellow:120,green:180,blue:240,purple:300};function EPt(e){var t,r=[],n=1,i;if(typeof e=="string")if(e=e.toLowerCase(),oPe[e])r=oPe[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(sPe[h]!==void 0)return sPe[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 fPe=ye((Gpr,cPe)=>{"use strict";var CPt=uPe();cPe.exports=function(t){Array.isArray(t)&&t.raw&&(t=String.raw.apply(null,arguments));var r,n,i,a=CPt(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=kPt(r)),r.push(Math.min(Math.max(a.alpha,0),1)),r};function kPt(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 XE=ye((Hpr,hPe)=>{hPe.exports=LPt;function LPt(e,t,r){return t<r?e<t?t:e>r?r:e:e<r?r:e>t?t:e}});var WD=ye((jpr,dPe)=>{dPe.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((Wpr,vPe)=>{"use strict";var PPt=fPe(),XD=XE(),IPt=WD();vPe.exports=function(t,r){(r==="float"||!r)&&(r="array"),r==="uint"&&(r="uint8"),r==="uint_clamped"&&(r="uint8_clamped");var n=IPt(r),i=new n(4),a=r!=="uint8"&&r!=="uint8_clamped";return(!t.length||typeof t=="string")&&(t=PPt(t),t[0]/=255,t[1]/=255,t[2]/=255),RPt(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]=XD(Math.floor(t[0]*255),0,255),i[1]=XD(Math.floor(t[1]*255),0,255),i[2]=XD(Math.floor(t[2]*255),0,255),i[3]=t[3]==null?255:XD(Math.floor(t[3]*255),0,255)),i)};function RPt(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((Xpr,pPe)=>{"use strict";var DPt=$_();function FPt(e){return e?DPt(e):[0,0,0,1]}pPe.exports=FPt});var $y=ye((Zpr,wPe)=>{"use strict";var xPe=Eo(),zPt=cd(),ZD=$_(),YD=tc(),OPt=Eh().defaultLine,gPe=vv().isArrayOrTypedArray,dX=ZD(OPt),bPe=1;function mPe(e,t){var r=e;return r[3]*=t,r}function yPe(e){if(xPe(e))return dX;var t=ZD(e);return t.length?t:dX}function _Pe(e){return xPe(e)?e:bPe}function qPt(e,t,r){var n=e.color;n&&n._inputArray&&(n=n._inputArray);var i=gPe(n),a=gPe(t),o=YD.extractOpts(e),s=[],l,u,c,f,h;if(o.colorscale!==void 0?l=YD.makeColorScaleFuncFromTrace(e):l=yPe,i?u=function(v,x){return v[x]===void 0?dX:ZD(l(v[x]))}:u=yPe,a?c=function(v,x){return v[x]===void 0?bPe:_Pe(v[x])}:c=_Pe,i||a)for(var d=0;d<r;d++)f=u(n,d),h=c(t,d),s[d]=mPe(f,h);else s=mPe(ZD(n),t);return s}function BPt(e){var t=YD.extractOpts(e),r=t.colorscale;return t.reversescale&&(r=YD.flipScale(t.colorscale)),r.map(function(n){var i=n[0],a=zPt(n[1]),o=a.toRgb();return{index:i,rgb:[o.r,o.g,o.b,o.a]}})}wPe.exports={formatColor:qPt,parseColorScale:BPt}});var vX=ye((Ypr,TPe)=>{"use strict";TPe.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 KD=ye((Kpr,APe)=>{"use strict";APe.exports={circle:"\u25CF","circle-open":"\u25CB",square:"\u25A0","square-open":"\u25A1",diamond:"\u25C6","diamond-open":"\u25C7",cross:"+",x:"\u274C"}});var MPe=ye((Jpr,SPe)=>{"use strict";var NPt=qa();function pX(e,t,r,n){if(!t||!t.visible)return null;for(var i=NPt.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 UPt(e){for(var t=0;t<e.length;t++)if(e[t])return e[t].length;return 0}function VPt(e,t,r){var n=[pX(e.x,e.error_x,t[0],r.xaxis),pX(e.y,e.error_y,t[1],r.yaxis),pX(e.z,e.error_z,t[2],r.zaxis)],i=UPt(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}SPe.exports=VPt});var FPe=ye(($pr,DPe)=>{"use strict";var GPt=Od().gl_line3d,EPe=Od().gl_scatter3d,HPt=Od().gl_error3d,jPt=Od().gl_mesh3d,WPt=Od().delaunay_triangulate,Qy=Dr(),IPe=Jy(),JD=$y().formatColor,XPt=S3(),gX=vX(),ZPt=KD(),YPt=ho(),KPt=rp().appendArrayPointValue,JPt=MPe();function RPe(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 yX=RPe.prototype;yX.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 $Pt(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=WPt(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 QPt(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]=IPe(a.color),n[i]=a.thickness)}return{capSize:t,color:r,lineWidth:n}}function CPe(e){return e==null?0:e.indexOf("left")>-1?-1:e.indexOf("right")>-1?1:0}function kPe(e){return e==null?0:e.indexOf("top")>-1?-1:e.indexOf("bottom")>-1?1:0}function eIt(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]=CPe(e[i]),n[i][1]=kPe(e[i]));else n[0]=CPe(e),n[1]=kPe(e);return n}function tIt(e,t){return t(e*4)}function rIt(e){return ZPt[e]}function mX(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 iIt(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,C,E,A,L,_;for(L=0;L<d;L++)p=a.d2l(c[L],0,v)*i[0],C=o.d2l(f[L],0,x)*i[1],E=s.d2l(h[L],0,b)*i[2],r[L]=[p,C,E];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 k(_e,Me){var ke=n[_e];return YPt.tickText(ke,ke.d2l(Me),!0).text}var M=t.texttemplate;if(M){var g=e.fullLayout,P=g._d3locale,T=Array.isArray(M),z=T?Math.min(M.length,d):d,O=T?function(_e){return M[_e]}:function(){return M};for(_=new Array(z),L=0;L<z;L++){var V={x:c[L],y:f[L],z:h[L]},G={xLabel:k("xaxis",c[L]),yLabel:k("yaxis",f[L]),zLabel:k("zaxis",h[L])},Z={};KPt(Z,t,L);var H=t._meta||{};_[L]=Qy.texttemplateString(O(L),G,P,Z,V,H)}}if(A={position:r,mode:t.mode,text:_},"line"in t&&(A.lineColor=JD(u,1,d),A.lineWidth=u.width,A.lineDashes=u.dash),"marker"in t){var N=XPt(t);A.scatterColor=JD(l,1,d),A.scatterSize=mX(l.size,d,tIt,20,N),A.scatterMarker=mX(l.symbol,d,rIt,"\u25CF"),A.scatterLineWidth=l.line.width,A.scatterLineColor=JD(l.line,1,d),A.scatterAngle=0}"textposition"in t&&(A.textOffset=eIt(t.textposition),A.textColor=JD(t.textfont,1,d),A.textSize=mX(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 j=["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[j[L]];(A.project[L]=re.show)&&(A.projectOpacity[L]=re.opacity,A.projectScale[L]=re.scale)}A.errorBounds=JPt(t,i,n);var oe=QPt([t.error_x,t.error_y,t.error_z]);return A.errorColor=oe.color,A.errorLineWidth=oe.lineWidth,A.errorCapSize=oe.capSize,A.delaunayAxis=t.surfaceaxis,A.delaunayColor=IPe(t.surfacecolor),A}function LPe(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 PPe(e){return Qy.isArrayOrTypedArray(e)?e.length===4&&typeof e[0]=="number"?LPe(e):e.map(LPe):null}yX.update=function(e){var t=this.scene.glplot.gl,r,n,i,a,o=gX.solid;this.data=e;var s=iIt(this.scene,e);"mode"in s&&(this.mode=s.mode),"lineDashes"in s&&s.lineDashes in gX&&(o=gX[s.lineDashes]),this.color=PPe(s.scatterColor)||PPe(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=GPt(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=EPe(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=EPe(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=HPt(i),this.errorBars._trace=this,this.scene.glplot.add(this.errorBars)),s.delaunayAxis>=0){var u=$Pt(s.position,s.delaunayColor,s.delaunayAxis);u.opacity=e.opacity,this.delaunayMesh?this.delaunayMesh.update(u):(u.gl=t,this.delaunayMesh=jPt(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)};yX.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 nIt(e,t){var r=new RPe(e,t.uid);return r.update(t),r}DPe.exports=nIt});var TX=ye((Qpr,qPe)=>{"use strict";var e1=pf(),aIt=ec(),wX=Tu(),_X=df().axisHoverFormat,oIt=Qo().hovertemplateAttrs,sIt=Qo().texttemplateAttrs,zPe=Vl(),lIt=vX(),uIt=KD(),Yg=Ao().extendFlat,cIt=mc().overrideAll,OPe=Y1(),fIt=e1.line,N2=e1.marker,hIt=N2.line,dIt=Yg({width:fIt.width,dash:{valType:"enumerated",values:OPe(lIt),dflt:"solid"}},wX("line"));function xX(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 bX=qPe.exports=cIt({x:e1.x,y:e1.y,z:{valType:"data_array"},text:Yg({},e1.text,{}),texttemplate:sIt({},{}),hovertext:Yg({},e1.hovertext,{}),hovertemplate:oIt(),xhoverformat:_X("x"),yhoverformat:_X("y"),zhoverformat:_X("z"),mode:Yg({},e1.mode,{dflt:"lines+markers"}),surfaceaxis:{valType:"enumerated",values:[-1,0,1,2],dflt:-1},surfacecolor:{valType:"color"},projection:{x:xX("x"),y:xX("y"),z:xX("z")},connectgaps:e1.connectgaps,line:dIt,marker:Yg({symbol:{valType:"enumerated",values:OPe(uIt),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({},hIt.width,{arrayOk:!1})},wX("marker.line"))},wX("marker")),textposition:Yg({},e1.textposition,{dflt:"top center"}),textfont:aIt({noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0,editType:"calc",colorEditType:"style",arrayOk:!0,variantValues:["normal","small-caps"]}),opacity:zPe.opacity,hoverinfo:Yg({},zPe.hoverinfo)},"calc","nested");bX.x.editType=bX.y.editType=bX.z.editType="calc+clearAxisTypes"});var UPe=ye((e0r,NPe)=>{"use strict";var BPe=qa(),vIt=Dr(),AX=Ru(),pIt=$p(),gIt=R0(),mIt=D0(),yIt=TX();NPe.exports=function(t,r,n,i){function a(d,v){return vIt.coerce(t,r,yIt,d,v)}var o=_It(t,r,a,i);if(!o){r.visible=!1;return}a("text"),a("hovertext"),a("hovertemplate"),a("xhoverformat"),a("yhoverformat"),a("zhoverformat"),a("mode"),AX.hasMarkers(r)&&pIt(t,r,n,i,a,{noSelect:!0,noAngle:!0}),AX.hasLines(r)&&(a("connectgaps"),gIt(t,r,n,i,a)),AX.hasText(r)&&(a("texttemplate"),mIt(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=BPe.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 _It(e,t,r,n){var i=0,a=r("x"),o=r("y"),s=r("z"),l=BPe.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 GPe=ye((t0r,VPe)=>{"use strict";var xIt=Cm(),bIt=F0();VPe.exports=function(t,r){var n=[{x:!1,y:!1,trace:r,t:{}}];return xIt(n,r),bIt(t,r),n}});var jPe=ye((r0r,HPe)=>{HPe.exports=wIt;function wIt(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 XPe=ye((i0r,WPe)=>{var TIt=jPe();WPe.exports=function(t){return TIt("webgl",t)}});var SX=ye((n0r,YPe)=>{"use strict";var ZPe=Ca(),AIt=function(){};YPe.exports=function(t){for(var r in t)typeof t[r]=="function"&&(t[r]=AIt);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=ZPe.defaults[0],n.style.position="absolute",n.style.left=n.style.top="0px",n.style.width=n.style.height="100%",n.style["background-color"]=ZPe.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 $Pe=ye((a0r,JPe)=>{"use strict";var U2=Jy(),SIt=Dr(),MIt=["xaxis","yaxis","zaxis"];function KPe(){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 EIt=KPe.prototype;EIt.merge=function(e,t){for(var r=this,n=0;n<3;++n){var i=t[MIt[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?SIt.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 CIt(e,t){var r=new KPe;return r.merge(e,t),r}JPe.exports=CIt});var tIe=ye((o0r,eIe)=>{"use strict";var kIt=Jy(),LIt=["xaxis","yaxis","zaxis"];function QPe(){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 PIt=QPe.prototype;PIt.merge=function(e){for(var t=0;t<3;++t){var r=e[LIt[t]];if(!r.visible){this.enabled[t]=!1,this.drawSides[t]=!1;continue}this.enabled[t]=r.showspikes,this.colors[t]=kIt(r.spikecolor),this.drawSides[t]=r.spikesides,this.lineWidth[t]=r.spikethickness}};function IIt(e){var t=new QPe;return t.merge(e),t}eIe.exports=IIt});var nIe=ye((s0r,iIe)=>{"use strict";iIe.exports=OIt;var rIe=ho(),RIt=Dr(),DIt=["xaxis","yaxis","zaxis"],FIt=[0,0,0];function zIt(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 OIt(e){for(var t=e.axesOptions,r=e.glplot.axesPixels,n=e.fullSceneLayout,i=[[],[],[]],a=0;a<3;++a){var o=n[DIt[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||RIt.constrain(o._length/40,4,9);rIe.autoTicks(o,Math.abs(o.range[1]-o.range[0])/l)}for(var u=rIe.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){FIt[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=zIt(i)}});var fIe=ye((l0r,cIe)=>{"use strict";var sIe=Od().gl_plot3d,qIt=sIe.createCamera,aIe=sIe.createScene,BIt=XPe(),NIt=PL(),eF=qa(),lp=Dr(),QD=lp.preserveDrawingBuffer(),tF=ho(),Kg=vf(),UIt=Jy(),VIt=SX(),GIt=qU(),HIt=$Pe(),jIt=tIe(),WIt=nIe(),XIt=wg().applyAutorangeOptions,ZE,$D,lIe=!1;function uIe(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=HIt(t,t[this.id]),this.spikeOptions=jIt(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=eF.getComponentMethod("annotations3d","convert"),this.drawAnnotations=eF.getComponentMethod("annotations3d","draw"),this.initializeGLPlot()}var wv=uIe.prototype;wv.prepareOptions=function(){var e=this,t={canvas:e.canvas,gl:e.gl,glOptions:{preserveDrawingBuffer:QD,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(!$D&&(ZE=document.createElement("canvas"),$D=BIt({canvas:ZE,preserveDrawingBuffer:!0,premultipliedAlpha:!0,antialias:!0}),!$D))throw new Error("error creating static canvas/context for image server");t.gl=$D,t.canvas=ZE}return t};var oIe=!0;wv.tryCreatePlot=function(){var e=this,t=e.prepareOptions(),r=!0;try{e.glplot=aIe(t)}catch(n){if(e.staticMode||!oIe||QD)r=!1;else{lp.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{QD=t.glOptions.preserveDrawingBuffer=!0,e.glplot=aIe(t)}catch(i){QD=t.glOptions.preserveDrawingBuffer=!1,r=!1}}}return oIe=!1,r};wv.initializeGLCamera=function(){var e=this,t=e.fullSceneLayout.camera,r=t.projection.type==="orthographic";e.camera=qIt(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 VIt(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(){lIe=!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)}},NIt?{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),WIt(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,z){var O=e.fullSceneLayout[P+"axis"];return O.type!=="log"&&(T=O.d2l(T)),tF.hoverLabelText(O,T,z)}if(c!==null){var v=GIt(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)},C=Kg.castHoverinfo(x,e.fullLayout,b),E=(C||"").split("+"),A=C&&C==="all";!x.hovertemplate&&!A&&(E.indexOf("x")===-1&&(p.xLabel=void 0),E.indexOf("y")===-1&&(p.yLabel=void 0),E.indexOf("z")===-1&&(p.zLabel=void 0),E.indexOf("text")===-1&&(f.textLabel=void 0),E.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||E.indexOf("u")!==-1)&&_.push("u: "+p.uLabel),p.vLabel=d("y",f.traceCoordinate[4],r.vhoverformat),(A||E.indexOf("v")!==-1)&&_.push("v: "+p.vLabel),p.wLabel=d("z",f.traceCoordinate[5],r.whoverformat),(A||E.indexOf("w")!==-1)&&_.push("w: "+p.wLabel),p.normLabel=f.traceCoordinate[6].toPrecision(3),(A||E.indexOf("norm")!==-1)&&_.push("norm: "+p.normLabel),r.type==="streamtube"&&(p.divergenceLabel=f.traceCoordinate[7].toPrecision(3),(A||E.indexOf("divergence")!==-1)&&_.push("divergence: "+p.divergenceLabel)),f.textLabel&&_.push(f.textLabel),L=_.join("<br>")):r.type==="isosurface"||r.type==="volume"?(p.valueLabel=tF.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 k={x:f.traceCoordinate[0],y:f.traceCoordinate[1],z:f.traceCoordinate[2],data:x._input,fullData:x,curveNumber:x.index,pointNumber:b};Kg.appendArrayPointValue(k,x,b),r._module.eventData&&(k=x._module.eventData(k,f,x,{},b));var M={points:[k]};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:lp.castOption(x,b,"hovertemplate"),hovertemplateLabels:lp.extendFlat({},k,p),eventData:[k]},{container:n,gd:t,inOut_bbox:g}),k.bbox=g[0]}f.distance<5&&(f.buttons||lIe)?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()){lp.error("Catastrophic and unrecoverable WebGL error. Context lost.");return}e.plot.apply(e,e.plotArgs)};requestAnimationFrame(t)};var YE=["xaxis","yaxis","zaxis"];function ZIt(e,t,r){for(var n=e.fullSceneLayout,i=0;i<3;i++){var a=YE[i],o=a.charAt(0),s=n[a],l=t[o],u=t[o+"calendar"],c=t["_"+o+"length"];if(!lp.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(lp.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 YIt(e,t){for(var r=e.fullSceneLayout,n=r.annotations||[],i=0;i<3;i++)for(var a=YE[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(UIt(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)&&ZIt(this,i,h);YIt(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(oe,_e){return oe._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[YE[o]],u=l.type,u in p?(p[u].acc*=d[o],p[u].count+=1):p[u]={acc:d[o],count:1};var C;if(l.autorange){x[0][o]=1/0,x[1][o]=-1/0;var E=n.glplot.objects,A=n.fullSceneLayout.annotations||[],L=l._name.charAt(0);for(s=0;s<E.length;s++){var _=E[s],k=_.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],k[0][o]/d[o]-M),x[1][o]=Math.max(x[1][o],k[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(C=[x[0][o],x[1][o]],C=XIt(C,l),x[0][o]=C[0],x[1][o]=C[1],l.isReversed()){var z=x[0][o];x[0][o]=x[1][o],x[1][o]=z}}else C=l.range,x[0][o]=l.r2l(C[0]),x[1][o]=l.r2l(C[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 O,V=c.aspectmode;if(V==="cube")O=[1,1,1];else if(V==="manual"){var G=c.aspectratio;O=[G.x,G.y,G.z]}else if(V==="auto"||V==="data"){var Z=[1,1,1];for(o=0;o<3;++o){l=c[YE[o]],u=l.type;var H=p[u];Z[o]=Math.pow(H.acc,1/H.count)/d[o]}V==="data"||Math.max.apply(null,Z)/Math.min.apply(null,Z)<=4?O=Z:O=[1,1,1]}else throw new Error("scene.js aspectRatio was not one of the enumerated types");c.aspectratio.x=f.aspectratio.x=O[0],c.aspectratio.y=f.aspectratio.y=O[1],c.aspectratio.z=f.aspectratio.z=O[2],n.glplot.setAspectratio(c.aspectratio),n.viewInitial.aspectratio||(n.viewInitial.aspectratio={x:c.aspectratio.x,y:c.aspectratio.y,z:c.aspectratio.z}),n.viewInitial.aspectmode||(n.viewInitial.aspectmode=c.aspectmode);var N=c.domain||null,j=t._size||null;if(N&&j){var re=n.container.style;re.position="absolute",re.left=j.l+N.x[0]*j.w+"px",re.top=j.t+(1-N.y[1])*j.h+"px",re.width=j.w*(N.x[1]-N.x[0])+"px",re.height=j.h*(N.y[1]-N.y[0])+"px"}n.glplot.redraw()}};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 KIt(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 JIt(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()),JIt(e.camera)};wv.setViewport=function(e){var t=this,r=e.camera;t.camera.lookAt.apply(this,KIt(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=lp.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=lp.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=lp.nestedProperty(e,t.id+".camera"),a=i.get(),h[t.id+".camera"]=a),c&&(o=t.glplot.getAspectratio(),s=lp.nestedProperty(e,t.id+".aspectratio"),l=s.get(),h[t.id+".aspectratio"]=l),eF.call("_storeDirectGUIEdit",e,r._preGUI,h),u){i.set(n);var d=lp.nestedProperty(r,t.id+".camera");d.set(n)}if(c){s.set(o);var v=lp.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;eF.call("_storeDirectGUIEdit",d,a._preGUI,h),o.up=f,lp.nestedProperty(d,c).set(f)}}else n.keyBindingMode=e;r.fullSceneLayout.hovermode=t};function $It(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 QIt(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(ZE),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),$It(a,n,i),QIt(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(ZE),u};wv.setConvert=function(){for(var e=this,t=0;t<3;t++){var r=e.fullSceneLayout[YE[t]];tF.setConvert(r,e.fullLayout),r.setScale=lp.noop}};wv.make4thDimension=function(){var e=this,t=e.graphDiv,r=t._fullLayout;e._mockAxis={type:"linear",showexponent:"all",exponentformat:"B"},tF.setConvert(e._mockAxis,r)};cIe.exports=uIe});var dIe=ye((u0r,hIe)=>{"use strict";hIe.exports={scene:{valType:"subplotid",dflt:"scene",editType:"calc+clearAxisTypes"}}});var EX=ye((c0r,vIe)=>{"use strict";var e8t=Ca(),bs=Rd(),MX=Ao().extendFlat,t8t=mc().overrideAll;vIe.exports=t8t({visible:bs.visible,showspikes:{valType:"boolean",dflt:!0},spikesides:{valType:"boolean",dflt:!0},spikethickness:{valType:"number",min:0,dflt:2},spikecolor:{valType:"color",dflt:e8t.defaultLine},showbackground:{valType:"boolean",dflt:!1},backgroundcolor:{valType:"color",dflt:"rgba(204, 204, 204, 0.5)"},showaxeslabels:{valType:"boolean",dflt:!0},color:bs.color,categoryorder:bs.categoryorder,categoryarray:bs.categoryarray,title:{text:bs.title.text,font:bs.title.font},type:MX({},bs.type,{values:["-","linear","log","date","category"]}),autotypenumbers:bs.autotypenumbers,autorange:bs.autorange,autorangeoptions:{minallowed:bs.autorangeoptions.minallowed,maxallowed:bs.autorangeoptions.maxallowed,clipmin:bs.autorangeoptions.clipmin,clipmax:bs.autorangeoptions.clipmax,include:bs.autorangeoptions.include,editType:"plot"},rangemode:bs.rangemode,minallowed:bs.minallowed,maxallowed:bs.maxallowed,range:MX({},bs.range,{items:[{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}}],anim:!1}),tickmode:bs.minor.tickmode,nticks:bs.nticks,tick0:bs.tick0,dtick:bs.dtick,tickvals:bs.tickvals,ticktext:bs.ticktext,ticks:bs.ticks,mirror:bs.mirror,ticklen:bs.ticklen,tickwidth:bs.tickwidth,tickcolor:bs.tickcolor,showticklabels:bs.showticklabels,labelalias:bs.labelalias,tickfont:bs.tickfont,tickangle:bs.tickangle,tickprefix:bs.tickprefix,showtickprefix:bs.showtickprefix,ticksuffix:bs.ticksuffix,showticksuffix:bs.showticksuffix,showexponent:bs.showexponent,exponentformat:bs.exponentformat,minexponent:bs.minexponent,separatethousands:bs.separatethousands,tickformat:bs.tickformat,tickformatstops:bs.tickformatstops,hoverformat:bs.hoverformat,showline:bs.showline,linecolor:bs.linecolor,linewidth:bs.linewidth,showgrid:bs.showgrid,gridcolor:MX({},bs.gridcolor,{dflt:"rgb(204, 204, 204)"}),gridwidth:bs.gridwidth,zeroline:bs.zeroline,zerolinecolor:bs.zerolinecolor,zerolinewidth:bs.zerolinewidth},"plot","from-root")});var PX=ye((f0r,pIe)=>{"use strict";var CX=EX(),r8t=kc().attributes,kX=Ao().extendFlat,i8t=Dr().counterRegex;function LX(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"}}pIe.exports={_arrayAttrRegexps:[i8t("scene",".annotations",!0)],bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"plot"},camera:{up:kX(LX(0,0,1),{}),center:kX(LX(0,0,0),{}),eye:kX(LX(1.25,1.25,1.25),{}),projection:{type:{valType:"enumerated",values:["perspective","orthographic"],dflt:"perspective",editType:"calc"},editType:"calc"},editType:"camera"},domain:r8t({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:CX,yaxis:CX,zaxis:CX,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 _Ie=ye((h0r,yIe)=>{"use strict";var n8t=cd().mix,gIe=Dr(),a8t=pl(),o8t=EX(),s8t=wU(),l8t=t4(),mIe=["xaxis","yaxis","zaxis"],u8t=100*136/187;yIe.exports=function(t,r,n){var i,a;function o(u,c){return gIe.coerce(i,a,o8t,u,c)}for(var s=0;s<mIe.length;s++){var l=mIe[s];i=t[l]||{},a=a8t.newContainer(r,l),a._id=l[0]+n.scene,a._name=l,s8t(i,a,o,n),l8t(i,a,o,{font:n.font,letter:l[0],data:n.data,showGrid:!0,noAutotickangles:!0,noMinorloglabels:!0,noTicklabelindex:!0,noTickson:!0,noTicklabelmode:!0,noTicklabelshift:!0,noTicklabelstandoff:!0,noTicklabelstep:!0,noTicklabelposition:!0,noTicklabeloverflow:!0,noInsiderange:!0,noUnifiedhovertitle:!0,bgColor:n.bgColor,calendar:n.calendar},n.fullLayout),o("gridcolor",n8t(a.color,n.bgColor,u8t).toRgbString()),o("title.text",l[0]),a.setScale=gIe.noop,o("showspikes")&&(o("spikesides"),o("spikethickness"),o("spikecolor",a.color)),o("showaxeslabels"),o("showbackground")&&o("backgroundcolor")}}});var TIe=ye((d0r,wIe)=>{"use strict";var c8t=Dr(),f8t=Ca(),h8t=qa(),d8t=k_(),v8t=_Ie(),xIe=PX(),p8t=Id().getSubplotData,bIe="gl3d";wIe.exports=function(t,r,n){var i=r._basePlotModules.length>1;function a(o){if(!i){var s=c8t.validate(t[o],xIe[o]);if(s)return t[o]}}d8t(t,r,n,{type:bIe,attributes:xIe,handleDefaults:g8t,fullLayout:r,font:r.font,fullData:n,getDfltFromLayout:a,autotypenumbersDflt:r.autotypenumbers,paper_bgcolor:r.paper_bgcolor,calendar:r.calendar})};function g8t(e,t,r,n){for(var i=r("bgcolor"),a=f8t.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=p8t(n.fullData,bIe,n.id);v8t(e,t,{font:n.font,scene:n.id,data:f,bgColor:a,calendar:n.calendar,autotypenumbersDflt:n.autotypenumbersDflt,fullLayout:n.fullLayout}),h8t.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(up=>{"use strict";var m8t=mc().overrideAll,y8t=N1(),_8t=fIe(),x8t=Id().getSubplotData,b8t=Dr(),w8t=Wp(),BA="gl3d",IX="scene";up.name=BA;up.attr=IX;up.idRoot=IX;up.idRegex=up.attrRegex=b8t.counterRegex("scene");up.attributes=dIe();up.layoutAttributes=PX();up.baseLayoutAttrOverrides=m8t({hoverlabel:y8t.hoverlabel},"plot","nested");up.supplyLayoutDefaults=TIe();up.plot=function(t){for(var r=t._fullLayout,n=t._fullData,i=r._subplots[BA],a=0;a<i.length;a++){var o=i[a],s=x8t(n,BA,o),l=r[o],u=l.camera,c=l._scene;c||(c=new _8t({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)}};up.clean=function(e,t,r,n){for(var i=n._subplots[BA]||[],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())}};up.toSVG=function(e){for(var t=e._fullLayout,r=t._subplots[BA],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:w8t.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()}};up.cleanId=function(t){if(t.match(/^scene[0-9]*$/)){var r=t.substr(5);return r==="1"&&(r=""),IX+r}};up.updateFx=function(e){for(var t=e._fullLayout,r=t._subplots[BA],n=0;n<r.length;n++){var i=t[r[n]]._scene;i.updateFx(t.dragmode,t.hovermode)}}});var SIe=ye((p0r,AIe)=>{"use strict";AIe.exports={plot:FPe(),attributes:TX(),markerSymbols:KD(),supplyDefaults:UPe(),colorbar:[{container:"marker",min:"cmin",max:"cmax"},{container:"line",min:"cmin",max:"cmax"}],calc:GPe(),moduleType:"trace",name:"scatter3d",basePlotModule:Q_(),categories:["gl3d","symbols","showLegend","scatter-like"],meta:{}}});var EIe=ye((g0r,MIe)=>{"use strict";MIe.exports=SIe()});var KE=ye((m0r,LIe)=>{"use strict";var CIe=Ca(),T8t=Tu(),RX=df().axisHoverFormat,A8t=Qo().hovertemplateAttrs,kIe=Vl(),DX=Ao().extendFlat,S8t=mc().overrideAll;function FX(e){return{valType:"boolean",dflt:!1}}function zX(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:FX("x"),y:FX("y"),z:FX("z")},color:{valType:"color",dflt:CIe.defaultLine},usecolormap:{valType:"boolean",dflt:!1},width:{valType:"number",min:1,max:16,dflt:2},highlight:{valType:"boolean",dflt:!0},highlightcolor:{valType:"color",dflt:CIe.defaultLine},highlightwidth:{valType:"number",min:1,max:16,dflt:2}}}var OX=LIe.exports=S8t(DX({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:A8t(),xhoverformat:RX("x"),yhoverformat:RX("y"),zhoverformat:RX("z"),connectgaps:{valType:"boolean",dflt:!1,editType:"calc"},surfacecolor:{valType:"data_array"}},T8t("",{colorAttr:"z or surfacecolor",showScaleDflt:!0,autoColorDflt:!1,editTypeOverride:"calc"}),{contours:{x:zX("x"),y:zX("y"),z:zX("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:DX({},kIe.hoverinfo),showlegend:DX({},kIe.showlegend,{dflt:!1})}),"calc","nested");OX.x.editType=OX.y.editType=OX.z.editType="calc+clearAxisTypes"});var BX=ye((y0r,RIe)=>{"use strict";var M8t=qa(),PIe=Dr(),E8t=Jh(),C8t=KE(),qX=.1;function k8t(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 L8t(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 P8t(e,t,r,n){var i,a;function o(b,p){return PIe.coerce(e,t,C8t,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)&&PIe.isArrayOrTypedArray(s[0])?u.length:u[0].length,t._ylength=u.length;var c=M8t.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")}E8t(e,t,n,o,{prefix:"",cLetter:"c"}),IIe(e,t,n,o),t._length=null}function IIe(e,t,r,n){var i=n("opacityscale");i==="max"?t.opacityscale=[[0,qX],[1,1]]:i==="min"?t.opacityscale=[[0,1],[1,qX]]:i==="extremes"?t.opacityscale=k8t(1,qX):L8t(i)||(t.opacityscale=void 0)}RIe.exports={supplyDefaults:P8t,opacityscaleDefaults:IIe}});var zIe=ye((_0r,FIe)=>{"use strict";var DIe=Fv();FIe.exports=function(t,r){r.surfacecolor?DIe(t,r,{vals:r.surfacecolor,containerStr:"",cLetter:"c"}):DIe(t,r,{vals:r.z,containerStr:"",cLetter:"c"})}});var VIe=ye((x0r,UIe)=>{"use strict";var I8t=Od().gl_surface3d,NA=Od().ndarray,R8t=Od().ndarray_linear_interpolate.d2,D8t=i8(),F8t=n8(),JE=Dr().isArrayOrTypedArray,z8t=$y().parseColorScale,OIe=Jy(),O8t=tc().extractOpts;function BIe(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=BIe.prototype;Jg.getXat=function(e,t,r,n){var i=JE(this.data.x)?JE(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=JE(this.data.y)?JE(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 JE(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 q8t(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 UA=[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 B8t(e,t){if(e<t)return 0;for(var r=0;Math.floor(e%t)===0;)e/=t,r++;return r}function NX(e){for(var t=[],r=0;r<UA.length;r++){var n=UA[r];t.push(B8t(e,n))}return t}function N8t(e){for(var t=NX(e),r=e,n=0;n<UA.length;n++)if(t[n]>0){r=UA[n];break}return r}function U8t(e,t){if(!(e<1||t<1)){for(var r=NX(e),n=NX(t),i=1,a=0;a<UA.length;a++)i*=Math.pow(UA[a],Math.max(r[a],n[a]));return i}}function V8t(e){if(e.length!==0){for(var t=1,r=0;r<e.length;r++)t=U8t(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 NIe=[1,2,4,6,12,24,36,48,60,120,180,240,360,720,840,1260],qIe=NIe[9],rF=NIe[13];Jg.estimateScale=function(e,t){for(var r=t===0?this.calcXnums(e):this.calcYnums(e),n=1+V8t(r);n<qIe;)n*=2;for(;n>rF;)n--,n/=N8t(n),n++,n<qIe&&(n=rF);var i=Math.round(n/e);return i>1?i:1};function G8t(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 H8t(e,t,r){return j8t(e,t,G8t,r),e}function j8t(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,R8t(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=NA(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=NA(new Float32Array(a*o),[a,o]);H8t(h,u,c),e[f]=h}};function W8t(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],W8t(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=z8t(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=F8t(d[2]),D8t(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=[NA(new Float32Array(o*s),[o,s]),NA(new Float32Array(o*s),[o,s]),NA(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=O8t(e);if(x.intensityBounds=[b.min,b.max],e.surfacecolor){var p=NA(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];(rF<v[0].shape[0]||rF<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 C=[!0,!0,!0],E=["x","y","z"];for(u=0;u<3;++u){var A=e.contours[E[u]];C[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]=OIe(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]=OIe(A.highlightcolor),x.dynamicWidth[u]=A.highlightwidth))}q8t(i)&&(x.vertexColor=!0),x.objectOffset=this.objectOffset,x.coords=v,n.update(x),n.visible=e.visible,n.enableDynamic=C,n.enableHighlight=C,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 X8t(e,t){var r=e.glplot.gl,n=I8t({gl:r}),i=new BIe(e,n,t.uid);return n._trace=i,i.update(t),e.glplot.add(n),i}UIe.exports=X8t});var HIe=ye((b0r,GIe)=>{"use strict";GIe.exports={attributes:KE(),supplyDefaults:BX().supplyDefaults,colorbar:{min:"cmin",max:"cmax"},calc:zIe(),plot:VIe(),moduleType:"trace",name:"surface",basePlotModule:Q_(),categories:["gl3d","2dMap","showLegend"],meta:{}}});var WIe=ye((w0r,jIe)=>{"use strict";jIe.exports=HIe()});var VA=ye((T0r,ZIe)=>{"use strict";var Z8t=Tu(),UX=df().axisHoverFormat,Y8t=Qo().hovertemplateAttrs,ex=KE(),XIe=Vl(),tx=Ao().extendFlat;ZIe.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:Y8t({editType:"calc"}),xhoverformat:UX("x"),yhoverformat:UX("y"),zhoverformat:UX("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"}},Z8t("",{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({},XIe.hoverinfo,{editType:"calc"}),showlegend:tx({},XIe.showlegend,{dflt:!1})})});var nF=ye((A0r,KIe)=>{"use strict";var K8t=Tu(),iF=df().axisHoverFormat,J8t=Qo().hovertemplateAttrs,$E=VA(),YIe=Vl(),VX=Ao().extendFlat,$8t=mc().overrideAll;function GX(e){return{show:{valType:"boolean",dflt:!1},locations:{valType:"data_array",dflt:[]},fill:{valType:"number",min:0,max:1,dflt:1}}}function HX(e){return{show:{valType:"boolean",dflt:!0},fill:{valType:"number",min:0,max:1,dflt:1}}}var GA=KIe.exports=$8t(VX({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:GX("x"),y:GX("y"),z:GX("z")},caps:{x:HX("x"),y:HX("y"),z:HX("z")},text:{valType:"string",dflt:"",arrayOk:!0},hovertext:{valType:"string",dflt:"",arrayOk:!0},hovertemplate:J8t(),xhoverformat:iF("x"),yhoverformat:iF("y"),zhoverformat:iF("z"),valuehoverformat:iF("value",1),showlegend:VX({},YIe.showlegend,{dflt:!1})},K8t("",{colorAttr:"`value`",showScaleDflt:!0,editTypeOverride:"calc"}),{opacity:$E.opacity,lightposition:$E.lightposition,lighting:$E.lighting,flatshading:$E.flatshading,contour:$E.contour,hoverinfo:VX({},YIe.hoverinfo)}),"calc","nested");GA.flatshading.dflt=!0;GA.lighting.facenormalsepsilon.dflt=0;GA.x.editType=GA.y.editType=GA.z.editType=GA.value.editType="calc+clearAxisTypes"});var jX=ye((S0r,$Ie)=>{"use strict";var Q8t=Dr(),eRt=qa(),tRt=nF(),rRt=Jh();function iRt(e,t,r,n){function i(a,o){return Q8t.coerce(e,t,tRt,a,o)}JIe(e,t,r,n,i)}function JIe(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=eRt.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 C="slices."+x,E=i(C+".show");E&&(i(C+".fill"),i(C+".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)}),rRt(e,t,n,i,{prefix:"",cLetter:"c"}),t._length=null}$Ie.exports={supplyDefaults:iRt,supplyIsoDefaults:JIe}});var aF=ye((M0r,e8e)=>{"use strict";var XX=Dr(),nRt=Fv();function aRt(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=Hm(t.u,t._len),t._v=Hm(t.v,t._len),t._w=Hm(t.w,t._len),t._x=Hm(t.x,t._len),t._y=Hm(t.y,t._len),t._z=Hm(t.z,t._len);var r=QIe(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=Hm(t.starts.x||[]),a=Hm(t.starts.y||[]),o=Hm(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(nRt(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 QIe(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,C,E,A,L,_,k;for(i&&(C=t[0],A=r[0],_=n[0]),i>1&&(E=t[i-1],L=r[i-1],k=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]!==C&&(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=WX(e._x),g=WX(e._y),P=WX(e._z);v=v.replace("x",(C>E?"-":"+")+"x"),v=v.replace("y",(A>L?"-":"+")+"y"),v=v.replace("z",(_>k?"-":"+")+"z");var T=function(){i=0,M=[],g=[],P=[]};(!i||i<M.length*g.length*P.length)&&T();var z=function(De){return De==="x"?t:De==="y"?r:n},O=function(De){return De==="x"?M:De==="y"?g:P},V=function(De){return De[i-1]<De[0]?-1:1},G=z(v[1]),Z=z(v[3]),H=z(v[5]),N=O(v[1]).length,j=O(v[3]).length,re=O(v[5]).length,oe=!1,_e=function(De,Pe,ge){return N*(j*De+Pe)+ge},Me=V(z(v[1])),ke=V(z(v[3])),me=V(z(v[5]));for(a=0;a<re-1;a++){for(o=0;o<j-1;o++){for(s=0;s<N-1;s++){var ie=_e(a,o,s),Se=_e(a,o,s+1),Le=_e(a,o+1,s),Ae=_e(a+1,o,s);if((!(G[ie]*Me<G[Se]*Me)||!(Z[ie]*ke<Z[Le]*ke)||!(H[ie]*me<H[Ae]*me))&&(oe=!0),oe)break}if(oe)break}if(oe)break}return oe&&(XX.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 WX(e){return XX.distinctVals(e).vals}function Hm(e,t){if(t===void 0&&(t=e.length),XX.isTypedArray(e))return e.subarray(0,t);for(var r=[],n=0;n<t;n++)r[n]=+e[n];return r}e8e.exports={calc:aRt,filter:Hm,processGrid:QIe}});var ZX=ye((E0r,t8e)=>{"use strict";var oRt=Fv(),sRt=aF().processGrid,oF=aF().filter;t8e.exports=function(t,r){r._len=Math.min(r.x.length,r.y.length,r.z.length,r.value.length),r._x=oF(r.x,r._len),r._y=oF(r.y,r._len),r._z=oF(r.z,r._len),r._value=oF(r.value,r._len);var n=sRt(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,oRt(t,r,{vals:[r._vMin,r._vMax],containerStr:"",cLetter:"c"})}});var HA=ye((C0r,r8e)=>{"use strict";r8e.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 sF=ye((k0r,o8e)=>{"use strict";var lRt=Od().gl_mesh3d,uRt=$y().parseColorScale,cRt=Dr().isArrayOrTypedArray,fRt=Jy(),hRt=tc().extractOpts,i8e=HA(),QE=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 n8e(e,t,r){this.scene=e,this.uid=r,this.mesh=t,this.name="",this.data=null,this.showContour=!1}var YX=n8e.prototype;YX.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=QE(r,this.data._Xs).id,l=QE(n,this.data._Ys).id,u=QE(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 cRt(f)&&f[c]!==void 0?e.textLabel=f[c]:f&&(e.textLabel=f),!0}};YX.update=function(e){var t=this.scene,r=t.fullSceneLayout;this.data=a8e(e);function n(l,u,c,f){return u.map(function(h){return l.d2l(h,0,f)*c})}var i=i8e(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=i8e(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:fRt(e.contour.color).slice(0,3),contourWidth:e.contour.width,useFacetNormals:e.flatshading},s=hRt(e);o.vertexIntensity=e._meshIntensity,o.vertexIntensityBounds=[s.min,s.max],o.colormap=uRt(e),this.mesh.update(o)};YX.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()};var dRt=["xyz","xzy","yxz","yzx","zxy","zyx"];function a8e(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=dRt.indexOf(e._gridFill.replace(/-/g,"").replace(/\+/g,"")),p=function(er,Ut,Ft){switch(b){case 5:return Ft+x*Ut+x*v*er;case 4:return Ft+x*er+x*d*Ut;case 3:return Ut+v*Ft+v*x*er;case 2:return Ut+v*er+v*d*Ft;case 1:return er+d*Ft+d*x*Ut;default:return er+d*Ut+d*v*Ft}},C=e._minValues,E=e._maxValues,A=e._vMin,L=e._vMax,_,k,M,g;function P(er,Ut,Ft){for(var bt=g.length,yt=u;yt<bt;yt++)if(er===_[yt]&&Ut===k[yt]&&Ft===M[yt])return yt;return-1}function T(){u=l}function z(){_=[],k=[],M=[],g=[],l=0,T()}function O(er,Ut,Ft,bt){return _.push(er),k.push(Ut),M.push(Ft),g.push(bt),l++,l-1}function V(er,Ut,Ft){return e._meshI.push(er),e._meshJ.push(Ut),e._meshK.push(Ft),s++,s-1}function G(er,Ut,Ft){for(var bt=[],yt=0;yt<er.length;yt++)bt[yt]=(er[yt]+Ut[yt]+Ft[yt])/3;return bt}function Z(er,Ut,Ft){for(var bt=[],yt=0;yt<er.length;yt++)bt[yt]=er[yt]*(1-Ft)+Ft*Ut[yt];return bt}var H;function N(er){H=er}function j(er,Ut){var Ft=er[0],bt=er[1],yt=er[2],Yt=G(Ft,bt,yt),lr=Math.sqrt(1-H),Tr=Z(Yt,Ft,lr),Rr=Z(Yt,bt,lr),ei=Z(Yt,yt,lr),Wr=Ut[0],Ur=Ut[1],dt=Ut[2];return{xyzv:[[Ft,bt,Rr],[Rr,Tr,Ft],[bt,yt,ei],[ei,Rr,bt],[yt,Ft,Tr],[Tr,ei,yt]],abc:[[Wr,Ur,-1],[-1,-1,Wr],[Ur,dt,-1],[-1,-1,Ur],[dt,Wr,-1],[-1,-1,dt]]}}function re(er,Ut){return er==="all"||er===null?!0:er.indexOf(Ut)>-1}function oe(er,Ut){return er===null?Ut:er}function _e(er,Ut,Ft){T();var bt=[Ut],yt=[Ft];if(H>=1)bt=[Ut],yt=[Ft];else if(H>0){var Yt=j(Ut,Ft);bt=Yt.xyzv,yt=Yt.abc}for(var lr=0;lr<bt.length;lr++){Ut=bt[lr],Ft=yt[lr];for(var Tr=[],Rr=0;Rr<3;Rr++){var ei=Ut[Rr][0],Wr=Ut[Rr][1],Ur=Ut[Rr][2],dt=Ut[Rr][3],Ge=Ft[Rr]>-1?Ft[Rr]:P(ei,Wr,Ur);Ge>-1?Tr[Rr]=Ge:Tr[Rr]=O(ei,Wr,Ur,oe(er,dt))}V(Tr[0],Tr[1],Tr[2])}}function Me(er,Ut,Ft){var bt=function(yt,Yt,lr){_e(er,[Ut[yt],Ut[Yt],Ut[lr]],[Ft[yt],Ft[Yt],Ft[lr]])};bt(0,1,2),bt(2,3,0)}function ke(er,Ut,Ft){var bt=function(yt,Yt,lr){_e(er,[Ut[yt],Ut[Yt],Ut[lr]],[Ft[yt],Ft[Yt],Ft[lr]])};bt(0,1,2),bt(3,0,1),bt(2,3,0),bt(1,2,3)}function me(er,Ut,Ft,bt){var yt=er[3];yt<Ft&&(yt=Ft),yt>bt&&(yt=bt);for(var Yt=(er[3]-yt)/(er[3]-Ut[3]+1e-9),lr=[],Tr=0;Tr<4;Tr++)lr[Tr]=(1-Yt)*er[Tr]+Yt*Ut[Tr];return lr}function ie(er,Ut,Ft){return er>=Ut&&er<=Ft}function Se(er){var Ut=.001*(L-A);return er>=A-Ut&&er<=L+Ut}function Le(er){for(var Ut=[],Ft=0;Ft<4;Ft++){var bt=er[Ft];Ut.push([e._x[bt],e._y[bt],e._z[bt],e._value[bt]])}return Ut}var Ae=3;function De(er,Ut,Ft,bt,yt,Yt){Yt||(Yt=1),Ft=[-1,-1,-1];var lr=!1,Tr=[ie(Ut[0][3],bt,yt),ie(Ut[1][3],bt,yt),ie(Ut[2][3],bt,yt)];if(!Tr[0]&&!Tr[1]&&!Tr[2])return!1;var Rr=function(Wr,Ur,dt){return Se(Ur[0][3])&&Se(Ur[1][3])&&Se(Ur[2][3])?(_e(Wr,Ur,dt),!0):Yt<Ae?De(Wr,Ur,dt,A,L,++Yt):!1};if(Tr[0]&&Tr[1]&&Tr[2])return Rr(er,Ut,Ft)||lr;var ei=!1;return[[0,1,2],[2,0,1],[1,2,0]].forEach(function(Wr){if(Tr[Wr[0]]&&Tr[Wr[1]]&&!Tr[Wr[2]]){var Ur=Ut[Wr[0]],dt=Ut[Wr[1]],Ge=Ut[Wr[2]],Je=me(Ge,Ur,bt,yt),je=me(Ge,dt,bt,yt);lr=Rr(er,[je,Je,Ur],[-1,-1,Ft[Wr[0]]])||lr,lr=Rr(er,[Ur,dt,je],[Ft[Wr[0]],Ft[Wr[1]],-1])||lr,ei=!0}}),ei||[[0,1,2],[1,2,0],[2,0,1]].forEach(function(Wr){if(Tr[Wr[0]]&&!Tr[Wr[1]]&&!Tr[Wr[2]]){var Ur=Ut[Wr[0]],dt=Ut[Wr[1]],Ge=Ut[Wr[2]],Je=me(dt,Ur,bt,yt),je=me(Ge,Ur,bt,yt);lr=Rr(er,[je,Je,Ur],[-1,-1,Ft[Wr[0]]])||lr,ei=!0}}),lr}function Pe(er,Ut,Ft,bt){var yt=!1,Yt=Le(Ut),lr=[ie(Yt[0][3],Ft,bt),ie(Yt[1][3],Ft,bt),ie(Yt[2][3],Ft,bt),ie(Yt[3][3],Ft,bt)];if(!lr[0]&&!lr[1]&&!lr[2]&&!lr[3])return yt;if(lr[0]&&lr[1]&&lr[2]&&lr[3])return o&&(yt=ke(er,Yt,Ut)||yt),yt;var Tr=!1;return[[0,1,2,3],[3,0,1,2],[2,3,0,1],[1,2,3,0]].forEach(function(Rr){if(lr[Rr[0]]&&lr[Rr[1]]&&lr[Rr[2]]&&!lr[Rr[3]]){var ei=Yt[Rr[0]],Wr=Yt[Rr[1]],Ur=Yt[Rr[2]],dt=Yt[Rr[3]];if(o)yt=_e(er,[ei,Wr,Ur],[Ut[Rr[0]],Ut[Rr[1]],Ut[Rr[2]]])||yt;else{var Ge=me(dt,ei,Ft,bt),Je=me(dt,Wr,Ft,bt),je=me(dt,Ur,Ft,bt);yt=_e(null,[Ge,Je,je],[-1,-1,-1])||yt}Tr=!0}}),Tr||([[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(Rr){if(lr[Rr[0]]&&lr[Rr[1]]&&!lr[Rr[2]]&&!lr[Rr[3]]){var ei=Yt[Rr[0]],Wr=Yt[Rr[1]],Ur=Yt[Rr[2]],dt=Yt[Rr[3]],Ge=me(Ur,ei,Ft,bt),Je=me(Ur,Wr,Ft,bt),je=me(dt,Wr,Ft,bt),$e=me(dt,ei,Ft,bt);o?(yt=_e(er,[ei,$e,Ge],[Ut[Rr[0]],-1,-1])||yt,yt=_e(er,[Wr,Je,je],[Ut[Rr[1]],-1,-1])||yt):yt=Me(null,[Ge,Je,je,$e],[-1,-1,-1,-1])||yt,Tr=!0}}),Tr)||[[0,1,2,3],[1,2,3,0],[2,3,0,1],[3,0,1,2]].forEach(function(Rr){if(lr[Rr[0]]&&!lr[Rr[1]]&&!lr[Rr[2]]&&!lr[Rr[3]]){var ei=Yt[Rr[0]],Wr=Yt[Rr[1]],Ur=Yt[Rr[2]],dt=Yt[Rr[3]],Ge=me(Wr,ei,Ft,bt),Je=me(Ur,ei,Ft,bt),je=me(dt,ei,Ft,bt);o?(yt=_e(er,[ei,Ge,Je],[Ut[Rr[0]],-1,-1])||yt,yt=_e(er,[ei,Je,je],[Ut[Rr[0]],-1,-1])||yt,yt=_e(er,[ei,je,Ge],[Ut[Rr[0]],-1,-1])||yt):yt=_e(null,[Ge,Je,je],[-1,-1,-1])||yt,Tr=!0}}),yt}function ge(er,Ut,Ft,bt,yt,Yt,lr,Tr,Rr,ei,Wr){var Ur=!1;return a&&(re(er,"A")&&(Ur=Pe(null,[Ut,Ft,bt,Yt],ei,Wr)||Ur),re(er,"B")&&(Ur=Pe(null,[Ft,bt,yt,Rr],ei,Wr)||Ur),re(er,"C")&&(Ur=Pe(null,[Ft,Yt,lr,Rr],ei,Wr)||Ur),re(er,"D")&&(Ur=Pe(null,[bt,Yt,Tr,Rr],ei,Wr)||Ur),re(er,"E")&&(Ur=Pe(null,[Ft,bt,Yt,Rr],ei,Wr)||Ur)),o&&(Ur=Pe(er,[Ft,bt,Yt,Rr],ei,Wr)||Ur),Ur}function Fe(er,Ut,Ft,bt,yt,Yt,lr,Tr){return[Tr[0]===!0?!0:De(er,Le([Ut,Ft,bt]),[Ut,Ft,bt],Yt,lr),Tr[1]===!0?!0:De(er,Le([bt,yt,Ut]),[bt,yt,Ut],Yt,lr)]}function ce(er,Ut,Ft,bt,yt,Yt,lr,Tr,Rr){return Tr?Fe(er,Ut,Ft,yt,bt,Yt,lr,Rr):Fe(er,Ft,yt,bt,Ut,Yt,lr,Rr)}function Ze(er,Ut,Ft,bt,yt,Yt,lr){var Tr=!1,Rr,ei,Wr,Ur,dt=function(){Tr=De(er,[Rr,ei,Wr],[-1,-1,-1],yt,Yt)||Tr,Tr=De(er,[Wr,Ur,Rr],[-1,-1,-1],yt,Yt)||Tr},Ge=lr[0],Je=lr[1],je=lr[2];return Ge&&(Rr=Z(Le([p(Ut,Ft-0,bt-0)])[0],Le([p(Ut-1,Ft-0,bt-0)])[0],Ge),ei=Z(Le([p(Ut,Ft-0,bt-1)])[0],Le([p(Ut-1,Ft-0,bt-1)])[0],Ge),Wr=Z(Le([p(Ut,Ft-1,bt-1)])[0],Le([p(Ut-1,Ft-1,bt-1)])[0],Ge),Ur=Z(Le([p(Ut,Ft-1,bt-0)])[0],Le([p(Ut-1,Ft-1,bt-0)])[0],Ge),dt()),Je&&(Rr=Z(Le([p(Ut-0,Ft,bt-0)])[0],Le([p(Ut-0,Ft-1,bt-0)])[0],Je),ei=Z(Le([p(Ut-0,Ft,bt-1)])[0],Le([p(Ut-0,Ft-1,bt-1)])[0],Je),Wr=Z(Le([p(Ut-1,Ft,bt-1)])[0],Le([p(Ut-1,Ft-1,bt-1)])[0],Je),Ur=Z(Le([p(Ut-1,Ft,bt-0)])[0],Le([p(Ut-1,Ft-1,bt-0)])[0],Je),dt()),je&&(Rr=Z(Le([p(Ut-0,Ft-0,bt)])[0],Le([p(Ut-0,Ft-0,bt-1)])[0],je),ei=Z(Le([p(Ut-0,Ft-1,bt)])[0],Le([p(Ut-0,Ft-1,bt-1)])[0],je),Wr=Z(Le([p(Ut-1,Ft-1,bt)])[0],Le([p(Ut-1,Ft-1,bt-1)])[0],je),Ur=Z(Le([p(Ut-1,Ft-0,bt)])[0],Le([p(Ut-1,Ft-0,bt-1)])[0],je),dt()),Tr}function ct(er,Ut,Ft,bt,yt,Yt,lr,Tr,Rr,ei,Wr,Ur){var dt=er;return Ur?(a&&er==="even"&&(dt=null),ge(dt,Ut,Ft,bt,yt,Yt,lr,Tr,Rr,ei,Wr)):(a&&er==="odd"&&(dt=null),ge(dt,Rr,Tr,lr,Yt,yt,bt,Ft,Ut,ei,Wr))}function pt(er,Ut,Ft,bt,yt){for(var Yt=[],lr=0,Tr=0;Tr<Ut.length;Tr++)for(var Rr=Ut[Tr],ei=1;ei<x;ei++)for(var Wr=1;Wr<v;Wr++)Yt.push(ce(er,p(Rr,Wr-1,ei-1),p(Rr,Wr-1,ei),p(Rr,Wr,ei-1),p(Rr,Wr,ei),Ft,bt,(Rr+Wr+ei)%2,yt&&yt[lr]?yt[lr]:[])),lr++;return Yt}function Wt(er,Ut,Ft,bt,yt){for(var Yt=[],lr=0,Tr=0;Tr<Ut.length;Tr++)for(var Rr=Ut[Tr],ei=1;ei<d;ei++)for(var Wr=1;Wr<x;Wr++)Yt.push(ce(er,p(ei-1,Rr,Wr-1),p(ei,Rr,Wr-1),p(ei-1,Rr,Wr),p(ei,Rr,Wr),Ft,bt,(ei+Rr+Wr)%2,yt&&yt[lr]?yt[lr]:[])),lr++;return Yt}function st(er,Ut,Ft,bt,yt){for(var Yt=[],lr=0,Tr=0;Tr<Ut.length;Tr++)for(var Rr=Ut[Tr],ei=1;ei<v;ei++)for(var Wr=1;Wr<d;Wr++)Yt.push(ce(er,p(Wr-1,ei-1,Rr),p(Wr-1,ei,Rr),p(Wr,ei-1,Rr),p(Wr,ei,Rr),Ft,bt,(Wr+ei+Rr)%2,yt&&yt[lr]?yt[lr]:[])),lr++;return Yt}function lt(er,Ut,Ft){for(var bt=1;bt<x;bt++)for(var yt=1;yt<v;yt++)for(var Yt=1;Yt<d;Yt++)ct(er,p(Yt-1,yt-1,bt-1),p(Yt-1,yt-1,bt),p(Yt-1,yt,bt-1),p(Yt-1,yt,bt),p(Yt,yt-1,bt-1),p(Yt,yt-1,bt),p(Yt,yt,bt-1),p(Yt,yt,bt),Ut,Ft,(Yt+yt+bt)%2)}function Gt(er,Ut,Ft){o=!0,lt(er,Ut,Ft),o=!1}function Nt(er,Ut,Ft){a=!0,lt(er,Ut,Ft),a=!1}function $t(er,Ut,Ft,bt,yt,Yt){for(var lr=[],Tr=0,Rr=0;Rr<Ut.length;Rr++)for(var ei=Ut[Rr],Wr=1;Wr<x;Wr++)for(var Ur=1;Ur<v;Ur++)lr.push(Ze(er,ei,Ur,Wr,Ft,bt,yt[Rr],Yt&&Yt[Tr]?Yt[Tr]:[])),Tr++;return lr}function sr(er,Ut,Ft,bt,yt,Yt){for(var lr=[],Tr=0,Rr=0;Rr<Ut.length;Rr++)for(var ei=Ut[Rr],Wr=1;Wr<d;Wr++)for(var Ur=1;Ur<x;Ur++)lr.push(Ze(er,Wr,ei,Ur,Ft,bt,yt[Rr],Yt&&Yt[Tr]?Yt[Tr]:[])),Tr++;return lr}function wr(er,Ut,Ft,bt,yt,Yt){for(var lr=[],Tr=0,Rr=0;Rr<Ut.length;Rr++)for(var ei=Ut[Rr],Wr=1;Wr<v;Wr++)for(var Ur=1;Ur<d;Ur++)lr.push(Ze(er,Ur,Wr,ei,Ft,bt,yt[Rr],Yt&&Yt[Tr]?Yt[Tr]:[])),Tr++;return lr}function ur(er,Ut){for(var Ft=[],bt=er;bt<Ut;bt++)Ft.push(bt);return Ft}function Qe(){for(var er=0;er<d;er++)for(var Ut=0;Ut<v;Ut++)for(var Ft=0;Ft<x;Ft++){var bt=p(er,Ut,Ft);O(e._x[bt],e._y[bt],e._z[bt],e._value[bt])}}function Et(){z(),Qe();var er=null;if(r&&i&&(N(i),Gt(er,A,L)),t&&n){N(n);for(var Ut=e.surface.pattern,Ft=e.surface.count,bt=0;bt<Ft;bt++){var yt=Ft===1?.5:bt/(Ft-1),Yt=(1-yt)*A+yt*L,lr=Math.abs(Yt-C),Tr=Math.abs(Yt-E),Rr=lr>Tr?[C,Yt]:[Yt,E];Nt(Ut,Rr[0],Rr[1])}}var ei=[[Math.min(A,E),Math.max(A,E)],[Math.min(C,L),Math.max(C,L)]];["x","y","z"].forEach(function(Wr){for(var Ur=[],dt=0;dt<ei.length;dt++){var Ge=0,Je=ei[dt][0],je=ei[dt][1],$e=e.slices[Wr];if($e.show&&$e.fill){N($e.fill);var wt=[],Ie=[],xe=[];if($e.locations.length)for(var Ce=0;Ce<$e.locations.length;Ce++){var vt=QE($e.locations[Ce],Wr==="x"?c:Wr==="y"?f:h);vt.distRatio===0?wt.push(vt.id):vt.id>0&&(Ie.push(vt.id),Wr==="x"?xe.push([vt.distRatio,0,0]):Wr==="y"?xe.push([0,vt.distRatio,0]):xe.push([0,0,vt.distRatio]))}else Wr==="x"?wt=ur(1,d-1):Wr==="y"?wt=ur(1,v-1):wt=ur(1,x-1);Ie.length>0&&(Wr==="x"?Ur[Ge]=$t(er,Ie,Je,je,xe,Ur[Ge]):Wr==="y"?Ur[Ge]=sr(er,Ie,Je,je,xe,Ur[Ge]):Ur[Ge]=wr(er,Ie,Je,je,xe,Ur[Ge]),Ge++),wt.length>0&&(Wr==="x"?Ur[Ge]=pt(er,wt,Je,je,Ur[Ge]):Wr==="y"?Ur[Ge]=Wt(er,wt,Je,je,Ur[Ge]):Ur[Ge]=st(er,wt,Je,je,Ur[Ge]),Ge++)}var nr=e.caps[Wr];nr.show&&nr.fill&&(N(nr.fill),Wr==="x"?Ur[Ge]=pt(er,[0,d-1],Je,je,Ur[Ge]):Wr==="y"?Ur[Ge]=Wt(er,[0,v-1],Je,je,Ur[Ge]):Ur[Ge]=st(er,[0,x-1],Je,je,Ur[Ge]),Ge++)}}),s===0&&z(),e._meshX=_,e._meshY=k,e._meshZ=M,e._meshIntensity=g,e._Xs=c,e._Ys=f,e._Zs=h}return Et(),e}function vRt(e,t){var r=e.glplot.gl,n=lRt({gl:r}),i=new n8e(e,n,t.uid);return n._trace=i,i.update(t),e.glplot.add(n),i}o8e.exports={findNearestOnAxis:QE,generateIsoMeshes:a8e,createIsosurfaceTrace:vRt}});var l8e=ye((L0r,s8e)=>{"use strict";s8e.exports={attributes:nF(),supplyDefaults:jX().supplyDefaults,calc:ZX(),colorbar:{min:"cmin",max:"cmax"},plot:sF().createIsosurfaceTrace,moduleType:"trace",name:"isosurface",basePlotModule:Q_(),categories:["gl3d","showLegend"],meta:{}}});var c8e=ye((P0r,u8e)=>{"use strict";u8e.exports=l8e()});var JX=ye((I0r,h8e)=>{"use strict";var pRt=Tu(),Dh=nF(),gRt=KE(),f8e=Vl(),KX=Ao().extendFlat,mRt=mc().overrideAll,lF=h8e.exports=mRt(KX({x:Dh.x,y:Dh.y,z:Dh.z,value:Dh.value,isomin:Dh.isomin,isomax:Dh.isomax,surface:Dh.surface,spaceframe:{show:{valType:"boolean",dflt:!1},fill:{valType:"number",min:0,max:1,dflt:1}},slices:Dh.slices,caps:Dh.caps,text:Dh.text,hovertext:Dh.hovertext,xhoverformat:Dh.xhoverformat,yhoverformat:Dh.yhoverformat,zhoverformat:Dh.zhoverformat,valuehoverformat:Dh.valuehoverformat,hovertemplate:Dh.hovertemplate},pRt("",{colorAttr:"`value`",showScaleDflt:!0,editTypeOverride:"calc"}),{colorbar:Dh.colorbar,opacity:Dh.opacity,opacityscale:gRt.opacityscale,lightposition:Dh.lightposition,lighting:Dh.lighting,flatshading:Dh.flatshading,contour:Dh.contour,hoverinfo:KX({},f8e.hoverinfo),showlegend:KX({},f8e.showlegend,{dflt:!1})}),"calc","nested");lF.x.editType=lF.y.editType=lF.z.editType=lF.value.editType="calc+clearAxisTypes"});var v8e=ye((R0r,d8e)=>{"use strict";var yRt=Dr(),_Rt=JX(),xRt=jX().supplyIsoDefaults,bRt=BX().opacityscaleDefaults;d8e.exports=function(t,r,n,i){function a(o,s){return yRt.coerce(t,r,_Rt,o,s)}xRt(t,r,n,i,a),bRt(t,r,i,a)}});var y8e=ye((D0r,m8e)=>{"use strict";var wRt=Od().gl_mesh3d,TRt=$y().parseColorScale,ARt=Dr().isArrayOrTypedArray,SRt=Jy(),MRt=tc().extractOpts,p8e=HA(),$X=sF().findNearestOnAxis,ERt=sF().generateIsoMeshes;function g8e(e,t,r){this.scene=e,this.uid=r,this.mesh=t,this.name="",this.data=null,this.showContour=!1}var QX=g8e.prototype;QX.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=$X(r,this.data._Xs).id,l=$X(n,this.data._Ys).id,u=$X(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 ARt(f)&&f[c]!==void 0?e.textLabel=f[c]:f&&(e.textLabel=f),!0}};QX.update=function(e){var t=this.scene,r=t.fullSceneLayout;this.data=ERt(e);function n(l,u,c,f){return u.map(function(h){return l.d2l(h,0,f)*c})}var i=p8e(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=p8e(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:SRt(e.contour.color).slice(0,3),contourWidth:e.contour.width,useFacetNormals:e.flatshading},s=MRt(e);o.vertexIntensity=e._meshIntensity,o.vertexIntensityBounds=[s.min,s.max],o.colormap=TRt(e),this.mesh.update(o)};QX.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()};function CRt(e,t){var r=e.glplot.gl,n=wRt({gl:r}),i=new g8e(e,n,t.uid);return n._trace=i,i.update(t),e.glplot.add(n),i}m8e.exports=CRt});var x8e=ye((F0r,_8e)=>{"use strict";_8e.exports={attributes:JX(),supplyDefaults:v8e(),calc:ZX(),colorbar:{min:"cmin",max:"cmax"},plot:y8e(),moduleType:"trace",name:"volume",basePlotModule:Q_(),categories:["gl3d","showLegend"],meta:{}}});var w8e=ye((z0r,b8e)=>{"use strict";b8e.exports=x8e()});var S8e=ye((O0r,A8e)=>{"use strict";var kRt=qa(),T8e=Dr(),LRt=Jh(),PRt=VA();A8e.exports=function(t,r,n,i){function a(c,f){return T8e.coerce(t,r,PRt,c,f)}function o(c){var f=c.map(function(h){var d=a(h);return d&&T8e.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=kRt.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"),LRt(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 E8e=ye((q0r,M8e)=>{"use strict";var IRt=Fv();M8e.exports=function(t,r){r.intensity&&IRt(t,r,{vals:r.intensity,containerStr:"",cLetter:"c"})}});var I8e=ye((B0r,P8e)=>{"use strict";var RRt=Od().gl_mesh3d,DRt=Od().delaunay_triangulate,FRt=Od().alpha_shape,zRt=Od().convex_hull,ORt=$y().parseColorScale,qRt=Dr().isArrayOrTypedArray,iZ=Jy(),BRt=tc().extractOpts,C8e=HA();function L8e(e,t,r){this.scene=e,this.uid=r,this.mesh=t,this.name="",this.color="#fff",this.data=null,this.showContour=!1}var nZ=L8e.prototype;nZ.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 qRt(r)&&r[t]!==void 0?e.textLabel=r[t]:r&&(e.textLabel=r),!0}};function k8e(e){for(var t=[],r=e.length,n=0;n<r;n++)t[n]=iZ(e[n]);return t}function eZ(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 tZ(e){for(var t=[],r=e.length,n=0;n<r;n++)t[n]=Math.round(e[n]);return t}function NRt(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 DRt(n)}function rZ(e,t){for(var r=e.length,n=0;n<r;n++)if(e[n]<=-.5||e[n]>=t-.5)return!1;return!0}nZ.update=function(e){var t=this.scene,r=t.fullSceneLayout;this.data=e;var n=e.x.length,i=C8e(eZ(r.xaxis,e.x,t.dataScale[0],e.xcalendar),eZ(r.yaxis,e.y,t.dataScale[1],e.ycalendar),eZ(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||!rZ(e.i,n)||!rZ(e.j,n)||!rZ(e.k,n))return;a=C8e(tZ(e.i),tZ(e.j),tZ(e.k))}else e.alphahull===0?a=zRt(i):e.alphahull>0?a=FRt(e.alphahull,i):a=NRt(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:iZ(e.contour.color).slice(0,3),contourWidth:e.contour.width,useFacetNormals:e.flatshading};if(e.intensity){var s=BRt(e);this.color="#fff";var l=e.intensitymode;o[l+"Intensity"]=e.intensity,o[l+"IntensityBounds"]=[s.min,s.max],o.colormap=ORt(e)}else e.vertexcolor?(this.color=e.vertexcolor[0],o.vertexColors=k8e(e.vertexcolor)):e.facecolor?(this.color=e.facecolor[0],o.cellColors=k8e(e.facecolor)):(this.color=e.color,o.meshColor=iZ(e.color));this.mesh.update(o)};nZ.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()};function URt(e,t){var r=e.glplot.gl,n=RRt({gl:r}),i=new L8e(e,n,t.uid);return n._trace=i,i.update(t),e.glplot.add(n),i}P8e.exports=URt});var D8e=ye((N0r,R8e)=>{"use strict";R8e.exports={attributes:VA(),supplyDefaults:S8e(),calc:E8e(),colorbar:{min:"cmin",max:"cmax"},plot:I8e(),moduleType:"trace",name:"mesh3d",basePlotModule:Q_(),categories:["gl3d","showLegend"],meta:{}}});var z8e=ye((U0r,F8e)=>{"use strict";F8e.exports=D8e()});var oZ=ye((V0r,q8e)=>{"use strict";var VRt=Tu(),jA=df().axisHoverFormat,GRt=Qo().hovertemplateAttrs,HRt=VA(),O8e=Vl(),aZ=Ao().extendFlat,uF={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:GRt({editType:"calc"},{keys:["norm"]}),uhoverformat:jA("u",1),vhoverformat:jA("v",1),whoverformat:jA("w",1),xhoverformat:jA("x"),yhoverformat:jA("y"),zhoverformat:jA("z"),showlegend:aZ({},O8e.showlegend,{dflt:!1})};aZ(uF,VRt("",{colorAttr:"u/v/w norm",showScaleDflt:!0,editTypeOverride:"calc"}));var jRt=["opacity","lightposition","lighting"];jRt.forEach(function(e){uF[e]=HRt[e]});uF.hoverinfo=aZ({},O8e.hoverinfo,{editType:"calc",flags:["x","y","z","u","v","w","norm","text","name"],dflt:"x+y+z+norm+text+name"});q8e.exports=uF});var N8e=ye((G0r,B8e)=>{"use strict";var WRt=Dr(),XRt=Jh(),ZRt=oZ();B8e.exports=function(t,r,n,i){function a(d,v){return WRt.coerce(t,r,ZRt,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"),XRt(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 V8e=ye((H0r,U8e)=>{"use strict";var YRt=Fv();U8e.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,YRt(t,r,{vals:[l,s],containerStr:"",cLetter:"c"})}});var X8e=ye((j0r,W8e)=>{"use strict";var KRt=Od().gl_cone3d,JRt=Od().gl_cone3d.createConeMesh,$Rt=Dr().simpleMap,QRt=$y().parseColorScale,eDt=tc().extractOpts,tDt=Dr().isArrayOrTypedArray,G8e=HA();function H8e(e,t){this.scene=e,this.uid=t,this.mesh=null,this.data=null}var sZ=H8e.prototype;sZ.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 tDt(l)&&l[t]!==void 0?e.textLabel=l[t]:l&&(e.textLabel=l),!0}};var rDt={xaxis:0,yaxis:1,zaxis:2},iDt={tip:1,tail:0,cm:.25,center:.5},nDt={tip:1,tail:1,cm:.75,center:.5};function j8e(e,t){var r=e.fullSceneLayout,n=e.dataScale,i={};function a(c,f){var h=r[f],d=n[rDt[f]];return $Rt(c,function(v){return h.d2l(v)*d})}i.vectors=G8e(a(t.u,"xaxis"),a(t.v,"yaxis"),a(t.w,"zaxis"),t._len),i.positions=G8e(a(t.x,"xaxis"),a(t.y,"yaxis"),a(t.z,"zaxis"),t._len);var o=eDt(t);i.colormap=QRt(t),i.vertexIntensityBounds=[o.min/t._normMax,o.max/t._normMax],i.coneOffset=iDt[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=KRt(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=nDt[t.anchor]*l.vectorScale*l.coneScale*t._normMax,l}sZ.update=function(e){this.data=e;var t=j8e(this.scene,e);this.mesh.update(t)};sZ.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()};function aDt(e,t){var r=e.glplot.gl,n=j8e(e,t),i=JRt(r,n),a=new H8e(e,t.uid);return a.mesh=i,a.data=t,i._trace=a,e.glplot.add(i),a}W8e.exports=aDt});var Y8e=ye((W0r,Z8e)=>{"use strict";Z8e.exports={moduleType:"trace",name:"cone",basePlotModule:Q_(),categories:["gl3d","showLegend"],attributes:oZ(),supplyDefaults:N8e(),colorbar:{min:"cmin",max:"cmax"},calc:V8e(),plot:X8e(),eventData:function(e,t){return e.norm=t.traceCoordinate[6],e},meta:{}}});var J8e=ye((X0r,K8e)=>{"use strict";K8e.exports=Y8e()});var uZ=ye((Z0r,Q8e)=>{"use strict";var oDt=Tu(),WA=df().axisHoverFormat,sDt=Qo().hovertemplateAttrs,lDt=VA(),$8e=Vl(),lZ=Ao().extendFlat,cF={x:{valType:"data_array",editType:"calc+clearAxisTypes"},y:{valType:"data_array",editType:"calc+clearAxisTypes"},z:{valType:"data_array",editType:"calc+clearAxisTypes"},u:{valType:"data_array",editType:"calc"},v:{valType:"data_array",editType:"calc"},w:{valType:"data_array",editType:"calc"},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:sDt({editType:"calc"},{keys:["tubex","tubey","tubez","tubeu","tubev","tubew","norm","divergence"]}),uhoverformat:WA("u",1),vhoverformat:WA("v",1),whoverformat:WA("w",1),xhoverformat:WA("x"),yhoverformat:WA("y"),zhoverformat:WA("z"),showlegend:lZ({},$8e.showlegend,{dflt:!1})};lZ(cF,oDt("",{colorAttr:"u/v/w norm",showScaleDflt:!0,editTypeOverride:"calc"}));var uDt=["opacity","lightposition","lighting"];uDt.forEach(function(e){cF[e]=lDt[e]});cF.hoverinfo=lZ({},$8e.hoverinfo,{editType:"calc",flags:["x","y","z","u","v","w","norm","divergence","text","name"],dflt:"x+y+z+norm+text+name"});Q8e.exports=cF});var tRe=ye((Y0r,eRe)=>{"use strict";var cDt=Dr(),fDt=Jh(),hDt=uZ();eRe.exports=function(t,r,n,i){function a(h,d){return cDt.coerce(t,r,hDt,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"),fDt(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 uRe=ye((K0r,lRe)=>{"use strict";var nRe=Od().gl_streamtube3d,dDt=nRe.createTubeMesh,vDt=Dr(),pDt=$y().parseColorScale,gDt=tc().extractOpts,rRe=HA(),aRe={xaxis:0,yaxis:1,zaxis:2};function oRe(e,t){this.scene=e,this.uid=t,this.mesh=null,this.data=null}var fZ=oRe.prototype;fZ.handlePick=function(e){var t=this.scene.fullSceneLayout,r=this.scene.dataScale;function n(o,s){var l=t[s],u=r[aRe[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 iRe(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 cZ(e){var t=e.length;return t===1?[.5,.5]:[e[1]-e[0],e[t-1]-e[t-2]]}function sRe(e,t){var r=e.fullSceneLayout,n=e.dataScale,i=t._len,a={};function o(z,O){var V=r[O],G=n[aRe[O]];return vDt.simpleMap(z,function(Z){return V.d2l(Z)*G})}if(a.vectors=rRe(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=rRe(o(t._startsX,"xaxis"),o(t._startsY,"yaxis"),o(t._startsZ,"zaxis"));else{for(var f=l[0],h=iRe(s),d=iRe(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=pDt(t),a.tubeSize=t.sizeref,a.maxLength=t.maxdisplayed;var C=o(t._xbnds,"xaxis"),E=o(t._ybnds,"yaxis"),A=o(t._zbnds,"zaxis"),L=cZ(s),_=cZ(l),k=cZ(u),M=[[C[0]-L[0],E[0]-_[0],A[0]-k[0]],[C[1]+L[1],E[1]+_[1],A[1]+k[1]]],g=nRe(a,M),P=gDt(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}fZ.update=function(e){this.data=e;var t=sRe(this.scene,e);this.mesh.update(t)};fZ.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()};function mDt(e,t){var r=e.glplot.gl,n=sRe(e,t),i=dDt(r,n),a=new oRe(e,t.uid);return a.mesh=i,a.data=t,i._trace=a,e.glplot.add(i),a}lRe.exports=mDt});var fRe=ye((J0r,cRe)=>{"use strict";cRe.exports={moduleType:"trace",name:"streamtube",basePlotModule:Q_(),categories:["gl3d","showLegend"],attributes:uZ(),supplyDefaults:tRe(),colorbar:{min:"cmin",max:"cmax"},calc:aF().calc,plot:uRe(),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 dRe=ye(($0r,hRe)=>{"use strict";hRe.exports=fRe()});var G2=ye((egr,gRe)=>{"use strict";var yDt=Qo().hovertemplateAttrs,_Dt=Qo().texttemplateAttrs,xDt=Eg(),jm=pf(),bDt=Vl(),vRe=Tu(),wDt=Pd().dash,V2=Ao().extendFlat,TDt=mc().overrideAll,eg=jm.marker,pRe=jm.line,ADt=eg.line,Q0r=["The library used by the *country names* `locationmode` option is changing in an upcoming version.","Country names in existing plots may not work in the new version."].join(" ");gRe.exports=TDt({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:_Dt({editType:"plot"},{keys:["lat","lon","location","text"]}),hovertext:V2({},jm.hovertext,{}),textfont:jm.textfont,textposition:jm.textposition,line:{color:pRe.color,width:pRe.width,dash:wDt},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:ADt.width},vRe("marker.line")),gradient:eg.gradient},vRe("marker")),fill:{valType:"enumerated",values:["none","toself"],dflt:"none"},fillcolor:xDt(),selected:jm.selected,unselected:jm.unselected,hoverinfo:V2({},bDt.hoverinfo,{flags:["lon","lat","location","text","name"]}),hovertemplate:yDt()},"calc","nested")});var yRe=ye((tgr,mRe)=>{"use strict";var hZ=Dr(),dZ=Ru(),SDt=$p(),MDt=R0(),EDt=D0(),CDt=Ig(),kDt=G2();mRe.exports=function(t,r,n,i){function a(d,v){return hZ.coerce(t,r,kDt,d,v)}var o=a("locations"),s;if(o&&o.length){var l=a("geojson"),u;(typeof l=="string"&&l!==""||hZ.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"),dZ.hasMarkers(r)&&SDt(t,r,n,i,a,{gradient:!0}),dZ.hasLines(r)&&(MDt(t,r,n,i,a),a("connectgaps")),dZ.hasText(r)&&(a("texttemplate"),EDt(t,r,i,a)),a("fill"),r.fill!=="none"&&CDt(t,r,n,a),hZ.coerceSelectionMarkerOpacity(r,a)}});var bRe=ye((rgr,xRe)=>{"use strict";var _Re=ho();xRe.exports=function(t,r,n){var i={},a=n[r.geo]._subplot,o=a.mockAxis,s=t.lonlat;return i.lonLabel=_Re.tickText(o,o.c2l(s[0]),!0).text,i.latLabel=_Re.tickText(o,o.c2l(s[1]),!0).text,i}});var fF=ye((igr,SRe)=>{"use strict";var vZ=Eo(),wRe=hs().BADNUM,LDt=F0(),PDt=Cm(),IDt=z0(),RDt=Dr().isArrayOrTypedArray,TRe=Dr()._;function ARe(e){return e&&typeof e=="string"}SRe.exports=function(t,r){var n=RDt(r.locations),i=n?r.locations.length:r._length,a=new Array(i),o;r.geojson?o=function(h){return ARe(h)||vZ(h)}:o=ARe;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];vZ(c)&&vZ(f)?l.lonlat=[+c,+f]:l.lonlat=[wRe,wRe]}}return PDt(a,r),LDt(t,r),IDt(a,r),i&&(a[0].t={labels:{lat:TRe(t,"lat:")+" ",lon:TRe(t,"lon:")+" "}}),a}});var eC=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]},antarctica:{lonaxisRange:[-180,180],lataxisRange:[-90,-60],projType:"equirectangular",projRotate:[0,0,0]},oceania:{lonaxisRange:[-180,180],lataxisRange:[-50,25],projType:"equirectangular",projRotate:[0,0,0]}};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 pZ=ye((hF,MRe)=>{(function(e,t){typeof hF=="object"&&typeof MRe!="undefined"?t(hF):(e=e||self,t(e.topojson=e.topojson||{}))})(hF,function(e){"use strict";function t(E){return E}function r(E){if(E==null)return t;var A,L,_=E.scale[0],k=E.scale[1],M=E.translate[0],g=E.translate[1];return function(P,T){T||(A=L=0);var z=2,O=P.length,V=new Array(O);for(V[0]=(A+=P[0])*_+M,V[1]=(L+=P[1])*k+g;z<O;)V[z]=P[z],++z;return V}}function n(E){var A=r(E.transform),L,_=1/0,k=_,M=-_,g=-_;function P(z){z=A(z),z[0]<_&&(_=z[0]),z[0]>M&&(M=z[0]),z[1]<k&&(k=z[1]),z[1]>g&&(g=z[1])}function T(z){switch(z.type){case"GeometryCollection":z.geometries.forEach(T);break;case"Point":P(z.coordinates);break;case"MultiPoint":z.coordinates.forEach(P);break}}E.arcs.forEach(function(z){for(var O=-1,V=z.length,G;++O<V;)G=A(z[O],O),G[0]<_&&(_=G[0]),G[0]>M&&(M=G[0]),G[1]<k&&(k=G[1]),G[1]>g&&(g=G[1])});for(L in E.objects)T(E.objects[L]);return[_,k,M,g]}function i(E,A){for(var L,_=E.length,k=_-A;k<--_;)L=E[k],E[k++]=E[_],E[_]=L}function a(E,A){return typeof A=="string"&&(A=E.objects[A]),A.type==="GeometryCollection"?{type:"FeatureCollection",features:A.geometries.map(function(L){return o(E,L)})}:o(E,A)}function o(E,A){var L=A.id,_=A.bbox,k=A.properties==null?{}:A.properties,M=s(E,A);return L==null&&_==null?{type:"Feature",properties:k,geometry:M}:_==null?{type:"Feature",id:L,properties:k,geometry:M}:{type:"Feature",id:L,bbox:_,properties:k,geometry:M}}function s(E,A){var L=r(E.transform),_=E.arcs;function k(O,V){V.length&&V.pop();for(var G=_[O<0?~O:O],Z=0,H=G.length;Z<H;++Z)V.push(L(G[Z],Z));O<0&&i(V,H)}function M(O){return L(O)}function g(O){for(var V=[],G=0,Z=O.length;G<Z;++G)k(O[G],V);return V.length<2&&V.push(V[0]),V}function P(O){for(var V=g(O);V.length<4;)V.push(V[0]);return V}function T(O){return O.map(P)}function z(O){var V=O.type,G;switch(V){case"GeometryCollection":return{type:V,geometries:O.geometries.map(z)};case"Point":G=M(O.coordinates);break;case"MultiPoint":G=O.coordinates.map(M);break;case"LineString":G=g(O.arcs);break;case"MultiLineString":G=O.arcs.map(g);break;case"Polygon":G=T(O.arcs);break;case"MultiPolygon":G=O.arcs.map(T);break;default:return null}return{type:V,coordinates:G}}return z(A)}function l(E,A){var L={},_={},k={},M=[],g=-1;A.forEach(function(z,O){var V=E.arcs[z<0?~z:z],G;V.length<3&&!V[1][0]&&!V[1][1]&&(G=A[++g],A[g]=z,A[O]=G)}),A.forEach(function(z){var O=P(z),V=O[0],G=O[1],Z,H;if(Z=k[V])if(delete k[Z.end],Z.push(z),Z.end=G,H=_[G]){delete _[H.start];var N=H===Z?Z:Z.concat(H);_[N.start=Z.start]=k[N.end=H.end]=N}else _[Z.start]=k[Z.end]=Z;else if(Z=_[G])if(delete _[Z.start],Z.unshift(z),Z.start=V,H=k[V]){delete k[H.end];var j=H===Z?Z:H.concat(Z);_[j.start=H.start]=k[j.end=Z.end]=j}else _[Z.start]=k[Z.end]=Z;else Z=[z],_[Z.start=V]=k[Z.end=G]=Z});function P(z){var O=E.arcs[z<0?~z:z],V=O[0],G;return E.transform?(G=[0,0],O.forEach(function(Z){G[0]+=Z[0],G[1]+=Z[1]})):G=O[O.length-1],z<0?[G,V]:[V,G]}function T(z,O){for(var V in z){var G=z[V];delete O[G.start],delete G.start,delete G.end,G.forEach(function(Z){L[Z<0?~Z:Z]=1}),M.push(G)}}return T(k,_),T(_,k),A.forEach(function(z){L[z<0?~z:z]||M.push([z])}),M}function u(E){return s(E,c.apply(this,arguments))}function c(E,A,L){var _,k,M;if(arguments.length>1)_=f(E,A,L);else for(k=0,_=new Array(M=E.arcs.length);k<M;++k)_[k]=k;return{type:"MultiLineString",arcs:l(E,_)}}function f(E,A,L){var _=[],k=[],M;function g(V){var G=V<0?~V:V;(k[G]||(k[G]=[])).push({i:V,g:M})}function P(V){V.forEach(g)}function T(V){V.forEach(P)}function z(V){V.forEach(T)}function O(V){switch(M=V,V.type){case"GeometryCollection":V.geometries.forEach(O);break;case"LineString":P(V.arcs);break;case"MultiLineString":case"Polygon":T(V.arcs);break;case"MultiPolygon":z(V.arcs);break}}return O(A),k.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(E){for(var A=-1,L=E.length,_,k=E[L-1],M=0;++A<L;)_=k,k=E[A],M+=_[0]*k[1]-_[1]*k[0];return Math.abs(M)}function d(E){return s(E,v.apply(this,arguments))}function v(E,A){var L={},_=[],k=[];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(z){z.forEach(function(O){(L[O=O<0?~O:O]||(L[O]=[])).push(T)})}),_.push(T)}function P(T){return h(s(E,{type:"Polygon",arcs:[T]}).coordinates[0])}return _.forEach(function(T){if(!T._){var z=[],O=[T];for(T._=1,k.push(z);T=O.pop();)z.push(T),T.forEach(function(V){V.forEach(function(G){L[G<0?~G:G].forEach(function(Z){Z._||(Z._=1,O.push(Z))})})})}}),_.forEach(function(T){delete T._}),{type:"MultiPolygon",arcs:k.map(function(T){var z=[],O;if(T.forEach(function(N){N.forEach(function(j){j.forEach(function(re){L[re<0?~re:re].length<2&&z.push(re)})})}),z=l(E,z),(O=z.length)>1)for(var V=1,G=P(z[0]),Z,H;V<O;++V)(Z=P(z[V]))>G&&(H=z[0],z[0]=z[V],z[V]=H,G=Z);return z}).filter(function(T){return T.length>0})}}function x(E,A){for(var L=0,_=E.length;L<_;){var k=L+_>>>1;E[k]<A?L=k+1:_=k}return L}function b(E){var A={},L=E.map(function(){return[]});function _(N,j){N.forEach(function(re){re<0&&(re=~re);var oe=A[re];oe?oe.push(j):A[re]=[j]})}function k(N,j){N.forEach(function(re){_(re,j)})}function M(N,j){N.type==="GeometryCollection"?N.geometries.forEach(function(re){M(re,j)}):N.type in g&&g[N.type](N.arcs,j)}var g={LineString:_,MultiLineString:k,Polygon:k,MultiPolygon:function(N,j){N.forEach(function(re){k(re,j)})}};E.forEach(M);for(var P in A)for(var T=A[P],z=T.length,O=0;O<z;++O)for(var V=O+1;V<z;++V){var G=T[O],Z=T[V],H;(H=L[G])[P=x(H,Z)]!==Z&&H.splice(P,0,Z),(H=L[Z])[P=x(H,G)]!==G&&H.splice(P,0,G)}return L}function p(E){if(E==null)return t;var A,L,_=E.scale[0],k=E.scale[1],M=E.translate[0],g=E.translate[1];return function(P,T){T||(A=L=0);var z=2,O=P.length,V=new Array(O),G=Math.round((P[0]-M)/_),Z=Math.round((P[1]-g)/k);for(V[0]=G-A,A=G,V[1]=Z-L,L=Z;z<O;)V[z]=P[z],++z;return V}}function C(E,A){if(E.transform)throw new Error("already quantized");if(!A||!A.scale){if(!((g=Math.floor(A))>=2))throw new Error("n must be \u22652");T=E.bbox||n(E);var L=T[0],_=T[1],k=T[2],M=T[3],g;A={scale:[k-L?(k-L)/(g-1):1,M-_?(M-_)/(g-1):1],translate:[L,_]}}else T=E.bbox;var P=p(A),T,z,O=E.objects,V={};function G(N){return P(N)}function Z(N){var j;switch(N.type){case"GeometryCollection":j={type:"GeometryCollection",geometries:N.geometries.map(Z)};break;case"Point":j={type:"Point",coordinates:G(N.coordinates)};break;case"MultiPoint":j={type:"MultiPoint",coordinates:N.coordinates.map(G)};break;default:return N}return N.id!=null&&(j.id=N.id),N.bbox!=null&&(j.bbox=N.bbox),N.properties!=null&&(j.properties=N.properties),j}function H(N){var j=0,re=1,oe=N.length,_e,Me=new Array(oe);for(Me[0]=P(N[0],0);++j<oe;)((_e=P(N[j],j))[0]||_e[1])&&(Me[re++]=_e);return re===1&&(Me[re++]=[0,0]),Me.length=re,Me}for(z in O)V[z]=Z(O[z]);return{type:"Topology",bbox:T,transform:A,objects:V,arcs:E.arcs.map(H)}}e.bbox=n,e.feature=a,e.merge=d,e.mergeArcs=v,e.mesh=u,e.meshArcs=c,e.neighbors=b,e.quantize=C,e.transform=r,e.untransform=p,Object.defineProperty(e,"__esModule",{value:!0})})});var dF=ye((agr,ERe)=>{"use strict";var gZ=ERe.exports={},DDt=eC().locationmodeToLayer,FDt=pZ().feature;gZ.getTopojsonName=function(e){return[e.scope.replace(/ /g,"-"),"_",e.resolution.toString(),"m"].join("")};gZ.getTopojsonPath=function(e,t){return e+=e.endsWith("/")?"":"/",`${e}${t}.json`};gZ.getTopojsonFeatures=function(e,t){var r=DDt[e.locationmode],n=t.objects[r];return FDt(t,n).features}});var rx=ye(tC=>{"use strict";var zDt=hs().BADNUM;tC.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]!==zDt?i.push(s):!r&&i.length>0&&(n.push(i),i=[])}return i.length>0&&n.push(i),n};tC.makeLine=function(e){return e.length===1?{type:"LineString",coordinates:e[0]}:{type:"MultiLineString",coordinates:e}};tC.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}};tC.makeBlank=function(){return{type:"Point",coordinates:[]}}});var kRe=ye((sgr,CRe)=>{CRe.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 gF=ye(ic=>{"use strict";Object.defineProperty(ic,"__esModule",{value:!0});var zp=63710088e-1,yZ={centimeters:zp*100,centimetres:zp*100,degrees:360/(2*Math.PI),feet:zp*3.28084,inches:zp*39.37,kilometers:zp/1e3,kilometres:zp/1e3,meters:zp,metres:zp,miles:zp/1609.344,millimeters:zp*1e3,millimetres:zp*1e3,nauticalmiles:zp/1852,radians:1,yards:zp*1.0936},mZ={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 ODt(e,t,r={}){switch(e){case"Point":return _Z(t).geometry;case"LineString":return bZ(t).geometry;case"Polygon":return xZ(t).geometry;case"MultiPoint":return PRe(t).geometry;case"MultiLineString":return LRe(t).geometry;case"MultiPolygon":return IRe(t).geometry;default:throw new Error(e+" is invalid")}}function _Z(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(!vF(e[0])||!vF(e[1]))throw new Error("coordinates must contain numbers");return ix({type:"Point",coordinates:e},t,r)}function qDt(e,t,r={}){return pF(e.map(n=>_Z(n,t)),r)}function xZ(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 BDt(e,t,r={}){return pF(e.map(n=>xZ(n,t)),r)}function bZ(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 NDt(e,t,r={}){return pF(e.map(n=>bZ(n,t)),r)}function pF(e,t={}){let r={type:"FeatureCollection"};return t.id&&(r.id=t.id),t.bbox&&(r.bbox=t.bbox),r.features=e,r}function LRe(e,t,r={}){return ix({type:"MultiLineString",coordinates:e},t,r)}function PRe(e,t,r={}){return ix({type:"MultiPoint",coordinates:e},t,r)}function IRe(e,t,r={}){return ix({type:"MultiPolygon",coordinates:e},t,r)}function UDt(e,t,r={}){return ix({type:"GeometryCollection",geometries:e},t,r)}function VDt(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 RRe(e,t="kilometers"){let r=yZ[t];if(!r)throw new Error(t+" units is invalid");return e*r}function wZ(e,t="kilometers"){let r=yZ[t];if(!r)throw new Error(t+" units is invalid");return e/r}function GDt(e,t){return DRe(wZ(e,t))}function HDt(e){let t=e%360;return t<0&&(t+=360),t}function jDt(e){return e=e%360,e>180?e-360:e<-180?e+360:e}function DRe(e){return e%(2*Math.PI)*180/Math.PI}function WDt(e){return e%360*Math.PI/180}function XDt(e,t="kilometers",r="kilometers"){if(!(e>=0))throw new Error("length must be a positive number");return RRe(wZ(e,t),r)}function ZDt(e,t="meters",r="kilometers"){if(!(e>=0))throw new Error("area must be a positive number");let n=mZ[t];if(!n)throw new Error("invalid original units");let i=mZ[r];if(!i)throw new Error("invalid final units");return e/n*i}function vF(e){return!isNaN(e)&&e!==null&&!Array.isArray(e)}function YDt(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function KDt(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(!vF(t))throw new Error("bbox must only contain numbers")})}function JDt(e){if(!e)throw new Error("id is required");if(["string","number"].indexOf(typeof e)===-1)throw new Error("id must be a number or a string")}ic.areaFactors=mZ;ic.azimuthToBearing=jDt;ic.bearingToAzimuth=HDt;ic.convertArea=ZDt;ic.convertLength=XDt;ic.degreesToRadians=WDt;ic.earthRadius=zp;ic.factors=yZ;ic.feature=ix;ic.featureCollection=pF;ic.geometry=ODt;ic.geometryCollection=UDt;ic.isNumber=vF;ic.isObject=YDt;ic.lengthToDegrees=GDt;ic.lengthToRadians=wZ;ic.lineString=bZ;ic.lineStrings=NDt;ic.multiLineString=LRe;ic.multiPoint=PRe;ic.multiPolygon=IRe;ic.point=_Z;ic.points=qDt;ic.polygon=xZ;ic.polygons=BDt;ic.radiansToDegrees=DRe;ic.radiansToLength=RRe;ic.round=VDt;ic.validateBBox=KDt;ic.validateId=JDt});var yF=ye(qd=>{"use strict";Object.defineProperty(qd,"__esModule",{value:!0});var jv=gF();function rC(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 C=0;C<s;C++){var E=0,A=0;if(o=h?u.geometries[C]: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,E,A)===!1)return!1;f++,E++;break;case"LineString":case"MultiPoint":for(n=0;n<l.length;n++){if(t(l[n],f,p,E,A)===!1)return!1;f++,L==="MultiPoint"&&E++}L==="LineString"&&E++;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,E,A)===!1)return!1;f++}L==="MultiLineString"&&E++,L==="Polygon"&&A++}L==="Polygon"&&E++;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,E,A)===!1)return!1;f++}A++}E++}break;case"GeometryCollection":for(n=0;n<o.geometries.length;n++)if(rC(o.geometries[n],t,r)===!1)return!1;break;default:throw new Error("Unknown Geometry Type")}}}}}function $Dt(e,t,r,n){var i=r;return rC(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 FRe(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 QDt(e,t,r){var n=r;return FRe(e,function(i,a){a===0&&r===void 0?n=i:n=t(n,i,a)}),n}function zRe(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 eFt(e,t,r){var n=r;return zRe(e,function(i,a){a===0&&r===void 0?n=i:n=t(n,i,a)}),n}function tFt(e){var t=[];return rC(e,function(r){t.push(r)}),t}function TZ(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 rFt(e,t,r){var n=r;return TZ(e,function(i,a,o,s,l){a===0&&r===void 0?n=i:n=t(n,i,a,o,s,l)}),n}function mF(e,t){TZ(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 iFt(e,t,r){var n=r;return mF(e,function(i,a,o){a===0&&o===0&&r===void 0?n=i:n=t(n,i,a,o)}),n}function ORe(e,t){mF(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(rC(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 nFt(e,t,r){var n=r,i=!1;return ORe(e,function(a,o,s,l,u){i===!1&&r===void 0?n=a:n=t(n,a,o,s,l,u),i=!0}),n}function qRe(e,t){if(!e)throw new Error("geojson is required");mF(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 aFt(e,t,r){var n=r;return qRe(e,function(i,a,o,s){a===0&&r===void 0?n=i:n=t(n,i,a,o,s)}),n}function oFt(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 sFt(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")}qd.coordAll=tFt;qd.coordEach=rC;qd.coordReduce=$Dt;qd.featureEach=zRe;qd.featureReduce=eFt;qd.findPoint=sFt;qd.findSegment=oFt;qd.flattenEach=mF;qd.flattenReduce=iFt;qd.geomEach=TZ;qd.geomReduce=rFt;qd.lineEach=qRe;qd.lineReduce=aFt;qd.propEach=FRe;qd.propReduce=QDt;qd.segmentEach=ORe;qd.segmentReduce=nFt});var GRe=ye(_F=>{"use strict";Object.defineProperty(_F,"__esModule",{value:!0});var BRe=gF(),lFt=yF();function VRe(e){return lFt.geomReduce.call(void 0,e,(t,r)=>t+uFt(r),0)}function uFt(e){let t=0,r;switch(e.type){case"Polygon":return NRe(e.coordinates);case"MultiPolygon":for(r=0;r<e.coordinates.length;r++)t+=NRe(e.coordinates[r]);return t;case"Point":case"MultiPoint":case"LineString":case"MultiLineString":return 0}return 0}function NRe(e){let t=0;if(e&&e.length>0){t+=Math.abs(URe(e[0]));for(let r=1;r<e.length;r++)t-=Math.abs(URe(e[r]))}return t}var cFt=BRe.earthRadius*BRe.earthRadius/2,AZ=Math.PI/180;function URe(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]*AZ,l=a[1]*AZ,u=o[0]*AZ;r+=(u-s)*Math.sin(l),n++}return r*cFt}var fFt=VRe;_F.area=VRe;_F.default=fFt});var jRe=ye(xF=>{"use strict";Object.defineProperty(xF,"__esModule",{value:!0});var hFt=gF(),dFt=yF();function HRe(e,t={}){let r=0,n=0,i=0;return dFt.coordEach.call(void 0,e,function(a){r+=a[0],n+=a[1],i++},!0),hFt.point.call(void 0,[r/i,n/i],t.properties)}var vFt=HRe;xF.centroid=HRe;xF.default=vFt});var XRe=ye(bF=>{"use strict";Object.defineProperty(bF,"__esModule",{value:!0});var pFt=yF();function WRe(e,t={}){if(e.bbox!=null&&t.recompute!==!0)return e.bbox;let r=[1/0,1/0,-1/0,-1/0];return pFt.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 gFt=WRe;bF.bbox=WRe;bF.default=gFt});var nx=ye((dgr,$Re)=>{"use strict";var mFt=Oa(),KRe=kRe(),{area:yFt}=GRe(),{centroid:_Ft}=jRe(),{bbox:xFt}=XRe(),ZRe=VS(),XA=H1(),bFt=gy(),wFt=CS(),wF=MM(),YRe=Object.keys(KRe),TFt={"ISO-3":ZRe,"USA-states":ZRe,"country names":AFt};function AFt(e){for(var t=0;t<YRe.length;t++){var r=YRe[t],n=new RegExp(KRe[r]);if(n.test(e.trim().toLowerCase()))return r}return XA.log("Unrecognized country name: "+e+"."),!1}function SFt(e,t,r){if(!t||typeof t!="string")return!1;var n=TFt[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;XA.log(["Location with id",n,"does not have a matching topojson feature at this resolution."].join(" "))}return!1}function MFt(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(wF.tester(f))}:n==="ATA"?a=function(c){var f=u(c);if(f===null)return i.push(wF.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=wF.tester(h);v.pts.pop(),i.push(v)}:a=function(c){i.push(wF.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 JRe(e){var t=e.geojson,r=window.PlotlyGeoAssets||{},n=typeof t=="string"?r[t]:t;return bFt(n)?n:(XA.error("Oops ... something went wrong when fetching "+t),!1)}function EFt(e){var t=e[0].trace,r=JRe(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=wFt(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=CFt(v):v.properties.ct=[NaN,NaN],h.fIn=c,h.fOut=v,i.push(v)}else XA.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 XA.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)XA.log(["Location *"+u+"*","does not have a matching feature with id-key","*"+t.featureidkey+"*."].join(" "));return i}function CFt(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=yFt(o);s>i&&(i=s,r=o)}else r=t;return _Ft(r).geometry.coordinates}function kFt(e){var t=window.PlotlyGeoAssets||{},r=[];function n(l){return new Promise(function(u,c){mFt.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 LFt(e){return xFt(e)}$Re.exports={locationToFeature:SFt,feature2polygons:MFt,getTraceGeojson:JRe,extractTraceFeature:EFt,fetchTraceGeoData:kFt,computeBbox:LFt}});var SZ=ye((vgr,tDe)=>{"use strict";var PFt=Oa(),IFt=So(),QRe=Ca(),eDe=ap(),RFt=eDe.stylePoints,DFt=eDe.styleText;tDe.exports=function(t,r){r&&FFt(t,r)};function FFt(e,t){var r=t[0].trace,n=t[0].node3;n.style("opacity",t[0].trace.opacity),RFt(n,r,e),DFt(n,r,e),n.selectAll("path.js-line").style("fill","none").each(function(i){var a=PFt.select(this),o=i.trace,s=o.line||{};a.call(QRe.stroke,s.color).call(IFt.dashLine,s.dash||"",s.width||0),o.fill!=="none"&&a.call(QRe.fill,o.fillcolor)})}});var kZ=ye((pgr,aDe)=>{"use strict";var rDe=Oa(),iC=Dr(),zFt=dF().getTopojsonFeatures,MZ=rx(),TF=nx(),iDe=wg().findExtremes,CZ=hs().BADNUM,OFt=O0().calcMarkerSize,EZ=Ru(),qFt=SZ(),BFt=["The library used by the *country names* `locationmode` option is changing in an upcoming version.","Country names in existing plots may not work in the new version."].join(" "),nDe=!0;function NFt(e,t,r){nDe&&(nDe=!1,iC.warn(BFt));var n=t.layers.frontplot.select(".scatterlayer"),i=iC.makeTraceGroups(n,r,"trace scattergeo");function a(o,s){o.lonlat[0]===CZ&&rDe.select(s).remove()}i.selectAll("*").remove(),i.each(function(o){var s=rDe.select(this),l=o[0].trace;if(EZ.hasLines(l)||l.fill!=="none"){var u=MZ.calcTraceToLineCoords(o),c=l.fill!=="none"?MZ.makePolygon(u):MZ.makeLine(u);s.selectAll("path.js-line").data([{geojson:c,trace:l}]).enter().append("path").classed("js-line",!0).style("stroke-miterlimit",2)}EZ.hasMarkers(l)&&s.selectAll("path.point").data(iC.identity).enter().append("path").classed("point",!0).each(function(f){a(f,this)}),EZ.hasText(l)&&s.selectAll("g").data(iC.identity).enter().append("g").append("text").each(function(f){a(f,this)}),qFt(e,o)})}function UFt(e,t){var r=e[0].trace,n=t[r.geo],i=n._subplot,a=r._length,o,s;if(iC.isArrayOrTypedArray(r.locations)){var l=r.locationmode,u=l==="geojson-id"?TF.extractTraceFeature(e):zFt(r,i.topojson);for(o=0;o<a;o++){s=e[o];var c=l==="geojson-id"?s.fOut:TF.locationToFeature(l,s.loc,u);s.lonlat=c?c.properties.ct:[CZ,CZ]}}var f={padded:!0},h,d;if(n.fitbounds==="geojson"&&r.locationmode==="geojson-id"){var v=TF.computeBbox(TF.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=OFt(r,a)}r._extremes.lon=iDe(n.lonaxis._ax,h,f),r._extremes.lat=iDe(n.lataxis._ax,d,f)}aDe.exports={calcGeoJSON:UFt,plot:NFt}});var sDe=ye((ggr,oDe)=>{"use strict";var VFt=vf(),GFt=hs().BADNUM,HFt=oT(),jFt=Dr().fillText,WFt=G2();oDe.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(C){var E=C.lonlat;if(E[0]===GFt||u(E))return 1/0;var A=c(E),L=c([r,n]),_=Math.abs(A[0]-L[0]),k=Math.abs(A[1]-L[1]),M=Math.max(3,C.mrc||0);return Math.max(Math.sqrt(_*_+k*k)-M,1-3/M)}if(VFt.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=HFt(a,h),t.extraText=XFt(a,h,t,i[0].t.labels),t.hovertemplate=a.hovertemplate,[t]}};function XFt(e,t,r,n){if(e.hovertemplate)return;var i=t.hi||e.hoverinfo,a=i==="all"?WFt.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&&jFt(t,e,c),c.join("<br>")}});var uDe=ye((mgr,lDe)=>{"use strict";lDe.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 hDe=ye((ygr,fDe)=>{"use strict";var cDe=Ru(),ZFt=hs().BADNUM;fDe.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=!cDe.hasMarkers(s)&&!cDe.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]!==ZFt&&(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 nC=ye((AF,dDe)=>{(function(e,t){t(typeof AF=="object"&&typeof dDe!="undefined"?AF:e.d3=e.d3||{})})(AF,function(e){"use strict";function t(Le,Ae){return Le<Ae?-1:Le>Ae?1:Le>=Ae?0:NaN}function r(Le){return Le.length===1&&(Le=n(Le)),{left:function(Ae,De,Pe,ge){for(Pe==null&&(Pe=0),ge==null&&(ge=Ae.length);Pe<ge;){var Fe=Pe+ge>>>1;Le(Ae[Fe],De)<0?Pe=Fe+1:ge=Fe}return Pe},right:function(Ae,De,Pe,ge){for(Pe==null&&(Pe=0),ge==null&&(ge=Ae.length);Pe<ge;){var Fe=Pe+ge>>>1;Le(Ae[Fe],De)>0?ge=Fe:Pe=Fe+1}return Pe}}}function n(Le){return function(Ae,De){return t(Le(Ae),De)}}var i=r(t),a=i.right,o=i.left;function s(Le,Ae){Ae==null&&(Ae=l);for(var De=0,Pe=Le.length-1,ge=Le[0],Fe=new Array(Pe<0?0:Pe);De<Pe;)Fe[De]=Ae(ge,ge=Le[++De]);return Fe}function l(Le,Ae){return[Le,Ae]}function u(Le,Ae,De){var Pe=Le.length,ge=Ae.length,Fe=new Array(Pe*ge),ce,Ze,ct,pt;for(De==null&&(De=l),ce=ct=0;ce<Pe;++ce)for(pt=Le[ce],Ze=0;Ze<ge;++Ze,++ct)Fe[ct]=De(pt,Ae[Ze]);return Fe}function c(Le,Ae){return Ae<Le?-1:Ae>Le?1:Ae>=Le?0:NaN}function f(Le){return Le===null?NaN:+Le}function h(Le,Ae){var De=Le.length,Pe=0,ge=-1,Fe=0,ce,Ze,ct=0;if(Ae==null)for(;++ge<De;)isNaN(ce=f(Le[ge]))||(Ze=ce-Fe,Fe+=Ze/++Pe,ct+=Ze*(ce-Fe));else for(;++ge<De;)isNaN(ce=f(Ae(Le[ge],ge,Le)))||(Ze=ce-Fe,Fe+=Ze/++Pe,ct+=Ze*(ce-Fe));if(Pe>1)return ct/(Pe-1)}function d(Le,Ae){var De=h(Le,Ae);return De&&Math.sqrt(De)}function v(Le,Ae){var De=Le.length,Pe=-1,ge,Fe,ce;if(Ae==null){for(;++Pe<De;)if((ge=Le[Pe])!=null&&ge>=ge)for(Fe=ce=ge;++Pe<De;)(ge=Le[Pe])!=null&&(Fe>ge&&(Fe=ge),ce<ge&&(ce=ge))}else for(;++Pe<De;)if((ge=Ae(Le[Pe],Pe,Le))!=null&&ge>=ge)for(Fe=ce=ge;++Pe<De;)(ge=Ae(Le[Pe],Pe,Le))!=null&&(Fe>ge&&(Fe=ge),ce<ge&&(ce=ge));return[Fe,ce]}var x=Array.prototype,b=x.slice,p=x.map;function C(Le){return function(){return Le}}function E(Le){return Le}function A(Le,Ae,De){Le=+Le,Ae=+Ae,De=(ge=arguments.length)<2?(Ae=Le,Le=0,1):ge<3?1:+De;for(var Pe=-1,ge=Math.max(0,Math.ceil((Ae-Le)/De))|0,Fe=new Array(ge);++Pe<ge;)Fe[Pe]=Le+Pe*De;return Fe}var L=Math.sqrt(50),_=Math.sqrt(10),k=Math.sqrt(2);function M(Le,Ae,De){var Pe,ge=-1,Fe,ce,Ze;if(Ae=+Ae,Le=+Le,De=+De,Le===Ae&&De>0)return[Le];if((Pe=Ae<Le)&&(Fe=Le,Le=Ae,Ae=Fe),(Ze=g(Le,Ae,De))===0||!isFinite(Ze))return[];if(Ze>0)for(Le=Math.ceil(Le/Ze),Ae=Math.floor(Ae/Ze),ce=new Array(Fe=Math.ceil(Ae-Le+1));++ge<Fe;)ce[ge]=(Le+ge)*Ze;else for(Le=Math.floor(Le*Ze),Ae=Math.ceil(Ae*Ze),ce=new Array(Fe=Math.ceil(Le-Ae+1));++ge<Fe;)ce[ge]=(Le-ge)/Ze;return Pe&&ce.reverse(),ce}function g(Le,Ae,De){var Pe=(Ae-Le)/Math.max(0,De),ge=Math.floor(Math.log(Pe)/Math.LN10),Fe=Pe/Math.pow(10,ge);return ge>=0?(Fe>=L?10:Fe>=_?5:Fe>=k?2:1)*Math.pow(10,ge):-Math.pow(10,-ge)/(Fe>=L?10:Fe>=_?5:Fe>=k?2:1)}function P(Le,Ae,De){var Pe=Math.abs(Ae-Le)/Math.max(0,De),ge=Math.pow(10,Math.floor(Math.log(Pe)/Math.LN10)),Fe=Pe/ge;return Fe>=L?ge*=10:Fe>=_?ge*=5:Fe>=k&&(ge*=2),Ae<Le?-ge:ge}function T(Le){return Math.ceil(Math.log(Le.length)/Math.LN2)+1}function z(){var Le=E,Ae=v,De=T;function Pe(ge){var Fe,ce=ge.length,Ze,ct=new Array(ce);for(Fe=0;Fe<ce;++Fe)ct[Fe]=Le(ge[Fe],Fe,ge);var pt=Ae(ct),Wt=pt[0],st=pt[1],lt=De(ct,Wt,st);Array.isArray(lt)||(lt=P(Wt,st,lt),lt=A(Math.ceil(Wt/lt)*lt,st,lt));for(var Gt=lt.length;lt[0]<=Wt;)lt.shift(),--Gt;for(;lt[Gt-1]>st;)lt.pop(),--Gt;var Nt=new Array(Gt+1),$t;for(Fe=0;Fe<=Gt;++Fe)$t=Nt[Fe]=[],$t.x0=Fe>0?lt[Fe-1]:Wt,$t.x1=Fe<Gt?lt[Fe]:st;for(Fe=0;Fe<ce;++Fe)Ze=ct[Fe],Wt<=Ze&&Ze<=st&&Nt[a(lt,Ze,0,Gt)].push(ge[Fe]);return Nt}return Pe.value=function(ge){return arguments.length?(Le=typeof ge=="function"?ge:C(ge),Pe):Le},Pe.domain=function(ge){return arguments.length?(Ae=typeof ge=="function"?ge:C([ge[0],ge[1]]),Pe):Ae},Pe.thresholds=function(ge){return arguments.length?(De=typeof ge=="function"?ge:Array.isArray(ge)?C(b.call(ge)):C(ge),Pe):De},Pe}function O(Le,Ae,De){if(De==null&&(De=f),!!(Pe=Le.length)){if((Ae=+Ae)<=0||Pe<2)return+De(Le[0],0,Le);if(Ae>=1)return+De(Le[Pe-1],Pe-1,Le);var Pe,ge=(Pe-1)*Ae,Fe=Math.floor(ge),ce=+De(Le[Fe],Fe,Le),Ze=+De(Le[Fe+1],Fe+1,Le);return ce+(Ze-ce)*(ge-Fe)}}function V(Le,Ae,De){return Le=p.call(Le,f).sort(t),Math.ceil((De-Ae)/(2*(O(Le,.75)-O(Le,.25))*Math.pow(Le.length,-1/3)))}function G(Le,Ae,De){return Math.ceil((De-Ae)/(3.5*d(Le)*Math.pow(Le.length,-1/3)))}function Z(Le,Ae){var De=Le.length,Pe=-1,ge,Fe;if(Ae==null){for(;++Pe<De;)if((ge=Le[Pe])!=null&&ge>=ge)for(Fe=ge;++Pe<De;)(ge=Le[Pe])!=null&&ge>Fe&&(Fe=ge)}else for(;++Pe<De;)if((ge=Ae(Le[Pe],Pe,Le))!=null&&ge>=ge)for(Fe=ge;++Pe<De;)(ge=Ae(Le[Pe],Pe,Le))!=null&&ge>Fe&&(Fe=ge);return Fe}function H(Le,Ae){var De=Le.length,Pe=De,ge=-1,Fe,ce=0;if(Ae==null)for(;++ge<De;)isNaN(Fe=f(Le[ge]))?--Pe:ce+=Fe;else for(;++ge<De;)isNaN(Fe=f(Ae(Le[ge],ge,Le)))?--Pe:ce+=Fe;if(Pe)return ce/Pe}function N(Le,Ae){var De=Le.length,Pe=-1,ge,Fe=[];if(Ae==null)for(;++Pe<De;)isNaN(ge=f(Le[Pe]))||Fe.push(ge);else for(;++Pe<De;)isNaN(ge=f(Ae(Le[Pe],Pe,Le)))||Fe.push(ge);return O(Fe.sort(t),.5)}function j(Le){for(var Ae=Le.length,De,Pe=-1,ge=0,Fe,ce;++Pe<Ae;)ge+=Le[Pe].length;for(Fe=new Array(ge);--Ae>=0;)for(ce=Le[Ae],De=ce.length;--De>=0;)Fe[--ge]=ce[De];return Fe}function re(Le,Ae){var De=Le.length,Pe=-1,ge,Fe;if(Ae==null){for(;++Pe<De;)if((ge=Le[Pe])!=null&&ge>=ge)for(Fe=ge;++Pe<De;)(ge=Le[Pe])!=null&&Fe>ge&&(Fe=ge)}else for(;++Pe<De;)if((ge=Ae(Le[Pe],Pe,Le))!=null&&ge>=ge)for(Fe=ge;++Pe<De;)(ge=Ae(Le[Pe],Pe,Le))!=null&&Fe>ge&&(Fe=ge);return Fe}function oe(Le,Ae){for(var De=Ae.length,Pe=new Array(De);De--;)Pe[De]=Le[Ae[De]];return Pe}function _e(Le,Ae){if(De=Le.length){var De,Pe=0,ge=0,Fe,ce=Le[ge];for(Ae==null&&(Ae=t);++Pe<De;)(Ae(Fe=Le[Pe],ce)<0||Ae(ce,ce)!==0)&&(ce=Fe,ge=Pe);if(Ae(ce,ce)===0)return ge}}function Me(Le,Ae,De){for(var Pe=(De==null?Le.length:De)-(Ae=Ae==null?0:+Ae),ge,Fe;Pe;)Fe=Math.random()*Pe--|0,ge=Le[Pe+Ae],Le[Pe+Ae]=Le[Fe+Ae],Le[Fe+Ae]=ge;return Le}function ke(Le,Ae){var De=Le.length,Pe=-1,ge,Fe=0;if(Ae==null)for(;++Pe<De;)(ge=+Le[Pe])&&(Fe+=ge);else for(;++Pe<De;)(ge=+Ae(Le[Pe],Pe,Le))&&(Fe+=ge);return Fe}function me(Le){if(!(Fe=Le.length))return[];for(var Ae=-1,De=re(Le,ie),Pe=new Array(De);++Ae<De;)for(var ge=-1,Fe,ce=Pe[Ae]=new Array(Fe);++ge<Fe;)ce[ge]=Le[ge][Ae];return Pe}function ie(Le){return Le.length}function Se(){return me(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=z,e.thresholdFreedmanDiaconis=V,e.thresholdScott=G,e.thresholdSturges=T,e.max=Z,e.mean=H,e.median=N,e.merge=j,e.min=re,e.pairs=s,e.permute=oe,e.quantile=O,e.range=A,e.scan=_e,e.shuffle=Me,e.sum=ke,e.ticks=M,e.tickIncrement=g,e.tickStep=P,e.transpose=me,e.variance=h,e.zip=Se,Object.defineProperty(e,"__esModule",{value:!0})})});var LZ=ye((SF,vDe)=>{(function(e,t){typeof SF=="object"&&typeof vDe!="undefined"?t(SF,nC()):(e=e||self,t(e.d3=e.d3||{},e.d3))})(SF,function(e,t){"use strict";function r(){return new n}function n(){this.reset()}n.prototype={constructor:n,reset:function(){this.s=this.t=0},add:function(At){a(i,At,this.t),a(this,i.s,this.s),this.s?this.t+=i.t:this.s=i.t},valueOf:function(){return this.s}};var i=new n;function a(At,Xt,kr){var Ar=At.s=Xt+kr,Kr=Ar-Xt,Ei=Ar-Kr;At.t=Xt-Ei+(kr-Kr)}var o=1e-6,s=1e-12,l=Math.PI,u=l/2,c=l/4,f=l*2,h=180/l,d=l/180,v=Math.abs,x=Math.atan,b=Math.atan2,p=Math.cos,C=Math.ceil,E=Math.exp,A=Math.log,L=Math.pow,_=Math.sin,k=Math.sign||function(At){return At>0?1:At<0?-1:0},M=Math.sqrt,g=Math.tan;function P(At){return At>1?0:At<-1?l:Math.acos(At)}function T(At){return At>1?u:At<-1?-u:Math.asin(At)}function z(At){return(At=_(At/2))*At}function O(){}function V(At,Xt){At&&Z.hasOwnProperty(At.type)&&Z[At.type](At,Xt)}var G={Feature:function(At,Xt){V(At.geometry,Xt)},FeatureCollection:function(At,Xt){for(var kr=At.features,Ar=-1,Kr=kr.length;++Ar<Kr;)V(kr[Ar].geometry,Xt)}},Z={Sphere:function(At,Xt){Xt.sphere()},Point:function(At,Xt){At=At.coordinates,Xt.point(At[0],At[1],At[2])},MultiPoint:function(At,Xt){for(var kr=At.coordinates,Ar=-1,Kr=kr.length;++Ar<Kr;)At=kr[Ar],Xt.point(At[0],At[1],At[2])},LineString:function(At,Xt){H(At.coordinates,Xt,0)},MultiLineString:function(At,Xt){for(var kr=At.coordinates,Ar=-1,Kr=kr.length;++Ar<Kr;)H(kr[Ar],Xt,0)},Polygon:function(At,Xt){N(At.coordinates,Xt)},MultiPolygon:function(At,Xt){for(var kr=At.coordinates,Ar=-1,Kr=kr.length;++Ar<Kr;)N(kr[Ar],Xt)},GeometryCollection:function(At,Xt){for(var kr=At.geometries,Ar=-1,Kr=kr.length;++Ar<Kr;)V(kr[Ar],Xt)}};function H(At,Xt,kr){var Ar=-1,Kr=At.length-kr,Ei;for(Xt.lineStart();++Ar<Kr;)Ei=At[Ar],Xt.point(Ei[0],Ei[1],Ei[2]);Xt.lineEnd()}function N(At,Xt){var kr=-1,Ar=At.length;for(Xt.polygonStart();++kr<Ar;)H(At[kr],Xt,1);Xt.polygonEnd()}function j(At,Xt){At&&G.hasOwnProperty(At.type)?G[At.type](At,Xt):V(At,Xt)}var re=r(),oe=r(),_e,Me,ke,me,ie,Se={point:O,lineStart:O,lineEnd:O,polygonStart:function(){re.reset(),Se.lineStart=Le,Se.lineEnd=Ae},polygonEnd:function(){var At=+re;oe.add(At<0?f+At:At),this.lineStart=this.lineEnd=this.point=O},sphere:function(){oe.add(f)}};function Le(){Se.point=De}function Ae(){Pe(_e,Me)}function De(At,Xt){Se.point=Pe,_e=At,Me=Xt,At*=d,Xt*=d,ke=At,me=p(Xt=Xt/2+c),ie=_(Xt)}function Pe(At,Xt){At*=d,Xt*=d,Xt=Xt/2+c;var kr=At-ke,Ar=kr>=0?1:-1,Kr=Ar*kr,Ei=p(Xt),Wi=_(Xt),hn=ie*Wi,Tn=me*Ei+hn*p(Kr),Bn=hn*Ar*_(Kr);re.add(b(Bn,Tn)),ke=At,me=Ei,ie=Wi}function ge(At){return oe.reset(),j(At,Se),oe*2}function Fe(At){return[b(At[1],At[0]),T(At[2])]}function ce(At){var Xt=At[0],kr=At[1],Ar=p(kr);return[Ar*p(Xt),Ar*_(Xt),_(kr)]}function Ze(At,Xt){return At[0]*Xt[0]+At[1]*Xt[1]+At[2]*Xt[2]}function ct(At,Xt){return[At[1]*Xt[2]-At[2]*Xt[1],At[2]*Xt[0]-At[0]*Xt[2],At[0]*Xt[1]-At[1]*Xt[0]]}function pt(At,Xt){At[0]+=Xt[0],At[1]+=Xt[1],At[2]+=Xt[2]}function Wt(At,Xt){return[At[0]*Xt,At[1]*Xt,At[2]*Xt]}function st(At){var Xt=M(At[0]*At[0]+At[1]*At[1]+At[2]*At[2]);At[0]/=Xt,At[1]/=Xt,At[2]/=Xt}var lt,Gt,Nt,$t,sr,wr,ur,Qe,Et=r(),er,Ut,Ft={point:bt,lineStart:Yt,lineEnd:lr,polygonStart:function(){Ft.point=Tr,Ft.lineStart=Rr,Ft.lineEnd=ei,Et.reset(),Se.polygonStart()},polygonEnd:function(){Se.polygonEnd(),Ft.point=bt,Ft.lineStart=Yt,Ft.lineEnd=lr,re<0?(lt=-(Nt=180),Gt=-($t=90)):Et>o?$t=90:Et<-o&&(Gt=-90),Ut[0]=lt,Ut[1]=Nt},sphere:function(){lt=-(Nt=180),Gt=-($t=90)}};function bt(At,Xt){er.push(Ut=[lt=At,Nt=At]),Xt<Gt&&(Gt=Xt),Xt>$t&&($t=Xt)}function yt(At,Xt){var kr=ce([At*d,Xt*d]);if(Qe){var Ar=ct(Qe,kr),Kr=[Ar[1],-Ar[0],0],Ei=ct(Kr,Ar);st(Ei),Ei=Fe(Ei);var Wi=At-sr,hn=Wi>0?1:-1,Tn=Ei[0]*h*hn,Bn,Zi=v(Wi)>180;Zi^(hn*sr<Tn&&Tn<hn*At)?(Bn=Ei[1]*h,Bn>$t&&($t=Bn)):(Tn=(Tn+360)%360-180,Zi^(hn*sr<Tn&&Tn<hn*At)?(Bn=-Ei[1]*h,Bn<Gt&&(Gt=Bn)):(Xt<Gt&&(Gt=Xt),Xt>$t&&($t=Xt))),Zi?At<sr?Wr(lt,At)>Wr(lt,Nt)&&(Nt=At):Wr(At,Nt)>Wr(lt,Nt)&&(lt=At):Nt>=lt?(At<lt&&(lt=At),At>Nt&&(Nt=At)):At>sr?Wr(lt,At)>Wr(lt,Nt)&&(Nt=At):Wr(At,Nt)>Wr(lt,Nt)&&(lt=At)}else er.push(Ut=[lt=At,Nt=At]);Xt<Gt&&(Gt=Xt),Xt>$t&&($t=Xt),Qe=kr,sr=At}function Yt(){Ft.point=yt}function lr(){Ut[0]=lt,Ut[1]=Nt,Ft.point=bt,Qe=null}function Tr(At,Xt){if(Qe){var kr=At-sr;Et.add(v(kr)>180?kr+(kr>0?360:-360):kr)}else wr=At,ur=Xt;Se.point(At,Xt),yt(At,Xt)}function Rr(){Se.lineStart()}function ei(){Tr(wr,ur),Se.lineEnd(),v(Et)>o&&(lt=-(Nt=180)),Ut[0]=lt,Ut[1]=Nt,Qe=null}function Wr(At,Xt){return(Xt-=At)<0?Xt+360:Xt}function Ur(At,Xt){return At[0]-Xt[0]}function dt(At,Xt){return At[0]<=At[1]?At[0]<=Xt&&Xt<=At[1]:Xt<At[0]||At[1]<Xt}function Ge(At){var Xt,kr,Ar,Kr,Ei,Wi,hn;if($t=Nt=-(lt=Gt=1/0),er=[],j(At,Ft),kr=er.length){for(er.sort(Ur),Xt=1,Ar=er[0],Ei=[Ar];Xt<kr;++Xt)Kr=er[Xt],dt(Ar,Kr[0])||dt(Ar,Kr[1])?(Wr(Ar[0],Kr[1])>Wr(Ar[0],Ar[1])&&(Ar[1]=Kr[1]),Wr(Kr[0],Ar[1])>Wr(Ar[0],Ar[1])&&(Ar[0]=Kr[0])):Ei.push(Ar=Kr);for(Wi=-1/0,kr=Ei.length-1,Xt=0,Ar=Ei[kr];Xt<=kr;Ar=Kr,++Xt)Kr=Ei[Xt],(hn=Wr(Ar[1],Kr[0]))>Wi&&(Wi=hn,lt=Kr[0],Nt=Ar[1])}return er=Ut=null,lt===1/0||Gt===1/0?[[NaN,NaN],[NaN,NaN]]:[[lt,Gt],[Nt,$t]]}var Je,je,$e,wt,Ie,xe,Ce,vt,nr,ir,pr,oi,di,Jr,fi,Hi,Pn={sphere:O,point:wn,lineStart:Vn,lineEnd:ua,polygonStart:function(){Pn.lineStart=Vt,Pn.lineEnd=_t},polygonEnd:function(){Pn.lineStart=Vn,Pn.lineEnd=ua}};function wn(At,Xt){At*=d,Xt*=d;var kr=p(Xt);pn(kr*p(At),kr*_(At),_(Xt))}function pn(At,Xt,kr){++Je,$e+=(At-$e)/Je,wt+=(Xt-wt)/Je,Ie+=(kr-Ie)/Je}function Vn(){Pn.point=kn}function kn(At,Xt){At*=d,Xt*=d;var kr=p(Xt);Jr=kr*p(At),fi=kr*_(At),Hi=_(Xt),Pn.point=ea,pn(Jr,fi,Hi)}function ea(At,Xt){At*=d,Xt*=d;var kr=p(Xt),Ar=kr*p(At),Kr=kr*_(At),Ei=_(Xt),Wi=b(M((Wi=fi*Ei-Hi*Kr)*Wi+(Wi=Hi*Ar-Jr*Ei)*Wi+(Wi=Jr*Kr-fi*Ar)*Wi),Jr*Ar+fi*Kr+Hi*Ei);je+=Wi,xe+=Wi*(Jr+(Jr=Ar)),Ce+=Wi*(fi+(fi=Kr)),vt+=Wi*(Hi+(Hi=Ei)),pn(Jr,fi,Hi)}function ua(){Pn.point=wn}function Vt(){Pn.point=tr}function _t(){ar(oi,di),Pn.point=wn}function tr(At,Xt){oi=At,di=Xt,At*=d,Xt*=d,Pn.point=ar;var kr=p(Xt);Jr=kr*p(At),fi=kr*_(At),Hi=_(Xt),pn(Jr,fi,Hi)}function ar(At,Xt){At*=d,Xt*=d;var kr=p(Xt),Ar=kr*p(At),Kr=kr*_(At),Ei=_(Xt),Wi=fi*Ei-Hi*Kr,hn=Hi*Ar-Jr*Ei,Tn=Jr*Kr-fi*Ar,Bn=M(Wi*Wi+hn*hn+Tn*Tn),Zi=T(Bn),$i=Bn&&-Zi/Bn;nr+=$i*Wi,ir+=$i*hn,pr+=$i*Tn,je+=Zi,xe+=Zi*(Jr+(Jr=Ar)),Ce+=Zi*(fi+(fi=Kr)),vt+=Zi*(Hi+(Hi=Ei)),pn(Jr,fi,Hi)}function Er(At){Je=je=$e=wt=Ie=xe=Ce=vt=nr=ir=pr=0,j(At,Pn);var Xt=nr,kr=ir,Ar=pr,Kr=Xt*Xt+kr*kr+Ar*Ar;return Kr<s&&(Xt=xe,kr=Ce,Ar=vt,je<o&&(Xt=$e,kr=wt,Ar=Ie),Kr=Xt*Xt+kr*kr+Ar*Ar,Kr<s)?[NaN,NaN]:[b(kr,Xt)*h,T(Ar/M(Kr))*h]}function Zr(At){return function(){return At}}function ri(At,Xt){function kr(Ar,Kr){return Ar=At(Ar,Kr),Xt(Ar[0],Ar[1])}return At.invert&&Xt.invert&&(kr.invert=function(Ar,Kr){return Ar=Xt.invert(Ar,Kr),Ar&&At.invert(Ar[0],Ar[1])}),kr}function $r(At,Xt){return[v(At)>l?At+Math.round(-At/f)*f:At,Xt]}$r.invert=$r;function zi(At,Xt,kr){return(At%=f)?Xt||kr?ri(en(At),cn(Xt,kr)):en(At):Xt||kr?cn(Xt,kr):$r}function Ji(At){return function(Xt,kr){return Xt+=At,[Xt>l?Xt-f:Xt<-l?Xt+f:Xt,kr]}}function en(At){var Xt=Ji(At);return Xt.invert=Ji(-At),Xt}function cn(At,Xt){var kr=p(At),Ar=_(At),Kr=p(Xt),Ei=_(Xt);function Wi(hn,Tn){var Bn=p(Tn),Zi=p(hn)*Bn,$i=_(hn)*Bn,an=_(Tn),Di=an*kr+Zi*Ar;return[b($i*Kr-Di*Ei,Zi*kr-an*Ar),T(Di*Kr+$i*Ei)]}return Wi.invert=function(hn,Tn){var Bn=p(Tn),Zi=p(hn)*Bn,$i=_(hn)*Bn,an=_(Tn),Di=an*Kr-$i*Ei;return[b($i*Kr+an*Ei,Zi*kr+Di*Ar),T(Di*kr-Zi*Ar)]},Wi}function yn(At){At=zi(At[0]*d,At[1]*d,At.length>2?At[2]*d:0);function Xt(kr){return kr=At(kr[0]*d,kr[1]*d),kr[0]*=h,kr[1]*=h,kr}return Xt.invert=function(kr){return kr=At.invert(kr[0]*d,kr[1]*d),kr[0]*=h,kr[1]*=h,kr},Xt}function Mn(At,Xt,kr,Ar,Kr,Ei){if(kr){var Wi=p(Xt),hn=_(Xt),Tn=Ar*kr;Kr==null?(Kr=Xt+Ar*f,Ei=Xt-Tn/2):(Kr=Ba(Wi,Kr),Ei=Ba(Wi,Ei),(Ar>0?Kr<Ei:Kr>Ei)&&(Kr+=Ar*f));for(var Bn,Zi=Kr;Ar>0?Zi>Ei:Zi<Ei;Zi-=Tn)Bn=Fe([Wi,-hn*p(Zi),-hn*_(Zi)]),At.point(Bn[0],Bn[1])}}function Ba(At,Xt){Xt=ce(Xt),Xt[0]-=At,st(Xt);var kr=P(-Xt[1]);return((-Xt[2]<0?-kr:kr)+f-o)%f}function la(){var At=Zr([0,0]),Xt=Zr(90),kr=Zr(6),Ar,Kr,Ei={point:Wi};function Wi(Tn,Bn){Ar.push(Tn=Kr(Tn,Bn)),Tn[0]*=h,Tn[1]*=h}function hn(){var Tn=At.apply(this,arguments),Bn=Xt.apply(this,arguments)*d,Zi=kr.apply(this,arguments)*d;return Ar=[],Kr=zi(-Tn[0]*d,-Tn[1]*d,0).invert,Mn(Ei,Bn,Zi,1),Tn={type:"Polygon",coordinates:[Ar]},Ar=Kr=null,Tn}return hn.center=function(Tn){return arguments.length?(At=typeof Tn=="function"?Tn:Zr([+Tn[0],+Tn[1]]),hn):At},hn.radius=function(Tn){return arguments.length?(Xt=typeof Tn=="function"?Tn:Zr(+Tn),hn):Xt},hn.precision=function(Tn){return arguments.length?(kr=typeof Tn=="function"?Tn:Zr(+Tn),hn):kr},hn}function ma(){var At=[],Xt;return{point:function(kr,Ar,Kr){Xt.push([kr,Ar,Kr])},lineStart:function(){At.push(Xt=[])},lineEnd:O,rejoin:function(){At.length>1&&At.push(At.pop().concat(At.shift()))},result:function(){var kr=At;return At=[],Xt=null,kr}}}function Wa(At,Xt){return v(At[0]-Xt[0])<o&&v(At[1]-Xt[1])<o}function Fa(At,Xt,kr,Ar){this.x=At,this.z=Xt,this.o=kr,this.e=Ar,this.v=!1,this.n=this.p=null}function Wo(At,Xt,kr,Ar,Kr){var Ei=[],Wi=[],hn,Tn;if(At.forEach(function($n){if(!((ka=$n.length-1)<=0)){var ka,Ra=$n[0],La=$n[ka],Na;if(Wa(Ra,La)){if(!Ra[2]&&!La[2]){for(Kr.lineStart(),hn=0;hn<ka;++hn)Kr.point((Ra=$n[hn])[0],Ra[1]);Kr.lineEnd();return}La[0]+=2*o}Ei.push(Na=new Fa(Ra,$n,null,!0)),Wi.push(Na.o=new Fa(Ra,null,Na,!1)),Ei.push(Na=new Fa(La,$n,null,!1)),Wi.push(Na.o=new Fa(La,null,Na,!0))}}),!!Ei.length){for(Wi.sort(Xt),da(Ei),da(Wi),hn=0,Tn=Wi.length;hn<Tn;++hn)Wi[hn].e=kr=!kr;for(var Bn=Ei[0],Zi,$i;;){for(var an=Bn,Di=!0;an.v;)if((an=an.n)===Bn)return;Zi=an.z,Kr.lineStart();do{if(an.v=an.o.v=!0,an.e){if(Di)for(hn=0,Tn=Zi.length;hn<Tn;++hn)Kr.point(($i=Zi[hn])[0],$i[1]);else Ar(an.x,an.n.x,1,Kr);an=an.n}else{if(Di)for(Zi=an.p.z,hn=Zi.length-1;hn>=0;--hn)Kr.point(($i=Zi[hn])[0],$i[1]);else Ar(an.x,an.p.x,-1,Kr);an=an.p}an=an.o,Zi=an.z,Di=!Di}while(!an.v);Kr.lineEnd()}}}function da(At){if(Xt=At.length){for(var Xt,kr=0,Ar=At[0],Kr;++kr<Xt;)Ar.n=Kr=At[kr],Kr.p=Ar,Ar=Kr;Ar.n=Kr=At[0],Kr.p=Ar}}var Wn=r();function Ga(At){return v(At[0])<=l?At[0]:k(At[0])*((v(At[0])+l)%f-l)}function vo(At,Xt){var kr=Ga(Xt),Ar=Xt[1],Kr=_(Ar),Ei=[_(kr),-p(kr),0],Wi=0,hn=0;Wn.reset(),Kr===1?Ar=u+o:Kr===-1&&(Ar=-u-o);for(var Tn=0,Bn=At.length;Tn<Bn;++Tn)if($i=(Zi=At[Tn]).length)for(var Zi,$i,an=Zi[$i-1],Di=Ga(an),$n=an[1]/2+c,ka=_($n),Ra=p($n),La=0;La<$i;++La,Di=Yn,ka=Ka,Ra=bo,an=Na){var Na=Zi[La],Yn=Ga(Na),zn=Na[1]/2+c,Ka=_(zn),bo=p(zn),Xo=Yn-Di,Ms=Xo>=0?1:-1,os=Ms*Xo,Ts=os>l,Ho=ka*Ka;if(Wn.add(b(Ho*Ms*_(os),Ra*bo+Ho*p(os))),Wi+=Ts?Xo+Ms*f:Xo,Ts^Di>=kr^Yn>=kr){var yl=ct(ce(an),ce(Na));st(yl);var Xs=ct(Ei,yl);st(Xs);var Ps=(Ts^Xo>=0?-1:1)*T(Xs[2]);(Ar>Ps||Ar===Ps&&(yl[0]||yl[1]))&&(hn+=Ts^Xo>=0?1:-1)}}return(Wi<-o||Wi<o&&Wn<-o)^hn&1}function jn(At,Xt,kr,Ar){return function(Kr){var Ei=Xt(Kr),Wi=ma(),hn=Xt(Wi),Tn=!1,Bn,Zi,$i,an={point:Di,lineStart:ka,lineEnd:Ra,polygonStart:function(){an.point=La,an.lineStart=Na,an.lineEnd=Yn,Zi=[],Bn=[]},polygonEnd:function(){an.point=Di,an.lineStart=ka,an.lineEnd=Ra,Zi=t.merge(Zi);var zn=vo(Bn,Ar);Zi.length?(Tn||(Kr.polygonStart(),Tn=!0),Wo(Zi,Cr,zn,kr,Kr)):zn&&(Tn||(Kr.polygonStart(),Tn=!0),Kr.lineStart(),kr(null,null,1,Kr),Kr.lineEnd()),Tn&&(Kr.polygonEnd(),Tn=!1),Zi=Bn=null},sphere:function(){Kr.polygonStart(),Kr.lineStart(),kr(null,null,1,Kr),Kr.lineEnd(),Kr.polygonEnd()}};function Di(zn,Ka){At(zn,Ka)&&Kr.point(zn,Ka)}function $n(zn,Ka){Ei.point(zn,Ka)}function ka(){an.point=$n,Ei.lineStart()}function Ra(){an.point=Di,Ei.lineEnd()}function La(zn,Ka){$i.push([zn,Ka]),hn.point(zn,Ka)}function Na(){hn.lineStart(),$i=[]}function Yn(){La($i[0][0],$i[0][1]),hn.lineEnd();var zn=hn.clean(),Ka=Wi.result(),bo,Xo=Ka.length,Ms,os,Ts;if($i.pop(),Bn.push($i),$i=null,!!Xo){if(zn&1){if(os=Ka[0],(Ms=os.length-1)>0){for(Tn||(Kr.polygonStart(),Tn=!0),Kr.lineStart(),bo=0;bo<Ms;++bo)Kr.point((Ts=os[bo])[0],Ts[1]);Kr.lineEnd()}return}Xo>1&&zn&2&&Ka.push(Ka.pop().concat(Ka.shift())),Zi.push(Ka.filter(St))}}return an}}function St(At){return At.length>1}function Cr(At,Xt){return((At=At.x)[0]<0?At[1]-u-o:u-At[1])-((Xt=Xt.x)[0]<0?Xt[1]-u-o:u-Xt[1])}var Qr=jn(function(){return!0},pi,Sn,[-l,-u]);function pi(At){var Xt=NaN,kr=NaN,Ar=NaN,Kr;return{lineStart:function(){At.lineStart(),Kr=1},point:function(Ei,Wi){var hn=Ei>0?l:-l,Tn=v(Ei-Xt);v(Tn-l)<o?(At.point(Xt,kr=(kr+Wi)/2>0?u:-u),At.point(Ar,kr),At.lineEnd(),At.lineStart(),At.point(hn,kr),At.point(Ei,kr),Kr=0):Ar!==hn&&Tn>=l&&(v(Xt-Ar)<o&&(Xt-=Ar*o),v(Ei-hn)<o&&(Ei-=hn*o),kr=fn(Xt,kr,Ei,Wi),At.point(Ar,kr),At.lineEnd(),At.lineStart(),At.point(hn,kr),Kr=0),At.point(Xt=Ei,kr=Wi),Ar=hn},lineEnd:function(){At.lineEnd(),Xt=kr=NaN},clean:function(){return 2-Kr}}}function fn(At,Xt,kr,Ar){var Kr,Ei,Wi=_(At-kr);return v(Wi)>o?x((_(Xt)*(Ei=p(Ar))*_(kr)-_(Ar)*(Kr=p(Xt))*_(At))/(Kr*Ei*Wi)):(Xt+Ar)/2}function Sn(At,Xt,kr,Ar){var Kr;if(At==null)Kr=kr*u,Ar.point(-l,Kr),Ar.point(0,Kr),Ar.point(l,Kr),Ar.point(l,0),Ar.point(l,-Kr),Ar.point(0,-Kr),Ar.point(-l,-Kr),Ar.point(-l,0),Ar.point(-l,Kr);else if(v(At[0]-Xt[0])>o){var Ei=At[0]<Xt[0]?l:-l;Kr=kr*Ei/2,Ar.point(-Ei,Kr),Ar.point(0,Kr),Ar.point(Ei,Kr)}else Ar.point(Xt[0],Xt[1])}function En(At){var Xt=p(At),kr=6*d,Ar=Xt>0,Kr=v(Xt)>o;function Ei(Zi,$i,an,Di){Mn(Di,At,kr,an,Zi,$i)}function Wi(Zi,$i){return p(Zi)*p($i)>Xt}function hn(Zi){var $i,an,Di,$n,ka;return{lineStart:function(){$n=Di=!1,ka=1},point:function(Ra,La){var Na=[Ra,La],Yn,zn=Wi(Ra,La),Ka=Ar?zn?0:Bn(Ra,La):zn?Bn(Ra+(Ra<0?l:-l),La):0;if(!$i&&($n=Di=zn)&&Zi.lineStart(),zn!==Di&&(Yn=Tn($i,Na),(!Yn||Wa($i,Yn)||Wa(Na,Yn))&&(Na[2]=1)),zn!==Di)ka=0,zn?(Zi.lineStart(),Yn=Tn(Na,$i),Zi.point(Yn[0],Yn[1])):(Yn=Tn($i,Na),Zi.point(Yn[0],Yn[1],2),Zi.lineEnd()),$i=Yn;else if(Kr&&$i&&Ar^zn){var bo;!(Ka&an)&&(bo=Tn(Na,$i,!0))&&(ka=0,Ar?(Zi.lineStart(),Zi.point(bo[0][0],bo[0][1]),Zi.point(bo[1][0],bo[1][1]),Zi.lineEnd()):(Zi.point(bo[1][0],bo[1][1]),Zi.lineEnd(),Zi.lineStart(),Zi.point(bo[0][0],bo[0][1],3)))}zn&&(!$i||!Wa($i,Na))&&Zi.point(Na[0],Na[1]),$i=Na,Di=zn,an=Ka},lineEnd:function(){Di&&Zi.lineEnd(),$i=null},clean:function(){return ka|($n&&Di)<<1}}}function Tn(Zi,$i,an){var Di=ce(Zi),$n=ce($i),ka=[1,0,0],Ra=ct(Di,$n),La=Ze(Ra,Ra),Na=Ra[0],Yn=La-Na*Na;if(!Yn)return!an&&Zi;var zn=Xt*La/Yn,Ka=-Xt*Na/Yn,bo=ct(ka,Ra),Xo=Wt(ka,zn),Ms=Wt(Ra,Ka);pt(Xo,Ms);var os=bo,Ts=Ze(Xo,os),Ho=Ze(os,os),yl=Ts*Ts-Ho*(Ze(Xo,Xo)-1);if(!(yl<0)){var Xs=M(yl),Ps=Wt(os,(-Ts-Xs)/Ho);if(pt(Ps,Xo),Ps=Fe(Ps),!an)return Ps;var va=Zi[0],no=$i[0],_s=Zi[1],is=$i[1],$l;no<va&&($l=va,va=no,no=$l);var ku=no-va,Yu=v(ku-l)<o,Nc=Yu||ku<o;if(!Yu&&is<_s&&($l=_s,_s=is,is=$l),Nc?Yu?_s+is>0^Ps[1]<(v(Ps[0]-va)<o?_s:is):_s<=Ps[1]&&Ps[1]<=is:ku>l^(va<=Ps[0]&&Ps[0]<=no)){var gu=Wt(os,(-Ts+Xs)/Ho);return pt(gu,Xo),[Ps,Fe(gu)]}}}function Bn(Zi,$i){var an=Ar?At:l-At,Di=0;return Zi<-an?Di|=1:Zi>an&&(Di|=2),$i<-an?Di|=4:$i>an&&(Di|=8),Di}return jn(Wi,hn,Ei,Ar?[0,-At]:[-l,At-l])}function ki(At,Xt,kr,Ar,Kr,Ei){var Wi=At[0],hn=At[1],Tn=Xt[0],Bn=Xt[1],Zi=0,$i=1,an=Tn-Wi,Di=Bn-hn,$n;if($n=kr-Wi,!(!an&&$n>0)){if($n/=an,an<0){if($n<Zi)return;$n<$i&&($i=$n)}else if(an>0){if($n>$i)return;$n>Zi&&(Zi=$n)}if($n=Kr-Wi,!(!an&&$n<0)){if($n/=an,an<0){if($n>$i)return;$n>Zi&&(Zi=$n)}else if(an>0){if($n<Zi)return;$n<$i&&($i=$n)}if($n=Ar-hn,!(!Di&&$n>0)){if($n/=Di,Di<0){if($n<Zi)return;$n<$i&&($i=$n)}else if(Di>0){if($n>$i)return;$n>Zi&&(Zi=$n)}if($n=Ei-hn,!(!Di&&$n<0)){if($n/=Di,Di<0){if($n>$i)return;$n>Zi&&(Zi=$n)}else if(Di>0){if($n<Zi)return;$n<$i&&($i=$n)}return Zi>0&&(At[0]=Wi+Zi*an,At[1]=hn+Zi*Di),$i<1&&(Xt[0]=Wi+$i*an,Xt[1]=hn+$i*Di),!0}}}}}var _n=1e9,ya=-_n;function Jn(At,Xt,kr,Ar){function Kr(Bn,Zi){return At<=Bn&&Bn<=kr&&Xt<=Zi&&Zi<=Ar}function Ei(Bn,Zi,$i,an){var Di=0,$n=0;if(Bn==null||(Di=Wi(Bn,$i))!==($n=Wi(Zi,$i))||Tn(Bn,Zi)<0^$i>0)do an.point(Di===0||Di===3?At:kr,Di>1?Ar:Xt);while((Di=(Di+$i+4)%4)!==$n);else an.point(Zi[0],Zi[1])}function Wi(Bn,Zi){return v(Bn[0]-At)<o?Zi>0?0:3:v(Bn[0]-kr)<o?Zi>0?2:1:v(Bn[1]-Xt)<o?Zi>0?1:0:Zi>0?3:2}function hn(Bn,Zi){return Tn(Bn.x,Zi.x)}function Tn(Bn,Zi){var $i=Wi(Bn,1),an=Wi(Zi,1);return $i!==an?$i-an:$i===0?Zi[1]-Bn[1]:$i===1?Bn[0]-Zi[0]:$i===2?Bn[1]-Zi[1]:Zi[0]-Bn[0]}return function(Bn){var Zi=Bn,$i=ma(),an,Di,$n,ka,Ra,La,Na,Yn,zn,Ka,bo,Xo={point:Ms,lineStart:yl,lineEnd:Xs,polygonStart:Ts,polygonEnd:Ho};function Ms(va,no){Kr(va,no)&&Zi.point(va,no)}function os(){for(var va=0,no=0,_s=Di.length;no<_s;++no)for(var is=Di[no],$l=1,ku=is.length,Yu=is[0],Nc,gu,Uc=Yu[0],xu=Yu[1];$l<ku;++$l)Nc=Uc,gu=xu,Yu=is[$l],Uc=Yu[0],xu=Yu[1],gu<=Ar?xu>Ar&&(Uc-Nc)*(Ar-gu)>(xu-gu)*(At-Nc)&&++va:xu<=Ar&&(Uc-Nc)*(Ar-gu)<(xu-gu)*(At-Nc)&&--va;return va}function Ts(){Zi=$i,an=[],Di=[],bo=!0}function Ho(){var va=os(),no=bo&&va,_s=(an=t.merge(an)).length;(no||_s)&&(Bn.polygonStart(),no&&(Bn.lineStart(),Ei(null,null,1,Bn),Bn.lineEnd()),_s&&Wo(an,hn,va,Ei,Bn),Bn.polygonEnd()),Zi=Bn,an=Di=$n=null}function yl(){Xo.point=Ps,Di&&Di.push($n=[]),Ka=!0,zn=!1,Na=Yn=NaN}function Xs(){an&&(Ps(ka,Ra),La&&zn&&$i.rejoin(),an.push($i.result())),Xo.point=Ms,zn&&Zi.lineEnd()}function Ps(va,no){var _s=Kr(va,no);if(Di&&$n.push([va,no]),Ka)ka=va,Ra=no,La=_s,Ka=!1,_s&&(Zi.lineStart(),Zi.point(va,no));else if(_s&&zn)Zi.point(va,no);else{var is=[Na=Math.max(ya,Math.min(_n,Na)),Yn=Math.max(ya,Math.min(_n,Yn))],$l=[va=Math.max(ya,Math.min(_n,va)),no=Math.max(ya,Math.min(_n,no))];ki(is,$l,At,Xt,kr,Ar)?(zn||(Zi.lineStart(),Zi.point(is[0],is[1])),Zi.point($l[0],$l[1]),_s||Zi.lineEnd(),bo=!1):_s&&(Zi.lineStart(),Zi.point(va,no),bo=!1)}Na=va,Yn=no,zn=_s}return Xo}}function Ma(){var At=0,Xt=0,kr=960,Ar=500,Kr,Ei,Wi;return Wi={stream:function(hn){return Kr&&Ei===hn?Kr:Kr=Jn(At,Xt,kr,Ar)(Ei=hn)},extent:function(hn){return arguments.length?(At=+hn[0][0],Xt=+hn[0][1],kr=+hn[1][0],Ar=+hn[1][1],Kr=Ei=null,Wi):[[At,Xt],[kr,Ar]]}}}var _o=r(),No,po,Lo,Co={sphere:O,point:O,lineStart:Fs,lineEnd:O,polygonStart:O,polygonEnd:O};function Fs(){Co.point=ul,Co.lineEnd=zs}function zs(){Co.point=Co.lineEnd=O}function ul(At,Xt){At*=d,Xt*=d,No=At,po=_(Xt),Lo=p(Xt),Co.point=cl}function cl(At,Xt){At*=d,Xt*=d;var kr=_(Xt),Ar=p(Xt),Kr=v(At-No),Ei=p(Kr),Wi=_(Kr),hn=Ar*Wi,Tn=Lo*kr-po*Ar*Ei,Bn=po*kr+Lo*Ar*Ei;_o.add(b(M(hn*hn+Tn*Tn),Bn)),No=At,po=kr,Lo=Ar}function Fl(At){return _o.reset(),j(At,Co),+_o}var cs=[null,null],nl={type:"LineString",coordinates:cs};function Ss(At,Xt){return cs[0]=At,cs[1]=Xt,Fl(nl)}var fl={Feature:function(At,Xt){return Os(At.geometry,Xt)},FeatureCollection:function(At,Xt){for(var kr=At.features,Ar=-1,Kr=kr.length;++Ar<Kr;)if(Os(kr[Ar].geometry,Xt))return!0;return!1}},Js={Sphere:function(){return!0},Point:function(At,Xt){return Io(At.coordinates,Xt)},MultiPoint:function(At,Xt){for(var kr=At.coordinates,Ar=-1,Kr=kr.length;++Ar<Kr;)if(Io(kr[Ar],Xt))return!0;return!1},LineString:function(At,Xt){return us(At.coordinates,Xt)},MultiLineString:function(At,Xt){for(var kr=At.coordinates,Ar=-1,Kr=kr.length;++Ar<Kr;)if(us(kr[Ar],Xt))return!0;return!1},Polygon:function(At,Xt){return Zl(At.coordinates,Xt)},MultiPolygon:function(At,Xt){for(var kr=At.coordinates,Ar=-1,Kr=kr.length;++Ar<Kr;)if(Zl(kr[Ar],Xt))return!0;return!1},GeometryCollection:function(At,Xt){for(var kr=At.geometries,Ar=-1,Kr=kr.length;++Ar<Kr;)if(Os(kr[Ar],Xt))return!0;return!1}};function Os(At,Xt){return At&&Js.hasOwnProperty(At.type)?Js[At.type](At,Xt):!1}function Io(At,Xt){return Ss(At,Xt)===0}function us(At,Xt){for(var kr,Ar,Kr,Ei=0,Wi=At.length;Ei<Wi;Ei++){if(Ar=Ss(At[Ei],Xt),Ar===0||Ei>0&&(Kr=Ss(At[Ei],At[Ei-1]),Kr>0&&kr<=Kr&&Ar<=Kr&&(kr+Ar-Kr)*(1-Math.pow((kr-Ar)/Kr,2))<s*Kr))return!0;kr=Ar}return!1}function Zl(At,Xt){return!!vo(At.map(Su),nc(Xt))}function Su(At){return At=At.map(nc),At.pop(),At}function nc(At){return[At[0]*d,At[1]*d]}function ws(At,Xt){return(At&&fl.hasOwnProperty(At.type)?fl[At.type]:Os)(At,Xt)}function Fn(At,Xt,kr){var Ar=t.range(At,Xt-o,kr).concat(Xt);return function(Kr){return Ar.map(function(Ei){return[Kr,Ei]})}}function _a(At,Xt,kr){var Ar=t.range(At,Xt-o,kr).concat(Xt);return function(Kr){return Ar.map(function(Ei){return[Ei,Kr]})}}function Vu(){var At,Xt,kr,Ar,Kr,Ei,Wi,hn,Tn=10,Bn=Tn,Zi=90,$i=360,an,Di,$n,ka,Ra=2.5;function La(){return{type:"MultiLineString",coordinates:Na()}}function Na(){return t.range(C(Ar/Zi)*Zi,kr,Zi).map($n).concat(t.range(C(hn/$i)*$i,Wi,$i).map(ka)).concat(t.range(C(Xt/Tn)*Tn,At,Tn).filter(function(Yn){return v(Yn%Zi)>o}).map(an)).concat(t.range(C(Ei/Bn)*Bn,Kr,Bn).filter(function(Yn){return v(Yn%$i)>o}).map(Di))}return La.lines=function(){return Na().map(function(Yn){return{type:"LineString",coordinates:Yn}})},La.outline=function(){return{type:"Polygon",coordinates:[$n(Ar).concat(ka(Wi).slice(1),$n(kr).reverse().slice(1),ka(hn).reverse().slice(1))]}},La.extent=function(Yn){return arguments.length?La.extentMajor(Yn).extentMinor(Yn):La.extentMinor()},La.extentMajor=function(Yn){return arguments.length?(Ar=+Yn[0][0],kr=+Yn[1][0],hn=+Yn[0][1],Wi=+Yn[1][1],Ar>kr&&(Yn=Ar,Ar=kr,kr=Yn),hn>Wi&&(Yn=hn,hn=Wi,Wi=Yn),La.precision(Ra)):[[Ar,hn],[kr,Wi]]},La.extentMinor=function(Yn){return arguments.length?(Xt=+Yn[0][0],At=+Yn[1][0],Ei=+Yn[0][1],Kr=+Yn[1][1],Xt>At&&(Yn=Xt,Xt=At,At=Yn),Ei>Kr&&(Yn=Ei,Ei=Kr,Kr=Yn),La.precision(Ra)):[[Xt,Ei],[At,Kr]]},La.step=function(Yn){return arguments.length?La.stepMajor(Yn).stepMinor(Yn):La.stepMinor()},La.stepMajor=function(Yn){return arguments.length?(Zi=+Yn[0],$i=+Yn[1],La):[Zi,$i]},La.stepMinor=function(Yn){return arguments.length?(Tn=+Yn[0],Bn=+Yn[1],La):[Tn,Bn]},La.precision=function(Yn){return arguments.length?(Ra=+Yn,an=Fn(Ei,Kr,90),Di=_a(Xt,At,Ra),$n=Fn(hn,Wi,90),ka=_a(Ar,kr,Ra),La):Ra},La.extentMajor([[-180,-90+o],[180,90-o]]).extentMinor([[-180,-80-o],[180,80+o]])}function zl(){return Vu()()}function xo(At,Xt){var kr=At[0]*d,Ar=At[1]*d,Kr=Xt[0]*d,Ei=Xt[1]*d,Wi=p(Ar),hn=_(Ar),Tn=p(Ei),Bn=_(Ei),Zi=Wi*p(kr),$i=Wi*_(kr),an=Tn*p(Kr),Di=Tn*_(Kr),$n=2*T(M(z(Ei-Ar)+Wi*Tn*z(Kr-kr))),ka=_($n),Ra=$n?function(La){var Na=_(La*=$n)/ka,Yn=_($n-La)/ka,zn=Yn*Zi+Na*an,Ka=Yn*$i+Na*Di,bo=Yn*hn+Na*Bn;return[b(Ka,zn)*h,b(bo,M(zn*zn+Ka*Ka))*h]}:function(){return[kr*h,Ar*h]};return Ra.distance=$n,Ra}function Yl(At){return At}var Us=r(),Hl=r(),ac,aa,Oo,qo,Ol={point:O,lineStart:O,lineEnd:O,polygonStart:function(){Ol.lineStart=Pc,Ol.lineEnd=Uf},polygonEnd:function(){Ol.lineStart=Ol.lineEnd=Ol.point=O,Us.add(v(Hl)),Hl.reset()},result:function(){var At=Us/2;return Us.reset(),At}};function Pc(){Ol.point=Do}function Do(At,Xt){Ol.point=rf,ac=Oo=At,aa=qo=Xt}function rf(At,Xt){Hl.add(qo*At-Oo*Xt),Oo=At,qo=Xt}function Uf(){rf(ac,aa)}var ml=1/0,Zc=ml,Kl=-ml,qs=Kl,yu={point:oc,lineStart:O,lineEnd:O,polygonStart:O,polygonEnd:O,result:function(){var At=[[ml,Zc],[Kl,qs]];return Kl=qs=-(Zc=ml=1/0),At}};function oc(At,Xt){At<ml&&(ml=At),At>Kl&&(Kl=At),Xt<Zc&&(Zc=Xt),Xt>qs&&(qs=Xt)}var Cf=0,sc=0,Nh=0,kf=0,fs=0,nf=0,Vf=0,Jl=0,hl=0,lc,Fu,Cs,js,Go={point:gs,lineStart:uc,lineEnd:Bs,polygonStart:function(){Go.lineStart=ad,Go.lineEnd=Po},polygonEnd:function(){Go.point=gs,Go.lineStart=uc,Go.lineEnd=Bs},result:function(){var At=hl?[Vf/hl,Jl/hl]:nf?[kf/nf,fs/nf]:Nh?[Cf/Nh,sc/Nh]:[NaN,NaN];return Cf=sc=Nh=kf=fs=nf=Vf=Jl=hl=0,At}};function gs(At,Xt){Cf+=At,sc+=Xt,++Nh}function uc(){Go.point=xl}function xl(At,Xt){Go.point=Gu,gs(Cs=At,js=Xt)}function Gu(At,Xt){var kr=At-Cs,Ar=Xt-js,Kr=M(kr*kr+Ar*Ar);kf+=Kr*(Cs+At)/2,fs+=Kr*(js+Xt)/2,nf+=Kr,gs(Cs=At,js=Xt)}function Bs(){Go.point=gs}function ad(){Go.point=od}function Po(){Yo(lc,Fu)}function od(At,Xt){Go.point=Yo,gs(lc=Cs=At,Fu=js=Xt)}function Yo(At,Xt){var kr=At-Cs,Ar=Xt-js,Kr=M(kr*kr+Ar*Ar);kf+=Kr*(Cs+At)/2,fs+=Kr*(js+Xt)/2,nf+=Kr,Kr=js*At-Cs*Xt,Vf+=Kr*(Cs+At),Jl+=Kr*(js+Xt),hl+=Kr*3,gs(Cs=At,js=Xt)}function Pa(At){this._context=At}Pa.prototype={_radius:4.5,pointRadius:function(At){return this._radius=At,this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){this._line===0&&this._context.closePath(),this._point=NaN},point:function(At,Xt){switch(this._point){case 0:{this._context.moveTo(At,Xt),this._point=1;break}case 1:{this._context.lineTo(At,Xt);break}default:{this._context.moveTo(At+this._radius,Xt),this._context.arc(At,Xt,this._radius,0,f);break}}},result:O};var af=r(),Hu,bl,Gf,Ic,mf,ql={point:O,lineStart:function(){ql.point=_h},lineEnd:function(){Hu&&Qf(bl,Gf),ql.point=O},polygonStart:function(){Hu=!0},polygonEnd:function(){Hu=null},result:function(){var At=+af;return af.reset(),At}};function _h(At,Xt){ql.point=Qf,bl=Ic=At,Gf=mf=Xt}function Qf(At,Xt){Ic-=At,mf-=Xt,af.add(M(Ic*Ic+mf*mf)),Ic=At,mf=Xt}function yf(){this._string=[]}yf.prototype={_radius:4.5,_circle:Yc(4.5),pointRadius:function(At){return(At=+At)!==this._radius&&(this._radius=At,this._circle=null),this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){this._line===0&&this._string.push("Z"),this._point=NaN},point:function(At,Xt){switch(this._point){case 0:{this._string.push("M",At,",",Xt),this._point=1;break}case 1:{this._string.push("L",At,",",Xt);break}default:{this._circle==null&&(this._circle=Yc(this._radius)),this._string.push("M",At,",",Xt,this._circle);break}}},result:function(){if(this._string.length){var At=this._string.join("");return this._string=[],At}else return null}};function Yc(At){return"m0,"+At+"a"+At+","+At+" 0 1,1 0,"+-2*At+"a"+At+","+At+" 0 1,1 0,"+2*At+"z"}function eh(At,Xt){var kr=4.5,Ar,Kr;function Ei(Wi){return Wi&&(typeof kr=="function"&&Kr.pointRadius(+kr.apply(this,arguments)),j(Wi,Ar(Kr))),Kr.result()}return Ei.area=function(Wi){return j(Wi,Ar(Ol)),Ol.result()},Ei.measure=function(Wi){return j(Wi,Ar(ql)),ql.result()},Ei.bounds=function(Wi){return j(Wi,Ar(yu)),yu.result()},Ei.centroid=function(Wi){return j(Wi,Ar(Go)),Go.result()},Ei.projection=function(Wi){return arguments.length?(Ar=Wi==null?(At=null,Yl):(At=Wi).stream,Ei):At},Ei.context=function(Wi){return arguments.length?(Kr=Wi==null?(Xt=null,new yf):new Pa(Xt=Wi),typeof kr!="function"&&Kr.pointRadius(kr),Ei):Xt},Ei.pointRadius=function(Wi){return arguments.length?(kr=typeof Wi=="function"?Wi:(Kr.pointRadius(+Wi),+Wi),Ei):kr},Ei.projection(At).context(Xt)}function th(At){return{stream:ju(At)}}function ju(At){return function(Xt){var kr=new Hf;for(var Ar in At)kr[Ar]=At[Ar];return kr.stream=Xt,kr}}function Hf(){}Hf.prototype={constructor:Hf,point:function(At,Xt){this.stream.point(At,Xt)},sphere:function(){this.stream.sphere()},lineStart:function(){this.stream.lineStart()},lineEnd:function(){this.stream.lineEnd()},polygonStart:function(){this.stream.polygonStart()},polygonEnd:function(){this.stream.polygonEnd()}};function cc(At,Xt,kr){var Ar=At.clipExtent&&At.clipExtent();return At.scale(150).translate([0,0]),Ar!=null&&At.clipExtent(null),j(kr,At.stream(yu)),Xt(yu.result()),Ar!=null&&At.clipExtent(Ar),At}function of(At,Xt,kr){return cc(At,function(Ar){var Kr=Xt[1][0]-Xt[0][0],Ei=Xt[1][1]-Xt[0][1],Wi=Math.min(Kr/(Ar[1][0]-Ar[0][0]),Ei/(Ar[1][1]-Ar[0][1])),hn=+Xt[0][0]+(Kr-Wi*(Ar[1][0]+Ar[0][0]))/2,Tn=+Xt[0][1]+(Ei-Wi*(Ar[1][1]+Ar[0][1]))/2;At.scale(150*Wi).translate([hn,Tn])},kr)}function Bl(At,Xt,kr){return of(At,[[0,0],Xt],kr)}function Kc(At,Xt,kr){return cc(At,function(Ar){var Kr=+Xt,Ei=Kr/(Ar[1][0]-Ar[0][0]),Wi=(Kr-Ei*(Ar[1][0]+Ar[0][0]))/2,hn=-Ei*Ar[0][1];At.scale(150*Ei).translate([Wi,hn])},kr)}function Rc(At,Xt,kr){return cc(At,function(Ar){var Kr=+Xt,Ei=Kr/(Ar[1][1]-Ar[0][1]),Wi=-Ei*Ar[0][0],hn=(Kr-Ei*(Ar[1][1]+Ar[0][1]))/2;At.scale(150*Ei).translate([Wi,hn])},kr)}var ms=16,jf=p(30*d);function Uh(At,Xt){return+Xt?sf(At,Xt):rh(At)}function rh(At){return ju({point:function(Xt,kr){Xt=At(Xt,kr),this.stream.point(Xt[0],Xt[1])}})}function sf(At,Xt){function kr(Ar,Kr,Ei,Wi,hn,Tn,Bn,Zi,$i,an,Di,$n,ka,Ra){var La=Bn-Ar,Na=Zi-Kr,Yn=La*La+Na*Na;if(Yn>4*Xt&&ka--){var zn=Wi+an,Ka=hn+Di,bo=Tn+$n,Xo=M(zn*zn+Ka*Ka+bo*bo),Ms=T(bo/=Xo),os=v(v(bo)-1)<o||v(Ei-$i)<o?(Ei+$i)/2:b(Ka,zn),Ts=At(os,Ms),Ho=Ts[0],yl=Ts[1],Xs=Ho-Ar,Ps=yl-Kr,va=Na*Xs-La*Ps;(va*va/Yn>Xt||v((La*Xs+Na*Ps)/Yn-.5)>.3||Wi*an+hn*Di+Tn*$n<jf)&&(kr(Ar,Kr,Ei,Wi,hn,Tn,Ho,yl,os,zn/=Xo,Ka/=Xo,bo,ka,Ra),Ra.point(Ho,yl),kr(Ho,yl,os,zn,Ka,bo,Bn,Zi,$i,an,Di,$n,ka,Ra))}}return function(Ar){var Kr,Ei,Wi,hn,Tn,Bn,Zi,$i,an,Di,$n,ka,Ra={point:La,lineStart:Na,lineEnd:zn,polygonStart:function(){Ar.polygonStart(),Ra.lineStart=Ka},polygonEnd:function(){Ar.polygonEnd(),Ra.lineStart=Na}};function La(Ms,os){Ms=At(Ms,os),Ar.point(Ms[0],Ms[1])}function Na(){$i=NaN,Ra.point=Yn,Ar.lineStart()}function Yn(Ms,os){var Ts=ce([Ms,os]),Ho=At(Ms,os);kr($i,an,Zi,Di,$n,ka,$i=Ho[0],an=Ho[1],Zi=Ms,Di=Ts[0],$n=Ts[1],ka=Ts[2],ms,Ar),Ar.point($i,an)}function zn(){Ra.point=La,Ar.lineEnd()}function Ka(){Na(),Ra.point=bo,Ra.lineEnd=Xo}function bo(Ms,os){Yn(Kr=Ms,os),Ei=$i,Wi=an,hn=Di,Tn=$n,Bn=ka,Ra.point=Yn}function Xo(){kr($i,an,Zi,Di,$n,ka,Ei,Wi,Kr,hn,Tn,Bn,ms,Ar),Ra.lineEnd=zn,zn()}return Ra}}var xh=ju({point:function(At,Xt){this.stream.point(At*d,Xt*d)}});function Mu(At){return ju({point:function(Xt,kr){var Ar=At(Xt,kr);return this.stream.point(Ar[0],Ar[1])}})}function ih(At,Xt,kr,Ar,Kr){function Ei(Wi,hn){return Wi*=Ar,hn*=Kr,[Xt+At*Wi,kr-At*hn]}return Ei.invert=function(Wi,hn){return[(Wi-Xt)/At*Ar,(kr-hn)/At*Kr]},Ei}function Ws(At,Xt,kr,Ar,Kr,Ei){var Wi=p(Ei),hn=_(Ei),Tn=Wi*At,Bn=hn*At,Zi=Wi/At,$i=hn/At,an=(hn*kr-Wi*Xt)/At,Di=(hn*Xt+Wi*kr)/At;function $n(ka,Ra){return ka*=Ar,Ra*=Kr,[Tn*ka-Bn*Ra+Xt,kr-Bn*ka-Tn*Ra]}return $n.invert=function(ka,Ra){return[Ar*(Zi*ka-$i*Ra+an),Kr*(Di-$i*ka-Zi*Ra)]},$n}function Eu(At){return Dc(function(){return At})()}function Dc(At){var Xt,kr=150,Ar=480,Kr=250,Ei=0,Wi=0,hn=0,Tn=0,Bn=0,Zi,$i=0,an=1,Di=1,$n=null,ka=Qr,Ra=null,La,Na,Yn,zn=Yl,Ka=.5,bo,Xo,Ms,os,Ts;function Ho(va){return Ms(va[0]*d,va[1]*d)}function yl(va){return va=Ms.invert(va[0],va[1]),va&&[va[0]*h,va[1]*h]}Ho.stream=function(va){return os&&Ts===va?os:os=xh(Mu(Zi)(ka(bo(zn(Ts=va)))))},Ho.preclip=function(va){return arguments.length?(ka=va,$n=void 0,Ps()):ka},Ho.postclip=function(va){return arguments.length?(zn=va,Ra=La=Na=Yn=null,Ps()):zn},Ho.clipAngle=function(va){return arguments.length?(ka=+va?En($n=va*d):($n=null,Qr),Ps()):$n*h},Ho.clipExtent=function(va){return arguments.length?(zn=va==null?(Ra=La=Na=Yn=null,Yl):Jn(Ra=+va[0][0],La=+va[0][1],Na=+va[1][0],Yn=+va[1][1]),Ps()):Ra==null?null:[[Ra,La],[Na,Yn]]},Ho.scale=function(va){return arguments.length?(kr=+va,Xs()):kr},Ho.translate=function(va){return arguments.length?(Ar=+va[0],Kr=+va[1],Xs()):[Ar,Kr]},Ho.center=function(va){return arguments.length?(Ei=va[0]%360*d,Wi=va[1]%360*d,Xs()):[Ei*h,Wi*h]},Ho.rotate=function(va){return arguments.length?(hn=va[0]%360*d,Tn=va[1]%360*d,Bn=va.length>2?va[2]%360*d:0,Xs()):[hn*h,Tn*h,Bn*h]},Ho.angle=function(va){return arguments.length?($i=va%360*d,Xs()):$i*h},Ho.reflectX=function(va){return arguments.length?(an=va?-1:1,Xs()):an<0},Ho.reflectY=function(va){return arguments.length?(Di=va?-1:1,Xs()):Di<0},Ho.precision=function(va){return arguments.length?(bo=Uh(Xo,Ka=va*va),Ps()):M(Ka)},Ho.fitExtent=function(va,no){return of(Ho,va,no)},Ho.fitSize=function(va,no){return Bl(Ho,va,no)},Ho.fitWidth=function(va,no){return Kc(Ho,va,no)},Ho.fitHeight=function(va,no){return Rc(Ho,va,no)};function Xs(){var va=Ws(kr,0,0,an,Di,$i).apply(null,Xt(Ei,Wi)),no=($i?Ws:ih)(kr,Ar-va[0],Kr-va[1],an,Di,$i);return Zi=zi(hn,Tn,Bn),Xo=ri(Xt,no),Ms=ri(Zi,Xo),bo=Uh(Xo,Ka),Ps()}function Ps(){return os=Ts=null,Ho}return function(){return Xt=At.apply(this,arguments),Ho.invert=Xt.invert&&yl,Xs()}}function ks(At){var Xt=0,kr=l/3,Ar=Dc(At),Kr=Ar(Xt,kr);return Kr.parallels=function(Ei){return arguments.length?Ar(Xt=Ei[0]*d,kr=Ei[1]*d):[Xt*h,kr*h]},Kr}function bc(At){var Xt=p(At);function kr(Ar,Kr){return[Ar*Xt,_(Kr)/Xt]}return kr.invert=function(Ar,Kr){return[Ar/Xt,T(Kr*Xt)]},kr}function du(At,Xt){var kr=_(At),Ar=(kr+_(Xt))/2;if(v(Ar)<o)return bc(At);var Kr=1+kr*(2*Ar-kr),Ei=M(Kr)/Ar;function Wi(hn,Tn){var Bn=M(Kr-2*Ar*_(Tn))/Ar;return[Bn*_(hn*=Ar),Ei-Bn*p(hn)]}return Wi.invert=function(hn,Tn){var Bn=Ei-Tn,Zi=b(hn,v(Bn))*k(Bn);return Bn*Ar<0&&(Zi-=l*k(hn)*k(Bn)),[Zi/Ar,T((Kr-(hn*hn+Bn*Bn)*Ar*Ar)/(2*Ar))]},Wi}function _u(){return ks(du).scale(155.424).center([0,33.6442])}function al(){return _u().parallels([29.5,45.5]).scale(1070).translate([480,250]).rotate([96,0]).center([-.6,38.7])}function nh(At){var Xt=At.length;return{point:function(kr,Ar){for(var Kr=-1;++Kr<Xt;)At[Kr].point(kr,Ar)},sphere:function(){for(var kr=-1;++kr<Xt;)At[kr].sphere()},lineStart:function(){for(var kr=-1;++kr<Xt;)At[kr].lineStart()},lineEnd:function(){for(var kr=-1;++kr<Xt;)At[kr].lineEnd()},polygonStart:function(){for(var kr=-1;++kr<Xt;)At[kr].polygonStart()},polygonEnd:function(){for(var kr=-1;++kr<Xt;)At[kr].polygonEnd()}}}function bh(){var At,Xt,kr=al(),Ar,Kr=_u().rotate([154,0]).center([-2,58.5]).parallels([55,65]),Ei,Wi=_u().rotate([157,0]).center([-3,19.9]).parallels([8,18]),hn,Tn,Bn={point:function(an,Di){Tn=[an,Di]}};function Zi(an){var Di=an[0],$n=an[1];return Tn=null,Ar.point(Di,$n),Tn||(Ei.point(Di,$n),Tn)||(hn.point(Di,$n),Tn)}Zi.invert=function(an){var Di=kr.scale(),$n=kr.translate(),ka=(an[0]-$n[0])/Di,Ra=(an[1]-$n[1])/Di;return(Ra>=.12&&Ra<.234&&ka>=-.425&&ka<-.214?Kr:Ra>=.166&&Ra<.234&&ka>=-.214&&ka<-.115?Wi:kr).invert(an)},Zi.stream=function(an){return At&&Xt===an?At:At=nh([kr.stream(Xt=an),Kr.stream(an),Wi.stream(an)])},Zi.precision=function(an){return arguments.length?(kr.precision(an),Kr.precision(an),Wi.precision(an),$i()):kr.precision()},Zi.scale=function(an){return arguments.length?(kr.scale(an),Kr.scale(an*.35),Wi.scale(an),Zi.translate(kr.translate())):kr.scale()},Zi.translate=function(an){if(!arguments.length)return kr.translate();var Di=kr.scale(),$n=+an[0],ka=+an[1];return Ar=kr.translate(an).clipExtent([[$n-.455*Di,ka-.238*Di],[$n+.455*Di,ka+.238*Di]]).stream(Bn),Ei=Kr.translate([$n-.307*Di,ka+.201*Di]).clipExtent([[$n-.425*Di+o,ka+.12*Di+o],[$n-.214*Di-o,ka+.234*Di-o]]).stream(Bn),hn=Wi.translate([$n-.205*Di,ka+.212*Di]).clipExtent([[$n-.214*Di+o,ka+.166*Di+o],[$n-.115*Di-o,ka+.234*Di-o]]).stream(Bn),$i()},Zi.fitExtent=function(an,Di){return of(Zi,an,Di)},Zi.fitSize=function(an,Di){return Bl(Zi,an,Di)},Zi.fitWidth=function(an,Di){return Kc(Zi,an,Di)},Zi.fitHeight=function(an,Di){return Rc(Zi,an,Di)};function $i(){return At=Xt=null,Zi}return Zi.scale(1070)}function zu(At){return function(Xt,kr){var Ar=p(Xt),Kr=p(kr),Ei=At(Ar*Kr);return[Ei*Kr*_(Xt),Ei*_(kr)]}}function Fc(At){return function(Xt,kr){var Ar=M(Xt*Xt+kr*kr),Kr=At(Ar),Ei=_(Kr),Wi=p(Kr);return[b(Xt*Ei,Ar*Wi),T(Ar&&kr*Ei/Ar)]}}var wc=zu(function(At){return M(2/(1+At))});wc.invert=Fc(function(At){return 2*T(At/2)});function bd(){return Eu(wc).scale(124.75).clipAngle(180-.001)}var _f=zu(function(At){return(At=P(At))&&At/_(At)});_f.invert=Fc(function(At){return At});function Lf(){return Eu(_f).scale(79.4188).clipAngle(180-.001)}function Ou(At,Xt){return[At,A(g((u+Xt)/2))]}Ou.invert=function(At,Xt){return[At,2*x(E(Xt))-u]};function xf(){return jl(Ou).scale(961/f)}function jl(At){var Xt=Eu(At),kr=Xt.center,Ar=Xt.scale,Kr=Xt.translate,Ei=Xt.clipExtent,Wi=null,hn,Tn,Bn;Xt.scale=function($i){return arguments.length?(Ar($i),Zi()):Ar()},Xt.translate=function($i){return arguments.length?(Kr($i),Zi()):Kr()},Xt.center=function($i){return arguments.length?(kr($i),Zi()):kr()},Xt.clipExtent=function($i){return arguments.length?($i==null?Wi=hn=Tn=Bn=null:(Wi=+$i[0][0],hn=+$i[0][1],Tn=+$i[1][0],Bn=+$i[1][1]),Zi()):Wi==null?null:[[Wi,hn],[Tn,Bn]]};function Zi(){var $i=l*Ar(),an=Xt(yn(Xt.rotate()).invert([0,0]));return Ei(Wi==null?[[an[0]-$i,an[1]-$i],[an[0]+$i,an[1]+$i]]:At===Ou?[[Math.max(an[0]-$i,Wi),hn],[Math.min(an[0]+$i,Tn),Bn]]:[[Wi,Math.max(an[1]-$i,hn)],[Tn,Math.min(an[1]+$i,Bn)]])}return Zi()}function lf(At){return g((u+At)/2)}function Vh(At,Xt){var kr=p(At),Ar=At===Xt?_(At):A(kr/p(Xt))/A(lf(Xt)/lf(At)),Kr=kr*L(lf(At),Ar)/Ar;if(!Ar)return Ou;function Ei(Wi,hn){Kr>0?hn<-u+o&&(hn=-u+o):hn>u-o&&(hn=u-o);var Tn=Kr/L(lf(hn),Ar);return[Tn*_(Ar*Wi),Kr-Tn*p(Ar*Wi)]}return Ei.invert=function(Wi,hn){var Tn=Kr-hn,Bn=k(Ar)*M(Wi*Wi+Tn*Tn),Zi=b(Wi,v(Tn))*k(Tn);return Tn*Ar<0&&(Zi-=l*k(Wi)*k(Tn)),[Zi/Ar,2*x(L(Kr/Bn,1/Ar))-u]},Ei}function Pf(){return ks(Vh).scale(109.5).parallels([30,30])}function Ls(At,Xt){return[At,Xt]}Ls.invert=Ls;function vu(){return Eu(Ls).scale(152.63)}function Cu(At,Xt){var kr=p(At),Ar=At===Xt?_(At):(kr-p(Xt))/(Xt-At),Kr=kr/Ar+At;if(v(Ar)<o)return Ls;function Ei(Wi,hn){var Tn=Kr-hn,Bn=Ar*Wi;return[Tn*_(Bn),Kr-Tn*p(Bn)]}return Ei.invert=function(Wi,hn){var Tn=Kr-hn,Bn=b(Wi,v(Tn))*k(Tn);return Tn*Ar<0&&(Bn-=l*k(Wi)*k(Tn)),[Bn/Ar,Kr-k(Ar)*M(Wi*Wi+Tn*Tn)]},Ei}function Wf(){return ks(Cu).scale(131.154).center([0,13.9389])}var Vs=1.340264,bf=-.081106,zc=893e-6,Wu=.003796,If=M(3)/2,Xu=12;function uf(At,Xt){var kr=T(If*_(Xt)),Ar=kr*kr,Kr=Ar*Ar*Ar;return[At*p(kr)/(If*(Vs+3*bf*Ar+Kr*(7*zc+9*Wu*Ar))),kr*(Vs+bf*Ar+Kr*(zc+Wu*Ar))]}uf.invert=function(At,Xt){for(var kr=Xt,Ar=kr*kr,Kr=Ar*Ar*Ar,Ei=0,Wi,hn,Tn;Ei<Xu&&(hn=kr*(Vs+bf*Ar+Kr*(zc+Wu*Ar))-Xt,Tn=Vs+3*bf*Ar+Kr*(7*zc+9*Wu*Ar),kr-=Wi=hn/Tn,Ar=kr*kr,Kr=Ar*Ar*Ar,!(v(Wi)<s));++Ei);return[If*At*(Vs+3*bf*Ar+Kr*(7*zc+9*Wu*Ar))/p(kr),T(_(kr)/If)]};function Xf(){return Eu(uf).scale(177.158)}function Wl(At,Xt){var kr=p(Xt),Ar=p(At)*kr;return[kr*_(At)/Ar,_(Xt)/Ar]}Wl.invert=Fc(x);function ah(){return Eu(Wl).scale(144.049).clipAngle(60)}function Zu(){var At=1,Xt=0,kr=0,Ar=1,Kr=1,Ei=0,Wi,hn,Tn=null,Bn,Zi,$i,an=1,Di=1,$n=ju({point:function(zn,Ka){var bo=Yn([zn,Ka]);this.stream.point(bo[0],bo[1])}}),ka=Yl,Ra,La;function Na(){return an=At*Ar,Di=At*Kr,Ra=La=null,Yn}function Yn(zn){var Ka=zn[0]*an,bo=zn[1]*Di;if(Ei){var Xo=bo*Wi-Ka*hn;Ka=Ka*Wi+bo*hn,bo=Xo}return[Ka+Xt,bo+kr]}return Yn.invert=function(zn){var Ka=zn[0]-Xt,bo=zn[1]-kr;if(Ei){var Xo=bo*Wi+Ka*hn;Ka=Ka*Wi-bo*hn,bo=Xo}return[Ka/an,bo/Di]},Yn.stream=function(zn){return Ra&&La===zn?Ra:Ra=$n(ka(La=zn))},Yn.postclip=function(zn){return arguments.length?(ka=zn,Tn=Bn=Zi=$i=null,Na()):ka},Yn.clipExtent=function(zn){return arguments.length?(ka=zn==null?(Tn=Bn=Zi=$i=null,Yl):Jn(Tn=+zn[0][0],Bn=+zn[0][1],Zi=+zn[1][0],$i=+zn[1][1]),Na()):Tn==null?null:[[Tn,Bn],[Zi,$i]]},Yn.scale=function(zn){return arguments.length?(At=+zn,Na()):At},Yn.translate=function(zn){return arguments.length?(Xt=+zn[0],kr=+zn[1],Na()):[Xt,kr]},Yn.angle=function(zn){return arguments.length?(Ei=zn%360*d,hn=_(Ei),Wi=p(Ei),Na()):Ei*h},Yn.reflectX=function(zn){return arguments.length?(Ar=zn?-1:1,Na()):Ar<0},Yn.reflectY=function(zn){return arguments.length?(Kr=zn?-1:1,Na()):Kr<0},Yn.fitExtent=function(zn,Ka){return of(Yn,zn,Ka)},Yn.fitSize=function(zn,Ka){return Bl(Yn,zn,Ka)},Yn.fitWidth=function(zn,Ka){return Kc(Yn,zn,Ka)},Yn.fitHeight=function(zn,Ka){return Rc(Yn,zn,Ka)},Yn}function Oc(At,Xt){var kr=Xt*Xt,Ar=kr*kr;return[At*(.8707-.131979*kr+Ar*(-.013791+Ar*(.003971*kr-.001529*Ar))),Xt*(1.007226+kr*(.015085+Ar*(-.044475+.028874*kr-.005916*Ar)))]}Oc.invert=function(At,Xt){var kr=Xt,Ar=25,Kr;do{var Ei=kr*kr,Wi=Ei*Ei;kr-=Kr=(kr*(1.007226+Ei*(.015085+Wi*(-.044475+.028874*Ei-.005916*Wi)))-Xt)/(1.007226+Ei*(.015085*3+Wi*(-.044475*7+.028874*9*Ei-.005916*11*Wi)))}while(v(Kr)>o&&--Ar>0);return[At/(.8707+(Ei=kr*kr)*(-.131979+Ei*(-.013791+Ei*Ei*Ei*(.003971-.001529*Ei)))),kr]};function Tc(){return Eu(Oc).scale(175.295)}function wl(At,Xt){return[p(Xt)*_(At),_(Xt)]}wl.invert=Fc(T);function pu(){return Eu(wl).scale(249.5).clipAngle(90+o)}function qc(At,Xt){var kr=p(Xt),Ar=1+p(At)*kr;return[kr*_(At)/Ar,_(Xt)/Ar]}qc.invert=Fc(function(At){return 2*x(At)});function cf(){return Eu(qc).scale(250).clipAngle(142)}function fc(At,Xt){return[A(g((u+Xt)/2)),-At]}fc.invert=function(At,Xt){return[-Xt,2*x(E(At))-u]};function Bc(){var At=jl(fc),Xt=At.center,kr=At.rotate;return At.center=function(Ar){return arguments.length?Xt([-Ar[1],Ar[0]]):(Ar=Xt(),[Ar[1],-Ar[0]])},At.rotate=function(Ar){return arguments.length?kr([Ar[0],Ar[1],Ar.length>2?Ar[2]+90:90]):(Ar=kr(),[Ar[0],Ar[1],Ar[2]-90])},kr([0,0,90]).scale(159.155)}e.geoAlbers=al,e.geoAlbersUsa=bh,e.geoArea=ge,e.geoAzimuthalEqualArea=bd,e.geoAzimuthalEqualAreaRaw=wc,e.geoAzimuthalEquidistant=Lf,e.geoAzimuthalEquidistantRaw=_f,e.geoBounds=Ge,e.geoCentroid=Er,e.geoCircle=la,e.geoClipAntimeridian=Qr,e.geoClipCircle=En,e.geoClipExtent=Ma,e.geoClipRectangle=Jn,e.geoConicConformal=Pf,e.geoConicConformalRaw=Vh,e.geoConicEqualArea=_u,e.geoConicEqualAreaRaw=du,e.geoConicEquidistant=Wf,e.geoConicEquidistantRaw=Cu,e.geoContains=ws,e.geoDistance=Ss,e.geoEqualEarth=Xf,e.geoEqualEarthRaw=uf,e.geoEquirectangular=vu,e.geoEquirectangularRaw=Ls,e.geoGnomonic=ah,e.geoGnomonicRaw=Wl,e.geoGraticule=Vu,e.geoGraticule10=zl,e.geoIdentity=Zu,e.geoInterpolate=xo,e.geoLength=Fl,e.geoMercator=xf,e.geoMercatorRaw=Ou,e.geoNaturalEarth1=Tc,e.geoNaturalEarth1Raw=Oc,e.geoOrthographic=pu,e.geoOrthographicRaw=wl,e.geoPath=eh,e.geoProjection=Eu,e.geoProjectionMutator=Dc,e.geoRotation=yn,e.geoStereographic=cf,e.geoStereographicRaw=qc,e.geoStream=j,e.geoTransform=th,e.geoTransverseMercator=Bc,e.geoTransverseMercatorRaw=fc,Object.defineProperty(e,"__esModule",{value:!0})})});var gDe=ye((MF,pDe)=>{(function(e,t){typeof MF=="object"&&typeof pDe!="undefined"?t(MF,LZ(),nC()):t(e.d3=e.d3||{},e.d3,e.d3)})(MF,function(e,t,r){"use strict";var n=Math.abs,i=Math.atan,a=Math.atan2,o=Math.cos,s=Math.exp,l=Math.floor,u=Math.log,c=Math.max,f=Math.min,h=Math.pow,d=Math.round,v=Math.sign||function(ve){return ve>0?1:ve<0?-1:0},x=Math.sin,b=Math.tan,p=1e-6,C=1e-12,E=Math.PI,A=E/2,L=E/4,_=Math.SQRT1_2,k=G(2),M=G(E),g=E*2,P=180/E,T=E/180;function z(ve){return ve?ve/Math.sin(ve):1}function O(ve){return ve>1?A:ve<-1?-A:Math.asin(ve)}function V(ve){return ve>1?0:ve<-1?E:Math.acos(ve)}function G(ve){return ve>0?Math.sqrt(ve):0}function Z(ve){return ve=s(2*ve),(ve-1)/(ve+1)}function H(ve){return(s(ve)-s(-ve))/2}function N(ve){return(s(ve)+s(-ve))/2}function j(ve){return u(ve+G(ve*ve+1))}function re(ve){return u(ve+G(ve*ve-1))}function oe(ve){var be=b(ve/2),Re=2*u(o(ve/2))/(be*be);function Be(tt,We){var it=o(tt),Dt=o(We),Ht=x(We),rr=Dt*it,dr=-((1-rr?u((1+rr)/2)/(1-rr):-.5)+Re/(1+rr));return[dr*Dt*x(tt),dr*Ht]}return Be.invert=function(tt,We){var it=G(tt*tt+We*We),Dt=-ve/2,Ht=50,rr;if(!it)return[0,0];do{var dr=Dt/2,Sr=o(dr),Or=x(dr),jr=Or/Sr,ii=-u(n(Sr));Dt-=rr=(2/jr*ii-Re*jr-it)/(-ii/(Or*Or)+1-Re/(2*Sr*Sr))*(Sr<0?.7:1)}while(n(rr)>p&&--Ht>0);var Li=x(Dt);return[a(tt*Li,it*o(Dt)),O(We*Li/it)]},Be}function _e(){var ve=A,be=t.geoProjectionMutator(oe),Re=be(ve);return Re.radius=function(Be){return arguments.length?be(ve=Be*T):ve*P},Re.scale(179.976).clipAngle(147)}function Me(ve,be){var Re=o(be),Be=z(V(Re*o(ve/=2)));return[2*Re*x(ve)*Be,x(be)*Be]}Me.invert=function(ve,be){if(!(ve*ve+4*be*be>E*E+p)){var Re=ve,Be=be,tt=25;do{var We=x(Re),it=x(Re/2),Dt=o(Re/2),Ht=x(Be),rr=o(Be),dr=x(2*Be),Sr=Ht*Ht,Or=rr*rr,jr=it*it,ii=1-Or*Dt*Dt,Li=ii?V(rr*Dt)*G(un=1/ii):un=0,un,sn=2*Li*rr*it-ve,In=Li*Ht-be,Kn=un*(Or*jr+Li*rr*Dt*Sr),Aa=un*(.5*We*dr-Li*2*Ht*it),fa=un*.25*(dr*it-Li*Ht*Or*We),$a=un*(Sr*Dt+Li*jr*rr),ko=Aa*fa-$a*Kn;if(!ko)break;var Qa=(In*Aa-sn*$a)/ko,mo=(sn*fa-In*Kn)/ko;Re-=Qa,Be-=mo}while((n(Qa)>p||n(mo)>p)&&--tt>0);return[Re,Be]}};function ke(){return t.geoProjection(Me).scale(152.63)}function me(ve){var be=x(ve),Re=o(ve),Be=ve>=0?1:-1,tt=b(Be*ve),We=(1+be-Re)/2;function it(Dt,Ht){var rr=o(Ht),dr=o(Dt/=2);return[(1+rr)*x(Dt),(Be*Ht>-a(dr,tt)-.001?0:-Be*10)+We+x(Ht)*Re-(1+rr)*be*dr]}return it.invert=function(Dt,Ht){var rr=0,dr=0,Sr=50;do{var Or=o(rr),jr=x(rr),ii=o(dr),Li=x(dr),un=1+ii,sn=un*jr-Dt,In=We+Li*Re-un*be*Or-Ht,Kn=un*Or/2,Aa=-jr*Li,fa=be*un*jr/2,$a=Re*ii+be*Or*Li,ko=Aa*fa-$a*Kn,Qa=(In*Aa-sn*$a)/ko/2,mo=(sn*fa-In*Kn)/ko;n(mo)>2&&(mo/=2),rr-=Qa,dr-=mo}while((n(Qa)>p||n(mo)>p)&&--Sr>0);return Be*dr>-a(o(rr),tt)-.001?[rr*2,dr]:null},it}function ie(){var ve=20*T,be=ve>=0?1:-1,Re=b(be*ve),Be=t.geoProjectionMutator(me),tt=Be(ve),We=tt.stream;return tt.parallel=function(it){return arguments.length?(Re=b((be=(ve=it*T)>=0?1:-1)*ve),Be(ve)):ve*P},tt.stream=function(it){var Dt=tt.rotate(),Ht=We(it),rr=(tt.rotate([0,0]),We(it)),dr=tt.precision();return tt.rotate(Dt),Ht.sphere=function(){rr.polygonStart(),rr.lineStart();for(var Sr=be*-180;be*Sr<180;Sr+=be*90)rr.point(Sr,be*90);if(ve)for(;be*(Sr-=3*be*dr)>=-180;)rr.point(Sr,be*-a(o(Sr*T/2),Re)*P);rr.lineEnd(),rr.polygonEnd()},Ht},tt.scale(218.695).center([0,28.0974])}function Se(ve,be){var Re=b(be/2),Be=G(1-Re*Re),tt=1+Be*o(ve/=2),We=x(ve)*Be/tt,it=Re/tt,Dt=We*We,Ht=it*it;return[4/3*We*(3+Dt-3*Ht),4/3*it*(3+3*Dt-Ht)]}Se.invert=function(ve,be){if(ve*=3/8,be*=3/8,!ve&&n(be)>1)return null;var Re=ve*ve,Be=be*be,tt=1+Re+Be,We=G((tt-G(tt*tt-4*be*be))/2),it=O(We)/3,Dt=We?re(n(be/We))/3:j(n(ve))/3,Ht=o(it),rr=N(Dt),dr=rr*rr-Ht*Ht;return[v(ve)*2*a(H(Dt)*Ht,.25-dr),v(be)*2*a(rr*x(it),.25+dr)]};function Le(){return t.geoProjection(Se).scale(66.1603)}var Ae=G(8),De=u(1+k);function Pe(ve,be){var Re=n(be);return Re<L?[ve,u(b(L+be/2))]:[ve*o(Re)*(2*k-1/x(Re)),v(be)*(2*k*(Re-L)-u(b(Re/2)))]}Pe.invert=function(ve,be){if((We=n(be))<De)return[ve,2*i(s(be))-A];var Re=L,Be=25,tt,We;do{var it=o(Re/2),Dt=b(Re/2);Re-=tt=(Ae*(Re-L)-u(Dt)-We)/(Ae-it*it/(2*Dt))}while(n(tt)>C&&--Be>0);return[ve/(o(Re)*(Ae-1/x(Re))),v(be)*Re]};function ge(){return t.geoProjection(Pe).scale(112.314)}function Fe(ve){var be=2*E/ve;function Re(Be,tt){var We=t.geoAzimuthalEquidistantRaw(Be,tt);if(n(Be)>A){var it=a(We[1],We[0]),Dt=G(We[0]*We[0]+We[1]*We[1]),Ht=be*d((it-A)/be)+A,rr=a(x(it-=Ht),2-o(it));it=Ht+O(E/Dt*x(rr))-rr,We[0]=Dt*o(it),We[1]=Dt*x(it)}return We}return Re.invert=function(Be,tt){var We=G(Be*Be+tt*tt);if(We>A){var it=a(tt,Be),Dt=be*d((it-A)/be)+A,Ht=it>Dt?-1:1,rr=We*o(Dt-it),dr=1/b(Ht*V((rr-E)/G(E*(E-2*rr)+We*We)));it=Dt+2*i((dr+Ht*G(dr*dr-3))/3),Be=We*o(it),tt=We*x(it)}return t.geoAzimuthalEquidistantRaw.invert(Be,tt)},Re}function ce(){var ve=5,be=t.geoProjectionMutator(Fe),Re=be(ve),Be=Re.stream,tt=.01,We=-o(tt*T),it=x(tt*T);return Re.lobes=function(Dt){return arguments.length?be(ve=+Dt):ve},Re.stream=function(Dt){var Ht=Re.rotate(),rr=Be(Dt),dr=(Re.rotate([0,0]),Be(Dt));return Re.rotate(Ht),rr.sphere=function(){dr.polygonStart(),dr.lineStart();for(var Sr=0,Or=360/ve,jr=2*E/ve,ii=90-180/ve,Li=A;Sr<ve;++Sr,ii-=Or,Li-=jr)dr.point(a(it*o(Li),We)*P,O(it*x(Li))*P),ii<-90?(dr.point(-90,-180-ii-tt),dr.point(-90,-180-ii+tt)):(dr.point(90,ii+tt),dr.point(90,ii-tt));dr.lineEnd(),dr.polygonEnd()},rr},Re.scale(87.8076).center([0,17.1875]).clipAngle(180-.001)}function Ze(ve,be){if(arguments.length<2&&(be=ve),be===1)return t.geoAzimuthalEqualAreaRaw;if(be===1/0)return ct;function Re(Be,tt){var We=t.geoAzimuthalEqualAreaRaw(Be/be,tt);return We[0]*=ve,We}return Re.invert=function(Be,tt){var We=t.geoAzimuthalEqualAreaRaw.invert(Be/ve,tt);return We[0]*=be,We},Re}function ct(ve,be){return[ve*o(be)/o(be/=2),2*x(be)]}ct.invert=function(ve,be){var Re=2*O(be/2);return[ve*o(Re/2)/o(Re),Re]};function pt(){var ve=2,be=t.geoProjectionMutator(Ze),Re=be(ve);return Re.coefficient=function(Be){return arguments.length?be(ve=+Be):ve},Re.scale(169.529)}function Wt(ve,be,Re){var Be=100,tt,We,it;Re=Re===void 0?0:+Re,be=+be;do We=ve(Re),it=ve(Re+p),We===it&&(it=We+p),Re-=tt=-1*p*(We-be)/(We-it);while(Be-- >0&&n(tt)>p);return Be<0?NaN:Re}function st(ve,be,Re){return be===void 0&&(be=40),Re===void 0&&(Re=C),function(Be,tt,We,it){var Dt,Ht,rr;We=We===void 0?0:+We,it=it===void 0?0:+it;for(var dr=0;dr<be;dr++){var Sr=ve(We,it),Or=Sr[0]-Be,jr=Sr[1]-tt;if(n(Or)<Re&&n(jr)<Re)break;var ii=Or*Or+jr*jr;if(ii>Dt){We-=Ht/=2,it-=rr/=2;continue}Dt=ii;var Li=(We>0?-1:1)*Re,un=(it>0?-1:1)*Re,sn=ve(We+Li,it),In=ve(We,it+un),Kn=(sn[0]-Sr[0])/Li,Aa=(sn[1]-Sr[1])/Li,fa=(In[0]-Sr[0])/un,$a=(In[1]-Sr[1])/un,ko=$a*Kn-Aa*fa,Qa=(n(ko)<.5?.5:1)/ko;if(Ht=(jr*fa-Or*$a)*Qa,rr=(Or*Aa-jr*Kn)*Qa,We+=Ht,it+=rr,n(Ht)<Re&&n(rr)<Re)break}return[We,it]}}function lt(){var ve=Ze(1.68,2),be=1.4,Re=12;function Be(tt,We){if(tt+We<-be){var it=(tt-We+1.6)*(tt+We+be)/8;tt+=it,We-=.8*it*x(We+E/2)}var Dt=ve(tt,We),Ht=(1-o(tt*We))/Re;return Dt[1]<0&&(Dt[0]*=1+Ht),Dt[1]>0&&(Dt[1]*=1+Ht/1.5*Dt[0]*Dt[0]),Dt}return Be.invert=st(Be),Be}function Gt(){return t.geoProjection(lt()).rotate([-16.5,-42]).scale(176.57).center([7.93,.09])}function Nt(ve,be){var Re=ve*x(be),Be=30,tt;do be-=tt=(be+x(be)-Re)/(1+o(be));while(n(tt)>p&&--Be>0);return be/2}function $t(ve,be,Re){function Be(tt,We){return[ve*tt*o(We=Nt(Re,We)),be*x(We)]}return Be.invert=function(tt,We){return We=O(We/be),[tt/(ve*o(We)),O((2*We+x(2*We))/Re)]},Be}var sr=$t(k/A,k,E);function wr(){return t.geoProjection(sr).scale(169.529)}var ur=2.00276,Qe=1.11072;function Et(ve,be){var Re=Nt(E,be);return[ur*ve/(1/o(be)+Qe/o(Re)),(be+k*x(Re))/ur]}Et.invert=function(ve,be){var Re=ur*be,Be=be<0?-L:L,tt=25,We,it;do it=Re-k*x(Be),Be-=We=(x(2*Be)+2*Be-E*x(it))/(2*o(2*Be)+2+E*o(it)*k*o(Be));while(n(We)>p&&--tt>0);return it=Re-k*x(Be),[ve*(1/o(it)+Qe/o(Be))/ur,it]};function er(){return t.geoProjection(Et).scale(160.857)}function Ut(ve){var be=0,Re=t.geoProjectionMutator(ve),Be=Re(be);return Be.parallel=function(tt){return arguments.length?Re(be=tt*T):be*P},Be}function Ft(ve,be){return[ve*o(be),be]}Ft.invert=function(ve,be){return[ve/o(be),be]};function bt(){return t.geoProjection(Ft).scale(152.63)}function yt(ve){if(!ve)return Ft;var be=1/b(ve);function Re(Be,tt){var We=be+ve-tt,it=We&&Be*o(tt)/We;return[We*x(it),be-We*o(it)]}return Re.invert=function(Be,tt){var We=G(Be*Be+(tt=be-tt)*tt),it=be+ve-We;return[We/o(it)*a(Be,tt),it]},Re}function Yt(){return Ut(yt).scale(123.082).center([0,26.1441]).parallel(45)}function lr(ve){function be(Re,Be){var tt=A-Be,We=tt&&Re*ve*x(tt)/tt;return[tt*x(We)/ve,A-tt*o(We)]}return be.invert=function(Re,Be){var tt=Re*ve,We=A-Be,it=G(tt*tt+We*We),Dt=a(tt,We);return[(it?it/x(it):1)*Dt/ve,A-it]},be}function Tr(){var ve=.5,be=t.geoProjectionMutator(lr),Re=be(ve);return Re.fraction=function(Be){return arguments.length?be(ve=+Be):ve},Re.scale(158.837)}var Rr=$t(1,4/E,E);function ei(){return t.geoProjection(Rr).scale(152.63)}function Wr(ve,be,Re,Be,tt,We){var it=o(We),Dt;if(n(ve)>1||n(We)>1)Dt=V(Re*tt+be*Be*it);else{var Ht=x(ve/2),rr=x(We/2);Dt=2*O(G(Ht*Ht+be*Be*rr*rr))}return n(Dt)>p?[Dt,a(Be*x(We),be*tt-Re*Be*it)]:[0,0]}function Ur(ve,be,Re){return V((ve*ve+be*be-Re*Re)/(2*ve*be))}function dt(ve){return ve-2*E*l((ve+E)/(2*E))}function Ge(ve,be,Re){for(var Be=[[ve[0],ve[1],x(ve[1]),o(ve[1])],[be[0],be[1],x(be[1]),o(be[1])],[Re[0],Re[1],x(Re[1]),o(Re[1])]],tt=Be[2],We,it=0;it<3;++it,tt=We)We=Be[it],tt.v=Wr(We[1]-tt[1],tt[3],tt[2],We[3],We[2],We[0]-tt[0]),tt.point=[0,0];var Dt=Ur(Be[0].v[0],Be[2].v[0],Be[1].v[0]),Ht=Ur(Be[0].v[0],Be[1].v[0],Be[2].v[0]),rr=E-Dt;Be[2].point[1]=0,Be[0].point[0]=-(Be[1].point[0]=Be[0].v[0]/2);var dr=[Be[2].point[0]=Be[0].point[0]+Be[2].v[0]*o(Dt),2*(Be[0].point[1]=Be[1].point[1]=Be[2].v[0]*x(Dt))];function Sr(Or,jr){var ii=x(jr),Li=o(jr),un=new Array(3),sn;for(sn=0;sn<3;++sn){var In=Be[sn];if(un[sn]=Wr(jr-In[1],In[3],In[2],Li,ii,Or-In[0]),!un[sn][0])return In.point;un[sn][1]=dt(un[sn][1]-In.v[1])}var Kn=dr.slice();for(sn=0;sn<3;++sn){var Aa=sn==2?0:sn+1,fa=Ur(Be[sn].v[0],un[sn][0],un[Aa][0]);un[sn][1]<0&&(fa=-fa),sn?sn==1?(fa=Ht-fa,Kn[0]-=un[sn][0]*o(fa),Kn[1]-=un[sn][0]*x(fa)):(fa=rr-fa,Kn[0]+=un[sn][0]*o(fa),Kn[1]+=un[sn][0]*x(fa)):(Kn[0]+=un[sn][0]*o(fa),Kn[1]-=un[sn][0]*x(fa))}return Kn[0]/=3,Kn[1]/=3,Kn}return Sr}function Je(ve){return ve[0]*=T,ve[1]*=T,ve}function je(){return $e([0,22],[45,22],[22.5,-22]).scale(380).center([22.5,2])}function $e(ve,be,Re){var Be=t.geoCentroid({type:"MultiPoint",coordinates:[ve,be,Re]}),tt=[-Be[0],-Be[1]],We=t.geoRotation(tt),it=Ge(Je(We(ve)),Je(We(be)),Je(We(Re)));it.invert=st(it);var Dt=t.geoProjection(it).rotate(tt),Ht=Dt.center;return delete Dt.rotate,Dt.center=function(rr){return arguments.length?Ht(We(rr)):We.invert(Ht())},Dt.clipAngle(90)}function wt(ve,be){var Re=G(1-x(be));return[2/M*ve*Re,M*(1-Re)]}wt.invert=function(ve,be){var Re=(Re=be/M-1)*Re;return[Re>0?ve*G(E/Re)/2:0,O(1-Re)]};function Ie(){return t.geoProjection(wt).scale(95.6464).center([0,30])}function xe(ve){var be=b(ve);function Re(Be,tt){return[Be,(Be?Be/x(Be):1)*(x(tt)*o(Be)-be*o(tt))]}return Re.invert=be?function(Be,tt){Be&&(tt*=x(Be)/Be);var We=o(Be);return[Be,2*a(G(We*We+be*be-tt*tt)-We,be-tt)]}:function(Be,tt){return[Be,O(Be?tt*b(Be)/Be:tt)]},Re}function Ce(){return Ut(xe).scale(249.828).clipAngle(90)}var vt=G(3);function nr(ve,be){return[vt*ve*(2*o(2*be/3)-1)/M,vt*M*x(be/3)]}nr.invert=function(ve,be){var Re=3*O(be/(vt*M));return[M*ve/(vt*(2*o(2*Re/3)-1)),Re]};function ir(){return t.geoProjection(nr).scale(156.19)}function pr(ve){var be=o(ve);function Re(Be,tt){return[Be*be,x(tt)/be]}return Re.invert=function(Be,tt){return[Be/be,O(tt*be)]},Re}function oi(){return Ut(pr).parallel(38.58).scale(195.044)}function di(ve){var be=o(ve);function Re(Be,tt){return[Be*be,(1+be)*b(tt/2)]}return Re.invert=function(Be,tt){return[Be/be,i(tt/(1+be))*2]},Re}function Jr(){return Ut(di).scale(124.75)}function fi(ve,be){var Re=G(8/(3*E));return[Re*ve*(1-n(be)/E),Re*be]}fi.invert=function(ve,be){var Re=G(8/(3*E)),Be=be/Re;return[ve/(Re*(1-n(Be)/E)),Be]};function Hi(){return t.geoProjection(fi).scale(165.664)}function Pn(ve,be){var Re=G(4-3*x(n(be)));return[2/G(6*E)*ve*Re,v(be)*G(2*E/3)*(2-Re)]}Pn.invert=function(ve,be){var Re=2-n(be)/G(2*E/3);return[ve*G(6*E)/(2*Re),v(be)*O((4-Re*Re)/3)]};function wn(){return t.geoProjection(Pn).scale(165.664)}function pn(ve,be){var Re=G(E*(4+E));return[2/Re*ve*(1+G(1-4*be*be/(E*E))),4/Re*be]}pn.invert=function(ve,be){var Re=G(E*(4+E))/2;return[ve*Re/(1+G(1-be*be*(4+E)/(4*E))),be*Re/2]};function Vn(){return t.geoProjection(pn).scale(180.739)}function kn(ve,be){var Re=(2+A)*x(be);be/=2;for(var Be=0,tt=1/0;Be<10&&n(tt)>p;Be++){var We=o(be);be-=tt=(be+x(be)*(We+2)-Re)/(2*We*(1+We))}return[2/G(E*(4+E))*ve*(1+o(be)),2*G(E/(4+E))*x(be)]}kn.invert=function(ve,be){var Re=be*G((4+E)/E)/2,Be=O(Re),tt=o(Be);return[ve/(2/G(E*(4+E))*(1+tt)),O((Be+Re*(tt+2))/(2+A))]};function ea(){return t.geoProjection(kn).scale(180.739)}function ua(ve,be){return[ve*(1+o(be))/G(2+E),2*be/G(2+E)]}ua.invert=function(ve,be){var Re=G(2+E),Be=be*Re/2;return[Re*ve/(1+o(Be)),Be]};function Vt(){return t.geoProjection(ua).scale(173.044)}function _t(ve,be){for(var Re=(1+A)*x(be),Be=0,tt=1/0;Be<10&&n(tt)>p;Be++)be-=tt=(be+x(be)-Re)/(1+o(be));return Re=G(2+E),[ve*(1+o(be))/Re,2*be/Re]}_t.invert=function(ve,be){var Re=1+A,Be=G(Re/2);return[ve*2*Be/(1+o(be*=Be)),O((be+x(be))/Re)]};function tr(){return t.geoProjection(_t).scale(173.044)}var ar=3+2*k;function Er(ve,be){var Re=x(ve/=2),Be=o(ve),tt=G(o(be)),We=o(be/=2),it=x(be)/(We+k*Be*tt),Dt=G(2/(1+it*it)),Ht=G((k*We+(Be+Re)*tt)/(k*We+(Be-Re)*tt));return[ar*(Dt*(Ht-1/Ht)-2*u(Ht)),ar*(Dt*it*(Ht+1/Ht)-2*i(it))]}Er.invert=function(ve,be){if(!(We=Se.invert(ve/1.2,be*1.065)))return null;var Re=We[0],Be=We[1],tt=20,We;ve/=ar,be/=ar;do{var it=Re/2,Dt=Be/2,Ht=x(it),rr=o(it),dr=x(Dt),Sr=o(Dt),Or=o(Be),jr=G(Or),ii=dr/(Sr+k*rr*jr),Li=ii*ii,un=G(2/(1+Li)),sn=k*Sr+(rr+Ht)*jr,In=k*Sr+(rr-Ht)*jr,Kn=sn/In,Aa=G(Kn),fa=Aa-1/Aa,$a=Aa+1/Aa,ko=un*fa-2*u(Aa)-ve,Qa=un*ii*$a-2*i(ii)-be,mo=dr&&_*jr*Ht*Li/dr,Bo=(k*rr*Sr+jr)/(2*(Sr+k*rr*jr)*(Sr+k*rr*jr)*jr),Is=-.5*ii*un*un*un,As=Is*mo,wo=Is*Bo,To=(To=2*Sr+k*jr*(rr-Ht))*To*Aa,dl=(k*rr*Sr*jr+Or)/To,Nl=-(k*Ht*dr)/(jr*To),Lu=fa*As-2*dl/Aa+un*(dl+dl/Kn),ou=fa*wo-2*Nl/Aa+un*(Nl+Nl/Kn),$s=ii*$a*As-2*mo/(1+Li)+un*$a*mo+un*ii*(dl-dl/Kn),Ql=ii*$a*wo-2*Bo/(1+Li)+un*$a*Bo+un*ii*(Nl-Nl/Kn),dc=ou*$s-Ql*Lu;if(!dc)break;var Tl=(Qa*ou-ko*Ql)/dc,Al=(ko*$s-Qa*Lu)/dc;Re-=Tl,Be=c(-A,f(A,Be-Al))}while((n(Tl)>p||n(Al)>p)&&--tt>0);return n(n(Be)-A)<p?[0,Be]:tt&&[Re,Be]};function Zr(){return t.geoProjection(Er).scale(62.5271)}var ri=o(35*T);function $r(ve,be){var Re=b(be/2);return[ve*ri*G(1-Re*Re),(1+ri)*Re]}$r.invert=function(ve,be){var Re=be/(1+ri);return[ve&&ve/(ri*G(1-Re*Re)),2*i(Re)]};function zi(){return t.geoProjection($r).scale(137.152)}function Ji(ve,be){var Re=be/2,Be=o(Re);return[2*ve/M*o(be)*Be*Be,M*b(Re)]}Ji.invert=function(ve,be){var Re=i(be/M),Be=o(Re),tt=2*Re;return[ve*M/2/(o(tt)*Be*Be),tt]};function en(){return t.geoProjection(Ji).scale(135.264)}function cn(ve){var be=1-ve,Re=We(E,0)[0]-We(-E,0)[0],Be=We(0,A)[1]-We(0,-A)[1],tt=G(2*Be/Re);function We(Ht,rr){var dr=o(rr),Sr=x(rr);return[dr/(be+ve*dr)*Ht,be*rr+ve*Sr]}function it(Ht,rr){var dr=We(Ht,rr);return[dr[0]*tt,dr[1]/tt]}function Dt(Ht){return it(0,Ht)[1]}return it.invert=function(Ht,rr){var dr=Wt(Dt,rr),Sr=Ht/tt*(ve+be/o(dr));return[Sr,dr]},it}function yn(){var ve=.5,be=t.geoProjectionMutator(cn),Re=be(ve);return Re.alpha=function(Be){return arguments.length?be(ve=+Be):ve},Re.scale(168.725)}function Mn(ve){return[ve[0]/2,O(b(ve[1]/2*T))*P]}function Ba(ve){return[ve[0]*2,2*i(x(ve[1]*T))*P]}function la(ve){ve==null&&(ve=t.geoOrthographic);var be=ve(),Re=t.geoEquirectangular().scale(P).precision(0).clipAngle(null).translate([0,0]);function Be(We){return be(Mn(We))}be.invert&&(Be.invert=function(We){return Ba(be.invert(We))}),Be.stream=function(We){var it=be.stream(We),Dt=Re.stream({point:function(Ht,rr){it.point(Ht/2,O(b(-rr/2*T))*P)},lineStart:function(){it.lineStart()},lineEnd:function(){it.lineEnd()},polygonStart:function(){it.polygonStart()},polygonEnd:function(){it.polygonEnd()}});return Dt.sphere=it.sphere,Dt};function tt(We){Be[We]=function(){return arguments.length?(be[We].apply(be,arguments),Be):be[We]()}}return Be.rotate=function(We){return arguments.length?(Re.rotate(We),Be):Re.rotate()},Be.center=function(We){return arguments.length?(be.center(Mn(We)),Be):Ba(be.center())},tt("angle"),tt("clipAngle"),tt("clipExtent"),tt("fitExtent"),tt("fitHeight"),tt("fitSize"),tt("fitWidth"),tt("scale"),tt("translate"),tt("precision"),Be.scale(249.5)}function ma(ve,be){var Re=2*E/be,Be=ve*ve;function tt(We,it){var Dt=t.geoAzimuthalEquidistantRaw(We,it),Ht=Dt[0],rr=Dt[1],dr=Ht*Ht+rr*rr;if(dr>Be){var Sr=G(dr),Or=a(rr,Ht),jr=Re*d(Or/Re),ii=Or-jr,Li=ve*o(ii),un=(ve*x(ii)-ii*x(Li))/(A-Li),sn=Wa(ii,un),In=(E-ve)/Fa(sn,Li,E);Ht=Sr;var Kn=50,Aa;do Ht-=Aa=(ve+Fa(sn,Li,Ht)*In-Sr)/(sn(Ht)*In);while(n(Aa)>p&&--Kn>0);rr=ii*x(Ht),Ht<A&&(rr-=un*(Ht-A));var fa=x(jr),$a=o(jr);Dt[0]=Ht*$a-rr*fa,Dt[1]=Ht*fa+rr*$a}return Dt}return tt.invert=function(We,it){var Dt=We*We+it*it;if(Dt>Be){var Ht=G(Dt),rr=a(it,We),dr=Re*d(rr/Re),Sr=rr-dr;We=Ht*o(Sr),it=Ht*x(Sr);for(var Or=We-A,jr=x(We),ii=it/jr,Li=We<A?1/0:0,un=10;;){var sn=ve*x(ii),In=ve*o(ii),Kn=x(In),Aa=A-In,fa=(sn-ii*Kn)/Aa,$a=Wa(ii,fa);if(n(Li)<C||!--un)break;ii-=Li=(ii*jr-fa*Or-it)/(jr-Or*2*(Aa*(In+ii*sn*o(In)-Kn)-sn*(sn-ii*Kn))/(Aa*Aa))}Ht=ve+Fa($a,In,We)*(E-ve)/Fa($a,In,E),rr=dr+ii,We=Ht*o(rr),it=Ht*x(rr)}return t.geoAzimuthalEquidistantRaw.invert(We,it)},tt}function Wa(ve,be){return function(Re){var Be=ve*o(Re);return Re<A&&(Be-=be),G(1+Be*Be)}}function Fa(ve,be,Re){for(var Be=50,tt=(Re-be)/Be,We=ve(be)+ve(Re),it=1,Dt=be;it<Be;++it)We+=2*ve(Dt+=tt);return We*.5*tt}function Wo(){var ve=6,be=30*T,Re=o(be),Be=x(be),tt=t.geoProjectionMutator(ma),We=tt(be,ve),it=We.stream,Dt=.01,Ht=-o(Dt*T),rr=x(Dt*T);return We.radius=function(dr){return arguments.length?(Re=o(be=dr*T),Be=x(be),tt(be,ve)):be*P},We.lobes=function(dr){return arguments.length?tt(be,ve=+dr):ve},We.stream=function(dr){var Sr=We.rotate(),Or=it(dr),jr=(We.rotate([0,0]),it(dr));return We.rotate(Sr),Or.sphere=function(){jr.polygonStart(),jr.lineStart();for(var ii=0,Li=2*E/ve,un=0;ii<ve;++ii,un-=Li)jr.point(a(rr*o(un),Ht)*P,O(rr*x(un))*P),jr.point(a(Be*o(un-Li/2),Re)*P,O(Be*x(un-Li/2))*P);jr.lineEnd(),jr.polygonEnd()},Or},We.rotate([90,-40]).scale(91.7095).clipAngle(180-.001)}function da(ve,be,Re,Be,tt,We,it,Dt){arguments.length<8&&(Dt=0);function Ht(rr,dr){if(!dr)return[ve*rr/E,0];var Sr=dr*dr,Or=ve+Sr*(be+Sr*(Re+Sr*Be)),jr=dr*(tt-1+Sr*(We-Dt+Sr*it)),ii=(Or*Or+jr*jr)/(2*jr),Li=rr*O(Or/ii)/E;return[ii*x(Li),dr*(1+Sr*Dt)+ii*(1-o(Li))]}return Ht.invert=function(rr,dr){var Sr=E*rr/ve,Or=dr,jr,ii,Li=50;do{var un=Or*Or,sn=ve+un*(be+un*(Re+un*Be)),In=Or*(tt-1+un*(We-Dt+un*it)),Kn=sn*sn+In*In,Aa=2*In,fa=Kn/Aa,$a=fa*fa,ko=O(sn/fa)/E,Qa=Sr*ko,mo=sn*sn,Bo=(2*be+un*(4*Re+un*6*Be))*Or,Is=tt+un*(3*We+un*5*it),As=2*(sn*Bo+In*(Is-1)),wo=2*(Is-1),To=(As*Aa-Kn*wo)/(Aa*Aa),dl=o(Qa),Nl=x(Qa),Lu=fa*dl,ou=fa*Nl,$s=Sr/E*(1/G(1-mo/$a))*(Bo*fa-sn*To)/$a,Ql=ou-rr,dc=Or*(1+un*Dt)+fa-Lu-dr,Tl=To*Nl+Lu*$s,Al=Lu*ko,X=1+To-(To*dl-ou*$s),se=ou*ko,Te=Tl*se-X*Al;if(!Te)break;Sr-=jr=(dc*Tl-Ql*X)/Te,Or-=ii=(Ql*se-dc*Al)/Te}while((n(jr)>p||n(ii)>p)&&--Li>0);return[Sr,Or]},Ht}var Wn=da(2.8284,-1.6988,.75432,-.18071,1.76003,-.38914,.042555);function Ga(){return t.geoProjection(Wn).scale(149.995)}var vo=da(2.583819,-.835827,.170354,-.038094,1.543313,-.411435,.082742);function jn(){return t.geoProjection(vo).scale(153.93)}var St=da(5/6*E,-.62636,-.0344,0,1.3493,-.05524,0,.045);function Cr(){return t.geoProjection(St).scale(130.945)}function Qr(ve,be){var Re=ve*ve,Be=be*be;return[ve*(1-.162388*Be)*(.87-952426e-9*Re*Re),be*(1+Be/12)]}Qr.invert=function(ve,be){var Re=ve,Be=be,tt=50,We;do{var it=Be*Be;Be-=We=(Be*(1+it/12)-be)/(1+it/4)}while(n(We)>p&&--tt>0);tt=50,ve/=1-.162388*it;do{var Dt=(Dt=Re*Re)*Dt;Re-=We=(Re*(.87-952426e-9*Dt)-ve)/(.87-.00476213*Dt)}while(n(We)>p&&--tt>0);return[Re,Be]};function pi(){return t.geoProjection(Qr).scale(131.747)}var fn=da(2.6516,-.76534,.19123,-.047094,1.36289,-.13965,.031762);function Sn(){return t.geoProjection(fn).scale(131.087)}function En(ve){var be=ve(A,0)[0]-ve(-A,0)[0];function Re(Be,tt){var We=Be>0?-.5:.5,it=ve(Be+We*E,tt);return it[0]-=We*be,it}return ve.invert&&(Re.invert=function(Be,tt){var We=Be>0?-.5:.5,it=ve.invert(Be+We*be,tt),Dt=it[0]-We*E;return Dt<-E?Dt+=2*E:Dt>E&&(Dt-=2*E),it[0]=Dt,it}),Re}function ki(ve,be){var Re=v(ve),Be=v(be),tt=o(be),We=o(ve)*tt,it=x(ve)*tt,Dt=x(Be*be);ve=n(a(it,Dt)),be=O(We),n(ve-A)>p&&(ve%=A);var Ht=_n(ve>E/4?A-ve:ve,be);return ve>E/4&&(Dt=Ht[0],Ht[0]=-Ht[1],Ht[1]=-Dt),Ht[0]*=Re,Ht[1]*=-Be,Ht}ki.invert=function(ve,be){n(ve)>1&&(ve=v(ve)*2-ve),n(be)>1&&(be=v(be)*2-be);var Re=v(ve),Be=v(be),tt=-Re*ve,We=-Be*be,it=We/tt<1,Dt=ya(it?We:tt,it?tt:We),Ht=Dt[0],rr=Dt[1],dr=o(rr);return it&&(Ht=-A-Ht),[Re*(a(x(Ht)*dr,-x(rr))+E),Be*O(o(Ht)*dr)]};function _n(ve,be){if(be===A)return[0,0];var Re=x(be),Be=Re*Re,tt=Be*Be,We=1+tt,it=1+3*tt,Dt=1-tt,Ht=O(1/G(We)),rr=Dt+Be*We*Ht,dr=(1-Re)/rr,Sr=G(dr),Or=dr*We,jr=G(Or),ii=Sr*Dt,Li,un;if(ve===0)return[0,-(ii+Be*jr)];var sn=o(be),In=1/sn,Kn=2*Re*sn,Aa=(-3*Be+Ht*it)*Kn,fa=(-rr*sn-(1-Re)*Aa)/(rr*rr),$a=.5*fa/Sr,ko=Dt*$a-2*Be*Sr*Kn,Qa=Be*We*fa+dr*it*Kn,mo=-In*Kn,Bo=-In*Qa,Is=-2*In*ko,As=4*ve/E,wo;if(ve>.222*E||be<E/4&&ve>.175*E){if(Li=(ii+Be*G(Or*(1+tt)-ii*ii))/(1+tt),ve>E/4)return[Li,Li];var To=Li,dl=.5*Li;Li=.5*(dl+To),un=50;do{var Nl=G(Or-Li*Li),Lu=Li*(Is+mo*Nl)+Bo*O(Li/jr)-As;if(!Lu)break;Lu<0?dl=Li:To=Li,Li=.5*(dl+To)}while(n(To-dl)>p&&--un>0)}else{Li=p,un=25;do{var ou=Li*Li,$s=G(Or-ou),Ql=Is+mo*$s,dc=Li*Ql+Bo*O(Li/jr)-As,Tl=Ql+(Bo-mo*ou)/$s;Li-=wo=$s?dc/Tl:0}while(n(wo)>p&&--un>0)}return[Li,-ii-Be*G(Or-Li*Li)]}function ya(ve,be){for(var Re=0,Be=1,tt=.5,We=50;;){var it=tt*tt,Dt=G(tt),Ht=O(1/G(1+it)),rr=1-it+tt*(1+it)*Ht,dr=(1-Dt)/rr,Sr=G(dr),Or=dr*(1+it),jr=Sr*(1-it),ii=Or-ve*ve,Li=G(ii),un=be+jr+tt*Li;if(n(Be-Re)<C||--We===0||un===0)break;un>0?Re=tt:Be=tt,tt=.5*(Re+Be)}if(!We)return null;var sn=O(Dt),In=o(sn),Kn=1/In,Aa=2*Dt*In,fa=(-3*tt+Ht*(1+3*it))*Aa,$a=(-rr*In-(1-Dt)*fa)/(rr*rr),ko=.5*$a/Sr,Qa=(1-it)*ko-2*tt*Sr*Aa,mo=-2*Kn*Qa,Bo=-Kn*Aa,Is=-Kn*(tt*(1+it)*$a+dr*(1+3*it)*Aa);return[E/4*(ve*(mo+Bo*Li)+Is*O(ve/G(Or))),sn]}function Jn(){return t.geoProjection(En(ki)).scale(239.75)}function Ma(ve,be,Re){var Be,tt,We;return ve?(Be=_o(ve,Re),be?(tt=_o(be,1-Re),We=tt[1]*tt[1]+Re*Be[0]*Be[0]*tt[0]*tt[0],[[Be[0]*tt[2]/We,Be[1]*Be[2]*tt[0]*tt[1]/We],[Be[1]*tt[1]/We,-Be[0]*Be[2]*tt[0]*tt[2]/We],[Be[2]*tt[1]*tt[2]/We,-Re*Be[0]*Be[1]*tt[0]/We]]):[[Be[0],0],[Be[1],0],[Be[2],0]]):(tt=_o(be,1-Re),[[0,tt[0]/tt[1]],[1/tt[1],0],[tt[2]/tt[1],0]])}function _o(ve,be){var Re,Be,tt,We,it;if(be<p)return We=x(ve),Be=o(ve),Re=be*(ve-We*Be)/4,[We-Re*Be,Be+Re*We,1-be*We*We/2,ve-Re];if(be>=1-p)return Re=(1-be)/4,Be=N(ve),We=Z(ve),tt=1/Be,it=Be*H(ve),[We+Re*(it-ve)/(Be*Be),tt-Re*We*tt*(it-ve),tt+Re*We*tt*(it+ve),2*i(s(ve))-A+Re*(it-ve)/Be];var Dt=[1,0,0,0,0,0,0,0,0],Ht=[G(be),0,0,0,0,0,0,0,0],rr=0;for(Be=G(1-be),it=1;n(Ht[rr]/Dt[rr])>p&&rr<8;)Re=Dt[rr++],Ht[rr]=(Re-Be)/2,Dt[rr]=(Re+Be)/2,Be=G(Re*Be),it*=2;tt=it*Dt[rr]*ve;do We=Ht[rr]*x(Be=tt)/Dt[rr],tt=(O(We)+tt)/2;while(--rr);return[x(tt),We=o(tt),We/o(tt-Be),tt]}function No(ve,be,Re){var Be=n(ve),tt=n(be),We=H(tt);if(Be){var it=1/x(Be),Dt=1/(b(Be)*b(Be)),Ht=-(Dt+Re*(We*We*it*it)-1+Re),rr=(Re-1)*Dt,dr=(-Ht+G(Ht*Ht-4*rr))/2;return[po(i(1/G(dr)),Re)*v(ve),po(i(G((dr/Dt-1)/Re)),1-Re)*v(be)]}return[0,po(i(We),1-Re)*v(be)]}function po(ve,be){if(!be)return ve;if(be===1)return u(b(ve/2+L));for(var Re=1,Be=G(1-be),tt=G(be),We=0;n(tt)>p;We++){if(ve%E){var it=i(Be*b(ve)/Re);it<0&&(it+=E),ve+=it+~~(ve/E)*E}else ve+=ve;tt=(Re+Be)/2,Be=G(Re*Be),tt=((Re=tt)-Be)/2}return ve/(h(2,We)*Re)}function Lo(ve,be){var Re=(k-1)/(k+1),Be=G(1-Re*Re),tt=po(A,Be*Be),We=-1,it=u(b(E/4+n(be)/2)),Dt=s(We*it)/G(Re),Ht=Co(Dt*o(We*ve),Dt*x(We*ve)),rr=No(Ht[0],Ht[1],Be*Be);return[-rr[1],(be>=0?1:-1)*(.5*tt-rr[0])]}function Co(ve,be){var Re=ve*ve,Be=be+1,tt=1-Re-be*be;return[.5*((ve>=0?A:-A)-a(tt,2*ve)),-.25*u(tt*tt+4*Re)+.5*u(Be*Be+Re)]}function Fs(ve,be){var Re=be[0]*be[0]+be[1]*be[1];return[(ve[0]*be[0]+ve[1]*be[1])/Re,(ve[1]*be[0]-ve[0]*be[1])/Re]}Lo.invert=function(ve,be){var Re=(k-1)/(k+1),Be=G(1-Re*Re),tt=po(A,Be*Be),We=-1,it=Ma(.5*tt-be,-ve,Be*Be),Dt=Fs(it[0],it[1]),Ht=a(Dt[1],Dt[0])/We;return[Ht,2*i(s(.5/We*u(Re*Dt[0]*Dt[0]+Re*Dt[1]*Dt[1])))-A]};function zs(){return t.geoProjection(En(Lo)).scale(151.496)}function ul(ve){var be=x(ve),Re=o(ve),Be=cl(ve);Be.invert=cl(-ve);function tt(We,it){var Dt=Be(We,it);We=Dt[0],it=Dt[1];var Ht=x(it),rr=o(it),dr=o(We),Sr=V(be*Ht+Re*rr*dr),Or=x(Sr),jr=n(Or)>p?Sr/Or:1;return[jr*Re*x(We),(n(We)>A?jr:-jr)*(be*rr-Re*Ht*dr)]}return tt.invert=function(We,it){var Dt=G(We*We+it*it),Ht=-x(Dt),rr=o(Dt),dr=Dt*rr,Sr=-it*Ht,Or=Dt*be,jr=G(dr*dr+Sr*Sr-Or*Or),ii=a(dr*Or+Sr*jr,Sr*Or-dr*jr),Li=(Dt>A?-1:1)*a(We*Ht,Dt*o(ii)*rr+it*x(ii)*Ht);return Be.invert(Li,ii)},tt}function cl(ve){var be=x(ve),Re=o(ve);return function(Be,tt){var We=o(tt),it=o(Be)*We,Dt=x(Be)*We,Ht=x(tt);return[a(Dt,it*Re-Ht*be),O(Ht*Re+it*be)]}}function Fl(){var ve=0,be=t.geoProjectionMutator(ul),Re=be(ve),Be=Re.rotate,tt=Re.stream,We=t.geoCircle();return Re.parallel=function(it){if(!arguments.length)return ve*P;var Dt=Re.rotate();return be(ve=it*T).rotate(Dt)},Re.rotate=function(it){return arguments.length?(Be.call(Re,[it[0],it[1]-ve*P]),We.center([-it[0],-it[1]]),Re):(it=Be.call(Re),it[1]+=ve*P,it)},Re.stream=function(it){return it=tt(it),it.sphere=function(){it.polygonStart();var Dt=.01,Ht=We.radius(90-Dt)().coordinates[0],rr=Ht.length-1,dr=-1,Sr;for(it.lineStart();++dr<rr;)it.point((Sr=Ht[dr])[0],Sr[1]);for(it.lineEnd(),Ht=We.radius(90+Dt)().coordinates[0],rr=Ht.length-1,it.lineStart();--dr>=0;)it.point((Sr=Ht[dr])[0],Sr[1]);it.lineEnd(),it.polygonEnd()},it},Re.scale(79.4187).parallel(45).clipAngle(180-.001)}var cs=3,nl=O(1-1/cs)*P,Ss=pr(0);function fl(ve){var be=nl*T,Re=wt(E,be)[0]-wt(-E,be)[0],Be=Ss(0,be)[1],tt=wt(0,be)[1],We=M-tt,it=g/ve,Dt=4/g,Ht=Be+We*We*4/g;function rr(dr,Sr){var Or,jr=n(Sr);if(jr>be){var ii=f(ve-1,c(0,l((dr+E)/it)));dr+=E*(ve-1)/ve-ii*it,Or=wt(dr,jr),Or[0]=Or[0]*g/Re-g*(ve-1)/(2*ve)+ii*g/ve,Or[1]=Be+(Or[1]-tt)*4*We/g,Sr<0&&(Or[1]=-Or[1])}else Or=Ss(dr,Sr);return Or[0]*=Dt,Or[1]/=Ht,Or}return rr.invert=function(dr,Sr){dr/=Dt,Sr*=Ht;var Or=n(Sr);if(Or>Be){var jr=f(ve-1,c(0,l((dr+E)/it)));dr=(dr+E*(ve-1)/ve-jr*it)*Re/g;var ii=wt.invert(dr,.25*(Or-Be)*g/We+tt);return ii[0]-=E*(ve-1)/ve-jr*it,Sr<0&&(ii[1]=-ii[1]),ii}return Ss.invert(dr,Sr)},rr}function Js(ve,be){return[ve,be&1?90-p:nl]}function Os(ve,be){return[ve,be&1?-90+p:-nl]}function Io(ve){return[ve[0]*(1-p),ve[1]]}function us(ve){var be=[].concat(r.range(-180,180+ve/2,ve).map(Js),r.range(180,-180-ve/2,-ve).map(Os));return{type:"Polygon",coordinates:[ve===180?be.map(Io):be]}}function Zl(){var ve=4,be=t.geoProjectionMutator(fl),Re=be(ve),Be=Re.stream;return Re.lobes=function(tt){return arguments.length?be(ve=+tt):ve},Re.stream=function(tt){var We=Re.rotate(),it=Be(tt),Dt=(Re.rotate([0,0]),Be(tt));return Re.rotate(We),it.sphere=function(){t.geoStream(us(180/ve),Dt)},it},Re.scale(239.75)}function Su(ve){var be=1+ve,Re=x(1/be),Be=O(Re),tt=2*G(E/(We=E+4*Be*be)),We,it=.5*tt*(be+G(ve*(2+ve))),Dt=ve*ve,Ht=be*be;function rr(dr,Sr){var Or=1-x(Sr),jr,ii;if(Or&&Or<2){var Li=A-Sr,un=25,sn;do{var In=x(Li),Kn=o(Li),Aa=Be+a(In,be-Kn),fa=1+Ht-2*be*Kn;Li-=sn=(Li-Dt*Be-be*In+fa*Aa-.5*Or*We)/(2*be*In*Aa)}while(n(sn)>C&&--un>0);jr=tt*G(fa),ii=dr*Aa/E}else jr=tt*(ve+Or),ii=dr*Be/E;return[jr*x(ii),it-jr*o(ii)]}return rr.invert=function(dr,Sr){var Or=dr*dr+(Sr-=it)*Sr,jr=(1+Ht-Or/(tt*tt))/(2*be),ii=V(jr),Li=x(ii),un=Be+a(Li,be-jr);return[O(dr/G(Or))*E/un,O(1-2*(ii-Dt*Be-be*Li+(1+Ht-2*be*jr)*un)/We)]},rr}function nc(){var ve=1,be=t.geoProjectionMutator(Su),Re=be(ve);return Re.ratio=function(Be){return arguments.length?be(ve=+Be):ve},Re.scale(167.774).center([0,18.67])}var ws=.7109889596207567,Fn=.0528035274542;function _a(ve,be){return be>-ws?(ve=sr(ve,be),ve[1]+=Fn,ve):Ft(ve,be)}_a.invert=function(ve,be){return be>-ws?sr.invert(ve,be-Fn):Ft.invert(ve,be)};function Vu(){return t.geoProjection(_a).rotate([-20,-55]).scale(164.263).center([0,-5.4036])}function zl(ve,be){return n(be)>ws?(ve=sr(ve,be),ve[1]-=be>0?Fn:-Fn,ve):Ft(ve,be)}zl.invert=function(ve,be){return n(be)>ws?sr.invert(ve,be+(be>0?Fn:-Fn)):Ft.invert(ve,be)};function xo(){return t.geoProjection(zl).scale(152.63)}function Yl(ve,be,Re,Be){var tt=G(4*E/(2*Re+(1+ve-be/2)*x(2*Re)+(ve+be)/2*x(4*Re)+be/2*x(6*Re))),We=G(Be*x(Re)*G((1+ve*o(2*Re)+be*o(4*Re))/(1+ve+be))),it=Re*Ht(1);function Dt(Sr){return G(1+ve*o(2*Sr)+be*o(4*Sr))}function Ht(Sr){var Or=Sr*Re;return(2*Or+(1+ve-be/2)*x(2*Or)+(ve+be)/2*x(4*Or)+be/2*x(6*Or))/Re}function rr(Sr){return Dt(Sr)*x(Sr)}var dr=function(Sr,Or){var jr=Re*Wt(Ht,it*x(Or)/Re,Or/E);isNaN(jr)&&(jr=Re*v(Or));var ii=tt*Dt(jr);return[ii*We*Sr/E*o(jr),ii/We*x(jr)]};return dr.invert=function(Sr,Or){var jr=Wt(rr,Or*We/tt);return[Sr*E/(o(jr)*tt*We*Dt(jr)),O(Re*Ht(jr/Re)/it)]},Re===0&&(tt=G(Be/E),dr=function(Sr,Or){return[Sr*tt,x(Or)/tt]},dr.invert=function(Sr,Or){return[Sr/tt,O(Or*tt)]}),dr}function Us(){var ve=1,be=0,Re=45*T,Be=2,tt=t.geoProjectionMutator(Yl),We=tt(ve,be,Re,Be);return We.a=function(it){return arguments.length?tt(ve=+it,be,Re,Be):ve},We.b=function(it){return arguments.length?tt(ve,be=+it,Re,Be):be},We.psiMax=function(it){return arguments.length?tt(ve,be,Re=+it*T,Be):Re*P},We.ratio=function(it){return arguments.length?tt(ve,be,Re,Be=+it):Be},We.scale(180.739)}function Hl(ve,be,Re,Be,tt,We,it,Dt,Ht,rr,dr){if(dr.nanEncountered)return NaN;var Sr,Or,jr,ii,Li,un,sn,In,Kn,Aa;if(Sr=Re-be,Or=ve(be+Sr*.25),jr=ve(Re-Sr*.25),isNaN(Or)){dr.nanEncountered=!0;return}if(isNaN(jr)){dr.nanEncountered=!0;return}return ii=Sr*(Be+4*Or+tt)/12,Li=Sr*(tt+4*jr+We)/12,un=ii+Li,Aa=(un-it)/15,rr>Ht?(dr.maxDepthCount++,un+Aa):Math.abs(Aa)<Dt?un+Aa:(sn=be+Sr*.5,In=Hl(ve,be,sn,Be,Or,tt,ii,Dt*.5,Ht,rr+1,dr),isNaN(In)?(dr.nanEncountered=!0,NaN):(Kn=Hl(ve,sn,Re,tt,jr,We,Li,Dt*.5,Ht,rr+1,dr),isNaN(Kn)?(dr.nanEncountered=!0,NaN):In+Kn))}function ac(ve,be,Re,Be,tt){var We={maxDepthCount:0,nanEncountered:!1};Be===void 0&&(Be=1e-8),tt===void 0&&(tt=20);var it=ve(be),Dt=ve(.5*(be+Re)),Ht=ve(Re),rr=(it+4*Dt+Ht)*(Re-be)/6,dr=Hl(ve,be,Re,it,Dt,Ht,rr,Be,tt,1,We);return dr}function aa(ve,be,Re){function Be(jr){return ve+(1-ve)*h(1-h(jr,be),1/be)}function tt(jr){return ac(Be,0,jr,1e-4)}for(var We=1/tt(1),it=1e3,Dt=(1+1e-8)*We,Ht=[],rr=0;rr<=it;rr++)Ht.push(tt(rr/it)*Dt);function dr(jr){var ii=0,Li=it,un=it>>1;do Ht[un]>jr?Li=un:ii=un,un=ii+Li>>1;while(un>ii);var sn=Ht[un+1]-Ht[un];return sn&&(sn=(jr-Ht[un+1])/sn),(un+1+sn)/it}var Sr=2*dr(1)/E*We/Re,Or=function(jr,ii){var Li=dr(n(x(ii))),un=Be(Li)*jr;return Li/=Sr,[un,ii>=0?Li:-Li]};return Or.invert=function(jr,ii){var Li;return ii*=Sr,n(ii)<1&&(Li=v(ii)*O(tt(n(ii))*We)),[jr/Be(n(ii)),Li]},Or}function Oo(){var ve=0,be=2.5,Re=1.183136,Be=t.geoProjectionMutator(aa),tt=Be(ve,be,Re);return tt.alpha=function(We){return arguments.length?Be(ve=+We,be,Re):ve},tt.k=function(We){return arguments.length?Be(ve,be=+We,Re):be},tt.gamma=function(We){return arguments.length?Be(ve,be,Re=+We):Re},tt.scale(152.63)}function qo(ve,be){return n(ve[0]-be[0])<p&&n(ve[1]-be[1])<p}function Ol(ve,be){for(var Re=-1,Be=ve.length,tt=ve[0],We,it,Dt,Ht=[];++Re<Be;){We=ve[Re],it=(We[0]-tt[0])/be,Dt=(We[1]-tt[1])/be;for(var rr=0;rr<be;++rr)Ht.push([tt[0]+rr*it,tt[1]+rr*Dt]);tt=We}return Ht.push(We),Ht}function Pc(ve){var be=[],Re,Be,tt,We,it,Dt,Ht,rr=ve[0].length;for(Ht=0;Ht<rr;++Ht)Re=ve[0][Ht],Be=Re[0][0],tt=Re[0][1],We=Re[1][1],it=Re[2][0],Dt=Re[2][1],be.push(Ol([[Be+p,tt+p],[Be+p,We-p],[it-p,We-p],[it-p,Dt+p]],30));for(Ht=ve[1].length-1;Ht>=0;--Ht)Re=ve[1][Ht],Be=Re[0][0],tt=Re[0][1],We=Re[1][1],it=Re[2][0],Dt=Re[2][1],be.push(Ol([[it-p,Dt-p],[it-p,We+p],[Be+p,We+p],[Be+p,tt-p]],30));return{type:"Polygon",coordinates:[r.merge(be)]}}function Do(ve,be,Re){var Be,tt;function We(Ht,rr){for(var dr=rr<0?-1:1,Sr=be[+(rr<0)],Or=0,jr=Sr.length-1;Or<jr&&Ht>Sr[Or][2][0];++Or);var ii=ve(Ht-Sr[Or][1][0],rr);return ii[0]+=ve(Sr[Or][1][0],dr*rr>dr*Sr[Or][0][1]?Sr[Or][0][1]:rr)[0],ii}Re?We.invert=Re(We):ve.invert&&(We.invert=function(Ht,rr){for(var dr=tt[+(rr<0)],Sr=be[+(rr<0)],Or=0,jr=dr.length;Or<jr;++Or){var ii=dr[Or];if(ii[0][0]<=Ht&&Ht<ii[1][0]&&ii[0][1]<=rr&&rr<ii[1][1]){var Li=ve.invert(Ht-ve(Sr[Or][1][0],0)[0],rr);return Li[0]+=Sr[Or][1][0],qo(We(Li[0],Li[1]),[Ht,rr])?Li:null}}});var it=t.geoProjection(We),Dt=it.stream;return it.stream=function(Ht){var rr=it.rotate(),dr=Dt(Ht),Sr=(it.rotate([0,0]),Dt(Ht));return it.rotate(rr),dr.sphere=function(){t.geoStream(Be,Sr)},dr},it.lobes=function(Ht){return arguments.length?(Be=Pc(Ht),be=Ht.map(function(rr){return rr.map(function(dr){return[[dr[0][0]*T,dr[0][1]*T],[dr[1][0]*T,dr[1][1]*T],[dr[2][0]*T,dr[2][1]*T]]})}),tt=be.map(function(rr){return rr.map(function(dr){var Sr=ve(dr[0][0],dr[0][1])[0],Or=ve(dr[2][0],dr[2][1])[0],jr=ve(dr[1][0],dr[0][1])[1],ii=ve(dr[1][0],dr[1][1])[1],Li;return jr>ii&&(Li=jr,jr=ii,ii=Li),[[Sr,jr],[Or,ii]]})}),it):be.map(function(rr){return rr.map(function(dr){return[[dr[0][0]*P,dr[0][1]*P],[dr[1][0]*P,dr[1][1]*P],[dr[2][0]*P,dr[2][1]*P]]})})},be!=null&&it.lobes(be),it}var rf=[[[[-180,0],[-100,90],[-40,0]],[[-40,0],[30,90],[180,0]]],[[[-180,0],[-160,-90],[-100,0]],[[-100,0],[-60,-90],[-20,0]],[[-20,0],[20,-90],[80,0]],[[80,0],[140,-90],[180,0]]]];function Uf(){return Do(Et,rf).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 Zc(){return Do(zl,ml).scale(152.63)}var Kl=[[[[-180,0],[-100,90],[-40,0]],[[-40,0],[30,90],[180,0]]],[[[-180,0],[-160,-90],[-100,0]],[[-100,0],[-60,-90],[-20,0]],[[-20,0],[20,-90],[80,0]],[[80,0],[140,-90],[180,0]]]];function qs(){return Do(sr,Kl).scale(169.529)}var yu=[[[[-180,0],[-90,90],[0,0]],[[0,0],[90,90],[180,0]]],[[[-180,0],[-90,-90],[0,0]],[[0,0],[90,-90],[180,0]]]];function oc(){return Do(sr,yu).scale(169.529).rotate([20,0])}var Cf=[[[[-180,35],[-30,90],[0,35]],[[0,35],[30,90],[180,35]]],[[[-180,-10],[-102,-90],[-65,-10]],[[-65,-10],[5,-90],[77,-10]],[[77,-10],[103,-90],[180,-10]]]];function sc(){return Do(_a,Cf,st).rotate([-20,-55]).scale(164.263).center([0,-5.4036])}var Nh=[[[[-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 kf(){return Do(Ft,Nh).scale(152.63).rotate([-20,0])}function fs(ve,be){return[3/g*ve*G(E*E/3-be*be),be]}fs.invert=function(ve,be){return[g/3*ve/G(E*E/3-be*be),be]};function nf(){return t.geoProjection(fs).scale(158.837)}function Vf(ve){function be(Re,Be){if(n(n(Be)-A)<p)return[0,Be<0?-2:2];var tt=x(Be),We=h((1+tt)/(1-tt),ve/2),it=.5*(We+1/We)+o(Re*=ve);return[2*x(Re)/it,(We-1/We)/it]}return be.invert=function(Re,Be){var tt=n(Be);if(n(tt-2)<p)return Re?null:[0,v(Be)*A];if(tt>2)return null;Re/=2,Be/=2;var We=Re*Re,it=Be*Be,Dt=2*Be/(1+We+it);return Dt=h((1+Dt)/(1-Dt),1/ve),[a(2*Re,1-We-it)/ve,O((Dt-1)/(Dt+1))]},be}function Jl(){var ve=.5,be=t.geoProjectionMutator(Vf),Re=be(ve);return Re.spacing=function(Be){return arguments.length?be(ve=+Be):ve},Re.scale(124.75)}var hl=E/k;function lc(ve,be){return[ve*(1+G(o(be)))/2,be/(o(be/2)*o(ve/6))]}lc.invert=function(ve,be){var Re=n(ve),Be=n(be),tt=p,We=A;Be<hl?We*=Be/hl:tt+=6*V(hl/Be);for(var it=0;it<25;it++){var Dt=x(We),Ht=G(o(We)),rr=x(We/2),dr=o(We/2),Sr=x(tt/6),Or=o(tt/6),jr=.5*tt*(1+Ht)-Re,ii=We/(dr*Or)-Be,Li=Ht?-.25*tt*Dt/Ht:0,un=.5*(1+Ht),sn=(1+.5*We*rr/dr)/(dr*Or),In=We/dr*(Sr/6)/(Or*Or),Kn=Li*In-sn*un,Aa=(jr*In-ii*un)/Kn,fa=(ii*Li-jr*sn)/Kn;if(We-=Aa,tt-=fa,n(Aa)<p&&n(fa)<p)break}return[ve<0?-tt:tt,be<0?-We:We]};function Fu(){return t.geoProjection(lc).scale(97.2672)}function Cs(ve,be){var Re=ve*ve,Be=be*be;return[ve*(.975534+Be*(-.119161+Re*-.0143059+Be*-.0547009)),be*(1.00384+Re*(.0802894+Be*-.02855+Re*199025e-9)+Be*(.0998909+Be*-.0491032))]}Cs.invert=function(ve,be){var Re=v(ve)*E,Be=be/2,tt=50;do{var We=Re*Re,it=Be*Be,Dt=Re*Be,Ht=Re*(.975534+it*(-.119161+We*-.0143059+it*-.0547009))-ve,rr=Be*(1.00384+We*(.0802894+it*-.02855+We*199025e-9)+it*(.0998909+it*-.0491032))-be,dr=.975534-it*(.119161+3*We*.0143059+it*.0547009),Sr=-Dt*(2*.119161+4*.0547009*it+2*.0143059*We),Or=Dt*(2*.0802894+4*199025e-9*We+2*-.02855*it),jr=1.00384+We*(.0802894+199025e-9*We)+it*(3*(.0998909-.02855*We)-5*.0491032*it),ii=Sr*Or-jr*dr,Li=(rr*Sr-Ht*jr)/ii,un=(Ht*Or-rr*dr)/ii;Re-=Li,Be-=un}while((n(Li)>p||n(un)>p)&&--tt>0);return tt&&[Re,Be]};function js(){return t.geoProjection(Cs).scale(139.98)}function Go(ve,be){return[x(ve)/o(be),b(be)*o(ve)]}Go.invert=function(ve,be){var Re=ve*ve,Be=be*be,tt=Be+1,We=Re+tt,it=ve?_*G((We-G(We*We-4*Re))/Re):1/G(tt);return[O(ve*it),v(be)*V(it)]};function gs(){return t.geoProjection(Go).scale(144.049).clipAngle(90-.001)}function uc(ve){var be=o(ve),Re=b(L+ve/2);function Be(tt,We){var it=We-ve,Dt=n(it)<p?tt*be:n(Dt=L+We/2)<p||n(n(Dt)-A)<p?0:tt*it/u(b(Dt)/Re);return[Dt,it]}return Be.invert=function(tt,We){var it,Dt=We+ve;return[n(We)<p?tt/be:n(it=L+Dt/2)<p||n(n(it)-A)<p?0:tt*u(b(it)/Re)/We,Dt]},Be}function xl(){return Ut(uc).parallel(40).scale(158.837)}function Gu(ve,be){return[ve,1.25*u(b(L+.4*be))]}Gu.invert=function(ve,be){return[ve,2.5*i(s(.8*be))-.625*E]};function Bs(){return t.geoProjection(Gu).scale(108.318)}function ad(ve){var be=ve.length-1;function Re(Be,tt){for(var We=o(tt),it=2/(1+We*o(Be)),Dt=it*We*x(Be),Ht=it*x(tt),rr=be,dr=ve[rr],Sr=dr[0],Or=dr[1],jr;--rr>=0;)dr=ve[rr],Sr=dr[0]+Dt*(jr=Sr)-Ht*Or,Or=dr[1]+Dt*Or+Ht*jr;return Sr=Dt*(jr=Sr)-Ht*Or,Or=Dt*Or+Ht*jr,[Sr,Or]}return Re.invert=function(Be,tt){var We=20,it=Be,Dt=tt;do{for(var Ht=be,rr=ve[Ht],dr=rr[0],Sr=rr[1],Or=0,jr=0,ii;--Ht>=0;)rr=ve[Ht],Or=dr+it*(ii=Or)-Dt*jr,jr=Sr+it*jr+Dt*ii,dr=rr[0]+it*(ii=dr)-Dt*Sr,Sr=rr[1]+it*Sr+Dt*ii;Or=dr+it*(ii=Or)-Dt*jr,jr=Sr+it*jr+Dt*ii,dr=it*(ii=dr)-Dt*Sr-Be,Sr=it*Sr+Dt*ii-tt;var Li=Or*Or+jr*jr,un,sn;it-=un=(dr*Or+Sr*jr)/Li,Dt-=sn=(Sr*Or-dr*jr)/Li}while(n(un)+n(sn)>p*p&&--We>0);if(We){var In=G(it*it+Dt*Dt),Kn=2*i(In*.5),Aa=x(Kn);return[a(it*Aa,In*o(Kn)),In?O(Dt*Aa/In):0]}},Re}var Po=[[.9972523,0],[.0052513,-.0041175],[.0074606,.0048125],[-.0153783,-.1968253],[.0636871,-.1408027],[.3660976,-.2937382]],od=[[.98879,0],[0,0],[-.050909,0],[0,0],[.075528,0]],Yo=[[.984299,0],[.0211642,.0037608],[-.1036018,-.0575102],[-.0329095,-.0320119],[.0499471,.1223335],[.026046,.0899805],[7388e-7,-.1435792],[.0075848,-.1334108],[-.0216473,.0776645],[-.0225161,.0853673]],Pa=[[.9245,0],[0,0],[.01943,0]],af=[[.721316,0],[0,0],[-.00881625,-.00617325]];function Hu(){return ql(Po,[152,-64]).scale(1400).center([-160.908,62.4864]).clipAngle(30).angle(7.8)}function bl(){return ql(od,[95,-38]).scale(1e3).clipAngle(55).center([-96.5563,38.8675])}function Gf(){return ql(Yo,[120,-45]).scale(359.513).clipAngle(55).center([-117.474,53.0628])}function Ic(){return ql(Pa,[-20,-18]).scale(209.091).center([20,16.7214]).clipAngle(82)}function mf(){return ql(af,[165,10]).scale(250).clipAngle(130).center([-165,-10])}function ql(ve,be){var Re=t.geoProjection(ad(ve)).rotate(be).clipAngle(90),Be=t.geoRotation(be),tt=Re.center;return delete Re.rotate,Re.center=function(We){return arguments.length?tt(Be(We)):Be.invert(tt())},Re}var _h=G(6),Qf=G(7);function yf(ve,be){var Re=O(7*x(be)/(3*_h));return[_h*ve*(2*o(2*Re/3)-1)/Qf,9*x(Re/3)/Qf]}yf.invert=function(ve,be){var Re=3*O(be*Qf/9);return[ve*Qf/(_h*(2*o(2*Re/3)-1)),O(x(Re)*3*_h/7)]};function Yc(){return t.geoProjection(yf).scale(164.859)}function eh(ve,be){for(var Re=(1+_)*x(be),Be=be,tt=0,We;tt<25&&(Be-=We=(x(Be/2)+x(Be)-Re)/(.5*o(Be/2)+o(Be)),!(n(We)<p));tt++);return[ve*(1+2*o(Be)/o(Be/2))/(3*k),2*G(3)*x(Be/2)/G(2+k)]}eh.invert=function(ve,be){var Re=be*G(2+k)/(2*G(3)),Be=2*O(Re);return[3*k*ve/(1+2*o(Be)/o(Be/2)),O((Re+x(Be))/(1+_))]};function th(){return t.geoProjection(eh).scale(188.209)}function ju(ve,be){for(var Re=G(6/(4+E)),Be=(1+E/4)*x(be),tt=be/2,We=0,it;We<25&&(tt-=it=(tt/2+x(tt)-Be)/(.5+o(tt)),!(n(it)<p));We++);return[Re*(.5+o(tt))*ve/1.5,Re*tt]}ju.invert=function(ve,be){var Re=G(6/(4+E)),Be=be/Re;return n(n(Be)-A)<p&&(Be=Be<0?-A:A),[1.5*ve/(Re*(.5+o(Be))),O((Be/2+x(Be))/(1+E/4))]};function Hf(){return t.geoProjection(ju).scale(166.518)}function cc(ve,be){var Re=be*be,Be=Re*Re,tt=Re*Be;return[ve*(.84719-.13063*Re+tt*tt*(-.04515+.05494*Re-.02326*Be+.00331*tt)),be*(1.01183+Be*Be*(-.02625+.01926*Re-.00396*Be))]}cc.invert=function(ve,be){var Re=be,Be=25,tt,We,it,Dt;do We=Re*Re,it=We*We,Re-=tt=(Re*(1.01183+it*it*(-.02625+.01926*We-.00396*it))-be)/(1.01183+it*it*(9*-.02625+11*.01926*We+13*-.00396*it));while(n(tt)>C&&--Be>0);return We=Re*Re,it=We*We,Dt=We*it,[ve/(.84719-.13063*We+Dt*Dt*(-.04515+.05494*We-.02326*it+.00331*Dt)),Re]};function of(){return t.geoProjection(cc).scale(175.295)}function Bl(ve,be){return[ve*(1+o(be))/2,2*(be-b(be/2))]}Bl.invert=function(ve,be){for(var Re=be/2,Be=0,tt=1/0;Be<10&&n(tt)>p;++Be){var We=o(be/2);be-=tt=(be-b(be/2)-Re)/(1-.5/(We*We))}return[2*ve/(1+o(be)),be]};function Kc(){return t.geoProjection(Bl).scale(152.63)}var Rc=[[[[-180,0],[-90,90],[0,0]],[[0,0],[90,90],[180,0]]],[[[-180,0],[-90,-90],[0,0]],[[0,0],[90,-90],[180,0]]]];function ms(){return Do(Ze(1/0),Rc).rotate([20,0]).scale(152.63)}function jf(ve,be){var Re=x(be),Be=o(be),tt=v(ve);if(ve===0||n(be)===A)return[0,be];if(be===0)return[ve,0];if(n(ve)===A)return[ve*Be,A*Re];var We=E/(2*ve)-2*ve/E,it=2*be/E,Dt=(1-it*it)/(Re-it),Ht=We*We,rr=Dt*Dt,dr=1+Ht/rr,Sr=1+rr/Ht,Or=(We*Re/Dt-We/2)/dr,jr=(rr*Re/Ht+Dt/2)/Sr,ii=Or*Or+Be*Be/dr,Li=jr*jr-(rr*Re*Re/Ht+Dt*Re-1)/Sr;return[A*(Or+G(ii)*tt),A*(jr+G(Li<0?0:Li)*v(-be*We)*tt)]}jf.invert=function(ve,be){ve/=A,be/=A;var Re=ve*ve,Be=be*be,tt=Re+Be,We=E*E;return[ve?(tt-1+G((1-tt)*(1-tt)+4*Re))/(2*ve)*A:0,Wt(function(it){return tt*(E*x(it)-2*it)*E+4*it*it*(be-x(it))+2*E*it-We*be},0)]};function Uh(){return t.geoProjection(jf).scale(127.267)}var rh=1.0148,sf=.23185,xh=-.14499,Mu=.02406,ih=rh,Ws=5*sf,Eu=7*xh,Dc=9*Mu,ks=1.790857183;function bc(ve,be){var Re=be*be;return[ve,be*(rh+Re*Re*(sf+Re*(xh+Mu*Re)))]}bc.invert=function(ve,be){be>ks?be=ks:be<-ks&&(be=-ks);var Re=be,Be;do{var tt=Re*Re;Re-=Be=(Re*(rh+tt*tt*(sf+tt*(xh+Mu*tt)))-be)/(ih+tt*tt*(Ws+tt*(Eu+Dc*tt)))}while(n(Be)>p);return[ve,Re]};function du(){return t.geoProjection(bc).scale(139.319)}function _u(ve,be){if(n(be)<p)return[ve,0];var Re=b(be),Be=ve*x(be);return[x(Be)/Re,be+(1-o(Be))/Re]}_u.invert=function(ve,be){if(n(be)<p)return[ve,0];var Re=ve*ve+be*be,Be=be*.5,tt=10,We;do{var it=b(Be),Dt=1/o(Be),Ht=Re-2*be*Be+Be*Be;Be-=We=(it*Ht+2*(Be-be))/(2+Ht*Dt*Dt+2*(Be-be)*it)}while(n(We)>p&&--tt>0);return it=b(Be),[(n(be)<n(Be+1/it)?O(ve*it):v(be)*v(ve)*(V(n(ve*it))+A))/x(Be),Be]};function al(){return t.geoProjection(_u).scale(103.74)}function nh(ve,be){var Re=Fc(ve[1],ve[0]),Be=Fc(be[1],be[0]),tt=bd(Re,Be),We=wc(Re)/wc(Be);return zu([1,0,ve[0][0],0,1,ve[0][1]],zu([We,0,0,0,We,0],zu([o(tt),x(tt),0,-x(tt),o(tt),0],[1,0,-be[0][0],0,1,-be[0][1]])))}function bh(ve){var be=1/(ve[0]*ve[4]-ve[1]*ve[3]);return[be*ve[4],-be*ve[1],be*(ve[1]*ve[5]-ve[2]*ve[4]),-be*ve[3],be*ve[0],be*(ve[2]*ve[3]-ve[0]*ve[5])]}function zu(ve,be){return[ve[0]*be[0]+ve[1]*be[3],ve[0]*be[1]+ve[1]*be[4],ve[0]*be[2]+ve[1]*be[5]+ve[2],ve[3]*be[0]+ve[4]*be[3],ve[3]*be[1]+ve[4]*be[4],ve[3]*be[2]+ve[4]*be[5]+ve[5]]}function Fc(ve,be){return[ve[0]-be[0],ve[1]-be[1]]}function wc(ve){return G(ve[0]*ve[0]+ve[1]*ve[1])}function bd(ve,be){return a(ve[0]*be[1]-ve[1]*be[0],ve[0]*be[0]+ve[1]*be[1])}function _f(ve,be,Re){Be(ve,{transform:null});function Be(rr,dr){if(rr.edges=jl(rr.face),dr.face){var Sr=rr.shared=xf(rr.face,dr.face),Or=nh(Sr.map(dr.project),Sr.map(rr.project));rr.transform=dr.transform?zu(dr.transform,Or):Or;for(var jr=dr.edges,ii=0,Li=jr.length;ii<Li;++ii)Ou(Sr[0],jr[ii][1])&&Ou(Sr[1],jr[ii][0])&&(jr[ii]=rr),Ou(Sr[0],jr[ii][0])&&Ou(Sr[1],jr[ii][1])&&(jr[ii]=rr);for(jr=rr.edges,ii=0,Li=jr.length;ii<Li;++ii)Ou(Sr[0],jr[ii][0])&&Ou(Sr[1],jr[ii][1])&&(jr[ii]=dr),Ou(Sr[0],jr[ii][1])&&Ou(Sr[1],jr[ii][0])&&(jr[ii]=dr)}else rr.transform=dr.transform;return rr.children&&rr.children.forEach(function(un){Be(un,rr)}),rr}function tt(rr,dr){var Sr=be(rr,dr),Or=Sr.project([rr*P,dr*P]),jr;return(jr=Sr.transform)?[jr[0]*Or[0]+jr[1]*Or[1]+jr[2],-(jr[3]*Or[0]+jr[4]*Or[1]+jr[5])]:(Or[1]=-Or[1],Or)}lf(ve)&&(tt.invert=function(rr,dr){var Sr=We(ve,[rr,-dr]);return Sr&&(Sr[0]*=T,Sr[1]*=T,Sr)});function We(rr,dr){var Sr=rr.project.invert,Or=rr.transform,jr=dr;if(Or&&(Or=bh(Or),jr=[Or[0]*jr[0]+Or[1]*jr[1]+Or[2],Or[3]*jr[0]+Or[4]*jr[1]+Or[5]]),Sr&&rr===it(ii=Sr(jr)))return ii;for(var ii,Li=rr.children,un=0,sn=Li&&Li.length;un<sn;++un)if(ii=We(Li[un],dr))return ii}function it(rr){return be(rr[0]*T,rr[1]*T)}var Dt=t.geoProjection(tt),Ht=Dt.stream;return Dt.stream=function(rr){var dr=Dt.rotate(),Sr=Ht(rr),Or=(Dt.rotate([0,0]),Ht(rr));return Dt.rotate(dr),Sr.sphere=function(){Or.polygonStart(),Or.lineStart(),Lf(Or,ve),Or.lineEnd(),Or.polygonEnd()},Sr},Dt.angle(Re==null?-30:Re*P)}function Lf(ve,be,Re){var Be,tt=be.edges,We=tt.length,it,Dt={type:"MultiPoint",coordinates:be.face},Ht=be.face.filter(function(Li){return n(Li[1])!==90}),rr=t.geoBounds({type:"MultiPoint",coordinates:Ht}),dr=!1,Sr=-1,Or=rr[1][0]-rr[0][0],jr=Or===180||Or===360?[(rr[0][0]+rr[1][0])/2,(rr[0][1]+rr[1][1])/2]:t.geoCentroid(Dt);if(Re)for(;++Sr<We&&tt[Sr]!==Re;);++Sr;for(var ii=0;ii<We;++ii)it=tt[(ii+Sr)%We],Array.isArray(it)?(dr||(ve.point((Be=t.geoInterpolate(it[0],jr)(p))[0],Be[1]),dr=!0),ve.point((Be=t.geoInterpolate(it[1],jr)(p))[0],Be[1])):(dr=!1,it!==Re&&Lf(ve,it,be))}function Ou(ve,be){return ve&&be&&ve[0]===be[0]&&ve[1]===be[1]}function xf(ve,be){for(var Re,Be,tt=ve.length,We=null,it=0;it<tt;++it){Re=ve[it];for(var Dt=be.length;--Dt>=0;)if(Be=be[Dt],Re[0]===Be[0]&&Re[1]===Be[1]){if(We)return[We,Re];We=Re}}}function jl(ve){for(var be=ve.length,Re=[],Be=ve[be-1],tt=0;tt<be;++tt)Re.push([Be,Be=ve[tt]]);return Re}function lf(ve){return ve.project.invert||ve.children&&ve.children.some(lf)}var Vh=[[0,90],[-90,0],[0,0],[90,0],[180,0],[0,-90]],Pf=[[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(ve){return ve.map(function(be){return Vh[be]})});function Ls(ve){ve=ve||function(Re){var Be=t.geoCentroid({type:"MultiPoint",coordinates:Re});return t.geoGnomonic().scale(1).translate([0,0]).rotate([-Be[0],-Be[1]])};var be=Pf.map(function(Re){return{face:Re,project:ve(Re)}});return[-1,0,0,1,0,1,4,5].forEach(function(Re,Be){var tt=be[Re];tt&&(tt.children||(tt.children=[])).push(be[Be])}),_f(be[0],function(Re,Be){return be[Re<-E/2?Be<0?6:4:Re<0?Be<0?2:0:Re<E/2?Be<0?3:1:Be<0?7:5]}).angle(-30).scale(101.858).center([0,45])}var vu=2/G(3);function Cu(ve,be){var Re=wt(ve,be);return[Re[0]*vu,Re[1]]}Cu.invert=function(ve,be){return wt.invert(ve/vu,be)};function Wf(ve){ve=ve||function(Re){var Be=t.geoCentroid({type:"MultiPoint",coordinates:Re});return t.geoProjection(Cu).translate([0,0]).scale(1).rotate(Be[1]>0?[-Be[0],0]:[180-Be[0],180])};var be=Pf.map(function(Re){return{face:Re,project:ve(Re)}});return[-1,0,0,1,0,1,4,5].forEach(function(Re,Be){var tt=be[Re];tt&&(tt.children||(tt.children=[])).push(be[Be])}),_f(be[0],function(Re,Be){return be[Re<-E/2?Be<0?6:4:Re<0?Be<0?2:0:Re<E/2?Be<0?3:1:Be<0?7:5]}).angle(-30).scale(121.906).center([0,48.5904])}function Vs(ve){ve=ve||function(it){var Dt=it.length===6?t.geoCentroid({type:"MultiPoint",coordinates:it}):it[0];return t.geoGnomonic().scale(1).translate([0,0]).rotate([-Dt[0],-Dt[1]])};var be=Pf.map(function(it){for(var Dt=it.map(If),Ht=Dt.length,rr=Dt[Ht-1],dr,Sr=[],Or=0;Or<Ht;++Or)dr=Dt[Or],Sr.push(Wu([rr[0]*.9486832980505138+dr[0]*.31622776601683794,rr[1]*.9486832980505138+dr[1]*.31622776601683794,rr[2]*.9486832980505138+dr[2]*.31622776601683794]),Wu([dr[0]*.9486832980505138+rr[0]*.31622776601683794,dr[1]*.9486832980505138+rr[1]*.31622776601683794,dr[2]*.9486832980505138+rr[2]*.31622776601683794])),rr=dr;return Sr}),Re=[],Be=[-1,0,0,1,0,1,4,5];be.forEach(function(it,Dt){for(var Ht=Pf[Dt],rr=Ht.length,dr=Re[Dt]=[],Sr=0;Sr<rr;++Sr)be.push([Ht[Sr],it[(Sr*2+2)%(2*rr)],it[(Sr*2+1)%(2*rr)]]),Be.push(Dt),dr.push(zc(If(it[(Sr*2+2)%(2*rr)]),If(it[(Sr*2+1)%(2*rr)])))});var tt=be.map(function(it){return{project:ve(it),face:it}});Be.forEach(function(it,Dt){var Ht=tt[it];Ht&&(Ht.children||(Ht.children=[])).push(tt[Dt])});function We(it,Dt){var Ht=o(Dt),rr=[Ht*o(it),Ht*x(it),x(Dt)],dr=it<-E/2?Dt<0?6:4:it<0?Dt<0?2:0:it<E/2?Dt<0?3:1:Dt<0?7:5,Sr=Re[dr];return tt[bf(Sr[0],rr)<0?8+3*dr:bf(Sr[1],rr)<0?8+3*dr+1:bf(Sr[2],rr)<0?8+3*dr+2:dr]}return _f(tt[0],We).angle(-30).scale(110.625).center([0,45])}function bf(ve,be){for(var Re=0,Be=ve.length,tt=0;Re<Be;++Re)tt+=ve[Re]*be[Re];return tt}function zc(ve,be){return[ve[1]*be[2]-ve[2]*be[1],ve[2]*be[0]-ve[0]*be[2],ve[0]*be[1]-ve[1]*be[0]]}function Wu(ve){return[a(ve[1],ve[0])*P,O(c(-1,f(1,ve[2])))*P]}function If(ve){var be=ve[0]*T,Re=ve[1]*T,Be=o(Re);return[Be*o(be),Be*x(be),x(Re)]}function Xu(){}function uf(ve){if((Re=ve.length)<4)return!1;for(var be=0,Re,Be=ve[Re-1][1]*ve[0][0]-ve[Re-1][0]*ve[0][1];++be<Re;)Be+=ve[be-1][1]*ve[be][0]-ve[be-1][0]*ve[be][1];return Be<=0}function Xf(ve,be){for(var Re=be[0],Be=be[1],tt=!1,We=0,it=ve.length,Dt=it-1;We<it;Dt=We++){var Ht=ve[We],rr=Ht[0],dr=Ht[1],Sr=ve[Dt],Or=Sr[0],jr=Sr[1];dr>Be^jr>Be&&Re<(Or-rr)*(Be-dr)/(jr-dr)+rr&&(tt=!tt)}return tt}function Wl(ve,be){var Re=be.stream,Be;if(!Re)throw new Error("invalid projection");switch(ve&&ve.type){case"Feature":Be=Zu;break;case"FeatureCollection":Be=ah;break;default:Be=Tc;break}return Be(ve,Re)}function ah(ve,be){return{type:"FeatureCollection",features:ve.features.map(function(Re){return Zu(Re,be)})}}function Zu(ve,be){return{type:"Feature",id:ve.id,properties:ve.properties,geometry:Tc(ve.geometry,be)}}function Oc(ve,be){return{type:"GeometryCollection",geometries:ve.geometries.map(function(Re){return Tc(Re,be)})}}function Tc(ve,be){if(!ve)return null;if(ve.type==="GeometryCollection")return Oc(ve,be);var Re;switch(ve.type){case"Point":Re=qc;break;case"MultiPoint":Re=qc;break;case"LineString":Re=cf;break;case"MultiLineString":Re=cf;break;case"Polygon":Re=fc;break;case"MultiPolygon":Re=fc;break;case"Sphere":Re=fc;break;default:return null}return t.geoStream(ve,be(Re)),Re.result()}var wl=[],pu=[],qc={point:function(ve,be){wl.push([ve,be])},result:function(){var ve=wl.length?wl.length<2?{type:"Point",coordinates:wl[0]}:{type:"MultiPoint",coordinates:wl}:null;return wl=[],ve}},cf={lineStart:Xu,point:function(ve,be){wl.push([ve,be])},lineEnd:function(){wl.length&&(pu.push(wl),wl=[])},result:function(){var ve=pu.length?pu.length<2?{type:"LineString",coordinates:pu[0]}:{type:"MultiLineString",coordinates:pu}:null;return pu=[],ve}},fc={polygonStart:Xu,lineStart:Xu,point:function(ve,be){wl.push([ve,be])},lineEnd:function(){var ve=wl.length;if(ve){do wl.push(wl[0].slice());while(++ve<4);pu.push(wl),wl=[]}},polygonEnd:Xu,result:function(){if(!pu.length)return null;var ve=[],be=[];return pu.forEach(function(Re){uf(Re)?ve.push([Re]):be.push(Re)}),be.forEach(function(Re){var Be=Re[0];ve.some(function(tt){if(Xf(tt[0],Be))return tt.push(Re),!0})||ve.push([Re])}),pu=[],ve.length?ve.length>1?{type:"MultiPolygon",coordinates:ve}:{type:"Polygon",coordinates:ve[0]}:null}};function Bc(ve){var be=ve(A,0)[0]-ve(-A,0)[0];function Re(Be,tt){var We=n(Be)<A,it=ve(We?Be:Be>0?Be-E:Be+E,tt),Dt=(it[0]-it[1])*_,Ht=(it[0]+it[1])*_;if(We)return[Dt,Ht];var rr=be*_,dr=Dt>0^Ht>0?-1:1;return[dr*Dt-v(Ht)*rr,dr*Ht-v(Dt)*rr]}return ve.invert&&(Re.invert=function(Be,tt){var We=(Be+tt)*_,it=(tt-Be)*_,Dt=n(We)<.5*be&&n(it)<.5*be;if(!Dt){var Ht=be*_,rr=We>0^it>0?-1:1,dr=-rr*Be+(it>0?1:-1)*Ht,Sr=-rr*tt+(We>0?1:-1)*Ht;We=(-dr-Sr)*_,it=(dr-Sr)*_}var Or=ve.invert(We,it);return Dt||(Or[0]+=We>0?E:-E),Or}),t.geoProjection(Re).rotate([-90,-90,45]).clipAngle(180-.001)}function At(){return Bc(ki).scale(176.423)}function Xt(){return Bc(Lo).scale(111.48)}function kr(ve,be){if(!(0<=(be=+be)&&be<=20))throw new Error("invalid digits");function Re(rr){var dr=rr.length,Sr=2,Or=new Array(dr);for(Or[0]=+rr[0].toFixed(be),Or[1]=+rr[1].toFixed(be);Sr<dr;)Or[Sr]=rr[Sr],++Sr;return Or}function Be(rr){return rr.map(Re)}function tt(rr){for(var dr=Re(rr[0]),Sr=[dr],Or=1;Or<rr.length;Or++){var jr=Re(rr[Or]);(jr.length>2||jr[0]!=dr[0]||jr[1]!=dr[1])&&(Sr.push(jr),dr=jr)}return Sr.length===1&&rr.length>1&&Sr.push(Re(rr[rr.length-1])),Sr}function We(rr){return rr.map(tt)}function it(rr){if(rr==null)return rr;var dr;switch(rr.type){case"GeometryCollection":dr={type:"GeometryCollection",geometries:rr.geometries.map(it)};break;case"Point":dr={type:"Point",coordinates:Re(rr.coordinates)};break;case"MultiPoint":dr={type:rr.type,coordinates:Be(rr.coordinates)};break;case"LineString":dr={type:rr.type,coordinates:tt(rr.coordinates)};break;case"MultiLineString":case"Polygon":dr={type:rr.type,coordinates:We(rr.coordinates)};break;case"MultiPolygon":dr={type:"MultiPolygon",coordinates:rr.coordinates.map(We)};break;default:return rr}return rr.bbox!=null&&(dr.bbox=rr.bbox),dr}function Dt(rr){var dr={type:"Feature",properties:rr.properties,geometry:it(rr.geometry)};return rr.id!=null&&(dr.id=rr.id),rr.bbox!=null&&(dr.bbox=rr.bbox),dr}if(ve!=null)switch(ve.type){case"Feature":return Dt(ve);case"FeatureCollection":{var Ht={type:"FeatureCollection",features:ve.features.map(Dt)};return ve.bbox!=null&&(Ht.bbox=ve.bbox),Ht}default:return it(ve)}return ve}function Ar(ve){var be=x(ve);function Re(Be,tt){var We=be?b(Be*be/2)/be:Be/2;if(!tt)return[2*We,-ve];var it=2*i(We*x(tt)),Dt=1/b(tt);return[x(it)*Dt,tt+(1-o(it))*Dt-ve]}return Re.invert=function(Be,tt){if(n(tt+=ve)<p)return[be?2*i(be*Be/2)/be:Be,0];var We=Be*Be+tt*tt,it=0,Dt=10,Ht;do{var rr=b(it),dr=1/o(it),Sr=We-2*tt*it+it*it;it-=Ht=(rr*Sr+2*(it-tt))/(2+Sr*dr*dr+2*(it-tt)*rr)}while(n(Ht)>p&&--Dt>0);var Or=Be*(rr=b(it)),jr=b(n(tt)<n(it+1/rr)?O(Or)*.5:V(Or)*.5+E/4)/x(it);return[be?2*i(be*jr)/be:2*jr,it]},Re}function Kr(){return Ut(Ar).scale(131.215)}var Ei=[[.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]];Ei.forEach(function(ve){ve[1]*=1.0144});function Wi(ve,be){var Re=f(18,n(be)*36/E),Be=l(Re),tt=Re-Be,We=(Sr=Ei[Be])[0],it=Sr[1],Dt=(Sr=Ei[++Be])[0],Ht=Sr[1],rr=(Sr=Ei[f(19,++Be)])[0],dr=Sr[1],Sr;return[ve*(Dt+tt*(rr-We)/2+tt*tt*(rr-2*Dt+We)/2),(be>0?A:-A)*(Ht+tt*(dr-it)/2+tt*tt*(dr-2*Ht+it)/2)]}Wi.invert=function(ve,be){var Re=be/A,Be=Re*90,tt=f(18,n(Be/5)),We=c(0,l(tt));do{var it=Ei[We][1],Dt=Ei[We+1][1],Ht=Ei[f(19,We+2)][1],rr=Ht-it,dr=Ht-2*Dt+it,Sr=2*(n(Re)-Dt)/rr,Or=dr/rr,jr=Sr*(1-Or*Sr*(1-2*Or*Sr));if(jr>=0||We===1){Be=(be>=0?5:-5)*(jr+tt);var ii=50,Li;do tt=f(18,n(Be)/5),We=l(tt),jr=tt-We,it=Ei[We][1],Dt=Ei[We+1][1],Ht=Ei[f(19,We+2)][1],Be-=(Li=(be>=0?A:-A)*(Dt+jr*(Ht-it)/2+jr*jr*(Ht-2*Dt+it)/2)-be)*P;while(n(Li)>C&&--ii>0);break}}while(--We>=0);var un=Ei[We][0],sn=Ei[We+1][0],In=Ei[f(19,We+2)][0];return[ve/(sn+jr*(In-un)/2+jr*jr*(In-2*sn+un)/2),Be*T]};function hn(){return t.geoProjection(Wi).scale(152.63)}function Tn(ve){function be(Re,Be){var tt=o(Be),We=(ve-1)/(ve-tt*o(Re));return[We*tt*x(Re),We*x(Be)]}return be.invert=function(Re,Be){var tt=Re*Re+Be*Be,We=G(tt),it=(ve-G(1-tt*(ve+1)/(ve-1)))/((ve-1)/We+We/(ve-1));return[a(Re*it,We*G(1-it*it)),We?O(Be*it/We):0]},be}function Bn(ve,be){var Re=Tn(ve);if(!be)return Re;var Be=o(be),tt=x(be);function We(it,Dt){var Ht=Re(it,Dt),rr=Ht[1],dr=rr*tt/(ve-1)+Be;return[Ht[0]*Be/dr,rr/dr]}return We.invert=function(it,Dt){var Ht=(ve-1)/(ve-1-Dt*tt);return Re.invert(Ht*it,Ht*Dt*Be)},We}function Zi(){var ve=2,be=0,Re=t.geoProjectionMutator(Bn),Be=Re(ve,be);return Be.distance=function(tt){return arguments.length?Re(ve=+tt,be):ve},Be.tilt=function(tt){return arguments.length?Re(ve,be=tt*T):be*P},Be.scale(432.147).clipAngle(V(1/ve)*P-1e-6)}var $i=1e-4,an=1e4,Di=-180,$n=Di+$i,ka=180,Ra=ka-$i,La=-90,Na=La+$i,Yn=90,zn=Yn-$i;function Ka(ve){return ve.length>0}function bo(ve){return Math.floor(ve*an)/an}function Xo(ve){return ve===La||ve===Yn?[0,ve]:[Di,bo(ve)]}function Ms(ve){var be=ve[0],Re=ve[1],Be=!1;return be<=$n?(be=Di,Be=!0):be>=Ra&&(be=ka,Be=!0),Re<=Na?(Re=La,Be=!0):Re>=zn&&(Re=Yn,Be=!0),Be?[be,Re]:ve}function os(ve){return ve.map(Ms)}function Ts(ve,be,Re){for(var Be=0,tt=ve.length;Be<tt;++Be){var We=ve[Be].slice();Re.push({index:-1,polygon:be,ring:We});for(var it=0,Dt=We.length;it<Dt;++it){var Ht=We[it],rr=Ht[0],dr=Ht[1];if(rr<=$n||rr>=Ra||dr<=Na||dr>=zn){We[it]=Ms(Ht);for(var Sr=it+1;Sr<Dt;++Sr){var Or=We[Sr],jr=Or[0],ii=Or[1];if(jr>$n&&jr<Ra&&ii>Na&&ii<zn)break}if(Sr===it+1)continue;if(it){var Li={index:-1,polygon:be,ring:We.slice(0,it+1)};Li.ring[Li.ring.length-1]=Xo(dr),Re[Re.length-1]=Li}else Re.pop();if(Sr>=Dt)break;Re.push({index:-1,polygon:be,ring:We=We.slice(Sr-1)}),We[0]=Xo(We[0][1]),it=-1,Dt=We.length}}}}function Ho(ve){var be,Re=ve.length,Be={},tt={},We,it,Dt,Ht,rr;for(be=0;be<Re;++be){if(We=ve[be],it=We.ring[0],Ht=We.ring[We.ring.length-1],it[0]===Ht[0]&&it[1]===Ht[1]){We.polygon.push(We.ring),ve[be]=null;continue}We.index=be,Be[it]=tt[Ht]=We}for(be=0;be<Re;++be)if(We=ve[be],We){if(it=We.ring[0],Ht=We.ring[We.ring.length-1],Dt=tt[it],rr=Be[Ht],delete Be[it],delete tt[Ht],it[0]===Ht[0]&&it[1]===Ht[1]){We.polygon.push(We.ring);continue}Dt?(delete tt[it],delete Be[Dt.ring[0]],Dt.ring.pop(),ve[Dt.index]=null,We={index:-1,polygon:Dt.polygon,ring:Dt.ring.concat(We.ring)},Dt===rr?We.polygon.push(We.ring):(We.index=Re++,ve.push(Be[We.ring[0]]=tt[We.ring[We.ring.length-1]]=We))):rr?(delete Be[Ht],delete tt[rr.ring[rr.ring.length-1]],We.ring.pop(),We={index:Re++,polygon:rr.polygon,ring:We.ring.concat(rr.ring)},ve[rr.index]=null,ve.push(Be[We.ring[0]]=tt[We.ring[We.ring.length-1]]=We)):(We.ring.push(We.ring[0]),We.polygon.push(We.ring))}}function yl(ve){var be={type:"Feature",geometry:Xs(ve.geometry)};return ve.id!=null&&(be.id=ve.id),ve.bbox!=null&&(be.bbox=ve.bbox),ve.properties!=null&&(be.properties=ve.properties),be}function Xs(ve){if(ve==null)return ve;var be,Re,Be,tt;switch(ve.type){case"GeometryCollection":be={type:"GeometryCollection",geometries:ve.geometries.map(Xs)};break;case"Point":be={type:"Point",coordinates:Ms(ve.coordinates)};break;case"MultiPoint":case"LineString":be={type:ve.type,coordinates:os(ve.coordinates)};break;case"MultiLineString":be={type:"MultiLineString",coordinates:ve.coordinates.map(os)};break;case"Polygon":{var We=[];Ts(ve.coordinates,We,Re=[]),Ho(Re),be={type:"Polygon",coordinates:We};break}case"MultiPolygon":{Re=[],Be=-1,tt=ve.coordinates.length;for(var it=new Array(tt);++Be<tt;)Ts(ve.coordinates[Be],it[Be]=[],Re);Ho(Re),be={type:"MultiPolygon",coordinates:it.filter(Ka)};break}default:return ve}return ve.bbox!=null&&(be.bbox=ve.bbox),be}function Ps(ve){if(ve==null)return ve;switch(ve.type){case"Feature":return yl(ve);case"FeatureCollection":{var be={type:"FeatureCollection",features:ve.features.map(yl)};return ve.bbox!=null&&(be.bbox=ve.bbox),be}default:return Xs(ve)}}function va(ve,be){var Re=b(be/2),Be=x(L*Re);return[ve*(.74482-.34588*Be*Be),1.70711*Re]}va.invert=function(ve,be){var Re=be/1.70711,Be=x(L*Re);return[ve/(.74482-.34588*Be*Be),2*i(Re)]};function no(){return t.geoProjection(va).scale(146.153)}function _s(ve,be,Re){var Be=t.geoInterpolate(be,Re),tt=Be(.5),We=t.geoRotation([-tt[0],-tt[1]])(be),it=Be.distance/2,Dt=-O(x(We[1]*T)/x(it)),Ht=[-tt[0],-tt[1],-(We[0]>0?E-Dt:Dt)*P],rr=t.geoProjection(ve(it)).rotate(Ht),dr=t.geoRotation(Ht),Sr=rr.center;return delete rr.rotate,rr.center=function(Or){return arguments.length?Sr(dr(Or)):dr.invert(Sr())},rr.clipAngle(90)}function is(ve){var be=o(ve);function Re(Be,tt){var We=t.geoGnomonicRaw(Be,tt);return We[0]*=be,We}return Re.invert=function(Be,tt){return t.geoGnomonicRaw.invert(Be/be,tt)},Re}function $l(){return ku([-158,21.5],[-77,39]).clipAngle(60).scale(400)}function ku(ve,be){return _s(is,ve,be)}function Yu(ve){if(!(ve*=2))return t.geoAzimuthalEquidistantRaw;var be=-ve/2,Re=-be,Be=ve*ve,tt=b(Re),We=.5/x(Re);function it(Dt,Ht){var rr=V(o(Ht)*o(Dt-be)),dr=V(o(Ht)*o(Dt-Re)),Sr=Ht<0?-1:1;return rr*=rr,dr*=dr,[(rr-dr)/(2*ve),Sr*G(4*Be*dr-(Be-rr+dr)*(Be-rr+dr))/(2*ve)]}return it.invert=function(Dt,Ht){var rr=Ht*Ht,dr=o(G(rr+(Or=Dt+be)*Or)),Sr=o(G(rr+(Or=Dt+Re)*Or)),Or,jr;return[a(jr=dr-Sr,Or=(dr+Sr)*tt),(Ht<0?-1:1)*V(G(Or*Or+jr*jr)*We)]},it}function Nc(){return gu([-158,21.5],[-77,39]).clipAngle(130).scale(122.571)}function gu(ve,be){return _s(Yu,ve,be)}function Uc(ve,be){if(n(be)<p)return[ve,0];var Re=n(be/A),Be=O(Re);if(n(ve)<p||n(n(be)-A)<p)return[0,v(be)*E*b(Be/2)];var tt=o(Be),We=n(E/ve-ve/E)/2,it=We*We,Dt=tt/(Re+tt-1),Ht=Dt*(2/Re-1),rr=Ht*Ht,dr=rr+it,Sr=Dt-rr,Or=it+Dt;return[v(ve)*E*(We*Sr+G(it*Sr*Sr-dr*(Dt*Dt-rr)))/dr,v(be)*E*(Ht*Or-We*G((it+1)*dr-Or*Or))/dr]}Uc.invert=function(ve,be){if(n(be)<p)return[ve,0];if(n(ve)<p)return[0,A*x(2*i(be/E))];var Re=(ve/=E)*ve,Be=(be/=E)*be,tt=Re+Be,We=tt*tt,it=-n(be)*(1+tt),Dt=it-2*Be+Re,Ht=-2*it+1+2*Be+We,rr=Be/Ht+(2*Dt*Dt*Dt/(Ht*Ht*Ht)-9*it*Dt/(Ht*Ht))/27,dr=(it-Dt*Dt/(3*Ht))/Ht,Sr=2*G(-dr/3),Or=V(3*rr/(dr*Sr))/3;return[E*(tt-1+G(1+2*(Re-Be)+We))/(2*ve),v(be)*E*(-Sr*o(Or+E/3)-Dt/(3*Ht))]};function xu(){return t.geoProjection(Uc).scale(79.4183)}function Ac(ve,be){if(n(be)<p)return[ve,0];var Re=n(be/A),Be=O(Re);if(n(ve)<p||n(n(be)-A)<p)return[0,v(be)*E*b(Be/2)];var tt=o(Be),We=n(E/ve-ve/E)/2,it=We*We,Dt=tt*(G(1+it)-We*tt)/(1+it*Re*Re);return[v(ve)*E*Dt,v(be)*E*G(1-Dt*(2*We+Dt))]}Ac.invert=function(ve,be){if(!ve)return[0,A*x(2*i(be/E))];var Re=n(ve/E),Be=(1-Re*Re-(be/=E)*be)/(2*Re),tt=Be*Be,We=G(tt+1);return[v(ve)*E*(We-Be),v(be)*A*x(2*a(G((1-2*Be*Re)*(Be+We)-Re),G(We+Be+Re)))]};function Ua(){return t.geoProjection(Ac).scale(79.4183)}function oo(ve,be){if(n(be)<p)return[ve,0];var Re=be/A,Be=O(Re);if(n(ve)<p||n(n(be)-A)<p)return[0,E*b(Be/2)];var tt=(E/ve-ve/E)/2,We=Re/(1+o(Be));return[E*(v(ve)*G(tt*tt+1-We*We)-tt),E*We]}oo.invert=function(ve,be){if(!be)return[ve,0];var Re=be/E,Be=(E*E*(1-Re*Re)-ve*ve)/(2*E*ve);return[ve?E*(v(ve)*G(Be*Be+1)-Be):0,A*x(2*i(Re))]};function Vc(){return t.geoProjection(oo).scale(79.4183)}function hc(ve,be){if(!be)return[ve,0];var Re=n(be);if(!ve||Re===A)return[0,be];var Be=Re/A,tt=Be*Be,We=(8*Be-tt*(tt+2)-5)/(2*tt*(Be-1)),it=We*We,Dt=Be*We,Ht=tt+it+2*Dt,rr=Be+3*We,dr=ve/A,Sr=dr+1/dr,Or=v(n(ve)-A)*G(Sr*Sr-4),jr=Or*Or,ii=Ht*(tt+it*jr-1)+(1-tt)*(tt*(rr*rr+4*it)+12*Dt*it+4*it*it),Li=(Or*(Ht+it-1)+2*G(ii))/(4*Ht+jr);return[v(ve)*A*Li,v(be)*A*G(1+Or*n(Li)-Li*Li)]}hc.invert=function(ve,be){var Re;if(!ve||!be)return[ve,be];be/=E;var Be=v(ve)*ve/A,tt=(Be*Be-1+4*be*be)/n(Be),We=tt*tt,it=2*be,Dt=50;do{var Ht=it*it,rr=(8*it-Ht*(Ht+2)-5)/(2*Ht*(it-1)),dr=(3*it-Ht*it-10)/(2*Ht*it),Sr=rr*rr,Or=it*rr,jr=it+rr,ii=jr*jr,Li=it+3*rr,un=ii*(Ht+Sr*We-1)+(1-Ht)*(Ht*(Li*Li+4*Sr)+Sr*(12*Or+4*Sr)),sn=-2*jr*(4*Or*Sr+(1-4*Ht+3*Ht*Ht)*(1+dr)+Sr*(-6+14*Ht-We+(-8+8*Ht-2*We)*dr)+Or*(-8+12*Ht+(-10+10*Ht-We)*dr)),In=G(un),Kn=tt*(ii+Sr-1)+2*In-Be*(4*ii+We),Aa=tt*(2*rr*dr+2*jr*(1+dr))+sn/In-8*jr*(tt*(-1+Sr+ii)+2*In)*(1+dr)/(We+4*ii);it-=Re=Kn/Aa}while(Re>p&&--Dt>0);return[v(ve)*(G(tt*tt+4)+tt)*E/4,A*it]};function Ku(){return t.geoProjection(hc).scale(127.16)}function ue(ve,be,Re,Be,tt){function We(it,Dt){var Ht=Re*x(Be*Dt),rr=G(1-Ht*Ht),dr=G(2/(1+rr*o(it*=tt)));return[ve*rr*dr*x(it),be*Ht*dr]}return We.invert=function(it,Dt){var Ht=it/ve,rr=Dt/be,dr=G(Ht*Ht+rr*rr),Sr=2*O(dr/2);return[a(it*b(Sr),ve*dr)/tt,dr&&O(Dt*x(Sr)/(be*Re*dr))/Be]},We}function w(ve,be,Re,Be){var tt=E/3;ve=c(ve,p),be=c(be,p),ve=f(ve,A),be=f(be,E-p),Re=c(Re,0),Re=f(Re,100-p),Be=c(Be,p);var We=Re/100+1,it=Be/100,Dt=V(We*o(tt))/tt,Ht=x(ve)/x(Dt*A),rr=be/E,dr=G(it*x(ve/2)/x(be/2)),Sr=dr/G(rr*Ht*Dt),Or=1/(dr*G(rr*Ht*Dt));return ue(Sr,Or,Ht,Dt,rr)}function B(){var ve=65*T,be=60*T,Re=20,Be=200,tt=t.geoProjectionMutator(w),We=tt(ve,be,Re,Be);return We.poleline=function(it){return arguments.length?tt(ve=+it*T,be,Re,Be):ve*P},We.parallels=function(it){return arguments.length?tt(ve,be=+it*T,Re,Be):be*P},We.inflation=function(it){return arguments.length?tt(ve,be,Re=+it,Be):Re},We.ratio=function(it){return arguments.length?tt(ve,be,Re,Be=+it):Be},We.scale(163.775)}function Q(){return B().poleline(65).parallels(60).inflation(0).ratio(200).scale(172.633)}var ee=4*E+3*G(3),le=2*G(2*E*G(3)/ee),qe=$t(le*G(3)/E,le,ee/6);function Xe(){return t.geoProjection(qe).scale(176.84)}function ot(ve,be){return[ve*G(1-3*be*be/(E*E)),be]}ot.invert=function(ve,be){return[ve/G(1-3*be*be/(E*E)),be]};function Tt(){return t.geoProjection(ot).scale(152.63)}function Kt(ve,be){var Re=o(be),Be=o(ve)*Re,tt=1-Be,We=o(ve=a(x(ve)*Re,-x(be))),it=x(ve);return Re=G(1-Be*Be),[it*Re-We*tt,-We*Re-it*tt]}Kt.invert=function(ve,be){var Re=(ve*ve+be*be)/-2,Be=G(-Re*(2+Re)),tt=be*Re+ve*Be,We=ve*Re-be*Be,it=G(We*We+tt*tt);return[a(Be*tt,it*(1+Re)),it?-O(Be*We/it):0]};function Jt(){return t.geoProjection(Kt).rotate([0,-90,45]).scale(124.75).clipAngle(180-.001)}function xr(ve,be){var Re=Me(ve,be);return[(Re[0]+ve/A)/2,(Re[1]+be)/2]}xr.invert=function(ve,be){var Re=ve,Be=be,tt=25;do{var We=o(Be),it=x(Be),Dt=x(2*Be),Ht=it*it,rr=We*We,dr=x(Re),Sr=o(Re/2),Or=x(Re/2),jr=Or*Or,ii=1-rr*Sr*Sr,Li=ii?V(We*Sr)*G(un=1/ii):un=0,un,sn=.5*(2*Li*We*Or+Re/A)-ve,In=.5*(Li*it+Be)-be,Kn=.5*un*(rr*jr+Li*We*Sr*Ht)+.5/A,Aa=un*(dr*Dt/4-Li*it*Or),fa=.125*un*(Dt*Or-Li*it*rr*dr),$a=.5*un*(Ht*Sr+Li*jr*We)+.5,ko=Aa*fa-$a*Kn,Qa=(In*Aa-sn*$a)/ko,mo=(sn*fa-In*Kn)/ko;Re-=Qa,Be-=mo}while((n(Qa)>p||n(mo)>p)&&--tt>0);return[Re,Be]};function Pr(){return t.geoProjection(xr).scale(158.837)}e.geoNaturalEarth=t.geoNaturalEarth1,e.geoNaturalEarthRaw=t.geoNaturalEarth1Raw,e.geoAiry=_e,e.geoAiryRaw=oe,e.geoAitoff=ke,e.geoAitoffRaw=Me,e.geoArmadillo=ie,e.geoArmadilloRaw=me,e.geoAugust=Le,e.geoAugustRaw=Se,e.geoBaker=ge,e.geoBakerRaw=Pe,e.geoBerghaus=ce,e.geoBerghausRaw=Fe,e.geoBertin1953=Gt,e.geoBertin1953Raw=lt,e.geoBoggs=er,e.geoBoggsRaw=Et,e.geoBonne=Yt,e.geoBonneRaw=yt,e.geoBottomley=Tr,e.geoBottomleyRaw=lr,e.geoBromley=ei,e.geoBromleyRaw=Rr,e.geoChamberlin=$e,e.geoChamberlinRaw=Ge,e.geoChamberlinAfrica=je,e.geoCollignon=Ie,e.geoCollignonRaw=wt,e.geoCraig=Ce,e.geoCraigRaw=xe,e.geoCraster=ir,e.geoCrasterRaw=nr,e.geoCylindricalEqualArea=oi,e.geoCylindricalEqualAreaRaw=pr,e.geoCylindricalStereographic=Jr,e.geoCylindricalStereographicRaw=di,e.geoEckert1=Hi,e.geoEckert1Raw=fi,e.geoEckert2=wn,e.geoEckert2Raw=Pn,e.geoEckert3=Vn,e.geoEckert3Raw=pn,e.geoEckert4=ea,e.geoEckert4Raw=kn,e.geoEckert5=Vt,e.geoEckert5Raw=ua,e.geoEckert6=tr,e.geoEckert6Raw=_t,e.geoEisenlohr=Zr,e.geoEisenlohrRaw=Er,e.geoFahey=zi,e.geoFaheyRaw=$r,e.geoFoucaut=en,e.geoFoucautRaw=Ji,e.geoFoucautSinusoidal=yn,e.geoFoucautSinusoidalRaw=cn,e.geoGilbert=la,e.geoGingery=Wo,e.geoGingeryRaw=ma,e.geoGinzburg4=Ga,e.geoGinzburg4Raw=Wn,e.geoGinzburg5=jn,e.geoGinzburg5Raw=vo,e.geoGinzburg6=Cr,e.geoGinzburg6Raw=St,e.geoGinzburg8=pi,e.geoGinzburg8Raw=Qr,e.geoGinzburg9=Sn,e.geoGinzburg9Raw=fn,e.geoGringorten=Jn,e.geoGringortenRaw=ki,e.geoGuyou=zs,e.geoGuyouRaw=Lo,e.geoHammer=pt,e.geoHammerRaw=Ze,e.geoHammerRetroazimuthal=Fl,e.geoHammerRetroazimuthalRaw=ul,e.geoHealpix=Zl,e.geoHealpixRaw=fl,e.geoHill=nc,e.geoHillRaw=Su,e.geoHomolosine=xo,e.geoHomolosineRaw=zl,e.geoHufnagel=Us,e.geoHufnagelRaw=Yl,e.geoHyperelliptical=Oo,e.geoHyperellipticalRaw=aa,e.geoInterrupt=Do,e.geoInterruptedBoggs=Uf,e.geoInterruptedHomolosine=Zc,e.geoInterruptedMollweide=qs,e.geoInterruptedMollweideHemispheres=oc,e.geoInterruptedSinuMollweide=sc,e.geoInterruptedSinusoidal=kf,e.geoKavrayskiy7=nf,e.geoKavrayskiy7Raw=fs,e.geoLagrange=Jl,e.geoLagrangeRaw=Vf,e.geoLarrivee=Fu,e.geoLarriveeRaw=lc,e.geoLaskowski=js,e.geoLaskowskiRaw=Cs,e.geoLittrow=gs,e.geoLittrowRaw=Go,e.geoLoximuthal=xl,e.geoLoximuthalRaw=uc,e.geoMiller=Bs,e.geoMillerRaw=Gu,e.geoModifiedStereographic=ql,e.geoModifiedStereographicRaw=ad,e.geoModifiedStereographicAlaska=Hu,e.geoModifiedStereographicGs48=bl,e.geoModifiedStereographicGs50=Gf,e.geoModifiedStereographicMiller=Ic,e.geoModifiedStereographicLee=mf,e.geoMollweide=wr,e.geoMollweideRaw=sr,e.geoMtFlatPolarParabolic=Yc,e.geoMtFlatPolarParabolicRaw=yf,e.geoMtFlatPolarQuartic=th,e.geoMtFlatPolarQuarticRaw=eh,e.geoMtFlatPolarSinusoidal=Hf,e.geoMtFlatPolarSinusoidalRaw=ju,e.geoNaturalEarth2=of,e.geoNaturalEarth2Raw=cc,e.geoNellHammer=Kc,e.geoNellHammerRaw=Bl,e.geoInterruptedQuarticAuthalic=ms,e.geoNicolosi=Uh,e.geoNicolosiRaw=jf,e.geoPatterson=du,e.geoPattersonRaw=bc,e.geoPolyconic=al,e.geoPolyconicRaw=_u,e.geoPolyhedral=_f,e.geoPolyhedralButterfly=Ls,e.geoPolyhedralCollignon=Wf,e.geoPolyhedralWaterman=Vs,e.geoProject=Wl,e.geoGringortenQuincuncial=At,e.geoPeirceQuincuncial=Xt,e.geoPierceQuincuncial=Xt,e.geoQuantize=kr,e.geoQuincuncial=Bc,e.geoRectangularPolyconic=Kr,e.geoRectangularPolyconicRaw=Ar,e.geoRobinson=hn,e.geoRobinsonRaw=Wi,e.geoSatellite=Zi,e.geoSatelliteRaw=Bn,e.geoSinuMollweide=Vu,e.geoSinuMollweideRaw=_a,e.geoSinusoidal=bt,e.geoSinusoidalRaw=Ft,e.geoStitch=Ps,e.geoTimes=no,e.geoTimesRaw=va,e.geoTwoPointAzimuthal=ku,e.geoTwoPointAzimuthalRaw=is,e.geoTwoPointAzimuthalUsa=$l,e.geoTwoPointEquidistant=gu,e.geoTwoPointEquidistantRaw=Yu,e.geoTwoPointEquidistantUsa=Nc,e.geoVanDerGrinten=xu,e.geoVanDerGrintenRaw=Uc,e.geoVanDerGrinten2=Ua,e.geoVanDerGrinten2Raw=Ac,e.geoVanDerGrinten3=Vc,e.geoVanDerGrinten3Raw=oo,e.geoVanDerGrinten4=Ku,e.geoVanDerGrinten4Raw=hc,e.geoWagner=B,e.geoWagner7=Q,e.geoWagnerRaw=w,e.geoWagner4=Xe,e.geoWagner4Raw=qe,e.geoWagner6=Tt,e.geoWagner6Raw=ot,e.geoWiechel=Jt,e.geoWiechelRaw=Kt,e.geoWinkel3=Pr,e.geoWinkel3Raw=xr,Object.defineProperty(e,"__esModule",{value:!0})})});var bDe=ye((_gr,xDe)=>{"use strict";var id=Oa(),PZ=Dr(),YFt=qa(),ZA=Math.PI/180,H2=180/Math.PI,RZ={cursor:"pointer"},DZ={cursor:"auto"};function KFt(e,t){var r=e.projection,n;return t._isScoped?n=JFt:t._isClipped?n=QFt:n=$Ft,n(e,r)}xDe.exports=KFt;function FZ(e,t){return id.behavior.zoom().translate(t.translate()).scale(t.scale())}function zZ(e,t,r){var n=e.id,i=e.graphDiv,a=i.layout,o=a[n],s=i._fullLayout,l=s[n],u={},c={};function f(h,d){u[n+"."+h]=PZ.nestedProperty(o,h).get(),YFt.call("_storeDirectGUIEdit",a,s._preGUI,u);var v=PZ.nestedProperty(l,h);v.get()!==d&&(v.set(d),PZ.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 JFt(e,t){var r=FZ(e,t);function n(){id.select(this).style(RZ)}function i(){t.scale(id.event.scale).translate(id.event.translate),e.render(!0);var s=t.invert(e.midPt);e.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":t.scale()/e.fitScale,"geo.center.lon":s[0],"geo.center.lat":s[1]})}function a(s){var l=t.invert(e.midPt);s("center.lon",l[0]),s("center.lat",l[1])}function o(){id.select(this).style(DZ),zZ(e,t,a)}return r.on("zoomstart",n).on("zoom",i).on("zoomend",o),r}function $Ft(e,t){var r=FZ(e,t),n=2,i,a,o,s,l,u,c,f,h;function d(E){return t.invert(E)}function v(E){var A=d(E);if(!A)return!0;var L=t(A);return Math.abs(L[0]-E[0])>n||Math.abs(L[1]-E[1])>n}function x(){id.select(this).style(RZ),i=id.mouse(this),a=t.rotate(),o=t.translate(),s=a,l=d(i)}function b(){if(u=id.mouse(this),v(i)){r.scale(t.scale()),r.translate(t.translate());return}t.scale(id.event.scale),t.translate([o[0],id.event.translate[1]]),l?d(u)&&(f=d(u),c=[s[0]+(f[0]-l[0]),a[1],a[2]],t.rotate(c),s=c):(i=u,l=d(i)),h=!0,e.render(!0);var E=t.rotate(),A=t.invert(e.midPt);e.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":t.scale()/e.fitScale,"geo.center.lon":A[0],"geo.center.lat":A[1],"geo.projection.rotation.lon":-E[0]})}function p(){id.select(this).style(DZ),h&&zZ(e,t,C)}function C(E){var A=t.rotate(),L=t.invert(e.midPt);E("projection.rotation.lon",-A[0]),E("center.lon",L[0]),E("center.lat",L[1])}return r.on("zoomstart",x).on("zoom",b).on("zoomend",p),r}function QFt(e,t){var r={r:t.rotate(),k:t.scale()},n=FZ(e,t),i=szt(n,"zoomstart","zoom","zoomend"),a=0,o=n.on,s;n.on("zoomstart",function(){id.select(this).style(RZ);var h=id.mouse(this),d=t.rotate(),v=d,x=t.translate(),b=ezt(d);s=EF(t,h),o.call(n,"zoom",function(){var p=id.mouse(this);if(t.scale(r.k=id.event.scale),!s)h=p,s=EF(t,h);else if(EF(t,p)){t.rotate(d).translate(x);var C=EF(t,p),E=rzt(s,C),A=nzt(tzt(b,E)),L=r.r=izt(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(){id.select(this).style(DZ),o.call(n,"zoom",null),c(i.of(this,arguments)),zZ(e,t,f)}).on("zoom.redraw",function(){e.render(!0);var h=t.rotate();e.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":t.scale()/e.fitScale,"geo.projection.rotation.lon":-h[0],"geo.projection.rotation.lat":-h[1]})});function l(h){a++||h({type:"zoomstart"})}function u(h){h({type:"zoom"})}function c(h){--a||h({type:"zoomend"})}function f(h){var d=t.rotate();h("projection.rotation.lon",-d[0]),h("projection.rotation.lat",-d[1])}return id.rebind(n,i,"on")}function EF(e,t){var r=e.invert(t);return r&&isFinite(r[0])&&isFinite(r[1])&&azt(r)}function ezt(e){var t=.5*e[0]*ZA,r=.5*e[1]*ZA,n=.5*e[2]*ZA,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 tzt(e,t){var r=e[0],n=e[1],i=e[2],a=e[3],o=t[0],s=t[1],l=t[2],u=t[3];return[r*o-n*s-i*l-a*u,r*s+n*o+i*u-a*l,r*l-n*u+i*o+a*s,r*u+n*l-i*s+a*o]}function rzt(e,t){if(!(!e||!t)){var r=ozt(e,t),n=Math.sqrt(_De(r,r)),i=.5*Math.acos(Math.max(-1,Math.min(1,_De(e,t)))),a=Math.sin(i)/n;return n&&[Math.cos(i),r[2]*a,-r[1]*a,r[0]*a]}}function izt(e,t,r){var n=IZ(t,2,e[0]);n=IZ(n,1,e[1]),n=IZ(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)*H2,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)*H2-c,h=Math.sqrt(f*f-l*l));var v=180-d-2*c,x=(Math.atan2(u,s)-Math.atan2(o,h))*H2,b=(Math.atan2(u,s)-Math.atan2(o,-h))*H2,p=mDe(r[0],r[1],d,x),C=mDe(r[0],r[1],v,b);return p<=C?[d,x,r[2]]:[v,b,r[2]]}function mDe(e,t,r,n){var i=yDe(r-e),a=yDe(n-t);return Math.sqrt(i*i+a*a)}function yDe(e){return(e%360+540)%360-180}function IZ(e,t,r){var n=r*ZA,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 nzt(e){return[Math.atan2(2*(e[0]*e[1]+e[2]*e[3]),1-2*(e[1]*e[1]+e[2]*e[2]))*H2,Math.asin(Math.max(-1,Math.min(1,2*(e[0]*e[2]-e[3]*e[1]))))*H2,Math.atan2(2*(e[0]*e[3]+e[1]*e[2]),1-2*(e[2]*e[2]+e[3]*e[3]))*H2]}function azt(e){var t=e[0]*ZA,r=e[1]*ZA,n=Math.cos(r);return[n*Math.cos(t),n*Math.sin(t),Math.sin(r)]}function _De(e,t){for(var r=0,n=0,i=e.length;n<i;++n)r+=e[n]*t[n];return r}function ozt(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 szt(e){for(var t=0,r=arguments.length,n=[];++t<r;)n.push(arguments[t]);var i=id.dispatch.apply(null,n);return i.of=function(a,o){return function(s){var l;try{l=s.sourceEvent=id.event,s.target=e,id.event=s,i[s.type].apply(a,o)}finally{id.event=l}}},i}});var CDe=ye((xgr,EDe)=>{"use strict";var t1=Oa(),BZ=LZ(),lzt=BZ.geoPath,uzt=BZ.geoDistance,czt=gDe(),fzt=qa(),oC=Dr(),hzt=oC.strTranslate,CF=Ca(),aC=So(),wDe=vf(),dzt=Mc(),qZ=ho(),TDe=wg().getAutoRange,OZ=gv(),vzt=zf().prepSelect,pzt=zf().clearOutline,gzt=zf().selectOnClick,mzt=bDe(),cp=eC(),yzt=nx(),SDe=dF(),_zt=pZ().feature;function MDe(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=MDe.prototype;EDe.exports=function(t){return new MDe(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 cp.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=SDe.getTopojsonName(a);(i.topojson===null||x!==i.topojsonName)&&(i.topojsonName=x,PlotlyGeoAssets.topojson[i.topojsonName]===void 0&&o.push(i.fetchTopojson()))}o=o.concat(yzt.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=SDe.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),dzt.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=xzt(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=TDe(r,u),c.range=TDe(r,c);var p=(u.range[0]+u.range[1])/2,C=(c.range[0]+c.range[1])/2;if(n._isScoped)d={lon:p,lat:C};else if(n._isClipped){d={lon:p,lat:C},v={lon:p,lat:C,roll:v.roll};var E=o.type,A=cp.lonaxisSpan[E]/2||180,L=cp.lataxisSpan[E]/2||90;x=[p-A,p+A],b=[C-L,C+L]}else d={lon:p,lat:C},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 _=ADe(x,b);f.fitExtent(h,_);var k=this.bounds=f.getBounds(_),M=this.fitScale=f.scale(),g=f.translate();if(n.fitbounds){var P=f.getBounds(ADe(u.range,c.range)),T=Math.min((k[1][0]-k[0][0])/(P[1][0]-P[0][0]),(k[1][1]-k[0][1])/(P[1][1]-P[0][1]));isFinite(T)?f.scale(T*M):oC.warn("Something went wrong during"+this.id+"fitbounds computations.")}else f.scale(o.scale*M);var z=this.midPt=[(k[0][0]+k[1][0])/2,(k[0][1]+k[1][1])/2];if(f.translate([g[0]+(z[0]-g[0]),g[1]+(z[1]-g[1])]).clipExtent(k),n._isAlbersUsa){var O=f([d.lon,d.lat]),V=f.translate();f.translate([V[0]-(O[0]-V[0]),V[1]-(O[1]-V[1])])}};$g.updateBaseLayers=function(e,t){var r=this,n=r.topojson,i=r.layers,a=r.basePaths;function o(h){return h==="lonaxis"||h==="lataxis"}function s(h){return!!cp.lineLayers[h]}function l(h){return!!cp.fillLayers[h]}var u=this.hasChoropleth?cp.layersForChoropleth:cp.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=cp.layerNameToAdjective[h];h==="frame"?d.datum(cp.sphereSVG):s(h)||l(h)?d.datum(_zt(n,n.objects[h])):o(h)&&d.datum(bzt(h,t,e)).call(CF.stroke,t[h].gridcolor).call(aC.dashLine,t[h].griddash,t[h].gridwidth),s(h)?d.call(CF.stroke,t[v+"color"]).call(aC.dashLine,"",t[v+"width"]):l(h)&&d.call(CF.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;aC.setRect(this.clipRect,i,a,o,s),this.bgRect.call(aC.setRect,i,a,o,s).call(CF.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];fzt.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&&pzt(n)}};a==="pan"?(i.node().onmousedown=null,i.call(mzt(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){vzt(f,h,d,c,a)},OZ.init(c)),i.on("mousemove",function(){var f=r.projection.invert(oC.getPositionFromD3Event());if(!f)return OZ.unhover(n,t1.event);r.xaxis.p2c=function(){return f[0]},r.yaxis.p2c=function(){return f[1]},wDe.hover(n,t1.event,r.id)}),i.on("mouseout",function(){n._dragging||OZ.unhover(n,t1.event)}),i.on("click",function(){a!=="select"&&a!=="lasso"&&(o.indexOf("select")>-1&&gzt(t1.event,n,[r.xaxis],[r.yaxis],r.id,c),o.indexOf("event")>-1&&wDe.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(aC.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"},qZ.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},oC.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?hzt(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 xzt(e){var t=e.projection,r=t.type,n=cp.projNames[r];n="geo"+oC.titleCase(n);for(var i=BZ[n]||czt[n],a=i(),o=e._isSatellite?Math.acos(1/t.distance)*180/Math.PI:e._isClipped?cp.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=uzt(f,[-h[0],-h[1]]),v=o*Math.PI/180;return d>v}else return!1},a.getPath=function(){return lzt().projection(a)},a.getBounds=function(f){return a.getPath().bounds(f)},a.precision(cp.precision),e._isSatellite&&a.tilt(t.tilt).distance(t.distance),o&&a.clipAngle(o-cp.clipPad),a}function bzt(e,t,r){var n=1e-6,i=2.5,a=t[e],o=cp.scopeDefaults[t.scope],s,l,u;e==="lonaxis"?(s=o.lonaxisRange,l=o.lataxisRange,u=function(C,E){return[C,E]}):e==="lataxis"&&(s=o.lataxisRange,l=o.lonaxisRange,u=function(C,E){return[E,C]});var c={type:"linear",range:[s[0],s[1]-n],tick0:a.tick0,dtick:a.dtick};qZ.setConvert(c,r);var f=qZ.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 ADe(e,t){var r=cp.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 NZ=ye((bgr,PDe)=>{"use strict";var KA=Eh(),wzt=kc().attributes,Tzt=Pd().dash,YA=eC(),Azt=mc().overrideAll,kDe=Y1(),LDe={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:KA.lightLine},gridwidth:{valType:"number",min:0,dflt:1},griddash:Tzt},Szt=PDe.exports=Azt({domain:wzt({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:kDe(YA.scopeDefaults),dflt:"world"},projection:{type:{valType:"enumerated",values:kDe(YA.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:KA.defaultLine},coastlinewidth:{valType:"number",min:0,dflt:1},showland:{valType:"boolean",dflt:!1},landcolor:{valType:"color",dflt:YA.landColor},showocean:{valType:"boolean",dflt:!1},oceancolor:{valType:"color",dflt:YA.waterColor},showlakes:{valType:"boolean",dflt:!1},lakecolor:{valType:"color",dflt:YA.waterColor},showrivers:{valType:"boolean",dflt:!1},rivercolor:{valType:"color",dflt:YA.waterColor},riverwidth:{valType:"number",min:0,dflt:1},showcountries:{valType:"boolean"},countrycolor:{valType:"color",dflt:KA.defaultLine},countrywidth:{valType:"number",min:0,dflt:1},showsubunits:{valType:"boolean"},subunitcolor:{valType:"color",dflt:KA.defaultLine},subunitwidth:{valType:"number",min:0,dflt:1},showframe:{valType:"boolean"},framecolor:{valType:"color",dflt:KA.defaultLine},framewidth:{valType:"number",min:0,dflt:1},bgcolor:{valType:"color",dflt:KA.background},lonaxis:LDe,lataxis:LDe},"plot","from-root");Szt.uirevision={valType:"any",editType:"none"}});var DDe=ye((wgr,RDe)=>{"use strict";var kF=Dr(),Mzt=k_(),Ezt=Id().getSubplotData,LF=eC(),Czt=NZ(),IDe=LF.axesNames;RDe.exports=function(t,r,n){Mzt(t,r,n,{type:"geo",attributes:Czt,handleDefaults:kzt,fullData:n,partition:"y"})};function kzt(e,t,r,n){var i=Ezt(n.fullData,"geo",n.id),a=i.map(function(oe){return oe.index}),o=r("resolution"),s=r("scope"),l=LF.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=!!LF.lonaxisSpan[u];if(e.visible===!1){var x=kF.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,C=0;C<IDe.length;C++){var E=IDe[C],A=[30,10][C],L;if(f)L=l[E+"Range"];else{var _=LF[E+"Span"],k=(_[u]||_["*"])/2,M=r("projection.rotation."+E.substr(0,3),l.projRotate[C]);L=[M-k,M+k]}var g=r(E+".range",L);r(E+".tick0"),r(E+".dtick",A),p=r(E+".showgrid",b?void 0:!1),p&&(r(E+".gridcolor"),r(E+".gridwidth"),r(E+".griddash")),t[E]._ax={type:"linear",_id:E.slice(0,3),_traceIndices:a,setScale:kF.identity,c2l:kF.identity,r2l:kF.identity,autorange:!0,range:g.slice(),_m:1,_input:{}}}var P=t.lonaxis.range,T=t.lataxis.range,z=P[0],O=P[1];z>0&&O<0&&(O+=360);var V=(z+O)/2,G;if(!c){var Z=f?l.projRotate:[V,0,0];G=r("projection.rotation.lon",Z[0]),r("projection.rotation.lat",Z[1]),r("projection.rotation.roll",Z[2]),p=r("showcoastlines",!f&&b),p&&(r("coastlinecolor"),r("coastlinewidth")),p=r("showocean",b?void 0:!1),p&&r("oceancolor")}var H,N;if(c?(H=-96.6,N=38.7):(H=f?V:G,N=(T[0]+T[1])/2),r("center.lon",H),r("center.lat",N),h&&(r("projection.tilt"),r("projection.distance")),d){var j=l.projParallels||[0,60];r("projection.parallels",j)}r("projection.scale"),p=r("showland",b?void 0:!1),p&&r("landcolor"),p=r("showlakes",b?void 0:!1),p&&r("lakecolor"),p=r("showrivers",b?void 0:!1),p&&(r("rivercolor"),r("riverwidth")),p=r("showcountries",f&&s!=="usa"&&b),p&&(r("countrycolor"),r("countrywidth")),(s==="usa"||s==="north america"&&o===50)&&(r("showsubunits",b),r("subunitcolor"),r("subunitwidth")),f||(p=r("showframe",b),p&&(r("framecolor"),r("framewidth"))),r("bgcolor");var re=r("fitbounds");re&&(delete t.projection.scale,f?(delete t.center.lon,delete t.center.lat):v?(delete t.center.lon,delete t.center.lat,delete t.projection.rotation.lon,delete t.projection.rotation.lat,delete t.lonaxis.range,delete t.lataxis.range):(delete t.center.lon,delete t.center.lat,delete t.projection.rotation.lon))}});var UZ=ye((Tgr,ODe)=>{"use strict";var Lzt=Id().getSubplotCalcData,Pzt=Dr().counterRegex,Izt=CDe(),Wm="geo",FDe=Pzt(Wm),zDe={};zDe[Wm]={valType:"subplotid",dflt:Wm,editType:"calc"};function Rzt(e){for(var t=e._fullLayout,r=e.calcdata,n=t._subplots[Wm],i=0;i<n.length;i++){var a=n[i],o=Lzt(r,Wm,a),s=t[a],l=s._subplot;l||(l=Izt({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 Dzt(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 Fzt(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)}}ODe.exports={attr:Wm,name:Wm,idRoot:Wm,idRegex:FDe,attrRegex:FDe,attributes:zDe,layoutAttributes:NZ(),supplyLayoutDefaults:DDe(),plot:Rzt,updateFx:Fzt,clean:Dzt}});var BDe=ye((Agr,qDe)=>{"use strict";qDe.exports={attributes:G2(),supplyDefaults:yRe(),colorbar:$d(),formatLabels:bRe(),calc:fF(),calcGeoJSON:kZ().calcGeoJSON,plot:kZ().plot,style:SZ(),styleOnSelect:ap().styleOnSelect,hoverPoints:sDe(),eventData:uDe(),selectPoints:hDe(),moduleType:"trace",name:"scattergeo",basePlotModule:UZ(),categories:["geo","symbols","showLegend","scatter-like"],meta:{}}});var UDe=ye((Sgr,NDe)=>{"use strict";NDe.exports=BDe()});var JA=ye((Mgr,HDe)=>{"use strict";var zzt=Qo().hovertemplateAttrs,ox=G2(),Ozt=Tu(),VDe=Vl(),qzt=Eh().defaultLine,ax=Ao().extendFlat,GDe=ox.marker.line;HDe.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({},GDe.color,{dflt:qzt}),width:ax({},GDe.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({},VDe.hoverinfo,{editType:"calc",flags:["location","z","text","name"]}),hovertemplate:zzt(),showlegend:ax({},VDe.showlegend,{dflt:!1})},Ozt("",{cLetter:"z",editTypeOverride:"calc"}))});var WDe=ye((Egr,jDe)=>{"use strict";var PF=Dr(),Bzt=Jh(),Nzt=JA();jDe.exports=function(t,r,n,i){function a(h,d){return PF.coerce(t,r,Nzt,h,d)}var o=a("locations"),s=a("z");if(!(o&&o.length&&PF.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!==""||PF.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"),Bzt(t,r,i,a,{prefix:"",cLetter:"z"}),PF.coerceSelectionMarkerOpacity(r,a)}});var IF=ye((Cgr,YDe)=>{"use strict";var XDe=Eo(),Uzt=hs().BADNUM,Vzt=Fv(),Gzt=Cm(),Hzt=z0();function ZDe(e){return e&&typeof e=="string"}YDe.exports=function(t,r){var n=r._length,i=new Array(n),a;r.geojson?a=function(c){return ZDe(c)||XDe(c)}:a=ZDe;for(var o=0;o<n;o++){var s=i[o]={},l=r.locations[o],u=r.z[o];a(l)&&XDe(u)?(s.loc=l,s.z=u):(s.loc=null,s.z=Uzt),s.index=o}return Gzt(i,r),Vzt(t,r,{vals:r.z,containerStr:"",cLetter:"z"}),Hzt(i,r),i}});var RF=ye((kgr,JDe)=>{"use strict";var jzt=Oa(),Wzt=Ca(),VZ=So(),Xzt=tc();function Zzt(e,t){t&&KDe(e,t)}function KDe(e,t){var r=t[0].trace,n=t[0].node3,i=n.selectAll(".choroplethlocation"),a=r.marker||{},o=a.line||{},s=Xzt.makeColorScaleFuncFromTrace(r);i.each(function(l){jzt.select(this).attr("fill",s(l.z)).call(Wzt.stroke,l.mlc||o.color).call(VZ.dashLine,"",l.mlw||o.width||0).style("opacity",a.opacity)}),VZ.selectedPointStyle(i,r)}function Yzt(e,t){var r=t[0].node3,n=t[0].trace;n.selectedpoints?VZ.selectedPointStyle(r.selectAll(".choroplethlocation"),n):KDe(e,t)}JDe.exports={style:Zzt,styleOnSelect:Yzt}});var HZ=ye((Lgr,eFe)=>{"use strict";var Kzt=Oa(),GZ=Dr(),$A=nx(),Jzt=dF().getTopojsonFeatures,$De=wg().findExtremes,$zt=RF().style,Qzt=["The library used by the *country names* `locationmode` option is changing in an upcoming version.","Country names in existing plots may not work in the new version."].join(" "),QDe=!0;function e7t(e,t,r){QDe&&(QDe=!1,GZ.warn(Qzt));var n=t.layers.backplot.select(".choroplethlayer");GZ.makeTraceGroups(n,r,"trace choropleth").each(function(i){var a=Kzt.select(this),o=a.selectAll("path.choroplethlocation").data(GZ.identity);o.enter().append("path").classed("choroplethlocation",!0),o.exit().remove(),$zt(e,i)})}function t7t(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"?$A.extractTraceFeature(e):Jzt(r,i.topojson),l=[],u=[],c=0;c<o;c++){var f=e[c],h=a==="geojson-id"?f.fOut:$A.locationToFeature(a,f.loc,s);if(h){f.geojson=h,f.ct=h.properties.ct,f._polygons=$A.feature2polygons(h);var d=$A.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=$A.computeBbox($A.getTraceGeojson(r));l=[v[0],v[2]],u=[v[1],v[3]]}var x={padded:!0};r._extremes.lon=$De(n.lonaxis._ax,l,x),r._extremes.lat=$De(n.lataxis._ax,u,x)}eFe.exports={calcGeoJSON:t7t,plot:e7t}});var DF=ye((Pgr,tFe)=>{"use strict";var r7t=ho(),i7t=JA(),n7t=Dr().fillText;tFe.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=r7t.tickText(o.mockAxis,o.mockAxis.c2l(s.z),"hover").text,t.hovertemplate=s.hovertemplate,a7t(t,a,s),[t]};function a7t(e,t,r){if(!t.hovertemplate){var n=r.hi||t.hoverinfo,i=String(r.loc),a=n==="all"?i7t.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&&n7t(r,t,f),e.extraText=f.join("<br>")}}});var FF=ye((Igr,rFe)=>{"use strict";rFe.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 zF=ye((Rgr,iFe)=>{"use strict";iFe.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 aFe=ye((Dgr,nFe)=>{"use strict";nFe.exports={attributes:JA(),supplyDefaults:WDe(),colorbar:M_(),calc:IF(),calcGeoJSON:HZ().calcGeoJSON,plot:HZ().plot,style:RF().style,styleOnSelect:RF().styleOnSelect,hoverPoints:DF(),eventData:FF(),selectPoints:zF(),moduleType:"trace",name:"choropleth",basePlotModule:UZ(),categories:["geo","noOpacity","showLegend"],meta:{}}});var sFe=ye((Fgr,oFe)=>{"use strict";oFe.exports=aFe()});var OF=ye((zgr,uFe)=>{"use strict";var o7t=qa(),s0=Dr(),s7t=oT();function l7t(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),C=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,C),Math.max(x,b),Math.max(p,C))}else v=a.ids;var E,A,L,_,k,M,g,P,T,z=d;if(n==="x"){var O=!!o.xperiodalignment,V=!!o.yperiodalignment;for(k=0;k<v.length;k++){if(E=v[k],L=u[E],M=Math.abs(s.c2p(L)-f),O){var G=s.c2p(o._xStarts[E]),Z=s.c2p(o._xEnds[E]);M=f>=Math.min(G,Z)&&f<=Math.max(G,Z)?0:1/0}if(M<z){if(z=M,_=c[E],g=l.c2p(_)-h,V){var H=l.c2p(o._yStarts[E]),N=l.c2p(o._yEnds[E]);g=h>=Math.min(H,N)&&h<=Math.max(H,N)?0:1/0}T=Math.sqrt(M*M+g*g),A=v[k]}}}else for(k=v.length-1;k>-1;k--)E=v[k],L=u[E],_=c[E],M=s.c2p(L)-f,g=l.c2p(_)-h,P=Math.sqrt(M*M+g*g),P<z&&(z=T=P,A=E);return e.index=A,e.distance=z,e.dxy=T,A===void 0?[e]:[lFe(e,u,c,o)]}function lFe(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 C=n.hoverinfo;C&&(u.hi=Array.isArray(C)?C[l]:C);var E=n.hovertemplate;E&&(u.ht=Array.isArray(E)?E[l]:E);var A={};A[e.index]=u;var L=n._origX,_=n._origY,k=s0.extendFlat({},e,{color:s7t(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?k.text=u.htx:u.tx?k.text=u.tx:n.text&&(k.text=n.text),s0.fillText(u,n,k),o7t.getComponentMethod("errorbars","hoverInfo")(u,n,k),k}uFe.exports={hoverPoints:l7t,calcHover:lFe}});var sx=ye((Ogr,fFe)=>{"use strict";var cFe=20;fFe.exports={TOO_MANY_POINTS:1e5,SYMBOL_SDF_SIZE:200,SYMBOL_SIZE:cFe,SYMBOL_STROKE:cFe/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 sC=ye((qgr,pFe)=>{"use strict";var u7t=Vl(),c7t=ec(),f7t=Eg(),qf=pf(),hFe=df().axisHoverFormat,dFe=Tu(),h7t=Y1(),jZ=Ao().extendFlat,d7t=mc().overrideAll,v7t=sx().DASHES,vFe=qf.line,r1=qf.marker,p7t=r1.line,QA=pFe.exports=d7t({x:qf.x,x0:qf.x0,dx:qf.dx,y:qf.y,y0:qf.y0,dy:qf.dy,xperiod:qf.xperiod,yperiod:qf.yperiod,xperiod0:qf.xperiod0,yperiod0:qf.yperiod0,xperiodalignment:qf.xperiodalignment,yperiodalignment:qf.yperiodalignment,xhoverformat:hFe("x"),yhoverformat:hFe("y"),text:qf.text,hovertext:qf.hovertext,textposition:qf.textposition,textfont:c7t({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:vFe.color,width:vFe.width,shape:{valType:"enumerated",values:["linear","hv","vh","hvh","vhv"],dflt:"linear",editType:"plot"},dash:{valType:"enumerated",values:h7t(v7t),dflt:"solid"}},marker:jZ({},dFe("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:jZ({},dFe("marker.line"),{width:p7t.width})}),connectgaps:qf.connectgaps,fill:jZ({},qf.fill,{dflt:"none"}),fillcolor:f7t(),selected:{marker:qf.selected.marker,textfont:qf.selected.textfont},unselected:{marker:qf.unselected.marker,textfont:qf.unselected.textfont},opacity:u7t.opacity},"calc","nested");QA.x.editType=QA.y.editType=QA.x0.editType=QA.y0.editType="calc+clearAxisTypes";QA.hovertemplate=qf.hovertemplate;QA.texttemplate=qf.texttemplate});var qF=ye(WZ=>{"use strict";var gFe=sx();WZ.isOpenSymbol=function(e){return typeof e=="string"?gFe.OPEN_RE.test(e):e%200>100};WZ.isDotSymbol=function(e){return typeof e=="string"?gFe.DOT_RE.test(e):e>200}});var _Fe=ye((Ngr,yFe)=>{"use strict";var mFe=Dr(),g7t=qa(),m7t=qF(),y7t=sC(),_7t=Sm(),BF=Ru(),x7t=K3(),b7t=Pg(),w7t=$p(),T7t=R0(),A7t=Ig(),S7t=D0();yFe.exports=function(t,r,n,i){function a(d,v){return mFe.coerce(t,r,y7t,d,v)}var o=t.marker?m7t.isOpenSymbol(t.marker.symbol):!1,s=BF.isBubble(t),l=x7t(t,r,i,a);if(!l){r.visible=!1;return}b7t(t,r,i,a),a("xhoverformat"),a("yhoverformat");var u=l<_7t.PTS_LINESONLY?"lines+markers":"lines";a("text"),a("hovertext"),a("hovertemplate"),a("mode",u),BF.hasMarkers(r)&&(w7t(t,r,n,i,a,{noAngleRef:!0,noStandOff:!0}),a("marker.line.width",o||s?1:0)),BF.hasLines(r)&&(a("connectgaps"),T7t(t,r,n,i,a),a("line.shape")),BF.hasText(r)&&(a("texttemplate"),S7t(t,r,i,a,{noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0}));var c=(r.line||{}).color,f=(r.marker||{}).color;a("fill"),r.fill!=="none"&&A7t(t,r,n,a);var h=g7t.getComponentMethod("errorbars","supplyDefaults");h(t,r,c||f||n,{axis:"y"}),h(t,r,c||f||n,{axis:"x",inherit:"y"}),mFe.coerceSelectionMarkerOpacity(r,a)}});var bFe=ye((Ugr,xFe)=>{"use strict";var M7t=tI();xFe.exports=function(t,r,n){var i=t.i;return"x"in t||(t.x=r._x[i]),"y"in t||(t.y=r._y[i]),M7t(t,r,n)}});var TFe=ye((Vgr,wFe)=>{"use strict";function E7t(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 C7t(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 k7t(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 L7t(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 P7t(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 lC(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)}wFe.exports={ge:function(e,t,r,n,i){return lC(e,t,r,n,i,E7t)},gt:function(e,t,r,n,i){return lC(e,t,r,n,i,C7t)},lt:function(e,t,r,n,i){return lC(e,t,r,n,i,k7t)},le:function(e,t,r,n,i){return lC(e,t,r,n,i,L7t)},eq:function(e,t,r,n,i){return lC(e,t,r,n,i,P7t)}}});var Xm=ye((Ggr,SFe)=>{"use strict";SFe.exports=function(t,r,n){var i={},a,o;if(typeof r=="string"&&(r=AFe(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]=AFe(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 XZ={};function AFe(e){return XZ[e]?XZ[e]:(typeof e=="string"&&(e=XZ[e]=e.split(/\s*,\s*|\s+/)),e)}});var e5=ye((Hgr,MFe)=>{"use strict";var I7t=Xm();MFe.exports=R7t;function R7t(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=I7t(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((jgr,EFe)=>{"use strict";EFe.exports=D7t;function D7t(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 kFe=ye((Wgr,CFe)=>{CFe.exports=function(){for(var e=0;e<arguments.length;e++)if(arguments[e]!==void 0)return arguments[e]}});var W2=ye((Xgr,PFe)=>{var LFe=WD();PFe.exports=F7t;function F7t(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(LFe(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=LFe(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 RFe=ye((Zgr,IFe)=>{"use strict";IFe.exports=function(e){var t=typeof e;return e!==null&&(t==="object"||t==="function")}});var FFe=ye((Ygr,DFe)=>{"use strict";DFe.exports=Math.log2||function(e){return Math.log(e)*Math.LOG2E}});var VFe=ye((Kgr,UFe)=>{"use strict";var zFe=TFe(),OFe=XE(),z7t=e5(),O7t=j2(),qFe=Xm(),ZZ=kFe(),q7t=W2(),B7t=RFe(),N7t=WD(),BFe=FFe(),U7t=1073741824;UFe.exports=function(t,r){r||(r={}),t=q7t(t,"float64"),r=qFe(r,{bounds:"range bounds dataBox databox",maxDepth:"depth maxDepth maxdepth level maxLevel maxlevel levels",dtype:"type dtype format out dst output destination"});let n=ZZ(r.maxDepth,255),i=ZZ(r.bounds,O7t(t,2));i[0]===i[2]&&i[2]++,i[1]===i[3]&&i[3]++;let a=NFe(t,i),o=t.length>>>1,s;r.dtype||(r.dtype="array"),typeof r.dtype=="string"?s=new(N7t(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 C=l[p];if(s.set)s.set(C,h);else for(let A=0,L=C.length;A<L;A++)s[A+h]=C[A];let E=h+l[p].length;f[p]=[h,E],h=E}return s.range=v,s;function d(p,C,E,A,L,_){if(!A.length)return null;let k=l[L]||(l[L]=[]),M=c[L]||(c[L]=[]),g=u[L]||(u[L]=[]),P=k.length;if(L++,L>n||_>U7t){for(let N=0;N<A.length;N++)k.push(A[N]),M.push(_),g.push(null,null,null,null);return P}if(k.push(A[0]),M.push(_),A.length<=1)return g.push(null,null,null,null),P;let T=E*.5,z=p+T,O=C+T,V=[],G=[],Z=[],H=[];for(let N=1,j=A.length;N<j;N++){let re=A[N],oe=a[re*2],_e=a[re*2+1];oe<z?_e<O?V.push(re):G.push(re):_e<O?Z.push(re):H.push(re)}return _<<=2,g.push(d(p,C,T,V,L,_),d(p,O,T,G,L,_+1),d(z,C,T,Z,L,_+2),d(z,O,T,H,L,_+3)),P}function v(...p){let C;if(B7t(p[p.length-1])){let Z=p.pop();!p.length&&(Z.x!=null||Z.l!=null||Z.left!=null)&&(p=[Z],C={}),C=qFe(Z,{level:"level maxLevel",d:"d diam diameter r radius px pxSize pixel pixelSize maxD size minSize",lod:"lod details ranges offsets"})}else C={};p.length||(p=i);let E=z7t(...p),[A,L,_,k]=[Math.min(E.x,E.x+E.width),Math.min(E.y,E.y+E.height),Math.max(E.x,E.x+E.width),Math.max(E.y,E.y+E.height)],[M,g,P,T]=NFe([A,L,_,k],i),z=ZZ(C.level,l.length);if(C.d!=null){let Z;typeof C.d=="number"?Z=[C.d,C.d]:C.d.length&&(Z=C.d),z=Math.min(Math.max(Math.ceil(-BFe(Math.abs(Z[0])/(i[2]-i[0]))),Math.ceil(-BFe(Math.abs(Z[1])/(i[3]-i[1])))),z)}if(z=Math.min(z,l.length),C.lod)return x(M,g,P,T,z);let O=[];V(0,0,1,0,0,1);function V(Z,H,N,j,re,oe){if(re===null||oe===null)return;let _e=Z+N,Me=H+N;if(M>_e||g>Me||P<Z||T<H||j>=z||re===oe)return;let ke=l[j];oe===void 0&&(oe=ke.length);for(let Fe=re;Fe<oe;Fe++){let ce=ke[Fe],Ze=t[ce*2],ct=t[ce*2+1];Ze>=A&&Ze<=_&&ct>=L&&ct<=k&&O.push(ce)}let me=u[j],ie=me[re*4+0],Se=me[re*4+1],Le=me[re*4+2],Ae=me[re*4+3],De=G(me,re+1),Pe=N*.5,ge=j+1;V(Z,H,Pe,ge,ie,Se||Le||Ae||De),V(Z,H+Pe,Pe,ge,Se,Le||Ae||De),V(Z+Pe,H,Pe,ge,Le,Ae||De),V(Z+Pe,H+Pe,Pe,ge,Ae,De)}function G(Z,H){let N=null,j=0;for(;N===null;)if(N=Z[H*4+j],j++,j>Z.length)return null;return N}return O}function x(p,C,E,A,L){let _=[];for(let k=0;k<L;k++){let M=c[k],g=f[k][0],P=b(p,C,k),T=b(E,A,k),z=zFe.ge(M,P),O=zFe.gt(M,T,z,M.length-1);_[k]=[z+g,O+g]}return _}function b(p,C,E){let A=1,L=.5,_=.5,k=.5;for(let M=0;M<E;M++)A<<=2,A+=p<L?C<_?0:1:C<_?2:3,k*=.5,L+=p<L?-k:k,_+=C<_?-k:k;return A}};function NFe(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]=OFe((e[2*u]-r)*o,0,1),l[2*u+1]=OFe((e[2*u+1]-n)*s,0,1);return l}});var NF=ye((Jgr,GFe)=>{"use strict";GFe.exports=VFe()});var YZ=ye(($gr,HFe)=>{HFe.exports=V7t;function V7t(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 XFe=ye((UF,WFe)=>{"use strict";Object.defineProperty(UF,"__esModule",{value:!0});var G7t=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")}}(),uC=Math.PI*2,KZ=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}},H7t=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}]},jFe=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)},j7t=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 C=p*a/o*h,E=p*-o/a*f,A=c*C-u*E+(t+n)/2,L=u*C+c*E+(r+i)/2,_=(f-C)/a,k=(h-E)/o,M=(-f-C)/a,g=(-h-E)/o,P=jFe(1,0,_,k),T=jFe(_,k,M,g);return l===0&&T>0&&(T-=uC),l===1&&T<0&&(T+=uC),[A,L,P,T]},W7t=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*uC/360),b=Math.cos(u*uC/360),p=b*(r-i)/2+x*(n-a)/2,C=-x*(r-i)/2+b*(n-a)/2;if(p===0&&C===0)return[];o=Math.abs(o),s=Math.abs(s);var E=Math.pow(p,2)/Math.pow(o,2)+Math.pow(C,2)/Math.pow(s,2);E>1&&(o*=Math.sqrt(E),s*=Math.sqrt(E));var A=j7t(r,n,i,a,o,s,f,d,x,b,p,C),L=G7t(A,4),_=L[0],k=L[1],M=L[2],g=L[3],P=Math.abs(g)/(uC/4);Math.abs(1-P)<1e-7&&(P=1);var T=Math.max(Math.ceil(P),1);g/=T;for(var z=0;z<T;z++)v.push(H7t(M,g)),M+=g;return v.map(function(O){var V=KZ(O[0],o,s,b,x,_,k),G=V.x,Z=V.y,H=KZ(O[1],o,s,b,x,_,k),N=H.x,j=H.y,re=KZ(O[2],o,s,b,x,_,k),oe=re.x,_e=re.y;return{x1:G,y1:Z,x2:N,y2:j,x:oe,y:_e}})};UF.default=W7t;WFe.exports=UF.default});var KFe=ye((Qgr,YFe)=>{"use strict";YFe.exports=Z7t;var X7t=XFe();function Z7t(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=X7t({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 C=u,E=c;(t=="C"||t=="S")&&(C+=C-n,E+=E-i),d=["C",C,E,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=ZFe(u,c,s,l,d[1],d[2]);break;case"Q":s=d[1],l=d[2],d=ZFe(u,c,d[1],d[2],d[3],d[4]);break;case"L":d=VF(u,c,d[1],d[2]);break;case"H":d=VF(u,c,d[1],c);break;case"V":d=VF(u,c,u,d[1]);break;case"Z":d=VF(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 VF(e,t,r,n){return["C",e,t,r,n,r,n]}function ZFe(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 JZ=ye((emr,JFe)=>{"use strict";JFe.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 eze=ye((tmr,QFe)=>{"use strict";var Y7t=$S(),K7t=YZ(),J7t=KFe(),$7t=JZ(),$Fe=oE();QFe.exports=Q7t;function Q7t(e){if(Array.isArray(e)&&e.length===1&&typeof e[0]=="string"&&(e=e[0]),typeof e=="string"&&($Fe($7t(e),"String is not an SVG path."),e=Y7t(e)),$Fe(Array.isArray(e),"Argument should be a string or an array of path segments."),e=K7t(e),e=J7t(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 oze=ye((rmr,aze)=>{var X2=Math.PI,tze=nze(120);aze.exports=e9t;function e9t(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=ize(u,c,d[1],d[2],nze(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=rze(u,c,s,l,d[1],d[2]);break;case"Q":s=d[1],l=d[2],d=rze(u,c,d[1],d[2],d[3],d[4]);break;case"L":d=GF(u,c,d[1],d[2]);break;case"H":d=GF(u,c,d[1],c);break;case"V":d=GF(u,c,u,d[1]);break;case"Z":d=GF(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 GF(e,t,r,n){return["C",e,t,r,n,r,n]}function rze(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 ize(e,t,r,n,i,a,o,s,l,u){if(u)E=u[0],A=u[1],p=u[2],C=u[3];else{var c=$Z(e,t,-i);e=c.x,t=c.y,c=$Z(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,C=b*-n*f/r+(t+l)/2,E=Math.asin(((t-C)/n).toFixed(9)),A=Math.asin(((l-C)/n).toFixed(9));E=e<p?X2-E:E,A=s<p?X2-A:A,E<0&&(E=X2*2+E),A<0&&(A=X2*2+A),o&&E>A&&(E=E-X2*2),!o&&A>E&&(A=A-X2*2)}if(Math.abs(A-E)>tze){var L=A,_=s,k=l;A=E+tze*(o&&A>E?1:-1),s=p+r*Math.cos(A),l=C+n*Math.sin(A);var M=ize(s,l,r,n,i,0,o,_,k,[A,L,p,C])}var g=Math.tan((A-E)/4),P=4/3*r*g,T=4/3*n*g,z=[2*e-(e+P*Math.sin(E)),2*t-(t-T*Math.cos(E)),s+P*Math.sin(A),l-T*Math.cos(A),s,l];if(u)return z;M&&(z=z.concat(M));for(var O=0;O<z.length;){var V=$Z(z[O],z[O+1],i);z[O++]=V.x,z[O++]=V.y}return z}function $Z(e,t,r){return{x:e*Math.cos(r)-t*Math.sin(r),y:e*Math.sin(r)+t*Math.cos(r)}}function nze(e){return e*(X2/180)}});var lze=ye((imr,sze)=>{var t9t=YZ(),r9t=oze(),i9t={M:"moveTo",C:"bezierCurveTo"};sze.exports=function(e,t){e.beginPath(),r9t(t9t(t)).forEach(function(r){var n=r[0],i=r.slice(1);e[i9t[n]].apply(e,i)}),e.closePath()}});var hze=ye((nmr,fze)=>{"use strict";var n9t=XE();fze.exports=a9t;var cC=1e20;function a9t(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),C=Array(s),E=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?cC:Math.pow(Math.max(0,.5-_),2),p[v]=_===1?cC:_===0?0:Math.pow(Math.max(0,_-.5),2)}uze(b,a,o,C,E,L,A),uze(p,a,o,C,E,L,A);var k=window.Float32Array?new Float32Array(a*o):new Array(a*o);for(v=0,x=a*o;v<x;v++)k[v]=n9t(1-((b[v]-p[v])/n+r),0,1);return k}function uze(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(cze(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(cze(n,i,a,o,t),s=0;s<t;s++)e[l*t+s]=Math.sqrt(i[s])}}function cze(e,t,r,n,i){r[0]=0,n[0]=-cC,n[1]=+cC;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]=+cC}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 vze=ye((amr,dze)=>{"use strict";var o9t=eze(),s9t=$S(),l9t=lze(),u9t=JZ(),c9t=hze(),QZ=document.createElement("canvas"),fp=QZ.getContext("2d");dze.exports=f9t;function f9t(e,t){if(!u9t(e))throw Error("Argument should be valid svg path string");t||(t={});var r,n;t.shape?(r=t.shape[0],n=t.shape[1]):(r=QZ.width=t.w||t.width||200,n=QZ.height=t.h||t.height||200);var i=Math.min(r,n),a=t.stroke||0,o=t.viewbox||t.viewBox||o9t(e),s=[r/(o[2]-o[0]),n/(o[3]-o[1])],l=Math.min(s[0]||0,s[1]||0)/2;if(fp.fillStyle="black",fp.fillRect(0,0,r,n),fp.fillStyle="white",a&&(typeof a!="number"&&(a=1),a>0?fp.strokeStyle="white":fp.strokeStyle="black",fp.lineWidth=Math.abs(a)),fp.translate(r*.5,n*.5),fp.scale(l,l),h9t()){var u=new Path2D(e);fp.fill(u),a&&fp.stroke(u)}else{var c=s9t(e);l9t(fp,c),fp.fill(),a&&fp.stroke()}fp.setTransform(1,0,0,1,0,0);var f=c9t(fp,{cutoff:t.cutoff!=null?t.cutoff:.5,radius:t.radius!=null?t.radius:i*.5});return f}var HF;function h9t(){if(HF!=null)return HF;var e=document.createElement("canvas").getContext("2d");if(e.canvas.width=e.canvas.height=1,!window.Path2D)return HF=!1;var t=new Path2D("M0,0h1v1h-1v-1Z");e.fillStyle="black",e.fill(t);var r=e.getImageData(0,0,1,1);return HF=r&&r.data&&r.data[3]===255}});var Y2=ye((omr,Sze)=>{"use strict";var WF=Eo(),d9t=vze(),jF=$_(),v9t=qa(),i5=Dr(),gh=i5.isArrayOrTypedArray,t5=So(),pze=hf(),gze=$y().formatColor,r5=Ru(),p9t=S3(),tY=qF(),fC=sx(),g9t=U1().DESELECTDIM,mze={start:1,left:1,end:-1,right:-1,middle:0,center:0,bottom:1,top:-1},m9t=rp().appendArrayPointValue;function y9t(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(r5.hasText(t)&&(n.text=Aze(e,t),n.textSel=_ze(e,t,t.selected),n.textUnsel=_ze(e,t,t.unselected)),r5.hasMarkers(t)&&(n.marker=iY(e,t),n.markerSel=rY(e,t,t.selected),n.markerUnsel=rY(e,t,t.unselected),!t.unselected&&gh(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]=g9t*a[r]}if(r5.hasLines(t)){n.line={overlay:!0,thickness:t.line.width*i,color:t.line.color,opacity:t.opacity};var o=(fC.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=xze(t,t.error_x,i)),t.error_y&&t.error_y.visible&&(n.errorY=xze(t,t.error_y,i)),t.fill&&t.fill!=="none"&&(n.fill={closed:!0,fill:t.fillcolor,thickness:0}),n}function Aze(e,t){var r=e._fullLayout,n=t._length,i=t.textfont,a=t.textposition,o=gh(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,C=Array.isArray(b),E=C?Math.min(b.length,n):n,A=C?function(T){return b[T]}:function(){return b};for(v=0;v<E;v++){var L={i:v},_=t._module.formatLabels(L,t,r),k={};m9t(k,t,v);var M=t._meta||{};d.text.push(i5.texttemplateString(A(v),_,p,k,L,M))}}else gh(t.text)&&t.text.length<n?d.text=t.text.slice():d.text=t.text;if(gh(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(gh(s))for(d.color=new Array(n),v=0;v<n;v++)d.color[v]=s[v];else d.color=s;if(gh(l)||Array.isArray(u)||gh(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=(i5.isTypedArray(l)?l[v]:gh(l)?WF(l[v])?l[v]:0:l)*x,P.family=Array.isArray(u)?u[v]:u,P.weight=yze(gh(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:yze(c),style:f,variant:h};return d}function yze(e){return e<=1e3?e>500?"bold":"normal":e}function iY(e,t){var r=t._length,n=t.marker,i={},a,o=gh(n.symbol),s=gh(n.angle),l=gh(n.color),u=gh(n.line.color),c=gh(n.opacity),f=gh(n.size),h=gh(n.line.width),d;if(o||(d=tY.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=gze(n,n.opacity,r),p=gze(n.line,n.opacity,r);if(!gh(p[0])){var C=p;for(p=Array(r),a=0;a<r;a++)p[a]=C}if(!gh(b[0])){var E=b;for(b=Array(r),a=0;a<r;a++)b[a]=E}if(!gh(v)){var A=v;for(v=Array(r),a=0;a<r;a++)v[a]=A}if(!gh(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=tY.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]=Tze({mx:i.symbols[a],ma:i.angles[a]},t)}else d?(i.color=jF(n.color,"uint8"),i.color[3]=0,i.borderColor=jF(n.color,"uint8")):(i.color=jF(n.color,"uint8"),i.borderColor=jF(n.line.color,"uint8")),i.opacity=t.opacity*n.opacity,i.marker=Tze({mx:n.symbol,ma:n.angle},t);var _=1,k=p9t(t,_),M;if(f||h){var g=i.sizes=new Array(r),P=i.borderSizes=new Array(r),T=0,z;if(f){for(a=0;a<r;a++)g[a]=k(n.size[a]),T+=g[a];z=T/r}else for(M=k(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=z}else i.size=k(n&&n.size||10),i.borderSizes=k(n.line.width);return i}function rY(e,t,r){var n=t.marker,i={};return r&&(r.marker&&r.marker.symbol?i=iY(e,i5.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 _ze(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:i5.extendFlat({},t.textfont)};r.textfont&&i5.extendFlat(i.textfont,r.textfont),n=Aze(e,i)}return n}function xze(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 bze=fC.SYMBOL_SDF_SIZE,Z2=fC.SYMBOL_SIZE,wze=fC.SYMBOL_STROKE,eY={},_9t=t5.symbolFuncs[0](Z2*.05);function Tze(e,t){var r=e.mx;if(r==="circle")return null;var n,i,a=t5.symbolNumber(r),o=t5.symbolFuncs[a%100],s=!!t5.symbolNoDot[a%100],l=!!t5.symbolNoFill[a%100],u=tY.isDotSymbol(r);if(e.ma&&(r+="_"+e.ma),eY[r])return eY[r];var c=t5.getMarkerAngle(e,t);return u&&!s?n=o(Z2*1.1,c)+_9t:n=o(Z2,c),i=d9t(n,{w:bze,h:bze,viewBox:[-Z2,-Z2,Z2,Z2],stroke:l?wze:-wze}),eY[r]=i,i||null}function x9t(e,t,r){var n=r.length,i=n/2,a,o;if(r5.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>fC.TOO_MANY_POINTS||r5.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 b9t(e,t,r,n,i){var a=v9t.getComponentMethod("errorbars","makeComputeError"),o=pze.getFromId(e,t.xaxis,"x"),s=pze.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],C=new Float64Array(4*l),E=1/0,A=-1/0,L=0,_=0;L<l;L++,_+=4){var k=f[L];if(WF(k)){var M=r[L*2+b],g=x(k,L),P=g[0],T=g[1];if(WF(P)&&WF(T)){var z=k-P,O=k+T;C[_+p[0]]=M-h.c2l(z),C[_+p[1]]=h.c2l(O)-M,C[_+p[2]]=0,C[_+p[3]]=0,E=Math.min(E,k-P),A=Math.max(A,k+T)}}}u[d]={positions:r,errors:C,_bnds:[E,A]}}}return c(n,o),c(i,s),u}function w9t(e,t,r,n){var i=t._length,a={},o;if(r5.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=gh(s)?s[o].size:s.size,h=gh(l)?l.length>1?l[o]:l[0]:l,d=gh(u)?u.length>1?u[o]:u[0]:u,v=mze[h],x=mze[d],b=c?c/.8+1:0,p=-x*b-x*.5;a.offset[o]=[v*b/f,p/f]}}return a}Sze.exports={style:y9t,markerStyle:iY,markerSelection:rY,linePositions:x9t,errorBarPositions:b9t,textPosition:w9t}});var nY=ye((smr,Mze)=>{"use strict";var XF=Dr();Mze.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(){XF.extendFlat(n,a,i)},n.init(),n.update=function(s){var l=XF.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=XF.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||XF.extendFlat(n,i),n}});var Ize=ye((lmr,Pze)=>{"use strict";var T9t=NF(),n5=Dr(),Eze=hf(),A9t=wg().findExtremes,Cze=Rg(),aY=O0(),S9t=aY.calcMarkerSize,M9t=aY.calcAxisExpansion,E9t=aY.setFirstScatter,C9t=F0(),a5=Y2(),k9t=nY(),kze=hs().BADNUM,L9t=sx().TOO_MANY_POINTS;Pze.exports=function(t,r){var n=t._fullLayout,i=r._xA=Eze.getFromId(t,r.xaxis,"x"),a=r._yA=Eze.getFromId(t,r.yaxis,"y"),o=n._plots[r.xaxis+r.yaxis],s=r._length,l=s>=L9t,u=s*2,c={},f,h=i.makeCalcdata(r,"x"),d=a.makeCalcdata(r,"y"),v=Cze(r,i,"x",h),x=Cze(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 C=new Array(u),E=new Array(s);for(f=0;f<s;f++)C[f*2]=b[f]===kze?NaN:b[f],C[f*2+1]=p[f]===kze?NaN:p[f],E[f]=f;if(i.type==="log")for(f=0;f<u;f+=2)C[f]=i.c2l(C[f]);if(a.type==="log")for(f=1;f<u;f+=2)C[f]=a.c2l(C[f]);l&&i.type!=="log"&&a.type!=="log"?c.tree=T9t(C):c.ids=E,C9t(t,r);var A=P9t(t,o,r,C,b,p),L=k9t(t,o);E9t(n,r);var _;return l?A.marker&&(_=A.marker.sizeAvg||Math.max(A.marker.size,3)):_=S9t(r,s),M9t(t,r,i,a,b,p,_),A.errorX&&Lze(r,i,A.errorX),A.errorY&&Lze(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=C,L.count++,[{x:!1,y:!1,t:c,trace:r}]};function Lze(e,t,r){var n=e._extremes[t._id],i=A9t(t,r._bnds,{padded:!0});n.min=n.min.concat(i.min),n.max=n.max.concat(i.max)}function P9t(e,t,r,n,i,a){var o=a5.style(e,r);if(o.marker&&(o.marker.positions=n),o.line&&n.length>1&&n5.extendFlat(o.line,a5.linePositions(e,r,n)),o.errorX||o.errorY){var s=a5.errorBarPositions(e,r,n,i,a);o.errorX&&n5.extendFlat(o.errorX,s.x),o.errorY&&n5.extendFlat(o.errorY,s.y)}return o.text&&(n5.extendFlat(o.text,{positions:n},a5.textPosition(e,r,o.text,o.marker)),n5.extendFlat(o.textSel,{positions:n},a5.textPosition(e,r,o.text,o.markerSel)),n5.extendFlat(o.textUnsel,{positions:n},a5.textPosition(e,r,o.text,o.markerUnsel))),o}});var oY=ye((umr,Dze)=>{"use strict";var Rze=Dr(),I9t=Ca(),R9t=U1().DESELECTDIM;function D9t(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=Rze.extendFlat({},l),h,d;if(o.length||s.length){var v=u.color,x=c.color,b=l.color,p=Rze.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 C=p?b[d]:b;f.color[d]=x||(v?C:I9t.addOpacity(C,R9t))}}i.glText[a].update(f)}Dze.exports={styleTextSelection:D9t}});var sY=ye((cmr,zze)=>{"use strict";var Fze=Ru(),F9t=oY().styleTextSelection;zze.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=Fze.hasText(s),x=Fze.hasMarkers(s),b=!x&&!v;if(s.visible!==!0||b)return o;var p=[],C=[];if(r!==!1&&!r.degenerate)for(var E=0;E<u;E++)r.contains([l.xpx[E],l.ypx[E]],!1,E,t)?(p.push(E),o.push({pointNumber:E,x:i.c2d(c[E]),y:a.c2d(f[E])})):C.push(E);if(x){var A=h.scatter2d;if(!p.length&&!C.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]=C,v&&F9t(n),o}});var qze=ye((fmr,Oze)=>{"use strict";var z9t=OF();Oze.exports={moduleType:"trace",name:"scattergl",basePlotModule:vh(),categories:["gl","regl","cartesian","symbols","errorBarsOK","showLegend","scatter-like"],attributes:sC(),supplyDefaults:_Fe(),crossTraceDefaults:rU(),colorbar:$d(),formatLabels:bFe(),calc:Ize(),hoverPoints:z9t.hoverPoints,selectPoints:sY(),meta:{}}});var Nze=ye((hmr,YF)=>{"use strict";var ZF=XE();YF.exports=Bze;YF.exports.to=Bze;YF.exports.from=O9t;function Bze(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=ZF(r,0,255)&255,n=ZF(n,0,255)&255,i=ZF(i,0,255)&255,a=ZF(a,0,255)&255;var o=r*16777216+(n<<16)+(i<<8)+a;return o}function O9t(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 Fh=ye((dmr,Vze)=>{"use strict";var Uze=Object.getOwnPropertySymbols,q9t=Object.prototype.hasOwnProperty,B9t=Object.prototype.propertyIsEnumerable;function N9t(e){if(e==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}function U9t(){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}}Vze.exports=U9t()?Object.assign:function(e,t){for(var r,n=N9t(e),i,a=1;a<arguments.length;a++){r=Object(arguments[a]);for(var o in r)q9t.call(r,o)&&(n[o]=r[o]);if(Uze){i=Uze(r);for(var s=0;s<i.length;s++)B9t.call(r,i[s])&&(n[i[s]]=r[i[s]])}}return n}});var Hze=ye((vmr,Gze)=>{Gze.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 lY=ye((pmr,jze)=>{"use strict";jze.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 Xze=ye((gmr,Wze)=>{"use strict";Wze.exports=typeof navigator!="undefined"&&(/MSIE/.test(navigator.userAgent)||/Trident\//.test(navigator.appVersion))});var KF=ye((mmr,o5)=>{"use strict";o5.exports=hC;o5.exports.float32=o5.exports.float=hC;o5.exports.fract32=o5.exports.fract=V9t;var Zze=new Float32Array(1);function V9t(e,t){if(e.length){if(e instanceof Float32Array)return new Float32Array(e.length);t instanceof Float32Array||(t=hC(e));for(var r=0,n=t.length;r<n;r++)t[r]=e[r]-t[r];return t}return hC(e-hC(e))}function hC(e){return e.length?e instanceof Float32Array?e:new Float32Array(e):(Zze[0]=e,Zze[0])}});var cY=ye((ymr,Jze)=>{"use strict";function G9t(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 H9t(e,t){return X9t(e)||G9t(e,t)||Kze(e,t)||K9t()}function j9t(e){return W9t(e)||Z9t(e)||Kze(e)||Y9t()}function W9t(e){if(Array.isArray(e))return uY(e)}function X9t(e){if(Array.isArray(e))return e}function Z9t(e){if(typeof Symbol!="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function Kze(e,t){if(e){if(typeof e=="string")return uY(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 uY(e,t)}}function uY(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 Y9t(){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 K9t(){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 J9t=$_(),$9t=j2(),Q9t=Nze(),eOt=NF(),K2=Fh(),JF=Hze(),tOt=Xm(),rOt=lY(),iOt=W2(),Yze=Xze(),$F=KF(),nOt=e5(),aOt=nv;function nv(e,t){var r=this;if(!(this instanceof nv))return new nv(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=Yze,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=JF([`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=JF([`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=JF([`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=JF([`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;
|
||
}
|
||
`]),Yze&&(v.frag=v.frag.replace("smoothstep","smoothStep"),d.frag=d.frag.replace("smoothstep","smoothStep")),this.drawCircle=e(v)}nv.defaults={color:"black",borderColor:"transparent",borderSize:0,size:12,opacity:1,marker:void 0,viewport:null,range:null,pixelSize:null,count:0,offset:0,bounds:null,positions:[],snap:1e4};nv.prototype.render=function(){return arguments.length&&this.update.apply(this,arguments),this.draw(),this};nv.prototype.draw=function(){for(var e=this,t=arguments.length,r=new Array(t),n=0;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};nv.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,j9t(this.getMarkerDrawOptions(a,n,t)));i.length&&this.drawMarker(i)}};nv.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 C=H9t(f[p],2),E=C[0],A=C[1];c.push(K2({},t,{markerTexture:this.markerTextures[e],activation:r?s:o[e],offset:E,count:A-E}))}return c};nv.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=tOt(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({},nv.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(rOt(h,c,[{snap:!0,size:function(H,N){return H==null&&(H=nv.defaults.size),d+=H&&H.length?1:0,H},borderSize:function(H,N){return H==null&&(H=nv.defaults.borderSize),d+=H&&H.length?1:0,H},opacity:parseFloat,color:function(H,N){return H==null&&(H=nv.defaults.color),H=e.updateColor(H),v++,H},borderColor:function(H,N){return H==null&&(H=nv.defaults.borderColor),H=e.updateColor(H),v++,H},bounds:function(H,N,j){return"range"in j||(j.range=null),H},positions:function(H,N,j){var re=N.snap,oe=N.positionBuffer,_e=N.positionFractBuffer,Me=N.selectionBuffer;if(H.x||H.y)return H.x.length?N.xAttr={buffer:o.buffer(H.x),offset:0,stride:4,count:H.x.length}:N.xAttr={buffer:H.x.buffer,offset:H.x.offset*4||0,stride:(H.x.stride||1)*4,count:H.x.count},H.y.length?N.yAttr={buffer:o.buffer(H.y),offset:0,stride:4,count:H.y.length}:N.yAttr={buffer:H.y.buffer,offset:H.y.offset*4||0,stride:(H.y.stride||1)*4,count:H.y.count},N.count=Math.max(N.xAttr.count,N.yAttr.count),H;H=iOt(H,"float64");var ke=N.count=Math.floor(H.length/2),me=N.bounds=ke?$9t(H,2):null;if(!j.range&&!N.range&&(delete N.range,j.range=me),!j.marker&&!N.marker&&(delete N.marker,j.marker=null),re&&(re===!0||ke>re)?N.tree=eOt(H,{bounds:me}):re&&re.length&&(N.tree=re),N.tree){var ie={primitive:"points",usage:"static",data:N.tree,type:"uint32"};N.elements?N.elements(ie):N.elements=o.elements(ie)}var Se=$F.float32(H);oe({data:Se,usage:"dynamic"});var Le=$F.fract32(H,Se);return _e({data:Le,usage:"dynamic"}),Me({data:new Uint8Array(ke),type:"uint8",usage:"stream"}),H}},{marker:function(H,N,j){var re=N.activation;if(re.forEach(function(Le){return Le&&Le.destroy&&Le.destroy()}),re.length=0,!H||typeof H[0]=="number"){var oe=e.addMarker(H);re[oe]=!0}else{for(var _e=[],Me=0,ke=Math.min(H.length,N.count);Me<ke;Me++){var me=e.addMarker(H[Me]);_e[me]||(_e[me]=new Uint8Array(N.count)),_e[me][Me]=1}for(var ie=0;ie<_e.length;ie++)if(_e[ie]){var Se={data:_e[ie],type:"uint8",usage:"static"};re[ie]?re[ie](Se):re[ie]=o.buffer(Se),re[ie].data=_e[ie]}}return H},range:function(H,N,j){var re=N.bounds;if(re)return H||(H=re),N.scale=[1/(H[2]-H[0]),1/(H[3]-H[1])],N.translate=[-H[0],-H[1]],N.scaleFract=$F.fract(N.scale),N.translateFract=$F.fract(N.translate),H},viewport:function(H){var N=nOt(H||[a.drawingBufferWidth,a.drawingBufferHeight]);return N}}]),d){var x=h,b=x.count,p=x.size,C=x.borderSize,E=x.sizeBuffer,A=new Uint8Array(b*2);if(p.length||C.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((C[L]==null?C:C[L])*255/s);E({data:A,usage:"dynamic"})}if(v){var _=h,k=_.count,M=_.color,g=_.borderColor,P=_.colorBuffer,T;if(e.tooManyColors){if(M.length||g.length){T=new Uint8Array(k*8);for(var z=0;z<k;z++){var O=M[z];T[z*8]=u[O*4],T[z*8+1]=u[O*4+1],T[z*8+2]=u[O*4+2],T[z*8+3]=u[O*4+3];var V=g[z];T[z*8+4]=u[V*4],T[z*8+5]=u[V*4+1],T[z*8+6]=u[V*4+2],T[z*8+7]=u[V*4+3]}}}else if(M.length||g.length){T=new Uint8Array(k*4+2);for(var G=0;G<k;G++)M[G]!=null&&(T[G*4]=M[G]%l,T[G*4+1]=Math.floor(M[G]/l)),g[G]!=null&&(T[G*4+2]=g[G]%l,T[G*4+3]=Math.floor(g[G]/l))}P({data:T||new Uint8Array(0),type:"uint8",usage:"dynamic"})}return h})}};nv.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};nv.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=J9t(u,"uint8");var c=Q9t(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};nv.prototype.updatePalette=function(e){if(!this.tooManyColors){var t=this.maxColors,r=this.paletteTexture,n=Math.ceil(e.length*.25/t);if(n>1){e=e.slice();for(var i=e.length*.25%t;i<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)}};nv.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 oOt=Fh(),sOt=function(t,r){var n=new aOt(t,r),i=n.render.bind(n);return oOt(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};Jze.exports=sOt});var r7e=ye((_mr,vY)=>{"use strict";vY.exports=tz;vY.exports.default=tz;function tz(e,t,r){r=r||2;var n=t&&t.length,i=n?t[0]*r:e.length,a=Qze(e,0,i,r,!0),o=[];if(!a||a.next===a.prev)return o;var s,l,u,c,f,h,d;if(n&&(a=hOt(e,t,a,r)),e.length>80*r){s=u=e[0],l=c=e[1];for(var v=r;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 dC(a,o,r,s,l,d,0),o}function Qze(e,t,r,n,i){var a,o;if(i===dY(e,t,r,n)>0)for(a=t;a<r;a+=n)o=$ze(a,e[a],e[a+1],o);else for(a=r-n;a>=t;a-=n)o=$ze(a,e[a],e[a+1],o);return o&&rz(o,o.next)&&(pC(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&&(rz(r,r.next)||mh(r.prev,r,r.next)===0)){if(pC(r),r=t=r.prev,r===r.next)break;n=!0}else r=r.next;while(n||r!==t);return t}function dC(e,t,r,n,i,a,o){if(e){!o&&a&&mOt(e,n,i,a);for(var s=e,l,u;e.prev!==e.next;){if(l=e.prev,u=e.next,a?uOt(e,n,i,a):lOt(e)){t.push(l.i/r|0),t.push(e.i/r|0),t.push(u.i/r|0),pC(e),e=u.next,s=u.next;continue}if(e=u,e===s){o?o===1?(e=cOt(J2(e),t,r),dC(e,t,r,n,i,a,2)):o===2&&fOt(e,t,r,n,i,a):dC(J2(e),t,r,n,i,a,1);break}}}}function lOt(e){var t=e.prev,r=e,n=e.next;if(mh(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&&s5(i,s,a,l,o,u,v.x,v.y)&&mh(v.prev,v,v.next)>=0)return!1;v=v.next}return!0}function uOt(e,t,r,n){var i=e.prev,a=e,o=e.next;if(mh(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=fY(d,v,t,r,n),C=fY(x,b,t,r,n),E=e.prevZ,A=e.nextZ;E&&E.z>=p&&A&&A.z<=C;){if(E.x>=d&&E.x<=x&&E.y>=v&&E.y<=b&&E!==i&&E!==o&&s5(s,c,l,f,u,h,E.x,E.y)&&mh(E.prev,E,E.next)>=0||(E=E.prevZ,A.x>=d&&A.x<=x&&A.y>=v&&A.y<=b&&A!==i&&A!==o&&s5(s,c,l,f,u,h,A.x,A.y)&&mh(A.prev,A,A.next)>=0))return!1;A=A.nextZ}for(;E&&E.z>=p;){if(E.x>=d&&E.x<=x&&E.y>=v&&E.y<=b&&E!==i&&E!==o&&s5(s,c,l,f,u,h,E.x,E.y)&&mh(E.prev,E,E.next)>=0)return!1;E=E.prevZ}for(;A&&A.z<=C;){if(A.x>=d&&A.x<=x&&A.y>=v&&A.y<=b&&A!==i&&A!==o&&s5(s,c,l,f,u,h,A.x,A.y)&&mh(A.prev,A,A.next)>=0)return!1;A=A.nextZ}return!0}function cOt(e,t,r){var n=e;do{var i=n.prev,a=n.next.next;!rz(i,a)&&e7e(i,n,n.next,a)&&vC(i,a)&&vC(a,i)&&(t.push(i.i/r|0),t.push(n.i/r|0),t.push(a.i/r|0),pC(n),pC(n.next),n=e=a),n=n.next}while(n!==e);return J2(n)}function fOt(e,t,r,n,i,a){var o=e;do{for(var s=o.next.next;s!==o.prev;){if(o.i!==s.i&&xOt(o,s)){var l=t7e(o,s);o=J2(o,o.next),l=J2(l,l.next),dC(o,t,r,n,i,a,0),dC(l,t,r,n,i,a,0);return}s=s.next}o=o.next}while(o!==e)}function hOt(e,t,r,n){var i=[],a,o,s,l,u;for(a=0,o=t.length;a<o;a++)s=t[a]*n,l=a<o-1?t[a+1]*n:e.length,u=Qze(e,s,l,n,!1),u===u.next&&(u.steiner=!0),i.push(_Ot(u));for(i.sort(dOt),a=0;a<i.length;a++)r=vOt(i[a],r);return r}function dOt(e,t){return e.x-t.x}function vOt(e,t){var r=pOt(e,t);if(!r)return t;var n=t7e(r,e);return J2(n,n.next),J2(r,r.next)}function pOt(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&&s5(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),vC(r,e)&&(h<f||h===f&&(r.x>o.x||r.x===o.x&&gOt(o,r)))&&(o=r,f=h)),r=r.next;while(r!==l);return o}function gOt(e,t){return mh(e.prev,e,t.prev)<0&&mh(t.next,e,e.next)<0}function mOt(e,t,r,n){var i=e;do i.z===0&&(i.z=fY(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,yOt(i)}function yOt(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 fY(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 _Ot(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 s5(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 xOt(e,t){return e.next.i!==t.i&&e.prev.i!==t.i&&!bOt(e,t)&&(vC(e,t)&&vC(t,e)&&wOt(e,t)&&(mh(e.prev,e,t.prev)||mh(e,t.prev,t))||rz(e,t)&&mh(e.prev,e,e.next)>0&&mh(t.prev,t,t.next)>0)}function mh(e,t,r){return(t.y-e.y)*(r.x-t.x)-(t.x-e.x)*(r.y-t.y)}function rz(e,t){return e.x===t.x&&e.y===t.y}function e7e(e,t,r,n){var i=ez(mh(e,t,r)),a=ez(mh(e,t,n)),o=ez(mh(r,n,e)),s=ez(mh(r,n,t));return!!(i!==a&&o!==s||i===0&&QF(e,r,t)||a===0&&QF(e,n,t)||o===0&&QF(r,e,n)||s===0&&QF(r,t,n))}function QF(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 ez(e){return e>0?1:e<0?-1:0}function bOt(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&&e7e(r,r.next,e,t))return!0;r=r.next}while(r!==e);return!1}function vC(e,t){return mh(e.prev,e,e.next)<0?mh(e,t,e.next)>=0&&mh(e,e.prev,t)>=0:mh(e,t,e.prev)<0||mh(e,e.next,t)<0}function wOt(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 t7e(e,t){var r=new hY(e.i,e.x,e.y),n=new hY(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 $ze(e,t,r,n){var i=new hY(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 pC(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 hY(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}tz.deviation=function(e,t,r,n){var i=t&&t.length,a=i?t[0]*r:e.length,o=Math.abs(dY(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(dY(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 dY(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}tz.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 n7e=ye((xmr,i7e)=>{"use strict";var TOt=j2();i7e.exports=AOt;function AOt(e,t,r){if(!e||e.length==null)throw Error("Argument should be an array");t==null&&(t=1),r==null&&(r=TOt(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 o7e=ye((bmr,a7e)=>{"use strict";a7e.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 l7e=ye((wmr,s7e)=>{"use strict";s7e.exports=function(){}});var lx=ye((Tmr,u7e)=>{"use strict";var SOt=l7e()();u7e.exports=function(e){return e!==SOt&&e!==null}});var pY=ye((Amr,f7e)=>{"use strict";var MOt=Object.create,EOt=Object.getPrototypeOf,c7e={};f7e.exports=function(){var e=Object.setPrototypeOf,t=arguments[0]||MOt;return typeof e!="function"?!1:EOt(e(t(null),c7e))===c7e}});var gY=ye((Smr,h7e)=>{"use strict";var COt=lx(),kOt={function:!0,object:!0};h7e.exports=function(e){return COt(e)&&kOt[typeof e]||!1}});var i1=ye((Mmr,d7e)=>{"use strict";var LOt=lx();d7e.exports=function(e){if(!LOt(e))throw new TypeError("Cannot use null or undefined");return e}});var p7e=ye((Emr,v7e)=>{"use strict";var mY=Object.create,iz;pY()()||(iz=yY());v7e.exports=function(){var e,t,r;return!iz||iz.level!==1?mY:(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(iz,"nullPolyfill",{configurable:!1,enumerable:!1,writable:!1,value:e}),function(n,i){return mY(n===null?e:n,i)})}()});var yY=ye((Cmr,g7e)=>{"use strict";var POt=gY(),IOt=i1(),ROt=Object.prototype.isPrototypeOf,DOt=Object.defineProperty,FOt={configurable:!0,enumerable:!1,writable:!0,value:void 0},nz;nz=function(e,t){if(IOt(e),t===null||POt(t))return e;throw new TypeError("Prototype must be null or an object")};g7e.exports=function(e){var t,r;return e?(e.level===2?e.set?(r=e.set,t=function(n,i){return r.call(nz(n,i),i),n}):t=function(n,i){return nz(n,i).__proto__=i,n}:t=function n(i,a){var o;return nz(i,a),o=ROt.call(n.nullPolyfill,i),o&&delete n.nullPolyfill.__proto__,a===null&&(a=n.nullPolyfill),i.__proto__=a,o&&DOt(n.nullPolyfill,"__proto__",FOt),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)}());p7e()});var az=ye((kmr,m7e)=>{"use strict";m7e.exports=pY()()?Object.setPrototypeOf:yY()});var _7e=ye((Lmr,y7e)=>{"use strict";var zOt=gY();y7e.exports=function(e){if(!zOt(e))throw new TypeError(e+" is not an Object");return e}});var b7e=ye((Pmr,x7e)=>{"use strict";var OOt=Object.create(null),qOt=Math.random;x7e.exports=function(){var e;do e=qOt().toString(36).slice(2);while(OOt[e]);return e}});var $2=ye((Imr,w7e)=>{"use strict";var BOt=void 0;w7e.exports=function(e){return e!==BOt&&e!==null}});var oz=ye((Rmr,T7e)=>{"use strict";var NOt=$2(),UOt={object:!0,function:!0,undefined:!0};T7e.exports=function(e){return NOt(e)?hasOwnProperty.call(UOt,typeof e):!1}});var S7e=ye((Dmr,A7e)=>{"use strict";var VOt=oz();A7e.exports=function(e){if(!VOt(e))return!1;try{return e.constructor?e.constructor.prototype===e:!1}catch(t){return!1}}});var E7e=ye((Fmr,M7e)=>{"use strict";var GOt=S7e();M7e.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!GOt(e)}});var _Y=ye((zmr,C7e)=>{"use strict";var HOt=E7e(),jOt=/^\s*class[\s{/}]/,WOt=Function.prototype.toString;C7e.exports=function(e){return!(!HOt(e)||jOt.test(WOt.call(e)))}});var L7e=ye((Omr,k7e)=>{"use strict";k7e.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 I7e=ye((qmr,P7e)=>{"use strict";P7e.exports=function(){try{return Object.keys("primitive"),!0}catch(e){return!1}}});var D7e=ye((Bmr,R7e)=>{"use strict";var XOt=lx(),ZOt=Object.keys;R7e.exports=function(e){return ZOt(XOt(e)?Object(e):e)}});var z7e=ye((Nmr,F7e)=>{"use strict";F7e.exports=I7e()()?Object.keys:D7e()});var q7e=ye((Umr,O7e)=>{"use strict";var YOt=z7e(),KOt=i1(),JOt=Math.max;O7e.exports=function(e,t){var r,n,i=JOt(arguments.length,2),a;for(e=Object(KOt(e)),a=function(o){try{e[o]=t[o]}catch(s){r||(r=s)}},n=1;n<i;++n)t=arguments[n],YOt(t).forEach(a);if(r!==void 0)throw r;return e}});var sz=ye((Vmr,B7e)=>{"use strict";B7e.exports=L7e()()?Object.assign:q7e()});var xY=ye((Gmr,N7e)=>{"use strict";var $Ot=lx(),QOt=Array.prototype.forEach,eqt=Object.create,tqt=function(e,t){var r;for(r in e)t[r]=e[r]};N7e.exports=function(e){var t=eqt(null);return QOt.call(arguments,function(r){$Ot(r)&&tqt(Object(r),t)}),t}});var V7e=ye((Hmr,U7e)=>{"use strict";var bY="razdwatrzy";U7e.exports=function(){return typeof bY.contains!="function"?!1:bY.contains("dwa")===!0&&bY.contains("foo")===!1}});var H7e=ye((jmr,G7e)=>{"use strict";var rqt=String.prototype.indexOf;G7e.exports=function(e){return rqt.call(this,e,arguments[1])>-1}});var wY=ye((Wmr,j7e)=>{"use strict";j7e.exports=V7e()()?String.prototype.contains:H7e()});var n1=ye((Xmr,Y7e)=>{"use strict";var lz=$2(),W7e=_Y(),X7e=sz(),Z7e=xY(),gC=wY(),iqt=Y7e.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],lz(e)?(r=gC.call(e,"c"),n=gC.call(e,"e"),i=gC.call(e,"w")):(r=i=!0,n=!1),o={value:t,configurable:r,enumerable:n,writable:i},a?X7e(Z7e(a),o):o};iqt.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],lz(t)?W7e(t)?lz(r)?W7e(r)||(a=r,r=void 0):r=void 0:(a=t,t=r=void 0):t=void 0,lz(e)?(n=gC.call(e,"c"),i=gC.call(e,"e")):(n=!0,i=!1),o={get:t,set:r,configurable:n,enumerable:i},a?X7e(Z7e(a),o):o}});var mC=ye((Zmr,J7e)=>{"use strict";var K7e=Object.prototype.toString,nqt=K7e.call(function(){return arguments}());J7e.exports=function(e){return K7e.call(e)===nqt}});var yC=ye((Ymr,Q7e)=>{"use strict";var $7e=Object.prototype.toString,aqt=$7e.call("");Q7e.exports=function(e){return typeof e=="string"||e&&typeof e=="object"&&(e instanceof String||$7e.call(e)===aqt)||!1}});var t9e=ye((Kmr,e9e)=>{"use strict";e9e.exports=function(){return typeof globalThis!="object"||!globalThis?!1:globalThis.Array===Array}});var n9e=ye((Jmr,i9e)=>{var r9e=function(){if(typeof self=="object"&&self)return self;if(typeof window=="object"&&window)return window;throw new Error("Unable to resolve global `this`")};i9e.exports=function(){if(this)return this;try{Object.defineProperty(Object.prototype,"__global__",{get:function(){return this},configurable:!0})}catch(e){return r9e()}try{return __global__||r9e()}finally{delete Object.prototype.__global__}}()});var _C=ye(($mr,a9e)=>{"use strict";a9e.exports=t9e()()?globalThis:n9e()});var s9e=ye((Qmr,o9e)=>{"use strict";var oqt=_C(),TY={object:!0,symbol:!0};o9e.exports=function(){var e=oqt.Symbol,t;if(typeof e!="function")return!1;t=e("test symbol");try{String(t)}catch(r){return!1}return!(!TY[typeof e.iterator]||!TY[typeof e.toPrimitive]||!TY[typeof e.toStringTag])}});var u9e=ye((eyr,l9e)=>{"use strict";l9e.exports=function(e){return e?typeof e=="symbol"?!0:!e.constructor||e.constructor.name!=="Symbol"?!1:e[e.constructor.toStringTag]==="Symbol":!1}});var AY=ye((tyr,c9e)=>{"use strict";var sqt=u9e();c9e.exports=function(e){if(!sqt(e))throw new TypeError(e+" is not a symbol");return e}});var p9e=ye((ryr,v9e)=>{"use strict";var f9e=n1(),lqt=Object.create,h9e=Object.defineProperty,uqt=Object.prototype,d9e=lqt(null);v9e.exports=function(e){for(var t=0,r,n;d9e[e+(t||"")];)++t;return e+=t||"",d9e[e]=!0,r="@@"+e,h9e(uqt,r,f9e.gs(null,function(i){n||(n=!0,h9e(this,r,f9e(i)),n=!1)})),r}});var m9e=ye((iyr,g9e)=>{"use strict";var Qg=n1(),zh=_C().Symbol;g9e.exports=function(e){return Object.defineProperties(e,{hasInstance:Qg("",zh&&zh.hasInstance||e("hasInstance")),isConcatSpreadable:Qg("",zh&&zh.isConcatSpreadable||e("isConcatSpreadable")),iterator:Qg("",zh&&zh.iterator||e("iterator")),match:Qg("",zh&&zh.match||e("match")),replace:Qg("",zh&&zh.replace||e("replace")),search:Qg("",zh&&zh.search||e("search")),species:Qg("",zh&&zh.species||e("species")),split:Qg("",zh&&zh.split||e("split")),toPrimitive:Qg("",zh&&zh.toPrimitive||e("toPrimitive")),toStringTag:Qg("",zh&&zh.toStringTag||e("toStringTag")),unscopables:Qg("",zh&&zh.unscopables||e("unscopables"))})}});var x9e=ye((nyr,_9e)=>{"use strict";var y9e=n1(),cqt=AY(),xC=Object.create(null);_9e.exports=function(e){return Object.defineProperties(e,{for:y9e(function(t){return xC[t]?xC[t]:xC[t]=e(String(t))}),keyFor:y9e(function(t){var r;cqt(t);for(r in xC)if(xC[r]===t)return r})})}});var T9e=ye((ayr,w9e)=>{"use strict";var Zm=n1(),SY=AY(),uz=_C().Symbol,fqt=p9e(),hqt=m9e(),dqt=x9e(),vqt=Object.create,MY=Object.defineProperties,cz=Object.defineProperty,Wv,l5,b9e;if(typeof uz=="function")try{String(uz()),b9e=!0}catch(e){}else uz=null;l5=function(t){if(this instanceof l5)throw new TypeError("Symbol is not a constructor");return Wv(t)};w9e.exports=Wv=function e(t){var r;if(this instanceof e)throw new TypeError("Symbol is not a constructor");return b9e?uz(t):(r=vqt(l5.prototype),t=t===void 0?"":String(t),MY(r,{__description__:Zm("",t),__name__:Zm("",fqt(t))}))};hqt(Wv);dqt(Wv);MY(l5.prototype,{constructor:Zm(Wv),toString:Zm("",function(){return this.__name__})});MY(Wv.prototype,{toString:Zm(function(){return"Symbol ("+SY(this).__description__+")"}),valueOf:Zm(function(){return SY(this)})});cz(Wv.prototype,Wv.toPrimitive,Zm("",function(){var e=SY(this);return typeof e=="symbol"?e:e.toString()}));cz(Wv.prototype,Wv.toStringTag,Zm("c","Symbol"));cz(l5.prototype,Wv.toStringTag,Zm("c",Wv.prototype[Wv.toStringTag]));cz(l5.prototype,Wv.toPrimitive,Zm("c",Wv.prototype[Wv.toPrimitive]))});var ux=ye((oyr,A9e)=>{"use strict";A9e.exports=s9e()()?_C().Symbol:T9e()});var M9e=ye((syr,S9e)=>{"use strict";var pqt=i1();S9e.exports=function(){return pqt(this).length=0,this}});var u5=ye((lyr,E9e)=>{"use strict";E9e.exports=function(e){if(typeof e!="function")throw new TypeError(e+" is not a function");return e}});var k9e=ye((uyr,C9e)=>{"use strict";var gqt=$2(),mqt=oz(),yqt=Object.prototype.toString;C9e.exports=function(e){if(!gqt(e))return null;if(mqt(e)){var t=e.toString;if(typeof t!="function"||t===yqt)return null}try{return""+e}catch(r){return null}}});var P9e=ye((cyr,L9e)=>{"use strict";L9e.exports=function(e){try{return e.toString()}catch(t){try{return String(e)}catch(r){return null}}}});var R9e=ye((fyr,I9e)=>{"use strict";var _qt=P9e(),xqt=/[\n\r\u2028\u2029]/g;I9e.exports=function(e){var t=_qt(e);return t===null?"<Non-coercible to string value>":(t.length>100&&(t=t.slice(0,99)+"\u2026"),t=t.replace(xqt,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 EY=ye((hyr,z9e)=>{"use strict";var D9e=$2(),bqt=oz(),wqt=k9e(),Tqt=R9e(),F9e=function(e,t){return e.replace("%v",Tqt(t))};z9e.exports=function(e,t,r){if(!bqt(r))throw new TypeError(F9e(t,e));if(!D9e(e)){if("default"in r)return r.default;if(r.isOptional)return null}var n=wqt(r.errorMessage);throw D9e(n)||(n=t),new TypeError(F9e(n,e))}});var q9e=ye((dyr,O9e)=>{"use strict";var Aqt=EY(),Sqt=$2();O9e.exports=function(e){return Sqt(e)?e:Aqt(e,"Cannot use %v",arguments[1])}});var N9e=ye((vyr,B9e)=>{"use strict";var Mqt=EY(),Eqt=_Y();B9e.exports=function(e){return Eqt(e)?e:Mqt(e,"%v is not a plain function",arguments[1])}});var V9e=ye((pyr,U9e)=>{"use strict";U9e.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 H9e=ye((gyr,G9e)=>{"use strict";var Cqt=Object.prototype.toString,kqt=RegExp.prototype.test.bind(/^[object [A-Za-z0-9]*Function]$/);G9e.exports=function(e){return typeof e=="function"&&kqt(Cqt.call(e))}});var W9e=ye((myr,j9e)=>{"use strict";j9e.exports=function(){var e=Math.sign;return typeof e!="function"?!1:e(10)===1&&e(-20)===-1}});var Z9e=ye((yyr,X9e)=>{"use strict";X9e.exports=function(e){return e=Number(e),isNaN(e)||e===0?e:e>0?1:-1}});var K9e=ye((_yr,Y9e)=>{"use strict";Y9e.exports=W9e()()?Math.sign:Z9e()});var $9e=ye((xyr,J9e)=>{"use strict";var Lqt=K9e(),Pqt=Math.abs,Iqt=Math.floor;J9e.exports=function(e){return isNaN(e)?0:(e=Number(e),e===0||!isFinite(e)?e:Lqt(e)*Iqt(Pqt(e)))}});var eOe=ye((byr,Q9e)=>{"use strict";var Rqt=$9e(),Dqt=Math.max;Q9e.exports=function(e){return Dqt(0,Rqt(e))}});var nOe=ye((wyr,iOe)=>{"use strict";var Fqt=ux().iterator,zqt=mC(),Oqt=H9e(),qqt=eOe(),tOe=u5(),Bqt=i1(),Nqt=lx(),Uqt=yC(),rOe=Array.isArray,CY=Function.prototype.call,Q2={configurable:!0,enumerable:!0,writable:!0,value:null},kY=Object.defineProperty;iOe.exports=function(e){var t=arguments[1],r=arguments[2],n,i,a,o,s,l,u,c,f,h;if(e=Object(Bqt(e)),Nqt(t)&&tOe(t),!this||this===Array||!Oqt(this)){if(!t){if(zqt(e))return s=e.length,s!==1?Array.apply(null,e):(o=new Array(1),o[0]=e[0],o);if(rOe(e)){for(o=new Array(s=e.length),i=0;i<s;++i)o[i]=e[i];return o}}o=[]}else n=this;if(!rOe(e)){if((f=e[Fqt])!==void 0){for(u=tOe(f).call(e),n&&(o=new n),c=u.next(),i=0;!c.done;)h=t?CY.call(t,r,c.value,i):c.value,n?(Q2.value=h,kY(o,i,Q2)):o[i]=h,c=u.next(),++i;s=i}else if(Uqt(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?CY.call(t,r,h,a):h,n?(Q2.value=h,kY(o,a,Q2)):o[a]=h,++a;s=a}}if(s===void 0)for(s=qqt(e.length),n&&(o=new n(s)),i=0;i<s;++i)h=t?CY.call(t,r,e[i],i):e[i],n?(Q2.value=h,kY(o,i,Q2)):o[i]=h;return n&&(Q2.value=null,o.length=s),o}});var oOe=ye((Tyr,aOe)=>{"use strict";aOe.exports=V9e()()?Array.from:nOe()});var lOe=ye((Ayr,sOe)=>{"use strict";var Vqt=oOe(),Gqt=sz(),Hqt=i1();sOe.exports=function(e){var t=Object(Hqt(e)),r=arguments[1],n=Object(arguments[2]);if(t!==e&&!r)return t;var i={};return r?Vqt(r,function(a){(n.ensure||a in e)&&(i[a]=e[a])}):Gqt(i,e),i}});var fOe=ye((Syr,cOe)=>{"use strict";var jqt=u5(),Wqt=i1(),Xqt=Function.prototype.bind,uOe=Function.prototype.call,Zqt=Object.keys,Yqt=Object.prototype.propertyIsEnumerable;cOe.exports=function(e,t){return function(r,n){var i,a=arguments[2],o=arguments[3];return r=Object(Wqt(r)),jqt(n),i=Zqt(r),o&&i.sort(typeof o=="function"?Xqt.call(o,r):void 0),typeof e!="function"&&(e=i[e]),uOe.call(e,i,function(s,l){return Yqt.call(r,s)?uOe.call(n,a,r[s],s,r,l):t})}}});var dOe=ye((Myr,hOe)=>{"use strict";hOe.exports=fOe()("forEach")});var pOe=ye((Eyr,vOe)=>{"use strict";var Kqt=u5(),Jqt=dOe(),$qt=Function.prototype.call;vOe.exports=function(e,t){var r={},n=arguments[2];return Kqt(t),Jqt(e,function(i,a,o,s){r[a]=$qt.call(t,n,i,a,o,s)}),r}});var _Oe=ye((Cyr,yOe)=>{"use strict";var Qqt=$2(),eBt=q9e(),gOe=N9e(),tBt=lOe(),rBt=xY(),iBt=pOe(),nBt=Function.prototype.bind,aBt=Object.defineProperty,oBt=Object.prototype.hasOwnProperty,mOe;mOe=function(e,t,r){var n=eBt(t)&&gOe(t.value),i;return i=tBt(t),delete i.writable,delete i.value,i.get=function(){return!r.overwriteDefinition&&oBt.call(this,e)?n:(t.value=nBt.call(n,r.resolveContext?r.resolveContext(this):this),aBt(this,e,t),this[e])},i};yOe.exports=function(e){var t=rBt(arguments[1]);return Qqt(t.resolveContext)&&gOe(t.resolveContext),iBt(e,function(r,n){return mOe(n,r,t)})}});var LY=ye((kyr,TOe)=>{"use strict";var sBt=M9e(),lBt=sz(),uBt=u5(),cBt=i1(),Op=n1(),fBt=_Oe(),xOe=ux(),bOe=Object.defineProperty,wOe=Object.defineProperties,bC;TOe.exports=bC=function(e,t){if(!(this instanceof bC))throw new TypeError("Constructor requires 'new'");wOe(this,{__list__:Op("w",cBt(e)),__context__:Op("w",t),__nextIndex__:Op("w",0)}),t&&(uBt(t.on),t.on("_add",this._onAdd),t.on("_delete",this._onDelete),t.on("_clear",this._onClear))};delete bC.prototype.constructor;wOe(bC.prototype,lBt({_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[xOe.toStringTag]||"Object")+"]"})},fBt({_onAdd:Op(function(e){if(!(e>=this.__nextIndex__)){if(++this.__nextIndex__,!this.__redo__){bOe(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__&&sBt.call(this.__redo__),this.__nextIndex__=0})})));bOe(bC.prototype,xOe.iterator,Op(function(){return this}))});var COe=ye((Lyr,EOe)=>{"use strict";var AOe=az(),SOe=wY(),PY=n1(),hBt=ux(),IY=LY(),MOe=Object.defineProperty,c5;c5=EOe.exports=function(e,t){if(!(this instanceof c5))throw new TypeError("Constructor requires 'new'");IY.call(this,e),t?SOe.call(t,"key+value")?t="key+value":SOe.call(t,"key")?t="key":t="value":t="value",MOe(this,"__kind__",PY("",t))};AOe&&AOe(c5,IY);delete c5.prototype.constructor;c5.prototype=Object.create(IY.prototype,{_resolve:PY(function(e){return this.__kind__==="value"?this.__list__[e]:this.__kind__==="key+value"?[e,this.__list__[e]]:e})});MOe(c5.prototype,hBt.toStringTag,PY("c","Array Iterator"))});var IOe=ye((Pyr,POe)=>{"use strict";var kOe=az(),fz=n1(),dBt=ux(),RY=LY(),LOe=Object.defineProperty,f5;f5=POe.exports=function(e){if(!(this instanceof f5))throw new TypeError("Constructor requires 'new'");e=String(e),RY.call(this,e),LOe(this,"__length__",fz("",e.length))};kOe&&kOe(f5,RY);delete f5.prototype.constructor;f5.prototype=Object.create(RY.prototype,{_next:fz(function(){if(this.__list__){if(this.__nextIndex__<this.__length__)return this.__nextIndex__++;this._unBind()}}),_resolve:fz(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)})});LOe(f5.prototype,dBt.toStringTag,fz("c","String Iterator"))});var DOe=ye((Iyr,ROe)=>{"use strict";var vBt=mC(),pBt=lx(),gBt=yC(),mBt=ux().iterator,yBt=Array.isArray;ROe.exports=function(e){return pBt(e)?yBt(e)||gBt(e)||vBt(e)?!0:typeof e[mBt]=="function":!1}});var zOe=ye((Ryr,FOe)=>{"use strict";var _Bt=DOe();FOe.exports=function(e){if(!_Bt(e))throw new TypeError(e+" is not iterable");return e}});var DY=ye((Dyr,BOe)=>{"use strict";var xBt=mC(),bBt=yC(),OOe=COe(),wBt=IOe(),TBt=zOe(),qOe=ux().iterator;BOe.exports=function(e){return typeof TBt(e)[qOe]=="function"?e[qOe]():xBt(e)?new OOe(e):bBt(e)?new wBt(e):new OOe(e)}});var UOe=ye((Fyr,NOe)=>{"use strict";var ABt=mC(),SBt=u5(),MBt=yC(),EBt=DY(),CBt=Array.isArray,FY=Function.prototype.call,kBt=Array.prototype.some;NOe.exports=function(e,t){var r,n=arguments[2],i,a,o,s,l,u,c;if(CBt(e)||ABt(e)?r="array":MBt(e)?r="string":e=EBt(e),SBt(t),a=function(){o=!0},r==="array"){kBt.call(e,function(f){return FY.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])),FY.call(t,n,u,a),!o);++s);return}for(i=e.next();!i.done;){if(FY.call(t,n,i.value,a),o)return;i=e.next()}}});var GOe=ye((zyr,VOe)=>{"use strict";VOe.exports=function(){return typeof WeakMap!="function"?!1:Object.prototype.toString.call(new WeakMap)==="[object WeakMap]"}()});var WOe=ye((Oyr,jOe)=>{"use strict";var LBt=lx(),dz=az(),hz=_7e(),PBt=i1(),IBt=b7e(),a1=n1(),RBt=DY(),DBt=UOe(),FBt=ux().toStringTag,HOe=GOe(),zBt=Array.isArray,OY=Object.defineProperty,zY=Object.prototype.hasOwnProperty,OBt=Object.getPrototypeOf,cx;jOe.exports=cx=function(){var e=arguments[0],t;if(!(this instanceof cx))throw new TypeError("Constructor requires 'new'");return t=HOe&&dz&&WeakMap!==cx?dz(new WeakMap,OBt(this)):this,LBt(e)&&(zBt(e)||(e=RBt(e))),OY(t,"__weakMapData__",a1("c","$weakMap$"+IBt())),e&&DBt(e,function(r){PBt(r),t.set(r[0],r[1])}),t};HOe&&(dz&&dz(cx,WeakMap),cx.prototype=Object.create(WeakMap.prototype,{constructor:a1(cx)}));Object.defineProperties(cx.prototype,{delete:a1(function(e){return zY.call(hz(e),this.__weakMapData__)?(delete e[this.__weakMapData__],!0):!1}),get:a1(function(e){if(zY.call(hz(e),this.__weakMapData__))return e[this.__weakMapData__]}),has:a1(function(e){return zY.call(hz(e),this.__weakMapData__)}),set:a1(function(e,t){return OY(hz(e),this.__weakMapData__,a1("c",t)),this}),toString:a1(function(){return"[object WeakMap]"})});OY(cx.prototype,FBt,a1("c","WeakMap"))});var qY=ye((qyr,XOe)=>{"use strict";XOe.exports=o7e()()?WeakMap:WOe()});var YOe=ye((Byr,ZOe)=>{"use strict";ZOe.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 UY=ye((Nyr,$Oe)=>{"use strict";var vz=$_(),qBt=j2(),NY=Fh(),BBt=Xm(),NBt=W2(),KOe=r7e(),UBt=n7e(),{float32:VBt,fract32:BY}=KF(),GBt=qY(),JOe=e5(),HBt=YOe(),jBt=`
|
||
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.;
|
||
}
|
||
`,WBt=`
|
||
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;
|
||
}
|
||
`,XBt=`
|
||
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;
|
||
}
|
||
`,ZBt=`
|
||
precision highp float;
|
||
varying vec4 fragColor;
|
||
|
||
void main() {
|
||
gl_FragColor = fragColor;
|
||
}
|
||
`,YBt=`
|
||
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;
|
||
}
|
||
}
|
||
}
|
||
`,KBt=`
|
||
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;
|
||
}
|
||
`;$Oe.exports=Wc;function Wc(e,t){if(!(this instanceof Wc))return new Wc(e,t);if(typeof e=="function"?(t||(t={}),t.regl=e):t=e,t.length&&(t.positions=t),e=t.regl,!e.hasExtension("ANGLE_instanced_arrays"))throw Error("regl-error2d: `ANGLE_instanced_arrays` extension should be enabled");this.gl=e._gl,this.regl=e,this.passes=[],this.shaders=Wc.shaders.has(e)?Wc.shaders.get(e):Wc.shaders.set(e,Wc.createShaders(e)).get(e),this.update(t)}Wc.dashMult=2;Wc.maxPatternLength=256;Wc.precisionThreshold=3e6;Wc.maxPoints=1e4;Wc.maxLines=2048;Wc.shaders=new GBt;Wc.createShaders=function(e){let t=e.buffer({usage:"static",type:"float",data:[0,1,0,0,1,1,1,0]}),r={primitive:"triangle strip",instances:e.prop("count"),count:4,offset:0,uniforms:{miterMode:(o,s)=>s.join==="round"?2:1,miterLimit:e.prop("miterLimit"),scale:e.prop("scale"),scaleFract:e.prop("scaleFract"),translateFract:e.prop("translateFract"),translate:e.prop("translate"),thickness:e.prop("thickness"),dashTexture:e.prop("dashTexture"),opacity:e.prop("opacity"),pixelRatio:e.context("pixelRatio"),id:e.prop("id"),dashLength:e.prop("dashLength"),viewport:(o,s)=>[s.viewport.x,s.viewport.y,o.viewportWidth,o.viewportHeight],depth:e.prop("depth")},blend:{enable:!0,color:[0,0,0,0],equation:{rgb:"add",alpha:"add"},func:{srcRGB:"src alpha",dstRGB:"one minus src alpha",srcAlpha:"one minus dst alpha",dstAlpha:"one"}},depth:{enable:(o,s)=>!s.overlay},stencil:{enable:!1},scissor:{enable:!0,box:e.prop("viewport")},viewport:e.prop("viewport")},n=e(NY({vert:jBt,frag:WBt,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(NY({cull:{enable:!0,face:"back"},vert:YBt,frag:KBt,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:XBt,frag:ZBt,uniforms:{scale:e.prop("scale"),color:e.prop("fill"),scaleFract:e.prop("scaleFract"),translateFract:e.prop("translateFract"),translate:e.prop("translate"),opacity:e.prop("opacity"),pixelRatio:e.context("pixelRatio"),id:e.prop("id"),viewport:(o,s)=>[s.viewport.x,s.viewport.y,o.viewportWidth,o.viewportHeight]},attributes:{position:{buffer:e.prop("positionBuffer"),stride:8,offset:8},positionFract:{buffer:e.prop("positionFractBuffer"),stride:8,offset:8}},blend:r.blend,depth:{enable:!1},scissor:r.scissor,stencil:r.stencil,viewport:r.viewport}),rect:n,miter:i}};Wc.defaults={dashes:null,join:"miter",miterLimit:1,thickness:10,cap:"square",color:"black",opacity:1,overlay:!1,viewport:null,range:null,close:!1,fill:null};Wc.prototype.render=function(...e){e.length&&this.update(...e),this.draw()};Wc.prototype.draw=function(...e){return(e.length?e:this.passes).forEach((t,r)=>{if(t&&Array.isArray(t))return this.draw(...t);typeof t=="number"&&(t=this.passes[t]),t&&t.count>1&&t.opacity&&(this.regl._refresh(),t.fill&&t.triangles&&t.triangles.length>2&&this.shaders.fill(t),t.thickness&&(t.scale[0]*t.viewport.width>Wc.precisionThreshold||t.scale[1]*t.viewport.height>Wc.precisionThreshold?this.shaders.rect(t):t.join==="rect"||!t.join&&(t.thickness<=2||t.count>=Wc.maxPoints)?this.shaders.rect(t):this.shaders.miter(t)))}),this};Wc.prototype.update=function(e){if(!e)return;e.length!=null?typeof e[0]=="number"&&(e=[{positions:e}]):Array.isArray(e)||(e=[e]);let{regl:t,gl:r}=this;if(e.forEach((i,a)=>{let o=this.passes[a];if(i!==void 0){if(i===null){this.passes[a]=null;return}if(typeof i[0]=="number"&&(i={positions:i}),i=BBt(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=NY({},Wc.defaults,i)),i.thickness!=null&&(o.thickness=parseFloat(i.thickness)),i.opacity!=null&&(o.opacity=parseFloat(i.opacity)),i.miterLimit!=null&&(o.miterLimit=parseFloat(i.miterLimit)),i.overlay!=null&&(o.overlay=!!i.overlay,a<Wc.maxLines&&(o.depth=2*(Wc.maxLines-1-a%Wc.maxLines)/Wc.maxLines-1)),i.join!=null&&(o.join=i.join),i.hole!=null&&(o.hole=i.hole),i.fill!=null&&(o.fill=i.fill?vz(i.fill,"uint8"):null),i.viewport!=null&&(o.viewport=JOe(i.viewport)),o.viewport||(o.viewport=JOe([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=NBt(i.positions,"float64"),c=o.count=Math.floor(u.length/2);let f=o.bounds=qBt(u,2);if(o.fill){let v=[],x={},b=0;for(let p=0,C=0,E=o.count;p<E;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[C++]=A,v[C++]=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-_),C=[],E=0,A=o.hole!=null?o.hole[0]:null;if(A!=null){let L=HBt(p,_=>_>=A);p=p.slice(0,L),p.push(A)}for(let L=0;L<p.length;L++){let _=v.slice(E*2,p[L]*2).concat(A?v.slice(A*2):[]),k=(o.hole||[]).map(g=>g-A+(p[L]-E)),M=KOe(_,k);M=M.map(g=>g+E+(g+E<p[L]?0:A-p[L])),C.push(...M),E=p[L]+1}for(let L=0,_=C.length;L<_;L++)x[C[L]]!=null&&(C[L]=x[C[L]]);o.triangles=C}else{let p=KOe(v,o.hole||[]);for(let C=0,E=p.length;C<E;C++)x[p[C]]!=null&&(p[C]=x[p[C]]);o.triangles=p}}let h=new Float64Array(u);UBt(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=VBt(d);o.positionBuffer(s);var l=BY(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=BY(o.scale),o.translateFract=BY(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*Wc.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]*Wc.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=vz(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=vz(c[h],"uint8");f.set(d,h*4)}f.set(vz(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};Wc.prototype.destroy=function(){return this.passes.forEach(e=>{e.colorBuffer.destroy(),e.positionBuffer.destroy(),e.dashTexture.destroy()}),this.passes.length=0,this}});var iqe=ye((Uyr,rqe)=>{"use strict";var JBt=j2(),$Bt=$_(),QBt=lY(),eNt=Xm(),QOe=Fh(),eqe=W2(),{float32:tNt,fract32:VY}=KF();rqe.exports=rNt;var tqe=[[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 rNt(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:tqe}),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:tqe.length}),QOe(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,C)=>{if(p){if(b&&(b[C]?p.draw=!0:p.draw=!1),!p.draw){p.draw=!0;return}d(C)}})}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,C=0;if(f.groups=c=b.map((L,_)=>{let k=c[_];if(L)typeof L=="function"?L={after:L}:typeof L[0]=="number"&&(L={positions:L});else return k;return L=eNt(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"}),k||(c[_]=k={id:_,scale:null,translate:null,scaleFract:null,translateFract:null,draw:!0},L=QOe({},u,L)),QBt(k,L,[{lineWidth:M=>+M*.5,capSize:M=>+M*.5,opacity:parseFloat,errors:M=>(M=eqe(M),C+=M.length,M),positions:(M,g)=>(M=eqe(M,"float64"),g.count=Math.floor(M.length/2),g.bounds=JBt(M,2),g.offset=p,p+=g.count,M)},{color:(M,g)=>{let P=g.count;if(M||(M="transparent"),!Array.isArray(M)||typeof M[0]=="number"){let z=M;M=Array(P);for(let O=0;O<P;O++)M[O]=z}if(M.length<P)throw Error("Not enough colors");let T=new Uint8Array(P*4);for(let z=0;z<P;z++){let O=$Bt(M[z],"uint8");T.set(O,z*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=VY(g.scale),g.translateFract=VY(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}}]),k}),p||C){let L=c.reduce((g,P,T)=>g+(P?P.count:0),0),_=new Float64Array(L*2),k=new Uint8Array(L*4),M=new Float32Array(L*4);c.forEach((g,P)=>{if(!g)return;let{positions:T,count:z,offset:O,color:V,errors:G}=g;z&&(k.set(V,O*4),M.set(G,O*4),_.set(T,O*2))});var E=tNt(_);i(E);var A=VY(_,E);a(A),o(k),s(M)}}function x(){i.destroy(),a.destroy(),o.destroy(),s.destroy(),l.destroy()}}});var oqe=ye((Vyr,aqe)=>{var nqe=/[\'\"]/;aqe.exports=function(t){return t?(nqe.test(t.charAt(0))&&(t=t.substr(1)),nqe.test(t.charAt(t.length-1))&&(t=t.substr(0,t.length-1)),t):""}});var GY=ye(()=>{});var HY=ye(()=>{});var jY=ye(()=>{});var WY=ye(()=>{});var XY=ye(()=>{});var cqe=ye((Qyr,uqe)=>{"use strict";function sqe(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 lqe(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 ZY(e,t){return Array.isArray(e)?lqe(e,t):sqe(e,t)}ZY.parse=sqe;ZY.stringify=lqe;uqe.exports=ZY});var dqe=ye((e1r,hqe)=>{"use strict";var fqe=cqe();hqe.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=fqe.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]=fqe.stringify(i,{flat:!0});return o}});var vqe=ye(()=>{});var YY=ye((i1r,pqe)=>{"use strict";var iNt=vqe();pqe.exports={isSize:function(t){return/^[\d\.]/.test(t)||t.indexOf("/")!==-1||iNt.indexOf(t)!==-1}}});var _qe=ye((n1r,yqe)=>{"use strict";var nNt=oqe(),aNt=GY(),oNt=HY(),sNt=jY(),lNt=WY(),uNt=XY(),KY=dqe(),cNt=YY().isSize;yqe.exports=mqe;var wC=mqe.cache={};function mqe(e){if(typeof e!="string")throw new Error("Font argument must be a string.");if(wC[e])return wC[e];if(e==="")throw new Error("Cannot parse an empty string.");if(oNt.indexOf(e)!==-1)return wC[e]={system:e};for(var t={style:"normal",variant:"normal",weight:"normal",stretch:"normal",lineHeight:"normal",size:"1rem",family:["serif"]},r=KY(e,/\s+/),n;n=r.shift();){if(aNt.indexOf(n)!==-1)return["style","variant","weight","stretch"].forEach(function(a){t[a]=n}),wC[e]=t;if(lNt.indexOf(n)!==-1){t.style=n;continue}if(n==="normal"||n==="small-caps"){t.variant=n;continue}if(uNt.indexOf(n)!==-1){t.stretch=n;continue}if(sNt.indexOf(n)!==-1){t.weight=n;continue}if(cNt(n)){var i=KY(n,"/");if(t.size=i[0],i[1]!=null?t.lineHeight=gqe(i[1]):r[0]==="/"&&(r.shift(),t.lineHeight=gqe(r.shift())),!r.length)throw new Error("Missing required font-family.");return t.family=KY(r.join(" "),/\s*,\s*/).map(nNt),wC[e]=t}throw new Error("Unknown or unsupported font token: "+n)}throw new Error("Missing required font-size.")}function gqe(e){var t=parseFloat(e);return t.toString()===e?t:e}});var $Y=ye((a1r,xqe)=>{"use strict";var fNt=Xm(),hNt=YY().isSize,dNt=AC(GY()),vNt=AC(HY()),pNt=AC(jY()),gNt=AC(WY()),mNt=AC(XY()),yNt={normal:1,"small-caps":1},_Nt={serif:1,"sans-serif":1,monospace:1,cursive:1,fantasy:1,"system-ui":1},JY={style:"normal",variant:"normal",weight:"normal",stretch:"normal",size:"1rem",lineHeight:"normal",family:"serif"};xqe.exports=function(t){if(t=fNt(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&&TC(t.system,vNt),t.system;if(TC(t.style,gNt),TC(t.variant,yNt),TC(t.weight,pNt),TC(t.stretch,mNt),t.size==null&&(t.size=JY.size),typeof t.size=="number"&&(t.size+="px"),!hNt)throw Error("Bad size value `"+t.size+"`");t.family||(t.family=JY.family),Array.isArray(t.family)&&(t.family.length||(t.family=[JY.family]),t.family=t.family.map(function(n){return _Nt[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 TC(e,t){if(e&&!t[e]&&!dNt[e])throw Error("Unknown keyword `"+e+"`");return e}function AC(e){for(var t={},r=0;r<e.length;r++)t[e[r]]=1;return t}});var wqe=ye((o1r,bqe)=>{"use strict";bqe.exports={parse:_qe(),stringify:$Y()}});var Tqe=ye((QY,eK)=>{(function(e,t){typeof QY=="object"&&typeof eK!="undefined"?eK.exports=t():e.createREGL=t()})(QY,function(){"use strict";var e=function(Ee,xt){for(var zt=Object.keys(xt),Ir=0;Ir<zt.length;++Ir)Ee[zt[Ir]]=xt[zt[Ir]];return Ee},t=0,r=0,n=5,i=6;function a(Ee,xt){this.id=t++,this.type=Ee,this.data=xt}function o(Ee){return Ee.replace(/\\/g,"\\\\").replace(/"/g,'\\"')}function s(Ee){if(Ee.length===0)return[];var xt=Ee.charAt(0),zt=Ee.charAt(Ee.length-1);if(Ee.length>1&&xt===zt&&(xt==='"'||xt==="'"))return['"'+o(Ee.substr(1,Ee.length-2))+'"'];var Ir=/\[(false|true|null|\d+|'[^']*'|"[^"]*")\]/.exec(Ee);if(Ir)return s(Ee.substr(0,Ir.index)).concat(s(Ir[1])).concat(s(Ee.substr(Ir.index+Ir[0].length)));var Hr=Ee.split(".");if(Hr.length===1)return['"'+o(Ee)+'"'];for(var Br=[],Vr=0;Vr<Hr.length;++Vr)Br=Br.concat(s(Hr[Vr]));return Br}function l(Ee){return"["+s(Ee).join("][")+"]"}function u(Ee,xt){return new a(Ee,l(xt+""))}function c(Ee){return typeof Ee=="function"&&!Ee._reglType||Ee instanceof a}function f(Ee,xt){if(typeof Ee=="function")return new a(r,Ee);if(typeof Ee=="number"||typeof Ee=="boolean")return new a(n,Ee);if(Array.isArray(Ee))return new a(i,Ee.map(function(zt,Ir){return f(zt,xt+"["+Ir+"]")}));if(Ee instanceof a)return Ee}var h={DynamicVariable:a,define:u,isDynamic:c,unbox:f,accessor:l},d={next:typeof requestAnimationFrame=="function"?function(Ee){return requestAnimationFrame(Ee)}:function(Ee){return setTimeout(Ee,16)},cancel:typeof cancelAnimationFrame=="function"?function(Ee){return cancelAnimationFrame(Ee)}:clearTimeout},v=typeof performance!="undefined"&&performance.now?function(){return performance.now()}:function(){return+new Date};function x(){var Ee={"":0},xt=[""];return{id:function(zt){var Ir=Ee[zt];return Ir||(Ir=Ee[zt]=xt.length,xt.push(zt),Ir)},str:function(zt){return xt[zt]}}}function b(Ee,xt,zt){var Ir=document.createElement("canvas");e(Ir.style,{border:0,margin:0,padding:0,top:0,left:0,width:"100%",height:"100%"}),Ee.appendChild(Ir),Ee===document.body&&(Ir.style.position="absolute",e(Ee.style,{margin:0,padding:0}));function Hr(){var mi=window.innerWidth,Ni=window.innerHeight;if(Ee!==document.body){var Oi=Ir.getBoundingClientRect();mi=Oi.right-Oi.left,Ni=Oi.bottom-Oi.top}Ir.width=zt*mi,Ir.height=zt*Ni}var Br;Ee!==document.body&&typeof ResizeObserver=="function"?(Br=new ResizeObserver(function(){setTimeout(Hr)}),Br.observe(Ee)):window.addEventListener("resize",Hr,!1);function Vr(){Br?Br.disconnect():window.removeEventListener("resize",Hr),Ee.removeChild(Ir)}return Hr(),{canvas:Ir,onDestroy:Vr}}function p(Ee,xt){function zt(Ir){try{return Ee.getContext(Ir,xt)}catch(Hr){return null}}return zt("webgl")||zt("experimental-webgl")||zt("webgl-experimental")}function C(Ee){return typeof Ee.nodeName=="string"&&typeof Ee.appendChild=="function"&&typeof Ee.getBoundingClientRect=="function"}function E(Ee){return typeof Ee.drawArrays=="function"||typeof Ee.drawElements=="function"}function A(Ee){return typeof Ee=="string"?Ee.split():Ee}function L(Ee){return typeof Ee=="string"?document.querySelector(Ee):Ee}function _(Ee){var xt=Ee||{},zt,Ir,Hr,Br,Vr={},mi=[],Ni=[],Oi=typeof window=="undefined"?1:window.devicePixelRatio,Mi=!1,Hn={},Qi=function(Mr){},ji=function(){};if(typeof xt=="string"?zt=document.querySelector(xt):typeof xt=="object"&&(C(xt)?zt=xt:E(xt)?(Br=xt,Hr=Br.canvas):("gl"in xt?Br=xt.gl:"canvas"in xt?Hr=L(xt.canvas):"container"in xt&&(Ir=L(xt.container)),"attributes"in xt&&(Vr=xt.attributes),"extensions"in xt&&(mi=A(xt.extensions)),"optionalExtensions"in xt&&(Ni=A(xt.optionalExtensions)),"onDone"in xt&&(Qi=xt.onDone),"profile"in xt&&(Mi=!!xt.profile),"pixelRatio"in xt&&(Oi=+xt.pixelRatio),"cachedCode"in xt&&(Hn=xt.cachedCode))),zt&&(zt.nodeName.toLowerCase()==="canvas"?Hr=zt:Ir=zt),!Br){if(!Hr){var si=b(Ir||document.body,Qi,Oi);if(!si)return null;Hr=si.canvas,ji=si.onDestroy}Vr.premultipliedAlpha===void 0&&(Vr.premultipliedAlpha=!0),Br=p(Hr,Vr)}return Br?{gl:Br,canvas:Hr,container:Ir,extensions:mi,optionalExtensions:Ni,pixelRatio:Oi,profile:Mi,cachedCode:Hn,onDone:Qi,onDestroy:ji}:(ji(),Qi("webgl not supported, try upgrading your browser or graphics drivers http://get.webgl.org"),null)}function k(Ee,xt){var zt={};function Ir(Vr){var mi=Vr.toLowerCase(),Ni;try{Ni=zt[mi]=Ee.getExtension(mi)}catch(Oi){}return!!Ni}for(var Hr=0;Hr<xt.extensions.length;++Hr){var Br=xt.extensions[Hr];if(!Ir(Br))return xt.onDestroy(),xt.onDone('"'+Br+'" extension is not supported by the current WebGL context, try upgrading your system or a different browser'),null}return xt.optionalExtensions.forEach(Ir),{extensions:zt,restore:function(){Object.keys(zt).forEach(function(Vr){if(zt[Vr]&&!Ir(Vr))throw new Error("(regl): error restoring extension "+Vr)})}}}function M(Ee,xt){for(var zt=Array(Ee),Ir=0;Ir<Ee;++Ir)zt[Ir]=xt(Ir);return zt}var g=5120,P=5121,T=5122,z=5123,O=5124,V=5125,G=5126;function Z(Ee){for(var xt=16;xt<=1<<28;xt*=16)if(Ee<=xt)return xt;return 0}function H(Ee){var xt,zt;return xt=(Ee>65535)<<4,Ee>>>=xt,zt=(Ee>255)<<3,Ee>>>=zt,xt|=zt,zt=(Ee>15)<<2,Ee>>>=zt,xt|=zt,zt=(Ee>3)<<1,Ee>>>=zt,xt|=zt,xt|Ee>>1}function N(){var Ee=M(8,function(){return[]});function xt(Br){var Vr=Z(Br),mi=Ee[H(Vr)>>2];return mi.length>0?mi.pop():new ArrayBuffer(Vr)}function zt(Br){Ee[H(Br.byteLength)>>2].push(Br)}function Ir(Br,Vr){var mi=null;switch(Br){case g:mi=new Int8Array(xt(Vr),0,Vr);break;case P:mi=new Uint8Array(xt(Vr),0,Vr);break;case T:mi=new Int16Array(xt(2*Vr),0,Vr);break;case z:mi=new Uint16Array(xt(2*Vr),0,Vr);break;case O:mi=new Int32Array(xt(4*Vr),0,Vr);break;case V:mi=new Uint32Array(xt(4*Vr),0,Vr);break;case G:mi=new Float32Array(xt(4*Vr),0,Vr);break;default:return null}return mi.length!==Vr?mi.subarray(0,Vr):mi}function Hr(Br){zt(Br.buffer)}return{alloc:xt,free:zt,allocType:Ir,freeType:Hr}}var j=N();j.zero=N();var re=3408,oe=3410,_e=3411,Me=3412,ke=3413,me=3414,ie=3415,Se=33901,Le=33902,Ae=3379,De=3386,Pe=34921,ge=36347,Fe=36348,ce=35661,Ze=35660,ct=34930,pt=36349,Wt=34076,st=34024,lt=7936,Gt=7937,Nt=7938,$t=35724,sr=34047,wr=36063,ur=34852,Qe=3553,Et=34067,er=34069,Ut=33984,Ft=6408,bt=5126,yt=5121,Yt=36160,lr=36053,Tr=36064,Rr=16384,ei=function(Ee,xt){var zt=1;xt.ext_texture_filter_anisotropic&&(zt=Ee.getParameter(sr));var Ir=1,Hr=1;xt.webgl_draw_buffers&&(Ir=Ee.getParameter(ur),Hr=Ee.getParameter(wr));var Br=!!xt.oes_texture_float;if(Br){var Vr=Ee.createTexture();Ee.bindTexture(Qe,Vr),Ee.texImage2D(Qe,0,Ft,1,1,0,Ft,bt,null);var mi=Ee.createFramebuffer();if(Ee.bindFramebuffer(Yt,mi),Ee.framebufferTexture2D(Yt,Tr,Qe,Vr,0),Ee.bindTexture(Qe,null),Ee.checkFramebufferStatus(Yt)!==lr)Br=!1;else{Ee.viewport(0,0,1,1),Ee.clearColor(1,0,0,1),Ee.clear(Rr);var Ni=j.allocType(bt,4);Ee.readPixels(0,0,1,1,Ft,bt,Ni),Ee.getError()?Br=!1:(Ee.deleteFramebuffer(mi),Ee.deleteTexture(Vr),Br=Ni[0]===1),j.freeType(Ni)}}var Oi=typeof navigator!="undefined"&&(/MSIE/.test(navigator.userAgent)||/Trident\//.test(navigator.appVersion)||/Edge/.test(navigator.userAgent)),Mi=!0;if(!Oi){var Hn=Ee.createTexture(),Qi=j.allocType(yt,36);Ee.activeTexture(Ut),Ee.bindTexture(Et,Hn),Ee.texImage2D(er,0,Ft,3,3,0,Ft,yt,Qi),j.freeType(Qi),Ee.bindTexture(Et,null),Ee.deleteTexture(Hn),Mi=!Ee.getError()}return{colorBits:[Ee.getParameter(oe),Ee.getParameter(_e),Ee.getParameter(Me),Ee.getParameter(ke)],depthBits:Ee.getParameter(me),stencilBits:Ee.getParameter(ie),subpixelBits:Ee.getParameter(re),extensions:Object.keys(xt).filter(function(ji){return!!xt[ji]}),maxAnisotropic:zt,maxDrawbuffers:Ir,maxColorAttachments:Hr,pointSizeDims:Ee.getParameter(Se),lineWidthDims:Ee.getParameter(Le),maxViewportDims:Ee.getParameter(De),maxCombinedTextureUnits:Ee.getParameter(ce),maxCubeMapSize:Ee.getParameter(Wt),maxRenderbufferSize:Ee.getParameter(st),maxTextureUnits:Ee.getParameter(ct),maxTextureSize:Ee.getParameter(Ae),maxAttributes:Ee.getParameter(Pe),maxVertexUniforms:Ee.getParameter(ge),maxVertexTextureUnits:Ee.getParameter(Ze),maxVaryingVectors:Ee.getParameter(Fe),maxFragmentUniforms:Ee.getParameter(pt),glsl:Ee.getParameter($t),renderer:Ee.getParameter(Gt),vendor:Ee.getParameter(lt),version:Ee.getParameter(Nt),readFloat:Br,npotTextureCube:Mi}},Wr=function(Ee){return Ee instanceof Uint8Array||Ee instanceof Uint16Array||Ee instanceof Uint32Array||Ee instanceof Int8Array||Ee instanceof Int16Array||Ee instanceof Int32Array||Ee instanceof Float32Array||Ee instanceof Float64Array||Ee instanceof Uint8ClampedArray};function Ur(Ee){return!!Ee&&typeof Ee=="object"&&Array.isArray(Ee.shape)&&Array.isArray(Ee.stride)&&typeof Ee.offset=="number"&&Ee.shape.length===Ee.stride.length&&(Array.isArray(Ee.data)||Wr(Ee.data))}var dt=function(Ee){return Object.keys(Ee).map(function(xt){return Ee[xt]})},Ge={shape:xe,flatten:Ie};function Je(Ee,xt,zt){for(var Ir=0;Ir<xt;++Ir)zt[Ir]=Ee[Ir]}function je(Ee,xt,zt,Ir){for(var Hr=0,Br=0;Br<xt;++Br)for(var Vr=Ee[Br],mi=0;mi<zt;++mi)Ir[Hr++]=Vr[mi]}function $e(Ee,xt,zt,Ir,Hr,Br){for(var Vr=Br,mi=0;mi<xt;++mi)for(var Ni=Ee[mi],Oi=0;Oi<zt;++Oi)for(var Mi=Ni[Oi],Hn=0;Hn<Ir;++Hn)Hr[Vr++]=Mi[Hn]}function wt(Ee,xt,zt,Ir,Hr){for(var Br=1,Vr=zt+1;Vr<xt.length;++Vr)Br*=xt[Vr];var mi=xt[zt];if(xt.length-zt===4){var Ni=xt[zt+1],Oi=xt[zt+2],Mi=xt[zt+3];for(Vr=0;Vr<mi;++Vr)$e(Ee[Vr],Ni,Oi,Mi,Ir,Hr),Hr+=Br}else for(Vr=0;Vr<mi;++Vr)wt(Ee[Vr],xt,zt+1,Ir,Hr),Hr+=Br}function Ie(Ee,xt,zt,Ir){var Hr=1;if(xt.length)for(var Br=0;Br<xt.length;++Br)Hr*=xt[Br];else Hr=0;var Vr=Ir||j.allocType(zt,Hr);switch(xt.length){case 0:break;case 1:Je(Ee,xt[0],Vr);break;case 2:je(Ee,xt[0],xt[1],Vr);break;case 3:$e(Ee,xt[0],xt[1],xt[2],Vr,0);break;default:wt(Ee,xt,0,Vr,0)}return Vr}function xe(Ee){for(var xt=[],zt=Ee;zt.length;zt=zt[0])xt.push(zt.length);return xt}var Ce={"[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},vt=5120,nr=5122,ir=5124,pr=5121,oi=5123,di=5125,Jr=5126,fi=5126,Hi={int8:vt,int16:nr,int32:ir,uint8:pr,uint16:oi,uint32:di,float:Jr,float32:fi},Pn=35048,wn=35040,pn={dynamic:Pn,stream:wn,static:35044},Vn=Ge.flatten,kn=Ge.shape,ea=35044,ua=35040,Vt=5121,_t=5126,tr=[];tr[5120]=1,tr[5122]=2,tr[5124]=4,tr[5121]=1,tr[5123]=2,tr[5125]=4,tr[5126]=4;function ar(Ee){return Ce[Object.prototype.toString.call(Ee)]|0}function Er(Ee,xt){for(var zt=0;zt<xt.length;++zt)Ee[zt]=xt[zt]}function Zr(Ee,xt,zt,Ir,Hr,Br,Vr){for(var mi=0,Ni=0;Ni<zt;++Ni)for(var Oi=0;Oi<Ir;++Oi)Ee[mi++]=xt[Hr*Ni+Br*Oi+Vr]}function ri(Ee,xt,zt,Ir){var Hr=0,Br={};function Vr(Mr){this.id=Hr++,this.buffer=Ee.createBuffer(),this.type=Mr,this.usage=ea,this.byteLength=0,this.dimension=1,this.dtype=Vt,this.persistentData=null,zt.profile&&(this.stats={size:0})}Vr.prototype.bind=function(){Ee.bindBuffer(this.type,this.buffer)},Vr.prototype.destroy=function(){Qi(this)};var mi=[];function Ni(Mr,Yr){var xi=mi.pop();return xi||(xi=new Vr(Mr)),xi.bind(),Hn(xi,Yr,ua,0,1,!1),xi}function Oi(Mr){mi.push(Mr)}function Mi(Mr,Yr,xi){Mr.byteLength=Yr.byteLength,Ee.bufferData(Mr.type,Yr,xi)}function Hn(Mr,Yr,xi,Ii,ci,nn){var Xi;if(Mr.usage=xi,Array.isArray(Yr)){if(Mr.dtype=Ii||_t,Yr.length>0){var qn;if(Array.isArray(Yr[0])){Xi=kn(Yr);for(var vi=1,li=1;li<Xi.length;++li)vi*=Xi[li];Mr.dimension=vi,qn=Vn(Yr,Xi,Mr.dtype),Mi(Mr,qn,xi),nn?Mr.persistentData=qn:j.freeType(qn)}else if(typeof Yr[0]=="number"){Mr.dimension=ci;var mn=j.allocType(Mr.dtype,Yr.length);Er(mn,Yr),Mi(Mr,mn,xi),nn?Mr.persistentData=mn:j.freeType(mn)}else Wr(Yr[0])&&(Mr.dimension=Yr[0].length,Mr.dtype=Ii||ar(Yr[0])||_t,qn=Vn(Yr,[Yr.length,Yr[0].length],Mr.dtype),Mi(Mr,qn,xi),nn?Mr.persistentData=qn:j.freeType(qn))}}else if(Wr(Yr))Mr.dtype=Ii||ar(Yr),Mr.dimension=ci,Mi(Mr,Yr,xi),nn&&(Mr.persistentData=new Uint8Array(new Uint8Array(Yr.buffer)));else if(Ur(Yr)){Xi=Yr.shape;var Ki=Yr.stride,Ui=Yr.offset,Bi=0,vn=0,Un=0,na=0;Xi.length===1?(Bi=Xi[0],vn=1,Un=Ki[0],na=0):Xi.length===2&&(Bi=Xi[0],vn=Xi[1],Un=Ki[0],na=Ki[1]),Mr.dtype=Ii||ar(Yr.data)||_t,Mr.dimension=vn;var Yi=j.allocType(Mr.dtype,Bi*vn);Zr(Yi,Yr.data,Bi,vn,Un,na,Ui),Mi(Mr,Yi,xi),nn?Mr.persistentData=Yi:j.freeType(Yi)}else Yr instanceof ArrayBuffer&&(Mr.dtype=Vt,Mr.dimension=ci,Mi(Mr,Yr,xi),nn&&(Mr.persistentData=new Uint8Array(new Uint8Array(Yr))))}function Qi(Mr){xt.bufferCount--,Ir(Mr);var Yr=Mr.buffer;Ee.deleteBuffer(Yr),Mr.buffer=null,delete Br[Mr.id]}function ji(Mr,Yr,xi,Ii){xt.bufferCount++;var ci=new Vr(Yr);Br[ci.id]=ci;function nn(vi){var li=ea,mn=null,Ki=0,Ui=0,Bi=1;return Array.isArray(vi)||Wr(vi)||Ur(vi)||vi instanceof ArrayBuffer?mn=vi:typeof vi=="number"?Ki=vi|0:vi&&("data"in vi&&(mn=vi.data),"usage"in vi&&(li=pn[vi.usage]),"type"in vi&&(Ui=Hi[vi.type]),"dimension"in vi&&(Bi=vi.dimension|0),"length"in vi&&(Ki=vi.length|0)),ci.bind(),mn?Hn(ci,mn,li,Ui,Bi,Ii):(Ki&&Ee.bufferData(ci.type,Ki,li),ci.dtype=Ui||Vt,ci.usage=li,ci.dimension=Bi,ci.byteLength=Ki),zt.profile&&(ci.stats.size=ci.byteLength*tr[ci.dtype]),nn}function Xi(vi,li){Ee.bufferSubData(ci.type,li,vi)}function qn(vi,li){var mn=(li||0)|0,Ki;if(ci.bind(),Wr(vi)||vi instanceof ArrayBuffer)Xi(vi,mn);else if(Array.isArray(vi)){if(vi.length>0){if(typeof vi[0]=="number"){var Ui=j.allocType(ci.dtype,vi.length);Er(Ui,vi),Xi(Ui,mn),j.freeType(Ui)}else if(Array.isArray(vi[0])||Wr(vi[0])){Ki=kn(vi);var Bi=Vn(vi,Ki,ci.dtype);Xi(Bi,mn),j.freeType(Bi)}}}else if(Ur(vi)){Ki=vi.shape;var vn=vi.stride,Un=0,na=0,Yi=0,Ln=0;Ki.length===1?(Un=Ki[0],na=1,Yi=vn[0],Ln=0):Ki.length===2&&(Un=Ki[0],na=Ki[1],Yi=vn[0],Ln=vn[1]);var ra=Array.isArray(vi.data)?ci.dtype:ar(vi.data),oa=j.allocType(ra,Un*na);Zr(oa,vi.data,Un,na,Yi,Ln,vi.offset),Xi(oa,mn),j.freeType(oa)}return nn}return xi||nn(Mr),nn._reglType="buffer",nn._buffer=ci,nn.subdata=qn,zt.profile&&(nn.stats=ci.stats),nn.destroy=function(){Qi(ci)},nn}function si(){dt(Br).forEach(function(Mr){Mr.buffer=Ee.createBuffer(),Ee.bindBuffer(Mr.type,Mr.buffer),Ee.bufferData(Mr.type,Mr.persistentData||Mr.byteLength,Mr.usage)})}return zt.profile&&(xt.getTotalBufferSize=function(){var Mr=0;return Object.keys(Br).forEach(function(Yr){Mr+=Br[Yr].stats.size}),Mr}),{create:ji,createStream:Ni,destroyStream:Oi,clear:function(){dt(Br).forEach(Qi),mi.forEach(Qi)},getBuffer:function(Mr){return Mr&&Mr._buffer instanceof Vr?Mr._buffer:null},restore:si,_initBuffer:Hn}}var $r=0,zi=0,Ji=1,en=1,cn=4,yn=4,Mn={points:$r,point:zi,lines:Ji,line:en,triangles:cn,triangle:yn,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6},Ba=0,la=1,ma=4,Wa=5120,Fa=5121,Wo=5122,da=5123,Wn=5124,Ga=5125,vo=34963,jn=35040,St=35044;function Cr(Ee,xt,zt,Ir){var Hr={},Br=0,Vr={uint8:Fa,uint16:da};xt.oes_element_index_uint&&(Vr.uint32=Ga);function mi(si){this.id=Br++,Hr[this.id]=this,this.buffer=si,this.primType=ma,this.vertCount=0,this.type=0}mi.prototype.bind=function(){this.buffer.bind()};var Ni=[];function Oi(si){var Mr=Ni.pop();return Mr||(Mr=new mi(zt.create(null,vo,!0,!1)._buffer)),Hn(Mr,si,jn,-1,-1,0,0),Mr}function Mi(si){Ni.push(si)}function Hn(si,Mr,Yr,xi,Ii,ci,nn){si.buffer.bind();var Xi;if(Mr){var qn=nn;!nn&&(!Wr(Mr)||Ur(Mr)&&!Wr(Mr.data))&&(qn=xt.oes_element_index_uint?Ga:da),zt._initBuffer(si.buffer,Mr,Yr,qn,3)}else Ee.bufferData(vo,ci,Yr),si.buffer.dtype=Xi||Fa,si.buffer.usage=Yr,si.buffer.dimension=3,si.buffer.byteLength=ci;if(Xi=nn,!nn){switch(si.buffer.dtype){case Fa:case Wa:Xi=Fa;break;case da:case Wo:Xi=da;break;case Ga:case Wn:Xi=Ga;break;default:}si.buffer.dtype=Xi}si.type=Xi;var vi=Ii;vi<0&&(vi=si.buffer.byteLength,Xi===da?vi>>=1:Xi===Ga&&(vi>>=2)),si.vertCount=vi;var li=xi;if(xi<0){li=ma;var mn=si.buffer.dimension;mn===1&&(li=Ba),mn===2&&(li=la),mn===3&&(li=ma)}si.primType=li}function Qi(si){Ir.elementsCount--,delete Hr[si.id],si.buffer.destroy(),si.buffer=null}function ji(si,Mr){var Yr=zt.create(null,vo,!0),xi=new mi(Yr._buffer);Ir.elementsCount++;function Ii(ci){if(!ci)Yr(),xi.primType=ma,xi.vertCount=0,xi.type=Fa;else if(typeof ci=="number")Yr(ci),xi.primType=ma,xi.vertCount=ci|0,xi.type=Fa;else{var nn=null,Xi=St,qn=-1,vi=-1,li=0,mn=0;Array.isArray(ci)||Wr(ci)||Ur(ci)?nn=ci:("data"in ci&&(nn=ci.data),"usage"in ci&&(Xi=pn[ci.usage]),"primitive"in ci&&(qn=Mn[ci.primitive]),"count"in ci&&(vi=ci.count|0),"type"in ci&&(mn=Vr[ci.type]),"length"in ci?li=ci.length|0:(li=vi,mn===da||mn===Wo?li*=2:(mn===Ga||mn===Wn)&&(li*=4))),Hn(xi,nn,Xi,qn,vi,li,mn)}return Ii}return Ii(si),Ii._reglType="elements",Ii._elements=xi,Ii.subdata=function(ci,nn){return Yr.subdata(ci,nn),Ii},Ii.destroy=function(){Qi(xi)},Ii}return{create:ji,createStream:Oi,destroyStream:Mi,getElements:function(si){return typeof si=="function"&&si._elements instanceof mi?si._elements:null},clear:function(){dt(Hr).forEach(Qi)}}}var Qr=new Float32Array(1),pi=new Uint32Array(Qr.buffer),fn=5123;function Sn(Ee){for(var xt=j.allocType(fn,Ee.length),zt=0;zt<Ee.length;++zt)if(isNaN(Ee[zt]))xt[zt]=65535;else if(Ee[zt]===1/0)xt[zt]=31744;else if(Ee[zt]===-1/0)xt[zt]=64512;else{Qr[0]=Ee[zt];var Ir=pi[0],Hr=Ir>>>31<<15,Br=(Ir<<1>>>24)-127,Vr=Ir>>13&1023;if(Br<-24)xt[zt]=Hr;else if(Br<-14){var mi=-14-Br;xt[zt]=Hr+(Vr+1024>>mi)}else Br>15?xt[zt]=Hr+31744:xt[zt]=Hr+(Br+15<<10)+Vr}return xt}function En(Ee){return Array.isArray(Ee)||Wr(Ee)}var ki=34467,_n=3553,ya=34067,Jn=34069,Ma=6408,_o=6406,No=6407,po=6409,Lo=6410,Co=32854,Fs=32855,zs=36194,ul=32819,cl=32820,Fl=33635,cs=34042,nl=6402,Ss=34041,fl=35904,Js=35906,Os=36193,Io=33776,us=33777,Zl=33778,Su=33779,nc=35986,ws=35987,Fn=34798,_a=35840,Vu=35841,zl=35842,xo=35843,Yl=36196,Us=5121,Hl=5123,ac=5125,aa=5126,Oo=10242,qo=10243,Ol=10497,Pc=33071,Do=33648,rf=10240,Uf=10241,ml=9728,Zc=9729,Kl=9984,qs=9985,yu=9986,oc=9987,Cf=33170,sc=4352,Nh=4353,kf=4354,fs=34046,nf=3317,Vf=37440,Jl=37441,hl=37443,lc=37444,Fu=33984,Cs=[Kl,yu,qs,oc],js=[0,po,Lo,No,Ma],Go={};Go[po]=Go[_o]=Go[nl]=1,Go[Ss]=Go[Lo]=2,Go[No]=Go[fl]=3,Go[Ma]=Go[Js]=4;function gs(Ee){return"[object "+Ee+"]"}var uc=gs("HTMLCanvasElement"),xl=gs("OffscreenCanvas"),Gu=gs("CanvasRenderingContext2D"),Bs=gs("ImageBitmap"),ad=gs("HTMLImageElement"),Po=gs("HTMLVideoElement"),od=Object.keys(Ce).concat([uc,xl,Gu,Bs,ad,Po]),Yo=[];Yo[Us]=1,Yo[aa]=4,Yo[Os]=2,Yo[Hl]=2,Yo[ac]=4;var Pa=[];Pa[Co]=2,Pa[Fs]=2,Pa[zs]=2,Pa[Ss]=4,Pa[Io]=.5,Pa[us]=.5,Pa[Zl]=1,Pa[Su]=1,Pa[nc]=.5,Pa[ws]=1,Pa[Fn]=1,Pa[_a]=.5,Pa[Vu]=.25,Pa[zl]=.5,Pa[xo]=.25,Pa[Yl]=.5;function af(Ee){return Array.isArray(Ee)&&(Ee.length===0||typeof Ee[0]=="number")}function Hu(Ee){if(!Array.isArray(Ee))return!1;var xt=Ee.length;return!(xt===0||!En(Ee[0]))}function bl(Ee){return Object.prototype.toString.call(Ee)}function Gf(Ee){return bl(Ee)===uc}function Ic(Ee){return bl(Ee)===xl}function mf(Ee){return bl(Ee)===Gu}function ql(Ee){return bl(Ee)===Bs}function _h(Ee){return bl(Ee)===ad}function Qf(Ee){return bl(Ee)===Po}function yf(Ee){if(!Ee)return!1;var xt=bl(Ee);return od.indexOf(xt)>=0?!0:af(Ee)||Hu(Ee)||Ur(Ee)}function Yc(Ee){return Ce[Object.prototype.toString.call(Ee)]|0}function eh(Ee,xt){var zt=xt.length;switch(Ee.type){case Us:case Hl:case ac:case aa:var Ir=j.allocType(Ee.type,zt);Ir.set(xt),Ee.data=Ir;break;case Os:Ee.data=Sn(xt);break;default:}}function th(Ee,xt){return j.allocType(Ee.type===Os?aa:Ee.type,xt)}function ju(Ee,xt){Ee.type===Os?(Ee.data=Sn(xt),j.freeType(xt)):Ee.data=xt}function Hf(Ee,xt,zt,Ir,Hr,Br){for(var Vr=Ee.width,mi=Ee.height,Ni=Ee.channels,Oi=Vr*mi*Ni,Mi=th(Ee,Oi),Hn=0,Qi=0;Qi<mi;++Qi)for(var ji=0;ji<Vr;++ji)for(var si=0;si<Ni;++si)Mi[Hn++]=xt[zt*ji+Ir*Qi+Hr*si+Br];ju(Ee,Mi)}function cc(Ee,xt,zt,Ir,Hr,Br){var Vr;if(typeof Pa[Ee]!="undefined"?Vr=Pa[Ee]:Vr=Go[Ee]*Yo[xt],Br&&(Vr*=6),Hr){for(var mi=0,Ni=zt;Ni>=1;)mi+=Vr*Ni*Ni,Ni/=2;return mi}else return Vr*zt*Ir}function of(Ee,xt,zt,Ir,Hr,Br,Vr){var mi={"don't care":sc,"dont care":sc,nice:kf,fast:Nh},Ni={repeat:Ol,clamp:Pc,mirror:Do},Oi={nearest:ml,linear:Zc},Mi=e({mipmap:oc,"nearest mipmap nearest":Kl,"linear mipmap nearest":qs,"nearest mipmap linear":yu,"linear mipmap linear":oc},Oi),Hn={none:0,browser:lc},Qi={uint8:Us,rgba4:ul,rgb565:Fl,"rgb5 a1":cl},ji={alpha:_o,luminance:po,"luminance alpha":Lo,rgb:No,rgba:Ma,rgba4:Co,"rgb5 a1":Fs,rgb565:zs},si={};xt.ext_srgb&&(ji.srgb=fl,ji.srgba=Js),xt.oes_texture_float&&(Qi.float32=Qi.float=aa),xt.oes_texture_half_float&&(Qi.float16=Qi["half float"]=Os),xt.webgl_depth_texture&&(e(ji,{depth:nl,"depth stencil":Ss}),e(Qi,{uint16:Hl,uint32:ac,"depth stencil":cs})),xt.webgl_compressed_texture_s3tc&&e(si,{"rgb s3tc dxt1":Io,"rgba s3tc dxt1":us,"rgba s3tc dxt3":Zl,"rgba s3tc dxt5":Su}),xt.webgl_compressed_texture_atc&&e(si,{"rgb atc":nc,"rgba atc explicit alpha":ws,"rgba atc interpolated alpha":Fn}),xt.webgl_compressed_texture_pvrtc&&e(si,{"rgb pvrtc 4bppv1":_a,"rgb pvrtc 2bppv1":Vu,"rgba pvrtc 4bppv1":zl,"rgba pvrtc 2bppv1":xo}),xt.webgl_compressed_texture_etc1&&(si["rgb etc1"]=Yl);var Mr=Array.prototype.slice.call(Ee.getParameter(ki));Object.keys(si).forEach(function(ne){var we=si[ne];Mr.indexOf(we)>=0&&(ji[ne]=we)});var Yr=Object.keys(ji);zt.textureFormats=Yr;var xi=[];Object.keys(ji).forEach(function(ne){var we=ji[ne];xi[we]=ne});var Ii=[];Object.keys(Qi).forEach(function(ne){var we=Qi[ne];Ii[we]=ne});var ci=[];Object.keys(Oi).forEach(function(ne){var we=Oi[ne];ci[we]=ne});var nn=[];Object.keys(Mi).forEach(function(ne){var we=Mi[ne];nn[we]=ne});var Xi=[];Object.keys(Ni).forEach(function(ne){var we=Ni[ne];Xi[we]=ne});var qn=Yr.reduce(function(ne,we){var Ue=ji[we];return Ue===po||Ue===_o||Ue===po||Ue===Lo||Ue===nl||Ue===Ss||xt.ext_srgb&&(Ue===fl||Ue===Js)?ne[Ue]=Ue:Ue===Fs||we.indexOf("rgba")>=0?ne[Ue]=Ma:ne[Ue]=No,ne},{});function vi(){this.internalformat=Ma,this.format=Ma,this.type=Us,this.compressed=!1,this.premultiplyAlpha=!1,this.flipY=!1,this.unpackAlignment=1,this.colorSpace=lc,this.width=0,this.height=0,this.channels=0}function li(ne,we){ne.internalformat=we.internalformat,ne.format=we.format,ne.type=we.type,ne.compressed=we.compressed,ne.premultiplyAlpha=we.premultiplyAlpha,ne.flipY=we.flipY,ne.unpackAlignment=we.unpackAlignment,ne.colorSpace=we.colorSpace,ne.width=we.width,ne.height=we.height,ne.channels=we.channels}function mn(ne,we){if(!(typeof we!="object"||!we)){if("premultiplyAlpha"in we&&(ne.premultiplyAlpha=we.premultiplyAlpha),"flipY"in we&&(ne.flipY=we.flipY),"alignment"in we&&(ne.unpackAlignment=we.alignment),"colorSpace"in we&&(ne.colorSpace=Hn[we.colorSpace]),"type"in we){var Ue=we.type;ne.type=Qi[Ue]}var ft=ne.width,Zt=ne.height,hr=ne.channels,qt=!1;"shape"in we?(ft=we.shape[0],Zt=we.shape[1],we.shape.length===3&&(hr=we.shape[2],qt=!0)):("radius"in we&&(ft=Zt=we.radius),"width"in we&&(ft=we.width),"height"in we&&(Zt=we.height),"channels"in we&&(hr=we.channels,qt=!0)),ne.width=ft|0,ne.height=Zt|0,ne.channels=hr|0;var Ve=!1;if("format"in we){var et=we.format,at=ne.internalformat=ji[et];ne.format=qn[at],et in Qi&&("type"in we||(ne.type=Qi[et])),et in si&&(ne.compressed=!0),Ve=!0}!qt&&Ve?ne.channels=Go[ne.format]:qt&&!Ve&&ne.channels!==js[ne.format]&&(ne.format=ne.internalformat=js[ne.channels])}}function Ki(ne){Ee.pixelStorei(Vf,ne.flipY),Ee.pixelStorei(Jl,ne.premultiplyAlpha),Ee.pixelStorei(hl,ne.colorSpace),Ee.pixelStorei(nf,ne.unpackAlignment)}function Ui(){vi.call(this),this.xOffset=0,this.yOffset=0,this.data=null,this.needsFree=!1,this.element=null,this.needsCopy=!1}function Bi(ne,we){var Ue=null;if(yf(we)?Ue=we:we&&(mn(ne,we),"x"in we&&(ne.xOffset=we.x|0),"y"in we&&(ne.yOffset=we.y|0),yf(we.data)&&(Ue=we.data)),we.copy){var ft=Hr.viewportWidth,Zt=Hr.viewportHeight;ne.width=ne.width||ft-ne.xOffset,ne.height=ne.height||Zt-ne.yOffset,ne.needsCopy=!0}else if(!Ue)ne.width=ne.width||1,ne.height=ne.height||1,ne.channels=ne.channels||4;else if(Wr(Ue))ne.channels=ne.channels||4,ne.data=Ue,!("type"in we)&&ne.type===Us&&(ne.type=Yc(Ue));else if(af(Ue))ne.channels=ne.channels||4,eh(ne,Ue),ne.alignment=1,ne.needsFree=!0;else if(Ur(Ue)){var hr=Ue.data;!Array.isArray(hr)&&ne.type===Us&&(ne.type=Yc(hr));var qt=Ue.shape,Ve=Ue.stride,et,at,kt,Ot,It,Bt;qt.length===3?(kt=qt[2],Bt=Ve[2]):(kt=1,Bt=1),et=qt[0],at=qt[1],Ot=Ve[0],It=Ve[1],ne.alignment=1,ne.width=et,ne.height=at,ne.channels=kt,ne.format=ne.internalformat=js[kt],ne.needsFree=!0,Hf(ne,hr,Ot,It,Bt,Ue.offset)}else if(Gf(Ue)||Ic(Ue)||mf(Ue))Gf(Ue)||Ic(Ue)?ne.element=Ue:ne.element=Ue.canvas,ne.width=ne.element.width,ne.height=ne.element.height,ne.channels=4;else if(ql(Ue))ne.element=Ue,ne.width=Ue.width,ne.height=Ue.height,ne.channels=4;else if(_h(Ue))ne.element=Ue,ne.width=Ue.naturalWidth,ne.height=Ue.naturalHeight,ne.channels=4;else if(Qf(Ue))ne.element=Ue,ne.width=Ue.videoWidth,ne.height=Ue.videoHeight,ne.channels=4;else if(Hu(Ue)){var Rt=ne.width||Ue[0].length,mt=ne.height||Ue.length,Pt=ne.channels;En(Ue[0][0])?Pt=Pt||Ue[0][0].length:Pt=Pt||1;for(var ht=Ge.shape(Ue),cr=1,br=0;br<ht.length;++br)cr*=ht[br];var Nr=th(ne,cr);Ge.flatten(Ue,ht,"",Nr),ju(ne,Nr),ne.alignment=1,ne.width=Rt,ne.height=mt,ne.channels=Pt,ne.format=ne.internalformat=js[Pt],ne.needsFree=!0}ne.type===aa||ne.type}function vn(ne,we,Ue){var ft=ne.element,Zt=ne.data,hr=ne.internalformat,qt=ne.format,Ve=ne.type,et=ne.width,at=ne.height;Ki(ne),ft?Ee.texImage2D(we,Ue,qt,qt,Ve,ft):ne.compressed?Ee.compressedTexImage2D(we,Ue,hr,et,at,0,Zt):ne.needsCopy?(Ir(),Ee.copyTexImage2D(we,Ue,qt,ne.xOffset,ne.yOffset,et,at,0)):Ee.texImage2D(we,Ue,qt,et,at,0,qt,Ve,Zt||null)}function Un(ne,we,Ue,ft,Zt){var hr=ne.element,qt=ne.data,Ve=ne.internalformat,et=ne.format,at=ne.type,kt=ne.width,Ot=ne.height;Ki(ne),hr?Ee.texSubImage2D(we,Zt,Ue,ft,et,at,hr):ne.compressed?Ee.compressedTexSubImage2D(we,Zt,Ue,ft,Ve,kt,Ot,qt):ne.needsCopy?(Ir(),Ee.copyTexSubImage2D(we,Zt,Ue,ft,ne.xOffset,ne.yOffset,kt,Ot)):Ee.texSubImage2D(we,Zt,Ue,ft,kt,Ot,et,at,qt)}var na=[];function Yi(){return na.pop()||new Ui}function Ln(ne){ne.needsFree&&j.freeType(ne.data),Ui.call(ne),na.push(ne)}function ra(){vi.call(this),this.genMipmaps=!1,this.mipmapHint=sc,this.mipmask=0,this.images=Array(16)}function oa(ne,we,Ue){var ft=ne.images[0]=Yi();ne.mipmask=1,ft.width=ne.width=we,ft.height=ne.height=Ue,ft.channels=ne.channels=4}function wa(ne,we){var Ue=null;if(yf(we))Ue=ne.images[0]=Yi(),li(Ue,ne),Bi(Ue,we),ne.mipmask=1;else if(mn(ne,we),Array.isArray(we.mipmap))for(var ft=we.mipmap,Zt=0;Zt<ft.length;++Zt)Ue=ne.images[Zt]=Yi(),li(Ue,ne),Ue.width>>=Zt,Ue.height>>=Zt,Bi(Ue,ft[Zt]),ne.mipmask|=1<<Zt;else Ue=ne.images[0]=Yi(),li(Ue,ne),Bi(Ue,we),ne.mipmask=1;li(ne,ne.images[0]),ne.compressed&&(ne.internalformat===Io||ne.internalformat===us||ne.internalformat===Zl||ne.internalformat)}function ns(ne,we){for(var Ue=ne.images,ft=0;ft<Ue.length;++ft){if(!Ue[ft])return;vn(Ue[ft],we,ft)}}var Ys=[];function Va(){var ne=Ys.pop()||new ra;vi.call(ne),ne.mipmask=0;for(var we=0;we<16;++we)ne.images[we]=null;return ne}function Ml(ne){for(var we=ne.images,Ue=0;Ue<we.length;++Ue)we[Ue]&&Ln(we[Ue]),we[Ue]=null;Ys.push(ne)}function zo(){this.minFilter=ml,this.magFilter=ml,this.wrapS=Pc,this.wrapT=Pc,this.anisotropic=1,this.genMipmaps=!1,this.mipmapHint=sc}function el(ne,we){if("min"in we){var Ue=we.min;ne.minFilter=Mi[Ue],Cs.indexOf(ne.minFilter)>=0&&!("faces"in we)&&(ne.genMipmaps=!0)}if("mag"in we){var ft=we.mag;ne.magFilter=Oi[ft]}var Zt=ne.wrapS,hr=ne.wrapT;if("wrap"in we){var qt=we.wrap;typeof qt=="string"?Zt=hr=Ni[qt]:Array.isArray(qt)&&(Zt=Ni[qt[0]],hr=Ni[qt[1]])}else{if("wrapS"in we){var Ve=we.wrapS;Zt=Ni[Ve]}if("wrapT"in we){var et=we.wrapT;hr=Ni[et]}}if(ne.wrapS=Zt,ne.wrapT=hr,"anisotropic"in we){var at=we.anisotropic;ne.anisotropic=we.anisotropic}if("mipmap"in we){var kt=!1;switch(typeof we.mipmap){case"string":ne.mipmapHint=mi[we.mipmap],ne.genMipmaps=!0,kt=!0;break;case"boolean":kt=ne.genMipmaps=we.mipmap;break;case"object":ne.genMipmaps=!1,kt=!0;break;default:}kt&&!("min"in we)&&(ne.minFilter=Kl)}}function ol(ne,we){Ee.texParameteri(we,Uf,ne.minFilter),Ee.texParameteri(we,rf,ne.magFilter),Ee.texParameteri(we,Oo,ne.wrapS),Ee.texParameteri(we,qo,ne.wrapT),xt.ext_texture_filter_anisotropic&&Ee.texParameteri(we,fs,ne.anisotropic),ne.genMipmaps&&(Ee.hint(Cf,ne.mipmapHint),Ee.generateMipmap(we))}var Ul=0,ls={},Gs=zt.maxTextureUnits,Ks=Array(Gs).map(function(){return null});function Ta(ne){vi.call(this),this.mipmask=0,this.internalformat=Ma,this.id=Ul++,this.refCount=1,this.target=ne,this.texture=Ee.createTexture(),this.unit=-1,this.bindCount=0,this.texInfo=new zo,Vr.profile&&(this.stats={size:0})}function sl(ne){Ee.activeTexture(Fu),Ee.bindTexture(ne.target,ne.texture)}function io(){var ne=Ks[0];ne?Ee.bindTexture(ne.target,ne.texture):Ee.bindTexture(_n,null)}function Y(ne){var we=ne.texture,Ue=ne.unit,ft=ne.target;Ue>=0&&(Ee.activeTexture(Fu+Ue),Ee.bindTexture(ft,null),Ks[Ue]=null),Ee.deleteTexture(we),ne.texture=null,ne.params=null,ne.pixels=null,ne.refCount=0,delete ls[ne.id],Br.textureCount--}e(Ta.prototype,{bind:function(){var ne=this;ne.bindCount+=1;var we=ne.unit;if(we<0){for(var Ue=0;Ue<Gs;++Ue){var ft=Ks[Ue];if(ft){if(ft.bindCount>0)continue;ft.unit=-1}Ks[Ue]=ne,we=Ue;break}we>=Gs,Vr.profile&&Br.maxTextureUnits<we+1&&(Br.maxTextureUnits=we+1),ne.unit=we,Ee.activeTexture(Fu+we),Ee.bindTexture(ne.target,ne.texture)}return we},unbind:function(){this.bindCount-=1},decRef:function(){--this.refCount<=0&&Y(this)}});function D(ne,we){var Ue=new Ta(_n);ls[Ue.id]=Ue,Br.textureCount++;function ft(qt,Ve){var et=Ue.texInfo;zo.call(et);var at=Va();return typeof qt=="number"?typeof Ve=="number"?oa(at,qt|0,Ve|0):oa(at,qt|0,qt|0):qt?(el(et,qt),wa(at,qt)):oa(at,1,1),et.genMipmaps&&(at.mipmask=(at.width<<1)-1),Ue.mipmask=at.mipmask,li(Ue,at),Ue.internalformat=at.internalformat,ft.width=at.width,ft.height=at.height,sl(Ue),ns(at,_n),ol(et,_n),io(),Ml(at),Vr.profile&&(Ue.stats.size=cc(Ue.internalformat,Ue.type,at.width,at.height,et.genMipmaps,!1)),ft.format=xi[Ue.internalformat],ft.type=Ii[Ue.type],ft.mag=ci[et.magFilter],ft.min=nn[et.minFilter],ft.wrapS=Xi[et.wrapS],ft.wrapT=Xi[et.wrapT],ft}function Zt(qt,Ve,et,at){var kt=Ve|0,Ot=et|0,It=at|0,Bt=Yi();return li(Bt,Ue),Bt.width=0,Bt.height=0,Bi(Bt,qt),Bt.width=Bt.width||(Ue.width>>It)-kt,Bt.height=Bt.height||(Ue.height>>It)-Ot,sl(Ue),Un(Bt,_n,kt,Ot,It),io(),Ln(Bt),ft}function hr(qt,Ve){var et=qt|0,at=Ve|0||et;if(et===Ue.width&&at===Ue.height)return ft;ft.width=Ue.width=et,ft.height=Ue.height=at,sl(Ue);for(var kt=0;Ue.mipmask>>kt;++kt){var Ot=et>>kt,It=at>>kt;if(!Ot||!It)break;Ee.texImage2D(_n,kt,Ue.format,Ot,It,0,Ue.format,Ue.type,null)}return io(),Vr.profile&&(Ue.stats.size=cc(Ue.internalformat,Ue.type,et,at,!1,!1)),ft}return ft(ne,we),ft.subimage=Zt,ft.resize=hr,ft._reglType="texture2d",ft._texture=Ue,Vr.profile&&(ft.stats=Ue.stats),ft.destroy=function(){Ue.decRef()},ft}function J(ne,we,Ue,ft,Zt,hr){var qt=new Ta(ya);ls[qt.id]=qt,Br.cubeCount++;var Ve=new Array(6);function et(Ot,It,Bt,Rt,mt,Pt){var ht,cr=qt.texInfo;for(zo.call(cr),ht=0;ht<6;++ht)Ve[ht]=Va();if(typeof Ot=="number"||!Ot){var br=Ot|0||1;for(ht=0;ht<6;++ht)oa(Ve[ht],br,br)}else if(typeof Ot=="object")if(It)wa(Ve[0],Ot),wa(Ve[1],It),wa(Ve[2],Bt),wa(Ve[3],Rt),wa(Ve[4],mt),wa(Ve[5],Pt);else if(el(cr,Ot),mn(qt,Ot),"faces"in Ot){var Nr=Ot.faces;for(ht=0;ht<6;++ht)li(Ve[ht],qt),wa(Ve[ht],Nr[ht])}else for(ht=0;ht<6;++ht)wa(Ve[ht],Ot);for(li(qt,Ve[0]),cr.genMipmaps?qt.mipmask=(Ve[0].width<<1)-1:qt.mipmask=Ve[0].mipmask,qt.internalformat=Ve[0].internalformat,et.width=Ve[0].width,et.height=Ve[0].height,sl(qt),ht=0;ht<6;++ht)ns(Ve[ht],Jn+ht);for(ol(cr,ya),io(),Vr.profile&&(qt.stats.size=cc(qt.internalformat,qt.type,et.width,et.height,cr.genMipmaps,!0)),et.format=xi[qt.internalformat],et.type=Ii[qt.type],et.mag=ci[cr.magFilter],et.min=nn[cr.minFilter],et.wrapS=Xi[cr.wrapS],et.wrapT=Xi[cr.wrapT],ht=0;ht<6;++ht)Ml(Ve[ht]);return et}function at(Ot,It,Bt,Rt,mt){var Pt=Bt|0,ht=Rt|0,cr=mt|0,br=Yi();return li(br,qt),br.width=0,br.height=0,Bi(br,It),br.width=br.width||(qt.width>>cr)-Pt,br.height=br.height||(qt.height>>cr)-ht,sl(qt),Un(br,Jn+Ot,Pt,ht,cr),io(),Ln(br),et}function kt(Ot){var It=Ot|0;if(It!==qt.width){et.width=qt.width=It,et.height=qt.height=It,sl(qt);for(var Bt=0;Bt<6;++Bt)for(var Rt=0;qt.mipmask>>Rt;++Rt)Ee.texImage2D(Jn+Bt,Rt,qt.format,It>>Rt,It>>Rt,0,qt.format,qt.type,null);return io(),Vr.profile&&(qt.stats.size=cc(qt.internalformat,qt.type,et.width,et.height,!1,!0)),et}}return et(ne,we,Ue,ft,Zt,hr),et.subimage=at,et.resize=kt,et._reglType="textureCube",et._texture=qt,Vr.profile&&(et.stats=qt.stats),et.destroy=function(){qt.decRef()},et}function q(){for(var ne=0;ne<Gs;++ne)Ee.activeTexture(Fu+ne),Ee.bindTexture(_n,null),Ks[ne]=null;dt(ls).forEach(Y),Br.cubeCount=0,Br.textureCount=0}Vr.profile&&(Br.getTotalTextureSize=function(){var ne=0;return Object.keys(ls).forEach(function(we){ne+=ls[we].stats.size}),ne});function K(){for(var ne=0;ne<Gs;++ne){var we=Ks[ne];we&&(we.bindCount=0,we.unit=-1,Ks[ne]=null)}dt(ls).forEach(function(Ue){Ue.texture=Ee.createTexture(),Ee.bindTexture(Ue.target,Ue.texture);for(var ft=0;ft<32;++ft)if((Ue.mipmask&1<<ft)!==0)if(Ue.target===_n)Ee.texImage2D(_n,ft,Ue.internalformat,Ue.width>>ft,Ue.height>>ft,0,Ue.internalformat,Ue.type,null);else for(var Zt=0;Zt<6;++Zt)Ee.texImage2D(Jn+Zt,ft,Ue.internalformat,Ue.width>>ft,Ue.height>>ft,0,Ue.internalformat,Ue.type,null);ol(Ue.texInfo,Ue.target)})}function de(){for(var ne=0;ne<Gs;++ne){var we=Ks[ne];we&&(we.bindCount=0,we.unit=-1,Ks[ne]=null),Ee.activeTexture(Fu+ne),Ee.bindTexture(_n,null),Ee.bindTexture(ya,null)}}return{create2D:D,createCube:J,clear:q,getTexture:function(ne){return null},restore:K,refresh:de}}var Bl=36161,Kc=32854,Rc=32855,ms=36194,jf=33189,Uh=36168,rh=34041,sf=35907,xh=34836,Mu=34842,ih=34843,Ws=[];Ws[Kc]=2,Ws[Rc]=2,Ws[ms]=2,Ws[jf]=2,Ws[Uh]=1,Ws[rh]=4,Ws[sf]=4,Ws[xh]=16,Ws[Mu]=8,Ws[ih]=6;function Eu(Ee,xt,zt){return Ws[Ee]*xt*zt}var Dc=function(Ee,xt,zt,Ir,Hr){var Br={rgba4:Kc,rgb565:ms,"rgb5 a1":Rc,depth:jf,stencil:Uh,"depth stencil":rh};xt.ext_srgb&&(Br.srgba=sf),xt.ext_color_buffer_half_float&&(Br.rgba16f=Mu,Br.rgb16f=ih),xt.webgl_color_buffer_float&&(Br.rgba32f=xh);var Vr=[];Object.keys(Br).forEach(function(ji){var si=Br[ji];Vr[si]=ji});var mi=0,Ni={};function Oi(ji){this.id=mi++,this.refCount=1,this.renderbuffer=ji,this.format=Kc,this.width=0,this.height=0,Hr.profile&&(this.stats={size:0})}Oi.prototype.decRef=function(){--this.refCount<=0&&Mi(this)};function Mi(ji){var si=ji.renderbuffer;Ee.bindRenderbuffer(Bl,null),Ee.deleteRenderbuffer(si),ji.renderbuffer=null,ji.refCount=0,delete Ni[ji.id],Ir.renderbufferCount--}function Hn(ji,si){var Mr=new Oi(Ee.createRenderbuffer());Ni[Mr.id]=Mr,Ir.renderbufferCount++;function Yr(Ii,ci){var nn=0,Xi=0,qn=Kc;if(typeof Ii=="object"&&Ii){var vi=Ii;if("shape"in vi){var li=vi.shape;nn=li[0]|0,Xi=li[1]|0}else"radius"in vi&&(nn=Xi=vi.radius|0),"width"in vi&&(nn=vi.width|0),"height"in vi&&(Xi=vi.height|0);"format"in vi&&(qn=Br[vi.format])}else typeof Ii=="number"?(nn=Ii|0,typeof ci=="number"?Xi=ci|0:Xi=nn):Ii||(nn=Xi=1);if(!(nn===Mr.width&&Xi===Mr.height&&qn===Mr.format))return Yr.width=Mr.width=nn,Yr.height=Mr.height=Xi,Mr.format=qn,Ee.bindRenderbuffer(Bl,Mr.renderbuffer),Ee.renderbufferStorage(Bl,qn,nn,Xi),Hr.profile&&(Mr.stats.size=Eu(Mr.format,Mr.width,Mr.height)),Yr.format=Vr[Mr.format],Yr}function xi(Ii,ci){var nn=Ii|0,Xi=ci|0||nn;return nn===Mr.width&&Xi===Mr.height||(Yr.width=Mr.width=nn,Yr.height=Mr.height=Xi,Ee.bindRenderbuffer(Bl,Mr.renderbuffer),Ee.renderbufferStorage(Bl,Mr.format,nn,Xi),Hr.profile&&(Mr.stats.size=Eu(Mr.format,Mr.width,Mr.height))),Yr}return Yr(ji,si),Yr.resize=xi,Yr._reglType="renderbuffer",Yr._renderbuffer=Mr,Hr.profile&&(Yr.stats=Mr.stats),Yr.destroy=function(){Mr.decRef()},Yr}Hr.profile&&(Ir.getTotalRenderbufferSize=function(){var ji=0;return Object.keys(Ni).forEach(function(si){ji+=Ni[si].stats.size}),ji});function Qi(){dt(Ni).forEach(function(ji){ji.renderbuffer=Ee.createRenderbuffer(),Ee.bindRenderbuffer(Bl,ji.renderbuffer),Ee.renderbufferStorage(Bl,ji.format,ji.width,ji.height)}),Ee.bindRenderbuffer(Bl,null)}return{create:Hn,clear:function(){dt(Ni).forEach(Mi)},restore:Qi}},ks=36160,bc=36161,du=3553,_u=34069,al=36064,nh=36096,bh=36128,zu=33306,Fc=36053,wc=36193,bd=5121,_f=5126,Lf=6407,Ou=6408,xf=[];xf[Ou]=4,xf[Lf]=3;var jl=[];jl[bd]=1,jl[_f]=4,jl[wc]=2;function lf(Ee,xt,zt,Ir,Hr,Br){var Vr={cur:null,next:null,dirty:!1,setFBO:null},mi=["rgba"],Ni=["rgba4","rgb565","rgb5 a1"];xt.ext_srgb&&Ni.push("srgba"),xt.ext_color_buffer_half_float&&Ni.push("rgba16f","rgb16f"),xt.webgl_color_buffer_float&&Ni.push("rgba32f");var Oi=["uint8"];xt.oes_texture_half_float&&Oi.push("half float","float16"),xt.oes_texture_float&&Oi.push("float","float32");function Mi(Ui,Bi,vn){this.target=Ui,this.texture=Bi,this.renderbuffer=vn;var Un=0,na=0;Bi?(Un=Bi.width,na=Bi.height):vn&&(Un=vn.width,na=vn.height),this.width=Un,this.height=na}function Hn(Ui){Ui&&(Ui.texture&&Ui.texture._texture.decRef(),Ui.renderbuffer&&Ui.renderbuffer._renderbuffer.decRef())}function Qi(Ui,Bi,vn){if(Ui)if(Ui.texture){var Un=Ui.texture._texture,na=Math.max(1,Un.width),Yi=Math.max(1,Un.height);Un.refCount+=1}else{var Ln=Ui.renderbuffer._renderbuffer;Ln.refCount+=1}}function ji(Ui,Bi){Bi&&(Bi.texture?Ee.framebufferTexture2D(ks,Ui,Bi.target,Bi.texture._texture.texture,0):Ee.framebufferRenderbuffer(ks,Ui,bc,Bi.renderbuffer._renderbuffer.renderbuffer))}function si(Ui){var Bi=du,vn=null,Un=null,na=Ui;typeof Ui=="object"&&(na=Ui.data,"target"in Ui&&(Bi=Ui.target|0));var Yi=na._reglType;return Yi==="texture2d"||Yi==="textureCube"?vn=na:Yi==="renderbuffer"&&(Un=na,Bi=bc),new Mi(Bi,vn,Un)}function Mr(Ui,Bi,vn,Un,na){if(vn){var Yi=Ir.create2D({width:Ui,height:Bi,format:Un,type:na});return Yi._texture.refCount=0,new Mi(du,Yi,null)}else{var Ln=Hr.create({width:Ui,height:Bi,format:Un});return Ln._renderbuffer.refCount=0,new Mi(bc,null,Ln)}}function Yr(Ui){return Ui&&(Ui.texture||Ui.renderbuffer)}function xi(Ui,Bi,vn){Ui&&(Ui.texture?Ui.texture.resize(Bi,vn):Ui.renderbuffer&&Ui.renderbuffer.resize(Bi,vn),Ui.width=Bi,Ui.height=vn)}var Ii=0,ci={};function nn(){this.id=Ii++,ci[this.id]=this,this.framebuffer=Ee.createFramebuffer(),this.width=0,this.height=0,this.colorAttachments=[],this.depthAttachment=null,this.stencilAttachment=null,this.depthStencilAttachment=null}function Xi(Ui){Ui.colorAttachments.forEach(Hn),Hn(Ui.depthAttachment),Hn(Ui.stencilAttachment),Hn(Ui.depthStencilAttachment)}function qn(Ui){var Bi=Ui.framebuffer;Ee.deleteFramebuffer(Bi),Ui.framebuffer=null,Br.framebufferCount--,delete ci[Ui.id]}function vi(Ui){var Bi;Ee.bindFramebuffer(ks,Ui.framebuffer);var vn=Ui.colorAttachments;for(Bi=0;Bi<vn.length;++Bi)ji(al+Bi,vn[Bi]);for(Bi=vn.length;Bi<zt.maxColorAttachments;++Bi)Ee.framebufferTexture2D(ks,al+Bi,du,null,0);Ee.framebufferTexture2D(ks,zu,du,null,0),Ee.framebufferTexture2D(ks,nh,du,null,0),Ee.framebufferTexture2D(ks,bh,du,null,0),ji(nh,Ui.depthAttachment),ji(bh,Ui.stencilAttachment),ji(zu,Ui.depthStencilAttachment);var Un=Ee.checkFramebufferStatus(ks);Ee.isContextLost(),Ee.bindFramebuffer(ks,Vr.next?Vr.next.framebuffer:null),Vr.cur=Vr.next,Ee.getError()}function li(Ui,Bi){var vn=new nn;Br.framebufferCount++;function Un(Yi,Ln){var ra,oa=0,wa=0,ns=!0,Ys=!0,Va=null,Ml=!0,zo="rgba",el="uint8",ol=1,Ul=null,ls=null,Gs=null,Ks=!1;if(typeof Yi=="number")oa=Yi|0,wa=Ln|0||oa;else if(!Yi)oa=wa=1;else{var Ta=Yi;if("shape"in Ta){var sl=Ta.shape;oa=sl[0],wa=sl[1]}else"radius"in Ta&&(oa=wa=Ta.radius),"width"in Ta&&(oa=Ta.width),"height"in Ta&&(wa=Ta.height);("color"in Ta||"colors"in Ta)&&(Va=Ta.color||Ta.colors,Array.isArray(Va)),Va||("colorCount"in Ta&&(ol=Ta.colorCount|0),"colorTexture"in Ta&&(Ml=!!Ta.colorTexture,zo="rgba4"),"colorType"in Ta&&(el=Ta.colorType,Ml||(el==="half float"||el==="float16"?zo="rgba16f":(el==="float"||el==="float32")&&(zo="rgba32f"))),"colorFormat"in Ta&&(zo=Ta.colorFormat,mi.indexOf(zo)>=0?Ml=!0:Ni.indexOf(zo)>=0&&(Ml=!1))),("depthTexture"in Ta||"depthStencilTexture"in Ta)&&(Ks=!!(Ta.depthTexture||Ta.depthStencilTexture)),"depth"in Ta&&(typeof Ta.depth=="boolean"?ns=Ta.depth:(Ul=Ta.depth,Ys=!1)),"stencil"in Ta&&(typeof Ta.stencil=="boolean"?Ys=Ta.stencil:(ls=Ta.stencil,ns=!1)),"depthStencil"in Ta&&(typeof Ta.depthStencil=="boolean"?ns=Ys=Ta.depthStencil:(Gs=Ta.depthStencil,ns=!1,Ys=!1))}var io=null,Y=null,D=null,J=null;if(Array.isArray(Va))io=Va.map(si);else if(Va)io=[si(Va)];else for(io=new Array(ol),ra=0;ra<ol;++ra)io[ra]=Mr(oa,wa,Ml,zo,el);oa=oa||io[0].width,wa=wa||io[0].height,Ul?Y=si(Ul):ns&&!Ys&&(Y=Mr(oa,wa,Ks,"depth","uint32")),ls?D=si(ls):Ys&&!ns&&(D=Mr(oa,wa,!1,"stencil","uint8")),Gs?J=si(Gs):!Ul&&!ls&&Ys&&ns&&(J=Mr(oa,wa,Ks,"depth stencil","depth stencil"));var q=null;for(ra=0;ra<io.length;++ra)if(Qi(io[ra],oa,wa),io[ra]&&io[ra].texture){var K=xf[io[ra].texture._texture.format]*jl[io[ra].texture._texture.type];q===null&&(q=K)}return Qi(Y,oa,wa),Qi(D,oa,wa),Qi(J,oa,wa),Xi(vn),vn.width=oa,vn.height=wa,vn.colorAttachments=io,vn.depthAttachment=Y,vn.stencilAttachment=D,vn.depthStencilAttachment=J,Un.color=io.map(Yr),Un.depth=Yr(Y),Un.stencil=Yr(D),Un.depthStencil=Yr(J),Un.width=vn.width,Un.height=vn.height,vi(vn),Un}function na(Yi,Ln){var ra=Math.max(Yi|0,1),oa=Math.max(Ln|0||ra,1);if(ra===vn.width&&oa===vn.height)return Un;for(var wa=vn.colorAttachments,ns=0;ns<wa.length;++ns)xi(wa[ns],ra,oa);return xi(vn.depthAttachment,ra,oa),xi(vn.stencilAttachment,ra,oa),xi(vn.depthStencilAttachment,ra,oa),vn.width=Un.width=ra,vn.height=Un.height=oa,vi(vn),Un}return Un(Ui,Bi),e(Un,{resize:na,_reglType:"framebuffer",_framebuffer:vn,destroy:function(){qn(vn),Xi(vn)},use:function(Yi){Vr.setFBO({framebuffer:Un},Yi)}})}function mn(Ui){var Bi=Array(6);function vn(na){var Yi,Ln={color:null},ra=0,oa=null,wa="rgba",ns="uint8",Ys=1;if(typeof na=="number")ra=na|0;else if(!na)ra=1;else{var Va=na;if("shape"in Va){var Ml=Va.shape;ra=Ml[0]}else"radius"in Va&&(ra=Va.radius|0),"width"in Va?(ra=Va.width|0,"height"in Va):"height"in Va&&(ra=Va.height|0);("color"in Va||"colors"in Va)&&(oa=Va.color||Va.colors,Array.isArray(oa)),oa||("colorCount"in Va&&(Ys=Va.colorCount|0),"colorType"in Va&&(ns=Va.colorType),"colorFormat"in Va&&(wa=Va.colorFormat)),"depth"in Va&&(Ln.depth=Va.depth),"stencil"in Va&&(Ln.stencil=Va.stencil),"depthStencil"in Va&&(Ln.depthStencil=Va.depthStencil)}var zo;if(oa)if(Array.isArray(oa))for(zo=[],Yi=0;Yi<oa.length;++Yi)zo[Yi]=oa[Yi];else zo=[oa];else{zo=Array(Ys);var el={radius:ra,format:wa,type:ns};for(Yi=0;Yi<Ys;++Yi)zo[Yi]=Ir.createCube(el)}for(Ln.color=Array(zo.length),Yi=0;Yi<zo.length;++Yi){var ol=zo[Yi];ra=ra||ol.width,Ln.color[Yi]={target:_u,data:zo[Yi]}}for(Yi=0;Yi<6;++Yi){for(var Ul=0;Ul<zo.length;++Ul)Ln.color[Ul].target=_u+Yi;Yi>0&&(Ln.depth=Bi[0].depth,Ln.stencil=Bi[0].stencil,Ln.depthStencil=Bi[0].depthStencil),Bi[Yi]?Bi[Yi](Ln):Bi[Yi]=li(Ln)}return e(vn,{width:ra,height:ra,color:zo})}function Un(na){var Yi,Ln=na|0;if(Ln===vn.width)return vn;var ra=vn.color;for(Yi=0;Yi<ra.length;++Yi)ra[Yi].resize(Ln);for(Yi=0;Yi<6;++Yi)Bi[Yi].resize(Ln);return vn.width=vn.height=Ln,vn}return vn(Ui),e(vn,{faces:Bi,resize:Un,_reglType:"framebufferCube",destroy:function(){Bi.forEach(function(na){na.destroy()})}})}function Ki(){Vr.cur=null,Vr.next=null,Vr.dirty=!0,dt(ci).forEach(function(Ui){Ui.framebuffer=Ee.createFramebuffer(),vi(Ui)})}return e(Vr,{getFramebuffer:function(Ui){if(typeof Ui=="function"&&Ui._reglType==="framebuffer"){var Bi=Ui._framebuffer;if(Bi instanceof nn)return Bi}return null},create:li,createCube:mn,clear:function(){dt(ci).forEach(qn)},restore:Ki})}var Vh=5126,Pf=34962,Ls=34963;function vu(){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=Vh,this.offset=0,this.stride=0,this.divisor=0}function Cu(Ee,xt,zt,Ir,Hr,Br,Vr){for(var mi=zt.maxAttributes,Ni=new Array(mi),Oi=0;Oi<mi;++Oi)Ni[Oi]=new vu;var Mi=0,Hn={},Qi={Record:vu,scope:{},state:Ni,currentVAO:null,targetVAO:null,restore:si()?Xi:function(){},createVAO:qn,getVAO:Yr,destroyBuffer:ji,setVAO:si()?xi:Ii,clear:si()?ci:function(){}};function ji(vi){for(var li=0;li<Ni.length;++li){var mn=Ni[li];mn.buffer===vi&&(Ee.disableVertexAttribArray(li),mn.buffer=null)}}function si(){return xt.oes_vertex_array_object}function Mr(){return xt.angle_instanced_arrays}function Yr(vi){return typeof vi=="function"&&vi._vao?vi._vao:null}function xi(vi){if(vi!==Qi.currentVAO){var li=si();vi?li.bindVertexArrayOES(vi.vao):li.bindVertexArrayOES(null),Qi.currentVAO=vi}}function Ii(vi){if(vi!==Qi.currentVAO){if(vi)vi.bindAttrs();else{for(var li=Mr(),mn=0;mn<Ni.length;++mn){var Ki=Ni[mn];Ki.buffer?(Ee.enableVertexAttribArray(mn),Ki.buffer.bind(),Ee.vertexAttribPointer(mn,Ki.size,Ki.type,Ki.normalized,Ki.stride,Ki.offfset),li&&Ki.divisor&&li.vertexAttribDivisorANGLE(mn,Ki.divisor)):(Ee.disableVertexAttribArray(mn),Ee.vertexAttrib4f(mn,Ki.x,Ki.y,Ki.z,Ki.w))}Vr.elements?Ee.bindBuffer(Ls,Vr.elements.buffer.buffer):Ee.bindBuffer(Ls,null)}Qi.currentVAO=vi}}function ci(){dt(Hn).forEach(function(vi){vi.destroy()})}function nn(){this.id=++Mi,this.attributes=[],this.elements=null,this.ownsElements=!1,this.count=0,this.offset=0,this.instances=-1,this.primitive=4;var vi=si();vi?this.vao=vi.createVertexArrayOES():this.vao=null,Hn[this.id]=this,this.buffers=[]}nn.prototype.bindAttrs=function(){for(var vi=Mr(),li=this.attributes,mn=0;mn<li.length;++mn){var Ki=li[mn];Ki.buffer?(Ee.enableVertexAttribArray(mn),Ee.bindBuffer(Pf,Ki.buffer.buffer),Ee.vertexAttribPointer(mn,Ki.size,Ki.type,Ki.normalized,Ki.stride,Ki.offset),vi&&Ki.divisor&&vi.vertexAttribDivisorANGLE(mn,Ki.divisor)):(Ee.disableVertexAttribArray(mn),Ee.vertexAttrib4f(mn,Ki.x,Ki.y,Ki.z,Ki.w))}for(var Ui=li.length;Ui<mi;++Ui)Ee.disableVertexAttribArray(Ui);var Bi=Br.getElements(this.elements);Bi?Ee.bindBuffer(Ls,Bi.buffer.buffer):Ee.bindBuffer(Ls,null)},nn.prototype.refresh=function(){var vi=si();vi&&(vi.bindVertexArrayOES(this.vao),this.bindAttrs(),Qi.currentVAO=null,vi.bindVertexArrayOES(null))},nn.prototype.destroy=function(){if(this.vao){var vi=si();this===Qi.currentVAO&&(Qi.currentVAO=null,vi.bindVertexArrayOES(null)),vi.deleteVertexArrayOES(this.vao),this.vao=null}this.ownsElements&&(this.elements.destroy(),this.elements=null,this.ownsElements=!1),Hn[this.id]&&(delete Hn[this.id],Ir.vaoCount-=1)};function Xi(){var vi=si();vi&&dt(Hn).forEach(function(li){li.refresh()})}function qn(vi){var li=new nn;Ir.vaoCount+=1;function mn(Ki){var Ui;if(Array.isArray(Ki))Ui=Ki,li.elements&&li.ownsElements&&li.elements.destroy(),li.elements=null,li.ownsElements=!1,li.offset=0,li.count=0,li.instances=-1,li.primitive=4;else{if(Ki.elements){var Bi=Ki.elements;li.ownsElements?typeof Bi=="function"&&Bi._reglType==="elements"?(li.elements.destroy(),li.ownsElements=!1):(li.elements(Bi),li.ownsElements=!1):Br.getElements(Ki.elements)?(li.elements=Ki.elements,li.ownsElements=!1):(li.elements=Br.create(Ki.elements),li.ownsElements=!0)}else li.elements=null,li.ownsElements=!1;Ui=Ki.attributes,li.offset=0,li.count=-1,li.instances=-1,li.primitive=4,li.elements&&(li.count=li.elements._elements.vertCount,li.primitive=li.elements._elements.primType),"offset"in Ki&&(li.offset=Ki.offset|0),"count"in Ki&&(li.count=Ki.count|0),"instances"in Ki&&(li.instances=Ki.instances|0),"primitive"in Ki&&(li.primitive=Mn[Ki.primitive])}var vn={},Un=li.attributes;Un.length=Ui.length;for(var na=0;na<Ui.length;++na){var Yi=Ui[na],Ln=Un[na]=new vu,ra=Yi.data||Yi;if(Array.isArray(ra)||Wr(ra)||Ur(ra)){var oa;li.buffers[na]&&(oa=li.buffers[na],Wr(ra)&&oa._buffer.byteLength>=ra.byteLength?oa.subdata(ra):(oa.destroy(),li.buffers[na]=null)),li.buffers[na]||(oa=li.buffers[na]=Hr.create(Yi,Pf,!1,!0)),Ln.buffer=Hr.getBuffer(oa),Ln.size=Ln.buffer.dimension|0,Ln.normalized=!1,Ln.type=Ln.buffer.dtype,Ln.offset=0,Ln.stride=0,Ln.divisor=0,Ln.state=1,vn[na]=1}else Hr.getBuffer(Yi)?(Ln.buffer=Hr.getBuffer(Yi),Ln.size=Ln.buffer.dimension|0,Ln.normalized=!1,Ln.type=Ln.buffer.dtype,Ln.offset=0,Ln.stride=0,Ln.divisor=0,Ln.state=1):Hr.getBuffer(Yi.buffer)?(Ln.buffer=Hr.getBuffer(Yi.buffer),Ln.size=(+Yi.size||Ln.buffer.dimension)|0,Ln.normalized=!!Yi.normalized||!1,"type"in Yi?Ln.type=Hi[Yi.type]:Ln.type=Ln.buffer.dtype,Ln.offset=(Yi.offset||0)|0,Ln.stride=(Yi.stride||0)|0,Ln.divisor=(Yi.divisor||0)|0,Ln.state=1):"x"in Yi&&(Ln.x=+Yi.x||0,Ln.y=+Yi.y||0,Ln.z=+Yi.z||0,Ln.w=+Yi.w||0,Ln.state=2)}for(var wa=0;wa<li.buffers.length;++wa)!vn[wa]&&li.buffers[wa]&&(li.buffers[wa].destroy(),li.buffers[wa]=null);return li.refresh(),mn}return mn.destroy=function(){for(var Ki=0;Ki<li.buffers.length;++Ki)li.buffers[Ki]&&li.buffers[Ki].destroy();li.buffers.length=0,li.ownsElements&&(li.elements.destroy(),li.elements=null,li.ownsElements=!1),li.destroy()},mn._vao=li,mn._reglType="vao",mn(vi)}return Qi}var Wf=35632,Vs=35633,bf=35718,zc=35721;function Wu(Ee,xt,zt,Ir){var Hr={},Br={};function Vr(Mr,Yr,xi,Ii){this.name=Mr,this.id=Yr,this.location=xi,this.info=Ii}function mi(Mr,Yr){for(var xi=0;xi<Mr.length;++xi)if(Mr[xi].id===Yr.id){Mr[xi].location=Yr.location;return}Mr.push(Yr)}function Ni(Mr,Yr,xi){var Ii=Mr===Wf?Hr:Br,ci=Ii[Yr];if(!ci){var nn=xt.str(Yr);ci=Ee.createShader(Mr),Ee.shaderSource(ci,nn),Ee.compileShader(ci),Ii[Yr]=ci}return ci}var Oi={},Mi=[],Hn=0;function Qi(Mr,Yr){this.id=Hn++,this.fragId=Mr,this.vertId=Yr,this.program=null,this.uniforms=[],this.attributes=[],this.refCount=1,Ir.profile&&(this.stats={uniformsCount:0,attributesCount:0})}function ji(Mr,Yr,xi){var Ii,ci,nn=Ni(Wf,Mr.fragId),Xi=Ni(Vs,Mr.vertId),qn=Mr.program=Ee.createProgram();if(Ee.attachShader(qn,nn),Ee.attachShader(qn,Xi),xi)for(Ii=0;Ii<xi.length;++Ii){var vi=xi[Ii];Ee.bindAttribLocation(qn,vi[0],vi[1])}Ee.linkProgram(qn);var li=Ee.getProgramParameter(qn,bf);Ir.profile&&(Mr.stats.uniformsCount=li);var mn=Mr.uniforms;for(Ii=0;Ii<li;++Ii)if(ci=Ee.getActiveUniform(qn,Ii),ci)if(ci.size>1)for(var Ki=0;Ki<ci.size;++Ki){var Ui=ci.name.replace("[0]","["+Ki+"]");mi(mn,new Vr(Ui,xt.id(Ui),Ee.getUniformLocation(qn,Ui),ci))}else mi(mn,new Vr(ci.name,xt.id(ci.name),Ee.getUniformLocation(qn,ci.name),ci));var Bi=Ee.getProgramParameter(qn,zc);Ir.profile&&(Mr.stats.attributesCount=Bi);var vn=Mr.attributes;for(Ii=0;Ii<Bi;++Ii)ci=Ee.getActiveAttrib(qn,Ii),ci&&mi(vn,new Vr(ci.name,xt.id(ci.name),Ee.getAttribLocation(qn,ci.name),ci))}Ir.profile&&(zt.getMaxUniformsCount=function(){var Mr=0;return Mi.forEach(function(Yr){Yr.stats.uniformsCount>Mr&&(Mr=Yr.stats.uniformsCount)}),Mr},zt.getMaxAttributesCount=function(){var Mr=0;return Mi.forEach(function(Yr){Yr.stats.attributesCount>Mr&&(Mr=Yr.stats.attributesCount)}),Mr});function si(){Hr={},Br={};for(var Mr=0;Mr<Mi.length;++Mr)ji(Mi[Mr],null,Mi[Mr].attributes.map(function(Yr){return[Yr.location,Yr.name]}))}return{clear:function(){var Mr=Ee.deleteShader.bind(Ee);dt(Hr).forEach(Mr),Hr={},dt(Br).forEach(Mr),Br={},Mi.forEach(function(Yr){Ee.deleteProgram(Yr.program)}),Mi.length=0,Oi={},zt.shaderCount=0},program:function(Mr,Yr,xi,Ii){var ci=Oi[Yr];ci||(ci=Oi[Yr]={});var nn=ci[Mr];if(nn&&(nn.refCount++,!Ii))return nn;var Xi=new Qi(Yr,Mr);return zt.shaderCount++,ji(Xi,xi,Ii),nn||(ci[Mr]=Xi),Mi.push(Xi),e(Xi,{destroy:function(){if(Xi.refCount--,Xi.refCount<=0){Ee.deleteProgram(Xi.program);var qn=Mi.indexOf(Xi);Mi.splice(qn,1),zt.shaderCount--}ci[Xi.vertId].refCount<=0&&(Ee.deleteShader(Br[Xi.vertId]),delete Br[Xi.vertId],delete Oi[Xi.fragId][Xi.vertId]),Object.keys(Oi[Xi.fragId]).length||(Ee.deleteShader(Hr[Xi.fragId]),delete Hr[Xi.fragId],delete Oi[Xi.fragId])}})},restore:si,shader:Ni,frag:-1,vert:-1}}var If=6408,Xu=5121,uf=3333,Xf=5126;function Wl(Ee,xt,zt,Ir,Hr,Br,Vr){function mi(Mi){var Hn;xt.next===null?Hn=Xu:Hn=xt.next.colorAttachments[0].texture._texture.type;var Qi=0,ji=0,si=Ir.framebufferWidth,Mr=Ir.framebufferHeight,Yr=null;Wr(Mi)?Yr=Mi:Mi&&(Qi=Mi.x|0,ji=Mi.y|0,si=(Mi.width||Ir.framebufferWidth-Qi)|0,Mr=(Mi.height||Ir.framebufferHeight-ji)|0,Yr=Mi.data||null),zt();var xi=si*Mr*4;return Yr||(Hn===Xu?Yr=new Uint8Array(xi):Hn===Xf&&(Yr=Yr||new Float32Array(xi))),Ee.pixelStorei(uf,4),Ee.readPixels(Qi,ji,si,Mr,If,Hn,Yr),Yr}function Ni(Mi){var Hn;return xt.setFBO({framebuffer:Mi.framebuffer},function(){Hn=mi(Mi)}),Hn}function Oi(Mi){return!Mi||!("framebuffer"in Mi)?mi(Mi):Ni(Mi)}return Oi}var ah=0,Zu="";function Oc(Ee){return pu(Tc(fc(Ee)))}function Tc(Ee){return At(Zi(Bc(Ee),Ee.length*8))}function wl(Ee,xt){var zt=Bc(Ee);zt.length>16&&(zt=Zi(zt,Ee.length*8));for(var Ir=Array(16),Hr=Array(16),Br=0;Br<16;Br++)Ir[Br]=zt[Br]^909522486,Hr[Br]=zt[Br]^1549556828;var Vr=Zi(Ir.concat(Bc(xt)),512+xt.length*8);return At(Zi(Hr.concat(Vr),768))}function pu(Ee){for(var xt=ah?"0123456789ABCDEF":"0123456789abcdef",zt="",Ir,Hr=0;Hr<Ee.length;Hr++)Ir=Ee.charCodeAt(Hr),zt+=xt.charAt(Ir>>>4&15)+xt.charAt(Ir&15);return zt}function qc(Ee){for(var xt="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",zt="",Ir=Ee.length,Hr=0;Hr<Ir;Hr+=3)for(var Br=Ee.charCodeAt(Hr)<<16|(Hr+1<Ir?Ee.charCodeAt(Hr+1)<<8:0)|(Hr+2<Ir?Ee.charCodeAt(Hr+2):0),Vr=0;Vr<4;Vr++)Hr*8+Vr*6>Ee.length*8?zt+=Zu:zt+=xt.charAt(Br>>>6*(3-Vr)&63);return zt}function cf(Ee,xt){var zt=xt.length,Ir=Array(),Hr,Br,Vr,mi,Ni=Array(Math.ceil(Ee.length/2));for(Hr=0;Hr<Ni.length;Hr++)Ni[Hr]=Ee.charCodeAt(Hr*2)<<8|Ee.charCodeAt(Hr*2+1);for(;Ni.length>0;){for(mi=Array(),Vr=0,Hr=0;Hr<Ni.length;Hr++)Vr=(Vr<<16)+Ni[Hr],Br=Math.floor(Vr/zt),Vr-=Br*zt,(mi.length>0||Br>0)&&(mi[mi.length]=Br);Ir[Ir.length]=Vr,Ni=mi}var Oi="";for(Hr=Ir.length-1;Hr>=0;Hr--)Oi+=xt.charAt(Ir[Hr]);var Mi=Math.ceil(Ee.length*8/(Math.log(xt.length)/Math.log(2)));for(Hr=Oi.length;Hr<Mi;Hr++)Oi=xt[0]+Oi;return Oi}function fc(Ee){for(var xt="",zt=-1,Ir,Hr;++zt<Ee.length;)Ir=Ee.charCodeAt(zt),Hr=zt+1<Ee.length?Ee.charCodeAt(zt+1):0,55296<=Ir&&Ir<=56319&&56320<=Hr&&Hr<=57343&&(Ir=65536+((Ir&1023)<<10)+(Hr&1023),zt++),Ir<=127?xt+=String.fromCharCode(Ir):Ir<=2047?xt+=String.fromCharCode(192|Ir>>>6&31,128|Ir&63):Ir<=65535?xt+=String.fromCharCode(224|Ir>>>12&15,128|Ir>>>6&63,128|Ir&63):Ir<=2097151&&(xt+=String.fromCharCode(240|Ir>>>18&7,128|Ir>>>12&63,128|Ir>>>6&63,128|Ir&63));return xt}function Bc(Ee){for(var xt=Array(Ee.length>>2),zt=0;zt<xt.length;zt++)xt[zt]=0;for(var zt=0;zt<Ee.length*8;zt+=8)xt[zt>>5]|=(Ee.charCodeAt(zt/8)&255)<<24-zt%32;return xt}function At(Ee){for(var xt="",zt=0;zt<Ee.length*32;zt+=8)xt+=String.fromCharCode(Ee[zt>>5]>>>24-zt%32&255);return xt}function Xt(Ee,xt){return Ee>>>xt|Ee<<32-xt}function kr(Ee,xt){return Ee>>>xt}function Ar(Ee,xt,zt){return Ee&xt^~Ee&zt}function Kr(Ee,xt,zt){return Ee&xt^Ee&zt^xt&zt}function Ei(Ee){return Xt(Ee,2)^Xt(Ee,13)^Xt(Ee,22)}function Wi(Ee){return Xt(Ee,6)^Xt(Ee,11)^Xt(Ee,25)}function hn(Ee){return Xt(Ee,7)^Xt(Ee,18)^kr(Ee,3)}function Tn(Ee){return Xt(Ee,17)^Xt(Ee,19)^kr(Ee,10)}var Bn=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 Zi(Ee,xt){var zt=new Array(1779033703,-1150833019,1013904242,-1521486534,1359893119,-1694144372,528734635,1541459225),Ir=new Array(64),Hr,Br,Vr,mi,Ni,Oi,Mi,Hn,Qi,ji,si,Mr;for(Ee[xt>>5]|=128<<24-xt%32,Ee[(xt+64>>9<<4)+15]=xt,Qi=0;Qi<Ee.length;Qi+=16){for(Hr=zt[0],Br=zt[1],Vr=zt[2],mi=zt[3],Ni=zt[4],Oi=zt[5],Mi=zt[6],Hn=zt[7],ji=0;ji<64;ji++)ji<16?Ir[ji]=Ee[ji+Qi]:Ir[ji]=$i($i($i(Tn(Ir[ji-2]),Ir[ji-7]),hn(Ir[ji-15])),Ir[ji-16]),si=$i($i($i($i(Hn,Wi(Ni)),Ar(Ni,Oi,Mi)),Bn[ji]),Ir[ji]),Mr=$i(Ei(Hr),Kr(Hr,Br,Vr)),Hn=Mi,Mi=Oi,Oi=Ni,Ni=$i(mi,si),mi=Vr,Vr=Br,Br=Hr,Hr=$i(si,Mr);zt[0]=$i(Hr,zt[0]),zt[1]=$i(Br,zt[1]),zt[2]=$i(Vr,zt[2]),zt[3]=$i(mi,zt[3]),zt[4]=$i(Ni,zt[4]),zt[5]=$i(Oi,zt[5]),zt[6]=$i(Mi,zt[6]),zt[7]=$i(Hn,zt[7])}return zt}function $i(Ee,xt){var zt=(Ee&65535)+(xt&65535),Ir=(Ee>>16)+(xt>>16)+(zt>>16);return Ir<<16|zt&65535}function an(Ee){return Array.prototype.slice.call(Ee)}function Di(Ee){return an(Ee).join("")}function $n(Ee){var xt=Ee&&Ee.cache,zt=0,Ir=[],Hr=[],Br=[];function Vr(si,Mr){var Yr=Mr&&Mr.stable;if(!Yr){for(var xi=0;xi<Hr.length;++xi)if(Hr[xi]===si&&!Br[xi])return Ir[xi]}var Ii="g"+zt++;return Ir.push(Ii),Hr.push(si),Br.push(Yr),Ii}function mi(){var si=[];function Mr(){si.push.apply(si,an(arguments))}var Yr=[];function xi(){var Ii="v"+zt++;return Yr.push(Ii),arguments.length>0&&(si.push(Ii,"="),si.push.apply(si,an(arguments)),si.push(";")),Ii}return e(Mr,{def:xi,toString:function(){return Di([Yr.length>0?"var "+Yr.join(",")+";":"",Di(si)])}})}function Ni(){var si=mi(),Mr=mi(),Yr=si.toString,xi=Mr.toString;function Ii(ci,nn){Mr(ci,nn,"=",si.def(ci,nn),";")}return e(function(){si.apply(si,an(arguments))},{def:si.def,entry:si,exit:Mr,save:Ii,set:function(ci,nn,Xi){Ii(ci,nn),si(ci,nn,"=",Xi,";")},toString:function(){return Yr()+xi()}})}function Oi(){var si=Di(arguments),Mr=Ni(),Yr=Ni(),xi=Mr.toString,Ii=Yr.toString;return e(Mr,{then:function(){return Mr.apply(Mr,an(arguments)),this},else:function(){return Yr.apply(Yr,an(arguments)),this},toString:function(){var ci=Ii();return ci&&(ci="else{"+ci+"}"),Di(["if(",si,"){",xi(),"}",ci])}})}var Mi=mi(),Hn={};function Qi(si,Mr){var Yr=[];function xi(){var qn="a"+Yr.length;return Yr.push(qn),qn}Mr=Mr||0;for(var Ii=0;Ii<Mr;++Ii)xi();var ci=Ni(),nn=ci.toString,Xi=Hn[si]=e(ci,{arg:xi,toString:function(){return Di(["function(",Yr.join(),"){",nn(),"}"])}});return Xi}function ji(){var si=['"use strict";',Mi,"return {"];Object.keys(Hn).forEach(function(Ii){si.push('"',Ii,'":',Hn[Ii].toString(),",")}),si.push("}");var Mr=Di(si).replace(/;/g,`;
|
||
`).replace(/}/g,`}
|
||
`).replace(/{/g,`{
|
||
`),Yr;if(xt&&(Yr=Oc(Mr),xt[Yr]))return xt[Yr].apply(null,Hr);var xi=Function.apply(null,Ir.concat(Mr));return xt&&(xt[Yr]=xi),xi.apply(null,Hr)}return{global:Mi,link:Vr,block:mi,proc:Qi,scope:Ni,cond:Oi,compile:ji}}var ka="xyzw".split(""),Ra=5121,La=1,Na=2,Yn=0,zn=1,Ka=2,bo=3,Xo=4,Ms=5,os=6,Ts="dither",Ho="blend.enable",yl="blend.color",Xs="blend.equation",Ps="blend.func",va="depth.enable",no="depth.func",_s="depth.range",is="depth.mask",$l="colorMask",ku="cull.enable",Yu="cull.face",Nc="frontFace",gu="lineWidth",Uc="polygonOffset.enable",xu="polygonOffset.offset",Ac="sample.alpha",Ua="sample.enable",oo="sample.coverage",Vc="stencil.enable",hc="stencil.mask",Ku="stencil.func",ue="stencil.opFront",w="stencil.opBack",B="scissor.enable",Q="scissor.box",ee="viewport",le="profile",qe="framebuffer",Xe="vert",ot="frag",Tt="elements",Kt="primitive",Jt="count",xr="offset",Pr="instances",ve="vao",be="Width",Re="Height",Be=qe+be,tt=qe+Re,We=ee+be,it=ee+Re,Dt="drawingBuffer",Ht=Dt+be,rr=Dt+Re,dr=[Ps,Xs,Ku,ue,w,oo,ee,Q,xu],Sr=34962,Or=34963,jr=2884,ii=3042,Li=3024,un=2960,sn=2929,In=3089,Kn=32823,Aa=32926,fa=32928,$a=5126,ko=35664,Qa=35665,mo=35666,Bo=5124,Is=35667,As=35668,wo=35669,To=35670,dl=35671,Nl=35672,Lu=35673,ou=35674,$s=35675,Ql=35676,dc=35678,Tl=35680,Al=4,X=1028,se=1029,Te=2304,Ne=2305,He=32775,Ye=32776,Ct=519,nt=7680,jt=0,gr=1,yr=32774,Gr=513,qr=36160,_i=36064,bi={0:0,1:1,zero:0,one:1,"src color":768,"one minus src color":769,"src alpha":770,"one minus src alpha":771,"dst color":774,"one minus dst color":775,"dst alpha":772,"one minus dst alpha":773,"constant color":32769,"one minus constant color":32770,"constant alpha":32771,"one minus constant alpha":32772,"src alpha saturate":776},Xr={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},ni={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,"increment wrap":34055,"decrement wrap":34056,invert:5386},gi={cw:Te,ccw:Ne};function Pi(Ee){return Array.isArray(Ee)||Wr(Ee)||Ur(Ee)}function Ai(Ee){return Ee.sort(function(xt,zt){return xt===ee?-1:zt===ee?1:xt<zt?-1:1})}function ti(Ee,xt,zt,Ir){this.thisDep=Ee,this.contextDep=xt,this.propDep=zt,this.append=Ir}function Rn(Ee){return Ee&&!(Ee.thisDep||Ee.contextDep||Ee.propDep)}function Cn(Ee){return new ti(!1,!1,!1,Ee)}function Nn(Ee,xt){var zt=Ee.type;if(zt===Yn){var Ir=Ee.data.length;return new ti(!0,Ir>=1,Ir>=2,xt)}else if(zt===Xo){var Hr=Ee.data;return new ti(Hr.thisDep,Hr.contextDep,Hr.propDep,xt)}else{if(zt===Ms)return new ti(!1,!1,!1,xt);if(zt===os){for(var Br=!1,Vr=!1,mi=!1,Ni=0;Ni<Ee.data.length;++Ni){var Oi=Ee.data[Ni];if(Oi.type===zn)mi=!0;else if(Oi.type===Ka)Vr=!0;else if(Oi.type===bo)Br=!0;else if(Oi.type===Yn){Br=!0;var Mi=Oi.data;Mi>=1&&(Vr=!0),Mi>=2&&(mi=!0)}else Oi.type===Xo&&(Br=Br||Oi.data.thisDep,Vr=Vr||Oi.data.contextDep,mi=mi||Oi.data.propDep)}return new ti(Br,Vr,mi,xt)}else return new ti(zt===bo,zt===Ka,zt===zn,xt)}}var ia=new ti(!1,!1,!1,function(){});function Ea(Ee,xt,zt,Ir,Hr,Br,Vr,mi,Ni,Oi,Mi,Hn,Qi,ji,si,Mr){var Yr=Oi.Record,xi={add:32774,subtract:32778,"reverse subtract":32779};zt.ext_blend_minmax&&(xi.min=He,xi.max=Ye);var Ii=zt.angle_instanced_arrays,ci=zt.webgl_draw_buffers,nn=zt.oes_vertex_array_object,Xi={dirty:!0,profile:Mr.profile},qn={},vi=[],li={},mn={};function Ki(Ve){return Ve.replace(".","_")}function Ui(Ve,et,at){var kt=Ki(Ve);vi.push(Ve),qn[kt]=Xi[kt]=!!at,li[kt]=et}function Bi(Ve,et,at){var kt=Ki(Ve);vi.push(Ve),Array.isArray(at)?(Xi[kt]=at.slice(),qn[kt]=at.slice()):Xi[kt]=qn[kt]=at,mn[kt]=et}function vn(Ve){return!!isNaN(Ve)}Ui(Ts,Li),Ui(Ho,ii),Bi(yl,"blendColor",[0,0,0,0]),Bi(Xs,"blendEquationSeparate",[yr,yr]),Bi(Ps,"blendFuncSeparate",[gr,jt,gr,jt]),Ui(va,sn,!0),Bi(no,"depthFunc",Gr),Bi(_s,"depthRange",[0,1]),Bi(is,"depthMask",!0),Bi($l,$l,[!0,!0,!0,!0]),Ui(ku,jr),Bi(Yu,"cullFace",se),Bi(Nc,Nc,Ne),Bi(gu,gu,1),Ui(Uc,Kn),Bi(xu,"polygonOffset",[0,0]),Ui(Ac,Aa),Ui(Ua,fa),Bi(oo,"sampleCoverage",[1,!1]),Ui(Vc,un),Bi(hc,"stencilMask",-1),Bi(Ku,"stencilFunc",[Ct,0,-1]),Bi(ue,"stencilOpSeparate",[X,nt,nt,nt]),Bi(w,"stencilOpSeparate",[se,nt,nt,nt]),Ui(B,In),Bi(Q,"scissor",[0,0,Ee.drawingBufferWidth,Ee.drawingBufferHeight]),Bi(ee,ee,[0,0,Ee.drawingBufferWidth,Ee.drawingBufferHeight]);var Un={gl:Ee,context:Qi,strings:xt,next:qn,current:Xi,draw:Hn,elements:Br,buffer:Hr,shader:Mi,attributes:Oi.state,vao:Oi,uniforms:Ni,framebuffer:mi,extensions:zt,timer:ji,isBufferArgs:Pi},na={primTypes:Mn,compareFuncs:Xr,blendFuncs:bi,blendEquations:xi,stencilOps:ni,glTypes:Hi,orientationType:gi};ci&&(na.backBuffer=[se],na.drawBuffer=M(Ir.maxDrawbuffers,function(Ve){return Ve===0?[0]:M(Ve,function(et){return _i+et})}));var Yi=0;function Ln(){var Ve=$n({cache:si}),et=Ve.link,at=Ve.global;Ve.id=Yi++,Ve.batchId="0";var kt=et(Un),Ot=Ve.shared={props:"a0"};Object.keys(Un).forEach(function(Pt){Ot[Pt]=at.def(kt,".",Pt)});var It=Ve.next={},Bt=Ve.current={};Object.keys(mn).forEach(function(Pt){Array.isArray(Xi[Pt])&&(It[Pt]=at.def(Ot.next,".",Pt),Bt[Pt]=at.def(Ot.current,".",Pt))});var Rt=Ve.constants={};Object.keys(na).forEach(function(Pt){Rt[Pt]=at.def(JSON.stringify(na[Pt]))}),Ve.invoke=function(Pt,ht){switch(ht.type){case Yn:var cr=["this",Ot.context,Ot.props,Ve.batchId];return Pt.def(et(ht.data),".call(",cr.slice(0,Math.max(ht.data.length+1,4)),")");case zn:return Pt.def(Ot.props,ht.data);case Ka:return Pt.def(Ot.context,ht.data);case bo:return Pt.def("this",ht.data);case Xo:return ht.data.append(Ve,Pt),ht.data.ref;case Ms:return ht.data.toString();case os:return ht.data.map(function(br){return Ve.invoke(Pt,br)})}},Ve.attribCache={};var mt={};return Ve.scopeAttrib=function(Pt){var ht=xt.id(Pt);if(ht in mt)return mt[ht];var cr=Oi.scope[ht];cr||(cr=Oi.scope[ht]=new Yr);var br=mt[ht]=et(cr);return br},Ve}function ra(Ve){var et=Ve.static,at=Ve.dynamic,kt;if(le in et){var Ot=!!et[le];kt=Cn(function(Bt,Rt){return Ot}),kt.enable=Ot}else if(le in at){var It=at[le];kt=Nn(It,function(Bt,Rt){return Bt.invoke(Rt,It)})}return kt}function oa(Ve,et){var at=Ve.static,kt=Ve.dynamic;if(qe in at){var Ot=at[qe];return Ot?(Ot=mi.getFramebuffer(Ot),Cn(function(Bt,Rt){var mt=Bt.link(Ot),Pt=Bt.shared;Rt.set(Pt.framebuffer,".next",mt);var ht=Pt.context;return Rt.set(ht,"."+Be,mt+".width"),Rt.set(ht,"."+tt,mt+".height"),mt})):Cn(function(Bt,Rt){var mt=Bt.shared;Rt.set(mt.framebuffer,".next","null");var Pt=mt.context;return Rt.set(Pt,"."+Be,Pt+"."+Ht),Rt.set(Pt,"."+tt,Pt+"."+rr),"null"})}else if(qe in kt){var It=kt[qe];return Nn(It,function(Bt,Rt){var mt=Bt.invoke(Rt,It),Pt=Bt.shared,ht=Pt.framebuffer,cr=Rt.def(ht,".getFramebuffer(",mt,")");Rt.set(ht,".next",cr);var br=Pt.context;return Rt.set(br,"."+Be,cr+"?"+cr+".width:"+br+"."+Ht),Rt.set(br,"."+tt,cr+"?"+cr+".height:"+br+"."+rr),cr})}else return null}function wa(Ve,et,at){var kt=Ve.static,Ot=Ve.dynamic;function It(mt){if(mt in kt){var Pt=kt[mt],ht=!0,cr=Pt.x|0,br=Pt.y|0,Nr,Ri;return"width"in Pt?Nr=Pt.width|0:ht=!1,"height"in Pt?Ri=Pt.height|0:ht=!1,new ti(!ht&&et&&et.thisDep,!ht&&et&&et.contextDep,!ht&&et&&et.propDep,function(gn,tn){var Ci=gn.shared.context,qi=Nr;"width"in Pt||(qi=tn.def(Ci,".",Be,"-",cr));var Vi=Ri;return"height"in Pt||(Vi=tn.def(Ci,".",tt,"-",br)),[cr,br,qi,Vi]})}else if(mt in Ot){var hi=Ot[mt],wi=Nn(hi,function(gn,tn){var Ci=gn.invoke(tn,hi),qi=gn.shared.context,Vi=tn.def(Ci,".x|0"),on=tn.def(Ci,".y|0"),On=tn.def('"width" in ',Ci,"?",Ci,".width|0:","(",qi,".",Be,"-",Vi,")"),Ja=tn.def('"height" in ',Ci,"?",Ci,".height|0:","(",qi,".",tt,"-",on,")");return[Vi,on,On,Ja]});return et&&(wi.thisDep=wi.thisDep||et.thisDep,wi.contextDep=wi.contextDep||et.contextDep,wi.propDep=wi.propDep||et.propDep),wi}else return et?new ti(et.thisDep,et.contextDep,et.propDep,function(gn,tn){var Ci=gn.shared.context;return[0,0,tn.def(Ci,".",Be),tn.def(Ci,".",tt)]}):null}var Bt=It(ee);if(Bt){var Rt=Bt;Bt=new ti(Bt.thisDep,Bt.contextDep,Bt.propDep,function(mt,Pt){var ht=Rt.append(mt,Pt),cr=mt.shared.context;return Pt.set(cr,"."+We,ht[2]),Pt.set(cr,"."+it,ht[3]),ht})}return{viewport:Bt,scissor_box:It(Q)}}function ns(Ve,et){var at=Ve.static,kt=typeof at[ot]=="string"&&typeof at[Xe]=="string";if(kt){if(Object.keys(et.dynamic).length>0)return null;var Ot=et.static,It=Object.keys(Ot);if(It.length>0&&typeof Ot[It[0]]=="number"){for(var Bt=[],Rt=0;Rt<It.length;++Rt)Bt.push([Ot[It[Rt]]|0,It[Rt]]);return Bt}}return null}function Ys(Ve,et,at){var kt=Ve.static,Ot=Ve.dynamic;function It(ht){if(ht in kt){var cr=xt.id(kt[ht]),br=Cn(function(){return cr});return br.id=cr,br}else if(ht in Ot){var Nr=Ot[ht];return Nn(Nr,function(Ri,hi){var wi=Ri.invoke(hi,Nr),gn=hi.def(Ri.shared.strings,".id(",wi,")");return gn})}return null}var Bt=It(ot),Rt=It(Xe),mt=null,Pt;return Rn(Bt)&&Rn(Rt)?(mt=Mi.program(Rt.id,Bt.id,null,at),Pt=Cn(function(ht,cr){return ht.link(mt)})):Pt=new ti(Bt&&Bt.thisDep||Rt&&Rt.thisDep,Bt&&Bt.contextDep||Rt&&Rt.contextDep,Bt&&Bt.propDep||Rt&&Rt.propDep,function(ht,cr){var br=ht.shared.shader,Nr;Bt?Nr=Bt.append(ht,cr):Nr=cr.def(br,".",ot);var Ri;Rt?Ri=Rt.append(ht,cr):Ri=cr.def(br,".",Xe);var hi=br+".program("+Ri+","+Nr;return cr.def(hi+")")}),{frag:Bt,vert:Rt,progVar:Pt,program:mt}}function Va(Ve,et){var at=Ve.static,kt=Ve.dynamic,Ot={},It=!1;function Bt(){if(ve in at){var tn=at[ve];return tn!==null&&Oi.getVAO(tn)===null&&(tn=Oi.createVAO(tn)),It=!0,Ot.vao=tn,Cn(function(qi){var Vi=Oi.getVAO(tn);return Vi?qi.link(Vi):"null"})}else if(ve in kt){It=!0;var Ci=kt[ve];return Nn(Ci,function(qi,Vi){var on=qi.invoke(Vi,Ci);return Vi.def(qi.shared.vao+".getVAO("+on+")")})}return null}var Rt=Bt(),mt=!1;function Pt(){if(Tt in at){var tn=at[Tt];if(Ot.elements=tn,Pi(tn)){var Ci=Ot.elements=Br.create(tn,!0);tn=Br.getElements(Ci),mt=!0}else tn&&(tn=Br.getElements(tn),mt=!0);var qi=Cn(function(on,On){if(tn){var Ja=on.link(tn);return on.ELEMENTS=Ja,Ja}return on.ELEMENTS=null,null});return qi.value=tn,qi}else if(Tt in kt){mt=!0;var Vi=kt[Tt];return Nn(Vi,function(on,On){var Ja=on.shared,co=Ja.isBufferArgs,rs=Ja.elements,so=on.invoke(On,Vi),Zo=On.def("null"),ys=On.def(co,"(",so,")"),su=on.cond(ys).then(Zo,"=",rs,".createStream(",so,");").else(Zo,"=",rs,".getElements(",so,");");return On.entry(su),On.exit(on.cond(ys).then(rs,".destroyStream(",Zo,");")),on.ELEMENTS=Zo,Zo})}else if(It)return new ti(Rt.thisDep,Rt.contextDep,Rt.propDep,function(on,On){return On.def(on.shared.vao+".currentVAO?"+on.shared.elements+".getElements("+on.shared.vao+".currentVAO.elements):null")});return null}var ht=Pt();function cr(){if(Kt in at){var tn=at[Kt];return Ot.primitive=tn,Cn(function(qi,Vi){return Mn[tn]})}else if(Kt in kt){var Ci=kt[Kt];return Nn(Ci,function(qi,Vi){var on=qi.constants.primTypes,On=qi.invoke(Vi,Ci);return Vi.def(on,"[",On,"]")})}else{if(mt)return Rn(ht)?ht.value?Cn(function(qi,Vi){return Vi.def(qi.ELEMENTS,".primType")}):Cn(function(){return Al}):new ti(ht.thisDep,ht.contextDep,ht.propDep,function(qi,Vi){var on=qi.ELEMENTS;return Vi.def(on,"?",on,".primType:",Al)});if(It)return new ti(Rt.thisDep,Rt.contextDep,Rt.propDep,function(qi,Vi){return Vi.def(qi.shared.vao+".currentVAO?"+qi.shared.vao+".currentVAO.primitive:"+Al)})}return null}function br(tn,Ci){if(tn in at){var qi=at[tn]|0;return Ci?Ot.offset=qi:Ot.instances=qi,Cn(function(on,On){return Ci&&(on.OFFSET=qi),qi})}else if(tn in kt){var Vi=kt[tn];return Nn(Vi,function(on,On){var Ja=on.invoke(On,Vi);return Ci&&(on.OFFSET=Ja),Ja})}else if(Ci){if(mt)return Cn(function(on,On){return on.OFFSET=0,0});if(It)return new ti(Rt.thisDep,Rt.contextDep,Rt.propDep,function(on,On){return On.def(on.shared.vao+".currentVAO?"+on.shared.vao+".currentVAO.offset:0")})}else if(It)return new ti(Rt.thisDep,Rt.contextDep,Rt.propDep,function(on,On){return On.def(on.shared.vao+".currentVAO?"+on.shared.vao+".currentVAO.instances:-1")});return null}var Nr=br(xr,!0);function Ri(){if(Jt in at){var tn=at[Jt]|0;return Ot.count=tn,Cn(function(){return tn})}else if(Jt in kt){var Ci=kt[Jt];return Nn(Ci,function(On,Ja){var co=On.invoke(Ja,Ci);return co})}else if(mt)if(Rn(ht)){if(ht)return Nr?new ti(Nr.thisDep,Nr.contextDep,Nr.propDep,function(On,Ja){var co=Ja.def(On.ELEMENTS,".vertCount-",On.OFFSET);return co}):Cn(function(On,Ja){return Ja.def(On.ELEMENTS,".vertCount")});var qi=Cn(function(){return-1});return qi}else{var Vi=new ti(ht.thisDep||Nr.thisDep,ht.contextDep||Nr.contextDep,ht.propDep||Nr.propDep,function(On,Ja){var co=On.ELEMENTS;return On.OFFSET?Ja.def(co,"?",co,".vertCount-",On.OFFSET,":-1"):Ja.def(co,"?",co,".vertCount:-1")});return Vi}else if(It){var on=new ti(Rt.thisDep,Rt.contextDep,Rt.propDep,function(On,Ja){return Ja.def(On.shared.vao,".currentVAO?",On.shared.vao,".currentVAO.count:-1")});return on}return null}var hi=cr(),wi=Ri(),gn=br(Pr,!1);return{elements:ht,primitive:hi,count:wi,instances:gn,offset:Nr,vao:Rt,vaoActive:It,elementsActive:mt,static:Ot}}function Ml(Ve,et){var at=Ve.static,kt=Ve.dynamic,Ot={};return vi.forEach(function(It){var Bt=Ki(It);function Rt(mt,Pt){if(It in at){var ht=mt(at[It]);Ot[Bt]=Cn(function(){return ht})}else if(It in kt){var cr=kt[It];Ot[Bt]=Nn(cr,function(br,Nr){return Pt(br,Nr,br.invoke(Nr,cr))})}}switch(It){case ku:case Ho:case Ts:case Vc:case va:case B:case Uc:case Ac:case Ua:case is:return Rt(function(mt){return mt},function(mt,Pt,ht){return ht});case no:return Rt(function(mt){return Xr[mt]},function(mt,Pt,ht){var cr=mt.constants.compareFuncs;return Pt.def(cr,"[",ht,"]")});case _s:return Rt(function(mt){return mt},function(mt,Pt,ht){var cr=Pt.def("+",ht,"[0]"),br=Pt.def("+",ht,"[1]");return[cr,br]});case Ps:return Rt(function(mt){var Pt="srcRGB"in mt?mt.srcRGB:mt.src,ht="srcAlpha"in mt?mt.srcAlpha:mt.src,cr="dstRGB"in mt?mt.dstRGB:mt.dst,br="dstAlpha"in mt?mt.dstAlpha:mt.dst;return[bi[Pt],bi[cr],bi[ht],bi[br]]},function(mt,Pt,ht){var cr=mt.constants.blendFuncs;function br(Ci,qi){var Vi=Pt.def('"',Ci,qi,'" in ',ht,"?",ht,".",Ci,qi,":",ht,".",Ci);return Vi}var Nr=br("src","RGB"),Ri=br("dst","RGB"),hi=Pt.def(cr,"[",Nr,"]"),wi=Pt.def(cr,"[",br("src","Alpha"),"]"),gn=Pt.def(cr,"[",Ri,"]"),tn=Pt.def(cr,"[",br("dst","Alpha"),"]");return[hi,gn,wi,tn]});case Xs:return Rt(function(mt){if(typeof mt=="string")return[xi[mt],xi[mt]];if(typeof mt=="object")return[xi[mt.rgb],xi[mt.alpha]]},function(mt,Pt,ht){var cr=mt.constants.blendEquations,br=Pt.def(),Nr=Pt.def(),Ri=mt.cond("typeof ",ht,'==="string"');return Ri.then(br,"=",Nr,"=",cr,"[",ht,"];"),Ri.else(br,"=",cr,"[",ht,".rgb];",Nr,"=",cr,"[",ht,".alpha];"),Pt(Ri),[br,Nr]});case yl:return Rt(function(mt){return M(4,function(Pt){return+mt[Pt]})},function(mt,Pt,ht){return M(4,function(cr){return Pt.def("+",ht,"[",cr,"]")})});case hc:return Rt(function(mt){return mt|0},function(mt,Pt,ht){return Pt.def(ht,"|0")});case Ku:return Rt(function(mt){var Pt=mt.cmp||"keep",ht=mt.ref||0,cr="mask"in mt?mt.mask:-1;return[Xr[Pt],ht,cr]},function(mt,Pt,ht){var cr=mt.constants.compareFuncs,br=Pt.def('"cmp" in ',ht,"?",cr,"[",ht,".cmp]",":",nt),Nr=Pt.def(ht,".ref|0"),Ri=Pt.def('"mask" in ',ht,"?",ht,".mask|0:-1");return[br,Nr,Ri]});case ue:case w:return Rt(function(mt){var Pt=mt.fail||"keep",ht=mt.zfail||"keep",cr=mt.zpass||"keep";return[It===w?se:X,ni[Pt],ni[ht],ni[cr]]},function(mt,Pt,ht){var cr=mt.constants.stencilOps;function br(Nr){return Pt.def('"',Nr,'" in ',ht,"?",cr,"[",ht,".",Nr,"]:",nt)}return[It===w?se:X,br("fail"),br("zfail"),br("zpass")]});case xu:return Rt(function(mt){var Pt=mt.factor|0,ht=mt.units|0;return[Pt,ht]},function(mt,Pt,ht){var cr=Pt.def(ht,".factor|0"),br=Pt.def(ht,".units|0");return[cr,br]});case Yu:return Rt(function(mt){var Pt=0;return mt==="front"?Pt=X:mt==="back"&&(Pt=se),Pt},function(mt,Pt,ht){return Pt.def(ht,'==="front"?',X,":",se)});case gu:return Rt(function(mt){return mt},function(mt,Pt,ht){return ht});case Nc:return Rt(function(mt){return gi[mt]},function(mt,Pt,ht){return Pt.def(ht+'==="cw"?'+Te+":"+Ne)});case $l:return Rt(function(mt){return mt.map(function(Pt){return!!Pt})},function(mt,Pt,ht){return M(4,function(cr){return"!!"+ht+"["+cr+"]"})});case oo:return Rt(function(mt){var Pt="value"in mt?mt.value:1,ht=!!mt.invert;return[Pt,ht]},function(mt,Pt,ht){var cr=Pt.def('"value" in ',ht,"?+",ht,".value:1"),br=Pt.def("!!",ht,".invert");return[cr,br]})}}),Ot}function zo(Ve,et){var at=Ve.static,kt=Ve.dynamic,Ot={};return Object.keys(at).forEach(function(It){var Bt=at[It],Rt;if(typeof Bt=="number"||typeof Bt=="boolean")Rt=Cn(function(){return Bt});else if(typeof Bt=="function"){var mt=Bt._reglType;mt==="texture2d"||mt==="textureCube"?Rt=Cn(function(Pt){return Pt.link(Bt)}):(mt==="framebuffer"||mt==="framebufferCube")&&(Rt=Cn(function(Pt){return Pt.link(Bt.color[0])}))}else En(Bt)&&(Rt=Cn(function(Pt){var ht=Pt.global.def("[",M(Bt.length,function(cr){return Bt[cr]}),"]");return ht}));Rt.value=Bt,Ot[It]=Rt}),Object.keys(kt).forEach(function(It){var Bt=kt[It];Ot[It]=Nn(Bt,function(Rt,mt){return Rt.invoke(mt,Bt)})}),Ot}function el(Ve,et){var at=Ve.static,kt=Ve.dynamic,Ot={};return Object.keys(at).forEach(function(It){var Bt=at[It],Rt=xt.id(It),mt=new Yr;if(Pi(Bt))mt.state=La,mt.buffer=Hr.getBuffer(Hr.create(Bt,Sr,!1,!0)),mt.type=0;else{var Pt=Hr.getBuffer(Bt);if(Pt)mt.state=La,mt.buffer=Pt,mt.type=0;else if("constant"in Bt){var ht=Bt.constant;mt.buffer="null",mt.state=Na,typeof ht=="number"?mt.x=ht:ka.forEach(function(gn,tn){tn<ht.length&&(mt[gn]=ht[tn])})}else{Pi(Bt.buffer)?Pt=Hr.getBuffer(Hr.create(Bt.buffer,Sr,!1,!0)):Pt=Hr.getBuffer(Bt.buffer);var cr=Bt.offset|0,br=Bt.stride|0,Nr=Bt.size|0,Ri=!!Bt.normalized,hi=0;"type"in Bt&&(hi=Hi[Bt.type]);var wi=Bt.divisor|0;mt.buffer=Pt,mt.state=La,mt.size=Nr,mt.normalized=Ri,mt.type=hi||Pt.dtype,mt.offset=cr,mt.stride=br,mt.divisor=wi}}Ot[It]=Cn(function(gn,tn){var Ci=gn.attribCache;if(Rt in Ci)return Ci[Rt];var qi={isStream:!1};return Object.keys(mt).forEach(function(Vi){qi[Vi]=mt[Vi]}),mt.buffer&&(qi.buffer=gn.link(mt.buffer),qi.type=qi.type||qi.buffer+".dtype"),Ci[Rt]=qi,qi})}),Object.keys(kt).forEach(function(It){var Bt=kt[It];function Rt(mt,Pt){var ht=mt.invoke(Pt,Bt),cr=mt.shared,br=mt.constants,Nr=cr.isBufferArgs,Ri=cr.buffer,hi={isStream:Pt.def(!1)},wi=new Yr;wi.state=La,Object.keys(wi).forEach(function(qi){hi[qi]=Pt.def(""+wi[qi])});var gn=hi.buffer,tn=hi.type;Pt("if(",Nr,"(",ht,")){",hi.isStream,"=true;",gn,"=",Ri,".createStream(",Sr,",",ht,");",tn,"=",gn,".dtype;","}else{",gn,"=",Ri,".getBuffer(",ht,");","if(",gn,"){",tn,"=",gn,".dtype;",'}else if("constant" in ',ht,"){",hi.state,"=",Na,";","if(typeof "+ht+'.constant === "number"){',hi[ka[0]],"=",ht,".constant;",ka.slice(1).map(function(qi){return hi[qi]}).join("="),"=0;","}else{",ka.map(function(qi,Vi){return hi[qi]+"="+ht+".constant.length>"+Vi+"?"+ht+".constant["+Vi+"]:0;"}).join(""),"}}else{","if(",Nr,"(",ht,".buffer)){",gn,"=",Ri,".createStream(",Sr,",",ht,".buffer);","}else{",gn,"=",Ri,".getBuffer(",ht,".buffer);","}",tn,'="type" in ',ht,"?",br.glTypes,"[",ht,".type]:",gn,".dtype;",hi.normalized,"=!!",ht,".normalized;");function Ci(qi){Pt(hi[qi],"=",ht,".",qi,"|0;")}return Ci("size"),Ci("offset"),Ci("stride"),Ci("divisor"),Pt("}}"),Pt.exit("if(",hi.isStream,"){",Ri,".destroyStream(",gn,");","}"),hi}Ot[It]=Nn(Bt,Rt)}),Ot}function ol(Ve){var et=Ve.static,at=Ve.dynamic,kt={};return Object.keys(et).forEach(function(Ot){var It=et[Ot];kt[Ot]=Cn(function(Bt,Rt){return typeof It=="number"||typeof It=="boolean"?""+It:Bt.link(It)})}),Object.keys(at).forEach(function(Ot){var It=at[Ot];kt[Ot]=Nn(It,function(Bt,Rt){return Bt.invoke(Rt,It)})}),kt}function Ul(Ve,et,at,kt,Ot){var It=Ve.static,Bt=Ve.dynamic,Rt=ns(Ve,et),mt=oa(Ve,Ot),Pt=wa(Ve,mt,Ot),ht=Va(Ve,Ot),cr=Ml(Ve,Ot),br=Ys(Ve,Ot,Rt);function Nr(Ci){var qi=Pt[Ci];qi&&(cr[Ci]=qi)}Nr(ee),Nr(Ki(Q));var Ri=Object.keys(cr).length>0,hi={framebuffer:mt,draw:ht,shader:br,state:cr,dirty:Ri,scopeVAO:null,drawVAO:null,useVAO:!1,attributes:{}};if(hi.profile=ra(Ve,Ot),hi.uniforms=zo(at,Ot),hi.drawVAO=hi.scopeVAO=ht.vao,!hi.drawVAO&&br.program&&!Rt&&zt.angle_instanced_arrays&&ht.static.elements){var wi=!0,gn=br.program.attributes.map(function(Ci){var qi=et.static[Ci];return wi=wi&&!!qi,qi});if(wi&&gn.length>0){var tn=Oi.getVAO(Oi.createVAO({attributes:gn,elements:ht.static.elements}));hi.drawVAO=new ti(null,null,null,function(Ci,qi){return Ci.link(tn)}),hi.useVAO=!0}}return Rt?hi.useVAO=!0:hi.attributes=el(et,Ot),hi.context=ol(kt,Ot),hi}function ls(Ve,et,at){var kt=Ve.shared,Ot=kt.context,It=Ve.scope();Object.keys(at).forEach(function(Bt){et.save(Ot,"."+Bt);var Rt=at[Bt],mt=Rt.append(Ve,et);Array.isArray(mt)?It(Ot,".",Bt,"=[",mt.join(),"];"):It(Ot,".",Bt,"=",mt,";")}),et(It)}function Gs(Ve,et,at,kt){var Ot=Ve.shared,It=Ot.gl,Bt=Ot.framebuffer,Rt;ci&&(Rt=et.def(Ot.extensions,".webgl_draw_buffers"));var mt=Ve.constants,Pt=mt.drawBuffer,ht=mt.backBuffer,cr;at?cr=at.append(Ve,et):cr=et.def(Bt,".next"),kt||et("if(",cr,"!==",Bt,".cur){"),et("if(",cr,"){",It,".bindFramebuffer(",qr,",",cr,".framebuffer);"),ci&&et(Rt,".drawBuffersWEBGL(",Pt,"[",cr,".colorAttachments.length]);"),et("}else{",It,".bindFramebuffer(",qr,",null);"),ci&&et(Rt,".drawBuffersWEBGL(",ht,");"),et("}",Bt,".cur=",cr,";"),kt||et("}")}function Ks(Ve,et,at){var kt=Ve.shared,Ot=kt.gl,It=Ve.current,Bt=Ve.next,Rt=kt.current,mt=kt.next,Pt=Ve.cond(Rt,".dirty");vi.forEach(function(ht){var cr=Ki(ht);if(!(cr in at.state)){var br,Nr;if(cr in Bt){br=Bt[cr],Nr=It[cr];var Ri=M(Xi[cr].length,function(wi){return Pt.def(br,"[",wi,"]")});Pt(Ve.cond(Ri.map(function(wi,gn){return wi+"!=="+Nr+"["+gn+"]"}).join("||")).then(Ot,".",mn[cr],"(",Ri,");",Ri.map(function(wi,gn){return Nr+"["+gn+"]="+wi}).join(";"),";"))}else{br=Pt.def(mt,".",cr);var hi=Ve.cond(br,"!==",Rt,".",cr);Pt(hi),cr in li?hi(Ve.cond(br).then(Ot,".enable(",li[cr],");").else(Ot,".disable(",li[cr],");"),Rt,".",cr,"=",br,";"):hi(Ot,".",mn[cr],"(",br,");",Rt,".",cr,"=",br,";")}}}),Object.keys(at.state).length===0&&Pt(Rt,".dirty=false;"),et(Pt)}function Ta(Ve,et,at,kt){var Ot=Ve.shared,It=Ve.current,Bt=Ot.current,Rt=Ot.gl,mt;Ai(Object.keys(at)).forEach(function(Pt){var ht=at[Pt];if(!(kt&&!kt(ht))){var cr=ht.append(Ve,et);if(li[Pt]){var br=li[Pt];Rn(ht)?(mt=Ve.link(cr,{stable:!0}),et(Ve.cond(mt).then(Rt,".enable(",br,");").else(Rt,".disable(",br,");")),et(Bt,".",Pt,"=",mt,";")):(et(Ve.cond(cr).then(Rt,".enable(",br,");").else(Rt,".disable(",br,");")),et(Bt,".",Pt,"=",cr,";"))}else if(En(cr)){var Nr=It[Pt];et(Rt,".",mn[Pt],"(",cr,");",cr.map(function(Ri,hi){return Nr+"["+hi+"]="+Ri}).join(";"),";")}else Rn(ht)?(mt=Ve.link(cr,{stable:!0}),et(Rt,".",mn[Pt],"(",mt,");",Bt,".",Pt,"=",mt,";")):et(Rt,".",mn[Pt],"(",cr,");",Bt,".",Pt,"=",cr,";")}})}function sl(Ve,et){Ii&&(Ve.instancing=et.def(Ve.shared.extensions,".angle_instanced_arrays"))}function io(Ve,et,at,kt,Ot){var It=Ve.shared,Bt=Ve.stats,Rt=It.current,mt=It.timer,Pt=at.profile;function ht(){return typeof performance=="undefined"?"Date.now()":"performance.now()"}var cr,br;function Nr(Ci){cr=et.def(),Ci(cr,"=",ht(),";"),typeof Ot=="string"?Ci(Bt,".count+=",Ot,";"):Ci(Bt,".count++;"),ji&&(kt?(br=et.def(),Ci(br,"=",mt,".getNumPendingQueries();")):Ci(mt,".beginQuery(",Bt,");"))}function Ri(Ci){Ci(Bt,".cpuTime+=",ht(),"-",cr,";"),ji&&(kt?Ci(mt,".pushScopeStats(",br,",",mt,".getNumPendingQueries(),",Bt,");"):Ci(mt,".endQuery();"))}function hi(Ci){var qi=et.def(Rt,".profile");et(Rt,".profile=",Ci,";"),et.exit(Rt,".profile=",qi,";")}var wi;if(Pt){if(Rn(Pt)){Pt.enable?(Nr(et),Ri(et.exit),hi("true")):hi("false");return}wi=Pt.append(Ve,et),hi(wi)}else wi=et.def(Rt,".profile");var gn=Ve.block();Nr(gn),et("if(",wi,"){",gn,"}");var tn=Ve.block();Ri(tn),et.exit("if(",wi,"){",tn,"}")}function Y(Ve,et,at,kt,Ot){var It=Ve.shared;function Bt(mt){switch(mt){case ko:case Is:case dl:return 2;case Qa:case As:case Nl:return 3;case mo:case wo:case Lu:return 4;default:return 1}}function Rt(mt,Pt,ht){var cr=It.gl,br=et.def(mt,".location"),Nr=et.def(It.attributes,"[",br,"]"),Ri=ht.state,hi=ht.buffer,wi=[ht.x,ht.y,ht.z,ht.w],gn=["buffer","normalized","offset","stride"];function tn(){et("if(!",Nr,".buffer){",cr,".enableVertexAttribArray(",br,");}");var qi=ht.type,Vi;if(ht.size?Vi=et.def(ht.size,"||",Pt):Vi=Pt,et("if(",Nr,".type!==",qi,"||",Nr,".size!==",Vi,"||",gn.map(function(On){return Nr+"."+On+"!=="+ht[On]}).join("||"),"){",cr,".bindBuffer(",Sr,",",hi,".buffer);",cr,".vertexAttribPointer(",[br,Vi,qi,ht.normalized,ht.stride,ht.offset],");",Nr,".type=",qi,";",Nr,".size=",Vi,";",gn.map(function(On){return Nr+"."+On+"="+ht[On]+";"}).join(""),"}"),Ii){var on=ht.divisor;et("if(",Nr,".divisor!==",on,"){",Ve.instancing,".vertexAttribDivisorANGLE(",[br,on],");",Nr,".divisor=",on,";}")}}function Ci(){et("if(",Nr,".buffer){",cr,".disableVertexAttribArray(",br,");",Nr,".buffer=null;","}if(",ka.map(function(qi,Vi){return Nr+"."+qi+"!=="+wi[Vi]}).join("||"),"){",cr,".vertexAttrib4f(",br,",",wi,");",ka.map(function(qi,Vi){return Nr+"."+qi+"="+wi[Vi]+";"}).join(""),"}")}Ri===La?tn():Ri===Na?Ci():(et("if(",Ri,"===",La,"){"),tn(),et("}else{"),Ci(),et("}"))}kt.forEach(function(mt){var Pt=mt.name,ht=at.attributes[Pt],cr;if(ht){if(!Ot(ht))return;cr=ht.append(Ve,et)}else{if(!Ot(ia))return;var br=Ve.scopeAttrib(Pt);cr={},Object.keys(new Yr).forEach(function(Nr){cr[Nr]=et.def(br,".",Nr)})}Rt(Ve.link(mt),Bt(mt.info.type),cr)})}function D(Ve,et,at,kt,Ot,It){for(var Bt=Ve.shared,Rt=Bt.gl,mt,Pt=0;Pt<kt.length;++Pt){var ht=kt[Pt],cr=ht.name,br=ht.info.type,Nr=at.uniforms[cr],Ri=Ve.link(ht),hi=Ri+".location",wi;if(Nr){if(!Ot(Nr))continue;if(Rn(Nr)){var gn=Nr.value;if(br===dc||br===Tl){var tn=Ve.link(gn._texture||gn.color[0]._texture);et(Rt,".uniform1i(",hi,",",tn+".bind());"),et.exit(tn,".unbind();")}else if(br===ou||br===$s||br===Ql){var Ci=Ve.global.def("new Float32Array(["+Array.prototype.slice.call(gn)+"])"),qi=2;br===$s?qi=3:br===Ql&&(qi=4),et(Rt,".uniformMatrix",qi,"fv(",hi,",false,",Ci,");")}else{switch(br){case $a:mt="1f";break;case ko:mt="2f";break;case Qa:mt="3f";break;case mo:mt="4f";break;case To:mt="1i";break;case Bo:mt="1i";break;case dl:mt="2i";break;case Is:mt="2i";break;case Nl:mt="3i";break;case As:mt="3i";break;case Lu:mt="4i";break;case wo:mt="4i";break}et(Rt,".uniform",mt,"(",hi,",",En(gn)?Array.prototype.slice.call(gn):gn,");")}continue}else wi=Nr.append(Ve,et)}else{if(!Ot(ia))continue;wi=et.def(Bt.uniforms,"[",xt.id(cr),"]")}br===dc?et("if(",wi,"&&",wi,'._reglType==="framebuffer"){',wi,"=",wi,".color[0];","}"):br===Tl&&et("if(",wi,"&&",wi,'._reglType==="framebufferCube"){',wi,"=",wi,".color[0];","}");var Vi=1;switch(br){case dc:case Tl:var on=et.def(wi,"._texture");et(Rt,".uniform1i(",hi,",",on,".bind());"),et.exit(on,".unbind();");continue;case Bo:case To:mt="1i";break;case Is:case dl:mt="2i",Vi=2;break;case As:case Nl:mt="3i",Vi=3;break;case wo:case Lu:mt="4i",Vi=4;break;case $a:mt="1f";break;case ko:mt="2f",Vi=2;break;case Qa:mt="3f",Vi=3;break;case mo:mt="4f",Vi=4;break;case ou:mt="Matrix2fv";break;case $s:mt="Matrix3fv";break;case Ql:mt="Matrix4fv";break}if(mt.charAt(0)==="M"){et(Rt,".uniform",mt,"(",hi,",");var On=Math.pow(br-ou+2,2),Ja=Ve.global.def("new Float32Array(",On,")");Array.isArray(wi)?et("false,(",M(On,function(ys){return Ja+"["+ys+"]="+wi[ys]}),",",Ja,")"):et("false,(Array.isArray(",wi,")||",wi," instanceof Float32Array)?",wi,":(",M(On,function(ys){return Ja+"["+ys+"]="+wi+"["+ys+"]"}),",",Ja,")"),et(");")}else if(Vi>1){for(var co=[],rs=[],so=0;so<Vi;++so)Array.isArray(wi)?rs.push(wi[so]):rs.push(et.def(wi+"["+so+"]")),It&&co.push(et.def());It&&et("if(!",Ve.batchId,"||",co.map(function(ys,su){return ys+"!=="+rs[su]}).join("||"),"){",co.map(function(ys,su){return ys+"="+rs[su]+";"}).join("")),et(Rt,".uniform",mt,"(",hi,",",rs.join(","),");"),It&&et("}")}else{if(It){var Zo=et.def();et("if(!",Ve.batchId,"||",Zo,"!==",wi,"){",Zo,"=",wi,";")}et(Rt,".uniform",mt,"(",hi,",",wi,");"),It&&et("}")}}}function J(Ve,et,at,kt){var Ot=Ve.shared,It=Ot.gl,Bt=Ot.draw,Rt=kt.draw;function mt(){var Vi=Rt.elements,on,On=et;return Vi?((Vi.contextDep&&kt.contextDynamic||Vi.propDep)&&(On=at),on=Vi.append(Ve,On),Rt.elementsActive&&On("if("+on+")"+It+".bindBuffer("+Or+","+on+".buffer.buffer);")):(on=On.def(),On(on,"=",Bt,".",Tt,";","if(",on,"){",It,".bindBuffer(",Or,",",on,".buffer.buffer);}","else if(",Ot.vao,".currentVAO){",on,"=",Ve.shared.elements+".getElements("+Ot.vao,".currentVAO.elements);",nn?"":"if("+on+")"+It+".bindBuffer("+Or+","+on+".buffer.buffer);","}")),on}function Pt(){var Vi=Rt.count,on,On=et;return Vi?((Vi.contextDep&&kt.contextDynamic||Vi.propDep)&&(On=at),on=Vi.append(Ve,On)):on=On.def(Bt,".",Jt),on}var ht=mt();function cr(Vi){var on=Rt[Vi];return on?on.contextDep&&kt.contextDynamic||on.propDep?on.append(Ve,at):on.append(Ve,et):et.def(Bt,".",Vi)}var br=cr(Kt),Nr=cr(xr),Ri=Pt();if(typeof Ri=="number"){if(Ri===0)return}else at("if(",Ri,"){"),at.exit("}");var hi,wi;Ii&&(hi=cr(Pr),wi=Ve.instancing);var gn=ht+".type",tn=Rt.elements&&Rn(Rt.elements)&&!Rt.vaoActive;function Ci(){function Vi(){at(wi,".drawElementsInstancedANGLE(",[br,Ri,gn,Nr+"<<(("+gn+"-"+Ra+")>>1)",hi],");")}function on(){at(wi,".drawArraysInstancedANGLE(",[br,Nr,Ri,hi],");")}ht&&ht!=="null"?tn?Vi():(at("if(",ht,"){"),Vi(),at("}else{"),on(),at("}")):on()}function qi(){function Vi(){at(It+".drawElements("+[br,Ri,gn,Nr+"<<(("+gn+"-"+Ra+")>>1)"]+");")}function on(){at(It+".drawArrays("+[br,Nr,Ri]+");")}ht&&ht!=="null"?tn?Vi():(at("if(",ht,"){"),Vi(),at("}else{"),on(),at("}")):on()}Ii&&(typeof hi!="number"||hi>=0)?typeof hi=="string"?(at("if(",hi,">0){"),Ci(),at("}else if(",hi,"<0){"),qi(),at("}")):Ci():qi()}function q(Ve,et,at,kt,Ot){var It=Ln(),Bt=It.proc("body",Ot);return Ii&&(It.instancing=Bt.def(It.shared.extensions,".angle_instanced_arrays")),Ve(It,Bt,at,kt),It.compile().body}function K(Ve,et,at,kt){sl(Ve,et),at.useVAO?at.drawVAO?et(Ve.shared.vao,".setVAO(",at.drawVAO.append(Ve,et),");"):et(Ve.shared.vao,".setVAO(",Ve.shared.vao,".targetVAO);"):(et(Ve.shared.vao,".setVAO(null);"),Y(Ve,et,at,kt.attributes,function(){return!0})),D(Ve,et,at,kt.uniforms,function(){return!0},!1),J(Ve,et,et,at)}function de(Ve,et){var at=Ve.proc("draw",1);sl(Ve,at),ls(Ve,at,et.context),Gs(Ve,at,et.framebuffer),Ks(Ve,at,et),Ta(Ve,at,et.state),io(Ve,at,et,!1,!0);var kt=et.shader.progVar.append(Ve,at);if(at(Ve.shared.gl,".useProgram(",kt,".program);"),et.shader.program)K(Ve,at,et,et.shader.program);else{at(Ve.shared.vao,".setVAO(null);");var Ot=Ve.global.def("{}"),It=at.def(kt,".id"),Bt=at.def(Ot,"[",It,"]");at(Ve.cond(Bt).then(Bt,".call(this,a0);").else(Bt,"=",Ot,"[",It,"]=",Ve.link(function(Rt){return q(K,Ve,et,Rt,1)}),"(",kt,");",Bt,".call(this,a0);"))}Object.keys(et.state).length>0&&at(Ve.shared.current,".dirty=true;"),Ve.shared.vao&&at(Ve.shared.vao,".setVAO(null);")}function ne(Ve,et,at,kt){Ve.batchId="a1",sl(Ve,et);function Ot(){return!0}Y(Ve,et,at,kt.attributes,Ot),D(Ve,et,at,kt.uniforms,Ot,!1),J(Ve,et,et,at)}function we(Ve,et,at,kt){sl(Ve,et);var Ot=at.contextDep,It=et.def(),Bt="a0",Rt="a1",mt=et.def();Ve.shared.props=mt,Ve.batchId=It;var Pt=Ve.scope(),ht=Ve.scope();et(Pt.entry,"for(",It,"=0;",It,"<",Rt,";++",It,"){",mt,"=",Bt,"[",It,"];",ht,"}",Pt.exit);function cr(gn){return gn.contextDep&&Ot||gn.propDep}function br(gn){return!cr(gn)}if(at.needsContext&&ls(Ve,ht,at.context),at.needsFramebuffer&&Gs(Ve,ht,at.framebuffer),Ta(Ve,ht,at.state,cr),at.profile&&cr(at.profile)&&io(Ve,ht,at,!1,!0),kt)at.useVAO?at.drawVAO?cr(at.drawVAO)?ht(Ve.shared.vao,".setVAO(",at.drawVAO.append(Ve,ht),");"):Pt(Ve.shared.vao,".setVAO(",at.drawVAO.append(Ve,Pt),");"):Pt(Ve.shared.vao,".setVAO(",Ve.shared.vao,".targetVAO);"):(Pt(Ve.shared.vao,".setVAO(null);"),Y(Ve,Pt,at,kt.attributes,br),Y(Ve,ht,at,kt.attributes,cr)),D(Ve,Pt,at,kt.uniforms,br,!1),D(Ve,ht,at,kt.uniforms,cr,!0),J(Ve,Pt,ht,at);else{var Nr=Ve.global.def("{}"),Ri=at.shader.progVar.append(Ve,ht),hi=ht.def(Ri,".id"),wi=ht.def(Nr,"[",hi,"]");ht(Ve.shared.gl,".useProgram(",Ri,".program);","if(!",wi,"){",wi,"=",Nr,"[",hi,"]=",Ve.link(function(gn){return q(ne,Ve,at,gn,2)}),"(",Ri,");}",wi,".call(this,a0[",It,"],",It,");")}}function Ue(Ve,et){var at=Ve.proc("batch",2);Ve.batchId="0",sl(Ve,at);var kt=!1,Ot=!0;Object.keys(et.context).forEach(function(Nr){kt=kt||et.context[Nr].propDep}),kt||(ls(Ve,at,et.context),Ot=!1);var It=et.framebuffer,Bt=!1;It?(It.propDep?kt=Bt=!0:It.contextDep&&kt&&(Bt=!0),Bt||Gs(Ve,at,It)):Gs(Ve,at,null),et.state.viewport&&et.state.viewport.propDep&&(kt=!0);function Rt(Nr){return Nr.contextDep&&kt||Nr.propDep}Ks(Ve,at,et),Ta(Ve,at,et.state,function(Nr){return!Rt(Nr)}),(!et.profile||!Rt(et.profile))&&io(Ve,at,et,!1,"a1"),et.contextDep=kt,et.needsContext=Ot,et.needsFramebuffer=Bt;var mt=et.shader.progVar;if(mt.contextDep&&kt||mt.propDep)we(Ve,at,et,null);else{var Pt=mt.append(Ve,at);if(at(Ve.shared.gl,".useProgram(",Pt,".program);"),et.shader.program)we(Ve,at,et,et.shader.program);else{at(Ve.shared.vao,".setVAO(null);");var ht=Ve.global.def("{}"),cr=at.def(Pt,".id"),br=at.def(ht,"[",cr,"]");at(Ve.cond(br).then(br,".call(this,a0,a1);").else(br,"=",ht,"[",cr,"]=",Ve.link(function(Nr){return q(we,Ve,et,Nr,2)}),"(",Pt,");",br,".call(this,a0,a1);"))}}Object.keys(et.state).length>0&&at(Ve.shared.current,".dirty=true;"),Ve.shared.vao&&at(Ve.shared.vao,".setVAO(null);")}function ft(Ve,et){var at=Ve.proc("scope",3);Ve.batchId="a2";var kt=Ve.shared,Ot=kt.current;if(ls(Ve,at,et.context),et.framebuffer&&et.framebuffer.append(Ve,at),Ai(Object.keys(et.state)).forEach(function(Rt){var mt=et.state[Rt],Pt=mt.append(Ve,at);En(Pt)?Pt.forEach(function(ht,cr){vn(ht)?at.set(Ve.next[Rt],"["+cr+"]",ht):at.set(Ve.next[Rt],"["+cr+"]",Ve.link(ht,{stable:!0}))}):Rn(mt)?at.set(kt.next,"."+Rt,Ve.link(Pt,{stable:!0})):at.set(kt.next,"."+Rt,Pt)}),io(Ve,at,et,!0,!0),[Tt,xr,Jt,Pr,Kt].forEach(function(Rt){var mt=et.draw[Rt];if(mt){var Pt=mt.append(Ve,at);vn(Pt)?at.set(kt.draw,"."+Rt,Pt):at.set(kt.draw,"."+Rt,Ve.link(Pt),{stable:!0})}}),Object.keys(et.uniforms).forEach(function(Rt){var mt=et.uniforms[Rt].append(Ve,at);Array.isArray(mt)&&(mt="["+mt.map(function(Pt){return vn(Pt)?Pt:Ve.link(Pt,{stable:!0})})+"]"),at.set(kt.uniforms,"["+Ve.link(xt.id(Rt),{stable:!0})+"]",mt)}),Object.keys(et.attributes).forEach(function(Rt){var mt=et.attributes[Rt].append(Ve,at),Pt=Ve.scopeAttrib(Rt);Object.keys(new Yr).forEach(function(ht){at.set(Pt,"."+ht,mt[ht])})}),et.scopeVAO){var It=et.scopeVAO.append(Ve,at);vn(It)?at.set(kt.vao,".targetVAO",It):at.set(kt.vao,".targetVAO",Ve.link(It,{stable:!0}))}function Bt(Rt){var mt=et.shader[Rt];if(mt){var Pt=mt.append(Ve,at);vn(Pt)?at.set(kt.shader,"."+Rt,Pt):at.set(kt.shader,"."+Rt,Ve.link(Pt,{stable:!0}))}}Bt(Xe),Bt(ot),Object.keys(et.state).length>0&&(at(Ot,".dirty=true;"),at.exit(Ot,".dirty=true;")),at("a1(",Ve.shared.context,",a0,",Ve.batchId,");")}function Zt(Ve){if(!(typeof Ve!="object"||En(Ve))){for(var et=Object.keys(Ve),at=0;at<et.length;++at)if(h.isDynamic(Ve[et[at]]))return!0;return!1}}function hr(Ve,et,at){var kt=et.static[at];if(!kt||!Zt(kt))return;var Ot=Ve.global,It=Object.keys(kt),Bt=!1,Rt=!1,mt=!1,Pt=Ve.global.def("{}");It.forEach(function(cr){var br=kt[cr];if(h.isDynamic(br)){typeof br=="function"&&(br=kt[cr]=h.unbox(br));var Nr=Nn(br,null);Bt=Bt||Nr.thisDep,mt=mt||Nr.propDep,Rt=Rt||Nr.contextDep}else{switch(Ot(Pt,".",cr,"="),typeof br){case"number":Ot(br);break;case"string":Ot('"',br,'"');break;case"object":Array.isArray(br)&&Ot("[",br.join(),"]");break;default:Ot(Ve.link(br));break}Ot(";")}});function ht(cr,br){It.forEach(function(Nr){var Ri=kt[Nr];if(h.isDynamic(Ri)){var hi=cr.invoke(br,Ri);br(Pt,".",Nr,"=",hi,";")}})}et.dynamic[at]=new h.DynamicVariable(Xo,{thisDep:Bt,contextDep:Rt,propDep:mt,ref:Pt,append:ht}),delete et.static[at]}function qt(Ve,et,at,kt,Ot){var It=Ln();It.stats=It.link(Ot),Object.keys(et.static).forEach(function(Rt){hr(It,et,Rt)}),dr.forEach(function(Rt){hr(It,Ve,Rt)});var Bt=Ul(Ve,et,at,kt,It);return Bt.shader.program&&(Bt.shader.program.attributes.sort(function(Rt,mt){return Rt.name<mt.name?-1:1}),Bt.shader.program.uniforms.sort(function(Rt,mt){return Rt.name<mt.name?-1:1})),de(It,Bt),ft(It,Bt),Ue(It,Bt),e(It.compile(),{destroy:function(){Bt.shader.program.destroy()}})}return{next:qn,current:Xi,procs:function(){var Ve=Ln(),et=Ve.proc("poll"),at=Ve.proc("refresh"),kt=Ve.block();et(kt),at(kt);var Ot=Ve.shared,It=Ot.gl,Bt=Ot.next,Rt=Ot.current;kt(Rt,".dirty=false;"),Gs(Ve,et),Gs(Ve,at,null,!0);var mt;Ii&&(mt=Ve.link(Ii)),zt.oes_vertex_array_object&&at(Ve.link(zt.oes_vertex_array_object),".bindVertexArrayOES(null);");var Pt=at.def(Ot.attributes),ht=at.def(0),cr=Ve.cond(ht,".buffer");cr.then(It,".enableVertexAttribArray(i);",It,".bindBuffer(",Sr,",",ht,".buffer.buffer);",It,".vertexAttribPointer(i,",ht,".size,",ht,".type,",ht,".normalized,",ht,".stride,",ht,".offset);").else(It,".disableVertexAttribArray(i);",It,".vertexAttrib4f(i,",ht,".x,",ht,".y,",ht,".z,",ht,".w);",ht,".buffer=null;");var br=Ve.link(Ir.maxAttributes,{stable:!0});return at("for(var i=0;i<",br,";++i){",ht,"=",Pt,"[i];",cr,"}"),Ii&&at("for(var i=0;i<",br,";++i){",mt,".vertexAttribDivisorANGLE(i,",Pt,"[i].divisor);","}"),at(Ve.shared.vao,".currentVAO=null;",Ve.shared.vao,".setVAO(",Ve.shared.vao,".targetVAO);"),Object.keys(li).forEach(function(Nr){var Ri=li[Nr],hi=kt.def(Bt,".",Nr),wi=Ve.block();wi("if(",hi,"){",It,".enable(",Ri,")}else{",It,".disable(",Ri,")}",Rt,".",Nr,"=",hi,";"),at(wi),et("if(",hi,"!==",Rt,".",Nr,"){",wi,"}")}),Object.keys(mn).forEach(function(Nr){var Ri=mn[Nr],hi=Xi[Nr],wi,gn,tn=Ve.block();if(tn(It,".",Ri,"("),En(hi)){var Ci=hi.length;wi=Ve.global.def(Bt,".",Nr),gn=Ve.global.def(Rt,".",Nr),tn(M(Ci,function(qi){return wi+"["+qi+"]"}),");",M(Ci,function(qi){return gn+"["+qi+"]="+wi+"["+qi+"];"}).join("")),et("if(",M(Ci,function(qi){return wi+"["+qi+"]!=="+gn+"["+qi+"]"}).join("||"),"){",tn,"}")}else wi=kt.def(Bt,".",Nr),gn=kt.def(Rt,".",Nr),tn(wi,");",Rt,".",Nr,"=",wi,";"),et("if(",wi,"!==",gn,"){",tn,"}");at(tn)}),Ve.compile()}(),compile:qt}}function Ia(){return{vaoCount:0,bufferCount:0,elementsCount:0,framebufferCount:0,shaderCount:0,textureCount:0,cubeCount:0,renderbufferCount:0,maxTextureUnits:0}}var yo=34918,Da=34919,go=35007,Rs=function(Ee,xt){if(!xt.ext_disjoint_timer_query)return null;var zt=[];function Ir(){return zt.pop()||xt.ext_disjoint_timer_query.createQueryEXT()}function Hr(xi){zt.push(xi)}var Br=[];function Vr(xi){var Ii=Ir();xt.ext_disjoint_timer_query.beginQueryEXT(go,Ii),Br.push(Ii),ji(Br.length-1,Br.length,xi)}function mi(){xt.ext_disjoint_timer_query.endQueryEXT(go)}function Ni(){this.startQueryIndex=-1,this.endQueryIndex=-1,this.sum=0,this.stats=null}var Oi=[];function Mi(){return Oi.pop()||new Ni}function Hn(xi){Oi.push(xi)}var Qi=[];function ji(xi,Ii,ci){var nn=Mi();nn.startQueryIndex=xi,nn.endQueryIndex=Ii,nn.sum=0,nn.stats=ci,Qi.push(nn)}var si=[],Mr=[];function Yr(){var xi,Ii,ci=Br.length;if(ci!==0){Mr.length=Math.max(Mr.length,ci+1),si.length=Math.max(si.length,ci+1),si[0]=0,Mr[0]=0;var nn=0;for(xi=0,Ii=0;Ii<Br.length;++Ii){var Xi=Br[Ii];xt.ext_disjoint_timer_query.getQueryObjectEXT(Xi,Da)?(nn+=xt.ext_disjoint_timer_query.getQueryObjectEXT(Xi,yo),Hr(Xi)):Br[xi++]=Xi,si[Ii+1]=nn,Mr[Ii+1]=xi}for(Br.length=xi,xi=0,Ii=0;Ii<Qi.length;++Ii){var qn=Qi[Ii],vi=qn.startQueryIndex,li=qn.endQueryIndex;qn.sum+=si[li]-si[vi];var mn=Mr[vi],Ki=Mr[li];Ki===mn?(qn.stats.gpuTime+=qn.sum/1e6,Hn(qn)):(qn.startQueryIndex=mn,qn.endQueryIndex=Ki,Qi[xi++]=qn)}Qi.length=xi}}return{beginQuery:Vr,endQuery:mi,pushScopeStats:ji,update:Yr,getNumPendingQueries:function(){return Br.length},clear:function(){zt.push.apply(zt,Br);for(var xi=0;xi<zt.length;xi++)xt.ext_disjoint_timer_query.deleteQueryEXT(zt[xi]);Br.length=0,zt.length=0},restore:function(){Br.length=0,zt.length=0}}},Es=16384,Zs=256,Gn=1024,Ha=34962,Fo="webglcontextlost",Uo="webglcontextrestored",Qs=1,Sl=2,bu=3;function vl(Ee,xt){for(var zt=0;zt<Ee.length;++zt)if(Ee[zt]===xt)return zt;return-1}function Sc(Ee){var xt=_(Ee);if(!xt)return null;var zt=xt.gl,Ir=zt.getContextAttributes(),Hr=zt.isContextLost(),Br=k(zt,xt);if(!Br)return null;var Vr=x(),mi=Ia(),Ni=xt.cachedCode||{},Oi=Br.extensions,Mi=Rs(zt,Oi),Hn=v(),Qi=zt.drawingBufferWidth,ji=zt.drawingBufferHeight,si={tick:0,time:0,viewportWidth:Qi,viewportHeight:ji,framebufferWidth:Qi,framebufferHeight:ji,drawingBufferWidth:Qi,drawingBufferHeight:ji,pixelRatio:xt.pixelRatio},Mr={},Yr={elements:null,primitive:4,count:-1,offset:0,instances:-1},xi=ei(zt,Oi),Ii=ri(zt,mi,xt,Xi),ci=Cr(zt,Oi,Ii,mi),nn=Cu(zt,Oi,xi,mi,Ii,ci,Yr);function Xi(q){return nn.destroyBuffer(q)}var qn=Wu(zt,Vr,mi,xt),vi=of(zt,Oi,xi,function(){Ki.procs.poll()},si,mi,xt),li=Dc(zt,Oi,xi,mi,xt),mn=lf(zt,Oi,xi,vi,li,mi),Ki=Ea(zt,Vr,Oi,xi,Ii,ci,vi,mn,Mr,nn,qn,Yr,si,Mi,Ni,xt),Ui=Wl(zt,mn,Ki.procs.poll,si,Ir,Oi,xi),Bi=Ki.next,vn=zt.canvas,Un=[],na=[],Yi=[],Ln=[xt.onDestroy],ra=null;function oa(){if(Un.length===0){Mi&&Mi.update(),ra=null;return}ra=d.next(oa),Ks();for(var q=Un.length-1;q>=0;--q){var K=Un[q];K&&K(si,null,0)}zt.flush(),Mi&&Mi.update()}function wa(){!ra&&Un.length>0&&(ra=d.next(oa))}function ns(){ra&&(d.cancel(oa),ra=null)}function Ys(q){q.preventDefault(),Hr=!0,ns(),na.forEach(function(K){K()})}function Va(q){zt.getError(),Hr=!1,Br.restore(),qn.restore(),Ii.restore(),vi.restore(),li.restore(),mn.restore(),nn.restore(),Mi&&Mi.restore(),Ki.procs.refresh(),wa(),Yi.forEach(function(K){K()})}vn&&(vn.addEventListener(Fo,Ys,!1),vn.addEventListener(Uo,Va,!1));function Ml(){Un.length=0,ns(),vn&&(vn.removeEventListener(Fo,Ys),vn.removeEventListener(Uo,Va)),qn.clear(),mn.clear(),li.clear(),nn.clear(),vi.clear(),ci.clear(),Ii.clear(),Mi&&Mi.clear(),Ln.forEach(function(q){q()})}function zo(q){function K(It){var Bt=e({},It);delete Bt.uniforms,delete Bt.attributes,delete Bt.context,delete Bt.vao,"stencil"in Bt&&Bt.stencil.op&&(Bt.stencil.opBack=Bt.stencil.opFront=Bt.stencil.op,delete Bt.stencil.op);function Rt(mt){if(mt in Bt){var Pt=Bt[mt];delete Bt[mt],Object.keys(Pt).forEach(function(ht){Bt[mt+"."+ht]=Pt[ht]})}}return Rt("blend"),Rt("depth"),Rt("cull"),Rt("stencil"),Rt("polygonOffset"),Rt("scissor"),Rt("sample"),"vao"in It&&(Bt.vao=It.vao),Bt}function de(It,Bt){var Rt={},mt={};return Object.keys(It).forEach(function(Pt){var ht=It[Pt];if(h.isDynamic(ht)){mt[Pt]=h.unbox(ht,Pt);return}else if(Bt&&Array.isArray(ht)){for(var cr=0;cr<ht.length;++cr)if(h.isDynamic(ht[cr])){mt[Pt]=h.unbox(ht,Pt);return}}Rt[Pt]=ht}),{dynamic:mt,static:Rt}}var ne=de(q.context||{},!0),we=de(q.uniforms||{},!0),Ue=de(q.attributes||{},!1),ft=de(K(q),!1),Zt={gpuTime:0,cpuTime:0,count:0},hr=Ki.compile(ft,Ue,we,ne,Zt),qt=hr.draw,Ve=hr.batch,et=hr.scope,at=[];function kt(It){for(;at.length<It;)at.push(null);return at}function Ot(It,Bt){var Rt;if(typeof It=="function")return et.call(this,null,It,0);if(typeof Bt=="function")if(typeof It=="number")for(Rt=0;Rt<It;++Rt)et.call(this,null,Bt,Rt);else if(Array.isArray(It))for(Rt=0;Rt<It.length;++Rt)et.call(this,It[Rt],Bt,Rt);else return et.call(this,It,Bt,0);else if(typeof It=="number"){if(It>0)return Ve.call(this,kt(It|0),It|0)}else if(Array.isArray(It)){if(It.length)return Ve.call(this,It,It.length)}else return qt.call(this,It)}return e(Ot,{stats:Zt,destroy:function(){hr.destroy()}})}var el=mn.setFBO=zo({framebuffer:h.define.call(null,Qs,"framebuffer")});function ol(q,K){var de=0;Ki.procs.poll();var ne=K.color;ne&&(zt.clearColor(+ne[0]||0,+ne[1]||0,+ne[2]||0,+ne[3]||0),de|=Es),"depth"in K&&(zt.clearDepth(+K.depth),de|=Zs),"stencil"in K&&(zt.clearStencil(K.stencil|0),de|=Gn),zt.clear(de)}function Ul(q){if("framebuffer"in q)if(q.framebuffer&&q.framebuffer_reglType==="framebufferCube")for(var K=0;K<6;++K)el(e({framebuffer:q.framebuffer.faces[K]},q),ol);else el(q,ol);else ol(null,q)}function ls(q){Un.push(q);function K(){var de=vl(Un,q);function ne(){var we=vl(Un,ne);Un[we]=Un[Un.length-1],Un.length-=1,Un.length<=0&&ns()}Un[de]=ne}return wa(),{cancel:K}}function Gs(){var q=Bi.viewport,K=Bi.scissor_box;q[0]=q[1]=K[0]=K[1]=0,si.viewportWidth=si.framebufferWidth=si.drawingBufferWidth=q[2]=K[2]=zt.drawingBufferWidth,si.viewportHeight=si.framebufferHeight=si.drawingBufferHeight=q[3]=K[3]=zt.drawingBufferHeight}function Ks(){si.tick+=1,si.time=sl(),Gs(),Ki.procs.poll()}function Ta(){vi.refresh(),Gs(),Ki.procs.refresh(),Mi&&Mi.update()}function sl(){return(v()-Hn)/1e3}Ta();function io(q,K){var de;switch(q){case"frame":return ls(K);case"lost":de=na;break;case"restore":de=Yi;break;case"destroy":de=Ln;break;default:}return de.push(K),{cancel:function(){for(var ne=0;ne<de.length;++ne)if(de[ne]===K){de[ne]=de[de.length-1],de.pop();return}}}}function Y(){return Ni}function D(q){Object.entries(q).forEach(function(K){Ni[K[0]]=K[1]})}var J=e(zo,{clear:Ul,prop:h.define.bind(null,Qs),context:h.define.bind(null,Sl),this:h.define.bind(null,bu),draw:zo({}),buffer:function(q){return Ii.create(q,Ha,!1,!1)},elements:function(q){return ci.create(q,!1)},texture:vi.create2D,cube:vi.createCube,renderbuffer:li.create,framebuffer:mn.create,framebufferCube:mn.createCube,vao:nn.createVAO,attributes:Ir,frame:ls,on:io,limits:xi,hasExtension:function(q){return xi.extensions.indexOf(q.toLowerCase())>=0},read:Ui,destroy:Ml,_gl:zt,_refresh:Ta,poll:function(){Ks(),Mi&&Mi.update()},now:sl,stats:mi,getCachedCode:Y,preloadCachedCode:D});return xt.onDone(null,J),J}return Sc})});var Cqe=ye((s1r,Eqe)=>{"use strict";var xNt=Xm();Eqe.exports=function(t){if(t?typeof t=="string"&&(t={container:t}):t={},Sqe(t)?t={container:t}:bNt(t)?t={container:t}:wNt(t)?t={gl:t}:t=xNt(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}Sqe(t.container)?(t.canvas=t.container,t.container=t.canvas.parentNode):t.canvas||(t.canvas=Mqe(),t.container.appendChild(t.canvas),Aqe(t))}else if(!t.canvas)if(typeof document!="undefined")t.container=document.body||document.documentElement,t.canvas=Mqe(),t.container.appendChild(t.canvas),Aqe(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 Aqe(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 Sqe(e){return typeof e.getContext=="function"&&"width"in e&&"height"in e}function bNt(e){return typeof e.nodeName=="string"&&typeof e.appendChild=="function"&&typeof e.getBoundingClientRect=="function"}function wNt(e){return typeof e.drawArrays=="function"||typeof e.drawElements=="function"}function Mqe(){var e=document.createElement("canvas");return e.style.position="absolute",e.style.top=0,e.style.left=0,e}});var Lqe=ye((l1r,kqe)=>{"use strict";var TNt=$Y(),ANt=[32,126];kqe.exports=SNt;function SNt(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||ANt;if(n&&typeof n!="string"&&(n=TNt(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 rK=ye(Oh=>{"use strict";"use restrict";var tK=32;Oh.INT_BITS=tK;Oh.INT_MAX=2147483647;Oh.INT_MIN=-1<<tK-1;Oh.sign=function(e){return(e>0)-(e<0)};Oh.abs=function(e){var t=e>>tK-1;return(e^t)-t};Oh.min=function(e,t){return t^(e^t)&-(e<t)};Oh.max=function(e,t){return e^(e^t)&-(e<t)};Oh.isPow2=function(e){return!(e&e-1)&&!!e};Oh.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};Oh.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};Oh.popCount=function(e){return e=e-(e>>>1&1431655765),e=(e&858993459)+(e>>>2&858993459),(e+(e>>>4)&252645135)*16843009>>>24};function Pqe(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}Oh.countTrailingZeros=Pqe;Oh.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};Oh.prevPow2=function(e){return e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e-(e>>>1)};Oh.parity=function(e){return e^=e>>>16,e^=e>>>8,e^=e>>>4,e&=15,27030>>>e&1};var SC=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}})(SC);Oh.reverse=function(e){return SC[e&255]<<24|SC[e>>>8&255]<<16|SC[e>>>16&255]<<8|SC[e>>>24&255]};Oh.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};Oh.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};Oh.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};Oh.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};Oh.nextCombination=function(e){var t=e|e-1;return t+1|(~t&-~t)-1>>>Pqe(e)+1}});var Dqe=ye((c1r,Rqe)=>{"use strict";function Iqe(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]=Iqe(e,t,r+1);return i}function MNt(e,t){var r,n;for(r=new Array(e),n=0;n<e;++n)r[n]=t;return r}function ENt(e,t){switch(typeof t=="undefined"&&(t=0),typeof e){case"number":if(e>0)return MNt(e|0,t);break;case"object":if(typeof e.length=="number")return Iqe(e,t,0);break}return[]}Rqe.exports=ENt});var Yqe=ye(mu=>{"use strict";var fx=rK(),Av=Dqe(),Fqe=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 CNt=typeof Uint8ClampedArray!="undefined",kNt=typeof BigUint64Array!="undefined",LNt=typeof BigInt64Array!="undefined",nd=window.__TYPEDARRAY_POOL;nd.UINT8C||(nd.UINT8C=Av([32,0]));nd.BIGUINT64||(nd.BIGUINT64=Av([32,0]));nd.BIGINT64||(nd.BIGINT64=Av([32,0]));nd.BUFFER||(nd.BUFFER=Av([32,0]));var pz=nd.DATA,gz=nd.BUFFER;mu.free=function(t){if(Fqe.isBuffer(t))gz[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;pz[n].push(t)}};function zqe(e){if(e){var t=e.length||e.byteLength,r=fx.log2(t);pz[r].push(e)}}function PNt(e){zqe(e.buffer)}mu.freeUint8=mu.freeUint16=mu.freeUint32=mu.freeBigUint64=mu.freeInt8=mu.freeInt16=mu.freeInt32=mu.freeBigInt64=mu.freeFloat32=mu.freeFloat=mu.freeFloat64=mu.freeDouble=mu.freeUint8Clamped=mu.freeDataView=PNt;mu.freeArrayBuffer=zqe;mu.freeBuffer=function(t){gz[fx.log2(t.length)].push(t)};mu.malloc=function(t,r){if(r===void 0||r==="arraybuffer")return qp(t);switch(r){case"uint8":return iK(t);case"uint16":return Oqe(t);case"uint32":return qqe(t);case"int8":return Bqe(t);case"int16":return Nqe(t);case"int32":return Uqe(t);case"float":case"float32":return Vqe(t);case"double":case"float64":return Gqe(t);case"uint8_clamped":return Hqe(t);case"bigint64":return Wqe(t);case"biguint64":return jqe(t);case"buffer":return Zqe(t);case"data":case"dataview":return Xqe(t);default:return null}return null};function qp(t){var t=fx.nextPow2(t),r=fx.log2(t),n=pz[r];return n.length>0?n.pop():new ArrayBuffer(t)}mu.mallocArrayBuffer=qp;function iK(e){return new Uint8Array(qp(e),0,e)}mu.mallocUint8=iK;function Oqe(e){return new Uint16Array(qp(2*e),0,e)}mu.mallocUint16=Oqe;function qqe(e){return new Uint32Array(qp(4*e),0,e)}mu.mallocUint32=qqe;function Bqe(e){return new Int8Array(qp(e),0,e)}mu.mallocInt8=Bqe;function Nqe(e){return new Int16Array(qp(2*e),0,e)}mu.mallocInt16=Nqe;function Uqe(e){return new Int32Array(qp(4*e),0,e)}mu.mallocInt32=Uqe;function Vqe(e){return new Float32Array(qp(4*e),0,e)}mu.mallocFloat32=mu.mallocFloat=Vqe;function Gqe(e){return new Float64Array(qp(8*e),0,e)}mu.mallocFloat64=mu.mallocDouble=Gqe;function Hqe(e){return CNt?new Uint8ClampedArray(qp(e),0,e):iK(e)}mu.mallocUint8Clamped=Hqe;function jqe(e){return kNt?new BigUint64Array(qp(8*e),0,e):null}mu.mallocBigUint64=jqe;function Wqe(e){return LNt?new BigInt64Array(qp(8*e),0,e):null}mu.mallocBigInt64=Wqe;function Xqe(e){return new DataView(qp(e),0,e)}mu.mallocDataView=Xqe;function Zqe(e){e=fx.nextPow2(e);var t=fx.log2(e),r=gz[t];return r.length>0?r.pop():new Fqe(e)}mu.mallocBuffer=Zqe;mu.clearCache=function(){for(var t=0;t<32;++t)nd.UINT8[t].length=0,nd.UINT16[t].length=0,nd.UINT32[t].length=0,nd.INT8[t].length=0,nd.INT16[t].length=0,nd.INT32[t].length=0,nd.FLOAT[t].length=0,nd.DOUBLE[t].length=0,nd.BIGUINT64[t].length=0,nd.BIGINT64[t].length=0,nd.UINT8C[t].length=0,pz[t].length=0,gz[t].length=0}});var Jqe=ye((h1r,Kqe)=>{"use strict";var INt=Object.prototype.toString;Kqe.exports=function(e){var t;return INt.call(e)==="[object Object]"&&(t=Object.getPrototypeOf(e),t===null||t===Object.getPrototypeOf({}))}});var nK=ye((d1r,$qe)=>{$qe.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 tBe=ye((v1r,eBe)=>{"use strict";var RNt=nK();eBe.exports=Qqe;var MC=96;function aK(e,t){var r=RNt(getComputedStyle(e).getPropertyValue(t));return r[0]*Qqe(r[1],e)}function DNt(e,t){var r=document.createElement("div");r.style["font-size"]="128"+e,t.appendChild(r);var n=aK(r,"font-size")/128;return t.removeChild(r),n}function Qqe(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 DNt(e,t);case"em":return aK(t,"font-size");case"rem":return aK(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 MC;case"cm":return MC/2.54;case"mm":return MC/25.4;case"pt":return MC/72;case"pc":return MC/6}return 1}});var nBe=ye((p1r,iBe)=>{"use strict";iBe.exports=_z;var FNt=_z.canvas=document.createElement("canvas"),mz=FNt.getContext("2d"),rBe=yz([32,126]);_z.createPairs=yz;_z.ascii=rBe;function _z(e,t){Array.isArray(e)&&(e=e.join(", "));var r={},n,i=16,a=.05;t&&(t.length===2&&typeof t[0]=="number"?n=yz(t):Array.isArray(t)?n=t:(t.o?n=yz(t.o):t.pairs&&(n=t.pairs),t.fontSize&&(i=t.fontSize),t.threshold!=null&&(a=t.threshold))),n||(n=rBe),mz.font=i+"px "+e;for(var o=0;o<n.length;o++){var s=n[o],l=mz.measureText(s[0]).width+mz.measureText(s[1]).width,u=mz.measureText(s).width;if(Math.abs(l-u)>i*a){var c=(u-l)/i;r[s]=c*1e3}}return r}function yz(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 lBe=ye((g1r,sBe)=>{"use strict";sBe.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 aBe(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 C=Ym(u.getImageData(0,0,f,f));d.median=d.middle=f-C-1+v-f*.5,u.clearRect(0,0,f,f),u.textBaseline="hanging",u.fillText(h,0,f*.5);var E=Ym(u.getImageData(0,0,f,f));d.hanging=f-E-1+v-f*.5,u.clearRect(0,0,f,f),u.textBaseline="ideographic",u.fillText(h,0,f);var 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=oBe(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=oBe(u.getImageData(0,0,f,f));d.overshoot=L-p}for(var _ in d)d[_]/=n;return d.em=n,hx.cache[r]=d,aBe(d,s)}function aBe(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 oBe(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 hBe=ye((m1r,fBe)=>{"use strict";var h5=wqe(),zNt=Xm(),ONt=Tqe(),qNt=Cqe(),BNt=qY(),oK=$_(),NNt=Lqe(),dx=Yqe(),UNt=e5(),VNt=Jqe(),GNt=nK(),HNt=tBe(),jNt=nBe(),WNt=Fh(),XNt=lBe(),ZNt=W2(),YNt=rK(),uBe=YNt.nextPow2,cBe=new BNt,bz=!1;document.body&&(xz=document.body.appendChild(document.createElement("div")),xz.style.font="italic small-caps bold condensed 16px/2 cursive",getComputedStyle(xz).fontStretch&&(bz=!0),document.body.removeChild(xz));var xz,xc=function(t){KNt(t)?(t={regl:t},this.gl=t.regl._gl):this.gl=qNt(t),this.shader=cBe.get(this.gl),this.shader?this.regl=this.shader.regl:this.regl=t.regl||ONt({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(),cBe.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(VNt(t)?t:{})};xc.prototype.createShader=function(){var t=this.regl,r=t({blend:{enable:!0,color:[0,0,0,1],func:{srcRGB:"src alpha",dstRGB:"one minus src alpha",srcAlpha:"one minus dst alpha",dstAlpha:"one"}},stencil:{enable:!1},depth:{enable:!1},count:t.prop("count"),offset:t.prop("offset"),attributes:{charOffset:{offset:4,stride:8,buffer:t.this("sizeBuffer")},width:{offset:0,stride:8,buffer:t.this("sizeBuffer")},char:t.this("charBuffer"),position:t.this("position")},uniforms:{atlasSize:function(i,a){return[a.atlas.width,a.atlas.height]},atlasDim:function(i,a){return[a.atlas.cols,a.atlas.rows]},atlas:function(i,a){return a.atlas.texture},charStep:function(i,a){return a.atlas.step},em:function(i,a){return a.atlas.em},color:t.prop("color"),opacity:t.prop("opacity"),viewport:t.this("viewportArray"),scale:t.this("scale"),align:t.prop("align"),baseline:t.prop("baseline"),translate:t.this("translate"),positionOffset:t.prop("positionOffset")},primitive:"points",viewport:t.this("viewport"),vert:`
|
||
precision highp float;
|
||
attribute float width, charOffset, char;
|
||
attribute vec2 position;
|
||
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}};xc.prototype.update=function(t){var r=this;if(typeof t=="string")t={text:t};else if(!t)return;t=zNt(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=UNt(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=ZNt(t.offset)),t.direction&&(this.direction=t.direction),t.range&&(this.range=t.range,this.scale=[1/(t.range[2]-t.range[0]),1/(t.range[3]-t.range[1])],this.translate=[-t.range[0],-t.range[1]]),t.scale&&(this.scale=t.scale),t.translate&&(this.translate=t.translate),this.scale||(this.scale=[1/this.viewport.width,1/this.viewport.height]),this.translate||(this.translate=[0,0]),!this.font.length&&!t.font&&(t.font=xc.baseFontSize+"px sans-serif");var n=!1,i=!1;if(t.font&&(Array.isArray(t.font)?t.font:[t.font]).forEach(function(ke,me){if(typeof ke=="string")try{ke=h5.parse(ke)}catch(Ze){ke=h5.parse(xc.baseFontSize+"px "+ke)}else{var ie=ke.style,Se=ke.weight,Le=ke.stretch,Ae=ke.variant;ke=h5.parse(h5.stringify(ke)),ie&&(ke.style=ie),Se&&(ke.weight=Se),Le&&(ke.stretch=Le),Ae&&(ke.variant=Ae)}var De=h5.stringify({size:xc.baseFontSize,family:ke.family,stretch:bz?ke.stretch:void 0,variant:ke.variant,weight:ke.weight,style:ke.style}),Pe=GNt(ke.size),ge=Math.round(Pe[0]*HNt(Pe[1]));if(ge!==r.fontSize[me]&&(i=!0,r.fontSize[me]=ge),(!r.font[me]||De!=r.font[me].baseString)&&(n=!0,r.font[me]=xc.fonts[De],!r.font[me])){var Fe=ke.family.join(", "),ce=[ke.style];ke.style!=ke.variant&&ce.push(ke.variant),ke.variant!=ke.weight&&ce.push(ke.weight),bz&&ke.weight!=ke.stretch&&ce.push(ke.stretch),r.font[me]={baseString:De,family:Fe,weight:ke.weight,stretch:ke.stretch,style:ke.style,variant:ke.variant,width:{},kerning:{},metrics:XNt(Fe,{origin:"top",fontSize:xc.baseFontSize,fontStyle:ce.join(" ")})},xc.fonts[De]=r.font[me]}}),(n||i)&&this.font.forEach(function(ke,me){var ie=h5.stringify({size:r.fontSize[me],family:ke.family,stretch:bz?ke.stretch:void 0,variant:ke.variant,weight:ke.weight,style:ke.style});if(r.fontAtlas[me]=r.shader.atlas[ie],!r.fontAtlas[me]){var Se=ke.metrics;r.shader.atlas[ie]=r.fontAtlas[me]={fontString:ie,step:Math.ceil(r.fontSize[me]*Se.bottom*.5)*2,em:r.fontSize[me],cols:0,rows:0,height:0,width:0,chars:[],ids:{},texture:r.regl.texture()}}t.text==null&&(t.text=r.text)}),typeof t.text=="string"&&t.position&&t.position.length>2){for(var a=Array(t.position.length*.5),o=0;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,me){xc.atlasContext.font=ke.baseString;for(var ie=r.fontAtlas[me],Se=0;Se<r.text.length;Se++){var Le=r.text.charAt(Se);if(ie.ids[Le]==null&&(ie.ids[Le]=ie.chars.length,ie.chars.push(Le),s.push(Le)),ke.width[Le]==null&&(ke.width[Le]=xc.atlasContext.measureText(Le).width/xc.baseFontSize,r.kerning)){var Ae=[];for(var De in ke.width)Ae.push(De+Le,Le+De);WNt(ke.kerning,jNt(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 C=0,E=0;C<this.counts.length;C++){for(var A=this.counts[C],L=this.font[C]||this.font[0],_=this.fontAtlas[C]||this.fontAtlas[0],k=0;k<A;k++){var M=this.text.charAt(E),g=this.text.charAt(E-1);if(b[E]=_.ids[M],p[E*2]=L.width[M],k){var P=p[E*2-2],T=p[E*2],z=p[E*2-1],O=z+P*.5+T*.5;if(this.kerning){var V=L.kerning[g+M];V&&(O+=V*.001)}p[E*2+1]=O}else p[E*2+1]=p[E*2]*.5;E++}this.textWidth.push(p.length?p[E*2-2]*.5+p[E*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,me){var ie=r.fontAtlas[me],Se=ie.step,Le=Math.floor(xc.maxAtlasSize/Se),Ae=Math.min(Le,ie.chars.length),De=Math.ceil(ie.chars.length/Ae),Pe=uBe(Ae*Se),ge=uBe(De*Se);ie.width=Pe,ie.height=ge,ie.rows=De,ie.cols=Ae,ie.em&&ie.texture({data:NNt({canvas:xc.atlasCanvas,font:ie.fontString,chars:ie.chars,shape:[Pe,ge],step:[Se,Se]})})})}if(t.align&&(this.align=t.align,this.alignOffset=this.textWidth.map(function(ke,me){var ie=Array.isArray(r.align)?r.align.length>1?r.align[me]: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,me){var ie=(r.font[me]||r.font[0]).metrics,Se=0;return Se+=ie.bottom*.5,typeof ke=="number"?Se+=ke-ie.baseline:Se+=-ie[ke],Se*=-1,Se})),t.color!=null)if(t.color||(t.color="transparent"),typeof t.color=="string"||!isNaN(t.color))this.color=oK(t.color,"uint8");else{var G;if(typeof t.color[0]=="number"&&t.color.length>this.counts.length){var Z=t.color.length;G=dx.mallocUint8(Z);for(var H=(t.color.subarray||t.color.slice).bind(t.color),N=0;N<Z;N+=4)G.set(oK(H(N,N+4),"uint8"),N)}else{var j=t.color.length;G=dx.mallocUint8(j*4);for(var re=0;re<j;re++)G.set(oK(t.color[re]||0,"uint8"),re*4)}this.color=G}if(t.position||t.text||t.color||t.baseline||t.align||t.font||t.offset||t.opacity){var oe=this.color.length>4||this.baselineOffset.length>1||this.align&&this.align.length>1||this.fontAtlas.length>1||this.positionOffset.length>2;if(oe){var _e=Math.max(this.position.length*.5||0,this.color.length*.25||0,this.baselineOffset.length||0,this.alignOffset.length||0,this.font.length||0,this.opacity.length||0,this.positionOffset.length*.5||0);this.batch=Array(_e);for(var 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=[]}};xc.prototype.destroy=function(){};xc.prototype.kerning=!0;xc.prototype.position={constant:new Float32Array(2)};xc.prototype.translate=null;xc.prototype.scale=null;xc.prototype.font=null;xc.prototype.text="";xc.prototype.positionOffset=[0,0];xc.prototype.opacity=1;xc.prototype.color=new Uint8Array([0,0,0,255]);xc.prototype.alignOffset=[0,0];xc.maxAtlasSize=1024;xc.atlasCanvas=document.createElement("canvas");xc.atlasContext=xc.atlasCanvas.getContext("2d",{alpha:!1});xc.baseFontSize=64;xc.fonts={};function KNt(e){return typeof e=="function"&&e._gl&&e.prop&&e.texture&&e.buffer}fBe.exports=xc});var dBe=ye((sK,lK)=>{(function(e,t){typeof sK=="object"&&typeof lK!="undefined"?lK.exports=t():e.createREGL=t()})(sK,function(){"use strict";var e=function(Ee,xt){for(var zt=Object.keys(xt),Ir=0;Ir<zt.length;++Ir)Ee[zt[Ir]]=xt[zt[Ir]];return Ee},t=0,r=0,n=5,i=6;function a(Ee,xt){this.id=t++,this.type=Ee,this.data=xt}function o(Ee){return Ee.replace(/\\/g,"\\\\").replace(/"/g,'\\"')}function s(Ee){if(Ee.length===0)return[];var xt=Ee.charAt(0),zt=Ee.charAt(Ee.length-1);if(Ee.length>1&&xt===zt&&(xt==='"'||xt==="'"))return['"'+o(Ee.substr(1,Ee.length-2))+'"'];var Ir=/\[(false|true|null|\d+|'[^']*'|"[^"]*")\]/.exec(Ee);if(Ir)return s(Ee.substr(0,Ir.index)).concat(s(Ir[1])).concat(s(Ee.substr(Ir.index+Ir[0].length)));var Hr=Ee.split(".");if(Hr.length===1)return['"'+o(Ee)+'"'];for(var Br=[],Vr=0;Vr<Hr.length;++Vr)Br=Br.concat(s(Hr[Vr]));return Br}function l(Ee){return"["+s(Ee).join("][")+"]"}function u(Ee,xt){return new a(Ee,l(xt+""))}function c(Ee){return typeof Ee=="function"&&!Ee._reglType||Ee instanceof a}function f(Ee,xt){if(typeof Ee=="function")return new a(r,Ee);if(typeof Ee=="number"||typeof Ee=="boolean")return new a(n,Ee);if(Array.isArray(Ee))return new a(i,Ee.map(function(zt,Ir){return f(zt,xt+"["+Ir+"]")}));if(Ee instanceof a)return Ee}var h={DynamicVariable:a,define:u,isDynamic:c,unbox:f,accessor:l},d={next:typeof requestAnimationFrame=="function"?function(Ee){return requestAnimationFrame(Ee)}:function(Ee){return setTimeout(Ee,16)},cancel:typeof cancelAnimationFrame=="function"?function(Ee){return cancelAnimationFrame(Ee)}:clearTimeout},v=typeof performance!="undefined"&&performance.now?function(){return performance.now()}:function(){return+new Date};function x(){var Ee={"":0},xt=[""];return{id:function(zt){var Ir=Ee[zt];return Ir||(Ir=Ee[zt]=xt.length,xt.push(zt),Ir)},str:function(zt){return xt[zt]}}}function b(Ee,xt,zt){var Ir=document.createElement("canvas");e(Ir.style,{border:0,margin:0,padding:0,top:0,left:0,width:"100%",height:"100%"}),Ee.appendChild(Ir),Ee===document.body&&(Ir.style.position="absolute",e(Ee.style,{margin:0,padding:0}));function Hr(){var mi=window.innerWidth,Ni=window.innerHeight;if(Ee!==document.body){var Oi=Ir.getBoundingClientRect();mi=Oi.right-Oi.left,Ni=Oi.bottom-Oi.top}Ir.width=zt*mi,Ir.height=zt*Ni}var Br;Ee!==document.body&&typeof ResizeObserver=="function"?(Br=new ResizeObserver(function(){setTimeout(Hr)}),Br.observe(Ee)):window.addEventListener("resize",Hr,!1);function Vr(){Br?Br.disconnect():window.removeEventListener("resize",Hr),Ee.removeChild(Ir)}return Hr(),{canvas:Ir,onDestroy:Vr}}function p(Ee,xt){function zt(Ir){try{return Ee.getContext(Ir,xt)}catch(Hr){return null}}return zt("webgl")||zt("experimental-webgl")||zt("webgl-experimental")}function C(Ee){return typeof Ee.nodeName=="string"&&typeof Ee.appendChild=="function"&&typeof Ee.getBoundingClientRect=="function"}function E(Ee){return typeof Ee.drawArrays=="function"||typeof Ee.drawElements=="function"}function A(Ee){return typeof Ee=="string"?Ee.split():Ee}function L(Ee){return typeof Ee=="string"?document.querySelector(Ee):Ee}function _(Ee){var xt=Ee||{},zt,Ir,Hr,Br,Vr={},mi=[],Ni=[],Oi=typeof window=="undefined"?1:window.devicePixelRatio,Mi=!1,Hn={},Qi=function(Mr){},ji=function(){};if(typeof xt=="string"?zt=document.querySelector(xt):typeof xt=="object"&&(C(xt)?zt=xt:E(xt)?(Br=xt,Hr=Br.canvas):("gl"in xt?Br=xt.gl:"canvas"in xt?Hr=L(xt.canvas):"container"in xt&&(Ir=L(xt.container)),"attributes"in xt&&(Vr=xt.attributes),"extensions"in xt&&(mi=A(xt.extensions)),"optionalExtensions"in xt&&(Ni=A(xt.optionalExtensions)),"onDone"in xt&&(Qi=xt.onDone),"profile"in xt&&(Mi=!!xt.profile),"pixelRatio"in xt&&(Oi=+xt.pixelRatio),"cachedCode"in xt&&(Hn=xt.cachedCode))),zt&&(zt.nodeName.toLowerCase()==="canvas"?Hr=zt:Ir=zt),!Br){if(!Hr){var si=b(Ir||document.body,Qi,Oi);if(!si)return null;Hr=si.canvas,ji=si.onDestroy}Vr.premultipliedAlpha===void 0&&(Vr.premultipliedAlpha=!0),Br=p(Hr,Vr)}return Br?{gl:Br,canvas:Hr,container:Ir,extensions:mi,optionalExtensions:Ni,pixelRatio:Oi,profile:Mi,cachedCode:Hn,onDone:Qi,onDestroy:ji}:(ji(),Qi("webgl not supported, try upgrading your browser or graphics drivers http://get.webgl.org"),null)}function k(Ee,xt){var zt={};function Ir(Vr){var mi=Vr.toLowerCase(),Ni;try{Ni=zt[mi]=Ee.getExtension(mi)}catch(Oi){}return!!Ni}for(var Hr=0;Hr<xt.extensions.length;++Hr){var Br=xt.extensions[Hr];if(!Ir(Br))return xt.onDestroy(),xt.onDone('"'+Br+'" extension is not supported by the current WebGL context, try upgrading your system or a different browser'),null}return xt.optionalExtensions.forEach(Ir),{extensions:zt,restore:function(){Object.keys(zt).forEach(function(Vr){if(zt[Vr]&&!Ir(Vr))throw new Error("(regl): error restoring extension "+Vr)})}}}function M(Ee,xt){for(var zt=Array(Ee),Ir=0;Ir<Ee;++Ir)zt[Ir]=xt(Ir);return zt}var g=5120,P=5121,T=5122,z=5123,O=5124,V=5125,G=5126;function Z(Ee){for(var xt=16;xt<=1<<28;xt*=16)if(Ee<=xt)return xt;return 0}function H(Ee){var xt,zt;return xt=(Ee>65535)<<4,Ee>>>=xt,zt=(Ee>255)<<3,Ee>>>=zt,xt|=zt,zt=(Ee>15)<<2,Ee>>>=zt,xt|=zt,zt=(Ee>3)<<1,Ee>>>=zt,xt|=zt,xt|Ee>>1}function N(){var Ee=M(8,function(){return[]});function xt(Br){var Vr=Z(Br),mi=Ee[H(Vr)>>2];return mi.length>0?mi.pop():new ArrayBuffer(Vr)}function zt(Br){Ee[H(Br.byteLength)>>2].push(Br)}function Ir(Br,Vr){var mi=null;switch(Br){case g:mi=new Int8Array(xt(Vr),0,Vr);break;case P:mi=new Uint8Array(xt(Vr),0,Vr);break;case T:mi=new Int16Array(xt(2*Vr),0,Vr);break;case z:mi=new Uint16Array(xt(2*Vr),0,Vr);break;case O:mi=new Int32Array(xt(4*Vr),0,Vr);break;case V:mi=new Uint32Array(xt(4*Vr),0,Vr);break;case G:mi=new Float32Array(xt(4*Vr),0,Vr);break;default:return null}return mi.length!==Vr?mi.subarray(0,Vr):mi}function Hr(Br){zt(Br.buffer)}return{alloc:xt,free:zt,allocType:Ir,freeType:Hr}}var j=N();j.zero=N();var re=3408,oe=3410,_e=3411,Me=3412,ke=3413,me=3414,ie=3415,Se=33901,Le=33902,Ae=3379,De=3386,Pe=34921,ge=36347,Fe=36348,ce=35661,Ze=35660,ct=34930,pt=36349,Wt=34076,st=34024,lt=7936,Gt=7937,Nt=7938,$t=35724,sr=34047,wr=36063,ur=34852,Qe=3553,Et=34067,er=34069,Ut=33984,Ft=6408,bt=5126,yt=5121,Yt=36160,lr=36053,Tr=36064,Rr=16384,ei=function(Ee,xt){var zt=1;xt.ext_texture_filter_anisotropic&&(zt=Ee.getParameter(sr));var Ir=1,Hr=1;xt.webgl_draw_buffers&&(Ir=Ee.getParameter(ur),Hr=Ee.getParameter(wr));var Br=!!xt.oes_texture_float;if(Br){var Vr=Ee.createTexture();Ee.bindTexture(Qe,Vr),Ee.texImage2D(Qe,0,Ft,1,1,0,Ft,bt,null);var mi=Ee.createFramebuffer();if(Ee.bindFramebuffer(Yt,mi),Ee.framebufferTexture2D(Yt,Tr,Qe,Vr,0),Ee.bindTexture(Qe,null),Ee.checkFramebufferStatus(Yt)!==lr)Br=!1;else{Ee.viewport(0,0,1,1),Ee.clearColor(1,0,0,1),Ee.clear(Rr);var Ni=j.allocType(bt,4);Ee.readPixels(0,0,1,1,Ft,bt,Ni),Ee.getError()?Br=!1:(Ee.deleteFramebuffer(mi),Ee.deleteTexture(Vr),Br=Ni[0]===1),j.freeType(Ni)}}var Oi=typeof navigator!="undefined"&&(/MSIE/.test(navigator.userAgent)||/Trident\//.test(navigator.appVersion)||/Edge/.test(navigator.userAgent)),Mi=!0;if(!Oi){var Hn=Ee.createTexture(),Qi=j.allocType(yt,36);Ee.activeTexture(Ut),Ee.bindTexture(Et,Hn),Ee.texImage2D(er,0,Ft,3,3,0,Ft,yt,Qi),j.freeType(Qi),Ee.bindTexture(Et,null),Ee.deleteTexture(Hn),Mi=!Ee.getError()}return{colorBits:[Ee.getParameter(oe),Ee.getParameter(_e),Ee.getParameter(Me),Ee.getParameter(ke)],depthBits:Ee.getParameter(me),stencilBits:Ee.getParameter(ie),subpixelBits:Ee.getParameter(re),extensions:Object.keys(xt).filter(function(ji){return!!xt[ji]}),maxAnisotropic:zt,maxDrawbuffers:Ir,maxColorAttachments:Hr,pointSizeDims:Ee.getParameter(Se),lineWidthDims:Ee.getParameter(Le),maxViewportDims:Ee.getParameter(De),maxCombinedTextureUnits:Ee.getParameter(ce),maxCubeMapSize:Ee.getParameter(Wt),maxRenderbufferSize:Ee.getParameter(st),maxTextureUnits:Ee.getParameter(ct),maxTextureSize:Ee.getParameter(Ae),maxAttributes:Ee.getParameter(Pe),maxVertexUniforms:Ee.getParameter(ge),maxVertexTextureUnits:Ee.getParameter(Ze),maxVaryingVectors:Ee.getParameter(Fe),maxFragmentUniforms:Ee.getParameter(pt),glsl:Ee.getParameter($t),renderer:Ee.getParameter(Gt),vendor:Ee.getParameter(lt),version:Ee.getParameter(Nt),readFloat:Br,npotTextureCube:Mi}},Wr=function(Ee){return Ee instanceof Uint8Array||Ee instanceof Uint16Array||Ee instanceof Uint32Array||Ee instanceof Int8Array||Ee instanceof Int16Array||Ee instanceof Int32Array||Ee instanceof Float32Array||Ee instanceof Float64Array||Ee instanceof Uint8ClampedArray};function Ur(Ee){return!!Ee&&typeof Ee=="object"&&Array.isArray(Ee.shape)&&Array.isArray(Ee.stride)&&typeof Ee.offset=="number"&&Ee.shape.length===Ee.stride.length&&(Array.isArray(Ee.data)||Wr(Ee.data))}var dt=function(Ee){return Object.keys(Ee).map(function(xt){return Ee[xt]})},Ge={shape:xe,flatten:Ie};function Je(Ee,xt,zt){for(var Ir=0;Ir<xt;++Ir)zt[Ir]=Ee[Ir]}function je(Ee,xt,zt,Ir){for(var Hr=0,Br=0;Br<xt;++Br)for(var Vr=Ee[Br],mi=0;mi<zt;++mi)Ir[Hr++]=Vr[mi]}function $e(Ee,xt,zt,Ir,Hr,Br){for(var Vr=Br,mi=0;mi<xt;++mi)for(var Ni=Ee[mi],Oi=0;Oi<zt;++Oi)for(var Mi=Ni[Oi],Hn=0;Hn<Ir;++Hn)Hr[Vr++]=Mi[Hn]}function wt(Ee,xt,zt,Ir,Hr){for(var Br=1,Vr=zt+1;Vr<xt.length;++Vr)Br*=xt[Vr];var mi=xt[zt];if(xt.length-zt===4){var Ni=xt[zt+1],Oi=xt[zt+2],Mi=xt[zt+3];for(Vr=0;Vr<mi;++Vr)$e(Ee[Vr],Ni,Oi,Mi,Ir,Hr),Hr+=Br}else for(Vr=0;Vr<mi;++Vr)wt(Ee[Vr],xt,zt+1,Ir,Hr),Hr+=Br}function Ie(Ee,xt,zt,Ir){var Hr=1;if(xt.length)for(var Br=0;Br<xt.length;++Br)Hr*=xt[Br];else Hr=0;var Vr=Ir||j.allocType(zt,Hr);switch(xt.length){case 0:break;case 1:Je(Ee,xt[0],Vr);break;case 2:je(Ee,xt[0],xt[1],Vr);break;case 3:$e(Ee,xt[0],xt[1],xt[2],Vr,0);break;default:wt(Ee,xt,0,Vr,0)}return Vr}function xe(Ee){for(var xt=[],zt=Ee;zt.length;zt=zt[0])xt.push(zt.length);return xt}var Ce={"[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},vt=5120,nr=5122,ir=5124,pr=5121,oi=5123,di=5125,Jr=5126,fi=5126,Hi={int8:vt,int16:nr,int32:ir,uint8:pr,uint16:oi,uint32:di,float:Jr,float32:fi},Pn=35048,wn=35040,pn={dynamic:Pn,stream:wn,static:35044},Vn=Ge.flatten,kn=Ge.shape,ea=35044,ua=35040,Vt=5121,_t=5126,tr=[];tr[5120]=1,tr[5122]=2,tr[5124]=4,tr[5121]=1,tr[5123]=2,tr[5125]=4,tr[5126]=4;function ar(Ee){return Ce[Object.prototype.toString.call(Ee)]|0}function Er(Ee,xt){for(var zt=0;zt<xt.length;++zt)Ee[zt]=xt[zt]}function Zr(Ee,xt,zt,Ir,Hr,Br,Vr){for(var mi=0,Ni=0;Ni<zt;++Ni)for(var Oi=0;Oi<Ir;++Oi)Ee[mi++]=xt[Hr*Ni+Br*Oi+Vr]}function ri(Ee,xt,zt,Ir){var Hr=0,Br={};function Vr(Mr){this.id=Hr++,this.buffer=Ee.createBuffer(),this.type=Mr,this.usage=ea,this.byteLength=0,this.dimension=1,this.dtype=Vt,this.persistentData=null,zt.profile&&(this.stats={size:0})}Vr.prototype.bind=function(){Ee.bindBuffer(this.type,this.buffer)},Vr.prototype.destroy=function(){Qi(this)};var mi=[];function Ni(Mr,Yr){var xi=mi.pop();return xi||(xi=new Vr(Mr)),xi.bind(),Hn(xi,Yr,ua,0,1,!1),xi}function Oi(Mr){mi.push(Mr)}function Mi(Mr,Yr,xi){Mr.byteLength=Yr.byteLength,Ee.bufferData(Mr.type,Yr,xi)}function Hn(Mr,Yr,xi,Ii,ci,nn){var Xi;if(Mr.usage=xi,Array.isArray(Yr)){if(Mr.dtype=Ii||_t,Yr.length>0){var qn;if(Array.isArray(Yr[0])){Xi=kn(Yr);for(var vi=1,li=1;li<Xi.length;++li)vi*=Xi[li];Mr.dimension=vi,qn=Vn(Yr,Xi,Mr.dtype),Mi(Mr,qn,xi),nn?Mr.persistentData=qn:j.freeType(qn)}else if(typeof Yr[0]=="number"){Mr.dimension=ci;var mn=j.allocType(Mr.dtype,Yr.length);Er(mn,Yr),Mi(Mr,mn,xi),nn?Mr.persistentData=mn:j.freeType(mn)}else Wr(Yr[0])&&(Mr.dimension=Yr[0].length,Mr.dtype=Ii||ar(Yr[0])||_t,qn=Vn(Yr,[Yr.length,Yr[0].length],Mr.dtype),Mi(Mr,qn,xi),nn?Mr.persistentData=qn:j.freeType(qn))}}else if(Wr(Yr))Mr.dtype=Ii||ar(Yr),Mr.dimension=ci,Mi(Mr,Yr,xi),nn&&(Mr.persistentData=new Uint8Array(new Uint8Array(Yr.buffer)));else if(Ur(Yr)){Xi=Yr.shape;var Ki=Yr.stride,Ui=Yr.offset,Bi=0,vn=0,Un=0,na=0;Xi.length===1?(Bi=Xi[0],vn=1,Un=Ki[0],na=0):Xi.length===2&&(Bi=Xi[0],vn=Xi[1],Un=Ki[0],na=Ki[1]),Mr.dtype=Ii||ar(Yr.data)||_t,Mr.dimension=vn;var Yi=j.allocType(Mr.dtype,Bi*vn);Zr(Yi,Yr.data,Bi,vn,Un,na,Ui),Mi(Mr,Yi,xi),nn?Mr.persistentData=Yi:j.freeType(Yi)}else Yr instanceof ArrayBuffer&&(Mr.dtype=Vt,Mr.dimension=ci,Mi(Mr,Yr,xi),nn&&(Mr.persistentData=new Uint8Array(new Uint8Array(Yr))))}function Qi(Mr){xt.bufferCount--,Ir(Mr);var Yr=Mr.buffer;Ee.deleteBuffer(Yr),Mr.buffer=null,delete Br[Mr.id]}function ji(Mr,Yr,xi,Ii){xt.bufferCount++;var ci=new Vr(Yr);Br[ci.id]=ci;function nn(vi){var li=ea,mn=null,Ki=0,Ui=0,Bi=1;return Array.isArray(vi)||Wr(vi)||Ur(vi)||vi instanceof ArrayBuffer?mn=vi:typeof vi=="number"?Ki=vi|0:vi&&("data"in vi&&(mn=vi.data),"usage"in vi&&(li=pn[vi.usage]),"type"in vi&&(Ui=Hi[vi.type]),"dimension"in vi&&(Bi=vi.dimension|0),"length"in vi&&(Ki=vi.length|0)),ci.bind(),mn?Hn(ci,mn,li,Ui,Bi,Ii):(Ki&&Ee.bufferData(ci.type,Ki,li),ci.dtype=Ui||Vt,ci.usage=li,ci.dimension=Bi,ci.byteLength=Ki),zt.profile&&(ci.stats.size=ci.byteLength*tr[ci.dtype]),nn}function Xi(vi,li){Ee.bufferSubData(ci.type,li,vi)}function qn(vi,li){var mn=(li||0)|0,Ki;if(ci.bind(),Wr(vi)||vi instanceof ArrayBuffer)Xi(vi,mn);else if(Array.isArray(vi)){if(vi.length>0){if(typeof vi[0]=="number"){var Ui=j.allocType(ci.dtype,vi.length);Er(Ui,vi),Xi(Ui,mn),j.freeType(Ui)}else if(Array.isArray(vi[0])||Wr(vi[0])){Ki=kn(vi);var Bi=Vn(vi,Ki,ci.dtype);Xi(Bi,mn),j.freeType(Bi)}}}else if(Ur(vi)){Ki=vi.shape;var vn=vi.stride,Un=0,na=0,Yi=0,Ln=0;Ki.length===1?(Un=Ki[0],na=1,Yi=vn[0],Ln=0):Ki.length===2&&(Un=Ki[0],na=Ki[1],Yi=vn[0],Ln=vn[1]);var ra=Array.isArray(vi.data)?ci.dtype:ar(vi.data),oa=j.allocType(ra,Un*na);Zr(oa,vi.data,Un,na,Yi,Ln,vi.offset),Xi(oa,mn),j.freeType(oa)}return nn}return xi||nn(Mr),nn._reglType="buffer",nn._buffer=ci,nn.subdata=qn,zt.profile&&(nn.stats=ci.stats),nn.destroy=function(){Qi(ci)},nn}function si(){dt(Br).forEach(function(Mr){Mr.buffer=Ee.createBuffer(),Ee.bindBuffer(Mr.type,Mr.buffer),Ee.bufferData(Mr.type,Mr.persistentData||Mr.byteLength,Mr.usage)})}return zt.profile&&(xt.getTotalBufferSize=function(){var Mr=0;return Object.keys(Br).forEach(function(Yr){Mr+=Br[Yr].stats.size}),Mr}),{create:ji,createStream:Ni,destroyStream:Oi,clear:function(){dt(Br).forEach(Qi),mi.forEach(Qi)},getBuffer:function(Mr){return Mr&&Mr._buffer instanceof Vr?Mr._buffer:null},restore:si,_initBuffer:Hn}}var $r=0,zi=0,Ji=1,en=1,cn=4,yn=4,Mn={points:$r,point:zi,lines:Ji,line:en,triangles:cn,triangle:yn,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6},Ba=0,la=1,ma=4,Wa=5120,Fa=5121,Wo=5122,da=5123,Wn=5124,Ga=5125,vo=34963,jn=35040,St=35044;function Cr(Ee,xt,zt,Ir){var Hr={},Br=0,Vr={uint8:Fa,uint16:da};xt.oes_element_index_uint&&(Vr.uint32=Ga);function mi(si){this.id=Br++,Hr[this.id]=this,this.buffer=si,this.primType=ma,this.vertCount=0,this.type=0}mi.prototype.bind=function(){this.buffer.bind()};var Ni=[];function Oi(si){var Mr=Ni.pop();return Mr||(Mr=new mi(zt.create(null,vo,!0,!1)._buffer)),Hn(Mr,si,jn,-1,-1,0,0),Mr}function Mi(si){Ni.push(si)}function Hn(si,Mr,Yr,xi,Ii,ci,nn){si.buffer.bind();var Xi;if(Mr){var qn=nn;!nn&&(!Wr(Mr)||Ur(Mr)&&!Wr(Mr.data))&&(qn=xt.oes_element_index_uint?Ga:da),zt._initBuffer(si.buffer,Mr,Yr,qn,3)}else Ee.bufferData(vo,ci,Yr),si.buffer.dtype=Xi||Fa,si.buffer.usage=Yr,si.buffer.dimension=3,si.buffer.byteLength=ci;if(Xi=nn,!nn){switch(si.buffer.dtype){case Fa:case Wa:Xi=Fa;break;case da:case Wo:Xi=da;break;case Ga:case Wn:Xi=Ga;break;default:}si.buffer.dtype=Xi}si.type=Xi;var vi=Ii;vi<0&&(vi=si.buffer.byteLength,Xi===da?vi>>=1:Xi===Ga&&(vi>>=2)),si.vertCount=vi;var li=xi;if(xi<0){li=ma;var mn=si.buffer.dimension;mn===1&&(li=Ba),mn===2&&(li=la),mn===3&&(li=ma)}si.primType=li}function Qi(si){Ir.elementsCount--,delete Hr[si.id],si.buffer.destroy(),si.buffer=null}function ji(si,Mr){var Yr=zt.create(null,vo,!0),xi=new mi(Yr._buffer);Ir.elementsCount++;function Ii(ci){if(!ci)Yr(),xi.primType=ma,xi.vertCount=0,xi.type=Fa;else if(typeof ci=="number")Yr(ci),xi.primType=ma,xi.vertCount=ci|0,xi.type=Fa;else{var nn=null,Xi=St,qn=-1,vi=-1,li=0,mn=0;Array.isArray(ci)||Wr(ci)||Ur(ci)?nn=ci:("data"in ci&&(nn=ci.data),"usage"in ci&&(Xi=pn[ci.usage]),"primitive"in ci&&(qn=Mn[ci.primitive]),"count"in ci&&(vi=ci.count|0),"type"in ci&&(mn=Vr[ci.type]),"length"in ci?li=ci.length|0:(li=vi,mn===da||mn===Wo?li*=2:(mn===Ga||mn===Wn)&&(li*=4))),Hn(xi,nn,Xi,qn,vi,li,mn)}return Ii}return Ii(si),Ii._reglType="elements",Ii._elements=xi,Ii.subdata=function(ci,nn){return Yr.subdata(ci,nn),Ii},Ii.destroy=function(){Qi(xi)},Ii}return{create:ji,createStream:Oi,destroyStream:Mi,getElements:function(si){return typeof si=="function"&&si._elements instanceof mi?si._elements:null},clear:function(){dt(Hr).forEach(Qi)}}}var Qr=new Float32Array(1),pi=new Uint32Array(Qr.buffer),fn=5123;function Sn(Ee){for(var xt=j.allocType(fn,Ee.length),zt=0;zt<Ee.length;++zt)if(isNaN(Ee[zt]))xt[zt]=65535;else if(Ee[zt]===1/0)xt[zt]=31744;else if(Ee[zt]===-1/0)xt[zt]=64512;else{Qr[0]=Ee[zt];var Ir=pi[0],Hr=Ir>>>31<<15,Br=(Ir<<1>>>24)-127,Vr=Ir>>13&1023;if(Br<-24)xt[zt]=Hr;else if(Br<-14){var mi=-14-Br;xt[zt]=Hr+(Vr+1024>>mi)}else Br>15?xt[zt]=Hr+31744:xt[zt]=Hr+(Br+15<<10)+Vr}return xt}function En(Ee){return Array.isArray(Ee)||Wr(Ee)}var ki=34467,_n=3553,ya=34067,Jn=34069,Ma=6408,_o=6406,No=6407,po=6409,Lo=6410,Co=32854,Fs=32855,zs=36194,ul=32819,cl=32820,Fl=33635,cs=34042,nl=6402,Ss=34041,fl=35904,Js=35906,Os=36193,Io=33776,us=33777,Zl=33778,Su=33779,nc=35986,ws=35987,Fn=34798,_a=35840,Vu=35841,zl=35842,xo=35843,Yl=36196,Us=5121,Hl=5123,ac=5125,aa=5126,Oo=10242,qo=10243,Ol=10497,Pc=33071,Do=33648,rf=10240,Uf=10241,ml=9728,Zc=9729,Kl=9984,qs=9985,yu=9986,oc=9987,Cf=33170,sc=4352,Nh=4353,kf=4354,fs=34046,nf=3317,Vf=37440,Jl=37441,hl=37443,lc=37444,Fu=33984,Cs=[Kl,yu,qs,oc],js=[0,po,Lo,No,Ma],Go={};Go[po]=Go[_o]=Go[nl]=1,Go[Ss]=Go[Lo]=2,Go[No]=Go[fl]=3,Go[Ma]=Go[Js]=4;function gs(Ee){return"[object "+Ee+"]"}var uc=gs("HTMLCanvasElement"),xl=gs("OffscreenCanvas"),Gu=gs("CanvasRenderingContext2D"),Bs=gs("ImageBitmap"),ad=gs("HTMLImageElement"),Po=gs("HTMLVideoElement"),od=Object.keys(Ce).concat([uc,xl,Gu,Bs,ad,Po]),Yo=[];Yo[Us]=1,Yo[aa]=4,Yo[Os]=2,Yo[Hl]=2,Yo[ac]=4;var Pa=[];Pa[Co]=2,Pa[Fs]=2,Pa[zs]=2,Pa[Ss]=4,Pa[Io]=.5,Pa[us]=.5,Pa[Zl]=1,Pa[Su]=1,Pa[nc]=.5,Pa[ws]=1,Pa[Fn]=1,Pa[_a]=.5,Pa[Vu]=.25,Pa[zl]=.5,Pa[xo]=.25,Pa[Yl]=.5;function af(Ee){return Array.isArray(Ee)&&(Ee.length===0||typeof Ee[0]=="number")}function Hu(Ee){if(!Array.isArray(Ee))return!1;var xt=Ee.length;return!(xt===0||!En(Ee[0]))}function bl(Ee){return Object.prototype.toString.call(Ee)}function Gf(Ee){return bl(Ee)===uc}function Ic(Ee){return bl(Ee)===xl}function mf(Ee){return bl(Ee)===Gu}function ql(Ee){return bl(Ee)===Bs}function _h(Ee){return bl(Ee)===ad}function Qf(Ee){return bl(Ee)===Po}function yf(Ee){if(!Ee)return!1;var xt=bl(Ee);return od.indexOf(xt)>=0?!0:af(Ee)||Hu(Ee)||Ur(Ee)}function Yc(Ee){return Ce[Object.prototype.toString.call(Ee)]|0}function eh(Ee,xt){var zt=xt.length;switch(Ee.type){case Us:case Hl:case ac:case aa:var Ir=j.allocType(Ee.type,zt);Ir.set(xt),Ee.data=Ir;break;case Os:Ee.data=Sn(xt);break;default:}}function th(Ee,xt){return j.allocType(Ee.type===Os?aa:Ee.type,xt)}function ju(Ee,xt){Ee.type===Os?(Ee.data=Sn(xt),j.freeType(xt)):Ee.data=xt}function Hf(Ee,xt,zt,Ir,Hr,Br){for(var Vr=Ee.width,mi=Ee.height,Ni=Ee.channels,Oi=Vr*mi*Ni,Mi=th(Ee,Oi),Hn=0,Qi=0;Qi<mi;++Qi)for(var ji=0;ji<Vr;++ji)for(var si=0;si<Ni;++si)Mi[Hn++]=xt[zt*ji+Ir*Qi+Hr*si+Br];ju(Ee,Mi)}function cc(Ee,xt,zt,Ir,Hr,Br){var Vr;if(typeof Pa[Ee]!="undefined"?Vr=Pa[Ee]:Vr=Go[Ee]*Yo[xt],Br&&(Vr*=6),Hr){for(var mi=0,Ni=zt;Ni>=1;)mi+=Vr*Ni*Ni,Ni/=2;return mi}else return Vr*zt*Ir}function of(Ee,xt,zt,Ir,Hr,Br,Vr){var mi={"don't care":sc,"dont care":sc,nice:kf,fast:Nh},Ni={repeat:Ol,clamp:Pc,mirror:Do},Oi={nearest:ml,linear:Zc},Mi=e({mipmap:oc,"nearest mipmap nearest":Kl,"linear mipmap nearest":qs,"nearest mipmap linear":yu,"linear mipmap linear":oc},Oi),Hn={none:0,browser:lc},Qi={uint8:Us,rgba4:ul,rgb565:Fl,"rgb5 a1":cl},ji={alpha:_o,luminance:po,"luminance alpha":Lo,rgb:No,rgba:Ma,rgba4:Co,"rgb5 a1":Fs,rgb565:zs},si={};xt.ext_srgb&&(ji.srgb=fl,ji.srgba=Js),xt.oes_texture_float&&(Qi.float32=Qi.float=aa),xt.oes_texture_half_float&&(Qi.float16=Qi["half float"]=Os),xt.webgl_depth_texture&&(e(ji,{depth:nl,"depth stencil":Ss}),e(Qi,{uint16:Hl,uint32:ac,"depth stencil":cs})),xt.webgl_compressed_texture_s3tc&&e(si,{"rgb s3tc dxt1":Io,"rgba s3tc dxt1":us,"rgba s3tc dxt3":Zl,"rgba s3tc dxt5":Su}),xt.webgl_compressed_texture_atc&&e(si,{"rgb atc":nc,"rgba atc explicit alpha":ws,"rgba atc interpolated alpha":Fn}),xt.webgl_compressed_texture_pvrtc&&e(si,{"rgb pvrtc 4bppv1":_a,"rgb pvrtc 2bppv1":Vu,"rgba pvrtc 4bppv1":zl,"rgba pvrtc 2bppv1":xo}),xt.webgl_compressed_texture_etc1&&(si["rgb etc1"]=Yl);var Mr=Array.prototype.slice.call(Ee.getParameter(ki));Object.keys(si).forEach(function(ne){var we=si[ne];Mr.indexOf(we)>=0&&(ji[ne]=we)});var Yr=Object.keys(ji);zt.textureFormats=Yr;var xi=[];Object.keys(ji).forEach(function(ne){var we=ji[ne];xi[we]=ne});var Ii=[];Object.keys(Qi).forEach(function(ne){var we=Qi[ne];Ii[we]=ne});var ci=[];Object.keys(Oi).forEach(function(ne){var we=Oi[ne];ci[we]=ne});var nn=[];Object.keys(Mi).forEach(function(ne){var we=Mi[ne];nn[we]=ne});var Xi=[];Object.keys(Ni).forEach(function(ne){var we=Ni[ne];Xi[we]=ne});var qn=Yr.reduce(function(ne,we){var Ue=ji[we];return Ue===po||Ue===_o||Ue===po||Ue===Lo||Ue===nl||Ue===Ss||xt.ext_srgb&&(Ue===fl||Ue===Js)?ne[Ue]=Ue:Ue===Fs||we.indexOf("rgba")>=0?ne[Ue]=Ma:ne[Ue]=No,ne},{});function vi(){this.internalformat=Ma,this.format=Ma,this.type=Us,this.compressed=!1,this.premultiplyAlpha=!1,this.flipY=!1,this.unpackAlignment=1,this.colorSpace=lc,this.width=0,this.height=0,this.channels=0}function li(ne,we){ne.internalformat=we.internalformat,ne.format=we.format,ne.type=we.type,ne.compressed=we.compressed,ne.premultiplyAlpha=we.premultiplyAlpha,ne.flipY=we.flipY,ne.unpackAlignment=we.unpackAlignment,ne.colorSpace=we.colorSpace,ne.width=we.width,ne.height=we.height,ne.channels=we.channels}function mn(ne,we){if(!(typeof we!="object"||!we)){if("premultiplyAlpha"in we&&(ne.premultiplyAlpha=we.premultiplyAlpha),"flipY"in we&&(ne.flipY=we.flipY),"alignment"in we&&(ne.unpackAlignment=we.alignment),"colorSpace"in we&&(ne.colorSpace=Hn[we.colorSpace]),"type"in we){var Ue=we.type;ne.type=Qi[Ue]}var ft=ne.width,Zt=ne.height,hr=ne.channels,qt=!1;"shape"in we?(ft=we.shape[0],Zt=we.shape[1],we.shape.length===3&&(hr=we.shape[2],qt=!0)):("radius"in we&&(ft=Zt=we.radius),"width"in we&&(ft=we.width),"height"in we&&(Zt=we.height),"channels"in we&&(hr=we.channels,qt=!0)),ne.width=ft|0,ne.height=Zt|0,ne.channels=hr|0;var Ve=!1;if("format"in we){var et=we.format,at=ne.internalformat=ji[et];ne.format=qn[at],et in Qi&&("type"in we||(ne.type=Qi[et])),et in si&&(ne.compressed=!0),Ve=!0}!qt&&Ve?ne.channels=Go[ne.format]:qt&&!Ve&&ne.channels!==js[ne.format]&&(ne.format=ne.internalformat=js[ne.channels])}}function Ki(ne){Ee.pixelStorei(Vf,ne.flipY),Ee.pixelStorei(Jl,ne.premultiplyAlpha),Ee.pixelStorei(hl,ne.colorSpace),Ee.pixelStorei(nf,ne.unpackAlignment)}function Ui(){vi.call(this),this.xOffset=0,this.yOffset=0,this.data=null,this.needsFree=!1,this.element=null,this.needsCopy=!1}function Bi(ne,we){var Ue=null;if(yf(we)?Ue=we:we&&(mn(ne,we),"x"in we&&(ne.xOffset=we.x|0),"y"in we&&(ne.yOffset=we.y|0),yf(we.data)&&(Ue=we.data)),we.copy){var ft=Hr.viewportWidth,Zt=Hr.viewportHeight;ne.width=ne.width||ft-ne.xOffset,ne.height=ne.height||Zt-ne.yOffset,ne.needsCopy=!0}else if(!Ue)ne.width=ne.width||1,ne.height=ne.height||1,ne.channels=ne.channels||4;else if(Wr(Ue))ne.channels=ne.channels||4,ne.data=Ue,!("type"in we)&&ne.type===Us&&(ne.type=Yc(Ue));else if(af(Ue))ne.channels=ne.channels||4,eh(ne,Ue),ne.alignment=1,ne.needsFree=!0;else if(Ur(Ue)){var hr=Ue.data;!Array.isArray(hr)&&ne.type===Us&&(ne.type=Yc(hr));var qt=Ue.shape,Ve=Ue.stride,et,at,kt,Ot,It,Bt;qt.length===3?(kt=qt[2],Bt=Ve[2]):(kt=1,Bt=1),et=qt[0],at=qt[1],Ot=Ve[0],It=Ve[1],ne.alignment=1,ne.width=et,ne.height=at,ne.channels=kt,ne.format=ne.internalformat=js[kt],ne.needsFree=!0,Hf(ne,hr,Ot,It,Bt,Ue.offset)}else if(Gf(Ue)||Ic(Ue)||mf(Ue))Gf(Ue)||Ic(Ue)?ne.element=Ue:ne.element=Ue.canvas,ne.width=ne.element.width,ne.height=ne.element.height,ne.channels=4;else if(ql(Ue))ne.element=Ue,ne.width=Ue.width,ne.height=Ue.height,ne.channels=4;else if(_h(Ue))ne.element=Ue,ne.width=Ue.naturalWidth,ne.height=Ue.naturalHeight,ne.channels=4;else if(Qf(Ue))ne.element=Ue,ne.width=Ue.videoWidth,ne.height=Ue.videoHeight,ne.channels=4;else if(Hu(Ue)){var Rt=ne.width||Ue[0].length,mt=ne.height||Ue.length,Pt=ne.channels;En(Ue[0][0])?Pt=Pt||Ue[0][0].length:Pt=Pt||1;for(var ht=Ge.shape(Ue),cr=1,br=0;br<ht.length;++br)cr*=ht[br];var Nr=th(ne,cr);Ge.flatten(Ue,ht,"",Nr),ju(ne,Nr),ne.alignment=1,ne.width=Rt,ne.height=mt,ne.channels=Pt,ne.format=ne.internalformat=js[Pt],ne.needsFree=!0}ne.type===aa||ne.type}function vn(ne,we,Ue){var ft=ne.element,Zt=ne.data,hr=ne.internalformat,qt=ne.format,Ve=ne.type,et=ne.width,at=ne.height;Ki(ne),ft?Ee.texImage2D(we,Ue,qt,qt,Ve,ft):ne.compressed?Ee.compressedTexImage2D(we,Ue,hr,et,at,0,Zt):ne.needsCopy?(Ir(),Ee.copyTexImage2D(we,Ue,qt,ne.xOffset,ne.yOffset,et,at,0)):Ee.texImage2D(we,Ue,qt,et,at,0,qt,Ve,Zt||null)}function Un(ne,we,Ue,ft,Zt){var hr=ne.element,qt=ne.data,Ve=ne.internalformat,et=ne.format,at=ne.type,kt=ne.width,Ot=ne.height;Ki(ne),hr?Ee.texSubImage2D(we,Zt,Ue,ft,et,at,hr):ne.compressed?Ee.compressedTexSubImage2D(we,Zt,Ue,ft,Ve,kt,Ot,qt):ne.needsCopy?(Ir(),Ee.copyTexSubImage2D(we,Zt,Ue,ft,ne.xOffset,ne.yOffset,kt,Ot)):Ee.texSubImage2D(we,Zt,Ue,ft,kt,Ot,et,at,qt)}var na=[];function Yi(){return na.pop()||new Ui}function Ln(ne){ne.needsFree&&j.freeType(ne.data),Ui.call(ne),na.push(ne)}function ra(){vi.call(this),this.genMipmaps=!1,this.mipmapHint=sc,this.mipmask=0,this.images=Array(16)}function oa(ne,we,Ue){var ft=ne.images[0]=Yi();ne.mipmask=1,ft.width=ne.width=we,ft.height=ne.height=Ue,ft.channels=ne.channels=4}function wa(ne,we){var Ue=null;if(yf(we))Ue=ne.images[0]=Yi(),li(Ue,ne),Bi(Ue,we),ne.mipmask=1;else if(mn(ne,we),Array.isArray(we.mipmap))for(var ft=we.mipmap,Zt=0;Zt<ft.length;++Zt)Ue=ne.images[Zt]=Yi(),li(Ue,ne),Ue.width>>=Zt,Ue.height>>=Zt,Bi(Ue,ft[Zt]),ne.mipmask|=1<<Zt;else Ue=ne.images[0]=Yi(),li(Ue,ne),Bi(Ue,we),ne.mipmask=1;li(ne,ne.images[0]),ne.compressed&&(ne.internalformat===Io||ne.internalformat===us||ne.internalformat===Zl||ne.internalformat)}function ns(ne,we){for(var Ue=ne.images,ft=0;ft<Ue.length;++ft){if(!Ue[ft])return;vn(Ue[ft],we,ft)}}var Ys=[];function Va(){var ne=Ys.pop()||new ra;vi.call(ne),ne.mipmask=0;for(var we=0;we<16;++we)ne.images[we]=null;return ne}function Ml(ne){for(var we=ne.images,Ue=0;Ue<we.length;++Ue)we[Ue]&&Ln(we[Ue]),we[Ue]=null;Ys.push(ne)}function zo(){this.minFilter=ml,this.magFilter=ml,this.wrapS=Pc,this.wrapT=Pc,this.anisotropic=1,this.genMipmaps=!1,this.mipmapHint=sc}function el(ne,we){if("min"in we){var Ue=we.min;ne.minFilter=Mi[Ue],Cs.indexOf(ne.minFilter)>=0&&!("faces"in we)&&(ne.genMipmaps=!0)}if("mag"in we){var ft=we.mag;ne.magFilter=Oi[ft]}var Zt=ne.wrapS,hr=ne.wrapT;if("wrap"in we){var qt=we.wrap;typeof qt=="string"?Zt=hr=Ni[qt]:Array.isArray(qt)&&(Zt=Ni[qt[0]],hr=Ni[qt[1]])}else{if("wrapS"in we){var Ve=we.wrapS;Zt=Ni[Ve]}if("wrapT"in we){var et=we.wrapT;hr=Ni[et]}}if(ne.wrapS=Zt,ne.wrapT=hr,"anisotropic"in we){var at=we.anisotropic;ne.anisotropic=we.anisotropic}if("mipmap"in we){var kt=!1;switch(typeof we.mipmap){case"string":ne.mipmapHint=mi[we.mipmap],ne.genMipmaps=!0,kt=!0;break;case"boolean":kt=ne.genMipmaps=we.mipmap;break;case"object":ne.genMipmaps=!1,kt=!0;break;default:}kt&&!("min"in we)&&(ne.minFilter=Kl)}}function ol(ne,we){Ee.texParameteri(we,Uf,ne.minFilter),Ee.texParameteri(we,rf,ne.magFilter),Ee.texParameteri(we,Oo,ne.wrapS),Ee.texParameteri(we,qo,ne.wrapT),xt.ext_texture_filter_anisotropic&&Ee.texParameteri(we,fs,ne.anisotropic),ne.genMipmaps&&(Ee.hint(Cf,ne.mipmapHint),Ee.generateMipmap(we))}var Ul=0,ls={},Gs=zt.maxTextureUnits,Ks=Array(Gs).map(function(){return null});function Ta(ne){vi.call(this),this.mipmask=0,this.internalformat=Ma,this.id=Ul++,this.refCount=1,this.target=ne,this.texture=Ee.createTexture(),this.unit=-1,this.bindCount=0,this.texInfo=new zo,Vr.profile&&(this.stats={size:0})}function sl(ne){Ee.activeTexture(Fu),Ee.bindTexture(ne.target,ne.texture)}function io(){var ne=Ks[0];ne?Ee.bindTexture(ne.target,ne.texture):Ee.bindTexture(_n,null)}function Y(ne){var we=ne.texture,Ue=ne.unit,ft=ne.target;Ue>=0&&(Ee.activeTexture(Fu+Ue),Ee.bindTexture(ft,null),Ks[Ue]=null),Ee.deleteTexture(we),ne.texture=null,ne.params=null,ne.pixels=null,ne.refCount=0,delete ls[ne.id],Br.textureCount--}e(Ta.prototype,{bind:function(){var ne=this;ne.bindCount+=1;var we=ne.unit;if(we<0){for(var Ue=0;Ue<Gs;++Ue){var ft=Ks[Ue];if(ft){if(ft.bindCount>0)continue;ft.unit=-1}Ks[Ue]=ne,we=Ue;break}we>=Gs,Vr.profile&&Br.maxTextureUnits<we+1&&(Br.maxTextureUnits=we+1),ne.unit=we,Ee.activeTexture(Fu+we),Ee.bindTexture(ne.target,ne.texture)}return we},unbind:function(){this.bindCount-=1},decRef:function(){--this.refCount<=0&&Y(this)}});function D(ne,we){var Ue=new Ta(_n);ls[Ue.id]=Ue,Br.textureCount++;function ft(qt,Ve){var et=Ue.texInfo;zo.call(et);var at=Va();return typeof qt=="number"?typeof Ve=="number"?oa(at,qt|0,Ve|0):oa(at,qt|0,qt|0):qt?(el(et,qt),wa(at,qt)):oa(at,1,1),et.genMipmaps&&(at.mipmask=(at.width<<1)-1),Ue.mipmask=at.mipmask,li(Ue,at),Ue.internalformat=at.internalformat,ft.width=at.width,ft.height=at.height,sl(Ue),ns(at,_n),ol(et,_n),io(),Ml(at),Vr.profile&&(Ue.stats.size=cc(Ue.internalformat,Ue.type,at.width,at.height,et.genMipmaps,!1)),ft.format=xi[Ue.internalformat],ft.type=Ii[Ue.type],ft.mag=ci[et.magFilter],ft.min=nn[et.minFilter],ft.wrapS=Xi[et.wrapS],ft.wrapT=Xi[et.wrapT],ft}function Zt(qt,Ve,et,at){var kt=Ve|0,Ot=et|0,It=at|0,Bt=Yi();return li(Bt,Ue),Bt.width=0,Bt.height=0,Bi(Bt,qt),Bt.width=Bt.width||(Ue.width>>It)-kt,Bt.height=Bt.height||(Ue.height>>It)-Ot,sl(Ue),Un(Bt,_n,kt,Ot,It),io(),Ln(Bt),ft}function hr(qt,Ve){var et=qt|0,at=Ve|0||et;if(et===Ue.width&&at===Ue.height)return ft;ft.width=Ue.width=et,ft.height=Ue.height=at,sl(Ue);for(var kt=0;Ue.mipmask>>kt;++kt){var Ot=et>>kt,It=at>>kt;if(!Ot||!It)break;Ee.texImage2D(_n,kt,Ue.format,Ot,It,0,Ue.format,Ue.type,null)}return io(),Vr.profile&&(Ue.stats.size=cc(Ue.internalformat,Ue.type,et,at,!1,!1)),ft}return ft(ne,we),ft.subimage=Zt,ft.resize=hr,ft._reglType="texture2d",ft._texture=Ue,Vr.profile&&(ft.stats=Ue.stats),ft.destroy=function(){Ue.decRef()},ft}function J(ne,we,Ue,ft,Zt,hr){var qt=new Ta(ya);ls[qt.id]=qt,Br.cubeCount++;var Ve=new Array(6);function et(Ot,It,Bt,Rt,mt,Pt){var ht,cr=qt.texInfo;for(zo.call(cr),ht=0;ht<6;++ht)Ve[ht]=Va();if(typeof Ot=="number"||!Ot){var br=Ot|0||1;for(ht=0;ht<6;++ht)oa(Ve[ht],br,br)}else if(typeof Ot=="object")if(It)wa(Ve[0],Ot),wa(Ve[1],It),wa(Ve[2],Bt),wa(Ve[3],Rt),wa(Ve[4],mt),wa(Ve[5],Pt);else if(el(cr,Ot),mn(qt,Ot),"faces"in Ot){var Nr=Ot.faces;for(ht=0;ht<6;++ht)li(Ve[ht],qt),wa(Ve[ht],Nr[ht])}else for(ht=0;ht<6;++ht)wa(Ve[ht],Ot);for(li(qt,Ve[0]),cr.genMipmaps?qt.mipmask=(Ve[0].width<<1)-1:qt.mipmask=Ve[0].mipmask,qt.internalformat=Ve[0].internalformat,et.width=Ve[0].width,et.height=Ve[0].height,sl(qt),ht=0;ht<6;++ht)ns(Ve[ht],Jn+ht);for(ol(cr,ya),io(),Vr.profile&&(qt.stats.size=cc(qt.internalformat,qt.type,et.width,et.height,cr.genMipmaps,!0)),et.format=xi[qt.internalformat],et.type=Ii[qt.type],et.mag=ci[cr.magFilter],et.min=nn[cr.minFilter],et.wrapS=Xi[cr.wrapS],et.wrapT=Xi[cr.wrapT],ht=0;ht<6;++ht)Ml(Ve[ht]);return et}function at(Ot,It,Bt,Rt,mt){var Pt=Bt|0,ht=Rt|0,cr=mt|0,br=Yi();return li(br,qt),br.width=0,br.height=0,Bi(br,It),br.width=br.width||(qt.width>>cr)-Pt,br.height=br.height||(qt.height>>cr)-ht,sl(qt),Un(br,Jn+Ot,Pt,ht,cr),io(),Ln(br),et}function kt(Ot){var It=Ot|0;if(It!==qt.width){et.width=qt.width=It,et.height=qt.height=It,sl(qt);for(var Bt=0;Bt<6;++Bt)for(var Rt=0;qt.mipmask>>Rt;++Rt)Ee.texImage2D(Jn+Bt,Rt,qt.format,It>>Rt,It>>Rt,0,qt.format,qt.type,null);return io(),Vr.profile&&(qt.stats.size=cc(qt.internalformat,qt.type,et.width,et.height,!1,!0)),et}}return et(ne,we,Ue,ft,Zt,hr),et.subimage=at,et.resize=kt,et._reglType="textureCube",et._texture=qt,Vr.profile&&(et.stats=qt.stats),et.destroy=function(){qt.decRef()},et}function q(){for(var ne=0;ne<Gs;++ne)Ee.activeTexture(Fu+ne),Ee.bindTexture(_n,null),Ks[ne]=null;dt(ls).forEach(Y),Br.cubeCount=0,Br.textureCount=0}Vr.profile&&(Br.getTotalTextureSize=function(){var ne=0;return Object.keys(ls).forEach(function(we){ne+=ls[we].stats.size}),ne});function K(){for(var ne=0;ne<Gs;++ne){var we=Ks[ne];we&&(we.bindCount=0,we.unit=-1,Ks[ne]=null)}dt(ls).forEach(function(Ue){Ue.texture=Ee.createTexture(),Ee.bindTexture(Ue.target,Ue.texture);for(var ft=0;ft<32;++ft)if((Ue.mipmask&1<<ft)!==0)if(Ue.target===_n)Ee.texImage2D(_n,ft,Ue.internalformat,Ue.width>>ft,Ue.height>>ft,0,Ue.internalformat,Ue.type,null);else for(var Zt=0;Zt<6;++Zt)Ee.texImage2D(Jn+Zt,ft,Ue.internalformat,Ue.width>>ft,Ue.height>>ft,0,Ue.internalformat,Ue.type,null);ol(Ue.texInfo,Ue.target)})}function de(){for(var ne=0;ne<Gs;++ne){var we=Ks[ne];we&&(we.bindCount=0,we.unit=-1,Ks[ne]=null),Ee.activeTexture(Fu+ne),Ee.bindTexture(_n,null),Ee.bindTexture(ya,null)}}return{create2D:D,createCube:J,clear:q,getTexture:function(ne){return null},restore:K,refresh:de}}var Bl=36161,Kc=32854,Rc=32855,ms=36194,jf=33189,Uh=36168,rh=34041,sf=35907,xh=34836,Mu=34842,ih=34843,Ws=[];Ws[Kc]=2,Ws[Rc]=2,Ws[ms]=2,Ws[jf]=2,Ws[Uh]=1,Ws[rh]=4,Ws[sf]=4,Ws[xh]=16,Ws[Mu]=8,Ws[ih]=6;function Eu(Ee,xt,zt){return Ws[Ee]*xt*zt}var Dc=function(Ee,xt,zt,Ir,Hr){var Br={rgba4:Kc,rgb565:ms,"rgb5 a1":Rc,depth:jf,stencil:Uh,"depth stencil":rh};xt.ext_srgb&&(Br.srgba=sf),xt.ext_color_buffer_half_float&&(Br.rgba16f=Mu,Br.rgb16f=ih),xt.webgl_color_buffer_float&&(Br.rgba32f=xh);var Vr=[];Object.keys(Br).forEach(function(ji){var si=Br[ji];Vr[si]=ji});var mi=0,Ni={};function Oi(ji){this.id=mi++,this.refCount=1,this.renderbuffer=ji,this.format=Kc,this.width=0,this.height=0,Hr.profile&&(this.stats={size:0})}Oi.prototype.decRef=function(){--this.refCount<=0&&Mi(this)};function Mi(ji){var si=ji.renderbuffer;Ee.bindRenderbuffer(Bl,null),Ee.deleteRenderbuffer(si),ji.renderbuffer=null,ji.refCount=0,delete Ni[ji.id],Ir.renderbufferCount--}function Hn(ji,si){var Mr=new Oi(Ee.createRenderbuffer());Ni[Mr.id]=Mr,Ir.renderbufferCount++;function Yr(Ii,ci){var nn=0,Xi=0,qn=Kc;if(typeof Ii=="object"&&Ii){var vi=Ii;if("shape"in vi){var li=vi.shape;nn=li[0]|0,Xi=li[1]|0}else"radius"in vi&&(nn=Xi=vi.radius|0),"width"in vi&&(nn=vi.width|0),"height"in vi&&(Xi=vi.height|0);"format"in vi&&(qn=Br[vi.format])}else typeof Ii=="number"?(nn=Ii|0,typeof ci=="number"?Xi=ci|0:Xi=nn):Ii||(nn=Xi=1);if(!(nn===Mr.width&&Xi===Mr.height&&qn===Mr.format))return Yr.width=Mr.width=nn,Yr.height=Mr.height=Xi,Mr.format=qn,Ee.bindRenderbuffer(Bl,Mr.renderbuffer),Ee.renderbufferStorage(Bl,qn,nn,Xi),Hr.profile&&(Mr.stats.size=Eu(Mr.format,Mr.width,Mr.height)),Yr.format=Vr[Mr.format],Yr}function xi(Ii,ci){var nn=Ii|0,Xi=ci|0||nn;return nn===Mr.width&&Xi===Mr.height||(Yr.width=Mr.width=nn,Yr.height=Mr.height=Xi,Ee.bindRenderbuffer(Bl,Mr.renderbuffer),Ee.renderbufferStorage(Bl,Mr.format,nn,Xi),Hr.profile&&(Mr.stats.size=Eu(Mr.format,Mr.width,Mr.height))),Yr}return Yr(ji,si),Yr.resize=xi,Yr._reglType="renderbuffer",Yr._renderbuffer=Mr,Hr.profile&&(Yr.stats=Mr.stats),Yr.destroy=function(){Mr.decRef()},Yr}Hr.profile&&(Ir.getTotalRenderbufferSize=function(){var ji=0;return Object.keys(Ni).forEach(function(si){ji+=Ni[si].stats.size}),ji});function Qi(){dt(Ni).forEach(function(ji){ji.renderbuffer=Ee.createRenderbuffer(),Ee.bindRenderbuffer(Bl,ji.renderbuffer),Ee.renderbufferStorage(Bl,ji.format,ji.width,ji.height)}),Ee.bindRenderbuffer(Bl,null)}return{create:Hn,clear:function(){dt(Ni).forEach(Mi)},restore:Qi}},ks=36160,bc=36161,du=3553,_u=34069,al=36064,nh=36096,bh=36128,zu=33306,Fc=36053,wc=36193,bd=5121,_f=5126,Lf=6407,Ou=6408,xf=[];xf[Ou]=4,xf[Lf]=3;var jl=[];jl[bd]=1,jl[_f]=4,jl[wc]=2;function lf(Ee,xt,zt,Ir,Hr,Br){var Vr={cur:null,next:null,dirty:!1,setFBO:null},mi=["rgba"],Ni=["rgba4","rgb565","rgb5 a1"];xt.ext_srgb&&Ni.push("srgba"),xt.ext_color_buffer_half_float&&Ni.push("rgba16f","rgb16f"),xt.webgl_color_buffer_float&&Ni.push("rgba32f");var Oi=["uint8"];xt.oes_texture_half_float&&Oi.push("half float","float16"),xt.oes_texture_float&&Oi.push("float","float32");function Mi(Ui,Bi,vn){this.target=Ui,this.texture=Bi,this.renderbuffer=vn;var Un=0,na=0;Bi?(Un=Bi.width,na=Bi.height):vn&&(Un=vn.width,na=vn.height),this.width=Un,this.height=na}function Hn(Ui){Ui&&(Ui.texture&&Ui.texture._texture.decRef(),Ui.renderbuffer&&Ui.renderbuffer._renderbuffer.decRef())}function Qi(Ui,Bi,vn){if(Ui)if(Ui.texture){var Un=Ui.texture._texture,na=Math.max(1,Un.width),Yi=Math.max(1,Un.height);Un.refCount+=1}else{var Ln=Ui.renderbuffer._renderbuffer;Ln.refCount+=1}}function ji(Ui,Bi){Bi&&(Bi.texture?Ee.framebufferTexture2D(ks,Ui,Bi.target,Bi.texture._texture.texture,0):Ee.framebufferRenderbuffer(ks,Ui,bc,Bi.renderbuffer._renderbuffer.renderbuffer))}function si(Ui){var Bi=du,vn=null,Un=null,na=Ui;typeof Ui=="object"&&(na=Ui.data,"target"in Ui&&(Bi=Ui.target|0));var Yi=na._reglType;return Yi==="texture2d"||Yi==="textureCube"?vn=na:Yi==="renderbuffer"&&(Un=na,Bi=bc),new Mi(Bi,vn,Un)}function Mr(Ui,Bi,vn,Un,na){if(vn){var Yi=Ir.create2D({width:Ui,height:Bi,format:Un,type:na});return Yi._texture.refCount=0,new Mi(du,Yi,null)}else{var Ln=Hr.create({width:Ui,height:Bi,format:Un});return Ln._renderbuffer.refCount=0,new Mi(bc,null,Ln)}}function Yr(Ui){return Ui&&(Ui.texture||Ui.renderbuffer)}function xi(Ui,Bi,vn){Ui&&(Ui.texture?Ui.texture.resize(Bi,vn):Ui.renderbuffer&&Ui.renderbuffer.resize(Bi,vn),Ui.width=Bi,Ui.height=vn)}var Ii=0,ci={};function nn(){this.id=Ii++,ci[this.id]=this,this.framebuffer=Ee.createFramebuffer(),this.width=0,this.height=0,this.colorAttachments=[],this.depthAttachment=null,this.stencilAttachment=null,this.depthStencilAttachment=null}function Xi(Ui){Ui.colorAttachments.forEach(Hn),Hn(Ui.depthAttachment),Hn(Ui.stencilAttachment),Hn(Ui.depthStencilAttachment)}function qn(Ui){var Bi=Ui.framebuffer;Ee.deleteFramebuffer(Bi),Ui.framebuffer=null,Br.framebufferCount--,delete ci[Ui.id]}function vi(Ui){var Bi;Ee.bindFramebuffer(ks,Ui.framebuffer);var vn=Ui.colorAttachments;for(Bi=0;Bi<vn.length;++Bi)ji(al+Bi,vn[Bi]);for(Bi=vn.length;Bi<zt.maxColorAttachments;++Bi)Ee.framebufferTexture2D(ks,al+Bi,du,null,0);Ee.framebufferTexture2D(ks,zu,du,null,0),Ee.framebufferTexture2D(ks,nh,du,null,0),Ee.framebufferTexture2D(ks,bh,du,null,0),ji(nh,Ui.depthAttachment),ji(bh,Ui.stencilAttachment),ji(zu,Ui.depthStencilAttachment);var Un=Ee.checkFramebufferStatus(ks);Ee.isContextLost(),Ee.bindFramebuffer(ks,Vr.next?Vr.next.framebuffer:null),Vr.cur=Vr.next,Ee.getError()}function li(Ui,Bi){var vn=new nn;Br.framebufferCount++;function Un(Yi,Ln){var ra,oa=0,wa=0,ns=!0,Ys=!0,Va=null,Ml=!0,zo="rgba",el="uint8",ol=1,Ul=null,ls=null,Gs=null,Ks=!1;if(typeof Yi=="number")oa=Yi|0,wa=Ln|0||oa;else if(!Yi)oa=wa=1;else{var Ta=Yi;if("shape"in Ta){var sl=Ta.shape;oa=sl[0],wa=sl[1]}else"radius"in Ta&&(oa=wa=Ta.radius),"width"in Ta&&(oa=Ta.width),"height"in Ta&&(wa=Ta.height);("color"in Ta||"colors"in Ta)&&(Va=Ta.color||Ta.colors,Array.isArray(Va)),Va||("colorCount"in Ta&&(ol=Ta.colorCount|0),"colorTexture"in Ta&&(Ml=!!Ta.colorTexture,zo="rgba4"),"colorType"in Ta&&(el=Ta.colorType,Ml||(el==="half float"||el==="float16"?zo="rgba16f":(el==="float"||el==="float32")&&(zo="rgba32f"))),"colorFormat"in Ta&&(zo=Ta.colorFormat,mi.indexOf(zo)>=0?Ml=!0:Ni.indexOf(zo)>=0&&(Ml=!1))),("depthTexture"in Ta||"depthStencilTexture"in Ta)&&(Ks=!!(Ta.depthTexture||Ta.depthStencilTexture)),"depth"in Ta&&(typeof Ta.depth=="boolean"?ns=Ta.depth:(Ul=Ta.depth,Ys=!1)),"stencil"in Ta&&(typeof Ta.stencil=="boolean"?Ys=Ta.stencil:(ls=Ta.stencil,ns=!1)),"depthStencil"in Ta&&(typeof Ta.depthStencil=="boolean"?ns=Ys=Ta.depthStencil:(Gs=Ta.depthStencil,ns=!1,Ys=!1))}var io=null,Y=null,D=null,J=null;if(Array.isArray(Va))io=Va.map(si);else if(Va)io=[si(Va)];else for(io=new Array(ol),ra=0;ra<ol;++ra)io[ra]=Mr(oa,wa,Ml,zo,el);oa=oa||io[0].width,wa=wa||io[0].height,Ul?Y=si(Ul):ns&&!Ys&&(Y=Mr(oa,wa,Ks,"depth","uint32")),ls?D=si(ls):Ys&&!ns&&(D=Mr(oa,wa,!1,"stencil","uint8")),Gs?J=si(Gs):!Ul&&!ls&&Ys&&ns&&(J=Mr(oa,wa,Ks,"depth stencil","depth stencil"));var q=null;for(ra=0;ra<io.length;++ra)if(Qi(io[ra],oa,wa),io[ra]&&io[ra].texture){var K=xf[io[ra].texture._texture.format]*jl[io[ra].texture._texture.type];q===null&&(q=K)}return Qi(Y,oa,wa),Qi(D,oa,wa),Qi(J,oa,wa),Xi(vn),vn.width=oa,vn.height=wa,vn.colorAttachments=io,vn.depthAttachment=Y,vn.stencilAttachment=D,vn.depthStencilAttachment=J,Un.color=io.map(Yr),Un.depth=Yr(Y),Un.stencil=Yr(D),Un.depthStencil=Yr(J),Un.width=vn.width,Un.height=vn.height,vi(vn),Un}function na(Yi,Ln){var ra=Math.max(Yi|0,1),oa=Math.max(Ln|0||ra,1);if(ra===vn.width&&oa===vn.height)return Un;for(var wa=vn.colorAttachments,ns=0;ns<wa.length;++ns)xi(wa[ns],ra,oa);return xi(vn.depthAttachment,ra,oa),xi(vn.stencilAttachment,ra,oa),xi(vn.depthStencilAttachment,ra,oa),vn.width=Un.width=ra,vn.height=Un.height=oa,vi(vn),Un}return Un(Ui,Bi),e(Un,{resize:na,_reglType:"framebuffer",_framebuffer:vn,destroy:function(){qn(vn),Xi(vn)},use:function(Yi){Vr.setFBO({framebuffer:Un},Yi)}})}function mn(Ui){var Bi=Array(6);function vn(na){var Yi,Ln={color:null},ra=0,oa=null,wa="rgba",ns="uint8",Ys=1;if(typeof na=="number")ra=na|0;else if(!na)ra=1;else{var Va=na;if("shape"in Va){var Ml=Va.shape;ra=Ml[0]}else"radius"in Va&&(ra=Va.radius|0),"width"in Va?(ra=Va.width|0,"height"in Va):"height"in Va&&(ra=Va.height|0);("color"in Va||"colors"in Va)&&(oa=Va.color||Va.colors,Array.isArray(oa)),oa||("colorCount"in Va&&(Ys=Va.colorCount|0),"colorType"in Va&&(ns=Va.colorType),"colorFormat"in Va&&(wa=Va.colorFormat)),"depth"in Va&&(Ln.depth=Va.depth),"stencil"in Va&&(Ln.stencil=Va.stencil),"depthStencil"in Va&&(Ln.depthStencil=Va.depthStencil)}var zo;if(oa)if(Array.isArray(oa))for(zo=[],Yi=0;Yi<oa.length;++Yi)zo[Yi]=oa[Yi];else zo=[oa];else{zo=Array(Ys);var el={radius:ra,format:wa,type:ns};for(Yi=0;Yi<Ys;++Yi)zo[Yi]=Ir.createCube(el)}for(Ln.color=Array(zo.length),Yi=0;Yi<zo.length;++Yi){var ol=zo[Yi];ra=ra||ol.width,Ln.color[Yi]={target:_u,data:zo[Yi]}}for(Yi=0;Yi<6;++Yi){for(var Ul=0;Ul<zo.length;++Ul)Ln.color[Ul].target=_u+Yi;Yi>0&&(Ln.depth=Bi[0].depth,Ln.stencil=Bi[0].stencil,Ln.depthStencil=Bi[0].depthStencil),Bi[Yi]?Bi[Yi](Ln):Bi[Yi]=li(Ln)}return e(vn,{width:ra,height:ra,color:zo})}function Un(na){var Yi,Ln=na|0;if(Ln===vn.width)return vn;var ra=vn.color;for(Yi=0;Yi<ra.length;++Yi)ra[Yi].resize(Ln);for(Yi=0;Yi<6;++Yi)Bi[Yi].resize(Ln);return vn.width=vn.height=Ln,vn}return vn(Ui),e(vn,{faces:Bi,resize:Un,_reglType:"framebufferCube",destroy:function(){Bi.forEach(function(na){na.destroy()})}})}function Ki(){Vr.cur=null,Vr.next=null,Vr.dirty=!0,dt(ci).forEach(function(Ui){Ui.framebuffer=Ee.createFramebuffer(),vi(Ui)})}return e(Vr,{getFramebuffer:function(Ui){if(typeof Ui=="function"&&Ui._reglType==="framebuffer"){var Bi=Ui._framebuffer;if(Bi instanceof nn)return Bi}return null},create:li,createCube:mn,clear:function(){dt(ci).forEach(qn)},restore:Ki})}var Vh=5126,Pf=34962,Ls=34963;function vu(){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=Vh,this.offset=0,this.stride=0,this.divisor=0}function Cu(Ee,xt,zt,Ir,Hr,Br,Vr){for(var mi=zt.maxAttributes,Ni=new Array(mi),Oi=0;Oi<mi;++Oi)Ni[Oi]=new vu;var Mi=0,Hn={},Qi={Record:vu,scope:{},state:Ni,currentVAO:null,targetVAO:null,restore:si()?Xi:function(){},createVAO:qn,getVAO:Yr,destroyBuffer:ji,setVAO:si()?xi:Ii,clear:si()?ci:function(){}};function ji(vi){for(var li=0;li<Ni.length;++li){var mn=Ni[li];mn.buffer===vi&&(Ee.disableVertexAttribArray(li),mn.buffer=null)}}function si(){return xt.oes_vertex_array_object}function Mr(){return xt.angle_instanced_arrays}function Yr(vi){return typeof vi=="function"&&vi._vao?vi._vao:null}function xi(vi){if(vi!==Qi.currentVAO){var li=si();vi?li.bindVertexArrayOES(vi.vao):li.bindVertexArrayOES(null),Qi.currentVAO=vi}}function Ii(vi){if(vi!==Qi.currentVAO){if(vi)vi.bindAttrs();else{for(var li=Mr(),mn=0;mn<Ni.length;++mn){var Ki=Ni[mn];Ki.buffer?(Ee.enableVertexAttribArray(mn),Ki.buffer.bind(),Ee.vertexAttribPointer(mn,Ki.size,Ki.type,Ki.normalized,Ki.stride,Ki.offfset),li&&Ki.divisor&&li.vertexAttribDivisorANGLE(mn,Ki.divisor)):(Ee.disableVertexAttribArray(mn),Ee.vertexAttrib4f(mn,Ki.x,Ki.y,Ki.z,Ki.w))}Vr.elements?Ee.bindBuffer(Ls,Vr.elements.buffer.buffer):Ee.bindBuffer(Ls,null)}Qi.currentVAO=vi}}function ci(){dt(Hn).forEach(function(vi){vi.destroy()})}function nn(){this.id=++Mi,this.attributes=[],this.elements=null,this.ownsElements=!1,this.count=0,this.offset=0,this.instances=-1,this.primitive=4;var vi=si();vi?this.vao=vi.createVertexArrayOES():this.vao=null,Hn[this.id]=this,this.buffers=[]}nn.prototype.bindAttrs=function(){for(var vi=Mr(),li=this.attributes,mn=0;mn<li.length;++mn){var Ki=li[mn];Ki.buffer?(Ee.enableVertexAttribArray(mn),Ee.bindBuffer(Pf,Ki.buffer.buffer),Ee.vertexAttribPointer(mn,Ki.size,Ki.type,Ki.normalized,Ki.stride,Ki.offset),vi&&Ki.divisor&&vi.vertexAttribDivisorANGLE(mn,Ki.divisor)):(Ee.disableVertexAttribArray(mn),Ee.vertexAttrib4f(mn,Ki.x,Ki.y,Ki.z,Ki.w))}for(var Ui=li.length;Ui<mi;++Ui)Ee.disableVertexAttribArray(Ui);var Bi=Br.getElements(this.elements);Bi?Ee.bindBuffer(Ls,Bi.buffer.buffer):Ee.bindBuffer(Ls,null)},nn.prototype.refresh=function(){var vi=si();vi&&(vi.bindVertexArrayOES(this.vao),this.bindAttrs(),Qi.currentVAO=null,vi.bindVertexArrayOES(null))},nn.prototype.destroy=function(){if(this.vao){var vi=si();this===Qi.currentVAO&&(Qi.currentVAO=null,vi.bindVertexArrayOES(null)),vi.deleteVertexArrayOES(this.vao),this.vao=null}this.ownsElements&&(this.elements.destroy(),this.elements=null,this.ownsElements=!1),Hn[this.id]&&(delete Hn[this.id],Ir.vaoCount-=1)};function Xi(){var vi=si();vi&&dt(Hn).forEach(function(li){li.refresh()})}function qn(vi){var li=new nn;Ir.vaoCount+=1;function mn(Ki){var Ui;if(Array.isArray(Ki))Ui=Ki,li.elements&&li.ownsElements&&li.elements.destroy(),li.elements=null,li.ownsElements=!1,li.offset=0,li.count=0,li.instances=-1,li.primitive=4;else{if(Ki.elements){var Bi=Ki.elements;li.ownsElements?typeof Bi=="function"&&Bi._reglType==="elements"?(li.elements.destroy(),li.ownsElements=!1):(li.elements(Bi),li.ownsElements=!1):Br.getElements(Ki.elements)?(li.elements=Ki.elements,li.ownsElements=!1):(li.elements=Br.create(Ki.elements),li.ownsElements=!0)}else li.elements=null,li.ownsElements=!1;Ui=Ki.attributes,li.offset=0,li.count=-1,li.instances=-1,li.primitive=4,li.elements&&(li.count=li.elements._elements.vertCount,li.primitive=li.elements._elements.primType),"offset"in Ki&&(li.offset=Ki.offset|0),"count"in Ki&&(li.count=Ki.count|0),"instances"in Ki&&(li.instances=Ki.instances|0),"primitive"in Ki&&(li.primitive=Mn[Ki.primitive])}var vn={},Un=li.attributes;Un.length=Ui.length;for(var na=0;na<Ui.length;++na){var Yi=Ui[na],Ln=Un[na]=new vu,ra=Yi.data||Yi;if(Array.isArray(ra)||Wr(ra)||Ur(ra)){var oa;li.buffers[na]&&(oa=li.buffers[na],Wr(ra)&&oa._buffer.byteLength>=ra.byteLength?oa.subdata(ra):(oa.destroy(),li.buffers[na]=null)),li.buffers[na]||(oa=li.buffers[na]=Hr.create(Yi,Pf,!1,!0)),Ln.buffer=Hr.getBuffer(oa),Ln.size=Ln.buffer.dimension|0,Ln.normalized=!1,Ln.type=Ln.buffer.dtype,Ln.offset=0,Ln.stride=0,Ln.divisor=0,Ln.state=1,vn[na]=1}else Hr.getBuffer(Yi)?(Ln.buffer=Hr.getBuffer(Yi),Ln.size=Ln.buffer.dimension|0,Ln.normalized=!1,Ln.type=Ln.buffer.dtype,Ln.offset=0,Ln.stride=0,Ln.divisor=0,Ln.state=1):Hr.getBuffer(Yi.buffer)?(Ln.buffer=Hr.getBuffer(Yi.buffer),Ln.size=(+Yi.size||Ln.buffer.dimension)|0,Ln.normalized=!!Yi.normalized||!1,"type"in Yi?Ln.type=Hi[Yi.type]:Ln.type=Ln.buffer.dtype,Ln.offset=(Yi.offset||0)|0,Ln.stride=(Yi.stride||0)|0,Ln.divisor=(Yi.divisor||0)|0,Ln.state=1):"x"in Yi&&(Ln.x=+Yi.x||0,Ln.y=+Yi.y||0,Ln.z=+Yi.z||0,Ln.w=+Yi.w||0,Ln.state=2)}for(var wa=0;wa<li.buffers.length;++wa)!vn[wa]&&li.buffers[wa]&&(li.buffers[wa].destroy(),li.buffers[wa]=null);return li.refresh(),mn}return mn.destroy=function(){for(var Ki=0;Ki<li.buffers.length;++Ki)li.buffers[Ki]&&li.buffers[Ki].destroy();li.buffers.length=0,li.ownsElements&&(li.elements.destroy(),li.elements=null,li.ownsElements=!1),li.destroy()},mn._vao=li,mn._reglType="vao",mn(vi)}return Qi}var Wf=35632,Vs=35633,bf=35718,zc=35721;function Wu(Ee,xt,zt,Ir){var Hr={},Br={};function Vr(Mr,Yr,xi,Ii){this.name=Mr,this.id=Yr,this.location=xi,this.info=Ii}function mi(Mr,Yr){for(var xi=0;xi<Mr.length;++xi)if(Mr[xi].id===Yr.id){Mr[xi].location=Yr.location;return}Mr.push(Yr)}function Ni(Mr,Yr,xi){var Ii=Mr===Wf?Hr:Br,ci=Ii[Yr];if(!ci){var nn=xt.str(Yr);ci=Ee.createShader(Mr),Ee.shaderSource(ci,nn),Ee.compileShader(ci),Ii[Yr]=ci}return ci}var Oi={},Mi=[],Hn=0;function Qi(Mr,Yr){this.id=Hn++,this.fragId=Mr,this.vertId=Yr,this.program=null,this.uniforms=[],this.attributes=[],this.refCount=1,Ir.profile&&(this.stats={uniformsCount:0,attributesCount:0})}function ji(Mr,Yr,xi){var Ii,ci,nn=Ni(Wf,Mr.fragId),Xi=Ni(Vs,Mr.vertId),qn=Mr.program=Ee.createProgram();if(Ee.attachShader(qn,nn),Ee.attachShader(qn,Xi),xi)for(Ii=0;Ii<xi.length;++Ii){var vi=xi[Ii];Ee.bindAttribLocation(qn,vi[0],vi[1])}Ee.linkProgram(qn);var li=Ee.getProgramParameter(qn,bf);Ir.profile&&(Mr.stats.uniformsCount=li);var mn=Mr.uniforms;for(Ii=0;Ii<li;++Ii)if(ci=Ee.getActiveUniform(qn,Ii),ci)if(ci.size>1)for(var Ki=0;Ki<ci.size;++Ki){var Ui=ci.name.replace("[0]","["+Ki+"]");mi(mn,new Vr(Ui,xt.id(Ui),Ee.getUniformLocation(qn,Ui),ci))}else mi(mn,new Vr(ci.name,xt.id(ci.name),Ee.getUniformLocation(qn,ci.name),ci));var Bi=Ee.getProgramParameter(qn,zc);Ir.profile&&(Mr.stats.attributesCount=Bi);var vn=Mr.attributes;for(Ii=0;Ii<Bi;++Ii)ci=Ee.getActiveAttrib(qn,Ii),ci&&mi(vn,new Vr(ci.name,xt.id(ci.name),Ee.getAttribLocation(qn,ci.name),ci))}Ir.profile&&(zt.getMaxUniformsCount=function(){var Mr=0;return Mi.forEach(function(Yr){Yr.stats.uniformsCount>Mr&&(Mr=Yr.stats.uniformsCount)}),Mr},zt.getMaxAttributesCount=function(){var Mr=0;return Mi.forEach(function(Yr){Yr.stats.attributesCount>Mr&&(Mr=Yr.stats.attributesCount)}),Mr});function si(){Hr={},Br={};for(var Mr=0;Mr<Mi.length;++Mr)ji(Mi[Mr],null,Mi[Mr].attributes.map(function(Yr){return[Yr.location,Yr.name]}))}return{clear:function(){var Mr=Ee.deleteShader.bind(Ee);dt(Hr).forEach(Mr),Hr={},dt(Br).forEach(Mr),Br={},Mi.forEach(function(Yr){Ee.deleteProgram(Yr.program)}),Mi.length=0,Oi={},zt.shaderCount=0},program:function(Mr,Yr,xi,Ii){var ci=Oi[Yr];ci||(ci=Oi[Yr]={});var nn=ci[Mr];if(nn&&(nn.refCount++,!Ii))return nn;var Xi=new Qi(Yr,Mr);return zt.shaderCount++,ji(Xi,xi,Ii),nn||(ci[Mr]=Xi),Mi.push(Xi),e(Xi,{destroy:function(){if(Xi.refCount--,Xi.refCount<=0){Ee.deleteProgram(Xi.program);var qn=Mi.indexOf(Xi);Mi.splice(qn,1),zt.shaderCount--}ci[Xi.vertId].refCount<=0&&(Ee.deleteShader(Br[Xi.vertId]),delete Br[Xi.vertId],delete Oi[Xi.fragId][Xi.vertId]),Object.keys(Oi[Xi.fragId]).length||(Ee.deleteShader(Hr[Xi.fragId]),delete Hr[Xi.fragId],delete Oi[Xi.fragId])}})},restore:si,shader:Ni,frag:-1,vert:-1}}var If=6408,Xu=5121,uf=3333,Xf=5126;function Wl(Ee,xt,zt,Ir,Hr,Br,Vr){function mi(Mi){var Hn;xt.next===null?Hn=Xu:Hn=xt.next.colorAttachments[0].texture._texture.type;var Qi=0,ji=0,si=Ir.framebufferWidth,Mr=Ir.framebufferHeight,Yr=null;Wr(Mi)?Yr=Mi:Mi&&(Qi=Mi.x|0,ji=Mi.y|0,si=(Mi.width||Ir.framebufferWidth-Qi)|0,Mr=(Mi.height||Ir.framebufferHeight-ji)|0,Yr=Mi.data||null),zt();var xi=si*Mr*4;return Yr||(Hn===Xu?Yr=new Uint8Array(xi):Hn===Xf&&(Yr=Yr||new Float32Array(xi))),Ee.pixelStorei(uf,4),Ee.readPixels(Qi,ji,si,Mr,If,Hn,Yr),Yr}function Ni(Mi){var Hn;return xt.setFBO({framebuffer:Mi.framebuffer},function(){Hn=mi(Mi)}),Hn}function Oi(Mi){return!Mi||!("framebuffer"in Mi)?mi(Mi):Ni(Mi)}return Oi}var ah=0,Zu="";function Oc(Ee){return pu(Tc(fc(Ee)))}function Tc(Ee){return At(Zi(Bc(Ee),Ee.length*8))}function wl(Ee,xt){var zt=Bc(Ee);zt.length>16&&(zt=Zi(zt,Ee.length*8));for(var Ir=Array(16),Hr=Array(16),Br=0;Br<16;Br++)Ir[Br]=zt[Br]^909522486,Hr[Br]=zt[Br]^1549556828;var Vr=Zi(Ir.concat(Bc(xt)),512+xt.length*8);return At(Zi(Hr.concat(Vr),768))}function pu(Ee){for(var xt=ah?"0123456789ABCDEF":"0123456789abcdef",zt="",Ir,Hr=0;Hr<Ee.length;Hr++)Ir=Ee.charCodeAt(Hr),zt+=xt.charAt(Ir>>>4&15)+xt.charAt(Ir&15);return zt}function qc(Ee){for(var xt="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",zt="",Ir=Ee.length,Hr=0;Hr<Ir;Hr+=3)for(var Br=Ee.charCodeAt(Hr)<<16|(Hr+1<Ir?Ee.charCodeAt(Hr+1)<<8:0)|(Hr+2<Ir?Ee.charCodeAt(Hr+2):0),Vr=0;Vr<4;Vr++)Hr*8+Vr*6>Ee.length*8?zt+=Zu:zt+=xt.charAt(Br>>>6*(3-Vr)&63);return zt}function cf(Ee,xt){var zt=xt.length,Ir=Array(),Hr,Br,Vr,mi,Ni=Array(Math.ceil(Ee.length/2));for(Hr=0;Hr<Ni.length;Hr++)Ni[Hr]=Ee.charCodeAt(Hr*2)<<8|Ee.charCodeAt(Hr*2+1);for(;Ni.length>0;){for(mi=Array(),Vr=0,Hr=0;Hr<Ni.length;Hr++)Vr=(Vr<<16)+Ni[Hr],Br=Math.floor(Vr/zt),Vr-=Br*zt,(mi.length>0||Br>0)&&(mi[mi.length]=Br);Ir[Ir.length]=Vr,Ni=mi}var Oi="";for(Hr=Ir.length-1;Hr>=0;Hr--)Oi+=xt.charAt(Ir[Hr]);var Mi=Math.ceil(Ee.length*8/(Math.log(xt.length)/Math.log(2)));for(Hr=Oi.length;Hr<Mi;Hr++)Oi=xt[0]+Oi;return Oi}function fc(Ee){for(var xt="",zt=-1,Ir,Hr;++zt<Ee.length;)Ir=Ee.charCodeAt(zt),Hr=zt+1<Ee.length?Ee.charCodeAt(zt+1):0,55296<=Ir&&Ir<=56319&&56320<=Hr&&Hr<=57343&&(Ir=65536+((Ir&1023)<<10)+(Hr&1023),zt++),Ir<=127?xt+=String.fromCharCode(Ir):Ir<=2047?xt+=String.fromCharCode(192|Ir>>>6&31,128|Ir&63):Ir<=65535?xt+=String.fromCharCode(224|Ir>>>12&15,128|Ir>>>6&63,128|Ir&63):Ir<=2097151&&(xt+=String.fromCharCode(240|Ir>>>18&7,128|Ir>>>12&63,128|Ir>>>6&63,128|Ir&63));return xt}function Bc(Ee){for(var xt=Array(Ee.length>>2),zt=0;zt<xt.length;zt++)xt[zt]=0;for(var zt=0;zt<Ee.length*8;zt+=8)xt[zt>>5]|=(Ee.charCodeAt(zt/8)&255)<<24-zt%32;return xt}function At(Ee){for(var xt="",zt=0;zt<Ee.length*32;zt+=8)xt+=String.fromCharCode(Ee[zt>>5]>>>24-zt%32&255);return xt}function Xt(Ee,xt){return Ee>>>xt|Ee<<32-xt}function kr(Ee,xt){return Ee>>>xt}function Ar(Ee,xt,zt){return Ee&xt^~Ee&zt}function Kr(Ee,xt,zt){return Ee&xt^Ee&zt^xt&zt}function Ei(Ee){return Xt(Ee,2)^Xt(Ee,13)^Xt(Ee,22)}function Wi(Ee){return Xt(Ee,6)^Xt(Ee,11)^Xt(Ee,25)}function hn(Ee){return Xt(Ee,7)^Xt(Ee,18)^kr(Ee,3)}function Tn(Ee){return Xt(Ee,17)^Xt(Ee,19)^kr(Ee,10)}var Bn=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 Zi(Ee,xt){var zt=new Array(1779033703,-1150833019,1013904242,-1521486534,1359893119,-1694144372,528734635,1541459225),Ir=new Array(64),Hr,Br,Vr,mi,Ni,Oi,Mi,Hn,Qi,ji,si,Mr;for(Ee[xt>>5]|=128<<24-xt%32,Ee[(xt+64>>9<<4)+15]=xt,Qi=0;Qi<Ee.length;Qi+=16){for(Hr=zt[0],Br=zt[1],Vr=zt[2],mi=zt[3],Ni=zt[4],Oi=zt[5],Mi=zt[6],Hn=zt[7],ji=0;ji<64;ji++)ji<16?Ir[ji]=Ee[ji+Qi]:Ir[ji]=$i($i($i(Tn(Ir[ji-2]),Ir[ji-7]),hn(Ir[ji-15])),Ir[ji-16]),si=$i($i($i($i(Hn,Wi(Ni)),Ar(Ni,Oi,Mi)),Bn[ji]),Ir[ji]),Mr=$i(Ei(Hr),Kr(Hr,Br,Vr)),Hn=Mi,Mi=Oi,Oi=Ni,Ni=$i(mi,si),mi=Vr,Vr=Br,Br=Hr,Hr=$i(si,Mr);zt[0]=$i(Hr,zt[0]),zt[1]=$i(Br,zt[1]),zt[2]=$i(Vr,zt[2]),zt[3]=$i(mi,zt[3]),zt[4]=$i(Ni,zt[4]),zt[5]=$i(Oi,zt[5]),zt[6]=$i(Mi,zt[6]),zt[7]=$i(Hn,zt[7])}return zt}function $i(Ee,xt){var zt=(Ee&65535)+(xt&65535),Ir=(Ee>>16)+(xt>>16)+(zt>>16);return Ir<<16|zt&65535}function an(Ee){return Array.prototype.slice.call(Ee)}function Di(Ee){return an(Ee).join("")}function $n(Ee){var xt=Ee&&Ee.cache,zt=0,Ir=[],Hr=[],Br=[];function Vr(si,Mr){var Yr=Mr&&Mr.stable;if(!Yr){for(var xi=0;xi<Hr.length;++xi)if(Hr[xi]===si&&!Br[xi])return Ir[xi]}var Ii="g"+zt++;return Ir.push(Ii),Hr.push(si),Br.push(Yr),Ii}function mi(){var si=[];function Mr(){si.push.apply(si,an(arguments))}var Yr=[];function xi(){var Ii="v"+zt++;return Yr.push(Ii),arguments.length>0&&(si.push(Ii,"="),si.push.apply(si,an(arguments)),si.push(";")),Ii}return e(Mr,{def:xi,toString:function(){return Di([Yr.length>0?"var "+Yr.join(",")+";":"",Di(si)])}})}function Ni(){var si=mi(),Mr=mi(),Yr=si.toString,xi=Mr.toString;function Ii(ci,nn){Mr(ci,nn,"=",si.def(ci,nn),";")}return e(function(){si.apply(si,an(arguments))},{def:si.def,entry:si,exit:Mr,save:Ii,set:function(ci,nn,Xi){Ii(ci,nn),si(ci,nn,"=",Xi,";")},toString:function(){return Yr()+xi()}})}function Oi(){var si=Di(arguments),Mr=Ni(),Yr=Ni(),xi=Mr.toString,Ii=Yr.toString;return e(Mr,{then:function(){return Mr.apply(Mr,an(arguments)),this},else:function(){return Yr.apply(Yr,an(arguments)),this},toString:function(){var ci=Ii();return ci&&(ci="else{"+ci+"}"),Di(["if(",si,"){",xi(),"}",ci])}})}var Mi=mi(),Hn={};function Qi(si,Mr){var Yr=[];function xi(){var qn="a"+Yr.length;return Yr.push(qn),qn}Mr=Mr||0;for(var Ii=0;Ii<Mr;++Ii)xi();var ci=Ni(),nn=ci.toString,Xi=Hn[si]=e(ci,{arg:xi,toString:function(){return Di(["function(",Yr.join(),"){",nn(),"}"])}});return Xi}function ji(){var si=['"use strict";',Mi,"return {"];Object.keys(Hn).forEach(function(Ii){si.push('"',Ii,'":',Hn[Ii].toString(),",")}),si.push("}");var Mr=Di(si).replace(/;/g,`;
|
||
`).replace(/}/g,`}
|
||
`).replace(/{/g,`{
|
||
`),Yr;if(xt&&(Yr=Oc(Mr),xt[Yr]))return xt[Yr].apply(null,Hr);var xi=Function.apply(null,Ir.concat(Mr));return xt&&(xt[Yr]=xi),xi.apply(null,Hr)}return{global:Mi,link:Vr,block:mi,proc:Qi,scope:Ni,cond:Oi,compile:ji}}var ka="xyzw".split(""),Ra=5121,La=1,Na=2,Yn=0,zn=1,Ka=2,bo=3,Xo=4,Ms=5,os=6,Ts="dither",Ho="blend.enable",yl="blend.color",Xs="blend.equation",Ps="blend.func",va="depth.enable",no="depth.func",_s="depth.range",is="depth.mask",$l="colorMask",ku="cull.enable",Yu="cull.face",Nc="frontFace",gu="lineWidth",Uc="polygonOffset.enable",xu="polygonOffset.offset",Ac="sample.alpha",Ua="sample.enable",oo="sample.coverage",Vc="stencil.enable",hc="stencil.mask",Ku="stencil.func",ue="stencil.opFront",w="stencil.opBack",B="scissor.enable",Q="scissor.box",ee="viewport",le="profile",qe="framebuffer",Xe="vert",ot="frag",Tt="elements",Kt="primitive",Jt="count",xr="offset",Pr="instances",ve="vao",be="Width",Re="Height",Be=qe+be,tt=qe+Re,We=ee+be,it=ee+Re,Dt="drawingBuffer",Ht=Dt+be,rr=Dt+Re,dr=[Ps,Xs,Ku,ue,w,oo,ee,Q,xu],Sr=34962,Or=34963,jr=2884,ii=3042,Li=3024,un=2960,sn=2929,In=3089,Kn=32823,Aa=32926,fa=32928,$a=5126,ko=35664,Qa=35665,mo=35666,Bo=5124,Is=35667,As=35668,wo=35669,To=35670,dl=35671,Nl=35672,Lu=35673,ou=35674,$s=35675,Ql=35676,dc=35678,Tl=35680,Al=4,X=1028,se=1029,Te=2304,Ne=2305,He=32775,Ye=32776,Ct=519,nt=7680,jt=0,gr=1,yr=32774,Gr=513,qr=36160,_i=36064,bi={0:0,1:1,zero:0,one:1,"src color":768,"one minus src color":769,"src alpha":770,"one minus src alpha":771,"dst color":774,"one minus dst color":775,"dst alpha":772,"one minus dst alpha":773,"constant color":32769,"one minus constant color":32770,"constant alpha":32771,"one minus constant alpha":32772,"src alpha saturate":776},Xr={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},ni={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,"increment wrap":34055,"decrement wrap":34056,invert:5386},gi={cw:Te,ccw:Ne};function Pi(Ee){return Array.isArray(Ee)||Wr(Ee)||Ur(Ee)}function Ai(Ee){return Ee.sort(function(xt,zt){return xt===ee?-1:zt===ee?1:xt<zt?-1:1})}function ti(Ee,xt,zt,Ir){this.thisDep=Ee,this.contextDep=xt,this.propDep=zt,this.append=Ir}function Rn(Ee){return Ee&&!(Ee.thisDep||Ee.contextDep||Ee.propDep)}function Cn(Ee){return new ti(!1,!1,!1,Ee)}function Nn(Ee,xt){var zt=Ee.type;if(zt===Yn){var Ir=Ee.data.length;return new ti(!0,Ir>=1,Ir>=2,xt)}else if(zt===Xo){var Hr=Ee.data;return new ti(Hr.thisDep,Hr.contextDep,Hr.propDep,xt)}else{if(zt===Ms)return new ti(!1,!1,!1,xt);if(zt===os){for(var Br=!1,Vr=!1,mi=!1,Ni=0;Ni<Ee.data.length;++Ni){var Oi=Ee.data[Ni];if(Oi.type===zn)mi=!0;else if(Oi.type===Ka)Vr=!0;else if(Oi.type===bo)Br=!0;else if(Oi.type===Yn){Br=!0;var Mi=Oi.data;Mi>=1&&(Vr=!0),Mi>=2&&(mi=!0)}else Oi.type===Xo&&(Br=Br||Oi.data.thisDep,Vr=Vr||Oi.data.contextDep,mi=mi||Oi.data.propDep)}return new ti(Br,Vr,mi,xt)}else return new ti(zt===bo,zt===Ka,zt===zn,xt)}}var ia=new ti(!1,!1,!1,function(){});function Ea(Ee,xt,zt,Ir,Hr,Br,Vr,mi,Ni,Oi,Mi,Hn,Qi,ji,si,Mr){var Yr=Oi.Record,xi={add:32774,subtract:32778,"reverse subtract":32779};zt.ext_blend_minmax&&(xi.min=He,xi.max=Ye);var Ii=zt.angle_instanced_arrays,ci=zt.webgl_draw_buffers,nn=zt.oes_vertex_array_object,Xi={dirty:!0,profile:Mr.profile},qn={},vi=[],li={},mn={};function Ki(Ve){return Ve.replace(".","_")}function Ui(Ve,et,at){var kt=Ki(Ve);vi.push(Ve),qn[kt]=Xi[kt]=!!at,li[kt]=et}function Bi(Ve,et,at){var kt=Ki(Ve);vi.push(Ve),Array.isArray(at)?(Xi[kt]=at.slice(),qn[kt]=at.slice()):Xi[kt]=qn[kt]=at,mn[kt]=et}function vn(Ve){return!!isNaN(Ve)}Ui(Ts,Li),Ui(Ho,ii),Bi(yl,"blendColor",[0,0,0,0]),Bi(Xs,"blendEquationSeparate",[yr,yr]),Bi(Ps,"blendFuncSeparate",[gr,jt,gr,jt]),Ui(va,sn,!0),Bi(no,"depthFunc",Gr),Bi(_s,"depthRange",[0,1]),Bi(is,"depthMask",!0),Bi($l,$l,[!0,!0,!0,!0]),Ui(ku,jr),Bi(Yu,"cullFace",se),Bi(Nc,Nc,Ne),Bi(gu,gu,1),Ui(Uc,Kn),Bi(xu,"polygonOffset",[0,0]),Ui(Ac,Aa),Ui(Ua,fa),Bi(oo,"sampleCoverage",[1,!1]),Ui(Vc,un),Bi(hc,"stencilMask",-1),Bi(Ku,"stencilFunc",[Ct,0,-1]),Bi(ue,"stencilOpSeparate",[X,nt,nt,nt]),Bi(w,"stencilOpSeparate",[se,nt,nt,nt]),Ui(B,In),Bi(Q,"scissor",[0,0,Ee.drawingBufferWidth,Ee.drawingBufferHeight]),Bi(ee,ee,[0,0,Ee.drawingBufferWidth,Ee.drawingBufferHeight]);var Un={gl:Ee,context:Qi,strings:xt,next:qn,current:Xi,draw:Hn,elements:Br,buffer:Hr,shader:Mi,attributes:Oi.state,vao:Oi,uniforms:Ni,framebuffer:mi,extensions:zt,timer:ji,isBufferArgs:Pi},na={primTypes:Mn,compareFuncs:Xr,blendFuncs:bi,blendEquations:xi,stencilOps:ni,glTypes:Hi,orientationType:gi};ci&&(na.backBuffer=[se],na.drawBuffer=M(Ir.maxDrawbuffers,function(Ve){return Ve===0?[0]:M(Ve,function(et){return _i+et})}));var Yi=0;function Ln(){var Ve=$n({cache:si}),et=Ve.link,at=Ve.global;Ve.id=Yi++,Ve.batchId="0";var kt=et(Un),Ot=Ve.shared={props:"a0"};Object.keys(Un).forEach(function(Pt){Ot[Pt]=at.def(kt,".",Pt)});var It=Ve.next={},Bt=Ve.current={};Object.keys(mn).forEach(function(Pt){Array.isArray(Xi[Pt])&&(It[Pt]=at.def(Ot.next,".",Pt),Bt[Pt]=at.def(Ot.current,".",Pt))});var Rt=Ve.constants={};Object.keys(na).forEach(function(Pt){Rt[Pt]=at.def(JSON.stringify(na[Pt]))}),Ve.invoke=function(Pt,ht){switch(ht.type){case Yn:var cr=["this",Ot.context,Ot.props,Ve.batchId];return Pt.def(et(ht.data),".call(",cr.slice(0,Math.max(ht.data.length+1,4)),")");case zn:return Pt.def(Ot.props,ht.data);case Ka:return Pt.def(Ot.context,ht.data);case bo:return Pt.def("this",ht.data);case Xo:return ht.data.append(Ve,Pt),ht.data.ref;case Ms:return ht.data.toString();case os:return ht.data.map(function(br){return Ve.invoke(Pt,br)})}},Ve.attribCache={};var mt={};return Ve.scopeAttrib=function(Pt){var ht=xt.id(Pt);if(ht in mt)return mt[ht];var cr=Oi.scope[ht];cr||(cr=Oi.scope[ht]=new Yr);var br=mt[ht]=et(cr);return br},Ve}function ra(Ve){var et=Ve.static,at=Ve.dynamic,kt;if(le in et){var Ot=!!et[le];kt=Cn(function(Bt,Rt){return Ot}),kt.enable=Ot}else if(le in at){var It=at[le];kt=Nn(It,function(Bt,Rt){return Bt.invoke(Rt,It)})}return kt}function oa(Ve,et){var at=Ve.static,kt=Ve.dynamic;if(qe in at){var Ot=at[qe];return Ot?(Ot=mi.getFramebuffer(Ot),Cn(function(Bt,Rt){var mt=Bt.link(Ot),Pt=Bt.shared;Rt.set(Pt.framebuffer,".next",mt);var ht=Pt.context;return Rt.set(ht,"."+Be,mt+".width"),Rt.set(ht,"."+tt,mt+".height"),mt})):Cn(function(Bt,Rt){var mt=Bt.shared;Rt.set(mt.framebuffer,".next","null");var Pt=mt.context;return Rt.set(Pt,"."+Be,Pt+"."+Ht),Rt.set(Pt,"."+tt,Pt+"."+rr),"null"})}else if(qe in kt){var It=kt[qe];return Nn(It,function(Bt,Rt){var mt=Bt.invoke(Rt,It),Pt=Bt.shared,ht=Pt.framebuffer,cr=Rt.def(ht,".getFramebuffer(",mt,")");Rt.set(ht,".next",cr);var br=Pt.context;return Rt.set(br,"."+Be,cr+"?"+cr+".width:"+br+"."+Ht),Rt.set(br,"."+tt,cr+"?"+cr+".height:"+br+"."+rr),cr})}else return null}function wa(Ve,et,at){var kt=Ve.static,Ot=Ve.dynamic;function It(mt){if(mt in kt){var Pt=kt[mt],ht=!0,cr=Pt.x|0,br=Pt.y|0,Nr,Ri;return"width"in Pt?Nr=Pt.width|0:ht=!1,"height"in Pt?Ri=Pt.height|0:ht=!1,new ti(!ht&&et&&et.thisDep,!ht&&et&&et.contextDep,!ht&&et&&et.propDep,function(gn,tn){var Ci=gn.shared.context,qi=Nr;"width"in Pt||(qi=tn.def(Ci,".",Be,"-",cr));var Vi=Ri;return"height"in Pt||(Vi=tn.def(Ci,".",tt,"-",br)),[cr,br,qi,Vi]})}else if(mt in Ot){var hi=Ot[mt],wi=Nn(hi,function(gn,tn){var Ci=gn.invoke(tn,hi),qi=gn.shared.context,Vi=tn.def(Ci,".x|0"),on=tn.def(Ci,".y|0"),On=tn.def('"width" in ',Ci,"?",Ci,".width|0:","(",qi,".",Be,"-",Vi,")"),Ja=tn.def('"height" in ',Ci,"?",Ci,".height|0:","(",qi,".",tt,"-",on,")");return[Vi,on,On,Ja]});return et&&(wi.thisDep=wi.thisDep||et.thisDep,wi.contextDep=wi.contextDep||et.contextDep,wi.propDep=wi.propDep||et.propDep),wi}else return et?new ti(et.thisDep,et.contextDep,et.propDep,function(gn,tn){var Ci=gn.shared.context;return[0,0,tn.def(Ci,".",Be),tn.def(Ci,".",tt)]}):null}var Bt=It(ee);if(Bt){var Rt=Bt;Bt=new ti(Bt.thisDep,Bt.contextDep,Bt.propDep,function(mt,Pt){var ht=Rt.append(mt,Pt),cr=mt.shared.context;return Pt.set(cr,"."+We,ht[2]),Pt.set(cr,"."+it,ht[3]),ht})}return{viewport:Bt,scissor_box:It(Q)}}function ns(Ve,et){var at=Ve.static,kt=typeof at[ot]=="string"&&typeof at[Xe]=="string";if(kt){if(Object.keys(et.dynamic).length>0)return null;var Ot=et.static,It=Object.keys(Ot);if(It.length>0&&typeof Ot[It[0]]=="number"){for(var Bt=[],Rt=0;Rt<It.length;++Rt)Bt.push([Ot[It[Rt]]|0,It[Rt]]);return Bt}}return null}function Ys(Ve,et,at){var kt=Ve.static,Ot=Ve.dynamic;function It(ht){if(ht in kt){var cr=xt.id(kt[ht]),br=Cn(function(){return cr});return br.id=cr,br}else if(ht in Ot){var Nr=Ot[ht];return Nn(Nr,function(Ri,hi){var wi=Ri.invoke(hi,Nr),gn=hi.def(Ri.shared.strings,".id(",wi,")");return gn})}return null}var Bt=It(ot),Rt=It(Xe),mt=null,Pt;return Rn(Bt)&&Rn(Rt)?(mt=Mi.program(Rt.id,Bt.id,null,at),Pt=Cn(function(ht,cr){return ht.link(mt)})):Pt=new ti(Bt&&Bt.thisDep||Rt&&Rt.thisDep,Bt&&Bt.contextDep||Rt&&Rt.contextDep,Bt&&Bt.propDep||Rt&&Rt.propDep,function(ht,cr){var br=ht.shared.shader,Nr;Bt?Nr=Bt.append(ht,cr):Nr=cr.def(br,".",ot);var Ri;Rt?Ri=Rt.append(ht,cr):Ri=cr.def(br,".",Xe);var hi=br+".program("+Ri+","+Nr;return cr.def(hi+")")}),{frag:Bt,vert:Rt,progVar:Pt,program:mt}}function Va(Ve,et){var at=Ve.static,kt=Ve.dynamic,Ot={},It=!1;function Bt(){if(ve in at){var tn=at[ve];return tn!==null&&Oi.getVAO(tn)===null&&(tn=Oi.createVAO(tn)),It=!0,Ot.vao=tn,Cn(function(qi){var Vi=Oi.getVAO(tn);return Vi?qi.link(Vi):"null"})}else if(ve in kt){It=!0;var Ci=kt[ve];return Nn(Ci,function(qi,Vi){var on=qi.invoke(Vi,Ci);return Vi.def(qi.shared.vao+".getVAO("+on+")")})}return null}var Rt=Bt(),mt=!1;function Pt(){if(Tt in at){var tn=at[Tt];if(Ot.elements=tn,Pi(tn)){var Ci=Ot.elements=Br.create(tn,!0);tn=Br.getElements(Ci),mt=!0}else tn&&(tn=Br.getElements(tn),mt=!0);var qi=Cn(function(on,On){if(tn){var Ja=on.link(tn);return on.ELEMENTS=Ja,Ja}return on.ELEMENTS=null,null});return qi.value=tn,qi}else if(Tt in kt){mt=!0;var Vi=kt[Tt];return Nn(Vi,function(on,On){var Ja=on.shared,co=Ja.isBufferArgs,rs=Ja.elements,so=on.invoke(On,Vi),Zo=On.def("null"),ys=On.def(co,"(",so,")"),su=on.cond(ys).then(Zo,"=",rs,".createStream(",so,");").else(Zo,"=",rs,".getElements(",so,");");return On.entry(su),On.exit(on.cond(ys).then(rs,".destroyStream(",Zo,");")),on.ELEMENTS=Zo,Zo})}else if(It)return new ti(Rt.thisDep,Rt.contextDep,Rt.propDep,function(on,On){return On.def(on.shared.vao+".currentVAO?"+on.shared.elements+".getElements("+on.shared.vao+".currentVAO.elements):null")});return null}var ht=Pt();function cr(){if(Kt in at){var tn=at[Kt];return Ot.primitive=tn,Cn(function(qi,Vi){return Mn[tn]})}else if(Kt in kt){var Ci=kt[Kt];return Nn(Ci,function(qi,Vi){var on=qi.constants.primTypes,On=qi.invoke(Vi,Ci);return Vi.def(on,"[",On,"]")})}else{if(mt)return Rn(ht)?ht.value?Cn(function(qi,Vi){return Vi.def(qi.ELEMENTS,".primType")}):Cn(function(){return Al}):new ti(ht.thisDep,ht.contextDep,ht.propDep,function(qi,Vi){var on=qi.ELEMENTS;return Vi.def(on,"?",on,".primType:",Al)});if(It)return new ti(Rt.thisDep,Rt.contextDep,Rt.propDep,function(qi,Vi){return Vi.def(qi.shared.vao+".currentVAO?"+qi.shared.vao+".currentVAO.primitive:"+Al)})}return null}function br(tn,Ci){if(tn in at){var qi=at[tn]|0;return Ci?Ot.offset=qi:Ot.instances=qi,Cn(function(on,On){return Ci&&(on.OFFSET=qi),qi})}else if(tn in kt){var Vi=kt[tn];return Nn(Vi,function(on,On){var Ja=on.invoke(On,Vi);return Ci&&(on.OFFSET=Ja),Ja})}else if(Ci){if(mt)return Cn(function(on,On){return on.OFFSET=0,0});if(It)return new ti(Rt.thisDep,Rt.contextDep,Rt.propDep,function(on,On){return On.def(on.shared.vao+".currentVAO?"+on.shared.vao+".currentVAO.offset:0")})}else if(It)return new ti(Rt.thisDep,Rt.contextDep,Rt.propDep,function(on,On){return On.def(on.shared.vao+".currentVAO?"+on.shared.vao+".currentVAO.instances:-1")});return null}var Nr=br(xr,!0);function Ri(){if(Jt in at){var tn=at[Jt]|0;return Ot.count=tn,Cn(function(){return tn})}else if(Jt in kt){var Ci=kt[Jt];return Nn(Ci,function(On,Ja){var co=On.invoke(Ja,Ci);return co})}else if(mt)if(Rn(ht)){if(ht)return Nr?new ti(Nr.thisDep,Nr.contextDep,Nr.propDep,function(On,Ja){var co=Ja.def(On.ELEMENTS,".vertCount-",On.OFFSET);return co}):Cn(function(On,Ja){return Ja.def(On.ELEMENTS,".vertCount")});var qi=Cn(function(){return-1});return qi}else{var Vi=new ti(ht.thisDep||Nr.thisDep,ht.contextDep||Nr.contextDep,ht.propDep||Nr.propDep,function(On,Ja){var co=On.ELEMENTS;return On.OFFSET?Ja.def(co,"?",co,".vertCount-",On.OFFSET,":-1"):Ja.def(co,"?",co,".vertCount:-1")});return Vi}else if(It){var on=new ti(Rt.thisDep,Rt.contextDep,Rt.propDep,function(On,Ja){return Ja.def(On.shared.vao,".currentVAO?",On.shared.vao,".currentVAO.count:-1")});return on}return null}var hi=cr(),wi=Ri(),gn=br(Pr,!1);return{elements:ht,primitive:hi,count:wi,instances:gn,offset:Nr,vao:Rt,vaoActive:It,elementsActive:mt,static:Ot}}function Ml(Ve,et){var at=Ve.static,kt=Ve.dynamic,Ot={};return vi.forEach(function(It){var Bt=Ki(It);function Rt(mt,Pt){if(It in at){var ht=mt(at[It]);Ot[Bt]=Cn(function(){return ht})}else if(It in kt){var cr=kt[It];Ot[Bt]=Nn(cr,function(br,Nr){return Pt(br,Nr,br.invoke(Nr,cr))})}}switch(It){case ku:case Ho:case Ts:case Vc:case va:case B:case Uc:case Ac:case Ua:case is:return Rt(function(mt){return mt},function(mt,Pt,ht){return ht});case no:return Rt(function(mt){return Xr[mt]},function(mt,Pt,ht){var cr=mt.constants.compareFuncs;return Pt.def(cr,"[",ht,"]")});case _s:return Rt(function(mt){return mt},function(mt,Pt,ht){var cr=Pt.def("+",ht,"[0]"),br=Pt.def("+",ht,"[1]");return[cr,br]});case Ps:return Rt(function(mt){var Pt="srcRGB"in mt?mt.srcRGB:mt.src,ht="srcAlpha"in mt?mt.srcAlpha:mt.src,cr="dstRGB"in mt?mt.dstRGB:mt.dst,br="dstAlpha"in mt?mt.dstAlpha:mt.dst;return[bi[Pt],bi[cr],bi[ht],bi[br]]},function(mt,Pt,ht){var cr=mt.constants.blendFuncs;function br(Ci,qi){var Vi=Pt.def('"',Ci,qi,'" in ',ht,"?",ht,".",Ci,qi,":",ht,".",Ci);return Vi}var Nr=br("src","RGB"),Ri=br("dst","RGB"),hi=Pt.def(cr,"[",Nr,"]"),wi=Pt.def(cr,"[",br("src","Alpha"),"]"),gn=Pt.def(cr,"[",Ri,"]"),tn=Pt.def(cr,"[",br("dst","Alpha"),"]");return[hi,gn,wi,tn]});case Xs:return Rt(function(mt){if(typeof mt=="string")return[xi[mt],xi[mt]];if(typeof mt=="object")return[xi[mt.rgb],xi[mt.alpha]]},function(mt,Pt,ht){var cr=mt.constants.blendEquations,br=Pt.def(),Nr=Pt.def(),Ri=mt.cond("typeof ",ht,'==="string"');return Ri.then(br,"=",Nr,"=",cr,"[",ht,"];"),Ri.else(br,"=",cr,"[",ht,".rgb];",Nr,"=",cr,"[",ht,".alpha];"),Pt(Ri),[br,Nr]});case yl:return Rt(function(mt){return M(4,function(Pt){return+mt[Pt]})},function(mt,Pt,ht){return M(4,function(cr){return Pt.def("+",ht,"[",cr,"]")})});case hc:return Rt(function(mt){return mt|0},function(mt,Pt,ht){return Pt.def(ht,"|0")});case Ku:return Rt(function(mt){var Pt=mt.cmp||"keep",ht=mt.ref||0,cr="mask"in mt?mt.mask:-1;return[Xr[Pt],ht,cr]},function(mt,Pt,ht){var cr=mt.constants.compareFuncs,br=Pt.def('"cmp" in ',ht,"?",cr,"[",ht,".cmp]",":",nt),Nr=Pt.def(ht,".ref|0"),Ri=Pt.def('"mask" in ',ht,"?",ht,".mask|0:-1");return[br,Nr,Ri]});case ue:case w:return Rt(function(mt){var Pt=mt.fail||"keep",ht=mt.zfail||"keep",cr=mt.zpass||"keep";return[It===w?se:X,ni[Pt],ni[ht],ni[cr]]},function(mt,Pt,ht){var cr=mt.constants.stencilOps;function br(Nr){return Pt.def('"',Nr,'" in ',ht,"?",cr,"[",ht,".",Nr,"]:",nt)}return[It===w?se:X,br("fail"),br("zfail"),br("zpass")]});case xu:return Rt(function(mt){var Pt=mt.factor|0,ht=mt.units|0;return[Pt,ht]},function(mt,Pt,ht){var cr=Pt.def(ht,".factor|0"),br=Pt.def(ht,".units|0");return[cr,br]});case Yu:return Rt(function(mt){var Pt=0;return mt==="front"?Pt=X:mt==="back"&&(Pt=se),Pt},function(mt,Pt,ht){return Pt.def(ht,'==="front"?',X,":",se)});case gu:return Rt(function(mt){return mt},function(mt,Pt,ht){return ht});case Nc:return Rt(function(mt){return gi[mt]},function(mt,Pt,ht){return Pt.def(ht+'==="cw"?'+Te+":"+Ne)});case $l:return Rt(function(mt){return mt.map(function(Pt){return!!Pt})},function(mt,Pt,ht){return M(4,function(cr){return"!!"+ht+"["+cr+"]"})});case oo:return Rt(function(mt){var Pt="value"in mt?mt.value:1,ht=!!mt.invert;return[Pt,ht]},function(mt,Pt,ht){var cr=Pt.def('"value" in ',ht,"?+",ht,".value:1"),br=Pt.def("!!",ht,".invert");return[cr,br]})}}),Ot}function zo(Ve,et){var at=Ve.static,kt=Ve.dynamic,Ot={};return Object.keys(at).forEach(function(It){var Bt=at[It],Rt;if(typeof Bt=="number"||typeof Bt=="boolean")Rt=Cn(function(){return Bt});else if(typeof Bt=="function"){var mt=Bt._reglType;mt==="texture2d"||mt==="textureCube"?Rt=Cn(function(Pt){return Pt.link(Bt)}):(mt==="framebuffer"||mt==="framebufferCube")&&(Rt=Cn(function(Pt){return Pt.link(Bt.color[0])}))}else En(Bt)&&(Rt=Cn(function(Pt){var ht=Pt.global.def("[",M(Bt.length,function(cr){return Bt[cr]}),"]");return ht}));Rt.value=Bt,Ot[It]=Rt}),Object.keys(kt).forEach(function(It){var Bt=kt[It];Ot[It]=Nn(Bt,function(Rt,mt){return Rt.invoke(mt,Bt)})}),Ot}function el(Ve,et){var at=Ve.static,kt=Ve.dynamic,Ot={};return Object.keys(at).forEach(function(It){var Bt=at[It],Rt=xt.id(It),mt=new Yr;if(Pi(Bt))mt.state=La,mt.buffer=Hr.getBuffer(Hr.create(Bt,Sr,!1,!0)),mt.type=0;else{var Pt=Hr.getBuffer(Bt);if(Pt)mt.state=La,mt.buffer=Pt,mt.type=0;else if("constant"in Bt){var ht=Bt.constant;mt.buffer="null",mt.state=Na,typeof ht=="number"?mt.x=ht:ka.forEach(function(gn,tn){tn<ht.length&&(mt[gn]=ht[tn])})}else{Pi(Bt.buffer)?Pt=Hr.getBuffer(Hr.create(Bt.buffer,Sr,!1,!0)):Pt=Hr.getBuffer(Bt.buffer);var cr=Bt.offset|0,br=Bt.stride|0,Nr=Bt.size|0,Ri=!!Bt.normalized,hi=0;"type"in Bt&&(hi=Hi[Bt.type]);var wi=Bt.divisor|0;mt.buffer=Pt,mt.state=La,mt.size=Nr,mt.normalized=Ri,mt.type=hi||Pt.dtype,mt.offset=cr,mt.stride=br,mt.divisor=wi}}Ot[It]=Cn(function(gn,tn){var Ci=gn.attribCache;if(Rt in Ci)return Ci[Rt];var qi={isStream:!1};return Object.keys(mt).forEach(function(Vi){qi[Vi]=mt[Vi]}),mt.buffer&&(qi.buffer=gn.link(mt.buffer),qi.type=qi.type||qi.buffer+".dtype"),Ci[Rt]=qi,qi})}),Object.keys(kt).forEach(function(It){var Bt=kt[It];function Rt(mt,Pt){var ht=mt.invoke(Pt,Bt),cr=mt.shared,br=mt.constants,Nr=cr.isBufferArgs,Ri=cr.buffer,hi={isStream:Pt.def(!1)},wi=new Yr;wi.state=La,Object.keys(wi).forEach(function(qi){hi[qi]=Pt.def(""+wi[qi])});var gn=hi.buffer,tn=hi.type;Pt("if(",Nr,"(",ht,")){",hi.isStream,"=true;",gn,"=",Ri,".createStream(",Sr,",",ht,");",tn,"=",gn,".dtype;","}else{",gn,"=",Ri,".getBuffer(",ht,");","if(",gn,"){",tn,"=",gn,".dtype;",'}else if("constant" in ',ht,"){",hi.state,"=",Na,";","if(typeof "+ht+'.constant === "number"){',hi[ka[0]],"=",ht,".constant;",ka.slice(1).map(function(qi){return hi[qi]}).join("="),"=0;","}else{",ka.map(function(qi,Vi){return hi[qi]+"="+ht+".constant.length>"+Vi+"?"+ht+".constant["+Vi+"]:0;"}).join(""),"}}else{","if(",Nr,"(",ht,".buffer)){",gn,"=",Ri,".createStream(",Sr,",",ht,".buffer);","}else{",gn,"=",Ri,".getBuffer(",ht,".buffer);","}",tn,'="type" in ',ht,"?",br.glTypes,"[",ht,".type]:",gn,".dtype;",hi.normalized,"=!!",ht,".normalized;");function Ci(qi){Pt(hi[qi],"=",ht,".",qi,"|0;")}return Ci("size"),Ci("offset"),Ci("stride"),Ci("divisor"),Pt("}}"),Pt.exit("if(",hi.isStream,"){",Ri,".destroyStream(",gn,");","}"),hi}Ot[It]=Nn(Bt,Rt)}),Ot}function ol(Ve){var et=Ve.static,at=Ve.dynamic,kt={};return Object.keys(et).forEach(function(Ot){var It=et[Ot];kt[Ot]=Cn(function(Bt,Rt){return typeof It=="number"||typeof It=="boolean"?""+It:Bt.link(It)})}),Object.keys(at).forEach(function(Ot){var It=at[Ot];kt[Ot]=Nn(It,function(Bt,Rt){return Bt.invoke(Rt,It)})}),kt}function Ul(Ve,et,at,kt,Ot){var It=Ve.static,Bt=Ve.dynamic,Rt=ns(Ve,et),mt=oa(Ve,Ot),Pt=wa(Ve,mt,Ot),ht=Va(Ve,Ot),cr=Ml(Ve,Ot),br=Ys(Ve,Ot,Rt);function Nr(Ci){var qi=Pt[Ci];qi&&(cr[Ci]=qi)}Nr(ee),Nr(Ki(Q));var Ri=Object.keys(cr).length>0,hi={framebuffer:mt,draw:ht,shader:br,state:cr,dirty:Ri,scopeVAO:null,drawVAO:null,useVAO:!1,attributes:{}};if(hi.profile=ra(Ve,Ot),hi.uniforms=zo(at,Ot),hi.drawVAO=hi.scopeVAO=ht.vao,!hi.drawVAO&&br.program&&!Rt&&zt.angle_instanced_arrays&&ht.static.elements){var wi=!0,gn=br.program.attributes.map(function(Ci){var qi=et.static[Ci];return wi=wi&&!!qi,qi});if(wi&&gn.length>0){var tn=Oi.getVAO(Oi.createVAO({attributes:gn,elements:ht.static.elements}));hi.drawVAO=new ti(null,null,null,function(Ci,qi){return Ci.link(tn)}),hi.useVAO=!0}}return Rt?hi.useVAO=!0:hi.attributes=el(et,Ot),hi.context=ol(kt,Ot),hi}function ls(Ve,et,at){var kt=Ve.shared,Ot=kt.context,It=Ve.scope();Object.keys(at).forEach(function(Bt){et.save(Ot,"."+Bt);var Rt=at[Bt],mt=Rt.append(Ve,et);Array.isArray(mt)?It(Ot,".",Bt,"=[",mt.join(),"];"):It(Ot,".",Bt,"=",mt,";")}),et(It)}function Gs(Ve,et,at,kt){var Ot=Ve.shared,It=Ot.gl,Bt=Ot.framebuffer,Rt;ci&&(Rt=et.def(Ot.extensions,".webgl_draw_buffers"));var mt=Ve.constants,Pt=mt.drawBuffer,ht=mt.backBuffer,cr;at?cr=at.append(Ve,et):cr=et.def(Bt,".next"),kt||et("if(",cr,"!==",Bt,".cur){"),et("if(",cr,"){",It,".bindFramebuffer(",qr,",",cr,".framebuffer);"),ci&&et(Rt,".drawBuffersWEBGL(",Pt,"[",cr,".colorAttachments.length]);"),et("}else{",It,".bindFramebuffer(",qr,",null);"),ci&&et(Rt,".drawBuffersWEBGL(",ht,");"),et("}",Bt,".cur=",cr,";"),kt||et("}")}function Ks(Ve,et,at){var kt=Ve.shared,Ot=kt.gl,It=Ve.current,Bt=Ve.next,Rt=kt.current,mt=kt.next,Pt=Ve.cond(Rt,".dirty");vi.forEach(function(ht){var cr=Ki(ht);if(!(cr in at.state)){var br,Nr;if(cr in Bt){br=Bt[cr],Nr=It[cr];var Ri=M(Xi[cr].length,function(wi){return Pt.def(br,"[",wi,"]")});Pt(Ve.cond(Ri.map(function(wi,gn){return wi+"!=="+Nr+"["+gn+"]"}).join("||")).then(Ot,".",mn[cr],"(",Ri,");",Ri.map(function(wi,gn){return Nr+"["+gn+"]="+wi}).join(";"),";"))}else{br=Pt.def(mt,".",cr);var hi=Ve.cond(br,"!==",Rt,".",cr);Pt(hi),cr in li?hi(Ve.cond(br).then(Ot,".enable(",li[cr],");").else(Ot,".disable(",li[cr],");"),Rt,".",cr,"=",br,";"):hi(Ot,".",mn[cr],"(",br,");",Rt,".",cr,"=",br,";")}}}),Object.keys(at.state).length===0&&Pt(Rt,".dirty=false;"),et(Pt)}function Ta(Ve,et,at,kt){var Ot=Ve.shared,It=Ve.current,Bt=Ot.current,Rt=Ot.gl,mt;Ai(Object.keys(at)).forEach(function(Pt){var ht=at[Pt];if(!(kt&&!kt(ht))){var cr=ht.append(Ve,et);if(li[Pt]){var br=li[Pt];Rn(ht)?(mt=Ve.link(cr,{stable:!0}),et(Ve.cond(mt).then(Rt,".enable(",br,");").else(Rt,".disable(",br,");")),et(Bt,".",Pt,"=",mt,";")):(et(Ve.cond(cr).then(Rt,".enable(",br,");").else(Rt,".disable(",br,");")),et(Bt,".",Pt,"=",cr,";"))}else if(En(cr)){var Nr=It[Pt];et(Rt,".",mn[Pt],"(",cr,");",cr.map(function(Ri,hi){return Nr+"["+hi+"]="+Ri}).join(";"),";")}else Rn(ht)?(mt=Ve.link(cr,{stable:!0}),et(Rt,".",mn[Pt],"(",mt,");",Bt,".",Pt,"=",mt,";")):et(Rt,".",mn[Pt],"(",cr,");",Bt,".",Pt,"=",cr,";")}})}function sl(Ve,et){Ii&&(Ve.instancing=et.def(Ve.shared.extensions,".angle_instanced_arrays"))}function io(Ve,et,at,kt,Ot){var It=Ve.shared,Bt=Ve.stats,Rt=It.current,mt=It.timer,Pt=at.profile;function ht(){return typeof performance=="undefined"?"Date.now()":"performance.now()"}var cr,br;function Nr(Ci){cr=et.def(),Ci(cr,"=",ht(),";"),typeof Ot=="string"?Ci(Bt,".count+=",Ot,";"):Ci(Bt,".count++;"),ji&&(kt?(br=et.def(),Ci(br,"=",mt,".getNumPendingQueries();")):Ci(mt,".beginQuery(",Bt,");"))}function Ri(Ci){Ci(Bt,".cpuTime+=",ht(),"-",cr,";"),ji&&(kt?Ci(mt,".pushScopeStats(",br,",",mt,".getNumPendingQueries(),",Bt,");"):Ci(mt,".endQuery();"))}function hi(Ci){var qi=et.def(Rt,".profile");et(Rt,".profile=",Ci,";"),et.exit(Rt,".profile=",qi,";")}var wi;if(Pt){if(Rn(Pt)){Pt.enable?(Nr(et),Ri(et.exit),hi("true")):hi("false");return}wi=Pt.append(Ve,et),hi(wi)}else wi=et.def(Rt,".profile");var gn=Ve.block();Nr(gn),et("if(",wi,"){",gn,"}");var tn=Ve.block();Ri(tn),et.exit("if(",wi,"){",tn,"}")}function Y(Ve,et,at,kt,Ot){var It=Ve.shared;function Bt(mt){switch(mt){case ko:case Is:case dl:return 2;case Qa:case As:case Nl:return 3;case mo:case wo:case Lu:return 4;default:return 1}}function Rt(mt,Pt,ht){var cr=It.gl,br=et.def(mt,".location"),Nr=et.def(It.attributes,"[",br,"]"),Ri=ht.state,hi=ht.buffer,wi=[ht.x,ht.y,ht.z,ht.w],gn=["buffer","normalized","offset","stride"];function tn(){et("if(!",Nr,".buffer){",cr,".enableVertexAttribArray(",br,");}");var qi=ht.type,Vi;if(ht.size?Vi=et.def(ht.size,"||",Pt):Vi=Pt,et("if(",Nr,".type!==",qi,"||",Nr,".size!==",Vi,"||",gn.map(function(On){return Nr+"."+On+"!=="+ht[On]}).join("||"),"){",cr,".bindBuffer(",Sr,",",hi,".buffer);",cr,".vertexAttribPointer(",[br,Vi,qi,ht.normalized,ht.stride,ht.offset],");",Nr,".type=",qi,";",Nr,".size=",Vi,";",gn.map(function(On){return Nr+"."+On+"="+ht[On]+";"}).join(""),"}"),Ii){var on=ht.divisor;et("if(",Nr,".divisor!==",on,"){",Ve.instancing,".vertexAttribDivisorANGLE(",[br,on],");",Nr,".divisor=",on,";}")}}function Ci(){et("if(",Nr,".buffer){",cr,".disableVertexAttribArray(",br,");",Nr,".buffer=null;","}if(",ka.map(function(qi,Vi){return Nr+"."+qi+"!=="+wi[Vi]}).join("||"),"){",cr,".vertexAttrib4f(",br,",",wi,");",ka.map(function(qi,Vi){return Nr+"."+qi+"="+wi[Vi]+";"}).join(""),"}")}Ri===La?tn():Ri===Na?Ci():(et("if(",Ri,"===",La,"){"),tn(),et("}else{"),Ci(),et("}"))}kt.forEach(function(mt){var Pt=mt.name,ht=at.attributes[Pt],cr;if(ht){if(!Ot(ht))return;cr=ht.append(Ve,et)}else{if(!Ot(ia))return;var br=Ve.scopeAttrib(Pt);cr={},Object.keys(new Yr).forEach(function(Nr){cr[Nr]=et.def(br,".",Nr)})}Rt(Ve.link(mt),Bt(mt.info.type),cr)})}function D(Ve,et,at,kt,Ot,It){for(var Bt=Ve.shared,Rt=Bt.gl,mt,Pt=0;Pt<kt.length;++Pt){var ht=kt[Pt],cr=ht.name,br=ht.info.type,Nr=at.uniforms[cr],Ri=Ve.link(ht),hi=Ri+".location",wi;if(Nr){if(!Ot(Nr))continue;if(Rn(Nr)){var gn=Nr.value;if(br===dc||br===Tl){var tn=Ve.link(gn._texture||gn.color[0]._texture);et(Rt,".uniform1i(",hi,",",tn+".bind());"),et.exit(tn,".unbind();")}else if(br===ou||br===$s||br===Ql){var Ci=Ve.global.def("new Float32Array(["+Array.prototype.slice.call(gn)+"])"),qi=2;br===$s?qi=3:br===Ql&&(qi=4),et(Rt,".uniformMatrix",qi,"fv(",hi,",false,",Ci,");")}else{switch(br){case $a:mt="1f";break;case ko:mt="2f";break;case Qa:mt="3f";break;case mo:mt="4f";break;case To:mt="1i";break;case Bo:mt="1i";break;case dl:mt="2i";break;case Is:mt="2i";break;case Nl:mt="3i";break;case As:mt="3i";break;case Lu:mt="4i";break;case wo:mt="4i";break}et(Rt,".uniform",mt,"(",hi,",",En(gn)?Array.prototype.slice.call(gn):gn,");")}continue}else wi=Nr.append(Ve,et)}else{if(!Ot(ia))continue;wi=et.def(Bt.uniforms,"[",xt.id(cr),"]")}br===dc?et("if(",wi,"&&",wi,'._reglType==="framebuffer"){',wi,"=",wi,".color[0];","}"):br===Tl&&et("if(",wi,"&&",wi,'._reglType==="framebufferCube"){',wi,"=",wi,".color[0];","}");var Vi=1;switch(br){case dc:case Tl:var on=et.def(wi,"._texture");et(Rt,".uniform1i(",hi,",",on,".bind());"),et.exit(on,".unbind();");continue;case Bo:case To:mt="1i";break;case Is:case dl:mt="2i",Vi=2;break;case As:case Nl:mt="3i",Vi=3;break;case wo:case Lu:mt="4i",Vi=4;break;case $a:mt="1f";break;case ko:mt="2f",Vi=2;break;case Qa:mt="3f",Vi=3;break;case mo:mt="4f",Vi=4;break;case ou:mt="Matrix2fv";break;case $s:mt="Matrix3fv";break;case Ql:mt="Matrix4fv";break}if(mt.charAt(0)==="M"){et(Rt,".uniform",mt,"(",hi,",");var On=Math.pow(br-ou+2,2),Ja=Ve.global.def("new Float32Array(",On,")");Array.isArray(wi)?et("false,(",M(On,function(ys){return Ja+"["+ys+"]="+wi[ys]}),",",Ja,")"):et("false,(Array.isArray(",wi,")||",wi," instanceof Float32Array)?",wi,":(",M(On,function(ys){return Ja+"["+ys+"]="+wi+"["+ys+"]"}),",",Ja,")"),et(");")}else if(Vi>1){for(var co=[],rs=[],so=0;so<Vi;++so)Array.isArray(wi)?rs.push(wi[so]):rs.push(et.def(wi+"["+so+"]")),It&&co.push(et.def());It&&et("if(!",Ve.batchId,"||",co.map(function(ys,su){return ys+"!=="+rs[su]}).join("||"),"){",co.map(function(ys,su){return ys+"="+rs[su]+";"}).join("")),et(Rt,".uniform",mt,"(",hi,",",rs.join(","),");"),It&&et("}")}else{if(It){var Zo=et.def();et("if(!",Ve.batchId,"||",Zo,"!==",wi,"){",Zo,"=",wi,";")}et(Rt,".uniform",mt,"(",hi,",",wi,");"),It&&et("}")}}}function J(Ve,et,at,kt){var Ot=Ve.shared,It=Ot.gl,Bt=Ot.draw,Rt=kt.draw;function mt(){var Vi=Rt.elements,on,On=et;return Vi?((Vi.contextDep&&kt.contextDynamic||Vi.propDep)&&(On=at),on=Vi.append(Ve,On),Rt.elementsActive&&On("if("+on+")"+It+".bindBuffer("+Or+","+on+".buffer.buffer);")):(on=On.def(),On(on,"=",Bt,".",Tt,";","if(",on,"){",It,".bindBuffer(",Or,",",on,".buffer.buffer);}","else if(",Ot.vao,".currentVAO){",on,"=",Ve.shared.elements+".getElements("+Ot.vao,".currentVAO.elements);",nn?"":"if("+on+")"+It+".bindBuffer("+Or+","+on+".buffer.buffer);","}")),on}function Pt(){var Vi=Rt.count,on,On=et;return Vi?((Vi.contextDep&&kt.contextDynamic||Vi.propDep)&&(On=at),on=Vi.append(Ve,On)):on=On.def(Bt,".",Jt),on}var ht=mt();function cr(Vi){var on=Rt[Vi];return on?on.contextDep&&kt.contextDynamic||on.propDep?on.append(Ve,at):on.append(Ve,et):et.def(Bt,".",Vi)}var br=cr(Kt),Nr=cr(xr),Ri=Pt();if(typeof Ri=="number"){if(Ri===0)return}else at("if(",Ri,"){"),at.exit("}");var hi,wi;Ii&&(hi=cr(Pr),wi=Ve.instancing);var gn=ht+".type",tn=Rt.elements&&Rn(Rt.elements)&&!Rt.vaoActive;function Ci(){function Vi(){at(wi,".drawElementsInstancedANGLE(",[br,Ri,gn,Nr+"<<(("+gn+"-"+Ra+")>>1)",hi],");")}function on(){at(wi,".drawArraysInstancedANGLE(",[br,Nr,Ri,hi],");")}ht&&ht!=="null"?tn?Vi():(at("if(",ht,"){"),Vi(),at("}else{"),on(),at("}")):on()}function qi(){function Vi(){at(It+".drawElements("+[br,Ri,gn,Nr+"<<(("+gn+"-"+Ra+")>>1)"]+");")}function on(){at(It+".drawArrays("+[br,Nr,Ri]+");")}ht&&ht!=="null"?tn?Vi():(at("if(",ht,"){"),Vi(),at("}else{"),on(),at("}")):on()}Ii&&(typeof hi!="number"||hi>=0)?typeof hi=="string"?(at("if(",hi,">0){"),Ci(),at("}else if(",hi,"<0){"),qi(),at("}")):Ci():qi()}function q(Ve,et,at,kt,Ot){var It=Ln(),Bt=It.proc("body",Ot);return Ii&&(It.instancing=Bt.def(It.shared.extensions,".angle_instanced_arrays")),Ve(It,Bt,at,kt),It.compile().body}function K(Ve,et,at,kt){sl(Ve,et),at.useVAO?at.drawVAO?et(Ve.shared.vao,".setVAO(",at.drawVAO.append(Ve,et),");"):et(Ve.shared.vao,".setVAO(",Ve.shared.vao,".targetVAO);"):(et(Ve.shared.vao,".setVAO(null);"),Y(Ve,et,at,kt.attributes,function(){return!0})),D(Ve,et,at,kt.uniforms,function(){return!0},!1),J(Ve,et,et,at)}function de(Ve,et){var at=Ve.proc("draw",1);sl(Ve,at),ls(Ve,at,et.context),Gs(Ve,at,et.framebuffer),Ks(Ve,at,et),Ta(Ve,at,et.state),io(Ve,at,et,!1,!0);var kt=et.shader.progVar.append(Ve,at);if(at(Ve.shared.gl,".useProgram(",kt,".program);"),et.shader.program)K(Ve,at,et,et.shader.program);else{at(Ve.shared.vao,".setVAO(null);");var Ot=Ve.global.def("{}"),It=at.def(kt,".id"),Bt=at.def(Ot,"[",It,"]");at(Ve.cond(Bt).then(Bt,".call(this,a0);").else(Bt,"=",Ot,"[",It,"]=",Ve.link(function(Rt){return q(K,Ve,et,Rt,1)}),"(",kt,");",Bt,".call(this,a0);"))}Object.keys(et.state).length>0&&at(Ve.shared.current,".dirty=true;"),Ve.shared.vao&&at(Ve.shared.vao,".setVAO(null);")}function ne(Ve,et,at,kt){Ve.batchId="a1",sl(Ve,et);function Ot(){return!0}Y(Ve,et,at,kt.attributes,Ot),D(Ve,et,at,kt.uniforms,Ot,!1),J(Ve,et,et,at)}function we(Ve,et,at,kt){sl(Ve,et);var Ot=at.contextDep,It=et.def(),Bt="a0",Rt="a1",mt=et.def();Ve.shared.props=mt,Ve.batchId=It;var Pt=Ve.scope(),ht=Ve.scope();et(Pt.entry,"for(",It,"=0;",It,"<",Rt,";++",It,"){",mt,"=",Bt,"[",It,"];",ht,"}",Pt.exit);function cr(gn){return gn.contextDep&&Ot||gn.propDep}function br(gn){return!cr(gn)}if(at.needsContext&&ls(Ve,ht,at.context),at.needsFramebuffer&&Gs(Ve,ht,at.framebuffer),Ta(Ve,ht,at.state,cr),at.profile&&cr(at.profile)&&io(Ve,ht,at,!1,!0),kt)at.useVAO?at.drawVAO?cr(at.drawVAO)?ht(Ve.shared.vao,".setVAO(",at.drawVAO.append(Ve,ht),");"):Pt(Ve.shared.vao,".setVAO(",at.drawVAO.append(Ve,Pt),");"):Pt(Ve.shared.vao,".setVAO(",Ve.shared.vao,".targetVAO);"):(Pt(Ve.shared.vao,".setVAO(null);"),Y(Ve,Pt,at,kt.attributes,br),Y(Ve,ht,at,kt.attributes,cr)),D(Ve,Pt,at,kt.uniforms,br,!1),D(Ve,ht,at,kt.uniforms,cr,!0),J(Ve,Pt,ht,at);else{var Nr=Ve.global.def("{}"),Ri=at.shader.progVar.append(Ve,ht),hi=ht.def(Ri,".id"),wi=ht.def(Nr,"[",hi,"]");ht(Ve.shared.gl,".useProgram(",Ri,".program);","if(!",wi,"){",wi,"=",Nr,"[",hi,"]=",Ve.link(function(gn){return q(ne,Ve,at,gn,2)}),"(",Ri,");}",wi,".call(this,a0[",It,"],",It,");")}}function Ue(Ve,et){var at=Ve.proc("batch",2);Ve.batchId="0",sl(Ve,at);var kt=!1,Ot=!0;Object.keys(et.context).forEach(function(Nr){kt=kt||et.context[Nr].propDep}),kt||(ls(Ve,at,et.context),Ot=!1);var It=et.framebuffer,Bt=!1;It?(It.propDep?kt=Bt=!0:It.contextDep&&kt&&(Bt=!0),Bt||Gs(Ve,at,It)):Gs(Ve,at,null),et.state.viewport&&et.state.viewport.propDep&&(kt=!0);function Rt(Nr){return Nr.contextDep&&kt||Nr.propDep}Ks(Ve,at,et),Ta(Ve,at,et.state,function(Nr){return!Rt(Nr)}),(!et.profile||!Rt(et.profile))&&io(Ve,at,et,!1,"a1"),et.contextDep=kt,et.needsContext=Ot,et.needsFramebuffer=Bt;var mt=et.shader.progVar;if(mt.contextDep&&kt||mt.propDep)we(Ve,at,et,null);else{var Pt=mt.append(Ve,at);if(at(Ve.shared.gl,".useProgram(",Pt,".program);"),et.shader.program)we(Ve,at,et,et.shader.program);else{at(Ve.shared.vao,".setVAO(null);");var ht=Ve.global.def("{}"),cr=at.def(Pt,".id"),br=at.def(ht,"[",cr,"]");at(Ve.cond(br).then(br,".call(this,a0,a1);").else(br,"=",ht,"[",cr,"]=",Ve.link(function(Nr){return q(we,Ve,et,Nr,2)}),"(",Pt,");",br,".call(this,a0,a1);"))}}Object.keys(et.state).length>0&&at(Ve.shared.current,".dirty=true;"),Ve.shared.vao&&at(Ve.shared.vao,".setVAO(null);")}function ft(Ve,et){var at=Ve.proc("scope",3);Ve.batchId="a2";var kt=Ve.shared,Ot=kt.current;if(ls(Ve,at,et.context),et.framebuffer&&et.framebuffer.append(Ve,at),Ai(Object.keys(et.state)).forEach(function(Rt){var mt=et.state[Rt],Pt=mt.append(Ve,at);En(Pt)?Pt.forEach(function(ht,cr){vn(ht)?at.set(Ve.next[Rt],"["+cr+"]",ht):at.set(Ve.next[Rt],"["+cr+"]",Ve.link(ht,{stable:!0}))}):Rn(mt)?at.set(kt.next,"."+Rt,Ve.link(Pt,{stable:!0})):at.set(kt.next,"."+Rt,Pt)}),io(Ve,at,et,!0,!0),[Tt,xr,Jt,Pr,Kt].forEach(function(Rt){var mt=et.draw[Rt];if(mt){var Pt=mt.append(Ve,at);vn(Pt)?at.set(kt.draw,"."+Rt,Pt):at.set(kt.draw,"."+Rt,Ve.link(Pt),{stable:!0})}}),Object.keys(et.uniforms).forEach(function(Rt){var mt=et.uniforms[Rt].append(Ve,at);Array.isArray(mt)&&(mt="["+mt.map(function(Pt){return vn(Pt)?Pt:Ve.link(Pt,{stable:!0})})+"]"),at.set(kt.uniforms,"["+Ve.link(xt.id(Rt),{stable:!0})+"]",mt)}),Object.keys(et.attributes).forEach(function(Rt){var mt=et.attributes[Rt].append(Ve,at),Pt=Ve.scopeAttrib(Rt);Object.keys(new Yr).forEach(function(ht){at.set(Pt,"."+ht,mt[ht])})}),et.scopeVAO){var It=et.scopeVAO.append(Ve,at);vn(It)?at.set(kt.vao,".targetVAO",It):at.set(kt.vao,".targetVAO",Ve.link(It,{stable:!0}))}function Bt(Rt){var mt=et.shader[Rt];if(mt){var Pt=mt.append(Ve,at);vn(Pt)?at.set(kt.shader,"."+Rt,Pt):at.set(kt.shader,"."+Rt,Ve.link(Pt,{stable:!0}))}}Bt(Xe),Bt(ot),Object.keys(et.state).length>0&&(at(Ot,".dirty=true;"),at.exit(Ot,".dirty=true;")),at("a1(",Ve.shared.context,",a0,",Ve.batchId,");")}function Zt(Ve){if(!(typeof Ve!="object"||En(Ve))){for(var et=Object.keys(Ve),at=0;at<et.length;++at)if(h.isDynamic(Ve[et[at]]))return!0;return!1}}function hr(Ve,et,at){var kt=et.static[at];if(!kt||!Zt(kt))return;var Ot=Ve.global,It=Object.keys(kt),Bt=!1,Rt=!1,mt=!1,Pt=Ve.global.def("{}");It.forEach(function(cr){var br=kt[cr];if(h.isDynamic(br)){typeof br=="function"&&(br=kt[cr]=h.unbox(br));var Nr=Nn(br,null);Bt=Bt||Nr.thisDep,mt=mt||Nr.propDep,Rt=Rt||Nr.contextDep}else{switch(Ot(Pt,".",cr,"="),typeof br){case"number":Ot(br);break;case"string":Ot('"',br,'"');break;case"object":Array.isArray(br)&&Ot("[",br.join(),"]");break;default:Ot(Ve.link(br));break}Ot(";")}});function ht(cr,br){It.forEach(function(Nr){var Ri=kt[Nr];if(h.isDynamic(Ri)){var hi=cr.invoke(br,Ri);br(Pt,".",Nr,"=",hi,";")}})}et.dynamic[at]=new h.DynamicVariable(Xo,{thisDep:Bt,contextDep:Rt,propDep:mt,ref:Pt,append:ht}),delete et.static[at]}function qt(Ve,et,at,kt,Ot){var It=Ln();It.stats=It.link(Ot),Object.keys(et.static).forEach(function(Rt){hr(It,et,Rt)}),dr.forEach(function(Rt){hr(It,Ve,Rt)});var Bt=Ul(Ve,et,at,kt,It);return Bt.shader.program&&(Bt.shader.program.attributes.sort(function(Rt,mt){return Rt.name<mt.name?-1:1}),Bt.shader.program.uniforms.sort(function(Rt,mt){return Rt.name<mt.name?-1:1})),de(It,Bt),ft(It,Bt),Ue(It,Bt),e(It.compile(),{destroy:function(){Bt.shader.program.destroy()}})}return{next:qn,current:Xi,procs:function(){var Ve=Ln(),et=Ve.proc("poll"),at=Ve.proc("refresh"),kt=Ve.block();et(kt),at(kt);var Ot=Ve.shared,It=Ot.gl,Bt=Ot.next,Rt=Ot.current;kt(Rt,".dirty=false;"),Gs(Ve,et),Gs(Ve,at,null,!0);var mt;Ii&&(mt=Ve.link(Ii)),zt.oes_vertex_array_object&&at(Ve.link(zt.oes_vertex_array_object),".bindVertexArrayOES(null);");var Pt=at.def(Ot.attributes),ht=at.def(0),cr=Ve.cond(ht,".buffer");cr.then(It,".enableVertexAttribArray(i);",It,".bindBuffer(",Sr,",",ht,".buffer.buffer);",It,".vertexAttribPointer(i,",ht,".size,",ht,".type,",ht,".normalized,",ht,".stride,",ht,".offset);").else(It,".disableVertexAttribArray(i);",It,".vertexAttrib4f(i,",ht,".x,",ht,".y,",ht,".z,",ht,".w);",ht,".buffer=null;");var br=Ve.link(Ir.maxAttributes,{stable:!0});return at("for(var i=0;i<",br,";++i){",ht,"=",Pt,"[i];",cr,"}"),Ii&&at("for(var i=0;i<",br,";++i){",mt,".vertexAttribDivisorANGLE(i,",Pt,"[i].divisor);","}"),at(Ve.shared.vao,".currentVAO=null;",Ve.shared.vao,".setVAO(",Ve.shared.vao,".targetVAO);"),Object.keys(li).forEach(function(Nr){var Ri=li[Nr],hi=kt.def(Bt,".",Nr),wi=Ve.block();wi("if(",hi,"){",It,".enable(",Ri,")}else{",It,".disable(",Ri,")}",Rt,".",Nr,"=",hi,";"),at(wi),et("if(",hi,"!==",Rt,".",Nr,"){",wi,"}")}),Object.keys(mn).forEach(function(Nr){var Ri=mn[Nr],hi=Xi[Nr],wi,gn,tn=Ve.block();if(tn(It,".",Ri,"("),En(hi)){var Ci=hi.length;wi=Ve.global.def(Bt,".",Nr),gn=Ve.global.def(Rt,".",Nr),tn(M(Ci,function(qi){return wi+"["+qi+"]"}),");",M(Ci,function(qi){return gn+"["+qi+"]="+wi+"["+qi+"];"}).join("")),et("if(",M(Ci,function(qi){return wi+"["+qi+"]!=="+gn+"["+qi+"]"}).join("||"),"){",tn,"}")}else wi=kt.def(Bt,".",Nr),gn=kt.def(Rt,".",Nr),tn(wi,");",Rt,".",Nr,"=",wi,";"),et("if(",wi,"!==",gn,"){",tn,"}");at(tn)}),Ve.compile()}(),compile:qt}}function Ia(){return{vaoCount:0,bufferCount:0,elementsCount:0,framebufferCount:0,shaderCount:0,textureCount:0,cubeCount:0,renderbufferCount:0,maxTextureUnits:0}}var yo=34918,Da=34919,go=35007,Rs=function(Ee,xt){if(!xt.ext_disjoint_timer_query)return null;var zt=[];function Ir(){return zt.pop()||xt.ext_disjoint_timer_query.createQueryEXT()}function Hr(xi){zt.push(xi)}var Br=[];function Vr(xi){var Ii=Ir();xt.ext_disjoint_timer_query.beginQueryEXT(go,Ii),Br.push(Ii),ji(Br.length-1,Br.length,xi)}function mi(){xt.ext_disjoint_timer_query.endQueryEXT(go)}function Ni(){this.startQueryIndex=-1,this.endQueryIndex=-1,this.sum=0,this.stats=null}var Oi=[];function Mi(){return Oi.pop()||new Ni}function Hn(xi){Oi.push(xi)}var Qi=[];function ji(xi,Ii,ci){var nn=Mi();nn.startQueryIndex=xi,nn.endQueryIndex=Ii,nn.sum=0,nn.stats=ci,Qi.push(nn)}var si=[],Mr=[];function Yr(){var xi,Ii,ci=Br.length;if(ci!==0){Mr.length=Math.max(Mr.length,ci+1),si.length=Math.max(si.length,ci+1),si[0]=0,Mr[0]=0;var nn=0;for(xi=0,Ii=0;Ii<Br.length;++Ii){var Xi=Br[Ii];xt.ext_disjoint_timer_query.getQueryObjectEXT(Xi,Da)?(nn+=xt.ext_disjoint_timer_query.getQueryObjectEXT(Xi,yo),Hr(Xi)):Br[xi++]=Xi,si[Ii+1]=nn,Mr[Ii+1]=xi}for(Br.length=xi,xi=0,Ii=0;Ii<Qi.length;++Ii){var qn=Qi[Ii],vi=qn.startQueryIndex,li=qn.endQueryIndex;qn.sum+=si[li]-si[vi];var mn=Mr[vi],Ki=Mr[li];Ki===mn?(qn.stats.gpuTime+=qn.sum/1e6,Hn(qn)):(qn.startQueryIndex=mn,qn.endQueryIndex=Ki,Qi[xi++]=qn)}Qi.length=xi}}return{beginQuery:Vr,endQuery:mi,pushScopeStats:ji,update:Yr,getNumPendingQueries:function(){return Br.length},clear:function(){zt.push.apply(zt,Br);for(var xi=0;xi<zt.length;xi++)xt.ext_disjoint_timer_query.deleteQueryEXT(zt[xi]);Br.length=0,zt.length=0},restore:function(){Br.length=0,zt.length=0}}},Es=16384,Zs=256,Gn=1024,Ha=34962,Fo="webglcontextlost",Uo="webglcontextrestored",Qs=1,Sl=2,bu=3;function vl(Ee,xt){for(var zt=0;zt<Ee.length;++zt)if(Ee[zt]===xt)return zt;return-1}function Sc(Ee){var xt=_(Ee);if(!xt)return null;var zt=xt.gl,Ir=zt.getContextAttributes(),Hr=zt.isContextLost(),Br=k(zt,xt);if(!Br)return null;var Vr=x(),mi=Ia(),Ni=xt.cachedCode||{},Oi=Br.extensions,Mi=Rs(zt,Oi),Hn=v(),Qi=zt.drawingBufferWidth,ji=zt.drawingBufferHeight,si={tick:0,time:0,viewportWidth:Qi,viewportHeight:ji,framebufferWidth:Qi,framebufferHeight:ji,drawingBufferWidth:Qi,drawingBufferHeight:ji,pixelRatio:xt.pixelRatio},Mr={},Yr={elements:null,primitive:4,count:-1,offset:0,instances:-1},xi=ei(zt,Oi),Ii=ri(zt,mi,xt,Xi),ci=Cr(zt,Oi,Ii,mi),nn=Cu(zt,Oi,xi,mi,Ii,ci,Yr);function Xi(q){return nn.destroyBuffer(q)}var qn=Wu(zt,Vr,mi,xt),vi=of(zt,Oi,xi,function(){Ki.procs.poll()},si,mi,xt),li=Dc(zt,Oi,xi,mi,xt),mn=lf(zt,Oi,xi,vi,li,mi),Ki=Ea(zt,Vr,Oi,xi,Ii,ci,vi,mn,Mr,nn,qn,Yr,si,Mi,Ni,xt),Ui=Wl(zt,mn,Ki.procs.poll,si,Ir,Oi,xi),Bi=Ki.next,vn=zt.canvas,Un=[],na=[],Yi=[],Ln=[xt.onDestroy],ra=null;function oa(){if(Un.length===0){Mi&&Mi.update(),ra=null;return}ra=d.next(oa),Ks();for(var q=Un.length-1;q>=0;--q){var K=Un[q];K&&K(si,null,0)}zt.flush(),Mi&&Mi.update()}function wa(){!ra&&Un.length>0&&(ra=d.next(oa))}function ns(){ra&&(d.cancel(oa),ra=null)}function Ys(q){q.preventDefault(),Hr=!0,ns(),na.forEach(function(K){K()})}function Va(q){zt.getError(),Hr=!1,Br.restore(),qn.restore(),Ii.restore(),vi.restore(),li.restore(),mn.restore(),nn.restore(),Mi&&Mi.restore(),Ki.procs.refresh(),wa(),Yi.forEach(function(K){K()})}vn&&(vn.addEventListener(Fo,Ys,!1),vn.addEventListener(Uo,Va,!1));function Ml(){Un.length=0,ns(),vn&&(vn.removeEventListener(Fo,Ys),vn.removeEventListener(Uo,Va)),qn.clear(),mn.clear(),li.clear(),nn.clear(),vi.clear(),ci.clear(),Ii.clear(),Mi&&Mi.clear(),Ln.forEach(function(q){q()})}function zo(q){function K(It){var Bt=e({},It);delete Bt.uniforms,delete Bt.attributes,delete Bt.context,delete Bt.vao,"stencil"in Bt&&Bt.stencil.op&&(Bt.stencil.opBack=Bt.stencil.opFront=Bt.stencil.op,delete Bt.stencil.op);function Rt(mt){if(mt in Bt){var Pt=Bt[mt];delete Bt[mt],Object.keys(Pt).forEach(function(ht){Bt[mt+"."+ht]=Pt[ht]})}}return Rt("blend"),Rt("depth"),Rt("cull"),Rt("stencil"),Rt("polygonOffset"),Rt("scissor"),Rt("sample"),"vao"in It&&(Bt.vao=It.vao),Bt}function de(It,Bt){var Rt={},mt={};return Object.keys(It).forEach(function(Pt){var ht=It[Pt];if(h.isDynamic(ht)){mt[Pt]=h.unbox(ht,Pt);return}else if(Bt&&Array.isArray(ht)){for(var cr=0;cr<ht.length;++cr)if(h.isDynamic(ht[cr])){mt[Pt]=h.unbox(ht,Pt);return}}Rt[Pt]=ht}),{dynamic:mt,static:Rt}}var ne=de(q.context||{},!0),we=de(q.uniforms||{},!0),Ue=de(q.attributes||{},!1),ft=de(K(q),!1),Zt={gpuTime:0,cpuTime:0,count:0},hr=Ki.compile(ft,Ue,we,ne,Zt),qt=hr.draw,Ve=hr.batch,et=hr.scope,at=[];function kt(It){for(;at.length<It;)at.push(null);return at}function Ot(It,Bt){var Rt;if(typeof It=="function")return et.call(this,null,It,0);if(typeof Bt=="function")if(typeof It=="number")for(Rt=0;Rt<It;++Rt)et.call(this,null,Bt,Rt);else if(Array.isArray(It))for(Rt=0;Rt<It.length;++Rt)et.call(this,It[Rt],Bt,Rt);else return et.call(this,It,Bt,0);else if(typeof It=="number"){if(It>0)return Ve.call(this,kt(It|0),It|0)}else if(Array.isArray(It)){if(It.length)return Ve.call(this,It,It.length)}else return qt.call(this,It)}return e(Ot,{stats:Zt,destroy:function(){hr.destroy()}})}var el=mn.setFBO=zo({framebuffer:h.define.call(null,Qs,"framebuffer")});function ol(q,K){var de=0;Ki.procs.poll();var ne=K.color;ne&&(zt.clearColor(+ne[0]||0,+ne[1]||0,+ne[2]||0,+ne[3]||0),de|=Es),"depth"in K&&(zt.clearDepth(+K.depth),de|=Zs),"stencil"in K&&(zt.clearStencil(K.stencil|0),de|=Gn),zt.clear(de)}function Ul(q){if("framebuffer"in q)if(q.framebuffer&&q.framebuffer_reglType==="framebufferCube")for(var K=0;K<6;++K)el(e({framebuffer:q.framebuffer.faces[K]},q),ol);else el(q,ol);else ol(null,q)}function ls(q){Un.push(q);function K(){var de=vl(Un,q);function ne(){var we=vl(Un,ne);Un[we]=Un[Un.length-1],Un.length-=1,Un.length<=0&&ns()}Un[de]=ne}return wa(),{cancel:K}}function Gs(){var q=Bi.viewport,K=Bi.scissor_box;q[0]=q[1]=K[0]=K[1]=0,si.viewportWidth=si.framebufferWidth=si.drawingBufferWidth=q[2]=K[2]=zt.drawingBufferWidth,si.viewportHeight=si.framebufferHeight=si.drawingBufferHeight=q[3]=K[3]=zt.drawingBufferHeight}function Ks(){si.tick+=1,si.time=sl(),Gs(),Ki.procs.poll()}function Ta(){vi.refresh(),Gs(),Ki.procs.refresh(),Mi&&Mi.update()}function sl(){return(v()-Hn)/1e3}Ta();function io(q,K){var de;switch(q){case"frame":return ls(K);case"lost":de=na;break;case"restore":de=Yi;break;case"destroy":de=Ln;break;default:}return de.push(K),{cancel:function(){for(var ne=0;ne<de.length;++ne)if(de[ne]===K){de[ne]=de[de.length-1],de.pop();return}}}}function Y(){return Ni}function D(q){Object.entries(q).forEach(function(K){Ni[K[0]]=K[1]})}var J=e(zo,{clear:Ul,prop:h.define.bind(null,Qs),context:h.define.bind(null,Sl),this:h.define.bind(null,bu),draw:zo({}),buffer:function(q){return Ii.create(q,Ha,!1,!1)},elements:function(q){return ci.create(q,!1)},texture:vi.create2D,cube:vi.createCube,renderbuffer:li.create,framebuffer:mn.create,framebufferCube:mn.createCube,vao:nn.createVAO,attributes:Ir,frame:ls,on:io,limits:xi,hasExtension:function(q){return xi.extensions.indexOf(q.toLowerCase())>=0},read:Ui,destroy:Ml,_gl:zt,_refresh:Ta,poll:function(){Ks(),Mi&&Mi.update()},now:sl,stats:mi,getCachedCode:Y,preloadCachedCode:D});return xt.onDone(null,J),J}return Sc})});var wz=ye((y1r,vBe)=>{"use strict";var JNt=SX(),$Nt=dBe();vBe.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=$Nt({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||JNt({container:i._glcontainer.node()}),a}});var fK=ye((cK,_Be)=>{"use strict";var pBe=cY(),gBe=UY(),QNt=iqe(),mBe=hBe(),uK=Dr(),eUt=Sg().selectMode,tUt=wz(),rUt=Ru(),iUt=gU(),nUt=oY().styleTextSelection,yBe={};function aUt(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 cK=_Be.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=tUt(t,["ANGLE_instanced_arrays","OES_element_index_uint"],yBe);if(!c){a.init();return}var f=a.count,h=i._glcanvas.data()[0].regl;if(iUt(t,r,n),a.dirty){if((a.line2d||a.error2d)&&!(a.scatter2d||a.fill2d||a.glText)&&h.clear({color:!0,depth:!0}),a.error2d===!0&&(a.error2d=QNt(h)),a.line2d===!0&&(a.line2d=gBe(h)),a.scatter2d===!0&&(a.scatter2d=pBe(h)),a.fill2d===!0&&(a.fill2d=gBe(h)),a.glText===!0)for(a.glText=new Array(f),l=0;l<f;l++)a.glText[l]=new mBe(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 mBe(h))}else if(f<a.glText.length){var v=a.glText.length-f,x=a.glText.splice(f,v);x.forEach(function(j){j.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(j){if(j&&j.positions){for(var re=j.positions,oe=0;oe<re.length&&(isNaN(re[oe])||isNaN(re[oe+1]));)oe+=2;for(var _e=re.length-2;_e>oe&&(isNaN(re[_e])||isNaN(re[_e+1]));)_e-=2;j.positions=re.slice(oe,_e+2)}return j}),a.line2d.update(a.lineOptions)),a.error2d){var b=(a.errorXOptions||[]).concat(a.errorYOptions||[]);a.error2d.update(b)}a.scatter2d&&a.scatter2d.update(a.markerOptions),a.fillOrder=uK.repeat(null,f),a.fill2d&&(a.fillOptions=a.fillOptions.map(function(j,re){var oe=n[re];if(!(!j||!oe||!oe[0]||!oe[0].trace)){var _e=oe[0],Me=_e.trace,ke=_e.t,me=a.lineOptions[re],ie,Se,Le=[];Me._ownfill&&Le.push(re),Me._nexttrace&&Le.push(re+1),Le.length&&(a.fillOrder[re]=Le);var Ae=[],De=me&&me.positions||ke.positions,Pe,ge;if(Me.fill==="tozeroy"){for(Pe=0;Pe<De.length&&isNaN(De[Pe+1]);)Pe+=2;for(ge=De.length-2;ge>Pe&&isNaN(De[ge+1]);)ge-=2;De[Pe+1]!==0&&(Ae=[De[Pe],0]),Ae=Ae.concat(De.slice(Pe,ge+2)),De[ge+1]!==0&&(Ae=Ae.concat([De[ge],0]))}else if(Me.fill==="tozerox"){for(Pe=0;Pe<De.length&&isNaN(De[Pe]);)Pe+=2;for(ge=De.length-2;ge>Pe&&isNaN(De[ge]);)ge-=2;De[Pe]!==0&&(Ae=[0,De[Pe+1]]),Ae=Ae.concat(De.slice(Pe,ge+2)),De[ge]!==0&&(Ae=Ae.concat([0,De[ge+1]]))}else if(Me.fill==="toself"||Me.fill==="tonext"){for(Ae=[],ie=0,j.splitNull=!0,Se=0;Se<De.length;Se+=2)(isNaN(De[Se])||isNaN(De[Se+1]))&&(Ae=Ae.concat(De.slice(ie,Se)),Ae.push(De[ie],De[ie+1]),Ae.push(null,null),ie=Se+2);Ae=Ae.concat(De.slice(ie)),ie&&Ae.push(De[ie],De[ie+1])}else{var Fe=Me._nexttrace;if(Fe){var ce=a.lineOptions[re+1];if(ce){var Ze=ce.positions;if(Me.fill==="tonexty"){for(Ae=De.slice(),re=Math.floor(Ze.length/2);re--;){var ct=Ze[re*2],pt=Ze[re*2+1];isNaN(ct)||isNaN(pt)||Ae.push(ct,pt)}j.fill=Fe.fillcolor}}}}if(Me._prevtrace&&Me._prevtrace.fill==="tonext"){var Wt=a.lineOptions[re-1].positions,st=Ae.length/2;ie=st;var lt=[ie];for(Se=0;Se<Wt.length;Se+=2)(isNaN(Wt[Se])||isNaN(Wt[Se+1]))&&(lt.push(Se/2+st+1),ie=Se+2);Ae=Ae.concat(Wt),j.hole=lt}return j.fillmode=Me.fill,j.opacity=Me.opacity,j.positions=Ae,j}}),a.fill2d.update(a.fillOptions))}var p=i.dragmode,C=eUt(p),E=i.clickmode.indexOf("select")>-1;for(l=0;l<f;l++){var A=n[l][0],L=A.trace,_=A.t,k=_.index,M=L._length,g=_.x,P=_.y;if(L.selectedpoints||C||E){if(C||(C=!0),L.selectedpoints){var T=a.selectBatch[k]=uK.selIndices2selPoints(L),z={};for(u=0;u<T.length;u++)z[T[u]]=1;var O=[];for(u=0;u<M;u++)z[u]||O.push(u);a.unselectBatch[k]=O}var V=_.xpx=new Array(M),G=_.ypx=new Array(M);for(u=0;u<M;u++)V[u]=o.c2p(g[u]),G[u]=s.c2p(P[u])}else _.xpx=_.ypx=null}if(C){if(a.select2d||(a.select2d=pBe(i._glcanvas.data()[1].regl)),a.scatter2d){var Z=new Array(f);for(l=0;l<f;l++)Z[l]=a.selectBatch[l].length||a.unselectBatch[l].length?a.markerUnselectedOptions[l]:{};a.scatter2d.update(Z)}a.select2d&&(a.select2d.update(a.markerOptions),a.select2d.update(a.markerSelectedOptions)),a.glText&&n.forEach(function(j){var re=((j||[])[0]||{}).trace||{};rUt.hasText(re)&&nUt(j)})}else a.scatter2d&&a.scatter2d.update(a.markerOptions);var H={viewport:aUt(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=uK.repeat(H,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(j){j.update(H)})}}};cK.reglPrecompiled=yBe});var wBe=ye((_1r,bBe)=>{"use strict";var xBe=qze();xBe.plot=fK();bBe.exports=xBe});var ABe=ye((x1r,TBe)=>{"use strict";TBe.exports=wBe()});var hK=ye((b1r,CBe)=>{"use strict";var oUt=pf(),EBe=Tu(),SBe=df().axisHoverFormat,sUt=Qo().hovertemplateAttrs,EC=sC(),lUt=hd().idRegex,uUt=pl().templatedArray,d5=Ao().extendFlat,o1=oUt.marker,cUt=o1.line,fUt=d5(EBe("marker.line",{editTypeOverride:"calc"}),{width:d5({},cUt.width,{editType:"calc"}),editType:"calc"}),Tz=d5(EBe("marker"),{symbol:o1.symbol,angle:o1.angle,size:d5({},o1.size,{editType:"markerSize"}),sizeref:o1.sizeref,sizemin:o1.sizemin,sizemode:o1.sizemode,opacity:o1.opacity,colorbar:o1.colorbar,line:fUt,editType:"calc"});Tz.color.editType=Tz.cmin.editType=Tz.cmax.editType="style";function MBe(e){return{valType:"info_array",freeLength:!0,editType:"calc",items:{valType:"subplotid",regex:lUt[e],editType:"plot"}}}CBe.exports={dimensions:uUt("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:d5({},EC.text,{}),hovertext:d5({},EC.hovertext,{}),hovertemplate:sUt(),xhoverformat:SBe("x"),yhoverformat:SBe("y"),marker:Tz,xaxes:MBe("x"),yaxes:MBe("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:EC.selected.marker,editType:"calc"},unselected:{marker:EC.unselected.marker,editType:"calc"},opacity:EC.opacity}});var Az=ye((w1r,kBe)=>{"use strict";kBe.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 IBe=ye((T1r,PBe)=>{"use strict";var dK=Dr(),hUt=Yd(),LBe=hK(),dUt=Ru(),vUt=$p(),pUt=Az(),gUt=qF().isOpenSymbol;PBe.exports=function(t,r,n,i){function a(d,v){return dK.coerce(t,r,LBe,d,v)}var o=hUt(t,r,{name:"dimensions",handleItemDefaults:mUt}),s=a("diagonal.visible"),l=a("showupperhalf"),u=a("showlowerhalf"),c=pUt(r,o,"values");if(!c||!s&&!l&&!u){r.visible=!1;return}a("text"),a("hovertext"),a("hovertemplate"),a("xhoverformat"),a("yhoverformat"),vUt(t,r,n,i,a,{noAngleRef:!0,noStandOff:!0});var f=gUt(r.marker.symbol),h=dUt.isBubble(r);a("marker.line.width",f||h?1:0),yUt(t,r,i,a),dK.coerceSelectionMarkerOpacity(r,a)};function mUt(e,t){function r(i,a){return dK.coerce(e,t,LBe.dimensions,i,a)}r("label");var n=r("values");n&&n.length?r("visible"):t.visible=!1,r("axis.type"),r("axis.matches")}function yUt(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=[],C=[];function E(z,O,V,G){if(z){var Z=z.charAt(0),H=r._splomAxes[Z];if(t["_"+Z+"axes"][z]=1,G.push(z),!(z in H)){var N=H[z]={};V&&(N.label=V.label||"",V.visible&&V.axis&&(V.axis.type&&(N.type=V.axis.type),V.axis.matches&&(N.matches=O)))}}}var A=!l&&!s,L=!l&&!o;for(t._axesDim={},u=0;u<a;u++){var _=i[u],k=u===0,M=u===a-1,g=k&&A||M&&L?void 0:v[u],P=k&&L||M&&A?void 0:x[u];E(g,P,_,p),E(P,g,_,C),b[u]=[g,P],t._axesDim[g]=u,t._axesDim[P]=u}for(u=0;u<p.length;u++)for(c=0;c<C.length;c++){var T=p[u]+C[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 FBe=ye((A1r,DBe)=>{"use strict";var RBe=Dr();DBe.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]=RBe.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||RBe.extendFlat(l,o),l}});var qBe=ye((S1r,OBe)=>{"use strict";var vK=Dr(),Sz=hf(),_Ut=O0().calcMarkerSize,xUt=O0().calcAxisExpansion,bUt=F0(),zBe=Y2().markerSelection,wUt=Y2().markerStyle,TUt=FBe(),AUt=hs().BADNUM,SUt=sx().TOO_MANY_POINTS;OBe.exports=function(t,r){var n=r.dimensions,i=r._length,a={},o=a.cdata=[],s=a.data=[],l=r._visibleDims=[],u,c,f,h,d;function v(E,A){for(var L=E.makeCalcdata({v:A.values,vcalendar:r.calendar},"v"),_=0;_<L.length;_++)L[_]=L[_]===AUt?NaN:L[_];o.push(L),s.push(E.type==="log"?vK.simpleMap(L,E.c2l):L)}for(u=0;u<n.length;u++)if(f=n[u],f.visible){if(h=Sz.getFromId(t,r._diag[u][0]),d=Sz.getFromId(t,r._diag[u][1]),h&&d&&h.type!==d.type){vK.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)}bUt(t,r),vK.extendFlat(a,wUt(t,r));var x=o.length,b=x*i>SUt,p;for(b?p=a.sizeAvg||Math.max(a.size,3):p=_Ut(r,i),c=0;c<l.length;c++)u=l[c],f=n[u],h=Sz.getFromId(t,r._diag[u][0])||{},d=Sz.getFromId(t,r._diag[u][1])||{},xUt(t,r,h,d,o[c],o[c],p);var C=TUt(t,r);return C.matrix||(C.matrix=!0),C.matrixOptions=a,C.selectedOptions=zBe(t,r,r.selected),C.unselectedOptions=zBe(t,r,r.unselected),[{x:!1,y:!1,t:{},trace:r}]}});var NBe=ye((BBe,CC)=>{(function(){var e,t,r,n,i,a;typeof performance!="undefined"&&performance!==null&&performance.now?CC.exports=function(){return performance.now()}:typeof process!="undefined"&&process!==null&&process.hrtime?(CC.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?(CC.exports=function(){return Date.now()-r},r=Date.now()):(CC.exports=function(){return new Date().getTime()-r},r=new Date().getTime())}).call(BBe)});var VBe=ye((M1r,Cz)=>{var MUt=NBe(),s1=window,Mz=["moz","webkit"],p5="AnimationFrame",g5=s1["request"+p5],kC=s1["cancel"+p5]||s1["cancelRequest"+p5];for(v5=0;!g5&&v5<Mz.length;v5++)g5=s1[Mz[v5]+"Request"+p5],kC=s1[Mz[v5]+"Cancel"+p5]||s1[Mz[v5]+"CancelRequest"+p5];var v5;(!g5||!kC)&&(Ez=0,pK=0,vx=[],UBe=1e3/60,g5=function(e){if(vx.length===0){var t=MUt(),r=Math.max(0,UBe-(t-Ez));Ez=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(Ez)}catch(a){setTimeout(function(){throw a},0)}},Math.round(r))}return vx.push({handle:++pK,callback:e,cancelled:!1}),pK},kC=function(e){for(var t=0;t<vx.length;t++)vx[t].handle===e&&(vx[t].cancelled=!0)});var Ez,pK,vx,UBe;Cz.exports=function(e){return g5.call(s1,e)};Cz.exports.cancel=function(){kC.apply(s1,arguments)};Cz.exports.polyfill=function(e){e||(e=s1),e.requestAnimationFrame=g5,e.cancelAnimationFrame=kC}});var HBe=ye((E1r,GBe)=>{GBe.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 ZBe=ye((C1r,XBe)=>{"use strict";var EUt=cY(),CUt=Xm(),kUt=j2(),jBe=VBe(),LUt=HBe(),gK=e5(),PUt=W2();XBe.exports=px;function px(e,t){if(!(this instanceof px))return new px(e,t);this.traces=[],this.passes={},this.regl=e,this.scatter=EUt(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=jBe(()=>{this.draw(),this.dirty=!0,this.planned=null})):(this.draw(),this.dirty=!0,jBe(()=>{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=CUt(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:gK([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=gK(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(PUt(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]=kUt(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(WBe),o=!0):i.padding=WBe(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=IUt(i.id,x,b),C=this.passes[p]||(this.passes[p]={});if(n.data&&(n.transpose?C.positions={x:{buffer:i.buffer,offset:b,count:l,stride:s},y:{buffer:i.buffer,offset:x,count:l,stride:s}}:C.positions={x:{buffer:i.buffer,offset:b*l,count:l},y:{buffer:i.buffer,offset:x*l,count:l}},C.bounds=kz(i.bounds,x,b)),n.domain||n.viewport||n.data){let E=o?kz(i.padding,x,b):i.padding;if(i.domain){let[A,L,_,k]=kz(i.domain,x,b);C.viewport=[f+A*u+E[0],h+L*c+E[1],f+_*u-E[2],h+k*c-E[3]]}else C.viewport=[f+b*d+d*E[0],h+x*v+v*E[1],f+(b+1)*d-d*E[2],h+(x+1)*v-v*E[3]]}n.color&&(C.color=i.color),n.size&&(C.size=i.size),n.marker&&(C.marker=i.marker),n.borderSize&&(C.borderSize=i.borderSize),n.borderColor&&(C.borderColor=i.borderColor),n.opacity&&(C.opacity=i.opacity),n.range&&(C.range=a?kz(i.range,x,b):i.range||C.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(...LUt(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 IUt(e,t,r){let n=e.id!=null?e.id:e,i=t,a=r;return n<<16|(i&255)<<8|a&255}function kz(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 WBe(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=gK(e);return[t.x,t.y,t.x+t.width,t.y+t.height]}}});var KBe=ye((k1r,YBe)=>{"use strict";var RUt=ZBe(),mK=Dr(),Lz=hf(),DUt=Sg().selectMode;YBe.exports=function(t,r,n){if(n.length)for(var i=0;i<n.length;i++)FUt(t,n[i][0])};function FUt(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,C=o.viewOpts={};for(C.ranges=new Array(p),C.domains=new Array(p),x=0;x<b.length;x++){d=b[x];var E=C.ranges[x]=new Array(4),A=C.domains[x]=new Array(4);f=Lz.getFromId(e,i._diag[d][0]),f&&(E[0]=f._rl[0],E[2]=f._rl[1],A[0]=f.domain[0],A[2]=f.domain[1]),h=Lz.getFromId(e,i._diag[d][1]),h&&(E[1]=h._rl[0],E[3]=h._rl[1],A[1]=h.domain[0],A[3]=h.domain[1])}var L=e._context.plotGlPixelRatio,_=n.l*L,k=n.b*L,M=n.w*L,g=n.h*L;C.viewport=[_,k,M+_,g+k],o.matrix===!0&&(o.matrix=RUt(u));var P=r.clickmode.indexOf("select")>-1,T=DUt(c)||!!i.selectedpoints||P,z=!0;if(T){var O=i._length;if(i.selectedpoints){o.selectBatch=i.selectedpoints;var V=i.selectedpoints,G={};for(d=0;d<V.length;d++)G[V[d]]=!0;var Z=[];for(d=0;d<O;d++)G[d]||Z.push(d);o.unselectBatch=Z}var H=a.xpx=new Array(p),N=a.ypx=new Array(p);for(x=0;x<b.length;x++){if(d=b[x],f=Lz.getFromId(e,i._diag[d][0]),f)for(H[x]=new Array(O),v=0;v<O;v++)H[x][v]=f.c2p(l[x][v]);if(h=Lz.getFromId(e,i._diag[d][1]),h)for(N[x]=new Array(O),v=0;v<O;v++)N[x][v]=h.c2p(l[x][v])}if(o.selectBatch.length||o.unselectBatch.length){var j=mK.extendFlat({},s,o.unselectedOptions,C),re=mK.extendFlat({},s,o.selectedOptions,C);o.matrix.update(j,re),z=!1}}else a.xpx=a.ypx=null;if(z){var oe=mK.extendFlat({},s,C);o.matrix.update(oe,null)}}}});var yK=ye(JBe=>{"use strict";JBe.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 rNe=ye((P1r,tNe)=>{"use strict";var $Be=yK(),zUt=OF().calcHover,QBe=ho().getFromId,OUt=Ao().extendFlat;function qUt(e,t,r,n,i){i||(i={});var a=(n||"").charAt(0)==="x",o=(n||"").charAt(0)==="y",s=eNe(e,t,r);if((a||o)&&i.hoversubplots==="axis"&&s[0])for(var l=(a?e.xa:e.ya)._subplotsWith,u=i.gd,c=OUt({},e),f=0;f<l.length;f++){var h=l[f];if(h!==e.xa._id+e.ya._id){o?c.xa=QBe(u,h,"x"):c.ya=QBe(u,h,"y");var d=a||o,v=eNe(c,t,r,d);s=s.concat(v)}}return s}function eNe(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=$Be.getDimIndex(a,l),v=$Be.getDimIndex(a,u);if(d===!1||v===!1)return[e];for(var x=s[d],b=s[v],p,C,E=h,A=0;A<x.length;A++)if(!(n&&A!==e.index)){var L=x[A],_=b[A],k=l.c2p(L)-c,M=u.c2p(_)-f,g=Math.sqrt(k*k+M*M);(n||g<E)&&(E=C=g,p=A)}return e.index=p,e.distance=E,e.dxy=C,p===void 0?[e]:[zUt(e,x,b,a)]}tNe.exports={hoverPoints:qUt}});var lNe=ye((I1r,sNe)=>{"use strict";var oNe=Dr(),iNe=oNe.pushUnique,nNe=Ru(),aNe=yK();sNe.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=!nNe.hasMarkers(i)&&!nNe.hasText(i);if(i.visible!==!0||f)return c;var h=aNe.getDimIndex(i,l),d=aNe.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],C=(t.scene.selectBatch||[]).slice(),E=[];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]}),iNe(C,A)):C.indexOf(A)!==-1?iNe(C,A):E.push(A);var L=o.matrixOptions;return!C.length&&!E.length?o.matrix.update(L,null):!o.selectBatch.length&&!o.unselectBatch.length&&o.matrix.update(o.unselectedOptions,oNe.extendFlat({},L,o.selectedOptions,o.viewOpts)),o.selectBatch=C,o.unselectBatch=E,c}});var fNe=ye((R1r,cNe)=>{"use strict";var uNe=Dr(),BUt=F0(),NUt=Y2().markerStyle;cNe.exports=function(t,r){var n=r.trace,i=t._fullLayout._splomScenes[n.uid];if(i){BUt(t,n),uNe.extendFlat(i.matrixOptions,NUt(t,n));var a=uNe.extendFlat({},i.matrixOptions,i.viewOpts);i.matrix.update(a,null)}}});var dNe=ye((D1r,hNe)=>{"use strict";var UUt=qa(),VUt=lV();hNe.exports={moduleType:"trace",name:"splom",categories:["gl","regl","cartesian","symbols","showLegend","scatter-like"],attributes:hK(),supplyDefaults:IBe(),colorbar:$d(),calc:qBe(),plot:KBe(),hoverPoints:rNe().hoverPoints,selectPoints:lNe(),editStyle:fNe(),meta:{}};UUt.register(VUt)});var _Ne=ye((F1r,yNe)=>{"use strict";var GUt=UY(),HUt=qa(),jUt=wz(),WUt=Id().getModuleCalcData,gx=vh(),vNe=hf().getFromId,pNe=ho().shouldShowZeroLine,gNe="splom",mNe={};function XUt(e){var t=e._fullLayout,r=HUt.getModule(gNe),n=WUt(e.calcdata,r)[0],i=jUt(e,["ANGLE_instanced_arrays","OES_element_index_uint"],mNe);i&&(t._hasOnlyLargeSploms&&_K(e),r.plot(e,{},n))}function ZUt(e){var t=e.calcdata,r=e._fullLayout;r._hasOnlyLargeSploms&&_K(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&&YUt(e,a,o)}}function YUt(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=vNe(e,t._diag[s][0]);u&&(l[0]=u.r2l(u.range[0]),l[2]=u.r2l(u.range[1]));var c=vNe(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 _K(e){var t=e._fullLayout,r=t._glcanvas.data()[0].regl,n=t._splomGrid;n||(n=t._splomGrid=GUt(r)),n.update(KUt(e))}function KUt(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(_,k,M,g,P,T){M*=t,g*=t,P*=t,T*=t;var z=k[_+"color"],O=k[_+"width"],V=String(z+O);V in a?a[V].data.push(NaN,NaN,M,g,P,T):a[V]={data:[M,g,P,T],join:"rect",thickness:O*t,color:z,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,C=-p*c.r2l(c.range[0],c.calendar),E,A;if(u.showgrid)for(o=0;o<f.length;o++)E=d+u.l2p(f[o].x),s("grid",u,E,b,E,b+x);if(c.showgrid)for(o=0;o<h.length;o++)A=b+C+p*h[o].x,s("grid",c,d,A,d+v,A);pNe(e,u,c)&&(E=d+u.l2p(0),s("zeroline",u,E,b,E,b+x)),pNe(e,c,u)&&(A=b+C+0,s("zeroline",c,d,A,d+v,A))}var L=[];for(o in a)L.push(a[o]);return L}function JUt(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)}yNe.exports={name:gNe,attr:gx.attr,attrRegex:gx.attrRegex,layoutAttributes:gx.layoutAttributes,supplyLayoutDefaults:gx.supplyLayoutDefaults,drawFramework:gx.drawFramework,plot:XUt,drag:ZUt,updateGrid:_K,clean:JUt,updateFx:gx.updateFx,toSVG:gx.toSVG,reglPrecompiled:mNe}});var wNe=ye((z1r,bNe)=>{"use strict";var xNe=dNe();xNe.basePlotModule=_Ne(),bNe.exports=xNe});var ANe=ye((O1r,TNe)=>{"use strict";TNe.exports=wNe()});var wK=ye((q1r,SNe)=>{"use strict";var $Ut=Tu(),xK=Rd(),bK=ec(),QUt=kc().attributes,Pz=Ao().extendFlat,eVt=pl().templatedArray;SNe.exports={domain:QUt({name:"parcoords",trace:!0,editType:"plot"}),labelangle:{valType:"angle",dflt:0,editType:"plot"},labelside:{valType:"enumerated",values:["top","bottom"],dflt:"top",editType:"plot"},labelfont:bK({editType:"plot"}),tickfont:bK({autoShadowDflt:!0,editType:"plot"}),rangefont:bK({editType:"plot"}),dimensions:eVt("dimension",{label:{valType:"string",editType:"plot"},tickvals:Pz({},xK.tickvals,{editType:"plot"}),ticktext:Pz({},xK.ticktext,{editType:"plot"}),tickformat:Pz({},xK.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:Pz({editType:"calc"},$Ut("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 LC=ye((B1r,MNe)=>{"use strict";MNe.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((N1r,CNe)=>{"use strict";var tVt=VS();function ENe(e){return[e]}CNe.exports={keyFun:function(e){return e.key},repeat:ENe,descend:tVt,wrap:ENe,unwrap:function(e){return e[0]}}});var SK=ye((U1r,BNe)=>{"use strict";var yh=LC(),em=Oa(),rVt=Km().keyFun,Iz=Km().repeat,m5=Dr().sorterAsc,iVt=Dr().strTranslate,kNe=yh.bar.snapRatio;function LNe(e,t){return e*(1-kNe)+t*kNe}var PNe=yh.bar.snapClose;function nVt(e,t){return e*(1-PNe)+t*PNe}function Dz(e,t,r,n){if(aVt(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*nVt(l,h))return LNe(l,u);if(i*r<i*h||f===o)return LNe(h,l);u=l,l=h}}function aVt(e,t){for(var r=0;r<t.length;r++)if(e>=t[r][0]&&e<=t[r][1])return!0;return!1}function oVt(e){e.attr("x",-yh.bar.captureWidth/2).attr("width",yh.bar.captureWidth)}function sVt(e){e.attr("visibility","visible").style("visibility","visible").attr("fill","yellow").attr("opacity",0)}function lVt(e){if(!e.brush.filterSpecified)return"0,"+e.height;for(var t=INe(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 INe(e,t){return e.map(function(r){return r.map(function(n){return Math.max(0,n*t)}).sort(m5)})}function uVt(e,t){var r=yh.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 RNe(){em.select(document.body).style("cursor",null)}function AK(e){e.attr("stroke-dasharray",lVt)}function Rz(e,t){var r=em.select(e).selectAll(".highlight, .highlight-shadow"),n=t?r.transition().duration(yh.bar.snapDuration).each("end",t):r;AK(n)}function DNe(e,t){var r=e.brush,n=r.filterSpecified,i=NaN,a={},o;if(n){var s=e.height,l=r.filter.getConsolidated(),u=INe(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=uVt(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 C=[b[Math.max(o-1,0)]*.25+b[o]*.75,b[Math.min(o+1,b.length-1)]*.25+b[o]*.75];if(p>=C[0]&&p<=C[1]){a.clickableOrdinalRange=C;break}}}return a}function cVt(e,t){em.event.sourceEvent.stopPropagation();var r=t.height-em.mouse(e)[1]-2*yh.verticalPadding,n=t.unitToPaddedPx.invert(r),i=t.brush,a=DNe(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]-yh.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 FNe(e,t){em.event.sourceEvent.stopPropagation();var r=t.height-em.mouse(e)[1]-2*yh.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(m5),t.brush.filterSpecified=!0,n.extent=n.stayingIntervals.concat([n.newExtent]),n.brushCallback(t),Rz(e.parentNode)}function fVt(e,t){var r=t.brush,n=r.filter,i=r.svgBrush;i._dragging||(zNe(e,t),FNe(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,RNe(),!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&&TK(r)):TK(r),i.brushCallback(t),Rz(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=[Dz(0,l,i.newExtent[0],i.stayingIntervals),Dz(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||TK(r),i.brushCallback(t),u?Rz(e.parentNode,s):(s(),Rz(e.parentNode))}else s();i.brushEndCallback(r.filterSpecified?n.getConsolidated():[])}function zNe(e,t){var r=t.height-em.mouse(e)[1]-2*yh.verticalPadding,n=DNe(t,r),i="crosshair";n.clickableOrdinalRange?i="pointer":n.region&&(i=n.region+"-resize"),em.select(document.body).style("cursor",i)}function hVt(e){e.on("mousemove",function(t){em.event.preventDefault(),t.parent.inBrushDrag||zNe(this,t)}).on("mouseleave",function(t){t.parent.inBrushDrag||RNe()}).call(em.behavior.drag().on("dragstart",function(t){cVt(this,t)}).on("drag",function(t){FNe(this,t)}).on("dragend",function(t){fVt(this,t)}))}function ONe(e,t){return e[0]-t[0]}function dVt(e,t,r){var n=r._context.staticPlot,i=e.selectAll(".background").data(Iz);i.enter().append("rect").classed("background",!0).call(oVt).call(sVt).style("pointer-events",n?"none":"auto").attr("transform",iVt(0,yh.verticalPadding)),i.call(hVt).attr("height",function(s){return s.height-yh.verticalPadding});var a=e.selectAll(".highlight-shadow").data(Iz);a.enter().append("line").classed("highlight-shadow",!0).attr("x",-yh.bar.width/2).attr("stroke-width",yh.bar.width+yh.bar.strokeWidth).attr("stroke",t).attr("opacity",yh.bar.strokeOpacity).attr("stroke-linecap","butt"),a.attr("y1",function(s){return s.height}).call(AK);var o=e.selectAll(".highlight").data(Iz);o.enter().append("line").classed("highlight",!0).attr("x",-yh.bar.width/2).attr("stroke-width",yh.bar.width-yh.bar.strokeWidth).attr("stroke",yh.bar.fillColor).attr("opacity",yh.bar.fillOpacity).attr("stroke-linecap","butt"),o.attr("y1",function(s){return s.height}).call(AK)}function vVt(e,t,r){var n=e.selectAll("."+yh.cn.axisBrush).data(Iz,rVt);n.enter().append("g").classed(yh.cn.axisBrush,!0),dVt(n,t,r)}function pVt(e){return e.svgBrush.extent.map(function(t){return t.slice()})}function TK(e){e.filterSpecified=!1,e.svgBrush.extent=[[-1/0,1/0]]}function gVt(e){return function(r){var n=r.brush,i=pVt(n),a=i.slice();n.filter.set(a),e()}}function qNe(e){for(var t=e.slice(),r=[],n,i=t.shift();i;){for(n=i.slice();(i=t.shift())&&i[0]<=n[1];)n[1]=Math.max(n[1],i[1]);r.push(n)}return r.length===1&&r[0][0]>r[0][1]&&(r=[]),r}function mVt(){var e=[],t,r;return{set:function(n){e=n.map(function(i){return i.slice().sort(m5)}).sort(ONe),e.length===1&&e[0][0]===-1/0&&e[0][1]===1/0&&(e=[[0,-1]]),t=qNe(e),r=e.reduce(function(i,a){return[Math.min(i[0],a[0]),Math.max(i[1],a[1])]},[1/0,-1/0])},get:function(){return e.slice()},getConsolidated:function(){return t},getBounds:function(){return r}}}function yVt(e,t,r,n,i,a){var o=mVt();return o.set(r),{filter:o,filterSpecified:t,svgBrush:{extent:[],brushStartCallback:n,brushCallback:gVt(i),brushEndCallback:a}}}function _Vt(e,t){if(Array.isArray(e[0])?(e=e.map(function(n){return n.sort(m5)}),t.multiselect?e=qNe(e.sort(ONe)):e=[e[0]]):e=[e.sort(m5)],t.tickvals){var r=t.tickvals.slice().sort(m5);if(e=e.map(function(n){var i=[Dz(0,r,n[0],[]),Dz(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]}BNe.exports={makeBrush:yVt,ensureAxisBrush:vVt,cleanRanges:_Vt}});var VNe=ye((V1r,UNe)=>{"use strict";var mx=Dr(),xVt=Dv().hasColorscale,bVt=Jh(),wVt=kc().defaults,TVt=Yd(),AVt=ho(),NNe=wK(),SVt=SK(),MK=LC().maxDimensionCount,MVt=Az();function EVt(e,t,r,n,i){var a=i("line.color",r);if(xVt(e,"line")&&mx.isArrayOrTypedArray(a)){if(a.length)return i("line.colorscale"),bVt(e,t,n,i,{prefix:"line.",cLetter:"c"}),a.length;t.line.color=r}return 1/0}function CVt(e,t,r,n){function i(u,c){return mx.coerce(e,t,NNe.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},AVt.setConvert(t._ax,n.layout),i("multiselect");var l=i("constraintrange");l&&(t.constraintrange=SVt.cleanRanges(l,t))}}UNe.exports=function(t,r,n,i){function a(c,f){return mx.coerce(t,r,NNe,c,f)}var o=t.dimensions;Array.isArray(o)&&o.length>MK&&(mx.log("parcoords traces support up to "+MK+" dimensions at the moment"),o.splice(MK));var s=TVt(t,r,{name:"dimensions",layout:i,handleItemDefaults:CVt}),l=EVt(t,r,n,i,a);wVt(r,i,a),(!Array.isArray(s)||!s.length)&&(r.visible=!1),MVt(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 HNe=ye((G1r,GNe)=>{"use strict";var kVt=Dr().isArrayOrTypedArray,EK=tc(),LVt=Km().wrap;GNe.exports=function(t,r){var n,i;return EK.hasColorscale(r,"line")&&kVt(r.line.color)?(n=r.line.color,i=EK.extractOpts(r.line).colorscale,EK.calc(t,r,{vals:n,containerStr:"line",cLetter:"c"})):(n=PVt(r._length),i=[[0,r.line.color],[1,r.line.color]]),LVt({lineColor:n,cscale:i})};function PVt(e){for(var t=new Array(e),r=0;r<e;r++)t[r]=.5;return t}});function IVt(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(),CK.default[e])r=CK.default[e].slice(),i="rgb";else if(e==="transparent")n=0,i="rgb",r=[0,0,0];else if(e[0]==="#"){var a=e.slice(1),o=a.length,s=o<=4;n=1,s?(r=[parseInt(a[0]+a[0],16),parseInt(a[1]+a[1],16),parseInt(a[2]+a[2],16)],o===4&&(n=parseInt(a[3]+a[3],16)/255)):(r=[parseInt(a[0]+a[1],16),parseInt(a[2]+a[3],16),parseInt(a[4]+a[5],16)],o===8&&(n=parseInt(a[6]+a[7],16)/255)),r[0]||(r[0]=0),r[1]||(r[1]=0),r[2]||(r[2]=0),i="rgb"}else if(t=/^((?:rgba?|hs[lvb]a?|hwba?|cmyk?|xy[zy]|gray|lab|lchu?v?|[ly]uv|lms|oklch|oklab|color))\s*\(([^\)]*)\)/.exec(e)){var l=t[1];i=l.replace(/a$/,"");var u=i==="cmyk"?4:i==="gray"?1:3;r=t[2].trim().split(/\s*[,\/]\s*|\s+/),i==="color"&&(i=r.shift()),r=r.map(function(h,d){if(h[h.length-1]==="%")return h=parseFloat(h)/100,d===3?h:i==="rgb"?h*255:i[0]==="h"||i[0]==="l"&&!d?h*100:i==="lab"?h*125:i==="lch"?d<2?h*150:h*360:i[0]==="o"&&!d?h:i==="oklab"?h*.4:i==="oklch"?d<2?h*.4:h*360:h;if(i[d]==="h"||d===2&&i[i.length-1]==="h"){if(jNe[h]!==void 0)return jNe[h];if(h.endsWith("deg"))return parseFloat(h);if(h.endsWith("turn"))return parseFloat(h)*360;if(h.endsWith("grad"))return parseFloat(h)*360/400;if(h.endsWith("rad"))return parseFloat(h)*180/Math.PI}return h==="none"?0:parseFloat(h)}),n=r.length>u?r.pop():1}else/[0-9](?:\s|\/|,)/.test(e)&&(r=e.match(/([0-9]+)/g).map(function(h){return parseFloat(h)}),i=((f=(c=e.match(/([a-z])/ig))==null?void 0:c.join(""))==null?void 0:f.toLowerCase())||"rgb");return{space:i,values:r,alpha:n}}var CK,WNe,jNe,XNe=ru(()=>{CK=Zet(hX(),1),WNe=IVt,jNe={red:0,orange:60,yellow:120,green:180,blue:240,purple:300}});var PC,kK=ru(()=>{PC={name:"rgb",min:[0,0,0],max:[255,255,255],channel:["red","green","blue"],alias:["RGB"]}});var Fz,ZNe=ru(()=>{kK();Fz={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}};PC.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 KNe={};cee(KNe,{default:()=>YNe});function YNe(e){Array.isArray(e)&&e.raw&&(e=String.raw(...arguments)),e instanceof Number&&(e=+e);var t,r,n,i=WNe(e);if(!i.space)return[];let a=i.space[0]==="h"?Fz.min:PC.min,o=i.space[0]==="h"?Fz.max:PC.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=Fz.rgb(t)),t.push(Math.min(Math.max(i.alpha,0),1)),t}var JNe=ru(()=>{XNe();kK();ZNe()});var LK=ye(zz=>{"use strict";var RVt=Dr().isTypedArray;zz.convertTypedArray=function(e){return RVt(e)?Array.prototype.slice.call(e):e};zz.isOrdinal=function(e){return!!e.tickvals};zz.isVisible=function(e){return e.visible||!("visible"in e)}});var sUe=ye(($1r,oUe)=>{"use strict";var DVt=["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(`
|
||
`),FVt=["precision highp float;","","varying vec4 fragColor;","","void main() {"," gl_FragColor = fragColor;","}"].join(`
|
||
`),IC=LC().maxDimensionCount,iUe=Dr(),$Ne=1e-6,Oz=2048,zVt=new Uint8Array(4),QNe=new Uint8Array(4),eUe={shape:[256,1],format:"rgba",type:"uint8",mag:"nearest",min:"nearest"};function OVt(e){e.read({x:0,y:0,width:1,height:1,data:zVt})}function nUe(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 qVt(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],nUe(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||(OVt(e),r.drawCompleted=!0),s(0)}function BVt(e){return Math.max($Ne,Math.min(1-$Ne,e))}function NVt(e,t){for(var r=new Array(256),n=0;n<256;n++)r[n]=e(n/255).concat(t);return r}function PK(e,t){return(e>>>8*t)%256/255}function UVt(e,t,r){for(var n=new Array(e*(IC+4)),i=0,a=0;a<e;a++){for(var o=0;o<IC;o++)n[i++]=o<t.length?t[o].paddedUnitValues[a]:.5;n[i++]=PK(a,2),n[i++]=PK(a,1),n[i++]=PK(a,0),n[i++]=BVt(r[a])}return n}function VVt(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 tUe(e){var t="0"+e;return t.substr(t.length-2)}function aUe(e){return e<IC?"p"+tUe(e+1)+"_"+tUe(e+4):"colors"}function GVt(e,t,r){for(var n=0;n<=IC;n+=4)e[aUe(n)](VVt(n/4,t,r))}function HVt(e){for(var t={},r=0;r<=IC;r+=4)t[aUe(r)]=e.buffer({usage:"dynamic",type:"float",data:new Uint8Array(0)});return t}function jVt(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,C=e.canvasWidth*d,E=e.canvasHeight*d,A=e.pad.l*d,L=e.pad.b*d,_=e.layoutHeight*d,k=e.layoutWidth*d,M=e.deselectedLines.color,g=e.deselectedLines.opacity,P=iUe.extendFlat({key:c,resolution:[C,E],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)+k*p.x[0],scissorWidth:(n===r?C-o+b:l+.5)+(n===t?o+b:0),scissorY:s+L+_*p.y[0],scissorHeight:u,viewportX:A-b+k*p.x[0],viewportY:L+_*p.y[0],viewportWidth:C,viewportHeight:E},h);return P}function rUe(e){var t=Oz-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)]}oUe.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=HVt(i),v,x=i.texture(eUe),b=[];C(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:DVt,frag:FVt,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 C(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(z,O){return O/g.color.length}):g.color,T=UVt(h,f,P);GVt(d,h,T),!r&&!n&&(x=i.texture(iUe.extendFlat({data:NVt(u.unitToColor,255)},eUe)))}function E(M){var g,P,T,z=[[],[]];for(T=0;T<64;T++){var O=!M&&T<f.length?f[T].brush.filter.getBounds():[-1/0,1/0];z[0][T]=O[0],z[1][T]=O[1]}var V=Oz*8,G=new Array(V);for(g=0;g<V;g++)G[g]=255;if(!M)for(g=0;g<f.length;g++){var Z=g%8,H=(g-Z)/8,N=Math.pow(2,Z),j=f[g],re=j.brush.filter.get();if(!(re.length<2)){var oe=rUe(re[0])[1];for(P=1;P<re.length;P++){var _e=rUe(re[P]);for(T=oe+1;T<_e[0];T++)G[T*8+H]&=~N;oe=Math.max(oe,_e[1])}}}var Me={shape:[8,Oz],format:"alpha",type:"uint8",mag:"nearest",min:"nearest",data:G};return v?v(Me):v=i.texture(Me),{maskTexture:v,maskHeight:Oz,loA:z[0].slice(0,16),loB:z[0].slice(16,32),loC:z[0].slice(32,48),loD:z[0].slice(48,64),hiA:z[1].slice(0,16),hiB:z[1].slice(16,32),hiC:z[1].slice(32,48),hiD:z[1].slice(48,64)}}function A(M,g,P){var T=M.length,z,O,V,G=1/0,Z=-1/0;for(z=0;z<T;z++)M[z].dim0.canvasX<G&&(G=M[z].dim0.canvasX,O=z),M[z].dim1.canvasX>Z&&(Z=M[z].dim1.canvasX,V=z);T===0&&nUe(i,0,0,u.canvasWidth,u.canvasHeight);var H=E(r);for(z=0;z<T;z++){var N=M[z],j=N.dim0.crossfilterDimensionIndex,re=N.dim1.crossfilterDimensionIndex,oe=N.canvasX,_e=N.canvasY,Me=oe+N.panelSizeX,ke=N.plotGlPixelRatio;if(g||!b[j]||b[j][0]!==oe||b[j][1]!==Me){b[j]=[oe,Me];var me=jVt(u,O,V,z,j,re,oe,_e,N.panelSizeX,N.panelSizeY,N.dim0.crossfilterDimensionIndex,r?0:n?2:1,H,ke);l.clearOnly=P;var ie=g?u.lines.blockLineCount:h;qVt(i,p,l,ie,h,me)}}}function L(M,g){return i.read({x:M,y:g,width:1,height:1,data:QNe}),QNe}function _(M,g,P,T){var z=new Uint8Array(4*P*T);return i.read({x:M,y:g,width:P,height:T,data:z}),z}function k(){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:k,update:C}}});var bUe=ye((Q1r,xUe)=>{"use strict";var Bd=Oa(),l1=Dr(),IK=l1.isArrayOrTypedArray,dUe=l1.numberFormat,vUe=(JNe(),B1(KNe)).default,pUe=ho(),WVt=l1.strRotate,Jm=l1.strTranslate,XVt=iu(),qz=So(),lUe=tc(),FK=Km(),tg=FK.keyFun,$m=FK.repeat,gUe=FK.unwrap,y5=LK(),Rl=LC(),mUe=SK(),ZVt=sUe();function uUe(e,t,r){return l1.aggNums(e,null,t,r)}function yUe(e,t){return zK(uUe(Math.min,e,t),uUe(Math.max,e,t))}function Bz(e){var t=e.range;return t?zK(t[0],t[1]):yUe(e.values,e._length)}function zK(e,t){return(isNaN(e)||!isFinite(e))&&(e=0),(isNaN(t)||!isFinite(t))&&(t=0),e===t&&(e===0?(e-=1,t+=1):(e*=.9,t*=1.1)),[e,t]}function YVt(e,t){return t?function(r,n){var i=t[n];return i==null?e(r):i}:e}function KVt(e,t,r,n,i){var a=Bz(r);return n?Bd.scale.ordinal().domain(n.map(YVt(dUe(r.tickformat),i))).range(n.map(function(o){var s=(o-a[0])/(a[1]-a[0]);return e-t+s*(2*t-e)})):Bd.scale.linear().domain(a).range([e-t,t])}function JVt(e,t){return Bd.scale.linear().range([t,e-t])}function $Vt(e,t){return Bd.scale.linear().domain(Bz(e)).range([t,1-t])}function QVt(e){if(e.tickvals){var t=Bz(e);return Bd.scale.ordinal().domain(e.tickvals).range(e.tickvals.map(function(r){return(r-t[0])/(t[1]-t[0])}))}}function eGt(e){var t=e.map(function(a){return a[0]}),r=e.map(function(a){var o=vUe(a[1]);return Bd.rgb("rgb("+o[0]+","+o[1]+","+o[2]+")")}),n=function(a){return function(o){return o[a]}},i="rgb".split("").map(function(a){return Bd.scale.linear().clamp(!0).domain(t).range(r.map(n(a)))});return function(a){return i.map(function(o){return o(a)})}}function DK(e){return e.dimensions.some(function(t){return t.brush.filterSpecified})}function tGt(e,t,r){var n=gUe(t),i=n.trace,a=y5.convertTypedArray(n.lineColor),o=i.line,s={color:vUe(i.unselected.line.color),opacity:i.unselected.line.opacity},l=lUe.extractOpts(o),u=l.reversescale?lUe.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,C=l1.extendDeepNoArrays({},o,{color:a.map(Bd.scale.linear().domain(Bz({values:a,range:[l.min,l.max],_length:i._length}))),blockLineCount:Rl.blockLineCount,canvasOverdrag:Rl.overdrag*Rl.canvasPixelRatio}),E=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},_=E,k=A;return{key:r,colCount:f.filter(y5.isVisible).length,dimensions:f,tickDistance:Rl.tickDistance,unitToColor:eGt(u),lines:C,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:_*Rl.canvasPixelRatio+2*C.canvasOverdrag,canvasHeight:k*Rl.canvasPixelRatio,width:_,height:k,canvasPixelRatio:Rl.canvasPixelRatio}}function rGt(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=Rl.verticalPadding/i,u=JVt(i,Rl.verticalPadding),c={key:r.key,xScale:s,model:r,inBrushDrag:!1},f={};return c.dimensions=a.filter(y5.isVisible).map(function(h,d){var v=$Vt(h,l),x=f[h.label];f[h.label]=(x||0)+1;var b=h.label+(x?"__"+x:""),p=h.constraintrange,C=p&&p.length;C&&!IK(p[0])&&(p=[p]);var E=C?p.map(function(O){return O.map(v)}):[[-1/0,1/0]],A=function(){var O=c;O.focusLayer&&O.focusLayer.render(O.panels,!0);var V=DK(O);!e.contextShown()&&V?(O.contextLayer&&O.contextLayer.render(O.panels,!0),e.contextShown(!0)):e.contextShown()&&!V&&(O.contextLayer&&O.contextLayer.render(O.panels,!0,!0),e.contextShown(!1))},L=h.values;L.length>h._length&&(L=L.slice(0,h._length));var _=h.tickvals,k;function M(O,V){return{val:O,text:k[V]}}function g(O,V){return O.val-V.val}if(IK(_)&&_.length){l1.isTypedArray(_)&&(_=Array.from(_)),k=h.ticktext,!IK(k)||!k.length?k=_.map(dUe(h.tickformat)):k.length>_.length?k=k.slice(0,_.length):_.length>k.length&&(_=_.slice(0,k.length));for(var P=1;P<_.length;P++)if(_[P]<_[P-1]){for(var T=_.map(M).sort(g),z=0;z<_.length;z++)_[z]=T[z].val,k[z]=T[z].text;break}}else _=void 0;return L=y5.convertTypedArray(L),{key:b,label:h.label,tickFormat:h.tickformat,tickvals:_,ticktext:k,ordinal:y5.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:KVt(i,Rl.verticalPadding,h,_,k),ordinalScale:QVt(h),parent:c,model:r,brush:mUe.makeBrush(e,C,E,function(){e.linePickActive(!1)},A,function(O){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,G=O.map(function(Z){return Z.map(V).sort(l1.sorterAsc)}).sort(function(Z,H){return Z[0]-H[0]});t.filterChanged(c.key,h._index,G)}})}}),c}function cUe(e){e.classed(Rl.cn.axisExtentText,!0).attr("text-anchor","middle").style("cursor","default")}function iGt(){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 fUe(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 RK(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 nGt(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=zK(s.range[0],s.range[1]):s.range=yUe(o,n._length),s.dtick||(s.dtick=.01*(Math.abs(s.range[1]-s.range[0])||1)),s.tickformat=i[a].tickformat,pUe.calcTicks(s),s.cleanRange())}}function _Ue(e,t){return pUe.tickText(e._ax,t,!1).text}function hUe(e,t){if(e.ordinal)return"";var r=e.domainScale.domain(),n=r[t?r.length-1:0];return _Ue(e.model.dimensions[e.visibleIndex],n)}xUe.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;nGt(r);var f=iGt(),h=r.filter(function(z){return gUe(z).trace.visible}).map(tGt.bind(0,n)).map(rGt.bind(0,f,i));l.each(function(z,O){return l1.extendFlat(z,h[O])});var d=l.selectAll(".gl-canvas").each(function(z){z.viewModel=h[0],z.viewModel.plotGlPixelRatio=u,z.viewModel.paperColor=c,z.model=z.viewModel?z.viewModel.model:null}),v=null,x=d.filter(function(z){return z.pick});x.style("pointer-events",a?"none":"auto").on("mousemove",function(z){if(f.linePickActive()&&z.lineLayer&&i&&i.hover){var O=Bd.event,V=this.width,G=this.height,Z=Bd.mouse(this),H=Z[0],N=Z[1];if(H<0||N<0||H>=V||N>=G)return;var j=z.lineLayer.readPixel(H,G-1-N),re=j[3]!==0,oe=re?j[2]+256*(j[1]+256*j[0]):null,_e={x:H,y:N,clientX:O.clientX,clientY:O.clientY,dataIndex:z.model.key,curveNumber:oe};oe!==v&&(re?i.hover(_e):i.unhover&&i.unhover(_e),v=oe)}}),d.style("opacity",function(z){return z.pick?0:1}),s.style("background","rgba(255, 255, 255, 0)");var b=s.selectAll("."+Rl.cn.parcoords).data(h,tg);b.exit().remove(),b.enter().append("g").classed(Rl.cn.parcoords,!0).style("shape-rendering","crispEdges").style("pointer-events","none"),b.attr("transform",function(z){return Jm(z.model.translateX,z.model.translateY)});var p=b.selectAll("."+Rl.cn.parcoordsControlView).data($m,tg);p.enter().append("g").classed(Rl.cn.parcoordsControlView,!0),p.attr("transform",function(z){return Jm(z.model.pad.l,z.model.pad.t)});var C=p.selectAll("."+Rl.cn.yAxis).data(function(z){return z.dimensions},tg);C.enter().append("g").classed(Rl.cn.yAxis,!0),p.each(function(z){RK(C,z,u)}),d.each(function(z){if(z.viewModel){!z.lineLayer||i?z.lineLayer=ZVt(this,z):z.lineLayer.update(z),(z.key||z.key===0)&&(z.viewModel[z.key]=z.lineLayer);var O=!z.context||i;z.lineLayer.render(z.viewModel.panels,O)}}),C.attr("transform",function(z){return Jm(z.xScale(z.xIndex),0)}),C.call(Bd.behavior.drag().origin(function(z){return z}).on("drag",function(z){var O=z.parent;f.linePickActive(!1),z.x=Math.max(-Rl.overdrag,Math.min(z.model.width+Rl.overdrag,Bd.event.x)),z.canvasX=z.x*z.model.canvasPixelRatio,C.sort(function(V,G){return V.x-G.x}).each(function(V,G){V.xIndex=G,V.x=z===V?V.x:V.xScale(V.xIndex),V.canvasX=V.x*V.model.canvasPixelRatio}),RK(C,O,u),C.filter(function(V){return Math.abs(z.xIndex-V.xIndex)!==0}).attr("transform",function(V){return Jm(V.xScale(V.xIndex),0)}),Bd.select(this).attr("transform",Jm(z.x,0)),C.each(function(V,G,Z){Z===z.parent.key&&(O.dimensions[G]=V)}),O.contextLayer&&O.contextLayer.render(O.panels,!1,!DK(O)),O.focusLayer.render&&O.focusLayer.render(O.panels)}).on("dragend",function(z){var O=z.parent;z.x=z.xScale(z.xIndex),z.canvasX=z.x*z.model.canvasPixelRatio,RK(C,O,u),Bd.select(this).attr("transform",function(V){return Jm(V.x,0)}),O.contextLayer&&O.contextLayer.render(O.panels,!1,!DK(O)),O.focusLayer&&O.focusLayer.render(O.panels),O.pickLayer&&O.pickLayer.render(O.panels,!0),f.linePickActive(!0),i&&i.axesMoved&&i.axesMoved(O.key,O.dimensions.map(function(V){return V.crossfilterDimensionIndex}))})),C.exit().remove();var E=C.selectAll("."+Rl.cn.axisOverlays).data($m,tg);E.enter().append("g").classed(Rl.cn.axisOverlays,!0),E.selectAll("."+Rl.cn.axis).remove();var A=E.selectAll("."+Rl.cn.axis).data($m,tg);A.enter().append("g").classed(Rl.cn.axis,!0),A.each(function(z){var O=z.model.height/z.model.tickDistance,V=z.domainScale,G=V.domain();Bd.select(this).call(Bd.svg.axis().orient("left").tickSize(4).outerTickSize(2).ticks(O,z.tickFormat).tickValues(z.ordinal?G:null).tickFormat(function(Z){return y5.isOrdinal(z)?Z:_Ue(z.model.dimensions[z.visibleIndex],Z)}).scale(V)),qz.font(A.selectAll("text"),z.model.tickFont)}),A.selectAll(".domain, .tick>line").attr("fill","none").attr("stroke","black").attr("stroke-opacity",.25).attr("stroke-width","1px"),A.selectAll("text").style("cursor","default");var L=E.selectAll("."+Rl.cn.axisHeading).data($m,tg);L.enter().append("g").classed(Rl.cn.axisHeading,!0);var _=L.selectAll("."+Rl.cn.axisTitle).data($m,tg);_.enter().append("text").classed(Rl.cn.axisTitle,!0).attr("text-anchor","middle").style("cursor","ew-resize").style("pointer-events",a?"none":"auto"),_.text(function(z){return z.label}).each(function(z){var O=Bd.select(this);qz.font(O,z.model.labelFont),XVt.convertToTspans(O,t)}).attr("transform",function(z){var O=fUe(z.model.labelAngle,z.model.labelSide),V=Rl.axisTitleOffset;return(O.dir>0?"":Jm(0,2*V+z.model.height))+WVt(O.degrees)+Jm(-V*O.dx,-V*O.dy)}).attr("text-anchor",function(z){var O=fUe(z.model.labelAngle,z.model.labelSide),V=Math.abs(O.dx),G=Math.abs(O.dy);return 2*V>G?O.dir*O.dx<0?"start":"end":"middle"});var k=E.selectAll("."+Rl.cn.axisExtent).data($m,tg);k.enter().append("g").classed(Rl.cn.axisExtent,!0);var M=k.selectAll("."+Rl.cn.axisExtentTop).data($m,tg);M.enter().append("g").classed(Rl.cn.axisExtentTop,!0),M.attr("transform",Jm(0,-Rl.axisExtentOffset));var g=M.selectAll("."+Rl.cn.axisExtentTopText).data($m,tg);g.enter().append("text").classed(Rl.cn.axisExtentTopText,!0).call(cUe),g.text(function(z){return hUe(z,!0)}).each(function(z){qz.font(Bd.select(this),z.model.rangeFont)});var P=k.selectAll("."+Rl.cn.axisExtentBottom).data($m,tg);P.enter().append("g").classed(Rl.cn.axisExtentBottom,!0),P.attr("transform",function(z){return Jm(0,z.model.height+Rl.axisExtentOffset)});var T=P.selectAll("."+Rl.cn.axisExtentBottomText).data($m,tg);T.enter().append("text").classed(Rl.cn.axisExtentBottomText,!0).attr("dy","0.75em").call(cUe),T.text(function(z){return hUe(z,!1)}).each(function(z){qz.font(Bd.select(this),z.model.rangeFont)}),mUe.ensureAxisBrush(E,c,t)}});var qK=ye((OK,SUe)=>{"use strict";var aGt=bUe(),oGt=wz(),wUe=LK().isVisible,AUe={};function TUe(e,t,r){var n=t.indexOf(r),i=e.indexOf(n);return i===-1&&(i+=t.length),i}function sGt(e,t){return function(n,i){return TUe(e,t,n)-TUe(e,t,i)}}var OK=SUe.exports=function(t,r){var n=t._fullLayout,i=oGt(t,[],AUe);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],C=b.map(function(M){return M.slice()}),E="dimensions["+x+"].constraintrange",A=n._tracePreGUI[t._fullData[s[v]]._fullInput.uid];if(A[E]===void 0){var L=p.constraintrange;A[E]=L||null}var _=t._fullData[s[v]].dimensions[x];C.length?(C.length===1&&(C=C[0]),p.constraintrange=C,_.constraintrange=C.slice(),C=[C]):(delete p.constraintrange,delete _.constraintrange,C=null);var k={};k[E]=C,t.emit("plotly_restyle",[k,[l[v]]])},f=function(v){t.emit("plotly_hover",v)},h=function(v){t.emit("plotly_unhover",v)},d=function(v,x){var b=sGt(x,o[v].filter(wUe));a[v].sort(b),o[v].filter(function(p){return!wUe(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]]])};aGt(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})}};OK.reglPrecompiled=AUe});var EUe=ye(RC=>{"use strict";var MUe=Oa(),lGt=Id().getModuleCalcData,uGt=qK(),cGt=Wp();RC.name="parcoords";RC.plot=function(e){var t=lGt(e.calcdata,"parcoords")[0];t.length&&uGt(e,t)};RC.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())};RC.toSVG=function(e){var t=e._fullLayout._glimages,r=MUe.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:cGt.svg,"xlink:href":o,preserveAspectRatio:"none",x:0,y:0,width:a.style.width,height:a.style.height})}n.each(i),window.setTimeout(function(){MUe.selectAll("#filterBarPattern").attr("id","filterBarPattern")},60)}});var kUe=ye((t_r,CUe)=>{"use strict";CUe.exports={attributes:wK(),supplyDefaults:VNe(),calc:HNe(),colorbar:{container:"line",min:"cmin",max:"cmax"},moduleType:"trace",name:"parcoords",basePlotModule:EUe(),categories:["gl","regl","noOpacity","noHover"],meta:{}}});var IUe=ye((r_r,PUe)=>{"use strict";var LUe=kUe();LUe.plot=qK();PUe.exports=LUe});var DUe=ye((i_r,RUe)=>{"use strict";RUe.exports=IUe()});var BK=ye((n_r,qUe)=>{"use strict";var zUe=Ao().extendFlat,fGt=Vl(),FUe=ec(),hGt=Tu(),OUe=Qo().hovertemplateAttrs,dGt=kc().attributes,vGt=zUe({editType:"calc"},hGt("line",{editTypeOverride:"calc"}),{shape:{valType:"enumerated",values:["linear","hspline"],dflt:"linear",editType:"plot"},hovertemplate:OUe({editType:"plot",arrayOk:!1},{keys:["count","probability"]})});qUe.exports={domain:dGt({name:"parcats",trace:!0,editType:"calc"}),hoverinfo:zUe({},fGt.hoverinfo,{flags:["count","probability"],editType:"plot",arrayOk:!1}),hoveron:{valType:"enumerated",values:["category","color","dimension"],dflt:"category",editType:"plot"},hovertemplate:OUe({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:FUe({editType:"calc"}),tickfont:FUe({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:vGt,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 UUe=ye((a_r,NUe)=>{"use strict";var _5=Dr(),pGt=Dv().hasColorscale,gGt=Jh(),mGt=kc().defaults,yGt=Yd(),BUe=BK(),_Gt=Az(),xGt=vv().isTypedArraySpec;function bGt(e,t,r,n,i){i("line.shape"),i("line.hovertemplate");var a=i("line.color",n.colorway[0]);if(pGt(e,"line")&&_5.isArrayOrTypedArray(a)){if(a.length)return i("line.colorscale"),gGt(e,t,n,i,{prefix:"line.",cLetter:"c"}),a.length;t.line.color=r}return 1/0}function wGt(e,t){function r(u,c){return _5.coerce(e,t,BUe.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=_5.isArrayOrTypedArray(a)&&a.length>0||xGt(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")}}NUe.exports=function(t,r,n,i){function a(u,c){return _5.coerce(t,r,BUe,u,c)}var o=yGt(t,r,{name:"dimensions",handleItemDefaults:wGt}),s=bGt(t,r,n,i,a);mGt(r,i,a),(!Array.isArray(o)||!o.length)&&(r.visible=!1),_Gt(r,o,"values",s),a("hoveron"),a("hovertemplate"),a("arrangement"),a("bundlecolors"),a("sortpaths"),a("counts");var l=i.font;_5.coerceFont(a,"labelfont",l,{overrideDflt:{size:Math.round(l.size)}}),_5.coerceFont(a,"tickfont",l,{autoShadowDflt:!0,overrideDflt:{size:Math.round(l.size/1.2)}})}});var GUe=ye((o_r,VUe)=>{"use strict";var TGt=Km().wrap,AGt=Dv().hasColorscale,SGt=Fv(),MGt=ZO(),EGt=So(),DC=Dr(),CGt=Eo();VUe.exports=function(t,r){var n=DC.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=MGt(g.values);for(var T=!0,z=0;z<P.length;z++)if(!CGt(P[z])){T=!1;break}P.sort(T?DC.sorterAsc:void 0),g.categoryorder==="category descending"&&(P=P.reverse())}return FGt(g.values,P)}),a,o,s;DC.isArrayOrTypedArray(r.counts)?a=r.counts:a=[r.counts],zGt(n),n.forEach(function(g,P){OGt(g,i[P])});var l=r.line,u;l?(AGt(r,"line")&&SGt(t,r,{vals:r.line.color,containerStr:"line",cLetter:"c"}),u=EGt.tryColorscale(l)):u=DC.identity;function c(g){var P,T;return DC.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),C=b+"-"+p.rawColor;h[C]===void 0&&(h[C]=RGt(b,p.color,p.rawColor)),DGt(h[C],v,o)}var E=n.map(function(g,P){return LGt(P,g._index,g._displayindex,g.label,s)});for(v=0;v<f;v++)for(o=a[v%a.length],x=0;x<E.length;x++){var A=E[x].containerInd,L=i[x].inds[v],_=E[x].categories;if(_[L]===void 0){var k=r.dimensions[A]._categoryarray[L],M=r.dimensions[A]._ticktext[L];_[L]=PGt(x,L,k,M)}IGt(_[L],v,o)}return TGt(kGt(E,h,s))};function kGt(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 LGt(e,t,r,n,i){return{dimensionInd:e,containerInd:t,displayInd:r,dimensionLabel:n,count:i,categories:[],dragX:null}}function PGt(e,t,r,n){return{dimensionInd:e,categoryInd:t,categoryValue:r,displayInd:t,categoryLabel:n,valueInds:[],count:0,dragY:null}}function IGt(e,t,r){e.valueInds.push(t),e.count+=r}function RGt(e,t,r){return{categoryInds:e,color:t,rawColor:r,valueInds:[],count:0}}function DGt(e,t,r){e.valueInds.push(t),e.count+=r}function FGt(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 zGt(e){var t=e.map(function(n){return n.displayindex}),r;if(qGt(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 OGt(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 qGt(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 $Ue=ye((s_r,JUe)=>{"use strict";var Dl=Oa(),BGt=(R2(),B1(I2)).interpolateNumber,NGt=UP(),OC=vf(),yx=Dr(),FC=yx.strTranslate,HUe=So(),NK=cd(),UGt=iu();function VGt(e,t,r,n){var i=t._context.staticPlot,a=e.map(iHt.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(C){return FC(C.x,C.y)}),l.append("g").attr("class","paths");var u=s.select("g.paths"),c=u.selectAll("path.path").data(function(C){return C.paths},u1);c.attr("fill",function(C){return C.model.color});var f=c.enter().append("path").attr("class","path").attr("stroke-opacity",0).attr("fill",function(C){return C.model.color}).attr("fill-opacity",0);GK(f),c.attr("d",function(C){return C.svgD}),f.empty()||c.sort(UK),c.exit().remove(),c.on("mouseover",GGt).on("mouseout",HGt).on("click",jGt),l.append("g").attr("class","dimensions");var h=s.select("g.dimensions"),d=h.selectAll("g.dimension").data(function(C){return C.dimensions},u1);d.enter().append("g").attr("class","dimension"),d.attr("transform",function(C){return FC(C.x,0)}),d.exit().remove();var v=d.selectAll("g.category").data(function(C){return C.categories},u1),x=v.enter().append("g").attr("class","category");v.attr("transform",function(C){return FC(0,C.y)}),x.append("rect").attr("class","catrect").attr("pointer-events","none"),v.select("rect.catrect").attr("fill","none").attr("width",function(C){return C.width}).attr("height",function(C){return C.height}),WUe(x);var b=v.selectAll("rect.bandrect").data(function(C){return C.bands},u1);b.each(function(){yx.raiseToTop(this)}),b.attr("fill",function(C){return C.color});var p=b.enter().append("rect").attr("class","bandrect").attr("stroke-opacity",0).attr("fill",function(C){return C.color}).attr("fill-opacity",0);b.attr("fill",function(C){return C.color}).attr("width",function(C){return C.width}).attr("height",function(C){return C.height}).attr("y",function(C){return C.y}).attr("cursor",function(C){return C.parcatsViewModel.arrangement==="fixed"?"default":C.parcatsViewModel.arrangement==="perpendicular"?"ns-resize":"move"}),jK(p),b.exit().remove(),x.append("text").attr("class","catlabel").attr("pointer-events","none"),v.select("text.catlabel").attr("text-anchor",function(C){return zC(C)?"start":"end"}).attr("alignment-baseline","middle").style("fill","rgb(0, 0, 0)").attr("x",function(C){return zC(C)?C.width+5:-5}).attr("y",function(C){return C.height/2}).text(function(C){return C.model.categoryLabel}).each(function(C){HUe.font(Dl.select(this),C.parcatsViewModel.categorylabelfont),UGt.convertToTspans(Dl.select(this),t)}),x.append("text").attr("class","dimlabel"),v.select("text.dimlabel").attr("text-anchor","middle").attr("alignment-baseline","baseline").attr("cursor",function(C){return C.parcatsViewModel.arrangement==="fixed"?"default":"ew-resize"}).attr("x",function(C){return C.width/2}).attr("y",-5).text(function(C,E){return E===0?C.parcatsViewModel.model.dimensions[C.model.dimensionInd].dimensionLabel:null}).each(function(C){HUe.font(Dl.select(this),C.parcatsViewModel.labelfont)}),v.selectAll("rect.bandrect").on("mouseover",$Gt).on("mouseout",QGt),v.exit().remove(),d.call(Dl.behavior.drag().origin(function(C){return{x:C.x,y:0}}).on("dragstart",eHt).on("drag",tHt).on("dragend",rHt)),s.each(function(C){C.traceSelection=Dl.select(this),C.pathSelection=Dl.select(this).selectAll("g.paths").selectAll("path.path"),C.dimensionSelection=Dl.select(this).selectAll("g.dimensions").selectAll("g.dimension")}),s.exit().remove()}JUe.exports=function(e,t,r,n){VGt(r,e,n,t)};function u1(e){return e.key}function zC(e){var t=e.parcatsViewModel.dimensions.length,r=e.parcatsViewModel.dimensions[t-1].model.dimensionInd;return e.model.dimensionInd===r}function UK(e,t){return e.model.rawColor>t.model.rawColor?1:e.model.rawColor<t.model.rawColor?-1:0}function GGt(e){if(!e.parcatsViewModel.dragDimension&&e.parcatsViewModel.hoverinfoItems.indexOf("skip")===-1){yx.raiseToTop(this),HK(Dl.select(this));var t=qC(e),r=VK(e);if(e.parcatsViewModel.graphDiv.emit("plotly_hover",{points:t,event:Dl.event,constraints:r}),e.parcatsViewModel.hoverinfoItems.indexOf("none")===-1){var n=Dl.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=NK.mostReadable(e.model.color,["black","white"]),p=e.model.count,C=p/e.parcatsViewModel.model.count,E={countLabel:p,probabilityLabel:C.toFixed(3)},A=[];e.parcatsViewModel.hoverinfoItems.indexOf("count")!==-1&&A.push(["Count:",E.countLabel].join(" ")),e.parcatsViewModel.hoverinfoItems.indexOf("probability")!==-1&&A.push(["P:",E.probabilityLabel].join(" "));var L=A.join("<br>"),_=Dl.mouse(i)[0];OC.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:E,eventData:[{data:a._input,fullData:a,count:p,probability:C}]},{container:o._hoverlayer.node(),outerContainer:o._paper.node(),gd:i})}}}function HGt(e){if(!e.parcatsViewModel.dragDimension&&(GK(Dl.select(this)),OC.loneUnhover(e.parcatsViewModel.graphDiv._fullLayout._hoverlayer.node()),e.parcatsViewModel.pathSelection.sort(UK),e.parcatsViewModel.hoverinfoItems.indexOf("skip")===-1)){var t=qC(e),r=VK(e);e.parcatsViewModel.graphDiv.emit("plotly_unhover",{points:t,event:Dl.event,constraints:r})}}function qC(e){for(var t=[],r=ZUe(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 VK(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 jGt(e){if(e.parcatsViewModel.hoverinfoItems.indexOf("skip")===-1){var t=qC(e),r=VK(e);e.parcatsViewModel.graphDiv.emit("plotly_click",{points:t,event:Dl.event,constraints:r})}}function GK(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 HK(e){e.attr("fill-opacity",.8).attr("stroke",function(t){return NK.mostReadable(t.model.color,["black","white"])}).attr("stroke-width",.3)}function WGt(e){e.select("rect.catrect").attr("stroke","black").attr("stroke-width",2.5)}function WUe(e){e.select("rect.catrect").attr("stroke","black").attr("stroke-width",1).attr("stroke-opacity",1)}function XGt(e){e.attr("stroke","black").attr("stroke-width",1.5)}function jK(e){e.attr("stroke","black").attr("stroke-width",.2).attr("stroke-opacity",1).attr("fill-opacity",1)}function Nz(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 ZGt(e){var t=Dl.select(e.parentNode).selectAll("rect.bandrect");t.each(function(r){var n=Nz(r);HK(n),n.each(function(){yx.raiseToTop(this)})}),WGt(Dl.select(e.parentNode))}function YGt(e){var t=Dl.select(e).datum(),r=Nz(t);HK(r),r.each(function(){yx.raiseToTop(this)}),Dl.select(e.parentNode).selectAll("rect.bandrect").filter(function(n){return n.color===t.color}).each(function(){yx.raiseToTop(this),XGt(Dl.select(this))})}function WK(e,t,r){var n=Dl.select(e).datum(),i=n.categoryViewModel.model,a=n.parcatsViewModel.graphDiv,o=Dl.select(e.parentNode).selectAll("rect.bandrect"),s=[];o.each(function(u){var c=Nz(u);c.each(function(f){Array.prototype.push.apply(s,qC(f))})});var l={};l[i.dimensionInd]=i.categoryValue,a.emit(t,{points:s,event:r,constraints:l})}function XK(e,t,r){var n=Dl.select(e).datum(),i=n.categoryViewModel.model,a=n.parcatsViewModel.graphDiv,o=Nz(n),s=[];o.each(function(u){Array.prototype.push.apply(s,qC(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 XUe(e,t,r){e._fullLayout._calcInverseTransform(e);var n=e._fullLayout._invScaleX,i=e._fullLayout._invScaleY,a=Dl.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)},C=[];s.parcatsViewModel.hoverinfoItems.indexOf("count")!==-1&&C.push(["Count:",p.countLabel].join(" ")),s.parcatsViewModel.hoverinfoItems.indexOf("probability")!==-1&&C.push(["P("+p.categoryLabel+"):",p.probabilityLabel].join(" "));var E=C.join("<br>");return{trace:c,x:n*(h-t.left),y:i*(f-t.top),text:E,color:"lightgray",borderColor:"black",fontFamily:'Monaco, "Courier New", monospace',fontSize:12,fontColor:"black",idealAlign:d,hovertemplate:c.hovertemplate,hovertemplateLabels:p,eventData:[{data:c._input,fullData:c,count:v,category:x,probability:b}]}}function KGt(e,t,r){var n=[];return Dl.select(r.parentNode.parentNode).selectAll("g.category").select("rect.catrect").each(function(){var i=this;n.push(XUe(e,t,i))}),n}function JGt(e,t,r){e._fullLayout._calcInverseTransform(e);var n=e._fullLayout._invScaleX,i=e._fullLayout._invScaleY,a=r.getBoundingClientRect(),o=Dl.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,C=0;l.pathSelection.each(function(P){P.model.color===o.color&&(C+=P.model.count)});var E=b/x,A=b/C,L=b/p,_={countLabel:b,categoryLabel:v,probabilityLabel:E.toFixed(3)},k=[];s.parcatsViewModel.hoverinfoItems.indexOf("count")!==-1&&k.push(["Count:",_.countLabel].join(" ")),s.parcatsViewModel.hoverinfoItems.indexOf("probability")!==-1&&(k.push("P(color \u2229 "+v+"): "+_.probabilityLabel),k.push("P("+v+" | color): "+A.toFixed(3)),k.push("P(color | "+v+"): "+L.toFixed(3)));var M=k.join("<br>"),g=NK.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:E,categorycount:p,colorcount:C,bandcolorcount:b}]}}function $Gt(e){if(!e.parcatsViewModel.dragDimension&&e.parcatsViewModel.hoverinfoItems.indexOf("skip")===-1){var t=Dl.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"?(YGt(o),XK(o,"plotly_hover",Dl.event)):(ZGt(o),WK(o,"plotly_hover",Dl.event)),e.parcatsViewModel.hoverinfoItems.indexOf("none")===-1){var s;a==="category"?s=XUe(r,i,o):a==="color"?s=JGt(r,i,o):a==="dimension"&&(s=KGt(r,i,o)),s&&OC.loneHover(s,{container:n._hoverlayer.node(),outerContainer:n._paper.node(),gd:r})}}}function QGt(e){var t=e.parcatsViewModel;if(!t.dragDimension&&(GK(t.pathSelection),WUe(t.dimensionSelection.selectAll("g.category")),jK(t.dimensionSelection.selectAll("g.category").selectAll("rect.bandrect")),OC.loneUnhover(t.graphDiv._fullLayout._hoverlayer.node()),t.pathSelection.sort(UK),t.hoverinfoItems.indexOf("skip")===-1)){var r=e.parcatsViewModel.hoveron,n=this;r==="color"?XK(n,"plotly_unhover",Dl.event):WK(n,"plotly_unhover",Dl.event)}}function eHt(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,Dl.select(this).selectAll("g.category").select("rect.catrect").each(function(t){var r=Dl.mouse(this)[0],n=Dl.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),Dl.select(this.parentNode).selectAll("rect.bandrect").each(function(i){i.y<n&&n<=i.y+i.height&&(e.potentialClickBand=this)}))}),e.parcatsViewModel.dragDimension=e,OC.loneUnhover(e.parcatsViewModel.graphDiv._fullLayout._hoverlayer.node()))}function tHt(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+=Dl.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=Dl.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}YK(e.parcatsViewModel),ZK(e.parcatsViewModel),KUe(e.parcatsViewModel),YUe(e.parcatsViewModel)}}function rHt(e){if(e.parcatsViewModel.arrangement!=="fixed"&&e.dragDimensionDisplayInd!==null){Dl.select(this).selectAll("text").attr("font-weight","normal");var t={},r=ZUe(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"?XK(e.potentialClickBand,"plotly_click",Dl.event.sourceEvent):WK(e.potentialClickBand,"plotly_click",Dl.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,YK(e.parcatsViewModel),ZK(e.parcatsViewModel);var f=Dl.transition().duration(300).ease("cubic-in-out");f.each(function(){KUe(e.parcatsViewModel,!0),YUe(e.parcatsViewModel,!0)}).each("end",function(){(i||a)&&NGt.restyle(e.parcatsViewModel.graphDiv,t,[r])})}}function ZUe(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 YUe(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 KUe(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 FC(l.x,0)}),r(n).attr("transform",function(l){return FC(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 zC(l)?"start":"end"}).attr("x",function(l){return zC(l)?l.width+5:-5}).each(function(l){var u,c;zC(l)?(u=l.width+5,c="start"):(u=-5,c="end"),Dl.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}),jK(s),o.each(function(){yx.raiseToTop(this)}),o.exit().remove()}function iHt(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&&(YK(x),ZK(x)),x}function jUe(e,t,r,n,i){var a=[],o=[],s,l;for(l=0;l<r.length-1;l++)s=BGt(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 ZK(e){var t=e.dimensions,r=e.model,n=t.map(function(O){return O.categories.map(function(V){return V.y})}),i=e.model.dimensions.map(function(O){return O.categories.map(function(V){return V.displayInd})}),a=e.model.dimensions.map(function(O){return O.displayInd}),o=e.dimensions.map(function(O){return O.model.dimensionInd}),s=t.map(function(O){return O.x}),l=t.map(function(O){return O.width}),u=[];for(var c in r.paths)r.paths.hasOwnProperty(c)&&u.push(r.paths[c]);function f(O){var V=O.categoryInds.map(function(Z,H){return i[H][Z]}),G=o.map(function(Z){return V[Z]});return G}u.sort(function(O,V){var G=f(O),Z=f(V);return e.sortpaths==="backward"&&(G.reverse(),Z.reverse()),G.push(O.valueInds[0]),Z.push(V.valueInds[0]),e.bundlecolors&&(G.unshift(O.rawColor),Z.unshift(V.rawColor)),G<Z?-1:G>Z?1:0});for(var h=new Array(u.length),d=t[0].model.count,v=t[0].categories.map(function(O){return O.height}).reduce(function(O,V){return O+V}),x=0;x<u.length;x++){var b=u[x],p;d>0?p=v*(b.count/d):p=0;for(var C=new Array(n.length),E=0;E<b.categoryInds.length;E++){var A=b.categoryInds[E],L=i[E][A],_=a[E];C[_]=n[_][L],n[_][L]+=p;var k=e.dimensions[_].categories[L],M=k.bands.length,g=k.bands[M-1];if(g===void 0||b.rawColor!==g.rawColor){var P=g===void 0?0:g.y+g.height;k.bands.push({key:P,color:b.color,rawColor:b.rawColor,height:p,width:k.width,count:b.count,y:P,categoryViewModel:k,parcatsViewModel:e})}else{var T=k.bands[M-1];T.height+=p,T.count+=b.count}}var z;e.pathShape==="hspline"?z=jUe(s,C,l,p,.5):z=jUe(s,C,l,p,0),h[x]={key:b.valueInds[0],model:b,height:p,leftXs:s,topYs:C,dimWidths:l,svgD:z,parcatsViewModel:e}}e.paths=h}function YK(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(nHt(e,a))}e.dimensions=r}function nHt(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,C,E,A=(c-f)*h/2,L=t.categories.map(function(_){return{displayInd:_.displayInd,categoryInd:_.categoryInd}});for(L.sort(function(_,k){return _.displayInd-k.displayInd}),E=0;E<f;E++)C=L[E].categoryInd,b=t.categories[C],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 KK=ye((l_r,QUe)=>{"use strict";var aHt=$Ue();QUe.exports=function(t,r,n,i){var a=t._fullLayout,o=a._paper,s=a._size;aHt(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 tVe=ye(Uz=>{"use strict";var oHt=Id().getModuleCalcData,sHt=KK(),eVe="parcats";Uz.name=eVe;Uz.plot=function(e,t,r,n){var i=oHt(e.calcdata,eVe);if(i.length){var a=i[0];sHt(e,a,r,n)}};Uz.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 iVe=ye((c_r,rVe)=>{"use strict";rVe.exports={attributes:BK(),supplyDefaults:UUe(),calc:GUe(),plot:KK(),colorbar:{container:"line",min:"cmin",max:"cmax"},moduleType:"trace",name:"parcats",basePlotModule:tVe(),categories:["noOpacity"],meta:{}}});var aVe=ye((f_r,nVe)=>{"use strict";nVe.exports=iVe()});var c1=ye((h_r,hVe)=>{"use strict";var lHt=Y1(),oVe="1.13.4",cVe='\xA9 <a target="_blank" href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors',sVe=['\xA9 <a target="_blank" href="https://carto.com/">Carto</a>',cVe].join(" "),lVe=['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(" "),uHt=['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(" "),fVe={"open-street-map":{id:"osm",version:8,sources:{"plotly-osm-tiles":{type:"raster",attribution:cVe,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:sVe,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:sVe,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:lVe,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:lVe,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:uHt,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"}},uVe=lHt(fVe);hVe.exports={requiredVersion:oVe,styleUrlPrefix:"mapbox://styles/mapbox/",styleUrlSuffix:"v9",styleValuesMapbox:["basic","streets","outdoors","light","dark","satellite","satellite-streets"],styleValueDflt:"basic",stylesNonMapbox:fVe,styleValuesNonMapbox:uVe,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@"+oVe+"."].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:",uVe.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 BC=ye((d_r,gVe)=>{"use strict";var dVe=Dr(),vVe=Ca().defaultLine,cHt=kc().attributes,fHt=ec(),hHt=pf().textposition,dHt=mc().overrideAll,vHt=pl().templatedArray,JK=c1(),pVe=fHt({noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0});pVe.family.dflt="Open Sans Regular, Arial Unicode MS Regular";var pHt=gVe.exports=dHt({_arrayAttrRegexps:[dVe.counterRegex("mapbox",".layers",!0)],domain:cHt({name:"mapbox"}),accesstoken:{valType:"string",noBlank:!0,strict:!0},style:{valType:"any",values:JK.styleValuesMapbox.concat(JK.styleValuesNonMapbox),dflt:JK.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:vHt("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:vVe},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:vVe}},symbol:{icon:{valType:"string",dflt:"marker"},iconsize:{valType:"number",dflt:10},text:{valType:"string",dflt:""},placement:{valType:"enumerated",values:["point","line","line-center"],dflt:"point"},textfont:pVe,textposition:dVe.extendFlat({},hHt,{arrayOk:!1})}})},"plot","from-root");pHt.uirevision={valType:"any",editType:"none"}});var Vz=ye((v_r,_Ve)=>{"use strict";var gHt=Qo().hovertemplateAttrs,mHt=Qo().texttemplateAttrs,yHt=Eg(),NC=G2(),x5=pf(),mVe=BC(),_Ht=Vl(),xHt=Tu(),ew=Ao().extendFlat,bHt=mc().overrideAll,wHt=BC(),yVe=NC.line,b5=NC.marker;_Ve.exports=bHt({lon:NC.lon,lat:NC.lat,cluster:{enabled:{valType:"boolean"},maxzoom:ew({},wHt.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({},b5.opacity,{dflt:1})},mode:ew({},x5.mode,{dflt:"markers"}),text:ew({},x5.text,{}),texttemplate:mHt({editType:"plot"},{keys:["lat","lon","text"]}),hovertext:ew({},x5.hovertext,{}),line:{color:yVe.color,width:yVe.width},connectgaps:x5.connectgaps,marker:ew({symbol:{valType:"string",dflt:"circle",arrayOk:!0},angle:{valType:"number",dflt:"auto",arrayOk:!0},allowoverlap:{valType:"boolean",dflt:!1},opacity:b5.opacity,size:b5.size,sizeref:b5.sizeref,sizemin:b5.sizemin,sizemode:b5.sizemode},xHt("marker")),fill:NC.fill,fillcolor:yHt(),textfont:mVe.layers.symbol.textfont,textposition:mVe.layers.symbol.textposition,below:{valType:"string"},selected:{marker:x5.selected.marker},unselected:{marker:x5.unselected.marker},hoverinfo:ew({},_Ht.hoverinfo,{flags:["lon","lat","text","name"]}),hovertemplate:gHt()},"calc","nested")});var $K=ye((p_r,xVe)=>{"use strict";var THt=["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"];xVe.exports={isSupportedFont:function(e){return THt.indexOf(e)!==-1}}});var TVe=ye((g_r,wVe)=>{"use strict";var UC=Dr(),QK=Ru(),AHt=$p(),SHt=R0(),MHt=D0(),EHt=Ig(),bVe=Vz(),CHt=$K().isSupportedFont;wVe.exports=function(t,r,n,i){function a(p,C){return UC.coerce(t,r,bVe,p,C)}function o(p,C){return UC.coerce2(t,r,bVe,p,C)}var s=kHt(t,r,a);if(!s){r.visible=!1;return}if(a("text"),a("texttemplate"),a("hovertext"),a("hovertemplate"),a("mode"),a("below"),QK.hasMarkers(r)){AHt(t,r,n,i,a,{noLine:!0,noAngle:!0}),a("marker.allowoverlap"),a("marker.angle");var l=r.marker;l.symbol!=="circle"&&(UC.isArrayOrTypedArray(l.size)&&(l.size=l.size[0]),UC.isArrayOrTypedArray(l.color)&&(l.color=l.color[0]))}QK.hasLines(r)&&(SHt(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||QK.hasText(r)){var b=i.font.family;MHt(t,r,i,a,{noSelect:!0,noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0,font:{family:CHt(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"&&EHt(t,r,n,a),UC.coerceSelectionMarkerOpacity(r,a)};function kHt(e,t,r){var n=r("lon")||[],i=r("lat")||[],a=Math.min(n.length,i.length);return t._length=a,a}});var eJ=ye((m_r,SVe)=>{"use strict";var AVe=ho();SVe.exports=function(t,r,n){var i={},a=n[r.subplot]._subplot,o=a.mockAxis,s=t.lonlat;return i.lonLabel=AVe.tickText(o,o.c2l(s[0]),!0).text,i.latLabel=AVe.tickText(o,o.c2l(s[1]),!0).text,i}});var tJ=ye((y_r,EVe)=>{"use strict";var MVe=Dr();EVe.exports=function(t,r){var n=t.split(" "),i=n[0],a=n[1],o=MVe.isArrayOrTypedArray(r)?MVe.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 RVe=ye((__r,IVe)=>{"use strict";var LVe=Eo(),av=Dr(),LHt=hs().BADNUM,Hz=rx(),CVe=tc(),PHt=So(),IHt=S3(),jz=Ru(),RHt=$K().isSupportedFont,DHt=tJ(),FHt=rp().appendArrayPointValue,zHt=iu().NEWLINES,OHt=iu().BR_TAG_ALL;IVe.exports=function(t,r){var n=r[0].trace,i=n.visible===!0&&n._length!==0,a=n.fill!=="none",o=jz.hasLines(n),s=jz.hasMarkers(n),l=jz.hasText(n),u=s&&n.marker.symbol==="circle",c=s&&n.marker.symbol!=="circle",f=n.cluster&&n.cluster.enabled,h=Gz("fill"),d=Gz("line"),v=Gz("circle"),x=Gz("symbol"),b={fill:h,line:d,circle:v,symbol:x};if(!i)return b;var p;if((a||o)&&(p=Hz.calcTraceToLineCoords(r)),a&&(h.geojson=Hz.makePolygon(p),h.layout.visibility="visible",av.extendFlat(h.paint,{"fill-color":n.fillcolor})),o&&(d.geojson=Hz.makeLine(p),d.layout.visibility="visible",av.extendFlat(d.paint,{"line-width":n.line.width,"line-color":n.line.color,"line-opacity":n.opacity})),u){var C=qHt(r);v.geojson=C.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":iJ(n.cluster.color,n.cluster.step),"circle-radius":iJ(n.cluster.size,n.cluster.step),"circle-opacity":iJ(n.cluster.opacity,n.cluster.step)}},b.clusterCount={type:"symbol",filter:["has","point_count"],paint:{},layout:{"text-field":"{point_count_abbreviated}","text-font":kVe(n),"text-size":12}}),av.extendFlat(v.paint,{"circle-color":C.mcc,"circle-radius":C.mrc,"circle-opacity":C.mo})}if(u&&f&&(v.filter=["!",["has","point_count"]]),(c||l)&&(x.geojson=BHt(r,t),av.extendFlat(x.layout,{visibility:"visible","icon-image":"{symbol}-15","text-field":"{text}"}),c&&(av.extendFlat(x.layout,{"icon-size":n.marker.size/10}),"angle"in n.marker&&n.marker.angle!=="auto"&&av.extendFlat(x.layout,{"icon-rotate":{type:"identity",property:"angle"},"icon-rotation-alignment":"map"}),x.layout["icon-allow-overlap"]=n.marker.allowoverlap,av.extendFlat(x.paint,{"icon-opacity":n.opacity*n.marker.opacity,"icon-color":n.marker.color})),l)){var E=(n.marker||{}).size,A=DHt(n.textposition,E);av.extendFlat(x.layout,{"text-size":n.textfont.size,"text-anchor":A.anchor,"text-offset":A.offset,"text-font":kVe(n)}),av.extendFlat(x.paint,{"text-color":n.textfont.color,"text-opacity":n.opacity})}return b};function Gz(e){return{type:e,geojson:Hz.makeBlank(),layout:{visibility:"none"},filter:null,paint:{}}}function qHt(e){var t=e[0].trace,r=t.marker,n=t.selectedpoints,i=av.isArrayOrTypedArray(r.color),a=av.isArrayOrTypedArray(r.size),o=av.isArrayOrTypedArray(r.opacity),s;function l(E){return t.opacity*E}function u(E){return E/2}var c;i&&(CVe.hasColorscale(t,"marker")?c=CVe.makeColorScaleFuncFromTrace(r):c=av.identity);var f;a&&(f=IHt(t));var h;o&&(h=function(E){var A=LVe(E)?+av.constrain(E,0,1):0;return l(A)});var d=[];for(s=0;s<e.length;s++){var v=e[s],x=v.lonlat;if(!PVe(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=PHt.makeSelectedPointStyleFns(t),s=0;s<d.length;s++){var C=d[s].properties;p.selectedOpacityFn&&(C.mo=l(p.selectedOpacityFn(C))),p.selectedColorFn&&(C.mcc=p.selectedColorFn(C)),p.selectedSizeFn&&(C.mrc=p.selectedSizeFn(C))}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 BHt(e,t){for(var r=t._fullLayout,n=e[0].trace,i=n.marker||{},a=i.symbol,o=i.angle,s=a!=="circle"?rJ(a):Wz,l=o!=="auto"?rJ(o,!0):Wz,u=jz.hasText(n)?rJ(n.text):Wz,c=[],f=0;f<e.length;f++){var h=e[f];if(!PVe(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={};FHt(p,n,h.i);var C=n._meta||{};v=av.texttemplateString(x,b,r._d3locale,p,h,C)}else v=u(f);v&&(v=v.replace(zHt,"").replace(OHt,`
|
||
`)),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 rJ(e,t){return av.isArrayOrTypedArray(e)?t?function(r){return LVe(e[r])?+e[r]:0}:function(r){return e[r]}:e?function(){return e}:Wz}function Wz(){return""}function PVe(e){return e[0]===LHt}function iJ(e,t){var r;if(av.isArrayOrTypedArray(e)&&av.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 kVe(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"),RHt(s)||(s=r);var l=s.split(", ");return l}});var OVe=ye((x_r,zVe)=>{"use strict";var NHt=Dr(),DVe=RVe(),w5=c1().traceLayerPrefix,rg={cluster:["cluster","clusterCount","circle"],nonCluster:["fill","line","circle","symbol"]};function FVe(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:w5+t+"-fill",line:w5+t+"-line",circle:w5+t+"-circle",symbol:w5+t+"-symbol",cluster:w5+t+"-cluster",clusterCount:w5+t+"-cluster-count"},this.below=null}var VC=FVe.prototype;VC.addSource=function(e,t,r){var n={type:"geojson",data:t.geojson};r&&r.enabled&&NHt.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)};VC.setSourceData=function(e,t){this.subplot.map.getSource(this.sourceIds[e]).setData(t.geojson)};VC.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)};VC.update=function(t){var r=t[0].trace,n=this.subplot,i=n.map,a=DVe(n.gd,t),o=n.belowLookup["trace-"+this.uid],s=!!(r.cluster&&r.cluster.enabled),l=!!this.clusterEnabled,u=this;function c(E){E||u.addSource("circle",a.circle,r.cluster);for(var A=rg.cluster,L=0;L<A.length;L++){var _=A[L],k=a[_];u.addLayer(_,k,o)}}function f(E){for(var A=rg.cluster,L=A.length-1;L>=0;L--){var _=A[L];i.removeLayer(u.layerIds[_])}E||i.removeSource(u.sourceIds.circle)}function h(E){for(var A=rg.nonCluster,L=0;L<A.length;L++){var _=A[L],k=a[_];E||u.addSource(_,k),u.addLayer(_,k,o)}}function d(E){for(var A=rg.nonCluster,L=A.length-1;L>=0;L--){var _=A[L];i.removeLayer(u.layerIds[_]),E||i.removeSource(u.sourceIds[_])}}function v(E){l?f(E):d(E)}function x(E){s?c(E):h(E)}function b(){for(var E=s?rg.cluster:rg.nonCluster,A=0;A<E.length;A++){var L=E[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,C=r.visible!==!0;C?p||v():p?C||x():l!==s?(v(),x()):(this.below!==o&&(v(!0),x(!0)),b()),this.clusterEnabled=s,this.isHidden=C,this.below=o,t[0].trace._glTrace=this};VC.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])}};zVe.exports=function(t,r){var n=r[0].trace,i=n.cluster&&n.cluster.enabled,a=n.visible!==!0,o=new FVe(t,n.uid,i,a),s=DVe(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 Xz=ye((b_r,BVe)=>{"use strict";var UHt=vf(),nJ=Dr(),VHt=oT(),GHt=nJ.fillText,HHt=hs().BADNUM,jHt=c1().traceLayerPrefix;function WHt(e,t,r){var n=e.cd,i=n[0].trace,a=e.xa,o=e.ya,s=e.subplot,l=[],u=jHt+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]===HHt||c&&l.indexOf(M.i+1)===-1)return 1/0;var P=nJ.modHalf(g[0],360),T=g[1],z=s.project([P,T]),O=z.x-a.c2p([v,T]),V=z.y-o.c2p([P,r]),G=Math.max(3,M.mrc||0);return Math.max(Math.sqrt(O*O+V*V)-G,1-3/G)}if(UHt.getClosest(n,x,e),e.index!==!1){var b=n[e.index],p=b.lonlat,C=[nJ.modHalf(p[0],360)+d,p[1]],E=a.c2p(C),A=o.c2p(C),L=b.mrc||1;e.x0=E-L,e.x1=E+L,e.y0=A-L,e.y1=A+L;var _={};_[i.subplot]={_subplot:s};var k=i._module.formatLabels(b,i,_);return e.lonLabel=k.lonLabel,e.latLabel=k.latLabel,e.color=VHt(i,b),e.extraText=qVe(i,b,n[0].t.labels),e.hovertemplate=i.hovertemplate,[e]}}function qVe(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)&&GHt(t,e,u),u.join("<br>")}BVe.exports={hoverPoints:WHt,getExtraText:qVe}});var UVe=ye((w_r,NVe)=>{"use strict";NVe.exports=function(t,r){return t.lon=r.lon,t.lat=r.lat,t}});var GVe=ye((T_r,VVe)=>{"use strict";var XHt=Dr(),ZHt=Ru(),YHt=hs().BADNUM;VVe.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=[],s=n[0].trace,l;if(!ZHt.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]!==YHt){var f=[XHt.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 sJ=ye((aJ,oJ)=>{(function(e,t){typeof aJ=="object"&&typeof oJ!="undefined"?oJ.exports=t():(e=e||self,e.mapboxgl=t())})(aJ,function(){"use strict";var e,t,r;function n(i,a){if(!e)e=a;else if(!t)t=a;else{var o="var sharedChunk = {}; ("+e+")(sharedChunk); ("+t+")(sharedChunk);",s={};e(s),r=a(s),typeof window!="undefined"&&(r.workerUrl=window.URL.createObjectURL(new Blob([o],{type:"text/javascript"})))}}return n(["exports"],function(i){"use strict";function a(m,y){return y={exports:{}},m(y,y.exports),y.exports}var o="1.13.4",s=l;function l(m,y,I,U){this.cx=3*m,this.bx=3*(I-m)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*y,this.by=3*(U-y)-this.cy,this.ay=1-this.cy-this.by,this.p1x=m,this.p1y=U,this.p2x=I,this.p2y=U}l.prototype.sampleCurveX=function(m){return((this.ax*m+this.bx)*m+this.cx)*m},l.prototype.sampleCurveY=function(m){return((this.ay*m+this.by)*m+this.cy)*m},l.prototype.sampleCurveDerivativeX=function(m){return(3*this.ax*m+2*this.bx)*m+this.cx},l.prototype.solveCurveX=function(m,y){typeof y=="undefined"&&(y=1e-6);var I,U,$,ae,he;for($=m,he=0;he<8;he++){if(ae=this.sampleCurveX($)-m,Math.abs(ae)<y)return $;var Oe=this.sampleCurveDerivativeX($);if(Math.abs(Oe)<1e-6)break;$=$-ae/Oe}if(I=0,U=1,$=m,$<I)return I;if($>U)return U;for(;I<U;){if(ae=this.sampleCurveX($),Math.abs(ae-m)<y)return $;m>ae?I=$:U=$,$=(U-I)*.5+I}return $},l.prototype.solve=function(m,y){return this.sampleCurveY(this.solveCurveX(m,y))};var u=c;function c(m,y){this.x=m,this.y=y}c.prototype={clone:function(){return new c(this.x,this.y)},add:function(m){return this.clone()._add(m)},sub:function(m){return this.clone()._sub(m)},multByPoint:function(m){return this.clone()._multByPoint(m)},divByPoint:function(m){return this.clone()._divByPoint(m)},mult:function(m){return this.clone()._mult(m)},div:function(m){return this.clone()._div(m)},rotate:function(m){return this.clone()._rotate(m)},rotateAround:function(m,y){return this.clone()._rotateAround(m,y)},matMult:function(m){return this.clone()._matMult(m)},unit:function(){return this.clone()._unit()},perp:function(){return this.clone()._perp()},round:function(){return this.clone()._round()},mag:function(){return Math.sqrt(this.x*this.x+this.y*this.y)},equals:function(m){return this.x===m.x&&this.y===m.y},dist:function(m){return Math.sqrt(this.distSqr(m))},distSqr:function(m){var y=m.x-this.x,I=m.y-this.y;return y*y+I*I},angle:function(){return Math.atan2(this.y,this.x)},angleTo:function(m){return Math.atan2(this.y-m.y,this.x-m.x)},angleWith:function(m){return this.angleWithSep(m.x,m.y)},angleWithSep:function(m,y){return Math.atan2(this.x*y-this.y*m,this.x*m+this.y*y)},_matMult:function(m){var y=m[0]*this.x+m[1]*this.y,I=m[2]*this.x+m[3]*this.y;return this.x=y,this.y=I,this},_add:function(m){return this.x+=m.x,this.y+=m.y,this},_sub:function(m){return this.x-=m.x,this.y-=m.y,this},_mult:function(m){return this.x*=m,this.y*=m,this},_div:function(m){return this.x/=m,this.y/=m,this},_multByPoint:function(m){return this.x*=m.x,this.y*=m.y,this},_divByPoint:function(m){return this.x/=m.x,this.y/=m.y,this},_unit:function(){return this._div(this.mag()),this},_perp:function(){var m=this.y;return this.y=this.x,this.x=-m,this},_rotate:function(m){var y=Math.cos(m),I=Math.sin(m),U=y*this.x-I*this.y,$=I*this.x+y*this.y;return this.x=U,this.y=$,this},_rotateAround:function(m,y){var I=Math.cos(m),U=Math.sin(m),$=y.x+I*(this.x-y.x)-U*(this.y-y.y),ae=y.y+U*(this.x-y.x)+I*(this.y-y.y);return this.x=$,this.y=ae,this},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}},c.convert=function(m){return m instanceof c?m:Array.isArray(m)?new c(m[0],m[1]):m};var f=typeof self!="undefined"?self:{};function h(m,y){if(Array.isArray(m)){if(!Array.isArray(y)||m.length!==y.length)return!1;for(var I=0;I<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 $ in m)if(!h(m[$],y[$]))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 $=new s(m,y,I,U);return function(ae){return $.solve(ae)}}var b=x(.25,.1,.25,1);function p(m,y,I){return Math.min(I,Math.max(y,m))}function C(m,y,I){var U=I-y,$=((m-y)%U+U)%U+y;return $===y?I:$}function E(m,y,I){if(!m.length)return I(null,[]);var U=m.length,$=new Array(m.length),ae=null;m.forEach(function(he,Oe){y(he,function(rt,gt){rt&&(ae=rt),$[Oe]=gt,--U===0&&I(ae,$)})})}function 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,$=y;U<$.length;U+=1){var ae=$[U];for(var he in ae)m[he]=ae[he]}return m}function k(m,y){for(var I={},U=0;U<y.length;U++){var $=y[U];$ in m&&(I[$]=m[$])}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 z(m){return m?/^[0-9a-f]{8}-[0-9a-f]{4}-[4][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i.test(m):!1}function O(m,y){m.forEach(function(I){y[I]&&(y[I]=y[I].bind(y))})}function V(m,y){return m.indexOf(y,m.length-y.length)!==-1}function G(m,y,I){var U={};for(var $ in m)U[$]=y.call(I||this,m[$],$,m);return U}function Z(m,y,I){var U={};for(var $ in m)y.call(I||this,m[$],$,m)&&(U[$]=m[$]);return U}function H(m){return Array.isArray(m)?m.map(H):typeof m=="object"&&m?G(m,H):m}function N(m,y){for(var I=0;I<m.length;I++)if(y.indexOf(m[I])>=0)return!0;return!1}var j={};function re(m){j[m]||(typeof console!="undefined"&&console.warn(m),j[m]=!0)}function oe(m,y,I){return(I.y-m.y)*(y.x-m.x)>(y.y-m.y)*(I.x-m.x)}function _e(m){for(var y=0,I=0,U=m.length,$=U-1,ae=void 0,he=void 0;I<U;$=I++)ae=m[I],he=m[$],y+=(he.x-ae.x)*(ae.y+he.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 me(m){var y=/(?:^|(?:\s*\,\s*))([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)(?:\=(?:([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)|(?:\"((?:[^"\\]|\\.)*)\")))?/g,I={};if(m.replace(y,function($,ae,he,Oe){var rt=he||Oe;return I[ae]=rt?rt.toLowerCase():!0,""}),I["max-age"]){var U=parseInt(I["max-age"],10);isNaN(U)?delete I["max-age"]:I["max-age"]=U}return I}var ie=null;function Se(m){if(ie==null){var y=m.navigator?m.navigator.userAgent:null;ie=!!m.safari||!!(y&&(/\b(iPad|iPhone|iPod)\b/.test(y)||y.match("Safari")&&!y.match("Chrome")))}return ie}function Le(m){try{var y=f[m];return y.setItem("_mapbox_test_",1),y.removeItem("_mapbox_test_"),!0}catch(I){return!1}}function Ae(m){return f.btoa(encodeURIComponent(m).replace(/%([0-9A-F]{2})/g,function(y,I){return String.fromCharCode(+("0x"+I))}))}function De(m){return decodeURIComponent(f.atob(m).split("").map(function(y){return"%"+("00"+y.charCodeAt(0).toString(16)).slice(-2)}).join(""))}var Pe=f.performance&&f.performance.now?f.performance.now.bind(f.performance):Date.now.bind(Date),ge=f.requestAnimationFrame||f.mozRequestAnimationFrame||f.webkitRequestAnimationFrame||f.msRequestAnimationFrame,Fe=f.cancelAnimationFrame||f.mozCancelAnimationFrame||f.webkitCancelAnimationFrame||f.msCancelAnimationFrame,ce,Ze,ct={now:Pe,frame:function(y){var I=ge(y);return{cancel:function(){return Fe(I)}}},getImageData:function(y,I){I===void 0&&(I=0);var U=f.document.createElement("canvas"),$=U.getContext("2d");if(!$)throw new Error("failed to create canvas 2d context");return U.width=y.width,U.height=y.height,$.drawImage(y,0,0,y.width,y.height),$.getImageData(-I,-I,y.width+2*I,y.height+2*I)},resolveURL:function(y){return ce||(ce=f.document.createElement("a")),ce.href=y,ce.href},hardwareConcurrency:f.navigator&&f.navigator.hardwareConcurrency||4,get devicePixelRatio(){return f.devicePixelRatio},get prefersReducedMotion(){return f.matchMedia?(Ze==null&&(Ze=f.matchMedia("(prefers-reduced-motion: reduce)")),Ze.matches):!1}},pt={API_URL:"https://api.mapbox.com",get EVENTS_URL(){return this.API_URL?this.API_URL.indexOf("https://api.mapbox.cn")===0?"https://events.mapbox.cn/events/v2":this.API_URL.indexOf("https://api.mapbox.com")===0?"https://events.mapbox.com/events/v2":null:null},FEEDBACK_URL:"https://apps.mapbox.com/feedback",REQUIRE_ACCESS_TOKEN:!0,ACCESS_TOKEN:null,MAX_PARALLEL_IMAGE_REQUESTS:16},Wt={supported:!1,testSupport:$t},st,lt=!1,Gt,Nt=!1;f.document&&(Gt=f.document.createElement("img"),Gt.onload=function(){st&&sr(st),st=null,Nt=!0},Gt.onerror=function(){lt=!0,st=null},Gt.src="data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA=");function $t(m){lt||!Gt||(Nt?sr(m):st=m)}function sr(m){var y=m.createTexture();m.bindTexture(m.TEXTURE_2D,y);try{if(m.texImage2D(m.TEXTURE_2D,0,m.RGBA,m.RGBA,m.UNSIGNED_BYTE,Gt),m.isContextLost())return;Wt.supported=!0}catch(I){}m.deleteTexture(y),lt=!0}var wr="01";function ur(){for(var m="1",y="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ",I="",U=0;U<10;U++)I+=y[Math.floor(Math.random()*62)];var $=12*60*60*1e3,ae=[m,wr,I].join(""),he=Date.now()+$;return{token:ae,tokenExpiresAt:he}}var Qe=function(y,I){this._transformRequestFn=y,this._customAccessToken=I,this._createSkuToken()};Qe.prototype._createSkuToken=function(){var y=ur();this._skuToken=y.token,this._skuTokenExpiresAt=y.tokenExpiresAt},Qe.prototype._isSkuTokenExpired=function(){return Date.now()>this._skuTokenExpiresAt},Qe.prototype.transformRequest=function(y,I){return this._transformRequestFn?this._transformRequestFn(y,I)||{url:y}:{url:y}},Qe.prototype.normalizeStyleURL=function(y,I){if(!Et(y))return y;var U=Yt(y);return U.path="/styles/v1"+U.path,this._makeAPIURL(U,this._customAccessToken||I)},Qe.prototype.normalizeGlyphsURL=function(y,I){if(!Et(y))return y;var U=Yt(y);return U.path="/fonts/v1"+U.path,this._makeAPIURL(U,this._customAccessToken||I)},Qe.prototype.normalizeSourceURL=function(y,I){if(!Et(y))return y;var U=Yt(y);return U.path="/v4/"+U.authority+".json",U.params.push("secure"),this._makeAPIURL(U,this._customAccessToken||I)},Qe.prototype.normalizeSpriteURL=function(y,I,U,$){var ae=Yt(y);return Et(y)?(ae.path="/styles/v1"+ae.path+"/sprite"+I+U,this._makeAPIURL(ae,this._customAccessToken||$)):(ae.path+=""+I+U,lr(ae))},Qe.prototype.normalizeTileURL=function(y,I){if(this._isSkuTokenExpired()&&this._createSkuToken(),y&&!Et(y))return y;var U=Yt(y),$=/(\.(png|jpg)\d*)(?=$)/,ae=/^.+\/v4\//,he=ct.devicePixelRatio>=2||I===512?"@2x":"",Oe=Wt.supported?".webp":"$1";U.path=U.path.replace($,""+he+Oe),U.path=U.path.replace(ae,"/"),U.path="/v4"+U.path;var rt=this._customAccessToken||bt(U.params)||pt.ACCESS_TOKEN;return pt.REQUIRE_ACCESS_TOKEN&&rt&&this._skuToken&&U.params.push("sku="+this._skuToken),this._makeAPIURL(U,rt)},Qe.prototype.canonicalizeTileURL=function(y,I){var U="/v4/",$=/\.[\w]+$/,ae=Yt(y);if(!ae.path.match(/(^\/v4\/)/)||!ae.path.match($))return y;var he="mapbox://tiles/";he+=ae.path.replace(U,"");var Oe=ae.params;return I&&(Oe=Oe.filter(function(rt){return!rt.match(/^access_token=/)})),Oe.length&&(he+="?"+Oe.join("&")),he},Qe.prototype.canonicalizeTileset=function(y,I){for(var U=I?Et(I):!1,$=[],ae=0,he=y.tiles||[];ae<he.length;ae+=1){var Oe=he[ae];Ut(Oe)?$.push(this.canonicalizeTileURL(Oe,U)):$.push(Oe)}return $},Qe.prototype._makeAPIURL=function(y,I){var U="See https://www.mapbox.com/api-documentation/#access-tokens-and-token-scopes",$=Yt(pt.API_URL);if(y.protocol=$.protocol,y.authority=$.authority,y.protocol==="http"){var ae=y.params.indexOf("secure");ae>=0&&y.params.splice(ae,1)}if($.path!=="/"&&(y.path=""+$.path+y.path),!pt.REQUIRE_ACCESS_TOKEN)return lr(y);if(I=I||pt.ACCESS_TOKEN,!I)throw new Error("An API access token is required to use Mapbox GL. "+U);if(I[0]==="s")throw new Error("Use a public access token (pk.*) with Mapbox GL, not a secret access token (sk.*). "+U);return y.params=y.params.filter(function(he){return he.indexOf("access_token")===-1}),y.params.push("access_token="+I),lr(y)};function Et(m){return m.indexOf("mapbox:")===0}var er=/^((https?:)?\/\/)?([^\/]+\.)?mapbox\.c(n|om)(\/|\?|$)/i;function Ut(m){return er.test(m)}function Ft(m){return m.indexOf("sku=")>0&&Ut(m)}function bt(m){for(var y=0,I=m;y<I.length;y+=1){var U=I[y],$=U.match(/^access_token=(.*)$/);if($)return $[1]}return null}var yt=/^(\w+):\/\/([^/?]*)(\/[^?]+)?\??(.+)?/;function Yt(m){var y=m.match(yt);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 lr(m){var y=m.params.length?"?"+m.params.join("&"):"";return m.protocol+"://"+m.authority+m.path+y}var Tr="mapbox.eventData";function Rr(m){if(!m)return null;var y=m.split(".");if(!y||y.length!==3)return null;try{var I=JSON.parse(De(y[1]));return I}catch(U){return null}}var ei=function(y){this.type=y,this.anonId=null,this.eventData={},this.queue=[],this.pendingRequest=null};ei.prototype.getStorageKey=function(y){var I=Rr(pt.ACCESS_TOKEN),U="";return I&&I.u?U=Ae(I.u):U=pt.ACCESS_TOKEN||"",y?Tr+"."+y+":"+U:Tr+":"+U},ei.prototype.fetchEventData=function(){var y=Le("localStorage"),I=this.getStorageKey(),U=this.getStorageKey("uuid");if(y)try{var $=f.localStorage.getItem(I);$&&(this.eventData=JSON.parse($));var ae=f.localStorage.getItem(U);ae&&(this.anonId=ae)}catch(he){re("Unable to read from LocalStorage")}},ei.prototype.saveEventData=function(){var y=Le("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($){re("Unable to write to LocalStorage")}},ei.prototype.processRequests=function(y){},ei.prototype.postEvent=function(y,I,U,$){var ae=this;if(pt.EVENTS_URL){var he=Yt(pt.EVENTS_URL);he.params.push("access_token="+($||pt.ACCESS_TOKEN||""));var Oe={event:this.type,created:new Date(y).toISOString(),sdkIdentifier:"mapbox-gl-js",sdkVersion:o,skuId:wr,userId:this.anonId},rt=I?_(Oe,I):Oe,gt={url:lr(he),headers:{"Content-Type":"text/plain"},body:JSON.stringify([rt])};this.pendingRequest=$r(gt,function(Mt){ae.pendingRequest=null,U(Mt),ae.saveEventData(),ae.processRequests($)})}},ei.prototype.queueRequest=function(y,I){this.queue.push(y),this.processRequests(I)};var Wr=function(m){function y(){m.call(this,"map.load"),this.success={},this.skuToken=""}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.postMapLoadEvent=function(U,$,ae,he){this.skuToken=ae,(pt.EVENTS_URL&&he||pt.ACCESS_TOKEN&&Array.isArray(U)&&U.some(function(Oe){return Et(Oe)||Ut(Oe)}))&&this.queueRequest({id:$,timestamp:Date.now()},he)},y.prototype.processRequests=function(U){var $=this;if(!(this.pendingRequest||this.queue.length===0)){var ae=this.queue.shift(),he=ae.id,Oe=ae.timestamp;he&&this.success[he]||(this.anonId||this.fetchEventData(),z(this.anonId)||(this.anonId=P()),this.postEvent(Oe,{skuToken:this.skuToken},function(rt){rt||he&&($.success[he]=!0)},U))}},y}(ei),Ur=function(m){function y(I){m.call(this,"appUserTurnstile"),this._customAccessToken=I}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.postTurnstileEvent=function(U,$){pt.EVENTS_URL&&pt.ACCESS_TOKEN&&Array.isArray(U)&&U.some(function(ae){return Et(ae)||Ut(ae)})&&this.queueRequest(Date.now(),$)},y.prototype.processRequests=function(U){var $=this;if(!(this.pendingRequest||this.queue.length===0)){(!this.anonId||!this.eventData.lastSuccess||!this.eventData.tokenU)&&this.fetchEventData();var ae=Rr(pt.ACCESS_TOKEN),he=ae?ae.u:pt.ACCESS_TOKEN,Oe=he!==this.eventData.tokenU;z(this.anonId)||(this.anonId=P(),Oe=!0);var rt=this.queue.shift();if(this.eventData.lastSuccess){var gt=new Date(this.eventData.lastSuccess),Mt=new Date(rt),or=(rt-this.eventData.lastSuccess)/(24*60*60*1e3);Oe=Oe||or>=1||or<-1||gt.getDate()!==Mt.getDate()}else Oe=!0;if(!Oe)return this.processRequests();this.postEvent(rt,{"enabled.telemetry":!1},function(_r){_r||($.eventData.lastSuccess=rt,$.eventData.tokenU=he)},U)}},y}(ei),dt=new Ur,Ge=dt.postTurnstileEvent.bind(dt),Je=new Wr,je=Je.postMapLoadEvent.bind(Je),$e="mapbox-tiles",wt=500,Ie=50,xe=1e3*60*7,Ce;function vt(){f.caches&&!Ce&&(Ce=f.caches.open($e))}var nr;function ir(m,y){if(nr===void 0)try{new Response(new ReadableStream),nr=!0}catch(I){nr=!1}nr?y(m.body):m.blob().then(y)}function pr(m,y,I){if(vt(),!!Ce){var U={status:y.status,statusText:y.statusText,headers:new f.Headers};y.headers.forEach(function(he,Oe){return U.headers.set(Oe,he)});var $=me(y.headers.get("Cache-Control")||"");if(!$["no-store"]){$["max-age"]&&U.headers.set("Expires",new Date(I+$["max-age"]*1e3).toUTCString());var ae=new Date(U.headers.get("Expires")).getTime()-I;ae<xe||ir(y,function(he){var Oe=new f.Response(he,U);vt(),Ce&&Ce.then(function(rt){return rt.put(oi(m.url),Oe)}).catch(function(rt){return re(rt.message)})})}}}function oi(m){var y=m.indexOf("?");return y<0?m:m.slice(0,y)}function di(m,y){if(vt(),!Ce)return y(null);var I=oi(m.url);Ce.then(function(U){U.match(I).then(function($){var ae=Jr($);U.delete(I),ae&&U.put(I,$.clone()),y(null,$,ae)}).catch(y)}).catch(y)}function Jr(m){if(!m)return!1;var y=new Date(m.headers.get("Expires")||0),I=me(m.headers.get("Cache-Control")||"");return y>Date.now()&&!I["no-cache"]}var fi=1/0;function Hi(m){fi++,fi>Ie&&(m.getActor().send("enforceCacheSizeLimit",wt),fi=0)}function Pn(m){vt(),Ce&&Ce.then(function(y){y.keys().then(function(I){for(var U=0;U<I.length-m;U++)y.delete(I[U])})})}function wn(m){var y=f.caches.delete($e);m&&y.catch(m).then(function(){return m()})}function pn(m,y){wt=m,Ie=y}var Vn;function kn(){return Vn==null&&(Vn=f.OffscreenCanvas&&new f.OffscreenCanvas(1,1).getContext("2d")&&typeof f.createImageBitmap=="function"),Vn}var ea={Unknown:"Unknown",Style:"Style",Source:"Source",Tile:"Tile",Glyphs:"Glyphs",SpriteImage:"SpriteImage",SpriteJSON:"SpriteJSON",Image:"Image"};typeof Object.freeze=="function"&&Object.freeze(ea);var ua=function(m){function y(I,U,$){U===401&&Ut($)&&(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=$,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),Vt=ke()?function(){return self.worker&&self.worker.referrer}:function(){return(f.location.protocol==="blob:"?f.parent:f).location.href},_t=function(m){return/^file:/.test(m)||/^file:/.test(Vt())&&!/^\w+:/.test(m)};function tr(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:Vt(),signal:I.signal}),$=!1,ae=!1,he=Ft(U.url);m.type==="json"&&U.headers.set("Accept","application/json");var Oe=function(gt,Mt,or){if(!ae){if(gt&>.message!=="SecurityError"&&re(gt),Mt&&or)return rt(Mt);var _r=Date.now();f.fetch(U).then(function(vr){if(vr.ok){var Fr=he?vr.clone():null;return rt(vr,Fr,_r)}else return y(new ua(vr.statusText,vr.status,m.url))}).catch(function(vr){vr.code!==20&&y(new Error(vr.message))})}},rt=function(gt,Mt,or){(m.type==="arrayBuffer"?gt.arrayBuffer():m.type==="json"?gt.json():gt.text()).then(function(_r){ae||(Mt&&or&&pr(U,Mt,or),$=!0,y(null,_r,gt.headers.get("Cache-Control"),gt.headers.get("Expires")))}).catch(function(_r){ae||y(new Error(_r.message))})};return he?di(U,Oe):Oe(null,null),{cancel:function(){ae=!0,$||I.abort()}}}function ar(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 $=I.response;if(m.type==="json")try{$=JSON.parse(I.response)}catch(ae){return y(ae)}y(null,$,I.getResponseHeader("Cache-Control"),I.getResponseHeader("Expires"))}else y(new ua(I.statusText,I.status,m.url))},I.send(m.body),{cancel:function(){return I.abort()}}}var Er=function(m,y){if(!_t(m.url)){if(f.fetch&&f.Request&&f.AbortController&&f.Request.prototype.hasOwnProperty("signal"))return tr(m,y);if(ke()&&self.worker&&self.worker.actor){var I=!0;return self.worker.actor.send("getResource",m,y,void 0,I)}}return ar(m,y)},Zr=function(m,y){return Er(_(m,{type:"json"}),y)},ri=function(m,y){return Er(_(m,{type:"arrayBuffer"}),y)},$r=function(m,y){return Er(_(m,{method:"POST"}),y)};function zi(m){var y=f.document.createElement("a");return y.href=m,y.protocol===f.document.location.protocol&&y.host===f.document.location.host}var Ji="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVQYV2NgAAIAAAUAAarVyFEAAAAASUVORK5CYII=";function en(m,y,I,U){var $=new f.Image,ae=f.URL;$.onload=function(){y(null,$),ae.revokeObjectURL($.src),$.onload=null,f.requestAnimationFrame(function(){$.src=Ji})},$.onerror=function(){return y(new Error("Could not load image. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."))};var he=new f.Blob([new Uint8Array(m)],{type:"image/png"});$.cacheControl=I,$.expires=U,$.src=m.byteLength?ae.createObjectURL(he):Ji}function cn(m,y){var I=new f.Blob([new Uint8Array(m)],{type:"image/png"});f.createImageBitmap(I).then(function(U){y(null,U)}).catch(function(U){y(new Error("Could not load image because of "+U.message+". Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."))})}var yn,Mn,Ba=function(){yn=[],Mn=0};Ba();var la=function(m,y){if(Wt.supported&&(m.headers||(m.headers={}),m.headers.accept="image/webp,*/*"),Mn>=pt.MAX_PARALLEL_IMAGE_REQUESTS){var I={requestParameters:m,callback:y,cancelled:!1,cancel:function(){this.cancelled=!0}};return yn.push(I),I}Mn++;var U=!1,$=function(){if(!U)for(U=!0,Mn--;yn.length&&Mn<pt.MAX_PARALLEL_IMAGE_REQUESTS;){var he=yn.shift(),Oe=he.requestParameters,rt=he.callback,gt=he.cancelled;gt||(he.cancel=la(Oe,rt).cancel)}},ae=ri(m,function(he,Oe,rt,gt){$(),he?y(he):Oe&&(kn()?cn(Oe,y):en(Oe,y,rt,gt))});return{cancel:function(){ae.cancel(),$()}}},ma=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 $=f.document.createElement("source");zi(m[U])||(I.crossOrigin="Anonymous"),$.src=m[U],I.appendChild($)}return{cancel:function(){}}};function Wa(m,y,I){var U=I[m]&&I[m].indexOf(y)!==-1;U||(I[m]=I[m]||[],I[m].push(y))}function Fa(m,y,I){if(I&&I[m]){var U=I[m].indexOf(y);U!==-1&&I[m].splice(U,1)}}var Wo=function(y,I){I===void 0&&(I={}),_(this,I),this.type=y},da=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}(Wo),Wn=function(){};Wn.prototype.on=function(y,I){return this._listeners=this._listeners||{},Wa(y,I,this._listeners),this},Wn.prototype.off=function(y,I){return Fa(y,I,this._listeners),Fa(y,I,this._oneTimeListeners),this},Wn.prototype.once=function(y,I){return this._oneTimeListeners=this._oneTimeListeners||{},Wa(y,I,this._oneTimeListeners),this},Wn.prototype.fire=function(y,I){typeof y=="string"&&(y=new Wo(y,I||{}));var U=y.type;if(this.listens(U)){y.target=this;for(var $=this._listeners&&this._listeners[U]?this._listeners[U].slice():[],ae=0,he=$;ae<he.length;ae+=1){var Oe=he[ae];Oe.call(this,y)}for(var rt=this._oneTimeListeners&&this._oneTimeListeners[U]?this._oneTimeListeners[U].slice():[],gt=0,Mt=rt;gt<Mt.length;gt+=1){var or=Mt[gt];Fa(U,or,this._oneTimeListeners),or.call(this,y)}var _r=this._eventedParent;_r&&(_(y,typeof this._eventedParentData=="function"?this._eventedParentData():this._eventedParentData),_r.fire(y))}else y instanceof da&&console.error(y.error);return this},Wn.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)},Wn.prototype.setEventedParent=function(y,I){return this._eventedParent=y,this._eventedParentData=I,this};var Ga=8,vo={version:{required:!0,type:"enum",values:[8]},name:{type:"string"},metadata:{type:"*"},center:{type:"array",value:"number"},zoom:{type:"number"},bearing:{type:"number",default:0,period:360,units:"degrees"},pitch:{type:"number",default:0,units:"degrees"},light:{type:"light"},sources:{required:!0,type:"sources"},sprite:{type:"string"},glyphs:{type:"string"},transition:{type:"transition"},layers:{required:!0,type:"array",value:"layer"}},jn={"*":{type:"source"}},St=["source_vector","source_raster","source_raster_dem","source_geojson","source_video","source_image"],Cr={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:"*"}},Qr={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:"*"}},pi={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:"*"}},fn={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"}},Sn={type:{required:!0,type:"enum",values:{video:{}}},urls:{required:!0,type:"array",value:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},En={type:{required:!0,type:"enum",values:{image:{}}},url:{required:!0,type:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},ki={id:{type:"string",required:!0},type:{type:"enum",values:{fill:{},line:{},symbol:{},circle:{},heatmap:{},"fill-extrusion":{},raster:{},hillshade:{},background:{}},required:!0},metadata:{type:"*"},source:{type:"string"},"source-layer":{type:"string"},minzoom:{type:"number",minimum:0,maximum:24},maxzoom:{type:"number",minimum:0,maximum:24},filter:{type:"filter"},layout:{type:"layout"},paint:{type:"paint"}},_n=["layout_fill","layout_line","layout_circle","layout_heatmap","layout_fill-extrusion","layout_symbol","layout_raster","layout_hillshade","layout_background"],ya={visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},Jn={"fill-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},Ma={"circle-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},_o={visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},No={"line-cap":{type:"enum",values:{butt:{},round:{},square:{}},default:"butt",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-join":{type:"enum",values:{bevel:{},round:{},miter:{}},default:"miter",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"line-miter-limit":{type:"number",default:2,requires:[{"line-join":"miter"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-round-limit":{type:"number",default:1.05,requires:[{"line-join":"round"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},po={"symbol-placement":{type:"enum",values:{point:{},line:{},"line-center":{}},default:"point",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-spacing":{type:"number",default:250,minimum:1,units:"pixels",requires:[{"symbol-placement":"line"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"symbol-avoid-edges":{type:"boolean",default:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"symbol-z-order":{type:"enum",values:{auto:{},"viewport-y":{},source:{}},default:"auto",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-allow-overlap":{type:"boolean",default:!1,requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-ignore-placement":{type:"boolean",default:!1,requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-optional":{type:"boolean",default:!1,requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-rotation-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-size":{type:"number",default:1,minimum:0,units:"factor of the original icon size",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-text-fit":{type:"enum",values:{none:{},width:{},height:{},both:{}},default:"none",requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-text-fit-padding":{type:"array",value:"number",length:4,default:[0,0,0,0],units:"pixels",requires:["icon-image","text-field",{"icon-text-fit":["both","width","height"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-image":{type:"resolvedImage",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-padding":{type:"number",default:2,minimum:0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-keep-upright":{type:"boolean",default:!1,requires:["icon-image",{"icon-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-offset":{type:"array",value:"number",length:2,default:[0,0],requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotation-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-field":{type:"formatted",default:"",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-font":{type:"array",value:"string",default:["Open Sans Regular","Arial Unicode MS Regular"],requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-size":{type:"number",default:16,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-width":{type:"number",default:10,minimum:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-line-height":{type:"number",default:1.2,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-letter-spacing":{type:"number",default:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-justify":{type:"enum",values:{auto:{},left:{},center:{},right:{}},default:"center",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-radial-offset":{type:"number",units:"ems",default:0,requires:["text-field"],"property-type":"data-driven",expression:{interpolated:!0,parameters:["zoom","feature"]}},"text-variable-anchor":{type:"array",value:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["text-field",{"!":"text-variable-anchor"}],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-angle":{type:"number",default:45,units:"degrees",requires:["text-field",{"symbol-placement":["line","line-center"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-writing-mode":{type:"array",value:"enum",values:{horizontal:{},vertical:{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-padding":{type:"number",default:2,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-keep-upright":{type:"boolean",default:!0,requires:["text-field",{"text-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-transform":{type:"enum",values:{none:{},uppercase:{},lowercase:{}},default:"none",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-offset":{type:"array",value:"number",units:"ems",length:2,default:[0,0],requires:["text-field",{"!":"text-radial-offset"}],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-allow-overlap":{type:"boolean",default:!1,requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-ignore-placement":{type:"boolean",default:!1,requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-optional":{type:"boolean",default:!1,requires:["text-field","icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},Lo={visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},Co={visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},Fs={type:"array",value:"*"},zs={type:"enum",values:{"==":{},"!=":{},">":{},">=":{},"<":{},"<=":{},in:{},"!in":{},all:{},any:{},none:{},has:{},"!has":{},within:{}}},ul={type:"enum",values:{Point:{},LineString:{},Polygon:{}}},cl={type:"array",minimum:0,maximum:24,value:["number","color"],length:2},Fl={type:"array",value:"*",minimum:1},cs={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}},nl=["paint_fill","paint_line","paint_circle","paint_heatmap","paint_fill-extrusion","paint_symbol","paint_raster","paint_hillshade","paint_background"],Ss={"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"}},fl={"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"}},Js={"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"}},Os={"heatmap-radius":{type:"number",default:30,minimum:1,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-weight":{type:"number",default:1,minimum:0,transition:!1,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-intensity":{type:"number",default:1,minimum:0,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"heatmap-color":{type:"color",default:["interpolate",["linear"],["heatmap-density"],0,"rgba(0, 0, 255, 0)",.1,"royalblue",.3,"cyan",.5,"lime",.7,"yellow",1,"red"],transition:!1,expression:{interpolated:!0,parameters:["heatmap-density"]},"property-type":"color-ramp"},"heatmap-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},Io={"icon-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-color":{type:"color",default:"#000000",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["icon-image","icon-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-color":{type:"color",default:"#000000",transition:!0,overridable:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["text-field","text-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},us={"raster-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-hue-rotate":{type:"number",default:0,period:360,transition:!0,units:"degrees",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-min":{type:"number",default:0,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-max":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-saturation":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-contrast":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-resampling":{type:"enum",values:{linear:{},nearest:{}},default:"linear",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"raster-fade-duration":{type:"number",default:300,minimum:0,transition:!1,units:"milliseconds",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},Zl={"hillshade-illumination-direction":{type:"number",default:335,minimum:0,maximum:359,transition:!1,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-illumination-anchor":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-exaggeration":{type:"number",default:.5,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-shadow-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-highlight-color":{type:"color",default:"#FFFFFF",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-accent-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},Su={"background-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"background-pattern"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"background-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"background-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},nc={duration:{type:"number",default:300,minimum:0,units:"milliseconds"},delay:{type:"number",default:0,minimum:0,units:"milliseconds"}},ws={"*":{type:"string"}},Fn={$version:Ga,$root:vo,sources:jn,source:St,source_vector:Cr,source_raster:Qr,source_raster_dem:pi,source_geojson:fn,source_video:Sn,source_image:En,layer:ki,layout:_n,layout_background:ya,layout_fill:Jn,layout_circle:Ma,layout_heatmap:_o,"layout_fill-extrusion":{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_line:No,layout_symbol:po,layout_raster:Lo,layout_hillshade:Co,filter:Fs,filter_operator:zs,geometry_type:ul,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:cl,expression:Fl,light:cs,paint:nl,paint_fill:Ss,"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:fl,paint_circle:Js,paint_heatmap:Os,paint_symbol:Io,paint_raster:us,paint_hillshade:Zl,paint_background:Su,transition:nc,"property-type":{"data-driven":{type:"property-type"},"cross-faded":{type:"property-type"},"cross-faded-data-driven":{type:"property-type"},"color-ramp":{type:"property-type"},"data-constant":{type:"property-type"},constant:{type:"property-type"}},promoteId:ws},_a=function(y,I,U,$){this.message=(y?y+": ":"")+U,$&&(this.identifier=$),I!=null&&I.__line__&&(this.line=I.__line__)};function Vu(m){var y=m.key,I=m.value;return I?[new _a(y,I,"constants have been deprecated as of v8")]:[]}function zl(m){for(var y=[],I=arguments.length-1;I-- >0;)y[I]=arguments[I+1];for(var U=0,$=y;U<$.length;U+=1){var ae=$[U];for(var he in ae)m[he]=ae[he]}return m}function xo(m){return m instanceof Number||m instanceof String||m instanceof Boolean?m.valueOf():m}function Yl(m){if(Array.isArray(m))return m.map(Yl);if(m instanceof Object&&!(m instanceof Number||m instanceof String||m instanceof Boolean)){var y={};for(var I in m)y[I]=Yl(m[I]);return y}return xo(m)}var Us=function(m){function y(I,U){m.call(this,U),this.message=U,this.key=I}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y}(Error),Hl=function(y,I){I===void 0&&(I=[]),this.parent=y,this.bindings={};for(var U=0,$=I;U<$.length;U+=1){var ae=$[U],he=ae[0],Oe=ae[1];this.bindings[he]=Oe}};Hl.prototype.concat=function(y){return new Hl(this,y)},Hl.prototype.get=function(y){if(this.bindings[y])return this.bindings[y];if(this.parent)return this.parent.get(y);throw new Error(y+" not found in scope.")},Hl.prototype.has=function(y){return this.bindings[y]?!0:this.parent?this.parent.has(y):!1};var ac={kind:"null"},aa={kind:"number"},Oo={kind:"string"},qo={kind:"boolean"},Ol={kind:"color"},Pc={kind:"object"},Do={kind:"value"},rf={kind:"error"},Uf={kind:"collator"},ml={kind:"formatted"},Zc={kind:"resolvedImage"};function Kl(m,y){return{kind:"array",itemType:m,N:y}}function qs(m){if(m.kind==="array"){var y=qs(m.itemType);return typeof m.N=="number"?"array<"+y+", "+m.N+">":m.itemType.kind==="value"?"array":"array<"+y+">"}else return m.kind}var yu=[ac,aa,Oo,qo,Ol,ml,Pc,Kl(Do),Zc];function oc(m,y){if(y.kind==="error")return null;if(m.kind==="array"){if(y.kind==="array"&&(y.N===0&&y.itemType.kind==="value"||!oc(m.itemType,y.itemType))&&(typeof m.N!="number"||m.N===y.N))return null}else{if(m.kind===y.kind)return null;if(m.kind==="value")for(var I=0,U=yu;I<U.length;I+=1){var $=U[I];if(!oc($,y))return null}}return"Expected "+qs(m)+" but found "+qs(y)+" instead."}function Cf(m,y){return y.some(function(I){return I.kind===m.kind})}function sc(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 Nh=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(gt){return gt=Math.round(gt),gt<0?0:gt>255?255:gt}function $(gt){return gt<0?0:gt>1?1:gt}function ae(gt){return gt[gt.length-1]==="%"?U(parseFloat(gt)/100*255):U(parseInt(gt))}function he(gt){return gt[gt.length-1]==="%"?$(parseFloat(gt)/100):$(parseFloat(gt))}function Oe(gt,Mt,or){return or<0?or+=1:or>1&&(or-=1),or*6<1?gt+(Mt-gt)*or*6:or*2<1?Mt:or*3<2?gt+(Mt-gt)*(2/3-or)*6:gt}function rt(gt){var Mt=gt.replace(/ /g,"").toLowerCase();if(Mt in I)return I[Mt].slice();if(Mt[0]==="#"){if(Mt.length===4){var or=parseInt(Mt.substr(1),16);return or>=0&&or<=4095?[(or&3840)>>4|(or&3840)>>8,or&240|(or&240)>>4,or&15|(or&15)<<4,1]:null}else if(Mt.length===7){var or=parseInt(Mt.substr(1),16);return or>=0&&or<=16777215?[(or&16711680)>>16,(or&65280)>>8,or&255,1]:null}return null}var _r=Mt.indexOf("("),vr=Mt.indexOf(")");if(_r!==-1&&vr+1===Mt.length){var Fr=Mt.substr(0,_r),ai=Mt.substr(_r+1,vr-(_r+1)).split(","),Gi=1;switch(Fr){case"rgba":if(ai.length!==4)return null;Gi=he(ai.pop());case"rgb":return ai.length!==3?null:[ae(ai[0]),ae(ai[1]),ae(ai[2]),Gi];case"hsla":if(ai.length!==4)return null;Gi=he(ai.pop());case"hsl":if(ai.length!==3)return null;var Ti=(parseFloat(ai[0])%360+360)%360/360,bn=he(ai[1]),rn=he(ai[2]),xn=rn<=.5?rn*(bn+1):rn+bn-rn*bn,Dn=rn*2-xn;return[U(Oe(Dn,xn,Ti+1/3)*255),U(Oe(Dn,xn,Ti)*255),U(Oe(Dn,xn,Ti-1/3)*255),Gi];default:return null}}return null}try{y.parseCSSColor=rt}catch(gt){}}),kf=Nh.parseCSSColor,fs=function(y,I,U,$){$===void 0&&($=1),this.r=y,this.g=I,this.b=U,this.a=$};fs.parse=function(y){if(y){if(y instanceof fs)return y;if(typeof y=="string"){var I=kf(y);if(I)return new fs(I[0]/255*I[3],I[1]/255*I[3],I[2]/255*I[3],I[3])}}},fs.prototype.toString=function(){var y=this.toArray(),I=y[0],U=y[1],$=y[2],ae=y[3];return"rgba("+Math.round(I)+","+Math.round(U)+","+Math.round($)+","+ae+")"},fs.prototype.toArray=function(){var y=this,I=y.r,U=y.g,$=y.b,ae=y.a;return ae===0?[0,0,0,0]:[I*255/ae,U*255/ae,$*255/ae,ae]},fs.black=new fs(0,0,0,1),fs.white=new fs(1,1,1,1),fs.transparent=new fs(0,0,0,0),fs.red=new fs(1,0,0,1);var nf=function(y,I,U){y?this.sensitivity=I?"variant":"case":this.sensitivity=I?"accent":"base",this.locale=U,this.collator=new Intl.Collator(this.locale?this.locale:[],{sensitivity:this.sensitivity,usage:"search"})};nf.prototype.compare=function(y,I){return this.collator.compare(y,I)},nf.prototype.resolvedLocale=function(){return new Intl.Collator(this.locale?this.locale:[]).resolvedOptions().locale};var Vf=function(y,I,U,$,ae){this.text=y,this.image=I,this.scale=U,this.fontStack=$,this.textColor=ae},Jl=function(y){this.sections=y};Jl.fromString=function(y){return new Jl([new Vf(y,null,null,null,null)])},Jl.prototype.isEmpty=function(){return this.sections.length===0?!0:!this.sections.some(function(y){return y.text.length!==0||y.image&&y.image.name.length!==0})},Jl.factory=function(y){return y instanceof Jl?y:Jl.fromString(y)},Jl.prototype.toString=function(){return this.sections.length===0?"":this.sections.map(function(y){return y.text}).join("")},Jl.prototype.serialize=function(){for(var y=["format"],I=0,U=this.sections;I<U.length;I+=1){var $=U[I];if($.image){y.push(["image",$.image.name]);continue}y.push($.text);var ae={};$.fontStack&&(ae["text-font"]=["literal",$.fontStack.split(",")]),$.scale&&(ae["font-scale"]=$.scale),$.textColor&&(ae["text-color"]=["rgba"].concat($.textColor.toArray())),y.push(ae)}return y};var hl=function(y){this.name=y.name,this.available=y.available};hl.prototype.toString=function(){return this.name},hl.fromString=function(y){return y?new hl({name:y,available:!1}):null},hl.prototype.serialize=function(){return["image",this.name]};function lc(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 $=typeof U=="number"?[m,y,I,U]:[m,y,I];return"Invalid rgba value ["+$.join(", ")+"]: 'r', 'g', and 'b' must be between 0 and 255."}return typeof U=="undefined"||typeof U=="number"&&U>=0&&U<=1?null:"Invalid rgba value ["+[m,y,I,U].join(", ")+"]: 'a' must be between 0 and 1."}function Fu(m){if(m===null)return!0;if(typeof m=="string")return!0;if(typeof m=="boolean")return!0;if(typeof m=="number")return!0;if(m instanceof fs)return!0;if(m instanceof nf)return!0;if(m instanceof Jl)return!0;if(m instanceof hl)return!0;if(Array.isArray(m)){for(var y=0,I=m;y<I.length;y+=1){var U=I[y];if(!Fu(U))return!1}return!0}else if(typeof m=="object"){for(var $ in m)if(!Fu(m[$]))return!1;return!0}else return!1}function Cs(m){if(m===null)return ac;if(typeof m=="string")return Oo;if(typeof m=="boolean")return qo;if(typeof m=="number")return aa;if(m instanceof fs)return Ol;if(m instanceof nf)return Uf;if(m instanceof Jl)return ml;if(m instanceof hl)return Zc;if(Array.isArray(m)){for(var y=m.length,I,U=0,$=m;U<$.length;U+=1){var ae=$[U],he=Cs(ae);if(!I)I=he;else{if(I===he)continue;I=Do;break}}return Kl(I||Do,y)}else return Pc}function js(m){var y=typeof m;return m===null?"":y==="string"||y==="number"||y==="boolean"?String(m):m instanceof fs||m instanceof Jl||m instanceof hl?m.toString():JSON.stringify(m)}var Go=function(y,I){this.type=y,this.value=I};Go.parse=function(y,I){if(y.length!==2)return I.error("'literal' expression requires exactly one argument, but found "+(y.length-1)+" instead.");if(!Fu(y[1]))return I.error("invalid value");var U=y[1],$=Cs(U),ae=I.expectedType;return $.kind==="array"&&$.N===0&&ae&&ae.kind==="array"&&(typeof ae.N!="number"||ae.N===0)&&($=ae),new Go($,U)},Go.prototype.evaluate=function(){return this.value},Go.prototype.eachChild=function(){},Go.prototype.outputDefined=function(){return!0},Go.prototype.serialize=function(){return this.type.kind==="array"||this.type.kind==="object"?["literal",this.value]:this.value instanceof fs?["rgba"].concat(this.value.toArray()):this.value instanceof Jl?this.value.serialize():this.value};var gs=function(y){this.name="ExpressionEvaluationError",this.message=y};gs.prototype.toJSON=function(){return this.message};var uc={string:Oo,number:aa,boolean:qo,object:Pc},xl=function(y,I){this.type=y,this.args=I};xl.parse=function(y,I){if(y.length<2)return I.error("Expected at least one argument.");var U=1,$,ae=y[0];if(ae==="array"){var he;if(y.length>2){var Oe=y[1];if(typeof Oe!="string"||!(Oe in uc)||Oe==="object")return I.error('The item type argument of "array" must be one of string, number, boolean',1);he=uc[Oe],U++}else he=Do;var rt;if(y.length>3){if(y[2]!==null&&(typeof y[2]!="number"||y[2]<0||y[2]!==Math.floor(y[2])))return I.error('The length argument to "array" must be a positive integer literal',2);rt=y[2],U++}$=Kl(he,rt)}else $=uc[ae];for(var gt=[];U<y.length;U++){var Mt=I.parse(y[U],U,Do);if(!Mt)return null;gt.push(Mt)}return new xl($,gt)},xl.prototype.evaluate=function(y){for(var I=0;I<this.args.length;I++){var U=this.args[I].evaluate(y),$=oc(this.type,Cs(U));if($){if(I===this.args.length-1)throw new gs("Expected value to be of type "+qs(this.type)+", but found "+qs(Cs(U))+" instead.")}else return U}return null},xl.prototype.eachChild=function(y){this.args.forEach(y)},xl.prototype.outputDefined=function(){return this.args.every(function(y){return y.outputDefined()})},xl.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 $=y.N;(typeof $=="number"||this.args.length>1)&&I.push($)}}return I.concat(this.args.map(function(ae){return ae.serialize()}))};var Gu=function(y){this.type=ml,this.sections=y};Gu.parse=function(y,I){if(y.length<2)return I.error("Expected at least one argument.");var U=y[1];if(!Array.isArray(U)&&typeof U=="object")return I.error("First argument must be an image or text section.");for(var $=[],ae=!1,he=1;he<=y.length-1;++he){var Oe=y[he];if(ae&&typeof Oe=="object"&&!Array.isArray(Oe)){ae=!1;var rt=null;if(Oe["font-scale"]&&(rt=I.parse(Oe["font-scale"],1,aa),!rt))return null;var gt=null;if(Oe["text-font"]&&(gt=I.parse(Oe["text-font"],1,Kl(Oo)),!gt))return null;var Mt=null;if(Oe["text-color"]&&(Mt=I.parse(Oe["text-color"],1,Ol),!Mt))return null;var or=$[$.length-1];or.scale=rt,or.font=gt,or.textColor=Mt}else{var _r=I.parse(y[he],1,Do);if(!_r)return null;var vr=_r.type.kind;if(vr!=="string"&&vr!=="value"&&vr!=="null"&&vr!=="resolvedImage")return I.error("Formatted text type must be 'string', 'value', 'image' or 'null'.");ae=!0,$.push({content:_r,scale:null,font:null,textColor:null})}}return new Gu($)},Gu.prototype.evaluate=function(y){var I=function(U){var $=U.content.evaluate(y);return Cs($)===Zc?new Vf("",$,null,null,null):new Vf(js($),null,U.scale?U.scale.evaluate(y):null,U.font?U.font.evaluate(y).join(","):null,U.textColor?U.textColor.evaluate(y):null)};return new Jl(this.sections.map(I))},Gu.prototype.eachChild=function(y){for(var I=0,U=this.sections;I<U.length;I+=1){var $=U[I];y($.content),$.scale&&y($.scale),$.font&&y($.font),$.textColor&&y($.textColor)}},Gu.prototype.outputDefined=function(){return!1},Gu.prototype.serialize=function(){for(var y=["format"],I=0,U=this.sections;I<U.length;I+=1){var $=U[I];y.push($.content.serialize());var ae={};$.scale&&(ae["font-scale"]=$.scale.serialize()),$.font&&(ae["text-font"]=$.font.serialize()),$.textColor&&(ae["text-color"]=$.textColor.serialize()),y.push(ae)}return y};var Bs=function(y){this.type=Zc,this.input=y};Bs.parse=function(y,I){if(y.length!==2)return I.error("Expected two arguments.");var U=I.parse(y[1],1,Oo);return U?new Bs(U):I.error("No image name provided.")},Bs.prototype.evaluate=function(y){var I=this.input.evaluate(y),U=hl.fromString(I);return U&&y.availableImages&&(U.available=y.availableImages.indexOf(I)>-1),U},Bs.prototype.eachChild=function(y){y(this.input)},Bs.prototype.outputDefined=function(){return!1},Bs.prototype.serialize=function(){return["image",this.input.serialize()]};var ad={"to-boolean":qo,"to-color":Ol,"to-number":aa,"to-string":Oo},Po=function(y,I){this.type=y,this.args=I};Po.parse=function(y,I){if(y.length<2)return I.error("Expected at least one argument.");var U=y[0];if((U==="to-boolean"||U==="to-string")&&y.length!==2)return I.error("Expected one argument.");for(var $=ad[U],ae=[],he=1;he<y.length;he++){var Oe=I.parse(y[he],he,Do);if(!Oe)return null;ae.push(Oe)}return new Po($,ae)},Po.prototype.evaluate=function(y){if(this.type.kind==="boolean")return!!this.args[0].evaluate(y);if(this.type.kind==="color"){for(var I,U,$=0,ae=this.args;$<ae.length;$+=1){var he=ae[$];if(I=he.evaluate(y),U=null,I instanceof fs)return I;if(typeof I=="string"){var Oe=y.parseColor(I);if(Oe)return Oe}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=lc(I[0],I[1],I[2],I[3]),!U))return new fs(I[0]/255,I[1]/255,I[2]/255,I[3])}throw new gs(U||"Could not parse color from value '"+(typeof I=="string"?I:String(JSON.stringify(I)))+"'")}else if(this.type.kind==="number"){for(var rt=null,gt=0,Mt=this.args;gt<Mt.length;gt+=1){var or=Mt[gt];if(rt=or.evaluate(y),rt===null)return 0;var _r=Number(rt);if(!isNaN(_r))return _r}throw new gs("Could not convert "+JSON.stringify(rt)+" to number.")}else return this.type.kind==="formatted"?Jl.fromString(js(this.args[0].evaluate(y))):this.type.kind==="resolvedImage"?hl.fromString(js(this.args[0].evaluate(y))):js(this.args[0].evaluate(y))},Po.prototype.eachChild=function(y){this.args.forEach(y)},Po.prototype.outputDefined=function(){return this.args.every(function(y){return y.outputDefined()})},Po.prototype.serialize=function(){if(this.type.kind==="formatted")return new Gu([{content:this.args[0],scale:null,font:null,textColor:null}]).serialize();if(this.type.kind==="resolvedImage")return new Bs(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"],Yo=function(){this.globals=null,this.feature=null,this.featureState=null,this.formattedSection=null,this._parseColorCache={},this.availableImages=null,this.canonical=null};Yo.prototype.id=function(){return this.feature&&"id"in this.feature?this.feature.id:null},Yo.prototype.geometryType=function(){return this.feature?typeof this.feature.type=="number"?od[this.feature.type]:this.feature.type:null},Yo.prototype.geometry=function(){return this.feature&&"geometry"in this.feature?this.feature.geometry:null},Yo.prototype.canonicalID=function(){return this.canonical},Yo.prototype.properties=function(){return this.feature&&this.feature.properties||{}},Yo.prototype.parseColor=function(y){var I=this._parseColorCache[y];return I||(I=this._parseColorCache[y]=fs.parse(y)),I};var Pa=function(y,I,U,$){this.name=y,this.type=I,this._evaluate=U,this.args=$};Pa.prototype.evaluate=function(y){return this._evaluate(y,this.args)},Pa.prototype.eachChild=function(y){this.args.forEach(y)},Pa.prototype.outputDefined=function(){return!1},Pa.prototype.serialize=function(){return[this.name].concat(this.args.map(function(y){return y.serialize()}))},Pa.parse=function(y,I){var U,$=y[0],ae=Pa.definitions[$];if(!ae)return I.error('Unknown expression "'+$+'". If you wanted a literal array, use ["literal", [...]].',0);for(var he=Array.isArray(ae)?ae[0]:ae.type,Oe=Array.isArray(ae)?[[ae[1],ae[2]]]:ae.overloads,rt=Oe.filter(function(to){var ao=to[0];return!Array.isArray(ao)||ao.length===y.length-1}),gt=null,Mt=0,or=rt;Mt<or.length;Mt+=1){var _r=or[Mt],vr=_r[0],Fr=_r[1];gt=new ks(I.registry,I.path,null,I.scope);for(var ai=[],Gi=!1,Ti=1;Ti<y.length;Ti++){var bn=y[Ti],rn=Array.isArray(vr)?vr[Ti-1]:vr.type,xn=gt.parse(bn,1+ai.length,rn);if(!xn){Gi=!0;break}ai.push(xn)}if(!Gi){if(Array.isArray(vr)&&vr.length!==ai.length){gt.error("Expected "+vr.length+" arguments, but found "+ai.length+" instead.");continue}for(var Dn=0;Dn<ai.length;Dn++){var Zn=Array.isArray(vr)?vr[Dn]:vr.type,ga=ai[Dn];gt.concat(Dn+1).checkSubtype(Zn,ga.type)}if(gt.errors.length===0)return new Pa($,he,Fr,ai)}}if(rt.length===1)(U=I.errors).push.apply(U,gt.errors);else{for(var ha=rt.length?rt:Oe,eo=ha.map(function(to){var ao=to[0];return af(ao)}).join(" | "),za=[],Za=1;Za<y.length;Za++){var Ko=I.parse(y[Za],1+za.length);if(!Ko)return null;za.push(qs(Ko.type))}I.error("Expected arguments of type "+eo+", but found ("+za.join(", ")+") instead.")}return null},Pa.register=function(y,I){Pa.definitions=I;for(var U in I)y[U]=Pa};function af(m){return Array.isArray(m)?"("+m.map(qs).join(", ")+")":"("+qs(m.type)+"...)"}var Hu=function(y,I,U){this.type=Uf,this.locale=U,this.caseSensitive=y,this.diacriticSensitive=I};Hu.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 $=I.parse(U["case-sensitive"]===void 0?!1:U["case-sensitive"],1,qo);if(!$)return null;var ae=I.parse(U["diacritic-sensitive"]===void 0?!1:U["diacritic-sensitive"],1,qo);if(!ae)return null;var he=null;return U.locale&&(he=I.parse(U.locale,1,Oo),!he)?null:new Hu($,ae,he)},Hu.prototype.evaluate=function(y){return new nf(this.caseSensitive.evaluate(y),this.diacriticSensitive.evaluate(y),this.locale?this.locale.evaluate(y):null)},Hu.prototype.eachChild=function(y){y(this.caseSensitive),y(this.diacriticSensitive),this.locale&&y(this.locale)},Hu.prototype.outputDefined=function(){return!1},Hu.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 bl=8192;function Gf(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 Ic(m){return(180+m)/360}function mf(m){return(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+m*Math.PI/360)))/360}function ql(m,y){return!(m[0]<=y[0]||m[2]>=y[2]||m[1]<=y[1]||m[3]>=y[3])}function _h(m,y){var I=Ic(m[0]),U=mf(m[1]),$=Math.pow(2,y.z);return[Math.round(I*$*bl),Math.round(U*$*bl)]}function Qf(m,y,I){var U=m[0]-y[0],$=m[1]-y[1],ae=m[0]-I[0],he=m[1]-I[1];return U*he-ae*$===0&&U*ae<=0&&$*he<=0}function yf(m,y,I){return y[1]>m[1]!=I[1]>m[1]&&m[0]<(I[0]-y[0])*(m[1]-y[1])/(I[1]-y[1])+y[0]}function Yc(m,y){for(var I=!1,U=0,$=y.length;U<$;U++)for(var ae=y[U],he=0,Oe=ae.length;he<Oe-1;he++){if(Qf(m,ae[he],ae[he+1]))return!1;yf(m,ae[he],ae[he+1])&&(I=!I)}return I}function eh(m,y){for(var I=0;I<y.length;I++)if(Yc(m,y[I]))return!0;return!1}function th(m,y){return m[0]*y[1]-m[1]*y[0]}function ju(m,y,I,U){var $=m[0]-I[0],ae=m[1]-I[1],he=y[0]-I[0],Oe=y[1]-I[1],rt=U[0]-I[0],gt=U[1]-I[1],Mt=$*gt-rt*ae,or=he*gt-rt*Oe;return Mt>0&&or<0||Mt<0&&or>0}function Hf(m,y,I,U){var $=[y[0]-m[0],y[1]-m[1]],ae=[U[0]-I[0],U[1]-I[1]];return th(ae,$)===0?!1:!!(ju(m,y,I,U)&&ju(I,U,m,y))}function cc(m,y,I){for(var U=0,$=I;U<$.length;U+=1)for(var ae=$[U],he=0;he<ae.length-1;++he)if(Hf(m,y,ae[he],ae[he+1]))return!0;return!1}function of(m,y){for(var I=0;I<m.length;++I)if(!Yc(m[I],y))return!1;for(var U=0;U<m.length-1;++U)if(cc(m[U],m[U+1],y))return!1;return!0}function Bl(m,y){for(var I=0;I<y.length;I++)if(of(m,y[I]))return!0;return!1}function Kc(m,y,I){for(var U=[],$=0;$<m.length;$++){for(var ae=[],he=0;he<m[$].length;he++){var Oe=_h(m[$][he],I);Gf(y,Oe),ae.push(Oe)}U.push(ae)}return U}function Rc(m,y,I){for(var U=[],$=0;$<m.length;$++){var ae=Kc(m[$],y,I);U.push(ae)}return U}function ms(m,y,I,U){if(m[0]<I[0]||m[0]>I[2]){var $=U*.5,ae=m[0]-I[0]>$?-U:I[0]-m[0]>$?U:0;ae===0&&(ae=m[0]-I[2]>$?-U:I[2]-m[0]>$?U:0),m[0]+=ae}Gf(y,m)}function jf(m){m[0]=m[1]=1/0,m[2]=m[3]=-1/0}function Uh(m,y,I,U){for(var $=Math.pow(2,U.z)*bl,ae=[U.x*bl,U.y*bl],he=[],Oe=0,rt=m;Oe<rt.length;Oe+=1)for(var gt=rt[Oe],Mt=0,or=gt;Mt<or.length;Mt+=1){var _r=or[Mt],vr=[_r.x+ae[0],_r.y+ae[1]];ms(vr,y,I,$),he.push(vr)}return he}function rh(m,y,I,U){for(var $=Math.pow(2,U.z)*bl,ae=[U.x*bl,U.y*bl],he=[],Oe=0,rt=m;Oe<rt.length;Oe+=1){for(var gt=rt[Oe],Mt=[],or=0,_r=gt;or<_r.length;or+=1){var vr=_r[or],Fr=[vr.x+ae[0],vr.y+ae[1]];Gf(y,Fr),Mt.push(Fr)}he.push(Mt)}if(y[2]-y[0]<=$/2){jf(y);for(var ai=0,Gi=he;ai<Gi.length;ai+=1)for(var Ti=Gi[ai],bn=0,rn=Ti;bn<rn.length;bn+=1){var xn=rn[bn];ms(xn,y,I,$)}}return he}function sf(m,y){var I=[1/0,1/0,-1/0,-1/0],U=[1/0,1/0,-1/0,-1/0],$=m.canonicalID();if(y.type==="Polygon"){var ae=Kc(y.coordinates,U,$),he=Uh(m.geometry(),I,U,$);if(!ql(I,U))return!1;for(var Oe=0,rt=he;Oe<rt.length;Oe+=1){var gt=rt[Oe];if(!Yc(gt,ae))return!1}}if(y.type==="MultiPolygon"){var Mt=Rc(y.coordinates,U,$),or=Uh(m.geometry(),I,U,$);if(!ql(I,U))return!1;for(var _r=0,vr=or;_r<vr.length;_r+=1){var Fr=vr[_r];if(!eh(Fr,Mt))return!1}}return!0}function xh(m,y){var I=[1/0,1/0,-1/0,-1/0],U=[1/0,1/0,-1/0,-1/0],$=m.canonicalID();if(y.type==="Polygon"){var ae=Kc(y.coordinates,U,$),he=rh(m.geometry(),I,U,$);if(!ql(I,U))return!1;for(var Oe=0,rt=he;Oe<rt.length;Oe+=1){var gt=rt[Oe];if(!of(gt,ae))return!1}}if(y.type==="MultiPolygon"){var Mt=Rc(y.coordinates,U,$),or=rh(m.geometry(),I,U,$);if(!ql(I,U))return!1;for(var _r=0,vr=or;_r<vr.length;_r+=1){var Fr=vr[_r];if(!Bl(Fr,Mt))return!1}}return!0}var Mu=function(y,I){this.type=qo,this.geojson=y,this.geometries=I};Mu.parse=function(y,I){if(y.length!==2)return I.error("'within' expression requires exactly one argument, but found "+(y.length-1)+" instead.");if(Fu(y[1])){var U=y[1];if(U.type==="FeatureCollection")for(var $=0;$<U.features.length;++$){var ae=U.features[$].geometry.type;if(ae==="Polygon"||ae==="MultiPolygon")return new Mu(U,U.features[$].geometry)}else if(U.type==="Feature"){var he=U.geometry.type;if(he==="Polygon"||he==="MultiPolygon")return new Mu(U,U.geometry)}else if(U.type==="Polygon"||U.type==="MultiPolygon")return new Mu(U,U)}return I.error("'within' expression requires valid geojson object that contains polygon geometry type.")},Mu.prototype.evaluate=function(y){if(y.geometry()!=null&&y.canonicalID()!=null){if(y.geometryType()==="Point")return sf(y,this.geometries);if(y.geometryType()==="LineString")return xh(y,this.geometries)}return!1},Mu.prototype.eachChild=function(){},Mu.prototype.outputDefined=function(){return!0},Mu.prototype.serialize=function(){return["within",this.geojson]};function ih(m){if(m instanceof Pa){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 Mu)return!1;var y=!0;return m.eachChild(function(I){y&&!ih(I)&&(y=!1)}),y}function Ws(m){if(m instanceof Pa&&m.name==="feature-state")return!1;var y=!0;return m.eachChild(function(I){y&&!Ws(I)&&(y=!1)}),y}function Eu(m,y){if(m instanceof Pa&&y.indexOf(m.name)>=0)return!1;var I=!0;return m.eachChild(function(U){I&&!Eu(U,y)&&(I=!1)}),I}var Dc=function(y,I){this.type=I.type,this.name=y,this.boundExpression=I};Dc.parse=function(y,I){if(y.length!==2||typeof y[1]!="string")return I.error("'var' expression requires exactly one string literal argument.");var U=y[1];return I.scope.has(U)?new Dc(U,I.scope.get(U)):I.error('Unknown variable "'+U+'". Make sure "'+U+'" has been bound in an enclosing "let" expression before using it.',1)},Dc.prototype.evaluate=function(y){return this.boundExpression.evaluate(y)},Dc.prototype.eachChild=function(){},Dc.prototype.outputDefined=function(){return!1},Dc.prototype.serialize=function(){return["var",this.name]};var ks=function(y,I,U,$,ae){I===void 0&&(I=[]),$===void 0&&($=new Hl),ae===void 0&&(ae=[]),this.registry=y,this.path=I,this.key=I.map(function(he){return"["+he+"]"}).join(""),this.scope=$,this.errors=ae,this.expectedType=U};ks.prototype.parse=function(y,I,U,$,ae){return ae===void 0&&(ae={}),I?this.concat(I,U,$)._parse(y,ae):this._parse(y,ae)},ks.prototype._parse=function(y,I){(y===null||typeof y=="string"||typeof y=="boolean"||typeof y=="number")&&(y=["literal",y]);function U(Mt,or,_r){return _r==="assert"?new xl(or,[Mt]):_r==="coerce"?new Po(or,[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 $=y[0];if(typeof $!="string")return this.error("Expression name must be a string, but found "+typeof $+' instead. If you wanted a literal array, use ["literal", [...]].',0),null;var ae=this.registry[$];if(ae){var he=ae.parse(y,this);if(!he)return null;if(this.expectedType){var Oe=this.expectedType,rt=he.type;if((Oe.kind==="string"||Oe.kind==="number"||Oe.kind==="boolean"||Oe.kind==="object"||Oe.kind==="array")&&rt.kind==="value")he=U(he,Oe,I.typeAnnotation||"assert");else if((Oe.kind==="color"||Oe.kind==="formatted"||Oe.kind==="resolvedImage")&&(rt.kind==="value"||rt.kind==="string"))he=U(he,Oe,I.typeAnnotation||"coerce");else if(this.checkSubtype(Oe,rt))return null}if(!(he instanceof Go)&&he.type.kind!=="resolvedImage"&&bc(he)){var gt=new Yo;try{he=new Go(he.type,he.evaluate(gt))}catch(Mt){return this.error(Mt.message),null}}return he}return this.error('Unknown expression "'+$+'". If you wanted a literal array, use ["literal", [...]].',0)}else return typeof y=="undefined"?this.error("'undefined' value invalid. Use null instead."):typeof y=="object"?this.error('Bare objects invalid. Use ["literal", {...}] instead.'):this.error("Expected an array, but found "+typeof y+" instead.")},ks.prototype.concat=function(y,I,U){var $=typeof y=="number"?this.path.concat(y):this.path,ae=U?this.scope.concat(U):this.scope;return new ks(this.registry,$,I||null,ae,this.errors)},ks.prototype.error=function(y){for(var I=[],U=arguments.length-1;U-- >0;)I[U]=arguments[U+1];var $=""+this.key+I.map(function(ae){return"["+ae+"]"}).join("");this.errors.push(new Us($,y))},ks.prototype.checkSubtype=function(y,I){var U=oc(y,I);return U&&this.error(U),U};function bc(m){if(m instanceof Dc)return bc(m.boundExpression);if(m instanceof Pa&&m.name==="error")return!1;if(m instanceof Hu)return!1;if(m instanceof Mu)return!1;var y=m instanceof Po||m instanceof xl,I=!0;return m.eachChild(function(U){y?I=I&&bc(U):I=I&&U instanceof Go}),I?ih(m)&&Eu(m,["zoom","heatmap-density","line-progress","accumulated","is-supported-script"]):!1}function du(m,y){for(var I=m.length-1,U=0,$=I,ae=0,he,Oe;U<=$;)if(ae=Math.floor((U+$)/2),he=m[ae],Oe=m[ae+1],he<=y){if(ae===I||y<Oe)return ae;U=ae+1}else if(he>y)$=ae-1;else throw new gs("Input is not a number.");return 0}var _u=function(y,I,U){this.type=y,this.input=I,this.labels=[],this.outputs=[];for(var $=0,ae=U;$<ae.length;$+=1){var he=ae[$],Oe=he[0],rt=he[1];this.labels.push(Oe),this.outputs.push(rt)}};_u.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,aa);if(!U)return null;var $=[],ae=null;I.expectedType&&I.expectedType.kind!=="value"&&(ae=I.expectedType);for(var he=1;he<y.length;he+=2){var Oe=he===1?-1/0:y[he],rt=y[he+1],gt=he,Mt=he+1;if(typeof Oe!="number")return I.error('Input/output pairs for "step" expressions must be defined using literal numeric values (not computed expressions) for the input values.',gt);if($.length&&$[$.length-1][0]>=Oe)return I.error('Input/output pairs for "step" expressions must be arranged with input values in strictly ascending order.',gt);var or=I.parse(rt,Mt,ae);if(!or)return null;ae=ae||or.type,$.push([Oe,or])}return new _u(ae,U,$)},_u.prototype.evaluate=function(y){var I=this.labels,U=this.outputs;if(I.length===1)return U[0].evaluate(y);var $=this.input.evaluate(y);if($<=I[0])return U[0].evaluate(y);var ae=I.length;if($>=I[ae-1])return U[ae-1].evaluate(y);var he=du(I,$);return U[he].evaluate(y)},_u.prototype.eachChild=function(y){y(this.input);for(var I=0,U=this.outputs;I<U.length;I+=1){var $=U[I];y($)}},_u.prototype.outputDefined=function(){return this.outputs.every(function(y){return y.outputDefined()})},_u.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 al(m,y,I){return m*(1-I)+y*I}function nh(m,y,I){return new fs(al(m.r,y.r,I),al(m.g,y.g,I),al(m.b,y.b,I),al(m.a,y.a,I))}function bh(m,y,I){return m.map(function(U,$){return al(U,y[$],I)})}var zu=Object.freeze({__proto__:null,number:al,color:nh,array:bh}),Fc=.95047,wc=1,bd=1.08883,_f=4/29,Lf=6/29,Ou=3*Lf*Lf,xf=Lf*Lf*Lf,jl=Math.PI/180,lf=180/Math.PI;function Vh(m){return m>xf?Math.pow(m,1/3):m/Ou+_f}function Pf(m){return m>Lf?m*m*m:Ou*(m-_f)}function Ls(m){return 255*(m<=.0031308?12.92*m:1.055*Math.pow(m,1/2.4)-.055)}function vu(m){return m/=255,m<=.04045?m/12.92:Math.pow((m+.055)/1.055,2.4)}function Cu(m){var y=vu(m.r),I=vu(m.g),U=vu(m.b),$=Vh((.4124564*y+.3575761*I+.1804375*U)/Fc),ae=Vh((.2126729*y+.7151522*I+.072175*U)/wc),he=Vh((.0193339*y+.119192*I+.9503041*U)/bd);return{l:116*ae-16,a:500*($-ae),b:200*(ae-he),alpha:m.a}}function Wf(m){var y=(m.l+16)/116,I=isNaN(m.a)?y:y+m.a/500,U=isNaN(m.b)?y:y-m.b/200;return y=wc*Pf(y),I=Fc*Pf(I),U=bd*Pf(U),new fs(Ls(3.2404542*I-1.5371385*y-.4985314*U),Ls(-.969266*I+1.8760108*y+.041556*U),Ls(.0556434*I-.2040259*y+1.0572252*U),m.alpha)}function Vs(m,y,I){return{l:al(m.l,y.l,I),a:al(m.a,y.a,I),b:al(m.b,y.b,I),alpha:al(m.alpha,y.alpha,I)}}function bf(m){var y=Cu(m),I=y.l,U=y.a,$=y.b,ae=Math.atan2($,U)*lf;return{h:ae<0?ae+360:ae,c:Math.sqrt(U*U+$*$),l:I,alpha:m.a}}function zc(m){var y=m.h*jl,I=m.c,U=m.l;return Wf({l:U,a:Math.cos(y)*I,b:Math.sin(y)*I,alpha:m.alpha})}function Wu(m,y,I){var U=y-m;return m+I*(U>180||U<-180?U-360*Math.round(U/360):U)}function If(m,y,I){return{h:Wu(m.h,y.h,I),c:al(m.c,y.c,I),l:al(m.l,y.l,I),alpha:al(m.alpha,y.alpha,I)}}var Xu={forward:Cu,reverse:Wf,interpolate:Vs},uf={forward:bf,reverse:zc,interpolate:If},Xf=Object.freeze({__proto__:null,lab:Xu,hcl:uf}),Wl=function(y,I,U,$,ae){this.type=y,this.operator=I,this.interpolation=U,this.input=$,this.labels=[],this.outputs=[];for(var he=0,Oe=ae;he<Oe.length;he+=1){var rt=Oe[he],gt=rt[0],Mt=rt[1];this.labels.push(gt),this.outputs.push(Mt)}};Wl.interpolationFactor=function(y,I,U,$){var ae=0;if(y.name==="exponential")ae=ah(I,y.base,U,$);else if(y.name==="linear")ae=ah(I,1,U,$);else if(y.name==="cubic-bezier"){var he=y.controlPoints,Oe=new s(he[0],he[1],he[2],he[3]);ae=Oe.solve(ah(I,1,U,$))}return ae},Wl.parse=function(y,I){var U=y[0],$=y[1],ae=y[2],he=y.slice(3);if(!Array.isArray($)||$.length===0)return I.error("Expected an interpolation type expression.",1);if($[0]==="linear")$={name:"linear"};else if($[0]==="exponential"){var Oe=$[1];if(typeof Oe!="number")return I.error("Exponential interpolation requires a numeric base.",1,1);$={name:"exponential",base:Oe}}else if($[0]==="cubic-bezier"){var rt=$.slice(1);if(rt.length!==4||rt.some(function(Ti){return typeof Ti!="number"||Ti<0||Ti>1}))return I.error("Cubic bezier interpolation requires four numeric arguments with values between 0 and 1.",1);$={name:"cubic-bezier",controlPoints:rt}}else return I.error("Unknown interpolation type "+String($[0]),1,0);if(y.length-1<4)return I.error("Expected at least 4 arguments, but found only "+(y.length-1)+".");if((y.length-1)%2!==0)return I.error("Expected an even number of arguments.");if(ae=I.parse(ae,2,aa),!ae)return null;var gt=[],Mt=null;U==="interpolate-hcl"||U==="interpolate-lab"?Mt=Ol:I.expectedType&&I.expectedType.kind!=="value"&&(Mt=I.expectedType);for(var or=0;or<he.length;or+=2){var _r=he[or],vr=he[or+1],Fr=or+3,ai=or+4;if(typeof _r!="number")return I.error('Input/output pairs for "interpolate" expressions must be defined using literal numeric values (not computed expressions) for the input values.',Fr);if(gt.length&>[gt.length-1][0]>=_r)return I.error('Input/output pairs for "interpolate" expressions must be arranged with input values in strictly ascending order.',Fr);var Gi=I.parse(vr,ai,Mt);if(!Gi)return null;Mt=Mt||Gi.type,gt.push([_r,Gi])}return Mt.kind!=="number"&&Mt.kind!=="color"&&!(Mt.kind==="array"&&Mt.itemType.kind==="number"&&typeof Mt.N=="number")?I.error("Type "+qs(Mt)+" is not interpolatable."):new Wl(Mt,U,$,ae,gt)},Wl.prototype.evaluate=function(y){var I=this.labels,U=this.outputs;if(I.length===1)return U[0].evaluate(y);var $=this.input.evaluate(y);if($<=I[0])return U[0].evaluate(y);var ae=I.length;if($>=I[ae-1])return U[ae-1].evaluate(y);var he=du(I,$),Oe=I[he],rt=I[he+1],gt=Wl.interpolationFactor(this.interpolation,$,Oe,rt),Mt=U[he].evaluate(y),or=U[he+1].evaluate(y);return this.operator==="interpolate"?zu[this.type.kind.toLowerCase()](Mt,or,gt):this.operator==="interpolate-hcl"?uf.reverse(uf.interpolate(uf.forward(Mt),uf.forward(or),gt)):Xu.reverse(Xu.interpolate(Xu.forward(Mt),Xu.forward(or),gt))},Wl.prototype.eachChild=function(y){y(this.input);for(var I=0,U=this.outputs;I<U.length;I+=1){var $=U[I];y($)}},Wl.prototype.outputDefined=function(){return this.outputs.every(function(y){return y.outputDefined()})},Wl.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 ah(m,y,I,U){var $=U-I,ae=m-I;return $===0?0:y===1?ae/$:(Math.pow(y,ae)-1)/(Math.pow(y,$)-1)}var Zu=function(y,I){this.type=y,this.args=I};Zu.parse=function(y,I){if(y.length<2)return I.error("Expectected at least one argument.");var U=null,$=I.expectedType;$&&$.kind!=="value"&&(U=$);for(var ae=[],he=0,Oe=y.slice(1);he<Oe.length;he+=1){var rt=Oe[he],gt=I.parse(rt,1+ae.length,U,void 0,{typeAnnotation:"omit"});if(!gt)return null;U=U||gt.type,ae.push(gt)}var Mt=$&&ae.some(function(or){return oc($,or.type)});return Mt?new Zu(Do,ae):new Zu(U,ae)},Zu.prototype.evaluate=function(y){for(var I=null,U=0,$,ae=0,he=this.args;ae<he.length;ae+=1){var Oe=he[ae];if(U++,I=Oe.evaluate(y),I&&I instanceof hl&&!I.available&&($||($=I.name),I=null,U===this.args.length&&(I=$)),I!==null)break}return I},Zu.prototype.eachChild=function(y){this.args.forEach(y)},Zu.prototype.outputDefined=function(){return this.args.every(function(y){return y.outputDefined()})},Zu.prototype.serialize=function(){var y=["coalesce"];return this.eachChild(function(I){y.push(I.serialize())}),y};var Oc=function(y,I){this.type=I.type,this.bindings=[].concat(y),this.result=I};Oc.prototype.evaluate=function(y){return this.result.evaluate(y)},Oc.prototype.eachChild=function(y){for(var I=0,U=this.bindings;I<U.length;I+=1){var $=U[I];y($[1])}y(this.result)},Oc.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=[],$=1;$<y.length-1;$+=2){var ae=y[$];if(typeof ae!="string")return I.error("Expected string, but found "+typeof ae+" instead.",$);if(/[^a-zA-Z0-9_]/.test(ae))return I.error("Variable names must contain only alphanumeric characters or '_'.",$);var he=I.parse(y[$+1],$+1);if(!he)return null;U.push([ae,he])}var Oe=I.parse(y[y.length-1],y.length-1,I.expectedType,U);return Oe?new Oc(U,Oe):null},Oc.prototype.outputDefined=function(){return this.result.outputDefined()},Oc.prototype.serialize=function(){for(var y=["let"],I=0,U=this.bindings;I<U.length;I+=1){var $=U[I],ae=$[0],he=$[1];y.push(ae,he.serialize())}return y.push(this.result.serialize()),y};var Tc=function(y,I,U){this.type=y,this.index=I,this.input=U};Tc.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,aa),$=I.parse(y[2],2,Kl(I.expectedType||Do));if(!U||!$)return null;var ae=$.type;return new Tc(ae.itemType,U,$)},Tc.prototype.evaluate=function(y){var I=this.index.evaluate(y),U=this.input.evaluate(y);if(I<0)throw new gs("Array index out of bounds: "+I+" < 0.");if(I>=U.length)throw new gs("Array index out of bounds: "+I+" > "+(U.length-1)+".");if(I!==Math.floor(I))throw new gs("Array index must be an integer, but found "+I+" instead.");return U[I]},Tc.prototype.eachChild=function(y){y(this.index),y(this.input)},Tc.prototype.outputDefined=function(){return!1},Tc.prototype.serialize=function(){return["at",this.index.serialize(),this.input.serialize()]};var wl=function(y,I){this.type=qo,this.needle=y,this.haystack=I};wl.parse=function(y,I){if(y.length!==3)return I.error("Expected 2 arguments, but found "+(y.length-1)+" instead.");var U=I.parse(y[1],1,Do),$=I.parse(y[2],2,Do);return!U||!$?null:Cf(U.type,[qo,Oo,aa,ac,Do])?new wl(U,$):I.error("Expected first argument to be of type boolean, string, number or null, but found "+qs(U.type)+" instead")},wl.prototype.evaluate=function(y){var I=this.needle.evaluate(y),U=this.haystack.evaluate(y);if(!U)return!1;if(!sc(I,["boolean","string","number","null"]))throw new gs("Expected first argument to be of type boolean, string, number or null, but found "+qs(Cs(I))+" instead.");if(!sc(U,["string","array"]))throw new gs("Expected second argument to be of type array or string, but found "+qs(Cs(U))+" instead.");return U.indexOf(I)>=0},wl.prototype.eachChild=function(y){y(this.needle),y(this.haystack)},wl.prototype.outputDefined=function(){return!0},wl.prototype.serialize=function(){return["in",this.needle.serialize(),this.haystack.serialize()]};var pu=function(y,I,U){this.type=aa,this.needle=y,this.haystack=I,this.fromIndex=U};pu.parse=function(y,I){if(y.length<=2||y.length>=5)return I.error("Expected 3 or 4 arguments, but found "+(y.length-1)+" instead.");var U=I.parse(y[1],1,Do),$=I.parse(y[2],2,Do);if(!U||!$)return null;if(!Cf(U.type,[qo,Oo,aa,ac,Do]))return I.error("Expected first argument to be of type boolean, string, number or null, but found "+qs(U.type)+" instead");if(y.length===4){var ae=I.parse(y[3],3,aa);return ae?new pu(U,$,ae):null}else return new pu(U,$)},pu.prototype.evaluate=function(y){var I=this.needle.evaluate(y),U=this.haystack.evaluate(y);if(!sc(I,["boolean","string","number","null"]))throw new gs("Expected first argument to be of type boolean, string, number or null, but found "+qs(Cs(I))+" instead.");if(!sc(U,["string","array"]))throw new gs("Expected second argument to be of type array or string, but found "+qs(Cs(U))+" instead.");if(this.fromIndex){var $=this.fromIndex.evaluate(y);return U.indexOf(I,$)}return U.indexOf(I)},pu.prototype.eachChild=function(y){y(this.needle),y(this.haystack),this.fromIndex&&y(this.fromIndex)},pu.prototype.outputDefined=function(){return!1},pu.prototype.serialize=function(){if(this.fromIndex!=null&&this.fromIndex!==void 0){var y=this.fromIndex.serialize();return["index-of",this.needle.serialize(),this.haystack.serialize(),y]}return["index-of",this.needle.serialize(),this.haystack.serialize()]};var qc=function(y,I,U,$,ae,he){this.inputType=y,this.type=I,this.input=U,this.cases=$,this.outputs=ae,this.otherwise=he};qc.parse=function(y,I){if(y.length<5)return I.error("Expected at least 4 arguments, but found only "+(y.length-1)+".");if(y.length%2!==1)return I.error("Expected an even number of arguments.");var U,$;I.expectedType&&I.expectedType.kind!=="value"&&($=I.expectedType);for(var ae={},he=[],Oe=2;Oe<y.length-1;Oe+=2){var rt=y[Oe],gt=y[Oe+1];Array.isArray(rt)||(rt=[rt]);var Mt=I.concat(Oe);if(rt.length===0)return Mt.error("Expected at least one branch label.");for(var or=0,_r=rt;or<_r.length;or+=1){var vr=_r[or];if(typeof vr!="number"&&typeof vr!="string")return Mt.error("Branch labels must be numbers or strings.");if(typeof vr=="number"&&Math.abs(vr)>Number.MAX_SAFE_INTEGER)return Mt.error("Branch labels must be integers no larger than "+Number.MAX_SAFE_INTEGER+".");if(typeof vr=="number"&&Math.floor(vr)!==vr)return Mt.error("Numeric branch labels must be integer values.");if(!U)U=Cs(vr);else if(Mt.checkSubtype(U,Cs(vr)))return null;if(typeof ae[String(vr)]!="undefined")return Mt.error("Branch labels must be unique.");ae[String(vr)]=he.length}var Fr=I.parse(gt,Oe,$);if(!Fr)return null;$=$||Fr.type,he.push(Fr)}var ai=I.parse(y[1],1,Do);if(!ai)return null;var Gi=I.parse(y[y.length-1],y.length-1,$);return!Gi||ai.type.kind!=="value"&&I.concat(1).checkSubtype(U,ai.type)?null:new qc(U,$,ai,ae,he,Gi)},qc.prototype.evaluate=function(y){var I=this.input.evaluate(y),U=Cs(I)===this.inputType&&this.outputs[this.cases[I]]||this.otherwise;return U.evaluate(y)},qc.prototype.eachChild=function(y){y(this.input),this.outputs.forEach(y),y(this.otherwise)},qc.prototype.outputDefined=function(){return this.outputs.every(function(y){return y.outputDefined()})&&this.otherwise.outputDefined()},qc.prototype.serialize=function(){for(var y=this,I=["match",this.input.serialize()],U=Object.keys(this.cases).sort(),$=[],ae={},he=0,Oe=U;he<Oe.length;he+=1){var rt=Oe[he],gt=ae[this.cases[rt]];gt===void 0?(ae[this.cases[rt]]=$.length,$.push([this.cases[rt],[rt]])):$[gt][1].push(rt)}for(var Mt=function(ai){return y.inputType.kind==="number"?Number(ai):ai},or=0,_r=$;or<_r.length;or+=1){var vr=_r[or],gt=vr[0],Fr=vr[1];Fr.length===1?I.push(Mt(Fr[0])):I.push(Fr.map(Mt)),I.push(this.outputs[outputIndex$1].serialize())}return I.push(this.otherwise.serialize()),I};var cf=function(y,I,U){this.type=y,this.branches=I,this.otherwise=U};cf.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 $=[],ae=1;ae<y.length-1;ae+=2){var he=I.parse(y[ae],ae,qo);if(!he)return null;var Oe=I.parse(y[ae+1],ae+1,U);if(!Oe)return null;$.push([he,Oe]),U=U||Oe.type}var rt=I.parse(y[y.length-1],y.length-1,U);return rt?new cf(U,$,rt):null},cf.prototype.evaluate=function(y){for(var I=0,U=this.branches;I<U.length;I+=1){var $=U[I],ae=$[0],he=$[1];if(ae.evaluate(y))return he.evaluate(y)}return this.otherwise.evaluate(y)},cf.prototype.eachChild=function(y){for(var I=0,U=this.branches;I<U.length;I+=1){var $=U[I],ae=$[0],he=$[1];y(ae),y(he)}y(this.otherwise)},cf.prototype.outputDefined=function(){return this.branches.every(function(y){var I=y[0],U=y[1];return U.outputDefined()})&&this.otherwise.outputDefined()},cf.prototype.serialize=function(){var y=["case"];return this.eachChild(function(I){y.push(I.serialize())}),y};var fc=function(y,I,U,$){this.type=y,this.input=I,this.beginIndex=U,this.endIndex=$};fc.parse=function(y,I){if(y.length<=2||y.length>=5)return I.error("Expected 3 or 4 arguments, but found "+(y.length-1)+" instead.");var U=I.parse(y[1],1,Do),$=I.parse(y[2],2,aa);if(!U||!$)return null;if(!Cf(U.type,[Kl(Do),Oo,Do]))return I.error("Expected first argument to be of type array or string, but found "+qs(U.type)+" instead");if(y.length===4){var ae=I.parse(y[3],3,aa);return ae?new fc(U.type,U,$,ae):null}else return new fc(U.type,U,$)},fc.prototype.evaluate=function(y){var I=this.input.evaluate(y),U=this.beginIndex.evaluate(y);if(!sc(I,["string","array"]))throw new gs("Expected first argument to be of type array or string, but found "+qs(Cs(I))+" instead.");if(this.endIndex){var $=this.endIndex.evaluate(y);return I.slice(U,$)}return I.slice(U)},fc.prototype.eachChild=function(y){y(this.input),y(this.beginIndex),this.endIndex&&y(this.endIndex)},fc.prototype.outputDefined=function(){return!1},fc.prototype.serialize=function(){if(this.endIndex!=null&&this.endIndex!==void 0){var y=this.endIndex.serialize();return["slice",this.input.serialize(),this.beginIndex.serialize(),y]}return["slice",this.input.serialize(),this.beginIndex.serialize()]};function Bc(m,y){return m==="=="||m==="!="?y.kind==="boolean"||y.kind==="string"||y.kind==="number"||y.kind==="null"||y.kind==="value":y.kind==="string"||y.kind==="number"||y.kind==="value"}function At(m,y,I){return y===I}function Xt(m,y,I){return y!==I}function kr(m,y,I){return y<I}function Ar(m,y,I){return y>I}function Kr(m,y,I){return y<=I}function Ei(m,y,I){return y>=I}function Wi(m,y,I,U){return U.compare(y,I)===0}function hn(m,y,I,U){return!Wi(m,y,I,U)}function Tn(m,y,I,U){return U.compare(y,I)<0}function Bn(m,y,I,U){return U.compare(y,I)>0}function Zi(m,y,I,U){return U.compare(y,I)<=0}function $i(m,y,I,U){return U.compare(y,I)>=0}function an(m,y,I){var U=m!=="=="&&m!=="!=";return function(){function $(ae,he,Oe){this.type=qo,this.lhs=ae,this.rhs=he,this.collator=Oe,this.hasUntypedArgument=ae.type.kind==="value"||he.type.kind==="value"}return $.parse=function(he,Oe){if(he.length!==3&&he.length!==4)return Oe.error("Expected two or three arguments.");var rt=he[0],gt=Oe.parse(he[1],1,Do);if(!gt)return null;if(!Bc(rt,gt.type))return Oe.concat(1).error('"'+rt+`" comparisons are not supported for type '`+qs(gt.type)+"'.");var Mt=Oe.parse(he[2],2,Do);if(!Mt)return null;if(!Bc(rt,Mt.type))return Oe.concat(2).error('"'+rt+`" comparisons are not supported for type '`+qs(Mt.type)+"'.");if(gt.type.kind!==Mt.type.kind&>.type.kind!=="value"&&Mt.type.kind!=="value")return Oe.error("Cannot compare types '"+qs(gt.type)+"' and '"+qs(Mt.type)+"'.");U&&(gt.type.kind==="value"&&Mt.type.kind!=="value"?gt=new xl(Mt.type,[gt]):gt.type.kind!=="value"&&Mt.type.kind==="value"&&(Mt=new xl(gt.type,[Mt])));var or=null;if(he.length===4){if(gt.type.kind!=="string"&&Mt.type.kind!=="string"&>.type.kind!=="value"&&Mt.type.kind!=="value")return Oe.error("Cannot use collator to compare non-string types.");if(or=Oe.parse(he[3],3,Uf),!or)return null}return new $(gt,Mt,or)},$.prototype.evaluate=function(he){var Oe=this.lhs.evaluate(he),rt=this.rhs.evaluate(he);if(U&&this.hasUntypedArgument){var gt=Cs(Oe),Mt=Cs(rt);if(gt.kind!==Mt.kind||!(gt.kind==="string"||gt.kind==="number"))throw new gs('Expected arguments for "'+m+'" to be (string, string) or (number, number), but found ('+gt.kind+", "+Mt.kind+") instead.")}if(this.collator&&!U&&this.hasUntypedArgument){var or=Cs(Oe),_r=Cs(rt);if(or.kind!=="string"||_r.kind!=="string")return y(he,Oe,rt)}return this.collator?I(he,Oe,rt,this.collator.evaluate(he)):y(he,Oe,rt)},$.prototype.eachChild=function(he){he(this.lhs),he(this.rhs),this.collator&&he(this.collator)},$.prototype.outputDefined=function(){return!0},$.prototype.serialize=function(){var he=[m];return this.eachChild(function(Oe){he.push(Oe.serialize())}),he},$}()}var Di=an("==",At,Wi),$n=an("!=",Xt,hn),ka=an("<",kr,Tn),Ra=an(">",Ar,Bn),La=an("<=",Kr,Zi),Na=an(">=",Ei,$i),Yn=function(y,I,U,$,ae){this.type=Oo,this.number=y,this.locale=I,this.currency=U,this.minFractionDigits=$,this.maxFractionDigits=ae};Yn.parse=function(y,I){if(y.length!==3)return I.error("Expected two arguments.");var U=I.parse(y[1],1,aa);if(!U)return null;var $=y[2];if(typeof $!="object"||Array.isArray($))return I.error("NumberFormat options argument must be an object.");var ae=null;if($.locale&&(ae=I.parse($.locale,1,Oo),!ae))return null;var he=null;if($.currency&&(he=I.parse($.currency,1,Oo),!he))return null;var Oe=null;if($["min-fraction-digits"]&&(Oe=I.parse($["min-fraction-digits"],1,aa),!Oe))return null;var rt=null;return $["max-fraction-digits"]&&(rt=I.parse($["max-fraction-digits"],1,aa),!rt)?null:new Yn(U,ae,he,Oe,rt)},Yn.prototype.evaluate=function(y){return new Intl.NumberFormat(this.locale?this.locale.evaluate(y):[],{style:this.currency?"currency":"decimal",currency:this.currency?this.currency.evaluate(y):void 0,minimumFractionDigits:this.minFractionDigits?this.minFractionDigits.evaluate(y):void 0,maximumFractionDigits:this.maxFractionDigits?this.maxFractionDigits.evaluate(y):void 0}).format(this.number.evaluate(y))},Yn.prototype.eachChild=function(y){y(this.number),this.locale&&y(this.locale),this.currency&&y(this.currency),this.minFractionDigits&&y(this.minFractionDigits),this.maxFractionDigits&&y(this.maxFractionDigits)},Yn.prototype.outputDefined=function(){return!1},Yn.prototype.serialize=function(){var y={};return this.locale&&(y.locale=this.locale.serialize()),this.currency&&(y.currency=this.currency.serialize()),this.minFractionDigits&&(y["min-fraction-digits"]=this.minFractionDigits.serialize()),this.maxFractionDigits&&(y["max-fraction-digits"]=this.maxFractionDigits.serialize()),["number-format",this.number.serialize(),y]};var zn=function(y){this.type=aa,this.input=y};zn.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 "+qs(U.type)+" instead."):new zn(U):null},zn.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 gs("Expected value to be of type string or array, but found "+qs(Cs(I))+" instead.")},zn.prototype.eachChild=function(y){y(this.input)},zn.prototype.outputDefined=function(){return!1},zn.prototype.serialize=function(){var y=["length"];return this.eachChild(function(I){y.push(I.serialize())}),y};var Ka={"==":Di,"!=":$n,">":Ra,"<":ka,">=":Na,"<=":La,array:xl,at:Tc,boolean:xl,case:cf,coalesce:Zu,collator:Hu,format:Gu,image:Bs,in:wl,"index-of":pu,interpolate:Wl,"interpolate-hcl":Wl,"interpolate-lab":Wl,length:zn,let:Oc,literal:Go,match:qc,number:xl,"number-format":Yn,object:xl,slice:fc,step:_u,string:xl,"to-boolean":Po,"to-color":Po,"to-number":Po,"to-string":Po,var:Dc,within:Mu};function bo(m,y){var I=y[0],U=y[1],$=y[2],ae=y[3];I=I.evaluate(m),U=U.evaluate(m),$=$.evaluate(m);var he=ae?ae.evaluate(m):1,Oe=lc(I,U,$,he);if(Oe)throw new gs(Oe);return new fs(I/255*he,U/255*he,$/255*he,he)}function Xo(m,y){return m in y}function Ms(m,y){var I=y[m];return typeof I=="undefined"?null:I}function os(m,y,I,U){for(;I<=U;){var $=I+U>>1;if(y[$]===m)return!0;y[$]>m?U=$-1:I=$+1}return!1}function Ts(m){return{type:m}}Pa.register(Ka,{error:[rf,[Oo],function(m,y){var I=y[0];throw new gs(I.evaluate(m))}],typeof:[Oo,[Do],function(m,y){var I=y[0];return qs(Cs(I.evaluate(m)))}],"to-rgba":[Kl(aa,4),[Ol],function(m,y){var I=y[0];return I.evaluate(m).toArray()}],rgb:[Ol,[aa,aa,aa],bo],rgba:[Ol,[aa,aa,aa,aa],bo],has:{type:qo,overloads:[[[Oo],function(m,y){var I=y[0];return Xo(I.evaluate(m),m.properties())}],[[Oo,Pc],function(m,y){var I=y[0],U=y[1];return Xo(I.evaluate(m),U.evaluate(m))}]]},get:{type:Do,overloads:[[[Oo],function(m,y){var I=y[0];return Ms(I.evaluate(m),m.properties())}],[[Oo,Pc],function(m,y){var I=y[0],U=y[1];return Ms(I.evaluate(m),U.evaluate(m))}]]},"feature-state":[Do,[Oo],function(m,y){var I=y[0];return Ms(I.evaluate(m),m.featureState||{})}],properties:[Pc,[],function(m){return m.properties()}],"geometry-type":[Oo,[],function(m){return m.geometryType()}],id:[Do,[],function(m){return m.id()}],zoom:[aa,[],function(m){return m.globals.zoom}],"heatmap-density":[aa,[],function(m){return m.globals.heatmapDensity||0}],"line-progress":[aa,[],function(m){return m.globals.lineProgress||0}],accumulated:[Do,[],function(m){return m.globals.accumulated===void 0?null:m.globals.accumulated}],"+":[aa,Ts(aa),function(m,y){for(var I=0,U=0,$=y;U<$.length;U+=1){var ae=$[U];I+=ae.evaluate(m)}return I}],"*":[aa,Ts(aa),function(m,y){for(var I=1,U=0,$=y;U<$.length;U+=1){var ae=$[U];I*=ae.evaluate(m)}return I}],"-":{type:aa,overloads:[[[aa,aa],function(m,y){var I=y[0],U=y[1];return I.evaluate(m)-U.evaluate(m)}],[[aa],function(m,y){var I=y[0];return-I.evaluate(m)}]]},"/":[aa,[aa,aa],function(m,y){var I=y[0],U=y[1];return I.evaluate(m)/U.evaluate(m)}],"%":[aa,[aa,aa],function(m,y){var I=y[0],U=y[1];return I.evaluate(m)%U.evaluate(m)}],ln2:[aa,[],function(){return Math.LN2}],pi:[aa,[],function(){return Math.PI}],e:[aa,[],function(){return Math.E}],"^":[aa,[aa,aa],function(m,y){var I=y[0],U=y[1];return Math.pow(I.evaluate(m),U.evaluate(m))}],sqrt:[aa,[aa],function(m,y){var I=y[0];return Math.sqrt(I.evaluate(m))}],log10:[aa,[aa],function(m,y){var I=y[0];return Math.log(I.evaluate(m))/Math.LN10}],ln:[aa,[aa],function(m,y){var I=y[0];return Math.log(I.evaluate(m))}],log2:[aa,[aa],function(m,y){var I=y[0];return Math.log(I.evaluate(m))/Math.LN2}],sin:[aa,[aa],function(m,y){var I=y[0];return Math.sin(I.evaluate(m))}],cos:[aa,[aa],function(m,y){var I=y[0];return Math.cos(I.evaluate(m))}],tan:[aa,[aa],function(m,y){var I=y[0];return Math.tan(I.evaluate(m))}],asin:[aa,[aa],function(m,y){var I=y[0];return Math.asin(I.evaluate(m))}],acos:[aa,[aa],function(m,y){var I=y[0];return Math.acos(I.evaluate(m))}],atan:[aa,[aa],function(m,y){var I=y[0];return Math.atan(I.evaluate(m))}],min:[aa,Ts(aa),function(m,y){return Math.min.apply(Math,y.map(function(I){return I.evaluate(m)}))}],max:[aa,Ts(aa),function(m,y){return Math.max.apply(Math,y.map(function(I){return I.evaluate(m)}))}],abs:[aa,[aa],function(m,y){var I=y[0];return Math.abs(I.evaluate(m))}],round:[aa,[aa],function(m,y){var I=y[0],U=I.evaluate(m);return U<0?-Math.round(-U):Math.round(U)}],floor:[aa,[aa],function(m,y){var I=y[0];return Math.floor(I.evaluate(m))}],ceil:[aa,[aa],function(m,y){var I=y[0];return Math.ceil(I.evaluate(m))}],"filter-==":[qo,[Oo,Do],function(m,y){var I=y[0],U=y[1];return m.properties()[I.value]===U.value}],"filter-id-==":[qo,[Do],function(m,y){var I=y[0];return m.id()===I.value}],"filter-type-==":[qo,[Oo],function(m,y){var I=y[0];return m.geometryType()===I.value}],"filter-<":[qo,[Oo,Do],function(m,y){var I=y[0],U=y[1],$=m.properties()[I.value],ae=U.value;return typeof $==typeof ae&&$<ae}],"filter-id-<":[qo,[Do],function(m,y){var I=y[0],U=m.id(),$=I.value;return typeof U==typeof $&&U<$}],"filter->":[qo,[Oo,Do],function(m,y){var I=y[0],U=y[1],$=m.properties()[I.value],ae=U.value;return typeof $==typeof ae&&$>ae}],"filter-id->":[qo,[Do],function(m,y){var I=y[0],U=m.id(),$=I.value;return typeof U==typeof $&&U>$}],"filter-<=":[qo,[Oo,Do],function(m,y){var I=y[0],U=y[1],$=m.properties()[I.value],ae=U.value;return typeof $==typeof ae&&$<=ae}],"filter-id-<=":[qo,[Do],function(m,y){var I=y[0],U=m.id(),$=I.value;return typeof U==typeof $&&U<=$}],"filter->=":[qo,[Oo,Do],function(m,y){var I=y[0],U=y[1],$=m.properties()[I.value],ae=U.value;return typeof $==typeof ae&&$>=ae}],"filter-id->=":[qo,[Do],function(m,y){var I=y[0],U=m.id(),$=I.value;return typeof U==typeof $&&U>=$}],"filter-has":[qo,[Do],function(m,y){var I=y[0];return I.value in m.properties()}],"filter-has-id":[qo,[],function(m){return m.id()!==null&&m.id()!==void 0}],"filter-type-in":[qo,[Kl(Oo)],function(m,y){var I=y[0];return I.value.indexOf(m.geometryType())>=0}],"filter-id-in":[qo,[Kl(Do)],function(m,y){var I=y[0];return I.value.indexOf(m.id())>=0}],"filter-in-small":[qo,[Oo,Kl(Do)],function(m,y){var I=y[0],U=y[1];return U.value.indexOf(m.properties()[I.value])>=0}],"filter-in-large":[qo,[Oo,Kl(Do)],function(m,y){var I=y[0],U=y[1];return os(m.properties()[I.value],U.value,0,U.value.length-1)}],all:{type:qo,overloads:[[[qo,qo],function(m,y){var I=y[0],U=y[1];return I.evaluate(m)&&U.evaluate(m)}],[Ts(qo),function(m,y){for(var I=0,U=y;I<U.length;I+=1){var $=U[I];if(!$.evaluate(m))return!1}return!0}]]},any:{type:qo,overloads:[[[qo,qo],function(m,y){var I=y[0],U=y[1];return I.evaluate(m)||U.evaluate(m)}],[Ts(qo),function(m,y){for(var I=0,U=y;I<U.length;I+=1){var $=U[I];if($.evaluate(m))return!0}return!1}]]},"!":[qo,[qo],function(m,y){var I=y[0];return!I.evaluate(m)}],"is-supported-script":[qo,[Oo],function(m,y){var I=y[0],U=m.globals&&m.globals.isSupportedScript;return U?U(I.evaluate(m)):!0}],upcase:[Oo,[Oo],function(m,y){var I=y[0];return I.evaluate(m).toUpperCase()}],downcase:[Oo,[Oo],function(m,y){var I=y[0];return I.evaluate(m).toLowerCase()}],concat:[Oo,Ts(Do),function(m,y){return y.map(function(I){return js(I.evaluate(m))}).join("")}],"resolved-locale":[Oo,[Uf],function(m,y){var I=y[0];return I.evaluate(m).resolvedLocale()}]});function Ho(m){return{result:"success",value:m}}function yl(m){return{result:"error",value:m}}function Xs(m){return m["property-type"]==="data-driven"||m["property-type"]==="cross-faded-data-driven"}function Ps(m){return!!m.expression&&m.expression.parameters.indexOf("zoom")>-1}function va(m){return!!m.expression&&m.expression.interpolated}function no(m){return m instanceof Number?"number":m instanceof String?"string":m instanceof Boolean?"boolean":Array.isArray(m)?"array":m===null?"null":typeof m}function _s(m){return typeof m=="object"&&m!==null&&!Array.isArray(m)}function is(m){return m}function $l(m,y){var I=y.type==="color",U=m.stops&&typeof m.stops[0][0]=="object",$=U||m.property!==void 0,ae=U||!$,he=m.type||(va(y)?"exponential":"interval");if(I&&(m=zl({},m),m.stops&&(m.stops=m.stops.map(function(ha){return[ha[0],fs.parse(ha[1])]})),m.default?m.default=fs.parse(m.default):m.default=fs.parse(y.default)),m.colorSpace&&m.colorSpace!=="rgb"&&!Xf[m.colorSpace])throw new Error("Unknown color space: "+m.colorSpace);var Oe,rt,gt;if(he==="exponential")Oe=gu;else if(he==="interval")Oe=Nc;else if(he==="categorical"){Oe=Yu,rt=Object.create(null);for(var Mt=0,or=m.stops;Mt<or.length;Mt+=1){var _r=or[Mt];rt[_r[0]]=_r[1]}gt=typeof m.stops[0][0]}else if(he==="identity")Oe=Uc;else throw new Error('Unknown function type "'+he+'"');if(U){for(var vr={},Fr=[],ai=0;ai<m.stops.length;ai++){var Gi=m.stops[ai],Ti=Gi[0].zoom;vr[Ti]===void 0&&(vr[Ti]={zoom:Ti,type:m.type,property:m.property,default:m.default,stops:[]},Fr.push(Ti)),vr[Ti].stops.push([Gi[0].value,Gi[1]])}for(var bn=[],rn=0,xn=Fr;rn<xn.length;rn+=1){var Dn=xn[rn];bn.push([vr[Dn].zoom,$l(vr[Dn],y)])}var Zn={name:"linear"};return{kind:"composite",interpolationType:Zn,interpolationFactor:Wl.interpolationFactor.bind(void 0,Zn),zoomStops:bn.map(function(ha){return ha[0]}),evaluate:function(eo,za){var Za=eo.zoom;return gu({stops:bn,base:m.base},y,Za).evaluate(Za,za)}}}else if(ae){var ga=he==="exponential"?{name:"exponential",base:m.base!==void 0?m.base:1}:null;return{kind:"camera",interpolationType:ga,interpolationFactor:Wl.interpolationFactor.bind(void 0,ga),zoomStops:m.stops.map(function(ha){return ha[0]}),evaluate:function(ha){var eo=ha.zoom;return Oe(m,y,eo,rt,gt)}}}else return{kind:"source",evaluate:function(eo,za){var Za=za&&za.properties?za.properties[m.property]:void 0;return Za===void 0?ku(m.default,y.default):Oe(m,y,Za,rt,gt)}}}function ku(m,y,I){if(m!==void 0)return m;if(y!==void 0)return y;if(I!==void 0)return I}function Yu(m,y,I,U,$){var ae=typeof I===$?U[I]:void 0;return ku(ae,m.default,y.default)}function Nc(m,y,I){if(no(I)!=="number")return ku(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 $=du(m.stops.map(function(ae){return ae[0]}),I);return m.stops[$][1]}function gu(m,y,I){var U=m.base!==void 0?m.base:1;if(no(I)!=="number")return ku(m.default,y.default);var $=m.stops.length;if($===1||I<=m.stops[0][0])return m.stops[0][1];if(I>=m.stops[$-1][0])return m.stops[$-1][1];var ae=du(m.stops.map(function(or){return or[0]}),I),he=xu(I,U,m.stops[ae][0],m.stops[ae+1][0]),Oe=m.stops[ae][1],rt=m.stops[ae+1][1],gt=zu[y.type]||is;if(m.colorSpace&&m.colorSpace!=="rgb"){var Mt=Xf[m.colorSpace];gt=function(or,_r){return Mt.reverse(Mt.interpolate(Mt.forward(or),Mt.forward(_r),he))}}return typeof Oe.evaluate=="function"?{evaluate:function(){for(var _r=[],vr=arguments.length;vr--;)_r[vr]=arguments[vr];var Fr=Oe.evaluate.apply(void 0,_r),ai=rt.evaluate.apply(void 0,_r);if(!(Fr===void 0||ai===void 0))return gt(Fr,ai,he)}}:gt(Oe,rt,he)}function Uc(m,y,I){return y.type==="color"?I=fs.parse(I):y.type==="formatted"?I=Jl.fromString(I.toString()):y.type==="resolvedImage"?I=hl.fromString(I.toString()):no(I)!==y.type&&(y.type!=="enum"||!y.values[I])&&(I=void 0),ku(I,m.default,y.default)}function xu(m,y,I,U){var $=U-I,ae=m-I;return $===0?0:y===1?ae/$:(Math.pow(y,ae)-1)/(Math.pow(y,$)-1)}var Ac=function(y,I){this.expression=y,this._warningHistory={},this._evaluator=new Yo,this._defaultValue=I?ee(I):null,this._enumValues=I&&I.type==="enum"?I.values:null};Ac.prototype.evaluateWithoutErrorHandling=function(y,I,U,$,ae,he){return this._evaluator.globals=y,this._evaluator.feature=I,this._evaluator.featureState=U,this._evaluator.canonical=$,this._evaluator.availableImages=ae||null,this._evaluator.formattedSection=he,this.expression.evaluate(this._evaluator)},Ac.prototype.evaluate=function(y,I,U,$,ae,he){this._evaluator.globals=y,this._evaluator.feature=I||null,this._evaluator.featureState=U||null,this._evaluator.canonical=$,this._evaluator.availableImages=ae||null,this._evaluator.formattedSection=he||null;try{var Oe=this.expression.evaluate(this._evaluator);if(Oe==null||typeof Oe=="number"&&Oe!==Oe)return this._defaultValue;if(this._enumValues&&!(Oe in this._enumValues))throw new gs("Expected value to be one of "+Object.keys(this._enumValues).map(function(rt){return JSON.stringify(rt)}).join(", ")+", but found "+JSON.stringify(Oe)+" instead.");return Oe}catch(rt){return this._warningHistory[rt.message]||(this._warningHistory[rt.message]=!0,typeof console!="undefined"&&console.warn(rt.message)),this._defaultValue}};function Ua(m){return Array.isArray(m)&&m.length>0&&typeof m[0]=="string"&&m[0]in Ka}function oo(m,y){var I=new ks(Ka,[],y?Q(y):void 0),U=I.parse(m,void 0,void 0,void 0,y&&y.type==="string"?{typeAnnotation:"coerce"}:void 0);return U?Ho(new Ac(U,y)):yl(I.errors)}var Vc=function(y,I){this.kind=y,this._styleExpression=I,this.isStateDependent=y!=="constant"&&!Ws(I.expression)};Vc.prototype.evaluateWithoutErrorHandling=function(y,I,U,$,ae,he){return this._styleExpression.evaluateWithoutErrorHandling(y,I,U,$,ae,he)},Vc.prototype.evaluate=function(y,I,U,$,ae,he){return this._styleExpression.evaluate(y,I,U,$,ae,he)};var hc=function(y,I,U,$){this.kind=y,this.zoomStops=U,this._styleExpression=I,this.isStateDependent=y!=="camera"&&!Ws(I.expression),this.interpolationType=$};hc.prototype.evaluateWithoutErrorHandling=function(y,I,U,$,ae,he){return this._styleExpression.evaluateWithoutErrorHandling(y,I,U,$,ae,he)},hc.prototype.evaluate=function(y,I,U,$,ae,he){return this._styleExpression.evaluate(y,I,U,$,ae,he)},hc.prototype.interpolationFactor=function(y,I,U){return this.interpolationType?Wl.interpolationFactor(this.interpolationType,y,I,U):0};function Ku(m,y){if(m=oo(m,y),m.result==="error")return m;var I=m.value.expression,U=ih(I);if(!U&&!Xs(y))return yl([new Us("","data expressions not supported")]);var $=Eu(I,["zoom"]);if(!$&&!Ps(y))return yl([new Us("","zoom expressions not supported")]);var ae=B(I);if(!ae&&!$)return yl([new Us("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.')]);if(ae instanceof Us)return yl([ae]);if(ae instanceof Wl&&!va(y))return yl([new Us("",'"interpolate" expressions cannot be used with this property')]);if(!ae)return Ho(U?new Vc("constant",m.value):new Vc("source",m.value));var he=ae instanceof Wl?ae.interpolation:void 0;return Ho(U?new hc("camera",m.value,ae.labels,he):new hc("composite",m.value,ae.labels,he))}var ue=function(y,I){this._parameters=y,this._specification=I,zl(this,$l(this._parameters,this._specification))};ue.deserialize=function(y){return new ue(y._parameters,y._specification)},ue.serialize=function(y){return{_parameters:y._parameters,_specification:y._specification}};function w(m,y){if(_s(m))return new ue(m,y);if(Ua(m)){var I=Ku(m,y);if(I.result==="error")throw new Error(I.value.map(function($){return $.key+": "+$.message}).join(", "));return I.value}else{var U=m;return typeof m=="string"&&y.type==="color"&&(U=fs.parse(m)),{kind:"constant",evaluate:function(){return U}}}}function B(m){var y=null;if(m instanceof Oc)y=B(m.result);else if(m instanceof Zu)for(var I=0,U=m.args;I<U.length;I+=1){var $=U[I];if(y=B($),y)break}else(m instanceof _u||m instanceof Wl)&&m.input instanceof Pa&&m.input.name==="zoom"&&(y=m);return y instanceof Us||m.eachChild(function(ae){var he=B(ae);he instanceof Us?y=he:!y&&he?y=new Us("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.'):y&&he&&y!==he&&(y=new Us("",'Only one zoom-based "step" or "interpolate" subexpression may be used in an expression.'))}),y}function Q(m){var y={color:Ol,string:Oo,number:aa,enum:Oo,boolean:qo,formatted:ml,resolvedImage:Zc};return m.type==="array"?Kl(y[m.value]||Do,m.length):y[m.type]}function ee(m){return m.type==="color"&&_s(m.default)?new fs(0,0,0,0):m.type==="color"?fs.parse(m.default)||null:m.default===void 0?null:m.default}function le(m){var y=m.key,I=m.value,U=m.valueSpec||{},$=m.objectElementValidators||{},ae=m.style,he=m.styleSpec,Oe=[],rt=no(I);if(rt!=="object")return[new _a(y,I,"object expected, "+rt+" found")];for(var gt in I){var Mt=gt.split(".")[0],or=U[Mt]||U["*"],_r=void 0;if($[Mt])_r=$[Mt];else if(U[Mt])_r=Qa;else if($["*"])_r=$["*"];else if(U["*"])_r=Qa;else{Oe.push(new _a(y,I[gt],'unknown property "'+gt+'"'));continue}Oe=Oe.concat(_r({key:(y&&y+".")+gt,value:I[gt],valueSpec:or,style:ae,styleSpec:he,object:I,objectKey:gt},I))}for(var vr in U)$[vr]||U[vr].required&&U[vr].default===void 0&&I[vr]===void 0&&Oe.push(new _a(y,I,'missing required property "'+vr+'"'));return Oe}function qe(m){var y=m.value,I=m.valueSpec,U=m.style,$=m.styleSpec,ae=m.key,he=m.arrayElementValidator||Qa;if(no(y)!=="array")return[new _a(ae,y,"array expected, "+no(y)+" found")];if(I.length&&y.length!==I.length)return[new _a(ae,y,"array length "+I.length+" expected, length "+y.length+" found")];if(I["min-length"]&&y.length<I["min-length"])return[new _a(ae,y,"array length at least "+I["min-length"]+" expected, length "+y.length+" found")];var Oe={type:I.value,values:I.values};$.$version<7&&(Oe.function=I.function),no(I.value)==="object"&&(Oe=I.value);for(var rt=[],gt=0;gt<y.length;gt++)rt=rt.concat(he({array:y,arrayIndex:gt,value:y[gt],valueSpec:Oe,style:U,styleSpec:$,key:ae+"["+gt+"]"}));return rt}function Xe(m){var y=m.key,I=m.value,U=m.valueSpec,$=no(I);return $==="number"&&I!==I&&($="NaN"),$!=="number"?[new _a(y,I,"number expected, "+$+" found")]:"minimum"in U&&I<U.minimum?[new _a(y,I,I+" is less than the minimum value "+U.minimum)]:"maximum"in U&&I>U.maximum?[new _a(y,I,I+" is greater than the maximum value "+U.maximum)]:[]}function ot(m){var y=m.valueSpec,I=xo(m.value.type),U,$={},ae,he,Oe=I!=="categorical"&&m.value.property===void 0,rt=!Oe,gt=no(m.value.stops)==="array"&&no(m.value.stops[0])==="array"&&no(m.value.stops[0][0])==="object",Mt=le({key:m.key,value:m.value,valueSpec:m.styleSpec.function,style:m.style,styleSpec:m.styleSpec,objectElementValidators:{stops:or,default:Fr}});return I==="identity"&&Oe&&Mt.push(new _a(m.key,m.value,'missing required property "property"')),I!=="identity"&&!m.value.stops&&Mt.push(new _a(m.key,m.value,'missing required property "stops"')),I==="exponential"&&m.valueSpec.expression&&!va(m.valueSpec)&&Mt.push(new _a(m.key,m.value,"exponential functions not supported")),m.styleSpec.$version>=8&&(rt&&!Xs(m.valueSpec)?Mt.push(new _a(m.key,m.value,"property functions not supported")):Oe&&!Ps(m.valueSpec)&&Mt.push(new _a(m.key,m.value,"zoom functions not supported"))),(I==="categorical"||gt)&&m.value.property===void 0&&Mt.push(new _a(m.key,m.value,'"property" property is required')),Mt;function or(ai){if(I==="identity")return[new _a(ai.key,ai.value,'identity function may not have a "stops" property')];var Gi=[],Ti=ai.value;return Gi=Gi.concat(qe({key:ai.key,value:Ti,valueSpec:ai.valueSpec,style:ai.style,styleSpec:ai.styleSpec,arrayElementValidator:_r})),no(Ti)==="array"&&Ti.length===0&&Gi.push(new _a(ai.key,Ti,"array must have at least one stop")),Gi}function _r(ai){var Gi=[],Ti=ai.value,bn=ai.key;if(no(Ti)!=="array")return[new _a(bn,Ti,"array expected, "+no(Ti)+" found")];if(Ti.length!==2)return[new _a(bn,Ti,"array length 2 expected, length "+Ti.length+" found")];if(gt){if(no(Ti[0])!=="object")return[new _a(bn,Ti,"object expected, "+no(Ti[0])+" found")];if(Ti[0].zoom===void 0)return[new _a(bn,Ti,"object stop key must have zoom")];if(Ti[0].value===void 0)return[new _a(bn,Ti,"object stop key must have value")];if(he&&he>xo(Ti[0].zoom))return[new _a(bn,Ti[0].zoom,"stop zoom values must appear in ascending order")];xo(Ti[0].zoom)!==he&&(he=xo(Ti[0].zoom),ae=void 0,$={}),Gi=Gi.concat(le({key:bn+"[0]",value:Ti[0],valueSpec:{zoom:{}},style:ai.style,styleSpec:ai.styleSpec,objectElementValidators:{zoom:Xe,value:vr}}))}else Gi=Gi.concat(vr({key:bn+"[0]",value:Ti[0],valueSpec:{},style:ai.style,styleSpec:ai.styleSpec},Ti));return Ua(Yl(Ti[1]))?Gi.concat([new _a(bn+"[1]",Ti[1],"expressions are not allowed in function stops.")]):Gi.concat(Qa({key:bn+"[1]",value:Ti[1],valueSpec:y,style:ai.style,styleSpec:ai.styleSpec}))}function vr(ai,Gi){var Ti=no(ai.value),bn=xo(ai.value),rn=ai.value!==null?ai.value:Gi;if(!U)U=Ti;else if(Ti!==U)return[new _a(ai.key,rn,Ti+" stop domain type must match previous stop domain type "+U)];if(Ti!=="number"&&Ti!=="string"&&Ti!=="boolean")return[new _a(ai.key,rn,"stop domain value must be a number, string, or boolean")];if(Ti!=="number"&&I!=="categorical"){var xn="number expected, "+Ti+" found";return Xs(y)&&I===void 0&&(xn+='\nIf you intended to use a categorical function, specify `"type": "categorical"`.'),[new _a(ai.key,rn,xn)]}return I==="categorical"&&Ti==="number"&&(!isFinite(bn)||Math.floor(bn)!==bn)?[new _a(ai.key,rn,"integer expected, found "+bn)]:I!=="categorical"&&Ti==="number"&&ae!==void 0&&bn<ae?[new _a(ai.key,rn,"stop domain values must appear in ascending order")]:(ae=bn,I==="categorical"&&bn in $?[new _a(ai.key,rn,"stop domain values must be unique")]:($[bn]=!0,[]))}function Fr(ai){return Qa({key:ai.key,value:ai.value,valueSpec:y,style:ai.style,styleSpec:ai.styleSpec})}}function Tt(m){var y=(m.expressionContext==="property"?Ku:oo)(Yl(m.value),m.valueSpec);if(y.result==="error")return y.value.map(function(U){return new _a(""+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 _a(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"&&!Ws(I))return[new _a(m.key,m.value,'"feature-state" data expressions are not supported with layout properties.')];if(m.expressionContext==="filter"&&!Ws(I))return[new _a(m.key,m.value,'"feature-state" data expressions are not supported with filters.')];if(m.expressionContext&&m.expressionContext.indexOf("cluster")===0){if(!Eu(I,["zoom","feature-state"]))return[new _a(m.key,m.value,'"zoom" and "feature-state" expressions are not supported with cluster properties.')];if(m.expressionContext==="cluster-initial"&&!ih(I))return[new _a(m.key,m.value,"Feature data expressions are not supported with initial expression part of cluster properties.")]}return[]}function Kt(m){var y=m.value,I=m.key,U=no(y);return U!=="boolean"?[new _a(I,y,"boolean expected, "+U+" found")]:[]}function Jt(m){var y=m.key,I=m.value,U=no(I);return U!=="string"?[new _a(y,I,"color expected, "+U+" found")]:kf(I)===null?[new _a(y,I,'color expected, "'+I+'" found')]:[]}function xr(m){var y=m.key,I=m.value,U=m.valueSpec,$=[];return Array.isArray(U.values)?U.values.indexOf(xo(I))===-1&&$.push(new _a(y,I,"expected one of ["+U.values.join(", ")+"], "+JSON.stringify(I)+" found")):Object.keys(U.values).indexOf(xo(I))===-1&&$.push(new _a(y,I,"expected one of ["+Object.keys(U.values).join(", ")+"], "+JSON.stringify(I)+" found")),$}function Pr(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(!Pr(U)&&typeof U!="boolean")return!1}return!0;default:return!0}}var ve={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};Pr(m)||(m=tt(m));var y=oo(m,ve);if(y.result==="error")throw new Error(y.value.map(function(U){return U.key+": "+U.message}).join(", "));var I=Be(m);return{filter:function(U,$,ae){return y.value.evaluate(U,$,{},ae)},needGeometry:I}}function Re(m,y){return m<y?-1:m>y?1:0}function Be(m){if(!Array.isArray(m))return!1;if(m[0]==="within")return!0;for(var y=1;y<m.length;y++)if(Be(m[y]))return!0;return!1}function tt(m){if(!m)return!0;var y=m[0];if(m.length<=1)return y!=="any";var I=y==="=="?We(m[1],m[2],"=="):y==="!="?rr(We(m[1],m[2],"==")):y==="<"||y===">"||y==="<="||y===">="?We(m[1],m[2],y):y==="any"?it(m.slice(1)):y==="all"?["all"].concat(m.slice(1).map(tt)):y==="none"?["all"].concat(m.slice(1).map(tt).map(rr)):y==="in"?Dt(m[1],m.slice(2)):y==="!in"?rr(Dt(m[1],m.slice(2))):y==="has"?Ht(m[1]):y==="!has"?rr(Ht(m[1])):y==="within"?m:!0;return I}function We(m,y,I){switch(m){case"$type":return["filter-type-"+I,y];case"$id":return["filter-id-"+I,y];default:return["filter-"+I,m,y]}}function it(m){return["any"].concat(m.map(tt))}function Dt(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(Re)]]:["filter-in-small",m,["literal",y]]}}function Ht(m){switch(m){case"$type":return!0;case"$id":return["filter-has-id"];default:return["filter-has",m]}}function rr(m){return["!",m]}function dr(m){return Pr(Yl(m.value))?Tt(zl({},m,{expressionContext:"filter",valueSpec:{value:"boolean"}})):Sr(m)}function Sr(m){var y=m.value,I=m.key;if(no(y)!=="array")return[new _a(I,y,"array expected, "+no(y)+" found")];var U=m.styleSpec,$,ae=[];if(y.length<1)return[new _a(I,y,"filter array must have at least 1 element")];switch(ae=ae.concat(xr({key:I+"[0]",value:y[0],valueSpec:U.filter_operator,style:m.style,styleSpec:m.styleSpec})),xo(y[0])){case"<":case"<=":case">":case">=":y.length>=2&&xo(y[1])==="$type"&&ae.push(new _a(I,y,'"$type" cannot be use with operator "'+y[0]+'"'));case"==":case"!=":y.length!==3&&ae.push(new _a(I,y,'filter array for operator "'+y[0]+'" must have 3 elements'));case"in":case"!in":y.length>=2&&($=no(y[1]),$!=="string"&&ae.push(new _a(I+"[1]",y[1],"string expected, "+$+" found")));for(var he=2;he<y.length;he++)$=no(y[he]),xo(y[1])==="$type"?ae=ae.concat(xr({key:I+"["+he+"]",value:y[he],valueSpec:U.geometry_type,style:m.style,styleSpec:m.styleSpec})):$!=="string"&&$!=="number"&&$!=="boolean"&&ae.push(new _a(I+"["+he+"]",y[he],"string, number, or boolean expected, "+$+" found"));break;case"any":case"all":case"none":for(var Oe=1;Oe<y.length;Oe++)ae=ae.concat(Sr({key:I+"["+Oe+"]",value:y[Oe],style:m.style,styleSpec:m.styleSpec}));break;case"has":case"!has":$=no(y[1]),y.length!==2?ae.push(new _a(I,y,'filter array for "'+y[0]+'" operator must have 2 elements')):$!=="string"&&ae.push(new _a(I+"[1]",y[1],"string expected, "+$+" found"));break;case"within":$=no(y[1]),y.length!==2?ae.push(new _a(I,y,'filter array for "'+y[0]+'" operator must have 2 elements')):$!=="object"&&ae.push(new _a(I+"[1]",y[1],"object expected, "+$+" found"));break}return ae}function Or(m,y){var I=m.key,U=m.style,$=m.styleSpec,ae=m.value,he=m.objectKey,Oe=$[y+"_"+m.layerType];if(!Oe)return[];var rt=he.match(/^(.*)-transition$/);if(y==="paint"&&rt&&Oe[rt[1]]&&Oe[rt[1]].transition)return Qa({key:I,value:ae,valueSpec:$.transition,style:U,styleSpec:$});var gt=m.valueSpec||Oe[he];if(!gt)return[new _a(I,ae,'unknown property "'+he+'"')];var Mt;if(no(ae)==="string"&&Xs(gt)&&!gt.tokens&&(Mt=/^{([^}]+)}$/.exec(ae)))return[new _a(I,ae,'"'+he+'" does not support interpolation syntax\nUse an identity property function instead: `{ "type": "identity", "property": '+JSON.stringify(Mt[1])+" }`.")];var or=[];return m.layerType==="symbol"&&(he==="text-field"&&U&&!U.glyphs&&or.push(new _a(I,ae,'use of "text-field" requires a style "glyphs" property')),he==="text-font"&&_s(Yl(ae))&&xo(ae.type)==="identity"&&or.push(new _a(I,ae,'"text-font" does not support identity functions'))),or.concat(Qa({key:m.key,value:ae,valueSpec:gt,style:U,styleSpec:$,expressionContext:"property",propertyType:y,propertyKey:he}))}function jr(m){return Or(m,"paint")}function ii(m){return Or(m,"layout")}function Li(m){var y=[],I=m.value,U=m.key,$=m.style,ae=m.styleSpec;!I.type&&!I.ref&&y.push(new _a(U,I,'either "type" or "ref" is required'));var he=xo(I.type),Oe=xo(I.ref);if(I.id)for(var rt=xo(I.id),gt=0;gt<m.arrayIndex;gt++){var Mt=$.layers[gt];xo(Mt.id)===rt&&y.push(new _a(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(Fr){Fr in I&&y.push(new _a(U,I[Fr],'"'+Fr+'" is prohibited for ref layers'))});var or;$.layers.forEach(function(Fr){xo(Fr.id)===Oe&&(or=Fr)}),or?or.ref?y.push(new _a(U,I.ref,"ref cannot reference another ref layer")):he=xo(or.type):y.push(new _a(U,I.ref,'ref layer "'+Oe+'" not found'))}else if(he!=="background")if(!I.source)y.push(new _a(U,I,'missing required property "source"'));else{var _r=$.sources&&$.sources[I.source],vr=_r&&xo(_r.type);_r?vr==="vector"&&he==="raster"?y.push(new _a(U,I.source,'layer "'+I.id+'" requires a raster source')):vr==="raster"&&he!=="raster"?y.push(new _a(U,I.source,'layer "'+I.id+'" requires a vector source')):vr==="vector"&&!I["source-layer"]?y.push(new _a(U,I,'layer "'+I.id+'" must specify a "source-layer"')):vr==="raster-dem"&&he!=="hillshade"?y.push(new _a(U,I.source,"raster-dem source can only be used with layer type 'hillshade'.")):he==="line"&&I.paint&&I.paint["line-gradient"]&&(vr!=="geojson"||!_r.lineMetrics)&&y.push(new _a(U,I,'layer "'+I.id+'" specifies a line-gradient, which requires a GeoJSON source with `lineMetrics` enabled.')):y.push(new _a(U,I.source,'source "'+I.source+'" not found'))}return y=y.concat(le({key:U,value:I,valueSpec:ae.layer,style:m.style,styleSpec:m.styleSpec,objectElementValidators:{"*":function(){return[]},type:function(){return Qa({key:U+".type",value:I.type,valueSpec:ae.layer.type,style:m.style,styleSpec:m.styleSpec,object:I,objectKey:"type"})},filter:dr,layout:function(ai){return le({layer:I,key:ai.key,value:ai.value,style:ai.style,styleSpec:ai.styleSpec,objectElementValidators:{"*":function(Ti){return ii(zl({layerType:he},Ti))}}})},paint:function(ai){return le({layer:I,key:ai.key,value:ai.value,style:ai.style,styleSpec:ai.styleSpec,objectElementValidators:{"*":function(Ti){return jr(zl({layerType:he},Ti))}}})}}})),y}function un(m){var y=m.value,I=m.key,U=no(y);return U!=="string"?[new _a(I,y,"string expected, "+U+" found")]:[]}var sn={promoteId:Kn};function In(m){var y=m.value,I=m.key,U=m.styleSpec,$=m.style;if(!y.type)return[new _a(I,y,'"type" is required')];var ae=xo(y.type),he;switch(ae){case"vector":case"raster":case"raster-dem":return he=le({key:I,value:y,valueSpec:U["source_"+ae.replace("-","_")],style:m.style,styleSpec:U,objectElementValidators:sn}),he;case"geojson":if(he=le({key:I,value:y,valueSpec:U.source_geojson,style:$,styleSpec:U,objectElementValidators:sn}),y.cluster)for(var Oe in y.clusterProperties){var rt=y.clusterProperties[Oe],gt=rt[0],Mt=rt[1],or=typeof gt=="string"?[gt,["accumulated"],["get",Oe]]:gt;he.push.apply(he,Tt({key:I+"."+Oe+".map",value:Mt,expressionContext:"cluster-map"})),he.push.apply(he,Tt({key:I+"."+Oe+".reduce",value:or,expressionContext:"cluster-reduce"}))}return he;case"video":return le({key:I,value:y,valueSpec:U.source_video,style:$,styleSpec:U});case"image":return le({key:I,value:y,valueSpec:U.source_image,style:$,styleSpec:U});case"canvas":return[new _a(I,null,"Please use runtime APIs to add canvas sources, rather than including them in stylesheets.","source.canvas")];default:return xr({key:I+".type",value:y.type,valueSpec:{values:["vector","raster","raster-dem","geojson","video","image"]},style:$,styleSpec:U})}}function Kn(m){var y=m.key,I=m.value;if(no(I)==="string")return un({key:y,value:I});var U=[];for(var $ in I)U.push.apply(U,un({key:y+"."+$,value:I[$]}));return U}function Aa(m){var y=m.value,I=m.styleSpec,U=I.light,$=m.style,ae=[],he=no(y);if(y===void 0)return ae;if(he!=="object")return ae=ae.concat([new _a("light",y,"object expected, "+he+" found")]),ae;for(var Oe in y){var rt=Oe.match(/^(.*)-transition$/);rt&&U[rt[1]]&&U[rt[1]].transition?ae=ae.concat(Qa({key:Oe,value:y[Oe],valueSpec:I.transition,style:$,styleSpec:I})):U[Oe]?ae=ae.concat(Qa({key:Oe,value:y[Oe],valueSpec:U[Oe],style:$,styleSpec:I})):ae=ae.concat([new _a(Oe,y[Oe],'unknown property "'+Oe+'"')])}return ae}function fa(m){return un(m).length===0?[]:Tt(m)}function $a(m){return un(m).length===0?[]:Tt(m)}var ko={"*":function(){return[]},array:qe,boolean:Kt,number:Xe,color:Jt,constants:Vu,enum:xr,filter:dr,function:ot,layer:Li,object:le,source:In,light:Aa,string:un,formatted:fa,resolvedImage:$a};function Qa(m){var y=m.value,I=m.valueSpec,U=m.styleSpec;if(I.expression&&_s(xo(y)))return ot(m);if(I.expression&&Ua(Yl(y)))return Tt(m);if(I.type&&ko[I.type])return ko[I.type](m);var $=le(zl({},m,{valueSpec:I.type?U[I.type]:I}));return $}function mo(m){var y=m.value,I=m.key,U=un(m);return U.length||(y.indexOf("{fontstack}")===-1&&U.push(new _a(I,y,'"glyphs" url must include a "{fontstack}" token')),y.indexOf("{range}")===-1&&U.push(new _a(I,y,'"glyphs" url must include a "{range}" token'))),U}function Bo(m,y){y===void 0&&(y=Fn);var I=[];return I=I.concat(Qa({key:"",value:m,valueSpec:y.$root,styleSpec:y,style:m,objectElementValidators:{glyphs:mo,"*":function(){return[]}}})),m.constants&&(I=I.concat(Vu({key:"constants",value:m.constants,style:m,styleSpec:y}))),Is(I)}Bo.source=As(In),Bo.light=As(Aa),Bo.layer=As(Li),Bo.filter=As(dr),Bo.paintProperty=As(jr),Bo.layoutProperty=As(ii);function Is(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 Is(m.apply(this,y))}}var wo=Bo,To=wo.light,dl=wo.paintProperty,Nl=wo.layoutProperty;function Lu(m,y){var I=!1;if(y&&y.length)for(var U=0,$=y;U<$.length;U+=1){var ae=$[U];m.fire(new da(new Error(ae.message))),I=!0}return I}var ou=Ql,$s=3;function Ql(m,y,I){var U=this.cells=[];if(m instanceof ArrayBuffer){this.arrayBuffer=m;var $=new Int32Array(this.arrayBuffer);m=$[0],y=$[1],I=$[2],this.d=y+2*I;for(var ae=0;ae<this.d*this.d;ae++){var he=$[$s+ae],Oe=$[$s+ae+1];U.push(he===Oe?null:$.subarray(he,Oe))}var rt=$[$s+U.length],gt=$[$s+U.length+1];this.keys=$.subarray(rt,gt),this.bboxes=$.subarray(gt),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 or=I/y*m;this.min=-or,this.max=m+or}Ql.prototype.insert=function(m,y,I,U,$){this._forEachCell(y,I,U,$,this._insertCell,this.uid++),this.keys.push(m),this.bboxes.push(y),this.bboxes.push(I),this.bboxes.push(U),this.bboxes.push($)},Ql.prototype._insertReadonly=function(){throw"Cannot insert into a GridIndex created from an ArrayBuffer."},Ql.prototype._insertCell=function(m,y,I,U,$,ae){this.cells[$].push(ae)},Ql.prototype.query=function(m,y,I,U,$){var ae=this.min,he=this.max;if(m<=ae&&y<=ae&&he<=I&&he<=U&&!$)return Array.prototype.slice.call(this.keys);var Oe=[],rt={};return this._forEachCell(m,y,I,U,this._queryCell,Oe,rt,$),Oe},Ql.prototype._queryCell=function(m,y,I,U,$,ae,he,Oe){var rt=this.cells[$];if(rt!==null)for(var gt=this.keys,Mt=this.bboxes,or=0;or<rt.length;or++){var _r=rt[or];if(he[_r]===void 0){var vr=_r*4;(Oe?Oe(Mt[vr+0],Mt[vr+1],Mt[vr+2],Mt[vr+3]):m<=Mt[vr+2]&&y<=Mt[vr+3]&&I>=Mt[vr+0]&&U>=Mt[vr+1])?(he[_r]=!0,ae.push(gt[_r])):he[_r]=!1}}},Ql.prototype._forEachCell=function(m,y,I,U,$,ae,he,Oe){for(var rt=this._convertToCellCoord(m),gt=this._convertToCellCoord(y),Mt=this._convertToCellCoord(I),or=this._convertToCellCoord(U),_r=rt;_r<=Mt;_r++)for(var vr=gt;vr<=or;vr++){var Fr=this.d*vr+_r;if(!(Oe&&!Oe(this._convertFromCellCoord(_r),this._convertFromCellCoord(vr),this._convertFromCellCoord(_r+1),this._convertFromCellCoord(vr+1)))&&$.call(this,m,y,I,U,Fr,ae,he,Oe))return}},Ql.prototype._convertFromCellCoord=function(m){return(m-this.padding)/this.scale},Ql.prototype._convertToCellCoord=function(m){return Math.max(0,Math.min(this.d-1,Math.floor(m*this.scale)+this.padding))},Ql.prototype.toArrayBuffer=function(){if(this.arrayBuffer)return this.arrayBuffer;for(var m=this.cells,y=$s+this.cells.length+1+1,I=0,U=0;U<this.cells.length;U++)I+=this.cells[U].length;var $=new Int32Array(y+I+this.keys.length+this.bboxes.length);$[0]=this.extent,$[1]=this.n,$[2]=this.padding;for(var ae=y,he=0;he<m.length;he++){var Oe=m[he];$[$s+he]=ae,$.set(Oe,ae),ae+=Oe.length}return $[$s+m.length]=ae,$.set(this.keys,ae),ae+=this.keys.length,$[$s+m.length+1]=ae,$.set(this.bboxes,ae),ae+=this.bboxes.length,$.buffer};var dc=f.ImageData,Tl=f.ImageBitmap,Al={};function X(m,y,I){I===void 0&&(I={}),Object.defineProperty(y,"_classRegistryKey",{value:m,writeable:!1}),Al[m]={klass:y,omit:I.omit||[],shallow:I.shallow||[]}}X("Object",Object),ou.serialize=function(y,I){var U=y.toArrayBuffer();return I&&I.push(U),{buffer:U}},ou.deserialize=function(y){return new ou(y.buffer)},X("Grid",ou),X("Color",fs),X("Error",Error),X("ResolvedImage",hl),X("StylePropertyFunction",ue),X("StyleExpression",Ac,{omit:["_evaluator"]}),X("ZoomDependentExpression",hc),X("ZoomConstantExpression",Vc),X("CompoundExpression",Pa,{omit:["_evaluate"]});for(var se in Ka)Ka[se]._classRegistryKey||X("Expression_"+se,Ka[se]);function Te(m){return m&&typeof ArrayBuffer!="undefined"&&(m instanceof ArrayBuffer||m.constructor&&m.constructor.name==="ArrayBuffer")}function Ne(m){return Tl&&m instanceof Tl}function He(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(Te(m)||Ne(m))return y&&y.push(m),m;if(ArrayBuffer.isView(m)){var I=m;return y&&y.push(I.buffer),I}if(m instanceof dc)return y&&y.push(m.data.buffer),m;if(Array.isArray(m)){for(var U=[],$=0,ae=m;$<ae.length;$+=1){var he=ae[$];U.push(He(he,y))}return U}if(typeof m=="object"){var Oe=m.constructor,rt=Oe._classRegistryKey;if(!rt)throw new Error("can't serialize object of unregistered class");var gt=Oe.serialize?Oe.serialize(m,y):{};if(!Oe.serialize){for(var Mt in m)if(m.hasOwnProperty(Mt)&&!(Al[rt].omit.indexOf(Mt)>=0)){var or=m[Mt];gt[Mt]=Al[rt].shallow.indexOf(Mt)>=0?or:He(or,y)}m instanceof Error&&(gt.message=m.message)}if(gt.$name)throw new Error("$name property is reserved for worker serialization logic.");return rt!=="Object"&&(gt.$name=rt),gt}throw new Error("can't serialize object of type "+typeof m)}function Ye(m){if(m==null||typeof m=="boolean"||typeof m=="number"||typeof m=="string"||m instanceof Boolean||m instanceof Number||m instanceof String||m instanceof Date||m instanceof RegExp||Te(m)||Ne(m)||ArrayBuffer.isView(m)||m instanceof dc)return m;if(Array.isArray(m))return m.map(Ye);if(typeof m=="object"){var y=m.$name||"Object",I=Al[y],U=I.klass;if(!U)throw new Error("can't deserialize unregistered class "+y);if(U.deserialize)return U.deserialize(m);for(var $=Object.create(U.prototype),ae=0,he=Object.keys(m);ae<he.length;ae+=1){var Oe=he[ae];if(Oe!=="$name"){var rt=m[Oe];$[Oe]=Al[y].shallow.indexOf(Oe)>=0?rt:Ye(rt)}}return $}throw new Error("can't deserialize object of type "+typeof m)}var Ct=function(){this.first=!0};Ct.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 nt={"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 jt(m){for(var y=0,I=m;y<I.length;y+=1){var U=I[y];if(qr(U.charCodeAt(0)))return!0}return!1}function gr(m){for(var y=0,I=m;y<I.length;y+=1){var U=I[y];if(!yr(U.charCodeAt(0)))return!1}return!0}function yr(m){return!(nt.Arabic(m)||nt["Arabic Supplement"](m)||nt["Arabic Extended-A"](m)||nt["Arabic Presentation Forms-A"](m)||nt["Arabic Presentation Forms-B"](m))}function Gr(m){return m<11904?!1:!!(nt["Bopomofo Extended"](m)||nt.Bopomofo(m)||nt["CJK Compatibility Forms"](m)||nt["CJK Compatibility Ideographs"](m)||nt["CJK Compatibility"](m)||nt["CJK Radicals Supplement"](m)||nt["CJK Strokes"](m)||nt["CJK Symbols and Punctuation"](m)||nt["CJK Unified Ideographs Extension A"](m)||nt["CJK Unified Ideographs"](m)||nt["Enclosed CJK Letters and Months"](m)||nt["Halfwidth and Fullwidth Forms"](m)||nt.Hiragana(m)||nt["Ideographic Description Characters"](m)||nt["Kangxi Radicals"](m)||nt["Katakana Phonetic Extensions"](m)||nt.Katakana(m)||nt["Vertical Forms"](m)||nt["Yi Radicals"](m)||nt["Yi Syllables"](m))}function qr(m){return m===746||m===747?!0:m<4352?!1:!!(nt["Bopomofo Extended"](m)||nt.Bopomofo(m)||nt["CJK Compatibility Forms"](m)&&!(m>=65097&&m<=65103)||nt["CJK Compatibility Ideographs"](m)||nt["CJK Compatibility"](m)||nt["CJK Radicals Supplement"](m)||nt["CJK Strokes"](m)||nt["CJK Symbols and Punctuation"](m)&&!(m>=12296&&m<=12305)&&!(m>=12308&&m<=12319)&&m!==12336||nt["CJK Unified Ideographs Extension A"](m)||nt["CJK Unified Ideographs"](m)||nt["Enclosed CJK Letters and Months"](m)||nt["Hangul Compatibility Jamo"](m)||nt["Hangul Jamo Extended-A"](m)||nt["Hangul Jamo Extended-B"](m)||nt["Hangul Jamo"](m)||nt["Hangul Syllables"](m)||nt.Hiragana(m)||nt["Ideographic Description Characters"](m)||nt.Kanbun(m)||nt["Kangxi Radicals"](m)||nt["Katakana Phonetic Extensions"](m)||nt.Katakana(m)&&m!==12540||nt["Halfwidth and Fullwidth Forms"](m)&&m!==65288&&m!==65289&&m!==65293&&!(m>=65306&&m<=65310)&&m!==65339&&m!==65341&&m!==65343&&!(m>=65371&&m<=65503)&&m!==65507&&!(m>=65512&&m<=65519)||nt["Small Form Variants"](m)&&!(m>=65112&&m<=65118)&&!(m>=65123&&m<=65126)||nt["Unified Canadian Aboriginal Syllabics"](m)||nt["Unified Canadian Aboriginal Syllabics Extended"](m)||nt["Vertical Forms"](m)||nt["Yijing Hexagram Symbols"](m)||nt["Yi Syllables"](m)||nt["Yi Radicals"](m))}function _i(m){return!!(nt["Latin-1 Supplement"](m)&&(m===167||m===169||m===174||m===177||m===188||m===189||m===190||m===215||m===247)||nt["General Punctuation"](m)&&(m===8214||m===8224||m===8225||m===8240||m===8241||m===8251||m===8252||m===8258||m===8263||m===8264||m===8265||m===8273)||nt["Letterlike Symbols"](m)||nt["Number Forms"](m)||nt["Miscellaneous Technical"](m)&&(m>=8960&&m<=8967||m>=8972&&m<=8991||m>=8996&&m<=9e3||m===9003||m>=9085&&m<=9114||m>=9150&&m<=9165||m===9167||m>=9169&&m<=9179||m>=9186&&m<=9215)||nt["Control Pictures"](m)&&m!==9251||nt["Optical Character Recognition"](m)||nt["Enclosed Alphanumerics"](m)||nt["Geometric Shapes"](m)||nt["Miscellaneous Symbols"](m)&&!(m>=9754&&m<=9759)||nt["Miscellaneous Symbols and Arrows"](m)&&(m>=11026&&m<=11055||m>=11088&&m<=11097||m>=11192&&m<=11243)||nt["CJK Symbols and Punctuation"](m)||nt.Katakana(m)||nt["Private Use Area"](m)||nt["CJK Compatibility Forms"](m)||nt["Small Form Variants"](m)||nt["Halfwidth and Fullwidth Forms"](m)||m===8734||m===8756||m===8757||m>=9984&&m<=10087||m>=10102&&m<=10131||m===65532||m===65533)}function bi(m){return!(qr(m)||_i(m))}function Xr(m){return nt.Arabic(m)||nt["Arabic Supplement"](m)||nt["Arabic Extended-A"](m)||nt["Arabic Presentation Forms-A"](m)||nt["Arabic Presentation Forms-B"](m)}function ni(m){return m>=1424&&m<=2303||nt["Arabic Presentation Forms-A"](m)||nt["Arabic Presentation Forms-B"](m)}function gi(m,y){return!(!y&&ni(m)||m>=2304&&m<=3583||m>=3840&&m<=4255||nt.Khmer(m))}function Pi(m){for(var y=0,I=m;y<I.length;y+=1){var U=I[y];if(ni(U.charCodeAt(0)))return!0}return!1}function Ai(m,y){for(var I=0,U=m;I<U.length;I+=1){var $=U[I];if(!gi($.charCodeAt(0),y))return!1}return!0}var ti={unavailable:"unavailable",deferred:"deferred",loading:"loading",loaded:"loaded",error:"error"},Rn=null,Cn=ti.unavailable,Nn=null,ia=function(m){m&&typeof m=="string"&&m.indexOf("NetworkError")>-1&&(Cn=ti.error),Rn&&Rn(m)};function Ea(){Ia.fire(new Wo("pluginStateChange",{pluginStatus:Cn,pluginURL:Nn}))}var Ia=new Wn,yo=function(){return Cn},Da=function(m){return m({pluginStatus:Cn,pluginURL:Nn}),Ia.on("pluginStateChange",m),m},go=function(m,y,I){if(I===void 0&&(I=!1),Cn===ti.deferred||Cn===ti.loading||Cn===ti.loaded)throw new Error("setRTLTextPlugin cannot be called multiple times.");Nn=ct.resolveURL(m),Cn=ti.deferred,Rn=y,Ea(),I||Rs()},Rs=function(){if(Cn!==ti.deferred||!Nn)throw new Error("rtl-text-plugin cannot be downloaded unless a pluginURL is specified");Cn=ti.loading,Ea(),Nn&&ri({url:Nn},function(m){m?ia(m):(Cn=ti.loaded,Ea())})},Es={applyArabicShaping:null,processBidirectionalText:null,processStyledBidirectionalText:null,isLoaded:function(){return Cn===ti.loaded||Es.applyArabicShaping!=null},isLoading:function(){return Cn===ti.loading},setState:function(y){Cn=y.pluginStatus,Nn=y.pluginURL},isParsed:function(){return Es.applyArabicShaping!=null&&Es.processBidirectionalText!=null&&Es.processStyledBidirectionalText!=null},getPluginURL:function(){return Nn}},Zs=function(){!Es.isLoading()&&!Es.isLoaded()&&yo()==="deferred"&&Rs()},Gn=function(y,I){this.zoom=y,I?(this.now=I.now,this.fadeDuration=I.fadeDuration,this.zoomHistory=I.zoomHistory,this.transition=I.transition):(this.now=0,this.fadeDuration=0,this.zoomHistory=new Ct,this.transition={})};Gn.prototype.isSupportedScript=function(y){return Ai(y,Es.isLoaded())},Gn.prototype.crossFadingFactor=function(){return this.fadeDuration===0?1:Math.min((this.now-this.zoomHistory.lastIntegerZoomTime)/this.fadeDuration,1)},Gn.prototype.getCrossfadeParameters=function(){var y=this.zoom,I=y-Math.floor(y),U=this.crossFadingFactor();return y>this.zoomHistory.lastIntegerZoom?{fromScale:2,toScale:1,t:I+(1-I)*U}:{fromScale:.5,toScale:1,t:1-(1-U)*I}};var Ha=function(y,I){this.property=y,this.value=I,this.expression=w(I===void 0?y.specification.default:I,y.specification)};Ha.prototype.isDataDriven=function(){return this.expression.kind==="source"||this.expression.kind==="composite"},Ha.prototype.possiblyEvaluate=function(y,I,U){return this.property.possiblyEvaluate(this,y,I,U)};var Fo=function(y){this.property=y,this.value=new Ha(y,void 0)};Fo.prototype.transitioned=function(y,I){return new Qs(this.property,this.value,I,_({},y.transition,this.transition),y.now)},Fo.prototype.untransitioned=function(){return new Qs(this.property,this.value,null,{},0)};var Uo=function(y){this._properties=y,this._values=Object.create(y.defaultTransitionablePropertyValues)};Uo.prototype.getValue=function(y){return H(this._values[y].value.value)},Uo.prototype.setValue=function(y,I){this._values.hasOwnProperty(y)||(this._values[y]=new Fo(this._values[y].property)),this._values[y].value=new Ha(this._values[y].property,I===null?void 0:H(I))},Uo.prototype.getTransition=function(y){return H(this._values[y].transition)},Uo.prototype.setTransition=function(y,I){this._values.hasOwnProperty(y)||(this._values[y]=new Fo(this._values[y].property)),this._values[y].transition=H(I)||void 0},Uo.prototype.serialize=function(){for(var y={},I=0,U=Object.keys(this._values);I<U.length;I+=1){var $=U[I],ae=this.getValue($);ae!==void 0&&(y[$]=ae);var he=this.getTransition($);he!==void 0&&(y[$+"-transition"]=he)}return y},Uo.prototype.transitioned=function(y,I){for(var U=new Sl(this._properties),$=0,ae=Object.keys(this._values);$<ae.length;$+=1){var he=ae[$];U._values[he]=this._values[he].transitioned(y,I._values[he])}return U},Uo.prototype.untransitioned=function(){for(var y=new Sl(this._properties),I=0,U=Object.keys(this._values);I<U.length;I+=1){var $=U[I];y._values[$]=this._values[$].untransitioned()}return y};var Qs=function(y,I,U,$,ae){this.property=y,this.value=I,this.begin=ae+$.delay||0,this.end=this.begin+$.duration||0,y.specification.transition&&($.delay||$.duration)&&(this.prior=U)};Qs.prototype.possiblyEvaluate=function(y,I,U){var $=y.now||0,ae=this.value.possiblyEvaluate(y,I,U),he=this.prior;if(he){if($>this.end)return this.prior=null,ae;if(this.value.isDataDriven())return this.prior=null,ae;if($<this.begin)return he.possiblyEvaluate(y,I,U);var Oe=($-this.begin)/(this.end-this.begin);return this.property.interpolate(he.possiblyEvaluate(y,I,U),ae,v(Oe))}else return ae};var Sl=function(y){this._properties=y,this._values=Object.create(y.defaultTransitioningPropertyValues)};Sl.prototype.possiblyEvaluate=function(y,I,U){for(var $=new Sc(this._properties),ae=0,he=Object.keys(this._values);ae<he.length;ae+=1){var Oe=he[ae];$._values[Oe]=this._values[Oe].possiblyEvaluate(y,I,U)}return $},Sl.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 bu=function(y){this._properties=y,this._values=Object.create(y.defaultPropertyValues)};bu.prototype.getValue=function(y){return H(this._values[y].value)},bu.prototype.setValue=function(y,I){this._values[y]=new Ha(this._values[y].property,I===null?void 0:H(I))},bu.prototype.serialize=function(){for(var y={},I=0,U=Object.keys(this._values);I<U.length;I+=1){var $=U[I],ae=this.getValue($);ae!==void 0&&(y[$]=ae)}return y},bu.prototype.possiblyEvaluate=function(y,I,U){for(var $=new Sc(this._properties),ae=0,he=Object.keys(this._values);ae<he.length;ae+=1){var Oe=he[ae];$._values[Oe]=this._values[Oe].possiblyEvaluate(y,I,U)}return $};var vl=function(y,I,U){this.property=y,this.value=I,this.parameters=U};vl.prototype.isConstant=function(){return this.value.kind==="constant"},vl.prototype.constantOr=function(y){return this.value.kind==="constant"?this.value.value:y},vl.prototype.evaluate=function(y,I,U,$){return this.property.evaluate(this.value,this.parameters,y,I,U,$)};var Sc=function(y){this._properties=y,this._values=Object.create(y.defaultPossiblyEvaluatedValues)};Sc.prototype.get=function(y){return this._values[y]};var Ee=function(y){this.specification=y};Ee.prototype.possiblyEvaluate=function(y,I){return y.expression.evaluate(I)},Ee.prototype.interpolate=function(y,I,U){var $=zu[this.specification.type];return $?$(y,I,U):y};var xt=function(y,I){this.specification=y,this.overrides=I};xt.prototype.possiblyEvaluate=function(y,I,U,$){return y.expression.kind==="constant"||y.expression.kind==="camera"?new vl(this,{kind:"constant",value:y.expression.evaluate(I,null,{},U,$)},I):new vl(this,y.expression,I)},xt.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 vl(this,{kind:"constant",value:void 0},y.parameters);var $=zu[this.specification.type];return $?new vl(this,{kind:"constant",value:$(y.value.value,I.value.value,U)},y.parameters):y},xt.prototype.evaluate=function(y,I,U,$,ae,he){return y.kind==="constant"?y.value:y.evaluate(I,U,$,ae,he)};var zt=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,$,ae,he){if(U.value===void 0)return new vl(this,{kind:"constant",value:void 0},$);if(U.expression.kind==="constant"){var Oe=U.expression.evaluate($,null,{},ae,he),rt=U.property.specification.type==="resolvedImage",gt=rt&&typeof Oe!="string"?Oe.name:Oe,Mt=this._calculate(gt,gt,gt,$);return new vl(this,{kind:"constant",value:Mt},$)}else if(U.expression.kind==="camera"){var or=this._calculate(U.expression.evaluate({zoom:$.zoom-1}),U.expression.evaluate({zoom:$.zoom}),U.expression.evaluate({zoom:$.zoom+1}),$);return new vl(this,{kind:"constant",value:or},$)}else return new vl(this,U.expression,$)},y.prototype.evaluate=function(U,$,ae,he,Oe,rt){if(U.kind==="source"){var gt=U.evaluate($,ae,he,Oe,rt);return this._calculate(gt,gt,gt,$)}else return U.kind==="composite"?this._calculate(U.evaluate({zoom:Math.floor($.zoom)-1},ae,he),U.evaluate({zoom:Math.floor($.zoom)},ae,he),U.evaluate({zoom:Math.floor($.zoom)+1},ae,he),$):U.value},y.prototype._calculate=function(U,$,ae,he){var Oe=he.zoom;return Oe>he.zoomHistory.lastIntegerZoom?{from:U,to:$}:{from:ae,to:$}},y.prototype.interpolate=function(U){return U},y}(xt),Ir=function(y){this.specification=y};Ir.prototype.possiblyEvaluate=function(y,I,U,$){if(y.value!==void 0)if(y.expression.kind==="constant"){var ae=y.expression.evaluate(I,null,{},U,$);return this._calculate(ae,ae,ae,I)}else return this._calculate(y.expression.evaluate(new Gn(Math.floor(I.zoom-1),I)),y.expression.evaluate(new Gn(Math.floor(I.zoom),I)),y.expression.evaluate(new Gn(Math.floor(I.zoom+1),I)),I)},Ir.prototype._calculate=function(y,I,U,$){var ae=$.zoom;return ae>$.zoomHistory.lastIntegerZoom?{from:y,to:I}:{from:U,to:I}},Ir.prototype.interpolate=function(y){return y};var Hr=function(y){this.specification=y};Hr.prototype.possiblyEvaluate=function(y,I,U,$){return!!y.expression.evaluate(I,null,{},U,$)},Hr.prototype.interpolate=function(){return!1};var Br=function(y){this.properties=y,this.defaultPropertyValues={},this.defaultTransitionablePropertyValues={},this.defaultTransitioningPropertyValues={},this.defaultPossiblyEvaluatedValues={},this.overridableProperties=[];for(var I in y){var U=y[I];U.specification.overridable&&this.overridableProperties.push(I);var $=this.defaultPropertyValues[I]=new Ha(U,void 0),ae=this.defaultTransitionablePropertyValues[I]=new Fo(U);this.defaultTransitioningPropertyValues[I]=ae.untransitioned(),this.defaultPossiblyEvaluatedValues[I]=$.possiblyEvaluate({})}};X("DataDrivenProperty",xt),X("DataConstantProperty",Ee),X("CrossFadedDataDrivenProperty",zt),X("CrossFadedProperty",Ir),X("ColorRampProperty",Hr);var Vr="-transition",mi=function(m){function y(I,U){if(m.call(this),this.id=I.id,this.type=I.type,this._featureFilter={filter:function(){return!0},needGeometry:!1},I.type!=="custom"&&(I=I,this.metadata=I.metadata,this.minzoom=I.minzoom,this.maxzoom=I.maxzoom,I.type!=="background"&&(this.source=I.source,this.sourceLayer=I["source-layer"],this.filter=I.filter),U.layout&&(this._unevaluatedLayout=new bu(U.layout)),U.paint)){this._transitionablePaint=new Uo(U.paint);for(var $ in I.paint)this.setPaintProperty($,I.paint[$],{validate:!1});for(var ae in I.layout)this.setLayoutProperty(ae,I.layout[ae],{validate:!1});this._transitioningPaint=this._transitionablePaint.untransitioned(),this.paint=new Sc(U.paint)}}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.getCrossfadeParameters=function(){return this._crossfadeParameters},y.prototype.getLayoutProperty=function(U){return U==="visibility"?this.visibility:this._unevaluatedLayout.getValue(U)},y.prototype.setLayoutProperty=function(U,$,ae){if(ae===void 0&&(ae={}),$!=null){var he="layers."+this.id+".layout."+U;if(this._validate(Nl,he,U,$,ae))return}if(U==="visibility"){this.visibility=$;return}this._unevaluatedLayout.setValue(U,$)},y.prototype.getPaintProperty=function(U){return V(U,Vr)?this._transitionablePaint.getTransition(U.slice(0,-Vr.length)):this._transitionablePaint.getValue(U)},y.prototype.setPaintProperty=function(U,$,ae){if(ae===void 0&&(ae={}),$!=null){var he="layers."+this.id+".paint."+U;if(this._validate(dl,he,U,$,ae))return!1}if(V(U,Vr))return this._transitionablePaint.setTransition(U.slice(0,-Vr.length),$||void 0),!1;var Oe=this._transitionablePaint._values[U],rt=Oe.property.specification["property-type"]==="cross-faded-data-driven",gt=Oe.value.isDataDriven(),Mt=Oe.value;this._transitionablePaint.setValue(U,$),this._handleSpecialPaintPropertyUpdate(U);var or=this._transitionablePaint._values[U].value,_r=or.isDataDriven();return _r||gt||rt||this._handleOverridablePaintPropertyUpdate(U,Mt,or)},y.prototype._handleSpecialPaintPropertyUpdate=function(U){},y.prototype._handleOverridablePaintPropertyUpdate=function(U,$,ae){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,$){U.getCrossfadeParameters&&(this._crossfadeParameters=U.getCrossfadeParameters()),this._unevaluatedLayout&&(this.layout=this._unevaluatedLayout.possiblyEvaluate(U,void 0,$)),this.paint=this._transitioningPaint.possiblyEvaluate(U,void 0,$)},y.prototype.serialize=function(){var U={id:this.id,type:this.type,source:this.source,"source-layer":this.sourceLayer,metadata:this.metadata,minzoom:this.minzoom,maxzoom:this.maxzoom,filter:this.filter,layout:this._unevaluatedLayout&&this._unevaluatedLayout.serialize(),paint:this._transitionablePaint&&this._transitionablePaint.serialize()};return this.visibility&&(U.layout=U.layout||{},U.layout.visibility=this.visibility),Z(U,function($,ae){return $!==void 0&&!(ae==="layout"&&!Object.keys($).length)&&!(ae==="paint"&&!Object.keys($).length)})},y.prototype._validate=function(U,$,ae,he,Oe){return Oe===void 0&&(Oe={}),Oe&&Oe.validate===!1?!1:Lu(this,U.call(wo,{key:$,layerType:this.type,objectKey:ae,value:he,styleSpec:Fn,style:{glyphs:!0,sprite:!0}}))},y.prototype.is3D=function(){return!1},y.prototype.isTileClipped=function(){return!1},y.prototype.hasOffscreenPass=function(){return!1},y.prototype.resize=function(){},y.prototype.isStateDependent=function(){for(var U in this.paint._values){var $=this.paint.get(U);if(!(!($ instanceof vl)||!Xs($.property.specification))&&($.value.kind==="source"||$.value.kind==="composite")&&$.value.isStateDependent)return!0}return!1},y}(Wn),Ni={Int8:Int8Array,Uint8:Uint8Array,Int16:Int16Array,Uint16:Uint16Array,Int32:Int32Array,Uint32:Uint32Array,Float32:Float32Array},Oi=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},Mi=128,Hn=5,Qi=function(){this.isTransferred=!1,this.capacity=-1,this.resize(0)};Qi.serialize=function(y,I){return y._trim(),I&&(y.isTransferred=!0,I.push(y.arrayBuffer)),{length:y.length,arrayBuffer:y.arrayBuffer}},Qi.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},Qi.prototype._trim=function(){this.length!==this.capacity&&(this.capacity=this.length,this.arrayBuffer=this.arrayBuffer.slice(0,this.length*this.bytesPerElement),this._refreshViews())},Qi.prototype.clear=function(){this.length=0},Qi.prototype.resize=function(y){this.reserve(y),this.length=y},Qi.prototype.reserve=function(y){if(y>this.capacity){this.capacity=Math.max(y,Math.floor(this.capacity*Hn),Mi),this.arrayBuffer=new ArrayBuffer(this.capacity*this.bytesPerElement);var I=this.uint8;this._refreshViews(),I&&this.uint8.set(I)}},Qi.prototype._refreshViews=function(){throw new Error("_refreshViews() must be implemented by each concrete StructArray layout")};function ji(m,y){y===void 0&&(y=1);var I=0,U=0,$=m.map(function(he){var Oe=si(he.type),rt=I=Mr(I,Math.max(y,Oe)),gt=he.components||1;return U=Math.max(U,Oe),I+=Oe*gt,{name:he.name,type:he.type,components:gt,offset:rt}}),ae=Mr(I,Math.max(U,y));return{members:$,size:ae,alignment:y}}function si(m){return Ni[m].BYTES_PER_ELEMENT}function Mr(m,y){return Math.ceil(m/y)*y}var Yr=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$){var ae=this.length;return this.resize(ae+1),this.emplace(ae,U,$)},y.prototype.emplace=function(U,$,ae){var he=U*2;return this.int16[he+0]=$,this.int16[he+1]=ae,U},y}(Qi);Yr.prototype.bytesPerElement=4,X("StructArrayLayout2i4",Yr);var xi=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae,he){var Oe=this.length;return this.resize(Oe+1),this.emplace(Oe,U,$,ae,he)},y.prototype.emplace=function(U,$,ae,he,Oe){var rt=U*4;return this.int16[rt+0]=$,this.int16[rt+1]=ae,this.int16[rt+2]=he,this.int16[rt+3]=Oe,U},y}(Qi);xi.prototype.bytesPerElement=8,X("StructArrayLayout4i8",xi);var Ii=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae,he,Oe,rt){var gt=this.length;return this.resize(gt+1),this.emplace(gt,U,$,ae,he,Oe,rt)},y.prototype.emplace=function(U,$,ae,he,Oe,rt,gt){var Mt=U*6;return this.int16[Mt+0]=$,this.int16[Mt+1]=ae,this.int16[Mt+2]=he,this.int16[Mt+3]=Oe,this.int16[Mt+4]=rt,this.int16[Mt+5]=gt,U},y}(Qi);Ii.prototype.bytesPerElement=12,X("StructArrayLayout2i4i12",Ii);var ci=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae,he,Oe,rt){var gt=this.length;return this.resize(gt+1),this.emplace(gt,U,$,ae,he,Oe,rt)},y.prototype.emplace=function(U,$,ae,he,Oe,rt,gt){var Mt=U*4,or=U*8;return this.int16[Mt+0]=$,this.int16[Mt+1]=ae,this.uint8[or+4]=he,this.uint8[or+5]=Oe,this.uint8[or+6]=rt,this.uint8[or+7]=gt,U},y}(Qi);ci.prototype.bytesPerElement=8,X("StructArrayLayout2i4ub8",ci);var nn=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$){var ae=this.length;return this.resize(ae+1),this.emplace(ae,U,$)},y.prototype.emplace=function(U,$,ae){var he=U*2;return this.float32[he+0]=$,this.float32[he+1]=ae,U},y}(Qi);nn.prototype.bytesPerElement=8,X("StructArrayLayout2f8",nn);var Xi=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae,he,Oe,rt,gt,Mt,or,_r){var vr=this.length;return this.resize(vr+1),this.emplace(vr,U,$,ae,he,Oe,rt,gt,Mt,or,_r)},y.prototype.emplace=function(U,$,ae,he,Oe,rt,gt,Mt,or,_r,vr){var Fr=U*10;return this.uint16[Fr+0]=$,this.uint16[Fr+1]=ae,this.uint16[Fr+2]=he,this.uint16[Fr+3]=Oe,this.uint16[Fr+4]=rt,this.uint16[Fr+5]=gt,this.uint16[Fr+6]=Mt,this.uint16[Fr+7]=or,this.uint16[Fr+8]=_r,this.uint16[Fr+9]=vr,U},y}(Qi);Xi.prototype.bytesPerElement=20,X("StructArrayLayout10ui20",Xi);var qn=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae,he,Oe,rt,gt,Mt,or,_r,vr,Fr){var ai=this.length;return this.resize(ai+1),this.emplace(ai,U,$,ae,he,Oe,rt,gt,Mt,or,_r,vr,Fr)},y.prototype.emplace=function(U,$,ae,he,Oe,rt,gt,Mt,or,_r,vr,Fr,ai){var Gi=U*12;return this.int16[Gi+0]=$,this.int16[Gi+1]=ae,this.int16[Gi+2]=he,this.int16[Gi+3]=Oe,this.uint16[Gi+4]=rt,this.uint16[Gi+5]=gt,this.uint16[Gi+6]=Mt,this.uint16[Gi+7]=or,this.int16[Gi+8]=_r,this.int16[Gi+9]=vr,this.int16[Gi+10]=Fr,this.int16[Gi+11]=ai,U},y}(Qi);qn.prototype.bytesPerElement=24,X("StructArrayLayout4i4ui4i24",qn);var vi=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae){var he=this.length;return this.resize(he+1),this.emplace(he,U,$,ae)},y.prototype.emplace=function(U,$,ae,he){var Oe=U*3;return this.float32[Oe+0]=$,this.float32[Oe+1]=ae,this.float32[Oe+2]=he,U},y}(Qi);vi.prototype.bytesPerElement=12,X("StructArrayLayout3f12",vi);var li=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U){var $=this.length;return this.resize($+1),this.emplace($,U)},y.prototype.emplace=function(U,$){var ae=U*1;return this.uint32[ae+0]=$,U},y}(Qi);li.prototype.bytesPerElement=4,X("StructArrayLayout1ul4",li);var mn=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae,he,Oe,rt,gt,Mt,or){var _r=this.length;return this.resize(_r+1),this.emplace(_r,U,$,ae,he,Oe,rt,gt,Mt,or)},y.prototype.emplace=function(U,$,ae,he,Oe,rt,gt,Mt,or,_r){var vr=U*10,Fr=U*5;return this.int16[vr+0]=$,this.int16[vr+1]=ae,this.int16[vr+2]=he,this.int16[vr+3]=Oe,this.int16[vr+4]=rt,this.int16[vr+5]=gt,this.uint32[Fr+3]=Mt,this.uint16[vr+8]=or,this.uint16[vr+9]=_r,U},y}(Qi);mn.prototype.bytesPerElement=20,X("StructArrayLayout6i1ul2ui20",mn);var Ki=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae,he,Oe,rt){var gt=this.length;return this.resize(gt+1),this.emplace(gt,U,$,ae,he,Oe,rt)},y.prototype.emplace=function(U,$,ae,he,Oe,rt,gt){var Mt=U*6;return this.int16[Mt+0]=$,this.int16[Mt+1]=ae,this.int16[Mt+2]=he,this.int16[Mt+3]=Oe,this.int16[Mt+4]=rt,this.int16[Mt+5]=gt,U},y}(Qi);Ki.prototype.bytesPerElement=12,X("StructArrayLayout2i2i2i12",Ki);var Ui=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae,he,Oe){var rt=this.length;return this.resize(rt+1),this.emplace(rt,U,$,ae,he,Oe)},y.prototype.emplace=function(U,$,ae,he,Oe,rt){var gt=U*4,Mt=U*8;return this.float32[gt+0]=$,this.float32[gt+1]=ae,this.float32[gt+2]=he,this.int16[Mt+6]=Oe,this.int16[Mt+7]=rt,U},y}(Qi);Ui.prototype.bytesPerElement=16,X("StructArrayLayout2f1f2i16",Ui);var Bi=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae,he){var Oe=this.length;return this.resize(Oe+1),this.emplace(Oe,U,$,ae,he)},y.prototype.emplace=function(U,$,ae,he,Oe){var rt=U*12,gt=U*3;return this.uint8[rt+0]=$,this.uint8[rt+1]=ae,this.float32[gt+1]=he,this.float32[gt+2]=Oe,U},y}(Qi);Bi.prototype.bytesPerElement=12,X("StructArrayLayout2ub2f12",Bi);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.uint16=new Uint16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae){var he=this.length;return this.resize(he+1),this.emplace(he,U,$,ae)},y.prototype.emplace=function(U,$,ae,he){var Oe=U*3;return this.uint16[Oe+0]=$,this.uint16[Oe+1]=ae,this.uint16[Oe+2]=he,U},y}(Qi);vn.prototype.bytesPerElement=6,X("StructArrayLayout3ui6",vn);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),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae,he,Oe,rt,gt,Mt,or,_r,vr,Fr,ai,Gi,Ti,bn,rn){var xn=this.length;return this.resize(xn+1),this.emplace(xn,U,$,ae,he,Oe,rt,gt,Mt,or,_r,vr,Fr,ai,Gi,Ti,bn,rn)},y.prototype.emplace=function(U,$,ae,he,Oe,rt,gt,Mt,or,_r,vr,Fr,ai,Gi,Ti,bn,rn,xn){var Dn=U*24,Zn=U*12,ga=U*48;return this.int16[Dn+0]=$,this.int16[Dn+1]=ae,this.uint16[Dn+2]=he,this.uint16[Dn+3]=Oe,this.uint32[Zn+2]=rt,this.uint32[Zn+3]=gt,this.uint32[Zn+4]=Mt,this.uint16[Dn+10]=or,this.uint16[Dn+11]=_r,this.uint16[Dn+12]=vr,this.float32[Zn+7]=Fr,this.float32[Zn+8]=ai,this.uint8[ga+36]=Gi,this.uint8[ga+37]=Ti,this.uint8[ga+38]=bn,this.uint32[Zn+10]=rn,this.int16[Dn+22]=xn,U},y}(Qi);Un.prototype.bytesPerElement=48,X("StructArrayLayout2i2ui3ul3ui2f3ub1ul1i48",Un);var na=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae,he,Oe,rt,gt,Mt,or,_r,vr,Fr,ai,Gi,Ti,bn,rn,xn,Dn,Zn,ga,ha,eo,za,Za,Ko,to,ao){var xs=this.length;return this.resize(xs+1),this.emplace(xs,U,$,ae,he,Oe,rt,gt,Mt,or,_r,vr,Fr,ai,Gi,Ti,bn,rn,xn,Dn,Zn,ga,ha,eo,za,Za,Ko,to,ao)},y.prototype.emplace=function(U,$,ae,he,Oe,rt,gt,Mt,or,_r,vr,Fr,ai,Gi,Ti,bn,rn,xn,Dn,Zn,ga,ha,eo,za,Za,Ko,to,ao,xs){var jo=U*34,El=U*17;return this.int16[jo+0]=$,this.int16[jo+1]=ae,this.int16[jo+2]=he,this.int16[jo+3]=Oe,this.int16[jo+4]=rt,this.int16[jo+5]=gt,this.int16[jo+6]=Mt,this.int16[jo+7]=or,this.uint16[jo+8]=_r,this.uint16[jo+9]=vr,this.uint16[jo+10]=Fr,this.uint16[jo+11]=ai,this.uint16[jo+12]=Gi,this.uint16[jo+13]=Ti,this.uint16[jo+14]=bn,this.uint16[jo+15]=rn,this.uint16[jo+16]=xn,this.uint16[jo+17]=Dn,this.uint16[jo+18]=Zn,this.uint16[jo+19]=ga,this.uint16[jo+20]=ha,this.uint16[jo+21]=eo,this.uint16[jo+22]=za,this.uint32[El+12]=Za,this.float32[El+13]=Ko,this.float32[El+14]=to,this.float32[El+15]=ao,this.float32[El+16]=xs,U},y}(Qi);na.prototype.bytesPerElement=68,X("StructArrayLayout8i15ui1ul4f68",na);var Yi=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U){var $=this.length;return this.resize($+1),this.emplace($,U)},y.prototype.emplace=function(U,$){var ae=U*1;return this.float32[ae+0]=$,U},y}(Qi);Yi.prototype.bytesPerElement=4,X("StructArrayLayout1f4",Yi);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,$,ae){var he=this.length;return this.resize(he+1),this.emplace(he,U,$,ae)},y.prototype.emplace=function(U,$,ae,he){var Oe=U*3;return this.int16[Oe+0]=$,this.int16[Oe+1]=ae,this.int16[Oe+2]=he,U},y}(Qi);Ln.prototype.bytesPerElement=6,X("StructArrayLayout3i6",Ln);var ra=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae){var he=this.length;return this.resize(he+1),this.emplace(he,U,$,ae)},y.prototype.emplace=function(U,$,ae,he){var Oe=U*2,rt=U*4;return this.uint32[Oe+0]=$,this.uint16[rt+2]=ae,this.uint16[rt+3]=he,U},y}(Qi);ra.prototype.bytesPerElement=8,X("StructArrayLayout1ul2ui8",ra);var oa=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$){var ae=this.length;return this.resize(ae+1),this.emplace(ae,U,$)},y.prototype.emplace=function(U,$,ae){var he=U*2;return this.uint16[he+0]=$,this.uint16[he+1]=ae,U},y}(Qi);oa.prototype.bytesPerElement=4,X("StructArrayLayout2ui4",oa);var wa=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U){var $=this.length;return this.resize($+1),this.emplace($,U)},y.prototype.emplace=function(U,$){var ae=U*1;return this.uint16[ae+0]=$,U},y}(Qi);wa.prototype.bytesPerElement=2,X("StructArrayLayout1ui2",wa);var ns=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae,he){var Oe=this.length;return this.resize(Oe+1),this.emplace(Oe,U,$,ae,he)},y.prototype.emplace=function(U,$,ae,he,Oe){var rt=U*4;return this.float32[rt+0]=$,this.float32[rt+1]=ae,this.float32[rt+2]=he,this.float32[rt+3]=Oe,U},y}(Qi);ns.prototype.bytesPerElement=16,X("StructArrayLayout4f16",ns);var Ys=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}(Oi);Ys.prototype.size=20;var Va=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.get=function(U){return new Ys(this,U)},y}(mn);X("CollisionBoxArray",Va);var Ml=function(m){function y(){m.apply(this,arguments)}m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y;var I={anchorX:{configurable:!0},anchorY:{configurable:!0},glyphStartIndex:{configurable:!0},numGlyphs:{configurable:!0},vertexStartIndex:{configurable:!0},lineStartIndex:{configurable:!0},lineLength:{configurable:!0},segment:{configurable:!0},lowerSize:{configurable:!0},upperSize:{configurable:!0},lineOffsetX:{configurable:!0},lineOffsetY:{configurable:!0},writingMode:{configurable:!0},placedOrientation:{configurable:!0},hidden:{configurable:!0},crossTileID:{configurable:!0},associatedIconIndex:{configurable:!0}};return I.anchorX.get=function(){return this._structArray.int16[this._pos2+0]},I.anchorY.get=function(){return this._structArray.int16[this._pos2+1]},I.glyphStartIndex.get=function(){return this._structArray.uint16[this._pos2+2]},I.numGlyphs.get=function(){return this._structArray.uint16[this._pos2+3]},I.vertexStartIndex.get=function(){return this._structArray.uint32[this._pos4+2]},I.lineStartIndex.get=function(){return this._structArray.uint32[this._pos4+3]},I.lineLength.get=function(){return this._structArray.uint32[this._pos4+4]},I.segment.get=function(){return this._structArray.uint16[this._pos2+10]},I.lowerSize.get=function(){return this._structArray.uint16[this._pos2+11]},I.upperSize.get=function(){return this._structArray.uint16[this._pos2+12]},I.lineOffsetX.get=function(){return this._structArray.float32[this._pos4+7]},I.lineOffsetY.get=function(){return this._structArray.float32[this._pos4+8]},I.writingMode.get=function(){return this._structArray.uint8[this._pos1+36]},I.placedOrientation.get=function(){return this._structArray.uint8[this._pos1+37]},I.placedOrientation.set=function(U){this._structArray.uint8[this._pos1+37]=U},I.hidden.get=function(){return this._structArray.uint8[this._pos1+38]},I.hidden.set=function(U){this._structArray.uint8[this._pos1+38]=U},I.crossTileID.get=function(){return this._structArray.uint32[this._pos4+10]},I.crossTileID.set=function(U){this._structArray.uint32[this._pos4+10]=U},I.associatedIconIndex.get=function(){return this._structArray.int16[this._pos2+22]},Object.defineProperties(y.prototype,I),y}(Oi);Ml.prototype.size=48;var zo=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.get=function(U){return new Ml(this,U)},y}(Un);X("PlacedSymbolArray",zo);var el=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}(Oi);el.prototype.size=68;var ol=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 el(this,U)},y}(na);X("SymbolInstanceArray",ol);var Ul=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}(Yi);X("GlyphOffsetArray",Ul);var ls=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}(Ln);X("SymbolLineVertexArray",ls);var Gs=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}(Oi);Gs.prototype.size=8;var Ks=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 Gs(this,U)},y}(ra);X("FeatureIndexArray",Ks);var Ta=ji([{name:"a_pos",components:2,type:"Int16"}],4),sl=Ta.members,io=function(y){y===void 0&&(y=[]),this.segments=y};io.prototype.prepareSegment=function(y,I,U,$){var ae=this.segments[this.segments.length-1];return y>io.MAX_VERTEX_ARRAY_LENGTH&&re("Max vertices per segment is "+io.MAX_VERTEX_ARRAY_LENGTH+": bucket requested "+y),(!ae||ae.vertexLength+y>io.MAX_VERTEX_ARRAY_LENGTH||ae.sortKey!==$)&&(ae={vertexOffset:I.length,primitiveOffset:U.length,vertexLength:0,primitiveLength:0},$!==void 0&&(ae.sortKey=$),this.segments.push(ae)),ae},io.prototype.get=function(){return this.segments},io.prototype.destroy=function(){for(var y=0,I=this.segments;y<I.length;y+=1){var U=I[y];for(var $ in U.vaos)U.vaos[$].destroy()}},io.simpleSegment=function(y,I,U,$){return new io([{vertexOffset:y,primitiveOffset:I,vertexLength:U,primitiveLength:$,vaos:{},sortKey:0}])},io.MAX_VERTEX_ARRAY_LENGTH=Math.pow(2,16)-1,X("SegmentVector",io);function Y(m,y){return m=p(Math.floor(m),0,255),y=p(Math.floor(y),0,255),256*m+y}var D=ji([{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"}]),J=a(function(m){function y(I,U){var $,ae,he,Oe,rt,gt,Mt,or;for($=I.length&3,ae=I.length-$,he=U,rt=3432918353,gt=461845907,or=0;or<ae;)Mt=I.charCodeAt(or)&255|(I.charCodeAt(++or)&255)<<8|(I.charCodeAt(++or)&255)<<16|(I.charCodeAt(++or)&255)<<24,++or,Mt=(Mt&65535)*rt+(((Mt>>>16)*rt&65535)<<16)&4294967295,Mt=Mt<<15|Mt>>>17,Mt=(Mt&65535)*gt+(((Mt>>>16)*gt&65535)<<16)&4294967295,he^=Mt,he=he<<13|he>>>19,Oe=(he&65535)*5+(((he>>>16)*5&65535)<<16)&4294967295,he=(Oe&65535)+27492+(((Oe>>>16)+58964&65535)<<16);switch(Mt=0,$){case 3:Mt^=(I.charCodeAt(or+2)&255)<<16;case 2:Mt^=(I.charCodeAt(or+1)&255)<<8;case 1:Mt^=I.charCodeAt(or)&255,Mt=(Mt&65535)*rt+(((Mt>>>16)*rt&65535)<<16)&4294967295,Mt=Mt<<15|Mt>>>17,Mt=(Mt&65535)*gt+(((Mt>>>16)*gt&65535)<<16)&4294967295,he^=Mt}return he^=I.length,he^=he>>>16,he=(he&65535)*2246822507+(((he>>>16)*2246822507&65535)<<16)&4294967295,he^=he>>>13,he=(he&65535)*3266489909+(((he>>>16)*3266489909&65535)<<16)&4294967295,he^=he>>>16,he>>>0}m.exports=y}),q=a(function(m){function y(I,U){for(var $=I.length,ae=U^$,he=0,Oe;$>=4;)Oe=I.charCodeAt(he)&255|(I.charCodeAt(++he)&255)<<8|(I.charCodeAt(++he)&255)<<16|(I.charCodeAt(++he)&255)<<24,Oe=(Oe&65535)*1540483477+(((Oe>>>16)*1540483477&65535)<<16),Oe^=Oe>>>24,Oe=(Oe&65535)*1540483477+(((Oe>>>16)*1540483477&65535)<<16),ae=(ae&65535)*1540483477+(((ae>>>16)*1540483477&65535)<<16)^Oe,$-=4,++he;switch($){case 3:ae^=(I.charCodeAt(he+2)&255)<<16;case 2:ae^=(I.charCodeAt(he+1)&255)<<8;case 1:ae^=I.charCodeAt(he)&255,ae=(ae&65535)*1540483477+(((ae>>>16)*1540483477&65535)<<16)}return ae^=ae>>>13,ae=(ae&65535)*1540483477+(((ae>>>16)*1540483477&65535)<<16),ae^=ae>>>15,ae>>>0}m.exports=y}),K=J,de=J,ne=q;K.murmur3=de,K.murmur2=ne;var we=function(){this.ids=[],this.positions=[],this.indexed=!1};we.prototype.add=function(y,I,U,$){this.ids.push(ft(y)),this.positions.push(I,U,$)},we.prototype.getPositions=function(y){for(var I=ft(y),U=0,$=this.ids.length-1;U<$;){var ae=U+$>>1;this.ids[ae]>=I?$=ae:U=ae+1}for(var he=[];this.ids[U]===I;){var Oe=this.positions[3*U],rt=this.positions[3*U+1],gt=this.positions[3*U+2];he.push({index:Oe,start:rt,end:gt}),U++}return he},we.serialize=function(y,I){var U=new Float64Array(y.ids),$=new Uint32Array(y.positions);return Zt(U,$,0,U.length-1),I&&I.push(U.buffer,$.buffer),{ids:U,positions:$}},we.deserialize=function(y){var I=new we;return I.ids=y.ids,I.positions=y.positions,I.indexed=!0,I};var Ue=Math.pow(2,53)-1;function ft(m){var y=+m;return!isNaN(y)&&y<=Ue?y:K(String(m))}function Zt(m,y,I,U){for(;I<U;){for(var $=m[I+U>>1],ae=I-1,he=U+1;;){do ae++;while(m[ae]<$);do he--;while(m[he]>$);if(ae>=he)break;hr(m,ae,he),hr(y,3*ae,3*he),hr(y,3*ae+1,3*he+1),hr(y,3*ae+2,3*he+2)}he-I<U-he?(Zt(m,y,I,he),I=he+1):(Zt(m,y,he+1,U),U=he)}}function hr(m,y,I){var U=m[y];m[y]=m[I],m[I]=U}X("FeaturePositionMap",we);var qt=function(y,I){this.gl=y.gl,this.location=I},Ve=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}(qt),et=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}(qt),at=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}(qt),kt=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}(qt),Ot=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}(qt),It=function(m){function y(I,U){m.call(this,I,U),this.current=fs.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}(qt),Bt=new Float32Array(16),Rt=function(m){function y(I,U){m.call(this,I,U),this.current=Bt}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 $=1;$<16;$++)if(U[$]!==this.current[$]){this.current=U,this.gl.uniformMatrix4fv(this.location,!1,U);break}},y}(qt);function mt(m){return[Y(255*m.r,255*m.g),Y(255*m.b,255*m.a)]}var Pt=function(y,I,U){this.value=y,this.uniformNames=I.map(function($){return"u_"+$}),this.type=U};Pt.prototype.setUniform=function(y,I,U){y.set(U.constantOr(this.value))},Pt.prototype.getBinding=function(y,I,U){return this.type==="color"?new It(y,I):new et(y,I)};var ht=function(y,I){this.uniformNames=I.map(function(U){return"u_"+U}),this.patternFrom=null,this.patternTo=null,this.pixelRatioFrom=1,this.pixelRatioTo=1};ht.prototype.setConstantPatternPositions=function(y,I){this.pixelRatioFrom=I.pixelRatio,this.pixelRatioTo=y.pixelRatio,this.patternFrom=I.tlbr,this.patternTo=y.tlbr},ht.prototype.setUniform=function(y,I,U,$){var ae=$==="u_pattern_to"?this.patternTo:$==="u_pattern_from"?this.patternFrom:$==="u_pixel_ratio_to"?this.pixelRatioTo:$==="u_pixel_ratio_from"?this.pixelRatioFrom:null;ae&&y.set(ae)},ht.prototype.getBinding=function(y,I,U){return U.substr(0,9)==="u_pattern"?new Ot(y,I):new et(y,I)};var cr=function(y,I,U,$){this.expression=y,this.type=U,this.maxValue=0,this.paintVertexAttributes=I.map(function(ae){return{name:"a_"+ae,type:"Float32",components:U==="color"?2:1,offset:0}}),this.paintVertexArray=new $};cr.prototype.populatePaintArray=function(y,I,U,$,ae){var he=this.paintVertexArray.length,Oe=this.expression.evaluate(new Gn(0),I,{},$,[],ae);this.paintVertexArray.resize(y),this._setPaintValue(he,y,Oe)},cr.prototype.updatePaintArray=function(y,I,U,$){var ae=this.expression.evaluate({zoom:0},U,$);this._setPaintValue(y,I,ae)},cr.prototype._setPaintValue=function(y,I,U){if(this.type==="color")for(var $=mt(U),ae=y;ae<I;ae++)this.paintVertexArray.emplace(ae,$[0],$[1]);else{for(var he=y;he<I;he++)this.paintVertexArray.emplace(he,U);this.maxValue=Math.max(this.maxValue,Math.abs(U))}},cr.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))},cr.prototype.destroy=function(){this.paintVertexBuffer&&this.paintVertexBuffer.destroy()};var br=function(y,I,U,$,ae,he){this.expression=y,this.uniformNames=I.map(function(Oe){return"u_"+Oe+"_t"}),this.type=U,this.useIntegerZoom=$,this.zoom=ae,this.maxValue=0,this.paintVertexAttributes=I.map(function(Oe){return{name:"a_"+Oe,type:"Float32",components:U==="color"?4:2,offset:0}}),this.paintVertexArray=new he};br.prototype.populatePaintArray=function(y,I,U,$,ae){var he=this.expression.evaluate(new Gn(this.zoom),I,{},$,[],ae),Oe=this.expression.evaluate(new Gn(this.zoom+1),I,{},$,[],ae),rt=this.paintVertexArray.length;this.paintVertexArray.resize(y),this._setPaintValue(rt,y,he,Oe)},br.prototype.updatePaintArray=function(y,I,U,$){var ae=this.expression.evaluate({zoom:this.zoom},U,$),he=this.expression.evaluate({zoom:this.zoom+1},U,$);this._setPaintValue(y,I,ae,he)},br.prototype._setPaintValue=function(y,I,U,$){if(this.type==="color")for(var ae=mt(U),he=mt($),Oe=y;Oe<I;Oe++)this.paintVertexArray.emplace(Oe,ae[0],ae[1],he[0],he[1]);else{for(var rt=y;rt<I;rt++)this.paintVertexArray.emplace(rt,U,$);this.maxValue=Math.max(this.maxValue,Math.abs(U),Math.abs($))}},br.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))},br.prototype.destroy=function(){this.paintVertexBuffer&&this.paintVertexBuffer.destroy()},br.prototype.setUniform=function(y,I){var U=this.useIntegerZoom?Math.floor(I.zoom):I.zoom,$=p(this.expression.interpolationFactor(U,this.zoom,this.zoom+1),0,1);y.set($)},br.prototype.getBinding=function(y,I,U){return new et(y,I)};var Nr=function(y,I,U,$,ae,he){this.expression=y,this.type=I,this.useIntegerZoom=U,this.zoom=$,this.layerId=he,this.zoomInPaintVertexArray=new ae,this.zoomOutPaintVertexArray=new ae};Nr.prototype.populatePaintArray=function(y,I,U){var $=this.zoomInPaintVertexArray.length;this.zoomInPaintVertexArray.resize(y),this.zoomOutPaintVertexArray.resize(y),this._setPaintValues($,y,I.patterns&&I.patterns[this.layerId],U)},Nr.prototype.updatePaintArray=function(y,I,U,$,ae){this._setPaintValues(y,I,U.patterns&&U.patterns[this.layerId],ae)},Nr.prototype._setPaintValues=function(y,I,U,$){if(!(!$||!U)){var ae=U.min,he=U.mid,Oe=U.max,rt=$[ae],gt=$[he],Mt=$[Oe];if(!(!rt||!gt||!Mt))for(var or=y;or<I;or++)this.zoomInPaintVertexArray.emplace(or,gt.tl[0],gt.tl[1],gt.br[0],gt.br[1],rt.tl[0],rt.tl[1],rt.br[0],rt.br[1],gt.pixelRatio,rt.pixelRatio),this.zoomOutPaintVertexArray.emplace(or,gt.tl[0],gt.tl[1],gt.br[0],gt.br[1],Mt.tl[0],Mt.tl[1],Mt.br[0],Mt.br[1],gt.pixelRatio,Mt.pixelRatio)}},Nr.prototype.upload=function(y){this.zoomInPaintVertexArray&&this.zoomInPaintVertexArray.arrayBuffer&&this.zoomOutPaintVertexArray&&this.zoomOutPaintVertexArray.arrayBuffer&&(this.zoomInPaintVertexBuffer=y.createVertexBuffer(this.zoomInPaintVertexArray,D.members,this.expression.isStateDependent),this.zoomOutPaintVertexBuffer=y.createVertexBuffer(this.zoomOutPaintVertexArray,D.members,this.expression.isStateDependent))},Nr.prototype.destroy=function(){this.zoomOutPaintVertexBuffer&&this.zoomOutPaintVertexBuffer.destroy(),this.zoomInPaintVertexBuffer&&this.zoomInPaintVertexBuffer.destroy()};var Ri=function(y,I,U){this.binders={},this._buffers=[];var $=[];for(var ae in y.paint._values)if(U(ae)){var he=y.paint.get(ae);if(!(!(he instanceof vl)||!Xs(he.property.specification))){var Oe=wi(ae,y.type),rt=he.value,gt=he.property.specification.type,Mt=he.property.useIntegerZoom,or=he.property.specification["property-type"],_r=or==="cross-faded"||or==="cross-faded-data-driven";if(rt.kind==="constant")this.binders[ae]=_r?new ht(rt.value,Oe):new Pt(rt.value,Oe,gt),$.push("/u_"+ae);else if(rt.kind==="source"||_r){var vr=tn(ae,gt,"source");this.binders[ae]=_r?new Nr(rt,gt,Mt,I,vr,y.id):new cr(rt,Oe,gt,vr),$.push("/a_"+ae)}else{var Fr=tn(ae,gt,"composite");this.binders[ae]=new br(rt,Oe,gt,Mt,I,Fr),$.push("/z_"+ae)}}}this.cacheKey=$.sort().join("")};Ri.prototype.getMaxValue=function(y){var I=this.binders[y];return I instanceof cr||I instanceof br?I.maxValue:0},Ri.prototype.populatePaintArrays=function(y,I,U,$,ae){for(var he in this.binders){var Oe=this.binders[he];(Oe instanceof cr||Oe instanceof br||Oe instanceof Nr)&&Oe.populatePaintArray(y,I,U,$,ae)}},Ri.prototype.setConstantPatternPositions=function(y,I){for(var U in this.binders){var $=this.binders[U];$ instanceof ht&&$.setConstantPatternPositions(y,I)}},Ri.prototype.updatePaintArrays=function(y,I,U,$,ae){var he=!1;for(var Oe in y)for(var rt=I.getPositions(Oe),gt=0,Mt=rt;gt<Mt.length;gt+=1){var or=Mt[gt],_r=U.feature(or.index);for(var vr in this.binders){var Fr=this.binders[vr];if((Fr instanceof cr||Fr instanceof br||Fr instanceof Nr)&&Fr.expression.isStateDependent===!0){var ai=$.paint.get(vr);Fr.expression=ai.value,Fr.updatePaintArray(or.start,or.end,_r,y[Oe],ae),he=!0}}}return he},Ri.prototype.defines=function(){var y=[];for(var I in this.binders){var U=this.binders[I];(U instanceof Pt||U instanceof ht)&&y.push.apply(y,U.uniformNames.map(function($){return"#define HAS_UNIFORM_"+$}))}return y},Ri.prototype.getBinderAttributes=function(){var y=[];for(var I in this.binders){var U=this.binders[I];if(U instanceof cr||U instanceof br)for(var $=0;$<U.paintVertexAttributes.length;$++)y.push(U.paintVertexAttributes[$].name);else if(U instanceof Nr)for(var ae=0;ae<D.members.length;ae++)y.push(D.members[ae].name)}return y},Ri.prototype.getBinderUniforms=function(){var y=[];for(var I in this.binders){var U=this.binders[I];if(U instanceof Pt||U instanceof ht||U instanceof br)for(var $=0,ae=U.uniformNames;$<ae.length;$+=1){var he=ae[$];y.push(he)}}return y},Ri.prototype.getPaintVertexBuffers=function(){return this._buffers},Ri.prototype.getUniforms=function(y,I){var U=[];for(var $ in this.binders){var ae=this.binders[$];if(ae instanceof Pt||ae instanceof ht||ae instanceof br)for(var he=0,Oe=ae.uniformNames;he<Oe.length;he+=1){var rt=Oe[he];if(I[rt]){var gt=ae.getBinding(y,I[rt],rt);U.push({name:rt,property:$,binding:gt})}}}return U},Ri.prototype.setUniforms=function(y,I,U,$){for(var ae=0,he=I;ae<he.length;ae+=1){var Oe=he[ae],rt=Oe.name,gt=Oe.property,Mt=Oe.binding;this.binders[gt].setUniform(Mt,$,U.get(gt),rt)}},Ri.prototype.updatePaintBuffers=function(y){this._buffers=[];for(var I in this.binders){var U=this.binders[I];if(y&&U instanceof Nr){var $=y.fromScale===2?U.zoomInPaintVertexBuffer:U.zoomOutPaintVertexBuffer;$&&this._buffers.push($)}else(U instanceof cr||U instanceof br)&&U.paintVertexBuffer&&this._buffers.push(U.paintVertexBuffer)}},Ri.prototype.upload=function(y){for(var I in this.binders){var U=this.binders[I];(U instanceof cr||U instanceof br||U instanceof Nr)&&U.upload(y)}this.updatePaintBuffers()},Ri.prototype.destroy=function(){for(var y in this.binders){var I=this.binders[y];(I instanceof cr||I instanceof br||I instanceof Nr)&&I.destroy()}};var hi=function(y,I,U){U===void 0&&(U=function(){return!0}),this.programConfigurations={};for(var $=0,ae=y;$<ae.length;$+=1){var he=ae[$];this.programConfigurations[he.id]=new Ri(he,I,U)}this.needsUpload=!1,this._featureMap=new we,this._bufferOffset=0};hi.prototype.populatePaintArrays=function(y,I,U,$,ae,he){for(var Oe in this.programConfigurations)this.programConfigurations[Oe].populatePaintArrays(y,I,$,ae,he);I.id!==void 0&&this._featureMap.add(I.id,U,this._bufferOffset,y),this._bufferOffset=y,this.needsUpload=!0},hi.prototype.updatePaintArrays=function(y,I,U,$){for(var ae=0,he=U;ae<he.length;ae+=1){var Oe=he[ae];this.needsUpload=this.programConfigurations[Oe.id].updatePaintArrays(y,this._featureMap,I,Oe,$)||this.needsUpload}},hi.prototype.get=function(y){return this.programConfigurations[y]},hi.prototype.upload=function(y){if(this.needsUpload){for(var I in this.programConfigurations)this.programConfigurations[I].upload(y);this.needsUpload=!1}},hi.prototype.destroy=function(){for(var y in this.programConfigurations)this.programConfigurations[y].destroy()};function wi(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 gn(m){var y={"line-pattern":{source:Xi,composite:Xi},"fill-pattern":{source:Xi,composite:Xi},"fill-extrusion-pattern":{source:Xi,composite:Xi}};return y[m]}function tn(m,y,I){var U={color:{source:nn,composite:ns},number:{source:Yi,composite:nn}},$=gn(m);return $&&$[I]||U[y][I]}X("ConstantBinder",Pt),X("CrossFadedConstantBinder",ht),X("SourceExpressionBinder",cr),X("CrossFadedCompositeBinder",Nr),X("CompositeExpressionBinder",br),X("ProgramConfiguration",Ri,{omit:["_buffers"]}),X("ProgramConfigurationSet",hi);var Ci=8192,qi=15,Vi=Math.pow(2,qi-1)-1,on=-Vi-1;function On(m){for(var y=Ci/m.extent,I=m.loadGeometry(),U=0;U<I.length;U++)for(var $=I[U],ae=0;ae<$.length;ae++){var he=$[ae],Oe=Math.round(he.x*y),rt=Math.round(he.y*y);he.x=p(Oe,on,Vi),he.y=p(rt,on,Vi),(Oe<he.x||Oe>he.x+1||rt<he.y||rt>he.y+1)&&re("Geometry exceeds allowed extent, reduce your vector tile buffer size")}return I}function Ja(m,y){return{type:m.type,id:m.id,properties:m.properties,geometry:y?On(m):[]}}function co(m,y,I,U,$){m.emplaceBack(y*2+(U+1)/2,I*2+($+1)/2)}var rs=function(y){this.zoom=y.zoom,this.overscaling=y.overscaling,this.layers=y.layers,this.layerIds=this.layers.map(function(I){return I.id}),this.index=y.index,this.hasPattern=!1,this.layoutVertexArray=new Yr,this.indexArray=new vn,this.segments=new io,this.programConfigurations=new hi(y.layers,y.zoom),this.stateDependentLayerIds=this.layers.filter(function(I){return I.isStateDependent()}).map(function(I){return I.id})};rs.prototype.populate=function(y,I,U){var $=this.layers[0],ae=[],he=null;$.type==="circle"&&(he=$.layout.get("circle-sort-key"));for(var Oe=0,rt=y;Oe<rt.length;Oe+=1){var gt=rt[Oe],Mt=gt.feature,or=gt.id,_r=gt.index,vr=gt.sourceLayerIndex,Fr=this.layers[0]._featureFilter.needGeometry,ai=Ja(Mt,Fr);if(this.layers[0]._featureFilter.filter(new Gn(this.zoom),ai,U)){var Gi=he?he.evaluate(ai,{},U):void 0,Ti={id:or,properties:Mt.properties,type:Mt.type,sourceLayerIndex:vr,index:_r,geometry:Fr?ai.geometry:On(Mt),patterns:{},sortKey:Gi};ae.push(Ti)}}he&&ae.sort(function(za,Za){return za.sortKey-Za.sortKey});for(var bn=0,rn=ae;bn<rn.length;bn+=1){var xn=rn[bn],Dn=xn,Zn=Dn.geometry,ga=Dn.index,ha=Dn.sourceLayerIndex,eo=y[ga].feature;this.addFeature(xn,Zn,ga,U),I.featureIndex.insert(eo,Zn,ga,ha,this.index)}},rs.prototype.update=function(y,I,U){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(y,I,this.stateDependentLayers,U)},rs.prototype.isEmpty=function(){return this.layoutVertexArray.length===0},rs.prototype.uploadPending=function(){return!this.uploaded||this.programConfigurations.needsUpload},rs.prototype.upload=function(y){this.uploaded||(this.layoutVertexBuffer=y.createVertexBuffer(this.layoutVertexArray,sl),this.indexBuffer=y.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(y),this.uploaded=!0},rs.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())},rs.prototype.addFeature=function(y,I,U,$){for(var ae=0,he=I;ae<he.length;ae+=1)for(var Oe=he[ae],rt=0,gt=Oe;rt<gt.length;rt+=1){var Mt=gt[rt],or=Mt.x,_r=Mt.y;if(!(or<0||or>=Ci||_r<0||_r>=Ci)){var vr=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray,y.sortKey),Fr=vr.vertexLength;co(this.layoutVertexArray,or,_r,-1,-1),co(this.layoutVertexArray,or,_r,1,-1),co(this.layoutVertexArray,or,_r,1,1),co(this.layoutVertexArray,or,_r,-1,1),this.indexArray.emplaceBack(Fr,Fr+1,Fr+2),this.indexArray.emplaceBack(Fr,Fr+3,Fr+2),vr.vertexLength+=4,vr.primitiveLength+=2}}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,y,U,{},$)},X("CircleBucket",rs,{omit:["layers"]});function so(m,y){for(var I=0;I<m.length;I++)if(Td(y,m[I]))return!0;for(var U=0;U<y.length;U++)if(Td(m,y[U]))return!0;return!!Ev(m,y)}function Zo(m,y,I){return!!(Td(m,y)||Yv(y,m,I))}function ys(m,y){if(m.length===1)return dp(y,m[0]);for(var I=0;I<y.length;I++)for(var U=y[I],$=0;$<U.length;$++)if(Td(m,U[$]))return!0;for(var ae=0;ae<m.length;ae++)if(dp(y,m[ae]))return!0;for(var he=0;he<y.length;he++)if(Ev(m,y[he]))return!0;return!1}function su(m,y,I){for(var U=0;U<y.length;U++){var $=y[U];if(m.length>=3){for(var ae=0;ae<$.length;ae++)if(Td(m,$[ae]))return!0}if(Mv(m,$,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 $=0;$<m.length;$++)if(Yv(m[$],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],$=m[I+1],ae=0;ae<y.length-1;ae++){var he=y[ae],Oe=y[ae+1];if(wd(U,$,he,Oe))return!0}return!1}function wd(m,y,I,U){return oe(m,I,U)!==oe(y,I,U)&&oe(m,y,I)!==oe(m,y,U)}function Yv(m,y,I){var U=I*I;if(y.length===1)return m.distSqr(y[0])<U;for(var $=1;$<y.length;$++){var ae=y[$-1],he=y[$];if(cg(m,ae,he)<U)return!0}return!1}function cg(m,y,I){var U=y.distSqr(I);if(U===0)return m.distSqr(y);var $=((m.x-y.x)*(I.x-y.x)+(m.y-y.y)*(I.y-y.y))/U;return $<0?m.distSqr(y):$>1?m.distSqr(I):m.distSqr(I.sub(y)._mult($)._add(y))}function dp(m,y){for(var I=!1,U,$,ae,he=0;he<m.length;he++){U=m[he];for(var Oe=0,rt=U.length-1;Oe<U.length;rt=Oe++)$=U[Oe],ae=U[rt],$.y>y.y!=ae.y>y.y&&y.x<(ae.x-$.x)*(y.y-$.y)/(ae.y-$.y)+$.x&&(I=!I)}return I}function Td(m,y){for(var I=!1,U=0,$=m.length-1;U<m.length;$=U++){var ae=m[U],he=m[$];ae.y>y.y!=he.y>y.y&&y.x<(he.x-ae.x)*(y.y-ae.y)/(he.y-ae.y)+ae.x&&(I=!I)}return I}function vp(m,y,I,U,$){for(var ae=0,he=m;ae<he.length;ae+=1){var Oe=he[ae];if(y<=Oe.x&&I<=Oe.y&&U>=Oe.x&&$>=Oe.y)return!0}var rt=[new u(y,I),new u(y,$),new u(U,$),new u(U,I)];if(m.length>2)for(var gt=0,Mt=rt;gt<Mt.length;gt+=1){var or=Mt[gt];if(Td(m,or))return!0}for(var _r=0;_r<m.length-1;_r++){var vr=m[_r],Fr=m[_r+1];if(Vd(vr,Fr,rt))return!0}return!1}function Vd(m,y,I){var U=I[0],$=I[2];if(m.x<U.x&&y.x<U.x||m.x>$.x&&y.x>$.x||m.y<U.y&&y.y<U.y||m.y>$.y&&y.y>$.y)return!1;var ae=oe(m,y,I[0]);return ae!==oe(m,y,I[1])||ae!==oe(m,y,I[2])||ae!==oe(m,y,I[3])}function Ad(m,y,I){var U=y.paint.get(m).value;return U.kind==="constant"?U.value:I.programConfigurations.get(y.id).getMaxValue(m)}function Cv(m){return Math.sqrt(m[0]*m[0]+m[1]*m[1])}function Kv(m,y,I,U,$){if(!y[0]&&!y[1])return m;var ae=u.convert(y)._mult($);I==="viewport"&&ae._rotate(-U);for(var he=[],Oe=0;Oe<m.length;Oe++){var rt=m[Oe];he.push(rt.sub(ae))}return he}var kv=new Br({"circle-sort-key":new xt(Fn.layout_circle["circle-sort-key"])}),ny=new Br({"circle-radius":new xt(Fn.paint_circle["circle-radius"]),"circle-color":new xt(Fn.paint_circle["circle-color"]),"circle-blur":new xt(Fn.paint_circle["circle-blur"]),"circle-opacity":new xt(Fn.paint_circle["circle-opacity"]),"circle-translate":new Ee(Fn.paint_circle["circle-translate"]),"circle-translate-anchor":new Ee(Fn.paint_circle["circle-translate-anchor"]),"circle-pitch-scale":new Ee(Fn.paint_circle["circle-pitch-scale"]),"circle-pitch-alignment":new Ee(Fn.paint_circle["circle-pitch-alignment"]),"circle-stroke-width":new xt(Fn.paint_circle["circle-stroke-width"]),"circle-stroke-color":new xt(Fn.paint_circle["circle-stroke-color"]),"circle-stroke-opacity":new xt(Fn.paint_circle["circle-stroke-opacity"])}),fg={paint:ny,layout:kv},oh=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 oh(4);return oh!=Float32Array&&(m[1]=0,m[2]=0),m[0]=1,m[3]=1,m}function ay(m,y,I){var U=y[0],$=y[1],ae=y[2],he=y[3],Oe=Math.sin(I),rt=Math.cos(I);return m[0]=U*rt+ae*Oe,m[1]=$*rt+he*Oe,m[2]=U*-Oe+ae*rt,m[3]=$*-Oe+he*rt,m}function Gh(){var m=new oh(9);return oh!=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 oh(16);return oh!=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 oh(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],$=y[2],ae=y[3],he=y[4],Oe=y[5],rt=y[6],gt=y[7],Mt=y[8],or=y[9],_r=y[10],vr=y[11],Fr=y[12],ai=y[13],Gi=y[14],Ti=y[15],bn=I*Oe-U*he,rn=I*rt-$*he,xn=I*gt-ae*he,Dn=U*rt-$*Oe,Zn=U*gt-ae*Oe,ga=$*gt-ae*rt,ha=Mt*ai-or*Fr,eo=Mt*Gi-_r*Fr,za=Mt*Ti-vr*Fr,Za=or*Gi-_r*ai,Ko=or*Ti-vr*ai,to=_r*Ti-vr*Gi,ao=bn*to-rn*Ko+xn*Za+Dn*za-Zn*eo+ga*ha;return ao?(ao=1/ao,m[0]=(Oe*to-rt*Ko+gt*Za)*ao,m[1]=($*Ko-U*to-ae*Za)*ao,m[2]=(ai*ga-Gi*Zn+Ti*Dn)*ao,m[3]=(_r*Zn-or*ga-vr*Dn)*ao,m[4]=(rt*za-he*to-gt*eo)*ao,m[5]=(I*to-$*za+ae*eo)*ao,m[6]=(Gi*xn-Fr*ga-Ti*rn)*ao,m[7]=(Mt*ga-_r*xn+vr*rn)*ao,m[8]=(he*Ko-Oe*za+gt*ha)*ao,m[9]=(U*za-I*Ko-ae*ha)*ao,m[10]=(Fr*Zn-ai*xn+Ti*bn)*ao,m[11]=(or*xn-Mt*Zn-vr*bn)*ao,m[12]=(Oe*eo-he*Za-rt*ha)*ao,m[13]=(I*Za-U*eo+$*ha)*ao,m[14]=(ai*rn-Fr*Dn-Gi*bn)*ao,m[15]=(Mt*Dn-or*rn+_r*bn)*ao,m):null}function nm(m,y,I){var U=y[0],$=y[1],ae=y[2],he=y[3],Oe=y[4],rt=y[5],gt=y[6],Mt=y[7],or=y[8],_r=y[9],vr=y[10],Fr=y[11],ai=y[12],Gi=y[13],Ti=y[14],bn=y[15],rn=I[0],xn=I[1],Dn=I[2],Zn=I[3];return m[0]=rn*U+xn*Oe+Dn*or+Zn*ai,m[1]=rn*$+xn*rt+Dn*_r+Zn*Gi,m[2]=rn*ae+xn*gt+Dn*vr+Zn*Ti,m[3]=rn*he+xn*Mt+Dn*Fr+Zn*bn,rn=I[4],xn=I[5],Dn=I[6],Zn=I[7],m[4]=rn*U+xn*Oe+Dn*or+Zn*ai,m[5]=rn*$+xn*rt+Dn*_r+Zn*Gi,m[6]=rn*ae+xn*gt+Dn*vr+Zn*Ti,m[7]=rn*he+xn*Mt+Dn*Fr+Zn*bn,rn=I[8],xn=I[9],Dn=I[10],Zn=I[11],m[8]=rn*U+xn*Oe+Dn*or+Zn*ai,m[9]=rn*$+xn*rt+Dn*_r+Zn*Gi,m[10]=rn*ae+xn*gt+Dn*vr+Zn*Ti,m[11]=rn*he+xn*Mt+Dn*Fr+Zn*bn,rn=I[12],xn=I[13],Dn=I[14],Zn=I[15],m[12]=rn*U+xn*Oe+Dn*or+Zn*ai,m[13]=rn*$+xn*rt+Dn*_r+Zn*Gi,m[14]=rn*ae+xn*gt+Dn*vr+Zn*Ti,m[15]=rn*he+xn*Mt+Dn*Fr+Zn*bn,m}function vc(m,y,I){var U=I[0],$=I[1],ae=I[2],he,Oe,rt,gt,Mt,or,_r,vr,Fr,ai,Gi,Ti;return y===m?(m[12]=y[0]*U+y[4]*$+y[8]*ae+y[12],m[13]=y[1]*U+y[5]*$+y[9]*ae+y[13],m[14]=y[2]*U+y[6]*$+y[10]*ae+y[14],m[15]=y[3]*U+y[7]*$+y[11]*ae+y[15]):(he=y[0],Oe=y[1],rt=y[2],gt=y[3],Mt=y[4],or=y[5],_r=y[6],vr=y[7],Fr=y[8],ai=y[9],Gi=y[10],Ti=y[11],m[0]=he,m[1]=Oe,m[2]=rt,m[3]=gt,m[4]=Mt,m[5]=or,m[6]=_r,m[7]=vr,m[8]=Fr,m[9]=ai,m[10]=Gi,m[11]=Ti,m[12]=he*U+Mt*$+Fr*ae+y[12],m[13]=Oe*U+or*$+ai*ae+y[13],m[14]=rt*U+_r*$+Gi*ae+y[14],m[15]=gt*U+vr*$+Ti*ae+y[15]),m}function eu(m,y,I){var U=I[0],$=I[1],ae=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]*$,m[5]=y[5]*$,m[6]=y[6]*$,m[7]=y[7]*$,m[8]=y[8]*ae,m[9]=y[9]*ae,m[10]=y[10]*ae,m[11]=y[11]*ae,m[12]=y[12],m[13]=y[13],m[14]=y[14],m[15]=y[15],m}function Sd(m,y,I){var U=Math.sin(I),$=Math.cos(I),ae=y[4],he=y[5],Oe=y[6],rt=y[7],gt=y[8],Mt=y[9],or=y[10],_r=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]=ae*$+gt*U,m[5]=he*$+Mt*U,m[6]=Oe*$+or*U,m[7]=rt*$+_r*U,m[8]=gt*$-ae*U,m[9]=Mt*$-he*U,m[10]=or*$-Oe*U,m[11]=_r*$-rt*U,m}function sy(m,y,I){var U=Math.sin(I),$=Math.cos(I),ae=y[0],he=y[1],Oe=y[2],rt=y[3],gt=y[4],Mt=y[5],or=y[6],_r=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]=ae*$+gt*U,m[1]=he*$+Mt*U,m[2]=Oe*$+or*U,m[3]=rt*$+_r*U,m[4]=gt*$-ae*U,m[5]=Mt*$-he*U,m[6]=or*$-Oe*U,m[7]=_r*$-rt*U,m}function A1(m,y,I,U,$){var ae=1/Math.tan(y/2),he;return m[0]=ae/I,m[1]=0,m[2]=0,m[3]=0,m[4]=0,m[5]=ae,m[6]=0,m[7]=0,m[8]=0,m[9]=0,m[11]=-1,m[12]=0,m[13]=0,m[15]=0,$!=null&&$!==1/0?(he=1/(U-$),m[10]=($+U)*he,m[14]=2*$*U*he):(m[10]=-1,m[14]=-2*U),m}function wu(m,y,I,U,$,ae,he){var Oe=1/(y-I),rt=1/(U-$),gt=1/(ae-he);return m[0]=-2*Oe,m[1]=0,m[2]=0,m[3]=0,m[4]=0,m[5]=-2*rt,m[6]=0,m[7]=0,m[8]=0,m[9]=0,m[10]=2*gt,m[11]=0,m[12]=(y+I)*Oe,m[13]=($+U)*rt,m[14]=(he+ae)*gt,m[15]=1,m}var Nx=nm;function am(){var m=new oh(3);return oh!=Float32Array&&(m[0]=0,m[1]=0,m[2]=0),m}function Mw(m){var y=new oh(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],$=y[2],ae=I*I+U*U+$*$;return ae>0&&(ae=1/Math.sqrt(ae)),m[0]=y[0]*ae,m[1]=y[1]*ae,m[2]=y[2]*ae,m}function D9(m,y){return m[0]*y[0]+m[1]*y[1]+m[2]*y[2]}function F9(m,y,I){var U=y[0],$=y[1],ae=y[2],he=I[0],Oe=I[1],rt=I[2];return m[0]=$*rt-ae*Oe,m[1]=ae*he-U*rt,m[2]=U*Oe-$*he,m}function z9(m,y,I){var U=y[0],$=y[1],ae=y[2];return m[0]=U*I[0]+$*I[3]+ae*I[6],m[1]=U*I[1]+$*I[4]+ae*I[7],m[2]=U*I[2]+$*I[5]+ae*I[8],m}var O9=om,CQ=function(){var m=am();return function(y,I,U,$,ae,he){var Oe,rt;for(I||(I=3),U||(U=0),$?rt=Math.min($*I+U,y.length):rt=y.length,Oe=U;Oe<rt;Oe+=I)m[0]=y[Oe],m[1]=y[Oe+1],m[2]=y[Oe+2],ae(m,m,he),y[Oe]=m[0],y[Oe+1]=m[1],y[Oe+2]=m[2];return y}}();function q9(){var m=new oh(4);return oh!=Float32Array&&(m[0]=0,m[1]=0,m[2]=0,m[3]=0),m}function B9(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 N9(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],$=y[1],ae=y[2],he=y[3];return m[0]=I[0]*U+I[4]*$+I[8]*ae+I[12]*he,m[1]=I[1]*U+I[5]*$+I[9]*ae+I[13]*he,m[2]=I[2]*U+I[6]*$+I[10]*ae+I[14]*he,m[3]=I[3]*U+I[7]*$+I[11]*ae+I[15]*he,m}var Vx=function(){var m=q9();return function(y,I,U,$,ae,he){var Oe,rt;for(I||(I=4),U||(U=0),$?rt=Math.min($*I+U,y.length):rt=y.length,Oe=U;Oe<rt;Oe+=I)m[0]=y[Oe],m[1]=y[Oe+1],m[2]=y[Oe+2],m[3]=y[Oe+3],ae(m,m,he),y[Oe]=m[0],y[Oe+1]=m[1],y[Oe+2]=m[2],y[Oe+3]=m[3];return y}}();function gk(){var m=new oh(2);return oh!=Float32Array&&(m[0]=0,m[1]=0),m}function tS(m){var y=m[0],I=m[1];return y*y+I*I}var rS=tS,kQ=function(){var m=gk();return function(y,I,U,$,ae,he){var Oe,rt;for(I||(I=2),U||(U=0),$?rt=Math.min($*I+U,y.length):rt=y.length,Oe=U;Oe<rt;Oe+=I)m[0]=y[Oe],m[1]=y[Oe+1],ae(m,m,he),y[Oe]=m[0],y[Oe+1]=m[1];return y}}(),U9=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 rs(U)},y.prototype.queryRadius=function(U){var $=U;return Ad("circle-radius",this,$)+Ad("circle-stroke-width",this,$)+Cv(this.paint.get("circle-translate"))},y.prototype.queryIntersectsFeature=function(U,$,ae,he,Oe,rt,gt,Mt){for(var or=Kv(U,this.paint.get("circle-translate"),this.paint.get("circle-translate-anchor"),rt.angle,gt),_r=this.paint.get("circle-radius").evaluate($,ae),vr=this.paint.get("circle-stroke-width").evaluate($,ae),Fr=_r+vr,ai=this.paint.get("circle-pitch-alignment")==="map",Gi=ai?or:yk(or,Mt),Ti=ai?Fr*gt:Fr,bn=0,rn=he;bn<rn.length;bn+=1)for(var xn=rn[bn],Dn=0,Zn=xn;Dn<Zn.length;Dn+=1){var ga=Zn[Dn],ha=ai?ga:mk(ga,Mt),eo=Ti,za=ly([],[ga.x,ga.y,0,1],Mt);if(this.paint.get("circle-pitch-scale")==="viewport"&&this.paint.get("circle-pitch-alignment")==="map"?eo*=za[3]/rt.cameraToCenterDistance:this.paint.get("circle-pitch-scale")==="map"&&this.paint.get("circle-pitch-alignment")==="viewport"&&(eo*=rt.cameraToCenterDistance/za[3]),Zo(Gi,ha,eo))return!0}return!1},y}(mi);function mk(m,y){var I=ly([],[m.x,m.y,0,1],y);return new u(I[0]/I[3],I[1]/I[3])}function yk(m,y){return m.map(function(I){return mk(I,y)})}var iS=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y}(rs);X("HeatmapBucket",iS,{omit:["layers"]});function Md(m,y,I,U){var $=y.width,ae=y.height;if(!U)U=new Uint8Array($*ae*I);else if(U instanceof Uint8ClampedArray)U=new Uint8Array(U.buffer);else if(U.length!==$*ae*I)throw new RangeError("mismatched image size");return m.width=$,m.height=ae,m.data=U,m}function Cw(m,y,I){var U=y.width,$=y.height;if(!(U===m.width&&$===m.height)){var ae=Md({},{width:U,height:$},I);kw(m,ae,{x:0,y:0},{x:0,y:0},{width:Math.min(m.width,U),height:Math.min(m.height,$)},I),m.width=U,m.height=$,m.data=ae.data}}function kw(m,y,I,U,$,ae){if($.width===0||$.height===0)return y;if($.width>m.width||$.height>m.height||I.x>m.width-$.width||I.y>m.height-$.height)throw new RangeError("out of range source coordinates for image copy");if($.width>y.width||$.height>y.height||U.x>y.width-$.width||U.y>y.height-$.height)throw new RangeError("out of range destination coordinates for image copy");for(var he=m.data,Oe=y.data,rt=0;rt<$.height;rt++)for(var gt=((I.y+rt)*m.width+I.x)*ae,Mt=((U.y+rt)*y.width+U.x)*ae,or=0;or<$.width*ae;or++)Oe[Mt+or]=he[gt+or];return y}var Pv=function(y,I){Md(this,y,1,I)};Pv.prototype.resize=function(y){Cw(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,$,ae){kw(y,I,U,$,ae,1)};var wh=function(y,I){Md(this,y,4,I)};wh.prototype.resize=function(y){Cw(this,y,4)},wh.prototype.replace=function(y,I){I?this.data.set(y):y instanceof Uint8ClampedArray?this.data=new Uint8Array(y.buffer):this.data=y},wh.prototype.clone=function(){return new wh({width:this.width,height:this.height},new Uint8Array(this.data))},wh.copy=function(y,I,U,$,ae){kw(y,I,U,$,ae,4)},X("AlphaImage",Pv),X("RGBAImage",wh);var Gx=new Br({"heatmap-radius":new xt(Fn.paint_heatmap["heatmap-radius"]),"heatmap-weight":new xt(Fn.paint_heatmap["heatmap-weight"]),"heatmap-intensity":new Ee(Fn.paint_heatmap["heatmap-intensity"]),"heatmap-color":new Hr(Fn.paint_heatmap["heatmap-color"]),"heatmap-opacity":new Ee(Fn.paint_heatmap["heatmap-opacity"])}),S1={paint:Gx};function Hx(m){var y={},I=m.resolution||256,U=m.clips?m.clips.length:1,$=m.image||new wh({width:I,height:U}),ae=function(bn,rn,xn){y[m.evaluationKey]=xn;var Dn=m.expression.evaluate(y);$.data[bn+rn+0]=Math.floor(Dn.r*255/Dn.a),$.data[bn+rn+1]=Math.floor(Dn.g*255/Dn.a),$.data[bn+rn+2]=Math.floor(Dn.b*255/Dn.a),$.data[bn+rn+3]=Math.floor(Dn.a*255)};if(m.clips)for(var gt=0,Mt=0;gt<U;++gt,Mt+=I*4)for(var or=0,_r=0;or<I;or++,_r+=4){var vr=or/(I-1),Fr=m.clips[gt],ai=Fr.start,Gi=Fr.end,Ti=ai*(1-vr)+Gi*vr;ae(Mt,_r,Ti)}else for(var he=0,Oe=0;he<I;he++,Oe+=4){var rt=he/(I-1);ae(0,Oe,rt)}return $}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 iS(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=Hx({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}(mi),V9=new Br({"hillshade-illumination-direction":new Ee(Fn.paint_hillshade["hillshade-illumination-direction"]),"hillshade-illumination-anchor":new Ee(Fn.paint_hillshade["hillshade-illumination-anchor"]),"hillshade-exaggeration":new Ee(Fn.paint_hillshade["hillshade-exaggeration"]),"hillshade-shadow-color":new Ee(Fn.paint_hillshade["hillshade-shadow-color"]),"hillshade-highlight-color":new Ee(Fn.paint_hillshade["hillshade-highlight-color"]),"hillshade-accent-color":new Ee(Fn.paint_hillshade["hillshade-accent-color"])}),G9={paint:V9},_k=function(m){function y(I){m.call(this,I,G9)}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}(mi),xk=ji([{name:"a_pos",components:2,type:"Int16"}],4),H9=xk.members,Pw=M1,bk=M1;function M1(m,y,I){I=I||2;var U=y&&y.length,$=U?y[0]*I:m.length,ae=Iw(m,0,$,I,!0),he=[];if(!ae||ae.next===ae.prev)return he;var Oe,rt,gt,Mt,or,_r,vr;if(U&&(ae=lm(m,y,ae,I)),m.length>80*I){Oe=gt=m[0],rt=Mt=m[1];for(var Fr=I;Fr<$;Fr+=I)or=m[Fr],_r=m[Fr+1],or<Oe&&(Oe=or),_r<rt&&(rt=_r),or>gt&&(gt=or),_r>Mt&&(Mt=_r);vr=Math.max(gt-Oe,Mt-rt),vr=vr!==0?1/vr:0}return jx(ae,he,I,Oe,rt,vr),he}function Iw(m,y,I,U,$){var ae,he;if($===cS(m,y,I,U)>0)for(ae=y;ae<I;ae+=U)he=Mk(ae,m[ae],m[ae+1],he);else for(ae=I-U;ae>=y;ae-=U)he=Mk(ae,m[ae],m[ae+1],he);return he&&Xx(he,he.next)&&(Kx(he),he=he.next),he}function sm(m,y){if(!m)return m;y||(y=m);var I=m,U;do if(U=!1,!I.steiner&&(Xx(I,I.next)||wf(I.prev,I,I.next)===0)){if(Kx(I),I=y=I.prev,I===I.next)break;U=!0}else I=I.next;while(U||I!==y);return y}function jx(m,y,I,U,$,ae,he){if(m){!he&&ae&&Rw(m,U,$,ae);for(var Oe=m,rt,gt;m.prev!==m.next;){if(rt=m.prev,gt=m.next,ae?Tk(m,U,$,ae):wk(m)){y.push(rt.i/I),y.push(m.i/I),y.push(gt.i/I),Kx(m),m=gt.next,Oe=gt.next;continue}if(m=gt,m===Oe){he?he===1?(m=Wx(sm(m),y,I),jx(m,y,I,U,$,ae,2)):he===2&&v0(m,y,I,U,$,ae):jx(sm(m),y,I,U,$,ae,1);break}}}}function wk(m){var y=m.prev,I=m,U=m.next;if(wf(y,I,U)>=0)return!1;for(var $=m.next.next;$!==m.prev;){if(um(y.x,y.y,I.x,I.y,U.x,U.y,$.x,$.y)&&wf($.prev,$,$.next)>=0)return!1;$=$.next}return!0}function Tk(m,y,I,U){var $=m.prev,ae=m,he=m.next;if(wf($,ae,he)>=0)return!1;for(var Oe=$.x<ae.x?$.x<he.x?$.x:he.x:ae.x<he.x?ae.x:he.x,rt=$.y<ae.y?$.y<he.y?$.y:he.y:ae.y<he.y?ae.y:he.y,gt=$.x>ae.x?$.x>he.x?$.x:he.x:ae.x>he.x?ae.x:he.x,Mt=$.y>ae.y?$.y>he.y?$.y:he.y:ae.y>he.y?ae.y:he.y,or=oS(Oe,rt,y,I,U),_r=oS(gt,Mt,y,I,U),vr=m.prevZ,Fr=m.nextZ;vr&&vr.z>=or&&Fr&&Fr.z<=_r;){if(vr!==m.prev&&vr!==m.next&&um($.x,$.y,ae.x,ae.y,he.x,he.y,vr.x,vr.y)&&wf(vr.prev,vr,vr.next)>=0||(vr=vr.prevZ,Fr!==m.prev&&Fr!==m.next&&um($.x,$.y,ae.x,ae.y,he.x,he.y,Fr.x,Fr.y)&&wf(Fr.prev,Fr,Fr.next)>=0))return!1;Fr=Fr.nextZ}for(;vr&&vr.z>=or;){if(vr!==m.prev&&vr!==m.next&&um($.x,$.y,ae.x,ae.y,he.x,he.y,vr.x,vr.y)&&wf(vr.prev,vr,vr.next)>=0)return!1;vr=vr.prevZ}for(;Fr&&Fr.z<=_r;){if(Fr!==m.prev&&Fr!==m.next&&um($.x,$.y,ae.x,ae.y,he.x,he.y,Fr.x,Fr.y)&&wf(Fr.prev,Fr,Fr.next)>=0)return!1;Fr=Fr.nextZ}return!0}function Wx(m,y,I){var U=m;do{var $=U.prev,ae=U.next.next;!Xx($,ae)&&Dw($,U,U.next,ae)&&Yx($,ae)&&Yx(ae,$)&&(y.push($.i/I),y.push(U.i/I),y.push(ae.i/I),Kx(U),Kx(U.next),U=m=ae),U=U.next}while(U!==m);return sm(U)}function v0(m,y,I,U,$,ae){var he=m;do{for(var Oe=he.next.next;Oe!==he.prev;){if(he.i!==Oe.i&&E1(he,Oe)){var rt=lS(he,Oe);he=sm(he,he.next),rt=sm(rt,rt.next),jx(he,y,I,U,$,ae),jx(rt,y,I,U,$,ae);return}Oe=Oe.next}he=he.next}while(he!==m)}function lm(m,y,I,U){var $=[],ae,he,Oe,rt,gt;for(ae=0,he=y.length;ae<he;ae++)Oe=y[ae]*U,rt=ae<he-1?y[ae+1]*U:m.length,gt=Iw(m,Oe,rt,U,!1),gt===gt.next&&(gt.steiner=!0),$.push(sS(gt));for($.sort(Ak),ae=0;ae<$.length;ae++)nS($[ae],I),I=sm(I,I.next);return I}function Ak(m,y){return m.x-y.x}function nS(m,y){if(y=j9(m,y),y){var I=lS(y,m);sm(y,y.next),sm(I,I.next)}}function j9(m,y){var I=y,U=m.x,$=m.y,ae=-1/0,he;do{if($<=I.y&&$>=I.next.y&&I.next.y!==I.y){var Oe=I.x+($-I.y)*(I.next.x-I.x)/(I.next.y-I.y);if(Oe<=U&&Oe>ae){if(ae=Oe,Oe===U){if($===I.y)return I;if($===I.next.y)return I.next}he=I.x<I.next.x?I:I.next}}I=I.next}while(I!==y);if(!he)return null;if(U===ae)return he;var rt=he,gt=he.x,Mt=he.y,or=1/0,_r;I=he;do U>=I.x&&I.x>=gt&&U!==I.x&&um($<Mt?U:ae,$,gt,Mt,$<Mt?ae:U,$,I.x,I.y)&&(_r=Math.abs($-I.y)/(U-I.x),Yx(I,m)&&(_r<or||_r===or&&(I.x>he.x||I.x===he.x&&W9(he,I)))&&(he=I,or=_r)),I=I.next;while(I!==rt);return he}function W9(m,y){return wf(m.prev,m,y.prev)<0&&wf(y.next,m,m.next)<0}function Rw(m,y,I,U){var $=m;do $.z===null&&($.z=oS($.x,$.y,y,I,U)),$.prevZ=$.prev,$.nextZ=$.next,$=$.next;while($!==m);$.prevZ.nextZ=null,$.prevZ=null,aS($)}function aS(m){var y,I,U,$,ae,he,Oe,rt,gt=1;do{for(I=m,m=null,ae=null,he=0;I;){for(he++,U=I,Oe=0,y=0;y<gt&&(Oe++,U=U.nextZ,!!U);y++);for(rt=gt;Oe>0||rt>0&&U;)Oe!==0&&(rt===0||!U||I.z<=U.z)?($=I,I=I.nextZ,Oe--):($=U,U=U.nextZ,rt--),ae?ae.nextZ=$:m=$,$.prevZ=ae,ae=$;I=U}ae.nextZ=null,gt*=2}while(he>1);return m}function oS(m,y,I,U,$){return m=32767*(m-I)*$,y=32767*(y-U)*$,m=(m|m<<8)&16711935,m=(m|m<<4)&252645135,m=(m|m<<2)&858993459,m=(m|m<<1)&1431655765,y=(y|y<<8)&16711935,y=(y|y<<4)&252645135,y=(y|y<<2)&858993459,y=(y|y<<1)&1431655765,m|y<<1}function sS(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,$,ae,he,Oe){return($-he)*(y-Oe)-(m-he)*(ae-Oe)>=0&&(m-he)*(U-Oe)-(I-he)*(y-Oe)>=0&&(I-he)*(ae-Oe)-($-he)*(U-Oe)>=0}function E1(m,y){return m.next.i!==y.i&&m.prev.i!==y.i&&!Sk(m,y)&&(Yx(m,y)&&Yx(y,m)&&X9(m,y)&&(wf(m.prev,m,y.prev)||wf(m,y.prev,y))||Xx(m,y)&&wf(m.prev,m,m.next)>0&&wf(y.prev,y,y.next)>0)}function wf(m,y,I){return(y.y-m.y)*(I.x-y.x)-(y.x-m.x)*(I.y-y.y)}function Xx(m,y){return m.x===y.x&&m.y===y.y}function Dw(m,y,I,U){var $=uy(wf(m,y,I)),ae=uy(wf(m,y,U)),he=uy(wf(I,U,m)),Oe=uy(wf(I,U,y));return!!($!==ae&&he!==Oe||$===0&&Zx(m,I,y)||ae===0&&Zx(m,U,y)||he===0&&Zx(I,m,U)||Oe===0&&Zx(I,y,U))}function Zx(m,y,I){return y.x<=Math.max(m.x,I.x)&&y.x>=Math.min(m.x,I.x)&&y.y<=Math.max(m.y,I.y)&&y.y>=Math.min(m.y,I.y)}function uy(m){return m>0?1:m<0?-1:0}function Sk(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 wf(m.prev,m,m.next)<0?wf(m,y,m.next)>=0&&wf(m,m.prev,y)>=0:wf(m,y,m.prev)<0||wf(m,m.next,y)<0}function X9(m,y){var I=m,U=!1,$=(m.x+y.x)/2,ae=(m.y+y.y)/2;do I.y>ae!=I.next.y>ae&&I.next.y!==I.y&&$<(I.next.x-I.x)*(ae-I.y)/(I.next.y-I.y)+I.x&&(U=!U),I=I.next;while(I!==m);return U}function lS(m,y){var I=new uS(m.i,m.x,m.y),U=new uS(y.i,y.x,y.y),$=m.next,ae=y.prev;return m.next=y,y.prev=m,I.next=$,$.prev=I,U.next=I,I.prev=U,ae.next=U,U.prev=ae,U}function Mk(m,y,I,U){var $=new uS(m,y,I);return U?($.next=U.next,$.prev=U,U.next.prev=$,U.next=$):($.prev=$,$.next=$),$}function Kx(m){m.next.prev=m.prev,m.prev.next=m.next,m.prevZ&&(m.prevZ.nextZ=m.nextZ),m.nextZ&&(m.nextZ.prevZ=m.prevZ)}function uS(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 $=y&&y.length,ae=$?y[0]*I:m.length,he=Math.abs(cS(m,0,ae,I));if($)for(var Oe=0,rt=y.length;Oe<rt;Oe++){var gt=y[Oe]*I,Mt=Oe<rt-1?y[Oe+1]*I:m.length;he-=Math.abs(cS(m,gt,Mt,I))}var or=0;for(Oe=0;Oe<U.length;Oe+=3){var _r=U[Oe]*I,vr=U[Oe+1]*I,Fr=U[Oe+2]*I;or+=Math.abs((m[_r]-m[Fr])*(m[vr+1]-m[_r+1])-(m[_r]-m[vr])*(m[Fr+1]-m[_r+1]))}return he===0&&or===0?0:Math.abs((or-he)/he)};function cS(m,y,I,U){for(var $=0,ae=y,he=I-U;ae<I;ae+=U)$+=(m[he]-m[ae])*(m[ae+1]+m[he+1]),he=ae;return $}M1.flatten=function(m){for(var y=m[0][0].length,I={vertices:[],holes:[],dimensions:y},U=0,$=0;$<m.length;$++){for(var ae=0;ae<m[$].length;ae++)for(var he=0;he<y;he++)I.vertices.push(m[$][ae][he]);$>0&&(U+=m[$-1].length,I.holes.push(U))}return I},Pw.default=bk;function fS(m,y,I,U,$){dg(m,y,I||0,U||m.length-1,$||Ek)}function dg(m,y,I,U,$){for(;U>I;){if(U-I>600){var ae=U-I+1,he=y-I+1,Oe=Math.log(ae),rt=.5*Math.exp(2*Oe/3),gt=.5*Math.sqrt(Oe*rt*(ae-rt)/ae)*(he-ae/2<0?-1:1),Mt=Math.max(I,Math.floor(y-he*rt/ae+gt)),or=Math.min(U,Math.floor(y+(ae-he)*rt/ae+gt));dg(m,y,Mt,or,$)}var _r=m[y],vr=I,Fr=U;for(C1(m,I,y),$(m[U],_r)>0&&C1(m,I,U);vr<Fr;){for(C1(m,vr,Fr),vr++,Fr--;$(m[vr],_r)<0;)vr++;for(;$(m[Fr],_r)>0;)Fr--}$(m[I],_r)===0?C1(m,I,Fr):(Fr++,C1(m,Fr,U)),Fr<=y&&(I=Fr+1),y<=Fr&&(U=Fr-1)}}function C1(m,y,I){var U=m[y];m[y]=m[I],m[I]=U}function Ek(m,y){return m<y?-1:m>y?1:0}function Fw(m,y){var I=m.length;if(I<=1)return[m];for(var U=[],$,ae,he=0;he<I;he++){var Oe=_e(m[he]);Oe!==0&&(m[he].area=Math.abs(Oe),ae===void 0&&(ae=Oe<0),ae===Oe<0?($&&U.push($),$=[m[he]]):$.push(m[he]))}if($&&U.push($),y>1)for(var rt=0;rt<U.length;rt++)U[rt].length<=y||(fS(U[rt],y,1,U[rt].length-1,Ck),U[rt]=U[rt].slice(0,y));return U}function Ck(m,y){return y.area-m.area}function zw(m,y,I){for(var U=I.patternDependencies,$=!1,ae=0,he=y;ae<he.length;ae+=1){var Oe=he[ae],rt=Oe.paint.get(m+"-pattern");rt.isConstant()||($=!0);var gt=rt.constantOr(null);gt&&($=!0,U[gt.to]=!0,U[gt.from]=!0)}return $}function Jx(m,y,I,U,$){for(var ae=$.patternDependencies,he=0,Oe=y;he<Oe.length;he+=1){var rt=Oe[he],gt=rt.paint.get(m+"-pattern"),Mt=gt.value;if(Mt.kind!=="constant"){var or=Mt.evaluate({zoom:U-1},I,{},$.availableImages),_r=Mt.evaluate({zoom:U},I,{},$.availableImages),vr=Mt.evaluate({zoom:U+1},I,{},$.availableImages);or=or&&or.name?or.name:or,_r=_r&&_r.name?_r.name:_r,vr=vr&&vr.name?vr.name:vr,ae[or]=!0,ae[_r]=!0,ae[vr]=!0,I.patterns[rt.id]={min:or,mid:_r,max:vr}}}return I}var $x=500,pp=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 Yr,this.indexArray=new vn,this.indexArray2=new oa,this.programConfigurations=new hi(y.layers,y.zoom),this.segments=new io,this.segments2=new io,this.stateDependentLayerIds=this.layers.filter(function(I){return I.isStateDependent()}).map(function(I){return I.id})};pp.prototype.populate=function(y,I,U){this.hasPattern=zw("fill",this.layers,I);for(var $=this.layers[0].layout.get("fill-sort-key"),ae=[],he=0,Oe=y;he<Oe.length;he+=1){var rt=Oe[he],gt=rt.feature,Mt=rt.id,or=rt.index,_r=rt.sourceLayerIndex,vr=this.layers[0]._featureFilter.needGeometry,Fr=Ja(gt,vr);if(this.layers[0]._featureFilter.filter(new Gn(this.zoom),Fr,U)){var ai=$?$.evaluate(Fr,{},U,I.availableImages):void 0,Gi={id:Mt,properties:gt.properties,type:gt.type,sourceLayerIndex:_r,index:or,geometry:vr?Fr.geometry:On(gt),patterns:{},sortKey:ai};ae.push(Gi)}}$&&ae.sort(function(za,Za){return za.sortKey-Za.sortKey});for(var Ti=0,bn=ae;Ti<bn.length;Ti+=1){var rn=bn[Ti],xn=rn,Dn=xn.geometry,Zn=xn.index,ga=xn.sourceLayerIndex;if(this.hasPattern){var ha=Jx("fill",this.layers,rn,this.zoom,I);this.patternFeatures.push(ha)}else this.addFeature(rn,Dn,Zn,U,{});var eo=y[Zn].feature;I.featureIndex.insert(eo,Dn,Zn,ga,this.index)}},pp.prototype.update=function(y,I,U){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(y,I,this.stateDependentLayers,U)},pp.prototype.addFeatures=function(y,I,U){for(var $=0,ae=this.patternFeatures;$<ae.length;$+=1){var he=ae[$];this.addFeature(he,he.geometry,he.index,I,U)}},pp.prototype.isEmpty=function(){return this.layoutVertexArray.length===0},pp.prototype.uploadPending=function(){return!this.uploaded||this.programConfigurations.needsUpload},pp.prototype.upload=function(y){this.uploaded||(this.layoutVertexBuffer=y.createVertexBuffer(this.layoutVertexArray,H9),this.indexBuffer=y.createIndexBuffer(this.indexArray),this.indexBuffer2=y.createIndexBuffer(this.indexArray2)),this.programConfigurations.upload(y),this.uploaded=!0},pp.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.indexBuffer2.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.segments2.destroy())},pp.prototype.addFeature=function(y,I,U,$,ae){for(var he=0,Oe=Fw(I,$x);he<Oe.length;he+=1){for(var rt=Oe[he],gt=0,Mt=0,or=rt;Mt<or.length;Mt+=1){var _r=or[Mt];gt+=_r.length}for(var vr=this.segments.prepareSegment(gt,this.layoutVertexArray,this.indexArray),Fr=vr.vertexLength,ai=[],Gi=[],Ti=0,bn=rt;Ti<bn.length;Ti+=1){var rn=bn[Ti];if(rn.length!==0){rn!==rt[0]&&Gi.push(ai.length/2);var xn=this.segments2.prepareSegment(rn.length,this.layoutVertexArray,this.indexArray2),Dn=xn.vertexLength;this.layoutVertexArray.emplaceBack(rn[0].x,rn[0].y),this.indexArray2.emplaceBack(Dn+rn.length-1,Dn),ai.push(rn[0].x),ai.push(rn[0].y);for(var Zn=1;Zn<rn.length;Zn++)this.layoutVertexArray.emplaceBack(rn[Zn].x,rn[Zn].y),this.indexArray2.emplaceBack(Dn+Zn-1,Dn+Zn),ai.push(rn[Zn].x),ai.push(rn[Zn].y);xn.vertexLength+=rn.length,xn.primitiveLength+=rn.length}}for(var ga=Pw(ai,Gi),ha=0;ha<ga.length;ha+=3)this.indexArray.emplaceBack(Fr+ga[ha],Fr+ga[ha+1],Fr+ga[ha+2]);vr.vertexLength+=gt,vr.primitiveLength+=ga.length/3}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,y,U,ae,$)},X("FillBucket",pp,{omit:["layers","patternFeatures"]});var hS=new Br({"fill-sort-key":new xt(Fn.layout_fill["fill-sort-key"])}),kk=new Br({"fill-antialias":new Ee(Fn.paint_fill["fill-antialias"]),"fill-opacity":new xt(Fn.paint_fill["fill-opacity"]),"fill-color":new xt(Fn.paint_fill["fill-color"]),"fill-outline-color":new xt(Fn.paint_fill["fill-outline-color"]),"fill-translate":new Ee(Fn.paint_fill["fill-translate"]),"fill-translate-anchor":new Ee(Fn.paint_fill["fill-translate-anchor"]),"fill-pattern":new zt(Fn.paint_fill["fill-pattern"])}),Jv={paint:kk,layout:hS},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,$){m.prototype.recalculate.call(this,U,$);var ae=this.paint._values["fill-outline-color"];ae.value.kind==="constant"&&ae.value.value===void 0&&(this.paint._values["fill-outline-color"]=this.paint._values["fill-color"])},y.prototype.createBucket=function(U){return new pp(U)},y.prototype.queryRadius=function(){return Cv(this.paint.get("fill-translate"))},y.prototype.queryIntersectsFeature=function(U,$,ae,he,Oe,rt,gt){var Mt=Kv(U,this.paint.get("fill-translate"),this.paint.get("fill-translate-anchor"),rt.angle,gt);return ys(Mt,he)},y.prototype.isTileClipped=function(){return!0},y}(mi),Lk=ji([{name:"a_pos",components:2,type:"Int16"},{name:"a_normal_ed",components:4,type:"Int16"}],4),Pk=Lk.members,dS=cy;function cy(m,y,I,U,$){this.properties={},this.extent=I,this.type=0,this._pbf=m,this._geometry=-1,this._keys=U,this._values=$,m.readFields(Ik,this,y)}function Ik(m,y,I){m==1?y.id=I.readVarint():m==2?Rk(I,y):m==3?y.type=I.readVarint():m==4&&(y._geometry=I.pos)}function Rk(m,y){for(var I=m.readVarint()+m.pos;m.pos<I;){var U=y._keys[m.readVarint()],$=y._values[m.readVarint()];y.properties[U]=$}}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,$=0,ae=0,he=[],Oe;m.pos<y;){if(U<=0){var rt=m.readVarint();I=rt&7,U=rt>>3}if(U--,I===1||I===2)$+=m.readSVarint(),ae+=m.readSVarint(),I===1&&(Oe&&he.push(Oe),Oe=[]),Oe.push(new u($,ae));else if(I===7)Oe&&Oe.push(Oe[0].clone());else throw new Error("unknown command "+I)}return Oe&&he.push(Oe),he},cy.prototype.bbox=function(){var m=this._pbf;m.pos=this._geometry;for(var y=m.readVarint()+m.pos,I=1,U=0,$=0,ae=0,he=1/0,Oe=-1/0,rt=1/0,gt=-1/0;m.pos<y;){if(U<=0){var Mt=m.readVarint();I=Mt&7,U=Mt>>3}if(U--,I===1||I===2)$+=m.readSVarint(),ae+=m.readSVarint(),$<he&&(he=$),$>Oe&&(Oe=$),ae<rt&&(rt=ae),ae>gt&&(gt=ae);else if(I!==7)throw new Error("unknown command "+I)}return[he,rt,Oe,gt]},cy.prototype.toGeoJSON=function(m,y,I){var U=this.extent*Math.pow(2,I),$=this.extent*m,ae=this.extent*y,he=this.loadGeometry(),Oe=cy.types[this.type],rt,gt;function Mt(vr){for(var Fr=0;Fr<vr.length;Fr++){var ai=vr[Fr],Gi=180-(ai.y+ae)*360/U;vr[Fr]=[(ai.x+$)*360/U-180,360/Math.PI*Math.atan(Math.exp(Gi*Math.PI/180))-90]}}switch(this.type){case 1:var or=[];for(rt=0;rt<he.length;rt++)or[rt]=he[rt][0];he=or,Mt(he);break;case 2:for(rt=0;rt<he.length;rt++)Mt(he[rt]);break;case 3:for(he=Z9(he),rt=0;rt<he.length;rt++)for(gt=0;gt<he[rt].length;gt++)Mt(he[rt][gt]);break}he.length===1?he=he[0]:Oe="Multi"+Oe;var _r={type:"Feature",geometry:{type:Oe,coordinates:he},properties:this.properties};return"id"in this&&(_r.id=this.id),_r};function Z9(m){var y=m.length;if(y<=1)return[m];for(var I=[],U,$,ae=0;ae<y;ae++){var he=Dk(m[ae]);he!==0&&($===void 0&&($=he<0),$===he<0?(U&&I.push(U),U=[m[ae]]):U.push(m[ae]))}return U&&I.push(U),I}function Dk(m){for(var y=0,I=0,U=m.length,$=U-1,ae,he;I<U;$=I++)ae=m[I],he=m[$],y+=(he.x-ae.x)*(ae.y+he.y);return y}var vg=vS;function vS(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(Fk,this,y),this.length=this._features.length}function Fk(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(zk(I))}function zk(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}vS.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 dS(this._pbf,y,this.extent,this._keys,this._values)};var Ok=Y9;function Y9(m,y){this.layers=m.readFields(K9,{},y)}function K9(m,y,I){if(m===3){var U=new vg(I,I.readVarint()+I.pos);U.length&&(y[U.name]=U)}}var qk=Ok,k1=dS,Bk=vg,pg={VectorTile:qk,VectorTileFeature:k1,VectorTileLayer:Bk},Nk=pg.VectorTileFeature.types,Ow=500,L1=Math.pow(2,13);function cm(m,y,I,U,$,ae,he,Oe){m.emplaceBack(y,I,Math.floor(U*L1)*2+he,$*L1*2,ae*L1*2,Math.round(Oe))}var Vp=function(y){this.zoom=y.zoom,this.overscaling=y.overscaling,this.layers=y.layers,this.layerIds=this.layers.map(function(I){return I.id}),this.index=y.index,this.hasPattern=!1,this.layoutVertexArray=new Ii,this.indexArray=new vn,this.programConfigurations=new hi(y.layers,y.zoom),this.segments=new io,this.stateDependentLayerIds=this.layers.filter(function(I){return I.isStateDependent()}).map(function(I){return I.id})};Vp.prototype.populate=function(y,I,U){this.features=[],this.hasPattern=zw("fill-extrusion",this.layers,I);for(var $=0,ae=y;$<ae.length;$+=1){var he=ae[$],Oe=he.feature,rt=he.id,gt=he.index,Mt=he.sourceLayerIndex,or=this.layers[0]._featureFilter.needGeometry,_r=Ja(Oe,or);if(this.layers[0]._featureFilter.filter(new Gn(this.zoom),_r,U)){var vr={id:rt,sourceLayerIndex:Mt,index:gt,geometry:or?_r.geometry:On(Oe),properties:Oe.properties,type:Oe.type,patterns:{}};this.hasPattern?this.features.push(Jx("fill-extrusion",this.layers,vr,this.zoom,I)):this.addFeature(vr,vr.geometry,gt,U,{}),I.featureIndex.insert(Oe,vr.geometry,gt,Mt,this.index,!0)}}},Vp.prototype.addFeatures=function(y,I,U){for(var $=0,ae=this.features;$<ae.length;$+=1){var he=ae[$],Oe=he.geometry;this.addFeature(he,Oe,he.index,I,U)}},Vp.prototype.update=function(y,I,U){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(y,I,this.stateDependentLayers,U)},Vp.prototype.isEmpty=function(){return this.layoutVertexArray.length===0},Vp.prototype.uploadPending=function(){return!this.uploaded||this.programConfigurations.needsUpload},Vp.prototype.upload=function(y){this.uploaded||(this.layoutVertexBuffer=y.createVertexBuffer(this.layoutVertexArray,Pk),this.indexBuffer=y.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(y),this.uploaded=!0},Vp.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())},Vp.prototype.addFeature=function(y,I,U,$,ae){for(var he=0,Oe=Fw(I,Ow);he<Oe.length;he+=1){for(var rt=Oe[he],gt=0,Mt=0,or=rt;Mt<or.length;Mt+=1){var _r=or[Mt];gt+=_r.length}for(var vr=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray),Fr=0,ai=rt;Fr<ai.length;Fr+=1){var Gi=ai[Fr];if(Gi.length!==0&&!$9(Gi))for(var Ti=0,bn=0;bn<Gi.length;bn++){var rn=Gi[bn];if(bn>=1){var xn=Gi[bn-1];if(!J9(rn,xn)){vr.vertexLength+4>io.MAX_VERTEX_ARRAY_LENGTH&&(vr=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray));var Dn=rn.sub(xn)._perp()._unit(),Zn=xn.dist(rn);Ti+Zn>32768&&(Ti=0),cm(this.layoutVertexArray,rn.x,rn.y,Dn.x,Dn.y,0,0,Ti),cm(this.layoutVertexArray,rn.x,rn.y,Dn.x,Dn.y,0,1,Ti),Ti+=Zn,cm(this.layoutVertexArray,xn.x,xn.y,Dn.x,Dn.y,0,0,Ti),cm(this.layoutVertexArray,xn.x,xn.y,Dn.x,Dn.y,0,1,Ti);var ga=vr.vertexLength;this.indexArray.emplaceBack(ga,ga+2,ga+1),this.indexArray.emplaceBack(ga+1,ga+2,ga+3),vr.vertexLength+=4,vr.primitiveLength+=2}}}}if(vr.vertexLength+gt>io.MAX_VERTEX_ARRAY_LENGTH&&(vr=this.segments.prepareSegment(gt,this.layoutVertexArray,this.indexArray)),Nk[y.type]==="Polygon"){for(var ha=[],eo=[],za=vr.vertexLength,Za=0,Ko=rt;Za<Ko.length;Za+=1){var to=Ko[Za];if(to.length!==0){to!==rt[0]&&eo.push(ha.length/2);for(var ao=0;ao<to.length;ao++){var xs=to[ao];cm(this.layoutVertexArray,xs.x,xs.y,0,0,1,1,0),ha.push(xs.x),ha.push(xs.y)}}}for(var jo=Pw(ha,eo),El=0;El<jo.length;El+=3)this.indexArray.emplaceBack(za+jo[El],za+jo[El+2],za+jo[El+1]);vr.primitiveLength+=jo.length/3,vr.vertexLength+=gt}}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,y,U,ae,$)},X("FillExtrusionBucket",Vp,{omit:["layers","features"]});function J9(m,y){return m.x===y.x&&(m.x<0||m.x>Ci)||m.y===y.y&&(m.y<0||m.y>Ci)}function $9(m){return m.every(function(y){return y.x<0})||m.every(function(y){return y.x>Ci})||m.every(function(y){return y.y<0})||m.every(function(y){return y.y>Ci})}var P1=new Br({"fill-extrusion-opacity":new Ee(Fn["paint_fill-extrusion"]["fill-extrusion-opacity"]),"fill-extrusion-color":new xt(Fn["paint_fill-extrusion"]["fill-extrusion-color"]),"fill-extrusion-translate":new Ee(Fn["paint_fill-extrusion"]["fill-extrusion-translate"]),"fill-extrusion-translate-anchor":new Ee(Fn["paint_fill-extrusion"]["fill-extrusion-translate-anchor"]),"fill-extrusion-pattern":new zt(Fn["paint_fill-extrusion"]["fill-extrusion-pattern"]),"fill-extrusion-height":new xt(Fn["paint_fill-extrusion"]["fill-extrusion-height"]),"fill-extrusion-base":new xt(Fn["paint_fill-extrusion"]["fill-extrusion-base"]),"fill-extrusion-vertical-gradient":new Ee(Fn["paint_fill-extrusion"]["fill-extrusion-vertical-gradient"])}),sd={paint:P1},fm=function(m){function y(I){m.call(this,I,sd)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.createBucket=function(U){return new Vp(U)},y.prototype.queryRadius=function(){return Cv(this.paint.get("fill-extrusion-translate"))},y.prototype.is3D=function(){return!0},y.prototype.queryIntersectsFeature=function(U,$,ae,he,Oe,rt,gt,Mt){var or=Kv(U,this.paint.get("fill-extrusion-translate"),this.paint.get("fill-extrusion-translate-anchor"),rt.angle,gt),_r=this.paint.get("fill-extrusion-height").evaluate($,ae),vr=this.paint.get("fill-extrusion-base").evaluate($,ae),Fr=Q9(or,Mt,rt,0),ai=gS(he,vr,_r,Mt),Gi=ai[0],Ti=ai[1];return Uk(Gi,Ti,Fr)},y}(mi);function fy(m,y){return m.x*y.x+m.y*y.y}function pS(m,y){if(m.length===1){for(var I=0,U=y[I++],$;!$||U.equals($);)if($=y[I++],!$)return 1/0;for(;I<y.length;I++){var ae=y[I],he=m[0],Oe=$.sub(U),rt=ae.sub(U),gt=he.sub(U),Mt=fy(Oe,Oe),or=fy(Oe,rt),_r=fy(rt,rt),vr=fy(gt,Oe),Fr=fy(gt,rt),ai=Mt*_r-or*or,Gi=(_r*vr-or*Fr)/ai,Ti=(Mt*Fr-or*vr)/ai,bn=1-Gi-Ti,rn=U.z*bn+$.z*Gi+ae.z*Ti;if(isFinite(rn))return rn}return 1/0}else{for(var xn=1/0,Dn=0,Zn=y;Dn<Zn.length;Dn+=1){var ga=Zn[Dn];xn=Math.min(xn,ga.z)}return xn}}function Uk(m,y,I){var U=1/0;ys(I,y)&&(U=pS(I,y[0]));for(var $=0;$<y.length;$++)for(var ae=y[$],he=m[$],Oe=0;Oe<ae.length-1;Oe++){var rt=ae[Oe],gt=ae[Oe+1],Mt=he[Oe],or=he[Oe+1],_r=[rt,gt,or,Mt,rt];so(I,_r)&&(U=Math.min(U,pS(I,_r)))}return U===1/0?!1:U}function gS(m,y,I,U){for(var $=[],ae=[],he=U[8]*y,Oe=U[9]*y,rt=U[10]*y,gt=U[11]*y,Mt=U[8]*I,or=U[9]*I,_r=U[10]*I,vr=U[11]*I,Fr=0,ai=m;Fr<ai.length;Fr+=1){for(var Gi=ai[Fr],Ti=[],bn=[],rn=0,xn=Gi;rn<xn.length;rn+=1){var Dn=xn[rn],Zn=Dn.x,ga=Dn.y,ha=U[0]*Zn+U[4]*ga+U[12],eo=U[1]*Zn+U[5]*ga+U[13],za=U[2]*Zn+U[6]*ga+U[14],Za=U[3]*Zn+U[7]*ga+U[15],Ko=ha+he,to=eo+Oe,ao=za+rt,xs=Za+gt,jo=ha+Mt,El=eo+or,Iu=za+_r,Cl=Za+vr,kl=new u(Ko/xs,to/xs);kl.z=ao/xs,Ti.push(kl);var _l=new u(jo/Cl,El/Cl);_l.z=Iu/Cl,bn.push(_l)}$.push(Ti),ae.push(bn)}return[$,ae]}function Q9(m,y,I,U){for(var $=[],ae=0,he=m;ae<he.length;ae+=1){var Oe=he[ae],rt=[Oe.x,Oe.y,U,1];ly(rt,rt,y),$.push(new u(rt[0]/rt[3],rt[1]/rt[3]))}return $}var Vk=ji([{name:"a_pos_normal",components:2,type:"Int16"},{name:"a_data",components:4,type:"Uint8"}],4),Gk=Vk.members,eO=ji([{name:"a_uv_x",components:1,type:"Float32"},{name:"a_split_index",components:1,type:"Float32"}]),Hk=eO.members,mS=pg.VectorTileFeature.types,qw=63,jk=Math.cos(75/2*(Math.PI/180)),eb=15,yS=20,Wk=15,Bw=1/2,tb=Math.pow(2,Wk-1)/Bw,sh=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 ci,this.layoutVertexArray2=new nn,this.indexArray=new vn,this.programConfigurations=new hi(y.layers,y.zoom),this.segments=new io,this.maxLineLength=0,this.stateDependentLayerIds=this.layers.filter(function(U){return U.isStateDependent()}).map(function(U){return U.id})};sh.prototype.populate=function(y,I,U){this.hasPattern=zw("line",this.layers,I);for(var $=this.layers[0].layout.get("line-sort-key"),ae=[],he=0,Oe=y;he<Oe.length;he+=1){var rt=Oe[he],gt=rt.feature,Mt=rt.id,or=rt.index,_r=rt.sourceLayerIndex,vr=this.layers[0]._featureFilter.needGeometry,Fr=Ja(gt,vr);if(this.layers[0]._featureFilter.filter(new Gn(this.zoom),Fr,U)){var ai=$?$.evaluate(Fr,{},U):void 0,Gi={id:Mt,properties:gt.properties,type:gt.type,sourceLayerIndex:_r,index:or,geometry:vr?Fr.geometry:On(gt),patterns:{},sortKey:ai};ae.push(Gi)}}$&&ae.sort(function(za,Za){return za.sortKey-Za.sortKey});for(var Ti=0,bn=ae;Ti<bn.length;Ti+=1){var rn=bn[Ti],xn=rn,Dn=xn.geometry,Zn=xn.index,ga=xn.sourceLayerIndex;if(this.hasPattern){var ha=Jx("line",this.layers,rn,this.zoom,I);this.patternFeatures.push(ha)}else this.addFeature(rn,Dn,Zn,U,{});var eo=y[Zn].feature;I.featureIndex.insert(eo,Dn,Zn,ga,this.index)}},sh.prototype.update=function(y,I,U){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(y,I,this.stateDependentLayers,U)},sh.prototype.addFeatures=function(y,I,U){for(var $=0,ae=this.patternFeatures;$<ae.length;$+=1){var he=ae[$];this.addFeature(he,he.geometry,he.index,I,U)}},sh.prototype.isEmpty=function(){return this.layoutVertexArray.length===0},sh.prototype.uploadPending=function(){return!this.uploaded||this.programConfigurations.needsUpload},sh.prototype.upload=function(y){this.uploaded||(this.layoutVertexArray2.length!==0&&(this.layoutVertexBuffer2=y.createVertexBuffer(this.layoutVertexArray2,Hk)),this.layoutVertexBuffer=y.createVertexBuffer(this.layoutVertexArray,Gk),this.indexBuffer=y.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(y),this.uploaded=!0},sh.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())},sh.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}}},sh.prototype.addFeature=function(y,I,U,$,ae){var he=this.layers[0].layout,Oe=he.get("line-join").evaluate(y,{}),rt=he.get("line-cap"),gt=he.get("line-miter-limit"),Mt=he.get("line-round-limit");this.lineClips=this.lineFeatureClips(y);for(var or=0,_r=I;or<_r.length;or+=1){var vr=_r[or];this.addLine(vr,y,Oe,rt,gt,Mt)}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,y,U,ae,$)},sh.prototype.addLine=function(y,I,U,$,ae,he){if(this.distance=0,this.scaledDistance=0,this.totalDistance=0,this.lineClips){this.lineClipsArray.push(this.lineClips);for(var Oe=0;Oe<y.length-1;Oe++)this.totalDistance+=y[Oe].dist(y[Oe+1]);this.updateScaledDistance(),this.maxLineLength=Math.max(this.maxLineLength,this.totalDistance)}for(var rt=mS[I.type]==="Polygon",gt=y.length;gt>=2&&y[gt-1].equals(y[gt-2]);)gt--;for(var Mt=0;Mt<gt-1&&y[Mt].equals(y[Mt+1]);)Mt++;if(!(gt<(rt?3:2))){U==="bevel"&&(ae=1.05);var or=this.overscaling<=16?eb*Ci/(512*this.overscaling):0,_r=this.segments.prepareSegment(gt*10,this.layoutVertexArray,this.indexArray),vr,Fr=void 0,ai=void 0,Gi=void 0,Ti=void 0;this.e1=this.e2=-1,rt&&(vr=y[gt-2],Ti=y[Mt].sub(vr)._unit()._perp());for(var bn=Mt;bn<gt;bn++)if(ai=bn===gt-1?rt?y[Mt+1]:void 0:y[bn+1],!(ai&&y[bn].equals(ai))){Ti&&(Gi=Ti),vr&&(Fr=vr),vr=y[bn],Ti=ai?ai.sub(vr)._unit()._perp():Gi,Gi=Gi||Ti;var rn=Gi.add(Ti);(rn.x!==0||rn.y!==0)&&rn._unit();var xn=Gi.x*Ti.x+Gi.y*Ti.y,Dn=rn.x*Ti.x+rn.y*Ti.y,Zn=Dn!==0?1/Dn:1/0,ga=2*Math.sqrt(2-2*Dn),ha=Dn<jk&&Fr&&ai,eo=Gi.x*Ti.y-Gi.y*Ti.x>0;if(ha&&bn>Mt){var za=vr.dist(Fr);if(za>2*or){var Za=vr.sub(vr.sub(Fr)._mult(or/za)._round());this.updateDistance(Fr,Za),this.addCurrentVertex(Za,Gi,0,0,_r),Fr=Za}}var Ko=Fr&&ai,to=Ko?U:rt?"butt":$;if(Ko&&to==="round"&&(Zn<he?to="miter":Zn<=2&&(to="fakeround")),to==="miter"&&Zn>ae&&(to="bevel"),to==="bevel"&&(Zn>2&&(to="flipbevel"),Zn<ae&&(to="miter")),Fr&&this.updateDistance(Fr,vr),to==="miter")rn._mult(Zn),this.addCurrentVertex(vr,rn,0,0,_r);else if(to==="flipbevel"){if(Zn>100)rn=Ti.mult(-1);else{var ao=Zn*Gi.add(Ti).mag()/Gi.sub(Ti).mag();rn._perp()._mult(ao*(eo?-1:1))}this.addCurrentVertex(vr,rn,0,0,_r),this.addCurrentVertex(vr,rn.mult(-1),0,0,_r)}else if(to==="bevel"||to==="fakeround"){var xs=-Math.sqrt(Zn*Zn-1),jo=eo?xs:0,El=eo?0:xs;if(Fr&&this.addCurrentVertex(vr,Gi,jo,El,_r),to==="fakeround")for(var Iu=Math.round(ga*180/Math.PI/yS),Cl=1;Cl<Iu;Cl++){var kl=Cl/Iu;if(kl!==.5){var _l=kl-.5,Qu=1.0904+xn*(-3.2452+xn*(3.55645-xn*1.43519)),gc=.848013+xn*(-1.06021+xn*.215638);kl=kl+kl*_l*(kl-1)*(Qu*_l*_l+gc)}var Af=Ti.sub(Gi)._mult(kl)._add(Gi)._unit()._mult(eo?-1:1);this.addHalfVertex(vr,Af.x,Af.y,!1,eo,0,_r)}ai&&this.addCurrentVertex(vr,Ti,-jo,-El,_r)}else if(to==="butt")this.addCurrentVertex(vr,rn,0,0,_r);else if(to==="square"){var Df=Fr?1:-1;this.addCurrentVertex(vr,rn,Df,Df,_r)}else to==="round"&&(Fr&&(this.addCurrentVertex(vr,Gi,0,0,_r),this.addCurrentVertex(vr,Gi,1,1,_r,!0)),ai&&(this.addCurrentVertex(vr,Ti,-1,-1,_r,!0),this.addCurrentVertex(vr,Ti,0,0,_r)));if(ha&&bn<gt-1){var Xh=vr.dist(ai);if(Xh>2*or){var ch=vr.add(ai.sub(vr)._mult(or/Xh)._round());this.updateDistance(vr,ch),this.addCurrentVertex(ch,Ti,0,0,_r),vr=ch}}}}},sh.prototype.addCurrentVertex=function(y,I,U,$,ae,he){he===void 0&&(he=!1);var Oe=I.x+I.y*U,rt=I.y-I.x*U,gt=-I.x+I.y*$,Mt=-I.y-I.x*$;this.addHalfVertex(y,Oe,rt,he,!1,U,ae),this.addHalfVertex(y,gt,Mt,he,!0,-$,ae),this.distance>tb/2&&this.totalDistance===0&&(this.distance=0,this.addCurrentVertex(y,I,U,$,ae,he))},sh.prototype.addHalfVertex=function(y,I,U,$,ae,he,Oe){var rt=y.x,gt=y.y,Mt=this.lineClips?this.scaledDistance*(tb-1):this.scaledDistance,or=Mt*Bw;if(this.layoutVertexArray.emplaceBack((rt<<1)+($?1:0),(gt<<1)+(ae?1:0),Math.round(qw*I)+128,Math.round(qw*U)+128,(he===0?0:he<0?-1:1)+1|(or&63)<<2,or>>6),this.lineClips){var _r=this.scaledDistance-this.lineClips.start,vr=this.lineClips.end-this.lineClips.start,Fr=_r/vr;this.layoutVertexArray2.emplaceBack(Fr,this.lineClipsArray.length)}var ai=Oe.vertexLength++;this.e1>=0&&this.e2>=0&&(this.indexArray.emplaceBack(this.e1,this.e2,ai),Oe.primitiveLength++),ae?this.e2=ai:this.e1=ai},sh.prototype.updateScaledDistance=function(){this.scaledDistance=this.lineClips?this.lineClips.start+(this.lineClips.end-this.lineClips.start)*this.distance/this.totalDistance:this.distance},sh.prototype.updateDistance=function(y,I){this.distance+=y.dist(I),this.updateScaledDistance()},X("LineBucket",sh,{omit:["layers","patternFeatures"]});var _S=new Br({"line-cap":new Ee(Fn.layout_line["line-cap"]),"line-join":new xt(Fn.layout_line["line-join"]),"line-miter-limit":new Ee(Fn.layout_line["line-miter-limit"]),"line-round-limit":new Ee(Fn.layout_line["line-round-limit"]),"line-sort-key":new xt(Fn.layout_line["line-sort-key"])}),xS=new Br({"line-opacity":new xt(Fn.paint_line["line-opacity"]),"line-color":new xt(Fn.paint_line["line-color"]),"line-translate":new Ee(Fn.paint_line["line-translate"]),"line-translate-anchor":new Ee(Fn.paint_line["line-translate-anchor"]),"line-width":new xt(Fn.paint_line["line-width"]),"line-gap-width":new xt(Fn.paint_line["line-gap-width"]),"line-offset":new xt(Fn.paint_line["line-offset"]),"line-blur":new xt(Fn.paint_line["line-blur"]),"line-dasharray":new Ir(Fn.paint_line["line-dasharray"]),"line-pattern":new zt(Fn.paint_line["line-pattern"]),"line-gradient":new Hr(Fn.paint_line["line-gradient"])}),Nw={paint:xS,layout:_S},tO=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.possiblyEvaluate=function(U,$){return $=new Gn(Math.floor($.zoom),{now:$.now,fadeDuration:$.fadeDuration,zoomHistory:$.zoomHistory,transition:$.transition}),m.prototype.possiblyEvaluate.call(this,U,$)},y.prototype.evaluate=function(U,$,ae,he){return $=_({},$,{zoom:Math.floor($.zoom)}),m.prototype.evaluate.call(this,U,$,ae,he)},y}(xt),R=new tO(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 $=this._transitionablePaint._values["line-gradient"].value.expression;this.stepInterpolant=$._styleExpression.expression instanceof _u,this.gradientVersion=(this.gradientVersion+1)%d}},y.prototype.gradientExpression=function(){return this._transitionablePaint._values["line-gradient"].value.expression},y.prototype.recalculate=function(U,$){m.prototype.recalculate.call(this,U,$),this.paint._values["line-floorwidth"]=R.possiblyEvaluate(this._transitioningPaint._values["line-width"].value,U)},y.prototype.createBucket=function(U){return new sh(U)},y.prototype.queryRadius=function(U){var $=U,ae=F(Ad("line-width",this,$),Ad("line-gap-width",this,$)),he=Ad("line-offset",this,$);return ae/2+Math.abs(he)+Cv(this.paint.get("line-translate"))},y.prototype.queryIntersectsFeature=function(U,$,ae,he,Oe,rt,gt){var Mt=Kv(U,this.paint.get("line-translate"),this.paint.get("line-translate-anchor"),rt.angle,gt),or=gt/2*F(this.paint.get("line-width").evaluate($,ae),this.paint.get("line-gap-width").evaluate($,ae)),_r=this.paint.get("line-offset").evaluate($,ae);return _r&&(he=W(he,_r*gt)),su(Mt,he,or)},y.prototype.isTileClipped=function(){return!0},y}(mi);function F(m,y){return y>0?y+2*m:m}function W(m,y){for(var I=[],U=new u(0,0),$=0;$<m.length;$++){for(var ae=m[$],he=[],Oe=0;Oe<ae.length;Oe++){var rt=ae[Oe-1],gt=ae[Oe],Mt=ae[Oe+1],or=Oe===0?U:gt.sub(rt)._unit()._perp(),_r=Oe===ae.length-1?U:Mt.sub(gt)._unit()._perp(),vr=or._add(_r)._unit(),Fr=vr.x*_r.x+vr.y*_r.y;vr._mult(1/Fr),he.push(vr._mult(y)._add(gt))}I.push(he)}return I}var te=ji([{name:"a_pos_offset",components:4,type:"Int16"},{name:"a_data",components:4,type:"Uint16"},{name:"a_pixeloffset",components:4,type:"Int16"}],4),fe=ji([{name:"a_projected_pos",components:3,type:"Float32"}],4),pe=ji([{name:"a_fade_opacity",components:1,type:"Uint32"}],4),ze=ji([{name:"a_placed",components:2,type:"Uint8"},{name:"a_shift",components:2,type:"Float32"}]),Ke=ji([{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"}]),ut=ji([{name:"a_pos",components:2,type:"Int16"},{name:"a_anchor_pos",components:2,type:"Int16"},{name:"a_extrude",components:2,type:"Int16"}],4),Lt=ji([{name:"a_pos",components:2,type:"Float32"},{name:"a_radius",components:1,type:"Float32"},{name:"a_flags",components:2,type:"Int16"}],4),Qt=ji([{name:"triangle",components:3,type:"Uint16"}]),fr=ji([{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"}]),mr=ji([{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"}]),Lr=ji([{type:"Float32",name:"offsetX"}]),zr=ji([{type:"Int16",name:"x"},{type:"Int16",name:"y"},{type:"Int16",name:"tileUnitDistanceFromAnchor"}]);function ui(m,y,I){var U=y.layout.get("text-transform").evaluate(I,{});return U==="uppercase"?m=m.toLocaleUpperCase():U==="lowercase"&&(m=m.toLocaleLowerCase()),Es.applyArabicShaping&&(m=Es.applyArabicShaping(m)),m}function yi(m,y,I){return m.sections.forEach(function(U){U.text=ui(U.text,y,I)}),m}function dn(m){var y={},I={},U=[],$=0;function ae(Ti){U.push(m[Ti]),$++}function he(Ti,bn,rn){var xn=I[Ti];return delete I[Ti],I[bn]=xn,U[xn].geometry[0].pop(),U[xn].geometry[0]=U[xn].geometry[0].concat(rn[0]),xn}function Oe(Ti,bn,rn){var xn=y[bn];return delete y[bn],y[Ti]=xn,U[xn].geometry[0].shift(),U[xn].geometry[0]=rn[0].concat(U[xn].geometry[0]),xn}function rt(Ti,bn,rn){var xn=rn?bn[0][bn[0].length-1]:bn[0][0];return Ti+":"+xn.x+":"+xn.y}for(var gt=0;gt<m.length;gt++){var Mt=m[gt],or=Mt.geometry,_r=Mt.text?Mt.text.toString():null;if(!_r){ae(gt);continue}var vr=rt(_r,or),Fr=rt(_r,or,!0);if(vr in I&&Fr in y&&I[vr]!==y[Fr]){var ai=Oe(vr,Fr,or),Gi=he(vr,Fr,U[ai].geometry);delete y[vr],delete I[Fr],I[rt(_r,U[Gi].geometry,!0)]=Gi,U[ai].geometry=null}else vr in I?he(vr,Fr,or):Fr in y?Oe(vr,Fr,or):(ae(gt),y[vr]=$-1,I[Fr]=$-1)}return U.filter(function(Ti){return Ti.geometry})}var Fi={"!":"\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 ln(m){for(var y="",I=0;I<m.length;I++){var U=m.charCodeAt(I+1)||null,$=m.charCodeAt(I-1)||null,ae=(!U||!bi(U)||Fi[m[I+1]])&&(!$||!bi($)||Fi[m[I-1]]);ae&&Fi[m[I]]?y+=Fi[m[I]]:y+=m[I]}return y}var An=24,pa=function(m,y,I,U,$){var ae,he,Oe=$*8-U-1,rt=(1<<Oe)-1,gt=rt>>1,Mt=-7,or=I?$-1:0,_r=I?-1:1,vr=m[y+or];for(or+=_r,ae=vr&(1<<-Mt)-1,vr>>=-Mt,Mt+=Oe;Mt>0;ae=ae*256+m[y+or],or+=_r,Mt-=8);for(he=ae&(1<<-Mt)-1,ae>>=-Mt,Mt+=U;Mt>0;he=he*256+m[y+or],or+=_r,Mt-=8);if(ae===0)ae=1-gt;else{if(ae===rt)return he?NaN:(vr?-1:1)*(1/0);he=he+Math.pow(2,U),ae=ae-gt}return(vr?-1:1)*he*Math.pow(2,ae-U)},ro=function(m,y,I,U,$,ae){var he,Oe,rt,gt=ae*8-$-1,Mt=(1<<gt)-1,or=Mt>>1,_r=$===23?Math.pow(2,-24)-Math.pow(2,-77):0,vr=U?0:ae-1,Fr=U?1:-1,ai=y<0||y===0&&1/y<0?1:0;for(y=Math.abs(y),isNaN(y)||y===1/0?(Oe=isNaN(y)?1:0,he=Mt):(he=Math.floor(Math.log(y)/Math.LN2),y*(rt=Math.pow(2,-he))<1&&(he--,rt*=2),he+or>=1?y+=_r/rt:y+=_r*Math.pow(2,1-or),y*rt>=2&&(he++,rt/=2),he+or>=Mt?(Oe=0,he=Mt):he+or>=1?(Oe=(y*rt-1)*Math.pow(2,$),he=he+or):(Oe=y*Math.pow(2,or-1)*Math.pow(2,$),he=0));$>=8;m[I+vr]=Oe&255,vr+=Fr,Oe/=256,$-=8);for(he=he<<$|Oe,gt+=$;gt>0;m[I+vr]=he&255,vr+=Fr,he/=256,gt-=8);m[I+vr-Fr]|=ai*128},Vo={read:pa,write:ro},Xa=sa;function sa(m){this.buf=ArrayBuffer.isView&&ArrayBuffer.isView(m)?m:new Uint8Array(m||0),this.pos=0,this.type=0,this.length=this.buf.length}sa.Varint=0,sa.Fixed64=1,sa.Bytes=2,sa.Fixed32=5;var Mo=65536*65536,fo=1/Mo,lo=12,Xn=typeof TextDecoder=="undefined"?null:new TextDecoder("utf8");sa.prototype={destroy:function(){this.buf=null},readFields:function(m,y,I){for(I=I||this.length;this.pos<I;){var U=this.readVarint(),$=U>>3,ae=this.pos;this.type=U&7,m($,y,this),this.pos===ae&&this.skip(U)}return y},readMessage:function(m,y){return this.readFields(m,y,this.readVarint()+this.pos)},readFixed32:function(){var m=Hh(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=Hh(this.buf,this.pos)+Hh(this.buf,this.pos+4)*Mo;return this.pos+=8,m},readSFixed64:function(){var m=Hh(this.buf,this.pos)+Iv(this.buf,this.pos+4)*Mo;return this.pos+=8,m},readFloat:function(){var m=Vo.read(this.buf,this.pos,!0,23,4);return this.pos+=4,m},readDouble:function(){var m=Vo.read(this.buf,this.pos,!0,52,8);return this.pos+=8,m},readVarint:function(m){var y=this.buf,I,U;return U=y[this.pos++],I=U&127,U<128||(U=y[this.pos++],I|=(U&127)<<7,U<128)||(U=y[this.pos++],I|=(U&127)<<14,U<128)||(U=y[this.pos++],I|=(U&127)<<21,U<128)?I:(U=y[this.pos],I|=(U&15)<<28,Ro(I,m,this))},readVarint64:function(){return this.readVarint(!0)},readSVarint:function(){var m=this.readVarint();return m%2===1?(m+1)/-2:m/2},readBoolean:function(){return!!this.readVarint()},readString:function(){var m=this.readVarint()+this.pos,y=this.pos;return this.pos=m,m-y>=lo&&Xn?tu(this.buf,y,m):lv(this.buf,y,m)},readBytes:function(){var m=this.readVarint()+this.pos,y=this.buf.subarray(this.pos,m);return this.pos=m,y},readPackedVarint:function(m,y){if(this.type!==sa.Bytes)return m.push(this.readVarint(y));var I=uo(this);for(m=m||[];this.pos<I;)m.push(this.readVarint(y));return m},readPackedSVarint:function(m){if(this.type!==sa.Bytes)return m.push(this.readSVarint());var y=uo(this);for(m=m||[];this.pos<y;)m.push(this.readSVarint());return m},readPackedBoolean:function(m){if(this.type!==sa.Bytes)return m.push(this.readBoolean());var y=uo(this);for(m=m||[];this.pos<y;)m.push(this.readBoolean());return m},readPackedFloat:function(m){if(this.type!==sa.Bytes)return m.push(this.readFloat());var y=uo(this);for(m=m||[];this.pos<y;)m.push(this.readFloat());return m},readPackedDouble:function(m){if(this.type!==sa.Bytes)return m.push(this.readDouble());var y=uo(this);for(m=m||[];this.pos<y;)m.push(this.readDouble());return m},readPackedFixed32:function(m){if(this.type!==sa.Bytes)return m.push(this.readFixed32());var y=uo(this);for(m=m||[];this.pos<y;)m.push(this.readFixed32());return m},readPackedSFixed32:function(m){if(this.type!==sa.Bytes)return m.push(this.readSFixed32());var y=uo(this);for(m=m||[];this.pos<y;)m.push(this.readSFixed32());return m},readPackedFixed64:function(m){if(this.type!==sa.Bytes)return m.push(this.readFixed64());var y=uo(this);for(m=m||[];this.pos<y;)m.push(this.readFixed64());return m},readPackedSFixed64:function(m){if(this.type!==sa.Bytes)return m.push(this.readSFixed64());var y=uo(this);for(m=m||[];this.pos<y;)m.push(this.readSFixed64());return m},skip:function(m){var y=m&7;if(y===sa.Varint)for(;this.buf[this.pos++]>127;);else if(y===sa.Bytes)this.pos=this.readVarint()+this.pos;else if(y===sa.Fixed32)this.pos+=4;else if(y===sa.Fixed64)this.pos+=8;else throw new Error("Unimplemented type: "+y)},writeTag:function(m,y){this.writeVarint(m<<3|y)},realloc:function(m){for(var y=this.length||16;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),Rf(this.buf,m,this.pos),this.pos+=4},writeSFixed32:function(m){this.realloc(4),Rf(this.buf,m,this.pos),this.pos+=4},writeFixed64:function(m){this.realloc(8),Rf(this.buf,m&-1,this.pos),Rf(this.buf,Math.floor(m*fo),this.pos+4),this.pos+=8},writeSFixed64:function(m){this.realloc(8),Rf(this.buf,m&-1,this.pos),Rf(this.buf,Math.floor(m*fo),this.pos+4),this.pos+=8},writeVarint:function(m){if(m=+m||0,m>268435455||m<0){Ju(m,this);return}this.realloc(4),this.buf[this.pos++]=m&127|(m>127?128:0),!(m<=127)&&(this.buf[this.pos++]=(m>>>=7)&127|(m>127?128:0),!(m<=127)&&(this.buf[this.pos++]=(m>>>=7)&127|(m>127?128:0),!(m<=127)&&(this.buf[this.pos++]=m>>>7&127)))},writeSVarint:function(m){this.writeVarint(m<0?-m*2-1:m*2)},writeBoolean:function(m){this.writeVarint(!!m)},writeString:function(m){m=String(m),this.realloc(m.length*4),this.pos++;var y=this.pos;this.pos=pc(this.buf,m,this.pos);var I=this.pos-y;I>=128&&$v(y,I,this),this.pos=y-1,this.writeVarint(I),this.pos+=I},writeFloat:function(m){this.realloc(4),Vo.write(this.buf,m,this.pos,!0,23,4),this.pos+=4},writeDouble:function(m){this.realloc(8),Vo.write(this.buf,m,this.pos,!0,52,8),this.pos+=8},writeBytes:function(m){var y=m.length;this.writeVarint(y),this.realloc(y);for(var I=0;I<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,sa.Bytes),this.writeRawMessage(y,I)},writePackedVarint:function(m,y){y.length&&this.writeMessage(m,ld,y)},writePackedSVarint:function(m,y){y.length&&this.writeMessage(m,Ah,y)},writePackedBoolean:function(m,y){y.length&&this.writeMessage(m,jd,y)},writePackedFloat:function(m,y){y.length&&this.writeMessage(m,Gd,y)},writePackedDouble:function(m,y){y.length&&this.writeMessage(m,Hd,y)},writePackedFixed32:function(m,y){y.length&&this.writeMessage(m,Tf,y)},writePackedSFixed32:function(m,y){y.length&&this.writeMessage(m,Sh,y)},writePackedFixed64:function(m,y){y.length&&this.writeMessage(m,Ed,y)},writePackedSFixed64:function(m,y){y.length&&this.writeMessage(m,ud,y)},writeBytesField:function(m,y){this.writeTag(m,sa.Bytes),this.writeBytes(y)},writeFixed32Field:function(m,y){this.writeTag(m,sa.Fixed32),this.writeFixed32(y)},writeSFixed32Field:function(m,y){this.writeTag(m,sa.Fixed32),this.writeSFixed32(y)},writeFixed64Field:function(m,y){this.writeTag(m,sa.Fixed64),this.writeFixed64(y)},writeSFixed64Field:function(m,y){this.writeTag(m,sa.Fixed64),this.writeSFixed64(y)},writeVarintField:function(m,y){this.writeTag(m,sa.Varint),this.writeVarint(y)},writeSVarintField:function(m,y){this.writeTag(m,sa.Varint),this.writeSVarint(y)},writeStringField:function(m,y){this.writeTag(m,sa.Bytes),this.writeString(y)},writeFloatField:function(m,y){this.writeTag(m,sa.Fixed32),this.writeFloat(y)},writeDoubleField:function(m,y){this.writeTag(m,sa.Fixed64),this.writeDouble(y)},writeBooleanField:function(m,y){this.writeVarintField(m,!!y)}};function Ro(m,y,I){var U=I.buf,$,ae;if(ae=U[I.pos++],$=(ae&112)>>4,ae<128||(ae=U[I.pos++],$|=(ae&127)<<3,ae<128)||(ae=U[I.pos++],$|=(ae&127)<<10,ae<128)||(ae=U[I.pos++],$|=(ae&127)<<17,ae<128)||(ae=U[I.pos++],$|=(ae&127)<<24,ae<128)||(ae=U[I.pos++],$|=(ae&1)<<31,ae<128))return $o(m,$,y);throw new Error("Expected varint not more than 10 bytes")}function uo(m){return m.type===sa.Bytes?m.readVarint()+m.pos:m.pos+1}function $o(m,y,I){return I?y*4294967296+(m>>>0):(y>>>0)*4294967296+(m>>>0)}function Ju(m,y){var I,U;if(m>=0?(I=m%4294967296|0,U=m/4294967296|0):(I=~(-m%4294967296),U=~(-m/4294967296),I^4294967295?I=I+1|0:(I=0,U=U+1|0)),m>=18446744073709552e3||m<-18446744073709552e3)throw new Error("Given varint doesn't fit into 10 bytes");y.realloc(10),qu(I,U,y),Th(U,y)}function qu(m,y,I){I.buf[I.pos++]=m&127|128,m>>>=7,I.buf[I.pos++]=m&127|128,m>>>=7,I.buf[I.pos++]=m&127|128,m>>>=7,I.buf[I.pos++]=m&127|128,m>>>=7,I.buf[I.pos]=m&127}function Th(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 $=I.pos-1;$>=m;$--)I.buf[$+U]=I.buf[$]}function ld(m,y){for(var I=0;I<m.length;I++)y.writeVarint(m[I])}function Ah(m,y){for(var I=0;I<m.length;I++)y.writeSVarint(m[I])}function Gd(m,y){for(var I=0;I<m.length;I++)y.writeFloat(m[I])}function Hd(m,y){for(var I=0;I<m.length;I++)y.writeDouble(m[I])}function jd(m,y){for(var I=0;I<m.length;I++)y.writeBoolean(m[I])}function Tf(m,y){for(var I=0;I<m.length;I++)y.writeFixed32(m[I])}function Sh(m,y){for(var I=0;I<m.length;I++)y.writeSFixed32(m[I])}function Ed(m,y){for(var I=0;I<m.length;I++)y.writeFixed64(m[I])}function ud(m,y){for(var I=0;I<m.length;I++)y.writeSFixed64(m[I])}function Hh(m,y){return(m[y]|m[y+1]<<8|m[y+2]<<16)+m[y+3]*16777216}function Rf(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="",$=y;$<I;){var ae=m[$],he=null,Oe=ae>239?4:ae>223?3:ae>191?2:1;if($+Oe>I)break;var rt,gt,Mt;Oe===1?ae<128&&(he=ae):Oe===2?(rt=m[$+1],(rt&192)===128&&(he=(ae&31)<<6|rt&63,he<=127&&(he=null))):Oe===3?(rt=m[$+1],gt=m[$+2],(rt&192)===128&&(gt&192)===128&&(he=(ae&15)<<12|(rt&63)<<6|gt&63,(he<=2047||he>=55296&&he<=57343)&&(he=null))):Oe===4&&(rt=m[$+1],gt=m[$+2],Mt=m[$+3],(rt&192)===128&&(gt&192)===128&&(Mt&192)===128&&(he=(ae&15)<<18|(rt&63)<<12|(gt&63)<<6|Mt&63,(he<=65535||he>=1114112)&&(he=null))),he===null?(he=65533,Oe=1):he>65535&&(he-=65536,U+=String.fromCharCode(he>>>10&1023|55296),he=56320|he&1023),U+=String.fromCharCode(he),$+=Oe}return U}function tu(m,y,I){return Xn.decode(m.subarray(y,I))}function pc(m,y,I){for(var U=0,$,ae;U<y.length;U++){if($=y.charCodeAt(U),$>55295&&$<57344)if(ae)if($<56320){m[I++]=239,m[I++]=191,m[I++]=189,ae=$;continue}else $=ae-55296<<10|$-56320|65536,ae=null;else{$>56319||U+1===y.length?(m[I++]=239,m[I++]=191,m[I++]=189):ae=$;continue}else ae&&(m[I++]=239,m[I++]=191,m[I++]=189,ae=null);$<128?m[I++]=$:($<2048?m[I++]=$>>6|192:($<65536?m[I++]=$>>12|224:(m[I++]=$>>18|240,m[I++]=$>>12&63|128),m[I++]=$>>6&63|128),m[I++]=$&63|128)}return I}var $u=3;function Rv(m,y,I){m===1&&I.readMessage(ff,y)}function ff(m,y,I){if(m===3){var U=I.readMessage(I1,{}),$=U.id,ae=U.bitmap,he=U.width,Oe=U.height,rt=U.left,gt=U.top,Mt=U.advance;y.push({id:$,bitmap:new Pv({width:he+2*$u,height:Oe+2*$u},ae),metrics:{width:he,height:Oe,left:rt,top:gt,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 Xa(m).readFields(Rv,[])}var Gp=$u;function Qv(m){for(var y=0,I=0,U=0,$=m;U<$.length;U+=1){var ae=$[U];y+=ae.w*ae.h,I=Math.max(I,ae.w)}m.sort(function(Gi,Ti){return Ti.h-Gi.h});for(var he=Math.max(Math.ceil(Math.sqrt(y/.95)),I),Oe=[{x:0,y:0,w:he,h:1/0}],rt=0,gt=0,Mt=0,or=m;Mt<or.length;Mt+=1)for(var _r=or[Mt],vr=Oe.length-1;vr>=0;vr--){var Fr=Oe[vr];if(!(_r.w>Fr.w||_r.h>Fr.h)){if(_r.x=Fr.x,_r.y=Fr.y,gt=Math.max(gt,_r.y+_r.h),rt=Math.max(rt,_r.x+_r.w),_r.w===Fr.w&&_r.h===Fr.h){var ai=Oe.pop();vr<Oe.length&&(Oe[vr]=ai)}else _r.h===Fr.h?(Fr.x+=_r.w,Fr.w-=_r.w):_r.w===Fr.w?(Fr.y+=_r.h,Fr.h-=_r.h):(Oe.push({x:Fr.x+_r.w,y:Fr.y,w:Fr.w-_r.w,h:_r.h}),Fr.y+=_r.h,Fr.h-=_r.h);break}}return{w:rt,h:gt,fill:y/(rt*gt)||0}}var Gc=1,Zf=function(y,I){var U=I.pixelRatio,$=I.version,ae=I.stretchX,he=I.stretchY,Oe=I.content;this.paddedRect=y,this.pixelRatio=U,this.stretchX=ae,this.stretchY=he,this.content=Oe,this.version=$},ep={tl:{configurable:!0},br:{configurable:!0},tlbr:{configurable:!0},displaySize:{configurable:!0}};ep.tl.get=function(){return[this.paddedRect.x+Gc,this.paddedRect.y+Gc]},ep.br.get=function(){return[this.paddedRect.x+this.paddedRect.w-Gc,this.paddedRect.y+this.paddedRect.h-Gc]},ep.tlbr.get=function(){return this.tl.concat(this.br)},ep.displaySize.get=function(){return[(this.paddedRect.w-Gc*2)/this.pixelRatio,(this.paddedRect.h-Gc*2)/this.pixelRatio]},Object.defineProperties(Zf.prototype,ep);var gg=function(y,I){var U={},$={};this.haveRenderCallbacks=[];var ae=[];this.addImages(y,U,ae),this.addImages(I,$,ae);var he=Qv(ae),Oe=he.w,rt=he.h,gt=new wh({width:Oe||1,height:rt||1});for(var Mt in y){var or=y[Mt],_r=U[Mt].paddedRect;wh.copy(or.data,gt,{x:0,y:0},{x:_r.x+Gc,y:_r.y+Gc},or.data)}for(var vr in I){var Fr=I[vr],ai=$[vr].paddedRect,Gi=ai.x+Gc,Ti=ai.y+Gc,bn=Fr.data.width,rn=Fr.data.height;wh.copy(Fr.data,gt,{x:0,y:0},{x:Gi,y:Ti},Fr.data),wh.copy(Fr.data,gt,{x:0,y:rn-1},{x:Gi,y:Ti-1},{width:bn,height:1}),wh.copy(Fr.data,gt,{x:0,y:0},{x:Gi,y:Ti+rn},{width:bn,height:1}),wh.copy(Fr.data,gt,{x:bn-1,y:0},{x:Gi-1,y:Ti},{width:1,height:rn}),wh.copy(Fr.data,gt,{x:0,y:0},{x:Gi+bn,y:Ti},{width:1,height:rn})}this.image=gt,this.iconPositions=U,this.patternPositions=$};gg.prototype.addImages=function(y,I,U){for(var $ in y){var ae=y[$],he={x:0,y:0,w:ae.data.width+2*Gc,h:ae.data.height+2*Gc};U.push(he),I[$]=new Zf(he,ae),ae.hasRenderCallback&&this.haveRenderCallbacks.push($)}},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 $=y.tl,ae=$[0],he=$[1];U.update(I.data,void 0,{x:ae,y:he})}},X("ImagePosition",Zf),X("ImageAtlas",gg);var uv={horizontal:1,vertical:2,horizontalOnly:3},R1=-17;function bS(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 jh=function(){this.text="",this.sectionIndex=[],this.sections=[],this.imageSectionID=null};jh.fromFeature=function(y,I){for(var U=new jh,$=0;$<y.sections.length;$++){var ae=y.sections[$];ae.image?U.addImageSection(ae):U.addTextSection(ae,I)}return U},jh.prototype.length=function(){return this.text.length},jh.prototype.getSection=function(y){return this.sections[this.sectionIndex[y]]},jh.prototype.getSectionIndex=function(y){return this.sectionIndex[y]},jh.prototype.getCharCode=function(y){return this.text.charCodeAt(y)},jh.prototype.verticalizePunctuation=function(){this.text=ln(this.text)},jh.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,$=this.text.length-1;$>=0&&$>=y&&m0[this.text.charCodeAt($)];$--)U--;this.text=this.text.substring(y,U),this.sectionIndex=this.sectionIndex.slice(y,U)},jh.prototype.substring=function(y,I){var U=new jh;return U.text=this.text.substring(y,I),U.sectionIndex=this.sectionIndex.slice(y,I),U.sections=this.sections,U},jh.prototype.toString=function(){return this.text},jh.prototype.getMaxScale=function(){var y=this;return this.sectionIndex.reduce(function(I,U){return Math.max(I,y.sections[U].scale)},0)},jh.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,$=0;$<y.text.length;++$)this.sectionIndex.push(U)},jh.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)},jh.prototype.getNextImageSectionCharCode=function(){return this.imageSectionID?this.imageSectionID>=g0?null:++this.imageSectionID:(this.imageSectionID=Uw,this.imageSectionID)};function rO(m,y){for(var I=[],U=m.text,$=0,ae=0,he=y;ae<he.length;ae+=1){var Oe=he[ae];I.push(m.substring($,Oe)),$=Oe}return $<U.length&&I.push(m.substring($,U.length)),I}function Vw(m,y,I,U,$,ae,he,Oe,rt,gt,Mt,or,_r,vr,Fr,ai){var Gi=jh.fromFeature(m,$);or===uv.vertical&&Gi.verticalizePunctuation();var Ti,bn=Es.processBidirectionalText,rn=Es.processStyledBidirectionalText;if(bn&&Gi.sections.length===1){Ti=[];for(var xn=bn(Gi.toString(),Gw(Gi,gt,ae,y,U,vr,Fr)),Dn=0,Zn=xn;Dn<Zn.length;Dn+=1){var ga=Zn[Dn],ha=new jh;ha.text=ga,ha.sections=Gi.sections;for(var eo=0;eo<ga.length;eo++)ha.sectionIndex.push(0);Ti.push(ha)}}else if(rn){Ti=[];for(var za=rn(Gi.text,Gi.sectionIndex,Gw(Gi,gt,ae,y,U,vr,Fr)),Za=0,Ko=za;Za<Ko.length;Za+=1){var to=Ko[Za],ao=new jh;ao.text=to[0],ao.sectionIndex=to[1],ao.sections=Gi.sections,Ti.push(ao)}}else Ti=rO(Gi,Gw(Gi,gt,ae,y,U,vr,Fr));var xs=[],jo={positionedLines:xs,text:Gi.toString(),top:Mt[1],bottom:Mt[1],left:Mt[0],right:Mt[0],writingMode:or,iconsInText:!1,verticalizable:!1};return aO(jo,y,I,U,Ti,he,Oe,rt,or,gt,_r,ai),bS(xs)?!1:jo}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 Xk(m,y,I,U,$,ae){if(y.imageName){var rt=U[y.imageName];return rt?rt.displaySize[0]*y.scale*An/ae+$:0}else{var he=I[y.fontStack],Oe=he&&he[m];return Oe?Oe.metrics.advance*y.scale+$:0}}function iO(m,y,I,U,$,ae){for(var he=0,Oe=0;Oe<m.length();Oe++){var rt=m.getSection(Oe);he+=Xk(m.getCharCode(Oe),rt,U,$,y,ae)}var gt=Math.max(1,Math.ceil(he/I));return he/gt}function Zk(m,y,I,U){var $=Math.pow(m-y,2);return U?m<y?$/2:$*2:$+Math.abs(I)*I}function nO(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 gp(m,y,I,U,$,ae){for(var he=null,Oe=Zk(y,I,$,ae),rt=0,gt=U;rt<gt.length;rt+=1){var Mt=gt[rt],or=y-Mt.x,_r=Zk(or,I,$,ae)+Mt.badness;_r<=Oe&&(he=Mt,Oe=_r)}return{index:m,x:y,priorBreak:he,badness:Oe}}function rb(m){return m?rb(m.priorBreak).concat(m.index):[]}function Gw(m,y,I,U,$,ae,he){if(ae!=="point")return[];if(!m)return[];for(var Oe=[],rt=iO(m,y,I,U,$,he),gt=m.text.indexOf("\u200B")>=0,Mt=0,or=0;or<m.length();or++){var _r=m.getSection(or),vr=m.getCharCode(or);if(m0[vr]||(Mt+=Xk(vr,_r,U,$,y,he)),or<m.length()-1){var Fr=Gr(vr);(cv[vr]||Fr||_r.imageName)&&Oe.push(gp(or+1,Mt,rt,Oe,nO(vr,m.getCharCode(or+1),Fr&>),!1))}}return rb(gp(m.length(),Mt,rt,Oe,0,!0))}function wS(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 aO(m,y,I,U,$,ae,he,Oe,rt,gt,Mt,or){for(var _r=0,vr=R1,Fr=0,ai=0,Gi=Oe==="right"?1:Oe==="left"?0:.5,Ti=0,bn=0,rn=$;bn<rn.length;bn+=1){var xn=rn[bn];xn.trim();var Dn=xn.getMaxScale(),Zn=(Dn-1)*An,ga={positionedGlyphs:[],lineOffset:0};m.positionedLines[Ti]=ga;var ha=ga.positionedGlyphs,eo=0;if(!xn.length()){vr+=ae,++Ti;continue}for(var za=0;za<xn.length();za++){var Za=xn.getSection(za),Ko=xn.getSectionIndex(za),to=xn.getCharCode(za),ao=0,xs=null,jo=null,El=null,Iu=An,Cl=!(rt===uv.horizontal||!Mt&&!qr(to)||Mt&&(m0[to]||Xr(to)));if(Za.imageName){var Af=U[Za.imageName];if(!Af)continue;El=Za.imageName,m.iconsInText=m.iconsInText||!0,jo=Af.paddedRect;var Df=Af.displaySize;Za.scale=Za.scale*An/or,xs={width:Df[0],height:Df[1],left:Gc,top:-Gp,advance:Cl?Df[1]:Df[0]};var Xh=An-Df[1]*Za.scale;ao=Zn+Xh,Iu=xs.advance;var ch=Cl?Df[0]*Za.scale-An*Dn:Df[1]*Za.scale-An*Dn;ch>0&&ch>eo&&(eo=ch)}else{var kl=I[Za.fontStack],_l=kl&&kl[to];if(_l&&_l.rect)jo=_l.rect,xs=_l.metrics;else{var Qu=y[Za.fontStack],gc=Qu&&Qu[to];if(!gc)continue;xs=gc.metrics}ao=(Dn-Za.scale)*An}Cl?(m.verticalizable=!0,ha.push({glyph:to,imageName:El,x:_r,y:vr+ao,vertical:Cl,scale:Za.scale,fontStack:Za.fontStack,sectionIndex:Ko,metrics:xs,rect:jo}),_r+=Iu*Za.scale+gt):(ha.push({glyph:to,imageName:El,x:_r,y:vr+ao,vertical:Cl,scale:Za.scale,fontStack:Za.fontStack,sectionIndex:Ko,metrics:xs,rect:jo}),_r+=xs.advance*Za.scale+gt)}if(ha.length!==0){var Xd=_r-gt;Fr=Math.max(Xd,Fr),oO(ha,0,ha.length-1,Gi,eo)}_r=0;var Zd=ae*Dn+eo;ga.lineOffset=Math.max(eo,Zn),vr+=Zd,ai=Math.max(Zd,ai),++Ti}var Zh=vr-R1,fv=wS(he),hv=fv.horizontalAlign,Mh=fv.verticalAlign;Cd(m.positionedLines,Gi,hv,Mh,Fr,ai,ae,Zh,$.length),m.top+=-Mh*Zh,m.bottom=m.top+Zh,m.left+=-hv*Fr,m.right=m.left+Fr}function oO(m,y,I,U,$){if(!(!U&&!$))for(var ae=m[I],he=ae.metrics.advance*ae.scale,Oe=(m[I].x+he)*U,rt=y;rt<=I;rt++)m[rt].x-=Oe,m[rt].y+=$}function Cd(m,y,I,U,$,ae,he,Oe,rt){var gt=(y-I)*$,Mt=0;ae!==he?Mt=-Oe*U-R1:Mt=(-U*rt+.5)*he;for(var or=0,_r=m;or<_r.length;or+=1)for(var vr=_r[or],Fr=0,ai=vr.positionedGlyphs;Fr<ai.length;Fr+=1){var Gi=ai[Fr];Gi.x+=gt,Gi.y+=Mt}}function tp(m,y,I){var U=wS(I),$=U.horizontalAlign,ae=U.verticalAlign,he=y[0],Oe=y[1],rt=he-m.displaySize[0]*$,gt=rt+m.displaySize[0],Mt=Oe-m.displaySize[1]*ae,or=Mt+m.displaySize[1];return{image:m,top:Mt,bottom:or,left:rt,right:gt}}function hm(m,y,I,U,$,ae){var he=m.image,Oe;if(he.content){var rt=he.content,gt=he.pixelRatio||1;Oe=[rt[0]/gt,rt[1]/gt,he.displaySize[0]-rt[2]/gt,he.displaySize[1]-rt[3]/gt]}var Mt=y.left*ae,or=y.right*ae,_r,vr,Fr,ai;I==="width"||I==="both"?(ai=$[0]+Mt-U[3],vr=$[0]+or+U[1]):(ai=$[0]+(Mt+or-he.displaySize[0])/2,vr=ai+he.displaySize[0]);var Gi=y.top*ae,Ti=y.bottom*ae;return I==="height"||I==="both"?(_r=$[1]+Gi-U[0],Fr=$[1]+Ti+U[2]):(_r=$[1]+(Gi+Ti-he.displaySize[1])/2,Fr=_r+he.displaySize[1]),{image:he,top:_r,right:vr,bottom:Fr,left:ai,collisionPadding:Oe}}var Wd=function(m){function y(I,U,$,ae){m.call(this,I,U),this.angle=$,ae!==void 0&&(this.segment=ae)}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);X("Anchor",Wd);var kd=128;function mp(m,y){var I=y.expression;if(I.kind==="constant"){var U=I.evaluate(new Gn(m+1));return{kind:"constant",layoutSize:U}}else{if(I.kind==="source")return{kind:"source"};for(var $=I.zoomStops,ae=I.interpolationType,he=0;he<$.length&&$[he]<=m;)he++;he=Math.max(0,he-1);for(var Oe=he;Oe<$.length&&$[Oe]<m+1;)Oe++;Oe=Math.min($.length-1,Oe);var rt=$[he],gt=$[Oe];if(I.kind==="composite")return{kind:"composite",minZoom:rt,maxZoom:gt,interpolationType:ae};var Mt=I.evaluate(new Gn(rt)),or=I.evaluate(new Gn(gt));return{kind:"camera",minZoom:rt,maxZoom:gt,minSize:Mt,maxSize:or,interpolationType:ae}}}function LQ(m,y,I){var U=y.uSize,$=y.uSizeT,ae=I.lowerSize,he=I.upperSize;return m.kind==="source"?ae/kd:m.kind==="composite"?al(ae/kd,he/kd,$):U}function PQ(m,y){var I=0,U=0;if(m.kind==="constant")U=m.layoutSize;else if(m.kind!=="source"){var $=m.interpolationType,ae=m.minZoom,he=m.maxZoom,Oe=$?p(Wl.interpolationFactor($,y,ae,he),0,1):0;m.kind==="camera"?U=al(m.minSize,m.maxSize,Oe):I=Oe}return{uSizeT:I,uSize:U}}var eet=Object.freeze({__proto__:null,getSizeData:mp,evaluateSizeForFeature:LQ,evaluateSizeForZoom:PQ,SIZE_PACK_FACTOR:kd});function IQ(m,y,I,U,$){if(y.segment===void 0)return!0;for(var ae=y,he=y.segment+1,Oe=0;Oe>-I/2;){if(he--,he<0)return!1;Oe-=m[he].dist(ae),ae=m[he]}Oe+=m[he].dist(m[he+1]),he++;for(var rt=[],gt=0;Oe<I/2;){var Mt=m[he-1],or=m[he],_r=m[he+1];if(!_r)return!1;var vr=Mt.angleTo(or)-or.angleTo(_r);for(vr=Math.abs((vr+3*Math.PI)%(Math.PI*2)-Math.PI),rt.push({distance:Oe,angleDelta:vr}),gt+=vr;Oe-rt[0].distance>U;)gt-=rt.shift().angleDelta;if(gt>$)return!1;he++,Oe+=or.dist(_r)}return!0}function RQ(m){for(var y=0,I=0;I<m.length-1;I++)y+=m[I].dist(m[I+1]);return y}function DQ(m,y,I){return m?3/5*y*I:0}function FQ(m,y){return Math.max(m?m.right-m.left:0,y?y.right-y.left:0)}function tet(m,y,I,U,$,ae){for(var he=DQ(I,$,ae),Oe=FQ(I,U)*ae,rt=0,gt=RQ(m)/2,Mt=0;Mt<m.length-1;Mt++){var or=m[Mt],_r=m[Mt+1],vr=or.dist(_r);if(rt+vr>gt){var Fr=(gt-rt)/vr,ai=al(or.x,_r.x,Fr),Gi=al(or.y,_r.y,Fr),Ti=new Wd(ai,Gi,_r.angleTo(or),Mt);return Ti._round(),!he||IQ(m,Ti,Oe,he,y)?Ti:void 0}rt+=vr}}function ret(m,y,I,U,$,ae,he,Oe,rt){var gt=DQ(U,ae,he),Mt=FQ(U,$),or=Mt*he,_r=m[0].x===0||m[0].x===rt||m[0].y===0||m[0].y===rt;y-or<y/4&&(y=or+y/4);var vr=ae*2,Fr=_r?y/2*Oe%y:(Mt/2+vr)*he*Oe%y;return zQ(m,Fr,y,gt,I,or,_r,!1,rt)}function zQ(m,y,I,U,$,ae,he,Oe,rt){for(var gt=ae/2,Mt=RQ(m),or=0,_r=y-I,vr=[],Fr=0;Fr<m.length-1;Fr++){for(var ai=m[Fr],Gi=m[Fr+1],Ti=ai.dist(Gi),bn=Gi.angleTo(ai);_r+I<or+Ti;){_r+=I;var rn=(_r-or)/Ti,xn=al(ai.x,Gi.x,rn),Dn=al(ai.y,Gi.y,rn);if(xn>=0&&xn<rt&&Dn>=0&&Dn<rt&&_r-gt>=0&&_r+gt<=Mt){var Zn=new Wd(xn,Dn,bn,Fr);Zn._round(),(!U||IQ(m,Zn,ae,U,$))&&vr.push(Zn)}}or+=Ti}return!Oe&&!vr.length&&!he&&(vr=zQ(m,or/2,I,U,$,ae,he,!0,rt)),vr}function OQ(m,y,I,U,$){for(var ae=[],he=0;he<m.length;he++)for(var Oe=m[he],rt=void 0,gt=0;gt<Oe.length-1;gt++){var Mt=Oe[gt],or=Oe[gt+1];Mt.x<y&&or.x<y||(Mt.x<y?Mt=new u(y,Mt.y+(or.y-Mt.y)*((y-Mt.x)/(or.x-Mt.x)))._round():or.x<y&&(or=new u(y,Mt.y+(or.y-Mt.y)*((y-Mt.x)/(or.x-Mt.x)))._round()),!(Mt.y<I&&or.y<I)&&(Mt.y<I?Mt=new u(Mt.x+(or.x-Mt.x)*((I-Mt.y)/(or.y-Mt.y)),I)._round():or.y<I&&(or=new u(Mt.x+(or.x-Mt.x)*((I-Mt.y)/(or.y-Mt.y)),I)._round()),!(Mt.x>=U&&or.x>=U)&&(Mt.x>=U?Mt=new u(U,Mt.y+(or.y-Mt.y)*((U-Mt.x)/(or.x-Mt.x)))._round():or.x>=U&&(or=new u(U,Mt.y+(or.y-Mt.y)*((U-Mt.x)/(or.x-Mt.x)))._round()),!(Mt.y>=$&&or.y>=$)&&(Mt.y>=$?Mt=new u(Mt.x+(or.x-Mt.x)*(($-Mt.y)/(or.y-Mt.y)),$)._round():or.y>=$&&(or=new u(Mt.x+(or.x-Mt.x)*(($-Mt.y)/(or.y-Mt.y)),$)._round()),(!rt||!Mt.equals(rt[rt.length-1]))&&(rt=[Mt],ae.push(rt)),rt.push(or)))))}return ae}var Hw=Gc;function qQ(m,y,I,U){var $=[],ae=m.image,he=ae.pixelRatio,Oe=ae.paddedRect.w-2*Hw,rt=ae.paddedRect.h-2*Hw,gt=m.right-m.left,Mt=m.bottom-m.top,or=ae.stretchX||[[0,Oe]],_r=ae.stretchY||[[0,rt]],vr=function(kl,_l){return kl+_l[1]-_l[0]},Fr=or.reduce(vr,0),ai=_r.reduce(vr,0),Gi=Oe-Fr,Ti=rt-ai,bn=0,rn=Fr,xn=0,Dn=ai,Zn=0,ga=Gi,ha=0,eo=Ti;if(ae.content&&U){var za=ae.content;bn=Yk(or,0,za[0]),xn=Yk(_r,0,za[1]),rn=Yk(or,za[0],za[2]),Dn=Yk(_r,za[1],za[3]),Zn=za[0]-bn,ha=za[1]-xn,ga=za[2]-za[0]-rn,eo=za[3]-za[1]-Dn}var Za=function(kl,_l,Qu,gc){var Af=Kk(kl.stretch-bn,rn,gt,m.left),Df=Jk(kl.fixed-Zn,ga,kl.stretch,Fr),Xh=Kk(_l.stretch-xn,Dn,Mt,m.top),ch=Jk(_l.fixed-ha,eo,_l.stretch,ai),Xd=Kk(Qu.stretch-bn,rn,gt,m.left),Zd=Jk(Qu.fixed-Zn,ga,Qu.stretch,Fr),Zh=Kk(gc.stretch-xn,Dn,Mt,m.top),fv=Jk(gc.fixed-ha,eo,gc.stretch,ai),hv=new u(Af,Xh),Mh=new u(Xd,Xh),dv=new u(Xd,Zh),yp=new u(Af,Zh),py=new u(Df/he,ch/he),z1=new u(Zd/he,fv/he),O1=y*Math.PI/180;if(O1){var q1=Math.sin(O1),$w=Math.cos(O1),y0=[$w,-q1,q1,$w];hv._matMult(y0),Mh._matMult(y0),yp._matMult(y0),dv._matMult(y0)}var i6=kl.stretch+kl.fixed,vO=Qu.stretch+Qu.fixed,n6=_l.stretch+_l.fixed,pO=gc.stretch+gc.fixed,Hp={x:ae.paddedRect.x+Hw+i6,y:ae.paddedRect.y+Hw+n6,w:vO-i6,h:pO-n6},Qw=ga/he/gt,a6=eo/he/Mt;return{tl:hv,tr:Mh,bl:yp,br:dv,tex:Hp,writingMode:void 0,glyphOffset:[0,0],sectionIndex:0,pixelOffsetTL:py,pixelOffsetBR:z1,minFontScaleX:Qw,minFontScaleY:a6,isSDF:I}};if(!U||!ae.stretchX&&!ae.stretchY)$.push(Za({fixed:0,stretch:-1},{fixed:0,stretch:-1},{fixed:0,stretch:Oe+1},{fixed:0,stretch:rt+1}));else for(var Ko=BQ(or,Gi,Fr),to=BQ(_r,Ti,ai),ao=0;ao<Ko.length-1;ao++)for(var xs=Ko[ao],jo=Ko[ao+1],El=0;El<to.length-1;El++){var Iu=to[El],Cl=to[El+1];$.push(Za(xs,Iu,jo,Cl))}return $}function Yk(m,y,I){for(var U=0,$=0,ae=m;$<ae.length;$+=1){var he=ae[$];U+=Math.max(y,Math.min(I,he[1]))-Math.max(y,Math.min(I,he[0]))}return U}function BQ(m,y,I){for(var U=[{fixed:-Hw,stretch:0}],$=0,ae=m;$<ae.length;$+=1){var he=ae[$],Oe=he[0],rt=he[1],gt=U[U.length-1];U.push({fixed:Oe-gt.stretch,stretch:gt.stretch}),U.push({fixed:Oe-gt.stretch,stretch:gt.stretch+(rt-Oe)})}return U.push({fixed:y+Hw,stretch:I}),U}function Kk(m,y,I,U){return m/y*I+U}function Jk(m,y,I,U){return m-y*I/U}function iet(m,y,I,U,$,ae,he,Oe){for(var rt=U.layout.get("text-rotate").evaluate(ae,{})*Math.PI/180,gt=[],Mt=0,or=y.positionedLines;Mt<or.length;Mt+=1)for(var _r=or[Mt],vr=0,Fr=_r.positionedGlyphs;vr<Fr.length;vr+=1){var ai=Fr[vr];if(ai.rect){var Gi=ai.rect||{},Ti=1,bn=Gp+Ti,rn=!0,xn=1,Dn=0,Zn=($||Oe)&&ai.vertical,ga=ai.metrics.advance*ai.scale/2;if(Oe&&y.verticalizable){var ha=(ai.scale-1)*An,eo=(An-ai.metrics.width*ai.scale)/2;Dn=_r.lineOffset/2-(ai.imageName?-eo:ha)}if(ai.imageName){var za=he[ai.imageName];rn=za.sdf,xn=za.pixelRatio,bn=Gc/xn}var Za=$?[ai.x+ga,ai.y]:[0,0],Ko=$?[0,0]:[ai.x+ga+I[0],ai.y+I[1]-Dn],to=[0,0];Zn&&(to=Ko,Ko=[0,0]);var ao=(ai.metrics.left-bn)*ai.scale-ga+Ko[0],xs=(-ai.metrics.top-bn)*ai.scale+Ko[1],jo=ao+Gi.w*ai.scale/xn,El=xs+Gi.h*ai.scale/xn,Iu=new u(ao,xs),Cl=new u(jo,xs),kl=new u(ao,El),_l=new u(jo,El);if(Zn){var Qu=new u(-ga,ga-R1),gc=-Math.PI/2,Af=An/2-ga,Df=ai.imageName?Af:0,Xh=new u(5-R1-Af,-Df),ch=new(Function.prototype.bind.apply(u,[null].concat(to)));Iu._rotateAround(gc,Qu)._add(Xh)._add(ch),Cl._rotateAround(gc,Qu)._add(Xh)._add(ch),kl._rotateAround(gc,Qu)._add(Xh)._add(ch),_l._rotateAround(gc,Qu)._add(Xh)._add(ch)}if(rt){var Xd=Math.sin(rt),Zd=Math.cos(rt),Zh=[Zd,-Xd,Xd,Zd];Iu._matMult(Zh),Cl._matMult(Zh),kl._matMult(Zh),_l._matMult(Zh)}var fv=new u(0,0),hv=new u(0,0),Mh=0,dv=0;gt.push({tl:Iu,tr:Cl,bl:kl,br:_l,tex:Gi,writingMode:y.writingMode,glyphOffset:Za,sectionIndex:ai.sectionIndex,isSDF:rn,pixelOffsetTL:fv,pixelOffsetBR:hv,minFontScaleX:Mh,minFontScaleY:dv})}}return gt}var $k=function(y,I,U,$,ae,he,Oe,rt,gt,Mt){if(this.boxStartIndex=y.length,gt){var or=he.top,_r=he.bottom,vr=he.collisionPadding;vr&&(or-=vr[1],_r+=vr[3]);var Fr=_r-or;Fr>0&&(Fr=Math.max(10,Fr),this.circleDiameter=Fr)}else{var ai=he.top*Oe-rt,Gi=he.bottom*Oe+rt,Ti=he.left*Oe-rt,bn=he.right*Oe+rt,rn=he.collisionPadding;if(rn&&(Ti-=rn[0]*Oe,ai-=rn[1]*Oe,bn+=rn[2]*Oe,Gi+=rn[3]*Oe),Mt){var xn=new u(Ti,ai),Dn=new u(bn,ai),Zn=new u(Ti,Gi),ga=new u(bn,Gi),ha=Mt*Math.PI/180;xn._rotate(ha),Dn._rotate(ha),Zn._rotate(ha),ga._rotate(ha),Ti=Math.min(xn.x,Dn.x,Zn.x,ga.x),bn=Math.max(xn.x,Dn.x,Zn.x,ga.x),ai=Math.min(xn.y,Dn.y,Zn.y,ga.y),Gi=Math.max(xn.y,Dn.y,Zn.y,ga.y)}y.emplaceBack(I.x,I.y,Ti,ai,bn,Gi,U,$,ae)}this.boxEndIndex=y.length},jw=function(y,I){if(y===void 0&&(y=[]),I===void 0&&(I=net),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,$=I.compare,ae=U[y];y>0;){var he=y-1>>1,Oe=U[he];if($(ae,Oe)>=0)break;U[y]=Oe,y=he}U[y]=ae},jw.prototype._down=function(y){for(var I=this,U=I.data,$=I.compare,ae=this.length>>1,he=U[y];y<ae;){var Oe=(y<<1)+1,rt=U[Oe],gt=Oe+1;if(gt<this.length&&$(U[gt],rt)<0&&(Oe=gt,rt=U[gt]),$(rt,he)>=0)break;U[y]=rt,y=Oe}U[y]=he};function net(m,y){return m<y?-1:m>y?1:0}function aet(m,y,I){y===void 0&&(y=1),I===void 0&&(I=!1);for(var U=1/0,$=1/0,ae=-1/0,he=-1/0,Oe=m[0],rt=0;rt<Oe.length;rt++){var gt=Oe[rt];(!rt||gt.x<U)&&(U=gt.x),(!rt||gt.y<$)&&($=gt.y),(!rt||gt.x>ae)&&(ae=gt.x),(!rt||gt.y>he)&&(he=gt.y)}var Mt=ae-U,or=he-$,_r=Math.min(Mt,or),vr=_r/2,Fr=new jw([],oet);if(_r===0)return new u(U,$);for(var ai=U;ai<ae;ai+=_r)for(var Gi=$;Gi<he;Gi+=_r)Fr.push(new Ww(ai+vr,Gi+vr,vr,m));for(var Ti=uet(m),bn=Fr.length;Fr.length;){var rn=Fr.pop();(rn.d>Ti.d||!Ti.d)&&(Ti=rn,I&&console.log("found best %d after %d probes",Math.round(1e4*rn.d)/1e4,bn)),!(rn.max-Ti.d<=y)&&(vr=rn.h/2,Fr.push(new Ww(rn.p.x-vr,rn.p.y-vr,vr,m)),Fr.push(new Ww(rn.p.x+vr,rn.p.y-vr,vr,m)),Fr.push(new Ww(rn.p.x-vr,rn.p.y+vr,vr,m)),Fr.push(new Ww(rn.p.x+vr,rn.p.y+vr,vr,m)),bn+=4)}return I&&(console.log("num probes: "+bn),console.log("best distance: "+Ti.d)),Ti.p}function oet(m,y){return y.max-m.max}function Ww(m,y,I,U){this.p=new u(m,y),this.h=I,this.d=set(this.p,U),this.max=this.d+this.h*Math.SQRT2}function set(m,y){for(var I=!1,U=1/0,$=0;$<y.length;$++)for(var ae=y[$],he=0,Oe=ae.length,rt=Oe-1;he<Oe;rt=he++){var gt=ae[he],Mt=ae[rt];gt.y>m.y!=Mt.y>m.y&&m.x<(Mt.x-gt.x)*(m.y-gt.y)/(Mt.y-gt.y)+gt.x&&(I=!I),U=Math.min(U,cg(m,gt,Mt))}return(I?1:-1)*Math.sqrt(U)}function uet(m){for(var y=0,I=0,U=0,$=m[0],ae=0,he=$.length,Oe=he-1;ae<he;Oe=ae++){var rt=$[ae],gt=$[Oe],Mt=rt.x*gt.y-gt.x*rt.y;I+=(rt.x+gt.x)*Mt,U+=(rt.y+gt.y)*Mt,y+=Mt*3}return new Ww(I/y,U/y,0,m)}var Xw=7,sO=Number.POSITIVE_INFINITY;function NQ(m,y){function I($,ae){var he=0,Oe=0;ae<0&&(ae=0);var rt=ae/Math.sqrt(2);switch($){case"top-right":case"top-left":Oe=rt-Xw;break;case"bottom-right":case"bottom-left":Oe=-rt+Xw;break;case"bottom":Oe=-ae+Xw;break;case"top":Oe=ae-Xw;break}switch($){case"top-right":case"bottom-right":he=-rt;break;case"top-left":case"bottom-left":he=rt;break;case"left":he=ae;break;case"right":he=-ae;break}return[he,Oe]}function U($,ae,he){var Oe=0,rt=0;switch(ae=Math.abs(ae),he=Math.abs(he),$){case"top-right":case"top-left":case"top":rt=he-Xw;break;case"bottom-right":case"bottom-left":case"bottom":rt=-he+Xw;break}switch($){case"top-right":case"bottom-right":case"right":Oe=-ae;break;case"top-left":case"bottom-left":case"left":Oe=ae;break}return[Oe,rt]}return y[1]!==sO?U(m,y[0],y[1]):I(m,y[0])}function cet(m,y,I,U,$,ae,he){m.createArrays();var Oe=512*m.overscaling;m.tilePixelRatio=Ci/Oe,m.compareText={},m.iconsNeedLinear=!1;var rt=m.layers[0].layout,gt=m.layers[0]._unevaluatedLayout._values,Mt={};if(m.textSizeData.kind==="composite"){var or=m.textSizeData,_r=or.minZoom,vr=or.maxZoom;Mt.compositeTextSizes=[gt["text-size"].possiblyEvaluate(new Gn(_r),he),gt["text-size"].possiblyEvaluate(new Gn(vr),he)]}if(m.iconSizeData.kind==="composite"){var Fr=m.iconSizeData,ai=Fr.minZoom,Gi=Fr.maxZoom;Mt.compositeIconSizes=[gt["icon-size"].possiblyEvaluate(new Gn(ai),he),gt["icon-size"].possiblyEvaluate(new Gn(Gi),he)]}Mt.layoutTextSize=gt["text-size"].possiblyEvaluate(new Gn(m.zoom+1),he),Mt.layoutIconSize=gt["icon-size"].possiblyEvaluate(new Gn(m.zoom+1),he),Mt.textMaxSize=gt["text-size"].possiblyEvaluate(new Gn(18));for(var Ti=rt.get("text-line-height")*An,bn=rt.get("text-rotation-alignment")==="map"&&rt.get("symbol-placement")!=="point",rn=rt.get("text-keep-upright"),xn=rt.get("text-size"),Dn=function(){var ha=ga[Zn],eo=rt.get("text-font").evaluate(ha,{},he).join(","),za=xn.evaluate(ha,{},he),Za=Mt.layoutTextSize.evaluate(ha,{},he),Ko=Mt.layoutIconSize.evaluate(ha,{},he),to={horizontal:{},vertical:void 0},ao=ha.text,xs=[0,0];if(ao){var jo=ao.toString(),El=rt.get("text-letter-spacing").evaluate(ha,{},he)*An,Iu=gr(jo)?El:0,Cl=rt.get("text-anchor").evaluate(ha,{},he),kl=rt.get("text-variable-anchor");if(!kl){var _l=rt.get("text-radial-offset").evaluate(ha,{},he);_l?xs=NQ(Cl,[_l*An,sO]):xs=rt.get("text-offset").evaluate(ha,{},he).map(function(py){return py*An})}var Qu=bn?"center":rt.get("text-justify").evaluate(ha,{},he),gc=rt.get("symbol-placement"),Af=gc==="point"?rt.get("text-max-width").evaluate(ha,{},he)*An:0,Df=function(){m.allowVerticalPlacement&&jt(jo)&&(to.vertical=Vw(ao,y,I,$,eo,Af,Ti,Cl,"left",Iu,xs,uv.vertical,!0,gc,Za,za))};if(!bn&&kl){for(var Xh=Qu==="auto"?kl.map(function(py){return lO(py)}):[Qu],ch=!1,Xd=0;Xd<Xh.length;Xd++){var Zd=Xh[Xd];if(!to.horizontal[Zd])if(ch)to.horizontal[Zd]=to.horizontal[0];else{var Zh=Vw(ao,y,I,$,eo,Af,Ti,"center",Zd,Iu,xs,uv.horizontal,!1,gc,Za,za);Zh&&(to.horizontal[Zd]=Zh,ch=Zh.positionedLines.length===1)}}Df()}else{Qu==="auto"&&(Qu=lO(Cl));var fv=Vw(ao,y,I,$,eo,Af,Ti,Cl,Qu,Iu,xs,uv.horizontal,!1,gc,Za,za);fv&&(to.horizontal[Qu]=fv),Df(),jt(jo)&&bn&&rn&&(to.vertical=Vw(ao,y,I,$,eo,Af,Ti,Cl,Qu,Iu,xs,uv.vertical,!1,gc,Za,za))}}var hv=void 0,Mh=!1;if(ha.icon&&ha.icon.name){var dv=U[ha.icon.name];dv&&(hv=tp($[ha.icon.name],rt.get("icon-offset").evaluate(ha,{},he),rt.get("icon-anchor").evaluate(ha,{},he)),Mh=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||rt.get("icon-rotate").constantOr(1)!==0)&&(m.iconsNeedLinear=!0))}var yp=VQ(to.horizontal)||to.vertical;m.iconsInText=yp?yp.iconsInText:!1,(yp||hv)&&fet(m,ha,to,hv,U,Mt,Za,Ko,xs,Mh,he)},Zn=0,ga=m.features;Zn<ga.length;Zn+=1)Dn();ae&&m.generateCollisionDebugBuffers()}function lO(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 fet(m,y,I,U,$,ae,he,Oe,rt,gt,Mt){var or=ae.textMaxSize.evaluate(y,{});or===void 0&&(or=he);var _r=m.layers[0].layout,vr=_r.get("icon-offset").evaluate(y,{},Mt),Fr=VQ(I.horizontal),ai=24,Gi=he/ai,Ti=m.tilePixelRatio*Gi,bn=m.tilePixelRatio*or/ai,rn=m.tilePixelRatio*Oe,xn=m.tilePixelRatio*_r.get("symbol-spacing"),Dn=_r.get("text-padding")*m.tilePixelRatio,Zn=_r.get("icon-padding")*m.tilePixelRatio,ga=_r.get("text-max-angle")/180*Math.PI,ha=_r.get("text-rotation-alignment")==="map"&&_r.get("symbol-placement")!=="point",eo=_r.get("icon-rotation-alignment")==="map"&&_r.get("symbol-placement")!=="point",za=_r.get("symbol-placement"),Za=xn/2,Ko=_r.get("icon-text-fit"),to;U&&Ko!=="none"&&(m.allowVerticalPlacement&&I.vertical&&(to=hm(U,I.vertical,Ko,_r.get("icon-text-fit-padding"),vr,Gi)),Fr&&(U=hm(U,Fr,Ko,_r.get("icon-text-fit-padding"),vr,Gi)));var ao=function($w,y0){y0.x<0||y0.x>=Ci||y0.y<0||y0.y>=Ci||het(m,y0,$w,I,U,$,to,m.layers[0],m.collisionBoxArray,y.index,y.sourceLayerIndex,m.index,Ti,Dn,ha,rt,rn,Zn,eo,vr,y,ae,gt,Mt,he)};if(za==="line")for(var xs=0,jo=OQ(y.geometry,0,0,Ci,Ci);xs<jo.length;xs+=1)for(var El=jo[xs],Iu=ret(El,xn,ga,I.vertical||Fr,U,ai,bn,m.overscaling,Ci),Cl=0,kl=Iu;Cl<kl.length;Cl+=1){var _l=kl[Cl],Qu=Fr;(!Qu||!det(m,Qu.text,Za,_l))&&ao(El,_l)}else if(za==="line-center")for(var gc=0,Af=y.geometry;gc<Af.length;gc+=1){var Df=Af[gc];if(Df.length>1){var Xh=tet(Df,ga,I.vertical||Fr,U,ai,bn);Xh&&ao(Df,Xh)}}else if(y.type==="Polygon")for(var ch=0,Xd=Fw(y.geometry,0);ch<Xd.length;ch+=1){var Zd=Xd[ch],Zh=aet(Zd,16);ao(Zd[0],new Wd(Zh.x,Zh.y,0))}else if(y.type==="LineString")for(var fv=0,hv=y.geometry;fv<hv.length;fv+=1){var Mh=hv[fv];ao(Mh,new Wd(Mh[0].x,Mh[0].y,0))}else if(y.type==="Point")for(var dv=0,yp=y.geometry;dv<yp.length;dv+=1)for(var py=yp[dv],z1=0,O1=py;z1<O1.length;z1+=1){var q1=O1[z1];ao([q1],new Wd(q1.x,q1.y,0))}}var TS=255,D1=TS*kd;function UQ(m,y,I,U,$,ae,he,Oe,rt,gt,Mt,or,_r,vr,Fr){var ai=iet(y,I,Oe,$,ae,he,U,m.allowVerticalPlacement),Gi=m.textSizeData,Ti=null;Gi.kind==="source"?(Ti=[kd*$.layout.get("text-size").evaluate(he,{})],Ti[0]>D1&&re(m.layerIds[0]+': Value for "text-size" is >= '+TS+'. Reduce your "text-size".')):Gi.kind==="composite"&&(Ti=[kd*vr.compositeTextSizes[0].evaluate(he,{},Fr),kd*vr.compositeTextSizes[1].evaluate(he,{},Fr)],(Ti[0]>D1||Ti[1]>D1)&&re(m.layerIds[0]+': Value for "text-size" is >= '+TS+'. Reduce your "text-size".')),m.addSymbols(m.text,ai,Ti,Oe,ae,he,gt,y,rt.lineStartIndex,rt.lineLength,_r,Fr);for(var bn=0,rn=Mt;bn<rn.length;bn+=1){var xn=rn[bn];or[xn]=m.text.placedSymbolArray.length-1}return ai.length*4}function VQ(m){for(var y in m)return m[y];return null}function het(m,y,I,U,$,ae,he,Oe,rt,gt,Mt,or,_r,vr,Fr,ai,Gi,Ti,bn,rn,xn,Dn,Zn,ga,ha){var eo,za=m.addToLineVertexArray(y,I),Za,Ko,to,ao,xs=0,jo=0,El=0,Iu=0,Cl=-1,kl=-1,_l={},Qu=K(""),gc=0,Af=0;if(Oe._unevaluatedLayout.getValue("text-radial-offset")===void 0?(eo=Oe.layout.get("text-offset").evaluate(xn,{},ga).map(function(MS){return MS*An}),gc=eo[0],Af=eo[1]):(gc=Oe.layout.get("text-radial-offset").evaluate(xn,{},ga)*An,Af=sO),m.allowVerticalPlacement&&U.vertical){var Df=Oe.layout.get("text-rotate").evaluate(xn,{},ga),Xh=Df+90,ch=U.vertical;to=new $k(rt,y,gt,Mt,or,ch,_r,vr,Fr,Xh),he&&(ao=new $k(rt,y,gt,Mt,or,he,Gi,Ti,Fr,Xh))}if($){var Xd=Oe.layout.get("icon-rotate").evaluate(xn,{}),Zd=Oe.layout.get("icon-text-fit")!=="none",Zh=qQ($,Xd,Zn,Zd),fv=he?qQ(he,Xd,Zn,Zd):void 0;Ko=new $k(rt,y,gt,Mt,or,$,Gi,Ti,!1,Xd),xs=Zh.length*4;var hv=m.iconSizeData,Mh=null;hv.kind==="source"?(Mh=[kd*Oe.layout.get("icon-size").evaluate(xn,{})],Mh[0]>D1&&re(m.layerIds[0]+': Value for "icon-size" is >= '+TS+'. Reduce your "icon-size".')):hv.kind==="composite"&&(Mh=[kd*Dn.compositeIconSizes[0].evaluate(xn,{},ga),kd*Dn.compositeIconSizes[1].evaluate(xn,{},ga)],(Mh[0]>D1||Mh[1]>D1)&&re(m.layerIds[0]+': Value for "icon-size" is >= '+TS+'. Reduce your "icon-size".')),m.addSymbols(m.icon,Zh,Mh,rn,bn,xn,!1,y,za.lineStartIndex,za.lineLength,-1,ga),Cl=m.icon.placedSymbolArray.length-1,fv&&(jo=fv.length*4,m.addSymbols(m.icon,fv,Mh,rn,bn,xn,uv.vertical,y,za.lineStartIndex,za.lineLength,-1,ga),kl=m.icon.placedSymbolArray.length-1)}for(var dv in U.horizontal){var yp=U.horizontal[dv];if(!Za){Qu=K(yp.text);var py=Oe.layout.get("text-rotate").evaluate(xn,{},ga);Za=new $k(rt,y,gt,Mt,or,yp,_r,vr,Fr,py)}var z1=yp.positionedLines.length===1;if(El+=UQ(m,y,yp,ae,Oe,Fr,xn,ai,za,U.vertical?uv.horizontal:uv.horizontalOnly,z1?Object.keys(U.horizontal):[dv],_l,Cl,Dn,ga),z1)break}U.vertical&&(Iu+=UQ(m,y,U.vertical,ae,Oe,Fr,xn,ai,za,uv.vertical,["vertical"],_l,kl,Dn,ga));var O1=Za?Za.boxStartIndex:m.collisionBoxArray.length,q1=Za?Za.boxEndIndex:m.collisionBoxArray.length,$w=to?to.boxStartIndex:m.collisionBoxArray.length,y0=to?to.boxEndIndex:m.collisionBoxArray.length,i6=Ko?Ko.boxStartIndex:m.collisionBoxArray.length,vO=Ko?Ko.boxEndIndex:m.collisionBoxArray.length,n6=ao?ao.boxStartIndex:m.collisionBoxArray.length,pO=ao?ao.boxEndIndex:m.collisionBoxArray.length,Hp=-1,Qw=function(MS,nee){return MS&&MS.circleDiameter?Math.max(MS.circleDiameter,nee):nee};Hp=Qw(Za,Hp),Hp=Qw(to,Hp),Hp=Qw(Ko,Hp),Hp=Qw(ao,Hp);var a6=Hp>-1?1:0;a6&&(Hp*=ha/An),m.glyphOffsetArray.length>=Pu.MAX_GLYPHS&&re("Too many glyphs being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907"),xn.sortKey!==void 0&&m.addToSortKeyRanges(m.symbolInstances.length,xn.sortKey),m.symbolInstances.emplaceBack(y.x,y.y,_l.right>=0?_l.right:-1,_l.center>=0?_l.center:-1,_l.left>=0?_l.left:-1,_l.vertical||-1,Cl,kl,Qu,O1,q1,$w,y0,i6,vO,n6,pO,gt,El,Iu,xs,jo,a6,0,_r,gc,Af,Hp)}function det(m,y,I,U){var $=m.compareText;if(!(y in $))$[y]=[];else for(var ae=$[y],he=ae.length-1;he>=0;he--)if(U.dist(ae[he])<I)return!0;return $[y].push(U),!1}var vet=pg.VectorTileFeature.types,pet=[{name:"a_fade_opacity",components:1,type:"Uint8",offset:0}];function Qk(m,y,I,U,$,ae,he,Oe,rt,gt,Mt,or,_r){var vr=Oe?Math.min(D1,Math.round(Oe[0])):0,Fr=Oe?Math.min(D1,Math.round(Oe[1])):0;m.emplaceBack(y,I,Math.round(U*32),Math.round($*32),ae,he,(vr<<1)+(rt?1:0),Fr,gt*16,Mt*16,or*256,_r*256)}function uO(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 get(m){for(var y=0,I=m.sections;y<I.length;y+=1){var U=I[y];if(Pi(U.text))return!0}return!1}var Zw=function(y){this.layoutVertexArray=new qn,this.indexArray=new vn,this.programConfigurations=y,this.segments=new io,this.dynamicLayoutVertexArray=new vi,this.opacityVertexArray=new li,this.placedSymbolArray=new zo};Zw.prototype.isEmpty=function(){return this.layoutVertexArray.length===0&&this.indexArray.length===0&&this.dynamicLayoutVertexArray.length===0&&this.opacityVertexArray.length===0},Zw.prototype.upload=function(y,I,U,$){this.isEmpty()||(U&&(this.layoutVertexBuffer=y.createVertexBuffer(this.layoutVertexArray,te.members),this.indexBuffer=y.createIndexBuffer(this.indexArray,I),this.dynamicLayoutVertexBuffer=y.createVertexBuffer(this.dynamicLayoutVertexArray,fe.members,!0),this.opacityVertexBuffer=y.createVertexBuffer(this.opacityVertexArray,pet,!0),this.opacityVertexBuffer.itemSize=1),(U||$)&&this.programConfigurations.upload(y))},Zw.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.dynamicLayoutVertexBuffer.destroy(),this.opacityVertexBuffer.destroy())},X("SymbolBuffers",Zw);var AS=function(y,I,U){this.layoutVertexArray=new y,this.layoutAttributes=I,this.indexArray=new U,this.segments=new io,this.collisionVertexArray=new Bi};AS.prototype.upload=function(y){this.layoutVertexBuffer=y.createVertexBuffer(this.layoutVertexArray,this.layoutAttributes),this.indexBuffer=y.createIndexBuffer(this.indexArray),this.collisionVertexBuffer=y.createVertexBuffer(this.collisionVertexArray,ze.members,!0)},AS.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.segments.destroy(),this.collisionVertexBuffer.destroy())},X("CollisionBuffers",AS);var Pu=function(y){this.collisionBoxArray=y.collisionBoxArray,this.zoom=y.zoom,this.overscaling=y.overscaling,this.layers=y.layers,this.layerIds=this.layers.map(function(rt){return rt.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=mp(this.zoom,U["text-size"]),this.iconSizeData=mp(this.zoom,U["icon-size"]);var $=this.layers[0].layout,ae=$.get("symbol-sort-key"),he=$.get("symbol-z-order");this.canOverlap=$.get("text-allow-overlap")||$.get("icon-allow-overlap")||$.get("text-ignore-placement")||$.get("icon-ignore-placement"),this.sortFeaturesByKey=he!=="viewport-y"&&ae.constantOr(1)!==void 0;var Oe=he==="viewport-y"||he==="auto"&&!this.sortFeaturesByKey;this.sortFeaturesByY=Oe&&this.canOverlap,$.get("symbol-placement")==="point"&&(this.writingModes=$.get("text-writing-mode").map(function(rt){return uv[rt]})),this.stateDependentLayerIds=this.layers.filter(function(rt){return rt.isStateDependent()}).map(function(rt){return rt.id}),this.sourceID=y.sourceID};Pu.prototype.createArrays=function(){this.text=new Zw(new hi(this.layers,this.zoom,function(y){return/^text/.test(y)})),this.icon=new Zw(new hi(this.layers,this.zoom,function(y){return/^icon/.test(y)})),this.glyphOffsetArray=new Ul,this.lineVertexArray=new ls,this.symbolInstances=new ol},Pu.prototype.calculateGlyphDependencies=function(y,I,U,$,ae){for(var he=0;he<y.length;he++)if(I[y.charCodeAt(he)]=!0,(U||$)&&ae){var Oe=Fi[y.charAt(he)];Oe&&(I[Oe.charCodeAt(0)]=!0)}},Pu.prototype.populate=function(y,I,U){var $=this.layers[0],ae=$.layout,he=ae.get("text-font"),Oe=ae.get("text-field"),rt=ae.get("icon-image"),gt=(Oe.value.kind!=="constant"||Oe.value.value instanceof Jl&&!Oe.value.value.isEmpty()||Oe.value.value.toString().length>0)&&(he.value.kind!=="constant"||he.value.value.length>0),Mt=rt.value.kind!=="constant"||!!rt.value.value||Object.keys(rt.parameters).length>0,or=ae.get("symbol-sort-key");if(this.features=[],!(!gt&&!Mt)){for(var _r=I.iconDependencies,vr=I.glyphDependencies,Fr=I.availableImages,ai=new Gn(this.zoom),Gi=0,Ti=y;Gi<Ti.length;Gi+=1){var bn=Ti[Gi],rn=bn.feature,xn=bn.id,Dn=bn.index,Zn=bn.sourceLayerIndex,ga=$._featureFilter.needGeometry,ha=Ja(rn,ga);if($._featureFilter.filter(ai,ha,U)){ga||(ha.geometry=On(rn));var eo=void 0;if(gt){var za=$.getValueAndResolveTokens("text-field",ha,U,Fr),Za=Jl.factory(za);get(Za)&&(this.hasRTLText=!0),(!this.hasRTLText||yo()==="unavailable"||this.hasRTLText&&Es.isParsed())&&(eo=yi(Za,$,ha))}var Ko=void 0;if(Mt){var to=$.getValueAndResolveTokens("icon-image",ha,U,Fr);to instanceof hl?Ko=to:Ko=hl.fromString(to)}if(!(!eo&&!Ko)){var ao=this.sortFeaturesByKey?or.evaluate(ha,{},U):void 0,xs={id:xn,text:eo,icon:Ko,index:Dn,sourceLayerIndex:Zn,geometry:ha.geometry,properties:rn.properties,type:vet[rn.type],sortKey:ao};if(this.features.push(xs),Ko&&(_r[Ko.name]=!0),eo){var jo=he.evaluate(ha,{},U).join(","),El=ae.get("text-rotation-alignment")==="map"&&ae.get("symbol-placement")!=="point";this.allowVerticalPlacement=this.writingModes&&this.writingModes.indexOf(uv.vertical)>=0;for(var Iu=0,Cl=eo.sections;Iu<Cl.length;Iu+=1){var kl=Cl[Iu];if(kl.image)_r[kl.image.name]=!0;else{var _l=jt(eo.toString()),Qu=kl.fontStack||jo,gc=vr[Qu]=vr[Qu]||{};this.calculateGlyphDependencies(kl.text,gc,El,this.allowVerticalPlacement,_l)}}}}}}ae.get("symbol-placement")==="line"&&(this.features=dn(this.features)),this.sortFeaturesByKey&&this.features.sort(function(Af,Df){return Af.sortKey-Df.sortKey})}},Pu.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))},Pu.prototype.isEmpty=function(){return this.symbolInstances.length===0&&!this.hasRTLText},Pu.prototype.uploadPending=function(){return!this.uploaded||this.text.programConfigurations.needsUpload||this.icon.programConfigurations.needsUpload},Pu.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},Pu.prototype.destroyDebugData=function(){this.textCollisionBox.destroy(),this.iconCollisionBox.destroy()},Pu.prototype.destroy=function(){this.text.destroy(),this.icon.destroy(),this.hasDebugData()&&this.destroyDebugData()},Pu.prototype.addToLineVertexArray=function(y,I){var U=this.lineVertexArray.length;if(y.segment!==void 0){for(var $=y.dist(I[y.segment+1]),ae=y.dist(I[y.segment]),he={},Oe=y.segment+1;Oe<I.length;Oe++)he[Oe]={x:I[Oe].x,y:I[Oe].y,tileUnitDistanceFromAnchor:$},Oe<I.length-1&&($+=I[Oe+1].dist(I[Oe]));for(var rt=y.segment||0;rt>=0;rt--)he[rt]={x:I[rt].x,y:I[rt].y,tileUnitDistanceFromAnchor:ae},rt>0&&(ae+=I[rt-1].dist(I[rt]));for(var gt=0;gt<I.length;gt++){var Mt=he[gt];this.lineVertexArray.emplaceBack(Mt.x,Mt.y,Mt.tileUnitDistanceFromAnchor)}}return{lineStartIndex:U,lineLength:this.lineVertexArray.length-U}},Pu.prototype.addSymbols=function(y,I,U,$,ae,he,Oe,rt,gt,Mt,or,_r){for(var vr=y.indexArray,Fr=y.layoutVertexArray,ai=y.segments.prepareSegment(4*I.length,Fr,vr,this.canOverlap?he.sortKey:void 0),Gi=this.glyphOffsetArray.length,Ti=ai.vertexLength,bn=this.allowVerticalPlacement&&Oe===uv.vertical?Math.PI/2:0,rn=he.text&&he.text.sections,xn=0;xn<I.length;xn++){var Dn=I[xn],Zn=Dn.tl,ga=Dn.tr,ha=Dn.bl,eo=Dn.br,za=Dn.tex,Za=Dn.pixelOffsetTL,Ko=Dn.pixelOffsetBR,to=Dn.minFontScaleX,ao=Dn.minFontScaleY,xs=Dn.glyphOffset,jo=Dn.isSDF,El=Dn.sectionIndex,Iu=ai.vertexLength,Cl=xs[1];Qk(Fr,rt.x,rt.y,Zn.x,Cl+Zn.y,za.x,za.y,U,jo,Za.x,Za.y,to,ao),Qk(Fr,rt.x,rt.y,ga.x,Cl+ga.y,za.x+za.w,za.y,U,jo,Ko.x,Za.y,to,ao),Qk(Fr,rt.x,rt.y,ha.x,Cl+ha.y,za.x,za.y+za.h,U,jo,Za.x,Ko.y,to,ao),Qk(Fr,rt.x,rt.y,eo.x,Cl+eo.y,za.x+za.w,za.y+za.h,U,jo,Ko.x,Ko.y,to,ao),uO(y.dynamicLayoutVertexArray,rt,bn),vr.emplaceBack(Iu,Iu+1,Iu+2),vr.emplaceBack(Iu+1,Iu+2,Iu+3),ai.vertexLength+=4,ai.primitiveLength+=2,this.glyphOffsetArray.emplaceBack(xs[0]),(xn===I.length-1||El!==I[xn+1].sectionIndex)&&y.programConfigurations.populatePaintArrays(Fr.length,he,he.index,{},_r,rn&&rn[El])}y.placedSymbolArray.emplaceBack(rt.x,rt.y,Gi,this.glyphOffsetArray.length-Gi,Ti,gt,Mt,rt.segment,U?U[0]:0,U?U[1]:0,$[0],$[1],Oe,0,!1,0,or)},Pu.prototype._addCollisionDebugVertex=function(y,I,U,$,ae,he){return I.emplaceBack(0,0),y.emplaceBack(U.x,U.y,$,ae,Math.round(he.x),Math.round(he.y))},Pu.prototype.addCollisionDebugVertices=function(y,I,U,$,ae,he,Oe){var rt=ae.segments.prepareSegment(4,ae.layoutVertexArray,ae.indexArray),gt=rt.vertexLength,Mt=ae.layoutVertexArray,or=ae.collisionVertexArray,_r=Oe.anchorX,vr=Oe.anchorY;this._addCollisionDebugVertex(Mt,or,he,_r,vr,new u(y,I)),this._addCollisionDebugVertex(Mt,or,he,_r,vr,new u(U,I)),this._addCollisionDebugVertex(Mt,or,he,_r,vr,new u(U,$)),this._addCollisionDebugVertex(Mt,or,he,_r,vr,new u(y,$)),rt.vertexLength+=4;var Fr=ae.indexArray;Fr.emplaceBack(gt,gt+1),Fr.emplaceBack(gt+1,gt+2),Fr.emplaceBack(gt+2,gt+3),Fr.emplaceBack(gt+3,gt),rt.primitiveLength+=4},Pu.prototype.addDebugCollisionBoxes=function(y,I,U,$){for(var ae=y;ae<I;ae++){var he=this.collisionBoxArray.get(ae),Oe=he.x1,rt=he.y1,gt=he.x2,Mt=he.y2;this.addCollisionDebugVertices(Oe,rt,gt,Mt,$?this.textCollisionBox:this.iconCollisionBox,he.anchorPoint,U)}},Pu.prototype.generateCollisionDebugBuffers=function(){this.hasDebugData()&&this.destroyDebugData(),this.textCollisionBox=new AS(Ki,ut.members,oa),this.iconCollisionBox=new AS(Ki,ut.members,oa);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)}},Pu.prototype._deserializeCollisionBoxesForSymbol=function(y,I,U,$,ae,he,Oe,rt,gt){for(var Mt={},or=I;or<U;or++){var _r=y.get(or);Mt.textBox={x1:_r.x1,y1:_r.y1,x2:_r.x2,y2:_r.y2,anchorPointX:_r.anchorPointX,anchorPointY:_r.anchorPointY},Mt.textFeatureIndex=_r.featureIndex;break}for(var vr=$;vr<ae;vr++){var Fr=y.get(vr);Mt.verticalTextBox={x1:Fr.x1,y1:Fr.y1,x2:Fr.x2,y2:Fr.y2,anchorPointX:Fr.anchorPointX,anchorPointY:Fr.anchorPointY},Mt.verticalTextFeatureIndex=Fr.featureIndex;break}for(var ai=he;ai<Oe;ai++){var Gi=y.get(ai);Mt.iconBox={x1:Gi.x1,y1:Gi.y1,x2:Gi.x2,y2:Gi.y2,anchorPointX:Gi.anchorPointX,anchorPointY:Gi.anchorPointY},Mt.iconFeatureIndex=Gi.featureIndex;break}for(var Ti=rt;Ti<gt;Ti++){var bn=y.get(Ti);Mt.verticalIconBox={x1:bn.x1,y1:bn.y1,x2:bn.x2,y2:bn.y2,anchorPointX:bn.anchorPointX,anchorPointY:bn.anchorPointY},Mt.verticalIconFeatureIndex=bn.featureIndex;break}return Mt},Pu.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))}},Pu.prototype.hasTextData=function(){return this.text.segments.get().length>0},Pu.prototype.hasIconData=function(){return this.icon.segments.get().length>0},Pu.prototype.hasDebugData=function(){return this.textCollisionBox&&this.iconCollisionBox},Pu.prototype.hasTextCollisionBoxData=function(){return this.hasDebugData()&&this.textCollisionBox.segments.get().length>0},Pu.prototype.hasIconCollisionBoxData=function(){return this.hasDebugData()&&this.iconCollisionBox.segments.get().length>0},Pu.prototype.addIndicesForPlacedSymbol=function(y,I){for(var U=y.placedSymbolArray.get(I),$=U.vertexStartIndex+U.numGlyphs*4,ae=U.vertexStartIndex;ae<$;ae+=4)y.indexArray.emplaceBack(ae,ae+1,ae+2),y.indexArray.emplaceBack(ae+1,ae+2,ae+3)},Pu.prototype.getSortedSymbolIndexes=function(y){if(this.sortedAngle===y&&this.symbolInstanceIndexes!==void 0)return this.symbolInstanceIndexes;for(var I=Math.sin(y),U=Math.cos(y),$=[],ae=[],he=[],Oe=0;Oe<this.symbolInstances.length;++Oe){he.push(Oe);var rt=this.symbolInstances.get(Oe);$.push(Math.round(I*rt.anchorX+U*rt.anchorY)|0),ae.push(rt.featureIndex)}return he.sort(function(gt,Mt){return $[gt]-$[Mt]||ae[Mt]-ae[gt]}),he},Pu.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})},Pu.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,$=this.symbolInstanceIndexes;U<$.length;U+=1){var ae=$[U],he=this.symbolInstances.get(ae);this.featureSortOrder.push(he.featureIndex),[he.rightJustifiedTextSymbolIndex,he.centerJustifiedTextSymbolIndex,he.leftJustifiedTextSymbolIndex].forEach(function(Oe,rt,gt){Oe>=0&>.indexOf(Oe)===rt&&I.addIndicesForPlacedSymbol(I.text,Oe)}),he.verticalPlacedTextSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.text,he.verticalPlacedTextSymbolIndex),he.placedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,he.placedIconSymbolIndex),he.verticalPlacedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,he.verticalPlacedIconSymbolIndex)}this.text.indexBuffer&&this.text.indexBuffer.updateData(this.text.indexArray),this.icon.indexBuffer&&this.icon.indexBuffer.updateData(this.icon.indexArray)}},X("SymbolBucket",Pu,{omit:["layers","collisionBoxArray","features","compareText"]}),Pu.MAX_GLYPHS=65535,Pu.addDynamicAttributes=uO;function met(m,y){return y.replace(/{([^{}]+)}/g,function(I,U){return U in m?String(m[U]):""})}var yet=new Br({"symbol-placement":new Ee(Fn.layout_symbol["symbol-placement"]),"symbol-spacing":new Ee(Fn.layout_symbol["symbol-spacing"]),"symbol-avoid-edges":new Ee(Fn.layout_symbol["symbol-avoid-edges"]),"symbol-sort-key":new xt(Fn.layout_symbol["symbol-sort-key"]),"symbol-z-order":new Ee(Fn.layout_symbol["symbol-z-order"]),"icon-allow-overlap":new Ee(Fn.layout_symbol["icon-allow-overlap"]),"icon-ignore-placement":new Ee(Fn.layout_symbol["icon-ignore-placement"]),"icon-optional":new Ee(Fn.layout_symbol["icon-optional"]),"icon-rotation-alignment":new Ee(Fn.layout_symbol["icon-rotation-alignment"]),"icon-size":new xt(Fn.layout_symbol["icon-size"]),"icon-text-fit":new Ee(Fn.layout_symbol["icon-text-fit"]),"icon-text-fit-padding":new Ee(Fn.layout_symbol["icon-text-fit-padding"]),"icon-image":new xt(Fn.layout_symbol["icon-image"]),"icon-rotate":new xt(Fn.layout_symbol["icon-rotate"]),"icon-padding":new Ee(Fn.layout_symbol["icon-padding"]),"icon-keep-upright":new Ee(Fn.layout_symbol["icon-keep-upright"]),"icon-offset":new xt(Fn.layout_symbol["icon-offset"]),"icon-anchor":new xt(Fn.layout_symbol["icon-anchor"]),"icon-pitch-alignment":new Ee(Fn.layout_symbol["icon-pitch-alignment"]),"text-pitch-alignment":new Ee(Fn.layout_symbol["text-pitch-alignment"]),"text-rotation-alignment":new Ee(Fn.layout_symbol["text-rotation-alignment"]),"text-field":new xt(Fn.layout_symbol["text-field"]),"text-font":new xt(Fn.layout_symbol["text-font"]),"text-size":new xt(Fn.layout_symbol["text-size"]),"text-max-width":new xt(Fn.layout_symbol["text-max-width"]),"text-line-height":new Ee(Fn.layout_symbol["text-line-height"]),"text-letter-spacing":new xt(Fn.layout_symbol["text-letter-spacing"]),"text-justify":new xt(Fn.layout_symbol["text-justify"]),"text-radial-offset":new xt(Fn.layout_symbol["text-radial-offset"]),"text-variable-anchor":new Ee(Fn.layout_symbol["text-variable-anchor"]),"text-anchor":new xt(Fn.layout_symbol["text-anchor"]),"text-max-angle":new Ee(Fn.layout_symbol["text-max-angle"]),"text-writing-mode":new Ee(Fn.layout_symbol["text-writing-mode"]),"text-rotate":new xt(Fn.layout_symbol["text-rotate"]),"text-padding":new Ee(Fn.layout_symbol["text-padding"]),"text-keep-upright":new Ee(Fn.layout_symbol["text-keep-upright"]),"text-transform":new xt(Fn.layout_symbol["text-transform"]),"text-offset":new xt(Fn.layout_symbol["text-offset"]),"text-allow-overlap":new Ee(Fn.layout_symbol["text-allow-overlap"]),"text-ignore-placement":new Ee(Fn.layout_symbol["text-ignore-placement"]),"text-optional":new Ee(Fn.layout_symbol["text-optional"])}),_et=new Br({"icon-opacity":new xt(Fn.paint_symbol["icon-opacity"]),"icon-color":new xt(Fn.paint_symbol["icon-color"]),"icon-halo-color":new xt(Fn.paint_symbol["icon-halo-color"]),"icon-halo-width":new xt(Fn.paint_symbol["icon-halo-width"]),"icon-halo-blur":new xt(Fn.paint_symbol["icon-halo-blur"]),"icon-translate":new Ee(Fn.paint_symbol["icon-translate"]),"icon-translate-anchor":new Ee(Fn.paint_symbol["icon-translate-anchor"]),"text-opacity":new xt(Fn.paint_symbol["text-opacity"]),"text-color":new xt(Fn.paint_symbol["text-color"],{runtimeType:Ol,getOverride:function(m){return m.textColor},hasOverride:function(m){return!!m.textColor}}),"text-halo-color":new xt(Fn.paint_symbol["text-halo-color"]),"text-halo-width":new xt(Fn.paint_symbol["text-halo-width"]),"text-halo-blur":new xt(Fn.paint_symbol["text-halo-blur"]),"text-translate":new Ee(Fn.paint_symbol["text-translate"]),"text-translate-anchor":new Ee(Fn.paint_symbol["text-translate-anchor"])}),cO={paint:_et,layout:yet},Yw=function(y){this.type=y.property.overrides?y.property.overrides.runtimeType:ac,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},X("FormatSectionOverride",Yw,{omit:["defaultValue"]});var xet=function(m){function y(I){m.call(this,I,cO)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.recalculate=function(U,$){if(m.prototype.recalculate.call(this,U,$),this.layout.get("icon-rotation-alignment")==="auto"&&(this.layout.get("symbol-placement")!=="point"?this.layout._values["icon-rotation-alignment"]="map":this.layout._values["icon-rotation-alignment"]="viewport"),this.layout.get("text-rotation-alignment")==="auto"&&(this.layout.get("symbol-placement")!=="point"?this.layout._values["text-rotation-alignment"]="map":this.layout._values["text-rotation-alignment"]="viewport"),this.layout.get("text-pitch-alignment")==="auto"&&(this.layout._values["text-pitch-alignment"]=this.layout.get("text-rotation-alignment")),this.layout.get("icon-pitch-alignment")==="auto"&&(this.layout._values["icon-pitch-alignment"]=this.layout.get("icon-rotation-alignment")),this.layout.get("symbol-placement")==="point"){var ae=this.layout.get("text-writing-mode");if(ae){for(var he=[],Oe=0,rt=ae;Oe<rt.length;Oe+=1){var gt=rt[Oe];he.indexOf(gt)<0&&he.push(gt)}this.layout._values["text-writing-mode"]=he}else this.layout._values["text-writing-mode"]=["horizontal"]}this._setPaintOverrides()},y.prototype.getValueAndResolveTokens=function(U,$,ae,he){var Oe=this.layout.get(U).evaluate($,{},ae,he),rt=this._unevaluatedLayout._values[U];return!rt.isDataDriven()&&!Ua(rt.value)&&Oe?met($.properties,Oe):Oe},y.prototype.createBucket=function(U){return new Pu(U)},y.prototype.queryRadius=function(){return 0},y.prototype.queryIntersectsFeature=function(){return!1},y.prototype._setPaintOverrides=function(){for(var U=0,$=cO.paint.overridableProperties;U<$.length;U+=1){var ae=$[U];if(y.hasPaintOverride(this.layout,ae)){var he=this.paint.get(ae),Oe=new Yw(he),rt=new Ac(Oe,he.property.specification),gt=null;he.value.kind==="constant"||he.value.kind==="source"?gt=new Vc("source",rt):gt=new hc("composite",rt,he.value.zoomStops,he.value._interpolationType),this.paint._values[ae]=new vl(he.property,gt,he.parameters)}}},y.prototype._handleOverridablePaintPropertyUpdate=function(U,$,ae){return!this.layout||$.isDataDriven()||ae.isDataDriven()?!1:y.hasPaintOverride(this.layout,U)},y.hasPaintOverride=function(U,$){var ae=U.get("text-field"),he=cO.paint.properties[$],Oe=!1,rt=function(or){for(var _r=0,vr=or;_r<vr.length;_r+=1){var Fr=vr[_r];if(he.overrides&&he.overrides.hasOverride(Fr)){Oe=!0;return}}};if(ae.value.kind==="constant"&&ae.value.value instanceof Jl)rt(ae.value.value.sections);else if(ae.value.kind==="source"){var gt=function(or){if(!Oe)if(or instanceof Go&&Cs(or.value)===ml){var _r=or.value;rt(_r.sections)}else or instanceof Gu?rt(or.sections):or.eachChild(gt)},Mt=ae.value;Mt._styleExpression&>(Mt._styleExpression.expression)}return Oe},y}(mi),bet=new Br({"background-color":new Ee(Fn.paint_background["background-color"]),"background-pattern":new Ir(Fn.paint_background["background-pattern"]),"background-opacity":new Ee(Fn.paint_background["background-opacity"])}),wet={paint:bet},Tet=function(m){function y(I){m.call(this,I,wet)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y}(mi),Aet=new Br({"raster-opacity":new Ee(Fn.paint_raster["raster-opacity"]),"raster-hue-rotate":new Ee(Fn.paint_raster["raster-hue-rotate"]),"raster-brightness-min":new Ee(Fn.paint_raster["raster-brightness-min"]),"raster-brightness-max":new Ee(Fn.paint_raster["raster-brightness-max"]),"raster-saturation":new Ee(Fn.paint_raster["raster-saturation"]),"raster-contrast":new Ee(Fn.paint_raster["raster-contrast"]),"raster-resampling":new Ee(Fn.paint_raster["raster-resampling"]),"raster-fade-duration":new Ee(Fn.paint_raster["raster-fade-duration"])}),Met={paint:Aet},Eet=function(m){function y(I){m.call(this,I,Met)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y}(mi);function Cet(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 ket=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}(mi),Let={circle:U9,heatmap:Lw,hillshade:_k,fill:Qx,"fill-extrusion":fm,line:S,symbol:xet,background:Tet,raster:Eet};function Pet(m){return m.type==="custom"?new ket(m):new Let[m.type](m)}var GQ=f.HTMLImageElement,HQ=f.HTMLCanvasElement,jQ=f.HTMLVideoElement,WQ=f.ImageData,e6=f.ImageBitmap,ib=function(y,I,U,$){this.context=y,this.format=U,this.texture=y.gl.createTexture(),this.update(I,$)};ib.prototype.update=function(y,I,U){var $=y.width,ae=y.height,he=(!this.size||this.size[0]!==$||this.size[1]!==ae)&&!U,Oe=this,rt=Oe.context,gt=rt.gl;if(this.useMipmap=!!(I&&I.useMipmap),gt.bindTexture(gt.TEXTURE_2D,this.texture),rt.pixelStoreUnpackFlipY.set(!1),rt.pixelStoreUnpack.set(1),rt.pixelStoreUnpackPremultiplyAlpha.set(this.format===gt.RGBA&&(!I||I.premultiply!==!1)),he)this.size=[$,ae],y instanceof GQ||y instanceof HQ||y instanceof jQ||y instanceof WQ||e6&&y instanceof e6?gt.texImage2D(gt.TEXTURE_2D,0,this.format,this.format,gt.UNSIGNED_BYTE,y):gt.texImage2D(gt.TEXTURE_2D,0,this.format,$,ae,0,this.format,gt.UNSIGNED_BYTE,y.data);else{var Mt=U||{x:0,y:0},or=Mt.x,_r=Mt.y;y instanceof GQ||y instanceof HQ||y instanceof jQ||y instanceof WQ||e6&&y instanceof e6?gt.texSubImage2D(gt.TEXTURE_2D,0,or,_r,gt.RGBA,gt.UNSIGNED_BYTE,y):gt.texSubImage2D(gt.TEXTURE_2D,0,or,_r,$,ae,gt.RGBA,gt.UNSIGNED_BYTE,y.data)}this.useMipmap&&this.isSizePowerOfTwo()&>.generateMipmap(gt.TEXTURE_2D)},ib.prototype.bind=function(y,I,U){var $=this,ae=$.context,he=ae.gl;he.bindTexture(he.TEXTURE_2D,this.texture),U===he.LINEAR_MIPMAP_NEAREST&&!this.isSizePowerOfTwo()&&(U=he.LINEAR),y!==this.filter&&(he.texParameteri(he.TEXTURE_2D,he.TEXTURE_MAG_FILTER,y),he.texParameteri(he.TEXTURE_2D,he.TEXTURE_MIN_FILTER,U||y),this.filter=y),I!==this.wrap&&(he.texParameteri(he.TEXTURE_2D,he.TEXTURE_WRAP_S,I),he.texParameteri(he.TEXTURE_2D,he.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 fO=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()})};fO.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))},fO.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={},O(["receive","process"],this),this.invoker=new fO(this.process),this.target.addEventListener("message",this.receive,!1),this.globalScope=ke()?y:f};Kw.prototype.send=function(y,I,U,$,ae){var he=this;ae===void 0&&(ae=!1);var Oe=Math.round(Math.random()*1e18).toString(36).substring(0,10);U&&(this.callbacks[Oe]=U);var rt=Se(this.globalScope)?void 0:[];return this.target.postMessage({id:Oe,type:y,hasCallback:!!U,targetMapId:$,mustQueue:ae,sourceMapId:this.mapId,data:He(I,rt)},rt),{cancel:function(){U&&delete he.callbacks[Oe],he.target.postMessage({id:Oe,type:"<cancel>",targetMapId:$,sourceMapId:he.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 $=this.cancelCallbacks[U];delete this.cancelCallbacks[U],$&&$()}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 $=this.callbacks[y];delete this.callbacks[y],$&&(I.error?$(Ye(I.error)):$(null,Ye(I.data)))}else{var ae=!1,he=Se(this.globalScope)?void 0:[],Oe=I.hasCallback?function(_r,vr){ae=!0,delete U.cancelCallbacks[y],U.target.postMessage({id:y,type:"<response>",sourceMapId:U.mapId,error:_r?He(_r):null,data:He(vr,he)},he)}:function(_r){ae=!0},rt=null,gt=Ye(I.data);if(this.parent[I.type])rt=this.parent[I.type](I.sourceMapId,gt,Oe);else if(this.parent.getWorkerSource){var Mt=I.type.split("."),or=this.parent.getWorkerSource(I.sourceMapId,Mt[0],gt.source);rt=or[Mt[1]](gt,Oe)}else Oe(new Error("Could not find function "+I.type));!ae&&rt&&rt.cancel&&(this.cancelCallbacks[y]=rt.cancel)}},Kw.prototype.remove=function(){this.invoker.remove(),this.target.removeEventListener("message",this.receive,!1)};function Iet(m,y,I){y=Math.pow(2,I)-y-1;var U=XQ(m*256,y*256,I),$=XQ((m+1)*256,(y+1)*256,I);return U[0]+","+U[1]+","+$[0]+","+$[1]}function XQ(m,y,I){var U=2*Math.PI*6378137/256/Math.pow(2,I),$=m*U-2*Math.PI*6378137/2,ae=y*U-2*Math.PI*6378137/2;return[$,ae]}var lh=function(y,I){y&&(I?this.setSouthWest(y).setNorthEast(I):y.length===4?this.setSouthWest([y[0],y[1]]).setNorthEast([y[2],y[3]]):this.setSouthWest(y[0]).setNorthEast(y[1]))};lh.prototype.setNorthEast=function(y){return this._ne=y instanceof Hc?new Hc(y.lng,y.lat):Hc.convert(y),this},lh.prototype.setSouthWest=function(y){return this._sw=y instanceof Hc?new Hc(y.lng,y.lat):Hc.convert(y),this},lh.prototype.extend=function(y){var I=this._sw,U=this._ne,$,ae;if(y instanceof Hc)$=y,ae=y;else if(y instanceof lh){if($=y._sw,ae=y._ne,!$||!ae)return this}else{if(Array.isArray(y))if(y.length===4||y.every(Array.isArray)){var he=y;return this.extend(lh.convert(he))}else{var Oe=y;return this.extend(Hc.convert(Oe))}return this}return!I&&!U?(this._sw=new Hc($.lng,$.lat),this._ne=new Hc(ae.lng,ae.lat)):(I.lng=Math.min($.lng,I.lng),I.lat=Math.min($.lat,I.lat),U.lng=Math.max(ae.lng,U.lng),U.lat=Math.max(ae.lat,U.lat)),this},lh.prototype.getCenter=function(){return new Hc((this._sw.lng+this._ne.lng)/2,(this._sw.lat+this._ne.lat)/2)},lh.prototype.getSouthWest=function(){return this._sw},lh.prototype.getNorthEast=function(){return this._ne},lh.prototype.getNorthWest=function(){return new Hc(this.getWest(),this.getNorth())},lh.prototype.getSouthEast=function(){return new Hc(this.getEast(),this.getSouth())},lh.prototype.getWest=function(){return this._sw.lng},lh.prototype.getSouth=function(){return this._sw.lat},lh.prototype.getEast=function(){return this._ne.lng},lh.prototype.getNorth=function(){return this._ne.lat},lh.prototype.toArray=function(){return[this._sw.toArray(),this._ne.toArray()]},lh.prototype.toString=function(){return"LngLatBounds("+this._sw.toString()+", "+this._ne.toString()+")"},lh.prototype.isEmpty=function(){return!(this._sw&&this._ne)},lh.prototype.contains=function(y){var I=Hc.convert(y),U=I.lng,$=I.lat,ae=this._sw.lat<=$&&$<=this._ne.lat,he=this._sw.lng<=U&&U<=this._ne.lng;return this._sw.lng>this._ne.lng&&(he=this._sw.lng>=U&&U>=this._ne.lng),ae&&he},lh.convert=function(y){return!y||y instanceof lh?y:new lh(y)};var ZQ=63710088e-1,Hc=function(y,I){if(isNaN(y)||isNaN(I))throw new Error("Invalid LngLat object: ("+y+", "+I+")");if(this.lng=+y,this.lat=+I,this.lat>90||this.lat<-90)throw new Error("Invalid LngLat latitude value: must be between -90 and 90")};Hc.prototype.wrap=function(){return new Hc(C(this.lng,-180,180),this.lat)},Hc.prototype.toArray=function(){return[this.lng,this.lat]},Hc.prototype.toString=function(){return"LngLat("+this.lng+", "+this.lat+")"},Hc.prototype.distanceTo=function(y){var I=Math.PI/180,U=this.lat*I,$=y.lat*I,ae=Math.sin(U)*Math.sin($)+Math.cos(U)*Math.cos($)*Math.cos((y.lng-this.lng)*I),he=ZQ*Math.acos(Math.min(ae,1));return he},Hc.prototype.toBounds=function(y){y===void 0&&(y=0);var I=40075017,U=360*y/I,$=U/Math.cos(Math.PI/180*this.lat);return new lh(new Hc(this.lng-$,this.lat-U),new Hc(this.lng+$,this.lat+U))},Hc.convert=function(y){if(y instanceof Hc)return y;if(Array.isArray(y)&&(y.length===2||y.length===3))return new Hc(Number(y[0]),Number(y[1]));if(!Array.isArray(y)&&typeof y=="object"&&y!==null)return new Hc(Number("lng"in y?y.lng:y.lon),Number(y.lat));throw new Error("`LngLatLike` argument must be specified as a LngLat instance, an object {lng: <lng>, lat: <lat>}, an object {lon: <lng>, lat: <lat>}, or an array of [<lng>, <lat>]")};var YQ=2*Math.PI*ZQ;function KQ(m){return YQ*Math.cos(m*Math.PI/180)}function JQ(m){return(180+m)/360}function $Q(m){return(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+m*Math.PI/360)))/360}function QQ(m,y){return m/KQ(y)}function Ret(m){return m*360-180}function hO(m){var y=180-m*360;return 360/Math.PI*Math.atan(Math.exp(y*Math.PI/180))-90}function Det(m,y){return m*KQ(hO(y))}function Fet(m){return 1/Math.cos(m*Math.PI/180)}var nb=function(y,I,U){U===void 0&&(U=0),this.x=+y,this.y=+I,this.z=+U};nb.fromLngLat=function(y,I){I===void 0&&(I=0);var U=Hc.convert(y);return new nb(JQ(U.lng),$Q(U.lat),QQ(I,U.lat))},nb.prototype.toLngLat=function(){return new Hc(Ret(this.x),hO(this.y))},nb.prototype.toAltitude=function(){return Det(this.z,this.y)},nb.prototype.meterInMercatorCoordinateUnits=function(){return 1/YQ*Fet(hO(this.y))};var ab=function(y,I,U){this.z=y,this.x=I,this.y=U,this.key=SS(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=Iet(this.x,this.y,this.z),$=zet(this.z,this.x,this.y);return y[(this.x+this.y)%y.length].replace("{prefix}",(this.x%16).toString(16)+(this.y%16).toString(16)).replace("{z}",String(this.z)).replace("{x}",String(this.x)).replace("{y}",String(I==="tms"?Math.pow(2,this.z)-this.y-1:this.y)).replace("{quadkey}",$).replace("{bbox-epsg-3857}",U)},ab.prototype.getTilePoint=function(y){var I=Math.pow(2,this.z);return new u((y.x*I-this.x)*Ci,(y.y*I-this.y)*Ci)},ab.prototype.toString=function(){return this.z+"/"+this.x+"/"+this.y};var eee=function(y,I){this.wrap=y,this.canonical=I,this.key=SS(y,I.z,I.z,I.x,I.y)},uh=function(y,I,U,$,ae){this.overscaledZ=y,this.wrap=I,this.canonical=new ab(U,+$,+ae),this.key=SS(I,y,U,$,ae)};uh.prototype.equals=function(y){return this.overscaledZ===y.overscaledZ&&this.wrap===y.wrap&&this.canonical.equals(y.canonical)},uh.prototype.scaledTo=function(y){var I=this.canonical.z-y;return y>this.canonical.z?new uh(y,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y):new uh(y,this.wrap,y,this.canonical.x>>I,this.canonical.y>>I)},uh.prototype.calculateScaledKey=function(y,I){var U=this.canonical.z-y;return y>this.canonical.z?SS(this.wrap*+I,y,this.canonical.z,this.canonical.x,this.canonical.y):SS(this.wrap*+I,y,y,this.canonical.x>>U,this.canonical.y>>U)},uh.prototype.isChildOf=function(y){if(y.wrap!==this.wrap)return!1;var I=this.canonical.z-y.canonical.z;return y.overscaledZ===0||y.overscaledZ<this.overscaledZ&&y.canonical.x===this.canonical.x>>I&&y.canonical.y===this.canonical.y>>I},uh.prototype.children=function(y){if(this.overscaledZ>=y)return[new uh(this.overscaledZ+1,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y)];var I=this.canonical.z+1,U=this.canonical.x*2,$=this.canonical.y*2;return[new uh(I,this.wrap,I,U,$),new uh(I,this.wrap,I,U+1,$),new uh(I,this.wrap,I,U,$+1),new uh(I,this.wrap,I,U+1,$+1)]},uh.prototype.isLessThan=function(y){return this.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},uh.prototype.wrapped=function(){return new uh(this.overscaledZ,0,this.canonical.z,this.canonical.x,this.canonical.y)},uh.prototype.unwrapTo=function(y){return new uh(this.overscaledZ,y,this.canonical.z,this.canonical.x,this.canonical.y)},uh.prototype.overscaleFactor=function(){return Math.pow(2,this.overscaledZ-this.canonical.z)},uh.prototype.toUnwrapped=function(){return new eee(this.wrap,this.canonical)},uh.prototype.toString=function(){return this.overscaledZ+"/"+this.canonical.x+"/"+this.canonical.y},uh.prototype.getTilePoint=function(y){return this.canonical.getTilePoint(new nb(y.x-this.wrap,y.y))};function SS(m,y,I,U,$){m*=2,m<0&&(m=m*-1-1);var ae=1<<I;return(ae*ae*m+ae*$+U).toString(36)+I.toString(36)+y.toString(36)}function zet(m,y,I){for(var U="",$,ae=m;ae>0;ae--)$=1<<ae-1,U+=(y&$?1:0)+(I&$?2:0);return U}X("CanonicalTileID",ab),X("OverscaledTileID",uh,{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 $=this.dim=I.height-2;this.data=new Uint32Array(I.data.buffer),this.encoding=U||"mapbox";for(var ae=0;ae<$;ae++)this.data[this._idx(-1,ae)]=this.data[this._idx(0,ae)],this.data[this._idx($,ae)]=this.data[this._idx($-1,ae)],this.data[this._idx(ae,-1)]=this.data[this._idx(ae,0)],this.data[this._idx(ae,$)]=this.data[this._idx(ae,$-1)];this.data[this._idx(-1,-1)]=this.data[this._idx(0,0)],this.data[this._idx($,-1)]=this.data[this._idx($-1,0)],this.data[this._idx(-1,$)]=this.data[this._idx(0,$-1)],this.data[this._idx($,$)]=this.data[this._idx($-1,$-1)]};dy.prototype.get=function(y,I){var U=new Uint8Array(this.data.buffer),$=this._idx(y,I)*4,ae=this.encoding==="terrarium"?this._unpackTerrarium:this._unpackMapbox;return ae(U[$],U[$+1],U[$+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 wh({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 $=I*this.dim,ae=I*this.dim+this.dim,he=U*this.dim,Oe=U*this.dim+this.dim;switch(I){case-1:$=ae-1;break;case 1:ae=$+1;break}switch(U){case-1:he=Oe-1;break;case 1:Oe=he+1;break}for(var rt=-I*this.dim,gt=-U*this.dim,Mt=he;Mt<Oe;Mt++)for(var or=$;or<ae;or++)this.data[this._idx(or,Mt)]=y.data[this._idx(or+rt,Mt+gt)]},X("DEMData",dy);function Oet(m,y){var I={};if(!y)return I;for(var U=function(){var he=ae[$],Oe=he.layerIds.map(function(or){return y.getLayer(or)}).filter(Boolean);if(Oe.length!==0){he.layers=Oe,he.stateDependentLayerIds&&(he.stateDependentLayers=he.stateDependentLayerIds.map(function(or){return Oe.filter(function(_r){return _r.id===or})[0]}));for(var rt=0,gt=Oe;rt<gt.length;rt+=1){var Mt=gt[rt];I[Mt.id]=he}}},$=0,ae=m;$<ae.length;$+=1)U();return I}var t6=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}};t6.prototype.encode=function(y){return this._stringToNumber[y]},t6.prototype.decode=function(y){return this._numberToString[y]};var r6=function(y,I,U,$,ae){this.type="Feature",this._vectorTileFeature=y,y._z=I,y._x=U,y._y=$,this.properties=y.properties,this.id=ae},dO={geometry:{configurable:!0}};dO.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},dO.geometry.set=function(m){this._geometry=m},r6.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(r6.prototype,dO);var Jw=function(){this.state={},this.stateChanges={},this.deletedStates={}};Jw.prototype.updateState=function(y,I,U){var $=String(I);if(this.stateChanges[y]=this.stateChanges[y]||{},this.stateChanges[y][$]=this.stateChanges[y][$]||{},_(this.stateChanges[y][$],U),this.deletedStates[y]===null){this.deletedStates[y]={};for(var ae in this.state[y])ae!==$&&(this.deletedStates[y][ae]=null)}else{var he=this.deletedStates[y]&&this.deletedStates[y][$]===null;if(he){this.deletedStates[y][$]={};for(var Oe in this.state[y][$])U[Oe]||(this.deletedStates[y][$][Oe]=null)}else for(var rt in U){var gt=this.deletedStates[y]&&this.deletedStates[y][$]&&this.deletedStates[y][$][rt]===null;gt&&delete this.deletedStates[y][$][rt]}}},Jw.prototype.removeFeatureState=function(y,I,U){var $=this.deletedStates[y]===null;if(!$){var ae=String(I);if(this.deletedStates[y]=this.deletedStates[y]||{},U&&I!==void 0)this.deletedStates[y][ae]!==null&&(this.deletedStates[y][ae]=this.deletedStates[y][ae]||{},this.deletedStates[y][ae][U]=null);else if(I!==void 0){var he=this.stateChanges[y]&&this.stateChanges[y][ae];if(he){this.deletedStates[y][ae]={};for(U in this.stateChanges[y][ae])this.deletedStates[y][ae][U]=null}else this.deletedStates[y][ae]=null}else this.deletedStates[y]=null}},Jw.prototype.getState=function(y,I){var U=String(I),$=this.state[y]||{},ae=this.stateChanges[y]||{},he=_({},$[U],ae[U]);if(this.deletedStates[y]===null)return{};if(this.deletedStates[y]){var Oe=this.deletedStates[y][I];if(Oe===null)return{};for(var rt in Oe)delete he[rt]}return he},Jw.prototype.initializeTileState=function(y,I){y.setFeatureState(this.state,I)},Jw.prototype.coalesceChanges=function(y,I){var U={};for(var $ in this.stateChanges){this.state[$]=this.state[$]||{};var ae={};for(var he in this.stateChanges[$])this.state[$][he]||(this.state[$][he]={}),_(this.state[$][he],this.stateChanges[$][he]),ae[he]=this.state[$][he];U[$]=ae}for(var Oe in this.deletedStates){this.state[Oe]=this.state[Oe]||{};var rt={};if(this.deletedStates[Oe]===null)for(var gt in this.state[Oe])rt[gt]={},this.state[Oe][gt]={};else for(var Mt in this.deletedStates[Oe]){var or=this.deletedStates[Oe][Mt]===null;if(or)this.state[Oe][Mt]={};else for(var _r=0,vr=Object.keys(this.deletedStates[Oe][Mt]);_r<vr.length;_r+=1){var Fr=vr[_r];delete this.state[Oe][Mt][Fr]}rt[Mt]=this.state[Oe][Mt]}U[Oe]=U[Oe]||{},_(U[Oe],rt)}if(this.stateChanges={},this.deletedStates={},Object.keys(U).length!==0)for(var ai in y){var Gi=y[ai];Gi.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 ou(Ci,16,0),this.grid3D=new ou(Ci,16,0),this.featureIndexArray=new Ks,this.promoteId=I};vy.prototype.insert=function(y,I,U,$,ae,he){var Oe=this.featureIndexArray.length;this.featureIndexArray.emplaceBack(U,$,ae);for(var rt=he?this.grid3D:this.grid,gt=0;gt<I.length;gt++){for(var Mt=I[gt],or=[1/0,1/0,-1/0,-1/0],_r=0;_r<Mt.length;_r++){var vr=Mt[_r];or[0]=Math.min(or[0],vr.x),or[1]=Math.min(or[1],vr.y),or[2]=Math.max(or[2],vr.x),or[3]=Math.max(or[3],vr.y)}or[0]<Ci&&or[1]<Ci&&or[2]>=0&&or[3]>=0&&rt.insert(Oe,or[0],or[1],or[2],or[3])}},vy.prototype.loadVTLayers=function(){return this.vtLayers||(this.vtLayers=new pg.VectorTile(new Xa(this.rawTileData)).layers,this.sourceLayerCoder=new t6(this.vtLayers?Object.keys(this.vtLayers).sort():["_geojsonTileLayer"])),this.vtLayers},vy.prototype.query=function(y,I,U,$){var ae=this;this.loadVTLayers();for(var he=y.params||{},Oe=Ci/y.tileSize/y.scale,rt=be(he.filter),gt=y.queryGeometry,Mt=y.queryPadding*Oe,or=ree(gt),_r=this.grid.query(or.minX-Mt,or.minY-Mt,or.maxX+Mt,or.maxY+Mt),vr=ree(y.cameraQueryGeometry),Fr=this.grid3D.query(vr.minX-Mt,vr.minY-Mt,vr.maxX+Mt,vr.maxY+Mt,function(Zn,ga,ha,eo){return vp(y.cameraQueryGeometry,Zn-Mt,ga-Mt,ha+Mt,eo+Mt)}),ai=0,Gi=Fr;ai<Gi.length;ai+=1){var Ti=Gi[ai];_r.push(Ti)}_r.sort(qet);for(var bn={},rn,xn=function(Zn){var ga=_r[Zn];if(ga!==rn){rn=ga;var ha=ae.featureIndexArray.get(ga),eo=null;ae.loadMatchingFeature(bn,ha.bucketIndex,ha.sourceLayerIndex,ha.featureIndex,rt,he.layers,he.availableImages,I,U,$,function(za,Za,Ko){return eo||(eo=On(za)),Za.queryIntersectsFeature(gt,za,Ko,eo,ae.z,y.transform,Oe,y.pixelPosMatrix)})}},Dn=0;Dn<_r.length;Dn++)xn(Dn);return bn},vy.prototype.loadMatchingFeature=function(y,I,U,$,ae,he,Oe,rt,gt,Mt,or){var _r=this.bucketLayerIDs[I];if(!(he&&!N(he,_r))){var vr=this.sourceLayerCoder.decode(U),Fr=this.vtLayers[vr],ai=Fr.feature($);if(ae.needGeometry){var Gi=Ja(ai,!0);if(!ae.filter(new Gn(this.tileID.overscaledZ),Gi,this.tileID.canonical))return}else if(!ae.filter(new Gn(this.tileID.overscaledZ),ai))return;for(var Ti=this.getId(ai,vr),bn=0;bn<_r.length;bn++){var rn=_r[bn];if(!(he&&he.indexOf(rn)<0)){var xn=rt[rn];if(xn){var Dn={};Ti!==void 0&&Mt&&(Dn=Mt.getState(xn.sourceLayer||"_geojsonTileLayer",Ti));var Zn=_({},gt[rn]);Zn.paint=tee(Zn.paint,xn.paint,ai,Dn,Oe),Zn.layout=tee(Zn.layout,xn.layout,ai,Dn,Oe);var ga=!or||or(ai,xn,Dn);if(ga){var ha=new r6(ai,this.z,this.x,this.y,Ti);ha.layer=Zn;var eo=y[rn];eo===void 0&&(eo=y[rn]=[]),eo.push({featureIndex:$,feature:ha,intersectionZ:ga})}}}}}},vy.prototype.lookupSymbolFeatures=function(y,I,U,$,ae,he,Oe,rt){var gt={};this.loadVTLayers();for(var Mt=be(ae),or=0,_r=y;or<_r.length;or+=1){var vr=_r[or];this.loadMatchingFeature(gt,U,$,vr,Mt,he,Oe,rt,I)}return gt},vy.prototype.hasLayer=function(y){for(var I=0,U=this.bucketLayerIDs;I<U.length;I+=1)for(var $=U[I],ae=0,he=$;ae<he.length;ae+=1){var Oe=he[ae];if(y===Oe)return!0}return!1},vy.prototype.getId=function(y,I){var U=y.id;if(this.promoteId){var $=typeof this.promoteId=="string"?this.promoteId:this.promoteId[I];U=y.properties[$],typeof U=="boolean"&&(U=Number(U))}return U},X("FeatureIndex",vy,{omit:["rawTileData","sourceLayerCoder"]});function tee(m,y,I,U,$){return G(m,function(ae,he){var Oe=y instanceof Sc?y.get(he):null;return Oe&&Oe.evaluate?Oe.evaluate(I,U,$):Oe})}function ree(m){for(var y=1/0,I=1/0,U=-1/0,$=-1/0,ae=0,he=m;ae<he.length;ae+=1){var Oe=he[ae];y=Math.min(y,Oe.x),I=Math.min(I,Oe.y),U=Math.max(U,Oe.x),$=Math.max($,Oe.y)}return{minX:y,minY:I,maxX:U,maxY:$}}function qet(m,y){return y-m}var Bet=3e4,Wh=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"};Wh.prototype.registerFadeDuration=function(y){var I=y+this.timeAdded;I<ct.now()||this.fadeEndTime&&I<this.fadeEndTime||(this.fadeEndTime=I)},Wh.prototype.wasRequested=function(){return this.state==="errored"||this.state==="loaded"||this.state==="reloading"},Wh.prototype.loadVectorData=function(y,I,U){if(this.hasData()&&this.unloadVectorData(),this.state="loaded",!y){this.collisionBoxArray=new Va;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=Oet(y.buckets,I.style),this.hasSymbolBuckets=!1;for(var $ in this.buckets){var ae=this.buckets[$];if(ae instanceof Pu)if(this.hasSymbolBuckets=!0,U)ae.justReloaded=!0;else break}if(this.hasRTLText=!1,this.hasSymbolBuckets)for(var he in this.buckets){var Oe=this.buckets[he];if(Oe instanceof Pu&&Oe.hasRTLText){this.hasRTLText=!0,Zs();break}}this.queryPadding=0;for(var rt in this.buckets){var gt=this.buckets[rt];this.queryPadding=Math.max(this.queryPadding,I.style.getLayer(rt).queryRadius(gt))}y.imageAtlas&&(this.imageAtlas=y.imageAtlas),y.glyphAtlasImage&&(this.glyphAtlasImage=y.glyphAtlasImage)},Wh.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"},Wh.prototype.getBucket=function(y){return this.buckets[y.id]},Wh.prototype.upload=function(y){for(var I in this.buckets){var U=this.buckets[I];U.uploadPending()&&U.upload(y)}var $=y.gl;this.imageAtlas&&!this.imageAtlas.uploaded&&(this.imageAtlasTexture=new ib(y,this.imageAtlas.image,$.RGBA),this.imageAtlas.uploaded=!0),this.glyphAtlasImage&&(this.glyphAtlasTexture=new ib(y,this.glyphAtlasImage,$.ALPHA),this.glyphAtlasImage=null)},Wh.prototype.prepare=function(y){this.imageAtlas&&this.imageAtlas.patchUpdatedImages(y,this.imageAtlasTexture)},Wh.prototype.queryRenderedFeatures=function(y,I,U,$,ae,he,Oe,rt,gt,Mt){return!this.latestFeatureIndex||!this.latestFeatureIndex.rawTileData?{}:this.latestFeatureIndex.query({queryGeometry:$,cameraQueryGeometry:ae,scale:he,tileSize:this.tileSize,pixelPosMatrix:Mt,transform:rt,params:Oe,queryPadding:this.queryPadding*gt},y,I,U)},Wh.prototype.querySourceFeatures=function(y,I){var U=this.latestFeatureIndex;if(!(!U||!U.rawTileData)){var $=U.loadVTLayers(),ae=I?I.sourceLayer:"",he=$._geojsonTileLayer||$[ae];if(he)for(var Oe=be(I&&I.filter),rt=this.tileID.canonical,gt=rt.z,Mt=rt.x,or=rt.y,_r={z:gt,x:Mt,y:or},vr=0;vr<he.length;vr++){var Fr=he.feature(vr);if(Oe.needGeometry){var ai=Ja(Fr,!0);if(!Oe.filter(new Gn(this.tileID.overscaledZ),ai,this.tileID.canonical))continue}else if(!Oe.filter(new Gn(this.tileID.overscaledZ),Fr))continue;var Gi=U.getId(Fr,ae),Ti=new r6(Fr,gt,Mt,or,Gi);Ti.tile=_r,y.push(Ti)}}},Wh.prototype.hasData=function(){return this.state==="loaded"||this.state==="reloading"||this.state==="expired"},Wh.prototype.patternsLoaded=function(){return this.imageAtlas&&!!Object.keys(this.imageAtlas.patternPositions).length},Wh.prototype.setExpiryData=function(y){var I=this.expirationTime;if(y.cacheControl){var U=me(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 $=Date.now(),ae=!1;if(this.expirationTime>$)ae=!1;else if(!I)ae=!0;else if(this.expirationTime<I)ae=!0;else{var he=this.expirationTime-I;he?this.expirationTime=$+Math.max(he,Bet):ae=!0}ae?(this.expiredRequestCount++,this.state="expired"):this.expiredRequestCount=0}},Wh.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)},Wh.prototype.setFeatureState=function(y,I){if(!(!this.latestFeatureIndex||!this.latestFeatureIndex.rawTileData||Object.keys(y).length===0)){var U=this.latestFeatureIndex.loadVTLayers();for(var $ in this.buckets)if(I.style.hasLayer($)){var ae=this.buckets[$],he=ae.layers[0].sourceLayer||"_geojsonTileLayer",Oe=U[he],rt=y[he];if(!(!Oe||!rt||Object.keys(rt).length===0)){ae.update(rt,Oe,this.imageAtlas&&this.imageAtlas.patternPositions||{});var gt=I&&I.style&&I.style.getLayer($);gt&&(this.queryPadding=Math.max(this.queryPadding,gt.queryRadius(ae)))}}}},Wh.prototype.holdingForFade=function(){return this.symbolFadeHoldUntil!==void 0},Wh.prototype.symbolFadeFinished=function(){return!this.symbolFadeHoldUntil||this.symbolFadeHoldUntil<ct.now()},Wh.prototype.clearFadeHold=function(){this.symbolFadeHoldUntil=void 0},Wh.prototype.setHoldDuration=function(y){this.symbolFadeHoldUntil=ct.now()+y},Wh.prototype.setDependencies=function(y,I){for(var U={},$=0,ae=I;$<ae.length;$+=1){var he=ae[$];U[he]=!0}this.dependencies[y]=U},Wh.prototype.hasDependency=function(y,I){for(var U=0,$=y;U<$.length;U+=1){var ae=$[U],he=this.dependencies[ae];if(he)for(var Oe=0,rt=I;Oe<rt.length;Oe+=1){var gt=rt[Oe];if(he[gt])return!0}}return!1};var Net=["type","source","source-layer","minzoom","maxzoom","filter","layout"],F1=f.performance,iee=function(y){this._marks={start:[y.url,"start"].join("#"),end:[y.url,"end"].join("#"),measure:y.url.toString()},F1.mark(this._marks.start)};iee.prototype.finish=function(){F1.mark(this._marks.end);var y=F1.getEntriesByName(this._marks.measure);return y.length===0&&(F1.measure(this._marks.measure,this._marks.start,this._marks.end),y=F1.getEntriesByName(this._marks.measure),F1.clearMarks(this._marks.start),F1.clearMarks(this._marks.end),F1.clearMeasures(this._marks.measure)),y},i.Actor=Kw,i.AlphaImage=Pv,i.CanonicalTileID=ab,i.CollisionBoxArray=Va,i.Color=fs,i.DEMData=dy,i.DataConstantProperty=Ee,i.DictionaryCoder=t6,i.EXTENT=Ci,i.ErrorEvent=da,i.EvaluationParameters=Gn,i.Event=Wo,i.Evented=Wn,i.FeatureIndex=vy,i.FillBucket=pp,i.FillExtrusionBucket=Vp,i.ImageAtlas=gg,i.ImagePosition=Zf,i.LineBucket=sh,i.LngLat=Hc,i.LngLatBounds=lh,i.MercatorCoordinate=nb,i.ONE_EM=An,i.OverscaledTileID=uh,i.Point=u,i.Point$1=u,i.Properties=Br,i.Protobuf=Xa,i.RGBAImage=wh,i.RequestManager=Qe,i.RequestPerformance=iee,i.ResourceType=ea,i.SegmentVector=io,i.SourceFeatureState=Jw,i.StructArrayLayout1ui2=wa,i.StructArrayLayout2f1f2i16=Ui,i.StructArrayLayout2i4=Yr,i.StructArrayLayout3ui6=vn,i.StructArrayLayout4i8=xi,i.SymbolBucket=Pu,i.Texture=ib,i.Tile=Wh,i.Transitionable=Uo,i.Uniform1f=et,i.Uniform1i=Ve,i.Uniform2f=at,i.Uniform3f=kt,i.Uniform4f=Ot,i.UniformColor=It,i.UniformMatrix4f=Rt,i.UnwrappedTileID=eee,i.ValidationError=_a,i.WritingMode=uv,i.ZoomHistory=Ct,i.add=Lv,i.addDynamicAttributes=uO,i.asyncAll=E,i.bezier=x,i.bindAll=O,i.browser=ct,i.cacheEntryPossiblyAdded=Hi,i.clamp=p,i.clearTileCache=wn,i.clipLine=OQ,i.clone=T1,i.clone$1=H,i.clone$2=Mw,i.collisionCircleLayout=Lt,i.config=pt,i.create=w1,i.create$1=Gh,i.create$2=hg,i.createCommonjsModule=a,i.createExpression=oo,i.createLayout=ji,i.createStyleLayer=Pet,i.cross=F9,i.deepEqual=h,i.dot=D9,i.dot$1=N9,i.ease=b,i.emitValidationErrors=Lu,i.endsWith=V,i.enforceCacheSizeLimit=Pn,i.evaluateSizeForFeature=LQ,i.evaluateSizeForZoom=PQ,i.evaluateVariableOffset=NQ,i.evented=Ia,i.extend=_,i.featureFilter=be,i.filterObject=Z,i.fromRotation=rm,i.getAnchorAlignment=wS,i.getAnchorJustification=lO,i.getArrayBuffer=ri,i.getImage=la,i.getJSON=Zr,i.getRTLTextPluginStatus=yo,i.getReferrer=Vt,i.getVideo=ma,i.identity=oy,i.invert=im,i.isChar=nt,i.isMapboxURL=Et,i.keysDifference=L,i.makeRequest=Er,i.mapObject=G,i.mercatorXfromLng=JQ,i.mercatorYfromLat=$Q,i.mercatorZfromAltitude=QQ,i.mul=Nx,i.multiply=nm,i.mvt=pg,i.nextPowerOfTwo=T,i.normalize=Ux,i.number=al,i.offscreenCanvasSupported=kn,i.ortho=wu,i.parseGlyphPBF=p0,i.pbf=Xa,i.performSymbolLayout=cet,i.perspective=A1,i.pick=k,i.plugin=Es,i.polygonIntersectsPolygon=so,i.postMapLoadEvent=je,i.postTurnstileEvent=Ge,i.potpack=Qv,i.refProperties=Net,i.register=X,i.registerForPluginStateChange=Da,i.renderColorRamp=Hx,i.rotate=ay,i.rotateX=Sd,i.rotateZ=sy,i.scale=eu,i.scale$1=B9,i.scale$2=Ew,i.setCacheLimits=pn,i.setRTLTextPlugin=go,i.sphericalToCartesian=Me,i.sqrLen=rS,i.styleSpec=Fn,i.sub=O9,i.symbolSize=eet,i.transformMat3=z9,i.transformMat4=ly,i.translate=vc,i.triggerPluginCompletionEvent=ia,i.uniqueId=g,i.validateCustomStyleLayer=Cet,i.validateLight=To,i.validateStyle=wo,i.values=A,i.vectorTile=pg,i.version=o,i.warnOnce=re,i.webpSupported=Wt,i.window=f,i.wrap=C}),n(["./shared"],function(i){"use strict";function a(Vt){var _t=typeof Vt;if(_t==="number"||_t==="boolean"||_t==="string"||Vt===void 0||Vt===null)return JSON.stringify(Vt);if(Array.isArray(Vt)){for(var tr="[",ar=0,Er=Vt;ar<Er.length;ar+=1){var Zr=Er[ar];tr+=a(Zr)+","}return tr+"]"}for(var ri=Object.keys(Vt).sort(),$r="{",zi=0;zi<ri.length;zi++)$r+=JSON.stringify(ri[zi])+":"+a(Vt[ri[zi]])+",";return $r+"}"}function o(Vt){for(var _t="",tr=0,ar=i.refProperties;tr<ar.length;tr+=1){var Er=ar[tr];_t+="/"+a(Vt[Er])}return _t}function s(Vt,_t){for(var tr={},ar=0;ar<Vt.length;ar++){var Er=_t&&_t[Vt[ar].id]||o(Vt[ar]);_t&&(_t[Vt[ar].id]=Er);var Zr=tr[Er];Zr||(Zr=tr[Er]=[]),Zr.push(Vt[ar])}var ri=[];for(var $r in tr)ri.push(tr[$r]);return ri}var l=function(_t){this.keyCache={},_t&&this.replace(_t)};l.prototype.replace=function(_t){this._layerConfigs={},this._layers={},this.update(_t,[])},l.prototype.update=function(_t,tr){for(var ar=this,Er=0,Zr=_t;Er<Zr.length;Er+=1){var ri=Zr[Er];this._layerConfigs[ri.id]=ri;var $r=this._layers[ri.id]=i.createStyleLayer(ri);$r._featureFilter=i.featureFilter($r.filter),this.keyCache[ri.id]&&delete this.keyCache[ri.id]}for(var zi=0,Ji=tr;zi<Ji.length;zi+=1){var en=Ji[zi];delete this.keyCache[en],delete this._layerConfigs[en],delete this._layers[en]}this.familiesBySource={};for(var cn=s(i.values(this._layerConfigs),this.keyCache),yn=0,Mn=cn;yn<Mn.length;yn+=1){var Ba=Mn[yn],la=Ba.map(function(Wn){return ar._layers[Wn.id]}),ma=la[0];if(ma.visibility!=="none"){var Wa=ma.source||"",Fa=this.familiesBySource[Wa];Fa||(Fa=this.familiesBySource[Wa]={});var Wo=ma.sourceLayer||"_geojsonTileLayer",da=Fa[Wo];da||(da=Fa[Wo]=[]),da.push(la)}}};var u=1,c=function(_t){var tr={},ar=[];for(var Er in _t){var Zr=_t[Er],ri=tr[Er]={};for(var $r in Zr){var zi=Zr[+$r];if(!(!zi||zi.bitmap.width===0||zi.bitmap.height===0)){var Ji={x:0,y:0,w:zi.bitmap.width+2*u,h:zi.bitmap.height+2*u};ar.push(Ji),ri[$r]={rect:Ji,metrics:zi.metrics}}}}var en=i.potpack(ar),cn=en.w,yn=en.h,Mn=new i.AlphaImage({width:cn||1,height:yn||1});for(var Ba in _t){var la=_t[Ba];for(var ma in la){var Wa=la[+ma];if(!(!Wa||Wa.bitmap.width===0||Wa.bitmap.height===0)){var Fa=tr[Ba][ma].rect;i.AlphaImage.copy(Wa.bitmap,Mn,{x:0,y:0},{x:Fa.x+u,y:Fa.y+u},Wa.bitmap)}}}this.image=Mn,this.positions=tr};i.register("GlyphAtlas",c);var f=function(_t){this.tileID=new i.OverscaledTileID(_t.tileID.overscaledZ,_t.tileID.wrap,_t.tileID.canonical.z,_t.tileID.canonical.x,_t.tileID.canonical.y),this.uid=_t.uid,this.zoom=_t.zoom,this.pixelRatio=_t.pixelRatio,this.tileSize=_t.tileSize,this.source=_t.source,this.overscaling=this.tileID.overscaleFactor(),this.showCollisionBoxes=_t.showCollisionBoxes,this.collectResourceTiming=!!_t.collectResourceTiming,this.returnDependencies=!!_t.returnDependencies,this.promoteId=_t.promoteId};f.prototype.parse=function(_t,tr,ar,Er,Zr){var ri=this;this.status="parsing",this.data=_t,this.collisionBoxArray=new i.CollisionBoxArray;var $r=new i.DictionaryCoder(Object.keys(_t.layers).sort()),zi=new i.FeatureIndex(this.tileID,this.promoteId);zi.bucketLayerIDs=[];var Ji={},en={featureIndex:zi,iconDependencies:{},patternDependencies:{},glyphDependencies:{},availableImages:ar},cn=tr.familiesBySource[this.source];for(var yn in cn){var Mn=_t.layers[yn];if(Mn){Mn.version===1&&i.warnOnce('Vector tile source "'+this.source+'" layer "'+yn+'" does not use vector tile spec v2 and therefore may have some rendering errors.');for(var Ba=$r.encode(yn),la=[],ma=0;ma<Mn.length;ma++){var Wa=Mn.feature(ma),Fa=zi.getId(Wa,yn);la.push({feature:Wa,id:Fa,index:ma,sourceLayerIndex:Ba})}for(var Wo=0,da=cn[yn];Wo<da.length;Wo+=1){var Wn=da[Wo],Ga=Wn[0];if(!(Ga.minzoom&&this.zoom<Math.floor(Ga.minzoom))&&!(Ga.maxzoom&&this.zoom>=Ga.maxzoom)&&Ga.visibility!=="none"){h(Wn,this.zoom,ar);var vo=Ji[Ga.id]=Ga.createBucket({index:zi.bucketLayerIDs.length,layers:Wn,zoom:this.zoom,pixelRatio:this.pixelRatio,overscaling:this.overscaling,collisionBoxArray:this.collisionBoxArray,sourceLayerIndex:Ba,sourceID:this.source});vo.populate(la,en,this.tileID.canonical),zi.bucketLayerIDs.push(Wn.map(function(ki){return ki.id}))}}}}var jn,St,Cr,Qr,pi=i.mapObject(en.glyphDependencies,function(ki){return Object.keys(ki).map(Number)});Object.keys(pi).length?Er.send("getGlyphs",{uid:this.uid,stacks:pi},function(ki,_n){jn||(jn=ki,St=_n,En.call(ri))}):St={};var fn=Object.keys(en.iconDependencies);fn.length?Er.send("getImages",{icons:fn,source:this.source,tileID:this.tileID,type:"icons"},function(ki,_n){jn||(jn=ki,Cr=_n,En.call(ri))}):Cr={};var Sn=Object.keys(en.patternDependencies);Sn.length?Er.send("getImages",{icons:Sn,source:this.source,tileID:this.tileID,type:"patterns"},function(ki,_n){jn||(jn=ki,Qr=_n,En.call(ri))}):Qr={},En.call(this);function En(){if(jn)return Zr(jn);if(St&&Cr&&Qr){var ki=new c(St),_n=new i.ImageAtlas(Cr,Qr);for(var ya in Ji){var Jn=Ji[ya];Jn instanceof i.SymbolBucket?(h(Jn.layers,this.zoom,ar),i.performSymbolLayout(Jn,St,ki.positions,Cr,_n.iconPositions,this.showCollisionBoxes,this.tileID.canonical)):Jn.hasPattern&&(Jn instanceof i.LineBucket||Jn instanceof i.FillBucket||Jn instanceof i.FillExtrusionBucket)&&(h(Jn.layers,this.zoom,ar),Jn.addFeatures(en,this.tileID.canonical,_n.patternPositions))}this.status="done",Zr(null,{buckets:i.values(Ji).filter(function(Ma){return!Ma.isEmpty()}),featureIndex:zi,collisionBoxArray:this.collisionBoxArray,glyphAtlasImage:ki.image,imageAtlas:_n,glyphMap:this.returnDependencies?St:null,iconMap:this.returnDependencies?Cr:null,glyphPositions:this.returnDependencies?ki.positions:null})}}};function h(Vt,_t,tr){for(var ar=new i.EvaluationParameters(_t),Er=0,Zr=Vt;Er<Zr.length;Er+=1){var ri=Zr[Er];ri.recalculate(ar,tr)}}function d(Vt,_t){var tr=i.getArrayBuffer(Vt.request,function(ar,Er,Zr,ri){ar?_t(ar):Er&&_t(null,{vectorTile:new i.vectorTile.VectorTile(new i.pbf(Er)),rawData:Er,cacheControl:Zr,expires:ri})});return function(){tr.cancel(),_t()}}var v=function(_t,tr,ar,Er){this.actor=_t,this.layerIndex=tr,this.availableImages=ar,this.loadVectorData=Er||d,this.loading={},this.loaded={}};v.prototype.loadTile=function(_t,tr){var ar=this,Er=_t.uid;this.loading||(this.loading={});var Zr=_t&&_t.request&&_t.request.collectResourceTiming?new i.RequestPerformance(_t.request):!1,ri=this.loading[Er]=new f(_t);ri.abort=this.loadVectorData(_t,function($r,zi){if(delete ar.loading[Er],$r||!zi)return ri.status="done",ar.loaded[Er]=ri,tr($r);var Ji=zi.rawData,en={};zi.expires&&(en.expires=zi.expires),zi.cacheControl&&(en.cacheControl=zi.cacheControl);var cn={};if(Zr){var yn=Zr.finish();yn&&(cn.resourceTiming=JSON.parse(JSON.stringify(yn)))}ri.vectorTile=zi.vectorTile,ri.parse(zi.vectorTile,ar.layerIndex,ar.availableImages,ar.actor,function(Mn,Ba){if(Mn||!Ba)return tr(Mn);tr(null,i.extend({rawTileData:Ji.slice(0)},Ba,en,cn))}),ar.loaded=ar.loaded||{},ar.loaded[Er]=ri})},v.prototype.reloadTile=function(_t,tr){var ar=this,Er=this.loaded,Zr=_t.uid,ri=this;if(Er&&Er[Zr]){var $r=Er[Zr];$r.showCollisionBoxes=_t.showCollisionBoxes;var zi=function(Ji,en){var cn=$r.reloadCallback;cn&&(delete $r.reloadCallback,$r.parse($r.vectorTile,ri.layerIndex,ar.availableImages,ri.actor,cn)),tr(Ji,en)};$r.status==="parsing"?$r.reloadCallback=zi:$r.status==="done"&&($r.vectorTile?$r.parse($r.vectorTile,this.layerIndex,this.availableImages,this.actor,zi):zi())}},v.prototype.abortTile=function(_t,tr){var ar=this.loading,Er=_t.uid;ar&&ar[Er]&&ar[Er].abort&&(ar[Er].abort(),delete ar[Er]),tr()},v.prototype.removeTile=function(_t,tr){var ar=this.loaded,Er=_t.uid;ar&&ar[Er]&&delete ar[Er],tr()};var x=i.window.ImageBitmap,b=function(){this.loaded={}};b.prototype.loadTile=function(_t,tr){var ar=_t.uid,Er=_t.encoding,Zr=_t.rawImageData,ri=x&&Zr instanceof x?this.getImageData(Zr):Zr,$r=new i.DEMData(ar,ri,Er);this.loaded=this.loaded||{},this.loaded[ar]=$r,tr(null,$r)},b.prototype.getImageData=function(_t){(!this.offscreenCanvas||!this.offscreenCanvasContext)&&(this.offscreenCanvas=new OffscreenCanvas(_t.width,_t.height),this.offscreenCanvasContext=this.offscreenCanvas.getContext("2d")),this.offscreenCanvas.width=_t.width,this.offscreenCanvas.height=_t.height,this.offscreenCanvasContext.drawImage(_t,0,0,_t.width,_t.height);var tr=this.offscreenCanvasContext.getImageData(-1,-1,_t.width+2,_t.height+2);return this.offscreenCanvasContext.clearRect(0,0,this.offscreenCanvas.width,this.offscreenCanvas.height),new i.RGBAImage({width:tr.width,height:tr.height},tr.data)},b.prototype.removeTile=function(_t){var tr=this.loaded,ar=_t.uid;tr&&tr[ar]&&delete tr[ar]};var p=C;function C(Vt,_t){var tr=Vt&&Vt.type,ar;if(tr==="FeatureCollection")for(ar=0;ar<Vt.features.length;ar++)C(Vt.features[ar],_t);else if(tr==="GeometryCollection")for(ar=0;ar<Vt.geometries.length;ar++)C(Vt.geometries[ar],_t);else if(tr==="Feature")C(Vt.geometry,_t);else if(tr==="Polygon")E(Vt.coordinates,_t);else if(tr==="MultiPolygon")for(ar=0;ar<Vt.coordinates.length;ar++)E(Vt.coordinates[ar],_t);return Vt}function E(Vt,_t){if(Vt.length!==0){A(Vt[0],_t);for(var tr=1;tr<Vt.length;tr++)A(Vt[tr],!_t)}}function A(Vt,_t){for(var tr=0,ar=0,Er=Vt.length,Zr=Er-1;ar<Er;Zr=ar++)tr+=(Vt[ar][0]-Vt[Zr][0])*(Vt[Zr][1]+Vt[ar][1]);tr>=0!=!!_t&&Vt.reverse()}var L=i.vectorTile.VectorTileFeature.prototype.toGeoJSON,_=function(_t){this._feature=_t,this.extent=i.EXTENT,this.type=_t.type,this.properties=_t.tags,"id"in _t&&!isNaN(_t.id)&&(this.id=parseInt(_t.id,10))};_.prototype.loadGeometry=function(){if(this._feature.type===1){for(var _t=[],tr=0,ar=this._feature.geometry;tr<ar.length;tr+=1){var Er=ar[tr];_t.push([new i.Point$1(Er[0],Er[1])])}return _t}else{for(var Zr=[],ri=0,$r=this._feature.geometry;ri<$r.length;ri+=1){for(var zi=$r[ri],Ji=[],en=0,cn=zi;en<cn.length;en+=1){var yn=cn[en];Ji.push(new i.Point$1(yn[0],yn[1]))}Zr.push(Ji)}return Zr}},_.prototype.toGeoJSON=function(_t,tr,ar){return L.call(this,_t,tr,ar)};var k=function(_t){this.layers={_geojsonTileLayer:this},this.name="_geojsonTileLayer",this.extent=i.EXTENT,this.length=_t.length,this._features=_t};k.prototype.feature=function(_t){return new _(this._features[_t])};var M=i.vectorTile.VectorTileFeature,g=P;function P(Vt,_t){this.options=_t||{},this.features=Vt,this.length=Vt.length}P.prototype.feature=function(Vt){return new T(this.features[Vt],this.options.extent)};function T(Vt,_t){this.id=typeof Vt.id=="number"?Vt.id:void 0,this.type=Vt.type,this.rawGeometry=Vt.type===1?[Vt.geometry]:Vt.geometry,this.properties=Vt.tags,this.extent=_t||4096}T.prototype.loadGeometry=function(){var Vt=this.rawGeometry;this.geometry=[];for(var _t=0;_t<Vt.length;_t++){for(var tr=Vt[_t],ar=[],Er=0;Er<tr.length;Er++)ar.push(new i.Point$1(tr[Er][0],tr[Er][1]));this.geometry.push(ar)}return this.geometry},T.prototype.bbox=function(){this.geometry||this.loadGeometry();for(var Vt=this.geometry,_t=1/0,tr=-1/0,ar=1/0,Er=-1/0,Zr=0;Zr<Vt.length;Zr++)for(var ri=Vt[Zr],$r=0;$r<ri.length;$r++){var zi=ri[$r];_t=Math.min(_t,zi.x),tr=Math.max(tr,zi.x),ar=Math.min(ar,zi.y),Er=Math.max(Er,zi.y)}return[_t,ar,tr,Er]},T.prototype.toGeoJSON=M.prototype.toGeoJSON;var z=Z,O=Z,V=H,G=g;function Z(Vt){var _t=new i.pbf;return N(Vt,_t),_t.finish()}function H(Vt,_t){_t=_t||{};var tr={};for(var ar in Vt)tr[ar]=new g(Vt[ar].features,_t),tr[ar].name=ar,tr[ar].version=_t.version,tr[ar].extent=_t.extent;return Z({layers:tr})}function N(Vt,_t){for(var tr in Vt.layers)_t.writeMessage(3,j,Vt.layers[tr])}function j(Vt,_t){_t.writeVarintField(15,Vt.version||1),_t.writeStringField(1,Vt.name||""),_t.writeVarintField(5,Vt.extent||4096);var tr,ar={keys:[],values:[],keycache:{},valuecache:{}};for(tr=0;tr<Vt.length;tr++)ar.feature=Vt.feature(tr),_t.writeMessage(2,re,ar);var Er=ar.keys;for(tr=0;tr<Er.length;tr++)_t.writeStringField(3,Er[tr]);var Zr=ar.values;for(tr=0;tr<Zr.length;tr++)_t.writeMessage(4,me,Zr[tr])}function re(Vt,_t){var tr=Vt.feature;tr.id!==void 0&&_t.writeVarintField(1,tr.id),_t.writeMessage(2,oe,Vt),_t.writeVarintField(3,tr.type),_t.writeMessage(4,ke,tr)}function oe(Vt,_t){var tr=Vt.feature,ar=Vt.keys,Er=Vt.values,Zr=Vt.keycache,ri=Vt.valuecache;for(var $r in tr.properties){var zi=Zr[$r];typeof zi=="undefined"&&(ar.push($r),zi=ar.length-1,Zr[$r]=zi),_t.writeVarint(zi);var Ji=tr.properties[$r],en=typeof Ji;en!=="string"&&en!=="boolean"&&en!=="number"&&(Ji=JSON.stringify(Ji));var cn=en+":"+Ji,yn=ri[cn];typeof yn=="undefined"&&(Er.push(Ji),yn=Er.length-1,ri[cn]=yn),_t.writeVarint(yn)}}function _e(Vt,_t){return(_t<<3)+(Vt&7)}function Me(Vt){return Vt<<1^Vt>>31}function ke(Vt,_t){for(var tr=Vt.loadGeometry(),ar=Vt.type,Er=0,Zr=0,ri=tr.length,$r=0;$r<ri;$r++){var zi=tr[$r],Ji=1;ar===1&&(Ji=zi.length),_t.writeVarint(_e(1,Ji));for(var en=ar===3?zi.length-1:zi.length,cn=0;cn<en;cn++){cn===1&&ar!==1&&_t.writeVarint(_e(2,en-1));var yn=zi[cn].x-Er,Mn=zi[cn].y-Zr;_t.writeVarint(Me(yn)),_t.writeVarint(Me(Mn)),Er+=yn,Zr+=Mn}ar===3&&_t.writeVarint(_e(7,1))}}function me(Vt,_t){var tr=typeof Vt;tr==="string"?_t.writeStringField(1,Vt):tr==="boolean"?_t.writeBooleanField(7,Vt):tr==="number"&&(Vt%1!==0?_t.writeDoubleField(3,Vt):Vt<0?_t.writeSVarintField(6,Vt):_t.writeVarintField(5,Vt))}z.fromVectorTileJs=O,z.fromGeojsonVt=V,z.GeoJSONWrapper=G;function ie(Vt,_t,tr,ar,Er,Zr){if(!(Er-ar<=tr)){var ri=ar+Er>>1;Se(Vt,_t,ri,ar,Er,Zr%2),ie(Vt,_t,tr,ar,ri-1,Zr+1),ie(Vt,_t,tr,ri+1,Er,Zr+1)}}function Se(Vt,_t,tr,ar,Er,Zr){for(;Er>ar;){if(Er-ar>600){var ri=Er-ar+1,$r=tr-ar+1,zi=Math.log(ri),Ji=.5*Math.exp(2*zi/3),en=.5*Math.sqrt(zi*Ji*(ri-Ji)/ri)*($r-ri/2<0?-1:1),cn=Math.max(ar,Math.floor(tr-$r*Ji/ri+en)),yn=Math.min(Er,Math.floor(tr+(ri-$r)*Ji/ri+en));Se(Vt,_t,tr,cn,yn,Zr)}var Mn=_t[2*tr+Zr],Ba=ar,la=Er;for(Le(Vt,_t,ar,tr),_t[2*Er+Zr]>Mn&&Le(Vt,_t,ar,Er);Ba<la;){for(Le(Vt,_t,Ba,la),Ba++,la--;_t[2*Ba+Zr]<Mn;)Ba++;for(;_t[2*la+Zr]>Mn;)la--}_t[2*ar+Zr]===Mn?Le(Vt,_t,ar,la):(la++,Le(Vt,_t,la,Er)),la<=tr&&(ar=la+1),tr<=la&&(Er=la-1)}}function Le(Vt,_t,tr,ar){Ae(Vt,tr,ar),Ae(_t,2*tr,2*ar),Ae(_t,2*tr+1,2*ar+1)}function Ae(Vt,_t,tr){var ar=Vt[_t];Vt[_t]=Vt[tr],Vt[tr]=ar}function De(Vt,_t,tr,ar,Er,Zr,ri){for(var $r=[0,Vt.length-1,0],zi=[],Ji,en;$r.length;){var cn=$r.pop(),yn=$r.pop(),Mn=$r.pop();if(yn-Mn<=ri){for(var Ba=Mn;Ba<=yn;Ba++)Ji=_t[2*Ba],en=_t[2*Ba+1],Ji>=tr&&Ji<=Er&&en>=ar&&en<=Zr&&zi.push(Vt[Ba]);continue}var la=Math.floor((Mn+yn)/2);Ji=_t[2*la],en=_t[2*la+1],Ji>=tr&&Ji<=Er&&en>=ar&&en<=Zr&&zi.push(Vt[la]);var ma=(cn+1)%2;(cn===0?tr<=Ji:ar<=en)&&($r.push(Mn),$r.push(la-1),$r.push(ma)),(cn===0?Er>=Ji:Zr>=en)&&($r.push(la+1),$r.push(yn),$r.push(ma))}return zi}function Pe(Vt,_t,tr,ar,Er,Zr){for(var ri=[0,Vt.length-1,0],$r=[],zi=Er*Er;ri.length;){var Ji=ri.pop(),en=ri.pop(),cn=ri.pop();if(en-cn<=Zr){for(var yn=cn;yn<=en;yn++)ge(_t[2*yn],_t[2*yn+1],tr,ar)<=zi&&$r.push(Vt[yn]);continue}var Mn=Math.floor((cn+en)/2),Ba=_t[2*Mn],la=_t[2*Mn+1];ge(Ba,la,tr,ar)<=zi&&$r.push(Vt[Mn]);var ma=(Ji+1)%2;(Ji===0?tr-Er<=Ba:ar-Er<=la)&&(ri.push(cn),ri.push(Mn-1),ri.push(ma)),(Ji===0?tr+Er>=Ba:ar+Er>=la)&&(ri.push(Mn+1),ri.push(en),ri.push(ma))}return $r}function ge(Vt,_t,tr,ar){var Er=Vt-tr,Zr=_t-ar;return Er*Er+Zr*Zr}var Fe=function(Vt){return Vt[0]},ce=function(Vt){return Vt[1]},Ze=function(_t,tr,ar,Er,Zr){tr===void 0&&(tr=Fe),ar===void 0&&(ar=ce),Er===void 0&&(Er=64),Zr===void 0&&(Zr=Float64Array),this.nodeSize=Er,this.points=_t;for(var ri=_t.length<65536?Uint16Array:Uint32Array,$r=this.ids=new ri(_t.length),zi=this.coords=new Zr(_t.length*2),Ji=0;Ji<_t.length;Ji++)$r[Ji]=Ji,zi[2*Ji]=tr(_t[Ji]),zi[2*Ji+1]=ar(_t[Ji]);ie($r,zi,Er,0,$r.length-1,0)};Ze.prototype.range=function(_t,tr,ar,Er){return De(this.ids,this.coords,_t,tr,ar,Er,this.nodeSize)},Ze.prototype.within=function(_t,tr,ar){return Pe(this.ids,this.coords,_t,tr,ar,this.nodeSize)};var ct={minZoom:0,maxZoom:16,minPoints:2,radius:40,extent:512,nodeSize:64,log:!1,generateId:!1,reduce:null,map:function(Vt){return Vt}},pt=function(_t){this.options=ur(Object.create(ct),_t),this.trees=new Array(this.options.maxZoom+1)};pt.prototype.load=function(_t){var tr=this.options,ar=tr.log,Er=tr.minZoom,Zr=tr.maxZoom,ri=tr.nodeSize;ar&&console.time("total time");var $r="prepare "+_t.length+" points";ar&&console.time($r),this.points=_t;for(var zi=[],Ji=0;Ji<_t.length;Ji++)_t[Ji].geometry&&zi.push(st(_t[Ji],Ji));this.trees[Zr+1]=new Ze(zi,Qe,Et,ri,Float32Array),ar&&console.timeEnd($r);for(var en=Zr;en>=Er;en--){var cn=+Date.now();zi=this._cluster(zi,en),this.trees[en]=new Ze(zi,Qe,Et,ri,Float32Array),ar&&console.log("z%d: %d clusters in %dms",en,zi.length,+Date.now()-cn)}return ar&&console.timeEnd("total time"),this},pt.prototype.getClusters=function(_t,tr){var ar=((_t[0]+180)%360+360)%360-180,Er=Math.max(-90,Math.min(90,_t[1])),Zr=_t[2]===180?180:((_t[2]+180)%360+360)%360-180,ri=Math.max(-90,Math.min(90,_t[3]));if(_t[2]-_t[0]>=360)ar=-180,Zr=180;else if(ar>Zr){var $r=this.getClusters([ar,Er,180,ri],tr),zi=this.getClusters([-180,Er,Zr,ri],tr);return $r.concat(zi)}for(var Ji=this.trees[this._limitZoom(tr)],en=Ji.range(Nt(ar),$t(ri),Nt(Zr),$t(Er)),cn=[],yn=0,Mn=en;yn<Mn.length;yn+=1){var Ba=Mn[yn],la=Ji.points[Ba];cn.push(la.numPoints?lt(la):this.points[la.index])}return cn},pt.prototype.getChildren=function(_t){var tr=this._getOriginId(_t),ar=this._getOriginZoom(_t),Er="No cluster with the specified id.",Zr=this.trees[ar];if(!Zr)throw new Error(Er);var ri=Zr.points[tr];if(!ri)throw new Error(Er);for(var $r=this.options.radius/(this.options.extent*Math.pow(2,ar-1)),zi=Zr.within(ri.x,ri.y,$r),Ji=[],en=0,cn=zi;en<cn.length;en+=1){var yn=cn[en],Mn=Zr.points[yn];Mn.parentId===_t&&Ji.push(Mn.numPoints?lt(Mn):this.points[Mn.index])}if(Ji.length===0)throw new Error(Er);return Ji},pt.prototype.getLeaves=function(_t,tr,ar){tr=tr||10,ar=ar||0;var Er=[];return this._appendLeaves(Er,_t,tr,ar,0),Er},pt.prototype.getTile=function(_t,tr,ar){var Er=this.trees[this._limitZoom(_t)],Zr=Math.pow(2,_t),ri=this.options,$r=ri.extent,zi=ri.radius,Ji=zi/$r,en=(ar-Ji)/Zr,cn=(ar+1+Ji)/Zr,yn={features:[]};return this._addTileFeatures(Er.range((tr-Ji)/Zr,en,(tr+1+Ji)/Zr,cn),Er.points,tr,ar,Zr,yn),tr===0&&this._addTileFeatures(Er.range(1-Ji/Zr,en,1,cn),Er.points,Zr,ar,Zr,yn),tr===Zr-1&&this._addTileFeatures(Er.range(0,en,Ji/Zr,cn),Er.points,-1,ar,Zr,yn),yn.features.length?yn:null},pt.prototype.getClusterExpansionZoom=function(_t){for(var tr=this._getOriginZoom(_t)-1;tr<=this.options.maxZoom;){var ar=this.getChildren(_t);if(tr++,ar.length!==1)break;_t=ar[0].properties.cluster_id}return tr},pt.prototype._appendLeaves=function(_t,tr,ar,Er,Zr){for(var ri=this.getChildren(tr),$r=0,zi=ri;$r<zi.length;$r+=1){var Ji=zi[$r],en=Ji.properties;if(en&&en.cluster?Zr+en.point_count<=Er?Zr+=en.point_count:Zr=this._appendLeaves(_t,en.cluster_id,ar,Er,Zr):Zr<Er?Zr++:_t.push(Ji),_t.length===ar)break}return Zr},pt.prototype._addTileFeatures=function(_t,tr,ar,Er,Zr,ri){for(var $r=0,zi=_t;$r<zi.length;$r+=1){var Ji=zi[$r],en=tr[Ji],cn=en.numPoints,yn={type:1,geometry:[[Math.round(this.options.extent*(en.x*Zr-ar)),Math.round(this.options.extent*(en.y*Zr-Er))]],tags:cn?Gt(en):this.points[en.index].properties},Mn=void 0;cn?Mn=en.id:this.options.generateId?Mn=en.index:this.points[en.index].id&&(Mn=this.points[en.index].id),Mn!==void 0&&(yn.id=Mn),ri.features.push(yn)}},pt.prototype._limitZoom=function(_t){return Math.max(this.options.minZoom,Math.min(+_t,this.options.maxZoom+1))},pt.prototype._cluster=function(_t,tr){for(var ar=[],Er=this.options,Zr=Er.radius,ri=Er.extent,$r=Er.reduce,zi=Er.minPoints,Ji=Zr/(ri*Math.pow(2,tr)),en=0;en<_t.length;en++){var cn=_t[en];if(!(cn.zoom<=tr)){cn.zoom=tr;for(var yn=this.trees[tr+1],Mn=yn.within(cn.x,cn.y,Ji),Ba=cn.numPoints||1,la=Ba,ma=0,Wa=Mn;ma<Wa.length;ma+=1){var Fa=Wa[ma],Wo=yn.points[Fa];Wo.zoom>tr&&(la+=Wo.numPoints||1)}if(la>=zi){for(var da=cn.x*Ba,Wn=cn.y*Ba,Ga=$r&&Ba>1?this._map(cn,!0):null,vo=(en<<5)+(tr+1)+this.points.length,jn=0,St=Mn;jn<St.length;jn+=1){var Cr=St[jn],Qr=yn.points[Cr];if(!(Qr.zoom<=tr)){Qr.zoom=tr;var pi=Qr.numPoints||1;da+=Qr.x*pi,Wn+=Qr.y*pi,Qr.parentId=vo,$r&&(Ga||(Ga=this._map(cn,!0)),$r(Ga,this._map(Qr)))}}cn.parentId=vo,ar.push(Wt(da/la,Wn/la,vo,la,Ga))}else if(ar.push(cn),la>1)for(var fn=0,Sn=Mn;fn<Sn.length;fn+=1){var En=Sn[fn],ki=yn.points[En];ki.zoom<=tr||(ki.zoom=tr,ar.push(ki))}}}return ar},pt.prototype._getOriginId=function(_t){return _t-this.points.length>>5},pt.prototype._getOriginZoom=function(_t){return(_t-this.points.length)%32},pt.prototype._map=function(_t,tr){if(_t.numPoints)return tr?ur({},_t.properties):_t.properties;var ar=this.points[_t.index].properties,Er=this.options.map(ar);return tr&&Er===ar?ur({},Er):Er};function Wt(Vt,_t,tr,ar,Er){return{x:Vt,y:_t,zoom:1/0,id:tr,parentId:-1,numPoints:ar,properties:Er}}function st(Vt,_t){var tr=Vt.geometry.coordinates,ar=tr[0],Er=tr[1];return{x:Nt(ar),y:$t(Er),zoom:1/0,index:_t,parentId:-1}}function lt(Vt){return{type:"Feature",id:Vt.id,properties:Gt(Vt),geometry:{type:"Point",coordinates:[sr(Vt.x),wr(Vt.y)]}}}function Gt(Vt){var _t=Vt.numPoints,tr=_t>=1e4?Math.round(_t/1e3)+"k":_t>=1e3?Math.round(_t/100)/10+"k":_t;return ur(ur({},Vt.properties),{cluster:!0,cluster_id:Vt.id,point_count:_t,point_count_abbreviated:tr})}function Nt(Vt){return Vt/360+.5}function $t(Vt){var _t=Math.sin(Vt*Math.PI/180),tr=.5-.25*Math.log((1+_t)/(1-_t))/Math.PI;return tr<0?0:tr>1?1:tr}function sr(Vt){return(Vt-.5)*360}function wr(Vt){var _t=(180-Vt*360)*Math.PI/180;return 360*Math.atan(Math.exp(_t))/Math.PI-90}function ur(Vt,_t){for(var tr in _t)Vt[tr]=_t[tr];return Vt}function Qe(Vt){return Vt.x}function Et(Vt){return Vt.y}function er(Vt,_t,tr,ar){for(var Er=ar,Zr=tr-_t>>1,ri=tr-_t,$r,zi=Vt[_t],Ji=Vt[_t+1],en=Vt[tr],cn=Vt[tr+1],yn=_t+3;yn<tr;yn+=3){var Mn=Ut(Vt[yn],Vt[yn+1],zi,Ji,en,cn);if(Mn>Er)$r=yn,Er=Mn;else if(Mn===Er){var Ba=Math.abs(yn-Zr);Ba<ri&&($r=yn,ri=Ba)}}Er>ar&&($r-_t>3&&er(Vt,_t,$r,ar),Vt[$r+2]=Er,tr-$r>3&&er(Vt,$r,tr,ar))}function Ut(Vt,_t,tr,ar,Er,Zr){var ri=Er-tr,$r=Zr-ar;if(ri!==0||$r!==0){var zi=((Vt-tr)*ri+(_t-ar)*$r)/(ri*ri+$r*$r);zi>1?(tr=Er,ar=Zr):zi>0&&(tr+=ri*zi,ar+=$r*zi)}return ri=Vt-tr,$r=_t-ar,ri*ri+$r*$r}function Ft(Vt,_t,tr,ar){var Er={id:typeof Vt=="undefined"?null:Vt,type:_t,geometry:tr,tags:ar,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0};return bt(Er),Er}function bt(Vt){var _t=Vt.geometry,tr=Vt.type;if(tr==="Point"||tr==="MultiPoint"||tr==="LineString")yt(Vt,_t);else if(tr==="Polygon"||tr==="MultiLineString")for(var ar=0;ar<_t.length;ar++)yt(Vt,_t[ar]);else if(tr==="MultiPolygon")for(ar=0;ar<_t.length;ar++)for(var Er=0;Er<_t[ar].length;Er++)yt(Vt,_t[ar][Er])}function yt(Vt,_t){for(var tr=0;tr<_t.length;tr+=3)Vt.minX=Math.min(Vt.minX,_t[tr]),Vt.minY=Math.min(Vt.minY,_t[tr+1]),Vt.maxX=Math.max(Vt.maxX,_t[tr]),Vt.maxY=Math.max(Vt.maxY,_t[tr+1])}function Yt(Vt,_t){var tr=[];if(Vt.type==="FeatureCollection")for(var ar=0;ar<Vt.features.length;ar++)lr(tr,Vt.features[ar],_t,ar);else Vt.type==="Feature"?lr(tr,Vt,_t):lr(tr,{geometry:Vt},_t);return tr}function lr(Vt,_t,tr,ar){if(_t.geometry){var Er=_t.geometry.coordinates,Zr=_t.geometry.type,ri=Math.pow(tr.tolerance/((1<<tr.maxZoom)*tr.extent),2),$r=[],zi=_t.id;if(tr.promoteId?zi=_t.properties[tr.promoteId]:tr.generateId&&(zi=ar||0),Zr==="Point")Tr(Er,$r);else if(Zr==="MultiPoint")for(var Ji=0;Ji<Er.length;Ji++)Tr(Er[Ji],$r);else if(Zr==="LineString")Rr(Er,$r,ri,!1);else if(Zr==="MultiLineString")if(tr.lineMetrics){for(Ji=0;Ji<Er.length;Ji++)$r=[],Rr(Er[Ji],$r,ri,!1),Vt.push(Ft(zi,"LineString",$r,_t.properties));return}else ei(Er,$r,ri,!1);else if(Zr==="Polygon")ei(Er,$r,ri,!0);else if(Zr==="MultiPolygon")for(Ji=0;Ji<Er.length;Ji++){var en=[];ei(Er[Ji],en,ri,!0),$r.push(en)}else if(Zr==="GeometryCollection"){for(Ji=0;Ji<_t.geometry.geometries.length;Ji++)lr(Vt,{id:zi,geometry:_t.geometry.geometries[Ji],properties:_t.properties},tr,ar);return}else throw new Error("Input data is not a valid GeoJSON object.");Vt.push(Ft(zi,Zr,$r,_t.properties))}}function Tr(Vt,_t){_t.push(Wr(Vt[0])),_t.push(Ur(Vt[1])),_t.push(0)}function Rr(Vt,_t,tr,ar){for(var Er,Zr,ri=0,$r=0;$r<Vt.length;$r++){var zi=Wr(Vt[$r][0]),Ji=Ur(Vt[$r][1]);_t.push(zi),_t.push(Ji),_t.push(0),$r>0&&(ar?ri+=(Er*Ji-zi*Zr)/2:ri+=Math.sqrt(Math.pow(zi-Er,2)+Math.pow(Ji-Zr,2))),Er=zi,Zr=Ji}var en=_t.length-3;_t[2]=1,er(_t,0,en,tr),_t[en+2]=1,_t.size=Math.abs(ri),_t.start=0,_t.end=_t.size}function ei(Vt,_t,tr,ar){for(var Er=0;Er<Vt.length;Er++){var Zr=[];Rr(Vt[Er],Zr,tr,ar),_t.push(Zr)}}function Wr(Vt){return Vt/360+.5}function Ur(Vt){var _t=Math.sin(Vt*Math.PI/180),tr=.5-.25*Math.log((1+_t)/(1-_t))/Math.PI;return tr<0?0:tr>1?1:tr}function dt(Vt,_t,tr,ar,Er,Zr,ri,$r){if(tr/=_t,ar/=_t,Zr>=tr&&ri<ar)return Vt;if(ri<tr||Zr>=ar)return null;for(var zi=[],Ji=0;Ji<Vt.length;Ji++){var en=Vt[Ji],cn=en.geometry,yn=en.type,Mn=Er===0?en.minX:en.minY,Ba=Er===0?en.maxX:en.maxY;if(Mn>=tr&&Ba<ar){zi.push(en);continue}else if(Ba<tr||Mn>=ar)continue;var la=[];if(yn==="Point"||yn==="MultiPoint")Ge(cn,la,tr,ar,Er);else if(yn==="LineString")Je(cn,la,tr,ar,Er,!1,$r.lineMetrics);else if(yn==="MultiLineString")$e(cn,la,tr,ar,Er,!1);else if(yn==="Polygon")$e(cn,la,tr,ar,Er,!0);else if(yn==="MultiPolygon")for(var ma=0;ma<cn.length;ma++){var Wa=[];$e(cn[ma],Wa,tr,ar,Er,!0),Wa.length&&la.push(Wa)}if(la.length){if($r.lineMetrics&&yn==="LineString"){for(ma=0;ma<la.length;ma++)zi.push(Ft(en.id,yn,la[ma],en.tags));continue}(yn==="LineString"||yn==="MultiLineString")&&(la.length===1?(yn="LineString",la=la[0]):yn="MultiLineString"),(yn==="Point"||yn==="MultiPoint")&&(yn=la.length===3?"Point":"MultiPoint"),zi.push(Ft(en.id,yn,la,en.tags))}}return zi.length?zi:null}function Ge(Vt,_t,tr,ar,Er){for(var Zr=0;Zr<Vt.length;Zr+=3){var ri=Vt[Zr+Er];ri>=tr&&ri<=ar&&(_t.push(Vt[Zr]),_t.push(Vt[Zr+1]),_t.push(Vt[Zr+2]))}}function Je(Vt,_t,tr,ar,Er,Zr,ri){for(var $r=je(Vt),zi=Er===0?Ie:xe,Ji=Vt.start,en,cn,yn=0;yn<Vt.length-3;yn+=3){var Mn=Vt[yn],Ba=Vt[yn+1],la=Vt[yn+2],ma=Vt[yn+3],Wa=Vt[yn+4],Fa=Er===0?Mn:Ba,Wo=Er===0?ma:Wa,da=!1;ri&&(en=Math.sqrt(Math.pow(Mn-ma,2)+Math.pow(Ba-Wa,2))),Fa<tr?Wo>tr&&(cn=zi($r,Mn,Ba,ma,Wa,tr),ri&&($r.start=Ji+en*cn)):Fa>ar?Wo<ar&&(cn=zi($r,Mn,Ba,ma,Wa,ar),ri&&($r.start=Ji+en*cn)):wt($r,Mn,Ba,la),Wo<tr&&Fa>=tr&&(cn=zi($r,Mn,Ba,ma,Wa,tr),da=!0),Wo>ar&&Fa<=ar&&(cn=zi($r,Mn,Ba,ma,Wa,ar),da=!0),!Zr&&da&&(ri&&($r.end=Ji+en*cn),_t.push($r),$r=je(Vt)),ri&&(Ji+=en)}var Wn=Vt.length-3;Mn=Vt[Wn],Ba=Vt[Wn+1],la=Vt[Wn+2],Fa=Er===0?Mn:Ba,Fa>=tr&&Fa<=ar&&wt($r,Mn,Ba,la),Wn=$r.length-3,Zr&&Wn>=3&&($r[Wn]!==$r[0]||$r[Wn+1]!==$r[1])&&wt($r,$r[0],$r[1],$r[2]),$r.length&&_t.push($r)}function je(Vt){var _t=[];return _t.size=Vt.size,_t.start=Vt.start,_t.end=Vt.end,_t}function $e(Vt,_t,tr,ar,Er,Zr){for(var ri=0;ri<Vt.length;ri++)Je(Vt[ri],_t,tr,ar,Er,Zr,!1)}function wt(Vt,_t,tr,ar){Vt.push(_t),Vt.push(tr),Vt.push(ar)}function Ie(Vt,_t,tr,ar,Er,Zr){var ri=(Zr-_t)/(ar-_t);return Vt.push(Zr),Vt.push(tr+(Er-tr)*ri),Vt.push(1),ri}function xe(Vt,_t,tr,ar,Er,Zr){var ri=(Zr-tr)/(Er-tr);return Vt.push(_t+(ar-_t)*ri),Vt.push(Zr),Vt.push(1),ri}function Ce(Vt,_t){var tr=_t.buffer/_t.extent,ar=Vt,Er=dt(Vt,1,-1-tr,tr,0,-1,2,_t),Zr=dt(Vt,1,1-tr,2+tr,0,-1,2,_t);return(Er||Zr)&&(ar=dt(Vt,1,-tr,1+tr,0,-1,2,_t)||[],Er&&(ar=vt(Er,1).concat(ar)),Zr&&(ar=ar.concat(vt(Zr,-1)))),ar}function vt(Vt,_t){for(var tr=[],ar=0;ar<Vt.length;ar++){var Er=Vt[ar],Zr=Er.type,ri;if(Zr==="Point"||Zr==="MultiPoint"||Zr==="LineString")ri=nr(Er.geometry,_t);else if(Zr==="MultiLineString"||Zr==="Polygon"){ri=[];for(var $r=0;$r<Er.geometry.length;$r++)ri.push(nr(Er.geometry[$r],_t))}else if(Zr==="MultiPolygon")for(ri=[],$r=0;$r<Er.geometry.length;$r++){for(var zi=[],Ji=0;Ji<Er.geometry[$r].length;Ji++)zi.push(nr(Er.geometry[$r][Ji],_t));ri.push(zi)}tr.push(Ft(Er.id,Zr,ri,Er.tags))}return tr}function nr(Vt,_t){var tr=[];tr.size=Vt.size,Vt.start!==void 0&&(tr.start=Vt.start,tr.end=Vt.end);for(var ar=0;ar<Vt.length;ar+=3)tr.push(Vt[ar]+_t,Vt[ar+1],Vt[ar+2]);return tr}function ir(Vt,_t){if(Vt.transformed)return Vt;var tr=1<<Vt.z,ar=Vt.x,Er=Vt.y,Zr,ri,$r;for(Zr=0;Zr<Vt.features.length;Zr++){var zi=Vt.features[Zr],Ji=zi.geometry,en=zi.type;if(zi.geometry=[],en===1)for(ri=0;ri<Ji.length;ri+=2)zi.geometry.push(pr(Ji[ri],Ji[ri+1],_t,tr,ar,Er));else for(ri=0;ri<Ji.length;ri++){var cn=[];for($r=0;$r<Ji[ri].length;$r+=2)cn.push(pr(Ji[ri][$r],Ji[ri][$r+1],_t,tr,ar,Er));zi.geometry.push(cn)}}return Vt.transformed=!0,Vt}function pr(Vt,_t,tr,ar,Er,Zr){return[Math.round(tr*(Vt*ar-Er)),Math.round(tr*(_t*ar-Zr))]}function oi(Vt,_t,tr,ar,Er){for(var Zr=_t===Er.maxZoom?0:Er.tolerance/((1<<_t)*Er.extent),ri={features:[],numPoints:0,numSimplified:0,numFeatures:0,source:null,x:tr,y:ar,z:_t,transformed:!1,minX:2,minY:1,maxX:-1,maxY:0},$r=0;$r<Vt.length;$r++){ri.numFeatures++,di(ri,Vt[$r],Zr,Er);var zi=Vt[$r].minX,Ji=Vt[$r].minY,en=Vt[$r].maxX,cn=Vt[$r].maxY;zi<ri.minX&&(ri.minX=zi),Ji<ri.minY&&(ri.minY=Ji),en>ri.maxX&&(ri.maxX=en),cn>ri.maxY&&(ri.maxY=cn)}return ri}function di(Vt,_t,tr,ar){var Er=_t.geometry,Zr=_t.type,ri=[];if(Zr==="Point"||Zr==="MultiPoint")for(var $r=0;$r<Er.length;$r+=3)ri.push(Er[$r]),ri.push(Er[$r+1]),Vt.numPoints++,Vt.numSimplified++;else if(Zr==="LineString")Jr(ri,Er,Vt,tr,!1,!1);else if(Zr==="MultiLineString"||Zr==="Polygon")for($r=0;$r<Er.length;$r++)Jr(ri,Er[$r],Vt,tr,Zr==="Polygon",$r===0);else if(Zr==="MultiPolygon")for(var zi=0;zi<Er.length;zi++){var Ji=Er[zi];for($r=0;$r<Ji.length;$r++)Jr(ri,Ji[$r],Vt,tr,!0,$r===0)}if(ri.length){var en=_t.tags||null;if(Zr==="LineString"&&ar.lineMetrics){en={};for(var cn in _t.tags)en[cn]=_t.tags[cn];en.mapbox_clip_start=Er.start/Er.size,en.mapbox_clip_end=Er.end/Er.size}var yn={geometry:ri,type:Zr==="Polygon"||Zr==="MultiPolygon"?3:Zr==="LineString"||Zr==="MultiLineString"?2:1,tags:en};_t.id!==null&&(yn.id=_t.id),Vt.features.push(yn)}}function Jr(Vt,_t,tr,ar,Er,Zr){var ri=ar*ar;if(ar>0&&_t.size<(Er?ri:ar)){tr.numPoints+=_t.length/3;return}for(var $r=[],zi=0;zi<_t.length;zi+=3)(ar===0||_t[zi+2]>ri)&&(tr.numSimplified++,$r.push(_t[zi]),$r.push(_t[zi+1])),tr.numPoints++;Er&&fi($r,Zr),Vt.push($r)}function fi(Vt,_t){for(var tr=0,ar=0,Er=Vt.length,Zr=Er-2;ar<Er;Zr=ar,ar+=2)tr+=(Vt[ar]-Vt[Zr])*(Vt[ar+1]+Vt[Zr+1]);if(tr>0===_t)for(ar=0,Er=Vt.length;ar<Er/2;ar+=2){var ri=Vt[ar],$r=Vt[ar+1];Vt[ar]=Vt[Er-2-ar],Vt[ar+1]=Vt[Er-1-ar],Vt[Er-2-ar]=ri,Vt[Er-1-ar]=$r}}function Hi(Vt,_t){return new Pn(Vt,_t)}function Pn(Vt,_t){_t=this.options=pn(Object.create(this.options),_t);var tr=_t.debug;if(tr&&console.time("preprocess data"),_t.maxZoom<0||_t.maxZoom>24)throw new Error("maxZoom should be in the 0-24 range");if(_t.promoteId&&_t.generateId)throw new Error("promoteId and generateId cannot be used together.");var ar=Yt(Vt,_t);this.tiles={},this.tileCoords=[],tr&&(console.timeEnd("preprocess data"),console.log("index: maxZoom: %d, maxPoints: %d",_t.indexMaxZoom,_t.indexMaxPoints),console.time("generate tiles"),this.stats={},this.total=0),ar=Ce(ar,_t),ar.length&&this.splitTile(ar,0,0,0),tr&&(ar.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)))}Pn.prototype.options={maxZoom:14,indexMaxZoom:5,indexMaxPoints:1e5,tolerance:3,extent:4096,buffer:64,lineMetrics:!1,promoteId:null,generateId:!1,debug:0},Pn.prototype.splitTile=function(Vt,_t,tr,ar,Er,Zr,ri){for(var $r=[Vt,_t,tr,ar],zi=this.options,Ji=zi.debug;$r.length;){ar=$r.pop(),tr=$r.pop(),_t=$r.pop(),Vt=$r.pop();var en=1<<_t,cn=wn(_t,tr,ar),yn=this.tiles[cn];if(!yn&&(Ji>1&&console.time("creation"),yn=this.tiles[cn]=oi(Vt,_t,tr,ar,zi),this.tileCoords.push({z:_t,x:tr,y:ar}),Ji)){Ji>1&&(console.log("tile z%d-%d-%d (features: %d, points: %d, simplified: %d)",_t,tr,ar,yn.numFeatures,yn.numPoints,yn.numSimplified),console.timeEnd("creation"));var Mn="z"+_t;this.stats[Mn]=(this.stats[Mn]||0)+1,this.total++}if(yn.source=Vt,Er){if(_t===zi.maxZoom||_t===Er)continue;var Ba=1<<Er-_t;if(tr!==Math.floor(Zr/Ba)||ar!==Math.floor(ri/Ba))continue}else if(_t===zi.indexMaxZoom||yn.numPoints<=zi.indexMaxPoints)continue;if(yn.source=null,Vt.length!==0){Ji>1&&console.time("clipping");var la=.5*zi.buffer/zi.extent,ma=.5-la,Wa=.5+la,Fa=1+la,Wo,da,Wn,Ga,vo,jn;Wo=da=Wn=Ga=null,vo=dt(Vt,en,tr-la,tr+Wa,0,yn.minX,yn.maxX,zi),jn=dt(Vt,en,tr+ma,tr+Fa,0,yn.minX,yn.maxX,zi),Vt=null,vo&&(Wo=dt(vo,en,ar-la,ar+Wa,1,yn.minY,yn.maxY,zi),da=dt(vo,en,ar+ma,ar+Fa,1,yn.minY,yn.maxY,zi),vo=null),jn&&(Wn=dt(jn,en,ar-la,ar+Wa,1,yn.minY,yn.maxY,zi),Ga=dt(jn,en,ar+ma,ar+Fa,1,yn.minY,yn.maxY,zi),jn=null),Ji>1&&console.timeEnd("clipping"),$r.push(Wo||[],_t+1,tr*2,ar*2),$r.push(da||[],_t+1,tr*2,ar*2+1),$r.push(Wn||[],_t+1,tr*2+1,ar*2),$r.push(Ga||[],_t+1,tr*2+1,ar*2+1)}}},Pn.prototype.getTile=function(Vt,_t,tr){var ar=this.options,Er=ar.extent,Zr=ar.debug;if(Vt<0||Vt>24)return null;var ri=1<<Vt;_t=(_t%ri+ri)%ri;var $r=wn(Vt,_t,tr);if(this.tiles[$r])return ir(this.tiles[$r],Er);Zr>1&&console.log("drilling down to z%d-%d-%d",Vt,_t,tr);for(var zi=Vt,Ji=_t,en=tr,cn;!cn&&zi>0;)zi--,Ji=Math.floor(Ji/2),en=Math.floor(en/2),cn=this.tiles[wn(zi,Ji,en)];return!cn||!cn.source?null:(Zr>1&&console.log("found parent tile z%d-%d-%d",zi,Ji,en),Zr>1&&console.time("drilling down"),this.splitTile(cn.source,zi,Ji,en,Vt,_t,tr),Zr>1&&console.timeEnd("drilling down"),this.tiles[$r]?ir(this.tiles[$r],Er):null)};function wn(Vt,_t,tr){return((1<<Vt)*tr+_t)*32+Vt}function pn(Vt,_t){for(var tr in _t)Vt[tr]=_t[tr];return Vt}function Vn(Vt,_t){var tr=Vt.tileID.canonical;if(!this._geoJSONIndex)return _t(null,null);var ar=this._geoJSONIndex.getTile(tr.z,tr.x,tr.y);if(!ar)return _t(null,null);var Er=new k(ar.features),Zr=z(Er);(Zr.byteOffset!==0||Zr.byteLength!==Zr.buffer.byteLength)&&(Zr=new Uint8Array(Zr)),_t(null,{vectorTile:Er,rawData:Zr.buffer})}var kn=function(Vt){function _t(tr,ar,Er,Zr){Vt.call(this,tr,ar,Er,Vn),Zr&&(this.loadGeoJSON=Zr)}return Vt&&(_t.__proto__=Vt),_t.prototype=Object.create(Vt&&Vt.prototype),_t.prototype.constructor=_t,_t.prototype.loadData=function(ar,Er){this._pendingCallback&&this._pendingCallback(null,{abandoned:!0}),this._pendingCallback=Er,this._pendingLoadDataParams=ar,this._state&&this._state!=="Idle"?this._state="NeedsLoadData":(this._state="Coalescing",this._loadData())},_t.prototype._loadData=function(){var ar=this;if(!(!this._pendingCallback||!this._pendingLoadDataParams)){var Er=this._pendingCallback,Zr=this._pendingLoadDataParams;delete this._pendingCallback,delete this._pendingLoadDataParams;var ri=Zr&&Zr.request&&Zr.request.collectResourceTiming?new i.RequestPerformance(Zr.request):!1;this.loadGeoJSON(Zr,function($r,zi){if($r||!zi)return Er($r);if(typeof zi!="object")return Er(new Error("Input data given to '"+Zr.source+"' is not a valid GeoJSON object."));p(zi,!0);try{if(Zr.filter){var Ji=i.createExpression(Zr.filter,{type:"boolean","property-type":"data-driven",overridable:!1,transition:!1});if(Ji.result==="error")throw new Error(Ji.value.map(function(Mn){return Mn.key+": "+Mn.message}).join(", "));var en=zi.features.filter(function(Mn){return Ji.value.evaluate({zoom:0},Mn)});zi={type:"FeatureCollection",features:en}}ar._geoJSONIndex=Zr.cluster?new pt(ea(Zr)).load(zi.features):Hi(zi,Zr.geojsonVtOptions)}catch(Mn){return Er(Mn)}ar.loaded={};var cn={};if(ri){var yn=ri.finish();yn&&(cn.resourceTiming={},cn.resourceTiming[Zr.source]=JSON.parse(JSON.stringify(yn)))}Er(null,cn)})}},_t.prototype.coalesce=function(){this._state==="Coalescing"?this._state="Idle":this._state==="NeedsLoadData"&&(this._state="Coalescing",this._loadData())},_t.prototype.reloadTile=function(ar,Er){var Zr=this.loaded,ri=ar.uid;return Zr&&Zr[ri]?Vt.prototype.reloadTile.call(this,ar,Er):this.loadTile(ar,Er)},_t.prototype.loadGeoJSON=function(ar,Er){if(ar.request)i.getJSON(ar.request,Er);else if(typeof ar.data=="string")try{return Er(null,JSON.parse(ar.data))}catch(Zr){return Er(new Error("Input data given to '"+ar.source+"' is not a valid GeoJSON object."))}else return Er(new Error("Input data given to '"+ar.source+"' is not a valid GeoJSON object."))},_t.prototype.removeSource=function(ar,Er){this._pendingCallback&&this._pendingCallback(null,{abandoned:!0}),Er()},_t.prototype.getClusterExpansionZoom=function(ar,Er){try{Er(null,this._geoJSONIndex.getClusterExpansionZoom(ar.clusterId))}catch(Zr){Er(Zr)}},_t.prototype.getClusterChildren=function(ar,Er){try{Er(null,this._geoJSONIndex.getChildren(ar.clusterId))}catch(Zr){Er(Zr)}},_t.prototype.getClusterLeaves=function(ar,Er){try{Er(null,this._geoJSONIndex.getLeaves(ar.clusterId,ar.limit,ar.offset))}catch(Zr){Er(Zr)}},_t}(v);function ea(Vt){var _t=Vt.superclusterOptions,tr=Vt.clusterProperties;if(!tr||!_t)return _t;for(var ar={},Er={},Zr={accumulated:null,zoom:0},ri={properties:null},$r=Object.keys(tr),zi=0,Ji=$r;zi<Ji.length;zi+=1){var en=Ji[zi],cn=tr[en],yn=cn[0],Mn=cn[1],Ba=i.createExpression(Mn),la=i.createExpression(typeof yn=="string"?[yn,["accumulated"],["get",en]]:yn);ar[en]=Ba.value,Er[en]=la.value}return _t.map=function(ma){ri.properties=ma;for(var Wa={},Fa=0,Wo=$r;Fa<Wo.length;Fa+=1){var da=Wo[Fa];Wa[da]=ar[da].evaluate(Zr,ri)}return Wa},_t.reduce=function(ma,Wa){ri.properties=Wa;for(var Fa=0,Wo=$r;Fa<Wo.length;Fa+=1){var da=Wo[Fa];Zr.accumulated=ma[da],ma[da]=Er[da].evaluate(Zr,ri)}},_t}var ua=function(_t){var tr=this;this.self=_t,this.actor=new i.Actor(_t,this),this.layerIndexes={},this.availableImages={},this.workerSourceTypes={vector:v,geojson:kn},this.workerSources={},this.demWorkerSources={},this.self.registerWorkerSource=function(ar,Er){if(tr.workerSourceTypes[ar])throw new Error('Worker source with name "'+ar+'" already registered.');tr.workerSourceTypes[ar]=Er},this.self.registerRTLTextPlugin=function(ar){if(i.plugin.isParsed())throw new Error("RTL text plugin already registered.");i.plugin.applyArabicShaping=ar.applyArabicShaping,i.plugin.processBidirectionalText=ar.processBidirectionalText,i.plugin.processStyledBidirectionalText=ar.processStyledBidirectionalText}};return ua.prototype.setReferrer=function(_t,tr){this.referrer=tr},ua.prototype.setImages=function(_t,tr,ar){this.availableImages[_t]=tr;for(var Er in this.workerSources[_t]){var Zr=this.workerSources[_t][Er];for(var ri in Zr)Zr[ri].availableImages=tr}ar()},ua.prototype.setLayers=function(_t,tr,ar){this.getLayerIndex(_t).replace(tr),ar()},ua.prototype.updateLayers=function(_t,tr,ar){this.getLayerIndex(_t).update(tr.layers,tr.removedIds),ar()},ua.prototype.loadTile=function(_t,tr,ar){this.getWorkerSource(_t,tr.type,tr.source).loadTile(tr,ar)},ua.prototype.loadDEMTile=function(_t,tr,ar){this.getDEMWorkerSource(_t,tr.source).loadTile(tr,ar)},ua.prototype.reloadTile=function(_t,tr,ar){this.getWorkerSource(_t,tr.type,tr.source).reloadTile(tr,ar)},ua.prototype.abortTile=function(_t,tr,ar){this.getWorkerSource(_t,tr.type,tr.source).abortTile(tr,ar)},ua.prototype.removeTile=function(_t,tr,ar){this.getWorkerSource(_t,tr.type,tr.source).removeTile(tr,ar)},ua.prototype.removeDEMTile=function(_t,tr){this.getDEMWorkerSource(_t,tr.source).removeTile(tr)},ua.prototype.removeSource=function(_t,tr,ar){if(!(!this.workerSources[_t]||!this.workerSources[_t][tr.type]||!this.workerSources[_t][tr.type][tr.source])){var Er=this.workerSources[_t][tr.type][tr.source];delete this.workerSources[_t][tr.type][tr.source],Er.removeSource!==void 0?Er.removeSource(tr,ar):ar()}},ua.prototype.loadWorkerSource=function(_t,tr,ar){try{this.self.importScripts(tr.url),ar()}catch(Er){ar(Er.toString())}},ua.prototype.syncRTLPluginState=function(_t,tr,ar){try{i.plugin.setState(tr);var Er=i.plugin.getPluginURL();if(i.plugin.isLoaded()&&!i.plugin.isParsed()&&Er!=null){this.self.importScripts(Er);var Zr=i.plugin.isParsed(),ri=Zr?void 0:new Error("RTL Text Plugin failed to import scripts from "+Er);ar(ri,Zr)}}catch($r){ar($r.toString())}},ua.prototype.getAvailableImages=function(_t){var tr=this.availableImages[_t];return tr||(tr=[]),tr},ua.prototype.getLayerIndex=function(_t){var tr=this.layerIndexes[_t];return tr||(tr=this.layerIndexes[_t]=new l),tr},ua.prototype.getWorkerSource=function(_t,tr,ar){var Er=this;if(this.workerSources[_t]||(this.workerSources[_t]={}),this.workerSources[_t][tr]||(this.workerSources[_t][tr]={}),!this.workerSources[_t][tr][ar]){var Zr={send:function(ri,$r,zi){Er.actor.send(ri,$r,zi,_t)}};this.workerSources[_t][tr][ar]=new this.workerSourceTypes[tr](Zr,this.getLayerIndex(_t),this.getAvailableImages(_t))}return this.workerSources[_t][tr][ar]},ua.prototype.getDEMWorkerSource=function(_t,tr){return this.demWorkerSources[_t]||(this.demWorkerSources[_t]={}),this.demWorkerSources[_t][tr]||(this.demWorkerSources[_t][tr]=new b),this.demWorkerSources[_t][tr]},ua.prototype.enforceCacheSizeLimit=function(_t,tr){i.enforceCacheSizeLimit(tr)},typeof WorkerGlobalScope!="undefined"&&typeof self!="undefined"&&self instanceof WorkerGlobalScope&&(self.worker=new ua(self)),ua}),n(["./shared"],function(i){"use strict";var a=i.createCommonjsModule(function(Y){Y.exports?Y.exports=D:window&&(window.mapboxgl=window.mapboxgl||{},window.mapboxgl.supported=D,window.mapboxgl.notSupportedReason=J);function D(kt){return!J(kt)}function J(kt){if(!q())return"not a browser";if(!K())return"insufficent Array support";if(!de())return"insufficient Function support";if(!ne())return"insufficient Object support";if(!we())return"insufficient JSON support";if(!Ue())return"insufficient worker support";if(!ft())return"insufficient Uint8ClampedArray support";if(!Zt())return"insufficient ArrayBuffer support";if(!hr())return"insufficient Canvas/getImageData support";if(!Ve(kt&&kt.failIfMajorPerformanceCaveat))return"insufficient WebGL support"}function q(){return typeof window!="undefined"&&typeof document!="undefined"}function K(){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 de(){return Function.prototype&&Function.prototype.bind}function ne(){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 we(){return"JSON"in window&&"parse"in JSON&&"stringify"in JSON}function Ue(){if(!("Worker"in window&&"Blob"in window&&"URL"in window))return!1;var kt=new Blob([""],{type:"text/javascript"}),Ot=URL.createObjectURL(kt),It,Bt;try{Bt=new Worker(Ot),It=!0}catch(Rt){It=!1}return Bt&&Bt.terminate(),URL.revokeObjectURL(Ot),It}function ft(){return"Uint8ClampedArray"in window}function Zt(){return ArrayBuffer.isView}function hr(){var kt=document.createElement("canvas");kt.width=kt.height=1;var Ot=kt.getContext("2d");if(!Ot)return!1;var It=Ot.getImageData(0,0,1,1);return It&&It.width===kt.width}var qt={};function Ve(kt){return qt[kt]===void 0&&(qt[kt]=at(kt)),qt[kt]}D.webGLContextAttributes={antialias:!1,alpha:!0,stencil:!0,depth:!0};function et(kt){var Ot=document.createElement("canvas"),It=Object.create(D.webGLContextAttributes);return It.failIfMajorPerformanceCaveat=kt,Ot.probablySupportsContext?Ot.probablySupportsContext("webgl",It)||Ot.probablySupportsContext("experimental-webgl",It):Ot.supportsContext?Ot.supportsContext("webgl",It)||Ot.supportsContext("experimental-webgl",It):Ot.getContext("webgl",It)||Ot.getContext("experimental-webgl",It)}function at(kt){var Ot=et(kt);if(!Ot)return!1;var It=Ot.createShader(Ot.VERTEX_SHADER);return!It||Ot.isContextLost()?!1:(Ot.shaderSource(It,"void main() {}"),Ot.compileShader(It),Ot.getShaderParameter(It,Ot.COMPILE_STATUS)===!0)}}),o={};o.create=function(Y,D,J){var q=i.window.document.createElement(Y);return D!==void 0&&(q.className=D),J&&J.appendChild(q),q},o.createNS=function(Y,D){var J=i.window.document.createElementNS(Y,D);return J};var s=i.window.document&&i.window.document.documentElement.style;function l(Y){if(!s)return Y[0];for(var D=0;D<Y.length;D++)if(Y[D]in s)return Y[D];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,D){Y.style[f]=D};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,D,J,q){q===void 0&&(q={}),"passive"in q&&h?Y.addEventListener(D,J,q):Y.addEventListener(D,J,q.capture)},o.removeEventListener=function(Y,D,J,q){q===void 0&&(q={}),"passive"in q&&h?Y.removeEventListener(D,J,q):Y.removeEventListener(D,J,q.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,D){var J=Y.getBoundingClientRect();return new i.Point(D.clientX-J.left-Y.clientLeft,D.clientY-J.top-Y.clientTop)},o.touchPos=function(Y,D){for(var J=Y.getBoundingClientRect(),q=[],K=0;K<D.length;K++)q.push(new i.Point(D[K].clientX-J.left-Y.clientLeft,D[K].clientY-J.top-Y.clientTop));return q},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,D,J){var q,K,de,ne=i.browser.devicePixelRatio>1?"@2x":"",we=i.getJSON(D.transformRequest(D.normalizeSpriteURL(Y,ne,".json"),i.ResourceType.SpriteJSON),function(Zt,hr){we=null,de||(de=Zt,q=hr,ft())}),Ue=i.getImage(D.transformRequest(D.normalizeSpriteURL(Y,ne,".png"),i.ResourceType.SpriteImage),function(Zt,hr){Ue=null,de||(de=Zt,K=hr,ft())});function ft(){if(de)J(de);else if(q&&K){var Zt=i.browser.getImageData(K),hr={};for(var qt in q){var Ve=q[qt],et=Ve.width,at=Ve.height,kt=Ve.x,Ot=Ve.y,It=Ve.sdf,Bt=Ve.pixelRatio,Rt=Ve.stretchX,mt=Ve.stretchY,Pt=Ve.content,ht=new i.RGBAImage({width:et,height:at});i.RGBAImage.copy(Zt,ht,{x:kt,y:Ot},{x:0,y:0},{width:et,height:at}),hr[qt]={data:ht,pixelRatio:Bt,sdf:It,stretchX:Rt,stretchY:mt,content:Pt}}J(null,hr)}}return{cancel:function(){we&&(we.cancel(),we=null),Ue&&(Ue.cancel(),Ue=null)}}}function b(Y){var D=Y.userImage;if(D&&D.render){var J=D.render();if(J)return Y.data.replace(new Uint8Array(D.data.buffer)),!0}return!1}var p=1,C=function(Y){function D(){Y.call(this),this.images={},this.updatedImages={},this.callbackDispatchedThisFrame={},this.loaded=!1,this.requestors=[],this.patterns={},this.atlasImage=new i.RGBAImage({width:1,height:1}),this.dirty=!0}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.isLoaded=function(){return this.loaded},D.prototype.setLoaded=function(q){if(this.loaded!==q&&(this.loaded=q,q)){for(var K=0,de=this.requestors;K<de.length;K+=1){var ne=de[K],we=ne.ids,Ue=ne.callback;this._notify(we,Ue)}this.requestors=[]}},D.prototype.getImage=function(q){return this.images[q]},D.prototype.addImage=function(q,K){this._validate(q,K)&&(this.images[q]=K)},D.prototype._validate=function(q,K){var de=!0;return this._validateStretch(K.stretchX,K.data&&K.data.width)||(this.fire(new i.ErrorEvent(new Error('Image "'+q+'" has invalid "stretchX" value'))),de=!1),this._validateStretch(K.stretchY,K.data&&K.data.height)||(this.fire(new i.ErrorEvent(new Error('Image "'+q+'" has invalid "stretchY" value'))),de=!1),this._validateContent(K.content,K)||(this.fire(new i.ErrorEvent(new Error('Image "'+q+'" has invalid "content" value'))),de=!1),de},D.prototype._validateStretch=function(q,K){if(!q)return!0;for(var de=0,ne=0,we=q;ne<we.length;ne+=1){var Ue=we[ne];if(Ue[0]<de||Ue[1]<Ue[0]||K<Ue[1])return!1;de=Ue[1]}return!0},D.prototype._validateContent=function(q,K){return q?!(q.length!==4||q[0]<0||K.data.width<q[0]||q[1]<0||K.data.height<q[1]||q[2]<0||K.data.width<q[2]||q[3]<0||K.data.height<q[3]||q[2]<q[0]||q[3]<q[1]):!0},D.prototype.updateImage=function(q,K){var de=this.images[q];K.version=de.version+1,this.images[q]=K,this.updatedImages[q]=!0},D.prototype.removeImage=function(q){var K=this.images[q];delete this.images[q],delete this.patterns[q],K.userImage&&K.userImage.onRemove&&K.userImage.onRemove()},D.prototype.listImages=function(){return Object.keys(this.images)},D.prototype.getImages=function(q,K){var de=!0;if(!this.isLoaded())for(var ne=0,we=q;ne<we.length;ne+=1){var Ue=we[ne];this.images[Ue]||(de=!1)}this.isLoaded()||de?this._notify(q,K):this.requestors.push({ids:q,callback:K})},D.prototype._notify=function(q,K){for(var de={},ne=0,we=q;ne<we.length;ne+=1){var Ue=we[ne];this.images[Ue]||this.fire(new i.Event("styleimagemissing",{id:Ue}));var ft=this.images[Ue];ft?de[Ue]={data:ft.data.clone(),pixelRatio:ft.pixelRatio,sdf:ft.sdf,version:ft.version,stretchX:ft.stretchX,stretchY:ft.stretchY,content:ft.content,hasRenderCallback:!!(ft.userImage&&ft.userImage.render)}:i.warnOnce('Image "'+Ue+'" 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.')}K(null,de)},D.prototype.getPixelSize=function(){var q=this.atlasImage,K=q.width,de=q.height;return{width:K,height:de}},D.prototype.getPattern=function(q){var K=this.patterns[q],de=this.getImage(q);if(!de)return null;if(K&&K.position.version===de.version)return K.position;if(K)K.position.version=de.version;else{var ne=de.data.width+p*2,we=de.data.height+p*2,Ue={w:ne,h:we,x:0,y:0},ft=new i.ImagePosition(Ue,de);this.patterns[q]={bin:Ue,position:ft}}return this._updatePatternAtlas(),this.patterns[q].position},D.prototype.bind=function(q){var K=q.gl;this.atlasTexture?this.dirty&&(this.atlasTexture.update(this.atlasImage),this.dirty=!1):this.atlasTexture=new i.Texture(q,this.atlasImage,K.RGBA),this.atlasTexture.bind(K.LINEAR,K.CLAMP_TO_EDGE)},D.prototype._updatePatternAtlas=function(){var q=[];for(var K in this.patterns)q.push(this.patterns[K].bin);var de=i.potpack(q),ne=de.w,we=de.h,Ue=this.atlasImage;Ue.resize({width:ne||1,height:we||1});for(var ft in this.patterns){var Zt=this.patterns[ft],hr=Zt.bin,qt=hr.x+p,Ve=hr.y+p,et=this.images[ft].data,at=et.width,kt=et.height;i.RGBAImage.copy(et,Ue,{x:0,y:0},{x:qt,y:Ve},{width:at,height:kt}),i.RGBAImage.copy(et,Ue,{x:0,y:kt-1},{x:qt,y:Ve-1},{width:at,height:1}),i.RGBAImage.copy(et,Ue,{x:0,y:0},{x:qt,y:Ve+kt},{width:at,height:1}),i.RGBAImage.copy(et,Ue,{x:at-1,y:0},{x:qt-1,y:Ve},{width:1,height:kt}),i.RGBAImage.copy(et,Ue,{x:0,y:0},{x:qt+at,y:Ve},{width:1,height:kt})}this.dirty=!0},D.prototype.beginFrame=function(){this.callbackDispatchedThisFrame={}},D.prototype.dispatchRenderCallbacks=function(q){for(var K=0,de=q;K<de.length;K+=1){var ne=de[K];if(!this.callbackDispatchedThisFrame[ne]){this.callbackDispatchedThisFrame[ne]=!0;var we=this.images[ne],Ue=b(we);Ue&&this.updateImage(ne,we)}}},D}(i.Evented);function E(Y,D,J,q,K){var de=D*256,ne=de+255,we=q.transformRequest(q.normalizeGlyphsURL(J).replace("{fontstack}",Y).replace("{range}",de+"-"+ne),i.ResourceType.Glyphs);i.getArrayBuffer(we,function(Ue,ft){if(Ue)K(Ue);else if(ft){for(var Zt={},hr=0,qt=i.parseGlyphPBF(ft);hr<qt.length;hr+=1){var Ve=qt[hr];Zt[Ve.id]=Ve}K(null,Zt)}})}var A=k,L=k,_=1e20;function k(Y,D,J,q,K,de){this.fontSize=Y||24,this.buffer=D===void 0?3:D,this.cutoff=q||.25,this.fontFamily=K||"sans-serif",this.fontWeight=de||"normal",this.radius=J||8;var ne=this.size=this.fontSize+this.buffer*2;this.canvas=document.createElement("canvas"),this.canvas.width=this.canvas.height=ne,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(ne*ne),this.gridInner=new Float64Array(ne*ne),this.f=new Float64Array(ne),this.d=new Float64Array(ne),this.z=new Float64Array(ne+1),this.v=new Int16Array(ne),this.middle=Math.round(ne/2*(navigator.userAgent.indexOf("Gecko/")>=0?1.2:1))}k.prototype.draw=function(Y){this.ctx.clearRect(0,0,this.size,this.size),this.ctx.fillText(Y,this.buffer,this.middle);for(var D=this.ctx.getImageData(0,0,this.size,this.size),J=new Uint8ClampedArray(this.size*this.size),q=0;q<this.size*this.size;q++){var K=D.data[q*4+3]/255;this.gridOuter[q]=K===1?0:K===0?_:Math.pow(Math.max(0,.5-K),2),this.gridInner[q]=K===1?_:K===0?0:Math.pow(Math.max(0,K-.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),q=0;q<this.size*this.size;q++){var de=this.gridOuter[q]-this.gridInner[q];J[q]=Math.max(0,Math.min(255,Math.round(255-255*(de/this.radius+this.cutoff))))}return J};function M(Y,D,J,q,K,de,ne){for(var we=0;we<D;we++){for(var Ue=0;Ue<J;Ue++)q[Ue]=Y[Ue*D+we];for(g(q,K,de,ne,J),Ue=0;Ue<J;Ue++)Y[Ue*D+we]=K[Ue]}for(Ue=0;Ue<J;Ue++){for(we=0;we<D;we++)q[we]=Y[Ue*D+we];for(g(q,K,de,ne,D),we=0;we<D;we++)Y[Ue*D+we]=Math.sqrt(K[we])}}function g(Y,D,J,q,K){J[0]=0,q[0]=-_,q[1]=+_;for(var de=1,ne=0;de<K;de++){for(var we=(Y[de]+de*de-(Y[J[ne]]+J[ne]*J[ne]))/(2*de-2*J[ne]);we<=q[ne];)ne--,we=(Y[de]+de*de-(Y[J[ne]]+J[ne]*J[ne]))/(2*de-2*J[ne]);ne++,J[ne]=de,q[ne]=we,q[ne+1]=+_}for(de=0,ne=0;de<K;de++){for(;q[ne+1]<de;)ne++;D[de]=(de-J[ne])*(de-J[ne])+Y[J[ne]]}}A.default=L;var P=function(D,J){this.requestManager=D,this.localIdeographFontFamily=J,this.entries={}};P.prototype.setURL=function(D){this.url=D},P.prototype.getGlyphs=function(D,J){var q=this,K=[];for(var de in D)for(var ne=0,we=D[de];ne<we.length;ne+=1){var Ue=we[ne];K.push({stack:de,id:Ue})}i.asyncAll(K,function(ft,Zt){var hr=ft.stack,qt=ft.id,Ve=q.entries[hr];Ve||(Ve=q.entries[hr]={glyphs:{},requests:{},ranges:{}});var et=Ve.glyphs[qt];if(et!==void 0){Zt(null,{stack:hr,id:qt,glyph:et});return}if(et=q._tinySDF(Ve,hr,qt),et){Ve.glyphs[qt]=et,Zt(null,{stack:hr,id:qt,glyph:et});return}var at=Math.floor(qt/256);if(at*256>65535){Zt(new Error("glyphs > 65535 not supported"));return}if(Ve.ranges[at]){Zt(null,{stack:hr,id:qt,glyph:et});return}var kt=Ve.requests[at];kt||(kt=Ve.requests[at]=[],P.loadGlyphRange(hr,at,q.url,q.requestManager,function(Ot,It){if(It){for(var Bt in It)q._doesCharSupportLocalGlyph(+Bt)||(Ve.glyphs[+Bt]=It[+Bt]);Ve.ranges[at]=!0}for(var Rt=0,mt=kt;Rt<mt.length;Rt+=1){var Pt=mt[Rt];Pt(Ot,It)}delete Ve.requests[at]})),kt.push(function(Ot,It){Ot?Zt(Ot):It&&Zt(null,{stack:hr,id:qt,glyph:It[qt]||null})})},function(ft,Zt){if(ft)J(ft);else if(Zt){for(var hr={},qt=0,Ve=Zt;qt<Ve.length;qt+=1){var et=Ve[qt],at=et.stack,kt=et.id,Ot=et.glyph;(hr[at]||(hr[at]={}))[kt]=Ot&&{id:Ot.id,bitmap:Ot.bitmap.clone(),metrics:Ot.metrics}}J(null,hr)}})},P.prototype._doesCharSupportLocalGlyph=function(D){return!!this.localIdeographFontFamily&&(i.isChar["CJK Unified Ideographs"](D)||i.isChar["Hangul Syllables"](D)||i.isChar.Hiragana(D)||i.isChar.Katakana(D))},P.prototype._tinySDF=function(D,J,q){var K=this.localIdeographFontFamily;if(K&&this._doesCharSupportLocalGlyph(q)){var de=D.tinySDF;if(!de){var ne="400";/bold/i.test(J)?ne="900":/medium/i.test(J)?ne="500":/light/i.test(J)&&(ne="200"),de=D.tinySDF=new P.TinySDF(24,3,8,.25,K,ne)}return{id:q,bitmap:new i.AlphaImage({width:30,height:30},de.draw(String.fromCharCode(q))),metrics:{width:24,height:24,left:0,top:-8,advance:24}}}},P.loadGlyphRange=E,P.TinySDF=A;var T=function(){this.specification=i.styleSpec.light.position};T.prototype.possiblyEvaluate=function(D,J){return i.sphericalToCartesian(D.expression.evaluate(J))},T.prototype.interpolate=function(D,J,q){return{x:i.number(D.x,J.x,q),y:i.number(D.y,J.y,q),z:i.number(D.z,J.z,q)}};var z=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)}),O="-transition",V=function(Y){function D(J){Y.call(this),this._transitionable=new i.Transitionable(z),this.setLight(J),this._transitioning=this._transitionable.untransitioned()}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.getLight=function(){return this._transitionable.serialize()},D.prototype.setLight=function(q,K){if(K===void 0&&(K={}),!this._validate(i.validateLight,q,K))for(var de in q){var ne=q[de];i.endsWith(de,O)?this._transitionable.setTransition(de.slice(0,-O.length),ne):this._transitionable.setValue(de,ne)}},D.prototype.updateTransitions=function(q){this._transitioning=this._transitionable.transitioned(q,this._transitioning)},D.prototype.hasTransition=function(){return this._transitioning.hasTransition()},D.prototype.recalculate=function(q){this.properties=this._transitioning.possiblyEvaluate(q)},D.prototype._validate=function(q,K,de){return de&&de.validate===!1?!1:i.emitValidationErrors(this,q.call(i.validateStyle,i.extend({value:K,style:{glyphs:!0,sprite:!0},styleSpec:i.styleSpec})))},D}(i.Evented),G=function(D,J){this.width=D,this.height=J,this.nextRow=0,this.data=new Uint8Array(this.width*this.height),this.dashEntry={}};G.prototype.getDash=function(D,J){var q=D.join(",")+String(J);return this.dashEntry[q]||(this.dashEntry[q]=this.addDash(D,J)),this.dashEntry[q]},G.prototype.getDashRanges=function(D,J,q){var K=D.length%2===1,de=[],ne=K?-D[D.length-1]*q:0,we=D[0]*q,Ue=!0;de.push({left:ne,right:we,isDash:Ue,zeroLength:D[0]===0});for(var ft=D[0],Zt=1;Zt<D.length;Zt++){Ue=!Ue;var hr=D[Zt];ne=ft*q,ft+=hr,we=ft*q,de.push({left:ne,right:we,isDash:Ue,zeroLength:hr===0})}return de},G.prototype.addRoundDash=function(D,J,q){for(var K=J/2,de=-q;de<=q;de++)for(var ne=this.nextRow+q+de,we=this.width*ne,Ue=0,ft=D[Ue],Zt=0;Zt<this.width;Zt++){Zt/ft.right>1&&(ft=D[++Ue]);var hr=Math.abs(Zt-ft.left),qt=Math.abs(Zt-ft.right),Ve=Math.min(hr,qt),et=void 0,at=de/q*(K+1);if(ft.isDash){var kt=K-Math.abs(at);et=Math.sqrt(Ve*Ve+kt*kt)}else et=K-Math.sqrt(Ve*Ve+at*at);this.data[we+Zt]=Math.max(0,Math.min(255,et+128))}},G.prototype.addRegularDash=function(D){for(var J=D.length-1;J>=0;--J){var q=D[J],K=D[J+1];q.zeroLength?D.splice(J,1):K&&K.isDash===q.isDash&&(K.left=q.left,D.splice(J,1))}var de=D[0],ne=D[D.length-1];de.isDash===ne.isDash&&(de.left=ne.left-this.width,ne.right=de.right+this.width);for(var we=this.width*this.nextRow,Ue=0,ft=D[Ue],Zt=0;Zt<this.width;Zt++){Zt/ft.right>1&&(ft=D[++Ue]);var hr=Math.abs(Zt-ft.left),qt=Math.abs(Zt-ft.right),Ve=Math.min(hr,qt),et=ft.isDash?Ve:-Ve;this.data[we+Zt]=Math.max(0,Math.min(255,et+128))}},G.prototype.addDash=function(D,J){var q=J?7:0,K=2*q+1;if(this.nextRow+K>this.height)return i.warnOnce("LineAtlas out of space"),null;for(var de=0,ne=0;ne<D.length;ne++)de+=D[ne];if(de!==0){var we=this.width/de,Ue=this.getDashRanges(D,this.width,we);J?this.addRoundDash(Ue,we,q):this.addRegularDash(Ue)}var ft={y:(this.nextRow+q+.5)/this.height,height:2*q/this.height,width:de};return this.nextRow+=K,this.dirty=!0,ft},G.prototype.bind=function(D){var J=D.gl;this.texture?(J.bindTexture(J.TEXTURE_2D,this.texture),this.dirty&&(this.dirty=!1,J.texSubImage2D(J.TEXTURE_2D,0,0,0,this.width,this.height,J.ALPHA,J.UNSIGNED_BYTE,this.data))):(this.texture=J.createTexture(),J.bindTexture(J.TEXTURE_2D,this.texture),J.texParameteri(J.TEXTURE_2D,J.TEXTURE_WRAP_S,J.REPEAT),J.texParameteri(J.TEXTURE_2D,J.TEXTURE_WRAP_T,J.REPEAT),J.texParameteri(J.TEXTURE_2D,J.TEXTURE_MIN_FILTER,J.LINEAR),J.texParameteri(J.TEXTURE_2D,J.TEXTURE_MAG_FILTER,J.LINEAR),J.texImage2D(J.TEXTURE_2D,0,J.ALPHA,this.width,this.height,0,J.ALPHA,J.UNSIGNED_BYTE,this.data))};var Z=function Y(D,J){this.workerPool=D,this.actors=[],this.currentActor=0,this.id=i.uniqueId();for(var q=this.workerPool.acquire(this.id),K=0;K<q.length;K++){var de=q[K],ne=new Y.Actor(de,J,this.id);ne.name="Worker "+K,this.actors.push(ne)}};Z.prototype.broadcast=function(D,J,q){q=q||function(){},i.asyncAll(this.actors,function(K,de){K.send(D,J,de)},q)},Z.prototype.getActor=function(){return this.currentActor=(this.currentActor+1)%this.actors.length,this.actors[this.currentActor]},Z.prototype.remove=function(){this.actors.forEach(function(D){D.remove()}),this.actors=[],this.workerPool.release(this.id)},Z.Actor=i.Actor;function H(Y,D,J){var q=function(K,de){if(K)return J(K);if(de){var ne=i.pick(i.extend(de,Y),["tiles","minzoom","maxzoom","attribution","mapbox_logo","bounds","scheme","tileSize","encoding"]);de.vector_layers&&(ne.vectorLayers=de.vector_layers,ne.vectorLayerIds=ne.vectorLayers.map(function(we){return we.id})),ne.tiles=D.canonicalizeTileset(ne,Y.url),J(null,ne)}};return Y.url?i.getJSON(D.transformRequest(D.normalizeSourceURL(Y.url),i.ResourceType.Source),q):i.browser.frame(function(){return q(null,Y)})}var N=function(D,J,q){this.bounds=i.LngLatBounds.convert(this.validateBounds(D)),this.minzoom=J||0,this.maxzoom=q||24};N.prototype.validateBounds=function(D){return!Array.isArray(D)||D.length!==4?[-180,-90,180,90]:[Math.max(-180,D[0]),Math.max(-90,D[1]),Math.min(180,D[2]),Math.min(90,D[3])]},N.prototype.contains=function(D){var J=Math.pow(2,D.z),q={minX:Math.floor(i.mercatorXfromLng(this.bounds.getWest())*J),minY:Math.floor(i.mercatorYfromLat(this.bounds.getNorth())*J),maxX:Math.ceil(i.mercatorXfromLng(this.bounds.getEast())*J),maxY:Math.ceil(i.mercatorYfromLat(this.bounds.getSouth())*J)},K=D.x>=q.minX&&D.x<q.maxX&&D.y>=q.minY&&D.y<q.maxY;return K};var j=function(Y){function D(J,q,K,de){if(Y.call(this),this.id=J,this.dispatcher=K,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(q,["url","scheme","tileSize","promoteId"])),this._options=i.extend({type:"vector"},q),this._collectResourceTiming=q.collectResourceTiming,this.tileSize!==512)throw new Error("vector tile sources must have a tileSize of 512");this.setEventedParent(de)}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.load=function(){var q=this;this._loaded=!1,this.fire(new i.Event("dataloading",{dataType:"source"})),this._tileJSONRequest=H(this._options,this.map._requestManager,function(K,de){q._tileJSONRequest=null,q._loaded=!0,K?q.fire(new i.ErrorEvent(K)):de&&(i.extend(q,de),de.bounds&&(q.tileBounds=new N(de.bounds,q.minzoom,q.maxzoom)),i.postTurnstileEvent(de.tiles,q.map._requestManager._customAccessToken),i.postMapLoadEvent(de.tiles,q.map._getMapId(),q.map._requestManager._skuToken,q.map._requestManager._customAccessToken),q.fire(new i.Event("data",{dataType:"source",sourceDataType:"metadata"})),q.fire(new i.Event("data",{dataType:"source",sourceDataType:"content"})))})},D.prototype.loaded=function(){return this._loaded},D.prototype.hasTile=function(q){return!this.tileBounds||this.tileBounds.contains(q.canonical)},D.prototype.onAdd=function(q){this.map=q,this.load()},D.prototype.setSourceProperty=function(q){this._tileJSONRequest&&this._tileJSONRequest.cancel(),q();var K=this.map.style.sourceCaches[this.id];K.clearTiles(),this.load()},D.prototype.setTiles=function(q){var K=this;return this.setSourceProperty(function(){K._options.tiles=q}),this},D.prototype.setUrl=function(q){var K=this;return this.setSourceProperty(function(){K.url=q,K._options.url=q}),this},D.prototype.onRemove=function(){this._tileJSONRequest&&(this._tileJSONRequest.cancel(),this._tileJSONRequest=null)},D.prototype.serialize=function(){return i.extend({},this._options)},D.prototype.loadTile=function(q,K){var de=this.map._requestManager.normalizeTileURL(q.tileID.canonical.url(this.tiles,this.scheme)),ne={request:this.map._requestManager.transformRequest(de,i.ResourceType.Tile),uid:q.uid,tileID:q.tileID,zoom:q.tileID.overscaledZ,tileSize:this.tileSize*q.tileID.overscaleFactor(),type:this.type,source:this.id,pixelRatio:i.browser.devicePixelRatio,showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId};ne.request.collectResourceTiming=this._collectResourceTiming,!q.actor||q.state==="expired"?(q.actor=this.dispatcher.getActor(),q.request=q.actor.send("loadTile",ne,we.bind(this))):q.state==="loading"?q.reloadCallback=K:q.request=q.actor.send("reloadTile",ne,we.bind(this));function we(Ue,ft){if(delete q.request,q.aborted)return K(null);if(Ue&&Ue.status!==404)return K(Ue);ft&&ft.resourceTiming&&(q.resourceTiming=ft.resourceTiming),this.map._refreshExpiredTiles&&ft&&q.setExpiryData(ft),q.loadVectorData(ft,this.map.painter),i.cacheEntryPossiblyAdded(this.dispatcher),K(null),q.reloadCallback&&(this.loadTile(q,q.reloadCallback),q.reloadCallback=null)}},D.prototype.abortTile=function(q){q.request&&(q.request.cancel(),delete q.request),q.actor&&q.actor.send("abortTile",{uid:q.uid,type:this.type,source:this.id},void 0)},D.prototype.unloadTile=function(q){q.unloadVectorData(),q.actor&&q.actor.send("removeTile",{uid:q.uid,type:this.type,source:this.id},void 0)},D.prototype.hasTransition=function(){return!1},D}(i.Evented),re=function(Y){function D(J,q,K,de){Y.call(this),this.id=J,this.dispatcher=K,this.setEventedParent(de),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"},q),i.extend(this,i.pick(q,["url","scheme","tileSize"]))}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.load=function(){var q=this;this._loaded=!1,this.fire(new i.Event("dataloading",{dataType:"source"})),this._tileJSONRequest=H(this._options,this.map._requestManager,function(K,de){q._tileJSONRequest=null,q._loaded=!0,K?q.fire(new i.ErrorEvent(K)):de&&(i.extend(q,de),de.bounds&&(q.tileBounds=new N(de.bounds,q.minzoom,q.maxzoom)),i.postTurnstileEvent(de.tiles),i.postMapLoadEvent(de.tiles,q.map._getMapId(),q.map._requestManager._skuToken),q.fire(new i.Event("data",{dataType:"source",sourceDataType:"metadata"})),q.fire(new i.Event("data",{dataType:"source",sourceDataType:"content"})))})},D.prototype.loaded=function(){return this._loaded},D.prototype.onAdd=function(q){this.map=q,this.load()},D.prototype.onRemove=function(){this._tileJSONRequest&&(this._tileJSONRequest.cancel(),this._tileJSONRequest=null)},D.prototype.serialize=function(){return i.extend({},this._options)},D.prototype.hasTile=function(q){return!this.tileBounds||this.tileBounds.contains(q.canonical)},D.prototype.loadTile=function(q,K){var de=this,ne=this.map._requestManager.normalizeTileURL(q.tileID.canonical.url(this.tiles,this.scheme),this.tileSize);q.request=i.getImage(this.map._requestManager.transformRequest(ne,i.ResourceType.Tile),function(we,Ue){if(delete q.request,q.aborted)q.state="unloaded",K(null);else if(we)q.state="errored",K(we);else if(Ue){de.map._refreshExpiredTiles&&q.setExpiryData(Ue),delete Ue.cacheControl,delete Ue.expires;var ft=de.map.painter.context,Zt=ft.gl;q.texture=de.map.painter.getTileTexture(Ue.width),q.texture?q.texture.update(Ue,{useMipmap:!0}):(q.texture=new i.Texture(ft,Ue,Zt.RGBA,{useMipmap:!0}),q.texture.bind(Zt.LINEAR,Zt.CLAMP_TO_EDGE,Zt.LINEAR_MIPMAP_NEAREST),ft.extTextureFilterAnisotropic&&Zt.texParameterf(Zt.TEXTURE_2D,ft.extTextureFilterAnisotropic.TEXTURE_MAX_ANISOTROPY_EXT,ft.extTextureFilterAnisotropicMax)),q.state="loaded",i.cacheEntryPossiblyAdded(de.dispatcher),K(null)}})},D.prototype.abortTile=function(q,K){q.request&&(q.request.cancel(),delete q.request),K()},D.prototype.unloadTile=function(q,K){q.texture&&this.map.painter.saveTileTexture(q.texture),K()},D.prototype.hasTransition=function(){return!1},D}(i.Evented),oe=function(Y){function D(J,q,K,de){Y.call(this,J,q,K,de),this.type="raster-dem",this.maxzoom=22,this._options=i.extend({type:"raster-dem"},q),this.encoding=q.encoding||"mapbox"}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.serialize=function(){return{type:"raster-dem",url:this.url,tileSize:this.tileSize,tiles:this.tiles,bounds:this.bounds,encoding:this.encoding}},D.prototype.loadTile=function(q,K){var de=this.map._requestManager.normalizeTileURL(q.tileID.canonical.url(this.tiles,this.scheme),this.tileSize);q.request=i.getImage(this.map._requestManager.transformRequest(de,i.ResourceType.Tile),ne.bind(this)),q.neighboringTiles=this._getNeighboringTiles(q.tileID);function ne(Ue,ft){if(delete q.request,q.aborted)q.state="unloaded",K(null);else if(Ue)q.state="errored",K(Ue);else if(ft){this.map._refreshExpiredTiles&&q.setExpiryData(ft),delete ft.cacheControl,delete ft.expires;var Zt=i.window.ImageBitmap&&ft instanceof i.window.ImageBitmap&&i.offscreenCanvasSupported(),hr=Zt?ft:i.browser.getImageData(ft,1),qt={uid:q.uid,coord:q.tileID,source:this.id,rawImageData:hr,encoding:this.encoding};(!q.actor||q.state==="expired")&&(q.actor=this.dispatcher.getActor(),q.actor.send("loadDEMTile",qt,we.bind(this)))}}function we(Ue,ft){Ue&&(q.state="errored",K(Ue)),ft&&(q.dem=ft,q.needsHillshadePrepare=!0,q.state="loaded",K(null))}},D.prototype._getNeighboringTiles=function(q){var K=q.canonical,de=Math.pow(2,K.z),ne=(K.x-1+de)%de,we=K.x===0?q.wrap-1:q.wrap,Ue=(K.x+1+de)%de,ft=K.x+1===de?q.wrap+1:q.wrap,Zt={};return Zt[new i.OverscaledTileID(q.overscaledZ,we,K.z,ne,K.y).key]={backfilled:!1},Zt[new i.OverscaledTileID(q.overscaledZ,ft,K.z,Ue,K.y).key]={backfilled:!1},K.y>0&&(Zt[new i.OverscaledTileID(q.overscaledZ,we,K.z,ne,K.y-1).key]={backfilled:!1},Zt[new i.OverscaledTileID(q.overscaledZ,q.wrap,K.z,K.x,K.y-1).key]={backfilled:!1},Zt[new i.OverscaledTileID(q.overscaledZ,ft,K.z,Ue,K.y-1).key]={backfilled:!1}),K.y+1<de&&(Zt[new i.OverscaledTileID(q.overscaledZ,we,K.z,ne,K.y+1).key]={backfilled:!1},Zt[new i.OverscaledTileID(q.overscaledZ,q.wrap,K.z,K.x,K.y+1).key]={backfilled:!1},Zt[new i.OverscaledTileID(q.overscaledZ,ft,K.z,Ue,K.y+1).key]={backfilled:!1}),Zt},D.prototype.unloadTile=function(q){q.demTexture&&this.map.painter.saveTileTexture(q.demTexture),q.fbo&&(q.fbo.destroy(),delete q.fbo),q.dem&&delete q.dem,delete q.neighboringTiles,q.state="unloaded",q.actor&&q.actor.send("removeDEMTile",{uid:q.uid,source:this.id})},D}(re),_e=function(Y){function D(J,q,K,de){Y.call(this),this.id=J,this.type="geojson",this.minzoom=0,this.maxzoom=18,this.tileSize=512,this.isTileClipped=!0,this.reparseOverscaled=!0,this._removed=!1,this._loaded=!1,this.actor=K.getActor(),this.setEventedParent(de),this._data=q.data,this._options=i.extend({},q),this._collectResourceTiming=q.collectResourceTiming,this._resourceTiming=[],q.maxzoom!==void 0&&(this.maxzoom=q.maxzoom),q.type&&(this.type=q.type),q.attribution&&(this.attribution=q.attribution),this.promoteId=q.promoteId;var ne=i.EXTENT/this.tileSize;this.workerOptions=i.extend({source:this.id,cluster:q.cluster||!1,geojsonVtOptions:{buffer:(q.buffer!==void 0?q.buffer:128)*ne,tolerance:(q.tolerance!==void 0?q.tolerance:.375)*ne,extent:i.EXTENT,maxZoom:this.maxzoom,lineMetrics:q.lineMetrics||!1,generateId:q.generateId||!1},superclusterOptions:{maxZoom:q.clusterMaxZoom!==void 0?Math.min(q.clusterMaxZoom,this.maxzoom-1):this.maxzoom-1,minPoints:Math.max(2,q.clusterMinPoints||2),extent:i.EXTENT,radius:(q.clusterRadius||50)*ne,log:!1,generateId:q.generateId||!1},clusterProperties:q.clusterProperties,filter:q.filter},q.workerOptions)}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.load=function(){var q=this;this.fire(new i.Event("dataloading",{dataType:"source"})),this._updateWorkerData(function(K){if(K){q.fire(new i.ErrorEvent(K));return}var de={dataType:"source",sourceDataType:"metadata"};q._collectResourceTiming&&q._resourceTiming&&q._resourceTiming.length>0&&(de.resourceTiming=q._resourceTiming,q._resourceTiming=[]),q.fire(new i.Event("data",de))})},D.prototype.onAdd=function(q){this.map=q,this.load()},D.prototype.setData=function(q){var K=this;return this._data=q,this.fire(new i.Event("dataloading",{dataType:"source"})),this._updateWorkerData(function(de){if(de){K.fire(new i.ErrorEvent(de));return}var ne={dataType:"source",sourceDataType:"content"};K._collectResourceTiming&&K._resourceTiming&&K._resourceTiming.length>0&&(ne.resourceTiming=K._resourceTiming,K._resourceTiming=[]),K.fire(new i.Event("data",ne))}),this},D.prototype.getClusterExpansionZoom=function(q,K){return this.actor.send("geojson.getClusterExpansionZoom",{clusterId:q,source:this.id},K),this},D.prototype.getClusterChildren=function(q,K){return this.actor.send("geojson.getClusterChildren",{clusterId:q,source:this.id},K),this},D.prototype.getClusterLeaves=function(q,K,de,ne){return this.actor.send("geojson.getClusterLeaves",{source:this.id,clusterId:q,limit:K,offset:de},ne),this},D.prototype._updateWorkerData=function(q){var K=this;this._loaded=!1;var de=i.extend({},this.workerOptions),ne=this._data;typeof ne=="string"?(de.request=this.map._requestManager.transformRequest(i.browser.resolveURL(ne),i.ResourceType.Source),de.request.collectResourceTiming=this._collectResourceTiming):de.data=JSON.stringify(ne),this.actor.send(this.type+".loadData",de,function(we,Ue){K._removed||Ue&&Ue.abandoned||(K._loaded=!0,Ue&&Ue.resourceTiming&&Ue.resourceTiming[K.id]&&(K._resourceTiming=Ue.resourceTiming[K.id].slice(0)),K.actor.send(K.type+".coalesce",{source:de.source},null),q(we))})},D.prototype.loaded=function(){return this._loaded},D.prototype.loadTile=function(q,K){var de=this,ne=q.actor?"reloadTile":"loadTile";q.actor=this.actor;var we={type:this.type,uid:q.uid,tileID:q.tileID,zoom:q.tileID.overscaledZ,maxZoom:this.maxzoom,tileSize:this.tileSize,source:this.id,pixelRatio:i.browser.devicePixelRatio,showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId};q.request=this.actor.send(ne,we,function(Ue,ft){return delete q.request,q.unloadVectorData(),q.aborted?K(null):Ue?K(Ue):(q.loadVectorData(ft,de.map.painter,ne==="reloadTile"),K(null))})},D.prototype.abortTile=function(q){q.request&&(q.request.cancel(),delete q.request),q.aborted=!0},D.prototype.unloadTile=function(q){q.unloadVectorData(),this.actor.send("removeTile",{uid:q.uid,type:this.type,source:this.id})},D.prototype.onRemove=function(){this._removed=!0,this.actor.send("removeSource",{type:this.type,source:this.id})},D.prototype.serialize=function(){return i.extend({},this._options,{type:this.type,data:this._data})},D.prototype.hasTransition=function(){return!1},D}(i.Evented),Me=i.createLayout([{name:"a_pos",type:"Int16",components:2},{name:"a_texture_pos",type:"Int16",components:2}]),ke=function(Y){function D(J,q,K,de){Y.call(this),this.id=J,this.dispatcher=K,this.coordinates=q.coordinates,this.type="image",this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.tiles={},this._loaded=!1,this.setEventedParent(de),this.options=q}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.load=function(q,K){var de=this;this._loaded=!1,this.fire(new i.Event("dataloading",{dataType:"source"})),this.url=this.options.url,i.getImage(this.map._requestManager.transformRequest(this.url,i.ResourceType.Image),function(ne,we){de._loaded=!0,ne?de.fire(new i.ErrorEvent(ne)):we&&(de.image=we,q&&(de.coordinates=q),K&&K(),de._finishLoading())})},D.prototype.loaded=function(){return this._loaded},D.prototype.updateImage=function(q){var K=this;return!this.image||!q.url?this:(this.options.url=q.url,this.load(q.coordinates,function(){K.texture=null}),this)},D.prototype._finishLoading=function(){this.map&&(this.setCoordinates(this.coordinates),this.fire(new i.Event("data",{dataType:"source",sourceDataType:"metadata"})))},D.prototype.onAdd=function(q){this.map=q,this.load()},D.prototype.setCoordinates=function(q){var K=this;this.coordinates=q;var de=q.map(i.MercatorCoordinate.fromLngLat);this.tileID=me(de),this.minzoom=this.maxzoom=this.tileID.z;var ne=de.map(function(we){return K.tileID.getTilePoint(we)._round()});return this._boundsArray=new i.StructArrayLayout4i8,this._boundsArray.emplaceBack(ne[0].x,ne[0].y,0,0),this._boundsArray.emplaceBack(ne[1].x,ne[1].y,i.EXTENT,0),this._boundsArray.emplaceBack(ne[3].x,ne[3].y,0,i.EXTENT),this._boundsArray.emplaceBack(ne[2].x,ne[2].y,i.EXTENT,i.EXTENT),this.boundsBuffer&&(this.boundsBuffer.destroy(),delete this.boundsBuffer),this.fire(new i.Event("data",{dataType:"source",sourceDataType:"content"})),this},D.prototype.prepare=function(){if(!(Object.keys(this.tiles).length===0||!this.image)){var q=this.map.painter.context,K=q.gl;this.boundsBuffer||(this.boundsBuffer=q.createVertexBuffer(this._boundsArray,Me.members)),this.boundsSegments||(this.boundsSegments=i.SegmentVector.simpleSegment(0,0,4,2)),this.texture||(this.texture=new i.Texture(q,this.image,K.RGBA),this.texture.bind(K.LINEAR,K.CLAMP_TO_EDGE));for(var de in this.tiles){var ne=this.tiles[de];ne.state!=="loaded"&&(ne.state="loaded",ne.texture=this.texture)}}},D.prototype.loadTile=function(q,K){this.tileID&&this.tileID.equals(q.tileID.canonical)?(this.tiles[String(q.tileID.wrap)]=q,q.buckets={},K(null)):(q.state="errored",K(null))},D.prototype.serialize=function(){return{type:"image",url:this.options.url,coordinates:this.coordinates}},D.prototype.hasTransition=function(){return!1},D}(i.Evented);function me(Y){for(var D=1/0,J=1/0,q=-1/0,K=-1/0,de=0,ne=Y;de<ne.length;de+=1){var we=ne[de];D=Math.min(D,we.x),J=Math.min(J,we.y),q=Math.max(q,we.x),K=Math.max(K,we.y)}var Ue=q-D,ft=K-J,Zt=Math.max(Ue,ft),hr=Math.max(0,Math.floor(-Math.log(Zt)/Math.LN2)),qt=Math.pow(2,hr);return new i.CanonicalTileID(hr,Math.floor((D+q)/2*qt),Math.floor((J+K)/2*qt))}var ie=function(Y){function D(J,q,K,de){Y.call(this,J,q,K,de),this.roundZoom=!0,this.type="video",this.options=q}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.load=function(){var q=this;this._loaded=!1;var K=this.options;this.urls=[];for(var de=0,ne=K.urls;de<ne.length;de+=1){var we=ne[de];this.urls.push(this.map._requestManager.transformRequest(we,i.ResourceType.Source).url)}i.getVideo(this.urls,function(Ue,ft){q._loaded=!0,Ue?q.fire(new i.ErrorEvent(Ue)):ft&&(q.video=ft,q.video.loop=!0,q.video.addEventListener("playing",function(){q.map.triggerRepaint()}),q.map&&q.video.play(),q._finishLoading())})},D.prototype.pause=function(){this.video&&this.video.pause()},D.prototype.play=function(){this.video&&this.video.play()},D.prototype.seek=function(q){if(this.video){var K=this.video.seekable;q<K.start(0)||q>K.end(0)?this.fire(new i.ErrorEvent(new i.ValidationError("sources."+this.id,null,"Playback for this video can be set only between the "+K.start(0)+" and "+K.end(0)+"-second mark."))):this.video.currentTime=q}},D.prototype.getVideo=function(){return this.video},D.prototype.onAdd=function(q){this.map||(this.map=q,this.load(),this.video&&(this.video.play(),this.setCoordinates(this.coordinates)))},D.prototype.prepare=function(){if(!(Object.keys(this.tiles).length===0||this.video.readyState<2)){var q=this.map.painter.context,K=q.gl;this.boundsBuffer||(this.boundsBuffer=q.createVertexBuffer(this._boundsArray,Me.members)),this.boundsSegments||(this.boundsSegments=i.SegmentVector.simpleSegment(0,0,4,2)),this.texture?this.video.paused||(this.texture.bind(K.LINEAR,K.CLAMP_TO_EDGE),K.texSubImage2D(K.TEXTURE_2D,0,0,0,K.RGBA,K.UNSIGNED_BYTE,this.video)):(this.texture=new i.Texture(q,this.video,K.RGBA),this.texture.bind(K.LINEAR,K.CLAMP_TO_EDGE));for(var de in this.tiles){var ne=this.tiles[de];ne.state!=="loaded"&&(ne.state="loaded",ne.texture=this.texture)}}},D.prototype.serialize=function(){return{type:"video",urls:this.urls,coordinates:this.coordinates}},D.prototype.hasTransition=function(){return this.video&&!this.video.paused},D}(ke),Se=function(Y){function D(J,q,K,de){Y.call(this,J,q,K,de),q.coordinates?(!Array.isArray(q.coordinates)||q.coordinates.length!==4||q.coordinates.some(function(ne){return!Array.isArray(ne)||ne.length!==2||ne.some(function(we){return typeof we!="number"})}))&&this.fire(new i.ErrorEvent(new i.ValidationError("sources."+J,null,'"coordinates" property must be an array of 4 longitude/latitude array pairs'))):this.fire(new i.ErrorEvent(new i.ValidationError("sources."+J,null,'missing required property "coordinates"'))),q.animate&&typeof q.animate!="boolean"&&this.fire(new i.ErrorEvent(new i.ValidationError("sources."+J,null,'optional "animate" property must be a boolean value'))),q.canvas?typeof q.canvas!="string"&&!(q.canvas instanceof i.window.HTMLCanvasElement)&&this.fire(new i.ErrorEvent(new i.ValidationError("sources."+J,null,'"canvas" must be either a string representing the ID of the canvas element from which to read, or an HTMLCanvasElement instance'))):this.fire(new i.ErrorEvent(new i.ValidationError("sources."+J,null,'missing required property "canvas"'))),this.options=q,this.animate=q.animate!==void 0?q.animate:!0}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.load=function(){if(this._loaded=!0,this.canvas||(this.canvas=this.options.canvas instanceof i.window.HTMLCanvasElement?this.options.canvas:i.window.document.getElementById(this.options.canvas)),this.width=this.canvas.width,this.height=this.canvas.height,this._hasInvalidDimensions()){this.fire(new i.ErrorEvent(new Error("Canvas dimensions cannot be less than or equal to zero.")));return}this.play=function(){this._playing=!0,this.map.triggerRepaint()},this.pause=function(){this._playing&&(this.prepare(),this._playing=!1)},this._finishLoading()},D.prototype.getCanvas=function(){return this.canvas},D.prototype.onAdd=function(q){this.map=q,this.load(),this.canvas&&this.animate&&this.play()},D.prototype.onRemove=function(){this.pause()},D.prototype.prepare=function(){var q=!1;if(this.canvas.width!==this.width&&(this.width=this.canvas.width,q=!0),this.canvas.height!==this.height&&(this.height=this.canvas.height,q=!0),!this._hasInvalidDimensions()&&Object.keys(this.tiles).length!==0){var K=this.map.painter.context,de=K.gl;this.boundsBuffer||(this.boundsBuffer=K.createVertexBuffer(this._boundsArray,Me.members)),this.boundsSegments||(this.boundsSegments=i.SegmentVector.simpleSegment(0,0,4,2)),this.texture?(q||this._playing)&&this.texture.update(this.canvas,{premultiply:!0}):this.texture=new i.Texture(K,this.canvas,de.RGBA,{premultiply:!0});for(var ne in this.tiles){var we=this.tiles[ne];we.state!=="loaded"&&(we.state="loaded",we.texture=this.texture)}}},D.prototype.serialize=function(){return{type:"canvas",coordinates:this.coordinates}},D.prototype.hasTransition=function(){return this._playing},D.prototype._hasInvalidDimensions=function(){for(var q=0,K=[this.canvas.width,this.canvas.height];q<K.length;q+=1){var de=K[q];if(isNaN(de)||de<=0)return!0}return!1},D}(ke),Le={vector:j,raster:re,"raster-dem":oe,geojson:_e,video:ie,image:ke,canvas:Se},Ae=function(Y,D,J,q){var K=new Le[D.type](Y,D,J,q);if(K.id!==Y)throw new Error("Expected Source id to be "+Y+" instead of "+K.id);return i.bindAll(["load","abort","unload","serialize","prepare"],K),K},De=function(Y){return Le[Y]},Pe=function(Y,D){Le[Y]=D};function ge(Y,D){var J=i.identity([]);return i.translate(J,J,[1,1,0]),i.scale(J,J,[Y.width*.5,Y.height*.5,1]),i.multiply(J,J,Y.calculatePosMatrix(D.toUnwrapped()))}function Fe(Y,D,J){if(Y)for(var q=0,K=Y;q<K.length;q+=1){var de=K[q],ne=D[de];if(ne&&ne.source===J&&ne.type==="fill-extrusion")return!0}else for(var we in D){var Ue=D[we];if(Ue.source===J&&Ue.type==="fill-extrusion")return!0}return!1}function ce(Y,D,J,q,K,de){var ne=Fe(K&&K.layers,D,Y.id),we=de.maxPitchScaleFactor(),Ue=Y.tilesIn(q,we,ne);Ue.sort(pt);for(var ft=[],Zt=0,hr=Ue;Zt<hr.length;Zt+=1){var qt=hr[Zt];ft.push({wrappedTileID:qt.tileID.wrapped().key,queryResults:qt.tile.queryRenderedFeatures(D,J,Y._state,qt.queryGeometry,qt.cameraQueryGeometry,qt.scale,K,de,we,ge(Y.transform,qt.tileID))})}var Ve=Wt(ft);for(var et in Ve)Ve[et].forEach(function(at){var kt=at.feature,Ot=Y.getFeatureState(kt.layer["source-layer"],kt.id);kt.source=kt.layer.source,kt.layer["source-layer"]&&(kt.sourceLayer=kt.layer["source-layer"]),kt.state=Ot});return Ve}function Ze(Y,D,J,q,K,de,ne){for(var we={},Ue=de.queryRenderedSymbols(q),ft=[],Zt=0,hr=Object.keys(Ue).map(Number);Zt<hr.length;Zt+=1){var qt=hr[Zt];ft.push(ne[qt])}ft.sort(pt);for(var Ve=function(){var It=at[et],Bt=It.featureIndex.lookupSymbolFeatures(Ue[It.bucketInstanceId],D,It.bucketIndex,It.sourceLayerIndex,K.filter,K.layers,K.availableImages,Y);for(var Rt in Bt){var mt=we[Rt]=we[Rt]||[],Pt=Bt[Rt];Pt.sort(function(Nr,Ri){var hi=It.featureSortOrder;if(hi){var wi=hi.indexOf(Nr.featureIndex),gn=hi.indexOf(Ri.featureIndex);return gn-wi}else return Ri.featureIndex-Nr.featureIndex});for(var ht=0,cr=Pt;ht<cr.length;ht+=1){var br=cr[ht];mt.push(br)}}},et=0,at=ft;et<at.length;et+=1)Ve();var kt=function(It){we[It].forEach(function(Bt){var Rt=Bt.feature,mt=Y[It],Pt=J[mt.source],ht=Pt.getFeatureState(Rt.layer["source-layer"],Rt.id);Rt.source=Rt.layer.source,Rt.layer["source-layer"]&&(Rt.sourceLayer=Rt.layer["source-layer"]),Rt.state=ht})};for(var Ot in we)kt(Ot);return we}function ct(Y,D){for(var J=Y.getRenderableIds().map(function(Ue){return Y.getTileByID(Ue)}),q=[],K={},de=0;de<J.length;de++){var ne=J[de],we=ne.tileID.canonical.key;K[we]||(K[we]=!0,ne.querySourceFeatures(q,D))}return q}function pt(Y,D){var J=Y.tileID,q=D.tileID;return J.overscaledZ-q.overscaledZ||J.canonical.y-q.canonical.y||J.wrap-q.wrap||J.canonical.x-q.canonical.x}function Wt(Y){for(var D={},J={},q=0,K=Y;q<K.length;q+=1){var de=K[q],ne=de.queryResults,we=de.wrappedTileID,Ue=J[we]=J[we]||{};for(var ft in ne)for(var Zt=ne[ft],hr=Ue[ft]=Ue[ft]||{},qt=D[ft]=D[ft]||[],Ve=0,et=Zt;Ve<et.length;Ve+=1){var at=et[Ve];hr[at.featureIndex]||(hr[at.featureIndex]=!0,qt.push(at))}}return D}var st=function(D,J){this.max=D,this.onRemove=J,this.reset()};st.prototype.reset=function(){for(var D in this.data)for(var J=0,q=this.data[D];J<q.length;J+=1){var K=q[J];K.timeout&&clearTimeout(K.timeout),this.onRemove(K.value)}return this.data={},this.order=[],this},st.prototype.add=function(D,J,q){var K=this,de=D.wrapped().key;this.data[de]===void 0&&(this.data[de]=[]);var ne={value:J,timeout:void 0};if(q!==void 0&&(ne.timeout=setTimeout(function(){K.remove(D,ne)},q)),this.data[de].push(ne),this.order.push(de),this.order.length>this.max){var we=this._getAndRemoveByKey(this.order[0]);we&&this.onRemove(we)}return this},st.prototype.has=function(D){return D.wrapped().key in this.data},st.prototype.getAndRemove=function(D){return this.has(D)?this._getAndRemoveByKey(D.wrapped().key):null},st.prototype._getAndRemoveByKey=function(D){var J=this.data[D].shift();return J.timeout&&clearTimeout(J.timeout),this.data[D].length===0&&delete this.data[D],this.order.splice(this.order.indexOf(D),1),J.value},st.prototype.getByKey=function(D){var J=this.data[D];return J?J[0].value:null},st.prototype.get=function(D){if(!this.has(D))return null;var J=this.data[D.wrapped().key][0];return J.value},st.prototype.remove=function(D,J){if(!this.has(D))return this;var q=D.wrapped().key,K=J===void 0?0:this.data[q].indexOf(J),de=this.data[q][K];return this.data[q].splice(K,1),de.timeout&&clearTimeout(de.timeout),this.data[q].length===0&&delete this.data[q],this.onRemove(de.value),this.order.splice(this.order.indexOf(q),1),this},st.prototype.setMaxSize=function(D){for(this.max=D;this.order.length>this.max;){var J=this._getAndRemoveByKey(this.order[0]);J&&this.onRemove(J)}return this},st.prototype.filter=function(D){var J=[];for(var q in this.data)for(var K=0,de=this.data[q];K<de.length;K+=1){var ne=de[K];D(ne.value)||J.push(ne)}for(var we=0,Ue=J;we<Ue.length;we+=1){var ft=Ue[we];this.remove(ft.value.tileID,ft)}};var lt=function(D,J,q){this.context=D;var K=D.gl;this.buffer=K.createBuffer(),this.dynamicDraw=!!q,this.context.unbindVAO(),D.bindElementBuffer.set(this.buffer),K.bufferData(K.ELEMENT_ARRAY_BUFFER,J.arrayBuffer,this.dynamicDraw?K.DYNAMIC_DRAW:K.STATIC_DRAW),this.dynamicDraw||delete J.arrayBuffer};lt.prototype.bind=function(){this.context.bindElementBuffer.set(this.buffer)},lt.prototype.updateData=function(D){var J=this.context.gl;this.context.unbindVAO(),this.bind(),J.bufferSubData(J.ELEMENT_ARRAY_BUFFER,0,D.arrayBuffer)},lt.prototype.destroy=function(){var D=this.context.gl;this.buffer&&(D.deleteBuffer(this.buffer),delete this.buffer)};var Gt={Int8:"BYTE",Uint8:"UNSIGNED_BYTE",Int16:"SHORT",Uint16:"UNSIGNED_SHORT",Int32:"INT",Uint32:"UNSIGNED_INT",Float32:"FLOAT"},Nt=function(D,J,q,K){this.length=J.length,this.attributes=q,this.itemSize=J.bytesPerElement,this.dynamicDraw=K,this.context=D;var de=D.gl;this.buffer=de.createBuffer(),D.bindVertexBuffer.set(this.buffer),de.bufferData(de.ARRAY_BUFFER,J.arrayBuffer,this.dynamicDraw?de.DYNAMIC_DRAW:de.STATIC_DRAW),this.dynamicDraw||delete J.arrayBuffer};Nt.prototype.bind=function(){this.context.bindVertexBuffer.set(this.buffer)},Nt.prototype.updateData=function(D){var J=this.context.gl;this.bind(),J.bufferSubData(J.ARRAY_BUFFER,0,D.arrayBuffer)},Nt.prototype.enableAttributes=function(D,J){for(var q=0;q<this.attributes.length;q++){var K=this.attributes[q],de=J.attributes[K.name];de!==void 0&&D.enableVertexAttribArray(de)}},Nt.prototype.setVertexAttribPointers=function(D,J,q){for(var K=0;K<this.attributes.length;K++){var de=this.attributes[K],ne=J.attributes[de.name];ne!==void 0&&D.vertexAttribPointer(ne,de.components,D[Gt[de.type]],!1,this.itemSize,de.offset+this.itemSize*(q||0))}},Nt.prototype.destroy=function(){var D=this.context.gl;this.buffer&&(D.deleteBuffer(this.buffer),delete this.buffer)};var $t=function(D){this.gl=D.gl,this.default=this.getDefault(),this.current=this.default,this.dirty=!1};$t.prototype.get=function(){return this.current},$t.prototype.set=function(D){},$t.prototype.getDefault=function(){return this.default},$t.prototype.setDefault=function(){this.set(this.default)};var sr=function(Y){function D(){Y.apply(this,arguments)}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.getDefault=function(){return i.Color.transparent},D.prototype.set=function(q){var K=this.current;q.r===K.r&&q.g===K.g&&q.b===K.b&&q.a===K.a&&!this.dirty||(this.gl.clearColor(q.r,q.g,q.b,q.a),this.current=q,this.dirty=!1)},D}($t),wr=function(Y){function D(){Y.apply(this,arguments)}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.getDefault=function(){return 1},D.prototype.set=function(q){q===this.current&&!this.dirty||(this.gl.clearDepth(q),this.current=q,this.dirty=!1)},D}($t),ur=function(Y){function D(){Y.apply(this,arguments)}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.getDefault=function(){return 0},D.prototype.set=function(q){q===this.current&&!this.dirty||(this.gl.clearStencil(q),this.current=q,this.dirty=!1)},D}($t),Qe=function(Y){function D(){Y.apply(this,arguments)}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.getDefault=function(){return[!0,!0,!0,!0]},D.prototype.set=function(q){var K=this.current;q[0]===K[0]&&q[1]===K[1]&&q[2]===K[2]&&q[3]===K[3]&&!this.dirty||(this.gl.colorMask(q[0],q[1],q[2],q[3]),this.current=q,this.dirty=!1)},D}($t),Et=function(Y){function D(){Y.apply(this,arguments)}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.getDefault=function(){return!0},D.prototype.set=function(q){q===this.current&&!this.dirty||(this.gl.depthMask(q),this.current=q,this.dirty=!1)},D}($t),er=function(Y){function D(){Y.apply(this,arguments)}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.getDefault=function(){return 255},D.prototype.set=function(q){q===this.current&&!this.dirty||(this.gl.stencilMask(q),this.current=q,this.dirty=!1)},D}($t),Ut=function(Y){function D(){Y.apply(this,arguments)}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.getDefault=function(){return{func:this.gl.ALWAYS,ref:0,mask:255}},D.prototype.set=function(q){var K=this.current;q.func===K.func&&q.ref===K.ref&&q.mask===K.mask&&!this.dirty||(this.gl.stencilFunc(q.func,q.ref,q.mask),this.current=q,this.dirty=!1)},D}($t),Ft=function(Y){function D(){Y.apply(this,arguments)}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.getDefault=function(){var q=this.gl;return[q.KEEP,q.KEEP,q.KEEP]},D.prototype.set=function(q){var K=this.current;q[0]===K[0]&&q[1]===K[1]&&q[2]===K[2]&&!this.dirty||(this.gl.stencilOp(q[0],q[1],q[2]),this.current=q,this.dirty=!1)},D}($t),bt=function(Y){function D(){Y.apply(this,arguments)}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.getDefault=function(){return!1},D.prototype.set=function(q){if(!(q===this.current&&!this.dirty)){var K=this.gl;q?K.enable(K.STENCIL_TEST):K.disable(K.STENCIL_TEST),this.current=q,this.dirty=!1}},D}($t),yt=function(Y){function D(){Y.apply(this,arguments)}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.getDefault=function(){return[0,1]},D.prototype.set=function(q){var K=this.current;q[0]===K[0]&&q[1]===K[1]&&!this.dirty||(this.gl.depthRange(q[0],q[1]),this.current=q,this.dirty=!1)},D}($t),Yt=function(Y){function D(){Y.apply(this,arguments)}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.getDefault=function(){return!1},D.prototype.set=function(q){if(!(q===this.current&&!this.dirty)){var K=this.gl;q?K.enable(K.DEPTH_TEST):K.disable(K.DEPTH_TEST),this.current=q,this.dirty=!1}},D}($t),lr=function(Y){function D(){Y.apply(this,arguments)}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.getDefault=function(){return this.gl.LESS},D.prototype.set=function(q){q===this.current&&!this.dirty||(this.gl.depthFunc(q),this.current=q,this.dirty=!1)},D}($t),Tr=function(Y){function D(){Y.apply(this,arguments)}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.getDefault=function(){return!1},D.prototype.set=function(q){if(!(q===this.current&&!this.dirty)){var K=this.gl;q?K.enable(K.BLEND):K.disable(K.BLEND),this.current=q,this.dirty=!1}},D}($t),Rr=function(Y){function D(){Y.apply(this,arguments)}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.getDefault=function(){var q=this.gl;return[q.ONE,q.ZERO]},D.prototype.set=function(q){var K=this.current;q[0]===K[0]&&q[1]===K[1]&&!this.dirty||(this.gl.blendFunc(q[0],q[1]),this.current=q,this.dirty=!1)},D}($t),ei=function(Y){function D(){Y.apply(this,arguments)}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.getDefault=function(){return i.Color.transparent},D.prototype.set=function(q){var K=this.current;q.r===K.r&&q.g===K.g&&q.b===K.b&&q.a===K.a&&!this.dirty||(this.gl.blendColor(q.r,q.g,q.b,q.a),this.current=q,this.dirty=!1)},D}($t),Wr=function(Y){function D(){Y.apply(this,arguments)}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.getDefault=function(){return this.gl.FUNC_ADD},D.prototype.set=function(q){q===this.current&&!this.dirty||(this.gl.blendEquation(q),this.current=q,this.dirty=!1)},D}($t),Ur=function(Y){function D(){Y.apply(this,arguments)}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.getDefault=function(){return!1},D.prototype.set=function(q){if(!(q===this.current&&!this.dirty)){var K=this.gl;q?K.enable(K.CULL_FACE):K.disable(K.CULL_FACE),this.current=q,this.dirty=!1}},D}($t),dt=function(Y){function D(){Y.apply(this,arguments)}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.getDefault=function(){return this.gl.BACK},D.prototype.set=function(q){q===this.current&&!this.dirty||(this.gl.cullFace(q),this.current=q,this.dirty=!1)},D}($t),Ge=function(Y){function D(){Y.apply(this,arguments)}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.getDefault=function(){return this.gl.CCW},D.prototype.set=function(q){q===this.current&&!this.dirty||(this.gl.frontFace(q),this.current=q,this.dirty=!1)},D}($t),Je=function(Y){function D(){Y.apply(this,arguments)}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.getDefault=function(){return null},D.prototype.set=function(q){q===this.current&&!this.dirty||(this.gl.useProgram(q),this.current=q,this.dirty=!1)},D}($t),je=function(Y){function D(){Y.apply(this,arguments)}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.getDefault=function(){return this.gl.TEXTURE0},D.prototype.set=function(q){q===this.current&&!this.dirty||(this.gl.activeTexture(q),this.current=q,this.dirty=!1)},D}($t),$e=function(Y){function D(){Y.apply(this,arguments)}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.getDefault=function(){var q=this.gl;return[0,0,q.drawingBufferWidth,q.drawingBufferHeight]},D.prototype.set=function(q){var K=this.current;q[0]===K[0]&&q[1]===K[1]&&q[2]===K[2]&&q[3]===K[3]&&!this.dirty||(this.gl.viewport(q[0],q[1],q[2],q[3]),this.current=q,this.dirty=!1)},D}($t),wt=function(Y){function D(){Y.apply(this,arguments)}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.getDefault=function(){return null},D.prototype.set=function(q){if(!(q===this.current&&!this.dirty)){var K=this.gl;K.bindFramebuffer(K.FRAMEBUFFER,q),this.current=q,this.dirty=!1}},D}($t),Ie=function(Y){function D(){Y.apply(this,arguments)}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.getDefault=function(){return null},D.prototype.set=function(q){if(!(q===this.current&&!this.dirty)){var K=this.gl;K.bindRenderbuffer(K.RENDERBUFFER,q),this.current=q,this.dirty=!1}},D}($t),xe=function(Y){function D(){Y.apply(this,arguments)}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.getDefault=function(){return null},D.prototype.set=function(q){if(!(q===this.current&&!this.dirty)){var K=this.gl;K.bindTexture(K.TEXTURE_2D,q),this.current=q,this.dirty=!1}},D}($t),Ce=function(Y){function D(){Y.apply(this,arguments)}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.getDefault=function(){return null},D.prototype.set=function(q){if(!(q===this.current&&!this.dirty)){var K=this.gl;K.bindBuffer(K.ARRAY_BUFFER,q),this.current=q,this.dirty=!1}},D}($t),vt=function(Y){function D(){Y.apply(this,arguments)}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.getDefault=function(){return null},D.prototype.set=function(q){var K=this.gl;K.bindBuffer(K.ELEMENT_ARRAY_BUFFER,q),this.current=q,this.dirty=!1},D}($t),nr=function(Y){function D(J){Y.call(this,J),this.vao=J.extVertexArrayObject}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.getDefault=function(){return null},D.prototype.set=function(q){!this.vao||q===this.current&&!this.dirty||(this.vao.bindVertexArrayOES(q),this.current=q,this.dirty=!1)},D}($t),ir=function(Y){function D(){Y.apply(this,arguments)}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.getDefault=function(){return 4},D.prototype.set=function(q){if(!(q===this.current&&!this.dirty)){var K=this.gl;K.pixelStorei(K.UNPACK_ALIGNMENT,q),this.current=q,this.dirty=!1}},D}($t),pr=function(Y){function D(){Y.apply(this,arguments)}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.getDefault=function(){return!1},D.prototype.set=function(q){if(!(q===this.current&&!this.dirty)){var K=this.gl;K.pixelStorei(K.UNPACK_PREMULTIPLY_ALPHA_WEBGL,q),this.current=q,this.dirty=!1}},D}($t),oi=function(Y){function D(){Y.apply(this,arguments)}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.getDefault=function(){return!1},D.prototype.set=function(q){if(!(q===this.current&&!this.dirty)){var K=this.gl;K.pixelStorei(K.UNPACK_FLIP_Y_WEBGL,q),this.current=q,this.dirty=!1}},D}($t),di=function(Y){function D(J,q){Y.call(this,J),this.context=J,this.parent=q}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.getDefault=function(){return null},D}($t),Jr=function(Y){function D(){Y.apply(this,arguments)}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.setDirty=function(){this.dirty=!0},D.prototype.set=function(q){if(!(q===this.current&&!this.dirty)){this.context.bindFramebuffer.set(this.parent);var K=this.gl;K.framebufferTexture2D(K.FRAMEBUFFER,K.COLOR_ATTACHMENT0,K.TEXTURE_2D,q,0),this.current=q,this.dirty=!1}},D}(di),fi=function(Y){function D(){Y.apply(this,arguments)}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.set=function(q){if(!(q===this.current&&!this.dirty)){this.context.bindFramebuffer.set(this.parent);var K=this.gl;K.framebufferRenderbuffer(K.FRAMEBUFFER,K.DEPTH_ATTACHMENT,K.RENDERBUFFER,q),this.current=q,this.dirty=!1}},D}(di),Hi=function(D,J,q,K){this.context=D,this.width=J,this.height=q;var de=D.gl,ne=this.framebuffer=de.createFramebuffer();this.colorAttachment=new Jr(D,ne),K&&(this.depthAttachment=new fi(D,ne))};Hi.prototype.destroy=function(){var D=this.context.gl,J=this.colorAttachment.get();if(J&&D.deleteTexture(J),this.depthAttachment){var q=this.depthAttachment.get();q&&D.deleteRenderbuffer(q)}D.deleteFramebuffer(this.framebuffer)};var Pn=519,wn=function(D,J,q){this.func=D,this.mask=J,this.range=q};wn.ReadOnly=!1,wn.ReadWrite=!0,wn.disabled=new wn(Pn,wn.ReadOnly,[0,1]);var pn=519,Vn=7680,kn=function(D,J,q,K,de,ne){this.test=D,this.ref=J,this.mask=q,this.fail=K,this.depthFail=de,this.pass=ne};kn.disabled=new kn({func:pn,mask:0},0,0,Vn,Vn,Vn);var ea=0,ua=1,Vt=771,_t=function(D,J,q){this.blendFunction=D,this.blendColor=J,this.mask=q};_t.Replace=[ua,ea],_t.disabled=new _t(_t.Replace,i.Color.transparent,[!1,!1,!1,!1]),_t.unblended=new _t(_t.Replace,i.Color.transparent,[!0,!0,!0,!0]),_t.alphaBlended=new _t([ua,Vt],i.Color.transparent,[!0,!0,!0,!0]);var tr=1029,ar=2305,Er=function(D,J,q){this.enable=D,this.mode=J,this.frontFace=q};Er.disabled=new Er(!1,tr,ar),Er.backCCW=new Er(!0,tr,ar);var Zr=function(D){this.gl=D,this.extVertexArrayObject=this.gl.getExtension("OES_vertex_array_object"),this.clearColor=new sr(this),this.clearDepth=new wr(this),this.clearStencil=new ur(this),this.colorMask=new Qe(this),this.depthMask=new Et(this),this.stencilMask=new er(this),this.stencilFunc=new Ut(this),this.stencilOp=new Ft(this),this.stencilTest=new bt(this),this.depthRange=new yt(this),this.depthTest=new Yt(this),this.depthFunc=new lr(this),this.blend=new Tr(this),this.blendFunc=new Rr(this),this.blendColor=new ei(this),this.blendEquation=new Wr(this),this.cullFace=new Ur(this),this.cullFaceSide=new dt(this),this.frontFace=new Ge(this),this.program=new Je(this),this.activeTexture=new je(this),this.viewport=new $e(this),this.bindFramebuffer=new wt(this),this.bindRenderbuffer=new Ie(this),this.bindTexture=new xe(this),this.bindVertexBuffer=new Ce(this),this.bindElementBuffer=new vt(this),this.bindVertexArrayOES=this.extVertexArrayObject&&new nr(this),this.pixelStoreUnpack=new ir(this),this.pixelStoreUnpackPremultiplyAlpha=new pr(this),this.pixelStoreUnpackFlipY=new oi(this),this.extTextureFilterAnisotropic=D.getExtension("EXT_texture_filter_anisotropic")||D.getExtension("MOZ_EXT_texture_filter_anisotropic")||D.getExtension("WEBKIT_EXT_texture_filter_anisotropic"),this.extTextureFilterAnisotropic&&(this.extTextureFilterAnisotropicMax=D.getParameter(this.extTextureFilterAnisotropic.MAX_TEXTURE_MAX_ANISOTROPY_EXT)),this.extTextureHalfFloat=D.getExtension("OES_texture_half_float"),this.extTextureHalfFloat&&(D.getExtension("OES_texture_half_float_linear"),this.extRenderToTextureHalfFloat=D.getExtension("EXT_color_buffer_half_float")),this.extTimerQuery=D.getExtension("EXT_disjoint_timer_query"),this.maxTextureSize=D.getParameter(D.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(D,J){return new lt(this,D,J)},Zr.prototype.createVertexBuffer=function(D,J,q){return new Nt(this,D,J,q)},Zr.prototype.createRenderbuffer=function(D,J,q){var K=this.gl,de=K.createRenderbuffer();return this.bindRenderbuffer.set(de),K.renderbufferStorage(K.RENDERBUFFER,D,J,q),this.bindRenderbuffer.set(null),de},Zr.prototype.createFramebuffer=function(D,J,q){return new Hi(this,D,J,q)},Zr.prototype.clear=function(D){var J=D.color,q=D.depth,K=this.gl,de=0;J&&(de|=K.COLOR_BUFFER_BIT,this.clearColor.set(J),this.colorMask.set([!0,!0,!0,!0])),typeof q!="undefined"&&(de|=K.DEPTH_BUFFER_BIT,this.depthRange.set([0,1]),this.clearDepth.set(q),this.depthMask.set(!0)),K.clear(de)},Zr.prototype.setCullFace=function(D){D.enable===!1?this.cullFace.set(!1):(this.cullFace.set(!0),this.cullFaceSide.set(D.mode),this.frontFace.set(D.frontFace))},Zr.prototype.setDepthMode=function(D){D.func===this.gl.ALWAYS&&!D.mask?this.depthTest.set(!1):(this.depthTest.set(!0),this.depthFunc.set(D.func),this.depthMask.set(D.mask),this.depthRange.set(D.range))},Zr.prototype.setStencilMode=function(D){D.test.func===this.gl.ALWAYS&&!D.mask?this.stencilTest.set(!1):(this.stencilTest.set(!0),this.stencilMask.set(D.mask),this.stencilOp.set([D.fail,D.depthFail,D.pass]),this.stencilFunc.set({func:D.test.func,ref:D.ref,mask:D.test.mask}))},Zr.prototype.setColorMode=function(D){i.deepEqual(D.blendFunction,_t.Replace)?this.blend.set(!1):(this.blend.set(!0),this.blendFunc.set(D.blendFunction),this.blendColor.set(D.blendColor)),this.colorMask.set(D.mask)},Zr.prototype.unbindVAO=function(){this.extVertexArrayObject&&this.bindVertexArrayOES.set(null)};var ri=function(Y){function D(J,q,K){var de=this;Y.call(this),this.id=J,this.dispatcher=K,this.on("data",function(ne){ne.dataType==="source"&&ne.sourceDataType==="metadata"&&(de._sourceLoaded=!0),de._sourceLoaded&&!de._paused&&ne.dataType==="source"&&ne.sourceDataType==="content"&&(de.reload(),de.transform&&de.update(de.transform))}),this.on("error",function(){de._sourceErrored=!0}),this._source=Ae(J,q,K,this),this._tiles={},this._cache=new st(0,this._unloadTile.bind(this)),this._timers={},this._cacheTimers={},this._maxTileCacheSize=null,this._loadedParentTiles={},this._coveredTiles={},this._state=new i.SourceFeatureState}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.onAdd=function(q){this.map=q,this._maxTileCacheSize=q?q._maxTileCacheSize:null,this._source&&this._source.onAdd&&this._source.onAdd(q)},D.prototype.onRemove=function(q){this._source&&this._source.onRemove&&this._source.onRemove(q)},D.prototype.loaded=function(){if(this._sourceErrored)return!0;if(!this._sourceLoaded||!this._source.loaded())return!1;for(var q in this._tiles){var K=this._tiles[q];if(K.state!=="loaded"&&K.state!=="errored")return!1}return!0},D.prototype.getSource=function(){return this._source},D.prototype.pause=function(){this._paused=!0},D.prototype.resume=function(){if(this._paused){var q=this._shouldReloadOnResume;this._paused=!1,this._shouldReloadOnResume=!1,q&&this.reload(),this.transform&&this.update(this.transform)}},D.prototype._loadTile=function(q,K){return this._source.loadTile(q,K)},D.prototype._unloadTile=function(q){if(this._source.unloadTile)return this._source.unloadTile(q,function(){})},D.prototype._abortTile=function(q){if(this._source.abortTile)return this._source.abortTile(q,function(){})},D.prototype.serialize=function(){return this._source.serialize()},D.prototype.prepare=function(q){this._source.prepare&&this._source.prepare(),this._state.coalesceChanges(this._tiles,this.map?this.map.painter:null);for(var K in this._tiles){var de=this._tiles[K];de.upload(q),de.prepare(this.map.style.imageManager)}},D.prototype.getIds=function(){return i.values(this._tiles).map(function(q){return q.tileID}).sort($r).map(function(q){return q.key})},D.prototype.getRenderableIds=function(q){var K=this,de=[];for(var ne in this._tiles)this._isIdRenderable(ne,q)&&de.push(this._tiles[ne]);return q?de.sort(function(we,Ue){var ft=we.tileID,Zt=Ue.tileID,hr=new i.Point(ft.canonical.x,ft.canonical.y)._rotate(K.transform.angle),qt=new i.Point(Zt.canonical.x,Zt.canonical.y)._rotate(K.transform.angle);return ft.overscaledZ-Zt.overscaledZ||qt.y-hr.y||qt.x-hr.x}).map(function(we){return we.tileID.key}):de.map(function(we){return we.tileID}).sort($r).map(function(we){return we.key})},D.prototype.hasRenderableParent=function(q){var K=this.findLoadedParent(q,0);return K?this._isIdRenderable(K.tileID.key):!1},D.prototype._isIdRenderable=function(q,K){return this._tiles[q]&&this._tiles[q].hasData()&&!this._coveredTiles[q]&&(K||!this._tiles[q].holdingForFade())},D.prototype.reload=function(){if(this._paused){this._shouldReloadOnResume=!0;return}this._cache.reset();for(var q in this._tiles)this._tiles[q].state!=="errored"&&this._reloadTile(q,"reloading")},D.prototype._reloadTile=function(q,K){var de=this._tiles[q];de&&(de.state!=="loading"&&(de.state=K),this._loadTile(de,this._tileLoaded.bind(this,de,q,K)))},D.prototype._tileLoaded=function(q,K,de,ne){if(ne){q.state="errored",ne.status!==404?this._source.fire(new i.ErrorEvent(ne,{tile:q})):this.update(this.transform);return}q.timeAdded=i.browser.now(),de==="expired"&&(q.refreshedUponExpiration=!0),this._setTileReloadTimer(K,q),this.getSource().type==="raster-dem"&&q.dem&&this._backfillDEM(q),this._state.initializeTileState(q,this.map?this.map.painter:null),this._source.fire(new i.Event("data",{dataType:"source",tile:q,coord:q.tileID}))},D.prototype._backfillDEM=function(q){for(var K=this.getRenderableIds(),de=0;de<K.length;de++){var ne=K[de];if(q.neighboringTiles&&q.neighboringTiles[ne]){var we=this.getTileByID(ne);Ue(q,we),Ue(we,q)}}function Ue(ft,Zt){ft.needsHillshadePrepare=!0;var hr=Zt.tileID.canonical.x-ft.tileID.canonical.x,qt=Zt.tileID.canonical.y-ft.tileID.canonical.y,Ve=Math.pow(2,ft.tileID.canonical.z),et=Zt.tileID.key;hr===0&&qt===0||Math.abs(qt)>1||(Math.abs(hr)>1&&(Math.abs(hr+Ve)===1?hr+=Ve:Math.abs(hr-Ve)===1&&(hr-=Ve)),!(!Zt.dem||!ft.dem)&&(ft.dem.backfillBorder(Zt.dem,hr,qt),ft.neighboringTiles&&ft.neighboringTiles[et]&&(ft.neighboringTiles[et].backfilled=!0)))}},D.prototype.getTile=function(q){return this.getTileByID(q.key)},D.prototype.getTileByID=function(q){return this._tiles[q]},D.prototype._retainLoadedChildren=function(q,K,de,ne){for(var we in this._tiles){var Ue=this._tiles[we];if(!(ne[we]||!Ue.hasData()||Ue.tileID.overscaledZ<=K||Ue.tileID.overscaledZ>de)){for(var ft=Ue.tileID;Ue&&Ue.tileID.overscaledZ>K+1;){var Zt=Ue.tileID.scaledTo(Ue.tileID.overscaledZ-1);Ue=this._tiles[Zt.key],Ue&&Ue.hasData()&&(ft=Zt)}for(var hr=ft;hr.overscaledZ>K;)if(hr=hr.scaledTo(hr.overscaledZ-1),q[hr.key]){ne[ft.key]=ft;break}}}},D.prototype.findLoadedParent=function(q,K){if(q.key in this._loadedParentTiles){var de=this._loadedParentTiles[q.key];return de&&de.tileID.overscaledZ>=K?de:null}for(var ne=q.overscaledZ-1;ne>=K;ne--){var we=q.scaledTo(ne),Ue=this._getLoadedTile(we);if(Ue)return Ue}},D.prototype._getLoadedTile=function(q){var K=this._tiles[q.key];if(K&&K.hasData())return K;var de=this._cache.getByKey(q.wrapped().key);return de},D.prototype.updateCacheSize=function(q){var K=Math.ceil(q.width/this._source.tileSize)+1,de=Math.ceil(q.height/this._source.tileSize)+1,ne=K*de,we=5,Ue=Math.floor(ne*we),ft=typeof this._maxTileCacheSize=="number"?Math.min(this._maxTileCacheSize,Ue):Ue;this._cache.setMaxSize(ft)},D.prototype.handleWrapJump=function(q){var K=this._prevLng===void 0?q:this._prevLng,de=q-K,ne=de/360,we=Math.round(ne);if(this._prevLng=q,we){var Ue={};for(var ft in this._tiles){var Zt=this._tiles[ft];Zt.tileID=Zt.tileID.unwrapTo(Zt.tileID.wrap+we),Ue[Zt.tileID.key]=Zt}this._tiles=Ue;for(var hr in this._timers)clearTimeout(this._timers[hr]),delete this._timers[hr];for(var qt in this._tiles){var Ve=this._tiles[qt];this._setTileReloadTimer(qt,Ve)}}},D.prototype.update=function(q){var K=this;if(this.transform=q,!(!this._sourceLoaded||this._paused)){this.updateCacheSize(q),this.handleWrapJump(this.transform.center.lng),this._coveredTiles={};var de;this.used?this._source.tileID?de=q.getVisibleUnwrappedCoordinates(this._source.tileID).map(function(Nr){return new i.OverscaledTileID(Nr.canonical.z,Nr.wrap,Nr.canonical.z,Nr.canonical.x,Nr.canonical.y)}):(de=q.coveringTiles({tileSize:this._source.tileSize,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:this._source.roundZoom,reparseOverscaled:this._source.reparseOverscaled}),this._source.hasTile&&(de=de.filter(function(Nr){return K._source.hasTile(Nr)}))):de=[];var ne=q.coveringZoomLevel(this._source),we=Math.max(ne-D.maxOverzooming,this._source.minzoom),Ue=Math.max(ne+D.maxUnderzooming,this._source.minzoom),ft=this._updateRetainedTiles(de,ne);if(zi(this._source.type)){for(var Zt={},hr={},qt=Object.keys(ft),Ve=0,et=qt;Ve<et.length;Ve+=1){var at=et[Ve],kt=ft[at],Ot=this._tiles[at];if(!(!Ot||Ot.fadeEndTime&&Ot.fadeEndTime<=i.browser.now())){var It=this.findLoadedParent(kt,we);It&&(this._addTile(It.tileID),Zt[It.tileID.key]=It.tileID),hr[at]=kt}}this._retainLoadedChildren(hr,ne,Ue,ft);for(var Bt in Zt)ft[Bt]||(this._coveredTiles[Bt]=!0,ft[Bt]=Zt[Bt])}for(var Rt in ft)this._tiles[Rt].clearFadeHold();for(var mt=i.keysDifference(this._tiles,ft),Pt=0,ht=mt;Pt<ht.length;Pt+=1){var cr=ht[Pt],br=this._tiles[cr];br.hasSymbolBuckets&&!br.holdingForFade()?br.setHoldDuration(this.map._fadeDuration):(!br.hasSymbolBuckets||br.symbolFadeFinished())&&this._removeTile(cr)}this._updateLoadedParentTileCache()}},D.prototype.releaseSymbolFadeTiles=function(){for(var q in this._tiles)this._tiles[q].holdingForFade()&&this._removeTile(q)},D.prototype._updateRetainedTiles=function(q,K){for(var de={},ne={},we=Math.max(K-D.maxOverzooming,this._source.minzoom),Ue=Math.max(K+D.maxUnderzooming,this._source.minzoom),ft={},Zt=0,hr=q;Zt<hr.length;Zt+=1){var qt=hr[Zt],Ve=this._addTile(qt);de[qt.key]=qt,!Ve.hasData()&&K<this._source.maxzoom&&(ft[qt.key]=qt)}this._retainLoadedChildren(ft,K,Ue,de);for(var et=0,at=q;et<at.length;et+=1){var kt=at[et],Ot=this._tiles[kt.key];if(!Ot.hasData()){if(K+1>this._source.maxzoom){var It=kt.children(this._source.maxzoom)[0],Bt=this.getTile(It);if(Bt&&Bt.hasData()){de[It.key]=It;continue}}else{var Rt=kt.children(this._source.maxzoom);if(de[Rt[0].key]&&de[Rt[1].key]&&de[Rt[2].key]&&de[Rt[3].key])continue}for(var mt=Ot.wasRequested(),Pt=kt.overscaledZ-1;Pt>=we;--Pt){var ht=kt.scaledTo(Pt);if(ne[ht.key]||(ne[ht.key]=!0,Ot=this.getTile(ht),!Ot&&mt&&(Ot=this._addTile(ht)),Ot&&(de[ht.key]=ht,mt=Ot.wasRequested(),Ot.hasData())))break}}}return de},D.prototype._updateLoadedParentTileCache=function(){this._loadedParentTiles={};for(var q in this._tiles){for(var K=[],de=void 0,ne=this._tiles[q].tileID;ne.overscaledZ>0;){if(ne.key in this._loadedParentTiles){de=this._loadedParentTiles[ne.key];break}K.push(ne.key);var we=ne.scaledTo(ne.overscaledZ-1);if(de=this._getLoadedTile(we),de)break;ne=we}for(var Ue=0,ft=K;Ue<ft.length;Ue+=1){var Zt=ft[Ue];this._loadedParentTiles[Zt]=de}}},D.prototype._addTile=function(q){var K=this._tiles[q.key];if(K)return K;K=this._cache.getAndRemove(q),K&&(this._setTileReloadTimer(q.key,K),K.tileID=q,this._state.initializeTileState(K,this.map?this.map.painter:null),this._cacheTimers[q.key]&&(clearTimeout(this._cacheTimers[q.key]),delete this._cacheTimers[q.key],this._setTileReloadTimer(q.key,K)));var de=!!K;return de||(K=new i.Tile(q,this._source.tileSize*q.overscaleFactor()),this._loadTile(K,this._tileLoaded.bind(this,K,q.key,K.state))),K?(K.uses++,this._tiles[q.key]=K,de||this._source.fire(new i.Event("dataloading",{tile:K,coord:K.tileID,dataType:"source"})),K):null},D.prototype._setTileReloadTimer=function(q,K){var de=this;q in this._timers&&(clearTimeout(this._timers[q]),delete this._timers[q]);var ne=K.getExpiryTimeout();ne&&(this._timers[q]=setTimeout(function(){de._reloadTile(q,"expired"),delete de._timers[q]},ne))},D.prototype._removeTile=function(q){var K=this._tiles[q];K&&(K.uses--,delete this._tiles[q],this._timers[q]&&(clearTimeout(this._timers[q]),delete this._timers[q]),!(K.uses>0)&&(K.hasData()&&K.state!=="reloading"?this._cache.add(K.tileID,K,K.getExpiryTimeout()):(K.aborted=!0,this._abortTile(K),this._unloadTile(K))))},D.prototype.clearTiles=function(){this._shouldReloadOnResume=!1,this._paused=!1;for(var q in this._tiles)this._removeTile(q);this._cache.reset()},D.prototype.tilesIn=function(q,K,de){var ne=this,we=[],Ue=this.transform;if(!Ue)return we;for(var ft=de?Ue.getCameraQueryGeometry(q):q,Zt=q.map(function(Pt){return Ue.pointCoordinate(Pt)}),hr=ft.map(function(Pt){return Ue.pointCoordinate(Pt)}),qt=this.getIds(),Ve=1/0,et=1/0,at=-1/0,kt=-1/0,Ot=0,It=hr;Ot<It.length;Ot+=1){var Bt=It[Ot];Ve=Math.min(Ve,Bt.x),et=Math.min(et,Bt.y),at=Math.max(at,Bt.x),kt=Math.max(kt,Bt.y)}for(var Rt=function(Pt){var ht=ne._tiles[qt[Pt]];if(!ht.holdingForFade()){var cr=ht.tileID,br=Math.pow(2,Ue.zoom-ht.tileID.overscaledZ),Nr=K*ht.queryPadding*i.EXTENT/ht.tileSize/br,Ri=[cr.getTilePoint(new i.MercatorCoordinate(Ve,et)),cr.getTilePoint(new i.MercatorCoordinate(at,kt))];if(Ri[0].x-Nr<i.EXTENT&&Ri[0].y-Nr<i.EXTENT&&Ri[1].x+Nr>=0&&Ri[1].y+Nr>=0){var hi=Zt.map(function(gn){return cr.getTilePoint(gn)}),wi=hr.map(function(gn){return cr.getTilePoint(gn)});we.push({tile:ht,tileID:cr,queryGeometry:hi,cameraQueryGeometry:wi,scale:br})}}},mt=0;mt<qt.length;mt++)Rt(mt);return we},D.prototype.getVisibleCoordinates=function(q){for(var K=this,de=this.getRenderableIds(q).map(function(ft){return K._tiles[ft].tileID}),ne=0,we=de;ne<we.length;ne+=1){var Ue=we[ne];Ue.posMatrix=this.transform.calculatePosMatrix(Ue.toUnwrapped())}return de},D.prototype.hasTransition=function(){if(this._source.hasTransition())return!0;if(zi(this._source.type))for(var q in this._tiles){var K=this._tiles[q];if(K.fadeEndTime!==void 0&&K.fadeEndTime>=i.browser.now())return!0}return!1},D.prototype.setFeatureState=function(q,K,de){q=q||"_geojsonTileLayer",this._state.updateState(q,K,de)},D.prototype.removeFeatureState=function(q,K,de){q=q||"_geojsonTileLayer",this._state.removeFeatureState(q,K,de)},D.prototype.getFeatureState=function(q,K){return q=q||"_geojsonTileLayer",this._state.getState(q,K)},D.prototype.setDependencies=function(q,K,de){var ne=this._tiles[q];ne&&ne.setDependencies(K,de)},D.prototype.reloadTilesForDependencies=function(q,K){for(var de in this._tiles){var ne=this._tiles[de];ne.hasDependency(q,K)&&this._reloadTile(de,"reloading")}this._cache.filter(function(we){return!we.hasDependency(q,K)})},D}(i.Evented);ri.maxOverzooming=10,ri.maxUnderzooming=3;function $r(Y,D){var J=Math.abs(Y.wrap*2)-+(Y.wrap<0),q=Math.abs(D.wrap*2)-+(D.wrap<0);return Y.overscaledZ-D.overscaledZ||q-J||D.canonical.y-Y.canonical.y||D.canonical.x-Y.canonical.x}function zi(Y){return Y==="raster"||Y==="image"||Y==="video"}function Ji(){return new i.window.Worker(io.workerUrl)}var en="mapboxgl_preloaded_worker_pool",cn=function(){this.active={}};cn.prototype.acquire=function(D){if(!this.workers)for(this.workers=[];this.workers.length<cn.workerCount;)this.workers.push(new Ji);return this.active[D]=!0,this.workers.slice()},cn.prototype.release=function(D){delete this.active[D],this.numActive()===0&&(this.workers.forEach(function(J){J.terminate()}),this.workers=null)},cn.prototype.isPreloaded=function(){return!!this.active[en]},cn.prototype.numActive=function(){return Object.keys(this.active).length};var yn=Math.floor(i.browser.hardwareConcurrency/2);cn.workerCount=Math.max(Math.min(yn,6),1);var Mn;function Ba(){return Mn||(Mn=new cn),Mn}function la(){var Y=Ba();Y.acquire(en)}function ma(){var Y=Mn;Y&&(Y.isPreloaded()&&Y.numActive()===1?(Y.release(en),Mn=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 Wa(Y,D){var J={};for(var q in Y)q!=="ref"&&(J[q]=Y[q]);return i.refProperties.forEach(function(K){K in D&&(J[K]=D[K])}),J}function Fa(Y){Y=Y.slice();for(var D=Object.create(null),J=0;J<Y.length;J++)D[Y[J].id]=Y[J];for(var q=0;q<Y.length;q++)"ref"in Y[q]&&(Y[q]=Wa(Y[q],D[Y[q].ref]));return Y}function Wo(){var Y={},D=i.styleSpec.$version;for(var J in i.styleSpec.$root){var q=i.styleSpec.$root[J];if(q.required){var K=null;J==="version"?K=D:q.type==="array"?K=[]:K={},K!=null&&(Y[J]=K)}}return Y}var da={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 Wn(Y,D,J){J.push({command:da.addSource,args:[Y,D[Y]]})}function Ga(Y,D,J){D.push({command:da.removeSource,args:[Y]}),J[Y]=!0}function vo(Y,D,J,q){Ga(Y,J,q),Wn(Y,D,J)}function jn(Y,D,J){var q;for(q in Y[J])if(Y[J].hasOwnProperty(q)&&q!=="data"&&!i.deepEqual(Y[J][q],D[J][q]))return!1;for(q in D[J])if(D[J].hasOwnProperty(q)&&q!=="data"&&!i.deepEqual(Y[J][q],D[J][q]))return!1;return!0}function St(Y,D,J,q){Y=Y||{},D=D||{};var K;for(K in Y)Y.hasOwnProperty(K)&&(D.hasOwnProperty(K)||Ga(K,J,q));for(K in D)D.hasOwnProperty(K)&&(Y.hasOwnProperty(K)?i.deepEqual(Y[K],D[K])||(Y[K].type==="geojson"&&D[K].type==="geojson"&&jn(Y,D,K)?J.push({command:da.setGeoJSONSourceData,args:[K,D[K].data]}):vo(K,D,J,q)):Wn(K,D,J))}function Cr(Y,D,J,q,K,de){Y=Y||{},D=D||{};var ne;for(ne in Y)Y.hasOwnProperty(ne)&&(i.deepEqual(Y[ne],D[ne])||J.push({command:de,args:[q,ne,D[ne],K]}));for(ne in D)!D.hasOwnProperty(ne)||Y.hasOwnProperty(ne)||i.deepEqual(Y[ne],D[ne])||J.push({command:de,args:[q,ne,D[ne],K]})}function Qr(Y){return Y.id}function pi(Y,D){return Y[D.id]=D,Y}function fn(Y,D,J){Y=Y||[],D=D||[];var q=Y.map(Qr),K=D.map(Qr),de=Y.reduce(pi,{}),ne=D.reduce(pi,{}),we=q.slice(),Ue=Object.create(null),ft,Zt,hr,qt,Ve,et,at;for(ft=0,Zt=0;ft<q.length;ft++)hr=q[ft],ne.hasOwnProperty(hr)?Zt++:(J.push({command:da.removeLayer,args:[hr]}),we.splice(we.indexOf(hr,Zt),1));for(ft=0,Zt=0;ft<K.length;ft++)hr=K[K.length-1-ft],we[we.length-1-ft]!==hr&&(de.hasOwnProperty(hr)?(J.push({command:da.removeLayer,args:[hr]}),we.splice(we.lastIndexOf(hr,we.length-Zt),1)):Zt++,et=we[we.length-ft],J.push({command:da.addLayer,args:[ne[hr],et]}),we.splice(we.length-ft,0,hr),Ue[hr]=!0);for(ft=0;ft<K.length;ft++)if(hr=K[ft],qt=de[hr],Ve=ne[hr],!(Ue[hr]||i.deepEqual(qt,Ve))){if(!i.deepEqual(qt.source,Ve.source)||!i.deepEqual(qt["source-layer"],Ve["source-layer"])||!i.deepEqual(qt.type,Ve.type)){J.push({command:da.removeLayer,args:[hr]}),et=we[we.lastIndexOf(hr)+1],J.push({command:da.addLayer,args:[Ve,et]});continue}Cr(qt.layout,Ve.layout,J,hr,null,da.setLayoutProperty),Cr(qt.paint,Ve.paint,J,hr,null,da.setPaintProperty),i.deepEqual(qt.filter,Ve.filter)||J.push({command:da.setFilter,args:[hr,Ve.filter]}),(!i.deepEqual(qt.minzoom,Ve.minzoom)||!i.deepEqual(qt.maxzoom,Ve.maxzoom))&&J.push({command:da.setLayerZoomRange,args:[hr,Ve.minzoom,Ve.maxzoom]});for(at in qt)qt.hasOwnProperty(at)&&(at==="layout"||at==="paint"||at==="filter"||at==="metadata"||at==="minzoom"||at==="maxzoom"||(at.indexOf("paint.")===0?Cr(qt[at],Ve[at],J,hr,at.slice(6),da.setPaintProperty):i.deepEqual(qt[at],Ve[at])||J.push({command:da.setLayerProperty,args:[hr,at,Ve[at]]})));for(at in Ve)!Ve.hasOwnProperty(at)||qt.hasOwnProperty(at)||at==="layout"||at==="paint"||at==="filter"||at==="metadata"||at==="minzoom"||at==="maxzoom"||(at.indexOf("paint.")===0?Cr(qt[at],Ve[at],J,hr,at.slice(6),da.setPaintProperty):i.deepEqual(qt[at],Ve[at])||J.push({command:da.setLayerProperty,args:[hr,at,Ve[at]]}))}}function Sn(Y,D){if(!Y)return[{command:da.setStyle,args:[D]}];var J=[];try{if(!i.deepEqual(Y.version,D.version))return[{command:da.setStyle,args:[D]}];i.deepEqual(Y.center,D.center)||J.push({command:da.setCenter,args:[D.center]}),i.deepEqual(Y.zoom,D.zoom)||J.push({command:da.setZoom,args:[D.zoom]}),i.deepEqual(Y.bearing,D.bearing)||J.push({command:da.setBearing,args:[D.bearing]}),i.deepEqual(Y.pitch,D.pitch)||J.push({command:da.setPitch,args:[D.pitch]}),i.deepEqual(Y.sprite,D.sprite)||J.push({command:da.setSprite,args:[D.sprite]}),i.deepEqual(Y.glyphs,D.glyphs)||J.push({command:da.setGlyphs,args:[D.glyphs]}),i.deepEqual(Y.transition,D.transition)||J.push({command:da.setTransition,args:[D.transition]}),i.deepEqual(Y.light,D.light)||J.push({command:da.setLight,args:[D.light]});var q={},K=[];St(Y.sources,D.sources,K,q);var de=[];Y.layers&&Y.layers.forEach(function(ne){q[ne.source]?J.push({command:da.removeLayer,args:[ne.id]}):de.push(ne)}),J=J.concat(K),fn(de,D.layers,J)}catch(ne){console.warn("Unable to compute style diff:",ne),J=[{command:da.setStyle,args:[D]}]}return J}var En=function(D,J){this.reset(D,J)};En.prototype.reset=function(D,J){this.points=D||[],this._distances=[0];for(var 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(J||0,this.length*.5),this.paddedLength=this.length-this.padding*2},En.prototype.lerp=function(D){if(this.points.length===1)return this.points[0];D=i.clamp(D,0,1);for(var J=1,q=this._distances[J],K=D*this.paddedLength+this.padding;q<K&&J<this._distances.length;)q=this._distances[++J];var de=J-1,ne=this._distances[de],we=q-ne,Ue=we>0?(K-ne)/we:0;return this.points[de].mult(1-Ue).add(this.points[J].mult(Ue))};var ki=function(D,J,q){var K=this.boxCells=[],de=this.circleCells=[];this.xCellCount=Math.ceil(D/q),this.yCellCount=Math.ceil(J/q);for(var ne=0;ne<this.xCellCount*this.yCellCount;ne++)K.push([]),de.push([]);this.circleKeys=[],this.boxKeys=[],this.bboxes=[],this.circles=[],this.width=D,this.height=J,this.xScale=this.xCellCount/D,this.yScale=this.yCellCount/J,this.boxUid=0,this.circleUid=0};ki.prototype.keysLength=function(){return this.boxKeys.length+this.circleKeys.length},ki.prototype.insert=function(D,J,q,K,de){this._forEachCell(J,q,K,de,this._insertBoxCell,this.boxUid++),this.boxKeys.push(D),this.bboxes.push(J),this.bboxes.push(q),this.bboxes.push(K),this.bboxes.push(de)},ki.prototype.insertCircle=function(D,J,q,K){this._forEachCell(J-K,q-K,J+K,q+K,this._insertCircleCell,this.circleUid++),this.circleKeys.push(D),this.circles.push(J),this.circles.push(q),this.circles.push(K)},ki.prototype._insertBoxCell=function(D,J,q,K,de,ne){this.boxCells[de].push(ne)},ki.prototype._insertCircleCell=function(D,J,q,K,de,ne){this.circleCells[de].push(ne)},ki.prototype._query=function(D,J,q,K,de,ne){if(q<0||D>this.width||K<0||J>this.height)return de?!1:[];var we=[];if(D<=0&&J<=0&&this.width<=q&&this.height<=K){if(de)return!0;for(var Ue=0;Ue<this.boxKeys.length;Ue++)we.push({key:this.boxKeys[Ue],x1:this.bboxes[Ue*4],y1:this.bboxes[Ue*4+1],x2:this.bboxes[Ue*4+2],y2:this.bboxes[Ue*4+3]});for(var ft=0;ft<this.circleKeys.length;ft++){var Zt=this.circles[ft*3],hr=this.circles[ft*3+1],qt=this.circles[ft*3+2];we.push({key:this.circleKeys[ft],x1:Zt-qt,y1:hr-qt,x2:Zt+qt,y2:hr+qt})}return ne?we.filter(ne):we}else{var Ve={hitTest:de,seenUids:{box:{},circle:{}}};return this._forEachCell(D,J,q,K,this._queryCell,we,Ve,ne),de?we.length>0:we}},ki.prototype._queryCircle=function(D,J,q,K,de){var ne=D-q,we=D+q,Ue=J-q,ft=J+q;if(we<0||ne>this.width||ft<0||Ue>this.height)return K?!1:[];var Zt=[],hr={hitTest:K,circle:{x:D,y:J,radius:q},seenUids:{box:{},circle:{}}};return this._forEachCell(ne,Ue,we,ft,this._queryCellCircle,Zt,hr,de),K?Zt.length>0:Zt},ki.prototype.query=function(D,J,q,K,de){return this._query(D,J,q,K,!1,de)},ki.prototype.hitTest=function(D,J,q,K,de){return this._query(D,J,q,K,!0,de)},ki.prototype.hitTestCircle=function(D,J,q,K){return this._queryCircle(D,J,q,!0,K)},ki.prototype._queryCell=function(D,J,q,K,de,ne,we,Ue){var ft=we.seenUids,Zt=this.boxCells[de];if(Zt!==null)for(var hr=this.bboxes,qt=0,Ve=Zt;qt<Ve.length;qt+=1){var et=Ve[qt];if(!ft.box[et]){ft.box[et]=!0;var at=et*4;if(D<=hr[at+2]&&J<=hr[at+3]&&q>=hr[at+0]&&K>=hr[at+1]&&(!Ue||Ue(this.boxKeys[et]))){if(we.hitTest)return ne.push(!0),!0;ne.push({key:this.boxKeys[et],x1:hr[at],y1:hr[at+1],x2:hr[at+2],y2:hr[at+3]})}}}var kt=this.circleCells[de];if(kt!==null)for(var Ot=this.circles,It=0,Bt=kt;It<Bt.length;It+=1){var Rt=Bt[It];if(!ft.circle[Rt]){ft.circle[Rt]=!0;var mt=Rt*3;if(this._circleAndRectCollide(Ot[mt],Ot[mt+1],Ot[mt+2],D,J,q,K)&&(!Ue||Ue(this.circleKeys[Rt]))){if(we.hitTest)return ne.push(!0),!0;var Pt=Ot[mt],ht=Ot[mt+1],cr=Ot[mt+2];ne.push({key:this.circleKeys[Rt],x1:Pt-cr,y1:ht-cr,x2:Pt+cr,y2:ht+cr})}}}},ki.prototype._queryCellCircle=function(D,J,q,K,de,ne,we,Ue){var ft=we.circle,Zt=we.seenUids,hr=this.boxCells[de];if(hr!==null)for(var qt=this.bboxes,Ve=0,et=hr;Ve<et.length;Ve+=1){var at=et[Ve];if(!Zt.box[at]){Zt.box[at]=!0;var kt=at*4;if(this._circleAndRectCollide(ft.x,ft.y,ft.radius,qt[kt+0],qt[kt+1],qt[kt+2],qt[kt+3])&&(!Ue||Ue(this.boxKeys[at])))return ne.push(!0),!0}}var Ot=this.circleCells[de];if(Ot!==null)for(var It=this.circles,Bt=0,Rt=Ot;Bt<Rt.length;Bt+=1){var mt=Rt[Bt];if(!Zt.circle[mt]){Zt.circle[mt]=!0;var Pt=mt*3;if(this._circlesCollide(It[Pt],It[Pt+1],It[Pt+2],ft.x,ft.y,ft.radius)&&(!Ue||Ue(this.circleKeys[mt])))return ne.push(!0),!0}}},ki.prototype._forEachCell=function(D,J,q,K,de,ne,we,Ue){for(var ft=this._convertToXCellCoord(D),Zt=this._convertToYCellCoord(J),hr=this._convertToXCellCoord(q),qt=this._convertToYCellCoord(K),Ve=ft;Ve<=hr;Ve++)for(var et=Zt;et<=qt;et++){var at=this.xCellCount*et+Ve;if(de.call(this,D,J,q,K,at,ne,we,Ue))return}},ki.prototype._convertToXCellCoord=function(D){return Math.max(0,Math.min(this.xCellCount-1,Math.floor(D*this.xScale)))},ki.prototype._convertToYCellCoord=function(D){return Math.max(0,Math.min(this.yCellCount-1,Math.floor(D*this.yScale)))},ki.prototype._circlesCollide=function(D,J,q,K,de,ne){var we=K-D,Ue=de-J,ft=q+ne;return ft*ft>we*we+Ue*Ue},ki.prototype._circleAndRectCollide=function(D,J,q,K,de,ne,we){var Ue=(ne-K)/2,ft=Math.abs(D-(K+Ue));if(ft>Ue+q)return!1;var Zt=(we-de)/2,hr=Math.abs(J-(de+Zt));if(hr>Zt+q)return!1;if(ft<=Ue||hr<=Zt)return!0;var qt=ft-Ue,Ve=hr-Zt;return qt*qt+Ve*Ve<=q*q};function _n(Y,D,J,q,K){var de=i.create();return D?(i.scale(de,de,[1/K,1/K,1]),J||i.rotateZ(de,de,q.angle)):i.multiply(de,q.labelPlaneMatrix,Y),de}function ya(Y,D,J,q,K){if(D){var de=i.clone(Y);return i.scale(de,de,[K,K,1]),J||i.rotateZ(de,de,-q.angle),de}else return q.glCoordMatrix}function Jn(Y,D){var J=[Y.x,Y.y,0,1];Fl(J,J,D);var q=J[3];return{point:new i.Point(J[0]/q,J[1]/q),signedDistanceFromCamera:q}}function Ma(Y,D){return .5+.5*(Y/D)}function _o(Y,D){var J=Y[0]/Y[3],q=Y[1]/Y[3],K=J>=-D[0]&&J<=D[0]&&q>=-D[1]&&q<=D[1];return K}function No(Y,D,J,q,K,de,ne,we){var Ue=q?Y.textSizeData:Y.iconSizeData,ft=i.evaluateSizeForZoom(Ue,J.transform.zoom),Zt=[256/J.width*2+1,256/J.height*2+1],hr=q?Y.text.dynamicLayoutVertexArray:Y.icon.dynamicLayoutVertexArray;hr.clear();for(var qt=Y.lineVertexArray,Ve=q?Y.text.placedSymbolArray:Y.icon.placedSymbolArray,et=J.transform.width/J.transform.height,at=!1,kt=0;kt<Ve.length;kt++){var Ot=Ve.get(kt);if(Ot.hidden||Ot.writingMode===i.WritingMode.vertical&&!at){cl(Ot.numGlyphs,hr);continue}at=!1;var It=[Ot.anchorX,Ot.anchorY,0,1];if(i.transformMat4(It,It,D),!_o(It,Zt)){cl(Ot.numGlyphs,hr);continue}var Bt=It[3],Rt=Ma(J.transform.cameraToCenterDistance,Bt),mt=i.evaluateSizeForFeature(Ue,ft,Ot),Pt=ne?mt/Rt:mt*Rt,ht=new i.Point(Ot.anchorX,Ot.anchorY),cr=Jn(ht,K).point,br={},Nr=Co(Ot,Pt,!1,we,D,K,de,Y.glyphOffsetArray,qt,hr,cr,ht,br,et);at=Nr.useVertical,(Nr.notEnoughRoom||at||Nr.needsFlipping&&Co(Ot,Pt,!0,we,D,K,de,Y.glyphOffsetArray,qt,hr,cr,ht,br,et).notEnoughRoom)&&cl(Ot.numGlyphs,hr)}q?Y.text.dynamicLayoutVertexBuffer.updateData(hr):Y.icon.dynamicLayoutVertexBuffer.updateData(hr)}function po(Y,D,J,q,K,de,ne,we,Ue,ft,Zt){var hr=we.glyphStartIndex+we.numGlyphs,qt=we.lineStartIndex,Ve=we.lineStartIndex+we.lineLength,et=D.getoffsetX(we.glyphStartIndex),at=D.getoffsetX(hr-1),kt=zs(Y*et,J,q,K,de,ne,we.segment,qt,Ve,Ue,ft,Zt);if(!kt)return null;var Ot=zs(Y*at,J,q,K,de,ne,we.segment,qt,Ve,Ue,ft,Zt);return Ot?{first:kt,last:Ot}:null}function Lo(Y,D,J,q){if(Y===i.WritingMode.horizontal){var K=Math.abs(J.y-D.y),de=Math.abs(J.x-D.x)*q;if(K>de)return{useVertical:!0}}return(Y===i.WritingMode.vertical?D.y<J.y:D.x>J.x)?{needsFlipping:!0}:null}function Co(Y,D,J,q,K,de,ne,we,Ue,ft,Zt,hr,qt,Ve){var et=D/24,at=Y.lineOffsetX*et,kt=Y.lineOffsetY*et,Ot;if(Y.numGlyphs>1){var It=Y.glyphStartIndex+Y.numGlyphs,Bt=Y.lineStartIndex,Rt=Y.lineStartIndex+Y.lineLength,mt=po(et,we,at,kt,J,Zt,hr,Y,Ue,de,qt);if(!mt)return{notEnoughRoom:!0};var Pt=Jn(mt.first.point,ne).point,ht=Jn(mt.last.point,ne).point;if(q&&!J){var cr=Lo(Y.writingMode,Pt,ht,Ve);if(cr)return cr}Ot=[mt.first];for(var br=Y.glyphStartIndex+1;br<It-1;br++)Ot.push(zs(et*we.getoffsetX(br),at,kt,J,Zt,hr,Y.segment,Bt,Rt,Ue,de,qt));Ot.push(mt.last)}else{if(q&&!J){var Nr=Jn(hr,K).point,Ri=Y.lineStartIndex+Y.segment+1,hi=new i.Point(Ue.getx(Ri),Ue.gety(Ri)),wi=Jn(hi,K),gn=wi.signedDistanceFromCamera>0?wi.point:Fs(hr,hi,Nr,1,K),tn=Lo(Y.writingMode,Nr,gn,Ve);if(tn)return tn}var Ci=zs(et*we.getoffsetX(Y.glyphStartIndex),at,kt,J,Zt,hr,Y.segment,Y.lineStartIndex,Y.lineStartIndex+Y.lineLength,Ue,de,qt);if(!Ci)return{notEnoughRoom:!0};Ot=[Ci]}for(var qi=0,Vi=Ot;qi<Vi.length;qi+=1){var on=Vi[qi];i.addDynamicAttributes(ft,on.point,on.angle)}return{}}function Fs(Y,D,J,q,K){var de=Jn(Y.add(Y.sub(D)._unit()),K).point,ne=J.sub(de);return J.add(ne._mult(q/ne.mag()))}function zs(Y,D,J,q,K,de,ne,we,Ue,ft,Zt,hr){var qt=q?Y-D:Y+D,Ve=qt>0?1:-1,et=0;q&&(Ve*=-1,et=Math.PI),Ve<0&&(et+=Math.PI);for(var at=Ve>0?we+ne:we+ne+1,kt=K,Ot=K,It=0,Bt=0,Rt=Math.abs(qt),mt=[];It+Bt<=Rt;){if(at+=Ve,at<we||at>=Ue)return null;if(Ot=kt,mt.push(kt),kt=hr[at],kt===void 0){var Pt=new i.Point(ft.getx(at),ft.gety(at)),ht=Jn(Pt,Zt);if(ht.signedDistanceFromCamera>0)kt=hr[at]=ht.point;else{var cr=at-Ve,br=It===0?de:new i.Point(ft.getx(cr),ft.gety(cr));kt=Fs(br,Pt,Ot,Rt-It+1,Zt)}}It+=Bt,Bt=Ot.dist(kt)}var Nr=(Rt-It)/Bt,Ri=kt.sub(Ot),hi=Ri.mult(Nr)._add(Ot);hi._add(Ri._unit()._perp()._mult(J*Ve));var wi=et+Math.atan2(kt.y-Ot.y,kt.x-Ot.x);return mt.push(hi),{point:hi,angle:wi,path:mt}}var ul=new Float32Array([-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0]);function cl(Y,D){for(var J=0;J<Y;J++){var q=D.length;D.resize(q+4),D.float32.set(ul,q*3)}}function Fl(Y,D,J){var q=D[0],K=D[1];return Y[0]=J[0]*q+J[4]*K+J[12],Y[1]=J[1]*q+J[5]*K+J[13],Y[3]=J[3]*q+J[7]*K+J[15],Y}var cs=100,nl=function(D,J,q){J===void 0&&(J=new ki(D.width+2*cs,D.height+2*cs,25)),q===void 0&&(q=new ki(D.width+2*cs,D.height+2*cs,25)),this.transform=D,this.grid=J,this.ignoredGrid=q,this.pitchfactor=Math.cos(D._pitch)*D.cameraToCenterDistance,this.screenRightBoundary=D.width+cs,this.screenBottomBoundary=D.height+cs,this.gridRightBoundary=D.width+2*cs,this.gridBottomBoundary=D.height+2*cs};nl.prototype.placeCollisionBox=function(D,J,q,K,de){var ne=this.projectAndGetPerspectiveRatio(K,D.anchorPointX,D.anchorPointY),we=q*ne.perspectiveRatio,Ue=D.x1*we+ne.point.x,ft=D.y1*we+ne.point.y,Zt=D.x2*we+ne.point.x,hr=D.y2*we+ne.point.y;return!this.isInsideGrid(Ue,ft,Zt,hr)||!J&&this.grid.hitTest(Ue,ft,Zt,hr,de)?{box:[],offscreen:!1}:{box:[Ue,ft,Zt,hr],offscreen:this.isOffscreen(Ue,ft,Zt,hr)}},nl.prototype.placeCollisionCircles=function(D,J,q,K,de,ne,we,Ue,ft,Zt,hr,qt,Ve){var et=[],at=new i.Point(J.anchorX,J.anchorY),kt=Jn(at,ne),Ot=Ma(this.transform.cameraToCenterDistance,kt.signedDistanceFromCamera),It=Zt?de/Ot:de*Ot,Bt=It/i.ONE_EM,Rt=Jn(at,we).point,mt={},Pt=J.lineOffsetX*Bt,ht=J.lineOffsetY*Bt,cr=po(Bt,K,Pt,ht,!1,Rt,at,J,q,we,mt),br=!1,Nr=!1,Ri=!0;if(cr){for(var hi=qt*.5*Ot+Ve,wi=new i.Point(-cs,-cs),gn=new i.Point(this.screenRightBoundary,this.screenBottomBoundary),tn=new En,Ci=cr.first,qi=cr.last,Vi=[],on=Ci.path.length-1;on>=1;on--)Vi.push(Ci.path[on]);for(var On=1;On<qi.path.length;On++)Vi.push(qi.path[On]);var Ja=hi*2.5;if(Ue){var co=Vi.map(function(kv){return Jn(kv,Ue)});co.some(function(kv){return kv.signedDistanceFromCamera<=0})?Vi=[]:Vi=co.map(function(kv){return kv.point})}var rs=[];if(Vi.length>0){for(var so=Vi[0].clone(),Zo=Vi[0].clone(),ys=1;ys<Vi.length;ys++)so.x=Math.min(so.x,Vi[ys].x),so.y=Math.min(so.y,Vi[ys].y),Zo.x=Math.max(Zo.x,Vi[ys].x),Zo.y=Math.max(Zo.y,Vi[ys].y);so.x>=wi.x&&Zo.x<=gn.x&&so.y>=wi.y&&Zo.y<=gn.y?rs=[Vi]:Zo.x<wi.x||so.x>gn.x||Zo.y<wi.y||so.y>gn.y?rs=[]:rs=i.clipLine([Vi],wi.x,wi.y,gn.x,gn.y)}for(var su=0,Mv=rs;su<Mv.length;su+=1){var Ev=Mv[su];tn.reset(Ev,hi*.25);var wd=0;tn.length<=.5*hi?wd=1:wd=Math.ceil(tn.paddedLength/Ja)+1;for(var Yv=0;Yv<wd;Yv++){var cg=Yv/Math.max(wd-1,1),dp=tn.lerp(cg),Td=dp.x+cs,vp=dp.y+cs;et.push(Td,vp,hi,0);var Vd=Td-hi,Ad=vp-hi,Cv=Td+hi,Kv=vp+hi;if(Ri=Ri&&this.isOffscreen(Vd,Ad,Cv,Kv),Nr=Nr||this.isInsideGrid(Vd,Ad,Cv,Kv),!D&&this.grid.hitTestCircle(Td,vp,hi,hr)&&(br=!0,!ft))return{circles:[],offscreen:!1,collisionDetected:br}}}}return{circles:!ft&&br||!Nr?[]:et,offscreen:Ri,collisionDetected:br}},nl.prototype.queryRenderedSymbols=function(D){if(D.length===0||this.grid.keysLength()===0&&this.ignoredGrid.keysLength()===0)return{};for(var J=[],q=1/0,K=1/0,de=-1/0,ne=-1/0,we=0,Ue=D;we<Ue.length;we+=1){var ft=Ue[we],Zt=new i.Point(ft.x+cs,ft.y+cs);q=Math.min(q,Zt.x),K=Math.min(K,Zt.y),de=Math.max(de,Zt.x),ne=Math.max(ne,Zt.y),J.push(Zt)}for(var hr=this.grid.query(q,K,de,ne).concat(this.ignoredGrid.query(q,K,de,ne)),qt={},Ve={},et=0,at=hr;et<at.length;et+=1){var kt=at[et],Ot=kt.key;if(qt[Ot.bucketInstanceId]===void 0&&(qt[Ot.bucketInstanceId]={}),!qt[Ot.bucketInstanceId][Ot.featureIndex]){var It=[new i.Point(kt.x1,kt.y1),new i.Point(kt.x2,kt.y1),new i.Point(kt.x2,kt.y2),new i.Point(kt.x1,kt.y2)];i.polygonIntersectsPolygon(J,It)&&(qt[Ot.bucketInstanceId][Ot.featureIndex]=!0,Ve[Ot.bucketInstanceId]===void 0&&(Ve[Ot.bucketInstanceId]=[]),Ve[Ot.bucketInstanceId].push(Ot.featureIndex))}}return Ve},nl.prototype.insertCollisionBox=function(D,J,q,K,de){var ne=J?this.ignoredGrid:this.grid,we={bucketInstanceId:q,featureIndex:K,collisionGroupID:de};ne.insert(we,D[0],D[1],D[2],D[3])},nl.prototype.insertCollisionCircles=function(D,J,q,K,de){for(var ne=J?this.ignoredGrid:this.grid,we={bucketInstanceId:q,featureIndex:K,collisionGroupID:de},Ue=0;Ue<D.length;Ue+=4)ne.insertCircle(we,D[Ue],D[Ue+1],D[Ue+2])},nl.prototype.projectAndGetPerspectiveRatio=function(D,J,q){var K=[J,q,0,1];Fl(K,K,D);var de=new i.Point((K[0]/K[3]+1)/2*this.transform.width+cs,(-K[1]/K[3]+1)/2*this.transform.height+cs);return{point:de,perspectiveRatio:.5+.5*(this.transform.cameraToCenterDistance/K[3])}},nl.prototype.isOffscreen=function(D,J,q,K){return q<cs||D>=this.screenRightBoundary||K<cs||J>this.screenBottomBoundary},nl.prototype.isInsideGrid=function(D,J,q,K){return q>=0&&D<this.gridRightBoundary&&K>=0&&J<this.gridBottomBoundary},nl.prototype.getViewportMatrix=function(){var D=i.identity([]);return i.translate(D,D,[-cs,-cs,0]),D};function Ss(Y,D,J){return D*(i.EXTENT/(Y.tileSize*Math.pow(2,J-Y.tileID.overscaledZ)))}var fl=function(D,J,q,K){D?this.opacity=Math.max(0,Math.min(1,D.opacity+(D.placed?J:-J))):this.opacity=K&&q?1:0,this.placed=q};fl.prototype.isHidden=function(){return this.opacity===0&&!this.placed};var Js=function(D,J,q,K,de){this.text=new fl(D?D.text:null,J,q,de),this.icon=new fl(D?D.icon:null,J,K,de)};Js.prototype.isHidden=function(){return this.text.isHidden()&&this.icon.isHidden()};var Os=function(D,J,q){this.text=D,this.icon=J,this.skipFade=q},Io=function(){this.invProjMatrix=i.create(),this.viewportMatrix=i.create(),this.circles=[]},us=function(D,J,q,K,de){this.bucketInstanceId=D,this.featureIndex=J,this.sourceLayerIndex=q,this.bucketIndex=K,this.tileID=de},Zl=function(D){this.crossSourceCollisions=D,this.maxGroupID=0,this.collisionGroups={}};Zl.prototype.get=function(D){if(this.crossSourceCollisions)return{ID:0,predicate:null};if(!this.collisionGroups[D]){var J=++this.maxGroupID;this.collisionGroups[D]={ID:J,predicate:function(q){return q.collisionGroupID===J}}}return this.collisionGroups[D]};function Su(Y,D,J,q,K){var de=i.getAnchorAlignment(Y),ne=de.horizontalAlign,we=de.verticalAlign,Ue=-(ne-.5)*D,ft=-(we-.5)*J,Zt=i.evaluateVariableOffset(Y,q);return new i.Point(Ue+Zt[0]*K,ft+Zt[1]*K)}function nc(Y,D,J,q,K,de){var ne=Y.x1,we=Y.x2,Ue=Y.y1,ft=Y.y2,Zt=Y.anchorPointX,hr=Y.anchorPointY,qt=new i.Point(D,J);return q&&qt._rotate(K?de:-de),{x1:ne+qt.x,y1:Ue+qt.y,x2:we+qt.x,y2:ft+qt.y,anchorPointX:Zt,anchorPointY:hr}}var ws=function(D,J,q,K){this.transform=D.clone(),this.collisionIndex=new nl(this.transform),this.placements={},this.opacities={},this.variableOffsets={},this.stale=!1,this.commitTime=0,this.fadeDuration=J,this.retainedQueryData={},this.collisionGroups=new Zl(q),this.collisionCircleArrays={},this.prevPlacement=K,K&&(K.prevPlacement=void 0),this.placedOrientations={}};ws.prototype.getBucketParts=function(D,J,q,K){var de=q.getBucket(J),ne=q.latestFeatureIndex;if(!(!de||!ne||J.id!==de.layerIds[0])){var we=q.collisionBoxArray,Ue=de.layers[0].layout,ft=Math.pow(2,this.transform.zoom-q.tileID.overscaledZ),Zt=q.tileSize/i.EXTENT,hr=this.transform.calculatePosMatrix(q.tileID.toUnwrapped()),qt=Ue.get("text-pitch-alignment")==="map",Ve=Ue.get("text-rotation-alignment")==="map",et=Ss(q,1,this.transform.zoom),at=_n(hr,qt,Ve,this.transform,et),kt=null;if(qt){var Ot=ya(hr,qt,Ve,this.transform,et);kt=i.multiply([],this.transform.labelPlaneMatrix,Ot)}this.retainedQueryData[de.bucketInstanceId]=new us(de.bucketInstanceId,ne,de.sourceLayerIndex,de.index,q.tileID);var It={bucket:de,layout:Ue,posMatrix:hr,textLabelPlaneMatrix:at,labelToScreenMatrix:kt,scale:ft,textPixelRatio:Zt,holdingForFade:q.holdingForFade(),collisionBoxArray:we,partiallyEvaluatedTextSize:i.evaluateSizeForZoom(de.textSizeData,this.transform.zoom),collisionGroup:this.collisionGroups.get(de.sourceID)};if(K)for(var Bt=0,Rt=de.sortKeyRanges;Bt<Rt.length;Bt+=1){var mt=Rt[Bt],Pt=mt.sortKey,ht=mt.symbolInstanceStart,cr=mt.symbolInstanceEnd;D.push({sortKey:Pt,symbolInstanceStart:ht,symbolInstanceEnd:cr,parameters:It})}else D.push({symbolInstanceStart:0,symbolInstanceEnd:de.symbolInstances.length,parameters:It})}},ws.prototype.attemptAnchorPlacement=function(D,J,q,K,de,ne,we,Ue,ft,Zt,hr,qt,Ve,et,at){var kt=[qt.textOffset0,qt.textOffset1],Ot=Su(D,q,K,kt,de),It=this.collisionIndex.placeCollisionBox(nc(J,Ot.x,Ot.y,ne,we,this.transform.angle),hr,Ue,ft,Zt.predicate);if(at){var Bt=this.collisionIndex.placeCollisionBox(nc(at,Ot.x,Ot.y,ne,we,this.transform.angle),hr,Ue,ft,Zt.predicate);if(Bt.box.length===0)return}if(It.box.length>0){var Rt;return this.prevPlacement&&this.prevPlacement.variableOffsets[qt.crossTileID]&&this.prevPlacement.placements[qt.crossTileID]&&this.prevPlacement.placements[qt.crossTileID].text&&(Rt=this.prevPlacement.variableOffsets[qt.crossTileID].anchor),this.variableOffsets[qt.crossTileID]={textOffset:kt,width:q,height:K,anchor:D,textBoxScale:de,prevAnchor:Rt},this.markUsedJustification(Ve,D,qt,et),Ve.allowVerticalPlacement&&(this.markUsedOrientation(Ve,et,qt),this.placedOrientations[qt.crossTileID]=et),{shift:Ot,placedGlyphBoxes:It}}},ws.prototype.placeLayerBucketPart=function(D,J,q){var K=this,de=D.parameters,ne=de.bucket,we=de.layout,Ue=de.posMatrix,ft=de.textLabelPlaneMatrix,Zt=de.labelToScreenMatrix,hr=de.textPixelRatio,qt=de.holdingForFade,Ve=de.collisionBoxArray,et=de.partiallyEvaluatedTextSize,at=de.collisionGroup,kt=we.get("text-optional"),Ot=we.get("icon-optional"),It=we.get("text-allow-overlap"),Bt=we.get("icon-allow-overlap"),Rt=we.get("text-rotation-alignment")==="map",mt=we.get("text-pitch-alignment")==="map",Pt=we.get("icon-text-fit")!=="none",ht=we.get("symbol-z-order")==="viewport-y",cr=It&&(Bt||!ne.hasIconData()||Ot),br=Bt&&(It||!ne.hasTextData()||kt);!ne.collisionArrays&&Ve&&ne.deserializeCollisionBoxes(Ve);var Nr=function(Ci,qi){if(!J[Ci.crossTileID]){if(qt){K.placements[Ci.crossTileID]=new Os(!1,!1,!1);return}var Vi=!1,on=!1,On=!0,Ja=null,co={box:null,offscreen:null},rs={box:null,offscreen:null},so=null,Zo=null,ys=null,su=0,Mv=0,Ev=0;qi.textFeatureIndex?su=qi.textFeatureIndex:Ci.useRuntimeCollisionCircles&&(su=Ci.featureIndex),qi.verticalTextFeatureIndex&&(Mv=qi.verticalTextFeatureIndex);var wd=qi.textBox;if(wd){var Yv=function(vc){var eu=i.WritingMode.horizontal;if(ne.allowVerticalPlacement&&!vc&&K.prevPlacement){var Sd=K.prevPlacement.placedOrientations[Ci.crossTileID];Sd&&(K.placedOrientations[Ci.crossTileID]=Sd,eu=Sd,K.markUsedOrientation(ne,eu,Ci))}return eu},cg=function(vc,eu){if(ne.allowVerticalPlacement&&Ci.numVerticalGlyphVertices>0&&qi.verticalTextBox)for(var Sd=0,sy=ne.writingModes;Sd<sy.length;Sd+=1){var A1=sy[Sd];if(A1===i.WritingMode.vertical?(co=eu(),rs=co):co=vc(),co&&co.box&&co.box.length)break}else co=vc()};if(we.get("text-variable-anchor")){var Vd=we.get("text-variable-anchor");if(K.prevPlacement&&K.prevPlacement.variableOffsets[Ci.crossTileID]){var Ad=K.prevPlacement.variableOffsets[Ci.crossTileID];Vd.indexOf(Ad.anchor)>0&&(Vd=Vd.filter(function(vc){return vc!==Ad.anchor}),Vd.unshift(Ad.anchor))}var Cv=function(vc,eu,Sd){for(var sy=vc.x2-vc.x1,A1=vc.y2-vc.y1,wu=Ci.textBoxScale,Nx=Pt&&!Bt?eu:null,am={box:[],offscreen:!1},Mw=It?Vd.length*2:Vd.length,Lv=0;Lv<Mw;++Lv){var om=Vd[Lv%Vd.length],Ew=Lv>=Vd.length,Ux=K.attemptAnchorPlacement(om,vc,sy,A1,wu,Rt,mt,hr,Ue,at,Ew,Ci,ne,Sd,Nx);if(Ux&&(am=Ux.placedGlyphBoxes,am&&am.box&&am.box.length)){Vi=!0,Ja=Ux.shift;break}}return am},Kv=function(){return Cv(wd,qi.iconBox,i.WritingMode.horizontal)},kv=function(){var vc=qi.verticalTextBox,eu=co&&co.box&&co.box.length;return ne.allowVerticalPlacement&&!eu&&Ci.numVerticalGlyphVertices>0&&vc?Cv(vc,qi.verticalIconBox,i.WritingMode.vertical):{box:null,offscreen:null}};cg(Kv,kv),co&&(Vi=co.box,On=co.offscreen);var ny=Yv(co&&co.box);if(!Vi&&K.prevPlacement){var fg=K.prevPlacement.variableOffsets[Ci.crossTileID];fg&&(K.variableOffsets[Ci.crossTileID]=fg,K.markUsedJustification(ne,fg.anchor,Ci,ny))}}else{var dp=function(vc,eu){var Sd=K.collisionIndex.placeCollisionBox(vc,It,hr,Ue,at.predicate);return Sd&&Sd.box&&Sd.box.length&&(K.markUsedOrientation(ne,eu,Ci),K.placedOrientations[Ci.crossTileID]=eu),Sd},Td=function(){return dp(wd,i.WritingMode.horizontal)},vp=function(){var vc=qi.verticalTextBox;return ne.allowVerticalPlacement&&Ci.numVerticalGlyphVertices>0&&vc?dp(vc,i.WritingMode.vertical):{box:null,offscreen:null}};cg(Td,vp),Yv(co&&co.box&&co.box.length)}}if(so=co,Vi=so&&so.box&&so.box.length>0,On=so&&so.offscreen,Ci.useRuntimeCollisionCircles){var oh=ne.text.placedSymbolArray.get(Ci.centerJustifiedTextSymbolIndex),hg=i.evaluateSizeForFeature(ne.textSizeData,et,oh),ay=we.get("text-padding"),Gh=Ci.collisionCircleDiameter;Zo=K.collisionIndex.placeCollisionCircles(It,oh,ne.lineVertexArray,ne.glyphOffsetArray,hg,Ue,ft,Zt,q,mt,at.predicate,Gh,ay),Vi=It||Zo.circles.length>0&&!Zo.collisionDetected,On=On&&Zo.offscreen}if(qi.iconFeatureIndex&&(Ev=qi.iconFeatureIndex),qi.iconBox){var rm=function(vc){var eu=Pt&&Ja?nc(vc,Ja.x,Ja.y,Rt,mt,K.transform.angle):vc;return K.collisionIndex.placeCollisionBox(eu,Bt,hr,Ue,at.predicate)};rs&&rs.box&&rs.box.length&&qi.verticalIconBox?(ys=rm(qi.verticalIconBox),on=ys.box.length>0):(ys=rm(qi.iconBox),on=ys.box.length>0),On=On&&ys.offscreen}var w1=kt||Ci.numHorizontalGlyphVertices===0&&Ci.numVerticalGlyphVertices===0,T1=Ot||Ci.numIconVertices===0;if(!w1&&!T1?on=Vi=on&&Vi:T1?w1||(on=on&&Vi):Vi=on&&Vi,Vi&&so&&so.box&&(rs&&rs.box&&Mv?K.collisionIndex.insertCollisionBox(so.box,we.get("text-ignore-placement"),ne.bucketInstanceId,Mv,at.ID):K.collisionIndex.insertCollisionBox(so.box,we.get("text-ignore-placement"),ne.bucketInstanceId,su,at.ID)),on&&ys&&K.collisionIndex.insertCollisionBox(ys.box,we.get("icon-ignore-placement"),ne.bucketInstanceId,Ev,at.ID),Zo&&(Vi&&K.collisionIndex.insertCollisionCircles(Zo.circles,we.get("text-ignore-placement"),ne.bucketInstanceId,su,at.ID),q)){var oy=ne.bucketInstanceId,im=K.collisionCircleArrays[oy];im===void 0&&(im=K.collisionCircleArrays[oy]=new Io);for(var nm=0;nm<Zo.circles.length;nm+=4)im.circles.push(Zo.circles[nm+0]),im.circles.push(Zo.circles[nm+1]),im.circles.push(Zo.circles[nm+2]),im.circles.push(Zo.collisionDetected?1:0)}K.placements[Ci.crossTileID]=new Os(Vi||cr,on||br,On||ne.justReloaded),J[Ci.crossTileID]=!0}};if(ht)for(var Ri=ne.getSortedSymbolIndexes(this.transform.angle),hi=Ri.length-1;hi>=0;--hi){var wi=Ri[hi];Nr(ne.symbolInstances.get(wi),ne.collisionArrays[wi])}else for(var gn=D.symbolInstanceStart;gn<D.symbolInstanceEnd;gn++)Nr(ne.symbolInstances.get(gn),ne.collisionArrays[gn]);if(q&&ne.bucketInstanceId in this.collisionCircleArrays){var tn=this.collisionCircleArrays[ne.bucketInstanceId];i.invert(tn.invProjMatrix,Ue),tn.viewportMatrix=this.collisionIndex.getViewportMatrix()}ne.justReloaded=!1},ws.prototype.markUsedJustification=function(D,J,q,K){var de={left:q.leftJustifiedTextSymbolIndex,center:q.centerJustifiedTextSymbolIndex,right:q.rightJustifiedTextSymbolIndex},ne;K===i.WritingMode.vertical?ne=q.verticalPlacedTextSymbolIndex:ne=de[i.getAnchorJustification(J)];for(var we=[q.leftJustifiedTextSymbolIndex,q.centerJustifiedTextSymbolIndex,q.rightJustifiedTextSymbolIndex,q.verticalPlacedTextSymbolIndex],Ue=0,ft=we;Ue<ft.length;Ue+=1){var Zt=ft[Ue];Zt>=0&&(ne>=0&&Zt!==ne?D.text.placedSymbolArray.get(Zt).crossTileID=0:D.text.placedSymbolArray.get(Zt).crossTileID=q.crossTileID)}},ws.prototype.markUsedOrientation=function(D,J,q){for(var K=J===i.WritingMode.horizontal||J===i.WritingMode.horizontalOnly?J:0,de=J===i.WritingMode.vertical?J:0,ne=[q.leftJustifiedTextSymbolIndex,q.centerJustifiedTextSymbolIndex,q.rightJustifiedTextSymbolIndex],we=0,Ue=ne;we<Ue.length;we+=1){var ft=Ue[we];D.text.placedSymbolArray.get(ft).placedOrientation=K}q.verticalPlacedTextSymbolIndex&&(D.text.placedSymbolArray.get(q.verticalPlacedTextSymbolIndex).placedOrientation=de)},ws.prototype.commit=function(D){this.commitTime=D,this.zoomAtLastRecencyCheck=this.transform.zoom;var J=this.prevPlacement,q=!1;this.prevZoomAdjustment=J?J.zoomAdjustment(this.transform.zoom):0;var K=J?J.symbolFadeChange(D):1,de=J?J.opacities:{},ne=J?J.variableOffsets:{},we=J?J.placedOrientations:{};for(var Ue in this.placements){var ft=this.placements[Ue],Zt=de[Ue];Zt?(this.opacities[Ue]=new Js(Zt,K,ft.text,ft.icon),q=q||ft.text!==Zt.text.placed||ft.icon!==Zt.icon.placed):(this.opacities[Ue]=new Js(null,K,ft.text,ft.icon,ft.skipFade),q=q||ft.text||ft.icon)}for(var hr in de){var qt=de[hr];if(!this.opacities[hr]){var Ve=new Js(qt,K,!1,!1);Ve.isHidden()||(this.opacities[hr]=Ve,q=q||qt.text.placed||qt.icon.placed)}}for(var et in ne)!this.variableOffsets[et]&&this.opacities[et]&&!this.opacities[et].isHidden()&&(this.variableOffsets[et]=ne[et]);for(var at in we)!this.placedOrientations[at]&&this.opacities[at]&&!this.opacities[at].isHidden()&&(this.placedOrientations[at]=we[at]);q?this.lastPlacementChangeTime=D:typeof this.lastPlacementChangeTime!="number"&&(this.lastPlacementChangeTime=J?J.lastPlacementChangeTime:D)},ws.prototype.updateLayerOpacities=function(D,J){for(var q={},K=0,de=J;K<de.length;K+=1){var ne=de[K],we=ne.getBucket(D);we&&ne.latestFeatureIndex&&D.id===we.layerIds[0]&&this.updateBucketOpacities(we,q,ne.collisionBoxArray)}},ws.prototype.updateBucketOpacities=function(D,J,q){var K=this;D.hasTextData()&&D.text.opacityVertexArray.clear(),D.hasIconData()&&D.icon.opacityVertexArray.clear(),D.hasIconCollisionBoxData()&&D.iconCollisionBox.collisionVertexArray.clear(),D.hasTextCollisionBoxData()&&D.textCollisionBox.collisionVertexArray.clear();var de=D.layers[0].layout,ne=new Js(null,0,!1,!1,!0),we=de.get("text-allow-overlap"),Ue=de.get("icon-allow-overlap"),ft=de.get("text-variable-anchor"),Zt=de.get("text-rotation-alignment")==="map",hr=de.get("text-pitch-alignment")==="map",qt=de.get("icon-text-fit")!=="none",Ve=new Js(null,0,we&&(Ue||!D.hasIconData()||de.get("icon-optional")),Ue&&(we||!D.hasTextData()||de.get("text-optional")),!0);!D.collisionArrays&&q&&(D.hasIconCollisionBoxData()||D.hasTextCollisionBoxData())&&D.deserializeCollisionBoxes(q);for(var et=function(It,Bt,Rt){for(var mt=0;mt<Bt/4;mt++)It.opacityVertexArray.emplaceBack(Rt)},at=function(It){var Bt=D.symbolInstances.get(It),Rt=Bt.numHorizontalGlyphVertices,mt=Bt.numVerticalGlyphVertices,Pt=Bt.crossTileID,ht=J[Pt],cr=K.opacities[Pt];ht?cr=ne:cr||(cr=Ve,K.opacities[Pt]=cr),J[Pt]=!0;var br=Rt>0||mt>0,Nr=Bt.numIconVertices>0,Ri=K.placedOrientations[Bt.crossTileID],hi=Ri===i.WritingMode.vertical,wi=Ri===i.WritingMode.horizontal||Ri===i.WritingMode.horizontalOnly;if(br){var gn=ac(cr.text),tn=hi?aa:gn;et(D.text,Rt,tn);var Ci=wi?aa:gn;et(D.text,mt,Ci);var qi=cr.text.isHidden();[Bt.rightJustifiedTextSymbolIndex,Bt.centerJustifiedTextSymbolIndex,Bt.leftJustifiedTextSymbolIndex].forEach(function(Ev){Ev>=0&&(D.text.placedSymbolArray.get(Ev).hidden=qi||hi?1:0)}),Bt.verticalPlacedTextSymbolIndex>=0&&(D.text.placedSymbolArray.get(Bt.verticalPlacedTextSymbolIndex).hidden=qi||wi?1:0);var Vi=K.variableOffsets[Bt.crossTileID];Vi&&K.markUsedJustification(D,Vi.anchor,Bt,Ri);var on=K.placedOrientations[Bt.crossTileID];on&&(K.markUsedJustification(D,"left",Bt,on),K.markUsedOrientation(D,on,Bt))}if(Nr){var On=ac(cr.icon),Ja=!(qt&&Bt.verticalPlacedIconSymbolIndex&&hi);if(Bt.placedIconSymbolIndex>=0){var co=Ja?On:aa;et(D.icon,Bt.numIconVertices,co),D.icon.placedSymbolArray.get(Bt.placedIconSymbolIndex).hidden=cr.icon.isHidden()}if(Bt.verticalPlacedIconSymbolIndex>=0){var rs=Ja?aa:On;et(D.icon,Bt.numVerticalIconVertices,rs),D.icon.placedSymbolArray.get(Bt.verticalPlacedIconSymbolIndex).hidden=cr.icon.isHidden()}}if(D.hasIconCollisionBoxData()||D.hasTextCollisionBoxData()){var so=D.collisionArrays[It];if(so){var Zo=new i.Point(0,0);if(so.textBox||so.verticalTextBox){var ys=!0;if(ft){var su=K.variableOffsets[Pt];su?(Zo=Su(su.anchor,su.width,su.height,su.textOffset,su.textBoxScale),Zt&&Zo._rotate(hr?K.transform.angle:-K.transform.angle)):ys=!1}so.textBox&&Fn(D.textCollisionBox.collisionVertexArray,cr.text.placed,!ys||hi,Zo.x,Zo.y),so.verticalTextBox&&Fn(D.textCollisionBox.collisionVertexArray,cr.text.placed,!ys||wi,Zo.x,Zo.y)}var Mv=!!(!wi&&so.verticalIconBox);so.iconBox&&Fn(D.iconCollisionBox.collisionVertexArray,cr.icon.placed,Mv,qt?Zo.x:0,qt?Zo.y:0),so.verticalIconBox&&Fn(D.iconCollisionBox.collisionVertexArray,cr.icon.placed,!Mv,qt?Zo.x:0,qt?Zo.y:0)}}},kt=0;kt<D.symbolInstances.length;kt++)at(kt);if(D.sortFeatures(this.transform.angle),this.retainedQueryData[D.bucketInstanceId]&&(this.retainedQueryData[D.bucketInstanceId].featureSortOrder=D.featureSortOrder),D.hasTextData()&&D.text.opacityVertexBuffer&&D.text.opacityVertexBuffer.updateData(D.text.opacityVertexArray),D.hasIconData()&&D.icon.opacityVertexBuffer&&D.icon.opacityVertexBuffer.updateData(D.icon.opacityVertexArray),D.hasIconCollisionBoxData()&&D.iconCollisionBox.collisionVertexBuffer&&D.iconCollisionBox.collisionVertexBuffer.updateData(D.iconCollisionBox.collisionVertexArray),D.hasTextCollisionBoxData()&&D.textCollisionBox.collisionVertexBuffer&&D.textCollisionBox.collisionVertexBuffer.updateData(D.textCollisionBox.collisionVertexArray),D.bucketInstanceId in this.collisionCircleArrays){var Ot=this.collisionCircleArrays[D.bucketInstanceId];D.placementInvProjMatrix=Ot.invProjMatrix,D.placementViewportMatrix=Ot.viewportMatrix,D.collisionCircleArray=Ot.circles,delete this.collisionCircleArrays[D.bucketInstanceId]}},ws.prototype.symbolFadeChange=function(D){return this.fadeDuration===0?1:(D-this.commitTime)/this.fadeDuration+this.prevZoomAdjustment},ws.prototype.zoomAdjustment=function(D){return Math.max(0,(this.transform.zoom-D)/1.5)},ws.prototype.hasTransitions=function(D){return this.stale||D-this.lastPlacementChangeTime<this.fadeDuration},ws.prototype.stillRecent=function(D,J){var q=this.zoomAtLastRecencyCheck===J?1-this.zoomAdjustment(J):1;return this.zoomAtLastRecencyCheck=J,this.commitTime+this.fadeDuration*q>D},ws.prototype.setStale=function(){this.stale=!0};function Fn(Y,D,J,q,K){Y.emplaceBack(D?1:0,J?1:0,q||0,K||0),Y.emplaceBack(D?1:0,J?1:0,q||0,K||0),Y.emplaceBack(D?1:0,J?1:0,q||0,K||0),Y.emplaceBack(D?1:0,J?1:0,q||0,K||0)}var _a=Math.pow(2,25),Vu=Math.pow(2,24),zl=Math.pow(2,17),xo=Math.pow(2,16),Yl=Math.pow(2,9),Us=Math.pow(2,8),Hl=Math.pow(2,1);function ac(Y){if(Y.opacity===0&&!Y.placed)return 0;if(Y.opacity===1&&Y.placed)return 4294967295;var D=Y.placed?1:0,J=Math.floor(Y.opacity*127);return J*_a+D*Vu+J*zl+D*xo+J*Yl+D*Us+J*Hl+D}var aa=0,Oo=function(D){this._sortAcrossTiles=D.layout.get("symbol-z-order")!=="viewport-y"&&D.layout.get("symbol-sort-key").constantOr(1)!==void 0,this._currentTileIndex=0,this._currentPartIndex=0,this._seenCrossTileIDs={},this._bucketParts=[]};Oo.prototype.continuePlacement=function(D,J,q,K,de){for(var ne=this._bucketParts;this._currentTileIndex<D.length;){var we=D[this._currentTileIndex];if(J.getBucketParts(ne,K,we,this._sortAcrossTiles),this._currentTileIndex++,de())return!0}for(this._sortAcrossTiles&&(this._sortAcrossTiles=!1,ne.sort(function(ft,Zt){return ft.sortKey-Zt.sortKey}));this._currentPartIndex<ne.length;){var Ue=ne[this._currentPartIndex];if(J.placeLayerBucketPart(Ue,this._seenCrossTileIDs,q),this._currentPartIndex++,de())return!0}return!1};var qo=function(D,J,q,K,de,ne,we){this.placement=new ws(D,de,ne,we),this._currentPlacementIndex=J.length-1,this._forceFullPlacement=q,this._showCollisionBoxes=K,this._done=!1};qo.prototype.isDone=function(){return this._done},qo.prototype.continuePlacement=function(D,J,q){for(var K=this,de=i.browser.now(),ne=function(){var hr=i.browser.now()-de;return K._forceFullPlacement?!1:hr>2};this._currentPlacementIndex>=0;){var we=D[this._currentPlacementIndex],Ue=J[we],ft=this.placement.collisionIndex.transform.zoom;if(Ue.type==="symbol"&&(!Ue.minzoom||Ue.minzoom<=ft)&&(!Ue.maxzoom||Ue.maxzoom>ft)){this._inProgressLayer||(this._inProgressLayer=new Oo(Ue));var Zt=this._inProgressLayer.continuePlacement(q[Ue.source],this.placement,this._showCollisionBoxes,Ue,ne);if(Zt)return;delete this._inProgressLayer}this._currentPlacementIndex--}this._done=!0},qo.prototype.commit=function(D){return this.placement.commit(D),this.placement};var Ol=512/i.EXTENT/2,Pc=function(D,J,q){this.tileID=D,this.indexedSymbolInstances={},this.bucketInstanceId=q;for(var K=0;K<J.length;K++){var de=J.get(K),ne=de.key;this.indexedSymbolInstances[ne]||(this.indexedSymbolInstances[ne]=[]),this.indexedSymbolInstances[ne].push({crossTileID:de.crossTileID,coord:this.getScaledCoordinates(de,D)})}};Pc.prototype.getScaledCoordinates=function(D,J){var q=J.canonical.z-this.tileID.canonical.z,K=Ol/Math.pow(2,q);return{x:Math.floor((J.canonical.x*i.EXTENT+D.anchorX)*K),y:Math.floor((J.canonical.y*i.EXTENT+D.anchorY)*K)}},Pc.prototype.findMatches=function(D,J,q){for(var K=this.tileID.canonical.z<J.canonical.z?1:Math.pow(2,this.tileID.canonical.z-J.canonical.z),de=0;de<D.length;de++){var ne=D.get(de);if(!ne.crossTileID){var we=this.indexedSymbolInstances[ne.key];if(we)for(var Ue=this.getScaledCoordinates(ne,J),ft=0,Zt=we;ft<Zt.length;ft+=1){var hr=Zt[ft];if(Math.abs(hr.coord.x-Ue.x)<=K&&Math.abs(hr.coord.y-Ue.y)<=K&&!q[hr.crossTileID]){q[hr.crossTileID]=!0,ne.crossTileID=hr.crossTileID;break}}}}};var Do=function(){this.maxCrossTileID=0};Do.prototype.generate=function(){return++this.maxCrossTileID};var rf=function(){this.indexes={},this.usedCrossTileIDs={},this.lng=0};rf.prototype.handleWrapJump=function(D){var J=Math.round((D-this.lng)/360);if(J!==0)for(var q in this.indexes){var K=this.indexes[q],de={};for(var ne in K){var we=K[ne];we.tileID=we.tileID.unwrapTo(we.tileID.wrap+J),de[we.tileID.key]=we}this.indexes[q]=de}this.lng=D},rf.prototype.addBucket=function(D,J,q){if(this.indexes[D.overscaledZ]&&this.indexes[D.overscaledZ][D.key]){if(this.indexes[D.overscaledZ][D.key].bucketInstanceId===J.bucketInstanceId)return!1;this.removeBucketCrossTileIDs(D.overscaledZ,this.indexes[D.overscaledZ][D.key])}for(var K=0;K<J.symbolInstances.length;K++){var de=J.symbolInstances.get(K);de.crossTileID=0}this.usedCrossTileIDs[D.overscaledZ]||(this.usedCrossTileIDs[D.overscaledZ]={});var ne=this.usedCrossTileIDs[D.overscaledZ];for(var we in this.indexes){var Ue=this.indexes[we];if(Number(we)>D.overscaledZ)for(var ft in Ue){var Zt=Ue[ft];Zt.tileID.isChildOf(D)&&Zt.findMatches(J.symbolInstances,D,ne)}else{var hr=D.scaledTo(Number(we)),qt=Ue[hr.key];qt&&qt.findMatches(J.symbolInstances,D,ne)}}for(var Ve=0;Ve<J.symbolInstances.length;Ve++){var et=J.symbolInstances.get(Ve);et.crossTileID||(et.crossTileID=q.generate(),ne[et.crossTileID]=!0)}return this.indexes[D.overscaledZ]===void 0&&(this.indexes[D.overscaledZ]={}),this.indexes[D.overscaledZ][D.key]=new Pc(D,J.symbolInstances,J.bucketInstanceId),!0},rf.prototype.removeBucketCrossTileIDs=function(D,J){for(var q in J.indexedSymbolInstances)for(var K=0,de=J.indexedSymbolInstances[q];K<de.length;K+=1){var ne=de[K];delete this.usedCrossTileIDs[D][ne.crossTileID]}},rf.prototype.removeStaleBuckets=function(D){var J=!1;for(var q in this.indexes){var K=this.indexes[q];for(var de in K)D[K[de].bucketInstanceId]||(this.removeBucketCrossTileIDs(q,K[de]),delete K[de],J=!0)}return J};var Uf=function(){this.layerIndexes={},this.crossTileIDs=new Do,this.maxBucketInstanceId=0,this.bucketsInCurrentPlacement={}};Uf.prototype.addLayer=function(D,J,q){var K=this.layerIndexes[D.id];K===void 0&&(K=this.layerIndexes[D.id]=new rf);var de=!1,ne={};K.handleWrapJump(q);for(var we=0,Ue=J;we<Ue.length;we+=1){var ft=Ue[we],Zt=ft.getBucket(D);!Zt||D.id!==Zt.layerIds[0]||(Zt.bucketInstanceId||(Zt.bucketInstanceId=++this.maxBucketInstanceId),K.addBucket(ft.tileID,Zt,this.crossTileIDs)&&(de=!0),ne[Zt.bucketInstanceId]=!0)}return K.removeStaleBuckets(ne)&&(de=!0),de},Uf.prototype.pruneUnusedLayers=function(D){var J={};D.forEach(function(K){J[K]=!0});for(var q in this.layerIndexes)J[q]||delete this.layerIndexes[q]};var ml=function(Y,D){return i.emitValidationErrors(Y,D&&D.filter(function(J){return J.identifier!=="source.canvas"}))},Zc=i.pick(da,["addLayer","removeLayer","setPaintProperty","setLayoutProperty","setFilter","addSource","removeSource","setLayerZoomRange","setLight","setTransition","setGeoJSONSourceData"]),Kl=i.pick(da,["setCenter","setZoom","setBearing","setPitch"]),qs=Wo(),yu=function(Y){function D(J,q){var K=this;q===void 0&&(q={}),Y.call(this),this.map=J,this.dispatcher=new Z(Ba(),this),this.imageManager=new C,this.imageManager.setEventedParent(this),this.glyphManager=new P(J._requestManager,q.localIdeographFontFamily),this.lineAtlas=new G(256,512),this.crossTileSymbolIndex=new Uf,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 de=this;this._rtlTextPluginCallback=D.registerForPluginStateChange(function(ne){var we={pluginStatus:ne.pluginStatus,pluginURL:ne.pluginURL};de.dispatcher.broadcast("syncRTLPluginState",we,function(Ue,ft){if(i.triggerPluginCompletionEvent(Ue),ft){var Zt=ft.every(function(qt){return qt});if(Zt)for(var hr in de.sourceCaches)de.sourceCaches[hr].reload()}})}),this.on("data",function(ne){if(!(ne.dataType!=="source"||ne.sourceDataType!=="metadata")){var we=K.sourceCaches[ne.sourceId];if(we){var Ue=we.getSource();if(!(!Ue||!Ue.vectorLayerIds))for(var ft in K._layers){var Zt=K._layers[ft];Zt.source===Ue.id&&K._validateLayer(Zt)}}}})}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.loadURL=function(q,K){var de=this;K===void 0&&(K={}),this.fire(new i.Event("dataloading",{dataType:"style"}));var ne=typeof K.validate=="boolean"?K.validate:!i.isMapboxURL(q);q=this.map._requestManager.normalizeStyleURL(q,K.accessToken);var we=this.map._requestManager.transformRequest(q,i.ResourceType.Style);this._request=i.getJSON(we,function(Ue,ft){de._request=null,Ue?de.fire(new i.ErrorEvent(Ue)):ft&&de._load(ft,ne)})},D.prototype.loadJSON=function(q,K){var de=this;K===void 0&&(K={}),this.fire(new i.Event("dataloading",{dataType:"style"})),this._request=i.browser.frame(function(){de._request=null,de._load(q,K.validate!==!1)})},D.prototype.loadEmpty=function(){this.fire(new i.Event("dataloading",{dataType:"style"})),this._load(qs,!1)},D.prototype._load=function(q,K){if(!(K&&ml(this,i.validateStyle(q)))){this._loaded=!0,this.stylesheet=q;for(var de in q.sources)this.addSource(de,q.sources[de],{validate:!1});q.sprite?this._loadSprite(q.sprite):this.imageManager.setLoaded(!0),this.glyphManager.setURL(q.glyphs);var ne=Fa(this.stylesheet.layers);this._order=ne.map(function(Zt){return Zt.id}),this._layers={},this._serializedLayers={};for(var we=0,Ue=ne;we<Ue.length;we+=1){var ft=Ue[we];ft=i.createStyleLayer(ft),ft.setEventedParent(this,{layer:{id:ft.id}}),this._layers[ft.id]=ft,this._serializedLayers[ft.id]=ft.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"))}},D.prototype._loadSprite=function(q){var K=this;this._spriteRequest=x(q,this.map._requestManager,function(de,ne){if(K._spriteRequest=null,de)K.fire(new i.ErrorEvent(de));else if(ne)for(var we in ne)K.imageManager.addImage(we,ne[we]);K.imageManager.setLoaded(!0),K._availableImages=K.imageManager.listImages(),K.dispatcher.broadcast("setImages",K._availableImages),K.fire(new i.Event("data",{dataType:"style"}))})},D.prototype._validateLayer=function(q){var K=this.sourceCaches[q.source];if(K){var de=q.sourceLayer;if(de){var ne=K.getSource();(ne.type==="geojson"||ne.vectorLayerIds&&ne.vectorLayerIds.indexOf(de)===-1)&&this.fire(new i.ErrorEvent(new Error('Source layer "'+de+'" does not exist on source "'+ne.id+'" as specified by style layer "'+q.id+'"')))}}},D.prototype.loaded=function(){if(!this._loaded||Object.keys(this._updatedSources).length)return!1;for(var q in this.sourceCaches)if(!this.sourceCaches[q].loaded())return!1;return!!this.imageManager.isLoaded()},D.prototype._serializeLayers=function(q){for(var K=[],de=0,ne=q;de<ne.length;de+=1){var we=ne[de],Ue=this._layers[we];Ue.type!=="custom"&&K.push(Ue.serialize())}return K},D.prototype.hasTransitions=function(){if(this.light&&this.light.hasTransition())return!0;for(var q in this.sourceCaches)if(this.sourceCaches[q].hasTransition())return!0;for(var K in this._layers)if(this._layers[K].hasTransition())return!0;return!1},D.prototype._checkLoaded=function(){if(!this._loaded)throw new Error("Style is not done loading")},D.prototype.update=function(q){if(this._loaded){var K=this._changed;if(this._changed){var de=Object.keys(this._updatedLayers),ne=Object.keys(this._removedLayers);(de.length||ne.length)&&this._updateWorkerLayers(de,ne);for(var we in this._updatedSources){var Ue=this._updatedSources[we];Ue==="reload"?this._reloadSource(we):Ue==="clear"&&this._clearSource(we)}this._updateTilesForChangedImages();for(var ft in this._updatedPaintProps)this._layers[ft].updateTransitions(q);this.light.updateTransitions(q),this._resetUpdates()}var Zt={};for(var hr in this.sourceCaches){var qt=this.sourceCaches[hr];Zt[hr]=qt.used,qt.used=!1}for(var Ve=0,et=this._order;Ve<et.length;Ve+=1){var at=et[Ve],kt=this._layers[at];kt.recalculate(q,this._availableImages),!kt.isHidden(q.zoom)&&kt.source&&(this.sourceCaches[kt.source].used=!0)}for(var Ot in Zt){var It=this.sourceCaches[Ot];Zt[Ot]!==It.used&&It.fire(new i.Event("data",{sourceDataType:"visibility",dataType:"source",sourceId:Ot}))}this.light.recalculate(q),this.z=q.zoom,K&&this.fire(new i.Event("data",{dataType:"style"}))}},D.prototype._updateTilesForChangedImages=function(){var q=Object.keys(this._changedImages);if(q.length){for(var K in this.sourceCaches)this.sourceCaches[K].reloadTilesForDependencies(["icons","patterns"],q);this._changedImages={}}},D.prototype._updateWorkerLayers=function(q,K){this.dispatcher.broadcast("updateLayers",{layers:this._serializeLayers(q),removedIds:K})},D.prototype._resetUpdates=function(){this._changed=!1,this._updatedLayers={},this._removedLayers={},this._updatedSources={},this._updatedPaintProps={},this._changedImages={}},D.prototype.setState=function(q){var K=this;if(this._checkLoaded(),ml(this,i.validateStyle(q)))return!1;q=i.clone$1(q),q.layers=Fa(q.layers);var de=Sn(this.serialize(),q).filter(function(we){return!(we.command in Kl)});if(de.length===0)return!1;var ne=de.filter(function(we){return!(we.command in Zc)});if(ne.length>0)throw new Error("Unimplemented: "+ne.map(function(we){return we.command}).join(", ")+".");return de.forEach(function(we){we.command!=="setTransition"&&K[we.command].apply(K,we.args)}),this.stylesheet=q,!0},D.prototype.addImage=function(q,K){if(this.getImage(q))return this.fire(new i.ErrorEvent(new Error("An image with this name already exists.")));this.imageManager.addImage(q,K),this._afterImageUpdated(q)},D.prototype.updateImage=function(q,K){this.imageManager.updateImage(q,K)},D.prototype.getImage=function(q){return this.imageManager.getImage(q)},D.prototype.removeImage=function(q){if(!this.getImage(q))return this.fire(new i.ErrorEvent(new Error("No image with this name exists.")));this.imageManager.removeImage(q),this._afterImageUpdated(q)},D.prototype._afterImageUpdated=function(q){this._availableImages=this.imageManager.listImages(),this._changedImages[q]=!0,this._changed=!0,this.dispatcher.broadcast("setImages",this._availableImages),this.fire(new i.Event("data",{dataType:"style"}))},D.prototype.listImages=function(){return this._checkLoaded(),this.imageManager.listImages()},D.prototype.addSource=function(q,K,de){var ne=this;if(de===void 0&&(de={}),this._checkLoaded(),this.sourceCaches[q]!==void 0)throw new Error("There is already a source with this ID");if(!K.type)throw new Error("The type property must be defined, but only the following properties were given: "+Object.keys(K).join(", ")+".");var we=["vector","raster","geojson","video","image"],Ue=we.indexOf(K.type)>=0;if(!(Ue&&this._validate(i.validateStyle.source,"sources."+q,K,null,de))){this.map&&this.map._collectResourceTiming&&(K.collectResourceTiming=!0);var ft=this.sourceCaches[q]=new ri(q,K,this.dispatcher);ft.style=this,ft.setEventedParent(this,function(){return{isSourceLoaded:ne.loaded(),source:ft.serialize(),sourceId:q}}),ft.onAdd(this.map),this._changed=!0}},D.prototype.removeSource=function(q){if(this._checkLoaded(),this.sourceCaches[q]===void 0)throw new Error("There is no source with this ID");for(var K in this._layers)if(this._layers[K].source===q)return this.fire(new i.ErrorEvent(new Error('Source "'+q+'" cannot be removed while layer "'+K+'" is using it.')));var de=this.sourceCaches[q];delete this.sourceCaches[q],delete this._updatedSources[q],de.fire(new i.Event("data",{sourceDataType:"metadata",dataType:"source",sourceId:q})),de.setEventedParent(null),de.clearTiles(),de.onRemove&&de.onRemove(this.map),this._changed=!0},D.prototype.setGeoJSONSourceData=function(q,K){this._checkLoaded();var de=this.sourceCaches[q].getSource();de.setData(K),this._changed=!0},D.prototype.getSource=function(q){return this.sourceCaches[q]&&this.sourceCaches[q].getSource()},D.prototype.addLayer=function(q,K,de){de===void 0&&(de={}),this._checkLoaded();var ne=q.id;if(this.getLayer(ne)){this.fire(new i.ErrorEvent(new Error('Layer with id "'+ne+'" already exists on this map')));return}var we;if(q.type==="custom"){if(ml(this,i.validateCustomStyleLayer(q)))return;we=i.createStyleLayer(q)}else{if(typeof q.source=="object"&&(this.addSource(ne,q.source),q=i.clone$1(q),q=i.extend(q,{source:ne})),this._validate(i.validateStyle.layer,"layers."+ne,q,{arrayIndex:-1},de))return;we=i.createStyleLayer(q),this._validateLayer(we),we.setEventedParent(this,{layer:{id:ne}}),this._serializedLayers[we.id]=we.serialize()}var Ue=K?this._order.indexOf(K):this._order.length;if(K&&Ue===-1){this.fire(new i.ErrorEvent(new Error('Layer with id "'+K+'" does not exist on this map.')));return}if(this._order.splice(Ue,0,ne),this._layerOrderChanged=!0,this._layers[ne]=we,this._removedLayers[ne]&&we.source&&we.type!=="custom"){var ft=this._removedLayers[ne];delete this._removedLayers[ne],ft.type!==we.type?this._updatedSources[we.source]="clear":(this._updatedSources[we.source]="reload",this.sourceCaches[we.source].pause())}this._updateLayer(we),we.onAdd&&we.onAdd(this.map)},D.prototype.moveLayer=function(q,K){this._checkLoaded(),this._changed=!0;var de=this._layers[q];if(!de){this.fire(new i.ErrorEvent(new Error("The layer '"+q+"' does not exist in the map's style and cannot be moved.")));return}if(q!==K){var ne=this._order.indexOf(q);this._order.splice(ne,1);var we=K?this._order.indexOf(K):this._order.length;if(K&&we===-1){this.fire(new i.ErrorEvent(new Error('Layer with id "'+K+'" does not exist on this map.')));return}this._order.splice(we,0,q),this._layerOrderChanged=!0}},D.prototype.removeLayer=function(q){this._checkLoaded();var K=this._layers[q];if(!K){this.fire(new i.ErrorEvent(new Error("The layer '"+q+"' does not exist in the map's style and cannot be removed.")));return}K.setEventedParent(null);var de=this._order.indexOf(q);this._order.splice(de,1),this._layerOrderChanged=!0,this._changed=!0,this._removedLayers[q]=K,delete this._layers[q],delete this._serializedLayers[q],delete this._updatedLayers[q],delete this._updatedPaintProps[q],K.onRemove&&K.onRemove(this.map)},D.prototype.getLayer=function(q){return this._layers[q]},D.prototype.hasLayer=function(q){return q in this._layers},D.prototype.setLayerZoomRange=function(q,K,de){this._checkLoaded();var ne=this.getLayer(q);if(!ne){this.fire(new i.ErrorEvent(new Error("The layer '"+q+"' does not exist in the map's style and cannot have zoom extent.")));return}ne.minzoom===K&&ne.maxzoom===de||(K!=null&&(ne.minzoom=K),de!=null&&(ne.maxzoom=de),this._updateLayer(ne))},D.prototype.setFilter=function(q,K,de){de===void 0&&(de={}),this._checkLoaded();var ne=this.getLayer(q);if(!ne){this.fire(new i.ErrorEvent(new Error("The layer '"+q+"' does not exist in the map's style and cannot be filtered.")));return}if(!i.deepEqual(ne.filter,K)){if(K==null){ne.filter=void 0,this._updateLayer(ne);return}this._validate(i.validateStyle.filter,"layers."+ne.id+".filter",K,null,de)||(ne.filter=i.clone$1(K),this._updateLayer(ne))}},D.prototype.getFilter=function(q){return i.clone$1(this.getLayer(q).filter)},D.prototype.setLayoutProperty=function(q,K,de,ne){ne===void 0&&(ne={}),this._checkLoaded();var we=this.getLayer(q);if(!we){this.fire(new i.ErrorEvent(new Error("The layer '"+q+"' does not exist in the map's style and cannot be styled.")));return}i.deepEqual(we.getLayoutProperty(K),de)||(we.setLayoutProperty(K,de,ne),this._updateLayer(we))},D.prototype.getLayoutProperty=function(q,K){var de=this.getLayer(q);if(!de){this.fire(new i.ErrorEvent(new Error("The layer '"+q+"' does not exist in the map's style.")));return}return de.getLayoutProperty(K)},D.prototype.setPaintProperty=function(q,K,de,ne){ne===void 0&&(ne={}),this._checkLoaded();var we=this.getLayer(q);if(!we){this.fire(new i.ErrorEvent(new Error("The layer '"+q+"' does not exist in the map's style and cannot be styled.")));return}if(!i.deepEqual(we.getPaintProperty(K),de)){var Ue=we.setPaintProperty(K,de,ne);Ue&&this._updateLayer(we),this._changed=!0,this._updatedPaintProps[q]=!0}},D.prototype.getPaintProperty=function(q,K){return this.getLayer(q).getPaintProperty(K)},D.prototype.setFeatureState=function(q,K){this._checkLoaded();var de=q.source,ne=q.sourceLayer,we=this.sourceCaches[de];if(we===void 0){this.fire(new i.ErrorEvent(new Error("The source '"+de+"' does not exist in the map's style.")));return}var Ue=we.getSource().type;if(Ue==="geojson"&&ne){this.fire(new i.ErrorEvent(new Error("GeoJSON sources cannot have a sourceLayer parameter.")));return}if(Ue==="vector"&&!ne){this.fire(new i.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")));return}q.id===void 0&&this.fire(new i.ErrorEvent(new Error("The feature id parameter must be provided."))),we.setFeatureState(ne,q.id,K)},D.prototype.removeFeatureState=function(q,K){this._checkLoaded();var de=q.source,ne=this.sourceCaches[de];if(ne===void 0){this.fire(new i.ErrorEvent(new Error("The source '"+de+"' does not exist in the map's style.")));return}var we=ne.getSource().type,Ue=we==="vector"?q.sourceLayer:void 0;if(we==="vector"&&!Ue){this.fire(new i.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")));return}if(K&&typeof q.id!="string"&&typeof q.id!="number"){this.fire(new i.ErrorEvent(new Error("A feature id is required to remove its specific state property.")));return}ne.removeFeatureState(Ue,q.id,K)},D.prototype.getFeatureState=function(q){this._checkLoaded();var K=q.source,de=q.sourceLayer,ne=this.sourceCaches[K];if(ne===void 0){this.fire(new i.ErrorEvent(new Error("The source '"+K+"' does not exist in the map's style.")));return}var we=ne.getSource().type;if(we==="vector"&&!de){this.fire(new i.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")));return}return q.id===void 0&&this.fire(new i.ErrorEvent(new Error("The feature id parameter must be provided."))),ne.getFeatureState(de,q.id)},D.prototype.getTransition=function(){return i.extend({duration:300,delay:0},this.stylesheet&&this.stylesheet.transition)},D.prototype.serialize=function(){return i.filterObject({version:this.stylesheet.version,name:this.stylesheet.name,metadata:this.stylesheet.metadata,light:this.stylesheet.light,center:this.stylesheet.center,zoom:this.stylesheet.zoom,bearing:this.stylesheet.bearing,pitch:this.stylesheet.pitch,sprite:this.stylesheet.sprite,glyphs:this.stylesheet.glyphs,transition:this.stylesheet.transition,sources:i.mapObject(this.sourceCaches,function(q){return q.serialize()}),layers:this._serializeLayers(this._order)},function(q){return q!==void 0})},D.prototype._updateLayer=function(q){this._updatedLayers[q.id]=!0,q.source&&!this._updatedSources[q.source]&&this.sourceCaches[q.source].getSource().type!=="raster"&&(this._updatedSources[q.source]="reload",this.sourceCaches[q.source].pause()),this._changed=!0},D.prototype._flattenAndSortRenderedFeatures=function(q){for(var K=this,de=function(wi){return K._layers[wi].type==="fill-extrusion"},ne={},we=[],Ue=this._order.length-1;Ue>=0;Ue--){var ft=this._order[Ue];if(de(ft)){ne[ft]=Ue;for(var Zt=0,hr=q;Zt<hr.length;Zt+=1){var qt=hr[Zt],Ve=qt[ft];if(Ve)for(var et=0,at=Ve;et<at.length;et+=1){var kt=at[et];we.push(kt)}}}}we.sort(function(wi,gn){return gn.intersectionZ-wi.intersectionZ});for(var Ot=[],It=this._order.length-1;It>=0;It--){var Bt=this._order[It];if(de(Bt))for(var Rt=we.length-1;Rt>=0;Rt--){var mt=we[Rt].feature;if(ne[mt.layer.id]<It)break;Ot.push(mt),we.pop()}else for(var Pt=0,ht=q;Pt<ht.length;Pt+=1){var cr=ht[Pt],br=cr[Bt];if(br)for(var Nr=0,Ri=br;Nr<Ri.length;Nr+=1){var hi=Ri[Nr];Ot.push(hi.feature)}}}return Ot},D.prototype.queryRenderedFeatures=function(q,K,de){K&&K.filter&&this._validate(i.validateStyle.filter,"queryRenderedFeatures.filter",K.filter,null,K);var ne={};if(K&&K.layers){if(!Array.isArray(K.layers))return this.fire(new i.ErrorEvent(new Error("parameters.layers must be an Array."))),[];for(var we=0,Ue=K.layers;we<Ue.length;we+=1){var ft=Ue[we],Zt=this._layers[ft];if(!Zt)return this.fire(new i.ErrorEvent(new Error("The layer '"+ft+"' does not exist in the map's style and cannot be queried for features."))),[];ne[Zt.source]=!0}}var hr=[];K.availableImages=this._availableImages;for(var qt in this.sourceCaches)K.layers&&!ne[qt]||hr.push(ce(this.sourceCaches[qt],this._layers,this._serializedLayers,q,K,de));return this.placement&&hr.push(Ze(this._layers,this._serializedLayers,this.sourceCaches,q,K,this.placement.collisionIndex,this.placement.retainedQueryData)),this._flattenAndSortRenderedFeatures(hr)},D.prototype.querySourceFeatures=function(q,K){K&&K.filter&&this._validate(i.validateStyle.filter,"querySourceFeatures.filter",K.filter,null,K);var de=this.sourceCaches[q];return de?ct(de,K):[]},D.prototype.addSourceType=function(q,K,de){if(D.getSourceType(q))return de(new Error('A source type called "'+q+'" already exists.'));if(D.setSourceType(q,K),!K.workerSourceURL)return de(null,null);this.dispatcher.broadcast("loadWorkerSource",{name:q,url:K.workerSourceURL},de)},D.prototype.getLight=function(){return this.light.getLight()},D.prototype.setLight=function(q,K){K===void 0&&(K={}),this._checkLoaded();var de=this.light.getLight(),ne=!1;for(var we in q)if(!i.deepEqual(q[we],de[we])){ne=!0;break}if(ne){var Ue={now:i.browser.now(),transition:i.extend({duration:300,delay:0},this.stylesheet.transition)};this.light.setLight(q,K),this.light.updateTransitions(Ue)}},D.prototype._validate=function(q,K,de,ne,we){return we===void 0&&(we={}),we&&we.validate===!1?!1:ml(this,q.call(i.validateStyle,i.extend({key:K,style:this.serialize(),value:de,styleSpec:i.styleSpec},ne)))},D.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 q in this._layers){var K=this._layers[q];K.setEventedParent(null)}for(var de in this.sourceCaches)this.sourceCaches[de].clearTiles(),this.sourceCaches[de].setEventedParent(null);this.imageManager.setEventedParent(null),this.setEventedParent(null),this.dispatcher.remove()},D.prototype._clearSource=function(q){this.sourceCaches[q].clearTiles()},D.prototype._reloadSource=function(q){this.sourceCaches[q].resume(),this.sourceCaches[q].reload()},D.prototype._updateSources=function(q){for(var K in this.sourceCaches)this.sourceCaches[K].update(q)},D.prototype._generateCollisionBoxes=function(){for(var q in this.sourceCaches)this._reloadSource(q)},D.prototype._updatePlacement=function(q,K,de,ne,we){we===void 0&&(we=!1);for(var Ue=!1,ft=!1,Zt={},hr=0,qt=this._order;hr<qt.length;hr+=1){var Ve=qt[hr],et=this._layers[Ve];if(et.type==="symbol"){if(!Zt[et.source]){var at=this.sourceCaches[et.source];Zt[et.source]=at.getRenderableIds(!0).map(function(Pt){return at.getTileByID(Pt)}).sort(function(Pt,ht){return ht.tileID.overscaledZ-Pt.tileID.overscaledZ||(Pt.tileID.isLessThan(ht.tileID)?-1:1)})}var kt=this.crossTileSymbolIndex.addLayer(et,Zt[et.source],q.center.lng);Ue=Ue||kt}}if(this.crossTileSymbolIndex.pruneUnusedLayers(this._order),we=we||this._layerOrderChanged||de===0,(we||!this.pauseablePlacement||this.pauseablePlacement.isDone()&&!this.placement.stillRecent(i.browser.now(),q.zoom))&&(this.pauseablePlacement=new qo(q,this._order,we,K,de,ne,this.placement),this._layerOrderChanged=!1),this.pauseablePlacement.isDone()?this.placement.setStale():(this.pauseablePlacement.continuePlacement(this._order,this._layers,Zt),this.pauseablePlacement.isDone()&&(this.placement=this.pauseablePlacement.commit(i.browser.now()),ft=!0),Ue&&this.pauseablePlacement.placement.setStale()),ft||Ue)for(var Ot=0,It=this._order;Ot<It.length;Ot+=1){var Bt=It[Ot],Rt=this._layers[Bt];Rt.type==="symbol"&&this.placement.updateLayerOpacities(Rt,Zt[Rt.source])}var mt=!this.pauseablePlacement.isDone()||this.placement.hasTransitions(i.browser.now());return mt},D.prototype._releaseSymbolFadeTiles=function(){for(var q in this.sourceCaches)this.sourceCaches[q].releaseSymbolFadeTiles()},D.prototype.getImages=function(q,K,de){this.imageManager.getImages(K.icons,de),this._updateTilesForChangedImages();var ne=this.sourceCaches[K.source];ne&&ne.setDependencies(K.tileID.key,K.type,K.icons)},D.prototype.getGlyphs=function(q,K,de){this.glyphManager.getGlyphs(K.stacks,de)},D.prototype.getResource=function(q,K,de){return i.makeRequest(K,de)},D}(i.Evented);yu.getSourceType=De,yu.setSourceType=Pe,yu.registerForPluginStateChange=i.registerForPluginStateChange;var oc=i.createLayout([{name:"a_pos",type:"Int16",components:2}]),Cf=`#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`,sc=`#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;}`,Nh=`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
|
||
}`,kf="attribute vec2 a_pos;uniform mat4 u_matrix;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);}",fs=`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
|
||
}`,nf="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);}",Vf=`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
|
||
}`,Jl=`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);}`,hl="void main() {gl_FragColor=vec4(1.0);}",lc="attribute vec2 a_pos;uniform mat4 u_matrix;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);}",Fu=`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
|
||
}`,Cs=`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;}`,js=`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
|
||
}`,Go="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;}",gs="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;}}",uc="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;}",xl="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;}",Gu="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);}",Bs="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);}",ad="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);}",Po=`#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);}`,Yo=`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
|
||
}`,Pa=`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;}`,af=`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
|
||
}`,Hu=`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;}`,bl=`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
|
||
}`,Gf=`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);}`,Ic=`varying vec4 v_color;void main() {gl_FragColor=v_color;
|
||
#ifdef OVERDRAW_INSPECTOR
|
||
gl_FragColor=vec4(1.0);
|
||
#endif
|
||
}`,mf=`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;}`,ql=`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
|
||
}`,_h=`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;}`,Qf=`#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
|
||
}`,yf="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;}",Yc=`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
|
||
}`,eh="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;}",th=`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);}`,Hf=`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
|
||
}`,cc=`
|
||
#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);}`,of=`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
|
||
}`,Bl=`
|
||
#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;}`,Kc=`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
|
||
}`,Rc=`
|
||
#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);}`,ms=`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
|
||
}`,jf="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;}",Uh=`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
|
||
}`,rh=`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));}`,sf=`#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
|
||
}`,xh=`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);}`,Mu=`#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
|
||
}`,ih=`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);}`,Ws=Vs(Cf,sc),Eu=Vs(Nh,kf),Dc=Vs(fs,nf),ks=Vs(Vf,Jl),bc=Vs(hl,lc),du=Vs(Fu,Cs),_u=Vs(js,Go),al=Vs(gs,uc),nh=Vs(xl,Gu),bh=Vs(Bs,ad),zu=Vs(Po,od),Fc=Vs(Yo,Pa),wc=Vs(af,Hu),bd=Vs(bl,Gf),_f=Vs(Ic,mf),Lf=Vs(ql,_h),Ou=Vs(Qf,yf),xf=Vs(Yc,eh),jl=Vs(th,ju),lf=Vs(Hf,cc),Vh=Vs(of,Bl),Pf=Vs(Kc,Rc),Ls=Vs(ms,jf),vu=Vs(Uh,rh),Cu=Vs(sf,xh),Wf=Vs(Mu,ih);function Vs(Y,D){var J=/#pragma mapbox: ([\w]+) ([\w]+) ([\w]+) ([\w]+)/g,q=D.match(/attribute ([\w]+) ([\w]+)/g),K=Y.match(/uniform ([\w]+) ([\w]+)([\s]*)([\w]*)/g),de=D.match(/uniform ([\w]+) ([\w]+)([\s]*)([\w]*)/g),ne=de?de.concat(K):K,we={};return Y=Y.replace(J,function(Ue,ft,Zt,hr,qt){return we[qt]=!0,ft==="define"?`
|
||
#ifndef HAS_UNIFORM_u_`+qt+`
|
||
varying `+Zt+" "+hr+" "+qt+`;
|
||
#else
|
||
uniform `+Zt+" "+hr+" u_"+qt+`;
|
||
#endif
|
||
`:`
|
||
#ifdef HAS_UNIFORM_u_`+qt+`
|
||
`+Zt+" "+hr+" "+qt+" = u_"+qt+`;
|
||
#endif
|
||
`}),D=D.replace(J,function(Ue,ft,Zt,hr,qt){var Ve=hr==="float"?"vec2":"vec4",et=qt.match(/color/)?"color":Ve;return we[qt]?ft==="define"?`
|
||
#ifndef HAS_UNIFORM_u_`+qt+`
|
||
uniform lowp float u_`+qt+`_t;
|
||
attribute `+Zt+" "+Ve+" a_"+qt+`;
|
||
varying `+Zt+" "+hr+" "+qt+`;
|
||
#else
|
||
uniform `+Zt+" "+hr+" u_"+qt+`;
|
||
#endif
|
||
`:et==="vec4"?`
|
||
#ifndef HAS_UNIFORM_u_`+qt+`
|
||
`+qt+" = a_"+qt+`;
|
||
#else
|
||
`+Zt+" "+hr+" "+qt+" = u_"+qt+`;
|
||
#endif
|
||
`:`
|
||
#ifndef HAS_UNIFORM_u_`+qt+`
|
||
`+qt+" = unpack_mix_"+et+"(a_"+qt+", u_"+qt+`_t);
|
||
#else
|
||
`+Zt+" "+hr+" "+qt+" = u_"+qt+`;
|
||
#endif
|
||
`:ft==="define"?`
|
||
#ifndef HAS_UNIFORM_u_`+qt+`
|
||
uniform lowp float u_`+qt+`_t;
|
||
attribute `+Zt+" "+Ve+" a_"+qt+`;
|
||
#else
|
||
uniform `+Zt+" "+hr+" u_"+qt+`;
|
||
#endif
|
||
`:et==="vec4"?`
|
||
#ifndef HAS_UNIFORM_u_`+qt+`
|
||
`+Zt+" "+hr+" "+qt+" = a_"+qt+`;
|
||
#else
|
||
`+Zt+" "+hr+" "+qt+" = u_"+qt+`;
|
||
#endif
|
||
`:`
|
||
#ifndef HAS_UNIFORM_u_`+qt+`
|
||
`+Zt+" "+hr+" "+qt+" = unpack_mix_"+et+"(a_"+qt+", u_"+qt+`_t);
|
||
#else
|
||
`+Zt+" "+hr+" "+qt+" = u_"+qt+`;
|
||
#endif
|
||
`}),{fragmentSource:Y,vertexSource:D,staticAttributes:q,staticUniforms:ne}}var bf=Object.freeze({__proto__:null,prelude:Ws,background:Eu,backgroundPattern:Dc,circle:ks,clippingMask:bc,heatmap:du,heatmapTexture:_u,collisionBox:al,collisionCircle:nh,debug:bh,fill:zu,fillOutline:Fc,fillOutlinePattern:wc,fillPattern:bd,fillExtrusion:_f,fillExtrusionPattern:Lf,hillshadePrepare:Ou,hillshade:xf,line:jl,lineGradient:lf,linePattern:Vh,lineSDF:Pf,raster:Ls,symbolIcon:vu,symbolSDF:Cu,symbolTextAndIcon:Wf}),zc=function(){this.boundProgram=null,this.boundLayoutVertexBuffer=null,this.boundPaintVertexBuffers=[],this.boundIndexBuffer=null,this.boundVertexOffset=null,this.boundDynamicVertexBuffer=null,this.vao=null};zc.prototype.bind=function(D,J,q,K,de,ne,we,Ue){this.context=D;for(var ft=this.boundPaintVertexBuffers.length!==K.length,Zt=0;!ft&&Zt<K.length;Zt++)this.boundPaintVertexBuffers[Zt]!==K[Zt]&&(ft=!0);var hr=!this.vao||this.boundProgram!==J||this.boundLayoutVertexBuffer!==q||ft||this.boundIndexBuffer!==de||this.boundVertexOffset!==ne||this.boundDynamicVertexBuffer!==we||this.boundDynamicVertexBuffer2!==Ue;!D.extVertexArrayObject||hr?this.freshBind(J,q,K,de,ne,we,Ue):(D.bindVertexArrayOES.set(this.vao),we&&we.bind(),de&&de.dynamicDraw&&de.bind(),Ue&&Ue.bind())},zc.prototype.freshBind=function(D,J,q,K,de,ne,we){var Ue,ft=D.numAttributes,Zt=this.context,hr=Zt.gl;if(Zt.extVertexArrayObject)this.vao&&this.destroy(),this.vao=Zt.extVertexArrayObject.createVertexArrayOES(),Zt.bindVertexArrayOES.set(this.vao),Ue=0,this.boundProgram=D,this.boundLayoutVertexBuffer=J,this.boundPaintVertexBuffers=q,this.boundIndexBuffer=K,this.boundVertexOffset=de,this.boundDynamicVertexBuffer=ne,this.boundDynamicVertexBuffer2=we;else{Ue=Zt.currentNumAttributes||0;for(var qt=ft;qt<Ue;qt++)hr.disableVertexAttribArray(qt)}J.enableAttributes(hr,D);for(var Ve=0,et=q;Ve<et.length;Ve+=1){var at=et[Ve];at.enableAttributes(hr,D)}ne&&ne.enableAttributes(hr,D),we&&we.enableAttributes(hr,D),J.bind(),J.setVertexAttribPointers(hr,D,de);for(var kt=0,Ot=q;kt<Ot.length;kt+=1){var It=Ot[kt];It.bind(),It.setVertexAttribPointers(hr,D,de)}ne&&(ne.bind(),ne.setVertexAttribPointers(hr,D,de)),K&&K.bind(),we&&(we.bind(),we.setVertexAttribPointers(hr,D,de)),Zt.currentNumAttributes=ft},zc.prototype.destroy=function(){this.vao&&(this.context.extVertexArrayObject.deleteVertexArrayOES(this.vao),this.vao=null)};function Wu(Y){for(var D=[],J=0;J<Y.length;J++)if(Y[J]!==null){var q=Y[J].split(" ");D.push(q.pop())}return D}var If=function(D,J,q,K,de,ne){var we=D.gl;this.program=we.createProgram();for(var Ue=Wu(q.staticAttributes),ft=K?K.getBinderAttributes():[],Zt=Ue.concat(ft),hr=q.staticUniforms?Wu(q.staticUniforms):[],qt=K?K.getBinderUniforms():[],Ve=hr.concat(qt),et=[],at=0,kt=Ve;at<kt.length;at+=1){var Ot=kt[at];et.indexOf(Ot)<0&&et.push(Ot)}var It=K?K.defines():[];ne&&It.push("#define OVERDRAW_INSPECTOR;");var Bt=It.concat(Ws.fragmentSource,q.fragmentSource).join(`
|
||
`),Rt=It.concat(Ws.vertexSource,q.vertexSource).join(`
|
||
`),mt=we.createShader(we.FRAGMENT_SHADER);if(we.isContextLost()){this.failedToCreate=!0;return}we.shaderSource(mt,Bt),we.compileShader(mt),we.attachShader(this.program,mt);var Pt=we.createShader(we.VERTEX_SHADER);if(we.isContextLost()){this.failedToCreate=!0;return}we.shaderSource(Pt,Rt),we.compileShader(Pt),we.attachShader(this.program,Pt),this.attributes={};var ht={};this.numAttributes=Zt.length;for(var cr=0;cr<this.numAttributes;cr++)Zt[cr]&&(we.bindAttribLocation(this.program,cr,Zt[cr]),this.attributes[Zt[cr]]=cr);we.linkProgram(this.program),we.deleteShader(Pt),we.deleteShader(mt);for(var br=0;br<et.length;br++){var Nr=et[br];if(Nr&&!ht[Nr]){var Ri=we.getUniformLocation(this.program,Nr);Ri&&(ht[Nr]=Ri)}}this.fixedUniforms=de(D,ht),this.binderUniforms=K?K.getUniforms(D,ht):[]};If.prototype.draw=function(D,J,q,K,de,ne,we,Ue,ft,Zt,hr,qt,Ve,et,at,kt){var Ot,It=D.gl;if(!this.failedToCreate){D.program.set(this.program),D.setDepthMode(q),D.setStencilMode(K),D.setColorMode(de),D.setCullFace(ne);for(var Bt in this.fixedUniforms)this.fixedUniforms[Bt].set(we[Bt]);et&&et.setUniforms(D,this.binderUniforms,qt,{zoom:Ve});for(var Rt=(Ot={},Ot[It.LINES]=2,Ot[It.TRIANGLES]=3,Ot[It.LINE_STRIP]=1,Ot)[J],mt=0,Pt=hr.get();mt<Pt.length;mt+=1){var ht=Pt[mt],cr=ht.vaos||(ht.vaos={}),br=cr[Ue]||(cr[Ue]=new zc);br.bind(D,this,ft,et?et.getPaintVertexBuffers():[],Zt,ht.vertexOffset,at,kt),It.drawElements(J,ht.primitiveLength*Rt,It.UNSIGNED_SHORT,ht.primitiveOffset*Rt*2)}}};function Xu(Y,D,J){var q=1/Ss(J,1,D.transform.tileZoom),K=Math.pow(2,J.tileID.overscaledZ),de=J.tileSize*Math.pow(2,D.transform.tileZoom)/K,ne=de*(J.tileID.canonical.x+J.tileID.wrap*K),we=de*J.tileID.canonical.y;return{u_image:0,u_texsize:J.imageAtlasTexture.size,u_scale:[q,Y.fromScale,Y.toScale],u_fade:Y.t,u_pixel_coord_upper:[ne>>16,we>>16],u_pixel_coord_lower:[ne&65535,we&65535]}}function uf(Y,D,J,q){var K=J.imageManager.getPattern(Y.from.toString()),de=J.imageManager.getPattern(Y.to.toString()),ne=J.imageManager.getPixelSize(),we=ne.width,Ue=ne.height,ft=Math.pow(2,q.tileID.overscaledZ),Zt=q.tileSize*Math.pow(2,J.transform.tileZoom)/ft,hr=Zt*(q.tileID.canonical.x+q.tileID.wrap*ft),qt=Zt*q.tileID.canonical.y;return{u_image:0,u_pattern_tl_a:K.tl,u_pattern_br_a:K.br,u_pattern_tl_b:de.tl,u_pattern_br_b:de.br,u_texsize:[we,Ue],u_mix:D.t,u_pattern_size_a:K.displaySize,u_pattern_size_b:de.displaySize,u_scale_a:D.fromScale,u_scale_b:D.toScale,u_tile_units_to_pixels:1/Ss(q,1,J.transform.tileZoom),u_pixel_coord_upper:[hr>>16,qt>>16],u_pixel_coord_lower:[hr&65535,qt&65535]}}var Xf=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_lightpos:new i.Uniform3f(Y,D.u_lightpos),u_lightintensity:new i.Uniform1f(Y,D.u_lightintensity),u_lightcolor:new i.Uniform3f(Y,D.u_lightcolor),u_vertical_gradient:new i.Uniform1f(Y,D.u_vertical_gradient),u_opacity:new i.Uniform1f(Y,D.u_opacity)}},Wl=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_lightpos:new i.Uniform3f(Y,D.u_lightpos),u_lightintensity:new i.Uniform1f(Y,D.u_lightintensity),u_lightcolor:new i.Uniform3f(Y,D.u_lightcolor),u_vertical_gradient:new i.Uniform1f(Y,D.u_vertical_gradient),u_height_factor:new i.Uniform1f(Y,D.u_height_factor),u_image:new i.Uniform1i(Y,D.u_image),u_texsize:new i.Uniform2f(Y,D.u_texsize),u_pixel_coord_upper:new i.Uniform2f(Y,D.u_pixel_coord_upper),u_pixel_coord_lower:new i.Uniform2f(Y,D.u_pixel_coord_lower),u_scale:new i.Uniform3f(Y,D.u_scale),u_fade:new i.Uniform1f(Y,D.u_fade),u_opacity:new i.Uniform1f(Y,D.u_opacity)}},ah=function(Y,D,J,q){var K=D.style.light,de=K.properties.get("position"),ne=[de.x,de.y,de.z],we=i.create$1();K.properties.get("anchor")==="viewport"&&i.fromRotation(we,-D.transform.angle),i.transformMat3(ne,ne,we);var Ue=K.properties.get("color");return{u_matrix:Y,u_lightpos:ne,u_lightintensity:K.properties.get("intensity"),u_lightcolor:[Ue.r,Ue.g,Ue.b],u_vertical_gradient:+J,u_opacity:q}},Zu=function(Y,D,J,q,K,de,ne){return i.extend(ah(Y,D,J,q),Xu(de,D,ne),{u_height_factor:-Math.pow(2,K.overscaledZ)/ne.tileSize/8})},Oc=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix)}},Tc=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_image:new i.Uniform1i(Y,D.u_image),u_texsize:new i.Uniform2f(Y,D.u_texsize),u_pixel_coord_upper:new i.Uniform2f(Y,D.u_pixel_coord_upper),u_pixel_coord_lower:new i.Uniform2f(Y,D.u_pixel_coord_lower),u_scale:new i.Uniform3f(Y,D.u_scale),u_fade:new i.Uniform1f(Y,D.u_fade)}},wl=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_world:new i.Uniform2f(Y,D.u_world)}},pu=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_world:new i.Uniform2f(Y,D.u_world),u_image:new i.Uniform1i(Y,D.u_image),u_texsize:new i.Uniform2f(Y,D.u_texsize),u_pixel_coord_upper:new i.Uniform2f(Y,D.u_pixel_coord_upper),u_pixel_coord_lower:new i.Uniform2f(Y,D.u_pixel_coord_lower),u_scale:new i.Uniform3f(Y,D.u_scale),u_fade:new i.Uniform1f(Y,D.u_fade)}},qc=function(Y){return{u_matrix:Y}},cf=function(Y,D,J,q){return i.extend(qc(Y),Xu(J,D,q))},fc=function(Y,D){return{u_matrix:Y,u_world:D}},Bc=function(Y,D,J,q,K){return i.extend(cf(Y,D,J,q),{u_world:K})},At=function(Y,D){return{u_camera_to_center_distance:new i.Uniform1f(Y,D.u_camera_to_center_distance),u_scale_with_map:new i.Uniform1i(Y,D.u_scale_with_map),u_pitch_with_map:new i.Uniform1i(Y,D.u_pitch_with_map),u_extrude_scale:new i.Uniform2f(Y,D.u_extrude_scale),u_device_pixel_ratio:new i.Uniform1f(Y,D.u_device_pixel_ratio),u_matrix:new i.UniformMatrix4f(Y,D.u_matrix)}},Xt=function(Y,D,J,q){var K=Y.transform,de,ne;if(q.paint.get("circle-pitch-alignment")==="map"){var we=Ss(J,1,K.zoom);de=!0,ne=[we,we]}else de=!1,ne=K.pixelsToGLUnits;return{u_camera_to_center_distance:K.cameraToCenterDistance,u_scale_with_map:+(q.paint.get("circle-pitch-scale")==="map"),u_matrix:Y.translatePosMatrix(D.posMatrix,J,q.paint.get("circle-translate"),q.paint.get("circle-translate-anchor")),u_pitch_with_map:+de,u_device_pixel_ratio:i.browser.devicePixelRatio,u_extrude_scale:ne}},kr=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_camera_to_center_distance:new i.Uniform1f(Y,D.u_camera_to_center_distance),u_pixels_to_tile_units:new i.Uniform1f(Y,D.u_pixels_to_tile_units),u_extrude_scale:new i.Uniform2f(Y,D.u_extrude_scale),u_overscale_factor:new i.Uniform1f(Y,D.u_overscale_factor)}},Ar=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_inv_matrix:new i.UniformMatrix4f(Y,D.u_inv_matrix),u_camera_to_center_distance:new i.Uniform1f(Y,D.u_camera_to_center_distance),u_viewport_size:new i.Uniform2f(Y,D.u_viewport_size)}},Kr=function(Y,D,J){var q=Ss(J,1,D.zoom),K=Math.pow(2,D.zoom-J.tileID.overscaledZ),de=J.tileID.overscaleFactor();return{u_matrix:Y,u_camera_to_center_distance:D.cameraToCenterDistance,u_pixels_to_tile_units:q,u_extrude_scale:[D.pixelsToGLUnits[0]/(q*K),D.pixelsToGLUnits[1]/(q*K)],u_overscale_factor:de}},Ei=function(Y,D,J){return{u_matrix:Y,u_inv_matrix:D,u_camera_to_center_distance:J.cameraToCenterDistance,u_viewport_size:[J.width,J.height]}},Wi=function(Y,D){return{u_color:new i.UniformColor(Y,D.u_color),u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_overlay:new i.Uniform1i(Y,D.u_overlay),u_overlay_scale:new i.Uniform1f(Y,D.u_overlay_scale)}},hn=function(Y,D,J){return J===void 0&&(J=1),{u_matrix:Y,u_color:D,u_overlay:0,u_overlay_scale:J}},Tn=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix)}},Bn=function(Y){return{u_matrix:Y}},Zi=function(Y,D){return{u_extrude_scale:new i.Uniform1f(Y,D.u_extrude_scale),u_intensity:new i.Uniform1f(Y,D.u_intensity),u_matrix:new i.UniformMatrix4f(Y,D.u_matrix)}},$i=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_world:new i.Uniform2f(Y,D.u_world),u_image:new i.Uniform1i(Y,D.u_image),u_color_ramp:new i.Uniform1i(Y,D.u_color_ramp),u_opacity:new i.Uniform1f(Y,D.u_opacity)}},an=function(Y,D,J,q){return{u_matrix:Y,u_extrude_scale:Ss(D,1,J),u_intensity:q}},Di=function(Y,D,J,q){var K=i.create();i.ortho(K,0,Y.width,Y.height,0,0,1);var de=Y.context.gl;return{u_matrix:K,u_world:[de.drawingBufferWidth,de.drawingBufferHeight],u_image:J,u_color_ramp:q,u_opacity:D.paint.get("heatmap-opacity")}},$n=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_image:new i.Uniform1i(Y,D.u_image),u_latrange:new i.Uniform2f(Y,D.u_latrange),u_light:new i.Uniform2f(Y,D.u_light),u_shadow:new i.UniformColor(Y,D.u_shadow),u_highlight:new i.UniformColor(Y,D.u_highlight),u_accent:new i.UniformColor(Y,D.u_accent)}},ka=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_image:new i.Uniform1i(Y,D.u_image),u_dimension:new i.Uniform2f(Y,D.u_dimension),u_zoom:new i.Uniform1f(Y,D.u_zoom),u_unpack:new i.Uniform4f(Y,D.u_unpack)}},Ra=function(Y,D,J){var q=J.paint.get("hillshade-shadow-color"),K=J.paint.get("hillshade-highlight-color"),de=J.paint.get("hillshade-accent-color"),ne=J.paint.get("hillshade-illumination-direction")*(Math.PI/180);J.paint.get("hillshade-illumination-anchor")==="viewport"&&(ne-=Y.transform.angle);var we=!Y.options.moving;return{u_matrix:Y.transform.calculatePosMatrix(D.tileID.toUnwrapped(),we),u_image:0,u_latrange:Na(Y,D.tileID),u_light:[J.paint.get("hillshade-exaggeration"),ne],u_shadow:q,u_highlight:K,u_accent:de}},La=function(Y,D){var J=D.stride,q=i.create();return i.ortho(q,0,i.EXTENT,-i.EXTENT,0,0,1),i.translate(q,q,[0,-i.EXTENT,0]),{u_matrix:q,u_image:1,u_dimension:[J,J],u_zoom:Y.overscaledZ,u_unpack:D.getUnpackVector()}};function Na(Y,D){var J=Math.pow(2,D.canonical.z),q=D.canonical.y;return[new i.MercatorCoordinate(0,q/J).toLngLat().lat,new i.MercatorCoordinate(0,(q+1)/J).toLngLat().lat]}var Yn=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_ratio:new i.Uniform1f(Y,D.u_ratio),u_device_pixel_ratio:new i.Uniform1f(Y,D.u_device_pixel_ratio),u_units_to_pixels:new i.Uniform2f(Y,D.u_units_to_pixels)}},zn=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_ratio:new i.Uniform1f(Y,D.u_ratio),u_device_pixel_ratio:new i.Uniform1f(Y,D.u_device_pixel_ratio),u_units_to_pixels:new i.Uniform2f(Y,D.u_units_to_pixels),u_image:new i.Uniform1i(Y,D.u_image),u_image_height:new i.Uniform1f(Y,D.u_image_height)}},Ka=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_texsize:new i.Uniform2f(Y,D.u_texsize),u_ratio:new i.Uniform1f(Y,D.u_ratio),u_device_pixel_ratio:new i.Uniform1f(Y,D.u_device_pixel_ratio),u_image:new i.Uniform1i(Y,D.u_image),u_units_to_pixels:new i.Uniform2f(Y,D.u_units_to_pixels),u_scale:new i.Uniform3f(Y,D.u_scale),u_fade:new i.Uniform1f(Y,D.u_fade)}},bo=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_ratio:new i.Uniform1f(Y,D.u_ratio),u_device_pixel_ratio:new i.Uniform1f(Y,D.u_device_pixel_ratio),u_units_to_pixels:new i.Uniform2f(Y,D.u_units_to_pixels),u_patternscale_a:new i.Uniform2f(Y,D.u_patternscale_a),u_patternscale_b:new i.Uniform2f(Y,D.u_patternscale_b),u_sdfgamma:new i.Uniform1f(Y,D.u_sdfgamma),u_image:new i.Uniform1i(Y,D.u_image),u_tex_y_a:new i.Uniform1f(Y,D.u_tex_y_a),u_tex_y_b:new i.Uniform1f(Y,D.u_tex_y_b),u_mix:new i.Uniform1f(Y,D.u_mix)}},Xo=function(Y,D,J){var q=Y.transform;return{u_matrix:yl(Y,D,J),u_ratio:1/Ss(D,1,q.zoom),u_device_pixel_ratio:i.browser.devicePixelRatio,u_units_to_pixels:[1/q.pixelsToGLUnits[0],1/q.pixelsToGLUnits[1]]}},Ms=function(Y,D,J,q){return i.extend(Xo(Y,D,J),{u_image:0,u_image_height:q})},os=function(Y,D,J,q){var K=Y.transform,de=Ho(D,K);return{u_matrix:yl(Y,D,J),u_texsize:D.imageAtlasTexture.size,u_ratio:1/Ss(D,1,K.zoom),u_device_pixel_ratio:i.browser.devicePixelRatio,u_image:0,u_scale:[de,q.fromScale,q.toScale],u_fade:q.t,u_units_to_pixels:[1/K.pixelsToGLUnits[0],1/K.pixelsToGLUnits[1]]}},Ts=function(Y,D,J,q,K){var de=Y.transform,ne=Y.lineAtlas,we=Ho(D,de),Ue=J.layout.get("line-cap")==="round",ft=ne.getDash(q.from,Ue),Zt=ne.getDash(q.to,Ue),hr=ft.width*K.fromScale,qt=Zt.width*K.toScale;return i.extend(Xo(Y,D,J),{u_patternscale_a:[we/hr,-ft.height/2],u_patternscale_b:[we/qt,-Zt.height/2],u_sdfgamma:ne.width/(Math.min(hr,qt)*256*i.browser.devicePixelRatio)/2,u_image:0,u_tex_y_a:ft.y,u_tex_y_b:Zt.y,u_mix:K.t})};function Ho(Y,D){return 1/Ss(Y,1,D.tileZoom)}function yl(Y,D,J){return Y.translatePosMatrix(D.tileID.posMatrix,D,J.paint.get("line-translate"),J.paint.get("line-translate-anchor"))}var Xs=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_tl_parent:new i.Uniform2f(Y,D.u_tl_parent),u_scale_parent:new i.Uniform1f(Y,D.u_scale_parent),u_buffer_scale:new i.Uniform1f(Y,D.u_buffer_scale),u_fade_t:new i.Uniform1f(Y,D.u_fade_t),u_opacity:new i.Uniform1f(Y,D.u_opacity),u_image0:new i.Uniform1i(Y,D.u_image0),u_image1:new i.Uniform1i(Y,D.u_image1),u_brightness_low:new i.Uniform1f(Y,D.u_brightness_low),u_brightness_high:new i.Uniform1f(Y,D.u_brightness_high),u_saturation_factor:new i.Uniform1f(Y,D.u_saturation_factor),u_contrast_factor:new i.Uniform1f(Y,D.u_contrast_factor),u_spin_weights:new i.Uniform3f(Y,D.u_spin_weights)}},Ps=function(Y,D,J,q,K){return{u_matrix:Y,u_tl_parent:D,u_scale_parent:J,u_buffer_scale:1,u_fade_t:q.mix,u_opacity:q.opacity*K.paint.get("raster-opacity"),u_image0:0,u_image1:1,u_brightness_low:K.paint.get("raster-brightness-min"),u_brightness_high:K.paint.get("raster-brightness-max"),u_saturation_factor:_s(K.paint.get("raster-saturation")),u_contrast_factor:no(K.paint.get("raster-contrast")),u_spin_weights:va(K.paint.get("raster-hue-rotate"))}};function va(Y){Y*=Math.PI/180;var D=Math.sin(Y),J=Math.cos(Y);return[(2*J+1)/3,(-Math.sqrt(3)*D-J+1)/3,(Math.sqrt(3)*D-J+1)/3]}function no(Y){return Y>0?1/(1-Y):1+Y}function _s(Y){return Y>0?1-1/(1.001-Y):-Y}var is=function(Y,D){return{u_is_size_zoom_constant:new i.Uniform1i(Y,D.u_is_size_zoom_constant),u_is_size_feature_constant:new i.Uniform1i(Y,D.u_is_size_feature_constant),u_size_t:new i.Uniform1f(Y,D.u_size_t),u_size:new i.Uniform1f(Y,D.u_size),u_camera_to_center_distance:new i.Uniform1f(Y,D.u_camera_to_center_distance),u_pitch:new i.Uniform1f(Y,D.u_pitch),u_rotate_symbol:new i.Uniform1i(Y,D.u_rotate_symbol),u_aspect_ratio:new i.Uniform1f(Y,D.u_aspect_ratio),u_fade_change:new i.Uniform1f(Y,D.u_fade_change),u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_label_plane_matrix:new i.UniformMatrix4f(Y,D.u_label_plane_matrix),u_coord_matrix:new i.UniformMatrix4f(Y,D.u_coord_matrix),u_is_text:new i.Uniform1i(Y,D.u_is_text),u_pitch_with_map:new i.Uniform1i(Y,D.u_pitch_with_map),u_texsize:new i.Uniform2f(Y,D.u_texsize),u_texture:new i.Uniform1i(Y,D.u_texture)}},$l=function(Y,D){return{u_is_size_zoom_constant:new i.Uniform1i(Y,D.u_is_size_zoom_constant),u_is_size_feature_constant:new i.Uniform1i(Y,D.u_is_size_feature_constant),u_size_t:new i.Uniform1f(Y,D.u_size_t),u_size:new i.Uniform1f(Y,D.u_size),u_camera_to_center_distance:new i.Uniform1f(Y,D.u_camera_to_center_distance),u_pitch:new i.Uniform1f(Y,D.u_pitch),u_rotate_symbol:new i.Uniform1i(Y,D.u_rotate_symbol),u_aspect_ratio:new i.Uniform1f(Y,D.u_aspect_ratio),u_fade_change:new i.Uniform1f(Y,D.u_fade_change),u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_label_plane_matrix:new i.UniformMatrix4f(Y,D.u_label_plane_matrix),u_coord_matrix:new i.UniformMatrix4f(Y,D.u_coord_matrix),u_is_text:new i.Uniform1i(Y,D.u_is_text),u_pitch_with_map:new i.Uniform1i(Y,D.u_pitch_with_map),u_texsize:new i.Uniform2f(Y,D.u_texsize),u_texture:new i.Uniform1i(Y,D.u_texture),u_gamma_scale:new i.Uniform1f(Y,D.u_gamma_scale),u_device_pixel_ratio:new i.Uniform1f(Y,D.u_device_pixel_ratio),u_is_halo:new i.Uniform1i(Y,D.u_is_halo)}},ku=function(Y,D){return{u_is_size_zoom_constant:new i.Uniform1i(Y,D.u_is_size_zoom_constant),u_is_size_feature_constant:new i.Uniform1i(Y,D.u_is_size_feature_constant),u_size_t:new i.Uniform1f(Y,D.u_size_t),u_size:new i.Uniform1f(Y,D.u_size),u_camera_to_center_distance:new i.Uniform1f(Y,D.u_camera_to_center_distance),u_pitch:new i.Uniform1f(Y,D.u_pitch),u_rotate_symbol:new i.Uniform1i(Y,D.u_rotate_symbol),u_aspect_ratio:new i.Uniform1f(Y,D.u_aspect_ratio),u_fade_change:new i.Uniform1f(Y,D.u_fade_change),u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_label_plane_matrix:new i.UniformMatrix4f(Y,D.u_label_plane_matrix),u_coord_matrix:new i.UniformMatrix4f(Y,D.u_coord_matrix),u_is_text:new i.Uniform1i(Y,D.u_is_text),u_pitch_with_map:new i.Uniform1i(Y,D.u_pitch_with_map),u_texsize:new i.Uniform2f(Y,D.u_texsize),u_texsize_icon:new i.Uniform2f(Y,D.u_texsize_icon),u_texture:new i.Uniform1i(Y,D.u_texture),u_texture_icon:new i.Uniform1i(Y,D.u_texture_icon),u_gamma_scale:new i.Uniform1f(Y,D.u_gamma_scale),u_device_pixel_ratio:new i.Uniform1f(Y,D.u_device_pixel_ratio),u_is_halo:new i.Uniform1i(Y,D.u_is_halo)}},Yu=function(Y,D,J,q,K,de,ne,we,Ue,ft){var Zt=K.transform;return{u_is_size_zoom_constant:+(Y==="constant"||Y==="source"),u_is_size_feature_constant:+(Y==="constant"||Y==="camera"),u_size_t:D?D.uSizeT:0,u_size:D?D.uSize:0,u_camera_to_center_distance:Zt.cameraToCenterDistance,u_pitch:Zt.pitch/360*2*Math.PI,u_rotate_symbol:+J,u_aspect_ratio:Zt.width/Zt.height,u_fade_change:K.options.fadeDuration?K.symbolFadeChange:1,u_matrix:de,u_label_plane_matrix:ne,u_coord_matrix:we,u_is_text:+Ue,u_pitch_with_map:+q,u_texsize:ft,u_texture:0}},Nc=function(Y,D,J,q,K,de,ne,we,Ue,ft,Zt){var hr=K.transform;return i.extend(Yu(Y,D,J,q,K,de,ne,we,Ue,ft),{u_gamma_scale:q?Math.cos(hr._pitch)*hr.cameraToCenterDistance:1,u_device_pixel_ratio:i.browser.devicePixelRatio,u_is_halo:+Zt})},gu=function(Y,D,J,q,K,de,ne,we,Ue,ft){return i.extend(Nc(Y,D,J,q,K,de,ne,we,!0,Ue,!0),{u_texsize_icon:ft,u_texture_icon:1})},Uc=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_opacity:new i.Uniform1f(Y,D.u_opacity),u_color:new i.UniformColor(Y,D.u_color)}},xu=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_opacity:new i.Uniform1f(Y,D.u_opacity),u_image:new i.Uniform1i(Y,D.u_image),u_pattern_tl_a:new i.Uniform2f(Y,D.u_pattern_tl_a),u_pattern_br_a:new i.Uniform2f(Y,D.u_pattern_br_a),u_pattern_tl_b:new i.Uniform2f(Y,D.u_pattern_tl_b),u_pattern_br_b:new i.Uniform2f(Y,D.u_pattern_br_b),u_texsize:new i.Uniform2f(Y,D.u_texsize),u_mix:new i.Uniform1f(Y,D.u_mix),u_pattern_size_a:new i.Uniform2f(Y,D.u_pattern_size_a),u_pattern_size_b:new i.Uniform2f(Y,D.u_pattern_size_b),u_scale_a:new i.Uniform1f(Y,D.u_scale_a),u_scale_b:new i.Uniform1f(Y,D.u_scale_b),u_pixel_coord_upper:new i.Uniform2f(Y,D.u_pixel_coord_upper),u_pixel_coord_lower:new i.Uniform2f(Y,D.u_pixel_coord_lower),u_tile_units_to_pixels:new i.Uniform1f(Y,D.u_tile_units_to_pixels)}},Ac=function(Y,D,J){return{u_matrix:Y,u_opacity:D,u_color:J}},Ua=function(Y,D,J,q,K,de){return i.extend(uf(q,de,J,K),{u_matrix:Y,u_opacity:D})},oo={fillExtrusion:Xf,fillExtrusionPattern:Wl,fill:Oc,fillPattern:Tc,fillOutline:wl,fillOutlinePattern:pu,circle:At,collisionBox:kr,collisionCircle:Ar,debug:Wi,clippingMask:Tn,heatmap:Zi,heatmapTexture:$i,hillshade:$n,hillshadePrepare:ka,line:Yn,lineGradient:zn,linePattern:Ka,lineSDF:bo,raster:Xs,symbolIcon:is,symbolSDF:$l,symbolTextAndIcon:ku,background:Uc,backgroundPattern:xu},Vc;function hc(Y,D,J,q,K,de,ne){for(var we=Y.context,Ue=we.gl,ft=Y.useProgram("collisionBox"),Zt=[],hr=0,qt=0,Ve=0;Ve<q.length;Ve++){var et=q[Ve],at=D.getTile(et),kt=at.getBucket(J);if(kt){var Ot=et.posMatrix;(K[0]!==0||K[1]!==0)&&(Ot=Y.translatePosMatrix(et.posMatrix,at,K,de));var It=ne?kt.textCollisionBox:kt.iconCollisionBox,Bt=kt.collisionCircleArray;if(Bt.length>0){var Rt=i.create(),mt=Ot;i.mul(Rt,kt.placementInvProjMatrix,Y.transform.glCoordMatrix),i.mul(Rt,Rt,kt.placementViewportMatrix),Zt.push({circleArray:Bt,circleOffset:qt,transform:mt,invTransform:Rt}),hr+=Bt.length/4,qt=hr}It&&ft.draw(we,Ue.LINES,wn.disabled,kn.disabled,Y.colorModeForRenderPass(),Er.disabled,Kr(Ot,Y.transform,at),J.id,It.layoutVertexBuffer,It.indexBuffer,It.segments,null,Y.transform.zoom,null,null,It.collisionVertexBuffer)}}if(!(!ne||!Zt.length)){var Pt=Y.useProgram("collisionCircle"),ht=new i.StructArrayLayout2f1f2i16;ht.resize(hr*4),ht._trim();for(var cr=0,br=0,Nr=Zt;br<Nr.length;br+=1)for(var Ri=Nr[br],hi=0;hi<Ri.circleArray.length/4;hi++){var wi=hi*4,gn=Ri.circleArray[wi+0],tn=Ri.circleArray[wi+1],Ci=Ri.circleArray[wi+2],qi=Ri.circleArray[wi+3];ht.emplace(cr++,gn,tn,Ci,qi,0),ht.emplace(cr++,gn,tn,Ci,qi,1),ht.emplace(cr++,gn,tn,Ci,qi,2),ht.emplace(cr++,gn,tn,Ci,qi,3)}(!Vc||Vc.length<hr*2)&&(Vc=Ku(hr));for(var Vi=we.createIndexBuffer(Vc,!0),on=we.createVertexBuffer(ht,i.collisionCircleLayout.members,!0),On=0,Ja=Zt;On<Ja.length;On+=1){var co=Ja[On],rs=Ei(co.transform,co.invTransform,Y.transform);Pt.draw(we,Ue.TRIANGLES,wn.disabled,kn.disabled,Y.colorModeForRenderPass(),Er.disabled,rs,J.id,on,Vi,i.SegmentVector.simpleSegment(0,co.circleOffset*2,co.circleArray.length,co.circleArray.length/2),null,Y.transform.zoom,null,null,null)}on.destroy(),Vi.destroy()}}function Ku(Y){var D=Y*2,J=new i.StructArrayLayout3ui6;J.resize(D),J._trim();for(var q=0;q<D;q++){var K=q*6;J.uint16[K+0]=q*4+0,J.uint16[K+1]=q*4+1,J.uint16[K+2]=q*4+2,J.uint16[K+3]=q*4+2,J.uint16[K+4]=q*4+3,J.uint16[K+5]=q*4+0}return J}var ue=i.identity(new Float32Array(16));function w(Y,D,J,q,K){if(Y.renderPass==="translucent"){var de=kn.disabled,ne=Y.colorModeForRenderPass(),we=J.layout.get("text-variable-anchor");we&&Q(q,Y,J,D,J.layout.get("text-rotation-alignment"),J.layout.get("text-pitch-alignment"),K),J.paint.get("icon-opacity").constantOr(1)!==0&&qe(Y,D,J,q,!1,J.paint.get("icon-translate"),J.paint.get("icon-translate-anchor"),J.layout.get("icon-rotation-alignment"),J.layout.get("icon-pitch-alignment"),J.layout.get("icon-keep-upright"),de,ne),J.paint.get("text-opacity").constantOr(1)!==0&&qe(Y,D,J,q,!0,J.paint.get("text-translate"),J.paint.get("text-translate-anchor"),J.layout.get("text-rotation-alignment"),J.layout.get("text-pitch-alignment"),J.layout.get("text-keep-upright"),de,ne),D.map.showCollisionBoxes&&(hc(Y,D,J,q,J.paint.get("text-translate"),J.paint.get("text-translate-anchor"),!0),hc(Y,D,J,q,J.paint.get("icon-translate"),J.paint.get("icon-translate-anchor"),!1))}}function B(Y,D,J,q,K,de){var ne=i.getAnchorAlignment(Y),we=ne.horizontalAlign,Ue=ne.verticalAlign,ft=-(we-.5)*D,Zt=-(Ue-.5)*J,hr=i.evaluateVariableOffset(Y,q);return new i.Point((ft/K+hr[0])*de,(Zt/K+hr[1])*de)}function Q(Y,D,J,q,K,de,ne){for(var we=D.transform,Ue=K==="map",ft=de==="map",Zt=0,hr=Y;Zt<hr.length;Zt+=1){var qt=hr[Zt],Ve=q.getTile(qt),et=Ve.getBucket(J);if(!(!et||!et.text||!et.text.segments.get().length)){var at=et.textSizeData,kt=i.evaluateSizeForZoom(at,we.zoom),Ot=Ss(Ve,1,D.transform.zoom),It=_n(qt.posMatrix,ft,Ue,D.transform,Ot),Bt=J.layout.get("icon-text-fit")!=="none"&&et.hasIconData();if(kt){var Rt=Math.pow(2,we.zoom-Ve.tileID.overscaledZ);ee(et,Ue,ft,ne,i.symbolSize,we,It,qt.posMatrix,Rt,kt,Bt)}}}}function ee(Y,D,J,q,K,de,ne,we,Ue,ft,Zt){var hr=Y.text.placedSymbolArray,qt=Y.text.dynamicLayoutVertexArray,Ve=Y.icon.dynamicLayoutVertexArray,et={};qt.clear();for(var at=0;at<hr.length;at++){var kt=hr.get(at),Ot=Y.allowVerticalPlacement&&!kt.placedOrientation,It=!kt.hidden&&kt.crossTileID&&!Ot?q[kt.crossTileID]:null;if(!It)cl(kt.numGlyphs,qt);else{var Bt=new i.Point(kt.anchorX,kt.anchorY),Rt=Jn(Bt,J?we:ne),mt=Ma(de.cameraToCenterDistance,Rt.signedDistanceFromCamera),Pt=K.evaluateSizeForFeature(Y.textSizeData,ft,kt)*mt/i.ONE_EM;J&&(Pt*=Y.tilePixelRatio/Ue);for(var ht=It.width,cr=It.height,br=It.anchor,Nr=It.textOffset,Ri=It.textBoxScale,hi=B(br,ht,cr,Nr,Ri,Pt),wi=J?Jn(Bt.add(hi),ne).point:Rt.point.add(D?hi.rotate(-de.angle):hi),gn=Y.allowVerticalPlacement&&kt.placedOrientation===i.WritingMode.vertical?Math.PI/2:0,tn=0;tn<kt.numGlyphs;tn++)i.addDynamicAttributes(qt,wi,gn);Zt&&kt.associatedIconIndex>=0&&(et[kt.associatedIconIndex]={shiftedAnchor:wi,angle:gn})}}if(Zt){Ve.clear();for(var Ci=Y.icon.placedSymbolArray,qi=0;qi<Ci.length;qi++){var Vi=Ci.get(qi);if(Vi.hidden)cl(Vi.numGlyphs,Ve);else{var on=et[qi];if(!on)cl(Vi.numGlyphs,Ve);else for(var On=0;On<Vi.numGlyphs;On++)i.addDynamicAttributes(Ve,on.shiftedAnchor,on.angle)}}Y.icon.dynamicLayoutVertexBuffer.updateData(Ve)}Y.text.dynamicLayoutVertexBuffer.updateData(qt)}function le(Y,D,J){return J.iconsInText&&D?"symbolTextAndIcon":Y?"symbolSDF":"symbolIcon"}function qe(Y,D,J,q,K,de,ne,we,Ue,ft,Zt,hr){for(var qt=Y.context,Ve=qt.gl,et=Y.transform,at=we==="map",kt=Ue==="map",Ot=at&&J.layout.get("symbol-placement")!=="point",It=at&&!kt&&!Ot,Bt=J.layout.get("symbol-sort-key").constantOr(1)!==void 0,Rt=!1,mt=Y.depthModeForSublayer(0,wn.ReadOnly),Pt=J.layout.get("text-variable-anchor"),ht=[],cr=0,br=q;cr<br.length;cr+=1){var Nr=br[cr],Ri=D.getTile(Nr),hi=Ri.getBucket(J);if(hi){var wi=K?hi.text:hi.icon;if(!(!wi||!wi.segments.get().length)){var gn=wi.programConfigurations.get(J.id),tn=K||hi.sdfIcons,Ci=K?hi.textSizeData:hi.iconSizeData,qi=kt||et.pitch!==0,Vi=Y.useProgram(le(tn,K,hi),gn),on=i.evaluateSizeForZoom(Ci,et.zoom),On=void 0,Ja=[0,0],co=void 0,rs=void 0,so=null,Zo=void 0;if(K){if(co=Ri.glyphAtlasTexture,rs=Ve.LINEAR,On=Ri.glyphAtlasTexture.size,hi.iconsInText){Ja=Ri.imageAtlasTexture.size,so=Ri.imageAtlasTexture;var ys=Ci.kind==="composite"||Ci.kind==="camera";Zo=qi||Y.options.rotating||Y.options.zooming||ys?Ve.LINEAR:Ve.NEAREST}}else{var su=J.layout.get("icon-size").constantOr(0)!==1||hi.iconsNeedLinear;co=Ri.imageAtlasTexture,rs=tn||Y.options.rotating||Y.options.zooming||su||qi?Ve.LINEAR:Ve.NEAREST,On=Ri.imageAtlasTexture.size}var Mv=Ss(Ri,1,Y.transform.zoom),Ev=_n(Nr.posMatrix,kt,at,Y.transform,Mv),wd=ya(Nr.posMatrix,kt,at,Y.transform,Mv),Yv=Pt&&hi.hasTextData(),cg=J.layout.get("icon-text-fit")!=="none"&&Yv&&hi.hasIconData();Ot&&No(hi,Nr.posMatrix,Y,K,Ev,wd,kt,ft);var dp=Y.translatePosMatrix(Nr.posMatrix,Ri,de,ne),Td=Ot||K&&Pt||cg?ue:Ev,vp=Y.translatePosMatrix(wd,Ri,de,ne,!0),Vd=tn&&J.paint.get(K?"text-halo-width":"icon-halo-width").constantOr(1)!==0,Ad=void 0;tn?hi.iconsInText?Ad=gu(Ci.kind,on,It,kt,Y,dp,Td,vp,On,Ja):Ad=Nc(Ci.kind,on,It,kt,Y,dp,Td,vp,K,On,!0):Ad=Yu(Ci.kind,on,It,kt,Y,dp,Td,vp,K,On);var Cv={program:Vi,buffers:wi,uniformValues:Ad,atlasTexture:co,atlasTextureIcon:so,atlasInterpolation:rs,atlasInterpolationIcon:Zo,isSDF:tn,hasHalo:Vd};if(Bt&&hi.canOverlap){Rt=!0;for(var Kv=wi.segments.get(),kv=0,ny=Kv;kv<ny.length;kv+=1){var fg=ny[kv];ht.push({segments:new i.SegmentVector([fg]),sortKey:fg.sortKey,state:Cv})}}else ht.push({segments:wi.segments,sortKey:0,state:Cv})}}}Rt&&ht.sort(function(w1,T1){return w1.sortKey-T1.sortKey});for(var oh=0,hg=ht;oh<hg.length;oh+=1){var ay=hg[oh],Gh=ay.state;if(qt.activeTexture.set(Ve.TEXTURE0),Gh.atlasTexture.bind(Gh.atlasInterpolation,Ve.CLAMP_TO_EDGE),Gh.atlasTextureIcon&&(qt.activeTexture.set(Ve.TEXTURE1),Gh.atlasTextureIcon&&Gh.atlasTextureIcon.bind(Gh.atlasInterpolationIcon,Ve.CLAMP_TO_EDGE)),Gh.isSDF){var rm=Gh.uniformValues;Gh.hasHalo&&(rm.u_is_halo=1,Xe(Gh.buffers,ay.segments,J,Y,Gh.program,mt,Zt,hr,rm)),rm.u_is_halo=0}Xe(Gh.buffers,ay.segments,J,Y,Gh.program,mt,Zt,hr,Gh.uniformValues)}}function Xe(Y,D,J,q,K,de,ne,we,Ue){var ft=q.context,Zt=ft.gl;K.draw(ft,Zt.TRIANGLES,de,ne,we,Er.disabled,Ue,J.id,Y.layoutVertexBuffer,Y.indexBuffer,D,J.paint,q.transform.zoom,Y.programConfigurations.get(J.id),Y.dynamicLayoutVertexBuffer,Y.opacityVertexBuffer)}function ot(Y,D,J,q){if(Y.renderPass==="translucent"){var K=J.paint.get("circle-opacity"),de=J.paint.get("circle-stroke-width"),ne=J.paint.get("circle-stroke-opacity"),we=J.layout.get("circle-sort-key").constantOr(1)!==void 0;if(!(K.constantOr(1)===0&&(de.constantOr(1)===0||ne.constantOr(1)===0))){for(var Ue=Y.context,ft=Ue.gl,Zt=Y.depthModeForSublayer(0,wn.ReadOnly),hr=kn.disabled,qt=Y.colorModeForRenderPass(),Ve=[],et=0;et<q.length;et++){var at=q[et],kt=D.getTile(at),Ot=kt.getBucket(J);if(Ot){var It=Ot.programConfigurations.get(J.id),Bt=Y.useProgram("circle",It),Rt=Ot.layoutVertexBuffer,mt=Ot.indexBuffer,Pt=Xt(Y,at,kt,J),ht={programConfiguration:It,program:Bt,layoutVertexBuffer:Rt,indexBuffer:mt,uniformValues:Pt};if(we)for(var cr=Ot.segments.get(),br=0,Nr=cr;br<Nr.length;br+=1){var Ri=Nr[br];Ve.push({segments:new i.SegmentVector([Ri]),sortKey:Ri.sortKey,state:ht})}else Ve.push({segments:Ot.segments,sortKey:0,state:ht})}}we&&Ve.sort(function(co,rs){return co.sortKey-rs.sortKey});for(var hi=0,wi=Ve;hi<wi.length;hi+=1){var gn=wi[hi],tn=gn.state,Ci=tn.programConfiguration,qi=tn.program,Vi=tn.layoutVertexBuffer,on=tn.indexBuffer,On=tn.uniformValues,Ja=gn.segments;qi.draw(Ue,ft.TRIANGLES,Zt,hr,qt,Er.disabled,On,J.id,Vi,on,Ja,J.paint,Y.transform.zoom,Ci)}}}}function Tt(Y,D,J,q){if(J.paint.get("heatmap-opacity")!==0)if(Y.renderPass==="offscreen"){var K=Y.context,de=K.gl,ne=kn.disabled,we=new _t([de.ONE,de.ONE],i.Color.transparent,[!0,!0,!0,!0]);Kt(K,Y,J),K.clear({color:i.Color.transparent});for(var Ue=0;Ue<q.length;Ue++){var ft=q[Ue];if(!D.hasRenderableParent(ft)){var Zt=D.getTile(ft),hr=Zt.getBucket(J);if(hr){var qt=hr.programConfigurations.get(J.id),Ve=Y.useProgram("heatmap",qt),et=Y.transform,at=et.zoom;Ve.draw(K,de.TRIANGLES,wn.disabled,ne,we,Er.disabled,an(ft.posMatrix,Zt,at,J.paint.get("heatmap-intensity")),J.id,hr.layoutVertexBuffer,hr.indexBuffer,hr.segments,J.paint,Y.transform.zoom,qt)}}}K.viewport.set([0,0,Y.width,Y.height])}else Y.renderPass==="translucent"&&(Y.context.setColorMode(Y.colorModeForRenderPass()),xr(Y,J))}function Kt(Y,D,J){var q=Y.gl;Y.activeTexture.set(q.TEXTURE1),Y.viewport.set([0,0,D.width/4,D.height/4]);var K=J.heatmapFbo;if(K)q.bindTexture(q.TEXTURE_2D,K.colorAttachment.get()),Y.bindFramebuffer.set(K.framebuffer);else{var de=q.createTexture();q.bindTexture(q.TEXTURE_2D,de),q.texParameteri(q.TEXTURE_2D,q.TEXTURE_WRAP_S,q.CLAMP_TO_EDGE),q.texParameteri(q.TEXTURE_2D,q.TEXTURE_WRAP_T,q.CLAMP_TO_EDGE),q.texParameteri(q.TEXTURE_2D,q.TEXTURE_MIN_FILTER,q.LINEAR),q.texParameteri(q.TEXTURE_2D,q.TEXTURE_MAG_FILTER,q.LINEAR),K=J.heatmapFbo=Y.createFramebuffer(D.width/4,D.height/4,!1),Jt(Y,D,de,K)}}function Jt(Y,D,J,q){var K=Y.gl,de=Y.extRenderToTextureHalfFloat?Y.extTextureHalfFloat.HALF_FLOAT_OES:K.UNSIGNED_BYTE;K.texImage2D(K.TEXTURE_2D,0,K.RGBA,D.width/4,D.height/4,0,K.RGBA,de,null),q.colorAttachment.set(J)}function xr(Y,D){var J=Y.context,q=J.gl,K=D.heatmapFbo;if(K){J.activeTexture.set(q.TEXTURE0),q.bindTexture(q.TEXTURE_2D,K.colorAttachment.get()),J.activeTexture.set(q.TEXTURE1);var de=D.colorRampTexture;de||(de=D.colorRampTexture=new i.Texture(J,D.colorRamp,q.RGBA)),de.bind(q.LINEAR,q.CLAMP_TO_EDGE),Y.useProgram("heatmapTexture").draw(J,q.TRIANGLES,wn.disabled,kn.disabled,Y.colorModeForRenderPass(),Er.disabled,Di(Y,D,0,1),D.id,Y.viewportBuffer,Y.quadTriangleIndexBuffer,Y.viewportSegments,D.paint,Y.transform.zoom)}}function Pr(Y,D,J,q){if(Y.renderPass==="translucent"){var K=J.paint.get("line-opacity"),de=J.paint.get("line-width");if(!(K.constantOr(1)===0||de.constantOr(1)===0))for(var ne=Y.depthModeForSublayer(0,wn.ReadOnly),we=Y.colorModeForRenderPass(),Ue=J.paint.get("line-dasharray"),ft=J.paint.get("line-pattern"),Zt=ft.constantOr(1),hr=J.paint.get("line-gradient"),qt=J.getCrossfadeParameters(),Ve=Zt?"linePattern":Ue?"lineSDF":hr?"lineGradient":"line",et=Y.context,at=et.gl,kt=!0,Ot=0,It=q;Ot<It.length;Ot+=1){var Bt=It[Ot],Rt=D.getTile(Bt);if(!(Zt&&!Rt.patternsLoaded())){var mt=Rt.getBucket(J);if(mt){var Pt=mt.programConfigurations.get(J.id),ht=Y.context.program.get(),cr=Y.useProgram(Ve,Pt),br=kt||cr.program!==ht,Nr=ft.constantOr(null);if(Nr&&Rt.imageAtlas){var Ri=Rt.imageAtlas,hi=Ri.patternPositions[Nr.to.toString()],wi=Ri.patternPositions[Nr.from.toString()];hi&&wi&&Pt.setConstantPatternPositions(hi,wi)}var gn=Zt?os(Y,Rt,J,qt):Ue?Ts(Y,Rt,J,Ue,qt):hr?Ms(Y,Rt,J,mt.lineClipsArray.length):Xo(Y,Rt,J);if(Zt)et.activeTexture.set(at.TEXTURE0),Rt.imageAtlasTexture.bind(at.LINEAR,at.CLAMP_TO_EDGE),Pt.updatePaintBuffers(qt);else if(Ue&&(br||Y.lineAtlas.dirty))et.activeTexture.set(at.TEXTURE0),Y.lineAtlas.bind(et);else if(hr){var tn=mt.gradients[J.id],Ci=tn.texture;if(J.gradientVersion!==tn.version){var qi=256;if(J.stepInterpolant){var Vi=D.getSource().maxzoom,on=Bt.canonical.z===Vi?Math.ceil(1<<Y.transform.maxZoom-Bt.canonical.z):1,On=mt.maxLineLength/i.EXTENT,Ja=1024,co=On*Ja*on;qi=i.clamp(i.nextPowerOfTwo(co),256,et.maxTextureSize)}tn.gradient=i.renderColorRamp({expression:J.gradientExpression(),evaluationKey:"lineProgress",resolution:qi,image:tn.gradient||void 0,clips:mt.lineClipsArray}),tn.texture?tn.texture.update(tn.gradient):tn.texture=new i.Texture(et,tn.gradient,at.RGBA),tn.version=J.gradientVersion,Ci=tn.texture}et.activeTexture.set(at.TEXTURE0),Ci.bind(J.stepInterpolant?at.NEAREST:at.LINEAR,at.CLAMP_TO_EDGE)}cr.draw(et,at.TRIANGLES,ne,Y.stencilModeForClipping(Bt),we,Er.disabled,gn,J.id,mt.layoutVertexBuffer,mt.indexBuffer,mt.segments,J.paint,Y.transform.zoom,Pt,mt.layoutVertexBuffer2),kt=!1}}}}}function ve(Y,D,J,q){var K=J.paint.get("fill-color"),de=J.paint.get("fill-opacity");if(de.constantOr(1)!==0){var ne=Y.colorModeForRenderPass(),we=J.paint.get("fill-pattern"),Ue=Y.opaquePassEnabledForLayer()&&!we.constantOr(1)&&K.constantOr(i.Color.transparent).a===1&&de.constantOr(0)===1?"opaque":"translucent";if(Y.renderPass===Ue){var ft=Y.depthModeForSublayer(1,Y.renderPass==="opaque"?wn.ReadWrite:wn.ReadOnly);be(Y,D,J,q,ft,ne,!1)}if(Y.renderPass==="translucent"&&J.paint.get("fill-antialias")){var Zt=Y.depthModeForSublayer(J.getPaintProperty("fill-outline-color")?2:0,wn.ReadOnly);be(Y,D,J,q,Zt,ne,!0)}}}function be(Y,D,J,q,K,de,ne){var we=Y.context.gl,Ue=J.paint.get("fill-pattern"),ft=Ue&&Ue.constantOr(1),Zt=J.getCrossfadeParameters(),hr,qt,Ve,et,at;ne?(qt=ft&&!J.getPaintProperty("fill-outline-color")?"fillOutlinePattern":"fillOutline",hr=we.LINES):(qt=ft?"fillPattern":"fill",hr=we.TRIANGLES);for(var kt=0,Ot=q;kt<Ot.length;kt+=1){var It=Ot[kt],Bt=D.getTile(It);if(!(ft&&!Bt.patternsLoaded())){var Rt=Bt.getBucket(J);if(Rt){var mt=Rt.programConfigurations.get(J.id),Pt=Y.useProgram(qt,mt);ft&&(Y.context.activeTexture.set(we.TEXTURE0),Bt.imageAtlasTexture.bind(we.LINEAR,we.CLAMP_TO_EDGE),mt.updatePaintBuffers(Zt));var ht=Ue.constantOr(null);if(ht&&Bt.imageAtlas){var cr=Bt.imageAtlas,br=cr.patternPositions[ht.to.toString()],Nr=cr.patternPositions[ht.from.toString()];br&&Nr&&mt.setConstantPatternPositions(br,Nr)}var Ri=Y.translatePosMatrix(It.posMatrix,Bt,J.paint.get("fill-translate"),J.paint.get("fill-translate-anchor"));if(!ne)et=Rt.indexBuffer,at=Rt.segments,Ve=ft?cf(Ri,Y,Zt,Bt):qc(Ri);else{et=Rt.indexBuffer2,at=Rt.segments2;var hi=[we.drawingBufferWidth,we.drawingBufferHeight];Ve=qt==="fillOutlinePattern"&&ft?Bc(Ri,Y,Zt,Bt,hi):fc(Ri,hi)}Pt.draw(Y.context,hr,K,Y.stencilModeForClipping(It),de,Er.disabled,Ve,J.id,Rt.layoutVertexBuffer,et,at,J.paint,Y.transform.zoom,mt)}}}}function Re(Y,D,J,q){var K=J.paint.get("fill-extrusion-opacity");if(K!==0&&Y.renderPass==="translucent"){var de=new wn(Y.context.gl.LEQUAL,wn.ReadWrite,Y.depthRangeFor3D);if(K===1&&!J.paint.get("fill-extrusion-pattern").constantOr(1)){var ne=Y.colorModeForRenderPass();Be(Y,D,J,q,de,kn.disabled,ne)}else Be(Y,D,J,q,de,kn.disabled,_t.disabled),Be(Y,D,J,q,de,Y.stencilModeFor3D(),Y.colorModeForRenderPass())}}function Be(Y,D,J,q,K,de,ne){for(var we=Y.context,Ue=we.gl,ft=J.paint.get("fill-extrusion-pattern"),Zt=ft.constantOr(1),hr=J.getCrossfadeParameters(),qt=J.paint.get("fill-extrusion-opacity"),Ve=0,et=q;Ve<et.length;Ve+=1){var at=et[Ve],kt=D.getTile(at),Ot=kt.getBucket(J);if(Ot){var It=Ot.programConfigurations.get(J.id),Bt=Y.useProgram(Zt?"fillExtrusionPattern":"fillExtrusion",It);Zt&&(Y.context.activeTexture.set(Ue.TEXTURE0),kt.imageAtlasTexture.bind(Ue.LINEAR,Ue.CLAMP_TO_EDGE),It.updatePaintBuffers(hr));var Rt=ft.constantOr(null);if(Rt&&kt.imageAtlas){var mt=kt.imageAtlas,Pt=mt.patternPositions[Rt.to.toString()],ht=mt.patternPositions[Rt.from.toString()];Pt&&ht&&It.setConstantPatternPositions(Pt,ht)}var cr=Y.translatePosMatrix(at.posMatrix,kt,J.paint.get("fill-extrusion-translate"),J.paint.get("fill-extrusion-translate-anchor")),br=J.paint.get("fill-extrusion-vertical-gradient"),Nr=Zt?Zu(cr,Y,br,qt,at,hr,kt):ah(cr,Y,br,qt);Bt.draw(we,we.gl.TRIANGLES,K,de,ne,Er.backCCW,Nr,J.id,Ot.layoutVertexBuffer,Ot.indexBuffer,Ot.segments,J.paint,Y.transform.zoom,It)}}}function tt(Y,D,J,q){if(!(Y.renderPass!=="offscreen"&&Y.renderPass!=="translucent")){for(var K=Y.context,de=Y.depthModeForSublayer(0,wn.ReadOnly),ne=Y.colorModeForRenderPass(),we=Y.renderPass==="translucent"?Y.stencilConfigForOverlap(q):[{},q],Ue=we[0],ft=we[1],Zt=0,hr=ft;Zt<hr.length;Zt+=1){var qt=hr[Zt],Ve=D.getTile(qt);Ve.needsHillshadePrepare&&Y.renderPass==="offscreen"?it(Y,Ve,J,de,kn.disabled,ne):Y.renderPass==="translucent"&&We(Y,Ve,J,de,Ue[qt.overscaledZ],ne)}K.viewport.set([0,0,Y.width,Y.height])}}function We(Y,D,J,q,K,de){var ne=Y.context,we=ne.gl,Ue=D.fbo;if(Ue){var ft=Y.useProgram("hillshade");ne.activeTexture.set(we.TEXTURE0),we.bindTexture(we.TEXTURE_2D,Ue.colorAttachment.get());var Zt=Ra(Y,D,J);ft.draw(ne,we.TRIANGLES,q,K,de,Er.disabled,Zt,J.id,Y.rasterBoundsBuffer,Y.quadTriangleIndexBuffer,Y.rasterBoundsSegments)}}function it(Y,D,J,q,K,de){var ne=Y.context,we=ne.gl,Ue=D.dem;if(Ue&&Ue.data){var ft=Ue.dim,Zt=Ue.stride,hr=Ue.getPixels();if(ne.activeTexture.set(we.TEXTURE1),ne.pixelStoreUnpackPremultiplyAlpha.set(!1),D.demTexture=D.demTexture||Y.getTileTexture(Zt),D.demTexture){var qt=D.demTexture;qt.update(hr,{premultiply:!1}),qt.bind(we.NEAREST,we.CLAMP_TO_EDGE)}else D.demTexture=new i.Texture(ne,hr,we.RGBA,{premultiply:!1}),D.demTexture.bind(we.NEAREST,we.CLAMP_TO_EDGE);ne.activeTexture.set(we.TEXTURE0);var Ve=D.fbo;if(!Ve){var et=new i.Texture(ne,{width:ft,height:ft,data:null},we.RGBA);et.bind(we.LINEAR,we.CLAMP_TO_EDGE),Ve=D.fbo=ne.createFramebuffer(ft,ft,!0),Ve.colorAttachment.set(et.texture)}ne.bindFramebuffer.set(Ve.framebuffer),ne.viewport.set([0,0,ft,ft]),Y.useProgram("hillshadePrepare").draw(ne,we.TRIANGLES,q,K,de,Er.disabled,La(D.tileID,Ue),J.id,Y.rasterBoundsBuffer,Y.quadTriangleIndexBuffer,Y.rasterBoundsSegments),D.needsHillshadePrepare=!1}}function Dt(Y,D,J,q){if(Y.renderPass==="translucent"&&J.paint.get("raster-opacity")!==0&&q.length)for(var K=Y.context,de=K.gl,ne=D.getSource(),we=Y.useProgram("raster"),Ue=Y.colorModeForRenderPass(),ft=ne instanceof ke?[{},q]:Y.stencilConfigForOverlap(q),Zt=ft[0],hr=ft[1],qt=hr[hr.length-1].overscaledZ,Ve=!Y.options.moving,et=0,at=hr;et<at.length;et+=1){var kt=at[et],Ot=Y.depthModeForSublayer(kt.overscaledZ-qt,J.paint.get("raster-opacity")===1?wn.ReadWrite:wn.ReadOnly,de.LESS),It=D.getTile(kt),Bt=Y.transform.calculatePosMatrix(kt.toUnwrapped(),Ve);It.registerFadeDuration(J.paint.get("raster-fade-duration"));var Rt=D.findLoadedParent(kt,0),mt=Ht(It,Rt,D,J,Y.transform),Pt=void 0,ht=void 0,cr=J.paint.get("raster-resampling")==="nearest"?de.NEAREST:de.LINEAR;K.activeTexture.set(de.TEXTURE0),It.texture.bind(cr,de.CLAMP_TO_EDGE,de.LINEAR_MIPMAP_NEAREST),K.activeTexture.set(de.TEXTURE1),Rt?(Rt.texture.bind(cr,de.CLAMP_TO_EDGE,de.LINEAR_MIPMAP_NEAREST),Pt=Math.pow(2,Rt.tileID.overscaledZ-It.tileID.overscaledZ),ht=[It.tileID.canonical.x*Pt%1,It.tileID.canonical.y*Pt%1]):It.texture.bind(cr,de.CLAMP_TO_EDGE,de.LINEAR_MIPMAP_NEAREST);var br=Ps(Bt,ht||[0,0],Pt||1,mt,J);ne instanceof ke?we.draw(K,de.TRIANGLES,Ot,kn.disabled,Ue,Er.disabled,br,J.id,ne.boundsBuffer,Y.quadTriangleIndexBuffer,ne.boundsSegments):we.draw(K,de.TRIANGLES,Ot,Zt[kt.overscaledZ],Ue,Er.disabled,br,J.id,Y.rasterBoundsBuffer,Y.quadTriangleIndexBuffer,Y.rasterBoundsSegments)}}function Ht(Y,D,J,q,K){var de=q.paint.get("raster-fade-duration");if(de>0){var ne=i.browser.now(),we=(ne-Y.timeAdded)/de,Ue=D?(ne-D.timeAdded)/de:-1,ft=J.getSource(),Zt=K.coveringZoomLevel({tileSize:ft.tileSize,roundZoom:ft.roundZoom}),hr=!D||Math.abs(D.tileID.overscaledZ-Zt)>Math.abs(Y.tileID.overscaledZ-Zt),qt=hr&&Y.refreshedUponExpiration?1:i.clamp(hr?we:1-Ue,0,1);return Y.refreshedUponExpiration&&we>=1&&(Y.refreshedUponExpiration=!1),D?{opacity:1,mix:1-qt}:{opacity:qt,mix:0}}else return{opacity:1,mix:0}}function rr(Y,D,J){var q=J.paint.get("background-color"),K=J.paint.get("background-opacity");if(K!==0){var de=Y.context,ne=de.gl,we=Y.transform,Ue=we.tileSize,ft=J.paint.get("background-pattern");if(!Y.isPatternMissing(ft)){var Zt=!ft&&q.a===1&&K===1&&Y.opaquePassEnabledForLayer()?"opaque":"translucent";if(Y.renderPass===Zt){var hr=kn.disabled,qt=Y.depthModeForSublayer(0,Zt==="opaque"?wn.ReadWrite:wn.ReadOnly),Ve=Y.colorModeForRenderPass(),et=Y.useProgram(ft?"backgroundPattern":"background"),at=we.coveringTiles({tileSize:Ue});ft&&(de.activeTexture.set(ne.TEXTURE0),Y.imageManager.bind(Y.context));for(var kt=J.getCrossfadeParameters(),Ot=0,It=at;Ot<It.length;Ot+=1){var Bt=It[Ot],Rt=Y.transform.calculatePosMatrix(Bt.toUnwrapped()),mt=ft?Ua(Rt,K,Y,ft,{tileID:Bt,tileSize:Ue},kt):Ac(Rt,K,q);et.draw(de,ne.TRIANGLES,qt,hr,Ve,Er.disabled,mt,J.id,Y.tileExtentBuffer,Y.quadTriangleIndexBuffer,Y.tileExtentSegments)}}}}}var dr=new i.Color(1,0,0,1),Sr=new i.Color(0,1,0,1),Or=new i.Color(0,0,1,1),jr=new i.Color(1,0,1,1),ii=new i.Color(0,1,1,1);function Li(Y){var D=Y.transform.padding,J=3;sn(Y,Y.transform.height-(D.top||0),J,dr),sn(Y,D.bottom||0,J,Sr),In(Y,D.left||0,J,Or),In(Y,Y.transform.width-(D.right||0),J,jr);var q=Y.transform.centerPoint;un(Y,q.x,Y.transform.height-q.y,ii)}function un(Y,D,J,q){var K=20,de=2;Kn(Y,D-de/2,J-K/2,de,K,q),Kn(Y,D-K/2,J-de/2,K,de,q)}function sn(Y,D,J,q){Kn(Y,0,D+J/2,Y.transform.width,J,q)}function In(Y,D,J,q){Kn(Y,D-J/2,0,J,Y.transform.height,q)}function Kn(Y,D,J,q,K,de){var ne=Y.context,we=ne.gl;we.enable(we.SCISSOR_TEST),we.scissor(D*i.browser.devicePixelRatio,J*i.browser.devicePixelRatio,q*i.browser.devicePixelRatio,K*i.browser.devicePixelRatio),ne.clear({color:de}),we.disable(we.SCISSOR_TEST)}function Aa(Y,D,J){for(var q=0;q<J.length;q++)fa(Y,D,J[q])}function fa(Y,D,J){var q=Y.context,K=q.gl,de=J.posMatrix,ne=Y.useProgram("debug"),we=wn.disabled,Ue=kn.disabled,ft=Y.colorModeForRenderPass(),Zt="$debug";q.activeTexture.set(K.TEXTURE0),Y.emptyTexture.bind(K.LINEAR,K.CLAMP_TO_EDGE),ne.draw(q,K.LINE_STRIP,we,Ue,ft,Er.disabled,hn(de,i.Color.red),Zt,Y.debugBuffer,Y.tileBorderIndexBuffer,Y.debugSegments);var hr=D.getTileByID(J.key).latestRawTileData,qt=hr&&hr.byteLength||0,Ve=Math.floor(qt/1024),et=D.getTile(J).tileSize,at=512/Math.min(et,512)*(J.overscaledZ/Y.transform.zoom)*.5,kt=J.canonical.toString();J.overscaledZ!==J.canonical.z&&(kt+=" => "+J.overscaledZ);var Ot=kt+" "+Ve+"kb";$a(Y,Ot),ne.draw(q,K.TRIANGLES,we,Ue,_t.alphaBlended,Er.disabled,hn(de,i.Color.transparent,at),Zt,Y.debugBuffer,Y.quadTriangleIndexBuffer,Y.debugSegments)}function $a(Y,D){Y.initDebugOverlayCanvas();var J=Y.debugOverlayCanvas,q=Y.context.gl,K=Y.debugOverlayCanvas.getContext("2d");K.clearRect(0,0,J.width,J.height),K.shadowColor="white",K.shadowBlur=2,K.lineWidth=1.5,K.strokeStyle="white",K.textBaseline="top",K.font="bold 36px Open Sans, sans-serif",K.fillText(D,5,5),K.strokeText(D,5,5),Y.debugOverlayTexture.update(J),Y.debugOverlayTexture.bind(q.LINEAR,q.CLAMP_TO_EDGE)}function ko(Y,D,J){var q=Y.context,K=J.implementation;if(Y.renderPass==="offscreen"){var de=K.prerender;de&&(Y.setCustomLayerDefaults(),q.setColorMode(Y.colorModeForRenderPass()),de.call(K,q.gl,Y.transform.customLayerMatrix()),q.setDirty(),Y.setBaseState())}else if(Y.renderPass==="translucent"){Y.setCustomLayerDefaults(),q.setColorMode(Y.colorModeForRenderPass()),q.setStencilMode(kn.disabled);var ne=K.renderingMode==="3d"?new wn(Y.context.gl.LEQUAL,wn.ReadWrite,Y.depthRangeFor3D):Y.depthModeForSublayer(0,wn.ReadOnly);q.setDepthMode(ne),K.render(q.gl,Y.transform.customLayerMatrix()),q.setDirty(),Y.setBaseState(),q.bindFramebuffer.set(null)}}var Qa={symbol:w,circle:ot,heatmap:Tt,line:Pr,fill:ve,"fill-extrusion":Re,hillshade:tt,raster:Dt,background:rr,debug:Aa,custom:ko},mo=function(D,J){this.context=new Zr(D),this.transform=J,this._tileTextures={},this.setup(),this.numSublayers=ri.maxUnderzooming+ri.maxOverzooming+1,this.depthEpsilon=1/Math.pow(2,16),this.crossTileSymbolIndex=new Uf,this.gpuTimers={}};mo.prototype.resize=function(D,J){if(this.width=D*i.browser.devicePixelRatio,this.height=J*i.browser.devicePixelRatio,this.context.viewport.set([0,0,this.width,this.height]),this.style)for(var q=0,K=this.style._order;q<K.length;q+=1){var de=K[q];this.style._layers[de].resize()}},mo.prototype.setup=function(){var D=this.context,J=new i.StructArrayLayout2i4;J.emplaceBack(0,0),J.emplaceBack(i.EXTENT,0),J.emplaceBack(0,i.EXTENT),J.emplaceBack(i.EXTENT,i.EXTENT),this.tileExtentBuffer=D.createVertexBuffer(J,oc.members),this.tileExtentSegments=i.SegmentVector.simpleSegment(0,0,4,2);var q=new i.StructArrayLayout2i4;q.emplaceBack(0,0),q.emplaceBack(i.EXTENT,0),q.emplaceBack(0,i.EXTENT),q.emplaceBack(i.EXTENT,i.EXTENT),this.debugBuffer=D.createVertexBuffer(q,oc.members),this.debugSegments=i.SegmentVector.simpleSegment(0,0,4,5);var K=new i.StructArrayLayout4i8;K.emplaceBack(0,0,0,0),K.emplaceBack(i.EXTENT,0,i.EXTENT,0),K.emplaceBack(0,i.EXTENT,0,i.EXTENT),K.emplaceBack(i.EXTENT,i.EXTENT,i.EXTENT,i.EXTENT),this.rasterBoundsBuffer=D.createVertexBuffer(K,Me.members),this.rasterBoundsSegments=i.SegmentVector.simpleSegment(0,0,4,2);var de=new i.StructArrayLayout2i4;de.emplaceBack(0,0),de.emplaceBack(1,0),de.emplaceBack(0,1),de.emplaceBack(1,1),this.viewportBuffer=D.createVertexBuffer(de,oc.members),this.viewportSegments=i.SegmentVector.simpleSegment(0,0,4,2);var ne=new i.StructArrayLayout1ui2;ne.emplaceBack(0),ne.emplaceBack(1),ne.emplaceBack(3),ne.emplaceBack(2),ne.emplaceBack(0),this.tileBorderIndexBuffer=D.createIndexBuffer(ne);var we=new i.StructArrayLayout3ui6;we.emplaceBack(0,1,2),we.emplaceBack(2,1,3),this.quadTriangleIndexBuffer=D.createIndexBuffer(we),this.emptyTexture=new i.Texture(D,{width:1,height:1,data:new Uint8Array([0,0,0,0])},D.gl.RGBA);var Ue=this.context.gl;this.stencilClearMode=new kn({func:Ue.ALWAYS,mask:0},0,255,Ue.ZERO,Ue.ZERO,Ue.ZERO)},mo.prototype.clearStencil=function(){var D=this.context,J=D.gl;this.nextStencilID=1,this.currentStencilSource=void 0;var q=i.create();i.ortho(q,0,this.width,this.height,0,0,1),i.scale(q,q,[J.drawingBufferWidth,J.drawingBufferHeight,0]),this.useProgram("clippingMask").draw(D,J.TRIANGLES,wn.disabled,this.stencilClearMode,_t.disabled,Er.disabled,Bn(q),"$clipping",this.viewportBuffer,this.quadTriangleIndexBuffer,this.viewportSegments)},mo.prototype._renderTileClippingMasks=function(D,J){if(!(this.currentStencilSource===D.source||!D.isTileClipped()||!J||!J.length)){this.currentStencilSource=D.source;var q=this.context,K=q.gl;this.nextStencilID+J.length>256&&this.clearStencil(),q.setColorMode(_t.disabled),q.setDepthMode(wn.disabled);var de=this.useProgram("clippingMask");this._tileClippingMaskIDs={};for(var ne=0,we=J;ne<we.length;ne+=1){var Ue=we[ne],ft=this._tileClippingMaskIDs[Ue.key]=this.nextStencilID++;de.draw(q,K.TRIANGLES,wn.disabled,new kn({func:K.ALWAYS,mask:0},ft,255,K.KEEP,K.KEEP,K.REPLACE),_t.disabled,Er.disabled,Bn(Ue.posMatrix),"$clipping",this.tileExtentBuffer,this.quadTriangleIndexBuffer,this.tileExtentSegments)}}},mo.prototype.stencilModeFor3D=function(){this.currentStencilSource=void 0,this.nextStencilID+1>256&&this.clearStencil();var D=this.nextStencilID++,J=this.context.gl;return new kn({func:J.NOTEQUAL,mask:255},D,255,J.KEEP,J.KEEP,J.REPLACE)},mo.prototype.stencilModeForClipping=function(D){var J=this.context.gl;return new kn({func:J.EQUAL,mask:255},this._tileClippingMaskIDs[D.key],0,J.KEEP,J.KEEP,J.REPLACE)},mo.prototype.stencilConfigForOverlap=function(D){var J,q=this.context.gl,K=D.sort(function(ft,Zt){return Zt.overscaledZ-ft.overscaledZ}),de=K[K.length-1].overscaledZ,ne=K[0].overscaledZ-de+1;if(ne>1){this.currentStencilSource=void 0,this.nextStencilID+ne>256&&this.clearStencil();for(var we={},Ue=0;Ue<ne;Ue++)we[Ue+de]=new kn({func:q.GEQUAL,mask:255},Ue+this.nextStencilID,255,q.KEEP,q.KEEP,q.REPLACE);return this.nextStencilID+=ne,[we,K]}return[(J={},J[de]=kn.disabled,J),K]},mo.prototype.colorModeForRenderPass=function(){var D=this.context.gl;if(this._showOverdrawInspector){var J=8,q=1/J;return new _t([D.CONSTANT_COLOR,D.ONE],new i.Color(q,q,q,0),[!0,!0,!0,!0])}else return this.renderPass==="opaque"?_t.unblended:_t.alphaBlended},mo.prototype.depthModeForSublayer=function(D,J,q){if(!this.opaquePassEnabledForLayer())return wn.disabled;var K=1-((1+this.currentLayer)*this.numSublayers+D)*this.depthEpsilon;return new wn(q||this.context.gl.LEQUAL,J,[K,K])},mo.prototype.opaquePassEnabledForLayer=function(){return this.currentLayer<this.opaquePassCutoff},mo.prototype.render=function(D,J){var q=this;this.style=D,this.options=J,this.lineAtlas=D.lineAtlas,this.imageManager=D.imageManager,this.glyphManager=D.glyphManager,this.symbolFadeChange=D.placement.symbolFadeChange(i.browser.now()),this.imageManager.beginFrame();var K=this.style._order,de=this.style.sourceCaches;for(var ne in de){var we=de[ne];we.used&&we.prepare(this.context)}var Ue={},ft={},Zt={};for(var hr in de){var qt=de[hr];Ue[hr]=qt.getVisibleCoordinates(),ft[hr]=Ue[hr].slice().reverse(),Zt[hr]=qt.getVisibleCoordinates(!0).reverse()}this.opaquePassCutoff=1/0;for(var Ve=0;Ve<K.length;Ve++){var et=K[Ve];if(this.style._layers[et].is3D()){this.opaquePassCutoff=Ve;break}}this.renderPass="offscreen";for(var at=0,kt=K;at<kt.length;at+=1){var Ot=kt[at],It=this.style._layers[Ot];if(!(!It.hasOffscreenPass()||It.isHidden(this.transform.zoom))){var Bt=ft[It.source];It.type!=="custom"&&!Bt.length||this.renderLayer(this,de[It.source],It,Bt)}}for(this.context.bindFramebuffer.set(null),this.context.clear({color:J.showOverdrawInspector?i.Color.black:i.Color.transparent,depth:1}),this.clearStencil(),this._showOverdrawInspector=J.showOverdrawInspector,this.depthRangeFor3D=[0,1-(D._order.length+2)*this.numSublayers*this.depthEpsilon],this.renderPass="opaque",this.currentLayer=K.length-1;this.currentLayer>=0;this.currentLayer--){var Rt=this.style._layers[K[this.currentLayer]],mt=de[Rt.source],Pt=Ue[Rt.source];this._renderTileClippingMasks(Rt,Pt),this.renderLayer(this,mt,Rt,Pt)}for(this.renderPass="translucent",this.currentLayer=0;this.currentLayer<K.length;this.currentLayer++){var ht=this.style._layers[K[this.currentLayer]],cr=de[ht.source],br=(ht.type==="symbol"?Zt:ft)[ht.source];this._renderTileClippingMasks(ht,Ue[ht.source]),this.renderLayer(this,cr,ht,br)}if(this.options.showTileBoundaries){var Nr,Ri,hi=i.values(this.style._layers);hi.forEach(function(wi){wi.source&&!wi.isHidden(q.transform.zoom)&&(wi.source!==(Ri&&Ri.id)&&(Ri=q.style.sourceCaches[wi.source]),(!Nr||Nr.getSource().maxzoom<Ri.getSource().maxzoom)&&(Nr=Ri))}),Nr&&Qa.debug(this,Nr,Nr.getVisibleCoordinates())}this.options.showPadding&&Li(this),this.context.setDefault()},mo.prototype.renderLayer=function(D,J,q,K){q.isHidden(this.transform.zoom)||q.type!=="background"&&q.type!=="custom"&&!K.length||(this.id=q.id,this.gpuTimingStart(q),Qa[q.type](D,J,q,K,this.style.placement.variableOffsets),this.gpuTimingEnd())},mo.prototype.gpuTimingStart=function(D){if(this.options.gpuTiming){var J=this.context.extTimerQuery,q=this.gpuTimers[D.id];q||(q=this.gpuTimers[D.id]={calls:0,cpuTime:0,query:J.createQueryEXT()}),q.calls++,J.beginQueryEXT(J.TIME_ELAPSED_EXT,q.query)}},mo.prototype.gpuTimingEnd=function(){if(this.options.gpuTiming){var D=this.context.extTimerQuery;D.endQueryEXT(D.TIME_ELAPSED_EXT)}},mo.prototype.collectGpuTimers=function(){var D=this.gpuTimers;return this.gpuTimers={},D},mo.prototype.queryGpuTimers=function(D){var J={};for(var q in D){var K=D[q],de=this.context.extTimerQuery,ne=de.getQueryObjectEXT(K.query,de.QUERY_RESULT_EXT)/(1e3*1e3);de.deleteQueryEXT(K.query),J[q]=ne}return J},mo.prototype.translatePosMatrix=function(D,J,q,K,de){if(!q[0]&&!q[1])return D;var ne=de?K==="map"?this.transform.angle:0:K==="viewport"?-this.transform.angle:0;if(ne){var we=Math.sin(ne),Ue=Math.cos(ne);q=[q[0]*Ue-q[1]*we,q[0]*we+q[1]*Ue]}var ft=[de?q[0]:Ss(J,q[0],this.transform.zoom),de?q[1]:Ss(J,q[1],this.transform.zoom),0],Zt=new Float32Array(16);return i.translate(Zt,D,ft),Zt},mo.prototype.saveTileTexture=function(D){var J=this._tileTextures[D.size[0]];J?J.push(D):this._tileTextures[D.size[0]]=[D]},mo.prototype.getTileTexture=function(D){var J=this._tileTextures[D];return J&&J.length>0?J.pop():null},mo.prototype.isPatternMissing=function(D){if(!D)return!1;if(!D.from||!D.to)return!0;var J=this.imageManager.getPattern(D.from.toString()),q=this.imageManager.getPattern(D.to.toString());return!J||!q},mo.prototype.useProgram=function(D,J){this.cache=this.cache||{};var q=""+D+(J?J.cacheKey:"")+(this._showOverdrawInspector?"/overdraw":"");return this.cache[q]||(this.cache[q]=new If(this.context,D,bf[D],J,oo[D],this._showOverdrawInspector)),this.cache[q]},mo.prototype.setCustomLayerDefaults=function(){this.context.unbindVAO(),this.context.cullFace.setDefault(),this.context.activeTexture.setDefault(),this.context.pixelStoreUnpack.setDefault(),this.context.pixelStoreUnpackPremultiplyAlpha.setDefault(),this.context.pixelStoreUnpackFlipY.setDefault()},mo.prototype.setBaseState=function(){var D=this.context.gl;this.context.cullFace.set(!1),this.context.viewport.set([0,0,this.width,this.height]),this.context.blendEquation.set(D.FUNC_ADD)},mo.prototype.initDebugOverlayCanvas=function(){if(this.debugOverlayCanvas==null){this.debugOverlayCanvas=i.window.document.createElement("canvas"),this.debugOverlayCanvas.width=512,this.debugOverlayCanvas.height=512;var D=this.context.gl;this.debugOverlayTexture=new i.Texture(this.context,this.debugOverlayCanvas,D.RGBA)}},mo.prototype.destroy=function(){this.emptyTexture.destroy(),this.debugOverlayTexture&&this.debugOverlayTexture.destroy()};var Bo=function(D,J){this.points=D,this.planes=J};Bo.fromInvProjectionMatrix=function(D,J,q){var K=[[-1,1,-1,1],[1,1,-1,1],[1,-1,-1,1],[-1,-1,-1,1],[-1,1,1,1],[1,1,1,1],[1,-1,1,1],[-1,-1,1,1]],de=Math.pow(2,q),ne=K.map(function(ft){return i.transformMat4([],ft,D)}).map(function(ft){return i.scale$1([],ft,1/ft[3]/J*de)}),we=[[0,1,2],[6,5,4],[0,3,7],[2,1,5],[3,2,6],[0,4,5]],Ue=we.map(function(ft){var Zt=i.sub([],ne[ft[0]],ne[ft[1]]),hr=i.sub([],ne[ft[2]],ne[ft[1]]),qt=i.normalize([],i.cross([],Zt,hr)),Ve=-i.dot(qt,ne[ft[1]]);return qt.concat(Ve)});return new Bo(ne,Ue)};var Is=function(D,J){this.min=D,this.max=J,this.center=i.scale$2([],i.add([],this.min,this.max),.5)};Is.prototype.quadrant=function(D){for(var J=[D%2===0,D<2],q=i.clone$2(this.min),K=i.clone$2(this.max),de=0;de<J.length;de++)q[de]=J[de]?this.min[de]:this.center[de],K[de]=J[de]?this.center[de]:this.max[de];return K[2]=this.max[2],new Is(q,K)},Is.prototype.distanceX=function(D){var J=Math.max(Math.min(this.max[0],D[0]),this.min[0]);return J-D[0]},Is.prototype.distanceY=function(D){var J=Math.max(Math.min(this.max[1],D[1]),this.min[1]);return J-D[1]},Is.prototype.intersects=function(D){for(var J=[[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]],q=!0,K=0;K<D.planes.length;K++){for(var de=D.planes[K],ne=0,we=0;we<J.length;we++)ne+=i.dot$1(de,J[we])>=0;if(ne===0)return 0;ne!==J.length&&(q=!1)}if(q)return 2;for(var Ue=0;Ue<3;Ue++){for(var ft=Number.MAX_VALUE,Zt=-Number.MAX_VALUE,hr=0;hr<D.points.length;hr++){var qt=D.points[hr][Ue]-this.min[Ue];ft=Math.min(ft,qt),Zt=Math.max(Zt,qt)}if(Zt<0||ft>this.max[Ue]-this.min[Ue])return 0}return 1};var As=function(D,J,q,K){if(D===void 0&&(D=0),J===void 0&&(J=0),q===void 0&&(q=0),K===void 0&&(K=0),isNaN(D)||D<0||isNaN(J)||J<0||isNaN(q)||q<0||isNaN(K)||K<0)throw new Error("Invalid value for edge-insets, top, bottom, left and right must all be numbers");this.top=D,this.bottom=J,this.left=q,this.right=K};As.prototype.interpolate=function(D,J,q){return J.top!=null&&D.top!=null&&(this.top=i.number(D.top,J.top,q)),J.bottom!=null&&D.bottom!=null&&(this.bottom=i.number(D.bottom,J.bottom,q)),J.left!=null&&D.left!=null&&(this.left=i.number(D.left,J.left,q)),J.right!=null&&D.right!=null&&(this.right=i.number(D.right,J.right,q)),this},As.prototype.getCenter=function(D,J){var q=i.clamp((this.left+D-this.right)/2,0,D),K=i.clamp((this.top+J-this.bottom)/2,0,J);return new i.Point(q,K)},As.prototype.equals=function(D){return this.top===D.top&&this.bottom===D.bottom&&this.left===D.left&&this.right===D.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 wo=function(D,J,q,K,de){this.tileSize=512,this.maxValidLatitude=85.051129,this._renderWorldCopies=de===void 0?!0:de,this._minZoom=D||0,this._maxZoom=J||22,this._minPitch=q==null?0:q,this._maxPitch=K==null?60:K,this.setMaxBounds(),this.width=0,this.height=0,this._center=new i.LngLat(0,0),this.zoom=0,this.angle=0,this._fov=.6435011087932844,this._pitch=0,this._unmodified=!0,this._edgeInsets=new As,this._posMatrixCache={},this._alignedPosMatrixCache={}},To={minZoom:{configurable:!0},maxZoom:{configurable:!0},minPitch:{configurable:!0},maxPitch:{configurable:!0},renderWorldCopies:{configurable:!0},worldSize:{configurable:!0},centerOffset:{configurable:!0},size:{configurable:!0},bearing:{configurable:!0},pitch:{configurable:!0},fov:{configurable:!0},zoom:{configurable:!0},center:{configurable:!0},padding:{configurable:!0},centerPoint:{configurable:!0},unmodified:{configurable:!0},point:{configurable:!0}};wo.prototype.clone=function(){var D=new wo(this._minZoom,this._maxZoom,this._minPitch,this.maxPitch,this._renderWorldCopies);return D.tileSize=this.tileSize,D.latRange=this.latRange,D.width=this.width,D.height=this.height,D._center=this._center,D.zoom=this.zoom,D.angle=this.angle,D._fov=this._fov,D._pitch=this._pitch,D._unmodified=this._unmodified,D._edgeInsets=this._edgeInsets.clone(),D._calcMatrices(),D},To.minZoom.get=function(){return this._minZoom},To.minZoom.set=function(Y){this._minZoom!==Y&&(this._minZoom=Y,this.zoom=Math.max(this.zoom,Y))},To.maxZoom.get=function(){return this._maxZoom},To.maxZoom.set=function(Y){this._maxZoom!==Y&&(this._maxZoom=Y,this.zoom=Math.min(this.zoom,Y))},To.minPitch.get=function(){return this._minPitch},To.minPitch.set=function(Y){this._minPitch!==Y&&(this._minPitch=Y,this.pitch=Math.max(this.pitch,Y))},To.maxPitch.get=function(){return this._maxPitch},To.maxPitch.set=function(Y){this._maxPitch!==Y&&(this._maxPitch=Y,this.pitch=Math.min(this.pitch,Y))},To.renderWorldCopies.get=function(){return this._renderWorldCopies},To.renderWorldCopies.set=function(Y){Y===void 0?Y=!0:Y===null&&(Y=!1),this._renderWorldCopies=Y},To.worldSize.get=function(){return this.tileSize*this.scale},To.centerOffset.get=function(){return this.centerPoint._sub(this.size._div(2))},To.size.get=function(){return new i.Point(this.width,this.height)},To.bearing.get=function(){return-this.angle/Math.PI*180},To.bearing.set=function(Y){var D=-i.wrap(Y,-180,180)*Math.PI/180;this.angle!==D&&(this._unmodified=!1,this.angle=D,this._calcMatrices(),this.rotationMatrix=i.create$2(),i.rotate(this.rotationMatrix,this.rotationMatrix,this.angle))},To.pitch.get=function(){return this._pitch/Math.PI*180},To.pitch.set=function(Y){var D=i.clamp(Y,this.minPitch,this.maxPitch)/180*Math.PI;this._pitch!==D&&(this._unmodified=!1,this._pitch=D,this._calcMatrices())},To.fov.get=function(){return this._fov/Math.PI*180},To.fov.set=function(Y){Y=Math.max(.01,Math.min(60,Y)),this._fov!==Y&&(this._unmodified=!1,this._fov=Y/180*Math.PI,this._calcMatrices())},To.zoom.get=function(){return this._zoom},To.zoom.set=function(Y){var D=Math.min(Math.max(Y,this.minZoom),this.maxZoom);this._zoom!==D&&(this._unmodified=!1,this._zoom=D,this.scale=this.zoomScale(D),this.tileZoom=Math.floor(D),this.zoomFraction=D-this.tileZoom,this._constrain(),this._calcMatrices())},To.center.get=function(){return this._center},To.center.set=function(Y){Y.lat===this._center.lat&&Y.lng===this._center.lng||(this._unmodified=!1,this._center=Y,this._constrain(),this._calcMatrices())},To.padding.get=function(){return this._edgeInsets.toJSON()},To.padding.set=function(Y){this._edgeInsets.equals(Y)||(this._unmodified=!1,this._edgeInsets.interpolate(this._edgeInsets,Y,1),this._calcMatrices())},To.centerPoint.get=function(){return this._edgeInsets.getCenter(this.width,this.height)},wo.prototype.isPaddingEqual=function(D){return this._edgeInsets.equals(D)},wo.prototype.interpolatePadding=function(D,J,q){this._unmodified=!1,this._edgeInsets.interpolate(D,J,q),this._constrain(),this._calcMatrices()},wo.prototype.coveringZoomLevel=function(D){var J=(D.roundZoom?Math.round:Math.floor)(this.zoom+this.scaleZoom(this.tileSize/D.tileSize));return Math.max(0,J)},wo.prototype.getVisibleUnwrappedCoordinates=function(D){var J=[new i.UnwrappedTileID(0,D)];if(this._renderWorldCopies)for(var q=this.pointCoordinate(new i.Point(0,0)),K=this.pointCoordinate(new i.Point(this.width,0)),de=this.pointCoordinate(new i.Point(this.width,this.height)),ne=this.pointCoordinate(new i.Point(0,this.height)),we=Math.floor(Math.min(q.x,K.x,de.x,ne.x)),Ue=Math.floor(Math.max(q.x,K.x,de.x,ne.x)),ft=1,Zt=we-ft;Zt<=Ue+ft;Zt++)Zt!==0&&J.push(new i.UnwrappedTileID(Zt,D));return J},wo.prototype.coveringTiles=function(D){var J=this.coveringZoomLevel(D),q=J;if(D.minzoom!==void 0&&J<D.minzoom)return[];D.maxzoom!==void 0&&J>D.maxzoom&&(J=D.maxzoom);var K=i.MercatorCoordinate.fromLngLat(this.center),de=Math.pow(2,J),ne=[de*K.x,de*K.y,0],we=Bo.fromInvProjectionMatrix(this.invProjMatrix,this.worldSize,J),Ue=D.minzoom||0;this.pitch<=60&&this._edgeInsets.top<.1&&(Ue=J);var ft=3,Zt=function(hi){return{aabb:new Is([hi*de,0,0],[(hi+1)*de,de,0]),zoom:0,x:0,y:0,wrap:hi,fullyVisible:!1}},hr=[],qt=[],Ve=J,et=D.reparseOverscaled?q:J;if(this._renderWorldCopies)for(var at=1;at<=3;at++)hr.push(Zt(-at)),hr.push(Zt(at));for(hr.push(Zt(0));hr.length>0;){var kt=hr.pop(),Ot=kt.x,It=kt.y,Bt=kt.fullyVisible;if(!Bt){var Rt=kt.aabb.intersects(we);if(Rt===0)continue;Bt=Rt===2}var mt=kt.aabb.distanceX(ne),Pt=kt.aabb.distanceY(ne),ht=Math.max(Math.abs(mt),Math.abs(Pt)),cr=ft+(1<<Ve-kt.zoom)-2;if(kt.zoom===Ve||ht>cr&&kt.zoom>=Ue){qt.push({tileID:new i.OverscaledTileID(kt.zoom===Ve?et:kt.zoom,kt.wrap,kt.zoom,Ot,It),distanceSq:i.sqrLen([ne[0]-.5-Ot,ne[1]-.5-It])});continue}for(var br=0;br<4;br++){var Nr=(Ot<<1)+br%2,Ri=(It<<1)+(br>>1);hr.push({aabb:kt.aabb.quadrant(br),zoom:kt.zoom+1,x:Nr,y:Ri,wrap:kt.wrap,fullyVisible:Bt})}}return qt.sort(function(hi,wi){return hi.distanceSq-wi.distanceSq}).map(function(hi){return hi.tileID})},wo.prototype.resize=function(D,J){this.width=D,this.height=J,this.pixelsToGLUnits=[2/D,-2/J],this._constrain(),this._calcMatrices()},To.unmodified.get=function(){return this._unmodified},wo.prototype.zoomScale=function(D){return Math.pow(2,D)},wo.prototype.scaleZoom=function(D){return Math.log(D)/Math.LN2},wo.prototype.project=function(D){var J=i.clamp(D.lat,-this.maxValidLatitude,this.maxValidLatitude);return new i.Point(i.mercatorXfromLng(D.lng)*this.worldSize,i.mercatorYfromLat(J)*this.worldSize)},wo.prototype.unproject=function(D){return new i.MercatorCoordinate(D.x/this.worldSize,D.y/this.worldSize).toLngLat()},To.point.get=function(){return this.project(this.center)},wo.prototype.setLocationAtPoint=function(D,J){var q=this.pointCoordinate(J),K=this.pointCoordinate(this.centerPoint),de=this.locationCoordinate(D),ne=new i.MercatorCoordinate(de.x-(q.x-K.x),de.y-(q.y-K.y));this.center=this.coordinateLocation(ne),this._renderWorldCopies&&(this.center=this.center.wrap())},wo.prototype.locationPoint=function(D){return this.coordinatePoint(this.locationCoordinate(D))},wo.prototype.pointLocation=function(D){return this.coordinateLocation(this.pointCoordinate(D))},wo.prototype.locationCoordinate=function(D){return i.MercatorCoordinate.fromLngLat(D)},wo.prototype.coordinateLocation=function(D){return D.toLngLat()},wo.prototype.pointCoordinate=function(D){var J=0,q=[D.x,D.y,0,1],K=[D.x,D.y,1,1];i.transformMat4(q,q,this.pixelMatrixInverse),i.transformMat4(K,K,this.pixelMatrixInverse);var de=q[3],ne=K[3],we=q[0]/de,Ue=K[0]/ne,ft=q[1]/de,Zt=K[1]/ne,hr=q[2]/de,qt=K[2]/ne,Ve=hr===qt?0:(J-hr)/(qt-hr);return new i.MercatorCoordinate(i.number(we,Ue,Ve)/this.worldSize,i.number(ft,Zt,Ve)/this.worldSize)},wo.prototype.coordinatePoint=function(D){var J=[D.x*this.worldSize,D.y*this.worldSize,0,1];return i.transformMat4(J,J,this.pixelMatrix),new i.Point(J[0]/J[3],J[1]/J[3])},wo.prototype.getBounds=function(){return new i.LngLatBounds().extend(this.pointLocation(new i.Point(0,0))).extend(this.pointLocation(new i.Point(this.width,0))).extend(this.pointLocation(new i.Point(this.width,this.height))).extend(this.pointLocation(new i.Point(0,this.height)))},wo.prototype.getMaxBounds=function(){return!this.latRange||this.latRange.length!==2||!this.lngRange||this.lngRange.length!==2?null:new i.LngLatBounds([this.lngRange[0],this.latRange[0]],[this.lngRange[1],this.latRange[1]])},wo.prototype.setMaxBounds=function(D){D?(this.lngRange=[D.getWest(),D.getEast()],this.latRange=[D.getSouth(),D.getNorth()],this._constrain()):(this.lngRange=null,this.latRange=[-this.maxValidLatitude,this.maxValidLatitude])},wo.prototype.calculatePosMatrix=function(D,J){J===void 0&&(J=!1);var q=D.key,K=J?this._alignedPosMatrixCache:this._posMatrixCache;if(K[q])return K[q];var de=D.canonical,ne=this.worldSize/this.zoomScale(de.z),we=de.x+Math.pow(2,de.z)*D.wrap,Ue=i.identity(new Float64Array(16));return i.translate(Ue,Ue,[we*ne,de.y*ne,0]),i.scale(Ue,Ue,[ne/i.EXTENT,ne/i.EXTENT,1]),i.multiply(Ue,J?this.alignedProjMatrix:this.projMatrix,Ue),K[q]=new Float32Array(Ue),K[q]},wo.prototype.customLayerMatrix=function(){return this.mercatorMatrix.slice()},wo.prototype._constrain=function(){if(!(!this.center||!this.width||!this.height||this._constraining)){this._constraining=!0;var D=-90,J=90,q=-180,K=180,de,ne,we,Ue,ft=this.size,Zt=this._unmodified;if(this.latRange){var hr=this.latRange;D=i.mercatorYfromLat(hr[1])*this.worldSize,J=i.mercatorYfromLat(hr[0])*this.worldSize,de=J-D<ft.y?ft.y/(J-D):0}if(this.lngRange){var qt=this.lngRange;q=i.mercatorXfromLng(qt[0])*this.worldSize,K=i.mercatorXfromLng(qt[1])*this.worldSize,ne=K-q<ft.x?ft.x/(K-q):0}var Ve=this.point,et=Math.max(ne||0,de||0);if(et){this.center=this.unproject(new i.Point(ne?(K+q)/2:Ve.x,de?(J+D)/2:Ve.y)),this.zoom+=this.scaleZoom(et),this._unmodified=Zt,this._constraining=!1;return}if(this.latRange){var at=Ve.y,kt=ft.y/2;at-kt<D&&(Ue=D+kt),at+kt>J&&(Ue=J-kt)}if(this.lngRange){var Ot=Ve.x,It=ft.x/2;Ot-It<q&&(we=q+It),Ot+It>K&&(we=K-It)}(we!==void 0||Ue!==void 0)&&(this.center=this.unproject(new i.Point(we!==void 0?we:Ve.x,Ue!==void 0?Ue:Ve.y))),this._unmodified=Zt,this._constraining=!1}},wo.prototype._calcMatrices=function(){if(this.height){var D=this._fov/2,J=this.centerOffset;this.cameraToCenterDistance=.5/Math.tan(D)*this.height;var q=Math.PI/2+this._pitch,K=this._fov*(.5+J.y/this.height),de=Math.sin(K)*this.cameraToCenterDistance/Math.sin(i.clamp(Math.PI-q-K,.01,Math.PI-.01)),ne=this.point,we=ne.x,Ue=ne.y,ft=Math.cos(Math.PI/2-this._pitch)*de+this.cameraToCenterDistance,Zt=ft*1.01,hr=this.height/50,qt=new Float64Array(16);i.perspective(qt,this._fov,this.width/this.height,hr,Zt),qt[8]=-J.x*2/this.width,qt[9]=J.y*2/this.height,i.scale(qt,qt,[1,-1,1]),i.translate(qt,qt,[0,0,-this.cameraToCenterDistance]),i.rotateX(qt,qt,this._pitch),i.rotateZ(qt,qt,this.angle),i.translate(qt,qt,[-we,-Ue,0]),this.mercatorMatrix=i.scale([],qt,[this.worldSize,this.worldSize,this.worldSize]),i.scale(qt,qt,[1,1,i.mercatorZfromAltitude(1,this.center.lat)*this.worldSize,1]),this.projMatrix=qt,this.invProjMatrix=i.invert([],this.projMatrix);var Ve=this.width%2/2,et=this.height%2/2,at=Math.cos(this.angle),kt=Math.sin(this.angle),Ot=we-Math.round(we)+at*Ve+kt*et,It=Ue-Math.round(Ue)+at*et+kt*Ve,Bt=new Float64Array(qt);if(i.translate(Bt,Bt,[Ot>.5?Ot-1:Ot,It>.5?It-1:It,0]),this.alignedProjMatrix=Bt,qt=i.create(),i.scale(qt,qt,[this.width/2,-this.height/2,1]),i.translate(qt,qt,[1,-1,0]),this.labelPlaneMatrix=qt,qt=i.create(),i.scale(qt,qt,[1,-1,1]),i.translate(qt,qt,[-1,-1,0]),i.scale(qt,qt,[2/this.width,2/this.height,1]),this.glCoordMatrix=qt,this.pixelMatrix=i.multiply(new Float64Array(16),this.labelPlaneMatrix,this.projMatrix),qt=i.invert(new Float64Array(16),this.pixelMatrix),!qt)throw new Error("failed to invert matrix");this.pixelMatrixInverse=qt,this._posMatrixCache={},this._alignedPosMatrixCache={}}},wo.prototype.maxPitchScaleFactor=function(){if(!this.pixelMatrixInverse)return 1;var D=this.pointCoordinate(new i.Point(0,0)),J=[D.x*this.worldSize,D.y*this.worldSize,0,1],q=i.transformMat4(J,J,this.pixelMatrix);return q[3]/this.cameraToCenterDistance},wo.prototype.getCameraPoint=function(){var D=this._pitch,J=Math.tan(D)*(this.cameraToCenterDistance||1);return this.centerPoint.add(new i.Point(0,J))},wo.prototype.getCameraQueryGeometry=function(D){var J=this.getCameraPoint();if(D.length===1)return[D[0],J];for(var q=J.x,K=J.y,de=J.x,ne=J.y,we=0,Ue=D;we<Ue.length;we+=1){var ft=Ue[we];q=Math.min(q,ft.x),K=Math.min(K,ft.y),de=Math.max(de,ft.x),ne=Math.max(ne,ft.y)}return[new i.Point(q,K),new i.Point(de,K),new i.Point(de,ne),new i.Point(q,ne),new i.Point(q,K)]},Object.defineProperties(wo.prototype,To);function dl(Y,D){var J=!1,q=null,K=function(){q=null,J&&(Y(),q=setTimeout(K,D),J=!1)};return function(){return J=!0,q||K(),q}}var Nl=function(D){this._hashName=D&&encodeURIComponent(D),i.bindAll(["_getCurrentHash","_onHashChange","_updateHash"],this),this._updateHash=dl(this._updateHashUnthrottled.bind(this),30*1e3/100)};Nl.prototype.addTo=function(D){return this._map=D,i.window.addEventListener("hashchange",this._onHashChange,!1),this._map.on("moveend",this._updateHash),this},Nl.prototype.remove=function(){return i.window.removeEventListener("hashchange",this._onHashChange,!1),this._map.off("moveend",this._updateHash),clearTimeout(this._updateHash()),delete this._map,this},Nl.prototype.getHashString=function(D){var J=this._map.getCenter(),q=Math.round(this._map.getZoom()*100)/100,K=Math.ceil((q*Math.LN2+Math.log(512/360/.5))/Math.LN10),de=Math.pow(10,K),ne=Math.round(J.lng*de)/de,we=Math.round(J.lat*de)/de,Ue=this._map.getBearing(),ft=this._map.getPitch(),Zt="";if(D?Zt+="/"+ne+"/"+we+"/"+q:Zt+=q+"/"+we+"/"+ne,(Ue||ft)&&(Zt+="/"+Math.round(Ue*10)/10),ft&&(Zt+="/"+Math.round(ft)),this._hashName){var hr=this._hashName,qt=!1,Ve=i.window.location.hash.slice(1).split("&").map(function(et){var at=et.split("=")[0];return at===hr?(qt=!0,at+"="+Zt):et}).filter(function(et){return et});return qt||Ve.push(hr+"="+Zt),"#"+Ve.join("&")}return"#"+Zt},Nl.prototype._getCurrentHash=function(){var D=this,J=i.window.location.hash.replace("#","");if(this._hashName){var q;return J.split("&").map(function(K){return K.split("=")}).forEach(function(K){K[0]===D._hashName&&(q=K)}),(q&&q[1]||"").split("/")}return J.split("/")},Nl.prototype._onHashChange=function(){var D=this._getCurrentHash();if(D.length>=3&&!D.some(function(q){return isNaN(q)})){var J=this._map.dragRotate.isEnabled()&&this._map.touchZoomRotate.isEnabled()?+(D[3]||0):this._map.getBearing();return this._map.jumpTo({center:[+D[2],+D[1]],zoom:+D[0],bearing:J,pitch:+(D[4]||0)}),!0}return!1},Nl.prototype._updateHashUnthrottled=function(){var D=i.window.location.href.replace(/(#.+)?$/,this.getHashString());try{i.window.history.replaceState(i.window.history.state,null,D)}catch(J){}};var Lu={linearity:.3,easing:i.bezier(0,0,.3,1)},ou=i.extend({deceleration:2500,maxSpeed:1400},Lu),$s=i.extend({deceleration:20,maxSpeed:1400},Lu),Ql=i.extend({deceleration:1e3,maxSpeed:360},Lu),dc=i.extend({deceleration:1e3,maxSpeed:90},Lu),Tl=function(D){this._map=D,this.clear()};Tl.prototype.clear=function(){this._inertiaBuffer=[]},Tl.prototype.record=function(D){this._drainInertiaBuffer(),this._inertiaBuffer.push({time:i.browser.now(),settings:D})},Tl.prototype._drainInertiaBuffer=function(){for(var D=this._inertiaBuffer,J=i.browser.now(),q=160;D.length>0&&J-D[0].time>q;)D.shift()},Tl.prototype._onMoveEnd=function(D){if(this._drainInertiaBuffer(),!(this._inertiaBuffer.length<2)){for(var J={zoom:0,bearing:0,pitch:0,pan:new i.Point(0,0),pinchAround:void 0,around:void 0},q=0,K=this._inertiaBuffer;q<K.length;q+=1){var de=K[q],ne=de.settings;J.zoom+=ne.zoomDelta||0,J.bearing+=ne.bearingDelta||0,J.pitch+=ne.pitchDelta||0,ne.panDelta&&J.pan._add(ne.panDelta),ne.around&&(J.around=ne.around),ne.pinchAround&&(J.pinchAround=ne.pinchAround)}var we=this._inertiaBuffer[this._inertiaBuffer.length-1],Ue=we.time-this._inertiaBuffer[0].time,ft={};if(J.pan.mag()){var Zt=X(J.pan.mag(),Ue,i.extend({},ou,D||{}));ft.offset=J.pan.mult(Zt.amount/J.pan.mag()),ft.center=this._map.transform.center,Al(ft,Zt)}if(J.zoom){var hr=X(J.zoom,Ue,$s);ft.zoom=this._map.transform.zoom+hr.amount,Al(ft,hr)}if(J.bearing){var qt=X(J.bearing,Ue,Ql);ft.bearing=this._map.transform.bearing+i.clamp(qt.amount,-179,179),Al(ft,qt)}if(J.pitch){var Ve=X(J.pitch,Ue,dc);ft.pitch=this._map.transform.pitch+Ve.amount,Al(ft,Ve)}if(ft.zoom||ft.bearing){var et=J.pinchAround===void 0?J.around:J.pinchAround;ft.around=et?this._map.unproject(et):this._map.getCenter()}return this.clear(),i.extend(ft,{noMoveStart:!0})}};function Al(Y,D){(!Y.duration||Y.duration<D.duration)&&(Y.duration=D.duration,Y.easing=D.easing)}function X(Y,D,J){var q=J.maxSpeed,K=J.linearity,de=J.deceleration,ne=i.clamp(Y*K/(D/1e3),-q,q),we=Math.abs(ne)/(de*K);return{easing:J.easing,duration:we*1e3,amount:ne*(we/2)}}var se=function(Y){function D(q,K,de,ne){ne===void 0&&(ne={});var we=o.mousePos(K.getCanvasContainer(),de),Ue=K.unproject(we);Y.call(this,q,i.extend({point:we,lngLat:Ue,originalEvent:de},ne)),this._defaultPrevented=!1,this.target=K}Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D;var J={defaultPrevented:{configurable:!0}};return D.prototype.preventDefault=function(){this._defaultPrevented=!0},J.defaultPrevented.get=function(){return this._defaultPrevented},Object.defineProperties(D.prototype,J),D}(i.Event),Te=function(Y){function D(q,K,de){var ne=q==="touchend"?de.changedTouches:de.touches,we=o.touchPos(K.getCanvasContainer(),ne),Ue=we.map(function(hr){return K.unproject(hr)}),ft=we.reduce(function(hr,qt,Ve,et){return hr.add(qt.div(et.length))},new i.Point(0,0)),Zt=K.unproject(ft);Y.call(this,q,{points:we,point:ft,lngLats:Ue,lngLat:Zt,originalEvent:de}),this._defaultPrevented=!1}Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D;var J={defaultPrevented:{configurable:!0}};return D.prototype.preventDefault=function(){this._defaultPrevented=!0},J.defaultPrevented.get=function(){return this._defaultPrevented},Object.defineProperties(D.prototype,J),D}(i.Event),Ne=function(Y){function D(q,K,de){Y.call(this,q,{originalEvent:de}),this._defaultPrevented=!1}Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D;var J={defaultPrevented:{configurable:!0}};return D.prototype.preventDefault=function(){this._defaultPrevented=!0},J.defaultPrevented.get=function(){return this._defaultPrevented},Object.defineProperties(D.prototype,J),D}(i.Event),He=function(D,J){this._map=D,this._clickTolerance=J.clickTolerance};He.prototype.reset=function(){delete this._mousedownPos},He.prototype.wheel=function(D){return this._firePreventable(new Ne(D.type,this._map,D))},He.prototype.mousedown=function(D,J){return this._mousedownPos=J,this._firePreventable(new se(D.type,this._map,D))},He.prototype.mouseup=function(D){this._map.fire(new se(D.type,this._map,D))},He.prototype.click=function(D,J){this._mousedownPos&&this._mousedownPos.dist(J)>=this._clickTolerance||this._map.fire(new se(D.type,this._map,D))},He.prototype.dblclick=function(D){return this._firePreventable(new se(D.type,this._map,D))},He.prototype.mouseover=function(D){this._map.fire(new se(D.type,this._map,D))},He.prototype.mouseout=function(D){this._map.fire(new se(D.type,this._map,D))},He.prototype.touchstart=function(D){return this._firePreventable(new Te(D.type,this._map,D))},He.prototype.touchmove=function(D){this._map.fire(new Te(D.type,this._map,D))},He.prototype.touchend=function(D){this._map.fire(new Te(D.type,this._map,D))},He.prototype.touchcancel=function(D){this._map.fire(new Te(D.type,this._map,D))},He.prototype._firePreventable=function(D){if(this._map.fire(D),D.defaultPrevented)return{}},He.prototype.isEnabled=function(){return!0},He.prototype.isActive=function(){return!1},He.prototype.enable=function(){},He.prototype.disable=function(){};var Ye=function(D){this._map=D};Ye.prototype.reset=function(){this._delayContextMenu=!1,delete this._contextMenuEvent},Ye.prototype.mousemove=function(D){this._map.fire(new se(D.type,this._map,D))},Ye.prototype.mousedown=function(){this._delayContextMenu=!0},Ye.prototype.mouseup=function(){this._delayContextMenu=!1,this._contextMenuEvent&&(this._map.fire(new se("contextmenu",this._map,this._contextMenuEvent)),delete this._contextMenuEvent)},Ye.prototype.contextmenu=function(D){this._delayContextMenu?this._contextMenuEvent=D:this._map.fire(new se(D.type,this._map,D)),this._map.listens("contextmenu")&&D.preventDefault()},Ye.prototype.isEnabled=function(){return!0},Ye.prototype.isActive=function(){return!1},Ye.prototype.enable=function(){},Ye.prototype.disable=function(){};var Ct=function(D,J){this._map=D,this._el=D.getCanvasContainer(),this._container=D.getContainer(),this._clickTolerance=J.clickTolerance||1};Ct.prototype.isEnabled=function(){return!!this._enabled},Ct.prototype.isActive=function(){return!!this._active},Ct.prototype.enable=function(){this.isEnabled()||(this._enabled=!0)},Ct.prototype.disable=function(){this.isEnabled()&&(this._enabled=!1)},Ct.prototype.mousedown=function(D,J){this.isEnabled()&&D.shiftKey&&D.button===0&&(o.disableDrag(),this._startPos=this._lastPos=J,this._active=!0)},Ct.prototype.mousemoveWindow=function(D,J){if(this._active){var q=J;if(!(this._lastPos.equals(q)||!this._box&&q.dist(this._startPos)<this._clickTolerance)){var K=this._startPos;this._lastPos=q,this._box||(this._box=o.create("div","mapboxgl-boxzoom",this._container),this._container.classList.add("mapboxgl-crosshair"),this._fireEvent("boxzoomstart",D));var de=Math.min(K.x,q.x),ne=Math.max(K.x,q.x),we=Math.min(K.y,q.y),Ue=Math.max(K.y,q.y);o.setTransform(this._box,"translate("+de+"px,"+we+"px)"),this._box.style.width=ne-de+"px",this._box.style.height=Ue-we+"px"}}},Ct.prototype.mouseupWindow=function(D,J){var q=this;if(this._active&&D.button===0){var K=this._startPos,de=J;if(this.reset(),o.suppressClick(),K.x===de.x&&K.y===de.y)this._fireEvent("boxzoomcancel",D);else return this._map.fire(new i.Event("boxzoomend",{originalEvent:D})),{cameraAnimation:function(ne){return ne.fitScreenCoordinates(K,de,q._map.getBearing(),{linear:!0})}}}},Ct.prototype.keydown=function(D){this._active&&D.keyCode===27&&(this.reset(),this._fireEvent("boxzoomcancel",D))},Ct.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},Ct.prototype._fireEvent=function(D,J){return this._map.fire(new i.Event(D,{originalEvent:J}))};function nt(Y,D){for(var J={},q=0;q<Y.length;q++)J[Y[q].identifier]=D[q];return J}function jt(Y){for(var D=new i.Point(0,0),J=0,q=Y;J<q.length;J+=1){var K=q[J];D._add(K)}return D.div(Y.length)}var gr=500,yr=500,Gr=30,qr=function(D){this.reset(),this.numTouches=D.numTouches};qr.prototype.reset=function(){delete this.centroid,delete this.startTime,delete this.touches,this.aborted=!1},qr.prototype.touchstart=function(D,J,q){(this.centroid||q.length>this.numTouches)&&(this.aborted=!0),!this.aborted&&(this.startTime===void 0&&(this.startTime=D.timeStamp),q.length===this.numTouches&&(this.centroid=jt(J),this.touches=nt(q,J)))},qr.prototype.touchmove=function(D,J,q){if(!(this.aborted||!this.centroid)){var K=nt(q,J);for(var de in this.touches){var ne=this.touches[de],we=K[de];(!we||we.dist(ne)>Gr)&&(this.aborted=!0)}}},qr.prototype.touchend=function(D,J,q){if((!this.centroid||D.timeStamp-this.startTime>yr)&&(this.aborted=!0),q.length===0){var K=!this.aborted&&this.centroid;if(this.reset(),K)return K}};var _i=function(D){this.singleTap=new qr(D),this.numTaps=D.numTaps,this.reset()};_i.prototype.reset=function(){this.lastTime=1/0,delete this.lastTap,this.count=0,this.singleTap.reset()},_i.prototype.touchstart=function(D,J,q){this.singleTap.touchstart(D,J,q)},_i.prototype.touchmove=function(D,J,q){this.singleTap.touchmove(D,J,q)},_i.prototype.touchend=function(D,J,q){var K=this.singleTap.touchend(D,J,q);if(K){var de=D.timeStamp-this.lastTime<gr,ne=!this.lastTap||this.lastTap.dist(K)<Gr;if((!de||!ne)&&this.reset(),this.count++,this.lastTime=D.timeStamp,this.lastTap=K,this.count===this.numTaps)return this.reset(),K}};var bi=function(){this._zoomIn=new _i({numTouches:1,numTaps:2}),this._zoomOut=new _i({numTouches:2,numTaps:1}),this.reset()};bi.prototype.reset=function(){this._active=!1,this._zoomIn.reset(),this._zoomOut.reset()},bi.prototype.touchstart=function(D,J,q){this._zoomIn.touchstart(D,J,q),this._zoomOut.touchstart(D,J,q)},bi.prototype.touchmove=function(D,J,q){this._zoomIn.touchmove(D,J,q),this._zoomOut.touchmove(D,J,q)},bi.prototype.touchend=function(D,J,q){var K=this,de=this._zoomIn.touchend(D,J,q),ne=this._zoomOut.touchend(D,J,q);if(de)return this._active=!0,D.preventDefault(),setTimeout(function(){return K.reset()},0),{cameraAnimation:function(we){return we.easeTo({duration:300,zoom:we.getZoom()+1,around:we.unproject(de)},{originalEvent:D})}};if(ne)return this._active=!0,D.preventDefault(),setTimeout(function(){return K.reset()},0),{cameraAnimation:function(we){return we.easeTo({duration:300,zoom:we.getZoom()-1,around:we.unproject(ne)},{originalEvent:D})}}},bi.prototype.touchcancel=function(){this.reset()},bi.prototype.enable=function(){this._enabled=!0},bi.prototype.disable=function(){this._enabled=!1,this.reset()},bi.prototype.isEnabled=function(){return this._enabled},bi.prototype.isActive=function(){return this._active};var Xr=0,ni=2,gi={};gi[Xr]=1,gi[ni]=2;function Pi(Y,D){var J=gi[D];return Y.buttons===void 0||(Y.buttons&J)!==J}var Ai=function(D){this.reset(),this._clickTolerance=D.clickTolerance||1};Ai.prototype.reset=function(){this._active=!1,this._moved=!1,delete this._lastPoint,delete this._eventButton},Ai.prototype._correctButton=function(D,J){return!1},Ai.prototype._move=function(D,J){return{}},Ai.prototype.mousedown=function(D,J){if(!this._lastPoint){var q=o.mouseButton(D);this._correctButton(D,q)&&(this._lastPoint=J,this._eventButton=q)}},Ai.prototype.mousemoveWindow=function(D,J){var q=this._lastPoint;if(q){if(D.preventDefault(),Pi(D,this._eventButton)){this.reset();return}if(!(!this._moved&&J.dist(q)<this._clickTolerance))return this._moved=!0,this._lastPoint=J,this._move(q,J)}},Ai.prototype.mouseupWindow=function(D){if(this._lastPoint){var J=o.mouseButton(D);J===this._eventButton&&(this._moved&&o.suppressClick(),this.reset())}},Ai.prototype.enable=function(){this._enabled=!0},Ai.prototype.disable=function(){this._enabled=!1,this.reset()},Ai.prototype.isEnabled=function(){return this._enabled},Ai.prototype.isActive=function(){return this._active};var ti=function(Y){function D(){Y.apply(this,arguments)}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.mousedown=function(q,K){Y.prototype.mousedown.call(this,q,K),this._lastPoint&&(this._active=!0)},D.prototype._correctButton=function(q,K){return K===Xr&&!q.ctrlKey},D.prototype._move=function(q,K){return{around:K,panDelta:K.sub(q)}},D}(Ai),Rn=function(Y){function D(){Y.apply(this,arguments)}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype._correctButton=function(q,K){return K===Xr&&q.ctrlKey||K===ni},D.prototype._move=function(q,K){var de=.8,ne=(K.x-q.x)*de;if(ne)return this._active=!0,{bearingDelta:ne}},D.prototype.contextmenu=function(q){q.preventDefault()},D}(Ai),Cn=function(Y){function D(){Y.apply(this,arguments)}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype._correctButton=function(q,K){return K===Xr&&q.ctrlKey||K===ni},D.prototype._move=function(q,K){var de=-.5,ne=(K.y-q.y)*de;if(ne)return this._active=!0,{pitchDelta:ne}},D.prototype.contextmenu=function(q){q.preventDefault()},D}(Ai),Nn=function(D){this._minTouches=1,this._clickTolerance=D.clickTolerance||1,this.reset()};Nn.prototype.reset=function(){this._active=!1,this._touches={},this._sum=new i.Point(0,0)},Nn.prototype.touchstart=function(D,J,q){return this._calculateTransform(D,J,q)},Nn.prototype.touchmove=function(D,J,q){if(!(!this._active||q.length<this._minTouches))return D.preventDefault(),this._calculateTransform(D,J,q)},Nn.prototype.touchend=function(D,J,q){this._calculateTransform(D,J,q),this._active&&q.length<this._minTouches&&this.reset()},Nn.prototype.touchcancel=function(){this.reset()},Nn.prototype._calculateTransform=function(D,J,q){q.length>0&&(this._active=!0);var K=nt(q,J),de=new i.Point(0,0),ne=new i.Point(0,0),we=0;for(var Ue in K){var ft=K[Ue],Zt=this._touches[Ue];Zt&&(de._add(ft),ne._add(ft.sub(Zt)),we++,K[Ue]=ft)}if(this._touches=K,!(we<this._minTouches||!ne.mag())){var hr=ne.div(we);if(this._sum._add(hr),!(this._sum.mag()<this._clickTolerance)){var qt=de.div(we);return{around:qt,panDelta:hr}}}},Nn.prototype.enable=function(){this._enabled=!0},Nn.prototype.disable=function(){this._enabled=!1,this.reset()},Nn.prototype.isEnabled=function(){return this._enabled},Nn.prototype.isActive=function(){return this._active};var ia=function(){this.reset()};ia.prototype.reset=function(){this._active=!1,delete this._firstTwoTouches},ia.prototype._start=function(D){},ia.prototype._move=function(D,J,q){return{}},ia.prototype.touchstart=function(D,J,q){this._firstTwoTouches||q.length<2||(this._firstTwoTouches=[q[0].identifier,q[1].identifier],this._start([J[0],J[1]]))},ia.prototype.touchmove=function(D,J,q){if(this._firstTwoTouches){D.preventDefault();var K=this._firstTwoTouches,de=K[0],ne=K[1],we=Ea(q,J,de),Ue=Ea(q,J,ne);if(!(!we||!Ue)){var ft=this._aroundCenter?null:we.add(Ue).div(2);return this._move([we,Ue],ft,D)}}},ia.prototype.touchend=function(D,J,q){if(this._firstTwoTouches){var K=this._firstTwoTouches,de=K[0],ne=K[1],we=Ea(q,J,de),Ue=Ea(q,J,ne);we&&Ue||(this._active&&o.suppressClick(),this.reset())}},ia.prototype.touchcancel=function(){this.reset()},ia.prototype.enable=function(D){this._enabled=!0,this._aroundCenter=!!D&&D.around==="center"},ia.prototype.disable=function(){this._enabled=!1,this.reset()},ia.prototype.isEnabled=function(){return this._enabled},ia.prototype.isActive=function(){return this._active};function Ea(Y,D,J){for(var q=0;q<Y.length;q++)if(Y[q].identifier===J)return D[q]}var Ia=.1;function yo(Y,D){return Math.log(Y/D)/Math.LN2}var Da=function(Y){function D(){Y.apply(this,arguments)}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.reset=function(){Y.prototype.reset.call(this),delete this._distance,delete this._startDistance},D.prototype._start=function(q){this._startDistance=this._distance=q[0].dist(q[1])},D.prototype._move=function(q,K){var de=this._distance;if(this._distance=q[0].dist(q[1]),!(!this._active&&Math.abs(yo(this._distance,this._startDistance))<Ia))return this._active=!0,{zoomDelta:yo(this._distance,de),pinchAround:K}},D}(ia),go=25;function Rs(Y,D){return Y.angleWith(D)*180/Math.PI}var Es=function(Y){function D(){Y.apply(this,arguments)}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.reset=function(){Y.prototype.reset.call(this),delete this._minDiameter,delete this._startVector,delete this._vector},D.prototype._start=function(q){this._startVector=this._vector=q[0].sub(q[1]),this._minDiameter=q[0].dist(q[1])},D.prototype._move=function(q,K){var de=this._vector;if(this._vector=q[0].sub(q[1]),!(!this._active&&this._isBelowThreshold(this._vector)))return this._active=!0,{bearingDelta:Rs(this._vector,de),pinchAround:K}},D.prototype._isBelowThreshold=function(q){this._minDiameter=Math.min(this._minDiameter,q.mag());var K=Math.PI*this._minDiameter,de=go/K*360,ne=Rs(q,this._startVector);return Math.abs(ne)<de},D}(ia);function Zs(Y){return Math.abs(Y.y)>Math.abs(Y.x)}var Gn=100,Ha=function(Y){function D(){Y.apply(this,arguments)}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.reset=function(){Y.prototype.reset.call(this),this._valid=void 0,delete this._firstMove,delete this._lastPoints},D.prototype._start=function(q){this._lastPoints=q,Zs(q[0].sub(q[1]))&&(this._valid=!1)},D.prototype._move=function(q,K,de){var ne=q[0].sub(this._lastPoints[0]),we=q[1].sub(this._lastPoints[1]);if(this._valid=this.gestureBeginsVertically(ne,we,de.timeStamp),!!this._valid){this._lastPoints=q,this._active=!0;var Ue=(ne.y+we.y)/2,ft=-.5;return{pitchDelta:Ue*ft}}},D.prototype.gestureBeginsVertically=function(q,K,de){if(this._valid!==void 0)return this._valid;var ne=2,we=q.mag()>=ne,Ue=K.mag()>=ne;if(!(!we&&!Ue)){if(!we||!Ue)return this._firstMove===void 0&&(this._firstMove=de),de-this._firstMove<Gn?void 0:!1;var ft=q.y>0==K.y>0;return Zs(q)&&Zs(K)&&ft}},D}(ia),Fo={panStep:100,bearingStep:15,pitchStep:10},Uo=function(){var D=Fo;this._panStep=D.panStep,this._bearingStep=D.bearingStep,this._pitchStep=D.pitchStep,this._rotationDisabled=!1};Uo.prototype.reset=function(){this._active=!1},Uo.prototype.keydown=function(D){var J=this;if(!(D.altKey||D.ctrlKey||D.metaKey)){var q=0,K=0,de=0,ne=0,we=0;switch(D.keyCode){case 61:case 107:case 171:case 187:q=1;break;case 189:case 109:case 173:q=-1;break;case 37:D.shiftKey?K=-1:(D.preventDefault(),ne=-1);break;case 39:D.shiftKey?K=1:(D.preventDefault(),ne=1);break;case 38:D.shiftKey?de=1:(D.preventDefault(),we=-1);break;case 40:D.shiftKey?de=-1:(D.preventDefault(),we=1);break;default:return}return this._rotationDisabled&&(K=0,de=0),{cameraAnimation:function(Ue){var ft=Ue.getZoom();Ue.easeTo({duration:300,easeId:"keyboardHandler",easing:Qs,zoom:q?Math.round(ft)+q*(D.shiftKey?2:1):ft,bearing:Ue.getBearing()+K*J._bearingStep,pitch:Ue.getPitch()+de*J._pitchStep,offset:[-ne*J._panStep,-we*J._panStep],center:Ue.getCenter()},{originalEvent:D})}}}},Uo.prototype.enable=function(){this._enabled=!0},Uo.prototype.disable=function(){this._enabled=!1,this.reset()},Uo.prototype.isEnabled=function(){return this._enabled},Uo.prototype.isActive=function(){return this._active},Uo.prototype.disableRotation=function(){this._rotationDisabled=!0},Uo.prototype.enableRotation=function(){this._rotationDisabled=!1};function Qs(Y){return Y*(2-Y)}var Sl=4.000244140625,bu=1/100,vl=1/450,Sc=2,Ee=function(D,J){this._map=D,this._el=D.getCanvasContainer(),this._handler=J,this._delta=0,this._defaultZoomRate=bu,this._wheelZoomRate=vl,i.bindAll(["_onTimeout"],this)};Ee.prototype.setZoomRate=function(D){this._defaultZoomRate=D},Ee.prototype.setWheelZoomRate=function(D){this._wheelZoomRate=D},Ee.prototype.isEnabled=function(){return!!this._enabled},Ee.prototype.isActive=function(){return!!this._active||this._finishTimeout!==void 0},Ee.prototype.isZooming=function(){return!!this._zooming},Ee.prototype.enable=function(D){this.isEnabled()||(this._enabled=!0,this._aroundCenter=D&&D.around==="center")},Ee.prototype.disable=function(){this.isEnabled()&&(this._enabled=!1)},Ee.prototype.wheel=function(D){if(this.isEnabled()){var J=D.deltaMode===i.window.WheelEvent.DOM_DELTA_LINE?D.deltaY*40:D.deltaY,q=i.browser.now(),K=q-(this._lastWheelEventTime||0);this._lastWheelEventTime=q,J!==0&&J%Sl===0?this._type="wheel":J!==0&&Math.abs(J)<4?this._type="trackpad":K>400?(this._type=null,this._lastValue=J,this._timeout=setTimeout(this._onTimeout,40,D)):this._type||(this._type=Math.abs(K*J)<200?"trackpad":"wheel",this._timeout&&(clearTimeout(this._timeout),this._timeout=null,J+=this._lastValue)),D.shiftKey&&J&&(J=J/4),this._type&&(this._lastWheelEvent=D,this._delta-=J,this._active||this._start(D)),D.preventDefault()}},Ee.prototype._onTimeout=function(D){this._type="wheel",this._delta-=this._lastValue,this._active||this._start(D)},Ee.prototype._start=function(D){if(this._delta){this._frameId&&(this._frameId=null),this._active=!0,this.isZooming()||(this._zooming=!0),this._finishTimeout&&(clearTimeout(this._finishTimeout),delete this._finishTimeout);var J=o.mousePos(this._el,D);this._around=i.LngLat.convert(this._aroundCenter?this._map.getCenter():this._map.unproject(J)),this._aroundPoint=this._map.transform.locationPoint(this._around),this._frameId||(this._frameId=!0,this._handler._triggerRenderFrame())}},Ee.prototype.renderFrame=function(){var D=this;if(this._frameId&&(this._frameId=null,!!this.isActive())){var J=this._map.transform;if(this._delta!==0){var q=this._type==="wheel"&&Math.abs(this._delta)>Sl?this._wheelZoomRate:this._defaultZoomRate,K=Sc/(1+Math.exp(-Math.abs(this._delta*q)));this._delta<0&&K!==0&&(K=1/K);var de=typeof this._targetZoom=="number"?J.zoomScale(this._targetZoom):J.scale;this._targetZoom=Math.min(J.maxZoom,Math.max(J.minZoom,J.scaleZoom(de*K))),this._type==="wheel"&&(this._startZoom=J.zoom,this._easing=this._smoothOutEasing(200)),this._delta=0}var ne=typeof this._targetZoom=="number"?this._targetZoom:J.zoom,we=this._startZoom,Ue=this._easing,ft=!1,Zt;if(this._type==="wheel"&&we&&Ue){var hr=Math.min((i.browser.now()-this._lastWheelEventTime)/200,1),qt=Ue(hr);Zt=i.number(we,ne,qt),hr<1?this._frameId||(this._frameId=!0):ft=!0}else Zt=ne,ft=!0;return this._active=!0,ft&&(this._active=!1,this._finishTimeout=setTimeout(function(){D._zooming=!1,D._handler._triggerRenderFrame(),delete D._targetZoom,delete D._finishTimeout},200)),{noInertia:!0,needsRenderFrame:!ft,zoomDelta:Zt-J.zoom,around:this._aroundPoint,originalEvent:this._lastWheelEvent}}},Ee.prototype._smoothOutEasing=function(D){var J=i.ease;if(this._prevEase){var q=this._prevEase,K=(i.browser.now()-q.start)/q.duration,de=q.easing(K+.01)-q.easing(K),ne=.27/Math.sqrt(de*de+1e-4)*.01,we=Math.sqrt(.27*.27-ne*ne);J=i.bezier(ne,we,.25,1)}return this._prevEase={start:i.browser.now(),duration:D,easing:J},J},Ee.prototype.reset=function(){this._active=!1};var xt=function(D,J){this._clickZoom=D,this._tapZoom=J};xt.prototype.enable=function(){this._clickZoom.enable(),this._tapZoom.enable()},xt.prototype.disable=function(){this._clickZoom.disable(),this._tapZoom.disable()},xt.prototype.isEnabled=function(){return this._clickZoom.isEnabled()&&this._tapZoom.isEnabled()},xt.prototype.isActive=function(){return this._clickZoom.isActive()||this._tapZoom.isActive()};var zt=function(){this.reset()};zt.prototype.reset=function(){this._active=!1},zt.prototype.dblclick=function(D,J){return D.preventDefault(),{cameraAnimation:function(q){q.easeTo({duration:300,zoom:q.getZoom()+(D.shiftKey?-1:1),around:q.unproject(J)},{originalEvent:D})}}},zt.prototype.enable=function(){this._enabled=!0},zt.prototype.disable=function(){this._enabled=!1,this.reset()},zt.prototype.isEnabled=function(){return this._enabled},zt.prototype.isActive=function(){return this._active};var Ir=function(){this._tap=new _i({numTouches:1,numTaps:1}),this.reset()};Ir.prototype.reset=function(){this._active=!1,delete this._swipePoint,delete this._swipeTouch,delete this._tapTime,this._tap.reset()},Ir.prototype.touchstart=function(D,J,q){this._swipePoint||(this._tapTime&&D.timeStamp-this._tapTime>gr&&this.reset(),this._tapTime?q.length>0&&(this._swipePoint=J[0],this._swipeTouch=q[0].identifier):this._tap.touchstart(D,J,q))},Ir.prototype.touchmove=function(D,J,q){if(!this._tapTime)this._tap.touchmove(D,J,q);else if(this._swipePoint){if(q[0].identifier!==this._swipeTouch)return;var K=J[0],de=K.y-this._swipePoint.y;return this._swipePoint=K,D.preventDefault(),this._active=!0,{zoomDelta:de/128}}},Ir.prototype.touchend=function(D,J,q){if(this._tapTime)this._swipePoint&&q.length===0&&this.reset();else{var K=this._tap.touchend(D,J,q);K&&(this._tapTime=D.timeStamp)}},Ir.prototype.touchcancel=function(){this.reset()},Ir.prototype.enable=function(){this._enabled=!0},Ir.prototype.disable=function(){this._enabled=!1,this.reset()},Ir.prototype.isEnabled=function(){return this._enabled},Ir.prototype.isActive=function(){return this._active};var Hr=function(D,J,q){this._el=D,this._mousePan=J,this._touchPan=q};Hr.prototype.enable=function(D){this._inertiaOptions=D||{},this._mousePan.enable(),this._touchPan.enable(),this._el.classList.add("mapboxgl-touch-drag-pan")},Hr.prototype.disable=function(){this._mousePan.disable(),this._touchPan.disable(),this._el.classList.remove("mapboxgl-touch-drag-pan")},Hr.prototype.isEnabled=function(){return this._mousePan.isEnabled()&&this._touchPan.isEnabled()},Hr.prototype.isActive=function(){return this._mousePan.isActive()||this._touchPan.isActive()};var Br=function(D,J,q){this._pitchWithRotate=D.pitchWithRotate,this._mouseRotate=J,this._mousePitch=q};Br.prototype.enable=function(){this._mouseRotate.enable(),this._pitchWithRotate&&this._mousePitch.enable()},Br.prototype.disable=function(){this._mouseRotate.disable(),this._mousePitch.disable()},Br.prototype.isEnabled=function(){return this._mouseRotate.isEnabled()&&(!this._pitchWithRotate||this._mousePitch.isEnabled())},Br.prototype.isActive=function(){return this._mouseRotate.isActive()||this._mousePitch.isActive()};var Vr=function(D,J,q,K){this._el=D,this._touchZoom=J,this._touchRotate=q,this._tapDragZoom=K,this._rotationDisabled=!1,this._enabled=!0};Vr.prototype.enable=function(D){this._touchZoom.enable(D),this._rotationDisabled||this._touchRotate.enable(D),this._tapDragZoom.enable(),this._el.classList.add("mapboxgl-touch-zoom-rotate")},Vr.prototype.disable=function(){this._touchZoom.disable(),this._touchRotate.disable(),this._tapDragZoom.disable(),this._el.classList.remove("mapboxgl-touch-zoom-rotate")},Vr.prototype.isEnabled=function(){return this._touchZoom.isEnabled()&&(this._rotationDisabled||this._touchRotate.isEnabled())&&this._tapDragZoom.isEnabled()},Vr.prototype.isActive=function(){return this._touchZoom.isActive()||this._touchRotate.isActive()||this._tapDragZoom.isActive()},Vr.prototype.disableRotation=function(){this._rotationDisabled=!0,this._touchRotate.disable()},Vr.prototype.enableRotation=function(){this._rotationDisabled=!1,this._touchZoom.isEnabled()&&this._touchRotate.enable()};var mi=function(Y){return Y.zoom||Y.drag||Y.pitch||Y.rotate},Ni=function(Y){function D(){Y.apply(this,arguments)}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D}(i.Event);function Oi(Y){return Y.panDelta&&Y.panDelta.mag()||Y.zoomDelta||Y.bearingDelta||Y.pitchDelta}var Mi=function(D,J){this._map=D,this._el=this._map.getCanvasContainer(),this._handlers=[],this._handlersById={},this._changes=[],this._inertia=new Tl(D),this._bearingSnap=J.bearingSnap,this._previousActiveHandlers={},this._eventsInProgress={},this._addDefaultHandlers(J),i.bindAll(["handleEvent","handleWindowEvent"],this);var q=this._el;this._listeners=[[q,"touchstart",{passive:!0}],[q,"touchmove",{passive:!1}],[q,"touchend",void 0],[q,"touchcancel",void 0],[q,"mousedown",void 0],[q,"mousemove",void 0],[q,"mouseup",void 0],[i.window.document,"mousemove",{capture:!0}],[i.window.document,"mouseup",void 0],[q,"mouseover",void 0],[q,"mouseout",void 0],[q,"dblclick",void 0],[q,"click",void 0],[q,"keydown",{capture:!1}],[q,"keyup",void 0],[q,"wheel",{passive:!1}],[q,"contextmenu",void 0],[i.window,"blur",void 0]];for(var K=0,de=this._listeners;K<de.length;K+=1){var ne=de[K],we=ne[0],Ue=ne[1],ft=ne[2];o.addEventListener(we,Ue,we===i.window.document?this.handleWindowEvent:this.handleEvent,ft)}};Mi.prototype.destroy=function(){for(var D=0,J=this._listeners;D<J.length;D+=1){var q=J[D],K=q[0],de=q[1],ne=q[2];o.removeEventListener(K,de,K===i.window.document?this.handleWindowEvent:this.handleEvent,ne)}},Mi.prototype._addDefaultHandlers=function(D){var J=this._map,q=J.getCanvasContainer();this._add("mapEvent",new He(J,D));var K=J.boxZoom=new Ct(J,D);this._add("boxZoom",K);var de=new bi,ne=new zt;J.doubleClickZoom=new xt(ne,de),this._add("tapZoom",de),this._add("clickZoom",ne);var we=new Ir;this._add("tapDragZoom",we);var Ue=J.touchPitch=new Ha;this._add("touchPitch",Ue);var ft=new Rn(D),Zt=new Cn(D);J.dragRotate=new Br(D,ft,Zt),this._add("mouseRotate",ft,["mousePitch"]),this._add("mousePitch",Zt,["mouseRotate"]);var hr=new ti(D),qt=new Nn(D);J.dragPan=new Hr(q,hr,qt),this._add("mousePan",hr),this._add("touchPan",qt,["touchZoom","touchRotate"]);var Ve=new Es,et=new Da;J.touchZoomRotate=new Vr(q,et,Ve,we),this._add("touchRotate",Ve,["touchPan","touchZoom"]),this._add("touchZoom",et,["touchPan","touchRotate"]);var at=J.scrollZoom=new Ee(J,this);this._add("scrollZoom",at,["mousePan"]);var kt=J.keyboard=new Uo;this._add("keyboard",kt),this._add("blockableMapEvent",new Ye(J));for(var Ot=0,It=["boxZoom","doubleClickZoom","tapDragZoom","touchPitch","dragRotate","dragPan","touchZoomRotate","scrollZoom","keyboard"];Ot<It.length;Ot+=1){var Bt=It[Ot];D.interactive&&D[Bt]&&J[Bt].enable(D[Bt])}},Mi.prototype._add=function(D,J,q){this._handlers.push({handlerName:D,handler:J,allowed:q}),this._handlersById[D]=J},Mi.prototype.stop=function(D){if(!this._updatingCamera){for(var J=0,q=this._handlers;J<q.length;J+=1){var K=q[J],de=K.handler;de.reset()}this._inertia.clear(),this._fireEvents({},{},D),this._changes=[]}},Mi.prototype.isActive=function(){for(var D=0,J=this._handlers;D<J.length;D+=1){var q=J[D],K=q.handler;if(K.isActive())return!0}return!1},Mi.prototype.isZooming=function(){return!!this._eventsInProgress.zoom||this._map.scrollZoom.isZooming()},Mi.prototype.isRotating=function(){return!!this._eventsInProgress.rotate},Mi.prototype.isMoving=function(){return!!mi(this._eventsInProgress)||this.isZooming()},Mi.prototype._blockedByActive=function(D,J,q){for(var K in D)if(K!==q&&(!J||J.indexOf(K)<0))return!0;return!1},Mi.prototype.handleWindowEvent=function(D){this.handleEvent(D,D.type+"Window")},Mi.prototype._getMapTouches=function(D){for(var J=[],q=0,K=D;q<K.length;q+=1){var de=K[q],ne=de.target;this._el.contains(ne)&&J.push(de)}return J},Mi.prototype.handleEvent=function(D,J){if(D.type==="blur"){this.stop(!0);return}this._updatingCamera=!0;for(var q=D.type==="renderFrame"?void 0:D,K={needsRenderFrame:!1},de={},ne={},we=D.touches?this._getMapTouches(D.touches):void 0,Ue=we?o.touchPos(this._el,we):o.mousePos(this._el,D),ft=0,Zt=this._handlers;ft<Zt.length;ft+=1){var hr=Zt[ft],qt=hr.handlerName,Ve=hr.handler,et=hr.allowed;if(Ve.isEnabled()){var at=void 0;this._blockedByActive(ne,et,qt)?Ve.reset():Ve[J||D.type]&&(at=Ve[J||D.type](D,Ue,we),this.mergeHandlerResult(K,de,at,qt,q),at&&at.needsRenderFrame&&this._triggerRenderFrame()),(at||Ve.isActive())&&(ne[qt]=Ve)}}var kt={};for(var Ot in this._previousActiveHandlers)ne[Ot]||(kt[Ot]=q);this._previousActiveHandlers=ne,(Object.keys(kt).length||Oi(K))&&(this._changes.push([K,de,kt]),this._triggerRenderFrame()),(Object.keys(ne).length||Oi(K))&&this._map._stop(!0),this._updatingCamera=!1;var It=K.cameraAnimation;It&&(this._inertia.clear(),this._fireEvents({},{},!0),this._changes=[],It(this._map))},Mi.prototype.mergeHandlerResult=function(D,J,q,K,de){if(q){i.extend(D,q);var ne={handlerName:K,originalEvent:q.originalEvent||de};q.zoomDelta!==void 0&&(J.zoom=ne),q.panDelta!==void 0&&(J.drag=ne),q.pitchDelta!==void 0&&(J.pitch=ne),q.bearingDelta!==void 0&&(J.rotate=ne)}},Mi.prototype._applyChanges=function(){for(var D={},J={},q={},K=0,de=this._changes;K<de.length;K+=1){var ne=de[K],we=ne[0],Ue=ne[1],ft=ne[2];we.panDelta&&(D.panDelta=(D.panDelta||new i.Point(0,0))._add(we.panDelta)),we.zoomDelta&&(D.zoomDelta=(D.zoomDelta||0)+we.zoomDelta),we.bearingDelta&&(D.bearingDelta=(D.bearingDelta||0)+we.bearingDelta),we.pitchDelta&&(D.pitchDelta=(D.pitchDelta||0)+we.pitchDelta),we.around!==void 0&&(D.around=we.around),we.pinchAround!==void 0&&(D.pinchAround=we.pinchAround),we.noInertia&&(D.noInertia=we.noInertia),i.extend(J,Ue),i.extend(q,ft)}this._updateMapTransform(D,J,q),this._changes=[]},Mi.prototype._updateMapTransform=function(D,J,q){var K=this._map,de=K.transform;if(!Oi(D))return this._fireEvents(J,q,!0);var ne=D.panDelta,we=D.zoomDelta,Ue=D.bearingDelta,ft=D.pitchDelta,Zt=D.around,hr=D.pinchAround;hr!==void 0&&(Zt=hr),K._stop(!0),Zt=Zt||K.transform.centerPoint;var qt=de.pointLocation(ne?Zt.sub(ne):Zt);Ue&&(de.bearing+=Ue),ft&&(de.pitch+=ft),we&&(de.zoom+=we),de.setLocationAtPoint(qt,Zt),this._map._update(),D.noInertia||this._inertia.record(D),this._fireEvents(J,q,!0)},Mi.prototype._fireEvents=function(D,J,q){var K=this,de=mi(this._eventsInProgress),ne=mi(D),we={};for(var Ue in D){var ft=D[Ue],Zt=ft.originalEvent;this._eventsInProgress[Ue]||(we[Ue+"start"]=Zt),this._eventsInProgress[Ue]=D[Ue]}!de&&ne&&this._fireEvent("movestart",ne.originalEvent);for(var hr in we)this._fireEvent(hr,we[hr]);ne&&this._fireEvent("move",ne.originalEvent);for(var qt in D){var Ve=D[qt],et=Ve.originalEvent;this._fireEvent(qt,et)}var at={},kt;for(var Ot in this._eventsInProgress){var It=this._eventsInProgress[Ot],Bt=It.handlerName,Rt=It.originalEvent;this._handlersById[Bt].isActive()||(delete this._eventsInProgress[Ot],kt=J[Bt]||Rt,at[Ot+"end"]=kt)}for(var mt in at)this._fireEvent(mt,at[mt]);var Pt=mi(this._eventsInProgress);if(q&&(de||ne)&&!Pt){this._updatingCamera=!0;var ht=this._inertia._onMoveEnd(this._map.dragPan._inertiaOptions),cr=function(br){return br!==0&&-K._bearingSnap<br&&br<K._bearingSnap};ht?(cr(ht.bearing||this._map.getBearing())&&(ht.bearing=0),this._map.easeTo(ht,{originalEvent:kt})):(this._map.fire(new i.Event("moveend",{originalEvent:kt})),cr(this._map.getBearing())&&this._map.resetNorth()),this._updatingCamera=!1}},Mi.prototype._fireEvent=function(D,J){this._map.fire(new i.Event(D,J?{originalEvent:J}:{}))},Mi.prototype._requestFrame=function(){var D=this;return this._map.triggerRepaint(),this._map._renderTaskQueue.add(function(J){delete D._frameId,D.handleEvent(new Ni("renderFrame",{timeStamp:J})),D._applyChanges()})},Mi.prototype._triggerRenderFrame=function(){this._frameId===void 0&&(this._frameId=this._requestFrame())};var Hn=function(Y){function D(J,q){Y.call(this),this._moving=!1,this._zooming=!1,this.transform=J,this._bearingSnap=q.bearingSnap,i.bindAll(["_renderFrameCallback"],this)}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.getCenter=function(){return new i.LngLat(this.transform.center.lng,this.transform.center.lat)},D.prototype.setCenter=function(q,K){return this.jumpTo({center:q},K)},D.prototype.panBy=function(q,K,de){return q=i.Point.convert(q).mult(-1),this.panTo(this.transform.center,i.extend({offset:q},K),de)},D.prototype.panTo=function(q,K,de){return this.easeTo(i.extend({center:q},K),de)},D.prototype.getZoom=function(){return this.transform.zoom},D.prototype.setZoom=function(q,K){return this.jumpTo({zoom:q},K),this},D.prototype.zoomTo=function(q,K,de){return this.easeTo(i.extend({zoom:q},K),de)},D.prototype.zoomIn=function(q,K){return this.zoomTo(this.getZoom()+1,q,K),this},D.prototype.zoomOut=function(q,K){return this.zoomTo(this.getZoom()-1,q,K),this},D.prototype.getBearing=function(){return this.transform.bearing},D.prototype.setBearing=function(q,K){return this.jumpTo({bearing:q},K),this},D.prototype.getPadding=function(){return this.transform.padding},D.prototype.setPadding=function(q,K){return this.jumpTo({padding:q},K),this},D.prototype.rotateTo=function(q,K,de){return this.easeTo(i.extend({bearing:q},K),de)},D.prototype.resetNorth=function(q,K){return this.rotateTo(0,i.extend({duration:1e3},q),K),this},D.prototype.resetNorthPitch=function(q,K){return this.easeTo(i.extend({bearing:0,pitch:0,duration:1e3},q),K),this},D.prototype.snapToNorth=function(q,K){return Math.abs(this.getBearing())<this._bearingSnap?this.resetNorth(q,K):this},D.prototype.getPitch=function(){return this.transform.pitch},D.prototype.setPitch=function(q,K){return this.jumpTo({pitch:q},K),this},D.prototype.cameraForBounds=function(q,K){q=i.LngLatBounds.convert(q);var de=K&&K.bearing||0;return this._cameraForBoxAndBearing(q.getNorthWest(),q.getSouthEast(),de,K)},D.prototype._cameraForBoxAndBearing=function(q,K,de,ne){var we={top:0,bottom:0,right:0,left:0};if(ne=i.extend({padding:we,offset:[0,0],maxZoom:this.transform.maxZoom},ne),typeof ne.padding=="number"){var Ue=ne.padding;ne.padding={top:Ue,bottom:Ue,right:Ue,left:Ue}}ne.padding=i.extend(we,ne.padding);var ft=this.transform,Zt=ft.padding,hr=ft.project(i.LngLat.convert(q)),qt=ft.project(i.LngLat.convert(K)),Ve=hr.rotate(-de*Math.PI/180),et=qt.rotate(-de*Math.PI/180),at=new i.Point(Math.max(Ve.x,et.x),Math.max(Ve.y,et.y)),kt=new i.Point(Math.min(Ve.x,et.x),Math.min(Ve.y,et.y)),Ot=at.sub(kt),It=(ft.width-(Zt.left+Zt.right+ne.padding.left+ne.padding.right))/Ot.x,Bt=(ft.height-(Zt.top+Zt.bottom+ne.padding.top+ne.padding.bottom))/Ot.y;if(Bt<0||It<0){i.warnOnce("Map cannot fit within canvas with the given bounds, padding, and/or offset.");return}var Rt=Math.min(ft.scaleZoom(ft.scale*Math.min(It,Bt)),ne.maxZoom),mt=typeof ne.offset.x=="number"?new i.Point(ne.offset.x,ne.offset.y):i.Point.convert(ne.offset),Pt=(ne.padding.left-ne.padding.right)/2,ht=(ne.padding.top-ne.padding.bottom)/2,cr=new i.Point(Pt,ht),br=cr.rotate(de*Math.PI/180),Nr=mt.add(br),Ri=Nr.mult(ft.scale/ft.zoomScale(Rt)),hi=ft.unproject(hr.add(qt).div(2).sub(Ri));return{center:hi,zoom:Rt,bearing:de}},D.prototype.fitBounds=function(q,K,de){return this._fitInternal(this.cameraForBounds(q,K),K,de)},D.prototype.fitScreenCoordinates=function(q,K,de,ne,we){return this._fitInternal(this._cameraForBoxAndBearing(this.transform.pointLocation(i.Point.convert(q)),this.transform.pointLocation(i.Point.convert(K)),de,ne),ne,we)},D.prototype._fitInternal=function(q,K,de){return q?(K=i.extend(q,K),delete K.padding,K.linear?this.easeTo(K,de):this.flyTo(K,de)):this},D.prototype.jumpTo=function(q,K){this.stop();var de=this.transform,ne=!1,we=!1,Ue=!1;return"zoom"in q&&de.zoom!==+q.zoom&&(ne=!0,de.zoom=+q.zoom),q.center!==void 0&&(de.center=i.LngLat.convert(q.center)),"bearing"in q&&de.bearing!==+q.bearing&&(we=!0,de.bearing=+q.bearing),"pitch"in q&&de.pitch!==+q.pitch&&(Ue=!0,de.pitch=+q.pitch),q.padding!=null&&!de.isPaddingEqual(q.padding)&&(de.padding=q.padding),this.fire(new i.Event("movestart",K)).fire(new i.Event("move",K)),ne&&this.fire(new i.Event("zoomstart",K)).fire(new i.Event("zoom",K)).fire(new i.Event("zoomend",K)),we&&this.fire(new i.Event("rotatestart",K)).fire(new i.Event("rotate",K)).fire(new i.Event("rotateend",K)),Ue&&this.fire(new i.Event("pitchstart",K)).fire(new i.Event("pitch",K)).fire(new i.Event("pitchend",K)),this.fire(new i.Event("moveend",K))},D.prototype.easeTo=function(q,K){var de=this;this._stop(!1,q.easeId),q=i.extend({offset:[0,0],duration:500,easing:i.ease},q),(q.animate===!1||!q.essential&&i.browser.prefersReducedMotion)&&(q.duration=0);var ne=this.transform,we=this.getZoom(),Ue=this.getBearing(),ft=this.getPitch(),Zt=this.getPadding(),hr="zoom"in q?+q.zoom:we,qt="bearing"in q?this._normalizeBearing(q.bearing,Ue):Ue,Ve="pitch"in q?+q.pitch:ft,et="padding"in q?q.padding:ne.padding,at=i.Point.convert(q.offset),kt=ne.centerPoint.add(at),Ot=ne.pointLocation(kt),It=i.LngLat.convert(q.center||Ot);this._normalizeCenter(It);var Bt=ne.project(Ot),Rt=ne.project(It).sub(Bt),mt=ne.zoomScale(hr-we),Pt,ht;q.around&&(Pt=i.LngLat.convert(q.around),ht=ne.locationPoint(Pt));var cr={moving:this._moving,zooming:this._zooming,rotating:this._rotating,pitching:this._pitching};return this._zooming=this._zooming||hr!==we,this._rotating=this._rotating||Ue!==qt,this._pitching=this._pitching||Ve!==ft,this._padding=!ne.isPaddingEqual(et),this._easeId=q.easeId,this._prepareEase(K,q.noMoveStart,cr),this._ease(function(br){if(de._zooming&&(ne.zoom=i.number(we,hr,br)),de._rotating&&(ne.bearing=i.number(Ue,qt,br)),de._pitching&&(ne.pitch=i.number(ft,Ve,br)),de._padding&&(ne.interpolatePadding(Zt,et,br),kt=ne.centerPoint.add(at)),Pt)ne.setLocationAtPoint(Pt,ht);else{var Nr=ne.zoomScale(ne.zoom-we),Ri=hr>we?Math.min(2,mt):Math.max(.5,mt),hi=Math.pow(Ri,1-br),wi=ne.unproject(Bt.add(Rt.mult(br*hi)).mult(Nr));ne.setLocationAtPoint(ne.renderWorldCopies?wi.wrap():wi,kt)}de._fireMoveEvents(K)},function(br){de._afterEase(K,br)},q),this},D.prototype._prepareEase=function(q,K,de){de===void 0&&(de={}),this._moving=!0,!K&&!de.moving&&this.fire(new i.Event("movestart",q)),this._zooming&&!de.zooming&&this.fire(new i.Event("zoomstart",q)),this._rotating&&!de.rotating&&this.fire(new i.Event("rotatestart",q)),this._pitching&&!de.pitching&&this.fire(new i.Event("pitchstart",q))},D.prototype._fireMoveEvents=function(q){this.fire(new i.Event("move",q)),this._zooming&&this.fire(new i.Event("zoom",q)),this._rotating&&this.fire(new i.Event("rotate",q)),this._pitching&&this.fire(new i.Event("pitch",q))},D.prototype._afterEase=function(q,K){if(!(this._easeId&&K&&this._easeId===K)){delete this._easeId;var de=this._zooming,ne=this._rotating,we=this._pitching;this._moving=!1,this._zooming=!1,this._rotating=!1,this._pitching=!1,this._padding=!1,de&&this.fire(new i.Event("zoomend",q)),ne&&this.fire(new i.Event("rotateend",q)),we&&this.fire(new i.Event("pitchend",q)),this.fire(new i.Event("moveend",q))}},D.prototype.flyTo=function(q,K){var de=this;if(!q.essential&&i.browser.prefersReducedMotion){var ne=i.pick(q,["center","zoom","bearing","pitch","around"]);return this.jumpTo(ne,K)}this.stop(),q=i.extend({offset:[0,0],speed:1.2,curve:1.42,easing:i.ease},q);var we=this.transform,Ue=this.getZoom(),ft=this.getBearing(),Zt=this.getPitch(),hr=this.getPadding(),qt="zoom"in q?i.clamp(+q.zoom,we.minZoom,we.maxZoom):Ue,Ve="bearing"in q?this._normalizeBearing(q.bearing,ft):ft,et="pitch"in q?+q.pitch:Zt,at="padding"in q?q.padding:we.padding,kt=we.zoomScale(qt-Ue),Ot=i.Point.convert(q.offset),It=we.centerPoint.add(Ot),Bt=we.pointLocation(It),Rt=i.LngLat.convert(q.center||Bt);this._normalizeCenter(Rt);var mt=we.project(Bt),Pt=we.project(Rt).sub(mt),ht=q.curve,cr=Math.max(we.width,we.height),br=cr/kt,Nr=Pt.mag();if("minZoom"in q){var Ri=i.clamp(Math.min(q.minZoom,Ue,qt),we.minZoom,we.maxZoom),hi=cr/we.zoomScale(Ri-Ue);ht=Math.sqrt(hi/Nr*2)}var wi=ht*ht;function gn(so){var Zo=(br*br-cr*cr+(so?-1:1)*wi*wi*Nr*Nr)/(2*(so?br:cr)*wi*Nr);return Math.log(Math.sqrt(Zo*Zo+1)-Zo)}function tn(so){return(Math.exp(so)-Math.exp(-so))/2}function Ci(so){return(Math.exp(so)+Math.exp(-so))/2}function qi(so){return tn(so)/Ci(so)}var Vi=gn(0),on=function(so){return Ci(Vi)/Ci(Vi+ht*so)},On=function(so){return cr*((Ci(Vi)*qi(Vi+ht*so)-tn(Vi))/wi)/Nr},Ja=(gn(1)-Vi)/ht;if(Math.abs(Nr)<1e-6||!isFinite(Ja)){if(Math.abs(cr-br)<1e-6)return this.easeTo(q,K);var co=br<cr?-1:1;Ja=Math.abs(Math.log(br/cr))/ht,On=function(){return 0},on=function(so){return Math.exp(co*ht*so)}}if("duration"in q)q.duration=+q.duration;else{var rs="screenSpeed"in q?+q.screenSpeed/ht:+q.speed;q.duration=1e3*Ja/rs}return q.maxDuration&&q.duration>q.maxDuration&&(q.duration=0),this._zooming=!0,this._rotating=ft!==Ve,this._pitching=et!==Zt,this._padding=!we.isPaddingEqual(at),this._prepareEase(K,!1),this._ease(function(so){var Zo=so*Ja,ys=1/on(Zo);we.zoom=so===1?qt:Ue+we.scaleZoom(ys),de._rotating&&(we.bearing=i.number(ft,Ve,so)),de._pitching&&(we.pitch=i.number(Zt,et,so)),de._padding&&(we.interpolatePadding(hr,at,so),It=we.centerPoint.add(Ot));var su=so===1?Rt:we.unproject(mt.add(Pt.mult(On(Zo))).mult(ys));we.setLocationAtPoint(we.renderWorldCopies?su.wrap():su,It),de._fireMoveEvents(K)},function(){return de._afterEase(K)},q),this},D.prototype.isEasing=function(){return!!this._easeFrameId},D.prototype.stop=function(){return this._stop()},D.prototype._stop=function(q,K){if(this._easeFrameId&&(this._cancelRenderFrame(this._easeFrameId),delete this._easeFrameId,delete this._onEaseFrame),this._onEaseEnd){var de=this._onEaseEnd;delete this._onEaseEnd,de.call(this,K)}if(!q){var ne=this.handlers;ne&&ne.stop(!1)}return this},D.prototype._ease=function(q,K,de){de.animate===!1||de.duration===0?(q(1),K()):(this._easeStart=i.browser.now(),this._easeOptions=de,this._onEaseFrame=q,this._onEaseEnd=K,this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback))},D.prototype._renderFrameCallback=function(){var q=Math.min((i.browser.now()-this._easeStart)/this._easeOptions.duration,1);this._onEaseFrame(this._easeOptions.easing(q)),q<1?this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback):this.stop()},D.prototype._normalizeBearing=function(q,K){q=i.wrap(q,-180,180);var de=Math.abs(q-K);return Math.abs(q-360-K)<de&&(q-=360),Math.abs(q+360-K)<de&&(q+=360),q},D.prototype._normalizeCenter=function(q){var K=this.transform;if(!(!K.renderWorldCopies||K.lngRange)){var de=q.lng-K.center.lng;q.lng+=de>180?-360:de<-180?360:0}},D}(i.Evented),Qi=function(D){D===void 0&&(D={}),this.options=D,i.bindAll(["_toggleAttribution","_updateEditLink","_updateData","_updateCompact"],this)};Qi.prototype.getDefaultPosition=function(){return"bottom-right"},Qi.prototype.onAdd=function(D){var J=this.options&&this.options.compact;return this._map=D,this._container=o.create("div","mapboxgl-ctrl mapboxgl-ctrl-attrib"),this._compactButton=o.create("button","mapboxgl-ctrl-attrib-button",this._container),this._compactButton.addEventListener("click",this._toggleAttribution),this._setElementTitle(this._compactButton,"ToggleAttribution"),this._innerContainer=o.create("div","mapboxgl-ctrl-attrib-inner",this._container),this._innerContainer.setAttribute("role","list"),J&&this._container.classList.add("mapboxgl-compact"),this._updateAttributions(),this._updateEditLink(),this._map.on("styledata",this._updateData),this._map.on("sourcedata",this._updateData),this._map.on("moveend",this._updateEditLink),J===void 0&&(this._map.on("resize",this._updateCompact),this._updateCompact()),this._container},Qi.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},Qi.prototype._setElementTitle=function(D,J){var q=this._map._getUIString("AttributionControl."+J);D.title=q,D.setAttribute("aria-label",q)},Qi.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"))},Qi.prototype._updateEditLink=function(){var D=this._editLink;D||(D=this._editLink=this._container.querySelector(".mapbox-improve-map"));var J=[{key:"owner",value:this.styleOwner},{key:"id",value:this.styleId},{key:"access_token",value:this._map._requestManager._customAccessToken||i.config.ACCESS_TOKEN}];if(D){var q=J.reduce(function(K,de,ne){return de.value&&(K+=de.key+"="+de.value+(ne<J.length-1?"&":"")),K},"?");D.href=i.config.FEEDBACK_URL+"/"+q+(this._map._hash?this._map._hash.getHashString(!0):""),D.rel="noopener nofollow",this._setElementTitle(D,"MapFeedback")}},Qi.prototype._updateData=function(D){D&&(D.sourceDataType==="metadata"||D.sourceDataType==="visibility"||D.dataType==="style")&&(this._updateAttributions(),this._updateEditLink())},Qi.prototype._updateAttributions=function(){if(this._map.style){var D=[];if(this.options.customAttribution&&(Array.isArray(this.options.customAttribution)?D=D.concat(this.options.customAttribution.map(function(Ue){return typeof Ue!="string"?"":Ue})):typeof this.options.customAttribution=="string"&&D.push(this.options.customAttribution)),this._map.style.stylesheet){var J=this._map.style.stylesheet;this.styleOwner=J.owner,this.styleId=J.id}var q=this._map.style.sourceCaches;for(var K in q){var de=q[K];if(de.used){var ne=de.getSource();ne.attribution&&D.indexOf(ne.attribution)<0&&D.push(ne.attribution)}}D.sort(function(Ue,ft){return Ue.length-ft.length}),D=D.filter(function(Ue,ft){for(var Zt=ft+1;Zt<D.length;Zt++)if(D[Zt].indexOf(Ue)>=0)return!1;return!0});var we=D.join(" | ");we!==this._attribHTML&&(this._attribHTML=we,D.length?(this._innerContainer.innerHTML=we,this._container.classList.remove("mapboxgl-attrib-empty")):this._container.classList.add("mapboxgl-attrib-empty"),this._editLink=null)}},Qi.prototype._updateCompact=function(){this._map.getCanvasContainer().offsetWidth<=640?this._container.classList.add("mapboxgl-compact"):this._container.classList.remove("mapboxgl-compact","mapboxgl-compact-show")};var ji=function(){i.bindAll(["_updateLogo"],this),i.bindAll(["_updateCompact"],this)};ji.prototype.onAdd=function(D){this._map=D,this._container=o.create("div","mapboxgl-ctrl");var J=o.create("a","mapboxgl-ctrl-logo");return J.target="_blank",J.rel="noopener nofollow",J.href="https://www.mapbox.com/",J.setAttribute("aria-label",this._map._getUIString("LogoControl.Title")),J.setAttribute("rel","noopener nofollow"),this._container.appendChild(J),this._container.style.display="none",this._map.on("sourcedata",this._updateLogo),this._updateLogo(),this._map.on("resize",this._updateCompact),this._updateCompact(),this._container},ji.prototype.onRemove=function(){o.remove(this._container),this._map.off("sourcedata",this._updateLogo),this._map.off("resize",this._updateCompact)},ji.prototype.getDefaultPosition=function(){return"bottom-left"},ji.prototype._updateLogo=function(D){(!D||D.sourceDataType==="metadata")&&(this._container.style.display=this._logoRequired()?"block":"none")},ji.prototype._logoRequired=function(){if(this._map.style){var D=this._map.style.sourceCaches;for(var J in D){var q=D[J].getSource();if(q.mapbox_logo)return!0}return!1}},ji.prototype._updateCompact=function(){var D=this._container.children;if(D.length){var J=D[0];this._map.getCanvasContainer().offsetWidth<250?J.classList.add("mapboxgl-compact"):J.classList.remove("mapboxgl-compact")}};var si=function(){this._queue=[],this._id=0,this._cleared=!1,this._currentlyRunning=!1};si.prototype.add=function(D){var J=++this._id,q=this._queue;return q.push({callback:D,id:J,cancelled:!1}),J},si.prototype.remove=function(D){for(var J=this._currentlyRunning,q=J?this._queue.concat(J):this._queue,K=0,de=q;K<de.length;K+=1){var ne=de[K];if(ne.id===D){ne.cancelled=!0;return}}},si.prototype.run=function(D){D===void 0&&(D=0);var J=this._currentlyRunning=this._queue;this._queue=[];for(var q=0,K=J;q<K.length;q+=1){var de=K[q];if(!de.cancelled&&(de.callback(D),this._cleared))break}this._cleared=!1,this._currentlyRunning=!1},si.prototype.clear=function(){this._currentlyRunning&&(this._cleared=!0),this._queue=[]};var Mr={"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"},Yr=i.window.HTMLImageElement,xi=i.window.HTMLElement,Ii=i.window.ImageBitmap,ci=-2,nn=22,Xi=0,qn=60,vi={center:[0,0],zoom:0,bearing:0,pitch:0,minZoom:ci,maxZoom:nn,minPitch:Xi,maxPitch:qn,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},li=function(Y){function D(q){var K=this;if(q=i.extend({},vi,q),q.minZoom!=null&&q.maxZoom!=null&&q.minZoom>q.maxZoom)throw new Error("maxZoom must be greater than or equal to minZoom");if(q.minPitch!=null&&q.maxPitch!=null&&q.minPitch>q.maxPitch)throw new Error("maxPitch must be greater than or equal to minPitch");if(q.minPitch!=null&&q.minPitch<Xi)throw new Error("minPitch must be greater than or equal to "+Xi);if(q.maxPitch!=null&&q.maxPitch>qn)throw new Error("maxPitch must be less than or equal to "+qn);var de=new wo(q.minZoom,q.maxZoom,q.minPitch,q.maxPitch,q.renderWorldCopies);if(Y.call(this,de,q),this._interactive=q.interactive,this._maxTileCacheSize=q.maxTileCacheSize,this._failIfMajorPerformanceCaveat=q.failIfMajorPerformanceCaveat,this._preserveDrawingBuffer=q.preserveDrawingBuffer,this._antialias=q.antialias,this._trackResize=q.trackResize,this._bearingSnap=q.bearingSnap,this._refreshExpiredTiles=q.refreshExpiredTiles,this._fadeDuration=q.fadeDuration,this._crossSourceCollisions=q.crossSourceCollisions,this._crossFadingFactor=1,this._collectResourceTiming=q.collectResourceTiming,this._renderTaskQueue=new si,this._controls=[],this._mapId=i.uniqueId(),this._locale=i.extend({},Mr,q.locale),this._clickTolerance=q.clickTolerance,this._requestManager=new i.RequestManager(q.transformRequest,q.accessToken),typeof q.container=="string"){if(this._container=i.window.document.getElementById(q.container),!this._container)throw new Error("Container '"+q.container+"' not found.")}else if(q.container instanceof xi)this._container=q.container;else throw new Error("Invalid type: 'container' must be a String or HTMLElement.");if(q.maxBounds&&this.setMaxBounds(q.maxBounds),i.bindAll(["_onWindowOnline","_onWindowResize","_onMapScroll","_contextLost","_contextRestored"],this),this._setupContainer(),this._setupPainter(),this.painter===void 0)throw new Error("Failed to initialize WebGL.");this.on("move",function(){return K._update(!1)}),this.on("moveend",function(){return K._update(!1)}),this.on("zoom",function(){return K._update(!0)}),typeof i.window!="undefined"&&(i.window.addEventListener("online",this._onWindowOnline,!1),i.window.addEventListener("resize",this._onWindowResize,!1),i.window.addEventListener("orientationchange",this._onWindowResize,!1)),this.handlers=new Mi(this,q);var ne=typeof q.hash=="string"&&q.hash||void 0;this._hash=q.hash&&new Nl(ne).addTo(this),(!this._hash||!this._hash._onHashChange())&&(this.jumpTo({center:q.center,zoom:q.zoom,bearing:q.bearing,pitch:q.pitch}),q.bounds&&(this.resize(),this.fitBounds(q.bounds,i.extend({},q.fitBoundsOptions,{duration:0})))),this.resize(),this._localIdeographFontFamily=q.localIdeographFontFamily,q.style&&this.setStyle(q.style,{localIdeographFontFamily:q.localIdeographFontFamily}),q.attributionControl&&this.addControl(new Qi({customAttribution:q.customAttribution})),this.addControl(new ji,q.logoPosition),this.on("style.load",function(){K.transform.unmodified&&K.jumpTo(K.style.stylesheet)}),this.on("data",function(we){K._update(we.dataType==="style"),K.fire(new i.Event(we.dataType+"data",we))}),this.on("dataloading",function(we){K.fire(new i.Event(we.dataType+"dataloading",we))})}Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D;var J={showTileBoundaries:{configurable:!0},showPadding:{configurable:!0},showCollisionBoxes:{configurable:!0},showOverdrawInspector:{configurable:!0},repaint:{configurable:!0},vertices:{configurable:!0},version:{configurable:!0}};return D.prototype._getMapId=function(){return this._mapId},D.prototype.addControl=function(K,de){if(de===void 0&&(K.getDefaultPosition?de=K.getDefaultPosition():de="top-right"),!K||!K.onAdd)return this.fire(new i.ErrorEvent(new Error("Invalid argument to map.addControl(). Argument must be a control with onAdd and onRemove methods.")));var ne=K.onAdd(this);this._controls.push(K);var we=this._controlPositions[de];return de.indexOf("bottom")!==-1?we.insertBefore(ne,we.firstChild):we.appendChild(ne),this},D.prototype.removeControl=function(K){if(!K||!K.onRemove)return this.fire(new i.ErrorEvent(new Error("Invalid argument to map.removeControl(). Argument must be a control with onAdd and onRemove methods.")));var de=this._controls.indexOf(K);return de>-1&&this._controls.splice(de,1),K.onRemove(this),this},D.prototype.hasControl=function(K){return this._controls.indexOf(K)>-1},D.prototype.resize=function(K){var de=this._containerDimensions(),ne=de[0],we=de[1];this._resizeCanvas(ne,we),this.transform.resize(ne,we),this.painter.resize(ne,we);var Ue=!this._moving;return Ue&&(this.stop(),this.fire(new i.Event("movestart",K)).fire(new i.Event("move",K))),this.fire(new i.Event("resize",K)),Ue&&this.fire(new i.Event("moveend",K)),this},D.prototype.getBounds=function(){return this.transform.getBounds()},D.prototype.getMaxBounds=function(){return this.transform.getMaxBounds()},D.prototype.setMaxBounds=function(K){return this.transform.setMaxBounds(i.LngLatBounds.convert(K)),this._update()},D.prototype.setMinZoom=function(K){if(K=K==null?ci:K,K>=ci&&K<=this.transform.maxZoom)return this.transform.minZoom=K,this._update(),this.getZoom()<K&&this.setZoom(K),this;throw new Error("minZoom must be between "+ci+" and the current maxZoom, inclusive")},D.prototype.getMinZoom=function(){return this.transform.minZoom},D.prototype.setMaxZoom=function(K){if(K=K==null?nn:K,K>=this.transform.minZoom)return this.transform.maxZoom=K,this._update(),this.getZoom()>K&&this.setZoom(K),this;throw new Error("maxZoom must be greater than the current minZoom")},D.prototype.getMaxZoom=function(){return this.transform.maxZoom},D.prototype.setMinPitch=function(K){if(K=K==null?Xi:K,K<Xi)throw new Error("minPitch must be greater than or equal to "+Xi);if(K>=Xi&&K<=this.transform.maxPitch)return this.transform.minPitch=K,this._update(),this.getPitch()<K&&this.setPitch(K),this;throw new Error("minPitch must be between "+Xi+" and the current maxPitch, inclusive")},D.prototype.getMinPitch=function(){return this.transform.minPitch},D.prototype.setMaxPitch=function(K){if(K=K==null?qn:K,K>qn)throw new Error("maxPitch must be less than or equal to "+qn);if(K>=this.transform.minPitch)return this.transform.maxPitch=K,this._update(),this.getPitch()>K&&this.setPitch(K),this;throw new Error("maxPitch must be greater than the current minPitch")},D.prototype.getMaxPitch=function(){return this.transform.maxPitch},D.prototype.getRenderWorldCopies=function(){return this.transform.renderWorldCopies},D.prototype.setRenderWorldCopies=function(K){return this.transform.renderWorldCopies=K,this._update()},D.prototype.project=function(K){return this.transform.locationPoint(i.LngLat.convert(K))},D.prototype.unproject=function(K){return this.transform.pointLocation(i.Point.convert(K))},D.prototype.isMoving=function(){return this._moving||this.handlers.isMoving()},D.prototype.isZooming=function(){return this._zooming||this.handlers.isZooming()},D.prototype.isRotating=function(){return this._rotating||this.handlers.isRotating()},D.prototype._createDelegatedListener=function(K,de,ne){var we=this,Ue;if(K==="mouseenter"||K==="mouseover"){var ft=!1,Zt=function(kt){var Ot=we.getLayer(de)?we.queryRenderedFeatures(kt.point,{layers:[de]}):[];Ot.length?ft||(ft=!0,ne.call(we,new se(K,we,kt.originalEvent,{features:Ot}))):ft=!1},hr=function(){ft=!1};return{layer:de,listener:ne,delegates:{mousemove:Zt,mouseout:hr}}}else if(K==="mouseleave"||K==="mouseout"){var qt=!1,Ve=function(kt){var Ot=we.getLayer(de)?we.queryRenderedFeatures(kt.point,{layers:[de]}):[];Ot.length?qt=!0:qt&&(qt=!1,ne.call(we,new se(K,we,kt.originalEvent)))},et=function(kt){qt&&(qt=!1,ne.call(we,new se(K,we,kt.originalEvent)))};return{layer:de,listener:ne,delegates:{mousemove:Ve,mouseout:et}}}else{var at=function(kt){var Ot=we.getLayer(de)?we.queryRenderedFeatures(kt.point,{layers:[de]}):[];Ot.length&&(kt.features=Ot,ne.call(we,kt),delete kt.features)};return{layer:de,listener:ne,delegates:(Ue={},Ue[K]=at,Ue)}}},D.prototype.on=function(K,de,ne){if(ne===void 0)return Y.prototype.on.call(this,K,de);var we=this._createDelegatedListener(K,de,ne);this._delegatedListeners=this._delegatedListeners||{},this._delegatedListeners[K]=this._delegatedListeners[K]||[],this._delegatedListeners[K].push(we);for(var Ue in we.delegates)this.on(Ue,we.delegates[Ue]);return this},D.prototype.once=function(K,de,ne){if(ne===void 0)return Y.prototype.once.call(this,K,de);var we=this._createDelegatedListener(K,de,ne);for(var Ue in we.delegates)this.once(Ue,we.delegates[Ue]);return this},D.prototype.off=function(K,de,ne){var we=this;if(ne===void 0)return Y.prototype.off.call(this,K,de);var Ue=function(ft){for(var Zt=ft[K],hr=0;hr<Zt.length;hr++){var qt=Zt[hr];if(qt.layer===de&&qt.listener===ne){for(var Ve in qt.delegates)we.off(Ve,qt.delegates[Ve]);return Zt.splice(hr,1),we}}};return this._delegatedListeners&&this._delegatedListeners[K]&&Ue(this._delegatedListeners),this},D.prototype.queryRenderedFeatures=function(K,de){if(!this.style)return[];de===void 0&&K!==void 0&&!(K instanceof i.Point)&&!Array.isArray(K)&&(de=K,K=void 0),de=de||{},K=K||[[0,0],[this.transform.width,this.transform.height]];var ne;if(K instanceof i.Point||typeof K[0]=="number")ne=[i.Point.convert(K)];else{var we=i.Point.convert(K[0]),Ue=i.Point.convert(K[1]);ne=[we,new i.Point(Ue.x,we.y),Ue,new i.Point(we.x,Ue.y),we]}return this.style.queryRenderedFeatures(ne,de,this.transform)},D.prototype.querySourceFeatures=function(K,de){return this.style.querySourceFeatures(K,de)},D.prototype.setStyle=function(K,de){return de=i.extend({},{localIdeographFontFamily:this._localIdeographFontFamily},de),de.diff!==!1&&de.localIdeographFontFamily===this._localIdeographFontFamily&&this.style&&K?(this._diffStyle(K,de),this):(this._localIdeographFontFamily=de.localIdeographFontFamily,this._updateStyle(K,de))},D.prototype._getUIString=function(K){var de=this._locale[K];if(de==null)throw new Error("Missing UI string '"+K+"'");return de},D.prototype._updateStyle=function(K,de){if(this.style&&(this.style.setEventedParent(null),this.style._remove()),K)this.style=new yu(this,de||{});else return delete this.style,this;return this.style.setEventedParent(this,{style:this.style}),typeof K=="string"?this.style.loadURL(K):this.style.loadJSON(K),this},D.prototype._lazyInitEmptyStyle=function(){this.style||(this.style=new yu(this,{}),this.style.setEventedParent(this,{style:this.style}),this.style.loadEmpty())},D.prototype._diffStyle=function(K,de){var ne=this;if(typeof K=="string"){var we=this._requestManager.normalizeStyleURL(K),Ue=this._requestManager.transformRequest(we,i.ResourceType.Style);i.getJSON(Ue,function(ft,Zt){ft?ne.fire(new i.ErrorEvent(ft)):Zt&&ne._updateDiff(Zt,de)})}else typeof K=="object"&&this._updateDiff(K,de)},D.prototype._updateDiff=function(K,de){try{this.style.setState(K)&&this._update(!0)}catch(ne){i.warnOnce("Unable to perform style diff: "+(ne.message||ne.error||ne)+". Rebuilding the style from scratch."),this._updateStyle(K,de)}},D.prototype.getStyle=function(){if(this.style)return this.style.serialize()},D.prototype.isStyleLoaded=function(){return this.style?this.style.loaded():i.warnOnce("There is no style added to the map.")},D.prototype.addSource=function(K,de){return this._lazyInitEmptyStyle(),this.style.addSource(K,de),this._update(!0)},D.prototype.isSourceLoaded=function(K){var de=this.style&&this.style.sourceCaches[K];if(de===void 0){this.fire(new i.ErrorEvent(new Error("There is no source with ID '"+K+"'")));return}return de.loaded()},D.prototype.areTilesLoaded=function(){var K=this.style&&this.style.sourceCaches;for(var de in K){var ne=K[de],we=ne._tiles;for(var Ue in we){var ft=we[Ue];if(!(ft.state==="loaded"||ft.state==="errored"))return!1}}return!0},D.prototype.addSourceType=function(K,de,ne){return this._lazyInitEmptyStyle(),this.style.addSourceType(K,de,ne)},D.prototype.removeSource=function(K){return this.style.removeSource(K),this._update(!0)},D.prototype.getSource=function(K){return this.style.getSource(K)},D.prototype.addImage=function(K,de,ne){ne===void 0&&(ne={});var we=ne.pixelRatio;we===void 0&&(we=1);var Ue=ne.sdf;Ue===void 0&&(Ue=!1);var ft=ne.stretchX,Zt=ne.stretchY,hr=ne.content;this._lazyInitEmptyStyle();var qt=0;if(de instanceof Yr||Ii&&de instanceof Ii){var Ve=i.browser.getImageData(de),et=Ve.width,at=Ve.height,kt=Ve.data;this.style.addImage(K,{data:new i.RGBAImage({width:et,height:at},kt),pixelRatio:we,stretchX:ft,stretchY:Zt,content:hr,sdf:Ue,version:qt})}else{if(de.width===void 0||de.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 Ot=de.width,It=de.height,Bt=de.data,Rt=de;this.style.addImage(K,{data:new i.RGBAImage({width:Ot,height:It},new Uint8Array(Bt)),pixelRatio:we,stretchX:ft,stretchY:Zt,content:hr,sdf:Ue,version:qt,userImage:Rt}),Rt.onAdd&&Rt.onAdd(this,K)}},D.prototype.updateImage=function(K,de){var ne=this.style.getImage(K);if(!ne)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 we=de instanceof Yr||Ii&&de instanceof Ii?i.browser.getImageData(de):de,Ue=we.width,ft=we.height,Zt=we.data;if(Ue===void 0||ft===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(Ue!==ne.data.width||ft!==ne.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 hr=!(de instanceof Yr||Ii&&de instanceof Ii);ne.data.replace(Zt,hr),this.style.updateImage(K,ne)},D.prototype.hasImage=function(K){return K?!!this.style.getImage(K):(this.fire(new i.ErrorEvent(new Error("Missing required image id"))),!1)},D.prototype.removeImage=function(K){this.style.removeImage(K)},D.prototype.loadImage=function(K,de){i.getImage(this._requestManager.transformRequest(K,i.ResourceType.Image),de)},D.prototype.listImages=function(){return this.style.listImages()},D.prototype.addLayer=function(K,de){return this._lazyInitEmptyStyle(),this.style.addLayer(K,de),this._update(!0)},D.prototype.moveLayer=function(K,de){return this.style.moveLayer(K,de),this._update(!0)},D.prototype.removeLayer=function(K){return this.style.removeLayer(K),this._update(!0)},D.prototype.getLayer=function(K){return this.style.getLayer(K)},D.prototype.setLayerZoomRange=function(K,de,ne){return this.style.setLayerZoomRange(K,de,ne),this._update(!0)},D.prototype.setFilter=function(K,de,ne){return ne===void 0&&(ne={}),this.style.setFilter(K,de,ne),this._update(!0)},D.prototype.getFilter=function(K){return this.style.getFilter(K)},D.prototype.setPaintProperty=function(K,de,ne,we){return we===void 0&&(we={}),this.style.setPaintProperty(K,de,ne,we),this._update(!0)},D.prototype.getPaintProperty=function(K,de){return this.style.getPaintProperty(K,de)},D.prototype.setLayoutProperty=function(K,de,ne,we){return we===void 0&&(we={}),this.style.setLayoutProperty(K,de,ne,we),this._update(!0)},D.prototype.getLayoutProperty=function(K,de){return this.style.getLayoutProperty(K,de)},D.prototype.setLight=function(K,de){return de===void 0&&(de={}),this._lazyInitEmptyStyle(),this.style.setLight(K,de),this._update(!0)},D.prototype.getLight=function(){return this.style.getLight()},D.prototype.setFeatureState=function(K,de){return this.style.setFeatureState(K,de),this._update()},D.prototype.removeFeatureState=function(K,de){return this.style.removeFeatureState(K,de),this._update()},D.prototype.getFeatureState=function(K){return this.style.getFeatureState(K)},D.prototype.getContainer=function(){return this._container},D.prototype.getCanvasContainer=function(){return this._canvasContainer},D.prototype.getCanvas=function(){return this._canvas},D.prototype._containerDimensions=function(){var K=0,de=0;return this._container&&(K=this._container.clientWidth||400,de=this._container.clientHeight||300),[K,de]},D.prototype._detectMissingCSS=function(){var K=i.window.getComputedStyle(this._missingCSSCanary).getPropertyValue("background-color");K!=="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/.")},D.prototype._setupContainer=function(){var K=this._container;K.classList.add("mapboxgl-map");var de=this._missingCSSCanary=o.create("div","mapboxgl-canary",K);de.style.visibility="hidden",this._detectMissingCSS();var ne=this._canvasContainer=o.create("div","mapboxgl-canvas-container",K);this._interactive&&ne.classList.add("mapboxgl-interactive"),this._canvas=o.create("canvas","mapboxgl-canvas",ne),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 we=this._containerDimensions();this._resizeCanvas(we[0],we[1]);var Ue=this._controlContainer=o.create("div","mapboxgl-control-container",K),ft=this._controlPositions={};["top-left","top-right","bottom-left","bottom-right"].forEach(function(Zt){ft[Zt]=o.create("div","mapboxgl-ctrl-"+Zt,Ue)}),this._container.addEventListener("scroll",this._onMapScroll,!1)},D.prototype._resizeCanvas=function(K,de){var ne=i.browser.devicePixelRatio||1;this._canvas.width=ne*K,this._canvas.height=ne*de,this._canvas.style.width=K+"px",this._canvas.style.height=de+"px"},D.prototype._setupPainter=function(){var K=i.extend({},a.webGLContextAttributes,{failIfMajorPerformanceCaveat:this._failIfMajorPerformanceCaveat,preserveDrawingBuffer:this._preserveDrawingBuffer,antialias:this._antialias||!1}),de=this._canvas.getContext("webgl",K)||this._canvas.getContext("experimental-webgl",K);if(!de){this.fire(new i.ErrorEvent(new Error("Failed to initialize WebGL")));return}this.painter=new mo(de,this.transform),i.webpSupported.testSupport(de)},D.prototype._contextLost=function(K){K.preventDefault(),this._frame&&(this._frame.cancel(),this._frame=null),this.fire(new i.Event("webglcontextlost",{originalEvent:K}))},D.prototype._contextRestored=function(K){this._setupPainter(),this.resize(),this._update(),this.fire(new i.Event("webglcontextrestored",{originalEvent:K}))},D.prototype._onMapScroll=function(K){if(K.target===this._container)return this._container.scrollTop=0,this._container.scrollLeft=0,!1},D.prototype.loaded=function(){return!this._styleDirty&&!this._sourcesDirty&&!!this.style&&this.style.loaded()},D.prototype._update=function(K){return this.style?(this._styleDirty=this._styleDirty||K,this._sourcesDirty=!0,this.triggerRepaint(),this):this},D.prototype._requestRenderFrame=function(K){return this._update(),this._renderTaskQueue.add(K)},D.prototype._cancelRenderFrame=function(K){this._renderTaskQueue.remove(K)},D.prototype._render=function(K){var de=this,ne,we=0,Ue=this.painter.context.extTimerQuery;if(this.listens("gpu-timing-frame")&&(ne=Ue.createQueryEXT(),Ue.beginQueryEXT(Ue.TIME_ELAPSED_EXT,ne),we=i.browser.now()),this.painter.context.setDirty(),this.painter.setBaseState(),this._renderTaskQueue.run(K),!this._removed){var ft=!1;if(this.style&&this._styleDirty){this._styleDirty=!1;var Zt=this.transform.zoom,hr=i.browser.now();this.style.zoomHistory.update(Zt,hr);var qt=new i.EvaluationParameters(Zt,{now:hr,fadeDuration:this._fadeDuration,zoomHistory:this.style.zoomHistory,transition:this.style.getTransition()}),Ve=qt.crossFadingFactor();(Ve!==1||Ve!==this._crossFadingFactor)&&(ft=!0,this._crossFadingFactor=Ve),this.style.update(qt)}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()||ft)&&(this._styleDirty=!0),this.style&&!this._placementDirty&&this.style._releaseSymbolFadeTiles(),this.listens("gpu-timing-frame")){var et=i.browser.now()-we;Ue.endQueryEXT(Ue.TIME_ELAPSED_EXT,ne),setTimeout(function(){var Ot=Ue.getQueryObjectEXT(ne,Ue.QUERY_RESULT_EXT)/1e6;Ue.deleteQueryEXT(ne),de.fire(new i.Event("gpu-timing-frame",{cpuTime:et,gpuTime:Ot}))},50)}if(this.listens("gpu-timing-layer")){var at=this.painter.collectGpuTimers();setTimeout(function(){var Ot=de.painter.queryGpuTimers(at);de.fire(new i.Event("gpu-timing-layer",{layerTimes:Ot}))},50)}var kt=this._sourcesDirty||this._styleDirty||this._placementDirty;return kt||this._repaint?this.triggerRepaint():!this.isMoving()&&this.loaded()&&this.fire(new i.Event("idle")),this._loaded&&!this._fullyLoaded&&!kt&&(this._fullyLoaded=!0),this}},D.prototype.remove=function(){this._hash&&this._hash.remove();for(var K=0,de=this._controls;K<de.length;K+=1){var ne=de[K];ne.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 we=this.painter.context.gl.getExtension("WEBGL_lose_context");we&&we.loseContext&&we.loseContext(),mn(this._canvasContainer),mn(this._controlContainer),mn(this._missingCSSCanary),this._container.classList.remove("mapboxgl-map"),this._removed=!0,this.fire(new i.Event("remove"))},D.prototype.triggerRepaint=function(){var K=this;this.style&&!this._frame&&(this._frame=i.browser.frame(function(de){K._frame=null,K._render(de)}))},D.prototype._onWindowOnline=function(){this._update()},D.prototype._onWindowResize=function(K){this._trackResize&&this.resize({originalEvent:K})._update()},J.showTileBoundaries.get=function(){return!!this._showTileBoundaries},J.showTileBoundaries.set=function(q){this._showTileBoundaries!==q&&(this._showTileBoundaries=q,this._update())},J.showPadding.get=function(){return!!this._showPadding},J.showPadding.set=function(q){this._showPadding!==q&&(this._showPadding=q,this._update())},J.showCollisionBoxes.get=function(){return!!this._showCollisionBoxes},J.showCollisionBoxes.set=function(q){this._showCollisionBoxes!==q&&(this._showCollisionBoxes=q,q?this.style._generateCollisionBoxes():this._update())},J.showOverdrawInspector.get=function(){return!!this._showOverdrawInspector},J.showOverdrawInspector.set=function(q){this._showOverdrawInspector!==q&&(this._showOverdrawInspector=q,this._update())},J.repaint.get=function(){return!!this._repaint},J.repaint.set=function(q){this._repaint!==q&&(this._repaint=q,this.triggerRepaint())},J.vertices.get=function(){return!!this._vertices},J.vertices.set=function(q){this._vertices=q,this._update()},D.prototype._setCacheLimits=function(K,de){i.setCacheLimits(K,de)},J.version.get=function(){return i.version},Object.defineProperties(D.prototype,J),D}(Hn);function mn(Y){Y.parentNode&&Y.parentNode.removeChild(Y)}var Ki={showCompass:!0,showZoom:!0,visualizePitch:!1},Ui=function(D){var J=this;this.options=i.extend({},Ki,D),this._container=o.create("div","mapboxgl-ctrl mapboxgl-ctrl-group"),this._container.addEventListener("contextmenu",function(q){return q.preventDefault()}),this.options.showZoom&&(i.bindAll(["_setButtonTitle","_updateZoomButtons"],this),this._zoomInButton=this._createButton("mapboxgl-ctrl-zoom-in",function(q){return J._map.zoomIn({},{originalEvent:q})}),o.create("span","mapboxgl-ctrl-icon",this._zoomInButton).setAttribute("aria-hidden",!0),this._zoomOutButton=this._createButton("mapboxgl-ctrl-zoom-out",function(q){return J._map.zoomOut({},{originalEvent:q})}),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(q){J.options.visualizePitch?J._map.resetNorthPitch({},{originalEvent:q}):J._map.resetNorth({},{originalEvent:q})}),this._compassIcon=o.create("span","mapboxgl-ctrl-icon",this._compass),this._compassIcon.setAttribute("aria-hidden",!0))};Ui.prototype._updateZoomButtons=function(){var D=this._map.getZoom(),J=D===this._map.getMaxZoom(),q=D===this._map.getMinZoom();this._zoomInButton.disabled=J,this._zoomOutButton.disabled=q,this._zoomInButton.setAttribute("aria-disabled",J.toString()),this._zoomOutButton.setAttribute("aria-disabled",q.toString())},Ui.prototype._rotateCompassArrow=function(){var D=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=D},Ui.prototype.onAdd=function(D){return this._map=D,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 Bi(this._map,this._compass,this.options.visualizePitch)),this._container},Ui.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},Ui.prototype._createButton=function(D,J){var q=o.create("button",D,this._container);return q.type="button",q.addEventListener("click",J),q},Ui.prototype._setButtonTitle=function(D,J){var q=this._map._getUIString("NavigationControl."+J);D.title=q,D.setAttribute("aria-label",q)};var Bi=function(D,J,q){q===void 0&&(q=!1),this._clickTolerance=10,this.element=J,this.mouseRotate=new Rn({clickTolerance:D.dragRotate._mouseRotate._clickTolerance}),this.map=D,q&&(this.mousePitch=new Cn({clickTolerance:D.dragRotate._mousePitch._clickTolerance})),i.bindAll(["mousedown","mousemove","mouseup","touchstart","touchmove","touchend","reset"],this),o.addEventListener(J,"mousedown",this.mousedown),o.addEventListener(J,"touchstart",this.touchstart,{passive:!1}),o.addEventListener(J,"touchmove",this.touchmove),o.addEventListener(J,"touchend",this.touchend),o.addEventListener(J,"touchcancel",this.reset)};Bi.prototype.down=function(D,J){this.mouseRotate.mousedown(D,J),this.mousePitch&&this.mousePitch.mousedown(D,J),o.disableDrag()},Bi.prototype.move=function(D,J){var q=this.map,K=this.mouseRotate.mousemoveWindow(D,J);if(K&&K.bearingDelta&&q.setBearing(q.getBearing()+K.bearingDelta),this.mousePitch){var de=this.mousePitch.mousemoveWindow(D,J);de&&de.pitchDelta&&q.setPitch(q.getPitch()+de.pitchDelta)}},Bi.prototype.off=function(){var D=this.element;o.removeEventListener(D,"mousedown",this.mousedown),o.removeEventListener(D,"touchstart",this.touchstart,{passive:!1}),o.removeEventListener(D,"touchmove",this.touchmove),o.removeEventListener(D,"touchend",this.touchend),o.removeEventListener(D,"touchcancel",this.reset),this.offTemp()},Bi.prototype.offTemp=function(){o.enableDrag(),o.removeEventListener(i.window,"mousemove",this.mousemove),o.removeEventListener(i.window,"mouseup",this.mouseup)},Bi.prototype.mousedown=function(D){this.down(i.extend({},D,{ctrlKey:!0,preventDefault:function(){return D.preventDefault()}}),o.mousePos(this.element,D)),o.addEventListener(i.window,"mousemove",this.mousemove),o.addEventListener(i.window,"mouseup",this.mouseup)},Bi.prototype.mousemove=function(D){this.move(D,o.mousePos(this.element,D))},Bi.prototype.mouseup=function(D){this.mouseRotate.mouseupWindow(D),this.mousePitch&&this.mousePitch.mouseupWindow(D),this.offTemp()},Bi.prototype.touchstart=function(D){D.targetTouches.length!==1?this.reset():(this._startPos=this._lastPos=o.touchPos(this.element,D.targetTouches)[0],this.down({type:"mousedown",button:0,ctrlKey:!0,preventDefault:function(){return D.preventDefault()}},this._startPos))},Bi.prototype.touchmove=function(D){D.targetTouches.length!==1?this.reset():(this._lastPos=o.touchPos(this.element,D.targetTouches)[0],this.move({preventDefault:function(){return D.preventDefault()}},this._lastPos))},Bi.prototype.touchend=function(D){D.targetTouches.length===0&&this._startPos&&this._lastPos&&this._startPos.dist(this._lastPos)<this._clickTolerance&&this.element.click(),this.reset()},Bi.prototype.reset=function(){this.mouseRotate.reset(),this.mousePitch&&this.mousePitch.reset(),delete this._startPos,delete this._lastPos,this.offTemp()};function vn(Y,D,J){if(Y=new i.LngLat(Y.lng,Y.lat),D){var q=new i.LngLat(Y.lng-360,Y.lat),K=new i.LngLat(Y.lng+360,Y.lat),de=J.locationPoint(Y).distSqr(D);J.locationPoint(q).distSqr(D)<de?Y=q:J.locationPoint(K).distSqr(D)<de&&(Y=K)}for(;Math.abs(Y.lng-J.center.lng)>180;){var ne=J.locationPoint(Y);if(ne.x>=0&&ne.y>=0&&ne.x<=J.width&&ne.y<=J.height)break;Y.lng>J.center.lng?Y.lng-=360:Y.lng+=360}return Y}var Un={center:"translate(-50%,-50%)",top:"translate(-50%,0)","top-left":"translate(0,0)","top-right":"translate(-100%,0)",bottom:"translate(-50%,-100%)","bottom-left":"translate(0,-100%)","bottom-right":"translate(-100%,-100%)",left:"translate(0,-50%)",right:"translate(-100%,-50%)"};function na(Y,D,J){var q=Y.classList;for(var K in Un)q.remove("mapboxgl-"+J+"-anchor-"+K);q.add("mapboxgl-"+J+"-anchor-"+D)}var Yi=function(Y){function D(J,q){if(Y.call(this),(J instanceof i.window.HTMLElement||q)&&(J=i.extend({element:J},q)),i.bindAll(["_update","_onMove","_onUp","_addDragHandler","_onMapClick","_onKeyPress"],this),this._anchor=J&&J.anchor||"center",this._color=J&&J.color||"#3FB1CE",this._scale=J&&J.scale||1,this._draggable=J&&J.draggable||!1,this._clickTolerance=J&&J.clickTolerance||0,this._isDragging=!1,this._state="inactive",this._rotation=J&&J.rotation||0,this._rotationAlignment=J&&J.rotationAlignment||"auto",this._pitchAlignment=J&&J.pitchAlignment&&J.pitchAlignment!=="auto"?J.pitchAlignment:this._rotationAlignment,!J||!J.element){this._defaultMarker=!0,this._element=o.create("div"),this._element.setAttribute("aria-label","Map marker");var K=o.createNS("http://www.w3.org/2000/svg","svg"),de=41,ne=27;K.setAttributeNS(null,"display","block"),K.setAttributeNS(null,"height",de+"px"),K.setAttributeNS(null,"width",ne+"px"),K.setAttributeNS(null,"viewBox","0 0 "+ne+" "+de);var we=o.createNS("http://www.w3.org/2000/svg","g");we.setAttributeNS(null,"stroke","none"),we.setAttributeNS(null,"stroke-width","1"),we.setAttributeNS(null,"fill","none"),we.setAttributeNS(null,"fill-rule","evenodd");var Ue=o.createNS("http://www.w3.org/2000/svg","g");Ue.setAttributeNS(null,"fill-rule","nonzero");var ft=o.createNS("http://www.w3.org/2000/svg","g");ft.setAttributeNS(null,"transform","translate(3.0, 29.0)"),ft.setAttributeNS(null,"fill","#000000");for(var Zt=[{rx:"10.5",ry:"5.25002273"},{rx:"10.5",ry:"5.25002273"},{rx:"9.5",ry:"4.77275007"},{rx:"8.5",ry:"4.29549936"},{rx:"7.5",ry:"3.81822308"},{rx:"6.5",ry:"3.34094679"},{rx:"5.5",ry:"2.86367051"},{rx:"4.5",ry:"2.38636864"}],hr=0,qt=Zt;hr<qt.length;hr+=1){var Ve=qt[hr],et=o.createNS("http://www.w3.org/2000/svg","ellipse");et.setAttributeNS(null,"opacity","0.04"),et.setAttributeNS(null,"cx","10.5"),et.setAttributeNS(null,"cy","5.80029008"),et.setAttributeNS(null,"rx",Ve.rx),et.setAttributeNS(null,"ry",Ve.ry),ft.appendChild(et)}var at=o.createNS("http://www.w3.org/2000/svg","g");at.setAttributeNS(null,"fill",this._color);var kt=o.createNS("http://www.w3.org/2000/svg","path");kt.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"),at.appendChild(kt);var Ot=o.createNS("http://www.w3.org/2000/svg","g");Ot.setAttributeNS(null,"opacity","0.25"),Ot.setAttributeNS(null,"fill","#000000");var It=o.createNS("http://www.w3.org/2000/svg","path");It.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"),Ot.appendChild(It);var Bt=o.createNS("http://www.w3.org/2000/svg","g");Bt.setAttributeNS(null,"transform","translate(6.0, 7.0)"),Bt.setAttributeNS(null,"fill","#FFFFFF");var Rt=o.createNS("http://www.w3.org/2000/svg","g");Rt.setAttributeNS(null,"transform","translate(8.0, 8.0)");var mt=o.createNS("http://www.w3.org/2000/svg","circle");mt.setAttributeNS(null,"fill","#000000"),mt.setAttributeNS(null,"opacity","0.25"),mt.setAttributeNS(null,"cx","5.5"),mt.setAttributeNS(null,"cy","5.5"),mt.setAttributeNS(null,"r","5.4999962");var Pt=o.createNS("http://www.w3.org/2000/svg","circle");Pt.setAttributeNS(null,"fill","#FFFFFF"),Pt.setAttributeNS(null,"cx","5.5"),Pt.setAttributeNS(null,"cy","5.5"),Pt.setAttributeNS(null,"r","5.4999962"),Rt.appendChild(mt),Rt.appendChild(Pt),Ue.appendChild(ft),Ue.appendChild(at),Ue.appendChild(Ot),Ue.appendChild(Bt),Ue.appendChild(Rt),K.appendChild(Ue),K.setAttributeNS(null,"height",de*this._scale+"px"),K.setAttributeNS(null,"width",ne*this._scale+"px"),this._element.appendChild(K),this._offset=i.Point.convert(J&&J.offset||[0,-14])}else this._element=J.element,this._offset=i.Point.convert(J&&J.offset||[0,0]);this._element.classList.add("mapboxgl-marker"),this._element.addEventListener("dragstart",function(ht){ht.preventDefault()}),this._element.addEventListener("mousedown",function(ht){ht.preventDefault()}),na(this._element,this._anchor,"marker"),this._popup=null}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.addTo=function(q){return this.remove(),this._map=q,q.getCanvasContainer().appendChild(this._element),q.on("move",this._update),q.on("moveend",this._update),this.setDraggable(this._draggable),this._update(),this._map.on("click",this._onMapClick),this},D.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},D.prototype.getLngLat=function(){return this._lngLat},D.prototype.setLngLat=function(q){return this._lngLat=i.LngLat.convert(q),this._pos=null,this._popup&&this._popup.setLngLat(this._lngLat),this._update(),this},D.prototype.getElement=function(){return this._element},D.prototype.setPopup=function(q){if(this._popup&&(this._popup.remove(),this._popup=null,this._element.removeEventListener("keypress",this._onKeyPress),this._originalTabIndex||this._element.removeAttribute("tabindex")),q){if(!("offset"in q.options)){var K=38.1,de=13.5,ne=Math.sqrt(Math.pow(de,2)/2);q.options.offset=this._defaultMarker?{top:[0,0],"top-left":[0,0],"top-right":[0,0],bottom:[0,-K],"bottom-left":[ne,(K-de+ne)*-1],"bottom-right":[-ne,(K-de+ne)*-1],left:[de,(K-de)*-1],right:[-de,(K-de)*-1]}:this._offset}this._popup=q,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},D.prototype._onKeyPress=function(q){var K=q.code,de=q.charCode||q.keyCode;(K==="Space"||K==="Enter"||de===32||de===13)&&this.togglePopup()},D.prototype._onMapClick=function(q){var K=q.originalEvent.target,de=this._element;this._popup&&(K===de||de.contains(K))&&this.togglePopup()},D.prototype.getPopup=function(){return this._popup},D.prototype.togglePopup=function(){var q=this._popup;if(q)q.isOpen()?q.remove():q.addTo(this._map);else return this;return this},D.prototype._update=function(q){if(this._map){this._map.transform.renderWorldCopies&&(this._lngLat=vn(this._lngLat,this._pos,this._map.transform)),this._pos=this._map.project(this._lngLat)._add(this._offset);var K="";this._rotationAlignment==="viewport"||this._rotationAlignment==="auto"?K="rotateZ("+this._rotation+"deg)":this._rotationAlignment==="map"&&(K="rotateZ("+(this._rotation-this._map.getBearing())+"deg)");var de="";this._pitchAlignment==="viewport"||this._pitchAlignment==="auto"?de="rotateX(0deg)":this._pitchAlignment==="map"&&(de="rotateX("+this._map.getPitch()+"deg)"),(!q||q.type==="moveend")&&(this._pos=this._pos.round()),o.setTransform(this._element,Un[this._anchor]+" translate("+this._pos.x+"px, "+this._pos.y+"px) "+de+" "+K)}},D.prototype.getOffset=function(){return this._offset},D.prototype.setOffset=function(q){return this._offset=i.Point.convert(q),this._update(),this},D.prototype._onMove=function(q){if(!this._isDragging){var K=this._clickTolerance||this._map._clickTolerance;this._isDragging=q.point.dist(this._pointerdownPos)>=K}this._isDragging&&(this._pos=q.point.sub(this._positionDelta),this._lngLat=this._map.unproject(this._pos),this.setLngLat(this._lngLat),this._element.style.pointerEvents="none",this._state==="pending"&&(this._state="active",this.fire(new i.Event("dragstart"))),this.fire(new i.Event("drag")))},D.prototype._onUp=function(){this._element.style.pointerEvents="auto",this._positionDelta=null,this._pointerdownPos=null,this._isDragging=!1,this._map.off("mousemove",this._onMove),this._map.off("touchmove",this._onMove),this._state==="active"&&this.fire(new i.Event("dragend")),this._state="inactive"},D.prototype._addDragHandler=function(q){this._element.contains(q.originalEvent.target)&&(q.preventDefault(),this._positionDelta=q.point.sub(this._pos).add(this._offset),this._pointerdownPos=q.point,this._state="pending",this._map.on("mousemove",this._onMove),this._map.on("touchmove",this._onMove),this._map.once("mouseup",this._onUp),this._map.once("touchend",this._onUp))},D.prototype.setDraggable=function(q){return this._draggable=!!q,this._map&&(q?(this._map.on("mousedown",this._addDragHandler),this._map.on("touchstart",this._addDragHandler)):(this._map.off("mousedown",this._addDragHandler),this._map.off("touchstart",this._addDragHandler))),this},D.prototype.isDraggable=function(){return this._draggable},D.prototype.setRotation=function(q){return this._rotation=q||0,this._update(),this},D.prototype.getRotation=function(){return this._rotation},D.prototype.setRotationAlignment=function(q){return this._rotationAlignment=q||"auto",this._update(),this},D.prototype.getRotationAlignment=function(){return this._rotationAlignment},D.prototype.setPitchAlignment=function(q){return this._pitchAlignment=q&&q!=="auto"?q:this._rotationAlignment,this._update(),this},D.prototype.getPitchAlignment=function(){return this._pitchAlignment},D}(i.Evented),Ln={positionOptions:{enableHighAccuracy:!1,maximumAge:0,timeout:6e3},fitBoundsOptions:{maxZoom:15},trackUserLocation:!1,showAccuracyCircle:!0,showUserLocation:!0},ra;function oa(Y){ra!==void 0?Y(ra):i.window.navigator.permissions!==void 0?i.window.navigator.permissions.query({name:"geolocation"}).then(function(D){ra=D.state!=="denied",Y(ra)}):(ra=!!i.window.navigator.geolocation,Y(ra))}var wa=0,ns=!1,Ys=function(Y){function D(J){Y.call(this),this.options=i.extend({},Ln,J),i.bindAll(["_onSuccess","_onError","_onZoom","_finish","_setupUI","_updateCamera","_updateMarker"],this)}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.onAdd=function(q){return this._map=q,this._container=o.create("div","mapboxgl-ctrl mapboxgl-ctrl-group"),oa(this._setupUI),this._container},D.prototype.onRemove=function(){this._geolocationWatchID!==void 0&&(i.window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0),this.options.showUserLocation&&this._userLocationDotMarker&&this._userLocationDotMarker.remove(),this.options.showAccuracyCircle&&this._accuracyCircleMarker&&this._accuracyCircleMarker.remove(),o.remove(this._container),this._map.off("zoom",this._onZoom),this._map=void 0,wa=0,ns=!1},D.prototype._isOutOfMapMaxBounds=function(q){var K=this._map.getMaxBounds(),de=q.coords;return K&&(de.longitude<K.getWest()||de.longitude>K.getEast()||de.latitude<K.getSouth()||de.latitude>K.getNorth())},D.prototype._setErrorState=function(){switch(this._watchState){case"WAITING_ACTIVE":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error");break;case"ACTIVE_LOCK":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting");break;case"BACKGROUND":this._watchState="BACKGROUND_ERROR",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting");break}},D.prototype._onSuccess=function(q){if(this._map){if(this._isOutOfMapMaxBounds(q)){this._setErrorState(),this.fire(new i.Event("outofmaxbounds",q)),this._updateMarker(),this._finish();return}if(this.options.trackUserLocation)switch(this._lastKnownPosition=q,this._watchState){case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"BACKGROUND":case"BACKGROUND_ERROR":this._watchState="BACKGROUND",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background");break}this.options.showUserLocation&&this._watchState!=="OFF"&&this._updateMarker(q),(!this.options.trackUserLocation||this._watchState==="ACTIVE_LOCK")&&this._updateCamera(q),this.options.showUserLocation&&this._dotElement.classList.remove("mapboxgl-user-location-dot-stale"),this.fire(new i.Event("geolocate",q)),this._finish()}},D.prototype._updateCamera=function(q){var K=new i.LngLat(q.coords.longitude,q.coords.latitude),de=q.coords.accuracy,ne=this._map.getBearing(),we=i.extend({bearing:ne},this.options.fitBoundsOptions);this._map.fitBounds(K.toBounds(de),we,{geolocateSource:!0})},D.prototype._updateMarker=function(q){if(q){var K=new i.LngLat(q.coords.longitude,q.coords.latitude);this._accuracyCircleMarker.setLngLat(K).addTo(this._map),this._userLocationDotMarker.setLngLat(K).addTo(this._map),this._accuracy=q.coords.accuracy,this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()}else this._userLocationDotMarker.remove(),this._accuracyCircleMarker.remove()},D.prototype._updateCircleRadius=function(){var q=this._map._container.clientHeight/2,K=this._map.unproject([0,q]),de=this._map.unproject([1,q]),ne=K.distanceTo(de),we=Math.ceil(2*this._accuracy/ne);this._circleElement.style.width=we+"px",this._circleElement.style.height=we+"px"},D.prototype._onZoom=function(){this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()},D.prototype._onError=function(q){if(this._map){if(this.options.trackUserLocation)if(q.code===1){this._watchState="OFF",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.disabled=!0;var K=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.title=K,this._geolocateButton.setAttribute("aria-label",K),this._geolocationWatchID!==void 0&&this._clearWatch()}else{if(q.code===3&&ns)return;this._setErrorState()}this._watchState!=="OFF"&&this.options.showUserLocation&&this._dotElement.classList.add("mapboxgl-user-location-dot-stale"),this.fire(new i.Event("error",q)),this._finish()}},D.prototype._finish=function(){this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0},D.prototype._setupUI=function(q){var K=this;if(this._container.addEventListener("contextmenu",function(we){return we.preventDefault()}),this._geolocateButton=o.create("button","mapboxgl-ctrl-geolocate",this._container),o.create("span","mapboxgl-ctrl-icon",this._geolocateButton).setAttribute("aria-hidden",!0),this._geolocateButton.type="button",q===!1){i.warnOnce("Geolocation support is not available so the GeolocateControl will be disabled.");var de=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.disabled=!0,this._geolocateButton.title=de,this._geolocateButton.setAttribute("aria-label",de)}else{var ne=this._map._getUIString("GeolocateControl.FindMyLocation");this._geolocateButton.title=ne,this._geolocateButton.setAttribute("aria-label",ne)}this.options.trackUserLocation&&(this._geolocateButton.setAttribute("aria-pressed","false"),this._watchState="OFF"),this.options.showUserLocation&&(this._dotElement=o.create("div","mapboxgl-user-location-dot"),this._userLocationDotMarker=new Yi(this._dotElement),this._circleElement=o.create("div","mapboxgl-user-location-accuracy-circle"),this._accuracyCircleMarker=new Yi({element:this._circleElement,pitchAlignment:"map"}),this.options.trackUserLocation&&(this._watchState="OFF"),this._map.on("zoom",this._onZoom)),this._geolocateButton.addEventListener("click",this.trigger.bind(this)),this._setup=!0,this.options.trackUserLocation&&this._map.on("movestart",function(we){var Ue=we.originalEvent&&we.originalEvent.type==="resize";!we.geolocateSource&&K._watchState==="ACTIVE_LOCK"&&!Ue&&(K._watchState="BACKGROUND",K._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background"),K._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),K.fire(new i.Event("trackuserlocationend")))})},D.prototype.trigger=function(){if(!this._setup)return i.warnOnce("Geolocate control triggered before added to a map"),!1;if(this.options.trackUserLocation){switch(this._watchState){case"OFF":this._watchState="WAITING_ACTIVE",this.fire(new i.Event("trackuserlocationstart"));break;case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":case"BACKGROUND_ERROR":wa--,ns=!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"),wa++;var q;wa>1?(q={maximumAge:6e5,timeout:0},ns=!0):(q=this.options.positionOptions,ns=!1),this._geolocationWatchID=i.window.navigator.geolocation.watchPosition(this._onSuccess,this._onError,q)}}else i.window.navigator.geolocation.getCurrentPosition(this._onSuccess,this._onError,this.options.positionOptions),this._timeoutId=setTimeout(this._finish,1e4);return!0},D.prototype._clearWatch=function(){i.window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0,this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","false"),this.options.showUserLocation&&this._updateMarker(null)},D}(i.Evented),Va={maxWidth:100,unit:"metric"},Ml=function(D){this.options=i.extend({},Va,D),i.bindAll(["_onMove","setUnit"],this)};Ml.prototype.getDefaultPosition=function(){return"bottom-left"},Ml.prototype._onMove=function(){zo(this._map,this._container,this.options)},Ml.prototype.onAdd=function(D){return this._map=D,this._container=o.create("div","mapboxgl-ctrl mapboxgl-ctrl-scale",D.getContainer()),this._map.on("move",this._onMove),this._onMove(),this._container},Ml.prototype.onRemove=function(){o.remove(this._container),this._map.off("move",this._onMove),this._map=void 0},Ml.prototype.setUnit=function(D){this.options.unit=D,zo(this._map,this._container,this.options)};function zo(Y,D,J){var q=J&&J.maxWidth||100,K=Y._container.clientHeight/2,de=Y.unproject([0,K]),ne=Y.unproject([q,K]),we=de.distanceTo(ne);if(J&&J.unit==="imperial"){var Ue=3.2808*we;if(Ue>5280){var ft=Ue/5280;el(D,q,ft,Y._getUIString("ScaleControl.Miles"))}else el(D,q,Ue,Y._getUIString("ScaleControl.Feet"))}else if(J&&J.unit==="nautical"){var Zt=we/1852;el(D,q,Zt,Y._getUIString("ScaleControl.NauticalMiles"))}else we>=1e3?el(D,q,we/1e3,Y._getUIString("ScaleControl.Kilometers")):el(D,q,we,Y._getUIString("ScaleControl.Meters"))}function el(Y,D,J,q){var K=Ul(J),de=K/J;Y.style.width=D*de+"px",Y.innerHTML=K+" "+q}function ol(Y){var D=Math.pow(10,Math.ceil(-Math.log(Y)/Math.LN10));return Math.round(Y*D)/D}function Ul(Y){var D=Math.pow(10,(""+Math.floor(Y)).length-1),J=Y/D;return J=J>=10?10:J>=5?5:J>=3?3:J>=2?2:J>=1?1:ol(J),D*J}var ls=function(D){this._fullscreen=!1,D&&D.container&&(D.container instanceof i.window.HTMLElement?this._container=D.container:i.warnOnce("Full screen control 'container' must be a DOM element.")),i.bindAll(["_onClickFullscreen","_changeIcon"],this),"onfullscreenchange"in i.window.document?this._fullscreenchange="fullscreenchange":"onmozfullscreenchange"in i.window.document?this._fullscreenchange="mozfullscreenchange":"onwebkitfullscreenchange"in i.window.document?this._fullscreenchange="webkitfullscreenchange":"onmsfullscreenchange"in i.window.document&&(this._fullscreenchange="MSFullscreenChange")};ls.prototype.onAdd=function(D){return this._map=D,this._container||(this._container=this._map.getContainer()),this._controlContainer=o.create("div","mapboxgl-ctrl mapboxgl-ctrl-group"),this._checkFullscreenSupport()?this._setupUI():(this._controlContainer.style.display="none",i.warnOnce("This device does not support fullscreen mode.")),this._controlContainer},ls.prototype.onRemove=function(){o.remove(this._controlContainer),this._map=null,i.window.document.removeEventListener(this._fullscreenchange,this._changeIcon)},ls.prototype._checkFullscreenSupport=function(){return!!(i.window.document.fullscreenEnabled||i.window.document.mozFullScreenEnabled||i.window.document.msFullscreenEnabled||i.window.document.webkitFullscreenEnabled)},ls.prototype._setupUI=function(){var D=this._fullscreenButton=o.create("button","mapboxgl-ctrl-fullscreen",this._controlContainer);o.create("span","mapboxgl-ctrl-icon",D).setAttribute("aria-hidden",!0),D.type="button",this._updateTitle(),this._fullscreenButton.addEventListener("click",this._onClickFullscreen),i.window.document.addEventListener(this._fullscreenchange,this._changeIcon)},ls.prototype._updateTitle=function(){var D=this._getTitle();this._fullscreenButton.setAttribute("aria-label",D),this._fullscreenButton.title=D},ls.prototype._getTitle=function(){return this._map._getUIString(this._isFullscreen()?"FullscreenControl.Exit":"FullscreenControl.Enter")},ls.prototype._isFullscreen=function(){return this._fullscreen},ls.prototype._changeIcon=function(){var D=i.window.document.fullscreenElement||i.window.document.mozFullScreenElement||i.window.document.webkitFullscreenElement||i.window.document.msFullscreenElement;D===this._container!==this._fullscreen&&(this._fullscreen=!this._fullscreen,this._fullscreenButton.classList.toggle("mapboxgl-ctrl-shrink"),this._fullscreenButton.classList.toggle("mapboxgl-ctrl-fullscreen"),this._updateTitle())},ls.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 Gs={closeButton:!0,closeOnClick:!0,focusAfterOpen:!0,className:"",maxWidth:"240px"},Ks=["a[href]","[tabindex]:not([tabindex='-1'])","[contenteditable]:not([contenteditable='false'])","button:not([disabled])","input:not([disabled])","select:not([disabled])","textarea:not([disabled])"].join(", "),Ta=function(Y){function D(J){Y.call(this),this.options=i.extend(Object.create(Gs),J),i.bindAll(["_update","_onClose","remove","_onMouseMove","_onMouseUp","_onDrag"],this)}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.addTo=function(q){return this._map&&this.remove(),this._map=q,this.options.closeOnClick&&this._map.on("click",this._onClose),this.options.closeOnMove&&this._map.on("move",this._onClose),this._map.on("remove",this.remove),this._update(),this._focusFirstElement(),this._trackPointer?(this._map.on("mousemove",this._onMouseMove),this._map.on("mouseup",this._onMouseUp),this._container&&this._container.classList.add("mapboxgl-popup-track-pointer"),this._map._canvasContainer.classList.add("mapboxgl-track-pointer")):this._map.on("move",this._update),this.fire(new i.Event("open")),this},D.prototype.isOpen=function(){return!!this._map},D.prototype.remove=function(){return this._content&&o.remove(this._content),this._container&&(o.remove(this._container),delete this._container),this._map&&(this._map.off("move",this._update),this._map.off("move",this._onClose),this._map.off("click",this._onClose),this._map.off("remove",this.remove),this._map.off("mousemove",this._onMouseMove),this._map.off("mouseup",this._onMouseUp),this._map.off("drag",this._onDrag),delete this._map),this.fire(new i.Event("close")),this},D.prototype.getLngLat=function(){return this._lngLat},D.prototype.setLngLat=function(q){return this._lngLat=i.LngLat.convert(q),this._pos=null,this._trackPointer=!1,this._update(),this._map&&(this._map.on("move",this._update),this._map.off("mousemove",this._onMouseMove),this._container&&this._container.classList.remove("mapboxgl-popup-track-pointer"),this._map._canvasContainer.classList.remove("mapboxgl-track-pointer")),this},D.prototype.trackPointer=function(){return this._trackPointer=!0,this._pos=null,this._update(),this._map&&(this._map.off("move",this._update),this._map.on("mousemove",this._onMouseMove),this._map.on("drag",this._onDrag),this._container&&this._container.classList.add("mapboxgl-popup-track-pointer"),this._map._canvasContainer.classList.add("mapboxgl-track-pointer")),this},D.prototype.getElement=function(){return this._container},D.prototype.setText=function(q){return this.setDOMContent(i.window.document.createTextNode(q))},D.prototype.setHTML=function(q){var K=i.window.document.createDocumentFragment(),de=i.window.document.createElement("body"),ne;for(de.innerHTML=q;ne=de.firstChild,!!ne;)K.appendChild(ne);return this.setDOMContent(K)},D.prototype.getMaxWidth=function(){return this._container&&this._container.style.maxWidth},D.prototype.setMaxWidth=function(q){return this.options.maxWidth=q,this._update(),this},D.prototype.setDOMContent=function(q){if(this._content)for(;this._content.hasChildNodes();)this._content.firstChild&&this._content.removeChild(this._content.firstChild);else this._content=o.create("div","mapboxgl-popup-content",this._container);return this._content.appendChild(q),this._createCloseButton(),this._update(),this._focusFirstElement(),this},D.prototype.addClassName=function(q){this._container&&this._container.classList.add(q)},D.prototype.removeClassName=function(q){this._container&&this._container.classList.remove(q)},D.prototype.setOffset=function(q){return this.options.offset=q,this._update(),this},D.prototype.toggleClassName=function(q){if(this._container)return this._container.classList.toggle(q)},D.prototype._createCloseButton=function(){this.options.closeButton&&(this._closeButton=o.create("button","mapboxgl-popup-close-button",this._content),this._closeButton.type="button",this._closeButton.setAttribute("aria-label","Close popup"),this._closeButton.innerHTML="×",this._closeButton.addEventListener("click",this._onClose))},D.prototype._onMouseUp=function(q){this._update(q.point)},D.prototype._onMouseMove=function(q){this._update(q.point)},D.prototype._onDrag=function(q){this._update(q.point)},D.prototype._update=function(q){var K=this,de=this._lngLat||this._trackPointer;if(!(!this._map||!de||!this._content)&&(this._container||(this._container=o.create("div","mapboxgl-popup",this._map.getContainer()),this._tip=o.create("div","mapboxgl-popup-tip",this._container),this._container.appendChild(this._content),this.options.className&&this.options.className.split(" ").forEach(function(Ve){return K._container.classList.add(Ve)}),this._trackPointer&&this._container.classList.add("mapboxgl-popup-track-pointer")),this.options.maxWidth&&this._container.style.maxWidth!==this.options.maxWidth&&(this._container.style.maxWidth=this.options.maxWidth),this._map.transform.renderWorldCopies&&!this._trackPointer&&(this._lngLat=vn(this._lngLat,this._pos,this._map.transform)),!(this._trackPointer&&!q))){var ne=this._pos=this._trackPointer&&q?q:this._map.project(this._lngLat),we=this.options.anchor,Ue=sl(this.options.offset);if(!we){var ft=this._container.offsetWidth,Zt=this._container.offsetHeight,hr;ne.y+Ue.bottom.y<Zt?hr=["top"]:ne.y>this._map.transform.height-Zt?hr=["bottom"]:hr=[],ne.x<ft/2?hr.push("left"):ne.x>this._map.transform.width-ft/2&&hr.push("right"),hr.length===0?we="bottom":we=hr.join("-")}var qt=ne.add(Ue[we]).round();o.setTransform(this._container,Un[we]+" translate("+qt.x+"px,"+qt.y+"px)"),na(this._container,we,"popup")}},D.prototype._focusFirstElement=function(){if(!(!this.options.focusAfterOpen||!this._container)){var q=this._container.querySelector(Ks);q&&q.focus()}},D.prototype._onClose=function(){this.remove()},D}(i.Evented);function sl(Y){if(Y)if(typeof Y=="number"){var D=Math.round(Math.sqrt(.5*Math.pow(Y,2)));return{center:new i.Point(0,0),top:new i.Point(0,Y),"top-left":new i.Point(D,D),"top-right":new i.Point(-D,D),bottom:new i.Point(0,-Y),"bottom-left":new i.Point(D,-D),"bottom-right":new i.Point(-D,-D),left:new i.Point(Y,0),right:new i.Point(-Y,0)}}else if(Y instanceof i.Point||Array.isArray(Y)){var J=i.Point.convert(Y);return{center:J,top:J,"top-left":J,"top-right":J,bottom:J,"bottom-left":J,"bottom-right":J,left:J,right:J}}else return{center:i.Point.convert(Y.center||[0,0]),top:i.Point.convert(Y.top||[0,0]),"top-left":i.Point.convert(Y["top-left"]||[0,0]),"top-right":i.Point.convert(Y["top-right"]||[0,0]),bottom:i.Point.convert(Y.bottom||[0,0]),"bottom-left":i.Point.convert(Y["bottom-left"]||[0,0]),"bottom-right":i.Point.convert(Y["bottom-right"]||[0,0]),left:i.Point.convert(Y.left||[0,0]),right:i.Point.convert(Y.right||[0,0])};else return sl(new i.Point(0,0))}var io={version:i.version,supported:a,setRTLTextPlugin:i.setRTLTextPlugin,getRTLTextPluginStatus:i.getRTLTextPluginStatus,Map:li,NavigationControl:Ui,GeolocateControl:Ys,AttributionControl:Qi,ScaleControl:Ml,FullscreenControl:ls,Popup:Ta,Marker:Yi,Style:yu,LngLat:i.LngLat,LngLatBounds:i.LngLatBounds,Point:i.Point,MercatorCoordinate:i.MercatorCoordinate,Evented:i.Evented,config:i.config,prewarm:la,clearPrewarmedResources:ma,get accessToken(){return i.config.ACCESS_TOKEN},set accessToken(Y){i.config.ACCESS_TOKEN=Y},get baseApiUrl(){return i.config.API_URL},set baseApiUrl(Y){i.config.API_URL=Y},get workerCount(){return cn.workerCount},set workerCount(Y){cn.workerCount=Y},get maxParallelImageRequests(){return i.config.MAX_PARALLEL_IMAGE_REQUESTS},set maxParallelImageRequests(Y){i.config.MAX_PARALLEL_IMAGE_REQUESTS=Y},clearStorage:function(D){i.clearTileCache(D)},workerUrl:""};return io}),r})});var ZVe=ye((A_r,XVe)=>{"use strict";var tw=Dr(),KHt=iu().sanitizeHTML,JHt=tJ(),HVe=c1();function jVe(e,t){this.subplot=e,this.uid=e.uid+"-"+t,this.index=t,this.idSource="source-"+this.uid,this.idLayer=HVe.layoutLayerPrefix+this.uid,this.sourceType=null,this.source=null,this.layerType=null,this.below=null,this.visible=!1}var ig=jVe.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=Zz(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,!!Zz(e)){var r=$Ht(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(HVe.traceLayerPrefix)===0){e=n;break}}return e};ig.updateLayer=function(e){var t=this.subplot,r=WVe(e),n=this.lookupBelow(),i=this.findFollowingMapboxLayerId(n);this.removeLayer(),Zz(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(Zz(e)){var t=WVe(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 Zz(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 WVe(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=JHt(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 $Ht(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=KHt(e.sourceattribution)),n}XVe.exports=function(t,r,n){var i=new jVe(t,r);return i.update(n),i}});var iGe=ye((S_r,rGe)=>{"use strict";var lJ=sJ(),uJ=Dr(),$Ve=nx(),YVe=qa(),QHt=ho(),ejt=gv(),Yz=vf(),QVe=Sg(),tjt=QVe.drawMode,rjt=QVe.selectMode,ijt=zf().prepSelect,njt=zf().clearOutline,ajt=zf().clearSelectionsCache,ojt=zf().selectOnClick,_x=c1(),sjt=ZVe();function eGe(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 qh=eGe.prototype;qh.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)};qh.createMap=function(e,t,r,n){var i=this,a=t[i.id],o=i.styleObj=tGe(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 lJ.Map({container:i.div,style:o.style,center:cJ(a.center),zoom:a.zoom,bearing:a.bearing,pitch:a.pitch,maxBounds:l,interactive:!i.isStatic,preserveDrawingBuffer:i.isStatic,doubleClickZoom:!1,boxZoom:!1,attributionControl:!1}).addControl(new lJ.AttributionControl({compact:!0}));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($Ve.fetchTraceGeoData(e)),Promise.all(c).then(function(){i.fillBelowLookup(e,t),i.updateData(e),i.updateLayout(t),i.resolveOnRender(r)}).catch(n)};qh.updateMap=function(e,t,r,n){var i=this,a=i.map,o=t[this.id];i.rejectOnError(n);var s=[],l=tGe(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($Ve.fetchTraceGeoData(e)),Promise.all(s).then(function(){i.fillBelowLookup(e,t),i.updateData(e),i.updateLayout(t),i.resolveOnRender(r)}).catch(n)};qh.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 KVe={choroplethmapbox:0,densitymapbox:1,scattermapbox:2};qh.updateData=function(e){var t=this.traceHash,r,n,i,a,o=e.slice().sort(function(f,h){return KVe[f[0].trace.type]-KVe[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]}};qh.updateLayout=function(e){var t=this.map,r=e[this.id];!this.dragging&&!this.wheeling&&(t.setCenter(cJ(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()};qh.resolveOnRender=function(e){var t=this.map;t.on("render",function r(){t.loaded()&&(t.off("render",r),setTimeout(e,10))})};qh.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)};qh.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"},QHt.setConvert(t.mockAxis,e)};qh.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];YVe.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]&&Yz.hover(n,s,r.id)},Yz.hover(n,s,r.id),n._fullLayout._hoversubplot=r.id});function a(){Yz.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];YVe.call("_storeDirectGUIEdit",n.layout,n._fullLayout._preGUI,r.getViewEdits(s));var l=r.viewInitial;i.setCenter(cJ(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(){ajt(r.dragOptions),njt(r.dragOptions.gd)},r.onClickInPanFn=function(s){return function(l){var u=n._fullLayout.clickmode;u.indexOf("select")>-1&&ojt(l.originalEvent,n,[r.xaxis],[r.yaxis],r.id,s),u.indexOf("event")>-1&&Yz.click(n,l.originalEvent)}}};qh.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=uJ.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),rjt(a)||tjt(a)?(r.dragPan.disable(),r.on("zoomstart",t.clearOutline),t.dragOptions.prepFn=function(l,u,c){ijt(l,u,c,t.dragOptions,a)},ejt.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))};qh.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])};qh.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(sjt(this,i,r[i]))}else for(i=0;i<r.length;i++)n[i].update(r[i])};qh.destroy=function(){this.map&&(this.map.remove(),this.map=null,this.container.removeChild(this.div))};qh.toImage=function(){return this.map.stop(),this.map.getCanvas().toDataURL()};qh.setOptions=function(e,t,r){for(var n in r)this.map[t](e,n,r[n])};qh.getMapLayers=function(){return this.map.getStyle().layers};qh.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}uJ.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)};qh.project=function(e){return this.map.project(new lJ.LngLat(e[0],e[1]))};qh.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()]}}};qh.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};qh.getViewEditsWithDerived=function(e){var t=this.id,r=this.getViewEdits(e);return r[t+"._derived"]=e._derived,r};function tGe(e,t){var r={};if(uJ.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=JVe(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=JVe(_x.styleValueDflt);return r.transition={duration:0,delay:0},r}function JVe(e){return _x.styleUrlPrefix+e+"-"+_x.styleUrlSuffix}function cJ(e){return[e.lon,e.lat]}rGe.exports=eGe});var oGe=ye((M_r,aGe)=>{"use strict";var fJ=Dr(),ljt=k_(),ujt=Yd(),nGe=BC();aGe.exports=function(t,r,n){ljt(t,r,n,{type:"mapbox",attributes:nGe,handleDefaults:cjt,partition:"y",accessToken:r._mapboxAccessToken})};function cjt(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,ujt(e,t,{name:"layers",handleItemDefaults:fjt}),t._input=e}function fjt(e,t){function r(l,u){return fJ.coerce(e,t,nGe.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",fJ.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"),fJ.coerceFont(r,"symbol.textfont",void 0,{noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0}),r("symbol.textposition"),r("symbol.placement"))}}});var Kz=ye(Bp=>{"use strict";var sGe=sJ(),tm=Dr(),hJ=tm.strTranslate,hjt=tm.strScale,djt=Id().getSubplotCalcData,vjt=Wp(),pjt=Oa(),lGe=So(),gjt=iu(),mjt=iGe(),xx="mapbox",Qm=Bp.constants=c1();Bp.name=xx;Bp.attr="subplot";Bp.idRoot=xx;Bp.idRegex=Bp.attrRegex=tm.counterRegex(xx);var yjt=["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(" ");Bp.attributes={subplot:{valType:"subplotid",dflt:"mapbox",editType:"calc"}};Bp.layoutAttributes=BC();Bp.supplyLayoutDefaults=oGe();var uGe=!0;Bp.plot=function(t){uGe&&(uGe=!1,tm.warn(yjt));var r=t._fullLayout,n=t.calcdata,i=r._subplots[xx];if(sGe.version!==Qm.requiredVersion)throw new Error(Qm.wrongVersionErrorMsg);var a=_jt(t,i);sGe.accessToken=a;for(var o=0;o<i.length;o++){var s=i[o],l=djt(n,xx,s),u=r[s],c=u._subplot;c||(c=new mjt(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)}};Bp.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()}};Bp.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:vjt.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=pjt.select(a._subplot.div),f=c.select(".mapboxgl-ctrl-logo").node().offsetParent===null;if(!f){var h=t._glimages.append("g");h.attr("transform",hJ(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=lGe.bBox(x.node()),p=n.w*(o.x[1]-o.x[0]);if(b.width>p/2){var C=d.split("|").join("<br>");x.text(C).attr("data-unformatted",C).call(gjt.convertToTspans,e),b=lGe.bBox(x.node())}x.attr("transform",hJ(-3,-b.height+8)),v.insert("rect",".static-attribution").attr({x:-b.width-6,y:-b.height-3,width:b.width+6,height:b.height+3,fill:"rgba(255, 255, 255, 0.75)"});var E=1;b.width+6>p&&(E=p/(b.width+6));var A=[n.l+n.w*o.x[1],n.t+n.h*(1-o.y[0])];v.attr("transform",hJ(A[0],A[1])+hjt(E))}};function _jt(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;cGe(u.style)&&(c?tm.pushUnique(i,c):(cGe(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 cGe(e){return typeof e=="string"&&(Qm.styleValuesMapbox.indexOf(e)!==-1||e.indexOf("mapbox://")===0||e.indexOf("stamen")===0)}Bp.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 hGe=ye((k_r,fGe)=>{"use strict";var C_r=["*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(" ");fGe.exports={attributes:Vz(),supplyDefaults:TVe(),colorbar:$d(),formatLabels:eJ(),calc:fF(),plot:OVe(),hoverPoints:Xz().hoverPoints,eventData:UVe(),selectPoints:GVe(),styleOnSelect:function(e,t){if(t){var r=t[0].trace;r._glTrace.update(t)}},moduleType:"trace",name:"scattermapbox",basePlotModule:Kz(),categories:["mapbox","gl","symbols","showLegend","scatter-like"],meta:{}}});var vGe=ye((L_r,dGe)=>{"use strict";dGe.exports=hGe()});var dJ=ye((P_r,pGe)=>{"use strict";var f1=JA(),xjt=Tu(),bjt=Qo().hovertemplateAttrs,wjt=Vl(),bx=Ao().extendFlat;pGe.exports=bx({locations:{valType:"data_array",editType:"calc"},z:{valType:"data_array",editType:"calc"},geojson:{valType:"any",editType:"calc"},featureidkey:bx({},f1.featureidkey,{}),below:{valType:"string",editType:"plot"},text:f1.text,hovertext:f1.hovertext,marker:{line:{color:bx({},f1.marker.line.color,{editType:"plot"}),width:bx({},f1.marker.line.width,{editType:"plot"}),editType:"calc"},opacity:bx({},f1.marker.opacity,{editType:"plot"}),editType:"calc"},selected:{marker:{opacity:bx({},f1.selected.marker.opacity,{editType:"plot"}),editType:"plot"},editType:"plot"},unselected:{marker:{opacity:bx({},f1.unselected.marker.opacity,{editType:"plot"}),editType:"plot"},editType:"plot"},hoverinfo:f1.hoverinfo,hovertemplate:bjt({},{keys:["properties"]}),showlegend:bx({},wjt.showlegend,{dflt:!1})},xjt("",{cLetter:"z",editTypeOverride:"calc"}))});var mGe=ye((I_r,gGe)=>{"use strict";var GC=Dr(),Tjt=Jh(),Ajt=dJ();gGe.exports=function(t,r,n,i){function a(c,f){return GC.coerce(t,r,Ajt,c,f)}var o=a("locations"),s=a("z"),l=a("geojson");if(!GC.isArrayOrTypedArray(o)||!o.length||!GC.isArrayOrTypedArray(s)||!s.length||!(typeof l=="string"&&l!==""||GC.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"),Tjt(t,r,i,a,{prefix:"",cLetter:"z"}),GC.coerceSelectionMarkerOpacity(r,a)}});var vJ=ye((R_r,xGe)=>{"use strict";var Sjt=Eo(),h1=Dr(),Mjt=tc(),Ejt=So(),Cjt=rx().makeBlank,yGe=nx();function kjt(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:Cjt()};if(!r)return a;var o=yGe.extractTraceFeature(e);if(!o)return a;var s=Mjt.makeColorScaleFuncFromTrace(t),l=t.marker,u=l.line||{},c;h1.isArrayOrTypedArray(l.opacity)&&(c=function(C){var E=C.mo;return Sjt(E)?+h1.constrain(E,0,1):0});var f;h1.isArrayOrTypedArray(u.color)&&(f=function(C){return C.mlc});var h;h1.isArrayOrTypedArray(u.width)&&(h=function(C){return C.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=yGe.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},_Ge(e),a}function _Ge(e){var t=e[0].trace,r=t._opts,n;if(t.selectedpoints){for(var i=Ejt.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}xGe.exports={convert:kjt,convertOnSelect:_Ge}});var SGe=ye((D_r,AGe)=>{"use strict";var wGe=vJ().convert,Ljt=vJ().convertOnSelect,bGe=c1().traceLayerPrefix;function TGe(e,t){this.type="choroplethmapbox",this.subplot=e,this.uid=t,this.sourceId="source-"+t,this.layerList=[["fill",bGe+t+"-fill"],["line",bGe+t+"-line"]],this.below=null}var T5=TGe.prototype;T5.update=function(e){this._update(wGe(e)),e[0].trace._glTrace=this};T5.updateOnSelect=function(e){this._update(Ljt(e))};T5._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)}};T5._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)}};T5._removeLayers=function(){for(var e=this.subplot.map,t=this.layerList,r=t.length-1;r>=0;r--)e.removeLayer(t[r][1])};T5.dispose=function(){var e=this.subplot.map;this._removeLayers(),e.removeSource(this.sourceId)};AGe.exports=function(t,r){var n=r[0].trace,i=new TGe(t,n.uid),a=i.sourceId,o=wGe(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 EGe=ye((z_r,MGe)=>{"use strict";var F_r=["*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(" ");MGe.exports={attributes:dJ(),supplyDefaults:mGe(),colorbar:M_(),calc:IF(),plot:SGe(),hoverPoints:DF(),eventData:FF(),selectPoints:zF(),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:Kz(),categories:["mapbox","gl","noOpacity","showLegend"],meta:{hr_name:"choropleth_mapbox"}}});var kGe=ye((O_r,CGe)=>{"use strict";CGe.exports=EGe()});var gJ=ye((q_r,PGe)=>{"use strict";var Pjt=Tu(),Ijt=Qo().hovertemplateAttrs,LGe=Vl(),Jz=Vz(),pJ=Ao().extendFlat;PGe.exports=pJ({lon:Jz.lon,lat:Jz.lat,z:{valType:"data_array",editType:"calc"},radius:{valType:"number",editType:"plot",arrayOk:!0,min:1,dflt:30},below:{valType:"string",editType:"plot"},text:Jz.text,hovertext:Jz.hovertext,hoverinfo:pJ({},LGe.hoverinfo,{flags:["lon","lat","z","text","name"]}),hovertemplate:Ijt(),showlegend:pJ({},LGe.showlegend,{dflt:!1})},Pjt("",{cLetter:"z",editTypeOverride:"calc"}))});var RGe=ye((B_r,IGe)=>{"use strict";var Rjt=Dr(),Djt=Jh(),Fjt=gJ();IGe.exports=function(t,r,n,i){function a(u,c){return Rjt.coerce(t,r,Fjt,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"),Djt(t,r,i,a,{prefix:"",cLetter:"z"})}});var zGe=ye((N_r,FGe)=>{"use strict";var mJ=Eo(),zjt=Dr().isArrayOrTypedArray,yJ=hs().BADNUM,Ojt=Fv(),DGe=Dr()._;FGe.exports=function(t,r){for(var n=r._length,i=new Array(n),a=r.z,o=zjt(a)&&a.length,s=0;s<n;s++){var l=i[s]={},u=r.lon[s],c=r.lat[s];if(l.lonlat=mJ(u)&&mJ(c)?[+u,+c]:[yJ,yJ],o){var f=a[s];l.z=mJ(f)?f:yJ}}return Ojt(t,r,{vals:o?a:[0,1],containerStr:"",cLetter:"z"}),n&&(i[0].t={labels:{lat:DGe(t,"lat:")+" ",lon:DGe(t,"lon:")+" "}}),i}});var UGe=ye((U_r,NGe)=>{"use strict";var qjt=Eo(),_J=Dr(),OGe=Ca(),qGe=tc(),BGe=hs().BADNUM,Bjt=rx().makeBlank;NGe.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:Bjt()};if(!n)return a;var o=[],s,l=r.z,u=r.radius,c=_J.isArrayOrTypedArray(l)&&l.length,f=_J.isArrayOrTypedArray(u);for(s=0;s<t.length;s++){var h=t[s],d=h.lonlat;if(d[0]!==BGe){var v={};if(c){var x=h.z;v.z=x!==BGe?x:0}f&&(v.r=qjt(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,C=p[0][1],E=OGe.opacity(C)<1?C:OGe.addOpacity(C,0),A=["interpolate",["linear"],["heatmap-density"],0,E];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 _J.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 jGe=ye((V_r,HGe)=>{"use strict";var VGe=UGe(),Njt=c1().traceLayerPrefix;function GGe(e,t){this.type="densitymapbox",this.subplot=e,this.uid=t,this.sourceId="source-"+t,this.layerList=[["heatmap",Njt+t+"-heatmap"]],this.below=null}var $z=GGe.prototype;$z.update=function(e){var t=this.subplot,r=this.layerList,n=VGe(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)}};$z._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)}};$z._removeLayers=function(){for(var e=this.subplot.map,t=this.layerList,r=t.length-1;r>=0;r--)e.removeLayer(t[r][1])};$z.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 GGe(t,n.uid),a=i.sourceId,o=VGe(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 XGe=ye((G_r,WGe)=>{"use strict";var Ujt=ho(),Vjt=Xz().hoverPoints,Gjt=Xz().getExtraText;WGe.exports=function(t,r,n){var i=Vjt(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=Ujt.tickText(u,u.c2l(l.z),"hover").text}return a.extraText=Gjt(s,l,o[0].t.labels),[a]}}});var YGe=ye((H_r,ZGe)=>{"use strict";ZGe.exports=function(t,r){return t.lon=r.lon,t.lat=r.lat,t.z=r.z,t}});var JGe=ye((W_r,KGe)=>{"use strict";var j_r=["*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(" ");KGe.exports={attributes:gJ(),supplyDefaults:RGe(),colorbar:M_(),formatLabels:eJ(),calc:zGe(),plot:jGe(),hoverPoints:XGe(),eventData:YGe(),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:Kz(),categories:["mapbox","gl","showLegend"],meta:{hr_name:"density_mapbox"}}});var QGe=ye((X_r,$Ge)=>{"use strict";$Ge.exports=JGe()});var tHe=ye((Z_r,eHe)=>{eHe.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 © <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 iHe=ye((Y_r,rHe)=>{rHe.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 © <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((K_r,lHe)=>{"use strict";var Hjt=Y1(),jjt=tHe(),Wjt=iHe(),Xjt='\xA9 <a target="_blank" href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors',nHe="https://basemaps.cartocdn.com/gl/positron-gl-style/style.json",aHe="https://basemaps.cartocdn.com/gl/dark-matter-gl-style/style.json",Qz="https://basemaps.cartocdn.com/gl/voyager-gl-style/style.json",Zjt="https://basemaps.cartocdn.com/gl/positron-nolabels-gl-style/style.json",Yjt="https://basemaps.cartocdn.com/gl/dark-matter-nolabels-gl-style/style.json",Kjt="https://basemaps.cartocdn.com/gl/voyager-nolabels-gl-style/style.json",sHe={basic:Qz,streets:Qz,outdoors:Qz,light:nHe,dark:aHe,satellite:Wjt,"satellite-streets":jjt,"open-street-map":{id:"osm",version:8,sources:{"plotly-osm-tiles":{type:"raster",attribution:Xjt,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":nHe,"carto-darkmatter":aHe,"carto-voyager":Qz,"carto-positron-nolabels":Zjt,"carto-darkmatter-nolabels":Yjt,"carto-voyager-nolabels":Kjt},oHe=Hjt(sHe);lHe.exports={styleValueDflt:"basic",stylesMap:sHe,styleValuesMap:oHe,traceLayerPrefix:"plotly-trace-layer-",layoutLayerPrefix:"plotly-layout-layer-",missingStyleErrorMsg:["No valid maplibre style found, please set `map.style` to one of:",oHe.join(", "),"or use a tile service."].join(`
|
||
`),mapOnErrorMsg:"Map error."}});var HC=ye((J_r,dHe)=>{"use strict";var uHe=Dr(),cHe=Ca().defaultLine,Jjt=kc().attributes,$jt=ec(),Qjt=pf().textposition,eWt=mc().overrideAll,tWt=pl().templatedArray,fHe=wx(),hHe=$jt({noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0});hHe.family.dflt="Open Sans Regular, Arial Unicode MS Regular";var rWt=dHe.exports=eWt({_arrayAttrRegexps:[uHe.counterRegex("map",".layers",!0)],domain:Jjt({name:"map"}),style:{valType:"any",values:fHe.styleValuesMap,dflt:fHe.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:tWt("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:cHe},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:cHe}},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:hHe,textposition:uHe.extendFlat({},Qjt,{arrayOk:!1})}})},"plot","from-root");rWt.uirevision={valType:"any",editType:"none"}});var e7=ye(($_r,gHe)=>{"use strict";var iWt=Qo().hovertemplateAttrs,nWt=Qo().texttemplateAttrs,aWt=Eg(),jC=G2(),A5=pf(),vHe=HC(),oWt=Vl(),sWt=Tu(),rw=Ao().extendFlat,lWt=mc().overrideAll,uWt=HC(),pHe=jC.line,S5=jC.marker;gHe.exports=lWt({lon:jC.lon,lat:jC.lat,cluster:{enabled:{valType:"boolean"},maxzoom:rw({},uWt.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({},S5.opacity,{dflt:1})},mode:rw({},A5.mode,{dflt:"markers"}),text:rw({},A5.text,{}),texttemplate:nWt({editType:"plot"},{keys:["lat","lon","text"]}),hovertext:rw({},A5.hovertext,{}),line:{color:pHe.color,width:pHe.width},connectgaps:A5.connectgaps,marker:rw({symbol:{valType:"string",dflt:"circle",arrayOk:!0},angle:{valType:"number",dflt:"auto",arrayOk:!0},allowoverlap:{valType:"boolean",dflt:!1},opacity:S5.opacity,size:S5.size,sizeref:S5.sizeref,sizemin:S5.sizemin,sizemode:S5.sizemode},sWt("marker")),fill:jC.fill,fillcolor:aWt(),textfont:vHe.layers.symbol.textfont,textposition:vHe.layers.symbol.textposition,below:{valType:"string"},selected:{marker:A5.selected.marker},unselected:{marker:A5.unselected.marker},hoverinfo:rw({},oWt.hoverinfo,{flags:["lon","lat","text","name"]}),hovertemplate:iWt()},"calc","nested")});var xJ=ye((Q_r,mHe)=>{"use strict";var cWt=["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"];mHe.exports={isSupportedFont:function(e){return cWt.indexOf(e)!==-1}}});var xHe=ye((exr,_He)=>{"use strict";var WC=Dr(),bJ=Ru(),fWt=$p(),hWt=R0(),dWt=D0(),vWt=Ig(),yHe=e7(),pWt=xJ().isSupportedFont;_He.exports=function(t,r,n,i){function a(p,C){return WC.coerce(t,r,yHe,p,C)}function o(p,C){return WC.coerce2(t,r,yHe,p,C)}var s=gWt(t,r,a);if(!s){r.visible=!1;return}if(a("text"),a("texttemplate"),a("hovertext"),a("hovertemplate"),a("mode"),a("below"),bJ.hasMarkers(r)){fWt(t,r,n,i,a,{noLine:!0,noAngle:!0}),a("marker.allowoverlap"),a("marker.angle");var l=r.marker;l.symbol!=="circle"&&(WC.isArrayOrTypedArray(l.size)&&(l.size=l.size[0]),WC.isArrayOrTypedArray(l.color)&&(l.color=l.color[0]))}bJ.hasLines(r)&&(hWt(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||bJ.hasText(r)){var b=i.font.family;dWt(t,r,i,a,{noSelect:!0,noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0,font:{family:pWt(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"&&vWt(t,r,n,a),WC.coerceSelectionMarkerOpacity(r,a)};function gWt(e,t,r){var n=r("lon")||[],i=r("lat")||[],a=Math.min(n.length,i.length);return t._length=a,a}});var wJ=ye((txr,wHe)=>{"use strict";var bHe=ho();wHe.exports=function(t,r,n){var i={},a=n[r.subplot]._subplot,o=a.mockAxis,s=t.lonlat;return i.lonLabel=bHe.tickText(o,o.c2l(s[0]),!0).text,i.latLabel=bHe.tickText(o,o.c2l(s[1]),!0).text,i}});var TJ=ye((rxr,AHe)=>{"use strict";var THe=Dr();AHe.exports=function(t,r){var n=t.split(" "),i=n[0],a=n[1],o=THe.isArrayOrTypedArray(r)?THe.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 LHe=ye((ixr,kHe)=>{"use strict";var EHe=Eo(),ov=Dr(),mWt=hs().BADNUM,r7=rx(),SHe=tc(),yWt=So(),_Wt=S3(),i7=Ru(),xWt=xJ().isSupportedFont,bWt=TJ(),wWt=rp().appendArrayPointValue,TWt=iu().NEWLINES,AWt=iu().BR_TAG_ALL;kHe.exports=function(t,r){var n=r[0].trace,i=n.visible===!0&&n._length!==0,a=n.fill!=="none",o=i7.hasLines(n),s=i7.hasMarkers(n),l=i7.hasText(n),u=s&&n.marker.symbol==="circle",c=s&&n.marker.symbol!=="circle",f=n.cluster&&n.cluster.enabled,h=t7("fill"),d=t7("line"),v=t7("circle"),x=t7("symbol"),b={fill:h,line:d,circle:v,symbol:x};if(!i)return b;var p;if((a||o)&&(p=r7.calcTraceToLineCoords(r)),a&&(h.geojson=r7.makePolygon(p),h.layout.visibility="visible",ov.extendFlat(h.paint,{"fill-color":n.fillcolor})),o&&(d.geojson=r7.makeLine(p),d.layout.visibility="visible",ov.extendFlat(d.paint,{"line-width":n.line.width,"line-color":n.line.color,"line-opacity":n.opacity})),u){var C=SWt(r);v.geojson=C.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":SJ(n.cluster.color,n.cluster.step),"circle-radius":SJ(n.cluster.size,n.cluster.step),"circle-opacity":SJ(n.cluster.opacity,n.cluster.step)}},b.clusterCount={type:"symbol",filter:["has","point_count"],paint:{},layout:{"text-field":"{point_count_abbreviated}","text-font":MHe(n),"text-size":12}}),ov.extendFlat(v.paint,{"circle-color":C.mcc,"circle-radius":C.mrc,"circle-opacity":C.mo})}if(u&&f&&(v.filter=["!",["has","point_count"]]),(c||l)&&(x.geojson=MWt(r,t),ov.extendFlat(x.layout,{visibility:"visible","icon-image":"{symbol}-15","text-field":"{text}"}),c&&(ov.extendFlat(x.layout,{"icon-size":n.marker.size/10}),"angle"in n.marker&&n.marker.angle!=="auto"&&ov.extendFlat(x.layout,{"icon-rotate":{type:"identity",property:"angle"},"icon-rotation-alignment":"map"}),x.layout["icon-allow-overlap"]=n.marker.allowoverlap,ov.extendFlat(x.paint,{"icon-opacity":n.opacity*n.marker.opacity,"icon-color":n.marker.color})),l)){var E=(n.marker||{}).size,A=bWt(n.textposition,E);ov.extendFlat(x.layout,{"text-size":n.textfont.size,"text-anchor":A.anchor,"text-offset":A.offset,"text-font":MHe(n)}),ov.extendFlat(x.paint,{"text-color":n.textfont.color,"text-opacity":n.opacity})}return b};function t7(e){return{type:e,geojson:r7.makeBlank(),layout:{visibility:"none"},filter:null,paint:{}}}function SWt(e){var t=e[0].trace,r=t.marker,n=t.selectedpoints,i=ov.isArrayOrTypedArray(r.color),a=ov.isArrayOrTypedArray(r.size),o=ov.isArrayOrTypedArray(r.opacity),s;function l(E){return t.opacity*E}function u(E){return E/2}var c;i&&(SHe.hasColorscale(t,"marker")?c=SHe.makeColorScaleFuncFromTrace(r):c=ov.identity);var f;a&&(f=_Wt(t));var h;o&&(h=function(E){var A=EHe(E)?+ov.constrain(E,0,1):0;return l(A)});var d=[];for(s=0;s<e.length;s++){var v=e[s],x=v.lonlat;if(!CHe(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=yWt.makeSelectedPointStyleFns(t),s=0;s<d.length;s++){var C=d[s].properties;p.selectedOpacityFn&&(C.mo=l(p.selectedOpacityFn(C))),p.selectedColorFn&&(C.mcc=p.selectedColorFn(C)),p.selectedSizeFn&&(C.mrc=p.selectedSizeFn(C))}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 MWt(e,t){for(var r=t._fullLayout,n=e[0].trace,i=n.marker||{},a=i.symbol,o=i.angle,s=a!=="circle"?AJ(a):n7,l=o!=="auto"?AJ(o,!0):n7,u=i7.hasText(n)?AJ(n.text):n7,c=[],f=0;f<e.length;f++){var h=e[f];if(!CHe(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={};wWt(p,n,h.i);var C=n._meta||{};v=ov.texttemplateString(x,b,r._d3locale,p,h,C)}else v=u(f);v&&(v=v.replace(TWt,"").replace(AWt,`
|
||
`)),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 AJ(e,t){return ov.isArrayOrTypedArray(e)?t?function(r){return EHe(e[r])?+e[r]:0}:function(r){return e[r]}:e?function(){return e}:n7}function n7(){return""}function CHe(e){return e[0]===mWt}function SJ(e,t){var r;if(ov.isArrayOrTypedArray(e)&&ov.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 MHe(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"),xWt(s)||(s=r);var l=s.split(", ");return l}});var DHe=ye((nxr,RHe)=>{"use strict";var EWt=Dr(),PHe=LHe(),M5=wx().traceLayerPrefix,ng={cluster:["cluster","clusterCount","circle"],nonCluster:["fill","line","circle","symbol"]};function IHe(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:M5+t+"-fill",line:M5+t+"-line",circle:M5+t+"-circle",symbol:M5+t+"-symbol",cluster:M5+t+"-cluster",clusterCount:M5+t+"-cluster-count"},this.below=null}var XC=IHe.prototype;XC.addSource=function(e,t,r){var n={type:"geojson",data:t.geojson};r&&r.enabled&&EWt.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)};XC.setSourceData=function(e,t){this.subplot.map.getSource(this.sourceIds[e]).setData(t.geojson)};XC.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)};XC.update=function(t){var r=t[0].trace,n=this.subplot,i=n.map,a=PHe(n.gd,t),o=n.belowLookup["trace-"+this.uid],s=!!(r.cluster&&r.cluster.enabled),l=!!this.clusterEnabled,u=this;function c(E){E||u.addSource("circle",a.circle,r.cluster);for(var A=ng.cluster,L=0;L<A.length;L++){var _=A[L],k=a[_];u.addLayer(_,k,o)}}function f(E){for(var A=ng.cluster,L=A.length-1;L>=0;L--){var _=A[L];i.removeLayer(u.layerIds[_])}E||i.removeSource(u.sourceIds.circle)}function h(E){for(var A=ng.nonCluster,L=0;L<A.length;L++){var _=A[L],k=a[_];E||u.addSource(_,k),u.addLayer(_,k,o)}}function d(E){for(var A=ng.nonCluster,L=A.length-1;L>=0;L--){var _=A[L];i.removeLayer(u.layerIds[_]),E||i.removeSource(u.sourceIds[_])}}function v(E){l?f(E):d(E)}function x(E){s?c(E):h(E)}function b(){for(var E=s?ng.cluster:ng.nonCluster,A=0;A<E.length;A++){var L=E[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,C=r.visible!==!0;C?p||v():p?C||x():l!==s?(v(),x()):(this.below!==o&&(v(!0),x(!0)),b()),this.clusterEnabled=s,this.isHidden=C,this.below=o,t[0].trace._glTrace=this};XC.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])}};RHe.exports=function(t,r){var n=r[0].trace,i=n.cluster&&n.cluster.enabled,a=n.visible!==!0,o=new IHe(t,n.uid,i,a),s=PHe(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 a7=ye((axr,zHe)=>{"use strict";var CWt=vf(),MJ=Dr(),kWt=oT(),LWt=MJ.fillText,PWt=hs().BADNUM,IWt=wx().traceLayerPrefix;function RWt(e,t,r){var n=e.cd,i=n[0].trace,a=e.xa,o=e.ya,s=e.subplot,l=[],u=IWt+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]===PWt||c&&l.indexOf(M.i+1)===-1)return 1/0;var P=MJ.modHalf(g[0],360),T=g[1],z=s.project([P,T]),O=z.x-a.c2p([v,T]),V=z.y-o.c2p([P,r]),G=Math.max(3,M.mrc||0);return Math.max(Math.sqrt(O*O+V*V)-G,1-3/G)}if(CWt.getClosest(n,x,e),e.index!==!1){var b=n[e.index],p=b.lonlat,C=[MJ.modHalf(p[0],360)+d,p[1]],E=a.c2p(C),A=o.c2p(C),L=b.mrc||1;e.x0=E-L,e.x1=E+L,e.y0=A-L,e.y1=A+L;var _={};_[i.subplot]={_subplot:s};var k=i._module.formatLabels(b,i,_);return e.lonLabel=k.lonLabel,e.latLabel=k.latLabel,e.color=kWt(i,b),e.extraText=FHe(i,b,n[0].t.labels),e.hovertemplate=i.hovertemplate,[e]}}function FHe(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)&&LWt(t,e,u),u.join("<br>")}zHe.exports={hoverPoints:RWt,getExtraText:FHe}});var qHe=ye((oxr,OHe)=>{"use strict";OHe.exports=function(t,r){return t.lon=r.lon,t.lat=r.lat,t}});var NHe=ye((sxr,BHe)=>{"use strict";var DWt=Dr(),FWt=Ru(),zWt=hs().BADNUM;BHe.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=[],s=n[0].trace,l;if(!FWt.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]!==zWt){var f=[DWt.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 VHe=ye((EJ,CJ)=>{(function(e,t){typeof EJ=="object"&&typeof CJ!="undefined"?CJ.exports=t():(e=typeof globalThis!="undefined"?globalThis:e||self,e.maplibregl=t())})(EJ,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,F,W){return new(F||(F=Promise))(function(te,fe){function pe(ut){try{Ke(W.next(ut))}catch(Lt){fe(Lt)}}function ze(ut){try{Ke(W.throw(ut))}catch(Lt){fe(Lt)}}function Ke(ut){var Lt;ut.done?te(ut.value):(Lt=ut.value,Lt instanceof F?Lt:new F(function(Qt){Qt(Lt)})).then(pe,ze)}Ke((W=W.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,F=R.y-this.y;return S*S+F*F},angle:function(){return Math.atan2(this.y,this.x)},angleTo:function(R){return Math.atan2(this.y-R.y,this.x-R.x)},angleWith:function(R){return this.angleWithSep(R.x,R.y)},angleWithSep:function(R,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),F=Math.sin(R),W=F*this.x+S*this.y;return this.x=S*this.x-F*this.y,this.y=W,this},_rotateAround:function(R,S){var F=Math.cos(R),W=Math.sin(R),te=S.y+W*(this.x-S.x)+F*(this.y-S.y);return this.x=S.x+F*(this.x-S.x)-W*(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,F,W){this.cx=3*R,this.bx=3*(F-R)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*S,this.by=3*(W-S)-this.cy,this.ay=1-this.cy-this.by,this.p1x=R,this.p1y=S,this.p2x=F,this.p2y=W}f.prototype={sampleCurveX:function(R){return((this.ax*R+this.bx)*R+this.cx)*R},sampleCurveY:function(R){return((this.ay*R+this.by)*R+this.cy)*R},sampleCurveDerivativeX:function(R){return(3*this.ax*R+2*this.bx)*R+this.cx},solveCurveX:function(R,S){if(S===void 0&&(S=1e-6),R<0)return 0;if(R>1)return 1;for(var F=R,W=0;W<8;W++){var te=this.sampleCurveX(F)-R;if(Math.abs(te)<S)return F;var fe=this.sampleCurveDerivativeX(F);if(Math.abs(fe)<1e-6)break;F-=te/fe}var pe=0,ze=1;for(F=R,W=0;W<20&&(te=this.sampleCurveX(F),!(Math.abs(te-R)<S));W++)R>te?pe=F:ze=F,F=.5*(ze-pe)+pe;return F},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 W=0;W<5*5;W++){let te=4*W;S.fillStyle=`rgb(${te},${te+1},${te+2})`,S.fillRect(W%5,Math.floor(W/5),1,1)}let F=S.getImageData(0,0,5,5).data;for(let W=0;W<5*5*4;W++)if(W%4!=3&&F[W]!==W){v=!0;break}}}return v||!1}function p(R,S,F,W){let te=new h(R,S,F,W);return fe=>te.solve(fe)}let C=p(.25,.1,.25,1);function E(R,S,F){return Math.min(F,Math.max(S,R))}function A(R,S,F){let W=F-S,te=((R-S)%W+W)%W+S;return te===S?F:te}function L(R,...S){for(let F of S)for(let W in F)R[W]=F[W];return R}let _=1;function k(R,S,F){let W={};for(let te in R)W[te]=S.call(this,R[te],te,R);return W}function M(R,S,F){let W={};for(let te in R)S.call(this,R[te],te,R)&&(W[te]=R[te]);return W}function g(R){return Array.isArray(R)?R.map(g):typeof R=="object"&&R?k(R,g):R}let P={};function T(R){P[R]||(typeof console!="undefined"&&console.warn(R),P[R]=!0)}function z(R,S,F){return(F.y-R.y)*(S.x-R.x)>(S.y-R.y)*(F.x-R.x)}function O(R){return typeof WorkerGlobalScope!="undefined"&&R!==void 0&&R instanceof WorkerGlobalScope}let V=null;function G(R){return typeof ImageBitmap!="undefined"&&R instanceof ImageBitmap}let Z="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVQYV2NgAAIAAAUAAarVyFEAAAAASUVORK5CYII=";function H(R,S,F,W,te){return a(this,void 0,void 0,function*(){if(typeof VideoFrame=="undefined")throw new Error("VideoFrame not supported");let fe=new VideoFrame(R,{timestamp:0});try{let pe=fe==null?void 0:fe.format;if(!pe||!pe.startsWith("BGR")&&!pe.startsWith("RGB"))throw new Error(`Unrecognized format ${pe}`);let ze=pe.startsWith("BGR"),Ke=new Uint8ClampedArray(W*te*4);if(yield fe.copyTo(Ke,function(ut,Lt,Qt,fr,mr){let Lr=4*Math.max(-Lt,0),zr=(Math.max(0,Qt)-Qt)*fr*4+Lr,ui=4*fr,yi=Math.max(0,Lt),dn=Math.max(0,Qt);return{rect:{x:yi,y:dn,width:Math.min(ut.width,Lt+fr)-yi,height:Math.min(ut.height,Qt+mr)-dn},layout:[{offset:zr,stride:ui}]}}(R,S,F,W,te)),ze)for(let ut=0;ut<Ke.length;ut+=4){let Lt=Ke[ut];Ke[ut]=Ke[ut+2],Ke[ut+2]=Lt}return Ke}finally{fe.close()}})}let N,j,re="AbortError";function oe(){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 me extends Error{constructor(S,F,W,te){super(`AJAXError: ${F} (${S}): ${W}`),this.status=S,this.statusText=F,this.url=W,this.body=te}}let ie=()=>O(self)?self.worker&&self.worker.referrer:(window.location.protocol==="blob:"?window.parent:window).location.href,Se=function(R,S){if(/:\/\//.test(R.url)&&!/^https?:|^file:/.test(R.url)){let W=Me(R.url);if(W)return W(R,S);if(O(self)&&self.worker&&self.worker.actor)return self.worker.actor.sendAsync({type:"GR",data:R,targetMapId:ke},S)}if(!(/^file:/.test(F=R.url)||/^file:/.test(ie())&&!/^\w+:/.test(F))){if(fetch&&Request&&AbortController&&Object.prototype.hasOwnProperty.call(Request.prototype,"signal"))return function(W,te){return a(this,void 0,void 0,function*(){let fe=new Request(W.url,{method:W.method||"GET",body:W.body,credentials:W.credentials,headers:W.headers,cache:W.cache,referrer:ie(),signal:te.signal});W.type!=="json"||fe.headers.has("Accept")||fe.headers.set("Accept","application/json");let pe=yield fetch(fe);if(!pe.ok){let ut=yield pe.blob();throw new me(pe.status,pe.statusText,W.url,ut)}let ze;ze=W.type==="arrayBuffer"||W.type==="image"?pe.arrayBuffer():W.type==="json"?pe.json():pe.text();let Ke=yield ze;if(te.signal.aborted)throw oe();return{data:Ke,cacheControl:pe.headers.get("Cache-Control"),expires:pe.headers.get("Expires")}})}(R,S);if(O(self)&&self.worker&&self.worker.actor)return self.worker.actor.sendAsync({type:"GR",data:R,mustQueue:!0,targetMapId:ke},S)}var F;return function(W,te){return new Promise((fe,pe)=>{var ze;let Ke=new XMLHttpRequest;Ke.open(W.method||"GET",W.url,!0),W.type!=="arrayBuffer"&&W.type!=="image"||(Ke.responseType="arraybuffer");for(let ut in W.headers)Ke.setRequestHeader(ut,W.headers[ut]);W.type==="json"&&(Ke.responseType="text",!((ze=W.headers)===null||ze===void 0)&&ze.Accept||Ke.setRequestHeader("Accept","application/json")),Ke.withCredentials=W.credentials==="include",Ke.onerror=()=>{pe(new Error(Ke.statusText))},Ke.onload=()=>{if(!te.signal.aborted)if((Ke.status>=200&&Ke.status<300||Ke.status===0)&&Ke.response!==null){let ut=Ke.response;if(W.type==="json")try{ut=JSON.parse(Ke.response)}catch(Lt){return void pe(Lt)}fe({data:ut,cacheControl:Ke.getResponseHeader("Cache-Control"),expires:Ke.getResponseHeader("Expires")})}else{let ut=new Blob([Ke.response],{type:Ke.getResponseHeader("Content-Type")});pe(new me(Ke.status,Ke.statusText,W.url,ut))}},te.signal.addEventListener("abort",()=>{Ke.abort(),pe(oe())}),Ke.send(W.body)})}(R,S)};function Le(R){if(!R||R.indexOf("://")<=0||R.indexOf("data:image/")===0||R.indexOf("blob:")===0)return!0;let S=new URL(R),F=window.location;return S.protocol===F.protocol&&S.host===F.host}function Ae(R,S,F){F[R]&&F[R].indexOf(S)!==-1||(F[R]=F[R]||[],F[R].push(S))}function De(R,S,F){if(F&&F[R]){let W=F[R].indexOf(S);W!==-1&&F[R].splice(W,1)}}class Pe{constructor(S,F={}){L(this,F),this.type=S}}class ge extends Pe{constructor(S,F={}){super("error",L({error:S},F))}}class Fe{on(S,F){return this._listeners=this._listeners||{},Ae(S,F,this._listeners),this}off(S,F){return De(S,F,this._listeners),De(S,F,this._oneTimeListeners),this}once(S,F){return F?(this._oneTimeListeners=this._oneTimeListeners||{},Ae(S,F,this._oneTimeListeners),this):new Promise(W=>this.once(S,W))}fire(S,F){typeof S=="string"&&(S=new Pe(S,F||{}));let W=S.type;if(this.listens(W)){S.target=this;let te=this._listeners&&this._listeners[W]?this._listeners[W].slice():[];for(let ze of te)ze.call(this,S);let fe=this._oneTimeListeners&&this._oneTimeListeners[W]?this._oneTimeListeners[W].slice():[];for(let ze of fe)De(W,ze,this._oneTimeListeners),ze.call(this,S);let pe=this._eventedParent;pe&&(L(S,typeof this._eventedParentData=="function"?this._eventedParentData():this._eventedParentData),pe.fire(S))}else S instanceof ge&&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,F){return this._eventedParent=S,this._eventedParentData=F,this}}var ce={$version:8,$root:{version:{required:!0,type:"enum",values:[8]},name:{type:"string"},metadata:{type:"*"},center:{type:"array",value:"number"},zoom:{type:"number"},bearing:{type:"number",default:0,period:360,units:"degrees"},pitch:{type:"number",default:0,units:"degrees"},light:{type:"light"},sky:{type:"sky"},projection:{type:"projection"},terrain:{type:"terrain"},sources:{required:!0,type:"sources"},sprite:{type:"sprite"},glyphs:{type:"string"},transition:{type:"transition"},layers:{required:!0,type:"array",value:"layer"}},sources:{"*":{type:"source"}},source:["source_vector","source_raster","source_raster_dem","source_geojson","source_video","source_image"],source_vector:{type:{required:!0,type:"enum",values:{vector:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},attribution:{type:"string"},promoteId:{type:"promoteId"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},source_raster:{type:{required:!0,type:"enum",values:{raster:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},attribution:{type:"string"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},source_raster_dem:{type:{required:!0,type:"enum",values:{"raster-dem":{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},attribution:{type:"string"},encoding:{type:"enum",values:{terrarium:{},mapbox:{},custom:{}},default:"mapbox"},redFactor:{type:"number",default:1},blueFactor:{type:"number",default:1},greenFactor:{type:"number",default:1},baseShift:{type:"number",default:0},volatile:{type:"boolean",default:!1},"*":{type:"*"}},source_geojson:{type:{required:!0,type:"enum",values:{geojson:{}}},data:{required:!0,type:"*"},maxzoom:{type:"number",default:18},attribution:{type:"string"},buffer:{type:"number",default:128,maximum:512,minimum:0},filter:{type:"*"},tolerance:{type:"number",default:.375},cluster:{type:"boolean",default:!1},clusterRadius:{type:"number",default:50,minimum:0},clusterMaxZoom:{type:"number"},clusterMinPoints:{type:"number"},clusterProperties:{type:"*"},lineMetrics:{type:"boolean",default:!1},generateId:{type:"boolean",default:!1},promoteId:{type:"promoteId"}},source_video:{type:{required:!0,type:"enum",values:{video:{}}},urls:{required:!0,type:"array",value:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},source_image:{type:{required:!0,type:"enum",values:{image:{}}},url:{required:!0,type:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},layer:{id:{type:"string",required:!0},type:{type:"enum",values:{fill:{},line:{},symbol:{},circle:{},heatmap:{},"fill-extrusion":{},raster:{},hillshade:{},background:{}},required:!0},metadata:{type:"*"},source:{type:"string"},"source-layer":{type:"string"},minzoom:{type:"number",minimum:0,maximum:24},maxzoom:{type:"number",minimum:0,maximum:24},filter:{type:"filter"},layout:{type:"layout"},paint:{type:"paint"}},layout:["layout_fill","layout_line","layout_circle","layout_heatmap","layout_fill-extrusion","layout_symbol","layout_raster","layout_hillshade","layout_background"],layout_background:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_fill:{"fill-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_circle:{"circle-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_heatmap:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},"layout_fill-extrusion":{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_line:{"line-cap":{type:"enum",values:{butt:{},round:{},square:{}},default:"butt",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-join":{type:"enum",values:{bevel:{},round:{},miter:{}},default:"miter",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"line-miter-limit":{type:"number",default:2,requires:[{"line-join":"miter"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-round-limit":{type:"number",default:1.05,requires:[{"line-join":"round"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_symbol:{"symbol-placement":{type:"enum",values:{point:{},line:{},"line-center":{}},default:"point",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-spacing":{type:"number",default:250,minimum:1,units:"pixels",requires:[{"symbol-placement":"line"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"symbol-avoid-edges":{type:"boolean",default:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"symbol-z-order":{type:"enum",values:{auto:{},"viewport-y":{},source:{}},default:"auto",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-allow-overlap":{type:"boolean",default:!1,requires:["icon-image",{"!":"icon-overlap"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-overlap":{type:"enum",values:{never:{},always:{},cooperative:{}},requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-ignore-placement":{type:"boolean",default:!1,requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-optional":{type:"boolean",default:!1,requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-rotation-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-size":{type:"number",default:1,minimum:0,units:"factor of the original icon size",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-text-fit":{type:"enum",values:{none:{},width:{},height:{},both:{}},default:"none",requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-text-fit-padding":{type:"array",value:"number",length:4,default:[0,0,0,0],units:"pixels",requires:["icon-image","text-field",{"icon-text-fit":["both","width","height"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-image":{type:"resolvedImage",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-padding":{type:"padding",default:[2],units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-keep-upright":{type:"boolean",default:!1,requires:["icon-image",{"icon-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-offset":{type:"array",value:"number",length:2,default:[0,0],requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotation-alignment":{type:"enum",values:{map:{},viewport:{},"viewport-glyph":{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-field":{type:"formatted",default:"",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-font":{type:"array",value:"string",default:["Open Sans Regular","Arial Unicode MS Regular"],requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-size":{type:"number",default:16,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-width":{type:"number",default:10,minimum:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-line-height":{type:"number",default:1.2,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-letter-spacing":{type:"number",default:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-justify":{type:"enum",values:{auto:{},left:{},center:{},right:{}},default:"center",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-radial-offset":{type:"number",units:"ems",default:0,requires:["text-field"],"property-type":"data-driven",expression:{interpolated:!0,parameters:["zoom","feature"]}},"text-variable-anchor":{type:"array",value:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-variable-anchor-offset":{type:"variableAnchorOffsetCollection",requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["text-field",{"!":"text-variable-anchor"}],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-angle":{type:"number",default:45,units:"degrees",requires:["text-field",{"symbol-placement":["line","line-center"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-writing-mode":{type:"array",value:"enum",values:{horizontal:{},vertical:{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-padding":{type:"number",default:2,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-keep-upright":{type:"boolean",default:!0,requires:["text-field",{"text-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-transform":{type:"enum",values:{none:{},uppercase:{},lowercase:{}},default:"none",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-offset":{type:"array",value:"number",units:"ems",length:2,default:[0,0],requires:["text-field",{"!":"text-radial-offset"}],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-allow-overlap":{type:"boolean",default:!1,requires:["text-field",{"!":"text-overlap"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-overlap":{type:"enum",values:{never:{},always:{},cooperative:{}},requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-ignore-placement":{type:"boolean",default:!1,requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-optional":{type:"boolean",default:!1,requires:["text-field","icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_raster:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_hillshade:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},filter:{type:"array",value:"*"},filter_operator:{type:"enum",values:{"==":{},"!=":{},">":{},">=":{},"<":{},"<=":{},in:{},"!in":{},all:{},any:{},none:{},has:{},"!has":{}}},geometry_type:{type:"enum",values:{Point:{},LineString:{},Polygon:{}}},function:{expression:{type:"expression"},stops:{type:"array",value:"function_stop"},base:{type:"number",default:1,minimum:0},property:{type:"string",default:"$zoom"},type:{type:"enum",values:{identity:{},exponential:{},interval:{},categorical:{}},default:"exponential"},colorSpace:{type:"enum",values:{rgb:{},lab:{},hcl:{}},default:"rgb"},default:{type:"*",required:!1}},function_stop:{type:"array",minimum:0,maximum:24,value:["number","color"],length:2},expression:{type:"array",value:"*",minimum:1},light:{anchor:{type:"enum",default:"viewport",values:{map:{},viewport:{}},"property-type":"data-constant",transition:!1,expression:{interpolated:!1,parameters:["zoom"]}},position:{type:"array",default:[1.15,210,30],length:3,value:"number","property-type":"data-constant",transition:!0,expression:{interpolated:!0,parameters:["zoom"]}},color:{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},intensity:{type:"number","property-type":"data-constant",default:.5,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0}},sky:{"sky-color":{type:"color","property-type":"data-constant",default:"#88C6FC",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"horizon-color":{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"fog-color":{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"fog-ground-blend":{type:"number","property-type":"data-constant",default:.5,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"horizon-fog-blend":{type:"number","property-type":"data-constant",default:.8,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"sky-horizon-blend":{type:"number","property-type":"data-constant",default:.8,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"atmosphere-blend":{type:"number","property-type":"data-constant",default:.8,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0}},terrain:{source:{type:"string",required:!0},exaggeration:{type:"number",minimum:0,default:1}},projection:{type:{type:"enum",default:"mercator",values:{mercator:{},globe:{}}}},paint:["paint_fill","paint_line","paint_circle","paint_heatmap","paint_fill-extrusion","paint_symbol","paint_raster","paint_hillshade","paint_background"],paint_fill:{"fill-antialias":{type:"boolean",default:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-outline-color":{type:"color",transition:!0,requires:[{"!":"fill-pattern"},{"fill-antialias":!0}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"}},"paint_fill-extrusion":{"fill-extrusion-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-extrusion-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-extrusion-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"fill-extrusion-height":{type:"number",default:0,minimum:0,units:"meters",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-base":{type:"number",default:0,minimum:0,units:"meters",transition:!0,requires:["fill-extrusion-height"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-vertical-gradient":{type:"boolean",default:!0,transition:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},paint_line:{"line-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"line-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["line-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-width":{type:"number",default:1,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-gap-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-offset":{type:"number",default:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-dasharray":{type:"array",value:"number",minimum:0,transition:!0,units:"line widths",requires:[{"!":"line-pattern"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"line-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"line-gradient":{type:"color",transition:!1,requires:[{"!":"line-dasharray"},{"!":"line-pattern"},{source:"geojson",has:{lineMetrics:!0}}],expression:{interpolated:!0,parameters:["line-progress"]},"property-type":"color-ramp"}},paint_circle:{"circle-radius":{type:"number",default:5,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-blur":{type:"number",default:0,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"circle-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["circle-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-scale":{type:"enum",values:{map:{},viewport:{}},default:"map",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-alignment":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-stroke-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"}},paint_heatmap:{"heatmap-radius":{type:"number",default:30,minimum:1,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-weight":{type:"number",default:1,minimum:0,transition:!1,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-intensity":{type:"number",default:1,minimum:0,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"heatmap-color":{type:"color",default:["interpolate",["linear"],["heatmap-density"],0,"rgba(0, 0, 255, 0)",.1,"royalblue",.3,"cyan",.5,"lime",.7,"yellow",1,"red"],transition:!1,expression:{interpolated:!0,parameters:["heatmap-density"]},"property-type":"color-ramp"},"heatmap-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},paint_symbol:{"icon-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-color":{type:"color",default:"#000000",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["icon-image","icon-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-color":{type:"color",default:"#000000",transition:!0,overridable:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["text-field","text-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},paint_raster:{"raster-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-hue-rotate":{type:"number",default:0,period:360,transition:!0,units:"degrees",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-min":{type:"number",default:0,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-max":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-saturation":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-contrast":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-resampling":{type:"enum",values:{linear:{},nearest:{}},default:"linear",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"raster-fade-duration":{type:"number",default:300,minimum:0,transition:!1,units:"milliseconds",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},paint_hillshade:{"hillshade-illumination-direction":{type:"number",default:335,minimum:0,maximum:359,transition:!1,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-illumination-anchor":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-exaggeration":{type:"number",default:.5,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-shadow-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-highlight-color":{type:"color",default:"#FFFFFF",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-accent-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},paint_background:{"background-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"background-pattern"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"background-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"background-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},transition:{duration:{type:"number",default:300,minimum:0,units:"milliseconds"},delay:{type:"number",default:0,minimum:0,units:"milliseconds"}},"property-type":{"data-driven":{type:"property-type"},"cross-faded":{type:"property-type"},"cross-faded-data-driven":{type:"property-type"},"color-ramp":{type:"property-type"},"data-constant":{type:"property-type"},constant:{type:"property-type"}},promoteId:{"*":{type:"string"}}};let Ze=["type","source","source-layer","minzoom","maxzoom","filter","layout"];function ct(R,S){let F={};for(let W in R)W!=="ref"&&(F[W]=R[W]);return Ze.forEach(W=>{W in S&&(F[W]=S[W])}),F}function pt(R,S){if(Array.isArray(R)){if(!Array.isArray(S)||R.length!==S.length)return!1;for(let F=0;F<R.length;F++)if(!pt(R[F],S[F]))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 F in R)if(!pt(R[F],S[F]))return!1;return!0}return R===S}function Wt(R,S){R.push(S)}function st(R,S,F){Wt(F,{command:"addSource",args:[R,S[R]]})}function lt(R,S,F){Wt(S,{command:"removeSource",args:[R]}),F[R]=!0}function Gt(R,S,F,W){lt(R,F,W),st(R,S,F)}function Nt(R,S,F){let W;for(W in R[F])if(Object.prototype.hasOwnProperty.call(R[F],W)&&W!=="data"&&!pt(R[F][W],S[F][W]))return!1;for(W in S[F])if(Object.prototype.hasOwnProperty.call(S[F],W)&&W!=="data"&&!pt(R[F][W],S[F][W]))return!1;return!0}function $t(R,S,F,W,te,fe){R=R||{},S=S||{};for(let pe in R)Object.prototype.hasOwnProperty.call(R,pe)&&(pt(R[pe],S[pe])||F.push({command:fe,args:[W,pe,S[pe],te]}));for(let pe in S)Object.prototype.hasOwnProperty.call(S,pe)&&!Object.prototype.hasOwnProperty.call(R,pe)&&(pt(R[pe],S[pe])||F.push({command:fe,args:[W,pe,S[pe],te]}))}function sr(R){return R.id}function wr(R,S){return R[S.id]=S,R}class ur{constructor(S,F,W,te){this.message=(S?`${S}: `:"")+W,te&&(this.identifier=te),F!=null&&F.__line__&&(this.line=F.__line__)}}function Qe(R,...S){for(let F of S)for(let W in F)R[W]=F[W];return R}class Et extends Error{constructor(S,F){super(F),this.message=F,this.key=S}}class er{constructor(S,F=[]){this.parent=S,this.bindings={};for(let[W,te]of F)this.bindings[W]=te}concat(S){return new er(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 Ut={kind:"null"},Ft={kind:"number"},bt={kind:"string"},yt={kind:"boolean"},Yt={kind:"color"},lr={kind:"object"},Tr={kind:"value"},Rr={kind:"collator"},ei={kind:"formatted"},Wr={kind:"padding"},Ur={kind:"resolvedImage"},dt={kind:"variableAnchorOffsetCollection"};function Ge(R,S){return{kind:"array",itemType:R,N:S}}function Je(R){if(R.kind==="array"){let S=Je(R.itemType);return typeof R.N=="number"?`array<${S}, ${R.N}>`:R.itemType.kind==="value"?"array":`array<${S}>`}return R.kind}let je=[Ut,Ft,bt,yt,Yt,ei,lr,Ge(Tr),Wr,Ur,dt];function $e(R,S){if(S.kind==="error")return null;if(R.kind==="array"){if(S.kind==="array"&&(S.N===0&&S.itemType.kind==="value"||!$e(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 F of je)if(!$e(F,S))return null}}return`Expected ${Je(R)} but found ${Je(S)} instead.`}function wt(R,S){return S.some(F=>F.kind===R.kind)}function Ie(R,S){return S.some(F=>F==="null"?R===null:F==="array"?Array.isArray(R):F==="object"?R&&!Array.isArray(R)&&typeof R=="object":F===typeof R)}function xe(R,S){return R.kind==="array"&&S.kind==="array"?R.itemType.kind===S.itemType.kind&&typeof R.N=="number":R.kind===S.kind}let Ce=.96422,vt=.82521,nr=4/29,ir=6/29,pr=3*ir*ir,oi=ir*ir*ir,di=Math.PI/180,Jr=180/Math.PI;function fi(R){return(R%=360)<0&&(R+=360),R}function Hi([R,S,F,W]){let te,fe,pe=wn((.2225045*(R=Pn(R))+.7168786*(S=Pn(S))+.0606169*(F=Pn(F)))/1);R===S&&S===F?te=fe=pe:(te=wn((.4360747*R+.3850649*S+.1430804*F)/Ce),fe=wn((.0139322*R+.0971045*S+.7141733*F)/vt));let ze=116*pe-16;return[ze<0?0:ze,500*(te-pe),200*(pe-fe),W]}function Pn(R){return R<=.04045?R/12.92:Math.pow((R+.055)/1.055,2.4)}function wn(R){return R>oi?Math.pow(R,1/3):R/pr+nr}function pn([R,S,F,W]){let te=(R+16)/116,fe=isNaN(S)?te:te+S/500,pe=isNaN(F)?te:te-F/200;return te=1*kn(te),fe=Ce*kn(fe),pe=vt*kn(pe),[Vn(3.1338561*fe-1.6168667*te-.4906146*pe),Vn(-.9787684*fe+1.9161415*te+.033454*pe),Vn(.0719453*fe-.2289914*te+1.4052427*pe),W]}function Vn(R){return(R=R<=.00304?12.92*R:1.055*Math.pow(R,1/2.4)-.055)<0?0:R>1?1:R}function kn(R){return R>ir?R*R*R:pr*(R-nr)}function ea(R){return parseInt(R.padEnd(2,R),16)/255}function ua(R,S){return Vt(S?R/100:R,0,1)}function Vt(R,S,F){return Math.min(Math.max(S,R),F)}function _t(R){return!R.some(Number.isNaN)}let tr={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 ar{constructor(S,F,W,te=1,fe=!0){this.r=S,this.g=F,this.b=W,this.a=te,fe||(this.r*=te,this.g*=te,this.b*=te,te||this.overwriteGetter("rgb",[S,F,W,te]))}static parse(S){if(S instanceof ar)return S;if(typeof S!="string")return;let F=function(W){if((W=W.toLowerCase().trim())==="transparent")return[0,0,0,0];let te=tr[W];if(te){let[pe,ze,Ke]=te;return[pe/255,ze/255,Ke/255,1]}if(W.startsWith("#")&&/^#(?:[0-9a-f]{3,4}|[0-9a-f]{6}|[0-9a-f]{8})$/.test(W)){let pe=W.length<6?1:2,ze=1;return[ea(W.slice(ze,ze+=pe)),ea(W.slice(ze,ze+=pe)),ea(W.slice(ze,ze+=pe)),ea(W.slice(ze,ze+pe)||"ff")]}if(W.startsWith("rgb")){let pe=W.match(/^rgba?\(\s*([\de.+-]+)(%)?(?:\s+|\s*(,)\s*)([\de.+-]+)(%)?(?:\s+|\s*(,)\s*)([\de.+-]+)(%)?(?:\s*([,\/])\s*([\de.+-]+)(%)?)?\s*\)$/);if(pe){let[ze,Ke,ut,Lt,Qt,fr,mr,Lr,zr,ui,yi,dn]=pe,Fi=[Lt||" ",mr||" ",ui].join("");if(Fi===" "||Fi===" /"||Fi===",,"||Fi===",,,"){let ln=[ut,fr,zr].join(""),An=ln==="%%%"?100:ln===""?255:0;if(An){let pa=[Vt(+Ke/An,0,1),Vt(+Qt/An,0,1),Vt(+Lr/An,0,1),yi?ua(+yi,dn):1];if(_t(pa))return pa}}return}}let fe=W.match(/^hsla?\(\s*([\de.+-]+)(?:deg)?(?:\s+|\s*(,)\s*)([\de.+-]+)%(?:\s+|\s*(,)\s*)([\de.+-]+)%(?:\s*([,\/])\s*([\de.+-]+)(%)?)?\s*\)$/);if(fe){let[pe,ze,Ke,ut,Lt,Qt,fr,mr,Lr]=fe,zr=[Ke||" ",Lt||" ",fr].join("");if(zr===" "||zr===" /"||zr===",,"||zr===",,,"){let ui=[+ze,Vt(+ut,0,100),Vt(+Qt,0,100),mr?ua(+mr,Lr):1];if(_t(ui))return function([yi,dn,Fi,ln]){function An(pa){let ro=(pa+yi/30)%12,Vo=dn*Math.min(Fi,1-Fi);return Fi-Vo*Math.max(-1,Math.min(ro-3,9-ro,1))}return yi=fi(yi),dn/=100,Fi/=100,[An(0),An(8),An(4),ln]}(ui)}}}(S);return F?new ar(...F,!1):void 0}get rgb(){let{r:S,g:F,b:W,a:te}=this,fe=te||1/0;return this.overwriteGetter("rgb",[S/fe,F/fe,W/fe,te])}get hcl(){return this.overwriteGetter("hcl",function(S){let[F,W,te,fe]=Hi(S),pe=Math.sqrt(W*W+te*te);return[Math.round(1e4*pe)?fi(Math.atan2(te,W)*Jr):NaN,pe,F,fe]}(this.rgb))}get lab(){return this.overwriteGetter("lab",Hi(this.rgb))}overwriteGetter(S,F){return Object.defineProperty(this,S,{value:F}),F}toString(){let[S,F,W,te]=this.rgb;return`rgba(${[S,F,W].map(fe=>Math.round(255*fe)).join(",")},${te})`}}ar.black=new ar(0,0,0,1),ar.white=new ar(1,1,1,1),ar.transparent=new ar(0,0,0,0),ar.red=new ar(1,0,0,1);class Er{constructor(S,F,W){this.sensitivity=S?F?"variant":"case":F?"accent":"base",this.locale=W,this.collator=new Intl.Collator(this.locale?this.locale:[],{sensitivity:this.sensitivity,usage:"search"})}compare(S,F){return this.collator.compare(S,F)}resolvedLocale(){return new Intl.Collator(this.locale?this.locale:[]).resolvedOptions().locale}}class Zr{constructor(S,F,W,te,fe){this.text=S,this.image=F,this.scale=W,this.fontStack=te,this.textColor=fe}}class ri{constructor(S){this.sections=S}static fromString(S){return new ri([new Zr(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 ri?S:ri.fromString(S)}toString(){return this.sections.length===0?"":this.sections.map(S=>S.text).join("")}}class $r{constructor(S){this.values=S.slice()}static parse(S){if(S instanceof $r)return S;if(typeof S=="number")return new $r([S,S,S,S]);if(Array.isArray(S)&&!(S.length<1||S.length>4)){for(let F of S)if(typeof F!="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 $r(S)}}toString(){return JSON.stringify(this.values)}}let zi=new Set(["center","left","right","top","bottom","top-left","top-right","bottom-left","bottom-right"]);class Ji{constructor(S){this.values=S.slice()}static parse(S){if(S instanceof Ji)return S;if(Array.isArray(S)&&!(S.length<1)&&S.length%2==0){for(let F=0;F<S.length;F+=2){let W=S[F],te=S[F+1];if(typeof W!="string"||!zi.has(W)||!Array.isArray(te)||te.length!==2||typeof te[0]!="number"||typeof te[1]!="number")return}return new Ji(S)}}toString(){return JSON.stringify(this.values)}}class en{constructor(S){this.name=S.name,this.available=S.available}toString(){return this.name}static fromString(S){return S?new en({name:S,available:!1}):null}}function cn(R,S,F,W){return typeof R=="number"&&R>=0&&R<=255&&typeof S=="number"&&S>=0&&S<=255&&typeof F=="number"&&F>=0&&F<=255?W===void 0||typeof W=="number"&&W>=0&&W<=1?null:`Invalid rgba value [${[R,S,F,W].join(", ")}]: 'a' must be between 0 and 1.`:`Invalid rgba value [${(typeof W=="number"?[R,S,F,W]:[R,S,F]).join(", ")}]: 'r', 'g', and 'b' must be between 0 and 255.`}function yn(R){if(R===null||typeof R=="string"||typeof R=="boolean"||typeof R=="number"||R instanceof ar||R instanceof Er||R instanceof ri||R instanceof $r||R instanceof Ji||R instanceof en)return!0;if(Array.isArray(R)){for(let S of R)if(!yn(S))return!1;return!0}if(typeof R=="object"){for(let S in R)if(!yn(R[S]))return!1;return!0}return!1}function Mn(R){if(R===null)return Ut;if(typeof R=="string")return bt;if(typeof R=="boolean")return yt;if(typeof R=="number")return Ft;if(R instanceof ar)return Yt;if(R instanceof Er)return Rr;if(R instanceof ri)return ei;if(R instanceof $r)return Wr;if(R instanceof Ji)return dt;if(R instanceof en)return Ur;if(Array.isArray(R)){let S=R.length,F;for(let W of R){let te=Mn(W);if(F){if(F===te)continue;F=Tr;break}F=te}return Ge(F||Tr,S)}return lr}function Ba(R){let S=typeof R;return R===null?"":S==="string"||S==="number"||S==="boolean"?String(R):R instanceof ar||R instanceof ri||R instanceof $r||R instanceof Ji||R instanceof en?R.toString():JSON.stringify(R)}class la{constructor(S,F){this.type=S,this.value=F}static parse(S,F){if(S.length!==2)return F.error(`'literal' expression requires exactly one argument, but found ${S.length-1} instead.`);if(!yn(S[1]))return F.error("invalid value");let W=S[1],te=Mn(W),fe=F.expectedType;return te.kind!=="array"||te.N!==0||!fe||fe.kind!=="array"||typeof fe.N=="number"&&fe.N!==0||(te=fe),new la(te,W)}evaluate(){return this.value}eachChild(){}outputDefined(){return!0}}class ma{constructor(S){this.name="ExpressionEvaluationError",this.message=S}toJSON(){return this.message}}let Wa={string:bt,number:Ft,boolean:yt,object:lr};class Fa{constructor(S,F){this.type=S,this.args=F}static parse(S,F){if(S.length<2)return F.error("Expected at least one argument.");let W,te=1,fe=S[0];if(fe==="array"){let ze,Ke;if(S.length>2){let ut=S[1];if(typeof ut!="string"||!(ut in Wa)||ut==="object")return F.error('The item type argument of "array" must be one of string, number, boolean',1);ze=Wa[ut],te++}else ze=Tr;if(S.length>3){if(S[2]!==null&&(typeof S[2]!="number"||S[2]<0||S[2]!==Math.floor(S[2])))return F.error('The length argument to "array" must be a positive integer literal',2);Ke=S[2],te++}W=Ge(ze,Ke)}else{if(!Wa[fe])throw new Error(`Types doesn't contain name = ${fe}`);W=Wa[fe]}let pe=[];for(;te<S.length;te++){let ze=F.parse(S[te],te,Tr);if(!ze)return null;pe.push(ze)}return new Fa(W,pe)}evaluate(S){for(let F=0;F<this.args.length;F++){let W=this.args[F].evaluate(S);if(!$e(this.type,Mn(W)))return W;if(F===this.args.length-1)throw new ma(`Expected value to be of type ${Je(this.type)}, but found ${Je(Mn(W))} instead.`)}throw new Error}eachChild(S){this.args.forEach(S)}outputDefined(){return this.args.every(S=>S.outputDefined())}}let Wo={"to-boolean":yt,"to-color":Yt,"to-number":Ft,"to-string":bt};class da{constructor(S,F){this.type=S,this.args=F}static parse(S,F){if(S.length<2)return F.error("Expected at least one argument.");let W=S[0];if(!Wo[W])throw new Error(`Can't parse ${W} as it is not part of the known types`);if((W==="to-boolean"||W==="to-string")&&S.length!==2)return F.error("Expected one argument.");let te=Wo[W],fe=[];for(let pe=1;pe<S.length;pe++){let ze=F.parse(S[pe],pe,Tr);if(!ze)return null;fe.push(ze)}return new da(te,fe)}evaluate(S){switch(this.type.kind){case"boolean":return!!this.args[0].evaluate(S);case"color":{let F,W;for(let te of this.args){if(F=te.evaluate(S),W=null,F instanceof ar)return F;if(typeof F=="string"){let fe=S.parseColor(F);if(fe)return fe}else if(Array.isArray(F)&&(W=F.length<3||F.length>4?`Invalid rbga value ${JSON.stringify(F)}: expected an array containing either three or four numeric values.`:cn(F[0],F[1],F[2],F[3]),!W))return new ar(F[0]/255,F[1]/255,F[2]/255,F[3])}throw new ma(W||`Could not parse color from value '${typeof F=="string"?F:JSON.stringify(F)}'`)}case"padding":{let F;for(let W of this.args){F=W.evaluate(S);let te=$r.parse(F);if(te)return te}throw new ma(`Could not parse padding from value '${typeof F=="string"?F:JSON.stringify(F)}'`)}case"variableAnchorOffsetCollection":{let F;for(let W of this.args){F=W.evaluate(S);let te=Ji.parse(F);if(te)return te}throw new ma(`Could not parse variableAnchorOffsetCollection from value '${typeof F=="string"?F:JSON.stringify(F)}'`)}case"number":{let F=null;for(let W of this.args){if(F=W.evaluate(S),F===null)return 0;let te=Number(F);if(!isNaN(te))return te}throw new ma(`Could not convert ${JSON.stringify(F)} to number.`)}case"formatted":return ri.fromString(Ba(this.args[0].evaluate(S)));case"resolvedImage":return en.fromString(Ba(this.args[0].evaluate(S)));default:return Ba(this.args[0].evaluate(S))}}eachChild(S){this.args.forEach(S)}outputDefined(){return this.args.every(S=>S.outputDefined())}}let Wn=["Unknown","Point","LineString","Polygon"];class Ga{constructor(){this.globals=null,this.feature=null,this.featureState=null,this.formattedSection=null,this._parseColorCache={},this.availableImages=null,this.canonical=null}id(){return this.feature&&"id"in this.feature?this.feature.id:null}geometryType(){return this.feature?typeof this.feature.type=="number"?Wn[this.feature.type]:this.feature.type:null}geometry(){return this.feature&&"geometry"in this.feature?this.feature.geometry:null}canonicalID(){return this.canonical}properties(){return this.feature&&this.feature.properties||{}}parseColor(S){let F=this._parseColorCache[S];return F||(F=this._parseColorCache[S]=ar.parse(S)),F}}class vo{constructor(S,F,W=[],te,fe=new er,pe=[]){this.registry=S,this.path=W,this.key=W.map(ze=>`[${ze}]`).join(""),this.scope=fe,this.errors=pe,this.expectedType=te,this._isConstant=F}parse(S,F,W,te,fe={}){return F?this.concat(F,W,te)._parse(S,fe):this._parse(S,fe)}_parse(S,F){function W(te,fe,pe){return pe==="assert"?new Fa(fe,[te]):pe==="coerce"?new da(fe,[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 fe=this.registry[te];if(fe){let pe=fe.parse(S,this);if(!pe)return null;if(this.expectedType){let ze=this.expectedType,Ke=pe.type;if(ze.kind!=="string"&&ze.kind!=="number"&&ze.kind!=="boolean"&&ze.kind!=="object"&&ze.kind!=="array"||Ke.kind!=="value")if(ze.kind!=="color"&&ze.kind!=="formatted"&&ze.kind!=="resolvedImage"||Ke.kind!=="value"&&Ke.kind!=="string")if(ze.kind!=="padding"||Ke.kind!=="value"&&Ke.kind!=="number"&&Ke.kind!=="array")if(ze.kind!=="variableAnchorOffsetCollection"||Ke.kind!=="value"&&Ke.kind!=="array"){if(this.checkSubtype(ze,Ke))return null}else pe=W(pe,ze,F.typeAnnotation||"coerce");else pe=W(pe,ze,F.typeAnnotation||"coerce");else pe=W(pe,ze,F.typeAnnotation||"coerce");else pe=W(pe,ze,F.typeAnnotation||"assert")}if(!(pe instanceof la)&&pe.type.kind!=="resolvedImage"&&this._isConstant(pe)){let ze=new Ga;try{pe=new la(pe.type,pe.evaluate(ze))}catch(Ke){return this.error(Ke.message),null}}return pe}return this.error(`Unknown expression "${te}". If you wanted a literal array, use ["literal", [...]].`,0)}return this.error(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,F,W){let te=typeof S=="number"?this.path.concat(S):this.path,fe=W?this.scope.concat(W):this.scope;return new vo(this.registry,this._isConstant,te,F||null,fe,this.errors)}error(S,...F){let W=`${this.key}${F.map(te=>`[${te}]`).join("")}`;this.errors.push(new Et(W,S))}checkSubtype(S,F){let W=$e(S,F);return W&&this.error(W),W}}class jn{constructor(S,F){this.type=F.type,this.bindings=[].concat(S),this.result=F}evaluate(S){return this.result.evaluate(S)}eachChild(S){for(let F of this.bindings)S(F[1]);S(this.result)}static parse(S,F){if(S.length<4)return F.error(`Expected at least 3 arguments, but found ${S.length-1} instead.`);let W=[];for(let fe=1;fe<S.length-1;fe+=2){let pe=S[fe];if(typeof pe!="string")return F.error(`Expected string, but found ${typeof pe} instead.`,fe);if(/[^a-zA-Z0-9_]/.test(pe))return F.error("Variable names must contain only alphanumeric characters or '_'.",fe);let ze=F.parse(S[fe+1],fe+1);if(!ze)return null;W.push([pe,ze])}let te=F.parse(S[S.length-1],S.length-1,F.expectedType,W);return te?new jn(W,te):null}outputDefined(){return this.result.outputDefined()}}class St{constructor(S,F){this.type=F.type,this.name=S,this.boundExpression=F}static parse(S,F){if(S.length!==2||typeof S[1]!="string")return F.error("'var' expression requires exactly one string literal argument.");let W=S[1];return F.scope.has(W)?new St(W,F.scope.get(W)):F.error(`Unknown variable "${W}". Make sure "${W}" has been bound in an enclosing "let" expression before using it.`,1)}evaluate(S){return this.boundExpression.evaluate(S)}eachChild(){}outputDefined(){return!1}}class Cr{constructor(S,F,W){this.type=S,this.index=F,this.input=W}static parse(S,F){if(S.length!==3)return F.error(`Expected 2 arguments, but found ${S.length-1} instead.`);let W=F.parse(S[1],1,Ft),te=F.parse(S[2],2,Ge(F.expectedType||Tr));return W&&te?new Cr(te.type.itemType,W,te):null}evaluate(S){let F=this.index.evaluate(S),W=this.input.evaluate(S);if(F<0)throw new ma(`Array index out of bounds: ${F} < 0.`);if(F>=W.length)throw new ma(`Array index out of bounds: ${F} > ${W.length-1}.`);if(F!==Math.floor(F))throw new ma(`Array index must be an integer, but found ${F} instead.`);return W[F]}eachChild(S){S(this.index),S(this.input)}outputDefined(){return!1}}class Qr{constructor(S,F){this.type=yt,this.needle=S,this.haystack=F}static parse(S,F){if(S.length!==3)return F.error(`Expected 2 arguments, but found ${S.length-1} instead.`);let W=F.parse(S[1],1,Tr),te=F.parse(S[2],2,Tr);return W&&te?wt(W.type,[yt,bt,Ft,Ut,Tr])?new Qr(W,te):F.error(`Expected first argument to be of type boolean, string, number or null, but found ${Je(W.type)} instead`):null}evaluate(S){let F=this.needle.evaluate(S),W=this.haystack.evaluate(S);if(!W)return!1;if(!Ie(F,["boolean","string","number","null"]))throw new ma(`Expected first argument to be of type boolean, string, number or null, but found ${Je(Mn(F))} instead.`);if(!Ie(W,["string","array"]))throw new ma(`Expected second argument to be of type array or string, but found ${Je(Mn(W))} instead.`);return W.indexOf(F)>=0}eachChild(S){S(this.needle),S(this.haystack)}outputDefined(){return!0}}class pi{constructor(S,F,W){this.type=Ft,this.needle=S,this.haystack=F,this.fromIndex=W}static parse(S,F){if(S.length<=2||S.length>=5)return F.error(`Expected 3 or 4 arguments, but found ${S.length-1} instead.`);let W=F.parse(S[1],1,Tr),te=F.parse(S[2],2,Tr);if(!W||!te)return null;if(!wt(W.type,[yt,bt,Ft,Ut,Tr]))return F.error(`Expected first argument to be of type boolean, string, number or null, but found ${Je(W.type)} instead`);if(S.length===4){let fe=F.parse(S[3],3,Ft);return fe?new pi(W,te,fe):null}return new pi(W,te)}evaluate(S){let F=this.needle.evaluate(S),W=this.haystack.evaluate(S);if(!Ie(F,["boolean","string","number","null"]))throw new ma(`Expected first argument to be of type boolean, string, number or null, but found ${Je(Mn(F))} instead.`);let te;if(this.fromIndex&&(te=this.fromIndex.evaluate(S)),Ie(W,["string"])){let fe=W.indexOf(F,te);return fe===-1?-1:[...W.slice(0,fe)].length}if(Ie(W,["array"]))return W.indexOf(F,te);throw new ma(`Expected second argument to be of type array or string, but found ${Je(Mn(W))} instead.`)}eachChild(S){S(this.needle),S(this.haystack),this.fromIndex&&S(this.fromIndex)}outputDefined(){return!1}}class fn{constructor(S,F,W,te,fe,pe){this.inputType=S,this.type=F,this.input=W,this.cases=te,this.outputs=fe,this.otherwise=pe}static parse(S,F){if(S.length<5)return F.error(`Expected at least 4 arguments, but found only ${S.length-1}.`);if(S.length%2!=1)return F.error("Expected an even number of arguments.");let W,te;F.expectedType&&F.expectedType.kind!=="value"&&(te=F.expectedType);let fe={},pe=[];for(let ut=2;ut<S.length-1;ut+=2){let Lt=S[ut],Qt=S[ut+1];Array.isArray(Lt)||(Lt=[Lt]);let fr=F.concat(ut);if(Lt.length===0)return fr.error("Expected at least one branch label.");for(let Lr of Lt){if(typeof Lr!="number"&&typeof Lr!="string")return fr.error("Branch labels must be numbers or strings.");if(typeof Lr=="number"&&Math.abs(Lr)>Number.MAX_SAFE_INTEGER)return fr.error(`Branch labels must be integers no larger than ${Number.MAX_SAFE_INTEGER}.`);if(typeof Lr=="number"&&Math.floor(Lr)!==Lr)return fr.error("Numeric branch labels must be integer values.");if(W){if(fr.checkSubtype(W,Mn(Lr)))return null}else W=Mn(Lr);if(fe[String(Lr)]!==void 0)return fr.error("Branch labels must be unique.");fe[String(Lr)]=pe.length}let mr=F.parse(Qt,ut,te);if(!mr)return null;te=te||mr.type,pe.push(mr)}let ze=F.parse(S[1],1,Tr);if(!ze)return null;let Ke=F.parse(S[S.length-1],S.length-1,te);return Ke?ze.type.kind!=="value"&&F.concat(1).checkSubtype(W,ze.type)?null:new fn(W,te,ze,fe,pe,Ke):null}evaluate(S){let F=this.input.evaluate(S);return(Mn(F)===this.inputType&&this.outputs[this.cases[F]]||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 Sn{constructor(S,F,W){this.type=S,this.branches=F,this.otherwise=W}static parse(S,F){if(S.length<4)return F.error(`Expected at least 3 arguments, but found only ${S.length-1}.`);if(S.length%2!=0)return F.error("Expected an odd number of arguments.");let W;F.expectedType&&F.expectedType.kind!=="value"&&(W=F.expectedType);let te=[];for(let pe=1;pe<S.length-1;pe+=2){let ze=F.parse(S[pe],pe,yt);if(!ze)return null;let Ke=F.parse(S[pe+1],pe+1,W);if(!Ke)return null;te.push([ze,Ke]),W=W||Ke.type}let fe=F.parse(S[S.length-1],S.length-1,W);if(!fe)return null;if(!W)throw new Error("Can't infer output type");return new Sn(W,te,fe)}evaluate(S){for(let[F,W]of this.branches)if(F.evaluate(S))return W.evaluate(S);return this.otherwise.evaluate(S)}eachChild(S){for(let[F,W]of this.branches)S(F),S(W);S(this.otherwise)}outputDefined(){return this.branches.every(([S,F])=>F.outputDefined())&&this.otherwise.outputDefined()}}class En{constructor(S,F,W,te){this.type=S,this.input=F,this.beginIndex=W,this.endIndex=te}static parse(S,F){if(S.length<=2||S.length>=5)return F.error(`Expected 3 or 4 arguments, but found ${S.length-1} instead.`);let W=F.parse(S[1],1,Tr),te=F.parse(S[2],2,Ft);if(!W||!te)return null;if(!wt(W.type,[Ge(Tr),bt,Tr]))return F.error(`Expected first argument to be of type array or string, but found ${Je(W.type)} instead`);if(S.length===4){let fe=F.parse(S[3],3,Ft);return fe?new En(W.type,W,te,fe):null}return new En(W.type,W,te)}evaluate(S){let F=this.input.evaluate(S),W=this.beginIndex.evaluate(S),te;if(this.endIndex&&(te=this.endIndex.evaluate(S)),Ie(F,["string"]))return[...F].slice(W,te).join("");if(Ie(F,["array"]))return F.slice(W,te);throw new ma(`Expected first argument to be of type array or string, but found ${Je(Mn(F))} instead.`)}eachChild(S){S(this.input),S(this.beginIndex),this.endIndex&&S(this.endIndex)}outputDefined(){return!1}}function ki(R,S){let F=R.length-1,W,te,fe=0,pe=F,ze=0;for(;fe<=pe;)if(ze=Math.floor((fe+pe)/2),W=R[ze],te=R[ze+1],W<=S){if(ze===F||S<te)return ze;fe=ze+1}else{if(!(W>S))throw new ma("Input is not a number.");pe=ze-1}return 0}class _n{constructor(S,F,W){this.type=S,this.input=F,this.labels=[],this.outputs=[];for(let[te,fe]of W)this.labels.push(te),this.outputs.push(fe)}static parse(S,F){if(S.length-1<4)return F.error(`Expected at least 4 arguments, but found only ${S.length-1}.`);if((S.length-1)%2!=0)return F.error("Expected an even number of arguments.");let W=F.parse(S[1],1,Ft);if(!W)return null;let te=[],fe=null;F.expectedType&&F.expectedType.kind!=="value"&&(fe=F.expectedType);for(let pe=1;pe<S.length;pe+=2){let ze=pe===1?-1/0:S[pe],Ke=S[pe+1],ut=pe,Lt=pe+1;if(typeof ze!="number")return F.error('Input/output pairs for "step" expressions must be defined using literal numeric values (not computed expressions) for the input values.',ut);if(te.length&&te[te.length-1][0]>=ze)return F.error('Input/output pairs for "step" expressions must be arranged with input values in strictly ascending order.',ut);let Qt=F.parse(Ke,Lt,fe);if(!Qt)return null;fe=fe||Qt.type,te.push([ze,Qt])}return new _n(fe,W,te)}evaluate(S){let F=this.labels,W=this.outputs;if(F.length===1)return W[0].evaluate(S);let te=this.input.evaluate(S);if(te<=F[0])return W[0].evaluate(S);let fe=F.length;return te>=F[fe-1]?W[fe-1].evaluate(S):W[ki(F,te)].evaluate(S)}eachChild(S){S(this.input);for(let F of this.outputs)S(F)}outputDefined(){return this.outputs.every(S=>S.outputDefined())}}function ya(R){return R&&R.__esModule&&Object.prototype.hasOwnProperty.call(R,"default")?R.default:R}var Jn=Ma;function Ma(R,S,F,W){this.cx=3*R,this.bx=3*(F-R)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*S,this.by=3*(W-S)-this.cy,this.ay=1-this.cy-this.by,this.p1x=R,this.p1y=S,this.p2x=F,this.p2y=W}Ma.prototype={sampleCurveX:function(R){return((this.ax*R+this.bx)*R+this.cx)*R},sampleCurveY:function(R){return((this.ay*R+this.by)*R+this.cy)*R},sampleCurveDerivativeX:function(R){return(3*this.ax*R+2*this.bx)*R+this.cx},solveCurveX:function(R,S){if(S===void 0&&(S=1e-6),R<0)return 0;if(R>1)return 1;for(var F=R,W=0;W<8;W++){var te=this.sampleCurveX(F)-R;if(Math.abs(te)<S)return F;var fe=this.sampleCurveDerivativeX(F);if(Math.abs(fe)<1e-6)break;F-=te/fe}var pe=0,ze=1;for(F=R,W=0;W<20&&(te=this.sampleCurveX(F),!(Math.abs(te-R)<S));W++)R>te?pe=F:ze=F,F=.5*(ze-pe)+pe;return F},solve:function(R,S){return this.sampleCurveY(this.solveCurveX(R,S))}};var _o=ya(Jn);function No(R,S,F){return R+F*(S-R)}function po(R,S,F){return R.map((W,te)=>No(W,S[te],F))}let Lo={number:No,color:function(R,S,F,W="rgb"){switch(W){case"rgb":{let[te,fe,pe,ze]=po(R.rgb,S.rgb,F);return new ar(te,fe,pe,ze,!1)}case"hcl":{let[te,fe,pe,ze]=R.hcl,[Ke,ut,Lt,Qt]=S.hcl,fr,mr;if(isNaN(te)||isNaN(Ke))isNaN(te)?isNaN(Ke)?fr=NaN:(fr=Ke,pe!==1&&pe!==0||(mr=ut)):(fr=te,Lt!==1&&Lt!==0||(mr=fe));else{let dn=Ke-te;Ke>te&&dn>180?dn-=360:Ke<te&&te-Ke>180&&(dn+=360),fr=te+F*dn}let[Lr,zr,ui,yi]=function([dn,Fi,ln,An]){return dn=isNaN(dn)?0:dn*di,pn([ln,Math.cos(dn)*Fi,Math.sin(dn)*Fi,An])}([fr,mr!=null?mr:No(fe,ut,F),No(pe,Lt,F),No(ze,Qt,F)]);return new ar(Lr,zr,ui,yi,!1)}case"lab":{let[te,fe,pe,ze]=pn(po(R.lab,S.lab,F));return new ar(te,fe,pe,ze,!1)}}},array:po,padding:function(R,S,F){return new $r(po(R.values,S.values,F))},variableAnchorOffsetCollection:function(R,S,F){let W=R.values,te=S.values;if(W.length!==te.length)throw new ma(`Cannot interpolate values of different length. from: ${R.toString()}, to: ${S.toString()}`);let fe=[];for(let pe=0;pe<W.length;pe+=2){if(W[pe]!==te[pe])throw new ma(`Cannot interpolate values containing mismatched anchors. from[${pe}]: ${W[pe]}, to[${pe}]: ${te[pe]}`);fe.push(W[pe]);let[ze,Ke]=W[pe+1],[ut,Lt]=te[pe+1];fe.push([No(ze,ut,F),No(Ke,Lt,F)])}return new Ji(fe)}};class Co{constructor(S,F,W,te,fe){this.type=S,this.operator=F,this.interpolation=W,this.input=te,this.labels=[],this.outputs=[];for(let[pe,ze]of fe)this.labels.push(pe),this.outputs.push(ze)}static interpolationFactor(S,F,W,te){let fe=0;if(S.name==="exponential")fe=Fs(F,S.base,W,te);else if(S.name==="linear")fe=Fs(F,1,W,te);else if(S.name==="cubic-bezier"){let pe=S.controlPoints;fe=new _o(pe[0],pe[1],pe[2],pe[3]).solve(Fs(F,1,W,te))}return fe}static parse(S,F){let[W,te,fe,...pe]=S;if(!Array.isArray(te)||te.length===0)return F.error("Expected an interpolation type expression.",1);if(te[0]==="linear")te={name:"linear"};else if(te[0]==="exponential"){let ut=te[1];if(typeof ut!="number")return F.error("Exponential interpolation requires a numeric base.",1,1);te={name:"exponential",base:ut}}else{if(te[0]!=="cubic-bezier")return F.error(`Unknown interpolation type ${String(te[0])}`,1,0);{let ut=te.slice(1);if(ut.length!==4||ut.some(Lt=>typeof Lt!="number"||Lt<0||Lt>1))return F.error("Cubic bezier interpolation requires four numeric arguments with values between 0 and 1.",1);te={name:"cubic-bezier",controlPoints:ut}}}if(S.length-1<4)return F.error(`Expected at least 4 arguments, but found only ${S.length-1}.`);if((S.length-1)%2!=0)return F.error("Expected an even number of arguments.");if(fe=F.parse(fe,2,Ft),!fe)return null;let ze=[],Ke=null;W==="interpolate-hcl"||W==="interpolate-lab"?Ke=Yt:F.expectedType&&F.expectedType.kind!=="value"&&(Ke=F.expectedType);for(let ut=0;ut<pe.length;ut+=2){let Lt=pe[ut],Qt=pe[ut+1],fr=ut+3,mr=ut+4;if(typeof Lt!="number")return F.error('Input/output pairs for "interpolate" expressions must be defined using literal numeric values (not computed expressions) for the input values.',fr);if(ze.length&&ze[ze.length-1][0]>=Lt)return F.error('Input/output pairs for "interpolate" expressions must be arranged with input values in strictly ascending order.',fr);let Lr=F.parse(Qt,mr,Ke);if(!Lr)return null;Ke=Ke||Lr.type,ze.push([Lt,Lr])}return xe(Ke,Ft)||xe(Ke,Yt)||xe(Ke,Wr)||xe(Ke,dt)||xe(Ke,Ge(Ft))?new Co(Ke,W,te,fe,ze):F.error(`Type ${Je(Ke)} is not interpolatable.`)}evaluate(S){let F=this.labels,W=this.outputs;if(F.length===1)return W[0].evaluate(S);let te=this.input.evaluate(S);if(te<=F[0])return W[0].evaluate(S);let fe=F.length;if(te>=F[fe-1])return W[fe-1].evaluate(S);let pe=ki(F,te),ze=Co.interpolationFactor(this.interpolation,te,F[pe],F[pe+1]),Ke=W[pe].evaluate(S),ut=W[pe+1].evaluate(S);switch(this.operator){case"interpolate":return Lo[this.type.kind](Ke,ut,ze);case"interpolate-hcl":return Lo.color(Ke,ut,ze,"hcl");case"interpolate-lab":return Lo.color(Ke,ut,ze,"lab")}}eachChild(S){S(this.input);for(let F of this.outputs)S(F)}outputDefined(){return this.outputs.every(S=>S.outputDefined())}}function Fs(R,S,F,W){let te=W-F,fe=R-F;return te===0?0:S===1?fe/te:(Math.pow(S,fe)-1)/(Math.pow(S,te)-1)}class zs{constructor(S,F){this.type=S,this.args=F}static parse(S,F){if(S.length<2)return F.error("Expectected at least one argument.");let W=null,te=F.expectedType;te&&te.kind!=="value"&&(W=te);let fe=[];for(let ze of S.slice(1)){let Ke=F.parse(ze,1+fe.length,W,void 0,{typeAnnotation:"omit"});if(!Ke)return null;W=W||Ke.type,fe.push(Ke)}if(!W)throw new Error("No output type");let pe=te&&fe.some(ze=>$e(te,ze.type));return new zs(pe?Tr:W,fe)}evaluate(S){let F,W=null,te=0;for(let fe of this.args)if(te++,W=fe.evaluate(S),W&&W instanceof en&&!W.available&&(F||(F=W.name),W=null,te===this.args.length&&(W=F)),W!==null)break;return W}eachChild(S){this.args.forEach(S)}outputDefined(){return this.args.every(S=>S.outputDefined())}}function ul(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 cl(R,S,F,W){return W.compare(S,F)===0}function Fl(R,S,F){let W=R!=="=="&&R!=="!=";return class UHe{constructor(fe,pe,ze){this.type=yt,this.lhs=fe,this.rhs=pe,this.collator=ze,this.hasUntypedArgument=fe.type.kind==="value"||pe.type.kind==="value"}static parse(fe,pe){if(fe.length!==3&&fe.length!==4)return pe.error("Expected two or three arguments.");let ze=fe[0],Ke=pe.parse(fe[1],1,Tr);if(!Ke)return null;if(!ul(ze,Ke.type))return pe.concat(1).error(`"${ze}" comparisons are not supported for type '${Je(Ke.type)}'.`);let ut=pe.parse(fe[2],2,Tr);if(!ut)return null;if(!ul(ze,ut.type))return pe.concat(2).error(`"${ze}" comparisons are not supported for type '${Je(ut.type)}'.`);if(Ke.type.kind!==ut.type.kind&&Ke.type.kind!=="value"&&ut.type.kind!=="value")return pe.error(`Cannot compare types '${Je(Ke.type)}' and '${Je(ut.type)}'.`);W&&(Ke.type.kind==="value"&&ut.type.kind!=="value"?Ke=new Fa(ut.type,[Ke]):Ke.type.kind!=="value"&&ut.type.kind==="value"&&(ut=new Fa(Ke.type,[ut])));let Lt=null;if(fe.length===4){if(Ke.type.kind!=="string"&&ut.type.kind!=="string"&&Ke.type.kind!=="value"&&ut.type.kind!=="value")return pe.error("Cannot use collator to compare non-string types.");if(Lt=pe.parse(fe[3],3,Rr),!Lt)return null}return new UHe(Ke,ut,Lt)}evaluate(fe){let pe=this.lhs.evaluate(fe),ze=this.rhs.evaluate(fe);if(W&&this.hasUntypedArgument){let Ke=Mn(pe),ut=Mn(ze);if(Ke.kind!==ut.kind||Ke.kind!=="string"&&Ke.kind!=="number")throw new ma(`Expected arguments for "${R}" to be (string, string) or (number, number), but found (${Ke.kind}, ${ut.kind}) instead.`)}if(this.collator&&!W&&this.hasUntypedArgument){let Ke=Mn(pe),ut=Mn(ze);if(Ke.kind!=="string"||ut.kind!=="string")return S(fe,pe,ze)}return this.collator?F(fe,pe,ze,this.collator.evaluate(fe)):S(fe,pe,ze)}eachChild(fe){fe(this.lhs),fe(this.rhs),this.collator&&fe(this.collator)}outputDefined(){return!0}}}let cs=Fl("==",function(R,S,F){return S===F},cl),nl=Fl("!=",function(R,S,F){return S!==F},function(R,S,F,W){return!cl(0,S,F,W)}),Ss=Fl("<",function(R,S,F){return S<F},function(R,S,F,W){return W.compare(S,F)<0}),fl=Fl(">",function(R,S,F){return S>F},function(R,S,F,W){return W.compare(S,F)>0}),Js=Fl("<=",function(R,S,F){return S<=F},function(R,S,F,W){return W.compare(S,F)<=0}),Os=Fl(">=",function(R,S,F){return S>=F},function(R,S,F,W){return W.compare(S,F)>=0});class Io{constructor(S,F,W){this.type=Rr,this.locale=W,this.caseSensitive=S,this.diacriticSensitive=F}static parse(S,F){if(S.length!==2)return F.error("Expected one argument.");let W=S[1];if(typeof W!="object"||Array.isArray(W))return F.error("Collator options argument must be an object.");let te=F.parse(W["case-sensitive"]!==void 0&&W["case-sensitive"],1,yt);if(!te)return null;let fe=F.parse(W["diacritic-sensitive"]!==void 0&&W["diacritic-sensitive"],1,yt);if(!fe)return null;let pe=null;return W.locale&&(pe=F.parse(W.locale,1,bt),!pe)?null:new Io(te,fe,pe)}evaluate(S){return new Er(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 us{constructor(S,F,W,te,fe){this.type=bt,this.number=S,this.locale=F,this.currency=W,this.minFractionDigits=te,this.maxFractionDigits=fe}static parse(S,F){if(S.length!==3)return F.error("Expected two arguments.");let W=F.parse(S[1],1,Ft);if(!W)return null;let te=S[2];if(typeof te!="object"||Array.isArray(te))return F.error("NumberFormat options argument must be an object.");let fe=null;if(te.locale&&(fe=F.parse(te.locale,1,bt),!fe))return null;let pe=null;if(te.currency&&(pe=F.parse(te.currency,1,bt),!pe))return null;let ze=null;if(te["min-fraction-digits"]&&(ze=F.parse(te["min-fraction-digits"],1,Ft),!ze))return null;let Ke=null;return te["max-fraction-digits"]&&(Ke=F.parse(te["max-fraction-digits"],1,Ft),!Ke)?null:new us(W,fe,pe,ze,Ke)}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 Zl{constructor(S){this.type=ei,this.sections=S}static parse(S,F){if(S.length<2)return F.error("Expected at least one argument.");let W=S[1];if(!Array.isArray(W)&&typeof W=="object")return F.error("First argument must be an image or text section.");let te=[],fe=!1;for(let pe=1;pe<=S.length-1;++pe){let ze=S[pe];if(fe&&typeof ze=="object"&&!Array.isArray(ze)){fe=!1;let Ke=null;if(ze["font-scale"]&&(Ke=F.parse(ze["font-scale"],1,Ft),!Ke))return null;let ut=null;if(ze["text-font"]&&(ut=F.parse(ze["text-font"],1,Ge(bt)),!ut))return null;let Lt=null;if(ze["text-color"]&&(Lt=F.parse(ze["text-color"],1,Yt),!Lt))return null;let Qt=te[te.length-1];Qt.scale=Ke,Qt.font=ut,Qt.textColor=Lt}else{let Ke=F.parse(S[pe],1,Tr);if(!Ke)return null;let ut=Ke.type.kind;if(ut!=="string"&&ut!=="value"&&ut!=="null"&&ut!=="resolvedImage")return F.error("Formatted text type must be 'string', 'value', 'image' or 'null'.");fe=!0,te.push({content:Ke,scale:null,font:null,textColor:null})}}return new Zl(te)}evaluate(S){return new ri(this.sections.map(F=>{let W=F.content.evaluate(S);return Mn(W)===Ur?new Zr("",W,null,null,null):new Zr(Ba(W),null,F.scale?F.scale.evaluate(S):null,F.font?F.font.evaluate(S).join(","):null,F.textColor?F.textColor.evaluate(S):null)}))}eachChild(S){for(let F of this.sections)S(F.content),F.scale&&S(F.scale),F.font&&S(F.font),F.textColor&&S(F.textColor)}outputDefined(){return!1}}class Su{constructor(S){this.type=Ur,this.input=S}static parse(S,F){if(S.length!==2)return F.error("Expected two arguments.");let W=F.parse(S[1],1,bt);return W?new Su(W):F.error("No image name provided.")}evaluate(S){let F=this.input.evaluate(S),W=en.fromString(F);return W&&S.availableImages&&(W.available=S.availableImages.indexOf(F)>-1),W}eachChild(S){S(this.input)}outputDefined(){return!1}}class nc{constructor(S){this.type=Ft,this.input=S}static parse(S,F){if(S.length!==2)return F.error(`Expected 1 argument, but found ${S.length-1} instead.`);let W=F.parse(S[1],1);return W?W.type.kind!=="array"&&W.type.kind!=="string"&&W.type.kind!=="value"?F.error(`Expected argument of type string or array, but found ${Je(W.type)} instead.`):new nc(W):null}evaluate(S){let F=this.input.evaluate(S);if(typeof F=="string")return[...F].length;if(Array.isArray(F))return F.length;throw new ma(`Expected value to be of type string or array, but found ${Je(Mn(F))} instead.`)}eachChild(S){S(this.input)}outputDefined(){return!1}}let ws=8192;function Fn(R,S){let F=(180+R[0])/360,W=(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+R[1]*Math.PI/360)))/360,te=Math.pow(2,S.z);return[Math.round(F*te*ws),Math.round(W*te*ws)]}function _a(R,S){let F=Math.pow(2,S.z);return[(te=(R[0]/ws+S.x)/F,360*te-180),(W=(R[1]/ws+S.y)/F,360/Math.PI*Math.atan(Math.exp((180-360*W)*Math.PI/180))-90)];var W,te}function Vu(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 zl(R,S){return!(R[0]<=S[0]||R[2]>=S[2]||R[1]<=S[1]||R[3]>=S[3])}function xo(R,S,F){let W=R[0]-S[0],te=R[1]-S[1],fe=R[0]-F[0],pe=R[1]-F[1];return W*pe-fe*te==0&&W*fe<=0&&te*pe<=0}function Yl(R,S,F,W){return(te=[W[0]-F[0],W[1]-F[1]])[0]*(fe=[S[0]-R[0],S[1]-R[1]])[1]-te[1]*fe[0]!=0&&!(!qo(R,S,F,W)||!qo(F,W,R,S));var te,fe}function Us(R,S,F){for(let W of F)for(let te=0;te<W.length-1;++te)if(Yl(R,S,W[te],W[te+1]))return!0;return!1}function Hl(R,S,F=!1){let W=!1;for(let ze of S)for(let Ke=0;Ke<ze.length-1;Ke++){if(xo(R,ze[Ke],ze[Ke+1]))return F;(fe=ze[Ke])[1]>(te=R)[1]!=(pe=ze[Ke+1])[1]>te[1]&&te[0]<(pe[0]-fe[0])*(te[1]-fe[1])/(pe[1]-fe[1])+fe[0]&&(W=!W)}var te,fe,pe;return W}function ac(R,S){for(let F of S)if(Hl(R,F))return!0;return!1}function aa(R,S){for(let F of R)if(!Hl(F,S))return!1;for(let F=0;F<R.length-1;++F)if(Us(R[F],R[F+1],S))return!1;return!0}function Oo(R,S){for(let F of S)if(aa(R,F))return!0;return!1}function qo(R,S,F,W){let te=W[0]-F[0],fe=W[1]-F[1],pe=(R[0]-F[0])*fe-te*(R[1]-F[1]),ze=(S[0]-F[0])*fe-te*(S[1]-F[1]);return pe>0&&ze<0||pe<0&&ze>0}function Ol(R,S,F){let W=[];for(let te=0;te<R.length;te++){let fe=[];for(let pe=0;pe<R[te].length;pe++){let ze=Fn(R[te][pe],F);Vu(S,ze),fe.push(ze)}W.push(fe)}return W}function Pc(R,S,F){let W=[];for(let te=0;te<R.length;te++){let fe=Ol(R[te],S,F);W.push(fe)}return W}function Do(R,S,F,W){if(R[0]<F[0]||R[0]>F[2]){let te=.5*W,fe=R[0]-F[0]>te?-W:F[0]-R[0]>te?W:0;fe===0&&(fe=R[0]-F[2]>te?-W:F[2]-R[0]>te?W:0),R[0]+=fe}Vu(S,R)}function rf(R,S,F,W){let te=Math.pow(2,W.z)*ws,fe=[W.x*ws,W.y*ws],pe=[];for(let ze of R)for(let Ke of ze){let ut=[Ke.x+fe[0],Ke.y+fe[1]];Do(ut,S,F,te),pe.push(ut)}return pe}function Uf(R,S,F,W){let te=Math.pow(2,W.z)*ws,fe=[W.x*ws,W.y*ws],pe=[];for(let Ke of R){let ut=[];for(let Lt of Ke){let Qt=[Lt.x+fe[0],Lt.y+fe[1]];Vu(S,Qt),ut.push(Qt)}pe.push(ut)}if(S[2]-S[0]<=te/2){(ze=S)[0]=ze[1]=1/0,ze[2]=ze[3]=-1/0;for(let Ke of pe)for(let ut of Ke)Do(ut,S,F,te)}var ze;return pe}class ml{constructor(S,F){this.type=yt,this.geojson=S,this.geometries=F}static parse(S,F){if(S.length!==2)return F.error(`'within' expression requires exactly one argument, but found ${S.length-1} instead.`);if(yn(S[1])){let W=S[1];if(W.type==="FeatureCollection"){let te=[];for(let fe of W.features){let{type:pe,coordinates:ze}=fe.geometry;pe==="Polygon"&&te.push(ze),pe==="MultiPolygon"&&te.push(...ze)}if(te.length)return new ml(W,{type:"MultiPolygon",coordinates:te})}else if(W.type==="Feature"){let te=W.geometry.type;if(te==="Polygon"||te==="MultiPolygon")return new ml(W,W.geometry)}else if(W.type==="Polygon"||W.type==="MultiPolygon")return new ml(W,W)}return F.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(F,W){let te=[1/0,1/0,-1/0,-1/0],fe=[1/0,1/0,-1/0,-1/0],pe=F.canonicalID();if(W.type==="Polygon"){let ze=Ol(W.coordinates,fe,pe),Ke=rf(F.geometry(),te,fe,pe);if(!zl(te,fe))return!1;for(let ut of Ke)if(!Hl(ut,ze))return!1}if(W.type==="MultiPolygon"){let ze=Pc(W.coordinates,fe,pe),Ke=rf(F.geometry(),te,fe,pe);if(!zl(te,fe))return!1;for(let ut of Ke)if(!ac(ut,ze))return!1}return!0}(S,this.geometries);if(S.geometryType()==="LineString")return function(F,W){let te=[1/0,1/0,-1/0,-1/0],fe=[1/0,1/0,-1/0,-1/0],pe=F.canonicalID();if(W.type==="Polygon"){let ze=Ol(W.coordinates,fe,pe),Ke=Uf(F.geometry(),te,fe,pe);if(!zl(te,fe))return!1;for(let ut of Ke)if(!aa(ut,ze))return!1}if(W.type==="MultiPolygon"){let ze=Pc(W.coordinates,fe,pe),Ke=Uf(F.geometry(),te,fe,pe);if(!zl(te,fe))return!1;for(let ut of Ke)if(!Oo(ut,ze))return!1}return!0}(S,this.geometries)}return!1}eachChild(){}outputDefined(){return!0}}let Zc=class{constructor(R=[],S=(F,W)=>F<W?-1:F>W?1:0){if(this.data=R,this.length=this.data.length,this.compare=S,this.length>0)for(let F=(this.length>>1)-1;F>=0;F--)this._down(F)}push(R){this.data.push(R),this._up(this.length++)}pop(){if(this.length===0)return;let R=this.data[0],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:F}=this,W=S[R];for(;R>0;){let te=R-1>>1,fe=S[te];if(F(W,fe)>=0)break;S[R]=fe,R=te}S[R]=W}_down(R){let{data:S,compare:F}=this,W=this.length>>1,te=S[R];for(;R<W;){let fe=1+(R<<1),pe=fe+1;if(pe<this.length&&F(S[pe],S[fe])<0&&(fe=pe),F(S[fe],te)>=0)break;S[R]=S[fe],R=fe}S[R]=te}};function Kl(R,S,F,W,te){qs(R,S,F,W||R.length-1,te||oc)}function qs(R,S,F,W,te){for(;W>F;){if(W-F>600){var fe=W-F+1,pe=S-F+1,ze=Math.log(fe),Ke=.5*Math.exp(2*ze/3),ut=.5*Math.sqrt(ze*Ke*(fe-Ke)/fe)*(pe-fe/2<0?-1:1);qs(R,S,Math.max(F,Math.floor(S-pe*Ke/fe+ut)),Math.min(W,Math.floor(S+(fe-pe)*Ke/fe+ut)),te)}var Lt=R[S],Qt=F,fr=W;for(yu(R,F,S),te(R[W],Lt)>0&&yu(R,F,W);Qt<fr;){for(yu(R,Qt,fr),Qt++,fr--;te(R[Qt],Lt)<0;)Qt++;for(;te(R[fr],Lt)>0;)fr--}te(R[F],Lt)===0?yu(R,F,fr):yu(R,++fr,W),fr<=S&&(F=fr+1),S<=fr&&(W=fr-1)}}function yu(R,S,F){var W=R[S];R[S]=R[F],R[F]=W}function oc(R,S){return R<S?-1:R>S?1:0}function Cf(R,S){if(R.length<=1)return[R];let F=[],W,te;for(let fe of R){let pe=Nh(fe);pe!==0&&(fe.area=Math.abs(pe),te===void 0&&(te=pe<0),te===pe<0?(W&&F.push(W),W=[fe]):W.push(fe))}if(W&&F.push(W),S>1)for(let fe=0;fe<F.length;fe++)F[fe].length<=S||(Kl(F[fe],S,1,F[fe].length-1,sc),F[fe]=F[fe].slice(0,S));return F}function sc(R,S){return S.area-R.area}function Nh(R){let S=0;for(let F,W,te=0,fe=R.length,pe=fe-1;te<fe;pe=te++)F=R[te],W=R[pe],S+=(W.x-F.x)*(F.y+W.y);return S}let kf=1/298.257223563,fs=kf*(2-kf),nf=Math.PI/180;class Vf{constructor(S){let F=6378.137*nf*1e3,W=Math.cos(S*nf),te=1/(1-fs*(1-W*W)),fe=Math.sqrt(te);this.kx=F*fe*W,this.ky=F*fe*te*(1-fs)}distance(S,F){let W=this.wrap(S[0]-F[0])*this.kx,te=(S[1]-F[1])*this.ky;return Math.sqrt(W*W+te*te)}pointOnLine(S,F){let W,te,fe,pe,ze=1/0;for(let Ke=0;Ke<S.length-1;Ke++){let ut=S[Ke][0],Lt=S[Ke][1],Qt=this.wrap(S[Ke+1][0]-ut)*this.kx,fr=(S[Ke+1][1]-Lt)*this.ky,mr=0;Qt===0&&fr===0||(mr=(this.wrap(F[0]-ut)*this.kx*Qt+(F[1]-Lt)*this.ky*fr)/(Qt*Qt+fr*fr),mr>1?(ut=S[Ke+1][0],Lt=S[Ke+1][1]):mr>0&&(ut+=Qt/this.kx*mr,Lt+=fr/this.ky*mr)),Qt=this.wrap(F[0]-ut)*this.kx,fr=(F[1]-Lt)*this.ky;let Lr=Qt*Qt+fr*fr;Lr<ze&&(ze=Lr,W=ut,te=Lt,fe=Ke,pe=mr)}return{point:[W,te],index:fe,t:Math.max(0,Math.min(1,pe))}}wrap(S){for(;S<-180;)S+=360;for(;S>180;)S-=360;return S}}function Jl(R,S){return S[0]-R[0]}function hl(R){return R[1]-R[0]+1}function lc(R,S){return R[1]>=R[0]&&R[1]<S}function Fu(R,S){if(R[0]>R[1])return[null,null];let F=hl(R);if(S){if(F===2)return[R,null];let te=Math.floor(F/2);return[[R[0],R[0]+te],[R[0]+te,R[1]]]}if(F===1)return[R,null];let W=Math.floor(F/2)-1;return[[R[0],R[0]+W],[R[0]+W+1,R[1]]]}function Cs(R,S){if(!lc(S,R.length))return[1/0,1/0,-1/0,-1/0];let F=[1/0,1/0,-1/0,-1/0];for(let W=S[0];W<=S[1];++W)Vu(F,R[W]);return F}function js(R){let S=[1/0,1/0,-1/0,-1/0];for(let F of R)for(let W of F)Vu(S,W);return S}function Go(R){return R[0]!==-1/0&&R[1]!==-1/0&&R[2]!==1/0&&R[3]!==1/0}function gs(R,S,F){if(!Go(R)||!Go(S))return NaN;let W=0,te=0;return R[2]<S[0]&&(W=S[0]-R[2]),R[0]>S[2]&&(W=R[0]-S[2]),R[1]>S[3]&&(te=R[1]-S[3]),R[3]<S[1]&&(te=S[1]-R[3]),F.distance([0,0],[W,te])}function uc(R,S,F){let W=F.pointOnLine(S,R);return F.distance(R,W.point)}function xl(R,S,F,W,te){let fe=Math.min(uc(R,[F,W],te),uc(S,[F,W],te)),pe=Math.min(uc(F,[R,S],te),uc(W,[R,S],te));return Math.min(fe,pe)}function Gu(R,S,F,W,te){if(!lc(S,R.length)||!lc(W,F.length))return 1/0;let fe=1/0;for(let pe=S[0];pe<S[1];++pe){let ze=R[pe],Ke=R[pe+1];for(let ut=W[0];ut<W[1];++ut){let Lt=F[ut],Qt=F[ut+1];if(Yl(ze,Ke,Lt,Qt))return 0;fe=Math.min(fe,xl(ze,Ke,Lt,Qt,te))}}return fe}function Bs(R,S,F,W,te){if(!lc(S,R.length)||!lc(W,F.length))return NaN;let fe=1/0;for(let pe=S[0];pe<=S[1];++pe)for(let ze=W[0];ze<=W[1];++ze)if(fe=Math.min(fe,te.distance(R[pe],F[ze])),fe===0)return fe;return fe}function ad(R,S,F){if(Hl(R,S,!0))return 0;let W=1/0;for(let te of S){let fe=te[0],pe=te[te.length-1];if(fe!==pe&&(W=Math.min(W,uc(R,[pe,fe],F)),W===0))return W;let ze=F.pointOnLine(te,R);if(W=Math.min(W,F.distance(R,ze.point)),W===0)return W}return W}function Po(R,S,F,W){if(!lc(S,R.length))return NaN;for(let fe=S[0];fe<=S[1];++fe)if(Hl(R[fe],F,!0))return 0;let te=1/0;for(let fe=S[0];fe<S[1];++fe){let pe=R[fe],ze=R[fe+1];for(let Ke of F)for(let ut=0,Lt=Ke.length,Qt=Lt-1;ut<Lt;Qt=ut++){let fr=Ke[Qt],mr=Ke[ut];if(Yl(pe,ze,fr,mr))return 0;te=Math.min(te,xl(pe,ze,fr,mr,W))}}return te}function od(R,S){for(let F of R)for(let W of F)if(Hl(W,S,!0))return!0;return!1}function Yo(R,S,F,W=1/0){let te=js(R),fe=js(S);if(W!==1/0&&gs(te,fe,F)>=W)return W;if(zl(te,fe)){if(od(R,S))return 0}else if(od(S,R))return 0;let pe=1/0;for(let ze of R)for(let Ke=0,ut=ze.length,Lt=ut-1;Ke<ut;Lt=Ke++){let Qt=ze[Lt],fr=ze[Ke];for(let mr of S)for(let Lr=0,zr=mr.length,ui=zr-1;Lr<zr;ui=Lr++){let yi=mr[ui],dn=mr[Lr];if(Yl(Qt,fr,yi,dn))return 0;pe=Math.min(pe,xl(Qt,fr,yi,dn,F))}}return pe}function Pa(R,S,F,W,te,fe){if(!fe)return;let pe=gs(Cs(W,fe),te,F);pe<S&&R.push([pe,fe,[0,0]])}function af(R,S,F,W,te,fe,pe){if(!fe||!pe)return;let ze=gs(Cs(W,fe),Cs(te,pe),F);ze<S&&R.push([ze,fe,pe])}function Hu(R,S,F,W,te=1/0){let fe=Math.min(W.distance(R[0],F[0][0]),te);if(fe===0)return fe;let pe=new Zc([[0,[0,R.length-1],[0,0]]],Jl),ze=js(F);for(;pe.length>0;){let Ke=pe.pop();if(Ke[0]>=fe)continue;let ut=Ke[1],Lt=S?50:100;if(hl(ut)<=Lt){if(!lc(ut,R.length))return NaN;if(S){let Qt=Po(R,ut,F,W);if(isNaN(Qt)||Qt===0)return Qt;fe=Math.min(fe,Qt)}else for(let Qt=ut[0];Qt<=ut[1];++Qt){let fr=ad(R[Qt],F,W);if(fe=Math.min(fe,fr),fe===0)return 0}}else{let Qt=Fu(ut,S);Pa(pe,fe,W,R,ze,Qt[0]),Pa(pe,fe,W,R,ze,Qt[1])}}return fe}function bl(R,S,F,W,te,fe=1/0){let pe=Math.min(fe,te.distance(R[0],F[0]));if(pe===0)return pe;let ze=new Zc([[0,[0,R.length-1],[0,F.length-1]]],Jl);for(;ze.length>0;){let Ke=ze.pop();if(Ke[0]>=pe)continue;let ut=Ke[1],Lt=Ke[2],Qt=S?50:100,fr=W?50:100;if(hl(ut)<=Qt&&hl(Lt)<=fr){if(!lc(ut,R.length)&&lc(Lt,F.length))return NaN;let mr;if(S&&W)mr=Gu(R,ut,F,Lt,te),pe=Math.min(pe,mr);else if(S&&!W){let Lr=R.slice(ut[0],ut[1]+1);for(let zr=Lt[0];zr<=Lt[1];++zr)if(mr=uc(F[zr],Lr,te),pe=Math.min(pe,mr),pe===0)return pe}else if(!S&&W){let Lr=F.slice(Lt[0],Lt[1]+1);for(let zr=ut[0];zr<=ut[1];++zr)if(mr=uc(R[zr],Lr,te),pe=Math.min(pe,mr),pe===0)return pe}else mr=Bs(R,ut,F,Lt,te),pe=Math.min(pe,mr)}else{let mr=Fu(ut,S),Lr=Fu(Lt,W);af(ze,pe,te,R,F,mr[0],Lr[0]),af(ze,pe,te,R,F,mr[0],Lr[1]),af(ze,pe,te,R,F,mr[1],Lr[0]),af(ze,pe,te,R,F,mr[1],Lr[1])}}return pe}function Gf(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 Ic{constructor(S,F){this.type=Ft,this.geojson=S,this.geometries=F}static parse(S,F){if(S.length!==2)return F.error(`'distance' expression requires exactly one argument, but found ${S.length-1} instead.`);if(yn(S[1])){let W=S[1];if(W.type==="FeatureCollection")return new Ic(W,W.features.map(te=>Gf(te.geometry)).flat());if(W.type==="Feature")return new Ic(W,Gf(W.geometry));if("type"in W&&"coordinates"in W)return new Ic(W,Gf(W))}return F.error("'distance' expression requires valid geojson object that contains polygon geometry type.")}evaluate(S){if(S.geometry()!=null&&S.canonicalID()!=null){if(S.geometryType()==="Point")return function(F,W){let te=F.geometry(),fe=te.flat().map(Ke=>_a([Ke.x,Ke.y],F.canonical));if(te.length===0)return NaN;let pe=new Vf(fe[0][1]),ze=1/0;for(let Ke of W){switch(Ke.type){case"Point":ze=Math.min(ze,bl(fe,!1,[Ke.coordinates],!1,pe,ze));break;case"LineString":ze=Math.min(ze,bl(fe,!1,Ke.coordinates,!0,pe,ze));break;case"Polygon":ze=Math.min(ze,Hu(fe,!1,Ke.coordinates,pe,ze))}if(ze===0)return ze}return ze}(S,this.geometries);if(S.geometryType()==="LineString")return function(F,W){let te=F.geometry(),fe=te.flat().map(Ke=>_a([Ke.x,Ke.y],F.canonical));if(te.length===0)return NaN;let pe=new Vf(fe[0][1]),ze=1/0;for(let Ke of W){switch(Ke.type){case"Point":ze=Math.min(ze,bl(fe,!0,[Ke.coordinates],!1,pe,ze));break;case"LineString":ze=Math.min(ze,bl(fe,!0,Ke.coordinates,!0,pe,ze));break;case"Polygon":ze=Math.min(ze,Hu(fe,!0,Ke.coordinates,pe,ze))}if(ze===0)return ze}return ze}(S,this.geometries);if(S.geometryType()==="Polygon")return function(F,W){let te=F.geometry();if(te.length===0||te[0].length===0)return NaN;let fe=Cf(te,0).map(Ke=>Ke.map(ut=>ut.map(Lt=>_a([Lt.x,Lt.y],F.canonical)))),pe=new Vf(fe[0][0][0][1]),ze=1/0;for(let Ke of W)for(let ut of fe){switch(Ke.type){case"Point":ze=Math.min(ze,Hu([Ke.coordinates],!1,ut,pe,ze));break;case"LineString":ze=Math.min(ze,Hu(Ke.coordinates,!0,ut,pe,ze));break;case"Polygon":ze=Math.min(ze,Yo(ut,Ke.coordinates,pe,ze))}if(ze===0)return ze}return ze}(S,this.geometries)}return NaN}eachChild(){}outputDefined(){return!0}}let mf={"==":cs,"!=":nl,">":fl,"<":Ss,">=":Os,"<=":Js,array:Fa,at:Cr,boolean:Fa,case:Sn,coalesce:zs,collator:Io,format:Zl,image:Su,in:Qr,"index-of":pi,interpolate:Co,"interpolate-hcl":Co,"interpolate-lab":Co,length:nc,let:jn,literal:la,match:fn,number:Fa,"number-format":us,object:Fa,slice:En,step:_n,string:Fa,"to-boolean":da,"to-color":da,"to-number":da,"to-string":da,var:St,within:ml,distance:Ic};class ql{constructor(S,F,W,te){this.name=S,this.type=F,this._evaluate=W,this.args=te}evaluate(S){return this._evaluate(S,this.args)}eachChild(S){this.args.forEach(S)}outputDefined(){return!1}static parse(S,F){let W=S[0],te=ql.definitions[W];if(!te)return F.error(`Unknown expression "${W}". If you wanted a literal array, use ["literal", [...]].`,0);let fe=Array.isArray(te)?te[0]:te.type,pe=Array.isArray(te)?[[te[1],te[2]]]:te.overloads,ze=pe.filter(([ut])=>!Array.isArray(ut)||ut.length===S.length-1),Ke=null;for(let[ut,Lt]of ze){Ke=new vo(F.registry,eh,F.path,null,F.scope);let Qt=[],fr=!1;for(let mr=1;mr<S.length;mr++){let Lr=S[mr],zr=Array.isArray(ut)?ut[mr-1]:ut.type,ui=Ke.parse(Lr,1+Qt.length,zr);if(!ui){fr=!0;break}Qt.push(ui)}if(!fr)if(Array.isArray(ut)&&ut.length!==Qt.length)Ke.error(`Expected ${ut.length} arguments, but found ${Qt.length} instead.`);else{for(let mr=0;mr<Qt.length;mr++){let Lr=Array.isArray(ut)?ut[mr]:ut.type,zr=Qt[mr];Ke.concat(mr+1).checkSubtype(Lr,zr.type)}if(Ke.errors.length===0)return new ql(W,fe,Lt,Qt)}}if(ze.length===1)F.errors.push(...Ke.errors);else{let ut=(ze.length?ze:pe).map(([Qt])=>{return fr=Qt,Array.isArray(fr)?`(${fr.map(Je).join(", ")})`:`(${Je(fr.type)}...)`;var fr}).join(" | "),Lt=[];for(let Qt=1;Qt<S.length;Qt++){let fr=F.parse(S[Qt],1+Lt.length);if(!fr)return null;Lt.push(Je(fr.type))}F.error(`Expected arguments of type ${ut}, but found (${Lt.join(", ")}) instead.`)}return null}static register(S,F){ql.definitions=F;for(let W in F)S[W]=ql}}function _h(R,[S,F,W,te]){S=S.evaluate(R),F=F.evaluate(R),W=W.evaluate(R);let fe=te?te.evaluate(R):1,pe=cn(S,F,W,fe);if(pe)throw new ma(pe);return new ar(S/255,F/255,W/255,fe,!1)}function Qf(R,S){return R in S}function yf(R,S){let F=S[R];return F===void 0?null:F}function Yc(R){return{type:R}}function eh(R){if(R instanceof St)return eh(R.boundExpression);if(R instanceof ql&&R.name==="error"||R instanceof Io||R instanceof ml||R instanceof Ic)return!1;let S=R instanceof da||R instanceof Fa,F=!0;return R.eachChild(W=>{F=S?F&&eh(W):F&&W instanceof la}),!!F&&th(R)&&Hf(R,["zoom","heatmap-density","line-progress","accumulated","is-supported-script"])}function th(R){if(R instanceof ql&&(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 ml||R instanceof Ic)return!1;let S=!0;return R.eachChild(F=>{S&&!th(F)&&(S=!1)}),S}function ju(R){if(R instanceof ql&&R.name==="feature-state")return!1;let S=!0;return R.eachChild(F=>{S&&!ju(F)&&(S=!1)}),S}function Hf(R,S){if(R instanceof ql&&S.indexOf(R.name)>=0)return!1;let F=!0;return R.eachChild(W=>{F&&!Hf(W,S)&&(F=!1)}),F}function cc(R){return{result:"success",value:R}}function of(R){return{result:"error",value:R}}function Bl(R){return R["property-type"]==="data-driven"||R["property-type"]==="cross-faded-data-driven"}function Kc(R){return!!R.expression&&R.expression.parameters.indexOf("zoom")>-1}function Rc(R){return!!R.expression&&R.expression.interpolated}function ms(R){return R instanceof Number?"number":R instanceof String?"string":R instanceof Boolean?"boolean":Array.isArray(R)?"array":R===null?"null":typeof R}function jf(R){return typeof R=="object"&&R!==null&&!Array.isArray(R)}function Uh(R){return R}function rh(R,S){let F=S.type==="color",W=R.stops&&typeof R.stops[0][0]=="object",te=W||!(W||R.property!==void 0),fe=R.type||(Rc(S)?"exponential":"interval");if(F||S.type==="padding"){let Lt=F?ar.parse:$r.parse;(R=Qe({},R)).stops&&(R.stops=R.stops.map(Qt=>[Qt[0],Lt(Qt[1])])),R.default=Lt(R.default?R.default:S.default)}if(R.colorSpace&&(pe=R.colorSpace)!=="rgb"&&pe!=="hcl"&&pe!=="lab")throw new Error(`Unknown color space: "${R.colorSpace}"`);var pe;let ze,Ke,ut;if(fe==="exponential")ze=ih;else if(fe==="interval")ze=Mu;else if(fe==="categorical"){ze=xh,Ke=Object.create(null);for(let Lt of R.stops)Ke[Lt[0]]=Lt[1];ut=typeof R.stops[0][0]}else{if(fe!=="identity")throw new Error(`Unknown function type "${fe}"`);ze=Ws}if(W){let Lt={},Qt=[];for(let Lr=0;Lr<R.stops.length;Lr++){let zr=R.stops[Lr],ui=zr[0].zoom;Lt[ui]===void 0&&(Lt[ui]={zoom:ui,type:R.type,property:R.property,default:R.default,stops:[]},Qt.push(ui)),Lt[ui].stops.push([zr[0].value,zr[1]])}let fr=[];for(let Lr of Qt)fr.push([Lt[Lr].zoom,rh(Lt[Lr],S)]);let mr={name:"linear"};return{kind:"composite",interpolationType:mr,interpolationFactor:Co.interpolationFactor.bind(void 0,mr),zoomStops:fr.map(Lr=>Lr[0]),evaluate:({zoom:Lr},zr)=>ih({stops:fr,base:R.base},S,Lr).evaluate(Lr,zr)}}if(te){let Lt=fe==="exponential"?{name:"exponential",base:R.base!==void 0?R.base:1}:null;return{kind:"camera",interpolationType:Lt,interpolationFactor:Co.interpolationFactor.bind(void 0,Lt),zoomStops:R.stops.map(Qt=>Qt[0]),evaluate:({zoom:Qt})=>ze(R,S,Qt,Ke,ut)}}return{kind:"source",evaluate(Lt,Qt){let fr=Qt&&Qt.properties?Qt.properties[R.property]:void 0;return fr===void 0?sf(R.default,S.default):ze(R,S,fr,Ke,ut)}}}function sf(R,S,F){return R!==void 0?R:S!==void 0?S:F!==void 0?F:void 0}function xh(R,S,F,W,te){return sf(typeof F===te?W[F]:void 0,R.default,S.default)}function Mu(R,S,F){if(ms(F)!=="number")return sf(R.default,S.default);let W=R.stops.length;if(W===1||F<=R.stops[0][0])return R.stops[0][1];if(F>=R.stops[W-1][0])return R.stops[W-1][1];let te=ki(R.stops.map(fe=>fe[0]),F);return R.stops[te][1]}function ih(R,S,F){let W=R.base!==void 0?R.base:1;if(ms(F)!=="number")return sf(R.default,S.default);let te=R.stops.length;if(te===1||F<=R.stops[0][0])return R.stops[0][1];if(F>=R.stops[te-1][0])return R.stops[te-1][1];let fe=ki(R.stops.map(Lt=>Lt[0]),F),pe=function(Lt,Qt,fr,mr){let Lr=mr-fr,zr=Lt-fr;return Lr===0?0:Qt===1?zr/Lr:(Math.pow(Qt,zr)-1)/(Math.pow(Qt,Lr)-1)}(F,W,R.stops[fe][0],R.stops[fe+1][0]),ze=R.stops[fe][1],Ke=R.stops[fe+1][1],ut=Lo[S.type]||Uh;return typeof ze.evaluate=="function"?{evaluate(...Lt){let Qt=ze.evaluate.apply(void 0,Lt),fr=Ke.evaluate.apply(void 0,Lt);if(Qt!==void 0&&fr!==void 0)return ut(Qt,fr,pe,R.colorSpace)}}:ut(ze,Ke,pe,R.colorSpace)}function Ws(R,S,F){switch(S.type){case"color":F=ar.parse(F);break;case"formatted":F=ri.fromString(F.toString());break;case"resolvedImage":F=en.fromString(F.toString());break;case"padding":F=$r.parse(F);break;default:ms(F)===S.type||S.type==="enum"&&S.values[F]||(F=void 0)}return sf(F,R.default,S.default)}ql.register(mf,{error:[{kind:"error"},[bt],(R,[S])=>{throw new ma(S.evaluate(R))}],typeof:[bt,[Tr],(R,[S])=>Je(Mn(S.evaluate(R)))],"to-rgba":[Ge(Ft,4),[Yt],(R,[S])=>{let[F,W,te,fe]=S.evaluate(R).rgb;return[255*F,255*W,255*te,fe]}],rgb:[Yt,[Ft,Ft,Ft],_h],rgba:[Yt,[Ft,Ft,Ft,Ft],_h],has:{type:yt,overloads:[[[bt],(R,[S])=>Qf(S.evaluate(R),R.properties())],[[bt,lr],(R,[S,F])=>Qf(S.evaluate(R),F.evaluate(R))]]},get:{type:Tr,overloads:[[[bt],(R,[S])=>yf(S.evaluate(R),R.properties())],[[bt,lr],(R,[S,F])=>yf(S.evaluate(R),F.evaluate(R))]]},"feature-state":[Tr,[bt],(R,[S])=>yf(S.evaluate(R),R.featureState||{})],properties:[lr,[],R=>R.properties()],"geometry-type":[bt,[],R=>R.geometryType()],id:[Tr,[],R=>R.id()],zoom:[Ft,[],R=>R.globals.zoom],"heatmap-density":[Ft,[],R=>R.globals.heatmapDensity||0],"line-progress":[Ft,[],R=>R.globals.lineProgress||0],accumulated:[Tr,[],R=>R.globals.accumulated===void 0?null:R.globals.accumulated],"+":[Ft,Yc(Ft),(R,S)=>{let F=0;for(let W of S)F+=W.evaluate(R);return F}],"*":[Ft,Yc(Ft),(R,S)=>{let F=1;for(let W of S)F*=W.evaluate(R);return F}],"-":{type:Ft,overloads:[[[Ft,Ft],(R,[S,F])=>S.evaluate(R)-F.evaluate(R)],[[Ft],(R,[S])=>-S.evaluate(R)]]},"/":[Ft,[Ft,Ft],(R,[S,F])=>S.evaluate(R)/F.evaluate(R)],"%":[Ft,[Ft,Ft],(R,[S,F])=>S.evaluate(R)%F.evaluate(R)],ln2:[Ft,[],()=>Math.LN2],pi:[Ft,[],()=>Math.PI],e:[Ft,[],()=>Math.E],"^":[Ft,[Ft,Ft],(R,[S,F])=>Math.pow(S.evaluate(R),F.evaluate(R))],sqrt:[Ft,[Ft],(R,[S])=>Math.sqrt(S.evaluate(R))],log10:[Ft,[Ft],(R,[S])=>Math.log(S.evaluate(R))/Math.LN10],ln:[Ft,[Ft],(R,[S])=>Math.log(S.evaluate(R))],log2:[Ft,[Ft],(R,[S])=>Math.log(S.evaluate(R))/Math.LN2],sin:[Ft,[Ft],(R,[S])=>Math.sin(S.evaluate(R))],cos:[Ft,[Ft],(R,[S])=>Math.cos(S.evaluate(R))],tan:[Ft,[Ft],(R,[S])=>Math.tan(S.evaluate(R))],asin:[Ft,[Ft],(R,[S])=>Math.asin(S.evaluate(R))],acos:[Ft,[Ft],(R,[S])=>Math.acos(S.evaluate(R))],atan:[Ft,[Ft],(R,[S])=>Math.atan(S.evaluate(R))],min:[Ft,Yc(Ft),(R,S)=>Math.min(...S.map(F=>F.evaluate(R)))],max:[Ft,Yc(Ft),(R,S)=>Math.max(...S.map(F=>F.evaluate(R)))],abs:[Ft,[Ft],(R,[S])=>Math.abs(S.evaluate(R))],round:[Ft,[Ft],(R,[S])=>{let F=S.evaluate(R);return F<0?-Math.round(-F):Math.round(F)}],floor:[Ft,[Ft],(R,[S])=>Math.floor(S.evaluate(R))],ceil:[Ft,[Ft],(R,[S])=>Math.ceil(S.evaluate(R))],"filter-==":[yt,[bt,Tr],(R,[S,F])=>R.properties()[S.value]===F.value],"filter-id-==":[yt,[Tr],(R,[S])=>R.id()===S.value],"filter-type-==":[yt,[bt],(R,[S])=>R.geometryType()===S.value],"filter-<":[yt,[bt,Tr],(R,[S,F])=>{let W=R.properties()[S.value],te=F.value;return typeof W==typeof te&&W<te}],"filter-id-<":[yt,[Tr],(R,[S])=>{let F=R.id(),W=S.value;return typeof F==typeof W&&F<W}],"filter->":[yt,[bt,Tr],(R,[S,F])=>{let W=R.properties()[S.value],te=F.value;return typeof W==typeof te&&W>te}],"filter-id->":[yt,[Tr],(R,[S])=>{let F=R.id(),W=S.value;return typeof F==typeof W&&F>W}],"filter-<=":[yt,[bt,Tr],(R,[S,F])=>{let W=R.properties()[S.value],te=F.value;return typeof W==typeof te&&W<=te}],"filter-id-<=":[yt,[Tr],(R,[S])=>{let F=R.id(),W=S.value;return typeof F==typeof W&&F<=W}],"filter->=":[yt,[bt,Tr],(R,[S,F])=>{let W=R.properties()[S.value],te=F.value;return typeof W==typeof te&&W>=te}],"filter-id->=":[yt,[Tr],(R,[S])=>{let F=R.id(),W=S.value;return typeof F==typeof W&&F>=W}],"filter-has":[yt,[Tr],(R,[S])=>S.value in R.properties()],"filter-has-id":[yt,[],R=>R.id()!==null&&R.id()!==void 0],"filter-type-in":[yt,[Ge(bt)],(R,[S])=>S.value.indexOf(R.geometryType())>=0],"filter-id-in":[yt,[Ge(Tr)],(R,[S])=>S.value.indexOf(R.id())>=0],"filter-in-small":[yt,[bt,Ge(Tr)],(R,[S,F])=>F.value.indexOf(R.properties()[S.value])>=0],"filter-in-large":[yt,[bt,Ge(Tr)],(R,[S,F])=>function(W,te,fe,pe){for(;fe<=pe;){let ze=fe+pe>>1;if(te[ze]===W)return!0;te[ze]>W?pe=ze-1:fe=ze+1}return!1}(R.properties()[S.value],F.value,0,F.value.length-1)],all:{type:yt,overloads:[[[yt,yt],(R,[S,F])=>S.evaluate(R)&&F.evaluate(R)],[Yc(yt),(R,S)=>{for(let F of S)if(!F.evaluate(R))return!1;return!0}]]},any:{type:yt,overloads:[[[yt,yt],(R,[S,F])=>S.evaluate(R)||F.evaluate(R)],[Yc(yt),(R,S)=>{for(let F of S)if(F.evaluate(R))return!0;return!1}]]},"!":[yt,[yt],(R,[S])=>!S.evaluate(R)],"is-supported-script":[yt,[bt],(R,[S])=>{let F=R.globals&&R.globals.isSupportedScript;return!F||F(S.evaluate(R))}],upcase:[bt,[bt],(R,[S])=>S.evaluate(R).toUpperCase()],downcase:[bt,[bt],(R,[S])=>S.evaluate(R).toLowerCase()],concat:[bt,Yc(Tr),(R,S)=>S.map(F=>Ba(F.evaluate(R))).join("")],"resolved-locale":[bt,[Rr],(R,[S])=>S.evaluate(R).resolvedLocale()]});class Eu{constructor(S,F){var W;this.expression=S,this._warningHistory={},this._evaluator=new Ga,this._defaultValue=F?(W=F).type==="color"&&jf(W.default)?new ar(0,0,0,0):W.type==="color"?ar.parse(W.default)||null:W.type==="padding"?$r.parse(W.default)||null:W.type==="variableAnchorOffsetCollection"?Ji.parse(W.default)||null:W.default===void 0?null:W.default:null,this._enumValues=F&&F.type==="enum"?F.values:null}evaluateWithoutErrorHandling(S,F,W,te,fe,pe){return this._evaluator.globals=S,this._evaluator.feature=F,this._evaluator.featureState=W,this._evaluator.canonical=te,this._evaluator.availableImages=fe||null,this._evaluator.formattedSection=pe,this.expression.evaluate(this._evaluator)}evaluate(S,F,W,te,fe,pe){this._evaluator.globals=S,this._evaluator.feature=F||null,this._evaluator.featureState=W||null,this._evaluator.canonical=te,this._evaluator.availableImages=fe||null,this._evaluator.formattedSection=pe||null;try{let ze=this.expression.evaluate(this._evaluator);if(ze==null||typeof ze=="number"&&ze!=ze)return this._defaultValue;if(this._enumValues&&!(ze in this._enumValues))throw new ma(`Expected value to be one of ${Object.keys(this._enumValues).map(Ke=>JSON.stringify(Ke)).join(", ")}, but found ${JSON.stringify(ze)} instead.`);return ze}catch(ze){return this._warningHistory[ze.message]||(this._warningHistory[ze.message]=!0,typeof console!="undefined"&&console.warn(ze.message)),this._defaultValue}}}function Dc(R){return Array.isArray(R)&&R.length>0&&typeof R[0]=="string"&&R[0]in mf}function ks(R,S){let F=new vo(mf,eh,[],S?function(te){let fe={color:Yt,string:bt,number:Ft,enum:bt,boolean:yt,formatted:ei,padding:Wr,resolvedImage:Ur,variableAnchorOffsetCollection:dt};return te.type==="array"?Ge(fe[te.value]||Tr,te.length):fe[te.type]}(S):void 0),W=F.parse(R,void 0,void 0,void 0,S&&S.type==="string"?{typeAnnotation:"coerce"}:void 0);return W?cc(new Eu(W,S)):of(F.errors)}class bc{constructor(S,F){this.kind=S,this._styleExpression=F,this.isStateDependent=S!=="constant"&&!ju(F.expression)}evaluateWithoutErrorHandling(S,F,W,te,fe,pe){return this._styleExpression.evaluateWithoutErrorHandling(S,F,W,te,fe,pe)}evaluate(S,F,W,te,fe,pe){return this._styleExpression.evaluate(S,F,W,te,fe,pe)}}class du{constructor(S,F,W,te){this.kind=S,this.zoomStops=W,this._styleExpression=F,this.isStateDependent=S!=="camera"&&!ju(F.expression),this.interpolationType=te}evaluateWithoutErrorHandling(S,F,W,te,fe,pe){return this._styleExpression.evaluateWithoutErrorHandling(S,F,W,te,fe,pe)}evaluate(S,F,W,te,fe,pe){return this._styleExpression.evaluate(S,F,W,te,fe,pe)}interpolationFactor(S,F,W){return this.interpolationType?Co.interpolationFactor(this.interpolationType,S,F,W):0}}function _u(R,S){let F=ks(R,S);if(F.result==="error")return F;let W=F.value.expression,te=th(W);if(!te&&!Bl(S))return of([new Et("","data expressions not supported")]);let fe=Hf(W,["zoom"]);if(!fe&&!Kc(S))return of([new Et("","zoom expressions not supported")]);let pe=nh(W);return pe||fe?pe instanceof Et?of([pe]):pe instanceof Co&&!Rc(S)?of([new Et("",'"interpolate" expressions cannot be used with this property')]):cc(pe?new du(te?"camera":"composite",F.value,pe.labels,pe instanceof Co?pe.interpolation:void 0):new bc(te?"constant":"source",F.value)):of([new Et("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.')])}class al{constructor(S,F){this._parameters=S,this._specification=F,Qe(this,rh(this._parameters,this._specification))}static deserialize(S){return new al(S._parameters,S._specification)}static serialize(S){return{_parameters:S._parameters,_specification:S._specification}}}function nh(R){let S=null;if(R instanceof jn)S=nh(R.result);else if(R instanceof zs){for(let F of R.args)if(S=nh(F),S)break}else(R instanceof _n||R instanceof Co)&&R.input instanceof ql&&R.input.name==="zoom"&&(S=R);return S instanceof Et||R.eachChild(F=>{let W=nh(F);W instanceof Et?S=W:!S&&W?S=new Et("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.'):S&&W&&S!==W&&(S=new Et("",'Only one zoom-based "step" or "interpolate" subexpression may be used in an expression.'))}),S}function bh(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(!bh(S)&&typeof S!="boolean")return!1;return!0;default:return!0}}let zu={type:"boolean",default:!1,transition:!1,"property-type":"data-driven",expression:{interpolated:!1,parameters:["zoom","feature"]}};function Fc(R){if(R==null)return{filter:()=>!0,needGeometry:!1};bh(R)||(R=_f(R));let S=ks(R,zu);if(S.result==="error")throw new Error(S.value.map(F=>`${F.key}: ${F.message}`).join(", "));return{filter:(F,W,te)=>S.value.evaluate(F,W,{},te),needGeometry:bd(R)}}function wc(R,S){return R<S?-1:R>S?1:0}function bd(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(bd(R[S]))return!0;return!1}function _f(R){if(!R)return!0;let S=R[0];return R.length<=1?S!=="any":S==="=="?Lf(R[1],R[2],"=="):S==="!="?jl(Lf(R[1],R[2],"==")):S==="<"||S===">"||S==="<="||S===">="?Lf(R[1],R[2],S):S==="any"?(F=R.slice(1),["any"].concat(F.map(_f))):S==="all"?["all"].concat(R.slice(1).map(_f)):S==="none"?["all"].concat(R.slice(1).map(_f).map(jl)):S==="in"?Ou(R[1],R.slice(2)):S==="!in"?jl(Ou(R[1],R.slice(2))):S==="has"?xf(R[1]):S!=="!has"||jl(xf(R[1]));var F}function Lf(R,S,F){switch(R){case"$type":return[`filter-type-${F}`,S];case"$id":return[`filter-id-${F}`,S];default:return[`filter-${F}`,R,S]}}function Ou(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(F=>typeof F!=typeof S[0])?["filter-in-large",R,["literal",S.sort(wc)]]:["filter-in-small",R,["literal",S]]}}function xf(R){switch(R){case"$type":return!0;case"$id":return["filter-has-id"];default:return["filter-has",R]}}function jl(R){return["!",R]}function lf(R){let S=typeof R;if(S==="number"||S==="boolean"||S==="string"||R==null)return JSON.stringify(R);if(Array.isArray(R)){let te="[";for(let fe of R)te+=`${lf(fe)},`;return`${te}]`}let F=Object.keys(R).sort(),W="{";for(let te=0;te<F.length;te++)W+=`${JSON.stringify(F[te])}:${lf(R[F[te]])},`;return`${W}}`}function Vh(R){let S="";for(let F of Ze)S+=`/${lf(R[F])}`;return S}function Pf(R){let S=R.value;return S?[new ur(R.key,S,"constants have been deprecated as of v8")]:[]}function Ls(R){return R instanceof Number||R instanceof String||R instanceof Boolean?R.valueOf():R}function vu(R){if(Array.isArray(R))return R.map(vu);if(R instanceof Object&&!(R instanceof Number||R instanceof String||R instanceof Boolean)){let S={};for(let F in R)S[F]=vu(R[F]);return S}return Ls(R)}function Cu(R){let S=R.key,F=R.value,W=R.valueSpec||{},te=R.objectElementValidators||{},fe=R.style,pe=R.styleSpec,ze=R.validateSpec,Ke=[],ut=ms(F);if(ut!=="object")return[new ur(S,F,`object expected, ${ut} found`)];for(let Lt in F){let Qt=Lt.split(".")[0],fr=W[Qt]||W["*"],mr;if(te[Qt])mr=te[Qt];else if(W[Qt])mr=ze;else if(te["*"])mr=te["*"];else{if(!W["*"]){Ke.push(new ur(S,F[Lt],`unknown property "${Lt}"`));continue}mr=ze}Ke=Ke.concat(mr({key:(S&&`${S}.`)+Lt,value:F[Lt],valueSpec:fr,style:fe,styleSpec:pe,object:F,objectKey:Lt,validateSpec:ze},F))}for(let Lt in W)te[Lt]||W[Lt].required&&W[Lt].default===void 0&&F[Lt]===void 0&&Ke.push(new ur(S,F,`missing required property "${Lt}"`));return Ke}function Wf(R){let S=R.value,F=R.valueSpec,W=R.style,te=R.styleSpec,fe=R.key,pe=R.arrayElementValidator||R.validateSpec;if(ms(S)!=="array")return[new ur(fe,S,`array expected, ${ms(S)} found`)];if(F.length&&S.length!==F.length)return[new ur(fe,S,`array length ${F.length} expected, length ${S.length} found`)];if(F["min-length"]&&S.length<F["min-length"])return[new ur(fe,S,`array length at least ${F["min-length"]} expected, length ${S.length} found`)];let ze={type:F.value,values:F.values};te.$version<7&&(ze.function=F.function),ms(F.value)==="object"&&(ze=F.value);let Ke=[];for(let ut=0;ut<S.length;ut++)Ke=Ke.concat(pe({array:S,arrayIndex:ut,value:S[ut],valueSpec:ze,validateSpec:R.validateSpec,style:W,styleSpec:te,key:`${fe}[${ut}]`}));return Ke}function Vs(R){let S=R.key,F=R.value,W=R.valueSpec,te=ms(F);return te==="number"&&F!=F&&(te="NaN"),te!=="number"?[new ur(S,F,`number expected, ${te} found`)]:"minimum"in W&&F<W.minimum?[new ur(S,F,`${F} is less than the minimum value ${W.minimum}`)]:"maximum"in W&&F>W.maximum?[new ur(S,F,`${F} is greater than the maximum value ${W.maximum}`)]:[]}function bf(R){let S=R.valueSpec,F=Ls(R.value.type),W,te,fe,pe={},ze=F!=="categorical"&&R.value.property===void 0,Ke=!ze,ut=ms(R.value.stops)==="array"&&ms(R.value.stops[0])==="array"&&ms(R.value.stops[0][0])==="object",Lt=Cu({key:R.key,value:R.value,valueSpec:R.styleSpec.function,validateSpec:R.validateSpec,style:R.style,styleSpec:R.styleSpec,objectElementValidators:{stops:function(mr){if(F==="identity")return[new ur(mr.key,mr.value,'identity function may not have a "stops" property')];let Lr=[],zr=mr.value;return Lr=Lr.concat(Wf({key:mr.key,value:zr,valueSpec:mr.valueSpec,validateSpec:mr.validateSpec,style:mr.style,styleSpec:mr.styleSpec,arrayElementValidator:Qt})),ms(zr)==="array"&&zr.length===0&&Lr.push(new ur(mr.key,zr,"array must have at least one stop")),Lr},default:function(mr){return mr.validateSpec({key:mr.key,value:mr.value,valueSpec:S,validateSpec:mr.validateSpec,style:mr.style,styleSpec:mr.styleSpec})}}});return F==="identity"&&ze&&Lt.push(new ur(R.key,R.value,'missing required property "property"')),F==="identity"||R.value.stops||Lt.push(new ur(R.key,R.value,'missing required property "stops"')),F==="exponential"&&R.valueSpec.expression&&!Rc(R.valueSpec)&&Lt.push(new ur(R.key,R.value,"exponential functions not supported")),R.styleSpec.$version>=8&&(Ke&&!Bl(R.valueSpec)?Lt.push(new ur(R.key,R.value,"property functions not supported")):ze&&!Kc(R.valueSpec)&&Lt.push(new ur(R.key,R.value,"zoom functions not supported"))),F!=="categorical"&&!ut||R.value.property!==void 0||Lt.push(new ur(R.key,R.value,'"property" property is required')),Lt;function Qt(mr){let Lr=[],zr=mr.value,ui=mr.key;if(ms(zr)!=="array")return[new ur(ui,zr,`array expected, ${ms(zr)} found`)];if(zr.length!==2)return[new ur(ui,zr,`array length 2 expected, length ${zr.length} found`)];if(ut){if(ms(zr[0])!=="object")return[new ur(ui,zr,`object expected, ${ms(zr[0])} found`)];if(zr[0].zoom===void 0)return[new ur(ui,zr,"object stop key must have zoom")];if(zr[0].value===void 0)return[new ur(ui,zr,"object stop key must have value")];if(fe&&fe>Ls(zr[0].zoom))return[new ur(ui,zr[0].zoom,"stop zoom values must appear in ascending order")];Ls(zr[0].zoom)!==fe&&(fe=Ls(zr[0].zoom),te=void 0,pe={}),Lr=Lr.concat(Cu({key:`${ui}[0]`,value:zr[0],valueSpec:{zoom:{}},validateSpec:mr.validateSpec,style:mr.style,styleSpec:mr.styleSpec,objectElementValidators:{zoom:Vs,value:fr}}))}else Lr=Lr.concat(fr({key:`${ui}[0]`,value:zr[0],valueSpec:{},validateSpec:mr.validateSpec,style:mr.style,styleSpec:mr.styleSpec},zr));return Dc(vu(zr[1]))?Lr.concat([new ur(`${ui}[1]`,zr[1],"expressions are not allowed in function stops.")]):Lr.concat(mr.validateSpec({key:`${ui}[1]`,value:zr[1],valueSpec:S,validateSpec:mr.validateSpec,style:mr.style,styleSpec:mr.styleSpec}))}function fr(mr,Lr){let zr=ms(mr.value),ui=Ls(mr.value),yi=mr.value!==null?mr.value:Lr;if(W){if(zr!==W)return[new ur(mr.key,yi,`${zr} stop domain type must match previous stop domain type ${W}`)]}else W=zr;if(zr!=="number"&&zr!=="string"&&zr!=="boolean")return[new ur(mr.key,yi,"stop domain value must be a number, string, or boolean")];if(zr!=="number"&&F!=="categorical"){let dn=`number expected, ${zr} found`;return Bl(S)&&F===void 0&&(dn+='\nIf you intended to use a categorical function, specify `"type": "categorical"`.'),[new ur(mr.key,yi,dn)]}return F!=="categorical"||zr!=="number"||isFinite(ui)&&Math.floor(ui)===ui?F!=="categorical"&&zr==="number"&&te!==void 0&&ui<te?[new ur(mr.key,yi,"stop domain values must appear in ascending order")]:(te=ui,F==="categorical"&&ui in pe?[new ur(mr.key,yi,"stop domain values must be unique")]:(pe[ui]=!0,[])):[new ur(mr.key,yi,`integer expected, found ${ui}`)]}}function zc(R){let S=(R.expressionContext==="property"?_u:ks)(vu(R.value),R.valueSpec);if(S.result==="error")return S.value.map(W=>new ur(`${R.key}${W.key}`,R.value,W.message));let F=S.value.expression||S.value._styleExpression.expression;if(R.expressionContext==="property"&&R.propertyKey==="text-font"&&!F.outputDefined())return[new ur(R.key,R.value,`Invalid data expression for "${R.propertyKey}". Output values must be contained as literals within the expression.`)];if(R.expressionContext==="property"&&R.propertyType==="layout"&&!ju(F))return[new ur(R.key,R.value,'"feature-state" data expressions are not supported with layout properties.')];if(R.expressionContext==="filter"&&!ju(F))return[new ur(R.key,R.value,'"feature-state" data expressions are not supported with filters.')];if(R.expressionContext&&R.expressionContext.indexOf("cluster")===0){if(!Hf(F,["zoom","feature-state"]))return[new ur(R.key,R.value,'"zoom" and "feature-state" expressions are not supported with cluster properties.')];if(R.expressionContext==="cluster-initial"&&!th(F))return[new ur(R.key,R.value,"Feature data expressions are not supported with initial expression part of cluster properties.")]}return[]}function Wu(R){let S=R.key,F=R.value,W=R.valueSpec,te=[];return Array.isArray(W.values)?W.values.indexOf(Ls(F))===-1&&te.push(new ur(S,F,`expected one of [${W.values.join(", ")}], ${JSON.stringify(F)} found`)):Object.keys(W.values).indexOf(Ls(F))===-1&&te.push(new ur(S,F,`expected one of [${Object.keys(W.values).join(", ")}], ${JSON.stringify(F)} found`)),te}function If(R){return bh(vu(R.value))?zc(Qe({},R,{expressionContext:"filter",valueSpec:{value:"boolean"}})):Xu(R)}function Xu(R){let S=R.value,F=R.key;if(ms(S)!=="array")return[new ur(F,S,`array expected, ${ms(S)} found`)];let W=R.styleSpec,te,fe=[];if(S.length<1)return[new ur(F,S,"filter array must have at least 1 element")];switch(fe=fe.concat(Wu({key:`${F}[0]`,value:S[0],valueSpec:W.filter_operator,style:R.style,styleSpec:R.styleSpec})),Ls(S[0])){case"<":case"<=":case">":case">=":S.length>=2&&Ls(S[1])==="$type"&&fe.push(new ur(F,S,`"$type" cannot be use with operator "${S[0]}"`));case"==":case"!=":S.length!==3&&fe.push(new ur(F,S,`filter array for operator "${S[0]}" must have 3 elements`));case"in":case"!in":S.length>=2&&(te=ms(S[1]),te!=="string"&&fe.push(new ur(`${F}[1]`,S[1],`string expected, ${te} found`)));for(let pe=2;pe<S.length;pe++)te=ms(S[pe]),Ls(S[1])==="$type"?fe=fe.concat(Wu({key:`${F}[${pe}]`,value:S[pe],valueSpec:W.geometry_type,style:R.style,styleSpec:R.styleSpec})):te!=="string"&&te!=="number"&&te!=="boolean"&&fe.push(new ur(`${F}[${pe}]`,S[pe],`string, number, or boolean expected, ${te} found`));break;case"any":case"all":case"none":for(let pe=1;pe<S.length;pe++)fe=fe.concat(Xu({key:`${F}[${pe}]`,value:S[pe],style:R.style,styleSpec:R.styleSpec}));break;case"has":case"!has":te=ms(S[1]),S.length!==2?fe.push(new ur(F,S,`filter array for "${S[0]}" operator must have 2 elements`)):te!=="string"&&fe.push(new ur(`${F}[1]`,S[1],`string expected, ${te} found`))}return fe}function uf(R,S){let F=R.key,W=R.validateSpec,te=R.style,fe=R.styleSpec,pe=R.value,ze=R.objectKey,Ke=fe[`${S}_${R.layerType}`];if(!Ke)return[];let ut=ze.match(/^(.*)-transition$/);if(S==="paint"&&ut&&Ke[ut[1]]&&Ke[ut[1]].transition)return W({key:F,value:pe,valueSpec:fe.transition,style:te,styleSpec:fe});let Lt=R.valueSpec||Ke[ze];if(!Lt)return[new ur(F,pe,`unknown property "${ze}"`)];let Qt;if(ms(pe)==="string"&&Bl(Lt)&&!Lt.tokens&&(Qt=/^{([^}]+)}$/.exec(pe)))return[new ur(F,pe,`"${ze}" does not support interpolation syntax
|
||
Use an identity property function instead: \`{ "type": "identity", "property": ${JSON.stringify(Qt[1])} }\`.`)];let fr=[];return R.layerType==="symbol"&&(ze==="text-field"&&te&&!te.glyphs&&fr.push(new ur(F,pe,'use of "text-field" requires a style "glyphs" property')),ze==="text-font"&&jf(vu(pe))&&Ls(pe.type)==="identity"&&fr.push(new ur(F,pe,'"text-font" does not support identity functions'))),fr.concat(W({key:R.key,value:pe,valueSpec:Lt,style:te,styleSpec:fe,expressionContext:"property",propertyType:S,propertyKey:ze}))}function Xf(R){return uf(R,"paint")}function Wl(R){return uf(R,"layout")}function ah(R){let S=[],F=R.value,W=R.key,te=R.style,fe=R.styleSpec;F.type||F.ref||S.push(new ur(W,F,'either "type" or "ref" is required'));let pe=Ls(F.type),ze=Ls(F.ref);if(F.id){let Ke=Ls(F.id);for(let ut=0;ut<R.arrayIndex;ut++){let Lt=te.layers[ut];Ls(Lt.id)===Ke&&S.push(new ur(W,F.id,`duplicate layer id "${F.id}", previously used at line ${Lt.id.__line__}`))}}if("ref"in F){let Ke;["type","source","source-layer","filter","layout"].forEach(ut=>{ut in F&&S.push(new ur(W,F[ut],`"${ut}" is prohibited for ref layers`))}),te.layers.forEach(ut=>{Ls(ut.id)===ze&&(Ke=ut)}),Ke?Ke.ref?S.push(new ur(W,F.ref,"ref cannot reference another ref layer")):pe=Ls(Ke.type):S.push(new ur(W,F.ref,`ref layer "${ze}" not found`))}else if(pe!=="background")if(F.source){let Ke=te.sources&&te.sources[F.source],ut=Ke&&Ls(Ke.type);Ke?ut==="vector"&&pe==="raster"?S.push(new ur(W,F.source,`layer "${F.id}" requires a raster source`)):ut!=="raster-dem"&&pe==="hillshade"?S.push(new ur(W,F.source,`layer "${F.id}" requires a raster-dem source`)):ut==="raster"&&pe!=="raster"?S.push(new ur(W,F.source,`layer "${F.id}" requires a vector source`)):ut!=="vector"||F["source-layer"]?ut==="raster-dem"&&pe!=="hillshade"?S.push(new ur(W,F.source,"raster-dem source can only be used with layer type 'hillshade'.")):pe!=="line"||!F.paint||!F.paint["line-gradient"]||ut==="geojson"&&Ke.lineMetrics||S.push(new ur(W,F,`layer "${F.id}" specifies a line-gradient, which requires a GeoJSON source with \`lineMetrics\` enabled.`)):S.push(new ur(W,F,`layer "${F.id}" must specify a "source-layer"`)):S.push(new ur(W,F.source,`source "${F.source}" not found`))}else S.push(new ur(W,F,'missing required property "source"'));return S=S.concat(Cu({key:W,value:F,valueSpec:fe.layer,style:R.style,styleSpec:R.styleSpec,validateSpec:R.validateSpec,objectElementValidators:{"*":()=>[],type:()=>R.validateSpec({key:`${W}.type`,value:F.type,valueSpec:fe.layer.type,style:R.style,styleSpec:R.styleSpec,validateSpec:R.validateSpec,object:F,objectKey:"type"}),filter:If,layout:Ke=>Cu({layer:F,key:Ke.key,value:Ke.value,style:Ke.style,styleSpec:Ke.styleSpec,validateSpec:Ke.validateSpec,objectElementValidators:{"*":ut=>Wl(Qe({layerType:pe},ut))}}),paint:Ke=>Cu({layer:F,key:Ke.key,value:Ke.value,style:Ke.style,styleSpec:Ke.styleSpec,validateSpec:Ke.validateSpec,objectElementValidators:{"*":ut=>Xf(Qe({layerType:pe},ut))}})}})),S}function Zu(R){let S=R.value,F=R.key,W=ms(S);return W!=="string"?[new ur(F,S,`string expected, ${W} found`)]:[]}let Oc={promoteId:function({key:R,value:S}){if(ms(S)==="string")return Zu({key:R,value:S});{let F=[];for(let W in S)F.push(...Zu({key:`${R}.${W}`,value:S[W]}));return F}}};function Tc(R){let S=R.value,F=R.key,W=R.styleSpec,te=R.style,fe=R.validateSpec;if(!S.type)return[new ur(F,S,'"type" is required')];let pe=Ls(S.type),ze;switch(pe){case"vector":case"raster":return ze=Cu({key:F,value:S,valueSpec:W[`source_${pe.replace("-","_")}`],style:R.style,styleSpec:W,objectElementValidators:Oc,validateSpec:fe}),ze;case"raster-dem":return ze=function(Ke){var ut;let Lt=(ut=Ke.sourceName)!==null&&ut!==void 0?ut:"",Qt=Ke.value,fr=Ke.styleSpec,mr=fr.source_raster_dem,Lr=Ke.style,zr=[],ui=ms(Qt);if(Qt===void 0)return zr;if(ui!=="object")return zr.push(new ur("source_raster_dem",Qt,`object expected, ${ui} found`)),zr;let yi=Ls(Qt.encoding)==="custom",dn=["redFactor","greenFactor","blueFactor","baseShift"],Fi=Ke.value.encoding?`"${Ke.value.encoding}"`:"Default";for(let ln in Qt)!yi&&dn.includes(ln)?zr.push(new ur(ln,Qt[ln],`In "${Lt}": "${ln}" is only valid when "encoding" is set to "custom". ${Fi} encoding found`)):mr[ln]?zr=zr.concat(Ke.validateSpec({key:ln,value:Qt[ln],valueSpec:mr[ln],validateSpec:Ke.validateSpec,style:Lr,styleSpec:fr})):zr.push(new ur(ln,Qt[ln],`unknown property "${ln}"`));return zr}({sourceName:F,value:S,style:R.style,styleSpec:W,validateSpec:fe}),ze;case"geojson":if(ze=Cu({key:F,value:S,valueSpec:W.source_geojson,style:te,styleSpec:W,validateSpec:fe,objectElementValidators:Oc}),S.cluster)for(let Ke in S.clusterProperties){let[ut,Lt]=S.clusterProperties[Ke],Qt=typeof ut=="string"?[ut,["accumulated"],["get",Ke]]:ut;ze.push(...zc({key:`${F}.${Ke}.map`,value:Lt,validateSpec:fe,expressionContext:"cluster-map"})),ze.push(...zc({key:`${F}.${Ke}.reduce`,value:Qt,validateSpec:fe,expressionContext:"cluster-reduce"}))}return ze;case"video":return Cu({key:F,value:S,valueSpec:W.source_video,style:te,validateSpec:fe,styleSpec:W});case"image":return Cu({key:F,value:S,valueSpec:W.source_image,style:te,validateSpec:fe,styleSpec:W});case"canvas":return[new ur(F,null,"Please use runtime APIs to add canvas sources, rather than including them in stylesheets.","source.canvas")];default:return Wu({key:`${F}.type`,value:S.type,valueSpec:{values:["vector","raster","raster-dem","geojson","video","image"]},style:te,validateSpec:fe,styleSpec:W})}}function wl(R){let S=R.value,F=R.styleSpec,W=F.light,te=R.style,fe=[],pe=ms(S);if(S===void 0)return fe;if(pe!=="object")return fe=fe.concat([new ur("light",S,`object expected, ${pe} found`)]),fe;for(let ze in S){let Ke=ze.match(/^(.*)-transition$/);fe=fe.concat(Ke&&W[Ke[1]]&&W[Ke[1]].transition?R.validateSpec({key:ze,value:S[ze],valueSpec:F.transition,validateSpec:R.validateSpec,style:te,styleSpec:F}):W[ze]?R.validateSpec({key:ze,value:S[ze],valueSpec:W[ze],validateSpec:R.validateSpec,style:te,styleSpec:F}):[new ur(ze,S[ze],`unknown property "${ze}"`)])}return fe}function pu(R){let S=R.value,F=R.styleSpec,W=F.sky,te=R.style,fe=ms(S);if(S===void 0)return[];if(fe!=="object")return[new ur("sky",S,`object expected, ${fe} found`)];let pe=[];for(let ze in S)pe=pe.concat(W[ze]?R.validateSpec({key:ze,value:S[ze],valueSpec:W[ze],style:te,styleSpec:F}):[new ur(ze,S[ze],`unknown property "${ze}"`)]);return pe}function qc(R){let S=R.value,F=R.styleSpec,W=F.terrain,te=R.style,fe=[],pe=ms(S);if(S===void 0)return fe;if(pe!=="object")return fe=fe.concat([new ur("terrain",S,`object expected, ${pe} found`)]),fe;for(let ze in S)fe=fe.concat(W[ze]?R.validateSpec({key:ze,value:S[ze],valueSpec:W[ze],validateSpec:R.validateSpec,style:te,styleSpec:F}):[new ur(ze,S[ze],`unknown property "${ze}"`)]);return fe}function cf(R){let S=[],F=R.value,W=R.key;if(Array.isArray(F)){let te=[],fe=[];for(let pe in F)F[pe].id&&te.includes(F[pe].id)&&S.push(new ur(W,F,`all the sprites' ids must be unique, but ${F[pe].id} is duplicated`)),te.push(F[pe].id),F[pe].url&&fe.includes(F[pe].url)&&S.push(new ur(W,F,`all the sprites' URLs must be unique, but ${F[pe].url} is duplicated`)),fe.push(F[pe].url),S=S.concat(Cu({key:`${W}[${pe}]`,value:F[pe],valueSpec:{id:{type:"string",required:!0},url:{type:"string",required:!0}},validateSpec:R.validateSpec}));return S}return Zu({key:W,value:F})}let fc={"*":()=>[],array:Wf,boolean:function(R){let S=R.value,F=R.key,W=ms(S);return W!=="boolean"?[new ur(F,S,`boolean expected, ${W} found`)]:[]},number:Vs,color:function(R){let S=R.key,F=R.value,W=ms(F);return W!=="string"?[new ur(S,F,`color expected, ${W} found`)]:ar.parse(String(F))?[]:[new ur(S,F,`color expected, "${F}" found`)]},constants:Pf,enum:Wu,filter:If,function:bf,layer:ah,object:Cu,source:Tc,light:wl,sky:pu,terrain:qc,projection:function(R){let S=R.value,F=R.styleSpec,W=F.projection,te=R.style,fe=ms(S);if(S===void 0)return[];if(fe!=="object")return[new ur("projection",S,`object expected, ${fe} found`)];let pe=[];for(let ze in S)pe=pe.concat(W[ze]?R.validateSpec({key:ze,value:S[ze],valueSpec:W[ze],style:te,styleSpec:F}):[new ur(ze,S[ze],`unknown property "${ze}"`)]);return pe},string:Zu,formatted:function(R){return Zu(R).length===0?[]:zc(R)},resolvedImage:function(R){return Zu(R).length===0?[]:zc(R)},padding:function(R){let S=R.key,F=R.value;if(ms(F)==="array"){if(F.length<1||F.length>4)return[new ur(S,F,`padding requires 1 to 4 values; ${F.length} values found`)];let W={type:"number"},te=[];for(let fe=0;fe<F.length;fe++)te=te.concat(R.validateSpec({key:`${S}[${fe}]`,value:F[fe],validateSpec:R.validateSpec,valueSpec:W}));return te}return Vs({key:S,value:F,valueSpec:{}})},variableAnchorOffsetCollection:function(R){let S=R.key,F=R.value,W=ms(F),te=R.styleSpec;if(W!=="array"||F.length<1||F.length%2!=0)return[new ur(S,F,"variableAnchorOffsetCollection requires a non-empty array of even length")];let fe=[];for(let pe=0;pe<F.length;pe+=2)fe=fe.concat(Wu({key:`${S}[${pe}]`,value:F[pe],valueSpec:te.layout_symbol["text-anchor"]})),fe=fe.concat(Wf({key:`${S}[${pe+1}]`,value:F[pe+1],valueSpec:{length:2,value:"number"},validateSpec:R.validateSpec,style:R.style,styleSpec:te}));return fe},sprite:cf};function Bc(R){let S=R.value,F=R.valueSpec,W=R.styleSpec;return R.validateSpec=Bc,F.expression&&jf(Ls(S))?bf(R):F.expression&&Dc(vu(S))?zc(R):F.type&&fc[F.type]?fc[F.type](R):Cu(Qe({},R,{valueSpec:F.type?W[F.type]:F}))}function At(R){let S=R.value,F=R.key,W=Zu(R);return W.length||(S.indexOf("{fontstack}")===-1&&W.push(new ur(F,S,'"glyphs" url must include a "{fontstack}" token')),S.indexOf("{range}")===-1&&W.push(new ur(F,S,'"glyphs" url must include a "{range}" token'))),W}function Xt(R,S=ce){let F=[];return F=F.concat(Bc({key:"",value:R,valueSpec:S.$root,styleSpec:S,style:R,validateSpec:Bc,objectElementValidators:{glyphs:At,"*":()=>[]}})),R.constants&&(F=F.concat(Pf({key:"constants",value:R.constants,style:R,styleSpec:S,validateSpec:Bc}))),Ar(F)}function kr(R){return function(S){return R(uee(lee({},S),{validateSpec:Bc}))}}function Ar(R){return[].concat(R).sort((S,F)=>S.line-F.line)}function Kr(R){return function(...S){return Ar(R.apply(this,S))}}Xt.source=Kr(kr(Tc)),Xt.sprite=Kr(kr(cf)),Xt.glyphs=Kr(kr(At)),Xt.light=Kr(kr(wl)),Xt.sky=Kr(kr(pu)),Xt.terrain=Kr(kr(qc)),Xt.layer=Kr(kr(ah)),Xt.filter=Kr(kr(If)),Xt.paintProperty=Kr(kr(Xf)),Xt.layoutProperty=Kr(kr(Wl));let Ei=Xt,Wi=Ei.light,hn=Ei.sky,Tn=Ei.paintProperty,Bn=Ei.layoutProperty;function Zi(R,S){let F=!1;if(S&&S.length)for(let W of S)R.fire(new ge(new Error(W.message))),F=!0;return F}class $i{constructor(S,F,W){let te=this.cells=[];if(S instanceof ArrayBuffer){this.arrayBuffer=S;let pe=new Int32Array(this.arrayBuffer);S=pe[0],this.d=(F=pe[1])+2*(W=pe[2]);for(let Ke=0;Ke<this.d*this.d;Ke++){let ut=pe[3+Ke],Lt=pe[3+Ke+1];te.push(ut===Lt?null:pe.subarray(ut,Lt))}let ze=pe[3+te.length+1];this.keys=pe.subarray(pe[3+te.length],ze),this.bboxes=pe.subarray(ze),this.insert=this._insertReadonly}else{this.d=F+2*W;for(let pe=0;pe<this.d*this.d;pe++)te.push([]);this.keys=[],this.bboxes=[]}this.n=F,this.extent=S,this.padding=W,this.scale=F/S,this.uid=0;let fe=W/F*S;this.min=-fe,this.max=S+fe}insert(S,F,W,te,fe){this._forEachCell(F,W,te,fe,this._insertCell,this.uid++,void 0,void 0),this.keys.push(S),this.bboxes.push(F),this.bboxes.push(W),this.bboxes.push(te),this.bboxes.push(fe)}_insertReadonly(){throw new Error("Cannot insert into a GridIndex created from an ArrayBuffer.")}_insertCell(S,F,W,te,fe,pe){this.cells[fe].push(pe)}query(S,F,W,te,fe){let pe=this.min,ze=this.max;if(S<=pe&&F<=pe&&ze<=W&&ze<=te&&!fe)return Array.prototype.slice.call(this.keys);{let Ke=[];return this._forEachCell(S,F,W,te,this._queryCell,Ke,{},fe),Ke}}_queryCell(S,F,W,te,fe,pe,ze,Ke){let ut=this.cells[fe];if(ut!==null){let Lt=this.keys,Qt=this.bboxes;for(let fr=0;fr<ut.length;fr++){let mr=ut[fr];if(ze[mr]===void 0){let Lr=4*mr;(Ke?Ke(Qt[Lr+0],Qt[Lr+1],Qt[Lr+2],Qt[Lr+3]):S<=Qt[Lr+2]&&F<=Qt[Lr+3]&&W>=Qt[Lr+0]&&te>=Qt[Lr+1])?(ze[mr]=!0,pe.push(Lt[mr])):ze[mr]=!1}}}}_forEachCell(S,F,W,te,fe,pe,ze,Ke){let ut=this._convertToCellCoord(S),Lt=this._convertToCellCoord(F),Qt=this._convertToCellCoord(W),fr=this._convertToCellCoord(te);for(let mr=ut;mr<=Qt;mr++)for(let Lr=Lt;Lr<=fr;Lr++){let zr=this.d*Lr+mr;if((!Ke||Ke(this._convertFromCellCoord(mr),this._convertFromCellCoord(Lr),this._convertFromCellCoord(mr+1),this._convertFromCellCoord(Lr+1)))&&fe.call(this,S,F,W,te,zr,pe,ze,Ke))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,F=3+this.cells.length+1+1,W=0;for(let pe=0;pe<this.cells.length;pe++)W+=this.cells[pe].length;let te=new Int32Array(F+W+this.keys.length+this.bboxes.length);te[0]=this.extent,te[1]=this.n,te[2]=this.padding;let fe=F;for(let pe=0;pe<S.length;pe++){let ze=S[pe];te[3+pe]=fe,te.set(ze,fe),fe+=ze.length}return te[3+S.length]=fe,te.set(this.keys,fe),fe+=this.keys.length,te[3+S.length+1]=fe,te.set(this.bboxes,fe),fe+=this.bboxes.length,te.buffer}static serialize(S,F){let W=S.toArrayBuffer();return F&&F.push(W),{buffer:W}}static deserialize(S){return new $i(S.buffer)}}let an={};function Di(R,S,F={}){if(an[R])throw new Error(`${R} is already registered.`);Object.defineProperty(S,"_classRegistryKey",{value:R,writeable:!1}),an[R]={klass:S,omit:F.omit||[],shallow:F.shallow||[]}}Di("Object",Object),Di("TransferableGridIndex",$i),Di("Color",ar),Di("Error",Error),Di("AJAXError",me),Di("ResolvedImage",en),Di("StylePropertyFunction",al),Di("StyleExpression",Eu,{omit:["_evaluator"]}),Di("ZoomDependentExpression",du),Di("ZoomConstantExpression",bc),Di("CompoundExpression",ql,{omit:["_evaluate"]});for(let R in mf)mf[R]._classRegistryKey||Di(`Expression_${R}`,mf[R]);function $n(R){return R&&typeof ArrayBuffer!="undefined"&&(R instanceof ArrayBuffer||R.constructor&&R.constructor.name==="ArrayBuffer")}function ka(R){return R.$name||R.constructor._classRegistryKey}function Ra(R){return!function(S){if(S===null||typeof S!="object")return!1;let F=ka(S);return!(!F||F==="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||$n(R)||G(R)||ArrayBuffer.isView(R)||R instanceof ImageData)}function La(R,S){if(Ra(R))return($n(R)||G(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 fe=[];for(let pe of R)fe.push(La(pe,S));return fe}if(typeof R!="object")throw new Error("can't serialize object of type "+typeof R);let F=ka(R);if(!F)throw new Error(`can't serialize object of unregistered class ${R.constructor.name}`);if(!an[F])throw new Error(`${F} is not registered.`);let{klass:W}=an[F],te=W.serialize?W.serialize(R,S):{};if(W.serialize){if(S&&te===S[S.length-1])throw new Error("statically serialized object won't survive transfer of $name property")}else{for(let fe in R){if(!R.hasOwnProperty(fe)||an[F].omit.indexOf(fe)>=0)continue;let pe=R[fe];te[fe]=an[F].shallow.indexOf(fe)>=0?pe:La(pe,S)}R instanceof Error&&(te.message=R.message)}if(te.$name)throw new Error("$name property is reserved for worker serialization logic.");return F!=="Object"&&(te.$name=F),te}function Na(R){if(Ra(R))return R;if(Array.isArray(R))return R.map(Na);if(typeof R!="object")throw new Error("can't deserialize object of type "+typeof R);let S=ka(R)||"Object";if(!an[S])throw new Error(`can't deserialize unregistered class ${S}`);let{klass:F}=an[S];if(!F)throw new Error(`can't deserialize unregistered class ${S}`);if(F.deserialize)return F.deserialize(R);let W=Object.create(F.prototype);for(let te of Object.keys(R)){if(te==="$name")continue;let fe=R[te];W[te]=an[S].shallow.indexOf(te)>=0?fe:Na(fe)}return W}class Yn{constructor(){this.first=!0}update(S,F){let W=Math.floor(S);return this.first?(this.first=!1,this.lastIntegerZoom=W,this.lastIntegerZoomTime=0,this.lastZoom=S,this.lastFloorZoom=W,!0):(this.lastFloorZoom>W?(this.lastIntegerZoom=W+1,this.lastIntegerZoomTime=F):this.lastFloorZoom<W&&(this.lastIntegerZoom=W,this.lastIntegerZoomTime=F),S!==this.lastZoom&&(this.lastZoom=S,this.lastFloorZoom=W,!0))}}let zn={"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 Ka(R){for(let S of R)if(Ho(S.charCodeAt(0)))return!0;return!1}function bo(R){for(let S of R)if(!os(S.charCodeAt(0)))return!1;return!0}function Xo(R){let S=R.map(F=>{try{return new RegExp(`\\p{sc=${F}}`,"u").source}catch(W){return null}}).filter(F=>F);return new RegExp(S.join("|"),"u")}let Ms=Xo(["Arab","Dupl","Mong","Ougr","Syrc"]);function os(R){return!Ms.test(String.fromCodePoint(R))}let Ts=Xo(["Bopo","Hani","Hira","Kana","Kits","Nshu","Tang","Yiii"]);function Ho(R){return!(R!==746&&R!==747&&(R<4352||!(zn["CJK Compatibility Forms"](R)&&!(R>=65097&&R<=65103)||zn["CJK Compatibility"](R)||zn["CJK Strokes"](R)||!(!zn["CJK Symbols and Punctuation"](R)||R>=12296&&R<=12305||R>=12308&&R<=12319||R===12336)||zn["Enclosed CJK Letters and Months"](R)||zn["Ideographic Description Characters"](R)||zn.Kanbun(R)||zn.Katakana(R)&&R!==12540||!(!zn["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)||!(!zn["Small Form Variants"](R)||R>=65112&&R<=65118||R>=65123&&R<=65126)||zn["Vertical Forms"](R)||zn["Yijing Hexagram Symbols"](R)||new RegExp("\\p{sc=Cans}","u").test(String.fromCodePoint(R))||new RegExp("\\p{sc=Hang}","u").test(String.fromCodePoint(R))||Ts.test(String.fromCodePoint(R)))))}function yl(R){return!(Ho(R)||function(S){return!!(zn["Latin-1 Supplement"](S)&&(S===167||S===169||S===174||S===177||S===188||S===189||S===190||S===215||S===247)||zn["General Punctuation"](S)&&(S===8214||S===8224||S===8225||S===8240||S===8241||S===8251||S===8252||S===8258||S===8263||S===8264||S===8265||S===8273)||zn["Letterlike Symbols"](S)||zn["Number Forms"](S)||zn["Miscellaneous Technical"](S)&&(S>=8960&&S<=8967||S>=8972&&S<=8991||S>=8996&&S<=9e3||S===9003||S>=9085&&S<=9114||S>=9150&&S<=9165||S===9167||S>=9169&&S<=9179||S>=9186&&S<=9215)||zn["Control Pictures"](S)&&S!==9251||zn["Optical Character Recognition"](S)||zn["Enclosed Alphanumerics"](S)||zn["Geometric Shapes"](S)||zn["Miscellaneous Symbols"](S)&&!(S>=9754&&S<=9759)||zn["Miscellaneous Symbols and Arrows"](S)&&(S>=11026&&S<=11055||S>=11088&&S<=11097||S>=11192&&S<=11243)||zn["CJK Symbols and Punctuation"](S)||zn.Katakana(S)||zn["Private Use Area"](S)||zn["CJK Compatibility Forms"](S)||zn["Small Form Variants"](S)||zn["Halfwidth and Fullwidth Forms"](S)||S===8734||S===8756||S===8757||S>=9984&&S<=10087||S>=10102&&S<=10131||S===65532||S===65533)}(R))}let Xs=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 Ps(R){return Xs.test(String.fromCodePoint(R))}function va(R,S){return!(!S&&Ps(R)||R>=2304&&R<=3583||R>=3840&&R<=4255||zn.Khmer(R))}function no(R){for(let S of R)if(Ps(S.charCodeAt(0)))return!0;return!1}let _s=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 is{constructor(S,F){this.zoom=S,F?(this.now=F.now,this.fadeDuration=F.fadeDuration,this.zoomHistory=F.zoomHistory,this.transition=F.transition):(this.now=0,this.fadeDuration=0,this.zoomHistory=new Yn,this.transition={})}isSupportedScript(S){return function(F,W){for(let te of F)if(!va(te.charCodeAt(0),W))return!1;return!0}(S,_s.getRTLTextPluginStatus()==="loaded")}crossFadingFactor(){return this.fadeDuration===0?1:Math.min((this.now-this.zoomHistory.lastIntegerZoomTime)/this.fadeDuration,1)}getCrossfadeParameters(){let S=this.zoom,F=S-Math.floor(S),W=this.crossFadingFactor();return S>this.zoomHistory.lastIntegerZoom?{fromScale:2,toScale:1,t:F+(1-F)*W}:{fromScale:.5,toScale:1,t:1-(1-W)*F}}}class $l{constructor(S,F){this.property=S,this.value=F,this.expression=function(W,te){if(jf(W))return new al(W,te);if(Dc(W)){let fe=_u(W,te);if(fe.result==="error")throw new Error(fe.value.map(pe=>`${pe.key}: ${pe.message}`).join(", "));return fe.value}{let fe=W;return te.type==="color"&&typeof W=="string"?fe=ar.parse(W):te.type!=="padding"||typeof W!="number"&&!Array.isArray(W)?te.type==="variableAnchorOffsetCollection"&&Array.isArray(W)&&(fe=Ji.parse(W)):fe=$r.parse(W),{kind:"constant",evaluate:()=>fe}}}(F===void 0?S.specification.default:F,S.specification)}isDataDriven(){return this.expression.kind==="source"||this.expression.kind==="composite"}possiblyEvaluate(S,F,W){return this.property.possiblyEvaluate(this,S,F,W)}}class ku{constructor(S){this.property=S,this.value=new $l(S,void 0)}transitioned(S,F){return new Nc(this.property,this.value,F,L({},S.transition,this.transition),S.now)}untransitioned(){return new Nc(this.property,this.value,null,{},0)}}class Yu{constructor(S){this._properties=S,this._values=Object.create(S.defaultTransitionablePropertyValues)}getValue(S){return g(this._values[S].value.value)}setValue(S,F){Object.prototype.hasOwnProperty.call(this._values,S)||(this._values[S]=new ku(this._values[S].property)),this._values[S].value=new $l(this._values[S].property,F===null?void 0:g(F))}getTransition(S){return g(this._values[S].transition)}setTransition(S,F){Object.prototype.hasOwnProperty.call(this._values,S)||(this._values[S]=new ku(this._values[S].property)),this._values[S].transition=g(F)||void 0}serialize(){let S={};for(let F of Object.keys(this._values)){let W=this.getValue(F);W!==void 0&&(S[F]=W);let te=this.getTransition(F);te!==void 0&&(S[`${F}-transition`]=te)}return S}transitioned(S,F){let W=new gu(this._properties);for(let te of Object.keys(this._values))W._values[te]=this._values[te].transitioned(S,F._values[te]);return W}untransitioned(){let S=new gu(this._properties);for(let F of Object.keys(this._values))S._values[F]=this._values[F].untransitioned();return S}}class Nc{constructor(S,F,W,te,fe){this.property=S,this.value=F,this.begin=fe+te.delay||0,this.end=this.begin+te.duration||0,S.specification.transition&&(te.delay||te.duration)&&(this.prior=W)}possiblyEvaluate(S,F,W){let te=S.now||0,fe=this.value.possiblyEvaluate(S,F,W),pe=this.prior;if(pe){if(te>this.end)return this.prior=null,fe;if(this.value.isDataDriven())return this.prior=null,fe;if(te<this.begin)return pe.possiblyEvaluate(S,F,W);{let ze=(te-this.begin)/(this.end-this.begin);return this.property.interpolate(pe.possiblyEvaluate(S,F,W),fe,function(Ke){if(Ke<=0)return 0;if(Ke>=1)return 1;let ut=Ke*Ke,Lt=ut*Ke;return 4*(Ke<.5?Lt:3*(Ke-ut)+Lt-.75)}(ze))}}return fe}}class gu{constructor(S){this._properties=S,this._values=Object.create(S.defaultTransitioningPropertyValues)}possiblyEvaluate(S,F,W){let te=new Ac(this._properties);for(let fe of Object.keys(this._values))te._values[fe]=this._values[fe].possiblyEvaluate(S,F,W);return te}hasTransition(){for(let S of Object.keys(this._values))if(this._values[S].prior)return!0;return!1}}class Uc{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,F){this._values[S]=new $l(this._values[S].property,F===null?void 0:g(F))}serialize(){let S={};for(let F of Object.keys(this._values)){let W=this.getValue(F);W!==void 0&&(S[F]=W)}return S}possiblyEvaluate(S,F,W){let te=new Ac(this._properties);for(let fe of Object.keys(this._values))te._values[fe]=this._values[fe].possiblyEvaluate(S,F,W);return te}}class xu{constructor(S,F,W){this.property=S,this.value=F,this.parameters=W}isConstant(){return this.value.kind==="constant"}constantOr(S){return this.value.kind==="constant"?this.value.value:S}evaluate(S,F,W,te){return this.property.evaluate(this.value,this.parameters,S,F,W,te)}}class Ac{constructor(S){this._properties=S,this._values=Object.create(S.defaultPossiblyEvaluatedValues)}get(S){return this._values[S]}}class Ua{constructor(S){this.specification=S}possiblyEvaluate(S,F){if(S.isDataDriven())throw new Error("Value should not be data driven");return S.expression.evaluate(F)}interpolate(S,F,W){let te=Lo[this.specification.type];return te?te(S,F,W):S}}class oo{constructor(S,F){this.specification=S,this.overrides=F}possiblyEvaluate(S,F,W,te){return new xu(this,S.expression.kind==="constant"||S.expression.kind==="camera"?{kind:"constant",value:S.expression.evaluate(F,null,{},W,te)}:S.expression,F)}interpolate(S,F,W){if(S.value.kind!=="constant"||F.value.kind!=="constant")return S;if(S.value.value===void 0||F.value.value===void 0)return new xu(this,{kind:"constant",value:void 0},S.parameters);let te=Lo[this.specification.type];if(te){let fe=te(S.value.value,F.value.value,W);return new xu(this,{kind:"constant",value:fe},S.parameters)}return S}evaluate(S,F,W,te,fe,pe){return S.kind==="constant"?S.value:S.evaluate(F,W,te,fe,pe)}}class Vc extends oo{possiblyEvaluate(S,F,W,te){if(S.value===void 0)return new xu(this,{kind:"constant",value:void 0},F);if(S.expression.kind==="constant"){let fe=S.expression.evaluate(F,null,{},W,te),pe=S.property.specification.type==="resolvedImage"&&typeof fe!="string"?fe.name:fe,ze=this._calculate(pe,pe,pe,F);return new xu(this,{kind:"constant",value:ze},F)}if(S.expression.kind==="camera"){let fe=this._calculate(S.expression.evaluate({zoom:F.zoom-1}),S.expression.evaluate({zoom:F.zoom}),S.expression.evaluate({zoom:F.zoom+1}),F);return new xu(this,{kind:"constant",value:fe},F)}return new xu(this,S.expression,F)}evaluate(S,F,W,te,fe,pe){if(S.kind==="source"){let ze=S.evaluate(F,W,te,fe,pe);return this._calculate(ze,ze,ze,F)}return S.kind==="composite"?this._calculate(S.evaluate({zoom:Math.floor(F.zoom)-1},W,te),S.evaluate({zoom:Math.floor(F.zoom)},W,te),S.evaluate({zoom:Math.floor(F.zoom)+1},W,te),F):S.value}_calculate(S,F,W,te){return te.zoom>te.zoomHistory.lastIntegerZoom?{from:S,to:F}:{from:W,to:F}}interpolate(S){return S}}class hc{constructor(S){this.specification=S}possiblyEvaluate(S,F,W,te){if(S.value!==void 0){if(S.expression.kind==="constant"){let fe=S.expression.evaluate(F,null,{},W,te);return this._calculate(fe,fe,fe,F)}return this._calculate(S.expression.evaluate(new is(Math.floor(F.zoom-1),F)),S.expression.evaluate(new is(Math.floor(F.zoom),F)),S.expression.evaluate(new is(Math.floor(F.zoom+1),F)),F)}}_calculate(S,F,W,te){return te.zoom>te.zoomHistory.lastIntegerZoom?{from:S,to:F}:{from:W,to:F}}interpolate(S){return S}}class Ku{constructor(S){this.specification=S}possiblyEvaluate(S,F,W,te){return!!S.expression.evaluate(F,null,{},W,te)}interpolate(){return!1}}class ue{constructor(S){this.properties=S,this.defaultPropertyValues={},this.defaultTransitionablePropertyValues={},this.defaultTransitioningPropertyValues={},this.defaultPossiblyEvaluatedValues={},this.overridableProperties=[];for(let F in S){let W=S[F];W.specification.overridable&&this.overridableProperties.push(F);let te=this.defaultPropertyValues[F]=new $l(W,void 0),fe=this.defaultTransitionablePropertyValues[F]=new ku(W);this.defaultTransitioningPropertyValues[F]=fe.untransitioned(),this.defaultPossiblyEvaluatedValues[F]=te.possiblyEvaluate({})}}}Di("DataDrivenProperty",oo),Di("DataConstantProperty",Ua),Di("CrossFadedDataDrivenProperty",Vc),Di("CrossFadedProperty",hc),Di("ColorRampProperty",Ku);let w="-transition";class B extends Fe{constructor(S,F){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),F.layout&&(this._unevaluatedLayout=new Uc(F.layout)),F.paint)){this._transitionablePaint=new Yu(F.paint);for(let W in S.paint)this.setPaintProperty(W,S.paint[W],{validate:!1});for(let W in S.layout)this.setLayoutProperty(W,S.layout[W],{validate:!1});this._transitioningPaint=this._transitionablePaint.untransitioned(),this.paint=new Ac(F.paint)}}getCrossfadeParameters(){return this._crossfadeParameters}getLayoutProperty(S){return S==="visibility"?this.visibility:this._unevaluatedLayout.getValue(S)}setLayoutProperty(S,F,W={}){F!=null&&this._validate(Bn,`layers.${this.id}.layout.${S}`,S,F,W)||(S!=="visibility"?this._unevaluatedLayout.setValue(S,F):this.visibility=F)}getPaintProperty(S){return S.endsWith(w)?this._transitionablePaint.getTransition(S.slice(0,-11)):this._transitionablePaint.getValue(S)}setPaintProperty(S,F,W={}){if(F!=null&&this._validate(Tn,`layers.${this.id}.paint.${S}`,S,F,W))return!1;if(S.endsWith(w))return this._transitionablePaint.setTransition(S.slice(0,-11),F||void 0),!1;{let te=this._transitionablePaint._values[S],fe=te.property.specification["property-type"]==="cross-faded-data-driven",pe=te.value.isDataDriven(),ze=te.value;this._transitionablePaint.setValue(S,F),this._handleSpecialPaintPropertyUpdate(S);let Ke=this._transitionablePaint._values[S].value;return Ke.isDataDriven()||pe||fe||this._handleOverridablePaintPropertyUpdate(S,ze,Ke)}}_handleSpecialPaintPropertyUpdate(S){}_handleOverridablePaintPropertyUpdate(S,F,W){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,F){S.getCrossfadeParameters&&(this._crossfadeParameters=S.getCrossfadeParameters()),this._unevaluatedLayout&&(this.layout=this._unevaluatedLayout.possiblyEvaluate(S,void 0,F)),this.paint=this._transitioningPaint.possiblyEvaluate(S,void 0,F)}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,(F,W)=>!(F===void 0||W==="layout"&&!Object.keys(F).length||W==="paint"&&!Object.keys(F).length))}_validate(S,F,W,te,fe={}){return(!fe||fe.validate!==!1)&&Zi(this,S.call(Ei,{key:F,layerType:this.type,objectKey:W,value:te,styleSpec:ce,style:{glyphs:!0,sprite:!0}}))}is3D(){return!1}isTileClipped(){return!1}hasOffscreenPass(){return!1}resize(){}isStateDependent(){for(let S in this.paint._values){let F=this.paint.get(S);if(F instanceof xu&&Bl(F.property.specification)&&(F.value.kind==="source"||F.value.kind==="composite")&&F.value.isStateDependent)return!0}return!1}}let Q={Int8:Int8Array,Uint8:Uint8Array,Int16:Int16Array,Uint16:Uint16Array,Int32:Int32Array,Uint32:Uint32Array,Float32:Float32Array};class ee{constructor(S,F){this._structArray=S,this._pos1=F*this.size,this._pos2=this._pos1/2,this._pos4=this._pos1/4,this._pos8=this._pos1/8}}class le{constructor(){this.isTransferred=!1,this.capacity=-1,this.resize(0)}static serialize(S,F){return S._trim(),F&&(S.isTransferred=!0,F.push(S.arrayBuffer)),{length:S.length,arrayBuffer:S.arrayBuffer}}static deserialize(S){let F=Object.create(this.prototype);return F.arrayBuffer=S.arrayBuffer,F.length=S.length,F.capacity=S.arrayBuffer.byteLength/F.bytesPerElement,F._refreshViews(),F}_trim(){this.length!==this.capacity&&(this.capacity=this.length,this.arrayBuffer=this.arrayBuffer.slice(0,this.length*this.bytesPerElement),this._refreshViews())}clear(){this.length=0}resize(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 F=this.uint8;this._refreshViews(),F&&this.uint8.set(F)}}_refreshViews(){throw new Error("_refreshViews() must be implemented by each concrete StructArray layout")}}function qe(R,S=1){let F=0,W=0;return{members:R.map(te=>{let fe=Q[te.type].BYTES_PER_ELEMENT,pe=F=Xe(F,Math.max(S,fe)),ze=te.components||1;return W=Math.max(W,fe),F+=fe*ze,{name:te.name,type:te.type,components:ze,offset:pe}}),size:Xe(F,Math.max(W,S)),alignment:S}}function Xe(R,S){return Math.ceil(R/S)*S}class ot extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(S,F){let W=this.length;return this.resize(W+1),this.emplace(W,S,F)}emplace(S,F,W){let te=2*S;return this.int16[te+0]=F,this.int16[te+1]=W,S}}ot.prototype.bytesPerElement=4,Di("StructArrayLayout2i4",ot);class Tt extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(S,F,W){let te=this.length;return this.resize(te+1),this.emplace(te,S,F,W)}emplace(S,F,W,te){let fe=3*S;return this.int16[fe+0]=F,this.int16[fe+1]=W,this.int16[fe+2]=te,S}}Tt.prototype.bytesPerElement=6,Di("StructArrayLayout3i6",Tt);class Kt extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(S,F,W,te){let fe=this.length;return this.resize(fe+1),this.emplace(fe,S,F,W,te)}emplace(S,F,W,te,fe){let pe=4*S;return this.int16[pe+0]=F,this.int16[pe+1]=W,this.int16[pe+2]=te,this.int16[pe+3]=fe,S}}Kt.prototype.bytesPerElement=8,Di("StructArrayLayout4i8",Kt);class Jt extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(S,F,W,te,fe,pe){let ze=this.length;return this.resize(ze+1),this.emplace(ze,S,F,W,te,fe,pe)}emplace(S,F,W,te,fe,pe,ze){let Ke=6*S;return this.int16[Ke+0]=F,this.int16[Ke+1]=W,this.int16[Ke+2]=te,this.int16[Ke+3]=fe,this.int16[Ke+4]=pe,this.int16[Ke+5]=ze,S}}Jt.prototype.bytesPerElement=12,Di("StructArrayLayout2i4i12",Jt);class xr extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(S,F,W,te,fe,pe){let ze=this.length;return this.resize(ze+1),this.emplace(ze,S,F,W,te,fe,pe)}emplace(S,F,W,te,fe,pe,ze){let Ke=4*S,ut=8*S;return this.int16[Ke+0]=F,this.int16[Ke+1]=W,this.uint8[ut+4]=te,this.uint8[ut+5]=fe,this.uint8[ut+6]=pe,this.uint8[ut+7]=ze,S}}xr.prototype.bytesPerElement=8,Di("StructArrayLayout2i4ub8",xr);class Pr extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(S,F){let W=this.length;return this.resize(W+1),this.emplace(W,S,F)}emplace(S,F,W){let te=2*S;return this.float32[te+0]=F,this.float32[te+1]=W,S}}Pr.prototype.bytesPerElement=8,Di("StructArrayLayout2f8",Pr);class ve extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(S,F,W,te,fe,pe,ze,Ke,ut,Lt){let Qt=this.length;return this.resize(Qt+1),this.emplace(Qt,S,F,W,te,fe,pe,ze,Ke,ut,Lt)}emplace(S,F,W,te,fe,pe,ze,Ke,ut,Lt,Qt){let fr=10*S;return this.uint16[fr+0]=F,this.uint16[fr+1]=W,this.uint16[fr+2]=te,this.uint16[fr+3]=fe,this.uint16[fr+4]=pe,this.uint16[fr+5]=ze,this.uint16[fr+6]=Ke,this.uint16[fr+7]=ut,this.uint16[fr+8]=Lt,this.uint16[fr+9]=Qt,S}}ve.prototype.bytesPerElement=20,Di("StructArrayLayout10ui20",ve);class be extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(S,F,W,te,fe,pe,ze,Ke,ut,Lt,Qt,fr){let mr=this.length;return this.resize(mr+1),this.emplace(mr,S,F,W,te,fe,pe,ze,Ke,ut,Lt,Qt,fr)}emplace(S,F,W,te,fe,pe,ze,Ke,ut,Lt,Qt,fr,mr){let Lr=12*S;return this.int16[Lr+0]=F,this.int16[Lr+1]=W,this.int16[Lr+2]=te,this.int16[Lr+3]=fe,this.uint16[Lr+4]=pe,this.uint16[Lr+5]=ze,this.uint16[Lr+6]=Ke,this.uint16[Lr+7]=ut,this.int16[Lr+8]=Lt,this.int16[Lr+9]=Qt,this.int16[Lr+10]=fr,this.int16[Lr+11]=mr,S}}be.prototype.bytesPerElement=24,Di("StructArrayLayout4i4ui4i24",be);class Re extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(S,F,W){let te=this.length;return this.resize(te+1),this.emplace(te,S,F,W)}emplace(S,F,W,te){let fe=3*S;return this.float32[fe+0]=F,this.float32[fe+1]=W,this.float32[fe+2]=te,S}}Re.prototype.bytesPerElement=12,Di("StructArrayLayout3f12",Re);class Be extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer)}emplaceBack(S){let F=this.length;return this.resize(F+1),this.emplace(F,S)}emplace(S,F){return this.uint32[1*S+0]=F,S}}Be.prototype.bytesPerElement=4,Di("StructArrayLayout1ul4",Be);class tt extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(S,F,W,te,fe,pe,ze,Ke,ut){let Lt=this.length;return this.resize(Lt+1),this.emplace(Lt,S,F,W,te,fe,pe,ze,Ke,ut)}emplace(S,F,W,te,fe,pe,ze,Ke,ut,Lt){let Qt=10*S,fr=5*S;return this.int16[Qt+0]=F,this.int16[Qt+1]=W,this.int16[Qt+2]=te,this.int16[Qt+3]=fe,this.int16[Qt+4]=pe,this.int16[Qt+5]=ze,this.uint32[fr+3]=Ke,this.uint16[Qt+8]=ut,this.uint16[Qt+9]=Lt,S}}tt.prototype.bytesPerElement=20,Di("StructArrayLayout6i1ul2ui20",tt);class We extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(S,F,W,te,fe,pe){let ze=this.length;return this.resize(ze+1),this.emplace(ze,S,F,W,te,fe,pe)}emplace(S,F,W,te,fe,pe,ze){let Ke=6*S;return this.int16[Ke+0]=F,this.int16[Ke+1]=W,this.int16[Ke+2]=te,this.int16[Ke+3]=fe,this.int16[Ke+4]=pe,this.int16[Ke+5]=ze,S}}We.prototype.bytesPerElement=12,Di("StructArrayLayout2i2i2i12",We);class it extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(S,F,W,te,fe){let pe=this.length;return this.resize(pe+1),this.emplace(pe,S,F,W,te,fe)}emplace(S,F,W,te,fe,pe){let ze=4*S,Ke=8*S;return this.float32[ze+0]=F,this.float32[ze+1]=W,this.float32[ze+2]=te,this.int16[Ke+6]=fe,this.int16[Ke+7]=pe,S}}it.prototype.bytesPerElement=16,Di("StructArrayLayout2f1f2i16",it);class Dt extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(S,F,W,te,fe,pe){let ze=this.length;return this.resize(ze+1),this.emplace(ze,S,F,W,te,fe,pe)}emplace(S,F,W,te,fe,pe,ze){let Ke=16*S,ut=4*S,Lt=8*S;return this.uint8[Ke+0]=F,this.uint8[Ke+1]=W,this.float32[ut+1]=te,this.float32[ut+2]=fe,this.int16[Lt+6]=pe,this.int16[Lt+7]=ze,S}}Dt.prototype.bytesPerElement=16,Di("StructArrayLayout2ub2f2i16",Dt);class Ht extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(S,F,W){let te=this.length;return this.resize(te+1),this.emplace(te,S,F,W)}emplace(S,F,W,te){let fe=3*S;return this.uint16[fe+0]=F,this.uint16[fe+1]=W,this.uint16[fe+2]=te,S}}Ht.prototype.bytesPerElement=6,Di("StructArrayLayout3ui6",Ht);class rr extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(S,F,W,te,fe,pe,ze,Ke,ut,Lt,Qt,fr,mr,Lr,zr,ui,yi){let dn=this.length;return this.resize(dn+1),this.emplace(dn,S,F,W,te,fe,pe,ze,Ke,ut,Lt,Qt,fr,mr,Lr,zr,ui,yi)}emplace(S,F,W,te,fe,pe,ze,Ke,ut,Lt,Qt,fr,mr,Lr,zr,ui,yi,dn){let Fi=24*S,ln=12*S,An=48*S;return this.int16[Fi+0]=F,this.int16[Fi+1]=W,this.uint16[Fi+2]=te,this.uint16[Fi+3]=fe,this.uint32[ln+2]=pe,this.uint32[ln+3]=ze,this.uint32[ln+4]=Ke,this.uint16[Fi+10]=ut,this.uint16[Fi+11]=Lt,this.uint16[Fi+12]=Qt,this.float32[ln+7]=fr,this.float32[ln+8]=mr,this.uint8[An+36]=Lr,this.uint8[An+37]=zr,this.uint8[An+38]=ui,this.uint32[ln+10]=yi,this.int16[Fi+22]=dn,S}}rr.prototype.bytesPerElement=48,Di("StructArrayLayout2i2ui3ul3ui2f3ub1ul1i48",rr);class dr extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(S,F,W,te,fe,pe,ze,Ke,ut,Lt,Qt,fr,mr,Lr,zr,ui,yi,dn,Fi,ln,An,pa,ro,Vo,Xa,sa,Mo,fo){let lo=this.length;return this.resize(lo+1),this.emplace(lo,S,F,W,te,fe,pe,ze,Ke,ut,Lt,Qt,fr,mr,Lr,zr,ui,yi,dn,Fi,ln,An,pa,ro,Vo,Xa,sa,Mo,fo)}emplace(S,F,W,te,fe,pe,ze,Ke,ut,Lt,Qt,fr,mr,Lr,zr,ui,yi,dn,Fi,ln,An,pa,ro,Vo,Xa,sa,Mo,fo,lo){let Xn=32*S,Ro=16*S;return this.int16[Xn+0]=F,this.int16[Xn+1]=W,this.int16[Xn+2]=te,this.int16[Xn+3]=fe,this.int16[Xn+4]=pe,this.int16[Xn+5]=ze,this.int16[Xn+6]=Ke,this.int16[Xn+7]=ut,this.uint16[Xn+8]=Lt,this.uint16[Xn+9]=Qt,this.uint16[Xn+10]=fr,this.uint16[Xn+11]=mr,this.uint16[Xn+12]=Lr,this.uint16[Xn+13]=zr,this.uint16[Xn+14]=ui,this.uint16[Xn+15]=yi,this.uint16[Xn+16]=dn,this.uint16[Xn+17]=Fi,this.uint16[Xn+18]=ln,this.uint16[Xn+19]=An,this.uint16[Xn+20]=pa,this.uint16[Xn+21]=ro,this.uint16[Xn+22]=Vo,this.uint32[Ro+12]=Xa,this.float32[Ro+13]=sa,this.float32[Ro+14]=Mo,this.uint16[Xn+30]=fo,this.uint16[Xn+31]=lo,S}}dr.prototype.bytesPerElement=64,Di("StructArrayLayout8i15ui1ul2f2ui64",dr);class Sr extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(S){let F=this.length;return this.resize(F+1),this.emplace(F,S)}emplace(S,F){return this.float32[1*S+0]=F,S}}Sr.prototype.bytesPerElement=4,Di("StructArrayLayout1f4",Sr);class Or extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(S,F,W){let te=this.length;return this.resize(te+1),this.emplace(te,S,F,W)}emplace(S,F,W,te){let fe=3*S;return this.uint16[6*S+0]=F,this.float32[fe+1]=W,this.float32[fe+2]=te,S}}Or.prototype.bytesPerElement=12,Di("StructArrayLayout1ui2f12",Or);class jr extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(S,F,W){let te=this.length;return this.resize(te+1),this.emplace(te,S,F,W)}emplace(S,F,W,te){let fe=4*S;return this.uint32[2*S+0]=F,this.uint16[fe+2]=W,this.uint16[fe+3]=te,S}}jr.prototype.bytesPerElement=8,Di("StructArrayLayout1ul2ui8",jr);class ii extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(S,F){let W=this.length;return this.resize(W+1),this.emplace(W,S,F)}emplace(S,F,W){let te=2*S;return this.uint16[te+0]=F,this.uint16[te+1]=W,S}}ii.prototype.bytesPerElement=4,Di("StructArrayLayout2ui4",ii);class Li extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(S){let F=this.length;return this.resize(F+1),this.emplace(F,S)}emplace(S,F){return this.uint16[1*S+0]=F,S}}Li.prototype.bytesPerElement=2,Di("StructArrayLayout1ui2",Li);class un extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(S,F,W,te){let fe=this.length;return this.resize(fe+1),this.emplace(fe,S,F,W,te)}emplace(S,F,W,te,fe){let pe=4*S;return this.float32[pe+0]=F,this.float32[pe+1]=W,this.float32[pe+2]=te,this.float32[pe+3]=fe,S}}un.prototype.bytesPerElement=16,Di("StructArrayLayout4f16",un);class sn 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)}}sn.prototype.size=20;class In extends tt{get(S){return new sn(this,S)}}Di("CollisionBoxArray",In);class Kn extends ee{get anchorX(){return this._structArray.int16[this._pos2+0]}get anchorY(){return this._structArray.int16[this._pos2+1]}get glyphStartIndex(){return this._structArray.uint16[this._pos2+2]}get numGlyphs(){return this._structArray.uint16[this._pos2+3]}get vertexStartIndex(){return this._structArray.uint32[this._pos4+2]}get lineStartIndex(){return this._structArray.uint32[this._pos4+3]}get lineLength(){return this._structArray.uint32[this._pos4+4]}get segment(){return this._structArray.uint16[this._pos2+10]}get lowerSize(){return this._structArray.uint16[this._pos2+11]}get upperSize(){return this._structArray.uint16[this._pos2+12]}get lineOffsetX(){return this._structArray.float32[this._pos4+7]}get lineOffsetY(){return this._structArray.float32[this._pos4+8]}get writingMode(){return this._structArray.uint8[this._pos1+36]}get placedOrientation(){return this._structArray.uint8[this._pos1+37]}set placedOrientation(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]}}Kn.prototype.size=48;class Aa extends rr{get(S){return new Kn(this,S)}}Di("PlacedSymbolArray",Aa);class fa extends ee{get anchorX(){return this._structArray.int16[this._pos2+0]}get anchorY(){return this._structArray.int16[this._pos2+1]}get rightJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+2]}get centerJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+3]}get leftJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+4]}get verticalPlacedTextSymbolIndex(){return this._structArray.int16[this._pos2+5]}get placedIconSymbolIndex(){return this._structArray.int16[this._pos2+6]}get verticalPlacedIconSymbolIndex(){return this._structArray.int16[this._pos2+7]}get key(){return this._structArray.uint16[this._pos2+8]}get textBoxStartIndex(){return this._structArray.uint16[this._pos2+9]}get textBoxEndIndex(){return this._structArray.uint16[this._pos2+10]}get verticalTextBoxStartIndex(){return this._structArray.uint16[this._pos2+11]}get verticalTextBoxEndIndex(){return this._structArray.uint16[this._pos2+12]}get iconBoxStartIndex(){return this._structArray.uint16[this._pos2+13]}get iconBoxEndIndex(){return this._structArray.uint16[this._pos2+14]}get verticalIconBoxStartIndex(){return this._structArray.uint16[this._pos2+15]}get verticalIconBoxEndIndex(){return this._structArray.uint16[this._pos2+16]}get featureIndex(){return this._structArray.uint16[this._pos2+17]}get numHorizontalGlyphVertices(){return this._structArray.uint16[this._pos2+18]}get numVerticalGlyphVertices(){return this._structArray.uint16[this._pos2+19]}get numIconVertices(){return this._structArray.uint16[this._pos2+20]}get numVerticalIconVertices(){return this._structArray.uint16[this._pos2+21]}get useRuntimeCollisionCircles(){return this._structArray.uint16[this._pos2+22]}get crossTileID(){return this._structArray.uint32[this._pos4+12]}set crossTileID(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]}}fa.prototype.size=64;class $a extends dr{get(S){return new fa(this,S)}}Di("SymbolInstanceArray",$a);class ko extends Sr{getoffsetX(S){return this.float32[1*S+0]}}Di("GlyphOffsetArray",ko);class Qa extends Tt{getx(S){return this.int16[3*S+0]}gety(S){return this.int16[3*S+1]}gettileUnitDistanceFromAnchor(S){return this.int16[3*S+2]}}Di("SymbolLineVertexArray",Qa);class mo extends ee{get textAnchor(){return this._structArray.uint16[this._pos2+0]}get textOffset0(){return this._structArray.float32[this._pos4+1]}get textOffset1(){return this._structArray.float32[this._pos4+2]}}mo.prototype.size=12;class Bo extends Or{get(S){return new mo(this,S)}}Di("TextAnchorOffsetArray",Bo);class Is 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]}}Is.prototype.size=8;class As extends jr{get(S){return new Is(this,S)}}Di("FeatureIndexArray",As);class wo extends ot{}class To extends ot{}class dl extends ot{}class Nl extends Jt{}class Lu extends xr{}class ou extends Pr{}class $s extends ve{}class Ql extends be{}class dc extends Re{}class Tl extends Be{}class Al extends We{}class X extends Dt{}class se extends Ht{}class Te extends ii{}let Ne=qe([{name:"a_pos",components:2,type:"Int16"}],4),{members:He}=Ne;class Ye{constructor(S=[]){this.segments=S}prepareSegment(S,F,W,te){let fe=this.segments[this.segments.length-1];return S>Ye.MAX_VERTEX_ARRAY_LENGTH&&T(`Max vertices per segment is ${Ye.MAX_VERTEX_ARRAY_LENGTH}: bucket requested ${S}`),(!fe||fe.vertexLength+S>Ye.MAX_VERTEX_ARRAY_LENGTH||fe.sortKey!==te)&&(fe={vertexOffset:F.length,primitiveOffset:W.length,vertexLength:0,primitiveLength:0},te!==void 0&&(fe.sortKey=te),this.segments.push(fe)),fe}get(){return this.segments}destroy(){for(let S of this.segments)for(let F in S.vaos)S.vaos[F].destroy()}static simpleSegment(S,F,W,te){return new Ye([{vertexOffset:S,primitiveOffset:F,vertexLength:W,primitiveLength:te,vaos:{},sortKey:0}])}}function Ct(R,S){return 256*(R=E(Math.floor(R),0,255))+E(Math.floor(S),0,255)}Ye.MAX_VERTEX_ARRAY_LENGTH=Math.pow(2,16)-1,Di("SegmentVector",Ye);let nt=qe([{name:"a_pattern_from",components:4,type:"Uint16"},{name:"a_pattern_to",components:4,type:"Uint16"},{name:"a_pixel_ratio_from",components:1,type:"Uint16"},{name:"a_pixel_ratio_to",components:1,type:"Uint16"}]);var jt={exports:{}},gr={exports:{}};gr.exports=function(R,S){var F,W,te,fe,pe,ze,Ke,ut;for(W=R.length-(F=3&R.length),te=S,pe=3432918353,ze=461845907,ut=0;ut<W;)Ke=255&R.charCodeAt(ut)|(255&R.charCodeAt(++ut))<<8|(255&R.charCodeAt(++ut))<<16|(255&R.charCodeAt(++ut))<<24,++ut,te=27492+(65535&(fe=5*(65535&(te=(te^=Ke=(65535&(Ke=(Ke=(65535&Ke)*pe+(((Ke>>>16)*pe&65535)<<16)&4294967295)<<15|Ke>>>17))*ze+(((Ke>>>16)*ze&65535)<<16)&4294967295)<<13|te>>>19))+((5*(te>>>16)&65535)<<16)&4294967295))+((58964+(fe>>>16)&65535)<<16);switch(Ke=0,F){case 3:Ke^=(255&R.charCodeAt(ut+2))<<16;case 2:Ke^=(255&R.charCodeAt(ut+1))<<8;case 1:te^=Ke=(65535&(Ke=(Ke=(65535&(Ke^=255&R.charCodeAt(ut)))*pe+(((Ke>>>16)*pe&65535)<<16)&4294967295)<<15|Ke>>>17))*ze+(((Ke>>>16)*ze&65535)<<16)&4294967295}return te^=R.length,te=2246822507*(65535&(te^=te>>>16))+((2246822507*(te>>>16)&65535)<<16)&4294967295,te=3266489909*(65535&(te^=te>>>13))+((3266489909*(te>>>16)&65535)<<16)&4294967295,(te^=te>>>16)>>>0};var yr=gr.exports,Gr={exports:{}};Gr.exports=function(R,S){for(var F,W=R.length,te=S^W,fe=0;W>=4;)F=1540483477*(65535&(F=255&R.charCodeAt(fe)|(255&R.charCodeAt(++fe))<<8|(255&R.charCodeAt(++fe))<<16|(255&R.charCodeAt(++fe))<<24))+((1540483477*(F>>>16)&65535)<<16),te=1540483477*(65535&te)+((1540483477*(te>>>16)&65535)<<16)^(F=1540483477*(65535&(F^=F>>>24))+((1540483477*(F>>>16)&65535)<<16)),W-=4,++fe;switch(W){case 3:te^=(255&R.charCodeAt(fe+2))<<16;case 2:te^=(255&R.charCodeAt(fe+1))<<8;case 1:te=1540483477*(65535&(te^=255&R.charCodeAt(fe)))+((1540483477*(te>>>16)&65535)<<16)}return te=1540483477*(65535&(te^=te>>>13))+((1540483477*(te>>>16)&65535)<<16),(te^=te>>>15)>>>0};var qr=yr,_i=Gr.exports;jt.exports=qr,jt.exports.murmur3=qr,jt.exports.murmur2=_i;var bi=o(jt.exports);class Xr{constructor(){this.ids=[],this.positions=[],this.indexed=!1}add(S,F,W,te){this.ids.push(ni(S)),this.positions.push(F,W,te)}getPositions(S){if(!this.indexed)throw new Error("Trying to get index, but feature positions are not indexed");let F=ni(S),W=0,te=this.ids.length-1;for(;W<te;){let pe=W+te>>1;this.ids[pe]>=F?te=pe:W=pe+1}let fe=[];for(;this.ids[W]===F;)fe.push({index:this.positions[3*W],start:this.positions[3*W+1],end:this.positions[3*W+2]}),W++;return fe}static serialize(S,F){let W=new Float64Array(S.ids),te=new Uint32Array(S.positions);return gi(W,te,0,W.length-1),F&&F.push(W.buffer,te.buffer),{ids:W,positions:te}}static deserialize(S){let F=new Xr;return F.ids=S.ids,F.positions=S.positions,F.indexed=!0,F}}function ni(R){let S=+R;return!isNaN(S)&&S<=Number.MAX_SAFE_INTEGER?S:bi(String(R))}function gi(R,S,F,W){for(;F<W;){let te=R[F+W>>1],fe=F-1,pe=W+1;for(;;){do fe++;while(R[fe]<te);do pe--;while(R[pe]>te);if(fe>=pe)break;Pi(R,fe,pe),Pi(S,3*fe,3*pe),Pi(S,3*fe+1,3*pe+1),Pi(S,3*fe+2,3*pe+2)}pe-F<W-pe?(gi(R,S,F,pe),F=pe+1):(gi(R,S,pe+1,W),W=pe)}}function Pi(R,S,F){let W=R[S];R[S]=R[F],R[F]=W}Di("FeaturePositionMap",Xr);class Ai{constructor(S,F){this.gl=S.gl,this.location=F}}class ti extends Ai{constructor(S,F){super(S,F),this.current=0}set(S){this.current!==S&&(this.current=S,this.gl.uniform1f(this.location,S))}}class Rn extends Ai{constructor(S,F){super(S,F),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 Cn extends Ai{constructor(S,F){super(S,F),this.current=ar.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 Nn=new Float32Array(16);function ia(R){return[Ct(255*R.r,255*R.g),Ct(255*R.b,255*R.a)]}class Ea{constructor(S,F,W){this.value=S,this.uniformNames=F.map(te=>`u_${te}`),this.type=W}setUniform(S,F,W){S.set(W.constantOr(this.value))}getBinding(S,F,W){return this.type==="color"?new Cn(S,F):new ti(S,F)}}class Ia{constructor(S,F){this.uniformNames=F.map(W=>`u_${W}`),this.patternFrom=null,this.patternTo=null,this.pixelRatioFrom=1,this.pixelRatioTo=1}setConstantPatternPositions(S,F){this.pixelRatioFrom=F.pixelRatio,this.pixelRatioTo=S.pixelRatio,this.patternFrom=F.tlbr,this.patternTo=S.tlbr}setUniform(S,F,W,te){let fe=te==="u_pattern_to"?this.patternTo:te==="u_pattern_from"?this.patternFrom:te==="u_pixel_ratio_to"?this.pixelRatioTo:te==="u_pixel_ratio_from"?this.pixelRatioFrom:null;fe&&S.set(fe)}getBinding(S,F,W){return W.substr(0,9)==="u_pattern"?new Rn(S,F):new ti(S,F)}}class yo{constructor(S,F,W,te){this.expression=S,this.type=W,this.maxValue=0,this.paintVertexAttributes=F.map(fe=>({name:`a_${fe}`,type:"Float32",components:W==="color"?2:1,offset:0})),this.paintVertexArray=new te}populatePaintArray(S,F,W,te,fe){let pe=this.paintVertexArray.length,ze=this.expression.evaluate(new is(0),F,{},te,[],fe);this.paintVertexArray.resize(S),this._setPaintValue(pe,S,ze)}updatePaintArray(S,F,W,te){let fe=this.expression.evaluate({zoom:0},W,te);this._setPaintValue(S,F,fe)}_setPaintValue(S,F,W){if(this.type==="color"){let te=ia(W);for(let fe=S;fe<F;fe++)this.paintVertexArray.emplace(fe,te[0],te[1])}else{for(let te=S;te<F;te++)this.paintVertexArray.emplace(te,W);this.maxValue=Math.max(this.maxValue,Math.abs(W))}}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 Da{constructor(S,F,W,te,fe,pe){this.expression=S,this.uniformNames=F.map(ze=>`u_${ze}_t`),this.type=W,this.useIntegerZoom=te,this.zoom=fe,this.maxValue=0,this.paintVertexAttributes=F.map(ze=>({name:`a_${ze}`,type:"Float32",components:W==="color"?4:2,offset:0})),this.paintVertexArray=new pe}populatePaintArray(S,F,W,te,fe){let pe=this.expression.evaluate(new is(this.zoom),F,{},te,[],fe),ze=this.expression.evaluate(new is(this.zoom+1),F,{},te,[],fe),Ke=this.paintVertexArray.length;this.paintVertexArray.resize(S),this._setPaintValue(Ke,S,pe,ze)}updatePaintArray(S,F,W,te){let fe=this.expression.evaluate({zoom:this.zoom},W,te),pe=this.expression.evaluate({zoom:this.zoom+1},W,te);this._setPaintValue(S,F,fe,pe)}_setPaintValue(S,F,W,te){if(this.type==="color"){let fe=ia(W),pe=ia(te);for(let ze=S;ze<F;ze++)this.paintVertexArray.emplace(ze,fe[0],fe[1],pe[0],pe[1])}else{for(let fe=S;fe<F;fe++)this.paintVertexArray.emplace(fe,W,te);this.maxValue=Math.max(this.maxValue,Math.abs(W),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,F){let W=this.useIntegerZoom?Math.floor(F.zoom):F.zoom,te=E(this.expression.interpolationFactor(W,this.zoom,this.zoom+1),0,1);S.set(te)}getBinding(S,F,W){return new ti(S,F)}}class go{constructor(S,F,W,te,fe,pe){this.expression=S,this.type=F,this.useIntegerZoom=W,this.zoom=te,this.layerId=pe,this.zoomInPaintVertexArray=new fe,this.zoomOutPaintVertexArray=new fe}populatePaintArray(S,F,W){let te=this.zoomInPaintVertexArray.length;this.zoomInPaintVertexArray.resize(S),this.zoomOutPaintVertexArray.resize(S),this._setPaintValues(te,S,F.patterns&&F.patterns[this.layerId],W)}updatePaintArray(S,F,W,te,fe){this._setPaintValues(S,F,W.patterns&&W.patterns[this.layerId],fe)}_setPaintValues(S,F,W,te){if(!te||!W)return;let{min:fe,mid:pe,max:ze}=W,Ke=te[fe],ut=te[pe],Lt=te[ze];if(Ke&&ut&&Lt)for(let Qt=S;Qt<F;Qt++)this.zoomInPaintVertexArray.emplace(Qt,ut.tl[0],ut.tl[1],ut.br[0],ut.br[1],Ke.tl[0],Ke.tl[1],Ke.br[0],Ke.br[1],ut.pixelRatio,Ke.pixelRatio),this.zoomOutPaintVertexArray.emplace(Qt,ut.tl[0],ut.tl[1],ut.br[0],ut.br[1],Lt.tl[0],Lt.tl[1],Lt.br[0],Lt.br[1],ut.pixelRatio,Lt.pixelRatio)}upload(S){this.zoomInPaintVertexArray&&this.zoomInPaintVertexArray.arrayBuffer&&this.zoomOutPaintVertexArray&&this.zoomOutPaintVertexArray.arrayBuffer&&(this.zoomInPaintVertexBuffer=S.createVertexBuffer(this.zoomInPaintVertexArray,nt.members,this.expression.isStateDependent),this.zoomOutPaintVertexBuffer=S.createVertexBuffer(this.zoomOutPaintVertexArray,nt.members,this.expression.isStateDependent))}destroy(){this.zoomOutPaintVertexBuffer&&this.zoomOutPaintVertexBuffer.destroy(),this.zoomInPaintVertexBuffer&&this.zoomInPaintVertexBuffer.destroy()}}class Rs{constructor(S,F,W){this.binders={},this._buffers=[];let te=[];for(let fe in S.paint._values){if(!W(fe))continue;let pe=S.paint.get(fe);if(!(pe instanceof xu&&Bl(pe.property.specification)))continue;let ze=Zs(fe,S.type),Ke=pe.value,ut=pe.property.specification.type,Lt=pe.property.useIntegerZoom,Qt=pe.property.specification["property-type"],fr=Qt==="cross-faded"||Qt==="cross-faded-data-driven";if(Ke.kind==="constant")this.binders[fe]=fr?new Ia(Ke.value,ze):new Ea(Ke.value,ze,ut),te.push(`/u_${fe}`);else if(Ke.kind==="source"||fr){let mr=Gn(fe,ut,"source");this.binders[fe]=fr?new go(Ke,ut,Lt,F,mr,S.id):new yo(Ke,ze,ut,mr),te.push(`/a_${fe}`)}else{let mr=Gn(fe,ut,"composite");this.binders[fe]=new Da(Ke,ze,ut,Lt,F,mr),te.push(`/z_${fe}`)}}this.cacheKey=te.sort().join("")}getMaxValue(S){let F=this.binders[S];return F instanceof yo||F instanceof Da?F.maxValue:0}populatePaintArrays(S,F,W,te,fe){for(let pe in this.binders){let ze=this.binders[pe];(ze instanceof yo||ze instanceof Da||ze instanceof go)&&ze.populatePaintArray(S,F,W,te,fe)}}setConstantPatternPositions(S,F){for(let W in this.binders){let te=this.binders[W];te instanceof Ia&&te.setConstantPatternPositions(S,F)}}updatePaintArrays(S,F,W,te,fe){let pe=!1;for(let ze in S){let Ke=F.getPositions(ze);for(let ut of Ke){let Lt=W.feature(ut.index);for(let Qt in this.binders){let fr=this.binders[Qt];if((fr instanceof yo||fr instanceof Da||fr instanceof go)&&fr.expression.isStateDependent===!0){let mr=te.paint.get(Qt);fr.expression=mr.value,fr.updatePaintArray(ut.start,ut.end,Lt,S[ze],fe),pe=!0}}}}return pe}defines(){let S=[];for(let F in this.binders){let W=this.binders[F];(W instanceof Ea||W instanceof Ia)&&S.push(...W.uniformNames.map(te=>`#define HAS_UNIFORM_${te}`))}return S}getBinderAttributes(){let S=[];for(let F in this.binders){let W=this.binders[F];if(W instanceof yo||W instanceof Da)for(let te=0;te<W.paintVertexAttributes.length;te++)S.push(W.paintVertexAttributes[te].name);else if(W instanceof go)for(let te=0;te<nt.members.length;te++)S.push(nt.members[te].name)}return S}getBinderUniforms(){let S=[];for(let F in this.binders){let W=this.binders[F];if(W instanceof Ea||W instanceof Ia||W instanceof Da)for(let te of W.uniformNames)S.push(te)}return S}getPaintVertexBuffers(){return this._buffers}getUniforms(S,F){let W=[];for(let te in this.binders){let fe=this.binders[te];if(fe instanceof Ea||fe instanceof Ia||fe instanceof Da){for(let pe of fe.uniformNames)if(F[pe]){let ze=fe.getBinding(S,F[pe],pe);W.push({name:pe,property:te,binding:ze})}}}return W}setUniforms(S,F,W,te){for(let{name:fe,property:pe,binding:ze}of F)this.binders[pe].setUniform(ze,te,W.get(pe),fe)}updatePaintBuffers(S){this._buffers=[];for(let F in this.binders){let W=this.binders[F];if(S&&W instanceof go){let te=S.fromScale===2?W.zoomInPaintVertexBuffer:W.zoomOutPaintVertexBuffer;te&&this._buffers.push(te)}else(W instanceof yo||W instanceof Da)&&W.paintVertexBuffer&&this._buffers.push(W.paintVertexBuffer)}}upload(S){for(let F in this.binders){let W=this.binders[F];(W instanceof yo||W instanceof Da||W instanceof go)&&W.upload(S)}this.updatePaintBuffers()}destroy(){for(let S in this.binders){let F=this.binders[S];(F instanceof yo||F instanceof Da||F instanceof go)&&F.destroy()}}}class Es{constructor(S,F,W=()=>!0){this.programConfigurations={};for(let te of S)this.programConfigurations[te.id]=new Rs(te,F,W);this.needsUpload=!1,this._featureMap=new Xr,this._bufferOffset=0}populatePaintArrays(S,F,W,te,fe,pe){for(let ze in this.programConfigurations)this.programConfigurations[ze].populatePaintArrays(S,F,te,fe,pe);F.id!==void 0&&this._featureMap.add(F.id,W,this._bufferOffset,S),this._bufferOffset=S,this.needsUpload=!0}updatePaintArrays(S,F,W,te){for(let fe of W)this.needsUpload=this.programConfigurations[fe.id].updatePaintArrays(S,this._featureMap,F,fe,te)||this.needsUpload}get(S){return this.programConfigurations[S]}upload(S){if(this.needsUpload){for(let F in this.programConfigurations)this.programConfigurations[F].upload(S);this.needsUpload=!1}}destroy(){for(let S in this.programConfigurations)this.programConfigurations[S].destroy()}}function Zs(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 Gn(R,S,F){let W={color:{source:Pr,composite:un},number:{source:Sr,composite:Pr}},te=function(fe){return{"line-pattern":{source:$s,composite:$s},"fill-pattern":{source:$s,composite:$s},"fill-extrusion-pattern":{source:$s,composite:$s}}[fe]}(R);return te&&te[F]||W[S][F]}Di("ConstantBinder",Ea),Di("CrossFadedConstantBinder",Ia),Di("SourceExpressionBinder",yo),Di("CrossFadedCompositeBinder",go),Di("CompositeExpressionBinder",Da),Di("ProgramConfiguration",Rs,{omit:["_buffers"]}),Di("ProgramConfigurationSet",Es);let Ha=8192,Fo=Math.pow(2,14)-1,Uo=-Fo-1;function Qs(R){let S=Ha/R.extent,F=R.loadGeometry();for(let W=0;W<F.length;W++){let te=F[W];for(let fe=0;fe<te.length;fe++){let pe=te[fe],ze=Math.round(pe.x*S),Ke=Math.round(pe.y*S);pe.x=E(ze,Uo,Fo),pe.y=E(Ke,Uo,Fo),(ze<pe.x||ze>pe.x+1||Ke<pe.y||Ke>pe.y+1)&&T("Geometry exceeds allowed extent, reduce your vector tile buffer size")}}return F}function Sl(R,S){return{type:R.type,id:R.id,properties:R.properties,geometry:S?Qs(R):[]}}function bu(R,S,F,W,te){R.emplaceBack(2*S+(W+1)/2,2*F+(te+1)/2)}class vl{constructor(S){this.zoom=S.zoom,this.overscaling=S.overscaling,this.layers=S.layers,this.layerIds=this.layers.map(F=>F.id),this.index=S.index,this.hasPattern=!1,this.layoutVertexArray=new To,this.indexArray=new se,this.segments=new Ye,this.programConfigurations=new Es(S.layers,S.zoom),this.stateDependentLayerIds=this.layers.filter(F=>F.isStateDependent()).map(F=>F.id)}populate(S,F,W){let te=this.layers[0],fe=[],pe=null,ze=!1;te.type==="circle"&&(pe=te.layout.get("circle-sort-key"),ze=!pe.isConstant());for(let{feature:Ke,id:ut,index:Lt,sourceLayerIndex:Qt}of S){let fr=this.layers[0]._featureFilter.needGeometry,mr=Sl(Ke,fr);if(!this.layers[0]._featureFilter.filter(new is(this.zoom),mr,W))continue;let Lr=ze?pe.evaluate(mr,{},W):void 0,zr={id:ut,properties:Ke.properties,type:Ke.type,sourceLayerIndex:Qt,index:Lt,geometry:fr?mr.geometry:Qs(Ke),patterns:{},sortKey:Lr};fe.push(zr)}ze&&fe.sort((Ke,ut)=>Ke.sortKey-ut.sortKey);for(let Ke of fe){let{geometry:ut,index:Lt,sourceLayerIndex:Qt}=Ke,fr=S[Lt].feature;this.addFeature(Ke,ut,Lt,W),F.featureIndex.insert(fr,ut,Lt,Qt,this.index)}}update(S,F,W){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(S,F,this.stateDependentLayers,W)}isEmpty(){return this.layoutVertexArray.length===0}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(S){this.uploaded||(this.layoutVertexBuffer=S.createVertexBuffer(this.layoutVertexArray,He),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,F,W,te){for(let fe of F)for(let pe of fe){let ze=pe.x,Ke=pe.y;if(ze<0||ze>=Ha||Ke<0||Ke>=Ha)continue;let ut=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray,S.sortKey),Lt=ut.vertexLength;bu(this.layoutVertexArray,ze,Ke,-1,-1),bu(this.layoutVertexArray,ze,Ke,1,-1),bu(this.layoutVertexArray,ze,Ke,1,1),bu(this.layoutVertexArray,ze,Ke,-1,1),this.indexArray.emplaceBack(Lt,Lt+1,Lt+2),this.indexArray.emplaceBack(Lt,Lt+3,Lt+2),ut.vertexLength+=4,ut.primitiveLength+=2}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,S,W,{},te)}}function Sc(R,S){for(let F=0;F<R.length;F++)if(Ni(S,R[F]))return!0;for(let F=0;F<S.length;F++)if(Ni(R,S[F]))return!0;return!!Ir(R,S)}function Ee(R,S,F){return!!Ni(R,S)||!!Br(S,R,F)}function xt(R,S){if(R.length===1)return mi(S,R[0]);for(let F=0;F<S.length;F++){let W=S[F];for(let te=0;te<W.length;te++)if(Ni(R,W[te]))return!0}for(let F=0;F<R.length;F++)if(mi(S,R[F]))return!0;for(let F=0;F<S.length;F++)if(Ir(R,S[F]))return!0;return!1}function zt(R,S,F){if(R.length>1){if(Ir(R,S))return!0;for(let W=0;W<S.length;W++)if(Br(S[W],R,F))return!0}for(let W=0;W<R.length;W++)if(Br(R[W],S,F))return!0;return!1}function Ir(R,S){if(R.length===0||S.length===0)return!1;for(let F=0;F<R.length-1;F++){let W=R[F],te=R[F+1];for(let fe=0;fe<S.length-1;fe++)if(Hr(W,te,S[fe],S[fe+1]))return!0}return!1}function Hr(R,S,F,W){return z(R,F,W)!==z(S,F,W)&&z(R,S,F)!==z(R,S,W)}function Br(R,S,F){let W=F*F;if(S.length===1)return R.distSqr(S[0])<W;for(let te=1;te<S.length;te++)if(Vr(R,S[te-1],S[te])<W)return!0;return!1}function Vr(R,S,F){let W=S.distSqr(F);if(W===0)return R.distSqr(S);let te=((R.x-S.x)*(F.x-S.x)+(R.y-S.y)*(F.y-S.y))/W;return R.distSqr(te<0?S:te>1?F:F.sub(S)._mult(te)._add(S))}function mi(R,S){let F,W,te,fe=!1;for(let pe=0;pe<R.length;pe++){F=R[pe];for(let ze=0,Ke=F.length-1;ze<F.length;Ke=ze++)W=F[ze],te=F[Ke],W.y>S.y!=te.y>S.y&&S.x<(te.x-W.x)*(S.y-W.y)/(te.y-W.y)+W.x&&(fe=!fe)}return fe}function Ni(R,S){let F=!1;for(let W=0,te=R.length-1;W<R.length;te=W++){let fe=R[W],pe=R[te];fe.y>S.y!=pe.y>S.y&&S.x<(pe.x-fe.x)*(S.y-fe.y)/(pe.y-fe.y)+fe.x&&(F=!F)}return F}function Oi(R,S,F){let W=F[0],te=F[2];if(R.x<W.x&&S.x<W.x||R.x>te.x&&S.x>te.x||R.y<W.y&&S.y<W.y||R.y>te.y&&S.y>te.y)return!1;let fe=z(R,S,F[0]);return fe!==z(R,S,F[1])||fe!==z(R,S,F[2])||fe!==z(R,S,F[3])}function Mi(R,S,F){let W=S.paint.get(R).value;return W.kind==="constant"?W.value:F.programConfigurations.get(S.id).getMaxValue(R)}function Hn(R){return Math.sqrt(R[0]*R[0]+R[1]*R[1])}function Qi(R,S,F,W,te){if(!S[0]&&!S[1])return R;let fe=u.convert(S)._mult(te);F==="viewport"&&fe._rotate(-W);let pe=[];for(let ze=0;ze<R.length;ze++)pe.push(R[ze].sub(fe));return pe}let ji,si;Di("CircleBucket",vl,{omit:["layers"]});var Mr={get paint(){return si=si||new ue({"circle-radius":new oo(ce.paint_circle["circle-radius"]),"circle-color":new oo(ce.paint_circle["circle-color"]),"circle-blur":new oo(ce.paint_circle["circle-blur"]),"circle-opacity":new oo(ce.paint_circle["circle-opacity"]),"circle-translate":new Ua(ce.paint_circle["circle-translate"]),"circle-translate-anchor":new Ua(ce.paint_circle["circle-translate-anchor"]),"circle-pitch-scale":new Ua(ce.paint_circle["circle-pitch-scale"]),"circle-pitch-alignment":new Ua(ce.paint_circle["circle-pitch-alignment"]),"circle-stroke-width":new oo(ce.paint_circle["circle-stroke-width"]),"circle-stroke-color":new oo(ce.paint_circle["circle-stroke-color"]),"circle-stroke-opacity":new oo(ce.paint_circle["circle-stroke-opacity"])})},get layout(){return ji=ji||new ue({"circle-sort-key":new oo(ce.layout_circle["circle-sort-key"])})}},Yr=1e-6,xi=typeof Float32Array!="undefined"?Float32Array:Array;function Ii(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 ci(R,S,F){var W=S[0],te=S[1],fe=S[2],pe=S[3],ze=S[4],Ke=S[5],ut=S[6],Lt=S[7],Qt=S[8],fr=S[9],mr=S[10],Lr=S[11],zr=S[12],ui=S[13],yi=S[14],dn=S[15],Fi=F[0],ln=F[1],An=F[2],pa=F[3];return R[0]=Fi*W+ln*ze+An*Qt+pa*zr,R[1]=Fi*te+ln*Ke+An*fr+pa*ui,R[2]=Fi*fe+ln*ut+An*mr+pa*yi,R[3]=Fi*pe+ln*Lt+An*Lr+pa*dn,R[4]=(Fi=F[4])*W+(ln=F[5])*ze+(An=F[6])*Qt+(pa=F[7])*zr,R[5]=Fi*te+ln*Ke+An*fr+pa*ui,R[6]=Fi*fe+ln*ut+An*mr+pa*yi,R[7]=Fi*pe+ln*Lt+An*Lr+pa*dn,R[8]=(Fi=F[8])*W+(ln=F[9])*ze+(An=F[10])*Qt+(pa=F[11])*zr,R[9]=Fi*te+ln*Ke+An*fr+pa*ui,R[10]=Fi*fe+ln*ut+An*mr+pa*yi,R[11]=Fi*pe+ln*Lt+An*Lr+pa*dn,R[12]=(Fi=F[12])*W+(ln=F[13])*ze+(An=F[14])*Qt+(pa=F[15])*zr,R[13]=Fi*te+ln*Ke+An*fr+pa*ui,R[14]=Fi*fe+ln*ut+An*mr+pa*yi,R[15]=Fi*pe+ln*Lt+An*Lr+pa*dn,R}Math.hypot||(Math.hypot=function(){for(var R=0,S=arguments.length;S--;)R+=arguments[S]*arguments[S];return Math.sqrt(R)});var nn,Xi=ci;function qn(R,S,F){var W=S[0],te=S[1],fe=S[2],pe=S[3];return R[0]=F[0]*W+F[4]*te+F[8]*fe+F[12]*pe,R[1]=F[1]*W+F[5]*te+F[9]*fe+F[13]*pe,R[2]=F[2]*W+F[6]*te+F[10]*fe+F[14]*pe,R[3]=F[3]*W+F[7]*te+F[11]*fe+F[15]*pe,R}nn=new xi(4),xi!=Float32Array&&(nn[0]=0,nn[1]=0,nn[2]=0,nn[3]=0);class vi extends B{constructor(S){super(S,Mr)}createBucket(S){return new vl(S)}queryRadius(S){let F=S;return Mi("circle-radius",this,F)+Mi("circle-stroke-width",this,F)+Hn(this.paint.get("circle-translate"))}queryIntersectsFeature(S,F,W,te,fe,pe,ze,Ke){let ut=Qi(S,this.paint.get("circle-translate"),this.paint.get("circle-translate-anchor"),pe.angle,ze),Lt=this.paint.get("circle-radius").evaluate(F,W)+this.paint.get("circle-stroke-width").evaluate(F,W),Qt=this.paint.get("circle-pitch-alignment")==="map",fr=Qt?ut:function(Lr,zr){return Lr.map(ui=>li(ui,zr))}(ut,Ke),mr=Qt?Lt*ze:Lt;for(let Lr of te)for(let zr of Lr){let ui=Qt?zr:li(zr,Ke),yi=mr,dn=qn([],[zr.x,zr.y,0,1],Ke);if(this.paint.get("circle-pitch-scale")==="viewport"&&this.paint.get("circle-pitch-alignment")==="map"?yi*=dn[3]/pe.cameraToCenterDistance:this.paint.get("circle-pitch-scale")==="map"&&this.paint.get("circle-pitch-alignment")==="viewport"&&(yi*=pe.cameraToCenterDistance/dn[3]),Ee(fr,ui,yi))return!0}return!1}}function li(R,S){let F=qn([],[R.x,R.y,0,1],S);return new u(F[0]/F[3],F[1]/F[3])}class mn extends vl{}let Ki;Di("HeatmapBucket",mn,{omit:["layers"]});var Ui={get paint(){return Ki=Ki||new ue({"heatmap-radius":new oo(ce.paint_heatmap["heatmap-radius"]),"heatmap-weight":new oo(ce.paint_heatmap["heatmap-weight"]),"heatmap-intensity":new Ua(ce.paint_heatmap["heatmap-intensity"]),"heatmap-color":new Ku(ce.paint_heatmap["heatmap-color"]),"heatmap-opacity":new Ua(ce.paint_heatmap["heatmap-opacity"])})}};function Bi(R,{width:S,height:F},W,te){if(te){if(te instanceof Uint8ClampedArray)te=new Uint8Array(te.buffer);else if(te.length!==S*F*W)throw new RangeError(`mismatched image size. expected: ${te.length} but got: ${S*F*W}`)}else te=new Uint8Array(S*F*W);return R.width=S,R.height=F,R.data=te,R}function vn(R,{width:S,height:F},W){if(S===R.width&&F===R.height)return;let te=Bi({},{width:S,height:F},W);Un(R,te,{x:0,y:0},{x:0,y:0},{width:Math.min(R.width,S),height:Math.min(R.height,F)},W),R.width=S,R.height=F,R.data=te.data}function Un(R,S,F,W,te,fe){if(te.width===0||te.height===0)return S;if(te.width>R.width||te.height>R.height||F.x>R.width-te.width||F.y>R.height-te.height)throw new RangeError("out of range source coordinates for image copy");if(te.width>S.width||te.height>S.height||W.x>S.width-te.width||W.y>S.height-te.height)throw new RangeError("out of range destination coordinates for image copy");let pe=R.data,ze=S.data;if(pe===ze)throw new Error("srcData equals dstData, so image is already copied");for(let Ke=0;Ke<te.height;Ke++){let ut=((F.y+Ke)*R.width+F.x)*fe,Lt=((W.y+Ke)*S.width+W.x)*fe;for(let Qt=0;Qt<te.width*fe;Qt++)ze[Lt+Qt]=pe[ut+Qt]}return S}class na{constructor(S,F){Bi(this,S,1,F)}resize(S){vn(this,S,1)}clone(){return new na({width:this.width,height:this.height},new Uint8Array(this.data))}static copy(S,F,W,te,fe){Un(S,F,W,te,fe,1)}}class Yi{constructor(S,F){Bi(this,S,4,F)}resize(S){vn(this,S,4)}replace(S,F){F?this.data.set(S):this.data=S instanceof Uint8ClampedArray?new Uint8Array(S.buffer):S}clone(){return new Yi({width:this.width,height:this.height},new Uint8Array(this.data))}static copy(S,F,W,te,fe){Un(S,F,W,te,fe,4)}}function Ln(R){let S={},F=R.resolution||256,W=R.clips?R.clips.length:1,te=R.image||new Yi({width:F,height:W});if(Math.log(F)/Math.LN2%1!=0)throw new Error(`width is not a power of 2 - ${F}`);let fe=(pe,ze,Ke)=>{S[R.evaluationKey]=Ke;let ut=R.expression.evaluate(S);te.data[pe+ze+0]=Math.floor(255*ut.r/ut.a),te.data[pe+ze+1]=Math.floor(255*ut.g/ut.a),te.data[pe+ze+2]=Math.floor(255*ut.b/ut.a),te.data[pe+ze+3]=Math.floor(255*ut.a)};if(R.clips)for(let pe=0,ze=0;pe<W;++pe,ze+=4*F)for(let Ke=0,ut=0;Ke<F;Ke++,ut+=4){let Lt=Ke/(F-1),{start:Qt,end:fr}=R.clips[pe];fe(ze,ut,Qt*(1-Lt)+fr*Lt)}else for(let pe=0,ze=0;pe<F;pe++,ze+=4)fe(0,ze,pe/(F-1));return te}Di("AlphaImage",na),Di("RGBAImage",Yi);let ra="big-fb";class oa extends B{createBucket(S){return new mn(S)}constructor(S){super(S,Ui),this.heatmapFbos=new Map,this._updateColorRamp()}_handleSpecialPaintPropertyUpdate(S){S==="heatmap-color"&&this._updateColorRamp()}_updateColorRamp(){this.colorRamp=Ln({expression:this._transitionablePaint._values["heatmap-color"].value.expression,evaluationKey:"heatmapDensity",image:this.colorRamp}),this.colorRampTexture=null}resize(){this.heatmapFbos.has(ra)&&this.heatmapFbos.delete(ra)}queryRadius(){return 0}queryIntersectsFeature(){return!1}hasOffscreenPass(){return this.paint.get("heatmap-opacity")!==0&&this.visibility!=="none"}}let wa;var ns={get paint(){return wa=wa||new ue({"hillshade-illumination-direction":new Ua(ce.paint_hillshade["hillshade-illumination-direction"]),"hillshade-illumination-anchor":new Ua(ce.paint_hillshade["hillshade-illumination-anchor"]),"hillshade-exaggeration":new Ua(ce.paint_hillshade["hillshade-exaggeration"]),"hillshade-shadow-color":new Ua(ce.paint_hillshade["hillshade-shadow-color"]),"hillshade-highlight-color":new Ua(ce.paint_hillshade["hillshade-highlight-color"]),"hillshade-accent-color":new Ua(ce.paint_hillshade["hillshade-accent-color"])})}};class Ys extends B{constructor(S){super(S,ns)}hasOffscreenPass(){return this.paint.get("hillshade-exaggeration")!==0&&this.visibility!=="none"}}let Va=qe([{name:"a_pos",components:2,type:"Int16"}],4),{members:Ml}=Va;function zo(R,S,F=2){let W=S&&S.length,te=W?S[0]*F:R.length,fe=el(R,0,te,F,!0),pe=[];if(!fe||fe.next===fe.prev)return pe;let ze,Ke,ut;if(W&&(fe=function(Lt,Qt,fr,mr){let Lr=[];for(let zr=0,ui=Qt.length;zr<ui;zr++){let yi=el(Lt,Qt[zr]*mr,zr<ui-1?Qt[zr+1]*mr:Lt.length,mr,!1);yi===yi.next&&(yi.steiner=!0),Lr.push(J(yi))}Lr.sort(sl);for(let zr=0;zr<Lr.length;zr++)fr=io(Lr[zr],fr);return fr}(R,S,fe,F)),R.length>80*F){ze=1/0,Ke=1/0;let Lt=-1/0,Qt=-1/0;for(let fr=F;fr<te;fr+=F){let mr=R[fr],Lr=R[fr+1];mr<ze&&(ze=mr),Lr<Ke&&(Ke=Lr),mr>Lt&&(Lt=mr),Lr>Qt&&(Qt=Lr)}ut=Math.max(Lt-ze,Qt-Ke),ut=ut!==0?32767/ut:0}return Ul(fe,pe,F,ze,Ke,ut,0),pe}function el(R,S,F,W,te){let fe;if(te===function(pe,ze,Ke,ut){let Lt=0;for(let Qt=ze,fr=Ke-ut;Qt<Ke;Qt+=ut)Lt+=(pe[fr]-pe[Qt])*(pe[Qt+1]+pe[fr+1]),fr=Qt;return Lt}(R,S,F,W)>0)for(let pe=S;pe<F;pe+=W)fe=qt(pe/W|0,R[pe],R[pe+1],fe);else for(let pe=F-W;pe>=S;pe-=W)fe=qt(pe/W|0,R[pe],R[pe+1],fe);return fe&&ne(fe,fe.next)&&(Ve(fe),fe=fe.next),fe}function ol(R,S){if(!R)return R;S||(S=R);let F,W=R;do if(F=!1,W.steiner||!ne(W,W.next)&&de(W.prev,W,W.next)!==0)W=W.next;else{if(Ve(W),W=S=W.prev,W===W.next)break;F=!0}while(F||W!==S);return S}function Ul(R,S,F,W,te,fe,pe){if(!R)return;!pe&&fe&&function(Ke,ut,Lt,Qt){let fr=Ke;do fr.z===0&&(fr.z=D(fr.x,fr.y,ut,Lt,Qt)),fr.prevZ=fr.prev,fr.nextZ=fr.next,fr=fr.next;while(fr!==Ke);fr.prevZ.nextZ=null,fr.prevZ=null,function(mr){let Lr,zr=1;do{let ui,yi=mr;mr=null;let dn=null;for(Lr=0;yi;){Lr++;let Fi=yi,ln=0;for(let pa=0;pa<zr&&(ln++,Fi=Fi.nextZ,Fi);pa++);let An=zr;for(;ln>0||An>0&&Fi;)ln!==0&&(An===0||!Fi||yi.z<=Fi.z)?(ui=yi,yi=yi.nextZ,ln--):(ui=Fi,Fi=Fi.nextZ,An--),dn?dn.nextZ=ui:mr=ui,ui.prevZ=dn,dn=ui;yi=Fi}dn.nextZ=null,zr*=2}while(Lr>1)}(fr)}(R,W,te,fe);let ze=R;for(;R.prev!==R.next;){let Ke=R.prev,ut=R.next;if(fe?Gs(R,W,te,fe):ls(R))S.push(Ke.i,R.i,ut.i),Ve(R),R=ut.next,ze=ut.next;else if((R=ut)===ze){pe?pe===1?Ul(R=Ks(ol(R),S),S,F,W,te,fe,2):pe===2&&Ta(R,S,F,W,te,fe):Ul(ol(R),S,F,W,te,fe,1);break}}}function ls(R){let S=R.prev,F=R,W=R.next;if(de(S,F,W)>=0)return!1;let te=S.x,fe=F.x,pe=W.x,ze=S.y,Ke=F.y,ut=W.y,Lt=te<fe?te<pe?te:pe:fe<pe?fe:pe,Qt=ze<Ke?ze<ut?ze:ut:Ke<ut?Ke:ut,fr=te>fe?te>pe?te:pe:fe>pe?fe:pe,mr=ze>Ke?ze>ut?ze:ut:Ke>ut?Ke:ut,Lr=W.next;for(;Lr!==S;){if(Lr.x>=Lt&&Lr.x<=fr&&Lr.y>=Qt&&Lr.y<=mr&&q(te,ze,fe,Ke,pe,ut,Lr.x,Lr.y)&&de(Lr.prev,Lr,Lr.next)>=0)return!1;Lr=Lr.next}return!0}function Gs(R,S,F,W){let te=R.prev,fe=R,pe=R.next;if(de(te,fe,pe)>=0)return!1;let ze=te.x,Ke=fe.x,ut=pe.x,Lt=te.y,Qt=fe.y,fr=pe.y,mr=ze<Ke?ze<ut?ze:ut:Ke<ut?Ke:ut,Lr=Lt<Qt?Lt<fr?Lt:fr:Qt<fr?Qt:fr,zr=ze>Ke?ze>ut?ze:ut:Ke>ut?Ke:ut,ui=Lt>Qt?Lt>fr?Lt:fr:Qt>fr?Qt:fr,yi=D(mr,Lr,S,F,W),dn=D(zr,ui,S,F,W),Fi=R.prevZ,ln=R.nextZ;for(;Fi&&Fi.z>=yi&&ln&&ln.z<=dn;){if(Fi.x>=mr&&Fi.x<=zr&&Fi.y>=Lr&&Fi.y<=ui&&Fi!==te&&Fi!==pe&&q(ze,Lt,Ke,Qt,ut,fr,Fi.x,Fi.y)&&de(Fi.prev,Fi,Fi.next)>=0||(Fi=Fi.prevZ,ln.x>=mr&&ln.x<=zr&&ln.y>=Lr&&ln.y<=ui&&ln!==te&&ln!==pe&&q(ze,Lt,Ke,Qt,ut,fr,ln.x,ln.y)&&de(ln.prev,ln,ln.next)>=0))return!1;ln=ln.nextZ}for(;Fi&&Fi.z>=yi;){if(Fi.x>=mr&&Fi.x<=zr&&Fi.y>=Lr&&Fi.y<=ui&&Fi!==te&&Fi!==pe&&q(ze,Lt,Ke,Qt,ut,fr,Fi.x,Fi.y)&&de(Fi.prev,Fi,Fi.next)>=0)return!1;Fi=Fi.prevZ}for(;ln&&ln.z<=dn;){if(ln.x>=mr&&ln.x<=zr&&ln.y>=Lr&&ln.y<=ui&&ln!==te&&ln!==pe&&q(ze,Lt,Ke,Qt,ut,fr,ln.x,ln.y)&&de(ln.prev,ln,ln.next)>=0)return!1;ln=ln.nextZ}return!0}function Ks(R,S){let F=R;do{let W=F.prev,te=F.next.next;!ne(W,te)&&we(W,F,F.next,te)&&Zt(W,te)&&Zt(te,W)&&(S.push(W.i,F.i,te.i),Ve(F),Ve(F.next),F=R=te),F=F.next}while(F!==R);return ol(F)}function Ta(R,S,F,W,te,fe){let pe=R;do{let ze=pe.next.next;for(;ze!==pe.prev;){if(pe.i!==ze.i&&K(pe,ze)){let Ke=hr(pe,ze);return pe=ol(pe,pe.next),Ke=ol(Ke,Ke.next),Ul(pe,S,F,W,te,fe,0),void Ul(Ke,S,F,W,te,fe,0)}ze=ze.next}pe=pe.next}while(pe!==R)}function sl(R,S){return R.x-S.x}function io(R,S){let F=function(te,fe){let pe=fe,ze=te.x,Ke=te.y,ut,Lt=-1/0;do{if(Ke<=pe.y&&Ke>=pe.next.y&&pe.next.y!==pe.y){let zr=pe.x+(Ke-pe.y)*(pe.next.x-pe.x)/(pe.next.y-pe.y);if(zr<=ze&&zr>Lt&&(Lt=zr,ut=pe.x<pe.next.x?pe:pe.next,zr===ze))return ut}pe=pe.next}while(pe!==fe);if(!ut)return null;let Qt=ut,fr=ut.x,mr=ut.y,Lr=1/0;pe=ut;do{if(ze>=pe.x&&pe.x>=fr&&ze!==pe.x&&q(Ke<mr?ze:Lt,Ke,fr,mr,Ke<mr?Lt:ze,Ke,pe.x,pe.y)){let zr=Math.abs(Ke-pe.y)/(ze-pe.x);Zt(pe,te)&&(zr<Lr||zr===Lr&&(pe.x>ut.x||pe.x===ut.x&&Y(ut,pe)))&&(ut=pe,Lr=zr)}pe=pe.next}while(pe!==Qt);return ut}(R,S);if(!F)return S;let W=hr(F,R);return ol(W,W.next),ol(F,F.next)}function Y(R,S){return de(R.prev,R,S.prev)<0&&de(S.next,R,R.next)<0}function D(R,S,F,W,te){return(R=1431655765&((R=858993459&((R=252645135&((R=16711935&((R=(R-F)*te|0)|R<<8))|R<<4))|R<<2))|R<<1))|(S=1431655765&((S=858993459&((S=252645135&((S=16711935&((S=(S-W)*te|0)|S<<8))|S<<4))|S<<2))|S<<1))<<1}function J(R){let S=R,F=R;do(S.x<F.x||S.x===F.x&&S.y<F.y)&&(F=S),S=S.next;while(S!==R);return F}function q(R,S,F,W,te,fe,pe,ze){return(te-pe)*(S-ze)>=(R-pe)*(fe-ze)&&(R-pe)*(W-ze)>=(F-pe)*(S-ze)&&(F-pe)*(fe-ze)>=(te-pe)*(W-ze)}function K(R,S){return R.next.i!==S.i&&R.prev.i!==S.i&&!function(F,W){let te=F;do{if(te.i!==F.i&&te.next.i!==F.i&&te.i!==W.i&&te.next.i!==W.i&&we(te,te.next,F,W))return!0;te=te.next}while(te!==F);return!1}(R,S)&&(Zt(R,S)&&Zt(S,R)&&function(F,W){let te=F,fe=!1,pe=(F.x+W.x)/2,ze=(F.y+W.y)/2;do te.y>ze!=te.next.y>ze&&te.next.y!==te.y&&pe<(te.next.x-te.x)*(ze-te.y)/(te.next.y-te.y)+te.x&&(fe=!fe),te=te.next;while(te!==F);return fe}(R,S)&&(de(R.prev,R,S.prev)||de(R,S.prev,S))||ne(R,S)&&de(R.prev,R,R.next)>0&&de(S.prev,S,S.next)>0)}function de(R,S,F){return(S.y-R.y)*(F.x-S.x)-(S.x-R.x)*(F.y-S.y)}function ne(R,S){return R.x===S.x&&R.y===S.y}function we(R,S,F,W){let te=ft(de(R,S,F)),fe=ft(de(R,S,W)),pe=ft(de(F,W,R)),ze=ft(de(F,W,S));return te!==fe&&pe!==ze||!(te!==0||!Ue(R,F,S))||!(fe!==0||!Ue(R,W,S))||!(pe!==0||!Ue(F,R,W))||!(ze!==0||!Ue(F,S,W))}function Ue(R,S,F){return S.x<=Math.max(R.x,F.x)&&S.x>=Math.min(R.x,F.x)&&S.y<=Math.max(R.y,F.y)&&S.y>=Math.min(R.y,F.y)}function ft(R){return R>0?1:R<0?-1:0}function Zt(R,S){return de(R.prev,R,R.next)<0?de(R,S,R.next)>=0&&de(R,R.prev,S)>=0:de(R,S,R.prev)<0||de(R,R.next,S)<0}function hr(R,S){let F=et(R.i,R.x,R.y),W=et(S.i,S.x,S.y),te=R.next,fe=S.prev;return R.next=S,S.prev=R,F.next=te,te.prev=F,W.next=F,F.prev=W,fe.next=W,W.prev=fe,W}function qt(R,S,F,W){let te=et(R,S,F);return W?(te.next=W.next,te.prev=W,W.next.prev=te,W.next=te):(te.prev=te,te.next=te),te}function Ve(R){R.next.prev=R.prev,R.prev.next=R.next,R.prevZ&&(R.prevZ.nextZ=R.nextZ),R.nextZ&&(R.nextZ.prevZ=R.prevZ)}function et(R,S,F){return{i:R,x:S,y:F,prev:null,next:null,z:0,prevZ:null,nextZ:null,steiner:!1}}function at(R,S,F){let W=F.patternDependencies,te=!1;for(let fe of S){let pe=fe.paint.get(`${R}-pattern`);pe.isConstant()||(te=!0);let ze=pe.constantOr(null);ze&&(te=!0,W[ze.to]=!0,W[ze.from]=!0)}return te}function kt(R,S,F,W,te){let fe=te.patternDependencies;for(let pe of S){let ze=pe.paint.get(`${R}-pattern`).value;if(ze.kind!=="constant"){let Ke=ze.evaluate({zoom:W-1},F,{},te.availableImages),ut=ze.evaluate({zoom:W},F,{},te.availableImages),Lt=ze.evaluate({zoom:W+1},F,{},te.availableImages);Ke=Ke&&Ke.name?Ke.name:Ke,ut=ut&&ut.name?ut.name:ut,Lt=Lt&&Lt.name?Lt.name:Lt,fe[Ke]=!0,fe[ut]=!0,fe[Lt]=!0,F.patterns[pe.id]={min:Ke,mid:ut,max:Lt}}}return F}class Ot{constructor(S){this.zoom=S.zoom,this.overscaling=S.overscaling,this.layers=S.layers,this.layerIds=this.layers.map(F=>F.id),this.index=S.index,this.hasPattern=!1,this.patternFeatures=[],this.layoutVertexArray=new dl,this.indexArray=new se,this.indexArray2=new Te,this.programConfigurations=new Es(S.layers,S.zoom),this.segments=new Ye,this.segments2=new Ye,this.stateDependentLayerIds=this.layers.filter(F=>F.isStateDependent()).map(F=>F.id)}populate(S,F,W){this.hasPattern=at("fill",this.layers,F);let te=this.layers[0].layout.get("fill-sort-key"),fe=!te.isConstant(),pe=[];for(let{feature:ze,id:Ke,index:ut,sourceLayerIndex:Lt}of S){let Qt=this.layers[0]._featureFilter.needGeometry,fr=Sl(ze,Qt);if(!this.layers[0]._featureFilter.filter(new is(this.zoom),fr,W))continue;let mr=fe?te.evaluate(fr,{},W,F.availableImages):void 0,Lr={id:Ke,properties:ze.properties,type:ze.type,sourceLayerIndex:Lt,index:ut,geometry:Qt?fr.geometry:Qs(ze),patterns:{},sortKey:mr};pe.push(Lr)}fe&&pe.sort((ze,Ke)=>ze.sortKey-Ke.sortKey);for(let ze of pe){let{geometry:Ke,index:ut,sourceLayerIndex:Lt}=ze;if(this.hasPattern){let Qt=kt("fill",this.layers,ze,this.zoom,F);this.patternFeatures.push(Qt)}else this.addFeature(ze,Ke,ut,W,{});F.featureIndex.insert(S[ut].feature,Ke,ut,Lt,this.index)}}update(S,F,W){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(S,F,this.stateDependentLayers,W)}addFeatures(S,F,W){for(let te of this.patternFeatures)this.addFeature(te,te.geometry,te.index,F,W)}isEmpty(){return this.layoutVertexArray.length===0}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(S){this.uploaded||(this.layoutVertexBuffer=S.createVertexBuffer(this.layoutVertexArray,Ml),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,F,W,te,fe){for(let pe of Cf(F,500)){let ze=0;for(let mr of pe)ze+=mr.length;let Ke=this.segments.prepareSegment(ze,this.layoutVertexArray,this.indexArray),ut=Ke.vertexLength,Lt=[],Qt=[];for(let mr of pe){if(mr.length===0)continue;mr!==pe[0]&&Qt.push(Lt.length/2);let Lr=this.segments2.prepareSegment(mr.length,this.layoutVertexArray,this.indexArray2),zr=Lr.vertexLength;this.layoutVertexArray.emplaceBack(mr[0].x,mr[0].y),this.indexArray2.emplaceBack(zr+mr.length-1,zr),Lt.push(mr[0].x),Lt.push(mr[0].y);for(let ui=1;ui<mr.length;ui++)this.layoutVertexArray.emplaceBack(mr[ui].x,mr[ui].y),this.indexArray2.emplaceBack(zr+ui-1,zr+ui),Lt.push(mr[ui].x),Lt.push(mr[ui].y);Lr.vertexLength+=mr.length,Lr.primitiveLength+=mr.length}let fr=zo(Lt,Qt);for(let mr=0;mr<fr.length;mr+=3)this.indexArray.emplaceBack(ut+fr[mr],ut+fr[mr+1],ut+fr[mr+2]);Ke.vertexLength+=ze,Ke.primitiveLength+=fr.length/3}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,S,W,fe,te)}}let It,Bt;Di("FillBucket",Ot,{omit:["layers","patternFeatures"]});var Rt={get paint(){return Bt=Bt||new ue({"fill-antialias":new Ua(ce.paint_fill["fill-antialias"]),"fill-opacity":new oo(ce.paint_fill["fill-opacity"]),"fill-color":new oo(ce.paint_fill["fill-color"]),"fill-outline-color":new oo(ce.paint_fill["fill-outline-color"]),"fill-translate":new Ua(ce.paint_fill["fill-translate"]),"fill-translate-anchor":new Ua(ce.paint_fill["fill-translate-anchor"]),"fill-pattern":new Vc(ce.paint_fill["fill-pattern"])})},get layout(){return It=It||new ue({"fill-sort-key":new oo(ce.layout_fill["fill-sort-key"])})}};class mt extends B{constructor(S){super(S,Rt)}recalculate(S,F){super.recalculate(S,F);let W=this.paint._values["fill-outline-color"];W.value.kind==="constant"&&W.value.value===void 0&&(this.paint._values["fill-outline-color"]=this.paint._values["fill-color"])}createBucket(S){return new Ot(S)}queryRadius(){return Hn(this.paint.get("fill-translate"))}queryIntersectsFeature(S,F,W,te,fe,pe,ze){return xt(Qi(S,this.paint.get("fill-translate"),this.paint.get("fill-translate-anchor"),pe.angle,ze),te)}isTileClipped(){return!0}}let Pt=qe([{name:"a_pos",components:2,type:"Int16"},{name:"a_normal_ed",components:4,type:"Int16"}],4),ht=qe([{name:"a_centroid",components:2,type:"Int16"}],4),{members:cr}=Pt;var br={},Nr=s,Ri=hi;function hi(R,S,F,W,te){this.properties={},this.extent=F,this.type=0,this._pbf=R,this._geometry=-1,this._keys=W,this._values=te,R.readFields(wi,this,S)}function wi(R,S,F){R==1?S.id=F.readVarint():R==2?function(W,te){for(var fe=W.readVarint()+W.pos;W.pos<fe;){var pe=te._keys[W.readVarint()],ze=te._values[W.readVarint()];te.properties[pe]=ze}}(F,S):R==3?S.type=F.readVarint():R==4&&(S._geometry=F.pos)}function gn(R){for(var S,F,W=0,te=0,fe=R.length,pe=fe-1;te<fe;pe=te++)W+=((F=R[pe]).x-(S=R[te]).x)*(S.y+F.y);return W}hi.types=["Unknown","Point","LineString","Polygon"],hi.prototype.loadGeometry=function(){var R=this._pbf;R.pos=this._geometry;for(var S,F=R.readVarint()+R.pos,W=1,te=0,fe=0,pe=0,ze=[];R.pos<F;){if(te<=0){var Ke=R.readVarint();W=7&Ke,te=Ke>>3}if(te--,W===1||W===2)fe+=R.readSVarint(),pe+=R.readSVarint(),W===1&&(S&&ze.push(S),S=[]),S.push(new Nr(fe,pe));else{if(W!==7)throw new Error("unknown command "+W);S&&S.push(S[0].clone())}}return S&&ze.push(S),ze},hi.prototype.bbox=function(){var R=this._pbf;R.pos=this._geometry;for(var S=R.readVarint()+R.pos,F=1,W=0,te=0,fe=0,pe=1/0,ze=-1/0,Ke=1/0,ut=-1/0;R.pos<S;){if(W<=0){var Lt=R.readVarint();F=7&Lt,W=Lt>>3}if(W--,F===1||F===2)(te+=R.readSVarint())<pe&&(pe=te),te>ze&&(ze=te),(fe+=R.readSVarint())<Ke&&(Ke=fe),fe>ut&&(ut=fe);else if(F!==7)throw new Error("unknown command "+F)}return[pe,Ke,ze,ut]},hi.prototype.toGeoJSON=function(R,S,F){var W,te,fe=this.extent*Math.pow(2,F),pe=this.extent*R,ze=this.extent*S,Ke=this.loadGeometry(),ut=hi.types[this.type];function Lt(mr){for(var Lr=0;Lr<mr.length;Lr++){var zr=mr[Lr];mr[Lr]=[360*(zr.x+pe)/fe-180,360/Math.PI*Math.atan(Math.exp((180-360*(zr.y+ze)/fe)*Math.PI/180))-90]}}switch(this.type){case 1:var Qt=[];for(W=0;W<Ke.length;W++)Qt[W]=Ke[W][0];Lt(Ke=Qt);break;case 2:for(W=0;W<Ke.length;W++)Lt(Ke[W]);break;case 3:for(Ke=function(mr){var Lr=mr.length;if(Lr<=1)return[mr];for(var zr,ui,yi=[],dn=0;dn<Lr;dn++){var Fi=gn(mr[dn]);Fi!==0&&(ui===void 0&&(ui=Fi<0),ui===Fi<0?(zr&&yi.push(zr),zr=[mr[dn]]):zr.push(mr[dn]))}return zr&&yi.push(zr),yi}(Ke),W=0;W<Ke.length;W++)for(te=0;te<Ke[W].length;te++)Lt(Ke[W][te])}Ke.length===1?Ke=Ke[0]:ut="Multi"+ut;var fr={type:"Feature",geometry:{type:ut,coordinates:Ke},properties:this.properties};return"id"in this&&(fr.id=this.id),fr};var tn=Ri,Ci=qi;function qi(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(Vi,this,S),this.length=this._features.length}function Vi(R,S,F){R===15?S.version=F.readVarint():R===1?S.name=F.readString():R===5?S.extent=F.readVarint():R===2?S._features.push(F.pos):R===3?S._keys.push(F.readString()):R===4&&S._values.push(function(W){for(var te=null,fe=W.readVarint()+W.pos;W.pos<fe;){var pe=W.readVarint()>>3;te=pe===1?W.readString():pe===2?W.readFloat():pe===3?W.readDouble():pe===4?W.readVarint64():pe===5?W.readVarint():pe===6?W.readSVarint():pe===7?W.readBoolean():null}return te}(F))}qi.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 tn(this._pbf,S,this.extent,this._keys,this._values)};var on=Ci;function On(R,S,F){if(R===3){var W=new on(F,F.readVarint()+F.pos);W.length&&(S[W.name]=W)}}br.VectorTile=function(R,S){this.layers=R.readFields(On,{},S)},br.VectorTileFeature=Ri,br.VectorTileLayer=Ci;let Ja=br.VectorTileFeature.types,co=Math.pow(2,13);function rs(R,S,F,W,te,fe,pe,ze){R.emplaceBack(S,F,2*Math.floor(W*co)+pe,te*co*2,fe*co*2,Math.round(ze))}class so{constructor(S){this.zoom=S.zoom,this.overscaling=S.overscaling,this.layers=S.layers,this.layerIds=this.layers.map(F=>F.id),this.index=S.index,this.hasPattern=!1,this.layoutVertexArray=new Nl,this.centroidVertexArray=new wo,this.indexArray=new se,this.programConfigurations=new Es(S.layers,S.zoom),this.segments=new Ye,this.stateDependentLayerIds=this.layers.filter(F=>F.isStateDependent()).map(F=>F.id)}populate(S,F,W){this.features=[],this.hasPattern=at("fill-extrusion",this.layers,F);for(let{feature:te,id:fe,index:pe,sourceLayerIndex:ze}of S){let Ke=this.layers[0]._featureFilter.needGeometry,ut=Sl(te,Ke);if(!this.layers[0]._featureFilter.filter(new is(this.zoom),ut,W))continue;let Lt={id:fe,sourceLayerIndex:ze,index:pe,geometry:Ke?ut.geometry:Qs(te),properties:te.properties,type:te.type,patterns:{}};this.hasPattern?this.features.push(kt("fill-extrusion",this.layers,Lt,this.zoom,F)):this.addFeature(Lt,Lt.geometry,pe,W,{}),F.featureIndex.insert(te,Lt.geometry,pe,ze,this.index,!0)}}addFeatures(S,F,W){for(let te of this.features){let{geometry:fe}=te;this.addFeature(te,fe,te.index,F,W)}}update(S,F,W){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(S,F,this.stateDependentLayers,W)}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,cr),this.centroidVertexBuffer=S.createVertexBuffer(this.centroidVertexArray,ht.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,F,W,te,fe){for(let pe of Cf(F,500)){let ze={x:0,y:0,vertexCount:0},Ke=0;for(let Lr of pe)Ke+=Lr.length;let ut=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray);for(let Lr of pe){if(Lr.length===0||ys(Lr))continue;let zr=0;for(let ui=0;ui<Lr.length;ui++){let yi=Lr[ui];if(ui>=1){let dn=Lr[ui-1];if(!Zo(yi,dn)){ut.vertexLength+4>Ye.MAX_VERTEX_ARRAY_LENGTH&&(ut=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray));let Fi=yi.sub(dn)._perp()._unit(),ln=dn.dist(yi);zr+ln>32768&&(zr=0),rs(this.layoutVertexArray,yi.x,yi.y,Fi.x,Fi.y,0,0,zr),rs(this.layoutVertexArray,yi.x,yi.y,Fi.x,Fi.y,0,1,zr),ze.x+=2*yi.x,ze.y+=2*yi.y,ze.vertexCount+=2,zr+=ln,rs(this.layoutVertexArray,dn.x,dn.y,Fi.x,Fi.y,0,0,zr),rs(this.layoutVertexArray,dn.x,dn.y,Fi.x,Fi.y,0,1,zr),ze.x+=2*dn.x,ze.y+=2*dn.y,ze.vertexCount+=2;let An=ut.vertexLength;this.indexArray.emplaceBack(An,An+2,An+1),this.indexArray.emplaceBack(An+1,An+2,An+3),ut.vertexLength+=4,ut.primitiveLength+=2}}}}if(ut.vertexLength+Ke>Ye.MAX_VERTEX_ARRAY_LENGTH&&(ut=this.segments.prepareSegment(Ke,this.layoutVertexArray,this.indexArray)),Ja[S.type]!=="Polygon")continue;let Lt=[],Qt=[],fr=ut.vertexLength;for(let Lr of pe)if(Lr.length!==0){Lr!==pe[0]&&Qt.push(Lt.length/2);for(let zr=0;zr<Lr.length;zr++){let ui=Lr[zr];rs(this.layoutVertexArray,ui.x,ui.y,0,0,1,1,0),ze.x+=ui.x,ze.y+=ui.y,ze.vertexCount+=1,Lt.push(ui.x),Lt.push(ui.y)}}let mr=zo(Lt,Qt);for(let Lr=0;Lr<mr.length;Lr+=3)this.indexArray.emplaceBack(fr+mr[Lr],fr+mr[Lr+2],fr+mr[Lr+1]);ut.primitiveLength+=mr.length/3,ut.vertexLength+=Ke;for(let Lr=0;Lr<ze.vertexCount;Lr++){let zr=Math.floor(ze.x/ze.vertexCount),ui=Math.floor(ze.y/ze.vertexCount);this.centroidVertexArray.emplaceBack(zr,ui)}}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,S,W,fe,te)}}function Zo(R,S){return R.x===S.x&&(R.x<0||R.x>Ha)||R.y===S.y&&(R.y<0||R.y>Ha)}function ys(R){return R.every(S=>S.x<0)||R.every(S=>S.x>Ha)||R.every(S=>S.y<0)||R.every(S=>S.y>Ha)}let su;Di("FillExtrusionBucket",so,{omit:["layers","features"]});var Mv={get paint(){return su=su||new ue({"fill-extrusion-opacity":new Ua(ce["paint_fill-extrusion"]["fill-extrusion-opacity"]),"fill-extrusion-color":new oo(ce["paint_fill-extrusion"]["fill-extrusion-color"]),"fill-extrusion-translate":new Ua(ce["paint_fill-extrusion"]["fill-extrusion-translate"]),"fill-extrusion-translate-anchor":new Ua(ce["paint_fill-extrusion"]["fill-extrusion-translate-anchor"]),"fill-extrusion-pattern":new Vc(ce["paint_fill-extrusion"]["fill-extrusion-pattern"]),"fill-extrusion-height":new oo(ce["paint_fill-extrusion"]["fill-extrusion-height"]),"fill-extrusion-base":new oo(ce["paint_fill-extrusion"]["fill-extrusion-base"]),"fill-extrusion-vertical-gradient":new Ua(ce["paint_fill-extrusion"]["fill-extrusion-vertical-gradient"])})}};class Ev extends B{constructor(S){super(S,Mv)}createBucket(S){return new so(S)}queryRadius(){return Hn(this.paint.get("fill-extrusion-translate"))}is3D(){return!0}queryIntersectsFeature(S,F,W,te,fe,pe,ze,Ke){let ut=Qi(S,this.paint.get("fill-extrusion-translate"),this.paint.get("fill-extrusion-translate-anchor"),pe.angle,ze),Lt=this.paint.get("fill-extrusion-height").evaluate(F,W),Qt=this.paint.get("fill-extrusion-base").evaluate(F,W),fr=function(Lr,zr,ui,yi){let dn=[];for(let Fi of Lr){let ln=[Fi.x,Fi.y,0,1];qn(ln,ln,zr),dn.push(new u(ln[0]/ln[3],ln[1]/ln[3]))}return dn}(ut,Ke),mr=function(Lr,zr,ui,yi){let dn=[],Fi=[],ln=yi[8]*zr,An=yi[9]*zr,pa=yi[10]*zr,ro=yi[11]*zr,Vo=yi[8]*ui,Xa=yi[9]*ui,sa=yi[10]*ui,Mo=yi[11]*ui;for(let fo of Lr){let lo=[],Xn=[];for(let Ro of fo){let uo=Ro.x,$o=Ro.y,Ju=yi[0]*uo+yi[4]*$o+yi[12],qu=yi[1]*uo+yi[5]*$o+yi[13],Th=yi[2]*uo+yi[6]*$o+yi[14],$v=yi[3]*uo+yi[7]*$o+yi[15],ld=Th+pa,Ah=$v+ro,Gd=Ju+Vo,Hd=qu+Xa,jd=Th+sa,Tf=$v+Mo,Sh=new u((Ju+ln)/Ah,(qu+An)/Ah);Sh.z=ld/Ah,lo.push(Sh);let Ed=new u(Gd/Tf,Hd/Tf);Ed.z=jd/Tf,Xn.push(Ed)}dn.push(lo),Fi.push(Xn)}return[dn,Fi]}(te,Qt,Lt,Ke);return function(Lr,zr,ui){let yi=1/0;xt(ui,zr)&&(yi=Yv(ui,zr[0]));for(let dn=0;dn<zr.length;dn++){let Fi=zr[dn],ln=Lr[dn];for(let An=0;An<Fi.length-1;An++){let pa=Fi[An],ro=[pa,Fi[An+1],ln[An+1],ln[An],pa];Sc(ui,ro)&&(yi=Math.min(yi,Yv(ui,ro)))}}return yi!==1/0&&yi}(mr[0],mr[1],fr)}}function wd(R,S){return R.x*S.x+R.y*S.y}function Yv(R,S){if(R.length===1){let F=0,W=S[F++],te;for(;!te||W.equals(te);)if(te=S[F++],!te)return 1/0;for(;F<S.length;F++){let fe=S[F],pe=R[0],ze=te.sub(W),Ke=fe.sub(W),ut=pe.sub(W),Lt=wd(ze,ze),Qt=wd(ze,Ke),fr=wd(Ke,Ke),mr=wd(ut,ze),Lr=wd(ut,Ke),zr=Lt*fr-Qt*Qt,ui=(fr*mr-Qt*Lr)/zr,yi=(Lt*Lr-Qt*mr)/zr,dn=W.z*(1-ui-yi)+te.z*ui+fe.z*yi;if(isFinite(dn))return dn}return 1/0}{let F=1/0;for(let W of S)F=Math.min(F,W.z);return F}}let cg=qe([{name:"a_pos_normal",components:2,type:"Int16"},{name:"a_data",components:4,type:"Uint8"}],4),{members:dp}=cg,Td=qe([{name:"a_uv_x",components:1,type:"Float32"},{name:"a_split_index",components:1,type:"Float32"}]),{members:vp}=Td,Vd=br.VectorTileFeature.types,Ad=Math.cos(Math.PI/180*37.5),Cv=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(F=>F.id),this.index=S.index,this.hasPattern=!1,this.patternFeatures=[],this.lineClipsArray=[],this.gradients={},this.layers.forEach(F=>{this.gradients[F.id]={}}),this.layoutVertexArray=new Lu,this.layoutVertexArray2=new ou,this.indexArray=new se,this.programConfigurations=new Es(S.layers,S.zoom),this.segments=new Ye,this.maxLineLength=0,this.stateDependentLayerIds=this.layers.filter(F=>F.isStateDependent()).map(F=>F.id)}populate(S,F,W){this.hasPattern=at("line",this.layers,F);let te=this.layers[0].layout.get("line-sort-key"),fe=!te.isConstant(),pe=[];for(let{feature:ze,id:Ke,index:ut,sourceLayerIndex:Lt}of S){let Qt=this.layers[0]._featureFilter.needGeometry,fr=Sl(ze,Qt);if(!this.layers[0]._featureFilter.filter(new is(this.zoom),fr,W))continue;let mr=fe?te.evaluate(fr,{},W):void 0,Lr={id:Ke,properties:ze.properties,type:ze.type,sourceLayerIndex:Lt,index:ut,geometry:Qt?fr.geometry:Qs(ze),patterns:{},sortKey:mr};pe.push(Lr)}fe&&pe.sort((ze,Ke)=>ze.sortKey-Ke.sortKey);for(let ze of pe){let{geometry:Ke,index:ut,sourceLayerIndex:Lt}=ze;if(this.hasPattern){let Qt=kt("line",this.layers,ze,this.zoom,F);this.patternFeatures.push(Qt)}else this.addFeature(ze,Ke,ut,W,{});F.featureIndex.insert(S[ut].feature,Ke,ut,Lt,this.index)}}update(S,F,W){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(S,F,this.stateDependentLayers,W)}addFeatures(S,F,W){for(let te of this.patternFeatures)this.addFeature(te,te.geometry,te.index,F,W)}isEmpty(){return this.layoutVertexArray.length===0}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(S){this.uploaded||(this.layoutVertexArray2.length!==0&&(this.layoutVertexBuffer2=S.createVertexBuffer(this.layoutVertexArray2,vp)),this.layoutVertexBuffer=S.createVertexBuffer(this.layoutVertexArray,dp),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,F,W,te,fe){let pe=this.layers[0].layout,ze=pe.get("line-join").evaluate(S,{}),Ke=pe.get("line-cap"),ut=pe.get("line-miter-limit"),Lt=pe.get("line-round-limit");this.lineClips=this.lineFeatureClips(S);for(let Qt of F)this.addLine(Qt,S,ze,Ke,ut,Lt);this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,S,W,fe,te)}addLine(S,F,W,te,fe,pe){if(this.distance=0,this.scaledDistance=0,this.totalDistance=0,this.lineClips){this.lineClipsArray.push(this.lineClips);for(let yi=0;yi<S.length-1;yi++)this.totalDistance+=S[yi].dist(S[yi+1]);this.updateScaledDistance(),this.maxLineLength=Math.max(this.maxLineLength,this.totalDistance)}let ze=Vd[F.type]==="Polygon",Ke=S.length;for(;Ke>=2&&S[Ke-1].equals(S[Ke-2]);)Ke--;let ut=0;for(;ut<Ke-1&&S[ut].equals(S[ut+1]);)ut++;if(Ke<(ze?3:2))return;W==="bevel"&&(fe=1.05);let Lt=this.overscaling<=16?15*Ha/(512*this.overscaling):0,Qt=this.segments.prepareSegment(10*Ke,this.layoutVertexArray,this.indexArray),fr,mr,Lr,zr,ui;this.e1=this.e2=-1,ze&&(fr=S[Ke-2],ui=S[ut].sub(fr)._unit()._perp());for(let yi=ut;yi<Ke;yi++){if(Lr=yi===Ke-1?ze?S[ut+1]:void 0:S[yi+1],Lr&&S[yi].equals(Lr))continue;ui&&(zr=ui),fr&&(mr=fr),fr=S[yi],ui=Lr?Lr.sub(fr)._unit()._perp():zr,zr=zr||ui;let dn=zr.add(ui);dn.x===0&&dn.y===0||dn._unit();let Fi=zr.x*ui.x+zr.y*ui.y,ln=dn.x*ui.x+dn.y*ui.y,An=ln!==0?1/ln:1/0,pa=2*Math.sqrt(2-2*ln),ro=ln<Ad&&mr&&Lr,Vo=zr.x*ui.y-zr.y*ui.x>0;if(ro&&yi>ut){let Mo=fr.dist(mr);if(Mo>2*Lt){let fo=fr.sub(fr.sub(mr)._mult(Lt/Mo)._round());this.updateDistance(mr,fo),this.addCurrentVertex(fo,zr,0,0,Qt),mr=fo}}let Xa=mr&&Lr,sa=Xa?W:ze?"butt":te;if(Xa&&sa==="round"&&(An<pe?sa="miter":An<=2&&(sa="fakeround")),sa==="miter"&&An>fe&&(sa="bevel"),sa==="bevel"&&(An>2&&(sa="flipbevel"),An<fe&&(sa="miter")),mr&&this.updateDistance(mr,fr),sa==="miter")dn._mult(An),this.addCurrentVertex(fr,dn,0,0,Qt);else if(sa==="flipbevel"){if(An>100)dn=ui.mult(-1);else{let Mo=An*zr.add(ui).mag()/zr.sub(ui).mag();dn._perp()._mult(Mo*(Vo?-1:1))}this.addCurrentVertex(fr,dn,0,0,Qt),this.addCurrentVertex(fr,dn.mult(-1),0,0,Qt)}else if(sa==="bevel"||sa==="fakeround"){let Mo=-Math.sqrt(An*An-1),fo=Vo?Mo:0,lo=Vo?0:Mo;if(mr&&this.addCurrentVertex(fr,zr,fo,lo,Qt),sa==="fakeround"){let Xn=Math.round(180*pa/Math.PI/20);for(let Ro=1;Ro<Xn;Ro++){let uo=Ro/Xn;if(uo!==.5){let Ju=uo-.5;uo+=uo*Ju*(uo-1)*((1.0904+Fi*(Fi*(3.55645-1.43519*Fi)-3.2452))*Ju*Ju+(.848013+Fi*(.215638*Fi-1.06021)))}let $o=ui.sub(zr)._mult(uo)._add(zr)._unit()._mult(Vo?-1:1);this.addHalfVertex(fr,$o.x,$o.y,!1,Vo,0,Qt)}}Lr&&this.addCurrentVertex(fr,ui,-fo,-lo,Qt)}else if(sa==="butt")this.addCurrentVertex(fr,dn,0,0,Qt);else if(sa==="square"){let Mo=mr?1:-1;this.addCurrentVertex(fr,dn,Mo,Mo,Qt)}else sa==="round"&&(mr&&(this.addCurrentVertex(fr,zr,0,0,Qt),this.addCurrentVertex(fr,zr,1,1,Qt,!0)),Lr&&(this.addCurrentVertex(fr,ui,-1,-1,Qt,!0),this.addCurrentVertex(fr,ui,0,0,Qt)));if(ro&&yi<Ke-1){let Mo=fr.dist(Lr);if(Mo>2*Lt){let fo=fr.add(Lr.sub(fr)._mult(Lt/Mo)._round());this.updateDistance(fr,fo),this.addCurrentVertex(fo,ui,0,0,Qt),fr=fo}}}}addCurrentVertex(S,F,W,te,fe,pe=!1){let ze=F.y*te-F.x,Ke=-F.y-F.x*te;this.addHalfVertex(S,F.x+F.y*W,F.y-F.x*W,pe,!1,W,fe),this.addHalfVertex(S,ze,Ke,pe,!0,-te,fe),this.distance>Cv/2&&this.totalDistance===0&&(this.distance=0,this.updateScaledDistance(),this.addCurrentVertex(S,F,W,te,fe,pe))}addHalfVertex({x:S,y:F},W,te,fe,pe,ze,Ke){let ut=.5*(this.lineClips?this.scaledDistance*(Cv-1):this.scaledDistance);this.layoutVertexArray.emplaceBack((S<<1)+(fe?1:0),(F<<1)+(pe?1:0),Math.round(63*W)+128,Math.round(63*te)+128,1+(ze===0?0:ze<0?-1:1)|(63&ut)<<2,ut>>6),this.lineClips&&this.layoutVertexArray2.emplaceBack((this.scaledDistance-this.lineClips.start)/(this.lineClips.end-this.lineClips.start),this.lineClipsArray.length);let Lt=Ke.vertexLength++;this.e1>=0&&this.e2>=0&&(this.indexArray.emplaceBack(this.e1,this.e2,Lt),Ke.primitiveLength++),pe?this.e2=Lt:this.e1=Lt}updateScaledDistance(){this.scaledDistance=this.lineClips?this.lineClips.start+(this.lineClips.end-this.lineClips.start)*this.distance/this.totalDistance:this.distance}updateDistance(S,F){this.distance+=S.dist(F),this.updateScaledDistance()}}let kv,ny;Di("LineBucket",Kv,{omit:["layers","patternFeatures"]});var fg={get paint(){return ny=ny||new ue({"line-opacity":new oo(ce.paint_line["line-opacity"]),"line-color":new oo(ce.paint_line["line-color"]),"line-translate":new Ua(ce.paint_line["line-translate"]),"line-translate-anchor":new Ua(ce.paint_line["line-translate-anchor"]),"line-width":new oo(ce.paint_line["line-width"]),"line-gap-width":new oo(ce.paint_line["line-gap-width"]),"line-offset":new oo(ce.paint_line["line-offset"]),"line-blur":new oo(ce.paint_line["line-blur"]),"line-dasharray":new hc(ce.paint_line["line-dasharray"]),"line-pattern":new Vc(ce.paint_line["line-pattern"]),"line-gradient":new Ku(ce.paint_line["line-gradient"])})},get layout(){return kv=kv||new ue({"line-cap":new Ua(ce.layout_line["line-cap"]),"line-join":new oo(ce.layout_line["line-join"]),"line-miter-limit":new Ua(ce.layout_line["line-miter-limit"]),"line-round-limit":new Ua(ce.layout_line["line-round-limit"]),"line-sort-key":new oo(ce.layout_line["line-sort-key"])})}};class oh extends oo{possiblyEvaluate(S,F){return F=new is(Math.floor(F.zoom),{now:F.now,fadeDuration:F.fadeDuration,zoomHistory:F.zoomHistory,transition:F.transition}),super.possiblyEvaluate(S,F)}evaluate(S,F,W,te){return F=L({},F,{zoom:Math.floor(F.zoom)}),super.evaluate(S,F,W,te)}}let hg;class ay extends B{constructor(S){super(S,fg),this.gradientVersion=0,hg||(hg=new oh(fg.paint.properties["line-width"].specification),hg.useIntegerZoom=!0)}_handleSpecialPaintPropertyUpdate(S){if(S==="line-gradient"){let F=this.gradientExpression();this.stepInterpolant=!!function(W){return W._styleExpression!==void 0}(F)&&F._styleExpression.expression instanceof _n,this.gradientVersion=(this.gradientVersion+1)%Number.MAX_SAFE_INTEGER}}gradientExpression(){return this._transitionablePaint._values["line-gradient"].value.expression}recalculate(S,F){super.recalculate(S,F),this.paint._values["line-floorwidth"]=hg.possiblyEvaluate(this._transitioningPaint._values["line-width"].value,S)}createBucket(S){return new Kv(S)}queryRadius(S){let F=S,W=Gh(Mi("line-width",this,F),Mi("line-gap-width",this,F)),te=Mi("line-offset",this,F);return W/2+Math.abs(te)+Hn(this.paint.get("line-translate"))}queryIntersectsFeature(S,F,W,te,fe,pe,ze){let Ke=Qi(S,this.paint.get("line-translate"),this.paint.get("line-translate-anchor"),pe.angle,ze),ut=ze/2*Gh(this.paint.get("line-width").evaluate(F,W),this.paint.get("line-gap-width").evaluate(F,W)),Lt=this.paint.get("line-offset").evaluate(F,W);return Lt&&(te=function(Qt,fr){let mr=[];for(let Lr=0;Lr<Qt.length;Lr++){let zr=Qt[Lr],ui=[];for(let yi=0;yi<zr.length;yi++){let dn=zr[yi-1],Fi=zr[yi],ln=zr[yi+1],An=yi===0?new u(0,0):Fi.sub(dn)._unit()._perp(),pa=yi===zr.length-1?new u(0,0):ln.sub(Fi)._unit()._perp(),ro=An._add(pa)._unit(),Vo=ro.x*pa.x+ro.y*pa.y;Vo!==0&&ro._mult(1/Vo),ui.push(ro._mult(fr)._add(Fi))}mr.push(ui)}return mr}(te,Lt*ze)),function(Qt,fr,mr){for(let Lr=0;Lr<fr.length;Lr++){let zr=fr[Lr];if(Qt.length>=3){for(let ui=0;ui<zr.length;ui++)if(Ni(Qt,zr[ui]))return!0}if(zt(Qt,zr,mr))return!0}return!1}(Ke,te,ut)}isTileClipped(){return!0}}function Gh(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,F){return R.sections.forEach(W=>{W.text=function(te,fe,pe){let ze=fe.layout.get("text-transform").evaluate(pe,{});return ze==="uppercase"?te=te.toLocaleUpperCase():ze==="lowercase"&&(te=te.toLocaleLowerCase()),_s.applyArabicShaping&&(te=_s.applyArabicShaping(te)),te}(W.text,S,F)}),R}qe([{name:"triangle",components:3,type:"Uint16"}]),qe([{type:"Int16",name:"anchorX"},{type:"Int16",name:"anchorY"},{type:"Uint16",name:"glyphStartIndex"},{type:"Uint16",name:"numGlyphs"},{type:"Uint32",name:"vertexStartIndex"},{type:"Uint32",name:"lineStartIndex"},{type:"Uint32",name:"lineLength"},{type:"Uint16",name:"segment"},{type:"Uint16",name:"lowerSize"},{type:"Uint16",name:"upperSize"},{type:"Float32",name:"lineOffsetX"},{type:"Float32",name:"lineOffsetY"},{type:"Uint8",name:"writingMode"},{type:"Uint8",name:"placedOrientation"},{type:"Uint8",name:"hidden"},{type:"Uint32",name:"crossTileID"},{type:"Int16",name:"associatedIconIndex"}]),qe([{type:"Int16",name:"anchorX"},{type:"Int16",name:"anchorY"},{type:"Int16",name:"rightJustifiedTextSymbolIndex"},{type:"Int16",name:"centerJustifiedTextSymbolIndex"},{type:"Int16",name:"leftJustifiedTextSymbolIndex"},{type:"Int16",name:"verticalPlacedTextSymbolIndex"},{type:"Int16",name:"placedIconSymbolIndex"},{type:"Int16",name:"verticalPlacedIconSymbolIndex"},{type:"Uint16",name:"key"},{type:"Uint16",name:"textBoxStartIndex"},{type:"Uint16",name:"textBoxEndIndex"},{type:"Uint16",name:"verticalTextBoxStartIndex"},{type:"Uint16",name:"verticalTextBoxEndIndex"},{type:"Uint16",name:"iconBoxStartIndex"},{type:"Uint16",name:"iconBoxEndIndex"},{type:"Uint16",name:"verticalIconBoxStartIndex"},{type:"Uint16",name:"verticalIconBoxEndIndex"},{type:"Uint16",name:"featureIndex"},{type:"Uint16",name:"numHorizontalGlyphVertices"},{type:"Uint16",name:"numVerticalGlyphVertices"},{type:"Uint16",name:"numIconVertices"},{type:"Uint16",name:"numVerticalIconVertices"},{type:"Uint16",name:"useRuntimeCollisionCircles"},{type:"Uint32",name:"crossTileID"},{type:"Float32",name:"textBoxScale"},{type:"Float32",name:"collisionCircleDiameter"},{type:"Uint16",name:"textAnchorOffsetStartIndex"},{type:"Uint16",name:"textAnchorOffsetEndIndex"}]),qe([{type:"Float32",name:"offsetX"}]),qe([{type:"Int16",name:"x"},{type:"Int16",name:"y"},{type:"Int16",name:"tileUnitDistanceFromAnchor"}]),qe([{type:"Uint16",name:"textAnchor"},{type:"Float32",components:2,name:"textOffset"}]);let vc={"!":"\uFE15","#":"\uFF03",$:"\uFF04","%":"\uFF05","&":"\uFF06","(":"\uFE35",")":"\uFE36","*":"\uFF0A","+":"\uFF0B",",":"\uFE10","-":"\uFE32",".":"\u30FB","/":"\uFF0F",":":"\uFE13",";":"\uFE14","<":"\uFE3F","=":"\uFF1D",">":"\uFE40","?":"\uFE16","@":"\uFF20","[":"\uFE47","\\":"\uFF3C","]":"\uFE48","^":"\uFF3E",_:"\uFE33","`":"\uFF40","{":"\uFE37","|":"\u2015","}":"\uFE38","~":"\uFF5E","\xA2":"\uFFE0","\xA3":"\uFFE1","\xA5":"\uFFE5","\xA6":"\uFFE4","\xAC":"\uFFE2","\xAF":"\uFFE3","\u2013":"\uFE32","\u2014":"\uFE31","\u2018":"\uFE43","\u2019":"\uFE44","\u201C":"\uFE41","\u201D":"\uFE42","\u2026":"\uFE19","\u2027":"\u30FB","\u20A9":"\uFFE6","\u3001":"\uFE11","\u3002":"\uFE12","\u3008":"\uFE3F","\u3009":"\uFE40","\u300A":"\uFE3D","\u300B":"\uFE3E","\u300C":"\uFE41","\u300D":"\uFE42","\u300E":"\uFE43","\u300F":"\uFE44","\u3010":"\uFE3B","\u3011":"\uFE3C","\u3014":"\uFE39","\u3015":"\uFE3A","\u3016":"\uFE17","\u3017":"\uFE18","\uFF01":"\uFE15","\uFF08":"\uFE35","\uFF09":"\uFE36","\uFF0C":"\uFE10","\uFF0D":"\uFE32","\uFF0E":"\u30FB","\uFF1A":"\uFE13","\uFF1B":"\uFE14","\uFF1C":"\uFE3F","\uFF1E":"\uFE40","\uFF1F":"\uFE16","\uFF3B":"\uFE47","\uFF3D":"\uFE48","\uFF3F":"\uFE33","\uFF5B":"\uFE37","\uFF5C":"\u2015","\uFF5D":"\uFE38","\uFF5F":"\uFE35","\uFF60":"\uFE36","\uFF61":"\uFE12","\uFF62":"\uFE41","\uFF63":"\uFE42"};var eu=24,Sd=wu,sy=function(R,S,F,W,te){var fe,pe,ze=8*te-W-1,Ke=(1<<ze)-1,ut=Ke>>1,Lt=-7,Qt=F?te-1:0,fr=F?-1:1,mr=R[S+Qt];for(Qt+=fr,fe=mr&(1<<-Lt)-1,mr>>=-Lt,Lt+=ze;Lt>0;fe=256*fe+R[S+Qt],Qt+=fr,Lt-=8);for(pe=fe&(1<<-Lt)-1,fe>>=-Lt,Lt+=W;Lt>0;pe=256*pe+R[S+Qt],Qt+=fr,Lt-=8);if(fe===0)fe=1-ut;else{if(fe===Ke)return pe?NaN:1/0*(mr?-1:1);pe+=Math.pow(2,W),fe-=ut}return(mr?-1:1)*pe*Math.pow(2,fe-W)},A1=function(R,S,F,W,te,fe){var pe,ze,Ke,ut=8*fe-te-1,Lt=(1<<ut)-1,Qt=Lt>>1,fr=te===23?Math.pow(2,-24)-Math.pow(2,-77):0,mr=W?0:fe-1,Lr=W?1:-1,zr=S<0||S===0&&1/S<0?1:0;for(S=Math.abs(S),isNaN(S)||S===1/0?(ze=isNaN(S)?1:0,pe=Lt):(pe=Math.floor(Math.log(S)/Math.LN2),S*(Ke=Math.pow(2,-pe))<1&&(pe--,Ke*=2),(S+=pe+Qt>=1?fr/Ke:fr*Math.pow(2,1-Qt))*Ke>=2&&(pe++,Ke/=2),pe+Qt>=Lt?(ze=0,pe=Lt):pe+Qt>=1?(ze=(S*Ke-1)*Math.pow(2,te),pe+=Qt):(ze=S*Math.pow(2,Qt-1)*Math.pow(2,te),pe=0));te>=8;R[F+mr]=255&ze,mr+=Lr,ze/=256,te-=8);for(pe=pe<<te|ze,ut+=te;ut>0;R[F+mr]=255&pe,mr+=Lr,pe/=256,ut-=8);R[F+mr-Lr]|=128*zr};function wu(R){this.buf=ArrayBuffer.isView&&ArrayBuffer.isView(R)?R:new Uint8Array(R||0),this.pos=0,this.type=0,this.length=this.buf.length}wu.Varint=0,wu.Fixed64=1,wu.Bytes=2,wu.Fixed32=5;var Nx=4294967296,am=1/Nx,Mw=typeof TextDecoder=="undefined"?null:new TextDecoder("utf-8");function Lv(R){return R.type===wu.Bytes?R.readVarint()+R.pos:R.pos+1}function om(R,S,F){return F?4294967296*S+(R>>>0):4294967296*(S>>>0)+(R>>>0)}function Ew(R,S,F){var W=S<=16383?1:S<=2097151?2:S<=268435455?3:Math.floor(Math.log(S)/(7*Math.LN2));F.realloc(W);for(var te=F.pos-1;te>=R;te--)F.buf[te+W]=F.buf[te]}function Ux(R,S){for(var F=0;F<R.length;F++)S.writeVarint(R[F])}function D9(R,S){for(var F=0;F<R.length;F++)S.writeSVarint(R[F])}function F9(R,S){for(var F=0;F<R.length;F++)S.writeFloat(R[F])}function z9(R,S){for(var F=0;F<R.length;F++)S.writeDouble(R[F])}function O9(R,S){for(var F=0;F<R.length;F++)S.writeBoolean(R[F])}function CQ(R,S){for(var F=0;F<R.length;F++)S.writeFixed32(R[F])}function q9(R,S){for(var F=0;F<R.length;F++)S.writeSFixed32(R[F])}function B9(R,S){for(var F=0;F<R.length;F++)S.writeFixed64(R[F])}function N9(R,S){for(var F=0;F<R.length;F++)S.writeSFixed64(R[F])}function ly(R,S){return(R[S]|R[S+1]<<8|R[S+2]<<16)+16777216*R[S+3]}function Vx(R,S,F){R[F]=S,R[F+1]=S>>>8,R[F+2]=S>>>16,R[F+3]=S>>>24}function gk(R,S){return(R[S]|R[S+1]<<8|R[S+2]<<16)+(R[S+3]<<24)}wu.prototype={destroy:function(){this.buf=null},readFields:function(R,S,F){for(F=F||this.length;this.pos<F;){var W=this.readVarint(),te=W>>3,fe=this.pos;this.type=7&W,R(te,S,this),this.pos===fe&&this.skip(W)}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=gk(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)+gk(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,F,W=this.buf;return S=127&(F=W[this.pos++]),F<128?S:(S|=(127&(F=W[this.pos++]))<<7,F<128?S:(S|=(127&(F=W[this.pos++]))<<14,F<128?S:(S|=(127&(F=W[this.pos++]))<<21,F<128?S:function(te,fe,pe){var ze,Ke,ut=pe.buf;if(ze=(112&(Ke=ut[pe.pos++]))>>4,Ke<128||(ze|=(127&(Ke=ut[pe.pos++]))<<3,Ke<128)||(ze|=(127&(Ke=ut[pe.pos++]))<<10,Ke<128)||(ze|=(127&(Ke=ut[pe.pos++]))<<17,Ke<128)||(ze|=(127&(Ke=ut[pe.pos++]))<<24,Ke<128)||(ze|=(1&(Ke=ut[pe.pos++]))<<31,Ke<128))return om(te,ze,fe);throw new Error("Expected varint not more than 10 bytes")}(S|=(15&(F=W[this.pos]))<<28,R,this))))},readVarint64:function(){return this.readVarint(!0)},readSVarint:function(){var R=this.readVarint();return R%2==1?(R+1)/-2:R/2},readBoolean:function(){return!!this.readVarint()},readString:function(){var R=this.readVarint()+this.pos,S=this.pos;return this.pos=R,R-S>=12&&Mw?function(F,W,te){return Mw.decode(F.subarray(W,te))}(this.buf,S,R):function(F,W,te){for(var fe="",pe=W;pe<te;){var ze,Ke,ut,Lt=F[pe],Qt=null,fr=Lt>239?4:Lt>223?3:Lt>191?2:1;if(pe+fr>te)break;fr===1?Lt<128&&(Qt=Lt):fr===2?(192&(ze=F[pe+1]))==128&&(Qt=(31&Lt)<<6|63&ze)<=127&&(Qt=null):fr===3?(Ke=F[pe+2],(192&(ze=F[pe+1]))==128&&(192&Ke)==128&&((Qt=(15&Lt)<<12|(63&ze)<<6|63&Ke)<=2047||Qt>=55296&&Qt<=57343)&&(Qt=null)):fr===4&&(Ke=F[pe+2],ut=F[pe+3],(192&(ze=F[pe+1]))==128&&(192&Ke)==128&&(192&ut)==128&&((Qt=(15&Lt)<<18|(63&ze)<<12|(63&Ke)<<6|63&ut)<=65535||Qt>=1114112)&&(Qt=null)),Qt===null?(Qt=65533,fr=1):Qt>65535&&(Qt-=65536,fe+=String.fromCharCode(Qt>>>10&1023|55296),Qt=56320|1023&Qt),fe+=String.fromCharCode(Qt),pe+=fr}return fe}(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!==wu.Bytes)return R.push(this.readVarint(S));var F=Lv(this);for(R=R||[];this.pos<F;)R.push(this.readVarint(S));return R},readPackedSVarint:function(R){if(this.type!==wu.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!==wu.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!==wu.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!==wu.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!==wu.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!==wu.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!==wu.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!==wu.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===wu.Varint)for(;this.buf[this.pos++]>127;);else if(S===wu.Bytes)this.pos=this.readVarint()+this.pos;else if(S===wu.Fixed32)this.pos+=4;else{if(S!==wu.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 F=new Uint8Array(S);F.set(this.buf),this.buf=F,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,F){var W,te;if(S>=0?(W=S%4294967296|0,te=S/4294967296|0):(te=~(-S/4294967296),4294967295^(W=~(-S%4294967296))?W=W+1|0:(W=0,te=te+1|0)),S>=18446744073709552e3||S<-18446744073709552e3)throw new Error("Given varint doesn't fit into 10 bytes");F.realloc(10),function(fe,pe,ze){ze.buf[ze.pos++]=127&fe|128,fe>>>=7,ze.buf[ze.pos++]=127&fe|128,fe>>>=7,ze.buf[ze.pos++]=127&fe|128,fe>>>=7,ze.buf[ze.pos++]=127&fe|128,ze.buf[ze.pos]=127&(fe>>>=7)}(W,0,F),function(fe,pe){var ze=(7&fe)<<4;pe.buf[pe.pos++]|=ze|((fe>>>=3)?128:0),fe&&(pe.buf[pe.pos++]=127&fe|((fe>>>=7)?128:0),fe&&(pe.buf[pe.pos++]=127&fe|((fe>>>=7)?128:0),fe&&(pe.buf[pe.pos++]=127&fe|((fe>>>=7)?128:0),fe&&(pe.buf[pe.pos++]=127&fe|((fe>>>=7)?128:0),fe&&(pe.buf[pe.pos++]=127&fe)))))}(te,F)}(R,this):(this.realloc(4),this.buf[this.pos++]=127&R|(R>127?128:0),R<=127||(this.buf[this.pos++]=127&(R>>>=7)|(R>127?128:0),R<=127||(this.buf[this.pos++]=127&(R>>>=7)|(R>127?128:0),R<=127||(this.buf[this.pos++]=R>>>7&127))))},writeSVarint:function(R){this.writeVarint(R<0?2*-R-1:2*R)},writeBoolean:function(R){this.writeVarint(!!R)},writeString:function(R){R=String(R),this.realloc(4*R.length),this.pos++;var S=this.pos;this.pos=function(W,te,fe){for(var pe,ze,Ke=0;Ke<te.length;Ke++){if((pe=te.charCodeAt(Ke))>55295&&pe<57344){if(!ze){pe>56319||Ke+1===te.length?(W[fe++]=239,W[fe++]=191,W[fe++]=189):ze=pe;continue}if(pe<56320){W[fe++]=239,W[fe++]=191,W[fe++]=189,ze=pe;continue}pe=ze-55296<<10|pe-56320|65536,ze=null}else ze&&(W[fe++]=239,W[fe++]=191,W[fe++]=189,ze=null);pe<128?W[fe++]=pe:(pe<2048?W[fe++]=pe>>6|192:(pe<65536?W[fe++]=pe>>12|224:(W[fe++]=pe>>18|240,W[fe++]=pe>>12&63|128),W[fe++]=pe>>6&63|128),W[fe++]=63&pe|128)}return fe}(this.buf,R,this.pos);var F=this.pos-S;F>=128&&Ew(S,F,this),this.pos=S-1,this.writeVarint(F),this.pos+=F},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 F=0;F<S;F++)this.buf[this.pos++]=R[F]},writeRawMessage:function(R,S){this.pos++;var F=this.pos;R(S,this);var W=this.pos-F;W>=128&&Ew(F,W,this),this.pos=F-1,this.writeVarint(W),this.pos+=W},writeMessage:function(R,S,F){this.writeTag(R,wu.Bytes),this.writeRawMessage(S,F)},writePackedVarint:function(R,S){S.length&&this.writeMessage(R,Ux,S)},writePackedSVarint:function(R,S){S.length&&this.writeMessage(R,D9,S)},writePackedBoolean:function(R,S){S.length&&this.writeMessage(R,O9,S)},writePackedFloat:function(R,S){S.length&&this.writeMessage(R,F9,S)},writePackedDouble:function(R,S){S.length&&this.writeMessage(R,z9,S)},writePackedFixed32:function(R,S){S.length&&this.writeMessage(R,CQ,S)},writePackedSFixed32:function(R,S){S.length&&this.writeMessage(R,q9,S)},writePackedFixed64:function(R,S){S.length&&this.writeMessage(R,B9,S)},writePackedSFixed64:function(R,S){S.length&&this.writeMessage(R,N9,S)},writeBytesField:function(R,S){this.writeTag(R,wu.Bytes),this.writeBytes(S)},writeFixed32Field:function(R,S){this.writeTag(R,wu.Fixed32),this.writeFixed32(S)},writeSFixed32Field:function(R,S){this.writeTag(R,wu.Fixed32),this.writeSFixed32(S)},writeFixed64Field:function(R,S){this.writeTag(R,wu.Fixed64),this.writeFixed64(S)},writeSFixed64Field:function(R,S){this.writeTag(R,wu.Fixed64),this.writeSFixed64(S)},writeVarintField:function(R,S){this.writeTag(R,wu.Varint),this.writeVarint(S)},writeSVarintField:function(R,S){this.writeTag(R,wu.Varint),this.writeSVarint(S)},writeStringField:function(R,S){this.writeTag(R,wu.Bytes),this.writeString(S)},writeFloatField:function(R,S){this.writeTag(R,wu.Fixed32),this.writeFloat(S)},writeDoubleField:function(R,S){this.writeTag(R,wu.Fixed64),this.writeDouble(S)},writeBooleanField:function(R,S){this.writeVarintField(R,!!S)}};var tS=o(Sd);let rS=3;function kQ(R,S,F){R===1&&F.readMessage(U9,S)}function U9(R,S,F){if(R===3){let{id:W,bitmap:te,width:fe,height:pe,left:ze,top:Ke,advance:ut}=F.readMessage(mk,{});S.push({id:W,bitmap:new na({width:fe+2*rS,height:pe+2*rS},te),metrics:{width:fe,height:pe,left:ze,top:Ke,advance:ut}})}}function mk(R,S,F){R===1?S.id=F.readVarint():R===2?S.bitmap=F.readBytes():R===3?S.width=F.readVarint():R===4?S.height=F.readVarint():R===5?S.left=F.readSVarint():R===6?S.top=F.readSVarint():R===7&&(S.advance=F.readVarint())}let yk=rS;function iS(R){let S=0,F=0;for(let pe of R)S+=pe.w*pe.h,F=Math.max(F,pe.w);R.sort((pe,ze)=>ze.h-pe.h);let W=[{x:0,y:0,w:Math.max(Math.ceil(Math.sqrt(S/.95)),F),h:1/0}],te=0,fe=0;for(let pe of R)for(let ze=W.length-1;ze>=0;ze--){let Ke=W[ze];if(!(pe.w>Ke.w||pe.h>Ke.h)){if(pe.x=Ke.x,pe.y=Ke.y,fe=Math.max(fe,pe.y+pe.h),te=Math.max(te,pe.x+pe.w),pe.w===Ke.w&&pe.h===Ke.h){let ut=W.pop();ze<W.length&&(W[ze]=ut)}else pe.h===Ke.h?(Ke.x+=pe.w,Ke.w-=pe.w):pe.w===Ke.w?(Ke.y+=pe.h,Ke.h-=pe.h):(W.push({x:Ke.x+pe.w,y:Ke.y,w:Ke.w-pe.w,h:pe.h}),Ke.y+=pe.h,Ke.h-=pe.h);break}}return{w:te,h:fe,fill:S/(te*fe)||0}}let Md=1;class Cw{constructor(S,{pixelRatio:F,version:W,stretchX:te,stretchY:fe,content:pe,textFitWidth:ze,textFitHeight:Ke}){this.paddedRect=S,this.pixelRatio=F,this.stretchX=te,this.stretchY=fe,this.content=pe,this.version=W,this.textFitWidth=ze,this.textFitHeight=Ke}get tl(){return[this.paddedRect.x+Md,this.paddedRect.y+Md]}get br(){return[this.paddedRect.x+this.paddedRect.w-Md,this.paddedRect.y+this.paddedRect.h-Md]}get tlbr(){return this.tl.concat(this.br)}get displaySize(){return[(this.paddedRect.w-2*Md)/this.pixelRatio,(this.paddedRect.h-2*Md)/this.pixelRatio]}}class kw{constructor(S,F){let W={},te={};this.haveRenderCallbacks=[];let fe=[];this.addImages(S,W,fe),this.addImages(F,te,fe);let{w:pe,h:ze}=iS(fe),Ke=new Yi({width:pe||1,height:ze||1});for(let ut in S){let Lt=S[ut],Qt=W[ut].paddedRect;Yi.copy(Lt.data,Ke,{x:0,y:0},{x:Qt.x+Md,y:Qt.y+Md},Lt.data)}for(let ut in F){let Lt=F[ut],Qt=te[ut].paddedRect,fr=Qt.x+Md,mr=Qt.y+Md,Lr=Lt.data.width,zr=Lt.data.height;Yi.copy(Lt.data,Ke,{x:0,y:0},{x:fr,y:mr},Lt.data),Yi.copy(Lt.data,Ke,{x:0,y:zr-1},{x:fr,y:mr-1},{width:Lr,height:1}),Yi.copy(Lt.data,Ke,{x:0,y:0},{x:fr,y:mr+zr},{width:Lr,height:1}),Yi.copy(Lt.data,Ke,{x:Lr-1,y:0},{x:fr-1,y:mr},{width:1,height:zr}),Yi.copy(Lt.data,Ke,{x:0,y:0},{x:fr+Lr,y:mr},{width:1,height:zr})}this.image=Ke,this.iconPositions=W,this.patternPositions=te}addImages(S,F,W){for(let te in S){let fe=S[te],pe={x:0,y:0,w:fe.data.width+2*Md,h:fe.data.height+2*Md};W.push(pe),F[te]=new Cw(pe,fe),fe.hasRenderCallback&&this.haveRenderCallbacks.push(te)}}patchUpdatedImages(S,F){S.dispatchRenderCallbacks(this.haveRenderCallbacks);for(let W in S.updatedImages)this.patchUpdatedImage(this.iconPositions[W],S.getImage(W),F),this.patchUpdatedImage(this.patternPositions[W],S.getImage(W),F)}patchUpdatedImage(S,F,W){if(!S||!F||S.version===F.version)return;S.version=F.version;let[te,fe]=S.tl;W.update(F.data,void 0,{x:te,y:fe})}}var Pv;Di("ImagePosition",Cw),Di("ImageAtlas",kw),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 wh=-17;class Gx{constructor(){this.scale=1,this.fontStack="",this.imageName=null}static forText(S,F){let W=new Gx;return W.scale=S||1,W.fontStack=F,W}static forImage(S){let F=new Gx;return F.imageName=S,F}}class S1{constructor(){this.text="",this.sectionIndex=[],this.sections=[],this.imageSectionID=null}static fromFeature(S,F){let W=new S1;for(let te=0;te<S.sections.length;te++){let fe=S.sections[te];fe.image?W.addImageSection(fe):W.addTextSection(fe,F)}return W}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 F="";for(let W=0;W<S.length;W++){let te=S.charCodeAt(W+1)||null,fe=S.charCodeAt(W-1)||null;F+=te&&yl(te)&&!vc[S[W+1]]||fe&&yl(fe)&&!vc[S[W-1]]||!vc[S[W]]?S[W]:vc[S[W]]}return F}(this.text)}trim(){let S=0;for(let W=0;W<this.text.length&&Lw[this.text.charCodeAt(W)];W++)S++;let F=this.text.length;for(let W=this.text.length-1;W>=0&&W>=S&&Lw[this.text.charCodeAt(W)];W--)F--;this.text=this.text.substring(S,F),this.sectionIndex=this.sectionIndex.slice(S,F)}substring(S,F){let W=new S1;return W.text=this.text.substring(S,F),W.sectionIndex=this.sectionIndex.slice(S,F),W.sections=this.sections,W}toString(){return this.text}getMaxScale(){return this.sectionIndex.reduce((S,F)=>Math.max(S,this.sections[F].scale),0)}addTextSection(S,F){this.text+=S.text,this.sections.push(Gx.forText(S.scale,S.fontStack||F));let W=this.sections.length-1;for(let te=0;te<S.text.length;++te)this.sectionIndex.push(W)}addImageSection(S){let F=S.image?S.image.name:"";if(F.length===0)return void T("Can't add FormattedSection with an empty image.");let W=this.getNextImageSectionCharCode();W?(this.text+=String.fromCharCode(W),this.sections.push(Gx.forImage(F)),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 Hx(R,S,F,W,te,fe,pe,ze,Ke,ut,Lt,Qt,fr,mr,Lr){let zr=S1.fromFeature(R,te),ui;Qt===i.ah.vertical&&zr.verticalizePunctuation();let{processBidirectionalText:yi,processStyledBidirectionalText:dn}=_s;if(yi&&zr.sections.length===1){ui=[];let An=yi(zr.toString(),M1(zr,ut,fe,S,W,mr));for(let pa of An){let ro=new S1;ro.text=pa,ro.sections=zr.sections;for(let Vo=0;Vo<pa.length;Vo++)ro.sectionIndex.push(0);ui.push(ro)}}else if(dn){ui=[];let An=dn(zr.text,zr.sectionIndex,M1(zr,ut,fe,S,W,mr));for(let pa of An){let ro=new S1;ro.text=pa[0],ro.sectionIndex=pa[1],ro.sections=zr.sections,ui.push(ro)}}else ui=function(An,pa){let ro=[],Vo=An.text,Xa=0;for(let sa of pa)ro.push(An.substring(Xa,sa)),Xa=sa;return Xa<Vo.length&&ro.push(An.substring(Xa,Vo.length)),ro}(zr,M1(zr,ut,fe,S,W,mr));let Fi=[],ln={positionedLines:Fi,text:zr.toString(),top:Lt[1],bottom:Lt[1],left:Lt[0],right:Lt[0],writingMode:Qt,iconsInText:!1,verticalizable:!1};return function(An,pa,ro,Vo,Xa,sa,Mo,fo,lo,Xn,Ro,uo){let $o=0,Ju=wh,qu=0,Th=0,$v=fo==="right"?1:fo==="left"?0:.5,ld=0;for(let Tf of Xa){Tf.trim();let Sh=Tf.getMaxScale(),Ed=(Sh-1)*eu,ud={positionedGlyphs:[],lineOffset:0};An.positionedLines[ld]=ud;let Hh=ud.positionedGlyphs,Rf=0;if(!Tf.length()){Ju+=sa,++ld;continue}for(let lv=0;lv<Tf.length();lv++){let tu=Tf.getSection(lv),pc=Tf.getSectionIndex(lv),$u=Tf.getCharCode(lv),Rv=0,ff=null,I1=null,p0=null,Gp=eu,Qv=!(lo===i.ah.horizontal||!Ro&&!Ho($u)||Ro&&(Lw[$u]||(Ah=$u,new RegExp("\\p{sc=Arab}","u").test(String.fromCodePoint(Ah)))));if(tu.imageName){let Gc=Vo[tu.imageName];if(!Gc)continue;p0=tu.imageName,An.iconsInText=An.iconsInText||!0,I1=Gc.paddedRect;let Zf=Gc.displaySize;tu.scale=tu.scale*eu/uo,ff={width:Zf[0],height:Zf[1],left:Md,top:-yk,advance:Qv?Zf[1]:Zf[0]},Rv=Ed+(eu-Zf[1]*tu.scale),Gp=ff.advance;let ep=Qv?Zf[0]*tu.scale-eu*Sh:Zf[1]*tu.scale-eu*Sh;ep>0&&ep>Rf&&(Rf=ep)}else{let Gc=ro[tu.fontStack],Zf=Gc&&Gc[$u];if(Zf&&Zf.rect)I1=Zf.rect,ff=Zf.metrics;else{let ep=pa[tu.fontStack],gg=ep&&ep[$u];if(!gg)continue;ff=gg.metrics}Rv=(Sh-tu.scale)*eu}Qv?(An.verticalizable=!0,Hh.push({glyph:$u,imageName:p0,x:$o,y:Ju+Rv,vertical:Qv,scale:tu.scale,fontStack:tu.fontStack,sectionIndex:pc,metrics:ff,rect:I1}),$o+=Gp*tu.scale+Xn):(Hh.push({glyph:$u,imageName:p0,x:$o,y:Ju+Rv,vertical:Qv,scale:tu.scale,fontStack:tu.fontStack,sectionIndex:pc,metrics:ff,rect:I1}),$o+=ff.advance*tu.scale+Xn)}Hh.length!==0&&(qu=Math.max($o-Xn,qu),sm(Hh,0,Hh.length-1,$v,Rf)),$o=0;let Iv=sa*Sh+Rf;ud.lineOffset=Math.max(Rf,Ed),Ju+=Iv,Th=Math.max(Iv,Th),++ld}var Ah;let Gd=Ju-wh,{horizontalAlign:Hd,verticalAlign:jd}=Iw(Mo);(function(Tf,Sh,Ed,ud,Hh,Rf,Iv,lv,tu){let pc=(Sh-Ed)*Hh,$u=0;$u=Rf!==Iv?-lv*ud-wh:(-ud*tu+.5)*Iv;for(let Rv of Tf)for(let ff of Rv.positionedGlyphs)ff.x+=pc,ff.y+=$u})(An.positionedLines,$v,Hd,jd,qu,Th,sa,Gd,Xa.length),An.top+=-jd*Gd,An.bottom=An.top+Gd,An.left+=-Hd*qu,An.right=An.left+qu}(ln,S,F,W,ui,pe,ze,Ke,Qt,ut,fr,Lr),!function(An){for(let pa of An)if(pa.positionedGlyphs.length!==0)return!1;return!0}(Fi)&&ln}let Lw={9:!0,10:!0,11:!0,12:!0,13:!0,32:!0},V9={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},G9={40:!0};function _k(R,S,F,W,te,fe){if(S.imageName){let pe=W[S.imageName];return pe?pe.displaySize[0]*S.scale*eu/fe+te:0}{let pe=F[S.fontStack],ze=pe&&pe[R];return ze?ze.metrics.advance*S.scale+te:0}}function xk(R,S,F,W){let te=Math.pow(R-S,2);return W?R<S?te/2:2*te:te+Math.abs(F)*F}function H9(R,S,F){let W=0;return R===10&&(W-=1e4),F&&(W+=150),R!==40&&R!==65288||(W+=50),S!==41&&S!==65289||(W+=50),W}function Pw(R,S,F,W,te,fe){let pe=null,ze=xk(S,F,te,fe);for(let Ke of W){let ut=xk(S-Ke.x,F,te,fe)+Ke.badness;ut<=ze&&(pe=Ke,ze=ut)}return{index:R,x:S,priorBreak:pe,badness:ze}}function bk(R){return R?bk(R.priorBreak).concat(R.index):[]}function M1(R,S,F,W,te,fe){if(!R)return[];let pe=[],ze=function(Qt,fr,mr,Lr,zr,ui){let yi=0;for(let dn=0;dn<Qt.length();dn++){let Fi=Qt.getSection(dn);yi+=_k(Qt.getCharCode(dn),Fi,Lr,zr,fr,ui)}return yi/Math.max(1,Math.ceil(yi/mr))}(R,S,F,W,te,fe),Ke=R.text.indexOf("\u200B")>=0,ut=0;for(let Qt=0;Qt<R.length();Qt++){let fr=R.getSection(Qt),mr=R.getCharCode(Qt);if(Lw[mr]||(ut+=_k(mr,fr,W,te,S,fe)),Qt<R.length()-1){let Lr=!((Lt=mr)<11904)&&(!!zn["CJK Compatibility Forms"](Lt)||!!zn["CJK Compatibility"](Lt)||!!zn["CJK Strokes"](Lt)||!!zn["CJK Symbols and Punctuation"](Lt)||!!zn["Enclosed CJK Letters and Months"](Lt)||!!zn["Halfwidth and Fullwidth Forms"](Lt)||!!zn["Ideographic Description Characters"](Lt)||!!zn["Vertical Forms"](Lt)||Ts.test(String.fromCodePoint(Lt)));(V9[mr]||Lr||fr.imageName||Qt!==R.length()-2&&G9[R.getCharCode(Qt+1)])&&pe.push(Pw(Qt+1,ut,ze,pe,H9(mr,R.getCharCode(Qt+1),Lr&&Ke),!1))}}var Lt;return bk(Pw(R.length(),ut,ze,pe,0,!0))}function Iw(R){let S=.5,F=.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":F=1;break;case"top":case"top-right":case"top-left":F=0}return{horizontalAlign:S,verticalAlign:F}}function sm(R,S,F,W,te){if(!W&&!te)return;let fe=R[F],pe=(R[F].x+fe.metrics.advance*fe.scale)*W;for(let ze=S;ze<=F;ze++)R[ze].x-=pe,R[ze].y+=te}function jx(R,S,F){let{horizontalAlign:W,verticalAlign:te}=Iw(F),fe=S[0]-R.displaySize[0]*W,pe=S[1]-R.displaySize[1]*te;return{image:R,top:pe,bottom:pe+R.displaySize[1],left:fe,right:fe+R.displaySize[0]}}function wk(R){var S,F;let W=R.left,te=R.top,fe=R.right-W,pe=R.bottom-te,ze=(S=R.image.textFitWidth)!==null&&S!==void 0?S:"stretchOrShrink",Ke=(F=R.image.textFitHeight)!==null&&F!==void 0?F:"stretchOrShrink",ut=(R.image.content[2]-R.image.content[0])/(R.image.content[3]-R.image.content[1]);if(Ke==="proportional"){if(ze==="stretchOnly"&&fe/pe<ut||ze==="proportional"){let Lt=Math.ceil(pe*ut);W*=Lt/fe,fe=Lt}}else if(ze==="proportional"&&Ke==="stretchOnly"&&ut!==0&&fe/pe>ut){let Lt=Math.ceil(fe/ut);te*=Lt/pe,pe=Lt}return{x1:W,y1:te,x2:W+fe,y2:te+pe}}function Tk(R,S,F,W,te,fe){let pe=R.image,ze;if(pe.content){let ui=pe.content,yi=pe.pixelRatio||1;ze=[ui[0]/yi,ui[1]/yi,pe.displaySize[0]-ui[2]/yi,pe.displaySize[1]-ui[3]/yi]}let Ke=S.left*fe,ut=S.right*fe,Lt,Qt,fr,mr;F==="width"||F==="both"?(mr=te[0]+Ke-W[3],Qt=te[0]+ut+W[1]):(mr=te[0]+(Ke+ut-pe.displaySize[0])/2,Qt=mr+pe.displaySize[0]);let Lr=S.top*fe,zr=S.bottom*fe;return F==="height"||F==="both"?(Lt=te[1]+Lr-W[0],fr=te[1]+zr+W[2]):(Lt=te[1]+(Lr+zr-pe.displaySize[1])/2,fr=Lt+pe.displaySize[1]),{image:pe,top:Lt,right:Qt,bottom:fr,left:mr,collisionPadding:ze}}let Wx=255,v0=128,lm=Wx*v0;function Ak(R,S){let{expression:F}=S;if(F.kind==="constant")return{kind:"constant",layoutSize:F.evaluate(new is(R+1))};if(F.kind==="source")return{kind:"source"};{let{zoomStops:W,interpolationType:te}=F,fe=0;for(;fe<W.length&&W[fe]<=R;)fe++;fe=Math.max(0,fe-1);let pe=fe;for(;pe<W.length&&W[pe]<R+1;)pe++;pe=Math.min(W.length-1,pe);let ze=W[fe],Ke=W[pe];return F.kind==="composite"?{kind:"composite",minZoom:ze,maxZoom:Ke,interpolationType:te}:{kind:"camera",minZoom:ze,maxZoom:Ke,minSize:F.evaluate(new is(ze)),maxSize:F.evaluate(new is(Ke)),interpolationType:te}}}function nS(R,S,F){let W="never",te=R.get(S);return te?W=te:R.get(F)&&(W="always"),W}let j9=br.VectorTileFeature.types,W9=[{name:"a_fade_opacity",components:1,type:"Uint8",offset:0}];function Rw(R,S,F,W,te,fe,pe,ze,Ke,ut,Lt,Qt,fr){let mr=ze?Math.min(lm,Math.round(ze[0])):0,Lr=ze?Math.min(lm,Math.round(ze[1])):0;R.emplaceBack(S,F,Math.round(32*W),Math.round(32*te),fe,pe,(mr<<1)+(Ke?1:0),Lr,16*ut,16*Lt,256*Qt,256*fr)}function aS(R,S,F){R.emplaceBack(S.x,S.y,F),R.emplaceBack(S.x,S.y,F),R.emplaceBack(S.x,S.y,F),R.emplaceBack(S.x,S.y,F)}function oS(R){for(let S of R.sections)if(no(S.text))return!0;return!1}class sS{constructor(S){this.layoutVertexArray=new Ql,this.indexArray=new se,this.programConfigurations=S,this.segments=new Ye,this.dynamicLayoutVertexArray=new dc,this.opacityVertexArray=new Tl,this.hasVisibleVertices=!1,this.placedSymbolArray=new Aa}isEmpty(){return this.layoutVertexArray.length===0&&this.indexArray.length===0&&this.dynamicLayoutVertexArray.length===0&&this.opacityVertexArray.length===0}upload(S,F,W,te){this.isEmpty()||(W&&(this.layoutVertexBuffer=S.createVertexBuffer(this.layoutVertexArray,rm.members),this.indexBuffer=S.createIndexBuffer(this.indexArray,F),this.dynamicLayoutVertexBuffer=S.createVertexBuffer(this.dynamicLayoutVertexArray,w1.members,!0),this.opacityVertexBuffer=S.createVertexBuffer(this.opacityVertexArray,W9,!0),this.opacityVertexBuffer.itemSize=1),(W||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())}}Di("SymbolBuffers",sS);class um{constructor(S,F,W){this.layoutVertexArray=new S,this.layoutAttributes=F,this.indexArray=new W,this.segments=new Ye,this.collisionVertexArray=new X}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())}}Di("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(pe=>pe.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=Ii([]),this.placementViewportMatrix=Ii([]);let F=this.layers[0]._unevaluatedLayout._values;this.textSizeData=Ak(this.zoom,F["text-size"]),this.iconSizeData=Ak(this.zoom,F["icon-size"]);let W=this.layers[0].layout,te=W.get("symbol-sort-key"),fe=W.get("symbol-z-order");this.canOverlap=nS(W,"text-overlap","text-allow-overlap")!=="never"||nS(W,"icon-overlap","icon-allow-overlap")!=="never"||W.get("text-ignore-placement")||W.get("icon-ignore-placement"),this.sortFeaturesByKey=fe!=="viewport-y"&&!te.isConstant(),this.sortFeaturesByY=(fe==="viewport-y"||fe==="auto"&&!this.sortFeaturesByKey)&&this.canOverlap,W.get("symbol-placement")==="point"&&(this.writingModes=W.get("text-writing-mode").map(pe=>i.ah[pe])),this.stateDependentLayerIds=this.layers.filter(pe=>pe.isStateDependent()).map(pe=>pe.id),this.sourceID=S.sourceID}createArrays(){this.text=new sS(new Es(this.layers,this.zoom,S=>/^text/.test(S))),this.icon=new sS(new Es(this.layers,this.zoom,S=>/^icon/.test(S))),this.glyphOffsetArray=new ko,this.lineVertexArray=new Qa,this.symbolInstances=new $a,this.textAnchorOffsets=new Bo}calculateGlyphDependencies(S,F,W,te,fe){for(let pe=0;pe<S.length;pe++)if(F[S.charCodeAt(pe)]=!0,(W||te)&&fe){let ze=vc[S.charAt(pe)];ze&&(F[ze.charCodeAt(0)]=!0)}}populate(S,F,W){let te=this.layers[0],fe=te.layout,pe=fe.get("text-font"),ze=fe.get("text-field"),Ke=fe.get("icon-image"),ut=(ze.value.kind!=="constant"||ze.value.value instanceof ri&&!ze.value.value.isEmpty()||ze.value.value.toString().length>0)&&(pe.value.kind!=="constant"||pe.value.value.length>0),Lt=Ke.value.kind!=="constant"||!!Ke.value.value||Object.keys(Ke.parameters).length>0,Qt=fe.get("symbol-sort-key");if(this.features=[],!ut&&!Lt)return;let fr=F.iconDependencies,mr=F.glyphDependencies,Lr=F.availableImages,zr=new is(this.zoom);for(let{feature:ui,id:yi,index:dn,sourceLayerIndex:Fi}of S){let ln=te._featureFilter.needGeometry,An=Sl(ui,ln);if(!te._featureFilter.filter(zr,An,W))continue;let pa,ro;if(ln||(An.geometry=Qs(ui)),ut){let Xa=te.getValueAndResolveTokens("text-field",An,W,Lr),sa=ri.factory(Xa),Mo=this.hasRTLText=this.hasRTLText||oS(sa);(!Mo||_s.getRTLTextPluginStatus()==="unavailable"||Mo&&_s.isParsed())&&(pa=nm(sa,te,An))}if(Lt){let Xa=te.getValueAndResolveTokens("icon-image",An,W,Lr);ro=Xa instanceof en?Xa:en.fromString(Xa)}if(!pa&&!ro)continue;let Vo=this.sortFeaturesByKey?Qt.evaluate(An,{},W):void 0;if(this.features.push({id:yi,text:pa,icon:ro,index:dn,sourceLayerIndex:Fi,geometry:An.geometry,properties:ui.properties,type:j9[ui.type],sortKey:Vo}),ro&&(fr[ro.name]=!0),pa){let Xa=pe.evaluate(An,{},W).join(","),sa=fe.get("text-rotation-alignment")!=="viewport"&&fe.get("symbol-placement")!=="point";this.allowVerticalPlacement=this.writingModes&&this.writingModes.indexOf(i.ah.vertical)>=0;for(let Mo of pa.sections)if(Mo.image)fr[Mo.image.name]=!0;else{let fo=Ka(pa.toString()),lo=Mo.fontStack||Xa,Xn=mr[lo]=mr[lo]||{};this.calculateGlyphDependencies(Mo.text,Xn,sa,this.allowVerticalPlacement,fo)}}}fe.get("symbol-placement")==="line"&&(this.features=function(ui){let yi={},dn={},Fi=[],ln=0;function An(Xa){Fi.push(ui[Xa]),ln++}function pa(Xa,sa,Mo){let fo=dn[Xa];return delete dn[Xa],dn[sa]=fo,Fi[fo].geometry[0].pop(),Fi[fo].geometry[0]=Fi[fo].geometry[0].concat(Mo[0]),fo}function ro(Xa,sa,Mo){let fo=yi[sa];return delete yi[sa],yi[Xa]=fo,Fi[fo].geometry[0].shift(),Fi[fo].geometry[0]=Mo[0].concat(Fi[fo].geometry[0]),fo}function Vo(Xa,sa,Mo){let fo=Mo?sa[0][sa[0].length-1]:sa[0][0];return`${Xa}:${fo.x}:${fo.y}`}for(let Xa=0;Xa<ui.length;Xa++){let sa=ui[Xa],Mo=sa.geometry,fo=sa.text?sa.text.toString():null;if(!fo){An(Xa);continue}let lo=Vo(fo,Mo),Xn=Vo(fo,Mo,!0);if(lo in dn&&Xn in yi&&dn[lo]!==yi[Xn]){let Ro=ro(lo,Xn,Mo),uo=pa(lo,Xn,Fi[Ro].geometry);delete yi[lo],delete dn[Xn],dn[Vo(fo,Fi[uo].geometry,!0)]=uo,Fi[Ro].geometry=null}else lo in dn?pa(lo,Xn,Mo):Xn in yi?ro(lo,Xn,Mo):(An(Xa),yi[lo]=ln-1,dn[Xn]=ln-1)}return Fi.filter(Xa=>Xa.geometry)}(this.features)),this.sortFeaturesByKey&&this.features.sort((ui,yi)=>ui.sortKey-yi.sortKey)}update(S,F,W){this.stateDependentLayers.length&&(this.text.programConfigurations.updatePaintArrays(S,F,this.layers,W),this.icon.programConfigurations.updatePaintArrays(S,F,this.layers,W))}isEmpty(){return this.symbolInstances.length===0&&!this.hasRTLText}uploadPending(){return!this.uploaded||this.text.programConfigurations.needsUpload||this.icon.programConfigurations.needsUpload}upload(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,F){let W=this.lineVertexArray.length;if(S.segment!==void 0){let te=S.dist(F[S.segment+1]),fe=S.dist(F[S.segment]),pe={};for(let ze=S.segment+1;ze<F.length;ze++)pe[ze]={x:F[ze].x,y:F[ze].y,tileUnitDistanceFromAnchor:te},ze<F.length-1&&(te+=F[ze+1].dist(F[ze]));for(let ze=S.segment||0;ze>=0;ze--)pe[ze]={x:F[ze].x,y:F[ze].y,tileUnitDistanceFromAnchor:fe},ze>0&&(fe+=F[ze-1].dist(F[ze]));for(let ze=0;ze<F.length;ze++){let Ke=pe[ze];this.lineVertexArray.emplaceBack(Ke.x,Ke.y,Ke.tileUnitDistanceFromAnchor)}}return{lineStartIndex:W,lineLength:this.lineVertexArray.length-W}}addSymbols(S,F,W,te,fe,pe,ze,Ke,ut,Lt,Qt,fr){let mr=S.indexArray,Lr=S.layoutVertexArray,zr=S.segments.prepareSegment(4*F.length,Lr,mr,this.canOverlap?pe.sortKey:void 0),ui=this.glyphOffsetArray.length,yi=zr.vertexLength,dn=this.allowVerticalPlacement&&ze===i.ah.vertical?Math.PI/2:0,Fi=pe.text&&pe.text.sections;for(let ln=0;ln<F.length;ln++){let{tl:An,tr:pa,bl:ro,br:Vo,tex:Xa,pixelOffsetTL:sa,pixelOffsetBR:Mo,minFontScaleX:fo,minFontScaleY:lo,glyphOffset:Xn,isSDF:Ro,sectionIndex:uo}=F[ln],$o=zr.vertexLength,Ju=Xn[1];Rw(Lr,Ke.x,Ke.y,An.x,Ju+An.y,Xa.x,Xa.y,W,Ro,sa.x,sa.y,fo,lo),Rw(Lr,Ke.x,Ke.y,pa.x,Ju+pa.y,Xa.x+Xa.w,Xa.y,W,Ro,Mo.x,sa.y,fo,lo),Rw(Lr,Ke.x,Ke.y,ro.x,Ju+ro.y,Xa.x,Xa.y+Xa.h,W,Ro,sa.x,Mo.y,fo,lo),Rw(Lr,Ke.x,Ke.y,Vo.x,Ju+Vo.y,Xa.x+Xa.w,Xa.y+Xa.h,W,Ro,Mo.x,Mo.y,fo,lo),aS(S.dynamicLayoutVertexArray,Ke,dn),mr.emplaceBack($o,$o+1,$o+2),mr.emplaceBack($o+1,$o+2,$o+3),zr.vertexLength+=4,zr.primitiveLength+=2,this.glyphOffsetArray.emplaceBack(Xn[0]),ln!==F.length-1&&uo===F[ln+1].sectionIndex||S.programConfigurations.populatePaintArrays(Lr.length,pe,pe.index,{},fr,Fi&&Fi[uo])}S.placedSymbolArray.emplaceBack(Ke.x,Ke.y,ui,this.glyphOffsetArray.length-ui,yi,ut,Lt,Ke.segment,W?W[0]:0,W?W[1]:0,te[0],te[1],ze,0,!1,0,Qt)}_addCollisionDebugVertex(S,F,W,te,fe,pe){return F.emplaceBack(0,0),S.emplaceBack(W.x,W.y,te,fe,Math.round(pe.x),Math.round(pe.y))}addCollisionDebugVertices(S,F,W,te,fe,pe,ze){let Ke=fe.segments.prepareSegment(4,fe.layoutVertexArray,fe.indexArray),ut=Ke.vertexLength,Lt=fe.layoutVertexArray,Qt=fe.collisionVertexArray,fr=ze.anchorX,mr=ze.anchorY;this._addCollisionDebugVertex(Lt,Qt,pe,fr,mr,new u(S,F)),this._addCollisionDebugVertex(Lt,Qt,pe,fr,mr,new u(W,F)),this._addCollisionDebugVertex(Lt,Qt,pe,fr,mr,new u(W,te)),this._addCollisionDebugVertex(Lt,Qt,pe,fr,mr,new u(S,te)),Ke.vertexLength+=4;let Lr=fe.indexArray;Lr.emplaceBack(ut,ut+1),Lr.emplaceBack(ut+1,ut+2),Lr.emplaceBack(ut+2,ut+3),Lr.emplaceBack(ut+3,ut),Ke.primitiveLength+=4}addDebugCollisionBoxes(S,F,W,te){for(let fe=S;fe<F;fe++){let pe=this.collisionBoxArray.get(fe);this.addCollisionDebugVertices(pe.x1,pe.y1,pe.x2,pe.y2,te?this.textCollisionBox:this.iconCollisionBox,pe.anchorPoint,W)}}generateCollisionDebugBuffers(){this.hasDebugData()&&this.destroyDebugData(),this.textCollisionBox=new um(Al,oy.members,Te),this.iconCollisionBox=new um(Al,oy.members,Te);for(let S=0;S<this.symbolInstances.length;S++){let F=this.symbolInstances.get(S);this.addDebugCollisionBoxes(F.textBoxStartIndex,F.textBoxEndIndex,F,!0),this.addDebugCollisionBoxes(F.verticalTextBoxStartIndex,F.verticalTextBoxEndIndex,F,!0),this.addDebugCollisionBoxes(F.iconBoxStartIndex,F.iconBoxEndIndex,F,!1),this.addDebugCollisionBoxes(F.verticalIconBoxStartIndex,F.verticalIconBoxEndIndex,F,!1)}}_deserializeCollisionBoxesForSymbol(S,F,W,te,fe,pe,ze,Ke,ut){let Lt={};for(let Qt=F;Qt<W;Qt++){let fr=S.get(Qt);Lt.textBox={x1:fr.x1,y1:fr.y1,x2:fr.x2,y2:fr.y2,anchorPointX:fr.anchorPointX,anchorPointY:fr.anchorPointY},Lt.textFeatureIndex=fr.featureIndex;break}for(let Qt=te;Qt<fe;Qt++){let fr=S.get(Qt);Lt.verticalTextBox={x1:fr.x1,y1:fr.y1,x2:fr.x2,y2:fr.y2,anchorPointX:fr.anchorPointX,anchorPointY:fr.anchorPointY},Lt.verticalTextFeatureIndex=fr.featureIndex;break}for(let Qt=pe;Qt<ze;Qt++){let fr=S.get(Qt);Lt.iconBox={x1:fr.x1,y1:fr.y1,x2:fr.x2,y2:fr.y2,anchorPointX:fr.anchorPointX,anchorPointY:fr.anchorPointY},Lt.iconFeatureIndex=fr.featureIndex;break}for(let Qt=Ke;Qt<ut;Qt++){let fr=S.get(Qt);Lt.verticalIconBox={x1:fr.x1,y1:fr.y1,x2:fr.x2,y2:fr.y2,anchorPointX:fr.anchorPointX,anchorPointY:fr.anchorPointY},Lt.verticalIconFeatureIndex=fr.featureIndex;break}return Lt}deserializeCollisionBoxes(S){this.collisionArrays=[];for(let F=0;F<this.symbolInstances.length;F++){let W=this.symbolInstances.get(F);this.collisionArrays.push(this._deserializeCollisionBoxesForSymbol(S,W.textBoxStartIndex,W.textBoxEndIndex,W.verticalTextBoxStartIndex,W.verticalTextBoxEndIndex,W.iconBoxStartIndex,W.iconBoxEndIndex,W.verticalIconBoxStartIndex,W.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,F){let W=S.placedSymbolArray.get(F),te=W.vertexStartIndex+4*W.numGlyphs;for(let fe=W.vertexStartIndex;fe<te;fe+=4)S.indexArray.emplaceBack(fe,fe+1,fe+2),S.indexArray.emplaceBack(fe+1,fe+2,fe+3)}getSortedSymbolIndexes(S){if(this.sortedAngle===S&&this.symbolInstanceIndexes!==void 0)return this.symbolInstanceIndexes;let F=Math.sin(S),W=Math.cos(S),te=[],fe=[],pe=[];for(let ze=0;ze<this.symbolInstances.length;++ze){pe.push(ze);let Ke=this.symbolInstances.get(ze);te.push(0|Math.round(F*Ke.anchorX+W*Ke.anchorY)),fe.push(Ke.featureIndex)}return pe.sort((ze,Ke)=>te[ze]-te[Ke]||fe[Ke]-fe[ze]),pe}addToSortKeyRanges(S,F){let W=this.sortKeyRanges[this.sortKeyRanges.length-1];W&&W.sortKey===F?W.symbolInstanceEnd=S+1:this.sortKeyRanges.push({sortKey:F,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 F of this.symbolInstanceIndexes){let W=this.symbolInstances.get(F);this.featureSortOrder.push(W.featureIndex),[W.rightJustifiedTextSymbolIndex,W.centerJustifiedTextSymbolIndex,W.leftJustifiedTextSymbolIndex].forEach((te,fe,pe)=>{te>=0&&pe.indexOf(te)===fe&&this.addIndicesForPlacedSymbol(this.text,te)}),W.verticalPlacedTextSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.text,W.verticalPlacedTextSymbolIndex),W.placedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,W.placedIconSymbolIndex),W.verticalPlacedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,W.verticalPlacedIconSymbolIndex)}this.text.indexBuffer&&this.text.indexBuffer.updateData(this.text.indexArray),this.icon.indexBuffer&&this.icon.indexBuffer.updateData(this.icon.indexArray)}}}let wf,Xx;Di("SymbolBucket",E1,{omit:["layers","collisionBoxArray","features","compareText"]}),E1.MAX_GLYPHS=65535,E1.addDynamicAttributes=aS;var Dw={get paint(){return Xx=Xx||new ue({"icon-opacity":new oo(ce.paint_symbol["icon-opacity"]),"icon-color":new oo(ce.paint_symbol["icon-color"]),"icon-halo-color":new oo(ce.paint_symbol["icon-halo-color"]),"icon-halo-width":new oo(ce.paint_symbol["icon-halo-width"]),"icon-halo-blur":new oo(ce.paint_symbol["icon-halo-blur"]),"icon-translate":new Ua(ce.paint_symbol["icon-translate"]),"icon-translate-anchor":new Ua(ce.paint_symbol["icon-translate-anchor"]),"text-opacity":new oo(ce.paint_symbol["text-opacity"]),"text-color":new oo(ce.paint_symbol["text-color"],{runtimeType:Yt,getOverride:R=>R.textColor,hasOverride:R=>!!R.textColor}),"text-halo-color":new oo(ce.paint_symbol["text-halo-color"]),"text-halo-width":new oo(ce.paint_symbol["text-halo-width"]),"text-halo-blur":new oo(ce.paint_symbol["text-halo-blur"]),"text-translate":new Ua(ce.paint_symbol["text-translate"]),"text-translate-anchor":new Ua(ce.paint_symbol["text-translate-anchor"])})},get layout(){return wf=wf||new ue({"symbol-placement":new Ua(ce.layout_symbol["symbol-placement"]),"symbol-spacing":new Ua(ce.layout_symbol["symbol-spacing"]),"symbol-avoid-edges":new Ua(ce.layout_symbol["symbol-avoid-edges"]),"symbol-sort-key":new oo(ce.layout_symbol["symbol-sort-key"]),"symbol-z-order":new Ua(ce.layout_symbol["symbol-z-order"]),"icon-allow-overlap":new Ua(ce.layout_symbol["icon-allow-overlap"]),"icon-overlap":new Ua(ce.layout_symbol["icon-overlap"]),"icon-ignore-placement":new Ua(ce.layout_symbol["icon-ignore-placement"]),"icon-optional":new Ua(ce.layout_symbol["icon-optional"]),"icon-rotation-alignment":new Ua(ce.layout_symbol["icon-rotation-alignment"]),"icon-size":new oo(ce.layout_symbol["icon-size"]),"icon-text-fit":new Ua(ce.layout_symbol["icon-text-fit"]),"icon-text-fit-padding":new Ua(ce.layout_symbol["icon-text-fit-padding"]),"icon-image":new oo(ce.layout_symbol["icon-image"]),"icon-rotate":new oo(ce.layout_symbol["icon-rotate"]),"icon-padding":new oo(ce.layout_symbol["icon-padding"]),"icon-keep-upright":new Ua(ce.layout_symbol["icon-keep-upright"]),"icon-offset":new oo(ce.layout_symbol["icon-offset"]),"icon-anchor":new oo(ce.layout_symbol["icon-anchor"]),"icon-pitch-alignment":new Ua(ce.layout_symbol["icon-pitch-alignment"]),"text-pitch-alignment":new Ua(ce.layout_symbol["text-pitch-alignment"]),"text-rotation-alignment":new Ua(ce.layout_symbol["text-rotation-alignment"]),"text-field":new oo(ce.layout_symbol["text-field"]),"text-font":new oo(ce.layout_symbol["text-font"]),"text-size":new oo(ce.layout_symbol["text-size"]),"text-max-width":new oo(ce.layout_symbol["text-max-width"]),"text-line-height":new Ua(ce.layout_symbol["text-line-height"]),"text-letter-spacing":new oo(ce.layout_symbol["text-letter-spacing"]),"text-justify":new oo(ce.layout_symbol["text-justify"]),"text-radial-offset":new oo(ce.layout_symbol["text-radial-offset"]),"text-variable-anchor":new Ua(ce.layout_symbol["text-variable-anchor"]),"text-variable-anchor-offset":new oo(ce.layout_symbol["text-variable-anchor-offset"]),"text-anchor":new oo(ce.layout_symbol["text-anchor"]),"text-max-angle":new Ua(ce.layout_symbol["text-max-angle"]),"text-writing-mode":new Ua(ce.layout_symbol["text-writing-mode"]),"text-rotate":new oo(ce.layout_symbol["text-rotate"]),"text-padding":new Ua(ce.layout_symbol["text-padding"]),"text-keep-upright":new Ua(ce.layout_symbol["text-keep-upright"]),"text-transform":new oo(ce.layout_symbol["text-transform"]),"text-offset":new oo(ce.layout_symbol["text-offset"]),"text-allow-overlap":new Ua(ce.layout_symbol["text-allow-overlap"]),"text-overlap":new Ua(ce.layout_symbol["text-overlap"]),"text-ignore-placement":new Ua(ce.layout_symbol["text-ignore-placement"]),"text-optional":new Ua(ce.layout_symbol["text-optional"])})}};class Zx{constructor(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:Ut,this.defaultValue=S}evaluate(S){if(S.formattedSection){let F=this.defaultValue.property.overrides;if(F&&F.hasOverride(S.formattedSection))return F.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}}Di("FormatSectionOverride",Zx,{omit:["defaultValue"]});class uy extends B{constructor(S){super(S,Dw)}recalculate(S,F){if(super.recalculate(S,F),this.layout.get("icon-rotation-alignment")==="auto"&&(this.layout._values["icon-rotation-alignment"]=this.layout.get("symbol-placement")!=="point"?"map":"viewport"),this.layout.get("text-rotation-alignment")==="auto"&&(this.layout._values["text-rotation-alignment"]=this.layout.get("symbol-placement")!=="point"?"map":"viewport"),this.layout.get("text-pitch-alignment")==="auto"&&(this.layout._values["text-pitch-alignment"]=this.layout.get("text-rotation-alignment")==="map"?"map":"viewport"),this.layout.get("icon-pitch-alignment")==="auto"&&(this.layout._values["icon-pitch-alignment"]=this.layout.get("icon-rotation-alignment")),this.layout.get("symbol-placement")==="point"){let W=this.layout.get("text-writing-mode");if(W){let te=[];for(let fe of W)te.indexOf(fe)<0&&te.push(fe);this.layout._values["text-writing-mode"]=te}else this.layout._values["text-writing-mode"]=["horizontal"]}this._setPaintOverrides()}getValueAndResolveTokens(S,F,W,te){let fe=this.layout.get(S).evaluate(F,{},W,te),pe=this._unevaluatedLayout._values[S];return pe.isDataDriven()||Dc(pe.value)||!fe?fe:function(ze,Ke){return Ke.replace(/{([^{}]+)}/g,(ut,Lt)=>ze&&Lt in ze?String(ze[Lt]):"")}(F.properties,fe)}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 F=this.paint.get(S),W=new Zx(F),te=new Eu(W,F.property.specification),fe=null;fe=F.value.kind==="constant"||F.value.kind==="source"?new bc("source",te):new du("composite",te,F.value.zoomStops),this.paint._values[S]=new xu(F.property,fe,F.parameters)}}_handleOverridablePaintPropertyUpdate(S,F,W){return!(!this.layout||F.isDataDriven()||W.isDataDriven())&&uy.hasPaintOverride(this.layout,S)}static hasPaintOverride(S,F){let W=S.get("text-field"),te=Dw.paint.properties[F],fe=!1,pe=ze=>{for(let Ke of ze)if(te.overrides&&te.overrides.hasOverride(Ke))return void(fe=!0)};if(W.value.kind==="constant"&&W.value.value instanceof ri)pe(W.value.value.sections);else if(W.value.kind==="source"){let ze=ut=>{fe||(ut instanceof la&&Mn(ut.value)===ei?pe(ut.value.sections):ut instanceof Zl?pe(ut.sections):ut.eachChild(ze))},Ke=W.value;Ke._styleExpression&&ze(Ke._styleExpression.expression)}return fe}}let Sk;var Yx={get paint(){return Sk=Sk||new ue({"background-color":new Ua(ce.paint_background["background-color"]),"background-pattern":new hc(ce.paint_background["background-pattern"]),"background-opacity":new Ua(ce.paint_background["background-opacity"])})}};class X9 extends B{constructor(S){super(S,Yx)}}let lS;var Mk={get paint(){return lS=lS||new ue({"raster-opacity":new Ua(ce.paint_raster["raster-opacity"]),"raster-hue-rotate":new Ua(ce.paint_raster["raster-hue-rotate"]),"raster-brightness-min":new Ua(ce.paint_raster["raster-brightness-min"]),"raster-brightness-max":new Ua(ce.paint_raster["raster-brightness-max"]),"raster-saturation":new Ua(ce.paint_raster["raster-saturation"]),"raster-contrast":new Ua(ce.paint_raster["raster-contrast"]),"raster-resampling":new Ua(ce.paint_raster["raster-resampling"]),"raster-fade-duration":new Ua(ce.paint_raster["raster-fade-duration"])})}};class Kx extends B{constructor(S){super(S,Mk)}}class uS extends B{constructor(S){super(S,{}),this.onAdd=F=>{this.implementation.onAdd&&this.implementation.onAdd(F,F.painter.context.gl)},this.onRemove=F=>{this.implementation.onRemove&&this.implementation.onRemove(F,F.painter.context.gl)},this.implementation=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 cS{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 fS=63710088e-1;class dg{constructor(S,F){if(isNaN(S)||isNaN(F))throw new Error(`Invalid LngLat object: (${S}, ${F})`);if(this.lng=+S,this.lat=+F,this.lat>90||this.lat<-90)throw new Error("Invalid LngLat latitude value: must be between -90 and 90")}wrap(){return new dg(A(this.lng,-180,180),this.lat)}toArray(){return[this.lng,this.lat]}toString(){return`LngLat(${this.lng}, ${this.lat})`}distanceTo(S){let F=Math.PI/180,W=this.lat*F,te=S.lat*F,fe=Math.sin(W)*Math.sin(te)+Math.cos(W)*Math.cos(te)*Math.cos((S.lng-this.lng)*F);return fS*Math.acos(Math.min(fe,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 C1=2*Math.PI*fS;function Ek(R){return C1*Math.cos(R*Math.PI/180)}function Fw(R){return(180+R)/360}function Ck(R){return(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+R*Math.PI/360)))/360}function zw(R,S){return R/Ek(S)}function Jx(R){return 360/Math.PI*Math.atan(Math.exp((180-360*R)*Math.PI/180))-90}class $x{constructor(S,F,W=0){this.x=+S,this.y=+F,this.z=+W}static fromLngLat(S,F=0){let W=dg.convert(S);return new $x(Fw(W.lng),Ck(W.lat),zw(F,W.lat))}toLngLat(){return new dg(360*this.x-180,Jx(this.y))}toAltitude(){return this.z*Ek(Jx(this.y))}meterInMercatorCoordinateUnits(){return 1/C1*(S=Jx(this.y),1/Math.cos(S*Math.PI/180));var S}}function pp(R,S,F){var W=2*Math.PI*6378137/256/Math.pow(2,F);return[R*W-2*Math.PI*6378137/2,S*W-2*Math.PI*6378137/2]}class hS{constructor(S,F,W){if(!function(te,fe,pe){return!(te<0||te>25||pe<0||pe>=Math.pow(2,te)||fe<0||fe>=Math.pow(2,te))}(S,F,W))throw new Error(`x=${F}, y=${W}, 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=F,this.y=W,this.key=Qx(0,S,S,F,W)}equals(S){return this.z===S.z&&this.x===S.x&&this.y===S.y}url(S,F,W){let te=(pe=this.y,ze=this.z,Ke=pp(256*(fe=this.x),256*(pe=Math.pow(2,ze)-pe-1),ze),ut=pp(256*(fe+1),256*(pe+1),ze),Ke[0]+","+Ke[1]+","+ut[0]+","+ut[1]);var fe,pe,ze,Ke,ut;let Lt=function(Qt,fr,mr){let Lr,zr="";for(let ui=Qt;ui>0;ui--)Lr=1<<ui-1,zr+=(fr&Lr?1:0)+(mr&Lr?2:0);return zr}(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(W==="tms"?Math.pow(2,this.z)-this.y-1:this.y)).replace(/{ratio}/g,F>1?"@2x":"").replace(/{quadkey}/g,Lt).replace(/{bbox-epsg-3857}/g,te)}isChildOf(S){let F=this.z-S.z;return F>0&&S.x===this.x>>F&&S.y===this.y>>F}getTilePoint(S){let F=Math.pow(2,this.z);return new u((S.x*F-this.x)*Ha,(S.y*F-this.y)*Ha)}toString(){return`${this.z}/${this.x}/${this.y}`}}class kk{constructor(S,F){this.wrap=S,this.canonical=F,this.key=Qx(S,F.z,F.z,F.x,F.y)}}class Jv{constructor(S,F,W,te,fe){if(S<W)throw new Error(`overscaledZ should be >= z; overscaledZ = ${S}; z = ${W}`);this.overscaledZ=S,this.wrap=F,this.canonical=new hS(W,+te,+fe),this.key=Qx(F,S,W,te,fe)}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 F=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>>F,this.canonical.y>>F)}calculateScaledKey(S,F){if(S>this.overscaledZ)throw new Error(`targetZ > this.overscaledZ; targetZ = ${S}; overscaledZ = ${this.overscaledZ}`);let W=this.canonical.z-S;return S>this.canonical.z?Qx(this.wrap*+F,S,this.canonical.z,this.canonical.x,this.canonical.y):Qx(this.wrap*+F,S,S,this.canonical.x>>W,this.canonical.y>>W)}isChildOf(S){if(S.wrap!==this.wrap)return!1;let F=this.canonical.z-S.canonical.z;return S.overscaledZ===0||S.overscaledZ<this.overscaledZ&&S.canonical.x===this.canonical.x>>F&&S.canonical.y===this.canonical.y>>F}children(S){if(this.overscaledZ>=S)return[new Jv(this.overscaledZ+1,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y)];let F=this.canonical.z+1,W=2*this.canonical.x,te=2*this.canonical.y;return[new Jv(F,this.wrap,F,W,te),new Jv(F,this.wrap,F,W+1,te),new Jv(F,this.wrap,F,W,te+1),new Jv(F,this.wrap,F,W+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 kk(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,F,W,te){(R*=2)<0&&(R=-1*R-1);let fe=1<<F;return(fe*fe*R+fe*te+W).toString(36)+F.toString(36)+S.toString(36)}Di("CanonicalTileID",hS),Di("OverscaledTileID",Jv,{omit:["posMatrix"]});class Lk{constructor(S,F,W,te=1,fe=1,pe=1,ze=0){if(this.uid=S,F.height!==F.width)throw new RangeError("DEM tiles must be square");if(W&&!["mapbox","terrarium","custom"].includes(W))return void T(`"${W}" is not a valid encoding type. Valid types include "mapbox", "terrarium" and "custom".`);this.stride=F.height;let Ke=this.dim=F.height-2;switch(this.data=new Uint32Array(F.data.buffer),W){case"terrarium":this.redFactor=256,this.greenFactor=1,this.blueFactor=1/256,this.baseShift=32768;break;case"custom":this.redFactor=te,this.greenFactor=fe,this.blueFactor=pe,this.baseShift=ze;break;default:this.redFactor=6553.6,this.greenFactor=25.6,this.blueFactor=.1,this.baseShift=1e4}for(let ut=0;ut<Ke;ut++)this.data[this._idx(-1,ut)]=this.data[this._idx(0,ut)],this.data[this._idx(Ke,ut)]=this.data[this._idx(Ke-1,ut)],this.data[this._idx(ut,-1)]=this.data[this._idx(ut,0)],this.data[this._idx(ut,Ke)]=this.data[this._idx(ut,Ke-1)];this.data[this._idx(-1,-1)]=this.data[this._idx(0,0)],this.data[this._idx(Ke,-1)]=this.data[this._idx(Ke-1,0)],this.data[this._idx(-1,Ke)]=this.data[this._idx(0,Ke-1)],this.data[this._idx(Ke,Ke)]=this.data[this._idx(Ke-1,Ke-1)],this.min=Number.MAX_SAFE_INTEGER,this.max=Number.MIN_SAFE_INTEGER;for(let ut=0;ut<Ke;ut++)for(let Lt=0;Lt<Ke;Lt++){let Qt=this.get(ut,Lt);Qt>this.max&&(this.max=Qt),Qt<this.min&&(this.min=Qt)}}get(S,F){let W=new Uint8Array(this.data.buffer),te=4*this._idx(S,F);return this.unpack(W[te],W[te+1],W[te+2])}getUnpackVector(){return[this.redFactor,this.greenFactor,this.blueFactor,this.baseShift]}_idx(S,F){if(S<-1||S>=this.dim+1||F<-1||F>=this.dim+1)throw new RangeError("out of range source coordinates for DEM data");return(F+1)*this.stride+(S+1)}unpack(S,F,W){return S*this.redFactor+F*this.greenFactor+W*this.blueFactor-this.baseShift}getPixels(){return new Yi({width:this.stride,height:this.stride},new Uint8Array(this.data.buffer))}backfillBorder(S,F,W){if(this.dim!==S.dim)throw new Error("dem dimension mismatch");let te=F*this.dim,fe=F*this.dim+this.dim,pe=W*this.dim,ze=W*this.dim+this.dim;switch(F){case-1:te=fe-1;break;case 1:fe=te+1}switch(W){case-1:pe=ze-1;break;case 1:ze=pe+1}let Ke=-F*this.dim,ut=-W*this.dim;for(let Lt=pe;Lt<ze;Lt++)for(let Qt=te;Qt<fe;Qt++)this.data[this._idx(Qt,Lt)]=S.data[this._idx(Qt+Ke,Lt+ut)]}}Di("DEMData",Lk);class Pk{constructor(S){this._stringToNumber={},this._numberToString=[];for(let F=0;F<S.length;F++){let W=S[F];this._stringToNumber[W]=F,this._numberToString[F]=W}}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 dS{constructor(S,F,W,te,fe){this.type="Feature",this._vectorTileFeature=S,S._z=F,S._x=W,S._y=te,this.properties=S.properties,this.id=fe}get geometry(){return this._geometry===void 0&&(this._geometry=this._vectorTileFeature.toGeoJSON(this._vectorTileFeature._x,this._vectorTileFeature._y,this._vectorTileFeature._z).geometry),this._geometry}set geometry(S){this._geometry=S}toJSON(){let S={geometry:this.geometry};for(let F in this)F!=="_geometry"&&F!=="_vectorTileFeature"&&(S[F]=this[F]);return S}}class cy{constructor(S,F){this.tileID=S,this.x=S.canonical.x,this.y=S.canonical.y,this.z=S.canonical.z,this.grid=new $i(Ha,16,0),this.grid3D=new $i(Ha,16,0),this.featureIndexArray=new As,this.promoteId=F}insert(S,F,W,te,fe,pe){let ze=this.featureIndexArray.length;this.featureIndexArray.emplaceBack(W,te,fe);let Ke=pe?this.grid3D:this.grid;for(let ut=0;ut<F.length;ut++){let Lt=F[ut],Qt=[1/0,1/0,-1/0,-1/0];for(let fr=0;fr<Lt.length;fr++){let mr=Lt[fr];Qt[0]=Math.min(Qt[0],mr.x),Qt[1]=Math.min(Qt[1],mr.y),Qt[2]=Math.max(Qt[2],mr.x),Qt[3]=Math.max(Qt[3],mr.y)}Qt[0]<Ha&&Qt[1]<Ha&&Qt[2]>=0&&Qt[3]>=0&&Ke.insert(ze,Qt[0],Qt[1],Qt[2],Qt[3])}}loadVTLayers(){return this.vtLayers||(this.vtLayers=new br.VectorTile(new tS(this.rawTileData)).layers,this.sourceLayerCoder=new Pk(this.vtLayers?Object.keys(this.vtLayers).sort():["_geojsonTileLayer"])),this.vtLayers}query(S,F,W,te){this.loadVTLayers();let fe=S.params||{},pe=Ha/S.tileSize/S.scale,ze=Fc(fe.filter),Ke=S.queryGeometry,ut=S.queryPadding*pe,Lt=Rk(Ke),Qt=this.grid.query(Lt.minX-ut,Lt.minY-ut,Lt.maxX+ut,Lt.maxY+ut),fr=Rk(S.cameraQueryGeometry),mr=this.grid3D.query(fr.minX-ut,fr.minY-ut,fr.maxX+ut,fr.maxY+ut,(ui,yi,dn,Fi)=>function(ln,An,pa,ro,Vo){for(let sa of ln)if(An<=sa.x&&pa<=sa.y&&ro>=sa.x&&Vo>=sa.y)return!0;let Xa=[new u(An,pa),new u(An,Vo),new u(ro,Vo),new u(ro,pa)];if(ln.length>2){for(let sa of Xa)if(Ni(ln,sa))return!0}for(let sa=0;sa<ln.length-1;sa++)if(Oi(ln[sa],ln[sa+1],Xa))return!0;return!1}(S.cameraQueryGeometry,ui-ut,yi-ut,dn+ut,Fi+ut));for(let ui of mr)Qt.push(ui);Qt.sort(Z9);let Lr={},zr;for(let ui=0;ui<Qt.length;ui++){let yi=Qt[ui];if(yi===zr)continue;zr=yi;let dn=this.featureIndexArray.get(yi),Fi=null;this.loadMatchingFeature(Lr,dn.bucketIndex,dn.sourceLayerIndex,dn.featureIndex,ze,fe.layers,fe.availableImages,F,W,te,(ln,An,pa)=>(Fi||(Fi=Qs(ln)),An.queryIntersectsFeature(Ke,ln,pa,Fi,this.z,S.transform,pe,S.pixelPosMatrix)))}return Lr}loadMatchingFeature(S,F,W,te,fe,pe,ze,Ke,ut,Lt,Qt){let fr=this.bucketLayerIDs[F];if(pe&&!function(ui,yi){for(let dn=0;dn<ui.length;dn++)if(yi.indexOf(ui[dn])>=0)return!0;return!1}(pe,fr))return;let mr=this.sourceLayerCoder.decode(W),Lr=this.vtLayers[mr].feature(te);if(fe.needGeometry){let ui=Sl(Lr,!0);if(!fe.filter(new is(this.tileID.overscaledZ),ui,this.tileID.canonical))return}else if(!fe.filter(new is(this.tileID.overscaledZ),Lr))return;let zr=this.getId(Lr,mr);for(let ui=0;ui<fr.length;ui++){let yi=fr[ui];if(pe&&pe.indexOf(yi)<0)continue;let dn=Ke[yi];if(!dn)continue;let Fi={};zr&&Lt&&(Fi=Lt.getState(dn.sourceLayer||"_geojsonTileLayer",zr));let ln=L({},ut[yi]);ln.paint=Ik(ln.paint,dn.paint,Lr,Fi,ze),ln.layout=Ik(ln.layout,dn.layout,Lr,Fi,ze);let An=!Qt||Qt(Lr,dn,Fi);if(!An)continue;let pa=new dS(Lr,this.z,this.x,this.y,zr);pa.layer=ln;let ro=S[yi];ro===void 0&&(ro=S[yi]=[]),ro.push({featureIndex:te,feature:pa,intersectionZ:An})}}lookupSymbolFeatures(S,F,W,te,fe,pe,ze,Ke){let ut={};this.loadVTLayers();let Lt=Fc(fe);for(let Qt of S)this.loadMatchingFeature(ut,W,te,Qt,Lt,pe,ze,Ke,F);return ut}hasLayer(S){for(let F of this.bucketLayerIDs)for(let W of F)if(S===W)return!0;return!1}getId(S,F){let W=S.id;return this.promoteId&&(W=S.properties[typeof this.promoteId=="string"?this.promoteId:this.promoteId[F]],typeof W=="boolean"&&(W=Number(W))),W}}function Ik(R,S,F,W,te){return k(R,(fe,pe)=>{let ze=S instanceof Ac?S.get(pe):null;return ze&&ze.evaluate?ze.evaluate(F,W,te):ze})}function Rk(R){let S=1/0,F=1/0,W=-1/0,te=-1/0;for(let fe of R)S=Math.min(S,fe.x),F=Math.min(F,fe.y),W=Math.max(W,fe.x),te=Math.max(te,fe.y);return{minX:S,minY:F,maxX:W,maxY:te}}function Z9(R,S){return S-R}function Dk(R,S,F,W,te){let fe=[];for(let pe=0;pe<R.length;pe++){let ze=R[pe],Ke;for(let ut=0;ut<ze.length-1;ut++){let Lt=ze[ut],Qt=ze[ut+1];Lt.x<S&&Qt.x<S||(Lt.x<S?Lt=new u(S,Lt.y+(S-Lt.x)/(Qt.x-Lt.x)*(Qt.y-Lt.y))._round():Qt.x<S&&(Qt=new u(S,Lt.y+(S-Lt.x)/(Qt.x-Lt.x)*(Qt.y-Lt.y))._round()),Lt.y<F&&Qt.y<F||(Lt.y<F?Lt=new u(Lt.x+(F-Lt.y)/(Qt.y-Lt.y)*(Qt.x-Lt.x),F)._round():Qt.y<F&&(Qt=new u(Lt.x+(F-Lt.y)/(Qt.y-Lt.y)*(Qt.x-Lt.x),F)._round()),Lt.x>=W&&Qt.x>=W||(Lt.x>=W?Lt=new u(W,Lt.y+(W-Lt.x)/(Qt.x-Lt.x)*(Qt.y-Lt.y))._round():Qt.x>=W&&(Qt=new u(W,Lt.y+(W-Lt.x)/(Qt.x-Lt.x)*(Qt.y-Lt.y))._round()),Lt.y>=te&&Qt.y>=te||(Lt.y>=te?Lt=new u(Lt.x+(te-Lt.y)/(Qt.y-Lt.y)*(Qt.x-Lt.x),te)._round():Qt.y>=te&&(Qt=new u(Lt.x+(te-Lt.y)/(Qt.y-Lt.y)*(Qt.x-Lt.x),te)._round()),Ke&&Lt.equals(Ke[Ke.length-1])||(Ke=[Lt],fe.push(Ke)),Ke.push(Qt)))))}}return fe}Di("FeatureIndex",cy,{omit:["rawTileData","sourceLayerCoder"]});class vg extends u{constructor(S,F,W,te){super(S,F),this.angle=W,te!==void 0&&(this.segment=te)}clone(){return new vg(this.x,this.y,this.angle,this.segment)}}function vS(R,S,F,W,te){if(S.segment===void 0||F===0)return!0;let fe=S,pe=S.segment+1,ze=0;for(;ze>-F/2;){if(pe--,pe<0)return!1;ze-=R[pe].dist(fe),fe=R[pe]}ze+=R[pe].dist(R[pe+1]),pe++;let Ke=[],ut=0;for(;ze<F/2;){let Lt=R[pe],Qt=R[pe+1];if(!Qt)return!1;let fr=R[pe-1].angleTo(Lt)-Lt.angleTo(Qt);for(fr=Math.abs((fr+3*Math.PI)%(2*Math.PI)-Math.PI),Ke.push({distance:ze,angleDelta:fr}),ut+=fr;ze-Ke[0].distance>W;)ut-=Ke.shift().angleDelta;if(ut>te)return!1;pe++,ze+=Lt.dist(Qt)}return!0}function Fk(R){let S=0;for(let F=0;F<R.length-1;F++)S+=R[F].dist(R[F+1]);return S}function zk(R,S,F){return R?.6*S*F:0}function Ok(R,S){return Math.max(R?R.right-R.left:0,S?S.right-S.left:0)}function Y9(R,S,F,W,te,fe){let pe=zk(F,te,fe),ze=Ok(F,W)*fe,Ke=0,ut=Fk(R)/2;for(let Lt=0;Lt<R.length-1;Lt++){let Qt=R[Lt],fr=R[Lt+1],mr=Qt.dist(fr);if(Ke+mr>ut){let Lr=(ut-Ke)/mr,zr=Lo.number(Qt.x,fr.x,Lr),ui=Lo.number(Qt.y,fr.y,Lr),yi=new vg(zr,ui,fr.angleTo(Qt),Lt);return yi._round(),!pe||vS(R,yi,ze,pe,S)?yi:void 0}Ke+=mr}}function K9(R,S,F,W,te,fe,pe,ze,Ke){let ut=zk(W,fe,pe),Lt=Ok(W,te),Qt=Lt*pe,fr=R[0].x===0||R[0].x===Ke||R[0].y===0||R[0].y===Ke;return S-Qt<S/4&&(S=Qt+S/4),qk(R,fr?S/2*ze%S:(Lt/2+2*fe)*pe*ze%S,S,ut,F,Qt,fr,!1,Ke)}function qk(R,S,F,W,te,fe,pe,ze,Ke){let ut=fe/2,Lt=Fk(R),Qt=0,fr=S-F,mr=[];for(let Lr=0;Lr<R.length-1;Lr++){let zr=R[Lr],ui=R[Lr+1],yi=zr.dist(ui),dn=ui.angleTo(zr);for(;fr+F<Qt+yi;){fr+=F;let Fi=(fr-Qt)/yi,ln=Lo.number(zr.x,ui.x,Fi),An=Lo.number(zr.y,ui.y,Fi);if(ln>=0&&ln<Ke&&An>=0&&An<Ke&&fr-ut>=0&&fr+ut<=Lt){let pa=new vg(ln,An,dn,Lr);pa._round(),W&&!vS(R,pa,fe,W,te)||mr.push(pa)}}Qt+=yi}return ze||mr.length||pe||(mr=qk(R,Qt/2,F,W,te,fe,pe,!0,Ke)),mr}Di("Anchor",vg);let k1=Md;function Bk(R,S,F,W){let te=[],fe=R.image,pe=fe.pixelRatio,ze=fe.paddedRect.w-2*k1,Ke=fe.paddedRect.h-2*k1,ut={x1:R.left,y1:R.top,x2:R.right,y2:R.bottom},Lt=fe.stretchX||[[0,ze]],Qt=fe.stretchY||[[0,Ke]],fr=(Xn,Ro)=>Xn+Ro[1]-Ro[0],mr=Lt.reduce(fr,0),Lr=Qt.reduce(fr,0),zr=ze-mr,ui=Ke-Lr,yi=0,dn=mr,Fi=0,ln=Lr,An=0,pa=zr,ro=0,Vo=ui;if(fe.content&&W){let Xn=fe.content,Ro=Xn[2]-Xn[0],uo=Xn[3]-Xn[1];(fe.textFitWidth||fe.textFitHeight)&&(ut=wk(R)),yi=pg(Lt,0,Xn[0]),Fi=pg(Qt,0,Xn[1]),dn=pg(Lt,Xn[0],Xn[2]),ln=pg(Qt,Xn[1],Xn[3]),An=Xn[0]-yi,ro=Xn[1]-Fi,pa=Ro-dn,Vo=uo-ln}let Xa=ut.x1,sa=ut.y1,Mo=ut.x2-Xa,fo=ut.y2-sa,lo=(Xn,Ro,uo,$o)=>{let Ju=Ow(Xn.stretch-yi,dn,Mo,Xa),qu=L1(Xn.fixed-An,pa,Xn.stretch,mr),Th=Ow(Ro.stretch-Fi,ln,fo,sa),$v=L1(Ro.fixed-ro,Vo,Ro.stretch,Lr),ld=Ow(uo.stretch-yi,dn,Mo,Xa),Ah=L1(uo.fixed-An,pa,uo.stretch,mr),Gd=Ow($o.stretch-Fi,ln,fo,sa),Hd=L1($o.fixed-ro,Vo,$o.stretch,Lr),jd=new u(Ju,Th),Tf=new u(ld,Th),Sh=new u(ld,Gd),Ed=new u(Ju,Gd),ud=new u(qu/pe,$v/pe),Hh=new u(Ah/pe,Hd/pe),Rf=S*Math.PI/180;if(Rf){let tu=Math.sin(Rf),pc=Math.cos(Rf),$u=[pc,-tu,tu,pc];jd._matMult($u),Tf._matMult($u),Ed._matMult($u),Sh._matMult($u)}let Iv=Xn.stretch+Xn.fixed,lv=Ro.stretch+Ro.fixed;return{tl:jd,tr:Tf,bl:Ed,br:Sh,tex:{x:fe.paddedRect.x+k1+Iv,y:fe.paddedRect.y+k1+lv,w:uo.stretch+uo.fixed-Iv,h:$o.stretch+$o.fixed-lv},writingMode:void 0,glyphOffset:[0,0],sectionIndex:0,pixelOffsetTL:ud,pixelOffsetBR:Hh,minFontScaleX:pa/pe/Mo,minFontScaleY:Vo/pe/fo,isSDF:F}};if(W&&(fe.stretchX||fe.stretchY)){let Xn=Nk(Lt,zr,mr),Ro=Nk(Qt,ui,Lr);for(let uo=0;uo<Xn.length-1;uo++){let $o=Xn[uo],Ju=Xn[uo+1];for(let qu=0;qu<Ro.length-1;qu++)te.push(lo($o,Ro[qu],Ju,Ro[qu+1]))}}else te.push(lo({fixed:0,stretch:-1},{fixed:0,stretch:-1},{fixed:0,stretch:ze+1},{fixed:0,stretch:Ke+1}));return te}function pg(R,S,F){let W=0;for(let te of R)W+=Math.max(S,Math.min(F,te[1]))-Math.max(S,Math.min(F,te[0]));return W}function Nk(R,S,F){let W=[{fixed:-k1,stretch:0}];for(let[te,fe]of R){let pe=W[W.length-1];W.push({fixed:te-pe.stretch,stretch:pe.stretch}),W.push({fixed:te-pe.stretch,stretch:pe.stretch+(fe-te)})}return W.push({fixed:S+k1,stretch:F}),W}function Ow(R,S,F,W){return R/S*F+W}function L1(R,S,F,W){return R-S*F/W}class cm{constructor(S,F,W,te,fe,pe,ze,Ke,ut,Lt){var Qt;if(this.boxStartIndex=S.length,ut){let fr=pe.top,mr=pe.bottom,Lr=pe.collisionPadding;Lr&&(fr-=Lr[1],mr+=Lr[3]);let zr=mr-fr;zr>0&&(zr=Math.max(10,zr),this.circleDiameter=zr)}else{let fr=!((Qt=pe.image)===null||Qt===void 0)&&Qt.content&&(pe.image.textFitWidth||pe.image.textFitHeight)?wk(pe):{x1:pe.left,y1:pe.top,x2:pe.right,y2:pe.bottom};fr.y1=fr.y1*ze-Ke[0],fr.y2=fr.y2*ze+Ke[2],fr.x1=fr.x1*ze-Ke[3],fr.x2=fr.x2*ze+Ke[1];let mr=pe.collisionPadding;if(mr&&(fr.x1-=mr[0]*ze,fr.y1-=mr[1]*ze,fr.x2+=mr[2]*ze,fr.y2+=mr[3]*ze),Lt){let Lr=new u(fr.x1,fr.y1),zr=new u(fr.x2,fr.y1),ui=new u(fr.x1,fr.y2),yi=new u(fr.x2,fr.y2),dn=Lt*Math.PI/180;Lr._rotate(dn),zr._rotate(dn),ui._rotate(dn),yi._rotate(dn),fr.x1=Math.min(Lr.x,zr.x,ui.x,yi.x),fr.x2=Math.max(Lr.x,zr.x,ui.x,yi.x),fr.y1=Math.min(Lr.y,zr.y,ui.y,yi.y),fr.y2=Math.max(Lr.y,zr.y,ui.y,yi.y)}S.emplaceBack(F.x,F.y,fr.x1,fr.y1,fr.x2,fr.y2,W,te,fe)}this.boxEndIndex=S.length}}class Vp{constructor(S=[],F=(W,te)=>W<te?-1:W>te?1:0){if(this.data=S,this.length=this.data.length,this.compare=F,this.length>0)for(let W=(this.length>>1)-1;W>=0;W--)this._down(W)}push(S){this.data.push(S),this._up(this.length++)}pop(){if(this.length===0)return;let S=this.data[0],F=this.data.pop();return--this.length>0&&(this.data[0]=F,this._down(0)),S}peek(){return this.data[0]}_up(S){let{data:F,compare:W}=this,te=F[S];for(;S>0;){let fe=S-1>>1,pe=F[fe];if(W(te,pe)>=0)break;F[S]=pe,S=fe}F[S]=te}_down(S){let{data:F,compare:W}=this,te=this.length>>1,fe=F[S];for(;S<te;){let pe=1+(S<<1),ze=pe+1;if(ze<this.length&&W(F[ze],F[pe])<0&&(pe=ze),W(F[pe],fe)>=0)break;F[S]=F[pe],S=pe}F[S]=fe}}function J9(R,S=1,F=!1){let W=1/0,te=1/0,fe=-1/0,pe=-1/0,ze=R[0];for(let mr=0;mr<ze.length;mr++){let Lr=ze[mr];(!mr||Lr.x<W)&&(W=Lr.x),(!mr||Lr.y<te)&&(te=Lr.y),(!mr||Lr.x>fe)&&(fe=Lr.x),(!mr||Lr.y>pe)&&(pe=Lr.y)}let Ke=Math.min(fe-W,pe-te),ut=Ke/2,Lt=new Vp([],$9);if(Ke===0)return new u(W,te);for(let mr=W;mr<fe;mr+=Ke)for(let Lr=te;Lr<pe;Lr+=Ke)Lt.push(new P1(mr+ut,Lr+ut,ut,R));let Qt=function(mr){let Lr=0,zr=0,ui=0,yi=mr[0];for(let dn=0,Fi=yi.length,ln=Fi-1;dn<Fi;ln=dn++){let An=yi[dn],pa=yi[ln],ro=An.x*pa.y-pa.x*An.y;zr+=(An.x+pa.x)*ro,ui+=(An.y+pa.y)*ro,Lr+=3*ro}return new P1(zr/Lr,ui/Lr,0,mr)}(R),fr=Lt.length;for(;Lt.length;){let mr=Lt.pop();(mr.d>Qt.d||!Qt.d)&&(Qt=mr,F&&console.log("found best %d after %d probes",Math.round(1e4*mr.d)/1e4,fr)),mr.max-Qt.d<=S||(ut=mr.h/2,Lt.push(new P1(mr.p.x-ut,mr.p.y-ut,ut,R)),Lt.push(new P1(mr.p.x+ut,mr.p.y-ut,ut,R)),Lt.push(new P1(mr.p.x-ut,mr.p.y+ut,ut,R)),Lt.push(new P1(mr.p.x+ut,mr.p.y+ut,ut,R)),fr+=4)}return F&&(console.log(`num probes: ${fr}`),console.log(`best distance: ${Qt.d}`)),Qt.p}function $9(R,S){return S.max-R.max}function P1(R,S,F,W){this.p=new u(R,S),this.h=F,this.d=function(te,fe){let pe=!1,ze=1/0;for(let Ke=0;Ke<fe.length;Ke++){let ut=fe[Ke];for(let Lt=0,Qt=ut.length,fr=Qt-1;Lt<Qt;fr=Lt++){let mr=ut[Lt],Lr=ut[fr];mr.y>te.y!=Lr.y>te.y&&te.x<(Lr.x-mr.x)*(te.y-mr.y)/(Lr.y-mr.y)+mr.x&&(pe=!pe),ze=Math.min(ze,Vr(te,mr,Lr))}}return(pe?1:-1)*Math.sqrt(ze)}(this.p,W),this.max=this.d+this.h*Math.SQRT2}var sd;i.aq=void 0,(sd=i.aq||(i.aq={}))[sd.center=1]="center",sd[sd.left=2]="left",sd[sd.right=3]="right",sd[sd.top=4]="top",sd[sd.bottom=5]="bottom",sd[sd["top-left"]=6]="top-left",sd[sd["top-right"]=7]="top-right",sd[sd["bottom-left"]=8]="bottom-left",sd[sd["bottom-right"]=9]="bottom-right";let fm=7,fy=Number.POSITIVE_INFINITY;function pS(R,S){return S[1]!==fy?function(F,W,te){let fe=0,pe=0;switch(W=Math.abs(W),te=Math.abs(te),F){case"top-right":case"top-left":case"top":pe=te-fm;break;case"bottom-right":case"bottom-left":case"bottom":pe=-te+fm}switch(F){case"top-right":case"bottom-right":case"right":fe=-W;break;case"top-left":case"bottom-left":case"left":fe=W}return[fe,pe]}(R,S[0],S[1]):function(F,W){let te=0,fe=0;W<0&&(W=0);let pe=W/Math.SQRT2;switch(F){case"top-right":case"top-left":fe=pe-fm;break;case"bottom-right":case"bottom-left":fe=-pe+fm;break;case"bottom":fe=-W+fm;break;case"top":fe=W-fm}switch(F){case"top-right":case"bottom-right":te=-pe;break;case"top-left":case"bottom-left":te=pe;break;case"left":te=W;break;case"right":te=-W}return[te,fe]}(R,S[0])}function Uk(R,S,F){var W;let te=R.layout,fe=(W=te.get("text-variable-anchor-offset"))===null||W===void 0?void 0:W.evaluate(S,{},F);if(fe){let ze=fe.values,Ke=[];for(let ut=0;ut<ze.length;ut+=2){let Lt=Ke[ut]=ze[ut],Qt=ze[ut+1].map(fr=>fr*eu);Lt.startsWith("top")?Qt[1]-=fm:Lt.startsWith("bottom")&&(Qt[1]+=fm),Ke[ut+1]=Qt}return new Ji(Ke)}let pe=te.get("text-variable-anchor");if(pe){let ze;ze=R._unevaluatedLayout.getValue("text-radial-offset")!==void 0?[te.get("text-radial-offset").evaluate(S,{},F)*eu,fy]:te.get("text-offset").evaluate(S,{},F).map(ut=>ut*eu);let Ke=[];for(let ut of pe)Ke.push(ut,pS(ut,ze));return new Ji(Ke)}return null}function gS(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 Q9(R,S,F,W,te,fe,pe,ze,Ke,ut,Lt){let Qt=fe.textMaxSize.evaluate(S,{});Qt===void 0&&(Qt=pe);let fr=R.layers[0].layout,mr=fr.get("icon-offset").evaluate(S,{},Lt),Lr=Gk(F.horizontal),zr=pe/24,ui=R.tilePixelRatio*zr,yi=R.tilePixelRatio*Qt/24,dn=R.tilePixelRatio*ze,Fi=R.tilePixelRatio*fr.get("symbol-spacing"),ln=fr.get("text-padding")*R.tilePixelRatio,An=function(Xn,Ro,uo,$o=1){let Ju=Xn.get("icon-padding").evaluate(Ro,{},uo),qu=Ju&&Ju.values;return[qu[0]*$o,qu[1]*$o,qu[2]*$o,qu[3]*$o]}(fr,S,Lt,R.tilePixelRatio),pa=fr.get("text-max-angle")/180*Math.PI,ro=fr.get("text-rotation-alignment")!=="viewport"&&fr.get("symbol-placement")!=="point",Vo=fr.get("icon-rotation-alignment")==="map"&&fr.get("symbol-placement")!=="point",Xa=fr.get("symbol-placement"),sa=Fi/2,Mo=fr.get("icon-text-fit"),fo;W&&Mo!=="none"&&(R.allowVerticalPlacement&&F.vertical&&(fo=Tk(W,F.vertical,Mo,fr.get("icon-text-fit-padding"),mr,zr)),Lr&&(W=Tk(W,Lr,Mo,fr.get("icon-text-fit-padding"),mr,zr)));let lo=(Xn,Ro)=>{Ro.x<0||Ro.x>=Ha||Ro.y<0||Ro.y>=Ha||function(uo,$o,Ju,qu,Th,$v,ld,Ah,Gd,Hd,jd,Tf,Sh,Ed,ud,Hh,Rf,Iv,lv,tu,pc,$u,Rv,ff,I1){let p0=uo.addToLineVertexArray($o,Ju),Gp,Qv,Gc,Zf,ep=0,gg=0,uv=0,R1=0,bS=-1,Uw=-1,g0={},hy=bi("");if(uo.allowVerticalPlacement&&qu.vertical){let Cd=Ah.layout.get("text-rotate").evaluate(pc,{},ff)+90;Gc=new cm(Gd,$o,Hd,jd,Tf,qu.vertical,Sh,Ed,ud,Cd),ld&&(Zf=new cm(Gd,$o,Hd,jd,Tf,ld,Rf,Iv,ud,Cd))}if(Th){let Cd=Ah.layout.get("icon-rotate").evaluate(pc,{}),tp=Ah.layout.get("icon-text-fit")!=="none",hm=Bk(Th,Cd,Rv,tp),Wd=ld?Bk(ld,Cd,Rv,tp):void 0;Qv=new cm(Gd,$o,Hd,jd,Tf,Th,Rf,Iv,!1,Cd),ep=4*hm.length;let kd=uo.iconSizeData,mp=null;kd.kind==="source"?(mp=[v0*Ah.layout.get("icon-size").evaluate(pc,{})],mp[0]>lm&&T(`${uo.layerIds[0]}: Value for "icon-size" is >= ${Wx}. Reduce your "icon-size".`)):kd.kind==="composite"&&(mp=[v0*$u.compositeIconSizes[0].evaluate(pc,{},ff),v0*$u.compositeIconSizes[1].evaluate(pc,{},ff)],(mp[0]>lm||mp[1]>lm)&&T(`${uo.layerIds[0]}: Value for "icon-size" is >= ${Wx}. Reduce your "icon-size".`)),uo.addSymbols(uo.icon,hm,mp,tu,lv,pc,i.ah.none,$o,p0.lineStartIndex,p0.lineLength,-1,ff),bS=uo.icon.placedSymbolArray.length-1,Wd&&(gg=4*Wd.length,uo.addSymbols(uo.icon,Wd,mp,tu,lv,pc,i.ah.vertical,$o,p0.lineStartIndex,p0.lineLength,-1,ff),Uw=uo.icon.placedSymbolArray.length-1)}let jh=Object.keys(qu.horizontal);for(let Cd of jh){let tp=qu.horizontal[Cd];if(!Gp){hy=bi(tp.text);let Wd=Ah.layout.get("text-rotate").evaluate(pc,{},ff);Gp=new cm(Gd,$o,Hd,jd,Tf,tp,Sh,Ed,ud,Wd)}let hm=tp.positionedLines.length===1;if(uv+=Vk(uo,$o,tp,$v,Ah,ud,pc,Hh,p0,qu.vertical?i.ah.horizontal:i.ah.horizontalOnly,hm?jh:[Cd],g0,bS,$u,ff),hm)break}qu.vertical&&(R1+=Vk(uo,$o,qu.vertical,$v,Ah,ud,pc,Hh,p0,i.ah.vertical,["vertical"],g0,Uw,$u,ff));let rO=Gp?Gp.boxStartIndex:uo.collisionBoxArray.length,Vw=Gp?Gp.boxEndIndex:uo.collisionBoxArray.length,m0=Gc?Gc.boxStartIndex:uo.collisionBoxArray.length,cv=Gc?Gc.boxEndIndex:uo.collisionBoxArray.length,Xk=Qv?Qv.boxStartIndex:uo.collisionBoxArray.length,iO=Qv?Qv.boxEndIndex:uo.collisionBoxArray.length,Zk=Zf?Zf.boxStartIndex:uo.collisionBoxArray.length,nO=Zf?Zf.boxEndIndex:uo.collisionBoxArray.length,gp=-1,rb=(Cd,tp)=>Cd&&Cd.circleDiameter?Math.max(Cd.circleDiameter,tp):tp;gp=rb(Gp,gp),gp=rb(Gc,gp),gp=rb(Qv,gp),gp=rb(Zf,gp);let Gw=gp>-1?1:0;Gw&&(gp*=I1/eu),uo.glyphOffsetArray.length>=E1.MAX_GLYPHS&&T("Too many glyphs being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907"),pc.sortKey!==void 0&&uo.addToSortKeyRanges(uo.symbolInstances.length,pc.sortKey);let wS=Uk(Ah,pc,ff),[aO,oO]=function(Cd,tp){let hm=Cd.length,Wd=tp==null?void 0:tp.values;if((Wd==null?void 0:Wd.length)>0)for(let kd=0;kd<Wd.length;kd+=2){let mp=Wd[kd+1];Cd.emplaceBack(i.aq[Wd[kd]],mp[0],mp[1])}return[hm,Cd.length]}(uo.textAnchorOffsets,wS);uo.symbolInstances.emplaceBack($o.x,$o.y,g0.right>=0?g0.right:-1,g0.center>=0?g0.center:-1,g0.left>=0?g0.left:-1,g0.vertical||-1,bS,Uw,hy,rO,Vw,m0,cv,Xk,iO,Zk,nO,Hd,uv,R1,ep,gg,Gw,0,Sh,gp,aO,oO)}(R,Ro,Xn,F,W,te,fo,R.layers[0],R.collisionBoxArray,S.index,S.sourceLayerIndex,R.index,ui,[ln,ln,ln,ln],ro,Ke,dn,An,Vo,mr,S,fe,ut,Lt,pe)};if(Xa==="line")for(let Xn of Dk(S.geometry,0,0,Ha,Ha)){let Ro=K9(Xn,Fi,pa,F.vertical||Lr,W,24,yi,R.overscaling,Ha);for(let uo of Ro)Lr&&eO(R,Lr.text,sa,uo)||lo(Xn,uo)}else if(Xa==="line-center"){for(let Xn of S.geometry)if(Xn.length>1){let Ro=Y9(Xn,pa,F.vertical||Lr,W,24,yi);Ro&&lo(Xn,Ro)}}else if(S.type==="Polygon")for(let Xn of Cf(S.geometry,0)){let Ro=J9(Xn,16);lo(Xn[0],new vg(Ro.x,Ro.y,0))}else if(S.type==="LineString")for(let Xn of S.geometry)lo(Xn,new vg(Xn[0].x,Xn[0].y,0));else if(S.type==="Point")for(let Xn of S.geometry)for(let Ro of Xn)lo([Ro],new vg(Ro.x,Ro.y,0))}function Vk(R,S,F,W,te,fe,pe,ze,Ke,ut,Lt,Qt,fr,mr,Lr){let zr=function(dn,Fi,ln,An,pa,ro,Vo,Xa){let sa=An.layout.get("text-rotate").evaluate(ro,{})*Math.PI/180,Mo=[];for(let fo of Fi.positionedLines)for(let lo of fo.positionedGlyphs){if(!lo.rect)continue;let Xn=lo.rect||{},Ro=yk+1,uo=!0,$o=1,Ju=0,qu=(pa||Xa)&&lo.vertical,Th=lo.metrics.advance*lo.scale/2;if(Xa&&Fi.verticalizable&&(Ju=fo.lineOffset/2-(lo.imageName?-(eu-lo.metrics.width*lo.scale)/2:(lo.scale-1)*eu)),lo.imageName){let tu=Vo[lo.imageName];uo=tu.sdf,$o=tu.pixelRatio,Ro=Md/$o}let $v=pa?[lo.x+Th,lo.y]:[0,0],ld=pa?[0,0]:[lo.x+Th+ln[0],lo.y+ln[1]-Ju],Ah=[0,0];qu&&(Ah=ld,ld=[0,0]);let Gd=lo.metrics.isDoubleResolution?2:1,Hd=(lo.metrics.left-Ro)*lo.scale-Th+ld[0],jd=(-lo.metrics.top-Ro)*lo.scale+ld[1],Tf=Hd+Xn.w/Gd*lo.scale/$o,Sh=jd+Xn.h/Gd*lo.scale/$o,Ed=new u(Hd,jd),ud=new u(Tf,jd),Hh=new u(Hd,Sh),Rf=new u(Tf,Sh);if(qu){let tu=new u(-Th,Th-wh),pc=-Math.PI/2,$u=eu/2-Th,Rv=new u(5-wh-$u,-(lo.imageName?$u:0)),ff=new u(...Ah);Ed._rotateAround(pc,tu)._add(Rv)._add(ff),ud._rotateAround(pc,tu)._add(Rv)._add(ff),Hh._rotateAround(pc,tu)._add(Rv)._add(ff),Rf._rotateAround(pc,tu)._add(Rv)._add(ff)}if(sa){let tu=Math.sin(sa),pc=Math.cos(sa),$u=[pc,-tu,tu,pc];Ed._matMult($u),ud._matMult($u),Hh._matMult($u),Rf._matMult($u)}let Iv=new u(0,0),lv=new u(0,0);Mo.push({tl:Ed,tr:ud,bl:Hh,br:Rf,tex:Xn,writingMode:Fi.writingMode,glyphOffset:$v,sectionIndex:lo.sectionIndex,isSDF:uo,pixelOffsetTL:Iv,pixelOffsetBR:lv,minFontScaleX:0,minFontScaleY:0})}return Mo}(0,F,ze,te,fe,pe,W,R.allowVerticalPlacement),ui=R.textSizeData,yi=null;ui.kind==="source"?(yi=[v0*te.layout.get("text-size").evaluate(pe,{})],yi[0]>lm&&T(`${R.layerIds[0]}: Value for "text-size" is >= ${Wx}. Reduce your "text-size".`)):ui.kind==="composite"&&(yi=[v0*mr.compositeTextSizes[0].evaluate(pe,{},Lr),v0*mr.compositeTextSizes[1].evaluate(pe,{},Lr)],(yi[0]>lm||yi[1]>lm)&&T(`${R.layerIds[0]}: Value for "text-size" is >= ${Wx}. Reduce your "text-size".`)),R.addSymbols(R.text,zr,yi,ze,fe,pe,ut,S,Ke.lineStartIndex,Ke.lineLength,fr,Lr);for(let dn of Lt)Qt[dn]=R.text.placedSymbolArray.length-1;return 4*zr.length}function Gk(R){for(let S in R)return R[S];return null}function eO(R,S,F,W){let te=R.compareText;if(S in te){let fe=te[S];for(let pe=fe.length-1;pe>=0;pe--)if(W.dist(fe[pe])<F)return!0}else te[S]=[];return te[S].push(W),!1}let Hk=[Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];class mS{static from(S){if(!(S instanceof ArrayBuffer))throw new Error("Data must be an instance of ArrayBuffer.");let[F,W]=new Uint8Array(S,0,2);if(F!==219)throw new Error("Data does not appear to be in a KDBush format.");let te=W>>4;if(te!==1)throw new Error(`Got v${te} data when expected v1.`);let fe=Hk[15&W];if(!fe)throw new Error("Unrecognized array type.");let[pe]=new Uint16Array(S,2,1),[ze]=new Uint32Array(S,4,1);return new mS(ze,pe,fe,S)}constructor(S,F=64,W=Float64Array,te){if(isNaN(S)||S<0)throw new Error(`Unpexpected numItems value: ${S}.`);this.numItems=+S,this.nodeSize=Math.min(Math.max(+F,2),65535),this.ArrayType=W,this.IndexArrayType=S<65536?Uint16Array:Uint32Array;let fe=Hk.indexOf(this.ArrayType),pe=2*S*this.ArrayType.BYTES_PER_ELEMENT,ze=S*this.IndexArrayType.BYTES_PER_ELEMENT,Ke=(8-ze%8)%8;if(fe<0)throw new Error(`Unexpected typed array class: ${W}.`);te&&te instanceof ArrayBuffer?(this.data=te,this.ids=new this.IndexArrayType(this.data,8,S),this.coords=new this.ArrayType(this.data,8+ze+Ke,2*S),this._pos=2*S,this._finished=!0):(this.data=new ArrayBuffer(8+pe+ze+Ke),this.ids=new this.IndexArrayType(this.data,8,S),this.coords=new this.ArrayType(this.data,8+ze+Ke,2*S),this._pos=0,this._finished=!1,new Uint8Array(this.data,0,2).set([219,16+fe]),new Uint16Array(this.data,2,1)[0]=F,new Uint32Array(this.data,4,1)[0]=S)}add(S,F){let W=this._pos>>1;return this.ids[W]=W,this.coords[this._pos++]=S,this.coords[this._pos++]=F,W}finish(){let S=this._pos>>1;if(S!==this.numItems)throw new Error(`Added ${S} items when expected ${this.numItems}.`);return qw(this.ids,this.coords,this.nodeSize,0,this.numItems-1,0),this._finished=!0,this}range(S,F,W,te){if(!this._finished)throw new Error("Data not yet indexed - call index.finish().");let{ids:fe,coords:pe,nodeSize:ze}=this,Ke=[0,fe.length-1,0],ut=[];for(;Ke.length;){let Lt=Ke.pop()||0,Qt=Ke.pop()||0,fr=Ke.pop()||0;if(Qt-fr<=ze){for(let ui=fr;ui<=Qt;ui++){let yi=pe[2*ui],dn=pe[2*ui+1];yi>=S&&yi<=W&&dn>=F&&dn<=te&&ut.push(fe[ui])}continue}let mr=fr+Qt>>1,Lr=pe[2*mr],zr=pe[2*mr+1];Lr>=S&&Lr<=W&&zr>=F&&zr<=te&&ut.push(fe[mr]),(Lt===0?S<=Lr:F<=zr)&&(Ke.push(fr),Ke.push(mr-1),Ke.push(1-Lt)),(Lt===0?W>=Lr:te>=zr)&&(Ke.push(mr+1),Ke.push(Qt),Ke.push(1-Lt))}return ut}within(S,F,W){if(!this._finished)throw new Error("Data not yet indexed - call index.finish().");let{ids:te,coords:fe,nodeSize:pe}=this,ze=[0,te.length-1,0],Ke=[],ut=W*W;for(;ze.length;){let Lt=ze.pop()||0,Qt=ze.pop()||0,fr=ze.pop()||0;if(Qt-fr<=pe){for(let ui=fr;ui<=Qt;ui++)Wk(fe[2*ui],fe[2*ui+1],S,F)<=ut&&Ke.push(te[ui]);continue}let mr=fr+Qt>>1,Lr=fe[2*mr],zr=fe[2*mr+1];Wk(Lr,zr,S,F)<=ut&&Ke.push(te[mr]),(Lt===0?S-W<=Lr:F-W<=zr)&&(ze.push(fr),ze.push(mr-1),ze.push(1-Lt)),(Lt===0?S+W>=Lr:F+W>=zr)&&(ze.push(mr+1),ze.push(Qt),ze.push(1-Lt))}return Ke}}function qw(R,S,F,W,te,fe){if(te-W<=F)return;let pe=W+te>>1;jk(R,S,pe,W,te,fe),qw(R,S,F,W,pe-1,1-fe),qw(R,S,F,pe+1,te,1-fe)}function jk(R,S,F,W,te,fe){for(;te>W;){if(te-W>600){let ut=te-W+1,Lt=F-W+1,Qt=Math.log(ut),fr=.5*Math.exp(2*Qt/3),mr=.5*Math.sqrt(Qt*fr*(ut-fr)/ut)*(Lt-ut/2<0?-1:1);jk(R,S,F,Math.max(W,Math.floor(F-Lt*fr/ut+mr)),Math.min(te,Math.floor(F+(ut-Lt)*fr/ut+mr)),fe)}let pe=S[2*F+fe],ze=W,Ke=te;for(eb(R,S,W,F),S[2*te+fe]>pe&&eb(R,S,W,te);ze<Ke;){for(eb(R,S,ze,Ke),ze++,Ke--;S[2*ze+fe]<pe;)ze++;for(;S[2*Ke+fe]>pe;)Ke--}S[2*W+fe]===pe?eb(R,S,W,Ke):(Ke++,eb(R,S,Ke,te)),Ke<=F&&(W=Ke+1),F<=Ke&&(te=Ke-1)}}function eb(R,S,F,W){yS(R,F,W),yS(S,2*F,2*W),yS(S,2*F+1,2*W+1)}function yS(R,S,F){let W=R[S];R[S]=R[F],R[F]=W}function Wk(R,S,F,W){let te=R-F,fe=S-W;return te*te+fe*fe}var Bw;i.bg=void 0,(Bw=i.bg||(i.bg={})).create="create",Bw.load="load",Bw.fullLoad="fullLoad";let tb=null,sh=[],_S=1e3/60,xS="loadTime",Nw="fullLoadTime",tO={mark(R){performance.mark(R)},frame(R){let S=R;tb!=null&&sh.push(S-tb),tb=S},clearMetrics(){tb=null,sh=[],performance.clearMeasures(xS),performance.clearMeasures(Nw);for(let R in i.bg)performance.clearMarks(i.bg[R])},getPerformanceMetrics(){performance.measure(xS,i.bg.create,i.bg.load),performance.measure(Nw,i.bg.create,i.bg.fullLoad);let R=performance.getEntriesByName(xS)[0].duration,S=performance.getEntriesByName(Nw)[0].duration,F=sh.length,W=1/(sh.reduce((fe,pe)=>fe+pe,0)/F/1e3),te=sh.filter(fe=>fe>_S).reduce((fe,pe)=>fe+(pe-_S)/_S,0);return{loadTime:R,fullLoadTime:S,fps:W,percentDroppedFrames:te/(F+te)*100,totalFrames:F}}};i.$=class extends Kt{},i.A=xi,i.B=hn,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=Ua,i.E=Fe,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 cS(()=>this.process()),this.subscription=function(F,W,te,fe){return F.addEventListener(W,te,!1),{unsubscribe:()=>{F.removeEventListener(W,te,!1)}}}(this.target,"message",F=>this.receive(F)),this.globalScope=O(self)?R:window}registerMessageHandler(R,S){this.messageHandlers[R]=S}sendAsync(R,S){return new Promise((F,W)=>{let te=Math.round(1e18*Math.random()).toString(36).substring(0,10);this.resolveRejects[te]={resolve:F,reject:W},S&&S.signal.addEventListener("abort",()=>{delete this.resolveRejects[te];let ze={id:te,type:"<cancel>",origin:location.origin,targetMapId:R.targetMapId,sourceMapId:this.mapId};this.target.postMessage(ze)},{once:!0});let fe=[],pe=Object.assign(Object.assign({},R),{id:te,sourceMapId:this.mapId,origin:location.origin,data:La(R.data,fe)});this.target.postMessage(pe,{transfer:fe})})}receive(R){let S=R.data,F=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[F];let W=this.abortControllers[F];return delete this.abortControllers[F],void(W&&W.abort())}if(O(self)||S.mustQueue)return this.tasks[F]=S,this.taskQueue.push(F),void this.invoker.trigger();this.processTask(F,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(Na(S.error)):te.resolve(Na(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 F=Na(S.data),W=new AbortController;this.abortControllers[R]=W;try{let te=yield this.messageHandlers[S.type](S.sourceMapId,F,W);this.completeTask(R,null,te)}catch(te){this.completeTask(R,te)}})}completeTask(R,S,F){let W=[];delete this.abortControllers[R];let te={id:R,type:"<response>",sourceMapId:this.mapId,origin:location.origin,error:S?La(S):null,data:La(F,W)};this.target.postMessage(te,{transfer:W})}remove(){this.invoker.remove(),this.subscription.unsubscribe()}},i.G=ke,i.H=function(){var R=new xi(16);return xi!=Float32Array&&(R[1]=0,R[2]=0,R[3]=0,R[4]=0,R[6]=0,R[7]=0,R[8]=0,R[9]=0,R[11]=0,R[12]=0,R[13]=0,R[14]=0),R[0]=1,R[5]=1,R[10]=1,R[15]=1,R},i.I=Cw,i.J=function(R,S,F){var W,te,fe,pe,ze,Ke,ut,Lt,Qt,fr,mr,Lr,zr=F[0],ui=F[1],yi=F[2];return S===R?(R[12]=S[0]*zr+S[4]*ui+S[8]*yi+S[12],R[13]=S[1]*zr+S[5]*ui+S[9]*yi+S[13],R[14]=S[2]*zr+S[6]*ui+S[10]*yi+S[14],R[15]=S[3]*zr+S[7]*ui+S[11]*yi+S[15]):(te=S[1],fe=S[2],pe=S[3],ze=S[4],Ke=S[5],ut=S[6],Lt=S[7],Qt=S[8],fr=S[9],mr=S[10],Lr=S[11],R[0]=W=S[0],R[1]=te,R[2]=fe,R[3]=pe,R[4]=ze,R[5]=Ke,R[6]=ut,R[7]=Lt,R[8]=Qt,R[9]=fr,R[10]=mr,R[11]=Lr,R[12]=W*zr+ze*ui+Qt*yi+S[12],R[13]=te*zr+Ke*ui+fr*yi+S[13],R[14]=fe*zr+ut*ui+mr*yi+S[14],R[15]=pe*zr+Lt*ui+Lr*yi+S[15]),R},i.K=function(R,S,F){var W=F[0],te=F[1],fe=F[2];return R[0]=S[0]*W,R[1]=S[1]*W,R[2]=S[2]*W,R[3]=S[3]*W,R[4]=S[4]*te,R[5]=S[5]*te,R[6]=S[6]*te,R[7]=S[7]*te,R[8]=S[8]*fe,R[9]=S[9]*fe,R[10]=S[10]*fe,R[11]=S[11]*fe,R[12]=S[12],R[13]=S[13],R[14]=S[14],R[15]=S[15],R},i.L=ci,i.M=function(R,S){let F={};for(let W=0;W<S.length;W++){let te=S[W];te in R&&(F[te]=R[te])}return F},i.N=dg,i.O=Fw,i.P=u,i.Q=Ck,i.R=Yi,i.S=Jv,i.T=Yu,i.U=x,i.V=b,i.W=H,i.X=Ha,i.Y=qe,i.Z=$x,i._=a,i.a=_e,i.a$=function(R,S){var F=R[0],W=R[1],te=R[2],fe=R[3],pe=R[4],ze=R[5],Ke=R[6],ut=R[7],Lt=R[8],Qt=R[9],fr=R[10],mr=R[11],Lr=R[12],zr=R[13],ui=R[14],yi=R[15],dn=S[0],Fi=S[1],ln=S[2],An=S[3],pa=S[4],ro=S[5],Vo=S[6],Xa=S[7],sa=S[8],Mo=S[9],fo=S[10],lo=S[11],Xn=S[12],Ro=S[13],uo=S[14],$o=S[15];return Math.abs(F-dn)<=Yr*Math.max(1,Math.abs(F),Math.abs(dn))&&Math.abs(W-Fi)<=Yr*Math.max(1,Math.abs(W),Math.abs(Fi))&&Math.abs(te-ln)<=Yr*Math.max(1,Math.abs(te),Math.abs(ln))&&Math.abs(fe-An)<=Yr*Math.max(1,Math.abs(fe),Math.abs(An))&&Math.abs(pe-pa)<=Yr*Math.max(1,Math.abs(pe),Math.abs(pa))&&Math.abs(ze-ro)<=Yr*Math.max(1,Math.abs(ze),Math.abs(ro))&&Math.abs(Ke-Vo)<=Yr*Math.max(1,Math.abs(Ke),Math.abs(Vo))&&Math.abs(ut-Xa)<=Yr*Math.max(1,Math.abs(ut),Math.abs(Xa))&&Math.abs(Lt-sa)<=Yr*Math.max(1,Math.abs(Lt),Math.abs(sa))&&Math.abs(Qt-Mo)<=Yr*Math.max(1,Math.abs(Qt),Math.abs(Mo))&&Math.abs(fr-fo)<=Yr*Math.max(1,Math.abs(fr),Math.abs(fo))&&Math.abs(mr-lo)<=Yr*Math.max(1,Math.abs(mr),Math.abs(lo))&&Math.abs(Lr-Xn)<=Yr*Math.max(1,Math.abs(Lr),Math.abs(Xn))&&Math.abs(zr-Ro)<=Yr*Math.max(1,Math.abs(zr),Math.abs(Ro))&&Math.abs(ui-uo)<=Yr*Math.max(1,Math.abs(ui),Math.abs(uo))&&Math.abs(yi-$o)<=Yr*Math.max(1,Math.abs(yi),Math.abs($o))},i.a0=Ye,i.a1=hS,i.a2=ur,i.a3=R=>{let S=window.document.createElement("video");return S.muted=!0,new Promise(F=>{S.onloadstart=()=>{F(S)};for(let W of R){let te=window.document.createElement("source");Le(W)||(S.crossOrigin="Anonymous"),te.src=W,S.appendChild(te)}})},i.a4=function(){return _++},i.a5=In,i.a6=E1,i.a7=Fc,i.a8=Sl,i.a9=dS,i.aA=function(R){if(R.type==="custom")return new uS(R);switch(R.type){case"background":return new X9(R);case"circle":return new vi(R);case"fill":return new mt(R);case"fill-extrusion":return new Ev(R);case"heatmap":return new oa(R);case"hillshade":return new Ys(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 F=[];try{if(!pt(R.version,S.version))return[{command:"setStyle",args:[S]}];pt(R.center,S.center)||F.push({command:"setCenter",args:[S.center]}),pt(R.zoom,S.zoom)||F.push({command:"setZoom",args:[S.zoom]}),pt(R.bearing,S.bearing)||F.push({command:"setBearing",args:[S.bearing]}),pt(R.pitch,S.pitch)||F.push({command:"setPitch",args:[S.pitch]}),pt(R.sprite,S.sprite)||F.push({command:"setSprite",args:[S.sprite]}),pt(R.glyphs,S.glyphs)||F.push({command:"setGlyphs",args:[S.glyphs]}),pt(R.transition,S.transition)||F.push({command:"setTransition",args:[S.transition]}),pt(R.light,S.light)||F.push({command:"setLight",args:[S.light]}),pt(R.terrain,S.terrain)||F.push({command:"setTerrain",args:[S.terrain]}),pt(R.sky,S.sky)||F.push({command:"setSky",args:[S.sky]}),pt(R.projection,S.projection)||F.push({command:"setProjection",args:[S.projection]});let W={},te=[];(function(pe,ze,Ke,ut){let Lt;for(Lt in ze=ze||{},pe=pe||{})Object.prototype.hasOwnProperty.call(pe,Lt)&&(Object.prototype.hasOwnProperty.call(ze,Lt)||lt(Lt,Ke,ut));for(Lt in ze)Object.prototype.hasOwnProperty.call(ze,Lt)&&(Object.prototype.hasOwnProperty.call(pe,Lt)?pt(pe[Lt],ze[Lt])||(pe[Lt].type==="geojson"&&ze[Lt].type==="geojson"&&Nt(pe,ze,Lt)?Wt(Ke,{command:"setGeoJSONSourceData",args:[Lt,ze[Lt].data]}):Gt(Lt,ze,Ke,ut)):st(Lt,ze,Ke))})(R.sources,S.sources,te,W);let fe=[];R.layers&&R.layers.forEach(pe=>{"source"in pe&&W[pe.source]?F.push({command:"removeLayer",args:[pe.id]}):fe.push(pe)}),F=F.concat(te),function(pe,ze,Ke){ze=ze||[];let ut=(pe=pe||[]).map(sr),Lt=ze.map(sr),Qt=pe.reduce(wr,{}),fr=ze.reduce(wr,{}),mr=ut.slice(),Lr=Object.create(null),zr,ui,yi,dn,Fi;for(let ln=0,An=0;ln<ut.length;ln++)zr=ut[ln],Object.prototype.hasOwnProperty.call(fr,zr)?An++:(Wt(Ke,{command:"removeLayer",args:[zr]}),mr.splice(mr.indexOf(zr,An),1));for(let ln=0,An=0;ln<Lt.length;ln++)zr=Lt[Lt.length-1-ln],mr[mr.length-1-ln]!==zr&&(Object.prototype.hasOwnProperty.call(Qt,zr)?(Wt(Ke,{command:"removeLayer",args:[zr]}),mr.splice(mr.lastIndexOf(zr,mr.length-An),1)):An++,dn=mr[mr.length-ln],Wt(Ke,{command:"addLayer",args:[fr[zr],dn]}),mr.splice(mr.length-ln,0,zr),Lr[zr]=!0);for(let ln=0;ln<Lt.length;ln++)if(zr=Lt[ln],ui=Qt[zr],yi=fr[zr],!Lr[zr]&&!pt(ui,yi))if(pt(ui.source,yi.source)&&pt(ui["source-layer"],yi["source-layer"])&&pt(ui.type,yi.type)){for(Fi in $t(ui.layout,yi.layout,Ke,zr,null,"setLayoutProperty"),$t(ui.paint,yi.paint,Ke,zr,null,"setPaintProperty"),pt(ui.filter,yi.filter)||Wt(Ke,{command:"setFilter",args:[zr,yi.filter]}),pt(ui.minzoom,yi.minzoom)&&pt(ui.maxzoom,yi.maxzoom)||Wt(Ke,{command:"setLayerZoomRange",args:[zr,yi.minzoom,yi.maxzoom]}),ui)Object.prototype.hasOwnProperty.call(ui,Fi)&&Fi!=="layout"&&Fi!=="paint"&&Fi!=="filter"&&Fi!=="metadata"&&Fi!=="minzoom"&&Fi!=="maxzoom"&&(Fi.indexOf("paint.")===0?$t(ui[Fi],yi[Fi],Ke,zr,Fi.slice(6),"setPaintProperty"):pt(ui[Fi],yi[Fi])||Wt(Ke,{command:"setLayerProperty",args:[zr,Fi,yi[Fi]]}));for(Fi in yi)Object.prototype.hasOwnProperty.call(yi,Fi)&&!Object.prototype.hasOwnProperty.call(ui,Fi)&&Fi!=="layout"&&Fi!=="paint"&&Fi!=="filter"&&Fi!=="metadata"&&Fi!=="minzoom"&&Fi!=="maxzoom"&&(Fi.indexOf("paint.")===0?$t(ui[Fi],yi[Fi],Ke,zr,Fi.slice(6),"setPaintProperty"):pt(ui[Fi],yi[Fi])||Wt(Ke,{command:"setLayerProperty",args:[zr,Fi,yi[Fi]]}))}else Wt(Ke,{command:"removeLayer",args:[zr]}),dn=mr[mr.lastIndexOf(zr)+1],Wt(Ke,{command:"addLayer",args:[yi,dn]})}(fe,S.layers,F)}catch(W){console.warn("Unable to compute style diff:",W),F=[{command:"setStyle",args:[S]}]}return F},i.aD=function(R){let S=[],F=R.id;return F===void 0&&S.push({message:`layers.${F}: missing required property "id"`}),R.render===void 0&&S.push({message:`layers.${F}: missing required method "render"`}),R.renderingMode&&R.renderingMode!=="2d"&&R.renderingMode!=="3d"&&S.push({message:`layers.${F}: property "renderingMode" must be either "2d" or "3d"`}),S},i.aE=function R(S,F){if(Array.isArray(S)){if(!Array.isArray(F)||S.length!==F.length)return!1;for(let W=0;W<S.length;W++)if(!R(S[W],F[W]))return!1;return!0}if(typeof S=="object"&&S!==null&&F!==null){if(typeof F!="object"||Object.keys(S).length!==Object.keys(F).length)return!1;for(let W in S)if(!R(S[W],F[W]))return!1;return!0}return S===F},i.aF=k,i.aG=M,i.aH=class extends Ai{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=ti,i.aJ=class extends Ai{constructor(R,S){super(R,S),this.current=Nn}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=Rn,i.aL=Cn,i.aM=ar,i.aN=class extends Ai{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 Ai{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,F,W,te,fe,pe){var ze=1/(S-F),Ke=1/(W-te),ut=1/(fe-pe);return R[0]=-2*ze,R[1]=0,R[2]=0,R[3]=0,R[4]=0,R[5]=-2*Ke,R[6]=0,R[7]=0,R[8]=0,R[9]=0,R[10]=2*ut,R[11]=0,R[12]=(S+F)*ze,R[13]=(te+W)*Ke,R[14]=(pe+fe)*ut,R[15]=1,R},i.aQ=Xi,i.aR=class extends it{},i.aS=im,i.aT=class extends Ht{},i.aU=ra,i.aV=function(R){return R<=1?1:Math.pow(2,Math.ceil(Math.log(R)/Math.LN2))},i.aW=Ln,i.aX=wo,i.aY=se,i.aZ=class extends Li{},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,(F,W,te,fe)=>{let pe=te||fe;return S[W]=!pe||pe.toLowerCase(),""}),S["max-age"]){let F=parseInt(S["max-age"],10);isNaN(F)?delete S["max-age"]:S["max-age"]=F}return S},i.ab=function(R,S){let F=[];for(let W in R)W in S||F.push(W);return F},i.ac=E,i.ad=function(R,S,F){var W=Math.sin(F),te=Math.cos(F),fe=S[0],pe=S[1],ze=S[2],Ke=S[3],ut=S[4],Lt=S[5],Qt=S[6],fr=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]=fe*te+ut*W,R[1]=pe*te+Lt*W,R[2]=ze*te+Qt*W,R[3]=Ke*te+fr*W,R[4]=ut*te-fe*W,R[5]=Lt*te-pe*W,R[6]=Qt*te-ze*W,R[7]=fr*te-Ke*W,R},i.ae=function(R){var S=new xi(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=qn,i.ag=function(R,S){let F=0,W=0;if(R.kind==="constant")W=R.layoutSize;else if(R.kind!=="source"){let{interpolationType:te,minZoom:fe,maxZoom:pe}=R,ze=te?E(Co.interpolationFactor(te,S,fe,pe),0,1):0;R.kind==="camera"?W=Lo.number(R.minSize,R.maxSize,ze):F=ze}return{uSizeT:F,uSize:W}},i.ai=function(R,{uSize:S,uSizeT:F},{lowerSize:W,upperSize:te}){return R.kind==="source"?W/v0:R.kind==="composite"?Lo.number(W/v0,te/v0,F):S},i.aj=aS,i.ak=function(R,S,F,W){let te=S.y-R.y,fe=S.x-R.x,pe=W.y-F.y,ze=W.x-F.x,Ke=pe*fe-ze*te;if(Ke===0)return null;let ut=(ze*(R.y-F.y)-pe*(R.x-F.x))/Ke;return new u(R.x+ut*fe,R.y+ut*te)},i.al=Dk,i.am=Sc,i.an=Ii,i.ao=function(R){let S=1/0,F=1/0,W=-1/0,te=-1/0;for(let fe of R)S=Math.min(S,fe.x),F=Math.min(F,fe.y),W=Math.max(W,fe.x),te=Math.max(te,fe.y);return[S,F,W,te]},i.ap=eu,i.ar=nS,i.as=function(R,S){var F=S[0],W=S[1],te=S[2],fe=S[3],pe=S[4],ze=S[5],Ke=S[6],ut=S[7],Lt=S[8],Qt=S[9],fr=S[10],mr=S[11],Lr=S[12],zr=S[13],ui=S[14],yi=S[15],dn=F*ze-W*pe,Fi=F*Ke-te*pe,ln=F*ut-fe*pe,An=W*Ke-te*ze,pa=W*ut-fe*ze,ro=te*ut-fe*Ke,Vo=Lt*zr-Qt*Lr,Xa=Lt*ui-fr*Lr,sa=Lt*yi-mr*Lr,Mo=Qt*ui-fr*zr,fo=Qt*yi-mr*zr,lo=fr*yi-mr*ui,Xn=dn*lo-Fi*fo+ln*Mo+An*sa-pa*Xa+ro*Vo;return Xn?(R[0]=(ze*lo-Ke*fo+ut*Mo)*(Xn=1/Xn),R[1]=(te*fo-W*lo-fe*Mo)*Xn,R[2]=(zr*ro-ui*pa+yi*An)*Xn,R[3]=(fr*pa-Qt*ro-mr*An)*Xn,R[4]=(Ke*sa-pe*lo-ut*Xa)*Xn,R[5]=(F*lo-te*sa+fe*Xa)*Xn,R[6]=(ui*ln-Lr*ro-yi*Fi)*Xn,R[7]=(Lt*ro-fr*ln+mr*Fi)*Xn,R[8]=(pe*fo-ze*sa+ut*Vo)*Xn,R[9]=(W*sa-F*fo-fe*Vo)*Xn,R[10]=(Lr*pa-zr*ln+yi*dn)*Xn,R[11]=(Qt*ln-Lt*pa-mr*dn)*Xn,R[12]=(ze*Xa-pe*Mo-Ke*Vo)*Xn,R[13]=(F*Mo-W*Xa+te*Vo)*Xn,R[14]=(zr*Fi-Lr*An-ui*dn)*Xn,R[15]=(Lt*An-Qt*Fi+fr*dn)*Xn,R):null},i.at=gS,i.au=Iw,i.av=mS,i.aw=function(){let R={},S=ce.$version;for(let F in ce.$root){let W=ce.$root[F];if(W.required){let te=null;te=F==="version"?S:W.type==="array"?[]:{},te!=null&&(R[F]=te)}}return R},i.ax=Yn,i.ay=ie,i.az=function(R){R=R.slice();let S=Object.create(null);for(let F=0;F<R.length;F++)S[R[F].id]=R[F];for(let F=0;F<R.length;F++)"ref"in R[F]&&(R[F]=ct(R[F],S[R[F].ref]));return R},i.b=G,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,F){return R[0]=S[0]*F[0],R[1]=S[1]*F[1],R[2]=S[2]*F[2],R[3]=S[3]*F[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=kk,i.b5=zw,i.b6=function(R,S,F,W,te){var fe,pe=1/Math.tan(S/2);return R[0]=pe/F,R[1]=0,R[2]=0,R[3]=0,R[4]=0,R[5]=pe,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+W)*(fe=1/(W-te)),R[14]=2*te*W*fe):(R[10]=-1,R[14]=-2*W),R},i.b7=function(R,S,F){var W=Math.sin(F),te=Math.cos(F),fe=S[4],pe=S[5],ze=S[6],Ke=S[7],ut=S[8],Lt=S[9],Qt=S[10],fr=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]=fe*te+ut*W,R[5]=pe*te+Lt*W,R[6]=ze*te+Qt*W,R[7]=Ke*te+fr*W,R[8]=ut*te-fe*W,R[9]=Lt*te-pe*W,R[10]=Qt*te-ze*W,R[11]=fr*te-Ke*W,R},i.b8=p,i.b9=C,i.bA=Sd,i.bB=function(R){return R.message===re},i.bC=ks,i.bD=_s,i.ba=function(R){return R*Math.PI/180},i.bb=function(R,S){let{x:F,y:W}=$x.fromLngLat(S);return!(R<0||R>25||W<0||W>=1||F<0||F>=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 Tt{},i.be=fS,i.bf=tO,i.bh=me,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 F={};for(let te=0;te<R.length;te++){let fe=S&&S[R[te].id]||Vh(R[te]);S&&(S[R[te].id]=fe);let pe=F[fe];pe||(pe=F[fe]=[]),pe.push(R[te])}let W=[];for(let te in F)W.push(F[te]);return W},i.bl=Di,i.bm=Pk,i.bn=cy,i.bo=kw,i.bp=function(R){R.bucket.createArrays(),R.bucket.tilePixelRatio=Ha/(512*R.bucket.overscaling),R.bucket.compareText={},R.bucket.iconsNeedLinear=!1;let S=R.bucket.layers[0],F=S.layout,W=S._unevaluatedLayout._values,te={layoutIconSize:W["icon-size"].possiblyEvaluate(new is(R.bucket.zoom+1),R.canonical),layoutTextSize:W["text-size"].possiblyEvaluate(new is(R.bucket.zoom+1),R.canonical),textMaxSize:W["text-size"].possiblyEvaluate(new is(18))};if(R.bucket.textSizeData.kind==="composite"){let{minZoom:ut,maxZoom:Lt}=R.bucket.textSizeData;te.compositeTextSizes=[W["text-size"].possiblyEvaluate(new is(ut),R.canonical),W["text-size"].possiblyEvaluate(new is(Lt),R.canonical)]}if(R.bucket.iconSizeData.kind==="composite"){let{minZoom:ut,maxZoom:Lt}=R.bucket.iconSizeData;te.compositeIconSizes=[W["icon-size"].possiblyEvaluate(new is(ut),R.canonical),W["icon-size"].possiblyEvaluate(new is(Lt),R.canonical)]}let fe=F.get("text-line-height")*eu,pe=F.get("text-rotation-alignment")!=="viewport"&&F.get("symbol-placement")!=="point",ze=F.get("text-keep-upright"),Ke=F.get("text-size");for(let ut of R.bucket.features){let Lt=F.get("text-font").evaluate(ut,{},R.canonical).join(","),Qt=Ke.evaluate(ut,{},R.canonical),fr=te.layoutTextSize.evaluate(ut,{},R.canonical),mr=te.layoutIconSize.evaluate(ut,{},R.canonical),Lr={horizontal:{},vertical:void 0},zr=ut.text,ui,yi=[0,0];if(zr){let ln=zr.toString(),An=F.get("text-letter-spacing").evaluate(ut,{},R.canonical)*eu,pa=bo(ln)?An:0,ro=F.get("text-anchor").evaluate(ut,{},R.canonical),Vo=Uk(S,ut,R.canonical);if(!Vo){let fo=F.get("text-radial-offset").evaluate(ut,{},R.canonical);yi=fo?pS(ro,[fo*eu,fy]):F.get("text-offset").evaluate(ut,{},R.canonical).map(lo=>lo*eu)}let Xa=pe?"center":F.get("text-justify").evaluate(ut,{},R.canonical),sa=F.get("symbol-placement")==="point"?F.get("text-max-width").evaluate(ut,{},R.canonical)*eu:1/0,Mo=()=>{R.bucket.allowVerticalPlacement&&Ka(ln)&&(Lr.vertical=Hx(zr,R.glyphMap,R.glyphPositions,R.imagePositions,Lt,sa,fe,ro,"left",pa,yi,i.ah.vertical,!0,fr,Qt))};if(!pe&&Vo){let fo=new Set;if(Xa==="auto")for(let Xn=0;Xn<Vo.values.length;Xn+=2)fo.add(gS(Vo.values[Xn]));else fo.add(Xa);let lo=!1;for(let Xn of fo)if(!Lr.horizontal[Xn])if(lo)Lr.horizontal[Xn]=Lr.horizontal[0];else{let Ro=Hx(zr,R.glyphMap,R.glyphPositions,R.imagePositions,Lt,sa,fe,"center",Xn,pa,yi,i.ah.horizontal,!1,fr,Qt);Ro&&(Lr.horizontal[Xn]=Ro,lo=Ro.positionedLines.length===1)}Mo()}else{Xa==="auto"&&(Xa=gS(ro));let fo=Hx(zr,R.glyphMap,R.glyphPositions,R.imagePositions,Lt,sa,fe,ro,Xa,pa,yi,i.ah.horizontal,!1,fr,Qt);fo&&(Lr.horizontal[Xa]=fo),Mo(),Ka(ln)&&pe&&ze&&(Lr.vertical=Hx(zr,R.glyphMap,R.glyphPositions,R.imagePositions,Lt,sa,fe,ro,Xa,pa,yi,i.ah.vertical,!1,fr,Qt))}}let dn=!1;if(ut.icon&&ut.icon.name){let ln=R.imageMap[ut.icon.name];ln&&(ui=jx(R.imagePositions[ut.icon.name],F.get("icon-offset").evaluate(ut,{},R.canonical),F.get("icon-anchor").evaluate(ut,{},R.canonical)),dn=!!ln.sdf,R.bucket.sdfIcons===void 0?R.bucket.sdfIcons=dn:R.bucket.sdfIcons!==dn&&T("Style sheet warning: Cannot mix SDF and non-SDF icons in one buffer"),(ln.pixelRatio!==R.bucket.pixelRatio||F.get("icon-rotate").constantOr(1)!==0)&&(R.bucket.iconsNeedLinear=!0))}let Fi=Gk(Lr.horizontal)||Lr.vertical;R.bucket.iconsInText=!!Fi&&Fi.iconsInText,(Fi||ui)&&Q9(R.bucket,ut,Lr,ui,R.imageMap,te,fr,mr,yi,dn,R.canonical)}R.showCollisionBoxes&&R.bucket.generateCollisionDebugBuffers()},i.bq=Kv,i.br=Ot,i.bs=so,i.bt=br,i.bu=tS,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,F,W,te){return a(this,void 0,void 0,function*(){if(b())try{return yield H(R,S,F,W,te)}catch(fe){}return function(fe,pe,ze,Ke,ut){let Lt=fe.width,Qt=fe.height;N&&j||(N=new OffscreenCanvas(Lt,Qt),j=N.getContext("2d",{willReadFrequently:!0})),N.width=Lt,N.height=Qt,j.drawImage(fe,0,0,Lt,Qt);let fr=j.getImageData(pe,ze,Ke,ut);return j.clearRect(0,0,Lt,Qt),fr.data}(R,S,F,W,te)})},i.bx=Lk,i.by=o,i.bz=s,i.c=oe,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(F){throw new Error(`Could not load image because of ${F.message}. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported.`)}}),i.e=L,i.f=R=>new Promise((S,F)=>{let W=new Image;W.onload=()=>{S(W),URL.revokeObjectURL(W.src),W.onload=null,window.requestAnimationFrame(()=>{W.src=Z})},W.onerror=()=>F(new Error("Could not load image. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."));let te=new Blob([new Uint8Array(R)],{type:"image/png"});W.src=R.byteLength?URL.createObjectURL(te):Z}),i.g=Me,i.h=(R,S)=>Se(L(R,{type:"json"}),S),i.i=O,i.j=ge,i.k=Pe,i.l=(R,S)=>Se(L(R,{type:"arrayBuffer"}),S),i.m=Se,i.n=function(R){return new tS(R).readFields(kQ,[])},i.o=na,i.p=iS,i.q=ue,i.r=Wi,i.s=Le,i.t=Zi,i.u=Ei,i.v=ce,i.w=T,i.x=function([R,S,F]){return S+=90,S*=Math.PI/180,F*=Math.PI/180,{x:R*Math.cos(S)*Math.sin(F),y:R*Math.sin(S)*Math.sin(F),z:R*Math.cos(F)}},i.y=Lo,i.z=is}),r("worker",["./shared"],function(i){"use strict";class a{constructor(Ge){this.keyCache={},Ge&&this.replace(Ge)}replace(Ge){this._layerConfigs={},this._layers={},this.update(Ge,[])}update(Ge,Je){for(let $e of Ge){this._layerConfigs[$e.id]=$e;let wt=this._layers[$e.id]=i.aA($e);wt._featureFilter=i.a7(wt.filter),this.keyCache[$e.id]&&delete this.keyCache[$e.id]}for(let $e of Je)delete this.keyCache[$e],delete this._layerConfigs[$e],delete this._layers[$e];this.familiesBySource={};let je=i.bk(Object.values(this._layerConfigs),this.keyCache);for(let $e of je){let wt=$e.map(ir=>this._layers[ir.id]),Ie=wt[0];if(Ie.visibility==="none")continue;let xe=Ie.source||"",Ce=this.familiesBySource[xe];Ce||(Ce=this.familiesBySource[xe]={});let vt=Ie.sourceLayer||"_geojsonTileLayer",nr=Ce[vt];nr||(nr=Ce[vt]=[]),nr.push(wt)}}}class o{constructor(Ge){let Je={},je=[];for(let xe in Ge){let Ce=Ge[xe],vt=Je[xe]={};for(let nr in Ce){let ir=Ce[+nr];if(!ir||ir.bitmap.width===0||ir.bitmap.height===0)continue;let pr={x:0,y:0,w:ir.bitmap.width+2,h:ir.bitmap.height+2};je.push(pr),vt[nr]={rect:pr,metrics:ir.metrics}}}let{w:$e,h:wt}=i.p(je),Ie=new i.o({width:$e||1,height:wt||1});for(let xe in Ge){let Ce=Ge[xe];for(let vt in Ce){let nr=Ce[+vt];if(!nr||nr.bitmap.width===0||nr.bitmap.height===0)continue;let ir=Je[xe][vt].rect;i.o.copy(nr.bitmap,Ie,{x:0,y:0},{x:ir.x+1,y:ir.y+1},nr.bitmap)}}this.image=Ie,this.positions=Je}}i.bl("GlyphAtlas",o);class s{constructor(Ge){this.tileID=new i.S(Ge.tileID.overscaledZ,Ge.tileID.wrap,Ge.tileID.canonical.z,Ge.tileID.canonical.x,Ge.tileID.canonical.y),this.uid=Ge.uid,this.zoom=Ge.zoom,this.pixelRatio=Ge.pixelRatio,this.tileSize=Ge.tileSize,this.source=Ge.source,this.overscaling=this.tileID.overscaleFactor(),this.showCollisionBoxes=Ge.showCollisionBoxes,this.collectResourceTiming=!!Ge.collectResourceTiming,this.returnDependencies=!!Ge.returnDependencies,this.promoteId=Ge.promoteId,this.inFlightDependencies=[]}parse(Ge,Je,je,$e){return i._(this,void 0,void 0,function*(){this.status="parsing",this.data=Ge,this.collisionBoxArray=new i.a5;let wt=new i.bm(Object.keys(Ge.layers).sort()),Ie=new i.bn(this.tileID,this.promoteId);Ie.bucketLayerIDs=[];let xe={},Ce={featureIndex:Ie,iconDependencies:{},patternDependencies:{},glyphDependencies:{},availableImages:je},vt=Je.familiesBySource[this.source];for(let Vn in vt){let kn=Ge.layers[Vn];if(!kn)continue;kn.version===1&&i.w(`Vector tile source "${this.source}" layer "${Vn}" does not use vector tile spec v2 and therefore may have some rendering errors.`);let ea=wt.encode(Vn),ua=[];for(let Vt=0;Vt<kn.length;Vt++){let _t=kn.feature(Vt),tr=Ie.getId(_t,Vn);ua.push({feature:_t,id:tr,index:Vt,sourceLayerIndex:ea})}for(let Vt of vt[Vn]){let _t=Vt[0];_t.source!==this.source&&i.w(`layer.source = ${_t.source} does not equal this.source = ${this.source}`),_t.minzoom&&this.zoom<Math.floor(_t.minzoom)||_t.maxzoom&&this.zoom>=_t.maxzoom||_t.visibility!=="none"&&(l(Vt,this.zoom,je),(xe[_t.id]=_t.createBucket({index:Ie.bucketLayerIDs.length,layers:Vt,zoom:this.zoom,pixelRatio:this.pixelRatio,overscaling:this.overscaling,collisionBoxArray:this.collisionBoxArray,sourceLayerIndex:ea,sourceID:this.source})).populate(ua,Ce,this.tileID.canonical),Ie.bucketLayerIDs.push(Vt.map(tr=>tr.id)))}}let nr=i.aF(Ce.glyphDependencies,Vn=>Object.keys(Vn).map(Number));this.inFlightDependencies.forEach(Vn=>Vn==null?void 0:Vn.abort()),this.inFlightDependencies=[];let ir=Promise.resolve({});if(Object.keys(nr).length){let Vn=new AbortController;this.inFlightDependencies.push(Vn),ir=$e.sendAsync({type:"GG",data:{stacks:nr,source:this.source,tileID:this.tileID,type:"glyphs"}},Vn)}let pr=Object.keys(Ce.iconDependencies),oi=Promise.resolve({});if(pr.length){let Vn=new AbortController;this.inFlightDependencies.push(Vn),oi=$e.sendAsync({type:"GI",data:{icons:pr,source:this.source,tileID:this.tileID,type:"icons"}},Vn)}let di=Object.keys(Ce.patternDependencies),Jr=Promise.resolve({});if(di.length){let Vn=new AbortController;this.inFlightDependencies.push(Vn),Jr=$e.sendAsync({type:"GI",data:{icons:di,source:this.source,tileID:this.tileID,type:"patterns"}},Vn)}let[fi,Hi,Pn]=yield Promise.all([ir,oi,Jr]),wn=new o(fi),pn=new i.bo(Hi,Pn);for(let Vn in xe){let kn=xe[Vn];kn instanceof i.a6?(l(kn.layers,this.zoom,je),i.bp({bucket:kn,glyphMap:fi,glyphPositions:wn.positions,imageMap:Hi,imagePositions:pn.iconPositions,showCollisionBoxes:this.showCollisionBoxes,canonical:this.tileID.canonical})):kn.hasPattern&&(kn instanceof i.bq||kn instanceof i.br||kn instanceof i.bs)&&(l(kn.layers,this.zoom,je),kn.addFeatures(Ce,this.tileID.canonical,pn.patternPositions))}return this.status="done",{buckets:Object.values(xe).filter(Vn=>!Vn.isEmpty()),featureIndex:Ie,collisionBoxArray:this.collisionBoxArray,glyphAtlasImage:wn.image,imageAtlas:pn,glyphMap:this.returnDependencies?fi:null,iconMap:this.returnDependencies?Hi:null,glyphPositions:this.returnDependencies?wn.positions:null}})}}function l(dt,Ge,Je){let je=new i.z(Ge);for(let $e of dt)$e.recalculate(je,Je)}class u{constructor(Ge,Je,je){this.actor=Ge,this.layerIndex=Je,this.availableImages=je,this.fetching={},this.loading={},this.loaded={}}loadVectorTile(Ge,Je){return i._(this,void 0,void 0,function*(){let je=yield i.l(Ge.request,Je);try{return{vectorTile:new i.bt.VectorTile(new i.bu(je.data)),rawData:je.data,cacheControl:je.cacheControl,expires:je.expires}}catch($e){let wt=new Uint8Array(je.data),Ie=`Unable to parse the tile at ${Ge.request.url}, `;throw Ie+=wt[0]===31&&wt[1]===139?"please make sure the data is not gzipped and that you have configured the relevant header in the server":`got error: ${$e.message}`,new Error(Ie)}})}loadTile(Ge){return i._(this,void 0,void 0,function*(){let Je=Ge.uid,je=!!(Ge&&Ge.request&&Ge.request.collectResourceTiming)&&new i.bv(Ge.request),$e=new s(Ge);this.loading[Je]=$e;let wt=new AbortController;$e.abort=wt;try{let Ie=yield this.loadVectorTile(Ge,wt);if(delete this.loading[Je],!Ie)return null;let xe=Ie.rawData,Ce={};Ie.expires&&(Ce.expires=Ie.expires),Ie.cacheControl&&(Ce.cacheControl=Ie.cacheControl);let vt={};if(je){let ir=je.finish();ir&&(vt.resourceTiming=JSON.parse(JSON.stringify(ir)))}$e.vectorTile=Ie.vectorTile;let nr=$e.parse(Ie.vectorTile,this.layerIndex,this.availableImages,this.actor);this.loaded[Je]=$e,this.fetching[Je]={rawTileData:xe,cacheControl:Ce,resourceTiming:vt};try{let ir=yield nr;return i.e({rawTileData:xe.slice(0)},ir,Ce,vt)}finally{delete this.fetching[Je]}}catch(Ie){throw delete this.loading[Je],$e.status="done",this.loaded[Je]=$e,Ie}})}reloadTile(Ge){return i._(this,void 0,void 0,function*(){let Je=Ge.uid;if(!this.loaded||!this.loaded[Je])throw new Error("Should not be trying to reload a tile that was never loaded or has been removed");let je=this.loaded[Je];if(je.showCollisionBoxes=Ge.showCollisionBoxes,je.status==="parsing"){let $e=yield je.parse(je.vectorTile,this.layerIndex,this.availableImages,this.actor),wt;if(this.fetching[Je]){let{rawTileData:Ie,cacheControl:xe,resourceTiming:Ce}=this.fetching[Je];delete this.fetching[Je],wt=i.e({rawTileData:Ie.slice(0)},$e,xe,Ce)}else wt=$e;return wt}if(je.status==="done"&&je.vectorTile)return je.parse(je.vectorTile,this.layerIndex,this.availableImages,this.actor)})}abortTile(Ge){return i._(this,void 0,void 0,function*(){let Je=this.loading,je=Ge.uid;Je&&Je[je]&&Je[je].abort&&(Je[je].abort.abort(),delete Je[je])})}removeTile(Ge){return i._(this,void 0,void 0,function*(){this.loaded&&this.loaded[Ge.uid]&&delete this.loaded[Ge.uid]})}}class c{constructor(){this.loaded={}}loadTile(Ge){return i._(this,void 0,void 0,function*(){let{uid:Je,encoding:je,rawImageData:$e,redFactor:wt,greenFactor:Ie,blueFactor:xe,baseShift:Ce}=Ge,vt=$e.width+2,nr=$e.height+2,ir=i.b($e)?new i.R({width:vt,height:nr},yield i.bw($e,-1,-1,vt,nr)):$e,pr=new i.bx(Je,ir,je,wt,Ie,xe,Ce);return this.loaded=this.loaded||{},this.loaded[Je]=pr,pr})}removeTile(Ge){let Je=this.loaded,je=Ge.uid;Je&&Je[je]&&delete Je[je]}}function f(dt,Ge){if(dt.length!==0){h(dt[0],Ge);for(var Je=1;Je<dt.length;Je++)h(dt[Je],!Ge)}}function h(dt,Ge){for(var Je=0,je=0,$e=0,wt=dt.length,Ie=wt-1;$e<wt;Ie=$e++){var xe=(dt[$e][0]-dt[Ie][0])*(dt[Ie][1]+dt[$e][1]),Ce=Je+xe;je+=Math.abs(Je)>=Math.abs(xe)?Je-Ce+xe:xe-Ce+Je,Je=Ce}Je+je>=0!=!!Ge&&dt.reverse()}var d=i.by(function dt(Ge,Je){var je,$e=Ge&&Ge.type;if($e==="FeatureCollection")for(je=0;je<Ge.features.length;je++)dt(Ge.features[je],Je);else if($e==="GeometryCollection")for(je=0;je<Ge.geometries.length;je++)dt(Ge.geometries[je],Je);else if($e==="Feature")dt(Ge.geometry,Je);else if($e==="Polygon")f(Ge.coordinates,Je);else if($e==="MultiPolygon")for(je=0;je<Ge.coordinates.length;je++)f(Ge.coordinates[je],Je);return Ge});let v=i.bt.VectorTileFeature.prototype.toGeoJSON;var x={exports:{}},b=i.bz,p=i.bt.VectorTileFeature,C=E;function E(dt,Ge){this.options=Ge||{},this.features=dt,this.length=dt.length}function A(dt,Ge){this.id=typeof dt.id=="number"?dt.id:void 0,this.type=dt.type,this.rawGeometry=dt.type===1?[dt.geometry]:dt.geometry,this.properties=dt.tags,this.extent=Ge||4096}E.prototype.feature=function(dt){return new A(this.features[dt],this.options.extent)},A.prototype.loadGeometry=function(){var dt=this.rawGeometry;this.geometry=[];for(var Ge=0;Ge<dt.length;Ge++){for(var Je=dt[Ge],je=[],$e=0;$e<Je.length;$e++)je.push(new b(Je[$e][0],Je[$e][1]));this.geometry.push(je)}return this.geometry},A.prototype.bbox=function(){this.geometry||this.loadGeometry();for(var dt=this.geometry,Ge=1/0,Je=-1/0,je=1/0,$e=-1/0,wt=0;wt<dt.length;wt++)for(var Ie=dt[wt],xe=0;xe<Ie.length;xe++){var Ce=Ie[xe];Ge=Math.min(Ge,Ce.x),Je=Math.max(Je,Ce.x),je=Math.min(je,Ce.y),$e=Math.max($e,Ce.y)}return[Ge,je,Je,$e]},A.prototype.toGeoJSON=p.prototype.toGeoJSON;var L=i.bA,_=C;function k(dt){var Ge=new L;return function(Je,je){for(var $e in Je.layers)je.writeMessage(3,M,Je.layers[$e])}(dt,Ge),Ge.finish()}function M(dt,Ge){var Je;Ge.writeVarintField(15,dt.version||1),Ge.writeStringField(1,dt.name||""),Ge.writeVarintField(5,dt.extent||4096);var je={keys:[],values:[],keycache:{},valuecache:{}};for(Je=0;Je<dt.length;Je++)je.feature=dt.feature(Je),Ge.writeMessage(2,g,je);var $e=je.keys;for(Je=0;Je<$e.length;Je++)Ge.writeStringField(3,$e[Je]);var wt=je.values;for(Je=0;Je<wt.length;Je++)Ge.writeMessage(4,V,wt[Je])}function g(dt,Ge){var Je=dt.feature;Je.id!==void 0&&Ge.writeVarintField(1,Je.id),Ge.writeMessage(2,P,dt),Ge.writeVarintField(3,Je.type),Ge.writeMessage(4,O,Je)}function P(dt,Ge){var Je=dt.feature,je=dt.keys,$e=dt.values,wt=dt.keycache,Ie=dt.valuecache;for(var xe in Je.properties){var Ce=Je.properties[xe],vt=wt[xe];if(Ce!==null){vt===void 0&&(je.push(xe),wt[xe]=vt=je.length-1),Ge.writeVarint(vt);var nr=typeof Ce;nr!=="string"&&nr!=="boolean"&&nr!=="number"&&(Ce=JSON.stringify(Ce));var ir=nr+":"+Ce,pr=Ie[ir];pr===void 0&&($e.push(Ce),Ie[ir]=pr=$e.length-1),Ge.writeVarint(pr)}}}function T(dt,Ge){return(Ge<<3)+(7&dt)}function z(dt){return dt<<1^dt>>31}function O(dt,Ge){for(var Je=dt.loadGeometry(),je=dt.type,$e=0,wt=0,Ie=Je.length,xe=0;xe<Ie;xe++){var Ce=Je[xe],vt=1;je===1&&(vt=Ce.length),Ge.writeVarint(T(1,vt));for(var nr=je===3?Ce.length-1:Ce.length,ir=0;ir<nr;ir++){ir===1&&je!==1&&Ge.writeVarint(T(2,nr-1));var pr=Ce[ir].x-$e,oi=Ce[ir].y-wt;Ge.writeVarint(z(pr)),Ge.writeVarint(z(oi)),$e+=pr,wt+=oi}je===3&&Ge.writeVarint(T(7,1))}}function V(dt,Ge){var Je=typeof dt;Je==="string"?Ge.writeStringField(1,dt):Je==="boolean"?Ge.writeBooleanField(7,dt):Je==="number"&&(dt%1!=0?Ge.writeDoubleField(3,dt):dt<0?Ge.writeSVarintField(6,dt):Ge.writeVarintField(5,dt))}x.exports=k,x.exports.fromVectorTileJs=k,x.exports.fromGeojsonVt=function(dt,Ge){Ge=Ge||{};var Je={};for(var je in dt)Je[je]=new _(dt[je].features,Ge),Je[je].name=je,Je[je].version=Ge.version,Je[je].extent=Ge.extent;return k({layers:Je})},x.exports.GeoJSONWrapper=_;var G=i.by(x.exports);let Z={minZoom:0,maxZoom:16,minPoints:2,radius:40,extent:512,nodeSize:64,log:!1,generateId:!1,reduce:null,map:dt=>dt},H=Math.fround||(N=new Float32Array(1),dt=>(N[0]=+dt,N[0]));var N;let j=3,re=5,oe=6;class _e{constructor(Ge){this.options=Object.assign(Object.create(Z),Ge),this.trees=new Array(this.options.maxZoom+1),this.stride=this.options.reduce?7:6,this.clusterProps=[]}load(Ge){let{log:Je,minZoom:je,maxZoom:$e}=this.options;Je&&console.time("total time");let wt=`prepare ${Ge.length} points`;Je&&console.time(wt),this.points=Ge;let Ie=[];for(let Ce=0;Ce<Ge.length;Ce++){let vt=Ge[Ce];if(!vt.geometry)continue;let[nr,ir]=vt.geometry.coordinates,pr=H(me(nr)),oi=H(ie(ir));Ie.push(pr,oi,1/0,Ce,-1,1),this.options.reduce&&Ie.push(0)}let xe=this.trees[$e+1]=this._createTree(Ie);Je&&console.timeEnd(wt);for(let Ce=$e;Ce>=je;Ce--){let vt=+Date.now();xe=this.trees[Ce]=this._createTree(this._cluster(xe,Ce)),Je&&console.log("z%d: %d clusters in %dms",Ce,xe.numItems,+Date.now()-vt)}return Je&&console.timeEnd("total time"),this}getClusters(Ge,Je){let je=((Ge[0]+180)%360+360)%360-180,$e=Math.max(-90,Math.min(90,Ge[1])),wt=Ge[2]===180?180:((Ge[2]+180)%360+360)%360-180,Ie=Math.max(-90,Math.min(90,Ge[3]));if(Ge[2]-Ge[0]>=360)je=-180,wt=180;else if(je>wt){let ir=this.getClusters([je,$e,180,Ie],Je),pr=this.getClusters([-180,$e,wt,Ie],Je);return ir.concat(pr)}let xe=this.trees[this._limitZoom(Je)],Ce=xe.range(me(je),ie(Ie),me(wt),ie($e)),vt=xe.data,nr=[];for(let ir of Ce){let pr=this.stride*ir;nr.push(vt[pr+re]>1?Me(vt,pr,this.clusterProps):this.points[vt[pr+j]])}return nr}getChildren(Ge){let Je=this._getOriginId(Ge),je=this._getOriginZoom(Ge),$e="No cluster with the specified id.",wt=this.trees[je];if(!wt)throw new Error($e);let Ie=wt.data;if(Je*this.stride>=Ie.length)throw new Error($e);let xe=this.options.radius/(this.options.extent*Math.pow(2,je-1)),Ce=wt.within(Ie[Je*this.stride],Ie[Je*this.stride+1],xe),vt=[];for(let nr of Ce){let ir=nr*this.stride;Ie[ir+4]===Ge&&vt.push(Ie[ir+re]>1?Me(Ie,ir,this.clusterProps):this.points[Ie[ir+j]])}if(vt.length===0)throw new Error($e);return vt}getLeaves(Ge,Je,je){let $e=[];return this._appendLeaves($e,Ge,Je=Je||10,je=je||0,0),$e}getTile(Ge,Je,je){let $e=this.trees[this._limitZoom(Ge)],wt=Math.pow(2,Ge),{extent:Ie,radius:xe}=this.options,Ce=xe/Ie,vt=(je-Ce)/wt,nr=(je+1+Ce)/wt,ir={features:[]};return this._addTileFeatures($e.range((Je-Ce)/wt,vt,(Je+1+Ce)/wt,nr),$e.data,Je,je,wt,ir),Je===0&&this._addTileFeatures($e.range(1-Ce/wt,vt,1,nr),$e.data,wt,je,wt,ir),Je===wt-1&&this._addTileFeatures($e.range(0,vt,Ce/wt,nr),$e.data,-1,je,wt,ir),ir.features.length?ir:null}getClusterExpansionZoom(Ge){let Je=this._getOriginZoom(Ge)-1;for(;Je<=this.options.maxZoom;){let je=this.getChildren(Ge);if(Je++,je.length!==1)break;Ge=je[0].properties.cluster_id}return Je}_appendLeaves(Ge,Je,je,$e,wt){let Ie=this.getChildren(Je);for(let xe of Ie){let Ce=xe.properties;if(Ce&&Ce.cluster?wt+Ce.point_count<=$e?wt+=Ce.point_count:wt=this._appendLeaves(Ge,Ce.cluster_id,je,$e,wt):wt<$e?wt++:Ge.push(xe),Ge.length===je)break}return wt}_createTree(Ge){let Je=new i.av(Ge.length/this.stride|0,this.options.nodeSize,Float32Array);for(let je=0;je<Ge.length;je+=this.stride)Je.add(Ge[je],Ge[je+1]);return Je.finish(),Je.data=Ge,Je}_addTileFeatures(Ge,Je,je,$e,wt,Ie){for(let xe of Ge){let Ce=xe*this.stride,vt=Je[Ce+re]>1,nr,ir,pr;if(vt)nr=ke(Je,Ce,this.clusterProps),ir=Je[Ce],pr=Je[Ce+1];else{let Jr=this.points[Je[Ce+j]];nr=Jr.properties;let[fi,Hi]=Jr.geometry.coordinates;ir=me(fi),pr=ie(Hi)}let oi={type:1,geometry:[[Math.round(this.options.extent*(ir*wt-je)),Math.round(this.options.extent*(pr*wt-$e))]],tags:nr},di;di=vt||this.options.generateId?Je[Ce+j]:this.points[Je[Ce+j]].id,di!==void 0&&(oi.id=di),Ie.features.push(oi)}}_limitZoom(Ge){return Math.max(this.options.minZoom,Math.min(Math.floor(+Ge),this.options.maxZoom+1))}_cluster(Ge,Je){let{radius:je,extent:$e,reduce:wt,minPoints:Ie}=this.options,xe=je/($e*Math.pow(2,Je)),Ce=Ge.data,vt=[],nr=this.stride;for(let ir=0;ir<Ce.length;ir+=nr){if(Ce[ir+2]<=Je)continue;Ce[ir+2]=Je;let pr=Ce[ir],oi=Ce[ir+1],di=Ge.within(Ce[ir],Ce[ir+1],xe),Jr=Ce[ir+re],fi=Jr;for(let Hi of di){let Pn=Hi*nr;Ce[Pn+2]>Je&&(fi+=Ce[Pn+re])}if(fi>Jr&&fi>=Ie){let Hi,Pn=pr*Jr,wn=oi*Jr,pn=-1,Vn=((ir/nr|0)<<5)+(Je+1)+this.points.length;for(let kn of di){let ea=kn*nr;if(Ce[ea+2]<=Je)continue;Ce[ea+2]=Je;let ua=Ce[ea+re];Pn+=Ce[ea]*ua,wn+=Ce[ea+1]*ua,Ce[ea+4]=Vn,wt&&(Hi||(Hi=this._map(Ce,ir,!0),pn=this.clusterProps.length,this.clusterProps.push(Hi)),wt(Hi,this._map(Ce,ea)))}Ce[ir+4]=Vn,vt.push(Pn/fi,wn/fi,1/0,Vn,-1,fi),wt&&vt.push(pn)}else{for(let Hi=0;Hi<nr;Hi++)vt.push(Ce[ir+Hi]);if(fi>1)for(let Hi of di){let Pn=Hi*nr;if(!(Ce[Pn+2]<=Je)){Ce[Pn+2]=Je;for(let wn=0;wn<nr;wn++)vt.push(Ce[Pn+wn])}}}}return vt}_getOriginId(Ge){return Ge-this.points.length>>5}_getOriginZoom(Ge){return(Ge-this.points.length)%32}_map(Ge,Je,je){if(Ge[Je+re]>1){let Ie=this.clusterProps[Ge[Je+oe]];return je?Object.assign({},Ie):Ie}let $e=this.points[Ge[Je+j]].properties,wt=this.options.map($e);return je&&wt===$e?Object.assign({},wt):wt}}function Me(dt,Ge,Je){return{type:"Feature",id:dt[Ge+j],properties:ke(dt,Ge,Je),geometry:{type:"Point",coordinates:[(je=dt[Ge],360*(je-.5)),Se(dt[Ge+1])]}};var je}function ke(dt,Ge,Je){let je=dt[Ge+re],$e=je>=1e4?`${Math.round(je/1e3)}k`:je>=1e3?Math.round(je/100)/10+"k":je,wt=dt[Ge+oe],Ie=wt===-1?{}:Object.assign({},Je[wt]);return Object.assign(Ie,{cluster:!0,cluster_id:dt[Ge+j],point_count:je,point_count_abbreviated:$e})}function me(dt){return dt/360+.5}function ie(dt){let Ge=Math.sin(dt*Math.PI/180),Je=.5-.25*Math.log((1+Ge)/(1-Ge))/Math.PI;return Je<0?0:Je>1?1:Je}function Se(dt){let Ge=(180-360*dt)*Math.PI/180;return 360*Math.atan(Math.exp(Ge))/Math.PI-90}function Le(dt,Ge,Je,je){let $e=je,wt=Ge+(Je-Ge>>1),Ie,xe=Je-Ge,Ce=dt[Ge],vt=dt[Ge+1],nr=dt[Je],ir=dt[Je+1];for(let pr=Ge+3;pr<Je;pr+=3){let oi=Ae(dt[pr],dt[pr+1],Ce,vt,nr,ir);if(oi>$e)Ie=pr,$e=oi;else if(oi===$e){let di=Math.abs(pr-wt);di<xe&&(Ie=pr,xe=di)}}$e>je&&(Ie-Ge>3&&Le(dt,Ge,Ie,je),dt[Ie+2]=$e,Je-Ie>3&&Le(dt,Ie,Je,je))}function Ae(dt,Ge,Je,je,$e,wt){let Ie=$e-Je,xe=wt-je;if(Ie!==0||xe!==0){let Ce=((dt-Je)*Ie+(Ge-je)*xe)/(Ie*Ie+xe*xe);Ce>1?(Je=$e,je=wt):Ce>0&&(Je+=Ie*Ce,je+=xe*Ce)}return Ie=dt-Je,xe=Ge-je,Ie*Ie+xe*xe}function De(dt,Ge,Je,je){let $e={id:dt==null?null:dt,type:Ge,geometry:Je,tags:je,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0};if(Ge==="Point"||Ge==="MultiPoint"||Ge==="LineString")Pe($e,Je);else if(Ge==="Polygon")Pe($e,Je[0]);else if(Ge==="MultiLineString")for(let wt of Je)Pe($e,wt);else if(Ge==="MultiPolygon")for(let wt of Je)Pe($e,wt[0]);return $e}function Pe(dt,Ge){for(let Je=0;Je<Ge.length;Je+=3)dt.minX=Math.min(dt.minX,Ge[Je]),dt.minY=Math.min(dt.minY,Ge[Je+1]),dt.maxX=Math.max(dt.maxX,Ge[Je]),dt.maxY=Math.max(dt.maxY,Ge[Je+1])}function ge(dt,Ge,Je,je){if(!Ge.geometry)return;let $e=Ge.geometry.coordinates;if($e&&$e.length===0)return;let wt=Ge.geometry.type,Ie=Math.pow(Je.tolerance/((1<<Je.maxZoom)*Je.extent),2),xe=[],Ce=Ge.id;if(Je.promoteId?Ce=Ge.properties[Je.promoteId]:Je.generateId&&(Ce=je||0),wt==="Point")Fe($e,xe);else if(wt==="MultiPoint")for(let vt of $e)Fe(vt,xe);else if(wt==="LineString")ce($e,xe,Ie,!1);else if(wt==="MultiLineString"){if(Je.lineMetrics){for(let vt of $e)xe=[],ce(vt,xe,Ie,!1),dt.push(De(Ce,"LineString",xe,Ge.properties));return}Ze($e,xe,Ie,!1)}else if(wt==="Polygon")Ze($e,xe,Ie,!0);else{if(wt!=="MultiPolygon"){if(wt==="GeometryCollection"){for(let vt of Ge.geometry.geometries)ge(dt,{id:Ce,geometry:vt,properties:Ge.properties},Je,je);return}throw new Error("Input data is not a valid GeoJSON object.")}for(let vt of $e){let nr=[];Ze(vt,nr,Ie,!0),xe.push(nr)}}dt.push(De(Ce,wt,xe,Ge.properties))}function Fe(dt,Ge){Ge.push(ct(dt[0]),pt(dt[1]),0)}function ce(dt,Ge,Je,je){let $e,wt,Ie=0;for(let Ce=0;Ce<dt.length;Ce++){let vt=ct(dt[Ce][0]),nr=pt(dt[Ce][1]);Ge.push(vt,nr,0),Ce>0&&(Ie+=je?($e*nr-vt*wt)/2:Math.sqrt(Math.pow(vt-$e,2)+Math.pow(nr-wt,2))),$e=vt,wt=nr}let xe=Ge.length-3;Ge[2]=1,Le(Ge,0,xe,Je),Ge[xe+2]=1,Ge.size=Math.abs(Ie),Ge.start=0,Ge.end=Ge.size}function Ze(dt,Ge,Je,je){for(let $e=0;$e<dt.length;$e++){let wt=[];ce(dt[$e],wt,Je,je),Ge.push(wt)}}function ct(dt){return dt/360+.5}function pt(dt){let Ge=Math.sin(dt*Math.PI/180),Je=.5-.25*Math.log((1+Ge)/(1-Ge))/Math.PI;return Je<0?0:Je>1?1:Je}function Wt(dt,Ge,Je,je,$e,wt,Ie,xe){if(je/=Ge,wt>=(Je/=Ge)&&Ie<je)return dt;if(Ie<Je||wt>=je)return null;let Ce=[];for(let vt of dt){let nr=vt.geometry,ir=vt.type,pr=$e===0?vt.minX:vt.minY,oi=$e===0?vt.maxX:vt.maxY;if(pr>=Je&&oi<je){Ce.push(vt);continue}if(oi<Je||pr>=je)continue;let di=[];if(ir==="Point"||ir==="MultiPoint")st(nr,di,Je,je,$e);else if(ir==="LineString")lt(nr,di,Je,je,$e,!1,xe.lineMetrics);else if(ir==="MultiLineString")Nt(nr,di,Je,je,$e,!1);else if(ir==="Polygon")Nt(nr,di,Je,je,$e,!0);else if(ir==="MultiPolygon")for(let Jr of nr){let fi=[];Nt(Jr,fi,Je,je,$e,!0),fi.length&&di.push(fi)}if(di.length){if(xe.lineMetrics&&ir==="LineString"){for(let Jr of di)Ce.push(De(vt.id,ir,Jr,vt.tags));continue}ir!=="LineString"&&ir!=="MultiLineString"||(di.length===1?(ir="LineString",di=di[0]):ir="MultiLineString"),ir!=="Point"&&ir!=="MultiPoint"||(ir=di.length===3?"Point":"MultiPoint"),Ce.push(De(vt.id,ir,di,vt.tags))}}return Ce.length?Ce:null}function st(dt,Ge,Je,je,$e){for(let wt=0;wt<dt.length;wt+=3){let Ie=dt[wt+$e];Ie>=Je&&Ie<=je&&$t(Ge,dt[wt],dt[wt+1],dt[wt+2])}}function lt(dt,Ge,Je,je,$e,wt,Ie){let xe=Gt(dt),Ce=$e===0?sr:wr,vt,nr,ir=dt.start;for(let fi=0;fi<dt.length-3;fi+=3){let Hi=dt[fi],Pn=dt[fi+1],wn=dt[fi+2],pn=dt[fi+3],Vn=dt[fi+4],kn=$e===0?Hi:Pn,ea=$e===0?pn:Vn,ua=!1;Ie&&(vt=Math.sqrt(Math.pow(Hi-pn,2)+Math.pow(Pn-Vn,2))),kn<Je?ea>Je&&(nr=Ce(xe,Hi,Pn,pn,Vn,Je),Ie&&(xe.start=ir+vt*nr)):kn>je?ea<je&&(nr=Ce(xe,Hi,Pn,pn,Vn,je),Ie&&(xe.start=ir+vt*nr)):$t(xe,Hi,Pn,wn),ea<Je&&kn>=Je&&(nr=Ce(xe,Hi,Pn,pn,Vn,Je),ua=!0),ea>je&&kn<=je&&(nr=Ce(xe,Hi,Pn,pn,Vn,je),ua=!0),!wt&&ua&&(Ie&&(xe.end=ir+vt*nr),Ge.push(xe),xe=Gt(dt)),Ie&&(ir+=vt)}let pr=dt.length-3,oi=dt[pr],di=dt[pr+1],Jr=$e===0?oi:di;Jr>=Je&&Jr<=je&&$t(xe,oi,di,dt[pr+2]),pr=xe.length-3,wt&&pr>=3&&(xe[pr]!==xe[0]||xe[pr+1]!==xe[1])&&$t(xe,xe[0],xe[1],xe[2]),xe.length&&Ge.push(xe)}function Gt(dt){let Ge=[];return Ge.size=dt.size,Ge.start=dt.start,Ge.end=dt.end,Ge}function Nt(dt,Ge,Je,je,$e,wt){for(let Ie of dt)lt(Ie,Ge,Je,je,$e,wt,!1)}function $t(dt,Ge,Je,je){dt.push(Ge,Je,je)}function sr(dt,Ge,Je,je,$e,wt){let Ie=(wt-Ge)/(je-Ge);return $t(dt,wt,Je+($e-Je)*Ie,1),Ie}function wr(dt,Ge,Je,je,$e,wt){let Ie=(wt-Je)/($e-Je);return $t(dt,Ge+(je-Ge)*Ie,wt,1),Ie}function ur(dt,Ge){let Je=[];for(let je=0;je<dt.length;je++){let $e=dt[je],wt=$e.type,Ie;if(wt==="Point"||wt==="MultiPoint"||wt==="LineString")Ie=Qe($e.geometry,Ge);else if(wt==="MultiLineString"||wt==="Polygon"){Ie=[];for(let xe of $e.geometry)Ie.push(Qe(xe,Ge))}else if(wt==="MultiPolygon"){Ie=[];for(let xe of $e.geometry){let Ce=[];for(let vt of xe)Ce.push(Qe(vt,Ge));Ie.push(Ce)}}Je.push(De($e.id,wt,Ie,$e.tags))}return Je}function Qe(dt,Ge){let Je=[];Je.size=dt.size,dt.start!==void 0&&(Je.start=dt.start,Je.end=dt.end);for(let je=0;je<dt.length;je+=3)Je.push(dt[je]+Ge,dt[je+1],dt[je+2]);return Je}function Et(dt,Ge){if(dt.transformed)return dt;let Je=1<<dt.z,je=dt.x,$e=dt.y;for(let wt of dt.features){let Ie=wt.geometry,xe=wt.type;if(wt.geometry=[],xe===1)for(let Ce=0;Ce<Ie.length;Ce+=2)wt.geometry.push(er(Ie[Ce],Ie[Ce+1],Ge,Je,je,$e));else for(let Ce=0;Ce<Ie.length;Ce++){let vt=[];for(let nr=0;nr<Ie[Ce].length;nr+=2)vt.push(er(Ie[Ce][nr],Ie[Ce][nr+1],Ge,Je,je,$e));wt.geometry.push(vt)}}return dt.transformed=!0,dt}function er(dt,Ge,Je,je,$e,wt){return[Math.round(Je*(dt*je-$e)),Math.round(Je*(Ge*je-wt))]}function Ut(dt,Ge,Je,je,$e){let wt=Ge===$e.maxZoom?0:$e.tolerance/((1<<Ge)*$e.extent),Ie={features:[],numPoints:0,numSimplified:0,numFeatures:dt.length,source:null,x:Je,y:je,z:Ge,transformed:!1,minX:2,minY:1,maxX:-1,maxY:0};for(let xe of dt)Ft(Ie,xe,wt,$e);return Ie}function Ft(dt,Ge,Je,je){let $e=Ge.geometry,wt=Ge.type,Ie=[];if(dt.minX=Math.min(dt.minX,Ge.minX),dt.minY=Math.min(dt.minY,Ge.minY),dt.maxX=Math.max(dt.maxX,Ge.maxX),dt.maxY=Math.max(dt.maxY,Ge.maxY),wt==="Point"||wt==="MultiPoint")for(let xe=0;xe<$e.length;xe+=3)Ie.push($e[xe],$e[xe+1]),dt.numPoints++,dt.numSimplified++;else if(wt==="LineString")bt(Ie,$e,dt,Je,!1,!1);else if(wt==="MultiLineString"||wt==="Polygon")for(let xe=0;xe<$e.length;xe++)bt(Ie,$e[xe],dt,Je,wt==="Polygon",xe===0);else if(wt==="MultiPolygon")for(let xe=0;xe<$e.length;xe++){let Ce=$e[xe];for(let vt=0;vt<Ce.length;vt++)bt(Ie,Ce[vt],dt,Je,!0,vt===0)}if(Ie.length){let xe=Ge.tags||null;if(wt==="LineString"&&je.lineMetrics){xe={};for(let vt in Ge.tags)xe[vt]=Ge.tags[vt];xe.mapbox_clip_start=$e.start/$e.size,xe.mapbox_clip_end=$e.end/$e.size}let Ce={geometry:Ie,type:wt==="Polygon"||wt==="MultiPolygon"?3:wt==="LineString"||wt==="MultiLineString"?2:1,tags:xe};Ge.id!==null&&(Ce.id=Ge.id),dt.features.push(Ce)}}function bt(dt,Ge,Je,je,$e,wt){let Ie=je*je;if(je>0&&Ge.size<($e?Ie:je))return void(Je.numPoints+=Ge.length/3);let xe=[];for(let Ce=0;Ce<Ge.length;Ce+=3)(je===0||Ge[Ce+2]>Ie)&&(Je.numSimplified++,xe.push(Ge[Ce],Ge[Ce+1])),Je.numPoints++;$e&&function(Ce,vt){let nr=0;for(let ir=0,pr=Ce.length,oi=pr-2;ir<pr;oi=ir,ir+=2)nr+=(Ce[ir]-Ce[oi])*(Ce[ir+1]+Ce[oi+1]);if(nr>0===vt)for(let ir=0,pr=Ce.length;ir<pr/2;ir+=2){let oi=Ce[ir],di=Ce[ir+1];Ce[ir]=Ce[pr-2-ir],Ce[ir+1]=Ce[pr-1-ir],Ce[pr-2-ir]=oi,Ce[pr-1-ir]=di}}(xe,wt),dt.push(xe)}let yt={maxZoom:14,indexMaxZoom:5,indexMaxPoints:1e5,tolerance:3,extent:4096,buffer:64,lineMetrics:!1,promoteId:null,generateId:!1,debug:0};class Yt{constructor(Ge,Je){let je=(Je=this.options=function(wt,Ie){for(let xe in Ie)wt[xe]=Ie[xe];return wt}(Object.create(yt),Je)).debug;if(je&&console.time("preprocess data"),Je.maxZoom<0||Je.maxZoom>24)throw new Error("maxZoom should be in the 0-24 range");if(Je.promoteId&&Je.generateId)throw new Error("promoteId and generateId cannot be used together.");let $e=function(wt,Ie){let xe=[];if(wt.type==="FeatureCollection")for(let Ce=0;Ce<wt.features.length;Ce++)ge(xe,wt.features[Ce],Ie,Ce);else ge(xe,wt.type==="Feature"?wt:{geometry:wt},Ie);return xe}(Ge,Je);this.tiles={},this.tileCoords=[],je&&(console.timeEnd("preprocess data"),console.log("index: maxZoom: %d, maxPoints: %d",Je.indexMaxZoom,Je.indexMaxPoints),console.time("generate tiles"),this.stats={},this.total=0),$e=function(wt,Ie){let xe=Ie.buffer/Ie.extent,Ce=wt,vt=Wt(wt,1,-1-xe,xe,0,-1,2,Ie),nr=Wt(wt,1,1-xe,2+xe,0,-1,2,Ie);return(vt||nr)&&(Ce=Wt(wt,1,-xe,1+xe,0,-1,2,Ie)||[],vt&&(Ce=ur(vt,1).concat(Ce)),nr&&(Ce=Ce.concat(ur(nr,-1)))),Ce}($e,Je),$e.length&&this.splitTile($e,0,0,0),je&&($e.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(Ge,Je,je,$e,wt,Ie,xe){let Ce=[Ge,Je,je,$e],vt=this.options,nr=vt.debug;for(;Ce.length;){$e=Ce.pop(),je=Ce.pop(),Je=Ce.pop(),Ge=Ce.pop();let ir=1<<Je,pr=lr(Je,je,$e),oi=this.tiles[pr];if(!oi&&(nr>1&&console.time("creation"),oi=this.tiles[pr]=Ut(Ge,Je,je,$e,vt),this.tileCoords.push({z:Je,x:je,y:$e}),nr)){nr>1&&(console.log("tile z%d-%d-%d (features: %d, points: %d, simplified: %d)",Je,je,$e,oi.numFeatures,oi.numPoints,oi.numSimplified),console.timeEnd("creation"));let ua=`z${Je}`;this.stats[ua]=(this.stats[ua]||0)+1,this.total++}if(oi.source=Ge,wt==null){if(Je===vt.indexMaxZoom||oi.numPoints<=vt.indexMaxPoints)continue}else{if(Je===vt.maxZoom||Je===wt)continue;if(wt!=null){let ua=wt-Je;if(je!==Ie>>ua||$e!==xe>>ua)continue}}if(oi.source=null,Ge.length===0)continue;nr>1&&console.time("clipping");let di=.5*vt.buffer/vt.extent,Jr=.5-di,fi=.5+di,Hi=1+di,Pn=null,wn=null,pn=null,Vn=null,kn=Wt(Ge,ir,je-di,je+fi,0,oi.minX,oi.maxX,vt),ea=Wt(Ge,ir,je+Jr,je+Hi,0,oi.minX,oi.maxX,vt);Ge=null,kn&&(Pn=Wt(kn,ir,$e-di,$e+fi,1,oi.minY,oi.maxY,vt),wn=Wt(kn,ir,$e+Jr,$e+Hi,1,oi.minY,oi.maxY,vt),kn=null),ea&&(pn=Wt(ea,ir,$e-di,$e+fi,1,oi.minY,oi.maxY,vt),Vn=Wt(ea,ir,$e+Jr,$e+Hi,1,oi.minY,oi.maxY,vt),ea=null),nr>1&&console.timeEnd("clipping"),Ce.push(Pn||[],Je+1,2*je,2*$e),Ce.push(wn||[],Je+1,2*je,2*$e+1),Ce.push(pn||[],Je+1,2*je+1,2*$e),Ce.push(Vn||[],Je+1,2*je+1,2*$e+1)}}getTile(Ge,Je,je){Ge=+Ge,Je=+Je,je=+je;let $e=this.options,{extent:wt,debug:Ie}=$e;if(Ge<0||Ge>24)return null;let xe=1<<Ge,Ce=lr(Ge,Je=Je+xe&xe-1,je);if(this.tiles[Ce])return Et(this.tiles[Ce],wt);Ie>1&&console.log("drilling down to z%d-%d-%d",Ge,Je,je);let vt,nr=Ge,ir=Je,pr=je;for(;!vt&&nr>0;)nr--,ir>>=1,pr>>=1,vt=this.tiles[lr(nr,ir,pr)];return vt&&vt.source?(Ie>1&&(console.log("found parent tile z%d-%d-%d",nr,ir,pr),console.time("drilling down")),this.splitTile(vt.source,nr,ir,pr,Ge,Je,je),Ie>1&&console.timeEnd("drilling down"),this.tiles[Ce]?Et(this.tiles[Ce],wt):null):null}}function lr(dt,Ge,Je){return 32*((1<<dt)*Je+Ge)+dt}function Tr(dt,Ge){return Ge?dt.properties[Ge]:dt.id}function Rr(dt,Ge){if(dt==null)return!0;if(dt.type==="Feature")return Tr(dt,Ge)!=null;if(dt.type==="FeatureCollection"){let Je=new Set;for(let je of dt.features){let $e=Tr(je,Ge);if($e==null||Je.has($e))return!1;Je.add($e)}return!0}return!1}function ei(dt,Ge){let Je=new Map;if(dt!=null)if(dt.type==="Feature")Je.set(Tr(dt,Ge),dt);else for(let je of dt.features)Je.set(Tr(je,Ge),je);return Je}class Wr extends u{constructor(){super(...arguments),this._dataUpdateable=new Map}loadVectorTile(Ge,Je){return i._(this,void 0,void 0,function*(){let je=Ge.tileID.canonical;if(!this._geoJSONIndex)throw new Error("Unable to parse the data into a cluster or geojson");let $e=this._geoJSONIndex.getTile(je.z,je.x,je.y);if(!$e)return null;let wt=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(Ce){this._feature=Ce,this.extent=i.X,this.type=Ce.type,this.properties=Ce.tags,"id"in Ce&&!isNaN(Ce.id)&&(this.id=parseInt(Ce.id,10))}loadGeometry(){if(this._feature.type===1){let Ce=[];for(let vt of this._feature.geometry)Ce.push([new i.P(vt[0],vt[1])]);return Ce}{let Ce=[];for(let vt of this._feature.geometry){let nr=[];for(let ir of vt)nr.push(new i.P(ir[0],ir[1]));Ce.push(nr)}return Ce}}toGeoJSON(Ce,vt,nr){return v.call(this,Ce,vt,nr)}}(this._features[xe])}}($e.features),Ie=G(wt);return Ie.byteOffset===0&&Ie.byteLength===Ie.buffer.byteLength||(Ie=new Uint8Array(Ie)),{vectorTile:wt,rawData:Ie.buffer}})}loadData(Ge){return i._(this,void 0,void 0,function*(){var Je;(Je=this._pendingRequest)===null||Je===void 0||Je.abort();let je=!!(Ge&&Ge.request&&Ge.request.collectResourceTiming)&&new i.bv(Ge.request);this._pendingRequest=new AbortController;try{this._pendingData=this.loadAndProcessGeoJSON(Ge,this._pendingRequest),this._geoJSONIndex=Ge.cluster?new _e(function({superclusterOptions:Ie,clusterProperties:xe}){if(!xe||!Ie)return Ie;let Ce={},vt={},nr={accumulated:null,zoom:0},ir={properties:null},pr=Object.keys(xe);for(let oi of pr){let[di,Jr]=xe[oi],fi=i.bC(Jr),Hi=i.bC(typeof di=="string"?[di,["accumulated"],["get",oi]]:di);Ce[oi]=fi.value,vt[oi]=Hi.value}return Ie.map=oi=>{ir.properties=oi;let di={};for(let Jr of pr)di[Jr]=Ce[Jr].evaluate(nr,ir);return di},Ie.reduce=(oi,di)=>{ir.properties=di;for(let Jr of pr)nr.accumulated=oi[Jr],oi[Jr]=vt[Jr].evaluate(nr,ir)},Ie}(Ge)).load((yield this._pendingData).features):($e=yield this._pendingData,new Yt($e,Ge.geojsonVtOptions)),this.loaded={};let wt={};if(je){let Ie=je.finish();Ie&&(wt.resourceTiming={},wt.resourceTiming[Ge.source]=JSON.parse(JSON.stringify(Ie)))}return wt}catch(wt){if(delete this._pendingRequest,i.bB(wt))return{abandoned:!0};throw wt}var $e})}getData(){return i._(this,void 0,void 0,function*(){return this._pendingData})}reloadTile(Ge){let Je=this.loaded;return Je&&Je[Ge.uid]?super.reloadTile(Ge):this.loadTile(Ge)}loadAndProcessGeoJSON(Ge,Je){return i._(this,void 0,void 0,function*(){let je=yield this.loadGeoJSON(Ge,Je);if(delete this._pendingRequest,typeof je!="object")throw new Error(`Input data given to '${Ge.source}' is not a valid GeoJSON object.`);if(d(je,!0),Ge.filter){let $e=i.bC(Ge.filter,{type:"boolean","property-type":"data-driven",overridable:!1,transition:!1});if($e.result==="error")throw new Error($e.value.map(Ie=>`${Ie.key}: ${Ie.message}`).join(", "));je={type:"FeatureCollection",features:je.features.filter(Ie=>$e.value.evaluate({zoom:0},Ie))}}return je})}loadGeoJSON(Ge,Je){return i._(this,void 0,void 0,function*(){let{promoteId:je}=Ge;if(Ge.request){let $e=yield i.h(Ge.request,Je);return this._dataUpdateable=Rr($e.data,je)?ei($e.data,je):void 0,$e.data}if(typeof Ge.data=="string")try{let $e=JSON.parse(Ge.data);return this._dataUpdateable=Rr($e,je)?ei($e,je):void 0,$e}catch($e){throw new Error(`Input data given to '${Ge.source}' is not a valid GeoJSON object.`)}if(!Ge.dataDiff)throw new Error(`Input data given to '${Ge.source}' is not a valid GeoJSON object.`);if(!this._dataUpdateable)throw new Error(`Cannot update existing geojson data in ${Ge.source}`);return function($e,wt,Ie){var xe,Ce,vt,nr;if(wt.removeAll&&$e.clear(),wt.remove)for(let ir of wt.remove)$e.delete(ir);if(wt.add)for(let ir of wt.add){let pr=Tr(ir,Ie);pr!=null&&$e.set(pr,ir)}if(wt.update)for(let ir of wt.update){let pr=$e.get(ir.id);if(pr==null)continue;let oi=!ir.removeAllProperties&&(((xe=ir.removeProperties)===null||xe===void 0?void 0:xe.length)>0||((Ce=ir.addOrUpdateProperties)===null||Ce===void 0?void 0:Ce.length)>0);if((ir.newGeometry||ir.removeAllProperties||oi)&&(pr=Object.assign({},pr),$e.set(ir.id,pr),oi&&(pr.properties=Object.assign({},pr.properties))),ir.newGeometry&&(pr.geometry=ir.newGeometry),ir.removeAllProperties)pr.properties={};else if(((vt=ir.removeProperties)===null||vt===void 0?void 0:vt.length)>0)for(let di of ir.removeProperties)Object.prototype.hasOwnProperty.call(pr.properties,di)&&delete pr.properties[di];if(((nr=ir.addOrUpdateProperties)===null||nr===void 0?void 0:nr.length)>0)for(let{key:di,value:Jr}of ir.addOrUpdateProperties)pr.properties[di]=Jr}}(this._dataUpdateable,Ge.dataDiff,je),{type:"FeatureCollection",features:Array.from(this._dataUpdateable.values())}})}removeSource(Ge){return i._(this,void 0,void 0,function*(){this._pendingRequest&&this._pendingRequest.abort()})}getClusterExpansionZoom(Ge){return this._geoJSONIndex.getClusterExpansionZoom(Ge.clusterId)}getClusterChildren(Ge){return this._geoJSONIndex.getChildren(Ge.clusterId)}getClusterLeaves(Ge){return this._geoJSONIndex.getLeaves(Ge.clusterId,Ge.limit,Ge.offset)}}class Ur{constructor(Ge){this.self=Ge,this.actor=new i.F(Ge),this.layerIndexes={},this.availableImages={},this.workerSources={},this.demWorkerSources={},this.externalWorkerSourceTypes={},this.self.registerWorkerSource=(Je,je)=>{if(this.externalWorkerSourceTypes[Je])throw new Error(`Worker source with name "${Je}" already registered.`);this.externalWorkerSourceTypes[Je]=je},this.self.addProtocol=i.bi,this.self.removeProtocol=i.bj,this.self.registerRTLTextPlugin=Je=>{if(i.bD.isParsed())throw new Error("RTL text plugin already registered.");i.bD.setMethods(Je)},this.actor.registerMessageHandler("LDT",(Je,je)=>this._getDEMWorkerSource(Je,je.source).loadTile(je)),this.actor.registerMessageHandler("RDT",(Je,je)=>i._(this,void 0,void 0,function*(){this._getDEMWorkerSource(Je,je.source).removeTile(je)})),this.actor.registerMessageHandler("GCEZ",(Je,je)=>i._(this,void 0,void 0,function*(){return this._getWorkerSource(Je,je.type,je.source).getClusterExpansionZoom(je)})),this.actor.registerMessageHandler("GCC",(Je,je)=>i._(this,void 0,void 0,function*(){return this._getWorkerSource(Je,je.type,je.source).getClusterChildren(je)})),this.actor.registerMessageHandler("GCL",(Je,je)=>i._(this,void 0,void 0,function*(){return this._getWorkerSource(Je,je.type,je.source).getClusterLeaves(je)})),this.actor.registerMessageHandler("LD",(Je,je)=>this._getWorkerSource(Je,je.type,je.source).loadData(je)),this.actor.registerMessageHandler("GD",(Je,je)=>this._getWorkerSource(Je,je.type,je.source).getData()),this.actor.registerMessageHandler("LT",(Je,je)=>this._getWorkerSource(Je,je.type,je.source).loadTile(je)),this.actor.registerMessageHandler("RT",(Je,je)=>this._getWorkerSource(Je,je.type,je.source).reloadTile(je)),this.actor.registerMessageHandler("AT",(Je,je)=>this._getWorkerSource(Je,je.type,je.source).abortTile(je)),this.actor.registerMessageHandler("RMT",(Je,je)=>this._getWorkerSource(Je,je.type,je.source).removeTile(je)),this.actor.registerMessageHandler("RS",(Je,je)=>i._(this,void 0,void 0,function*(){if(!this.workerSources[Je]||!this.workerSources[Je][je.type]||!this.workerSources[Je][je.type][je.source])return;let $e=this.workerSources[Je][je.type][je.source];delete this.workerSources[Je][je.type][je.source],$e.removeSource!==void 0&&$e.removeSource(je)})),this.actor.registerMessageHandler("RM",Je=>i._(this,void 0,void 0,function*(){delete this.layerIndexes[Je],delete this.availableImages[Je],delete this.workerSources[Je],delete this.demWorkerSources[Je]})),this.actor.registerMessageHandler("SR",(Je,je)=>i._(this,void 0,void 0,function*(){this.referrer=je})),this.actor.registerMessageHandler("SRPS",(Je,je)=>this._syncRTLPluginState(Je,je)),this.actor.registerMessageHandler("IS",(Je,je)=>i._(this,void 0,void 0,function*(){this.self.importScripts(je)})),this.actor.registerMessageHandler("SI",(Je,je)=>this._setImages(Je,je)),this.actor.registerMessageHandler("UL",(Je,je)=>i._(this,void 0,void 0,function*(){this._getLayerIndex(Je).update(je.layers,je.removedIds)})),this.actor.registerMessageHandler("SL",(Je,je)=>i._(this,void 0,void 0,function*(){this._getLayerIndex(Je).replace(je)}))}_setImages(Ge,Je){return i._(this,void 0,void 0,function*(){this.availableImages[Ge]=Je;for(let je in this.workerSources[Ge]){let $e=this.workerSources[Ge][je];for(let wt in $e)$e[wt].availableImages=Je}})}_syncRTLPluginState(Ge,Je){return i._(this,void 0,void 0,function*(){if(i.bD.isParsed())return i.bD.getState();if(Je.pluginStatus!=="loading")return i.bD.setState(Je),Je;let je=Je.pluginURL;if(this.self.importScripts(je),i.bD.isParsed()){let $e={pluginStatus:"loaded",pluginURL:je};return i.bD.setState($e),$e}throw i.bD.setState({pluginStatus:"error",pluginURL:""}),new Error(`RTL Text Plugin failed to import scripts from ${je}`)})}_getAvailableImages(Ge){let Je=this.availableImages[Ge];return Je||(Je=[]),Je}_getLayerIndex(Ge){let Je=this.layerIndexes[Ge];return Je||(Je=this.layerIndexes[Ge]=new a),Je}_getWorkerSource(Ge,Je,je){if(this.workerSources[Ge]||(this.workerSources[Ge]={}),this.workerSources[Ge][Je]||(this.workerSources[Ge][Je]={}),!this.workerSources[Ge][Je][je]){let $e={sendAsync:(wt,Ie)=>(wt.targetMapId=Ge,this.actor.sendAsync(wt,Ie))};switch(Je){case"vector":this.workerSources[Ge][Je][je]=new u($e,this._getLayerIndex(Ge),this._getAvailableImages(Ge));break;case"geojson":this.workerSources[Ge][Je][je]=new Wr($e,this._getLayerIndex(Ge),this._getAvailableImages(Ge));break;default:this.workerSources[Ge][Je][je]=new this.externalWorkerSourceTypes[Je]($e,this._getLayerIndex(Ge),this._getAvailableImages(Ge))}}return this.workerSources[Ge][Je][je]}_getDEMWorkerSource(Ge,Je){return this.demWorkerSources[Ge]||(this.demWorkerSources[Ge]={}),this.demWorkerSources[Ge][Je]||(this.demWorkerSources[Ge][Je]=new c),this.demWorkerSources[Ge][Je]}}return i.i(self)&&(self.worker=new Ur(self)),Ur}),r("index",["exports","./shared"],function(i,a){"use strict";var o="4.7.1";let s,l,u={now:typeof performance!="undefined"&&performance&&performance.now?performance.now.bind(performance):Date.now.bind(Date),frameAsync:ue=>new Promise((w,B)=>{let Q=requestAnimationFrame(w);ue.signal.addEventListener("abort",()=>{cancelAnimationFrame(Q),B(a.c())})}),getImageData(ue,w=0){return this.getImageCanvasContext(ue).getImageData(-w,-w,ue.width+2*w,ue.height+2*w)},getImageCanvasContext(ue){let w=window.document.createElement("canvas"),B=w.getContext("2d",{willReadFrequently:!0});if(!B)throw new Error("failed to create canvas 2d context");return w.width=ue.width,w.height=ue.height,B.drawImage(ue,0,0,ue.width,ue.height),B},resolveURL:ue=>(s||(s=document.createElement("a")),s.href=ue,s.href),hardwareConcurrency:typeof navigator!="undefined"&&navigator.hardwareConcurrency||4,get prefersReducedMotion(){return!!matchMedia&&(l==null&&(l=matchMedia("(prefers-reduced-motion: reduce)")),l.matches)}};class c{static testProp(w){if(!c.docStyle)return w[0];for(let B=0;B<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 le=0;le<B.length;le++)Q.push(c.getPoint(w,ee,B[le]));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(ue){!v&&d&&(x?b(ue):h=ue)}},h,d,v=!1,x=!1;function b(ue){let w=ue.createTexture();ue.bindTexture(ue.TEXTURE_2D,w);try{if(ue.texImage2D(ue.TEXTURE_2D,0,ue.RGBA,ue.RGBA,ue.UNSIGNED_BYTE,d),ue.isContextLost())return;f.supported=!0}catch(B){}ue.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(ue){let w,B,Q,ee;ue.resetRequestQueue=()=>{w=[],B=0,Q=0,ee={}},ue.addThrottleControl=ot=>{let Tt=Q++;return ee[Tt]=ot,Tt},ue.removeThrottleControl=ot=>{delete ee[ot],qe()},ue.getImage=(ot,Tt,Kt=!0)=>new Promise((Jt,xr)=>{f.supported&&(ot.headers||(ot.headers={}),ot.headers.accept="image/webp,*/*"),a.e(ot,{type:"image"}),w.push({abortController:Tt,requestParameters:ot,supportImageRefresh:Kt,state:"queued",onError:Pr=>{xr(Pr)},onSuccess:Pr=>{Jt(Pr)}}),qe()});let le=ot=>a._(this,void 0,void 0,function*(){ot.state="running";let{requestParameters:Tt,supportImageRefresh:Kt,onError:Jt,onSuccess:xr,abortController:Pr}=ot,ve=Kt===!1&&!a.i(self)&&!a.g(Tt.url)&&(!Tt.headers||Object.keys(Tt.headers).reduce((Be,tt)=>Be&&tt==="accept",!0));B++;let be=ve?Xe(Tt,Pr):a.m(Tt,Pr);try{let Be=yield be;delete ot.abortController,ot.state="completed",Be.data instanceof HTMLImageElement||a.b(Be.data)?xr(Be):Be.data&&xr({data:yield(Re=Be.data,typeof createImageBitmap=="function"?a.d(Re):a.f(Re)),cacheControl:Be.cacheControl,expires:Be.expires})}catch(Be){delete ot.abortController,Jt(Be)}finally{B--,qe()}var Re}),qe=()=>{let ot=(()=>{for(let Tt of Object.keys(ee))if(ee[Tt]())return!0;return!1})()?a.a.MAX_PARALLEL_IMAGE_REQUESTS_PER_FRAME:a.a.MAX_PARALLEL_IMAGE_REQUESTS;for(let Tt=B;Tt<ot&&w.length>0;Tt++){let Kt=w.shift();Kt.abortController.signal.aborted?Tt--:le(Kt)}},Xe=(ot,Tt)=>new Promise((Kt,Jt)=>{let xr=new Image,Pr=ot.url,ve=ot.credentials;ve&&ve==="include"?xr.crossOrigin="use-credentials":(ve&&ve==="same-origin"||!a.s(Pr))&&(xr.crossOrigin="anonymous"),Tt.signal.addEventListener("abort",()=>{xr.src="",Jt(a.c())}),xr.fetchPriority="high",xr.onload=()=>{xr.onerror=xr.onload=null,Kt({data:xr})},xr.onerror=()=>{xr.onerror=xr.onload=null,Tt.signal.aborted||Jt(new Error("Could not load image. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."))},xr.src=Pr})}(p||(p={})),p.resetRequestQueue();class C{constructor(w){this._transformRequestFn=w}transformRequest(w,B){return this._transformRequestFn&&this._transformRequestFn(w,B)||{url:w}}setTransformRequest(w){this._transformRequestFn=w}}function E(ue){var w=new a.A(3);return w[0]=ue[0],w[1]=ue[1],w[2]=ue[2],w}var A,L=function(ue,w,B){return ue[0]=w[0]-B[0],ue[1]=w[1]-B[1],ue[2]=w[2]-B[2],ue};A=new a.A(3),a.A!=Float32Array&&(A[0]=0,A[1]=0,A[2]=0);var _=function(ue){var w=ue[0],B=ue[1];return w*w+B*B};function k(ue){let w=[];if(typeof ue=="string")w.push({id:"default",url:ue});else if(ue&&ue.length>0){let B=[];for(let{id:Q,url:ee}of ue){let le=`${Q}${ee}`;B.indexOf(le)===-1&&(B.push(le),w.push({id:Q,url:ee}))}}return w}function M(ue,w,B){let Q=ue.split("?");return Q[0]+=`${w}${B}`,Q.join("?")}(function(){var ue=new a.A(2);a.A!=Float32Array&&(ue[0]=0,ue[1]=0)})();class g{constructor(w,B,Q,ee){this.context=w,this.format=Q,this.texture=w.gl.createTexture(),this.update(B,ee)}update(w,B,Q){let{width:ee,height:le}=w,qe=!(this.size&&this.size[0]===ee&&this.size[1]===le||Q),{context:Xe}=this,{gl:ot}=Xe;if(this.useMipmap=!!(B&&B.useMipmap),ot.bindTexture(ot.TEXTURE_2D,this.texture),Xe.pixelStoreUnpackFlipY.set(!1),Xe.pixelStoreUnpack.set(1),Xe.pixelStoreUnpackPremultiplyAlpha.set(this.format===ot.RGBA&&(!B||B.premultiply!==!1)),qe)this.size=[ee,le],w instanceof HTMLImageElement||w instanceof HTMLCanvasElement||w instanceof HTMLVideoElement||w instanceof ImageData||a.b(w)?ot.texImage2D(ot.TEXTURE_2D,0,this.format,this.format,ot.UNSIGNED_BYTE,w):ot.texImage2D(ot.TEXTURE_2D,0,this.format,ee,le,0,this.format,ot.UNSIGNED_BYTE,w.data);else{let{x:Tt,y:Kt}=Q||{x:0,y:0};w instanceof HTMLImageElement||w instanceof HTMLCanvasElement||w instanceof HTMLVideoElement||w instanceof ImageData||a.b(w)?ot.texSubImage2D(ot.TEXTURE_2D,0,Tt,Kt,ot.RGBA,ot.UNSIGNED_BYTE,w):ot.texSubImage2D(ot.TEXTURE_2D,0,Tt,Kt,ee,le,ot.RGBA,ot.UNSIGNED_BYTE,w.data)}this.useMipmap&&this.isSizePowerOfTwo()&&ot.generateMipmap(ot.TEXTURE_2D)}bind(w,B,Q){let{context:ee}=this,{gl:le}=ee;le.bindTexture(le.TEXTURE_2D,this.texture),Q!==le.LINEAR_MIPMAP_NEAREST||this.isSizePowerOfTwo()||(Q=le.LINEAR),w!==this.filter&&(le.texParameteri(le.TEXTURE_2D,le.TEXTURE_MAG_FILTER,w),le.texParameteri(le.TEXTURE_2D,le.TEXTURE_MIN_FILTER,Q||w),this.filter=w),B!==this.wrap&&(le.texParameteri(le.TEXTURE_2D,le.TEXTURE_WRAP_S,B),le.texParameteri(le.TEXTURE_2D,le.TEXTURE_WRAP_T,B),this.wrap=B)}isSizePowerOfTwo(){return this.size[0]===this.size[1]&&Math.log(this.size[0])/Math.LN2%1==0}destroy(){let{gl:w}=this.context;w.deleteTexture(this.texture),this.texture=null}}function P(ue){let{userImage:w}=ue;return!!(w&&w.render&&w.render())&&(ue.data.replace(new Uint8Array(w.data.buffer)),!0)}class T extends a.E{constructor(){super(),this.images={},this.updatedImages={},this.callbackDispatchedThisFrame={},this.loaded=!1,this.requestors=[],this.patterns={},this.atlasImage=new a.R({width:1,height:1}),this.dirty=!0}isLoaded(){return this.loaded}setLoaded(w){if(this.loaded!==w&&(this.loaded=w,w)){for(let{ids:B,promiseResolve:Q}of this.requestors)Q(this._getImagesForIds(B));this.requestors=[]}}getImage(w){let B=this.images[w];if(B&&!B.data&&B.spriteData){let Q=B.spriteData;B.data=new a.R({width:Q.width,height:Q.height},Q.context.getImageData(Q.x,Q.y,Q.width,Q.height).data),B.spriteData=null}return B}addImage(w,B){if(this.images[w])throw new Error(`Image id ${w} already exist, use updateImage instead`);this._validate(w,B)&&(this.images[w]=B)}_validate(w,B){let Q=!0,ee=B.data||B.spriteData;return this._validateStretch(B.stretchX,ee&&ee.width)||(this.fire(new a.j(new Error(`Image "${w}" has invalid "stretchX" value`))),Q=!1),this._validateStretch(B.stretchY,ee&&ee.height)||(this.fire(new a.j(new Error(`Image "${w}" has invalid "stretchY" value`))),Q=!1),this._validateContent(B.content,B)||(this.fire(new a.j(new Error(`Image "${w}" has invalid "content" value`))),Q=!1),Q}_validateStretch(w,B){if(!w)return!0;let Q=0;for(let ee of w){if(ee[0]<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,le=Q&&Q.height||B.data.height;return!(w[0]<0||ee<w[0]||w[1]<0||le<w[1]||w[2]<0||ee<w[2]||w[3]<0||le<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 le of w)this.images[le]||(ee=!1);this.isLoaded()||ee?B(this._getImagesForIds(w)):this.requestors.push({ids:w,promiseResolve:B})})}_getImagesForIds(w){let B={};for(let Q of w){let ee=this.getImage(Q);ee||(this.fire(new a.k("styleimagemissing",{id:Q})),ee=this.getImage(Q)),ee?B[Q]={data:ee.data.clone(),pixelRatio:ee.pixelRatio,sdf:ee.sdf,version:ee.version,stretchX:ee.stretchX,stretchY:ee.stretchY,content:ee.content,textFitWidth:ee.textFitWidth,textFitHeight:ee.textFitHeight,hasRenderCallback:!!(ee.userImage&&ee.userImage.render)}:a.w(`Image "${Q}" could not be loaded. Please make sure you have added the image with map.addImage() or a "sprite" property in your style. You can provide missing images by listening for the "styleimagemissing" map event.`)}return B}getPixelSize(){let{width:w,height:B}=this.atlasImage;return{width:w,height:B}}getPattern(w){let B=this.patterns[w],Q=this.getImage(w);if(!Q)return null;if(B&&B.position.version===Q.version)return B.position;if(B)B.position.version=Q.version;else{let ee={w:Q.data.width+2,h:Q.data.height+2,x:0,y:0},le=new a.I(ee,Q);this.patterns[w]={bin:ee,position:le}}return this._updatePatternAtlas(),this.patterns[w].position}bind(w){let B=w.gl;this.atlasTexture?this.dirty&&(this.atlasTexture.update(this.atlasImage),this.dirty=!1):this.atlasTexture=new g(w,this.atlasImage,B.RGBA),this.atlasTexture.bind(B.LINEAR,B.CLAMP_TO_EDGE)}_updatePatternAtlas(){let w=[];for(let le in this.patterns)w.push(this.patterns[le].bin);let{w:B,h:Q}=a.p(w),ee=this.atlasImage;ee.resize({width:B||1,height:Q||1});for(let le in this.patterns){let{bin:qe}=this.patterns[le],Xe=qe.x+1,ot=qe.y+1,Tt=this.getImage(le).data,Kt=Tt.width,Jt=Tt.height;a.R.copy(Tt,ee,{x:0,y:0},{x:Xe,y:ot},{width:Kt,height:Jt}),a.R.copy(Tt,ee,{x:0,y:Jt-1},{x:Xe,y:ot-1},{width:Kt,height:1}),a.R.copy(Tt,ee,{x:0,y:0},{x:Xe,y:ot+Jt},{width:Kt,height:1}),a.R.copy(Tt,ee,{x:Kt-1,y:0},{x:Xe-1,y:ot},{width:1,height:Jt}),a.R.copy(Tt,ee,{x:0,y:0},{x:Xe+Kt,y:ot},{width:1,height:Jt})}this.dirty=!0}beginFrame(){this.callbackDispatchedThisFrame={}}dispatchRenderCallbacks(w){for(let B of w){if(this.callbackDispatchedThisFrame[B])continue;this.callbackDispatchedThisFrame[B]=!0;let Q=this.getImage(B);Q||a.w(`Image with ID: "${B}" was not found`),P(Q)&&this.updateImage(B,Q)}}}let z=1e20;function O(ue,w,B,Q,ee,le,qe,Xe,ot){for(let Tt=w;Tt<w+Q;Tt++)V(ue,B*le+Tt,le,ee,qe,Xe,ot);for(let Tt=B;Tt<B+ee;Tt++)V(ue,Tt*le+w,1,Q,qe,Xe,ot)}function V(ue,w,B,Q,ee,le,qe){le[0]=0,qe[0]=-z,qe[1]=z,ee[0]=ue[w];for(let Xe=1,ot=0,Tt=0;Xe<Q;Xe++){ee[Xe]=ue[w+Xe*B];let Kt=Xe*Xe;do{let Jt=le[ot];Tt=(ee[Xe]-ee[Jt]+Kt-Jt*Jt)/(Xe-Jt)/2}while(Tt<=qe[ot]&&--ot>-1);ot++,le[ot]=Xe,qe[ot]=Tt,qe[ot+1]=z}for(let Xe=0,ot=0;Xe<Q;Xe++){for(;qe[ot+1]<Xe;)ot++;let Tt=le[ot],Kt=Xe-Tt;ue[w+Xe*B]=ee[Tt]+Kt*Kt}}class G{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 le in w)for(let qe of w[le])B.push(this._getAndCacheGlyphsPromise(le,qe));let Q=yield Promise.all(B),ee={};for(let{stack:le,id:qe,glyph:Xe}of Q)ee[le]||(ee[le]={}),ee[le][qe]=Xe&&{id:Xe.id,bitmap:Xe.bitmap.clone(),metrics:Xe.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 le=Math.floor(B/256);if(256*le>65535)throw new Error("glyphs > 65535 not supported");if(Q.ranges[le])return{stack:w,id:B,glyph:ee};if(!this.url)throw new Error("glyphsUrl is not set");if(!Q.requests[le]){let Xe=G.loadGlyphRange(w,le,this.url,this.requestManager);Q.requests[le]=Xe}let qe=yield Q.requests[le];for(let Xe in qe)this._doesCharSupportLocalGlyph(+Xe)||(Q.glyphs[+Xe]=qe[+Xe]);return Q.ranges[le]=!0,{stack:w,id:B,glyph:qe[B]||null}})}_doesCharSupportLocalGlyph(w){return!!this.localIdeographFontFamily&&new RegExp("\\p{Ideo}|\\p{sc=Hang}|\\p{sc=Hira}|\\p{sc=Kana}","u").test(String.fromCodePoint(w))}_tinySDF(w,B,Q){let ee=this.localIdeographFontFamily;if(!ee||!this._doesCharSupportLocalGlyph(Q))return;let le=w.tinySDF;if(!le){let Xe="400";/bold/i.test(B)?Xe="900":/medium/i.test(B)?Xe="500":/light/i.test(B)&&(Xe="200"),le=w.tinySDF=new G.TinySDF({fontSize:48,buffer:6,radius:16,cutoff:.25,fontFamily:ee,fontWeight:Xe})}let qe=le.draw(String.fromCharCode(Q));return{id:Q,bitmap:new a.o({width:qe.width||60,height:qe.height||60},qe.data),metrics:{width:qe.glyphWidth/2||24,height:qe.glyphHeight/2||24,left:qe.glyphLeft/2+.5||0,top:qe.glyphTop/2-27.5||-8,advance:qe.glyphAdvance/2||24,isDoubleResolution:!0}}}}G.loadGlyphRange=function(ue,w,B,Q){return a._(this,void 0,void 0,function*(){let ee=256*w,le=ee+255,qe=Q.transformRequest(B.replace("{fontstack}",ue).replace("{range}",`${ee}-${le}`),"Glyphs"),Xe=yield a.l(qe,new AbortController);if(!Xe||!Xe.data)throw new Error(`Could not load glyph range. range: ${w}, ${ee}-${le}`);let ot={};for(let Tt of a.n(Xe.data))ot[Tt.id]=Tt;return ot})},G.TinySDF=class{constructor({fontSize:ue=24,buffer:w=3,radius:B=8,cutoff:Q=.25,fontFamily:ee="sans-serif",fontWeight:le="normal",fontStyle:qe="normal"}={}){this.buffer=w,this.cutoff=Q,this.radius=B;let Xe=this.size=ue+4*w,ot=this._createCanvas(Xe),Tt=this.ctx=ot.getContext("2d",{willReadFrequently:!0});Tt.font=`${qe} ${le} ${ue}px ${ee}`,Tt.textBaseline="alphabetic",Tt.textAlign="left",Tt.fillStyle="black",this.gridOuter=new Float64Array(Xe*Xe),this.gridInner=new Float64Array(Xe*Xe),this.f=new Float64Array(Xe),this.z=new Float64Array(Xe+1),this.v=new Uint16Array(Xe)}_createCanvas(ue){let w=document.createElement("canvas");return w.width=w.height=ue,w}draw(ue){let{width:w,actualBoundingBoxAscent:B,actualBoundingBoxDescent:Q,actualBoundingBoxLeft:ee,actualBoundingBoxRight:le}=this.ctx.measureText(ue),qe=Math.ceil(B),Xe=Math.max(0,Math.min(this.size-this.buffer,Math.ceil(le-ee))),ot=Math.min(this.size-this.buffer,qe+Math.ceil(Q)),Tt=Xe+2*this.buffer,Kt=ot+2*this.buffer,Jt=Math.max(Tt*Kt,0),xr=new Uint8ClampedArray(Jt),Pr={data:xr,width:Tt,height:Kt,glyphWidth:Xe,glyphHeight:ot,glyphTop:qe,glyphLeft:0,glyphAdvance:w};if(Xe===0||ot===0)return Pr;let{ctx:ve,buffer:be,gridInner:Re,gridOuter:Be}=this;ve.clearRect(be,be,Xe,ot),ve.fillText(ue,be,be+qe);let tt=ve.getImageData(be,be,Xe,ot);Be.fill(z,0,Jt),Re.fill(0,0,Jt);for(let We=0;We<ot;We++)for(let it=0;it<Xe;it++){let Dt=tt.data[4*(We*Xe+it)+3]/255;if(Dt===0)continue;let Ht=(We+be)*Tt+it+be;if(Dt===1)Be[Ht]=0,Re[Ht]=z;else{let rr=.5-Dt;Be[Ht]=rr>0?rr*rr:0,Re[Ht]=rr<0?rr*rr:0}}O(Be,0,0,Tt,Kt,Tt,this.f,this.v,this.z),O(Re,be,be,Xe,ot,Tt,this.f,this.v,this.z);for(let We=0;We<Jt;We++){let it=Math.sqrt(Be[We])-Math.sqrt(Re[We]);xr[We]=Math.round(255-255*(it/this.radius+this.cutoff))}return Pr}};class Z{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 H;class N extends a.E{constructor(w){super(),H=H||new a.q({anchor:new a.D(a.v.light.anchor),position:new Z,color:new a.D(a.v.light.color),intensity:new a.D(a.v.light.intensity)}),this._transitionable=new a.T(H),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 j=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(j),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 oe{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=[],le=w.length%2==1?-w[w.length-1]*Q:0,qe=w[0]*Q,Xe=!0;ee.push({left:le,right:qe,isDash:Xe,zeroLength:w[0]===0});let ot=w[0];for(let Tt=1;Tt<w.length;Tt++){Xe=!Xe;let Kt=w[Tt];le=ot*Q,ot+=Kt,qe=ot*Q,ee.push({left:le,right:qe,isDash:Xe,zeroLength:Kt===0})}return ee}addRoundDash(w,B,Q){let ee=B/2;for(let le=-Q;le<=Q;le++){let qe=this.width*(this.nextRow+Q+le),Xe=0,ot=w[Xe];for(let Tt=0;Tt<this.width;Tt++){Tt/ot.right>1&&(ot=w[++Xe]);let Kt=Math.abs(Tt-ot.left),Jt=Math.abs(Tt-ot.right),xr=Math.min(Kt,Jt),Pr,ve=le/Q*(ee+1);if(ot.isDash){let be=ee-Math.abs(ve);Pr=Math.sqrt(xr*xr+be*be)}else Pr=ee-Math.sqrt(xr*xr+ve*ve);this.data[qe+Tt]=Math.max(0,Math.min(255,Pr+128))}}}addRegularDash(w){for(let Xe=w.length-1;Xe>=0;--Xe){let ot=w[Xe],Tt=w[Xe+1];ot.zeroLength?w.splice(Xe,1):Tt&&Tt.isDash===ot.isDash&&(Tt.left=ot.left,w.splice(Xe,1))}let B=w[0],Q=w[w.length-1];B.isDash===Q.isDash&&(B.left=Q.left-this.width,Q.right=B.right+this.width);let ee=this.width*this.nextRow,le=0,qe=w[le];for(let Xe=0;Xe<this.width;Xe++){Xe/qe.right>1&&(qe=w[++le]);let ot=Math.abs(Xe-qe.left),Tt=Math.abs(Xe-qe.right),Kt=Math.min(ot,Tt);this.data[ee+Xe]=Math.max(0,Math.min(255,(qe.isDash?Kt:-Kt)+128))}}addDash(w,B){let Q=B?7:0,ee=2*Q+1;if(this.nextRow+ee>this.height)return a.w("LineAtlas out of space"),null;let le=0;for(let Xe=0;Xe<w.length;Xe++)le+=w[Xe];if(le!==0){let Xe=this.width/le,ot=this.getDashRanges(w,this.width,Xe);B?this.addRoundDash(ot,Xe,Q):this.addRegularDash(ot)}let qe={y:(this.nextRow+Q+.5)/this.height,height:2*Q/this.height,width:le};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),me,ie;function Se(){return me||(me=new Me),me}Me.workerCount=a.C(globalThis)?Math.max(Math.min(ke,3),1):1;class Le{constructor(w,B){this.workerPool=w,this.actors=[],this.currentActor=0,this.id=B;let Q=this.workerPool.acquire(B);for(let ee=0;ee<Q.length;ee++){let le=new a.F(Q[ee],B);le.name=`Worker ${ee}`,this.actors.push(le)}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 Le(Se(),a.G),ie.registerMessageHandler("GR",(ue,w,B)=>a.m(w,B))),ie}function De(ue,w){let B=a.H();return a.J(B,B,[1,1,0]),a.K(B,B,[.5*ue.width,.5*ue.height,1]),a.L(B,B,ue.calculatePosMatrix(w.toUnwrapped()))}function Pe(ue,w,B,Q,ee,le){let qe=function(Jt,xr,Pr){if(Jt)for(let ve of Jt){let be=xr[ve];if(be&&be.source===Pr&&be.type==="fill-extrusion")return!0}else for(let ve in xr){let be=xr[ve];if(be.source===Pr&&be.type==="fill-extrusion")return!0}return!1}(ee&&ee.layers,w,ue.id),Xe=le.maxPitchScaleFactor(),ot=ue.tilesIn(Q,Xe,qe);ot.sort(ge);let Tt=[];for(let Jt of ot)Tt.push({wrappedTileID:Jt.tileID.wrapped().key,queryResults:Jt.tile.queryRenderedFeatures(w,B,ue._state,Jt.queryGeometry,Jt.cameraQueryGeometry,Jt.scale,ee,le,Xe,De(ue.transform,Jt.tileID))});let Kt=function(Jt){let xr={},Pr={};for(let ve of Jt){let be=ve.queryResults,Re=ve.wrappedTileID,Be=Pr[Re]=Pr[Re]||{};for(let tt in be){let We=be[tt],it=Be[tt]=Be[tt]||{},Dt=xr[tt]=xr[tt]||[];for(let Ht of We)it[Ht.featureIndex]||(it[Ht.featureIndex]=!0,Dt.push(Ht))}}return xr}(Tt);for(let Jt in Kt)Kt[Jt].forEach(xr=>{let Pr=xr.feature,ve=ue.getFeatureState(Pr.layer["source-layer"],Pr.id);Pr.source=Pr.layer.source,Pr.layer["source-layer"]&&(Pr.sourceLayer=Pr.layer["source-layer"]),Pr.state=ve});return Kt}function ge(ue,w){let B=ue.tileID,Q=w.tileID;return B.overscaledZ-Q.overscaledZ||B.canonical.y-Q.canonical.y||B.wrap-Q.wrap||B.canonical.x-Q.canonical.x}function Fe(ue,w,B){return a._(this,void 0,void 0,function*(){let Q=ue;if(ue.url?Q=(yield a.h(w.transformRequest(ue.url,"Source"),B)).data:yield u.frameAsync(B),!Q)return null;let ee=a.M(a.e(Q,ue),["tiles","minzoom","maxzoom","attribution","bounds","scheme","tileSize","encoding"]);return"vector_layers"in Q&&Q.vector_layers&&(ee.vectorLayerIds=Q.vector_layers.map(le=>le.id)),ee})}class ce{constructor(w,B){w&&(B?this.setSouthWest(w).setNorthEast(B):Array.isArray(w)&&(w.length===4?this.setSouthWest([w[0],w[1]]).setNorthEast([w[2],w[3]]):this.setSouthWest(w[0]).setNorthEast(w[1])))}setNorthEast(w){return this._ne=w instanceof a.N?new a.N(w.lng,w.lat):a.N.convert(w),this}setSouthWest(w){return this._sw=w instanceof a.N?new a.N(w.lng,w.lat):a.N.convert(w),this}extend(w){let B=this._sw,Q=this._ne,ee,le;if(w instanceof a.N)ee=w,le=w;else{if(!(w instanceof ce))return Array.isArray(w)?w.length===4||w.every(Array.isArray)?this.extend(ce.convert(w)):this.extend(a.N.convert(w)):w&&("lng"in w||"lon"in w)&&"lat"in w?this.extend(a.N.convert(w)):this;if(ee=w._sw,le=w._ne,!ee||!le)return this}return B||Q?(B.lng=Math.min(ee.lng,B.lng),B.lat=Math.min(ee.lat,B.lat),Q.lng=Math.max(le.lng,Q.lng),Q.lat=Math.max(le.lat,Q.lat)):(this._sw=new a.N(ee.lng,ee.lat),this._ne=new a.N(le.lng,le.lat)),this}getCenter(){return new a.N((this._sw.lng+this._ne.lng)/2,(this._sw.lat+this._ne.lat)/2)}getSouthWest(){return this._sw}getNorthEast(){return this._ne}getNorthWest(){return new a.N(this.getWest(),this.getNorth())}getSouthEast(){return new a.N(this.getEast(),this.getSouth())}getWest(){return this._sw.lng}getSouth(){return this._sw.lat}getEast(){return this._ne.lng}getNorth(){return this._ne.lat}toArray(){return[this._sw.toArray(),this._ne.toArray()]}toString(){return`LngLatBounds(${this._sw.toString()}, ${this._ne.toString()})`}isEmpty(){return!(this._sw&&this._ne)}contains(w){let{lng:B,lat:Q}=a.N.convert(w),ee=this._sw.lng<=B&&B<=this._ne.lng;return this._sw.lng>this._ne.lng&&(ee=this._sw.lng>=B&&B>=this._ne.lng),this._sw.lat<=Q&&Q<=this._ne.lat&&ee}static convert(w){return w instanceof ce?w:w&&new ce(w)}static fromLngLat(w,B=0){let Q=360*B/40075017,ee=Q/Math.cos(Math.PI/180*w.lat);return new ce(new a.N(w.lng-ee,w.lat-Q),new a.N(w.lng+ee,w.lat+Q))}adjustAntiMeridian(){let w=new a.N(this._sw.lng,this._sw.lat),B=new a.N(this._ne.lng,this._ne.lat);return new ce(w,w.lng>B.lng?new a.N(B.lng+360,B.lat):B)}}class Ze{constructor(w,B,Q){this.bounds=ce.convert(this.validateBounds(w)),this.minzoom=B||0,this.maxzoom=Q||24}validateBounds(w){return Array.isArray(w)&&w.length===4?[Math.max(-180,w[0]),Math.max(-90,w[1]),Math.min(180,w[2]),Math.min(90,w[3])]:[-180,-90,180,90]}contains(w){let B=Math.pow(2,w.z),Q=Math.floor(a.O(this.bounds.getWest())*B),ee=Math.floor(a.Q(this.bounds.getNorth())*B),le=Math.ceil(a.O(this.bounds.getEast())*B),qe=Math.ceil(a.Q(this.bounds.getSouth())*B);return w.x>=Q&&w.x<le&&w.y>=ee&&w.y<qe}}class ct 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 Fe(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 Ze(w.bounds,this.minzoom,this.maxzoom)),this.fire(new a.k("data",{dataType:"source",sourceDataType:"metadata"})),this.fire(new a.k("data",{dataType:"source",sourceDataType:"content"})))}catch(w){this._tileJSONRequest=null,this.fire(new a.j(w))}})}loaded(){return this._loaded}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((le,qe)=>{w.reloadPromise={resolve:le,reject:qe}})}else w.actor=this.dispatcher.getActor(),ee="LT";w.abortController=new AbortController;try{let le=yield w.actor.sendAsync({type:ee,data:Q},w.abortController);if(delete w.abortController,w.aborted)return;this._afterTileLoadWorkerResponse(w,le)}catch(le){if(delete w.abortController,w.aborted)return;if(le&&le.status!==404)throw le;this._afterTileLoadWorkerResponse(w,null)}})}_afterTileLoadWorkerResponse(w,B){if(B&&B.resourceTiming&&(w.resourceTiming=B.resourceTiming),B&&this.map._refreshExpiredTiles&&w.setExpiryData(B),w.loadVectorData(B,this.map.painter),w.reloadPromise){let Q=w.reloadPromise;w.reloadPromise=null,this.loadTile(w).then(Q.resolve).catch(Q.reject)}}abortTile(w){return a._(this,void 0,void 0,function*(){w.abortController&&(w.abortController.abort(),delete w.abortController),w.actor&&(yield w.actor.sendAsync({type:"AT",data:{uid:w.uid,type:this.type,source:this.id}}))})}unloadTile(w){return a._(this,void 0,void 0,function*(){w.unloadVectorData(),w.actor&&(yield w.actor.sendAsync({type:"RMT",data:{uid:w.uid,type:this.type,source:this.id}}))})}hasTransition(){return!1}}class pt extends a.E{constructor(w,B,Q,ee){super(),this.id=w,this.dispatcher=Q,this.setEventedParent(ee),this.type="raster",this.minzoom=0,this.maxzoom=22,this.roundZoom=!0,this.scheme="xyz",this.tileSize=512,this._loaded=!1,this._options=a.e({type:"raster"},B),a.e(this,a.M(B,["url","scheme","tileSize"]))}load(){return a._(this,void 0,void 0,function*(){this._loaded=!1,this.fire(new a.k("dataloading",{dataType:"source"})),this._tileJSONRequest=new AbortController;try{let w=yield Fe(this._options,this.map._requestManager,this._tileJSONRequest);this._tileJSONRequest=null,this._loaded=!0,w&&(a.e(this,w),w.bounds&&(this.tileBounds=new Ze(w.bounds,this.minzoom,this.maxzoom)),this.fire(new a.k("data",{dataType:"source",sourceDataType:"metadata"})),this.fire(new a.k("data",{dataType:"source",sourceDataType:"content"})))}catch(w){this._tileJSONRequest=null,this.fire(new a.j(w))}})}loaded(){return this._loaded}onAdd(w){this.map=w,this.load()}onRemove(){this._tileJSONRequest&&(this._tileJSONRequest.abort(),this._tileJSONRequest=null)}setSourceProperty(w){this._tileJSONRequest&&(this._tileJSONRequest.abort(),this._tileJSONRequest=null),w(),this.load()}setTiles(w){return this.setSourceProperty(()=>{this._options.tiles=w}),this}setUrl(w){return this.setSourceProperty(()=>{this.url=w,this._options.url=w}),this}serialize(){return a.e({},this._options)}hasTile(w){return!this.tileBounds||this.tileBounds.contains(w.canonical)}loadTile(w){return a._(this,void 0,void 0,function*(){let B=w.tileID.canonical.url(this.tiles,this.map.getPixelRatio(),this.scheme);w.abortController=new AbortController;try{let Q=yield p.getImage(this.map._requestManager.transformRequest(B,"Tile"),w.abortController,this.map._refreshExpiredTiles);if(delete w.abortController,w.aborted)return void(w.state="unloaded");if(Q&&Q.data){this.map._refreshExpiredTiles&&Q.cacheControl&&Q.expires&&w.setExpiryData({cacheControl:Q.cacheControl,expires:Q.expires});let ee=this.map.painter.context,le=ee.gl,qe=Q.data;w.texture=this.map.painter.getTileTexture(qe.width),w.texture?w.texture.update(qe,{useMipmap:!0}):(w.texture=new g(ee,qe,le.RGBA,{useMipmap:!0}),w.texture.bind(le.LINEAR,le.CLAMP_TO_EDGE,le.LINEAR_MIPMAP_NEAREST)),w.state="loaded"}}catch(Q){if(delete w.abortController,w.aborted)w.state="unloaded";else if(Q)throw w.state="errored",Q}})}abortTile(w){return a._(this,void 0,void 0,function*(){w.abortController&&(w.abortController.abort(),delete w.abortController)})}unloadTile(w){return a._(this,void 0,void 0,function*(){w.texture&&this.map.painter.saveTileTexture(w.texture)})}hasTransition(){return!1}}class Wt extends pt{constructor(w,B,Q,ee){super(w,B,Q,ee),this.type="raster-dem",this.maxzoom=22,this._options=a.e({type:"raster-dem"},B),this.encoding=B.encoding||"mapbox",this.redFactor=B.redFactor,this.greenFactor=B.greenFactor,this.blueFactor=B.blueFactor,this.baseShift=B.baseShift}loadTile(w){return a._(this,void 0,void 0,function*(){let B=w.tileID.canonical.url(this.tiles,this.map.getPixelRatio(),this.scheme),Q=this.map._requestManager.transformRequest(B,"Tile");w.neighboringTiles=this._getNeighboringTiles(w.tileID),w.abortController=new AbortController;try{let ee=yield p.getImage(Q,w.abortController,this.map._refreshExpiredTiles);if(delete w.abortController,w.aborted)return void(w.state="unloaded");if(ee&&ee.data){let le=ee.data;this.map._refreshExpiredTiles&&ee.cacheControl&&ee.expires&&w.setExpiryData({cacheControl:ee.cacheControl,expires:ee.expires});let qe=a.b(le)&&a.U()?le:yield this.readImageNow(le),Xe={type:this.type,uid:w.uid,source:this.id,rawImageData:qe,encoding:this.encoding,redFactor:this.redFactor,greenFactor:this.greenFactor,blueFactor:this.blueFactor,baseShift:this.baseShift};if(!w.actor||w.state==="expired"){w.actor=this.dispatcher.getActor();let ot=yield w.actor.sendAsync({type:"LDT",data:Xe});w.dem=ot,w.needsHillshadePrepare=!0,w.needsTerrainPrepare=!0,w.state="loaded"}}}catch(ee){if(delete w.abortController,w.aborted)w.state="unloaded";else if(ee)throw w.state="errored",ee}})}readImageNow(w){return a._(this,void 0,void 0,function*(){if(typeof VideoFrame!="undefined"&&a.V()){let B=w.width+2,Q=w.height+2;try{return new a.R({width:B,height:Q},yield a.W(w,-1,-1,B,Q))}catch(ee){}}return u.getImageData(w,1)})}_getNeighboringTiles(w){let B=w.canonical,Q=Math.pow(2,B.z),ee=(B.x-1+Q)%Q,le=B.x===0?w.wrap-1:w.wrap,qe=(B.x+1+Q)%Q,Xe=B.x+1===Q?w.wrap+1:w.wrap,ot={};return ot[new a.S(w.overscaledZ,le,B.z,ee,B.y).key]={backfilled:!1},ot[new a.S(w.overscaledZ,Xe,B.z,qe,B.y).key]={backfilled:!1},B.y>0&&(ot[new a.S(w.overscaledZ,le,B.z,ee,B.y-1).key]={backfilled:!1},ot[new a.S(w.overscaledZ,w.wrap,B.z,B.x,B.y-1).key]={backfilled:!1},ot[new a.S(w.overscaledZ,Xe,B.z,qe,B.y-1).key]={backfilled:!1}),B.y+1<Q&&(ot[new a.S(w.overscaledZ,le,B.z,ee,B.y+1).key]={backfilled:!1},ot[new a.S(w.overscaledZ,w.wrap,B.z,B.x,B.y+1).key]={backfilled:!1},ot[new a.S(w.overscaledZ,Xe,B.z,qe,B.y+1).key]={backfilled:!1}),ot}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 st 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 le=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)*le,tolerance:(B.tolerance!==void 0?B.tolerance:.375)*le,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)*le,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 le={dataType:"source"};this._collectResourceTiming&&ee&&ee.length>0&&a.e(le,{resourceTiming:ee}),this.fire(new a.k("data",Object.assign(Object.assign({},le),{sourceDataType:"metadata"}))),this.fire(new a.k("data",Object.assign(Object.assign({},le),{sourceDataType:"content"})))}catch(Q){if(this._pendingLoads--,this._removed)return void this.fire(new a.k("dataabort",{dataType:"source"}));this.fire(new a.j(Q))}})}loaded(){return this._pendingLoads===0}loadTile(w){return a._(this,void 0,void 0,function*(){let B=w.actor?"RT":"LT";w.actor=this.actor;let Q={type:this.type,uid:w.uid,tileID:w.tileID,zoom:w.tileID.overscaledZ,maxZoom:this.maxzoom,tileSize:this.tileSize,source:this.id,pixelRatio:this.map.getPixelRatio(),showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId};w.abortController=new AbortController;let ee=yield this.actor.sendAsync({type:B,data:Q},w.abortController);delete w.abortController,w.unloadVectorData(),w.aborted||w.loadVectorData(ee,this.map.painter,B==="RT")})}abortTile(w){return a._(this,void 0,void 0,function*(){w.abortController&&(w.abortController.abort(),delete w.abortController),w.aborted=!0})}unloadTile(w){return a._(this,void 0,void 0,function*(){w.unloadVectorData(),yield this.actor.sendAsync({type:"RMT",data:{uid:w.uid,type:this.type,source:this.id}})})}onRemove(){this._removed=!0,this.actor.sendAsync({type:"RS",data:{type:this.type,source:this.id}})}serialize(){return a.e({},this._options,{type:this.type,data:this._data})}hasTransition(){return!1}}var lt=a.Y([{name:"a_pos",type:"Int16",components:2},{name:"a_texture_pos",type:"Int16",components:2}]);class Gt extends a.E{constructor(w,B,Q,ee){super(),this.id=w,this.dispatcher=Q,this.coordinates=B.coordinates,this.type="image",this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.tiles={},this._loaded=!1,this.setEventedParent(ee),this.options=B}load(w){return a._(this,void 0,void 0,function*(){this._loaded=!1,this.fire(new a.k("dataloading",{dataType:"source"})),this.url=this.options.url,this._request=new AbortController;try{let B=yield p.getImage(this.map._requestManager.transformRequest(this.url,"Image"),this._request);this._request=null,this._loaded=!0,B&&B.data&&(this.image=B.data,w&&(this.coordinates=w),this._finishLoading())}catch(B){this._request=null,this._loaded=!0,this.fire(new a.j(B))}})}loaded(){return this._loaded}updateImage(w){return w.url?(this._request&&(this._request.abort(),this._request=null),this.options.url=w.url,this.load(w.coordinates).finally(()=>{this.texture=null}),this):this}_finishLoading(){this.map&&(this.setCoordinates(this.coordinates),this.fire(new a.k("data",{dataType:"source",sourceDataType:"metadata"})))}onAdd(w){this.map=w,this.load()}onRemove(){this._request&&(this._request.abort(),this._request=null)}setCoordinates(w){this.coordinates=w;let B=w.map(a.Z.fromLngLat);this.tileID=function(ee){let le=1/0,qe=1/0,Xe=-1/0,ot=-1/0;for(let xr of ee)le=Math.min(le,xr.x),qe=Math.min(qe,xr.y),Xe=Math.max(Xe,xr.x),ot=Math.max(ot,xr.y);let Tt=Math.max(Xe-le,ot-qe),Kt=Math.max(0,Math.floor(-Math.log(Tt)/Math.LN2)),Jt=Math.pow(2,Kt);return new a.a1(Kt,Math.floor((le+Xe)/2*Jt),Math.floor((qe+ot)/2*Jt))}(B),this.minzoom=this.maxzoom=this.tileID.z;let Q=B.map(ee=>this.tileID.getTilePoint(ee)._round());return this._boundsArray=new a.$,this._boundsArray.emplaceBack(Q[0].x,Q[0].y,0,0),this._boundsArray.emplaceBack(Q[1].x,Q[1].y,a.X,0),this._boundsArray.emplaceBack(Q[3].x,Q[3].y,0,a.X),this._boundsArray.emplaceBack(Q[2].x,Q[2].y,a.X,a.X),this.boundsBuffer&&(this.boundsBuffer.destroy(),delete this.boundsBuffer),this.fire(new a.k("data",{dataType:"source",sourceDataType:"content"})),this}prepare(){if(Object.keys(this.tiles).length===0||!this.image)return;let w=this.map.painter.context,B=w.gl;this.boundsBuffer||(this.boundsBuffer=w.createVertexBuffer(this._boundsArray,lt.members)),this.boundsSegments||(this.boundsSegments=a.a0.simpleSegment(0,0,4,2)),this.texture||(this.texture=new g(w,this.image,B.RGBA),this.texture.bind(B.LINEAR,B.CLAMP_TO_EDGE));let Q=!1;for(let ee in this.tiles){let le=this.tiles[ee];le.state!=="loaded"&&(le.state="loaded",le.texture=this.texture,Q=!0)}Q&&this.fire(new a.k("data",{dataType:"source",sourceDataType:"idle",sourceId:this.id}))}loadTile(w){return a._(this,void 0,void 0,function*(){this.tileID&&this.tileID.equals(w.tileID.canonical)?(this.tiles[String(w.tileID.wrap)]=w,w.buckets={}):w.state="errored"})}serialize(){return{type:"image",url:this.options.url,coordinates:this.coordinates}}hasTransition(){return!1}}class Nt extends Gt{constructor(w,B,Q,ee){super(w,B,Q,ee),this.roundZoom=!0,this.type="video",this.options=B}load(){return a._(this,void 0,void 0,function*(){this._loaded=!1;let w=this.options;this.urls=[];for(let B of w.urls)this.urls.push(this.map._requestManager.transformRequest(B,"Source").url);try{let B=yield a.a3(this.urls);if(this._loaded=!0,!B)return;this.video=B,this.video.loop=!0,this.video.addEventListener("playing",()=>{this.map.triggerRepaint()}),this.map&&this.video.play(),this._finishLoading()}catch(B){this.fire(new a.j(B))}})}pause(){this.video&&this.video.pause()}play(){this.video&&this.video.play()}seek(w){if(this.video){let B=this.video.seekable;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,lt.members)),this.boundsSegments||(this.boundsSegments=a.a0.simpleSegment(0,0,4,2)),this.texture?this.video.paused||(this.texture.bind(B.LINEAR,B.CLAMP_TO_EDGE),B.texSubImage2D(B.TEXTURE_2D,0,0,0,B.RGBA,B.UNSIGNED_BYTE,this.video)):(this.texture=new g(w,this.video,B.RGBA),this.texture.bind(B.LINEAR,B.CLAMP_TO_EDGE));let Q=!1;for(let ee in this.tiles){let le=this.tiles[ee];le.state!=="loaded"&&(le.state="loaded",le.texture=this.texture,Q=!0)}Q&&this.fire(new a.k("data",{dataType:"source",sourceDataType:"idle",sourceId:this.id}))}serialize(){return{type:"video",urls:this.urls,coordinates:this.coordinates}}hasTransition(){return this.video&&!this.video.paused}}class $t extends Gt{constructor(w,B,Q,ee){super(w,B,Q,ee),B.coordinates?Array.isArray(B.coordinates)&&B.coordinates.length===4&&!B.coordinates.some(le=>!Array.isArray(le)||le.length!==2||le.some(qe=>typeof qe!="number"))||this.fire(new a.j(new a.a2(`sources.${w}`,null,'"coordinates" property must be an array of 4 longitude/latitude array pairs'))):this.fire(new a.j(new a.a2(`sources.${w}`,null,'missing required property "coordinates"'))),B.animate&&typeof B.animate!="boolean"&&this.fire(new a.j(new a.a2(`sources.${w}`,null,'optional "animate" property must be a boolean value'))),B.canvas?typeof B.canvas=="string"||B.canvas instanceof HTMLCanvasElement||this.fire(new a.j(new a.a2(`sources.${w}`,null,'"canvas" must be either a string representing the ID of the canvas element from which to read, or an HTMLCanvasElement instance'))):this.fire(new a.j(new a.a2(`sources.${w}`,null,'missing required property "canvas"'))),this.options=B,this.animate=B.animate===void 0||B.animate}load(){return a._(this,void 0,void 0,function*(){this._loaded=!0,this.canvas||(this.canvas=this.options.canvas instanceof HTMLCanvasElement?this.options.canvas:document.getElementById(this.options.canvas)),this.width=this.canvas.width,this.height=this.canvas.height,this._hasInvalidDimensions()?this.fire(new a.j(new Error("Canvas dimensions cannot be less than or equal to zero."))):(this.play=function(){this._playing=!0,this.map.triggerRepaint()},this.pause=function(){this._playing&&(this.prepare(),this._playing=!1)},this._finishLoading())})}getCanvas(){return this.canvas}onAdd(w){this.map=w,this.load(),this.canvas&&this.animate&&this.play()}onRemove(){this.pause()}prepare(){let w=!1;if(this.canvas.width!==this.width&&(this.width=this.canvas.width,w=!0),this.canvas.height!==this.height&&(this.height=this.canvas.height,w=!0),this._hasInvalidDimensions()||Object.keys(this.tiles).length===0)return;let B=this.map.painter.context,Q=B.gl;this.boundsBuffer||(this.boundsBuffer=B.createVertexBuffer(this._boundsArray,lt.members)),this.boundsSegments||(this.boundsSegments=a.a0.simpleSegment(0,0,4,2)),this.texture?(w||this._playing)&&this.texture.update(this.canvas,{premultiply:!0}):this.texture=new g(B,this.canvas,Q.RGBA,{premultiply:!0});let ee=!1;for(let le in this.tiles){let qe=this.tiles[le];qe.state!=="loaded"&&(qe.state="loaded",qe.texture=this.texture,ee=!0)}ee&&this.fire(new a.k("data",{dataType:"source",sourceDataType:"idle",sourceId:this.id}))}serialize(){return{type:"canvas",coordinates:this.coordinates}}hasTransition(){return this._playing}_hasInvalidDimensions(){for(let w of[this.canvas.width,this.canvas.height])if(isNaN(w)||w<=0)return!0;return!1}}let sr={},wr=ue=>{switch(ue){case"geojson":return st;case"image":return Gt;case"raster":return pt;case"raster-dem":return Wt;case"vector":return ct;case"video":return Nt;case"canvas":return $t}return sr[ue]},ur="RTLPluginLoaded";class Qe 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(ur))})}lazyLoad(){this.status==="unavailable"?this.status="requested":this.status==="deferred"&&this._requestImport()}}let Et=null;function er(){return Et||(Et=new Qe),Et}class Ut{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,le){let qe={};if(!le)return qe;for(let Xe of ee){let ot=Xe.layerIds.map(Tt=>le.getLayer(Tt)).filter(Boolean);if(ot.length!==0){Xe.layers=ot,Xe.stateDependentLayerIds&&(Xe.stateDependentLayers=Xe.stateDependentLayerIds.map(Tt=>ot.filter(Kt=>Kt.id===Tt)[0]));for(let Tt of ot)qe[Tt.id]=Xe}}return qe}(w.buckets,B.style),this.hasSymbolBuckets=!1;for(let ee in this.buckets){let le=this.buckets[ee];if(le instanceof a.a6){if(this.hasSymbolBuckets=!0,!Q)break;le.justReloaded=!0}}if(this.hasRTLText=!1,this.hasSymbolBuckets)for(let ee in this.buckets){let le=this.buckets[ee];if(le instanceof a.a6&&le.hasRTLText){this.hasRTLText=!0,er().lazyLoad();break}}this.queryPadding=0;for(let ee in this.buckets){let le=this.buckets[ee];this.queryPadding=Math.max(this.queryPadding,B.style.getLayer(ee).queryRadius(le))}w.imageAtlas&&(this.imageAtlas=w.imageAtlas),w.glyphAtlasImage&&(this.glyphAtlasImage=w.glyphAtlasImage)}else this.collisionBoxArray=new a.a5}unloadVectorData(){for(let w in this.buckets)this.buckets[w].destroy();this.buckets={},this.imageAtlasTexture&&this.imageAtlasTexture.destroy(),this.imageAtlas&&(this.imageAtlas=null),this.glyphAtlasTexture&&this.glyphAtlasTexture.destroy(),this.latestFeatureIndex=null,this.state="unloaded"}getBucket(w){return this.buckets[w.id]}upload(w){for(let Q in this.buckets){let ee=this.buckets[Q];ee.uploadPending()&&ee.upload(w)}let B=w.gl;this.imageAtlas&&!this.imageAtlas.uploaded&&(this.imageAtlasTexture=new g(w,this.imageAtlas.image,B.RGBA),this.imageAtlas.uploaded=!0),this.glyphAtlasImage&&(this.glyphAtlasTexture=new g(w,this.glyphAtlasImage,B.ALPHA),this.glyphAtlasImage=null)}prepare(w){this.imageAtlas&&this.imageAtlas.patchUpdatedImages(w,this.imageAtlasTexture)}queryRenderedFeatures(w,B,Q,ee,le,qe,Xe,ot,Tt,Kt){return this.latestFeatureIndex&&this.latestFeatureIndex.rawTileData?this.latestFeatureIndex.query({queryGeometry:ee,cameraQueryGeometry:le,scale:qe,tileSize:this.tileSize,pixelPosMatrix:Kt,transform:ot,params:Xe,queryPadding:this.queryPadding*Tt},w,B,Q):{}}querySourceFeatures(w,B){let Q=this.latestFeatureIndex;if(!Q||!Q.rawTileData)return;let ee=Q.loadVTLayers(),le=B&&B.sourceLayer?B.sourceLayer:"",qe=ee._geojsonTileLayer||ee[le];if(!qe)return;let Xe=a.a7(B&&B.filter),{z:ot,x:Tt,y:Kt}=this.tileID.canonical,Jt={z:ot,x:Tt,y:Kt};for(let xr=0;xr<qe.length;xr++){let Pr=qe.feature(xr);if(Xe.needGeometry){let Re=a.a8(Pr,!0);if(!Xe.filter(new a.z(this.tileID.overscaledZ),Re,this.tileID.canonical))continue}else if(!Xe.filter(new a.z(this.tileID.overscaledZ),Pr))continue;let ve=Q.getId(Pr,le),be=new a.a9(Pr,ot,Tt,Kt,ve);be.tile=Jt,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 le=this.expirationTime-B;le?this.expirationTime=Q+Math.max(le,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 le=this.buckets[ee],qe=le.layers[0].sourceLayer||"_geojsonTileLayer",Xe=Q[qe],ot=w[qe];if(!Xe||!ot||Object.keys(ot).length===0)continue;le.update(ot,Xe,this.imageAtlas&&this.imageAtlas.patternPositions||{});let Tt=B&&B.style&&B.style.getLayer(ee);Tt&&(this.queryPadding=Math.max(this.queryPadding,Tt.queryRadius(le)))}}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 le of B)if(ee[le])return!0}}return!1}}class Ft{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 le={value:B,timeout:void 0};if(Q!==void 0&&(le.timeout=setTimeout(()=>{this.remove(w,le)},Q)),this.data[ee].push(le),this.order.push(ee),this.order.length>this.max){let qe=this._getAndRemoveByKey(this.order[0]);qe&&this.onRemove(qe)}return this}has(w){return w.wrapped().key in this.data}getAndRemove(w){return this.has(w)?this._getAndRemoveByKey(w.wrapped().key):null}_getAndRemoveByKey(w){let B=this.data[w].shift();return B.timeout&&clearTimeout(B.timeout),this.data[w].length===0&&delete this.data[w],this.order.splice(this.order.indexOf(w),1),B.value}getByKey(w){let B=this.data[w];return B?B[0].value:null}get(w){return this.has(w)?this.data[w.wrapped().key][0].value:null}remove(w,B){if(!this.has(w))return this;let Q=w.wrapped().key,ee=B===void 0?0:this.data[Q].indexOf(B),le=this.data[Q][ee];return this.data[Q].splice(ee,1),le.timeout&&clearTimeout(le.timeout),this.data[Q].length===0&&delete this.data[Q],this.onRemove(le.value),this.order.splice(this.order.indexOf(Q),1),this}setMaxSize(w){for(this.max=w;this.order.length>this.max;){let B=this._getAndRemoveByKey(this.order[0]);B&&this.onRemove(B)}return this}filter(w){let B=[];for(let Q in this.data)for(let ee of this.data[Q])w(ee.value)||B.push(ee);for(let Q of B)this.remove(Q.value.tileID,Q)}}class bt{constructor(){this.state={},this.stateChanges={},this.deletedStates={}}updateState(w,B,Q){let ee=String(B);if(this.stateChanges[w]=this.stateChanges[w]||{},this.stateChanges[w][ee]=this.stateChanges[w][ee]||{},a.e(this.stateChanges[w][ee],Q),this.deletedStates[w]===null){this.deletedStates[w]={};for(let le in this.state[w])le!==ee&&(this.deletedStates[w][le]=null)}else if(this.deletedStates[w]&&this.deletedStates[w][ee]===null){this.deletedStates[w][ee]={};for(let le in this.state[w][ee])Q[le]||(this.deletedStates[w][ee][le]=null)}else for(let le in Q)this.deletedStates[w]&&this.deletedStates[w][ee]&&this.deletedStates[w][ee][le]===null&&delete this.deletedStates[w][ee][le]}removeFeatureState(w,B,Q){if(this.deletedStates[w]===null)return;let ee=String(B);if(this.deletedStates[w]=this.deletedStates[w]||{},Q&&B!==void 0)this.deletedStates[w][ee]!==null&&(this.deletedStates[w][ee]=this.deletedStates[w][ee]||{},this.deletedStates[w][ee][Q]=null);else if(B!==void 0)if(this.stateChanges[w]&&this.stateChanges[w][ee])for(Q in this.deletedStates[w][ee]={},this.stateChanges[w][ee])this.deletedStates[w][ee][Q]=null;else this.deletedStates[w][ee]=null;else this.deletedStates[w]=null}getState(w,B){let Q=String(B),ee=a.e({},(this.state[w]||{})[Q],(this.stateChanges[w]||{})[Q]);if(this.deletedStates[w]===null)return{};if(this.deletedStates[w]){let le=this.deletedStates[w][B];if(le===null)return{};for(let qe in le)delete ee[qe]}return ee}initializeTileState(w,B){w.setFeatureState(this.state,B)}coalesceChanges(w,B){let Q={};for(let ee in this.stateChanges){this.state[ee]=this.state[ee]||{};let le={};for(let qe in this.stateChanges[ee])this.state[ee][qe]||(this.state[ee][qe]={}),a.e(this.state[ee][qe],this.stateChanges[ee][qe]),le[qe]=this.state[ee][qe];Q[ee]=le}for(let ee in this.deletedStates){this.state[ee]=this.state[ee]||{};let le={};if(this.deletedStates[ee]===null)for(let qe in this.state[ee])le[qe]={},this.state[ee][qe]={};else for(let qe in this.deletedStates[ee]){if(this.deletedStates[ee][qe]===null)this.state[ee][qe]={};else for(let Xe of Object.keys(this.deletedStates[ee][qe]))delete this.state[ee][qe][Xe];le[qe]=this.state[ee][qe]}Q[ee]=Q[ee]||{},a.e(Q[ee],le)}if(this.stateChanges={},this.deletedStates={},Object.keys(Q).length!==0)for(let ee in w)w[ee].setFeatureState(Q,B)}}class yt extends a.E{constructor(w,B,Q){super(),this.id=w,this.dispatcher=Q,this.on("data",ee=>this._dataHandler(ee)),this.on("dataloading",()=>{this._sourceErrored=!1}),this.on("error",()=>{this._sourceErrored=this._source.loaded()}),this._source=((ee,le,qe,Xe)=>{let ot=new(wr(le.type))(ee,le,qe,Xe);if(ot.id!==ee)throw new Error(`Expected Source id to be ${ee} instead of ${ot.id}`);return ot})(w,B,Q,this),this._tiles={},this._cache=new Ft(0,ee=>this._unloadTile(ee)),this._timers={},this._cacheTimers={},this._maxTileCacheSize=null,this._maxTileCacheZoomLevels=null,this._loadedParentTiles={},this._coveredTiles={},this._state=new bt,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(Yt).map(w=>w.key)}getRenderableIds(w){let B=[];for(let Q in this._tiles)this._isIdRenderable(Q,w)&&B.push(this._tiles[Q]);return w?B.sort((Q,ee)=>{let le=Q.tileID,qe=ee.tileID,Xe=new a.P(le.canonical.x,le.canonical.y)._rotate(this.transform.angle),ot=new a.P(qe.canonical.x,qe.canonical.y)._rotate(this.transform.angle);return le.overscaledZ-qe.overscaledZ||ot.y-Xe.y||ot.x-Xe.x}).map(Q=>Q.tileID.key):B.map(Q=>Q.tileID).sort(Yt).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 le=B[ee];if(w.neighboringTiles&&w.neighboringTiles[le]){let qe=this.getTileByID(le);Q(w,qe),Q(qe,w)}}function Q(ee,le){ee.needsHillshadePrepare=!0,ee.needsTerrainPrepare=!0;let qe=le.tileID.canonical.x-ee.tileID.canonical.x,Xe=le.tileID.canonical.y-ee.tileID.canonical.y,ot=Math.pow(2,ee.tileID.canonical.z),Tt=le.tileID.key;qe===0&&Xe===0||Math.abs(Xe)>1||(Math.abs(qe)>1&&(Math.abs(qe+ot)===1?qe+=ot:Math.abs(qe-ot)===1&&(qe-=ot)),le.dem&&ee.dem&&(ee.dem.backfillBorder(le.dem,qe,Xe),ee.neighboringTiles&&ee.neighboringTiles[Tt]&&(ee.neighboringTiles[Tt].backfilled=!0)))}}getTile(w){return this.getTileByID(w.key)}getTileByID(w){return this._tiles[w]}_retainLoadedChildren(w,B,Q,ee){for(let le in this._tiles){let qe=this._tiles[le];if(ee[le]||!qe.hasData()||qe.tileID.overscaledZ<=B||qe.tileID.overscaledZ>Q)continue;let Xe=qe.tileID;for(;qe&&qe.tileID.overscaledZ>B+1;){let Tt=qe.tileID.scaledTo(qe.tileID.overscaledZ-1);qe=this._tiles[Tt.key],qe&&qe.hasData()&&(Xe=Tt)}let ot=Xe;for(;ot.overscaledZ>B;)if(ot=ot.scaledTo(ot.overscaledZ-1),w[ot.key]){ee[Xe.key]=Xe;break}}}findLoadedParent(w,B){if(w.key in this._loadedParentTiles){let Q=this._loadedParentTiles[w.key];return Q&&Q.tileID.overscaledZ>=B?Q:null}for(let Q=w.overscaledZ-1;Q>=B;Q--){let ee=w.scaledTo(Q),le=this._getLoadedTile(ee);if(le)return le}}findLoadedSibling(w){return this._getLoadedTile(w)}_getLoadedTile(w){let B=this._tiles[w.key];return B&&B.hasData()?B:this._cache.getByKey(w.wrapped().key)}updateCacheSize(w){let B=Math.ceil(w.width/this._source.tileSize)+1,Q=Math.ceil(w.height/this._source.tileSize)+1,ee=Math.floor(B*Q*(this._maxTileCacheZoomLevels===null?a.a.MAX_TILE_CACHE_ZOOM_LEVELS:this._maxTileCacheZoomLevels)),le=typeof this._maxTileCacheSize=="number"?Math.min(this._maxTileCacheSize,ee):ee;this._cache.setMaxSize(le)}handleWrapJump(w){let B=Math.round((w-(this._prevLng===void 0?w:this._prevLng))/360);if(this._prevLng=w,B){let Q={};for(let ee in this._tiles){let le=this._tiles[ee];le.tileID=le.tileID.unwrapTo(le.tileID.wrap+B),Q[le.tileID.key]=le}this._tiles=Q;for(let ee in this._timers)clearTimeout(this._timers[ee]),delete this._timers[ee];for(let ee in this._tiles)this._setTileReloadTimer(ee,this._tiles[ee])}}_updateCoveredAndRetainedTiles(w,B,Q,ee,le,qe){let Xe={},ot={},Tt=Object.keys(w),Kt=u.now();for(let Jt of Tt){let xr=w[Jt],Pr=this._tiles[Jt];if(!Pr||Pr.fadeEndTime!==0&&Pr.fadeEndTime<=Kt)continue;let ve=this.findLoadedParent(xr,B),be=this.findLoadedSibling(xr),Re=ve||be||null;Re&&(this._addTile(Re.tileID),Xe[Re.tileID.key]=Re.tileID),ot[Jt]=xr}this._retainLoadedChildren(ot,ee,Q,w);for(let Jt in Xe)w[Jt]||(this._coveredTiles[Jt]=!0,w[Jt]=Xe[Jt]);if(qe){let Jt={},xr={};for(let Pr of le)this._tiles[Pr.key].hasData()?Jt[Pr.key]=Pr:xr[Pr.key]=Pr;for(let Pr in xr){let ve=xr[Pr].children(this._source.maxzoom);this._tiles[ve[0].key]&&this._tiles[ve[1].key]&&this._tiles[ve[2].key]&&this._tiles[ve[3].key]&&(Jt[ve[0].key]=w[ve[0].key]=ve[0],Jt[ve[1].key]=w[ve[1].key]=ve[1],Jt[ve[2].key]=w[ve[2].key]=ve[2],Jt[ve[3].key]=w[ve[3].key]=ve[3],delete xr[Pr])}for(let Pr in xr){let ve=xr[Pr],be=this.findLoadedParent(ve,this._source.minzoom),Re=this.findLoadedSibling(ve),Be=be||Re||null;if(Be){Jt[Be.tileID.key]=w[Be.tileID.key]=Be.tileID;for(let tt in Jt)Jt[tt].isChildOf(Be.tileID)&&delete Jt[tt]}}for(let Pr in this._tiles)Jt[Pr]||(this._coveredTiles[Pr]=!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(Kt=>new a.S(Kt.canonical.z,Kt.wrap,Kt.canonical.z,Kt.canonical.x,Kt.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(Kt=>this._source.hasTile(Kt)))):Q=[];let ee=w.coveringZoomLevel(this._source),le=Math.max(ee-yt.maxOverzooming,this._source.minzoom),qe=Math.max(ee+yt.maxUnderzooming,this._source.minzoom);if(this.usedForTerrain){let Kt={};for(let Jt of Q)if(Jt.canonical.z>this._source.minzoom){let xr=Jt.scaledTo(Jt.canonical.z-1);Kt[xr.key]=xr;let Pr=Jt.scaledTo(Math.max(this._source.minzoom,Math.min(Jt.canonical.z,5)));Kt[Pr.key]=Pr}Q=Q.concat(Object.values(Kt))}let Xe=Q.length===0&&!this._updated&&this._didEmitContent;this._updated=!0,Xe&&this.fire(new a.k("data",{sourceDataType:"idle",dataType:"source",sourceId:this.id}));let ot=this._updateRetainedTiles(Q,ee);lr(this._source.type)&&this._updateCoveredAndRetainedTiles(ot,le,qe,ee,Q,B);for(let Kt in ot)this._tiles[Kt].clearFadeHold();let Tt=a.ab(this._tiles,ot);for(let Kt of Tt){let Jt=this._tiles[Kt];Jt.hasSymbolBuckets&&!Jt.holdingForFade()?Jt.setHoldDuration(this.map._fadeDuration):Jt.hasSymbolBuckets&&!Jt.symbolFadeFinished()||this._removeTile(Kt)}this._updateLoadedParentTileCache(),this._updateLoadedSiblingTileCache()}releaseSymbolFadeTiles(){for(let w in this._tiles)this._tiles[w].holdingForFade()&&this._removeTile(w)}_updateRetainedTiles(w,B){var Q;let ee={},le={},qe=Math.max(B-yt.maxOverzooming,this._source.minzoom),Xe=Math.max(B+yt.maxUnderzooming,this._source.minzoom),ot={};for(let Tt of w){let Kt=this._addTile(Tt);ee[Tt.key]=Tt,Kt.hasData()||B<this._source.maxzoom&&(ot[Tt.key]=Tt)}this._retainLoadedChildren(ot,B,Xe,ee);for(let Tt of w){let Kt=this._tiles[Tt.key];if(Kt.hasData())continue;if(B+1>this._source.maxzoom){let xr=Tt.children(this._source.maxzoom)[0],Pr=this.getTile(xr);if(Pr&&Pr.hasData()){ee[xr.key]=xr;continue}}else{let xr=Tt.children(this._source.maxzoom);if(ee[xr[0].key]&&ee[xr[1].key]&&ee[xr[2].key]&&ee[xr[3].key])continue}let Jt=Kt.wasRequested();for(let xr=Tt.overscaledZ-1;xr>=qe;--xr){let Pr=Tt.scaledTo(xr);if(le[Pr.key])break;if(le[Pr.key]=!0,Kt=this.getTile(Pr),!Kt&&Jt&&(Kt=this._addTile(Pr)),Kt){let ve=Kt.hasData();if((ve||!(!((Q=this.map)===null||Q===void 0)&&Q.cancelPendingTileRequestsWhileZooming)||Jt)&&(ee[Pr.key]=Pr),Jt=Kt.wasRequested(),ve)break}}}return ee}_updateLoadedParentTileCache(){this._loadedParentTiles={};for(let w in this._tiles){let B=[],Q,ee=this._tiles[w].tileID;for(;ee.overscaledZ>0;){if(ee.key in this._loadedParentTiles){Q=this._loadedParentTiles[ee.key];break}B.push(ee.key);let le=ee.scaledTo(ee.overscaledZ-1);if(Q=this._getLoadedTile(le),Q)break;ee=le}for(let le of B)this._loadedParentTiles[le]=Q}}_updateLoadedSiblingTileCache(){this._loadedSiblingTiles={};for(let w in this._tiles){let B=this._tiles[w].tileID,Q=this._getLoadedTile(B);this._loadedSiblingTiles[B.key]=Q}}_addTile(w){let B=this._tiles[w.key];if(B)return B;B=this._cache.getAndRemove(w),B&&(this._setTileReloadTimer(w.key,B),B.tileID=w,this._state.initializeTileState(B,this.map?this.map.painter:null),this._cacheTimers[w.key]&&(clearTimeout(this._cacheTimers[w.key]),delete this._cacheTimers[w.key],this._setTileReloadTimer(w.key,B)));let Q=B;return B||(B=new Ut(w,this._source.tileSize*w.overscaleFactor()),this._loadTile(B,w.key,B.state)),B.uses++,this._tiles[w.key]=B,Q||this._source.fire(new a.k("dataloading",{tile:B,coord:B.tileID,dataType:"source"})),B}_setTileReloadTimer(w,B){w in this._timers&&(clearTimeout(this._timers[w]),delete this._timers[w]);let Q=B.getExpiryTimeout();Q&&(this._timers[w]=setTimeout(()=>{this._reloadTile(w,"expired"),delete this._timers[w]},Q))}_removeTile(w){let B=this._tiles[w];B&&(B.uses--,delete this._tiles[w],this._timers[w]&&(clearTimeout(this._timers[w]),delete this._timers[w]),B.uses>0||(B.hasData()&&B.state!=="reloading"?this._cache.add(B.tileID,B,B.getExpiryTimeout()):(B.aborted=!0,this._abortTile(B),this._unloadTile(B))))}_dataHandler(w){let B=w.sourceDataType;w.dataType==="source"&&B==="metadata"&&(this._sourceLoaded=!0),this._sourceLoaded&&!this._paused&&w.dataType==="source"&&B==="content"&&(this.reload(),this.transform&&this.update(this.transform,this.terrain),this._didEmitContent=!0)}clearTiles(){this._shouldReloadOnResume=!1,this._paused=!1;for(let w in this._tiles)this._removeTile(w);this._cache.reset()}tilesIn(w,B,Q){let ee=[],le=this.transform;if(!le)return ee;let qe=Q?le.getCameraQueryGeometry(w):w,Xe=w.map(ve=>le.pointCoordinate(ve,this.terrain)),ot=qe.map(ve=>le.pointCoordinate(ve,this.terrain)),Tt=this.getIds(),Kt=1/0,Jt=1/0,xr=-1/0,Pr=-1/0;for(let ve of ot)Kt=Math.min(Kt,ve.x),Jt=Math.min(Jt,ve.y),xr=Math.max(xr,ve.x),Pr=Math.max(Pr,ve.y);for(let ve=0;ve<Tt.length;ve++){let be=this._tiles[Tt[ve]];if(be.holdingForFade())continue;let Re=be.tileID,Be=Math.pow(2,le.zoom-be.tileID.overscaledZ),tt=B*be.queryPadding*a.X/be.tileSize/Be,We=[Re.getTilePoint(new a.Z(Kt,Jt)),Re.getTilePoint(new a.Z(xr,Pr))];if(We[0].x-tt<a.X&&We[0].y-tt<a.X&&We[1].x+tt>=0&&We[1].y+tt>=0){let it=Xe.map(Ht=>Re.getTilePoint(Ht)),Dt=ot.map(Ht=>Re.getTilePoint(Ht));ee.push({tile:be,tileID:Re,queryGeometry:it,cameraQueryGeometry:Dt,scale:Be})}}return ee}getVisibleCoordinates(w){let B=this.getRenderableIds(w).map(Q=>this._tiles[Q].tileID);for(let Q of B)Q.posMatrix=this.transform.calculatePosMatrix(Q.toUnwrapped());return B}hasTransition(){if(this._source.hasTransition())return!0;if(lr(this._source.type)){let w=u.now();for(let B in this._tiles)if(this._tiles[B].fadeEndTime>=w)return!0}return!1}setFeatureState(w,B,Q){this._state.updateState(w=w||"_geojsonTileLayer",B,Q)}removeFeatureState(w,B,Q){this._state.removeFeatureState(w=w||"_geojsonTileLayer",B,Q)}getFeatureState(w,B){return this._state.getState(w=w||"_geojsonTileLayer",B)}setDependencies(w,B,Q){let ee=this._tiles[w];ee&&ee.setDependencies(B,Q)}reloadTilesForDependencies(w,B){for(let Q in this._tiles)this._tiles[Q].hasDependency(w,B)&&this._reloadTile(Q,"reloading");this._cache.filter(Q=>!Q.hasDependency(w,B))}}function Yt(ue,w){let B=Math.abs(2*ue.wrap)-+(ue.wrap<0),Q=Math.abs(2*w.wrap)-+(w.wrap<0);return ue.overscaledZ-w.overscaledZ||Q-B||w.canonical.y-ue.canonical.y||w.canonical.x-ue.canonical.x}function lr(ue){return ue==="raster"||ue==="image"||ue==="video"}yt.maxOverzooming=10,yt.maxUnderzooming=3;class Tr{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 le=B-1,qe=this._distances[le],Xe=Q-qe,ot=Xe>0?(ee-qe)/Xe:0;return this.points[le].mult(1-ot).add(this.points[B].mult(ot))}}function Rr(ue,w){let B=!0;return ue==="always"||ue!=="never"&&w!=="never"||(B=!1),B}class ei{constructor(w,B,Q){let ee=this.boxCells=[],le=this.circleCells=[];this.xCellCount=Math.ceil(w/Q),this.yCellCount=Math.ceil(B/Q);for(let qe=0;qe<this.xCellCount*this.yCellCount;qe++)ee.push([]),le.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,le){this._forEachCell(B,Q,ee,le,this._insertBoxCell,this.boxUid++),this.boxKeys.push(w),this.bboxes.push(B),this.bboxes.push(Q),this.bboxes.push(ee),this.bboxes.push(le)}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,le,qe){this.boxCells[le].push(qe)}_insertCircleCell(w,B,Q,ee,le,qe){this.circleCells[le].push(qe)}_query(w,B,Q,ee,le,qe,Xe){if(Q<0||w>this.width||ee<0||B>this.height)return[];let ot=[];if(w<=0&&B<=0&&this.width<=Q&&this.height<=ee){if(le)return[{key:null,x1:w,y1:B,x2:Q,y2:ee}];for(let Tt=0;Tt<this.boxKeys.length;Tt++)ot.push({key:this.boxKeys[Tt],x1:this.bboxes[4*Tt],y1:this.bboxes[4*Tt+1],x2:this.bboxes[4*Tt+2],y2:this.bboxes[4*Tt+3]});for(let Tt=0;Tt<this.circleKeys.length;Tt++){let Kt=this.circles[3*Tt],Jt=this.circles[3*Tt+1],xr=this.circles[3*Tt+2];ot.push({key:this.circleKeys[Tt],x1:Kt-xr,y1:Jt-xr,x2:Kt+xr,y2:Jt+xr})}}else this._forEachCell(w,B,Q,ee,this._queryCell,ot,{hitTest:le,overlapMode:qe,seenUids:{box:{},circle:{}}},Xe);return ot}query(w,B,Q,ee){return this._query(w,B,Q,ee,!1,null)}hitTest(w,B,Q,ee,le,qe){return this._query(w,B,Q,ee,!0,le,qe).length>0}hitTestCircle(w,B,Q,ee,le){let qe=w-Q,Xe=w+Q,ot=B-Q,Tt=B+Q;if(Xe<0||qe>this.width||Tt<0||ot>this.height)return!1;let Kt=[];return this._forEachCell(qe,ot,Xe,Tt,this._queryCellCircle,Kt,{hitTest:!0,overlapMode:ee,circle:{x:w,y:B,radius:Q},seenUids:{box:{},circle:{}}},le),Kt.length>0}_queryCell(w,B,Q,ee,le,qe,Xe,ot){let{seenUids:Tt,hitTest:Kt,overlapMode:Jt}=Xe,xr=this.boxCells[le];if(xr!==null){let ve=this.bboxes;for(let be of xr)if(!Tt.box[be]){Tt.box[be]=!0;let Re=4*be,Be=this.boxKeys[be];if(w<=ve[Re+2]&&B<=ve[Re+3]&&Q>=ve[Re+0]&&ee>=ve[Re+1]&&(!ot||ot(Be))&&(!Kt||!Rr(Jt,Be.overlapMode))&&(qe.push({key:Be,x1:ve[Re],y1:ve[Re+1],x2:ve[Re+2],y2:ve[Re+3]}),Kt))return!0}}let Pr=this.circleCells[le];if(Pr!==null){let ve=this.circles;for(let be of Pr)if(!Tt.circle[be]){Tt.circle[be]=!0;let Re=3*be,Be=this.circleKeys[be];if(this._circleAndRectCollide(ve[Re],ve[Re+1],ve[Re+2],w,B,Q,ee)&&(!ot||ot(Be))&&(!Kt||!Rr(Jt,Be.overlapMode))){let tt=ve[Re],We=ve[Re+1],it=ve[Re+2];if(qe.push({key:Be,x1:tt-it,y1:We-it,x2:tt+it,y2:We+it}),Kt)return!0}}}return!1}_queryCellCircle(w,B,Q,ee,le,qe,Xe,ot){let{circle:Tt,seenUids:Kt,overlapMode:Jt}=Xe,xr=this.boxCells[le];if(xr!==null){let ve=this.bboxes;for(let be of xr)if(!Kt.box[be]){Kt.box[be]=!0;let Re=4*be,Be=this.boxKeys[be];if(this._circleAndRectCollide(Tt.x,Tt.y,Tt.radius,ve[Re+0],ve[Re+1],ve[Re+2],ve[Re+3])&&(!ot||ot(Be))&&!Rr(Jt,Be.overlapMode))return qe.push(!0),!0}}let Pr=this.circleCells[le];if(Pr!==null){let ve=this.circles;for(let be of Pr)if(!Kt.circle[be]){Kt.circle[be]=!0;let Re=3*be,Be=this.circleKeys[be];if(this._circlesCollide(ve[Re],ve[Re+1],ve[Re+2],Tt.x,Tt.y,Tt.radius)&&(!ot||ot(Be))&&!Rr(Jt,Be.overlapMode))return qe.push(!0),!0}}}_forEachCell(w,B,Q,ee,le,qe,Xe,ot){let Tt=this._convertToXCellCoord(w),Kt=this._convertToYCellCoord(B),Jt=this._convertToXCellCoord(Q),xr=this._convertToYCellCoord(ee);for(let Pr=Tt;Pr<=Jt;Pr++)for(let ve=Kt;ve<=xr;ve++)if(le.call(this,w,B,Q,ee,this.xCellCount*ve+Pr,qe,Xe,ot))return}_convertToXCellCoord(w){return Math.max(0,Math.min(this.xCellCount-1,Math.floor(w*this.xScale)))}_convertToYCellCoord(w){return Math.max(0,Math.min(this.yCellCount-1,Math.floor(w*this.yScale)))}_circlesCollide(w,B,Q,ee,le,qe){let Xe=ee-w,ot=le-B,Tt=Q+qe;return Tt*Tt>Xe*Xe+ot*ot}_circleAndRectCollide(w,B,Q,ee,le,qe,Xe){let ot=(qe-ee)/2,Tt=Math.abs(w-(ee+ot));if(Tt>ot+Q)return!1;let Kt=(Xe-le)/2,Jt=Math.abs(B-(le+Kt));if(Jt>Kt+Q)return!1;if(Tt<=ot||Jt<=Kt)return!0;let xr=Tt-ot,Pr=Jt-Kt;return xr*xr+Pr*Pr<=Q*Q}}function Wr(ue,w,B,Q,ee){let le=a.H();return w?(a.K(le,le,[1/ee,1/ee,1]),B||a.ad(le,le,Q.angle)):a.L(le,Q.labelPlaneMatrix,ue),le}function Ur(ue,w,B,Q,ee){if(w){let le=a.ae(ue);return a.K(le,le,[ee,ee,1]),B||a.ad(le,le,-Q.angle),le}return Q.glCoordMatrix}function dt(ue,w,B,Q){let ee;Q?(ee=[ue,w,Q(ue,w),1],a.af(ee,ee,B)):(ee=[ue,w,0,1],Jr(ee,ee,B));let le=ee[3];return{point:new a.P(ee[0]/le,ee[1]/le),signedDistanceFromCamera:le,isOccluded:!1}}function Ge(ue,w){return .5+ue/w*.5}function Je(ue,w){return ue.x>=-w[0]&&ue.x<=w[0]&&ue.y>=-w[1]&&ue.y<=w[1]}function je(ue,w,B,Q,ee,le,qe,Xe,ot,Tt,Kt,Jt,xr,Pr,ve){let be=Q?ue.textSizeData:ue.iconSizeData,Re=a.ag(be,B.transform.zoom),Be=[256/B.width*2+1,256/B.height*2+1],tt=Q?ue.text.dynamicLayoutVertexArray:ue.icon.dynamicLayoutVertexArray;tt.clear();let We=ue.lineVertexArray,it=Q?ue.text.placedSymbolArray:ue.icon.placedSymbolArray,Dt=B.transform.width/B.transform.height,Ht=!1;for(let rr=0;rr<it.length;rr++){let dr=it.get(rr);if(dr.hidden||dr.writingMode===a.ah.vertical&&!Ht){di(dr.numGlyphs,tt);continue}Ht=!1;let Sr=dt(dr.anchorX,dr.anchorY,w,ve);if(!Je(Sr.point,Be)){di(dr.numGlyphs,tt);continue}let Or=Ge(B.transform.cameraToCenterDistance,Sr.signedDistanceFromCamera),jr=a.ai(be,Re,dr),ii=qe?jr/Or:jr*Or,Li={getElevation:ve,labelPlaneMatrix:ee,lineVertexArray:We,pitchWithMap:qe,projectionCache:{projections:{},offsets:{},cachedAnchorPoint:void 0,anyProjectionOccluded:!1},projection:Tt,tileAnchorPoint:new a.P(dr.anchorX,dr.anchorY),unwrappedTileID:Kt,width:Jt,height:xr,translation:Pr},un=Ie(Li,dr,ii,!1,Xe,w,le,ue.glyphOffsetArray,tt,Dt,ot);Ht=un.useVertical,(un.notEnoughRoom||Ht||un.needsFlipping&&Ie(Li,dr,ii,!0,Xe,w,le,ue.glyphOffsetArray,tt,Dt,ot).notEnoughRoom)&&di(dr.numGlyphs,tt)}Q?ue.text.dynamicLayoutVertexBuffer.updateData(tt):ue.icon.dynamicLayoutVertexBuffer.updateData(tt)}function $e(ue,w,B,Q,ee,le,qe,Xe){let ot=le.glyphStartIndex+le.numGlyphs,Tt=le.lineStartIndex,Kt=le.lineStartIndex+le.lineLength,Jt=w.getoffsetX(le.glyphStartIndex),xr=w.getoffsetX(ot-1),Pr=pr(ue*Jt,B,Q,ee,le.segment,Tt,Kt,Xe,qe);if(!Pr)return null;let ve=pr(ue*xr,B,Q,ee,le.segment,Tt,Kt,Xe,qe);return ve?Xe.projectionCache.anyProjectionOccluded?null:{first:Pr,last:ve}:null}function wt(ue,w,B,Q){return ue===a.ah.horizontal&&Math.abs(B.y-w.y)>Math.abs(B.x-w.x)*Q?{useVertical:!0}:(ue===a.ah.vertical?w.y<B.y:w.x>B.x)?{needsFlipping:!0}:null}function Ie(ue,w,B,Q,ee,le,qe,Xe,ot,Tt,Kt){let Jt=B/24,xr=w.lineOffsetX*Jt,Pr=w.lineOffsetY*Jt,ve;if(w.numGlyphs>1){let be=w.glyphStartIndex+w.numGlyphs,Re=w.lineStartIndex,Be=w.lineStartIndex+w.lineLength,tt=$e(Jt,Xe,xr,Pr,Q,w,Kt,ue);if(!tt)return{notEnoughRoom:!0};let We=dt(tt.first.point.x,tt.first.point.y,qe,ue.getElevation).point,it=dt(tt.last.point.x,tt.last.point.y,qe,ue.getElevation).point;if(ee&&!Q){let Dt=wt(w.writingMode,We,it,Tt);if(Dt)return Dt}ve=[tt.first];for(let Dt=w.glyphStartIndex+1;Dt<be-1;Dt++)ve.push(pr(Jt*Xe.getoffsetX(Dt),xr,Pr,Q,w.segment,Re,Be,ue,Kt));ve.push(tt.last)}else{if(ee&&!Q){let Re=dt(ue.tileAnchorPoint.x,ue.tileAnchorPoint.y,le,ue.getElevation).point,Be=w.lineStartIndex+w.segment+1,tt=new a.P(ue.lineVertexArray.getx(Be),ue.lineVertexArray.gety(Be)),We=dt(tt.x,tt.y,le,ue.getElevation),it=We.signedDistanceFromCamera>0?We.point:function(Ht,rr,dr,Sr,Or,jr){return xe(Ht,rr,dr,1,Or,jr)}(ue.tileAnchorPoint,tt,Re,0,le,ue),Dt=wt(w.writingMode,Re,it,Tt);if(Dt)return Dt}let be=pr(Jt*Xe.getoffsetX(w.glyphStartIndex),xr,Pr,Q,w.segment,w.lineStartIndex,w.lineStartIndex+w.lineLength,ue,Kt);if(!be||ue.projectionCache.anyProjectionOccluded)return{notEnoughRoom:!0};ve=[be]}for(let be of ve)a.aj(ot,be.point,be.angle);return{}}function xe(ue,w,B,Q,ee,le){let qe=ue.add(ue.sub(w)._unit()),Xe=ee!==void 0?dt(qe.x,qe.y,ee,le.getElevation).point:vt(qe.x,qe.y,le).point,ot=B.sub(Xe);return B.add(ot._mult(Q/ot.mag()))}function Ce(ue,w,B){let Q=w.projectionCache;if(Q.projections[ue])return Q.projections[ue];let ee=new a.P(w.lineVertexArray.getx(ue),w.lineVertexArray.gety(ue)),le=vt(ee.x,ee.y,w);if(le.signedDistanceFromCamera>0)return Q.projections[ue]=le.point,Q.anyProjectionOccluded=Q.anyProjectionOccluded||le.isOccluded,le.point;let qe=ue-B.direction;return function(Xe,ot,Tt,Kt,Jt){return xe(Xe,ot,Tt,Kt,void 0,Jt)}(B.distanceFromAnchor===0?w.tileAnchorPoint:new a.P(w.lineVertexArray.getx(qe),w.lineVertexArray.gety(qe)),ee,B.previousVertex,B.absOffsetX-B.distanceFromAnchor+1,w)}function vt(ue,w,B){let Q=ue+B.translation[0],ee=w+B.translation[1],le;return!B.pitchWithMap&&B.projection.useSpecialProjectionForSymbols?(le=B.projection.projectTileCoordinates(Q,ee,B.unwrappedTileID,B.getElevation),le.point.x=(.5*le.point.x+.5)*B.width,le.point.y=(.5*-le.point.y+.5)*B.height):(le=dt(Q,ee,B.labelPlaneMatrix,B.getElevation),le.isOccluded=!1),le}function nr(ue,w,B){return ue._unit()._perp()._mult(w*B)}function ir(ue,w,B,Q,ee,le,qe,Xe,ot){if(Xe.projectionCache.offsets[ue])return Xe.projectionCache.offsets[ue];let Tt=B.add(w);if(ue+ot.direction<Q||ue+ot.direction>=ee)return Xe.projectionCache.offsets[ue]=Tt,Tt;let Kt=Ce(ue+ot.direction,Xe,ot),Jt=nr(Kt.sub(B),qe,ot.direction),xr=B.add(Jt),Pr=Kt.add(Jt);return Xe.projectionCache.offsets[ue]=a.ak(le,Tt,xr,Pr)||Tt,Xe.projectionCache.offsets[ue]}function pr(ue,w,B,Q,ee,le,qe,Xe,ot){let Tt=Q?ue-w:ue+w,Kt=Tt>0?1:-1,Jt=0;Q&&(Kt*=-1,Jt=Math.PI),Kt<0&&(Jt+=Math.PI);let xr,Pr=Kt>0?le+ee:le+ee+1;Xe.projectionCache.cachedAnchorPoint?xr=Xe.projectionCache.cachedAnchorPoint:(xr=vt(Xe.tileAnchorPoint.x,Xe.tileAnchorPoint.y,Xe).point,Xe.projectionCache.cachedAnchorPoint=xr);let ve,be,Re=xr,Be=xr,tt=0,We=0,it=Math.abs(Tt),Dt=[],Ht;for(;tt+We<=it;){if(Pr+=Kt,Pr<le||Pr>=qe)return null;tt+=We,Be=Re,be=ve;let Sr={absOffsetX:it,direction:Kt,distanceFromAnchor:tt,previousVertex:Be};if(Re=Ce(Pr,Xe,Sr),B===0)Dt.push(Be),Ht=Re.sub(Be);else{let Or,jr=Re.sub(Be);Or=jr.mag()===0?nr(Ce(Pr+Kt,Xe,Sr).sub(Re),B,Kt):nr(jr,B,Kt),be||(be=Be.add(Or)),ve=ir(Pr,Or,Re,le,qe,be,B,Xe,Sr),Dt.push(be),Ht=ve.sub(be)}We=Ht.mag()}let rr=Ht._mult((it-tt)/We)._add(be||Be),dr=Jt+Math.atan2(Re.y-Be.y,Re.x-Be.x);return Dt.push(rr),{point:rr,angle:ot?dr:0,path:Dt}}let oi=new Float32Array([-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0]);function di(ue,w){for(let B=0;B<ue;B++){let Q=w.length;w.resize(Q+4),w.float32.set(oi,3*Q)}}function Jr(ue,w,B){let Q=w[0],ee=w[1];return ue[0]=B[0]*Q+B[4]*ee+B[12],ue[1]=B[1]*Q+B[5]*ee+B[13],ue[3]=B[3]*Q+B[7]*ee+B[15],ue}let fi=100;class Hi{constructor(w,B,Q=new ei(w.width+200,w.height+200,25),ee=new ei(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+fi,this.screenBottomBoundary=w.height+fi,this.gridRightBoundary=w.width+200,this.gridBottomBoundary=w.height+200,this.perspectiveRatioCutoff=.6}placeCollisionBox(w,B,Q,ee,le,qe,Xe,ot,Tt,Kt,Jt){let xr=w.anchorPointX+ot[0],Pr=w.anchorPointY+ot[1],ve=this.projectAndGetPerspectiveRatio(ee,xr,Pr,le,Kt),be=Q*ve.perspectiveRatio,Re;if(qe||Xe)Re=this._projectCollisionBox(w,be,ee,le,qe,Xe,ot,ve,Kt,Jt);else{let Dt=ve.point.x+(Jt?Jt.x*be:0),Ht=ve.point.y+(Jt?Jt.y*be:0);Re={allPointsOccluded:!1,box:[Dt+w.x1*be,Ht+w.y1*be,Dt+w.x2*be,Ht+w.y2*be]}}let[Be,tt,We,it]=Re.box;return this.mapProjection.useSpecialProjectionForSymbols&&(qe?Re.allPointsOccluded:this.mapProjection.isOccluded(xr,Pr,le))||ve.perspectiveRatio<this.perspectiveRatioCutoff||!this.isInsideGrid(Be,tt,We,it)||B!=="always"&&this.grid.hitTest(Be,tt,We,it,B,Tt)?{box:[Be,tt,We,it],placeable:!1,offscreen:!1}:{box:[Be,tt,We,it],placeable:!0,offscreen:this.isOffscreen(Be,tt,We,it)}}placeCollisionCircles(w,B,Q,ee,le,qe,Xe,ot,Tt,Kt,Jt,xr,Pr,ve,be,Re){let Be=[],tt=new a.P(B.anchorX,B.anchorY),We=this.getPerspectiveRatio(qe,tt.x,tt.y,Xe,Re),it=(Jt?le/We:le*We)/a.ap,Dt={getElevation:Re,labelPlaneMatrix:ot,lineVertexArray:Q,pitchWithMap:Jt,projectionCache:{projections:{},offsets:{},cachedAnchorPoint:void 0,anyProjectionOccluded:!1},projection:this.mapProjection,tileAnchorPoint:tt,unwrappedTileID:Xe,width:this.transform.width,height:this.transform.height,translation:be},Ht=$e(it,ee,B.lineOffsetX*it,B.lineOffsetY*it,!1,B,!1,Dt),rr=!1,dr=!1,Sr=!0;if(Ht){let Or=.5*Pr*We+ve,jr=new a.P(-100,-100),ii=new a.P(this.screenRightBoundary,this.screenBottomBoundary),Li=new Tr,un=Ht.first,sn=Ht.last,In=[];for(let fa=un.path.length-1;fa>=1;fa--)In.push(un.path[fa]);for(let fa=1;fa<sn.path.length;fa++)In.push(sn.path[fa]);let Kn=2.5*Or;if(Tt){let fa=this.projectPathToScreenSpace(In,Dt,Tt);In=fa.some($a=>$a.signedDistanceFromCamera<=0)?[]:fa.map($a=>$a.point)}let Aa=[];if(In.length>0){let fa=In[0].clone(),$a=In[0].clone();for(let ko=1;ko<In.length;ko++)fa.x=Math.min(fa.x,In[ko].x),fa.y=Math.min(fa.y,In[ko].y),$a.x=Math.max($a.x,In[ko].x),$a.y=Math.max($a.y,In[ko].y);Aa=fa.x>=jr.x&&$a.x<=ii.x&&fa.y>=jr.y&&$a.y<=ii.y?[In]:$a.x<jr.x||fa.x>ii.x||$a.y<jr.y||fa.y>ii.y?[]:a.al([In],jr.x,jr.y,ii.x,ii.y)}for(let fa of Aa){Li.reset(fa,.25*Or);let $a=0;$a=Li.length<=.5*Or?1:Math.ceil(Li.paddedLength/Kn)+1;for(let ko=0;ko<$a;ko++){let Qa=ko/Math.max($a-1,1),mo=Li.lerp(Qa),Bo=mo.x+fi,Is=mo.y+fi;Be.push(Bo,Is,Or,0);let As=Bo-Or,wo=Is-Or,To=Bo+Or,dl=Is+Or;if(Sr=Sr&&this.isOffscreen(As,wo,To,dl),dr=dr||this.isInsideGrid(As,wo,To,dl),w!=="always"&&this.grid.hitTestCircle(Bo,Is,Or,w,xr)&&(rr=!0,!Kt))return{circles:[],offscreen:!1,collisionDetected:rr}}}}return{circles:!Kt&&rr||!dr||We<this.perspectiveRatioCutoff?[]:Be,offscreen:Sr,collisionDetected:rr}}projectPathToScreenSpace(w,B,Q){return w.map(ee=>dt(ee.x,ee.y,Q,B.getElevation))}queryRenderedSymbols(w){if(w.length===0||this.grid.keysLength()===0&&this.ignoredGrid.keysLength()===0)return{};let B=[],Q=1/0,ee=1/0,le=-1/0,qe=-1/0;for(let Kt of w){let Jt=new a.P(Kt.x+fi,Kt.y+fi);Q=Math.min(Q,Jt.x),ee=Math.min(ee,Jt.y),le=Math.max(le,Jt.x),qe=Math.max(qe,Jt.y),B.push(Jt)}let Xe=this.grid.query(Q,ee,le,qe).concat(this.ignoredGrid.query(Q,ee,le,qe)),ot={},Tt={};for(let Kt of Xe){let Jt=Kt.key;if(ot[Jt.bucketInstanceId]===void 0&&(ot[Jt.bucketInstanceId]={}),ot[Jt.bucketInstanceId][Jt.featureIndex])continue;let xr=[new a.P(Kt.x1,Kt.y1),new a.P(Kt.x2,Kt.y1),new a.P(Kt.x2,Kt.y2),new a.P(Kt.x1,Kt.y2)];a.am(B,xr)&&(ot[Jt.bucketInstanceId][Jt.featureIndex]=!0,Tt[Jt.bucketInstanceId]===void 0&&(Tt[Jt.bucketInstanceId]=[]),Tt[Jt.bucketInstanceId].push(Jt.featureIndex))}return Tt}insertCollisionBox(w,B,Q,ee,le,qe){(Q?this.ignoredGrid:this.grid).insert({bucketInstanceId:ee,featureIndex:le,collisionGroupID:qe,overlapMode:B},w[0],w[1],w[2],w[3])}insertCollisionCircles(w,B,Q,ee,le,qe){let Xe=Q?this.ignoredGrid:this.grid,ot={bucketInstanceId:ee,featureIndex:le,collisionGroupID:qe,overlapMode:B};for(let Tt=0;Tt<w.length;Tt+=4)Xe.insertCircle(ot,w[Tt],w[Tt+1],w[Tt+2])}projectAndGetPerspectiveRatio(w,B,Q,ee,le){let qe;le?(qe=[B,Q,le(B,Q),1],a.af(qe,qe,w)):(qe=[B,Q,0,1],Jr(qe,qe,w));let Xe=qe[3];return{point:new a.P((qe[0]/Xe+1)/2*this.transform.width+fi,(-qe[1]/Xe+1)/2*this.transform.height+fi),perspectiveRatio:.5+this.transform.cameraToCenterDistance/Xe*.5,isOccluded:!1,signedDistanceFromCamera:Xe}}getPerspectiveRatio(w,B,Q,ee,le){let qe=this.mapProjection.useSpecialProjectionForSymbols?this.mapProjection.projectTileCoordinates(B,Q,ee,le):dt(B,Q,w,le);return .5+this.transform.cameraToCenterDistance/qe.signedDistanceFromCamera*.5}isOffscreen(w,B,Q,ee){return Q<fi||w>=this.screenRightBoundary||ee<fi||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,le,qe,Xe,ot,Tt,Kt){let Jt=new a.P(1,0),xr=new a.P(0,1),Pr=new a.P(w.anchorPointX+Xe[0],w.anchorPointY+Xe[1]);if(qe&&!le){let Sr=this.projectAndGetPerspectiveRatio(Q,Pr.x+1,Pr.y,ee,Tt).point.sub(ot.point).unit(),Or=Math.atan(Sr.y/Sr.x)+(Sr.x<0?Math.PI:0),jr=Math.sin(Or),ii=Math.cos(Or);Jt=new a.P(ii,jr),xr=new a.P(-jr,ii)}else if(!qe&&le){let Sr=-this.transform.angle,Or=Math.sin(Sr),jr=Math.cos(Sr);Jt=new a.P(jr,Or),xr=new a.P(-Or,jr)}let ve=ot.point,be=B;if(le){ve=Pr;let Sr=this.transform.zoom-Math.floor(this.transform.zoom);be=Math.pow(2,-Sr),be*=this.mapProjection.getPitchedTextCorrection(this.transform,Pr,ee),Kt||(be*=a.ac(.5+ot.signedDistanceFromCamera/this.transform.cameraToCenterDistance*.5,0,4))}Kt&&(ve=ve.add(Jt.mult(Kt.x*be)).add(xr.mult(Kt.y*be)));let Re=w.x1*be,Be=w.x2*be,tt=(Re+Be)/2,We=w.y1*be,it=w.y2*be,Dt=(We+it)/2,Ht=[{offsetX:Re,offsetY:We},{offsetX:tt,offsetY:We},{offsetX:Be,offsetY:We},{offsetX:Be,offsetY:Dt},{offsetX:Be,offsetY:it},{offsetX:tt,offsetY:it},{offsetX:Re,offsetY:it},{offsetX:Re,offsetY:Dt}],rr=[];for(let{offsetX:Sr,offsetY:Or}of Ht)rr.push(new a.P(ve.x+Jt.x*Sr+xr.x*Or,ve.y+Jt.y*Sr+xr.y*Or));let dr=!1;if(le){let Sr=rr.map(Or=>this.projectAndGetPerspectiveRatio(Q,Or.x,Or.y,ee,Tt));dr=Sr.some(Or=>!Or.isOccluded),rr=Sr.map(Or=>Or.point)}else dr=!0;return{box:a.ao(rr),allPointsOccluded:!dr}}}function Pn(ue,w,B){return w*(a.X/(ue.tileSize*Math.pow(2,B-ue.tileID.overscaledZ)))}class wn{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 pn{constructor(w,B,Q,ee,le){this.text=new wn(w?w.text:null,B,Q,le),this.icon=new wn(w?w.icon:null,B,ee,le)}isHidden(){return this.text.isHidden()&&this.icon.isHidden()}}class Vn{constructor(w,B,Q){this.text=w,this.icon=B,this.skipFade=Q}}class kn{constructor(){this.invProjMatrix=a.H(),this.viewportMatrix=a.H(),this.circles=[]}}class ea{constructor(w,B,Q,ee,le){this.bucketInstanceId=w,this.featureIndex=B,this.sourceLayerIndex=Q,this.bucketIndex=ee,this.tileID=le}}class ua{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 Vt(ue,w,B,Q,ee){let{horizontalAlign:le,verticalAlign:qe}=a.au(ue);return new a.P(-(le-.5)*w+Q[0]*ee,-(qe-.5)*B+Q[1]*ee)}class _t{constructor(w,B,Q,ee,le,qe){this.transform=w.clone(),this.terrain=Q,this.collisionIndex=new Hi(this.transform,B),this.placements={},this.opacities={},this.variableOffsets={},this.stale=!1,this.commitTime=0,this.fadeDuration=ee,this.retainedQueryData={},this.collisionGroups=new ua(le),this.collisionCircleArrays={},this.collisionBoxArrays=new Map,this.prevPlacement=qe,qe&&(qe.prevPlacement=void 0),this.placedOrientations={}}_getTerrainElevationFunc(w){let B=this.terrain;return B?(Q,ee)=>B.getElevation(w,Q,ee):null}getBucketParts(w,B,Q,ee){let le=Q.getBucket(B),qe=Q.latestFeatureIndex;if(!le||!qe||B.id!==le.layerIds[0])return;let Xe=Q.collisionBoxArray,ot=le.layers[0].layout,Tt=le.layers[0].paint,Kt=Math.pow(2,this.transform.zoom-Q.tileID.overscaledZ),Jt=Q.tileSize/a.X,xr=Q.tileID.toUnwrapped(),Pr=this.transform.calculatePosMatrix(xr),ve=ot.get("text-pitch-alignment")==="map",be=ot.get("text-rotation-alignment")==="map",Re=Pn(Q,1,this.transform.zoom),Be=this.collisionIndex.mapProjection.translatePosition(this.transform,Q,Tt.get("text-translate"),Tt.get("text-translate-anchor")),tt=this.collisionIndex.mapProjection.translatePosition(this.transform,Q,Tt.get("icon-translate"),Tt.get("icon-translate-anchor")),We=Wr(Pr,ve,be,this.transform,Re),it=null;if(ve){let Ht=Ur(Pr,ve,be,this.transform,Re);it=a.L([],this.transform.labelPlaneMatrix,Ht)}this.retainedQueryData[le.bucketInstanceId]=new ea(le.bucketInstanceId,qe,le.sourceLayerIndex,le.index,Q.tileID);let Dt={bucket:le,layout:ot,translationText:Be,translationIcon:tt,posMatrix:Pr,unwrappedTileID:xr,textLabelPlaneMatrix:We,labelToScreenMatrix:it,scale:Kt,textPixelRatio:Jt,holdingForFade:Q.holdingForFade(),collisionBoxArray:Xe,partiallyEvaluatedTextSize:a.ag(le.textSizeData,this.transform.zoom),collisionGroup:this.collisionGroups.get(le.sourceID)};if(ee)for(let Ht of le.sortKeyRanges){let{sortKey:rr,symbolInstanceStart:dr,symbolInstanceEnd:Sr}=Ht;w.push({sortKey:rr,symbolInstanceStart:dr,symbolInstanceEnd:Sr,parameters:Dt})}else w.push({symbolInstanceStart:0,symbolInstanceEnd:le.symbolInstances.length,parameters:Dt})}attemptAnchorPlacement(w,B,Q,ee,le,qe,Xe,ot,Tt,Kt,Jt,xr,Pr,ve,be,Re,Be,tt,We){let it=a.aq[w.textAnchor],Dt=[w.textOffset0,w.textOffset1],Ht=Vt(it,Q,ee,Dt,le),rr=this.collisionIndex.placeCollisionBox(B,xr,ot,Tt,Kt,Xe,qe,Re,Jt.predicate,We,Ht);if((!tt||this.collisionIndex.placeCollisionBox(tt,xr,ot,Tt,Kt,Xe,qe,Be,Jt.predicate,We,Ht).placeable)&&rr.placeable){let dr;if(this.prevPlacement&&this.prevPlacement.variableOffsets[Pr.crossTileID]&&this.prevPlacement.placements[Pr.crossTileID]&&this.prevPlacement.placements[Pr.crossTileID].text&&(dr=this.prevPlacement.variableOffsets[Pr.crossTileID].anchor),Pr.crossTileID===0)throw new Error("symbolInstance.crossTileID can't be 0");return this.variableOffsets[Pr.crossTileID]={textOffset:Dt,width:Q,height:ee,anchor:it,textBoxScale:le,prevAnchor:dr},this.markUsedJustification(ve,it,Pr,be),ve.allowVerticalPlacement&&(this.markUsedOrientation(ve,be,Pr),this.placedOrientations[Pr.crossTileID]=be),{shift:Ht,placedGlyphBoxes:rr}}}placeLayerBucketPart(w,B,Q){let{bucket:ee,layout:le,translationText:qe,translationIcon:Xe,posMatrix:ot,unwrappedTileID:Tt,textLabelPlaneMatrix:Kt,labelToScreenMatrix:Jt,textPixelRatio:xr,holdingForFade:Pr,collisionBoxArray:ve,partiallyEvaluatedTextSize:be,collisionGroup:Re}=w.parameters,Be=le.get("text-optional"),tt=le.get("icon-optional"),We=a.ar(le,"text-overlap","text-allow-overlap"),it=We==="always",Dt=a.ar(le,"icon-overlap","icon-allow-overlap"),Ht=Dt==="always",rr=le.get("text-rotation-alignment")==="map",dr=le.get("text-pitch-alignment")==="map",Sr=le.get("icon-text-fit")!=="none",Or=le.get("symbol-z-order")==="viewport-y",jr=it&&(Ht||!ee.hasIconData()||tt),ii=Ht&&(it||!ee.hasTextData()||Be);!ee.collisionArrays&&ve&&ee.deserializeCollisionBoxes(ve);let Li=this._getTerrainElevationFunc(this.retainedQueryData[ee.bucketInstanceId].tileID),un=(sn,In,Kn)=>{var Aa,fa;if(B[sn.crossTileID])return;if(Pr)return void(this.placements[sn.crossTileID]=new Vn(!1,!1,!1));let $a=!1,ko=!1,Qa=!0,mo=null,Bo={box:null,placeable:!1,offscreen:null},Is={box:null,placeable:!1,offscreen:null},As=null,wo=null,To=null,dl=0,Nl=0,Lu=0;In.textFeatureIndex?dl=In.textFeatureIndex:sn.useRuntimeCollisionCircles&&(dl=sn.featureIndex),In.verticalTextFeatureIndex&&(Nl=In.verticalTextFeatureIndex);let ou=In.textBox;if(ou){let Tl=Te=>{let Ne=a.ah.horizontal;if(ee.allowVerticalPlacement&&!Te&&this.prevPlacement){let He=this.prevPlacement.placedOrientations[sn.crossTileID];He&&(this.placedOrientations[sn.crossTileID]=He,Ne=He,this.markUsedOrientation(ee,Ne,sn))}return Ne},Al=(Te,Ne)=>{if(ee.allowVerticalPlacement&&sn.numVerticalGlyphVertices>0&&In.verticalTextBox){for(let He of ee.writingModes)if(He===a.ah.vertical?(Bo=Ne(),Is=Bo):Bo=Te(),Bo&&Bo.placeable)break}else Bo=Te()},X=sn.textAnchorOffsetStartIndex,se=sn.textAnchorOffsetEndIndex;if(se===X){let Te=(Ne,He)=>{let Ye=this.collisionIndex.placeCollisionBox(Ne,We,xr,ot,Tt,dr,rr,qe,Re.predicate,Li);return Ye&&Ye.placeable&&(this.markUsedOrientation(ee,He,sn),this.placedOrientations[sn.crossTileID]=He),Ye};Al(()=>Te(ou,a.ah.horizontal),()=>{let Ne=In.verticalTextBox;return ee.allowVerticalPlacement&&sn.numVerticalGlyphVertices>0&&Ne?Te(Ne,a.ah.vertical):{box:null,offscreen:null}}),Tl(Bo&&Bo.placeable)}else{let Te=a.aq[(fa=(Aa=this.prevPlacement)===null||Aa===void 0?void 0:Aa.variableOffsets[sn.crossTileID])===null||fa===void 0?void 0:fa.anchor],Ne=(Ye,Ct,nt)=>{let jt=Ye.x2-Ye.x1,gr=Ye.y2-Ye.y1,yr=sn.textBoxScale,Gr=Sr&&Dt==="never"?Ct:null,qr=null,_i=We==="never"?1:2,bi="never";Te&&_i++;for(let Xr=0;Xr<_i;Xr++){for(let ni=X;ni<se;ni++){let gi=ee.textAnchorOffsets.get(ni);if(Te&&gi.textAnchor!==Te)continue;let Pi=this.attemptAnchorPlacement(gi,Ye,jt,gr,yr,rr,dr,xr,ot,Tt,Re,bi,sn,ee,nt,qe,Xe,Gr,Li);if(Pi&&(qr=Pi.placedGlyphBoxes,qr&&qr.placeable))return $a=!0,mo=Pi.shift,qr}Te?Te=null:bi=We}return Q&&!qr&&(qr={box:this.collisionIndex.placeCollisionBox(ou,"always",xr,ot,Tt,dr,rr,qe,Re.predicate,Li,new a.P(0,0)).box,offscreen:!1,placeable:!1}),qr};Al(()=>Ne(ou,In.iconBox,a.ah.horizontal),()=>{let Ye=In.verticalTextBox;return ee.allowVerticalPlacement&&(!Bo||!Bo.placeable)&&sn.numVerticalGlyphVertices>0&&Ye?Ne(Ye,In.verticalIconBox,a.ah.vertical):{box:null,occluded:!0,offscreen:null}}),Bo&&($a=Bo.placeable,Qa=Bo.offscreen);let He=Tl(Bo&&Bo.placeable);if(!$a&&this.prevPlacement){let Ye=this.prevPlacement.variableOffsets[sn.crossTileID];Ye&&(this.variableOffsets[sn.crossTileID]=Ye,this.markUsedJustification(ee,Ye.anchor,sn,He))}}}if(As=Bo,$a=As&&As.placeable,Qa=As&&As.offscreen,sn.useRuntimeCollisionCircles){let Tl=ee.text.placedSymbolArray.get(sn.centerJustifiedTextSymbolIndex),Al=a.ai(ee.textSizeData,be,Tl),X=le.get("text-padding");wo=this.collisionIndex.placeCollisionCircles(We,Tl,ee.lineVertexArray,ee.glyphOffsetArray,Al,ot,Tt,Kt,Jt,Q,dr,Re.predicate,sn.collisionCircleDiameter,X,qe,Li),wo.circles.length&&wo.collisionDetected&&!Q&&a.w("Collisions detected, but collision boxes are not shown"),$a=it||wo.circles.length>0&&!wo.collisionDetected,Qa=Qa&&wo.offscreen}if(In.iconFeatureIndex&&(Lu=In.iconFeatureIndex),In.iconBox){let Tl=Al=>this.collisionIndex.placeCollisionBox(Al,Dt,xr,ot,Tt,dr,rr,Xe,Re.predicate,Li,Sr&&mo?mo:void 0);Is&&Is.placeable&&In.verticalIconBox?(To=Tl(In.verticalIconBox),ko=To.placeable):(To=Tl(In.iconBox),ko=To.placeable),Qa=Qa&&To.offscreen}let $s=Be||sn.numHorizontalGlyphVertices===0&&sn.numVerticalGlyphVertices===0,Ql=tt||sn.numIconVertices===0;$s||Ql?Ql?$s||(ko=ko&&$a):$a=ko&&$a:ko=$a=ko&&$a;let dc=ko&&To.placeable;if($a&&As.placeable&&this.collisionIndex.insertCollisionBox(As.box,We,le.get("text-ignore-placement"),ee.bucketInstanceId,Is&&Is.placeable&&Nl?Nl:dl,Re.ID),dc&&this.collisionIndex.insertCollisionBox(To.box,Dt,le.get("icon-ignore-placement"),ee.bucketInstanceId,Lu,Re.ID),wo&&$a&&this.collisionIndex.insertCollisionCircles(wo.circles,We,le.get("text-ignore-placement"),ee.bucketInstanceId,dl,Re.ID),Q&&this.storeCollisionData(ee.bucketInstanceId,Kn,In,As,To,wo),sn.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[sn.crossTileID]=new Vn($a||jr,ko||ii,Qa||ee.justReloaded),B[sn.crossTileID]=!0};if(Or){if(w.symbolInstanceStart!==0)throw new Error("bucket.bucketInstanceId should be 0");let sn=ee.getSortedSymbolIndexes(this.transform.angle);for(let In=sn.length-1;In>=0;--In){let Kn=sn[In];un(ee.symbolInstances.get(Kn),ee.collisionArrays[Kn],Kn)}}else for(let sn=w.symbolInstanceStart;sn<w.symbolInstanceEnd;sn++)un(ee.symbolInstances.get(sn),ee.collisionArrays[sn],sn);if(Q&&ee.bucketInstanceId in this.collisionCircleArrays){let sn=this.collisionCircleArrays[ee.bucketInstanceId];a.as(sn.invProjMatrix,ot),sn.viewportMatrix=this.collisionIndex.getViewportMatrix()}ee.justReloaded=!1}storeCollisionData(w,B,Q,ee,le,qe){if(Q.textBox||Q.iconBox){let Xe,ot;this.collisionBoxArrays.has(w)?Xe=this.collisionBoxArrays.get(w):(Xe=new Map,this.collisionBoxArrays.set(w,Xe)),Xe.has(B)?ot=Xe.get(B):(ot={text:null,icon:null},Xe.set(B,ot)),Q.textBox&&(ot.text=ee.box),Q.iconBox&&(ot.icon=le.box)}if(qe){let Xe=this.collisionCircleArrays[w];Xe===void 0&&(Xe=this.collisionCircleArrays[w]=new kn);for(let ot=0;ot<qe.circles.length;ot+=4)Xe.circles.push(qe.circles[ot+0]),Xe.circles.push(qe.circles[ot+1]),Xe.circles.push(qe.circles[ot+2]),Xe.circles.push(qe.collisionDetected?1:0)}}markUsedJustification(w,B,Q,ee){let le;le=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 Xe of qe)Xe>=0&&(w.text.placedSymbolArray.get(Xe).crossTileID=le>=0&&Xe!==le?0:Q.crossTileID)}markUsedOrientation(w,B,Q){let ee=B===a.ah.horizontal||B===a.ah.horizontalOnly?B:0,le=B===a.ah.vertical?B:0,qe=[Q.leftJustifiedTextSymbolIndex,Q.centerJustifiedTextSymbolIndex,Q.rightJustifiedTextSymbolIndex];for(let Xe of qe)w.text.placedSymbolArray.get(Xe).placedOrientation=ee;Q.verticalPlacedTextSymbolIndex&&(w.text.placedSymbolArray.get(Q.verticalPlacedTextSymbolIndex).placedOrientation=le)}commit(w){this.commitTime=w,this.zoomAtLastRecencyCheck=this.transform.zoom;let B=this.prevPlacement,Q=!1;this.prevZoomAdjustment=B?B.zoomAdjustment(this.transform.zoom):0;let ee=B?B.symbolFadeChange(w):1,le=B?B.opacities:{},qe=B?B.variableOffsets:{},Xe=B?B.placedOrientations:{};for(let ot in this.placements){let Tt=this.placements[ot],Kt=le[ot];Kt?(this.opacities[ot]=new pn(Kt,ee,Tt.text,Tt.icon),Q=Q||Tt.text!==Kt.text.placed||Tt.icon!==Kt.icon.placed):(this.opacities[ot]=new pn(null,ee,Tt.text,Tt.icon,Tt.skipFade),Q=Q||Tt.text||Tt.icon)}for(let ot in le){let Tt=le[ot];if(!this.opacities[ot]){let Kt=new pn(Tt,ee,!1,!1);Kt.isHidden()||(this.opacities[ot]=Kt,Q=Q||Tt.text.placed||Tt.icon.placed)}}for(let ot in qe)this.variableOffsets[ot]||!this.opacities[ot]||this.opacities[ot].isHidden()||(this.variableOffsets[ot]=qe[ot]);for(let ot in Xe)this.placedOrientations[ot]||!this.opacities[ot]||this.opacities[ot].isHidden()||(this.placedOrientations[ot]=Xe[ot]);if(B&&B.lastPlacementChangeTime===void 0)throw new Error("Last placement time for previous placement is not defined");Q?this.lastPlacementChangeTime=w:typeof this.lastPlacementChangeTime!="number"&&(this.lastPlacementChangeTime=B?B.lastPlacementChangeTime:w)}updateLayerOpacities(w,B){let Q={};for(let ee of B){let le=ee.getBucket(w);le&&ee.latestFeatureIndex&&w.id===le.layerIds[0]&&this.updateBucketOpacities(le,ee.tileID,Q,ee.collisionBoxArray)}}updateBucketOpacities(w,B,Q,ee){w.hasTextData()&&(w.text.opacityVertexArray.clear(),w.text.hasVisibleVertices=!1),w.hasIconData()&&(w.icon.opacityVertexArray.clear(),w.icon.hasVisibleVertices=!1),w.hasIconCollisionBoxData()&&w.iconCollisionBox.collisionVertexArray.clear(),w.hasTextCollisionBoxData()&&w.textCollisionBox.collisionVertexArray.clear();let le=w.layers[0],qe=le.layout,Xe=new pn(null,0,!1,!1,!0),ot=qe.get("text-allow-overlap"),Tt=qe.get("icon-allow-overlap"),Kt=le._unevaluatedLayout.hasValue("text-variable-anchor")||le._unevaluatedLayout.hasValue("text-variable-anchor-offset"),Jt=qe.get("text-rotation-alignment")==="map",xr=qe.get("text-pitch-alignment")==="map",Pr=qe.get("icon-text-fit")!=="none",ve=new pn(null,0,ot&&(Tt||!w.hasIconData()||qe.get("icon-optional")),Tt&&(ot||!w.hasTextData()||qe.get("text-optional")),!0);!w.collisionArrays&&ee&&(w.hasIconCollisionBoxData()||w.hasTextCollisionBoxData())&&w.deserializeCollisionBoxes(ee);let be=(Be,tt,We)=>{for(let it=0;it<tt/4;it++)Be.opacityVertexArray.emplaceBack(We);Be.hasVisibleVertices=Be.hasVisibleVertices||We!==cn},Re=this.collisionBoxArrays.get(w.bucketInstanceId);for(let Be=0;Be<w.symbolInstances.length;Be++){let tt=w.symbolInstances.get(Be),{numHorizontalGlyphVertices:We,numVerticalGlyphVertices:it,crossTileID:Dt}=tt,Ht=this.opacities[Dt];Q[Dt]?Ht=Xe:Ht||(Ht=ve,this.opacities[Dt]=Ht),Q[Dt]=!0;let rr=tt.numIconVertices>0,dr=this.placedOrientations[tt.crossTileID],Sr=dr===a.ah.vertical,Or=dr===a.ah.horizontal||dr===a.ah.horizontalOnly;if(We>0||it>0){let ii=en(Ht.text);be(w.text,We,Sr?cn:ii),be(w.text,it,Or?cn:ii);let Li=Ht.text.isHidden();[tt.rightJustifiedTextSymbolIndex,tt.centerJustifiedTextSymbolIndex,tt.leftJustifiedTextSymbolIndex].forEach(In=>{In>=0&&(w.text.placedSymbolArray.get(In).hidden=Li||Sr?1:0)}),tt.verticalPlacedTextSymbolIndex>=0&&(w.text.placedSymbolArray.get(tt.verticalPlacedTextSymbolIndex).hidden=Li||Or?1:0);let un=this.variableOffsets[tt.crossTileID];un&&this.markUsedJustification(w,un.anchor,tt,dr);let sn=this.placedOrientations[tt.crossTileID];sn&&(this.markUsedJustification(w,"left",tt,sn),this.markUsedOrientation(w,sn,tt))}if(rr){let ii=en(Ht.icon),Li=!(Pr&&tt.verticalPlacedIconSymbolIndex&&Sr);tt.placedIconSymbolIndex>=0&&(be(w.icon,tt.numIconVertices,Li?ii:cn),w.icon.placedSymbolArray.get(tt.placedIconSymbolIndex).hidden=Ht.icon.isHidden()),tt.verticalPlacedIconSymbolIndex>=0&&(be(w.icon,tt.numVerticalIconVertices,Li?cn:ii),w.icon.placedSymbolArray.get(tt.verticalPlacedIconSymbolIndex).hidden=Ht.icon.isHidden())}let jr=Re&&Re.has(Be)?Re.get(Be):{text:null,icon:null};if(w.hasIconCollisionBoxData()||w.hasTextCollisionBoxData()){let ii=w.collisionArrays[Be];if(ii){let Li=new a.P(0,0);if(ii.textBox||ii.verticalTextBox){let un=!0;if(Kt){let sn=this.variableOffsets[Dt];sn?(Li=Vt(sn.anchor,sn.width,sn.height,sn.textOffset,sn.textBoxScale),Jt&&Li._rotate(xr?this.transform.angle:-this.transform.angle)):un=!1}if(ii.textBox||ii.verticalTextBox){let sn;ii.textBox&&(sn=Sr),ii.verticalTextBox&&(sn=Or),tr(w.textCollisionBox.collisionVertexArray,Ht.text.placed,!un||sn,jr.text,Li.x,Li.y)}}if(ii.iconBox||ii.verticalIconBox){let un=!!(!Or&&ii.verticalIconBox),sn;ii.iconBox&&(sn=un),ii.verticalIconBox&&(sn=!un),tr(w.iconCollisionBox.collisionVertexArray,Ht.icon.placed,sn,jr.icon,Pr?Li.x:0,Pr?Li.y:0)}}}}if(w.sortFeatures(this.transform.angle),this.retainedQueryData[w.bucketInstanceId]&&(this.retainedQueryData[w.bucketInstanceId].featureSortOrder=w.featureSortOrder),w.hasTextData()&&w.text.opacityVertexBuffer&&w.text.opacityVertexBuffer.updateData(w.text.opacityVertexArray),w.hasIconData()&&w.icon.opacityVertexBuffer&&w.icon.opacityVertexBuffer.updateData(w.icon.opacityVertexArray),w.hasIconCollisionBoxData()&&w.iconCollisionBox.collisionVertexBuffer&&w.iconCollisionBox.collisionVertexBuffer.updateData(w.iconCollisionBox.collisionVertexArray),w.hasTextCollisionBoxData()&&w.textCollisionBox.collisionVertexBuffer&&w.textCollisionBox.collisionVertexBuffer.updateData(w.textCollisionBox.collisionVertexArray),w.text.opacityVertexArray.length!==w.text.layoutVertexArray.length/4)throw new Error(`bucket.text.opacityVertexArray.length (= ${w.text.opacityVertexArray.length}) !== bucket.text.layoutVertexArray.length (= ${w.text.layoutVertexArray.length}) / 4`);if(w.icon.opacityVertexArray.length!==w.icon.layoutVertexArray.length/4)throw new Error(`bucket.icon.opacityVertexArray.length (= ${w.icon.opacityVertexArray.length}) !== bucket.icon.layoutVertexArray.length (= ${w.icon.layoutVertexArray.length}) / 4`);if(w.bucketInstanceId in this.collisionCircleArrays){let Be=this.collisionCircleArrays[w.bucketInstanceId];w.placementInvProjMatrix=Be.invProjMatrix,w.placementViewportMatrix=Be.viewportMatrix,w.collisionCircleArray=Be.circles,delete this.collisionCircleArrays[w.bucketInstanceId]}}symbolFadeChange(w){return this.fadeDuration===0?1:(w-this.commitTime)/this.fadeDuration+this.prevZoomAdjustment}zoomAdjustment(w){return Math.max(0,(this.transform.zoom-w)/1.5)}hasTransitions(w){return this.stale||w-this.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 tr(ue,w,B,Q,ee,le){Q&&Q.length!==0||(Q=[0,0,0,0]);let qe=Q[0]-fi,Xe=Q[1]-fi,ot=Q[2]-fi,Tt=Q[3]-fi;ue.emplaceBack(w?1:0,B?1:0,ee||0,le||0,qe,Xe),ue.emplaceBack(w?1:0,B?1:0,ee||0,le||0,ot,Xe),ue.emplaceBack(w?1:0,B?1:0,ee||0,le||0,ot,Tt),ue.emplaceBack(w?1:0,B?1:0,ee||0,le||0,qe,Tt)}let ar=Math.pow(2,25),Er=Math.pow(2,24),Zr=Math.pow(2,17),ri=Math.pow(2,16),$r=Math.pow(2,9),zi=Math.pow(2,8),Ji=Math.pow(2,1);function en(ue){if(ue.opacity===0&&!ue.placed)return 0;if(ue.opacity===1&&ue.placed)return 4294967295;let w=ue.placed?1:0,B=Math.floor(127*ue.opacity);return B*ar+w*Er+B*Zr+w*ri+B*$r+w*zi+B*Ji+w}let cn=0;function yn(){return{isOccluded:(ue,w,B)=>!1,getPitchedTextCorrection:(ue,w,B)=>1,get useSpecialProjectionForSymbols(){return!1},projectTileCoordinates(ue,w,B,Q){throw new Error("Not implemented.")},translatePosition:(ue,w,B,Q)=>function(ee,le,qe,Xe,ot=!1){if(!qe[0]&&!qe[1])return[0,0];let Tt=ot?Xe==="map"?ee.angle:0:Xe==="viewport"?-ee.angle:0;if(Tt){let Kt=Math.sin(Tt),Jt=Math.cos(Tt);qe=[qe[0]*Jt-qe[1]*Kt,qe[0]*Kt+qe[1]*Jt]}return[ot?qe[0]:Pn(le,qe[0],ee.zoom),ot?qe[1]:Pn(le,qe[1],ee.zoom)]}(ue,w,B,Q),getCircleRadiusCorrection:ue=>1}}class Mn{constructor(w){this._sortAcrossTiles=w.layout.get("symbol-z-order")!=="viewport-y"&&!w.layout.get("symbol-sort-key").isConstant(),this._currentTileIndex=0,this._currentPartIndex=0,this._seenCrossTileIDs={},this._bucketParts=[]}continuePlacement(w,B,Q,ee,le){let qe=this._bucketParts;for(;this._currentTileIndex<w.length;)if(B.getBucketParts(qe,ee,w[this._currentTileIndex],this._sortAcrossTiles),this._currentTileIndex++,le())return!0;for(this._sortAcrossTiles&&(this._sortAcrossTiles=!1,qe.sort((Xe,ot)=>Xe.sortKey-ot.sortKey));this._currentPartIndex<qe.length;)if(B.placeLayerBucketPart(qe[this._currentPartIndex],this._seenCrossTileIDs,Q),this._currentPartIndex++,le())return!0;return!1}}class Ba{constructor(w,B,Q,ee,le,qe,Xe,ot){this.placement=new _t(w,yn(),B,qe,Xe,ot),this._currentPlacementIndex=Q.length-1,this._forceFullPlacement=ee,this._showCollisionBoxes=le,this._done=!1}isDone(){return this._done}continuePlacement(w,B,Q){let ee=u.now(),le=()=>!this._forceFullPlacement&&u.now()-ee>2;for(;this._currentPlacementIndex>=0;){let qe=B[w[this._currentPlacementIndex]],Xe=this.placement.collisionIndex.transform.zoom;if(qe.type==="symbol"&&(!qe.minzoom||qe.minzoom<=Xe)&&(!qe.maxzoom||qe.maxzoom>Xe)){if(this._inProgressLayer||(this._inProgressLayer=new Mn(qe)),this._inProgressLayer.continuePlacement(Q[qe.source],this.placement,this._showCollisionBoxes,qe,le))return;delete this._inProgressLayer}this._currentPlacementIndex--}this._done=!0}commit(w){return this.placement.commit(w),this.placement}}let la=512/a.X/2;class ma{constructor(w,B,Q){this.tileID=w,this.bucketInstanceId=Q,this._symbolsByKey={};let ee=new Map;for(let le=0;le<B.length;le++){let qe=B.get(le),Xe=qe.key,ot=ee.get(Xe);ot?ot.push(qe):ee.set(Xe,[qe])}for(let[le,qe]of ee){let Xe={positions:qe.map(ot=>({x:Math.floor(ot.anchorX*la),y:Math.floor(ot.anchorY*la)})),crossTileIDs:qe.map(ot=>ot.crossTileID)};if(Xe.positions.length>128){let ot=new a.av(Xe.positions.length,16,Uint16Array);for(let{x:Tt,y:Kt}of Xe.positions)ot.add(Tt,Kt);ot.finish(),delete Xe.positions,Xe.index=ot}this._symbolsByKey[le]=Xe}}getScaledCoordinates(w,B){let{x:Q,y:ee,z:le}=this.tileID.canonical,{x:qe,y:Xe,z:ot}=B.canonical,Tt=la/Math.pow(2,ot-le),Kt=(Xe*a.X+w.anchorY)*Tt,Jt=ee*a.X*la;return{x:Math.floor((qe*a.X+w.anchorX)*Tt-Q*a.X*la),y:Math.floor(Kt-Jt)}}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 le=0;le<w.length;le++){let qe=w.get(le);if(qe.crossTileID)continue;let Xe=this._symbolsByKey[qe.key];if(!Xe)continue;let ot=this.getScaledCoordinates(qe,B);if(Xe.index){let Tt=Xe.index.range(ot.x-ee,ot.y-ee,ot.x+ee,ot.y+ee).sort();for(let Kt of Tt){let Jt=Xe.crossTileIDs[Kt];if(!Q[Jt]){Q[Jt]=!0,qe.crossTileID=Jt;break}}}else if(Xe.positions)for(let Tt=0;Tt<Xe.positions.length;Tt++){let Kt=Xe.positions[Tt],Jt=Xe.crossTileIDs[Tt];if(Math.abs(Kt.x-ot.x)<=ee&&Math.abs(Kt.y-ot.y)<=ee&&!Q[Jt]){Q[Jt]=!0,qe.crossTileID=Jt;break}}}}getCrossTileIDsLists(){return Object.values(this._symbolsByKey).map(({crossTileIDs:w})=>w)}}class Wa{constructor(){this.maxCrossTileID=0}generate(){return++this.maxCrossTileID}}class Fa{constructor(){this.indexes={},this.usedCrossTileIDs={},this.lng=0}handleWrapJump(w){let B=Math.round((w-this.lng)/360);if(B!==0)for(let Q in this.indexes){let ee=this.indexes[Q],le={};for(let qe in ee){let Xe=ee[qe];Xe.tileID=Xe.tileID.unwrapTo(Xe.tileID.wrap+B),le[Xe.tileID.key]=Xe}this.indexes[Q]=le}this.lng=w}addBucket(w,B,Q){if(this.indexes[w.overscaledZ]&&this.indexes[w.overscaledZ][w.key]){if(this.indexes[w.overscaledZ][w.key].bucketInstanceId===B.bucketInstanceId)return!1;this.removeBucketCrossTileIDs(w.overscaledZ,this.indexes[w.overscaledZ][w.key])}for(let le=0;le<B.symbolInstances.length;le++)B.symbolInstances.get(le).crossTileID=0;this.usedCrossTileIDs[w.overscaledZ]||(this.usedCrossTileIDs[w.overscaledZ]={});let ee=this.usedCrossTileIDs[w.overscaledZ];for(let le in this.indexes){let qe=this.indexes[le];if(Number(le)>w.overscaledZ)for(let Xe in qe){let ot=qe[Xe];ot.tileID.isChildOf(w)&&ot.findMatches(B.symbolInstances,w,ee)}else{let Xe=qe[w.scaledTo(Number(le)).key];Xe&&Xe.findMatches(B.symbolInstances,w,ee)}}for(let le=0;le<B.symbolInstances.length;le++){let qe=B.symbolInstances.get(le);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 ma(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 le in ee)w[ee[le].bucketInstanceId]||(this.removeBucketCrossTileIDs(Q,ee[le]),delete ee[le],B=!0)}return B}}class Wo{constructor(){this.layerIndexes={},this.crossTileIDs=new Wa,this.maxBucketInstanceId=0,this.bucketsInCurrentPlacement={}}addLayer(w,B,Q){let ee=this.layerIndexes[w.id];ee===void 0&&(ee=this.layerIndexes[w.id]=new Fa);let le=!1,qe={};ee.handleWrapJump(Q);for(let Xe of B){let ot=Xe.getBucket(w);ot&&w.id===ot.layerIds[0]&&(ot.bucketInstanceId||(ot.bucketInstanceId=++this.maxBucketInstanceId),ee.addBucket(Xe.tileID,ot,this.crossTileIDs)&&(le=!0),qe[ot.bucketInstanceId]=!0)}return ee.removeStaleBuckets(qe)&&(le=!0),le}pruneUnusedLayers(w){let B={};w.forEach(Q=>{B[Q]=!0});for(let Q in this.layerIndexes)B[Q]||delete this.layerIndexes[Q]}}let da=(ue,w)=>a.t(ue,w&&w.filter(B=>B.identifier!=="source.canvas")),Wn=a.aw();class Ga extends a.E{constructor(w,B={}){super(),this._rtlPluginLoaded=()=>{for(let Q in this.sourceCaches){let ee=this.sourceCaches[Q].getSource().type;ee!=="vector"&&ee!=="geojson"||this.sourceCaches[Q].reload()}},this.map=w,this.dispatcher=new Le(Se(),w._getMapId()),this.dispatcher.registerMessageHandler("GG",(Q,ee)=>this.getGlyphs(Q,ee)),this.dispatcher.registerMessageHandler("GI",(Q,ee)=>this.getImages(Q,ee)),this.imageManager=new T,this.imageManager.setEventedParent(this),this.glyphManager=new G(w._requestManager,B.localIdeographFontFamily),this.lineAtlas=new oe(256,512),this.crossTileSymbolIndex=new Wo,this._spritesImagesIds={},this._layers={},this._order=[],this.sourceCaches={},this.zoomHistory=new a.ax,this._loaded=!1,this._availableImages=[],this._resetUpdates(),this.dispatcher.broadcast("SR",a.ay()),er().on(ur,this._rtlPluginLoaded),this.on("data",Q=>{if(Q.dataType!=="source"||Q.sourceDataType!=="metadata")return;let ee=this.sourceCaches[Q.sourceId];if(!ee)return;let le=ee.getSource();if(le&&le.vectorLayerIds)for(let qe in this._layers){let Xe=this._layers[qe];Xe.source===le.id&&this._validateLayer(Xe)}})}loadURL(w,B={},Q){this.fire(new a.k("dataloading",{dataType:"style"})),B.validate=typeof B.validate!="boolean"||B.validate;let ee=this.map._requestManager.transformRequest(w,"Style");this._loadStyleRequest=new AbortController;let le=this._loadStyleRequest;a.h(ee,this._loadStyleRequest).then(qe=>{this._loadStyleRequest=null,this._load(qe.data,B,Q)}).catch(qe=>{this._loadStyleRequest=null,qe&&!le.signal.aborted&&this.fire(new a.j(qe))})}loadJSON(w,B={},Q){this.fire(new a.k("dataloading",{dataType:"style"})),this._frameRequest=new AbortController,u.frameAsync(this._frameRequest).then(()=>{this._frameRequest=null,B.validate=B.validate!==!1,this._load(w,B,Q)}).catch(()=>{})}loadEmpty(){this.fire(new a.k("dataloading",{dataType:"style"})),this._load(Wn,{validate:!1})}_load(w,B,Q){var ee;let le=B.transformStyle?B.transformStyle(Q,w):w;if(!B.validate||!da(this,a.u(le))){this._loaded=!0,this.stylesheet=le;for(let qe in le.sources)this.addSource(qe,le.sources[qe],{validate:!1});le.sprite?this._loadSprite(le.sprite):this.imageManager.setLoaded(!0),this.glyphManager.setURL(le.glyphs),this._createLayers(),this.light=new N(this.stylesheet.light),this.sky=new re(this.stylesheet.sky),this.map.setTerrain((ee=this.stylesheet.terrain)!==null&&ee!==void 0?ee:null),this.fire(new a.k("data",{dataType:"style"})),this.fire(new a.k("style.load"))}}_createLayers(){let w=a.az(this.stylesheet.layers);this.dispatcher.broadcast("SL",w),this._order=w.map(B=>B.id),this._layers={},this._serializedLayers=null;for(let B of w){let Q=a.aA(B);Q.setEventedParent(this,{layer:{id:B.id}}),this._layers[B.id]=Q}}_loadSprite(w,B=!1,Q=void 0){let ee;this.imageManager.setLoaded(!1),this._spriteRequest=new AbortController,function(le,qe,Xe,ot){return a._(this,void 0,void 0,function*(){let Tt=k(le),Kt=Xe>1?"@2x":"",Jt={},xr={};for(let{id:Pr,url:ve}of Tt){let be=qe.transformRequest(M(ve,Kt,".json"),"SpriteJSON");Jt[Pr]=a.h(be,ot);let Re=qe.transformRequest(M(ve,Kt,".png"),"SpriteImage");xr[Pr]=p.getImage(Re,ot)}return yield Promise.all([...Object.values(Jt),...Object.values(xr)]),function(Pr,ve){return a._(this,void 0,void 0,function*(){let be={};for(let Re in Pr){be[Re]={};let Be=u.getImageCanvasContext((yield ve[Re]).data),tt=(yield Pr[Re]).data;for(let We in tt){let{width:it,height:Dt,x:Ht,y:rr,sdf:dr,pixelRatio:Sr,stretchX:Or,stretchY:jr,content:ii,textFitWidth:Li,textFitHeight:un}=tt[We];be[Re][We]={data:null,pixelRatio:Sr,sdf:dr,stretchX:Or,stretchY:jr,content:ii,textFitWidth:Li,textFitHeight:un,spriteData:{width:it,height:Dt,x:Ht,y:rr,context:Be}}}}return be})}(Jt,xr)})}(w,this.map._requestManager,this.map.getPixelRatio(),this._spriteRequest).then(le=>{if(this._spriteRequest=null,le)for(let qe in le){this._spritesImagesIds[qe]=[];let Xe=this._spritesImagesIds[qe]?this._spritesImagesIds[qe].filter(ot=>!(ot in le)):[];for(let ot of Xe)this.imageManager.removeImage(ot),this._changedImages[ot]=!0;for(let ot in le[qe]){let Tt=qe==="default"?ot:`${qe}:${ot}`;this._spritesImagesIds[qe].push(Tt),Tt in this.imageManager.images?this.imageManager.updateImage(Tt,le[qe][ot],!1):this.imageManager.addImage(Tt,le[qe][ot]),B&&(this._changedImages[Tt]=!0)}}}).catch(le=>{this._spriteRequest=null,ee=le,this.fire(new a.j(ee))}).finally(()=>{this.imageManager.setLoaded(!0),this._availableImages=this.imageManager.listImages(),B&&(this._changed=!0),this.dispatcher.broadcast("SI",this._availableImages),this.fire(new a.k("data",{dataType:"style"})),Q&&Q(ee)})}_unloadSprite(){for(let w of Object.values(this._spritesImagesIds).flat())this.imageManager.removeImage(w),this._changedImages[w]=!0;this._spritesImagesIds={},this._availableImages=this.imageManager.listImages(),this._changed=!0,this.dispatcher.broadcast("SI",this._availableImages),this.fire(new a.k("data",{dataType:"style"}))}_validateLayer(w){let B=this.sourceCaches[w.source];if(!B)return;let Q=w.sourceLayer;if(!Q)return;let ee=B.getSource();(ee.type==="geojson"||ee.vectorLayerIds&&ee.vectorLayerIds.indexOf(Q)===-1)&&this.fire(new a.j(new Error(`Source layer "${Q}" does not exist on source "${ee.id}" as specified by style layer "${w.id}".`)))}loaded(){if(!this._loaded||Object.keys(this._updatedSources).length)return!1;for(let w in this.sourceCaches)if(!this.sourceCaches[w].loaded())return!1;return!!this.imageManager.isLoaded()}_serializeByIds(w,B=!1){let Q=this._serializedAllLayers();if(!w||w.length===0)return Object.values(B?a.aB(Q):Q);let ee=[];for(let le of w)if(Q[le]){let qe=B?a.aB(Q[le]):Q[le];ee.push(qe)}return ee}_serializedAllLayers(){let w=this._serializedLayers;if(w)return w;w=this._serializedLayers={};let B=Object.keys(this._layers);for(let Q of B){let ee=this._layers[Q];ee.type!=="custom"&&(w[Q]=ee.serialize())}return w}hasTransitions(){if(this.light&&this.light.hasTransition()||this.sky&&this.sky.hasTransition())return!0;for(let w in this.sourceCaches)if(this.sourceCaches[w].hasTransition())return!0;for(let w in this._layers)if(this._layers[w].hasTransition())return!0;return!1}_checkLoaded(){if(!this._loaded)throw new Error("Style is not done loading.")}update(w){if(!this._loaded)return;let B=this._changed;if(B){let ee=Object.keys(this._updatedLayers),le=Object.keys(this._removedLayers);(ee.length||le.length)&&this._updateWorkerLayers(ee,le);for(let qe in this._updatedSources){let Xe=this._updatedSources[qe];if(Xe==="reload")this._reloadSource(qe);else{if(Xe!=="clear")throw new Error(`Invalid action ${Xe}`);this._clearSource(qe)}}this._updateTilesForChangedImages(),this._updateTilesForChangedGlyphs();for(let qe in this._updatedPaintProps)this._layers[qe].updateTransitions(w);this.light.updateTransitions(w),this.sky.updateTransitions(w),this._resetUpdates()}let Q={};for(let ee in this.sourceCaches){let le=this.sourceCaches[ee];Q[ee]=le.used,le.used=!1}for(let ee of this._order){let le=this._layers[ee];le.recalculate(w,this._availableImages),!le.isHidden(w.zoom)&&le.source&&(this.sourceCaches[le.source].used=!0)}for(let ee in Q){let le=this.sourceCaches[ee];!!Q[ee]!=!!le.used&&le.fire(new a.k("data",{sourceDataType:"visibility",dataType:"source",sourceId:ee}))}this.light.recalculate(w),this.sky.recalculate(w),this.z=w.zoom,B&&this.fire(new a.k("data",{dataType:"style"}))}_updateTilesForChangedImages(){let w=Object.keys(this._changedImages);if(w.length){for(let B in this.sourceCaches)this.sourceCaches[B].reloadTilesForDependencies(["icons","patterns"],w);this._changedImages={}}}_updateTilesForChangedGlyphs(){if(this._glyphsDidChange){for(let w in this.sourceCaches)this.sourceCaches[w].reloadTilesForDependencies(["glyphs"],[""]);this._glyphsDidChange=!1}}_updateWorkerLayers(w,B){this.dispatcher.broadcast("UL",{layers:this._serializeByIds(w,!1),removedIds:B})}_resetUpdates(){this._changed=!1,this._updatedLayers={},this._removedLayers={},this._updatedSources={},this._updatedPaintProps={},this._changedImages={},this._glyphsDidChange=!1}setState(w,B={}){var Q;this._checkLoaded();let ee=this.serialize();if(w=B.transformStyle?B.transformStyle(ee,w):w,((Q=B.validate)===null||Q===void 0||Q)&&da(this,a.u(w)))return!1;(w=a.aB(w)).layers=a.az(w.layers);let le=a.aC(ee,w),qe=this._getOperationsToPerform(le);if(qe.unimplemented.length>0)throw new Error(`Unimplemented: ${qe.unimplemented.join(", ")}.`);if(qe.operations.length===0)return!1;for(let Xe of qe.operations)Xe();return this.stylesheet=w,this._serializedLayers=null,!0}_getOperationsToPerform(w){let B=[],Q=[];for(let ee of w)switch(ee.command){case"setCenter":case"setZoom":case"setBearing":case"setPitch":continue;case"addLayer":B.push(()=>this.addLayer.apply(this,ee.args));break;case"removeLayer":B.push(()=>this.removeLayer.apply(this,ee.args));break;case"setPaintProperty":B.push(()=>this.setPaintProperty.apply(this,ee.args));break;case"setLayoutProperty":B.push(()=>this.setLayoutProperty.apply(this,ee.args));break;case"setFilter":B.push(()=>this.setFilter.apply(this,ee.args));break;case"addSource":B.push(()=>this.addSource.apply(this,ee.args));break;case"removeSource":B.push(()=>this.removeSource.apply(this,ee.args));break;case"setLayerZoomRange":B.push(()=>this.setLayerZoomRange.apply(this,ee.args));break;case"setLight":B.push(()=>this.setLight.apply(this,ee.args));break;case"setGeoJSONSourceData":B.push(()=>this.setGeoJSONSourceData.apply(this,ee.args));break;case"setGlyphs":B.push(()=>this.setGlyphs.apply(this,ee.args));break;case"setSprite":B.push(()=>this.setSprite.apply(this,ee.args));break;case"setSky":B.push(()=>this.setSky.apply(this,ee.args));break;case"setTerrain":B.push(()=>this.map.setTerrain.apply(this,ee.args));break;case"setTransition":B.push(()=>{});break;default:Q.push(ee.command)}return{operations:B,unimplemented:Q}}addImage(w,B){if(this.getImage(w))return this.fire(new a.j(new Error(`An image named "${w}" already exists.`)));this.imageManager.addImage(w,B),this._afterImageUpdated(w)}updateImage(w,B){this.imageManager.updateImage(w,B)}getImage(w){return this.imageManager.getImage(w)}removeImage(w){if(!this.getImage(w))return this.fire(new a.j(new Error(`An image named "${w}" does not exist.`)));this.imageManager.removeImage(w),this._afterImageUpdated(w)}_afterImageUpdated(w){this._availableImages=this.imageManager.listImages(),this._changedImages[w]=!0,this._changed=!0,this.dispatcher.broadcast("SI",this._availableImages),this.fire(new a.k("data",{dataType:"style"}))}listImages(){return this._checkLoaded(),this.imageManager.listImages()}addSource(w,B,Q={}){if(this._checkLoaded(),this.sourceCaches[w]!==void 0)throw new Error(`Source "${w}" already exists.`);if(!B.type)throw new Error(`The type property must be defined, but only the following properties were given: ${Object.keys(B).join(", ")}.`);if(["vector","raster","geojson","video","image"].indexOf(B.type)>=0&&this._validate(a.u.source,`sources.${w}`,B,null,Q))return;this.map&&this.map._collectResourceTiming&&(B.collectResourceTiming=!0);let ee=this.sourceCaches[w]=new yt(w,B,this.dispatcher);ee.style=this,ee.setEventedParent(this,()=>({isSourceLoaded:ee.loaded(),source:ee.serialize(),sourceId:w})),ee.onAdd(this.map),this._changed=!0}removeSource(w){if(this._checkLoaded(),this.sourceCaches[w]===void 0)throw new Error("There is no source with this ID");for(let Q in this._layers)if(this._layers[Q].source===w)return this.fire(new a.j(new Error(`Source "${w}" cannot be removed while layer "${Q}" is using it.`)));let B=this.sourceCaches[w];delete this.sourceCaches[w],delete this._updatedSources[w],B.fire(new a.k("data",{sourceDataType:"metadata",dataType:"source",sourceId:w})),B.setEventedParent(null),B.onRemove(this.map),this._changed=!0}setGeoJSONSourceData(w,B){if(this._checkLoaded(),this.sourceCaches[w]===void 0)throw new Error(`There is no source with this ID=${w}`);let Q=this.sourceCaches[w].getSource();if(Q.type!=="geojson")throw new Error(`geojsonSource.type is ${Q.type}, which is !== 'geojson`);Q.setData(B),this._changed=!0}getSource(w){return this.sourceCaches[w]&&this.sourceCaches[w].getSource()}addLayer(w,B,Q={}){this._checkLoaded();let ee=w.id;if(this.getLayer(ee))return void this.fire(new a.j(new Error(`Layer "${ee}" already exists on this map.`)));let le;if(w.type==="custom"){if(da(this,a.aD(w)))return;le=a.aA(w)}else{if("source"in w&&typeof w.source=="object"&&(this.addSource(ee,w.source),w=a.aB(w),w=a.e(w,{source:ee})),this._validate(a.u.layer,`layers.${ee}`,w,{arrayIndex:-1},Q))return;le=a.aA(w),this._validateLayer(le),le.setEventedParent(this,{layer:{id:ee}})}let qe=B?this._order.indexOf(B):this._order.length;if(B&&qe===-1)this.fire(new a.j(new Error(`Cannot add layer "${ee}" before non-existing layer "${B}".`)));else{if(this._order.splice(qe,0,ee),this._layerOrderChanged=!0,this._layers[ee]=le,this._removedLayers[ee]&&le.source&&le.type!=="custom"){let Xe=this._removedLayers[ee];delete this._removedLayers[ee],Xe.type!==le.type?this._updatedSources[le.source]="clear":(this._updatedSources[le.source]="reload",this.sourceCaches[le.source].pause())}this._updateLayer(le),le.onAdd&&le.onAdd(this.map)}}moveLayer(w,B){if(this._checkLoaded(),this._changed=!0,!this._layers[w])return void this.fire(new a.j(new Error(`The layer '${w}' does not exist in the map's style and cannot be moved.`)));if(w===B)return;let Q=this._order.indexOf(w);this._order.splice(Q,1);let ee=B?this._order.indexOf(B):this._order.length;B&&ee===-1?this.fire(new a.j(new Error(`Cannot move layer "${w}" before non-existing layer "${B}".`))):(this._order.splice(ee,0,w),this._layerOrderChanged=!0)}removeLayer(w){this._checkLoaded();let B=this._layers[w];if(!B)return void this.fire(new a.j(new Error(`Cannot remove non-existing layer "${w}".`)));B.setEventedParent(null);let Q=this._order.indexOf(w);this._order.splice(Q,1),this._layerOrderChanged=!0,this._changed=!0,this._removedLayers[w]=B,delete this._layers[w],this._serializedLayers&&delete this._serializedLayers[w],delete this._updatedLayers[w],delete this._updatedPaintProps[w],B.onRemove&&B.onRemove(this.map)}getLayer(w){return this._layers[w]}getLayersOrder(){return[...this._order]}hasLayer(w){return w in this._layers}setLayerZoomRange(w,B,Q){this._checkLoaded();let ee=this.getLayer(w);ee?ee.minzoom===B&&ee.maxzoom===Q||(B!=null&&(ee.minzoom=B),Q!=null&&(ee.maxzoom=Q),this._updateLayer(ee)):this.fire(new a.j(new Error(`Cannot set the zoom range of non-existing layer "${w}".`)))}setFilter(w,B,Q={}){this._checkLoaded();let ee=this.getLayer(w);if(ee){if(!a.aE(ee.filter,B))return B==null?(ee.filter=void 0,void this._updateLayer(ee)):void(this._validate(a.u.filter,`layers.${ee.id}.filter`,B,null,Q)||(ee.filter=a.aB(B),this._updateLayer(ee)))}else this.fire(new a.j(new Error(`Cannot filter non-existing layer "${w}".`)))}getFilter(w){return a.aB(this.getLayer(w).filter)}setLayoutProperty(w,B,Q,ee={}){this._checkLoaded();let le=this.getLayer(w);le?a.aE(le.getLayoutProperty(B),Q)||(le.setLayoutProperty(B,Q,ee),this._updateLayer(le)):this.fire(new a.j(new Error(`Cannot style non-existing layer "${w}".`)))}getLayoutProperty(w,B){let Q=this.getLayer(w);if(Q)return Q.getLayoutProperty(B);this.fire(new a.j(new Error(`Cannot get style of non-existing layer "${w}".`)))}setPaintProperty(w,B,Q,ee={}){this._checkLoaded();let le=this.getLayer(w);le?a.aE(le.getPaintProperty(B),Q)||(le.setPaintProperty(B,Q,ee)&&this._updateLayer(le),this._changed=!0,this._updatedPaintProps[w]=!0,this._serializedLayers=null):this.fire(new a.j(new Error(`Cannot style non-existing layer "${w}".`)))}getPaintProperty(w,B){return this.getLayer(w).getPaintProperty(B)}setFeatureState(w,B){this._checkLoaded();let Q=w.source,ee=w.sourceLayer,le=this.sourceCaches[Q];if(le===void 0)return void this.fire(new a.j(new Error(`The source '${Q}' does not exist in the map's style.`)));let qe=le.getSource().type;qe==="geojson"&&ee?this.fire(new a.j(new Error("GeoJSON sources cannot have a sourceLayer parameter."))):qe!=="vector"||ee?(w.id===void 0&&this.fire(new a.j(new Error("The feature id parameter must be provided."))),le.setFeatureState(ee,w.id,B)):this.fire(new a.j(new Error("The sourceLayer parameter must be provided for vector source types.")))}removeFeatureState(w,B){this._checkLoaded();let Q=w.source,ee=this.sourceCaches[Q];if(ee===void 0)return void this.fire(new a.j(new Error(`The source '${Q}' does not exist in the map's style.`)));let le=ee.getSource().type,qe=le==="vector"?w.sourceLayer:void 0;le!=="vector"||qe?B&&typeof w.id!="string"&&typeof w.id!="number"?this.fire(new a.j(new Error("A feature id is required to remove its specific state property."))):ee.removeFeatureState(qe,w.id,B):this.fire(new a.j(new Error("The sourceLayer parameter must be provided for vector source types.")))}getFeatureState(w){this._checkLoaded();let B=w.source,Q=w.sourceLayer,ee=this.sourceCaches[B];if(ee!==void 0)return ee.getSource().type!=="vector"||Q?(w.id===void 0&&this.fire(new a.j(new Error("The feature id parameter must be provided."))),ee.getFeatureState(Q,w.id)):void this.fire(new a.j(new Error("The sourceLayer parameter must be provided for vector source types.")));this.fire(new a.j(new Error(`The source '${B}' does not exist in the map's style.`)))}getTransition(){return a.e({duration:300,delay:0},this.stylesheet&&this.stylesheet.transition)}serialize(){if(!this._loaded)return;let w=a.aF(this.sourceCaches,le=>le.serialize()),B=this._serializeByIds(this._order,!0),Q=this.map.getTerrain()||void 0,ee=this.stylesheet;return a.aG({version:ee.version,name:ee.name,metadata:ee.metadata,light:ee.light,sky:ee.sky,center:ee.center,zoom:ee.zoom,bearing:ee.bearing,pitch:ee.pitch,sprite:ee.sprite,glyphs:ee.glyphs,transition:ee.transition,sources:w,layers:B,terrain:Q},le=>le!==void 0)}_updateLayer(w){this._updatedLayers[w.id]=!0,w.source&&!this._updatedSources[w.source]&&this.sourceCaches[w.source].getSource().type!=="raster"&&(this._updatedSources[w.source]="reload",this.sourceCaches[w.source].pause()),this._serializedLayers=null,this._changed=!0}_flattenAndSortRenderedFeatures(w){let B=qe=>this._layers[qe].type==="fill-extrusion",Q={},ee=[];for(let qe=this._order.length-1;qe>=0;qe--){let Xe=this._order[qe];if(B(Xe)){Q[Xe]=qe;for(let ot of w){let Tt=ot[Xe];if(Tt)for(let Kt of Tt)ee.push(Kt)}}}ee.sort((qe,Xe)=>Xe.intersectionZ-qe.intersectionZ);let le=[];for(let qe=this._order.length-1;qe>=0;qe--){let Xe=this._order[qe];if(B(Xe))for(let ot=ee.length-1;ot>=0;ot--){let Tt=ee[ot].feature;if(Q[Tt.layer.id]<qe)break;le.push(Tt),ee.pop()}else for(let ot of w){let Tt=ot[Xe];if(Tt)for(let Kt of Tt)le.push(Kt.feature)}}return le}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 Xe of B.layers){let ot=this._layers[Xe];if(!ot)return this.fire(new a.j(new Error(`The layer '${Xe}' does not exist in the map's style and cannot be queried for features.`))),[];ee[ot.source]=!0}}let le=[];B.availableImages=this._availableImages;let qe=this._serializedAllLayers();for(let Xe in this.sourceCaches)B.layers&&!ee[Xe]||le.push(Pe(this.sourceCaches[Xe],this._layers,qe,w,B,Q));return this.placement&&le.push(function(Xe,ot,Tt,Kt,Jt,xr,Pr){let ve={},be=xr.queryRenderedSymbols(Kt),Re=[];for(let Be of Object.keys(be).map(Number))Re.push(Pr[Be]);Re.sort(ge);for(let Be of Re){let tt=Be.featureIndex.lookupSymbolFeatures(be[Be.bucketInstanceId],ot,Be.bucketIndex,Be.sourceLayerIndex,Jt.filter,Jt.layers,Jt.availableImages,Xe);for(let We in tt){let it=ve[We]=ve[We]||[],Dt=tt[We];Dt.sort((Ht,rr)=>{let dr=Be.featureSortOrder;if(dr){let Sr=dr.indexOf(Ht.featureIndex);return dr.indexOf(rr.featureIndex)-Sr}return rr.featureIndex-Ht.featureIndex});for(let Ht of Dt)it.push(Ht)}}for(let Be in ve)ve[Be].forEach(tt=>{let We=tt.feature,it=Tt[Xe[Be].source].getFeatureState(We.layer["source-layer"],We.id);We.source=We.layer.source,We.layer["source-layer"]&&(We.sourceLayer=We.layer["source-layer"]),We.state=it});return ve}(this._layers,qe,this.sourceCaches,w,B,this.placement.collisionIndex,this.placement.retainedQueryData)),this._flattenAndSortRenderedFeatures(le)}querySourceFeatures(w,B){B&&B.filter&&this._validate(a.u.filter,"querySourceFeatures.filter",B.filter,null,B);let Q=this.sourceCaches[w];return Q?function(ee,le){let qe=ee.getRenderableIds().map(Tt=>ee.getTileByID(Tt)),Xe=[],ot={};for(let Tt=0;Tt<qe.length;Tt++){let Kt=qe[Tt],Jt=Kt.tileID.canonical.key;ot[Jt]||(ot[Jt]=!0,Kt.querySourceFeatures(Xe,le))}return Xe}(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 le={now:u.now(),transition:a.e({duration:300,delay:0},this.stylesheet.transition)};this.light.setLight(w,B),this.light.updateTransitions(le)}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 le={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(le)}_validate(w,B,Q,ee,le={}){return(!le||le.validate!==!1)&&da(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),er().off(ur,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,le=!1){let qe=!1,Xe=!1,ot={};for(let Tt of this._order){let Kt=this._layers[Tt];if(Kt.type!=="symbol")continue;if(!ot[Kt.source]){let xr=this.sourceCaches[Kt.source];ot[Kt.source]=xr.getRenderableIds(!0).map(Pr=>xr.getTileByID(Pr)).sort((Pr,ve)=>ve.tileID.overscaledZ-Pr.tileID.overscaledZ||(Pr.tileID.isLessThan(ve.tileID)?-1:1))}let Jt=this.crossTileSymbolIndex.addLayer(Kt,ot[Kt.source],w.center.lng);qe=qe||Jt}if(this.crossTileSymbolIndex.pruneUnusedLayers(this._order),((le=le||this._layerOrderChanged||Q===0)||!this.pauseablePlacement||this.pauseablePlacement.isDone()&&!this.placement.stillRecent(u.now(),w.zoom))&&(this.pauseablePlacement=new Ba(w,this.map.terrain,this._order,le,B,Q,ee,this.placement),this._layerOrderChanged=!1),this.pauseablePlacement.isDone()?this.placement.setStale():(this.pauseablePlacement.continuePlacement(this._order,this._layers,ot),this.pauseablePlacement.isDone()&&(this.placement=this.pauseablePlacement.commit(u.now()),Xe=!0),qe&&this.pauseablePlacement.placement.setStale()),Xe||qe)for(let Tt of this._order){let Kt=this._layers[Tt];Kt.type==="symbol"&&this.placement.updateLayerOpacities(Kt,ot[Kt.source])}return!this.pauseablePlacement.isDone()||this.placement.hasTransitions(u.now())}_releaseSymbolFadeTiles(){for(let w in this.sourceCaches)this.sourceCaches[w].releaseSymbolFadeTiles()}getImages(w,B){return a._(this,void 0,void 0,function*(){let Q=yield this.imageManager.getImages(B.icons);this._updateTilesForChangedImages();let ee=this.sourceCaches[B.source];return ee&&ee.setDependencies(B.tileID.key,B.type,B.icons),Q})}getGlyphs(w,B){return a._(this,void 0,void 0,function*(){let Q=yield this.glyphManager.getGlyphs(B.stacks),ee=this.sourceCaches[B.source];return ee&&ee.setDependencies(B.tileID.key,B.type,[""]),Q})}getGlyphsUrl(){return this.stylesheet.glyphs||null}setGlyphs(w,B={}){this._checkLoaded(),w&&this._validate(a.u.glyphs,"glyphs",w,null,B)||(this._glyphsDidChange=!0,this.stylesheet.glyphs=w,this.glyphManager.entries={},this.glyphManager.setURL(w))}addSprite(w,B,Q={},ee){this._checkLoaded();let le=[{id:w,url:B}],qe=[...k(this.stylesheet.sprite),...le];this._validate(a.u.sprite,"sprite",qe,null,Q)||(this.stylesheet.sprite=qe,this._loadSprite(le,!0,ee))}removeSprite(w){this._checkLoaded();let B=k(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 k(this.stylesheet.sprite)}setSprite(w,B={},Q){this._checkLoaded(),w&&this._validate(a.u.sprite,"sprite",w,null,B)||(this.stylesheet.sprite=w,w?this._loadSprite(w,!0,Q):(this._unloadSprite(),Q&&Q(null)))}}var vo=a.Y([{name:"a_pos",type:"Int16",components:2}]);let jn={prelude:St(`#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:St(`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:St(`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:St(`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:St("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:St(`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:St(`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:St("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:St("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:St("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:St(`#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:St(`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:St(`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:St(`#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:St(`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:St(`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:St(`#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:St(`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:St(`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:St(`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:St(`#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:St(`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:St(`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:St(`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:St(`#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:St(`#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:St("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:St("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:St("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:St("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 St(ue,w){let B=/#pragma mapbox: ([\w]+) ([\w]+) ([\w]+) ([\w]+)/g,Q=w.match(/attribute ([\w]+) ([\w]+)/g),ee=ue.match(/uniform ([\w]+) ([\w]+)([\s]*)([\w]*)/g),le=w.match(/uniform ([\w]+) ([\w]+)([\s]*)([\w]*)/g),qe=le?le.concat(ee):ee,Xe={};return{fragmentSource:ue=ue.replace(B,(ot,Tt,Kt,Jt,xr)=>(Xe[xr]=!0,Tt==="define"?`
|
||
#ifndef HAS_UNIFORM_u_${xr}
|
||
varying ${Kt} ${Jt} ${xr};
|
||
#else
|
||
uniform ${Kt} ${Jt} u_${xr};
|
||
#endif
|
||
`:`
|
||
#ifdef HAS_UNIFORM_u_${xr}
|
||
${Kt} ${Jt} ${xr} = u_${xr};
|
||
#endif
|
||
`)),vertexSource:w=w.replace(B,(ot,Tt,Kt,Jt,xr)=>{let Pr=Jt==="float"?"vec2":"vec4",ve=xr.match(/color/)?"color":Pr;return Xe[xr]?Tt==="define"?`
|
||
#ifndef HAS_UNIFORM_u_${xr}
|
||
uniform lowp float u_${xr}_t;
|
||
attribute ${Kt} ${Pr} a_${xr};
|
||
varying ${Kt} ${Jt} ${xr};
|
||
#else
|
||
uniform ${Kt} ${Jt} u_${xr};
|
||
#endif
|
||
`:ve==="vec4"?`
|
||
#ifndef HAS_UNIFORM_u_${xr}
|
||
${xr} = a_${xr};
|
||
#else
|
||
${Kt} ${Jt} ${xr} = u_${xr};
|
||
#endif
|
||
`:`
|
||
#ifndef HAS_UNIFORM_u_${xr}
|
||
${xr} = unpack_mix_${ve}(a_${xr}, u_${xr}_t);
|
||
#else
|
||
${Kt} ${Jt} ${xr} = u_${xr};
|
||
#endif
|
||
`:Tt==="define"?`
|
||
#ifndef HAS_UNIFORM_u_${xr}
|
||
uniform lowp float u_${xr}_t;
|
||
attribute ${Kt} ${Pr} a_${xr};
|
||
#else
|
||
uniform ${Kt} ${Jt} u_${xr};
|
||
#endif
|
||
`:ve==="vec4"?`
|
||
#ifndef HAS_UNIFORM_u_${xr}
|
||
${Kt} ${Jt} ${xr} = a_${xr};
|
||
#else
|
||
${Kt} ${Jt} ${xr} = u_${xr};
|
||
#endif
|
||
`:`
|
||
#ifndef HAS_UNIFORM_u_${xr}
|
||
${Kt} ${Jt} ${xr} = unpack_mix_${ve}(a_${xr}, u_${xr}_t);
|
||
#else
|
||
${Kt} ${Jt} ${xr} = u_${xr};
|
||
#endif
|
||
`}),staticAttributes:Q,staticUniforms:qe}}class Cr{constructor(){this.boundProgram=null,this.boundLayoutVertexBuffer=null,this.boundPaintVertexBuffers=[],this.boundIndexBuffer=null,this.boundVertexOffset=null,this.boundDynamicVertexBuffer=null,this.vao=null}bind(w,B,Q,ee,le,qe,Xe,ot,Tt){this.context=w;let Kt=this.boundPaintVertexBuffers.length!==ee.length;for(let Jt=0;!Kt&&Jt<ee.length;Jt++)this.boundPaintVertexBuffers[Jt]!==ee[Jt]&&(Kt=!0);!this.vao||this.boundProgram!==B||this.boundLayoutVertexBuffer!==Q||Kt||this.boundIndexBuffer!==le||this.boundVertexOffset!==qe||this.boundDynamicVertexBuffer!==Xe||this.boundDynamicVertexBuffer2!==ot||this.boundDynamicVertexBuffer3!==Tt?this.freshBind(B,Q,ee,le,qe,Xe,ot,Tt):(w.bindVertexArray.set(this.vao),Xe&&Xe.bind(),le&&le.dynamicDraw&&le.bind(),ot&&ot.bind(),Tt&&Tt.bind())}freshBind(w,B,Q,ee,le,qe,Xe,ot){let Tt=w.numAttributes,Kt=this.context,Jt=Kt.gl;this.vao&&this.destroy(),this.vao=Kt.createVertexArray(),Kt.bindVertexArray.set(this.vao),this.boundProgram=w,this.boundLayoutVertexBuffer=B,this.boundPaintVertexBuffers=Q,this.boundIndexBuffer=ee,this.boundVertexOffset=le,this.boundDynamicVertexBuffer=qe,this.boundDynamicVertexBuffer2=Xe,this.boundDynamicVertexBuffer3=ot,B.enableAttributes(Jt,w);for(let xr of Q)xr.enableAttributes(Jt,w);qe&&qe.enableAttributes(Jt,w),Xe&&Xe.enableAttributes(Jt,w),ot&&ot.enableAttributes(Jt,w),B.bind(),B.setVertexAttribPointers(Jt,w,le);for(let xr of Q)xr.bind(),xr.setVertexAttribPointers(Jt,w,le);qe&&(qe.bind(),qe.setVertexAttribPointers(Jt,w,le)),ee&&ee.bind(),Xe&&(Xe.bind(),Xe.setVertexAttribPointers(Jt,w,le)),ot&&(ot.bind(),ot.setVertexAttribPointers(Jt,w,le)),Kt.currentNumAttributes=Tt}destroy(){this.vao&&(this.context.deleteVertexArray(this.vao),this.vao=null)}}let Qr=(ue,w,B,Q,ee)=>({u_matrix:ue,u_texture:0,u_ele_delta:w,u_fog_matrix:B,u_fog_color:Q?Q.properties.get("fog-color"):a.aM.white,u_fog_ground_blend:Q?Q.properties.get("fog-ground-blend"):1,u_fog_ground_blend_opacity:Q?Q.calculateFogBlendOpacity(ee):0,u_horizon_color:Q?Q.properties.get("horizon-color"):a.aM.white,u_horizon_fog_blend:Q?Q.properties.get("horizon-fog-blend"):1});function pi(ue){let w=[];for(let B=0;B<ue.length;B++){if(ue[B]===null)continue;let Q=ue[B].split(" ");w.push(Q.pop())}return w}class fn{constructor(w,B,Q,ee,le,qe){let Xe=w.gl;this.program=Xe.createProgram();let ot=pi(B.staticAttributes),Tt=Q?Q.getBinderAttributes():[],Kt=ot.concat(Tt),Jt=jn.prelude.staticUniforms?pi(jn.prelude.staticUniforms):[],xr=B.staticUniforms?pi(B.staticUniforms):[],Pr=Q?Q.getBinderUniforms():[],ve=Jt.concat(xr).concat(Pr),be=[];for(let Ht of ve)be.indexOf(Ht)<0&&be.push(Ht);let Re=Q?Q.defines():[];le&&Re.push("#define OVERDRAW_INSPECTOR;"),qe&&Re.push("#define TERRAIN3D;");let Be=Re.concat(jn.prelude.fragmentSource,B.fragmentSource).join(`
|
||
`),tt=Re.concat(jn.prelude.vertexSource,B.vertexSource).join(`
|
||
`),We=Xe.createShader(Xe.FRAGMENT_SHADER);if(Xe.isContextLost())return void(this.failedToCreate=!0);if(Xe.shaderSource(We,Be),Xe.compileShader(We),!Xe.getShaderParameter(We,Xe.COMPILE_STATUS))throw new Error(`Could not compile fragment shader: ${Xe.getShaderInfoLog(We)}`);Xe.attachShader(this.program,We);let it=Xe.createShader(Xe.VERTEX_SHADER);if(Xe.isContextLost())return void(this.failedToCreate=!0);if(Xe.shaderSource(it,tt),Xe.compileShader(it),!Xe.getShaderParameter(it,Xe.COMPILE_STATUS))throw new Error(`Could not compile vertex shader: ${Xe.getShaderInfoLog(it)}`);Xe.attachShader(this.program,it),this.attributes={};let Dt={};this.numAttributes=Kt.length;for(let Ht=0;Ht<this.numAttributes;Ht++)Kt[Ht]&&(Xe.bindAttribLocation(this.program,Ht,Kt[Ht]),this.attributes[Kt[Ht]]=Ht);if(Xe.linkProgram(this.program),!Xe.getProgramParameter(this.program,Xe.LINK_STATUS))throw new Error(`Program failed to link: ${Xe.getProgramInfoLog(this.program)}`);Xe.deleteShader(it),Xe.deleteShader(We);for(let Ht=0;Ht<be.length;Ht++){let rr=be[Ht];if(rr&&!Dt[rr]){let dr=Xe.getUniformLocation(this.program,rr);dr&&(Dt[rr]=dr)}}this.fixedUniforms=ee(w,Dt),this.terrainUniforms=((Ht,rr)=>({u_depth:new a.aH(Ht,rr.u_depth),u_terrain:new a.aH(Ht,rr.u_terrain),u_terrain_dim:new a.aI(Ht,rr.u_terrain_dim),u_terrain_matrix:new a.aJ(Ht,rr.u_terrain_matrix),u_terrain_unpack:new a.aK(Ht,rr.u_terrain_unpack),u_terrain_exaggeration:new a.aI(Ht,rr.u_terrain_exaggeration)}))(w,Dt),this.binderUniforms=Q?Q.getUniforms(w,Dt):[]}draw(w,B,Q,ee,le,qe,Xe,ot,Tt,Kt,Jt,xr,Pr,ve,be,Re,Be,tt){let We=w.gl;if(this.failedToCreate)return;if(w.program.set(this.program),w.setDepthMode(Q),w.setStencilMode(ee),w.setColorMode(le),w.setCullFace(qe),ot){w.activeTexture.set(We.TEXTURE2),We.bindTexture(We.TEXTURE_2D,ot.depthTexture),w.activeTexture.set(We.TEXTURE3),We.bindTexture(We.TEXTURE_2D,ot.texture);for(let Dt in this.terrainUniforms)this.terrainUniforms[Dt].set(ot[Dt])}for(let Dt in this.fixedUniforms)this.fixedUniforms[Dt].set(Xe[Dt]);be&&be.setUniforms(w,this.binderUniforms,Pr,{zoom:ve});let it=0;switch(B){case We.LINES:it=2;break;case We.TRIANGLES:it=3;break;case We.LINE_STRIP:it=1}for(let Dt of xr.get()){let Ht=Dt.vaos||(Dt.vaos={});(Ht[Tt]||(Ht[Tt]=new Cr)).bind(w,this,Kt,be?be.getPaintVertexBuffers():[],Jt,Dt.vertexOffset,Re,Be,tt),We.drawElements(B,Dt.primitiveLength*it,We.UNSIGNED_SHORT,Dt.primitiveOffset*it*2)}}}function Sn(ue,w,B){let Q=1/Pn(B,1,w.transform.tileZoom),ee=Math.pow(2,B.tileID.overscaledZ),le=B.tileSize*Math.pow(2,w.transform.tileZoom)/ee,qe=le*(B.tileID.canonical.x+B.tileID.wrap*ee),Xe=le*B.tileID.canonical.y;return{u_image:0,u_texsize:B.imageAtlasTexture.size,u_scale:[Q,ue.fromScale,ue.toScale],u_fade:ue.t,u_pixel_coord_upper:[qe>>16,Xe>>16],u_pixel_coord_lower:[65535&qe,65535&Xe]}}let En=(ue,w,B,Q)=>{let ee=w.style.light,le=ee.properties.get("position"),qe=[le.x,le.y,le.z],Xe=function(){var Tt=new a.A(9);return a.A!=Float32Array&&(Tt[1]=0,Tt[2]=0,Tt[3]=0,Tt[5]=0,Tt[6]=0,Tt[7]=0),Tt[0]=1,Tt[4]=1,Tt[8]=1,Tt}();ee.properties.get("anchor")==="viewport"&&function(Tt,Kt){var Jt=Math.sin(Kt),xr=Math.cos(Kt);Tt[0]=xr,Tt[1]=Jt,Tt[2]=0,Tt[3]=-Jt,Tt[4]=xr,Tt[5]=0,Tt[6]=0,Tt[7]=0,Tt[8]=1}(Xe,-w.transform.angle),function(Tt,Kt,Jt){var xr=Kt[0],Pr=Kt[1],ve=Kt[2];Tt[0]=xr*Jt[0]+Pr*Jt[3]+ve*Jt[6],Tt[1]=xr*Jt[1]+Pr*Jt[4]+ve*Jt[7],Tt[2]=xr*Jt[2]+Pr*Jt[5]+ve*Jt[8]}(qe,qe,Xe);let ot=ee.properties.get("color");return{u_matrix:ue,u_lightpos:qe,u_lightintensity:ee.properties.get("intensity"),u_lightcolor:[ot.r,ot.g,ot.b],u_vertical_gradient:+B,u_opacity:Q}},ki=(ue,w,B,Q,ee,le,qe)=>a.e(En(ue,w,B,Q),Sn(le,w,qe),{u_height_factor:-Math.pow(2,ee.overscaledZ)/qe.tileSize/8}),_n=ue=>({u_matrix:ue}),ya=(ue,w,B,Q)=>a.e(_n(ue),Sn(B,w,Q)),Jn=(ue,w)=>({u_matrix:ue,u_world:w}),Ma=(ue,w,B,Q,ee)=>a.e(ya(ue,w,B,Q),{u_world:ee}),_o=(ue,w,B,Q)=>{let ee=ue.transform,le,qe;if(Q.paint.get("circle-pitch-alignment")==="map"){let Xe=Pn(B,1,ee.zoom);le=!0,qe=[Xe,Xe]}else le=!1,qe=ee.pixelsToGLUnits;return{u_camera_to_center_distance:ee.cameraToCenterDistance,u_scale_with_map:+(Q.paint.get("circle-pitch-scale")==="map"),u_matrix:ue.translatePosMatrix(w.posMatrix,B,Q.paint.get("circle-translate"),Q.paint.get("circle-translate-anchor")),u_pitch_with_map:+le,u_device_pixel_ratio:ue.pixelRatio,u_extrude_scale:qe}},No=(ue,w,B)=>({u_matrix:ue,u_inv_matrix:w,u_camera_to_center_distance:B.cameraToCenterDistance,u_viewport_size:[B.width,B.height]}),po=(ue,w,B=1)=>({u_matrix:ue,u_color:w,u_overlay:0,u_overlay_scale:B}),Lo=ue=>({u_matrix:ue}),Co=(ue,w,B,Q)=>({u_matrix:ue,u_extrude_scale:Pn(w,1,B),u_intensity:Q}),Fs=(ue,w,B,Q)=>{let ee=a.H();a.aP(ee,0,ue.width,ue.height,0,0,1);let le=ue.context.gl;return{u_matrix:ee,u_world:[le.drawingBufferWidth,le.drawingBufferHeight],u_image:B,u_color_ramp:Q,u_opacity:w.paint.get("heatmap-opacity")}};function zs(ue,w){let B=Math.pow(2,w.canonical.z),Q=w.canonical.y;return[new a.Z(0,Q/B).toLngLat().lat,new a.Z(0,(Q+1)/B).toLngLat().lat]}let ul=(ue,w,B,Q)=>{let ee=ue.transform;return{u_matrix:Ss(ue,w,B,Q),u_ratio:1/Pn(w,1,ee.zoom),u_device_pixel_ratio:ue.pixelRatio,u_units_to_pixels:[1/ee.pixelsToGLUnits[0],1/ee.pixelsToGLUnits[1]]}},cl=(ue,w,B,Q,ee)=>a.e(ul(ue,w,B,ee),{u_image:0,u_image_height:Q}),Fl=(ue,w,B,Q,ee)=>{let le=ue.transform,qe=nl(w,le);return{u_matrix:Ss(ue,w,B,ee),u_texsize:w.imageAtlasTexture.size,u_ratio:1/Pn(w,1,le.zoom),u_device_pixel_ratio:ue.pixelRatio,u_image:0,u_scale:[qe,Q.fromScale,Q.toScale],u_fade:Q.t,u_units_to_pixels:[1/le.pixelsToGLUnits[0],1/le.pixelsToGLUnits[1]]}},cs=(ue,w,B,Q,ee,le)=>{let qe=ue.lineAtlas,Xe=nl(w,ue.transform),ot=B.layout.get("line-cap")==="round",Tt=qe.getDash(Q.from,ot),Kt=qe.getDash(Q.to,ot),Jt=Tt.width*ee.fromScale,xr=Kt.width*ee.toScale;return a.e(ul(ue,w,B,le),{u_patternscale_a:[Xe/Jt,-Tt.height/2],u_patternscale_b:[Xe/xr,-Kt.height/2],u_sdfgamma:qe.width/(256*Math.min(Jt,xr)*ue.pixelRatio)/2,u_image:0,u_tex_y_a:Tt.y,u_tex_y_b:Kt.y,u_mix:ee.t})};function nl(ue,w){return 1/Pn(ue,1,w.tileZoom)}function Ss(ue,w,B,Q){return ue.translatePosMatrix(Q?Q.posMatrix:w.tileID.posMatrix,w,B.paint.get("line-translate"),B.paint.get("line-translate-anchor"))}let fl=(ue,w,B,Q,ee)=>{return{u_matrix:ue,u_tl_parent:w,u_scale_parent:B,u_buffer_scale:1,u_fade_t:Q.mix,u_opacity:Q.opacity*ee.paint.get("raster-opacity"),u_image0:0,u_image1:1,u_brightness_low:ee.paint.get("raster-brightness-min"),u_brightness_high:ee.paint.get("raster-brightness-max"),u_saturation_factor:(qe=ee.paint.get("raster-saturation"),qe>0?1-1/(1.001-qe):-qe),u_contrast_factor:(le=ee.paint.get("raster-contrast"),le>0?1/(1-le):1+le),u_spin_weights:Js(ee.paint.get("raster-hue-rotate"))};var le,qe};function Js(ue){ue*=Math.PI/180;let w=Math.sin(ue),B=Math.cos(ue);return[(2*B+1)/3,(-Math.sqrt(3)*w-B+1)/3,(Math.sqrt(3)*w-B+1)/3]}let Os=(ue,w,B,Q,ee,le,qe,Xe,ot,Tt,Kt,Jt,xr,Pr)=>{let ve=qe.transform;return{u_is_size_zoom_constant:+(ue==="constant"||ue==="source"),u_is_size_feature_constant:+(ue==="constant"||ue==="camera"),u_size_t:w?w.uSizeT:0,u_size:w?w.uSize:0,u_camera_to_center_distance:ve.cameraToCenterDistance,u_pitch:ve.pitch/360*2*Math.PI,u_rotate_symbol:+B,u_aspect_ratio:ve.width/ve.height,u_fade_change:qe.options.fadeDuration?qe.symbolFadeChange:1,u_matrix:Xe,u_label_plane_matrix:ot,u_coord_matrix:Tt,u_is_text:+Jt,u_pitch_with_map:+Q,u_is_along_line:ee,u_is_variable_anchor:le,u_texsize:xr,u_texture:0,u_translation:Kt,u_pitched_scale:Pr}},Io=(ue,w,B,Q,ee,le,qe,Xe,ot,Tt,Kt,Jt,xr,Pr,ve)=>{let be=qe.transform;return a.e(Os(ue,w,B,Q,ee,le,qe,Xe,ot,Tt,Kt,Jt,xr,ve),{u_gamma_scale:Q?Math.cos(be._pitch)*be.cameraToCenterDistance:1,u_device_pixel_ratio:qe.pixelRatio,u_is_halo:+Pr})},us=(ue,w,B,Q,ee,le,qe,Xe,ot,Tt,Kt,Jt,xr,Pr)=>a.e(Io(ue,w,B,Q,ee,le,qe,Xe,ot,Tt,Kt,!0,Jt,!0,Pr),{u_texsize_icon:xr,u_texture_icon:1}),Zl=(ue,w,B)=>({u_matrix:ue,u_opacity:w,u_color:B}),Su=(ue,w,B,Q,ee,le)=>a.e(function(qe,Xe,ot,Tt){let Kt=ot.imageManager.getPattern(qe.from.toString()),Jt=ot.imageManager.getPattern(qe.to.toString()),{width:xr,height:Pr}=ot.imageManager.getPixelSize(),ve=Math.pow(2,Tt.tileID.overscaledZ),be=Tt.tileSize*Math.pow(2,ot.transform.tileZoom)/ve,Re=be*(Tt.tileID.canonical.x+Tt.tileID.wrap*ve),Be=be*Tt.tileID.canonical.y;return{u_image:0,u_pattern_tl_a:Kt.tl,u_pattern_br_a:Kt.br,u_pattern_tl_b:Jt.tl,u_pattern_br_b:Jt.br,u_texsize:[xr,Pr],u_mix:Xe.t,u_pattern_size_a:Kt.displaySize,u_pattern_size_b:Jt.displaySize,u_scale_a:Xe.fromScale,u_scale_b:Xe.toScale,u_tile_units_to_pixels:1/Pn(Tt,1,ot.transform.tileZoom),u_pixel_coord_upper:[Re>>16,Be>>16],u_pixel_coord_lower:[65535&Re,65535&Be]}}(Q,le,B,ee),{u_matrix:ue,u_opacity:w}),nc={fillExtrusion:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_lightpos:new a.aN(ue,w.u_lightpos),u_lightintensity:new a.aI(ue,w.u_lightintensity),u_lightcolor:new a.aN(ue,w.u_lightcolor),u_vertical_gradient:new a.aI(ue,w.u_vertical_gradient),u_opacity:new a.aI(ue,w.u_opacity)}),fillExtrusionPattern:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_lightpos:new a.aN(ue,w.u_lightpos),u_lightintensity:new a.aI(ue,w.u_lightintensity),u_lightcolor:new a.aN(ue,w.u_lightcolor),u_vertical_gradient:new a.aI(ue,w.u_vertical_gradient),u_height_factor:new a.aI(ue,w.u_height_factor),u_image:new a.aH(ue,w.u_image),u_texsize:new a.aO(ue,w.u_texsize),u_pixel_coord_upper:new a.aO(ue,w.u_pixel_coord_upper),u_pixel_coord_lower:new a.aO(ue,w.u_pixel_coord_lower),u_scale:new a.aN(ue,w.u_scale),u_fade:new a.aI(ue,w.u_fade),u_opacity:new a.aI(ue,w.u_opacity)}),fill:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix)}),fillPattern:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_image:new a.aH(ue,w.u_image),u_texsize:new a.aO(ue,w.u_texsize),u_pixel_coord_upper:new a.aO(ue,w.u_pixel_coord_upper),u_pixel_coord_lower:new a.aO(ue,w.u_pixel_coord_lower),u_scale:new a.aN(ue,w.u_scale),u_fade:new a.aI(ue,w.u_fade)}),fillOutline:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_world:new a.aO(ue,w.u_world)}),fillOutlinePattern:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_world:new a.aO(ue,w.u_world),u_image:new a.aH(ue,w.u_image),u_texsize:new a.aO(ue,w.u_texsize),u_pixel_coord_upper:new a.aO(ue,w.u_pixel_coord_upper),u_pixel_coord_lower:new a.aO(ue,w.u_pixel_coord_lower),u_scale:new a.aN(ue,w.u_scale),u_fade:new a.aI(ue,w.u_fade)}),circle:(ue,w)=>({u_camera_to_center_distance:new a.aI(ue,w.u_camera_to_center_distance),u_scale_with_map:new a.aH(ue,w.u_scale_with_map),u_pitch_with_map:new a.aH(ue,w.u_pitch_with_map),u_extrude_scale:new a.aO(ue,w.u_extrude_scale),u_device_pixel_ratio:new a.aI(ue,w.u_device_pixel_ratio),u_matrix:new a.aJ(ue,w.u_matrix)}),collisionBox:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_pixel_extrude_scale:new a.aO(ue,w.u_pixel_extrude_scale)}),collisionCircle:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_inv_matrix:new a.aJ(ue,w.u_inv_matrix),u_camera_to_center_distance:new a.aI(ue,w.u_camera_to_center_distance),u_viewport_size:new a.aO(ue,w.u_viewport_size)}),debug:(ue,w)=>({u_color:new a.aL(ue,w.u_color),u_matrix:new a.aJ(ue,w.u_matrix),u_overlay:new a.aH(ue,w.u_overlay),u_overlay_scale:new a.aI(ue,w.u_overlay_scale)}),clippingMask:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix)}),heatmap:(ue,w)=>({u_extrude_scale:new a.aI(ue,w.u_extrude_scale),u_intensity:new a.aI(ue,w.u_intensity),u_matrix:new a.aJ(ue,w.u_matrix)}),heatmapTexture:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_world:new a.aO(ue,w.u_world),u_image:new a.aH(ue,w.u_image),u_color_ramp:new a.aH(ue,w.u_color_ramp),u_opacity:new a.aI(ue,w.u_opacity)}),hillshade:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_image:new a.aH(ue,w.u_image),u_latrange:new a.aO(ue,w.u_latrange),u_light:new a.aO(ue,w.u_light),u_shadow:new a.aL(ue,w.u_shadow),u_highlight:new a.aL(ue,w.u_highlight),u_accent:new a.aL(ue,w.u_accent)}),hillshadePrepare:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_image:new a.aH(ue,w.u_image),u_dimension:new a.aO(ue,w.u_dimension),u_zoom:new a.aI(ue,w.u_zoom),u_unpack:new a.aK(ue,w.u_unpack)}),line:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_ratio:new a.aI(ue,w.u_ratio),u_device_pixel_ratio:new a.aI(ue,w.u_device_pixel_ratio),u_units_to_pixels:new a.aO(ue,w.u_units_to_pixels)}),lineGradient:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_ratio:new a.aI(ue,w.u_ratio),u_device_pixel_ratio:new a.aI(ue,w.u_device_pixel_ratio),u_units_to_pixels:new a.aO(ue,w.u_units_to_pixels),u_image:new a.aH(ue,w.u_image),u_image_height:new a.aI(ue,w.u_image_height)}),linePattern:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_texsize:new a.aO(ue,w.u_texsize),u_ratio:new a.aI(ue,w.u_ratio),u_device_pixel_ratio:new a.aI(ue,w.u_device_pixel_ratio),u_image:new a.aH(ue,w.u_image),u_units_to_pixels:new a.aO(ue,w.u_units_to_pixels),u_scale:new a.aN(ue,w.u_scale),u_fade:new a.aI(ue,w.u_fade)}),lineSDF:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_ratio:new a.aI(ue,w.u_ratio),u_device_pixel_ratio:new a.aI(ue,w.u_device_pixel_ratio),u_units_to_pixels:new a.aO(ue,w.u_units_to_pixels),u_patternscale_a:new a.aO(ue,w.u_patternscale_a),u_patternscale_b:new a.aO(ue,w.u_patternscale_b),u_sdfgamma:new a.aI(ue,w.u_sdfgamma),u_image:new a.aH(ue,w.u_image),u_tex_y_a:new a.aI(ue,w.u_tex_y_a),u_tex_y_b:new a.aI(ue,w.u_tex_y_b),u_mix:new a.aI(ue,w.u_mix)}),raster:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_tl_parent:new a.aO(ue,w.u_tl_parent),u_scale_parent:new a.aI(ue,w.u_scale_parent),u_buffer_scale:new a.aI(ue,w.u_buffer_scale),u_fade_t:new a.aI(ue,w.u_fade_t),u_opacity:new a.aI(ue,w.u_opacity),u_image0:new a.aH(ue,w.u_image0),u_image1:new a.aH(ue,w.u_image1),u_brightness_low:new a.aI(ue,w.u_brightness_low),u_brightness_high:new a.aI(ue,w.u_brightness_high),u_saturation_factor:new a.aI(ue,w.u_saturation_factor),u_contrast_factor:new a.aI(ue,w.u_contrast_factor),u_spin_weights:new a.aN(ue,w.u_spin_weights)}),symbolIcon:(ue,w)=>({u_is_size_zoom_constant:new a.aH(ue,w.u_is_size_zoom_constant),u_is_size_feature_constant:new a.aH(ue,w.u_is_size_feature_constant),u_size_t:new a.aI(ue,w.u_size_t),u_size:new a.aI(ue,w.u_size),u_camera_to_center_distance:new a.aI(ue,w.u_camera_to_center_distance),u_pitch:new a.aI(ue,w.u_pitch),u_rotate_symbol:new a.aH(ue,w.u_rotate_symbol),u_aspect_ratio:new a.aI(ue,w.u_aspect_ratio),u_fade_change:new a.aI(ue,w.u_fade_change),u_matrix:new a.aJ(ue,w.u_matrix),u_label_plane_matrix:new a.aJ(ue,w.u_label_plane_matrix),u_coord_matrix:new a.aJ(ue,w.u_coord_matrix),u_is_text:new a.aH(ue,w.u_is_text),u_pitch_with_map:new a.aH(ue,w.u_pitch_with_map),u_is_along_line:new a.aH(ue,w.u_is_along_line),u_is_variable_anchor:new a.aH(ue,w.u_is_variable_anchor),u_texsize:new a.aO(ue,w.u_texsize),u_texture:new a.aH(ue,w.u_texture),u_translation:new a.aO(ue,w.u_translation),u_pitched_scale:new a.aI(ue,w.u_pitched_scale)}),symbolSDF:(ue,w)=>({u_is_size_zoom_constant:new a.aH(ue,w.u_is_size_zoom_constant),u_is_size_feature_constant:new a.aH(ue,w.u_is_size_feature_constant),u_size_t:new a.aI(ue,w.u_size_t),u_size:new a.aI(ue,w.u_size),u_camera_to_center_distance:new a.aI(ue,w.u_camera_to_center_distance),u_pitch:new a.aI(ue,w.u_pitch),u_rotate_symbol:new a.aH(ue,w.u_rotate_symbol),u_aspect_ratio:new a.aI(ue,w.u_aspect_ratio),u_fade_change:new a.aI(ue,w.u_fade_change),u_matrix:new a.aJ(ue,w.u_matrix),u_label_plane_matrix:new a.aJ(ue,w.u_label_plane_matrix),u_coord_matrix:new a.aJ(ue,w.u_coord_matrix),u_is_text:new a.aH(ue,w.u_is_text),u_pitch_with_map:new a.aH(ue,w.u_pitch_with_map),u_is_along_line:new a.aH(ue,w.u_is_along_line),u_is_variable_anchor:new a.aH(ue,w.u_is_variable_anchor),u_texsize:new a.aO(ue,w.u_texsize),u_texture:new a.aH(ue,w.u_texture),u_gamma_scale:new a.aI(ue,w.u_gamma_scale),u_device_pixel_ratio:new a.aI(ue,w.u_device_pixel_ratio),u_is_halo:new a.aH(ue,w.u_is_halo),u_translation:new a.aO(ue,w.u_translation),u_pitched_scale:new a.aI(ue,w.u_pitched_scale)}),symbolTextAndIcon:(ue,w)=>({u_is_size_zoom_constant:new a.aH(ue,w.u_is_size_zoom_constant),u_is_size_feature_constant:new a.aH(ue,w.u_is_size_feature_constant),u_size_t:new a.aI(ue,w.u_size_t),u_size:new a.aI(ue,w.u_size),u_camera_to_center_distance:new a.aI(ue,w.u_camera_to_center_distance),u_pitch:new a.aI(ue,w.u_pitch),u_rotate_symbol:new a.aH(ue,w.u_rotate_symbol),u_aspect_ratio:new a.aI(ue,w.u_aspect_ratio),u_fade_change:new a.aI(ue,w.u_fade_change),u_matrix:new a.aJ(ue,w.u_matrix),u_label_plane_matrix:new a.aJ(ue,w.u_label_plane_matrix),u_coord_matrix:new a.aJ(ue,w.u_coord_matrix),u_is_text:new a.aH(ue,w.u_is_text),u_pitch_with_map:new a.aH(ue,w.u_pitch_with_map),u_is_along_line:new a.aH(ue,w.u_is_along_line),u_is_variable_anchor:new a.aH(ue,w.u_is_variable_anchor),u_texsize:new a.aO(ue,w.u_texsize),u_texsize_icon:new a.aO(ue,w.u_texsize_icon),u_texture:new a.aH(ue,w.u_texture),u_texture_icon:new a.aH(ue,w.u_texture_icon),u_gamma_scale:new a.aI(ue,w.u_gamma_scale),u_device_pixel_ratio:new a.aI(ue,w.u_device_pixel_ratio),u_is_halo:new a.aH(ue,w.u_is_halo),u_translation:new a.aO(ue,w.u_translation),u_pitched_scale:new a.aI(ue,w.u_pitched_scale)}),background:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_opacity:new a.aI(ue,w.u_opacity),u_color:new a.aL(ue,w.u_color)}),backgroundPattern:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_opacity:new a.aI(ue,w.u_opacity),u_image:new a.aH(ue,w.u_image),u_pattern_tl_a:new a.aO(ue,w.u_pattern_tl_a),u_pattern_br_a:new a.aO(ue,w.u_pattern_br_a),u_pattern_tl_b:new a.aO(ue,w.u_pattern_tl_b),u_pattern_br_b:new a.aO(ue,w.u_pattern_br_b),u_texsize:new a.aO(ue,w.u_texsize),u_mix:new a.aI(ue,w.u_mix),u_pattern_size_a:new a.aO(ue,w.u_pattern_size_a),u_pattern_size_b:new a.aO(ue,w.u_pattern_size_b),u_scale_a:new a.aI(ue,w.u_scale_a),u_scale_b:new a.aI(ue,w.u_scale_b),u_pixel_coord_upper:new a.aO(ue,w.u_pixel_coord_upper),u_pixel_coord_lower:new a.aO(ue,w.u_pixel_coord_lower),u_tile_units_to_pixels:new a.aI(ue,w.u_tile_units_to_pixels)}),terrain:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_texture:new a.aH(ue,w.u_texture),u_ele_delta:new a.aI(ue,w.u_ele_delta),u_fog_matrix:new a.aJ(ue,w.u_fog_matrix),u_fog_color:new a.aL(ue,w.u_fog_color),u_fog_ground_blend:new a.aI(ue,w.u_fog_ground_blend),u_fog_ground_blend_opacity:new a.aI(ue,w.u_fog_ground_blend_opacity),u_horizon_color:new a.aL(ue,w.u_horizon_color),u_horizon_fog_blend:new a.aI(ue,w.u_horizon_fog_blend)}),terrainDepth:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_ele_delta:new a.aI(ue,w.u_ele_delta)}),terrainCoords:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_texture:new a.aH(ue,w.u_texture),u_terrain_coords_id:new a.aI(ue,w.u_terrain_coords_id),u_ele_delta:new a.aI(ue,w.u_ele_delta)}),sky:(ue,w)=>({u_sky_color:new a.aL(ue,w.u_sky_color),u_horizon_color:new a.aL(ue,w.u_horizon_color),u_horizon:new a.aI(ue,w.u_horizon),u_sky_horizon_blend:new a.aI(ue,w.u_sky_horizon_blend)})};class ws{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 Fn={Int8:"BYTE",Uint8:"UNSIGNED_BYTE",Int16:"SHORT",Uint16:"UNSIGNED_SHORT",Int32:"INT",Uint32:"UNSIGNED_INT",Float32:"FLOAT"};class _a{constructor(w,B,Q,ee){this.length=B.length,this.attributes=Q,this.itemSize=B.bytesPerElement,this.dynamicDraw=ee,this.context=w;let le=w.gl;this.buffer=le.createBuffer(),w.bindVertexBuffer.set(this.buffer),le.bufferData(le.ARRAY_BUFFER,B.arrayBuffer,this.dynamicDraw?le.DYNAMIC_DRAW:le.STATIC_DRAW),this.dynamicDraw||delete B.arrayBuffer}bind(){this.context.bindVertexBuffer.set(this.buffer)}updateData(w){if(w.length!==this.length)throw new Error(`Length of new data is ${w.length}, which doesn't match current length of ${this.length}`);let B=this.context.gl;this.bind(),B.bufferSubData(B.ARRAY_BUFFER,0,w.arrayBuffer)}enableAttributes(w,B){for(let Q=0;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 le=this.attributes[ee],qe=B.attributes[le.name];qe!==void 0&&w.vertexAttribPointer(qe,le.components,w[Fn[le.type]],!1,this.itemSize,le.offset+this.itemSize*(Q||0))}}destroy(){this.buffer&&(this.context.gl.deleteBuffer(this.buffer),delete this.buffer)}}let Vu=new WeakMap;function zl(ue){var w;if(Vu.has(ue))return Vu.get(ue);{let B=(w=ue.getParameter(ue.VERSION))===null||w===void 0?void 0:w.startsWith("WebGL 2.0");return Vu.set(ue,B),B}}class xo{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 Yl extends xo{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 Us extends xo{getDefault(){return 1}set(w){(w!==this.current||this.dirty)&&(this.gl.clearDepth(w),this.current=w,this.dirty=!1)}}class Hl extends xo{getDefault(){return 0}set(w){(w!==this.current||this.dirty)&&(this.gl.clearStencil(w),this.current=w,this.dirty=!1)}}class ac extends xo{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 aa extends xo{getDefault(){return!0}set(w){(w!==this.current||this.dirty)&&(this.gl.depthMask(w),this.current=w,this.dirty=!1)}}class Oo extends xo{getDefault(){return 255}set(w){(w!==this.current||this.dirty)&&(this.gl.stencilMask(w),this.current=w,this.dirty=!1)}}class qo extends xo{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 Ol extends xo{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 Pc extends xo{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 Do extends xo{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 rf extends xo{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 Uf extends xo{getDefault(){return this.gl.LESS}set(w){(w!==this.current||this.dirty)&&(this.gl.depthFunc(w),this.current=w,this.dirty=!1)}}class ml extends xo{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 Zc extends xo{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 Kl extends xo{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 qs extends xo{getDefault(){return this.gl.FUNC_ADD}set(w){(w!==this.current||this.dirty)&&(this.gl.blendEquation(w),this.current=w,this.dirty=!1)}}class yu extends xo{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 oc extends xo{getDefault(){return this.gl.BACK}set(w){(w!==this.current||this.dirty)&&(this.gl.cullFace(w),this.current=w,this.dirty=!1)}}class Cf extends xo{getDefault(){return this.gl.CCW}set(w){(w!==this.current||this.dirty)&&(this.gl.frontFace(w),this.current=w,this.dirty=!1)}}class sc extends xo{getDefault(){return null}set(w){(w!==this.current||this.dirty)&&(this.gl.useProgram(w),this.current=w,this.dirty=!1)}}class Nh extends xo{getDefault(){return this.gl.TEXTURE0}set(w){(w!==this.current||this.dirty)&&(this.gl.activeTexture(w),this.current=w,this.dirty=!1)}}class kf extends xo{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 fs extends xo{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 nf extends xo{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 Vf extends xo{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 Jl extends xo{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 hl extends xo{getDefault(){return null}set(w){let B=this.gl;B.bindBuffer(B.ELEMENT_ARRAY_BUFFER,w),this.current=w,this.dirty=!1}}class lc extends xo{getDefault(){return null}set(w){var B;if(w===this.current&&!this.dirty)return;let Q=this.gl;zl(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 Fu extends xo{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 Cs extends xo{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 js extends xo{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 Go extends xo{constructor(w,B){super(w),this.context=w,this.parent=B}getDefault(){return null}}class gs extends Go{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 uc extends Go{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 xl extends Go{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 Gu{constructor(w,B,Q,ee,le){this.context=w,this.width=B,this.height=Q;let qe=w.gl,Xe=this.framebuffer=qe.createFramebuffer();if(this.colorAttachment=new gs(w,Xe),ee)this.depthAttachment=le?new xl(w,Xe):new uc(w,Xe);else if(le)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 Bs{constructor(w,B,Q){this.blendFunction=w,this.blendColor=B,this.mask=Q}}Bs.Replace=[1,0],Bs.disabled=new Bs(Bs.Replace,a.aM.transparent,[!1,!1,!1,!1]),Bs.unblended=new Bs(Bs.Replace,a.aM.transparent,[!0,!0,!0,!0]),Bs.alphaBlended=new Bs([1,771],a.aM.transparent,[!0,!0,!0,!0]);class ad{constructor(w){var B,Q;if(this.gl=w,this.clearColor=new Yl(this),this.clearDepth=new Us(this),this.clearStencil=new Hl(this),this.colorMask=new ac(this),this.depthMask=new aa(this),this.stencilMask=new Oo(this),this.stencilFunc=new qo(this),this.stencilOp=new Ol(this),this.stencilTest=new Pc(this),this.depthRange=new Do(this),this.depthTest=new rf(this),this.depthFunc=new Uf(this),this.blend=new ml(this),this.blendFunc=new Zc(this),this.blendColor=new Kl(this),this.blendEquation=new qs(this),this.cullFace=new yu(this),this.cullFaceSide=new oc(this),this.frontFace=new Cf(this),this.program=new sc(this),this.activeTexture=new Nh(this),this.viewport=new kf(this),this.bindFramebuffer=new fs(this),this.bindRenderbuffer=new nf(this),this.bindTexture=new Vf(this),this.bindVertexBuffer=new Jl(this),this.bindElementBuffer=new hl(this),this.bindVertexArray=new lc(this),this.pixelStoreUnpack=new Fu(this),this.pixelStoreUnpackPremultiplyAlpha=new Cs(this),this.pixelStoreUnpackFlipY=new js(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),zl(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 ws(this,w,B)}createVertexBuffer(w,B,Q){return new _a(this,w,B,Q)}createRenderbuffer(w,B,Q){let ee=this.gl,le=ee.createRenderbuffer();return this.bindRenderbuffer.set(le),ee.renderbufferStorage(ee.RENDERBUFFER,w,B,Q),this.bindRenderbuffer.set(null),le}createFramebuffer(w,B,Q,ee){return new Gu(this,w,B,Q,ee)}clear({color:w,depth:B,stencil:Q}){let ee=this.gl,le=0;w&&(le|=ee.COLOR_BUFFER_BIT,this.clearColor.set(w),this.colorMask.set([!0,!0,!0,!0])),B!==void 0&&(le|=ee.DEPTH_BUFFER_BIT,this.depthRange.set([0,1]),this.clearDepth.set(B),this.depthMask.set(!0)),Q!==void 0&&(le|=ee.STENCIL_BUFFER_BIT,this.clearStencil.set(Q),this.stencilMask.set(255)),ee.clear(le)}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,Bs.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 zl(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 zl(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 Po{constructor(w,B,Q){this.func=w,this.mask=B,this.range=Q}}Po.ReadOnly=!1,Po.ReadWrite=!0,Po.disabled=new Po(519,Po.ReadOnly,[0,1]);let od=7680;class Yo{constructor(w,B,Q,ee,le,qe){this.test=w,this.ref=B,this.mask=Q,this.fail=ee,this.depthFail=le,this.pass=qe}}Yo.disabled=new Yo({func:519,mask:0},0,0,od,od,od);class Pa{constructor(w,B,Q){this.enable=w,this.mode=B,this.frontFace=Q}}let af;function Hu(ue,w,B,Q,ee){let le=ue.context,qe=le.gl,Xe=ue.useProgram("collisionBox"),ot=[],Tt=0,Kt=0;for(let Be=0;Be<Q.length;Be++){let tt=Q[Be],We=w.getTile(tt).getBucket(B);if(!We)continue;let it=ee?We.textCollisionBox:We.iconCollisionBox,Dt=We.collisionCircleArray;if(Dt.length>0){let Ht=a.H();a.aQ(Ht,We.placementInvProjMatrix,ue.transform.glCoordMatrix),a.aQ(Ht,Ht,We.placementViewportMatrix),ot.push({circleArray:Dt,circleOffset:Kt,transform:tt.posMatrix,invTransform:Ht,coord:tt}),Tt+=Dt.length/4,Kt=Tt}it&&Xe.draw(le,qe.LINES,Po.disabled,Yo.disabled,ue.colorModeForRenderPass(),Pa.disabled,{u_matrix:tt.posMatrix,u_pixel_extrude_scale:[1/(Jt=ue.transform).width,1/Jt.height]},ue.style.map.terrain&&ue.style.map.terrain.getTerrainData(tt),B.id,it.layoutVertexBuffer,it.indexBuffer,it.segments,null,ue.transform.zoom,null,null,it.collisionVertexBuffer)}var Jt;if(!ee||!ot.length)return;let xr=ue.useProgram("collisionCircle"),Pr=new a.aR;Pr.resize(4*Tt),Pr._trim();let ve=0;for(let Be of ot)for(let tt=0;tt<Be.circleArray.length/4;tt++){let We=4*tt,it=Be.circleArray[We+0],Dt=Be.circleArray[We+1],Ht=Be.circleArray[We+2],rr=Be.circleArray[We+3];Pr.emplace(ve++,it,Dt,Ht,rr,0),Pr.emplace(ve++,it,Dt,Ht,rr,1),Pr.emplace(ve++,it,Dt,Ht,rr,2),Pr.emplace(ve++,it,Dt,Ht,rr,3)}(!af||af.length<2*Tt)&&(af=function(Be){let tt=2*Be,We=new a.aT;We.resize(tt),We._trim();for(let it=0;it<tt;it++){let Dt=6*it;We.uint16[Dt+0]=4*it+0,We.uint16[Dt+1]=4*it+1,We.uint16[Dt+2]=4*it+2,We.uint16[Dt+3]=4*it+2,We.uint16[Dt+4]=4*it+3,We.uint16[Dt+5]=4*it+0}return We}(Tt));let be=le.createIndexBuffer(af,!0),Re=le.createVertexBuffer(Pr,a.aS.members,!0);for(let Be of ot){let tt=No(Be.transform,Be.invTransform,ue.transform);xr.draw(le,qe.TRIANGLES,Po.disabled,Yo.disabled,ue.colorModeForRenderPass(),Pa.disabled,tt,ue.style.map.terrain&&ue.style.map.terrain.getTerrainData(Be.coord),B.id,Re,be,a.a0.simpleSegment(0,2*Be.circleOffset,Be.circleArray.length,Be.circleArray.length/2),null,ue.transform.zoom,null,null,null)}Re.destroy(),be.destroy()}Pa.disabled=new Pa(!1,1029,2305),Pa.backCCW=new Pa(!0,1029,2305);let bl=a.an(new Float32Array(16));function Gf(ue,w,B,Q,ee,le){let{horizontalAlign:qe,verticalAlign:Xe}=a.au(ue);return new a.P((-(qe-.5)*w/ee+Q[0])*le,(-(Xe-.5)*B/ee+Q[1])*le)}function Ic(ue,w,B,Q,ee,le){let qe=w.tileAnchorPoint.add(new a.P(w.translation[0],w.translation[1]));if(w.pitchWithMap){let Xe=Q.mult(le);B||(Xe=Xe.rotate(-ee));let ot=qe.add(Xe);return dt(ot.x,ot.y,w.labelPlaneMatrix,w.getElevation).point}if(B){let Xe=vt(w.tileAnchorPoint.x+1,w.tileAnchorPoint.y,w).point.sub(ue),ot=Math.atan(Xe.y/Xe.x)+(Xe.x<0?Math.PI:0);return ue.add(Q.rotate(ot))}return ue.add(Q)}function mf(ue,w,B,Q,ee,le,qe,Xe,ot,Tt,Kt,Jt,xr,Pr){let ve=ue.text.placedSymbolArray,be=ue.text.dynamicLayoutVertexArray,Re=ue.icon.dynamicLayoutVertexArray,Be={};be.clear();for(let tt=0;tt<ve.length;tt++){let We=ve.get(tt),it=We.hidden||!We.crossTileID||ue.allowVerticalPlacement&&!We.placedOrientation?null:Q[We.crossTileID];if(it){let Dt=new a.P(We.anchorX,We.anchorY),Ht={getElevation:Pr,width:ee.width,height:ee.height,labelPlaneMatrix:le,lineVertexArray:null,pitchWithMap:B,projection:Kt,projectionCache:null,tileAnchorPoint:Dt,translation:Jt,unwrappedTileID:xr},rr=B?dt(Dt.x,Dt.y,qe,Pr):vt(Dt.x,Dt.y,Ht),dr=Ge(ee.cameraToCenterDistance,rr.signedDistanceFromCamera),Sr=a.ai(ue.textSizeData,ot,We)*dr/a.ap;B&&(Sr*=ue.tilePixelRatio/Xe);let{width:Or,height:jr,anchor:ii,textOffset:Li,textBoxScale:un}=it,sn=Gf(ii,Or,jr,Li,un,Sr),In=Kt.getPitchedTextCorrection(ee,Dt.add(new a.P(Jt[0],Jt[1])),xr),Kn=Ic(rr.point,Ht,w,sn,ee.angle,In),Aa=ue.allowVerticalPlacement&&We.placedOrientation===a.ah.vertical?Math.PI/2:0;for(let fa=0;fa<We.numGlyphs;fa++)a.aj(be,Kn,Aa);Tt&&We.associatedIconIndex>=0&&(Be[We.associatedIconIndex]={shiftedAnchor:Kn,angle:Aa})}else di(We.numGlyphs,be)}if(Tt){Re.clear();let tt=ue.icon.placedSymbolArray;for(let We=0;We<tt.length;We++){let it=tt.get(We);if(it.hidden)di(it.numGlyphs,Re);else{let Dt=Be[We];if(Dt)for(let Ht=0;Ht<it.numGlyphs;Ht++)a.aj(Re,Dt.shiftedAnchor,Dt.angle);else di(it.numGlyphs,Re)}}ue.icon.dynamicLayoutVertexBuffer.updateData(Re)}ue.text.dynamicLayoutVertexBuffer.updateData(be)}function ql(ue,w,B){return B.iconsInText&&w?"symbolTextAndIcon":ue?"symbolSDF":"symbolIcon"}function _h(ue,w,B,Q,ee,le,qe,Xe,ot,Tt,Kt,Jt){let xr=ue.context,Pr=xr.gl,ve=ue.transform,be=yn(),Re=Xe==="map",Be=ot==="map",tt=Xe!=="viewport"&&B.layout.get("symbol-placement")!=="point",We=Re&&!Be&&!tt,it=!Be&&tt,Dt=!B.layout.get("symbol-sort-key").isConstant(),Ht=!1,rr=ue.depthModeForSublayer(0,Po.ReadOnly),dr=B._unevaluatedLayout.hasValue("text-variable-anchor")||B._unevaluatedLayout.hasValue("text-variable-anchor-offset"),Sr=[],Or=be.getCircleRadiusCorrection(ve);for(let jr of Q){let ii=w.getTile(jr),Li=ii.getBucket(B);if(!Li)continue;let un=ee?Li.text:Li.icon;if(!un||!un.segments.get().length||!un.hasVisibleVertices)continue;let sn=un.programConfigurations.get(B.id),In=ee||Li.sdfIcons,Kn=ee?Li.textSizeData:Li.iconSizeData,Aa=Be||ve.pitch!==0,fa=ue.useProgram(ql(In,ee,Li),sn),$a=a.ag(Kn,ve.zoom),ko=ue.style.map.terrain&&ue.style.map.terrain.getTerrainData(jr),Qa,mo,Bo,Is,As=[0,0],wo=null;if(ee)mo=ii.glyphAtlasTexture,Bo=Pr.LINEAR,Qa=ii.glyphAtlasTexture.size,Li.iconsInText&&(As=ii.imageAtlasTexture.size,wo=ii.imageAtlasTexture,Is=Aa||ue.options.rotating||ue.options.zooming||Kn.kind==="composite"||Kn.kind==="camera"?Pr.LINEAR:Pr.NEAREST);else{let Ye=B.layout.get("icon-size").constantOr(0)!==1||Li.iconsNeedLinear;mo=ii.imageAtlasTexture,Bo=In||ue.options.rotating||ue.options.zooming||Ye||Aa?Pr.LINEAR:Pr.NEAREST,Qa=ii.imageAtlasTexture.size}let To=Pn(ii,1,ue.transform.zoom),dl=it?jr.posMatrix:bl,Nl=Wr(dl,Be,Re,ue.transform,To),Lu=Ur(dl,Be,Re,ue.transform,To),ou=Ur(jr.posMatrix,Be,Re,ue.transform,To),$s=be.translatePosition(ue.transform,ii,le,qe),Ql=dr&&Li.hasTextData(),dc=B.layout.get("icon-text-fit")!=="none"&&Ql&&Li.hasIconData();if(tt){let Ye=ue.style.map.terrain?(nt,jt)=>ue.style.map.terrain.getElevation(jr,nt,jt):null,Ct=B.layout.get("text-rotation-alignment")==="map";je(Li,jr.posMatrix,ue,ee,Nl,ou,Be,Tt,Ct,be,jr.toUnwrapped(),ve.width,ve.height,$s,Ye)}let Tl=jr.posMatrix,Al=ee&&dr||dc,X=tt||Al?bl:Nl,se=Lu,Te=In&&B.paint.get(ee?"text-halo-width":"icon-halo-width").constantOr(1)!==0,Ne;Ne=In?Li.iconsInText?us(Kn.kind,$a,We,Be,tt,Al,ue,Tl,X,se,$s,Qa,As,Or):Io(Kn.kind,$a,We,Be,tt,Al,ue,Tl,X,se,$s,ee,Qa,!0,Or):Os(Kn.kind,$a,We,Be,tt,Al,ue,Tl,X,se,$s,ee,Qa,Or);let He={program:fa,buffers:un,uniformValues:Ne,atlasTexture:mo,atlasTextureIcon:wo,atlasInterpolation:Bo,atlasInterpolationIcon:Is,isSDF:In,hasHalo:Te};if(Dt&&Li.canOverlap){Ht=!0;let Ye=un.segments.get();for(let Ct of Ye)Sr.push({segments:new a.a0([Ct]),sortKey:Ct.sortKey,state:He,terrainData:ko})}else Sr.push({segments:un.segments,sortKey:0,state:He,terrainData:ko})}Ht&&Sr.sort((jr,ii)=>jr.sortKey-ii.sortKey);for(let jr of Sr){let ii=jr.state;if(xr.activeTexture.set(Pr.TEXTURE0),ii.atlasTexture.bind(ii.atlasInterpolation,Pr.CLAMP_TO_EDGE),ii.atlasTextureIcon&&(xr.activeTexture.set(Pr.TEXTURE1),ii.atlasTextureIcon&&ii.atlasTextureIcon.bind(ii.atlasInterpolationIcon,Pr.CLAMP_TO_EDGE)),ii.isSDF){let Li=ii.uniformValues;ii.hasHalo&&(Li.u_is_halo=1,Qf(ii.buffers,jr.segments,B,ue,ii.program,rr,Kt,Jt,Li,jr.terrainData)),Li.u_is_halo=0}Qf(ii.buffers,jr.segments,B,ue,ii.program,rr,Kt,Jt,ii.uniformValues,jr.terrainData)}}function Qf(ue,w,B,Q,ee,le,qe,Xe,ot,Tt){let Kt=Q.context;ee.draw(Kt,Kt.gl.TRIANGLES,le,qe,Xe,Pa.disabled,ot,Tt,B.id,ue.layoutVertexBuffer,ue.indexBuffer,w,B.paint,Q.transform.zoom,ue.programConfigurations.get(B.id),ue.dynamicLayoutVertexBuffer,ue.opacityVertexBuffer)}function yf(ue,w,B,Q){let ee=ue.context,le=ee.gl,qe=Yo.disabled,Xe=new Bs([le.ONE,le.ONE],a.aM.transparent,[!0,!0,!0,!0]),ot=w.getBucket(B);if(!ot)return;let Tt=Q.key,Kt=B.heatmapFbos.get(Tt);Kt||(Kt=eh(ee,w.tileSize,w.tileSize),B.heatmapFbos.set(Tt,Kt)),ee.bindFramebuffer.set(Kt.framebuffer),ee.viewport.set([0,0,w.tileSize,w.tileSize]),ee.clear({color:a.aM.transparent});let Jt=ot.programConfigurations.get(B.id),xr=ue.useProgram("heatmap",Jt),Pr=ue.style.map.terrain.getTerrainData(Q);xr.draw(ee,le.TRIANGLES,Po.disabled,qe,Xe,Pa.disabled,Co(Q.posMatrix,w,ue.transform.zoom,B.paint.get("heatmap-intensity")),Pr,B.id,ot.layoutVertexBuffer,ot.indexBuffer,ot.segments,B.paint,ue.transform.zoom,Jt)}function Yc(ue,w,B){let Q=ue.context,ee=Q.gl;Q.setColorMode(ue.colorModeForRenderPass());let le=th(Q,w),qe=B.key,Xe=w.heatmapFbos.get(qe);Xe&&(Q.activeTexture.set(ee.TEXTURE0),ee.bindTexture(ee.TEXTURE_2D,Xe.colorAttachment.get()),Q.activeTexture.set(ee.TEXTURE1),le.bind(ee.LINEAR,ee.CLAMP_TO_EDGE),ue.useProgram("heatmapTexture").draw(Q,ee.TRIANGLES,Po.disabled,Yo.disabled,ue.colorModeForRenderPass(),Pa.disabled,Fs(ue,w,0,1),null,w.id,ue.rasterBoundsBuffer,ue.quadTriangleIndexBuffer,ue.rasterBoundsSegments,w.paint,ue.transform.zoom),Xe.destroy(),w.heatmapFbos.delete(qe))}function eh(ue,w,B){var Q,ee;let le=ue.gl,qe=le.createTexture();le.bindTexture(le.TEXTURE_2D,qe),le.texParameteri(le.TEXTURE_2D,le.TEXTURE_WRAP_S,le.CLAMP_TO_EDGE),le.texParameteri(le.TEXTURE_2D,le.TEXTURE_WRAP_T,le.CLAMP_TO_EDGE),le.texParameteri(le.TEXTURE_2D,le.TEXTURE_MIN_FILTER,le.LINEAR),le.texParameteri(le.TEXTURE_2D,le.TEXTURE_MAG_FILTER,le.LINEAR);let Xe=(Q=ue.HALF_FLOAT)!==null&&Q!==void 0?Q:le.UNSIGNED_BYTE,ot=(ee=ue.RGBA16F)!==null&&ee!==void 0?ee:le.RGBA;le.texImage2D(le.TEXTURE_2D,0,ot,w,B,0,le.RGBA,Xe,null);let Tt=ue.createFramebuffer(w,B,!1,!1);return Tt.colorAttachment.set(qe),Tt}function th(ue,w){return w.colorRampTexture||(w.colorRampTexture=new g(ue,w.colorRamp,ue.gl.RGBA)),w.colorRampTexture}function ju(ue,w,B,Q,ee){if(!B||!Q||!Q.imageAtlas)return;let le=Q.imageAtlas.patternPositions,qe=le[B.to.toString()],Xe=le[B.from.toString()];if(!qe&&Xe&&(qe=Xe),!Xe&&qe&&(Xe=qe),!qe||!Xe){let ot=ee.getPaintProperty(w);qe=le[ot],Xe=le[ot]}qe&&Xe&&ue.setConstantPatternPositions(qe,Xe)}function Hf(ue,w,B,Q,ee,le,qe){let Xe=ue.context.gl,ot="fill-pattern",Tt=B.paint.get(ot),Kt=Tt&&Tt.constantOr(1),Jt=B.getCrossfadeParameters(),xr,Pr,ve,be,Re;qe?(Pr=Kt&&!B.getPaintProperty("fill-outline-color")?"fillOutlinePattern":"fillOutline",xr=Xe.LINES):(Pr=Kt?"fillPattern":"fill",xr=Xe.TRIANGLES);let Be=Tt.constantOr(null);for(let tt of Q){let We=w.getTile(tt);if(Kt&&!We.patternsLoaded())continue;let it=We.getBucket(B);if(!it)continue;let Dt=it.programConfigurations.get(B.id),Ht=ue.useProgram(Pr,Dt),rr=ue.style.map.terrain&&ue.style.map.terrain.getTerrainData(tt);Kt&&(ue.context.activeTexture.set(Xe.TEXTURE0),We.imageAtlasTexture.bind(Xe.LINEAR,Xe.CLAMP_TO_EDGE),Dt.updatePaintBuffers(Jt)),ju(Dt,ot,Be,We,B);let dr=rr?tt:null,Sr=ue.translatePosMatrix(dr?dr.posMatrix:tt.posMatrix,We,B.paint.get("fill-translate"),B.paint.get("fill-translate-anchor"));if(qe){be=it.indexBuffer2,Re=it.segments2;let Or=[Xe.drawingBufferWidth,Xe.drawingBufferHeight];ve=Pr==="fillOutlinePattern"&&Kt?Ma(Sr,ue,Jt,We,Or):Jn(Sr,Or)}else be=it.indexBuffer,Re=it.segments,ve=Kt?ya(Sr,ue,Jt,We):_n(Sr);Ht.draw(ue.context,xr,ee,ue.stencilModeForClipping(tt),le,Pa.disabled,ve,rr,B.id,it.layoutVertexBuffer,be,Re,B.paint,ue.transform.zoom,Dt)}}function cc(ue,w,B,Q,ee,le,qe){let Xe=ue.context,ot=Xe.gl,Tt="fill-extrusion-pattern",Kt=B.paint.get(Tt),Jt=Kt.constantOr(1),xr=B.getCrossfadeParameters(),Pr=B.paint.get("fill-extrusion-opacity"),ve=Kt.constantOr(null);for(let be of Q){let Re=w.getTile(be),Be=Re.getBucket(B);if(!Be)continue;let tt=ue.style.map.terrain&&ue.style.map.terrain.getTerrainData(be),We=Be.programConfigurations.get(B.id),it=ue.useProgram(Jt?"fillExtrusionPattern":"fillExtrusion",We);Jt&&(ue.context.activeTexture.set(ot.TEXTURE0),Re.imageAtlasTexture.bind(ot.LINEAR,ot.CLAMP_TO_EDGE),We.updatePaintBuffers(xr)),ju(We,Tt,ve,Re,B);let Dt=ue.translatePosMatrix(be.posMatrix,Re,B.paint.get("fill-extrusion-translate"),B.paint.get("fill-extrusion-translate-anchor")),Ht=B.paint.get("fill-extrusion-vertical-gradient"),rr=Jt?ki(Dt,ue,Ht,Pr,be,xr,Re):En(Dt,ue,Ht,Pr);it.draw(Xe,Xe.gl.TRIANGLES,ee,le,qe,Pa.backCCW,rr,tt,B.id,Be.layoutVertexBuffer,Be.indexBuffer,Be.segments,B.paint,ue.transform.zoom,We,ue.style.map.terrain&&Be.centroidVertexBuffer)}}function of(ue,w,B,Q,ee,le,qe){let Xe=ue.context,ot=Xe.gl,Tt=B.fbo;if(!Tt)return;let Kt=ue.useProgram("hillshade"),Jt=ue.style.map.terrain&&ue.style.map.terrain.getTerrainData(w);Xe.activeTexture.set(ot.TEXTURE0),ot.bindTexture(ot.TEXTURE_2D,Tt.colorAttachment.get()),Kt.draw(Xe,ot.TRIANGLES,ee,le,qe,Pa.disabled,((xr,Pr,ve,be)=>{let Re=ve.paint.get("hillshade-shadow-color"),Be=ve.paint.get("hillshade-highlight-color"),tt=ve.paint.get("hillshade-accent-color"),We=ve.paint.get("hillshade-illumination-direction")*(Math.PI/180);ve.paint.get("hillshade-illumination-anchor")==="viewport"&&(We-=xr.transform.angle);let it=!xr.options.moving;return{u_matrix:be?be.posMatrix:xr.transform.calculatePosMatrix(Pr.tileID.toUnwrapped(),it),u_image:0,u_latrange:zs(0,Pr.tileID),u_light:[ve.paint.get("hillshade-exaggeration"),We],u_shadow:Re,u_highlight:Be,u_accent:tt}})(ue,B,Q,Jt?w:null),Jt,Q.id,ue.rasterBoundsBuffer,ue.quadTriangleIndexBuffer,ue.rasterBoundsSegments)}function Bl(ue,w,B,Q,ee,le){let qe=ue.context,Xe=qe.gl,ot=w.dem;if(ot&&ot.data){let Tt=ot.dim,Kt=ot.stride,Jt=ot.getPixels();if(qe.activeTexture.set(Xe.TEXTURE1),qe.pixelStoreUnpackPremultiplyAlpha.set(!1),w.demTexture=w.demTexture||ue.getTileTexture(Kt),w.demTexture){let Pr=w.demTexture;Pr.update(Jt,{premultiply:!1}),Pr.bind(Xe.NEAREST,Xe.CLAMP_TO_EDGE)}else w.demTexture=new g(qe,Jt,Xe.RGBA,{premultiply:!1}),w.demTexture.bind(Xe.NEAREST,Xe.CLAMP_TO_EDGE);qe.activeTexture.set(Xe.TEXTURE0);let xr=w.fbo;if(!xr){let Pr=new g(qe,{width:Tt,height:Tt,data:null},Xe.RGBA);Pr.bind(Xe.LINEAR,Xe.CLAMP_TO_EDGE),xr=w.fbo=qe.createFramebuffer(Tt,Tt,!0,!1),xr.colorAttachment.set(Pr.texture)}qe.bindFramebuffer.set(xr.framebuffer),qe.viewport.set([0,0,Tt,Tt]),ue.useProgram("hillshadePrepare").draw(qe,Xe.TRIANGLES,Q,ee,le,Pa.disabled,((Pr,ve)=>{let be=ve.stride,Re=a.H();return a.aP(Re,0,a.X,-a.X,0,0,1),a.J(Re,Re,[0,-a.X,0]),{u_matrix:Re,u_image:1,u_dimension:[be,be],u_zoom:Pr.overscaledZ,u_unpack:ve.getUnpackVector()}})(w.tileID,ot),null,B.id,ue.rasterBoundsBuffer,ue.quadTriangleIndexBuffer,ue.rasterBoundsSegments),w.needsHillshadePrepare=!1}}function Kc(ue,w,B,Q,ee,le){let qe=Q.paint.get("raster-fade-duration");if(!le&&qe>0){let Xe=u.now(),ot=(Xe-ue.timeAdded)/qe,Tt=w?(Xe-w.timeAdded)/qe:-1,Kt=B.getSource(),Jt=ee.coveringZoomLevel({tileSize:Kt.tileSize,roundZoom:Kt.roundZoom}),xr=!w||Math.abs(w.tileID.overscaledZ-Jt)>Math.abs(ue.tileID.overscaledZ-Jt),Pr=xr&&ue.refreshedUponExpiration?1:a.ac(xr?ot:1-Tt,0,1);return ue.refreshedUponExpiration&&ot>=1&&(ue.refreshedUponExpiration=!1),w?{opacity:1,mix:1-Pr}:{opacity:Pr,mix:0}}return{opacity:1,mix:0}}let Rc=new a.aM(1,0,0,1),ms=new a.aM(0,1,0,1),jf=new a.aM(0,0,1,1),Uh=new a.aM(1,0,1,1),rh=new a.aM(0,1,1,1);function sf(ue,w,B,Q){Mu(ue,0,w+B/2,ue.transform.width,B,Q)}function xh(ue,w,B,Q){Mu(ue,w-B/2,0,B,ue.transform.height,Q)}function Mu(ue,w,B,Q,ee,le){let qe=ue.context,Xe=qe.gl;Xe.enable(Xe.SCISSOR_TEST),Xe.scissor(w*ue.pixelRatio,B*ue.pixelRatio,Q*ue.pixelRatio,ee*ue.pixelRatio),qe.clear({color:le}),Xe.disable(Xe.SCISSOR_TEST)}function ih(ue,w,B){let Q=ue.context,ee=Q.gl,le=B.posMatrix,qe=ue.useProgram("debug"),Xe=Po.disabled,ot=Yo.disabled,Tt=ue.colorModeForRenderPass(),Kt="$debug",Jt=ue.style.map.terrain&&ue.style.map.terrain.getTerrainData(B);Q.activeTexture.set(ee.TEXTURE0);let xr=w.getTileByID(B.key).latestRawTileData,Pr=Math.floor((xr&&xr.byteLength||0)/1024),ve=w.getTile(B).tileSize,be=512/Math.min(ve,512)*(B.overscaledZ/ue.transform.zoom)*.5,Re=B.canonical.toString();B.overscaledZ!==B.canonical.z&&(Re+=` => ${B.overscaledZ}`),function(Be,tt){Be.initDebugOverlayCanvas();let We=Be.debugOverlayCanvas,it=Be.context.gl,Dt=Be.debugOverlayCanvas.getContext("2d");Dt.clearRect(0,0,We.width,We.height),Dt.shadowColor="white",Dt.shadowBlur=2,Dt.lineWidth=1.5,Dt.strokeStyle="white",Dt.textBaseline="top",Dt.font="bold 36px Open Sans, sans-serif",Dt.fillText(tt,5,5),Dt.strokeText(tt,5,5),Be.debugOverlayTexture.update(We),Be.debugOverlayTexture.bind(it.LINEAR,it.CLAMP_TO_EDGE)}(ue,`${Re} ${Pr}kB`),qe.draw(Q,ee.TRIANGLES,Xe,ot,Bs.alphaBlended,Pa.disabled,po(le,a.aM.transparent,be),null,Kt,ue.debugBuffer,ue.quadTriangleIndexBuffer,ue.debugSegments),qe.draw(Q,ee.LINE_STRIP,Xe,ot,Tt,Pa.disabled,po(le,a.aM.red),Jt,Kt,ue.debugBuffer,ue.tileBorderIndexBuffer,ue.debugSegments)}function Ws(ue,w,B){let Q=ue.context,ee=Q.gl,le=ue.colorModeForRenderPass(),qe=new Po(ee.LEQUAL,Po.ReadWrite,ue.depthRangeFor3D),Xe=ue.useProgram("terrain"),ot=w.getTerrainMesh();Q.bindFramebuffer.set(null),Q.viewport.set([0,0,ue.width,ue.height]);for(let Tt of B){let Kt=ue.renderToTexture.getTexture(Tt),Jt=w.getTerrainData(Tt.tileID);Q.activeTexture.set(ee.TEXTURE0),ee.bindTexture(ee.TEXTURE_2D,Kt.texture);let xr=ue.transform.calculatePosMatrix(Tt.tileID.toUnwrapped()),Pr=w.getMeshFrameDelta(ue.transform.zoom),ve=ue.transform.calculateFogMatrix(Tt.tileID.toUnwrapped()),be=Qr(xr,Pr,ve,ue.style.sky,ue.transform.pitch);Xe.draw(Q,ee.TRIANGLES,qe,Yo.disabled,le,Pa.backCCW,be,Jt,"terrain",ot.vertexBuffer,ot.indexBuffer,ot.segments)}}class Eu{constructor(w,B,Q){this.vertexBuffer=w,this.indexBuffer=B,this.segments=Q}destroy(){this.vertexBuffer.destroy(),this.indexBuffer.destroy(),this.segments.destroy(),this.vertexBuffer=null,this.indexBuffer=null,this.segments=null}}class Dc{constructor(w,B){this.context=new ad(w),this.transform=B,this._tileTextures={},this.terrainFacilitator={dirty:!0,matrix:a.an(new Float64Array(16)),renderTime:0},this.setup(),this.numSublayers=yt.maxUnderzooming+yt.maxOverzooming+1,this.depthEpsilon=1/Math.pow(2,16),this.crossTileSymbolIndex=new Wo}resize(w,B,Q){if(this.width=Math.floor(w*Q),this.height=Math.floor(B*Q),this.pixelRatio=Q,this.context.viewport.set([0,0,this.width,this.height]),this.style)for(let ee of this.style._order)this.style._layers[ee].resize()}setup(){let w=this.context,B=new a.aX;B.emplaceBack(0,0),B.emplaceBack(a.X,0),B.emplaceBack(0,a.X),B.emplaceBack(a.X,a.X),this.tileExtentBuffer=w.createVertexBuffer(B,vo.members),this.tileExtentSegments=a.a0.simpleSegment(0,0,4,2);let Q=new a.aX;Q.emplaceBack(0,0),Q.emplaceBack(a.X,0),Q.emplaceBack(0,a.X),Q.emplaceBack(a.X,a.X),this.debugBuffer=w.createVertexBuffer(Q,vo.members),this.debugSegments=a.a0.simpleSegment(0,0,4,5);let ee=new a.$;ee.emplaceBack(0,0,0,0),ee.emplaceBack(a.X,0,a.X,0),ee.emplaceBack(0,a.X,0,a.X),ee.emplaceBack(a.X,a.X,a.X,a.X),this.rasterBoundsBuffer=w.createVertexBuffer(ee,lt.members),this.rasterBoundsSegments=a.a0.simpleSegment(0,0,4,2);let le=new a.aX;le.emplaceBack(0,0),le.emplaceBack(1,0),le.emplaceBack(0,1),le.emplaceBack(1,1),this.viewportBuffer=w.createVertexBuffer(le,vo.members),this.viewportSegments=a.a0.simpleSegment(0,0,4,2);let qe=new a.aZ;qe.emplaceBack(0),qe.emplaceBack(1),qe.emplaceBack(3),qe.emplaceBack(2),qe.emplaceBack(0),this.tileBorderIndexBuffer=w.createIndexBuffer(qe);let Xe=new a.aY;Xe.emplaceBack(0,1,2),Xe.emplaceBack(2,1,3),this.quadTriangleIndexBuffer=w.createIndexBuffer(Xe);let ot=this.context.gl;this.stencilClearMode=new Yo({func:ot.ALWAYS,mask:0},0,255,ot.ZERO,ot.ZERO,ot.ZERO)}clearStencil(){let w=this.context,B=w.gl;this.nextStencilID=1,this.currentStencilSource=void 0;let Q=a.H();a.aP(Q,0,this.width,this.height,0,0,1),a.K(Q,Q,[B.drawingBufferWidth,B.drawingBufferHeight,0]),this.useProgram("clippingMask").draw(w,B.TRIANGLES,Po.disabled,this.stencilClearMode,Bs.disabled,Pa.disabled,Lo(Q),null,"$clipping",this.viewportBuffer,this.quadTriangleIndexBuffer,this.viewportSegments)}_renderTileClippingMasks(w,B){if(this.currentStencilSource===w.source||!w.isTileClipped()||!B||!B.length)return;this.currentStencilSource=w.source;let Q=this.context,ee=Q.gl;this.nextStencilID+B.length>256&&this.clearStencil(),Q.setColorMode(Bs.disabled),Q.setDepthMode(Po.disabled);let le=this.useProgram("clippingMask");this._tileClippingMaskIDs={};for(let qe of B){let Xe=this._tileClippingMaskIDs[qe.key]=this.nextStencilID++,ot=this.style.map.terrain&&this.style.map.terrain.getTerrainData(qe);le.draw(Q,ee.TRIANGLES,Po.disabled,new Yo({func:ee.ALWAYS,mask:0},Xe,255,ee.KEEP,ee.KEEP,ee.REPLACE),Bs.disabled,Pa.disabled,Lo(qe.posMatrix),ot,"$clipping",this.tileExtentBuffer,this.quadTriangleIndexBuffer,this.tileExtentSegments)}}stencilModeFor3D(){this.currentStencilSource=void 0,this.nextStencilID+1>256&&this.clearStencil();let w=this.nextStencilID++,B=this.context.gl;return new Yo({func:B.NOTEQUAL,mask:255},w,255,B.KEEP,B.KEEP,B.REPLACE)}stencilModeForClipping(w){let B=this.context.gl;return new Yo({func:B.EQUAL,mask:255},this._tileClippingMaskIDs[w.key],0,B.KEEP,B.KEEP,B.REPLACE)}stencilConfigForOverlap(w){let B=this.context.gl,Q=w.sort((qe,Xe)=>Xe.overscaledZ-qe.overscaledZ),ee=Q[Q.length-1].overscaledZ,le=Q[0].overscaledZ-ee+1;if(le>1){this.currentStencilSource=void 0,this.nextStencilID+le>256&&this.clearStencil();let qe={};for(let Xe=0;Xe<le;Xe++)qe[Xe+ee]=new Yo({func:B.GEQUAL,mask:255},Xe+this.nextStencilID,255,B.KEEP,B.KEEP,B.REPLACE);return this.nextStencilID+=le,[qe,Q]}return[{[ee]:Yo.disabled},Q]}colorModeForRenderPass(){let w=this.context.gl;return this._showOverdrawInspector?new Bs([w.CONSTANT_COLOR,w.ONE],new a.aM(.125,.125,.125,0),[!0,!0,!0,!0]):this.renderPass==="opaque"?Bs.unblended:Bs.alphaBlended}depthModeForSublayer(w,B,Q){if(!this.opaquePassEnabledForLayer())return Po.disabled;let ee=1-((1+this.currentLayer)*this.numSublayers+w)*this.depthEpsilon;return new Po(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,le={},qe={},Xe={};for(let ot in ee){let Tt=ee[ot];Tt.used&&Tt.prepare(this.context),le[ot]=Tt.getVisibleCoordinates(),qe[ot]=le[ot].slice().reverse(),Xe[ot]=Tt.getVisibleCoordinates(!0).reverse()}this.opaquePassCutoff=1/0;for(let ot=0;ot<Q.length;ot++)if(this.style._layers[Q[ot]].is3D()){this.opaquePassCutoff=ot;break}this.maybeDrawDepthAndCoords(!1),this.renderToTexture&&(this.renderToTexture.prepareForRender(this.style,this.transform.zoom),this.opaquePassCutoff=0),this.renderPass="offscreen";for(let ot of Q){let Tt=this.style._layers[ot];if(!Tt.hasOffscreenPass()||Tt.isHidden(this.transform.zoom))continue;let Kt=qe[Tt.source];(Tt.type==="custom"||Kt.length)&&this.renderLayer(this,ee[Tt.source],Tt,Kt)}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(ot,Tt){let Kt=ot.context,Jt=Kt.gl,xr=((Be,tt,We)=>({u_sky_color:Be.properties.get("sky-color"),u_horizon_color:Be.properties.get("horizon-color"),u_horizon:(tt.height/2+tt.getHorizon())*We,u_sky_horizon_blend:Be.properties.get("sky-horizon-blend")*tt.height/2*We}))(Tt,ot.style.map.transform,ot.pixelRatio),Pr=new Po(Jt.LEQUAL,Po.ReadWrite,[0,1]),ve=Yo.disabled,be=ot.colorModeForRenderPass(),Re=ot.useProgram("sky");if(!Tt.mesh){let Be=new a.aX;Be.emplaceBack(-1,-1),Be.emplaceBack(1,-1),Be.emplaceBack(1,1),Be.emplaceBack(-1,1);let tt=new a.aY;tt.emplaceBack(0,1,2),tt.emplaceBack(0,2,3),Tt.mesh=new Eu(Kt.createVertexBuffer(Be,vo.members),Kt.createIndexBuffer(tt),a.a0.simpleSegment(0,0,Be.length,tt.length))}Re.draw(Kt,Jt.TRIANGLES,Pr,ve,be,Pa.disabled,xr,void 0,"sky",Tt.mesh.vertexBuffer,Tt.mesh.indexBuffer,Tt.mesh.segments)}(this,this.style.sky),this._showOverdrawInspector=B.showOverdrawInspector,this.depthRangeFor3D=[0,1-(w._order.length+2)*this.numSublayers*this.depthEpsilon],!this.renderToTexture)for(this.renderPass="opaque",this.currentLayer=Q.length-1;this.currentLayer>=0;this.currentLayer--){let ot=this.style._layers[Q[this.currentLayer]],Tt=ee[ot.source],Kt=le[ot.source];this._renderTileClippingMasks(ot,Kt),this.renderLayer(this,Tt,ot,Kt)}for(this.renderPass="translucent",this.currentLayer=0;this.currentLayer<Q.length;this.currentLayer++){let ot=this.style._layers[Q[this.currentLayer]],Tt=ee[ot.source];if(this.renderToTexture&&this.renderToTexture.renderLayer(ot))continue;let Kt=(ot.type==="symbol"?Xe:qe)[ot.source];this._renderTileClippingMasks(ot,le[ot.source]),this.renderLayer(this,Tt,ot,Kt)}if(this.options.showTileBoundaries){let ot=function(Tt,Kt){let Jt=null,xr=Object.values(Tt._layers).flatMap(Re=>Re.source&&!Re.isHidden(Kt)?[Tt.sourceCaches[Re.source]]:[]),Pr=xr.filter(Re=>Re.getSource().type==="vector"),ve=xr.filter(Re=>Re.getSource().type!=="vector"),be=Re=>{(!Jt||Jt.getSource().maxzoom<Re.getSource().maxzoom)&&(Jt=Re)};return Pr.forEach(Re=>be(Re)),Jt||ve.forEach(Re=>be(Re)),Jt}(this.style,this.transform.zoom);ot&&function(Tt,Kt,Jt){for(let xr=0;xr<Jt.length;xr++)ih(Tt,Kt,Jt[xr])}(this,ot,ot.getVisibleCoordinates())}this.options.showPadding&&function(ot){let Tt=ot.transform.padding;sf(ot,ot.transform.height-(Tt.top||0),3,Rc),sf(ot,Tt.bottom||0,3,ms),xh(ot,Tt.left||0,3,jf),xh(ot,ot.transform.width-(Tt.right||0),3,Uh);let Kt=ot.transform.centerPoint;(function(Jt,xr,Pr,ve){Mu(Jt,xr-1,Pr-10,2,20,ve),Mu(Jt,xr-10,Pr-1,20,2,ve)})(ot,Kt.x,ot.transform.height-Kt.y,rh)}(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(le,qe){let Xe=le.context,ot=Xe.gl,Tt=Bs.unblended,Kt=new Po(ot.LEQUAL,Po.ReadWrite,[0,1]),Jt=qe.getTerrainMesh(),xr=qe.sourceCache.getRenderableTiles(),Pr=le.useProgram("terrainDepth");Xe.bindFramebuffer.set(qe.getFramebuffer("depth").framebuffer),Xe.viewport.set([0,0,le.width/devicePixelRatio,le.height/devicePixelRatio]),Xe.clear({color:a.aM.transparent,depth:1});for(let ve of xr){let be=qe.getTerrainData(ve.tileID),Re={u_matrix:le.transform.calculatePosMatrix(ve.tileID.toUnwrapped()),u_ele_delta:qe.getMeshFrameDelta(le.transform.zoom)};Pr.draw(Xe,ot.TRIANGLES,Kt,Yo.disabled,Tt,Pa.backCCW,Re,be,"terrain",Jt.vertexBuffer,Jt.indexBuffer,Jt.segments)}Xe.bindFramebuffer.set(null),Xe.viewport.set([0,0,le.width,le.height])}(this,this.style.map.terrain),function(le,qe){let Xe=le.context,ot=Xe.gl,Tt=Bs.unblended,Kt=new Po(ot.LEQUAL,Po.ReadWrite,[0,1]),Jt=qe.getTerrainMesh(),xr=qe.getCoordsTexture(),Pr=qe.sourceCache.getRenderableTiles(),ve=le.useProgram("terrainCoords");Xe.bindFramebuffer.set(qe.getFramebuffer("coords").framebuffer),Xe.viewport.set([0,0,le.width/devicePixelRatio,le.height/devicePixelRatio]),Xe.clear({color:a.aM.transparent,depth:1}),qe.coordsIndex=[];for(let be of Pr){let Re=qe.getTerrainData(be.tileID);Xe.activeTexture.set(ot.TEXTURE0),ot.bindTexture(ot.TEXTURE_2D,xr.texture);let Be={u_matrix:le.transform.calculatePosMatrix(be.tileID.toUnwrapped()),u_terrain_coords_id:(255-qe.coordsIndex.length)/255,u_texture:0,u_ele_delta:qe.getMeshFrameDelta(le.transform.zoom)};ve.draw(Xe,ot.TRIANGLES,Kt,Yo.disabled,Tt,Pa.backCCW,Be,Re,"terrain",Jt.vertexBuffer,Jt.indexBuffer,Jt.segments),qe.coordsIndex.push(be.tileID.key)}Xe.bindFramebuffer.set(null),Xe.viewport.set([0,0,le.width,le.height])}(this,this.style.map.terrain))}renderLayer(w,B,Q,ee){if(!Q.isHidden(this.transform.zoom)&&(Q.type==="background"||Q.type==="custom"||(ee||[]).length))switch(this.id=Q.id,Q.type){case"symbol":(function(le,qe,Xe,ot,Tt){if(le.renderPass!=="translucent")return;let Kt=Yo.disabled,Jt=le.colorModeForRenderPass();(Xe._unevaluatedLayout.hasValue("text-variable-anchor")||Xe._unevaluatedLayout.hasValue("text-variable-anchor-offset"))&&function(xr,Pr,ve,be,Re,Be,tt,We,it){let Dt=Pr.transform,Ht=yn(),rr=Re==="map",dr=Be==="map";for(let Sr of xr){let Or=be.getTile(Sr),jr=Or.getBucket(ve);if(!jr||!jr.text||!jr.text.segments.get().length)continue;let ii=a.ag(jr.textSizeData,Dt.zoom),Li=Pn(Or,1,Pr.transform.zoom),un=Wr(Sr.posMatrix,dr,rr,Pr.transform,Li),sn=ve.layout.get("icon-text-fit")!=="none"&&jr.hasIconData();if(ii){let In=Math.pow(2,Dt.zoom-Or.tileID.overscaledZ),Kn=Pr.style.map.terrain?(fa,$a)=>Pr.style.map.terrain.getElevation(Sr,fa,$a):null,Aa=Ht.translatePosition(Dt,Or,tt,We);mf(jr,rr,dr,it,Dt,un,Sr.posMatrix,In,ii,sn,Ht,Aa,Sr.toUnwrapped(),Kn)}}}(ot,le,Xe,qe,Xe.layout.get("text-rotation-alignment"),Xe.layout.get("text-pitch-alignment"),Xe.paint.get("text-translate"),Xe.paint.get("text-translate-anchor"),Tt),Xe.paint.get("icon-opacity").constantOr(1)!==0&&_h(le,qe,Xe,ot,!1,Xe.paint.get("icon-translate"),Xe.paint.get("icon-translate-anchor"),Xe.layout.get("icon-rotation-alignment"),Xe.layout.get("icon-pitch-alignment"),Xe.layout.get("icon-keep-upright"),Kt,Jt),Xe.paint.get("text-opacity").constantOr(1)!==0&&_h(le,qe,Xe,ot,!0,Xe.paint.get("text-translate"),Xe.paint.get("text-translate-anchor"),Xe.layout.get("text-rotation-alignment"),Xe.layout.get("text-pitch-alignment"),Xe.layout.get("text-keep-upright"),Kt,Jt),qe.map.showCollisionBoxes&&(Hu(le,qe,Xe,ot,!0),Hu(le,qe,Xe,ot,!1))})(w,B,Q,ee,this.style.placement.variableOffsets);break;case"circle":(function(le,qe,Xe,ot){if(le.renderPass!=="translucent")return;let Tt=Xe.paint.get("circle-opacity"),Kt=Xe.paint.get("circle-stroke-width"),Jt=Xe.paint.get("circle-stroke-opacity"),xr=!Xe.layout.get("circle-sort-key").isConstant();if(Tt.constantOr(1)===0&&(Kt.constantOr(1)===0||Jt.constantOr(1)===0))return;let Pr=le.context,ve=Pr.gl,be=le.depthModeForSublayer(0,Po.ReadOnly),Re=Yo.disabled,Be=le.colorModeForRenderPass(),tt=[];for(let We=0;We<ot.length;We++){let it=ot[We],Dt=qe.getTile(it),Ht=Dt.getBucket(Xe);if(!Ht)continue;let rr=Ht.programConfigurations.get(Xe.id),dr=le.useProgram("circle",rr),Sr=Ht.layoutVertexBuffer,Or=Ht.indexBuffer,jr=le.style.map.terrain&&le.style.map.terrain.getTerrainData(it),ii={programConfiguration:rr,program:dr,layoutVertexBuffer:Sr,indexBuffer:Or,uniformValues:_o(le,it,Dt,Xe),terrainData:jr};if(xr){let Li=Ht.segments.get();for(let un of Li)tt.push({segments:new a.a0([un]),sortKey:un.sortKey,state:ii})}else tt.push({segments:Ht.segments,sortKey:0,state:ii})}xr&&tt.sort((We,it)=>We.sortKey-it.sortKey);for(let We of tt){let{programConfiguration:it,program:Dt,layoutVertexBuffer:Ht,indexBuffer:rr,uniformValues:dr,terrainData:Sr}=We.state;Dt.draw(Pr,ve.TRIANGLES,be,Re,Be,Pa.disabled,dr,Sr,Xe.id,Ht,rr,We.segments,Xe.paint,le.transform.zoom,it)}})(w,B,Q,ee);break;case"heatmap":(function(le,qe,Xe,ot){if(Xe.paint.get("heatmap-opacity")===0)return;let Tt=le.context;if(le.style.map.terrain){for(let Kt of ot){let Jt=qe.getTile(Kt);qe.hasRenderableParent(Kt)||(le.renderPass==="offscreen"?yf(le,Jt,Xe,Kt):le.renderPass==="translucent"&&Yc(le,Xe,Kt))}Tt.viewport.set([0,0,le.width,le.height])}else le.renderPass==="offscreen"?function(Kt,Jt,xr,Pr){let ve=Kt.context,be=ve.gl,Re=Yo.disabled,Be=new Bs([be.ONE,be.ONE],a.aM.transparent,[!0,!0,!0,!0]);(function(tt,We,it){let Dt=tt.gl;tt.activeTexture.set(Dt.TEXTURE1),tt.viewport.set([0,0,We.width/4,We.height/4]);let Ht=it.heatmapFbos.get(a.aU);Ht?(Dt.bindTexture(Dt.TEXTURE_2D,Ht.colorAttachment.get()),tt.bindFramebuffer.set(Ht.framebuffer)):(Ht=eh(tt,We.width/4,We.height/4),it.heatmapFbos.set(a.aU,Ht))})(ve,Kt,xr),ve.clear({color:a.aM.transparent});for(let tt=0;tt<Pr.length;tt++){let We=Pr[tt];if(Jt.hasRenderableParent(We))continue;let it=Jt.getTile(We),Dt=it.getBucket(xr);if(!Dt)continue;let Ht=Dt.programConfigurations.get(xr.id),rr=Kt.useProgram("heatmap",Ht),{zoom:dr}=Kt.transform;rr.draw(ve,be.TRIANGLES,Po.disabled,Re,Be,Pa.disabled,Co(We.posMatrix,it,dr,xr.paint.get("heatmap-intensity")),null,xr.id,Dt.layoutVertexBuffer,Dt.indexBuffer,Dt.segments,xr.paint,Kt.transform.zoom,Ht)}ve.viewport.set([0,0,Kt.width,Kt.height])}(le,qe,Xe,ot):le.renderPass==="translucent"&&function(Kt,Jt){let xr=Kt.context,Pr=xr.gl;xr.setColorMode(Kt.colorModeForRenderPass());let ve=Jt.heatmapFbos.get(a.aU);ve&&(xr.activeTexture.set(Pr.TEXTURE0),Pr.bindTexture(Pr.TEXTURE_2D,ve.colorAttachment.get()),xr.activeTexture.set(Pr.TEXTURE1),th(xr,Jt).bind(Pr.LINEAR,Pr.CLAMP_TO_EDGE),Kt.useProgram("heatmapTexture").draw(xr,Pr.TRIANGLES,Po.disabled,Yo.disabled,Kt.colorModeForRenderPass(),Pa.disabled,Fs(Kt,Jt,0,1),null,Jt.id,Kt.viewportBuffer,Kt.quadTriangleIndexBuffer,Kt.viewportSegments,Jt.paint,Kt.transform.zoom))}(le,Xe)})(w,B,Q,ee);break;case"line":(function(le,qe,Xe,ot){if(le.renderPass!=="translucent")return;let Tt=Xe.paint.get("line-opacity"),Kt=Xe.paint.get("line-width");if(Tt.constantOr(1)===0||Kt.constantOr(1)===0)return;let Jt=le.depthModeForSublayer(0,Po.ReadOnly),xr=le.colorModeForRenderPass(),Pr=Xe.paint.get("line-dasharray"),ve=Xe.paint.get("line-pattern"),be=ve.constantOr(1),Re=Xe.paint.get("line-gradient"),Be=Xe.getCrossfadeParameters(),tt=be?"linePattern":Pr?"lineSDF":Re?"lineGradient":"line",We=le.context,it=We.gl,Dt=!0;for(let Ht of ot){let rr=qe.getTile(Ht);if(be&&!rr.patternsLoaded())continue;let dr=rr.getBucket(Xe);if(!dr)continue;let Sr=dr.programConfigurations.get(Xe.id),Or=le.context.program.get(),jr=le.useProgram(tt,Sr),ii=Dt||jr.program!==Or,Li=le.style.map.terrain&&le.style.map.terrain.getTerrainData(Ht),un=ve.constantOr(null);if(un&&rr.imageAtlas){let Kn=rr.imageAtlas,Aa=Kn.patternPositions[un.to.toString()],fa=Kn.patternPositions[un.from.toString()];Aa&&fa&&Sr.setConstantPatternPositions(Aa,fa)}let sn=Li?Ht:null,In=be?Fl(le,rr,Xe,Be,sn):Pr?cs(le,rr,Xe,Pr,Be,sn):Re?cl(le,rr,Xe,dr.lineClipsArray.length,sn):ul(le,rr,Xe,sn);if(be)We.activeTexture.set(it.TEXTURE0),rr.imageAtlasTexture.bind(it.LINEAR,it.CLAMP_TO_EDGE),Sr.updatePaintBuffers(Be);else if(Pr&&(ii||le.lineAtlas.dirty))We.activeTexture.set(it.TEXTURE0),le.lineAtlas.bind(We);else if(Re){let Kn=dr.gradients[Xe.id],Aa=Kn.texture;if(Xe.gradientVersion!==Kn.version){let fa=256;if(Xe.stepInterpolant){let $a=qe.getSource().maxzoom,ko=Ht.canonical.z===$a?Math.ceil(1<<le.transform.maxZoom-Ht.canonical.z):1;fa=a.ac(a.aV(dr.maxLineLength/a.X*1024*ko),256,We.maxTextureSize)}Kn.gradient=a.aW({expression:Xe.gradientExpression(),evaluationKey:"lineProgress",resolution:fa,image:Kn.gradient||void 0,clips:dr.lineClipsArray}),Kn.texture?Kn.texture.update(Kn.gradient):Kn.texture=new g(We,Kn.gradient,it.RGBA),Kn.version=Xe.gradientVersion,Aa=Kn.texture}We.activeTexture.set(it.TEXTURE0),Aa.bind(Xe.stepInterpolant?it.NEAREST:it.LINEAR,it.CLAMP_TO_EDGE)}jr.draw(We,it.TRIANGLES,Jt,le.stencilModeForClipping(Ht),xr,Pa.disabled,In,Li,Xe.id,dr.layoutVertexBuffer,dr.indexBuffer,dr.segments,Xe.paint,le.transform.zoom,Sr,dr.layoutVertexBuffer2),Dt=!1}})(w,B,Q,ee);break;case"fill":(function(le,qe,Xe,ot){let Tt=Xe.paint.get("fill-color"),Kt=Xe.paint.get("fill-opacity");if(Kt.constantOr(1)===0)return;let Jt=le.colorModeForRenderPass(),xr=Xe.paint.get("fill-pattern"),Pr=le.opaquePassEnabledForLayer()&&!xr.constantOr(1)&&Tt.constantOr(a.aM.transparent).a===1&&Kt.constantOr(0)===1?"opaque":"translucent";if(le.renderPass===Pr){let ve=le.depthModeForSublayer(1,le.renderPass==="opaque"?Po.ReadWrite:Po.ReadOnly);Hf(le,qe,Xe,ot,ve,Jt,!1)}if(le.renderPass==="translucent"&&Xe.paint.get("fill-antialias")){let ve=le.depthModeForSublayer(Xe.getPaintProperty("fill-outline-color")?2:0,Po.ReadOnly);Hf(le,qe,Xe,ot,ve,Jt,!0)}})(w,B,Q,ee);break;case"fill-extrusion":(function(le,qe,Xe,ot){let Tt=Xe.paint.get("fill-extrusion-opacity");if(Tt!==0&&le.renderPass==="translucent"){let Kt=new Po(le.context.gl.LEQUAL,Po.ReadWrite,le.depthRangeFor3D);if(Tt!==1||Xe.paint.get("fill-extrusion-pattern").constantOr(1))cc(le,qe,Xe,ot,Kt,Yo.disabled,Bs.disabled),cc(le,qe,Xe,ot,Kt,le.stencilModeFor3D(),le.colorModeForRenderPass());else{let Jt=le.colorModeForRenderPass();cc(le,qe,Xe,ot,Kt,Yo.disabled,Jt)}}})(w,B,Q,ee);break;case"hillshade":(function(le,qe,Xe,ot){if(le.renderPass!=="offscreen"&&le.renderPass!=="translucent")return;let Tt=le.context,Kt=le.depthModeForSublayer(0,Po.ReadOnly),Jt=le.colorModeForRenderPass(),[xr,Pr]=le.renderPass==="translucent"?le.stencilConfigForOverlap(ot):[{},ot];for(let ve of Pr){let be=qe.getTile(ve);be.needsHillshadePrepare!==void 0&&be.needsHillshadePrepare&&le.renderPass==="offscreen"?Bl(le,be,Xe,Kt,Yo.disabled,Jt):le.renderPass==="translucent"&&of(le,ve,be,Xe,Kt,xr[ve.overscaledZ],Jt)}Tt.viewport.set([0,0,le.width,le.height])})(w,B,Q,ee);break;case"raster":(function(le,qe,Xe,ot){if(le.renderPass!=="translucent"||Xe.paint.get("raster-opacity")===0||!ot.length)return;let Tt=le.context,Kt=Tt.gl,Jt=qe.getSource(),xr=le.useProgram("raster"),Pr=le.colorModeForRenderPass(),[ve,be]=Jt instanceof Gt?[{},ot]:le.stencilConfigForOverlap(ot),Re=be[be.length-1].overscaledZ,Be=!le.options.moving;for(let tt of be){let We=le.depthModeForSublayer(tt.overscaledZ-Re,Xe.paint.get("raster-opacity")===1?Po.ReadWrite:Po.ReadOnly,Kt.LESS),it=qe.getTile(tt);it.registerFadeDuration(Xe.paint.get("raster-fade-duration"));let Dt=qe.findLoadedParent(tt,0),Ht=qe.findLoadedSibling(tt),rr=Kc(it,Dt||Ht||null,qe,Xe,le.transform,le.style.map.terrain),dr,Sr,Or=Xe.paint.get("raster-resampling")==="nearest"?Kt.NEAREST:Kt.LINEAR;Tt.activeTexture.set(Kt.TEXTURE0),it.texture.bind(Or,Kt.CLAMP_TO_EDGE,Kt.LINEAR_MIPMAP_NEAREST),Tt.activeTexture.set(Kt.TEXTURE1),Dt?(Dt.texture.bind(Or,Kt.CLAMP_TO_EDGE,Kt.LINEAR_MIPMAP_NEAREST),dr=Math.pow(2,Dt.tileID.overscaledZ-it.tileID.overscaledZ),Sr=[it.tileID.canonical.x*dr%1,it.tileID.canonical.y*dr%1]):it.texture.bind(Or,Kt.CLAMP_TO_EDGE,Kt.LINEAR_MIPMAP_NEAREST),it.texture.useMipmap&&Tt.extTextureFilterAnisotropic&&le.transform.pitch>20&&Kt.texParameterf(Kt.TEXTURE_2D,Tt.extTextureFilterAnisotropic.TEXTURE_MAX_ANISOTROPY_EXT,Tt.extTextureFilterAnisotropicMax);let jr=le.style.map.terrain&&le.style.map.terrain.getTerrainData(tt),ii=jr?tt:null,Li=ii?ii.posMatrix:le.transform.calculatePosMatrix(tt.toUnwrapped(),Be),un=fl(Li,Sr||[0,0],dr||1,rr,Xe);Jt instanceof Gt?xr.draw(Tt,Kt.TRIANGLES,We,Yo.disabled,Pr,Pa.disabled,un,jr,Xe.id,Jt.boundsBuffer,le.quadTriangleIndexBuffer,Jt.boundsSegments):xr.draw(Tt,Kt.TRIANGLES,We,ve[tt.overscaledZ],Pr,Pa.disabled,un,jr,Xe.id,le.rasterBoundsBuffer,le.quadTriangleIndexBuffer,le.rasterBoundsSegments)}})(w,B,Q,ee);break;case"background":(function(le,qe,Xe,ot){let Tt=Xe.paint.get("background-color"),Kt=Xe.paint.get("background-opacity");if(Kt===0)return;let Jt=le.context,xr=Jt.gl,Pr=le.transform,ve=Pr.tileSize,be=Xe.paint.get("background-pattern");if(le.isPatternMissing(be))return;let Re=!be&&Tt.a===1&&Kt===1&&le.opaquePassEnabledForLayer()?"opaque":"translucent";if(le.renderPass!==Re)return;let Be=Yo.disabled,tt=le.depthModeForSublayer(0,Re==="opaque"?Po.ReadWrite:Po.ReadOnly),We=le.colorModeForRenderPass(),it=le.useProgram(be?"backgroundPattern":"background"),Dt=ot||Pr.coveringTiles({tileSize:ve,terrain:le.style.map.terrain});be&&(Jt.activeTexture.set(xr.TEXTURE0),le.imageManager.bind(le.context));let Ht=Xe.getCrossfadeParameters();for(let rr of Dt){let dr=ot?rr.posMatrix:le.transform.calculatePosMatrix(rr.toUnwrapped()),Sr=be?Su(dr,Kt,le,be,{tileID:rr,tileSize:ve},Ht):Zl(dr,Kt,Tt),Or=le.style.map.terrain&&le.style.map.terrain.getTerrainData(rr);it.draw(Jt,xr.TRIANGLES,tt,Be,We,Pa.disabled,Sr,Or,Xe.id,le.tileExtentBuffer,le.quadTriangleIndexBuffer,le.tileExtentSegments)}})(w,0,Q,ee);break;case"custom":(function(le,qe,Xe){let ot=le.context,Tt=Xe.implementation;if(le.renderPass==="offscreen"){let Kt=Tt.prerender;Kt&&(le.setCustomLayerDefaults(),ot.setColorMode(le.colorModeForRenderPass()),Kt.call(Tt,ot.gl,le.transform.customLayerMatrix()),ot.setDirty(),le.setBaseState())}else if(le.renderPass==="translucent"){le.setCustomLayerDefaults(),ot.setColorMode(le.colorModeForRenderPass()),ot.setStencilMode(Yo.disabled);let Kt=Tt.renderingMode==="3d"?new Po(le.context.gl.LEQUAL,Po.ReadWrite,le.depthRangeFor3D):le.depthModeForSublayer(0,Po.ReadOnly);ot.setDepthMode(Kt),Tt.render(ot.gl,le.transform.customLayerMatrix(),{farZ:le.transform.farZ,nearZ:le.transform.nearZ,fov:le.transform._fov,modelViewProjectionMatrix:le.transform.modelViewProjectionMatrix,projectionMatrix:le.transform.projectionMatrix}),ot.setDirty(),le.setBaseState(),ot.bindFramebuffer.set(null)}})(w,0,Q)}}translatePosMatrix(w,B,Q,ee,le){if(!Q[0]&&!Q[1])return w;let qe=le?ee==="map"?this.transform.angle:0:ee==="viewport"?-this.transform.angle:0;if(qe){let Tt=Math.sin(qe),Kt=Math.cos(qe);Q=[Q[0]*Kt-Q[1]*Tt,Q[0]*Tt+Q[1]*Kt]}let Xe=[le?Q[0]:Pn(B,Q[0],this.transform.zoom),le?Q[1]:Pn(B,Q[1],this.transform.zoom),0],ot=new Float32Array(16);return a.J(ot,w,Xe),ot}saveTileTexture(w){let B=this._tileTextures[w.size[0]];B?B.push(w):this._tileTextures[w.size[0]]=[w]}getTileTexture(w){let B=this._tileTextures[w];return B&&B.length>0?B.pop():null}isPatternMissing(w){if(!w)return!1;if(!w.from||!w.to)return!0;let B=this.imageManager.getPattern(w.from.toString()),Q=this.imageManager.getPattern(w.to.toString());return!B||!Q}useProgram(w,B){this.cache=this.cache||{};let Q=w+(B?B.cacheKey:"")+(this._showOverdrawInspector?"/overdraw":"")+(this.style.map.terrain?"/terrain":"");return this.cache[Q]||(this.cache[Q]=new fn(this.context,jn[w],B,nc[w],this._showOverdrawInspector,this.style.map.terrain)),this.cache[Q]}setCustomLayerDefaults(){this.context.unbindVAO(),this.context.cullFace.setDefault(),this.context.activeTexture.setDefault(),this.context.pixelStoreUnpack.setDefault(),this.context.pixelStoreUnpackPremultiplyAlpha.setDefault(),this.context.pixelStoreUnpackFlipY.setDefault()}setBaseState(){let w=this.context.gl;this.context.cullFace.set(!1),this.context.viewport.set([0,0,this.width,this.height]),this.context.blendEquation.set(w.FUNC_ADD)}initDebugOverlayCanvas(){this.debugOverlayCanvas==null&&(this.debugOverlayCanvas=document.createElement("canvas"),this.debugOverlayCanvas.width=512,this.debugOverlayCanvas.height=512,this.debugOverlayTexture=new g(this.context,this.debugOverlayCanvas,this.context.gl.RGBA))}destroy(){this.debugOverlayTexture&&this.debugOverlayTexture.destroy()}overLimit(){let{drawingBufferWidth:w,drawingBufferHeight:B}=this.context.gl;return this.width!==w||this.height!==B}}class ks{constructor(w,B){this.points=w,this.planes=B}static fromInvProjectionMatrix(w,B,Q){let ee=Math.pow(2,Q),le=[[-1,1,-1,1],[1,1,-1,1],[1,-1,-1,1],[-1,-1,-1,1],[-1,1,1,1],[1,1,1,1],[1,-1,1,1],[-1,-1,1,1]].map(Xe=>{let ot=1/(Xe=a.af([],Xe,w))[3]/B*ee;return a.b1(Xe,Xe,[ot,ot,1/Xe[3],ot])}),qe=[[0,1,2],[6,5,4],[0,3,7],[2,1,5],[3,2,6],[0,4,5]].map(Xe=>{let ot=function(xr,Pr){var ve=Pr[0],be=Pr[1],Re=Pr[2],Be=ve*ve+be*be+Re*Re;return Be>0&&(Be=1/Math.sqrt(Be)),xr[0]=Pr[0]*Be,xr[1]=Pr[1]*Be,xr[2]=Pr[2]*Be,xr}([],function(xr,Pr,ve){var be=Pr[0],Re=Pr[1],Be=Pr[2],tt=ve[0],We=ve[1],it=ve[2];return xr[0]=Re*it-Be*We,xr[1]=Be*tt-be*it,xr[2]=be*We-Re*tt,xr}([],L([],le[Xe[0]],le[Xe[1]]),L([],le[Xe[2]],le[Xe[1]]))),Tt=-((Kt=ot)[0]*(Jt=le[Xe[1]])[0]+Kt[1]*Jt[1]+Kt[2]*Jt[2]);var Kt,Jt;return ot.concat(Tt)});return new ks(le,qe)}}class bc{constructor(w,B){this.min=w,this.max=B,this.center=function(Q,ee,le){return Q[0]=.5*ee[0],Q[1]=.5*ee[1],Q[2]=.5*ee[2],Q}([],function(Q,ee,le){return Q[0]=ee[0]+le[0],Q[1]=ee[1]+le[1],Q[2]=ee[2]+le[2],Q}([],this.min,this.max))}quadrant(w){let B=[w%2==0,w<2],Q=E(this.min),ee=E(this.max);for(let le=0;le<B.length;le++)Q[le]=B[le]?this.min[le]:this.center[le],ee[le]=B[le]?this.center[le]:this.max[le];return ee[2]=this.max[2],new bc(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 le=w.planes[ee],qe=0;for(let Xe=0;Xe<B.length;Xe++)a.b2(le,B[Xe])>=0&&qe++;if(qe===0)return 0;qe!==B.length&&(Q=!1)}if(Q)return 2;for(let ee=0;ee<3;ee++){let le=Number.MAX_VALUE,qe=-Number.MAX_VALUE;for(let Xe=0;Xe<w.points.length;Xe++){let ot=w.points[Xe][ee]-this.min[ee];le=Math.min(le,ot),qe=Math.max(qe,ot)}if(qe<0||le>this.max[ee]-this.min[ee])return 0}return 1}}class du{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 du(this.top,this.bottom,this.left,this.right)}toJSON(){return{top:this.top,bottom:this.bottom,left:this.left,right:this.right}}}let _u=85.051129;class al{constructor(w,B,Q,ee,le){this.tileSize=512,this._renderWorldCopies=le===void 0||!!le,this._minZoom=w||0,this._maxZoom=B||22,this._minPitch=Q==null?0:Q,this._maxPitch=ee==null?60:ee,this.setMaxBounds(),this.width=0,this.height=0,this._center=new a.N(0,0),this._elevation=0,this.zoom=0,this.angle=0,this._fov=.6435011087932844,this._pitch=0,this._unmodified=!0,this._edgeInsets=new du,this._posMatrixCache={},this._alignedPosMatrixCache={},this._fogMatrixCache={},this.minElevationForCurrentTile=0}clone(){let w=new al(this._minZoom,this._maxZoom,this._minPitch,this.maxPitch,this._renderWorldCopies);return w.apply(this),w}apply(w){this.tileSize=w.tileSize,this.latRange=w.latRange,this.lngRange=w.lngRange,this.width=w.width,this.height=w.height,this._center=w._center,this._elevation=w._elevation,this.minElevationForCurrentTile=w.minElevationForCurrentTile,this.zoom=w.zoom,this.angle=w.angle,this._fov=w._fov,this._pitch=w._pitch,this._unmodified=w._unmodified,this._edgeInsets=w._edgeInsets.clone(),this._calcMatrices()}get minZoom(){return this._minZoom}set minZoom(w){this._minZoom!==w&&(this._minZoom=w,this.zoom=Math.max(this.zoom,w))}get maxZoom(){return this._maxZoom}set maxZoom(w){this._maxZoom!==w&&(this._maxZoom=w,this.zoom=Math.min(this.zoom,w))}get minPitch(){return this._minPitch}set minPitch(w){this._minPitch!==w&&(this._minPitch=w,this.pitch=Math.max(this.pitch,w))}get maxPitch(){return this._maxPitch}set maxPitch(w){this._maxPitch!==w&&(this._maxPitch=w,this.pitch=Math.min(this.pitch,w))}get renderWorldCopies(){return this._renderWorldCopies}set renderWorldCopies(w){w===void 0?w=!0:w===null&&(w=!1),this._renderWorldCopies=w}get worldSize(){return this.tileSize*this.scale}get centerOffset(){return this.centerPoint._sub(this.size._div(2))}get size(){return new a.P(this.width,this.height)}get bearing(){return-this.angle/Math.PI*180}set bearing(w){let B=-a.b3(w,-180,180)*Math.PI/180;this.angle!==B&&(this._unmodified=!1,this.angle=B,this._calcMatrices(),this.rotationMatrix=function(){var Q=new a.A(4);return a.A!=Float32Array&&(Q[1]=0,Q[2]=0),Q[0]=1,Q[3]=1,Q}(),function(Q,ee,le){var qe=ee[0],Xe=ee[1],ot=ee[2],Tt=ee[3],Kt=Math.sin(le),Jt=Math.cos(le);Q[0]=qe*Jt+ot*Kt,Q[1]=Xe*Jt+Tt*Kt,Q[2]=qe*-Kt+ot*Jt,Q[3]=Xe*-Kt+Tt*Jt}(this.rotationMatrix,this.rotationMatrix,this.angle))}get pitch(){return this._pitch/Math.PI*180}set pitch(w){let B=a.ac(w,this.minPitch,this.maxPitch)/180*Math.PI;this._pitch!==B&&(this._unmodified=!1,this._pitch=B,this._calcMatrices())}get fov(){return this._fov/Math.PI*180}set fov(w){w=Math.max(.01,Math.min(60,w)),this._fov!==w&&(this._unmodified=!1,this._fov=w/180*Math.PI,this._calcMatrices())}get zoom(){return this._zoom}set zoom(w){let B=Math.min(Math.max(w,this.minZoom),this.maxZoom);this._zoom!==B&&(this._unmodified=!1,this._zoom=B,this.tileZoom=Math.max(0,Math.floor(B)),this.scale=this.zoomScale(B),this._constrain(),this._calcMatrices())}get center(){return this._center}set center(w){w.lat===this._center.lat&&w.lng===this._center.lng||(this._unmodified=!1,this._center=w,this._constrain(),this._calcMatrices())}get elevation(){return this._elevation}set elevation(w){w!==this._elevation&&(this._elevation=w,this._constrain(),this._calcMatrices())}get padding(){return this._edgeInsets.toJSON()}set padding(w){this._edgeInsets.equals(w)||(this._unmodified=!1,this._edgeInsets.interpolate(this._edgeInsets,w,1),this._calcMatrices())}get centerPoint(){return this._edgeInsets.getCenter(this.width,this.height)}isPaddingEqual(w){return this._edgeInsets.equals(w)}interpolatePadding(w,B,Q){this._unmodified=!1,this._edgeInsets.interpolate(w,B,Q),this._constrain(),this._calcMatrices()}coveringZoomLevel(w){let B=(w.roundZoom?Math.round:Math.floor)(this.zoom+this.scaleZoom(this.tileSize/w.tileSize));return Math.max(0,B)}getVisibleUnwrappedCoordinates(w){let B=[new a.b4(0,w)];if(this._renderWorldCopies){let Q=this.pointCoordinate(new a.P(0,0)),ee=this.pointCoordinate(new a.P(this.width,0)),le=this.pointCoordinate(new a.P(this.width,this.height)),qe=this.pointCoordinate(new a.P(0,this.height)),Xe=Math.floor(Math.min(Q.x,ee.x,le.x,qe.x)),ot=Math.floor(Math.max(Q.x,ee.x,le.x,qe.x)),Tt=1;for(let Kt=Xe-Tt;Kt<=ot+Tt;Kt++)Kt!==0&&B.push(new a.b4(Kt,w))}return B}coveringTiles(w){var B,Q;let ee=this.coveringZoomLevel(w),le=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()),Xe=a.Z.fromLngLat(this.center),ot=Math.pow(2,ee),Tt=[ot*qe.x,ot*qe.y,0],Kt=[ot*Xe.x,ot*Xe.y,0],Jt=ks.fromInvProjectionMatrix(this.invModelViewProjectionMatrix,this.worldSize,ee),xr=w.minzoom||0;!w.terrain&&this.pitch<=60&&this._edgeInsets.top<.1&&(xr=ee);let Pr=w.terrain?2/Math.min(this.tileSize,w.tileSize)*this.tileSize:3,ve=We=>({aabb:new bc([We*ot,0,0],[(We+1)*ot,ot,0]),zoom:0,x:0,y:0,wrap:We,fullyVisible:!1}),be=[],Re=[],Be=ee,tt=w.reparseOverscaled?le:ee;if(this._renderWorldCopies)for(let We=1;We<=3;We++)be.push(ve(-We)),be.push(ve(We));for(be.push(ve(0));be.length>0;){let We=be.pop(),it=We.x,Dt=We.y,Ht=We.fullyVisible;if(!Ht){let jr=We.aabb.intersects(Jt);if(jr===0)continue;Ht=jr===2}let rr=w.terrain?Tt:Kt,dr=We.aabb.distanceX(rr),Sr=We.aabb.distanceY(rr),Or=Math.max(Math.abs(dr),Math.abs(Sr));if(We.zoom===Be||Or>Pr+(1<<Be-We.zoom)-2&&We.zoom>=xr){let jr=Be-We.zoom,ii=Tt[0]-.5-(it<<jr),Li=Tt[1]-.5-(Dt<<jr);Re.push({tileID:new a.S(We.zoom===Be?tt:We.zoom,We.wrap,We.zoom,it,Dt),distanceSq:_([Kt[0]-.5-it,Kt[1]-.5-Dt]),tileDistanceToCamera:Math.sqrt(ii*ii+Li*Li)})}else for(let jr=0;jr<4;jr++){let ii=(it<<1)+jr%2,Li=(Dt<<1)+(jr>>1),un=We.zoom+1,sn=We.aabb.quadrant(jr);if(w.terrain){let In=new a.S(un,We.wrap,un,ii,Li),Kn=w.terrain.getMinMaxElevation(In),Aa=(B=Kn.minElevation)!==null&&B!==void 0?B:this.elevation,fa=(Q=Kn.maxElevation)!==null&&Q!==void 0?Q:this.elevation;sn=new bc([sn.min[0],sn.min[1],Aa],[sn.max[0],sn.max[1],fa])}be.push({aabb:sn,zoom:un,x:ii,y:Li,wrap:We.wrap,fullyVisible:Ht})}}return Re.sort((We,it)=>We.distanceSq-it.distanceSq).map(We=>We.tileID)}resize(w,B){this.width=w,this.height=B,this.pixelsToGLUnits=[2/w,-2/B],this._constrain(),this._calcMatrices()}get unmodified(){return this._unmodified}zoomScale(w){return Math.pow(2,w)}scaleZoom(w){return Math.log(w)/Math.LN2}project(w){let B=a.ac(w.lat,-85.051129,_u);return new a.P(a.O(w.lng)*this.worldSize,a.Q(B)*this.worldSize)}unproject(w){return new a.Z(w.x/this.worldSize,w.y/this.worldSize).toLngLat()}get point(){return this.project(this.center)}getCameraPosition(){return{lngLat:this.pointLocation(this.getCameraPoint()),altitude:Math.cos(this._pitch)*this.cameraToCenterDistance/this._pixelPerMeter+this.elevation}}recalculateZoom(w){let B=this.elevation,Q=Math.cos(this._pitch)*this.cameraToCenterDistance/this._pixelPerMeter,ee=this.pointLocation(this.centerPoint,w),le=w.getElevationForLngLatZoom(ee,this.tileZoom);if(!(this.elevation-le))return;let qe=Q+B-le,Xe=Math.cos(this._pitch)*this.cameraToCenterDistance/qe/a.b5(1,ee.lat),ot=this.scaleZoom(Xe/this.tileSize);this._elevation=le,this._center=ee,this.zoom=ot}setLocationAtPoint(w,B){let Q=this.pointCoordinate(B),ee=this.pointCoordinate(this.centerPoint),le=this.locationCoordinate(w),qe=new a.Z(le.x-(Q.x-ee.x),le.y-(Q.y-ee.y));this.center=this.coordinateLocation(qe),this._renderWorldCopies&&(this.center=this.center.wrap())}locationPoint(w,B){return B?this.coordinatePoint(this.locationCoordinate(w),B.getElevationForLngLatZoom(w,this.tileZoom),this.pixelMatrix3D):this.coordinatePoint(this.locationCoordinate(w))}pointLocation(w,B){return this.coordinateLocation(this.pointCoordinate(w,B))}locationCoordinate(w){return a.Z.fromLngLat(w)}coordinateLocation(w){return w&&w.toLngLat()}pointCoordinate(w,B){if(B){let xr=B.pointCoordinate(w);if(xr!=null)return xr}let Q=[w.x,w.y,0,1],ee=[w.x,w.y,1,1];a.af(Q,Q,this.pixelMatrixInverse),a.af(ee,ee,this.pixelMatrixInverse);let le=Q[3],qe=ee[3],Xe=Q[1]/le,ot=ee[1]/qe,Tt=Q[2]/le,Kt=ee[2]/qe,Jt=Tt===Kt?0:(0-Tt)/(Kt-Tt);return new a.Z(a.y.number(Q[0]/le,ee[0]/qe,Jt)/this.worldSize,a.y.number(Xe,ot,Jt)/this.worldSize)}coordinatePoint(w,B=0,Q=this.pixelMatrix){let ee=[w.x*this.worldSize,w.y*this.worldSize,B,1];return a.af(ee,ee,Q),new a.P(ee[0]/ee[3],ee[1]/ee[3])}getBounds(){let w=Math.max(0,this.height/2-this.getHorizon());return new ce().extend(this.pointLocation(new a.P(0,w))).extend(this.pointLocation(new a.P(this.width,w))).extend(this.pointLocation(new a.P(this.width,this.height))).extend(this.pointLocation(new a.P(0,this.height)))}getMaxBounds(){return this.latRange&&this.latRange.length===2&&this.lngRange&&this.lngRange.length===2?new ce([this.lngRange[0],this.latRange[0]],[this.lngRange[1],this.latRange[1]]):null}getHorizon(){return Math.tan(Math.PI/2-this._pitch)*this.cameraToCenterDistance*.85}setMaxBounds(w){w?(this.lngRange=[w.getWest(),w.getEast()],this.latRange=[w.getSouth(),w.getNorth()],this._constrain()):(this.lngRange=null,this.latRange=[-85.051129,_u])}calculateTileMatrix(w){let B=w.canonical,Q=this.worldSize/this.zoomScale(B.z),ee=B.x+Math.pow(2,B.z)*w.wrap,le=a.an(new Float64Array(16));return a.J(le,le,[ee*Q,B.y*Q,0]),a.K(le,le,[Q/a.X,Q/a.X,1]),le}calculatePosMatrix(w,B=!1){let Q=w.key,ee=B?this._alignedPosMatrixCache:this._posMatrixCache;if(ee[Q])return ee[Q];let le=this.calculateTileMatrix(w);return a.L(le,B?this.alignedModelViewProjectionMatrix:this.modelViewProjectionMatrix,le),ee[Q]=new Float32Array(le),ee[Q]}calculateFogMatrix(w){let B=w.key,Q=this._fogMatrixCache;if(Q[B])return Q[B];let ee=this.calculateTileMatrix(w);return a.L(ee,this.fogMatrix,ee),Q[B]=new Float32Array(ee),Q[B]}customLayerMatrix(){return this.mercatorMatrix.slice()}getConstrained(w,B){B=a.ac(+B,this.minZoom,this.maxZoom);let Q={center:new a.N(w.lng,w.lat),zoom:B},ee=this.lngRange;if(!this._renderWorldCopies&&ee===null){let We=179.9999999999;ee=[-We,We]}let le=this.tileSize*this.zoomScale(Q.zoom),qe=0,Xe=le,ot=0,Tt=le,Kt=0,Jt=0,{x:xr,y:Pr}=this.size;if(this.latRange){let We=this.latRange;qe=a.Q(We[1])*le,Xe=a.Q(We[0])*le,Xe-qe<Pr&&(Kt=Pr/(Xe-qe))}ee&&(ot=a.b3(a.O(ee[0])*le,0,le),Tt=a.b3(a.O(ee[1])*le,0,le),Tt<ot&&(Tt+=le),Tt-ot<xr&&(Jt=xr/(Tt-ot)));let{x:ve,y:be}=this.project.call({worldSize:le},w),Re,Be,tt=Math.max(Jt||0,Kt||0);if(tt){let We=new a.P(Jt?(Tt+ot)/2:ve,Kt?(Xe+qe)/2:be);return Q.center=this.unproject.call({worldSize:le},We).wrap(),Q.zoom+=this.scaleZoom(tt),Q}if(this.latRange){let We=Pr/2;be-We<qe&&(Be=qe+We),be+We>Xe&&(Be=Xe-We)}if(ee){let We=(ot+Tt)/2,it=ve;this._renderWorldCopies&&(it=a.b3(ve,We-le/2,We+le/2));let Dt=xr/2;it-Dt<ot&&(Re=ot+Dt),it+Dt>Tt&&(Re=Tt-Dt)}if(Re!==void 0||Be!==void 0){let We=new a.P(Re!=null?Re:ve,Be!=null?Be:be);Q.center=this.unproject.call({worldSize:le},We).wrap()}return Q}_constrain(){if(!this.center||!this.width||!this.height||this._constraining)return;this._constraining=!0;let w=this._unmodified,{center:B,zoom:Q}=this.getConstrained(this.center,this.zoom);this.center=B,this.zoom=Q,this._unmodified=w,this._constraining=!1}_calcMatrices(){if(!this.height)return;let w=this.centerOffset,B=this.point.x,Q=this.point.y;this.cameraToCenterDistance=.5/Math.tan(this._fov/2)*this.height,this._pixelPerMeter=a.b5(1,this.center.lat)*this.worldSize;let ee=a.an(new Float64Array(16));a.K(ee,ee,[this.width/2,-this.height/2,1]),a.J(ee,ee,[1,-1,0]),this.labelPlaneMatrix=ee,ee=a.an(new Float64Array(16)),a.K(ee,ee,[1,-1,1]),a.J(ee,ee,[-1,-1,0]),a.K(ee,ee,[2/this.width,2/this.height,1]),this.glCoordMatrix=ee;let le=this.cameraToCenterDistance+this._elevation*this._pixelPerMeter/Math.cos(this._pitch),qe=Math.min(this.elevation,this.minElevationForCurrentTile),Xe=le-qe*this._pixelPerMeter/Math.cos(this._pitch),ot=qe<0?Xe:le,Tt=Math.PI/2+this._pitch,Kt=this._fov*(.5+w.y/this.height),Jt=Math.sin(Kt)*ot/Math.sin(a.ac(Math.PI-Tt-Kt,.01,Math.PI-.01)),xr=this.getHorizon(),Pr=2*Math.atan(xr/this.cameraToCenterDistance)*(.5+w.y/(2*xr)),ve=Math.sin(Pr)*ot/Math.sin(a.ac(Math.PI-Tt-Pr,.01,Math.PI-.01)),be=Math.min(Jt,ve);this.farZ=1.01*(Math.cos(Math.PI/2-this._pitch)*be+ot),this.nearZ=this.height/50,ee=new Float64Array(16),a.b6(ee,this._fov,this.width/this.height,this.nearZ,this.farZ),ee[8]=2*-w.x/this.width,ee[9]=2*w.y/this.height,this.projectionMatrix=a.ae(ee),a.K(ee,ee,[1,-1,1]),a.J(ee,ee,[0,0,-this.cameraToCenterDistance]),a.b7(ee,ee,this._pitch),a.ad(ee,ee,this.angle),a.J(ee,ee,[-B,-Q,0]),this.mercatorMatrix=a.K([],ee,[this.worldSize,this.worldSize,this.worldSize]),a.K(ee,ee,[1,1,this._pixelPerMeter]),this.pixelMatrix=a.L(new Float64Array(16),this.labelPlaneMatrix,ee),a.J(ee,ee,[0,0,-this.elevation]),this.modelViewProjectionMatrix=ee,this.invModelViewProjectionMatrix=a.as([],ee),this.fogMatrix=new Float64Array(16),a.b6(this.fogMatrix,this._fov,this.width/this.height,le,this.farZ),this.fogMatrix[8]=2*-w.x/this.width,this.fogMatrix[9]=2*w.y/this.height,a.K(this.fogMatrix,this.fogMatrix,[1,-1,1]),a.J(this.fogMatrix,this.fogMatrix,[0,0,-this.cameraToCenterDistance]),a.b7(this.fogMatrix,this.fogMatrix,this._pitch),a.ad(this.fogMatrix,this.fogMatrix,this.angle),a.J(this.fogMatrix,this.fogMatrix,[-B,-Q,0]),a.K(this.fogMatrix,this.fogMatrix,[1,1,this._pixelPerMeter]),a.J(this.fogMatrix,this.fogMatrix,[0,0,-this.elevation]),this.pixelMatrix3D=a.L(new Float64Array(16),this.labelPlaneMatrix,ee);let Re=this.width%2/2,Be=this.height%2/2,tt=Math.cos(this.angle),We=Math.sin(this.angle),it=B-Math.round(B)+tt*Re+We*Be,Dt=Q-Math.round(Q)+tt*Be+We*Re,Ht=new Float64Array(ee);if(a.J(Ht,Ht,[it>.5?it-1:it,Dt>.5?Dt-1:Dt,0]),this.alignedModelViewProjectionMatrix=Ht,ee=a.as(new Float64Array(16),this.pixelMatrix),!ee)throw new Error("failed to invert matrix");this.pixelMatrixInverse=ee,this._posMatrixCache={},this._alignedPosMatrixCache={},this._fogMatrixCache={}}maxPitchScaleFactor(){if(!this.pixelMatrixInverse)return 1;let w=this.pointCoordinate(new a.P(0,0)),B=[w.x*this.worldSize,w.y*this.worldSize,0,1];return a.af(B,B,this.pixelMatrix)[3]/this.cameraToCenterDistance}getCameraPoint(){let w=Math.tan(this._pitch)*(this.cameraToCenterDistance||1);return this.centerPoint.add(new a.P(0,w))}getCameraQueryGeometry(w){let B=this.getCameraPoint();if(w.length===1)return[w[0],B];{let Q=B.x,ee=B.y,le=B.x,qe=B.y;for(let Xe of w)Q=Math.min(Q,Xe.x),ee=Math.min(ee,Xe.y),le=Math.max(le,Xe.x),qe=Math.max(qe,Xe.y);return[new a.P(Q,ee),new a.P(le,ee),new a.P(le,qe),new a.P(Q,qe),new a.P(Q,ee)]}}lngLatToCameraDepth(w,B){let Q=this.locationCoordinate(w),ee=[Q.x*this.worldSize,Q.y*this.worldSize,B,1];return a.af(ee,ee,this.modelViewProjectionMatrix),ee[2]/ee[3]}}function nh(ue,w){let B,Q=!1,ee=null,le=null,qe=()=>{ee=null,Q&&(ue.apply(le,B),ee=setTimeout(qe,w),Q=!1)};return(...Xe)=>(Q=!0,le=this,B=Xe,ee||qe(),ee)}class bh{constructor(w){this._getCurrentHash=()=>{let B=window.location.hash.replace("#","");if(this._hashName){let Q;return B.split("&").map(ee=>ee.split("=")).forEach(ee=>{ee[0]===this._hashName&&(Q=ee)}),(Q&&Q[1]||"").split("/")}return B.split("/")},this._onHashChange=()=>{let B=this._getCurrentHash();if(B.length>=3&&!B.some(Q=>isNaN(Q))){let Q=this._map.dragRotate.isEnabled()&&this._map.touchZoomRotate.isEnabled()?+(B[3]||0):this._map.getBearing();return this._map.jumpTo({center:[+B[2],+B[1]],zoom:+B[0],bearing:Q,pitch:+(B[4]||0)}),!0}return!1},this._updateHashUnthrottled=()=>{let B=window.location.href.replace(/(#.*)?$/,this.getHashString());window.history.replaceState(window.history.state,null,B)},this._removeHash=()=>{let B=this._getCurrentHash();if(B.length===0)return;let Q=B.join("/"),ee=Q;ee.split("&").length>0&&(ee=ee.split("&")[0]),this._hashName&&(ee=`${this._hashName}=${Q}`);let le=window.location.hash.replace(ee,"");le.startsWith("#&")?le=le.slice(0,1)+le.slice(2):le==="#"&&(le="");let qe=window.location.href.replace(/(#.+)?$/,le);qe=qe.replace("&&","&"),window.history.replaceState(window.history.state,null,qe)},this._updateHash=nh(this._updateHashUnthrottled,300),this._hashName=w&&encodeURIComponent(w)}addTo(w){return this._map=w,addEventListener("hashchange",this._onHashChange,!1),this._map.on("moveend",this._updateHash),this}remove(){return removeEventListener("hashchange",this._onHashChange,!1),this._map.off("moveend",this._updateHash),clearTimeout(this._updateHash()),this._removeHash(),delete this._map,this}getHashString(w){let B=this._map.getCenter(),Q=Math.round(100*this._map.getZoom())/100,ee=Math.ceil((Q*Math.LN2+Math.log(512/360/.5))/Math.LN10),le=Math.pow(10,ee),qe=Math.round(B.lng*le)/le,Xe=Math.round(B.lat*le)/le,ot=this._map.getBearing(),Tt=this._map.getPitch(),Kt="";if(Kt+=w?`/${qe}/${Xe}/${Q}`:`${Q}/${Xe}/${qe}`,(ot||Tt)&&(Kt+="/"+Math.round(10*ot)/10),Tt&&(Kt+=`/${Math.round(Tt)}`),this._hashName){let Jt=this._hashName,xr=!1,Pr=window.location.hash.slice(1).split("&").map(ve=>{let be=ve.split("=")[0];return be===Jt?(xr=!0,`${be}=${Kt}`):ve}).filter(ve=>ve);return xr||Pr.push(`${Jt}=${Kt}`),`#${Pr.join("&")}`}return`#${Kt}`}}let zu={linearity:.3,easing:a.b8(0,0,.3,1)},Fc=a.e({deceleration:2500,maxSpeed:1400},zu),wc=a.e({deceleration:20,maxSpeed:1400},zu),bd=a.e({deceleration:1e3,maxSpeed:360},zu),_f=a.e({deceleration:1e3,maxSpeed:90},zu);class Lf{constructor(w){this._map=w,this.clear()}clear(){this._inertiaBuffer=[]}record(w){this._drainInertiaBuffer(),this._inertiaBuffer.push({time:u.now(),settings:w})}_drainInertiaBuffer(){let w=this._inertiaBuffer,B=u.now();for(;w.length>0&&B-w[0].time>160;)w.shift()}_onMoveEnd(w){if(this._drainInertiaBuffer(),this._inertiaBuffer.length<2)return;let B={zoom:0,bearing:0,pitch:0,pan:new a.P(0,0),pinchAround:void 0,around:void 0};for(let{settings:le}of this._inertiaBuffer)B.zoom+=le.zoomDelta||0,B.bearing+=le.bearingDelta||0,B.pitch+=le.pitchDelta||0,le.panDelta&&B.pan._add(le.panDelta),le.around&&(B.around=le.around),le.pinchAround&&(B.pinchAround=le.pinchAround);let Q=this._inertiaBuffer[this._inertiaBuffer.length-1].time-this._inertiaBuffer[0].time,ee={};if(B.pan.mag()){let le=xf(B.pan.mag(),Q,a.e({},Fc,w||{}));ee.offset=B.pan.mult(le.amount/B.pan.mag()),ee.center=this._map.transform.center,Ou(ee,le)}if(B.zoom){let le=xf(B.zoom,Q,wc);ee.zoom=this._map.transform.zoom+le.amount,Ou(ee,le)}if(B.bearing){let le=xf(B.bearing,Q,bd);ee.bearing=this._map.transform.bearing+a.ac(le.amount,-179,179),Ou(ee,le)}if(B.pitch){let le=xf(B.pitch,Q,_f);ee.pitch=this._map.transform.pitch+le.amount,Ou(ee,le)}if(ee.zoom||ee.bearing){let le=B.pinchAround===void 0?B.around:B.pinchAround;ee.around=le?this._map.unproject(le):this._map.getCenter()}return this.clear(),a.e(ee,{noMoveStart:!0})}}function Ou(ue,w){(!ue.duration||ue.duration<w.duration)&&(ue.duration=w.duration,ue.easing=w.easing)}function xf(ue,w,B){let{maxSpeed:Q,linearity:ee,deceleration:le}=B,qe=a.ac(ue*ee/(w/1e3),-Q,Q),Xe=Math.abs(qe)/(le*ee);return{easing:B.easing,duration:1e3*Xe,amount:qe*(Xe/2)}}class jl extends a.k{preventDefault(){this._defaultPrevented=!0}get defaultPrevented(){return this._defaultPrevented}constructor(w,B,Q,ee={}){let le=c.mousePos(B.getCanvas(),Q),qe=B.unproject(le);super(w,a.e({point:le,lngLat:qe,originalEvent:Q},ee)),this._defaultPrevented=!1,this.target=B}}class lf extends a.k{preventDefault(){this._defaultPrevented=!0}get defaultPrevented(){return this._defaultPrevented}constructor(w,B,Q){let ee=w==="touchend"?Q.changedTouches:Q.touches,le=c.touchPos(B.getCanvasContainer(),ee),qe=le.map(ot=>B.unproject(ot)),Xe=le.reduce((ot,Tt,Kt,Jt)=>ot.add(Tt.div(Jt.length)),new a.P(0,0));super(w,{points:le,point:Xe,lngLats:qe,lngLat:B.unproject(Xe),originalEvent:Q}),this._defaultPrevented=!1}}class Vh extends a.k{preventDefault(){this._defaultPrevented=!0}get defaultPrevented(){return this._defaultPrevented}constructor(w,B,Q){super(w,{originalEvent:Q}),this._defaultPrevented=!1}}class Pf{constructor(w,B){this._map=w,this._clickTolerance=B.clickTolerance}reset(){delete this._mousedownPos}wheel(w){return this._firePreventable(new Vh(w.type,this._map,w))}mousedown(w,B){return this._mousedownPos=B,this._firePreventable(new jl(w.type,this._map,w))}mouseup(w){this._map.fire(new jl(w.type,this._map,w))}click(w,B){this._mousedownPos&&this._mousedownPos.dist(B)>=this._clickTolerance||this._map.fire(new jl(w.type,this._map,w))}dblclick(w){return this._firePreventable(new jl(w.type,this._map,w))}mouseover(w){this._map.fire(new jl(w.type,this._map,w))}mouseout(w){this._map.fire(new jl(w.type,this._map,w))}touchstart(w){return this._firePreventable(new lf(w.type,this._map,w))}touchmove(w){this._map.fire(new lf(w.type,this._map,w))}touchend(w){this._map.fire(new lf(w.type,this._map,w))}touchcancel(w){this._map.fire(new lf(w.type,this._map,w))}_firePreventable(w){if(this._map.fire(w),w.defaultPrevented)return{}}isEnabled(){return!0}isActive(){return!1}enable(){}disable(){}}class Ls{constructor(w){this._map=w}reset(){this._delayContextMenu=!1,this._ignoreContextMenu=!0,delete this._contextMenuEvent}mousemove(w){this._map.fire(new jl(w.type,this._map,w))}mousedown(){this._delayContextMenu=!0,this._ignoreContextMenu=!1}mouseup(){this._delayContextMenu=!1,this._contextMenuEvent&&(this._map.fire(new jl("contextmenu",this._map,this._contextMenuEvent)),delete this._contextMenuEvent)}contextmenu(w){this._delayContextMenu?this._contextMenuEvent=w:this._ignoreContextMenu||this._map.fire(new jl(w.type,this._map,w)),this._map.listens("contextmenu")&&w.preventDefault()}isEnabled(){return!0}isActive(){return!1}enable(){}disable(){}}class vu{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 Cu{constructor(w,B){this._map=w,this._tr=new vu(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 le=Math.min(ee.x,Q.x),qe=Math.max(ee.x,Q.x),Xe=Math.min(ee.y,Q.y),ot=Math.max(ee.y,Q.y);c.setTransform(this._box,`translate(${le}px,${Xe}px)`),this._box.style.width=qe-le+"px",this._box.style.height=ot-Xe+"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:le=>le.fitScreenCoordinates(Q,ee,this._tr.bearing,{linear:!0})};this._fireEvent("boxzoomcancel",w)}keydown(w){this._active&&w.keyCode===27&&(this.reset(),this._fireEvent("boxzoomcancel",w))}reset(){this._active=!1,this._container.classList.remove("maplibregl-crosshair"),this._box&&(c.remove(this._box),this._box=null),c.enableDrag(),delete this._startPos,delete this._lastPos}_fireEvent(w,B){return this._map.fire(new a.k(w,{originalEvent:B}))}}function Wf(ue,w){if(ue.length!==w.length)throw new Error(`The number of touches and points are not equal - touches ${ue.length}, points ${w.length}`);let B={};for(let Q=0;Q<ue.length;Q++)B[ue[Q].identifier]=w[Q];return B}class Vs{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 le=new a.P(0,0);for(let qe of ee)le._add(qe);return le.div(ee.length)}(B),this.touches=Wf(Q,B)))}touchmove(w,B,Q){if(this.aborted||!this.centroid)return;let ee=Wf(Q,B);for(let le in this.touches){let qe=ee[le];(!qe||qe.dist(this.touches[le])>30)&&(this.aborted=!0)}}touchend(w,B,Q){if((!this.centroid||w.timeStamp-this.startTime>500)&&(this.aborted=!0),Q.length===0){let ee=!this.aborted&&this.centroid;if(this.reset(),ee)return ee}}}class bf{constructor(w){this.singleTap=new Vs(w),this.numTaps=w.numTaps,this.reset()}reset(){this.lastTime=1/0,delete this.lastTap,this.count=0,this.singleTap.reset()}touchstart(w,B,Q){this.singleTap.touchstart(w,B,Q)}touchmove(w,B,Q){this.singleTap.touchmove(w,B,Q)}touchend(w,B,Q){let ee=this.singleTap.touchend(w,B,Q);if(ee){let le=w.timeStamp-this.lastTime<500,qe=!this.lastTap||this.lastTap.dist(ee)<30;if(le&&qe||this.reset(),this.count++,this.lastTime=w.timeStamp,this.lastTap=ee,this.count===this.numTaps)return this.reset(),ee}}}class zc{constructor(w){this._tr=new vu(w),this._zoomIn=new bf({numTouches:1,numTaps:2}),this._zoomOut=new bf({numTouches:2,numTaps:1}),this.reset()}reset(){this._active=!1,this._zoomIn.reset(),this._zoomOut.reset()}touchstart(w,B,Q){this._zoomIn.touchstart(w,B,Q),this._zoomOut.touchstart(w,B,Q)}touchmove(w,B,Q){this._zoomIn.touchmove(w,B,Q),this._zoomOut.touchmove(w,B,Q)}touchend(w,B,Q){let ee=this._zoomIn.touchend(w,B,Q),le=this._zoomOut.touchend(w,B,Q),qe=this._tr;return ee?(this._active=!0,w.preventDefault(),setTimeout(()=>this.reset(),0),{cameraAnimation:Xe=>Xe.easeTo({duration:300,zoom:qe.zoom+1,around:qe.unproject(ee)},{originalEvent:w})}):le?(this._active=!0,w.preventDefault(),setTimeout(()=>this.reset(),0),{cameraAnimation:Xe=>Xe.easeTo({duration:300,zoom:qe.zoom-1,around:qe.unproject(le)},{originalEvent:w})}):void 0}touchcancel(){this.reset()}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class Wu{constructor(w){this._enabled=!!w.enable,this._moveStateManager=w.moveStateManager,this._clickTolerance=w.clickTolerance||1,this._moveFunction=w.move,this._activateOnStart=!!w.activateOnStart,w.assignEvents(this),this.reset()}reset(w){this._active=!1,this._moved=!1,delete this._lastPoint,this._moveStateManager.endMove(w)}_move(...w){let B=this._moveFunction(...w);if(B.bearingDelta||B.pitchDelta||B.around||B.panDelta)return this._active=!0,B}dragStart(w,B){this.isEnabled()&&!this._lastPoint&&this._moveStateManager.isValidStartEvent(w)&&(this._moveStateManager.startMove(w),this._lastPoint=B.length?B[0]:B,this._activateOnStart&&this._lastPoint&&(this._active=!0))}dragMove(w,B){if(!this.isEnabled())return;let Q=this._lastPoint;if(!Q)return;if(w.preventDefault(),!this._moveStateManager.isValidMoveEvent(w))return void this.reset(w);let ee=B.length?B[0]:B;return!this._moved&&ee.dist(Q)<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 If={0:1,2:2};class Xu{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=If[Q];return B.buttons===void 0||(B.buttons&ee)!==ee}(w,this._eventButton)}isValidEndEvent(w){return c.mouseButton(w)===this._eventButton}}class uf{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 Xf=ue=>{ue.mousedown=ue.dragStart,ue.mousemoveWindow=ue.dragMove,ue.mouseup=ue.dragEnd,ue.contextmenu=w=>{w.preventDefault()}},Wl=({enable:ue,clickTolerance:w,bearingDegreesPerPixelMoved:B=.8})=>{let Q=new Xu({checkCorrectEvent:ee=>c.mouseButton(ee)===0&&ee.ctrlKey||c.mouseButton(ee)===2});return new Wu({clickTolerance:w,move:(ee,le)=>({bearingDelta:(le.x-ee.x)*B}),moveStateManager:Q,enable:ue,assignEvents:Xf})},ah=({enable:ue,clickTolerance:w,pitchDegreesPerPixelMoved:B=-.5})=>{let Q=new Xu({checkCorrectEvent:ee=>c.mouseButton(ee)===0&&ee.ctrlKey||c.mouseButton(ee)===2});return new Wu({clickTolerance:w,move:(ee,le)=>({pitchDelta:(le.y-ee.y)*B}),moveStateManager:Q,enable:ue,assignEvents:Xf})};class Zu{constructor(w,B){this._clickTolerance=w.clickTolerance||1,this._map=B,this.reset()}reset(){this._active=!1,this._touches={},this._sum=new a.P(0,0)}_shouldBePrevented(w){return w<(this._map.cooperativeGestures.isEnabled()?2:1)}touchstart(w,B,Q){return this._calculateTransform(w,B,Q)}touchmove(w,B,Q){if(this._active){if(!this._shouldBePrevented(Q.length))return w.preventDefault(),this._calculateTransform(w,B,Q);this._map.cooperativeGestures.notifyGestureBlocked("touch_pan",w)}}touchend(w,B,Q){this._calculateTransform(w,B,Q),this._active&&this._shouldBePrevented(Q.length)&&this.reset()}touchcancel(){this.reset()}_calculateTransform(w,B,Q){Q.length>0&&(this._active=!0);let ee=Wf(Q,B),le=new a.P(0,0),qe=new a.P(0,0),Xe=0;for(let Tt in ee){let Kt=ee[Tt],Jt=this._touches[Tt];Jt&&(le._add(Kt),qe._add(Kt.sub(Jt)),Xe++,ee[Tt]=Kt)}if(this._touches=ee,this._shouldBePrevented(Xe)||!qe.mag())return;let ot=qe.div(Xe);return this._sum._add(ot),this._sum.mag()<this._clickTolerance?void 0:{around:le.div(Xe),panDelta:ot}}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class Oc{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,le]=this._firstTwoTouches,qe=Tc(Q,B,ee),Xe=Tc(Q,B,le);if(!qe||!Xe)return;let ot=this._aroundCenter?null:qe.add(Xe).div(2);return this._move([qe,Xe],ot,w)}touchend(w,B,Q){if(!this._firstTwoTouches)return;let[ee,le]=this._firstTwoTouches,qe=Tc(Q,B,ee),Xe=Tc(Q,B,le);qe&&Xe||(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 Tc(ue,w,B){for(let Q=0;Q<ue.length;Q++)if(ue[Q].identifier===B)return w[Q]}function wl(ue,w){return Math.log(ue/w)/Math.LN2}class pu extends Oc{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(wl(this._distance,this._startDistance))<.1))return this._active=!0,{zoomDelta:wl(this._distance,Q),pinchAround:B}}}function qc(ue,w){return 180*ue.angleWith(w)/Math.PI}class cf extends Oc{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:qc(this._vector,ee),pinchAround:B}}_isBelowThreshold(w){this._minDiameter=Math.min(this._minDiameter,w.mag());let B=25/(Math.PI*this._minDiameter)*360,Q=qc(w,this._startVector);return Math.abs(Q)<B}}function fc(ue){return Math.abs(ue.y)>Math.abs(ue.x)}class Bc extends Oc{constructor(w){super(),this._currentTouchCount=0,this._map=w}reset(){super.reset(),this._valid=void 0,delete this._firstMove,delete this._lastPoints}touchstart(w,B,Q){super.touchstart(w,B,Q),this._currentTouchCount=Q.length}_start(w){this._lastPoints=w,fc(w[0].sub(w[1]))&&(this._valid=!1)}_move(w,B,Q){if(this._map.cooperativeGestures.isEnabled()&&this._currentTouchCount<3)return;let ee=w[0].sub(this._lastPoints[0]),le=w[1].sub(this._lastPoints[1]);return this._valid=this.gestureBeginsVertically(ee,le,Q.timeStamp),this._valid?(this._lastPoints=w,this._active=!0,{pitchDelta:(ee.y+le.y)/2*-.5}):void 0}gestureBeginsVertically(w,B,Q){if(this._valid!==void 0)return this._valid;let ee=w.mag()>=2,le=B.mag()>=2;if(!ee&&!le)return;if(!ee||!le)return this._firstMove===void 0&&(this._firstMove=Q),Q-this._firstMove<100&&void 0;let qe=w.y>0==B.y>0;return fc(w)&&fc(B)&&qe}}let At={panStep:100,bearingStep:15,pitchStep:10};class Xt{constructor(w){this._tr=new vu(w);let B=At;this._panStep=B.panStep,this._bearingStep=B.bearingStep,this._pitchStep=B.pitchStep,this._rotationDisabled=!1}reset(){this._active=!1}keydown(w){if(w.altKey||w.ctrlKey||w.metaKey)return;let B=0,Q=0,ee=0,le=0,qe=0;switch(w.keyCode){case 61:case 107:case 171:case 187:B=1;break;case 189:case 109:case 173:B=-1;break;case 37:w.shiftKey?Q=-1:(w.preventDefault(),le=-1);break;case 39:w.shiftKey?Q=1:(w.preventDefault(),le=1);break;case 38:w.shiftKey?ee=1:(w.preventDefault(),qe=-1);break;case 40:w.shiftKey?ee=-1:(w.preventDefault(),qe=1);break;default:return}return this._rotationDisabled&&(Q=0,ee=0),{cameraAnimation:Xe=>{let ot=this._tr;Xe.easeTo({duration:300,easeId:"keyboardHandler",easing:kr,zoom:B?Math.round(ot.zoom)+B*(w.shiftKey?2:1):ot.zoom,bearing:ot.bearing+Q*this._bearingStep,pitch:ot.pitch+ee*this._pitchStep,offset:[-le*this._panStep,-qe*this._panStep],center:ot.center},{originalEvent:w})}}}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}disableRotation(){this._rotationDisabled=!0}enableRotation(){this._rotationDisabled=!1}}function kr(ue){return ue*(2-ue)}let Ar=4.000244140625;class Kr{constructor(w,B){this._onTimeout=Q=>{this._type="wheel",this._delta-=this._lastValue,this._active||this._start(Q)},this._map=w,this._tr=new vu(w),this._triggerRenderFrame=B,this._delta=0,this._defaultZoomRate=.01,this._wheelZoomRate=.0022222222222222222}setZoomRate(w){this._defaultZoomRate=w}setWheelZoomRate(w){this._wheelZoomRate=w}isEnabled(){return!!this._enabled}isActive(){return!!this._active||this._finishTimeout!==void 0}isZooming(){return!!this._zooming}enable(w){this.isEnabled()||(this._enabled=!0,this._aroundCenter=!!w&&w.around==="center")}disable(){this.isEnabled()&&(this._enabled=!1)}_shouldBePrevented(w){return!!this._map.cooperativeGestures.isEnabled()&&!(w.ctrlKey||this._map.cooperativeGestures.isBypassed(w))}wheel(w){if(!this.isEnabled())return;if(this._shouldBePrevented(w))return void this._map.cooperativeGestures.notifyGestureBlocked("wheel_zoom",w);let B=w.deltaMode===WheelEvent.DOM_DELTA_LINE?40*w.deltaY:w.deltaY,Q=u.now(),ee=Q-(this._lastWheelEventTime||0);this._lastWheelEventTime=Q,B!==0&&B%Ar==0?this._type="wheel":B!==0&&Math.abs(B)<4?this._type="trackpad":ee>400?(this._type=null,this._lastValue=B,this._timeout=setTimeout(this._onTimeout,40,w)):this._type||(this._type=Math.abs(ee*B)<200?"trackpad":"wheel",this._timeout&&(clearTimeout(this._timeout),this._timeout=null,B+=this._lastValue)),w.shiftKey&&B&&(B/=4),this._type&&(this._lastWheelEvent=w,this._delta-=B,this._active||this._start(w)),w.preventDefault()}_start(w){if(!this._delta)return;this._frameId&&(this._frameId=null),this._active=!0,this.isZooming()||(this._zooming=!0),this._finishTimeout&&(clearTimeout(this._finishTimeout),delete this._finishTimeout);let B=c.mousePos(this._map.getCanvas(),w),Q=this._tr;this._around=B.y>Q.transform.height/2-Q.transform.getHorizon()?a.N.convert(this._aroundCenter?Q.center:Q.unproject(B)):a.N.convert(Q.center),this._aroundPoint=Q.transform.locationPoint(this._around),this._frameId||(this._frameId=!0,this._triggerRenderFrame())}renderFrame(){if(!this._frameId||(this._frameId=null,!this.isActive()))return;let w=this._tr.transform;if(this._delta!==0){let ot=this._type==="wheel"&&Math.abs(this._delta)>Ar?this._wheelZoomRate:this._defaultZoomRate,Tt=2/(1+Math.exp(-Math.abs(this._delta*ot)));this._delta<0&&Tt!==0&&(Tt=1/Tt);let Kt=typeof this._targetZoom=="number"?w.zoomScale(this._targetZoom):w.scale;this._targetZoom=Math.min(w.maxZoom,Math.max(w.minZoom,w.scaleZoom(Kt*Tt))),this._type==="wheel"&&(this._startZoom=w.zoom,this._easing=this._smoothOutEasing(200)),this._delta=0}let B=typeof this._targetZoom=="number"?this._targetZoom:w.zoom,Q=this._startZoom,ee=this._easing,le,qe=!1,Xe=u.now()-this._lastWheelEventTime;if(this._type==="wheel"&&Q&&ee&&Xe){let ot=Math.min(Xe/200,1),Tt=ee(ot);le=a.y.number(Q,B,Tt),ot<1?this._frameId||(this._frameId=!0):qe=!0}else le=B,qe=!0;return this._active=!0,qe&&(this._active=!1,this._finishTimeout=setTimeout(()=>{this._zooming=!1,this._triggerRenderFrame(),delete this._targetZoom,delete this._finishTimeout},200)),{noInertia:!0,needsRenderFrame:!qe,zoomDelta:le-w.zoom,around:this._aroundPoint,originalEvent:this._lastWheelEvent}}_smoothOutEasing(w){let B=a.b9;if(this._prevEase){let Q=this._prevEase,ee=(u.now()-Q.start)/Q.duration,le=Q.easing(ee+.01)-Q.easing(ee),qe=.27/Math.sqrt(le*le+1e-4)*.01,Xe=Math.sqrt(.0729-qe*qe);B=a.b8(qe,Xe,.25,1)}return this._prevEase={start:u.now(),duration:w,easing:B},B}reset(){this._active=!1,this._zooming=!1,delete this._targetZoom,this._finishTimeout&&(clearTimeout(this._finishTimeout),delete this._finishTimeout)}}class Ei{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 Wi{constructor(w){this._tr=new vu(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 hn{constructor(){this._tap=new bf({numTouches:1,numTaps:1}),this.reset()}reset(){this._active=!1,delete this._swipePoint,delete this._swipeTouch,delete this._tapTime,delete this._tapPoint,this._tap.reset()}touchstart(w,B,Q){if(!this._swipePoint)if(this._tapTime){let ee=B[0],le=w.timeStamp-this._tapTime<500,qe=this._tapPoint.dist(ee)<30;le&&qe?Q.length>0&&(this._swipePoint=ee,this._swipeTouch=Q[0].identifier):this.reset()}else this._tap.touchstart(w,B,Q)}touchmove(w,B,Q){if(this._tapTime){if(this._swipePoint){if(Q[0].identifier!==this._swipeTouch)return;let ee=B[0],le=ee.y-this._swipePoint.y;return this._swipePoint=ee,w.preventDefault(),this._active=!0,{zoomDelta:le/128}}}else this._tap.touchmove(w,B,Q)}touchend(w,B,Q){if(this._tapTime)this._swipePoint&&Q.length===0&&this.reset();else{let ee=this._tap.touchend(w,B,Q);ee&&(this._tapTime=w.timeStamp,this._tapPoint=ee)}}touchcancel(){this.reset()}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class Tn{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 Bn{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 Zi{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 $i{constructor(w,B){this._bypassKey=navigator.userAgent.indexOf("Mac")!==-1?"metaKey":"ctrlKey",this._map=w,this._options=B,this._enabled=!1}isActive(){return!1}reset(){}_setupUI(){if(this._container)return;let w=this._map.getCanvasContainer();w.classList.add("maplibregl-cooperative-gestures"),this._container=c.create("div","maplibregl-cooperative-gesture-screen",w);let B=this._map._getUIString("CooperativeGesturesHandler.WindowsHelpText");this._bypassKey==="metaKey"&&(B=this._map._getUIString("CooperativeGesturesHandler.MacHelpText"));let Q=this._map._getUIString("CooperativeGesturesHandler.MobileHelpText"),ee=document.createElement("div");ee.className="maplibregl-desktop-message",ee.textContent=B,this._container.appendChild(ee);let le=document.createElement("div");le.className="maplibregl-mobile-message",le.textContent=Q,this._container.appendChild(le),this._container.setAttribute("aria-hidden","true")}_destroyUI(){this._container&&(c.remove(this._container),this._map.getCanvasContainer().classList.remove("maplibregl-cooperative-gestures")),delete this._container}enable(){this._setupUI(),this._enabled=!0}disable(){this._enabled=!1,this._destroyUI()}isEnabled(){return this._enabled}isBypassed(w){return w[this._bypassKey]}notifyGestureBlocked(w,B){this._enabled&&(this._map.fire(new a.k("cooperativegestureprevented",{gestureType:w,originalEvent:B})),this._container.classList.add("maplibregl-show"),setTimeout(()=>{this._container.classList.remove("maplibregl-show")},100))}}let an=ue=>ue.zoom||ue.drag||ue.pitch||ue.rotate;class Di extends a.k{}function $n(ue){return ue.panDelta&&ue.panDelta.mag()||ue.zoomDelta||ue.bearingDelta||ue.pitchDelta}class ka{constructor(w,B){this.handleWindowEvent=ee=>{this.handleEvent(ee,`${ee.type}Window`)},this.handleEvent=(ee,le)=>{if(ee.type==="blur")return void this.stop(!0);this._updatingCamera=!0;let qe=ee.type==="renderFrame"?void 0:ee,Xe={needsRenderFrame:!1},ot={},Tt={},Kt=ee.touches,Jt=Kt?this._getMapTouches(Kt):void 0,xr=Jt?c.touchPos(this._map.getCanvas(),Jt):c.mousePos(this._map.getCanvas(),ee);for(let{handlerName:be,handler:Re,allowed:Be}of this._handlers){if(!Re.isEnabled())continue;let tt;this._blockedByActive(Tt,Be,be)?Re.reset():Re[le||ee.type]&&(tt=Re[le||ee.type](ee,xr,Jt),this.mergeHandlerResult(Xe,ot,tt,be,qe),tt&&tt.needsRenderFrame&&this._triggerRenderFrame()),(tt||Re.isActive())&&(Tt[be]=Re)}let Pr={};for(let be in this._previousActiveHandlers)Tt[be]||(Pr[be]=qe);this._previousActiveHandlers=Tt,(Object.keys(Pr).length||$n(Xe))&&(this._changes.push([Xe,ot,Pr]),this._triggerRenderFrame()),(Object.keys(Tt).length||$n(Xe))&&this._map._stop(!0),this._updatingCamera=!1;let{cameraAnimation:ve}=Xe;ve&&(this._inertia.clear(),this._fireEvents({},{},!0),this._changes=[],ve(this._map))},this._map=w,this._el=this._map.getCanvasContainer(),this._handlers=[],this._handlersById={},this._changes=[],this._inertia=new Lf(w),this._bearingSnap=B.bearingSnap,this._previousActiveHandlers={},this._eventsInProgress={},this._addDefaultHandlers(B);let Q=this._el;this._listeners=[[Q,"touchstart",{passive:!0}],[Q,"touchmove",{passive:!1}],[Q,"touchend",void 0],[Q,"touchcancel",void 0],[Q,"mousedown",void 0],[Q,"mousemove",void 0],[Q,"mouseup",void 0],[document,"mousemove",{capture:!0}],[document,"mouseup",void 0],[Q,"mouseover",void 0],[Q,"mouseout",void 0],[Q,"dblclick",void 0],[Q,"click",void 0],[Q,"keydown",{capture:!1}],[Q,"keyup",void 0],[Q,"wheel",{passive:!1}],[Q,"contextmenu",void 0],[window,"blur",void 0]];for(let[ee,le,qe]of this._listeners)c.addEventListener(ee,le,ee===document?this.handleWindowEvent:this.handleEvent,qe)}destroy(){for(let[w,B,Q]of this._listeners)c.removeEventListener(w,B,w===document?this.handleWindowEvent:this.handleEvent,Q)}_addDefaultHandlers(w){let B=this._map,Q=B.getCanvasContainer();this._add("mapEvent",new Pf(B,w));let ee=B.boxZoom=new Cu(B,w);this._add("boxZoom",ee),w.interactive&&w.boxZoom&&ee.enable();let le=B.cooperativeGestures=new $i(B,w.cooperativeGestures);this._add("cooperativeGestures",le),w.cooperativeGestures&&le.enable();let qe=new zc(B),Xe=new Wi(B);B.doubleClickZoom=new Ei(Xe,qe),this._add("tapZoom",qe),this._add("clickZoom",Xe),w.interactive&&w.doubleClickZoom&&B.doubleClickZoom.enable();let ot=new hn;this._add("tapDragZoom",ot);let Tt=B.touchPitch=new Bc(B);this._add("touchPitch",Tt),w.interactive&&w.touchPitch&&B.touchPitch.enable(w.touchPitch);let Kt=Wl(w),Jt=ah(w);B.dragRotate=new Bn(w,Kt,Jt),this._add("mouseRotate",Kt,["mousePitch"]),this._add("mousePitch",Jt,["mouseRotate"]),w.interactive&&w.dragRotate&&B.dragRotate.enable();let xr=(({enable:tt,clickTolerance:We})=>{let it=new Xu({checkCorrectEvent:Dt=>c.mouseButton(Dt)===0&&!Dt.ctrlKey});return new Wu({clickTolerance:We,move:(Dt,Ht)=>({around:Ht,panDelta:Ht.sub(Dt)}),activateOnStart:!0,moveStateManager:it,enable:tt,assignEvents:Xf})})(w),Pr=new Zu(w,B);B.dragPan=new Tn(Q,xr,Pr),this._add("mousePan",xr),this._add("touchPan",Pr,["touchZoom","touchRotate"]),w.interactive&&w.dragPan&&B.dragPan.enable(w.dragPan);let ve=new cf,be=new pu;B.touchZoomRotate=new Zi(Q,be,ve,ot),this._add("touchRotate",ve,["touchPan","touchZoom"]),this._add("touchZoom",be,["touchPan","touchRotate"]),w.interactive&&w.touchZoomRotate&&B.touchZoomRotate.enable(w.touchZoomRotate);let Re=B.scrollZoom=new Kr(B,()=>this._triggerRenderFrame());this._add("scrollZoom",Re,["mousePan"]),w.interactive&&w.scrollZoom&&B.scrollZoom.enable(w.scrollZoom);let Be=B.keyboard=new Xt(B);this._add("keyboard",Be),w.interactive&&w.keyboard&&B.keyboard.enable(),this._add("blockableMapEvent",new Ls(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!!an(this._eventsInProgress)||this.isZooming()}_blockedByActive(w,B,Q){for(let ee in w)if(ee!==Q&&(!B||B.indexOf(ee)<0))return!0;return!1}_getMapTouches(w){let B=[];for(let Q of w)this._el.contains(Q.target)&&B.push(Q);return B}mergeHandlerResult(w,B,Q,ee,le){if(!Q)return;a.e(w,Q);let qe={handlerName:ee,originalEvent:Q.originalEvent||le};Q.zoomDelta!==void 0&&(B.zoom=qe),Q.panDelta!==void 0&&(B.drag=qe),Q.pitchDelta!==void 0&&(B.pitch=qe),Q.bearingDelta!==void 0&&(B.rotate=qe)}_applyChanges(){let w={},B={},Q={};for(let[ee,le,qe]of this._changes)ee.panDelta&&(w.panDelta=(w.panDelta||new a.P(0,0))._add(ee.panDelta)),ee.zoomDelta&&(w.zoomDelta=(w.zoomDelta||0)+ee.zoomDelta),ee.bearingDelta&&(w.bearingDelta=(w.bearingDelta||0)+ee.bearingDelta),ee.pitchDelta&&(w.pitchDelta=(w.pitchDelta||0)+ee.pitchDelta),ee.around!==void 0&&(w.around=ee.around),ee.pinchAround!==void 0&&(w.pinchAround=ee.pinchAround),ee.noInertia&&(w.noInertia=ee.noInertia),a.e(B,le),a.e(Q,qe);this._updateMapTransform(w,B,Q),this._changes=[]}_updateMapTransform(w,B,Q){let ee=this._map,le=ee._getTransformForUpdate(),qe=ee.terrain;if(!($n(w)||qe&&this._terrainMovement))return this._fireEvents(B,Q,!0);let{panDelta:Xe,zoomDelta:ot,bearingDelta:Tt,pitchDelta:Kt,around:Jt,pinchAround:xr}=w;xr!==void 0&&(Jt=xr),ee._stop(!0),Jt=Jt||ee.transform.centerPoint;let Pr=le.pointLocation(Xe?Jt.sub(Xe):Jt);Tt&&(le.bearing+=Tt),Kt&&(le.pitch+=Kt),ot&&(le.zoom+=ot),qe?this._terrainMovement||!B.drag&&!B.zoom?B.drag&&this._terrainMovement?le.center=le.pointLocation(le.centerPoint.sub(Xe)):le.setLocationAtPoint(Pr,Jt):(this._terrainMovement=!0,this._map._elevationFreeze=!0,le.setLocationAtPoint(Pr,Jt)):le.setLocationAtPoint(Pr,Jt),ee._applyUpdatedTransform(le),this._map._update(),w.noInertia||this._inertia.record(w),this._fireEvents(B,Q,!0)}_fireEvents(w,B,Q){let ee=an(this._eventsInProgress),le=an(w),qe={};for(let Jt in w){let{originalEvent:xr}=w[Jt];this._eventsInProgress[Jt]||(qe[`${Jt}start`]=xr),this._eventsInProgress[Jt]=w[Jt]}!ee&&le&&this._fireEvent("movestart",le.originalEvent);for(let Jt in qe)this._fireEvent(Jt,qe[Jt]);le&&this._fireEvent("move",le.originalEvent);for(let Jt in w){let{originalEvent:xr}=w[Jt];this._fireEvent(Jt,xr)}let Xe={},ot;for(let Jt in this._eventsInProgress){let{handlerName:xr,originalEvent:Pr}=this._eventsInProgress[Jt];this._handlersById[xr].isActive()||(delete this._eventsInProgress[Jt],ot=B[xr]||Pr,Xe[`${Jt}end`]=ot)}for(let Jt in Xe)this._fireEvent(Jt,Xe[Jt]);let Tt=an(this._eventsInProgress),Kt=(ee||le)&&!Tt;if(Kt&&this._terrainMovement){this._map._elevationFreeze=!1,this._terrainMovement=!1;let Jt=this._map._getTransformForUpdate();Jt.recalculateZoom(this._map.terrain),this._map._applyUpdatedTransform(Jt)}if(Q&&Kt){this._updatingCamera=!0;let Jt=this._inertia._onMoveEnd(this._map.dragPan._inertiaOptions),xr=Pr=>Pr!==0&&-this._bearingSnap<Pr&&Pr<this._bearingSnap;!Jt||!Jt.essential&&u.prefersReducedMotion?(this._map.fire(new a.k("moveend",{originalEvent:ot})),xr(this._map.getBearing())&&this._map.resetNorth()):(xr(Jt.bearing||this._map.getBearing())&&(Jt.bearing=0),Jt.freezeElevation=!0,this._map.easeTo(Jt,{originalEvent:ot})),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 Di("renderFrame",{timeStamp:w})),this._applyChanges()})}_triggerRenderFrame(){this._frameId===void 0&&(this._frameId=this._requestFrame())}}class Ra extends a.E{constructor(w,B){super(),this._renderFrameCallback=()=>{let Q=Math.min((u.now()-this._easeStart)/this._easeOptions.duration,1);this._onEaseFrame(this._easeOptions.easing(Q)),Q<1&&this._easeFrameId?this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback):this.stop()},this._moving=!1,this._zooming=!1,this.transform=w,this._bearingSnap=B.bearingSnap,this.on("moveend",()=>{delete this._requestedCameraState})}getCenter(){return new a.N(this.transform.center.lng,this.transform.center.lat)}setCenter(w,B){return this.jumpTo({center:w},B)}panBy(w,B,Q){return w=a.P.convert(w).mult(-1),this.panTo(this.transform.center,a.e({offset:w},B),Q)}panTo(w,B,Q){return this.easeTo(a.e({center:w},B),Q)}getZoom(){return this.transform.zoom}setZoom(w,B){return this.jumpTo({zoom:w},B),this}zoomTo(w,B,Q){return this.easeTo(a.e({zoom:w},B),Q)}zoomIn(w,B){return this.zoomTo(this.getZoom()+1,w,B),this}zoomOut(w,B){return this.zoomTo(this.getZoom()-1,w,B),this}getBearing(){return this.transform.bearing}setBearing(w,B){return this.jumpTo({bearing:w},B),this}getPadding(){return this.transform.padding}setPadding(w,B){return this.jumpTo({padding:w},B),this}rotateTo(w,B,Q){return this.easeTo(a.e({bearing:w},B),Q)}resetNorth(w,B){return this.rotateTo(0,a.e({duration:1e3},w),B),this}resetNorthPitch(w,B){return this.easeTo(a.e({bearing:0,pitch:0,duration:1e3},w),B),this}snapToNorth(w,B){return Math.abs(this.getBearing())<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 le={top:0,bottom:0,right:0,left:0};if(typeof(ee=a.e({padding:le,offset:[0,0],maxZoom:this.transform.maxZoom},ee)).padding=="number"){let jr=ee.padding;ee.padding={top:jr,bottom:jr,right:jr,left:jr}}ee.padding=a.e(le,ee.padding);let qe=this.transform,Xe=qe.padding,ot=new ce(w,B),Tt=qe.project(ot.getNorthWest()),Kt=qe.project(ot.getNorthEast()),Jt=qe.project(ot.getSouthEast()),xr=qe.project(ot.getSouthWest()),Pr=a.ba(-Q),ve=Tt.rotate(Pr),be=Kt.rotate(Pr),Re=Jt.rotate(Pr),Be=xr.rotate(Pr),tt=new a.P(Math.max(ve.x,be.x,Be.x,Re.x),Math.max(ve.y,be.y,Be.y,Re.y)),We=new a.P(Math.min(ve.x,be.x,Be.x,Re.x),Math.min(ve.y,be.y,Be.y,Re.y)),it=tt.sub(We),Dt=(qe.width-(Xe.left+Xe.right+ee.padding.left+ee.padding.right))/it.x,Ht=(qe.height-(Xe.top+Xe.bottom+ee.padding.top+ee.padding.bottom))/it.y;if(Ht<0||Dt<0)return void a.w("Map cannot fit within canvas with the given bounds, padding, and/or offset.");let rr=Math.min(qe.scaleZoom(qe.scale*Math.min(Dt,Ht)),ee.maxZoom),dr=a.P.convert(ee.offset),Sr=new a.P((ee.padding.left-ee.padding.right)/2,(ee.padding.top-ee.padding.bottom)/2).rotate(a.ba(Q)),Or=dr.add(Sr).mult(qe.scale/qe.zoomScale(rr));return{center:qe.unproject(Tt.add(Jt).div(2).sub(Or)),zoom:rr,bearing:Q}}fitBounds(w,B,Q){return this._fitInternal(this.cameraForBounds(w,B),B,Q)}fitScreenCoordinates(w,B,Q,ee,le){return this._fitInternal(this._cameraForBoxAndBearing(this.transform.pointLocation(a.P.convert(w)),this.transform.pointLocation(a.P.convert(B)),Q,ee),ee,le)}_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,le=!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&&(le=!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)),le&&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 le=a.Z.fromLngLat(w,B),qe=a.Z.fromLngLat(Q,ee),Xe=qe.x-le.x,ot=qe.y-le.y,Tt=qe.z-le.z,Kt=Math.hypot(Xe,ot,Tt);if(Kt===0)throw new Error("Can't calculate camera options with same From and To");let Jt=Math.hypot(Xe,ot),xr=this.transform.scaleZoom(this.transform.cameraToCenterDistance/Kt/this.transform.tileSize),Pr=180*Math.atan2(Xe,-ot)/Math.PI,ve=180*Math.acos(Jt/Kt)/Math.PI;return ve=Tt<0?90-ve:90+ve,{center:qe.toLngLat(),zoom:xr,pitch:ve,bearing:Pr}}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(),le=ee.zoom,qe=ee.bearing,Xe=ee.pitch,ot=ee.padding,Tt="bearing"in w?this._normalizeBearing(w.bearing,qe):qe,Kt="pitch"in w?+w.pitch:Xe,Jt="padding"in w?w.padding:ee.padding,xr=a.P.convert(w.offset),Pr=ee.centerPoint.add(xr),ve=ee.pointLocation(Pr),{center:be,zoom:Re}=ee.getConstrained(a.N.convert(w.center||ve),(Q=w.zoom)!==null&&Q!==void 0?Q:le);this._normalizeCenter(be,ee);let Be=ee.project(ve),tt=ee.project(be).sub(Be),We=ee.zoomScale(Re-le),it,Dt;w.around&&(it=a.N.convert(w.around),Dt=ee.locationPoint(it));let Ht={moving:this._moving,zooming:this._zooming,rotating:this._rotating,pitching:this._pitching};return this._zooming=this._zooming||Re!==le,this._rotating=this._rotating||qe!==Tt,this._pitching=this._pitching||Kt!==Xe,this._padding=!ee.isPaddingEqual(Jt),this._easeId=w.easeId,this._prepareEase(B,w.noMoveStart,Ht),this.terrain&&this._prepareElevation(be),this._ease(rr=>{if(this._zooming&&(ee.zoom=a.y.number(le,Re,rr)),this._rotating&&(ee.bearing=a.y.number(qe,Tt,rr)),this._pitching&&(ee.pitch=a.y.number(Xe,Kt,rr)),this._padding&&(ee.interpolatePadding(ot,Jt,rr),Pr=ee.centerPoint.add(xr)),this.terrain&&!w.freezeElevation&&this._updateElevation(rr),it)ee.setLocationAtPoint(it,Dt);else{let dr=ee.zoomScale(ee.zoom-le),Sr=Re>le?Math.min(2,We):Math.max(.5,We),Or=Math.pow(Sr,1-rr),jr=ee.unproject(Be.add(tt.mult(rr*Or)).mult(dr));ee.setLocationAtPoint(ee.renderWorldCopies?jr.wrap():jr,Pr)}this._applyUpdatedTransform(ee),this._fireMoveEvents(B)},rr=>{this.terrain&&w.freezeElevation&&this._finalizeElevation(),this._afterEase(B,rr)},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 le=Q.clone(),{center:qe,zoom:Xe,pitch:ot,bearing:Tt,elevation:Kt}=ee(le);qe&&(le.center=qe),Xe!==void 0&&(le.zoom=Xe),ot!==void 0&&(le.pitch=ot),Tt!==void 0&&(le.bearing=Tt),Kt!==void 0&&(le.elevation=Kt),Q.apply(le)}this.transform.apply(Q)}_fireMoveEvents(w){this.fire(new a.k("move",w)),this._zooming&&this.fire(new a.k("zoom",w)),this._rotating&&this.fire(new a.k("rotate",w)),this._pitching&&this.fire(new a.k("pitch",w))}_afterEase(w,B){if(this._easeId&&B&&this._easeId===B)return;delete this._easeId;let Q=this._zooming,ee=this._rotating,le=this._pitching;this._moving=!1,this._zooming=!1,this._rotating=!1,this._pitching=!1,this._padding=!1,Q&&this.fire(new a.k("zoomend",w)),ee&&this.fire(new a.k("rotateend",w)),le&&this.fire(new a.k("pitchend",w)),this.fire(new a.k("moveend",w))}flyTo(w,B){var Q;if(!w.essential&&u.prefersReducedMotion){let In=a.M(w,["center","zoom","bearing","pitch","around"]);return this.jumpTo(In,B)}this.stop(),w=a.e({offset:[0,0],speed:1.2,curve:1.42,easing:a.b9},w);let ee=this._getTransformForUpdate(),le=ee.zoom,qe=ee.bearing,Xe=ee.pitch,ot=ee.padding,Tt="bearing"in w?this._normalizeBearing(w.bearing,qe):qe,Kt="pitch"in w?+w.pitch:Xe,Jt="padding"in w?w.padding:ee.padding,xr=a.P.convert(w.offset),Pr=ee.centerPoint.add(xr),ve=ee.pointLocation(Pr),{center:be,zoom:Re}=ee.getConstrained(a.N.convert(w.center||ve),(Q=w.zoom)!==null&&Q!==void 0?Q:le);this._normalizeCenter(be,ee);let Be=ee.zoomScale(Re-le),tt=ee.project(ve),We=ee.project(be).sub(tt),it=w.curve,Dt=Math.max(ee.width,ee.height),Ht=Dt/Be,rr=We.mag();if("minZoom"in w){let In=a.ac(Math.min(w.minZoom,le,Re),ee.minZoom,ee.maxZoom),Kn=Dt/ee.zoomScale(In-le);it=Math.sqrt(Kn/rr*2)}let dr=it*it;function Sr(In){let Kn=(Ht*Ht-Dt*Dt+(In?-1:1)*dr*dr*rr*rr)/(2*(In?Ht:Dt)*dr*rr);return Math.log(Math.sqrt(Kn*Kn+1)-Kn)}function Or(In){return(Math.exp(In)-Math.exp(-In))/2}function jr(In){return(Math.exp(In)+Math.exp(-In))/2}let ii=Sr(!1),Li=function(In){return jr(ii)/jr(ii+it*In)},un=function(In){return Dt*((jr(ii)*(Or(Kn=ii+it*In)/jr(Kn))-Or(ii))/dr)/rr;var Kn},sn=(Sr(!0)-ii)/it;if(Math.abs(rr)<1e-6||!isFinite(sn)){if(Math.abs(Dt-Ht)<1e-6)return this.easeTo(w,B);let In=Ht<Dt?-1:1;sn=Math.abs(Math.log(Ht/Dt))/it,un=()=>0,Li=Kn=>Math.exp(In*it*Kn)}return w.duration="duration"in w?+w.duration:1e3*sn/("screenSpeed"in w?+w.screenSpeed/it:+w.speed),w.maxDuration&&w.duration>w.maxDuration&&(w.duration=0),this._zooming=!0,this._rotating=qe!==Tt,this._pitching=Kt!==Xe,this._padding=!ee.isPaddingEqual(Jt),this._prepareEase(B,!1),this.terrain&&this._prepareElevation(be),this._ease(In=>{let Kn=In*sn,Aa=1/Li(Kn);ee.zoom=In===1?Re:le+ee.scaleZoom(Aa),this._rotating&&(ee.bearing=a.y.number(qe,Tt,In)),this._pitching&&(ee.pitch=a.y.number(Xe,Kt,In)),this._padding&&(ee.interpolatePadding(ot,Jt,In),Pr=ee.centerPoint.add(xr)),this.terrain&&!w.freezeElevation&&this._updateElevation(In);let fa=In===1?be:ee.unproject(tt.add(We.mult(un(Kn))).mult(Aa));ee.setLocationAtPoint(ee.renderWorldCopies?fa.wrap():fa,Pr),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 La={compact:!0,customAttribution:'<a href="https://maplibre.org/" target="_blank">MapLibre</a>'};class Na{constructor(w=La){this._toggleAttribution=()=>{this._container.classList.contains("maplibregl-compact")&&(this._container.classList.contains("maplibregl-compact-show")?(this._container.setAttribute("open",""),this._container.classList.remove("maplibregl-compact-show")):(this._container.classList.add("maplibregl-compact-show"),this._container.removeAttribute("open")))},this._updateData=B=>{!B||B.sourceDataType!=="metadata"&&B.sourceDataType!=="visibility"&&B.dataType!=="style"&&B.type!=="terrain"||this._updateAttributions()},this._updateCompact=()=>{this._map.getCanvasContainer().offsetWidth<=640||this._compact?this._compact===!1?this._container.setAttribute("open",""):this._container.classList.contains("maplibregl-compact")||this._container.classList.contains("maplibregl-attrib-empty")||(this._container.setAttribute("open",""),this._container.classList.add("maplibregl-compact","maplibregl-compact-show")):(this._container.setAttribute("open",""),this._container.classList.contains("maplibregl-compact")&&this._container.classList.remove("maplibregl-compact","maplibregl-compact-show"))},this._updateCompactMinimize=()=>{this._container.classList.contains("maplibregl-compact")&&this._container.classList.contains("maplibregl-compact-show")&&this._container.classList.remove("maplibregl-compact-show")},this.options=w}getDefaultPosition(){return"bottom-right"}onAdd(w){return this._map=w,this._compact=this.options.compact,this._container=c.create("details","maplibregl-ctrl maplibregl-ctrl-attrib"),this._compactButton=c.create("summary","maplibregl-ctrl-attrib-button",this._container),this._compactButton.addEventListener("click",this._toggleAttribution),this._setElementTitle(this._compactButton,"ToggleAttribution"),this._innerContainer=c.create("div","maplibregl-ctrl-attrib-inner",this._container),this._updateAttributions(),this._updateCompact(),this._map.on("styledata",this._updateData),this._map.on("sourcedata",this._updateData),this._map.on("terrain",this._updateData),this._map.on("resize",this._updateCompact),this._map.on("drag",this._updateCompactMinimize),this._container}onRemove(){c.remove(this._container),this._map.off("styledata",this._updateData),this._map.off("sourcedata",this._updateData),this._map.off("terrain",this._updateData),this._map.off("resize",this._updateCompact),this._map.off("drag",this._updateCompactMinimize),this._map=void 0,this._compact=void 0,this._attribHTML=void 0}_setElementTitle(w,B){let Q=this._map._getUIString(`AttributionControl.${B}`);w.title=Q,w.setAttribute("aria-label",Q)}_updateAttributions(){if(!this._map.style)return;let w=[];if(this.options.customAttribution&&(Array.isArray(this.options.customAttribution)?w=w.concat(this.options.customAttribution.map(ee=>typeof ee!="string"?"":ee)):typeof this.options.customAttribution=="string"&&w.push(this.options.customAttribution)),this._map.style.stylesheet){let ee=this._map.style.stylesheet;this.styleOwner=ee.owner,this.styleId=ee.id}let B=this._map.style.sourceCaches;for(let ee in B){let le=B[ee];if(le.used||le.usedForTerrain){let qe=le.getSource();qe.attribution&&w.indexOf(qe.attribution)<0&&w.push(qe.attribution)}}w=w.filter(ee=>String(ee).trim()),w.sort((ee,le)=>ee.length-le.length),w=w.filter((ee,le)=>{for(let qe=le+1;qe<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 Yn{constructor(w={}){this._updateCompact=()=>{let B=this._container.children;if(B.length){let Q=B[0];this._map.getCanvasContainer().offsetWidth<=640||this._compact?this._compact!==!1&&Q.classList.add("maplibregl-compact"):Q.classList.remove("maplibregl-compact")}},this.options=w}getDefaultPosition(){return"bottom-left"}onAdd(w){this._map=w,this._compact=this.options&&this.options.compact,this._container=c.create("div","maplibregl-ctrl");let B=c.create("a","maplibregl-ctrl-logo");return B.target="_blank",B.rel="noopener nofollow",B.href="https://maplibre.org/",B.setAttribute("aria-label",this._map._getUIString("LogoControl.Title")),B.setAttribute("rel","noopener nofollow"),this._container.appendChild(B),this._container.style.display="block",this._map.on("resize",this._updateCompact),this._updateCompact(),this._container}onRemove(){c.remove(this._container),this._map.off("resize",this._updateCompact),this._map=void 0,this._compact=void 0}}class zn{constructor(){this._queue=[],this._id=0,this._cleared=!1,this._currentlyRunning=!1}add(w){let B=++this._id;return this._queue.push({callback:w,id:B,cancelled:!1}),B}remove(w){let B=this._currentlyRunning,Q=B?this._queue.concat(B):this._queue;for(let ee of Q)if(ee.id===w)return void(ee.cancelled=!0)}run(w=0){if(this._currentlyRunning)throw new Error("Attempting to run(), but is already running.");let B=this._currentlyRunning=this._queue;this._queue=[];for(let Q of B)if(!Q.cancelled&&(Q.callback(w),this._cleared))break;this._cleared=!1,this._currentlyRunning=!1}clear(){this._currentlyRunning&&(this._cleared=!0),this._queue=[]}}var Ka=a.Y([{name:"a_pos3d",type:"Int16",components:3}]);class bo extends a.E{constructor(w){super(),this.sourceCache=w,this._tiles={},this._renderableTilesKeys=[],this._sourceTileCache={},this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.deltaZoom=1,w.usedForTerrain=!0,w.tileSize=this.tileSize*2**this.deltaZoom}destruct(){this.sourceCache.usedForTerrain=!1,this.sourceCache.tileSize=null}update(w,B){this.sourceCache.update(w,B),this._renderableTilesKeys=[];let Q={};for(let ee of w.coveringTiles({tileSize:this.tileSize,minzoom:this.minzoom,maxzoom:this.maxzoom,reparseOverscaled:!1,terrain:B}))Q[ee.key]=!0,this._renderableTilesKeys.push(ee.key),this._tiles[ee.key]||(ee.posMatrix=new Float64Array(16),a.aP(ee.posMatrix,0,a.X,0,a.X,0,1),this._tiles[ee.key]=new Ut(ee,this.tileSize));for(let ee in this._tiles)Q[ee]||delete this._tiles[ee]}freeRtt(w){for(let B in this._tiles){let Q=this._tiles[B];(!w||Q.tileID.equals(w)||Q.tileID.isChildOf(w)||w.isChildOf(Q.tileID))&&(Q.rtt=[])}}getRenderableTiles(){return this._renderableTilesKeys.map(w=>this.getTileByID(w))}getTileByID(w){return this._tiles[w]}getTerrainCoords(w){let B={};for(let Q of this._renderableTilesKeys){let ee=this._tiles[Q].tileID;if(ee.canonical.equals(w.canonical)){let le=w.clone();le.posMatrix=new Float64Array(16),a.aP(le.posMatrix,0,a.X,0,a.X,0,1),B[Q]=le}else if(ee.canonical.isChildOf(w.canonical)){let le=w.clone();le.posMatrix=new Float64Array(16);let qe=ee.canonical.z-w.canonical.z,Xe=ee.canonical.x-(ee.canonical.x>>qe<<qe),ot=ee.canonical.y-(ee.canonical.y>>qe<<qe),Tt=a.X>>qe;a.aP(le.posMatrix,0,Tt,0,Tt,0,1),a.J(le.posMatrix,le.posMatrix,[-Xe*Tt,-ot*Tt,0]),B[Q]=le}else if(w.canonical.isChildOf(ee.canonical)){let le=w.clone();le.posMatrix=new Float64Array(16);let qe=w.canonical.z-ee.canonical.z,Xe=w.canonical.x-(w.canonical.x>>qe<<qe),ot=w.canonical.y-(w.canonical.y>>qe<<qe),Tt=a.X>>qe;a.aP(le.posMatrix,0,a.X,0,a.X,0,1),a.J(le.posMatrix,le.posMatrix,[Xe*Tt,ot*Tt,0]),a.K(le.posMatrix,le.posMatrix,[1/2**qe,1/2**qe,0]),B[Q]=le}}return B}getSourceTile(w,B){let Q=this.sourceCache._source,ee=w.overscaledZ-this.deltaZoom;if(ee>Q.maxzoom&&(ee=Q.maxzoom),ee<Q.minzoom)return null;this._sourceTileCache[w.key]||(this._sourceTileCache[w.key]=w.scaledTo(ee).key);let le=this.sourceCache.getTileByID(this._sourceTileCache[w.key]);if((!le||!le.dem)&&B)for(;ee>=Q.minzoom&&(!le||!le.dem);)le=this.sourceCache.getTileByID(w.scaledTo(ee--).key);return le}tilesAfterTime(w=Date.now()){return Object.values(this._tiles).filter(B=>B.timeAdded>=w)}}class Xo{constructor(w,B,Q){this.painter=w,this.sourceCache=new bo(B),this.options=Q,this.exaggeration=typeof Q.exaggeration=="number"?Q.exaggeration:1,this.qualityFactor=2,this.meshSize=128,this._demMatrixCache={},this.coordsIndex=[],this._coordsTextureSize=1024}getDEMElevation(w,B,Q,ee=a.X){var le;if(!(B>=0&&B<ee&&Q>=0&&Q<ee))return 0;let qe=this.getTerrainData(w),Xe=(le=qe.tile)===null||le===void 0?void 0:le.dem;if(!Xe)return 0;let ot=function(ve,be,Re){var Be=be[0],tt=be[1];return ve[0]=Re[0]*Be+Re[4]*tt+Re[12],ve[1]=Re[1]*Be+Re[5]*tt+Re[13],ve}([],[B/ee*a.X,Q/ee*a.X],qe.u_terrain_matrix),Tt=[ot[0]*Xe.dim,ot[1]*Xe.dim],Kt=Math.floor(Tt[0]),Jt=Math.floor(Tt[1]),xr=Tt[0]-Kt,Pr=Tt[1]-Jt;return Xe.get(Kt,Jt)*(1-xr)*(1-Pr)+Xe.get(Kt+1,Jt)*xr*(1-Pr)+Xe.get(Kt,Jt+1)*(1-xr)*Pr+Xe.get(Kt+1,Jt+1)*xr*Pr}getElevationForLngLatZoom(w,B){if(!a.bb(B,w.wrap()))return 0;let{tileID:Q,mercatorX:ee,mercatorY:le}=this._getOverscaledTileIDFromLngLatZoom(w,B);return this.getElevation(Q,ee%a.X,le%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,le=new a.R({width:1,height:1},new Uint8Array(4));this._emptyDepthTexture=new g(ee,le,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,le=w.canonical.z-B.tileID.canonical.z;w.overscaledZ>w.canonical.z&&(w.canonical.z>=ee?le=w.canonical.z-ee:a.w("cannot calculate elevation if elevation maxzoom > source.maxzoom"));let qe=w.canonical.x-(w.canonical.x>>le<<le),Xe=w.canonical.y-(w.canonical.y>>le<<le),ot=a.bc(new Float64Array(16),[1/(a.X<<le),1/(a.X<<le),0]);a.J(ot,ot,[qe*a.X,Xe*a.X,0]),this._demMatrixCache[w.key]={matrix:ot,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 le=0,qe=0;le<this._coordsTextureSize;le++)for(let Xe=0;Xe<this._coordsTextureSize;Xe++,qe+=4)B[qe+0]=255&Xe,B[qe+1]=255&le,B[qe+2]=Xe>>8<<4|le>>8,B[qe+3]=0;let Q=new a.R({width:this._coordsTextureSize,height:this._coordsTextureSize},new Uint8Array(B.buffer)),ee=new g(w,Q,w.gl.RGBA,{premultiply:!1});return ee.bind(w.gl.NEAREST,w.gl.CLAMP_TO_EDGE),this._coordsTexture=ee,ee}pointCoordinate(w){this.painter.maybeDrawDepthAndCoords(!0);let B=new Uint8Array(4),Q=this.painter.context,ee=Q.gl,le=Math.round(w.x*this.painter.pixelRatio/devicePixelRatio),qe=Math.round(w.y*this.painter.pixelRatio/devicePixelRatio),Xe=Math.round(this.painter.height/devicePixelRatio);Q.bindFramebuffer.set(this.getFramebuffer("coords").framebuffer),ee.readPixels(le,Xe-qe-1,1,1,ee.RGBA,ee.UNSIGNED_BYTE,B),Q.bindFramebuffer.set(null);let ot=B[0]+(B[2]>>4<<8),Tt=B[1]+((15&B[2])<<8),Kt=this.coordsIndex[255-B[3]],Jt=Kt&&this.sourceCache.getTileByID(Kt);if(!Jt)return null;let xr=this._coordsTextureSize,Pr=(1<<Jt.tileID.canonical.z)*xr;return new a.Z((Jt.tileID.canonical.x*xr+ot)/Pr+Jt.tileID.wrap,(Jt.tileID.canonical.y*xr+Tt)/Pr,this.getElevation(Jt.tileID,ot,Tt,xr))}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,le=a.X/ee,qe=ee*ee;for(let Jt=0;Jt<=ee;Jt++)for(let xr=0;xr<=ee;xr++)B.emplaceBack(xr*le,Jt*le,0);for(let Jt=0;Jt<qe;Jt+=ee+1)for(let xr=0;xr<ee;xr++)Q.emplaceBack(xr+Jt,ee+xr+Jt+1,ee+xr+Jt+2),Q.emplaceBack(xr+Jt,ee+xr+Jt+2,xr+Jt+1);let Xe=B.length,ot=Xe+2*(ee+1);for(let Jt of[0,1])for(let xr=0;xr<=ee;xr++)for(let Pr of[0,1])B.emplaceBack(xr*le,Jt*a.X,Pr);for(let Jt=0;Jt<2*ee;Jt+=2)Q.emplaceBack(ot+Jt,ot+Jt+1,ot+Jt+3),Q.emplaceBack(ot+Jt,ot+Jt+3,ot+Jt+2),Q.emplaceBack(Xe+Jt,Xe+Jt+3,Xe+Jt+1),Q.emplaceBack(Xe+Jt,Xe+Jt+2,Xe+Jt+3);let Tt=B.length,Kt=Tt+2*(ee+1);for(let Jt of[0,1])for(let xr=0;xr<=ee;xr++)for(let Pr of[0,1])B.emplaceBack(Jt*a.X,xr*le,Pr);for(let Jt=0;Jt<2*ee;Jt+=2)Q.emplaceBack(Tt+Jt,Tt+Jt+1,Tt+Jt+3),Q.emplaceBack(Tt+Jt,Tt+Jt+3,Tt+Jt+2),Q.emplaceBack(Kt+Jt,Kt+Jt+3,Kt+Jt+1),Q.emplaceBack(Kt+Jt,Kt+Jt+2,Kt+Jt+3);return this._mesh=new Eu(w.createVertexBuffer(B,Ka.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,le=Q.x*ee,qe=Q.y*ee,Xe=Math.floor(le/a.X),ot=Math.floor(qe/a.X);return{tileID:new a.S(B,0,B,Xe,ot),mercatorX:le,mercatorY:qe}}}class Ms{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 os={background:!0,fill:!0,line:!0,raster:!0,hillshade:!0};class Ts{constructor(w,B){this.painter=w,this.terrain=B,this.pool=new Ms(w.context,30,B.sourceCache.tileSize*B.qualityFactor)}destruct(){this.pool.destruct()}getTexture(w){return this.pool.getObjectForId(w.rtt[this._stacks.length-1].id).texture}prepareForRender(w,B){this._stacks=[],this._prevType=null,this._rttTiles=[],this._renderableTiles=this.terrain.sourceCache.getRenderableTiles(),this._renderableLayerIds=w._order.filter(Q=>!w._layers[Q].isHidden(B)),this._coordsDescendingInv={};for(let Q in w.sourceCaches){this._coordsDescendingInv[Q]={};let ee=w.sourceCaches[Q].getVisibleCoordinates();for(let le of ee){let qe=this.terrain.sourceCache.getTerrainCoords(le);for(let Xe in qe)this._coordsDescendingInv[Q][Xe]||(this._coordsDescendingInv[Q][Xe]=[]),this._coordsDescendingInv[Q][Xe].push(qe[Xe])}}this._coordsDescendingInvStr={};for(let Q of w._order){let ee=w._layers[Q],le=ee.source;if(os[ee.type]&&!this._coordsDescendingInvStr[le]){this._coordsDescendingInvStr[le]={};for(let qe in this._coordsDescendingInv[le])this._coordsDescendingInvStr[le][qe]=this._coordsDescendingInv[le][qe].map(Xe=>Xe.key).sort().join()}}for(let Q of this._renderableTiles)for(let ee in this._coordsDescendingInvStr){let le=this._coordsDescendingInvStr[ee][Q.tileID.key];le&&le!==Q.rttCoords[ee]&&(Q.rtt=[])}}renderLayer(w){if(w.isHidden(this.painter.transform.zoom))return!1;let B=w.type,Q=this.painter,ee=this._renderableLayerIds[this._renderableLayerIds.length-1]===w.id;if(os[B]&&(this._prevType&&os[this._prevType]||this._stacks.push([]),this._prevType=B,this._stacks[this._stacks.length-1].push(w.id),!ee))return!0;if(os[this._prevType]||os[B]&&ee){this._prevType=B;let le=this._stacks.length-1,qe=this._stacks[le]||[];for(let Xe of this._renderableTiles){if(this.pool.isFull()&&(Ws(this.painter,this.terrain,this._rttTiles),this._rttTiles=[],this.pool.freeAllObjects()),this._rttTiles.push(Xe),Xe.rtt[le]){let Tt=this.pool.getObjectForId(Xe.rtt[le].id);if(Tt.stamp===Xe.rtt[le].stamp){this.pool.useObject(Tt);continue}}let ot=this.pool.getOrCreateFreeObject();this.pool.useObject(ot),this.pool.stampObject(ot),Xe.rtt[le]={id:ot.id,stamp:ot.stamp},Q.context.bindFramebuffer.set(ot.fbo.framebuffer),Q.context.clear({color:a.aM.transparent,stencil:0}),Q.currentStencilSource=void 0;for(let Tt=0;Tt<qe.length;Tt++){let Kt=Q.style._layers[qe[Tt]],Jt=Kt.source?this._coordsDescendingInv[Kt.source][Xe.tileID.key]:[Xe.tileID];Q.context.viewport.set([0,0,ot.fbo.width,ot.fbo.height]),Q._renderTileClippingMasks(Kt,Jt),Q.renderLayer(Q,Q.style.sourceCaches[Kt.source],Kt,Jt),Kt.source&&(Xe.rttCoords[Kt.source]=this._coordsDescendingInvStr[Kt.source][Xe.tileID.key])}}return Ws(this.painter,this.terrain,this._rttTiles),this._rttTiles=[],this.pool.freeAllObjects(),os[B]}return!1}}let Ho={"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,Xs={hash:!1,interactive:!0,bearingSnap:7,attributionControl:La,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},Ps=ue=>{ue.touchstart=ue.dragStart,ue.touchmoveWindow=ue.dragMove,ue.touchend=ue.dragEnd},va={showCompass:!0,showZoom:!0,visualizePitch:!1};class no{constructor(w,B,Q=!1){this.mousedown=qe=>{this.startMouse(a.e({},qe,{ctrlKey:!0,preventDefault:()=>qe.preventDefault()}),c.mousePos(this.element,qe)),c.addEventListener(window,"mousemove",this.mousemove),c.addEventListener(window,"mouseup",this.mouseup)},this.mousemove=qe=>{this.moveMouse(qe,c.mousePos(this.element,qe))},this.mouseup=qe=>{this.mouseRotate.dragEnd(qe),this.mousePitch&&this.mousePitch.dragEnd(qe),this.offTemp()},this.touchstart=qe=>{qe.targetTouches.length!==1?this.reset():(this._startPos=this._lastPos=c.touchPos(this.element,qe.targetTouches)[0],this.startTouch(qe,this._startPos),c.addEventListener(window,"touchmove",this.touchmove,{passive:!1}),c.addEventListener(window,"touchend",this.touchend))},this.touchmove=qe=>{qe.targetTouches.length!==1?this.reset():(this._lastPos=c.touchPos(this.element,qe.targetTouches)[0],this.moveTouch(qe,this._lastPos))},this.touchend=qe=>{qe.targetTouches.length===0&&this._startPos&&this._lastPos&&this._startPos.dist(this._lastPos)<this._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(),le=w.dragRotate._mousePitch.getClickTolerance();this.element=B,this.mouseRotate=Wl({clickTolerance:ee,enable:!0}),this.touchRotate=(({enable:qe,clickTolerance:Xe,bearingDegreesPerPixelMoved:ot=.8})=>{let Tt=new uf;return new Wu({clickTolerance:Xe,move:(Kt,Jt)=>({bearingDelta:(Jt.x-Kt.x)*ot}),moveStateManager:Tt,enable:qe,assignEvents:Ps})})({clickTolerance:ee,enable:!0}),this.map=w,Q&&(this.mousePitch=ah({clickTolerance:le,enable:!0}),this.touchPitch=(({enable:qe,clickTolerance:Xe,pitchDegreesPerPixelMoved:ot=-.5})=>{let Tt=new uf;return new Wu({clickTolerance:Xe,move:(Kt,Jt)=>({pitchDelta:(Jt.y-Kt.y)*ot}),moveStateManager:Tt,enable:qe,assignEvents:Ps})})({clickTolerance:le,enable:!0})),c.addEventListener(B,"mousedown",this.mousedown),c.addEventListener(B,"touchstart",this.touchstart,{passive:!1}),c.addEventListener(B,"touchcancel",this.reset)}startMouse(w,B){this.mouseRotate.dragStart(w,B),this.mousePitch&&this.mousePitch.dragStart(w,B),c.disableDrag()}startTouch(w,B){this.touchRotate.dragStart(w,B),this.touchPitch&&this.touchPitch.dragStart(w,B),c.disableDrag()}moveMouse(w,B){let Q=this.map,{bearingDelta:ee}=this.mouseRotate.dragMove(w,B)||{};if(ee&&Q.setBearing(Q.getBearing()+ee),this.mousePitch){let{pitchDelta:le}=this.mousePitch.dragMove(w,B)||{};le&&Q.setPitch(Q.getPitch()+le)}}moveTouch(w,B){let Q=this.map,{bearingDelta:ee}=this.touchRotate.dragMove(w,B)||{};if(ee&&Q.setBearing(Q.getBearing()+ee),this.touchPitch){let{pitchDelta:le}=this.touchPitch.dragMove(w,B)||{};le&&Q.setPitch(Q.getPitch()+le)}}off(){let w=this.element;c.removeEventListener(w,"mousedown",this.mousedown),c.removeEventListener(w,"touchstart",this.touchstart,{passive:!1}),c.removeEventListener(window,"touchmove",this.touchmove,{passive:!1}),c.removeEventListener(window,"touchend",this.touchend),c.removeEventListener(w,"touchcancel",this.reset),this.offTemp()}offTemp(){c.enableDrag(),c.removeEventListener(window,"mousemove",this.mousemove),c.removeEventListener(window,"mouseup",this.mouseup),c.removeEventListener(window,"touchmove",this.touchmove,{passive:!1}),c.removeEventListener(window,"touchend",this.touchend)}}let _s;function is(ue,w,B){let Q=new a.N(ue.lng,ue.lat);if(ue=new a.N(ue.lng,ue.lat),w){let ee=new a.N(ue.lng-360,ue.lat),le=new a.N(ue.lng+360,ue.lat),qe=B.locationPoint(ue).distSqr(w);B.locationPoint(ee).distSqr(w)<qe?ue=ee:B.locationPoint(le).distSqr(w)<qe&&(ue=le)}for(;Math.abs(ue.lng-B.center.lng)>180;){let ee=B.locationPoint(ue);if(ee.x>=0&&ee.y>=0&&ee.x<=B.width&&ee.y<=B.height)break;ue.lng>B.center.lng?ue.lng-=360:ue.lng+=360}return ue.lng!==Q.lng&&B.locationPoint(ue).y>B.height/2-B.getHorizon()?ue:Q}let $l={center:"translate(-50%,-50%)",top:"translate(-50%,0)","top-left":"translate(0,0)","top-right":"translate(-100%,0)",bottom:"translate(-50%,-100%)","bottom-left":"translate(0,-100%)","bottom-right":"translate(-100%,-100%)",left:"translate(0,-50%)",right:"translate(-100%,-50%)"};function ku(ue,w,B){let Q=ue.classList;for(let ee in $l)Q.remove(`maplibregl-${B}-anchor-${ee}`);Q.add(`maplibregl-${B}-anchor-${w}`)}class Yu extends a.E{constructor(w){if(super(),this._onKeyPress=B=>{let Q=B.code,ee=B.charCode||B.keyCode;Q!=="Space"&&Q!=="Enter"&&ee!==32&&ee!==13||this.togglePopup()},this._onMapClick=B=>{let Q=B.originalEvent.target,ee=this._element;this._popup&&(Q===ee||ee.contains(Q))&&this.togglePopup()},this._update=B=>{var Q;if(!this._map)return;let ee=this._map.loaded()&&!this._map.isMoving();((B==null?void 0:B.type)==="terrain"||(B==null?void 0:B.type)==="render"&&!ee)&&this._map.once("render",this._update),this._lngLat=this._map.transform.renderWorldCopies?is(this._lngLat,this._flatPos,this._map.transform):(Q=this._lngLat)===null||Q===void 0?void 0:Q.wrap(),this._flatPos=this._pos=this._map.project(this._lngLat)._add(this._offset),this._map.terrain&&(this._flatPos=this._map.transform.locationPoint(this._lngLat)._add(this._offset));let le="";this._rotationAlignment==="viewport"||this._rotationAlignment==="auto"?le=`rotateZ(${this._rotation}deg)`:this._rotationAlignment==="map"&&(le=`rotateZ(${this._rotation-this._map.getBearing()}deg)`);let qe="";this._pitchAlignment==="viewport"||this._pitchAlignment==="auto"?qe="rotateX(0deg)":this._pitchAlignment==="map"&&(qe=`rotateX(${this._map.getPitch()}deg)`),this._subpixelPositioning||B&&B.type!=="moveend"||(this._pos=this._pos.round()),c.setTransform(this._element,`${$l[this._anchor]} translate(${this._pos.x}px, ${this._pos.y}px) ${qe} ${le}`),u.frameAsync(new AbortController).then(()=>{this._updateOpacity(B&&B.type==="moveend")}).catch(()=>{})},this._onMove=B=>{if(!this._isDragging){let Q=this._clickTolerance||this._map._clickTolerance;this._isDragging=B.point.dist(this._pointerdownPos)>=Q}this._isDragging&&(this._pos=B.point.sub(this._positionDelta),this._lngLat=this._map.unproject(this._pos),this.setLngLat(this._lngLat),this._element.style.pointerEvents="none",this._state==="pending"&&(this._state="active",this.fire(new a.k("dragstart"))),this.fire(new a.k("drag")))},this._onUp=()=>{this._element.style.pointerEvents="auto",this._positionDelta=null,this._pointerdownPos=null,this._isDragging=!1,this._map.off("mousemove",this._onMove),this._map.off("touchmove",this._onMove),this._state==="active"&&this.fire(new a.k("dragend")),this._state="inactive"},this._addDragHandler=B=>{this._element.contains(B.originalEvent.target)&&(B.preventDefault(),this._positionDelta=B.point.sub(this._pos).add(this._offset),this._pointerdownPos=B.point,this._state="pending",this._map.on("mousemove",this._onMove),this._map.on("touchmove",this._onMove),this._map.once("mouseup",this._onUp),this._map.once("touchend",this._onUp))},this._anchor=w&&w.anchor||"center",this._color=w&&w.color||"#3FB1CE",this._scale=w&&w.scale||1,this._draggable=w&&w.draggable||!1,this._clickTolerance=w&&w.clickTolerance||0,this._subpixelPositioning=w&&w.subpixelPositioning||!1,this._isDragging=!1,this._state="inactive",this._rotation=w&&w.rotation||0,this._rotationAlignment=w&&w.rotationAlignment||"auto",this._pitchAlignment=w&&w.pitchAlignment&&w.pitchAlignment!=="auto"?w.pitchAlignment:this._rotationAlignment,this.setOpacity(),this.setOpacity(w==null?void 0:w.opacity,w==null?void 0:w.opacityWhenCovered),w&&w.element)this._element=w.element,this._offset=a.P.convert(w&&w.offset||[0,0]);else{this._defaultMarker=!0,this._element=c.create("div");let B=c.createNS("http://www.w3.org/2000/svg","svg"),Q=41,ee=27;B.setAttributeNS(null,"display","block"),B.setAttributeNS(null,"height",`${Q}px`),B.setAttributeNS(null,"width",`${ee}px`),B.setAttributeNS(null,"viewBox",`0 0 ${ee} ${Q}`);let le=c.createNS("http://www.w3.org/2000/svg","g");le.setAttributeNS(null,"stroke","none"),le.setAttributeNS(null,"stroke-width","1"),le.setAttributeNS(null,"fill","none"),le.setAttributeNS(null,"fill-rule","evenodd");let qe=c.createNS("http://www.w3.org/2000/svg","g");qe.setAttributeNS(null,"fill-rule","nonzero");let Xe=c.createNS("http://www.w3.org/2000/svg","g");Xe.setAttributeNS(null,"transform","translate(3.0, 29.0)"),Xe.setAttributeNS(null,"fill","#000000");let ot=[{rx:"10.5",ry:"5.25002273"},{rx:"10.5",ry:"5.25002273"},{rx:"9.5",ry:"4.77275007"},{rx:"8.5",ry:"4.29549936"},{rx:"7.5",ry:"3.81822308"},{rx:"6.5",ry:"3.34094679"},{rx:"5.5",ry:"2.86367051"},{rx:"4.5",ry:"2.38636864"}];for(let Be of ot){let tt=c.createNS("http://www.w3.org/2000/svg","ellipse");tt.setAttributeNS(null,"opacity","0.04"),tt.setAttributeNS(null,"cx","10.5"),tt.setAttributeNS(null,"cy","5.80029008"),tt.setAttributeNS(null,"rx",Be.rx),tt.setAttributeNS(null,"ry",Be.ry),Xe.appendChild(tt)}let Tt=c.createNS("http://www.w3.org/2000/svg","g");Tt.setAttributeNS(null,"fill",this._color);let Kt=c.createNS("http://www.w3.org/2000/svg","path");Kt.setAttributeNS(null,"d","M27,13.5 C27,19.074644 20.250001,27.000002 14.75,34.500002 C14.016665,35.500004 12.983335,35.500004 12.25,34.500002 C6.7499993,27.000002 0,19.222562 0,13.5 C0,6.0441559 6.0441559,0 13.5,0 C20.955844,0 27,6.0441559 27,13.5 Z"),Tt.appendChild(Kt);let Jt=c.createNS("http://www.w3.org/2000/svg","g");Jt.setAttributeNS(null,"opacity","0.25"),Jt.setAttributeNS(null,"fill","#000000");let xr=c.createNS("http://www.w3.org/2000/svg","path");xr.setAttributeNS(null,"d","M13.5,0 C6.0441559,0 0,6.0441559 0,13.5 C0,19.222562 6.7499993,27 12.25,34.5 C13,35.522727 14.016664,35.500004 14.75,34.5 C20.250001,27 27,19.074644 27,13.5 C27,6.0441559 20.955844,0 13.5,0 Z M13.5,1 C20.415404,1 26,6.584596 26,13.5 C26,15.898657 24.495584,19.181431 22.220703,22.738281 C19.945823,26.295132 16.705119,30.142167 13.943359,33.908203 C13.743445,34.180814 13.612715,34.322738 13.5,34.441406 C13.387285,34.322738 13.256555,34.180814 13.056641,33.908203 C10.284481,30.127985 7.4148684,26.314159 5.015625,22.773438 C2.6163816,19.232715 1,15.953538 1,13.5 C1,6.584596 6.584596,1 13.5,1 Z"),Jt.appendChild(xr);let Pr=c.createNS("http://www.w3.org/2000/svg","g");Pr.setAttributeNS(null,"transform","translate(6.0, 7.0)"),Pr.setAttributeNS(null,"fill","#FFFFFF");let ve=c.createNS("http://www.w3.org/2000/svg","g");ve.setAttributeNS(null,"transform","translate(8.0, 8.0)");let be=c.createNS("http://www.w3.org/2000/svg","circle");be.setAttributeNS(null,"fill","#000000"),be.setAttributeNS(null,"opacity","0.25"),be.setAttributeNS(null,"cx","5.5"),be.setAttributeNS(null,"cy","5.5"),be.setAttributeNS(null,"r","5.4999962");let Re=c.createNS("http://www.w3.org/2000/svg","circle");Re.setAttributeNS(null,"fill","#FFFFFF"),Re.setAttributeNS(null,"cx","5.5"),Re.setAttributeNS(null,"cy","5.5"),Re.setAttributeNS(null,"r","5.4999962"),ve.appendChild(be),ve.appendChild(Re),qe.appendChild(Xe),qe.appendChild(Tt),qe.appendChild(Jt),qe.appendChild(Pr),qe.appendChild(ve),B.appendChild(qe),B.setAttributeNS(null,"height",Q*this._scale+"px"),B.setAttributeNS(null,"width",ee*this._scale+"px"),this._element.appendChild(B),this._offset=a.P.convert(w&&w.offset||[0,-14])}if(this._element.classList.add("maplibregl-marker"),this._element.addEventListener("dragstart",B=>{B.preventDefault()}),this._element.addEventListener("mousedown",B=>{B.preventDefault()}),ku(this._element,this._anchor,"marker"),w&&w.className)for(let B of w.className.split(" "))this._element.classList.add(B);this._popup=null}addTo(w){return this.remove(),this._map=w,this._element.setAttribute("aria-label",w._getUIString("Marker.Title")),w.getCanvasContainer().appendChild(this._element),w.on("move",this._update),w.on("moveend",this._update),w.on("terrain",this._update),this.setDraggable(this._draggable),this._update(),this._map.on("click",this._onMapClick),this}remove(){return this._opacityTimeout&&(clearTimeout(this._opacityTimeout),delete this._opacityTimeout),this._map&&(this._map.off("click",this._onMapClick),this._map.off("move",this._update),this._map.off("moveend",this._update),this._map.off("terrain",this._update),this._map.off("mousedown",this._addDragHandler),this._map.off("touchstart",this._addDragHandler),this._map.off("mouseup",this._onUp),this._map.off("touchend",this._onUp),this._map.off("mousemove",this._onMove),this._map.off("touchmove",this._onMove),delete this._map),c.remove(this._element),this._popup&&this._popup.remove(),this}getLngLat(){return this._lngLat}setLngLat(w){return this._lngLat=a.N.convert(w),this._pos=null,this._popup&&this._popup.setLngLat(this._lngLat),this._update(),this}getElement(){return this._element}setPopup(w){if(this._popup&&(this._popup.remove(),this._popup=null,this._element.removeEventListener("keypress",this._onKeyPress),this._originalTabIndex||this._element.removeAttribute("tabindex")),w){if(!("offset"in w.options)){let ee=Math.abs(13.5)/Math.SQRT2;w.options.offset=this._defaultMarker?{top:[0,0],"top-left":[0,0],"top-right":[0,0],bottom:[0,-38.1],"bottom-left":[ee,-1*(38.1-13.5+ee)],"bottom-right":[-ee,-1*(38.1-13.5+ee)],left:[13.5,-1*(38.1-13.5)],right:[-13.5,-1*(38.1-13.5)]}:this._offset}this._popup=w,this._originalTabIndex=this._element.getAttribute("tabindex"),this._originalTabIndex||this._element.setAttribute("tabindex","0"),this._element.addEventListener("keypress",this._onKeyPress)}return this}setSubpixelPositioning(w){return this._subpixelPositioning=w,this}getPopup(){return this._popup}togglePopup(){let w=this._popup;return this._element.style.opacity===this._opacityWhenCovered?this:w?(w.isOpen()?w.remove():(w.setLngLat(this._lngLat),w.addTo(this._map)),this):this}_updateOpacity(w=!1){var B,Q;if(!(!((B=this._map)===null||B===void 0)&&B.terrain))return void(this._element.style.opacity!==this._opacity&&(this._element.style.opacity=this._opacity));if(w)this._opacityTimeout=null;else{if(this._opacityTimeout)return;this._opacityTimeout=setTimeout(()=>{this._opacityTimeout=null},100)}let ee=this._map,le=ee.terrain.depthAtPoint(this._pos),qe=ee.terrain.getElevationForLngLatZoom(this._lngLat,ee.transform.tileZoom);if(ee.transform.lngLatToCameraDepth(this._lngLat,qe)-le<.006)return void(this._element.style.opacity=this._opacity);let Xe=-this._offset.y/ee.transform._pixelPerMeter,ot=Math.sin(ee.getPitch()*Math.PI/180)*Xe,Tt=ee.terrain.depthAtPoint(new a.P(this._pos.x,this._pos.y-this._offset.y)),Kt=ee.transform.lngLatToCameraDepth(this._lngLat,qe+ot)-Tt>.006;!((Q=this._popup)===null||Q===void 0)&&Q.isOpen()&&Kt&&this._popup.remove(),this._element.style.opacity=Kt?this._opacityWhenCovered:this._opacity}getOffset(){return this._offset}setOffset(w){return this._offset=a.P.convert(w),this._update(),this}addClassName(w){this._element.classList.add(w)}removeClassName(w){this._element.classList.remove(w)}toggleClassName(w){return this._element.classList.toggle(w)}setDraggable(w){return this._draggable=!!w,this._map&&(w?(this._map.on("mousedown",this._addDragHandler),this._map.on("touchstart",this._addDragHandler)):(this._map.off("mousedown",this._addDragHandler),this._map.off("touchstart",this._addDragHandler))),this}isDraggable(){return this._draggable}setRotation(w){return this._rotation=w||0,this._update(),this}getRotation(){return this._rotation}setRotationAlignment(w){return this._rotationAlignment=w||"auto",this._update(),this}getRotationAlignment(){return this._rotationAlignment}setPitchAlignment(w){return this._pitchAlignment=w&&w!=="auto"?w:this._rotationAlignment,this._update(),this}getPitchAlignment(){return this._pitchAlignment}setOpacity(w,B){return w===void 0&&B===void 0&&(this._opacity="1",this._opacityWhenCovered="0.2"),w!==void 0&&(this._opacity=w),B!==void 0&&(this._opacityWhenCovered=B),this._map&&this._updateOpacity(!0),this}}let Nc={positionOptions:{enableHighAccuracy:!1,maximumAge:0,timeout:6e3},fitBoundsOptions:{maxZoom:15},trackUserLocation:!1,showAccuracyCircle:!0,showUserLocation:!0},gu=0,Uc=!1,xu={maxWidth:100,unit:"metric"};function Ac(ue,w,B){let Q=B&&B.maxWidth||100,ee=ue._container.clientHeight/2,le=ue.unproject([0,ee]),qe=ue.unproject([Q,ee]),Xe=le.distanceTo(qe);if(B&&B.unit==="imperial"){let ot=3.2808*Xe;ot>5280?Ua(w,Q,ot/5280,ue._getUIString("ScaleControl.Miles")):Ua(w,Q,ot,ue._getUIString("ScaleControl.Feet"))}else B&&B.unit==="nautical"?Ua(w,Q,Xe/1852,ue._getUIString("ScaleControl.NauticalMiles")):Xe>=1e3?Ua(w,Q,Xe/1e3,ue._getUIString("ScaleControl.Kilometers")):Ua(w,Q,Xe,ue._getUIString("ScaleControl.Meters"))}function Ua(ue,w,B,Q){let ee=function(le){let qe=Math.pow(10,`${Math.floor(le)}`.length-1),Xe=le/qe;return Xe=Xe>=10?10:Xe>=5?5:Xe>=3?3:Xe>=2?2:Xe>=1?1:function(ot){let Tt=Math.pow(10,Math.ceil(-Math.log(ot)/Math.LN10));return Math.round(ot*Tt)/Tt}(Xe),qe*Xe}(B);ue.style.width=w*(ee/B)+"px",ue.innerHTML=`${ee} ${Q}`}let oo={closeButton:!0,closeOnClick:!0,focusAfterOpen:!0,className:"",maxWidth:"240px",subpixelPositioning:!1},Vc=["a[href]","[tabindex]:not([tabindex='-1'])","[contenteditable]:not([contenteditable='false'])","button:not([disabled])","input:not([disabled])","select:not([disabled])","textarea:not([disabled])"].join(", ");function hc(ue){if(ue){if(typeof ue=="number"){let w=Math.round(Math.abs(ue)/Math.SQRT2);return{center:new a.P(0,0),top:new a.P(0,ue),"top-left":new a.P(w,w),"top-right":new a.P(-w,w),bottom:new a.P(0,-ue),"bottom-left":new a.P(w,-w),"bottom-right":new a.P(-w,-w),left:new a.P(ue,0),right:new a.P(-ue,0)}}if(ue instanceof a.P||Array.isArray(ue)){let w=a.P.convert(ue);return{center:w,top:w,"top-left":w,"top-right":w,bottom:w,"bottom-left":w,"bottom-right":w,left:w,right:w}}return{center:a.P.convert(ue.center||[0,0]),top:a.P.convert(ue.top||[0,0]),"top-left":a.P.convert(ue["top-left"]||[0,0]),"top-right":a.P.convert(ue["top-right"]||[0,0]),bottom:a.P.convert(ue.bottom||[0,0]),"bottom-left":a.P.convert(ue["bottom-left"]||[0,0]),"bottom-right":a.P.convert(ue["bottom-right"]||[0,0]),left:a.P.convert(ue.left||[0,0]),right:a.P.convert(ue.right||[0,0])}}return hc(new a.P(0,0))}let Ku=o;i.AJAXError=a.bh,i.Evented=a.E,i.LngLat=a.N,i.MercatorCoordinate=a.Z,i.Point=a.P,i.addProtocol=a.bi,i.config=a.a,i.removeProtocol=a.bj,i.AttributionControl=Na,i.BoxZoomHandler=Cu,i.CanvasSource=$t,i.CooperativeGesturesHandler=$i,i.DoubleClickZoomHandler=Ei,i.DragPanHandler=Tn,i.DragRotateHandler=Bn,i.EdgeInsets=du,i.FullscreenControl=class extends a.E{constructor(ue={}){super(),this._onFullscreenChange=()=>{var w;let B=window.document.fullscreenElement||window.document.mozFullScreenElement||window.document.webkitFullscreenElement||window.document.msFullscreenElement;for(;!((w=B==null?void 0:B.shadowRoot)===null||w===void 0)&&w.fullscreenElement;)B=B.shadowRoot.fullscreenElement;B===this._container!==this._fullscreen&&this._handleFullscreenChange()},this._onClickFullscreen=()=>{this._isFullscreen()?this._exitFullscreen():this._requestFullscreen()},this._fullscreen=!1,ue&&ue.container&&(ue.container instanceof HTMLElement?this._container=ue.container:a.w("Full screen control 'container' must be a DOM element.")),"onfullscreenchange"in document?this._fullscreenchange="fullscreenchange":"onmozfullscreenchange"in document?this._fullscreenchange="mozfullscreenchange":"onwebkitfullscreenchange"in document?this._fullscreenchange="webkitfullscreenchange":"onmsfullscreenchange"in document&&(this._fullscreenchange="MSFullscreenChange")}onAdd(ue){return this._map=ue,this._container||(this._container=this._map.getContainer()),this._controlContainer=c.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._setupUI(),this._controlContainer}onRemove(){c.remove(this._controlContainer),this._map=null,window.document.removeEventListener(this._fullscreenchange,this._onFullscreenChange)}_setupUI(){let ue=this._fullscreenButton=c.create("button","maplibregl-ctrl-fullscreen",this._controlContainer);c.create("span","maplibregl-ctrl-icon",ue).setAttribute("aria-hidden","true"),ue.type="button",this._updateTitle(),this._fullscreenButton.addEventListener("click",this._onClickFullscreen),window.document.addEventListener(this._fullscreenchange,this._onFullscreenChange)}_updateTitle(){let ue=this._getTitle();this._fullscreenButton.setAttribute("aria-label",ue),this._fullscreenButton.title=ue}_getTitle(){return this._map._getUIString(this._isFullscreen()?"FullscreenControl.Exit":"FullscreenControl.Enter")}_isFullscreen(){return this._fullscreen}_handleFullscreenChange(){this._fullscreen=!this._fullscreen,this._fullscreenButton.classList.toggle("maplibregl-ctrl-shrink"),this._fullscreenButton.classList.toggle("maplibregl-ctrl-fullscreen"),this._updateTitle(),this._fullscreen?(this.fire(new a.k("fullscreenstart")),this._prevCooperativeGesturesEnabled=this._map.cooperativeGestures.isEnabled(),this._map.cooperativeGestures.disable()):(this.fire(new a.k("fullscreenend")),this._prevCooperativeGesturesEnabled&&this._map.cooperativeGestures.enable())}_exitFullscreen(){window.document.exitFullscreen?window.document.exitFullscreen():window.document.mozCancelFullScreen?window.document.mozCancelFullScreen():window.document.msExitFullscreen?window.document.msExitFullscreen():window.document.webkitCancelFullScreen?window.document.webkitCancelFullScreen():this._togglePseudoFullScreen()}_requestFullscreen(){this._container.requestFullscreen?this._container.requestFullscreen():this._container.mozRequestFullScreen?this._container.mozRequestFullScreen():this._container.msRequestFullscreen?this._container.msRequestFullscreen():this._container.webkitRequestFullscreen?this._container.webkitRequestFullscreen():this._togglePseudoFullScreen()}_togglePseudoFullScreen(){this._container.classList.toggle("maplibregl-pseudo-fullscreen"),this._handleFullscreenChange(),this._map.resize()}},i.GeoJSONSource=st,i.GeolocateControl=class extends a.E{constructor(ue){super(),this._onSuccess=w=>{if(this._map){if(this._isOutOfMapMaxBounds(w))return this._setErrorState(),this.fire(new a.k("outofmaxbounds",w)),this._updateMarker(),void this._finish();if(this.options.trackUserLocation)switch(this._lastKnownPosition=w,this._watchState){case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active");break;case"BACKGROUND":case"BACKGROUND_ERROR":this._watchState="BACKGROUND",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-background");break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}this.options.showUserLocation&&this._watchState!=="OFF"&&this._updateMarker(w),this.options.trackUserLocation&&this._watchState!=="ACTIVE_LOCK"||this._updateCamera(w),this.options.showUserLocation&&this._dotElement.classList.remove("maplibregl-user-location-dot-stale"),this.fire(new a.k("geolocate",w)),this._finish()}},this._updateCamera=w=>{let B=new a.N(w.coords.longitude,w.coords.latitude),Q=w.coords.accuracy,ee=this._map.getBearing(),le=a.e({bearing:ee},this.options.fitBoundsOptions),qe=ce.fromLngLat(B,Q);this._map.fitBounds(qe,le,{geolocateSource:!0})},this._updateMarker=w=>{if(w){let B=new a.N(w.coords.longitude,w.coords.latitude);this._accuracyCircleMarker.setLngLat(B).addTo(this._map),this._userLocationDotMarker.setLngLat(B).addTo(this._map),this._accuracy=w.coords.accuracy,this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()}else this._userLocationDotMarker.remove(),this._accuracyCircleMarker.remove()},this._onZoom=()=>{this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()},this._onError=w=>{if(this._map){if(this.options.trackUserLocation)if(w.code===1){this._watchState="OFF",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background-error"),this._geolocateButton.disabled=!0;let B=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.title=B,this._geolocateButton.setAttribute("aria-label",B),this._geolocationWatchID!==void 0&&this._clearWatch()}else{if(w.code===3&&Uc)return;this._setErrorState()}this._watchState!=="OFF"&&this.options.showUserLocation&&this._dotElement.classList.add("maplibregl-user-location-dot-stale"),this.fire(new a.k("error",w)),this._finish()}},this._finish=()=>{this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0},this._setupUI=()=>{this._map&&(this._container.addEventListener("contextmenu",w=>w.preventDefault()),this._geolocateButton=c.create("button","maplibregl-ctrl-geolocate",this._container),c.create("span","maplibregl-ctrl-icon",this._geolocateButton).setAttribute("aria-hidden","true"),this._geolocateButton.type="button",this._geolocateButton.disabled=!0)},this._finishSetupUI=w=>{if(this._map){if(w===!1){a.w("Geolocation support is not available so the GeolocateControl will be disabled.");let B=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.disabled=!0,this._geolocateButton.title=B,this._geolocateButton.setAttribute("aria-label",B)}else{let B=this._map._getUIString("GeolocateControl.FindMyLocation");this._geolocateButton.disabled=!1,this._geolocateButton.title=B,this._geolocateButton.setAttribute("aria-label",B)}this.options.trackUserLocation&&(this._geolocateButton.setAttribute("aria-pressed","false"),this._watchState="OFF"),this.options.showUserLocation&&(this._dotElement=c.create("div","maplibregl-user-location-dot"),this._userLocationDotMarker=new Yu({element:this._dotElement}),this._circleElement=c.create("div","maplibregl-user-location-accuracy-circle"),this._accuracyCircleMarker=new Yu({element:this._circleElement,pitchAlignment:"map"}),this.options.trackUserLocation&&(this._watchState="OFF"),this._map.on("zoom",this._onZoom)),this._geolocateButton.addEventListener("click",()=>this.trigger()),this._setup=!0,this.options.trackUserLocation&&this._map.on("movestart",B=>{B.geolocateSource||this._watchState!=="ACTIVE_LOCK"||B.originalEvent&&B.originalEvent.type==="resize"||(this._watchState="BACKGROUND",this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this.fire(new a.k("trackuserlocationend")),this.fire(new a.k("userlocationlostfocus")))})}},this.options=a.e({},Nc,ue)}onAdd(ue){return this._map=ue,this._container=c.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._setupUI(),function(){return a._(this,arguments,void 0,function*(w=!1){if(_s!==void 0&&!w)return _s;if(window.navigator.permissions===void 0)return _s=!!window.navigator.geolocation,_s;try{_s=(yield window.navigator.permissions.query({name:"geolocation"})).state!=="denied"}catch(B){_s=!!window.navigator.geolocation}return _s})}().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,gu=0,Uc=!1}_isOutOfMapMaxBounds(ue){let w=this._map.getMaxBounds(),B=ue.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 ue=this._map.getBounds(),w=ue.getSouthEast(),B=ue.getNorthEast(),Q=w.distanceTo(B),ee=Math.ceil(this._accuracy/(Q/this._map._container.clientHeight)*2);this._circleElement.style.width=`${ee}px`,this._circleElement.style.height=`${ee}px`}trigger(){if(!this._setup)return a.w("Geolocate control triggered before added to a map"),!1;if(this.options.trackUserLocation){switch(this._watchState){case"OFF":this._watchState="WAITING_ACTIVE",this.fire(new a.k("trackuserlocationstart"));break;case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":case"BACKGROUND_ERROR":gu--,Uc=!1,this._watchState="OFF",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background-error"),this.fire(new a.k("trackuserlocationend"));break;case"BACKGROUND":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._lastKnownPosition&&this._updateCamera(this._lastKnownPosition),this.fire(new a.k("trackuserlocationstart")),this.fire(new a.k("userlocationfocus"));break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}switch(this._watchState){case"WAITING_ACTIVE":this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active");break;case"ACTIVE_LOCK":this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active");break;case"OFF":break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}if(this._watchState==="OFF"&&this._geolocationWatchID!==void 0)this._clearWatch();else if(this._geolocationWatchID===void 0){let ue;this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","true"),gu++,gu>1?(ue={maximumAge:6e5,timeout:0},Uc=!0):(ue=this.options.positionOptions,Uc=!1),this._geolocationWatchID=window.navigator.geolocation.watchPosition(this._onSuccess,this._onError,ue)}}else window.navigator.geolocation.getCurrentPosition(this._onSuccess,this._onError,this.options.positionOptions),this._timeoutId=setTimeout(this._finish,1e4);return!0}_clearWatch(){window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0,this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","false"),this.options.showUserLocation&&this._updateMarker(null)}},i.Hash=bh,i.ImageSource=Gt,i.KeyboardHandler=Xt,i.LngLatBounds=ce,i.LogoControl=Yn,i.Map=class extends Ra{constructor(ue){a.bf.mark(a.bg.create);let w=Object.assign(Object.assign({},Xs),ue);if(w.minZoom!=null&&w.maxZoom!=null&&w.minZoom>w.maxZoom)throw new Error("maxZoom must be greater than or equal to minZoom");if(w.minPitch!=null&&w.maxPitch!=null&&w.minPitch>w.maxPitch)throw new Error("maxPitch must be greater than or equal to minPitch");if(w.minPitch!=null&&w.minPitch<0)throw new Error("minPitch must be greater than or equal to 0");if(w.maxPitch!=null&&w.maxPitch>85)throw new Error("maxPitch must be less than or equal to 85");if(super(new al(w.minZoom,w.maxZoom,w.minPitch,w.maxPitch,w.renderWorldCopies),{bearingSnap:w.bearingSnap}),this._idleTriggered=!1,this._crossFadingFactor=1,this._renderTaskQueue=new zn,this._controls=[],this._mapId=a.a4(),this._contextLost=B=>{B.preventDefault(),this._frameRequest&&(this._frameRequest.abort(),this._frameRequest=null),this.fire(new a.k("webglcontextlost",{originalEvent:B}))},this._contextRestored=B=>{this._setupPainter(),this.resize(),this._update(),this.fire(new a.k("webglcontextrestored",{originalEvent:B}))},this._onMapScroll=B=>{if(B.target===this._container)return this._container.scrollTop=0,this._container.scrollLeft=0,!1},this._onWindowOnline=()=>{this._update()},this._interactive=w.interactive,this._maxTileCacheSize=w.maxTileCacheSize,this._maxTileCacheZoomLevels=w.maxTileCacheZoomLevels,this._failIfMajorPerformanceCaveat=w.failIfMajorPerformanceCaveat===!0,this._preserveDrawingBuffer=w.preserveDrawingBuffer===!0,this._antialias=w.antialias===!0,this._trackResize=w.trackResize===!0,this._bearingSnap=w.bearingSnap,this._refreshExpiredTiles=w.refreshExpiredTiles===!0,this._fadeDuration=w.fadeDuration,this._crossSourceCollisions=w.crossSourceCollisions===!0,this._collectResourceTiming=w.collectResourceTiming===!0,this._locale=Object.assign(Object.assign({},Ho),w.locale),this._clickTolerance=w.clickTolerance,this._overridePixelRatio=w.pixelRatio,this._maxCanvasSize=w.maxCanvasSize,this.transformCameraUpdate=w.transformCameraUpdate,this.cancelPendingTileRequestsWhileZooming=w.cancelPendingTileRequestsWhileZooming===!0,this._imageQueueHandle=p.addThrottleControl(()=>this.isMoving()),this._requestManager=new C(w.transformRequest),typeof w.container=="string"){if(this._container=document.getElementById(w.container),!this._container)throw new Error(`Container '${w.container}' not found.`)}else{if(!(w.container instanceof HTMLElement))throw new Error("Invalid type: 'container' must be a String or HTMLElement.");this._container=w.container}if(w.maxBounds&&this.setMaxBounds(w.maxBounds),this._setupContainer(),this._setupPainter(),this.on("move",()=>this._update(!1)).on("moveend",()=>this._update(!1)).on("zoom",()=>this._update(!0)).on("terrain",()=>{this.painter.terrainFacilitator.dirty=!0,this._update(!0)}).once("idle",()=>{this._idleTriggered=!0}),typeof window!="undefined"){addEventListener("online",this._onWindowOnline,!1);let B=!1,Q=nh(ee=>{this._trackResize&&!this._removed&&(this.resize(ee),this.redraw())},50);this._resizeObserver=new ResizeObserver(ee=>{B?Q(ee):B=!0}),this._resizeObserver.observe(this._container)}this.handlers=new ka(this,w),this._hash=w.hash&&new bh(typeof w.hash=="string"&&w.hash||void 0).addTo(this),this._hash&&this._hash._onHashChange()||(this.jumpTo({center:w.center,zoom:w.zoom,bearing:w.bearing,pitch:w.pitch}),w.bounds&&(this.resize(),this.fitBounds(w.bounds,a.e({},w.fitBoundsOptions,{duration:0})))),this.resize(),this._localIdeographFontFamily=w.localIdeographFontFamily,this._validateStyle=w.validateStyle,w.style&&this.setStyle(w.style,{localIdeographFontFamily:w.localIdeographFontFamily}),w.attributionControl&&this.addControl(new Na(typeof w.attributionControl=="boolean"?void 0:w.attributionControl)),w.maplibreLogo&&this.addControl(new Yn,w.logoPosition),this.on("style.load",()=>{this.transform.unmodified&&this.jumpTo(this.style.stylesheet)}),this.on("data",B=>{this._update(B.dataType==="style"),this.fire(new a.k(`${B.dataType}data`,B))}),this.on("dataloading",B=>{this.fire(new a.k(`${B.dataType}dataloading`,B))}),this.on("dataabort",B=>{this.fire(new a.k("sourcedataabort",B))})}_getMapId(){return this._mapId}addControl(ue,w){if(w===void 0&&(w=ue.getDefaultPosition?ue.getDefaultPosition():"top-right"),!ue||!ue.onAdd)return this.fire(new a.j(new Error("Invalid argument to map.addControl(). Argument must be a control with onAdd and onRemove methods.")));let B=ue.onAdd(this);this._controls.push(ue);let Q=this._controlPositions[w];return w.indexOf("bottom")!==-1?Q.insertBefore(B,Q.firstChild):Q.appendChild(B),this}removeControl(ue){if(!ue||!ue.onRemove)return this.fire(new a.j(new Error("Invalid argument to map.removeControl(). Argument must be a control with onAdd and onRemove methods.")));let w=this._controls.indexOf(ue);return w>-1&&this._controls.splice(w,1),ue.onRemove(this),this}hasControl(ue){return this._controls.indexOf(ue)>-1}calculateCameraOptionsFromTo(ue,w,B,Q){return Q==null&&this.terrain&&(Q=this.terrain.getElevationForLngLatZoom(B,this.transform.tileZoom)),super.calculateCameraOptionsFromTo(ue,w,B,Q)}resize(ue){var w;let B=this._containerDimensions(),Q=B[0],ee=B[1],le=this._getClampedPixelRatio(Q,ee);if(this._resizeCanvas(Q,ee,le),this.painter.resize(Q,ee,le),this.painter.overLimit()){let Xe=this.painter.context.gl;this._maxCanvasSize=[Xe.drawingBufferWidth,Xe.drawingBufferHeight];let ot=this._getClampedPixelRatio(Q,ee);this._resizeCanvas(Q,ee,ot),this.painter.resize(Q,ee,ot)}this.transform.resize(Q,ee),(w=this._requestedCameraState)===null||w===void 0||w.resize(Q,ee);let qe=!this._moving;return qe&&(this.stop(),this.fire(new a.k("movestart",ue)).fire(new a.k("move",ue))),this.fire(new a.k("resize",ue)),qe&&this.fire(new a.k("moveend",ue)),this}_getClampedPixelRatio(ue,w){let{0:B,1:Q}=this._maxCanvasSize,ee=this.getPixelRatio(),le=ue*ee,qe=w*ee;return Math.min(le>B?B/le:1,qe>Q?Q/qe:1)*ee}getPixelRatio(){var ue;return(ue=this._overridePixelRatio)!==null&&ue!==void 0?ue:devicePixelRatio}setPixelRatio(ue){this._overridePixelRatio=ue,this.resize()}getBounds(){return this.transform.getBounds()}getMaxBounds(){return this.transform.getMaxBounds()}setMaxBounds(ue){return this.transform.setMaxBounds(ce.convert(ue)),this._update()}setMinZoom(ue){if((ue=ue==null?-2:ue)>=-2&&ue<=this.transform.maxZoom)return this.transform.minZoom=ue,this._update(),this.getZoom()<ue&&this.setZoom(ue),this;throw new Error("minZoom must be between -2 and the current maxZoom, inclusive")}getMinZoom(){return this.transform.minZoom}setMaxZoom(ue){if((ue=ue==null?22:ue)>=this.transform.minZoom)return this.transform.maxZoom=ue,this._update(),this.getZoom()>ue&&this.setZoom(ue),this;throw new Error("maxZoom must be greater than the current minZoom")}getMaxZoom(){return this.transform.maxZoom}setMinPitch(ue){if((ue=ue==null?0:ue)<0)throw new Error("minPitch must be greater than or equal to 0");if(ue>=0&&ue<=this.transform.maxPitch)return this.transform.minPitch=ue,this._update(),this.getPitch()<ue&&this.setPitch(ue),this;throw new Error("minPitch must be between 0 and the current maxPitch, inclusive")}getMinPitch(){return this.transform.minPitch}setMaxPitch(ue){if((ue=ue==null?60:ue)>85)throw new Error("maxPitch must be less than or equal to 85");if(ue>=this.transform.minPitch)return this.transform.maxPitch=ue,this._update(),this.getPitch()>ue&&this.setPitch(ue),this;throw new Error("maxPitch must be greater than the current minPitch")}getMaxPitch(){return this.transform.maxPitch}getRenderWorldCopies(){return this.transform.renderWorldCopies}setRenderWorldCopies(ue){return this.transform.renderWorldCopies=ue,this._update()}project(ue){return this.transform.locationPoint(a.N.convert(ue),this.style&&this.terrain)}unproject(ue){return this.transform.pointLocation(a.P.convert(ue),this.terrain)}isMoving(){var ue;return this._moving||((ue=this.handlers)===null||ue===void 0?void 0:ue.isMoving())}isZooming(){var ue;return this._zooming||((ue=this.handlers)===null||ue===void 0?void 0:ue.isZooming())}isRotating(){var ue;return this._rotating||((ue=this.handlers)===null||ue===void 0?void 0:ue.isRotating())}_createDelegatedListener(ue,w,B){if(ue==="mouseenter"||ue==="mouseover"){let Q=!1;return{layers:w,listener:B,delegates:{mousemove:le=>{let qe=w.filter(ot=>this.getLayer(ot)),Xe=qe.length!==0?this.queryRenderedFeatures(le.point,{layers:qe}):[];Xe.length?Q||(Q=!0,B.call(this,new jl(ue,this,le.originalEvent,{features:Xe}))):Q=!1},mouseout:()=>{Q=!1}}}}if(ue==="mouseleave"||ue==="mouseout"){let Q=!1;return{layers:w,listener:B,delegates:{mousemove:qe=>{let Xe=w.filter(ot=>this.getLayer(ot));(Xe.length!==0?this.queryRenderedFeatures(qe.point,{layers:Xe}):[]).length?Q=!0:Q&&(Q=!1,B.call(this,new jl(ue,this,qe.originalEvent)))},mouseout:qe=>{Q&&(Q=!1,B.call(this,new jl(ue,this,qe.originalEvent)))}}}}{let Q=ee=>{let le=w.filter(Xe=>this.getLayer(Xe)),qe=le.length!==0?this.queryRenderedFeatures(ee.point,{layers:le}):[];qe.length&&(ee.features=qe,B.call(this,ee),delete ee.features)};return{layers:w,listener:B,delegates:{[ue]:Q}}}}_saveDelegatedListener(ue,w){this._delegatedListeners=this._delegatedListeners||{},this._delegatedListeners[ue]=this._delegatedListeners[ue]||[],this._delegatedListeners[ue].push(w)}_removeDelegatedListener(ue,w,B){if(!this._delegatedListeners||!this._delegatedListeners[ue])return;let Q=this._delegatedListeners[ue];for(let ee=0;ee<Q.length;ee++){let le=Q[ee];if(le.listener===B&&le.layers.length===w.length&&le.layers.every(qe=>w.includes(qe))){for(let qe in le.delegates)this.off(qe,le.delegates[qe]);return void Q.splice(ee,1)}}}on(ue,w,B){if(B===void 0)return super.on(ue,w);let Q=this._createDelegatedListener(ue,typeof w=="string"?[w]:w,B);this._saveDelegatedListener(ue,Q);for(let ee in Q.delegates)this.on(ee,Q.delegates[ee]);return this}once(ue,w,B){if(B===void 0)return super.once(ue,w);let Q=typeof w=="string"?[w]:w,ee=this._createDelegatedListener(ue,Q,B);for(let le in ee.delegates){let qe=ee.delegates[le];ee.delegates[le]=(...Xe)=>{this._removeDelegatedListener(ue,Q,B),qe(...Xe)}}this._saveDelegatedListener(ue,ee);for(let le in ee.delegates)this.once(le,ee.delegates[le]);return this}off(ue,w,B){return B===void 0?super.off(ue,w):(this._removeDelegatedListener(ue,typeof w=="string"?[w]:w,B),this)}queryRenderedFeatures(ue,w){if(!this.style)return[];let B,Q=ue instanceof a.P||Array.isArray(ue),ee=Q?ue:[[0,0],[this.transform.width,this.transform.height]];if(w=w||(Q?{}:ue)||{},ee instanceof a.P||typeof ee[0]=="number")B=[a.P.convert(ee)];else{let le=a.P.convert(ee[0]),qe=a.P.convert(ee[1]);B=[le,new a.P(qe.x,le.y),qe,new a.P(le.x,qe.y),le]}return this.style.queryRenderedFeatures(B,w,this.transform)}querySourceFeatures(ue,w){return this.style.querySourceFeatures(ue,w)}setStyle(ue,w){return(w=a.e({},{localIdeographFontFamily:this._localIdeographFontFamily,validate:this._validateStyle},w)).diff!==!1&&w.localIdeographFontFamily===this._localIdeographFontFamily&&this.style&&ue?(this._diffStyle(ue,w),this):(this._localIdeographFontFamily=w.localIdeographFontFamily,this._updateStyle(ue,w))}setTransformRequest(ue){return this._requestManager.setTransformRequest(ue),this}_getUIString(ue){let w=this._locale[ue];if(w==null)throw new Error(`Missing UI string '${ue}'`);return w}_updateStyle(ue,w){if(w.transformStyle&&this.style&&!this.style._loaded)return void this.style.once("style.load",()=>this._updateStyle(ue,w));let B=this.style&&w.transformStyle?this.style.serialize():void 0;return this.style&&(this.style.setEventedParent(null),this.style._remove(!ue)),ue?(this.style=new Ga(this,w||{}),this.style.setEventedParent(this,{style:this.style}),typeof ue=="string"?this.style.loadURL(ue,w,B):this.style.loadJSON(ue,w,B),this):(delete this.style,this)}_lazyInitEmptyStyle(){this.style||(this.style=new Ga(this,{}),this.style.setEventedParent(this,{style:this.style}),this.style.loadEmpty())}_diffStyle(ue,w){if(typeof ue=="string"){let B=this._requestManager.transformRequest(ue,"Style");a.h(B,new AbortController).then(Q=>{this._updateDiff(Q.data,w)}).catch(Q=>{Q&&this.fire(new a.j(Q))})}else typeof ue=="object"&&this._updateDiff(ue,w)}_updateDiff(ue,w){try{this.style.setState(ue,w)&&this._update(!0)}catch(B){a.w(`Unable to perform style diff: ${B.message||B.error||B}. Rebuilding the style from scratch.`),this._updateStyle(ue,w)}}getStyle(){if(this.style)return this.style.serialize()}isStyleLoaded(){return this.style?this.style.loaded():a.w("There is no style added to the map.")}addSource(ue,w){return this._lazyInitEmptyStyle(),this.style.addSource(ue,w),this._update(!0)}isSourceLoaded(ue){let w=this.style&&this.style.sourceCaches[ue];if(w!==void 0)return w.loaded();this.fire(new a.j(new Error(`There is no source with ID '${ue}'`)))}setTerrain(ue){if(this.style._checkLoaded(),this._terrainDataCallback&&this.style.off("data",this._terrainDataCallback),ue){let w=this.style.sourceCaches[ue.source];if(!w)throw new Error(`cannot load terrain, because there exists no source with ID: ${ue.source}`);this.terrain===null&&w.reload();for(let B in this.style._layers){let Q=this.style._layers[B];Q.type==="hillshade"&&Q.source===ue.source&&a.w("You are using the same source for a hillshade layer and for 3D terrain. Please consider using two separate sources to improve rendering quality.")}this.terrain=new Xo(this.painter,w,ue),this.painter.renderToTexture=new Ts(this.painter,this.terrain),this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this.transform.elevation=this.terrain.getElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this._terrainDataCallback=B=>{B.dataType==="style"?this.terrain.sourceCache.freeRtt():B.dataType==="source"&&B.tile&&(B.sourceId!==ue.source||this._elevationFreeze||(this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this.transform.elevation=this.terrain.getElevationForLngLatZoom(this.transform.center,this.transform.tileZoom)),this.terrain.sourceCache.freeRtt(B.tile.tileID))},this.style.on("data",this._terrainDataCallback)}else this.terrain&&this.terrain.sourceCache.destruct(),this.terrain=null,this.painter.renderToTexture&&this.painter.renderToTexture.destruct(),this.painter.renderToTexture=null,this.transform.minElevationForCurrentTile=0,this.transform.elevation=0;return this.fire(new a.k("terrain",{terrain:ue})),this}getTerrain(){var ue,w;return(w=(ue=this.terrain)===null||ue===void 0?void 0:ue.options)!==null&&w!==void 0?w:null}areTilesLoaded(){let ue=this.style&&this.style.sourceCaches;for(let w in ue){let B=ue[w]._tiles;for(let Q in B){let ee=B[Q];if(ee.state!=="loaded"&&ee.state!=="errored")return!1}}return!0}removeSource(ue){return this.style.removeSource(ue),this._update(!0)}getSource(ue){return this.style.getSource(ue)}addImage(ue,w,B={}){let{pixelRatio:Q=1,sdf:ee=!1,stretchX:le,stretchY:qe,content:Xe,textFitWidth:ot,textFitHeight:Tt}=B;if(this._lazyInitEmptyStyle(),!(w instanceof HTMLImageElement||a.b(w))){if(w.width===void 0||w.height===void 0)return this.fire(new a.j(new Error("Invalid arguments to map.addImage(). The second argument must be an `HTMLImageElement`, `ImageData`, `ImageBitmap`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`")));{let{width:Kt,height:Jt,data:xr}=w,Pr=w;return this.style.addImage(ue,{data:new a.R({width:Kt,height:Jt},new Uint8Array(xr)),pixelRatio:Q,stretchX:le,stretchY:qe,content:Xe,textFitWidth:ot,textFitHeight:Tt,sdf:ee,version:0,userImage:Pr}),Pr.onAdd&&Pr.onAdd(this,ue),this}}{let{width:Kt,height:Jt,data:xr}=u.getImageData(w);this.style.addImage(ue,{data:new a.R({width:Kt,height:Jt},xr),pixelRatio:Q,stretchX:le,stretchY:qe,content:Xe,textFitWidth:ot,textFitHeight:Tt,sdf:ee,version:0})}}updateImage(ue,w){let B=this.style.getImage(ue);if(!B)return this.fire(new a.j(new Error("The map has no image with that id. If you are adding a new image use `map.addImage(...)` instead.")));let Q=w instanceof HTMLImageElement||a.b(w)?u.getImageData(w):w,{width:ee,height:le,data:qe}=Q;if(ee===void 0||le===void 0)return this.fire(new a.j(new Error("Invalid arguments to map.updateImage(). The second argument must be an `HTMLImageElement`, `ImageData`, `ImageBitmap`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`")));if(ee!==B.data.width||le!==B.data.height)return this.fire(new a.j(new Error("The width and height of the updated image must be that same as the previous version of the image")));let Xe=!(w instanceof HTMLImageElement||a.b(w));return B.data.replace(qe,Xe),this.style.updateImage(ue,B),this}getImage(ue){return this.style.getImage(ue)}hasImage(ue){return ue?!!this.style.getImage(ue):(this.fire(new a.j(new Error("Missing required image id"))),!1)}removeImage(ue){this.style.removeImage(ue)}loadImage(ue){return p.getImage(this._requestManager.transformRequest(ue,"Image"),new AbortController)}listImages(){return this.style.listImages()}addLayer(ue,w){return this._lazyInitEmptyStyle(),this.style.addLayer(ue,w),this._update(!0)}moveLayer(ue,w){return this.style.moveLayer(ue,w),this._update(!0)}removeLayer(ue){return this.style.removeLayer(ue),this._update(!0)}getLayer(ue){return this.style.getLayer(ue)}getLayersOrder(){return this.style.getLayersOrder()}setLayerZoomRange(ue,w,B){return this.style.setLayerZoomRange(ue,w,B),this._update(!0)}setFilter(ue,w,B={}){return this.style.setFilter(ue,w,B),this._update(!0)}getFilter(ue){return this.style.getFilter(ue)}setPaintProperty(ue,w,B,Q={}){return this.style.setPaintProperty(ue,w,B,Q),this._update(!0)}getPaintProperty(ue,w){return this.style.getPaintProperty(ue,w)}setLayoutProperty(ue,w,B,Q={}){return this.style.setLayoutProperty(ue,w,B,Q),this._update(!0)}getLayoutProperty(ue,w){return this.style.getLayoutProperty(ue,w)}setGlyphs(ue,w={}){return this._lazyInitEmptyStyle(),this.style.setGlyphs(ue,w),this._update(!0)}getGlyphs(){return this.style.getGlyphsUrl()}addSprite(ue,w,B={}){return this._lazyInitEmptyStyle(),this.style.addSprite(ue,w,B,Q=>{Q||this._update(!0)}),this}removeSprite(ue){return this._lazyInitEmptyStyle(),this.style.removeSprite(ue),this._update(!0)}getSprite(){return this.style.getSprite()}setSprite(ue,w={}){return this._lazyInitEmptyStyle(),this.style.setSprite(ue,w,B=>{B||this._update(!0)}),this}setLight(ue,w={}){return this._lazyInitEmptyStyle(),this.style.setLight(ue,w),this._update(!0)}getLight(){return this.style.getLight()}setSky(ue){return this._lazyInitEmptyStyle(),this.style.setSky(ue),this._update(!0)}getSky(){return this.style.getSky()}setFeatureState(ue,w){return this.style.setFeatureState(ue,w),this._update()}removeFeatureState(ue,w){return this.style.removeFeatureState(ue,w),this._update()}getFeatureState(ue){return this.style.getFeatureState(ue)}getContainer(){return this._container}getCanvasContainer(){return this._canvasContainer}getCanvas(){return this._canvas}_containerDimensions(){let ue=0,w=0;return this._container&&(ue=this._container.clientWidth||400,w=this._container.clientHeight||300),[ue,w]}_setupContainer(){let ue=this._container;ue.classList.add("maplibregl-map");let w=this._canvasContainer=c.create("div","maplibregl-canvas-container",ue);this._interactive&&w.classList.add("maplibregl-interactive"),this._canvas=c.create("canvas","maplibregl-canvas",w),this._canvas.addEventListener("webglcontextlost",this._contextLost,!1),this._canvas.addEventListener("webglcontextrestored",this._contextRestored,!1),this._canvas.setAttribute("tabindex",this._interactive?"0":"-1"),this._canvas.setAttribute("aria-label",this._getUIString("Map.Title")),this._canvas.setAttribute("role","region");let B=this._containerDimensions(),Q=this._getClampedPixelRatio(B[0],B[1]);this._resizeCanvas(B[0],B[1],Q);let ee=this._controlContainer=c.create("div","maplibregl-control-container",ue),le=this._controlPositions={};["top-left","top-right","bottom-left","bottom-right"].forEach(qe=>{le[qe]=c.create("div",`maplibregl-ctrl-${qe} `,ee)}),this._container.addEventListener("scroll",this._onMapScroll,!1)}_resizeCanvas(ue,w,B){this._canvas.width=Math.floor(B*ue),this._canvas.height=Math.floor(B*w),this._canvas.style.width=`${ue}px`,this._canvas.style.height=`${w}px`}_setupPainter(){let ue={alpha:!0,stencil:!0,depth:!0,failIfMajorPerformanceCaveat:this._failIfMajorPerformanceCaveat,preserveDrawingBuffer:this._preserveDrawingBuffer,antialias:this._antialias||!1},w=null;this._canvas.addEventListener("webglcontextcreationerror",Q=>{w={requestedAttributes:ue},Q&&(w.statusMessage=Q.statusMessage,w.type=Q.type)},{once:!0});let B=this._canvas.getContext("webgl2",ue)||this._canvas.getContext("webgl",ue);if(!B){let Q="Failed to initialize WebGL";throw w?(w.message=Q,new Error(JSON.stringify(w))):new Error(Q)}this.painter=new Dc(B,this.transform),f.testSupport(B)}loaded(){return!this._styleDirty&&!this._sourcesDirty&&!!this.style&&this.style.loaded()}_update(ue){return this.style&&this.style._loaded?(this._styleDirty=this._styleDirty||ue,this._sourcesDirty=!0,this.triggerRepaint(),this):this}_requestRenderFrame(ue){return this._update(),this._renderTaskQueue.add(ue)}_cancelRenderFrame(ue){this._renderTaskQueue.remove(ue)}_render(ue){let w=this._idleTriggered?this._fadeDuration:0;if(this.painter.context.setDirty(),this.painter.setBaseState(),this._renderTaskQueue.run(ue),this._removed)return;let B=!1;if(this.style&&this._styleDirty){this._styleDirty=!1;let ee=this.transform.zoom,le=u.now();this.style.zoomHistory.update(ee,le);let qe=new a.z(ee,{now:le,fadeDuration:w,zoomHistory:this.style.zoomHistory,transition:this.style.getTransition()}),Xe=qe.crossFadingFactor();Xe===1&&Xe===this._crossFadingFactor||(B=!0,this._crossFadingFactor=Xe),this.style.update(qe)}this.style&&this._sourcesDirty&&(this._sourcesDirty=!1,this.style._updateSources(this.transform)),this.terrain?(this.terrain.sourceCache.update(this.transform,this.terrain),this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this._elevationFreeze||(this.transform.elevation=this.terrain.getElevationForLngLatZoom(this.transform.center,this.transform.tileZoom))):(this.transform.minElevationForCurrentTile=0,this.transform.elevation=0),this._placementDirty=this.style&&this.style._updatePlacement(this.painter.transform,this.showCollisionBoxes,w,this._crossSourceCollisions),this.painter.render(this.style,{showTileBoundaries:this.showTileBoundaries,showOverdrawInspector:this._showOverdrawInspector,rotating:this.isRotating(),zooming:this.isZooming(),moving:this.isMoving(),fadeDuration:w,showPadding:this.showPadding}),this.fire(new a.k("render")),this.loaded()&&!this._loaded&&(this._loaded=!0,a.bf.mark(a.bg.load),this.fire(new a.k("load"))),this.style&&(this.style.hasTransitions()||B)&&(this._styleDirty=!0),this.style&&!this._placementDirty&&this.style._releaseSymbolFadeTiles();let Q=this._sourcesDirty||this._styleDirty||this._placementDirty;return Q||this._repaint?this.triggerRepaint():!this.isMoving()&&this.loaded()&&this.fire(new a.k("idle")),!this._loaded||this._fullyLoaded||Q||(this._fullyLoaded=!0,a.bf.mark(a.bg.fullLoad)),this}redraw(){return this.style&&(this._frameRequest&&(this._frameRequest.abort(),this._frameRequest=null),this._render(0)),this}remove(){var ue;this._hash&&this._hash.remove();for(let B of this._controls)B.onRemove(this);this._controls=[],this._frameRequest&&(this._frameRequest.abort(),this._frameRequest=null),this._renderTaskQueue.clear(),this.painter.destroy(),this.handlers.destroy(),delete this.handlers,this.setStyle(null),typeof window!="undefined"&&removeEventListener("online",this._onWindowOnline,!1),p.removeThrottleControl(this._imageQueueHandle),(ue=this._resizeObserver)===null||ue===void 0||ue.disconnect();let w=this.painter.context.gl.getExtension("WEBGL_lose_context");w!=null&&w.loseContext&&w.loseContext(),this._canvas.removeEventListener("webglcontextrestored",this._contextRestored,!1),this._canvas.removeEventListener("webglcontextlost",this._contextLost,!1),c.remove(this._canvasContainer),c.remove(this._controlContainer),this._container.classList.remove("maplibregl-map"),a.bf.clearMetrics(),this._removed=!0,this.fire(new a.k("remove"))}triggerRepaint(){this.style&&!this._frameRequest&&(this._frameRequest=new AbortController,u.frameAsync(this._frameRequest).then(ue=>{a.bf.frame(ue),this._frameRequest=null,this._render(ue)}).catch(()=>{}))}get showTileBoundaries(){return!!this._showTileBoundaries}set showTileBoundaries(ue){this._showTileBoundaries!==ue&&(this._showTileBoundaries=ue,this._update())}get showPadding(){return!!this._showPadding}set showPadding(ue){this._showPadding!==ue&&(this._showPadding=ue,this._update())}get showCollisionBoxes(){return!!this._showCollisionBoxes}set showCollisionBoxes(ue){this._showCollisionBoxes!==ue&&(this._showCollisionBoxes=ue,ue?this.style._generateCollisionBoxes():this._update())}get showOverdrawInspector(){return!!this._showOverdrawInspector}set showOverdrawInspector(ue){this._showOverdrawInspector!==ue&&(this._showOverdrawInspector=ue,this._update())}get repaint(){return!!this._repaint}set repaint(ue){this._repaint!==ue&&(this._repaint=ue,this.triggerRepaint())}get vertices(){return!!this._vertices}set vertices(ue){this._vertices=ue,this._update()}get version(){return yl}getCameraTargetElevation(){return this.transform.elevation}},i.MapMouseEvent=jl,i.MapTouchEvent=lf,i.MapWheelEvent=Vh,i.Marker=Yu,i.NavigationControl=class{constructor(ue){this._updateZoomButtons=()=>{let w=this._map.getZoom(),B=w===this._map.getMaxZoom(),Q=w===this._map.getMinZoom();this._zoomInButton.disabled=B,this._zoomOutButton.disabled=Q,this._zoomInButton.setAttribute("aria-disabled",B.toString()),this._zoomOutButton.setAttribute("aria-disabled",Q.toString())},this._rotateCompassArrow=()=>{let w=this.options.visualizePitch?`scale(${1/Math.pow(Math.cos(this._map.transform.pitch*(Math.PI/180)),.5)}) rotateX(${this._map.transform.pitch}deg) rotateZ(${this._map.transform.angle*(180/Math.PI)}deg)`:`rotate(${this._map.transform.angle*(180/Math.PI)}deg)`;this._compassIcon.style.transform=w},this._setButtonTitle=(w,B)=>{let Q=this._map._getUIString(`NavigationControl.${B}`);w.title=Q,w.setAttribute("aria-label",Q)},this.options=a.e({},va,ue),this._container=c.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._container.addEventListener("contextmenu",w=>w.preventDefault()),this.options.showZoom&&(this._zoomInButton=this._createButton("maplibregl-ctrl-zoom-in",w=>this._map.zoomIn({},{originalEvent:w})),c.create("span","maplibregl-ctrl-icon",this._zoomInButton).setAttribute("aria-hidden","true"),this._zoomOutButton=this._createButton("maplibregl-ctrl-zoom-out",w=>this._map.zoomOut({},{originalEvent:w})),c.create("span","maplibregl-ctrl-icon",this._zoomOutButton).setAttribute("aria-hidden","true")),this.options.showCompass&&(this._compass=this._createButton("maplibregl-ctrl-compass",w=>{this.options.visualizePitch?this._map.resetNorthPitch({},{originalEvent:w}):this._map.resetNorth({},{originalEvent:w})}),this._compassIcon=c.create("span","maplibregl-ctrl-icon",this._compass),this._compassIcon.setAttribute("aria-hidden","true"))}onAdd(ue){return this._map=ue,this.options.showZoom&&(this._setButtonTitle(this._zoomInButton,"ZoomIn"),this._setButtonTitle(this._zoomOutButton,"ZoomOut"),this._map.on("zoom",this._updateZoomButtons),this._updateZoomButtons()),this.options.showCompass&&(this._setButtonTitle(this._compass,"ResetBearing"),this.options.visualizePitch&&this._map.on("pitch",this._rotateCompassArrow),this._map.on("rotate",this._rotateCompassArrow),this._rotateCompassArrow(),this._handler=new no(this._map,this._compass,this.options.visualizePitch)),this._container}onRemove(){c.remove(this._container),this.options.showZoom&&this._map.off("zoom",this._updateZoomButtons),this.options.showCompass&&(this.options.visualizePitch&&this._map.off("pitch",this._rotateCompassArrow),this._map.off("rotate",this._rotateCompassArrow),this._handler.off(),delete this._handler),delete this._map}_createButton(ue,w){let B=c.create("button",ue,this._container);return B.type="button",B.addEventListener("click",w),B}},i.Popup=class extends a.E{constructor(ue){super(),this.remove=()=>(this._content&&c.remove(this._content),this._container&&(c.remove(this._container),delete this._container),this._map&&(this._map.off("move",this._update),this._map.off("move",this._onClose),this._map.off("click",this._onClose),this._map.off("remove",this.remove),this._map.off("mousemove",this._onMouseMove),this._map.off("mouseup",this._onMouseUp),this._map.off("drag",this._onDrag),this._map._canvasContainer.classList.remove("maplibregl-track-pointer"),delete this._map,this.fire(new a.k("close"))),this),this._onMouseUp=w=>{this._update(w.point)},this._onMouseMove=w=>{this._update(w.point)},this._onDrag=w=>{this._update(w.point)},this._update=w=>{var B;if(!this._map||!this._lngLat&&!this._trackPointer||!this._content)return;if(!this._container){if(this._container=c.create("div","maplibregl-popup",this._map.getContainer()),this._tip=c.create("div","maplibregl-popup-tip",this._container),this._container.appendChild(this._content),this.options.className)for(let Xe of this.options.className.split(" "))this._container.classList.add(Xe);this._closeButton&&this._closeButton.setAttribute("aria-label",this._map._getUIString("Popup.Close")),this._trackPointer&&this._container.classList.add("maplibregl-popup-track-pointer")}if(this.options.maxWidth&&this._container.style.maxWidth!==this.options.maxWidth&&(this._container.style.maxWidth=this.options.maxWidth),this._lngLat=this._map.transform.renderWorldCopies&&!this._trackPointer?is(this._lngLat,this._flatPos,this._map.transform):(B=this._lngLat)===null||B===void 0?void 0:B.wrap(),this._trackPointer&&!w)return;let Q=this._flatPos=this._pos=this._trackPointer&&w?w:this._map.project(this._lngLat);this._map.terrain&&(this._flatPos=this._trackPointer&&w?w:this._map.transform.locationPoint(this._lngLat));let ee=this.options.anchor,le=hc(this.options.offset);if(!ee){let Xe=this._container.offsetWidth,ot=this._container.offsetHeight,Tt;Tt=Q.y+le.bottom.y<ot?["top"]:Q.y>this._map.transform.height-ot?["bottom"]:[],Q.x<Xe/2?Tt.push("left"):Q.x>this._map.transform.width-Xe/2&&Tt.push("right"),ee=Tt.length===0?"bottom":Tt.join("-")}let qe=Q.add(le[ee]);this.options.subpixelPositioning||(qe=qe.round()),c.setTransform(this._container,`${$l[ee]} translate(${qe.x}px,${qe.y}px)`),ku(this._container,ee,"popup")},this._onClose=()=>{this.remove()},this.options=a.e(Object.create(oo),ue)}addTo(ue){return this._map&&this.remove(),this._map=ue,this.options.closeOnClick&&this._map.on("click",this._onClose),this.options.closeOnMove&&this._map.on("move",this._onClose),this._map.on("remove",this.remove),this._update(),this._focusFirstElement(),this._trackPointer?(this._map.on("mousemove",this._onMouseMove),this._map.on("mouseup",this._onMouseUp),this._container&&this._container.classList.add("maplibregl-popup-track-pointer"),this._map._canvasContainer.classList.add("maplibregl-track-pointer")):this._map.on("move",this._update),this.fire(new a.k("open")),this}isOpen(){return!!this._map}getLngLat(){return this._lngLat}setLngLat(ue){return this._lngLat=a.N.convert(ue),this._pos=null,this._flatPos=null,this._trackPointer=!1,this._update(),this._map&&(this._map.on("move",this._update),this._map.off("mousemove",this._onMouseMove),this._container&&this._container.classList.remove("maplibregl-popup-track-pointer"),this._map._canvasContainer.classList.remove("maplibregl-track-pointer")),this}trackPointer(){return this._trackPointer=!0,this._pos=null,this._flatPos=null,this._update(),this._map&&(this._map.off("move",this._update),this._map.on("mousemove",this._onMouseMove),this._map.on("drag",this._onDrag),this._container&&this._container.classList.add("maplibregl-popup-track-pointer"),this._map._canvasContainer.classList.add("maplibregl-track-pointer")),this}getElement(){return this._container}setText(ue){return this.setDOMContent(document.createTextNode(ue))}setHTML(ue){let w=document.createDocumentFragment(),B=document.createElement("body"),Q;for(B.innerHTML=ue;Q=B.firstChild,Q;)w.appendChild(Q);return this.setDOMContent(w)}getMaxWidth(){var ue;return(ue=this._container)===null||ue===void 0?void 0:ue.style.maxWidth}setMaxWidth(ue){return this.options.maxWidth=ue,this._update(),this}setDOMContent(ue){if(this._content)for(;this._content.hasChildNodes();)this._content.firstChild&&this._content.removeChild(this._content.firstChild);else this._content=c.create("div","maplibregl-popup-content",this._container);return this._content.appendChild(ue),this._createCloseButton(),this._update(),this._focusFirstElement(),this}addClassName(ue){return this._container&&this._container.classList.add(ue),this}removeClassName(ue){return this._container&&this._container.classList.remove(ue),this}setOffset(ue){return this.options.offset=ue,this._update(),this}toggleClassName(ue){if(this._container)return this._container.classList.toggle(ue)}setSubpixelPositioning(ue){this.options.subpixelPositioning=ue}_createCloseButton(){this.options.closeButton&&(this._closeButton=c.create("button","maplibregl-popup-close-button",this._content),this._closeButton.type="button",this._closeButton.innerHTML="×",this._closeButton.addEventListener("click",this._onClose))}_focusFirstElement(){if(!this.options.focusAfterOpen||!this._container)return;let ue=this._container.querySelector(Vc);ue&&ue.focus()}},i.RasterDEMTileSource=Wt,i.RasterTileSource=pt,i.ScaleControl=class{constructor(ue){this._onMove=()=>{Ac(this._map,this._container,this.options)},this.setUnit=w=>{this.options.unit=w,Ac(this._map,this._container,this.options)},this.options=Object.assign(Object.assign({},xu),ue)}getDefaultPosition(){return"bottom-left"}onAdd(ue){return this._map=ue,this._container=c.create("div","maplibregl-ctrl maplibregl-ctrl-scale",ue.getContainer()),this._map.on("move",this._onMove),this._onMove(),this._container}onRemove(){c.remove(this._container),this._map.off("move",this._onMove),this._map=void 0}},i.ScrollZoomHandler=Kr,i.Style=Ga,i.TerrainControl=class{constructor(ue){this._toggleTerrain=()=>{this._map.getTerrain()?this._map.setTerrain(null):this._map.setTerrain(this.options),this._updateTerrainIcon()},this._updateTerrainIcon=()=>{this._terrainButton.classList.remove("maplibregl-ctrl-terrain"),this._terrainButton.classList.remove("maplibregl-ctrl-terrain-enabled"),this._map.terrain?(this._terrainButton.classList.add("maplibregl-ctrl-terrain-enabled"),this._terrainButton.title=this._map._getUIString("TerrainControl.Disable")):(this._terrainButton.classList.add("maplibregl-ctrl-terrain"),this._terrainButton.title=this._map._getUIString("TerrainControl.Enable"))},this.options=ue}onAdd(ue){return this._map=ue,this._container=c.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._terrainButton=c.create("button","maplibregl-ctrl-terrain",this._container),c.create("span","maplibregl-ctrl-icon",this._terrainButton).setAttribute("aria-hidden","true"),this._terrainButton.type="button",this._terrainButton.addEventListener("click",this._toggleTerrain),this._updateTerrainIcon(),this._map.on("terrain",this._updateTerrainIcon),this._container}onRemove(){c.remove(this._container),this._map.off("terrain",this._updateTerrainIcon),this._map=void 0}},i.TwoFingersTouchPitchHandler=Bc,i.TwoFingersTouchRotateHandler=cf,i.TwoFingersTouchZoomHandler=pu,i.TwoFingersTouchZoomRotateHandler=Zi,i.VectorTileSource=ct,i.VideoSource=Nt,i.addSourceType=(ue,w)=>a._(void 0,void 0,void 0,function*(){if(wr(ue))throw new Error(`A source type called "${ue}" already exists.`);((B,Q)=>{sr[B]=Q})(ue,w)}),i.clearPrewarmedResources=function(){let ue=me;ue&&(ue.isPreloaded()&&ue.numActive()===1?(ue.release(_e),me=null):console.warn("Could not clear WebWorkers since there are active Map instances that still reference it. The pre-warmed WebWorker pool can only be cleared when all map instances have been removed with map.remove()"))},i.getMaxParallelImageRequests=function(){return a.a.MAX_PARALLEL_IMAGE_REQUESTS},i.getRTLTextPluginStatus=function(){return er().getRTLTextPluginStatus()},i.getVersion=function(){return Ku},i.getWorkerCount=function(){return Me.workerCount},i.getWorkerUrl=function(){return a.a.WORKER_URL},i.importScriptInWorkers=function(ue){return Ae().broadcast("IS",ue)},i.prewarm=function(){Se().acquire(_e)},i.setMaxParallelImageRequests=function(ue){a.a.MAX_PARALLEL_IMAGE_REQUESTS=ue},i.setRTLTextPlugin=function(ue,w){return er().setRTLTextPlugin(ue,w)},i.setWorkerCount=function(ue){Me.workerCount=ue},i.setWorkerUrl=function(ue){a.a.WORKER_URL=ue}});var n=e;return n})});var XHe=ye((Ixr,WHe)=>{"use strict";var iw=Dr(),OWt=iu().sanitizeHTML,qWt=TJ(),GHe=wx();function HHe(e,t){this.subplot=e,this.uid=e.uid+"-"+t,this.index=t,this.idSource="source-"+this.uid,this.idLayer=GHe.layoutLayerPrefix+this.uid,this.sourceType=null,this.source=null,this.layerType=null,this.below=null,this.visible=!1}var ag=HHe.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=o7(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,!!o7(e)){var r=BWt(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(GHe.traceLayerPrefix)===0){e=n;break}}return e};ag.updateLayer=function(e){var t=this.subplot,r=jHe(e),n=this.lookupBelow(),i=this.findFollowingMapLayerId(n);this.removeLayer(),o7(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(o7(e)){var t=jHe(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 o7(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 jHe(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=qWt(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 BWt(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=OWt(e.sourceattribution)),n}WHe.exports=function(t,r,n){var i=new HHe(t,r);return i.update(n),i}});var tje=ye((Rxr,eje)=>{"use strict";var kJ=VHe(),LJ=Dr(),KHe=nx(),ZHe=qa(),NWt=ho(),UWt=gv(),s7=vf(),JHe=Sg(),VWt=JHe.drawMode,GWt=JHe.selectMode,HWt=zf().prepSelect,jWt=zf().clearOutline,WWt=zf().clearSelectionsCache,XWt=zf().selectOnClick,nw=wx(),ZWt=XHe();function $He(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 Bh=$He.prototype;Bh.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)};Bh.createMap=function(e,t,r,n){var i=this,a=t[i.id],o=i.styleObj=QHe(a.style),s=a.bounds,l=s?[[s.west,s.south],[s.east,s.north]]:null,u=i.map=new kJ.Map({container:i.div,style:o.style,center:PJ(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 kJ.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(KHe.fetchTraceGeoData(e)),Promise.all(f).then(function(){i.fillBelowLookup(e,t),i.updateData(e),i.updateLayout(t),i.resolveOnRender(r)}).catch(n)};Bh.updateMap=function(e,t,r,n){var i=this,a=i.map,o=t[this.id];i.rejectOnError(n);var s=[],l=QHe(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(KHe.fetchTraceGeoData(e)),Promise.all(s).then(function(){i.fillBelowLookup(e,t),i.updateData(e),i.updateLayout(t),i.resolveOnRender(r)}).catch(n)};Bh.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 YHe={choroplethmap:0,densitymap:1,scattermap:2};Bh.updateData=function(e){var t=this.traceHash,r,n,i,a,o=e.slice().sort(function(f,h){return YHe[f[0].trace.type]-YHe[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]}};Bh.updateLayout=function(e){var t=this.map,r=e[this.id];!this.dragging&&!this.wheeling&&(t.setCenter(PJ(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()};Bh.resolveOnRender=function(e){var t=this.map;t.on("render",function r(){t.loaded()&&(t.off("render",r),setTimeout(e,10))})};Bh.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)};Bh.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"},NWt.setConvert(t.mockAxis,e)};Bh.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];ZHe.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]&&s7.hover(n,s,r.id)},s7.hover(n,s,r.id),n._fullLayout._hoversubplot=r.id});function a(){s7.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];ZHe.call("_storeDirectGUIEdit",n.layout,n._fullLayout._preGUI,r.getViewEdits(s));var l=r.viewInitial;i.setCenter(PJ(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(){WWt(r.dragOptions),jWt(r.dragOptions.gd)},r.onClickInPanFn=function(s){return function(l){var u=n._fullLayout.clickmode;u.indexOf("select")>-1&&XWt(l.originalEvent,n,[r.xaxis],[r.yaxis],r.id,s),u.indexOf("event")>-1&&s7.click(n,l.originalEvent)}}};Bh.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=LJ.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),GWt(a)||VWt(a)?(r.dragPan.disable(),r.on("zoomstart",t.clearOutline),t.dragOptions.prepFn=function(l,u,c){HWt(l,u,c,t.dragOptions,a)},UWt.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))};Bh.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])};Bh.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(ZWt(this,i,r[i]))}else for(i=0;i<r.length;i++)n[i].update(r[i])};Bh.destroy=function(){this.map&&(this.map.remove(),this.map=null,this.container.removeChild(this.div))};Bh.toImage=function(){return this.map.stop(),this.map.getCanvas().toDataURL()};Bh.setOptions=function(e,t,r){for(var n in r)this.map[t](e,n,r[n])};Bh.getMapLayers=function(){return this.map.getStyle().layers};Bh.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}LJ.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)};Bh.project=function(e){return this.map.project(new kJ.LngLat(e[0],e[1]))};Bh.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()]}}};Bh.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};Bh.getViewEditsWithDerived=function(e){var t=this.id,r=this.getViewEdits(e);return r[t+"._derived"]=e._derived,r};function QHe(e){var t={};return LJ.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=YWt(nw.styleValueDflt)),t.transition={duration:0,delay:0},t}function YWt(e){return nw.styleUrlPrefix+e+"-"+nw.styleUrlSuffix}function PJ(e){return[e.lon,e.lat]}eje.exports=$He});var nje=ye((Dxr,ije)=>{"use strict";var IJ=Dr(),KWt=k_(),JWt=Yd(),rje=HC();ije.exports=function(t,r,n){KWt(t,r,n,{type:"map",attributes:rje,handleDefaults:$Wt,partition:"y"})};function $Wt(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,JWt(e,t,{name:"layers",handleItemDefaults:QWt}),t._input=e}function QWt(e,t){function r(l,u){return IJ.coerce(e,t,rje.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",IJ.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"),IJ.coerceFont(r,"symbol.textfont",void 0,{noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0}),r("symbol.textposition"),r("symbol.placement"))}}});var u7=ye(l0=>{"use strict";var l7=Dr(),aje=l7.strTranslate,eXt=l7.strScale,tXt=Id().getSubplotCalcData,rXt=Wp(),iXt=Oa(),oje=So(),nXt=iu(),aXt=tje(),Tx="map";l0.name=Tx;l0.attr="subplot";l0.idRoot=Tx;l0.idRegex=l0.attrRegex=l7.counterRegex(Tx);l0.attributes={subplot:{valType:"subplotid",dflt:"map",editType:"calc"}};l0.layoutAttributes=HC();l0.supplyLayoutDefaults=nje();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=tXt(n,Tx,o),l=r[o],u=l._subplot;u||(u=new aXt(t,o),r[o]._subplot=u),u.viewInitial||(u.viewInitial={center:l7.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:rXt.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=iXt.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=oje.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(nXt.convertToTspans,e),v=oje.bBox(d.node())}d.attr("transform",aje(-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 C=[n.l+n.w*o.x[1],n.t+n.h*(1-o.y[0])];h.attr("transform",aje(C[0],C[1])+eXt(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 lje=ye((zxr,sje)=>{"use strict";sje.exports={attributes:e7(),supplyDefaults:xHe(),colorbar:$d(),formatLabels:wJ(),calc:fF(),plot:DHe(),hoverPoints:a7().hoverPoints,eventData:qHe(),selectPoints:NHe(),styleOnSelect:function(e,t){if(t){var r=t[0].trace;r._glTrace.update(t)}},moduleType:"trace",name:"scattermap",basePlotModule:u7(),categories:["map","gl","symbols","showLegend","scatter-like"],meta:{}}});var cje=ye((Oxr,uje)=>{"use strict";uje.exports=lje()});var RJ=ye((qxr,fje)=>{"use strict";var d1=JA(),oXt=Tu(),sXt=Qo().hovertemplateAttrs,lXt=Vl(),Ax=Ao().extendFlat;fje.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:sXt({},{keys:["properties"]}),showlegend:Ax({},lXt.showlegend,{dflt:!1})},oXt("",{cLetter:"z",editTypeOverride:"calc"}))});var dje=ye((Bxr,hje)=>{"use strict";var ZC=Dr(),uXt=Jh(),cXt=RJ();hje.exports=function(t,r,n,i){function a(c,f){return ZC.coerce(t,r,cXt,c,f)}var o=a("locations"),s=a("z"),l=a("geojson");if(!ZC.isArrayOrTypedArray(o)||!o.length||!ZC.isArrayOrTypedArray(s)||!s.length||!(typeof l=="string"&&l!==""||ZC.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"),uXt(t,r,i,a,{prefix:"",cLetter:"z"}),ZC.coerceSelectionMarkerOpacity(r,a)}});var DJ=ye((Nxr,gje)=>{"use strict";var fXt=Eo(),v1=Dr(),hXt=tc(),dXt=So(),vXt=rx().makeBlank,vje=nx();function pXt(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:vXt()};if(!r)return a;var o=vje.extractTraceFeature(e);if(!o)return a;var s=hXt.makeColorScaleFuncFromTrace(t),l=t.marker,u=l.line||{},c;v1.isArrayOrTypedArray(l.opacity)&&(c=function(C){var E=C.mo;return fXt(E)?+v1.constrain(E,0,1):0});var f;v1.isArrayOrTypedArray(u.color)&&(f=function(C){return C.mlc});var h;v1.isArrayOrTypedArray(u.width)&&(h=function(C){return C.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=vje.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},pje(e),a}function pje(e){var t=e[0].trace,r=t._opts,n;if(t.selectedpoints){for(var i=dXt.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}gje.exports={convert:pXt,convertOnSelect:pje}});var bje=ye((Uxr,xje)=>{"use strict";var yje=DJ().convert,gXt=DJ().convertOnSelect,mje=wx().traceLayerPrefix;function _je(e,t){this.type="choroplethmap",this.subplot=e,this.uid=t,this.sourceId="source-"+t,this.layerList=[["fill",mje+t+"-fill"],["line",mje+t+"-line"]],this.below=null}var E5=_je.prototype;E5.update=function(e){this._update(yje(e)),e[0].trace._glTrace=this};E5.updateOnSelect=function(e){this._update(gXt(e))};E5._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)}};E5._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)}};E5._removeLayers=function(){for(var e=this.subplot.map,t=this.layerList,r=t.length-1;r>=0;r--)e.removeLayer(t[r][1])};E5.dispose=function(){var e=this.subplot.map;this._removeLayers(),e.removeSource(this.sourceId)};xje.exports=function(t,r){var n=r[0].trace,i=new _je(t,n.uid),a=i.sourceId,o=yje(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 Tje=ye((Vxr,wje)=>{"use strict";wje.exports={attributes:RJ(),supplyDefaults:dje(),colorbar:M_(),calc:IF(),plot:bje(),hoverPoints:DF(),eventData:FF(),selectPoints:zF(),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:u7(),categories:["map","gl","noOpacity","showLegend"],meta:{hr_name:"choropleth_map"}}});var Sje=ye((Gxr,Aje)=>{"use strict";Aje.exports=Tje()});var zJ=ye((Hxr,Eje)=>{"use strict";var mXt=Tu(),yXt=Qo().hovertemplateAttrs,Mje=Vl(),c7=e7(),FJ=Ao().extendFlat;Eje.exports=FJ({lon:c7.lon,lat:c7.lat,z:{valType:"data_array",editType:"calc"},radius:{valType:"number",editType:"plot",arrayOk:!0,min:1,dflt:30},below:{valType:"string",editType:"plot"},text:c7.text,hovertext:c7.hovertext,hoverinfo:FJ({},Mje.hoverinfo,{flags:["lon","lat","z","text","name"]}),hovertemplate:yXt(),showlegend:FJ({},Mje.showlegend,{dflt:!1})},mXt("",{cLetter:"z",editTypeOverride:"calc"}))});var kje=ye((jxr,Cje)=>{"use strict";var _Xt=Dr(),xXt=Jh(),bXt=zJ();Cje.exports=function(t,r,n,i){function a(u,c){return _Xt.coerce(t,r,bXt,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"),xXt(t,r,i,a,{prefix:"",cLetter:"z"})}});var Ije=ye((Wxr,Pje)=>{"use strict";var OJ=Eo(),wXt=Dr().isArrayOrTypedArray,qJ=hs().BADNUM,TXt=Fv(),Lje=Dr()._;Pje.exports=function(t,r){for(var n=r._length,i=new Array(n),a=r.z,o=wXt(a)&&a.length,s=0;s<n;s++){var l=i[s]={},u=r.lon[s],c=r.lat[s];if(l.lonlat=OJ(u)&&OJ(c)?[+u,+c]:[qJ,qJ],o){var f=a[s];l.z=OJ(f)?f:qJ}}return TXt(t,r,{vals:o?a:[0,1],containerStr:"",cLetter:"z"}),n&&(i[0].t={labels:{lat:Lje(t,"lat:")+" ",lon:Lje(t,"lon:")+" "}}),i}});var Oje=ye((Xxr,zje)=>{"use strict";var AXt=Eo(),BJ=Dr(),Rje=Ca(),Dje=tc(),Fje=hs().BADNUM,SXt=rx().makeBlank;zje.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:SXt()};if(!n)return a;var o=[],s,l=r.z,u=r.radius,c=BJ.isArrayOrTypedArray(l)&&l.length,f=BJ.isArrayOrTypedArray(u);for(s=0;s<t.length;s++){var h=t[s],d=h.lonlat;if(d[0]!==Fje){var v={};if(c){var x=h.z;v.z=x!==Fje?x:0}f&&(v.r=AXt(u[s])&&u[s]>0?+u[s]:0),o.push({type:"Feature",geometry:{type:"Point",coordinates:d},properties:v})}}var b=Dje.extractOpts(r),p=b.reversescale?Dje.flipScale(b.colorscale):b.colorscale,C=p[0][1],E=Rje.opacity(C)<1?C:Rje.addOpacity(C,0),A=["interpolate",["linear"],["heatmap-density"],0,E];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 BJ.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 Uje=ye((Zxr,Nje)=>{"use strict";var qje=Oje(),MXt=wx().traceLayerPrefix;function Bje(e,t){this.type="densitymap",this.subplot=e,this.uid=t,this.sourceId="source-"+t,this.layerList=[["heatmap",MXt+t+"-heatmap"]],this.below=null}var f7=Bje.prototype;f7.update=function(e){var t=this.subplot,r=this.layerList,n=qje(e),i=t.belowLookup["trace-"+this.uid];t.map.getSource(this.sourceId).setData(n.geojson),i!==this.below&&(this._removeLayers(),this._addLayers(n,i),this.below=i);for(var a=0;a<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)}};f7._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)}};f7._removeLayers=function(){for(var e=this.subplot.map,t=this.layerList,r=t.length-1;r>=0;r--)e.removeLayer(t[r][1])};f7.dispose=function(){var e=this.subplot.map;this._removeLayers(),e.removeSource(this.sourceId)};Nje.exports=function(t,r){var n=r[0].trace,i=new Bje(t,n.uid),a=i.sourceId,o=qje(r),s=i.below=t.belowLookup["trace-"+n.uid];return t.map.addSource(a,{type:"geojson",data:o.geojson}),i._addLayers(o,s),i}});var Gje=ye((Yxr,Vje)=>{"use strict";var EXt=ho(),CXt=a7().hoverPoints,kXt=a7().getExtraText;Vje.exports=function(t,r,n){var i=CXt(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=EXt.tickText(u,u.c2l(l.z),"hover").text}return a.extraText=kXt(s,l,o[0].t.labels),[a]}}});var jje=ye((Kxr,Hje)=>{"use strict";Hje.exports=function(t,r){return t.lon=r.lon,t.lat=r.lat,t.z=r.z,t}});var Xje=ye((Jxr,Wje)=>{"use strict";Wje.exports={attributes:zJ(),supplyDefaults:kje(),colorbar:M_(),formatLabels:wJ(),calc:Ije(),plot:Uje(),hoverPoints:Gje(),eventData:jje(),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:u7(),categories:["map","gl","showLegend"],meta:{hr_name:"density_map"}}});var Yje=ye(($xr,Zje)=>{"use strict";Zje.exports=Xje()});var UJ=ye((ebr,Qje)=>{"use strict";var LXt=ec(),PXt=Vl(),Kje=Eh(),NJ=i3(),IXt=kc().attributes,Jje=Qo().hovertemplateAttrs,RXt=Tu(),DXt=pl().templatedArray,FXt=df().descriptionOnlyNumbers,$je=Ao().extendFlat,zXt=mc().overrideAll,Qxr=Qje.exports=zXt({hoverinfo:$je({},PXt.hoverinfo,{flags:[],arrayOk:!1}),hoverlabel:NJ.hoverlabel,domain:IXt({name:"sankey",trace:!0}),orientation:{valType:"enumerated",values:["v","h"],dflt:"h"},valueformat:{valType:"string",dflt:".3s",description:FXt("value")},valuesuffix:{valType:"string",dflt:""},arrangement:{valType:"enumerated",values:["snap","perpendicular","freeform","fixed"],dflt:"snap"},textfont:LXt({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:Kje.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:NJ.hoverlabel,hovertemplate:Jje({},{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:Kje.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:NJ.hoverlabel,hovertemplate:Jje({},{keys:["value","label"]}),colorscales:DXt("concentrationscales",{editType:"calc",label:{valType:"string",editType:"calc",dflt:""},cmax:{valType:"number",editType:"calc",dflt:1},cmin:{valType:"number",editType:"calc",dflt:0},colorscale:$je(RXt().colorscale,{dflt:[[0,"white"],[1,"black"]]})})}},"calc","nested")});var nWe=ye((tbr,iWe)=>{"use strict";var C5=Dr(),h7=UJ(),OXt=Ca(),eWe=cd(),qXt=kc().defaults,tWe=cM(),rWe=pl(),BXt=Yd();iWe.exports=function(t,r,n,i){function a(A,L){return C5.coerce(t,r,h7,A,L)}var o=C5.extendDeep(i.hoverlabel,t.hoverlabel),s=t.node,l=rWe.newContainer(r,"node");function u(A,L){return C5.coerce(s,l,h7.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),tWe(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 OXt.addOpacity(f(L),.8)})),u("customdata");var h=t.link||{},d=rWe.newContainer(r,"link");function v(A,L){return C5.coerce(h,d,h7.link,A,L)}v("label"),v("arrowlen"),v("source"),v("target"),v("value"),v("line.color"),v("line.width"),v("hoverinfo",t.hoverinfo),tWe(h,d,v,o),v("hovertemplate");var x=eWe(i.paper_bgcolor).getLuminance()<.333,b=x?"rgba(255, 255, 255, 0.6)":"rgba(0, 0, 0, 0.2)",p=v("color",b);function C(A){var L=eWe(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(C):C(p)),v("customdata"),BXt(h,d,{name:"colorscales",handleItemDefaults:NXt}),qXt(r,i,a),a("orientation"),a("valueformat"),a("valuesuffix");var E;l.x.length&&l.y.length&&(E="freeform"),a("arrangement",E),C5.coerceFont(a,"textfont",i.font,{autoShadowDflt:!0}),r._length=null};function NXt(e,t){function r(n,i){return C5.coerce(e,t,h7.link.colorscales,n,i)}r("label"),r("cmin"),r("cmax"),r("colorscale")}});var VJ=ye((rbr,aWe)=>{"use strict";aWe.exports=UXt;function UXt(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],C=[b];for(r[b]=n[b]=u,i[b]=!0,u+=1;C.length>0;){b=C[C.length-1];var E=e[b];if(a[b]<E.length){for(var A=a[b];A<E.length;++A){var L=E[A];if(r[L]<0){r[L]=n[L]=u,i[L]=!0,u+=1,p.push(L),C.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 _=[],k=[],M=0,A=p.length-1;A>=0;--A){var g=p[A];if(i[g]=!1,_.push(g),k.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<k.length;A++)for(var T=0;T<k[A].length;T++)P[--M]=k[A][T];f.push(P)}C.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,C){return p-C}),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 uWe=ye((ibr,lWe)=>{"use strict";var VXt=VJ(),k5=Dr(),GXt=Km().wrap,YC=k5.isArrayOrTypedArray,oWe=k5.isIndex,sWe=tc();function HXt(e){var t=e.node,r=e.link,n=[],i=YC(r.color),a=YC(r.hovercolor),o=YC(r.customdata),s={},l={},u=r.colorscales.length,c;for(c=0;c<u;c++){var f=r.colorscales[c],h=sWe.extractScale(f,{cLetter:"c"}),d=sWe.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,C={};for(c=0;c<p.length;c++){var E=p[c];for(b=0;b<E.length;b++){var A=E[b],L=x+c;C.hasOwnProperty(A)?k5.warn("Node "+A+" is already part of a group."):C[A]=L}}var _={source:[],target:[]};for(c=0;c<r.value.length;c++){var k=r.value[c],M=r.source[c],g=r.target[c];if(k>0&&oWe(M,x)&&oWe(g,x)&&!(C.hasOwnProperty(M)&&C.hasOwnProperty(g)&&C[M]===C[g])){C.hasOwnProperty(g)&&(g=C[g]),C.hasOwnProperty(M)&&(M=C[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:+k}),_.source.push(M),_.target.push(g)}}var z=x+p.length,O=YC(t.color),V=YC(t.customdata),G=[];for(c=0;c<z;c++)if(s[c]){var Z=t.label[c];G.push({group:c>x-1,childrenNodes:[],pointNumber:c,label:Z,color:O?t.color[c]:t.color,customdata:V?t.customdata[c]:t.customdata})}var H=!1;return jXt(z,_.source,_.target)&&(H=!0),{circular:H,links:n,nodes:G,groups:p,groupLookup:C}}function jXt(e,t,r){for(var n=k5.init2dArray(e,0),i=0;i<Math.min(t.length,r.length);i++)if(k5.isIndex(t[i],e)&&k5.isIndex(r[i],e)){if(t[i]===r[i])return!0;n[t[i]].push(r[i])}var a=VXt(n);return a.components.some(function(o){return o.length>1})}lWe.exports=function(t,r){var n=HXt(r);return GXt({circular:n.circular,_nodes:n.nodes,_links:n.links,_groups:n.groups,_groupLookup:n.groupLookup})}});var fWe=ye((d7,cWe)=>{(function(e,t){typeof d7=="object"&&typeof cWe!="undefined"?t(d7):(e=e||self,t(e.d3=e.d3||{}))})(d7,function(e){"use strict";function t(k){var M=+this._x.call(null,k),g=+this._y.call(null,k);return r(this.cover(M,g),M,g,k)}function r(k,M,g,P){if(isNaN(M)||isNaN(g))return k;var T,z=k._root,O={data:P},V=k._x0,G=k._y0,Z=k._x1,H=k._y1,N,j,re,oe,_e,Me,ke,me;if(!z)return k._root=O,k;for(;z.length;)if((_e=M>=(N=(V+Z)/2))?V=N:Z=N,(Me=g>=(j=(G+H)/2))?G=j:H=j,T=z,!(z=z[ke=Me<<1|_e]))return T[ke]=O,k;if(re=+k._x.call(null,z.data),oe=+k._y.call(null,z.data),M===re&&g===oe)return O.next=z,T?T[ke]=O:k._root=O,k;do T=T?T[ke]=new Array(4):k._root=new Array(4),(_e=M>=(N=(V+Z)/2))?V=N:Z=N,(Me=g>=(j=(G+H)/2))?G=j:H=j;while((ke=Me<<1|_e)===(me=(oe>=j)<<1|re>=N));return T[me]=z,T[ke]=O,k}function n(k){var M,g,P=k.length,T,z,O=new Array(P),V=new Array(P),G=1/0,Z=1/0,H=-1/0,N=-1/0;for(g=0;g<P;++g)isNaN(T=+this._x.call(null,M=k[g]))||isNaN(z=+this._y.call(null,M))||(O[g]=T,V[g]=z,T<G&&(G=T),T>H&&(H=T),z<Z&&(Z=z),z>N&&(N=z));if(G>H||Z>N)return this;for(this.cover(G,Z).cover(H,N),g=0;g<P;++g)r(this,O[g],V[g],k[g]);return this}function i(k,M){if(isNaN(k=+k)||isNaN(M=+M))return this;var g=this._x0,P=this._y0,T=this._x1,z=this._y1;if(isNaN(g))T=(g=Math.floor(k))+1,z=(P=Math.floor(M))+1;else{for(var O=T-g,V=this._root,G,Z;g>k||k>=T||P>M||M>=z;)switch(Z=(M<P)<<1|k<g,G=new Array(4),G[Z]=V,V=G,O*=2,Z){case 0:T=g+O,z=P+O;break;case 1:g=T-O,z=P+O;break;case 2:T=g+O,P=z-O;break;case 3:g=T-O,P=z-O;break}this._root&&this._root.length&&(this._root=V)}return this._x0=g,this._y0=P,this._x1=T,this._y1=z,this}function a(){var k=[];return this.visit(function(M){if(!M.length)do k.push(M.data);while(M=M.next)}),k}function o(k){return arguments.length?this.cover(+k[0][0],+k[0][1]).cover(+k[1][0],+k[1][1]):isNaN(this._x0)?void 0:[[this._x0,this._y0],[this._x1,this._y1]]}function s(k,M,g,P,T){this.node=k,this.x0=M,this.y0=g,this.x1=P,this.y1=T}function l(k,M,g){var P,T=this._x0,z=this._y0,O,V,G,Z,H=this._x1,N=this._y1,j=[],re=this._root,oe,_e;for(re&&j.push(new s(re,T,z,H,N)),g==null?g=1/0:(T=k-g,z=M-g,H=k+g,N=M+g,g*=g);oe=j.pop();)if(!(!(re=oe.node)||(O=oe.x0)>H||(V=oe.y0)>N||(G=oe.x1)<T||(Z=oe.y1)<z))if(re.length){var Me=(O+G)/2,ke=(V+Z)/2;j.push(new s(re[3],Me,ke,G,Z),new s(re[2],O,ke,Me,Z),new s(re[1],Me,V,G,ke),new s(re[0],O,V,Me,ke)),(_e=(M>=ke)<<1|k>=Me)&&(oe=j[j.length-1],j[j.length-1]=j[j.length-1-_e],j[j.length-1-_e]=oe)}else{var me=k-+this._x.call(null,re.data),ie=M-+this._y.call(null,re.data),Se=me*me+ie*ie;if(Se<g){var Le=Math.sqrt(g=Se);T=k-Le,z=M-Le,H=k+Le,N=M+Le,P=re.data}}return P}function u(k){if(isNaN(H=+this._x.call(null,k))||isNaN(N=+this._y.call(null,k)))return this;var M,g=this._root,P,T,z,O=this._x0,V=this._y0,G=this._x1,Z=this._y1,H,N,j,re,oe,_e,Me,ke;if(!g)return this;if(g.length)for(;;){if((oe=H>=(j=(O+G)/2))?O=j:G=j,(_e=N>=(re=(V+Z)/2))?V=re:Z=re,M=g,!(g=g[Me=_e<<1|oe]))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!==k;)if(T=g,!(g=g.next))return this;return(z=g.next)&&delete g.next,T?(z?T.next=z:delete T.next,this):M?(z?M[Me]=z: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=z,this)}function c(k){for(var M=0,g=k.length;M<g;++M)this.remove(k[M]);return this}function f(){return this._root}function h(){var k=0;return this.visit(function(M){if(!M.length)do++k;while(M=M.next)}),k}function d(k){var M=[],g,P=this._root,T,z,O,V,G;for(P&&M.push(new s(P,this._x0,this._y0,this._x1,this._y1));g=M.pop();)if(!k(P=g.node,z=g.x0,O=g.y0,V=g.x1,G=g.y1)&&P.length){var Z=(z+V)/2,H=(O+G)/2;(T=P[3])&&M.push(new s(T,Z,H,V,G)),(T=P[2])&&M.push(new s(T,z,H,Z,G)),(T=P[1])&&M.push(new s(T,Z,O,V,H)),(T=P[0])&&M.push(new s(T,z,O,Z,H))}return this}function v(k){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 z,O=P.x0,V=P.y0,G=P.x1,Z=P.y1,H=(O+G)/2,N=(V+Z)/2;(z=T[0])&&M.push(new s(z,O,V,H,N)),(z=T[1])&&M.push(new s(z,H,V,G,N)),(z=T[2])&&M.push(new s(z,O,N,H,Z)),(z=T[3])&&M.push(new s(z,H,N,G,Z))}g.push(P)}for(;P=g.pop();)k(P.node,P.x0,P.y0,P.x1,P.y1);return this}function x(k){return k[0]}function b(k){return arguments.length?(this._x=k,this):this._x}function p(k){return k[1]}function C(k){return arguments.length?(this._y=k,this):this._y}function E(k,M,g){var P=new A(M==null?x:M,g==null?p:g,NaN,NaN,NaN,NaN);return k==null?P:P.addAll(k)}function A(k,M,g,P,T,z){this._x=k,this._y=M,this._x0=g,this._y0=P,this._x1=T,this._y1=z,this._root=void 0}function L(k){for(var M={data:k.data},g=M;k=k.next;)g=g.next={data:k.data};return M}var _=E.prototype=A.prototype;_.copy=function(){var k=new A(this._x,this._y,this._x0,this._y0,this._x1,this._y1),M=this._root,g,P;if(!M)return k;if(!M.length)return k._root=L(M),k;for(g=[{source:M,target:k._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 k},_.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=C,e.quadtree=E,Object.defineProperty(e,"__esModule",{value:!0})})});var p7=ye((v7,hWe)=>{(function(e,t){t(typeof v7=="object"&&typeof hWe!="undefined"?v7:e.d3=e.d3||{})})(v7,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(_,k){p.set(k,_)});else if(Array.isArray(x)){var C=-1,E=x.length,A;if(b==null)for(;++C<E;)p.set(C,x[C]);else for(;++C<E;)p.set(b(A=x[C],C,x),A)}else if(x)for(var L in x)p.set(L,x[L]);return p}function i(){var x=[],b=[],p,C,E;function A(_,k,M,g){if(k>=x.length)return p!=null&&_.sort(p),C!=null?C(_):_;for(var P=-1,T=_.length,z=x[k++],O,V,G=n(),Z,H=M();++P<T;)(Z=G.get(O=z(V=_[P])+""))?Z.push(V):G.set(O,[V]);return G.each(function(N,j){g(H,j,A(N,k,M,g))}),H}function L(_,k){if(++k>x.length)return _;var M,g=b[k-1];return C!=null&&k>=x.length?M=_.entries():(M=[],_.each(function(P,T){M.push({key:T,values:L(P,k)})})),g!=null?M.sort(function(P,T){return g(P.key,T.key)}):M}return E={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(_),E},sortKeys:function(_){return b[x.length-1]=_,E},sortValues:function(_){return p=_,E},rollup:function(_){return C=_,E}}}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 C=-1,E=x.length;if(b==null)for(;++C<E;)p.add(x[C]);else for(;++C<E;)p.add(b(x[C],C,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 vWe=ye((g7,dWe)=>{(function(e,t){typeof g7=="object"&&typeof dWe!="undefined"?t(g7):(e=e||self,t(e.d3=e.d3||{}))})(g7,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 gWe=ye((m7,pWe)=>{(function(e,t){typeof m7=="object"&&typeof pWe!="undefined"?t(m7):(e=e||self,t(e.d3=e.d3||{}))})(m7,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(k){setTimeout(k,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(k,M,g){if(typeof k!="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=k,this._time=g,A()},stop:function(){this._call&&(this._call=null,this._time=1/0,A())}};function x(k,M,g){var P=new v;return P.restart(k,M,g),P}function b(){h(),++t;for(var k=a,M;k;)(M=l-k._time)>=0&&k._call.call(null,M),k=k._next;--t}function p(){l=(s=c.now())+u,t=r=0;try{b()}finally{t=0,E(),l=0}}function C(){var k=c.now(),M=k-s;M>i&&(u-=M,s=k)}function E(){for(var k,M=a,g,P=1/0;M;)M._call?(P>M._time&&(P=M._time),k=M,M=M._next):(g=M._next,M._next=null,M=k?k._next=g:a=g);o=k,A(P)}function A(k){if(!t){r&&(r=clearTimeout(r));var M=k-l;M>24?(k<1/0&&(r=setTimeout(p,k-c.now()-u)),n&&(n=clearInterval(n))):(n||(s=c.now(),n=setInterval(C,i)),t=1,f(p))}}function L(k,M,g){var P=new v;return M=M==null?0:+M,P.restart(function(T){P.stop(),k(T+M)},M,g),P}function _(k,M,g){var P=new v,T=M;return M==null?(P.restart(k,M,g),P):(M=+M,g=g==null?h():+g,P.restart(function z(O){O+=T,P.restart(z,T+=M,g),k(O)},M,g),P)}e.interval=_,e.now=h,e.timeout=L,e.timer=x,e.timerFlush=b,Object.defineProperty(e,"__esModule",{value:!0})})});var yWe=ye((y7,mWe)=>{(function(e,t){typeof y7=="object"&&typeof mWe!="undefined"?t(y7,fWe(),p7(),vWe(),gWe()):t(e.d3=e.d3||{},e.d3,e.d3,e.d3,e.d3)})(y7,function(e,t,r,n,i){"use strict";function a(k,M){var g;k==null&&(k=0),M==null&&(M=0);function P(){var T,z=g.length,O,V=0,G=0;for(T=0;T<z;++T)O=g[T],V+=O.x,G+=O.y;for(V=V/z-k,G=G/z-M,T=0;T<z;++T)O=g[T],O.x-=V,O.y-=G}return P.initialize=function(T){g=T},P.x=function(T){return arguments.length?(k=+T,P):k},P.y=function(T){return arguments.length?(M=+T,P):M},P}function o(k){return function(){return k}}function s(){return(Math.random()-.5)*1e-6}function l(k){return k.x+k.vx}function u(k){return k.y+k.vy}function c(k){var M,g,P=1,T=1;typeof k!="function"&&(k=o(k==null?1:+k));function z(){for(var G,Z=M.length,H,N,j,re,oe,_e,Me=0;Me<T;++Me)for(H=t.quadtree(M,l,u).visitAfter(O),G=0;G<Z;++G)N=M[G],oe=g[N.index],_e=oe*oe,j=N.x+N.vx,re=N.y+N.vy,H.visit(ke);function ke(me,ie,Se,Le,Ae){var De=me.data,Pe=me.r,ge=oe+Pe;if(De){if(De.index>N.index){var Fe=j-De.x-De.vx,ce=re-De.y-De.vy,Ze=Fe*Fe+ce*ce;Ze<ge*ge&&(Fe===0&&(Fe=s(),Ze+=Fe*Fe),ce===0&&(ce=s(),Ze+=ce*ce),Ze=(ge-(Ze=Math.sqrt(Ze)))/Ze*P,N.vx+=(Fe*=Ze)*(ge=(Pe*=Pe)/(_e+Pe)),N.vy+=(ce*=Ze)*ge,De.vx-=Fe*(ge=1-ge),De.vy-=ce*ge)}return}return ie>j+ge||Le<j-ge||Se>re+ge||Ae<re-ge}}function O(G){if(G.data)return G.r=g[G.data.index];for(var Z=G.r=0;Z<4;++Z)G[Z]&&G[Z].r>G.r&&(G.r=G[Z].r)}function V(){if(M){var G,Z=M.length,H;for(g=new Array(Z),G=0;G<Z;++G)H=M[G],g[H.index]=+k(H,G,M)}}return z.initialize=function(G){M=G,V()},z.iterations=function(G){return arguments.length?(T=+G,z):T},z.strength=function(G){return arguments.length?(P=+G,z):P},z.radius=function(G){return arguments.length?(k=typeof G=="function"?G:o(+G),V(),z):k},z}function f(k){return k.index}function h(k,M){var g=k.get(M);if(!g)throw new Error("missing: "+M);return g}function d(k){var M=f,g=H,P,T=o(30),z,O,V,G,Z=1;k==null&&(k=[]);function H(_e){return 1/Math.min(V[_e.source.index],V[_e.target.index])}function N(_e){for(var Me=0,ke=k.length;Me<Z;++Me)for(var me=0,ie,Se,Le,Ae,De,Pe,ge;me<ke;++me)ie=k[me],Se=ie.source,Le=ie.target,Ae=Le.x+Le.vx-Se.x-Se.vx||s(),De=Le.y+Le.vy-Se.y-Se.vy||s(),Pe=Math.sqrt(Ae*Ae+De*De),Pe=(Pe-z[me])/Pe*_e*P[me],Ae*=Pe,De*=Pe,Le.vx-=Ae*(ge=G[me]),Le.vy-=De*ge,Se.vx+=Ae*(ge=1-ge),Se.vy+=De*ge}function j(){if(O){var _e,Me=O.length,ke=k.length,me=r.map(O,M),ie;for(_e=0,V=new Array(Me);_e<ke;++_e)ie=k[_e],ie.index=_e,typeof ie.source!="object"&&(ie.source=h(me,ie.source)),typeof ie.target!="object"&&(ie.target=h(me,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,G=new Array(ke);_e<ke;++_e)ie=k[_e],G[_e]=V[ie.source.index]/(V[ie.source.index]+V[ie.target.index]);P=new Array(ke),re(),z=new Array(ke),oe()}}function re(){if(O)for(var _e=0,Me=k.length;_e<Me;++_e)P[_e]=+g(k[_e],_e,k)}function oe(){if(O)for(var _e=0,Me=k.length;_e<Me;++_e)z[_e]=+T(k[_e],_e,k)}return N.initialize=function(_e){O=_e,j()},N.links=function(_e){return arguments.length?(k=_e,j(),N):k},N.id=function(_e){return arguments.length?(M=_e,N):M},N.iterations=function(_e){return arguments.length?(Z=+_e,N):Z},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),oe(),N):T},N}function v(k){return k.x}function x(k){return k.y}var b=10,p=Math.PI*(3-Math.sqrt(5));function C(k){var M,g=1,P=.001,T=1-Math.pow(P,1/300),z=0,O=.6,V=r.map(),G=i.timer(H),Z=n.dispatch("tick","end");k==null&&(k=[]);function H(){N(),Z.call("tick",M),g<P&&(G.stop(),Z.call("end",M))}function N(oe){var _e,Me=k.length,ke;oe===void 0&&(oe=1);for(var me=0;me<oe;++me)for(g+=(z-g)*T,V.each(function(ie){ie(g)}),_e=0;_e<Me;++_e)ke=k[_e],ke.fx==null?ke.x+=ke.vx*=O:(ke.x=ke.fx,ke.vx=0),ke.fy==null?ke.y+=ke.vy*=O:(ke.y=ke.fy,ke.vy=0);return M}function j(){for(var oe=0,_e=k.length,Me;oe<_e;++oe){if(Me=k[oe],Me.index=oe,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(oe),me=oe*p;Me.x=ke*Math.cos(me),Me.y=ke*Math.sin(me)}(isNaN(Me.vx)||isNaN(Me.vy))&&(Me.vx=Me.vy=0)}}function re(oe){return oe.initialize&&oe.initialize(k),oe}return j(),M={tick:N,restart:function(){return G.restart(H),M},stop:function(){return G.stop(),M},nodes:function(oe){return arguments.length?(k=oe,j(),V.each(re),M):k},alpha:function(oe){return arguments.length?(g=+oe,M):g},alphaMin:function(oe){return arguments.length?(P=+oe,M):P},alphaDecay:function(oe){return arguments.length?(T=+oe,M):+T},alphaTarget:function(oe){return arguments.length?(z=+oe,M):z},velocityDecay:function(oe){return arguments.length?(O=1-oe,M):1-O},force:function(oe,_e){return arguments.length>1?(_e==null?V.remove(oe):V.set(oe,re(_e)),M):V.get(oe)},find:function(oe,_e,Me){var ke=0,me=k.length,ie,Se,Le,Ae,De;for(Me==null?Me=1/0:Me*=Me,ke=0;ke<me;++ke)Ae=k[ke],ie=oe-Ae.x,Se=_e-Ae.y,Le=ie*ie+Se*Se,Le<Me&&(De=Ae,Me=Le);return De},on:function(oe,_e){return arguments.length>1?(Z.on(oe,_e),M):Z.on(oe)}}}function E(){var k,M,g,P=o(-30),T,z=1,O=1/0,V=.81;function G(j){var re,oe=k.length,_e=t.quadtree(k,v,x).visitAfter(H);for(g=j,re=0;re<oe;++re)M=k[re],_e.visit(N)}function Z(){if(k){var j,re=k.length,oe;for(T=new Array(re),j=0;j<re;++j)oe=k[j],T[oe.index]=+P(oe,j,k)}}function H(j){var re=0,oe,_e,Me=0,ke,me,ie;if(j.length){for(ke=me=ie=0;ie<4;++ie)(oe=j[ie])&&(_e=Math.abs(oe.value))&&(re+=oe.value,Me+=_e,ke+=_e*oe.x,me+=_e*oe.y);j.x=ke/Me,j.y=me/Me}else{oe=j,oe.x=oe.data.x,oe.y=oe.data.y;do re+=T[oe.data.index];while(oe=oe.next)}j.value=re}function N(j,re,oe,_e){if(!j.value)return!0;var Me=j.x-M.x,ke=j.y-M.y,me=_e-re,ie=Me*Me+ke*ke;if(me*me/V<ie)return ie<O&&(Me===0&&(Me=s(),ie+=Me*Me),ke===0&&(ke=s(),ie+=ke*ke),ie<z&&(ie=Math.sqrt(z*ie)),M.vx+=Me*j.value*g/ie,M.vy+=ke*j.value*g/ie),!0;if(j.length||ie>=O)return;(j.data!==M||j.next)&&(Me===0&&(Me=s(),ie+=Me*Me),ke===0&&(ke=s(),ie+=ke*ke),ie<z&&(ie=Math.sqrt(z*ie)));do j.data!==M&&(me=T[j.data.index]*g/ie,M.vx+=Me*me,M.vy+=ke*me);while(j=j.next)}return G.initialize=function(j){k=j,Z()},G.strength=function(j){return arguments.length?(P=typeof j=="function"?j:o(+j),Z(),G):P},G.distanceMin=function(j){return arguments.length?(z=j*j,G):Math.sqrt(z)},G.distanceMax=function(j){return arguments.length?(O=j*j,G):Math.sqrt(O)},G.theta=function(j){return arguments.length?(V=j*j,G):Math.sqrt(V)},G}function A(k,M,g){var P,T=o(.1),z,O;typeof k!="function"&&(k=o(+k)),M==null&&(M=0),g==null&&(g=0);function V(Z){for(var H=0,N=P.length;H<N;++H){var j=P[H],re=j.x-M||1e-6,oe=j.y-g||1e-6,_e=Math.sqrt(re*re+oe*oe),Me=(O[H]-_e)*z[H]*Z/_e;j.vx+=re*Me,j.vy+=oe*Me}}function G(){if(P){var Z,H=P.length;for(z=new Array(H),O=new Array(H),Z=0;Z<H;++Z)O[Z]=+k(P[Z],Z,P),z[Z]=isNaN(O[Z])?0:+T(P[Z],Z,P)}}return V.initialize=function(Z){P=Z,G()},V.strength=function(Z){return arguments.length?(T=typeof Z=="function"?Z:o(+Z),G(),V):T},V.radius=function(Z){return arguments.length?(k=typeof Z=="function"?Z:o(+Z),G(),V):k},V.x=function(Z){return arguments.length?(M=+Z,V):M},V.y=function(Z){return arguments.length?(g=+Z,V):g},V}function L(k){var M=o(.1),g,P,T;typeof k!="function"&&(k=o(k==null?0:+k));function z(V){for(var G=0,Z=g.length,H;G<Z;++G)H=g[G],H.vx+=(T[G]-H.x)*P[G]*V}function O(){if(g){var V,G=g.length;for(P=new Array(G),T=new Array(G),V=0;V<G;++V)P[V]=isNaN(T[V]=+k(g[V],V,g))?0:+M(g[V],V,g)}}return z.initialize=function(V){g=V,O()},z.strength=function(V){return arguments.length?(M=typeof V=="function"?V:o(+V),O(),z):M},z.x=function(V){return arguments.length?(k=typeof V=="function"?V:o(+V),O(),z):k},z}function _(k){var M=o(.1),g,P,T;typeof k!="function"&&(k=o(k==null?0:+k));function z(V){for(var G=0,Z=g.length,H;G<Z;++G)H=g[G],H.vy+=(T[G]-H.y)*P[G]*V}function O(){if(g){var V,G=g.length;for(P=new Array(G),T=new Array(G),V=0;V<G;++V)P[V]=isNaN(T[V]=+k(g[V],V,g))?0:+M(g[V],V,g)}}return z.initialize=function(V){g=V,O()},z.strength=function(V){return arguments.length?(M=typeof V=="function"?V:o(+V),O(),z):M},z.y=function(V){return arguments.length?(k=typeof V=="function"?V:o(+V),O(),z):k},z}e.forceCenter=a,e.forceCollide=c,e.forceLink=d,e.forceManyBody=E,e.forceRadial=A,e.forceSimulation=C,e.forceX=L,e.forceY=_,Object.defineProperty(e,"__esModule",{value:!0})})});var xWe=ye((_7,_We)=>{(function(e,t){typeof _7=="object"&&typeof _We!="undefined"?t(_7):(e=e||self,t(e.d3=e.d3||{}))})(_7,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,C=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(C>n)if(!(Math.abs(p*v-x*b)>n)||!f)this._+="L"+(this._x1=s)+","+(this._y1=l);else{var E=u-h,A=c-d,L=v*v+x*x,_=E*E+A*A,k=Math.sqrt(L),M=Math.sqrt(C),g=f*Math.tan((t-Math.acos((L+C-_)/(2*k*M)))/2),P=g/M,T=g/k;Math.abs(P-1)>n&&(this._+="L"+(s+P*b)+","+(l+P*p)),this._+="A"+f+","+f+",0,0,"+ +(p*E>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,C=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&&(C<0&&(C=C%r+r),C>i?this._+="A"+u+","+u+",0,1,"+p+","+(s-d)+","+(l-v)+"A"+u+","+u+",0,1,"+p+","+(this._x1=x)+","+(this._y1=b):C>n&&(this._+="A"+u+","+u+",0,"+ +(C>=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 GJ=ye((x7,bWe)=>{(function(e,t){typeof x7=="object"&&typeof bWe!="undefined"?t(x7,xWe()):(e=e||self,t(e.d3=e.d3||{},e.d3))})(x7,function(e,t){"use strict";function r(St){return function(){return St}}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(St){return St>1?0:St<-1?f:Math.acos(St)}function x(St){return St>=1?h:St<=-1?-h:Math.asin(St)}function b(St){return St.innerRadius}function p(St){return St.outerRadius}function C(St){return St.startAngle}function E(St){return St.endAngle}function A(St){return St&&St.padAngle}function L(St,Cr,Qr,pi,fn,Sn,En,ki){var _n=Qr-St,ya=pi-Cr,Jn=En-fn,Ma=ki-Sn,_o=Ma*_n-Jn*ya;if(!(_o*_o<c))return _o=(Jn*(Cr-Sn)-Ma*(St-fn))/_o,[St+_o*_n,Cr+_o*ya]}function _(St,Cr,Qr,pi,fn,Sn,En){var ki=St-Qr,_n=Cr-pi,ya=(En?Sn:-Sn)/u(ki*ki+_n*_n),Jn=ya*_n,Ma=-ya*ki,_o=St+Jn,No=Cr+Ma,po=Qr+Jn,Lo=pi+Ma,Co=(_o+po)/2,Fs=(No+Lo)/2,zs=po-_o,ul=Lo-No,cl=zs*zs+ul*ul,Fl=fn-Sn,cs=_o*Lo-po*No,nl=(ul<0?-1:1)*u(o(0,Fl*Fl*cl-cs*cs)),Ss=(cs*ul-zs*nl)/cl,fl=(-cs*zs-ul*nl)/cl,Js=(cs*ul+zs*nl)/cl,Os=(-cs*zs+ul*nl)/cl,Io=Ss-Co,us=fl-Fs,Zl=Js-Co,Su=Os-Fs;return Io*Io+us*us>Zl*Zl+Su*Su&&(Ss=Js,fl=Os),{cx:Ss,cy:fl,x01:-Jn,y01:-Ma,x11:Ss*(fn/Fl-1),y11:fl*(fn/Fl-1)}}function k(){var St=b,Cr=p,Qr=r(0),pi=null,fn=C,Sn=E,En=A,ki=null;function _n(){var ya,Jn,Ma=+St.apply(this,arguments),_o=+Cr.apply(this,arguments),No=fn.apply(this,arguments)-h,po=Sn.apply(this,arguments)-h,Lo=n(po-No),Co=po>No;if(ki||(ki=ya=t.path()),_o<Ma&&(Jn=_o,_o=Ma,Ma=Jn),!(_o>c))ki.moveTo(0,0);else if(Lo>d-c)ki.moveTo(_o*a(No),_o*l(No)),ki.arc(0,0,_o,No,po,!Co),Ma>c&&(ki.moveTo(Ma*a(po),Ma*l(po)),ki.arc(0,0,Ma,po,No,Co));else{var Fs=No,zs=po,ul=No,cl=po,Fl=Lo,cs=Lo,nl=En.apply(this,arguments)/2,Ss=nl>c&&(pi?+pi.apply(this,arguments):u(Ma*Ma+_o*_o)),fl=s(n(_o-Ma)/2,+Qr.apply(this,arguments)),Js=fl,Os=fl,Io,us;if(Ss>c){var Zl=x(Ss/Ma*l(nl)),Su=x(Ss/_o*l(nl));(Fl-=Zl*2)>c?(Zl*=Co?1:-1,ul+=Zl,cl-=Zl):(Fl=0,ul=cl=(No+po)/2),(cs-=Su*2)>c?(Su*=Co?1:-1,Fs+=Su,zs-=Su):(cs=0,Fs=zs=(No+po)/2)}var nc=_o*a(Fs),ws=_o*l(Fs),Fn=Ma*a(cl),_a=Ma*l(cl);if(fl>c){var Vu=_o*a(zs),zl=_o*l(zs),xo=Ma*a(ul),Yl=Ma*l(ul),Us;if(Lo<f&&(Us=L(nc,ws,xo,Yl,Vu,zl,Fn,_a))){var Hl=nc-Us[0],ac=ws-Us[1],aa=Vu-Us[0],Oo=zl-Us[1],qo=1/l(v((Hl*aa+ac*Oo)/(u(Hl*Hl+ac*ac)*u(aa*aa+Oo*Oo)))/2),Ol=u(Us[0]*Us[0]+Us[1]*Us[1]);Js=s(fl,(Ma-Ol)/(qo-1)),Os=s(fl,(_o-Ol)/(qo+1))}}cs>c?Os>c?(Io=_(xo,Yl,nc,ws,_o,Os,Co),us=_(Vu,zl,Fn,_a,_o,Os,Co),ki.moveTo(Io.cx+Io.x01,Io.cy+Io.y01),Os<fl?ki.arc(Io.cx,Io.cy,Os,i(Io.y01,Io.x01),i(us.y01,us.x01),!Co):(ki.arc(Io.cx,Io.cy,Os,i(Io.y01,Io.x01),i(Io.y11,Io.x11),!Co),ki.arc(0,0,_o,i(Io.cy+Io.y11,Io.cx+Io.x11),i(us.cy+us.y11,us.cx+us.x11),!Co),ki.arc(us.cx,us.cy,Os,i(us.y11,us.x11),i(us.y01,us.x01),!Co))):(ki.moveTo(nc,ws),ki.arc(0,0,_o,Fs,zs,!Co)):ki.moveTo(nc,ws),!(Ma>c)||!(Fl>c)?ki.lineTo(Fn,_a):Js>c?(Io=_(Fn,_a,Vu,zl,Ma,-Js,Co),us=_(nc,ws,xo,Yl,Ma,-Js,Co),ki.lineTo(Io.cx+Io.x01,Io.cy+Io.y01),Js<fl?ki.arc(Io.cx,Io.cy,Js,i(Io.y01,Io.x01),i(us.y01,us.x01),!Co):(ki.arc(Io.cx,Io.cy,Js,i(Io.y01,Io.x01),i(Io.y11,Io.x11),!Co),ki.arc(0,0,Ma,i(Io.cy+Io.y11,Io.cx+Io.x11),i(us.cy+us.y11,us.cx+us.x11),Co),ki.arc(us.cx,us.cy,Js,i(us.y11,us.x11),i(us.y01,us.x01),!Co))):ki.arc(0,0,Ma,cl,ul,Co)}if(ki.closePath(),ya)return ki=null,ya+""||null}return _n.centroid=function(){var ya=(+St.apply(this,arguments)+ +Cr.apply(this,arguments))/2,Jn=(+fn.apply(this,arguments)+ +Sn.apply(this,arguments))/2-f/2;return[a(Jn)*ya,l(Jn)*ya]},_n.innerRadius=function(ya){return arguments.length?(St=typeof ya=="function"?ya:r(+ya),_n):St},_n.outerRadius=function(ya){return arguments.length?(Cr=typeof ya=="function"?ya:r(+ya),_n):Cr},_n.cornerRadius=function(ya){return arguments.length?(Qr=typeof ya=="function"?ya:r(+ya),_n):Qr},_n.padRadius=function(ya){return arguments.length?(pi=ya==null?null:typeof ya=="function"?ya:r(+ya),_n):pi},_n.startAngle=function(ya){return arguments.length?(fn=typeof ya=="function"?ya:r(+ya),_n):fn},_n.endAngle=function(ya){return arguments.length?(Sn=typeof ya=="function"?ya:r(+ya),_n):Sn},_n.padAngle=function(ya){return arguments.length?(En=typeof ya=="function"?ya:r(+ya),_n):En},_n.context=function(ya){return arguments.length?(ki=ya==null?null:ya,_n):ki},_n}function M(St){this._context=St}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(St,Cr){switch(St=+St,Cr=+Cr,this._point){case 0:this._point=1,this._line?this._context.lineTo(St,Cr):this._context.moveTo(St,Cr);break;case 1:this._point=2;default:this._context.lineTo(St,Cr);break}}};function g(St){return new M(St)}function P(St){return St[0]}function T(St){return St[1]}function z(){var St=P,Cr=T,Qr=r(!0),pi=null,fn=g,Sn=null;function En(ki){var _n,ya=ki.length,Jn,Ma=!1,_o;for(pi==null&&(Sn=fn(_o=t.path())),_n=0;_n<=ya;++_n)!(_n<ya&&Qr(Jn=ki[_n],_n,ki))===Ma&&((Ma=!Ma)?Sn.lineStart():Sn.lineEnd()),Ma&&Sn.point(+St(Jn,_n,ki),+Cr(Jn,_n,ki));if(_o)return Sn=null,_o+""||null}return En.x=function(ki){return arguments.length?(St=typeof ki=="function"?ki:r(+ki),En):St},En.y=function(ki){return arguments.length?(Cr=typeof ki=="function"?ki:r(+ki),En):Cr},En.defined=function(ki){return arguments.length?(Qr=typeof ki=="function"?ki:r(!!ki),En):Qr},En.curve=function(ki){return arguments.length?(fn=ki,pi!=null&&(Sn=fn(pi)),En):fn},En.context=function(ki){return arguments.length?(ki==null?pi=Sn=null:Sn=fn(pi=ki),En):pi},En}function O(){var St=P,Cr=null,Qr=r(0),pi=T,fn=r(!0),Sn=null,En=g,ki=null;function _n(Jn){var Ma,_o,No,po=Jn.length,Lo,Co=!1,Fs,zs=new Array(po),ul=new Array(po);for(Sn==null&&(ki=En(Fs=t.path())),Ma=0;Ma<=po;++Ma){if(!(Ma<po&&fn(Lo=Jn[Ma],Ma,Jn))===Co)if(Co=!Co)_o=Ma,ki.areaStart(),ki.lineStart();else{for(ki.lineEnd(),ki.lineStart(),No=Ma-1;No>=_o;--No)ki.point(zs[No],ul[No]);ki.lineEnd(),ki.areaEnd()}Co&&(zs[Ma]=+St(Lo,Ma,Jn),ul[Ma]=+Qr(Lo,Ma,Jn),ki.point(Cr?+Cr(Lo,Ma,Jn):zs[Ma],pi?+pi(Lo,Ma,Jn):ul[Ma]))}if(Fs)return ki=null,Fs+""||null}function ya(){return z().defined(fn).curve(En).context(Sn)}return _n.x=function(Jn){return arguments.length?(St=typeof Jn=="function"?Jn:r(+Jn),Cr=null,_n):St},_n.x0=function(Jn){return arguments.length?(St=typeof Jn=="function"?Jn:r(+Jn),_n):St},_n.x1=function(Jn){return arguments.length?(Cr=Jn==null?null:typeof Jn=="function"?Jn:r(+Jn),_n):Cr},_n.y=function(Jn){return arguments.length?(Qr=typeof Jn=="function"?Jn:r(+Jn),pi=null,_n):Qr},_n.y0=function(Jn){return arguments.length?(Qr=typeof Jn=="function"?Jn:r(+Jn),_n):Qr},_n.y1=function(Jn){return arguments.length?(pi=Jn==null?null:typeof Jn=="function"?Jn:r(+Jn),_n):pi},_n.lineX0=_n.lineY0=function(){return ya().x(St).y(Qr)},_n.lineY1=function(){return ya().x(St).y(pi)},_n.lineX1=function(){return ya().x(Cr).y(Qr)},_n.defined=function(Jn){return arguments.length?(fn=typeof Jn=="function"?Jn:r(!!Jn),_n):fn},_n.curve=function(Jn){return arguments.length?(En=Jn,Sn!=null&&(ki=En(Sn)),_n):En},_n.context=function(Jn){return arguments.length?(Jn==null?Sn=ki=null:ki=En(Sn=Jn),_n):Sn},_n}function V(St,Cr){return Cr<St?-1:Cr>St?1:Cr>=St?0:NaN}function G(St){return St}function Z(){var St=G,Cr=V,Qr=null,pi=r(0),fn=r(d),Sn=r(0);function En(ki){var _n,ya=ki.length,Jn,Ma,_o=0,No=new Array(ya),po=new Array(ya),Lo=+pi.apply(this,arguments),Co=Math.min(d,Math.max(-d,fn.apply(this,arguments)-Lo)),Fs,zs=Math.min(Math.abs(Co)/ya,Sn.apply(this,arguments)),ul=zs*(Co<0?-1:1),cl;for(_n=0;_n<ya;++_n)(cl=po[No[_n]=_n]=+St(ki[_n],_n,ki))>0&&(_o+=cl);for(Cr!=null?No.sort(function(Fl,cs){return Cr(po[Fl],po[cs])}):Qr!=null&&No.sort(function(Fl,cs){return Qr(ki[Fl],ki[cs])}),_n=0,Ma=_o?(Co-ya*ul)/_o:0;_n<ya;++_n,Lo=Fs)Jn=No[_n],cl=po[Jn],Fs=Lo+(cl>0?cl*Ma:0)+ul,po[Jn]={data:ki[Jn],index:_n,value:cl,startAngle:Lo,endAngle:Fs,padAngle:zs};return po}return En.value=function(ki){return arguments.length?(St=typeof ki=="function"?ki:r(+ki),En):St},En.sortValues=function(ki){return arguments.length?(Cr=ki,Qr=null,En):Cr},En.sort=function(ki){return arguments.length?(Qr=ki,Cr=null,En):Qr},En.startAngle=function(ki){return arguments.length?(pi=typeof ki=="function"?ki:r(+ki),En):pi},En.endAngle=function(ki){return arguments.length?(fn=typeof ki=="function"?ki:r(+ki),En):fn},En.padAngle=function(ki){return arguments.length?(Sn=typeof ki=="function"?ki:r(+ki),En):Sn},En}var H=j(g);function N(St){this._curve=St}N.prototype={areaStart:function(){this._curve.areaStart()},areaEnd:function(){this._curve.areaEnd()},lineStart:function(){this._curve.lineStart()},lineEnd:function(){this._curve.lineEnd()},point:function(St,Cr){this._curve.point(Cr*Math.sin(St),Cr*-Math.cos(St))}};function j(St){function Cr(Qr){return new N(St(Qr))}return Cr._curve=St,Cr}function re(St){var Cr=St.curve;return St.angle=St.x,delete St.x,St.radius=St.y,delete St.y,St.curve=function(Qr){return arguments.length?Cr(j(Qr)):Cr()._curve},St}function oe(){return re(z().curve(H))}function _e(){var St=O().curve(H),Cr=St.curve,Qr=St.lineX0,pi=St.lineX1,fn=St.lineY0,Sn=St.lineY1;return St.angle=St.x,delete St.x,St.startAngle=St.x0,delete St.x0,St.endAngle=St.x1,delete St.x1,St.radius=St.y,delete St.y,St.innerRadius=St.y0,delete St.y0,St.outerRadius=St.y1,delete St.y1,St.lineStartAngle=function(){return re(Qr())},delete St.lineX0,St.lineEndAngle=function(){return re(pi())},delete St.lineX1,St.lineInnerRadius=function(){return re(fn())},delete St.lineY0,St.lineOuterRadius=function(){return re(Sn())},delete St.lineY1,St.curve=function(En){return arguments.length?Cr(j(En)):Cr()._curve},St}function Me(St,Cr){return[(Cr=+Cr)*Math.cos(St-=Math.PI/2),Cr*Math.sin(St)]}var ke=Array.prototype.slice;function me(St){return St.source}function ie(St){return St.target}function Se(St){var Cr=me,Qr=ie,pi=P,fn=T,Sn=null;function En(){var ki,_n=ke.call(arguments),ya=Cr.apply(this,_n),Jn=Qr.apply(this,_n);if(Sn||(Sn=ki=t.path()),St(Sn,+pi.apply(this,(_n[0]=ya,_n)),+fn.apply(this,_n),+pi.apply(this,(_n[0]=Jn,_n)),+fn.apply(this,_n)),ki)return Sn=null,ki+""||null}return En.source=function(ki){return arguments.length?(Cr=ki,En):Cr},En.target=function(ki){return arguments.length?(Qr=ki,En):Qr},En.x=function(ki){return arguments.length?(pi=typeof ki=="function"?ki:r(+ki),En):pi},En.y=function(ki){return arguments.length?(fn=typeof ki=="function"?ki:r(+ki),En):fn},En.context=function(ki){return arguments.length?(Sn=ki==null?null:ki,En):Sn},En}function Le(St,Cr,Qr,pi,fn){St.moveTo(Cr,Qr),St.bezierCurveTo(Cr=(Cr+pi)/2,Qr,Cr,fn,pi,fn)}function Ae(St,Cr,Qr,pi,fn){St.moveTo(Cr,Qr),St.bezierCurveTo(Cr,Qr=(Qr+fn)/2,pi,Qr,pi,fn)}function De(St,Cr,Qr,pi,fn){var Sn=Me(Cr,Qr),En=Me(Cr,Qr=(Qr+fn)/2),ki=Me(pi,Qr),_n=Me(pi,fn);St.moveTo(Sn[0],Sn[1]),St.bezierCurveTo(En[0],En[1],ki[0],ki[1],_n[0],_n[1])}function Pe(){return Se(Le)}function ge(){return Se(Ae)}function Fe(){var St=Se(De);return St.angle=St.x,delete St.x,St.radius=St.y,delete St.y,St}var ce={draw:function(St,Cr){var Qr=Math.sqrt(Cr/f);St.moveTo(Qr,0),St.arc(0,0,Qr,0,d)}},Ze={draw:function(St,Cr){var Qr=Math.sqrt(Cr/5)/2;St.moveTo(-3*Qr,-Qr),St.lineTo(-Qr,-Qr),St.lineTo(-Qr,-3*Qr),St.lineTo(Qr,-3*Qr),St.lineTo(Qr,-Qr),St.lineTo(3*Qr,-Qr),St.lineTo(3*Qr,Qr),St.lineTo(Qr,Qr),St.lineTo(Qr,3*Qr),St.lineTo(-Qr,3*Qr),St.lineTo(-Qr,Qr),St.lineTo(-3*Qr,Qr),St.closePath()}},ct=Math.sqrt(1/3),pt=ct*2,Wt={draw:function(St,Cr){var Qr=Math.sqrt(Cr/pt),pi=Qr*ct;St.moveTo(0,-Qr),St.lineTo(pi,0),St.lineTo(0,Qr),St.lineTo(-pi,0),St.closePath()}},st=.8908130915292852,lt=Math.sin(f/10)/Math.sin(7*f/10),Gt=Math.sin(d/10)*lt,Nt=-Math.cos(d/10)*lt,$t={draw:function(St,Cr){var Qr=Math.sqrt(Cr*st),pi=Gt*Qr,fn=Nt*Qr;St.moveTo(0,-Qr),St.lineTo(pi,fn);for(var Sn=1;Sn<5;++Sn){var En=d*Sn/5,ki=Math.cos(En),_n=Math.sin(En);St.lineTo(_n*Qr,-ki*Qr),St.lineTo(ki*pi-_n*fn,_n*pi+ki*fn)}St.closePath()}},sr={draw:function(St,Cr){var Qr=Math.sqrt(Cr),pi=-Qr/2;St.rect(pi,pi,Qr,Qr)}},wr=Math.sqrt(3),ur={draw:function(St,Cr){var Qr=-Math.sqrt(Cr/(wr*3));St.moveTo(0,Qr*2),St.lineTo(-wr*Qr,-Qr),St.lineTo(wr*Qr,-Qr),St.closePath()}},Qe=-.5,Et=Math.sqrt(3)/2,er=1/Math.sqrt(12),Ut=(er/2+1)*3,Ft={draw:function(St,Cr){var Qr=Math.sqrt(Cr/Ut),pi=Qr/2,fn=Qr*er,Sn=pi,En=Qr*er+Qr,ki=-Sn,_n=En;St.moveTo(pi,fn),St.lineTo(Sn,En),St.lineTo(ki,_n),St.lineTo(Qe*pi-Et*fn,Et*pi+Qe*fn),St.lineTo(Qe*Sn-Et*En,Et*Sn+Qe*En),St.lineTo(Qe*ki-Et*_n,Et*ki+Qe*_n),St.lineTo(Qe*pi+Et*fn,Qe*fn-Et*pi),St.lineTo(Qe*Sn+Et*En,Qe*En-Et*Sn),St.lineTo(Qe*ki+Et*_n,Qe*_n-Et*ki),St.closePath()}},bt=[ce,Ze,Wt,sr,$t,ur,Ft];function yt(){var St=r(ce),Cr=r(64),Qr=null;function pi(){var fn;if(Qr||(Qr=fn=t.path()),St.apply(this,arguments).draw(Qr,+Cr.apply(this,arguments)),fn)return Qr=null,fn+""||null}return pi.type=function(fn){return arguments.length?(St=typeof fn=="function"?fn:r(fn),pi):St},pi.size=function(fn){return arguments.length?(Cr=typeof fn=="function"?fn:r(+fn),pi):Cr},pi.context=function(fn){return arguments.length?(Qr=fn==null?null:fn,pi):Qr},pi}function Yt(){}function lr(St,Cr,Qr){St._context.bezierCurveTo((2*St._x0+St._x1)/3,(2*St._y0+St._y1)/3,(St._x0+2*St._x1)/3,(St._y0+2*St._y1)/3,(St._x0+4*St._x1+Cr)/6,(St._y0+4*St._y1+Qr)/6)}function Tr(St){this._context=St}Tr.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:lr(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(St,Cr){switch(St=+St,Cr=+Cr,this._point){case 0:this._point=1,this._line?this._context.lineTo(St,Cr):this._context.moveTo(St,Cr);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:lr(this,St,Cr);break}this._x0=this._x1,this._x1=St,this._y0=this._y1,this._y1=Cr}};function Rr(St){return new Tr(St)}function ei(St){this._context=St}ei.prototype={areaStart:Yt,areaEnd:Yt,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(St,Cr){switch(St=+St,Cr=+Cr,this._point){case 0:this._point=1,this._x2=St,this._y2=Cr;break;case 1:this._point=2,this._x3=St,this._y3=Cr;break;case 2:this._point=3,this._x4=St,this._y4=Cr,this._context.moveTo((this._x0+4*this._x1+St)/6,(this._y0+4*this._y1+Cr)/6);break;default:lr(this,St,Cr);break}this._x0=this._x1,this._x1=St,this._y0=this._y1,this._y1=Cr}};function Wr(St){return new ei(St)}function Ur(St){this._context=St}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(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(St,Cr){switch(St=+St,Cr=+Cr,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var Qr=(this._x0+4*this._x1+St)/6,pi=(this._y0+4*this._y1+Cr)/6;this._line?this._context.lineTo(Qr,pi):this._context.moveTo(Qr,pi);break;case 3:this._point=4;default:lr(this,St,Cr);break}this._x0=this._x1,this._x1=St,this._y0=this._y1,this._y1=Cr}};function dt(St){return new Ur(St)}function Ge(St,Cr){this._basis=new Tr(St),this._beta=Cr}Ge.prototype={lineStart:function(){this._x=[],this._y=[],this._basis.lineStart()},lineEnd:function(){var St=this._x,Cr=this._y,Qr=St.length-1;if(Qr>0)for(var pi=St[0],fn=Cr[0],Sn=St[Qr]-pi,En=Cr[Qr]-fn,ki=-1,_n;++ki<=Qr;)_n=ki/Qr,this._basis.point(this._beta*St[ki]+(1-this._beta)*(pi+_n*Sn),this._beta*Cr[ki]+(1-this._beta)*(fn+_n*En));this._x=this._y=null,this._basis.lineEnd()},point:function(St,Cr){this._x.push(+St),this._y.push(+Cr)}};var Je=function St(Cr){function Qr(pi){return Cr===1?new Tr(pi):new Ge(pi,Cr)}return Qr.beta=function(pi){return St(+pi)},Qr}(.85);function je(St,Cr,Qr){St._context.bezierCurveTo(St._x1+St._k*(St._x2-St._x0),St._y1+St._k*(St._y2-St._y0),St._x2+St._k*(St._x1-Cr),St._y2+St._k*(St._y1-Qr),St._x2,St._y2)}function $e(St,Cr){this._context=St,this._k=(1-Cr)/6}$e.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:je(this,this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(St,Cr){switch(St=+St,Cr=+Cr,this._point){case 0:this._point=1,this._line?this._context.lineTo(St,Cr):this._context.moveTo(St,Cr);break;case 1:this._point=2,this._x1=St,this._y1=Cr;break;case 2:this._point=3;default:je(this,St,Cr);break}this._x0=this._x1,this._x1=this._x2,this._x2=St,this._y0=this._y1,this._y1=this._y2,this._y2=Cr}};var wt=function St(Cr){function Qr(pi){return new $e(pi,Cr)}return Qr.tension=function(pi){return St(+pi)},Qr}(0);function Ie(St,Cr){this._context=St,this._k=(1-Cr)/6}Ie.prototype={areaStart:Yt,areaEnd:Yt,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(St,Cr){switch(St=+St,Cr=+Cr,this._point){case 0:this._point=1,this._x3=St,this._y3=Cr;break;case 1:this._point=2,this._context.moveTo(this._x4=St,this._y4=Cr);break;case 2:this._point=3,this._x5=St,this._y5=Cr;break;default:je(this,St,Cr);break}this._x0=this._x1,this._x1=this._x2,this._x2=St,this._y0=this._y1,this._y1=this._y2,this._y2=Cr}};var xe=function St(Cr){function Qr(pi){return new Ie(pi,Cr)}return Qr.tension=function(pi){return St(+pi)},Qr}(0);function Ce(St,Cr){this._context=St,this._k=(1-Cr)/6}Ce.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(St,Cr){switch(St=+St,Cr=+Cr,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:je(this,St,Cr);break}this._x0=this._x1,this._x1=this._x2,this._x2=St,this._y0=this._y1,this._y1=this._y2,this._y2=Cr}};var vt=function St(Cr){function Qr(pi){return new Ce(pi,Cr)}return Qr.tension=function(pi){return St(+pi)},Qr}(0);function nr(St,Cr,Qr){var pi=St._x1,fn=St._y1,Sn=St._x2,En=St._y2;if(St._l01_a>c){var ki=2*St._l01_2a+3*St._l01_a*St._l12_a+St._l12_2a,_n=3*St._l01_a*(St._l01_a+St._l12_a);pi=(pi*ki-St._x0*St._l12_2a+St._x2*St._l01_2a)/_n,fn=(fn*ki-St._y0*St._l12_2a+St._y2*St._l01_2a)/_n}if(St._l23_a>c){var ya=2*St._l23_2a+3*St._l23_a*St._l12_a+St._l12_2a,Jn=3*St._l23_a*(St._l23_a+St._l12_a);Sn=(Sn*ya+St._x1*St._l23_2a-Cr*St._l12_2a)/Jn,En=(En*ya+St._y1*St._l23_2a-Qr*St._l12_2a)/Jn}St._context.bezierCurveTo(pi,fn,Sn,En,St._x2,St._y2)}function ir(St,Cr){this._context=St,this._alpha=Cr}ir.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(St,Cr){if(St=+St,Cr=+Cr,this._point){var Qr=this._x2-St,pi=this._y2-Cr;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(Qr*Qr+pi*pi,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(St,Cr):this._context.moveTo(St,Cr);break;case 1:this._point=2;break;case 2:this._point=3;default:nr(this,St,Cr);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=St,this._y0=this._y1,this._y1=this._y2,this._y2=Cr}};var pr=function St(Cr){function Qr(pi){return Cr?new ir(pi,Cr):new $e(pi,0)}return Qr.alpha=function(pi){return St(+pi)},Qr}(.5);function oi(St,Cr){this._context=St,this._alpha=Cr}oi.prototype={areaStart:Yt,areaEnd:Yt,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(St,Cr){if(St=+St,Cr=+Cr,this._point){var Qr=this._x2-St,pi=this._y2-Cr;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(Qr*Qr+pi*pi,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=St,this._y3=Cr;break;case 1:this._point=2,this._context.moveTo(this._x4=St,this._y4=Cr);break;case 2:this._point=3,this._x5=St,this._y5=Cr;break;default:nr(this,St,Cr);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=St,this._y0=this._y1,this._y1=this._y2,this._y2=Cr}};var di=function St(Cr){function Qr(pi){return Cr?new oi(pi,Cr):new Ie(pi,0)}return Qr.alpha=function(pi){return St(+pi)},Qr}(.5);function Jr(St,Cr){this._context=St,this._alpha=Cr}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(St,Cr){if(St=+St,Cr=+Cr,this._point){var Qr=this._x2-St,pi=this._y2-Cr;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(Qr*Qr+pi*pi,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:nr(this,St,Cr);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=St,this._y0=this._y1,this._y1=this._y2,this._y2=Cr}};var fi=function St(Cr){function Qr(pi){return Cr?new Jr(pi,Cr):new Ce(pi,0)}return Qr.alpha=function(pi){return St(+pi)},Qr}(.5);function Hi(St){this._context=St}Hi.prototype={areaStart:Yt,areaEnd:Yt,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(St,Cr){St=+St,Cr=+Cr,this._point?this._context.lineTo(St,Cr):(this._point=1,this._context.moveTo(St,Cr))}};function Pn(St){return new Hi(St)}function wn(St){return St<0?-1:1}function pn(St,Cr,Qr){var pi=St._x1-St._x0,fn=Cr-St._x1,Sn=(St._y1-St._y0)/(pi||fn<0&&-0),En=(Qr-St._y1)/(fn||pi<0&&-0),ki=(Sn*fn+En*pi)/(pi+fn);return(wn(Sn)+wn(En))*Math.min(Math.abs(Sn),Math.abs(En),.5*Math.abs(ki))||0}function Vn(St,Cr){var Qr=St._x1-St._x0;return Qr?(3*(St._y1-St._y0)/Qr-Cr)/2:Cr}function kn(St,Cr,Qr){var pi=St._x0,fn=St._y0,Sn=St._x1,En=St._y1,ki=(Sn-pi)/3;St._context.bezierCurveTo(pi+ki,fn+ki*Cr,Sn-ki,En-ki*Qr,Sn,En)}function ea(St){this._context=St}ea.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:kn(this,this._t0,Vn(this,this._t0));break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(St,Cr){var Qr=NaN;if(St=+St,Cr=+Cr,!(St===this._x1&&Cr===this._y1)){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(St,Cr):this._context.moveTo(St,Cr);break;case 1:this._point=2;break;case 2:this._point=3,kn(this,Vn(this,Qr=pn(this,St,Cr)),Qr);break;default:kn(this,this._t0,Qr=pn(this,St,Cr));break}this._x0=this._x1,this._x1=St,this._y0=this._y1,this._y1=Cr,this._t0=Qr}}};function ua(St){this._context=new Vt(St)}(ua.prototype=Object.create(ea.prototype)).point=function(St,Cr){ea.prototype.point.call(this,Cr,St)};function Vt(St){this._context=St}Vt.prototype={moveTo:function(St,Cr){this._context.moveTo(Cr,St)},closePath:function(){this._context.closePath()},lineTo:function(St,Cr){this._context.lineTo(Cr,St)},bezierCurveTo:function(St,Cr,Qr,pi,fn,Sn){this._context.bezierCurveTo(Cr,St,pi,Qr,Sn,fn)}};function _t(St){return new ea(St)}function tr(St){return new ua(St)}function ar(St){this._context=St}ar.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var St=this._x,Cr=this._y,Qr=St.length;if(Qr)if(this._line?this._context.lineTo(St[0],Cr[0]):this._context.moveTo(St[0],Cr[0]),Qr===2)this._context.lineTo(St[1],Cr[1]);else for(var pi=Er(St),fn=Er(Cr),Sn=0,En=1;En<Qr;++Sn,++En)this._context.bezierCurveTo(pi[0][Sn],fn[0][Sn],pi[1][Sn],fn[1][Sn],St[En],Cr[En]);(this._line||this._line!==0&&Qr===1)&&this._context.closePath(),this._line=1-this._line,this._x=this._y=null},point:function(St,Cr){this._x.push(+St),this._y.push(+Cr)}};function Er(St){var Cr,Qr=St.length-1,pi,fn=new Array(Qr),Sn=new Array(Qr),En=new Array(Qr);for(fn[0]=0,Sn[0]=2,En[0]=St[0]+2*St[1],Cr=1;Cr<Qr-1;++Cr)fn[Cr]=1,Sn[Cr]=4,En[Cr]=4*St[Cr]+2*St[Cr+1];for(fn[Qr-1]=2,Sn[Qr-1]=7,En[Qr-1]=8*St[Qr-1]+St[Qr],Cr=1;Cr<Qr;++Cr)pi=fn[Cr]/Sn[Cr-1],Sn[Cr]-=pi,En[Cr]-=pi*En[Cr-1];for(fn[Qr-1]=En[Qr-1]/Sn[Qr-1],Cr=Qr-2;Cr>=0;--Cr)fn[Cr]=(En[Cr]-fn[Cr+1])/Sn[Cr];for(Sn[Qr-1]=(St[Qr]+fn[Qr-1])/2,Cr=0;Cr<Qr-1;++Cr)Sn[Cr]=2*St[Cr+1]-fn[Cr+1];return[fn,Sn]}function Zr(St){return new ar(St)}function ri(St,Cr){this._context=St,this._t=Cr}ri.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(St,Cr){switch(St=+St,Cr=+Cr,this._point){case 0:this._point=1,this._line?this._context.lineTo(St,Cr):this._context.moveTo(St,Cr);break;case 1:this._point=2;default:{if(this._t<=0)this._context.lineTo(this._x,Cr),this._context.lineTo(St,Cr);else{var Qr=this._x*(1-this._t)+St*this._t;this._context.lineTo(Qr,this._y),this._context.lineTo(Qr,Cr)}break}}this._x=St,this._y=Cr}};function $r(St){return new ri(St,.5)}function zi(St){return new ri(St,0)}function Ji(St){return new ri(St,1)}function en(St,Cr){if((En=St.length)>1)for(var Qr=1,pi,fn,Sn=St[Cr[0]],En,ki=Sn.length;Qr<En;++Qr)for(fn=Sn,Sn=St[Cr[Qr]],pi=0;pi<ki;++pi)Sn[pi][1]+=Sn[pi][0]=isNaN(fn[pi][1])?fn[pi][0]:fn[pi][1]}function cn(St){for(var Cr=St.length,Qr=new Array(Cr);--Cr>=0;)Qr[Cr]=Cr;return Qr}function yn(St,Cr){return St[Cr]}function Mn(){var St=r([]),Cr=cn,Qr=en,pi=yn;function fn(Sn){var En=St.apply(this,arguments),ki,_n=Sn.length,ya=En.length,Jn=new Array(ya),Ma;for(ki=0;ki<ya;++ki){for(var _o=En[ki],No=Jn[ki]=new Array(_n),po=0,Lo;po<_n;++po)No[po]=Lo=[0,+pi(Sn[po],_o,po,Sn)],Lo.data=Sn[po];No.key=_o}for(ki=0,Ma=Cr(Jn);ki<ya;++ki)Jn[Ma[ki]].index=ki;return Qr(Jn,Ma),Jn}return fn.keys=function(Sn){return arguments.length?(St=typeof Sn=="function"?Sn:r(ke.call(Sn)),fn):St},fn.value=function(Sn){return arguments.length?(pi=typeof Sn=="function"?Sn:r(+Sn),fn):pi},fn.order=function(Sn){return arguments.length?(Cr=Sn==null?cn:typeof Sn=="function"?Sn:r(ke.call(Sn)),fn):Cr},fn.offset=function(Sn){return arguments.length?(Qr=Sn==null?en:Sn,fn):Qr},fn}function Ba(St,Cr){if((pi=St.length)>0){for(var Qr,pi,fn=0,Sn=St[0].length,En;fn<Sn;++fn){for(En=Qr=0;Qr<pi;++Qr)En+=St[Qr][fn][1]||0;if(En)for(Qr=0;Qr<pi;++Qr)St[Qr][fn][1]/=En}en(St,Cr)}}function la(St,Cr){if((_n=St.length)>0)for(var Qr,pi=0,fn,Sn,En,ki,_n,ya=St[Cr[0]].length;pi<ya;++pi)for(En=ki=0,Qr=0;Qr<_n;++Qr)(Sn=(fn=St[Cr[Qr]][pi])[1]-fn[0])>0?(fn[0]=En,fn[1]=En+=Sn):Sn<0?(fn[1]=ki,fn[0]=ki+=Sn):(fn[0]=0,fn[1]=Sn)}function ma(St,Cr){if((fn=St.length)>0){for(var Qr=0,pi=St[Cr[0]],fn,Sn=pi.length;Qr<Sn;++Qr){for(var En=0,ki=0;En<fn;++En)ki+=St[En][Qr][1]||0;pi[Qr][1]+=pi[Qr][0]=-ki/2}en(St,Cr)}}function Wa(St,Cr){if(!(!((En=St.length)>0)||!((Sn=(fn=St[Cr[0]]).length)>0))){for(var Qr=0,pi=1,fn,Sn,En;pi<Sn;++pi){for(var ki=0,_n=0,ya=0;ki<En;++ki){for(var Jn=St[Cr[ki]],Ma=Jn[pi][1]||0,_o=Jn[pi-1][1]||0,No=(Ma-_o)/2,po=0;po<ki;++po){var Lo=St[Cr[po]],Co=Lo[pi][1]||0,Fs=Lo[pi-1][1]||0;No+=Co-Fs}_n+=Ma,ya+=No*Ma}fn[pi-1][1]+=fn[pi-1][0]=Qr,_n&&(Qr-=ya/_n)}fn[pi-1][1]+=fn[pi-1][0]=Qr,en(St,Cr)}}function Fa(St){var Cr=St.map(Wo);return cn(St).sort(function(Qr,pi){return Cr[Qr]-Cr[pi]})}function Wo(St){for(var Cr=-1,Qr=0,pi=St.length,fn,Sn=-1/0;++Cr<pi;)(fn=+St[Cr][1])>Sn&&(Sn=fn,Qr=Cr);return Qr}function da(St){var Cr=St.map(Wn);return cn(St).sort(function(Qr,pi){return Cr[Qr]-Cr[pi]})}function Wn(St){for(var Cr=0,Qr=-1,pi=St.length,fn;++Qr<pi;)(fn=+St[Qr][1])&&(Cr+=fn);return Cr}function Ga(St){return da(St).reverse()}function vo(St){var Cr=St.length,Qr,pi,fn=St.map(Wn),Sn=Fa(St),En=0,ki=0,_n=[],ya=[];for(Qr=0;Qr<Cr;++Qr)pi=Sn[Qr],En<ki?(En+=fn[pi],_n.push(pi)):(ki+=fn[pi],ya.push(pi));return ya.reverse().concat(_n)}function jn(St){return cn(St).reverse()}e.arc=k,e.area=O,e.areaRadial=_e,e.curveBasis=Rr,e.curveBasisClosed=Wr,e.curveBasisOpen=dt,e.curveBundle=Je,e.curveCardinal=wt,e.curveCardinalClosed=xe,e.curveCardinalOpen=vt,e.curveCatmullRom=pr,e.curveCatmullRomClosed=di,e.curveCatmullRomOpen=fi,e.curveLinear=g,e.curveLinearClosed=Pn,e.curveMonotoneX=_t,e.curveMonotoneY=tr,e.curveNatural=Zr,e.curveStep=$r,e.curveStepAfter=Ji,e.curveStepBefore=zi,e.line=z,e.lineRadial=oe,e.linkHorizontal=Pe,e.linkRadial=Fe,e.linkVertical=ge,e.pie=Z,e.pointRadial=Me,e.radialArea=_e,e.radialLine=oe,e.stack=Mn,e.stackOffsetDiverging=la,e.stackOffsetExpand=Ba,e.stackOffsetNone=en,e.stackOffsetSilhouette=ma,e.stackOffsetWiggle=Wa,e.stackOrderAppearance=Fa,e.stackOrderAscending=da,e.stackOrderDescending=Ga,e.stackOrderInsideOut=vo,e.stackOrderNone=cn,e.stackOrderReverse=jn,e.symbol=yt,e.symbolCircle=ce,e.symbolCross=Ze,e.symbolDiamond=Wt,e.symbolSquare=sr,e.symbolStar=$t,e.symbolTriangle=ur,e.symbolWye=Ft,e.symbols=bt,Object.defineProperty(e,"__esModule",{value:!0})})});var TWe=ye((b7,wWe)=>{(function(e,t){typeof b7=="object"&&typeof wWe!="undefined"?t(b7,nC(),p7(),GJ()):t(e.d3=e.d3||{},e.d3,e.d3,e.d3)})(b7,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 C(g){return g.nodes}function E(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,z=1,O=24,V=8,G=p,Z=s,H=C,N=E,j=32,re=2/3;function oe(){var Se={nodes:H.apply(null,arguments),links:N.apply(null,arguments)};return _e(Se),Me(Se),ke(Se),me(Se,j),ie(Se),Se}oe.update=function(Se){return ie(Se),Se},oe.nodeId=function(Se){return arguments.length?(G=typeof Se=="function"?Se:u(Se),oe):G},oe.nodeAlign=function(Se){return arguments.length?(Z=typeof Se=="function"?Se:u(Se),oe):Z},oe.nodeWidth=function(Se){return arguments.length?(O=+Se,oe):O},oe.nodePadding=function(Se){return arguments.length?(V=+Se,oe):V},oe.nodes=function(Se){return arguments.length?(H=typeof Se=="function"?Se:u(Se),oe):H},oe.links=function(Se){return arguments.length?(N=typeof Se=="function"?Se:u(Se),oe):N},oe.size=function(Se){return arguments.length?(g=P=0,T=+Se[0],z=+Se[1],oe):[T-g,z-P]},oe.extent=function(Se){return arguments.length?(g=+Se[0][0],T=+Se[1][0],P=+Se[0][1],z=+Se[1][1],oe):[[g,P],[T,z]]},oe.iterations=function(Se){return arguments.length?(j=+Se,oe):j};function _e(Se){Se.nodes.forEach(function(Ae,De){Ae.index=De,Ae.sourceLinks=[],Ae.targetLinks=[]});var Le=r.map(Se.nodes,G);Se.links.forEach(function(Ae,De){Ae.index=De;var Pe=Ae.source,ge=Ae.target;typeof Pe!="object"&&(Pe=Ae.source=A(Le,Pe)),typeof ge!="object"&&(ge=Ae.target=A(Le,ge)),Pe.sourceLinks.push(Ae),ge.targetLinks.push(Ae)})}function Me(Se){Se.nodes.forEach(function(Le){Le.value=Math.max(t.sum(Le.sourceLinks,d),t.sum(Le.targetLinks,d))})}function ke(Se){var Le,Ae,De;for(Le=Se.nodes,Ae=[],De=0;Le.length;++De,Le=Ae,Ae=[])Le.forEach(function(ge){ge.depth=De,ge.sourceLinks.forEach(function(Fe){Ae.indexOf(Fe.target)<0&&Ae.push(Fe.target)})});for(Le=Se.nodes,Ae=[],De=0;Le.length;++De,Le=Ae,Ae=[])Le.forEach(function(ge){ge.height=De,ge.targetLinks.forEach(function(Fe){Ae.indexOf(Fe.source)<0&&Ae.push(Fe.source)})});var Pe=(T-g-O)/(De-1);Se.nodes.forEach(function(ge){ge.x1=(ge.x0=g+Math.max(0,Math.min(De-1,Math.floor(Z.call(null,ge,De))))*Pe)+O})}function me(Se){var Le=r.nest().key(function(Ze){return Ze.x0}).sortKeys(t.ascending).entries(Se.nodes).map(function(Ze){return Ze.values});Pe(),ce();for(var Ae=1,De=j;De>0;--De)Fe(Ae*=.99),ce(),ge(Ae),ce();function Pe(){var Ze=t.max(Le,function(Wt){return Wt.length}),ct=re*(z-P)/(Ze-1);V>ct&&(V=ct);var pt=t.min(Le,function(Wt){return(z-P-(Wt.length-1)*V)/t.sum(Wt,d)});Le.forEach(function(Wt){Wt.forEach(function(st,lt){st.y1=(st.y0=lt)+st.value*pt})}),Se.links.forEach(function(Wt){Wt.width=Wt.value*pt})}function ge(Ze){Le.forEach(function(ct){ct.forEach(function(pt){if(pt.targetLinks.length){var Wt=(t.sum(pt.targetLinks,x)/t.sum(pt.targetLinks,d)-v(pt))*Ze;pt.y0+=Wt,pt.y1+=Wt}})})}function Fe(Ze){Le.slice().reverse().forEach(function(ct){ct.forEach(function(pt){if(pt.sourceLinks.length){var Wt=(t.sum(pt.sourceLinks,b)/t.sum(pt.sourceLinks,d)-v(pt))*Ze;pt.y0+=Wt,pt.y1+=Wt}})})}function ce(){Le.forEach(function(Ze){var ct,pt,Wt=P,st=Ze.length,lt;for(Ze.sort(h),lt=0;lt<st;++lt)ct=Ze[lt],pt=Wt-ct.y0,pt>0&&(ct.y0+=pt,ct.y1+=pt),Wt=ct.y1+V;if(pt=Wt-V-z,pt>0)for(Wt=ct.y0-=pt,ct.y1-=pt,lt=st-2;lt>=0;--lt)ct=Ze[lt],pt=ct.y1+V-Wt,pt>0&&(ct.y0-=pt,ct.y1-=pt),Wt=ct.y0})}}function ie(Se){Se.nodes.forEach(function(Le){Le.sourceLinks.sort(f),Le.targetLinks.sort(c)}),Se.nodes.forEach(function(Le){var Ae=Le.y0,De=Ae;Le.sourceLinks.forEach(function(Pe){Pe.y0=Ae+Pe.width/2,Ae+=Pe.width}),Le.targetLinks.forEach(function(Pe){Pe.y1=De+Pe.width/2,De+=Pe.width})})}return oe};function _(g){return[g.source.x1,g.y0]}function k(g){return[g.target.x0,g.y1]}var M=function(){return n.linkHorizontal().source(_).target(k)};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 SWe=ye((nbr,AWe)=>{var WXt=VJ();AWe.exports=function(t,r){var n=[],i=[],a=[],o={},s=[],l;function u(E){a[E]=!1,o.hasOwnProperty(E)&&Object.keys(o[E]).forEach(function(A){delete o[E][A],a[A]&&u(A)})}function c(E){var A=!1;i.push(E),a[E]=!0;var L,_;for(L=0;L<s[E].length;L++)_=s[E][L],_===l?(f(l,i),A=!0):a[_]||(A=c(_));if(A)u(E);else for(L=0;L<s[E].length;L++){_=s[E][L];var k=o[_];k||(k={},o[_]=k),k[_]=!0}return i.pop(),A}function f(E,A){var L=[].concat(A).concat(E);r?r(c):n.push(L)}function h(E){for(var A=0;A<t.length;A++)A<E&&(t[A]=[]),t[A]=t[A].filter(function(L){return L>=E})}function d(E){h(E);for(var A=t,L=WXt(A),_=L.components.filter(function(O){return O.length>1}),k=1/0,M,g=0;g<_.length;g++)for(var P=0;P<_[g].length;P++)_[g][P]<k&&(k=_[g][P],M=g);var T=_[M];if(!T)return!1;var z=t.map(function(O,V){return T.indexOf(V)===-1?[]:O.filter(function(G){return T.indexOf(G)!==-1})});return{leastVertex:k,adjList:z}}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 C=s[b][p];a[+C]=!1,o[C]={}}c(l),l=l+1}else l=v}if(!r)return n}});var EWe=ye((w7,MWe)=>{(function(e,t){typeof w7=="object"&&typeof MWe!="undefined"?t(w7,nC(),p7(),GJ(),SWe()):t(e.d3=e.d3||{},e.d3,e.d3,e.d3,null)})(w7,function(e,t,r,n,i){"use strict";i=i&&i.hasOwnProperty("default")?i.default:i;function a(st){return st.target.depth}function o(st){return st.depth}function s(st,lt){return lt-1-st.height}function l(st,lt){return st.sourceLinks.length?st.depth:lt-1}function u(st){return st.targetLinks.length?st.depth:st.sourceLinks.length?t.min(st.sourceLinks,a)-1:0}function c(st){return function(){return st}}var f=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(st){return typeof st}:function(st){return st&&typeof Symbol=="function"&&st.constructor===Symbol&&st!==Symbol.prototype?"symbol":typeof st};function h(st,lt){return v(st.source,lt.source)||st.index-lt.index}function d(st,lt){return v(st.target,lt.target)||st.index-lt.index}function v(st,lt){return st.partOfCycle===lt.partOfCycle?st.y0-lt.y0:st.circularLinkType==="top"||lt.circularLinkType==="bottom"?-1:1}function x(st){return st.value}function b(st){return(st.y0+st.y1)/2}function p(st){return b(st.source)}function C(st){return b(st.target)}function E(st){return st.index}function A(st){return st.nodes}function L(st){return st.links}function _(st,lt){var Gt=st.get(lt);if(!Gt)throw new Error("missing: "+lt);return Gt}function k(st,lt){return lt(st)}var M=25,g=10,P=.3;function T(){var st=0,lt=0,Gt=1,Nt=1,$t=24,sr,wr=E,ur=l,Qe=A,Et=L,er=32,Ut=2,Ft,bt=null;function yt(){var dt={nodes:Qe.apply(null,arguments),links:Et.apply(null,arguments)};Yt(dt),z(dt,wr,bt),lr(dt),ei(dt),O(dt,wr),Wr(dt,er,wr),Ur(dt);for(var Ge=4,Je=0;Je<Ge;Je++)Fe(dt,Nt,wr),ce(dt,Nt,wr),De(dt,lt,Nt,wr),Fe(dt,Nt,wr),ce(dt,Nt,wr);return Wt(dt,lt,Nt),j(dt,Ut,Nt,wr),dt}yt.nodeId=function(dt){return arguments.length?(wr=typeof dt=="function"?dt:c(dt),yt):wr},yt.nodeAlign=function(dt){return arguments.length?(ur=typeof dt=="function"?dt:c(dt),yt):ur},yt.nodeWidth=function(dt){return arguments.length?($t=+dt,yt):$t},yt.nodePadding=function(dt){return arguments.length?(sr=+dt,yt):sr},yt.nodes=function(dt){return arguments.length?(Qe=typeof dt=="function"?dt:c(dt),yt):Qe},yt.links=function(dt){return arguments.length?(Et=typeof dt=="function"?dt:c(dt),yt):Et},yt.size=function(dt){return arguments.length?(st=lt=0,Gt=+dt[0],Nt=+dt[1],yt):[Gt-st,Nt-lt]},yt.extent=function(dt){return arguments.length?(st=+dt[0][0],Gt=+dt[1][0],lt=+dt[0][1],Nt=+dt[1][1],yt):[[st,lt],[Gt,Nt]]},yt.iterations=function(dt){return arguments.length?(er=+dt,yt):er},yt.circularLinkGap=function(dt){return arguments.length?(Ut=+dt,yt):Ut},yt.nodePaddingRatio=function(dt){return arguments.length?(Ft=+dt,yt):Ft},yt.sortNodes=function(dt){return arguments.length?(bt=dt,yt):bt},yt.update=function(dt){return O(dt,wr),Ur(dt),dt.links.forEach(function(Ge){Ge.circular&&(Ge.circularLinkType=Ge.y0+Ge.y1<Nt?"top":"bottom",Ge.source.circularLinkType=Ge.circularLinkType,Ge.target.circularLinkType=Ge.circularLinkType)}),Fe(dt,Nt,wr,!1),ce(dt,Nt,wr),j(dt,Ut,Nt,wr),dt};function Yt(dt){dt.nodes.forEach(function(Je,je){Je.index=je,Je.sourceLinks=[],Je.targetLinks=[]});var Ge=r.map(dt.nodes,wr);return dt.links.forEach(function(Je,je){Je.index=je;var $e=Je.source,wt=Je.target;(typeof $e=="undefined"?"undefined":f($e))!=="object"&&($e=Je.source=_(Ge,$e)),(typeof wt=="undefined"?"undefined":f(wt))!=="object"&&(wt=Je.target=_(Ge,wt)),$e.sourceLinks.push(Je),wt.targetLinks.push(Je)}),dt}function lr(dt){dt.nodes.forEach(function(Ge){Ge.partOfCycle=!1,Ge.value=Math.max(t.sum(Ge.sourceLinks,x),t.sum(Ge.targetLinks,x)),Ge.sourceLinks.forEach(function(Je){Je.circular&&(Ge.partOfCycle=!0,Ge.circularLinkType=Je.circularLinkType)}),Ge.targetLinks.forEach(function(Je){Je.circular&&(Ge.partOfCycle=!0,Ge.circularLinkType=Je.circularLinkType)})})}function Tr(dt){var Ge=0,Je=0,je=0,$e=0,wt=t.max(dt.nodes,function(Ie){return Ie.column});return dt.links.forEach(function(Ie){Ie.circular&&(Ie.circularLinkType=="top"?Ge=Ge+Ie.width:Je=Je+Ie.width,Ie.target.column==0&&($e=$e+Ie.width),Ie.source.column==wt&&(je=je+Ie.width))}),Ge=Ge>0?Ge+M+g:Ge,Je=Je>0?Je+M+g:Je,je=je>0?je+M+g:je,$e=$e>0?$e+M+g:$e,{top:Ge,bottom:Je,left:$e,right:je}}function Rr(dt,Ge){var Je=t.max(dt.nodes,function(vt){return vt.column}),je=Gt-st,$e=Nt-lt,wt=je+Ge.right+Ge.left,Ie=$e+Ge.top+Ge.bottom,xe=je/wt,Ce=$e/Ie;return st=st*xe+Ge.left,Gt=Ge.right==0?Gt:Gt*xe,lt=lt*Ce+Ge.top,Nt=Nt*Ce,dt.nodes.forEach(function(vt){vt.x0=st+vt.column*((Gt-st-$t)/Je),vt.x1=vt.x0+$t}),Ce}function ei(dt){var Ge,Je,je;for(Ge=dt.nodes,Je=[],je=0;Ge.length;++je,Ge=Je,Je=[])Ge.forEach(function($e){$e.depth=je,$e.sourceLinks.forEach(function(wt){Je.indexOf(wt.target)<0&&!wt.circular&&Je.push(wt.target)})});for(Ge=dt.nodes,Je=[],je=0;Ge.length;++je,Ge=Je,Je=[])Ge.forEach(function($e){$e.height=je,$e.targetLinks.forEach(function(wt){Je.indexOf(wt.source)<0&&!wt.circular&&Je.push(wt.source)})});dt.nodes.forEach(function($e){$e.column=Math.floor(ur.call(null,$e,je))})}function Wr(dt,Ge,Je){var je=r.nest().key(function(vt){return vt.column}).sortKeys(t.ascending).entries(dt.nodes).map(function(vt){return vt.values});Ie(Je),Ce();for(var $e=1,wt=Ge;wt>0;--wt)xe($e*=.99,Je),Ce();function Ie(vt){if(Ft){var nr=1/0;je.forEach(function(di){var Jr=Nt*Ft/(di.length+1);nr=Jr<nr?Jr:nr}),sr=nr}var ir=t.min(je,function(di){return(Nt-lt-(di.length-1)*sr)/t.sum(di,x)});ir=ir*P,dt.links.forEach(function(di){di.width=di.value*ir});var pr=Tr(dt),oi=Rr(dt,pr);ir=ir*oi,dt.links.forEach(function(di){di.width=di.value*ir}),je.forEach(function(di){var Jr=di.length;di.forEach(function(fi,Hi){fi.depth==je.length-1&&Jr==1||fi.depth==0&&Jr==1?(fi.y0=Nt/2-fi.value*ir,fi.y1=fi.y0+fi.value*ir):fi.partOfCycle?Z(fi,vt)==0?(fi.y0=Nt/2+Hi,fi.y1=fi.y0+fi.value*ir):fi.circularLinkType=="top"?(fi.y0=lt+Hi,fi.y1=fi.y0+fi.value*ir):(fi.y0=Nt-fi.value*ir-Hi,fi.y1=fi.y0+fi.value*ir):pr.top==0||pr.bottom==0?(fi.y0=(Nt-lt)/Jr*Hi,fi.y1=fi.y0+fi.value*ir):(fi.y0=(Nt-lt)/2-Jr/2+Hi,fi.y1=fi.y0+fi.value*ir)})})}function xe(vt,nr){var ir=je.length;je.forEach(function(pr){var oi=pr.length,di=pr[0].depth;pr.forEach(function(Jr){var fi;if((Jr.sourceLinks.length||Jr.targetLinks.length)&&!(Jr.partOfCycle&&Z(Jr,nr)>0))if(di==0&&oi==1)fi=Jr.y1-Jr.y0,Jr.y0=Nt/2-fi/2,Jr.y1=Nt/2+fi/2;else if(di==ir-1&&oi==1)fi=Jr.y1-Jr.y0,Jr.y0=Nt/2-fi/2,Jr.y1=Nt/2+fi/2;else{var Hi=0,Pn=t.mean(Jr.sourceLinks,C),wn=t.mean(Jr.targetLinks,p);Pn&&wn?Hi=(Pn+wn)/2:Hi=Pn||wn;var pn=(Hi-b(Jr))*vt;Jr.y0+=pn,Jr.y1+=pn}})})}function Ce(){je.forEach(function(vt){var nr,ir,pr=lt,oi=vt.length,di;for(vt.sort(v),di=0;di<oi;++di)nr=vt[di],ir=pr-nr.y0,ir>0&&(nr.y0+=ir,nr.y1+=ir),pr=nr.y1+sr;if(ir=pr-sr-Nt,ir>0)for(pr=nr.y0-=ir,nr.y1-=ir,di=oi-2;di>=0;--di)nr=vt[di],ir=nr.y1+sr-pr,ir>0&&(nr.y0-=ir,nr.y1-=ir),pr=nr.y0})}}function Ur(dt){dt.nodes.forEach(function(Ge){Ge.sourceLinks.sort(d),Ge.targetLinks.sort(h)}),dt.nodes.forEach(function(Ge){var Je=Ge.y0,je=Je,$e=Ge.y1,wt=$e;Ge.sourceLinks.forEach(function(Ie){Ie.circular?(Ie.y0=$e-Ie.width/2,$e=$e-Ie.width):(Ie.y0=Je+Ie.width/2,Je+=Ie.width)}),Ge.targetLinks.forEach(function(Ie){Ie.circular?(Ie.y1=wt-Ie.width/2,wt=wt-Ie.width):(Ie.y1=je+Ie.width/2,je+=Ie.width)})})}return yt}function z(st,lt,Gt){var Nt=0;if(Gt===null){for(var $t=[],sr=0;sr<st.links.length;sr++){var wr=st.links[sr],ur=wr.source.index,Qe=wr.target.index;$t[ur]||($t[ur]=[]),$t[Qe]||($t[Qe]=[]),$t[ur].indexOf(Qe)===-1&&$t[ur].push(Qe)}var Et=i($t);Et.sort(function(bt,yt){return bt.length-yt.length});var er={};for(sr=0;sr<Et.length;sr++){var Ut=Et[sr],Ft=Ut.slice(-2);er[Ft[0]]||(er[Ft[0]]={}),er[Ft[0]][Ft[1]]=!0}st.links.forEach(function(bt){var yt=bt.target.index,Yt=bt.source.index;yt===Yt||er[Yt]&&er[Yt][yt]?(bt.circular=!0,bt.circularLinkID=Nt,Nt=Nt+1):bt.circular=!1})}else st.links.forEach(function(bt){bt.source[Gt]<bt.target[Gt]?bt.circular=!1:(bt.circular=!0,bt.circularLinkID=Nt,Nt=Nt+1)})}function O(st,lt){var Gt=0,Nt=0;st.links.forEach(function($t){$t.circular&&($t.source.circularLinkType||$t.target.circularLinkType?$t.circularLinkType=$t.source.circularLinkType?$t.source.circularLinkType:$t.target.circularLinkType:$t.circularLinkType=Gt<Nt?"top":"bottom",$t.circularLinkType=="top"?Gt=Gt+1:Nt=Nt+1,st.nodes.forEach(function(sr){(k(sr,lt)==k($t.source,lt)||k(sr,lt)==k($t.target,lt))&&(sr.circularLinkType=$t.circularLinkType)}))}),st.links.forEach(function($t){$t.circular&&($t.source.circularLinkType==$t.target.circularLinkType&&($t.circularLinkType=$t.source.circularLinkType),pt($t,lt)&&($t.circularLinkType=$t.source.circularLinkType))})}function V(st){var lt=Math.abs(st.y1-st.y0),Gt=Math.abs(st.target.x0-st.source.x1);return Math.atan(Gt/lt)}function G(st,lt){return st.source.column<lt.target.column?!1:!(st.target.column>lt.source.column)}function Z(st,lt){var Gt=0;st.sourceLinks.forEach(function($t){Gt=$t.circular&&!pt($t,lt)?Gt+1:Gt});var Nt=0;return st.targetLinks.forEach(function($t){Nt=$t.circular&&!pt($t,lt)?Nt+1:Nt}),Gt+Nt}function H(st){var lt=st.source.sourceLinks,Gt=0;lt.forEach(function(sr){Gt=sr.circular?Gt+1:Gt});var Nt=st.target.targetLinks,$t=0;return Nt.forEach(function(sr){$t=sr.circular?$t+1:$t}),!(Gt>1||$t>1)}function N(st,lt,Gt){return st.sort(oe),st.forEach(function(Nt,$t){var sr=0;if(pt(Nt,Gt)&&H(Nt))Nt.circularPathData.verticalBuffer=sr+Nt.width/2;else{var wr=0;for(wr;wr<$t;wr++)if(G(st[$t],st[wr])){var ur=st[wr].circularPathData.verticalBuffer+st[wr].width/2+lt;sr=ur>sr?ur:sr}Nt.circularPathData.verticalBuffer=sr+Nt.width/2}}),st}function j(st,lt,Gt,Nt){var $t=5,sr=t.min(st.links,function(Qe){return Qe.source.y0});st.links.forEach(function(Qe){Qe.circular&&(Qe.circularPathData={})});var wr=st.links.filter(function(Qe){return Qe.circularLinkType=="top"});N(wr,lt,Nt);var ur=st.links.filter(function(Qe){return Qe.circularLinkType=="bottom"});N(ur,lt,Nt),st.links.forEach(function(Qe){if(Qe.circular){if(Qe.circularPathData.arcRadius=Qe.width+g,Qe.circularPathData.leftNodeBuffer=$t,Qe.circularPathData.rightNodeBuffer=$t,Qe.circularPathData.sourceWidth=Qe.source.x1-Qe.source.x0,Qe.circularPathData.sourceX=Qe.source.x0+Qe.circularPathData.sourceWidth,Qe.circularPathData.targetX=Qe.target.x0,Qe.circularPathData.sourceY=Qe.y0,Qe.circularPathData.targetY=Qe.y1,pt(Qe,Nt)&&H(Qe))Qe.circularPathData.leftSmallArcRadius=g+Qe.width/2,Qe.circularPathData.leftLargeArcRadius=g+Qe.width/2,Qe.circularPathData.rightSmallArcRadius=g+Qe.width/2,Qe.circularPathData.rightLargeArcRadius=g+Qe.width/2,Qe.circularLinkType=="bottom"?(Qe.circularPathData.verticalFullExtent=Qe.source.y1+M+Qe.circularPathData.verticalBuffer,Qe.circularPathData.verticalLeftInnerExtent=Qe.circularPathData.verticalFullExtent-Qe.circularPathData.leftLargeArcRadius,Qe.circularPathData.verticalRightInnerExtent=Qe.circularPathData.verticalFullExtent-Qe.circularPathData.rightLargeArcRadius):(Qe.circularPathData.verticalFullExtent=Qe.source.y0-M-Qe.circularPathData.verticalBuffer,Qe.circularPathData.verticalLeftInnerExtent=Qe.circularPathData.verticalFullExtent+Qe.circularPathData.leftLargeArcRadius,Qe.circularPathData.verticalRightInnerExtent=Qe.circularPathData.verticalFullExtent+Qe.circularPathData.rightLargeArcRadius);else{var Et=Qe.source.column,er=Qe.circularLinkType,Ut=st.links.filter(function(yt){return yt.source.column==Et&&yt.circularLinkType==er});Qe.circularLinkType=="bottom"?Ut.sort(Me):Ut.sort(_e);var Ft=0;Ut.forEach(function(yt,Yt){yt.circularLinkID==Qe.circularLinkID&&(Qe.circularPathData.leftSmallArcRadius=g+Qe.width/2+Ft,Qe.circularPathData.leftLargeArcRadius=g+Qe.width/2+Yt*lt+Ft),Ft=Ft+yt.width}),Et=Qe.target.column,Ut=st.links.filter(function(yt){return yt.target.column==Et&&yt.circularLinkType==er}),Qe.circularLinkType=="bottom"?Ut.sort(me):Ut.sort(ke),Ft=0,Ut.forEach(function(yt,Yt){yt.circularLinkID==Qe.circularLinkID&&(Qe.circularPathData.rightSmallArcRadius=g+Qe.width/2+Ft,Qe.circularPathData.rightLargeArcRadius=g+Qe.width/2+Yt*lt+Ft),Ft=Ft+yt.width}),Qe.circularLinkType=="bottom"?(Qe.circularPathData.verticalFullExtent=Math.max(Gt,Qe.source.y1,Qe.target.y1)+M+Qe.circularPathData.verticalBuffer,Qe.circularPathData.verticalLeftInnerExtent=Qe.circularPathData.verticalFullExtent-Qe.circularPathData.leftLargeArcRadius,Qe.circularPathData.verticalRightInnerExtent=Qe.circularPathData.verticalFullExtent-Qe.circularPathData.rightLargeArcRadius):(Qe.circularPathData.verticalFullExtent=sr-M-Qe.circularPathData.verticalBuffer,Qe.circularPathData.verticalLeftInnerExtent=Qe.circularPathData.verticalFullExtent+Qe.circularPathData.leftLargeArcRadius,Qe.circularPathData.verticalRightInnerExtent=Qe.circularPathData.verticalFullExtent+Qe.circularPathData.rightLargeArcRadius)}Qe.circularPathData.leftInnerExtent=Qe.circularPathData.sourceX+Qe.circularPathData.leftNodeBuffer,Qe.circularPathData.rightInnerExtent=Qe.circularPathData.targetX-Qe.circularPathData.rightNodeBuffer,Qe.circularPathData.leftFullExtent=Qe.circularPathData.sourceX+Qe.circularPathData.leftLargeArcRadius+Qe.circularPathData.leftNodeBuffer,Qe.circularPathData.rightFullExtent=Qe.circularPathData.targetX-Qe.circularPathData.rightLargeArcRadius-Qe.circularPathData.rightNodeBuffer}if(Qe.circular)Qe.path=re(Qe);else{var bt=n.linkHorizontal().source(function(yt){var Yt=yt.source.x0+(yt.source.x1-yt.source.x0),lr=yt.y0;return[Yt,lr]}).target(function(yt){var Yt=yt.target.x0,lr=yt.y1;return[Yt,lr]});Qe.path=bt(Qe)}})}function re(st){var lt="";return st.circularLinkType=="top"?lt="M"+st.circularPathData.sourceX+" "+st.circularPathData.sourceY+" L"+st.circularPathData.leftInnerExtent+" "+st.circularPathData.sourceY+" A"+st.circularPathData.leftLargeArcRadius+" "+st.circularPathData.leftSmallArcRadius+" 0 0 0 "+st.circularPathData.leftFullExtent+" "+(st.circularPathData.sourceY-st.circularPathData.leftSmallArcRadius)+" L"+st.circularPathData.leftFullExtent+" "+st.circularPathData.verticalLeftInnerExtent+" A"+st.circularPathData.leftLargeArcRadius+" "+st.circularPathData.leftLargeArcRadius+" 0 0 0 "+st.circularPathData.leftInnerExtent+" "+st.circularPathData.verticalFullExtent+" L"+st.circularPathData.rightInnerExtent+" "+st.circularPathData.verticalFullExtent+" A"+st.circularPathData.rightLargeArcRadius+" "+st.circularPathData.rightLargeArcRadius+" 0 0 0 "+st.circularPathData.rightFullExtent+" "+st.circularPathData.verticalRightInnerExtent+" L"+st.circularPathData.rightFullExtent+" "+(st.circularPathData.targetY-st.circularPathData.rightSmallArcRadius)+" A"+st.circularPathData.rightLargeArcRadius+" "+st.circularPathData.rightSmallArcRadius+" 0 0 0 "+st.circularPathData.rightInnerExtent+" "+st.circularPathData.targetY+" L"+st.circularPathData.targetX+" "+st.circularPathData.targetY:lt="M"+st.circularPathData.sourceX+" "+st.circularPathData.sourceY+" L"+st.circularPathData.leftInnerExtent+" "+st.circularPathData.sourceY+" A"+st.circularPathData.leftLargeArcRadius+" "+st.circularPathData.leftSmallArcRadius+" 0 0 1 "+st.circularPathData.leftFullExtent+" "+(st.circularPathData.sourceY+st.circularPathData.leftSmallArcRadius)+" L"+st.circularPathData.leftFullExtent+" "+st.circularPathData.verticalLeftInnerExtent+" A"+st.circularPathData.leftLargeArcRadius+" "+st.circularPathData.leftLargeArcRadius+" 0 0 1 "+st.circularPathData.leftInnerExtent+" "+st.circularPathData.verticalFullExtent+" L"+st.circularPathData.rightInnerExtent+" "+st.circularPathData.verticalFullExtent+" A"+st.circularPathData.rightLargeArcRadius+" "+st.circularPathData.rightLargeArcRadius+" 0 0 1 "+st.circularPathData.rightFullExtent+" "+st.circularPathData.verticalRightInnerExtent+" L"+st.circularPathData.rightFullExtent+" "+(st.circularPathData.targetY+st.circularPathData.rightSmallArcRadius)+" A"+st.circularPathData.rightLargeArcRadius+" "+st.circularPathData.rightSmallArcRadius+" 0 0 1 "+st.circularPathData.rightInnerExtent+" "+st.circularPathData.targetY+" L"+st.circularPathData.targetX+" "+st.circularPathData.targetY,lt}function oe(st,lt){return ie(st)==ie(lt)?st.circularLinkType=="bottom"?Me(st,lt):_e(st,lt):ie(lt)-ie(st)}function _e(st,lt){return st.y0-lt.y0}function Me(st,lt){return lt.y0-st.y0}function ke(st,lt){return st.y1-lt.y1}function me(st,lt){return lt.y1-st.y1}function ie(st){return st.target.column-st.source.column}function Se(st){return st.target.x0-st.source.x1}function Le(st,lt){var Gt=V(st),Nt=Se(lt)/Math.tan(Gt),$t=ct(st)=="up"?st.y1+Nt:st.y1-Nt;return $t}function Ae(st,lt){var Gt=V(st),Nt=Se(lt)/Math.tan(Gt),$t=ct(st)=="up"?st.y1-Nt:st.y1+Nt;return $t}function De(st,lt,Gt,Nt){st.links.forEach(function($t){if(!$t.circular&&$t.target.column-$t.source.column>1){var sr=$t.source.column+1,wr=$t.target.column-1,ur=1,Qe=wr-sr+1;for(ur=1;sr<=wr;sr++,ur++)st.nodes.forEach(function(Et){if(Et.column==sr){var er=ur/(Qe+1),Ut=Math.pow(1-er,3),Ft=3*er*Math.pow(1-er,2),bt=3*Math.pow(er,2)*(1-er),yt=Math.pow(er,3),Yt=Ut*$t.y0+Ft*$t.y0+bt*$t.y1+yt*$t.y1,lr=Yt-$t.width/2,Tr=Yt+$t.width/2,Rr;lr>Et.y0&&lr<Et.y1?(Rr=Et.y1-lr+10,Rr=Et.circularLinkType=="bottom"?Rr:-Rr,Et=ge(Et,Rr,lt,Gt),st.nodes.forEach(function(ei){k(ei,Nt)==k(Et,Nt)||ei.column!=Et.column||Pe(Et,ei)&&ge(ei,Rr,lt,Gt)})):Tr>Et.y0&&Tr<Et.y1?(Rr=Tr-Et.y0+10,Et=ge(Et,Rr,lt,Gt),st.nodes.forEach(function(ei){k(ei,Nt)==k(Et,Nt)||ei.column!=Et.column||ei.y0<Et.y1&&ei.y1>Et.y1&&ge(ei,Rr,lt,Gt)})):lr<Et.y0&&Tr>Et.y1&&(Rr=Tr-Et.y0+10,Et=ge(Et,Rr,lt,Gt),st.nodes.forEach(function(ei){k(ei,Nt)==k(Et,Nt)||ei.column!=Et.column||ei.y0<Et.y1&&ei.y1>Et.y1&&ge(ei,Rr,lt,Gt)}))}})}})}function Pe(st,lt){return st.y0>lt.y0&&st.y0<lt.y1||st.y1>lt.y0&&st.y1<lt.y1?!0:st.y0<lt.y0&&st.y1>lt.y1}function ge(st,lt,Gt,Nt){return st.y0+lt>=Gt&&st.y1+lt<=Nt&&(st.y0=st.y0+lt,st.y1=st.y1+lt,st.targetLinks.forEach(function($t){$t.y1=$t.y1+lt}),st.sourceLinks.forEach(function($t){$t.y0=$t.y0+lt})),st}function Fe(st,lt,Gt,Nt){st.nodes.forEach(function($t){Nt&&$t.y+($t.y1-$t.y0)>lt&&($t.y=$t.y-($t.y+($t.y1-$t.y0)-lt));var sr=st.links.filter(function(Qe){return k(Qe.source,Gt)==k($t,Gt)}),wr=sr.length;wr>1&&sr.sort(function(Qe,Et){if(!Qe.circular&&!Et.circular){if(Qe.target.column==Et.target.column)return Qe.y1-Et.y1;if(Ze(Qe,Et)){if(Qe.target.column>Et.target.column){var er=Ae(Et,Qe);return Qe.y1-er}if(Et.target.column>Qe.target.column){var Ut=Ae(Qe,Et);return Ut-Et.y1}}else return Qe.y1-Et.y1}if(Qe.circular&&!Et.circular)return Qe.circularLinkType=="top"?-1:1;if(Et.circular&&!Qe.circular)return Et.circularLinkType=="top"?1:-1;if(Qe.circular&&Et.circular)return Qe.circularLinkType===Et.circularLinkType&&Qe.circularLinkType=="top"?Qe.target.column===Et.target.column?Qe.target.y1-Et.target.y1:Et.target.column-Qe.target.column:Qe.circularLinkType===Et.circularLinkType&&Qe.circularLinkType=="bottom"?Qe.target.column===Et.target.column?Et.target.y1-Qe.target.y1:Qe.target.column-Et.target.column:Qe.circularLinkType=="top"?-1:1});var ur=$t.y0;sr.forEach(function(Qe){Qe.y0=ur+Qe.width/2,ur=ur+Qe.width}),sr.forEach(function(Qe,Et){if(Qe.circularLinkType=="bottom"){var er=Et+1,Ut=0;for(er;er<wr;er++)Ut=Ut+sr[er].width;Qe.y0=$t.y1-Ut-Qe.width/2}})})}function ce(st,lt,Gt){st.nodes.forEach(function(Nt){var $t=st.links.filter(function(ur){return k(ur.target,Gt)==k(Nt,Gt)}),sr=$t.length;sr>1&&$t.sort(function(ur,Qe){if(!ur.circular&&!Qe.circular){if(ur.source.column==Qe.source.column)return ur.y0-Qe.y0;if(Ze(ur,Qe)){if(Qe.source.column<ur.source.column){var Et=Le(Qe,ur);return ur.y0-Et}if(ur.source.column<Qe.source.column){var er=Le(ur,Qe);return er-Qe.y0}}else return ur.y0-Qe.y0}if(ur.circular&&!Qe.circular)return ur.circularLinkType=="top"?-1:1;if(Qe.circular&&!ur.circular)return Qe.circularLinkType=="top"?1:-1;if(ur.circular&&Qe.circular)return ur.circularLinkType===Qe.circularLinkType&&ur.circularLinkType=="top"?ur.source.column===Qe.source.column?ur.source.y1-Qe.source.y1:ur.source.column-Qe.source.column:ur.circularLinkType===Qe.circularLinkType&&ur.circularLinkType=="bottom"?ur.source.column===Qe.source.column?ur.source.y1-Qe.source.y1:Qe.source.column-ur.source.column:ur.circularLinkType=="top"?-1:1});var wr=Nt.y0;$t.forEach(function(ur){ur.y1=wr+ur.width/2,wr=wr+ur.width}),$t.forEach(function(ur,Qe){if(ur.circularLinkType=="bottom"){var Et=Qe+1,er=0;for(Et;Et<sr;Et++)er=er+$t[Et].width;ur.y1=Nt.y1-er-ur.width/2}})})}function Ze(st,lt){return ct(st)==ct(lt)}function ct(st){return st.y0-st.y1>0?"up":"down"}function pt(st,lt){return k(st.source,lt)==k(st.target,lt)}function Wt(st,lt,Gt){var Nt=st.nodes,$t=st.links,sr=!1,wr=!1;if($t.forEach(function(Ft){Ft.circularLinkType=="top"?sr=!0:Ft.circularLinkType=="bottom"&&(wr=!0)}),sr==!1||wr==!1){var ur=t.min(Nt,function(Ft){return Ft.y0}),Qe=t.max(Nt,function(Ft){return Ft.y1}),Et=Qe-ur,er=Gt-lt,Ut=er/Et;Nt.forEach(function(Ft){var bt=(Ft.y1-Ft.y0)*Ut;Ft.y0=(Ft.y0-ur)*Ut,Ft.y1=Ft.y0+bt}),$t.forEach(function(Ft){Ft.y0=(Ft.y0-ur)*Ut,Ft.y1=(Ft.y1-ur)*Ut,Ft.width=Ft.width*Ut})}}e.sankeyCircular=T,e.sankeyCenter=u,e.sankeyLeft=o,e.sankeyRight=s,e.sankeyJustify=l,Object.defineProperty(e,"__esModule",{value:!0})})});var HJ=ye((abr,CWe)=>{"use strict";CWe.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 UWe=ye((obr,NWe)=>{"use strict";var kWe=yWe(),XXt=(R2(),B1(I2)).interpolateNumber,L5=Oa(),KC=TWe(),ZXt=EWe(),Nu=HJ(),P5=cd(),aw=Ca(),YXt=So(),p1=Dr(),XJ=p1.strTranslate,KXt=p1.strRotate,ZJ=Km(),JC=ZJ.keyFun,T7=ZJ.repeat,FWe=ZJ.unwrap,LWe=iu(),JXt=qa(),zWe=Kh(),$Xt=zWe.CAP_SHIFT,QXt=zWe.LINE_SPACING,eZt=3;function tZt(e,t,r){var n=FWe(t),i=n.trace,a=i.domain,o=i.orientation==="h",s=i.node.pad,l=i.node.thickness,u={justify:KC.sankeyJustify,left:KC.sankeyLeft,right:KC.sankeyRight,center:KC.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=ZXt.sankeyCircular().circularLinkGap(0):x=KC.sankey(),x.iterations(Nu.sankeyIterations).size(o?[c,f]:[f,c]).nodeWidth(l).nodePadding(s).nodeId(function(V){return V.pointNumber}).nodeAlign(u).nodes(h).links(d);var b=x();x.nodePadding()<s&&p1.warn("node.pad was reduced to ",x.nodePadding()," to fit within the figure.");var p,C,E;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 k={pointNumber:parseInt(A),x0:_.x0,x1:_.x1,y0:_.y0,y1:_.y1,partOfGroup:!0,sourceLinks:[],targetLinks:[]};b.nodes.unshift(k),_.childrenNodes.unshift(k)}}function M(){for(p=0;p<b.nodes.length;p++){var V=b.nodes[p],G={},Z,H;for(C=0;C<V.targetLinks.length;C++)H=V.targetLinks[C],Z=H.source.pointNumber+":"+H.target.pointNumber,G.hasOwnProperty(Z)||(G[Z]=[]),G[Z].push(H);var N=Object.keys(G);for(C=0;C<N.length;C++){Z=N[C];var j=G[Z],re=0,oe={};for(E=0;E<j.length;E++)H=j[E],oe[H.label]||(oe[H.label]=0),oe[H.label]+=H.value,re+=H.value;for(E=0;E<j.length;E++)H=j[E],H.flow={value:re,labelConcentration:oe[H.label]/re,concentration:H.value/re,links:j},H.concentrationscale&&(H.color=P5(H.concentrationscale(H.flow.labelConcentration)))}var _e=0;for(C=0;C<V.sourceLinks.length;C++)_e+=V.sourceLinks[C].value;for(C=0;C<V.sourceLinks.length;C++)H=V.sourceLinks[C],H.concentrationOut=H.value/_e;var Me=0;for(C=0;C<V.targetLinks.length;C++)Me+=V.targetLinks[C].value;for(C=0;C<V.targetLinks.length;C++)H=V.targetLinks[C],H.concenrationIn=H.value/Me}}M();function g(V){V.forEach(function(G){var Z,H,N=0,j=G.length,re;for(G.sort(function(oe,_e){return oe.y0-_e.y0}),re=0;re<j;++re)Z=G[re],Z.y0>=N||(H=N-Z.y0,H>1e-6&&(Z.y0+=H,Z.y1+=H)),N=Z.y1+s})}function P(V){var G=V.map(function(_e,Me){return{x0:_e.x0,index:Me}}).sort(function(_e,Me){return _e.x0-Me.x0}),Z=[],H=-1,N,j=-1/0,re;for(p=0;p<G.length;p++){var oe=V[G[p].index];oe.x0>j+l&&(H+=1,N=oe.x0),j=oe.x0,Z[H]||(Z[H]=[]),Z[H].push(oe),re=N-oe.x0,oe.x0+=re,oe.x1+=re}return Z}if(i.node.x.length&&i.node.y.length){for(p=0;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 z=b.nodes[p].y1-b.nodes[p].y0;b.nodes[p].y0=T[1]-z/2,b.nodes[p].y1=T[1]+z/2}if(i.arrangement==="snap"){h=b.nodes;var O=P(h);g(O)}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 rZt(e,t,r){var n=P5(t.color),i=P5(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:YJ,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 iZt(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 YJ(){var e=.5;function t(r){var n=r.linkArrowLength;if(r.link.circular)return iZt(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=XXt(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 nZt(e,t){var r=P5(t.color),n=Nu.nodePadAcross,i=e.nodePad/2;t.dx=t.x1-t.x0,t.dy=t.y1-t.y0;var a=t.dx,o=Math.max(.5,t.dy),s="node_"+t.pointNumber;return t.group&&(s=p1.randstr()),t.trace=e.trace,t.curveNumber=e.trace.index,{index:t.pointNumber,key:s,partOfGroup:t.partOfGroup||!1,group:t.group,traceId:e.key,trace:e.trace,node:t,nodePad:e.nodePad,nodeLineColor:e.nodeLineColor,nodeLineWidth:e.nodeLineWidth,textFont:e.textFont,size:e.horizontal?e.height:e.width,visibleWidth:Math.ceil(a),visibleHeight:o,zoneX:-n,zoneY:-i,zoneWidth:a+2*n,zoneHeight:o+2*i,labelY:e.horizontal?t.dy/2+1:t.dx/2+1,left:t.originalLayer===1,sizeAcross:e.width,forceLayouts:e.forceLayouts,horizontal:e.horizontal,darkBackground:r.getBrightness()<=128,tinyColorHue: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 WJ(e){e.attr("transform",function(t){return XJ(t.node.x0.toFixed(3),t.node.y0.toFixed(3))})}function aZt(e){e.call(WJ)}function OWe(e,t){e.call(aZt),t.attr("d",YJ())}function PWe(e){e.attr("width",function(t){return t.node.x1-t.node.x0}).attr("height",function(t){return t.visibleHeight})}function jJ(e){return e.link.width>1||e.linkLineWidth>0}function IWe(e){var t=XJ(e.translateX,e.translateY);return t+(e.horizontal?"matrix(1 0 0 1 0 0)":"matrix(0 1 1 0 0 0)")}function RWe(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 oZt(e,t,r,n){var i=L5.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,DWe(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):sZt(e,o,a,n),lZt(e,t,a,o,n)}}).on("drag",function(a){if(a.arrangement!=="fixed"){var o=L5.event.x,s=L5.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),DWe(a.node),a.arrangement!=="snap"&&(a.sankey.update(a.graph),OWe(e.filter(BWe(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"&&qWe(a,n)}});e.on(".drag",null).call(i)}function sZt(e,t,r,n){fZt(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]=kWe.forceSimulation(i).alphaDecay(0).force("collide",kWe.forceCollide().radius(function(a){return a.dy/2+r.nodePad/2}).strength(1).iterations(Nu.forceIterations)).force("constrain",uZt(e,t,i,r,n)).stop()}function lZt(e,t,r,n,i){window.requestAnimationFrame(function a(){var o;for(o=0;o<Nu.forceTicksPerFrame;o++)r.forceLayouts[n].tick();var s=r.graph.nodes;if(hZt(s),r.sankey.update(r.graph),OWe(e.filter(BWe(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,qWe(r,i)}})}function uZt(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)/Nu.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 qWe(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)}JXt.call("_guiRestyle",t,{"node.x":[r],"node.y":[n]},e.trace.index).then(function(){t._fullLayout._dragCover&&t._fullLayout._dragCover.remove()})}function cZt(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 DWe(e){e.lastDraggedX=e.x0+e.dx/2,e.lastDraggedY=e.y0+e.dy/2}function BWe(e){return function(t){return t.node.originalX===e.node.originalX}}function fZt(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 hZt(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}NWe.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 FWe(b).trace.visible}).map(tZt.bind(null,n)),u=t.selectAll("."+Nu.cn.sankey).data(l,JC);u.exit().remove(),u.enter().append("g").classed(Nu.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",IWe),u.each(function(b,p){e._fullData[p]._sankey=b;var C="bgsankey-"+b.trace.uid+"-"+p;p1.ensureSingle(e._fullLayout._draggers,"rect",C),e._fullData[p]._bgRect=L5.select("."+C),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(Nu.ease).duration(Nu.duration).attr("transform",IWe);var c=u.selectAll("."+Nu.cn.sankeyLinks).data(T7,JC);c.enter().append("g").classed(Nu.cn.sankeyLinks,!0).style("fill","none");var f=c.selectAll("."+Nu.cn.sankeyLink).data(function(b){var p=b.graph.links;return p.filter(function(C){return C.value}).map(rZt.bind(null,b))},JC);f.enter().append("path").classed(Nu.cn.sankeyLink,!0).call(RWe,u,i.linkEvents),f.style("stroke",function(b){return jJ(b)?aw.tinyRGB(P5(b.linkLineColor)):b.tinyColorHue}).style("stroke-opacity",function(b){return jJ(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 jJ(b)?b.linkLineWidth:1}).attr("d",YJ()),f.style("opacity",function(){return e._context.staticPlot||o||s?1:0}).transition().ease(Nu.ease).duration(Nu.duration).style("opacity",1),f.exit().transition().ease(Nu.ease).duration(Nu.duration).style("opacity",0).remove();var h=u.selectAll("."+Nu.cn.sankeyNodeSet).data(T7,JC);h.enter().append("g").classed(Nu.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("."+Nu.cn.sankeyNode).data(function(b){var p=b.graph.nodes;return cZt(p),p.map(nZt.bind(null,b))},JC);d.enter().append("g").classed(Nu.cn.sankeyNode,!0).call(WJ).style("opacity",function(b){return(e._context.staticPlot||o)&&!b.partOfGroup?1:0}),d.call(RWe,u,i.nodeEvents).call(oZt,f,i,e),d.transition().ease(Nu.ease).duration(Nu.duration).call(WJ).style("opacity",function(b){return b.partOfGroup?0:1}),d.exit().transition().ease(Nu.ease).duration(Nu.duration).style("opacity",0).remove();var v=d.selectAll("."+Nu.cn.nodeRect).data(T7);v.enter().append("rect").classed(Nu.cn.nodeRect,!0).call(PWe),v.style("stroke-width",function(b){return b.nodeLineWidth}).style("stroke",function(b){return aw.tinyRGB(P5(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(Nu.ease).duration(Nu.duration).call(PWe);var x=d.selectAll("."+Nu.cn.nodeLabel).data(T7);x.enter().append("text").classed(Nu.cn.nodeLabel,!0).style("cursor","default"),x.attr("data-notex",1).text(function(b){return b.node.label}).each(function(b){var p=L5.select(this);YXt.font(p,b.textFont),LWe.convertToTspans(p,e)}).attr("text-anchor",function(b){return b.horizontal&&b.left?"end":"start"}).attr("transform",function(b){var p=L5.select(this),C=LWe.lineCount(p),E=b.textFont.size*((C-1)*QXt-$Xt),A=b.nodeLineWidth/2+eZt,L=((b.horizontal?b.visibleHeight:b.visibleWidth)-E)/2;b.horizontal&&(b.left?A=-A:A+=b.visibleWidth);var _=b.horizontal?"":"scale(-1,1)"+KXt(90);return XJ(b.horizontal?A:L,b.horizontal?L:A)+_}),x.transition().ease(Nu.ease).duration(Nu.duration)}});var $J=ye((sbr,KWe)=>{"use strict";var Xv=Oa(),JJ=Dr(),A7=JJ.numberFormat,dZt=UWe(),I5=vf(),vZt=Ca(),Sx=HJ().cn,$C=JJ._;function VWe(e){return e!==""}function R5(e,t){return e.filter(function(r){return r.key===t.traceId})}function GWe(e,t){Xv.select(e).select("path").style("fill-opacity",t),Xv.select(e).select("rect").style("fill-opacity",t)}function HWe(e){Xv.select(e).select("text.name").style("fill","black")}function jWe(e){return function(t){return e.node.sourceLinks.indexOf(t.link)!==-1||e.node.targetLinks.indexOf(t.link)!==-1}}function WWe(e){return function(t){return t.node.sourceLinks.indexOf(e.link)!==-1||t.node.targetLinks.indexOf(e.link)!==-1}}function XWe(e,t,r){t&&r&&R5(r,t).selectAll("."+Sx.sankeyLink).filter(jWe(t)).call(ZWe.bind(0,t,r,!1))}function KJ(e,t,r){t&&r&&R5(r,t).selectAll("."+Sx.sankeyLink).filter(jWe(t)).call(YWe.bind(0,t,r,!1))}function ZWe(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!==""&&R5(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&&R5(t,e).selectAll("."+Sx.sankeyNode).filter(WWe(e)).call(XWe)}function YWe(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!==""&&R5(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&&R5(t,e).selectAll(Sx.sankeyNode).filter(WWe(e)).call(KJ)}function Ef(e,t){var r=e.hoverlabel||{},n=JJ.nestedProperty(r,t).get();return Array.isArray(n)?!1:n}KWe.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 k=_.link;k.originalEvent=Xv.event,t._hoverdata=[k],I5.click(t,{target:!0})},u=function(L,_,k){t._fullLayout.hovermode!==!1&&(Xv.select(L).call(ZWe.bind(0,_,k,!0)),_.link.trace.link.hoverinfo!=="skip"&&(_.link.fullData=_.link.trace,t.emit("plotly_hover",{event:Xv.event,points:[_.link]})))},c=$C(t,"source:")+" ",f=$C(t,"target:")+" ",h=$C(t,"concentration:")+" ",d=$C(t,"incoming flow count:")+" ",v=$C(t,"outgoing flow count:")+" ",x=function(L,_){if(t._fullLayout.hovermode===!1)return;var k=_.link.trace.link;if(k.hoverinfo==="none"||k.hoverinfo==="skip")return;var M=[];function g(Z){var H,N;Z.circular?(H=(Z.circularPathData.leftInnerExtent+Z.circularPathData.rightInnerExtent)/2,N=Z.circularPathData.verticalFullExtent):(H=(Z.source.x1+Z.target.x0)/2,N=(Z.y0+Z.y1)/2);var j=[H,N];return Z.trace.orientation==="v"&&j.reverse(),j[0]+=_.parent.translateX,j[1]+=_.parent.translateY,j}for(var P=0,T=0;T<_.flow.links.length;T++){var z=_.flow.links[T];if(!(t._fullLayout.hovermode==="closest"&&_.link.pointNumber!==z.pointNumber)){_.link.pointNumber===z.pointNumber&&(P=T),z.fullData=z.trace,k=_.link.trace.link;var O=g(z),V={valueLabel:A7(_.valueFormat)(z.value)+_.valueSuffix};M.push({x:O[0],y:O[1],name:V.valueLabel,text:[z.label||"",c+z.source.label,f+z.target.label,z.concentrationscale?h+A7("%0.2f")(z.flow.labelConcentration):""].filter(VWe).join("<br>"),color:Ef(k,"bgcolor")||vZt.addOpacity(z.color,1),borderColor:Ef(k,"bordercolor"),fontFamily:Ef(k,"font.family"),fontSize:Ef(k,"font.size"),fontColor:Ef(k,"font.color"),fontWeight:Ef(k,"font.weight"),fontStyle:Ef(k,"font.style"),fontVariant:Ef(k,"font.variant"),fontTextcase:Ef(k,"font.textcase"),fontLineposition:Ef(k,"font.lineposition"),fontShadow:Ef(k,"font.shadow"),nameLength:Ef(k,"namelength"),textAlign:Ef(k,"align"),idealAlign:Xv.event.x<O[0]?"right":"left",hovertemplate:k.hovertemplate,hovertemplateLabels:V,eventData:[z]})}}var G=I5.loneHover(M,{container:n._hoverlayer.node(),outerContainer:n._paper.node(),gd:t,anchorIndex:P});G.each(function(){var Z=this;_.link.concentrationscale||GWe(Z,.65),HWe(Z)})},b=function(L,_,k){t._fullLayout.hovermode!==!1&&(Xv.select(L).call(YWe.bind(0,_,k,!0)),_.link.trace.link.hoverinfo!=="skip"&&(_.link.fullData=_.link.trace,t.emit("plotly_unhover",{event:Xv.event,points:[_.link]})),I5.loneUnhover(n._hoverlayer.node()))},p=function(L,_,k){var M=_.node;M.originalEvent=Xv.event,t._hoverdata=[M],Xv.select(L).call(KJ,_,k),I5.click(t,{target:!0})},C=function(L,_,k){t._fullLayout.hovermode!==!1&&(Xv.select(L).call(XWe,_,k),_.node.trace.node.hoverinfo!=="skip"&&(_.node.fullData=_.node.trace,t.emit("plotly_hover",{event:Xv.event,points:[_.node]})))},E=function(L,_){if(t._fullLayout.hovermode!==!1){var k=_.node.trace.node;if(!(k.hoverinfo==="none"||k.hoverinfo==="skip")){var M=Xv.select(L).select("."+Sx.nodeRect),g=t._fullLayout._paperdiv.node().getBoundingClientRect(),P=M.node().getBoundingClientRect(),T=P.left-2-g.left,z=P.right+2-g.left,O=P.top+P.height/4-g.top,V={valueLabel:A7(_.valueFormat)(_.node.value)+_.valueSuffix};_.node.fullData=_.node.trace,t._fullLayout._calcInverseTransform(t);var G=t._fullLayout._invScaleX,Z=t._fullLayout._invScaleY,H=I5.loneHover({x0:G*T,x1:G*z,y:Z*O,name:A7(_.valueFormat)(_.node.value)+_.valueSuffix,text:[_.node.label,d+_.node.targetLinks.length,v+_.node.sourceLinks.length].filter(VWe).join("<br>"),color:Ef(k,"bgcolor")||_.tinyColorHue,borderColor:Ef(k,"bordercolor"),fontFamily:Ef(k,"font.family"),fontSize:Ef(k,"font.size"),fontColor:Ef(k,"font.color"),fontWeight:Ef(k,"font.weight"),fontStyle:Ef(k,"font.style"),fontVariant:Ef(k,"font.variant"),fontTextcase:Ef(k,"font.textcase"),fontLineposition:Ef(k,"font.lineposition"),fontShadow:Ef(k,"font.shadow"),nameLength:Ef(k,"namelength"),textAlign:Ef(k,"align"),idealAlign:"left",hovertemplate:k.hovertemplate,hovertemplateLabels:V,eventData:[_.node]},{container:n._hoverlayer.node(),outerContainer:n._paper.node(),gd:t});GWe(H,.85),HWe(H)}}},A=function(L,_,k){t._fullLayout.hovermode!==!1&&(Xv.select(L).call(KJ,_,k),_.node.trace.node.hoverinfo!=="skip"&&(_.node.fullData=_.node.trace,t.emit("plotly_unhover",{event:Xv.event,points:[_.node]})),I5.loneUnhover(n._hoverlayer.node()))};dZt(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:C,follow:E,unhover:A,select:p}})}});var JWe=ye(ow=>{"use strict";var pZt=mc().overrideAll,gZt=Id().getModuleCalcData,mZt=$J(),yZt=N1(),_Zt=Tg(),xZt=gv(),bZt=zf().prepSelect,QJ=Dr(),wZt=qa(),S7="sankey";ow.name=S7;ow.baseLayoutAttrOverrides=pZt({hoverlabel:yZt.hoverlabel},"plot","nested");ow.plot=function(e){var t=gZt(e.calcdata,S7)[0];mZt(e,t),ow.updateFx(e)};ow.clean=function(e,t,r,n){var i=n._has&&n._has(S7),a=t._has&&t._has(S7);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++)TZt(e,t)};function TZt(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")){_Zt(o,a);var s={_id:"x",c2p:QJ.identity,_offset:r._sankey.translateX,_length:r._sankey.width},l={_id:"y",c2p:QJ.identity,_offset:r._sankey.translateY,_length:r._sankey.height},u={gd:e,element:o.node(),plotinfo:{id:t,xaxis:s,yaxis:l,fillRangeItems:QJ.noop},subplot:t,xaxes:[s],yaxes:[l],doneFnCompleted:function(c){var f=e._fullData[t],h,d=f.node.groups.slice(),v=[];function x(E){for(var A=f._sankey.graph.nodes,L=0;L<A.length;L++)if(A[L].pointNumber===E)return A[L]}for(var b=0;b<c.length;b++){var p=x(c[b].pointNumber);if(p)if(p.group){for(var C=0;C<p.childrenNodes.length;C++)v.push(p.childrenNodes[C].pointNumber);d[p.pointNumber-f.node._count]=!1}else v.push(p.pointNumber)}h=d.filter(Boolean).concat([v]),wZt.call("_guiRestyle",e,{"node.groups":[h]},t)}};u.prepFn=function(c,f,h){bZt(c,f,h,u,i)},xZt.init(u)}}});var QWe=ye((ubr,$We)=>{"use strict";$We.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 tXe=ye((cbr,eXe)=>{"use strict";eXe.exports={attributes:UJ(),supplyDefaults:nWe(),calc:uWe(),plot:$J(),moduleType:"trace",name:"sankey",basePlotModule:JWe(),selectPoints:QWe(),categories:["noOpacity"],meta:{}}});var iXe=ye((fbr,rXe)=>{"use strict";rXe.exports=tXe()});var aXe=ye(D5=>{"use strict";var nXe=Mc();D5.name="indicator";D5.plot=function(e,t,r,n){nXe.plotBasePlot(D5.name,e,t,r,n)};D5.clean=function(e,t,r,n){nXe.cleanBasePlot(D5.name,e,t,r,n)}});var t$=ye((dbr,fXe)=>{"use strict";var Mx=Ao().extendFlat,sXe=Ao().extendDeep,AZt=mc().overrideAll,lXe=ec(),uXe=Eh(),SZt=kc().attributes,Bf=Rd(),MZt=pl().templatedArray,M7=GT(),oXe=df().descriptionOnlyNumbers,e$=lXe({editType:"plot",colorEditType:"plot"}),QC={color:{valType:"color",editType:"plot"},line:{color:{valType:"color",dflt:uXe.defaultLine,editType:"plot"},width:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"calc"},thickness:{valType:"number",min:0,max:1,dflt:1,editType:"plot"},editType:"calc"},cXe={valType:"info_array",items:[{valType:"number",editType:"plot"},{valType:"number",editType:"plot"}],editType:"plot"},EZt=MZt("step",sXe({},QC,{range:cXe}));fXe.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:SZt({name:"indicator",trace:!0,editType:"calc"}),title:{text:{valType:"string",editType:"plot"},align:{valType:"enumerated",values:["left","center","right"],editType:"plot"},font:Mx({},e$,{}),editType:"plot"},number:{valueformat:{valType:"string",dflt:"",editType:"plot",description:oXe("value")},font:Mx({},e$,{}),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:oXe("value")},increasing:{symbol:{valType:"string",dflt:M7.INCREASING.SYMBOL,editType:"plot"},color:{valType:"color",dflt:M7.INCREASING.COLOR,editType:"plot"},editType:"plot"},decreasing:{symbol:{valType:"string",dflt:M7.DECREASING.SYMBOL,editType:"plot"},color:{valType:"color",dflt:M7.DECREASING.COLOR,editType:"plot"},editType:"plot"},font:Mx({},e$,{}),prefix:{valType:"string",dflt:"",editType:"plot"},suffix:{valType:"string",dflt:"",editType:"plot"},editType:"calc"},gauge:{shape:{valType:"enumerated",editType:"plot",dflt:"angular",values:["angular","bullet"]},bar:sXe({},QC,{color:{dflt:"green"}}),bgcolor:{valType:"color",editType:"plot"},bordercolor:{valType:"color",dflt:uXe.defaultLine,editType:"plot"},borderwidth:{valType:"number",min:0,dflt:1,editType:"plot"},axis:AZt({range:cXe,visible:Mx({},Bf.visible,{dflt:!0}),tickmode:Bf.minor.tickmode,nticks:Bf.nticks,tick0:Bf.tick0,dtick:Bf.dtick,tickvals:Bf.tickvals,ticktext:Bf.ticktext,ticks:Mx({},Bf.ticks,{dflt:"outside"}),ticklen:Bf.ticklen,tickwidth:Bf.tickwidth,tickcolor:Bf.tickcolor,ticklabelstep:Bf.ticklabelstep,showticklabels:Bf.showticklabels,labelalias:Bf.labelalias,tickfont:lXe({}),tickangle:Bf.tickangle,tickformat:Bf.tickformat,tickformatstops:Bf.tickformatstops,tickprefix:Bf.tickprefix,showtickprefix:Bf.showtickprefix,ticksuffix:Bf.ticksuffix,showticksuffix:Bf.showticksuffix,separatethousands:Bf.separatethousands,exponentformat:Bf.exponentformat,minexponent:Bf.minexponent,showexponent:Bf.showexponent,editType:"plot"},"plot"),steps:EZt,threshold:{line:{color:Mx({},QC.line.color,{}),width:Mx({},QC.line.width,{dflt:1}),editType:"plot"},thickness:Mx({},QC.thickness,{dflt:.85}),value:{valType:"number",editType:"calc",dflt:!1},editType:"plot"},editType:"plot"}}});var r$=ye((vbr,hXe)=>{"use strict";hXe.exports={defaultNumberFontSize:80,bulletNumberDomainSize:.25,bulletPadding:.025,innerRadius:.75,valueThickness:.5,titlePadding:5,horizontalPadding:10}});var pXe=ye((pbr,vXe)=>{"use strict";var ey=Dr(),C7=t$(),CZt=kc().defaults,dXe=pl(),kZt=Yd(),E7=r$(),LZt=xb(),PZt=T3(),IZt=t_(),RZt=r_();function DZt(e,t,r,n){function i(_,k){return ey.coerce(e,t,C7,_,k)}CZt(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=E7.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||E7.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||E7.defaultNumberFontSize),ey.coerceFont(i,"title.font",f),i("title.text");var h,d,v,x;function b(_,k){return ey.coerce(h,d,C7.gauge,_,k)}function p(_,k){return ey.coerce(v,x,C7.gauge.axis,_,k)}if(t._hasGauge){h=e.gauge,h||(h={}),d=dXe.newContainer(t,"gauge"),b("shape");var C=t._isBullet=t.gauge.shape==="bullet";C||i("title.align","center");var E=t._isAngular=t.gauge.shape==="angular";E||i("align","center"),b("bgcolor",n.paper_bgcolor),b("borderwidth"),b("bordercolor"),b("bar.color"),b("bar.line.color"),b("bar.line.width");var A=E7.valueThickness*(t.gauge.shape==="bullet"?.5:1);b("bar.thickness",A),kZt(h,d,{name:"steps",handleItemDefaults:FZt}),b("threshold.value"),b("threshold.thickness"),b("threshold.line.width"),b("threshold.line.color"),v={},h&&(v=h.axis||{}),x=dXe.newContainer(d,"axis"),p("visible"),t._range=p("range",t._range);var L={font:n.font,noAutotickangles:!0,outerTicks:!0,noTicklabelshift:!0,noTicklabelstandoff:!0};LZt(v,x,p,"linear"),RZt(v,x,p,"linear",L),IZt(v,x,p,"linear",L),PZt(v,x,p,L)}else i("title.align","center"),i("align","center"),t._isAngular=t._isBullet=!1;t._length=null}function FZt(e,t){function r(n,i){return ey.coerce(e,t,C7.gauge.steps,n,i)}r("color"),r("line.color"),r("line.width"),r("range"),r("thickness")}vXe.exports={supplyDefaults:DZt}});var mXe=ye((gbr,gXe)=>{"use strict";function zZt(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}gXe.exports={calc:zZt}});var TXe=ye((mbr,wXe)=>{"use strict";var fw=Oa(),OZt=(R2(),B1(I2)).interpolate,yXe=(R2(),B1(I2)).interpolateNumber,Ex=Dr(),qZt=Ex.strScale,tk=Ex.strTranslate,BZt=Ex.rad2deg,NZt=Kh().MID_SHIFT,cw=So(),sw=r$(),L7=iu(),sv=ho(),UZt=t4(),VZt=oI(),GZt=Rd(),F5=Ca(),i$={left:"start",center:"middle",right:"end"},lw={left:0,center:.5,right:1},_Xe=/[yzafpnµmkMGTPEZY]/;function rk(e){return e&&e.duration>0}wXe.exports=function(t,r,n,i){var a=t._fullLayout,o;rk(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,C=Math.min(x.w/2,x.h),E=sw.innerRadius*C,A,L,_,k=u.align||"center";if(L=p,!f)A=x.l+lw[k]*x.w,_=function(H){return xXe(H,x.w,x.h)};else if(h&&(A=b,L=p+C/2,_=function(H){return ZZt(H,.9*E)}),d){var M=sw.bulletPadding,g=1-sw.bulletNumberDomainSize+M;A=x.l+(g+(1-g)*lw[k])*x.w,_=function(H){return xXe(H,(sw.bulletNumberDomainSize-M)*x.w,x.h)}}WZt(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 z=c.selectAll("g.angular").data(h?s:[]);z.exit().remove();var O=c.selectAll("g.angularaxis").data(h?s:[]);O.exit().remove(),h&&jZt(t,c,s,{radius:C,innerRadius:E,gauge:z,layer:O,size:x,gaugeBg:P,gaugeOutline:T,transitionOpts:n,onComplete:o});var V=c.selectAll("g.bullet").data(d?s:[]);V.exit().remove();var G=c.selectAll("g.bulletaxis").data(d?s:[]);G.exit().remove(),d&&HZt(t,c,s,{gauge:V,layer:G,size:x,gaugeBg:P,gaugeOutline:T,transitionOpts:n,onComplete:o});var Z=c.selectAll("text.title").data(s);Z.exit().remove(),Z.enter().append("text").classed("title",!0),Z.attr("text-anchor",function(){return d?i$.right:i$[u.title.align]}).text(u.title.text).call(cw.font,u.title.font).call(L7.convertToTspans,t),Z.attr("transform",function(){var H=x.l+x.w*lw[u.title.align],N,j=sw.titlePadding,re=cw.bBox(Z.node());if(f){if(h)if(u.gauge.axis.visible){var oe=cw.bBox(O.node());N=oe.top-j-re.bottom}else N=x.t+x.h/2-C/2-re.bottom-j;d&&(N=L-(re.top+re.bottom)/2,H=x.l-sw.bulletPadding*x.w)}else N=u._numbersTop-j-re.bottom;return tk(H,N)})})};function HZt(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",tk(u.l,u.t)),o.enter().append("g").classed("bulletaxis",!0).classed("crisp",!0),o.selectAll("g.xbulletaxistick,path,text").remove();var C=u.h,E=i.gauge.bar.thickness*C,A=c.x[0],L=c.x[0]+(c.x[1]-c.x[0])*(i._hasNumber||i._hasDelta?1-sw.bulletNumberDomainSize:1);d=ek(e,i.gauge.axis),d._id="xbulletaxis",d.domain=[A,L],d.setScale(),v=sv.calcTicks(d),x=sv.makeTransTickFn(d),b=sv.getTickSigns(d)[2],p=u.t+u.h,d.visible&&(sv.drawTicks(e,d,{vals:d.ticks==="inside"?sv.clipEnds(d,v):v,layer:o,path:sv.makeTickPath(d,p,b),transFn:x}),sv.drawLabels(e,d,{vals:v,layer:o,transFn:x,labelFns:sv.makeLabelFns(d,p)}));function _(O){O.attr("width",function(V){return Math.max(0,d.c2p(V.range[1])-d.c2p(V.range[0]))}).attr("x",function(V){return d.c2p(V.range[0])}).attr("y",function(V){return .5*(1-V.thickness)*C}).attr("height",function(V){return V.thickness*C})}var k=[s].concat(i.gauge.steps),M=a.selectAll("g.bg-bullet").data(k);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",E).attr("y",(C-E)/2).call(uw),rk(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*C).attr("y2",(1-(1-i.gauge.threshold.thickness)/2)*C).call(F5.stroke,i.gauge.threshold.line.color).style("stroke-width",i.gauge.threshold.line.width),T.exit().remove();var z=a.selectAll("g.gauge-outline").data([l]);z.enter().append("g").classed("gauge-outline",!0).append("rect"),z.select("rect").call(_).call(uw),z.exit().remove()}function jZt(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],me=(_e-Me)/(ke-Me)*Math.PI-x;return me<-x?-x:me>x?x:me}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 C(_e){_e.attr("d",function(Me){return p(Me.thickness).startAngle(b(Me.range[0])).endAngle(b(Me.range[1]))()})}var E,A,L,_;f.enter().append("g").classed("angular",!0),f.attr("transform",tk(c[0],c[1])),h.enter().append("g").classed("angularaxis",!0).classed("crisp",!0),h.selectAll("g.xangularaxistick,path,text").remove(),E=ek(e,i.gauge.axis),E.type="linear",E.range=i.gauge.axis.range,E._id="xangularaxis",E.ticklabeloverflow="allow",E.setScale();var k=function(_e){return(E.range[0]-_e.x)/(E.range[1]-E.range[0])*Math.PI+Math.PI},M={},g=sv.makeLabelFns(E,0),P=g.labelStandoff;M.xFn=function(_e){var Me=k(_e);return Math.cos(Me)*P},M.yFn=function(_e){var Me=k(_e),ke=Math.sin(Me)>0?.2:1;return-Math.sin(Me)*(P+_e.fontSize*ke)+Math.abs(Math.cos(Me))*(_e.fontSize*NZt)},M.anchorFn=function(_e){var Me=k(_e),ke=Math.cos(Me);return Math.abs(ke)<.1?"middle":ke>0?"start":"end"},M.heightFn=function(_e,Me,ke){var me=k(_e);return-.5*(1+Math.sin(me))*ke};var T=function(_e){return tk(c[0]+o*Math.cos(_e),c[1]-o*Math.sin(_e))};L=function(_e){return T(k(_e))};var z=function(_e){var Me=k(_e);return T(Me)+"rotate("+-BZt(Me)+")"};if(A=sv.calcTicks(E),_=sv.getTickSigns(E)[2],E.visible){_=E.ticks==="inside"?-1:1;var O=(E.linewidth||1)/2;sv.drawTicks(e,E,{vals:A,layer:h,path:"M"+_*O+",0h"+_*E.ticklen,transFn:z}),sv.drawLabels(e,E,{vals:A,layer:h,transFn:L,labelFns:M})}var V=[l].concat(i.gauge.steps),G=f.selectAll("g.bg-arc").data(V);G.enter().append("g").classed("bg-arc",!0).append("path"),G.select("path").call(C).call(uw),G.exit().remove();var Z=p(i.gauge.bar.thickness),H=f.selectAll("g.value-arc").data([i.gauge.bar]);H.enter().append("g").classed("value-arc",!0).append("path");var N=H.select("path");rk(d)?(N.transition().duration(d.duration).ease(d.easing).each("end",function(){v&&v()}).each("interrupt",function(){v&&v()}).attrTween("d",XZt(Z,b(r[0].lastY),b(r[0].y))),i._lastValue=r[0].y):N.attr("d",typeof r[0].y=="number"?Z.endAngle(b(r[0].y)):"M0,0Z"),N.call(uw),H.exit().remove(),V=[];var j=i.gauge.threshold.value;(j||j===0)&&V.push({range:[j,j],color:i.gauge.threshold.color,line:{color:i.gauge.threshold.line.color,width:i.gauge.threshold.line.width},thickness:i.gauge.threshold.thickness});var re=f.selectAll("g.threshold-arc").data(V);re.enter().append("g").classed("threshold-arc",!0).append("path"),re.select("path").call(C).call(uw),re.exit().remove();var oe=f.selectAll("g.gauge-outline").data([u]);oe.enter().append("g").classed("gauge-outline",!0).append("path"),oe.select("path").call(C).call(uw),oe.exit().remove()}function WZt(e,t,r,n){var i=r[0].trace,a=n.numbersX,o=n.numbersY,s=i.align||"center",l=i$[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,z,O,V){if(T.match("s")&&O>=0!=V>=0&&!z(O).slice(-1).match(_Xe)&&!z(V).slice(-1).match(_Xe)){var G=T.slice().replace("s","f").replace(/\d+/,function(H){return parseInt(H)-1}),Z=ek(e,{tickformat:G});return function(H){return Math.abs(H)<1?sv.tickText(Z,H).text:z(H)}}else return z}function C(){var T=ek(e,{tickformat:i.number.valueformat},i._range);T.setScale(),sv.prepTicks(T);var z=function(H){return sv.tickText(T,H).text},O=i.number.suffix,V=i.number.prefix,G=f.select("text.number");function Z(){var H=typeof r[0].y=="number"?V+z(r[0].y)+O:"-";G.text(H).call(cw.font,i.number.font).call(L7.convertToTspans,e)}return rk(u)?G.transition().duration(u.duration).ease(u.easing).each("end",function(){Z(),c&&c()}).each("interrupt",function(){Z(),c&&c()}).attrTween("text",function(){var H=fw.select(this),N=yXe(r[0].lastY,r[0].y);i._lastValue=r[0].y;var j=p(i.number.valueformat,z,r[0].lastY,r[0].y);return function(re){H.text(V+j(N(re))+O)}}):Z(),h=bXe(V+z(r[0].y)+O,i.number.font,l,e),G}function E(){var T=ek(e,{tickformat:i.delta.valueformat},i._range);T.setScale(),sv.prepTicks(T);var z=function(re){return sv.tickText(T,re).text},O=i.delta.suffix,V=i.delta.prefix,G=function(re){var oe=i.delta.relative?re.relativeDelta:re.delta;return oe},Z=function(re,oe){return re===0||typeof re!="number"||isNaN(re)?"-":(re>0?i.delta.increasing.symbol:i.delta.decreasing.symbol)+V+oe(re)+O},H=function(re){return re.delta>=0?i.delta.increasing.color:i.delta.decreasing.color};i._deltaLastValue===void 0&&(i._deltaLastValue=G(r[0]));var N=f.select("text.delta");N.call(cw.font,i.delta.font).call(F5.fill,H({delta:i._deltaLastValue}));function j(){N.text(Z(G(r[0]),z)).call(F5.fill,H(r[0])).call(L7.convertToTspans,e)}return rk(u)?N.transition().duration(u.duration).ease(u.easing).tween("text",function(){var re=fw.select(this),oe=G(r[0]),_e=i._deltaLastValue,Me=p(i.delta.valueformat,z,_e,oe),ke=yXe(_e,oe);return i._deltaLastValue=oe,function(me){re.text(Z(ke(me),Me)),re.call(F5.fill,H({delta:ke(me)}))}}).each("end",function(){j(),c&&c()}).each("interrupt",function(){j(),c&&c()}):j(),d=bXe(Z(G(r[0]),z),i.delta.font,l,e),N}var A=i.mode+i.align,L;if(i._hasDelta&&(L=E(),A+=i.delta.position+i.delta.font.size+i.delta.font.family+i.delta.valueformat,A+=i.delta.increasing.symbol+i.delta.decreasing.symbol,v=d),i._hasNumber&&(C(),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],k=[(d.left+d.right)/2,(d.top+d.bottom)/2],M,g,P=.75*i.delta.font.size;i.delta.position==="left"&&(M=k7(i,"deltaPos",0,-1*(h.width*lw[i.align]+d.width*(1-lw[i.align])+P),A,Math.min),g=_[1]-k[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=k7(i,"deltaPos",0,h.width*(1-lw[i.align])+d.width*lw[i.align]+P,A,Math.max),g=_[1]-k[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 z=k7(i,"numbersScale",1,T[0],A,Math.min),O;i._scaleNumbers||(z=1),i._isAngular?O=o-z*v.bottom:O=o-z*(v.top+v.bottom)/2,i._numbersTop=z*v.top+O;var V=v[s];s==="center"&&(V=(v.left+v.right)/2);var G=a-z*V;return G=k7(i,"numbersTranslate",0,G,A,Math.max),tk(G,O)+qZt(z)})}function uw(e){e.each(function(t){F5.stroke(fw.select(this),t.line.color)}).each(function(t){F5.fill(fw.select(this),t.color)}).style("stroke-width",function(t){return t.line.width})}function XZt(e,t,r){return function(){var n=OZt(t,r);return function(i){return e.endAngle(n(i))()}}}function ek(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,GZt,l,u)}return UZt(i,a,s,o,n),VZt(i,a,s,o),a}function xXe(e,t,r){var n=Math.min(t/e.width,r/e.height);return[n,e,t+"x"+r]}function ZZt(e,t){var r=Math.sqrt(e.width/2*(e.width/2)+e.height*e.height),n=t/r;return[n,e,t]}function bXe(e,t,r,n){var i=document.createElementNS("http://www.w3.org/2000/svg","text"),a=fw.select(i);return a.text(e).attr("x",0).attr("y",0).attr("text-anchor",r).attr("data-unformatted",e).call(L7.convertToTspans,n).call(cw.font,t),cw.bBox(a.node())}function k7(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 SXe=ye((ybr,AXe)=>{"use strict";AXe.exports={moduleType:"trace",name:"indicator",basePlotModule:aXe(),categories:["svg","noOpacity","noHover"],animatable:!0,attributes:t$(),supplyDefaults:pXe().supplyDefaults,calc:mXe().calc,plot:TXe(),meta:{}}});var EXe=ye((_br,MXe)=>{"use strict";MXe.exports=SXe()});var n$=ye((bbr,PXe)=>{"use strict";var CXe=Nb(),P7=Ao().extendFlat,YZt=mc().overrideAll,kXe=ec(),KZt=kc().attributes,LXe=df().descriptionOnlyNumbers,xbr=PXe.exports=YZt({domain:KZt({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:LXe("cell value")},prefix:{valType:"string",arrayOk:!0,dflt:null},suffix:{valType:"string",arrayOk:!0,dflt:null},height:{valType:"number",dflt:28},align:P7({},CXe.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:P7({},kXe({arrayOk:!0}))},cells:{values:{valType:"data_array",dflt:[]},format:{valType:"data_array",dflt:[],description:LXe("cell value")},prefix:{valType:"string",arrayOk:!0,dflt:null},suffix:{valType:"string",arrayOk:!0,dflt:null},height:{valType:"number",dflt:20},align:P7({},CXe.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:P7({},kXe({arrayOk:!0}))}},"calc","from-root")});var RXe=ye((wbr,IXe)=>{"use strict";var a$=Dr(),JZt=n$(),$Zt=kc().defaults;function QZt(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)}IXe.exports=function(t,r,n,i){function a(o,s){return a$.coerce(t,r,JZt,o,s)}$Zt(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"),a$.coerceFont(a,"header.font",i.font),QZt(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"),a$.coerceFont(a,"cells.font",i.font),r._length=null}});var FXe=ye((Tbr,DXe)=>{"use strict";var eYt=Km().wrap;DXe.exports=function(){return eYt({})}});var o$=ye((Abr,zXe)=>{"use strict";zXe.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 jXe=ye((Sbr,HXe)=>{"use strict";var OXe=o$(),l$=Ao().extendFlat,tYt=Eo(),rYt=vv().isTypedArray,I7=vv().isArrayOrTypedArray;HXe.exports=function(t,r){var n=s$(r.cells.values),i=function(g){return g.slice(r.header.values.length,g.length)},a=s$(r.header.values);a.length&&!a[0].length&&(a[0]=[""],a=s$(a));var o=a.concat(i(n).map(function(){return GXe((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}):[OXe.emptyHeaderHeight],f=n.length?n[0].map(function(){return r.cells.height}):[],h=c.reduce(qXe,0),d=u-h,v=d+OXe.uplift,x=UXe(f,v),b=UXe(c,h),p=NXe(b,[]),C=NXe(x,p),E={},A=r._fullInput.columnorder;I7(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=I7(r.columnwidth)?r.columnwidth[Math.min(P,r.columnwidth.length-1)]:r.columnwidth;return tYt(T)?Number(T):1}),_=L.reduce(qXe,0);L=L.map(function(g){return g/_*l});var k=Math.max(u$(r.header.line.width),u$(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:k,height:u,columnOrder:A,groupHeight:u,rowBlocks:C,headerRowBlocks:p,scrollY:0,cells:l$({},r.cells,{values:n}),headerCells:l$({},r.header,{values:o}),gdColumns:o.map(function(g){return g[0]}),gdColumnsOriginalOrder:o.map(function(g){return g[0]}),prevPages:[0,0],scrollbarState:{scrollbarScrollInProgress:!1},columns:o.map(function(g,P){var T=E[g];E[g]=(T||0)+1;var z=g+"__"+E[g];return{key:z,label:g,specIndex:P,xIndex:A[P],xScale:BXe,x:void 0,calcdata:void 0,columnWidth:L[P]}})};return M.columns.forEach(function(g){g.calcdata=M,g.x=BXe(g)}),M};function u$(e){if(I7(e)){for(var t=0,r=0;r<e.length;r++)t=Math.max(t,u$(e[r]));return t}return e}function qXe(e,t){return e+t}function s$(e){var t=e.slice(),r=1/0,n=0,i;for(i=0;i<t.length;i++)rYt(t[i])?t[i]=Array.from(t[i]):I7(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(GXe(a)))}return t}function GXe(e){for(var t=new Array(e),r=0;r<e;r++)t[r]="";return t}function BXe(e){return e.calcdata.columns.reduce(function(t,r){return r.xIndex<e.xIndex?t+r.columnWidth:t},0)}function NXe(e,t){var r=Object.keys(e);return r.map(function(n){return l$({},e[n],{auxiliaryBlocks:t})})}function UXe(e,t){for(var r={},n,i=0,a=0,o=VXe(),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=VXe(),i+=a,s=u+1,a=0);return r}function VXe(){return{firstRowIndex:null,lastRowIndex:null,rows:[]}}});var WXe=ye(c$=>{"use strict";var R7=Ao().extendFlat;c$.splitToPanels=function(e){var t=[0,0],r=R7({},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:R7({},e.calcdata,{cells:e.calcdata.headerCells})}),n=R7({},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=R7({},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]};c$.splitToCells=function(e){var t=iYt(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 iYt(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 x$=ye((Ebr,iZe)=>{"use strict";var Ya=o$(),tf=Oa(),f$=Dr(),nYt=f$.numberFormat,Uu=Km(),h$=So(),aYt=iu(),oYt=Dr().raiseToTop,og=Dr().strTranslate,sYt=Dr().cancelTransition,lYt=jXe(),QXe=WXe(),XXe=Ca();iZe.exports=function(t,r){var n=!t._context.staticPlot,i=t._fullLayout._paper.selectAll("."+Ya.cn.table).data(r.map(function(C){var E=Uu.unwrap(C),A=E.trace;return lYt(t,A)}),Uu.keyFun);i.exit().remove(),i.enter().append("g").classed(Ya.cn.table,!0).attr("overflow","visible").style("box-sizing","content-box").style("position","absolute").style("left",0).style("overflow","visible").style("shape-rendering","crispEdges").style("pointer-events","all"),i.attr("width",function(C){return C.width+C.size.l+C.size.r}).attr("height",function(C){return C.height+C.size.t+C.size.b}).attr("transform",function(C){return og(C.translateX,C.translateY)});var a=i.selectAll("."+Ya.cn.tableControlView).data(Uu.repeat,Uu.keyFun),o=a.enter().append("g").classed(Ya.cn.tableControlView,!0).style("box-sizing","content-box");if(n){var s="onwheel"in document?"wheel":"mousewheel";o.on("mousemove",function(C){a.filter(function(E){return C===E}).call(ik,t)}).on(s,function(C){if(!C.scrollbarState.wheeling){C.scrollbarState.wheeling=!0;var E=C.scrollY+tf.event.deltaY,A=F7(t,a,null,E)(C);A||(tf.event.stopPropagation(),tf.event.preventDefault()),C.scrollbarState.wheeling=!1}}).call(ik,t,!0)}a.attr("transform",function(C){return og(C.size.l,C.size.t)});var l=a.selectAll("."+Ya.cn.scrollBackground).data(Uu.repeat,Uu.keyFun);l.enter().append("rect").classed(Ya.cn.scrollBackground,!0).attr("fill","none"),l.attr("width",function(C){return C.width}).attr("height",function(C){return C.height}),a.each(function(C){h$.setClipUrl(tf.select(this),ZXe(t,C),t)});var u=a.selectAll("."+Ya.cn.yColumn).data(function(C){return C.columns},Uu.keyFun);u.enter().append("g").classed(Ya.cn.yColumn,!0),u.exit().remove(),u.attr("transform",function(C){return og(C.x,0)}),n&&u.call(tf.behavior.drag().origin(function(C){var E=tf.select(this);return JXe(E,C,-Ya.uplift),oYt(this),C.calcdata.columnDragInProgress=!0,ik(a.filter(function(A){return C.calcdata.key===A.key}),t),C}).on("drag",function(C){var E=tf.select(this),A=function(k){return(C===k?tf.event.x:k.x)+k.columnWidth/2};C.x=Math.max(-Ya.overdrag,Math.min(C.calcdata.width+Ya.overdrag-C.columnWidth,tf.event.x));var L=eZe(u).filter(function(k){return k.calcdata.key===C.calcdata.key}),_=L.sort(function(k,M){return A(k)-A(M)});_.forEach(function(k,M){k.xIndex=M,k.x=C===k?k.x:k.xScale(k)}),u.filter(function(k){return C!==k}).transition().ease(Ya.transitionEase).duration(Ya.transitionDuration).attr("transform",function(k){return og(k.x,0)}),E.call(sYt).attr("transform",og(C.x,-Ya.uplift))}).on("dragend",function(C){var E=tf.select(this),A=C.calcdata;C.x=C.xScale(C),C.calcdata.columnDragInProgress=!1,JXe(E,C,0),yYt(t,A,A.columns.map(function(L){return L.xIndex}))})),u.each(function(C){h$.setClipUrl(tf.select(this),YXe(t,C),t)});var c=u.selectAll("."+Ya.cn.columnBlock).data(QXe.splitToPanels,Uu.keyFun);c.enter().append("g").classed(Ya.cn.columnBlock,!0).attr("id",function(C){return C.key}),c.style("cursor",function(C){return C.dragHandle?"ew-resize":C.calcdata.scrollbarState.barWiggleRoom?"ns-resize":"default"});var f=c.filter(_Yt),h=c.filter(m$);n&&h.call(tf.behavior.drag().origin(function(C){return tf.event.stopPropagation(),C}).on("drag",F7(t,a,-1)).on("dragend",function(){})),d$(t,a,f,c),d$(t,a,h,c);var d=a.selectAll("."+Ya.cn.scrollAreaClip).data(Uu.repeat,Uu.keyFun);d.enter().append("clipPath").classed(Ya.cn.scrollAreaClip,!0).attr("id",function(C){return ZXe(t,C)});var v=d.selectAll("."+Ya.cn.scrollAreaClipRect).data(Uu.repeat,Uu.keyFun);v.enter().append("rect").classed(Ya.cn.scrollAreaClipRect,!0).attr("x",-Ya.overdrag).attr("y",-Ya.uplift).attr("fill","none"),v.attr("width",function(C){return C.width+2*Ya.overdrag}).attr("height",function(C){return C.height+Ya.uplift});var x=u.selectAll("."+Ya.cn.columnBoundary).data(Uu.repeat,Uu.keyFun);x.enter().append("g").classed(Ya.cn.columnBoundary,!0);var b=u.selectAll("."+Ya.cn.columnBoundaryClippath).data(Uu.repeat,Uu.keyFun);b.enter().append("clipPath").classed(Ya.cn.columnBoundaryClippath,!0),b.attr("id",function(C){return YXe(t,C)});var p=b.selectAll("."+Ya.cn.columnBoundaryRect).data(Uu.repeat,Uu.keyFun);p.enter().append("rect").classed(Ya.cn.columnBoundaryRect,!0).attr("fill","none"),p.attr("width",function(C){return C.columnWidth+2*D7(C)}).attr("height",function(C){return C.calcdata.height+2*D7(C)+Ya.uplift}).attr("x",function(C){return-D7(C)}).attr("y",function(C){return-D7(C)}),y$(null,h,a)};function D7(e){return Math.ceil(e.calcdata.maxLineWidth/2)}function ZXe(e,t){return"clip"+e._fullLayout._uid+"_scrollAreaBottomClip_"+t.key}function YXe(e,t){return"clip"+e._fullLayout._uid+"_columnBoundaryClippath_"+t.calcdata.key+"_"+t.specIndex}function eZe(e){return[].concat.apply([],e.map(function(t){return t})).map(function(t){return t.__data__})}function ik(e,t,r){function n(u){var c=u.rowBlocks;return p$(c,c.length-1)+(c.length?z7(c[c.length-1],1/0):1)}var i=e.selectAll("."+Ya.cn.scrollbarKit).data(Uu.repeat,Uu.keyFun);i.enter().append("g").classed(Ya.cn.scrollbarKit,!0).style("shape-rendering","geometricPrecision"),i.each(function(u){var c=u.scrollbarState;c.totalHeight=n(u),c.scrollableAreaHeight=u.groupHeight-v$(u),c.currentlyVisibleHeight=Math.min(c.totalHeight,c.scrollableAreaHeight),c.ratio=c.currentlyVisibleHeight/c.totalHeight,c.barLength=Math.max(c.ratio*c.currentlyVisibleHeight,Ya.goldenRatio*Ya.scrollbarWidth),c.barWiggleRoom=c.currentlyVisibleHeight-c.barLength,c.wiggleRoom=Math.max(0,c.totalHeight-c.scrollableAreaHeight),c.topY=c.barWiggleRoom===0?0:u.scrollY/c.wiggleRoom*c.barWiggleRoom,c.bottomY=c.topY+c.barLength,c.dragMultiplier=c.wiggleRoom/c.barWiggleRoom}).attr("transform",function(u){var c=u.width+Ya.scrollbarWidth/2+Ya.scrollbarOffset;return og(c,v$(u))});var a=i.selectAll("."+Ya.cn.scrollbar).data(Uu.repeat,Uu.keyFun);a.enter().append("g").classed(Ya.cn.scrollbar,!0);var o=a.selectAll("."+Ya.cn.scrollbarSlider).data(Uu.repeat,Uu.keyFun);o.enter().append("g").classed(Ya.cn.scrollbarSlider,!0),o.attr("transform",function(u){return og(0,u.scrollbarState.topY||0)});var s=o.selectAll("."+Ya.cn.scrollbarGlyph).data(Uu.repeat,Uu.keyFun);s.enter().append("line").classed(Ya.cn.scrollbarGlyph,!0).attr("stroke","black").attr("stroke-width",Ya.scrollbarWidth).attr("stroke-linecap","round").attr("y1",Ya.scrollbarWidth/2),s.attr("y2",function(u){return u.scrollbarState.barLength-Ya.scrollbarWidth/2}).attr("stroke-opacity",function(u){return u.columnDragInProgress||!u.scrollbarState.barWiggleRoom||r?0:.4}),s.transition().delay(0).duration(0),s.transition().delay(Ya.scrollbarHideDelay).duration(Ya.scrollbarHideDuration).attr("stroke-opacity",0);var l=a.selectAll("."+Ya.cn.scrollbarCaptureZone).data(Uu.repeat,Uu.keyFun);l.enter().append("line").classed(Ya.cn.scrollbarCaptureZone,!0).attr("stroke","white").attr("stroke-opacity",.01).attr("stroke-width",Ya.scrollbarCaptureWidth).attr("stroke-linecap","butt").attr("y1",0).on("mousedown",function(u){var c=tf.event.y,f=this.getBoundingClientRect(),h=u.scrollbarState,d=c-f.top,v=tf.scale.linear().domain([0,h.scrollableAreaHeight]).range([0,h.totalHeight]).clamp(!0);h.topY<=d&&d<=h.bottomY||F7(t,e,null,v(d-h.barLength/2))(u)}).call(tf.behavior.drag().origin(function(u){return tf.event.stopPropagation(),u.scrollbarState.scrollbarScrollInProgress=!0,u}).on("drag",F7(t,e)).on("dragend",function(){})),l.attr("y2",function(u){return u.scrollbarState.scrollableAreaHeight}),t._context.staticPlot&&(s.remove(),l.remove())}function d$(e,t,r,n){var i=uYt(r),a=cYt(i);vYt(a);var o=fYt(a);gYt(o);var s=dYt(a),l=hYt(s);pYt(l),tZe(l,t,n,e),_$(a)}function uYt(e){var t=e.selectAll("."+Ya.cn.columnCells).data(Uu.repeat,Uu.keyFun);return t.enter().append("g").classed(Ya.cn.columnCells,!0),t.exit().remove(),t}function cYt(e){var t=e.selectAll("."+Ya.cn.columnCell).data(QXe.splitToCells,function(r){return r.keyWithinBlock});return t.enter().append("g").classed(Ya.cn.columnCell,!0),t.exit().remove(),t}function fYt(e){var t=e.selectAll("."+Ya.cn.cellRect).data(Uu.repeat,function(r){return r.keyWithinBlock});return t.enter().append("rect").classed(Ya.cn.cellRect,!0),t}function hYt(e){var t=e.selectAll("."+Ya.cn.cellText).data(Uu.repeat,function(r){return r.keyWithinBlock});return t.enter().append("text").classed(Ya.cn.cellText,!0).style("cursor",function(){return"auto"}).on("mousedown",function(){tf.event.stopPropagation()}),t}function dYt(e){var t=e.selectAll("."+Ya.cn.cellTextHolder).data(Uu.repeat,function(r){return r.keyWithinBlock});return t.enter().append("g").classed(Ya.cn.cellTextHolder,!0).style("shape-rendering","geometricPrecision"),t}function vYt(e){e.each(function(t,r){var n=t.calcdata.cells.font,i=t.column.specIndex,a={size:Zv(n.size,i,r),color:Zv(n.color,i,r),family:Zv(n.family,i,r),weight:Zv(n.weight,i,r),style:Zv(n.style,i,r),variant:Zv(n.variant,i,r),textcase:Zv(n.textcase,i,r),lineposition:Zv(n.lineposition,i,r),shadow:Zv(n.shadow,i,r)};t.rowNumber=t.key,t.align=Zv(t.calcdata.cells.align,i,r),t.cellBorderWidth=Zv(t.calcdata.cells.line.width,i,r),t.font=a})}function pYt(e){e.each(function(t){h$.font(tf.select(this),t.font)})}function gYt(e){e.attr("width",function(t){return t.column.columnWidth}).attr("stroke-width",function(t){return t.cellBorderWidth}).each(function(t){var r=tf.select(this);XXe.stroke(r,Zv(t.calcdata.cells.line.color,t.column.specIndex,t.rowNumber)),XXe.fill(r,Zv(t.calcdata.cells.fill.color,t.column.specIndex,t.rowNumber))})}function tZe(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=mYt(s);i.latex=f;var h=f?"":Zv(i.calcdata.cells.prefix,a,o)||"",d=f?"":Zv(i.calcdata.cells.suffix,a,o)||"",v=f?null:Zv(i.calcdata.cells.format,a,o)||null,x=h+(v?nYt(v)(i.value):i.value)+d,b;i.wrappingNeeded=!i.wrapped&&!c&&!f&&(b=KXe(x)),i.cellHeightMayIncrease=u||f||i.mayHaveMarkup||(b===void 0?KXe(x):b),i.needsConvertToTspans=i.mayHaveMarkup||i.wrappingNeeded||i.latex;var p;if(i.wrappingNeeded){var C=Ya.wrapSplitCharacter===" "?x.replace(/<a href=/ig,"<a_href="):x,E=C.split(Ya.wrapSplitCharacter),A=Ya.wrapSplitCharacter===" "?E.map(function(L){return L.replace(/<a_href=/ig,"<a href=")}):E;i.fragments=A.map(function(L){return{text:L,width:null}}),i.fragments.push({fragment:Ya.wrapSpacer,width:null}),p=A.join(Ya.lineBreaker)+Ya.lineBreaker+Ya.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=tf.select(a),s=i.wrappingNeeded?bYt:wYt;i.needsConvertToTspans?aYt.convertToTspans(o,n,s(r,a,t,n,i)):tf.select(a.parentNode).attr("transform",function(l){return og(rZe(l),Ya.cellPad)}).attr("text-anchor",function(l){return{left:"start",center:"middle",right:"end"}[l.align]})})}function mYt(e){return typeof e=="string"&&e.match(Ya.latexCheck)}function KXe(e){return e.indexOf(Ya.wrapSplitCharacter)!==-1}function yYt(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 Zv(e,t,r){if(f$.isArrayOrTypedArray(e)){var n=e[Math.min(t,e.length-1)];return f$.isArrayOrTypedArray(n)?n[Math.min(r,n.length-1)]:n}else return e}function JXe(e,t,r){e.transition().ease(Ya.releaseTransitionEase).duration(Ya.releaseTransitionDuration).attr("transform",og(t.x,r))}function m$(e){return e.type==="cells"}function _Yt(e){return e.type==="header"}function v$(e){var t=e.rowBlocks.length?e.rowBlocks[0].auxiliaryBlocks:[];return t.reduce(function(r,n){return r+z7(n,1/0)},0)}function xYt(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 y$(e,t,r){var n=eZe(t)[0];if(n!==void 0){var i=n.rowBlocks,a=n.calcdata,o=p$(i,i.length),s=n.calcdata.groupHeight-v$(n),l=a.scrollY=Math.max(0,Math.min(o-s,a.scrollY)),u=xYt(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=p$(c.rowBlocks,c.page)-c.scrollY;return og(0,f)}),e&&($Xe(e,r,t,u,n.prevPages,n,0),$Xe(e,r,t,u,n.prevPages,n,1),ik(r,e))}}function F7(e,t,r,n){return function(a){var o=a.calcdata?a.calcdata:a,s=t.filter(function(f){return o.key===f.key}),l=r||o.scrollbarState.dragMultiplier,u=o.scrollY;o.scrollY=n===void 0?o.scrollY+l*tf.event.dy:n;var c=s.selectAll("."+Ya.cn.yColumn).selectAll("."+Ya.cn.columnBlock).filter(m$);return y$(e,c,s),o.scrollY===u}}function $Xe(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]});d$(e,t,l,r),i[o]=n[o]}))}function bYt(e,t,r,n){return function(){var a=tf.select(t.parentNode);a.each(function(o){var s=o.fragments;a.selectAll("tspan.line").each(function(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*Ya.cellPad;for(o.value="";u.length;)f=u.shift(),h=f.width+l,d+h>v&&(o.value+=c.join(Ya.wrapSpacer)+Ya.lineBreaker,c=[],d=0),c.push(f.text),d+=h;d&&(o.value+=c.join(Ya.wrapSpacer)),o.wrapped=!0}),a.selectAll("tspan.line").remove(),tZe(a.select("."+Ya.cn.cellText),r,e,n),tf.select(t.parentNode.parentNode).call(_$)}}function wYt(e,t,r,n,i){return function(){if(!i.settledY){var o=tf.select(t.parentNode),s=g$(i),l=i.key-s.firstRowIndex,u=s.rows[l].rowHeight,c=i.cellHeightMayIncrease?t.parentNode.getBoundingClientRect().height+2*Ya.cellPad:u,f=Math.max(c,u),h=f-s.rows[l].rowHeight;h&&(s.rows[l].rowHeight=f,e.selectAll("."+Ya.cn.columnCell).call(_$),y$(null,e.filter(m$),0),ik(r,n,!0)),o.attr("transform",function(){var d=this,v=d.parentNode,x=v.getBoundingClientRect(),b=tf.select(d.parentNode).select("."+Ya.cn.cellRect).node().getBoundingClientRect(),p=d.transform.baseVal.consolidate(),C=b.top-x.top+(p?p.matrix.f:Ya.cellPad);return og(rZe(i,tf.select(d.parentNode).select("."+Ya.cn.cellTextHolder).node().getBoundingClientRect().width),C)}),i.settledY=!0}}}function rZe(e,t){switch(e.align){case"left":return Ya.cellPad;case"right":return e.column.columnWidth-(t||0)-Ya.cellPad;case"center":return(e.column.columnWidth-(t||0))/2;default:return Ya.cellPad}}function _$(e){e.attr("transform",function(t){var r=t.rowBlocks[0].auxiliaryBlocks.reduce(function(o,s){return o+z7(s,1/0)},0),n=g$(t),i=z7(n,t.key),a=i+r;return og(0,a)}).selectAll("."+Ya.cn.cellRect).attr("height",function(t){return AYt(g$(t),t.key).rowHeight})}function p$(e,t){for(var r=0,n=t-1;n>=0;n--)r+=TYt(e[n]);return r}function z7(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 TYt(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 g$(e){return e.rowBlocks[e.page]}function AYt(e,t){return e.rows[t-e.firstRowIndex]}});var nZe=ye(q7=>{"use strict";var SYt=Id().getModuleCalcData,MYt=x$(),O7="table";q7.name=O7;q7.plot=function(e){var t=SYt(e.calcdata,O7)[0];t.length&&MYt(e,t)};q7.clean=function(e,t,r,n){var i=n._has&&n._has(O7),a=t._has&&t._has(O7);i&&!a&&n._paperdiv.selectAll(".table").remove()}});var oZe=ye((kbr,aZe)=>{"use strict";aZe.exports={attributes:n$(),supplyDefaults:RXe(),calc:FXe(),plot:x$(),moduleType:"trace",name:"table",basePlotModule:nZe(),categories:["noOpacity"],meta:{}}});var lZe=ye((Lbr,sZe)=>{"use strict";sZe.exports=oZe()});var dZe=ye((Pbr,hZe)=>{"use strict";var uZe=ec(),cZe=Eh(),b$=Rd(),EYt=df().descriptionWithDates,CYt=mc().overrideAll,fZe=Pd().dash,w$=Ao().extendFlat;hZe.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:uZe({editType:"calc"}),offset:{valType:"number",dflt:10,editType:"calc"},editType:"calc"},type:{valType:"enumerated",values:["-","linear","date","category"],dflt:"-",editType:"calc"},autotypenumbers:b$.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:w$({},b$.labelalias,{editType:"calc"}),tickfont:uZe({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:EYt("tick label")},tickformatstops:CYt(b$.tickformatstops,"calc","from-root"),categoryorder:{valType:"enumerated",values:["trace","category ascending","category descending","array"],dflt:"trace",editType:"calc"},categoryarray:{valType:"data_array",editType:"calc"},labelpadding:{valType:"integer",dflt:10,editType:"calc"},labelprefix:{valType:"string",editType:"calc"},labelsuffix:{valType:"string",dflt:"",editType:"calc"},showline:{valType:"boolean",dflt:!1,editType:"calc"},linecolor:{valType:"color",dflt:cZe.defaultLine,editType:"calc"},linewidth:{valType:"number",min:0,dflt:1,editType:"calc"},gridcolor:{valType:"color",editType:"calc"},gridwidth:{valType:"number",min:0,dflt:1,editType:"calc"},griddash:w$({},fZe,{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:w$({},fZe,{editType:"calc"}),minorgridcolor:{valType:"color",dflt:cZe.lightLine,editType:"calc"},startline:{valType:"boolean",editType:"calc"},startlinecolor:{valType:"color",editType:"calc"},startlinewidth:{valType:"number",dflt:1,editType:"calc"},endline:{valType:"boolean",editType:"calc"},endlinewidth:{valType:"number",dflt:1,editType:"calc"},endlinecolor:{valType:"color",editType:"calc"},tick0:{valType:"number",min:0,dflt:0,editType:"calc"},dtick:{valType:"number",min:0,dflt:1,editType:"calc"},arraytick0:{valType:"integer",min:0,dflt:0,editType:"calc"},arraydtick:{valType:"integer",min:1,dflt:1,editType:"calc"},editType:"calc"}});var N7=ye((Ibr,gZe)=>{"use strict";var kYt=ec(),vZe=dZe(),pZe=Eh(),B7=kYt({editType:"calc"}),LYt=pf().zorder;B7.family.dflt='"Open Sans", verdana, arial, sans-serif';B7.size.dflt=12;B7.color.dflt=pZe.defaultLine;gZe.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:vZe,baxis:vZe,font:B7,color:{valType:"color",dflt:pZe.defaultLine,editType:"plot"},zorder:LYt}});var _Ze=ye((Rbr,yZe)=>{"use strict";var mZe=Dr().isArray1D;yZe.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||mZe(i))&&(!s||mZe(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 wZe=ye((Dbr,bZe)=>{"use strict";var PYt=N7(),xZe=Ca().addOpacity,IYt=qa(),nk=Dr(),RYt=xb(),DYt=t_(),FYt=r_(),zYt=iI(),OYt=ym(),qYt=L3();bZe.exports=function(t,r,n){var i=n.letter,a=n.font||{},o=PYt[i+"axis"];function s(g,P){return nk.coerce(t,r,o,g,P)}function l(g,P){return nk.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&&BYt(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=IYt.getComponentMethod("calendars","handleDefaults");c(t,r,"calendar",n.calendar)}OYt(r,n.fullLayout),r.c2p=nk.identity;var f=s("color",n.dfltColor),h=f===t.color?f:a.color,d=s("title.text");d&&(nk.coerceFont(s,"title.font",a,{overrideDflt:{size:nk.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"),RYt(t,r,s,u),FYt(t,r,s,u,n),DYt(t,r,s,u,n),zYt(t,r,s,{data:n.data,dataAttr:i});var x=l("gridcolor",xZe(f,.3)),b=l("gridwidth"),p=l("griddash"),C=s("showgrid");C||(delete r.gridcolor,delete r.gridwidth,delete r.griddash);var E=l("startlinecolor",f),A=l("startlinewidth",b),L=s("startline",r.showgrid||!!E||!!A);L||(delete r.startlinecolor,delete r.startlinewidth);var _=l("endlinecolor",f),k=l("endlinewidth",b),M=s("endline",r.showgrid||!!_||!!k);return M||(delete r.endlinecolor,delete r.endlinewidth),C?(s("minorgridcount"),s("minorgridwidth",b),s("minorgriddash",p),s("minorgridcolor",xZe(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 BYt(e,t){if(e.type==="-"){var r=e._id,n=r.charAt(0),i=n+"calendar",a=e[i];e.type=qYt(t,a,{autotypenumbers:e.autotypenumbers})}}});var AZe=ye((Fbr,TZe)=>{"use strict";var NYt=wZe(),UYt=pl();TZe.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")),VYt(t,r,n,a)};function VYt(e,t,r,n){var i=["aaxis","baxis"];i.forEach(function(a){var o=a.charAt(0),s=e[a]||{},l=UYt.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};NYt(s,l,u),l._categories=l._categories||[],!e[a]&&s.type!=="-"&&(e[a]={type:s.type})})}});var EZe=ye((zbr,MZe)=>{"use strict";var SZe=Dr(),GYt=_Ze(),HYt=AZe(),jYt=N7(),WYt=Eh();MZe.exports=function(t,r,n,i){function a(l,u){return SZe.coerce(t,r,jYt,l,u)}r._clipPathId="clip"+r.uid+"carpet";var o=a("color",WYt.defaultLine);if(SZe.coerceFont(a,"font",i.font),a("carpet"),HYt(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=GYt(t,r,a);s||(r.visible=!1),r._cheater&&a("cheaterslope"),a("zorder")}});var T$=ye((Obr,CZe)=>{"use strict";var XYt=Dr().isArrayOrTypedArray;CZe.exports=function(t,r,n){var i;for(XYt(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 A$=ye((qbr,kZe)=>{"use strict";kZe.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 PZe=ye((Bbr,LZe)=>{"use strict";LZe.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 BZe=ye((Nbr,qZe)=>{"use strict";var H7=Oa(),U7=So(),V7=T$(),DZe=A$(),ak=PZe(),S$=iu(),Np=Dr(),FZe=Np.strRotate,G7=Np.strTranslate,zZe=Kh();qZe.exports=function(t,r,n,i){var a=t._context.staticPlot,o=r.xaxis,s=r.yaxis,l=t._fullLayout,u=l._clips;Np.makeTraceGroups(i,n,"trace").each(function(c){var f=H7.select(this),h=c[0],d=h.trace,v=d.aaxis,x=d.baxis,b=Np.ensureSingle(f,"g","minorlayer"),p=Np.ensureSingle(f,"g","majorlayer"),C=Np.ensureSingle(f,"g","boundarylayer"),E=Np.ensureSingle(f,"g","labellayer");f.style("opacity",d.opacity),z5(o,s,p,v,"a",v._gridlines,!0,a),z5(o,s,p,x,"b",x._gridlines,!0,a),z5(o,s,b,v,"a",v._minorgridlines,!0,a),z5(o,s,b,x,"b",x._minorgridlines,!0,a),z5(o,s,C,v,"a-boundary",v._boundarylines,a),z5(o,s,C,x,"b-boundary",x._boundarylines,a);var A=IZe(t,o,s,d,h,E,v._labels,"a-label"),L=IZe(t,o,s,d,h,E,x._labels,"b-label");YYt(t,E,d,h,o,s,A,L),ZYt(d,h,u,o,s)})};function ZYt(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=Np.ensureSingle(u,"path","carpetboundary"),f=t.clipsegments,h=[];for(l=0;l<f.length;l++)a=f[l],o=V7([],a.x,n.c2p),s=V7([],a.y,i.c2p),h.push(DZe(o,s,a.bicubic));var d="M"+h.join("L")+"Z";u.attr("id",e._clipPathId),c.attr("d",d)}function z5(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=V7([],f,e.c2p),v=V7([],h,t.c2p),x="M"+DZe(d,v,c.smoothing),b=H7.select(this);b.attr("d",x).style("stroke-width",c.width).style("stroke",c.color).style("stroke-dasharray",U7.dashStyle(c.dash,c.width)).style("fill","none")}),l.exit().remove()}function IZe(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=ak(n,t,r,f.xy,f.dxy);else{var v=(f.axis.tickangle+180)*Math.PI/180;d=ak(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=H7.select(this).attr({"text-anchor":x>0?"start":"end","data-notex":1}).call(U7.font,f.font).text(f.text).call(S$.convertToTspans,e),p=U7.bBox(this);b.attr("transform",G7(d.p[0],d.p[1])+FZe(d.angle)+G7(f.axis.labelpadding*x,p.height*.3)),u=Math.max(u,p.width+f.axis.labelpadding)}),l.exit().remove(),c.maxExtent=u,c}function YYt(e,t,r,n,i,a,o,s){var l,u,c,f,h=Np.aggNums(Math.min,null,r.a),d=Np.aggNums(Math.max,null,r.a),v=Np.aggNums(Math.min,null,r.b),x=Np.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&&Np.extendFlat(o,ak(r,i,a,c,r.dxydb_rough(l,u))),RZe(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&&Np.extendFlat(s,ak(r,i,a,c,r.dxyda_rough(l,u))),RZe(e,t,r,n,c,f,r.baxis,i,a,s,"b-title")}var OZe=zZe.LINE_SPACING,KYt=(1-zZe.MID_SHIFT)/OZe+1;function RZe(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=ak(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,C=p>90&&p<270,E=H7.select(this);E.text(o.title.text).call(S$.convertToTspans,e),C&&(d=(-S$.lineCount(E)+KYt)*OZe*x-d),E.attr("transform",G7(v.p[0],v.p[1])+FZe(v.angle)+G7(0,d)).attr("text-anchor","middle").call(U7.font,o.title.font)}),h.exit().remove()}});var UZe=ye((Ubr,NZe)=>{"use strict";var j7=Dr().isArrayOrTypedArray;NZe.exports=function(e,t,r){var n,i,a,o,s,l,u=[],c=j7(e)?e.length:e,f=j7(t)?t.length:t,h=j7(e)?e:null,d=j7(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),C=-x*p;for(i=0;i<f;i++)for(n=0;n<c;n++)u[i][n]=p*u[i][n]+C;return u}});var jZe=ye((Vbr,HZe)=>{"use strict";var VZe=Dr().isArrayOrTypedArray;HZe.exports=function(e){return GZe(e,0)};function GZe(e,t){if(!VZe(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(VZe(o)){var s=GZe(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 XZe=ye((Gbr,WZe)=>{"use strict";var JYt=ho(),Cx=Ao().extendFlat;WZe.exports=function(t,r,n){var i,a,o,s,l,u,c,f,h,d,v,x,b,p,C=t["_"+r],E=t[r+"axis"],A=E._gridlines=[],L=E._minorgridlines=[],_=E._boundarylines=[],k=t["_"+n],M=t[n+"axis"];E.tickmode==="array"&&(E.tickvals=C.slice());var g=t._xctrl,P=t._yctrl,T=g[0].length,z=g.length,O=t._a.length,V=t._b.length;JYt.prepTicks(E),E.tickmode==="array"&&delete E.tickvals;var G=E.smoothing?3:1;function Z(N){var j,re,oe,_e,Me,ke,me,ie,Se,Le,Ae,De,Pe=[],ge=[],Fe={};if(r==="b")for(re=t.b2j(N),oe=Math.floor(Math.max(0,Math.min(V-2,re))),_e=re-oe,Fe.length=V,Fe.crossLength=O,Fe.xy=function(ce){return t.evalxy([],ce,re)},Fe.dxy=function(ce,Ze){return t.dxydi([],ce,oe,Ze,_e)},j=0;j<O;j++)ke=Math.min(O-2,j),me=j-ke,ie=t.evalxy([],j,re),M.smoothing&&j>0&&(Se=t.dxydi([],j-1,oe,0,_e),Pe.push(Me[0]+Se[0]/3),ge.push(Me[1]+Se[1]/3),Le=t.dxydi([],j-1,oe,1,_e),Pe.push(ie[0]-Le[0]/3),ge.push(ie[1]-Le[1]/3)),Pe.push(ie[0]),ge.push(ie[1]),Me=ie;else for(j=t.a2i(N),ke=Math.floor(Math.max(0,Math.min(O-2,j))),me=j-ke,Fe.length=O,Fe.crossLength=V,Fe.xy=function(ce){return t.evalxy([],j,ce)},Fe.dxy=function(ce,Ze){return t.dxydj([],ke,ce,me,Ze)},re=0;re<V;re++)oe=Math.min(V-2,re),_e=re-oe,ie=t.evalxy([],j,re),M.smoothing&&re>0&&(Ae=t.dxydj([],ke,re-1,me,0),Pe.push(Me[0]+Ae[0]/3),ge.push(Me[1]+Ae[1]/3),De=t.dxydj([],ke,re-1,me,1),Pe.push(ie[0]-De[0]/3),ge.push(ie[1]-De[1]/3)),Pe.push(ie[0]),ge.push(ie[1]),Me=ie;return Fe.axisLetter=r,Fe.axis=E,Fe.crossAxis=M,Fe.value=N,Fe.constvar=n,Fe.index=f,Fe.x=Pe,Fe.y=ge,Fe.smoothing=M.smoothing,Fe}function H(N){var j,re,oe,_e,Me,ke=[],me=[],ie={};if(ie.length=C.length,ie.crossLength=k.length,r==="b")for(oe=Math.max(0,Math.min(V-2,N)),Me=Math.min(1,Math.max(0,N-oe)),ie.xy=function(Se){return t.evalxy([],Se,N)},ie.dxy=function(Se,Le){return t.dxydi([],Se,oe,Le,Me)},j=0;j<T;j++)ke[j]=g[N*G][j],me[j]=P[N*G][j];else for(re=Math.max(0,Math.min(O-2,N)),_e=Math.min(1,Math.max(0,N-re)),ie.xy=function(Se){return t.evalxy([],N,Se)},ie.dxy=function(Se,Le){return t.dxydj([],re,Se,_e,Le)},j=0;j<z;j++)ke[j]=g[j][N*G],me[j]=P[j][N*G];return ie.axisLetter=r,ie.axis=E,ie.crossAxis=M,ie.value=C[N],ie.constvar=n,ie.index=N,ie.x=ke,ie.y=me,ie.smoothing=M.smoothing,ie}if(E.tickmode==="array"){for(s=5e-15,l=[Math.floor((C.length-1-E.arraytick0)/E.arraydtick*(1+s)),Math.ceil(-E.arraytick0/E.arraydtick/(1+s))].sort(function(N,j){return N-j}),u=l[0]-1,c=l[1]+1,f=u;f<c;f++)a=E.arraytick0+E.arraydtick*f,!(a<0||a>C.length-1)&&A.push(Cx(H(a),{color:E.gridcolor,width:E.gridwidth,dash:E.griddash}));for(f=u;f<c;f++)if(o=E.arraytick0+E.arraydtick*f,v=Math.min(o+E.arraydtick,C.length-1),!(o<0||o>C.length-1)&&!(v<0||v>C.length-1))for(x=C[o],b=C[v],i=0;i<E.minorgridcount;i++)p=v-o,!(p<=0)&&(d=x+(b-x)*(i+1)/(E.minorgridcount+1)*(E.arraydtick/p),!(d<C[0]||d>C[C.length-1])&&L.push(Cx(Z(d),{color:E.minorgridcolor,width:E.minorgridwidth,dash:E.minorgriddash})));E.startline&&_.push(Cx(H(0),{color:E.startlinecolor,width:E.startlinewidth})),E.endline&&_.push(Cx(H(C.length-1),{color:E.endlinecolor,width:E.endlinewidth}))}else{for(s=5e-15,l=[Math.floor((C[C.length-1]-E.tick0)/E.dtick*(1+s)),Math.ceil((C[0]-E.tick0)/E.dtick/(1+s))].sort(function(N,j){return N-j}),u=l[0],c=l[1],f=u;f<=c;f++)h=E.tick0+E.dtick*f,A.push(Cx(Z(h),{color:E.gridcolor,width:E.gridwidth,dash:E.griddash}));for(f=u-1;f<c+1;f++)for(h=E.tick0+E.dtick*f,i=0;i<E.minorgridcount;i++)d=h+E.dtick*(i+1)/(E.minorgridcount+1),!(d<C[0]||d>C[C.length-1])&&L.push(Cx(Z(d),{color:E.minorgridcolor,width:E.minorgridwidth,dash:E.minorgriddash}));E.startline&&_.push(Cx(Z(C[0]),{color:E.startlinecolor,width:E.startlinewidth})),E.endline&&_.push(Cx(Z(C[C.length-1]),{color:E.endlinecolor,width:E.endlinewidth}))}}});var JZe=ye((Hbr,KZe)=>{"use strict";var ZZe=ho(),YZe=Ao().extendFlat;KZe.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=ZZe.tickText(r,s.value),YZe(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=ZZe.tickText(r,s.value),YZe(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 QZe=ye((jbr,$Ze)=>{"use strict";$Ze.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 tYe=ye((Wbr,eYe)=>{"use strict";var $Yt=Dr();eYe.exports=function(t,r,n){var i,a,o,s=[],l=[],u=t[0].length,c=t.length;function f(oe,_e){var Me=0,ke,me=0;return oe>0&&(ke=t[_e][oe-1])!==void 0&&(me++,Me+=ke),oe<u-1&&(ke=t[_e][oe+1])!==void 0&&(me++,Me+=ke),_e>0&&(ke=t[_e-1][oe])!==void 0&&(me++,Me+=ke),_e<c-1&&(ke=t[_e+1][oe])!==void 0&&(me++,Me+=ke),Me/Math.max(1,me)}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,C,E,A,L,_,k,M=1e-5,g=0,P=100,T=0,z=s.length;do{for(g=0,o=0;o<z;o++){i=s[o],a=l[o];var O=0,V=0,G,Z,H,N,j,re;i===0?(j=Math.min(u-1,2),H=r[j],N=r[1],G=t[a][j],Z=t[a][1],V+=Z+(Z-G)*(r[0]-N)/(N-H),O++):i===u-1&&(j=Math.max(0,u-3),H=r[j],N=r[u-2],G=t[a][j],Z=t[a][u-2],V+=Z+(Z-G)*(r[u-1]-N)/(N-H),O++),(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),O++),a===0?(re=Math.min(c-1,2),H=n[re],N=n[1],G=t[re][i],Z=t[1][i],V+=Z+(Z-G)*(n[0]-N)/(N-H),O++):a===c-1&&(re=Math.max(0,c-3),H=n[re],N=n[c-2],G=t[re][i],Z=t[c-2][i],V+=Z+(Z-G)*(n[c-1]-N)/(N-H),O++),(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),O++),O?V/=O:(x=r[i+1]-r[i],b=r[i]-r[i-1],p=n[a+1]-n[a],C=n[a]-n[a-1],E=x*b*(x+b),A=p*C*(p+C),V=(E*(C*t[a+1][i]+p*t[a-1][i])+A*(b*t[a][i+1]+x*t[a][i-1]))/(A*(b+x)+E*(C+p))),L=V-t[a][i],_=L/h,g+=_*_,k=O?0:.85,t[a][i]+=L*(1+k)}g=Math.sqrt(g)}while(T++<P&&g>M);return $Yt.log("Smoother converged to",g,"after",T,"iterations"),t}});var iYe=ye((Xbr,rYe)=>{"use strict";rYe.exports={RELATIVE_CULL_TOLERANCE:1e-6}});var oYe=ye((Zbr,aYe)=>{"use strict";var nYe=.5;aYe.exports=function(t,r,n,i){var a=t[0]-r[0],o=t[1]-r[1],s=n[0]-r[0],l=n[1]-r[1],u=Math.pow(a*a+o*o,nYe/2),c=Math.pow(s*s+l*l,nYe/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 lYe=ye((Ybr,sYe)=>{"use strict";var M$=oYe(),W7=Dr().ensureArray;function O5(e,t,r){var n=-.5*r[0]+1.5*t[0],i=-.5*r[1]+1.5*t[1];return[(2*n+e[0])/3,(2*i+e[1])/3]}sYe.exports=function(t,r,n,i,a,o){var s,l,u,c,f,h,d,v,x,b,p=n[0].length,C=n.length,E=a?3*p-2:p,A=o?3*C-2:C;for(t=W7(t,A),r=W7(r,A),u=0;u<A;u++)t[u]=W7(t[u],E),r[u]=W7(r[u],E);for(l=0,c=0;l<C;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<C;l++,c+=o?3:1){for(s=1,u=3;s<p-1;s++,u+=3)x=M$([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=O5([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=O5([t[c][E-1],r[c][E-1]],[t[c][E-3],r[c][E-3]],[t[c][E-4],r[c][E-4]]),t[c][E-2]=b[0],r[c][E-2]=b[1]}if(o)for(u=0;u<E;u++){for(c=3;c<A-3;c+=3)x=M$([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=O5([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=O5([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<E-3;u+=3)x=M$([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=O5([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=O5([t[c][E-1],r[c][E-1]],[t[c][E-3],r[c][E-3]],[t[c][E-4],r[c][E-4]]),t[c][E-2]=.5*(t[c][E-2]+b[0]),r[c][E-2]=.5*(r[c][E-2]+b[1])}return[t,r]}});var cYe=ye((Kbr,uYe)=>{"use strict";uYe.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)),C=Math.max(0,Math.min(1,l-b)),E=Math.max(0,Math.min(1,u-p));b*=3,p*=3;var A=C*C,L=A*C,_=1-C,k=_*_,M=k*_,g=E*E,P=g*E,T=1-E,z=T*T,O=z*T;for(x=0;x<e.length;x++)v=e[x],c=M*v[p][b]+3*(k*C*v[p][b+1]+_*A*v[p][b+2])+L*v[p][b+3],f=M*v[p+1][b]+3*(k*C*v[p+1][b+1]+_*A*v[p+1][b+2])+L*v[p+1][b+3],h=M*v[p+2][b]+3*(k*C*v[p+2][b+1]+_*A*v[p+2][b+2])+L*v[p+2][b+3],d=M*v[p+3][b]+3*(k*C*v[p+3][b+1]+_*A*v[p+3][b+2])+L*v[p+3][b+3],s[x]=O*c+3*(z*E*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,C,E;c*=3;var A=h*h,L=A*h,_=1-h,k=_*_,M=k*_,g=1-d;for(C=0;C<e.length;C++)E=e[C],v=g*E[f][c]+d*E[f+1][c],x=g*E[f][c+1]+d*E[f+1][c+1],b=g*E[f][c+2]+d*E[f+1][c+1],p=g*E[f][c+3]+d*E[f+1][c+1],s[C]=M*v+3*(k*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,C,E;f*=3;var A=d*d,L=A*d,_=1-d,k=_*_,M=k*_,g=1-h;for(C=0;C<e.length;C++)E=e[C],v=g*E[f][c]+h*E[f][c+1],x=g*E[f+1][c]+h*E[f+1][c+1],b=g*E[f+2][c]+h*E[f+2][c+1],p=g*E[f+3][c]+h*E[f+3][c+1],s[C]=M*v+3*(k*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,C=1-d,E=1-h;for(b=0;b<e.length;b++)p=e[b],v=E*p[f][c]+h*p[f][c+1],x=E*p[f+1][c]+h*p[f+1][c+1],s[b]=C*v+d*x;return s}}});var hYe=ye((Jbr,fYe)=>{"use strict";fYe.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,C=-3*b,E=3*(b-p),A=3*(p-v),L=3*v,_=s*s,k=_*s,M=1-s,g=M*M,P=g*M;for(d=0;d<e.length;d++)h=e[d],l=C*h[a][i]+E*h[a][i+1]+A*h[a][i+2]+L*h[a][i+3],u=C*h[a+1][i]+E*h[a+1][i+1]+A*h[a+1][i+2]+L*h[a+1][i+3],c=C*h[a+2][i]+E*h[a+2][i+1]+A*h[a+2][i+2]+L*h[a+2][i+3],f=C*h[a+3][i]+E*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)+k*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),C=3*(x-h),E=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]+C*f[a][i+2]+E*f[a][i+3],u=b*f[a+1][i]+p*f[a+1][i+1]+C*f[a+1][i+2]+E*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,C=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]=C*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 vYe=ye(($br,dYe)=>{"use strict";dYe.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,C=p*b,E=s*s,A=1-s,L=A*A,_=A*s*2,k=-3*L,M=3*(L-_),g=3*(_-E),P=3*E;for(d=0;d<e.length;d++)h=e[d],l=k*h[a][i]+M*h[a+1][i]+g*h[a+2][i]+P*h[a+3][i],u=k*h[a][i+1]+M*h[a+1][i+1]+g*h[a+2][i+1]+P*h[a+3][i+1],c=k*h[a][i+2]+M*h[a+1][i+2]+g*h[a+2][i+2]+P*h[a+3][i+2],f=k*h[a][i+3]+M*h[a+1][i+3]+g*h[a+2][i+3]+P*h[a+3][i+3],n[d]=C*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,C=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]=C*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,C=3*(x-b),E=3*(b-d),A=3*d;for(c=0;c<e.length;c++)f=e[c],l=p*f[a][i]+C*f[a+1][i]+E*f[a+2][i]+A*f[a+3][i],u=p*f[a][i+1]+C*f[a+1][i+1]+E*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 yYe=ye((Qbr,mYe)=>{"use strict";var pYe=iYe(),gYe=P6().findBin,QYt=lYe(),eKt=cYe(),tKt=hYe(),rKt=vYe();mYe.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*pYe.RELATIVE_CULL_TOLERANCE,x=d*pYe.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,C=QYt(t._xctrl,t._yctrl,b,p,o.smoothing,s.smoothing);t._xctrl=C[0],t._yctrl=C[1],t.evalxy=eKt([t._xctrl,t._yctrl],i,a,o.smoothing,s.smoothing),t.dxydi=tKt([t._xctrl,t._yctrl],o.smoothing,s.smoothing),t.dxydj=rKt([t._xctrl,t._yctrl],o.smoothing,s.smoothing)},t.i2a=function(b){var p=Math.max(0,Math.floor(b[0]),i-2),C=b[0]-p;return(1-C)*r[p]+C*r[p+1]},t.j2b=function(b){var p=Math.max(0,Math.floor(b[1]),i-2),C=b[1]-p;return(1-C)*n[p]+C*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(gYe(b,r),i-2)),C=r[p],E=r[p+1];return Math.max(0,Math.min(i-1,p+(b-C)/(E-C)))},t.b2j=function(b){var p=Math.max(0,Math.min(gYe(b,n),a-2)),C=n[p],E=n[p+1];return Math.max(0,Math.min(a-1,p+(b-C)/(E-C)))},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,C){if(!C&&(b<r[0]||b>r[i-1]|p<n[0]||p>n[a-1]))return[!1,!1];var E=t.a2i(b),A=t.b2j(p),L=t.evalxy([],E,A);if(C){var _=0,k=0,M=[],g,P,T,z;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(E))),P=E-g),p<n[0]?(T=0,z=0,k=(p-n[0])/(n[1]-n[0])):p>n[a-1]?(T=a-2,z=1,k=(p-n[a-1])/(n[a-1]-n[a-2])):(T=Math.max(0,Math.min(a-2,Math.floor(A))),z=A-T),_&&(t.dxydi(M,g,T,P,z),L[0]+=M[0]*_,L[1]+=M[1]*_),k&&(t.dxydj(M,g,T,P,z),L[0]+=M[0]*k,L[1]+=M[1]*k)}return L},t.c2p=function(b,p,C){return[p.c2p(b[0]),C.c2p(b[1])]},t.p2x=function(b,p,C){return[p.p2c(b[0]),C.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,C,E){var A=t.dxydi(null,b,p,C,E),L=t.dadi(b,C);return[A[0]/L,A[1]/L]},t.dxydb=function(b,p,C,E){var A=t.dxydj(null,b,p,C,E),L=t.dbdj(p,E);return[A[0]/L,A[1]/L]},t.dxyda_rough=function(b,p,C){var E=h*(C||.1),A=t.ab2xy(b+E,p,!0),L=t.ab2xy(b-E,p,!0);return[(A[0]-L[0])*.5/E,(A[1]-L[1])*.5/E]},t.dxydb_rough=function(b,p,C){var E=d*(C||.1),A=t.ab2xy(b,p+E,!0),L=t.ab2xy(b,p-E,!0);return[(A[0]-L[0])*.5/E,(A[1]-L[1])*.5/E]},t.dpdx=function(b){return b._m},t.dpdy=function(b){return b._m}}});var MYe=ye((e2r,SYe)=>{"use strict";var X7=ho(),_Ye=Dr().isArray1D,iKt=UZe(),xYe=jZe(),bYe=XZe(),wYe=JZe(),nKt=QZe(),TYe=r8(),AYe=tYe(),aKt=e8(),oKt=yYe();SYe.exports=function(t,r){var n=X7.getFromId(t,r.xaxis),i=X7.getFromId(t,r.yaxis),a=r.aaxis,o=r.baxis,s=r.x,l=r.y,u=[];s&&_Ye(s)&&u.push("x"),l&&_Ye(l)&&u.push("y"),u.length&&aKt(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=iKt(d,v,r.cheaterslope)}r._x=s=TYe(s),r._y=l=TYe(l),AYe(s,c,f),AYe(l,c,f),oKt(r),r.setScale();var x=xYe(s),b=xYe(l),p=.5*(x[1]-x[0]),C=.5*(x[1]+x[0]),E=.5*(b[1]-b[0]),A=.5*(b[1]+b[0]),L=1.3;return x=[C-p*L,C+p*L],b=[A-E*L,A+E*L],r._extremes[n._id]=X7.findExtremes(n,x,{padded:!0}),r._extremes[i._id]=X7.findExtremes(i,b,{padded:!0}),bYe(r,"a","b"),bYe(r,"b","a"),wYe(r,a),wYe(r,o),h.clipsegments=nKt(r._xctrl,r._yctrl,a,o),h.x=s,h.y=l,h.a=c,h.b=f,[h]}});var CYe=ye((t2r,EYe)=>{"use strict";EYe.exports={attributes:N7(),supplyDefaults:EZe(),plot:BZe(),calc:MYe(),animatable:!0,isContainer:!0,moduleType:"trace",name:"carpet",basePlotModule:vh(),categories:["cartesian","svg","carpet","carpetAxis","notLegendIsolatable","noMultiCategory","noHover","noSortingByValue"],meta:{}}});var LYe=ye((r2r,kYe)=>{"use strict";kYe.exports=CYe()});var E$=ye((i2r,IYe)=>{"use strict";var sKt=Eg(),u0=pf(),lKt=Vl(),uKt=Qo().hovertemplateAttrs,cKt=Qo().texttemplateAttrs,PYe=Tu(),kx=Ao().extendFlat,sg=u0.marker,q5=u0.line,fKt=sg.line;IYe.exports={carpet:{valType:"string",editType:"calc"},a:{valType:"data_array",editType:"calc"},b:{valType:"data_array",editType:"calc"},mode:kx({},u0.mode,{dflt:"markers"}),text:kx({},u0.text,{}),texttemplate:cKt({editType:"plot"},{keys:["a","b","text"]}),hovertext:kx({},u0.hovertext,{}),line:{color:q5.color,width:q5.width,dash:q5.dash,backoff:q5.backoff,shape:kx({},q5.shape,{values:["linear","spline"]}),smoothing:q5.smoothing,editType:"calc"},connectgaps:u0.connectgaps,fill:kx({},u0.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:sKt(),marker:kx({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:kx({width:fKt.width,editType:"calc"},PYe("marker.line")),gradient:sg.gradient,editType:"calc"},PYe("marker")),textfont:u0.textfont,textposition:u0.textposition,selected:u0.selected,unselected:u0.unselected,hoverinfo:kx({},lKt.hoverinfo,{flags:["a","b","text","name"]}),hoveron:u0.hoveron,hovertemplate:uKt(),zorder:u0.zorder}});var zYe=ye((n2r,FYe)=>{"use strict";var RYe=Dr(),hKt=Sm(),B5=Ru(),dKt=$p(),vKt=R0(),DYe=J3(),pKt=D0(),gKt=Ig(),mKt=E$();FYe.exports=function(t,r,n,i){function a(h,d){return RYe.coerce(t,r,mKt,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<hKt.PTS_LINESONLY?"lines+markers":"lines";a("mode",u),B5.hasMarkers(r)&&dKt(t,r,n,i,a,{gradient:!0}),B5.hasLines(r)&&(vKt(t,r,n,i,a,{backoff:!0}),DYe(t,r,a),a("connectgaps")),B5.hasText(r)&&pKt(t,r,i,a);var c=[];(B5.hasMarkers(r)||B5.hasText(r))&&(a("marker.maxdisplayed"),c.push("points")),a("fill"),r.fill!=="none"&&(gKt(t,r,n,a),B5.hasLines(r)||DYe(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"),RYe.coerceSelectionMarkerOpacity(r,a)}});var qYe=ye((a2r,OYe)=>{"use strict";OYe.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 Z7=ye((o2r,BYe)=>{"use strict";BYe.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 VYe=ye((s2r,UYe)=>{"use strict";var NYe=Eo(),yKt=F0(),_Kt=Cm(),xKt=z0(),bKt=O0().calcMarkerSize,wKt=Z7();UYe.exports=function(t,r){var n=r._carpetTrace=wKt(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],NYe(s)&&NYe(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,bKt(r,a),yKt(t,r),_Kt(o,r),xKt(o,r),o}}});var jYe=ye((l2r,HYe)=>{"use strict";var TKt=iT(),GYe=ho(),AKt=So();HYe.exports=function(t,r,n,i){var a,o,s,l=n[0][0].carpet,u=GYe.getFromId(t,l.xaxis||"x"),c=GYe.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(TKt(t,f,n,i),a=0;a<n.length;a++)o=n[a][0].trace,s=i.selectAll("g.trace"+o.uid+" .js-line"),AKt.setClipUrl(s,n[a][0].carpet._clipPathId,t)}});var XYe=ye((u2r,WYe)=>{"use strict";var SKt=sT(),MKt=Dr().fillText;WYe.exports=function(t,r,n,i){var a=SKt(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(E,A){var L;E.labelprefix&&E.labelprefix.length>0?L=E.labelprefix.replace(/ = $/,""):L=E._hovertitle,x.push(L+": "+A.toFixed(3)+E.labelsuffix)}if(!h.hovertemplate){var p=f.hi||h.hoverinfo,C=p.split("+");C.indexOf("all")!==-1&&(C=["a","b","text"]),C.indexOf("a")!==-1&&b(d.aaxis,f.a),C.indexOf("b")!==-1&&b(d.baxis,f.b),x.push("y: "+o.yLabel),C.indexOf("text")!==-1&&MKt(f,h,x),o.extraText=x.join("<br>")}return a}});var YYe=ye((c2r,ZYe)=>{"use strict";ZYe.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 JYe=ye((f2r,KYe)=>{"use strict";KYe.exports={attributes:E$(),supplyDefaults:zYe(),colorbar:$d(),formatLabels:qYe(),calc:VYe(),plot:jYe(),style:ap().style,styleOnSelect:ap().styleOnSelect,hoverPoints:XYe(),selectPoints:lT(),eventData:YYe(),moduleType:"trace",name:"scattercarpet",basePlotModule:vh(),categories:["svg","carpet","symbols","showLegend","carpetDependent","zoomScale"],meta:{}}});var QYe=ye((h2r,$Ye)=>{"use strict";$Ye.exports=JYe()});var C$=ye((d2r,eKe)=>{"use strict";var lg=ET(),g1=E4(),EKt=Tu(),CKt=Ao().extendFlat,ty=g1.contours;eKe.exports=CKt({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},EKt("",{cLetter:"z",autoColorDflt:!1}))});var k$=ye((v2r,iKe)=>{"use strict";var tKe=Dr(),kKt=JI(),rKe=C$(),LKt=TG(),PKt=b8(),IKt=w8();iKe.exports=function(t,r,n,i){function a(u,c){return tKe.coerce(t,r,rKe,u,c)}function o(u){return tKe.coerce2(t,r,rKe,u)}if(a("carpet"),t.a&&t.b){var s=kKt(t,r,a,i,"a","b");if(!s){r.visible=!1;return}a("text");var l=a("contours.type")==="constraint";l?LKt(t,r,a,i,n,{hasHover:!1}):(PKt(t,r,a,o),IKt(t,r,a,i,{hasHover:!1}))}else r._defaultColor=n,r._length=null;a("zorder")}});var sKe=ye((p2r,oKe)=>{"use strict";var RKt=Fv(),nKe=Dr(),DKt=e8(),FKt=r8(),zKt=i8(),OKt=n8(),aKe=WV(),qKt=k$(),BKt=Z7(),NKt=fG();oKe.exports=function(t,r){var n=r._carpetTrace=BKt(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),qKt(a,r,r._defaultColor,t._fullLayout)}var o=UKt(t,r);return NKt(r,r._z),o}};function UKt(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,nKe.isArray1D(t.z)&&DKt(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=FKt(t._z||t.z,t.transpose),t._emptypoints=OKt(f),zKt(f,t._emptypoints);var h=nKe.maxRowLength(f),d=t.xtype==="scaled"?"":a,v=aKe(t,d,o,s,h,n),x=t.ytype==="scaled"?"":l,b=aKe(t,x,u,c,f.length,i),p={a:v,b,z:f};return t.contours.type==="levels"&&t.contours.coloring!=="none"&&RKt(e,t,{vals:f,containerStr:"",cLetter:"z"}),[p]}});var uKe=ye((g2r,lKe)=>{"use strict";var VKt=Dr().isArrayOrTypedArray;lKe.exports=function(e,t,r,n){var i,a,o,s,l,u,c,f,h,d,v,x,b,p=VKt(r)?"a":"b",C=p==="a"?e.aaxis:e.baxis,E=C.smoothing,A=p==="a"?e.a2i:e.b2j,L=p==="a"?r:n,_=p==="a"?n:r,k=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)};E&&(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]),z=A(L[1]),O=T<z?1:-1,V=(z-T)*1e-8,G=O>0?Math.floor:Math.ceil,Z=O>0?Math.ceil:Math.floor,H=O>0?Math.min:Math.max,N=O>0?Math.max:Math.min,j=G(T+V),re=Z(z-V);c=P(T);var oe=[[c]];for(i=j;i*O<re*O;i+=O)l=[],v=N(T,i),x=H(z,i+O),b=x-v,u=Math.max(0,Math.min(k-2,Math.floor(.5*(v+x)))),f=P(x),E&&(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),oe.push(l),c=f;return oe}});var gKe=ye((m2r,pKe)=>{"use strict";var K7=Oa(),J7=T$(),vKe=A$(),ok=So(),m1=Dr(),GKt=dG(),HKt=vG(),hw=S8(),Y7=k4(),jKt=yG(),WKt=mG(),XKt=_G(),ZKt=Z7(),cKe=uKe();pKe.exports=function(t,r,n,i){var a=r.xaxis,o=r.yaxis;m1.makeTraceGroups(i,n,"contour").each(function(s){var l=K7.select(this),u=s[0],c=u.trace,f=c._carpetTrace=ZKt(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=WKt(x,r,u),p=x.type==="constraint",C=x._operation,E=p?C==="="?"lines":"fill":x.coloring;function A(G){var Z=f.ab2xy(G[0],G[1],!0);return[a.c2p(Z[0]),o.c2p(Z[1])]}var L=[[d[0],v[v.length-1]],[d[d.length-1],v[v.length-1]],[d[d.length-1],v[0]],[d[0],v[0]]];GKt(b);var _=(d[d.length-1]-d[0])*1e-8,k=(v[v.length-1]-v[0])*1e-8;HKt(b,_,k);var M=b;x.type==="constraint"&&(M=jKt(b,C)),YKt(b,A);var g,P,T,z,O=[];for(z=h.clipsegments.length-1;z>=0;z--)g=h.clipsegments[z],P=J7([],g.x,a.c2p),T=J7([],g.y,o.c2p),P.reverse(),T.reverse(),O.push(vKe(P,T,g.bicubic));var V="M"+O.join("L")+"Z";$Kt(l,h.clipsegments,a,o,p,E),QKt(c,l,a,o,M,L,A,f,h,E,V),KKt(l,b,t,u,x,r,f),ok.setClipUrl(l,f._clipPathId,t)})};function YKt(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 KKt(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,C=b._length,E=[[[0,0],[p,0],[p,C],[0,C]]],A=[];m1.clearLocationCache();var L=hw.labelFormatter(r,n),_=ok.tester.append("text").attr("data-notex",1).call(ok.font,i.labelfont),k={left:0,right:p,center:p/2,top:0,bottom:C,middle:C/2},M=Math.sqrt(p*p+C*C),g=Y7.LABELDISTANCE*M/Math.max(1,t.length/Y7.LABELINCREASE);h.each(function(P){var T=hw.calcTextOpts(P.level,L,_,r);K7.select(this).selectAll("path").each(function(z){var O=this,V=m1.getVisibleSegment(O,k,T.height/2);if(V&&(JKt(O,z,P,V,o,T.height),!(V.len<(T.width+T.height)*Y7.LABELMIN)))for(var G=Math.min(Math.ceil(V.len/g),Y7.LABELMAX),Z=0;Z<G;Z++){var H=hw.findBestTextLocation(O,V,T,A,k);if(!H)break;hw.addLabelData(H,T,A,E)}})}),_.remove(),hw.drawLabels(v,A,r,d,f?E:null)}c&&!u&&h.remove()}function JKt(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,C){var E=0,A,L=.1;return(Math.abs(p[0]-l)<L||Math.abs(p[0]-u)<L)&&(A=hKe(i.dxydb_rough(p[0],p[1],L)),E=Math.max(E,a*dKe(C,A)/2)),(Math.abs(p[1]-c)<L||Math.abs(p[1]-f)<L)&&(A=hKe(i.dxyda_rough(p[0],p[1],L)),E=Math.max(E,a*dKe(C,A)/2)),E}var d=fKe(e,0,1),v=fKe(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 fKe(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 hKe(e){var t=Math.sqrt(e[0]*e[0]+e[1]*e[1]);return[e[0]/t,e[1]/t]}function dKe(e,t){var r=Math.abs(e[0]*t[0]+e[1]*t[1]),n=Math.sqrt(1-r*r);return n/r}function $Kt(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=J7([],o.x,r.c2p),l=J7([],o.y,n.c2p),h.push(vKe(s,l,o.bicubic));f.attr("d","M"+h.join("L")+"Z").style("stroke","none")}function QKt(e,t,r,n,i,a,o,s,l,u,c){var f=u==="fill";f&&XKt(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:"")+eJt(e,v,a,o,s,l,r,n);x?K7.select(this).attr("d",x).style("stroke","none"):K7.select(this).remove()})}function eJt(e,t,r,n,i,a,o,s){var l,u="",c=t.edgepaths.map(function(T,z){return z}),f=!0,h,d,v,x,b,p,C=Math.abs(r[0][0]-r[2][0])*1e-4,E=Math.abs(r[0][1]-r[2][1])*1e-4;function A(T){return Math.abs(T[1]-r[0][1])<E}function L(T){return Math.abs(T[1]-r[2][1])<E}function _(T){return Math.abs(T[0]-r[0][0])<C}function k(T){return Math.abs(T[0]-r[2][0])<C}function M(T,z){var O,V,G,Z,H="";for(A(T)&&!k(T)||L(T)&&!_(T)?(Z=i.aaxis,G=cKe(i,a,[T[0],z[0]],.5*(T[1]+z[1]))):(Z=i.baxis,G=cKe(i,a,.5*(T[0]+z[0]),[T[1],z[1]])),O=1;O<G.length;O++)for(H+=Z.smoothing?"C":"L",V=0;V<G[O].length;V++){var N=G[O][V];H+=[o.c2p(N[0]),s.c2p(N[1])]+" "}return H}for(l=0,h=null;c.length;){var g=t.edgepaths[l][0];for(h&&(u+=M(h,g)),p=ok.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)&&!k(h)?d=r[1]:_(h)?d=r[0]:L(h)?d=r[3]:k(h)&&(d=r[2]),b=0;b<t.edgepaths.length;b++){var P=t.edgepaths[b][0];Math.abs(h[0]-d[0])<C?Math.abs(h[0]-P[0])<C&&(P[1]-h[1])*(d[1]-P[1])>=0&&(d=P,x=b):Math.abs(h[1]-d[1])<E?Math.abs(h[1]-P[1])<E&&(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+=ok.smoothclosed(t.paths[l].map(n),t.smoothing);return u}});var yKe=ye((y2r,mKe)=>{"use strict";mKe.exports={attributes:C$(),supplyDefaults:k$(),colorbar:C8(),calc:sKe(),plot:gKe(),style:E8(),moduleType:"trace",name:"contourcarpet",basePlotModule:vh(),categories:["cartesian","svg","carpet","contour","symbols","showLegend","hasLines","carpetDependent","noHover","noSortingByValue"],meta:{}}});var xKe=ye((_2r,_Ke)=>{"use strict";_Ke.exports=yKe()});var Q7=ye((x2r,SKe)=>{"use strict";var $7=Dr().extendFlat,sk=pf(),bKe=df().axisHoverFormat,TKe=Pd().dash,tJt=i3(),AKe=GT(),rJt=AKe.INCREASING.COLOR,iJt=AKe.DECREASING.COLOR,L$=sk.line;function wKe(e){return{line:{color:$7({},L$.color,{dflt:e}),width:L$.width,dash:TKe,editType:"style"},editType:"style"}}SKe.exports={xperiod:sk.xperiod,xperiod0:sk.xperiod0,xperiodalignment:sk.xperiodalignment,xhoverformat:bKe("x"),yhoverformat:bKe("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:$7({},L$.width,{}),dash:$7({},TKe,{}),editType:"style"},increasing:wKe(rJt),decreasing:wKe(iJt),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:$7({},tJt.hoverlabel,{split:{valType:"boolean",dflt:!1,editType:"style"}}),zorder:sk.zorder}});var P$=ye((b2r,MKe)=>{"use strict";var nJt=qa(),aJt=Dr();MKe.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=nJt.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,aJt.minRowLength(a))),r._length=f,f}}});var kKe=ye((w2r,CKe)=>{"use strict";var oJt=Dr(),sJt=P$(),lJt=Pg(),uJt=Q7();CKe.exports=function(t,r,n,i){function a(s,l){return oJt.coerce(t,r,uJt,s,l)}var o=sJt(t,r,a,i);if(!o){r.visible=!1;return}lJt(t,r,i,a,{x:!0}),a("xhoverformat"),a("yhoverformat"),a("line.width"),a("line.dash"),EKe(t,r,a,"increasing"),EKe(t,r,a,"decreasing"),a("text"),a("hovertext"),a("tickwidth"),i._requestRangeslider[r.xaxis]=!0,a("zorder")};function EKe(e,t,r,n){r(n+".line.color"),r(n+".line.width",t.line.width),r(n+".line.dash",t.line.dash)}});var I$=ye((T2r,PKe)=>{"use strict";var N5=Dr(),e9=N5._,t9=ho(),cJt=Rg(),lk=hs().BADNUM;function fJt(e,t){var r=t9.getFromId(e,t.xaxis),n=t9.getFromId(e,t.yaxis),i=dJt(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=LKe(e,t,o,s,n,hJt);return t._extremes[r._id]=t9.findExtremes(r,s,{vpad:a/2}),l.length?(N5.extendFlat(l[0].t,{wHover:a/2,tickLen:i}),l):[{t:{empty:!0}}]}function hJt(e,t,r,n){return{o:e,h:t,l:r,c:n}}function LKe(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=N5.isArrayOrTypedArray(t.text),f=N5.isArrayOrTypedArray(t.hovertext),h=!0,d=null,v=!!t.xperiodalignment,x=[],b=0;b<n.length;b++){var p=n[b],C=o[b],E=s[b],A=l[b],L=u[b];if(p!==lk&&C!==lk&&E!==lk&&A!==lk&&L!==lk){L===C?d!==null&&L!==d&&(h=L>d):h=L>C,d=L;var _=a(C,E,A,L);_.pos=p,_.yc=(C+L)/2,_.i=b,_.dir=h?"increasing":"decreasing",_.x=_.pos,_.y=[A,E],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]=t9.findExtremes(i,N5.concat(l,s),{padded:!0}),x.length&&(x[0].t={labels:{open:e9(e,"open:")+" ",high:e9(e,"high:")+" ",low:e9(e,"low:")+" ",close:e9(e,"close:")+" "}}),x}function dJt(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=cJt(r,t,"x",l).vals;s._xcalc=u;var c=N5.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}PKe.exports={calc:fJt,calcCommon:LKe}});var DKe=ye((A2r,RKe)=>{"use strict";var vJt=Oa(),IKe=Dr();RKe.exports=function(t,r,n,i){var a=r.yaxis,o=r.xaxis,s=!!o.rangebreaks;IKe.makeTraceGroups(i,n,"trace ohlc").each(function(l){var u=vJt.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(IKe.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),C=s?(b+p)/2:o.c2p(x.pos,!0),E=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+","+E+"H"+C+"M"+C+","+A+"V"+L+"M"+p+","+_+"H"+C})})}});var zKe=ye((S2r,FKe)=>{"use strict";var R$=Oa(),pJt=So(),gJt=Ca();FKe.exports=function(t,r,n){var i=n||R$.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;R$.select(this).selectAll("path").each(function(s){if(!s.empty){var l=o[s.dir].line;R$.select(this).style("fill","none").call(gJt.stroke,l.color).call(pJt.dashLine,l.dash,l.width).style("opacity",o.selectedpoints&&!s.selected?.3:1)}})})}});var F$=ye((M2r,UKe)=>{"use strict";var D$=ho(),mJt=Dr(),r9=vf(),yJt=Ca(),_Jt=Dr().fillText,OKe=GT(),xJt={increasing:OKe.INCREASING.SYMBOL,decreasing:OKe.DECREASING.SYMBOL};function bJt(e,t,r,n){var i=e.cd,a=i[0].trace;return a.hoverlabel.split?BKe(e,t,r,n):NKe(e,t,r,n)}function qKe(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 C(P){var T=v(P);return r9.inbox(T-b,T+b,f)}function E(P){var T=P[u],z=P[c];return T===z||r9.inbox(T-r,z-r,f)}function A(P){return(C(P)+E(P))/2}var L=r9.getDistanceFunction(n,C,E,A);if(r9.getClosest(i,L,e),e.index===!1)return null;var _=i[e.index];if(_.empty)return null;var k=_.dir,M=o[k],g=M.line.color;return yJt.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 BKe(e,t,r,n){var i=e.cd,a=e.ya,o=i[0].trace,s=i[0].t,l=[],u=qKe(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={},C=0;C<b.length;C++){var E=b[C],A=o[E][u.index],L=a.c2p(A,!0),_;A in p?(_=p[A],_.yLabel+="<br>"+s.labels[E]+D$.hoverLabelText(a,A,o.yhoverformat)):(_=mJt.extendFlat({},u),_.y0=_.y1=L,_.yLabelVal=A,_.yLabel=s.labels[E]+D$.hoverLabelText(a,A,o.yhoverformat),_.name="",l.push(_),p[A]=_)}return l}function NKe(e,t,r,n){var i=e.cd,a=e.ya,o=i[0].trace,s=i[0].t,l=qKe(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]+D$.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,C=b||x.indexOf("text")!==-1,E=p?[d("open"),d("high"),d("low"),d("close")+" "+xJt[h]]:[];return C&&_Jt(c,o,E),l.extraText=E.join("<br>"),l.y0=l.y1=a.c2p(c.yc,!0),[l]}UKe.exports={hoverPoints:bJt,hoverSplit:BKe,hoverOnPoints:NKe}});var z$=ye((E2r,VKe)=>{"use strict";VKe.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 HKe=ye((C2r,GKe)=>{"use strict";GKe.exports={moduleType:"trace",name:"ohlc",basePlotModule:vh(),categories:["cartesian","svg","showLegend"],meta:{},attributes:Q7(),supplyDefaults:kKe(),calc:I$().calc,plot:DKe(),style:zKe(),hoverPoints:F$().hoverPoints,selectPoints:z$()}});var WKe=ye((k2r,jKe)=>{"use strict";jKe.exports=HKe()});var q$=ye((L2r,YKe)=>{"use strict";var O$=Dr().extendFlat,XKe=df().axisHoverFormat,c0=Q7(),U5=y4();function ZKe(e){return{line:{color:O$({},U5.line.color,{dflt:e}),width:U5.line.width,editType:"style"},fillcolor:U5.fillcolor,editType:"style"}}YKe.exports={xperiod:c0.xperiod,xperiod0:c0.xperiod0,xperiodalignment:c0.xperiodalignment,xhoverformat:XKe("x"),yhoverformat:XKe("y"),x:c0.x,open:c0.open,high:c0.high,low:c0.low,close:c0.close,line:{width:O$({},U5.line.width,{}),editType:"style"},increasing:ZKe(c0.increasing.line.color.dflt),decreasing:ZKe(c0.decreasing.line.color.dflt),text:c0.text,hovertext:c0.hovertext,whiskerwidth:O$({},U5.whiskerwidth,{dflt:0}),hoverlabel:c0.hoverlabel,zorder:U5.zorder}});var $Ke=ye((P2r,JKe)=>{"use strict";var wJt=Dr(),TJt=Ca(),AJt=P$(),SJt=Pg(),MJt=q$();JKe.exports=function(t,r,n,i){function a(s,l){return wJt.coerce(t,r,MJt,s,l)}var o=AJt(t,r,a,i);if(!o){r.visible=!1;return}SJt(t,r,i,a,{x:!0}),a("xhoverformat"),a("yhoverformat"),a("line.width"),KKe(t,r,a,"increasing"),KKe(t,r,a,"decreasing"),a("text"),a("hovertext"),a("whiskerwidth"),i._requestRangeslider[r.xaxis]=!0,a("zorder")};function KKe(e,t,r,n){var i=r(n+".line.color");r(n+".line.width",t.line.width),r(n+".fillcolor",TJt.addOpacity(i,.5))}});var rJe=ye((I2r,tJe)=>{"use strict";var QKe=Dr(),eJe=ho(),EJt=Rg(),CJt=I$().calcCommon;tJe.exports=function(e,t){var r=e._fullLayout,n=eJe.getFromId(e,t.xaxis),i=eJe.getFromId(e,t.yaxis),a=n.makeCalcdata(t,"x"),o=EJt(t,n,"x",a).vals,s=CJt(e,t,a,o,i,kJt);return s.length?(QKe.extendFlat(s[0].t,{num:r._numBoxes,dPos:QKe.distinctVals(o).minDiff/2,posLetter:"x",valLetter:"y"}),r._numBoxes++,s):[{t:{empty:!0}}]};function kJt(e,t,r,n){return{min:r,q1:Math.min(e,n),med:n,q3:Math.max(e,n),max:t}}});var nJe=ye((R2r,iJe)=>{"use strict";iJe.exports={moduleType:"trace",name:"candlestick",basePlotModule:vh(),categories:["cartesian","svg","showLegend","candlestick","boxLayout"],meta:{},attributes:q$(),layoutAttributes:_4(),supplyLayoutDefaults:jI().supplyLayoutDefaults,crossTraceCalc:XI().crossTraceCalc,supplyDefaults:$Ke(),calc:rJe(),plot:ZI().plot,layerName:"boxlayer",style:YI().style,hoverPoints:F$().hoverPoints,selectPoints:z$()}});var oJe=ye((D2r,aJe)=>{"use strict";aJe.exports=nJe()});var N$=ye((F2r,sJe)=>{"use strict";var n9=Dr(),LJt=ym(),i9=n9.deg2rad,B$=n9.rad2deg;sJe.exports=function(t,r,n){switch(LJt(t,n),t._id){case"x":case"radialaxis":PJt(t,r);break;case"angularaxis":DJt(t,r);break}};function PJt(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 IJt(e,t){return t==="degrees"?i9(e):e}function RJt(e,t){return t==="degrees"?B$(e):e}function DJt(e,t){var r=e.type;if(r==="linear"){var n=e.d2c,i=e.c2d;e.d2c=function(a,o){return IJt(n(a),o)},e.c2d=function(a,o){return i(RJt(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(i9),s={clockwise:-1,counterclockwise:1}[e.direction],l=i9(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=n9.identity,v=i9,d=B$,e.range=n9.isFullCircle(o)?[a[0],a[0]+360]:o.map(c).map(B$);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 a9=ye((z2r,lJe)=>{"use strict";lJe.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 s9=ye((O2r,dJe)=>{"use strict";var dw=Dr(),uJe=MM().tester,U$=dw.findIndexOfMin,fJe=dw.isAngleInsideSector,FJt=dw.angleDelta,cJe=dw.angleDist;function zJt(e,t,r,n,i){if(!fJe(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=uJe(V5(a,n[0],n[1],i)),l=uJe(V5(o,n[0],n[1],i)),u=[e*Math.cos(t),e*Math.sin(t)];return l.contains(u)&&!s.contains(u)}function hJe(e,t,r,n){var i,a,o=n[0],s=n[1],l=o9(Math.sin(t)-Math.sin(e)),u=o9(Math.cos(t)-Math.cos(e)),c=Math.tan(r),f=o9(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 OJt(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 qJt(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 BJt(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,C,E){return hJe(p,C,E,l(p))}function c(p){return dw.mod(p,i)}function f(p){return fJe(p,[t,r])}var h=U$(n,function(p){return f(p)?cJe(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=U$(n,function(p){return f(p)?cJe(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 V5(e,t,r,n){return dw.isFullCircle([t,r])?qJt(e,n):BJt(e,t,r,n)}function NJt(e,t,r,n){for(var i=1/0,a=1/0,o=V5(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 UJt(e,t){var r=function(a){var o=FJt(a,e);return o>0?o:1/0},n=U$(t,r),i=dw.mod(n+1,t.length);return[t[n],t[i]]}function o9(e){return Math.abs(e)>1e-10?e:0}function V$(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 VJt(e,t,r,n,i,a){var o=V5(e,t,r,n);return"M"+V$(o,i,a).join("L")}function GJt(e,t,r,n,i,a,o){var s,l;e<t?(s=e,l=t):(s=t,l=e);var u=V$(V5(s,r,n,i),a,o),c=V$(V5(l,r,n,i),a,o);return"M"+c.reverse().join("L")+"M"+u.join("L")}dJe.exports={isPtInsidePolygon:zJt,findPolygonOffset:NJt,findEnclosingVertexAngles:UJt,findIntersectionXY:hJe,findXYatLength:OJt,clampTiny:o9,pathPolygon:VJt,pathPolygonAnnulus:GJt}});var G$=ye((q2r,gJe)=>{"use strict";function vJe(e){return e<0?-1:e>0?1:0}function G5(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 H5(e,t){var r=t[0],n=t[1];return[r*e.radius+e.cx,-n*e.radius+e.cy]}function pJe(e,t){return t*e.radius}function HJt(e,t,r,n){var i=H5(e,G5([r,t])),a=i[0],o=i[1],s=H5(e,G5([n,t])),l=s[0],u=s[1];if(t===0)return["M"+a+","+o,"L"+l+","+u].join(" ");var c=pJe(e,1/Math.abs(t));return["M"+a+","+o,"A"+c+","+c+" 0 0,"+(t<0?1:0)+" "+l+","+u].join(" ")}function jJt(e,t,r,n){var i=pJe(e,1/(t+1)),a=H5(e,G5([t,r])),o=a[0],s=a[1],l=H5(e,G5([t,n])),u=l[0],c=l[1];if(vJe(r)!==vJe(n)){var f=H5(e,G5([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(" ")}gJe.exports={smith:G5,reactanceArc:HJt,resistanceArc:jJt,smithTransform:H5}});var W$=ye((B2r,SJe)=>{"use strict";var vw=Oa(),WJt=cd(),gw=qa(),Xc=Dr(),ry=Xc.strRotate,xd=Xc.strTranslate,H$=Ca(),uk=So(),XJt=Mc(),hp=ho(),ZJt=ym(),YJt=N$(),KJt=wg().doAutoRange,y1=ON(),c9=gv(),mJe=vf(),JJt=Mb(),$Jt=zf().prepSelect,QJt=zf().selectOnClick,j$=zf().clearOutline,yJe=Tg(),_Je=hM(),xJe=xM().redrawReglTraces,e$t=Kh().MID_SHIFT,Lx=a9(),_1=s9(),f9=G$(),l9=f9.smith,t$t=f9.reactanceArc,r$t=f9.resistanceArc,u9=f9.smithTransform,i$t=Xc._,bJe=Xc.mod,Px=Xc.deg2rad,pw=Xc.rad2deg;function wJe(e,t,r){this.isSmith=r||!1,this.id=t,this.gd=e,this._hasClipOnAxisFalse=null,this.vangles=null,this.radialAxisAngle=null,this.traceHash={},this.layers={},this.clipPaths={},this.clipIds={},this.viewInitial={};var n=e._fullLayout,i="clip"+n._uid+t;this.clipIds.forTraces=i+"-for-traces",this.clipPaths.forTraces=n._clips.append("clipPath").attr("id",this.clipIds.forTraces),this.clipPaths.forTraces.append("path"),this.framework=n["_"+(r?"smith":"polar")+"layer"].append("g").attr("class",t),this.getHole=function(a){return this.isSmith?0:a.hole},this.getSector=function(a){return this.isSmith?[0,360]:a.sector},this.getRadial=function(a){return this.isSmith?a.realaxis:a.radialaxis},this.getAngular=function(a){return this.isSmith?a.imaginaryaxis:a.angularaxis},r||(this.radialTickLayout=null,this.angularTickLayout=null)}var Nd=wJe.prototype;SJe.exports=function(t,r,n){return new wJe(t,r,n)};Nd.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),XJt.generalUpdatePerTraceModule(r.gd,r,e,n),r.updateFx(t,n),r.isSmith&&(delete n.realaxis.range,delete n.imaginaryaxis.range)};Nd.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()};Nd.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=n$t(f),d=h[2]-h[0],v=h[3]-h[1],x=c/u,b=Math.abs(v/d),p,C,E,A,L;x>b?(p=u,C=u*b,L=(c-C)/i.h/2,E=[s[0],s[1]],A=[l[0]+L,l[1]-L]):(p=c/b,C=c,L=(u-p)/i.w/2,E=[s[0]+L,s[1]-L],A=[l[0],l[1]]),r.xLength2=p,r.yLength2=C,r.xDomain2=E,r.yDomain2=A;var _=r.xOffset2=i.l+i.w*E[0],k=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=k+M*h[3],z=r.cxx=P-_,O=r.cyy=T-k,V=a.side,G;V==="counterclockwise"?(G=V,V="top"):V==="clockwise"&&(G=V,V="bottom"),r.radialAxis=r.mockAxis(e,t,a,{_id:"x",side:V,_trueSide:G,domain:[g/i.w,M/i.w]}),r.angularAxis=r.mockAxis(e,t,o,{side:"right",domain:[0,Math.PI],autorange:!1}),r.doAutoRange(e,t),r.updateAngularAxis(e,t),r.updateRadialAxis(e,t),r.updateRadialAxisTitle(e,t),r.xaxis=r.mockCartesianAxis(e,t,{_id:"x",domain:E}),r.yaxis=r.mockCartesianAxis(e,t,{_id:"y",domain:A});var Z=r.pathSubplot();r.clipPaths.forTraces.select("path").attr("d",Z).attr("transform",xd(z,O)),n.frontplot.attr("transform",xd(_,k)).call(uk.setClipUrl,r._hasClipOnAxisFalse?null:r.clipIds.forTraces,r.gd),n.bg.attr("d",Z).attr("transform",xd(P,T)).call(H$.fill,t.bgcolor)};Nd.mockAxis=function(e,t,r,n){var i=Xc.extendFlat({},r,n);return YJt(i,t,e),i};Nd.mockCartesianAxis=function(e,t,r){var n=this,i=n.isSmith,a=r._id,o=Xc.extendFlat({type:"linear"},r);ZJt(o,e);var s={x:[0,2],y:[1,3]};return o.setRange=function(){var l=n.sectorBBox,u=s[a],c=n.radialAxis._rl,f=(c[1]-c[0])/(1-n.getHole(t));o.range=[l[u[0]]*f,l[u[1]]*f]},o.isPtWithinRange=a==="x"&&!i?function(l){return n.isPtInside(l)}:function(){return!0},o.setRange(),o.setScale(),o};Nd.doAutoRange=function(e,t){var r=this,n=r.gd,i=r.radialAxis,a=r.getRadial(t);KJt(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)}};Nd.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=bJe(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=u9(r,l9([M.x,0]));return xd(g[0]-s,g[1]-l)}:function(M){return xd(f.l2p(M.x)+o,0)},x=d?function(M){return r$t(r,M.x,-1/0,1/0)}:function(M){return r.pathArc(f.r2p(M.x)+o)},b=TJe(u);if(r.radialTickLayout!==b&&(i["radial-axis"].selectAll(".xtick").remove(),r.radialTickLayout=b),h){f.setScale();var p=0,C=d?(f.tickvals||[]).filter(function(M){return M>=0}).map(function(M){return hp.tickText(f,M,!0,!1)}):hp.calcTicks(f),E=d?C:hp.clipEnds(f,C),A=hp.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)),hp.drawTicks(n,f,{vals:C,layer:i["radial-axis"],path:hp.makeTickPath(f,0,A),transFn:v,crisp:!1}),hp.drawGrid(n,f,{vals:E,layer:i["radial-grid"],path:x,transFn:Xc.noop,crisp:!1}),hp.drawLabels(n,f,{vals:C,layer:i["radial-axis"],transFn:v,labelFns:hp.makeLabelFns(f,p)})}var L=r.radialAxisAngle=r.vangles?pw(AJe(Px(u.angle),r.vangles)):u.angle,_=xd(s,l),k=_+ry(-L);ck(i["radial-axis"],h&&(u.showticklabels||u.ticks),{transform:k}),ck(i["radial-grid"],h&&u.showgrid,{transform:d?"":_}),ck(i["radial-line"].select("line"),h&&u.showline,{x1:d?-a:o,y1:0,x2:a,y2:0,transform:k}).attr("stroke-width",u.linewidth).call(H$.stroke,u.linecolor)};Nd.updateRadialAxisTitle=function(e,t,r){if(!this.isSmith){var n=this,i=n.gd,a=n.radius,o=n.cx,s=n.cy,l=n.getRadial(t),u=n.id+"title",c=0;if(l.title){var f=uk.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),C=o+a/2*b+c*p,E=s-a/2*p+c*b;n.layers["radial-axis-title"]=JJt.draw(i,u,{propContainer:l,propName:n.id+".radialaxis.title",placeholder:i$t(i,"Click to enter radial axis title"),attributes:{x:C,y:E,"text-anchor":"middle"},transform:{rotate:-v}})}};Nd.updateAngularAxis=function(e,t){var r=this,n=r.gd,i=r.layers,a=r.radius,o=r.innerRadius,s=r.cx,l=r.cy,u=r.getAngular(t),c=r.angularAxis,f=r.isSmith;f||(r.fillViewInitialKey("angularaxis.rotation",u.rotation),c.setGeometry(),c.setScale());var h=f?function(g){var P=u9(r,l9([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 xd(s+a*Math.cos(g),l-a*Math.sin(g))},v=f?function(g){var P=u9(r,l9([0,g.x]));return xd(P[0],P[1])}:function(g){return d(h(g))},x=f?function(g){var P=u9(r,l9([0,g.x])),T=Math.atan2(P[0]-s,P[1]-l)-Math.PI/2;return xd(P[0],P[1])+ry(-pw(T))}:function(g){var P=h(g);return d(P)+ry(-pw(P))},b=f?function(g){return t$t(r,g.x,0,1/0)}:function(g){var P=h(g),T=Math.cos(P),z=Math.sin(P);return"M"+[s+o*T,l-o*z]+"L"+[s+a*T,l-a*z]},p=hp.makeLabelFns(c,0),C=p.labelStandoff,E={};E.xFn=function(g){var P=h(g);return Math.cos(P)*C},E.yFn=function(g){var P=h(g),T=Math.sin(P)>0?.2:1;return-Math.sin(P)*(C+g.fontSize*T)+Math.abs(Math.cos(P))*(g.fontSize*e$t)},E.anchorFn=function(g){var P=h(g),T=Math.cos(P);return Math.abs(T)<.1?"middle":T>0?"start":"end"},E.heightFn=function(g,P,T){var z=h(g);return-.5*(1+Math.sin(z))*T};var A=TJe(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 hp.tickText(c,g,!0,!1)}):hp.calcTicks(c);f&&(L[0].text="\u221E",L[0].fontSize*=1.75);var _;if(t.gridshape==="linear"?(_=L.map(h),Xc.angleDelta(_[0],_[1])<0&&(_=_.slice().reverse())):_=null,r.vangles=_,c.type==="category"&&(L=L.filter(function(g){return Xc.isAngleInsideSector(h(g),r.sectorInRad)})),c.visible){var k=c.ticks==="inside"?-1:1,M=(c.linewidth||1)/2;hp.drawTicks(n,c,{vals:L,layer:i["angular-axis"],path:"M"+k*M+",0h"+k*c.ticklen,transFn:x,crisp:!1}),hp.drawGrid(n,c,{vals:L,layer:i["angular-grid"],path:b,transFn:Xc.noop,crisp:!1}),hp.drawLabels(n,c,{vals:L,layer:i["angular-axis"],repositionOnUpdate:!0,transFn:v,labelFns:E})}ck(i["angular-line"].select("path"),u.showline,{d:r.pathSubplot(),transform:xd(s,l)}).attr("stroke-width",u.linewidth).call(H$.stroke,u.linecolor)};Nd.updateFx=function(e,t){if(!this.gd._context.staticPlot){var r=!this.isSmith;r&&(this.updateAngularDrag(e),this.updateRadialDrag(e,t,0),this.updateRadialDrag(e,t,1)),this.updateHoverAndMainDrag(e)}};Nd.updateHoverAndMainDrag=function(e){var t=this,r=t.isSmith,n=t.gd,i=t.layers,a=e._zoomlayer,o=Lx.MINZOOM,s=Lx.OFFEDGE,l=t.radius,u=t.innerRadius,c=t.cx,f=t.cy,h=t.cxx,d=t.cyy,v=t.sectorInRad,x=t.vangles,b=t.radialAxis,p=_1.clampTiny,C=_1.findXYatLength,E=_1.findEnclosingVertexAngles,A=Lx.cornerHalfWidth,L=Lx.cornerLen/2,_,k,M=y1.makeDragger(i,"path","maindrag",e.dragmode===!1?"none":"crosshair");vw.select(M).attr("d",t.pathSubplot()).attr("transform",xd(c,f)),M.onmousemove=function(ce){mJe.hover(n,ce,t.id),n._fullLayout._lasthover=M,n._fullLayout._hoversubplot=t.id},M.onmouseout=function(ce){n._dragging||c9.unhover(n,ce)};var g={element:M,gd:n,subplot:t.id,plotinfo:{id:t.id,xaxis:t.xaxis,yaxis:t.yaxis},xaxes:[t.xaxis],yaxes:[t.yaxis]},P,T,z,O,V,G,Z,H,N;function j(ce,Ze){return Math.sqrt(ce*ce+Ze*Ze)}function re(ce,Ze){return j(ce-h,Ze-d)}function oe(ce,Ze){return Math.atan2(d-Ze,ce-h)}function _e(ce,Ze){return[ce*Math.cos(Ze),ce*Math.sin(-Ze)]}function Me(ce,Ze){if(ce===0)return t.pathSector(2*A);var ct=L/ce,pt=Ze-ct,Wt=Ze+ct,st=Math.max(0,Math.min(ce,l)),lt=st-A,Gt=st+A;return"M"+_e(lt,pt)+"A"+[lt,lt]+" 0,0,0 "+_e(lt,Wt)+"L"+_e(Gt,Wt)+"A"+[Gt,Gt]+" 0,0,1 "+_e(Gt,pt)+"Z"}function ke(ce,Ze,ct){if(ce===0)return t.pathSector(2*A);var pt=_e(ce,Ze),Wt=_e(ce,ct),st=p((pt[0]+Wt[0])/2),lt=p((pt[1]+Wt[1])/2),Gt,Nt;if(st&<){var $t=lt/st,sr=-1/$t,wr=C(A,$t,st,lt);Gt=C(L,sr,wr[0][0],wr[0][1]),Nt=C(L,sr,wr[1][0],wr[1][1])}else{var ur,Qe;lt?(ur=L,Qe=A):(ur=A,Qe=L),Gt=[[st-ur,lt-Qe],[st+ur,lt-Qe]],Nt=[[st-ur,lt+Qe],[st+ur,lt+Qe]]}return"M"+Gt.join("L")+"L"+Nt.reverse().join("L")+"Z"}function me(){z=null,O=null,V=t.pathSubplot(),G=!1;var ce=n._fullLayout[t.id];Z=WJt(ce.bgcolor).getLuminance(),H=y1.makeZoombox(a,Z,c,f,V),H.attr("fill-rule","evenodd"),N=y1.makeCorners(a,c,f),j$(n)}function ie(ce,Ze){return Ze=Math.max(Math.min(Ze,l),u),ce<s?ce=0:l-ce<s?ce=l:Ze<s?Ze=0:l-Ze<s&&(Ze=l),Math.abs(Ze-ce)>o?(ce<Ze?(z=ce,O=Ze):(z=Ze,O=ce),!0):(z=null,O=null,!1)}function Se(ce,Ze){ce=ce||V,Ze=Ze||"M0,0Z",H.attr("d",ce),N.attr("d",Ze),y1.transitionZoombox(H,N,G,Z),G=!0;var ct={};ge(ct),n.emit("plotly_relayouting",ct)}function Le(ce,Ze){ce=ce*_,Ze=Ze*k;var ct=P+ce,pt=T+Ze,Wt=re(P,T),st=Math.min(re(ct,pt),l),lt=oe(P,T),Gt,Nt;ie(Wt,st)&&(Gt=V+t.pathSector(O),z&&(Gt+=t.pathSector(z)),Nt=Me(z,lt)+Me(O,lt)),Se(Gt,Nt)}function Ae(ce,Ze,ct,pt){var Wt=_1.findIntersectionXY(ct,pt,ct,[ce-h,d-Ze]);return j(Wt[0],Wt[1])}function De(ce,Ze){var ct=P+ce,pt=T+Ze,Wt=oe(P,T),st=oe(ct,pt),lt=E(Wt,x),Gt=E(st,x),Nt=Ae(P,T,lt[0],lt[1]),$t=Math.min(Ae(ct,pt,Gt[0],Gt[1]),l),sr,wr;ie(Nt,$t)&&(sr=V+t.pathSector(O),z&&(sr+=t.pathSector(z)),wr=[ke(z,lt[0],lt[1]),ke(O,lt[0],lt[1])].join(" ")),Se(sr,wr)}function Pe(){if(y1.removeZoombox(n),!(z===null||O===null)){var ce={};ge(ce),y1.showDoubleClickNotifier(n),gw.call("_guiRelayout",n,ce)}}function ge(ce){var Ze=b._rl,ct=(Ze[1]-Ze[0])/(1-u/l)/l,pt=[Ze[0]+(z-u)*ct,Ze[0]+(O-u)*ct];ce[t.id+".radialaxis.range"]=pt}function Fe(ce,Ze){var ct=n._fullLayout.clickmode;if(y1.removeZoombox(n),ce===2){var pt={};for(var Wt in t.viewInitial)pt[t.id+"."+Wt]=t.viewInitial[Wt];n.emit("plotly_doubleclick",null),gw.call("_guiRelayout",n,pt)}ct.indexOf("select")>-1&&ce===1&&QJt(Ze,n,[t.xaxis],[t.yaxis],t.id,g),ct.indexOf("event")>-1&&mJe.click(n,Ze,t.id)}g.prepFn=function(ce,Ze,ct){var pt=n._fullLayout.dragmode,Wt=M.getBoundingClientRect();n._fullLayout._calcInverseTransform(n);var st=n._fullLayout._invTransform;_=n._fullLayout._invScaleX,k=n._fullLayout._invScaleY;var lt=Xc.apply3DTransform(st)(Ze-Wt.left,ct-Wt.top);if(P=lt[0],T=lt[1],x){var Gt=_1.findPolygonOffset(l,v[0],v[1],x);P+=h+Gt[0],T+=d+Gt[1]}switch(pt){case"zoom":g.clickFn=Fe,r||(x?g.moveFn=De:g.moveFn=Le,g.doneFn=Pe,me(ce,Ze,ct));break;case"select":case"lasso":$Jt(ce,Ze,ct,g,pt);break}},c9.init(g)};Nd.updateRadialDrag=function(e,t,r){var n=this,i=n.gd,a=n.layers,o=n.radius,s=n.innerRadius,l=n.cx,u=n.cy,c=n.radialAxis,f=Lx.radialDragBoxSize,h=f/2;if(!c.visible)return;var d=Px(n.radialAxisAngle),v=c._rl,x=v[0],b=v[1],p=v[r],C=.75*(v[1]-v[0])/(1-n.getHole(t))/o,E,A,L;r?(E=l+(o+h)*Math.cos(d),A=u-(o+h)*Math.sin(d),L="radialdrag"):(E=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),k={element:_,gd:i};e.dragmode===!1&&(k.dragmode=!1),ck(vw.select(_),c.visible&&s<o,{transform:xd(E,A)});var M,g,P;function T(Z,H){if(M)M(Z,H);else{var N=[Z,-H],j=[Math.cos(d),Math.sin(d)],re=Math.abs(Xc.dot(N,j)/Math.sqrt(Xc.dot(N,N)));isNaN(re)||(M=re<.5?V:G)}var oe={};z(oe),i.emit("plotly_relayouting",oe)}function z(Z){g!==null?Z[n.id+".radialaxis.angle"]=g:P!==null&&(Z[n.id+".radialaxis.range["+r+"]"]=P)}function O(){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(Z,H){if(r!==0){var N=E+Z,j=A+H;g=Math.atan2(u-j,N-l),n.vangles&&(g=AJe(g,n.vangles)),g=pw(g);var re=xd(l,u)+ry(-g);a["radial-axis"].attr("transform",re),a["radial-line"].select("line").attr("transform",re);var oe=n.gd._fullLayout,_e=oe[n.id];n.updateRadialAxisTitle(oe,_e,g)}}function G(Z,H){var N=Xc.dot([Z,-H],[Math.cos(d),Math.sin(d)]);if(P=p-C*N,C>0!=(r?P>x:P<b)){P=null;return}var j=i._fullLayout,re=j[n.id];c.range[r]=P,c._rl[r]=P,n.updateRadialAxis(j,re),n.xaxis.setRange(),n.xaxis.setScale(),n.yaxis.setRange(),n.yaxis.setScale();var oe=!1;for(var _e in n.traceHash){var Me=n.traceHash[_e],ke=Xc.filterVisible(Me),me=Me[0][0].trace._module;me.plot(i,n,ke,re),gw.traceIs(_e,"gl")&&ke.length&&(oe=!0)}oe&&(_Je(i),xJe(i))}k.prepFn=function(){M=null,g=null,P=null,k.moveFn=T,k.doneFn=O,j$(i)},k.clampFn=function(Z,H){return Math.sqrt(Z*Z+H*H)<Lx.MINDRAG&&(Z=0,H=0),[Z,H]},c9.init(k)};Nd.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",xd(o,s)).call(yJe,"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,C,E,A,L,_;function k(P,T){var z=t.gd._fullLayout,O=z[t.id],V=p+P*e._invScaleX,G=C+T*e._invScaleY,Z=d(V,G),H=pw(Z-_);if(A=E+H,n.frontplot.attr("transform",xd(t.xOffset2,t.yOffset2)+ry([-H,l,u])),t.vangles){L=t.radialAxisAngle+H;var N=xd(o,s)+ry(-H),j=xd(o,s)+ry(-L);n.bg.attr("transform",N),n["radial-grid"].attr("transform",N),n["radial-axis"].attr("transform",j),n["radial-line"].select("line").attr("transform",j),t.updateRadialAxisTitle(z,O,L)}else t.clipPaths.forTraces.select("path").attr("transform",xd(l,u)+ry(H));x.each(function(){var ie=vw.select(this),Se=uk.getTranslate(ie);ie.attr("transform",xd(Se.x,Se.y)+ry([H]))}),b.each(function(){var ie=vw.select(this),Se=ie.select("text"),Le=uk.getTranslate(ie);ie.attr("transform",ry([H,Se.attr("x"),Se.attr("y")])+xd(Le.x,Le.y))}),a.rotation=Xc.modHalf(A,360),t.updateAngularAxis(z,O),t._hasClipOnAxisFalse&&!Xc.isFullCircle(t.sectorInRad)&&v.call(uk.hideOutsideRangePoints,t);var re=!1;for(var oe in t.traceHash)if(gw.traceIs(oe,"gl")){var _e=t.traceHash[oe],Me=Xc.filterVisible(_e),ke=_e[0][0].trace._module;ke.plot(r,t,Me,O),Me.length&&(re=!0)}re&&(_Je(r),xJe(r));var me={};M(me),r.emit("plotly_relayouting",me)}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,z){var O=e[t.id];E=O.angularaxis.rotation;var V=f.getBoundingClientRect();p=T-V.left,C=z-V.top,r._fullLayout._calcInverseTransform(r);var G=Xc.apply3DTransform(e._invTransform)(p,C);p=G[0],C=G[1],_=d(p,C),h.moveFn=k,h.doneFn=g,j$(r)},t.vangles&&!Xc.isFullCircle(t.sectorInRad)&&(h.prepFn=Xc.noop,yJe(vw.select(f),null)),c9.init(h)};Nd.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:Xc.isPtInsideSector;return s(a,n,o,t,r)};Nd.pathArc=function(e){var t=this.sectorInRad,r=this.vangles,n=r?_1.pathPolygon:Xc.pathArc;return n(e,t[0],t[1],r)};Nd.pathSector=function(e){var t=this.sectorInRad,r=this.vangles,n=r?_1.pathPolygon:Xc.pathSector;return n(e,t[0],t[1],r)};Nd.pathAnnulus=function(e,t){var r=this.sectorInRad,n=this.vangles,i=n?_1.pathPolygonAnnulus:Xc.pathAnnulus;return i(e,t,r[0],r[1],n)};Nd.pathSubplot=function(){var e=this.innerRadius,t=this.radius;return e?this.pathAnnulus(e,t):this.pathSector(t)};Nd.fillViewInitialKey=function(e,t){e in this.viewInitial||(this.viewInitial[e]=t)};function TJe(e){var t=e.ticks+String(e.ticklen)+String(e.showticklabels);return"side"in e&&(t+=e.side),t}function n$t(e){var t=e[0],r=e[1],n=r-t,i=bJe(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 AJe(e,t){var r=function(i){return Xc.angleDist(e,i)},n=Xc.findIndexOfMin(t,r);return t[n]}function ck(e,t,r){return t?(e.attr("display",null),e.attr(r)):e&&e.attr("display","none"),e}});var X$=ye((N2r,PJe)=>{"use strict";var a$t=Eh(),ss=Rd(),o$t=kc().attributes,f0=Dr().extendFlat,MJe=mc().overrideAll,EJe=MJe({color:ss.color,showline:f0({},ss.showline,{dflt:!0}),linecolor:ss.linecolor,linewidth:ss.linewidth,showgrid:f0({},ss.showgrid,{dflt:!0}),gridcolor:ss.gridcolor,gridwidth:ss.gridwidth,griddash:ss.griddash},"plot","from-root"),CJe=MJe({tickmode:ss.minor.tickmode,nticks:ss.nticks,tick0:ss.tick0,dtick:ss.dtick,tickvals:ss.tickvals,ticktext:ss.ticktext,ticks:ss.ticks,ticklen:ss.ticklen,tickwidth:ss.tickwidth,tickcolor:ss.tickcolor,ticklabelstep:ss.ticklabelstep,showticklabels:ss.showticklabels,labelalias:ss.labelalias,minorloglabels:ss.minorloglabels,showtickprefix:ss.showtickprefix,tickprefix:ss.tickprefix,showticksuffix:ss.showticksuffix,ticksuffix:ss.ticksuffix,showexponent:ss.showexponent,exponentformat:ss.exponentformat,minexponent:ss.minexponent,separatethousands:ss.separatethousands,tickfont:ss.tickfont,tickangle:ss.tickangle,tickformat:ss.tickformat,tickformatstops:ss.tickformatstops,layer:ss.layer},"plot","from-root"),kJe={visible:f0({},ss.visible,{dflt:!0}),type:f0({},ss.type,{values:["-","linear","log","date","category"]}),autotypenumbers:ss.autotypenumbers,autorangeoptions:{minallowed:ss.autorangeoptions.minallowed,maxallowed:ss.autorangeoptions.maxallowed,clipmin:ss.autorangeoptions.clipmin,clipmax:ss.autorangeoptions.clipmax,include:ss.autorangeoptions.include,editType:"plot"},autorange:f0({},ss.autorange,{editType:"plot"}),rangemode:{valType:"enumerated",values:["tozero","nonnegative","normal"],dflt:"tozero",editType:"calc"},minallowed:f0({},ss.minallowed,{editType:"plot"}),maxallowed:f0({},ss.maxallowed,{editType:"plot"}),range:f0({},ss.range,{items:[{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}}],editType:"plot"}),categoryorder:ss.categoryorder,categoryarray:ss.categoryarray,angle:{valType:"angle",editType:"plot"},autotickangles:ss.autotickangles,side:{valType:"enumerated",values:["clockwise","counterclockwise"],dflt:"clockwise",editType:"plot"},title:{text:f0({},ss.title.text,{editType:"plot",dflt:""}),font:f0({},ss.title.font,{editType:"plot"}),editType:"plot"},hoverformat:ss.hoverformat,uirevision:{valType:"any",editType:"none"},editType:"calc"};f0(kJe,EJe,CJe);var LJe={visible:f0({},ss.visible,{dflt:!0}),type:{valType:"enumerated",values:["-","linear","category"],dflt:"-",editType:"calc",_noTemplating:!0},autotypenumbers:ss.autotypenumbers,categoryorder:ss.categoryorder,categoryarray:ss.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:ss.hoverformat,uirevision:{valType:"any",editType:"none"},editType:"calc"};f0(LJe,EJe,CJe);PJe.exports={domain:o$t({name:"polar",editType:"plot"}),sector:{valType:"info_array",items:[{valType:"number",editType:"plot"},{valType:"number",editType:"plot"}],dflt:[0,360],editType:"plot"},hole:{valType:"number",min:0,max:1,dflt:0,editType:"plot"},bgcolor:{valType:"color",editType:"plot",dflt:a$t.background},radialaxis:kJe,angularaxis:LJe,gridshape:{valType:"enumerated",values:["circular","linear"],dflt:"circular",editType:"plot"},uirevision:{valType:"any",editType:"none"},editType:"calc"}});var FJe=ye((U2r,DJe)=>{"use strict";var h9=Dr(),s$t=Ca(),l$t=pl(),u$t=k_(),c$t=Id().getSubplotData,f$t=xb(),h$t=T3(),d$t=t_(),v$t=r_(),p$t=iI(),g$t=QM(),m$t=pB(),y$t=L3(),RJe=X$(),_$t=N$(),d9=a9(),IJe=d9.axisNames;function x$t(e,t,r,n){var i=r("bgcolor");n.bgColor=s$t.combine(i,n.paper_bgcolor);var a=r("sector");r("hole");var o=c$t(n.fullData,d9.name,n.id),s=n.layoutOut,l;function u(H,N){return r(l+"."+H,N)}for(var c=0;c<IJe.length;c++){l=IJe[c],h9.isPlainObject(e[l])||(e[l]={});var f=e[l],h=l$t.newContainer(t,l);h._id=h._name=l,h._attr=n.id+"."+l,h._traceIndices=o.map(function(H){return H.index});var d=d9.axisName2dataArray[l],v=b$t(f,h,u,o,d,n);p$t(f,h,u,{axData:o,dataAttr:d});var x=u("visible");switch(_$t(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),C=u("autorange",p),E;b&&(b[0]===null&&b[1]===null||(b[0]===null||b[1]===null)&&(C==="reversed"||C===!0)||b[0]!==null&&(C==="min"||C==="max reversed")||b[1]!==null&&(C==="max"||C==="min reversed"))&&(b=void 0,delete h.range,h.autorange=!0,E=!0),E||(p=h.getAutorangeDflt(b),C=u("autorange",p)),f.autorange=C,C&&(m$t(u,C,b),(v==="linear"||v==="-")&&u("rangemode"),h.isReversed()&&(h._m=-1)),h.cleanRange("range",{dfltRange:[0,1]});break;case"angularaxis":if(v==="date"){h9.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(v$t(f,h,u,h.type,{tickSuffixDflt:h.thetaunit==="degrees"?"\xB0":void 0}),x){var _,k,M,g,P,T,z,O,V,G,Z=n.font||{};_=u("color"),k=_===f.color?_:Z.color,M=Z.size,g=Z.family,P=Z.weight,T=Z.style,z=Z.variant,O=Z.textcase,V=Z.lineposition,G=Z.shadow,f$t(f,h,u,h.type),d$t(f,h,u,h.type,{font:{weight:P,style:T,variant:z,textcase:O,lineposition:V,shadow:G,color:k,size:M,family:g},noAutotickangles:l==="angularaxis",noTicklabelshift:!0,noTicklabelstandoff:!0}),h$t(f,h,u,{outerTicks:!0}),g$t(f,h,u,{dfltColor:_,bgColor:n.bgColor,blend:60,showLine:!0,showGrid:!0,noZeroLine:!0,attributes:RJe[l]}),u("layer"),l==="radialaxis"&&(u("side"),u("angle",a[0]),u("title.text"),h9.coerceFont(u,"title.font",{weight:P,style:T,variant:z,textcase:O,lineposition:V,shadow:G,color:k,size:h9.bigFont(M),family:g}))}v!=="category"&&u("hoverformat"),h._input=f}t.angularaxis.type==="category"&&r("gridshape")}function b$t(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=y$t(l[i],"gregorian",{noMultiCategory:!0,autotypenumbers:o})),t.type==="-"?t.type="linear":e.type=t.type}return t.type}DJe.exports=function(t,r,n){u$t(t,r,n,{type:d9.name,attributes:RJe,handleDefaults:x$t,font:r.font,autotypenumbersDflt:r.autotypenumbers,paper_bgcolor:r.paper_bgcolor,fullData:n,layoutOut:r})}});var v9=ye((V2r,NJe)=>{"use strict";var w$t=Id().getSubplotCalcData,T$t=Dr().counterRegex,A$t=W$(),OJe=a9(),qJe=OJe.attr,mw=OJe.name,zJe=T$t(mw),BJe={};BJe[qJe]={valType:"subplotid",dflt:mw,editType:"calc"};function S$t(e){for(var t=e._fullLayout,r=e.calcdata,n=t._subplots[mw],i=0;i<n.length;i++){var a=n[i],o=w$t(r,mw,a),s=t[a]._subplot;s||(s=A$t(e,a),t[a]._subplot=s),s.plot(o,t,e._promises)}}function M$t(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)}}NJe.exports={attr:qJe,name:mw,idRoot:mw,idRegex:zJe,attrRegex:zJe,attributes:BJe,layoutAttributes:X$(),supplyLayoutDefaults:FJe(),plot:S$t,clean:M$t,toSVG:vh().toSVG}});var fk=ye((G2r,UJe)=>{"use strict";var E$t=Qo().hovertemplateAttrs,C$t=Qo().texttemplateAttrs,p9=Ao().extendFlat,k$t=Eg(),h0=pf(),L$t=Vl(),j5=h0.line;UJe.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:C$t({editType:"plot"},{keys:["r","theta","text"]}),hovertext:h0.hovertext,line:{color:j5.color,width:j5.width,dash:j5.dash,backoff:j5.backoff,shape:p9({},j5.shape,{values:["linear","spline"]}),smoothing:j5.smoothing,editType:"calc"},connectgaps:h0.connectgaps,marker:h0.marker,cliponaxis:p9({},h0.cliponaxis,{dflt:!1}),textposition:h0.textposition,textfont:h0.textfont,fill:p9({},h0.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:k$t(),hoverinfo:p9({},L$t.hoverinfo,{flags:["r","theta","text","name"]}),hoveron:h0.hoveron,hovertemplate:E$t(),selected:h0.selected,unselected:h0.unselected}});var m9=ye((H2r,HJe)=>{"use strict";var g9=Dr(),W5=Ru(),P$t=$p(),I$t=R0(),VJe=J3(),R$t=D0(),D$t=Ig(),F$t=Sm().PTS_LINESONLY,z$t=fk();function O$t(e,t,r,n){function i(s,l){return g9.coerce(e,t,z$t,s,l)}var a=GJe(e,t,n,i);if(!a){t.visible=!1;return}i("thetaunit"),i("mode",a<F$t?"lines+markers":"lines"),i("text"),i("hovertext"),t.hoveron!=="fills"&&i("hovertemplate"),W5.hasMarkers(t)&&P$t(e,t,r,n,i,{gradient:!0}),W5.hasLines(t)&&(I$t(e,t,r,n,i,{backoff:!0}),VJe(e,t,i),i("connectgaps")),W5.hasText(t)&&(i("texttemplate"),R$t(e,t,n,i));var o=[];(W5.hasMarkers(t)||W5.hasText(t))&&(i("cliponaxis"),i("marker.maxdisplayed"),o.push("points")),i("fill"),t.fill!=="none"&&(D$t(e,t,r,i),W5.hasLines(t)||VJe(e,t,i)),(t.fill==="tonext"||t.fill==="toself")&&o.push("fills"),i("hoveron",o.join("+")||"points"),g9.coerceSelectionMarkerOpacity(t,i)}function GJe(e,t,r,n){var i=n("r"),a=n("theta");g9.isTypedArray(i)&&(t.r=i=Array.from(i)),g9.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}HJe.exports={handleRThetaDefaults:GJe,supplyDefaults:O$t}});var y9=ye((j2r,WJe)=>{"use strict";var q$t=Dr(),jJe=ho();WJe.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=jJe.tickText(o,l,!0).text;var u=s.thetaunit==="degrees"?q$t.rad2deg(t.theta):t.theta;return i.thetaLabel=jJe.tickText(s,u,!0).text,i}});var YJe=ye((W2r,ZJe)=>{"use strict";var XJe=Eo(),B$t=hs().BADNUM,N$t=ho(),U$t=F0(),V$t=Cm(),G$t=z0(),H$t=O0().calcMarkerSize;ZJe.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]={};XJe(h)&&XJe(d)?(v.r=h,v.theta=d):v.r=B$t}var x=H$t(r,u);return r._extremes.x=N$t.findExtremes(a,s,{ppad:x}),U$t(t,r),V$t(c,r),G$t(c,r),c}});var $Je=ye((X2r,JJe)=>{"use strict";var j$t=iT(),KJe=hs().BADNUM;JJe.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===KJe)d.x=d.y=KJe;else{var x=l.c2g(v),b=u.c2g(d.theta);d.x=x*Math.cos(b),d.y=x*Math.sin(b)}}j$t(t,s,n,i)}});var _9=ye((Z2r,e$e)=>{"use strict";var W$t=sT();function X$t(e,t,r,n){var i=W$t(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,QJe(s,l,o,a),a.hovertemplate=l.hovertemplate,i}}function QJe(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>")}}e$e.exports={hoverPoints:X$t,makeHoverPointText:QJe}});var r$e=ye((Y2r,t$e)=>{"use strict";t$e.exports={moduleType:"trace",name:"scatterpolar",basePlotModule:v9(),categories:["polar","symbols","showLegend","scatter-like"],attributes:fk(),supplyDefaults:m9().supplyDefaults,colorbar:$d(),formatLabels:y9(),calc:YJe(),plot:$Je(),style:ap().style,styleOnSelect:ap().styleOnSelect,hoverPoints:_9().hoverPoints,selectPoints:lT(),meta:{}}});var n$e=ye((K2r,i$e)=>{"use strict";i$e.exports=r$e()});var Z$=ye((J2r,a$e)=>{"use strict";var Up=fk(),x1=sC(),Z$t=Qo().texttemplateAttrs;a$e.exports={mode:Up.mode,r:Up.r,theta:Up.theta,r0:Up.r0,dr:Up.dr,theta0:Up.theta0,dtheta:Up.dtheta,thetaunit:Up.thetaunit,text:Up.text,texttemplate:Z$t({editType:"plot"},{keys:["r","theta","text"]}),hovertext:Up.hovertext,hovertemplate:Up.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:Up.hoverinfo,selected:Up.selected,unselected:Up.unselected}});var l$e=ye(($2r,s$e)=>{"use strict";var o$e=Dr(),Y$=Ru(),Y$t=m9().handleRThetaDefaults,K$t=$p(),J$t=R0(),$$t=D0(),Q$t=Ig(),eQt=Sm().PTS_LINESONLY,tQt=Z$();s$e.exports=function(t,r,n,i){function a(s,l){return o$e.coerce(t,r,tQt,s,l)}var o=Y$t(t,r,i,a);if(!o){r.visible=!1;return}a("thetaunit"),a("mode",o<eQt?"lines+markers":"lines"),a("text"),a("hovertext"),r.hoveron!=="fills"&&a("hovertemplate"),Y$.hasMarkers(r)&&K$t(t,r,n,i,a,{noAngleRef:!0,noStandOff:!0}),Y$.hasLines(r)&&(J$t(t,r,n,i,a),a("connectgaps")),Y$.hasText(r)&&(a("texttemplate"),$$t(t,r,i,a,{noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0})),a("fill"),r.fill!=="none"&&Q$t(t,r,n,a),o$e.coerceSelectionMarkerOpacity(r,a)}});var c$e=ye((Q2r,u$e)=>{"use strict";var rQt=y9();u$e.exports=function(t,r,n){var i=t.i;return"r"in t||(t.r=r._r[i]),"theta"in t||(t.theta=r._theta[i]),rQt(t,r,n)}});var h$e=ye((ewr,f$e)=>{"use strict";var iQt=F0(),nQt=O0().calcMarkerSize,aQt=Y2(),oQt=ho(),sQt=sx().TOO_MANY_POINTS;f$e.exports=function(t,r){var n=t._fullLayout,i=r.subplot,a=n[i].radialaxis,o=n[i].angularaxis,s=r._r=a.makeCalcdata(r,"r"),l=r._theta=o.makeCalcdata(r,"theta"),u=r._length,c={};u<s.length&&(s=s.slice(0,u)),u<l.length&&(l=l.slice(0,u)),c.r=s,c.theta=l,iQt(t,r);var f=c.opts=aQt.style(t,r),h;return u<sQt?h=nQt(r,u):f.marker&&(h=2*(f.marker.sizeAvg||Math.max(f.marker.size,3))),r._extremes.x=oQt.findExtremes(a,s,{ppad:h}),[{x:!1,y:!1,t:c,trace:r}]}});var v$e=ye((twr,d$e)=>{"use strict";var lQt=OF(),uQt=_9().makeHoverPointText;function cQt(e,t,r,n){var i=e.cd,a=i[0].t,o=a.r,s=a.theta,l=lQt.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,uQt(f,h,c,u),l}}d$e.exports={hoverPoints:cQt}});var g$e=ye((rwr,p$e)=>{"use strict";p$e.exports={moduleType:"trace",name:"scatterpolargl",basePlotModule:v9(),categories:["gl","regl","polar","symbols","showLegend","scatter-like"],attributes:Z$(),supplyDefaults:l$e(),colorbar:$d(),formatLabels:c$e(),calc:h$e(),hoverPoints:v$e().hoverPoints,selectPoints:sY(),meta:{}}});var m$e=ye((iwr,K$)=>{"use strict";var fQt=NF(),hQt=Eo(),dQt=fK(),vQt=nY(),x9=Y2(),b9=Dr(),pQt=sx().TOO_MANY_POINTS,gQt={};K$.exports=function(t,r,n){if(n.length){var i=r.radialAxis,a=r.angularAxis,o=vQt(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 C=new Array(f*2),E=Array(f),A=Array(f);for(x=0;x<f;x++){var L=b[x],_,k;if(hQt(L)){var M=i.c2g(L),g=a.c2g(p[x],u.thetaunit);_=M*Math.cos(g),k=M*Math.sin(g)}else _=k=NaN;E[x]=C[x*2]=_,A[x]=C[x*2+1]=k}c.tree=fQt(C),v.marker&&f>=pQt&&(v.marker.cluster=c.tree),v.marker&&(v.markerSel.positions=v.markerUnsel.positions=v.marker.positions=C),v.line&&C.length>1&&b9.extendFlat(v.line,x9.linePositions(t,u,C)),v.text&&(b9.extendFlat(v.text,{positions:C},x9.textPosition(t,u,v.text,v.marker)),b9.extendFlat(v.textSel,{positions:C},x9.textPosition(t,u,v.text,v.markerSel)),b9.extendFlat(v.textUnsel,{positions:C},x9.textPosition(t,u,v.text,v.markerUnsel))),v.fill&&!o.fill2d&&(o.fill2d=!0),v.marker&&!o.scatter2d&&(o.scatter2d=!0),v.line&&!o.line2d&&(o.line2d=!0),v.text&&!o.glText&&(o.glText=!0),o.lineOptions.push(v.line),o.fillOptions.push(v.fill),o.markerOptions.push(v.marker),o.markerSelectedOptions.push(v.markerSel),o.markerUnselectedOptions.push(v.markerUnsel),o.textOptions.push(v.text),o.textSelectedOptions.push(v.textSel),o.textUnselectedOptions.push(v.textUnsel),o.selectBatch.push([]),o.unselectBatch.push([]),c.x=E,c.y=A,c.rawx=E,c.rawy=A,c.r=h,c.theta=d,c.positions=C,c._scene=o,c.index=o.count,o.count++}}),dQt(t,r,n)}};K$.exports.reglPrecompiled=gQt});var x$e=ye((nwr,_$e)=>{"use strict";var y$e=g$e();y$e.plot=m$e();_$e.exports=y$e});var w$e=ye((awr,b$e)=>{"use strict";b$e.exports=x$e()});var J$=ye((owr,T$e)=>{"use strict";var mQt=Qo().hovertemplateAttrs,X5=Ao().extendFlat,Ix=fk(),Rx=Lm();T$e.exports={r:Ix.r,theta:Ix.theta,r0:Ix.r0,dr:Ix.dr,theta0:Ix.theta0,dtheta:Ix.dtheta,thetaunit:Ix.thetaunit,base:X5({},Rx.base,{}),offset:X5({},Rx.offset,{}),width:X5({},Rx.width,{}),text:X5({},Rx.text,{}),hovertext:X5({},Rx.hovertext,{}),marker:yQt(),hoverinfo:Ix.hoverinfo,hovertemplate:mQt(),selected:Rx.selected,unselected:Rx.unselected};function yQt(){var e=X5({},Rx.marker);return delete e.cornerradius,e}});var $$=ye((swr,A$e)=>{"use strict";A$e.exports={barmode:{valType:"enumerated",values:["stack","overlay"],dflt:"stack",editType:"calc"},bargap:{valType:"number",dflt:.1,min:0,max:1,editType:"calc"}}});var E$e=ye((lwr,M$e)=>{"use strict";var S$e=Dr(),_Qt=m9().handleRThetaDefaults,xQt=BI(),bQt=J$();M$e.exports=function(t,r,n,i){function a(s,l){return S$e.coerce(t,r,bQt,s,l)}var o=_Qt(t,r,i,a);if(!o){r.visible=!1;return}a("thetaunit"),a("base"),a("offset"),a("width"),a("text"),a("hovertext"),a("hovertemplate"),xQt(t,r,a,n,i),S$e.coerceSelectionMarkerOpacity(r,a)}});var k$e=ye((uwr,C$e)=>{"use strict";var wQt=Dr(),TQt=$$();C$e.exports=function(e,t,r){var n={},i;function a(l,u){return wQt.coerce(e[i]||{},t[i],TQt,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 Q$=ye((cwr,I$e)=>{"use strict";var L$e=Dv().hasColorscale,P$e=Fv(),AQt=Dr().isArrayOrTypedArray,SQt=v4(),MQt=Hb().setGroupPositions,EQt=z0(),CQt=qa().traceIs,kQt=Dr().extendFlat;function LQt(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]=AQt(x)?a.makeCalcdata(t,v):a.d2c(x,t.thetaunit))}return a.type==="linear"&&(d("width"),d("offset")),L$e(t,"marker")&&P$e(e,t,{vals:t.marker.color,containerStr:"marker",cLetter:"c"}),L$e(t,"marker.line")&&P$e(e,t,{vals:t.marker.line.color,containerStr:"marker.line",cLetter:"c"}),SQt(u,t),EQt(u,t),u}function PQt(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&&CQt(s,"bar")&&s.subplot===r&&i.push(o)}var l=kQt({},t.radialaxis,{_id:"x"}),u=t.angularaxis;MQt(e,u,l,i,{mode:t.barmode,norm:t.barnorm,gap:t.bargap,groupgap:t.bargroupgap})}I$e.exports={calc:LQt,crossTraceCalc:PQt}});var F$e=ye((fwr,D$e)=>{"use strict";var R$e=Oa(),w9=Eo(),Z5=Dr(),IQt=So(),eQ=s9();D$e.exports=function(t,r,n){var i=t._context.staticPlot,a=r.xaxis,o=r.yaxis,s=r.radialAxis,l=r.angularAxis,u=RQt(r),c=r.layers.frontplot.select("g.barlayer");Z5.makeTraceGroups(c,n,"trace bars").each(function(){var f=R$e.select(this),h=Z5.ensureSingle(f,"g","points"),d=h.selectAll("g.point").data(Z5.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=R$e.select(this),b=v.rp0=s.c2p(v.s0),p=v.rp1=s.c2p(v.s1),C=v.thetag0=l.c2g(v.p0),E=v.thetag1=l.c2g(v.p1),A;if(!w9(b)||!w9(p)||!w9(C)||!w9(E)||b===p||C===E)A="M0,0Z";else{var L=s.c2g(v.s1),_=(C+E)/2;v.ct=[a.c2p(L*Math.cos(_)),o.c2p(L*Math.sin(_))],A=u(b,p,C,E)}Z5.ensureSingle(x,"path").attr("d",A)}),IQt.setClipUrl(f,r._hasClipOnAxisFalse?r.clipIds.forTraces:null,t)})};function RQt(e){var t=e.cxx,r=e.cyy;return e.vangles?function(n,i,a,o){var s,l;Z5.angleDelta(a,o)>0?(s=a,l=o):(s=o,l=a);var u=eQ.findEnclosingVertexAngles(s,e.vangles)[0],c=eQ.findEnclosingVertexAngles(l,e.vangles)[1],f=[u,(s+l)/2,c];return eQ.pathPolygonAnnulus(n,i,s,l,f,t,r)}:function(n,i,a,o){return Z5.pathAnnulus(n,i,a,o,t,r)}}});var O$e=ye((hwr,z$e)=>{"use strict";var DQt=vf(),tQ=Dr(),FQt=TT().getTraceColor,zQt=tQ.fillText,OQt=_9().makeHoverPointText,qQt=s9().isPtInsidePolygon;z$e.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?qQt:tQ.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(E){return c(d,v,[E.rp0,E.rp1],[E.thetag0,E.thetag1],u)?f+Math.min(1,Math.abs(E.thetag1-E.thetag0)/h)-1+(E.rp1-d)/(E.rp1-E.rp0)-1:1/0};if(DQt.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 C=tQ.extendFlat({},p,{r:p.s,theta:p.p});return zQt(p,a,t),OQt(C,a,o,t),t.hovertemplate=a.hovertemplate,t.color=FQt(a,p),t.xLabelVal=t.yLabelVal=void 0,p.s<0&&(t.idealAlign="left"),[t]}}});var B$e=ye((dwr,q$e)=>{"use strict";q$e.exports={moduleType:"trace",name:"barpolar",basePlotModule:v9(),categories:["polar","bar","showLegend"],attributes:J$(),layoutAttributes:$$(),supplyDefaults:E$e(),supplyLayoutDefaults:k$e(),calc:Q$().calc,crossTraceCalc:Q$().crossTraceCalc,plot:F$e(),colorbar:$d(),formatLabels:y9(),style:N0().style,styleOnSelect:N0().styleOnSelect,hoverPoints:O$e(),selectPoints:AT(),meta:{}}});var U$e=ye((vwr,N$e)=>{"use strict";N$e.exports=B$e()});var rQ=ye((pwr,V$e)=>{"use strict";V$e.exports={attr:"subplot",name:"smith",axisNames:["realaxis","imaginaryaxis"],axisName2dataArray:{imaginaryaxis:"imag",realaxis:"real"}}});var iQ=ye((gwr,W$e)=>{"use strict";var BQt=Eh(),Nf=Rd(),NQt=kc().attributes,Dx=Dr().extendFlat,G$e=mc().overrideAll,H$e=G$e({color:Nf.color,showline:Dx({},Nf.showline,{dflt:!0}),linecolor:Nf.linecolor,linewidth:Nf.linewidth,showgrid:Dx({},Nf.showgrid,{dflt:!0}),gridcolor:Nf.gridcolor,gridwidth:Nf.gridwidth,griddash:Nf.griddash},"plot","from-root"),j$e=G$e({ticklen:Nf.ticklen,tickwidth:Dx({},Nf.tickwidth,{dflt:2}),tickcolor:Nf.tickcolor,showticklabels:Nf.showticklabels,labelalias:Nf.labelalias,showtickprefix:Nf.showtickprefix,tickprefix:Nf.tickprefix,showticksuffix:Nf.showticksuffix,ticksuffix:Nf.ticksuffix,tickfont:Nf.tickfont,tickformat:Nf.tickformat,hoverformat:Nf.hoverformat,layer:Nf.layer},"plot","from-root"),UQt=Dx({visible:Dx({},Nf.visible,{dflt:!0}),tickvals:{dflt:[.2,.5,1,2,5],valType:"data_array",editType:"plot"},tickangle:Dx({},Nf.tickangle,{dflt:90}),ticks:{valType:"enumerated",values:["top","bottom",""],editType:"ticks"},side:{valType:"enumerated",values:["top","bottom"],dflt:"top",editType:"plot"},editType:"calc"},H$e,j$e),VQt=Dx({visible:Dx({},Nf.visible,{dflt:!0}),tickvals:{valType:"data_array",editType:"plot"},ticks:Nf.ticks,editType:"calc"},H$e,j$e);W$e.exports={domain:NQt({name:"smith",editType:"plot"}),bgcolor:{valType:"color",editType:"plot",dflt:BQt.background},realaxis:UQt,imaginaryaxis:VQt,editType:"calc"}});var Y$e=ye((mwr,Z$e)=>{"use strict";var Y5=Dr(),GQt=Ca(),HQt=pl(),jQt=k_(),WQt=Id().getSubplotData,XQt=r_(),ZQt=t_(),YQt=QM(),KQt=ym(),K5=iQ(),nQ=rQ(),X$e=nQ.axisNames,JQt=QQt(function(e){return Y5.isTypedArray(e)&&(e=Array.from(e)),e.slice().reverse().map(function(t){return-t}).concat([0]).concat(e)},String);function $Qt(e,t,r,n){var i=r("bgcolor");n.bgColor=GQt.combine(i,n.paper_bgcolor);var a=WQt(n.fullData,nQ.name,n.id),o=n.layoutOut,s;function l(L,_){return r(s+"."+L,_)}for(var u=0;u<X$e.length;u++){s=X$e[u],Y5.isPlainObject(e[s])||(e[s]={});var c=e[s],f=HQt.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",KQt(f,o),XQt(c,f,l,f.type),h){var d=s==="realaxis";if(d&&l("side"),d)l("tickvals");else{var v=JQt(t.realaxis.tickvals||K5.realaxis.tickvals.dflt);l("tickvals",v)}Y5.isTypedArray(f.tickvals)&&(f.tickvals=Array.from(f.tickvals));var x,b,p,C,E=n.font||{};h&&(x=l("color"),b=x===c.color?x:E.color,p=E.size,C=E.family),ZQt(c,f,l,f.type,{noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0,noTicklabelstep:!0,noAng:!d,noExp:!0,font:{color:b,size:p,family:C}}),Y5.coerce2(e,t,K5,s+".ticklen"),Y5.coerce2(e,t,K5,s+".tickwidth"),Y5.coerce2(e,t,K5,s+".tickcolor",t.color);var A=l("ticks");A||(delete t[s].ticklen,delete t[s].tickwidth,delete t[s].tickcolor),YQt(c,f,l,{dfltColor:x,bgColor:n.bgColor,blend:60,showLine:!0,showGrid:!0,noZeroLine:!0,attributes:K5[s]}),l("layer")}l("hoverformat"),delete f.type,f._input=c}}Z$e.exports=function(t,r,n){jQt(t,r,n,{noUirevision:!0,type:nQ.name,attributes:K5,handleDefaults:$Qt,font:r.font,paper_bgcolor:r.paper_bgcolor,fullData:n,layoutOut:r})};function QQt(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 tQe=ye((ywr,eQe)=>{"use strict";var eer=Id().getSubplotCalcData,ter=Dr().counterRegex,rer=W$(),J$e=rQ(),$$e=J$e.attr,yw=J$e.name,K$e=ter(yw),Q$e={};Q$e[$$e]={valType:"subplotid",dflt:yw,editType:"calc"};function ier(e){for(var t=e._fullLayout,r=e.calcdata,n=t._subplots[yw],i=0;i<n.length;i++){var a=n[i],o=eer(r,yw,a),s=t[a]._subplot;s||(s=rer(e,a,!0),t[a]._subplot=s),s.plot(o,t,e._promises)}}function ner(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()}}}eQe.exports={attr:$$e,name:yw,idRoot:yw,idRegex:K$e,attrRegex:K$e,attributes:Q$e,layoutAttributes:iQ(),supplyLayoutDefaults:Y$e(),plot:ier,clean:ner,toSVG:vh().toSVG}});var aQ=ye((_wr,rQe)=>{"use strict";var aer=Qo().hovertemplateAttrs,oer=Qo().texttemplateAttrs,T9=Ao().extendFlat,ser=Eg(),d0=pf(),ler=Vl(),J5=d0.line;rQe.exports={mode:d0.mode,real:{valType:"data_array",editType:"calc+clearAxisTypes"},imag:{valType:"data_array",editType:"calc+clearAxisTypes"},text:d0.text,texttemplate:oer({editType:"plot"},{keys:["real","imag","text"]}),hovertext:d0.hovertext,line:{color:J5.color,width:J5.width,dash:J5.dash,backoff:J5.backoff,shape:T9({},J5.shape,{values:["linear","spline"]}),smoothing:J5.smoothing,editType:"calc"},connectgaps:d0.connectgaps,marker:d0.marker,cliponaxis:T9({},d0.cliponaxis,{dflt:!1}),textposition:d0.textposition,textfont:d0.textfont,fill:T9({},d0.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:ser(),hoverinfo:T9({},ler.hoverinfo,{flags:["real","imag","text","name"]}),hoveron:d0.hoveron,hovertemplate:aer(),selected:d0.selected,unselected:d0.unselected}});var aQe=ye((xwr,nQe)=>{"use strict";var A9=Dr(),$5=Ru(),uer=$p(),cer=R0(),iQe=J3(),fer=D0(),her=Ig(),der=Sm().PTS_LINESONLY,ver=aQ();nQe.exports=function(t,r,n,i){function a(l,u){return A9.coerce(t,r,ver,l,u)}var o=per(t,r,i,a);if(!o){r.visible=!1;return}a("mode",o<der?"lines+markers":"lines"),a("text"),a("hovertext"),r.hoveron!=="fills"&&a("hovertemplate"),$5.hasMarkers(r)&&uer(t,r,n,i,a,{gradient:!0}),$5.hasLines(r)&&(cer(t,r,n,i,a,{backoff:!0}),iQe(t,r,a),a("connectgaps")),$5.hasText(r)&&(a("texttemplate"),fer(t,r,i,a));var s=[];($5.hasMarkers(r)||$5.hasText(r))&&(a("cliponaxis"),a("marker.maxdisplayed"),s.push("points")),a("fill"),r.fill!=="none"&&(her(t,r,n,a),$5.hasLines(r)||iQe(t,r,a)),(r.fill==="tonext"||r.fill==="toself")&&s.push("fills"),a("hoveron",s.join("+")||"points"),A9.coerceSelectionMarkerOpacity(r,a)};function per(e,t,r,n){var i=n("real"),a=n("imag"),o;return i&&a&&(o=Math.min(i.length,a.length)),A9.isTypedArray(i)&&(t.real=i=Array.from(i)),A9.isTypedArray(a)&&(t.imag=a=Array.from(a)),t._length=o,o}});var lQe=ye((bwr,sQe)=>{"use strict";var oQe=ho();sQe.exports=function(t,r,n){var i={},a=n[r.subplot]._subplot;return i.realLabel=oQe.tickText(a.radialAxis,t.real,!0).text,i.imagLabel=oQe.tickText(a.angularAxis,t.imag,!0).text,i}});var fQe=ye((wwr,cQe)=>{"use strict";var uQe=Eo(),ger=hs().BADNUM,mer=F0(),yer=Cm(),_er=z0(),xer=O0().calcMarkerSize;cQe.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]={};uQe(h)&&uQe(d)?(v.real=h,v.imag=d):v.real=ger}return xer(r,u),mer(t,r),yer(c,r),_er(c,r),c}});var vQe=ye((Twr,dQe)=>{"use strict";var ber=iT(),hQe=hs().BADNUM,wer=G$(),Ter=wer.smith;dQe.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===hQe)f.x=f.y=hQe;else{var d=Ter([h,f.imag]);f.x=d[0],f.y=d[1]}}ber(t,s,n,i)}});var mQe=ye((Awr,gQe)=>{"use strict";var Aer=sT();function Ser(e,t,r,n){var i=Aer(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,pQe(s,l,o,a),a.hovertemplate=l.hovertemplate,i}}function pQe(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>")}}gQe.exports={hoverPoints:Ser,makeHoverPointText:pQe}});var _Qe=ye((Swr,yQe)=>{"use strict";yQe.exports={moduleType:"trace",name:"scattersmith",basePlotModule:tQe(),categories:["smith","symbols","showLegend","scatter-like"],attributes:aQ(),supplyDefaults:aQe(),colorbar:$d(),formatLabels:lQe(),calc:fQe(),plot:vQe(),style:ap().style,styleOnSelect:ap().styleOnSelect,hoverPoints:mQe().hoverPoints,selectPoints:lT(),meta:{}}});var bQe=ye((Mwr,xQe)=>{"use strict";xQe.exports=_Qe()});var Sv=ye((Ewr,TQe)=>{var M9=Fh();function wQe(){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={}}M9(wQe.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 oQ(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(Hs.local.invalidDate||Hs.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name)}function S9(e,t){return e=""+e,"000000".substring(0,t-e.length)+e}M9(oQ.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(Hs.local.invalidDate||Hs.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(Hs.local.differentCalendars||Hs.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?"-":"")+S9(Math.abs(this.year()),4)+"-"+S9(this.month(),2)+"-"+S9(this.day(),2)}});function sQ(){this.shortYearCutoff="+10"}M9(sQ.prototype,{_validateLevel:0,newDate:function(e,t,r){return e==null?this.today():(e.year&&(this._validate(e,t,r,Hs.local.invalidDate||Hs.regionalOptions[""].invalidDate),r=e.day(),t=e.month(),e=e.year()),new oQ(this,e,t,r))},today:function(){return this.fromJSDate(new Date)},epoch:function(e){var t=this._validate(e,this.minMonth,this.minDay,Hs.local.invalidYear||Hs.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,Hs.local.invalidYear||Hs.regionalOptions[""].invalidYear);return(t.year()<0?"-":"")+S9(Math.abs(t.year()),4)},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Hs.local.invalidYear||Hs.regionalOptions[""].invalidYear),12},monthOfYear:function(e,t){var r=this._validate(e,t,this.minDay,Hs.local.invalidMonth||Hs.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,Hs.local.invalidMonth||Hs.regionalOptions[""].invalidMonth),r},daysInYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,Hs.local.invalidYear||Hs.regionalOptions[""].invalidYear);return this.leapYear(t)?366:365},dayOfYear:function(e,t,r){var n=this._validate(e,t,r,Hs.local.invalidDate||Hs.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,Hs.local.invalidDate||Hs.regionalOptions[""].invalidDate);return(Math.floor(this.toJD(n))+2)%this.daysInWeek()},extraInfo:function(e,t,r){return this._validate(e,t,r,Hs.local.invalidDate||Hs.regionalOptions[""].invalidDate),{}},add:function(e,t,r){return this._validate(e,this.minMonth,this.minDay,Hs.local.invalidDate||Hs.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,Hs.local.invalidDate||Hs.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,Hs.local.invalidDate||Hs.regionalOptions[""].invalidDate);return Hs.instance().fromJD(this.toJD(n)).toJSDate()},fromJSDate:function(e){return this.fromJD(Hs.instance().fromJSDate(e).toJD())},_validate:function(e,t,r,n){if(e.year){if(this._validateLevel===0&&this.name!==e.calendar().name)throw(Hs.local.differentCalendars||Hs.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 lQ(e){this.local=this.regionalOptions[e]||this.regionalOptions[""]}lQ.prototype=new sQ;M9(lQ.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,Hs.local.invalidYear||Hs.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,Hs.local.invalidMonth||Hs.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,Hs.local.invalidDate||Hs.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,Hs.local.invalidDate||Hs.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 Hs=TQe.exports=new wQe;Hs.cdate=oQ;Hs.baseCalendar=sQ;Hs.calendars.gregorian=lQ});var AQe=ye(()=>{var uQ=Fh(),Ud=Sv();uQ(Ud.regionalOptions[""],{invalidArguments:"Invalid arguments",invalidFormat:"Cannot format a date from another calendar",missingNumberAt:"Missing number at position {0}",unknownNameAt:"Unknown name at position {0}",unexpectedLiteralAt:"Unexpected literal at position {0}",unexpectedText:"Additional text found at end"});Ud.local=Ud.regionalOptions[""];uQ(Ud.cdate.prototype,{formatDate:function(e,t){return typeof e!="string"&&(t=e,e=""),this._calendar.formatDate(e||"",this,t)}});uQ(Ud.baseCalendar.prototype,{UNIX_EPOCH:Ud.instance().newDate(1970,1,1).toJD(),SECS_PER_DAY:24*60*60,TICKS_EPOCH:Ud.instance().jdEpoch,TICKS_PER_DAY:24*60*60*1e7,ATOM:"yyyy-mm-dd",COOKIE:"D, dd M yyyy",FULL:"DD, MM d, yyyy",ISO_8601:"yyyy-mm-dd",JULIAN:"J",RFC_822:"D, d M yy",RFC_850:"DD, dd-M-yy",RFC_1036:"D, d M yy",RFC_1123:"D, d M yyyy",RFC_2822:"D, d M yyyy",RSS:"D, d M yy",TICKS:"!",TIMESTAMP:"@",W3C:"yyyy-mm-dd",formatDate:function(e,t,r){if(typeof e!="string"&&(r=t,t=e,e=""),!t)return"";if(t.calendar()!==this)throw Ud.local.invalidFormat||Ud.regionalOptions[""].invalidFormat;e=e||this.local.dateFormat,r=r||{};for(var n=r.dayNamesShort||this.local.dayNamesShort,i=r.dayNames||this.local.dayNames,a=r.monthNumbers||this.local.monthNumbers,o=r.monthNamesShort||this.local.monthNamesShort,s=r.monthNames||this.local.monthNames,l=r.calculateWeek||this.local.calculateWeek,u=function(A,L){for(var _=1;E+_<e.length&&e.charAt(E+_)===A;)_++;return E+=_-1,Math.floor(_/(L||1))>1},c=function(A,L,_,k){var M=""+L;if(u(A,k))for(;M.length<_;)M="0"+M;return M},f=function(A,L,_,k){return u(A)?k[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="",C=!1,E=0;E<e.length;E++)if(C)e.charAt(E)==="'"&&!u("'")?C=!1:p+=e.charAt(E);else switch(e.charAt(E)){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+="'":C=!0;break;default:p+=e.charAt(E)}return p},parseDate:function(e,t,r){if(t==null)throw Ud.local.invalidArguments||Ud.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(z,O){for(var V=1;g+V<e.length&&e.charAt(g+V)===z;)V++;return g+=V-1,Math.floor(V/(O||1))>1},C=function(z,O){var V=p(z,O),G=[2,3,V?4:2,V?4:2,10,11,20]["oyYJ@!".indexOf(z)+1],Z=new RegExp("^-?\\d{1,"+G+"}"),H=t.substring(M).match(Z);if(!H)throw(Ud.local.missingNumberAt||Ud.regionalOptions[""].missingNumberAt).replace(/\{0\}/,M);return M+=H[0].length,parseInt(H[0],10)},E=this,A=function(){if(typeof s=="function"){p("m");var z=s.call(E,t.substring(M));return M+=z.length,z}return C("m")},L=function(z,O,V,G){for(var Z=p(z,G)?V:O,H=0;H<Z.length;H++)if(t.substr(M,Z[H].length).toLowerCase()===Z[H].toLowerCase())return M+=Z[H].length,H+E.minMonth;throw(Ud.local.unknownNameAt||Ud.regionalOptions[""].unknownNameAt).replace(/\{0\}/,M)},_=function(){if(typeof u=="function"){var z=p("M")?u.call(E,t.substring(M)):l.call(E,t.substring(M));return M+=z.length,z}return L("M",l,u)},k=function(){if(t.charAt(M)!==e.charAt(g))throw(Ud.local.unexpectedLiteralAt||Ud.regionalOptions[""].unexpectedLiteralAt).replace(/\{0\}/,M);M++},M=0,g=0;g<e.length;g++)if(b)e.charAt(g)==="'"&&!p("'")?b=!1:k();else switch(e.charAt(g)){case"d":d=C("d");break;case"D":L("D",i,a);break;case"o":v=C("o");break;case"w":C("w");break;case"m":h=A();break;case"M":h=_();break;case"y":var P=g;x=!p("y",2),g=P,f=C("y",2);break;case"Y":f=C("Y",2);break;case"J":c=C("J")+.5,t.charAt(M)==="."&&(M++,C("J"));break;case"@":c=C("@")/this.SECS_PER_DAY+this.UNIX_EPOCH;break;case"!":c=C("!")/this.TICKS_PER_DAY+this.TICKS_EPOCH;break;case"*":M=t.length;break;case"'":p("'")?k():b=!0;break;default:k()}if(M<t.length)throw Ud.local.unexpectedText||Ud.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 SQe=ye(()=>{var Fx=Sv(),Mer=Fh(),cQ=Fx.instance();function E9(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}E9.prototype=new Fx.baseCalendar;Mer(E9.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(Cer);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(ker);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(Ler);return t?t[0]:""}var r=this._validateYear(e),n=e.month(),i=this.toChineseMonth(r,n),a=["\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341","\u5341\u4E00","\u5341\u4E8C"][i-1];return this.isIntercalaryMonth(r,n)&&(a="\u95F0"+a),a},parseMonth:function(e,t){e=this._validateYear(e);var r=parseInt(t),n;if(isNaN(r))t[0]==="\u95F0"&&(n=!0,t=t.substring(1)),t[t.length-1]==="\u6708"&&(t=t.substring(0,t.length-1)),r=1+["\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341","\u5341\u4E00","\u5341\u4E8C"].indexOf(t);else{var i=t[t.length-1];n=i==="i"||i==="I"}var a=this.toMonthIndex(e,r,n);return a},dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:1,isRTL:!1}},_validateYear:function(e,t){if(e.year&&(e=e.year()),typeof e!="number"||e<1888||e>2111)throw t.replace(/\{0\}/,this.local.name);return e},toMonthIndex:function(e,t,r){var n=this.intercalaryMonth(e),i=r&&t!==n;if(i||t<1||t>12)throw Fx.local.invalidMonth.replace(/\{0\}/,this.local.name);var a;return n?!r&&t<=n?a=t-1:a=t:a=t-1,a},toChineseMonth:function(e,t){e.year&&(e=e.year(),t=e.month());var r=this.intercalaryMonth(e),n=r?12:11;if(t<0||t>n)throw Fx.local.invalidMonth.replace(/\{0\}/,this.local.name);var i;return r?t<r?i=t+1:i=t:i=t+1,i},intercalaryMonth:function(e){e=this._validateYear(e);var t=zx[e-zx[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,Fx.local.invalidyear),i=Ox[n-Ox[0]],a=i>>9&4095,o=i>>5&15,s=i&31,l;l=cQ.newDate(a,o,s),l.add(4-(l.dayOfWeek()||7),"d");var u=this.toJD(e,t,r)-l.toJD();return 1+Math.floor(u/7)},monthsInYear:function(e){return this.leapYear(e)?13:12},daysInMonth:function(e,t){e.year&&(t=e.month(),e=e.year()),e=this._validateYear(e);var r=zx[e-zx[0]],n=r>>13,i=n?12:11;if(t>i)throw Fx.local.invalidMonth.replace(/\{0\}/,this.local.name);var a=r&1<<12-t?30:29;return a},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(e,t,r){var n=this._validate(e,a,r,Fx.local.invalidDate);e=this._validateYear(n.year()),t=n.month(),r=n.day();var i=this.isIntercalaryMonth(e,t),a=this.toChineseMonth(e,t),o=Ier(e,a,r,i);return cQ.toJD(o.year,o.month,o.day)},fromJD:function(e){var t=cQ.fromJD(e),r=Per(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(Eer),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(E9.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 Eer=/^\s*(-?\d\d\d\d|\d\d)[-/](\d?\d)([iI]?)[-/](\d?\d)/m,Cer=/^\d?\d[iI]?/m,ker=/^闰?十?[一二三四五六七八九]?月/m,Ler=/^闰?十?[一二三四五六七八九]?/m;Fx.calendars.chinese=E9;var zx=[1887,5780,5802,19157,2742,50359,1198,2646,46378,7466,3412,30122,5482,67949,2396,5294,43597,6732,6954,36181,2772,4954,18781,2396,54427,5274,6730,47781,5800,6868,21210,4790,59703,2350,5270,46667,3402,3496,38325,1388,4782,18735,2350,52374,6804,7498,44457,2906,1388,29294,4700,63789,6442,6804,56138,5802,2772,38235,1210,4698,22827,5418,63125,3476,5802,43701,2484,5302,27223,2646,70954,7466,3412,54698,5482,2412,38062,5294,2636,32038,6954,60245,2772,4826,43357,2394,5274,39501,6730,72357,5800,5844,53978,4790,2358,38039,5270,87627,3402,3496,54708,5484,4782,43311,2350,3222,27978,7498,68965,2904,5484,45677,4700,6444,39573,6804,6986,19285,2772,62811,1210,4698,47403,5418,5780,38570,5546,76469,2420,5302,51799,2646,5414,36501,3412,5546,18869,2412,54446,5276,6732,48422,6822,2900,28010,4826,92509,2394,5274,55883,6730,6820,47956,5812,2778,18779,2358,62615,5270,5450,46757,3492,5556,27318,4718,67887,2350,3222,52554,7498,3428,38252,5468,4700,31022,6444,64149,6804,6986,43861,2772,5338,35421,2650,70955,5418,5780,54954,5546,2740,38074,5302,2646,29991,3366,61011,3412,5546,43445,2412,5294,35406,6732,72998,6820,6996,52586,2778,2396,38045,5274,6698,23333,6820,64338,5812,2746,43355,2358,5270,39499,5450,79525,3492,5548],Ox=[1887,966732,967231,967733,968265,968766,969297,969798,970298,970829,971330,971830,972362,972863,973395,973896,974397,974928,975428,975929,976461,976962,977462,977994,978494,979026,979526,980026,980558,981059,981559,982091,982593,983124,983624,984124,984656,985157,985656,986189,986690,987191,987722,988222,988753,989254,989754,990286,990788,991288,991819,992319,992851,993352,993851,994383,994885,995385,995917,996418,996918,997450,997949,998481,998982,999483,1000014,1000515,1001016,1001548,1002047,1002578,1003080,1003580,1004111,1004613,1005113,1005645,1006146,1006645,1007177,1007678,1008209,1008710,1009211,1009743,1010243,1010743,1011275,1011775,1012306,1012807,1013308,1013840,1014341,1014841,1015373,1015874,1016404,1016905,1017405,1017937,1018438,1018939,1019471,1019972,1020471,1021002,1021503,1022035,1022535,1023036,1023568,1024069,1024568,1025100,1025601,1026102,1026633,1027133,1027666,1028167,1028666,1029198,1029699,1030199,1030730,1031231,1031763,1032264,1032764,1033296,1033797,1034297,1034828,1035329,1035830,1036362,1036861,1037393,1037894,1038394,1038925,1039427,1039927,1040459,1040959,1041491,1041992,1042492,1043023,1043524,1044024,1044556,1045057,1045558,1046090,1046590,1047121,1047622,1048122,1048654,1049154,1049655,1050187,1050689,1051219,1051720,1052220,1052751,1053252,1053752,1054284,1054786,1055285,1055817,1056317,1056849,1057349,1057850,1058382,1058883,1059383,1059915,1060415,1060947,1061447,1061947,1062479,1062981,1063480,1064012,1064514,1065014,1065545,1066045,1066577,1067078,1067578,1068110,1068611,1069112,1069642,1070142,1070674,1071175,1071675,1072207,1072709,1073209,1073740,1074241,1074741,1075273,1075773,1076305,1076807,1077308,1077839,1078340,1078840,1079372,1079871,1080403,1080904];function Per(e,t,r,n){var i,a;if(typeof e=="object")i=e,a=t||{};else{var o=typeof e=="number"&&e>=1888&&e<=2111;if(!o)throw new Error("Solar year outside range 1888-2111");var s=typeof t=="number"&&t>=1&&t<=12;if(!s)throw new Error("Solar month outside range 1 - 12");var l=typeof r=="number"&&r>=1&&r<=31;if(!l)throw new Error("Solar day outside range 1 - 31");i={year:e,month:t,day:r},a=n||{}}var u=Ox[i.year-Ox[0]],c=i.year<<9|i.month<<5|i.day;a.year=c>=u?i.year:i.year-1,u=Ox[a.year-Ox[0]];var f=u>>9&4095,h=u>>5&15,d=u&31,v,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=zx[a.year-zx[0]],C;for(C=0;C<13;C++){var E=p&1<<12-C?30:29;if(v<E)break;v-=E}var A=p>>13;return!A||C<A?(a.isIntercalary=!1,a.month=1+C):C===A?(a.isIntercalary=!0,a.month=C):(a.isIntercalary=!1,a.month=C),a.day=1+v,a}function Ier(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=zx[o.year-zx[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=Ox[o.year-Ox[0]],C=p>>9&4095,E=p>>5&15,A=p&31,L=new Date(C,E-1,A+f);return a.year=L.getFullYear(),a.month=1+L.getMonth(),a.day=L.getDate(),a}});var MQe=ye(()=>{var _w=Sv(),Rer=Fh();function fQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}fQ.prototype=new _w.baseCalendar;Rer(fQ.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=fQ});var EQe=ye(()=>{var b1=Sv(),Der=Fh();function hQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}hQ.prototype=new b1.baseCalendar;Der(hQ.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:Fer[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 Fer={20:"Fruitbat",21:"Anchovy"};b1.calendars.discworld=hQ});var CQe=ye(()=>{var xw=Sv(),zer=Fh();function dQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}dQ.prototype=new xw.baseCalendar;zer(dQ.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=dQ});var kQe=ye(()=>{var qx=Sv(),Oer=Fh();function vQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}vQ.prototype=new qx.baseCalendar;Oer(vQ.prototype,{name:"Hebrew",jdEpoch:347995.5,daysPerMonth:[30,29,30,29,30,29,30,29,30,29,30,29,29],hasYearZero:!1,minMonth:1,firstMonth:7,minDay:1,regionalOptions:{"":{name:"Hebrew",epochs:["BAM","AM"],monthNames:["Nisan","Iyar","Sivan","Tammuz","Av","Elul","Tishrei","Cheshvan","Kislev","Tevet","Shevat","Adar","Adar II"],monthNamesShort:["Nis","Iya","Siv","Tam","Av","Elu","Tis","Che","Kis","Tev","She","Ada","Ad2"],dayNames:["Yom Rishon","Yom Sheni","Yom Shlishi","Yom Revi'i","Yom Chamishi","Yom Shishi","Yom Shabbat"],dayNamesShort:["Ris","She","Shl","Rev","Cha","Shi","Sha"],dayNamesMin:["Ri","She","Shl","Re","Ch","Shi","Sha"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,qx.local.invalidYear);return this._leapYear(t.year())},_leapYear:function(e){return e=e<0?e+1:e,C9(e*7+1,19)<7},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,qx.local.invalidYear),this._leapYear(e.year?e.year():e)?13:12},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,qx.local.invalidYear);return e=t.year(),this.toJD(e===-1?1:e+1,7,1)-this.toJD(e,7,1)},daysInMonth:function(e,t){return e.year&&(t=e.month(),e=e.year()),this._validate(e,t,this.minDay,qx.local.invalidMonth),t===12&&this.leapYear(e)||t===8&&C9(this.daysInYear(e),10)===5?30:t===9&&C9(this.daysInYear(e),10)===3?29:this.daysPerMonth[t-1]},weekDay:function(e,t,r){return this.dayOfWeek(e,t,r)!==6},extraInfo:function(e,t,r){var n=this._validate(e,t,r,qx.local.invalidDate);return{yearType:(this.leapYear(n)?"embolismic":"common")+" "+["deficient","regular","complete"][this.daysInYear(n)%10-3]}},toJD:function(e,t,r){var n=this._validate(e,t,r,qx.local.invalidDate);e=n.year(),t=n.month(),r=n.day();var i=e<=0?e+1:e,a=this.jdEpoch+this._delay1(i)+this._delay2(i)+r+1;if(t<7){for(var o=7;o<=this.monthsInYear(e);o++)a+=this.daysInMonth(e,o);for(var o=1;o<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 C9(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 C9(e,t){return e-t*Math.floor(e/t)}qx.calendars.hebrew=vQ});var LQe=ye(()=>{var hk=Sv(),qer=Fh();function pQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}pQ.prototype=new hk.baseCalendar;qer(pQ.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,hk.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,hk.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,hk.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)}});hk.calendars.islamic=pQ});var PQe=ye(()=>{var dk=Sv(),Ber=Fh();function gQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}gQ.prototype=new dk.baseCalendar;Ber(gQ.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,dk.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,dk.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,dk.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)}});dk.calendars.julian=gQ});var RQe=ye(()=>{var ug=Sv(),Ner=Fh();function yQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}yQ.prototype=new ug.baseCalendar;Ner(yQ.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=mQ(e+8+17*20,365);return[Math.floor(t/20)+1,mQ(t,20)]},_toTzolkin:function(e){return e-=this.jdEpoch,[IQe(e+20,20),IQe(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 mQ(e,t){return e-t*Math.floor(e/t)}function IQe(e,t){return mQ(e-1,t)+1}ug.calendars.mayan=yQ});var FQe=ye(()=>{var bw=Sv(),Uer=Fh();function _Q(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}_Q.prototype=new bw.baseCalendar;var DQe=bw.instance("gregorian");Uer(_Q.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 DQe.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+DQe.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=_Q});var zQe=ye(()=>{var ww=Sv(),Ver=Fh();function xQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}xQ.prototype=new ww.baseCalendar;Ver(xQ.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=xQ});var OQe=ye(()=>{var Q5=Sv(),Ger=Fh();function L9(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}function k9(e){var t=e-475;e<0&&t++;var r=.242197,n=r*t,i=r*(t+1),a=n-Math.floor(n),o=i-Math.floor(i);return a>o}L9.prototype=new Q5.baseCalendar;Ger(L9.prototype,{name:"Persian",jdEpoch:19483205e-1,daysPerMonth:[31,31,31,31,31,31,30,30,30,30,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Persian",epochs:["BP","AP"],monthNames:["Farvardin","Ordibehesht","Khordad","Tir","Mordad","Shahrivar","Mehr","Aban","Azar","Dey","Bahman","Esfand"],monthNamesShort:["Far","Ord","Kho","Tir","Mor","Sha","Meh","Aba","Aza","Dey","Bah","Esf"],dayNames:["Yekshanbeh","Doshanbeh","Seshanbeh","Chah\u0101rshanbeh","Panjshanbeh","Jom'eh","Shanbeh"],dayNamesShort:["Yek","Do","Se","Cha","Panj","Jom","Sha"],dayNamesMin:["Ye","Do","Se","Ch","Pa","Jo","Sh"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!1}},leapYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,Q5.local.invalidYear);return k9(t.year())},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-((n.dayOfWeek()+1)%7),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,Q5.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,Q5.local.invalidDate);e=n.year(),t=n.month(),r=n.day();var i=0;if(e>0)for(var a=1;a<e;a++)k9(a)&&i++;else if(e<0)for(var a=e;a<0;a++)k9(a)&&i--;return r+(t<=7?(t-1)*31:(t-1)*30+6)+(e>0?e-1:e)*365+i+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e)+.5;var t=475+(e-this.toJD(475,1,1))/365.242197,r=Math.floor(t);r<=0&&r--,e>this.toJD(r,12,k9(r)?30:29)&&(r++,r===0&&r++);var n=e-this.toJD(r,1,1)+1,i=n<=186?Math.ceil(n/31):Math.ceil((n-6)/30),a=e-this.toJD(r,i,1)+1;return this.newDate(r,i,a)}});Q5.calendars.persian=L9;Q5.calendars.jalali=L9});var qQe=ye(()=>{var Tw=Sv(),Her=Fh(),P9=Tw.instance();function bQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}bQ.prototype=new Tw.baseCalendar;Her(bQ.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 P9.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 P9.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 P9.toJD(i,n.month(),n.day())},fromJD:function(e){var t=P9.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=bQ});var BQe=ye(()=>{var Aw=Sv(),jer=Fh(),I9=Aw.instance();function wQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}wQ.prototype=new Aw.baseCalendar;jer(wQ.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 I9.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 I9.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 I9.toJD(i,n.month(),n.day())},fromJD:function(e){var t=I9.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=wQ});var NQe=ye(()=>{var Sw=Sv(),Wer=Fh();function TQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}TQ.prototype=new Sw.baseCalendar;Wer(TQ.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=TQ;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 VQe=ye((n3r,UQe)=>{"use strict";UQe.exports=Sv();AQe();SQe();MQe();EQe();CQe();kQe();LQe();PQe();RQe();FQe();zQe();OQe();qQe();BQe();NQe()});var YQe=ye((a3r,ZQe)=>{"use strict";var HQe=VQe(),vk=Dr(),jQe=hs(),Xer=jQe.EPOCHJD,Zer=jQe.ONEDAY,MQ={valType:"enumerated",values:vk.sortObjectKeys(HQe.calendars),editType:"calc",dflt:"gregorian"},WQe=function(e,t,r,n){var i={};return i[r]=MQ,vk.coerce(e,t,i,r,n)},Yer=function(e,t,r,n){for(var i=0;i<r.length;i++)WQe(e,t,r[i]+"calendar",n.calendar)},Ker={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"},Jer={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"},$er={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"]},R9="##",Qer={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:R9,w:R9,c:{0:"D M d %X yyyy","-":"D M d %X yyyy"},x:{0:"mm/dd/yyyy","-":"mm/dd/yyyy"}};function etr(e,t,r){for(var n=Math.floor((t+.05)/Zer)+Xer,i=XQe(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=Qer[s],u?(u===R9?c=R9:c=i.formatDate(u[o]),e=e.substr(0,a)+c+e.substr(a+l),a+=c.length):a+=l;return e}var GQe={};function XQe(e){var t=GQe[e];return t||(t=GQe[e]=HQe.instance(e),t)}function pk(e){return vk.extendFlat({},MQ,{description:e})}function EQ(e){return"Sets the calendar system to use with `"+e+"` date data."}var SQ={xcalendar:pk(EQ("x"))},iy=vk.extendFlat({},SQ,{ycalendar:pk(EQ("y"))}),AQ=vk.extendFlat({},iy,{zcalendar:pk(EQ("z"))}),eS=pk(["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(" "));ZQe.exports={moduleType:"component",name:"calendars",schema:{traces:{scatter:iy,bar:iy,box:iy,heatmap:iy,contour:iy,histogram:iy,histogram2d:iy,histogram2dcontour:iy,scatter3d:AQ,surface:AQ,mesh3d:AQ,scattergl:iy,ohlc:SQ,candlestick:SQ},layout:{calendar:pk(["Sets the default calendar system to use for interpreting and","displaying dates throughout the plot."].join(" "))},subplots:{xaxis:{calendar:eS},yaxis:{calendar:eS},scene:{xaxis:{calendar:eS},yaxis:{calendar:eS},zaxis:{calendar:eS}},polar:{radialaxis:{calendar:eS}}}},layoutAttributes:MQ,handleDefaults:WQe,handleTraceDefaults:Yer,CANONICAL_SUNDAY:Jer,CANONICAL_TICK:Ker,DFLTRANGE:$er,getCal:XQe,worldCalFmt:etr}});var JQe=ye((o3r,KQe)=>{"use strict";KQe.exports=YQe()});var ttr=ye((s3r,QQe)=>{var $Qe=iye();$Qe.register([a1e(),W1e(),ixe(),Txe(),zxe(),Ibe(),jbe(),P2e(),owe(),Uwe(),E3e(),BEe(),ECe(),m6e(),nLe(),DLe(),iPe(),EIe(),WIe(),c8e(),w8e(),z8e(),J8e(),dRe(),UDe(),sFe(),ABe(),ANe(),DUe(),aVe(),vGe(),kGe(),QGe(),cje(),Sje(),Yje(),iXe(),EXe(),lZe(),LYe(),QYe(),xKe(),WKe(),oJe(),n$e(),w$e(),U$e(),bQe(),JQe()]);QQe.exports=$Qe});return ttr();})();
|
||
/*!
|
||
* 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;
|
||
})); |