Files
lm_code/bitmart/回测图表_交互式.html
2026-01-28 18:17:11 +08:00

3888 lines
4.7 MiB
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<html>
<head><meta charset="utf-8" /></head>
<body>
<div> <script type="text/javascript">window.PlotlyConfig = {MathJaxConfig: 'local'};</script>
<script type="text/javascript">/**
* plotly.js v3.3.1
* Copyright 2012-2025, Plotly, Inc.
* All rights reserved.
* Licensed under the MIT license
*/
(
function(root, factory) {
if (typeof module === "object" && module.exports) {
module.exports = factory();
} else {
root.moduleName = factory();
}
} (typeof self !== "undefined" ? self : this, () => {
"use strict";var Plotly=(()=>{var ctt=Object.create;var LS=Object.defineProperty,ftt=Object.defineProperties,htt=Object.getOwnPropertyDescriptor,dtt=Object.getOwnPropertyDescriptors,vtt=Object.getOwnPropertyNames,s6=Object.getOwnPropertySymbols,ptt=Object.getPrototypeOf,xO=Object.prototype.hasOwnProperty,lee=Object.prototype.propertyIsEnumerable;var see=(e,t,r)=>t in e?LS(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,mg=(e,t)=>{for(var r in t||(t={}))xO.call(t,r)&&see(e,r,t[r]);if(s6)for(var r of s6(t))lee.call(t,r)&&see(e,r,t[r]);return e},q1=(e,t)=>ftt(e,dtt(t));var uee=(e,t)=>{var r={};for(var n in e)xO.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&s6)for(var n of s6(e))t.indexOf(n)<0&&lee.call(e,n)&&(r[n]=e[n]);return r};var gu=(e,t)=>()=>(e&&(t=e(e=0)),t);var ye=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),cee=(e,t)=>{for(var r in t)LS(e,r,{get:t[r],enumerable:!0})},fee=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of vtt(t))!xO.call(e,i)&&i!==r&&LS(e,i,{get:()=>t[i],enumerable:!(n=htt(t,i))||n.enumerable});return e};var gtt=(e,t,r)=>(r=e!=null?ctt(ptt(e)):{},fee(t||!e||!e.__esModule?LS(r,"default",{value:e,enumerable:!0}):r,e)),ob=e=>fee(LS({},"__esModule",{value:!0}),e);var l6=ye(hee=>{"use strict";hee.version="3.3.1"});var vee=ye((dee,u6)=>{(function(t,r,n){r[t]=r[t]||n(),typeof u6!="undefined"&&u6.exports&&(u6.exports=r[t])})("Promise",typeof window!="undefined"?window:dee,function(){"use strict";var t,r,n,i=Object.prototype.toString,a=typeof setImmediate!="undefined"?function(k){return setImmediate(k)}:setTimeout;try{Object.defineProperty({},"x",{}),t=function(k,E,S,L){return Object.defineProperty(k,E,{value:S,writable:!0,configurable:L!==!1})}}catch(p){t=function(E,S,L){return E[S]=L,E}}n=function(){var k,E,S;function L(x,C){this.fn=x,this.self=C,this.next=void 0}return{add:function(C,M){S=new L(C,M),E?E.next=S:k=S,E=S,S=void 0},drain:function(){var C=k;for(k=E=r=void 0;C;)C.fn.call(C.self),C=C.next}}}();function o(p,k){n.add(p,k),r||(r=a(n.drain))}function s(p){var k,E=typeof p;return p!=null&&(E=="object"||E=="function")&&(k=p.then),typeof k=="function"?k:!1}function l(){for(var p=0;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,k,E){var S,L;try{k===!1?E.reject(p.msg):(k===!0?S=p.msg:S=k.call(void 0,p.msg),S===E.promise?E.reject(TypeError("Promise-chain cycle")):(L=s(S))?L.call(S,E.resolve,E.reject):E.resolve(S))}catch(x){E.reject(x)}}function c(p){var k,E=this;if(!E.triggered){E.triggered=!0,E.def&&(E=E.def);try{(k=s(p))?o(function(){var S=new d(E);try{k.call(p,function(){c.apply(S,arguments)},function(){f.apply(S,arguments)})}catch(L){f.call(S,L)}}):(E.msg=p,E.state=1,E.chain.length>0&&o(l,E))}catch(S){f.call(new d(E),S)}}}function f(p){var k=this;k.triggered||(k.triggered=!0,k.def&&(k=k.def),k.msg=p,k.state=2,k.chain.length>0&&o(l,k))}function h(p,k,E,S){for(var L=0;L<k.length;L++)(function(C){p.resolve(k[C]).then(function(g){E(C,g)},S)})(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 _(p){if(typeof p!="function")throw TypeError("Not a function");if(this.__NPO__!==0)throw TypeError("Not a promise");this.__NPO__=1;var k=new v(this);this.then=function(S,L){var x={success:typeof S=="function"?S:!0,failure:typeof L=="function"?L:!1};return x.promise=new this.constructor(function(M,g){if(typeof M!="function"||typeof g!="function")throw TypeError("Not a function");x.resolve=M,x.reject=g}),k.chain.push(x),k.state!==0&&o(l,k),x.promise},this.catch=function(S){return this.then(void 0,S)};try{p.call(void 0,function(S){c.call(k,S)},function(S){f.call(k,S)})}catch(E){f.call(k,E)}}var b=t({},"constructor",_,!1);return _.prototype=b,t(b,"__NPO__",0,!1),t(_,"resolve",function(k){var E=this;return k&&typeof k=="object"&&k.__NPO__===1?k:new E(function(L,x){if(typeof L!="function"||typeof x!="function")throw TypeError("Not a function");L(k)})}),t(_,"reject",function(k){return new this(function(S,L){if(typeof S!="function"||typeof L!="function")throw TypeError("Not a function");L(k)})}),t(_,"all",function(k){var E=this;return i.call(k)!="[object Array]"?E.reject(TypeError("Not an array")):k.length===0?E.resolve([]):new E(function(L,x){if(typeof L!="function"||typeof x!="function")throw TypeError("Not a function");var C=k.length,M=Array(C),g=0;h(E,k,function(T,z){M[T]=z,++g===C&&L(M)},x)})}),t(_,"race",function(k){var E=this;return i.call(k)!="[object Array]"?E.reject(TypeError("Not an array")):new E(function(L,x){if(typeof L!="function"||typeof x!="function")throw TypeError("Not a function");h(E,k,function(M,g){L(g)},x)})}),_})});var Oa=ye((arr,c6)=>{(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,kt;if(arguments.length===1){for(;++Te<Ne;)if((Ye=X[Te])!=null&&Ye>=Ye){He=kt=Ye;break}for(;++Te<Ne;)(Ye=X[Te])!=null&&(He>Ye&&(He=Ye),kt<Ye&&(kt=Ye))}else{for(;++Te<Ne;)if((Ye=se.call(X,X[Te],Te))!=null&&Ye>=Ye){He=kt=Ye;break}for(;++Te<Ne;)(Ye=se.call(X,X[Te],Te))!=null&&(He>Ye&&(He=Ye),kt<Ye&&(kt=Ye))}return[He,kt]};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,kt=Ne;if(arguments.length===1)for(;++Ye<Ne;)d(He=h(X[Ye]))?Te+=He:--kt;else for(;++Ye<Ne;)d(He=h(se.call(X,X[Ye],Ye)))?Te+=He:--kt;if(kt)return Te/kt},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,kt=0,nt=-1,jt=0;if(arguments.length===1)for(;++nt<Te;)d(He=h(X[nt]))&&(Ye=He-Ne,Ne+=Ye/++jt,kt+=Ye*(He-Ne));else for(;++nt<Te;)d(He=h(se.call(X,X[nt],nt)))&&(Ye=He-Ne,Ne+=Ye/++jt,kt+=Ye*(He-Ne));if(jt>1)return kt/(jt-1)},e.deviation=function(){var X=e.variance.apply(this,arguments);return X&&Math.sqrt(X)};function v(X){return{left:function(se,Te,Ne,He){for(arguments.length<3&&(Ne=0),arguments.length<4&&(He=se.length);Ne<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 _=v(f);e.bisectLeft=_.left,e.bisect=e.bisectRight=_.right,e.bisector=function(X){return v(X.length===1?function(se,Te){return f(X(se),Te)}:X)},e.shuffle=function(X,se,Te){(Ne=arguments.length)<3&&(Te=X.length,Ne<2&&(se=0));for(var Ne=Te-se,He,Ye;Ne;)Ye=Math.random()*Ne--|0,He=X[Ne+se],X[Ne+se]=X[Ye+se],X[Ye+se]=He;return X},e.permute=function(X,se){for(var Te=se.length,Ne=new Array(Te);Te--;)Ne[Te]=X[se[Te]];return Ne},e.pairs=function(X){for(var se=0,Te=X.length-1,Ne,He=X[0],Ye=new Array(Te<0?0:Te);se<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,kt=Ne[se]=new Array(Ye);++He<Ye;)kt[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,kt;++Ne<se;)He+=X[Ne].length;for(Ye=new Array(He);--se>=0;)for(kt=X[se],Te=kt.length;--Te>=0;)Ye[--He]=kt[Te];return Ye};var p=Math.abs;e.range=function(X,se,Te){if(arguments.length<3&&(Te=1,arguments.length<2&&(se=X,X=0)),(se-X)/Te===1/0)throw new Error("infinite range");var Ne=[],He=k(p(Te)),Ye=-1,kt;if(X*=He,se*=He,Te*=He,Te<0)for(;(kt=X+Te*++Ye)>se;)Ne.push(kt/He);else for(;(kt=X+Te*++Ye)<se;)Ne.push(kt/He);return Ne};function k(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 S;if(X instanceof S)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 kt in X)Te.set(kt,X[kt]);return Te};function S(){this._=Object.create(null)}var L="__proto__",x="\0";E(S,{has:g,get:function(X){return this._[C(X)]},set:function(X,se){return this._[C(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 C(X){return(X+="")===L||X[0]===x?x+X:X}function M(X){return(X+="")[0]===x?X.slice(1):X}function g(X){return C(X)in this._}function P(X){return(X=C(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,Hr=jt.length,qr=se[gr++],_i,bi,Zr,ai=new S,gi;++yr<Hr;)(gi=ai.get(_i=qr(bi=jt[yr])))?gi.push(bi):ai.set(_i,[bi]);return nt?(bi=nt(),Zr=function(Ii,Si){bi.set(Ii,Ye(nt,Si,gr))}):(bi={},Zr=function(Ii,Si){bi[Ii]=Ye(nt,Si,gr)}),ai.forEach(Zr),bi}function kt(nt,jt){if(jt>=se.length)return nt;var gr=[],yr=Te[jt++];return nt.forEach(function(Hr,qr){gr.push({key:Hr,values:kt(qr,jt)})}),yr?gr.sort(function(Hr,qr){return yr(Hr.key,qr.key)}):gr}return X.map=function(nt,jt){return Ye(jt,nt,0)},X.entries=function(nt){return kt(Ye(e.map,nt,0),0)},X.key=function(nt){return se.push(nt),X},X.sortKeys=function(nt){return Te[se.length-1]=nt,X},X.sortValues=function(nt){return Ne=nt,X},X.rollup=function(nt){return He=nt,X},X},e.set=function(X){var se=new V;if(X)for(var Te=0,Ne=X.length;Te<Ne;++Te)se.add(X[Te]);return se};function V(){this._=Object.create(null)}E(V,{has:g,add:function(X){return this._[C(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 j(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 H(){}e.dispatch=function(){for(var X=new te,se=-1,Te=arguments.length;++se<Te;)X[arguments[se]]=oe(X);return X};function te(){}te.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 S;function Ne(){for(var He=se,Ye=-1,kt=He.length,nt;++Ye<kt;)(nt=He[Ye].on)&&nt.apply(this,arguments);return X}return Ne.on=function(He,Ye){var kt=Te.get(He),nt;return arguments.length<2?kt&&kt.on:(kt&&(kt.on=null,se=se.slice(0,nt=se.indexOf(kt)).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 Ee(){for(var X=e.event,se;se=X.sourceEvent;)X=se;return X}function Ce(X){for(var se=new te,Te=0,Ne=arguments.length;++Te<Ne;)se[arguments[Te]]=oe(se);return se.of=function(He,Ye){return function(kt){try{var nt=kt.sourceEvent=e.event;kt.target=X,e.event=kt,se[kt.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)},Fe=function(X,se){var Te=X.matches||X[j(X,"matchesSelector")];return Fe=function(Ne,He){return Te.call(Ne,He)},Fe(X,se)};typeof Sizzle=="function"&&(Le=function(X,se){return Sizzle(X,se)[0]||null},Ae=Sizzle,Fe=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 kt=-1,nt=this.length;++kt<nt;){se.push(Te=[]),Te.parentNode=(He=this[kt]).parentNode;for(var jt=-1,gr=He.length;++jt<gr;)(Ye=He[jt])?(Te.push(Ne=X.call(Ye,Ye.__data__,jt,kt)),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=Re(X);for(var He=-1,Ye=this.length;++He<Ye;)for(var kt=this[He],nt=-1,jt=kt.length;++nt<jt;)(Ne=kt[nt])&&(se.push(Te=r(X.call(Ne,Ne.__data__,nt,He))),Te.parentNode=Ne);return Se(se)};function Re(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(ut(se,X[se]));return this}return this.each(ut(X,se))};function ut(X,se){X=e.ns.qualify(X);function Te(){this.removeAttribute(X)}function Ne(){this.removeAttributeNS(X.space,X.local)}function He(){this.setAttribute(X,se)}function Ye(){this.setAttributeNS(X.space,X.local,se)}function kt(){var jt=se.apply(this,arguments);jt==null?this.removeAttribute(X):this.setAttribute(X,jt)}function nt(){var jt=se.apply(this,arguments);jt==null?this.removeAttributeNS(X.space,X.local):this.setAttributeNS(X.space,X.local,jt)}return se==null?X.local?Ne:Te:typeof se=="function"?X.local?nt:kt:X.local?Ye:He}function pt(X){return X.trim().replace(/\s+/g," ")}Pe.classed=function(X,se){if(arguments.length<2){if(typeof X=="string"){var Te=this.node(),Ne=(X=st(X)).length,He=-1;if(se=Te.classList){for(;++He<Ne;)if(!se.contains(X[He]))return!1}else for(se=Te.getAttribute("class");++He<Ne;)if(!Zt(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 Zt(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,kt=se.apply(this,arguments);++Ye<Te;)X[Ye](this,kt)}return typeof se=="function"?He:Ne}function Gt(X){var se=Zt(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 kt=se.apply(this,arguments);kt==null?this.style.removeProperty(X):this.style.setProperty(X,kt,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(Jt(se,X[se]));return this}return this.each(Jt(X,se))};function Jt(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 kt(yr,Hr){var qr,_i=yr.length,bi=Hr.length,Zr=Math.min(_i,bi),ai=new Array(bi),gi=new Array(bi),Ii=new Array(_i),Si,ei;if(se){var Ln=new S,En=new Array(_i),Un;for(qr=-1;++qr<_i;)(Si=yr[qr])&&(Ln.has(Un=se.call(Si,Si.__data__,qr))?Ii[qr]=Si:Ln.set(Un,Si),En[qr]=Un);for(qr=-1;++qr<bi;)(Si=Ln.get(Un=se.call(Hr,ei=Hr[qr],qr)))?Si!==!0&&(ai[qr]=Si,Si.__data__=ei):gi[qr]=cr(ei),Ln.set(Un,!0);for(qr=-1;++qr<_i;)qr in En&&Ln.get(En[qr])!==!0&&(Ii[qr]=yr[qr])}else{for(qr=-1;++qr<Zr;)Si=yr[qr],ei=Hr[qr],Si?(Si.__data__=ei,ai[qr]=Si):gi[qr]=cr(ei);for(;qr<bi;++qr)gi[qr]=cr(Hr[qr]);for(;qr<_i;++qr)Ii[qr]=yr[qr]}gi.update=ai,gi.parentNode=ai.parentNode=Ii.parentNode=yr.parentNode,nt.push(gi),jt.push(ai),gr.push(Ii)}var nt=Vt([]),jt=Se([]),gr=Se([]);if(typeof X=="function")for(;++Te<Ne;)kt(He=this[Te],X.call(He,He.parentNode.__data__,Te));else for(;++Te<Ne;)kt(He=this[Te],X);return jt.enter=function(){return nt},jt.exit=function(){return gr},jt};function cr(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=$e(X));for(var Ye=0,kt=this.length;Ye<kt;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 $e(X){return function(){return Fe(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=St.apply(this,arguments);for(var se=-1,Te=this.length;++se<Te;)this[se].sort(X);return this.order()};function St(X){return arguments.length||(X=f),function(se,Te){return se&&Te?X(se.__data__,Te.__data__):!se-!Te}}Pe.each=function(X){return Qt(this,function(se,Te,Ne){X.call(se,se.__data__,Te,Ne)})};function Qt(X,se){for(var Te=0,Ne=X.length;Te<Ne;Te++)for(var He=X[Te],Ye=0,kt=He.length,nt;Ye<kt;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 Qt(this,function(){++X}),X};function Vt(X){return ie(X,_t),X}var _t=[];e.selection.enter=Vt,e.selection.enter.prototype=_t,_t.append=Pe.append,_t.empty=Pe.empty,_t.node=Pe.node,_t.call=Pe.call,_t.size=Pe.size,_t.select=function(X){for(var se=[],Te,Ne,He,Ye,kt,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;)(kt=Ye[gr])?(Te.push(He[gr]=Ne=X.call(Ye.parentNode,kt.__data__,gr,nt)),Ne.__data__=kt.__data__):Te.push(null)}return Se(se)},_t.insert=function(X,se){return arguments.length<2&&(se=It(this)),Pe.insert.call(this,X,se)};function It(X){var se,Te;return function(Ne,He,Ye){var kt=X[Ye].update,nt=kt.length,jt;for(Ye!=Te&&(Te=Ye,se=0),He>=se&&(se=He+1);!(jt=kt[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(mt(Te,X[Te],se));return this}if(Ne<2)return(Ne=this.node()["__on"+X])&&Ne._;Te=!1}return this.each(mt(X,se,Te))};function mt(X,se,Te){var Ne="__on"+X,He=X.indexOf("."),Ye=lr;He>0&&(X=X.slice(0,He));var kt=er.get(X);kt&&(X=kt,Ye=Tr);function nt(){var yr=this[Ne];yr&&(this.removeEventListener(X,yr,yr.$),delete this[Ne])}function jt(){var yr=Ye(se,r(arguments));nt.call(this),this.addEventListener(X,this[Ne]=yr,yr.$=Te),yr._=se}function gr(){var yr=new RegExp("^__on([^.]+)"+e.requote(X)+"$"),Hr;for(var qr in this)if(Hr=qr.match(yr)){var _i=this[qr];this.removeEventListener(Hr[1],_i,_i.$),delete this[qr]}}return He?se?jt:nt:se?H:gr}var er=e.map({mouseenter:"mouseover",mouseleave:"mouseout"});n&&er.forEach(function(X){"on"+X in n&&er.remove(X)});function lr(X,se){return function(Te){var Ne=e.event;e.event=Te,se[0]=this.__data__;try{X.apply(this,se)}finally{e.event=Ne}}}function Tr(X,se){var Te=lr(X,se);return function(Ne){var He=this,Ye=Ne.relatedTarget;(!Ye||Ye!==He&&!(Ye.compareDocumentPosition(He)&8))&&Te.call(He,Ne)}}var Lr,ti=0;function Br(X){var se=".dragsuppress-"+ ++ti,Te="click"+se,Ne=e.select(a(X)).on("touchmove"+se,_e).on("dragstart"+se,_e).on("selectstart"+se,_e);if(Lr==null&&(Lr="onselectstart"in X?!1:j(X.style,"userSelect")),Lr){var He=i(X).style,Ye=He[Lr];He[Lr]="none"}return function(kt){if(Ne.on(se,null),Lr&&(He[Lr]=Ye),kt){var nt=function(){Ne.on(Te,null)};Ne.on(Te,function(){_e(),nt()},!0),setTimeout(nt,0)}}}e.mouse=function(X){return dt(X,Ee())};var Vr=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function dt(X,se){se.changedTouches&&(se=se.changedTouches[0]);var Te=X.ownerSVGElement||X;if(Te.createSVGPoint){var Ne=Te.createSVGPoint();if(Vr<0){var He=a(X);if(He.scrollX||He.scrollY){Te=e.select("body").append("svg").style({position:"absolute",top:0,left:0,margin:0,padding:0,border:"none"},"important");var Ye=Te[0][0].getScreenCTM();Vr=!(Ye.f||Ye.e),Te.remove()}}return Vr?(Ne.x=se.pageX,Ne.y=se.pageY):(Ne.x=se.clientX,Ne.y=se.clientY),Ne=Ne.matrixTransform(X.getScreenCTM().inverse()),[Ne.x,Ne.y]}var kt=X.getBoundingClientRect();return[se.clientX-kt.left-X.clientLeft,se.clientY-kt.top-X.clientTop]}e.touch=function(X,se,Te){if(arguments.length<3&&(Te=se,se=Ee().changedTouches),se){for(var Ne=0,He=se.length,Ye;Ne<He;++Ne)if((Ye=se[Ne]).identifier===Te)return dt(X,Ye)}},e.behavior.drag=function(){var X=Ce(He,"drag","dragstart","dragend"),se=null,Te=Ye(H,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(kt,nt,jt,gr,yr){return function(){var Hr=this,qr=e.event.target.correspondingElement||e.event.target,_i=Hr.parentNode,bi=X.of(Hr,arguments),Zr=0,ai=kt(),gi=".drag"+(ai==null?"":"-"+ai),Ii,Si=e.select(jt(qr)).on(gr+gi,En).on(yr+gi,Un),ei=Br(qr),Ln=nt(_i,ai);se?(Ii=se.apply(Hr,arguments),Ii=[Ii.x-Ln[0],Ii.y-Ln[1]]):Ii=[0,0],bi({type:"dragstart"});function En(){var ia=nt(_i,ai),Ea,Ia;ia&&(Ea=ia[0]-Ln[0],Ia=ia[1]-Ln[1],Zr|=Ea|Ia,Ln=ia,bi({type:"drag",x:ia[0]+Ii[0],y:ia[1]+Ii[1],dx:Ea,dy:Ia}))}function Un(){nt(_i,ai)&&(Si.on(gr+gi,null).on(yr+gi,null),ei(Zr),bi({type:"dragend"}))}}}return He.origin=function(kt){return arguments.length?(se=kt,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=Ee().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,tt=Math.PI,xt=2*tt,Ie=xt-Je,xe=tt/2,ke=tt/180,vt=180/tt;function ir(X){return X>0?1:X<0?-1:0}function ar(X,se,Te){return(se[0]-X[0])*(Te[1]-X[1])-(se[1]-X[1])*(Te[0]-X[0])}function vr(X){return X>1?0:X<-1?tt:Math.acos(X)}function ii(X){return X>1?xe:X<-1?-xe:Math.asin(X)}function pi(X){return((X=Math.exp(X))-1/X)/2}function $r(X){return((X=Math.exp(X))+1/X)/2}function di(X){return((X=Math.exp(2*X))-1)/(X+1)}function ji(X){return(X=Math.sin(X/2))*X}var In=Math.SQRT2,wi=2,On=4;e.interpolateZoom=function(X,se){var Te=X[0],Ne=X[1],He=X[2],Ye=se[0],kt=se[1],nt=se[2],jt=Ye-Te,gr=kt-Ne,yr=jt*jt+gr*gr,Hr,qr;if(yr<je)qr=Math.log(nt/He)/In,Hr=function(Ii){return[Te+Ii*jt,Ne+Ii*gr,He*Math.exp(In*Ii*qr)]};else{var _i=Math.sqrt(yr),bi=(nt*nt-He*He+On*yr)/(2*He*wi*_i),Zr=(nt*nt-He*He-On*yr)/(2*nt*wi*_i),ai=Math.log(Math.sqrt(bi*bi+1)-bi),gi=Math.log(Math.sqrt(Zr*Zr+1)-Zr);qr=(gi-ai)/In,Hr=function(Ii){var Si=Ii*qr,ei=$r(ai),Ln=He/(wi*_i)*(ei*di(In*Si+ai)-pi(ai));return[Te+Ln*jt,Ne+Ln*gr,He*ei/$r(In*Si+ai)]}}return Hr.duration=qr*1e3,Hr},e.behavior.zoom=function(){var X={x:0,y:0,k:1},se,Te,Ne,He=[960,500],Ye=qn,kt=250,nt=0,jt="mousedown.zoom",gr="mousemove.zoom",yr="mouseup.zoom",Hr,qr="touchstart.zoom",_i,bi=Ce(Si,"zoomstart","zoom","zoomend"),Zr,ai,gi,Ii;ra||(ra="onwheel"in n?(Fn=function(){return-e.event.deltaY*(e.event.deltaMode?120:1)},"wheel"):"onmousewheel"in n?(Fn=function(){return e.event.wheelDelta},"mousewheel"):(Fn=function(){return-e.event.detail},"MozMousePixelScroll"));function Si(Gn){Gn.on(jt,go).on(ra+".zoom",Ms).on("dblclick.zoom",Xs).on(qr,Is)}Si.event=function(Gn){Gn.each(function(){var ja=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(ja)}).tween("zoom:zoom",function(){var Uo=He[0],$s=He[1],Sl=Te?Te[0]:Uo/2,bu=Te?Te[1]:$s/2,dl=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 Me=dl(Sc),bt=Uo/Me[2];this.__chart__=X={x:Sl-Me[0]*bt,y:bu-Me[1]*bt,k:bt},yo(ja)}}).each("interrupt.zoom",function(){Da(ja)}).each("end.zoom",function(){Da(ja)}):(this.__chart__=X,Ia(ja),yo(ja),Da(ja))})},Si.translate=function(Gn){return arguments.length?(X={x:+Gn[0],y:+Gn[1],k:X.k},Ea(),Si):[X.x,X.y]},Si.scale=function(Gn){return arguments.length?(X={x:X.x,y:X.y,k:null},En(+Gn),Ea(),Si):X.k},Si.scaleExtent=function(Gn){return arguments.length?(Ye=Gn==null?qn:[+Gn[0],+Gn[1]],Si):Ye},Si.center=function(Gn){return arguments.length?(Ne=Gn&&[+Gn[0],+Gn[1]],Si):Ne},Si.size=function(Gn){return arguments.length?(He=Gn&&[+Gn[0],+Gn[1]],Si):He},Si.duration=function(Gn){return arguments.length?(kt=+Gn,Si):kt},Si.x=function(Gn){return arguments.length?(ai=Gn,Zr=Gn.copy(),X={x:0,y:0,k:1},Si):ai},Si.y=function(Gn){return arguments.length?(Ii=Gn,gi=Gn.copy(),X={x:0,y:0,k:1},Si):Ii};function ei(Gn){return[(Gn[0]-X.x)/X.k,(Gn[1]-X.y)/X.k]}function Ln(Gn){return[Gn[0]*X.k+X.x,Gn[1]*X.k+X.y]}function En(Gn){X.k=Math.max(Ye[0],Math.min(Ye[1],Gn))}function Un(Gn,ja){ja=Ln(ja),X.x+=Gn[0]-ja[0],X.y+=Gn[1]-ja[1]}function ia(Gn,ja,Fo,Uo){Gn.__chart__={x:X.x,y:X.y,k:X.k},En(Math.pow(2,Uo)),Un(Te=ja,Fo),Gn=e.select(Gn),kt>0&&(Gn=Gn.transition().duration(kt)),Gn.call(Si.event)}function Ea(){ai&&ai.domain(Zr.range().map(function(Gn){return(Gn-X.x)/X.k}).map(Zr.invert)),Ii&&Ii.domain(gi.range().map(function(Gn){return(Gn-X.y)/X.k}).map(gi.invert))}function Ia(Gn){nt++||Gn({type:"zoomstart"})}function yo(Gn){Ea(),Gn({type:"zoom",scale:X.k,translate:[X.x,X.y]})}function Da(Gn){--nt||(Gn({type:"zoomend"}),Te=null)}function go(){var Gn=this,ja=bi.of(Gn,arguments),Fo=0,Uo=e.select(a(Gn)).on(gr,bu).on(yr,dl),$s=ei(e.mouse(Gn)),Sl=Br(Gn);fa.call(Gn),Ia(ja);function bu(){Fo=1,Un(e.mouse(Gn),$s),yo(ja)}function dl(){Uo.on(gr,null).on(yr,null),Sl(Fo),Da(ja)}}function Is(){var Gn=this,ja=bi.of(Gn,arguments),Fo={},Uo=0,$s,Sl=".zoom-"+e.event.changedTouches[0].identifier,bu="touchmove"+Sl,dl="touchend"+Sl,Sc=[],Me=e.select(Gn),bt=Br(Gn);Rr(),Ia(ja),Me.on(jt,null).on(qr,Rr);function zt(){var Gr=e.touches(Gn);return $s=X.k,Gr.forEach(function(mi){mi.identifier in Fo&&(Fo[mi.identifier]=ei(mi))}),Gr}function Rr(){var Gr=e.event.target;e.select(Gr).on(bu,jr).on(dl,Nr),Sc.push(Gr);for(var mi=e.event.changedTouches,Ui=0,qi=mi.length;Ui<qi;++Ui)Fo[mi[Ui].identifier]=null;var Ei=zt(),Hn=Date.now();if(Ei.length===1){if(Hn-_i<500){var en=Ei[0];ia(Gn,en,Fo[en.identifier],Math.floor(Math.log(X.k)/Math.LN2)+1),_e()}_i=Hn}else if(Ei.length>1){var en=Ei[0],Wi=Ei[1],si=en[0]-Wi[0],Mr=en[1]-Wi[1];Uo=si*si+Mr*Mr}}function jr(){var Gr=e.touches(Gn),mi,Ui,qi,Ei;fa.call(Gn);for(var Hn=0,en=Gr.length;Hn<en;++Hn,Ei=null)if(qi=Gr[Hn],Ei=Fo[qi.identifier]){if(Ui)break;mi=qi,Ui=Ei}if(Ei){var Wi=(Wi=qi[0]-mi[0])*Wi+(Wi=qi[1]-mi[1])*Wi,si=Uo&&Math.sqrt(Wi/Uo);mi=[(mi[0]+qi[0])/2,(mi[1]+qi[1])/2],Ui=[(Ui[0]+Ei[0])/2,(Ui[1]+Ei[1])/2],En(si*$s)}_i=null,Un(mi,Ui),yo(ja)}function Nr(){if(e.event.touches.length){for(var Gr=e.event.changedTouches,mi=0,Ui=Gr.length;mi<Ui;++mi)delete Fo[Gr[mi].identifier];for(var qi in Fo)return void zt()}e.selectAll(Sc).on(Sl,null),Me.on(jt,go).on(qr,Is),bt(),Da(ja)}}function Ms(){var Gn=bi.of(this,arguments);Hr?clearTimeout(Hr):(fa.call(this),se=ei(Te=Ne||e.mouse(this)),Ia(Gn)),Hr=setTimeout(function(){Hr=null,Da(Gn)},50),_e(),En(Math.pow(2,Fn()*.002)*X.k),Un(Te,se),yo(Gn)}function Xs(){var Gn=e.mouse(this),ja=Math.log(X.k)/Math.LN2;ia(this,Gn,ei(Gn),e.event.shiftKey?Math.ceil(ja)-1:Math.floor(ja)+1)}return e.rebind(Si,bi,"on")};var qn=[0,1/0],Fn,ra;e.color=la;function la(){}la.prototype.toString=function(){return this.rgb()+""},e.hsl=Ut;function Ut(X,se,Te){return this instanceof Ut?(this.h=+X,this.s=+se,void(this.l=+Te)):arguments.length<2?X instanceof Ut?new Ut(X.h,X.s,X.l):Ha(""+X,vo,Ut):new Ut(X,se,Te)}var wt=Ut.prototype=new la;wt.brighter=function(X){return X=Math.pow(.7,arguments.length?X:1),new Ut(this.h,this.s,this.l/X)},wt.darker=function(X){return X=Math.pow(.7,arguments.length?X:1),new Ut(this.h,this.s,X*this.l)},wt.rgb=function(){return rr(this.h,this.s,this.l)};function rr(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 kt(nt){return Math.round(Ye(nt)*255)}return new Wa(kt(X+120),kt(X),kt(X-120))}e.hcl=nr;function nr(X,se,Te){return this instanceof nr?(this.h=+X,this.c=+se,void(this.l=+Te)):arguments.length<2?X instanceof nr?new nr(X.h,X.c,X.l):X instanceof ri?Sn(X.l,X.a,X.b):Sn((X=jn((X=e.rgb(X)).r,X.g,X.b)).l,X.a,X.b):new nr(X,se,Te)}var Er=nr.prototype=new la;Er.brighter=function(X){return new nr(this.h,this.c,Math.min(100,this.l+Qr*(arguments.length?X:1)))},Er.darker=function(X){return new nr(this.h,this.c,Math.max(0,this.l-Qr*(arguments.length?X:1)))},Er.rgb=function(){return Xr(this.h,this.c,this.l).rgb()};function Xr(X,se,Te){return isNaN(X)&&(X=0),isNaN(se)&&(se=0),new ri(Te,Math.cos(X*=ke)*se,Math.sin(X)*se)}e.lab=ri;function ri(X,se,Te){return this instanceof ri?(this.l=+X,this.a=+se,void(this.b=+Te)):arguments.length<2?X instanceof ri?new ri(X.l,X.a,X.b):X instanceof nr?Xr(X.h,X.c,X.l):jn((X=Wa(X)).r,X.g,X.b):new ri(X,se,Te)}var Qr=18,Oi=.95047,$i=1,tn=1.08883,fn=ri.prototype=new la;fn.brighter=function(X){return new ri(Math.min(100,this.l+Qr*(arguments.length?X:1)),this.a,this.b)},fn.darker=function(X){return new ri(Math.max(0,this.l-Qr*(arguments.length?X:1)),this.a,this.b)},fn.rgb=function(){return yn(this.l,this.a,this.b)};function yn(X,se,Te){var Ne=(X+16)/116,He=Ne+se/500,Ye=Ne-Te/200;return He=Ba(He)*Oi,Ne=Ba(Ne)*$i,Ye=Ba(Ye)*tn,new Wa(ma(3.2404542*He-1.5371385*Ne-.4985314*Ye),ma(-.969266*He+1.8760108*Ne+.041556*Ye),ma(.0556434*He-.2040259*Ne+1.0572252*Ye))}function Sn(X,se,Te){return X>0?new nr(Math.atan2(Te,se)*vt,Math.sqrt(se*se+Te*Te),X):new nr(NaN,NaN,X)}function Ba(X){return X>.206893034?X*X*X:(X-4/29)/7.787037}function ua(X){return X>.008856?Math.pow(X,1/3):7.787037*X+4/29}function ma(X){return Math.round(255*(X<=.00304?12.92*X:1.055*Math.pow(X,1/2.4)-.055))}e.rgb=Wa;function Wa(X,se,Te){return this instanceof Wa?(this.r=~~X,this.g=~~se,void(this.b=~~Te)):arguments.length<2?X instanceof Wa?new Wa(X.r,X.g,X.b):Ha(""+X,Wa,rr):new Wa(X,se,Te)}function Fa(X){return new Wa(X>>16,X>>8&255,X&255)}function Wo(X){return Fa(X)+""}var da=Wa.prototype=new la;da.brighter=function(X){X=Math.pow(.7,arguments.length?X:1);var se=this.r,Te=this.g,Ne=this.b,He=30;return!se&&!Te&&!Ne?new Wa(He,He,He):(se&&se<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 Ha(X,se,Te){var Ne=0,He=0,Ye=0,kt,nt,jt;if(kt=/([a-z]+)\((.*)\)/.exec(X=X.toLowerCase()),kt)switch(nt=kt[2].split(","),kt[1]){case"hsl":return Te(parseFloat(nt[0]),parseFloat(nt[1])/100,parseFloat(nt[2])/100);case"rgb":return se(kr(nt[0]),kr(nt[1]),kr(nt[2]))}return(jt=Jr.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,kt,nt,jt=(He+Ne)/2;return Ye?(nt=jt<.5?Ye/(He+Ne):Ye/(2-He-Ne),X==He?kt=(se-Te)/Ye+(se<Te?6:0):se==He?kt=(Te-X)/Ye+2:kt=(X-se)/Ye+4,kt*=60):(kt=NaN,nt=jt>0&&jt<1?0:kt),new Ut(kt,nt,jt)}function jn(X,se,Te){X=Mt(X),se=Mt(se),Te=Mt(Te);var Ne=ua((.4124564*X+.3575761*se+.1804375*Te)/Oi),He=ua((.2126729*X+.7151522*se+.072175*Te)/$i),Ye=ua((.0193339*X+.119192*se+.9503041*Te)/tn);return ri(116*He-16,500*(Ne-He),200*(He-Ye))}function Mt(X){return(X/=255)<=.04045?X/12.92:Math.pow((X+.055)/1.055,2.4)}function kr(X){var se=parseFloat(X);return X.charAt(X.length-1)==="%"?Math.round(se*2.55):se}var Jr=e.map({aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074});Jr.forEach(function(X,se){Jr.set(X,Fa(se))});function vi(X){return typeof X=="function"?X:function(){return X}}e.functor=vi,e.xhr=hn(G);function hn(X){return function(se,Te,Ne){return arguments.length===2&&typeof Te=="function"&&(Ne=Te,Te=null),An(se,Te,X,Ne)}}function An(X,se,Te,Ne){var He={},Ye=e.dispatch("beforesend","progress","load","error"),kt={},nt=new XMLHttpRequest,jt=null;self.XDomainRequest&&!("withCredentials"in nt)&&/^(http(s)?:)?\/\//.test(X)&&(nt=new XDomainRequest),"onload"in nt?nt.onload=nt.onerror=gr:nt.onreadystatechange=function(){nt.readyState>3&&gr()};function gr(){var yr=nt.status,Hr;if(!yr&&Li(nt)||yr>=200&&yr<300||yr===304){try{Hr=Te.call(He,nt)}catch(qr){Ye.error.call(He,qr);return}Ye.load.call(He,Hr)}else Ye.error.call(He,nt)}return nt.onprogress=function(yr){var Hr=e.event;e.event=yr;try{Ye.progress.call(He,nt)}finally{e.event=Hr}},He.header=function(yr,Hr){return yr=(yr+"").toLowerCase(),arguments.length<2?kt[yr]:(Hr==null?delete kt[yr]:kt[yr]=Hr+"",He)},He.mimeType=function(yr){return arguments.length?(se=yr==null?null:yr+"",He):se},He.responseType=function(yr){return arguments.length?(jt=yr,He):jt},He.response=function(yr){return Te=yr,He},["get","post"].forEach(function(yr){He[yr]=function(){return He.send.apply(He,[yr].concat(r(arguments)))}}),He.send=function(yr,Hr,qr){if(arguments.length===2&&typeof Hr=="function"&&(qr=Hr,Hr=null),nt.open(yr,X,!0),se!=null&&!("accept"in kt)&&(kt.accept=se+",*/*"),nt.setRequestHeader)for(var _i in kt)nt.setRequestHeader(_i,kt[_i]);return se!=null&&nt.overrideMimeType&&nt.overrideMimeType(se),jt!=null&&(nt.responseType=jt),qr!=null&&He.on("error",qr).on("load",function(bi){qr(null,bi)}),Ye.beforesend.call(He,nt),nt.send(Hr==null?null:Hr),He},He.abort=function(){return nt.abort(),He},e.rebind(He,Ye,"on"),Ne==null?He:He.get(Mn(Ne))}function Mn(X){return X.length===1?function(se,Te){X(se==null?Te:null)}:X}function Li(X){var se=X.responseType;return se&&se!=="text"?X.response:X.responseText}e.dsv=function(X,se){var Te=new RegExp('["'+X+`
]`),Ne=X.charCodeAt(0);function He(gr,yr,Hr){arguments.length<3&&(Hr=yr,yr=null);var qr=An(gr,se,yr==null?Ye:kt(yr),Hr);return qr.row=function(_i){return arguments.length?qr.response((yr=_i)==null?Ye:kt(_i)):yr},qr}function Ye(gr){return He.parse(gr.responseText)}function kt(gr){return function(yr){return He.parse(yr.responseText,gr)}}He.parse=function(gr,yr){var Hr;return He.parseRows(gr,function(qr,_i){if(Hr)return Hr(qr,_i-1);var bi=function(Zr){for(var ai={},gi=qr.length,Ii=0;Ii<gi;++Ii)ai[qr[Ii]]=Zr[Ii];return ai};Hr=yr?function(Zr,ai){return yr(bi(Zr),ai)}:bi})},He.parseRows=function(gr,yr){var Hr={},qr={},_i=[],bi=gr.length,Zr=0,ai=0,gi,Ii;function Si(){if(Zr>=bi)return qr;if(Ii)return Ii=!1,Hr;var Ln=Zr;if(gr.charCodeAt(Ln)===34){for(var En=Ln;En++<bi;)if(gr.charCodeAt(En)===34){if(gr.charCodeAt(En+1)!==34)break;++En}Zr=En+2;var Un=gr.charCodeAt(En+1);return Un===13?(Ii=!0,gr.charCodeAt(En+2)===10&&++Zr):Un===10&&(Ii=!0),gr.slice(Ln+1,En).replace(/""/g,'"')}for(;Zr<bi;){var Un=gr.charCodeAt(Zr++),ia=1;if(Un===10)Ii=!0;else if(Un===13)Ii=!0,gr.charCodeAt(Zr)===10&&(++Zr,++ia);else if(Un!==Ne)continue;return gr.slice(Ln,Zr-ia)}return gr.slice(Ln)}for(;(gi=Si())!==qr;){for(var ei=[];gi!==Hr&&gi!==qr;)ei.push(gi),gi=Si();yr&&(ei=yr(ei,ai++))==null||_i.push(ei)}return _i},He.format=function(gr){if(Array.isArray(gr[0]))return He.formatRows(gr);var yr=new V,Hr=[];return gr.forEach(function(qr){for(var _i in qr)yr.has(_i)||Hr.push(yr.add(_i))}),[Hr.map(jt).join(X)].concat(gr.map(function(qr){return Hr.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[j(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=ko()-X;se>24?(isFinite(se)&&(clearTimeout(Ma),Ma=setTimeout(po,se)),Jn=0):(Jn=1,_o(po))}e.timer.flush=function(){Lo(),ko()};function Lo(){for(var X=Date.now(),se=_n;se;)X>=se.t&&se.c(X-se.t)&&(se.c=null),se=se.n;return X}function ko(){for(var X,se=_n,Te=1/0;se;)se.c?(se.t<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 Ds(X){return X[0]}function Fs(X){return X[1]}e.geom.hull=function(X){var se=Ds,Te=Fs;if(arguments.length)return Ne(X);function Ne(He){if(He.length<3)return[];var Ye=vi(se),kt=vi(Te),nt,jt=He.length,gr=[],yr=[];for(nt=0;nt<jt;nt++)gr.push([+Ye.call(this,He[nt],nt),+kt.call(this,He[nt],nt),nt]);for(gr.sort(ul),nt=0;nt<jt;nt++)yr.push([gr[nt][0],-gr[nt][1]]);var Hr=ll(gr),qr=ll(yr),_i=qr[0]===Hr[0],bi=qr[qr.length-1]===Hr[Hr.length-1],Zr=[];for(nt=Hr.length-1;nt>=0;--nt)Zr.push(He[gr[Hr[nt]][2]]);for(nt=+_i;nt<qr.length-bi;++nt)Zr.push(He[gr[qr[nt]][2]]);return Zr}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 ll(X){for(var se=X.length,Te=[0,1],Ne=2,He=2;He<se;He++){for(;Ne>1&&ar(X[Te[Ne-2]],X[Te[Ne-1]],X[He])<=0;)--Ne;Te[Ne++]=He}return Te.slice(0,Ne)}function ul(X,se){return X[0]-se[0]||X[1]-se[1]}e.geom.polygon=function(X){return ie(X,zl),X};var zl=e.geom.polygon.prototype=[];zl.area=function(){for(var X=-1,se=this.length,Te,Ne=this[se-1],He=0;++X<se;)Te=Ne,Ne=this[X],He+=Te[1]*Ne[0]-Te[0]*Ne[1];return He*.5},zl.centroid=function(X){var se=-1,Te=this.length,Ne=0,He=0,Ye,kt=this[Te-1],nt;for(arguments.length||(X=-1/(6*this.area()));++se<Te;)Ye=kt,kt=this[se],nt=Ye[0]*kt[1]-kt[0]*Ye[1],Ne+=(Ye[0]+kt[0])*nt,He+=(Ye[1]+kt[1])*nt;return[Ne*X,He*X]},zl.clip=function(X){for(var se,Te=As(X),Ne=-1,He=this.length-As(this),Ye,kt,nt=this[He-1],jt,gr,yr;++Ne<He;){for(se=X.slice(),X.length=0,jt=this[Ne],gr=se[(kt=se.length-Te)-1],Ye=-1;++Ye<kt;)yr=se[Ye],us(yr,nt,jt)?(us(gr,nt,jt)||X.push(il(gr,yr,nt,jt)),X.push(yr)):us(gr,nt,jt)&&X.push(il(gr,yr,nt,jt)),gr=yr;Te&&X.push(X[0]),nt=jt}return X};function us(X,se,Te){return(Te[0]-se[0])*(X[1]-se[1])<(Te[1]-se[1])*(X[0]-se[0])}function il(X,se,Te,Ne){var He=X[0],Ye=Te[0],kt=se[0]-He,nt=Ne[0]-Ye,jt=X[1],gr=Te[1],yr=se[1]-jt,Hr=Ne[1]-gr,qr=(nt*(jt-gr)-Hr*(He-Ye))/(Hr*kt-nt*yr);return[He+qr*kt,jt+qr*yr]}function As(X){var se=X[0],Te=X[X.length-1];return!(se[0]-Te[0]||se[1]-Te[1])}var cl,Ks,zs,Io=[],ls,Zl,Su=[];function nc(){Os(this),this.edge=this.site=this.circle=null}function bs(X){var se=Io.pop()||new nc;return se.site=X,se}function Rn(X){Oo(X),zs.remove(X),Io.push(X),Os(X)}function _a(X){var se=X.circle,Te=se.x,Ne=se.cy,He={x:Te,y:Ne},Ye=X.P,kt=X.N,nt=[X];Rn(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),Rn(jt),jt=Ye;nt.unshift(jt),Oo(jt);for(var gr=kt;gr.circle&&p(Te-gr.circle.x)<Je&&p(Ne-gr.circle.cy)<Je;)kt=gr.N,nt.push(gr),Rn(gr),gr=kt;nt.push(gr),Oo(gr);var yr=nt.length,Hr;for(Hr=1;Hr<yr;++Hr)gr=nt[Hr],jt=nt[Hr-1],pl(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,kt,nt=zs._;nt;)if(Ye=Ol(nt,Te)-se,Ye>Je)nt=nt.L;else if(kt=se-xo(nt,Te),kt>Je){if(!nt.R){Ne=nt;break}nt=nt.R}else{Ye>-Je?(Ne=nt.P,He=nt):kt>-Je?(Ne=nt,He=nt.N):Ne=He=nt;break}var jt=bs(X);if(zs.insert(Ne,jt),!(!Ne&&!He)){if(Ne===He){Oo(Ne),He=bs(Ne.site),zs.insert(jt,He),jt.edge=He.edge=rf(Ne.site,jt.site),aa(Ne),aa(He);return}if(!He){jt.edge=rf(Ne.site,jt.site);return}Oo(Ne),Oo(He);var gr=Ne.site,yr=gr.x,Hr=gr.y,qr=X.x-yr,_i=X.y-Hr,bi=He.site,Zr=bi.x-yr,ai=bi.y-Hr,gi=2*(qr*ai-_i*Zr),Ii=qr*qr+_i*_i,Si=Zr*Zr+ai*ai,ei={x:(ai*Ii-_i*Si)/gi+yr,y:(qr*Si-Zr*Ii)/gi+Hr};pl(He.edge,gr,bi,ei),jt.edge=rf(gr,X,null,ei),He.edge=rf(X,bi,null,ei),aa(Ne),aa(He)}}function Ol(X,se){var Te=X.site,Ne=Te.x,He=Te.y,Ye=He-se;if(!Ye)return Ne;var kt=X.P;if(!kt)return-1/0;Te=kt.site;var nt=Te.x,jt=Te.y,gr=jt-se;if(!gr)return nt;var yr=nt-Ne,Hr=1/Ye-1/gr,qr=yr/gr;return Hr?(-qr+Math.sqrt(qr*qr-2*Hr*(yr*yr/(-2*gr)-jt+gr/2+He-Ye/2)))/Hr+Ne:(Ne+nt)/2}function xo(X,se){var Te=X.N;if(Te)return Ol(Te,se);var Ne=X.site;return Ne.y===se?Ne.x:1/0}function Yl(X){this.site=X,this.edges=[]}Yl.prototype.prepare=function(){for(var X=this.edges,se=X.length,Te;se--;)Te=X[se].edge,(!Te.b||!Te.a)&&X.splice(se,1);return X.sort(Hl),X.length};function Ns(X){for(var se=X[0][0],Te=X[1][0],Ne=X[0][1],He=X[1][1],Ye,kt,nt,jt,gr=Ks,yr=gr.length,Hr,qr,_i,bi,Zr,ai;yr--;)if(Hr=gr[yr],!(!Hr||!Hr.prepare()))for(_i=Hr.edges,bi=_i.length,qr=0;qr<bi;)ai=_i[qr].end(),nt=ai.x,jt=ai.y,Zr=_i[++qr%bi].start(),Ye=Zr.x,kt=Zr.y,(p(nt-Ye)>Je||p(jt-kt)>Je)&&(_i.splice(qr,0,new Zc(Uf(Hr.site,ai,p(nt-se)<Je&&He-jt>Je?{x:se,y:p(Ye-se)<Je?kt:He}:p(jt-He)<Je&&Te-nt>Je?{x:p(kt-He)<Je?Ye:Te,y:He}:p(nt-Te)<Je&&jt-Ne>Je?{x:Te,y:p(Ye-Te)<Je?kt:Ne}:p(jt-Ne)<Je&&nt-se>Je?{x:p(kt-Ne)<Je?Ye:se,y:Ne}:null),Hr.site,null)),++bi)}function Hl(X,se){return se.angle-X.angle}function ac(){Os(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 kt=He.x,nt=He.y,jt=Ne.x-kt,gr=Ne.y-nt,yr=Ye.x-kt,ai=Ye.y-nt,Hr=2*(jt*ai-gr*yr);if(!(Hr>=-je)){var qr=jt*jt+gr*gr,_i=yr*yr+ai*ai,bi=(ai*qr-gr*_i)/Hr,Zr=(jt*_i-yr*qr)/Hr,ai=Zr+nt,gi=Su.pop()||new ac;gi.arc=X,gi.site=He,gi.x=bi+kt,gi.y=ai+Math.sqrt(bi*bi+Zr*Zr),gi.cy=ai,X.circle=gi;for(var Ii=null,Si=Zl._;Si;)if(gi.y<Si.y||gi.y===Si.y&&gi.x<=Si.x)if(Si.L)Si=Si.L;else{Ii=Si.P;break}else if(Si.R)Si=Si.R;else{Ii=Si;break}Zl.insert(Ii,gi),Ii||(ls=gi)}}}}function Oo(X){var se=X.circle;se&&(se.P||(ls=se.N),Zl.remove(se),Su.push(se),Os(se),X.circle=null)}function qo(X,se,Te,Ne){return function(He){var Ye=He.a,kt=He.b,nt=Ye.x,jt=Ye.y,gr=kt.x,yr=kt.y,Hr=0,qr=1,_i=gr-nt,bi=yr-jt,Zr;if(Zr=X-nt,!(!_i&&Zr>0)){if(Zr/=_i,_i<0){if(Zr<Hr)return;Zr<qr&&(qr=Zr)}else if(_i>0){if(Zr>qr)return;Zr>Hr&&(Hr=Zr)}if(Zr=Te-nt,!(!_i&&Zr<0)){if(Zr/=_i,_i<0){if(Zr>qr)return;Zr>Hr&&(Hr=Zr)}else if(_i>0){if(Zr<Hr)return;Zr<qr&&(qr=Zr)}if(Zr=se-jt,!(!bi&&Zr>0)){if(Zr/=bi,bi<0){if(Zr<Hr)return;Zr<qr&&(qr=Zr)}else if(bi>0){if(Zr>qr)return;Zr>Hr&&(Hr=Zr)}if(Zr=Ne-jt,!(!bi&&Zr<0)){if(Zr/=bi,bi<0){if(Zr>qr)return;Zr>Hr&&(Hr=Zr)}else if(bi>0){if(Zr<Hr)return;Zr<qr&&(qr=Zr)}return Hr>0&&(He.a={x:nt+Hr*_i,y:jt+Hr*bi}),qr<1&&(He.b={x:nt+qr*_i,y:jt+qr*bi}),He}}}}}}function ql(X){for(var se=cl,Te=qo(X[0][0],X[0][1],X[1][0],X[1][1]),Ne=se.length,He;Ne--;)He=se[Ne],(!Pc(He,X)||!Te(He)||p(He.a.x-He.b.x)<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],kt=se[0][1],nt=se[1][1],jt=X.l,gr=X.r,yr=jt.x,Hr=jt.y,qr=gr.x,_i=gr.y,bi=(yr+qr)/2,Zr=(Hr+_i)/2,ai,gi;if(_i===Hr){if(bi<He||bi>=Ye)return;if(yr>qr){if(!Ne)Ne={x:bi,y:kt};else if(Ne.y>=nt)return;Te={x:bi,y:nt}}else{if(!Ne)Ne={x:bi,y:nt};else if(Ne.y<kt)return;Te={x:bi,y:kt}}}else if(ai=(yr-qr)/(_i-Hr),gi=Zr-ai*bi,ai<-1||ai>1)if(yr>qr){if(!Ne)Ne={x:(kt-gi)/ai,y:kt};else if(Ne.y>=nt)return;Te={x:(nt-gi)/ai,y:nt}}else{if(!Ne)Ne={x:(nt-gi)/ai,y:nt};else if(Ne.y<kt)return;Te={x:(kt-gi)/ai,y:kt}}else if(Hr<_i){if(!Ne)Ne={x:He,y:ai*He+gi};else if(Ne.x>=Ye)return;Te={x:Ye,y:ai*Ye+gi}}else{if(!Ne)Ne={x:Ye,y:ai*Ye+gi};else if(Ne.x<He)return;Te={x:He,y:ai*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 cl.push(He),Te&&pl(He,X,se,Te),Ne&&pl(He,se,X,Ne),Ks[X.i].edges.push(new Zc(He,X,se)),Ks[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,cl.push(Ne),Ne}function pl(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 Os(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,kt;if(Ne?He?Ye=Cf(He):Ye=Ne:Ye=He,se?se.L===X?se.L=Ye:se.R=Ye:this._=Ye,Ne&&He?(kt=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)):(kt=X.C,X=Ye),X&&(X.U=se),!kt){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(Vh).pop(),Ne,He,Ye;for(cl=[],Ks=new Array(X.length),zs=new Kl,Zl=new Kl;;)if(Ye=ls,Te&&(!Ye||Te.y<Ye.y||Te.y===Ye.y&&Te.x<Ye.x))(Te.x!==Ne||Te.y!==He)&&(Ks[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&&(ql(se),Ns(se));var kt={cells:Ks,edges:cl};return zs=Zl=cl=Ks=null,kt}function Vh(X,se){return se.y-X.y||se.x-X.x}e.geom.voronoi=function(X){var se=Ds,Te=Fs,Ne=se,He=Te,Ye=Lf;if(X)return kt(X);function kt(jt){var gr=new Array(jt.length),yr=Ye[0][0],Hr=Ye[0][1],qr=Ye[1][0],_i=Ye[1][1];return sc(nt(jt),Ye).cells.forEach(function(bi,Zr){var ai=bi.edges,gi=bi.site,Ii=gr[Zr]=ai.length?ai.map(function(Si){var ei=Si.start();return[ei.x,ei.y]}):gi.x>=yr&&gi.x<=qr&&gi.y>=Hr&&gi.y<=_i?[[yr,_i],[qr,_i],[qr,Hr],[yr,Hr]]:[];Ii.point=jt[Zr]}),gr}function nt(jt){return jt.map(function(gr,yr){return{x:Math.round(Ne(gr,yr)/Je)*Je,y:Math.round(He(gr,yr)/Je)*Je,i:yr}})}return kt.links=function(jt){return sc(nt(jt)).edges.filter(function(gr){return gr.l&&gr.r}).map(function(gr){return{source:jt[gr.l.i],target:jt[gr.r.i]}})},kt.triangles=function(jt){var gr=[];return sc(nt(jt)).cells.forEach(function(yr,Hr){for(var qr=yr.site,_i=yr.edges.sort(Hl),bi=-1,Zr=_i.length,ai,gi,Ii=_i[Zr-1].edge,Si=Ii.l===qr?Ii.r:Ii.l;++bi<Zr;)ai=Ii,gi=Si,Ii=_i[bi].edge,Si=Ii.l===qr?Ii.r:Ii.l,Hr<gi.i&&Hr<Si.i&&cs(qr,gi,Si)<0&&gr.push([jt[Hr],jt[gi.i],jt[Si.i]])}),gr},kt.x=function(jt){return arguments.length?(Ne=vi(se=jt),kt):se},kt.y=function(jt){return arguments.length?(He=vi(Te=jt),kt):Te},kt.clipExtent=function(jt){return arguments.length?(Ye=jt==null?Lf:jt,kt):Ye===Lf?null:Ye},kt.size=function(jt){return arguments.length?kt.clipExtent(jt&&[[0,0],jt]):Ye===Lf?null:Ye&&Ye[1]},kt};var Lf=[[-1e6,-1e6],[1e6,1e6]];function cs(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=Ds,kt=Fs,nt;if(nt=arguments.length)return Ye=nf,kt=Vf,nt===3&&(He=Te,Ne=se,Te=se=0),jt(X);function jt(gr){var yr,Hr=vi(Ye),qr=vi(kt),_i,bi,Zr,ai,gi,Ii,Si,ei;if(se!=null)gi=se,Ii=Te,Si=Ne,ei=He;else if(Si=ei=-(gi=Ii=1/0),_i=[],bi=[],ai=gr.length,nt)for(Zr=0;Zr<ai;++Zr)yr=gr[Zr],yr.x<gi&&(gi=yr.x),yr.y<Ii&&(Ii=yr.y),yr.x>Si&&(Si=yr.x),yr.y>ei&&(ei=yr.y),_i.push(yr.x),bi.push(yr.y);else for(Zr=0;Zr<ai;++Zr){var Ln=+Hr(yr=gr[Zr],Zr),En=+qr(yr,Zr);Ln<gi&&(gi=Ln),En<Ii&&(Ii=En),Ln>Si&&(Si=Ln),En>ei&&(ei=En),_i.push(Ln),bi.push(En)}var Un=Si-gi,ia=ei-Ii;Un>ia?ei=Ii+Un:Si=gi+ia;function Ea(Da,go,Is,Ms,Xs,Gn,ja,Fo){if(!(isNaN(Is)||isNaN(Ms)))if(Da.leaf){var Uo=Da.x,$s=Da.y;if(Uo!=null)if(p(Uo-Is)+p($s-Ms)<.01)Ia(Da,go,Is,Ms,Xs,Gn,ja,Fo);else{var Sl=Da.point;Da.x=Da.y=Da.point=null,Ia(Da,Sl,Uo,$s,Xs,Gn,ja,Fo),Ia(Da,go,Is,Ms,Xs,Gn,ja,Fo)}else Da.x=Is,Da.y=Ms,Da.point=go}else Ia(Da,go,Is,Ms,Xs,Gn,ja,Fo)}function Ia(Da,go,Is,Ms,Xs,Gn,ja,Fo){var Uo=(Xs+ja)*.5,$s=(Gn+Fo)*.5,Sl=Is>=Uo,bu=Ms>=$s,dl=bu<<1|Sl;Da.leaf=!1,Da=Da.nodes[dl]||(Da.nodes[dl]=Jl()),Sl?Xs=Uo:ja=Uo,bu?Gn=$s:Fo=$s,Ea(Da,go,Is,Ms,Xs,Gn,ja,Fo)}var yo=Jl();if(yo.add=function(Da){Ea(yo,Da,+Hr(Da,++Zr),+qr(Da,Zr),gi,Ii,Si,ei)},yo.visit=function(Da){fl(Da,yo,gi,Ii,Si,ei)},yo.find=function(Da){return lc(yo,Da[0],Da[1],gi,Ii,Si,ei)},Zr=-1,se==null){for(;++Zr<ai;)Ea(yo,gr[Zr],_i[Zr],bi[Zr],gi,Ii,Si,ei);--Zr}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?(kt=gr,jt):kt},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 fl(X,se,Te,Ne,He,Ye){if(!X(se,Te,Ne,He,Ye)){var kt=(Te+He)*.5,nt=(Ne+Ye)*.5,jt=se.nodes;jt[0]&&fl(X,jt[0],Te,Ne,kt,nt),jt[1]&&fl(X,jt[1],kt,Ne,He,nt),jt[2]&&fl(X,jt[2],Te,nt,kt,Ye),jt[3]&&fl(X,jt[3],kt,nt,He,Ye)}}function lc(X,se,Te,Ne,He,Ye,kt){var nt=1/0,jt;return function gr(yr,Hr,qr,_i,bi){if(!(Hr>Ye||qr>kt||_i<Ne||bi<He)){if(Zr=yr.point){var Zr,ai=se-yr.x,gi=Te-yr.y,Ii=ai*ai+gi*gi;if(Ii<nt){var Si=Math.sqrt(nt=Ii);Ne=se-Si,He=Te-Si,Ye=se+Si,kt=Te+Si,jt=Zr}}for(var ei=yr.nodes,Ln=(Hr+_i)*.5,En=(qr+bi)*.5,Un=se>=Ln,ia=Te>=En,Ea=ia<<1|Un,Ia=Ea+4;Ea<Ia;++Ea)if(yr=ei[Ea&3])switch(Ea&3){case 0:gr(yr,Hr,qr,Ln,En);break;case 1:gr(yr,Ln,qr,_i,En);break;case 2:gr(yr,Hr,En,Ln,bi);break;case 3:gr(yr,Ln,En,_i,bi);break}}}(X,Ne,He,Ye,kt),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,kt=se.g-Ne,nt=se.b-He;return function(jt){return"#"+Wn(Math.round(Te+Ye*jt))+Wn(Math.round(Ne+kt*jt))+Wn(Math.round(He+nt*jt))}}e.interpolateObject=Es;function Es(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=Hs;function Hs(X,se){return X=+X,se=+se,function(Te){return X*(1-Te)+se*Te}}e.interpolateString=Go;function Go(X,se){var Te=ps.lastIndex=uc.lastIndex=0,Ne,He,Ye,kt=-1,nt=[],jt=[];for(X=X+"",se=se+"";(Ne=ps.exec(X))&&(He=uc.exec(se));)(Ye=He.index)>Te&&(Ye=se.slice(Te,Ye),nt[kt]?nt[kt]+=Ye:nt[++kt]=Ye),(Ne=Ne[0])===(He=He[0])?nt[kt]?nt[kt]+=He:nt[++kt]=He:(nt[++kt]=null,jt.push({i:kt,x:Hs(Ne,He)})),Te=uc.lastIndex;return Te<se.length&&(Ye=se.slice(Te),nt[kt]?nt[kt]+=Ye:nt[++kt]=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,Hr;yr<se;++yr)nt[(Hr=jt[yr]).i]=Hr.x(gr);return nt.join("")})}var ps=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,uc=new RegExp(ps.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"?Jr.has(se.toLowerCase())||/^(#|rgb\(|hsl\()/i.test(se)?Fu:Go:se instanceof la?Fu:Array.isArray(se)?Gu:Te==="object"&&isNaN(se)?Es:Hs)(X,se)}],e.interpolateArray=Gu;function Gu(X,se){var Te=[],Ne=[],He=X.length,Ye=se.length,kt=Math.min(X.length,se.length),nt;for(nt=0;nt<kt;++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<kt;++nt)Ne[nt]=Te[nt](jt);return Ne}}var qs=function(){return G},ad=e.map({linear:qs,poly:Gf,quad:function(){return af},cubic:function(){return Hu},sin:function(){return Ic},exp:function(){return yf},circle:function(){return Bl},elastic:wh,back:Qf,bounce:function(){return _f}}),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)||qs,Ne=Po.get(Ne)||G,od(Ne(Te.apply(null,t.call(arguments,1))))};function od(X){return function(se){return se<=0?0:se>=1?1:X(se)}}function Yo(X){return function(se){return 1-X(1-se)}}function Pa(X){return function(se){return .5*(se<.5?X(2*se):2-X(2-2*se))}}function af(X){return X*X}function Hu(X){return X*X*X}function bl(X){if(X<=0)return 0;if(X>=1)return 1;var se=X*X,Te=se*X;return 4*(X<.5?Te:3*(X-se)+Te-.75)}function Gf(X){return function(se){return Math.pow(se,X)}}function Ic(X){return 1-Math.cos(X*xe)}function yf(X){return Math.pow(2,10*(X-1))}function Bl(X){return 1-Math.sqrt(1-X*X)}function wh(X,se){var Te;return arguments.length<2&&(se=.45),arguments.length?Te=se/xt*Math.asin(1/X):(X=1,Te=se/4),function(Ne){return 1+X*Math.pow(2,-10*Ne)*Math.sin((Ne-Te)*xt/se)}}function Qf(X){return X||(X=1.70158),function(se){return se*se*((X+1)*se-X)}}function _f(X){return X<1/2.75?7.5625*X*X:X<2/2.75?7.5625*(X-=1.5/2.75)*X+.75:X<2.5/2.75?7.5625*(X-=2.25/2.75)*X+.9375:7.5625*(X-=2.625/2.75)*X+.984375}e.interpolateHcl=Yc;function Yc(X,se){X=e.hcl(X),se=e.hcl(se);var Te=X.h,Ne=X.c,He=X.l,Ye=se.h-Te,kt=se.c-Ne,nt=se.l-He;return isNaN(kt)&&(kt=0,Ne=isNaN(Ne)?se.c:Ne),isNaN(Ye)?(Ye=0,Te=isNaN(Te)?se.h:Te):Ye>180?Ye-=360:Ye<-180&&(Ye+=360),function(jt){return Xr(Te+Ye*jt,Ne+kt*jt,He+nt*jt)+""}}e.interpolateHsl=eh;function eh(X,se){X=e.hsl(X),se=e.hsl(se);var Te=X.h,Ne=X.s,He=X.l,Ye=se.h-Te,kt=se.s-Ne,nt=se.l-He;return isNaN(kt)&&(kt=0,Ne=isNaN(Ne)?se.s:Ne),isNaN(Ye)?(Ye=0,Te=isNaN(Te)?se.h:Te):Ye>180?Ye-=360:Ye<-180&&(Ye+=360),function(jt){return rr(Te+Ye*jt,Ne+kt*jt,He+nt*jt)+""}}e.interpolateLab=th;function th(X,se){X=e.lab(X),se=e.lab(se);var Te=X.l,Ne=X.a,He=X.b,Ye=se.l-Te,kt=se.a-Ne,nt=se.b-He;return function(jt){return yn(Te+Ye*jt,Ne+kt*jt,He+nt*jt)+""}}e.interpolateRound=ju;function ju(X,se){return se-=X,function(Te){return Math.round(X+se*Te)}}e.transform=function(X){var se=n.createElementNS(e.ns.prefix.svg,"g");return(e.transform=function(Te){if(Te!=null){se.setAttribute("transform",Te);var Ne=se.transform.baseVal.consolidate()}return new Hf(Ne?Ne.matrix:Kc)})(X)};function Hf(X){var se=[X.a,X.b],Te=[X.c,X.d],Ne=of(se),He=cc(se,Te),Ye=of(Nl(Te,se,-He))||0;se[0]*Te[1]<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 Nl(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 gs(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:Hs(X[0],se[0])},{i:He-2,x:Hs(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:Hs(X,se)})):se&&Te.push(Rc(Te)+"rotate("+se+")")}function Gh(X,se,Te,Ne){X!==se?Ne.push({i:Te.push(Rc(Te)+"skewX(",null,")")-2,x:Hs(X,se)}):se&&Te.push(Rc(Te)+"skewX("+se+")")}function rh(X,se,Te,Ne){if(X[0]!==se[0]||X[1]!==se[1]){var He=Te.push(Rc(Te)+"scale(",null,",",null,")");Ne.push({i:He-4,x:Hs(X[0],se[0])},{i:He-2,x:Hs(X[1],se[1])})}else(se[0]!==1||se[1]!==1)&&Te.push(Rc(Te)+"scale("+se+")")}function sf(X,se){var Te=[],Ne=[];return X=e.transform(X),se=e.transform(se),gs(X.translate,se.translate,Te,Ne),jf(X.rotate,se.rotate,Te,Ne),Gh(X.skew,se.skew,Te,Ne),rh(X.scale,se.scale,Te,Ne),X=se=null,function(He){for(var Ye=-1,kt=Ne.length,nt;++Ye<kt;)Te[(nt=Ne[Ye]).i]=nt.x(He);return Te.join("")}}function Th(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 js(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=js(X),Ne=js(se),He=Te.pop(),Ye=Ne.pop(),kt=null;He===Ye;)kt=He,He=Te.pop(),Ye=Ne.pop();return kt}e.layout.chord=function(){var X={},se,Te,Ne,He,Ye=0,kt,nt,jt;function gr(){var Hr={},qr=[],_i=e.range(He),bi=[],Zr,ai,gi,Ii,Si;for(se=[],Te=[],Zr=0,Ii=-1;++Ii<He;){for(ai=0,Si=-1;++Si<He;)ai+=Ne[Ii][Si];qr.push(ai),bi.push(e.range(He)),Zr+=ai}for(kt&&_i.sort(function(yo,Da){return kt(qr[yo],qr[Da])}),nt&&bi.forEach(function(yo,Da){yo.sort(function(go,Is){return nt(Ne[Da][go],Ne[Da][Is])})}),Zr=(xt-Ye*He)/Zr,ai=0,Ii=-1;++Ii<He;){for(gi=ai,Si=-1;++Si<He;){var ei=_i[Ii],Ln=bi[ei][Si],En=Ne[ei][Ln],Un=ai,ia=ai+=En*Zr;Hr[ei+"-"+Ln]={index:ei,subindex:Ln,startAngle:Un,endAngle:ia,value:En}}Te[ei]={index:ei,startAngle:gi,endAngle:ai,value:qr[ei]},ai+=Ye}for(Ii=-1;++Ii<He;)for(Si=Ii-1;++Si<He;){var Ea=Hr[Ii+"-"+Si],Ia=Hr[Si+"-"+Ii];(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(Hr,qr){return jt((Hr.source.value+Hr.target.value)/2,(qr.source.value+qr.target.value)/2)})}return X.matrix=function(Hr){return arguments.length?(He=(Ne=Hr)&&Ne.length,se=Te=null,X):Ne},X.padding=function(Hr){return arguments.length?(Ye=Hr,se=Te=null,X):Ye},X.sortGroups=function(Hr){return arguments.length?(kt=Hr,se=Te=null,X):kt},X.sortSubgroups=function(Hr){return arguments.length?(nt=Hr,se=null,X):nt},X.sortChords=function(Hr){return arguments.length?(jt=Hr,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,kt=.9,nt=nl,jt=nh,gr=-30,yr=Ah,Hr=.1,qr=.64,_i=[],bi=[],Zr,ai,gi;function Ii(ei){return function(Ln,En,Un,ia){if(Ln.point!==ei){var Ea=Ln.cx-ei.x,Ia=Ln.cy-ei.y,yo=ia-En,Da=Ea*Ea+Ia*Ia;if(yo*yo/qr<Da){if(Da<yr){var go=Ln.charge/Da;ei.px-=Ea*go,ei.py-=Ia*go}return!0}if(Ln.point&&Da&&Da<yr){var go=Ln.pointCharge/Da;ei.px-=Ea*go,ei.py-=Ia*go}}return!Ln.charge}}X.tick=function(){if((Ye*=.99)<.005)return Te=null,se.end({type:"end",alpha:Ye=0}),!0;var ei=_i.length,Ln=bi.length,En,Un,ia,Ea,Ia,yo,Da,go,Is;for(Un=0;Un<Ln;++Un)ia=bi[Un],Ea=ia.source,Ia=ia.target,go=Ia.x-Ea.x,Is=Ia.y-Ea.y,(yo=go*go+Is*Is)&&(yo=Ye*ai[Un]*((yo=Math.sqrt(yo))-Zr[Un])/yo,go*=yo,Is*=yo,Ia.x-=go*(Da=Ea.weight+Ia.weight?Ea.weight/(Ea.weight+Ia.weight):.5),Ia.y-=Is*Da,Ea.x+=go*(Da=1-Da),Ea.y+=Is*Da);if((Da=Ye*Hr)&&(go=Ne[0]/2,Is=Ne[1]/2,Un=-1,Da))for(;++Un<ei;)ia=_i[Un],ia.x+=(go-ia.x)*Da,ia.y+=(Is-ia.y)*Da;if(gr)for(_u(En=e.geom.quadtree(_i),Ye,gi),Un=-1;++Un<ei;)(ia=_i[Un]).fixed||En.visit(Ii(ia));for(Un=-1;++Un<ei;)ia=_i[Un],ia.fixed?(ia.x=ia.px,ia.y=ia.py):(ia.x-=(ia.px-(ia.px=ia.x))*kt,ia.y-=(ia.py-(ia.py=ia.y))*kt);se.tick({type:"tick",alpha:Ye})},X.nodes=function(ei){return arguments.length?(_i=ei,X):_i},X.links=function(ei){return arguments.length?(bi=ei,X):bi},X.size=function(ei){return arguments.length?(Ne=ei,X):Ne},X.linkDistance=function(ei){return arguments.length?(nt=typeof ei=="function"?ei:+ei,X):nt},X.distance=X.linkDistance,X.linkStrength=function(ei){return arguments.length?(jt=typeof ei=="function"?ei:+ei,X):jt},X.friction=function(ei){return arguments.length?(kt=+ei,X):kt},X.charge=function(ei){return arguments.length?(gr=typeof ei=="function"?ei:+ei,X):gr},X.chargeDistance=function(ei){return arguments.length?(yr=ei*ei,X):Math.sqrt(yr)},X.gravity=function(ei){return arguments.length?(Hr=+ei,X):Hr},X.theta=function(ei){return arguments.length?(qr=ei*ei,X):Math.sqrt(qr)},X.alpha=function(ei){return arguments.length?(ei=+ei,Ye?ei>0?Ye=ei:(Te.c=null,Te.t=NaN,Te=null,se.end({type:"end",alpha:Ye=0})):ei>0&&(se.start({type:"start",alpha:Ye=ei}),Te=No(X.tick)),X):Ye},X.start=function(){var ei,Ln=_i.length,En=bi.length,Un=Ne[0],ia=Ne[1],Ea,Ia;for(ei=0;ei<Ln;++ei)(Ia=_i[ei]).index=ei,Ia.weight=0;for(ei=0;ei<En;++ei)Ia=bi[ei],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(ei=0;ei<Ln;++ei)Ia=_i[ei],isNaN(Ia.x)&&(Ia.x=yo("x",Un)),isNaN(Ia.y)&&(Ia.y=yo("y",ia)),isNaN(Ia.px)&&(Ia.px=Ia.x),isNaN(Ia.py)&&(Ia.py=Ia.y);if(Zr=[],typeof nt=="function")for(ei=0;ei<En;++ei)Zr[ei]=+nt.call(this,bi[ei],ei);else for(ei=0;ei<En;++ei)Zr[ei]=nt;if(ai=[],typeof jt=="function")for(ei=0;ei<En;++ei)ai[ei]=+jt.call(this,bi[ei],ei);else for(ei=0;ei<En;++ei)ai[ei]=jt;if(gi=[],typeof gr=="function")for(ei=0;ei<Ln;++ei)gi[ei]=+gr.call(this,_i[ei],ei);else for(ei=0;ei<Ln;++ei)gi[ei]=gr;function yo(Da,go){if(!Ea){for(Ea=new Array(Ln),Xs=0;Xs<Ln;++Xs)Ea[Xs]=[];for(Xs=0;Xs<En;++Xs){var Is=bi[Xs];Ea[Is.source.index].push(Is.target),Ea[Is.target.index].push(Is.source)}}for(var Ms=Ea[ei],Xs=-1,Gn=Ms.length,ja;++Xs<Gn;)if(!isNaN(ja=Ms[Xs][Da]))return ja;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",Si).on("dragend.force",ks)),!arguments.length)return He;this.on("mouseover.force",bc).on("mouseout.force",hu).call(He)};function Si(ei){ei.px=e.event.x,ei.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 hu(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,kt=Ye.length,nt=-1,jt;++nt<kt;)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 nl=20,nh=1,Ah=1/0;e.layout.hierarchy=function(){var X=Pf,se=bd,Te=xf;function Ne(He){var Ye=[He],kt=[],nt;for(He.depth=0;(nt=Ye.pop())!=null;)if(kt.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(Hr){var qr,_i;X&&(qr=Hr.children)&&qr.sort(X),Te&&(_i=Hr.parent)&&(_i.value+=Hr.value)}),kt}return Ne.sort=function(He){return arguments.length?(X=He,Ne):X},Ne.children=function(He){return arguments.length?(se=He,Ne):se},Ne.value=function(He){return arguments.length?(Te=He,Ne):Te},Ne.revalue=function(He){return Te&&(Fc(He,function(Ye){Ye.children&&(Ye.value=0)}),wc(He,function(Ye){var kt;Ye.children||(Ye.value=+Te.call(Ne,Ye,Ye.depth)||0),(kt=Ye.parent)&&(kt.value+=Ye.value)})),He},Ne};function zu(X,se){return e.rebind(X,se,"sort","children","value"),X.nodes=X,X.links=Ou,X}function Fc(X,se){for(var Te=[X];(X=Te.pop())!=null;)if(se(X),(He=X.children)&&(Ne=He.length))for(var Ne,He;--Ne>=0;)Te.push(He[Ne])}function wc(X,se){for(var Te=[X],Ne=[];(X=Te.pop())!=null;)if(Ne.push(X),(kt=X.children)&&(Ye=kt.length))for(var He=-1,Ye,kt;++He<Ye;)Te.push(kt[He]);for(;(X=Ne.pop())!=null;)se(X)}function bd(X){return X.children}function xf(X){return X.value}function Pf(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,kt,nt,jt){var gr=Ye.children;if(Ye.x=kt,Ye.y=Ye.depth*jt,Ye.dx=nt,Ye.dy=jt,gr&&(Hr=gr.length)){var yr=-1,Hr,qr,_i;for(nt=Ye.value?nt/Ye.value:0;++yr<Hr;)Te(qr=gr[yr],kt,_i=qr.value*nt,jt),kt+=_i}}function Ne(Ye){var kt=Ye.children,nt=0;if(kt&&(gr=kt.length))for(var jt=-1,gr;++jt<gr;)nt=Math.max(nt,Ne(kt[jt]));return 1+nt}function He(Ye,kt){var nt=X.call(this,Ye,kt);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=bf,Te=0,Ne=xt,He=0;function Ye(kt){var nt=kt.length,jt=kt.map(function(Ii,Si){return+X.call(Ye,Ii,Si)}),gr=+(typeof Te=="function"?Te.apply(this,arguments):Te),yr=(typeof Ne=="function"?Ne.apply(this,arguments):Ne)-gr,Hr=Math.min(Math.abs(yr)/nt,+(typeof He=="function"?He.apply(this,arguments):He)),qr=Hr*(yr<0?-1:1),_i=e.sum(jt),bi=_i?(yr-nt*qr)/_i:0,Zr=e.range(nt),ai=[],gi;return se!=null&&Zr.sort(se===bf?function(Ii,Si){return jt[Si]-jt[Ii]}:function(Ii,Si){return se(kt[Ii],kt[Si])}),Zr.forEach(function(Ii){ai[Ii]={data:kt[Ii],value:gi=jt[Ii],startAngle:gr,endAngle:gr+=gi*bi+qr,padAngle:Hr}}),ai}return Ye.value=function(kt){return arguments.length?(X=kt,Ye):X},Ye.sort=function(kt){return arguments.length?(se=kt,Ye):se},Ye.startAngle=function(kt){return arguments.length?(Te=kt,Ye):Te},Ye.endAngle=function(kt){return arguments.length?(Ne=kt,Ye):Ne},Ye.padAngle=function(kt){return arguments.length?(He=kt,Ye):He},Ye};var bf={};e.layout.stack=function(){var X=G,se=du,Te=ku,Ne=Hh,He=jl,Ye=lf;function kt(nt,jt){if(!(bi=nt.length))return nt;var gr=nt.map(function(Ii,Si){return X.call(kt,Ii,Si)}),yr=gr.map(function(Ii){return Ii.map(function(Si,ei){return[He.call(kt,Si,ei),Ye.call(kt,Si,ei)]})}),Hr=se.call(kt,yr,jt);gr=e.permute(gr,Hr),yr=e.permute(yr,Hr);var qr=Te.call(kt,yr,jt),_i=gr[0].length,bi,Zr,ai,gi;for(ai=0;ai<_i;++ai)for(Ne.call(kt,gr[0][ai],gi=qr[ai],yr[0][ai][1]),Zr=1;Zr<bi;++Zr)Ne.call(kt,gr[Zr][ai],gi+=yr[Zr-1][ai][1],yr[Zr][ai][1]);return nt}return kt.values=function(nt){return arguments.length?(X=nt,kt):X},kt.order=function(nt){return arguments.length?(se=typeof nt=="function"?nt:If.get(nt)||du,kt):se},kt.offset=function(nt){return arguments.length?(Te=typeof nt=="function"?nt:Cs.get(nt)||ku,kt):Te},kt.x=function(nt){return arguments.length?(He=nt,kt):He},kt.y=function(nt){return arguments.length?(Ye=nt,kt):Ye},kt.out=function(nt){return arguments.length?(Ne=nt,kt):Ne},kt};function jl(X){return X.x}function lf(X){return X.y}function Hh(X,se,Te){X.y0=se,X.y=Te}var If=e.map({"inside-out":function(X){var se=X.length,Te,Ne,He=X.map(Wf),Ye=X.map(Us),kt=e.range(se).sort(function(Hr,qr){return He[Hr]-He[qr]}),nt=0,jt=0,gr=[],yr=[];for(Te=0;Te<se;++Te)Ne=kt[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:du}),Cs=e.map({silhouette:function(X){var se=X.length,Te=X[0].length,Ne=[],He=0,Ye,kt,nt,jt=[];for(kt=0;kt<Te;++kt){for(Ye=0,nt=0;Ye<se;Ye++)nt+=X[Ye][kt][1];nt>He&&(He=nt),Ne.push(nt)}for(kt=0;kt<Te;++kt)jt[kt]=(He-Ne[kt])/2;return jt},wiggle:function(X){var se=X.length,Te=X[0],Ne=Te.length,He,Ye,kt,nt,jt,gr,yr,Hr,qr,_i=[];for(_i[0]=Hr=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(kt=0,gr=(X[He][Ye][1]-X[He][Ye-1][1])/(2*yr);kt<He;++kt)gr+=(X[kt][Ye][1]-X[kt][Ye-1][1])/yr;jt+=gr*X[He][Ye][1]}_i[Ye]=Hr-=nt?jt/nt*yr:0,Hr<qr&&(qr=Hr)}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,kt,nt=[];for(Ye=0;Ye<Te;++Ye){for(He=0,kt=0;He<se;He++)kt+=X[He][Ye][1];if(kt)for(He=0;He<se;He++)X[He][Ye][1]/=kt;else for(He=0;He<se;He++)X[He][Ye][1]=Ne}for(Ye=0;Ye<Te;++Ye)nt[Ye]=0;return nt},zero:ku});function du(X){return e.range(X.length)}function ku(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 Us(X){return X.reduce(wf,0)}function wf(X,se){return X+se[1]}e.layout.histogram=function(){var X=!0,se=Number,Te=Rf,Ne=zc;function He(Ye,qr){for(var nt=[],jt=Ye.map(se,this),gr=Te.call(this,jt,qr),yr=Ne.call(this,gr,jt,qr),Hr,qr=-1,_i=jt.length,bi=yr.length-1,Zr=X?1:1/_i,ai;++qr<bi;)Hr=nt[qr]=[],Hr.dx=yr[qr+1]-(Hr.x=yr[qr]),Hr.y=0;if(bi>0)for(qr=-1;++qr<_i;)ai=jt[qr],ai>=gr[0]&&ai<=gr[1]&&(Hr=nt[e.bisect(yr,ai,1,bi)-1],Hr.y+=Zr,Hr.push(Ye[qr]));return nt}return He.value=function(Ye){return arguments.length?(se=Ye,He):se},He.range=function(Ye){return arguments.length?(Te=vi(Ye),He):Te},He.bins=function(Ye){return arguments.length?(Ne=typeof Ye=="number"?function(kt){return Wu(kt,Ye)}:vi(Ye),He):Ne},He.frequency=function(Ye){return arguments.length?(X=!!Ye,He):X},He};function zc(X,se){return Wu(X,Math.ceil(Math.log(se.length)/Math.LN2+1))}function Wu(X,se){for(var Te=-1,Ne=+X[0],He=(X[1]-Ne)/se,Ye=[];++Te<=se;)Ye[Te]=He*Te+Ne;return Ye}function Rf(X){return[e.min(X),e.max(X)]}e.layout.pack=function(){var X=e.layout.hierarchy().sort(Xu),se=0,Te=[1,1],Ne;function He(Ye,kt){var nt=X.call(this,Ye,kt),jt=nt[0],gr=Te[0],yr=Te[1],Hr=Ne==null?Math.sqrt:typeof Ne=="function"?Ne:function(){return Ne};if(jt.x=jt.y=0,wc(jt,function(_i){_i.r=+Hr(_i.value)}),wc(jt,ah),se){var qr=se*(Ne?1:Math.max(2*jt.r/gr,2*jt.r/yr))/2;wc(jt,function(_i){_i.r+=qr}),wc(jt,ah),wc(jt,function(_i){_i.r-=qr})}return Tc(jt,gr/2,yr/2,Ne?1:1/Math.max(2*jt.r/gr,2*jt.r/yr)),nt}return He.size=function(Ye){return arguments.length?(Te=Ye,He):Te},He.radius=function(Ye){return arguments.length?(Ne=Ye==null||typeof Ye=="function"?Ye:+Ye,He):Ne},He.padding=function(Ye){return arguments.length?(se=+Ye,He):se},zu(He,X)};function Xu(X,se){return X.value-se.value}function uf(X,se){var Te=X._pack_next;X._pack_next=se,se._pack_prev=X,se._pack_next=Te,Te._pack_prev=se}function Xf(X,se){X._pack_next=se,se._pack_prev=X}function Wl(X,se){var Te=se.x-X.x,Ne=se.y-X.y,He=X.r+se.r;return .999*He*He>Te*Te+Ne*Ne}function ah(X){if(!(se=X.children)||!(qr=se.length))return;var se,Te=1/0,Ne=-1/0,He=1/0,Ye=-1/0,kt,nt,jt,gr,yr,Hr,qr;function _i(ei){Te=Math.min(ei.x-ei.r,Te),Ne=Math.max(ei.x+ei.r,Ne),He=Math.min(ei.y-ei.r,He),Ye=Math.max(ei.y+ei.r,Ye)}if(se.forEach(Zu),kt=se[0],kt.x=-kt.r,kt.y=0,_i(kt),qr>1&&(nt=se[1],nt.x=nt.r,nt.y=0,_i(nt),qr>2))for(jt=se[2],wl(kt,nt,jt),_i(jt),uf(kt,jt),kt._pack_prev=jt,uf(jt,nt),nt=kt._pack_next,gr=3;gr<qr;gr++){wl(kt,nt,jt=se[gr]);var bi=0,Zr=1,ai=1;for(yr=nt._pack_next;yr!==nt;yr=yr._pack_next,Zr++)if(Wl(yr,jt)){bi=1;break}if(bi==1)for(Hr=kt._pack_prev;Hr!==yr._pack_prev&&!Wl(Hr,jt);Hr=Hr._pack_prev,ai++);bi?(Zr<ai||Zr==ai&&nt.r<kt.r?Xf(kt,nt=yr):Xf(kt=Hr,nt),gr--):(uf(kt,jt),nt=jt,_i(jt))}var gi=(Te+Ne)/2,Ii=(He+Ye)/2,Si=0;for(gr=0;gr<qr;gr++)jt=se[gr],jt.x-=gi,jt.y-=Ii,Si=Math.max(Si,jt.r+Math.sqrt(jt.x*jt.x+jt.y*jt.y));X.r=Si,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,kt=He.length;++Ye<kt;)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 kt=se.r+Te.r,nt=He*He+Ye*Ye;kt*=kt,Ne*=Ne;var jt=.5+(Ne-kt)/(2*nt),gr=Math.sqrt(Math.max(0,2*kt*(Ne+nt)-(Ne-=nt)*Ne-kt*kt))/(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=vu,Te=[1,1],Ne=null;function He(yr,Hr){var qr=X.call(this,yr,Hr),_i=qr[0],bi=Ye(_i);if(wc(bi,kt),bi.parent.m=-bi.z,Fc(bi,nt),Ne)Fc(_i,gr);else{var Zr=_i,ai=_i,gi=_i;Fc(_i,function(Ln){Ln.x<Zr.x&&(Zr=Ln),Ln.x>ai.x&&(ai=Ln),Ln.depth>gi.depth&&(gi=Ln)});var Ii=se(Zr,ai)/2-Zr.x,Si=Te[0]/(ai.x+se(ai,Zr)/2+Ii),ei=Te[1]/(gi.depth||1);Fc(_i,function(Ln){Ln.x=(Ln.x+Ii)*Si,Ln.y=Ln.depth*ei})}return qr}function Ye(yr){for(var Hr={A:null,children:[yr]},qr=[Hr],_i;(_i=qr.pop())!=null;)for(var bi=_i.children,Zr,ai=0,gi=bi.length;ai<gi;++ai)qr.push((bi[ai]=Zr={_:bi[ai],parent:_i,children:(Zr=bi[ai].children)&&Zr.slice()||[],A:null,a:null,z:0,m:0,c:0,s:0,t:null,i:ai}).a=Zr);return Hr.children[0]}function kt(yr){var Hr=yr.children,qr=yr.parent.children,_i=yr.i?qr[yr.i-1]:null;if(Hr.length){Bc(yr);var bi=(Hr[0].z+Hr[Hr.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,Hr,qr){if(Hr){for(var _i=yr,bi=yr,Zr=Hr,ai=_i.parent.children[0],gi=_i.m,Ii=bi.m,Si=Zr.m,ei=ai.m,Ln;Zr=cf(Zr),_i=qc(_i),Zr&&_i;)ai=qc(ai),bi=cf(bi),bi.a=yr,Ln=Zr.z+Si-_i.z-gi+se(Zr._,_i._),Ln>0&&(fc(At(Zr,yr,qr),yr,Ln),gi+=Ln,Ii+=Ln),Si+=Zr.m,gi+=_i.m,ei+=ai.m,Ii+=bi.m;Zr&&!cf(bi)&&(bi.t=Zr,bi.m+=Si-Ii),_i&&!qc(ai)&&(ai.t=_i,ai.m+=gi-ei,qr=yr)}return qr}function gr(yr){yr.x*=Te[0],yr.y=yr.depth*Te[1]}return He.separation=function(yr){return arguments.length?(se=yr,He):se},He.size=function(yr){return arguments.length?(Ne=(Te=yr)==null?gr:null,He):Ne?null:Te},He.nodeSize=function(yr){return arguments.length?(Ne=(Te=yr)==null?null:gr,He):Ne?Te:null},zu(He,X)};function vu(X,se){return X.parent==se.parent?1:2}function qc(X){var se=X.children;return se.length?se[0]:X.t}function cf(X){var se=X.children,Te;return(Te=se.length)?se[Te-1]:X.t}function fc(X,se,Te){var Ne=Te/(se.i-X.i);se.c-=Ne,se.s+=Te,X.c+=Ne,se.z+=Te,se.m+=Te}function Bc(X){for(var se=0,Te=0,Ne=X.children,He=Ne.length,Ye;--He>=0;)Ye=Ne[He],Ye.z+=se,Ye.m+=se,se+=Ye.s+(Te+=Ye.c)}function At(X,se,Te){return X.a.parent===se.parent?X.a:Te}e.layout.cluster=function(){var X=e.layout.hierarchy().sort(null).value(null),se=vu,Te=[1,1],Ne=!1;function He(Ye,kt){var nt=X.call(this,Ye,kt),jt=nt[0],gr,yr=0;wc(jt,function(Zr){var ai=Zr.children;ai&&ai.length?(Zr.x=Cr(ai),Zr.y=Wt(ai)):(Zr.x=gr?yr+=se(Zr,gr):0,Zr.y=0,gr=Zr)});var Hr=Ar(jt),qr=Kr(jt),_i=Hr.x-se(Hr,qr)/2,bi=qr.x+se(qr,Hr)/2;return wc(jt,Ne?function(Zr){Zr.x=(Zr.x-jt.x)*Te[0],Zr.y=(jt.y-Zr.y)*Te[1]}:function(Zr){Zr.x=(Zr.x-_i)/(bi-_i)*Te[0],Zr.y=(1-(jt.y?Zr.y/jt.y:1))*Te[1]}),nt}return He.separation=function(Ye){return arguments.length?(se=Ye,He):se},He.size=function(Ye){return arguments.length?(Ne=(Te=Ye)==null,He):Ne?null:Te},He.nodeSize=function(Ye){return arguments.length?(Ne=(Te=Ye)!=null,He):Ne?Te:null},zu(He,X)};function Wt(X){return 1+e.max(X,function(se){return se.y})}function Cr(X){return X.reduce(function(se,Te){return se+Te.x},0)/X.length}function Ar(X){var se=X.children;return se&&se.length?Ar(se[0]):X}function Kr(X){var se=X.children,Te;return se&&(Te=se.length)?Kr(se[Te-1]):X}e.layout.treemap=function(){var X=e.layout.hierarchy(),se=Math.round,Te=[1,1],Ne=null,He=ki,Ye=!1,kt,nt="squarify",jt=.5*(1+Math.sqrt(5));function gr(Zr,ai){for(var gi=-1,Ii=Zr.length,Si,ei;++gi<Ii;)ei=(Si=Zr[gi]).value*(ai<0?0:ai),Si.area=isNaN(ei)||ei<=0?0:ei}function yr(Zr){var ai=Zr.children;if(ai&&ai.length){var gi=He(Zr),Ii=[],Si=ai.slice(),ei,Ln=1/0,En,Un=nt==="slice"?gi.dx:nt==="dice"?gi.dy:nt==="slice-dice"?Zr.depth&1?gi.dy:gi.dx:Math.min(gi.dx,gi.dy),ia;for(gr(Si,gi.dx*gi.dy/Zr.value),Ii.area=0;(ia=Si.length)>0;)Ii.push(ei=Si[ia-1]),Ii.area+=ei.area,nt!=="squarify"||(En=qr(Ii,Un))<=Ln?(Si.pop(),Ln=En):(Ii.area-=Ii.pop().area,_i(Ii,Un,gi,!1),Un=Math.min(gi.dx,gi.dy),Ii.length=Ii.area=0,Ln=1/0);Ii.length&&(_i(Ii,Un,gi,!0),Ii.length=Ii.area=0),ai.forEach(yr)}}function Hr(Zr){var ai=Zr.children;if(ai&&ai.length){var gi=He(Zr),Ii=ai.slice(),Si,ei=[];for(gr(Ii,gi.dx*gi.dy/Zr.value),ei.area=0;Si=Ii.pop();)ei.push(Si),ei.area+=Si.area,Si.z!=null&&(_i(ei,Si.z?gi.dx:gi.dy,gi,!Ii.length),ei.length=ei.area=0);ai.forEach(Hr)}}function qr(Zr,ai){for(var gi=Zr.area,Ii,Si=0,ei=1/0,Ln=-1,En=Zr.length;++Ln<En;)(Ii=Zr[Ln].area)&&(Ii<ei&&(ei=Ii),Ii>Si&&(Si=Ii));return gi*=gi,ai*=ai,gi?Math.max(ai*Si*jt/gi,gi/(ai*ei*jt)):1/0}function _i(Zr,ai,gi,Ii){var Si=-1,ei=Zr.length,Ln=gi.x,En=gi.y,Un=ai?se(Zr.area/ai):0,ia;if(ai==gi.dx){for((Ii||Un>gi.dy)&&(Un=gi.dy);++Si<ei;)ia=Zr[Si],ia.x=Ln,ia.y=En,ia.dy=Un,Ln+=ia.dx=Math.min(gi.x+gi.dx-Ln,Un?se(ia.area/Un):0);ia.z=!0,ia.dx+=gi.x+gi.dx-Ln,gi.y+=Un,gi.dy-=Un}else{for((Ii||Un>gi.dx)&&(Un=gi.dx);++Si<ei;)ia=Zr[Si],ia.x=Ln,ia.y=En,ia.dx=Un,En+=ia.dy=Math.min(gi.y+gi.dy-En,Un?se(ia.area/Un):0);ia.z=!1,ia.dy+=gi.y+gi.dy-En,gi.x+=Un,gi.dx-=Un}}function bi(Zr){var ai=kt||X(Zr),gi=ai[0];return gi.x=gi.y=0,gi.value?(gi.dx=Te[0],gi.dy=Te[1]):gi.dx=gi.dy=0,kt&&X.revalue(gi),gr([gi],gi.dx*gi.dy/gi.value),(kt?Hr:yr)(gi),Ye&&(kt=ai),ai}return bi.size=function(Zr){return arguments.length?(Te=Zr,bi):Te},bi.padding=function(Zr){if(!arguments.length)return Ne;function ai(Si){var ei=Zr.call(bi,Si,Si.depth);return ei==null?ki(Si):Xi(Si,typeof ei=="number"?[ei,ei,ei,ei]:ei)}function gi(Si){return Xi(Si,Zr)}var Ii;return He=(Ne=Zr)==null?ki:(Ii=typeof Zr)=="function"?ai:(Ii==="number"&&(Zr=[Zr,Zr,Zr,Zr]),gi),bi},bi.round=function(Zr){return arguments.length?(se=Zr?Math.round:Number,bi):se!=Number},bi.sticky=function(Zr){return arguments.length?(Ye=Zr,kt=null,bi):Ye},bi.ratio=function(Zr){return arguments.length?(jt=Zr,bi):jt},bi.mode=function(Zr){return arguments.length?(nt=Zr+"",bi):nt},zu(bi,X)};function ki(X){return{x:X.x,y:X.y,dx:X.dx,dy:X.dy}}function Xi(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 dn(X){var se=X[0],Te=X[X.length-1];return se<Te?[se,Te]:[Te,se]}function wn(X){return X.rangeExtent?X.rangeExtent():dn(X.range())}function Nn(X,se,Te,Ne){var He=Te(X[0],X[1]),Ye=Ne(se[0],se[1]);return function(kt){return Ye(He(kt))}}function Yi(X,se){var Te=0,Ne=X.length-1,He=X[Te],Ye=X[Ne],kt;return Ye<He&&(kt=Te,Te=Ne,Ne=kt,kt=He,He=Ye,Ye=kt),X[Te]=se.floor(He),X[Ne]=se.ceil(Ye),X}function Qi(X){return X?{floor:function(se){return Math.floor(se/X)*X},ceil:function(se){return Math.ceil(se/X)*X}}:on}var on={floor:G,ceil:G};function Fi(X,se,Te,Ne){var He=[],Ye=[],kt=0,nt=Math.min(X.length,se.length)-1;for(X[nt]<X[0]&&(X=X.slice().reverse(),se=se.slice().reverse());++kt<=nt;)He.push(Te(X[kt-1],X[kt])),Ye.push(Ne(se[kt-1],se[kt]));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 kt(){var jt=Math.min(X.length,se.length)>2?Fi:Nn,gr=Ne?Mu:Th;return He=jt(X,se,gr,Te),Ye=jt(se,X,gr,xl),nt}function nt(jt){return He(jt)}return nt.invert=function(jt){return Ye(jt)},nt.domain=function(jt){return arguments.length?(X=jt.map(Number),kt()):X},nt.range=function(jt){return arguments.length?(se=jt,kt()):se},nt.rangeRound=function(jt){return nt.range(jt).interpolate(ju)},nt.clamp=function(jt){return arguments.length?(Ne=jt,kt()):Ne},nt.interpolate=function(jt){return arguments.length?(Te=jt,kt()):Te},nt.ticks=function(jt){return Na(X,jt)},nt.tickFormat=function(jt,gr){return d3_scale_linearTickFormat(X,jt,gr)},nt.nice=function(jt){return Ra(X,jt),kt()},nt.copy=function(){return $n(X,se,Te,Ne)},kt()}function Ca(X,se){return e.rebind(X,se,"range","rangeRound","interpolate","clamp")}function Ra(X,se){return Yi(X,Qi(La(X,se)[2])),Yi(X,Qi(La(X,se)[2])),X}function La(X,se){se==null&&(se=10);var Te=dn(X),Ne=Te[1]-Te[0],He=Math.pow(10,Math.floor(Math.log(Ne/se)/Math.LN10)),Ye=se/Ne*He;return Ye<=.15?He*=10:Ye<=.35?He*=5:Ye<=.75&&(He*=2),Te[0]=Math.ceil(Te[0]/He)*He,Te[1]=Math.floor(Te[1]/He)*He+He*.5,Te[2]=He,Te}function Na(X,se){return e.range.apply(e,La(X,se))}var Yn={s:1,g:1,p:1,r:1,e:1};function Dn(X){return-Math.floor(Math.log(X)/Math.LN10+.01)}function Ka(X,se){var Te=Dn(se[2]);return X in Yn?Math.abs(Te-Dn(Math.max(p(se[0]),p(se[1]))))+ +(X!=="e"):Te-(X==="%")*2}e.scale.log=function(){return bo(e.scale.linear().domain([0,1]),10,!0,[1,10])};function bo(X,se,Te,Ne){function He(nt){return(Te?Math.log(nt<0?0:nt):-Math.log(nt>0?0:-nt))/Math.log(se)}function Ye(nt){return Te?Math.pow(se,nt):-Math.pow(se,-nt)}function kt(nt){return X(He(nt))}return kt.invert=function(nt){return Ye(X.invert(nt))},kt.domain=function(nt){return arguments.length?(Te=nt[0]>=0,X.domain((Ne=nt.map(Number)).map(He)),kt):Ne},kt.base=function(nt){return arguments.length?(se=+nt,X.domain(Ne.map(He)),kt):se},kt.nice=function(){var nt=Yi(Ne.map(He),Te?Math:Xo);return X.domain(nt),Ne=nt.map(Ye),kt},kt.ticks=function(){var nt=dn(Ne),jt=[],gr=nt[0],yr=nt[1],Hr=Math.floor(He(gr)),qr=Math.ceil(He(yr)),_i=se%1?2:se;if(isFinite(qr-Hr)){if(Te){for(;Hr<qr;Hr++)for(var bi=1;bi<_i;bi++)jt.push(Ye(Hr)*bi);jt.push(Ye(Hr))}else for(jt.push(Ye(Hr));Hr++<qr;)for(var bi=_i-1;bi>0;bi--)jt.push(Ye(Hr)*bi);for(Hr=0;jt[Hr]<gr;Hr++);for(qr=jt.length;jt[qr-1]>yr;qr--);jt=jt.slice(Hr,qr)}return jt},kt.copy=function(){return bo(X.copy(),se,Te,Ne)},Ca(kt,X)}var Xo={floor:function(X){return-Math.ceil(-X)},ceil:function(X){return-Math.floor(-X)}};e.scale.pow=function(){return Ss(e.scale.linear(),1,[0,1])};function Ss(X,se,Te){var Ne=as(se),He=as(1/se);function Ye(kt){return X(Ne(kt))}return Ye.invert=function(kt){return He(X.invert(kt))},Ye.domain=function(kt){return arguments.length?(X.domain((Te=kt.map(Number)).map(Ne)),Ye):Te},Ye.ticks=function(kt){return Na(Te,kt)},Ye.tickFormat=function(kt,nt){return d3_scale_linearTickFormat(Te,kt,nt)},Ye.nice=function(kt){return Ye.domain(Ra(Te,kt))},Ye.exponent=function(kt){return arguments.length?(Ne=as(se=kt),He=as(1/se),X.domain(Te.map(Ne)),Ye):se},Ye.copy=function(){return Ss(X.copy(),se,Te)},Ca(Ye,X)}function as(X){return function(se){return se<0?-Math.pow(-se,X):Math.pow(se,X)}}e.scale.sqrt=function(){return e.scale.pow().exponent(.5)},e.scale.ordinal=function(){return ws([],{t:"range",a:[[]]})};function ws(X,se){var Te,Ne,He;function Ye(nt){return Ne[((Te.get(nt)||(se.t==="range"?Te.set(nt,X.push(nt)):NaN))-1)%Ne.length]}function kt(nt,jt){return e.range(X.length).map(function(gr){return nt+jt*gr})}return Ye.domain=function(nt){if(!arguments.length)return X;X=[],Te=new S;for(var jt=-1,gr=nt.length,yr;++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],Hr=X.length<2?(gr=(gr+yr)/2,0):(yr-gr)/(X.length-1+jt);return Ne=kt(gr+Hr*jt/2,Hr),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],Hr=X.length<2?(gr=yr=Math.round((gr+yr)/2),0):(yr-gr)/(X.length-1+jt)|0;return Ne=kt(gr+Math.round(Hr*jt/2+(yr-gr-(X.length-1+jt)*Hr)/2),Hr),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],Hr=nt[yr-0],qr=nt[1-yr],_i=(qr-Hr)/(X.length-jt+2*gr);return Ne=kt(Hr+_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],Hr=nt[yr-0],qr=nt[1-yr],_i=Math.floor((qr-Hr)/(X.length-jt+2*gr));return Ne=kt(Hr+Math.round((qr-Hr-(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 dn(se.a[0])},Ye.copy=function(){return ws(X,se)},Ye.domain(X)}e.scale.category10=function(){return e.scale.ordinal().range(Ho)},e.scale.category20=function(){return e.scale.ordinal().range(ml)},e.scale.category20b=function(){return e.scale.ordinal().range(Ws)},e.scale.category20c=function(){return e.scale.ordinal().range(Ls)};var Ho=[2062260,16744206,2924588,14034728,9725885,9197131,14907330,8355711,12369186,1556175].map(Wo),ml=[2062260,11454440,16744206,16759672,2924588,10018698,14034728,16750742,9725885,12955861,9197131,12885140,14907330,16234194,8355711,13092807,12369186,14408589,1556175,10410725].map(Wo),Ws=[3750777,5395619,7040719,10264286,6519097,9216594,11915115,13556636,9202993,12426809,15186514,15190932,8666169,11356490,14049643,15177372,8077683,10834324,13528509,14589654].map(Wo),Ls=[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,kt=se.length;for(Te=[];++Ye<kt;)Te[Ye-1]=e.quantile(X,Ye/kt);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 kt(){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],kt()):[X,se]},Ye.range=function(nt){return arguments.length?(Te=nt,kt()):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)},kt()}e.scale.threshold=function(){return ys([.5],[0,1])};function ys(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 ys(X,se)},Te}e.scale.identity=function(){return rs([0,1])};function rs(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 rs(X)},se}e.svg={};function $l(){return 0}e.svg.arc=function(){var X=Yu,se=Nc,Te=$l,Ne=Cu,He=pu,Ye=Uc,kt=xu;function nt(){var gr=Math.max(0,+X.apply(this,arguments)),yr=Math.max(0,+se.apply(this,arguments)),Hr=He.apply(this,arguments)-xe,qr=Ye.apply(this,arguments)-xe,_i=Math.abs(qr-Hr),bi=Hr>qr?0:1;if(yr<gr&&(Zr=yr,yr=gr,gr=Zr),_i>=Ie)return jt(yr,bi)+(gr?jt(gr,1-bi):"")+"Z";var Zr,ai,gi,Ii,Si=0,ei=0,Ln,En,Un,ia,Ea,Ia,yo,Da,go=[];if((Ii=(+kt.apply(this,arguments)||0)/2)&&(gi=Ne===Cu?Math.sqrt(gr*gr+yr*yr):+Ne.apply(this,arguments),bi||(ei*=-1),yr&&(ei=ii(gi/yr*Math.sin(Ii))),gr&&(Si=ii(gi/gr*Math.sin(Ii)))),yr){Ln=yr*Math.cos(Hr+ei),En=yr*Math.sin(Hr+ei),Un=yr*Math.cos(qr-ei),ia=yr*Math.sin(qr-ei);var Is=Math.abs(qr-Hr-2*ei)<=tt?0:1;if(ei&&Ac(Ln,En,Un,ia)===bi^Is){var Ms=(Hr+qr)/2;Ln=yr*Math.cos(Ms),En=yr*Math.sin(Ms),Un=ia=null}}else Ln=En=0;if(gr){Ea=gr*Math.cos(qr-Si),Ia=gr*Math.sin(qr-Si),yo=gr*Math.cos(Hr+Si),Da=gr*Math.sin(Hr+Si);var Xs=Math.abs(Hr-qr+2*Si)<=tt?0:1;if(Si&&Ac(Ea,Ia,yo,Da)===1-bi^Xs){var Gn=(Hr+qr)/2;Ea=gr*Math.cos(Gn),Ia=gr*Math.sin(Gn),yo=Da=null}}else Ea=Ia=0;if(_i>Je&&(Zr=Math.min(Math.abs(yr-gr)/2,+Te.apply(this,arguments)))>.001){ai=gr<yr^bi?0:1;var ja=Zr,Fo=Zr;if(_i<tt){var Uo=yo==null?[Ea,Ia]:Un==null?[Ln,En]:il([Ln,En],[yo,Da],[Un,ia],[Ea,Ia]),$s=Ln-Uo[0],Sl=En-Uo[1],bu=Un-Uo[0],dl=ia-Uo[1],Sc=1/Math.sin(Math.acos(($s*bu+Sl*dl)/(Math.sqrt($s*$s+Sl*Sl)*Math.sqrt(bu*bu+dl*dl)))/2),Me=Math.sqrt(Uo[0]*Uo[0]+Uo[1]*Uo[1]);Fo=Math.min(Zr,(gr-Me)/(Sc-1)),ja=Math.min(Zr,(yr-Me)/(Sc+1))}if(Un!=null){var bt=Ua(yo==null?[Ea,Ia]:[yo,Da],[Ln,En],yr,ja,bi),zt=Ua([Un,ia],[Ea,Ia],yr,ja,bi);Zr===ja?go.push("M",bt[0],"A",ja,",",ja," 0 0,",ai," ",bt[1],"A",yr,",",yr," 0 ",1-bi^Ac(bt[1][0],bt[1][1],zt[1][0],zt[1][1]),",",bi," ",zt[1],"A",ja,",",ja," 0 0,",ai," ",zt[0]):go.push("M",bt[0],"A",ja,",",ja," 0 1,",ai," ",zt[0])}else go.push("M",Ln,",",En);if(yo!=null){var Rr=Ua([Ln,En],[yo,Da],gr,-Fo,bi),jr=Ua([Ea,Ia],Un==null?[Ln,En]:[Un,ia],gr,-Fo,bi);Zr===Fo?go.push("L",jr[0],"A",Fo,",",Fo," 0 0,",ai," ",jr[1],"A",gr,",",gr," 0 ",bi^Ac(jr[1][0],jr[1][1],Rr[1][0],Rr[1][1]),",",1-bi," ",Rr[1],"A",Fo,",",Fo," 0 0,",ai," ",Rr[0]):go.push("L",jr[0],"A",Fo,",",Fo," 0 0,",ai," ",Rr[0])}else go.push("L",Ea,",",Ia)}else go.push("M",Ln,",",En),Un!=null&&go.push("A",yr,",",yr," 0 ",Is,",",bi," ",Un,",",ia),go.push("L",Ea,",",Ia),yo!=null&&go.push("A",gr,",",gr," 0 ",Xs,",",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=vi(gr),nt):X},nt.outerRadius=function(gr){return arguments.length?(se=vi(gr),nt):se},nt.cornerRadius=function(gr){return arguments.length?(Te=vi(gr),nt):Te},nt.padRadius=function(gr){return arguments.length?(Ne=gr==Cu?Cu:vi(gr),nt):Ne},nt.startAngle=function(gr){return arguments.length?(He=vi(gr),nt):He},nt.endAngle=function(gr){return arguments.length?(Ye=vi(gr),nt):Ye},nt.padAngle=function(gr){return arguments.length?(kt=vi(gr),nt):kt},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 Cu="auto";function Yu(X){return X.innerRadius}function Nc(X){return X.outerRadius}function pu(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],kt=X[1]-se[1],nt=(He?Ne:-Ne)/Math.sqrt(Ye*Ye+kt*kt),jt=nt*kt,gr=-nt*Ye,yr=X[0]+jt,Hr=X[1]+gr,qr=se[0]+jt,_i=se[1]+gr,bi=(yr+qr)/2,Zr=(Hr+_i)/2,ai=qr-yr,gi=_i-Hr,Ii=ai*ai+gi*gi,Si=Te-Ne,ei=yr*_i-qr*Hr,Ln=(gi<0?-1:1)*Math.sqrt(Math.max(0,Si*Si*Ii-ei*ei)),En=(ei*gi-ai*Ln)/Ii,Un=(-ei*ai-gi*Ln)/Ii,ia=(ei*gi+ai*Ln)/Ii,Ea=(-ei*ai+gi*Ln)/Ii,Ia=En-bi,yo=Un-Zr,Da=ia-bi,go=Ea-Zr;return Ia*Ia+yo*yo>Da*Da+go*go&&(En=ia,Un=Ea),[[En-jt,Un-gr],[En*Te/Si,Un*Te/Si]]}function oo(){return!0}function Vc(X){var se=Ds,Te=Fs,Ne=oo,He=Ku,Ye=He.key,kt=.7;function nt(jt){var gr=[],yr=[],Hr=-1,qr=jt.length,_i,bi=vi(se),Zr=vi(Te);function ai(){gr.push("M",He(X(yr),kt))}for(;++Hr<qr;)Ne.call(this,_i=jt[Hr],Hr)?yr.push([+bi.call(this,_i,Hr),+Zr.call(this,_i,Hr)]):yr.length&&(ai(),yr=[]);return yr.length&&ai(),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?(kt=jt,nt):kt},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":Yt,"basis-closed":Kt,bundle:xr,cardinal:qe,"cardinal-open":ee,"cardinal-closed":le,monotone:Ft});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],kt=se[0],nt=kt,jt=1;if(Te&&(Ne+="Q"+(Ye[0]-kt[0]*2/3)+","+(Ye[1]-kt[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]+kt[0])+","+(He[1]+kt[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],kt=X[1],nt=1,jt=X.length;++nt<jt;)He=Ye,Ye=kt,kt=X[nt],Te.push([Ne*(kt[0]-He[0]),Ne*(kt[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],kt=[He,He,He,(Ne=X[1])[0]],nt=[Ye,Ye,Ye,Ne[1]],jt=[He,",",Ye,"L",Ir(De,kt),",",Ir(De,nt)];for(X.push(X[Te-1]);++se<=Te;)Ne=X[se],kt.shift(),kt.push(Ne[0]),nt.shift(),nt.push(Ne[1]),Be(jt,kt,nt);return X.pop(),jt.push("L",Ne),jt.join("")}function Yt(X){if(X.length<4)return Ku(X);for(var se=[],Te=-1,Ne=X.length,He,Ye=[0],kt=[0];++Te<3;)He=X[Te],Ye.push(He[0]),kt.push(He[1]);for(se.push(Ir(De,Ye)+","+Ir(De,kt)),--Te;++Te<Ne;)He=X[Te],Ye.shift(),Ye.push(He[0]),kt.shift(),kt.push(He[1]),Be(se,Ye,kt);return se.join("")}function Kt(X){for(var se,Te=-1,Ne=X.length,He=Ne+4,Ye,kt=[],nt=[];++Te<4;)Ye=X[Te%Ne],kt.push(Ye[0]),nt.push(Ye[1]);for(se=[Ir(De,kt),",",Ir(De,nt)],--Te;++Te<He;)Ye=X[Te%Ne],kt.shift(),kt.push(Ye[0]),nt.shift(),nt.push(Ye[1]),Be(se,kt,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,kt=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*kt);return Tt(X)}function Ir(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],De=[0,1/6,2/3,1/6];function Be(X,se,Te){X.push("C",Ir(ve,se),",",Ir(ve,Te),",",Ir(be,se),",",Ir(be,Te),",",Ir(De,se),",",Ir(De,Te))}function et(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],kt=Ne[0]=et(He,Ye);++se<Te;)Ne[se]=(kt+(kt=et(He=Ye,Ye=X[se+1])))/2;return Ne[se]=kt,Ne}function it(X){for(var se=[],Te,Ne,He,Ye,kt=We(X),nt=-1,jt=X.length-1;++nt<jt;)Te=et(X[nt],X[nt+1]),p(Te)<Je?kt[nt]=kt[nt+1]=0:(Ne=kt[nt]/Te,He=kt[nt+1]/Te,Ye=Ne*Ne+He*He,Ye>9&&(Ye=Te*3/Math.sqrt(Ye),kt[nt]=Ye*Ne,kt[nt+1]=Ye*He));for(nt=-1;++nt<=jt;)Ye=(X[Math.min(jt,nt+1)][0]-X[Math.max(0,nt-1)][0])/(6*(1+kt[nt]*kt[nt])),se.push([Ye||0,kt[nt]*Ye||0]);return se}function Ft(X){return X.length<3?Ku(X):X[0]+Xe(X,it(X))}e.svg.line.radial=function(){var X=Vc(Ht);return X.radius=X.x,delete X.x,X.angle=X.y,delete X.y,X};function Ht(X){for(var se,Te=-1,Ne=X.length,He,Ye;++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 tr(X){var se=Ds,Te=Ds,Ne=0,He=Fs,Ye=oo,kt=Ku,nt=kt.key,jt=kt,gr="L",yr=.7;function Hr(qr){var _i=[],bi=[],Zr=[],ai=-1,gi=qr.length,Ii,Si=vi(se),ei=vi(Ne),Ln=se===Te?function(){return Un}:vi(Te),En=Ne===He?function(){return ia}:vi(He),Un,ia;function Ea(){_i.push("M",kt(X(Zr),yr),gr,jt(X(bi.reverse()),yr),"Z")}for(;++ai<gi;)Ye.call(this,Ii=qr[ai],ai)?(bi.push([Un=+Si.call(this,Ii,ai),ia=+ei.call(this,Ii,ai)]),Zr.push([+Ln.call(this,Ii,ai),+En.call(this,Ii,ai)])):bi.length&&(Ea(),bi=[],Zr=[]);return bi.length&&Ea(),_i.length?_i.join(""):null}return Hr.x=function(qr){return arguments.length?(se=Te=qr,Hr):Te},Hr.x0=function(qr){return arguments.length?(se=qr,Hr):se},Hr.x1=function(qr){return arguments.length?(Te=qr,Hr):Te},Hr.y=function(qr){return arguments.length?(Ne=He=qr,Hr):He},Hr.y0=function(qr){return arguments.length?(Ne=qr,Hr):Ne},Hr.y1=function(qr){return arguments.length?(He=qr,Hr):He},Hr.defined=function(qr){return arguments.length?(Ye=qr,Hr):Ye},Hr.interpolate=function(qr){return arguments.length?(typeof qr=="function"?nt=kt=qr:nt=(kt=hc.get(qr)||Ku).key,jt=kt.reverse||kt,gr=kt.closed?"M":"L",Hr):nt},Hr.tension=function(qr){return arguments.length?(yr=qr,Hr):yr},Hr}B.reverse=Q,Q.reverse=B,e.svg.area=function(){return tr(G)},e.svg.area.radial=function(){var X=tr(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=pu,He=Uc;function Ye(yr,Hr){var qr=kt(this,X,yr,Hr),_i=kt(this,se,yr,Hr);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 kt(yr,Hr,qr,_i){var bi=Hr.call(yr,qr,_i),Zr=Te.call(yr,bi,_i),ai=Ne.call(yr,bi,_i)-xe,gi=He.call(yr,bi,_i)-xe;return{r:Zr,a0:ai,a1:gi,p0:[Zr*Math.cos(ai),Zr*Math.sin(ai)],p1:[Zr*Math.cos(gi),Zr*Math.sin(gi)]}}function nt(yr,Hr){return yr.a0==Hr.a0&&yr.a1==Hr.a1}function jt(yr,Hr,qr){return"A"+yr+","+yr+" 0 "+ +(qr>tt)+",1 "+Hr}function gr(yr,Hr,qr,_i){return"Q 0,0 "+_i}return Ye.radius=function(yr){return arguments.length?(Te=vi(yr),Ye):Te},Ye.source=function(yr){return arguments.length?(X=vi(yr),Ye):X},Ye.target=function(yr){return arguments.length?(se=vi(yr),Ye):se},Ye.startAngle=function(yr){return arguments.length?(Ne=vi(yr),Ye):Ne},Ye.endAngle=function(yr){return arguments.length?(He=vi(yr),Ye):He},Ye};function Or(X){return X.radius}e.svg.diagonal=function(){var X=dr,se=Sr,Te=Wr;function Ne(He,Ye){var kt=X.call(this,He,Ye),nt=se.call(this,He,Ye),jt=(kt.y+nt.y)/2,gr=[kt,{x:kt.x,y:jt},{x:nt.x,y:jt},nt];return gr=gr.map(Te),"M"+gr[0]+"C"+gr[1]+" "+gr[2]+" "+gr[3]}return Ne.source=function(He){return arguments.length?(X=vi(He),Ne):X},Ne.target=function(He){return arguments.length?(se=vi(He),Ne):se},Ne.projection=function(He){return arguments.length?(Te=He,Ne):Te},Ne};function Wr(X){return[X.x,X.y]}e.svg.diagonal.radial=function(){var X=e.svg.diagonal(),se=Wr,Te=X.projection;return X.projection=function(Ne){return arguments.length?Te(ni(se=Ne)):se},X};function ni(X){return function(){var se=X.apply(this,arguments),Te=se[0],Ne=se[1]-xe;return[Te*Math.cos(Ne),Te*Math.sin(Ne)]}}e.svg.symbol=function(){var X=cn,se=Pi;function Te(Ne,He){return(Cn.get(X.call(this,Ne,He))||ln)(se.call(this,Ne,He))}return Te.type=function(Ne){return arguments.length?(X=vi(Ne),Te):X},Te.size=function(Ne){return arguments.length?(se=vi(Ne),Te):se},Te};function Pi(){return 64}function cn(){return"circle"}function ln(X){var se=Math.sqrt(X/tt);return"M0,"+se+"A"+se+","+se+" 0 1,1 0,"+-se+"A"+se+","+se+" 0 1,1 0,"+se+"Z"}var Cn=e.map({circle:ln,cross:function(X){var se=Math.sqrt(X/5)/2;return"M"+-3*se+","+-se+"H"+-se+"V"+-3*se+"H"+se+"V"+-se+"H"+3*se+"V"+se+"H"+se+"V"+3*se+"H"+-se+"V"+se+"H"+-3*se+"Z"},diamond:function(X){var se=Math.sqrt(X/(2*Ta)),Te=se*Ta;return"M0,"+-se+"L"+Te+",0 0,"+se+" "+-Te+",0Z"},square:function(X){var se=Math.sqrt(X)/2;return"M"+-se+","+-se+"L"+se+","+-se+" "+se+","+se+" "+-se+","+se+"Z"},"triangle-down":function(X){var se=Math.sqrt(X/Kn),Te=se*Kn/2;return"M0,"+Te+"L"+se+","+-Te+" "+-se+","+-Te+"Z"},"triangle-up":function(X){var se=Math.sqrt(X/Kn),Te=se*Kn/2;return"M0,"+-Te+"L"+se+","+Te+" "+-se+","+Te+"Z"}});e.svg.symbolTypes=Cn.keys();var Kn=Math.sqrt(3),Ta=Math.tan(30*ke);Pe.transition=function(X){for(var se=Bo||++mo,Te=To(X),Ne=[],He,Ye,kt=Ps||{time:Date.now(),ease:bl,delay:0,duration:250},nt=-1,jt=this.length;++nt<jt;){Ne.push(He=[]);for(var gr=this[nt],yr=-1,Hr=gr.length;++yr<Hr;)(Ye=gr[yr])&&hl(Ye,yr,Te,se,kt),He.push(Ye)}return Co(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 Co(X,se,Te){return ie(X,Qa),X.namespace=se,X.id=Te,X}var Qa=[],mo=0,Bo,Ps;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,kt;X=ge(X);for(var nt=-1,jt=this.length;++nt<jt;){Ne.push(He=[]);for(var gr=this[nt],yr=-1,Hr=gr.length;++yr<Hr;)(kt=gr[yr])&&(Ye=X.call(kt,kt.__data__,yr,nt))?("__data__"in kt&&(Ye.__data__=kt.__data__),hl(Ye,yr,Te,se,kt[Te][se]),He.push(Ye)):He.push(null)}return Co(Ne,Te,se)},Qa.selectAll=function(X){var se=this.id,Te=this.namespace,Ne=[],He,Ye,kt,nt,jt;X=Re(X);for(var gr=-1,yr=this.length;++gr<yr;)for(var Hr=this[gr],qr=-1,_i=Hr.length;++qr<_i;)if(kt=Hr[qr]){jt=kt[Te][se],Ye=X.call(kt,kt.__data__,qr,gr),Ne.push(He=[]);for(var bi=-1,Zr=Ye.length;++bi<Zr;)(nt=Ye[bi])&&hl(nt,bi,Te,se,jt),He.push(nt)}return Co(Ne,Te,se)},Qa.filter=function(X){var se=[],Te,Ne,He;typeof X!="function"&&(X=$e(X));for(var Ye=0,kt=this.length;Ye<kt;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 Co(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):Qt(this,se==null?function(He){He[Ne][Te].tween.remove(X)}:function(He){He[Ne][Te].tween.set(X,se)})};function Ts(X,se,Te,Ne){var He=X.id,Ye=X.namespace;return Qt(X,typeof Te=="function"?function(kt,nt,jt){kt[Ye][He].tween.set(se,Ne(Te.call(kt,kt.__data__,nt,jt)))}:(Te=Ne(Te),function(kt){kt[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 kt(jt){return jt==null?He:(jt+="",function(){var gr=this.getAttribute(Ne),yr;return gr!==jt&&(yr=Te(gr,jt),function(Hr){this.setAttribute(Ne,yr(Hr))})})}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(Hr){this.setAttributeNS(Ne.space,Ne.local,yr(Hr))})})}return Ts(this,"attr."+X,se,Ne.local?nt:kt)},Qa.attrTween=function(X,se){var Te=e.ns.qualify(X);function Ne(Ye,kt){var nt=se.call(this,Ye,kt,this.getAttribute(Te));return nt&&function(jt){this.setAttribute(Te,nt(jt))}}function He(Ye,kt){var nt=se.call(this,Ye,kt,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(kt){return kt==null?He:(kt+="",function(){var nt=a(this).getComputedStyle(this,null).getPropertyValue(X),jt;return nt!==kt&&(jt=xl(nt,kt),function(gr){this.style.setProperty(X,jt(gr),Te)})})}return Ts(this,"style."+X,se,Ye)},Qa.styleTween=function(X,se,Te){arguments.length<3&&(Te="");function Ne(He,Ye){var kt=se.call(this,He,Ye,a(this).getComputedStyle(this,null).getPropertyValue(X));return kt&&function(nt){this.style.setProperty(X,kt(nt),Te)}}return this.tween("style."+X,Ne)},Qa.text=function(X){return Ts(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)),Qt(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:Qt(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:Qt(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=Ps,Ye=Bo;try{Bo=Te,Qt(this,function(kt,nt,jt){Ps=kt[Ne][Te],X.call(kt,kt.__data__,nt,jt)})}finally{Ps=He,Bo=Ye}}else Qt(this,function(kt){var nt=kt[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,kt,nt,jt=0,gr=this.length;jt<gr;jt++){Ne.push(He=[]);for(var Ye=this[jt],yr=0,Hr=Ye.length;yr<Hr;yr++)(kt=Ye[yr])&&(nt=kt[Te][X],hl(kt,yr,Te,se,{time:nt.time,ease:nt.ease,delay:nt.delay+nt.duration,duration:nt.duration})),He.push(kt)}return Co(Ne,Te,se)};function To(X){return X==null?"__transition__":"__transition_"+X+"__"}function hl(X,se,Te,Ne,He){var Ye=X[Te]||(X[Te]={active:0,count:0}),kt=Ye[Ne],nt,jt,gr,yr,Hr;function qr(Zr){var ai=kt.delay;if(jt.t=ai+nt,ai<=Zr)return _i(Zr-ai);jt.c=_i}function _i(Zr){var ai=Ye.active,gi=Ye[ai];gi&&(gi.timer.c=null,gi.timer.t=NaN,--Ye.count,delete Ye[ai],gi.event&&gi.event.interrupt.call(X,X.__data__,gi.index));for(var Ii in Ye)if(+Ii<Ne){var Si=Ye[Ii];Si.timer.c=null,Si.timer.t=NaN,--Ye.count,delete Ye[Ii]}jt.c=bi,No(function(){return jt.c&&bi(Zr||1)&&(jt.c=null,jt.t=NaN),1},0,nt),Ye.active=Ne,kt.event&&kt.event.start.call(X,X.__data__,se),Hr=[],kt.tween.forEach(function(ei,Ln){(Ln=Ln.call(X,X.__data__,se))&&Hr.push(Ln)}),yr=kt.ease,gr=kt.duration}function bi(Zr){for(var ai=Zr/gr,gi=yr(ai),Ii=Hr.length;Ii>0;)Hr[--Ii].call(X,gi);if(ai>=1)return kt.event&&kt.event.end.call(X,X.__data__,se),--Ye.count?delete Ye[Ne]:delete X[Te],1}kt||(nt=He.time,jt=No(qr,0,nt),kt=Ye[Ne]={tween:new S,time:nt,timer:jt,delay:He.delay,duration:He.duration,ease:He.ease,index:se},He=null,++Ye.count)}e.svg.axis=function(){var X=e.scale.linear(),se=Ul,Te=6,Ne=6,He=3,Ye=[10],kt=null,nt;function jt(gr){gr.each(function(){var yr=e.select(this),Hr=this.__chart__||X,qr=this.__chart__=X.copy(),_i=kt==null?qr.ticks?qr.ticks.apply(qr,Ye):qr.domain():kt,bi=nt==null?qr.tickFormat?qr.tickFormat.apply(qr,Ye):G:nt,Zr=yr.selectAll(".tick").data(_i,qr),ai=Zr.enter().insert("g",".domain").attr("class","tick").style("opacity",Je),gi=e.transition(Zr.exit()).style("opacity",Je).remove(),Ii=e.transition(Zr.order()).style("opacity",1),Si=Math.max(Te,0)+He,ei,Ln=wn(qr),En=yr.selectAll(".domain").data([0]),Un=(En.enter().append("path").attr("class","domain"),e.transition(En));ai.append("line"),ai.append("text");var ia=ai.select("line"),Ea=Ii.select("line"),Ia=Zr.select("text").text(bi),yo=ai.select("text"),Da=Ii.select("text"),go=se==="top"||se==="left"?-1:1,Is,Ms,Xs,Gn;if(se==="bottom"||se==="top"?(ei=au,Is="x",Xs="y",Ms="x2",Gn="y2",Ia.attr("dy",go<0?"0em":".71em").style("text-anchor","middle"),Un.attr("d","M"+Ln[0]+","+go*Ne+"V0H"+Ln[1]+"V"+go*Ne)):(ei=Js,Is="y",Xs="x",Ms="y2",Gn="x2",Ia.attr("dy",".32em").style("text-anchor",go<0?"end":"start"),Un.attr("d","M"+go*Ne+","+Ln[0]+"H0V"+Ln[1]+"H"+go*Ne)),ia.attr(Gn,go*Te),yo.attr(Xs,go*Si),Ea.attr(Ms,0).attr(Gn,go*Te),Da.attr(Is,0).attr(Xs,go*Si),qr.rangeBand){var ja=qr,Fo=ja.rangeBand()/2;Hr=qr=function(Uo){return ja(Uo)+Fo}}else Hr.rangeBand?Hr=qr:gi.call(ei,qr,Hr);ai.call(ei,Hr,qr),Ii.call(ei,qr,qr)})}return jt.scale=function(gr){return arguments.length?(X=gr,jt):X},jt.orient=function(gr){return arguments.length?(se=gr in Lu?gr+"":Ul,jt):se},jt.ticks=function(){return arguments.length?(Ye=r(arguments),jt):Ye},jt.tickValues=function(gr){return arguments.length?(kt=gr,jt):kt},jt.tickFormat=function(gr){return arguments.length?(nt=gr,jt):nt},jt.tickSize=function(gr){var yr=arguments.length;return yr?(Te=+gr,Ne=+arguments[yr-1],jt):Te},jt.innerTickSize=function(gr){return arguments.length?(Te=+gr,jt):Te},jt.outerTickSize=function(gr){return arguments.length?(Ne=+gr,jt):Ne},jt.tickPadding=function(gr){return arguments.length?(He=+gr,jt):He},jt.tickSubdivide=function(){return arguments.length&&jt},jt};var Ul="bottom",Lu={top:1,right:1,bottom:1,left:1};function au(X,se,Te){X.attr("transform",function(Ne){var He=se(Ne);return"translate("+(isFinite(He)?He:Te(Ne))+",0)"})}function Js(X,se,Te){X.attr("transform",function(Ne){var He=se(Ne);return"translate(0,"+(isFinite(He)?He:Te(Ne))+")"})}e.svg.brush=function(){var X=Ce(yr,"brushstart","brush","brushend"),se=null,Te=null,Ne=[0,0],He=[0,0],Ye,kt,nt=!0,jt=!0,gr=dc[0];function yr(Zr){Zr.each(function(){var ai=e.select(this).style("pointer-events","all").style("-webkit-tap-highlight-color","rgba(0,0,0,0)").on("mousedown.brush",bi).on("touchstart.brush",bi),gi=ai.selectAll(".background").data([0]);gi.enter().append("rect").attr("class","background").style("visibility","hidden").style("cursor","crosshair"),ai.selectAll(".extent").data([0]).enter().append("rect").attr("class","extent").style("cursor","move");var Ii=ai.selectAll(".resize").data(gr,G);Ii.exit().remove(),Ii.enter().append("g").attr("class",function(En){return"resize "+En}).style("cursor",function(En){return Ql[En]}).append("rect").attr("x",function(En){return/[ew]$/.test(En)?-3:null}).attr("y",function(En){return/^[ns]/.test(En)?-3:null}).attr("width",6).attr("height",6).style("visibility","hidden"),Ii.style("display",yr.empty()?"none":null);var Si=e.transition(ai),ei=e.transition(gi),Ln;se&&(Ln=wn(se),ei.attr("x",Ln[0]).attr("width",Ln[1]-Ln[0]),qr(Si)),Te&&(Ln=wn(Te),ei.attr("y",Ln[0]).attr("height",Ln[1]-Ln[0]),_i(Si)),Hr(Si)})}yr.event=function(Zr){Zr.each(function(){var ai=X.of(this,arguments),gi={x:Ne,y:He,i:Ye,j:kt},Ii=this.__chart__||gi;this.__chart__=gi,Bo?e.select(this).transition().each("start.brush",function(){Ye=Ii.i,kt=Ii.j,Ne=Ii.x,He=Ii.y,ai({type:"brushstart"})}).tween("brush:brush",function(){var Si=Gu(Ne,gi.x),ei=Gu(He,gi.y);return Ye=kt=null,function(Ln){Ne=gi.x=Si(Ln),He=gi.y=ei(Ln),ai({type:"brush",mode:"resize"})}}).each("end.brush",function(){Ye=gi.i,kt=gi.j,ai({type:"brush",mode:"resize"}),ai({type:"brushend"})}):(ai({type:"brushstart"}),ai({type:"brush",mode:"resize"}),ai({type:"brushend"}))})};function Hr(Zr){Zr.selectAll(".resize").attr("transform",function(ai){return"translate("+Ne[+/e$/.test(ai)]+","+He[+/^s/.test(ai)]+")"})}function qr(Zr){Zr.select(".extent").attr("x",Ne[0]),Zr.selectAll(".extent,.n>rect,.s>rect").attr("width",Ne[1]-Ne[0])}function _i(Zr){Zr.select(".extent").attr("y",He[0]),Zr.selectAll(".extent,.e>rect,.w>rect").attr("height",He[1]-He[0])}function bi(){var Zr=this,ai=e.select(e.event.target),gi=X.of(Zr,arguments),Ii=e.select(Zr),Si=ai.datum(),ei=!/^(n|s)$/.test(Si)&&se,Ln=!/^(e|w)$/.test(Si)&&Te,En=ai.classed("extent"),Un=Br(Zr),ia,Ea=e.mouse(Zr),Ia,yo=e.select(a(Zr)).on("keydown.brush",Is).on("keyup.brush",Ms);if(e.event.changedTouches?yo.on("touchmove.brush",Xs).on("touchend.brush",ja):yo.on("mousemove.brush",Xs).on("mouseup.brush",ja),Ii.interrupt().selectAll("*").interrupt(),En)Ea[0]=Ne[0]-Ea[0],Ea[1]=He[0]-Ea[1];else if(Si){var Da=+/w$/.test(Si),go=+/^n/.test(Si);Ia=[Ne[1-Da]-Ea[0],He[1-go]-Ea[1]],Ea[0]=Ne[Da],Ea[1]=He[go]}else e.event.altKey&&(ia=Ea.slice());Ii.style("pointer-events","none").selectAll(".resize").style("display",null),e.select("body").style("cursor",ai.style("cursor")),gi({type:"brushstart"}),Xs();function Is(){e.event.keyCode==32&&(En||(ia=null,Ea[0]-=Ne[1],Ea[1]-=He[1],En=2),_e())}function Ms(){e.event.keyCode==32&&En==2&&(Ea[0]+=Ne[1],Ea[1]+=He[1],En=0,_e())}function Xs(){var Fo=e.mouse(Zr),Uo=!1;Ia&&(Fo[0]+=Ia[0],Fo[1]+=Ia[1]),En||(e.event.altKey?(ia||(ia=[(Ne[0]+Ne[1])/2,(He[0]+He[1])/2]),Ea[0]=Ne[+(Fo[0]<ia[0])],Ea[1]=He[+(Fo[1]<ia[1])]):ia=null),ei&&Gn(Fo,se,0)&&(qr(Ii),Uo=!0),Ln&&Gn(Fo,Te,1)&&(_i(Ii),Uo=!0),Uo&&(Hr(Ii),gi({type:"brush",mode:En?"move":"resize"}))}function Gn(Fo,Uo,$s){var Sl=wn(Uo),bu=Sl[0],dl=Sl[1],Sc=Ea[$s],Me=$s?He:Ne,bt=Me[1]-Me[0],zt,Rr;if(En&&(bu-=Sc,dl-=bt+Sc),zt=($s?jt:nt)?Math.max(bu,Math.min(dl,Fo[$s])):Fo[$s],En?Rr=(zt+=Sc)+bt:(ia&&(Sc=Math.max(bu,Math.min(dl,2*ia[$s]-zt))),Sc<zt?(Rr=zt,zt=Sc):Rr=Sc),Me[0]!=zt||Me[1]!=Rr)return $s?kt=null:Ye=null,Me[0]=zt,Me[1]=Rr,!0}function ja(){Xs(),Ii.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),Un(),gi({type:"brushend"})}}return yr.x=function(Zr){return arguments.length?(se=Zr,gr=dc[!se<<1|!Te],yr):se},yr.y=function(Zr){return arguments.length?(Te=Zr,gr=dc[!se<<1|!Te],yr):Te},yr.clamp=function(Zr){return arguments.length?(se&&Te?(nt=!!Zr[0],jt=!!Zr[1]):se?nt=!!Zr:Te&&(jt=!!Zr),yr):se&&Te?[nt,jt]:se?nt:Te?jt:null},yr.extent=function(Zr){var ai,gi,Ii,Si,ei;return arguments.length?(se&&(ai=Zr[0],gi=Zr[1],Te&&(ai=ai[0],gi=gi[0]),Ye=[ai,gi],se.invert&&(ai=se(ai),gi=se(gi)),gi<ai&&(ei=ai,ai=gi,gi=ei),(ai!=Ne[0]||gi!=Ne[1])&&(Ne=[ai,gi])),Te&&(Ii=Zr[0],Si=Zr[1],se&&(Ii=Ii[1],Si=Si[1]),kt=[Ii,Si],Te.invert&&(Ii=Te(Ii),Si=Te(Si)),Si<Ii&&(ei=Ii,Ii=Si,Si=ei),(Ii!=He[0]||Si!=He[1])&&(He=[Ii,Si])),yr):(se&&(Ye?(ai=Ye[0],gi=Ye[1]):(ai=Ne[0],gi=Ne[1],se.invert&&(ai=se.invert(ai),gi=se.invert(gi)),gi<ai&&(ei=ai,ai=gi,gi=ei))),Te&&(kt?(Ii=kt[0],Si=kt[1]):(Ii=He[0],Si=He[1],Te.invert&&(Ii=Te.invert(Ii),Si=Te.invert(Si)),Si<Ii&&(ei=Ii,Ii=Si,Si=ei))),se&&Te?[[ai,Ii],[gi,Si]]:se?[ai,gi]:Te&&[Ii,Si])},yr.clear=function(){return yr.empty()||(Ne=[0,0],He=[0,0],Ye=kt=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=hn(function(X){return X.responseText}),e.json=function(X,se){return An(X,"application/json",Tl,se)};function Tl(X){return JSON.parse(X.responseText)}e.html=function(X,se){return An(X,"text/html",Al,se)};function Al(X){var se=n.createRange();return se.selectNode(n.body),se.createContextualFragment(X.responseText)}e.xml=hn(function(X){return X.responseXML}),typeof c6=="object"&&c6.exports?c6.exports=e:this.d3=e}).apply(self)});var bO=ye((f6,pee)=>{(function(e,t){typeof f6=="object"&&typeof pee!="undefined"?t(f6):(e=e||self,t(e.d3=e.d3||{}))})(f6,function(e){"use strict";var t=new Date,r=new Date;function n($e,St,Qt,Vt){function _t(It){return $e(It=arguments.length===0?new Date:new Date(+It)),It}return _t.floor=function(It){return $e(It=new Date(+It)),It},_t.ceil=function(It){return $e(It=new Date(It-1)),St(It,1),$e(It),It},_t.round=function(It){var mt=_t(It),er=_t.ceil(It);return It-mt<er-It?mt:er},_t.offset=function(It,mt){return St(It=new Date(+It),mt==null?1:Math.floor(mt)),It},_t.range=function(It,mt,er){var lr=[],Tr;if(It=_t.ceil(It),er=er==null?1:Math.floor(er),!(It<mt)||!(er>0))return lr;do lr.push(Tr=new Date(+It)),St(It,er),$e(It);while(Tr<It&&It<mt);return lr},_t.filter=function(It){return n(function(mt){if(mt>=mt)for(;$e(mt),!It(mt);)mt.setTime(mt-1)},function(mt,er){if(mt>=mt)if(er<0)for(;++er<=0;)for(;St(mt,-1),!It(mt););else for(;--er>=0;)for(;St(mt,1),!It(mt););})},Qt&&(_t.count=function(It,mt){return t.setTime(+It),r.setTime(+mt),$e(t),$e(r),Math.floor(Qt(t,r))},_t.every=function(It){return It=Math.floor(It),!isFinite(It)||!(It>0)?null:It>1?_t.filter(Vt?function(mt){return Vt(mt)%It===0}:function(mt){return _t.count(0,mt)%It===0}):_t}),_t}var i=n(function(){},function($e,St){$e.setTime(+$e+St)},function($e,St){return St-$e});i.every=function($e){return $e=Math.floor($e),!isFinite($e)||!($e>0)?null:$e>1?n(function(St){St.setTime(Math.floor(St/$e)*$e)},function(St,Qt){St.setTime(+St+Qt*$e)},function(St,Qt){return(Qt-St)/$e}):i};var a=i.range,o=1e3,s=6e4,l=36e5,u=864e5,c=6048e5,f=n(function($e){$e.setTime($e-$e.getMilliseconds())},function($e,St){$e.setTime(+$e+St*o)},function($e,St){return(St-$e)/o},function($e){return $e.getUTCSeconds()}),h=f.range,d=n(function($e){$e.setTime($e-$e.getMilliseconds()-$e.getSeconds()*o)},function($e,St){$e.setTime(+$e+St*s)},function($e,St){return(St-$e)/s},function($e){return $e.getMinutes()}),v=d.range,_=n(function($e){$e.setTime($e-$e.getMilliseconds()-$e.getSeconds()*o-$e.getMinutes()*s)},function($e,St){$e.setTime(+$e+St*l)},function($e,St){return(St-$e)/l},function($e){return $e.getHours()}),b=_.range,p=n(function($e){$e.setHours(0,0,0,0)},function($e,St){$e.setDate($e.getDate()+St)},function($e,St){return(St-$e-(St.getTimezoneOffset()-$e.getTimezoneOffset())*s)/u},function($e){return $e.getDate()-1}),k=p.range;function E($e){return n(function(St){St.setDate(St.getDate()-(St.getDay()+7-$e)%7),St.setHours(0,0,0,0)},function(St,Qt){St.setDate(St.getDate()+Qt*7)},function(St,Qt){return(Qt-St-(Qt.getTimezoneOffset()-St.getTimezoneOffset())*s)/c})}var S=E(0),L=E(1),x=E(2),C=E(3),M=E(4),g=E(5),P=E(6),T=S.range,z=L.range,O=x.range,V=C.range,G=M.range,Z=g.range,j=P.range,N=n(function($e){$e.setDate(1),$e.setHours(0,0,0,0)},function($e,St){$e.setMonth($e.getMonth()+St)},function($e,St){return St.getMonth()-$e.getMonth()+(St.getFullYear()-$e.getFullYear())*12},function($e){return $e.getMonth()}),H=N.range,te=n(function($e){$e.setMonth(0,1),$e.setHours(0,0,0,0)},function($e,St){$e.setFullYear($e.getFullYear()+St)},function($e,St){return St.getFullYear()-$e.getFullYear()},function($e){return $e.getFullYear()});te.every=function($e){return!isFinite($e=Math.floor($e))||!($e>0)?null:n(function(St){St.setFullYear(Math.floor(St.getFullYear()/$e)*$e),St.setMonth(0,1),St.setHours(0,0,0,0)},function(St,Qt){St.setFullYear(St.getFullYear()+Qt*$e)})};var oe=te.range,_e=n(function($e){$e.setUTCSeconds(0,0)},function($e,St){$e.setTime(+$e+St*s)},function($e,St){return(St-$e)/s},function($e){return $e.getUTCMinutes()}),Ee=_e.range,Ce=n(function($e){$e.setUTCMinutes(0,0,0)},function($e,St){$e.setTime(+$e+St*l)},function($e,St){return(St-$e)/l},function($e){return $e.getUTCHours()}),me=Ce.range,ie=n(function($e){$e.setUTCHours(0,0,0,0)},function($e,St){$e.setUTCDate($e.getUTCDate()+St)},function($e,St){return(St-$e)/u},function($e){return $e.getUTCDate()-1}),Se=ie.range;function Le($e){return n(function(St){St.setUTCDate(St.getUTCDate()-(St.getUTCDay()+7-$e)%7),St.setUTCHours(0,0,0,0)},function(St,Qt){St.setUTCDate(St.getUTCDate()+Qt*7)},function(St,Qt){return(Qt-St)/c})}var Ae=Le(0),Fe=Le(1),Pe=Le(2),ge=Le(3),Re=Le(4),ce=Le(5),Ze=Le(6),ut=Ae.range,pt=Fe.range,Zt=Pe.range,st=ge.range,lt=Re.range,Gt=ce.range,Nt=Ze.range,Jt=n(function($e){$e.setUTCDate(1),$e.setUTCHours(0,0,0,0)},function($e,St){$e.setUTCMonth($e.getUTCMonth()+St)},function($e,St){return St.getUTCMonth()-$e.getUTCMonth()+(St.getUTCFullYear()-$e.getUTCFullYear())*12},function($e){return $e.getUTCMonth()}),sr=Jt.range,wr=n(function($e){$e.setUTCMonth(0,1),$e.setUTCHours(0,0,0,0)},function($e,St){$e.setUTCFullYear($e.getUTCFullYear()+St)},function($e,St){return St.getUTCFullYear()-$e.getUTCFullYear()},function($e){return $e.getUTCFullYear()});wr.every=function($e){return!isFinite($e=Math.floor($e))||!($e>0)?null:n(function(St){St.setUTCFullYear(Math.floor(St.getUTCFullYear()/$e)*$e),St.setUTCMonth(0,1),St.setUTCHours(0,0,0,0)},function(St,Qt){St.setUTCFullYear(St.getUTCFullYear()+Qt*$e)})};var cr=wr.range;e.timeDay=p,e.timeDays=k,e.timeFriday=g,e.timeFridays=Z,e.timeHour=_,e.timeHours=b,e.timeInterval=n,e.timeMillisecond=i,e.timeMilliseconds=a,e.timeMinute=d,e.timeMinutes=v,e.timeMonday=L,e.timeMondays=z,e.timeMonth=N,e.timeMonths=H,e.timeSaturday=P,e.timeSaturdays=j,e.timeSecond=f,e.timeSeconds=h,e.timeSunday=S,e.timeSundays=T,e.timeThursday=M,e.timeThursdays=G,e.timeTuesday=x,e.timeTuesdays=O,e.timeWednesday=C,e.timeWednesdays=V,e.timeWeek=S,e.timeWeeks=T,e.timeYear=te,e.timeYears=oe,e.utcDay=ie,e.utcDays=Se,e.utcFriday=ce,e.utcFridays=Gt,e.utcHour=Ce,e.utcHours=me,e.utcMillisecond=i,e.utcMilliseconds=a,e.utcMinute=_e,e.utcMinutes=Ee,e.utcMonday=Fe,e.utcMondays=pt,e.utcMonth=Jt,e.utcMonths=sr,e.utcSaturday=Ze,e.utcSaturdays=Nt,e.utcSecond=f,e.utcSeconds=h,e.utcSunday=Ae,e.utcSundays=ut,e.utcThursday=Re,e.utcThursdays=lt,e.utcTuesday=Pe,e.utcTuesdays=Zt,e.utcWednesday=ge,e.utcWednesdays=st,e.utcWeek=Ae,e.utcWeeks=ut,e.utcYear=wr,e.utcYears=cr,Object.defineProperty(e,"__esModule",{value:!0})})});var r3=ye((h6,gee)=>{(function(e,t){typeof h6=="object"&&typeof gee!="undefined"?t(h6,bO()):(e=e||self,t(e.d3=e.d3||{},e.d3))})(h6,function(e,t){"use strict";function r(Ge){if(0<=Ge.y&&Ge.y<100){var Je=new Date(-1,Ge.m,Ge.d,Ge.H,Ge.M,Ge.S,Ge.L);return Je.setFullYear(Ge.y),Je}return new Date(Ge.y,Ge.m,Ge.d,Ge.H,Ge.M,Ge.S,Ge.L)}function n(Ge){if(0<=Ge.y&&Ge.y<100){var Je=new Date(Date.UTC(-1,Ge.m,Ge.d,Ge.H,Ge.M,Ge.S,Ge.L));return Je.setUTCFullYear(Ge.y),Je}return new Date(Date.UTC(Ge.y,Ge.m,Ge.d,Ge.H,Ge.M,Ge.S,Ge.L))}function i(Ge,Je,je){return{y:Ge,m:Je,d:je,H:0,M:0,S:0,L:0}}function a(Ge){var Je=Ge.dateTime,je=Ge.date,tt=Ge.time,xt=Ge.periods,Ie=Ge.days,xe=Ge.shortDays,ke=Ge.months,vt=Ge.shortMonths,ir=h(xt),ar=d(xt),vr=h(Ie),ii=d(Ie),pi=h(xe),$r=d(xe),di=h(ke),ji=d(ke),In=h(vt),wi=d(vt),On={a:$i,A:tn,b:fn,B:yn,c:null,d:N,e:N,f:Ee,H,I:te,j:oe,L:_e,m:Ce,M:me,p:Sn,q:Ba,Q:mt,s:er,S:ie,u:Se,U:Le,V:Ae,w:Fe,W:Pe,x:null,X:null,y:ge,Y:Re,Z:ce,"%":It},qn={a:ua,A:ma,b:Wa,B:Fa,c:null,d:Ze,e:Ze,f:lt,H:ut,I:pt,j:Zt,L:st,m:Gt,M:Nt,p:Wo,q:da,Q:mt,s:er,S:Jt,u:sr,U:wr,V:cr,w:$e,W:St,x:null,X:null,y:Qt,Y:Vt,Z:_t,"%":It},Fn={a:rr,A:nr,b:Er,B:Xr,c:ri,d:M,e:M,f:V,H:P,I:P,j:g,L:O,m:C,M:T,p:wt,q:x,Q:Z,s:j,S:z,u:_,U:b,V:p,w:v,W:k,x:Qr,X:Oi,y:S,Y:E,Z:L,"%":G};On.x=ra(je,On),On.X=ra(tt,On),On.c=ra(Je,On),qn.x=ra(je,qn),qn.X=ra(tt,qn),qn.c=ra(Je,qn);function ra(Wn,Ha){return function(vo){var jn=[],Mt=-1,kr=0,Jr=Wn.length,vi,hn,An;for(vo instanceof Date||(vo=new Date(+vo));++Mt<Jr;)Wn.charCodeAt(Mt)===37&&(jn.push(Wn.slice(kr,Mt)),(hn=o[vi=Wn.charAt(++Mt)])!=null?vi=Wn.charAt(++Mt):hn=vi==="e"?" ":"0",(An=Ha[vi])&&(vi=An(vo,hn)),jn.push(vi),kr=Mt+1);return jn.push(Wn.slice(kr,Mt)),jn.join("")}}function la(Wn,Ha){return function(vo){var jn=i(1900,void 0,1),Mt=Ut(jn,Wn,vo+="",0),kr,Jr;if(Mt!=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(Ha&&!("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?(kr=n(i(jn.y,0,1)),Jr=kr.getUTCDay(),kr=Jr>4||Jr===0?t.utcMonday.ceil(kr):t.utcMonday(kr),kr=t.utcDay.offset(kr,(jn.V-1)*7),jn.y=kr.getUTCFullYear(),jn.m=kr.getUTCMonth(),jn.d=kr.getUTCDate()+(jn.w+6)%7):(kr=r(i(jn.y,0,1)),Jr=kr.getDay(),kr=Jr>4||Jr===0?t.timeMonday.ceil(kr):t.timeMonday(kr),kr=t.timeDay.offset(kr,(jn.V-1)*7),jn.y=kr.getFullYear(),jn.m=kr.getMonth(),jn.d=kr.getDate()+(jn.w+6)%7)}else("W"in jn||"U"in jn)&&("w"in jn||(jn.w="u"in jn?jn.u%7:"W"in jn?1:0),Jr="Z"in jn?n(i(jn.y,0,1)).getUTCDay():r(i(jn.y,0,1)).getDay(),jn.m=0,jn.d="W"in jn?(jn.w+6)%7+jn.W*7-(Jr+5)%7:jn.w+jn.U*7-(Jr+6)%7);return"Z"in jn?(jn.H+=jn.Z/100|0,jn.M+=jn.Z%100,n(jn)):r(jn)}}function Ut(Wn,Ha,vo,jn){for(var Mt=0,kr=Ha.length,Jr=vo.length,vi,hn;Mt<kr;){if(jn>=Jr)return-1;if(vi=Ha.charCodeAt(Mt++),vi===37){if(vi=Ha.charAt(Mt++),hn=Fn[vi in o?Ha.charAt(Mt++):vi],!hn||(jn=hn(Wn,vo,jn))<0)return-1}else if(vi!=vo.charCodeAt(jn++))return-1}return jn}function wt(Wn,Ha,vo){var jn=ir.exec(Ha.slice(vo));return jn?(Wn.p=ar[jn[0].toLowerCase()],vo+jn[0].length):-1}function rr(Wn,Ha,vo){var jn=pi.exec(Ha.slice(vo));return jn?(Wn.w=$r[jn[0].toLowerCase()],vo+jn[0].length):-1}function nr(Wn,Ha,vo){var jn=vr.exec(Ha.slice(vo));return jn?(Wn.w=ii[jn[0].toLowerCase()],vo+jn[0].length):-1}function Er(Wn,Ha,vo){var jn=In.exec(Ha.slice(vo));return jn?(Wn.m=wi[jn[0].toLowerCase()],vo+jn[0].length):-1}function Xr(Wn,Ha,vo){var jn=di.exec(Ha.slice(vo));return jn?(Wn.m=ji[jn[0].toLowerCase()],vo+jn[0].length):-1}function ri(Wn,Ha,vo){return Ut(Wn,Je,Ha,vo)}function Qr(Wn,Ha,vo){return Ut(Wn,je,Ha,vo)}function Oi(Wn,Ha,vo){return Ut(Wn,tt,Ha,vo)}function $i(Wn){return xe[Wn.getDay()]}function tn(Wn){return Ie[Wn.getDay()]}function fn(Wn){return vt[Wn.getMonth()]}function yn(Wn){return ke[Wn.getMonth()]}function Sn(Wn){return xt[+(Wn.getHours()>=12)]}function Ba(Wn){return 1+~~(Wn.getMonth()/3)}function ua(Wn){return xe[Wn.getUTCDay()]}function ma(Wn){return Ie[Wn.getUTCDay()]}function Wa(Wn){return vt[Wn.getUTCMonth()]}function Fa(Wn){return ke[Wn.getUTCMonth()]}function Wo(Wn){return xt[+(Wn.getUTCHours()>=12)]}function da(Wn){return 1+~~(Wn.getUTCMonth()/3)}return{format:function(Wn){var Ha=ra(Wn+="",On);return Ha.toString=function(){return Wn},Ha},parse:function(Wn){var Ha=la(Wn+="",!1);return Ha.toString=function(){return Wn},Ha},utcFormat:function(Wn){var Ha=ra(Wn+="",qn);return Ha.toString=function(){return Wn},Ha},utcParse:function(Wn){var Ha=la(Wn+="",!0);return Ha.toString=function(){return Wn},Ha}}}var o={"-":"",_:" ",0:"0"},s=/^\s*\d+/,l=/^%/,u=/[\\^$*+?|[\]().{}]/g;function c(Ge,Je,je){var tt=Ge<0?"-":"",xt=(tt?-Ge:Ge)+"",Ie=xt.length;return tt+(Ie<je?new Array(je-Ie+1).join(Je)+xt:xt)}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,tt=Ge.length;++je<tt;)Je[Ge[je].toLowerCase()]=je;return Je}function v(Ge,Je,je){var tt=s.exec(Je.slice(je,je+1));return tt?(Ge.w=+tt[0],je+tt[0].length):-1}function _(Ge,Je,je){var tt=s.exec(Je.slice(je,je+1));return tt?(Ge.u=+tt[0],je+tt[0].length):-1}function b(Ge,Je,je){var tt=s.exec(Je.slice(je,je+2));return tt?(Ge.U=+tt[0],je+tt[0].length):-1}function p(Ge,Je,je){var tt=s.exec(Je.slice(je,je+2));return tt?(Ge.V=+tt[0],je+tt[0].length):-1}function k(Ge,Je,je){var tt=s.exec(Je.slice(je,je+2));return tt?(Ge.W=+tt[0],je+tt[0].length):-1}function E(Ge,Je,je){var tt=s.exec(Je.slice(je,je+4));return tt?(Ge.y=+tt[0],je+tt[0].length):-1}function S(Ge,Je,je){var tt=s.exec(Je.slice(je,je+2));return tt?(Ge.y=+tt[0]+(+tt[0]>68?1900:2e3),je+tt[0].length):-1}function L(Ge,Je,je){var tt=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(Je.slice(je,je+6));return tt?(Ge.Z=tt[1]?0:-(tt[2]+(tt[3]||"00")),je+tt[0].length):-1}function x(Ge,Je,je){var tt=s.exec(Je.slice(je,je+1));return tt?(Ge.q=tt[0]*3-3,je+tt[0].length):-1}function C(Ge,Je,je){var tt=s.exec(Je.slice(je,je+2));return tt?(Ge.m=tt[0]-1,je+tt[0].length):-1}function M(Ge,Je,je){var tt=s.exec(Je.slice(je,je+2));return tt?(Ge.d=+tt[0],je+tt[0].length):-1}function g(Ge,Je,je){var tt=s.exec(Je.slice(je,je+3));return tt?(Ge.m=0,Ge.d=+tt[0],je+tt[0].length):-1}function P(Ge,Je,je){var tt=s.exec(Je.slice(je,je+2));return tt?(Ge.H=+tt[0],je+tt[0].length):-1}function T(Ge,Je,je){var tt=s.exec(Je.slice(je,je+2));return tt?(Ge.M=+tt[0],je+tt[0].length):-1}function z(Ge,Je,je){var tt=s.exec(Je.slice(je,je+2));return tt?(Ge.S=+tt[0],je+tt[0].length):-1}function O(Ge,Je,je){var tt=s.exec(Je.slice(je,je+3));return tt?(Ge.L=+tt[0],je+tt[0].length):-1}function V(Ge,Je,je){var tt=s.exec(Je.slice(je,je+6));return tt?(Ge.L=Math.floor(tt[0]/1e3),je+tt[0].length):-1}function G(Ge,Je,je){var tt=l.exec(Je.slice(je,je+1));return tt?je+tt[0].length:-1}function Z(Ge,Je,je){var tt=s.exec(Je.slice(je));return tt?(Ge.Q=+tt[0],je+tt[0].length):-1}function j(Ge,Je,je){var tt=s.exec(Je.slice(je));return tt?(Ge.s=+tt[0],je+tt[0].length):-1}function N(Ge,Je){return c(Ge.getDate(),Je,2)}function H(Ge,Je){return c(Ge.getHours(),Je,2)}function te(Ge,Je){return c(Ge.getHours()%12||12,Je,2)}function oe(Ge,Je){return c(1+t.timeDay.count(t.timeYear(Ge),Ge),Je,3)}function _e(Ge,Je){return c(Ge.getMilliseconds(),Je,3)}function Ee(Ge,Je){return _e(Ge,Je)+"000"}function Ce(Ge,Je){return c(Ge.getMonth()+1,Je,2)}function me(Ge,Je){return c(Ge.getMinutes(),Je,2)}function ie(Ge,Je){return c(Ge.getSeconds(),Je,2)}function Se(Ge){var Je=Ge.getDay();return Je===0?7:Je}function Le(Ge,Je){return c(t.timeSunday.count(t.timeYear(Ge)-1,Ge),Je,2)}function Ae(Ge,Je){var je=Ge.getDay();return Ge=je>=4||je===0?t.timeThursday(Ge):t.timeThursday.ceil(Ge),c(t.timeThursday.count(t.timeYear(Ge),Ge)+(t.timeYear(Ge).getDay()===4),Je,2)}function Fe(Ge){return Ge.getDay()}function Pe(Ge,Je){return c(t.timeMonday.count(t.timeYear(Ge)-1,Ge),Je,2)}function ge(Ge,Je){return c(Ge.getFullYear()%100,Je,2)}function Re(Ge,Je){return c(Ge.getFullYear()%1e4,Je,4)}function ce(Ge){var Je=Ge.getTimezoneOffset();return(Je>0?"-":(Je*=-1,"+"))+c(Je/60|0,"0",2)+c(Je%60,"0",2)}function Ze(Ge,Je){return c(Ge.getUTCDate(),Je,2)}function ut(Ge,Je){return c(Ge.getUTCHours(),Je,2)}function pt(Ge,Je){return c(Ge.getUTCHours()%12||12,Je,2)}function Zt(Ge,Je){return c(1+t.utcDay.count(t.utcYear(Ge),Ge),Je,3)}function st(Ge,Je){return c(Ge.getUTCMilliseconds(),Je,3)}function lt(Ge,Je){return st(Ge,Je)+"000"}function Gt(Ge,Je){return c(Ge.getUTCMonth()+1,Je,2)}function Nt(Ge,Je){return c(Ge.getUTCMinutes(),Je,2)}function Jt(Ge,Je){return c(Ge.getUTCSeconds(),Je,2)}function sr(Ge){var Je=Ge.getUTCDay();return Je===0?7:Je}function wr(Ge,Je){return c(t.utcSunday.count(t.utcYear(Ge)-1,Ge),Je,2)}function cr(Ge,Je){var je=Ge.getUTCDay();return Ge=je>=4||je===0?t.utcThursday(Ge):t.utcThursday.ceil(Ge),c(t.utcThursday.count(t.utcYear(Ge),Ge)+(t.utcYear(Ge).getUTCDay()===4),Je,2)}function $e(Ge){return Ge.getUTCDay()}function St(Ge,Je){return c(t.utcMonday.count(t.utcYear(Ge)-1,Ge),Je,2)}function Qt(Ge,Je){return c(Ge.getUTCFullYear()%100,Je,2)}function Vt(Ge,Je){return c(Ge.getUTCFullYear()%1e4,Je,4)}function _t(){return"+0000"}function It(){return"%"}function mt(Ge){return+Ge}function er(Ge){return Math.floor(+Ge/1e3)}var lr;Tr({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});function Tr(Ge){return lr=a(Ge),e.timeFormat=lr.format,e.timeParse=lr.parse,e.utcFormat=lr.utcFormat,e.utcParse=lr.utcParse,lr}var Lr="%Y-%m-%dT%H:%M:%S.%LZ";function ti(Ge){return Ge.toISOString()}var Br=Date.prototype.toISOString?ti:e.utcFormat(Lr);function Vr(Ge){var Je=new Date(Ge);return isNaN(Je)?null:Je}var dt=+new Date("2000-01-01T00:00:00.000Z")?Vr:e.utcParse(Lr);e.isoFormat=Br,e.isoParse=dt,e.timeFormatDefaultLocale=Tr,e.timeFormatLocale=a,Object.defineProperty(e,"__esModule",{value:!0})})});var wO=ye((d6,mee)=>{(function(e,t){typeof d6=="object"&&typeof mee!="undefined"?t(d6):(e=typeof globalThis!="undefined"?globalThis:e||self,t(e.d3=e.d3||{}))})(d6,function(e){"use strict";function t(C){return Math.abs(C=Math.round(C))>=1e21?C.toLocaleString("en").replace(/,/g,""):C.toString(10)}function r(C,M){if((g=(C=M?C.toExponential(M-1):C.toExponential()).indexOf("e"))<0)return null;var g,P=C.slice(0,g);return[P.length>1?P[0]+P.slice(2):P,+C.slice(g+1)]}function n(C){return C=r(Math.abs(C)),C?C[1]:NaN}function i(C,M){return function(g,P){for(var T=g.length,z=[],O=0,V=C[0],G=0;T>0&&V>0&&(G+V+1>P&&(V=Math.max(1,P-G)),z.push(g.substring(T-=V,T+V)),!((G+=V+1)>P));)V=C[O=(O+1)%C.length];return z.reverse().join(M)}}function a(C){return function(M){return M.replace(/[0-9]/g,function(g){return C[+g]})}}var o=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function s(C){if(!(M=o.exec(C)))throw new Error("invalid format: "+C);var M;return new l({fill:M[1],align:M[2],sign:M[3],symbol:M[4],zero:M[5],width:M[6],comma:M[7],precision:M[8]&&M[8].slice(1),trim:M[9],type:M[10]})}s.prototype=l.prototype;function l(C){this.fill=C.fill===void 0?" ":C.fill+"",this.align=C.align===void 0?">":C.align+"",this.sign=C.sign===void 0?"-":C.sign+"",this.symbol=C.symbol===void 0?"":C.symbol+"",this.zero=!!C.zero,this.width=C.width===void 0?void 0:+C.width,this.comma=!!C.comma,this.precision=C.precision===void 0?void 0:+C.precision,this.trim=!!C.trim,this.type=C.type===void 0?"":C.type+""}l.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type};function u(C){e:for(var M=C.length,g=1,P=-1,T;g<M;++g)switch(C[g]){case".":P=T=g;break;case"0":P===0&&(P=g),T=g;break;default:if(!+C[g])break e;P>0&&(P=0);break}return P>0?C.slice(0,P)+C.slice(T+1):C}var c;function f(C,M){var g=r(C,M);if(!g)return C+"";var P=g[0],T=g[1],z=T-(c=Math.max(-8,Math.min(8,Math.floor(T/3)))*3)+1,O=P.length;return z===O?P:z>O?P+new Array(z-O+1).join("0"):z>0?P.slice(0,z)+"."+P.slice(z):"0."+new Array(1-z).join("0")+r(C,Math.max(0,M+z-1))[0]}function h(C,M){var g=r(C,M);if(!g)return C+"";var P=g[0],T=g[1];return T<0?"0."+new Array(-T).join("0")+P:P.length>T+1?P.slice(0,T+1)+"."+P.slice(T+1):P+new Array(T-P.length+2).join("0")}var d={"%":function(C,M){return(C*100).toFixed(M)},b:function(C){return Math.round(C).toString(2)},c:function(C){return C+""},d:t,e:function(C,M){return C.toExponential(M)},f:function(C,M){return C.toFixed(M)},g:function(C,M){return C.toPrecision(M)},o:function(C){return Math.round(C).toString(8)},p:function(C,M){return h(C*100,M)},r:h,s:f,X:function(C){return Math.round(C).toString(16).toUpperCase()},x:function(C){return Math.round(C).toString(16)}};function v(C){return C}var _=Array.prototype.map,b=["y","z","a","f","p","n","\xB5","m","","k","M","G","T","P","E","Z","Y"];function p(C){var M=C.grouping===void 0||C.thousands===void 0?v:i(_.call(C.grouping,Number),C.thousands+""),g=C.currency===void 0?"":C.currency[0]+"",P=C.currency===void 0?"":C.currency[1]+"",T=C.decimal===void 0?".":C.decimal+"",z=C.numerals===void 0?v:a(_.call(C.numerals,String)),O=C.percent===void 0?"%":C.percent+"",V=C.minus===void 0?"-":C.minus+"",G=C.nan===void 0?"NaN":C.nan+"";function Z(N){N=s(N);var H=N.fill,te=N.align,oe=N.sign,_e=N.symbol,Ee=N.zero,Ce=N.width,me=N.comma,ie=N.precision,Se=N.trim,Le=N.type;Le==="n"?(me=!0,Le="g"):d[Le]||(ie===void 0&&(ie=12),Se=!0,Le="g"),(Ee||H==="0"&&te==="=")&&(Ee=!0,H="0",te="=");var Ae=_e==="$"?g:_e==="#"&&/[boxX]/.test(Le)?"0"+Le.toLowerCase():"",Fe=_e==="$"?P:/[%p]/.test(Le)?O:"",Pe=d[Le],ge=/[defgprs%]/.test(Le);ie=ie===void 0?6:/[gprs]/.test(Le)?Math.max(1,Math.min(21,ie)):Math.max(0,Math.min(20,ie));function Re(ce){var Ze=Ae,ut=Fe,pt,Zt,st;if(Le==="c")ut=Pe(ce)+ut,ce="";else{ce=+ce;var lt=ce<0||1/ce<0;if(ce=isNaN(ce)?G:Pe(Math.abs(ce),ie),Se&&(ce=u(ce)),lt&&+ce==0&&oe!=="+"&&(lt=!1),Ze=(lt?oe==="("?oe:V:oe==="-"||oe==="("?"":oe)+Ze,ut=(Le==="s"?b[8+c/3]:"")+ut+(lt&&oe==="("?")":""),ge){for(pt=-1,Zt=ce.length;++pt<Zt;)if(st=ce.charCodeAt(pt),48>st||st>57){ut=(st===46?T+ce.slice(pt+1):ce.slice(pt))+ut,ce=ce.slice(0,pt);break}}}me&&!Ee&&(ce=M(ce,1/0));var Gt=Ze.length+ce.length+ut.length,Nt=Gt<Ce?new Array(Ce-Gt+1).join(H):"";switch(me&&Ee&&(ce=M(Nt+ce,Nt.length?Ce-ut.length:1/0),Nt=""),te){case"<":ce=Ze+ce+ut+Nt;break;case"=":ce=Ze+Nt+ce+ut;break;case"^":ce=Nt.slice(0,Gt=Nt.length>>1)+Ze+ce+ut+Nt.slice(Gt);break;default:ce=Nt+Ze+ce+ut;break}return z(ce)}return Re.toString=function(){return N+""},Re}function j(N,H){var te=Z((N=s(N),N.type="f",N)),oe=Math.max(-8,Math.min(8,Math.floor(n(H)/3)))*3,_e=Math.pow(10,-oe),Ee=b[8+oe/3];return function(Ce){return te(_e*Ce)+Ee}}return{format:Z,formatPrefix:j}}var k;E({decimal:".",thousands:",",grouping:[3],currency:["$",""],minus:"-"});function E(C){return k=p(C),e.format=k.format,e.formatPrefix=k.formatPrefix,k}function S(C){return Math.max(0,-n(Math.abs(C)))}function L(C,M){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(n(M)/3)))*3-n(Math.abs(C)))}function x(C,M){return C=Math.abs(C),M=Math.abs(M)-C,Math.max(0,n(M)-n(C))+1}e.FormatSpecifier=l,e.formatDefaultLocale=E,e.formatLocale=p,e.formatSpecifier=s,e.precisionFixed=S,e.precisionPrefix=L,e.precisionRound=x,Object.defineProperty(e,"__esModule",{value:!0})})});var _ee=ye((orr,yee)=>{"use strict";yee.exports=function(e){for(var t=e.length,r,n=0;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((srr,xee)=>{"use strict";var mtt=_ee();xee.exports=function(e){var t=typeof e;if(t==="string"){var r=e;if(e=+e,e===0&&mtt(r))return!1}else if(t!=="number")return!1;return e-e<1}});var fs=ye((lrr,bee)=>{"use strict";bee.exports={BADNUM:void 0,FP_SAFE:Number.MAX_VALUE*1e-4,ONEMAXYEAR:316224e5,ONEAVGYEAR:315576e5,ONEMINYEAR:31536e6,ONEMAXQUARTER:79488e5,ONEAVGQUARTER:78894e5,ONEMINQUARTER:76896e5,ONEMAXMONTH:26784e5,ONEAVGMONTH:26298e5,ONEMINMONTH:24192e5,ONEWEEK:6048e5,ONEDAY:864e5,ONEHOUR:36e5,ONEMIN:6e4,ONESEC:1e3,ONEMILLI:1,ONEMICROSEC:.001,EPOCHJD:24405875e-1,ALMOST_EQUAL:1-1e-6,LOG_CLIP:10,MINUS_SIGN:"\u2212"}});var TO=ye((v6,wee)=>{(function(e,t){typeof v6=="object"&&typeof wee!="undefined"?t(v6):(e=typeof globalThis!="undefined"?globalThis:e||self,t(e["base64-arraybuffer"]={}))})(v6,function(e){"use strict";for(var t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",r=typeof Uint8Array=="undefined"?[]:new Uint8Array(256),n=0;n<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 _=new ArrayBuffer(s),b=new Uint8Array(_);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 _};e.decode=a,e.encode=i,Object.defineProperty(e,"__esModule",{value:!0})})});var my=ye((urr,Tee)=>{"use strict";Tee.exports=function(t){return window&&window.process&&window.process.versions?Object.prototype.toString.call(t)==="[object Object]":Object.prototype.toString.call(t)==="[object Object]"&&Object.getPrototypeOf(t).hasOwnProperty("hasOwnProperty")}});var vv=ye(yg=>{"use strict";var ytt=TO().decode,_tt=my(),AO=Array.isArray,xtt=ArrayBuffer,btt=DataView;function Aee(e){return xtt.isView(e)&&!(e instanceof btt)}yg.isTypedArray=Aee;function p6(e){return AO(e)||Aee(e)}yg.isArrayOrTypedArray=p6;function wtt(e){return!p6(e[0])}yg.isArray1D=wtt;yg.ensureArray=function(e,t){return AO(e)||(e=[]),e.length=t,e};var Ld={u1c:typeof Uint8ClampedArray=="undefined"?void 0:Uint8ClampedArray,i1:typeof Int8Array=="undefined"?void 0:Int8Array,u1:typeof Uint8Array=="undefined"?void 0:Uint8Array,i2:typeof Int16Array=="undefined"?void 0:Int16Array,u2:typeof Uint16Array=="undefined"?void 0:Uint16Array,i4:typeof Int32Array=="undefined"?void 0:Int32Array,u4:typeof Uint32Array=="undefined"?void 0:Uint32Array,f4:typeof Float32Array=="undefined"?void 0:Float32Array,f8:typeof Float64Array=="undefined"?void 0:Float64Array};Ld.uint8c=Ld.u1c;Ld.uint8=Ld.u1;Ld.int8=Ld.i1;Ld.uint16=Ld.u2;Ld.int16=Ld.i2;Ld.uint32=Ld.u4;Ld.int32=Ld.i4;Ld.float32=Ld.f4;Ld.float64=Ld.f8;function SO(e){return e.constructor===ArrayBuffer}yg.isArrayBuffer=SO;yg.decodeTypedArraySpec=function(e){var t=[],r=Ttt(e),n=r.dtype,i=Ld[n];if(!i)throw new Error('Error in dtype: "'+n+'"');var a=i.BYTES_PER_ELEMENT,o=r.bdata;SO(o)||(o=ytt(o));var s=r.shape===void 0?[o.byteLength/a]:(""+r.shape).split(",");s.reverse();var l=s.length,u,c,f=+s[0],h=a*f,d=0;if(l===1)t=new i(o);else if(l===2)for(u=+s[1],c=0;c<u;c++)t[c]=new i(o,d,f),d+=h;else if(l===3){u=+s[1];for(var v=+s[2],_=0;_<v;_++)for(t[_]=[],c=0;c<u;c++)t[_][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};yg.isTypedArraySpec=function(e){return _tt(e)&&e.hasOwnProperty("dtype")&&typeof e.dtype=="string"&&e.hasOwnProperty("bdata")&&(typeof e.bdata=="string"||SO(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}}yg.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),AO(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};yg.maxRowLength=function(e){return See(e,Math.max,0)};yg.minRowLength=function(e){return See(e,Math.min,1/0)};function See(e,t,r){if(p6(e))if(p6(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 PS=ye((frr,Lee)=>{"use strict";var Mee=Eo(),EO=vv().isArrayOrTypedArray;Lee.exports=function(t,r){if(Mee(r))r=String(r);else if(typeof r!="string"||r.slice(-4)==="[-1]")throw"bad property string";var n=r.split("."),i,a,o,s;for(s=0;s<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].slice(1,-1).split("]["),o=0;o<a.length;o++)s++,n.splice(s,0,Number(a[o]))}s++}return typeof t!="object"?Ett(t,r,n):{set:kee(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"&&!EO(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 Att=/(^|\.)args\[/;function MO(e,t){return e===void 0||e===null&&!t.match(Att)}function kee(e,t,r){return function(n){var i=e,a="",o=[[e,a]],s=MO(n,r),l,u;for(u=0;u<t.length-1;u++){if(l=t[u],typeof l=="number"&&!EO(i))throw"array index but container is not an array";if(l===-1){if(s=!Mtt(i,t.slice(u+1),n,r),s)break;return}if(!Cee(i,l,t[u+1],s))break;if(i=i[l],typeof i!="object"||i===null)throw"container is not an object";a=Stt(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 Stt(e,t){var r=t;return Mee(t)?r="["+t+"]":e&&(r="."+t),e+r}function Mtt(e,t,r,n){var i=EO(r),a=!0,o=r,s=n.replace("-1",0),l=i?!1:MO(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=MO(o,s)),l&&(a=!1),Cee(e,c,u,l)&&kee(e[c],t,n.replace("-1",c))(o);return a}function Cee(e,t,r,n){if(e[t]===void 0){if(n)return!1;typeof r=="number"?e[t]=[]:e[t]={}}return!0}function Ett(e,t,r){return{set:function(){throw"bad container"},get:function(){},astr:t,parts:r,obj:e}}});var Dee=ye((hrr,Ree)=>{"use strict";var i3=PS(),ktt=/^\w*$/,Ctt=0,Pee=1,g6=2,Iee=3,sb=4;Ree.exports=function(t,r,n,i){n=n||"name",i=i||"value";var a,o,s,l={};r&&r.length?(s=i3(t,r),o=s.get()):o=t,r=r||"";var u={};if(o)for(a=0;a<o.length;a++)u[o[a][n]]=a;var c=ktt.test(i),f={set:function(h,d){var v=d===null?sb:Ctt;if(!o){if(!s||v===sb)return;o=[],s.set(o)}var _=u[h];if(_===void 0){if(v===sb)return;v=v|Iee,_=o.length,u[h]=_}else d!==(c?o[_][i]:i3(o[_],i).get())&&(v=v|g6);var b=o[_]=o[_]||{};return b[n]=h,c?b[i]=d:i3(b,i).set(d),d!==null&&(v=v&~sb),l[_]=l[_]|v,f},get:function(h){if(o){var d=u[h];if(d!==void 0)return c?o[d][i]:i3(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]|g6,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 i3(v,i).set(null),l[d]=l[d]|g6|sb;return f},constructUpdate:function(){for(var h,d,v={},_=Object.keys(l),b=0;b<_.length;b++)d=_[b],h=r+"["+d+"]",o[d]?(l[d]&Pee&&(v[h+"."+n]=o[d][n]),l[d]&g6&&(c?v[h+"."+i]=l[d]&sb?null:o[d][i]:v[h+"."+i]=l[d]&sb?null:i3(o[d],i).get())):v[h]=null;return v}};return f}});var zee=ye((drr,Fee)=>{"use strict";var Ltt=/^(.*)(\.[^\.\[\]]+|\[\d\])$/,Ptt=/^[^\.\[\]]+$/;Fee.exports=function(e,t){for(;t;){var r=e.match(Ltt);if(r)e=r[1];else if(e.match(Ptt))e="";else throw new Error("bad relativeAttr call:"+[e,t]);if(t.charAt(0)==="^")t=t.slice(1);else break}return e&&t.charAt(0)!=="["?e+"."+t:e+t}});var m6=ye((vrr,Oee)=>{"use strict";var Itt=Eo();Oee.exports=function(t,r){if(t>0)return Math.log(t)/Math.LN10;var n=Math.log(Math.min(r[0],r[1]))/Math.LN10;return Itt(n)||(n=Math.log(Math.max(r[0],r[1]))/Math.LN10-6),n}});var Nee=ye((prr,Bee)=>{"use strict";var qee=vv().isArrayOrTypedArray,IS=my();Bee.exports=function e(t,r){for(var n in r){var i=r[n],a=t[n];if(a!==i)if(n.charAt(0)==="_"||typeof i=="function"){if(n in t)continue;t[n]=i}else if(qee(i)&&qee(a)&&IS(i[0])){if(n==="customdata"||n==="ids")continue;for(var o=Math.min(i.length,a.length),s=0;s<o;s++)a[s]!==i[s]&&IS(i[s])&&IS(a[s])&&e(a[s],i[s])}else IS(i)&&IS(a)&&(e(a,i),Object.keys(a).length||delete t[n])}}});var n3=ye((grr,Uee)=>{"use strict";function Rtt(e,t){var r=e%t;return r<0?r+t:r}function Dtt(e,t){return Math.abs(e)>t/2?e-Math.round(e/t)*t:e}Uee.exports={mod:Rtt,modHalf:Dtt}});var cd=ye((mrr,y6)=>{(function(e){var t=/^\s+/,r=/\s+$/,n=0,i=e.round,a=e.min,o=e.max,s=e.random;function l(ge,Re){if(ge=ge||"",Re=Re||{},ge instanceof l)return ge;if(!(this instanceof l))return new l(ge,Re);var ce=u(ge);this._originalInput=ge,this._r=ce.r,this._g=ce.g,this._b=ce.b,this._a=ce.a,this._roundA=i(100*this._a)/100,this._format=Re.format||ce.format,this._gradientType=Re.gradientType,this._r<1&&(this._r=i(this._r)),this._g<1&&(this._g=i(this._g)),this._b<1&&(this._b=i(this._b)),this._ok=ce.ok,this._tc_id=n++}l.prototype={isDark:function(){return this.getBrightness()<128},isLight:function(){return!this.isDark()},isValid:function(){return this._ok},getOriginalInput:function(){return this._originalInput},getFormat:function(){return this._format},getAlpha:function(){return this._a},getBrightness:function(){var ge=this.toRgb();return(ge.r*299+ge.g*587+ge.b*114)/1e3},getLuminance:function(){var ge=this.toRgb(),Re,ce,Ze,ut,pt,Zt;return Re=ge.r/255,ce=ge.g/255,Ze=ge.b/255,Re<=.03928?ut=Re/12.92:ut=e.pow((Re+.055)/1.055,2.4),ce<=.03928?pt=ce/12.92:pt=e.pow((ce+.055)/1.055,2.4),Ze<=.03928?Zt=Ze/12.92:Zt=e.pow((Ze+.055)/1.055,2.4),.2126*ut+.7152*pt+.0722*Zt},setAlpha:function(ge){return this._a=N(ge),this._roundA=i(100*this._a)/100,this},toHsv:function(){var ge=d(this._r,this._g,this._b);return{h:ge.h*360,s:ge.s,v:ge.v,a:this._a}},toHsvString:function(){var ge=d(this._r,this._g,this._b),Re=i(ge.h*360),ce=i(ge.s*100),Ze=i(ge.v*100);return this._a==1?"hsv("+Re+", "+ce+"%, "+Ze+"%)":"hsva("+Re+", "+ce+"%, "+Ze+"%, "+this._roundA+")"},toHsl:function(){var ge=f(this._r,this._g,this._b);return{h:ge.h*360,s:ge.s,l:ge.l,a:this._a}},toHslString:function(){var ge=f(this._r,this._g,this._b),Re=i(ge.h*360),ce=i(ge.s*100),Ze=i(ge.l*100);return this._a==1?"hsl("+Re+", "+ce+"%, "+Ze+"%)":"hsla("+Re+", "+ce+"%, "+Ze+"%, "+this._roundA+")"},toHex:function(ge){return _(this._r,this._g,this._b,ge)},toHexString:function(ge){return"#"+this.toHex(ge)},toHex8:function(ge){return b(this._r,this._g,this._b,this._a,ge)},toHex8String:function(ge){return"#"+this.toHex8(ge)},toRgb:function(){return{r:i(this._r),g:i(this._g),b:i(this._b),a:this._a}},toRgbString:function(){return this._a==1?"rgb("+i(this._r)+", "+i(this._g)+", "+i(this._b)+")":"rgba("+i(this._r)+", "+i(this._g)+", "+i(this._b)+", "+this._roundA+")"},toPercentageRgb:function(){return{r:i(H(this._r,255)*100)+"%",g:i(H(this._g,255)*100)+"%",b:i(H(this._b,255)*100)+"%",a:this._a}},toPercentageRgbString:function(){return this._a==1?"rgb("+i(H(this._r,255)*100)+"%, "+i(H(this._g,255)*100)+"%, "+i(H(this._b,255)*100)+"%)":"rgba("+i(H(this._r,255)*100)+"%, "+i(H(this._g,255)*100)+"%, "+i(H(this._b,255)*100)+"%, "+this._roundA+")"},toName:function(){return this._a===0?"transparent":this._a<1?!1:Z[_(this._r,this._g,this._b,!0)]||!1},toFilter:function(ge){var Re="#"+p(this._r,this._g,this._b,this._a),ce=Re,Ze=this._gradientType?"GradientType = 1, ":"";if(ge){var ut=l(ge);ce="#"+p(ut._r,ut._g,ut._b,ut._a)}return"progid:DXImageTransform.Microsoft.gradient("+Ze+"startColorstr="+Re+",endColorstr="+ce+")"},toString:function(ge){var Re=!!ge;ge=ge||this._format;var ce=!1,Ze=this._a<1&&this._a>=0,ut=!Re&&Ze&&(ge==="hex"||ge==="hex6"||ge==="hex3"||ge==="hex4"||ge==="hex8"||ge==="name");return ut?ge==="name"&&this._a===0?this.toName():this.toRgbString():(ge==="rgb"&&(ce=this.toRgbString()),ge==="prgb"&&(ce=this.toPercentageRgbString()),(ge==="hex"||ge==="hex6")&&(ce=this.toHexString()),ge==="hex3"&&(ce=this.toHexString(!0)),ge==="hex4"&&(ce=this.toHex8String(!0)),ge==="hex8"&&(ce=this.toHex8String()),ge==="name"&&(ce=this.toName()),ge==="hsl"&&(ce=this.toHslString()),ge==="hsv"&&(ce=this.toHsvString()),ce||this.toHexString())},clone:function(){return l(this.toString())},_applyModification:function(ge,Re){var ce=ge.apply(null,[this].concat([].slice.call(Re)));return this._r=ce._r,this._g=ce._g,this._b=ce._b,this.setAlpha(ce._a),this},lighten:function(){return this._applyModification(L,arguments)},brighten:function(){return this._applyModification(x,arguments)},darken:function(){return this._applyModification(C,arguments)},desaturate:function(){return this._applyModification(k,arguments)},saturate:function(){return this._applyModification(E,arguments)},greyscale:function(){return this._applyModification(S,arguments)},spin:function(){return this._applyModification(M,arguments)},_applyCombination:function(ge,Re){return ge.apply(null,[this].concat([].slice.call(Re)))},analogous:function(){return this._applyCombination(O,arguments)},complement:function(){return this._applyCombination(g,arguments)},monochromatic:function(){return this._applyCombination(V,arguments)},splitcomplement:function(){return this._applyCombination(z,arguments)},triad:function(){return this._applyCombination(P,arguments)},tetrad:function(){return this._applyCombination(T,arguments)}},l.fromRatio=function(ge,Re){if(typeof ge=="object"){var ce={};for(var Ze in ge)ge.hasOwnProperty(Ze)&&(Ze==="a"?ce[Ze]=ge[Ze]:ce[Ze]=me(ge[Ze]));ge=ce}return l(ge,Re)};function u(ge){var Re={r:0,g:0,b:0},ce=1,Ze=null,ut=null,pt=null,Zt=!1,st=!1;return typeof ge=="string"&&(ge=Fe(ge)),typeof ge=="object"&&(Ae(ge.r)&&Ae(ge.g)&&Ae(ge.b)?(Re=c(ge.r,ge.g,ge.b),Zt=!0,st=String(ge.r).substr(-1)==="%"?"prgb":"rgb"):Ae(ge.h)&&Ae(ge.s)&&Ae(ge.v)?(Ze=me(ge.s),ut=me(ge.v),Re=v(ge.h,Ze,ut),Zt=!0,st="hsv"):Ae(ge.h)&&Ae(ge.s)&&Ae(ge.l)&&(Ze=me(ge.s),pt=me(ge.l),Re=h(ge.h,Ze,pt),Zt=!0,st="hsl"),ge.hasOwnProperty("a")&&(ce=ge.a)),ce=N(ce),{ok:Zt,format:ge.format||st,r:a(255,o(Re.r,0)),g:a(255,o(Re.g,0)),b:a(255,o(Re.b,0)),a:ce}}function c(ge,Re,ce){return{r:H(ge,255)*255,g:H(Re,255)*255,b:H(ce,255)*255}}function f(ge,Re,ce){ge=H(ge,255),Re=H(Re,255),ce=H(ce,255);var Ze=o(ge,Re,ce),ut=a(ge,Re,ce),pt,Zt,st=(Ze+ut)/2;if(Ze==ut)pt=Zt=0;else{var lt=Ze-ut;switch(Zt=st>.5?lt/(2-Ze-ut):lt/(Ze+ut),Ze){case ge:pt=(Re-ce)/lt+(Re<ce?6:0);break;case Re:pt=(ce-ge)/lt+2;break;case ce:pt=(ge-Re)/lt+4;break}pt/=6}return{h:pt,s:Zt,l:st}}function h(ge,Re,ce){var Ze,ut,pt;ge=H(ge,360),Re=H(Re,100),ce=H(ce,100);function Zt(Gt,Nt,Jt){return Jt<0&&(Jt+=1),Jt>1&&(Jt-=1),Jt<1/6?Gt+(Nt-Gt)*6*Jt:Jt<1/2?Nt:Jt<2/3?Gt+(Nt-Gt)*(2/3-Jt)*6:Gt}if(Re===0)Ze=ut=pt=ce;else{var st=ce<.5?ce*(1+Re):ce+Re-ce*Re,lt=2*ce-st;Ze=Zt(lt,st,ge+1/3),ut=Zt(lt,st,ge),pt=Zt(lt,st,ge-1/3)}return{r:Ze*255,g:ut*255,b:pt*255}}function d(ge,Re,ce){ge=H(ge,255),Re=H(Re,255),ce=H(ce,255);var Ze=o(ge,Re,ce),ut=a(ge,Re,ce),pt,Zt,st=Ze,lt=Ze-ut;if(Zt=Ze===0?0:lt/Ze,Ze==ut)pt=0;else{switch(Ze){case ge:pt=(Re-ce)/lt+(Re<ce?6:0);break;case Re:pt=(ce-ge)/lt+2;break;case ce:pt=(ge-Re)/lt+4;break}pt/=6}return{h:pt,s:Zt,v:st}}function v(ge,Re,ce){ge=H(ge,360)*6,Re=H(Re,100),ce=H(ce,100);var Ze=e.floor(ge),ut=ge-Ze,pt=ce*(1-Re),Zt=ce*(1-ut*Re),st=ce*(1-(1-ut)*Re),lt=Ze%6,Gt=[ce,Zt,pt,pt,st,ce][lt],Nt=[st,ce,ce,Zt,pt,pt][lt],Jt=[pt,pt,st,ce,ce,Zt][lt];return{r:Gt*255,g:Nt*255,b:Jt*255}}function _(ge,Re,ce,Ze){var ut=[Ce(i(ge).toString(16)),Ce(i(Re).toString(16)),Ce(i(ce).toString(16))];return Ze&&ut[0].charAt(0)==ut[0].charAt(1)&&ut[1].charAt(0)==ut[1].charAt(1)&&ut[2].charAt(0)==ut[2].charAt(1)?ut[0].charAt(0)+ut[1].charAt(0)+ut[2].charAt(0):ut.join("")}function b(ge,Re,ce,Ze,ut){var pt=[Ce(i(ge).toString(16)),Ce(i(Re).toString(16)),Ce(i(ce).toString(16)),Ce(ie(Ze))];return ut&&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,Re,ce,Ze){var ut=[Ce(ie(Ze)),Ce(i(ge).toString(16)),Ce(i(Re).toString(16)),Ce(i(ce).toString(16))];return ut.join("")}l.equals=function(ge,Re){return!ge||!Re?!1:l(ge).toRgbString()==l(Re).toRgbString()},l.random=function(){return l.fromRatio({r:s(),g:s(),b:s()})};function k(ge,Re){Re=Re===0?0:Re||10;var ce=l(ge).toHsl();return ce.s-=Re/100,ce.s=te(ce.s),l(ce)}function E(ge,Re){Re=Re===0?0:Re||10;var ce=l(ge).toHsl();return ce.s+=Re/100,ce.s=te(ce.s),l(ce)}function S(ge){return l(ge).desaturate(100)}function L(ge,Re){Re=Re===0?0:Re||10;var ce=l(ge).toHsl();return ce.l+=Re/100,ce.l=te(ce.l),l(ce)}function x(ge,Re){Re=Re===0?0:Re||10;var ce=l(ge).toRgb();return ce.r=o(0,a(255,ce.r-i(255*-(Re/100)))),ce.g=o(0,a(255,ce.g-i(255*-(Re/100)))),ce.b=o(0,a(255,ce.b-i(255*-(Re/100)))),l(ce)}function C(ge,Re){Re=Re===0?0:Re||10;var ce=l(ge).toHsl();return ce.l-=Re/100,ce.l=te(ce.l),l(ce)}function M(ge,Re){var ce=l(ge).toHsl(),Ze=(ce.h+Re)%360;return ce.h=Ze<0?360+Ze:Ze,l(ce)}function g(ge){var Re=l(ge).toHsl();return Re.h=(Re.h+180)%360,l(Re)}function P(ge){var Re=l(ge).toHsl(),ce=Re.h;return[l(ge),l({h:(ce+120)%360,s:Re.s,l:Re.l}),l({h:(ce+240)%360,s:Re.s,l:Re.l})]}function T(ge){var Re=l(ge).toHsl(),ce=Re.h;return[l(ge),l({h:(ce+90)%360,s:Re.s,l:Re.l}),l({h:(ce+180)%360,s:Re.s,l:Re.l}),l({h:(ce+270)%360,s:Re.s,l:Re.l})]}function z(ge){var Re=l(ge).toHsl(),ce=Re.h;return[l(ge),l({h:(ce+72)%360,s:Re.s,l:Re.l}),l({h:(ce+216)%360,s:Re.s,l:Re.l})]}function O(ge,Re,ce){Re=Re||6,ce=ce||30;var Ze=l(ge).toHsl(),ut=360/ce,pt=[l(ge)];for(Ze.h=(Ze.h-(ut*Re>>1)+720)%360;--Re;)Ze.h=(Ze.h+ut)%360,pt.push(l(Ze));return pt}function V(ge,Re){Re=Re||6;for(var ce=l(ge).toHsv(),Ze=ce.h,ut=ce.s,pt=ce.v,Zt=[],st=1/Re;Re--;)Zt.push(l({h:Ze,s:ut,v:pt})),pt=(pt+st)%1;return Zt}l.mix=function(ge,Re,ce){ce=ce===0?0:ce||50;var Ze=l(ge).toRgb(),ut=l(Re).toRgb(),pt=ce/100,Zt={r:(ut.r-Ze.r)*pt+Ze.r,g:(ut.g-Ze.g)*pt+Ze.g,b:(ut.b-Ze.b)*pt+Ze.b,a:(ut.a-Ze.a)*pt+Ze.a};return l(Zt)},l.readability=function(ge,Re){var ce=l(ge),Ze=l(Re);return(e.max(ce.getLuminance(),Ze.getLuminance())+.05)/(e.min(ce.getLuminance(),Ze.getLuminance())+.05)},l.isReadable=function(ge,Re,ce){var Ze=l.readability(ge,Re),ut,pt;switch(pt=!1,ut=Pe(ce),ut.level+ut.size){case"AAsmall":case"AAAlarge":pt=Ze>=4.5;break;case"AAlarge":pt=Ze>=3;break;case"AAAsmall":pt=Ze>=7;break}return pt},l.mostReadable=function(ge,Re,ce){var Ze=null,ut=0,pt,Zt,st,lt;ce=ce||{},Zt=ce.includeFallbackColors,st=ce.level,lt=ce.size;for(var Gt=0;Gt<Re.length;Gt++)pt=l.readability(ge,Re[Gt]),pt>ut&&(ut=pt,Ze=l(Re[Gt]));return l.isReadable(ge,Ze,{level:st,size:lt})||!Zt?Ze:(ce.includeFallbackColors=!1,l.mostReadable(ge,["#fff","#000"],ce))};var G=l.names={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"0ff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000",blanchedalmond:"ffebcd",blue:"00f",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",burntsienna:"ea7e5d",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"0ff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"f0f",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"789",lightslategrey:"789",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"0f0",limegreen:"32cd32",linen:"faf0e6",magenta:"f0f",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"663399",red:"f00",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"fff",whitesmoke:"f5f5f5",yellow:"ff0",yellowgreen:"9acd32"},Z=l.hexNames=j(G);function j(ge){var Re={};for(var ce in ge)ge.hasOwnProperty(ce)&&(Re[ge[ce]]=ce);return Re}function N(ge){return ge=parseFloat(ge),(isNaN(ge)||ge<0||ge>1)&&(ge=1),ge}function H(ge,Re){_e(ge)&&(ge="100%");var ce=Ee(ge);return ge=a(Re,o(0,parseFloat(ge))),ce&&(ge=parseInt(ge*Re,10)/100),e.abs(ge-Re)<1e-6?1:ge%Re/parseFloat(Re)}function te(ge){return a(1,o(0,ge))}function oe(ge){return parseInt(ge,16)}function _e(ge){return typeof ge=="string"&&ge.indexOf(".")!=-1&&parseFloat(ge)===1}function Ee(ge){return typeof ge=="string"&&ge.indexOf("%")!=-1}function Ce(ge){return ge.length==1?"0"+ge:""+ge}function me(ge){return ge<=1&&(ge=ge*100+"%"),ge}function ie(ge){return e.round(parseFloat(ge)*255).toString(16)}function Se(ge){return oe(ge)/255}var Le=function(){var ge="[-\\+]?\\d+%?",Re="[-\\+]?\\d*\\.\\d+%?",ce="(?:"+Re+")|(?:"+ge+")",Ze="[\\s|\\(]+("+ce+")[,|\\s]+("+ce+")[,|\\s]+("+ce+")\\s*\\)?",ut="[\\s|\\(]+("+ce+")[,|\\s]+("+ce+")[,|\\s]+("+ce+")[,|\\s]+("+ce+")\\s*\\)?";return{CSS_UNIT:new RegExp(ce),rgb:new RegExp("rgb"+Ze),rgba:new RegExp("rgba"+ut),hsl:new RegExp("hsl"+Ze),hsla:new RegExp("hsla"+ut),hsv:new RegExp("hsv"+Ze),hsva:new RegExp("hsva"+ut),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/}}();function Ae(ge){return!!Le.CSS_UNIT.exec(ge)}function Fe(ge){ge=ge.replace(t,"").replace(r,"").toLowerCase();var Re=!1;if(G[ge])ge=G[ge],Re=!0;else if(ge=="transparent")return{r:0,g:0,b:0,a:0,format:"name"};var ce;return(ce=Le.rgb.exec(ge))?{r:ce[1],g:ce[2],b:ce[3]}:(ce=Le.rgba.exec(ge))?{r:ce[1],g:ce[2],b:ce[3],a:ce[4]}:(ce=Le.hsl.exec(ge))?{h:ce[1],s:ce[2],l:ce[3]}:(ce=Le.hsla.exec(ge))?{h:ce[1],s:ce[2],l:ce[3],a:ce[4]}:(ce=Le.hsv.exec(ge))?{h:ce[1],s:ce[2],v:ce[3]}:(ce=Le.hsva.exec(ge))?{h:ce[1],s:ce[2],v:ce[3],a:ce[4]}:(ce=Le.hex8.exec(ge))?{r:oe(ce[1]),g:oe(ce[2]),b:oe(ce[3]),a:Se(ce[4]),format:Re?"name":"hex8"}:(ce=Le.hex6.exec(ge))?{r:oe(ce[1]),g:oe(ce[2]),b:oe(ce[3]),format:Re?"name":"hex"}:(ce=Le.hex4.exec(ge))?{r:oe(ce[1]+""+ce[1]),g:oe(ce[2]+""+ce[2]),b:oe(ce[3]+""+ce[3]),a:Se(ce[4]+""+ce[4]),format:Re?"name":"hex8"}:(ce=Le.hex3.exec(ge))?{r:oe(ce[1]+""+ce[1]),g:oe(ce[2]+""+ce[2]),b:oe(ce[3]+""+ce[3]),format:Re?"name":"hex"}:!1}function Pe(ge){var Re,ce;return ge=ge||{level:"AA",size:"small"},Re=(ge.level||"AA").toUpperCase(),ce=(ge.size||"small").toLowerCase(),Re!=="AA"&&Re!=="AAA"&&(Re="AA"),ce!=="small"&&ce!=="large"&&(ce="small"),{level:Re,size:ce}}typeof y6!="undefined"&&y6.exports?y6.exports=l:window.tinycolor=l})(Math)});var Ao=ye(FS=>{"use strict";var Vee=my(),RS=Array.isArray;function Ftt(e,t){var r,n;for(r=0;r<e.length;r++){if(n=e[r],n!==null&&typeof n=="object")return!1;n!==void 0&&(t[r]=n)}return!0}FS.extendFlat=function(){return DS(arguments,!1,!1,!1)};FS.extendDeep=function(){return DS(arguments,!0,!1,!1)};FS.extendDeepAll=function(){return DS(arguments,!0,!0,!1)};FS.extendDeepNoArrays=function(){return DS(arguments,!0,!1,!0)};function DS(e,t,r,n){var i=e[0],a=e.length,o,s,l,u,c,f,h;if(a===2&&RS(i)&&RS(e[1])&&i.length===0){if(h=Ftt(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&&RS(u)?i[s]=u:t&&u&&(Vee(u)||(c=RS(u)))?(c?(c=!1,f=l&&RS(l)?l:[]):f=l&&Vee(l)?l:{},i[s]=DS([f,u],t,r,n)):(typeof u!="undefined"||r)&&(i[s]=u)}return i}});var ec=ye((_rr,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 zS=ye((xrr,Hee)=>{"use strict";Hee.exports={YANGLE:60,HOVERARROWSIZE:6,HOVERTEXTPAD:3,HOVERFONTSIZE:13,HOVERFONT:"Arial, sans-serif",HOVERMINTIME:50,HOVERID:"-hover"}});var B1=ye((brr,Xee)=>{"use strict";var jee=zS(),Wee=ec(),kO=Wee({editType:"none"});kO.family.dflt=jee.HOVERFONT;kO.size.dflt=jee.HOVERFONTSIZE;Xee.exports={clickmode:{valType:"flaglist",flags:["event","select"],dflt:"event",editType:"plot",extras:["none"]},dragmode:{valType:"enumerated",values:["zoom","pan","select","lasso","drawclosedpath","drawopenpath","drawline","drawrect","drawcircle","orbit","turntable",!1],dflt:"zoom",editType:"modebar"},hovermode:{valType:"enumerated",values:["x","y","closest",!1,"x unified","y unified"],dflt:"closest",editType:"modebar"},hoversubplots:{valType:"enumerated",values:["single","overlaying","axis"],dflt:"overlaying",editType:"none"},hoverdistance:{valType:"integer",min:-1,dflt:20,editType:"none"},spikedistance:{valType:"integer",min:-1,dflt:-1,editType:"none"},hoverlabel:{bgcolor:{valType:"color",editType:"none"},bordercolor:{valType:"color",editType:"none"},font:kO,grouptitlefont:Wee({editType:"none"}),align:{valType:"enumerated",values:["left","right","auto"],dflt:"auto",editType:"none"},namelength:{valType:"integer",min:-1,dflt:15,editType:"none"},showarrow:{valType:"boolean",dflt:!0,editType:"none"},editType:"none"},selectdirection:{valType:"enumerated",values:["h","v","d","any"],dflt:"any",editType:"none"}}});var a3=ye((wrr,Zee)=>{"use strict";var ztt=ec(),OS=B1().hoverlabel,qS=Ao().extendFlat;Zee.exports={hoverlabel:{bgcolor:qS({},OS.bgcolor,{arrayOk:!0}),bordercolor:qS({},OS.bordercolor,{arrayOk:!0}),font:ztt({arrayOk:!0,editType:"none"}),align:qS({},OS.align,{arrayOk:!0}),namelength:qS({},OS.namelength,{arrayOk:!0}),showarrow:qS({},OS.showarrow),editType:"none"}}});var Gl=ye((Trr,Yee)=>{"use strict";var Ott=ec(),qtt=a3();Yee.exports={type:{valType:"enumerated",values:[],dflt:"scatter",editType:"calc+clearAxisTypes",_noTemplating:!0},visible:{valType:"enumerated",values:[!0,!1,"legendonly"],dflt:!0,editType:"calc"},showlegend:{valType:"boolean",dflt:!0,editType:"style"},legend:{valType:"subplotid",dflt:"legend",editType:"style"},legendgroup:{valType:"string",dflt:"",editType:"style"},legendgrouptitle:{text:{valType:"string",dflt:"",editType:"style"},font:Ott({editType:"style"}),editType:"style"},legendrank:{valType:"number",dflt:1e3,editType:"style"},legendwidth:{valType:"number",min:0,editType:"style"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"style"},name:{valType:"string",editType:"style"},uid:{valType:"string",editType:"plot",anim:!0},ids:{valType:"data_array",editType:"calc",anim:!0},customdata:{valType:"data_array",editType:"calc"},meta:{valType:"any",arrayOk:!0,editType:"plot"},selectedpoints:{valType:"any",editType:"calc"},hoverinfo:{valType:"flaglist",flags:["x","y","z","text","name"],extras:["all","none","skip"],arrayOk:!0,dflt:"all",editType:"none"},hoverlabel:qtt.hoverlabel,stream:{token:{valType:"string",noBlank:!0,strict:!0,editType:"calc"},maxpoints:{valType:"number",min:0,max:1e4,dflt:500,editType:"calc"},editType:"calc"},uirevision:{valType:"any",editType:"none"}}});var lb=ye((Arr,$ee)=>{"use strict";var Btt=cd(),_6={Greys:[[0,"rgb(0,0,0)"],[1,"rgb(255,255,255)"]],YlGnBu:[[0,"rgb(8,29,88)"],[.125,"rgb(37,52,148)"],[.25,"rgb(34,94,168)"],[.375,"rgb(29,145,192)"],[.5,"rgb(65,182,196)"],[.625,"rgb(127,205,187)"],[.75,"rgb(199,233,180)"],[.875,"rgb(237,248,217)"],[1,"rgb(255,255,217)"]],Greens:[[0,"rgb(0,68,27)"],[.125,"rgb(0,109,44)"],[.25,"rgb(35,139,69)"],[.375,"rgb(65,171,93)"],[.5,"rgb(116,196,118)"],[.625,"rgb(161,217,155)"],[.75,"rgb(199,233,192)"],[.875,"rgb(229,245,224)"],[1,"rgb(247,252,245)"]],YlOrRd:[[0,"rgb(128,0,38)"],[.125,"rgb(189,0,38)"],[.25,"rgb(227,26,28)"],[.375,"rgb(252,78,42)"],[.5,"rgb(253,141,60)"],[.625,"rgb(254,178,76)"],[.75,"rgb(254,217,118)"],[.875,"rgb(255,237,160)"],[1,"rgb(255,255,204)"]],Bluered:[[0,"rgb(0,0,255)"],[1,"rgb(255,0,0)"]],RdBu:[[0,"rgb(5,10,172)"],[.35,"rgb(106,137,247)"],[.5,"rgb(190,190,190)"],[.6,"rgb(220,170,132)"],[.7,"rgb(230,145,90)"],[1,"rgb(178,10,28)"]],Reds:[[0,"rgb(220,220,220)"],[.2,"rgb(245,195,157)"],[.4,"rgb(245,160,105)"],[1,"rgb(178,10,28)"]],Blues:[[0,"rgb(5,10,172)"],[.35,"rgb(40,60,190)"],[.5,"rgb(70,100,245)"],[.6,"rgb(90,120,245)"],[.7,"rgb(106,137,247)"],[1,"rgb(220,220,220)"]],Picnic:[[0,"rgb(0,0,255)"],[.1,"rgb(51,153,255)"],[.2,"rgb(102,204,255)"],[.3,"rgb(153,204,255)"],[.4,"rgb(204,204,255)"],[.5,"rgb(255,255,255)"],[.6,"rgb(255,204,255)"],[.7,"rgb(255,153,255)"],[.8,"rgb(255,102,204)"],[.9,"rgb(255,102,102)"],[1,"rgb(255,0,0)"]],Rainbow:[[0,"rgb(150,0,90)"],[.125,"rgb(0,0,200)"],[.25,"rgb(0,25,255)"],[.375,"rgb(0,152,255)"],[.5,"rgb(44,255,150)"],[.625,"rgb(151,255,0)"],[.75,"rgb(255,234,0)"],[.875,"rgb(255,111,0)"],[1,"rgb(255,0,0)"]],Portland:[[0,"rgb(12,51,131)"],[.25,"rgb(10,136,186)"],[.5,"rgb(242,211,56)"],[.75,"rgb(242,143,56)"],[1,"rgb(217,30,30)"]],Jet:[[0,"rgb(0,0,131)"],[.125,"rgb(0,60,170)"],[.375,"rgb(5,255,255)"],[.625,"rgb(255,255,0)"],[.875,"rgb(250,0,0)"],[1,"rgb(128,0,0)"]],Hot:[[0,"rgb(0,0,0)"],[.3,"rgb(230,0,0)"],[.6,"rgb(255,210,0)"],[1,"rgb(255,255,255)"]],Blackbody:[[0,"rgb(0,0,0)"],[.2,"rgb(230,0,0)"],[.4,"rgb(230,210,0)"],[.7,"rgb(255,255,255)"],[1,"rgb(160,200,255)"]],Earth:[[0,"rgb(0,0,130)"],[.1,"rgb(0,180,180)"],[.2,"rgb(40,210,40)"],[.4,"rgb(230,230,50)"],[.6,"rgb(120,70,20)"],[1,"rgb(255,255,255)"]],Electric:[[0,"rgb(0,0,0)"],[.15,"rgb(30,0,100)"],[.4,"rgb(120,0,100)"],[.6,"rgb(160,90,0)"],[.8,"rgb(230,200,0)"],[1,"rgb(255,250,220)"]],Viridis:[[0,"#440154"],[.06274509803921569,"#48186a"],[.12549019607843137,"#472d7b"],[.18823529411764706,"#424086"],[.25098039215686274,"#3b528b"],[.3137254901960784,"#33638d"],[.3764705882352941,"#2c728e"],[.4392156862745098,"#26828e"],[.5019607843137255,"#21918c"],[.5647058823529412,"#1fa088"],[.6274509803921569,"#28ae80"],[.6901960784313725,"#3fbc73"],[.7529411764705882,"#5ec962"],[.8156862745098039,"#84d44b"],[.8784313725490196,"#addc30"],[.9411764705882353,"#d8e219"],[1,"#fde725"]],Cividis:[[0,"rgb(0,32,76)"],[.058824,"rgb(0,42,102)"],[.117647,"rgb(0,52,110)"],[.176471,"rgb(39,63,108)"],[.235294,"rgb(60,74,107)"],[.294118,"rgb(76,85,107)"],[.352941,"rgb(91,95,109)"],[.411765,"rgb(104,106,112)"],[.470588,"rgb(117,117,117)"],[.529412,"rgb(131,129,120)"],[.588235,"rgb(146,140,120)"],[.647059,"rgb(161,152,118)"],[.705882,"rgb(176,165,114)"],[.764706,"rgb(192,177,109)"],[.823529,"rgb(209,191,102)"],[.882353,"rgb(225,204,92)"],[.941176,"rgb(243,219,79)"],[1,"rgb(255,233,69)"]]},Kee=_6.RdBu;function Ntt(e,t){if(t||(t=Kee),!e)return t;function r(){try{e=_6[e]||JSON.parse(e)}catch(n){e=t}}return typeof e=="string"&&(r(),typeof e=="string"&&r()),Jee(e)?e:t}function Jee(e){var t=0;if(!Array.isArray(e)||e.length<2||!e[0]||!e[e.length-1]||+e[0][0]!=0||+e[e.length-1][0]!=1)return!1;for(var r=0;r<e.length;r++){var n=e[r];if(n.length!==2||+n[0]<t||!Btt(n[1]).isValid())return!1;t=+n[0]}return!0}function Utt(e){return _6[e]!==void 0?!0:Jee(e)}$ee.exports={scales:_6,defaultScale:Kee,get:Ntt,isValid:Utt}});var Lh=ye(ub=>{"use strict";ub.defaults=["#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf"];ub.defaultLine="#444";ub.lightLine="#eee";ub.background="#fff";ub.borderLine="#BEC8D9";ub.lightFraction=100*10/11});var ka=ye((Mrr,Qee)=>{"use strict";var bp=cd(),Vtt=Eo(),Gtt=vv().isTypedArray,fd=Qee.exports={},x6=Lh();fd.defaults=x6.defaults;var Htt=fd.defaultLine=x6.defaultLine;fd.lightLine=x6.lightLine;var LO=fd.background=x6.background;fd.tinyRGB=function(e){var t=e.toRgb();return"rgb("+Math.round(t.r)+", "+Math.round(t.g)+", "+Math.round(t.b)+")"};fd.rgb=function(e){return fd.tinyRGB(bp(e))};fd.opacity=function(e){return e?bp(e).getAlpha():0};fd.addOpacity=function(e,t){var r=bp(e).toRgb();return"rgba("+Math.round(r.r)+", "+Math.round(r.g)+", "+Math.round(r.b)+", "+t+")"};fd.combine=function(e,t){var r=bp(e).toRgb();if(r.a===1)return bp(e).toRgbString();var n=bp(t||LO).toRgb(),i=n.a===1?n:{r:255*(1-n.a)+n.r*n.a,g:255*(1-n.a)+n.g*n.a,b:255*(1-n.a)+n.b*n.a},a={r:i.r*(1-r.a)+r.r*r.a,g:i.g*(1-r.a)+r.g*r.a,b:i.b*(1-r.a)+r.b*r.a};return bp(a).toRgbString()};fd.interpolate=function(e,t,r){var n=bp(e).toRgb(),i=bp(t).toRgb(),a={r:r*n.r+(1-r)*i.r,g:r*n.g+(1-r)*i.g,b:r*n.b+(1-r)*i.b};return bp(a).toRgbString()};fd.contrast=function(e,t,r){var n=bp(e);n.getAlpha()!==1&&(n=bp(fd.combine(e,LO)));var i=n.isDark()?t?n.lighten(t):LO:r?n.darken(r):Htt;return i.toString()};fd.stroke=function(e,t){var r=bp(t);e.style({stroke:fd.tinyRGB(r),"stroke-opacity":r.getAlpha()})};fd.fill=function(e,t){var r=bp(t);e.style({fill:fd.tinyRGB(r),"fill-opacity":r.getAlpha()})};fd.clean=function(e){if(!(!e||typeof e!="object")){var t=Object.keys(e),r,n,i,a;for(r=0;r<t.length;r++)if(i=t[r],a=e[i],i.slice(-5)==="color")if(Array.isArray(a))for(n=0;n<a.length;n++)a[n]=CO(a[n]);else e[i]=CO(a);else if(i.slice(-10)==="colorscale"&&Array.isArray(a))for(n=0;n<a.length;n++)Array.isArray(a[n])&&(a[n][1]=CO(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"&&!Gtt(a)&&fd.clean(a)}};function CO(e){if(Vtt(e)||typeof e!="string")return e;var t=e.trim();if(t.slice(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 N1=ye((Err,ete)=>{"use strict";ete.exports={SHOW_PLACEHOLDER:100,HIDE_PLACEHOLDER:1e3,DESELECTDIM:.2}});var o3=ye(tte=>{"use strict";tte.counter=function(e,t,r,n){var i=(t||"")+(r?"":"$"),a=n===!1?"":"^";return e==="xy"?new RegExp(a+"x([2-9]|[1-9][0-9]+)?y([2-9]|[1-9][0-9]+)?"+i):new RegExp(a+e+"([2-9]|[1-9][0-9]+)?"+i)}});var ate=ye(wp=>{"use strict";var PO=Eo(),rte=cd(),ite=Ao().extendFlat,jtt=Gl(),Wtt=lb(),Xtt=ka(),Ztt=N1().DESELECTDIM,s3=PS(),nte=o3().counter,Ytt=n3().modHalf,_g=vv().isArrayOrTypedArray,U1=vv().isTypedArraySpec,V1=vv().decodeTypedArraySpec;wp.valObjectMeta={data_array:{coerceFunction:function(e,t,r){t.set(_g(e)?e:U1(e)?V1(e):r)}},enumerated:{coerceFunction:function(e,t,r,n){n.coerceNumber&&(e=+e),n.values.indexOf(e)===-1?t.set(r):t.set(e)},validateFunction:function(e,t){t.coerceNumber&&(e=+e);for(var r=t.values,n=0;n<r.length;n++){var i=String(r[n]);if(i.charAt(0)==="/"&&i.charAt(i.length-1)==="/"){var a=new RegExp(i.slice(1,-1));if(a.test(e))return!0}else if(e===r[n])return!0}return!1}},boolean:{coerceFunction:function(e,t,r,n){let i=a=>a===!0||a===!1;i(e)||n.arrayOk&&Array.isArray(e)&&e.length>0&&e.every(i)?t.set(e):t.set(r)}},number:{coerceFunction:function(e,t,r,n){U1(e)&&(e=V1(e)),!PO(e)||n.min!==void 0&&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}U1(e)&&(e=V1(e)),e%1||!PO(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){U1(e)&&(e=V1(e)),rte(e).isValid()?t.set(e):t.set(r)}},colorlist:{coerceFunction:function(e,t,r){function n(i){return rte(i).isValid()}!Array.isArray(e)||!e.length?t.set(r):e.every(n)?t.set(e):t.set(r)}},colorscale:{coerceFunction:function(e,t,r){t.set(Wtt.get(e,r))}},angle:{coerceFunction:function(e,t,r){U1(e)&&(e=V1(e)),e==="auto"?t.set("auto"):PO(e)?t.set(Ytt(+e,360)):t.set(r)}},subplotid:{coerceFunction:function(e,t,r,n){var i=n.regex||nte(r);let a=o=>typeof o=="string"&&i.test(o);a(e)||n.arrayOk&&_g(e)&&e.length>0&&e.every(a)?t.set(e):t.set(r)},validateFunction:function(e,t){var r=t.dflt;return e===r?!0:typeof e!="string"?!1:!!nte(r).test(e)}},flaglist:{coerceFunction:function(e,t,r,n){if((n.extras||[]).indexOf(e)!==-1){t.set(e);return}if(typeof e!="string"){t.set(r);return}for(var i=e.split("+"),a=0;a<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(U1(e)?V1(e):e)}},info_array:{coerceFunction:function(e,t,r,n){function i(k,E,S){var L,x={set:function(C){L=C}};return S===void 0&&(S=E.dflt),wp.valObjectMeta[E.valType].coerceFunction(k,x,S,E),L}if(U1(e)&&(e=V1(e)),!_g(e)){t.set(r);return}var a=n.dimensions===2||n.dimensions==="1-2"&&Array.isArray(e)&&_g(e[0]),o=n.items,s=[],l=Array.isArray(o),u=l&&a&&_g(o[0]),c=a&&l&&!u,f=l&&!c?o.length:e.length,h,d,v,_,b,p;if(r=Array.isArray(r)?r:[],a)for(h=0;h<f;h++)for(s[h]=[],v=_g(e[h])?e[h]:[],c?b=o.length:l?b=o[h].length:b=v.length,d=0;d<b;d++)c?_=o[d]:l?_=o[h][d]:_=o,p=i(v[d],_,(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(!_g(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(!_g(e[a])||!t.freeLength&&e[a].length!==r[a].length)return!1;for(var o=0;o<e[a].length;o++)if(!b6(e[a][o],n?r[a][o]:r))return!1}else if(!b6(e[a],n?r[a]:r))return!1;return!0}}};wp.coerce=function(e,t,r,n,i){var a=s3(r,n).get(),o=s3(e,n),s=s3(t,n),l=o.get(),u=t._template;if(l===void 0&&u&&(l=s3(u,n).get(),u=0),i===void 0&&(i=a.dflt),a.arrayOk){if(_g(l))return s.set(l),l;if(U1(l))return l=V1(l),s.set(l),l}var c=wp.valObjectMeta[a.valType].coerceFunction;c(l,s,i,a);var f=s.get();return u&&f===i&&!b6(l,a)&&(l=s3(u,n).get(),c(l,s,i,a),f=s.get()),f};wp.coerce2=function(e,t,r,n,i){var a=s3(e,n),o=wp.coerce(e,t,r,n,i),s=a.get();return s!=null?o:!1};wp.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};wp.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?Xtt.contrast(l):r)}e(t+".fgopacity",s?.5:1)}};wp.coerceHoverinfo=function(e,t,r){var n=t._module.attributes,i=n.hoverinfo?n:jtt,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 wp.coerce(e,t,i,"hoverinfo",o)};wp.coerceSelectionMarkerOpacity=function(e,t){if(e.marker){var r=e.marker.opacity;if(r!==void 0){var n,i;!_g(r)&&!e.selected&&!e.unselected&&(n=r,i=Ztt*r),t("selected.marker.opacity",n),t("unselected.marker.opacity",i)}}};function b6(e,t){var r=wp.valObjectMeta[t.valType];if(t.arrayOk&&_g(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}wp.validate=b6});var cb=ye((Lrr,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 RO=ye((Prr,cte)=>{"use strict";var IO=Oa(),Ktt=Eo(),BS=[];cte.exports=function(e,t){if(BS.indexOf(e)!==-1)return;BS.push(e);var r=1e3;Ktt(t)?r=t:t==="long"&&(r=3e3);var n=IO.select("body").selectAll(".plotly-notifier").data([0]);n.enter().append("div").classed("plotly-notifier",!0);var i=n.selectAll(".notifier-note").data(BS);function a(o){o.duration(700).style("opacity",0).each("end",function(s){var l=BS.indexOf(s);l!==-1&&BS.splice(l,1),IO.select(this).remove()})}i.enter().append("div").classed("notifier-note",!0).style("opacity",0).each(function(o){var s=IO.select(this);s.append("button").classed("notifier-close",!0).html("&times;").on("click",function(){s.transition().call(a)});for(var l=s.append("p"),u=o.split(/<br\s*\/?>/g),c=0;c<u.length;c++)c&&l.append("br"),l.append("span").text(u[c]);t==="stick"?s.transition().duration(350).style("opacity",1):s.transition().duration(700).style("opacity",1).transition().delay(r).call(a)})}});var G1=ye((Irr,fte)=>{"use strict";var l3=cb().dfltConfig,DO=RO(),FO=fte.exports={};FO.log=function(){var e;if(l3.logging>1){var t=["LOG:"];for(e=0;e<arguments.length;e++)t.push(arguments[e]);console.trace.apply(console,t)}if(l3.notifyOnLogging>1){var r=[];for(e=0;e<arguments.length;e++)r.push(arguments[e]);DO(r.join("<br>"),"long")}};FO.warn=function(){var e;if(l3.logging>0){var t=["WARN:"];for(e=0;e<arguments.length;e++)t.push(arguments[e]);console.trace.apply(console,t)}if(l3.notifyOnLogging>0){var r=[];for(e=0;e<arguments.length;e++)r.push(arguments[e]);DO(r.join("<br>"),"stick")}};FO.error=function(){var e;if(l3.logging>0){var t=["ERROR:"];for(e=0;e<arguments.length;e++)t.push(arguments[e]);console.error.apply(console,t)}if(l3.notifyOnLogging>0){var r=[];for(e=0;e<arguments.length;e++)r.push(arguments[e]);DO(r.join("<br>"),"stick")}}});var w6=ye((Rrr,hte)=>{"use strict";hte.exports=function(){}});var zO=ye((Drr,dte)=>{"use strict";dte.exports=function(t,r){if(r instanceof RegExp){for(var n=r.toString(),i=0;i<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((Frr,vte)=>{vte.exports=Jtt;function Jtt(){var e=new Float32Array(16);return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var mte=ye((zrr,gte)=>{gte.exports=$tt;function $tt(e){var t=new Float32Array(16);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t}});var _te=ye((Orr,yte)=>{yte.exports=Qtt;function Qtt(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e}});var OO=ye((qrr,xte)=>{xte.exports=ert;function ert(e){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var wte=ye((Brr,bte)=>{bte.exports=trt;function trt(e,t){if(e===t){var r=t[1],n=t[2],i=t[3],a=t[6],o=t[7],s=t[11];e[1]=t[4],e[2]=t[8],e[3]=t[12],e[4]=r,e[6]=t[9],e[7]=t[13],e[8]=n,e[9]=a,e[11]=t[14],e[12]=i,e[13]=o,e[14]=s}else e[0]=t[0],e[1]=t[4],e[2]=t[8],e[3]=t[12],e[4]=t[1],e[5]=t[5],e[6]=t[9],e[7]=t[13],e[8]=t[2],e[9]=t[6],e[10]=t[10],e[11]=t[14],e[12]=t[3],e[13]=t[7],e[14]=t[11],e[15]=t[15];return e}});var Ate=ye((Nrr,Tte)=>{Tte.exports=rrt;function rrt(e,t){var r=t[0],n=t[1],i=t[2],a=t[3],o=t[4],s=t[5],l=t[6],u=t[7],c=t[8],f=t[9],h=t[10],d=t[11],v=t[12],_=t[13],b=t[14],p=t[15],k=r*s-n*o,E=r*l-i*o,S=r*u-a*o,L=n*l-i*s,x=n*u-a*s,C=i*u-a*l,M=c*_-f*v,g=c*b-h*v,P=c*p-d*v,T=f*b-h*_,z=f*p-d*_,O=h*p-d*b,V=k*O-E*z+S*T+L*P-x*g+C*M;return V?(V=1/V,e[0]=(s*O-l*z+u*T)*V,e[1]=(i*z-n*O-a*T)*V,e[2]=(_*C-b*x+p*L)*V,e[3]=(h*x-f*C-d*L)*V,e[4]=(l*P-o*O-u*g)*V,e[5]=(r*O-i*P+a*g)*V,e[6]=(b*S-v*C-p*E)*V,e[7]=(c*C-h*S+d*E)*V,e[8]=(o*z-s*P+u*M)*V,e[9]=(n*P-r*z-a*M)*V,e[10]=(v*x-_*S+p*k)*V,e[11]=(f*S-c*x-d*k)*V,e[12]=(s*g-o*T-l*M)*V,e[13]=(r*T-n*g+i*M)*V,e[14]=(_*E-v*L-b*k)*V,e[15]=(c*L-f*E+h*k)*V,e):null}});var Mte=ye((Urr,Ste)=>{Ste.exports=irt;function irt(e,t){var r=t[0],n=t[1],i=t[2],a=t[3],o=t[4],s=t[5],l=t[6],u=t[7],c=t[8],f=t[9],h=t[10],d=t[11],v=t[12],_=t[13],b=t[14],p=t[15];return e[0]=s*(h*p-d*b)-f*(l*p-u*b)+_*(l*d-u*h),e[1]=-(n*(h*p-d*b)-f*(i*p-a*b)+_*(i*d-a*h)),e[2]=n*(l*p-u*b)-s*(i*p-a*b)+_*(i*u-a*l),e[3]=-(n*(l*d-u*h)-s*(i*d-a*h)+f*(i*u-a*l)),e[4]=-(o*(h*p-d*b)-c*(l*p-u*b)+v*(l*d-u*h)),e[5]=r*(h*p-d*b)-c*(i*p-a*b)+v*(i*d-a*h),e[6]=-(r*(l*p-u*b)-o*(i*p-a*b)+v*(i*u-a*l)),e[7]=r*(l*d-u*h)-o*(i*d-a*h)+c*(i*u-a*l),e[8]=o*(f*p-d*_)-c*(s*p-u*_)+v*(s*d-u*f),e[9]=-(r*(f*p-d*_)-c*(n*p-a*_)+v*(n*d-a*f)),e[10]=r*(s*p-u*_)-o*(n*p-a*_)+v*(n*u-a*s),e[11]=-(r*(s*d-u*f)-o*(n*d-a*f)+c*(n*u-a*s)),e[12]=-(o*(f*b-h*_)-c*(s*b-l*_)+v*(s*h-l*f)),e[13]=r*(f*b-h*_)-c*(n*b-i*_)+v*(n*h-i*f),e[14]=-(r*(s*b-l*_)-o*(n*b-i*_)+v*(n*l-i*s)),e[15]=r*(s*h-l*f)-o*(n*h-i*f)+c*(n*l-i*s),e}});var kte=ye((Vrr,Ete)=>{Ete.exports=nrt;function nrt(e){var t=e[0],r=e[1],n=e[2],i=e[3],a=e[4],o=e[5],s=e[6],l=e[7],u=e[8],c=e[9],f=e[10],h=e[11],d=e[12],v=e[13],_=e[14],b=e[15],p=t*o-r*a,k=t*s-n*a,E=t*l-i*a,S=r*s-n*o,L=r*l-i*o,x=n*l-i*s,C=u*v-c*d,M=u*_-f*d,g=u*b-h*d,P=c*_-f*v,T=c*b-h*v,z=f*b-h*_;return p*z-k*T+E*P+S*g-L*M+x*C}});var Lte=ye((Grr,Cte)=>{Cte.exports=art;function art(e,t,r){var n=t[0],i=t[1],a=t[2],o=t[3],s=t[4],l=t[5],u=t[6],c=t[7],f=t[8],h=t[9],d=t[10],v=t[11],_=t[12],b=t[13],p=t[14],k=t[15],E=r[0],S=r[1],L=r[2],x=r[3];return e[0]=E*n+S*s+L*f+x*_,e[1]=E*i+S*l+L*h+x*b,e[2]=E*a+S*u+L*d+x*p,e[3]=E*o+S*c+L*v+x*k,E=r[4],S=r[5],L=r[6],x=r[7],e[4]=E*n+S*s+L*f+x*_,e[5]=E*i+S*l+L*h+x*b,e[6]=E*a+S*u+L*d+x*p,e[7]=E*o+S*c+L*v+x*k,E=r[8],S=r[9],L=r[10],x=r[11],e[8]=E*n+S*s+L*f+x*_,e[9]=E*i+S*l+L*h+x*b,e[10]=E*a+S*u+L*d+x*p,e[11]=E*o+S*c+L*v+x*k,E=r[12],S=r[13],L=r[14],x=r[15],e[12]=E*n+S*s+L*f+x*_,e[13]=E*i+S*l+L*h+x*b,e[14]=E*a+S*u+L*d+x*p,e[15]=E*o+S*c+L*v+x*k,e}});var Ite=ye((Hrr,Pte)=>{Pte.exports=ort;function ort(e,t,r){var n=r[0],i=r[1],a=r[2],o,s,l,u,c,f,h,d,v,_,b,p;return t===e?(e[12]=t[0]*n+t[4]*i+t[8]*a+t[12],e[13]=t[1]*n+t[5]*i+t[9]*a+t[13],e[14]=t[2]*n+t[6]*i+t[10]*a+t[14],e[15]=t[3]*n+t[7]*i+t[11]*a+t[15]):(o=t[0],s=t[1],l=t[2],u=t[3],c=t[4],f=t[5],h=t[6],d=t[7],v=t[8],_=t[9],b=t[10],p=t[11],e[0]=o,e[1]=s,e[2]=l,e[3]=u,e[4]=c,e[5]=f,e[6]=h,e[7]=d,e[8]=v,e[9]=_,e[10]=b,e[11]=p,e[12]=o*n+c*i+v*a+t[12],e[13]=s*n+f*i+_*a+t[13],e[14]=l*n+h*i+b*a+t[14],e[15]=u*n+d*i+p*a+t[15]),e}});var Dte=ye((jrr,Rte)=>{Rte.exports=srt;function srt(e,t,r){var n=r[0],i=r[1],a=r[2];return e[0]=t[0]*n,e[1]=t[1]*n,e[2]=t[2]*n,e[3]=t[3]*n,e[4]=t[4]*i,e[5]=t[5]*i,e[6]=t[6]*i,e[7]=t[7]*i,e[8]=t[8]*a,e[9]=t[9]*a,e[10]=t[10]*a,e[11]=t[11]*a,e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e}});var zte=ye((Wrr,Fte)=>{Fte.exports=lrt;function lrt(e,t,r,n){var i=n[0],a=n[1],o=n[2],s=Math.sqrt(i*i+a*a+o*o),l,u,c,f,h,d,v,_,b,p,k,E,S,L,x,C,M,g,P,T,z,O,V,G;return Math.abs(s)<1e-6?null:(s=1/s,i*=s,a*=s,o*=s,l=Math.sin(r),u=Math.cos(r),c=1-u,f=t[0],h=t[1],d=t[2],v=t[3],_=t[4],b=t[5],p=t[6],k=t[7],E=t[8],S=t[9],L=t[10],x=t[11],C=i*i*c+u,M=a*i*c+o*l,g=o*i*c-a*l,P=i*a*c-o*l,T=a*a*c+u,z=o*a*c+i*l,O=i*o*c+a*l,V=a*o*c-i*l,G=o*o*c+u,e[0]=f*C+_*M+E*g,e[1]=h*C+b*M+S*g,e[2]=d*C+p*M+L*g,e[3]=v*C+k*M+x*g,e[4]=f*P+_*T+E*z,e[5]=h*P+b*T+S*z,e[6]=d*P+p*T+L*z,e[7]=v*P+k*T+x*z,e[8]=f*O+_*V+E*G,e[9]=h*O+b*V+S*G,e[10]=d*O+p*V+L*G,e[11]=v*O+k*V+x*G,t!==e&&(e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e)}});var qte=ye((Xrr,Ote)=>{Ote.exports=urt;function urt(e,t,r){var n=Math.sin(r),i=Math.cos(r),a=t[4],o=t[5],s=t[6],l=t[7],u=t[8],c=t[9],f=t[10],h=t[11];return t!==e&&(e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[4]=a*i+u*n,e[5]=o*i+c*n,e[6]=s*i+f*n,e[7]=l*i+h*n,e[8]=u*i-a*n,e[9]=c*i-o*n,e[10]=f*i-s*n,e[11]=h*i-l*n,e}});var Nte=ye((Zrr,Bte)=>{Bte.exports=crt;function crt(e,t,r){var n=Math.sin(r),i=Math.cos(r),a=t[0],o=t[1],s=t[2],l=t[3],u=t[8],c=t[9],f=t[10],h=t[11];return t!==e&&(e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[0]=a*i-u*n,e[1]=o*i-c*n,e[2]=s*i-f*n,e[3]=l*i-h*n,e[8]=a*n+u*i,e[9]=o*n+c*i,e[10]=s*n+f*i,e[11]=l*n+h*i,e}});var Vte=ye((Yrr,Ute)=>{Ute.exports=frt;function frt(e,t,r){var n=Math.sin(r),i=Math.cos(r),a=t[0],o=t[1],s=t[2],l=t[3],u=t[4],c=t[5],f=t[6],h=t[7];return t!==e&&(e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[0]=a*i+u*n,e[1]=o*i+c*n,e[2]=s*i+f*n,e[3]=l*i+h*n,e[4]=u*i-a*n,e[5]=c*i-o*n,e[6]=f*i-s*n,e[7]=h*i-l*n,e}});var Hte=ye((Krr,Gte)=>{Gte.exports=hrt;function hrt(e,t,r){var n,i,a,o=r[0],s=r[1],l=r[2],u=Math.sqrt(o*o+s*s+l*l);return Math.abs(u)<1e-6?null:(u=1/u,o*=u,s*=u,l*=u,n=Math.sin(t),i=Math.cos(t),a=1-i,e[0]=o*o*a+i,e[1]=s*o*a+l*n,e[2]=l*o*a-s*n,e[3]=0,e[4]=o*s*a-l*n,e[5]=s*s*a+i,e[6]=l*s*a+o*n,e[7]=0,e[8]=o*l*a+s*n,e[9]=s*l*a-o*n,e[10]=l*l*a+i,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e)}});var Wte=ye((Jrr,jte)=>{jte.exports=drt;function drt(e,t,r){var n=t[0],i=t[1],a=t[2],o=t[3],s=n+n,l=i+i,u=a+a,c=n*s,f=n*l,h=n*u,d=i*l,v=i*u,_=a*u,b=o*s,p=o*l,k=o*u;return e[0]=1-(d+_),e[1]=f+k,e[2]=h-p,e[3]=0,e[4]=f-k,e[5]=1-(c+_),e[6]=v+b,e[7]=0,e[8]=h+p,e[9]=v-b,e[10]=1-(c+d),e[11]=0,e[12]=r[0],e[13]=r[1],e[14]=r[2],e[15]=1,e}});var Zte=ye(($rr,Xte)=>{Xte.exports=vrt;function vrt(e,t){return e[0]=t[0],e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=t[1],e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=t[2],e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var Kte=ye((Qrr,Yte)=>{Yte.exports=prt;function prt(e,t){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=t[0],e[13]=t[1],e[14]=t[2],e[15]=1,e}});var $te=ye((eir,Jte)=>{Jte.exports=grt;function grt(e,t){var r=Math.sin(t),n=Math.cos(t);return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=n,e[6]=r,e[7]=0,e[8]=0,e[9]=-r,e[10]=n,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var ere=ye((tir,Qte)=>{Qte.exports=mrt;function mrt(e,t){var r=Math.sin(t),n=Math.cos(t);return e[0]=n,e[1]=0,e[2]=-r,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=r,e[9]=0,e[10]=n,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var rre=ye((rir,tre)=>{tre.exports=yrt;function yrt(e,t){var r=Math.sin(t),n=Math.cos(t);return e[0]=n,e[1]=r,e[2]=0,e[3]=0,e[4]=-r,e[5]=n,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var nre=ye((iir,ire)=>{ire.exports=_rt;function _rt(e,t){var r=t[0],n=t[1],i=t[2],a=t[3],o=r+r,s=n+n,l=i+i,u=r*o,c=n*o,f=n*s,h=i*o,d=i*s,v=i*l,_=a*o,b=a*s,p=a*l;return e[0]=1-f-v,e[1]=c+p,e[2]=h-b,e[3]=0,e[4]=c-p,e[5]=1-u-v,e[6]=d+_,e[7]=0,e[8]=h+b,e[9]=d-_,e[10]=1-u-f,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var ore=ye((nir,are)=>{are.exports=xrt;function xrt(e,t,r,n,i,a,o){var s=1/(r-t),l=1/(i-n),u=1/(a-o);return e[0]=a*2*s,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=a*2*l,e[6]=0,e[7]=0,e[8]=(r+t)*s,e[9]=(i+n)*l,e[10]=(o+a)*u,e[11]=-1,e[12]=0,e[13]=0,e[14]=o*a*2*u,e[15]=0,e}});var lre=ye((air,sre)=>{sre.exports=brt;function brt(e,t,r,n,i){var a=1/Math.tan(t/2),o=1/(n-i);return e[0]=a/r,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=a,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=(i+n)*o,e[11]=-1,e[12]=0,e[13]=0,e[14]=2*i*n*o,e[15]=0,e}});var cre=ye((oir,ure)=>{ure.exports=wrt;function wrt(e,t,r,n){var i=Math.tan(t.upDegrees*Math.PI/180),a=Math.tan(t.downDegrees*Math.PI/180),o=Math.tan(t.leftDegrees*Math.PI/180),s=Math.tan(t.rightDegrees*Math.PI/180),l=2/(o+s),u=2/(i+a);return e[0]=l,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=u,e[6]=0,e[7]=0,e[8]=-((o-s)*l*.5),e[9]=(i-a)*u*.5,e[10]=n/(r-n),e[11]=-1,e[12]=0,e[13]=0,e[14]=n*r/(r-n),e[15]=0,e}});var hre=ye((sir,fre)=>{fre.exports=Trt;function Trt(e,t,r,n,i,a,o){var s=1/(t-r),l=1/(n-i),u=1/(a-o);return e[0]=-2*s,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=-2*l,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=2*u,e[11]=0,e[12]=(t+r)*s,e[13]=(i+n)*l,e[14]=(o+a)*u,e[15]=1,e}});var vre=ye((lir,dre)=>{var Art=OO();dre.exports=Srt;function Srt(e,t,r,n){var i,a,o,s,l,u,c,f,h,d,v=t[0],_=t[1],b=t[2],p=n[0],k=n[1],E=n[2],S=r[0],L=r[1],x=r[2];return Math.abs(v-S)<1e-6&&Math.abs(_-L)<1e-6&&Math.abs(b-x)<1e-6?Art(e):(c=v-S,f=_-L,h=b-x,d=1/Math.sqrt(c*c+f*f+h*h),c*=d,f*=d,h*=d,i=k*h-E*f,a=E*c-p*h,o=p*f-k*c,d=Math.sqrt(i*i+a*a+o*o),d?(d=1/d,i*=d,a*=d,o*=d):(i=0,a=0,o=0),s=f*o-h*a,l=h*i-c*o,u=c*a-f*i,d=Math.sqrt(s*s+l*l+u*u),d?(d=1/d,s*=d,l*=d,u*=d):(s=0,l=0,u=0),e[0]=i,e[1]=s,e[2]=c,e[3]=0,e[4]=a,e[5]=l,e[6]=f,e[7]=0,e[8]=o,e[9]=u,e[10]=h,e[11]=0,e[12]=-(i*v+a*_+o*b),e[13]=-(s*v+l*_+u*b),e[14]=-(c*v+f*_+h*b),e[15]=1,e)}});var gre=ye((uir,pre)=>{pre.exports=Mrt;function Mrt(e){return"mat4("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+", "+e[4]+", "+e[5]+", "+e[6]+", "+e[7]+", "+e[8]+", "+e[9]+", "+e[10]+", "+e[11]+", "+e[12]+", "+e[13]+", "+e[14]+", "+e[15]+")"}});var qO=ye((cir,mre)=>{mre.exports={create:pte(),clone:mte(),copy:_te(),identity:OO(),transpose:wte(),invert:Ate(),adjoint:Mte(),determinant:kte(),multiply:Lte(),translate:Ite(),scale:Dte(),rotate:zte(),rotateX:qte(),rotateY:Nte(),rotateZ:Vte(),fromRotation:Hte(),fromRotationTranslation:Wte(),fromScaling:Zte(),fromTranslation:Kte(),fromXRotation:$te(),fromYRotation:ere(),fromZRotation:rre(),fromQuat:nre(),frustum:ore(),perspective:lre(),perspectiveFromFieldOfView:cre(),ortho:hre(),lookAt:vre(),str:gre()}});var T6=ye(fh=>{"use strict";var Ert=qO();fh.init2dArray=function(e,t){for(var r=new Array(e),n=0;n<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 Ert.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 NS=ye((hir,Tre)=>{"use strict";var krt=Oa(),yre=G1(),Crt=T6(),Lrt=qO();function Prt(e){var t;if(typeof e=="string"){if(t=document.getElementById(e),t===null)throw new Error("No DOM element with id '"+e+"' exists on the page.");return t}else if(e==null)throw new Error("DOM element provided is null or undefined");return e}function Irt(e){var t=krt.select(e);return t.node()instanceof HTMLElement&&t.size()&&t.classed("js-plotly-plot")}function _re(e){var t=e&&e.parentNode;t&&t.removeChild(e)}function Rrt(e,t){xre("global",e,t)}function xre(e,t,r){var n="plotly.js-style-"+e,i=document.getElementById(n);if(!(i&&i.matches(".no-inline-styles"))){i||(i=document.createElement("style"),i.setAttribute("id",n),i.appendChild(document.createTextNode("")),document.head.appendChild(i));var a=i.sheet;a?a.insertRule?a.insertRule(t+"{"+r+"}",0):a.addRule?a.addRule(t,r,0):yre.warn("addStyleRule failed"):yre.warn("Cannot addRelatedStyleRule, probably due to strict CSP...")}}function Drt(e){var t="plotly.js-style-"+e,r=document.getElementById(t);r&&_re(r)}function Frt(e,t,r,n,i,a){var o=n.split(":"),s=i.split(":"),l="data-btn-style-event-added";a||(a=document),a.querySelectorAll(e).forEach(function(u){u.getAttribute(l)||(u.addEventListener("mouseenter",function(){var c=this.querySelector(r);c&&(c.style[o[0]]=o[1])}),u.addEventListener("mouseleave",function(){var c=this.querySelector(r);c&&(t&&this.matches(t)?c.style[o[0]]=o[1]:c.style[s[0]]=s[1])}),u.setAttribute(l,!0))})}function zrt(e){var t=wre(e),r=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];return t.forEach(function(n){var i=bre(n);if(i){var a=Crt.convertCssMatrix(i);r=Lrt.multiply(r,r,a)}}),r}function bre(e){var t=window.getComputedStyle(e,null),r=t.getPropertyValue("-webkit-transform")||t.getPropertyValue("-moz-transform")||t.getPropertyValue("-ms-transform")||t.getPropertyValue("-o-transform")||t.getPropertyValue("transform");return r==="none"?null:r.replace("matrix","").replace("3d","").slice(1,-1).split(",").map(function(n){return+n})}function wre(e){for(var t=[];Ort(e);)t.push(e),e=e.parentNode,typeof ShadowRoot=="function"&&e instanceof ShadowRoot&&(e=e.host);return t}function Ort(e){return e&&(e instanceof Element||e instanceof HTMLElement)}function qrt(e,t){return e&&t&&e.top===t.top&&e.left===t.left&&e.right===t.right&&e.bottom===t.bottom}Tre.exports={getGraphDiv:Prt,isPlotDiv:Irt,removeElement:_re,addStyleRule:Rrt,addRelatedStyleRule:xre,deleteRelatedStyleRule:Drt,setStyleOnHover:Frt,getFullTransformMatrix:zrt,getElementTransformMatrix:bre,getElementAndAncestors:wre,equalDomRects:qrt}});var US=ye((dir,Are)=>{"use strict";Are.exports={mode:{valType:"enumerated",dflt:"afterall",values:["immediate","next","afterall"]},direction:{valType:"enumerated",values:["forward","reverse"],dflt:"forward"},fromcurrent:{valType:"boolean",dflt:!1},frame:{duration:{valType:"number",min:0,dflt:500},redraw:{valType:"boolean",dflt:!0}},transition:{duration:{valType:"number",min:0,dflt:500,editType:"none"},easing:{valType:"enumerated",dflt:"cubic-in-out",values:["linear","quad","cubic","sin","exp","circle","elastic","back","bounce","linear-in","quad-in","cubic-in","sin-in","exp-in","circle-in","elastic-in","back-in","bounce-in","linear-out","quad-out","cubic-out","sin-out","exp-out","circle-out","elastic-out","back-out","bounce-out","linear-in-out","quad-in-out","cubic-in-out","sin-in-out","exp-in-out","circle-in-out","elastic-in-out","back-in-out","bounce-in-out"],editType:"none"},ordering:{valType:"enumerated",values:["layout first","traces first"],dflt:"layout first",editType:"none"}}}});var mc=ye((vir,Pre)=>{"use strict";var Mre=Ao().extendFlat,Brt=my(),Ere={valType:"flaglist",extras:["none"],flags:["calc","clearAxisTypes","plot","style","markerSize","colorbars"]},kre={valType:"flaglist",extras:["none"],flags:["calc","plot","legend","ticks","axrange","layoutstyle","modebar","camera","arraydraw","colorbars"]},Nrt=Ere.flags.slice().concat(["fullReplot"]),Urt=kre.flags.slice().concat("layoutReplot");Pre.exports={traces:Ere,layout:kre,traceFlags:function(){return Sre(Nrt)},layoutFlags:function(){return Sre(Urt)},update:function(e,t){var r=t.editType;if(r&&r!=="none")for(var n=r.split("+"),i=0;i<n.length;i++)e[n[i]]=!0},overrideAll:Cre};function Sre(e){for(var t={},r=0;r<e.length;r++)t[e[r]]=!1;return t}function Cre(e,t,r){var n=Mre({},e);for(var i in n){var a=n[i];Brt(a)&&(n[i]=Lre(a,t,r,i))}return r==="from-root"&&(n.editType=t),n}function Lre(e,t,r,n){if(e.valType){var i=Mre({},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]=Lre(e.items[a],t,"from-root")}return i}else return Cre(e,t,n.charAt(0)==="_"?"nested":"from-root")}});var Pd=ye(BO=>{"use strict";BO.dash={valType:"string",values:["solid","dot","dash","longdash","dashdot","longdashdot"],dflt:"solid",editType:"style"};BO.pattern={shape:{valType:"enumerated",values:["","/","\\","x","-","|","+","."],dflt:"",arrayOk:!0,editType:"style"},path:{valType:"string",arrayOk:!0,editType:"style"},fillmode:{valType:"enumerated",values:["replace","overlay"],dflt:"replace",editType:"style"},bgcolor:{valType:"color",arrayOk:!0,editType:"style"},fgcolor:{valType:"color",arrayOk:!0,editType:"style"},fgopacity:{valType:"number",editType:"style",min:0,max:1},size:{valType:"number",min:0,dflt:8,arrayOk:!0,editType:"style"},solidity:{valType:"number",min:0,max:1,dflt:.3,arrayOk:!0,editType:"style"},editType:"style"}});var NO=ye((gir,Ire)=>{"use strict";Ire.exports={FORMAT_LINK:"https://github.com/d3/d3-format/tree/v1.4.5#d3-format",DATE_FORMAT_LINK:"https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format"}});var Ll=ye(u3=>{"use strict";var{DATE_FORMAT_LINK:Vrt,FORMAT_LINK:Grt}=NO(),Hrt=["Variables that can't be found will be replaced with the specifier.",'For example, a template of "data: %{x}, %{y}" will result in a value of "data: 1, %{y}" if x is 1 and y is missing.',"Variables with an undefined value will be replaced with the fallback value."].join(" ");function jrt({supportOther:e}={}){return["Variables are inserted using %{variable},",'for example "y: %{y}"'+(e?" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown.":"."),`Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example "Price: %{y:$.2f}".`,Grt,"for details on the formatting syntax.",`Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example "Day: %{2019-01-01|%A}".`,Vrt,"for details on the date formatting syntax.",Hrt].join(" ")}u3.templateFormatStringDescription=jrt;u3.hovertemplateAttrs=({editType:e="none",arrayOk:t}={},r={})=>mg({valType:"string",dflt:"",editType:e},t!==!1?{arrayOk:!0}:{});u3.texttemplateAttrs=({editType:e="calc",arrayOk:t}={},r={})=>mg({valType:"string",dflt:"",editType:e},t!==!1?{arrayOk:!0}:{});u3.shapeTexttemplateAttrs=({editType:e="arraydraw",newshape:t}={},r={})=>({valType:"string",dflt:"",editType:e});u3.templatefallbackAttrs=({editType:e="none"}={})=>({valType:"any",dflt:"-",editType:e})});var M6=ye((_ir,qre)=>{"use strict";function H1(e,t){return t?t.d2l(e):e}function Rre(e,t){return t?t.l2d(e):e}function Wrt(e){return e.x0}function Xrt(e){return e.x1}function Zrt(e){return e.y0}function Yrt(e){return e.y1}function Dre(e){return e.x0shift||0}function Fre(e){return e.x1shift||0}function zre(e){return e.y0shift||0}function Ore(e){return e.y1shift||0}function A6(e,t){return H1(e.x1,t)+Fre(e)-H1(e.x0,t)-Dre(e)}function S6(e,t,r){return H1(e.y1,r)+Ore(e)-H1(e.y0,r)-zre(e)}function Krt(e,t){return Math.abs(A6(e,t))}function Jrt(e,t,r){return Math.abs(S6(e,t,r))}function $rt(e,t,r){return e.type!=="line"?void 0:Math.sqrt(Math.pow(A6(e,t),2)+Math.pow(S6(e,t,r),2))}function Qrt(e,t){return Rre((H1(e.x1,t)+Fre(e)+H1(e.x0,t)+Dre(e))/2,t)}function eit(e,t,r){return Rre((H1(e.y1,r)+Ore(e)+H1(e.y0,r)+zre(e))/2,r)}function tit(e,t,r){return e.type!=="line"?void 0:S6(e,t,r)/A6(e,t)}qre.exports={x0:Wrt,x1:Xrt,y0:Zrt,y1:Yrt,slope:tit,dx:A6,dy:S6,width:Krt,height:Jrt,length:$rt,xcenter:Qrt,ycenter:eit}});var Ure=ye((xir,Nre)=>{"use strict";var rit=mc().overrideAll,fb=Gl(),Bre=ec(),iit=Pd().dash,j1=Ao().extendFlat,{shapeTexttemplateAttrs:nit,templatefallbackAttrs:ait}=Ll(),oit=M6();Nre.exports=rit({newshape:{visible:j1({},fb.visible,{}),showlegend:{valType:"boolean",dflt:!1},legend:j1({},fb.legend,{}),legendgroup:j1({},fb.legendgroup,{}),legendgrouptitle:{text:j1({},fb.legendgrouptitle.text,{}),font:Bre({})},legendrank:j1({},fb.legendrank,{}),legendwidth:j1({},fb.legendwidth,{}),line:{color:{valType:"color"},width:{valType:"number",min:0,dflt:4},dash:j1({},iit,{dflt:"solid"})},fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)"},fillrule:{valType:"enumerated",values:["evenodd","nonzero"],dflt:"evenodd"},opacity:{valType:"number",min:0,max:1,dflt:1},layer:{valType:"enumerated",values:["below","above","between"],dflt:"above"},drawdirection:{valType:"enumerated",values:["ortho","horizontal","vertical","diagonal"],dflt:"diagonal"},name:j1({},fb.name,{}),label:{text:{valType:"string",dflt:""},texttemplate:nit({newshape:!0},{keys:Object.keys(oit)}),texttemplatefallback:ait({editType:"arraydraw"}),font:Bre({}),textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right","start","middle","end"]},textangle:{valType:"angle",dflt:"auto"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto"},yanchor:{valType:"enumerated",values:["top","middle","bottom"]},padding:{valType:"number",dflt:3,min:0}}},activeshape:{fillcolor:{valType:"color",dflt:"rgb(255,0,255)",description:"Sets the color filling the active shape' interior."},opacity:{valType:"number",min:0,max:1,dflt:.5}}},"none","from-root")});var Gre=ye((bir,Vre)=>{"use strict";var sit=Pd().dash,lit=Ao().extendFlat;Vre.exports={newselection:{mode:{valType:"enumerated",values:["immediate","gradual"],dflt:"immediate",editType:"none"},line:{color:{valType:"color",editType:"none"},width:{valType:"number",min:1,dflt:1,editType:"none"},dash:lit({},sit,{dflt:"dot",editType:"none"}),editType:"none"},editType:"none"},activeselection:{fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"none"},opacity:{valType:"number",min:0,max:1,dflt:.5,editType:"none"},editType:"none"}}});var E6=ye((wir,Hre)=>{"use strict";Hre.exports=function(e){var t=e.editType;return{t:{valType:"number",dflt:0,editType:t},r:{valType:"number",dflt:0,editType:t},b:{valType:"number",dflt:0,editType:t},l:{valType:"number",dflt:0,editType:t},editType:t}}});var c3=ye((Tir,Zre)=>{"use strict";var UO=ec(),uit=US(),k6=Lh(),jre=Ure(),Wre=Gre(),cit=E6(),Xre=Ao().extendFlat,C6=UO({editType:"calc"});C6.family.dflt='"Open Sans", verdana, arial, sans-serif';C6.size.dflt=12;C6.color.dflt=k6.defaultLine;Zre.exports={font:C6,title:{text:{valType:"string",editType:"layoutstyle"},font:UO({editType:"layoutstyle"}),subtitle:{text:{valType:"string",editType:"layoutstyle"},font:UO({editType:"layoutstyle"}),editType:"layoutstyle"},xref:{valType:"enumerated",dflt:"container",values:["container","paper"],editType:"layoutstyle"},yref:{valType:"enumerated",dflt:"container",values:["container","paper"],editType:"layoutstyle"},x:{valType:"number",min:0,max:1,dflt:.5,editType:"layoutstyle"},y:{valType:"number",min:0,max:1,dflt:"auto",editType:"layoutstyle"},xanchor:{valType:"enumerated",dflt:"auto",values:["auto","left","center","right"],editType:"layoutstyle"},yanchor:{valType:"enumerated",dflt:"auto",values:["auto","top","middle","bottom"],editType:"layoutstyle"},pad:Xre(cit({editType:"layoutstyle"}),{}),automargin:{valType:"boolean",dflt:!1,editType:"plot"},editType:"layoutstyle"},uniformtext:{mode:{valType:"enumerated",values:[!1,"hide","show"],dflt:!1,editType:"plot"},minsize:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"plot"},autosize:{valType:"boolean",dflt:!1,editType:"none"},width:{valType:"number",min:10,dflt:700,editType:"plot"},height:{valType:"number",min:10,dflt:450,editType:"plot"},minreducedwidth:{valType:"number",min:2,dflt:64,editType:"plot"},minreducedheight:{valType:"number",min:2,dflt:64,editType:"plot"},margin:{l:{valType:"number",min:0,dflt:80,editType:"plot"},r:{valType:"number",min:0,dflt:80,editType:"plot"},t:{valType:"number",min:0,dflt:100,editType:"plot"},b:{valType:"number",min:0,dflt:80,editType:"plot"},pad:{valType:"number",min:0,dflt:0,editType:"plot"},autoexpand:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},computed:{valType:"any",editType:"none"},paper_bgcolor:{valType:"color",dflt:k6.background,editType:"plot"},plot_bgcolor:{valType:"color",dflt:k6.background,editType:"layoutstyle"},autotypenumbers:{valType:"enumerated",values:["convert types","strict"],dflt:"convert types",editType:"calc"},separators:{valType:"string",editType:"plot"},hidesources:{valType:"boolean",dflt:!1,editType:"plot"},showlegend:{valType:"boolean",editType:"legend"},colorway:{valType:"colorlist",dflt:k6.defaults,editType:"calc"},datarevision:{valType:"any",editType:"calc"},uirevision:{valType:"any",editType:"none"},editrevision:{valType:"any",editType:"none"},selectionrevision:{valType:"any",editType:"none"},template:{valType:"any",editType:"calc"},newshape:jre.newshape,activeshape:jre.activeshape,newselection:Wre.newselection,activeselection:Wre.activeselection,meta:{valType:"any",arrayOk:!0,editType:"plot"},transition:Xre({},uit.transition,{editType:"none"})}});var Yre=ye(()=>{(function(){if(!document.getElementById("696e55e75aaafa12d45b3ff634eadc8348f9c3015fc94984dac1ff824773eb97")){var e=document.createElement("style");e.id="696e55e75aaafa12d45b3ff634eadc8348f9c3015fc94984dac1ff824773eb97",e.textContent=`.maplibregl-map{font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative;-webkit-tap-highlight-color:rgb(0 0 0/0)}.maplibregl-canvas{left:0;position:absolute;top:0}.maplibregl-map:fullscreen{height:100%;width:100%}.maplibregl-ctrl-group button.maplibregl-ctrl-compass{touch-action:none}.maplibregl-canvas-container.maplibregl-interactive,.maplibregl-ctrl-group button.maplibregl-ctrl-compass{cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-canvas-container.maplibregl-interactive.maplibregl-track-pointer{cursor:pointer}.maplibregl-canvas-container.maplibregl-interactive:active,.maplibregl-ctrl-group button.maplibregl-ctrl-compass:active{cursor:grabbing}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-canvas-container.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:pinch-zoom}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:none}.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures,.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-ctrl-bottom-left,.maplibregl-ctrl-bottom-right,.maplibregl-ctrl-top-left,.maplibregl-ctrl-top-right{pointer-events:none;position:absolute;z-index:2}.maplibregl-ctrl-top-left{left:0;top:0}.maplibregl-ctrl-top-right{right:0;top:0}.maplibregl-ctrl-bottom-left{bottom:0;left:0}.maplibregl-ctrl-bottom-right{bottom:0;right:0}.maplibregl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.maplibregl-ctrl-top-left .maplibregl-ctrl{float:left;margin:10px 0 0 10px}.maplibregl-ctrl-top-right .maplibregl-ctrl{float:right;margin:10px 10px 0 0}.maplibregl-ctrl-bottom-left .maplibregl-ctrl{float:left;margin:0 0 10px 10px}.maplibregl-ctrl-bottom-right .maplibregl-ctrl{float:right;margin:0 10px 10px 0}.maplibregl-ctrl-group{background:#fff;border-radius:4px}.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px rgba(0,0,0,.1)}@media (forced-colors:active){.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}.maplibregl-ctrl-group button{background-color:transparent;border:0;box-sizing:border-box;cursor:pointer;display:block;height:29px;outline:none;padding:0;width:29px}.maplibregl-ctrl-group button+button{border-top:1px solid #ddd}.maplibregl-ctrl button .maplibregl-ctrl-icon{background-position:50%;background-repeat:no-repeat;display:block;height:100%;width:100%}@media (forced-colors:active){.maplibregl-ctrl-icon{background-color:transparent}.maplibregl-ctrl-group button+button{border-top:1px solid ButtonText}}.maplibregl-ctrl button::-moz-focus-inner{border:0;padding:0}.maplibregl-ctrl-attrib-button:focus,.maplibregl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl button:disabled{cursor:not-allowed}.maplibregl-ctrl button:disabled .maplibregl-ctrl-icon{opacity:.25}.maplibregl-ctrl button:not(:disabled):hover{background-color:rgb(0 0 0/5%)}.maplibregl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.maplibregl-ctrl-group button:focus:first-child{border-radius:4px 4px 0 0}.maplibregl-ctrl-group button:focus:last-child{border-radius:0 0 4px 4px}.maplibregl-ctrl-group button:focus:only-child{border-radius:inherit}.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-terrain .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%23333' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-terrain-enabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%2333b5e5' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23aaa' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-waiting .maplibregl-ctrl-icon{animation:maplibregl-spin 2s linear infinite}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23999' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23666' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}}@keyframes maplibregl-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;cursor:pointer;display:block;height:23px;margin:0 0 -4px -4px;overflow:hidden;width:88px}a.maplibregl-ctrl-logo.maplibregl-compact{width:14px}@media (forced-colors:active){a.maplibregl-ctrl-logo{background-color:transparent;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}.maplibregl-ctrl.maplibregl-ctrl-attrib{background-color:hsla(0,0%,100%,.5);margin:0;padding:0 5px}@media screen{.maplibregl-ctrl-attrib.maplibregl-compact{background-color:#fff;border-radius:12px;box-sizing:content-box;color:#000;margin:10px;min-height:20px;padding:2px 24px 2px 0;position:relative}.maplibregl-ctrl-attrib.maplibregl-compact-show{padding:2px 28px 2px 8px;visibility:visible}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact-show,.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact-show{border-radius:12px;padding:2px 8px 2px 28px}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-inner{display:none}.maplibregl-ctrl-attrib-button{background-color:hsla(0,0%,100%,.5);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E");border:0;border-radius:12px;box-sizing:border-box;cursor:pointer;display:none;height:24px;outline:none;position:absolute;right:0;top:0;width:24px}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;list-style:none}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button::-webkit-details-marker{display:none}.maplibregl-ctrl-bottom-left .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-top-left .maplibregl-ctrl-attrib-button{left:0}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-inner{display:block}.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-button{background-color:rgb(0 0 0/5%)}.maplibregl-ctrl-bottom-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;right:0}.maplibregl-ctrl-top-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{right:0;top:0}.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{left:0;top:0}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;left:0}}@media screen and (forced-colors:active){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='%23fff' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}@media screen and (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}.maplibregl-ctrl-attrib a{color:rgba(0,0,0,.75);text-decoration:none}.maplibregl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.maplibregl-attrib-empty{display:none}.maplibregl-ctrl-scale{background-color:hsla(0,0%,100%,.75);border:2px solid #333;border-top:#333;box-sizing:border-box;color:#333;font-size:10px;padding:0 5px}.maplibregl-popup{display:flex;left:0;pointer-events:none;position:absolute;top:0;will-change:transform}.maplibregl-popup-anchor-top,.maplibregl-popup-anchor-top-left,.maplibregl-popup-anchor-top-right{flex-direction:column}.maplibregl-popup-anchor-bottom,.maplibregl-popup-anchor-bottom-left,.maplibregl-popup-anchor-bottom-right{flex-direction:column-reverse}.maplibregl-popup-anchor-left{flex-direction:row}.maplibregl-popup-anchor-right{flex-direction:row-reverse}.maplibregl-popup-tip{border:10px solid transparent;height:0;width:0;z-index:1}.maplibregl-popup-anchor-top .maplibregl-popup-tip{align-self:center;border-bottom-color:#fff;border-top:none}.maplibregl-popup-anchor-top-left .maplibregl-popup-tip{align-self:flex-start;border-bottom-color:#fff;border-left:none;border-top:none}.maplibregl-popup-anchor-top-right .maplibregl-popup-tip{align-self:flex-end;border-bottom-color:#fff;border-right:none;border-top:none}.maplibregl-popup-anchor-bottom .maplibregl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.maplibregl-popup-anchor-left .maplibregl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.maplibregl-popup-anchor-right .maplibregl-popup-tip{align-self:center;border-left-color:#fff;border-right:none}.maplibregl-popup-close-button{background-color:transparent;border:0;border-radius:0 3px 0 0;cursor:pointer;position:absolute;right:0;top:0}.maplibregl-popup-close-button:hover{background-color:rgb(0 0 0/5%)}.maplibregl-popup-content{background:#fff;border-radius:3px;box-shadow:0 1px 2px rgba(0,0,0,.1);padding:15px 10px;pointer-events:auto;position:relative}.maplibregl-popup-anchor-top-left .maplibregl-popup-content{border-top-left-radius:0}.maplibregl-popup-anchor-top-right .maplibregl-popup-content{border-top-right-radius:0}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-content{border-bottom-left-radius:0}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-content{border-bottom-right-radius:0}.maplibregl-popup-track-pointer{display:none}.maplibregl-popup-track-pointer *{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-map:hover .maplibregl-popup-track-pointer{display:flex}.maplibregl-map:active .maplibregl-popup-track-pointer{display:none}.maplibregl-marker{left:0;position:absolute;top:0;transition:opacity .2s;will-change:transform}.maplibregl-user-location-dot,.maplibregl-user-location-dot:before{background-color:#1da1f2;border-radius:50%;height:15px;width:15px}.maplibregl-user-location-dot:before{animation:maplibregl-user-location-dot-pulse 2s infinite;content:"";position:absolute}.maplibregl-user-location-dot:after{border:2px solid #fff;border-radius:50%;box-shadow:0 0 3px rgba(0,0,0,.35);box-sizing:border-box;content:"";height:19px;left:-2px;position:absolute;top:-2px;width:19px}@keyframes maplibregl-user-location-dot-pulse{0%{opacity:1;transform:scale(1)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(1)}}.maplibregl-user-location-dot-stale{background-color:#aaa}.maplibregl-user-location-dot-stale:after{display:none}.maplibregl-user-location-accuracy-circle{background-color:#1da1f233;border-radius:100%;height:1px;width:1px}.maplibregl-crosshair,.maplibregl-crosshair .maplibregl-interactive,.maplibregl-crosshair .maplibregl-interactive:active{cursor:crosshair}.maplibregl-boxzoom{background:#fff;border:2px dotted #202020;height:0;left:0;opacity:.5;position:absolute;top:0;width:0}.maplibregl-cooperative-gesture-screen{align-items:center;background:rgba(0,0,0,.4);color:#fff;display:flex;font-size:1.4em;inset:0;justify-content:center;line-height:1.2;opacity:0;padding:1rem;pointer-events:none;position:absolute;transition:opacity 1s ease 1s;z-index:99999}.maplibregl-cooperative-gesture-screen.maplibregl-show{opacity:1;transition:opacity .05s}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:none}@media (hover:none),(width <= 480px){.maplibregl-cooperative-gesture-screen .maplibregl-desktop-message{display:none}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:block}}.maplibregl-pseudo-fullscreen{height:100%!important;left:0!important;position:fixed!important;top:0!important;width:100%!important;z-index:99999}`,document.head.appendChild(e)}})()});var qa=ye(el=>{"use strict";var f3=G1(),Kre=w6(),Jre=zO(),fit=my(),hit=NS().addStyleRule,$re=Ao(),dit=Gl(),vit=c3(),pit=$re.extendFlat,VO=$re.extendDeepAll;el.modules={};el.allCategories={};el.allTypes=[];el.subplotsRegistry={};el.componentsRegistry={};el.layoutArrayContainers=[];el.layoutArrayRegexes=[];el.traceLayoutAttributes={};el.localeRegistry={};el.apiMethodRegistry={};el.collectableSubplotTypes=null;el.register=function(t){if(el.collectableSubplotTypes=null,t)t&&!Array.isArray(t)&&(t=[t]);else throw new Error("No argument passed to Plotly.register.");for(var r=0;r<t.length;r++){var n=t[r];if(!n)throw new Error("Invalid module was attempted to be registered!");switch(n.moduleType){case"trace":git(n);break;case"transform":_it(n);break;case"component":yit(n);break;case"locale":xit(n);break;case"apiMethod":var i=n.name;el.apiMethodRegistry[i]=n.fn;break;default:throw new Error("Invalid module was attempted to be registered!")}}};el.getModule=function(e){var t=el.modules[rie(e)];return t?t._module:!1};el.traceIs=function(e,t){if(e=rie(e),e==="various")return!1;var r=el.modules[e];return r||(e&&f3.log("Unrecognized trace type "+e+"."),r=el.modules[dit.type.dflt]),!!r.categories[t]};el.getComponentMethod=function(e,t){var r=el.componentsRegistry[e];return r&&r[t]||Kre};el.call=function(){var e=arguments[0],t=[].slice.call(arguments,1);return el.apiMethodRegistry[e].apply(null,t)};function git(e){var t=e.name,r=e.categories,n=e.meta;if(el.modules[t]){f3.log("Type "+t+" already registered");return}el.subplotsRegistry[e.basePlotModule.name]||mit(e.basePlotModule);for(var i={},a=0;a<r.length;a++)i[r[a]]=!0,el.allCategories[r[a]]=!0;el.modules[t]={_module:e,categories:i},n&&Object.keys(n).length&&(el.modules[t].meta=n),el.allTypes.push(t);for(var o in el.componentsRegistry)eie(o,t);e.layoutAttributes&&pit(el.traceLayoutAttributes,e.layoutAttributes);var s=e.basePlotModule,l=s.name;if(l==="mapbox"){var u=s.constants.styleRules;for(var c in u)hit(".js-plotly-plot .plotly .mapboxgl-"+c,u[c])}l==="map"&&Yre(),(l==="geo"||l==="mapbox"||l==="map")&&window.PlotlyGeoAssets===void 0&&(window.PlotlyGeoAssets={topojson:{}})}function mit(e){var t=e.name;if(el.subplotsRegistry[t]){f3.log("Plot type "+t+" already registered.");return}Qre(e),el.subplotsRegistry[t]=e;for(var r in el.componentsRegistry)tie(r,e.name)}function yit(e){if(typeof e.name!="string")throw new Error("Component module *name* must be a string.");var t=e.name;el.componentsRegistry[t]=e,e.layoutAttributes&&(e.layoutAttributes._isLinkedToArray&&Jre(el.layoutArrayContainers,t),Qre(e));for(var r in el.modules)eie(t,r);for(var n in el.subplotsRegistry)tie(t,n);e.schema&&e.schema.layout&&VO(vit,e.schema.layout)}function _it(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&&f3.log([t+" has both a *transform* and *calcTransform* methods.","Please note that all *transform* methods are executed","before all *calcTransform* methods."].join(" ")),fit(e.attributes)||f3.log(t+" registered without an *attributes* object."),typeof e.supplyDefaults!="function"&&f3.log(t+" registered without a *supplyDefaults* method.")}function xit(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=el.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 Qre(e){if(e.layoutAttributes){var t=e.layoutAttributes._arrayAttrRegexps;if(t)for(var r=0;r<t.length;r++)Jre(el.layoutArrayRegexes,t[r])}}function eie(e,t){var r=el.componentsRegistry[e].schema;if(!(!r||!r.traces)){var n=r.traces[t];n&&VO(el.modules[t]._module.attributes,n)}}function tie(e,t){var r=el.componentsRegistry[e].schema;if(!(!r||!r.subplots)){var n=el.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&&VO(i,o)}}function rie(e){return typeof e=="object"&&(e=e.type),e}});var fie=ye(hh=>{"use strict";var bit=r3().timeFormat,uie=Eo(),GO=G1(),X1=n3().mod,v3=fs(),y0=v3.BADNUM,Tp=v3.ONEDAY,VS=v3.ONEHOUR,W1=v3.ONEMIN,d3=v3.ONESEC,GS=v3.EPOCHJD,yy=qa(),iie=r3().utcFormat,wit=/^\s*(-?\d\d\d\d|\d\d)(-(\d?\d)(-(\d?\d)([ Tt]([01]?\d|2[0-3])(:([0-5]\d)(:([0-5]\d(\.\d+)?))?(Z|z|[+\-]\d\d(:?\d\d)?)?)?)?)?)?\s*$/m,Tit=/^\s*(-?\d\d\d\d|\d\d)(-(\d?\di?)(-(\d?\d)([ Tt]([01]?\d|2[0-3])(:([0-5]\d)(:([0-5]\d(\.\d+)?))?(Z|z|[+\-]\d\d(:?\d\d)?)?)?)?)?)?\s*$/m,nie=new Date().getFullYear()-70;function _y(e){return e&&yy.componentsRegistry.calendars&&typeof e=="string"&&e!=="gregorian"}hh.dateTick0=function(e,t){var r=Ait(e,!!t);if(t<2)return r;var n=hh.dateTime2ms(r,e);return n+=Tp*(t-1),hh.ms2DateTime(n,0,e)};function Ait(e,t){return _y(e)?t?yy.getComponentMethod("calendars","CANONICAL_SUNDAY")[e]:yy.getComponentMethod("calendars","CANONICAL_TICK")[e]:t?"2000-01-02":"2000-01-01"}hh.dfltRange=function(e){return _y(e)?yy.getComponentMethod("calendars","DFLTRANGE")[e]:["2000-01-01","2001-01-01"]};hh.isJSDate=function(e){return typeof e=="object"&&e!==null&&typeof e.getTime=="function"};var P6,I6;hh.dateTime2ms=function(e,t){if(hh.isJSDate(e)){var r=e.getTimezoneOffset()*W1,n=(e.getUTCMinutes()-e.getMinutes())*W1+(e.getUTCSeconds()-e.getSeconds())*d3+(e.getUTCMilliseconds()-e.getMilliseconds());if(n){var i=3*W1;r=r-i/2+X1(n-r+i/2,i)}return e=Number(e)-r,e>=P6&&e<=I6?e:y0}if(typeof e!="string"&&typeof e!="number")return y0;e=String(e);var a=_y(t),o=e.charAt(0);a&&(o==="G"||o==="g")&&(e=e.slice(1),t="");var s=a&&t.slice(0,7)==="chinese",l=e.match(s?Tit:wit);if(!l)return y0;var u=l[1],c=l[3]||"1",f=Number(l[5]||1),h=Number(l[7]||0),d=Number(l[9]||0),v=Number(l[11]||0);if(a){if(u.length===2)return y0;u=Number(u);var _;try{var b=yy.getComponentMethod("calendars","getCal")(t);if(s){var p=c.charAt(c.length-1)==="i";c=parseInt(c,10),_=b.newDate(u,b.toMonthIndex(u,c,p),f)}else _=b.newDate(u,Number(c),f)}catch(E){return y0}return _?(_.toJD()-GS)*Tp+h*VS+d*W1+v*d3:y0}u.length===2?u=(Number(u)+2e3-nie)%100+nie:u=Number(u),c-=1;var k=new Date(Date.UTC(2e3,c,f,h,d));return k.setUTCFullYear(u),k.getUTCMonth()!==c||k.getUTCDate()!==f?y0:k.getTime()+v*d3};P6=hh.MIN_MS=hh.dateTime2ms("-9999");I6=hh.MAX_MS=hh.dateTime2ms("9999-12-31 23:59:59.9999");hh.isDateTime=function(e,t){return hh.dateTime2ms(e,t)!==y0};function h3(e,t){return String(e+Math.pow(10,t)).slice(1)}var L6=90*Tp,aie=3*VS,oie=5*W1;hh.ms2DateTime=function(e,t,r){if(typeof e!="number"||!(e>=P6&&e<=I6))return y0;t||(t=0);var n=Math.floor(X1(e+.05,1)*10),i=Math.round(e-n/10),a,o,s,l,u,c;if(_y(r)){var f=Math.floor(i/Tp)+GS,h=Math.floor(X1(e,Tp));try{a=yy.getComponentMethod("calendars","getCal")(r).fromJD(f).formatDate("yyyy-mm-dd")}catch(d){a=iie("G%Y-%m-%d")(new Date(i))}if(a.charAt(0)==="-")for(;a.length<11;)a="-0"+a.slice(1);else for(;a.length<10;)a="0"+a;o=t<L6?Math.floor(h/VS):0,s=t<L6?Math.floor(h%VS/W1):0,l=t<aie?Math.floor(h%W1/d3):0,u=t<oie?h%d3*10+n:0}else c=new Date(i),a=iie("%Y-%m-%d")(c),o=t<L6?c.getUTCHours():0,s=t<L6?c.getUTCMinutes():0,l=t<aie?c.getUTCSeconds():0,u=t<oie?c.getUTCMilliseconds()*10+n:0;return cie(a,o,s,l,u)};hh.ms2DateTimeLocal=function(e){if(!(e>=P6+Tp&&e<=I6-Tp))return y0;var t=Math.floor(X1(e+.05,1)*10),r=new Date(Math.round(e-t/10)),n=bit("%Y-%m-%d")(r),i=r.getHours(),a=r.getMinutes(),o=r.getSeconds(),s=r.getUTCMilliseconds()*10+t;return cie(n,i,a,o,s)};function cie(e,t,r,n,i){if((t||r||n||i)&&(e+=" "+h3(t,2)+":"+h3(r,2),(n||i)&&(e+=":"+h3(n,2),i))){for(var a=4;i%10===0;)a-=1,i/=10;e+="."+h3(i,a)}return e}hh.cleanDate=function(e,t,r){if(e===y0)return t;if(hh.isJSDate(e)||typeof e=="number"&&isFinite(e)){if(_y(r))return GO.error("JS Dates and milliseconds are incompatible with world calendars",e),t;if(e=hh.ms2DateTimeLocal(+e),!e&&t!==void 0)return t}else if(!hh.isDateTime(e,r))return GO.error("unrecognized date",e),t;return e};var Sit=/%\d?f/g,Mit=/%h/g,Eit={1:"1",2:"1",3:"2",4:"2"};function sie(e,t,r,n){e=e.replace(Sit,function(a){var o=Math.min(+a.charAt(1)||6,6),s=(t/1e3%1+2).toFixed(o).slice(2).replace(/0+$/,"")||"0";return s});var i=new Date(Math.floor(t+.05));if(e=e.replace(Mit,function(){return Eit[r("%q")(i)]}),_y(n))try{e=yy.getComponentMethod("calendars","worldCalFmt")(e,t,n)}catch(a){return"Invalid"}return r(e)(i)}var kit=[59,59.9,59.99,59.999,59.9999];function Cit(e,t){var r=X1(e+.05,Tp),n=h3(Math.floor(r/VS),2)+":"+h3(X1(Math.floor(r/W1),60),2);if(t!=="M"){uie(t)||(t=0);var i=Math.min(X1(e/d3,60),kit[t]),a=(100+i).toFixed(t).slice(1);t>0&&(a=a.replace(/0+$/,"").replace(/[\.]$/,"")),n+=":"+a}return n}hh.formatDate=function(e,t,r,n,i,a){if(i=_y(i)&&i,!t)if(r==="y")t=a.year;else if(r==="m")t=a.month;else if(r==="d")t=a.dayMonth+`
`+a.year;else return Cit(e,r)+`
`+sie(a.dayMonthYear,e,n,i);return sie(t,e,n,i)};var lie=3*Tp;hh.incrementMonth=function(e,t,r){r=_y(r)&&r;var n=X1(e,Tp);if(e=Math.round(e-n),r)try{var i=Math.round(e/Tp)+GS,a=yy.getComponentMethod("calendars","getCal")(r),o=a.fromJD(i);return t%12?a.add(o,t,"m"):a.add(o,t/12,"y"),(o.toJD()-GS)*Tp+n}catch(l){GO.error("invalid ms "+e+" in calendar "+r)}var s=new Date(e+lie);return s.setUTCMonth(s.getUTCMonth()+t)+n-lie};hh.findExactDates=function(e,t){for(var r=0,n=0,i=0,a=0,o,s,l=_y(t)&&yy.getComponentMethod("calendars","getCal")(t),u=0;u<e.length;u++){if(s=e[u],!uie(s)){a++;continue}if(!(s%Tp))if(l)try{o=l.fromJD(s/Tp+GS),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 HS=ye((kir,hie)=>{"use strict";hie.exports=function(t){return t}});var R6=ye(xy=>{"use strict";var Lit=Eo(),Pit=G1(),Iit=HS(),Rit=fs().BADNUM,HO=1e-9;xy.findBin=function(e,t,r){if(Lit(t.start))return r?Math.ceil((e-t.start)/t.size-HO)-1:Math.floor((e-t.start)/t.size+HO);var n=0,i=t.length,a=0,o=i>1?(t[i-1]-t[0])/(i-1):1,s,l;for(o>=0?l=r?Dit:Fit:l=r?Oit:zit,e+=o*HO*(r?-1:1)*(o>=0?1:-1);n<i&&a++<100;)s=Math.floor((n+i)/2),l(t[s],e)?n=s+1:i=s;return a>90&&Pit.log("Long binary search..."),n-1};function Dit(e,t){return e<t}function Fit(e,t){return e<=t}function zit(e,t){return e>t}function Oit(e,t){return e>=t}xy.sorterAsc=function(e,t){return e-t};xy.sorterDes=function(e,t){return t-e};xy.distinctVals=function(e){var t=e.slice();t.sort(xy.sorterAsc);var r;for(r=t.length-1;r>-1&&t[r]===Rit;r--);for(var n=t[r]-t[0]||1,i=n/(r||1)/1e4,a=[],o,s=0;s<=r;s++){var l=t[s],u=l-o;o===void 0?(a.push(l),o=l):u>i&&(n=Math.min(n,u),a.push(l),o=l)}return{vals:a,minDiff:n}};xy.roundUp=function(e,t,r){for(var n=0,i=t.length-1,a,o=0,s=r?0:1,l=r?1:0,u=r?Math.ceil:Math.floor;n<i&&o++<100;)a=u((n+i)/2),t[a]<=e?n=a+s:i=a-l;return t[n]};xy.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()};xy.findIndexOfMin=function(e,t){t=t||Iit;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 Z1=ye((Lir,die)=>{"use strict";die.exports=function(t){return Object.keys(t).sort()}});var vie=ye(dh=>{"use strict";var jS=Eo(),qit=vv().isArrayOrTypedArray;dh.aggNums=function(e,t,r,n){var i,a;if((!n||n>r.length)&&(n=r.length),jS(t)||(t=!1),qit(r[0])){for(a=new Array(n),i=0;i<n;i++)a[i]=dh.aggNums(e,t,r[i]);r=a}for(i=0;i<n;i++)jS(t)?jS(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)),jS(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(!jS(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 _ie=ye((Iir,yie)=>{"use strict";var pie=n3(),jO=pie.mod,Bit=pie.modHalf,WS=Math.PI,Y1=2*WS;function Nit(e){return e/180*WS}function Uit(e){return e/WS*180}function WO(e){return Math.abs(e[1]-e[0])>Y1-1e-14}function gie(e,t){return Bit(t-e,Y1)}function Vit(e,t){return Math.abs(gie(e,t))}function mie(e,t){if(WO(t))return!0;var r,n;t[0]<t[1]?(r=t[0],n=t[1]):(r=t[1],n=t[0]),r=jO(r,Y1),n=jO(n,Y1),r>n&&(n+=Y1);var i=jO(e,Y1),a=i+Y1;return i>=r&&i<=n||a>=r&&a<=n}function Git(e,t,r,n){if(!mie(t,n))return!1;var i,a;return r[0]<r[1]?(i=r[0],a=r[1]):(i=r[1],a=r[0]),e>=i&&e<=a}function XO(e,t,r,n,i,a,o){i=i||0,a=a||0;var s=WO([r,n]),l,u,c,f,h;s?(l=0,u=WS,c=Y1):r<n?(l=r,c=n):(l=n,c=r),e<t?(f=e,h=t):(f=t,h=e);function d(p,k){return[p*Math.cos(k)+i,a-p*Math.sin(k)]}var v=Math.abs(c-l)<=WS?0:1;function _(p,k,E){return"A"+[p,p]+" "+[0,v,E]+" "+d(p,k)}var b;return s?f===null?b="M"+d(h,l)+_(h,u,0)+_(h,c,0)+"Z":b="M"+d(f,l)+_(f,u,0)+_(f,c,0)+"ZM"+d(h,l)+_(h,u,1)+_(h,c,1)+"Z":f===null?(b="M"+d(h,l)+_(h,c,0),o&&(b+="L0,0Z")):b="M"+d(f,l)+"L"+d(h,l)+_(h,c,0)+"L"+d(f,c)+_(f,l,1)+"Z",b}function Hit(e,t,r,n,i){return XO(null,e,t,r,n,i,0)}function jit(e,t,r,n,i){return XO(null,e,t,r,n,i,1)}function Wit(e,t,r,n,i,a){return XO(e,t,r,n,i,a,1)}yie.exports={deg2rad:Nit,rad2deg:Uit,angleDelta:gie,angleDist:Vit,isFullCircle:WO,isAngleInsideSector:mie,isPtInsideSector:Git,pathArc:Hit,pathSector:jit,pathAnnulus:Wit}});var xie=ye(hb=>{"use strict";hb.isLeftAnchor=function(t){return t.xanchor==="left"||t.xanchor==="auto"&&t.x<=1/3};hb.isCenterAnchor=function(t){return t.xanchor==="center"||t.xanchor==="auto"&&t.x>1/3&&t.x<2/3};hb.isRightAnchor=function(t){return t.xanchor==="right"||t.xanchor==="auto"&&t.x>=2/3};hb.isTopAnchor=function(t){return t.yanchor==="top"||t.yanchor==="auto"&&t.y>=2/3};hb.isMiddleAnchor=function(t){return t.yanchor==="middle"||t.yanchor==="auto"&&t.y>1/3&&t.y<2/3};hb.isBottomAnchor=function(t){return t.yanchor==="bottom"||t.yanchor==="auto"&&t.y<=1/3}});var Tie=ye(db=>{"use strict";var ZO=n3().mod;db.segmentsIntersect=wie;function wie(e,t,r,n,i,a,o,s){var l=r-e,u=i-e,c=o-i,f=n-t,h=a-t,d=s-a,v=l*d-c*f;if(v===0)return null;var _=(u*d-c*h)/v,b=(u*f-l*h)/v;return b<0||b>1||_<0||_>1?null:{x:e+l*_,y:t+f*_}}db.segmentDistance=function(t,r,n,i,a,o,s,l){if(wie(t,r,n,i,a,o,s,l))return 0;var u=n-t,c=i-r,f=s-a,h=l-o,d=u*u+c*c,v=f*f+h*h,_=Math.min(D6(u,c,d,a-t,o-r),D6(u,c,d,s-t,l-r),D6(f,h,v,t-a,r-o),D6(f,h,v,n-a,i-o));return Math.sqrt(_)};function D6(e,t,r,n,i){var a=n*e+i*t;if(a<0)return n*n+i*i;if(a>r){var o=n-e,s=i-t;return o*o+s*s}else{var l=n*t-i*e;return l*l/r}}var F6,YO,bie;db.getTextLocation=function(t,r,n,i){if((t!==YO||i!==bie)&&(F6={},YO=t,bie=i),F6[n])return F6[n];var a=t.getPointAtLength(ZO(n-i/2,r)),o=t.getPointAtLength(ZO(n+i/2,r)),s=Math.atan((o.y-a.y)/(o.x-a.x)),l=t.getPointAtLength(ZO(n,r)),u=(l.x*4+a.x+o.x)/6,c=(l.y*4+a.y+o.y)/6,f={x:u,y:c,theta:s};return F6[n]=f,f};db.clearLocationCache=function(){YO=null};db.getVisibleSegment=function(t,r,n){var i=r.left,a=r.right,o=r.top,s=r.bottom,l=0,u=t.getTotalLength(),c=u,f,h;function d(_){var b=t.getPointAtLength(_);_===0?f=b:_===u&&(h=b);var p=b.x<i?i-b.x:b.x>a?b.x-a:0,k=b.y<o?o-b.y:b.y>s?b.y-s:0;return Math.sqrt(p*p+k*k)}for(var v=d(l);v;){if(l+=v+n,l>c)return;v=d(l)}for(v=d(c);v;){if(c-=v+n,l>c)return;v=d(c)}return{min:l,max:c,len:c-l,total:u,isClosed:l===0&&c===u&&Math.abs(f.x-h.x)<.1&&Math.abs(f.y-h.y)<.1}};db.findPointOnPath=function(t,r,n,i){i=i||{};for(var a=i.pathLength||t.getTotalLength(),o=i.tolerance||.001,s=i.iterationLimit||30,l=t.getPointAtLength(0)[n]>t.getPointAtLength(a)[n]?-1:1,u=0,c=0,f=a,h,d,v;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 z6=ye(XS=>{"use strict";var by={};XS.throttle=function(t,r,n){var i=by[t],a=Date.now();if(!i){for(var o in by)by[o].ts<a-6e4&&delete by[o];i=by[t]={ts:0,timer:null}}Aie(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)};XS.done=function(e){var t=by[e];return!t||!t.timer?Promise.resolve():new Promise(function(r){var n=t.onDone;t.onDone=function(){n&&n(),r(),t.onDone=null}})};XS.clear=function(e){if(e)Aie(by[e]),delete by[e];else for(var t in by)XS.clear(t)};function Aie(e){e&&e.timer!==null&&(clearTimeout(e.timer),e.timer=null)}});var Mie=ye((zir,Sie)=>{"use strict";Sie.exports=function(t){t._responsiveChartHandler&&(window.removeEventListener("resize",t._responsiveChartHandler),delete t._responsiveChartHandler)}});var Eie=ye((Oir,O6)=>{"use strict";O6.exports=KO;O6.exports.isMobile=KO;O6.exports.default=KO;var Xit=/(android|bb\d+|meego).+mobile|armv7l|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series[46]0|samsungbrowser.*mobile|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i,Zit=/CrOS/,Yit=/android|ipad|playbook|silk/i;function KO(e){e||(e={});let t=e.ua;if(!t&&typeof navigator!="undefined"&&(t=navigator.userAgent),t&&t.headers&&typeof t.headers["user-agent"]=="string"&&(t=t.headers["user-agent"]),typeof t!="string")return!1;let r=Xit.test(t)&&!Zit.test(t)||!!e.tablet&&Yit.test(t);return!r&&e.tablet&&e.featureDetect&&navigator&&navigator.maxTouchPoints>1&&t.indexOf("Macintosh")!==-1&&t.indexOf("Safari")!==-1&&(r=!0),r}});var Cie=ye((qir,kie)=>{"use strict";var Kit=Eo(),Jit=Eie();kie.exports=function(t){var r;if(t&&t.hasOwnProperty("userAgent")?r=t.userAgent:r=$it(),typeof r!="string")return!0;var n=Jit({ua:{headers:{"user-agent":r}},tablet:!0,featureDetect:!1});if(!n)for(var i=r.split(" "),a=1;a<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.slice(0,8)==="Version/"){var u=l.slice(8).split(".")[0];if(Kit(u)&&(u=+u),u>=13)return!0}}}return n};function $it(){var e;return typeof navigator!="undefined"&&(e=navigator.userAgent),e&&e.headers&&typeof e.headers["user-agent"]=="string"&&(e=e.headers["user-agent"]),e}});var Pie=ye((Bir,Lie)=>{"use strict";var Qit=Oa();Lie.exports=function(t,r,n){var i=t.selectAll("g."+n.replace(/\s/g,".")).data(r,function(o){return o[0].trace.uid});i.exit().remove(),i.enter().append("g").attr("class",n),i.order();var a=t.classed("rangeplot")?"nodeRangePlot3":"node3";return i.each(function(o){o[0][a]=Qit.select(this)}),i}});var Rie=ye((Nir,Iie)=>{"use strict";var ent=qa();Iie.exports=function(t,r){for(var n=t._context.locale,i=0;i<2;i++){for(var a=t._context.locales,o=0;o<2;o++){var s=(a[n]||{}).dictionary;if(s){var l=s[r];if(l)return l}a=ent.localeRegistry}var u=n.split("-")[0];if(u===n)break;n=u}return r}});var JO=ye((Uir,Die)=>{"use strict";Die.exports=function(t){for(var r={},n=[],i=0,a=0;a<t.length;a++){var o=t[a];r[o]!==1&&(r[o]=1,n[i++]=o)}return n}});var zie=ye((Vir,Fie)=>{"use strict";Fie.exports=function(t){for(var r=int(t)?rnt:tnt,n=[],i=0;i<t.length;i++){var a=t[i];r(a)&&n.push(a)}return n};function tnt(e){return e.visible===!0}function rnt(e){var t=e[0].trace;return t.visible===!0&&t._length!==0}function int(e){return Array.isArray(e)&&Array.isArray(e[0])&&e[0][0]&&e[0][0].trace}});var qie=ye((Gir,Oie)=>{"use strict";Oie.exports=function(t,r){if(!r)return t;var n=1/Math.abs(r),i=n>1?(n*t+n*r)/n:t+r,a=String(i).length;if(a>16){var o=String(r).length,s=String(t).length;if(a>=s+o){var l=parseFloat(i).toPrecision(12);l.indexOf("e+")===-1&&(i=+l)}}return i}});var Nie=ye((Hir,Bie)=>{"use strict";var nnt=Eo(),ant=fs().BADNUM,ont=/^['"%,$#\s']+|[, ]|['"%,$#\s']+$/g;Bie.exports=function(t){return typeof t=="string"&&(t=t.replace(ont,"")),nnt(t)?Number(t):ant}});var Dr=ye((jir,Qie)=>{"use strict";var ZS=Oa(),snt=r3().utcFormat,lnt=wO().format,Wie=Eo(),Xie=fs(),Zie=Xie.FP_SAFE,unt=-Zie,Uie=Xie.BADNUM,Mi=Qie.exports={};Mi.adjustFormat=function(t){return!t||/^\d[.]\df/.test(t)||/[.]\d%/.test(t)?t:t==="0.f"?"~f":/^\d%/.test(t)?"~%":/^\ds/.test(t)?"~s":!/^[~,.0$]/.test(t)&&/[&fps]/.test(t)?"~"+t:t};var Vie={};Mi.warnBadFormat=function(e){var t=String(e);Vie[t]||(Vie[t]=1,Mi.warn('encountered bad format: "'+t+'"'))};Mi.noFormat=function(e){return String(e)};Mi.numberFormat=function(e){var t;try{t=lnt(Mi.adjustFormat(e))}catch(r){return Mi.warnBadFormat(e),Mi.noFormat}return t};Mi.nestedProperty=PS();Mi.keyedContainer=Dee();Mi.relativeAttr=zee();Mi.isPlainObject=my();Mi.toLogRange=m6();Mi.relinkPrivateKeys=Nee();var K1=vv();Mi.isArrayBuffer=K1.isArrayBuffer;Mi.isTypedArray=K1.isTypedArray;Mi.isArrayOrTypedArray=K1.isArrayOrTypedArray;Mi.isArray1D=K1.isArray1D;Mi.ensureArray=K1.ensureArray;Mi.concat=K1.concat;Mi.maxRowLength=K1.maxRowLength;Mi.minRowLength=K1.minRowLength;var Yie=n3();Mi.mod=Yie.mod;Mi.modHalf=Yie.modHalf;var J1=ate();Mi.valObjectMeta=J1.valObjectMeta;Mi.coerce=J1.coerce;Mi.coerce2=J1.coerce2;Mi.coerceFont=J1.coerceFont;Mi.coercePattern=J1.coercePattern;Mi.coerceHoverinfo=J1.coerceHoverinfo;Mi.coerceSelectionMarkerOpacity=J1.coerceSelectionMarkerOpacity;Mi.validate=J1.validate;var jp=fie();Mi.dateTime2ms=jp.dateTime2ms;Mi.isDateTime=jp.isDateTime;Mi.ms2DateTime=jp.ms2DateTime;Mi.ms2DateTimeLocal=jp.ms2DateTimeLocal;Mi.cleanDate=jp.cleanDate;Mi.isJSDate=jp.isJSDate;Mi.formatDate=jp.formatDate;Mi.incrementMonth=jp.incrementMonth;Mi.dateTick0=jp.dateTick0;Mi.dfltRange=jp.dfltRange;Mi.findExactDates=jp.findExactDates;Mi.MIN_MS=jp.MIN_MS;Mi.MAX_MS=jp.MAX_MS;var vb=R6();Mi.findBin=vb.findBin;Mi.sorterAsc=vb.sorterAsc;Mi.sorterDes=vb.sorterDes;Mi.distinctVals=vb.distinctVals;Mi.roundUp=vb.roundUp;Mi.sort=vb.sort;Mi.findIndexOfMin=vb.findIndexOfMin;Mi.sortObjectKeys=Z1();var wy=vie();Mi.aggNums=wy.aggNums;Mi.len=wy.len;Mi.mean=wy.mean;Mi.geometricMean=wy.geometricMean;Mi.median=wy.median;Mi.midRange=wy.midRange;Mi.variance=wy.variance;Mi.stdev=wy.stdev;Mi.interp=wy.interp;var xg=T6();Mi.init2dArray=xg.init2dArray;Mi.transposeRagged=xg.transposeRagged;Mi.dot=xg.dot;Mi.translationMatrix=xg.translationMatrix;Mi.rotationMatrix=xg.rotationMatrix;Mi.rotationXYMatrix=xg.rotationXYMatrix;Mi.apply3DTransform=xg.apply3DTransform;Mi.apply2DTransform=xg.apply2DTransform;Mi.apply2DTransform2=xg.apply2DTransform2;Mi.convertCssMatrix=xg.convertCssMatrix;Mi.inverseTransformMatrix=xg.inverseTransformMatrix;var vm=_ie();Mi.deg2rad=vm.deg2rad;Mi.rad2deg=vm.rad2deg;Mi.angleDelta=vm.angleDelta;Mi.angleDist=vm.angleDist;Mi.isFullCircle=vm.isFullCircle;Mi.isAngleInsideSector=vm.isAngleInsideSector;Mi.isPtInsideSector=vm.isPtInsideSector;Mi.pathArc=vm.pathArc;Mi.pathSector=vm.pathSector;Mi.pathAnnulus=vm.pathAnnulus;var g3=xie();Mi.isLeftAnchor=g3.isLeftAnchor;Mi.isCenterAnchor=g3.isCenterAnchor;Mi.isRightAnchor=g3.isRightAnchor;Mi.isTopAnchor=g3.isTopAnchor;Mi.isMiddleAnchor=g3.isMiddleAnchor;Mi.isBottomAnchor=g3.isBottomAnchor;var m3=Tie();Mi.segmentsIntersect=m3.segmentsIntersect;Mi.segmentDistance=m3.segmentDistance;Mi.getTextLocation=m3.getTextLocation;Mi.clearLocationCache=m3.clearLocationCache;Mi.getVisibleSegment=m3.getVisibleSegment;Mi.findPointOnPath=m3.findPointOnPath;var N6=Ao();Mi.extendFlat=N6.extendFlat;Mi.extendDeep=N6.extendDeep;Mi.extendDeepAll=N6.extendDeepAll;Mi.extendDeepNoArrays=N6.extendDeepNoArrays;var $O=G1();Mi.log=$O.log;Mi.warn=$O.warn;Mi.error=$O.error;var cnt=o3();Mi.counterRegex=cnt.counter;var QO=z6();Mi.throttle=QO.throttle;Mi.throttleDone=QO.done;Mi.clearThrottle=QO.clear;var bg=NS();Mi.getGraphDiv=bg.getGraphDiv;Mi.isPlotDiv=bg.isPlotDiv;Mi.removeElement=bg.removeElement;Mi.addStyleRule=bg.addStyleRule;Mi.addRelatedStyleRule=bg.addRelatedStyleRule;Mi.deleteRelatedStyleRule=bg.deleteRelatedStyleRule;Mi.setStyleOnHover=bg.setStyleOnHover;Mi.getFullTransformMatrix=bg.getFullTransformMatrix;Mi.getElementTransformMatrix=bg.getElementTransformMatrix;Mi.getElementAndAncestors=bg.getElementAndAncestors;Mi.equalDomRects=bg.equalDomRects;Mi.clearResponsive=Mie();Mi.preserveDrawingBuffer=Cie();Mi.makeTraceGroups=Pie();Mi._=Rie();Mi.notifier=RO();Mi.filterUnique=JO();Mi.filterVisible=zie();Mi.pushUnique=zO();Mi.increment=qie();Mi.cleanNumber=Nie();Mi.ensureNumber=function(t){return Wie(t)?(t=Number(t),t>Zie||t<unt?Uie:t):Uie};Mi.isIndex=function(e,t){return t!==void 0&&e>=t?!1:Wie(e)&&e>=0&&e%1===0};Mi.noop=w6();Mi.identity=HS();Mi.repeat=function(e,t){for(var r=new Array(t),n=0;n<t;n++)r[n]=e;return r};Mi.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=Mi.nestedProperty(e,a.replace("?",r)),s=Mi.nestedProperty(e,a.replace("?",n)),l=o.get();o.set(s.get()),s.set(l)}};Mi.raiseToTop=function(t){t.parentNode.appendChild(t)};Mi.cancelTransition=function(e){return e.transition().duration(0)};Mi.constrain=function(e,t,r){return t>r?Math.max(r,Math.min(t,e)):Math.max(t,Math.min(r,e))};Mi.bBoxIntersect=function(e,t,r){return r=r||0,e.left<=t.right+r&&t.left<=e.right+r&&e.top<=t.bottom+r&&t.top<=e.bottom+r};Mi.simpleMap=function(e,t,r,n,i){for(var a=e.length,o=new Array(a),s=0;s<a;s++)o[s]=t(e[s],r,n,i);return o};Mi.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?(Mi.warn("randstr failed uniqueness"),o):e(t,r,n,(i||0)+1):o};Mi.OptionControl=function(e,t){e||(e={}),t||(t="opt");var r={};return r.optionList=[],r._newoption=function(n){n[t]=e,r[n.name]=n,r.optionList.push(n)},r["_"+t]=e,r};Mi.smooth=function(e,t){if(t=Math.round(t)||0,t<2)return e;var r=e.length,n=2*r,i=2*t-1,a=new Array(i),o=new Array(r),s,l,u,c;for(s=0;s<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};Mi.syncOrAsync=function(e,t,r){var n,i;function a(){return Mi.syncOrAsync(e,t,r)}for(;e.length;)if(i=e.splice(0,1)[0],n=i(t),n&&n.then)return n.then(a);return r&&r(t)};Mi.stripTrailingSlash=function(e){return e.slice(-1)==="/"?e.slice(0,-1):e};Mi.noneOrAll=function(e,t,r){if(e){var n=!1,i=!0,a,o;for(a=0;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]]}};Mi.mergeArray=function(e,t,r,n){var i=typeof n=="function";if(Mi.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}};Mi.mergeArrayCastPositive=function(e,t,r){return Mi.mergeArray(e,t,r,function(n){var i=+n;return isFinite(i)&&i>0?i:0})};Mi.fillArray=function(e,t,r,n){if(n=n||Mi.identity,Mi.isArrayOrTypedArray(e))for(var i=0;i<t.length;i++)t[i][r]=n(e[i])};Mi.castOption=function(e,t,r,n){n=n||Mi.identity;var i=Mi.nestedProperty(e,r).get();return Mi.isArrayOrTypedArray(i)?Array.isArray(t)&&Mi.isArrayOrTypedArray(i[t[0]])?n(i[t[0]][t[1]]):n(i[t]):i};Mi.extractOption=function(e,t,r,n){if(r in e)return e[r];var i=Mi.nestedProperty(t,n).get();if(!Array.isArray(i))return i};function Kie(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}Mi.tagSelected=function(e,t,r){var n=t.selectedpoints,i=t._indexToPoints,a;i&&(a=Kie(i));function o(f){return f!==void 0&&f<e.length}for(var s=0;s<n.length;s++){var l=n[s];if(Mi.isIndex(l)||Mi.isArrayOrTypedArray(l)&&Mi.isIndex(l[0])&&Mi.isIndex(l[1])){var u=a?a[l]:l,c=r?r[u]:u;o(c)&&(e[c].selected=1)}}};Mi.selIndices2selPoints=function(e){var t=e.selectedpoints,r=e._indexToPoints;if(r){for(var n=Kie(r),i=[],a=0;a<t.length;a++){var o=t[a];if(Mi.isIndex(o)){var s=n[o];Mi.isIndex(s)&&i.push(s)}}return i}else return t};Mi.getTargetArray=function(e,t){var r=t.target;if(typeof r=="string"&&r){var n=Mi.nestedProperty(e,r).get();return Mi.isArrayOrTypedArray(n)?n:!1}else if(Mi.isArrayOrTypedArray(r))return r;return!1};function Jie(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):Mi.isTypedArray(l)?i===-1?n[s]=l.subarray():n[s]=l.subarray(0,i):l&&typeof l=="object"?n[s]=Jie(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}Mi.minExtend=Jie;Mi.titleCase=function(e){return e.charAt(0).toUpperCase()+e.slice(1)};Mi.containsAny=function(e,t){for(var r=0;r<t.length;r++)if(e.indexOf(t[r])!==-1)return!0;return!1};var fnt=/Version\/[\d\.]+.*Safari/;Mi.isSafari=function(){return fnt.test(window.navigator.userAgent)};var hnt=/iPad|iPhone|iPod/;Mi.isIOS=function(){return hnt.test(window.navigator.userAgent)};var dnt=/Macintosh.+AppleWebKit.+Gecko\)$/;Mi.isMacWKWebView=()=>dnt.test(window.navigator.userAgent);var vnt=/Firefox\/(\d+)\.\d+/;Mi.getFirefoxVersion=function(){var e=vnt.exec(window.navigator.userAgent);if(e&&e.length===2){var t=parseInt(e[1]);if(!isNaN(t))return t}return null};Mi.isD3Selection=function(e){return e instanceof ZS.selection};Mi.ensureSingle=function(e,t,r,n){var i=e.select(t+(r?"."+r:""));if(i.size())return i;var a=e.append(t);return r&&a.classed(r,!0),n&&a.call(n),a};Mi.ensureSingleById=function(e,t,r,n){var i=e.select(t+"#"+r);if(i.size())return i;var a=e.append(t).attr("id",r);return n&&a.call(n),a};Mi.objectFromPath=function(e,t){for(var r=e.split("."),n,i=n={},a=0;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 pnt=/^([^\[\.]+)\.(.+)?/,gnt=/^([^\.]+)\[([0-9]+)\](\.)?(.+)?/;function q6(e){return e.slice(0,2)==="__"}Mi.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(pnt)){if(i=e[r],n=t[1],q6(n))continue;delete e[r],e[n]=Mi.extendDeepNoArrays(e[n]||{},Mi.objectFromPath(r,Mi.expandObjectPaths(i))[n])}else if(t=r.match(gnt)){if(i=e[r],n=t[1],q6(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]||{},Mi.extendDeepNoArrays(o,Mi.objectFromPath(s,Mi.expandObjectPaths(i)));else{if(q6(n))continue;e[n][a]=Mi.expandObjectPaths(i)}}else{if(q6(r))continue;e[r]=Mi.expandObjectPaths(e[r])}}return e};Mi.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};Mi.TEMPLATE_STRING_REGEX=/%{([^\s%{}:]*)([:|\|][^}]*)?}/g;var $ie=/^\w*$/;Mi.templateString=function(e,t){var r={};return e.replace(Mi.TEMPLATE_STRING_REGEX,function(n,i){var a;return $ie.test(i)?a=t[i]:(r[i]=r[i]||Mi.nestedProperty(t,i).get,a=r[i](!0)),a!==void 0?a:""})};var mnt={max:10,count:0,name:"hovertemplate"};Mi.hovertemplateString=e=>eq(q1(mg({},e),{opts:mnt}));var ynt={max:10,count:0,name:"texttemplate"};Mi.texttemplateString=e=>eq(q1(mg({},e),{opts:ynt}));var _nt=/^(\S+)([\*\/])(-?\d+(\.\d+)?)$/;function xnt(e){var t=e.match(_nt);return t?{key:t[1],op:t[2],number:Number(t[3])}:{key:e,op:null,number:null}}var bnt={max:10,count:0,name:"texttemplate",parseMultDiv:!0};Mi.texttemplateStringForShapes=e=>eq(q1(mg({},e),{opts:bnt}));var Gie=/^[:|\|]/;function eq({data:e=[],locale:t,fallback:r,labels:n={},opts:i,template:a}){return a.replace(Mi.TEMPLATE_STRING_REGEX,(o,s,l)=>{let u=["xother","yother"].includes(s),c=["_xother","_yother"].includes(s),f=["_xother_","_yother_"].includes(s),h=["xother_","yother_"].includes(s),d=u||c||h||f;(c||f)&&(s=s.substring(1)),(h||f)&&(s=s.substring(0,s.length-1));let v=null,_=null;if(i.parseMultDiv){var b=xnt(s);s=b.key,v=b.op,_=b.number}let p;if(d){if(n[s]===void 0)return"";p=n[s]}else for(let L of e)if(L){if(L.hasOwnProperty(s)){p=L[s];break}if($ie.test(s)||(p=Mi.nestedProperty(L,s).get(!0)),p!==void 0)break}if(p===void 0){let{count:L,max:x,name:C}=i,M=r===!1?o:r;return L<x&&Mi.warn([`Variable '${s}' in ${C} could not be found!`,"Please verify that the template is correct.",`Using value: '${M}'.`].join(" ")),L===x&&Mi.warn(`Too many '${C}' warnings - additional warnings will be suppressed.`),i.count++,M}if(v==="*"&&(p*=_),v==="/"&&(p/=_),l){var k;if(l[0]===":"&&(k=t?t.numberFormat:Mi.numberFormat,p!==""&&(p=k(l.replace(Gie,""))(p))),l[0]==="|"){k=t?t.timeFormat:snt;var E=Mi.dateTime2ms(p);p=Mi.formatDate(E,l.replace(Gie,""),!1,k)}}else{var S=s+"Label";n.hasOwnProperty(S)&&(p=n[S])}return d&&(p="("+p+")",(c||f)&&(p=" "+p),(h||f)&&(p=p+" ")),p})}var B6=48,Hie=57;Mi.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>=B6&&o<=Hie,u=s>=B6&&s<=Hie;if(l&&(n=10*n+o-B6),u&&(i=10*i+s-B6),!l||!u){if(n!==i)return n-i;if(o!==s)return o-s}}return i-n};var p3=2e9;Mi.seedPseudoRandom=function(){p3=2e9};Mi.pseudoRandom=function(){var e=p3;return p3=(69069*p3+1)%4294967296,Math.abs(p3-e)<429496729?Mi.pseudoRandom():p3/4294967296};Mi.fillText=function(e,t,r){var n=Array.isArray(r)?function(o){r.push(o)}:function(o){r.text=o},i=Mi.extractOption(e,t,"htx","hovertext");if(Mi.isValidTextValue(i))return n(i);var a=Mi.extractOption(e,t,"tx","text");if(Mi.isValidTextValue(a))return n(a)};Mi.isValidTextValue=function(e){return e||e===0};Mi.formatPercent=function(e,t){t=t||0;for(var r=(Math.round(100*e*Math.pow(10,t))*Math.pow(.1,t)).toFixed(t)+"%",n=0;n<t;n++)r.indexOf(".")!==-1&&(r=r.replace("0%","%"),r=r.replace(".%","%"));return r};Mi.isHidden=function(e){var t=window.getComputedStyle(e).display;return!t||t==="none"};Mi.strTranslate=function(e,t){return e||t?"translate("+e+","+t+")":""};Mi.strRotate=function(e){return e?"rotate("+e+")":""};Mi.strScale=function(e){return e!==1?"scale("+e+")":""};Mi.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,Mi.strTranslate(i-u*(r+o),a-u*(n+s))+Mi.strScale(u)+(l?"rotate("+l+(t?"":" "+r+" "+n)+")":"")};Mi.setTransormAndDisplay=function(e,t){e.attr("transform",Mi.getTextTransform(t)),e.style("display",t.scale?null:"none")};Mi.ensureUniformFontSize=function(e,t){var r=Mi.extendFlat({},t);return r.size=Math.max(t.size,e._fullLayout.uniformtext.minsize||0),r};Mi.join2=function(e,t,r){var n=e.length;return n>1?e.slice(0,-1).join(t)+r+e[n-1]:e.join(t)};Mi.bigFont=function(e){return Math.round(1.2*e)};var jie=Mi.getFirefoxVersion(),wnt=jie!==null&&jie<86;Mi.getPositionFromD3Event=function(){return wnt?[ZS.event.layerX,ZS.event.layerY]:[ZS.event.offsetX,ZS.event.offsetY]}});var rne=ye(()=>{"use strict";var Tnt=Dr(),ene={"X,X div":'direction:ltr;font-family:"Open Sans",verdana,arial,sans-serif;margin:0;padding:0;border:0;',"X input,X button":'font-family:"Open Sans",verdana,arial,sans-serif;',"X input:focus,X button:focus":"outline:none;","X a":"text-decoration:none;","X a:hover":"text-decoration:none;","X .crisp":"shape-rendering:crispEdges;","X .user-select-none":"-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none;","X svg a":"fill:#447adb;","X svg a:hover":"fill:#3c6dc5;","X .main-svg":"position:absolute;top:0;left:0;pointer-events:none;","X .main-svg .draglayer":"pointer-events:all;","X .cursor-default":"cursor:default;","X .cursor-pointer":"cursor:pointer;","X .cursor-crosshair":"cursor:crosshair;","X .cursor-move":"cursor:move;","X .cursor-col-resize":"cursor:col-resize;","X .cursor-row-resize":"cursor:row-resize;","X .cursor-ns-resize":"cursor:ns-resize;","X .cursor-ew-resize":"cursor:ew-resize;","X .cursor-sw-resize":"cursor:sw-resize;","X .cursor-s-resize":"cursor:s-resize;","X .cursor-se-resize":"cursor:se-resize;","X .cursor-w-resize":"cursor:w-resize;","X .cursor-e-resize":"cursor:e-resize;","X .cursor-nw-resize":"cursor:nw-resize;","X .cursor-n-resize":"cursor:n-resize;","X .cursor-ne-resize":"cursor:ne-resize;","X .cursor-grab":"cursor:-webkit-grab;cursor:grab;","X .modebar":"position:absolute;top:2px;right:2px;","X .ease-bg":"-webkit-transition:background-color .3s ease 0s;-moz-transition:background-color .3s ease 0s;-ms-transition:background-color .3s ease 0s;-o-transition:background-color .3s ease 0s;transition:background-color .3s ease 0s;","X .modebar--hover>:not(.watermark)":"opacity:0;-webkit-transition:opacity .3s ease 0s;-moz-transition:opacity .3s ease 0s;-ms-transition:opacity .3s ease 0s;-o-transition:opacity .3s ease 0s;transition:opacity .3s ease 0s;","X:hover .modebar--hover .modebar-group":"opacity:1;","X:focus-within .modebar--hover .modebar-group":"opacity:1;","X .modebar-group":"float:left;display:inline-block;box-sizing:border-box;padding-left:8px;position:relative;vertical-align:middle;white-space:nowrap;","X .modebar-group a":"display:grid;place-content:center;","X .modebar-btn":"position:relative;font-size:16px;padding:3px 4px;height:22px;cursor:pointer;line-height:normal;box-sizing:border-box;border:none;background:rgba(0,0,0,0);","X .modebar-btn svg":"position:relative;","X .modebar-btn:focus-visible":"outline:1px solid #000;outline-offset:1px;border-radius:3px;","X .modebar.vertical":"display:flex;flex-direction:column;flex-wrap:wrap;align-content:flex-end;max-height:100%;","X .modebar.vertical svg":"top:-1px;","X .modebar.vertical .modebar-group":"display:block;float:none;padding-left:0px;padding-bottom:8px;","X .modebar.vertical .modebar-group .modebar-btn":"display:block;text-align:center;","X [data-title]:before,X [data-title]:after":"position:absolute;-webkit-transform:translate3d(0, 0, 0);-moz-transform:translate3d(0, 0, 0);-ms-transform:translate3d(0, 0, 0);-o-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);display:none;opacity:0;z-index:1001;pointer-events:none;top:110%;right:50%;","X [data-title]:hover:before,X [data-title]:hover:after":"display:block;opacity:1;","X [data-title]:before":'content:"";position:absolute;background:rgba(0,0,0,0);border:6px solid rgba(0,0,0,0);z-index:1002;margin-top:-12px;border-bottom-color:#69738a;margin-right:-6px;',"X [data-title]:after":"content:attr(data-title);background:#69738a;color:#fff;padding:8px 10px;font-size:12px;line-height:12px;white-space:nowrap;margin-right:-18px;border-radius:2px;","X .vertical [data-title]:before,X .vertical [data-title]:after":"top:0%;right:200%;","X .vertical [data-title]:before":"border:6px solid rgba(0,0,0,0);border-left-color:#69738a;margin-top:8px;margin-right:-30px;",Y:'font-family:"Open Sans",verdana,arial,sans-serif;position:fixed;top:50px;right:20px;z-index:10000;font-size:10pt;max-width:180px;',"Y p":"margin:0;","Y .notifier-note":"min-width:180px;max-width:250px;border:1px solid #fff;z-index:3000;margin:0;background-color:#8c97af;background-color:rgba(140,151,175,.9);color:#fff;padding:10px;overflow-wrap:break-word;word-wrap:break-word;-ms-hyphens:auto;-webkit-hyphens:auto;hyphens:auto;","Y .notifier-close":"color:#fff;opacity:.8;float:right;padding:0 5px;background:none;border:none;font-size:20px;font-weight:bold;line-height:20px;","Y .notifier-close:hover":"color:#444;text-decoration:none;cursor:pointer;"};for(tq in ene)tne=tq.replace(/^,/," ,").replace(/X/g,".js-plotly-plot .plotly").replace(/Y/g,".plotly-notifier"),Tnt.addStyleRule(tne,ene[tq]);var tne,tq});var rq=ye((Yir,ine)=>{ine.exports=!0});var nq=ye((Kir,nne)=>{"use strict";var Ant=rq(),iq;typeof window.matchMedia=="function"?iq=!window.matchMedia("(hover: none)").matches:iq=Ant;nne.exports=iq});var pb=ye((Jir,aq)=>{"use strict";var y3=typeof Reflect=="object"?Reflect:null,ane=y3&&typeof y3.apply=="function"?y3.apply:function(t,r,n){return Function.prototype.apply.call(t,r,n)},U6;y3&&typeof y3.ownKeys=="function"?U6=y3.ownKeys:Object.getOwnPropertySymbols?U6=function(t){return Object.getOwnPropertyNames(t).concat(Object.getOwnPropertySymbols(t))}:U6=function(t){return Object.getOwnPropertyNames(t)};function Snt(e){console&&console.warn&&console.warn(e)}var sne=Number.isNaN||function(t){return t!==t};function Jc(){Jc.init.call(this)}aq.exports=Jc;aq.exports.once=Cnt;Jc.EventEmitter=Jc;Jc.prototype._events=void 0;Jc.prototype._eventsCount=0;Jc.prototype._maxListeners=void 0;var one=10;function V6(e){if(typeof e!="function")throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof e)}Object.defineProperty(Jc,"defaultMaxListeners",{enumerable:!0,get:function(){return one},set:function(e){if(typeof e!="number"||e<0||sne(e))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+e+".");one=e}});Jc.init=function(){(this._events===void 0||this._events===Object.getPrototypeOf(this)._events)&&(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0};Jc.prototype.setMaxListeners=function(t){if(typeof t!="number"||t<0||sne(t))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+t+".");return this._maxListeners=t,this};function lne(e){return e._maxListeners===void 0?Jc.defaultMaxListeners:e._maxListeners}Jc.prototype.getMaxListeners=function(){return lne(this)};Jc.prototype.emit=function(t){for(var r=[],n=1;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")ane(l,this,r);else for(var u=l.length,c=dne(l,u),n=0;n<u;++n)ane(c[n],this,r);return!0};function une(e,t,r,n){var i,a,o;if(V6(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=lne(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,Snt(s)}return e}Jc.prototype.addListener=function(t,r){return une(this,t,r,!1)};Jc.prototype.on=Jc.prototype.addListener;Jc.prototype.prependListener=function(t,r){return une(this,t,r,!0)};function Mnt(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,arguments.length===0?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function cne(e,t,r){var n={fired:!1,wrapFn:void 0,target:e,type:t,listener:r},i=Mnt.bind(n);return i.listener=r,n.wrapFn=i,i}Jc.prototype.once=function(t,r){return V6(r),this.on(t,cne(this,t,r)),this};Jc.prototype.prependOnceListener=function(t,r){return V6(r),this.prependListener(t,cne(this,t,r)),this};Jc.prototype.removeListener=function(t,r){var n,i,a,o,s;if(V6(r),i=this._events,i===void 0)return this;if(n=i[t],n===void 0)return this;if(n===r||n.listener===r)--this._eventsCount===0?this._events=Object.create(null):(delete i[t],i.removeListener&&this.emit("removeListener",t,n.listener||r));else if(typeof n!="function"){for(a=-1,o=n.length-1;o>=0;o--)if(n[o]===r||n[o].listener===r){s=n[o].listener,a=o;break}if(a<0)return this;a===0?n.shift():Ent(n,a),n.length===1&&(i[t]=n[0]),i.removeListener!==void 0&&this.emit("removeListener",t,s||r)}return this};Jc.prototype.off=Jc.prototype.removeListener;Jc.prototype.removeAllListeners=function(t){var r,n,i;if(n=this._events,n===void 0)return this;if(n.removeListener===void 0)return arguments.length===0?(this._events=Object.create(null),this._eventsCount=0):n[t]!==void 0&&(--this._eventsCount===0?this._events=Object.create(null):delete n[t]),this;if(arguments.length===0){var a=Object.keys(n),o;for(i=0;i<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 fne(e,t,r){var n=e._events;if(n===void 0)return[];var i=n[t];return i===void 0?[]:typeof i=="function"?r?[i.listener||i]:[i]:r?knt(i):dne(i,i.length)}Jc.prototype.listeners=function(t){return fne(this,t,!0)};Jc.prototype.rawListeners=function(t){return fne(this,t,!1)};Jc.listenerCount=function(e,t){return typeof e.listenerCount=="function"?e.listenerCount(t):hne.call(e,t)};Jc.prototype.listenerCount=hne;function hne(e){var t=this._events;if(t!==void 0){var r=t[e];if(typeof r=="function")return 1;if(r!==void 0)return r.length}return 0}Jc.prototype.eventNames=function(){return this._eventsCount>0?U6(this._events):[]};function dne(e,t){for(var r=new Array(t),n=0;n<t;++n)r[n]=e[n];return r}function Ent(e,t){for(;t+1<e.length;t++)e[t]=e[t+1];e.pop()}function knt(e){for(var t=new Array(e.length),r=0;r<t.length;++r)t[r]=e[r].listener||e[r];return t}function Cnt(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))}vne(e,t,a,{once:!0}),t!=="error"&&Lnt(e,i,{once:!0})})}function Lnt(e,t,r){typeof e.on=="function"&&vne(e,"error",t,r)}function vne(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 _3=ye(($ir,pne)=>{"use strict";var oq=pb().EventEmitter,Pnt={init:function(e){if(e._ev instanceof oq)return e;var t=new oq,r=new oq;return e._ev=t,e._internalEv=r,e.on=t.on.bind(t),e.once=t.once.bind(t),e.removeListener=t.removeListener.bind(t),e.removeAllListeners=t.removeAllListeners.bind(t),e._internalOn=r.on.bind(r),e._internalOnce=r.once.bind(r),e._removeInternalListener=r.removeListener.bind(r),e._removeAllInternalListeners=r.removeAllListeners.bind(r),e.emit=function(n,i){t.emit(n,i),r.emit(n,i)},typeof e.addEventListener=="function"&&e.addEventListener("wheel",()=>{},{passive:!0}),e},triggerHandler:function(e,t,r){var n,i=e._ev;if(!i)return;var a=i._events[t];if(!a)return;function o(l){if(l.listener){if(i.removeListener(t,l.listener),!l.fired)return l.fired=!0,l.listener.apply(i,[r])}else return l.apply(i,[r])}a=Array.isArray(a)?a:[a];var s;for(s=0;s<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}};pne.exports=Pnt});var yne=ye((Qir,mne)=>{"use strict";var gne=Dr(),Int=cb().dfltConfig;function Rnt(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)?gne.extendDeep([],n):gne.extendDeepAll({},n):r[i]=n;return r}var Ty={};Ty.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>Int.queueLength&&(e.undoQueue.queue.shift(),e.undoQueue.index--)};Ty.startSequence=function(e){e.undoQueue=e.undoQueue||{index:0,queue:[],sequence:!1},e.undoQueue.sequence=!0,e.undoQueue.beginSequence=!0};Ty.stopSequence=function(e){e.undoQueue=e.undoQueue||{index:0,queue:[],sequence:!1},e.undoQueue.sequence=!1,e.undoQueue.beginSequence=!1};Ty.undo=function(t){var r,n;if(!(t.undoQueue===void 0||isNaN(t.undoQueue.index)||t.undoQueue.index<=0)){for(t.undoQueue.index--,r=t.undoQueue.queue[t.undoQueue.index],t.undoQueue.inSequence=!0,n=0;n<r.undo.calls.length;n++)Ty.plotDo(t,r.undo.calls[n],r.undo.args[n]);t.undoQueue.inSequence=!1,t.autoplay=!1}};Ty.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++)Ty.plotDo(t,r.redo.calls[n],r.redo.args[n]);t.undoQueue.inSequence=!1,t.autoplay=!1,t.undoQueue.index++}};Ty.plotDo=function(e,t,r){e.autoplay=!0,r=Rnt(e,r),t.apply(null,r)};mne.exports=Ty});var sq=ye((enr,_ne)=>{"use strict";_ne.exports={_isLinkedToArray:"frames_entry",group:{valType:"string"},name:{valType:"string"},traces:{valType:"any"},baseframe:{valType:"string"},data:{valType:"any"},layout:{valType:"any"}}});var w3=ye(Jh=>{"use strict";var _0=qa(),YS=Dr(),H6=Gl(),lq=c3(),Dnt=sq(),Fnt=US(),znt=cb().configAttributes,xne=mc(),wg=YS.extendDeepAll,x3=YS.isPlainObject,Ont=YS.isArrayOrTypedArray,j6=YS.nestedProperty,qnt=YS.valObjectMeta,uq="_isSubplotObj",W6="_isLinkedToArray",Bnt="_arrayAttrRegexps",wne="_deprecated",cq=[uq,W6,Bnt,wne];Jh.IS_SUBPLOT_OBJ=uq;Jh.IS_LINKED_TO_ARRAY=W6;Jh.DEPRECATED=wne;Jh.UNDERSCORE_ATTRS=cq;Jh.get=function(){var e={};return _0.allTypes.forEach(function(t){e[t]=Unt(t)}),{defs:{valObjects:qnt,metaKeys:cq.concat(["description","role","editType","impliedEdits"]),editType:{traces:xne.traces,layout:xne.layout},impliedEdits:{}},traces:e,layout:Vnt(),frames:Gnt(),animation:b3(Fnt),config:b3(znt)}};Jh.crawl=function(e,t,r,n){var i=r||0;n=n||"",Object.keys(e).forEach(function(a){var o=e[a];if(cq.indexOf(a)===-1){var s=(n?n+".":"")+a;t(o,a,e,i,s),!Jh.isValObject(o)&&x3(o)&&a!=="impliedEdits"&&Jh.crawl(o,t,i+1,s)}})};Jh.isValObject=function(e){return e&&e.valType!==void 0};Jh.findArrayAttributes=function(e){var t=[],r=[],n=[],i,a;function o(l,u,c,f){r=r.slice(0,f).concat([u]),n=n.slice(0,f).concat([l&&l._isLinkedToArray]);var h=l&&(l.valType==="data_array"||l.arrayOk===!0)&&!(r[f-1]==="colorbar"&&(u==="ticktext"||u==="tickvals"));h&&s(i,0,"")}function s(l,u,c){var f=l[r[u]],h=c+r[u];if(u===r.length-1)Ont(f)&&t.push(a+h);else if(n[u]){if(Array.isArray(f))for(var d=0;d<f.length;d++)x3(f[d])&&s(f[d],u+1,h+"["+d+"].")}else x3(f)&&s(f,u+1,h+".")}return i=e,a="",Jh.crawl(H6,o),e._module&&e._module.attributes&&Jh.crawl(e._module.attributes,o),t};Jh.getTraceValObject=function(e,t){var r=t[0],n=1,i,a,o=e._module;if(o||(o=(_0.modules[e.type||H6.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=H6[r]),Tne(a,t,n)};Jh.getLayoutValObject=function(e,t){var r=Nnt(e,t[0]);return Tne(r,t,1)};function Nnt(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 _0.componentsRegistry){if(i=_0.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 lq?lq[t]:!1}function Tne(e,t,r){if(!e)return!1;if(e._isLinkedToArray){if(G6(t[r]))r++;else if(r<t.length)return!1}for(;r<t.length;r++){var n=e[t[r]];if(x3(n))e=n;else break;if(r===t.length-1)break;if(e._isLinkedToArray){if(r++,!G6(t[r]))return!1}else if(e.valType==="info_array"){r++;var i=t[r];if(!G6(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(!G6(o))return!1;e=a[i][o]}else e=a[i]}else e=a}}return e}function G6(e){return e===Math.round(e)&&e>=0}function Unt(e){var t,r;t=_0.modules[e]._module,r=t.basePlotModule;var n={};n.type=null;var i=wg({},H6),a=wg({},t.attributes);Jh.crawl(a,function(l,u,c,f,h){j6(i,h).set(void 0),l===void 0&&j6(a,h).set(void 0)}),wg(n,i),_0.traceIs(e,"noOpacity")&&delete n.opacity,_0.traceIs(e,"showLegend")||(delete n.showlegend,delete n.legendgroup),_0.traceIs(e,"noHover")&&(delete n.hoverinfo,delete n.hoverlabel),t.selectPoints||delete n.selectedpoints,wg(n,a),r.attributes&&wg(n,r.attributes),n.type=e;var o={meta:t.meta||{},categories:t.categories||{},animatable:!!t.animatable,type:e,attributes:b3(n)};if(t.layoutAttributes){var s={};wg(s,t.layoutAttributes),o.layoutAttributes=b3(s)}return t.animatable||Jh.crawl(o,function(l){Jh.isValObject(l)&&"anim"in l&&delete l.anim}),o}function Vnt(){var e={},t,r;wg(e,lq);for(t in _0.subplotsRegistry)if(r=_0.subplotsRegistry[t],!!r.layoutAttributes)if(Array.isArray(r.attr))for(var n=0;n<r.attr.length;n++)bne(e,r,r.attr[n]);else{var i=r.attr==="subplot"?r.name:r.attr;bne(e,r,i)}for(t in _0.componentsRegistry){r=_0.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"?wg(e,r.layoutAttributes):r.layoutAttributes&&Xnt(e,r.layoutAttributes,r.name)}return{layoutAttributes:b3(e)}}function Gnt(){var e={frames:wg({},Dnt)};return b3(e),e.frames}function b3(e){return Hnt(e),jnt(e),Wnt(e),e}function Hnt(e){function t(n){return{valType:"string",editType:"none"}}function r(n,i,a){Jh.isValObject(n)?(n.arrayOk===!0||n.valType==="data_array")&&(a[i+"src"]=t(i)):x3(n)&&(n.role="object")}Jh.crawl(e,r)}function jnt(e){function t(r,n,i){if(r){var a=r[W6];a&&(delete r[W6],i[n]={items:{}},i[n].items[a]=r,i[n].role="object")}}Jh.crawl(e,t)}function Wnt(e){function t(r){for(var n in r)if(x3(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 bne(e,t,r){var n=j6(e,r),i=wg({},t.layoutAttributes);i[uq]=!0,n.set(i)}function Xnt(e,t,r){var n=j6(e,r);n.set(wg(n.get()||{},t))}});var vl=ye(gb=>{"use strict";var T3=Dr(),Znt=Gl(),$1="templateitemname",fq={name:{valType:"string",editType:"none"}};fq[$1]={valType:"string",editType:"calc"};gb.templatedArray=function(e,t){return t._isLinkedToArray=e,t.name=fq.name,t[$1]=fq[$1],t};gb.traceTemplater=function(e){var t={},r,n;for(r in e)n=e[r],Array.isArray(n)&&n.length&&(t[r]=0);function i(a){r=T3.coerce(a,{},Znt,"type");var o={type:r,_template:null};if(r in t){n=e[r];var s=t[r]%n.length;t[r]++,o._template=n[s]}return o}return{newTrace:i}};gb.newContainer=function(e,t,r){var n=e._template,i=n&&(n[t]||r&&n[r]);T3.isPlainObject(i)||(i=null);var a=e[t]={_template:i};return a};gb.arrayTemplater=function(e,t,r){var n=e._template,i=n&&n[Sne(t)],a=n&&n[t];(!Array.isArray(a)||!a.length)&&(a=[]);var o={};function s(u){var c={name:u.name,_input:u},f=c[$1]=u[$1];if(!Ane(f))return c._template=i,c;for(var h=0;h<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(Ane(h)&&!o[h]){var d={_template:f,name:h,_input:{_templateitemname:h}};d[$1]=f[$1],u.push(d),o[h]=1}}return u}return{newItem:s,defaultItems:l}};function Ane(e){return e&&typeof e=="string"}function Sne(e){var t=e.length-1;return e.charAt(t)!=="s"&&T3.warn("bad argument to arrayDefaultKey: "+e),e.slice(0,-1)+"defaults"}gb.arrayDefaultKey=Sne;gb.arrayEditor=function(e,t,r){var n=(T3.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][$1]=a)}l();function u(d,v){s[d]=v}function c(d,v){a?T3.nestedProperty(s[o],d).set(v):s[o+"."+d]=v}function f(){var d=s;return l(),d}function h(d,v){d&&c(d,v);var _=f();for(var b in _)T3.nestedProperty(e,b).set(_[b])}return{modifyBase:u,modifyItem:c,getUpdateObj:f,applyUpdate:h}}});var hd=ye((inr,Mne)=>{"use strict";var KS=o3().counter;Mne.exports={idRegex:{x:KS("x","( domain)?"),y:KS("y","( domain)?")},attrRegex:KS("[xy]axis"),xAxisMatch:KS("xaxis"),yAxisMatch:KS("yaxis"),AX_ID_PATTERN:/^[xyz][0-9]*( domain)?$/,AX_NAME_PATTERN:/^[xyz]axis[0-9]*$/,SUBPLOT_PATTERN:/^x([0-9]*)y([0-9]*)$/,HOUR_PATTERN:"hour",WEEKDAY_PATTERN:"day of week",MINDRAG:8,MINZOOM:20,DRAGGERSIZE:20,REDRAWDELAY:50,DFLTRANGEX:[-1,6],DFLTRANGEY:[-1,4],traceLayerClasses:["imagelayer","heatmaplayer","contourcarpetlayer","contourlayer","funnellayer","waterfalllayer","barlayer","carpetlayer","violinlayer","boxlayer","ohlclayer","scattercarpetlayer","scatterlayer"],clipOnAxisFalseQuery:[".scatterlayer",".barlayer",".funnellayer",".waterfalllayer"],layerValue2layerClass:{"above traces":"above","below traces":"below"},zindexSeparator:"z"}});var hf=ye(Ap=>{"use strict";var Ynt=qa(),hq=hd();Ap.id2name=function(t){if(!(typeof t!="string"||!t.match(hq.AX_ID_PATTERN))){var r=t.split(" ")[0].slice(1);return r==="1"&&(r=""),t.charAt(0)+"axis"+r}};Ap.name2id=function(t){if(t.match(hq.AX_NAME_PATTERN)){var r=t.slice(5);return r==="1"&&(r=""),t.charAt(0)+r}};Ap.cleanId=function(t,r,n){var i=/( domain)$/.test(t);if(!(typeof t!="string"||!t.match(hq.AX_ID_PATTERN))&&!(r&&t.charAt(0)!==r)&&!(i&&!n)){var a=t.split(" ")[0].slice(1).replace(/^0+/,"");return a==="1"&&(a=""),t.charAt(0)+a+(i&&n?" domain":"")}};Ap.list=function(e,t,r){var n=e._fullLayout;if(!n)return[];var i=Ap.listIds(e,t),a=new Array(i.length),o;for(o=0;o<i.length;o++){var s=i[o];a[o]=n[s.charAt(0)+"axis"+s.slice(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};Ap.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)};Ap.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[Ap.id2name(t)]};Ap.getFromTrace=function(e,t,r){var n=e._fullLayout,i=null;if(Ynt.traceIs(t,"gl3d")){var a=t.scene;a.slice(0,5)==="scene"&&(i=n[a][r+"axis"])}else i=Ap.getFromId(e,t[r+"axis"]||r);return i};Ap.idSort=function(e,t){var r=e.charAt(0),n=t.charAt(0);return r!==n?r>n?1:-1:+(e.slice(1)||1)-+(t.slice(1)||1)};Ap.ref2id=function(e){return/^[xyz]/.test(e)?e.split(" ")[0]:!1};function Ene(e,t){if(t&&t.length){for(var r=0;r<t.length;r++)if(t[r][e])return!0}return!1}Ap.isLinked=function(e,t){return Ene(t,e._axisMatchGroups)||Ene(t,e._axisConstraintGroups)}});var Q1=ye((anr,kne)=>{"use strict";function Knt(e){var t=e._fullLayout._zoomlayer;t&&t.selectAll(".outline-controllers").remove()}function Jnt(e){var t=e._fullLayout._zoomlayer;t&&t.selectAll(".select-outline").remove(),e._fullLayout._outlining=!1}kne.exports={clearOutlineControllers:Knt,clearOutline:Jnt}});var X6=ye((onr,Cne)=>{"use strict";Cne.exports={scattermode:{valType:"enumerated",values:["group","overlay"],dflt:"overlay",editType:"calc"},scattergap:{valType:"number",min:0,max:1,editType:"calc"}}});var Id=ye(Y6=>{"use strict";var Z6=qa(),snr=hd().SUBPLOT_PATTERN;Y6.getSubplotCalcData=function(e,t,r){var n=Z6.subplotsRegistry[t];if(!n)return[];for(var i=n.attr,a=[],o=0;o<e.length;o++){var s=e[o],l=s[0].trace;l[i]===r&&a.push(s)}return a};Y6.getModuleCalcData=function(e,t,r){var n=[],i=[],a;if(typeof t=="string"?a=Z6.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]};Y6.getSubplotData=function(t,r,n){if(!Z6.subplotsRegistry[r])return[];for(var i=Z6.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 Rne=ye(mb=>{"use strict";var $nt=qa(),A3=Dr();mb.manageCommandObserver=function(e,t,r,n){var i={},a=!0;t&&t._commandObserver&&(i=t._commandObserver),i.cache||(i.cache={}),i.lookupTable={};var o=mb.hasSimpleAPICommandBindings(e,r,i.lookupTable);if(t&&t._commandObserver){if(o)return i;if(t._commandObserver.remove)return t._commandObserver.remove(),t._commandObserver=null,i}if(o){Lne(e,o,i.cache),i.check=function(){if(a){var c=Lne(e,o,i.cache);return c.changed&&n&&i.lookupTable[c.value]!==void 0&&(i.disable(),Promise.resolve(n({value:c.value,type:o.type,prop:o.prop,traces:o.traces,index:i.lookupTable[c.value]})).then(i.enable,i.enable)),c.changed}};for(var s=["plotly_relayout","plotly_redraw","plotly_restyle","plotly_update","plotly_animatingframe","plotly_afterplot"],l=0;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 A3.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};mb.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=mb.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 Lne(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=A3.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}}mb.executeAPICommand=function(e,t,r){if(t==="skip")return Promise.resolve();var n=$nt.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 A3.warn("API call to Plotly."+t+" rejected.",o),Promise.reject(o)})};mb.computeAPICommandBindings=function(e,t,r){var n;switch(Array.isArray(r)||(r=[]),t){case"restyle":n=Ine(e,r);break;case"relayout":n=Pne(e,r);break;case"update":n=Ine(e,[r[0],r[2]]).concat(Pne(e,[r[1]]));break;case"animate":n=Qnt(e,r);break;default:n=[]}return n};function Qnt(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 Pne(e,t){var r=[],n=t[0],i={};if(typeof n=="string")i[n]=t[1];else if(A3.isPlainObject(n))i=n;else return r;return dq(i,function(a,o,s){r.push({type:"layout",prop:a,value:s})},"",0),r}function Ine(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(A3.isPlainObject(n))a=n,r===void 0&&(r=i);else return o;return r===void 0&&(r=null),dq(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 _=0;_<c.length;_++)f[_]=v}f.length=Math.min(c.length,f.length)}o.push({type:"data",prop:s,traces:c,value:f})},"",0),o}function dq(e,t,r,n){Object.keys(e).forEach(function(i){var a=e[i];if(i[0]!=="_"){var o=r+(n>0?".":"")+i;A3.isPlainObject(a)?dq(a,t,o,n+1):t(o,i,a)}})}});var Mc=ye((cnr,Xne)=>{"use strict";var Nne=Oa(),eat=r3().timeFormatLocale,tat=wO().formatLocale,JS=Eo(),rat=TO(),Xl=qa(),Une=w3(),iat=vl(),Ga=Dr(),Vne=ka(),Dne=fs().BADNUM,Sp=hf(),nat=Q1().clearOutline,aat=X6(),vq=US(),oat=sq(),sat=Id().getModuleCalcData,Fne=Ga.relinkPrivateKeys,yb=Ga._,xa=Xne.exports={};Ga.extendFlat(xa,Xl);xa.attributes=Gl();xa.attributes.type.values=xa.allTypes;xa.fontAttrs=ec();xa.layoutAttributes=c3();var J6=Rne();xa.executeAPICommand=J6.executeAPICommand;xa.computeAPICommandBindings=J6.computeAPICommandBindings;xa.manageCommandObserver=J6.manageCommandObserver;xa.hasSimpleAPICommandBindings=J6.hasSimpleAPICommandBindings;xa.redrawText=function(e){return e=Ga.getGraphDiv(e),new Promise(function(t){setTimeout(function(){e._fullLayout&&(Xl.getComponentMethod("annotations","draw")(e),Xl.getComponentMethod("legend","draw")(e),Xl.getComponentMethod("colorbar","draw")(e),t(xa.previousPromises(e)))},300)})};xa.resize=function(e){e=Ga.getGraphDiv(e);var t,r=new Promise(function(n,i){(!e||Ga.isHidden(e))&&i(new Error("Resize must be passed a displayed plot div element.")),e._redrawTimer&&clearTimeout(e._redrawTimer),e._resolveResize&&(t=e._resolveResize),e._resolveResize=n,e._redrawTimer=setTimeout(function(){if(!e.layout||e.layout.width&&e.layout.height||Ga.isHidden(e)){n(e);return}delete e.layout.width,delete e.layout.height;var a=e.changed;e.autoplay=!0,Xl.call("relayout",e,{autosize:!0}).then(function(){e.changed=a,e._resolveResize===n&&(delete e._resolveResize,n(e))})},100)});return t&&t(r),r};xa.previousPromises=function(e){if((e._promises||[]).length)return Promise.all(e._promises).then(function(){e._promises=[]})};xa.addLinks=function(e){if(!(!e._context.showLink&&!e._context.showSources)){var t=e._fullLayout,r=Ga.ensureSingle(t._paper,"text","js-plot-link-container",function(l){l.style({"font-family":'"Open Sans", Arial, sans-serif',"font-size":"12px",fill:Vne.defaultLine,"pointer-events":"all"}).each(function(){var u=Nne.select(this);u.append("tspan").classed("js-link-to-tool",!0),u.append("tspan").classed("js-link-spacer",!0),u.append("tspan").classed("js-sourcelinks",!0)})}),n=r.node(),i={y:t._paper.attr("height")-9};document.body.contains(n)&&n.getComputedTextLength()>=t.width-20?(i["text-anchor"]="start",i.x=5):(i["text-anchor"]="end",i.x=t._paper.attr("width")-7),r.attr(i);var a=r.select(".js-link-to-tool"),o=r.select(".js-link-spacer"),s=r.select(".js-sourcelinks");e._context.showSources&&e._context.showSources(e),e._context.showLink&&lat(e,a),o.text(a.text()&&s.text()?" - ":"")}};function lat(e,t){t.text("");var r=t.append("a").attr({"xlink:xlink:href":"#",class:"link--impt link--embedview","font-weight":"bold"}).text(e._context.linkText+" \xBB");if(e._context.sendData)r.on("click",function(){xa.sendDataToCloud(e)});else{var n=window.location.pathname.split("/"),i=window.location.search;r.attr({"xlink:xlink:show":"new","xlink:xlink:href":"/"+n[2].split(".")[0]+"/"+n[1]+i})}}xa.sendDataToCloud=function(e){var t=(window.PLOTLYENV||{}).BASE_URL||e._context.plotlyServerURL;if(t){e.emit("plotly_beforeexport");var r=Nne.select(e).append("div").attr("id","hiddenform").style("display","none"),n=r.append("form").attr({action:t+"/external",method:"post",target:"_blank"}),i=n.append("input").attr({type:"text",name:"data"});return i.node().value=xa.graphJson(e,!1,"keepdata"),n.node().submit(),r.remove(),e.emit("plotly_afterexport"),!1}};var uat=["days","shortDays","months","shortMonths","periods","dateTime","date","time","decimal","thousands","grouping","currency"],cat=["year","month","dayMonth","dayMonthYear"];xa.supplyDefaults=function(e,t){var r=t&&t.skipUpdateCalc,n=e._fullLayout||{};if(n._skipDefaults){delete n._skipDefaults;return}var i=e._fullLayout={},a=e.layout||{},o=e._fullData||[],s=e._fullData=[],l=e.data||[],u=e.calcdata||[],c=e._context||{},f;e._transitionData||xa.createTransitionData(e),i._dfltTitle={plot:yb(e,"Click to enter Plot title"),subtitle:yb(e,"Click to enter Plot subtitle"),x:yb(e,"Click to enter X axis title"),y:yb(e,"Click to enter Y axis title"),colorbar:yb(e,"Click to enter Colorscale title"),annotation:yb(e,"new text")},i._traceWord=yb(e,"trace");var h=zne(e,uat);if(i._mapboxAccessToken=c.mapboxAccessToken,n._initialAutoSizeIsDone){var d=n.width,v=n.height;xa.supplyLayoutGlobalDefaults(a,i,h),a.width||(i.width=d),a.height||(i.height=v),xa.sanitizeMargins(i)}else{xa.supplyLayoutGlobalDefaults(a,i,h);var _=!a.width||!a.height,b=i.autosize,p=c.autosizable,k=_&&(b||p);k?xa.plotAutoSize(e,a,i):_&&xa.sanitizeMargins(i),!b&&_&&(a.width=i.width,a.height=i.height)}i._d3locale=dat(h,i.separators),i._extraFormat=zne(e,cat),i._initialAutoSizeIsDone=!0,i._dataLength=l.length,i._modules=[],i._visibleModules=[],i._basePlotModules=[];var E=i._subplots=hat(),S=i._splomAxes={x:{},y:{}},L=i._splomSubplots={};i._splomGridDflt={},i._scatterStackOpts={},i._firstScatter={},i._alignmentOpts={},i._colorAxes={},i._requestRangeslider={},i._traceUids=fat(o,l),xa.supplyDataDefaults(l,s,a,i);var x=Object.keys(S.x),C=Object.keys(S.y);if(x.length>1&&C.length>1){for(Xl.getComponentMethod("grid","sizeDefaults")(a,i),f=0;f<x.length;f++)Ga.pushUnique(E.xaxis,x[f]);for(f=0;f<C.length;f++)Ga.pushUnique(E.yaxis,C[f]);for(var M in L)Ga.pushUnique(E.cartesian,M)}if(i._has=xa._hasPlotType.bind(i),o.length===s.length)for(f=0;f<s.length;f++)Fne(s[f],o[f]);xa.supplyLayoutModuleDefaults(a,i,s,e._transitionData);var g=i._visibleModules,P=[];for(f=0;f<g.length;f++){var T=g[f].crossTraceDefaults;T&&Ga.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"&&x.length>15&&C.length>15&&i.shapes.length===0&&i.images.length===0,xa.linkSubplots(s,i,o,n),xa.cleanPlot(s,i,o,n);var z=!!(n._has&&n._has("cartesian")),O=!!(i._has&&i._has("cartesian")),V=z,G=O;V&&!G?n._bgLayer.remove():G&&!V&&(i._shouldCreateBgLayer=!0),n._zoomlayer&&!e._dragging&&nat({_fullLayout:n}),vat(s,i),Fne(i,n),Xl.getComponentMethod("colorscale","crossTraceDefaults")(s,i),i._preGUI||(i._preGUI={}),i._tracePreGUI||(i._tracePreGUI={});var Z=i._tracePreGUI,j={},N;for(N in Z)j[N]="old";for(f=0;f<s.length;f++)N=s[f]._fullInput.uid,j[N]||(Z[N]={}),j[N]="new";for(N in j)j[N]==="old"&&delete Z[N];Gne(i),Xl.getComponentMethod("rangeslider","makeData")(i),!r&&u.length===s.length&&xa.supplyDefaultsUpdateCalc(u,s)};xa.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=Ga.nestedProperty(a,l).get().slice(),Ga.nestedProperty(n,l).set(u)}i.trace=n}}};function fat(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(Ga.randstr(u),i))}return l}function hat(){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++)Ga.pushUnique(e,s[n])}}for(r=0;r<e.length;r++)t[e[r]]=[];return t}function zne(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 dat(e,t){return e.decimal=t.charAt(0),e.thousands=t.charAt(1),{numberFormat:function(r){try{r=tat(e).format(Ga.adjustFormat(r))}catch(n){return Ga.warnBadFormat(r),Ga.noFormat}return r},timeFormat:eat(e).utcFormat}}function vat(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)}xa.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=[])};xa._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};xa.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()}};xa.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=Sp.getFromId(u,f,"x"),v=Sp.getFromId(u,f,"y"),_;for(h?_=s[f]=h:(_=s[f]={},_.id=f),d._counterAxes.push(v._id),v._counterAxes.push(d._id),d._subplotsWith.push(f),v._subplotsWith.push(f),_.xaxis=d,_.yaxis=v,_._hasClipOnAxisFalse=!1,a=0;a<e.length;a++){var b=e[a];if(b.xaxis===_.xaxis._id&&b.yaxis===_.yaxis._id&&b.cliponaxis===!1){_._hasClipOnAxisFalse=!0;break}}}var p=Sp.list(u,null,!0),k;for(i=0;i<p.length;i++){k=p[i];var E=null;k.overlaying&&(E=Sp.getFromId(u,k.overlaying),E&&E.overlaying&&(k.overlaying=!1,E=null)),k._mainAxis=E||k,E&&(k.domain=E.domain.slice()),k._anchorAxis=k.anchor==="free"?null:Sp.getFromId(u,k.anchor)}for(i=0;i<p.length;i++)if(k=p[i],k._counterAxes.sort(Sp.idSort),k._subplotsWith.sort(Ga.subplotSort),k._mainSubplot=pat(k,t),k._counterAxes.length&&(k.spikemode&&k.spikemode.indexOf("across")!==-1||k.automargin&&k.mirror&&k.anchor!=="free"||Xl.getComponentMethod("rangeslider","isVisible")(k))){var S=1,L=0;for(a=0;a<k._counterAxes.length;a++){var x=Sp.getFromId(u,k._counterAxes[a]);S=Math.min(S,x.domain[0]),L=Math.max(L,x.domain[1])}S<L&&(k._counterDomainMin=S,k._counterDomainMax=L)}};function pat(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=Sp.getFromId(r,c);if(s&&h.overlaying===s){a=f;break}}}return a||o}xa.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=[],Une.crawl(e._module.attributes,i)),n=0;n<t.length;n++){var a=Ga.nestedProperty(e,"_input."+t[n]);a.get()||Ga.nestedProperty(e,t[n]).set(null)}};xa.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(k){t.push(k);var E=k._module;E&&(Ga.pushUnique(i,E),k.visible===!0&&Ga.pushUnique(a,E),Ga.pushUnique(o,k._module.basePlotModule),s++,k._input.visible!==!1&&l++)}var d={},v=[],_=(r.template||{}).data||{},b=iat.traceTemplater(_);for(u=0;u<e.length;u++)f=e[u],c=b.newTrace(f),c.uid=n._traceUids[u],xa.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}};xa.supplyAnimationDefaults=function(e){e=e||{};var t,r={};function n(i,a){return Ga.coerce(e||{},r,vq,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]=xa.supplyAnimationFrameDefaults(e.frame[t]||{});else r.frame=xa.supplyAnimationFrameDefaults(e.frame||{});if(Array.isArray(e.transition))for(r.transition=[],t=0;t<e.transition.length;t++)r.transition[t]=xa.supplyAnimationTransitionDefaults(e.transition[t]||{});else r.transition=xa.supplyAnimationTransitionDefaults(e.transition||{});return r};xa.supplyAnimationFrameDefaults=function(e){var t={};function r(n,i){return Ga.coerce(e||{},t,vq.frame,n,i)}return r("duration"),r("redraw"),t};xa.supplyAnimationTransitionDefaults=function(e){var t={};function r(n,i){return Ga.coerce(e||{},t,vq.transition,n,i)}return r("duration"),r("easing"),t};xa.supplyFrameDefaults=function(e){var t={};function r(n,i){return Ga.coerce(e,t,oat,n,i)}return r("group"),r("name"),r("traces"),r("baseframe"),r("data"),r("layout"),t};xa.supplyTraceDefaults=function(e,t,r,n,i){var a=n.colorway||Vne.defaults,o=a[r%a.length],s;function l(E,S){return Ga.coerce(e,t,xa.attributes,E,S)}var u=l("visible");l("type"),l("name",n._traceWord+" "+i),l("uirevision",n.uirevision);var c=xa.getModule(t);if(t._module=c,c){var f=c.basePlotModule,h=f.attr,d=f.attributes;if(h&&d){var v=n._subplots,_="";if(Array.isArray(h))for(s=0;s<h.length;s++){var b=h[s],p=Ga.coerce(e,t,d,b);v[b]&&Ga.pushUnique(v[b],p),_+=p}else _=Ga.coerce(e,t,d,h);v[f.name]&&Ga.pushUnique(v[f.name],_)}}if(u&&(l("customdata"),l("ids"),l("meta"),Xl.traceIs(t,"showLegend")?(Ga.coerce(e,t,c.attributes.showlegend?c.attributes:xa.attributes,"showlegend"),Ga.coerce(e,t,c.attributes.legend?c.attributes:xa.attributes,"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||Ga.coerceHoverinfo(e,t,n),t.type!=="parcats"&&Xl.getComponentMethod("fx","supplyDefaults")(e,t,o,n)),c&&c.selectPoints)){var k=l("selectedpoints");Ga.isTypedArray(k)&&(t.selectedpoints=Array.from(k))}return t};xa.supplyLayoutGlobalDefaults=function(e,t,r){function n(f,h){return Ga.coerce(e,t,xa.layoutAttributes,f,h)}var i=e.template;Ga.isPlainObject(i)&&(t.template=i,t._template=i.layout,t._dataTemplate=i.data),n("autotypenumbers");var a=Ga.coerceFont(n,"font"),o=a.size;Ga.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),Ga.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&&xa.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"),Ga.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),Ga.coerce(e,t,aat,"scattermode")};function K6(e){return typeof e=="string"&&e.slice(-2)==="px"&&parseFloat(e)}xa.plotAutoSize=function(t,r,n){var i=t._context||{},a=i.frameMargins,o,s,l=Ga.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=K6(u.width)||K6(u.maxWidth)||n.width,s=K6(u.height)||K6(u.maxHeight)||n.height,JS(a)&&a>0){var c=1-2*a;o=Math.round(c*o),s=Math.round(c*s)}}var f=xa.layoutAttributes.width.min,h=xa.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}),xa.sanitizeMargins(n)};xa.supplyLayoutModuleDefaults=function(e,t,r,n){var i=Xl.componentsRegistry,a=t._basePlotModules,o,s,l,u=Xl.subplotsRegistry.cartesian;for(o in i)l=i[o],l.includeBasePlot&&l.includeBasePlot(e,t);a.length||a.push(u),t._has("cartesian")&&(Xl.getComponentMethod("grid","contentDefaults")(e,t),u.finalizeSubplots(e,t));for(var c in t._subplots)t._subplots[c].sort(Ga.subplotSort);for(s=0;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)};xa.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)),Ga.clearThrottle(),Ga.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()};xa.style=function(e){var t=e._fullLayout._visibleModules,r=[],n;for(n=0;n<t.length;n++){var i=t[n];i.style&&Ga.pushUnique(r,i.style)}for(n=0;n<r.length;n++)r[n](e)};xa.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))}};xa.clearAutoMarginIds=function(e){e._fullLayout._pushmarginIds={}};xa.allowAutoMargin=function(e,t){e._fullLayout._pushmarginIds[t]=1};function Gne(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 Hne=2,jne=2;xa.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=Ga.constrain(i-o.l-o.r,Hne,s),c=Ga.constrain(a-o.t-o.b,jne,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 _=r.pad;if(_===void 0&&(_=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 k=r.xl!==void 0?r.xl:r.x,E=r.xr!==void 0?r.xr:r.x,S=r.yt!==void 0?r.yt:r.y,L=r.yb!==void 0?r.yb:r.y;d[t]={l:{val:k,size:r.l+_},r:{val:E,size:r.r+_},b:{val:L,size:r.b+_},t:{val:S,size:r.t+_}},v[t]=1}if(!n._replotting)return xa.doAutoMargin(e)}};function gat(e){if("_redrawFromAutoMarginCount"in e._fullLayout)return!1;var t=Sp.list(e,"",!0);for(var r in t)if(t[r].autoshift||t[r].shift)return!0;return!1}xa.doAutoMargin=function(e){var t=e._fullLayout,r=t.width,n=t.height;t._size||(t._size={}),Gne(t);var i=t._size,a=t.margin,o={t:0,b:0,l:0,r:0},s=Ga.extendFlat({},i),l=a.l,u=a.r,c=a.t,f=a.b,h=t._pushmargin,d=t._pushmarginIds,v=t.minreducedwidth,_=t.minreducedheight;if(a.autoexpand!==!1){for(var b in h)d[b]||delete h[b];var p=e._fullLayout._reservedMargin;for(var k in p)for(var E in p[k]){var S=p[k][E];o[E]=Math.max(o[E],S)}h.base={l:{val:0,size:l},r:{val:1,size:u},t:{val:1,size:c},b:{val:0,size:f}};for(var L in o){var x=0;for(var C in h)C!=="base"&&JS(h[C][L].size)&&(x=h[C][L].size>x?h[C][L].size:x);var M=Math.max(0,a[L]-x);o[L]=Math.max(0,o[L]-M)}for(var g in h){var P=h[g].l||{},T=h[g].b||{},z=P.val,O=P.size,V=T.val,G=T.size,Z=r-o.r-o.l,j=n-o.t-o.b;for(var N in h){if(JS(O)&&h[N].r){var H=h[N].r.val,te=h[N].r.size;if(H>z){var oe=(O*H+(te-Z)*z)/(H-z),_e=(te*(1-z)+(O-Z)*(1-H))/(H-z);oe+_e>l+u&&(l=oe,u=_e)}}if(JS(G)&&h[N].t){var Ee=h[N].t.val,Ce=h[N].t.size;if(Ee>V){var me=(G*Ee+(Ce-j)*V)/(Ee-V),ie=(Ce*(1-V)+(G-j)*(1-Ee))/(Ee-V);me+ie>f+c&&(f=me,c=ie)}}}}}var Se=Ga.constrain(r-a.l-a.r,Hne,v),Le=Ga.constrain(n-a.t-a.b,jne,_),Ae=Math.max(0,r-Se),Fe=Math.max(0,n-Le);if(Ae){var Pe=(l+u)/Ae;Pe>1&&(l/=Pe,u/=Pe)}if(Fe){var ge=(f+c)/Fe;ge>1&&(f/=ge,c/=ge)}if(i.l=Math.round(l)+o.l,i.r=Math.round(u)+o.r,i.t=Math.round(c)+o.t,i.b=Math.round(f)+o.b,i.p=Math.round(a.pad),i.w=Math.round(r)-i.l-i.r,i.h=Math.round(n)-i.t-i.b,!t._replotting&&(xa.didMarginChange(s,i)||gat(e))){"_redrawFromAutoMarginCount"in t?t._redrawFromAutoMarginCount++:t._redrawFromAutoMarginCount=1;var Re=3*(1+Object.keys(d).length);if(t._redrawFromAutoMarginCount<Re)return Xl.call("_doPlot",e);t._size=s,Ga.warn("Too many auto-margin redraws.")}mat(e)};function mat(e){var t=Sp.list(e,"",!0);["_adjustTickLabelsOverflow","_hideCounterAxisInsideTickLabels"].forEach(function(r){for(var n=0;n<t.length;n++){var i=t[n][r];i&&i()}})}var One=["l","r","t","b","p","w","h"];xa.didMarginChange=function(e,t){for(var r=0;r<One.length;r++){var n=One[r],i=e[n],a=t[n];if(!JS(i)||Math.abs(a-i)>1)return!0}return!1};xa.graphJson=function(e,t,r,n,i,a){(i&&t&&!e._fullData||i&&!t&&!e._fullLayout)&&xa.supplyDefaults(e);var o=i?e._fullData:e.data,s=i?e._fullLayout:e.layout,l=(e._transitionData||{})._frames;function u(h,d){if(typeof h=="function")return d?"_function_":null;if(Ga.isPlainObject(h)){var v={},_;return Object.keys(h).sort().forEach(function(E){if(["_","["].indexOf(E.charAt(0))===-1){if(typeof h[E]=="function"){d&&(v[E]="_function");return}if(r==="keepdata"){if(E.slice(-3)==="src")return}else if(r==="keepstream"){if(_=h[E+"src"],typeof _=="string"&&_.indexOf(":")>0&&!Ga.isPlainObject(h.stream))return}else if(r!=="keepall"&&(_=h[E+"src"],typeof _=="string"&&_.indexOf(":")>0))return;v[E]=u(h[E],d)}}),v}var b=Array.isArray(h),p=Ga.isTypedArray(h);if((b||p)&&h.dtype&&h.shape){var k=h.bdata;return u({dtype:h.dtype,shape:h.shape,bdata:Ga.isArrayBuffer(k)?rat.encode(k):k},d)}return b?h.map(function(E){return u(E,d)}):p?Ga.simpleMap(h,Ga.identity):Ga.isJSDate(h)?Ga.ms2DateTimeLocal(+h):h}var c={data:(o||[]).map(function(h){var d=u(h);return t&&delete d.fit,d})};if(!t&&(c.layout=u(s),i)){var f=s._size;c.layout.computed={margin:{b:f.b,l:f.l,r:f.r,t:f.t}}}return l&&(c.frames=u(l)),a&&(c.config=u(e._context,!0)),n==="object"?c:JSON.stringify(c)};xa.modifyFrames=function(e,t){var r,n,i,a=e._transitionData._frames,o=e._transitionData._frameHash;for(r=0;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()};xa.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=xa.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]=xa.extendTrace(c.data[o],s.data[n]))}return c};xa.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)}};xa.extendObjectWithContainers=function(e,t,r){var n,i,a,o,s,l,u,c,f=Ga.extendDeepNoArrays({},t||{}),h=Ga.expandObjectPaths(f),d={};if(r&&r.length)for(a=0;a<r.length;a++)n=Ga.nestedProperty(h,r[a]),i=n.get(),i===void 0?Ga.nestedProperty(d,r[a]).set(null):(n.set(null),Ga.nestedProperty(d,r[a]).set(i));if(e=Ga.extendDeepNoArrays(e||{},h),r&&r.length){for(a=0;a<r.length;a++)if(s=Ga.nestedProperty(d,r[a]),u=s.get(),!!u){for(l=Ga.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]=xa.extendObjectWithContainers(c[o],v)}l.set(c)}}return e};xa.dataArrayContainers=["transforms","dimensions"];xa.layoutArrayContainers=Xl.layoutArrayContainers;xa.extendTrace=function(e,t){return xa.extendObjectWithContainers(e,t,xa.dataArrayContainers)};xa.extendLayout=function(e,t){return xa.extendObjectWithContainers(e,t,xa.layoutArrayContainers)};xa.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 _=v.basePlotModule.name;s[_]||(s[_]=[]),s[_].push(h)}e.data[c[f]]=xa.extendTrace(e.data[c[f]],t[f])}}var b=Ga.expandObjectPaths(Ga.extendDeepNoArrays({},r)),p=/^[xy]axis[0-9]*$/;for(var k in b)p.test(k)&&delete b[k].range;xa.extendLayout(e.layout,b),delete e.calcdata,xa.supplyDefaults(e),xa.doCalcdata(e);var E=Ga.expandObjectPaths(r);if(E){var S=e._fullLayout._plots;for(var L in S){var x=S[L],C=x.xaxis,M=x.yaxis,g=C.range.slice(),P=M.range.slice(),T=null,z=null,O=null,V=null;Array.isArray(E[C._name+".range"])?T=E[C._name+".range"].slice():Array.isArray((E[C._name]||{}).range)&&(T=E[C._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&&(C.r2l(g[0])!==C.r2l(T[0])||C.r2l(g[1])!==C.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(Ga.extendFlat({plotinfo:x},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=Ga.extendFlat({},a),c.duration=0,delete s.cartesian):c=a;for(var v in s){var _=s[v],b=e._fullData[_[0]]._module;b.basePlotModule.plot(e,_,c,u)}},Wne(e,a,o)};xa.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(),_=f.range.slice(),b=h.range.slice();f.setScale(),h.setScale();var p=null,k=null;(f.r2l(d[0])!==f.r2l(_[0])||f.r2l(d[1])!==f.r2l(_[1]))&&(p={xr0:d,xr1:_}),(h.r2l(v[0])!==h.r2l(b[0])||h.r2l(v[1])!==h.r2l(b[1]))&&(k={yr0:v,yr1:b}),(p||k)&&s.push(Ga.extendFlat({plotinfo:c},p,k))}return Promise.resolve()},o.runFn=function(l){for(var u=e._fullData,c=e._fullLayout,f=c._basePlotModules,h,d,v,_=[],b=0;b<u.length;b++)_.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 k(){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=Ga.extendFlat({},a,{duration:0}),v=_,d=a,setTimeout(p,a.duration),k()):(h=a,v=null,d=Ga.extendFlat({},a,{duration:0}),setTimeout(k,h.duration),p()):s.length?(h=a,p()):t.anim&&(v=_,d=a,k())},Wne(e,a,o)};function Wne(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=[xa.previousPromises,l,r.prepareFn,xa.rehover,xa.reselect,o],c=Ga.syncOrAsync(u,e);return(!c||!c.then)&&(c=Promise.resolve()),c.then(function(){return e})}xa.doCalcdata=function(e,t){var r=Sp.list(e),n=e._fullData,i=e._fullLayout,a,o,s,l,u=new Array(n.length),c=(e.calcdata||[]).slice();for(e.calcdata=u,i._numBoxes=0,i._numViolins=0,i._violinScaleGroupStats={},e._hmpixcount=0,e._hmlumcount=0,i._piecolormap={},i._sunburstcolormap={},i._treemapcolormap={},i._iciclecolormap={},i._funnelareacolormap={},s=0;s<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=Une.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 _(k){if(a=n[k],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 S=a.transforms[l];o=transformsRegistry[S.type],o&&o.calcTransform&&(a._hasCalcTransform=!0,v=!0,o.calcTransform(e,a,S))}}}function b(k,E){if(a=n[k],o=a._module,!!o.isContainer===E){var S=[];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&&(S=o.calc(e,a))}(!Array.isArray(S)||!S[0])&&(S=[{x:Dne,y:Dne}]),S[0].t||(S[0].t={}),S[0].trace=a,u[k]=S}}for(qne(r,n,i),s=0;s<n.length;s++)b(s,!0);for(s=0;s<n.length;s++)_(s);for(v&&qne(r,n,i),s=0;s<n.length;s++)b(s,!0);for(s=0;s<n.length;s++)b(s,!1);Bne(e);var p=_at(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);Bne(e)}Xl.getComponentMethod("fx","calc")(e),Xl.getComponentMethod("errorbars","calc")(e)};var yat=/(total|sum|min|max|mean|geometric mean|median) (ascending|descending)/;function _at(e,t){var r=[],n,i,a,o,s;function l(N,H,te){var oe=H._id.charAt(0);if(N==="histogram2dcontour"){var _e=H._counterAxes[0],Ee=Sp.getFromId(t,_e),Ce=oe==="x"||_e==="x"&&Ee.type==="category",me=oe==="y"||_e==="y"&&Ee.type==="category";return function(ie,Se){return ie===0||Se===0||Ce&&ie===te[Se].length-1||me&&Se===te.length-1?-1:(oe==="y"?Se:ie)-1}}else return function(ie,Se){return oe==="y"?Se:ie}}var u={min:function(N){return Ga.aggNums(Math.min,null,N)},max:function(N){return Ga.aggNums(Math.max,null,N)},sum:function(N){return Ga.aggNums(function(H,te){return H+te},null,N)},total:function(N){return Ga.aggNums(function(H,te){return H+te},null,N)},mean:function(N){return Ga.mean(N)},"geometric mean":function(N){return Ga.geometricMean(N)},median:function(N){return Ga.median(N)}};function c(N,H){return N[1]-H[1]}function f(N,H){return H[1]-N[1]}for(n=0;n<e.length;n++){var h=e[n];if(h.type==="category"){var d=h.categoryorder.match(yat);if(d){var v=d[1],_=d[2],b=h._id.charAt(0),p=b==="x",k=[];for(i=0;i<h._categories.length;i++)k.push([h._categories[i],[]]);for(i=0;i<h._traceIndices.length;i++){var E=h._traceIndices[i],S=t._fullData[E];if(S.visible===!0){var L=S.type;Xl.traceIs(S,"histogram")&&(delete S._xautoBinFinished,delete S._yautoBinFinished);var x=L==="splom",C=L==="scattergl",M=t.calcdata[E];for(a=0;a<M.length;a++){var g=M[a],P,T;if(x){var z=S._axesDim[h._id];if(!p){var O=S._diag[z][0];O&&(h=t._fullLayout[Sp.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];k[P][1].push(G.values[o])}}else if(C){for(o=0;o<g.t.x.length;o++)p?(P=g.t.x[o],T=g.t.y[o]):(P=g.t.y[o],T=g.t.x[o]),k[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(S.type,h,T);for(o=0;o<T.length;o++)for(s=0;s<T[o].length;s++)P=Z(s,o),P+1&&k[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++)k[P][1].push(T[o])}}}h._categoriesValue=k;var j=[];for(i=0;i<k.length;i++)j.push([k[i][0],u[v](k[i][1])]);j.sort(_==="descending"?f:c),h._categoriesAggregatedValue=j,h._initialCategories=j.map(function(N){return N[0]}),r=r.concat(h.sortByInitialCategories())}}}return r}function qne(e,t,r){var n={};function i(l){l.clearCalc(),l.type==="multicategory"&&l.setupMultiCategory(t),n[l._id]=1}Ga.simpleMap(e,i);for(var a=r._axisMatchGroups||[],o=0;o<a.length;o++)for(var s in a[o])n[s]||i(r[Sp.id2name(s)])}function Bne(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]?Ga.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)}}xa.rehover=function(e){e._fullLayout._rehover&&e._fullLayout._rehover()};xa.redrag=function(e){e._fullLayout._redrag&&e._fullLayout._redrag()};xa.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)};xa.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,Ga.filterVisible(d),n)}t.traceHash=a};xa.plotBasePlot=function(e,t,r,n,i){var a=Xl.getModule(e),o=sat(t.calcdata,a)[0];a.plot(t,o,n,i)};xa.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(_b=>{"use strict";_b.xmlns="http://www.w3.org/2000/xmlns/";_b.svg="http://www.w3.org/2000/svg";_b.xlink="http://www.w3.org/1999/xlink";_b.svgAttrs={xmlns:_b.svg,"xmlns:xlink":_b.xlink}});var $h=ye((hnr,Zne)=>{"use strict";Zne.exports={FROM_BL:{left:0,center:.5,right:1,bottom:0,middle:.5,top:1},FROM_TL:{left:0,center:.5,right:1,bottom:1,middle:.5,top:0},FROM_BR:{left:1,center:.5,right:0,bottom:0,middle:.5,top:1},LINE_SPACING:1.3,CAP_SHIFT:.7,MID_SHIFT:.35,OPPOSITE_SIDE:{left:"right",right:"left",top:"bottom",bottom:"top"}}});var ru=ye(x0=>{"use strict";var Ph=Oa(),Ay=Dr(),xat=Ay.strTranslate,pq=Wp(),bat=$h().LINE_SPACING,wat=/([^$]*)([$]+[^$]*[$]+)([^$]*)/;x0.convertToTspans=function(e,t,r){var n=e.text(),i=!e.attr("data-notex")&&t&&t._context.typesetMath&&typeof MathJax!="undefined"&&n.match(wat),a=Ph.select(e.node().parentNode);if(a.empty())return;var o=e.attr("class")?e.attr("class").split(" ")[0]:"text";o+="-math",a.selectAll("svg."+o).remove(),a.selectAll("g."+o+"-group").remove(),e.style("display",null).attr({"data-unformatted":n,"data-math":"N"});function s(){a.empty()||(o=e.attr("class")+"-math",a.select("svg."+o).remove()),e.text("").style("white-space","pre");var l=Fat(e.node(),n);l&&e.style("pointer-events","all"),x0.positionText(e),r&&r.call(e)}return i?(t&&t._promises||[]).push(new Promise(function(l){e.style("display","none");var u=parseInt(e.node().style.fontSize,10),c={fontSize:u};Mat(i[2],c,function(f,h,d){a.selectAll("svg."+o).remove(),a.selectAll("g."+o+"-group").remove();var v=f&&f.select("svg");if(!v||!v.node()){s(),l();return}var _=a.append("g").classed(o+"-group",!0).attr({"pointer-events":"none","data-unformatted":n,"data-math":"Y"});_.node().appendChild(v.node()),h&&h.node()&&v.node().insertBefore(h.node().cloneNode(!0),v.node().firstChild);var b=d.width,p=d.height;v.attr({class:o,height:p,preserveAspectRatio:"xMinYMin meet"}).style({overflow:"visible","pointer-events":"none"});var k=e.node().style.fill||"black",E=v.select("g");E.attr({fill:k,stroke:k});var S=E.node().getBoundingClientRect(),L=S.width,x=S.height;(L>b||x>p)&&(v.style("overflow","hidden"),S=v.node().getBoundingClientRect(),L=S.width,x=S.height);var C=+e.attr("x"),M=+e.attr("y"),g=u||e.node().getBoundingClientRect().height,P=-g/4;if(o[0]==="y")_.attr({transform:"rotate("+[-90,C,M]+")"+xat(-L/2,P-x/2)});else if(o[0]==="l")M=P-x/2;else if(o[0]==="a"&&o.indexOf("atitle")!==0)C=0,M=P;else{var T=e.attr("text-anchor");C=C-L*(T==="middle"?.5:T==="end"?1:0),M=M+P-x/2}v.attr({x:C,y:M}),r&&r.call(e,_),l(_)})})):s(),e};var Tat=/(<|&lt;|&#60;)/g,Aat=/(>|&gt;|&#62;)/g;function Sat(e){return e.replace(Tat,"\\lt ").replace(Aat,"\\gt ")}var Yne=[["$","$"],["\\(","\\)"]];function Mat(e,t,r){var n=parseInt((MathJax.version||"").split(".")[0]);if(n!==2&&n!==3){Ay.warn("No MathJax version:",MathJax.version);return}var i,a,o,s,l=function(){return a=Ay.extendDeepAll({},MathJax.Hub.config),o=MathJax.Hub.processSectionDelay,MathJax.Hub.processSectionDelay!==void 0&&(MathJax.Hub.processSectionDelay=0),MathJax.Hub.Config({messageStyle:"none",tex2jax:{inlineMath:Yne},displayAlign:"left"})},u=function(){a=Ay.extendDeepAll({},MathJax.config),MathJax.config.tex||(MathJax.config.tex={}),MathJax.config.tex.inlineMath=Yne},c=function(){if(i=MathJax.Hub.config.menuSettings.renderer,i!=="SVG")return MathJax.Hub.setRenderer("SVG")},f=function(){i=MathJax.config.startup.output,i!=="svg"&&(MathJax.config.startup.output="svg")},h=function(){var k="math-output-"+Ay.randstr({},64);s=Ph.select("body").append("div").attr({id:k}).style({visibility:"hidden",position:"absolute","font-size":t.fontSize+"px"}).text(Sat(e));var E=s.node();return n===2?MathJax.Hub.Typeset(E):MathJax.typeset([E])},d=function(){var k=s.select(n===2?".MathJax_SVG":".MathJax"),E=!k.empty()&&s.select("svg").node();if(!E)Ay.log("There was an error in the tex syntax.",e),r();else{var S=E.getBoundingClientRect(),L;n===2?L=Ph.select("body").select("#MathJax_SVG_glyphs"):L=k.select("defs"),r(k,L,S)}s.remove()},v=function(){if(i!=="SVG")return MathJax.Hub.setRenderer(i)},_=function(){i!=="svg"&&(MathJax.config.startup.output=i)},b=function(){return o!==void 0&&(MathJax.Hub.processSectionDelay=o),MathJax.Hub.Config(a)},p=function(){MathJax.config=a};n===2?MathJax.Hub.Queue(l,c,h,d,v,b):n===3&&(u(),f(),MathJax.startup.defaultReady(),MathJax.startup.promise.then(function(){h(),d(),_(),p()}))}var Qne={sup:"font-size:70%",sub:"font-size:70%",s:"text-decoration:line-through",u:"text-decoration:underline",b:"font-weight:bold",i:"font-style:italic",a:"cursor:pointer",span:"",em:"font-style:italic;font-weight:bold"},Eat={sub:"0.3em",sup:"-0.6em"},kat={sub:"-0.21em",sup:"0.42em"},Kne="\u200B",Jne=["http:","https:","mailto:","",void 0,":"],eae=x0.NEWLINES=/(\r\n?|\n)/g,mq=/(<[^<>]*>)/,yq=/<(\/?)([^ >]*)(\s+(.*))?>/i,Cat=/<br(\s+.*)?>/i;x0.BR_TAG_ALL=/<br(\s+.*)?>/gi;var tae=/(^|[\s"'])style\s*=\s*("([^"]*);?"|'([^']*);?')/i,rae=/(^|[\s"'])href\s*=\s*("([^"]*)"|'([^']*)')/i,iae=/(^|[\s"'])target\s*=\s*("([^"\s]*)"|'([^'\s]*)')/i,Lat=/(^|[\s"'])popup\s*=\s*("([\w=,]*)"|'([\w=,]*)')/i;function xb(e,t){if(!e)return null;var r=e.match(t),n=r&&(r[3]||r[4]);return n&&$6(n)}var Pat=/(^|;)\s*color:/;x0.plainText=function(e,t){t=t||{};for(var r=t.len!==void 0&&t.len!==-1?t.len:1/0,n=t.allowedTags!==void 0?t.allowedTags:["br"],i="...",a=i.length,o=e.split(mq),s=[],l="",u=0,c=0;c<o.length;c++){var f=o[c],h=f.match(yq),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 _=r-u;l&&(l!=="br"||_<=a||v<=a)&&s.pop(),r>a?s.push(f.slice(0,Math.max(0,_-a))+i):s.push(f.slice(0,_));break}l=""}}return s.join("")};var Iat={mu:"\u03BC",amp:"&",lt:"<",gt:">",nbsp:"\xA0",times:"\xD7",plusmn:"\xB1",deg:"\xB0"},Rat=/&(#\d+|#x[\da-fA-F]+|[a-z]+);/g;function $6(e){return e.replace(Rat,function(t,r){var n;return r.charAt(0)==="#"?n=Dat(r.charAt(1)==="x"?parseInt(r.slice(2),16):parseInt(r.slice(1),10)):n=Iat[r],n||t})}x0.convertEntities=$6;function Dat(e){if(!(e>1114111)){var t=String.fromCodePoint;if(t)return t(e);var r=String.fromCharCode;return e<=65535?r(e):r((e>>10)+55232,e%1024+56320)}}function Fat(e,t){t=t.replace(eae," ");var r=!1,n=[],i,a=-1;function o(){a++;var x=document.createElementNS(pq.svg,"tspan");Ph.select(x).attr({class:"line",dy:a*bat+"em"}),e.appendChild(x),i=x;var C=n;if(n=[{node:x}],C.length>1)for(var M=1;M<C.length;M++)s(C[M])}function s(x){var C=x.type,M={},g;if(C==="a"){g="a";var P=x.target,T=x.href,z=x.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";x.style&&(M.style=x.style);var O=document.createElementNS(pq.svg,g);if(C==="sup"||C==="sub"){l(i,Kne),i.appendChild(O);var V=document.createElementNS(pq.svg,"tspan");l(V,Kne),Ph.select(V).attr("dy",kat[C]),M.dy=Eat[C],i.appendChild(O),i.appendChild(V)}else i.appendChild(O);Ph.select(O).attr(M),i=x.node=O,n.push(x)}function l(x,C){x.appendChild(document.createTextNode(C))}function u(x){if(n.length===1){Ay.log("Ignoring unexpected end tag </"+x+">.",t);return}var C=n.pop();x!==C.type&&Ay.log("Start tag <"+C.type+"> doesnt match end tag <"+x+">. Pretending it did match.",t),i=n[n.length-1].node}var c=Cat.test(t);c?o():(i=e,n=[{node:e}]);for(var f=t.split(mq),h=0;h<f.length;h++){var d=f[h],v=d.match(yq),_=v&&v[2].toLowerCase(),b=Qne[_];if(_==="br")o();else if(b===void 0)l(i,$6(d));else if(v[1])u(_);else{var p=v[4],k={type:_},E=xb(p,tae);if(E?(E=E.replace(Pat,"$1 fill:"),b&&(E+=";"+b)):b&&(E=b),E&&(k.style=E),_==="a"){r=!0;var S=xb(p,rae);if(S){var L=nae(S);L&&(k.href=L,k.target=xb(p,iae)||"_blank",k.popup=xb(p,Lat))}}s(k)}}return r}function nae(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 Jne.indexOf(i)!==-1&&Jne.indexOf(a)!==-1?t:""}x0.sanitizeHTML=function(t){t=t.replace(eae," ");for(var r=document.createElement("p"),n=r,i=[],a=t.split(mq),o=0;o<a.length;o++){var s=a[o],l=s.match(yq),u=l&&l[2].toLowerCase();if(u in Qne)if(l[1])i.length&&(n=i.pop());else{var c=l[4],f=xb(c,tae),h=f?{style:f}:{};if(u==="a"){var d=xb(c,rae);if(d){var v=nae(d);if(v){h.href=v;var _=xb(c,iae);_&&(h.target=_)}}}var b=document.createElement(u);n.appendChild(b),Ph.select(b).attr(h),n=b,i.push(b)}else n.appendChild(document.createTextNode($6(s)))}var p="innerHTML";return r[p]};x0.lineCount=function(t){return t.selectAll("tspan.line").size()||1};x0.positionText=function(t,r,n){return t.each(function(){var i=Ph.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 $ne(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=Ay.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 gq="1px ";x0.makeTextShadow=function(e){var t=gq,r=gq,n=gq;return t+r+n+e+", -"+t+"-"+r+n+e+", "+t+"-"+r+n+e+", -"+t+r+n+e};x0.makeEditable=function(e,t){var r=t.gd,n=t.delegate,i=Ph.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&&Ph.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=Ph.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($ne(e,c,t)).on("blur",function(){r._editing=!1,e.text(this.textContent).style({opacity:1});var _=Ph.select(this).attr("class"),b;_?b="."+_.split(" ")[0]+"-math-group":b="[class*=-math-group]",b&&Ph.select(e.node().parentNode).select(b).style({opacity:0});var p=this.textContent;Ph.select(this).transition().duration(0).remove(),Ph.select(document).on("mouseup",null),i.edit.call(e,p)}).on("focus",function(){var _=this;r._editing=!0,Ph.select(document).on("mouseup",function(){if(Ph.event.target===_)return!1;document.activeElement===f.node()&&f.node().blur()})}).on("keyup",function(){Ph.event.which===27?(r._editing=!1,e.style({opacity:1}),Ph.select(this).style({opacity:0}).on("blur",function(){return!1}).transition().remove(),i.cancel.call(e,this.textContent)):(i.input.call(e,this.textContent),Ph.select(this).call($ne(e,c,t)))}).on("keydown",function(){Ph.event.which===13&&this.blur()}).call(s)}return t.immediate?o():a.on("click",o),Ph.rebind(e,i,"on")}});var pv=ye((vnr,hae)=>{"use strict";var zat=Oa(),eL=cd(),QS=Eo(),Q6=Dr(),aae=ka(),Oat=lb().isValid;function qat(e,t,r){var n=t?Q6.nestedProperty(e,t).get()||{}:e,i=n[r||"color"];i&&i._inputArray&&(i=i._inputArray);var a=!1;if(Q6.isArrayOrTypedArray(i)){for(var o=0;o<i.length;o++)if(QS(i[o])){a=!0;break}}return Q6.isPlainObject(n)&&(a||n.showscale===!0||QS(n.cmin)&&QS(n.cmax)||Oat(n.colorscale)||Q6.isPlainObject(n.colorbar))}var oae=["showscale","autocolorscale","colorscale","reversescale","colorbar"],$S=["min","max","mid","auto"];function lae(e){var t=e._colorAx,r=t||e,n={},i,a,o;for(a=0;a<oae.length;a++)o=oae[a],n[o]=r[o];if(t)for(i="c",a=0;a<$S.length;a++)o=$S[a],n[o]=r["c"+o];else{var s;for(a=0;a<$S.length;a++){if(o=$S[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=$S.indexOf(l)!==-1?i+l:l;r[c]=r["_"+c]=u},n}function uae(e){for(var t=lae(e),r=t.min,n=t.max,i=t.reversescale?cae(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 cae(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 fae(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=eL(n[o]).toRgb();a[o]=[s.r,s.g,s.b,s.a]}var l=zat.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 sae(l(h))}:c?f=function(h){return QS(h)?l(h):eL(h).isValid()?h:aae.defaultLine}:f=function(h){return QS(h)?sae(l(h)):eL(h).isValid()?h:aae.defaultLine},f.domain=l.domain,f.range=function(){return n},f}function Bat(e,t){return fae(uae(e),t)}function sae(e){var t={r:e[0],g:e[1],b:e[2],a:e[3]};return eL(t).toRgbString()}hae.exports={hasColorscale:qat,extractOpts:lae,extractScale:uae,flipScale:cae,makeColorScaleFunc:fae,makeColorScaleFuncFromTrace:Bat}});var df=ye((pnr,pae)=>{"use strict";var dae=NO(),Nat=dae.FORMAT_LINK,Uat=dae.DATE_FORMAT_LINK;function Vat(e,t){return{valType:"string",dflt:"",editType:"none",description:(t?_q:vae)("hover text",e)+["By default the values are formatted using "+(t?"generic number format":"`"+e+"axis.hoverformat`")+"."].join(" ")}}function _q(e,t){return["Sets the "+e+" formatting rule"+(t?"for `"+t+"` ":""),"using d3 formatting mini-languages","which are very similar to those in Python. For numbers, see: "+Nat+"."].join(" ")}function vae(e,t){return _q(e,t)+[" And for dates see: "+Uat+".","We add two items to d3's date formatter:","*%h* for half of the year as a decimal number as well as","*%{n}f* for fractional seconds","with n digits. For example, *2016-10-13 09:15:23.456* with tickformat","*%H~%M~%S.%2f* would display *09~15~23.46*"].join(" ")}pae.exports={axisHoverFormat:Vat,descriptionOnlyNumbers:_q,descriptionWithDates:vae}});var Rd=ye((mnr,Iae)=>{"use strict";var gae=ec(),S3=Lh(),Pae=Pd().dash,bq=Ao().extendFlat,mae=vl().templatedArray,gnr=Ll().templateFormatStringDescription,yae=df().descriptionWithDates,Gat=fs().ONEDAY,pm=hd(),Hat=pm.HOUR_PATTERN,jat=pm.WEEKDAY_PATTERN,xq={valType:"enumerated",values:["auto","linear","array"],editType:"ticks",impliedEdits:{tick0:void 0,dtick:void 0}},Wat=bq({},xq,{values:xq.values.slice().concat(["sync"])});function _ae(e){return{valType:"integer",min:0,dflt:e?5:0,editType:"ticks"}}var xae={valType:"any",editType:"ticks",impliedEdits:{tickmode:"linear"}},bae={valType:"any",editType:"ticks",impliedEdits:{tickmode:"linear"}},wae={valType:"data_array",editType:"ticks"},Tae={valType:"enumerated",values:["outside","inside",""],editType:"ticks"};function Aae(e){var t={valType:"number",min:0,editType:"ticks"};return e||(t.dflt=5),t}function Sae(e){var t={valType:"number",min:0,editType:"ticks"};return e||(t.dflt=1),t}var Mae={valType:"color",dflt:S3.defaultLine,editType:"ticks"},Eae={valType:"color",dflt:S3.lightLine,editType:"ticks"};function kae(e){var t={valType:"number",min:0,editType:"ticks"};return e||(t.dflt=1),t}var Cae=bq({},Pae,{editType:"ticks"}),Lae={valType:"boolean",editType:"ticks"};Iae.exports={visible:{valType:"boolean",editType:"plot"},color:{valType:"color",dflt:S3.defaultLine,editType:"ticks"},title:{text:{valType:"string",editType:"ticks"},font:gae({editType:"ticks"}),standoff:{valType:"number",min:0,editType:"ticks"},editType:"ticks"},type:{valType:"enumerated",values:["-","linear","log","date","category","multicategory"],dflt:"-",editType:"calc",_noTemplating:!0},autotypenumbers:{valType:"enumerated",values:["convert types","strict"],dflt:"convert types",editType:"calc"},autorange:{valType:"enumerated",values:[!0,!1,"reversed","min reversed","max reversed","min","max"],dflt:!0,editType:"axrange",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},autorangeoptions:{minallowed:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},maxallowed:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},clipmin:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},clipmax:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},include:{valType:"any",arrayOk:!0,editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},editType:"plot"},rangemode:{valType:"enumerated",values:["normal","tozero","nonnegative"],dflt:"normal",editType:"plot"},range:{valType:"info_array",items:[{valType:"any",editType:"axrange",impliedEdits:{"^autorange":!1},anim:!0},{valType:"any",editType:"axrange",impliedEdits:{"^autorange":!1},anim:!0}],editType:"axrange",impliedEdits:{autorange:!1},anim:!0},minallowed:{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},maxallowed:{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},fixedrange:{valType:"boolean",dflt:!1,editType:"calc"},modebardisable:{valType:"flaglist",flags:["autoscale","zoominout"],extras:["none"],dflt:"none",editType:"modebar"},insiderange:{valType:"info_array",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},scaleanchor:{valType:"enumerated",values:[pm.idRegex.x.toString(),pm.idRegex.y.toString(),!1],editType:"plot"},scaleratio:{valType:"number",min:0,dflt:1,editType:"plot"},constrain:{valType:"enumerated",values:["range","domain"],editType:"plot"},constraintoward:{valType:"enumerated",values:["left","center","right","top","middle","bottom"],editType:"plot"},matches:{valType:"enumerated",values:[pm.idRegex.x.toString(),pm.idRegex.y.toString()],editType:"calc"},rangebreaks:mae("rangebreak",{enabled:{valType:"boolean",dflt:!0,editType:"calc"},bounds:{valType:"info_array",items:[{valType:"any",editType:"calc"},{valType:"any",editType:"calc"}],editType:"calc"},pattern:{valType:"enumerated",values:[jat,Hat,""],editType:"calc"},values:{valType:"info_array",freeLength:!0,editType:"calc",items:{valType:"any",editType:"calc"}},dvalue:{valType:"number",editType:"calc",min:0,dflt:Gat},editType:"calc"}),tickmode:Wat,nticks:_ae(),tick0:xae,dtick:bae,ticklabelstep:{valType:"integer",min:1,dflt:1,editType:"ticks"},tickvals:wae,ticktext:{valType:"data_array",editType:"ticks"},ticks:Tae,tickson:{valType:"enumerated",values:["labels","boundaries"],dflt:"labels",editType:"ticks"},ticklabelmode:{valType:"enumerated",values:["instant","period"],dflt:"instant",editType:"ticks"},ticklabelposition:{valType:"enumerated",values:["outside","inside","outside top","inside top","outside left","inside left","outside right","inside right","outside bottom","inside bottom"],dflt:"outside",editType:"calc"},ticklabeloverflow:{valType:"enumerated",values:["allow","hide past div","hide past domain"],editType:"calc"},ticklabelshift:{valType:"integer",dflt:0,editType:"ticks"},ticklabelstandoff:{valType:"integer",dflt:0,editType:"ticks"},ticklabelindex:{valType:"integer",arrayOk:!0,editType:"calc"},mirror:{valType:"enumerated",values:[!0,"ticks",!1,"all","allticks"],dflt:!1,editType:"ticks+layoutstyle"},ticklen:Aae(),tickwidth:Sae(),tickcolor:Mae,showticklabels:{valType:"boolean",dflt:!0,editType:"ticks"},labelalias:{valType:"any",dflt:!1,editType:"ticks"},automargin:{valType:"flaglist",flags:["height","width","left","right","top","bottom"],extras:[!0,!1],dflt:!1,editType:"ticks"},showspikes:{valType:"boolean",dflt:!1,editType:"modebar"},spikecolor:{valType:"color",dflt:null,editType:"none"},spikethickness:{valType:"number",dflt:3,editType:"none"},spikedash:bq({},Pae,{dflt:"dash",editType:"none"}),spikemode:{valType:"flaglist",flags:["toaxis","across","marker"],dflt:"toaxis",editType:"none"},spikesnap:{valType:"enumerated",values:["data","cursor","hovered data"],dflt:"hovered data",editType:"none"},tickfont:gae({editType:"ticks"}),tickangle:{valType:"angle",dflt:"auto",editType:"ticks"},autotickangles:{valType:"info_array",freeLength:!0,items:{valType:"angle"},dflt:[0,30,90],editType:"ticks"},tickprefix:{valType:"string",dflt:"",editType:"ticks"},showtickprefix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},ticksuffix:{valType:"string",dflt:"",editType:"ticks"},showticksuffix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},showexponent:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},exponentformat:{valType:"enumerated",values:["none","e","E","power","SI","B","SI extended"],dflt:"B",editType:"ticks"},minexponent:{valType:"number",dflt:3,min:0,editType:"ticks"},separatethousands:{valType:"boolean",dflt:!1,editType:"ticks"},tickformat:{valType:"string",dflt:"",editType:"ticks",description:yae("tick label")},tickformatstops:mae("tickformatstop",{enabled:{valType:"boolean",dflt:!0,editType:"ticks"},dtickrange:{valType:"info_array",items:[{valType:"any",editType:"ticks"},{valType:"any",editType:"ticks"}],editType:"ticks"},value:{valType:"string",dflt:"",editType:"ticks"},editType:"ticks"}),hoverformat:{valType:"string",dflt:"",editType:"none",description:yae("hover text")},unifiedhovertitle:{text:{valType:"string",dflt:"",editType:"none"},editType:"none"},showline:{valType:"boolean",dflt:!1,editType:"ticks+layoutstyle"},linecolor:{valType:"color",dflt:S3.defaultLine,editType:"layoutstyle"},linewidth:{valType:"number",min:0,dflt:1,editType:"ticks+layoutstyle"},showgrid:Lae,gridcolor:Eae,gridwidth:kae(),griddash:Cae,zeroline:{valType:"boolean",editType:"ticks"},zerolinecolor:{valType:"color",dflt:S3.defaultLine,editType:"ticks"},zerolinelayer:{valType:"enumerated",values:["above traces","below traces"],dflt:"below traces",editType:"plot"},zerolinewidth:{valType:"number",dflt:1,editType:"ticks"},showdividers:{valType:"boolean",dflt:!0,editType:"ticks"},dividercolor:{valType:"color",dflt:S3.defaultLine,editType:"ticks"},dividerwidth:{valType:"number",dflt:1,editType:"ticks"},anchor:{valType:"enumerated",values:["free",pm.idRegex.x.toString(),pm.idRegex.y.toString()],editType:"plot"},side:{valType:"enumerated",values:["top","bottom","left","right"],editType:"plot"},overlaying:{valType:"enumerated",values:["free",pm.idRegex.x.toString(),pm.idRegex.y.toString()],editType:"plot"},minor:{tickmode:xq,nticks:_ae("minor"),tick0:xae,dtick:bae,tickvals:wae,ticks:Tae,ticklen:Aae("minor"),tickwidth:Sae("minor"),tickcolor:Mae,gridcolor:Eae,gridwidth:kae("minor"),griddash:Cae,showgrid:Lae,editType:"ticks"},minorloglabels:{valType:"enumerated",values:["small digits","complete","none"],dflt:"small digits",editType:"calc"},layer:{valType:"enumerated",values:["above traces","below traces"],dflt:"above traces",editType:"plot"},domain:{valType:"info_array",items:[{valType:"number",min:0,max:1,editType:"plot"},{valType:"number",min:0,max:1,editType:"plot"}],dflt:[0,1],editType:"plot"},position:{valType:"number",min:0,max:1,dflt:0,editType:"plot"},autoshift:{valType:"boolean",dflt:!1,editType:"plot"},shift:{valType:"number",editType:"plot"},categoryorder:{valType:"enumerated",values:["trace","category ascending","category descending","array","total ascending","total descending","min ascending","min descending","max ascending","max descending","sum ascending","sum descending","mean ascending","mean descending","geometric mean ascending","geometric mean descending","median ascending","median descending"],dflt:"trace",editType:"calc"},categoryarray:{valType:"data_array",editType:"calc"},uirevision:{valType:"any",editType:"none"},editType:"calc"}});var tL=ye((ynr,Fae)=>{"use strict";var $c=Rd(),Rae=ec(),Dae=Ao().extendFlat,Xat=mc().overrideAll;Fae.exports=Xat({orientation:{valType:"enumerated",values:["h","v"],dflt:"v"},thicknessmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"pixels"},thickness:{valType:"number",min:0,dflt:30},lenmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"fraction"},len:{valType:"number",min:0,dflt:1},x:{valType:"number"},xref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},xanchor:{valType:"enumerated",values:["left","center","right"]},xpad:{valType:"number",min:0,dflt:10},y:{valType:"number"},yref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},yanchor:{valType:"enumerated",values:["top","middle","bottom"]},ypad:{valType:"number",min:0,dflt:10},outlinecolor:$c.linecolor,outlinewidth:$c.linewidth,bordercolor:$c.linecolor,borderwidth:{valType:"number",min:0,dflt:0},bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)"},tickmode:$c.minor.tickmode,nticks:$c.nticks,tick0:$c.tick0,dtick:$c.dtick,tickvals:$c.tickvals,ticktext:$c.ticktext,ticks:Dae({},$c.ticks,{dflt:""}),ticklabeloverflow:Dae({},$c.ticklabeloverflow,{}),ticklabelposition:{valType:"enumerated",values:["outside","inside","outside top","inside top","outside left","inside left","outside right","inside right","outside bottom","inside bottom"],dflt:"outside"},ticklen:$c.ticklen,tickwidth:$c.tickwidth,tickcolor:$c.tickcolor,ticklabelstep:$c.ticklabelstep,showticklabels:$c.showticklabels,labelalias:$c.labelalias,tickfont:Rae({}),tickangle:$c.tickangle,tickformat:$c.tickformat,tickformatstops:$c.tickformatstops,tickprefix:$c.tickprefix,showtickprefix:$c.showtickprefix,ticksuffix:$c.ticksuffix,showticksuffix:$c.showticksuffix,separatethousands:$c.separatethousands,exponentformat:$c.exponentformat,minexponent:$c.minexponent,showexponent:$c.showexponent,title:{text:{valType:"string"},font:Rae({}),side:{valType:"enumerated",values:["right","top","bottom"]}}},"colorbars","from-root")});var Tu=ye((xnr,Oae)=>{"use strict";var Zat=tL(),Yat=o3().counter,Kat=Z1(),zae=lb().scales,_nr=Kat(zae);function rL(e){return"`"+e+"`"}Oae.exports=function(t,r){t=t||"",r=r||{};var n=r.cLetter||"c",i="onlyIfNumerical"in r?r.onlyIfNumerical:!!t,a="noScale"in r?r.noScale:t==="marker.line",o="showScaleDflt"in r?r.showScaleDflt:n==="z",s=typeof r.colorscaleDflt=="string"?zae[r.colorscaleDflt]:null,l=r.editTypeOverride||"",u=t?t+".":"",c,f;"colorAttr"in r?(c=r.colorAttr,f=r.colorAttr):(c={z:"z",c:"color"}[n],f="in "+rL(u+c));var h=i?" Has an effect only if "+f+" is set to a numerical array.":"",d=n+"auto",v=n+"min",_=n+"max",b=n+"mid",p=rL(u+d),k=rL(u+v),E=rL(u+_),S=k+" and "+E,L={};L[v]=L[_]=void 0;var x={};x[d]=!1;var C={};return c==="color"&&(C.color={valType:"color",arrayOk:!0,editType:l||"style"},r.anim&&(C.color.anim=!0)),C[d]={valType:"boolean",dflt:!0,editType:"calc",impliedEdits:L},C[v]={valType:"number",dflt:null,editType:l||"plot",impliedEdits:x},C[_]={valType:"number",dflt:null,editType:l||"plot",impliedEdits:x},C[b]={valType:"number",dflt:null,editType:"calc",impliedEdits:L},C.colorscale={valType:"colorscale",editType:"calc",dflt:s,impliedEdits:{autocolorscale:!1}},C.autocolorscale={valType:"boolean",dflt:r.autoColorDflt!==!1,editType:"calc",impliedEdits:{colorscale:void 0}},C.reversescale={valType:"boolean",dflt:!1,editType:"plot"},a||(C.showscale={valType:"boolean",dflt:o,editType:"calc"},C.colorbar=Zat),r.noColorAxis||(C.coloraxis={valType:"subplotid",regex:Yat("coloraxis"),dflt:null,editType:"calc"}),C}});var Tq=ye((bnr,qae)=>{"use strict";var Jat=Ao().extendFlat,$at=Tu(),wq=lb().scales;qae.exports={editType:"calc",colorscale:{editType:"calc",sequential:{valType:"colorscale",dflt:wq.Reds,editType:"calc"},sequentialminus:{valType:"colorscale",dflt:wq.Blues,editType:"calc"},diverging:{valType:"colorscale",dflt:wq.RdBu,editType:"calc"}},coloraxis:Jat({_isSubplotObj:!0,editType:"calc"},$at("",{colorAttr:"corresponding trace color array(s)",noColorAxis:!0,showScaleDflt:!0}))}});var Aq=ye((wnr,Bae)=>{"use strict";var Qat=Dr();Bae.exports=function(t){return Qat.isPlainObject(t.colorbar)}});var Eq=ye(Mq=>{"use strict";var Sq=Eo(),Nae=Dr(),Uae=fs(),eot=Uae.ONEDAY,tot=Uae.ONEWEEK;Mq.dtick=function(e,t){var r=t==="log",n=t==="date",i=t==="category",a=n?eot:1;if(!e)return a;if(Sq(e))return e=Number(e),e<=0?a:i?Math.max(1,Math.round(e)):n?Math.max(.1,e):e;if(typeof e!="string"||!(n||r))return a;var o=e.charAt(0),s=e.slice(1);return s=Sq(s)?Number(s):0,s<=0||!(n&&o==="M"&&s===Math.round(s)||r&&o==="L"||r&&o==="D"&&(s===1||s===2))?a:e};Mq.tick0=function(e,t,r,n){if(t==="date")return Nae.cleanDate(e,Nae.dateTick0(r,n%tot===0?1:0));if(!(n==="D1"||n==="D2"))return Sq(e)?Number(e):0}});var bb=ye((Anr,Gae)=>{"use strict";var Vae=Eq(),rot=Dr().isArrayOrTypedArray,iot=vv().isTypedArraySpec,not=vv().decodeTypedArraySpec;Gae.exports=function(t,r,n,i,a){a||(a={});var o=a.isMinor,s=o?t.minor||{}:t,l=o?r.minor:r,u=o?"minor.":"";function c(k){var E=s[k];return iot(E)&&(E=not(E)),E!==void 0?E:(l._template||{})[k]}var f=c("tick0"),h=c("dtick"),d=c("tickvals"),v=rot(d)?"array":h?"linear":"auto",_=n(u+"tickmode",v);if(_==="auto"||_==="sync")n(u+"nticks");else if(_==="linear"){var b=l.dtick=Vae.dtick(h,i);l.tick0=Vae.tick0(f,i,r.calendar,b)}else if(i!=="multicategory"){var p=n(u+"tickvals");p===void 0?l.tickmode="auto":o||n("ticktext")}}});var M3=ye((Snr,jae)=>{"use strict";var kq=Dr(),Hae=Rd();jae.exports=function(t,r,n,i){var a=i.isMinor,o=a?t.minor||{}:t,s=a?r.minor:r,l=a?Hae.minor:Hae,u=a?"minor.":"",c=kq.coerce2(o,s,l,"ticklen",a?(r.ticklen||5)*.6:void 0),f=kq.coerce2(o,s,l,"tickwidth",a?r.tickwidth||1:void 0),h=kq.coerce2(o,s,l,"tickcolor",(a?r.tickcolor:void 0)||s.color),d=n(u+"ticks",!a&&i.outerTicks||c||f||h?"outside":"");d||(delete s.ticklen,delete s.tickwidth,delete s.tickcolor)}});var Cq=ye((Mnr,Wae)=>{"use strict";Wae.exports=function(t){var r=["showexponent","showtickprefix","showticksuffix"],n=r.filter(function(a){return t[a]!==void 0}),i=function(a){return t[a]===t[n[0]]};if(n.every(i)||n.length===1)return t[n[0]]}});var Yd=ye((Enr,Xae)=>{"use strict";var iL=Dr(),aot=vl();Xae.exports=function(t,r,n){var i=n.name,a=n.inclusionAttr||"visible",o=r[i],s=iL.isArrayOrTypedArray(t[i])?t[i]:[],l=r[i]=[],u=aot.arrayTemplater(r,i,a),c,f;for(c=0;c<s.length;c++){var h=s[c];iL.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(iL.isArrayOrTypedArray(o)){var v=Math.min(o.length,l.length);for(c=0;c<v;c++)iL.relinkPrivateKeys(l[c],o[c])}return l}});var e_=ye((knr,Yae)=>{"use strict";var Lq=Dr(),oot=ka().contrast,Zae=Rd(),sot=Cq(),lot=Yd();Yae.exports=function(t,r,n,i,a){a||(a={});var o=n("labelalias");Lq.isPlainObject(o)||delete r.labelalias;var s=sot(t),l=n("showticklabels");if(l){a.noTicklabelshift||n("ticklabelshift"),a.noTicklabelstandoff||n("ticklabelstandoff");var u=a.font||{},c=r.color,f=r.ticklabelposition||"",h=f.indexOf("inside")!==-1?oot(a.bgColor):c&&c!==Zae.color.dflt?c:u.color;if(Lq.coerceFont(n,"tickfont",u,{overrideDflt:{color:h}}),!a.noTicklabelstep&&i!=="multicategory"&&i!=="log"&&n("ticklabelstep"),!a.noAng){var d=n("tickangle");!a.noAutotickangles&&d==="auto"&&n("autotickangles")}if(i!=="category"){var v=n("tickformat");lot(t,r,{name:"tickformatstops",inclusionAttr:"enabled",handleItemDefaults:uot}),r.tickformatstops.length||delete r.tickformatstops,!a.noExp&&!v&&i!=="date"&&(n("showexponent",s),n("exponentformat"),n("minexponent"),n("separatethousands"))}!a.noMinorloglabels&&i==="log"&&n("minorloglabels")}};function uot(e,t){function r(i,a){return Lq.coerce(e,t,Zae.tickformatstops,i,a)}var n=r("enabled");n&&(r("dtickrange"),r("value"))}});var t_=ye((Cnr,Kae)=>{"use strict";var cot=Cq();Kae.exports=function(t,r,n,i,a){a||(a={});var o=a.tickSuffixDflt,s=cot(t),l=n("tickprefix");l&&n("showtickprefix",s);var u=n("ticksuffix",o);u&&n("showticksuffix",s)}});var Pq=ye((Lnr,Jae)=>{"use strict";var r_=Dr(),fot=vl(),hot=bb(),dot=M3(),vot=e_(),pot=t_(),got=tL();Jae.exports=function(t,r,n){var i=fot.newContainer(r,"colorbar"),a=t.colorbar||{};function o(T,z){return r_.coerce(a,i,got,T,z)}var s=n.margin||{t:0,b:0,l:0,r:0},l=n.width-s.l-s.r,u=n.height-s.t-s.b,c=o("orientation"),f=c==="v",h=o("thicknessmode");o("thickness",h==="fraction"?30/(f?l:u):30);var d=o("lenmode");o("len",d==="fraction"?1:f?u:l);var v=o("yref"),_=o("xref"),b=v==="paper",p=_==="paper",k,E,S,L="left";f?(S="middle",L=p?"left":"right",k=p?1.02:1,E=.5):(S=b?"bottom":"top",L="center",k=.5,E=b?1.02:1),r_.coerce(a,i,{x:{valType:"number",min:p?-2:0,max:p?3:1,dflt:k}},"x"),r_.coerce(a,i,{y:{valType:"number",min:b?-2:0,max:b?3:1,dflt:E}},"y"),o("xanchor",L),o("xpad"),o("yanchor",S),o("ypad"),r_.noneOrAll(a,i,["x","y"]),o("outlinecolor"),o("outlinewidth"),o("bordercolor"),o("borderwidth"),o("bgcolor");var x=r_.coerce(a,i,{ticklabelposition:{valType:"enumerated",dflt:"outside",values:f?["outside","inside","outside top","inside top","outside bottom","inside bottom"]:["outside","inside","outside left","inside left","outside right","inside right"]}},"ticklabelposition");o("ticklabeloverflow",x.indexOf("inside")!==-1?"hide past domain":"hide past div"),hot(a,i,o,"linear");var C=n.font,M={noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0,outerTicks:!1,font:C};x.indexOf("inside")!==-1&&(M.bgColor="black"),pot(a,i,o,"linear",M),vot(a,i,o,"linear",M),dot(a,i,o,"linear",M),o("title.text",n._dfltTitle.colorbar);var g=i.showticklabels?i.tickfont:C,P=r_.extendFlat({},C,{family:g.family,size:r_.bigFont(g.size)});r_.coerceFont(o,"title.font",P),o("title.side",f?"top":"right")}});var Qh=ye((Pnr,eoe)=>{"use strict";var $ae=Eo(),Rq=Dr(),mot=Aq(),yot=Pq(),Qae=lb().isValid,_ot=qa().traceIs;function Iq(e,t){var r=t.slice(0,t.length-1);return t?Rq.nestedProperty(e,r).get()||{}:e}eoe.exports=function e(t,r,n,i,a){var o=a.prefix,s=a.cLetter,l="_module"in r,u=Iq(t,o),c=Iq(r,o),f=Iq(r._template||{},o)||{},h=function(){return delete t.coloraxis,delete r.coloraxis,e(t,r,n,i,a)};if(l){var d=n._colorAxes||{},v=i(o+"coloraxis");if(v){var _=_ot(r,"contour")&&Rq.nestedProperty(r,"contours.coloring").get()||"heatmap",b=d[v];b?(b[2].push(h),b[0]!==_&&(b[0]=!1,Rq.warn(["Ignoring coloraxis:",v,"setting","as it is linked to incompatible colorscales."].join(" ")))):d[v]=[_,r,[h]];return}}var p=u[s+"min"],k=u[s+"max"],E=$ae(p)&&$ae(k)&&p<k,S=i(o+s+"auto",!E);S?i(o+s+"mid"):(i(o+s+"min"),i(o+s+"max"));var L=u.colorscale,x=f.colorscale,C;if(L!==void 0&&(C=!Qae(L)),x!==void 0&&(C=!Qae(x)),i(o+"autocolorscale",C),i(o+"colorscale"),i(o+"reversescale"),o!=="marker.line."){var M;o&&l&&(M=mot(u));var g=i(o+"showscale",M);g&&(o&&f&&(c._template=f),yot(u,c,n))}}});var noe=ye((Inr,ioe)=>{"use strict";var toe=Dr(),xot=vl(),roe=Tq(),bot=Qh();ioe.exports=function(t,r){function n(f,h){return toe.coerce(t,r,roe,f,h)}n("colorscale.sequential"),n("colorscale.sequentialminus"),n("colorscale.diverging");var i=r._colorAxes,a,o;function s(f,h){return toe.coerce(a,o,roe.coloraxis,f,h)}for(var l in i){var u=i[l];if(u[0])a=t[l]||{},o=xot.newContainer(r,l,"coloraxis"),o._name=l,bot(a,o,r,s,{prefix:"",cLetter:"c"});else{for(var c=0;c<u[2].length;c++)u[2][c]();delete r._colorAxes[l]}}}});var ooe=ye((Rnr,aoe)=>{"use strict";var wot=Dr(),Tot=pv().hasColorscale,Aot=pv().extractOpts;aoe.exports=function(t,r){function n(c,f){var h=c["_"+f];h!==void 0&&(c[f]=h)}function i(c,f){var h=f.container?wot.nestedProperty(c,f.container).get():c;if(h)if(h.coloraxis)h._colorAx=r[h.coloraxis];else{var d=Aot(h),v=d.auto;(v||d.min===void 0)&&n(h,f.min),(v||d.max===void 0)&&n(h,f.max),d.autocolorscale&&n(h,"colorscale")}}for(var a=0;a<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);Tot(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 gv=ye((Dnr,loe)=>{"use strict";var soe=Eo(),Dq=Dr(),Sot=pv().extractOpts;loe.exports=function(t,r,n){var i=t._fullLayout,a=n.vals,o=n.containerStr,s=o?Dq.nestedProperty(r,o).get():r,l=Sot(s),u=l.auto!==!1,c=l.min,f=l.max,h=l.mid,d=function(){return Dq.aggNums(Math.min,null,a)},v=function(){return Dq.aggNums(Math.max,null,a)};if(c===void 0?c=d():u&&(s._colorAx&&soe(c)?c=Math.min(c,d()):c=d()),f===void 0?f=v():u&&(s._colorAx&&soe(f)?f=Math.max(f,v()):f=v()),u&&h!==void 0&&(f-h>h-c?c=h-(f-h):f-h<h-c&&(f=h+(h-c))),c===f&&(c-=.5,f+=.5),l._sync("min",c),l._sync("max",f),l.autocolorscale){var _;c*f<0?_=i.colorscale.diverging:c>=0?_=i.colorscale.sequential:_=i.colorscale.sequentialminus,l._sync("colorscale",_)}}});var tc=ye((Fnr,uoe)=>{"use strict";var nL=lb(),E3=pv();uoe.exports={moduleType:"component",name:"colorscale",attributes:Tu(),layoutAttributes:Tq(),supplyLayoutDefaults:noe(),handleDefaults:Qh(),crossTraceDefaults:ooe(),calc:gv(),scales:nL.scales,defaultScale:nL.defaultScale,getScale:nL.get,isValidScale:nL.isValid,hasColorscale:E3.hasColorscale,extractOpts:E3.extractOpts,extractScale:E3.extractScale,flipScale:E3.flipScale,makeColorScaleFunc:E3.makeColorScaleFunc,makeColorScaleFuncFromTrace:E3.makeColorScaleFuncFromTrace}});var Ru=ye((znr,foe)=>{"use strict";var coe=Dr(),Mot=vv().isTypedArraySpec;foe.exports={hasLines:function(e){return e.visible&&e.mode&&e.mode.indexOf("lines")!==-1},hasMarkers:function(e){return e.visible&&(e.mode&&e.mode.indexOf("markers")!==-1||e.type==="splom")},hasText:function(e){return e.visible&&e.mode&&e.mode.indexOf("text")!==-1},isBubble:function(e){var t=e.marker;return coe.isPlainObject(t)&&(coe.isArrayOrTypedArray(t.size)||Mot(t.size))}}});var k3=ye((Onr,hoe)=>{"use strict";var Eot=Eo();hoe.exports=function(t,r){r||(r=2);var n=t.marker,i=n.sizeref||1,a=n.sizemin||0,o=n.sizemode==="area"?function(s){return Math.sqrt(s/i)}:function(s){return s/i};return function(s){var l=o(s/r);return Eot(l)&&l>0?Math.max(l,a):0}}});var ip=ye(mv=>{"use strict";var aL=Dr();mv.getSubplot=function(e){return e.subplot||e.xaxis+e.yaxis||e.geo};mv.isTraceInSubplots=function(e,t){if(e.type==="splom"){for(var r=e.xaxes||[],n=e.yaxes||[],i=0;i<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(mv.getSubplot(e))!==-1};mv.flat=function(e,t){for(var r=new Array(e.length),n=0;n<e.length;n++)r[n]=t;return r};mv.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};mv.getDistanceFunction=function(e,t,r,n){return e==="closest"?n||mv.quadrature(t,r):e.charAt(0)==="x"?t:r};mv.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};mv.inbox=function(e,t,r){return e*t<0||e===0?r:1/0};mv.quadrature=function(e,t){return function(r){var n=e(r),i=t(r);return Math.sqrt(n*n+i*i)}};mv.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)),mv.appendArrayPointValue(i,t,n),i};mv.appendArrayPointValue=function(e,t,r){var n=t._arrayAttrs;if(n)for(var i=0;i<n.length;i++){var a=n[i],o=doe(a);if(e[o]===void 0){var s=aL.nestedProperty(t,a).get(),l=voe(s,r);l!==void 0&&(e[o]=l)}}};mv.appendArrayMultiPointValues=function(e,t,r){var n=t._arrayAttrs;if(n)for(var i=0;i<n.length;i++){var a=n[i],o=doe(a);if(e[o]===void 0){for(var s=aL.nestedProperty(t,a).get(),l=new Array(r.length),u=0;u<r.length;u++)l[u]=voe(s,r[u]);e[o]=l}}};var kot={ids:"id",locations:"location",labels:"label",values:"value","marker.colors":"color",parents:"parent"};function doe(e){return kot[e]||e}function voe(e,t){if(Array.isArray(t)){if(aL.isArrayOrTypedArray(e)&&aL.isArrayOrTypedArray(e[t[0]]))return e[t[0]][t[1]]}else return e[t]}var Cot={x:!0,y:!0},Lot={"x unified":!0,"y unified":!0};mv.isUnifiedHover=function(e){return typeof e!="string"?!1:!!Lot[e]};mv.isXYhover=function(e){return typeof e!="string"?!1:!!Cot[e]}});var eM=ye((Bnr,poe)=>{poe.exports=Iot;var Fq={a:7,c:6,h:1,l:2,m:2,q:4,s:4,t:2,v:1,z:0},Pot=/([astvzqmhlc])([^astvzqmhlc]*)/ig;function Iot(e){var t=[];return e.replace(Pot,function(r,n,i){var a=n.toLowerCase();for(i=Dot(i),a=="m"&&i.length>2&&(t.push([n].concat(i.splice(0,2))),a="l",n=n=="m"?"l":"L");;){if(i.length==Fq[a])return i.unshift(n),t.push(i);if(i.length<Fq[a])throw new Error("malformed path data");t.push([n].concat(i.splice(0,Fq[a])))}}),t}var Rot=/-?[0-9]*\.?[0-9]+(?:e[-+]?\d+)?/ig;function Dot(e){var t=e.match(Rot);return t?t.map(Number):[]}});var woe=ye((Nnr,boe)=>{"use strict";var Fot=eM(),ca=function(e,t){return t?Math.round(e*(t=Math.pow(10,t)))/t:Math.round(e)},hs="M0,0Z",goe=Math.sqrt(2),i_=Math.sqrt(3),zq=Math.PI,Oq=Math.cos,qq=Math.sin;boe.exports={circle:{n:0,f:function(e,t,r){if(ds(t))return hs;var n=ca(e,2),i="M"+n+",0A"+n+","+n+" 0 1,1 0,-"+n+"A"+n+","+n+" 0 0,1 "+n+",0Z";return r?vs(t,r,i):i}},square:{n:1,f:function(e,t,r){if(ds(t))return hs;var n=ca(e,2);return vs(t,r,"M"+n+","+n+"H-"+n+"V-"+n+"H"+n+"Z")}},diamond:{n:2,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*1.3,2);return vs(t,r,"M"+n+",0L0,"+n+"L-"+n+",0L0,-"+n+"Z")}},cross:{n:3,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*.4,2),i=ca(e*1.2,2);return vs(t,r,"M"+i+","+n+"H"+n+"V"+i+"H-"+n+"V"+n+"H-"+i+"V-"+n+"H-"+n+"V-"+i+"H"+n+"V-"+n+"H"+i+"Z")}},x:{n:4,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*.8/goe,2),i="l"+n+","+n,a="l"+n+",-"+n,o="l-"+n+",-"+n,s="l-"+n+","+n;return vs(t,r,"M0,"+n+i+a+o+a+o+s+o+s+i+s+i+"Z")}},"triangle-up":{n:5,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*2/i_,2),i=ca(e/2,2),a=ca(e,2);return vs(t,r,"M-"+n+","+i+"H"+n+"L0,-"+a+"Z")}},"triangle-down":{n:6,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*2/i_,2),i=ca(e/2,2),a=ca(e,2);return vs(t,r,"M-"+n+",-"+i+"H"+n+"L0,"+a+"Z")}},"triangle-left":{n:7,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*2/i_,2),i=ca(e/2,2),a=ca(e,2);return vs(t,r,"M"+i+",-"+n+"V"+n+"L-"+a+",0Z")}},"triangle-right":{n:8,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*2/i_,2),i=ca(e/2,2),a=ca(e,2);return vs(t,r,"M-"+i+",-"+n+"V"+n+"L"+a+",0Z")}},"triangle-ne":{n:9,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*.6,2),i=ca(e*1.2,2);return vs(t,r,"M-"+i+",-"+n+"H"+n+"V"+i+"Z")}},"triangle-se":{n:10,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*.6,2),i=ca(e*1.2,2);return vs(t,r,"M"+n+",-"+i+"V"+n+"H-"+i+"Z")}},"triangle-sw":{n:11,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*.6,2),i=ca(e*1.2,2);return vs(t,r,"M"+i+","+n+"H-"+n+"V-"+i+"Z")}},"triangle-nw":{n:12,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*.6,2),i=ca(e*1.2,2);return vs(t,r,"M-"+n+","+i+"V-"+n+"H"+i+"Z")}},pentagon:{n:13,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*.951,2),i=ca(e*.588,2),a=ca(-e,2),o=ca(e*-.309,2),s=ca(e*.809,2);return vs(t,r,"M"+n+","+o+"L"+i+","+s+"H-"+i+"L-"+n+","+o+"L0,"+a+"Z")}},hexagon:{n:14,f:function(e,t,r){if(ds(t))return hs;var n=ca(e,2),i=ca(e/2,2),a=ca(e*i_/2,2);return vs(t,r,"M"+a+",-"+i+"V"+i+"L0,"+n+"L-"+a+","+i+"V-"+i+"L0,-"+n+"Z")}},hexagon2:{n:15,f:function(e,t,r){if(ds(t))return hs;var n=ca(e,2),i=ca(e/2,2),a=ca(e*i_/2,2);return vs(t,r,"M-"+i+","+a+"H"+i+"L"+n+",0L"+i+",-"+a+"H-"+i+"L-"+n+",0Z")}},octagon:{n:16,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*.924,2),i=ca(e*.383,2);return vs(t,r,"M-"+i+",-"+n+"H"+i+"L"+n+",-"+i+"V"+i+"L"+i+","+n+"H-"+i+"L-"+n+","+i+"V-"+i+"Z")}},star:{n:17,f:function(e,t,r){if(ds(t))return hs;var n=e*1.4,i=ca(n*.225,2),a=ca(n*.951,2),o=ca(n*.363,2),s=ca(n*.588,2),l=ca(-n,2),u=ca(n*-.309,2),c=ca(n*.118,2),f=ca(n*.809,2),h=ca(n*.382,2);return vs(t,r,"M"+i+","+u+"H"+a+"L"+o+","+c+"L"+s+","+f+"L0,"+h+"L-"+s+","+f+"L-"+o+","+c+"L-"+a+","+u+"H-"+i+"L0,"+l+"Z")}},hexagram:{n:18,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*.66,2),i=ca(e*.38,2),a=ca(e*.76,2);return vs(t,r,"M-"+a+",0l-"+i+",-"+n+"h"+a+"l"+i+",-"+n+"l"+i+","+n+"h"+a+"l-"+i+","+n+"l"+i+","+n+"h-"+a+"l-"+i+","+n+"l-"+i+",-"+n+"h-"+a+"Z")}},"star-triangle-up":{n:19,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*i_*.8,2),i=ca(e*.8,2),a=ca(e*1.6,2),o=ca(e*4,2),s="A "+o+","+o+" 0 0 1 ";return vs(t,r,"M-"+n+","+i+s+n+","+i+s+"0,-"+a+s+"-"+n+","+i+"Z")}},"star-triangle-down":{n:20,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*i_*.8,2),i=ca(e*.8,2),a=ca(e*1.6,2),o=ca(e*4,2),s="A "+o+","+o+" 0 0 1 ";return vs(t,r,"M"+n+",-"+i+s+"-"+n+",-"+i+s+"0,"+a+s+n+",-"+i+"Z")}},"star-square":{n:21,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*1.1,2),i=ca(e*2,2),a="A "+i+","+i+" 0 0 1 ";return vs(t,r,"M-"+n+",-"+n+a+"-"+n+","+n+a+n+","+n+a+n+",-"+n+a+"-"+n+",-"+n+"Z")}},"star-diamond":{n:22,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*1.4,2),i=ca(e*1.9,2),a="A "+i+","+i+" 0 0 1 ";return vs(t,r,"M-"+n+",0"+a+"0,"+n+a+n+",0"+a+"0,-"+n+a+"-"+n+",0Z")}},"diamond-tall":{n:23,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*.7,2),i=ca(e*1.4,2);return vs(t,r,"M0,"+i+"L"+n+",0L0,-"+i+"L-"+n+",0Z")}},"diamond-wide":{n:24,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*1.4,2),i=ca(e*.7,2);return vs(t,r,"M0,"+i+"L"+n+",0L0,-"+i+"L-"+n+",0Z")}},hourglass:{n:25,f:function(e,t,r){if(ds(t))return hs;var n=ca(e,2);return vs(t,r,"M"+n+","+n+"H-"+n+"L"+n+",-"+n+"H-"+n+"Z")},noDot:!0},bowtie:{n:26,f:function(e,t,r){if(ds(t))return hs;var n=ca(e,2);return vs(t,r,"M"+n+","+n+"V-"+n+"L-"+n+","+n+"V-"+n+"Z")},noDot:!0},"circle-cross":{n:27,f:function(e,t,r){if(ds(t))return hs;var n=ca(e,2);return vs(t,r,"M0,"+n+"V-"+n+"M"+n+",0H-"+n+"M"+n+",0A"+n+","+n+" 0 1,1 0,-"+n+"A"+n+","+n+" 0 0,1 "+n+",0Z")},needLine:!0,noDot:!0},"circle-x":{n:28,f:function(e,t,r){if(ds(t))return hs;var n=ca(e,2),i=ca(e/goe,2);return vs(t,r,"M"+i+","+i+"L-"+i+",-"+i+"M"+i+",-"+i+"L-"+i+","+i+"M"+n+",0A"+n+","+n+" 0 1,1 0,-"+n+"A"+n+","+n+" 0 0,1 "+n+",0Z")},needLine:!0,noDot:!0},"square-cross":{n:29,f:function(e,t,r){if(ds(t))return hs;var n=ca(e,2);return vs(t,r,"M0,"+n+"V-"+n+"M"+n+",0H-"+n+"M"+n+","+n+"H-"+n+"V-"+n+"H"+n+"Z")},needLine:!0,noDot:!0},"square-x":{n:30,f:function(e,t,r){if(ds(t))return hs;var n=ca(e,2);return vs(t,r,"M"+n+","+n+"L-"+n+",-"+n+"M"+n+",-"+n+"L-"+n+","+n+"M"+n+","+n+"H-"+n+"V-"+n+"H"+n+"Z")},needLine:!0,noDot:!0},"diamond-cross":{n:31,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*1.3,2);return vs(t,r,"M"+n+",0L0,"+n+"L-"+n+",0L0,-"+n+"ZM0,-"+n+"V"+n+"M-"+n+",0H"+n)},needLine:!0,noDot:!0},"diamond-x":{n:32,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*1.3,2),i=ca(e*.65,2);return vs(t,r,"M"+n+",0L0,"+n+"L-"+n+",0L0,-"+n+"ZM-"+i+",-"+i+"L"+i+","+i+"M-"+i+","+i+"L"+i+",-"+i)},needLine:!0,noDot:!0},"cross-thin":{n:33,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*1.4,2);return vs(t,r,"M0,"+n+"V-"+n+"M"+n+",0H-"+n)},needLine:!0,noDot:!0,noFill:!0},"x-thin":{n:34,f:function(e,t,r){if(ds(t))return hs;var n=ca(e,2);return vs(t,r,"M"+n+","+n+"L-"+n+",-"+n+"M"+n+",-"+n+"L-"+n+","+n)},needLine:!0,noDot:!0,noFill:!0},asterisk:{n:35,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*1.2,2),i=ca(e*.85,2);return vs(t,r,"M0,"+n+"V-"+n+"M"+n+",0H-"+n+"M"+i+","+i+"L-"+i+",-"+i+"M"+i+",-"+i+"L-"+i+","+i)},needLine:!0,noDot:!0,noFill:!0},hash:{n:36,f:function(e,t,r){if(ds(t))return hs;var n=ca(e/2,2),i=ca(e,2);return vs(t,r,"M"+n+","+i+"V-"+i+"M"+(n-i)+",-"+i+"V"+i+"M"+i+","+n+"H-"+i+"M-"+i+","+(n-i)+"H"+i)},needLine:!0,noFill:!0},"y-up":{n:37,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*1.2,2),i=ca(e*1.6,2),a=ca(e*.8,2);return vs(t,r,"M-"+n+","+a+"L0,0M"+n+","+a+"L0,0M0,-"+i+"L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-down":{n:38,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*1.2,2),i=ca(e*1.6,2),a=ca(e*.8,2);return vs(t,r,"M-"+n+",-"+a+"L0,0M"+n+",-"+a+"L0,0M0,"+i+"L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-left":{n:39,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*1.2,2),i=ca(e*1.6,2),a=ca(e*.8,2);return vs(t,r,"M"+a+","+n+"L0,0M"+a+",-"+n+"L0,0M-"+i+",0L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-right":{n:40,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*1.2,2),i=ca(e*1.6,2),a=ca(e*.8,2);return vs(t,r,"M-"+a+","+n+"L0,0M-"+a+",-"+n+"L0,0M"+i+",0L0,0")},needLine:!0,noDot:!0,noFill:!0},"line-ew":{n:41,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*1.4,2);return vs(t,r,"M"+n+",0H-"+n)},needLine:!0,noDot:!0,noFill:!0},"line-ns":{n:42,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*1.4,2);return vs(t,r,"M0,"+n+"V-"+n)},needLine:!0,noDot:!0,noFill:!0},"line-ne":{n:43,f:function(e,t,r){if(ds(t))return hs;var n=ca(e,2);return vs(t,r,"M"+n+",-"+n+"L-"+n+","+n)},needLine:!0,noDot:!0,noFill:!0},"line-nw":{n:44,f:function(e,t,r){if(ds(t))return hs;var n=ca(e,2);return vs(t,r,"M"+n+","+n+"L-"+n+",-"+n)},needLine:!0,noDot:!0,noFill:!0},"arrow-up":{n:45,f:function(e,t,r){if(ds(t))return hs;var n=ca(e,2),i=ca(e*2,2);return vs(t,r,"M0,0L-"+n+","+i+"H"+n+"Z")},backoff:1,noDot:!0},"arrow-down":{n:46,f:function(e,t,r){if(ds(t))return hs;var n=ca(e,2),i=ca(e*2,2);return vs(t,r,"M0,0L-"+n+",-"+i+"H"+n+"Z")},noDot:!0},"arrow-left":{n:47,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*2,2),i=ca(e,2);return vs(t,r,"M0,0L"+n+",-"+i+"V"+i+"Z")},noDot:!0},"arrow-right":{n:48,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*2,2),i=ca(e,2);return vs(t,r,"M0,0L-"+n+",-"+i+"V"+i+"Z")},noDot:!0},"arrow-bar-up":{n:49,f:function(e,t,r){if(ds(t))return hs;var n=ca(e,2),i=ca(e*2,2);return vs(t,r,"M-"+n+",0H"+n+"M0,0L-"+n+","+i+"H"+n+"Z")},backoff:1,needLine:!0,noDot:!0},"arrow-bar-down":{n:50,f:function(e,t,r){if(ds(t))return hs;var n=ca(e,2),i=ca(e*2,2);return vs(t,r,"M-"+n+",0H"+n+"M0,0L-"+n+",-"+i+"H"+n+"Z")},needLine:!0,noDot:!0},"arrow-bar-left":{n:51,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*2,2),i=ca(e,2);return vs(t,r,"M0,-"+i+"V"+i+"M0,0L"+n+",-"+i+"V"+i+"Z")},needLine:!0,noDot:!0},"arrow-bar-right":{n:52,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*2,2),i=ca(e,2);return vs(t,r,"M0,-"+i+"V"+i+"M0,0L-"+n+",-"+i+"V"+i+"Z")},needLine:!0,noDot:!0},arrow:{n:53,f:function(e,t,r){if(ds(t))return hs;var n=zq/2.5,i=2*e*Oq(n),a=2*e*qq(n);return vs(t,r,"M0,0L"+-i+","+a+"L"+i+","+a+"Z")},backoff:.9,noDot:!0},"arrow-wide":{n:54,f:function(e,t,r){if(ds(t))return hs;var n=zq/4,i=2*e*Oq(n),a=2*e*qq(n);return vs(t,r,"M0,0L"+-i+","+a+"A "+2*e+","+2*e+" 0 0 1 "+i+","+a+"Z")},backoff:.4,noDot:!0}};function ds(e){return e===null}var moe,yoe,_oe,xoe;function vs(e,t,r){if((!e||e%360===0)&&!t)return r;if(_oe===e&&xoe===t&&moe===r)return yoe;_oe=e,xoe=t,moe=r;function n(b,p){var k=Oq(b),E=qq(b),S=p[0],L=p[1]+(t||0);return[S*k-L*E,S*E+L*k]}for(var i=e/180*zq,a=0,o=0,s=Fot(r),l="",u=0;u<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 _=n(i,[a,o]);(f==="H"||f==="V")&&(f="L"),(f==="M"||f==="L"||f==="m"||f==="l")&&(c[1]=_[0],c[2]=_[1]),c[0]=f,l+=c[0]+c.slice(1).join(",")}return yoe=l,l}});var So=ye((Unr,Voe)=>{"use strict";var dd=Oa(),Du=Dr(),zot=Du.numberFormat,Sb=Eo(),Hq=cd(),sL=qa(),Kd=ka(),Oot=tc(),rM=Du.strTranslate,lL=ru(),qot=Wp(),Bot=$h(),Not=Bot.LINE_SPACING,Ioe=N1().DESELECTDIM,Uot=Ru(),Vot=k3(),Got=ip().appendArrayPointValue,Aa=Voe.exports={};Aa.font=function(e,t){var r=t.variant,n=t.style,i=t.weight,a=t.color,o=t.size,s=t.family,l=t.shadow,u=t.lineposition,c=t.textcase;s&&e.style("font-family",s),o+1&&e.style("font-size",o+"px"),a&&e.call(Kd.fill,a),i&&e.style("font-weight",i),n&&e.style("font-style",n),r&&e.style("font-variant",r),c&&e.style("text-transform",Bq(jot(c))),l&&e.style("text-shadow",l==="auto"?lL.makeTextShadow(Kd.contrast(a)):Bq(l)),u&&e.style("text-decoration-line",Bq(Wot(u)))};function Bq(e){return e==="none"?void 0:e}var Hot={normal:"none",lower:"lowercase",upper:"uppercase","word caps":"capitalize"};function jot(e){return Hot[e]}function Wot(e){return e.replace("under","underline").replace("over","overline").replace("through","line-through").split("+").join(" ")}Aa.setPosition=function(e,t,r){e.attr("x",t).attr("y",r)};Aa.setSize=function(e,t,r){e.attr("width",t).attr("height",r)};Aa.setRect=function(e,t,r,n,i){e.call(Aa.setPosition,t,r).call(Aa.setSize,n,i)};Aa.translatePoint=function(e,t,r,n){var i=r.c2p(e.x),a=n.c2p(e.y);if(Sb(i)&&Sb(a)&&t.node())t.node().nodeName==="text"?t.attr("x",i).attr("y",a):t.attr("transform",rM(i,a));else return!1;return!0};Aa.translatePoints=function(e,t,r){e.each(function(n){var i=dd.select(this);Aa.translatePoint(n,i,t,r)})};Aa.hideOutsideRangePoint=function(e,t,r,n,i,a){t.attr("display",r.isPtWithinRange(e,i)&&n.isPtWithinRange(e,a)?null:"none")};Aa.hideOutsideRangePoints=function(e,t){if(t._hasClipOnAxisFalse){var r=t.xaxis,n=t.yaxis;e.each(function(i){var a=i[0].trace,o=a.xcalendar,s=a.ycalendar,l=sL.traceIs(a,"bar-like")?".bartext":".point,.textpoint";e.selectAll(l).each(function(u){Aa.hideOutsideRangePoint(u,dd.select(this),r,n,o,s)})})}};Aa.crispRound=function(e,t,r){return!t||!Sb(t)?r||0:e._context.staticPlot?t:t<1?1:Math.round(t)};Aa.singleLineStyle=function(e,t,r,n,i){t.style("fill","none");var a=(((e||[])[0]||{}).trace||{}).line||{},o=r||a.width||0,s=i||a.dash||"";Kd.stroke(t,n||a.color),Aa.dashLine(t,s,o)};Aa.lineGroupStyle=function(e,t,r,n){e.style("fill","none").each(function(i){var a=(((i||[])[0]||{}).trace||{}).line||{},o=t||a.width||0,s=n||a.dash||"";dd.select(this).call(Kd.stroke,r||a.color).call(Aa.dashLine,s,o)})};Aa.dashLine=function(e,t,r){r=+r||0,t=Aa.dashStyle(t,r),e.style({"stroke-dasharray":t,"stroke-width":r+"px"})};Aa.dashStyle=function(e,t){t=+t||1;var r=Math.max(t,3);return e==="solid"?e="":e==="dot"?e=r+"px,"+r+"px":e==="dash"?e=3*r+"px,"+3*r+"px":e==="longdash"?e=5*r+"px,"+5*r+"px":e==="dashdot"?e=3*r+"px,"+r+"px,"+r+"px,"+r+"px":e==="longdashdot"&&(e=5*r+"px,"+2*r+"px,"+r+"px,"+2*r+"px"),e};function Roe(e,t,r,n){var i=t.fillpattern,a=t.fillgradient,o=Aa.getPatternAttr,s=i&&(o(i.shape,0,"")||o(i.path,0,""));if(s){var l=o(i.bgcolor,0,null),u=o(i.fgcolor,0,null),c=i.fgopacity,f=o(i.size,0,8),h=o(i.solidity,0,.3),d=t.uid;Aa.pattern(e,"point",r,d,s,f,h,void 0,i.fillmode,l,u,c)}else if(a&&a.type!=="none"){var v=a.type,_="scatterfill-"+t.uid;if(n&&(_="legendfill-"+t.uid),!n&&(a.start!==void 0||a.stop!==void 0)){var b,p;v==="horizontal"?(b={x:a.start,y:0},p={x:a.stop,y:0}):v==="vertical"&&(b={x:0,y:a.start},p={x:0,y:a.stop}),b.x=t._xA.c2p(b.x===void 0?t._extremes.x.min[0].val:b.x,!0),b.y=t._yA.c2p(b.y===void 0?t._extremes.y.min[0].val:b.y,!0),p.x=t._xA.c2p(p.x===void 0?t._extremes.x.max[0].val:p.x,!0),p.y=t._yA.c2p(p.y===void 0?t._extremes.y.max[0].val:p.y,!0),e.call(zoe,r,_,"linear",a.colorscale,"fill",b,p,!0,!1)}else v==="horizontal"&&(v=v+"reversed"),e.call(Aa.gradient,r,_,v,a.colorscale,"fill")}else t.fillcolor&&e.call(Kd.fill,t.fillcolor)}Aa.singleFillStyle=function(e,t){var r=dd.select(e.node()),n=r.data(),i=((n[0]||[])[0]||{}).trace||{};Roe(e,i,t,!1)};Aa.fillGroupStyle=function(e,t,r){e.style("stroke-width",0).each(function(n){var i=dd.select(this);n[0].trace&&Roe(i,n[0].trace,t,r)})};var Toe=woe();Aa.symbolNames=[];Aa.symbolFuncs=[];Aa.symbolBackOffs=[];Aa.symbolNeedLines={};Aa.symbolNoDot={};Aa.symbolNoFill={};Aa.symbolList=[];Object.keys(Toe).forEach(function(e){var t=Toe[e],r=t.n;Aa.symbolList.push(r,String(r),e,r+100,String(r+100),e+"-open"),Aa.symbolNames[r]=e,Aa.symbolFuncs[r]=t.f,Aa.symbolBackOffs[r]=t.backoff||0,t.needLine&&(Aa.symbolNeedLines[r]=!0),t.noDot?Aa.symbolNoDot[r]=!0:Aa.symbolList.push(r+200,String(r+200),e+"-dot",r+300,String(r+300),e+"-open-dot"),t.noFill&&(Aa.symbolNoFill[r]=!0)});var Xot=Aa.symbolNames.length,Zot="M0,0.5L0.5,0L0,-0.5L-0.5,0Z";Aa.symbolNumber=function(e){if(Sb(e))e=+e;else if(typeof e=="string"){var t=0;e.indexOf("-open")>0&&(t=100,e=e.replace("-open","")),e.indexOf("-dot")>0&&(t+=200,e=e.replace("-dot","")),e=Aa.symbolNames.indexOf(e),e>=0&&(e+=t)}return e%100>=Xot||e>=400?0:Math.floor(Math.max(e,0))};function Doe(e,t,r,n){var i=e%100;return Aa.symbolFuncs[i](t,r,n)+(e>=200?Zot:"")}var Aoe=zot("~f"),Foe={radial:{type:"radial"},radialreversed:{type:"radial",reversed:!0},horizontal:{type:"linear",start:{x:1,y:0},stop:{x:0,y:0}},horizontalreversed:{type:"linear",start:{x:1,y:0},stop:{x:0,y:0},reversed:!0},vertical:{type:"linear",start:{x:0,y:1},stop:{x:0,y:0}},verticalreversed:{type:"linear",start:{x:0,y:1},stop:{x:0,y:0},reversed:!0}};Aa.gradient=function(e,t,r,n,i,a){var o=Foe[n];return zoe(e,t,r,o.type,i,a,o.start,o.stop,!1,o.reversed)};function zoe(e,t,r,n,i,a,o,s,l,u){var c=i.length,f;n==="linear"?f={node:"linearGradient",attrs:{x1:o.x,y1:o.y,x2:s.x,y2:s.y,gradientUnits:l?"userSpaceOnUse":"objectBoundingBox"},reversed:u}:n==="radial"&&(f={node:"radialGradient",reversed:u});for(var h=new Array(c),d=0;d<c;d++)f.reversed?h[c-1-d]=[Aoe((1-i[d][0])*100),i[d][1]]:h[d]=[Aoe(i[d][0]*100),i[d][1]];var v=t._fullLayout,_="g"+v._uid+"-"+r,b=v._defs.select(".gradients").selectAll("#"+_).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",_);var k=p.selectAll("stop").data(h);k.exit().remove(),k.enter().append("stop"),k.each(function(E){var S=Hq(E[1]);dd.select(this).attr({offset:E[0]+"%","stop-color":Kd.tinyRGB(S),"stop-opacity":S.getAlpha()})})}),e.style(a,jq(_,t)).style(a+"-opacity",null),e.classed("gradient_filled",!0)}Aa.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,_,b,p=function(O,V,G,Z,j){return Z+(j-Z)*(O-V)/(G-V)},k,E,S,L,x={},C=Hq(c),M=Kd.tinyRGB(C),g=C.getAlpha(),P=f*g;switch(i){case"/":_=a*Math.sqrt(2),b=a*Math.sqrt(2),k="M-"+_/4+","+b/4+"l"+_/2+",-"+b/2+"M0,"+b+"L"+_+",0M"+_/4*3+","+b/4*5+"l"+_/2+",-"+b/2,E=o*a,L="path",x={d:k,opacity:P,stroke:M,"stroke-width":E+"px"};break;case"\\":_=a*Math.sqrt(2),b=a*Math.sqrt(2),k="M"+_/4*3+",-"+b/4+"l"+_/2+","+b/2+"M0,0L"+_+","+b+"M-"+_/4+","+b/4*3+"l"+_/2+","+b/2,E=o*a,L="path",x={d:k,opacity:P,stroke:M,"stroke-width":E+"px"};break;case"x":_=a*Math.sqrt(2),b=a*Math.sqrt(2),k="M-"+_/4+","+b/4+"l"+_/2+",-"+b/2+"M0,"+b+"L"+_+",0M"+_/4*3+","+b/4*5+"l"+_/2+",-"+b/2+"M"+_/4*3+",-"+b/4+"l"+_/2+","+b/2+"M0,0L"+_+","+b+"M-"+_/4+","+b/4*3+"l"+_/2+","+b/2,E=a-a*Math.sqrt(1-o),L="path",x={d:k,opacity:P,stroke:M,"stroke-width":E+"px"};break;case"|":_=a,b=a,L="path",k="M"+_/2+",0L"+_/2+","+b,E=o*a,L="path",x={d:k,opacity:P,stroke:M,"stroke-width":E+"px"};break;case"-":_=a,b=a,L="path",k="M0,"+b/2+"L"+_+","+b/2,E=o*a,L="path",x={d:k,opacity:P,stroke:M,"stroke-width":E+"px"};break;case"+":_=a,b=a,L="path",k="M"+_/2+",0L"+_/2+","+b+"M0,"+b/2+"L"+_+","+b/2,E=a-a*Math.sqrt(1-o),L="path",x={d:k,opacity:P,stroke:M,"stroke-width":E+"px"};break;case".":_=a,b=a,o<Math.PI/4?S=Math.sqrt(o*a*a/Math.PI):S=p(o,Math.PI/4,1,a/2,a/Math.sqrt(2)),L="circle",x={cx:_/2,cy:b/2,r:S,opacity:P,fill:M};break;default:_=a,b=a,L="path",x={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:_+"px",height:b+"px",patternUnits:"userSpaceOnUse",patternTransform:h?"scale(0.8)":""}),u){var V=Hq(u),G=Kd.tinyRGB(V),Z=V.getAlpha(),j=O.selectAll("rect").data([0]);j.exit().remove(),j.enter().append("rect").attr({width:_+"px",height:b+"px",fill:G,"fill-opacity":Z})}var N=O.selectAll(L).data([0]);N.exit().remove(),N.enter().append(L).attr(x)}),e.style("fill",jq(v,r)).style("fill-opacity",null),e.classed("pattern_filled",!0)};Aa.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)};Aa.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)};Aa.getPatternAttr=function(e,t,r){return e&&Du.isArrayOrTypedArray(e)?t<e.length?e[t]:r:e};Aa.pointStyle=function(e,t,r,n){if(e.size()){var i=Aa.makePointStyleFns(t);e.each(function(a){Aa.singlePointStyle(a,dd.select(this),t,i,r,n)})}};Aa.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=Aa.symbolNumber(e.mx||o.symbol)||0;e.om=u%200>=100;var c=Xq(e,r),f=Wq(e,r);t.attr("d",Doe(u,l,c,f))}var h=!1,d,v,_;if(e.so)_=s.outlierwidth,v=s.outliercolor,d=o.outliercolor;else{var b=(s||{}).width;_=(e.mlw+1||b+1||(e.trace?(e.trace.marker.line||{}).width:0)+1)-1||0,"mlc"in e?v=e.mlcc=n.lineScale(e.mlc):Du.isArrayOrTypedArray(s.color)?v=Kd.defaultLine:v=s.color,Du.isArrayOrTypedArray(o.color)&&(d=Kd.defaultLine,h=!0),"mc"in e?d=e.mcc=n.markerScale(e.mc):d=o.color||o.colors||"rgba(0,0,0,0)",n.selectedColorFn&&(d=n.selectedColorFn(e))}if(e.om)t.call(Kd.stroke,d).style({"stroke-width":(_||1)+"px",fill:"none"});else{t.style("stroke-width",(e.isBlank?0:_)+"px");var p=o.gradient,k=e.mgt;k?h=!0:k=p&&p.type,Du.isArrayOrTypedArray(k)&&(k=k[0],Foe[k]||(k=0));var E=o.pattern,S=Aa.getPatternAttr,L=E&&(S(E.shape,e.i,"")||S(E.path,e.i,""));if(k&&k!=="none"){var x=e.mgc;x?h=!0:x=p.color;var C=r.uid;h&&(C+="-"+e.i),Aa.gradient(t,i,C,k,[[0,x],[1,d]],"fill")}else if(L){var M=!1,g=E.fgcolor;!g&&a&&a.color&&(g=a.color,M=!0);var P=S(g,e.i,a&&a.color||null),T=S(E.bgcolor,e.i,null),z=E.fgopacity,O=S(E.size,e.i,8),V=S(E.solidity,e.i,.3);M=M||e.mcc||Du.isArrayOrTypedArray(E.shape)||Du.isArrayOrTypedArray(E.path)||Du.isArrayOrTypedArray(E.bgcolor)||Du.isArrayOrTypedArray(E.fgcolor)||Du.isArrayOrTypedArray(E.size)||Du.isArrayOrTypedArray(E.solidity);var G=r.uid;M&&(G+="-"+e.i),Aa.pattern(t,"point",i,G,L,O,V,e.mcc,E.fillmode,T,P,z)}else Du.isArrayOrTypedArray(d)?Kd.fill(t,d[e.i]):Kd.fill(t,d);_&&Kd.stroke(t,v)}};Aa.makePointStyleFns=function(e){var t={},r=e.marker;return t.markerScale=Aa.tryColorscale(r,""),t.lineScale=Aa.tryColorscale(r,"line"),sL.traceIs(e,"symbols")&&(t.ms2mrc=Uot.isBubble(e)?Vot(e):function(){return(r.size||6)/2}),e.selectedpoints&&Du.extendFlat(t,Aa.makeSelectedPointStyleFns(e)),t};Aa.makeSelectedPointStyleFns=function(e){var t={},r=e.selected||{},n=e.unselected||{},i=e.marker||{},a=r.marker||{},o=n.marker||{},s=i.opacity,l=a.opacity,u=o.opacity,c=l!==void 0,f=u!==void 0;(Du.isArrayOrTypedArray(s)||c||f)&&(t.selectedOpacityFn=function(S){var L=S.mo===void 0?i.opacity:S.mo;return S.selected?c?l:L:f?u:Ioe*L});var h=i.color,d=a.color,v=o.color;(d||v)&&(t.selectedColorFn=function(S){var L=S.mcc||h;return S.selected?d||L:v||L});var _=i.size,b=a.size,p=o.size,k=b!==void 0,E=p!==void 0;return sL.traceIs(e,"symbols")&&(k||E)&&(t.selectedSizeFn=function(S){var L=S.mrc||_/2;return S.selected?k?b/2:L:E?p/2:L}),t};Aa.makeSelectedTextStyleFns=function(e){var t={},r=e.selected||{},n=e.unselected||{},i=e.textfont||{},a=r.textfont||{},o=n.textfont||{},s=i.color,l=a.color,u=o.color;return t.selectedTextColorFn=function(c){var f=c.tc||s;return c.selected?l||f:u||(l?f:Kd.addOpacity(f,Ioe))},t};Aa.selectedPointStyle=function(e,t){if(!(!e.size()||!t.selectedpoints)){var r=Aa.makeSelectedPointStyleFns(t),n=t.marker||{},i=[];r.selectedOpacityFn&&i.push(function(a,o){a.style("opacity",r.selectedOpacityFn(o))}),r.selectedColorFn&&i.push(function(a,o){Kd.fill(a,r.selectedColorFn(o))}),r.selectedSizeFn&&i.push(function(a,o){var s=o.mx||n.symbol||0,l=r.selectedSizeFn(o);a.attr("d",Doe(Aa.symbolNumber(s),l,Xq(o,t),Wq(o,t))),o.mrc2=l}),i.length&&e.each(function(a){for(var o=dd.select(this),s=0;s<i.length;s++)i[s](o,a)})}};Aa.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 Oot.makeColorScaleFuncFromTrace(r)}return Du.identity};var Nq={start:1,end:-1,middle:0,bottom:1,top:-1};function Ooe(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=(lL.lineCount(e)-1)*Not+1,c=Nq[s]*l,f=r*.75+Nq[o]*l+(Nq[o]-1)*u*r/2;e.attr("text-anchor",s),i||a.attr("transform",rM(c,f))}function qoe(e,t){var r=e.ts||t.textfont.size;return Sb(r)&&r>0?r:0}Aa.textPointStyle=function(e,t,r){if(e.size()){var n;if(t.selectedpoints){var i=Aa.makeSelectedTextStyleFns(t);n=i.selectedTextColorFn}var a=t.texttemplate,o=r._fullLayout;e.each(function(s){var l=dd.select(this),u=a?Du.extractOption(s,t,"txt","texttemplate"):Du.extractOption(s,t,"tx","text");if(!u&&u!==0){l.remove();return}if(a){var c=t._module.formatLabels,f=c?c(s,t,o):{},h={};Got(h,t,s.i),u=Du.texttemplateString({data:[h,s,t._meta],fallback:t.texttemplatefallback,labels:f,locale:o._d3locale,template:u})}var d=s.tp||t.textposition,v=qoe(s,t),_=n?n(s):s.tc||t.textfont.color;l.call(Aa.font,{family:s.tf||t.textfont.family,weight:s.tw||t.textfont.weight,style:s.ty||t.textfont.style,variant:s.tv||t.textfont.variant,textcase:s.tC||t.textfont.textcase,lineposition:s.tE||t.textfont.lineposition,shadow:s.tS||t.textfont.shadow,size:v,color:_}).text(u).call(lL.convertToTspans,r).call(Ooe,d,v,s.mrc)})}};Aa.selectedTextStyle=function(e,t){if(!(!e.size()||!t.selectedpoints)){var r=Aa.makeSelectedTextStyleFns(t);e.each(function(n){var i=dd.select(this),a=r.selectedTextColorFn(n),o=n.tp||t.textposition,s=qoe(n,t);Kd.fill(i,a);var l=sL.traceIs(t,"bar-like");Ooe(i,o,s,n.mrc2||n.mrc,l)})}};var Soe=.5;Aa.smoothopen=function(e,t){if(e.length<3)return"M"+e.join("L");var r="M"+e[0],n=[],i;for(i=1;i<e.length-1;i++)n.push(oL(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};Aa.smoothclosed=function(e,t){if(e.length<3)return"M"+e.join("L")+"Z";var r="M"+e[0],n=e.length-1,i=[oL(e[n],e[0],e[1],t)],a;for(a=1;a<n;a++)i.push(oL(e[a-1],e[a],e[a+1],t));for(i.push(oL(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 Boe,Noe;function C3(e,t,r){return r&&(e=Uoe(e)),t?Ab(e[1]):Tb(e[0])}function Tb(e){var t=dd.round(e,2);return Boe=t,t}function Ab(e){var t=dd.round(e,2);return Noe=t,t}function oL(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,Soe/2),u=Math.pow(o*o+s*s,Soe/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[[Tb(t[0]+(h&&c/h)),Ab(t[1]+(h&&f/h))],[Tb(t[0]-(d&&c/d)),Ab(t[1]-(d&&f/d))]]}var Yot={hv:function(e,t,r){return"H"+Tb(t[0])+"V"+C3(t,1,r)},vh:function(e,t,r){return"V"+Ab(t[1])+"H"+C3(t,0,r)},hvh:function(e,t,r){return"H"+Tb((e[0]+t[0])/2)+"V"+Ab(t[1])+"H"+C3(t,0,r)},vhv:function(e,t,r){return"V"+Ab((e[1]+t[1])/2)+"H"+Tb(t[0])+"V"+C3(t,1,r)}},Kot=function(e,t,r){return"L"+C3(t,0,r)+","+C3(t,1,r)};Aa.steps=function(e){var t=Yot[e]||Kot;return function(r){for(var n="M"+Tb(r[0][0])+","+Ab(r[0][1]),i=r.length,a=1;a<i;a++)n+=t(r[a-1],r[a],a===i-1);return n}};function Uoe(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]:Boe||0,u=t?t[1]:Noe||0,c=s[0],f=s[1],h=c-l,d=f-u,v=Math.atan2(d,h),_=o?r[a]:r;if(_==="auto"){var b=s.i;n.type==="scatter"&&b--;var p=s.marker,k=p.symbol;Du.isArrayOrTypedArray(k)&&(k=k[b]);var E=p.size;Du.isArrayOrTypedArray(E)&&(E=E[b]),_=p?Aa.symbolBackOffs[Aa.symbolNumber(k)]*E:0,_+=Aa.getMarkerStandoff(i[b],n)||0}var S=c-_*Math.cos(v),L=f-_*Math.sin(v);(S<=c&&S>=l||S>=c&&S<=l)&&(L<=f&&L>=u||L>=f&&L<=u)&&(e=[S,L])}return e}Aa.applyBackoff=Uoe;Aa.makeTester=function(){var e=Du.ensureSingleById(dd.select("body"),"svg","js-plotly-tester",function(r){r.attr(qot.svgAttrs).style({position:"absolute",left:"-10000px",top:"-10000px",width:"9000px",height:"9000px","z-index":"1"})}),t=Du.ensureSingle(e,"path","js-reference-point",function(r){r.attr("d","M0,0H1V1H0Z").style({"stroke-width":0,fill:"black"})});Aa.tester=e,Aa.testref=t};Aa.savedBBoxes={};var Uq=0,Jot=1e4;Aa.bBox=function(e,t,r){r||(r=Moe(e));var n;if(r){if(n=Aa.savedBBoxes[r],n)return Du.extendFlat({},n)}else if(e.childNodes.length===1){var i=e.childNodes[0];if(r=Moe(i),r){var a=+i.getAttribute("x")||0,o=+i.getAttribute("y")||0,s=i.getAttribute("transform");if(!s){var l=Aa.bBox(i,!1,r);return a&&(l.left+=a,l.right+=a),o&&(l.top+=o,l.bottom+=o),l}if(r+="~"+a+"~"+o+"~"+s,n=Aa.savedBBoxes[r],n)return Du.extendFlat({},n)}}var u,c;t?u=e:(c=Aa.tester.node(),u=e.cloneNode(!0),c.appendChild(u)),dd.select(u).attr("transform",null).call(lL.positionText,0,0);var f=u.getBoundingClientRect(),h=Aa.testref.node().getBoundingClientRect();t||c.removeChild(u);var d={height:f.height,width:f.width,left:f.left-h.left,top:f.top-h.top,right:f.right-h.left,bottom:f.bottom-h.top};return Uq>=Jot&&(Aa.savedBBoxes={},Uq=0),r&&(Aa.savedBBoxes[r]=d),Uq++,Du.extendFlat({},d)};function Moe(e){var t=e.getAttribute("data-unformatted");if(t!==null)return t+e.getAttribute("data-math")+e.getAttribute("text-anchor")+e.getAttribute("style")}Aa.setClipUrl=function(e,t,r){e.attr("clip-path",jq(t,r))};function jq(e,t){if(!e)return null;var r=t._context,n=r._exportedPlot?"":r._baseUrl||"";return n?"url('"+n+"#"+e+"')":"url(#"+e+")"}Aa.getTranslate=function(e){var t=/.*\btranslate\((-?\d*\.?\d*)[^-\d]*(-?\d*\.?\d*)[^\d].*/,r=e.attr?"attr":"getAttribute",n=e[r]("transform")||"",i=n.replace(t,function(a,o,s){return[o,s].join(" ")}).split(" ");return{x:+i[0]||0,y:+i[1]||0}};Aa.setTranslate=function(e,t,r){var n=/(\btranslate\(.*?\);?)/,i=e.attr?"attr":"getAttribute",a=e.attr?"attr":"setAttribute",o=e[i]("transform")||"";return t=t||0,r=r||0,o=o.replace(n,"").trim(),o+=rM(t,r),o=o.trim(),e[a]("transform",o),o};Aa.getScale=function(e){var t=/.*\bscale\((\d*\.?\d*)[^\d]*(\d*\.?\d*)[^\d].*/,r=e.attr?"attr":"getAttribute",n=e[r]("transform")||"",i=n.replace(t,function(a,o,s){return[o,s].join(" ")}).split(" ");return{x:+i[0]||1,y:+i[1]||1}};Aa.setScale=function(e,t,r){var n=/(\bscale\(.*?\);?)/,i=e.attr?"attr":"getAttribute",a=e.attr?"attr":"setAttribute",o=e[i]("transform")||"";return t=t||1,r=r||1,o=o.replace(n,"").trim(),o+="scale("+t+","+r+")",o=o.trim(),e[a]("transform",o),o};var $ot=/\s*sc.*/;Aa.setPointGroupScale=function(e,t,r){if(t=t||1,r=r||1,!!e){var n=t===1&&r===1?"":"scale("+t+","+r+")";e.each(function(){var i=(this.getAttribute("transform")||"").replace($ot,"");i+=n,i=i.trim(),this.setAttribute("transform",i)})}};var Qot=/translate\([^)]*\)\s*$/;Aa.setTextPointsScale=function(e,t,r){e&&e.each(function(){var n,i=dd.select(this),a=i.select("text");if(a.node()){var o=parseFloat(a.attr("x")||0),s=parseFloat(a.attr("y")||0),l=(i.attr("transform")||"").match(Qot);t===1&&r===1?n=[]:n=[rM(o,s),"scale("+t+","+r+")",rM(-o,-s)],l&&n.push(l),i.attr("transform",n.join(""))}})};function Wq(e,t){var r;return e&&(r=e.mf),r===void 0&&(r=t.marker&&t.marker.standoff||0),!t._geo&&!t._xA?-r:r}Aa.getMarkerStandoff=Wq;var tM=Math.atan2,wb=Math.cos,L3=Math.sin;function Eoe(e,t){var r=t[0],n=t[1];return[r*wb(e)-n*L3(e),r*L3(e)+n*wb(e)]}var koe,Coe,Loe,Poe,Vq,Gq;function Xq(e,t){var r=e.ma;r===void 0&&(r=t.marker.angle,(!r||Du.isArrayOrTypedArray(r))&&(r=0));var n,i,a=t.marker.angleref;if(a==="previous"||a==="north"){if(t._geo){var o=t._geo.project(e.lonlat);n=o[0],i=o[1]}else{var s=t._xA,l=t._yA;if(s&&l)n=s.c2p(e.x),i=l.c2p(e.y);else return 90}if(t._geo){var u=e.lonlat[0],c=e.lonlat[1],f=t._geo.project([u,c+1e-5]),h=t._geo.project([u+1e-5,c]),d=tM(h[1]-i,h[0]-n),v=tM(f[1]-i,f[0]-n),_;if(a==="north")_=r/180*Math.PI;else if(a==="previous"){var b=u/180*Math.PI,p=c/180*Math.PI,k=koe/180*Math.PI,E=Coe/180*Math.PI,S=k-b,L=wb(E)*L3(S),x=L3(E)*wb(p)-wb(E)*L3(p)*wb(S);_=-tM(L,x)-Math.PI,koe=u,Coe=c}var C=Eoe(d,[wb(_),0]),M=Eoe(v,[L3(_),0]);r=tM(C[1]+M[1],C[0]+M[0])/Math.PI*180,a==="previous"&&!(Gq===t.uid&&e.i===Vq+1)&&(r=null)}if(a==="previous"&&!t._geo)if(Gq===t.uid&&e.i===Vq+1&&Sb(n)&&Sb(i)){var g=n-Loe,P=i-Poe,T=t.line&&t.line.shape||"",z=T.slice(T.length-1);z==="h"&&(P=0),z==="v"&&(g=0),r+=tM(P,g)/Math.PI*180+90}else r=null}return Loe=n,Poe=i,Vq=e.i,Gq=t.uid,r}Aa.getMarkerAngle=Xq});var Eb=ye((Vnr,Woe)=>{"use strict";var P3=Oa(),est=Eo(),tst=Mc(),Zq=qa(),Mb=Dr(),Goe=Mb.strTranslate,uL=So(),cL=ka(),I3=ru(),Hoe=N1(),rst=$h().OPPOSITE_SIDE,joe=/ [XY][0-9]* /,Yq=1.6,Kq=1.6;function ist(e,t,r){var n=e._fullLayout,i=r.propContainer,a=r.propName,o=r.placeholder,s=r.traceIndex,l=r.avoid||{},u=r.attributes,c=r.transform,f=r.containerGroup,h=1,d=i.title,v=(d&&d.text?d.text:"").trim(),_=!1,b=d&&d.font?d.font:{},p=b.family,k=b.size,E=b.color,S=b.weight,L=b.style,x=b.variant,C=b.textcase,M=b.lineposition,g=b.shadow,P=r.subtitlePropName,T=!!P,z=r.subtitlePlaceholder,O=(i.title||{}).subtitle||{text:"",font:{}},V=(O.text||"").trim(),G=!1,Z=1,j=O.font,N=j.family,H=j.size,te=j.color,oe=j.weight,_e=j.style,Ee=j.variant,Ce=j.textcase,me=j.lineposition,ie=j.shadow,Se;a==="title.text"?Se="titleText":a.indexOf("axis")!==-1?Se="axisTitleText":a.indexOf("colorbar")!==-1&&(Se="colorbarTitleText");var Le=e._context.edits[Se];function Ae(Nt,Jt){return Nt===void 0||Jt===void 0?!1:Nt.replace(joe," % ")===Jt.replace(joe," % ")}v===""?h=0:Ae(v,o)&&(Le||(v=""),h=.2,_=!0),T&&(V===""?Z=0:Ae(V,z)&&(Le||(V=""),Z=.2,G=!0)),r._meta?v=Mb.templateString(v,r._meta):n._meta&&(v=Mb.templateString(v,n._meta));var Fe=v||V||Le,Pe;f||(f=Mb.ensureSingle(n._infolayer,"g","g-"+t),Pe=n._hColorbarMoveTitle);var ge=f.selectAll("text."+t).data(Fe?[0]:[]);ge.enter().append("text"),ge.text(v).attr("class",t),ge.exit().remove();var Re=null,ce=t+"-subtitle",Ze=V||Le;if(T&&(Re=f.selectAll("text."+ce).data(Ze?[0]:[]),Re.enter().append("text"),Re.text(V).attr("class",ce),Re.exit().remove()),!Fe)return f;function ut(Nt,Jt){Mb.syncOrAsync([pt,Zt],{title:Nt,subtitle:Jt})}function pt(Nt){var Jt=Nt.title,sr=Nt.subtitle,wr;!c&&Pe&&(c={}),c?(wr="",c.rotate&&(wr+="rotate("+[c.rotate,u.x,u.y]+")"),(c.offset||Pe)&&(wr+=Goe(0,(c.offset||0)-(Pe||0)))):wr=null,Jt.attr("transform",wr);function cr(It){if(It){var mt=P3.select(It.node().parentNode).select("."+ce);if(!mt.empty()){var er=It.node().getBBox();if(er.height){var lr=er.y+er.height+Yq*H;mt.attr("y",lr)}}}}if(Jt.style("opacity",h*cL.opacity(E)).call(uL.font,{color:cL.rgb(E),size:P3.round(k,2),family:p,weight:S,style:L,variant:x,textcase:C,shadow:g,lineposition:M}).attr(u).call(I3.convertToTspans,e,cr),sr&&!sr.empty()){var $e=f.select("."+t+"-math-group"),St=Jt.node().getBBox(),Qt=$e.node()?$e.node().getBBox():void 0,Vt=Qt?Qt.y+Qt.height+Yq*H:St.y+St.height+Kq*H,_t=Mb.extendFlat({},u,{y:Vt});sr.attr("transform",wr),sr.style("opacity",Z*cL.opacity(te)).call(uL.font,{color:cL.rgb(te),size:P3.round(H,2),family:N,weight:oe,style:_e,variant:Ee,textcase:Ce,shadow:ie,lineposition:me}).attr(_t).call(I3.convertToTspans,e)}return tst.previousPromises(e)}function Zt(Nt){var Jt=Nt.title,sr=P3.select(Jt.node().parentNode);if(l&&l.selection&&l.side&&v){sr.attr("transform",null);var wr=rst[l.side],cr=l.side==="left"||l.side==="top"?-1:1,$e=est(l.pad)?l.pad:2,St=uL.bBox(sr.node()),Qt={t:0,b:0,l:0,r:0},Vt=e._fullLayout._reservedMargin;for(var _t in Vt)for(var It in Vt[_t]){var mt=Vt[_t][It];Qt[It]=Math.max(Qt[It],mt)}var er={left:Qt.l,top:Qt.t,right:n.width-Qt.r,bottom:n.height-Qt.b},lr=l.maxShift||cr*(er[l.side]-St[l.side]),Tr=0;if(lr<0)Tr=lr;else{var Lr=l.offsetLeft||0,ti=l.offsetTop||0;St.left-=Lr,St.right-=Lr,St.top-=ti,St.bottom-=ti,l.selection.each(function(){var Vr=uL.bBox(this);Mb.bBoxIntersect(St,Vr,$e)&&(Tr=Math.max(Tr,cr*(Vr[l.side]-St[wr])+$e))}),Tr=Math.min(lr,Tr),i._titleScoot=Math.abs(Tr)}if(Tr>0||lr<0){var Br={left:[-Tr,0],right:[Tr,0],top:[0,-Tr],bottom:[0,Tr]}[l.side];sr.attr("transform",Goe(Br[0],Br[1]))}}}ge.call(ut,Re);function st(Nt,Jt){Nt.text(Jt).on("mouseover.opacity",function(){P3.select(this).transition().duration(Hoe.SHOW_PLACEHOLDER).style("opacity",1)}).on("mouseout.opacity",function(){P3.select(this).transition().duration(Hoe.HIDE_PLACEHOLDER).style("opacity",0)})}if(Le&&(v?ge.on(".opacity",null):(st(ge,o),_=!0),ge.call(I3.makeEditable,{gd:e}).on("edit",function(Nt){s!==void 0?Zq.call("_guiRestyle",e,a,Nt,s):Zq.call("_guiRelayout",e,a,Nt)}).on("cancel",function(){this.text(this.attr("data-unformatted")).call(ut)}).on("input",function(Nt){this.text(Nt||" ").call(I3.positionText,u.x,u.y)}),T)){if(T&&!v){var lt=ge.node().getBBox(),Gt=lt.y+lt.height+Kq*H;Re.attr("y",Gt)}V?Re.on(".opacity",null):(st(Re,z),G=!0),Re.call(I3.makeEditable,{gd:e}).on("edit",function(Nt){Zq.call("_guiRelayout",e,"title.subtitle.text",Nt)}).on("cancel",function(){this.text(this.attr("data-unformatted")).call(ut)}).on("input",function(Nt){this.text(Nt||" ").call(I3.positionText,Re.attr("x"),Re.attr("y"))})}return ge.classed("js-placeholder",_),Re&&!Re.empty()&&Re.classed("js-placeholder",G),f}Woe.exports={draw:ist,SUBTITLE_PADDING_EM:Kq,SUBTITLE_PADDING_MATHJAX_EM:Yq}});var ym=ye((Gnr,Joe)=>{"use strict";var nst=Oa(),ast=r3().utcFormat,yc=Dr(),ost=yc.numberFormat,gm=Eo(),n_=yc.cleanNumber,sst=yc.ms2DateTime,Xoe=yc.dateTime2ms,mm=yc.ensureNumber,Zoe=yc.isArrayOrTypedArray,a_=fs(),fL=a_.FP_SAFE,Tg=a_.BADNUM,lst=a_.LOG_CLIP,ust=a_.ONEWEEK,hL=a_.ONEDAY,dL=a_.ONEHOUR,Yoe=a_.ONEMIN,Koe=a_.ONESEC,vL=hf(),mL=hd(),pL=mL.HOUR_PATTERN,gL=mL.WEEKDAY_PATTERN;function iM(e){return Math.pow(10,e)}function Jq(e){return e!=null}Joe.exports=function(t,r){r=r||{};var n=t._id||"x",i=n.charAt(0);function a(S,L){if(S>0)return Math.log(S)/Math.LN10;if(S<=0&&L&&t.range&&t.range.length===2){var x=t.range[0],C=t.range[1];return .5*(x+C-2*lst*Math.abs(x-C))}else return Tg}function o(S,L,x,C){if((C||{}).msUTC&&gm(S))return+S;var M=Xoe(S,x||t.calendar);if(M===Tg)if(gm(S)){S=+S;var g=Math.floor(yc.mod(S+.05,1)*10),P=Math.round(S-g/10);M=Xoe(new Date(P))+g/10}else return Tg;return M}function s(S,L,x){return sst(S,L,x||t.calendar)}function l(S){return t._categories[Math.round(S)]}function u(S){if(Jq(S)){if(t._categoriesMap===void 0&&(t._categoriesMap={}),t._categoriesMap[S]!==void 0)return t._categoriesMap[S];t._categories.push(typeof S=="number"?String(S):S);var L=t._categories.length-1;return t._categoriesMap[S]=L,L}return Tg}function c(S,L){for(var x=new Array(L),C=0;C<L;C++){var M=(S[0]||[])[C],g=(S[1]||[])[C];x[C]=f([M,g])}return x}function f(S){if(t._categoriesMap)return t._categoriesMap[S]}function h(S){var L=f(S);if(L!==void 0)return L;if(gm(S))return+S}function d(S){return gm(S)?+S:f(S)}function v(S,L,x){return nst.round(x+L*S,2)}function _(S,L,x){return(S-x)/L}var b=function(L){return gm(L)?v(L,t._m,t._b):Tg},p=function(S){return _(S,t._m,t._b)};if(t.rangebreaks){var k=i==="y";b=function(S){if(!gm(S))return Tg;var L=t._rangebreaks.length;if(!L)return v(S,t._m,t._b);var x=k;t.range[0]>t.range[1]&&(x=!x);for(var C=x?-1:1,M=C*S,g=0,P=0;P<L;P++){var T=C*t._rangebreaks[P].min,z=C*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(S,t._m2,O):0},p=function(S){var L=t._rangebreaks.length;if(!L)return _(S,t._m,t._b);for(var x=0,C=0;C<L&&!(S<t._rangebreaks[C].pmin);C++)S>t._rangebreaks[C].pmax&&(x=C+1);return _(S,t._m2,t._B[x])}}t.c2l=t.type==="log"?a:mm,t.l2c=t.type==="log"?iM:mm,t.l2p=b,t.p2l=p,t.c2p=t.type==="log"?function(S,L){return b(a(S,L))}:b,t.p2c=t.type==="log"?function(S){return iM(p(S))}:p,["linear","-"].indexOf(t.type)!==-1?(t.d2r=t.r2d=t.d2c=t.r2c=t.d2l=t.r2l=n_,t.c2d=t.c2r=t.l2d=t.l2r=mm,t.d2p=t.r2p=function(S){return t.l2p(n_(S))},t.p2d=t.p2r=p,t.cleanPos=mm):t.type==="log"?(t.d2r=t.d2l=function(S,L){return a(n_(S),L)},t.r2d=t.r2c=function(S){return iM(n_(S))},t.d2c=t.r2l=n_,t.c2d=t.l2r=mm,t.c2r=a,t.l2d=iM,t.d2p=function(S,L){return t.l2p(t.d2r(S,L))},t.p2d=function(S){return iM(p(S))},t.r2p=function(S){return t.l2p(n_(S))},t.p2r=p,t.cleanPos=mm):t.type==="date"?(t.d2r=t.r2d=yc.identity,t.d2c=t.r2c=t.d2l=t.r2l=o,t.c2d=t.c2r=t.l2d=t.l2r=s,t.d2p=t.r2p=function(S,L,x){return t.l2p(o(S,0,x))},t.p2d=t.p2r=function(S,L,x){return s(p(S),L,x)},t.cleanPos=function(S){return yc.cleanDate(S,Tg,t.calendar)}):t.type==="category"?(t.d2c=t.d2l=u,t.r2d=t.c2d=t.l2d=l,t.d2r=t.d2l_noadd=h,t.r2c=function(S){var L=d(S);return L!==void 0?L:t.fraction2r(.5)},t.l2r=t.c2r=mm,t.r2l=d,t.d2p=function(S){return t.l2p(t.r2c(S))},t.p2d=function(S){return l(p(S))},t.r2p=t.d2p,t.p2r=p,t.cleanPos=function(S){return typeof S=="string"&&S!==""?S:mm(S)}):t.type==="multicategory"&&(t.r2d=t.c2d=t.l2d=l,t.d2r=t.d2l_noadd=h,t.r2c=function(S){var L=h(S);return L!==void 0?L:t.fraction2r(.5)},t.r2c_just_indices=f,t.l2r=t.c2r=mm,t.r2l=h,t.d2p=function(S){return t.l2p(t.r2c(S))},t.p2d=function(S){return l(p(S))},t.r2p=t.d2p,t.p2r=p,t.cleanPos=function(S){return Array.isArray(S)||typeof S=="string"&&S!==""?S:mm(S)},t.setupMultiCategory=function(S){var L=t._traceIndices,x,C,M=t._matchGroup;if(M&&t._categories.length===0){for(var g in M)if(g!==n){var P=r[vL.id2name(g)];L=L.concat(P._traceIndices)}}var T=[[0,{}],[0,{}]],z=[];for(x=0;x<L.length;x++){var O=S[L[x]];if(i in O){var V=O[i],G=O._length||yc.minRowLength(V);if(Zoe(V[0])&&Zoe(V[1]))for(C=0;C<G;C++){var Z=V[0][C],j=V[1][C];Jq(Z)&&Jq(j)&&(z.push([Z,j]),Z in T[0][1]||(T[0][1][Z]=T[0][0]++),j in T[1][1]||(T[1][1][j]=T[1][0]++))}}}for(z.sort(function(N,H){var te=T[0][1],oe=te[N[0]]-te[H[0]];if(oe)return oe;var _e=T[1][1];return _e[N[1]]-_e[H[1]]}),x=0;x<z.length;x++)u(z[x])}),t.fraction2r=function(S){var L=t.r2l(t.range[0]),x=t.r2l(t.range[1]);return t.l2r(L+S*(x-L))},t.r2fraction=function(S){var L=t.r2l(t.range[0]),x=t.r2l(t.range[1]);return(t.r2l(S)-L)/(x-L)},t.limitRange=function(S){var L=t.minallowed,x=t.maxallowed;if(!(L===void 0&&x===void 0)){S||(S="range");var C=yc.nestedProperty(t,S).get(),M=yc.simpleMap(C,t.r2l),g=M[1]<M[0];g&&M.reverse();var P=yc.simpleMap([L,x],t.r2l);if(L!==void 0&&M[0]<P[0]&&(C[g?1:0]=L),x!==void 0&&M[1]>P[1]&&(C[g?0:1]=x),C[0]===C[1]){var T=t.l2r(L),z=t.l2r(x);if(L!==void 0){var O=T+1;x!==void 0&&(O=Math.min(O,z)),C[g?1:0]=O}if(x!==void 0){var V=z+1;L!==void 0&&(V=Math.max(V,T)),C[g?0:1]=V}}}},t.cleanRange=function(S,L){t._cleanRange(S,L),t.limitRange(S)},t._cleanRange=function(S,L){L||(L={}),S||(S="range");var x=yc.nestedProperty(t,S).get(),C,M;if(t.type==="date"?M=yc.dfltRange(t.calendar):i==="y"?M=mL.DFLTRANGEY:t._name==="realaxis"?M=[0,1]:M=L.dfltRange||mL.DFLTRANGEX,M=M.slice(),(t.rangemode==="tozero"||t.rangemode==="nonnegative")&&(M[0]=0),!x||x.length!==2){yc.nestedProperty(t,S).set(M);return}var g=x[0]===null,P=x[1]===null;for(t.type==="date"&&!t.autorange&&(x[0]=yc.cleanDate(x[0],Tg,t.calendar),x[1]=yc.cleanDate(x[1],Tg,t.calendar)),C=0;C<2;C++)if(t.type==="date"){if(!yc.isDateTime(x[C],t.calendar)){t[S]=M;break}if(t.r2l(x[0])===t.r2l(x[1])){var T=yc.constrain(t.r2l(x[0]),yc.MIN_MS+1e3,yc.MAX_MS-1e3);x[0]=t.l2r(T-1e3),x[1]=t.l2r(T+1e3);break}}else{if(!gm(x[C]))if(!(g||P)&&gm(x[1-C]))x[C]=x[1-C]*(C?10:.1);else{t[S]=M;break}if(x[C]<-fL?x[C]=-fL:x[C]>fL&&(x[C]=fL),x[0]===x[1]){var z=Math.max(1,Math.abs(x[0]*1e-6));x[0]-=z,x[1]+=z}}},t.setScale=function(S){var L=r._size;if(t.overlaying){var x=vL.getFromId({_fullLayout:r},t.overlaying);t.domain=x.domain}var C=S&&t._r?"_r":"range",M=t.calendar;t.cleanRange(C);var g=t.r2l(t[C][0],M),P=t.r2l(t[C][1],M),T=i==="y";if(T?(t._offset=L.t+(1-t.domain[1])*L.h,t._length=L.h*(t.domain[1]-t.domain[0]),t._m=t._length/(g-P),t._b=-t._m*P):(t._offset=L.l+t.domain[0]*L.w,t._length=L.w*(t.domain[1]-t.domain[0]),t._m=t._length/(P-g),t._b=-t._m*g),t._rangebreaks=[],t._lBreaks=0,t._m2=0,t._B=[],t.rangebreaks){var z,O;if(t._rangebreaks=t.locateBreaks(Math.min(g,P),Math.max(g,P)),t._rangebreaks.length){for(z=0;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(S){var L=t.rangebreaks||[],x,C,M,g,P;L._cachedPatterns||(L._cachedPatterns=L.map(function(te){return te.enabled&&te.bounds?yc.simpleMap(te.bounds,te.pattern?n_:t.d2c):null})),L._cachedValues||(L._cachedValues=L.map(function(te){return te.enabled&&te.values?yc.simpleMap(te.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(x=L._cachedPatterns[T],C=x[0],M=x[1],O){case gL:P=new Date(S),g=P.getUTCDay(),C>M&&(M+=7,g<C&&(g+=7));break;case pL:P=new Date(S);var V=P.getUTCHours(),G=P.getUTCMinutes(),Z=P.getUTCSeconds(),j=P.getUTCMilliseconds();g=V+(G/60+Z/3600+j/36e5),C>M&&(M+=24,g<C&&(g+=24));break;case"":g=S;break}if(g>=C&&g<M)return Tg}else for(var N=L._cachedValues[T],H=0;H<N.length;H++)if(C=N[H],M=C+z.dvalue,S>=C&&S<M)return Tg}}return S},t.locateBreaks=function(S,L){var x,C,M,g,P=[];if(!t.rangebreaks)return P;var T=t.rangebreaks.slice().sort(function(_e,Ee){return _e.pattern===gL&&Ee.pattern===pL?-1:Ee.pattern===gL&&_e.pattern===pL?1:0}),z=function(_e,Ee){if(_e=yc.constrain(_e,S,L),Ee=yc.constrain(Ee,S,L),_e!==Ee){for(var Ce=!0,me=0;me<P.length;me++){var ie=P[me];_e<ie.max&&Ee>=ie.min&&(_e<ie.min&&(ie.min=_e),Ee>ie.max&&(ie.max=Ee),Ce=!1)}Ce&&P.push({min:_e,max:Ee})}};for(x=0;x<T.length;x++){var O=T[x];if(O.enabled)if(O.bounds){var V=S,G=L;O.pattern&&(V=Math.floor(V)),C=yc.simpleMap(O.bounds,O.pattern?n_:t.r2l),M=C[0],g=C[1];var Z=new Date(V),j,N;switch(O.pattern){case gL:N=ust,j=((g<M?7:0)+(g-M))*hL,V+=M*hL-(Z.getUTCDay()*hL+Z.getUTCHours()*dL+Z.getUTCMinutes()*Yoe+Z.getUTCSeconds()*Koe+Z.getUTCMilliseconds());break;case pL:N=hL,j=((g<M?24:0)+(g-M))*dL,V+=M*dL-(Z.getUTCHours()*dL+Z.getUTCMinutes()*Yoe+Z.getUTCSeconds()*Koe+Z.getUTCMilliseconds());break;default:V=Math.min(C[0],C[1]),G=Math.max(C[0],C[1]),N=G-V,j=N}for(var H=V;H<G;H+=N)z(H,H+j)}else for(var te=yc.simpleMap(O.values,t.d2c),oe=0;oe<te.length;oe++)M=te[oe],g=M+O.dvalue,z(M,g)}return P.sort(function(_e,Ee){return _e.min-Ee.min}),P},t.makeCalcdata=function(S,L,x){var C,M,g,P,T=t.type,z=T==="date"&&S[L+"calendar"];if(L in S){if(C=S[L],P=S._length||yc.minRowLength(C),yc.isTypedArray(C)&&(T==="linear"||T==="log")){if(P===C.length)return C;if(C.subarray)return C.subarray(0,P)}if(T==="multicategory")return c(C,P);for(M=new Array(P),g=0;g<P;g++)M[g]=t.d2c(C[g],0,z,x)}else{var O=L+"0"in S?t.d2c(S[L+"0"],0,z):0,V=S["d"+L]?Number(S["d"+L]):1;for(C=S[{x:"y",y:"x"}[L]],P=S._length||C.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(S,L){return Array.isArray(S)&&S.length===2&&(L&&S[0]===null||gm(t.r2l(S[0])))&&(L&&S[1]===null||gm(t.r2l(S[1])))},t.getAutorangeDflt=function(S,L){var x=!t.isValidRange(S,"nullOk");return x&&L&&L.reverseDflt?x="reversed":S&&(S[0]===null&&S[1]===null?x=!0:S[0]===null&&S[1]!==null?x="min":S[0]!==null&&S[1]===null&&(x="max")),x},t.isReversed=function(){var S=t.autorange;return S==="reversed"||S==="min reversed"||S==="max reversed"},t.isPtWithinRange=function(S,L){var x=t.c2l(S[i],null,L),C=t.r2l(t.range[0]),M=t.r2l(t.range[1]);return C<M?C<=x&&x<=M:M<=x&&x<=C},t._emptyCategories=function(){t._categories=[],t._categoriesMap={}},t.clearCalc=function(){var S=t._matchGroup;if(S){var L=null,x=null;for(var C in S){var M=r[vL.id2name(C)];if(M._categories){L=M._categories,x=M._categoriesMap;break}}L&&x?(t._categories=L,t._categoriesMap=x):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 S=[];if(t._emptyCategories(),t._initialCategories)for(var L=0;L<t._initialCategories.length;L++)u(t._initialCategories[L]);S=S.concat(t._traceIndices);var x=t._matchGroup;for(var C in x)if(n!==C){var M=r[vL.id2name(C)];M._categories=t._categories,M._categoriesMap=t._categoriesMap,S=S.concat(M._traceIndices)}return S};var E=r._d3locale;t.type==="date"&&(t._dateFormat=E?E.timeFormat:ast,t._extraFormat=r._extraFormat),t._separators=r.separators,t._numFormat=E?E.numberFormat:ost,delete t._minDtick,delete t._forceTick0}});var R3=ye((Hnr,tse)=>{"use strict";var $oe=Eo(),$q=Dr(),cst=fs().BADNUM,yL=$q.isArrayOrTypedArray,fst=$q.isDateTime,hst=$q.cleanNumber,Qoe=Math.round;tse.exports=function(t,r,n){var i=t,a=n.noMultiCategory;if(yL(i)&&!i.length)return"-";if(!a&&mst(i))return"multicategory";if(a&&Array.isArray(i[0])){for(var o=[],s=0;s<i.length;s++)if(yL(i[s]))for(var l=0;l<i[s].length;l++)o.push(i[s][l]);i=o}if(pst(i,r))return"date";var u=n.autotypenumbers!=="strict";return gst(i,u)?"category":vst(i,u)?"linear":"-"};function dst(e,t){return t?$oe(e):typeof e=="number"}function vst(e,t){for(var r=e.length,n=0;n<r;n++)if(dst(e[n],t))return!0;return!1}function pst(e,t){for(var r=e.length,n=ese(r),i=0,a=0,o={},s=0;s<r;s+=n){var l=Qoe(s),u=e[l],c=String(u);o[c]||(o[c]=1,fst(u,t)&&i++,$oe(u)&&a++)}return i>a*2}function ese(e){return Math.max(1,(e-1)/1e3)}function gst(e,t){for(var r=e.length,n=ese(r),i=0,a=0,o={},s=0;s<r;s+=n){var l=Qoe(s),u=e[l],c=String(u);if(!o[c]){o[c]=1;var f=typeof u;f==="boolean"?a++:(t?hst(u)!==cst:f==="number")?i++:f==="string"&&a++}}return a>i*2}function mst(e){return yL(e[0])&&yL(e[1])}});var Ag=ye((jnr,use)=>{"use strict";var yst=Oa(),ase=Eo(),o_=Dr(),_L=fs().FP_SAFE,_st=qa(),xst=So(),ose=hf(),bst=ose.getFromId,wst=ose.isLinked;use.exports={applyAutorangeOptions:lse,getAutoRange:Qq,makePadFn:eB,doAutoRange:Ast,findExtremes:Sst,concatExtremes:iB};function Qq(e,t){var r,n,i=[],a=e._fullLayout,o=eB(a,t,0),s=eB(a,t,1),l=iB(e,t),u=l.min,c=l.max;if(u.length===0||c.length===0)return o_.simpleMap(t.range,t.r2l);var f=u[0].val,h=c[0].val;for(r=1;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 _=o_.simpleMap(t.range,t.r2l);v=_[1]<_[0]}t.autorange==="reversed"&&(t.autorange=!0);var b=t.rangemode,p=b==="tozero",k=b==="nonnegative",E=t._length,S=E/10,L=0,x,C,M,g,P,T;for(r=0;r<u.length;r++)for(x=u[r],n=0;n<c.length;n++)C=c[n],T=C.val-x.val-rse(t,x.val,C.val),T>0&&(P=E-o(x)-s(C),P>S?T/P>L&&(M=x,g=C,L=T/P):T/E>L&&(M={val:x.val,nopad:1},g={val:C.val,nopad:1},L=T/E));function z(j,N){return Math.max(j,s(N))}if(f===h){var O=f-1,V=f+1;if(p)if(f===0)i=[0,1];else{var G=(f>0?c:u).reduce(z,0),Z=f/(1-Math.min(.5,G/E));i=f>0?[0,Z]:[Z,0]}else k?i=[Math.max(0,O),Math.max(1,V)]:i=[O,V]}else p?(M.val>=0&&(M={val:0,nopad:1}),g.val<=0&&(g={val:0,nopad:1})):k&&(M.val-L*o(M)<0&&(M={val:0,nopad:1}),g.val<=0&&(g={val:1,nopad:1})),L=(g.val-M.val-rse(t,x.val,C.val))/(E-o(M)-s(g)),i=[M.val-L*o(M),g.val+L*s(g)];return i=lse(i,t),t.limitRange&&t.limitRange(),v&&i.reverse(),o_.simpleMap(i,t.l2r||Number)}function rse(e,t,r){var n=0;if(e.rangebreaks)for(var i=e.locateBreaks(t,r),a=0;a<i.length;a++){var o=i[a];n+=o.max-o.min}return n}function eB(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=o_.simpleMap(t.range,t.r2l);a=o[1]<o[0]}a&&(r=!r)}var s=0;return wst(e,t._id)||(s=Tst(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 ise=3;function Tst(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=o_.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(k){var E=yst.select(this),S=E.select(".text-math-group");S.empty()&&(k.bb=xst.bBox(E.node()))})}for(var d=0;d<s._vals.length;d++){var v=s._vals[d],_=v.bb;if(_){var b=2*ise+_.width,p=2*ise+_.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 iB(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 k=b[p[l]],E=(k._extremes||{})[n];if(k.visible===!0&&E){for(u=0;u<E.min.length;u++)c=E.min[u],tB(o,c.val,c.pad,{extrapad:c.extrapad});for(u=0;u<E.max.length;u++)c=E.max[u],rB(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=bst(e,h),v=iB(e,d,!0),_=t._length/d._length;for(u=0;u<v.min.length;u++)c=v.min[u],tB(o,c.val,c.pad*_,{extrapad:c.extrapad});for(u=0;u<v.max.length;u++)c=v.max[u],rB(s,c.val,c.pad*_,{extrapad:c.extrapad})}}return{min:o,max:s}}function Ast(e,t,r){if(t.setScale(),t.autorange){t.range=r?r.slice():Qq(e,t),t._r=t.range.slice(),t._rl=o_.simpleMap(t._r,t.r2l);var n=t._input,i={};i[t._attr+".range"]=t.range,i[t._attr+".autorange"]=t.autorange,_st.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=Qq(e,t)),a._input.rangeslider[t._name]=o_.extendFlat({},o)}}function Sst(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,_,b,p,k,E;function S(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=S((e._m>0?r.ppadplus:r.ppadminus)||r.ppad||0),x=S((e._m>0?r.ppadminus:r.ppadplus)||r.ppad||0),C=S(r.vpadplus||r.vpad),M=S(r.vpadminus||r.vpad);if(!u){if(k=1/0,E=-1/0,l)for(f=0;f<a;f++)h=t[f],h<k&&h>0&&(k=h),h>E&&h<_L&&(E=h);else for(f=0;f<a;f++)h=t[f],h<k&&h>-_L&&(k=h),h>E&&h<_L&&(E=h);t=[k,E],a=2}var g={tozero:s,extrapad:o};function P(z){d=t[z],ase(d)&&(b=L(z),p=x(z),c?(v=e.c2l(d)-M(z),_=e.c2l(d)+C(z)):(k=d-M(z),E=d+C(z),l&&k<E/10&&(k=E/10),v=e.c2l(k),_=e.c2l(E)),s&&(v=Math.min(0,v),_=Math.max(0,_)),nse(v)&&tB(n,v,p,g),nse(_)&&rB(i,_,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 tB(e,t,r,n){sse(e,t,r,n,Mst)}function rB(e,t,r,n){sse(e,t,r,n,Est)}function sse(e,t,r,n,i){for(var a=n.tozero,o=n.extrapad,s=!0,l=0;l<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 nse(e){return ase(e)&&Math.abs(e)<_L}function Mst(e,t){return e<=t}function Est(e,t){return e>=t}function kst(e,t){var r=t.autorangeoptions;return r&&r.minallowed!==void 0&&xL(t,r.minallowed,r.maxallowed)?r.minallowed:r&&r.clipmin!==void 0&&xL(t,r.clipmin,r.clipmax)?Math.max(e,t.d2l(r.clipmin)):e}function Cst(e,t){var r=t.autorangeoptions;return r&&r.maxallowed!==void 0&&xL(t,r.minallowed,r.maxallowed)?r.maxallowed:r&&r.clipmax!==void 0&&xL(t,r.clipmin,r.clipmax)?Math.min(e,t.d2l(r.clipmax)):e}function xL(e,t,r){return t!==void 0&&r!==void 0?(t=e.d2l(t),r=e.d2l(r),t<r):!0}function lse(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);o_.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=kst(r,t),n=Cst(n,t),[r,n]}});var ho=ye((Wnr,Ise)=>{"use strict";var b0=Oa(),Ih=Eo(),D3=Mc(),aM=qa(),Jo=Dr(),F3=Jo.strTranslate,kb=ru(),Lst=Eb(),oM=ka(),Xp=So(),Pst=Rd(),cse=Eq(),Jd=fs(),Ist=Jd.ONEMAXYEAR,TL=Jd.ONEAVGYEAR,AL=Jd.ONEMINYEAR,Rst=Jd.ONEMAXQUARTER,sB=Jd.ONEAVGQUARTER,SL=Jd.ONEMINQUARTER,Dst=Jd.ONEMAXMONTH,z3=Jd.ONEAVGMONTH,ML=Jd.ONEMINMONTH,Zp=Jd.ONEWEEK,Ov=Jd.ONEDAY,s_=Ov/2,xm=Jd.ONEHOUR,sM=Jd.ONEMIN,EL=Jd.ONESEC,Fst=Jd.ONEMILLI,zst=Jd.ONEMICROSEC,Cb=Jd.MINUS_SIGN,CL=Jd.BADNUM,lB={K:"zeroline"},uB={K:"gridline",L:"path"},cB={K:"minor-gridline",L:"path"},bse={K:"tick",L:"path"},fse={K:"tick",L:"text"},hse={width:["x","r","l","xl","xr"],height:["y","t","b","yt","yb"],right:["r","xr"],left:["l","xl"],top:["t","yt"],bottom:["b","yb"]},LL=$h(),nM=LL.MID_SHIFT,Lb=LL.CAP_SHIFT,lM=LL.LINE_SPACING,Ost=LL.OPPOSITE_SIDE,kL=3,Qn=Ise.exports={};Qn.setConvert=ym();var qst=R3(),Sy=hf(),Bst=Sy.idSort,Nst=Sy.isLinked;Qn.id2name=Sy.id2name;Qn.name2id=Sy.name2id;Qn.cleanId=Sy.cleanId;Qn.list=Sy.list;Qn.listIds=Sy.listIds;Qn.getFromId=Sy.getFromId;Qn.getFromTrace=Sy.getFromTrace;var wse=Ag();Qn.getAutoRange=wse.getAutoRange;Qn.findExtremes=wse.findExtremes;var Ust=1e-4;function vB(e){var t=(e[1]-e[0])*Ust;return[e[0]-t,e[1]+t]}Qn.coerceRef=function(e,t,r,n,i,a){var o=n.charAt(n.length-1),s=r._fullLayout._subplots[o+"axis"],l=n+"ref",u={};return i||(i=s[0]||(typeof a=="string"?a:a[0])),a||(a=i),s=s.concat(s.map(function(c){return c+" domain"})),u[l]={valType:"enumerated",values:s.concat(a?typeof a=="string"?[a]:a:[]),dflt:i},Jo.coerce(e,t,u,l)};Qn.getRefType=function(e){return e===void 0?e:e==="paper"?"paper":e==="pixel"?"pixel":/( domain)$/.test(e)?"domain":"range"};Qn.coercePosition=function(e,t,r,n,i,a){var o,s,l=Qn.getRefType(n);if(l!=="range")o=Jo.ensureNumber,s=r(i,a);else{var u=Qn.getFromId(t,n);a=u.fraction2r(a),s=r(i,a),o=u.cleanPos}e[i]=o(s)};Qn.cleanPosition=function(e,t,r){var n=r==="paper"||r==="pixel"?Jo.ensureNumber:Qn.getFromId(t,r).cleanPos;return n(e)};Qn.redrawComponents=function(e,t){t=t||Qn.listIds(e);var r=e._fullLayout;function n(i,a,o,s){for(var l=aM.getComponentMethod(i,a),u={},c=0;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 Vst=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:qst(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:vse,c2d:vse}:{d2c:dse,c2d:dse}};function dse(e){return+e}function vse(e){return String(e)}Qn.getDataToCoordFunc=function(e,t,r,n){return Vst(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&&cse.dtick(a,l.type),a)l.dtick=a,l.tick0=cse.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)),Ih(u)||(u=1)}Qn.autoTicks(l,u)}var d=l.dtick,v=Qn.tickIncrement(Qn.tickFirst(l),d,"reverse",i),_,b;if(typeof d=="number")v=Gst(v,e,l,o,s),b=1+Math.floor((s-v)/d),_=v+b*d;else for(l.dtick.charAt(0)==="M"&&(v=Hst(v,e,d,o,i)),_=v,b=0;_<=s;)_=Qn.tickIncrement(_,d,!1,i),b++;return{start:t.c2r(v,0,i),end:t.c2r(_,0,i),size:d,_dataSpan:s-o}};function Gst(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++:Ih(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 Hst(e,t,r,n,i){var a=Jo.findExactDates(t,i),o=.8;if(a.exactDays>o){var s=Number(r.slice(1));a.exactYears>o&&s%12===0?e=Qn.tickIncrement(e,"M6","reverse")+Ov*1.5:a.exactMonths>o?e=Qn.tickIncrement(e,"M1","reverse")+Ov*15.5:e-=s_;var l=Qn.tickIncrement(e,r);if(l<=n)return l}return e}Qn.prepMinorTicks=function(e,t,r){if(!t.minor.dtick){delete e.dtick;var n=t.dtick&&Ih(t._tmin),i;if(n){var a=Qn.tickIncrement(t._tmin,t.dtick,!0);i=[t._tmin,a*.99+t._tmin*.01]}else{var o=Jo.simpleMap(t.range,t.r2l);i=[o[0],.8*o[0]+.2*o[1]]}if(e.range=Jo.simpleMap(i,t.l2r),e._isMinor=!0,Qn.prepTicks(e,r),n){var s=Ih(t.dtick),l=Ih(e.dtick),u=s?t.dtick:+t.dtick.substring(1),c=l?e.dtick:+e.dtick.substring(1);s&&l?nB(u,c)?u===2*Zp&&c===2*Ov&&(e.dtick=Zp):u===2*Zp&&c===3*Ov?e.dtick=Zp:u===Zp&&!(t._input.minor||{}).nticks?e.dtick=Ov:pse(u/c,2.5)?e.dtick=u/2:e.dtick=u:String(t.dtick).charAt(0)==="M"?l?e.dtick="M1":nB(u,c)?u>=12&&c===2&&(e.dtick="M3"):e.dtick=t.dtick:String(e.dtick).charAt(0)==="L"?String(t.dtick).charAt(0)==="L"?nB(u,c)||(e.dtick=pse(u/c,2.5)?t.dtick/2:t.dtick):e.dtick="D1":e.dtick==="D2"&&+t.dtick>1&&(e.dtick=1)}e.range=t.range}t.minor._tick0Init===void 0&&(e.tick0=t.tick0)};function nB(e,t){return Math.abs((e/t+.5)%1-.5)<.001}function pse(e,t){return Math.abs(e/t-1)<.001}Qn.prepTicks=function(e,t){var r=Jo.simpleMap(e.range,e.r2l,void 0,void 0,t);if(e.tickmode==="auto"||!e.dtick){var n=e.nticks,i;n||(e.type==="category"||e.type==="multicategory"?(i=e.tickfont?Jo.bigFont(e.tickfont.size||12):15,n=e._length/i):(i=e._id.charAt(0)==="y"?40:80,n=Jo.constrain(e._length/i,4,9)+1),e._name==="radialaxis"&&(n*=2)),e.minor&&e.minor.tickmode!=="array"||e.tickmode==="array"&&(n*=100),e._roughDTick=Math.abs(r[1]-r[0])/n,Qn.autoTicks(e,e._roughDTick),e._minDtick>0&&e.dtick<e._minDtick*2&&(e.dtick=e._minDtick,e.tick0=e.l2r(e._forceTick0))}e.ticklabelmode==="period"&&jst(e),e.tick0||(e.tick0=e.type==="date"?"2000-01-01":0),e.type==="date"&&e.dtick<.1&&(e.dtick=.1),Mse(e)};function aB(e){return+e.substring(1)}function jst(e){var t;function r(){return!(Ih(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=s_,a&&!n&&e.dtick<s_&&(e.dtick=s_)):/%[Aadejuwx]/.test(i)?(t=Ov,a&&!n&&e.dtick<Ov&&(e.dtick=Ov)):/%[UVW]/.test(i)?(t=Zp,a&&!n&&e.dtick<Zp&&(e.dtick=Zp)):/%[Bbm]/.test(i)?(t=z3,a&&(n?aB(e.dtick)<1:e.dtick<ML)&&(e.dtick="M1")):/%[q]/.test(i)?(t=sB,a&&(n?aB(e.dtick)<3:e.dtick<SL)&&(e.dtick="M3")):/%[Yy]/.test(i)&&(t=TL,a&&(n?aB(e.dtick)<12:e.dtick<AL)&&(e.dtick="M12")))}n=r(),n&&e.tick0===e._dowTick0&&(e.tick0=e._rawTick0),e._definedDelta=t}function Wst(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>=AL?u>=AL&&u<=Ist?f=u:f=TL:r===sB&&c>=SL?u>=SL&&u<=Rst?f=u:f=sB:c>=ML?u>=ML&&u<=Dst?f=u:f=z3:r===Zp&&c>=Zp?f=Zp:c>=Ov?f=Ov:r===s_&&c>=s_?f=s_:r===xm&&c>=xm&&(f=xm);var h;f>=u&&(f=u,h=!0);var d=i+f;if(t.rangebreaks&&f>0){for(var v=84,_=0,b=0;b<v;b++){var p=(b+.5)/v;t.maskBreaks(i*(1-p)+p*d)!==CL&&_++}f*=_/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=[],_=[],b=[],p=[],k=[],E=t.minor&&(t.minor.ticks||t.minor.showgrid),S=1;S>=(E?0:1);S--){var L=!S;S?(t._dtickInit=t.dtick,t._tick0Init=t.tick0):(t.minor._dtickInit=t.minor.dtick,t.minor._tick0Init=t.minor.tick0);var x=S?t:Jo.extendFlat({},t,t.minor);if(L?Qn.prepMinorTicks(x,t,r):Qn.prepTicks(x,r),x.tickmode==="array"){S?(b=[],v=gse(t,!L)):(p=[],_=gse(t,!L));continue}if(x.tickmode==="sync"){b=[],v=Xst(t);continue}var C=vB(u),M=C[0],g=C[1],P=Ih(x.dtick),T=n==="log"&&!(P||x.dtick.charAt(0)==="L"),z=Qn.tickFirst(x,r);if(S){if(t._tmin=z,z<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(S){var Z;P?Z=t.dtick:n==="date"?typeof t.dtick=="string"&&t.dtick.charAt(0)==="M"&&(Z=z3*t.dtick.substring(1)):Z=t._roughDTick,G=Math.round((t.r2l(V)-t.r2l(t.tick0))/Z)-1}var j=x.dtick;for(x.rangebreaks&&x._tick0Init!==x.tick0&&(V=oB(V,t),c||(V=Qn.tickIncrement(V,j,!c,i))),S&&o&&(V=Qn.tickIncrement(V,j,!c,i),G--);c?V>=g:V<=g;V=Qn.tickIncrement(V,j,c,i)){if(S&&G++,x.rangebreaks&&!c){if(V<M)continue;if(x.maskBreaks(V)===CL&&oB(V,x)>=h)break}if(b.length>d||V===O)break;O=V;var N={value:V};S?(T&&V!==(V|0)&&(N.simpleLabel=!0),a>1&&G%a&&(N.skipLabel=!0),b.push(N)):(N.minor=!0,p.push(N))}}if(!p||p.length<2)l=!1;else{var H=(p[1].value-p[0].value)*(s?-1:1);ylt(H,t.tickformat)||(l=!1)}if(!l)k=b;else{var te=b.concat(p);o&&b.length&&(te=te.slice(1)),te=te.sort(function(Gt,Nt){return Gt.value-Nt.value}).filter(function(Gt,Nt,Jt){return Nt===0||Gt.value!==Jt[Nt-1].value});var oe=te.map(function(Gt,Nt){return Gt.minor===void 0&&!Gt.skipLabel?Nt:null}).filter(function(Gt){return Gt!==null});oe.forEach(function(Gt){l.map(function(Nt){var Jt=Gt+Nt;Jt>=0&&Jt<te.length&&Jo.pushUnique(k,te[Jt])})})}if(E){var _e=t.minor.ticks==="inside"&&t.ticks==="outside"||t.minor.ticks==="outside"&&t.ticks==="inside";if(!_e){for(var Ee=b.map(function(Gt){return Gt.value}),Ce=[],me=0;me<p.length;me++){var ie=p[me],Se=ie.value;if(Ee.indexOf(Se)===-1){for(var Le=!1,Ae=0;!Le&&Ae<b.length;Ae++)1e7+b[Ae].value===1e7+Se&&(Le=!0);Le||Ce.push(ie)}}p=Ce}}o&&Wst(k,t,t._definedDelta);var Fe;if(t.rangebreaks){var Pe=t._id.charAt(0)==="y",ge=1;t.tickmode==="auto"&&(ge=t.tickfont?t.tickfont.size:12);var Re=NaN;for(Fe=b.length-1;Fe>-1;Fe--){if(b[Fe].drop){b.splice(Fe,1);continue}b[Fe].value=oB(b[Fe].value,t);var ce=t.c2p(b[Fe].value);(Pe?Re>ce-ge:Re<ce+ge)?b.splice(c?Fe+1:Fe,1):Re=ce}}yB(t)&&Math.abs(u[1]-u[0])===360&&b.pop(),t._tmax=(b[b.length-1]||{}).value,t._prevDateHead="",t._inCalcTicks=!0;var Ze,ut=function(Gt){Gt.text="",t._prevDateHead=Ze};b=b.concat(p);function pt(Gt,Nt){var Jt=Qn.tickText(Gt,Nt.value,!1,Nt.simpleLabel),sr=Nt.periodX;return sr!==void 0&&(Jt.periodX=sr,(sr>h||sr<f)&&(sr>h&&(Jt.periodX=h),sr<f&&(Jt.periodX=f),ut(Jt))),Jt}var Zt;for(Fe=0;Fe<b.length;Fe++){var st=b[Fe].minor,lt=b[Fe].value;st?(l&&k.indexOf(b[Fe])!==-1?Zt=pt(t,b[Fe]):Zt={x:lt},Zt.minor=!0,_.push(Zt)):(Ze=t._prevDateHead,Zt=pt(t,b[Fe]),(b[Fe].skipLabel||l&&k.indexOf(b[Fe])===-1)&&ut(Zt),v.push(Zt))}return v=v.concat(_),t._inCalcTicks=!1,o&&v.length&&(v[0].noTick=!0),v};function Tse(e,t){return e.rangebreaks&&(t=t.filter(function(r){return e.maskBreaks(r.x)!==CL})),t}function Xst(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=Tse(e,r),r}function gse(e,t){var r=Jo.simpleMap(e.range,e.r2l),n=vB(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=Tse(e,s),s}var bL=[2,5,10],mse=[1,2,3,6,12],yse=[1,2,5,10,15,30],Zst=[1,2,3,7,14],Ase=[-.046,0,.301,.477,.602,.699,.778,.845,.903,.954,1],Sse=[-.301,0,.301,.699,1],Yst=[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>TL)t/=TL,n=i(10),e.dtick="M"+12*_m(t,n,bL);else if(a>z3)t/=z3,e.dtick="M"+_m(t,1,mse);else if(a>Ov){if(e.dtick=_m(t,Ov,e._hasDayOfWeekBreaks?[1,2,7,14]:Zst),!r){var o=Qn.getTickFormat(e),s=e.ticklabelmode==="period";s&&(e._rawTick0=e.tick0),/%[uVW]/.test(o)?e.tick0=Jo.dateTick0(e.calendar,2):e.tick0=Jo.dateTick0(e.calendar,1),s&&(e._dowTick0=e.tick0)}}else a>xm?e.dtick=_m(t,xm,mse):a>sM?e.dtick=_m(t,sM,yse):a>EL?e.dtick=_m(t,EL,yse):(n=i(10),e.dtick=_m(t,n,bL))}else if(e.type==="log"){e.tick0=0;var l=Jo.simpleMap(e.range,e.r2l);if(e._isMinor&&(t*=1.5),t>.7)e.dtick=Math.ceil(t);else if(Math.abs(l[1]-l[0])<1){var u=1.5*Math.abs((l[1]-l[0])/t);t=Math.abs(Math.pow(10,l[1])-Math.pow(10,l[0]))/u,n=i(10),e.dtick="L"+_m(t,n,bL)}else e.dtick=t>.3?"D2":"D1"}else e.type==="category"||e.type==="multicategory"?(e.tick0=0,e.dtick=Math.ceil(Math.max(t,1))):yB(e)?(e.tick0=0,n=1,e.dtick=_m(t,n,Yst)):(e.tick0=0,n=i(10),e.dtick=_m(t,n,bL));if(e.dtick===0&&(e.dtick=1),!Ih(e.dtick)&&typeof e.dtick!="string"){var c=e.dtick;throw e.dtick=1,"ax.dtick error: "+String(c)}};function Mse(e){var t=e.dtick;if(e._tickexponent=0,!Ih(t)&&typeof t!="string"&&(t=1),(e.type==="category"||e.type==="multicategory")&&(e._tickround=null),e.type==="date"){var r=e.r2l(e.tick0),n=e.l2r(r).replace(/(^-|i)/g,""),i=n.length;if(String(t).charAt(0)==="M")i>10||n.slice(5)!=="01-01"?e._tickround="d":e._tickround=+t.slice(1)%12===0?"y":"m";else if(t>=Ov&&i<=10||t>=Ov*15)e._tickround="d";else if(t>=sM&&i<=16||t>=xm)e._tickround="M";else if(t>=EL&&i<=19||t>=sM)e._tickround="S";else{var a=e.l2r(r+t).replace(/^-/,"").length;e._tickround=Math.max(i,a)-20,e._tickround<0&&(e._tickround=4)}}else if(Ih(t)||t.charAt(0)==="L"){var o=e.range.map(e.r2d||Number);Ih(t)||(t=Number(t.slice(1))),e._tickround=2-Math.floor(Math.log(t)/Math.LN10+.01);var s=Math.max(Math.abs(o[0]),Math.abs(o[1])),l=Math.floor(Math.log(s)/Math.LN10+.01),u=e.minexponent===void 0?3:e.minexponent;Math.abs(l)>u&&(O3(e.exponentformat)&&e.exponentformat!=="SI extended"&&!pB(l)||O3(e.exponentformat)&&e.exponentformat==="SI extended"&&!gB(l)?e._tickexponent=3*Math.round((l-1)/3):e._tickexponent=l)}else e._tickround=null}Qn.tickIncrement=function(e,t,r,n){var i=r?-1:1;if(Ih(t))return Jo.increment(e,i*t);var a=t.charAt(0),o=i*Number(t.slice(1));if(a==="M")return Jo.incrementMonth(e,o,n);if(a==="L")return Math.log(Math.pow(10,e)+o)/Math.LN10;if(a==="D"){var s=t==="D2"?Sse:Ase,l=e+i*.01,u=Jo.roundUp(Jo.mod(l,1),s,r);return Math.floor(l)+Math.log(b0.round(Math.pow(10,u),1))/Math.LN10}throw"unrecognized dtick "+String(t)};Qn.tickFirst=function(e,t){var r=e.r2l||Number,n=Jo.simpleMap(e.range,r,void 0,void 0,t),i=n[1]<n[0],a=i?Math.floor:Math.ceil,o=vB(n)[0],s=e.dtick,l=r(e.tick0);if(Ih(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.slice(1));if(c==="M"){for(var h=0,d=l,v,_,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);_=(o-(d+v)/2)/(v-d),b=c+(Math.abs(Math.round(_))||1)*f,d=Qn.tickIncrement(d,b,_<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"?Sse:Ase,k=Jo.roundUp(Jo.mod(o,1),p,i);return Math.floor(o)+Math.log(b0.round(Math.pow(10,k),1))/Math.LN10}else throw"unrecognized dtick "+String(s)}};Qn.tickText=function(e,t,r,n){var i=Ese(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"?Kst(e,i,r,o):s==="log"?Jst(e,i,r,o,v):s==="category"?$st(e,i):s==="multicategory"?Qst(e,i,r):yB(e)?tlt(e,i,r,o,v):elt(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 _=e.labelalias[i.text];typeof _=="string"&&(i.text=_)}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 Ese(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 Kst(e,t,r,n){var i=e._tickround,a=r&&e.hoverformat||Qn.getTickFormat(e);n=!a&&n,n&&(Ih(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.slice(l+1),o=o.slice(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=cM(e),c=e._trueSide||e.side;(!u&&c==="top"||u&&c==="bottom")&&(o+="<br> ")}t.text=o}function Jst(e,t,r,n,i){var a=e.dtick,o=t.x,s=e.tickformat,l=typeof a=="string"&&a.charAt(0);if(i==="never"&&(i=""),n&&l!=="L"&&(a="L3",l="L"),s||l==="L")t.text=uM(Math.pow(10,o),e,i,n);else if(Ih(a)||l==="D"&&(e.minorloglabels==="complete"||Jo.mod(o+.01,1)<.1)){var u;e.minorloglabels==="complete"&&!(Jo.mod(o+.01,1)<.1)&&(u=!0,t.fontSize*=.75);var c=Math.pow(10,o).toExponential(0),f=c.split("e"),h=+f[1],d=Math.abs(h),v=e.exponentformat;v==="power"||O3(v)&&v!=="SI extended"&&pB(h)||O3(v)&&v==="SI extended"&&gB(h)?(t.text=f[0],d>0&&(t.text+="x10"),t.text==="1x10"&&(t.text="10"),h!==0&&h!==1&&(t.text+="<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=uM(Math.pow(10,o),e,"","fakehover"),a==="D1"&&e._id.charAt(0)==="y"&&(t.dy-=t.fontSize/6))}else if(l==="D")t.text=e.minorloglabels==="none"?"":String(Math.round(Math.pow(10,Jo.mod(o,1)))),t.fontSize*=.75;else throw"unrecognized dtick "+String(a);if(e.dtick==="D1"){var _=String(t.text).charAt(0);(_==="0"||_==="1")&&(e._id.charAt(0)==="y"?t.dx-=t.fontSize/4:(t.dy+=t.fontSize/2,t.dx+=(e.range[1]>e.range[0]?1:-1)*t.fontSize*(o<0?.5:.25)))}}function $st(e,t){var r=e._categories[Math.round(t.x)];r===void 0&&(r=""),t.text=String(r)}function Qst(e,t,r){var n=Math.round(t.x),i=e._categories[n]||[],a=i[1]===void 0?"":String(i[1]),o=i[0]===void 0?"":String(i[0]);r?t.text=o+" - "+a:(t.text=a,t.text2=o)}function elt(e,t,r,n,i){i==="never"?i="":e.showexponent==="all"&&Math.abs(t.x/e.dtick)<1e-6&&(i="hide"),t.text=uM(t.x,e,i,n)}function tlt(e,t,r,n,i){if(e.thetaunit==="radians"&&!r){var a=t.x/180;if(a===0)t.text="0";else{var o=rlt(a);if(o[1]>=100)t.text=uM(Jo.deg2rad(t.x),e,i,n);else{var s=t.x<0;o[1]===1?o[0]===1?t.text="\u03C0":t.text=o[0]+"\u03C0":t.text=["<sup>",o[0],"</sup>","\u2044","<sub>",o[1],"</sub>","\u03C0"].join(""),s&&(t.text=Cb+t.text)}}}else t.text=uM(t.x,e,i,n)}function rlt(e){function t(s,l){return Math.abs(s-l)<=1e-6}function r(s,l){return t(l,0)?s:r(l,s%l)}function n(s){for(var l=1;!t(Math.round(s*l)/l,s);)l*=10;return l}var i=n(e),a=e*i,o=Math.abs(r(a,i));return[Math.round(a/o),Math.round(i/o)]}var kse=["f","p","n","\u03BC","m","","k","M","G","T"],ilt=["q","r","y","z","a",...kse,"P","E","Z","Y","R","Q"],O3=e=>["SI","SI extended","B"].includes(e);function pB(e){return e>14||e<-15}function gB(e){return e>32||e<-30}function nlt(e,t){return O3(t)?!!(t==="SI extended"&&gB(e)||t!=="SI extended"&&pB(e)):!1}function uM(e,t,r,n){var i=e<0,a=t._tickround,o=r||t.exponentformat||"B",s=t._tickexponent,l=Qn.getTickFormat(t),u=t.separatethousands;if(n){var c={exponentformat:o,minexponent:t.minexponent,dtick:t.showexponent==="none"?t.dtick:Ih(e)&&Math.abs(e)||1,range:t.showexponent==="none"?t.range.map(t.r2d):[0,e||1]};Mse(c),a=(Number(c._tickround)||0)+4,s=c._tickexponent,t.hoverformat&&(l=t.hoverformat)}if(l)return t._numFormat(l)(e).replace(/-/g,Cb);var f=Math.pow(10,-a)/2;if(o==="none"&&(s=0),e=Math.abs(e),e<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.slice(0,Math.max(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.slice(0,d+a).replace(/\.?0+$/,""))}e=Jo.numSeparate(e,t._separators,u)}if(s&&o!=="hide"){nlt(s,o)&&(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":O3(o)&&(e+=o==="SI extended"?ilt[s/3+10]:kse[s/3+5])}return i?Cb+e:e}Qn.getTickFormat=function(e){var t;function r(l){return typeof l!="string"?l:Number(l.replace("M",""))*z3}function n(l,u){var c=["L","D"];if(typeof l==typeof u){if(typeof l=="number")return l-u;var f=c.indexOf(l.charAt(0)),h=c.indexOf(u.charAt(0));return f===h?Number(l.replace(/(L|D)/g,""))-Number(u.replace(/(L|D)/g,"")):f-h}else return typeof l=="number"?1:-1}function i(l,u,c){var f=c||function(v){return v},h=u[0],d=u[1];return(!h&&typeof h!="number"||f(h)<=f(l))&&(!d&&typeof d!="number"||f(d)>=f(l))}function a(l,u){var c=u[0]===null,f=u[1]===null,h=n(l,u[0])>=0,d=n(l,u[1])<=0;return(c||h)&&(f||d)}var o,s;if(e.tickformatstops&&e.tickformatstops.length>0)switch(e.type){case"date":case"linear":{for(t=0;t<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.slice(1).split("y"),l=o.slice(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){b0.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&&dB(u,u._fullDepth||0,s,!0),u._r=u.range.slice(),u._rl=Jo.simpleMap(u._r,u.r2l),c}}}))};Qn.drawOne=function(e,t,r){r=r||{};var n=r.axShifts||{},i=r.overlayingShiftedAx||[],a,o,s;t.setScale();var l=e._fullLayout,u=t._id,c=u.charAt(0),f=Qn.counterLetter(u),h=l._plots[t._mainSubplot],d=t.zerolinelayer==="above traces";if(!h)return;if(t._shiftPusher=t.autoshift||i.indexOf(t._id)!==-1||i.indexOf(t.overlaying)!==-1,t._shiftPusher&t.anchor==="free"){var v=t.linewidth/2||0;t.ticks==="inside"&&(v+=t.ticklen),dB(t,v,n,!0),dB(t,t.shift||0,n,!1)}(r.skipTitle!==!0||t._shift===void 0)&&(t._shift=mlt(t,n));var _=h[c+"axislayer"],b=t._mainLinePosition,p=b+=t._shift,k=t._mainMirrorPosition,E=t._vals=Qn.calcTicks(t),S=[t.mirror,p,k].join("_");for(a=0;a<E.length;a++)E[a].axInfo=S;t._selections={},t._tickAngles&&(t._prevTickAngles=t._tickAngles),t._tickAngles={},t._depth=null;var L={};function x(lt){var Gt=u+(lt||"tick");return L[Gt]||(L[Gt]=llt(t,Gt,p)),L[Gt]}if(t.visible){var C=Qn.makeTransTickFn(t),M=Qn.makeTransTickLabelFn(t),g,P,T=t.ticks==="inside",z=t.ticks==="outside";if(t.tickson==="boundaries"){var O=alt(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=slt(t,E);if(!l._hasOnlyLargeSploms){var Z=t._subplotsWith,j={};for(a=0;a<Z.length;a++){o=Z[a],s=l._plots[o];var N=s[f+"axis"],H=N._mainAxis._id;if(!j[H]){j[H]=1;var te=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:te,transFn:C}),Qn.drawZeroLine(e,t,{counterAxis:N,layer:d?s.zerolinelayerAbove:s.zerolinelayer,path:te,transFn:C})}}}var oe,_e=Qn.getTickSigns(t),Ee=Qn.getTickSigns(t,"minor");if(t.ticks||t.minor&&t.minor.ticks){var Ce=Qn.makeTickPath(t,p,_e[2]),me=Qn.makeTickPath(t,p,Ee[2],{minor:!0}),ie,Se,Le,Ae;if(t._anchorAxis&&t.mirror&&t.mirror!==!0?(ie=Qn.makeTickPath(t,k,_e[3]),Se=Qn.makeTickPath(t,k,Ee[3],{minor:!0}),Le=Ce+ie,Ae=me+Se):(ie="",Se="",Le=Ce,Ae=me),t.showdividers&&z&&t.tickson==="boundaries"){var Fe={};for(a=0;a<G.length;a++)Fe[G[a].x]=1;oe=function(lt){return Fe[lt.x]?ie:Le}}else oe=function(lt){return lt.minor?Ae:Le}}if(Qn.drawTicks(e,t,{vals:g,layer:_,path:oe,transFn:C}),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]||[],Re=ge[0],ce=ge[1],Ze=ge[2],ut=Qn.makeTickPath(t,Re,Ze?_e[0]:Ee[0],{minor:Ze})+Qn.makeTickPath(t,ce,Ze?_e[1]:Ee[1],{minor:Ze});Qn.drawTicks(e,t,{vals:g,layer:s[c+"axislayer"],path:ut,transFn:C})}}var pt=[];if(pt.push(function(){return Qn.drawLabels(e,t,{vals:E,layer:_,plotinfo:s,transFn:M,labelFns:Qn.makeLabelFns(t,p)})}),t.type==="multicategory"){var Zt={x:2,y:10}[c];pt.push(function(){var lt={x:"height",y:"width"}[c],Gt=x()[lt]+Zt+(t._tickAngles[u+"tick"]?t.tickfont.size*lM:0);return Qn.drawLabels(e,t,{vals:olt(t,E),layer:_,cls:u+"tick2",repositionOnUpdate:!0,secondary:!0,transFn:C,labelFns:Qn.makeLabelFns(t,p+Gt*_e[4])})}),pt.push(function(){return t._depth=_e[4]*(x("tick2")[t.side]-p),clt(e,t,{vals:G,layer:_,path:Qn.makeTickPath(t,p,_e[4],{len:t._depth}),transFn:C})})}else t.title.hasOwnProperty("standoff")&&pt.push(function(){t._depth=_e[4]*(x()[t.side]-p)});var st=aM.getComponentMethod("rangeslider","isVisible")(t);return!r.skipTitle&&!(st&&t.side==="bottom")&&pt.push(function(){return flt(e,t)}),pt.push(function(){var lt=t.side.charAt(0),Gt=Ost[t.side].charAt(0),Nt=Qn.getPxPosition(e,t),Jt=z?t.ticklen:0,sr,wr,cr,$e;(t.automargin||st||t._shiftPusher)&&(t.type==="multicategory"?sr=x("tick2"):(sr=x(),c==="x"&&lt==="b"&&(t._depth=Math.max(sr.width>0?sr.bottom-Nt:0,Jt))));var St=0,Qt=0;if(t._shiftPusher&&(St=Math.max(Jt,sr.height>0?lt==="l"?Nt-sr.left:sr.right-Nt:0),t.title.text!==l._dfltTitle[c]&&(Qt=(t._titleStandoff||0)+(t._titleScoot||0),lt==="l"&&(Qt+=xse(t))),t._fullDepth=Math.max(St,Qt)),t.automargin){wr={x:0,y:0,r:0,l:0,t:0,b:0};var Vt=[0,1],_t=typeof t._shift=="number"?t._shift:0;if(c==="x"){if(lt==="b"?wr[lt]=t._depth:(wr[lt]=t._depth=Math.max(sr.width>0?Nt-sr.top:0,Jt),Vt.reverse()),sr.width>0){var It=sr.right-(t._offset+t._length);It>0&&(wr.xr=1,wr.r=It);var mt=t._offset-sr.left;mt>0&&(wr.xl=0,wr.l=mt)}}else if(lt==="l"?(t._depth=Math.max(sr.height>0?Nt-sr.left:0,Jt),wr[lt]=t._depth-_t):(t._depth=Math.max(sr.height>0?sr.right-Nt:0,Jt),wr[lt]=t._depth+_t,Vt.reverse()),sr.height>0){var er=sr.bottom-(t._offset+t._length);er>0&&(wr.yb=0,wr.b=er);var lr=t._offset-sr.top;lr>0&&(wr.yt=1,wr.t=lr)}wr[f]=t.anchor==="free"?t.position:t._anchorAxis.domain[Vt[0]],t.title.text!==l._dfltTitle[c]&&(wr[lt]+=xse(t)+(t.title.standoff||0)),t.mirror&&t.anchor!=="free"&&(cr={x:0,y:0,r:0,l:0,t:0,b:0},cr[Gt]=t.linewidth,t.mirror&&t.mirror!==!0&&(cr[Gt]+=Jt),t.mirror===!0||t.mirror==="ticks"?cr[f]=t._anchorAxis.domain[Vt[1]]:(t.mirror==="all"||t.mirror==="allticks")&&(cr[f]=[t._counterDomainMin,t._counterDomainMax][Vt[1]]))}st&&($e=aM.getComponentMethod("rangeslider","autoMarginOpts")(e,t)),typeof t.automargin=="string"&&(_se(wr,t.automargin),_se(cr,t.automargin)),D3.autoMargin(e,mB(t),wr),D3.autoMargin(e,Lse(t),cr),D3.autoMargin(e,Pse(t),$e)}),Jo.syncOrAsync(pt)}};function _se(e,t){if(e){var r=Object.keys(hse).reduce(function(n,i){return t.indexOf(i)!==-1&&hse[i].forEach(function(a){n[a]=1}),n},{});Object.keys(e).forEach(function(n){r[n]||(n.length===1?e[n]=0:delete e[n])})}}function alt(e,t){var r=[],n,i=function(a,o){var s=a.xbnd[o];s!==null&&r.push(Jo.extendFlat({},a,{x:s}))};if(t.length){for(n=0;n<t.length;n++)i(t[n],0);i(t[n-1],1)}return r}function olt(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(Ese(e,Jo.interp(n[o],.5),o));return r}function slt(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 llt(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=hB(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 F3(e._offset+e.l2p(t.x),0)}:function(t){return F3(0,e._offset+e.l2p(t.x))}};Qn.makeTransTickLabelFn=function(e){var t=ult(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 F3(i+e._offset+e.l2p(fB(h))+r,a+n)}:function(h){return F3(a+n,i+e._offset+e.l2p(fB(h))+r)}};function fB(e){return e.periodX!==void 0?e.periodX:e.x}function ult(e){var t=e.ticklabelposition||"",r=e.tickson||"",n=function(v){return t.indexOf(v)!==-1},i=n("top"),a=n("left"),o=n("right"),s=n("bottom"),l=n("inside"),u=r!=="boundaries"&&(s||a||i||o);if(!u&&!l)return[0,0];var c=e.side,f=u?(e.tickwidth||0)/2:0,h=kL,d=e.tickfont?e.tickfont.size:12;return(s||i)&&(f+=d*Lb,h+=(e.linewidth||0)/2),(a||o)&&(f+=(e.linewidth||0)/2,h+=kL),l&&c==="top"&&(h-=d*(1-Lb)),(a||i)&&(f=-f),(c==="bottom"||c==="right")&&(h=-h),[u?f:0,l?h:0]}Qn.makeTickPath=function(e,t,r,n){n||(n={});var i=n.minor;if(i&&!e.minor)return"";var a=n.len!==void 0?n.len:i?e.minor.ticklen:e.ticklen,o=e._id.charAt(0),s=(e.linewidth||1)/2;return o==="x"?"M0,"+(t+s*r)+"v"+a*r:"M"+(t+s*r)+",0h"+a*r};Qn.makeLabelFns=function(e,t,r){var n=e.ticklabelposition||"",i=e.tickson||"",a=function(O){return n.indexOf(O)!==-1},o=a("top"),s=a("left"),l=a("right"),u=a("bottom"),c=i!=="boundaries"&&(u||s||o||l),f=a("inside"),h=n==="inside"&&e.ticks==="inside"||!f&&e.ticks==="outside"&&i!=="boundaries",d=0,v=0,_=h?e.ticklen:0;if(f?_*=-1:c&&(_=0),h&&(d+=_,r)){var b=Jo.deg2rad(r);d=_*Math.cos(b)+1,v=_*Math.sin(b)}e.showticklabels&&(h||e.showline)&&(d+=.2*e.tickfont.size),d+=(e.linewidth||1)/2*(f?-1:1);var p={labelStandoff:d,labelShift:v},k,E,S,L,x=0,C=e.side,M=e._id.charAt(0),g=e.tickangle,P;if(M==="x")P=!f&&C==="bottom"||f&&C==="top",L=P?1:-1,f&&(L*=-1),k=v*L,E=t+d*L,S=P?1:-.2,Math.abs(g)===90&&(f?S+=nM:g===-90&&C==="bottom"?S=Lb:g===90&&C==="top"?S=nM:S=.5,x=nM/2*(g/90)),p.xFn=function(O){return O.dx+k+x*O.fontSize},p.yFn=function(O){return O.dy+E+O.fontSize*S},p.anchorFn=function(O,V){if(c){if(s)return"end";if(l)return"start"}return!Ih(V)||V===0||V===180?"middle":V*L<0!==f?"end":"start"},p.heightFn=function(O,V,G){return V<-60||V>60?-.5*G:e.side==="top"!==f?-G:0};else if(M==="y"){if(P=!f&&C==="left"||f&&C==="right",L=P?1:-1,f&&(L*=-1),k=d,E=v*L,S=0,!f&&Math.abs(g)===90&&(g===-90&&C==="left"||g===90&&C==="right"?S=Lb:S=.5),f){var T=Ih(g)?+g:0;if(T!==0){var z=Jo.deg2rad(T);x=Math.abs(Math.sin(z))*Lb*L,S=0}}p.xFn=function(O){return O.dx+t-(k+O.fontSize*S)*L+x*O.fontSize},p.yFn=function(O){return O.dy+E+O.fontSize*nM},p.anchorFn=function(O,V){return Ih(V)&&Math.abs(V)===90?"middle":P?"end":"start"},p.heightFn=function(O,V,G){return e.side==="right"&&(V*=-1),V<-30?-G:V<30?-.5*G:0}}return p};function PL(e){return[e.text,e.x,e.axInfo,e.font,e.fontSize,e.fontColor].join("_")}Qn.drawTicks=function(e,t,r){r=r||{};var n=t._id+"tick",i=[].concat(t.minor&&t.minor.ticks?r.vals.filter(function(o){return o.minor&&!o.noTick}):[]).concat(t.ticks?r.vals.filter(function(o){return!o.minor&&!o.noTick}):[]),a=r.layer.selectAll("path."+n).data(i,PL);a.exit().remove(),a.enter().append("path").classed(n,1).classed("ticks",1).classed("crisp",r.crisp!==!1).each(function(o){return oM.stroke(b0.select(this),o.minor?t.minor.tickcolor:t.tickcolor)}).style("stroke-width",function(o){return Xp.crispRound(e,o.minor?t.minor.tickwidth:t.tickwidth,1)+"px"}).attr("d",r.path).style("display",null),IL(t,[bse]),a.attr("transform",r.transFn)};Qn.drawGrid=function(e,t,r){if(r=r||{},t.tickmode!=="sync"){var n=t._id+"grid",i=t.minor&&t.minor.showgrid,a=i?r.vals.filter(function(p){return p.minor}):[],o=t.showgrid?r.vals.filter(function(p){return!p.minor}):[],s=r.counterAxis;if(s&&Qn.shouldShowZeroLine(e,t,s))for(var l=t.tickmode==="array",u=0;u<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 _=v?h:d;if(_){var b=_.selectAll("path."+n).data(v?o:a,PL);b.exit().remove(),b.enter().append("path").classed(n,1).classed("crisp",r.crisp!==!1),b.attr("transform",r.transFn).attr("d",r.path).each(function(p){return oM.stroke(b0.select(this),p.minor?t.minor.gridcolor:t.gridcolor||"#ddd")}).style("stroke-dasharray",function(p){return Xp.dashStyle(p.minor?t.minor.griddash:t.griddash,p.minor?t.minor.gridwidth:t.gridwidth)}).style("stroke-width",function(p){return(p.minor?f:t._gw)+"px"}).style("display",null),typeof r.path=="function"&&b.attr("d",r.path)}}IL(t,[uB,cB])}};Qn.drawZeroLine=function(e,t,r){r=r||r;var n=t._id+"zl",i=Qn.shouldShowZeroLine(e,t,r.counterAxis),a=r.layer.selectAll("path."+n).data(i?[{x:0,id:t._id}]:[]);a.exit().remove(),a.enter().append("path").classed(n,1).classed("zl",1).classed("crisp",r.crisp!==!1).each(function(){r.layer.selectAll("path").sort(function(o,s){return Bst(o.id,s.id)})}),a.attr("transform",r.transFn).attr("d",r.path).call(oM.stroke,t.zerolinecolor||oM.defaultLine).style("stroke-width",Xp.crispRound(e,t.zerolinewidth,t._gw||1)+"px").style("display",null),IL(t,[lB])};Qn.drawLabels=function(e,t,r){r=r||{};var n=e._fullLayout,i=t._id,a=t.zerolinelayer==="above traces",o=r.cls||i+"tick",s=r.vals.filter(function(H){return H.text}),l=r.labelFns,u=r.secondary?0:t.tickangle,c=(t._prevTickAngles||{})[o],f=r.layer.selectAll("g."+o).data(t.showticklabels?s:[],PL),h=[];f.enter().append("g").classed(o,1).append("text").attr("text-anchor","middle").each(function(H){var te=b0.select(this),oe=e._promises.length;te.call(kb.positionText,l.xFn(H),l.yFn(H)).call(Xp.font,{family:H.font,size:H.fontSize,color:H.fontColor,weight:H.fontWeight,style:H.fontStyle,variant:H.fontVariant,textcase:H.fontTextcase,lineposition:H.fontLineposition,shadow:H.fontShadow}).text(H.text).call(kb.convertToTspans,e),e._promises[oe]?h.push(e._promises.pop().then(function(){d(te,u)})):d(te,u)}),IL(t,[fse]),f.exit().remove(),r.repositionOnUpdate&&f.each(function(H){b0.select(this).select("text").call(kb.positionText,l.xFn(H),l.yFn(H))});function d(H,te){H.each(function(oe){var _e=b0.select(this),Ee=_e.select(".text-math-group"),Ce=l.anchorFn(oe,te),me=r.transFn.call(_e.node(),oe)+(Ih(te)&&+te!=0?" rotate("+te+","+l.xFn(oe)+","+(l.yFn(oe)-oe.fontSize/2)+")":""),ie=kb.lineCount(_e),Se=lM*oe.fontSize,Le=l.heightFn(oe,Ih(te)?+te:0,(ie-1)*Se);if(Le&&(me+=F3(0,Le)),Ee.empty()){var Ae=_e.select("text");Ae.attr({transform:me,"text-anchor":Ce}),Ae.style("display",null),t._adjustTickLabelsOverflow&&t._adjustTickLabelsOverflow()}else{var Fe=Xp.bBox(Ee.node()).width,Pe=Fe*{end:-.5,start:.5}[Ce];Ee.attr("transform",me+F3(Pe,0))}})}t._adjustTickLabelsOverflow=function(){var H=t.ticklabeloverflow;if(!(!H||H==="allow")){var te=H.indexOf("hide")!==-1,oe=t._id.charAt(0)==="x",_e=0,Ee=oe?e._fullLayout.width:e._fullLayout.height;if(H.indexOf("domain")!==-1){var Ce=Jo.simpleMap(t.range,t.r2l);_e=t.l2p(Ce[0])+t._offset,Ee=t.l2p(Ce[1])+t._offset}var me=Math.min(_e,Ee),ie=Math.max(_e,Ee),Se=t.side,Le=1/0,Ae=-1/0;f.each(function(Re){var ce=b0.select(this),Ze=ce.select(".text-math-group");if(Ze.empty()){var ut=Xp.bBox(ce.node()),pt=0;oe?(ut.right>ie||ut.left<me)&&(pt=1):(ut.bottom>ie||ut.top+(t.tickangle?0:Re.fontSize/4)<me)&&(pt=1);var Zt=ce.select("text");pt?te&&Zt.style("display","none"):Zt.node().style.display!=="none"&&(Zt.style("display",null),Se==="bottom"||Se==="right"?Le=Math.min(Le,oe?ut.top:ut.left):Le=-1/0,Se==="top"||Se==="left"?Ae=Math.max(Ae,oe?ut.bottom:ut.right):Ae=1/0)}});for(var Fe in n._plots){var Pe=n._plots[Fe];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(H){var te=t._id.charAt(0)==="x",oe=[];for(var _e in n._plots){var Ee=n._plots[_e];t._id!==Ee.xaxis._id&&t._id!==Ee.yaxis._id||oe.push(te?Ee.yaxis:Ee.xaxis)}oe.forEach(function(Ce,me){Ce&&cM(Ce)&&(H||[lB,cB,uB,bse,fse]).forEach(function(ie){var Se=ie.K==="tick"&&ie.L==="text"&&t.ticklabelmode==="period",Le=n._plots[t._mainSubplot],Ae;if(ie.K===lB.K){var Fe=a?Le.zerolinelayerAbove:Le.zerolinelayer;Ae=Fe.selectAll("."+t._id+"zl")}else ie.K===cB.K?Ae=Le.minorGridlayer.selectAll("."+t._id):ie.K===uB.K?Ae=Le.gridlayer.selectAll("."+t._id):Ae=Le[t._id.charAt(0)+"axislayer"];Ae.each(function(){var Pe=b0.select(this);ie.L&&(Pe=Pe.selectAll(ie.L)),Pe.each(function(ge){var Re=t.l2p(Se?fB(ge):ge.x)+t._offset,ce=b0.select(this);Re<t["_visibleLabelMax_"+Ce._id]&&Re>t["_visibleLabelMin_"+Ce._id]?ce.style("display","none"):ie.K==="tick"&&!me&&ce.node().style.display!=="none"&&ce.style("display",null)})})})})},d(f,c+1?c:u);function v(){return h.length&&Promise.all(h)}var _=null;function b(){if(d(f,u),s.length&&t.autotickangles&&(t.type!=="log"||String(t.dtick).charAt(0)!=="D")){_=t.autotickangles[0];var H=0,te=[],oe,_e=1;f.each(function(wr){H=Math.max(H,wr.fontSize);var cr=t.l2p(wr.x),$e=hB(this),St=Xp.bBox($e.node());_e=Math.max(_e,kb.lineCount($e)),te.push({top:0,bottom:10,height:10,left:cr-St.width/2,right:cr+St.width/2+2,width:St.width+2})});var Ee=(t.tickson==="boundaries"||t.showdividers)&&!r.secondary,Ce=s.length,me=Math.abs((s[Ce-1].x-s[0].x)*t._m)/(Ce-1),ie=Ee?me/2:me,Se=Ee?t.ticklen:H*1.25*_e,Le=Math.sqrt(Math.pow(ie,2)+Math.pow(Se,2)),Ae=ie/Le,Fe=t.autotickangles.map(function(wr){return wr*Math.PI/180}),Pe=Fe.find(function(wr){return Math.abs(Math.cos(wr))<=Ae});Pe===void 0&&(Pe=Fe.reduce(function(wr,cr){return Math.abs(Math.cos(wr))<Math.abs(Math.cos(cr))?wr:cr},Fe[0]));var ge=Pe*(180/Math.PI);if(Ee){var Re=2;for(t.ticks&&(Re+=t.tickwidth/2),oe=0;oe<te.length;oe++){var ce=s[oe].xbnd,Ze=te[oe];if(ce[0]!==null&&Ze.left-t.l2p(ce[0])<Re||ce[1]!==null&&t.l2p(ce[1])-Ze.right<Re){_=ge;break}}}else{var ut=t.ticklabelposition||"",pt=t.tickson||"",Zt=function(wr){return ut.indexOf(wr)!==-1},st=Zt("top"),lt=Zt("left"),Gt=Zt("right"),Nt=Zt("bottom"),Jt=pt!=="boundaries"&&(Nt||lt||st||Gt),sr=Jt?(t.tickwidth||0)+2*kL:0;for(oe=0;oe<te.length-1;oe++)if(Jo.bBoxIntersect(te[oe],te[oe+1],sr)){_=ge;break}}_&&d(f,_)}}t._selections&&(t._selections[o]=f);var p=[v];t.automargin&&n._redrawFromAutoMarginCount&&c===90?(_=c,p.push(function(){d(f,c)})):p.push(b),t._tickAngles&&p.push(function(){t._tickAngles[o]=_===null?Ih(u)?u:0:_});var k=function(){var H=0,te=0;return f.each(function(oe,_e){var Ee=hB(this),Ce=Ee.select(".text-math-group");if(Ce.empty()){var me;t._vals[_e]&&(me=t._vals[_e].bb||Xp.bBox(Ee.node()),t._vals[_e].bb=me),H=Math.max(H,me.width),te=Math.max(te,me.height)}}),{labelsMaxW:H,labelsMaxH:te}},E=t._anchorAxis;if(E&&(E.autorange||E.insiderange)&&cM(t)&&!Nst(n,t._id)&&(n._insideTickLabelsUpdaterange||(n._insideTickLabelsUpdaterange={}),E.autorange&&(n._insideTickLabelsUpdaterange[E._name+".autorange"]=E.autorange,p.push(k)),E.insiderange)){var S=k(),L=t._id.charAt(0)==="y"?S.labelsMaxW:S.labelsMaxH;L+=2*kL,t.ticklabelposition==="inside"&&(L+=t.ticklen||0);var x=t.side==="right"||t.side==="top"?1:-1,C=x===1?1:0,M=x===1?0:1,g=[];g[M]=E.range[M];var P=E.range,T=E.r2p(P[C]),z=E.r2p(P[M]),O=n._insideTickLabelsUpdaterange[E._name+".range"];if(O){var V=E.r2p(O[C]),G=E.r2p(O[M]),Z=x*(t._id.charAt(0)==="y"?1:-1);Z*T<Z*V&&(T=V,g[C]=P[C]=O[C]),Z*z>Z*G&&(z=G,g[M]=P[M]=O[M])}var j=Math.abs(z-T);j-L>0?(j-=L,L*=1+L/j):L=0,t._id.charAt(0)!=="y"&&(L=-L),g[C]=E.p2r(E.r2p(P[C])+x*L),E.autorange==="min"||E.autorange==="max reversed"?(g[0]=null,E._rangeInitial0=void 0,E._rangeInitial1=void 0):(E.autorange==="max"||E.autorange==="min reversed")&&(g[1]=null,E._rangeInitial0=void 0,E._rangeInitial1=void 0),n._insideTickLabelsUpdaterange[E._name+".range"]=g}var N=Jo.syncOrAsync(p);return N&&N.then&&e._promises.push(N),N};function clt(e,t,r){var n=t._id+"divider",i=r.vals,a=r.layer.selectAll("path."+n).data(i,PL);a.exit().remove(),a.enter().insert("path",":first-child").classed(n,1).classed("crisp",1).call(oM.stroke,t.dividercolor).style("stroke-width",Xp.crispRound(e,t.dividerwidth,1)+"px"),a.attr("transform",r.transFn).attr("d",r.path)}Qn.getPxPosition=function(e,t){var r=e._fullLayout._size,n=t._id.charAt(0),i=t.side,a;if(t.anchor!=="free"?a=t._anchorAxis:n==="x"?a={_offset:r.t+(1-(t.position||0))*r.h,_length:0}:n==="y"&&(a={_offset:r.l+(t.position||0)*r.w+t._shift,_length:0}),i==="top"||i==="left")return a._offset;if(i==="bottom"||i==="right")return a._offset+a._length};function xse(e){var t=e.title.font.size,r=(e.title.text.match(kb.BR_TAG_ALL)||[]).length;return e.title.hasOwnProperty("standoff")?t*(Lb+r*lM):r?t*(r+1)*lM:t}function flt(e,t){var r=e._fullLayout,n=t._id,i=n.charAt(0),a=t.title.font.size,o,s=(t.title.text.match(kb.BR_TAG_ALL)||[]).length;if(t.title.hasOwnProperty("standoff"))t.side==="bottom"||t.side==="right"?o=t._depth+t.title.standoff+a*Lb:(t.side==="top"||t.side==="left")&&(o=t._depth+t.title.standoff+a*(nM+s*lM));else{var l=cM(t);if(t.type==="multicategory")o=t._depth;else{var u=1.5*a;l&&(u=.5*a,t.ticks==="outside"&&(u+=t.ticklen)),o=10+u+(t.linewidth?t.linewidth-1:0)}l||(i==="x"?o+=t.side==="top"?a*(t.showticklabels?1:0):a*(t.showticklabels?1.5:.5):o+=t.side==="right"?a*(t.showticklabels?1:.5):a*(t.showticklabels?.5:0))}var c=Qn.getPxPosition(e,t),f,h,d;i==="x"?(h=t._offset+t._length/2,d=t.side==="top"?c-o:c+o):(d=t._offset+t._length/2,h=t.side==="right"?c+o:c-o,f={rotate:"-90",offset:0});var v;if(t.type!=="multicategory"){var _=t._selections[t._id+"tick"];if(v={selection:_,side:t.side},_&&_.node()&&_.node().parentNode){var b=Xp.getTranslate(_.node().parentNode);v.offsetLeft=b.x,v.offsetTop=b.y}t.title.hasOwnProperty("standoff")&&(v.pad=0)}return t._titleStandoff=o,Lst.draw(e,n+"title",{propContainer:t,propName:t._name+".title.text",placeholder:r._dfltTitle[i],avoid:v,transform:f,attributes:{x:h,y:d,"text-anchor":"middle"}})}Qn.shouldShowZeroLine=function(e,t,r){var n=Jo.simpleMap(t.range,t.r2l);return n[0]*n[1]<=0&&t.zeroline&&(t.type==="linear"||t.type==="-")&&!(t.rangebreaks&&t.maskBreaks(0)===CL)&&(Cse(t,0)||!hlt(e,t,r,n)||dlt(e,t))};Qn.clipEnds=function(e,t){return t.filter(function(r){return Cse(e,r.x)})};function Cse(e,t){var r=e.l2p(t);return r>1&&r<e._length-1}function hlt(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 _=Math.max((v.linewidth+t.zerolinewidth)/2,1);function b(E){return typeof E=="number"&&Math.abs(E-l)<_}if(b(v._mainLinePosition)||b(v._mainMirrorPosition))return!0;var p=v._linepositions||{};for(var k in p)if(b(p[k][0])||b(p[k][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 dlt(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&&(aM.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 hB(e){var t=b0.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&&(D3.allowAutoMargin(e,mB(n)),n.mirror&&D3.allowAutoMargin(e,Lse(n))),aM.getComponentMethod("rangeslider","isVisible")(n)&&D3.allowAutoMargin(e,Pse(n))}};function mB(e){return e._id+".automargin"}function Lse(e){return mB(e)+".mirror"}function Pse(e){return e._id+".rangeslider"}Qn.swap=function(e,t){for(var r=vlt(e,t),n=0;n<r.length;n++)plt(e,r[n].x,r[n].y)};function vlt(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]],wL(l.x,u.x),wL(l.y,u.y);wL(l.x,[o]),wL(l.y,[s])}}return r}function wL(e,t){for(var r=0;r<t.length;r++)e.indexOf(t[r])===-1&&e.push(t[r])}function plt(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(Pst),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,_=!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?_=!0:p!==h&&(v=!1)}for(s=1;s<i.length&&v;s++){var k=i[s][f];f==="type"&&c.indexOf(d)!==-1&&c.indexOf(k)!==-1&&d!==k?b=!0:i[s][f]!==d&&(v=!1)}v&&(_&&(a[n[0]._name].type="linear"),b&&(a[i[0]._name].type="linear"),glt(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 glt(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 yB(e){return e._id==="angularaxis"}function oB(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 cM(e){return(e.ticklabelposition||"").indexOf("inside")!==-1}function IL(e,t){cM(e._anchorAxis||{})&&e._hideCounterAxisInsideTickLabels&&e._hideCounterAxisInsideTickLabels(t)}function dB(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 mlt(e,t){return e.autoshift?t[e.overlaying][e.side]:e.shift||0}function ylt(e,t){return/%f/.test(t)?e>=zst:/%L/.test(t)?e>=Fst:/%[SX]/.test(t)?e>=EL:/%M/.test(t)?e>=sM:/%[HI]/.test(t)?e>=xm:/%p/.test(t)?e>=s_:/%[Aadejuwx]/.test(t)?e>=Ov:/%[UVW]/.test(t)?e>=Zp:/%[Bbm]/.test(t)?e>=ML:/%[q]/.test(t)?e>=SL:/%[Yy]/.test(t)?e>=AL:!0}});var _B=ye((Xnr,Rse)=>{"use strict";Rse.exports=function(t,r,n){var i,a;if(n){var o=r==="reversed"||r==="min reversed"||r==="max reversed";i=n[o?1:0],a=n[o?0:1]}var s=t("autorangeoptions.minallowed",a===null?i:void 0),l=t("autorangeoptions.maxallowed",i===null?a:void 0);s===void 0&&t("autorangeoptions.clipmin"),l===void 0&&t("autorangeoptions.clipmax"),t("autorangeoptions.include")}});var xB=ye((Znr,Dse)=>{"use strict";var _lt=_B();Dse.exports=function(t,r,n,i){var a=r._template||{},o=r.type||a.type||"-";n("minallowed"),n("maxallowed");var s=n("range");if(!s){var l;!i.noInsiderange&&o!=="log"&&(l=n("insiderange"),l&&(l[0]===null||l[1]===null)&&(r.insiderange=!1,l=void 0),l&&(s=n("range",l)))}var u=r.getAutorangeDflt(s,i),c=n("autorange",u),f;s&&(s[0]===null&&s[1]===null||(s[0]===null||s[1]===null)&&(c==="reversed"||c===!0)||s[0]!==null&&(c==="min"||c==="max reversed")||s[1]!==null&&(c==="max"||c==="min reversed"))&&(s=void 0,delete r.range,r.autorange=!0,f=!0),f||(u=r.getAutorangeDflt(s,i),c=n("autorange",u)),c&&(_lt(n,c,s),(o==="linear"||o==="-")&&n("rangemode")),r.cleanRange()}});var zse=ye((Ynr,Fse)=>{var xlt={left:0,top:0};Fse.exports=blt;function blt(e,t,r){t=t||e.currentTarget||e.srcElement,Array.isArray(r)||(r=[0,0]);var n=e.clientX||0,i=e.clientY||0,a=wlt(t);return r[0]=n-a.left,r[1]=i-a.top,r}function wlt(e){return e===window||e===document||e===document.body?xlt:e.getBoundingClientRect()}});var RL=ye((Knr,Ose)=>{"use strict";var Tlt=rq();function Alt(){var e=!1;try{var t=Object.defineProperty({},"passive",{get:function(){e=!0}});window.addEventListener("test",null,t),window.removeEventListener("test",null,t)}catch(r){e=!1}return e}Ose.exports=Tlt&&Alt()});var Bse=ye((Jnr,qse)=>{"use strict";qse.exports=function(t,r,n,i,a){var o=(t-n)/(i-n),s=o+r/(i-n),l=(o+s)/2;return a==="left"||a==="bottom"?o:a==="center"||a==="middle"?l:a==="right"||a==="top"?s:o<2/3-l?o:s>4/3-l?s:l}});var Vse=ye(($nr,Use)=>{"use strict";var Nse=Dr(),Slt=[["sw-resize","s-resize","se-resize"],["w-resize","move","e-resize"],["nw-resize","n-resize","ne-resize"]];Use.exports=function(t,r,n,i){return n==="left"?t=0:n==="center"?t=1:n==="right"?t=2:t=Nse.constrain(Math.floor(t*3),0,2),i==="bottom"?r=0:i==="middle"?r=1:i==="top"?r=2:r=Nse.constrain(Math.floor(r*3),0,2),Slt[r][t]}});var Hse=ye((Qnr,Gse)=>{"use strict";var Mlt=_3(),Elt=z6(),klt=NS().getGraphDiv,Clt=zS(),bB=Gse.exports={};bB.wrapped=function(e,t,r){e=klt(e),e._fullLayout&&Elt.clear(e._fullLayout._uid+Clt.HOVERID),bB.raw(e,t,r)};bB.raw=function(t,r){var n=t._fullLayout,i=t._hoverdata;r||(r={}),!(r.target&&!t._dragged&&Mlt.triggerHandler(t,"plotly_beforehover",r)===!1)&&(n._hoverlayer.selectAll("g").remove(),n._hoverlayer.selectAll("line").remove(),n._hoverlayer.selectAll("circle").remove(),t._hoverdata=void 0,r.target&&i&&t.emit("plotly_unhover",{event:r,points:i}))}});var yv=ye((ear,Zse)=>{"use strict";var Llt=zse(),wB=nq(),Plt=RL(),Ilt=Dr().removeElement,Rlt=hd(),Pb=Zse.exports={};Pb.align=Bse();Pb.getCursor=Vse();var Wse=Hse();Pb.unhover=Wse.wrapped;Pb.unhoverRaw=Wse.raw;Pb.init=function(t){var r=t.gd,n=1,i=r._context.doubleClickDelay,a=t.element,o,s,l,u,c,f,h,d;r._mouseDownTime||(r._mouseDownTime=0),a.style.pointerEvents="all",a.onmousedown=b,Plt?(a._ontouchstart&&a.removeEventListener("touchstart",a._ontouchstart),a._ontouchstart=b,a.addEventListener("touchstart",b,{passive:!1})):a.ontouchstart=b;function v(E,S,L){return Math.abs(E)<L&&(E=0),Math.abs(S)<L&&(S=0),[E,S]}var _=t.clampFn||v;function b(E){r._dragged=!1,r._dragging=!0;var S=jse(E);o=S[0],s=S[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),wB&&!d?(c=Xse(),c.style.cursor=window.getComputedStyle(a).cursor):wB||(c=document,u=window.getComputedStyle(document.documentElement).cursor,document.documentElement.style.cursor=window.getComputedStyle(a).cursor),document.addEventListener("mouseup",k),document.addEventListener("touchend",k),t.dragmode!==!1&&(E.preventDefault(),document.addEventListener("mousemove",p),document.addEventListener("touchmove",p,{passive:!1}))}function p(E){E.preventDefault();var S=jse(E),L=t.minDrag||Rlt.MINDRAG,x=_(S[0]-o,S[1]-s,L),C=x[0],M=x[1];(C||M)&&(r._dragged=!0,Pb.unhover(r,E)),r._dragged&&t.moveFn&&!d&&(r._dragdata={element:a,dx:C,dy:M},t.moveFn(C,M))}function k(E){if(delete r._dragdata,t.dragmode!==!1&&(E.preventDefault(),document.removeEventListener("mousemove",p),document.removeEventListener("touchmove",p)),document.removeEventListener("mouseup",k),document.removeEventListener("touchend",k),wB?Ilt(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 S;f.target===h?S=f:(S={target:h,srcElement:h,toElement:h},Object.keys(f).concat(Object.keys(f.__proto__)).forEach(L=>{var x=f[L];!S[L]&&typeof x!="function"&&(S[L]=x)})),t.clickFn&&t.clickFn(n,S),d||h.dispatchEvent(new MouseEvent("click",E))}r._dragging=!1,r._dragged=!1}};function Xse(){var e=document.createElement("div");e.className="dragcover";var t=e.style;return t.position="fixed",t.left=0,t.right=0,t.top=0,t.bottom=0,t.zIndex=999999999,t.background="none",document.body.appendChild(e),e}Pb.coverSlip=Xse;function jse(e){return Llt(e.changedTouches?e.changedTouches[0]:e,document.body)}});var Sg=ye((tar,Yse)=>{"use strict";Yse.exports=function(t,r){(t.attr("class")||"").split(" ").forEach(function(n){n.indexOf("cursor-")===0&&t.classed(n,!1)}),r&&t.classed("cursor-"+r,!0)}});var $se=ye((rar,Jse)=>{"use strict";var TB=Sg(),fM="data-savedcursor",Kse="!!";Jse.exports=function(t,r){var n=t.attr(fM);if(r){if(!n){for(var i=(t.attr("class")||"").split(" "),a=0;a<i.length;a++){var o=i[a];o.indexOf("cursor-")===0&&t.attr(fM,o.slice(7)).classed(o,!1)}t.attr(fM)||t.attr(fM,Kse)}TB(t,r)}else n&&(t.attr(fM,null),n===Kse?TB(t):TB(t,n))}});var SB=ye((iar,Qse)=>{"use strict";var AB=ec(),Dlt=Lh();Qse.exports={_isSubplotObj:!0,visible:{valType:"boolean",dflt:!0,editType:"legend"},bgcolor:{valType:"color",editType:"legend"},bordercolor:{valType:"color",dflt:Dlt.defaultLine,editType:"legend"},maxheight:{valType:"number",min:0,editType:"legend"},borderwidth:{valType:"number",min:0,dflt:0,editType:"legend"},font:AB({editType:"legend"}),grouptitlefont:AB({editType:"legend"}),orientation:{valType:"enumerated",values:["v","h"],dflt:"v",editType:"legend"},traceorder:{valType:"flaglist",flags:["reversed","grouped"],extras:["normal"],editType:"legend"},tracegroupgap:{valType:"number",min:0,dflt:10,editType:"legend"},entrywidth:{valType:"number",min:0,editType:"legend"},entrywidthmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"pixels",editType:"legend"},indentation:{valType:"number",min:-15,dflt:0,editType:"legend"},itemsizing:{valType:"enumerated",values:["trace","constant"],dflt:"trace",editType:"legend"},itemwidth:{valType:"number",min:30,dflt:30,editType:"legend"},itemclick:{valType:"enumerated",values:["toggle","toggleothers",!1],dflt:"toggle",editType:"legend"},itemdoubleclick:{valType:"enumerated",values:["toggle","toggleothers",!1],dflt:"toggleothers",editType:"legend"},groupclick:{valType:"enumerated",values:["toggleitem","togglegroup"],dflt:"togglegroup",editType:"legend"},x:{valType:"number",editType:"legend"},xref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left",editType:"legend"},y:{valType:"number",editType:"legend"},yref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],editType:"legend"},uirevision:{valType:"any",editType:"none"},valign:{valType:"enumerated",values:["top","middle","bottom"],dflt:"middle",editType:"legend"},title:{text:{valType:"string",dflt:"",editType:"legend"},font:AB({editType:"legend"}),side:{valType:"enumerated",values:["top","left","top left","top center","top right"],editType:"legend"},editType:"legend"},editType:"legend"}});var FL=ye(DL=>{"use strict";DL.isGrouped=function(t){return(t.traceorder||"").indexOf("grouped")!==-1};DL.isVertical=function(t){return t.orientation!=="h"};DL.isReversed=function(t){return(t.traceorder||"").indexOf("reversed")!==-1}});var EB=ye((aar,ele)=>{"use strict";var zL=qa(),Yp=Dr(),Flt=vl(),zlt=Gl(),Olt=SB(),qlt=c3(),MB=FL();function Blt(e,t,r,n){var i=t[e]||{},a=Flt.newContainer(r,e);function o(N,H){return Yp.coerce(i,a,Olt,N,H)}var s=Yp.coerceFont(o,"font",r.font);o("bgcolor",r.paper_bgcolor),o("bordercolor");var l=o("visible");if(!l)return;var u,c=function(N,H){var te=u._input,oe=u;return Yp.coerce(te,oe,zlt,N,H)},f=r.font||{},h=Yp.coerceFont(o,"grouptitlefont",f,{overrideDflt:{size:Math.round(f.size*1.1)}}),d=0,v=!1,_="normal",b=(r.shapes||[]).filter(function(N){return N.showlegend});function p(N){return zL.traceIs(N,"pie-like")&&N._length!=null&&(Array.isArray(N.legend)||Array.isArray(N.showlegend))}n.filter(p).forEach(function(N){N.visible&&d++;for(var H=0;H<N._length;H++){var te=(Array.isArray(N.legend)?N.legend[H]:N.legend)||"legend";te===e&&((Array.isArray(N.showlegend)?N.showlegend[H]:N.showlegend)||N._dfltShowLegend)&&(v=!0,d++)}if(e==="legend"&&N._length>N.legend.length)for(var oe=N.legend.length;oe<N._length;oe++)v=!0,d++});for(var k=n.concat(b).filter(function(N){return!p(u)&&e===(N.legend||"legend")}),E=0;E<k.length;E++)if(u=k[E],!!u.visible){var S=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,(!S&&zL.traceIs(u,"pie-like")||u._input.showlegend===!0)&&d++),Yp.coerceFont(c,"legendgrouptitle.font",h)),(!S&&zL.traceIs(u,"bar")&&r.barmode==="stack"||["tonextx","tonexty"].indexOf(u.fill)!==-1)&&(_=MB.isGrouped({traceorder:_})?"grouped+reversed":"reversed"),u.legendgroup!==void 0&&u.legendgroup!==""&&(_=MB.isReversed({traceorder:_})?"reversed+grouped":"grouped")}var L=Yp.coerce(t,r,qlt,"showlegend",r.showlegend||v&&d>(e==="legend"?1:0));if(L===!1&&(r[e]=void 0),!(L===!1&&!i.uirevision)&&(o("uirevision",r.uirevision),L!==!1)){o("borderwidth");var x=o("orientation"),C=o("yref"),M=o("xref"),g=x==="h",P=C==="paper",T=M==="paper",z,O,V,G="left";g?(z=0,zL.getComponentMethod("rangeslider","isVisible")(t.xaxis)?P?(O=1.1,V="bottom"):(O=1,V="top"):P?(O=-.1,V="top"):(O=0,V="bottom")):(O=1,V="auto",T?z=1.02:(z=1,G="right")),Yp.coerce(i,a,{x:{valType:"number",editType:"legend",min:T?-2:0,max:T?3:1,dflt:z}},"x"),Yp.coerce(i,a,{y:{valType:"number",editType:"legend",min:P?-2:0,max:P?3:1,dflt:O}},"y"),o("traceorder",_),MB.isGrouped(r[e])&&o("tracegroupgap"),o("entrywidth"),o("entrywidthmode"),o("indentation"),o("itemsizing"),o("itemwidth"),o("itemclick"),o("itemdoubleclick"),o("groupclick"),o("xanchor",G),o("yanchor",V),o("maxheight"),o("valign"),Yp.noneOrAll(i,a,["x","y"]);var Z=o("title.text");if(Z){o("title.side",g?"left":"top");var j=Yp.extendFlat({},s,{size:Yp.bigFont(s.size)});Yp.coerceFont(o,"title.font",j)}}}ele.exports=function(t,r,n){var i,a=n.slice(),o=r.shapes;if(o)for(i=0;i<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++)Array.isArray(a[i].legend)?u=u.concat(a[i].legend):Yp.pushUnique(u,a[i].legend);for(r._legends=[],i=0;i<u.length;i++){var c=u[i];Blt(c,t,r,a),r[c]&&(r[c]._id=c),r._legends.push(c)}}});var rle=ye((oar,tle)=>{"use strict";var q3=qa(),CB=Dr(),Nlt=CB.pushUnique,kB=!0;tle.exports=function(t,r,n){var i=r._fullLayout;if(r._dragged||r._editing)return;var a=i.legend.itemclick,o=i.legend.itemdoubleclick,s=i.legend.groupclick;n===1&&a==="toggle"&&o==="toggleothers"&&kB&&r.data&&r._context.showTips&&CB.notifier(CB._(r,"Double-click on legend to isolate one trace"),"long"),kB=!1;var l;if(n===1?l=a:n===2&&(l=o),!l)return;var u=s==="togglegroup",c=i.hiddenlabels?i.hiddenlabels.slice():[],f=t.data()[0][0];if(f.groupTitle&&f.noClick)return;var h=r._fullData,d=(i.shapes||[]).filter(function(Gt){return Gt.showlegend}),v=h.concat(d),_=f.trace;_._isShape&&(_=_._fullInput);var b=_.legendgroup,p,k,E,S,L,x,C={},M=[],g=[],P=[];function T(Gt,Nt){var Jt=M.indexOf(Gt),sr=C.visible;return sr||(sr=C.visible=[]),M.indexOf(Gt)===-1&&(M.push(Gt),Jt=M.length-1),sr[Jt]=Nt,Jt}var z=(i.shapes||[]).map(function(Gt){return Gt._input}),O=!1;function V(Gt,Nt){z[Gt].visible=Nt,O=!0}function G(Gt,Nt){if(!(f.groupTitle&&!u)){var Jt=Gt._fullInput||Gt,sr=Jt._isShape,wr=Jt.index;wr===void 0&&(wr=Jt._index);var cr=Jt.visible===!1?!1:Nt;sr?V(wr,cr):T(wr,cr)}}var Z=_.legend,j=_._fullInput,N=j&&j._isShape;if(!N&&q3.traceIs(_,"pie-like")){var H=f.label,te=c.indexOf(H);if(l==="toggle")te===-1?c.push(H):c.splice(te,1);else if(l==="toggleothers"){var oe=te!==-1,_e=[];for(p=0;p<r.calcdata.length;p++){var Ee=r.calcdata[p];for(k=0;k<Ee.length;k++){var Ce=Ee[k],me=Ce.label;Z===Ee[0].trace.legend&&H!==me&&(c.indexOf(me)===-1&&(oe=!0),Nlt(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)}}q3.call("_guiRelayout",r,"hiddenlabels",c)}else{var Le=b&&b.length,Ae=[],Fe;if(Le)for(p=0;p<v.length;p++)Fe=v[p],Fe.visible&&Fe.legendgroup===b&&Ae.push(p);if(l==="toggle"){var Pe;switch(_.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(_,Pe);else G(_,Pe)}else if(l==="toggleothers"){var Re,ce,Ze,ut,pt,Zt=!0;for(p=0;p<v.length;p++)if(pt=v[p],Re=pt===_,Ze=pt.showlegend!==!0,!(Re||Ze)&&(ce=Le&&pt.legendgroup===b,!ce&&pt.legend===Z&&pt.visible===!0&&!q3.traceIs(pt,"notLegendIsolatable"))){Zt=!1;break}for(p=0;p<v.length;p++)if(pt=v[p],!(pt.visible===!1||pt.legend!==Z)&&!q3.traceIs(pt,"notLegendIsolatable"))switch(_.visible){case"legendonly":G(pt,!0);break;case!0:ut=Zt?!0:"legendonly",Re=pt===_,Ze=pt.showlegend!==!0&&!pt.legendgroup,ce=Re||Le&&pt.legendgroup===b,G(pt,ce||Ze?!0:ut);break}}for(p=0;p<g.length;p++)if(E=g[p],!!E){var st=E.constructUpdate(),lt=Object.keys(st);for(k=0;k<lt.length;k++)S=lt[k],x=C[S]=C[S]||[],x[P[p]]=st[S]}for(L=Object.keys(C),p=0;p<L.length;p++)for(S=L[p],k=0;k<M.length;k++)C[S].hasOwnProperty(k)||(C[S][k]=void 0);O?q3.call("_guiUpdate",r,C,{shapes:z},M):q3.call("_guiRestyle",r,C,M)}}});var LB=ye((sar,ile)=>{"use strict";ile.exports={scrollBarWidth:6,scrollBarMinHeight:20,scrollBarColor:"#808BA4",scrollBarMargin:4,scrollBarEnterAttrs:{rx:20,ry:3,width:0,height:0},titlePad:2,itemGap:5}});var ole=ye((lar,ale)=>{"use strict";var nle=qa(),PB=FL();ale.exports=function(t,r,n){var i=r._inHover,a=PB.isGrouped(r),o=PB.isReversed(r),s={},l=[],u=!1,c={},f=0,h=0,d,v;function _(H,te,oe){if(r.visible!==!1&&!(n&&H!==r._id))if(te===""||!PB.isGrouped(r)){var _e="~~i"+f;l.push(_e),s[_e]=[oe],f++}else l.indexOf(te)===-1?(l.push(te),u=!0,s[te]=[oe]):s[te].push(oe)}for(d=0;d<t.length;d++){var b=t[d],p=b[0],k=p.trace,E=k.legend,S=k.legendgroup;if(!(!i&&(!k.visible||!k.showlegend)))if(nle.traceIs(k,"pie-like")){var L=Array.isArray(k.legend),x=Array.isArray(k.showlegend);for(c[S]||(c[S]={}),v=0;v<b.length;v++)if(!(x&&k.showlegend[b[v].i]===!1)){L&&(E=k.legend[b[v].i]||"legend");var C=b[v].label;c[S][C]||(_(E,S,{label:C,color:b[v].color,i:b[v].i,trace:k,pts:b[v].pts}),c[S][C]=!0,h=Math.max(h,(C||"").length))}}else _(E,S,p),h=Math.max(h,(k.name||"").length)}if(!l.length)return[];var M=!u||!a,g=[];for(d=0;d<l.length;d++){var P=s[l[d]];M?g.push(P[0]):g.push(P)}for(M&&(g=[g]),d=0;d<g.length;d++){var T=1/0;for(v=0;v<g[d].length;v++){var z=g[d][v].trace.legendrank;T>z&&(T=z)}g[d][0]._groupMinRank=T,g[d][0]._preGroupSort=d}var O=function(H,te){return H[0]._groupMinRank-te[0]._groupMinRank||H[0]._preGroupSort-te[0]._preGroupSort},V=function(H,te){return H.trace.legendrank-te.trace.legendrank||H._preSort-te._preSort};for(g.forEach(function(H,te){H[0]._preGroupSort=te}),g.sort(O),d=0;d<g.length;d++){g[d].forEach(function(H,te){H._preSort=te}),g[d].sort(V);var G=g[d][0].trace,Z=null;for(v=0;v<g[d].length;v++){var j=g[d][v].trace.legendgrouptitle;if(j&&j.text){Z=j,i&&(j.font=r._groupTitleFont);break}}if(o&&g[d].reverse(),Z){var N=!1;for(v=0;v<g[d].length;v++)if(nle.traceIs(g[d][v].trace,"pie-like")){N=!0;break}g[d].unshift({i:-1,groupTitle:Z,noClick:N,trace:{showlegend:G.showlegend,legendgroup:G.legendgroup,visible:r.groupclick==="toggleitem"?!0:G.visible}})}for(v=0;v<g[d].length;v++)g[d][v]=[g[d][v]]}return r._lgroupsLength=g.length,r._maxNameLength=h,g}});var l_=ye(Ib=>{"use strict";var OL=Dr();function sle(e){return e.indexOf("e")!==-1?e.replace(/[.]?0+e/,"e"):e.indexOf(".")!==-1?e.replace(/[.]?0+$/,""):e}Ib.formatPiePercent=function(t,r){var n=sle((t*100).toPrecision(3));return OL.numSeparate(n,r)+"%"};Ib.formatPieValue=function(t,r){var n=sle(t.toPrecision(10));return OL.numSeparate(n,r)};Ib.getFirstFilled=function(t,r){if(OL.isArrayOrTypedArray(t))for(var n=0;n<r.length;n++){var i=t[r[n]];if(i||i===0||i==="")return i}};Ib.castOption=function(t,r){if(OL.isArrayOrTypedArray(t))return Ib.getFirstFilled(t,r);if(t)return t};Ib.getRotationAngle=function(e){return(e==="auto"?0:e)*Math.PI/180}});var ule=ye((car,lle)=>{"use strict";var Ult=So(),Vlt=ka();lle.exports=function(t,r,n,i){var a=n.marker.pattern;a&&a.shape?Ult.pointStyle(t,n,i,r):Vlt.fill(t,r.color)}});var B3=ye((far,hle)=>{"use strict";var cle=ka(),fle=l_().castOption,Glt=ule();hle.exports=function(t,r,n,i){var a=n.marker.line,o=fle(a.color,r.pts)||cle.defaultLine,s=fle(a.width,r.pts)||0;t.call(Glt,r,n,i).style("stroke-width",s).call(cle.stroke,o)}});var FB=ye((har,yle)=>{"use strict";var qv=Oa(),IB=qa(),_v=Dr(),dle=_v.strTranslate,Kp=So(),w0=ka(),RB=pv().extractOpts,qL=Ru(),Hlt=B3(),jlt=l_().castOption,Wlt=LB(),vle=12,ple=5,Rb=2,Xlt=10,N3=5;yle.exports=function(t,r,n){var i=r._fullLayout;n||(n=i.legend);var a=n.itemsizing==="constant",o=n.itemwidth,s=(o+Wlt.itemGap*2)/2,l=dle(s,0),u=function(C,M,g,P){var T;if(C+1)T=C;else if(M&&M.width>0)T=M.width;else return 0;return a?P:Math.min(T,g)};t.each(function(C){var M=qv.select(this),g=_v.ensureSingle(M,"g","layers");g.style("opacity",C[0].trace.opacity);var P=n.indentation,T=n.valign,z=C[0].lineHeight,O=C[0].height;if(T==="middle"&&P===0||!z||!O)g.attr("transform",null);else{var V={top:1,bottom:-1}[T],G=V*(.5*(z-O+3))||0,Z=n.indentation;g.attr("transform",dle(Z,G))}var j=g.selectAll("g.legendfill").data([C]);j.enter().append("g").classed("legendfill",!0);var N=g.selectAll("g.legendlines").data([C]);N.enter().append("g").classed("legendlines",!0);var H=g.selectAll("g.legendsymbols").data([C]);H.enter().append("g").classed("legendsymbols",!0),H.selectAll("g.legendpoints").data([C]).enter().append("g").classed("legendpoints",!0)}).each(x).each(h).each(v).each(d).each(b).each(S).each(E).each(c).each(f).each(p).each(k);function c(C){var M=gle(C),g=M.showFill,P=M.showLine,T=M.showGradientLine,z=M.showGradientFill,O=M.anyFill,V=M.anyLine,G=C[0],Z=G.trace,j,N,H=RB(Z),te=H.colorscale,oe=H.reversescale,_e=function(Ae){if(Ae.size())if(g)Kp.fillGroupStyle(Ae,r,!0);else{var Fe="legendfill-"+Z.uid;Kp.gradient(Ae,r,Fe,DB(oe),te,"fill")}},Ee=function(Ae){if(Ae.size()){var Fe="legendline-"+Z.uid;Kp.lineGroupStyle(Ae),Kp.gradient(Ae,r,Fe,DB(oe),te,"stroke")}},Ce=qL.hasMarkers(Z)||!O?"M5,0":V?"M5,-2":"M5,-3",me=qv.select(this),ie=me.select(".legendfill").selectAll("path").data(g||z?[C]:[]);if(ie.enter().append("path").classed("js-fill",!0),ie.exit().remove(),ie.attr("d",Ce+"h"+o+"v6h-"+o+"z").call(_e),P||T){var Se=u(void 0,Z.line,Xlt,ple);N=_v.minExtend(Z,{line:{width:Se}}),j=[_v.minExtend(G,{trace:N})]}var Le=me.select(".legendlines").selectAll("path").data(P||T?[j]:[]);Le.enter().append("path").classed("js-line",!0),Le.exit().remove(),Le.attr("d",Ce+(T?"l"+o+",0.0001":"h"+o)).call(P?Kp.lineGroupStyle:Ee)}function f(C){var M=gle(C),g=M.anyFill,P=M.anyLine,T=M.showLine,z=M.showMarker,O=C[0],V=O.trace,G=!z&&!P&&!g&&qL.hasText(V),Z,j;function N(ie,Se,Le,Ae){var Fe=_v.nestedProperty(V,ie).get(),Pe=_v.isArrayOrTypedArray(Fe)&&Se?Se(Fe):Fe;if(a&&Pe&&Ae!==void 0&&(Pe=Ae),Le){if(Pe<Le[0])return Le[0];if(Pe>Le[1])return Le[1]}return Pe}function H(ie){return O._distinct&&O.index&&ie[O.index]?ie[O.index]:ie[0]}if(z||G||T){var te={},oe={};if(z){te.mc=N("marker.color",H),te.mx=N("marker.symbol",H),te.mo=N("marker.opacity",_v.mean,[.2,1]),te.mlc=N("marker.line.color",H),te.mlw=N("marker.line.width",_v.mean,[0,5],Rb),oe.marker={sizeref:1,sizemin:1,sizemode:"diameter"};var _e=N("marker.size",_v.mean,[2,16],vle);te.ms=_e,oe.marker.size=_e}T&&(oe.line={width:N("line.width",H,[0,10],ple)}),G&&(te.tx="Aa",te.tp=N("textposition",H),te.ts=10,te.tc=N("textfont.color",H),te.tf=N("textfont.family",H),te.tw=N("textfont.weight",H),te.ty=N("textfont.style",H),te.tv=N("textfont.variant",H),te.tC=N("textfont.textcase",H),te.tE=N("textfont.lineposition",H),te.tS=N("textfont.shadow",H)),Z=[_v.minExtend(O,te)],j=_v.minExtend(V,oe),j.selectedpoints=null,j.texttemplate=null}var Ee=qv.select(this).select("g.legendpoints"),Ce=Ee.selectAll("path.scatterpts").data(z?Z:[]);Ce.enter().insert("path",":first-child").classed("scatterpts",!0).attr("transform",l),Ce.exit().remove(),Ce.call(Kp.pointStyle,j,r),z&&(Z[0].mrc=3);var me=Ee.selectAll("g.pointtext").data(G?Z:[]);me.enter().append("g").classed("pointtext",!0).append("text").attr("transform",l),me.exit().remove(),me.selectAll("text").call(Kp.textPointStyle,j,r)}function h(C){var M=C[0].trace,g=M.type==="waterfall";if(C[0]._distinct&&g){var P=C[0].trace[C[0].dir].marker;return C[0].mc=P.color,C[0].mlw=P.line.width,C[0].mlc=P.line.color,_(C,this,"waterfall")}var T=[];M.visible&&g&&(T=C[0].hasTotals?[["increasing","M-6,-6V6H0Z"],["totals","M6,6H0L-6,-6H-0Z"],["decreasing","M6,6V-6H0Z"]]:[["increasing","M-6,-6V6H6Z"],["decreasing","M6,6V-6H-6Z"]]);var z=qv.select(this).select("g.legendpoints").selectAll("path.legendwaterfall").data(T);z.enter().append("path").classed("legendwaterfall",!0).attr("transform",l).style("stroke-miterlimit",1),z.exit().remove(),z.each(function(O){var V=qv.select(this),G=M[O[0]].marker,Z=u(void 0,G.line,N3,Rb);V.attr("d",O[1]).style("stroke-width",Z+"px").call(w0.fill,G.color),Z&&V.call(w0.stroke,G.line.color)})}function d(C){_(C,this)}function v(C){_(C,this,"funnel")}function _(C,M,g){var P=C[0].trace,T=P.marker||{},z=T.line||{},O=T.cornerradius?"M6,3a3,3,0,0,1-3,3H-3a3,3,0,0,1-3-3V-3a3,3,0,0,1,3-3H3a3,3,0,0,1,3,3Z":"M6,6H-6V-6H6Z",V=g?P.visible&&P.type===g:IB.traceIs(P,"bar"),G=qv.select(M).select("g.legendpoints").selectAll("path.legend"+g).data(V?[C]:[]);G.enter().append("path").classed("legend"+g,!0).attr("d",O).attr("transform",l),G.exit().remove(),G.each(function(Z){var j=qv.select(this),N=Z[0],H=u(N.mlw,T.line,N3,Rb);j.style("stroke-width",H+"px");var te=N.mcc;if(!n._inHover&&"mc"in N){var oe=RB(T),_e=oe.mid;_e===void 0&&(_e=(oe.max+oe.min)/2),te=Kp.tryColorscale(T,"")(_e)}var Ee=te||N.mc||T.color,Ce=T.pattern,me=Kp.getPatternAttr,ie=Ce&&(me(Ce.shape,0,"")||me(Ce.path,0,""));if(ie){var Se=me(Ce.bgcolor,0,null),Le=me(Ce.fgcolor,0,null),Ae=Ce.fgopacity,Fe=mle(Ce.size,8,10),Pe=mle(Ce.solidity,.5,1),ge="legend-"+P.uid;j.call(Kp.pattern,"legend",r,ge,ie,Fe,Pe,te,Ce.fillmode,Se,Le,Ae)}else j.call(w0.fill,Ee);H&&w0.stroke(j,N.mlc||z.color)})}function b(C){var M=C[0].trace,g=qv.select(this).select("g.legendpoints").selectAll("path.legendbox").data(M.visible&&IB.traceIs(M,"box-violin")?[C]:[]);g.enter().append("path").classed("legendbox",!0).attr("d","M6,6H-6V-6H6Z").attr("transform",l),g.exit().remove(),g.each(function(){var P=qv.select(this);if((M.boxpoints==="all"||M.points==="all")&&w0.opacity(M.fillcolor)===0&&w0.opacity((M.line||{}).color)===0){var T=_v.minExtend(M,{marker:{size:a?vle:_v.constrain(M.marker.size,2,16),sizeref:1,sizemin:1,sizemode:"diameter"}});g.call(Kp.pointStyle,T,r)}else{var z=u(void 0,M.line,N3,Rb);P.style("stroke-width",z+"px").call(w0.fill,M.fillcolor),z&&w0.stroke(P,M.line.color)}})}function p(C){var M=C[0].trace,g=qv.select(this).select("g.legendpoints").selectAll("path.legendcandle").data(M.visible&&M.type==="candlestick"?[C,C]:[]);g.enter().append("path").classed("legendcandle",!0).attr("d",function(P,T){return T?"M-15,0H-8M-8,6V-6H8Z":"M15,0H8M8,-6V6H-8Z"}).attr("transform",l).style("stroke-miterlimit",1),g.exit().remove(),g.each(function(P,T){var z=qv.select(this),O=M[T?"increasing":"decreasing"],V=u(void 0,O.line,N3,Rb);z.style("stroke-width",V+"px").call(w0.fill,O.fillcolor),V&&w0.stroke(z,O.line.color)})}function k(C){var M=C[0].trace,g=qv.select(this).select("g.legendpoints").selectAll("path.legendohlc").data(M.visible&&M.type==="ohlc"?[C,C]:[]);g.enter().append("path").classed("legendohlc",!0).attr("d",function(P,T){return T?"M-15,0H0M-8,-6V0":"M15,0H0M8,6V0"}).attr("transform",l).style("stroke-miterlimit",1),g.exit().remove(),g.each(function(P,T){var z=qv.select(this),O=M[T?"increasing":"decreasing"],V=u(void 0,O.line,N3,Rb);z.style("fill","none").call(Kp.dashLine,O.line.dash,V),V&&w0.stroke(z,O.line.color)})}function E(C){L(C,this,"pie")}function S(C){L(C,this,"funnelarea")}function L(C,M,g){var P=C[0],T=P.trace,z=g?T.visible&&T.type===g:IB.traceIs(T,g),O=qv.select(M).select("g.legendpoints").selectAll("path.legend"+g).data(z?[C]:[]);if(O.enter().append("path").classed("legend"+g,!0).attr("d","M6,6H-6V-6H6Z").attr("transform",l),O.exit().remove(),O.size()){var V=T.marker||{},G=u(jlt(V.line.width,P.pts),V.line,N3,Rb),Z="pieLike",j=_v.minExtend(T,{marker:{line:{width:G}}},Z),N=_v.minExtend(P,{trace:j},Z);Hlt(O,N,j,r)}}function x(C){var M=C[0].trace,g,P=[];if(M.visible)switch(M.type){case"histogram2d":case"heatmap":P=[["M-15,-2V4H15V-2Z"]],g=!0;break;case"choropleth":case"choroplethmapbox":case"choroplethmap":P=[["M-6,-6V6H6V-6Z"]],g=!0;break;case"densitymapbox":case"densitymap":P=[["M-6,0 a6,6 0 1,0 12,0 a 6,6 0 1,0 -12,0"]],g="radial";break;case"cone":P=[["M-6,2 A2,2 0 0,0 -6,6 V6L6,4Z"],["M-6,-6 A2,2 0 0,0 -6,-2 L6,-4Z"],["M-6,-2 A2,2 0 0,0 -6,2 L6,0Z"]],g=!1;break;case"streamtube":P=[["M-6,2 A2,2 0 0,0 -6,6 H6 A2,2 0 0,1 6,2 Z"],["M-6,-6 A2,2 0 0,0 -6,-2 H6 A2,2 0 0,1 6,-6 Z"],["M-6,-2 A2,2 0 0,0 -6,2 H6 A2,2 0 0,1 6,-2 Z"]],g=!1;break;case"surface":P=[["M-6,-6 A2,3 0 0,0 -6,0 H6 A2,3 0 0,1 6,-6 Z"],["M-6,1 A2,3 0 0,1 -6,6 H6 A2,3 0 0,0 6,0 Z"]],g=!0;break;case"mesh3d":P=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],g=!1;break;case"volume":P=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],g=!0;break;case"isosurface":P=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6 A12,24 0 0,0 6,-6 L0,6Z"]],g=!1;break}var T=qv.select(this).select("g.legendpoints").selectAll("path.legend3dandfriends").data(P);T.enter().append("path").classed("legend3dandfriends",!0).attr("transform",l).style("stroke-miterlimit",1),T.exit().remove(),T.each(function(z,O){var V=qv.select(this),G=RB(M),Z=G.colorscale,j=G.reversescale,N=function(_e){if(_e.size()){var Ee="legendfill-"+M.uid;Kp.gradient(_e,r,Ee,DB(j,g==="radial"),Z,"fill")}},H;if(Z){if(!g){var oe=Z.length;H=O===0?Z[j?oe-1:0][1]:O===1?Z[j?0:oe-1][1]:Z[Math.floor((oe-1)/2)][1]}}else{var te=M.vertexcolor||M.facecolor||M.color;H=_v.isArrayOrTypedArray(te)?te[O]||te[0]:te}V.attr("d",z[0]),H?V.call(w0.fill,H):V.call(N)})}};function DB(e,t){var r=t?"radial":"horizontal";return r+(e?"":"reversed")}function gle(e){var t=e[0].trace,r=t.contours,n=qL.hasLines(t),i=qL.hasMarkers(t),a=t.visible&&t.fill&&t.fill!=="none",o=!1,s=!1;if(r){var l=r.coloring;l==="lines"?o=!0:n=l==="none"||l==="heatmap"||r.showlines,r.type==="constraint"?a=r._operation!=="=":(l==="fill"||l==="heatmap")&&(s=!0)}return{showMarker:i,showLine:n,showFill:a,showGradientLine:o,showGradientFill:s,anyLine:n||o,anyFill:a||s}}function mle(e,t,r){return e&&_v.isArrayOrTypedArray(e)?t:e>r?r:e}});var BB=ye((dar,kle)=>{"use strict";var Mp=Oa(),Rh=Dr(),OB=Mc(),G3=qa(),_le=_3(),zB=yv(),Dh=So(),NL=ka(),Db=ru(),xle=rle(),ed=LB(),qB=$h(),Mle=qB.LINE_SPACING,V3=qB.FROM_TL,ble=qB.FROM_BR,wle=ole(),Zlt=FB(),Tle=FL(),U3=1,Ylt=/^legend[0-9]*$/;kle.exports=function(t,r){if(r)Ale(t,r);else{var n=t._fullLayout,i=n._legends,a=n._infolayer.selectAll('[class^="legend"]');a.each(function(){var u=Mp.select(this),c=u.attr("class"),f=c.split(" ")[0];f.match(Ylt)&&i.indexOf(f)===-1&&u.remove()});for(var o=0;o<i.length;o++){var s=i[o],l=t._fullLayout[s];Ale(t,l)}}};function Klt(e,t,r){if(!(t.title.side!=="top center"&&t.title.side!=="top right")){var n=t.title.font,i=n.size*Mle,a=0,o=e.node(),s=Dh.bBox(o).width;t.title.side==="top center"?a=.5*(t._width-2*r-2*ed.titlePad-s):t.title.side==="top right"&&(a=t._width-2*r-2*ed.titlePad-s),Db.positionText(e,r+ed.titlePad+a,r+i)}}function Ale(e,t){var r=t||{},n=e._fullLayout,i=HL(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=wle(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&&wle(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(),OB.autoMargin(e,i);var _=Rh.ensureSingle(o,"g",i,function(M){s||M.attr("pointer-events","all")}),b=Rh.ensureSingleById(n._topdefs,"clipPath",a,function(M){M.append("rect")}),p=Rh.ensureSingle(_,"rect","bg",function(M){M.attr("shape-rendering","crispEdges")});p.call(NL.stroke,r.bordercolor).call(NL.fill,r.bgcolor).style("stroke-width",r.borderwidth+"px");var k=Rh.ensureSingle(_,"g","scrollbox"),E=r.title;r._titleWidth=0,r._titleHeight=0;var S;E.text?(S=Rh.ensureSingle(k,"text",i+"titletext"),S.attr("text-anchor","start").call(Dh.font,E.font).text(E.text),UL(S,k,e,r,U3)):k.selectAll("."+i+"titletext").remove();var L=Rh.ensureSingle(_,"rect","scrollbar",function(M){M.attr(ed.scrollBarEnterAttrs).call(NL.fill,ed.scrollBarColor)}),x=k.selectAll("g.groups").data(l);x.enter().append("g").attr("class","groups"),x.exit().remove();var C=x.selectAll("g.traces").data(Rh.identity);C.enter().append("g").attr("class","traces"),C.exit().remove(),C.style("opacity",function(M){var g=M[0].trace;return G3.traceIs(g,"pie-like")?v.indexOf(M[0].label)!==-1?.5:1:g.visible==="legendonly"?.5:1}).each(function(){Mp.select(this).call(Jlt,e,r)}).call(Zlt,e,r).each(function(){s||Mp.select(this).call($lt,e,i)}),Rh.syncOrAsync([OB.previousPromises,function(){return tut(e,x,C,r)},function(){var M=n._size,g=r.borderwidth,P=r.xref==="paper",T=r.yref==="paper";if(E.text&&Klt(S,r,g),!s){var z,O;P?z=M.l+M.w*r.x-V3[VL(r)]*r._width:z=n.width*r.x-V3[VL(r)]*r._width,T?O=M.t+M.h*(1-r.y)-V3[GL(r)]*r._effHeight:O=n.height*(1-r.y)-V3[GL(r)]*r._effHeight;var V=rut(e,i,z,O);if(V)return;if(n.margin.autoexpand){var G=z,Z=O;z=P?Rh.constrain(z,0,n.width-r._width):G,O=T?Rh.constrain(O,0,n.height-r._effHeight):Z,z!==G&&Rh.log("Constrain "+i+".x to make legend fit inside graph"),O!==Z&&Rh.log("Constrain "+i+".y to make legend fit inside graph")}Dh.setTranslate(_,z,O)}if(L.on(".drag",null),_.on("wheel",null),s||r._height<=r._maxHeight||e._context.staticPlot){var j=r._effHeight;s&&(j=r._height),p.attr({width:r._width-g,height:j-g,x:g/2,y:g/2}),Dh.setTranslate(k,0,0),b.select("rect").attr({width:r._width-2*g,height:j-2*g,x:g,y:g}),Dh.setClipUrl(k,a,e),Dh.setRect(L,0,0,0,0),delete r._scrollY}else{var N=Math.max(ed.scrollBarMinHeight,r._effHeight*r._effHeight/r._height),H=r._effHeight-N-2*ed.scrollBarMargin,te=r._height-r._effHeight,oe=H/te,_e=Math.min(r._scrollY||0,te);p.attr({width:r._width-2*g+ed.scrollBarWidth+ed.scrollBarMargin,height:r._effHeight-g,x:g/2,y:g/2}),b.select("rect").attr({width:r._width-2*g+ed.scrollBarWidth+ed.scrollBarMargin,height:r._effHeight-2*g,x:g,y:g+_e}),Dh.setClipUrl(k,a,e),Fe(_e,N,oe),_.on("wheel",function(){_e=Rh.constrain(r._scrollY+Mp.event.deltaY/te*H,0,te),Fe(_e,N,oe),_e!==0&&_e!==te&&Mp.event.preventDefault()});var Ee,Ce,me,ie=function(Ze,ut,pt){var Zt=(pt-ut)/oe+Ze;return Rh.constrain(Zt,0,te)},Se=function(Ze,ut,pt){var Zt=(ut-pt)/oe+Ze;return Rh.constrain(Zt,0,te)},Le=Mp.behavior.drag().on("dragstart",function(){var Ze=Mp.event.sourceEvent;Ze.type==="touchstart"?Ee=Ze.changedTouches[0].clientY:Ee=Ze.clientY,me=_e}).on("drag",function(){var Ze=Mp.event.sourceEvent;Ze.buttons===2||Ze.ctrlKey||(Ze.type==="touchmove"?Ce=Ze.changedTouches[0].clientY:Ce=Ze.clientY,_e=ie(me,Ee,Ce),Fe(_e,N,oe))});L.call(Le);var Ae=Mp.behavior.drag().on("dragstart",function(){var Ze=Mp.event.sourceEvent;Ze.type==="touchstart"&&(Ee=Ze.changedTouches[0].clientY,me=_e)}).on("drag",function(){var Ze=Mp.event.sourceEvent;Ze.type==="touchmove"&&(Ce=Ze.changedTouches[0].clientY,_e=Se(me,Ee,Ce),Fe(_e,N,oe))});k.call(Ae)}function Fe(Ze,ut,pt){r._scrollY=e._fullLayout[i]._scrollY=Ze,Dh.setTranslate(k,0,-Ze),Dh.setRect(L,r._width,ed.scrollBarMargin+Ze*pt,ed.scrollBarWidth,ut),b.select("rect").attr("y",g+Ze)}if(e._context.edits.legendPosition){var Pe,ge,Re,ce;_.classed("cursor-move",!0),zB.init({element:_.node(),gd:e,prepFn:function(Ze){if(Ze.target!==L.node()){var ut=Dh.getTranslate(_);Re=ut.x,ce=ut.y}},moveFn:function(Ze,ut){if(Re!==void 0&&ce!==void 0){var pt=Re+Ze,Zt=ce+ut;Dh.setTranslate(_,pt,Zt),Pe=zB.align(pt,r._width,M.l,M.l+M.w,r.xanchor),ge=zB.align(Zt+r._height,-r._height,M.t+M.h,M.t,r.yanchor)}},doneFn:function(){if(Pe!==void 0&&ge!==void 0){var Ze={};Ze[i+".x"]=Pe,Ze[i+".y"]=ge,G3.call("_guiRelayout",e,Ze)}},clickFn:function(Ze,ut){var pt=o.selectAll("g.traces").filter(function(){var Zt=this.getBoundingClientRect();return ut.clientX>=Zt.left&&ut.clientX<=Zt.right&&ut.clientY>=Zt.top&&ut.clientY<=Zt.bottom});pt.size()>0&&Ele(e,_,pt,Ze,ut)}})}}],e)}}function BL(e,t,r){var n=e[0],i=n.width,a=t.entrywidthmode,o=n.trace.legendwidth||t.entrywidth;return a==="fraction"?t._maxWidth*o:r+(o||i)}function Ele(e,t,r,n,i){var a=r.data()[0][0].trace,o={event:i,node:r.node(),curveNumber:a.index,expandedIndex:a.index,data:e.data,layout:e.layout,frames:e._transitionData._frames,config:e._context,fullData:e._fullData,fullLayout:e._fullLayout};a._group&&(o.group=a._group),G3.traceIs(a,"pie-like")&&(o.label=r.datum()[0].label);var s=_le.triggerHandler(e,"plotly_legendclick",o);if(n===1){if(s===!1)return;t._clickTimeout=setTimeout(function(){e._fullLayout&&xle(r,e,n)},e._context.doubleClickDelay)}else if(n===2){t._clickTimeout&&clearTimeout(t._clickTimeout),e._legendMouseDownTime=0;var l=_le.triggerHandler(e,"plotly_legenddoubleclick",o);l!==!1&&s!==!1&&xle(r,e,n)}}function Jlt(e,t,r){var n=HL(r),i=e.data()[0][0],a=i.trace,o=G3.traceIs(a,"pie-like"),s=!r._inHover&&t._context.edits.legendText&&!o,l=r._maxNameLength,u,c;i.groupTitle?(u=i.groupTitle.text,c=i.groupTitle.font):(c=r.font,r.entries?u=i.text:(u=o?i.label:a.name,a._meta&&(u=Rh.templateString(u,a._meta))));var f=Rh.ensureSingle(e,"text",n+"text");f.attr("text-anchor","start").call(Dh.font,c).text(s?Sle(u,l):u);var h=r.indentation+r.itemwidth+ed.itemGap*2;Db.positionText(f,h,0),s?f.call(Db.makeEditable,{gd:t,text:u}).call(UL,e,t,r).on("edit",function(d){this.text(Sle(d,l)).call(UL,e,t,r);var v=i.trace._fullInput||{},_={};return _.name=d,v._isShape?G3.call("_guiRelayout",t,"shapes["+a.index+"].name",_.name):G3.call("_guiRestyle",t,_,a.index)}):UL(f,e,t,r)}function Sle(e,t){var r=Math.max(4,t);if(e&&e.trim().length>=r/2)return e;e=e||"";for(var n=r-e.length;n>0;n--)e+=" ";return e}function $lt(e,t,r){var n=t._context.doubleClickDelay,i,a=1,o=Rh.ensureSingle(e,"rect",r+"toggle",function(s){t._context.staticPlot||s.style("cursor","pointer").attr("pointer-events","all"),s.call(NL.fill,"rgba(0,0,0,0)")});t._context.staticPlot||(o.on("mousedown",function(){i=new Date().getTime(),i-t._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)),Ele(t,s,e,a,Mp.event)}}))}function UL(e,t,r,n,i){n._inHover&&e.attr("data-notex",!0),Db.convertToTspans(e,r,function(){Qlt(t,r,n,i)})}function Qlt(e,t,r,n){var i=e.data()[0][0],a=i&&i.trace.showlegend;if(Array.isArray(a)&&(a=a[i.i]!==!1),!r._inHover&&i&&!a){e.remove();return}var o=e.select("g[class*=math-group]"),s=o.node(),l=HL(r);r||(r=t._fullLayout[l]);var u=r.borderwidth,c;n===U3?c=r.title.font:i.groupTitle?c=i.groupTitle.font:c=r.font;var f=c.size*Mle,h,d;if(s){var v=Dh.bBox(s);h=v.height,d=v.width,n===U3?Dh.setTranslate(o,u,u+h*.75):Dh.setTranslate(o,0,h*.25)}else{var _="."+l+(n===U3?"title":"")+"text",b=e.select(_),p=Db.lineCount(b),k=b.node();if(h=f*p,d=k?Dh.bBox(k).width:0,n===U3)r.title.side==="left"&&(d+=ed.itemGap*2),Db.positionText(b,u+ed.titlePad,u+f);else{var E=ed.itemGap*2+r.indentation+r.itemwidth;i.groupTitle&&(E=ed.itemGap,d-=r.indentation+r.itemwidth),Db.positionText(b,E,-f*((p-1)/2-.3))}}n===U3?(r._titleWidth=d,r._titleHeight=h):(i.lineHeight=f,i.height=Math.max(h,16)+3,i.width=d)}function eut(e){var t=0,r=0,n=e.title.side;return n&&(n.indexOf("left")!==-1&&(t=e._titleWidth),n.indexOf("top")!==-1&&(r=e._titleHeight)),[t,r]}function tut(e,t,r,n){var i=e._fullLayout,a=HL(n);n||(n=i[a]);var o=i._size,s=Tle.isVertical(n),l=Tle.isGrouped(n),u=n.entrywidthmode==="fraction",c=n.borderwidth,f=2*c,h=ed.itemGap,d=n.indentation+n.itemwidth+h*2,v=2*(c+h),_=GL(n),b=n.y<0||n.y===0&&_==="top",p=n.y>1||n.y===1&&_==="bottom",k=n.tracegroupgap,E={};let{orientation:S,yref:L}=n,{maxheight:x}=n,C=b||p||S!=="v"||L!=="paper";x||(x=C?.5:1);let M=C?i.height:o.h;n._maxHeight=Math.max(x>1?x:x*M,30);var g=0;n._width=0,n._height=0;var P=eut(n);if(s)r.each(function(Fe){var Pe=Fe[0].height;Dh.setTranslate(this,c+P[0],c+P[1]+n._height+Pe/2+h),n._height+=Pe,n._width=Math.max(n._width,Fe[0].width)}),g=d+n._width,n._width+=h+d+f,n._height+=v,l&&(t.each(function(Fe,Pe){Dh.setTranslate(this,0,Pe*n.tracegroupgap)}),n._height+=(n._lgroupsLength-1)*n.tracegroupgap);else{var T=VL(n),z=n.x<0||n.x===0&&T==="right",O=n.x>1||n.x===1&&T==="left",V=p||b,G=i.width/2;n._maxWidth=Math.max(z?V&&T==="left"?o.l+o.w:G:O?V&&T==="right"?o.r+o.w:G:o.w,2*d);var Z=0,j=0;r.each(function(Fe){var Pe=BL(Fe,n,d);Z=Math.max(Z,Pe),j+=Pe}),g=null;var N=0;if(l){var H=0,te=0,oe=0;t.each(function(){var Fe=0,Pe=0;Mp.select(this).selectAll("g.traces").each(function(Re){var ce=BL(Re,n,d),Ze=Re[0].height;Dh.setTranslate(this,P[0],P[1]+c+h+Ze/2+Pe),Pe+=Ze,Fe=Math.max(Fe,ce),E[Re[0].trace.legendgroup]=Fe});var ge=Fe+h;te>0&&ge+c+te>n._maxWidth?(N=Math.max(N,te),te=0,oe+=H+k,H=Pe):H=Math.max(H,Pe),Dh.setTranslate(this,te,oe),te+=ge}),n._width=Math.max(N,te)+c,n._height=oe+H+v}else{var _e=r.size(),Ee=j+f+(_e-1)*h<n._maxWidth,Ce=0,me=0,ie=0,Se=0;r.each(function(Fe){var Pe=Fe[0].height,ge=BL(Fe,n,d,l),Re=Ee?ge:Z;u||(Re+=h),Re+c+me-h>=n._maxWidth&&(N=Math.max(N,Se),me=0,ie+=Ce,n._height+=Ce,Ce=0),Dh.setTranslate(this,P[0]+c+me,P[1]+c+ie+Pe/2+h),Se=me+ge+h,me+=Re,Ce=Math.max(Ce,Pe)}),Ee?(n._width=me+f,n._height=Ce+v):(n._width=Math.max(N,Se)+f,n._height+=Ce+v)}}n._width=Math.ceil(Math.max(n._width+P[0],n._titleWidth+2*(c+ed.titlePad))),n._height=Math.ceil(Math.max(n._height+P[1],n._titleHeight+2*(c+ed.itemGap))),n._effHeight=Math.min(n._height,n._maxHeight);var Le=e._context.edits,Ae=Le.legendText||Le.legendPosition;r.each(function(Fe){var Pe=Mp.select(this).select("."+a+"toggle"),ge=Fe[0].height,Re=Fe[0].trace.legendgroup,ce=BL(Fe,n,d);l&&Re!==""&&(ce=E[Re]);var Ze=Ae?d:g||ce;!s&&!u&&(Ze+=h/2),Dh.setRect(Pe,0,-ge/2,Ze,ge)})}function rut(e,t,r,n){var i=e._fullLayout,a=i[t],o=VL(a),s=GL(a),l=a.xref==="paper",u=a.yref==="paper";e._fullLayout._reservedMargin[t]={};var c=a.y<.5?"b":"t",f=a.x<.5?"l":"r",h={r:i.width-r,l:r+a._width,b:i.height-n,t:n+a._effHeight};if(l&&u)return OB.autoMargin(e,t,{x:a.x,y:a.y,l:a._width*V3[o],r:a._width*ble[o],b:a._effHeight*ble[s],t:a._effHeight*V3[s]});l?e._fullLayout._reservedMargin[t][c]=h[c]:u||a.orientation==="v"?e._fullLayout._reservedMargin[t][f]=h[f]:e._fullLayout._reservedMargin[t][c]=h[c]}function VL(e){return Rh.isRightAnchor(e)?"right":Rh.isCenterAnchor(e)?"center":"left"}function GL(e){return Rh.isBottomAnchor(e)?"bottom":Rh.isMiddleAnchor(e)?"middle":"top"}function HL(e){return e._id||"legend"}});var GB=ye(VB=>{"use strict";var Fb=Oa(),My=Eo(),Cle=cd(),zf=Dr(),iut=zf.pushUnique,NB=zf.strTranslate,nut=zf.strRotate,aut=_3(),T0=ru(),out=$se(),bm=So(),vd=ka(),jL=yv(),wm=ho(),sut=hd().zindexSeparator,j3=qa(),Mg=ip(),zb=zS(),lut=EB(),uut=BB(),Ole=zb.YANGLE,UB=Math.PI*Ole/180,cut=1/Math.sin(UB),fut=Math.cos(UB),hut=Math.sin(UB),Qc=zb.HOVERARROWSIZE,sl=zb.HOVERTEXTPAD,Lle={box:!0,ohlc:!0,violin:!0,candlestick:!0},dut={scatter:!0,scattergl:!0,splom:!0};function Ple(e,t){return e.distance-t.distance}VB.hover=function(t,r,n,i){t=zf.getGraphDiv(t);var a=r.target;zf.throttle(t._fullLayout._uid+zb.HOVERID,zb.HOVERMINTIME,function(){vut(t,r,n,i,a)})};VB.loneHover=function(t,r){var n=!0;Array.isArray(t)||(n=!1,t=[t]);var i=r.gd,a=Vle(i),o=Gle(i),s=t.map(function(b){var p=b._x0||b.x0||b.x||0,k=b._x1||b.x1||b.x||0,E=b._y0||b.y0||b.y||0,S=b._y1||b.y1||b.y||0,L=b.eventData;if(L){var x=Math.min(p,k),C=Math.max(p,k),M=Math.min(E,S),g=Math.max(E,S),P=b.trace;if(j3.traceIs(P,"gl3d")){var T=i._fullLayout[P.scene]._scene.container,z=T.offsetLeft,O=T.offsetTop;x+=z,C+=z,M+=O,g+=O}L.bbox={x0:x+o,x1:C+o,y0:M+a,y1:g+a},r.inOut_bbox&&r.inOut_bbox.push(L.bbox)}else L=!1;return{color:b.color||vd.defaultLine,x0:b.x0||b.x||0,x1:b.x1||b.x||0,y0:b.y0||b.y||0,y1:b.y1||b.y||0,xLabel:b.xLabel,yLabel:b.yLabel,zLabel:b.zLabel,text:b.text,name:b.name,idealAlign:b.idealAlign,borderColor:b.borderColor,fontFamily:b.fontFamily,fontSize:b.fontSize,fontColor:b.fontColor,fontWeight:b.fontWeight,fontStyle:b.fontStyle,fontVariant:b.fontVariant,nameLength:b.nameLength,textAlign:b.textAlign,trace:b.trace||{index:0,hoverinfo:""},xa:{_offset:0},ya:{_offset:0},index:0,hovertemplate:b.hovertemplate||!1,hovertemplateLabels:b.hovertemplateLabels||!1,eventData:L}}),l=!1,u=Ble(s,{gd:i,hovermode:"closest",rotateLabels:l,bgColor:r.bgColor||vd.background,container:Fb.select(r.container),outerContainer:r.outerContainer||r.container}),c=u.hoverLabels,f=5,h=0,d=0;c.sort(function(b,p){return b.y0-p.y0}).each(function(b,p){var k=b.y0-b.by/2;k-f<h?b.offset=h-k+f:b.offset=0,h=k+b.by+b.offset,p===r.anchorIndex&&(d=b.offset)}).each(function(b){b.offset-=d});var v=i._fullLayout._invScaleX,_=i._fullLayout._invScaleY;return Ule(c,l,v,_),n?c:c.node()};function vut(e,t,r,n,i){r||(r="xy"),typeof r=="string"&&(r=r.split(sut)[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",_,b;if(f&&(d||v)&&l==="axis"){for(var p=a.length,k=0;k<p;k++)if(o=a[k],u[o]){_=wm.getFromId(e,o,"x"),b=wm.getFromId(e,o,"y");var E=(d?_:b)._subplotsWith;if(E&&E.length)for(var S=0;S<E.length;S++)iut(a,E[S])}}if(c&&l!=="single"){var L=c.overlays.map(function(wi){return wi.id});a=a.concat(L)}for(var x=a.length,C=new Array(x),M=new Array(x),g=!1,P=0;P<x;P++)if(o=a[P],u[o])g=!0,C[P]=u[o].xaxis,M[P]=u[o].yaxis;else if(s[o]&&s[o]._subplot){var T=s[o]._subplot;C[P]=T.xaxis,M[P]=T.yaxis}else{zf.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 jL.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,j,N,H,te,oe,_e,Ee,Ce,me,ie,Se,Le,Ae={hLinePoint:null,vLinePoint:null},Fe=!1;if(Array.isArray(t))for(h="array",N=0;N<t.length;N++)te=e.calcdata[t[N].curveNumber||0],te&&(oe=te[0].trace,te[0].trace.hoverinfo!=="skip"&&(G.push(te),oe.orientation==="h"&&(Fe=!0)));else{var Pe=e.calcdata.slice();for(Pe.sort(function(wi,On){var qn=wi[0].trace.zorder||0,Fn=On[0].trace.zorder||0;return qn-Fn}),H=0;H<Pe.length;H++)te=Pe[H],oe=te[0].trace,oe.hoverinfo!=="skip"&&Mg.isTraceInSubplots(oe,a)&&(G.push(te),oe.orientation==="h"&&(Fe=!0));var ge=!i,Re,ce;if(ge)"xpx"in t?Re=t.xpx:Re=C[0]._length/2,"ypx"in t?ce=t.ypx:ce=M[0]._length/2;else{if(aut.triggerHandler(e,"plotly_beforehover",t)===!1)return;var Ze=i.getBoundingClientRect();Re=t.clientX-Ze.left,ce=t.clientY-Ze.top,s._calcInverseTransform(e);var ut=zf.apply3DTransform(s._invTransform)(Re,ce);if(Re=ut[0],ce=ut[1],Re<0||Re>C[0]._length||ce<0||ce>M[0]._length)return jL.unhoverRaw(e,t)}if(t.pointerX=Re+C[0]._offset,t.pointerY=ce+M[0]._offset,"xval"in t?Z=Mg.flat(a,t.xval):Z=Mg.p2c(C,Re),"yval"in t?j=Mg.flat(a,t.yval):j=Mg.p2c(M,ce),!My(Z[0])||!My(j[0]))return zf.warn("Fx.hover failed",t,e),jL.unhoverRaw(e,t)}var pt=1/0;function Zt(wi,On){for(H=0;H<G.length;H++)if(te=G[H],!(!te||!te[0]||!te[0].trace)&&(oe=te[0].trace,!(oe.visible!==!0||oe._length===0)&&["carpet","contourcarpet"].indexOf(oe._module.name)===-1)){if(Ce=h,Mg.isUnifiedHover(Ce)&&(Ce=Ce.charAt(0)),oe.type==="splom"?(Ee=0,_e=a[Ee]):(_e=Mg.getSubplot(oe),Ee=a.indexOf(_e)),Se={cd:te,trace:oe,xa:C[Ee],ya:M[Ee],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]),Ce==="array"){var qn=t[H];"pointNumber"in qn?(Se.index=qn.pointNumber,Ce="closest"):(Ce="","xval"in qn&&(me=qn.xval,Ce="x"),"yval"in qn&&(ie=qn.yval,Ce=Ce?"closest":"y"))}else wi!==void 0&&On!==void 0?(me=wi,ie=On):(me=Z[Ee],ie=j[Ee]);if(Le=V.length,z!==0)if(oe._module&&oe._module.hoverPoints){var Fn=oe._module.hoverPoints(Se,me,ie,Ce,{finiteRange:!0,hoverLayer:s._hoverlayer,hoversubplots:l,gd:e});if(Fn)for(var ra,la=0;la<Fn.length;la++)ra=Fn[la],My(ra.x0)&&My(ra.y0)&&V.push(yut(ra,h))}else zf.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 Ut=oe._module.hoverPoints(Se,me,ie,"closest",{hoverLayer:s._hoverlayer});if(Ut&&(Ut=Ut.filter(function(ri){return ri.spikeDistance<=O})),Ut&&Ut.length){var wt,rr=Ut.filter(function(ri){return ri.xa.showspikes&&ri.xa.spikesnap!=="hovered data"});if(rr.length){var nr=rr[0];My(nr.x0)&&My(nr.y0)&&(wt=lt(nr),(!Ae.vLinePoint||Ae.vLinePoint.spikeDistance>wt.spikeDistance)&&(Ae.vLinePoint=wt))}var Er=Ut.filter(function(ri){return ri.ya.showspikes&&ri.ya.spikesnap!=="hovered data"});if(Er.length){var Xr=Er[0];My(Xr.x0)&&My(Xr.y0)&&(wt=lt(Xr),(!Ae.hLinePoint||Ae.hLinePoint.spikeDistance>wt.spikeDistance)&&(Ae.hLinePoint=wt))}}}}}Zt();function st(wi,On,qn){for(var Fn=null,ra=1/0,la,Ut=0;Ut<wi.length;Ut++)_&&_._id!==wi[Ut].xa._id||b&&b._id!==wi[Ut].ya._id||(la=wi[Ut].spikeDistance,qn&&Ut===0&&(la=-1/0),la<=ra&&la<=On&&(Fn=wi[Ut],ra=la));return Fn}function lt(wi){return wi?{xa:wi.xa,ya:wi.ya,x:wi.xSpike!==void 0?wi.xSpike:(wi.x0+wi.x1)/2,y:wi.ySpike!==void 0?wi.ySpike:(wi.y0+wi.y1)/2,distance:wi.distance,spikeDistance:wi.spikeDistance,curveNumber:wi.trace.index,color:wi.color,pointNumber:wi.index}:null}var Gt={fullLayout:s,container:s._hoverlayer,event:t},Nt=e._spikepoints,Jt={vLinePoint:Ae.vLinePoint,hLinePoint:Ae.hLinePoint};e._spikepoints=Jt;var sr=function(){var wi=V.filter(function(qn){return _&&_._id===qn.xa._id&&b&&b._id===qn.ya._id}),On=V.filter(function(qn){return!(_&&_._id===qn.xa._id&&b&&b._id===qn.ya._id)});wi.sort(Ple),On.sort(Ple),V=wi.concat(On),V=xut(V,h)};sr();var wr=h.charAt(0),cr=(wr==="x"||wr==="y")&&V[0]&&dut[V[0].trace.type];if(f&&O!==0&&V.length!==0){var $e=V.filter(function(wi){return wi.ya.showspikes}),St=st($e,O,cr);Ae.hLinePoint=lt(St);var Qt=V.filter(function(wi){return wi.xa.showspikes}),Vt=st(Qt,O,cr);Ae.vLinePoint=lt(Vt)}if(V.length===0){var _t=jL.unhoverRaw(e,t);return f&&(Ae.hLinePoint!==null||Ae.vLinePoint!==null)&&Dle(Nt)&&Rle(e,Ae,Gt),_t}if(f&&Dle(Nt)&&Rle(e,Ae,Gt),Mg.isXYhover(Ce)&&V[0].length!==0&&V[0].trace.type!=="splom"){var It=V[0];Lle[It.trace.type]?V=V.filter(wi=>wi.trace.index===It.trace.index):V=[It];var mt=V.length,er=zle("x",It,s),lr=zle("y",It,s);Zt(er,lr);var Tr=[],Lr={},ti=0,Br=function(wi){var On=Lle[wi.trace.type]?qle(wi):wi.trace.index;if(!Lr[On])ti++,Lr[On]=ti,Tr.push(wi);else{var qn=Lr[On]-1,Fn=Tr[qn];qn>0&&Math.abs(wi.distance)<Math.abs(Fn.distance)&&(Tr[qn]=wi)}},Vr;for(Vr=0;Vr<mt;Vr++)Br(V[Vr]);for(Vr=V.length-1;Vr>mt-1;Vr--)Br(V[Vr]);V=Tr,sr()}var dt=e._hoverdata,Ge=[],Je=Vle(e),je=Gle(e);for(let wi of V){var tt=Mg.makeEventData(wi,wi.trace,wi.cd);if(wi.hovertemplate!==!1){var xt=!1;wi.cd[wi.index]&&wi.cd[wi.index].ht&&(xt=wi.cd[wi.index].ht),wi.hovertemplate=xt||wi.trace.hovertemplate||!1}if(wi.xa&&wi.ya){var Ie=wi.x0+wi.xa._offset,xe=wi.x1+wi.xa._offset,ke=wi.y0+wi.ya._offset,vt=wi.y1+wi.ya._offset,ir=Math.min(Ie,xe),ar=Math.max(Ie,xe),vr=Math.min(ke,vt),ii=Math.max(ke,vt);tt.bbox={x0:ir+je,x1:ar+je,y0:vr+Je,y1:ii+Je}}wi.eventData=[tt],Ge.push(tt)}e._hoverdata=Ge;var pi=h==="y"&&(G.length>1||V.length>1)||h==="closest"&&Fe&&V.length>1,$r=vd.combine(s.plot_bgcolor||vd.background,s.paper_bgcolor),di=Ble(V,{gd:e,hovermode:h,rotateLabels:pi,bgColor:$r,container:s._hoverlayer,outerContainer:s._paper.node(),commonLabelOpts:s.hoverlabel,hoverdistance:s.hoverdistance}),ji=di.hoverLabels;if(Mg.isUnifiedHover(h)||(gut(ji,pi,s,di.commonLabelBoundingBox),Ule(ji,pi,s._invScaleX,s._invScaleY)),i&&i.tagName){var In=j3.getComponentMethod("annotations","hasClickToShow")(e,Ge);out(Fb.select(i),In?"pointer":"")}!i||n||!_ut(e,t,dt)||(dt&&e.emit("plotly_unhover",{event:t,points:dt}),e.emit("plotly_hover",{event:t,points:e._hoverdata,xaxes:C,yaxes:M,xvals:Z,yvals:j}))}function qle(e){return[e.trace.index,e.index,e.x0,e.y0,e.name,e.attr,e.xa?e.xa._id:"",e.ya?e.ya._id:""].join(",")}var put=/<extra>([\s\S]*)<\/extra>/;function Ble(e,t){var r=t.gd,n=r._fullLayout,i=t.hovermode,a=t.rotateLabels,o=t.bgColor,s=t.container,l=t.outerContainer,u=t.commonLabelOpts||{};if(e.length===0)return[[]];var c=t.fontFamily||zb.HOVERFONT,f=t.fontSize||zb.HOVERFONTSIZE,h=t.fontWeight||n.font.weight,d=t.fontStyle||n.font.style,v=t.fontVariant||n.font.variant,_=t.fontTextcase||n.font.textcase,b=t.fontLineposition||n.font.lineposition,p=t.fontShadow||n.font.shadow,k=e[0],E=k.xa,S=k.ya,L=i.charAt(0),x=L+"Label",C=k[x];if(C===void 0&&E.type==="multicategory")for(var M=0;M<e.length&&(C=e[M][x],C===void 0);M++);var g=H3(r,l),P=g.top,T=g.width,z=g.height,O=C!==void 0&&k.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 j=Array.isArray(Z)?Z:Z.split("+");if(j.indexOf("all")===-1&&j.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 H={minX:0,maxX:0,minY:0,maxY:0};if(N.each(function(){var _t=Fb.select(this),It=zf.ensureSingle(_t,"path","",function(ii){ii.style({"stroke-width":"1px"})}),mt=zf.ensureSingle(_t,"text","",function(ii){ii.attr("data-notex",1)}),er=u.bgcolor||vd.defaultLine,lr=u.bordercolor||vd.contrast(er),Tr=vd.contrast(er),Lr=u.font,ti={weight:Lr.weight||h,style:Lr.style||d,variant:Lr.variant||v,textcase:Lr.textcase||_,lineposition:Lr.lineposition||b,shadow:Lr.shadow||p,family:Lr.family||c,size:Lr.size||f,color:Lr.color||Tr};It.style({fill:er,stroke:lr}),mt.text(C).call(bm.font,ti).call(T0.positionText,0,0).call(T0.convertToTspans,r),_t.attr("transform","");var Br=H3(r,mt.node()),Vr,dt;if(i==="x"){var Ge=E.side==="top"?"-":"";mt.attr("text-anchor","middle").call(T0.positionText,0,E.side==="top"?P-Br.bottom-Qc-sl:P-Br.top+Qc+sl),Vr=E._offset+(k.x0+k.x1)/2,dt=S._offset+(E.side==="top"?0:S._length);var Je=Br.width/2+sl,je=Vr;Vr<Je?je=Je:Vr>n.width-Je&&(je=n.width-Je),It.attr("d","M"+(Vr-je)+",0L"+(Vr-je+Qc)+","+Ge+Qc+"H"+Je+"v"+Ge+(sl*2+Br.height)+"H"+-Je+"V"+Ge+Qc+"H"+(Vr-je-Qc)+"Z"),Vr=je,H.minX=Vr-Je,H.maxX=Vr+Je,E.side==="top"?(H.minY=dt-(sl*2+Br.height),H.maxY=dt-sl):(H.minY=dt+sl,H.maxY=dt+(sl*2+Br.height))}else{var tt,xt,Ie;S.side==="right"?(tt="start",xt=1,Ie="",Vr=E._offset+E._length):(tt="end",xt=-1,Ie="-",Vr=E._offset),dt=S._offset+(k.y0+k.y1)/2,mt.attr("text-anchor",tt),It.attr("d","M0,0L"+Ie+Qc+","+Qc+"V"+(sl+Br.height/2)+"h"+Ie+(sl*2+Br.width)+"V-"+(sl+Br.height/2)+"H"+Ie+Qc+"V-"+Qc+"Z"),H.minY=dt-(sl+Br.height/2),H.maxY=dt+(sl+Br.height/2),S.side==="right"?(H.minX=Vr+Qc,H.maxX=Vr+Qc+(sl*2+Br.width)):(H.minX=Vr-Qc-(sl*2+Br.width),H.maxX=Vr-Qc);var xe=Br.height/2,ke=P-Br.top-xe,vt="clip"+n._uid+"commonlabel"+S._id,ir;if(Vr<Br.width+2*sl+Qc){ir="M-"+(Qc+sl)+"-"+xe+"h-"+(Br.width-sl)+"V"+xe+"h"+(Br.width-sl)+"Z";var ar=Br.width-Vr+sl;T0.positionText(mt,ar,ke),tt==="end"&&mt.selectAll("tspan").each(function(){var ii=Fb.select(this),pi=bm.tester.append("text").text(ii.text()).call(bm.font,ti),$r=H3(r,pi.node());Math.round($r.width)<Math.round(Br.width)&&ii.attr("x",ar-$r.width),pi.remove()})}else T0.positionText(mt,xt*(sl+Qc),ke),ir=null;var vr=n._topclips.selectAll("#"+vt).data(ir?[0]:[]);vr.enter().append("clipPath").attr("id",vt).append("path"),vr.exit().remove(),vr.select("path").attr("d",ir),bm.setClipUrl(mt,ir?vt:null,r)}_t.attr("transform",NB(Vr,dt))}),Mg.isUnifiedHover(i)){s.selectAll("g.hovertext").remove();let _t=e.filter(It=>It.hoverinfo!=="none");if(_t.length===0)return[];var te=n.hoverlabel,oe=te.font,_e=_t[0],Ee=((i==="x unified"?_e.xa:_e.ya).unifiedhovertitle||{}).text,Ce=Ee?zf.hovertemplateString({data:i==="x unified"?[{xa:_e.xa,x:_e.xVal}]:[{ya:_e.ya,y:_e.yVal}],fallback:_e.trace.hovertemplatefallback,locale:n._d3locale,template:Ee}):C,me={showlegend:!0,legend:{title:{text:Ce,font:oe},font:oe,bgcolor:te.bgcolor,bordercolor:te.bordercolor,borderwidth:1,tracegroupgap:7,traceorder:n.legend?n.legend.traceorder:void 0,orientation:"v"}},ie={font:oe};lut(me,ie,r._fullData);var Se=ie.legend;Se.entries=[];for(var Le=0;Le<_t.length;Le++){var Ae=_t[Le];if(Ae.hoverinfo!=="none"){var Fe=Ile(Ae,!0,i,n,C),Pe=Fe[0],ge=Fe[1];Ae.name=ge,ge!==""?Ae.text=ge+" : "+Pe:Ae.text=Pe;var Re=Ae.cd[Ae.index];Re&&(Re.mc&&(Ae.mc=Re.mc),Re.mcc&&(Ae.mc=Re.mcc),Re.mlc&&(Ae.mlc=Re.mlc),Re.mlcc&&(Ae.mlc=Re.mlcc),Re.mlw&&(Ae.mlw=Re.mlw),Re.mrc&&(Ae.mrc=Re.mrc),Re.dir&&(Ae.dir=Re.dir)),Ae._distinct=!0,Se.entries.push([Ae])}}Se.entries.sort(function(It,mt){return It[0].trace.index-mt[0].trace.index}),Se.layer=s,Se._inHover=!0,Se._groupTitleFont=te.grouptitlefont,uut(r,Se);var ce=s.select("g.legend"),Ze=H3(r,ce.node()),ut=Ze.width+2*sl,pt=Ze.height+2*sl,Zt=_t[0],st=(Zt.x0+Zt.x1)/2,lt=(Zt.y0+Zt.y1)/2,Gt=!(j3.traceIs(Zt.trace,"bar-like")||j3.traceIs(Zt.trace,"box-violin")),Nt,Jt;L==="y"?Gt?(Jt=lt-sl,Nt=lt+sl):(Jt=Math.min.apply(null,_t.map(function(It){return Math.min(It.y0,It.y1)})),Nt=Math.max.apply(null,_t.map(function(It){return Math.max(It.y0,It.y1)}))):Jt=Nt=zf.mean(_t.map(function(It){return(It.y0+It.y1)/2}))-pt/2;var sr,wr;L==="x"?Gt?(sr=st+sl,wr=st-sl):(sr=Math.max.apply(null,_t.map(function(It){return Math.max(It.x0,It.x1)})),wr=Math.min.apply(null,_t.map(function(It){return Math.min(It.x0,It.x1)}))):sr=wr=zf.mean(_t.map(function(It){return(It.x0+It.x1)/2}))-ut/2;var cr=E._offset,$e=S._offset;Nt+=$e,sr+=cr,wr+=cr-ut,Jt+=$e-pt;var St,Qt;return sr+ut<T&&sr>=0?St=sr:wr+ut<T&&wr>=0?St=wr:cr+ut<T?St=cr:sr-st<st-wr+ut?St=T-ut:St=0,St+=sl,Nt+pt<z&&Nt>=0?Qt=Nt:Jt+pt<z&&Jt>=0?Qt=Jt:$e+pt<z?Qt=$e:Nt-lt<lt-Jt+pt?Qt=z-pt:Qt=0,Qt+=sl,ce.attr("transform",NB(St-1,Qt-1)),ce}var Vt=s.selectAll("g.hovertext").data(e,function(_t){return qle(_t)});return Vt.enter().append("g").classed("hovertext",!0).each(function(){var _t=Fb.select(this);_t.append("rect").call(vd.fill,vd.addOpacity(o,.8)),_t.append("text").classed("name",!0),_t.append("path").style("stroke-width","1px"),_t.append("text").classed("nums",!0).call(bm.font,{weight:h,style:d,variant:v,textcase:_,lineposition:b,shadow:p,family:c,size:f})}),Vt.exit().remove(),Vt.each(function(_t){var It=Fb.select(this).attr("transform",""),mt=_t.color;Array.isArray(mt)&&(mt=mt[_t.eventData[0].pointNumber]);var er=_t.bgcolor||mt,lr=vd.combine(vd.opacity(er)?er:vd.defaultLine,o),Tr=vd.combine(vd.opacity(mt)?mt:vd.defaultLine,o),Lr=_t.borderColor||vd.contrast(lr),ti=Ile(_t,O,i,n,C,It),Br=ti[0],Vr=ti[1],dt=It.select("text.nums").call(bm.font,{family:_t.fontFamily||c,size:_t.fontSize||f,color:_t.fontColor||Lr,weight:_t.fontWeight||h,style:_t.fontStyle||d,variant:_t.fontVariant||v,textcase:_t.fontTextcase||_,lineposition:_t.fontLineposition||b,shadow:_t.fontShadow||p}).text(Br).attr("data-notex",1).call(T0.positionText,0,0).call(T0.convertToTspans,r),Ge=It.select("text.name"),Je=0,je=0;if(Vr&&Vr!==Br){Ge.call(bm.font,{family:_t.fontFamily||c,size:_t.fontSize||f,color:Tr,weight:_t.fontWeight||h,style:_t.fontStyle||d,variant:_t.fontVariant||v,textcase:_t.fontTextcase||_,lineposition:_t.fontLineposition||b,shadow:_t.fontShadow||p}).text(Vr).attr("data-notex",1).call(T0.positionText,0,0).call(T0.convertToTspans,r);var tt=H3(r,Ge.node());Je=tt.width+2*sl,je=tt.height+2*sl}else Ge.remove(),It.select("rect").remove();It.select("path").style({fill:lr,stroke:Lr});var xt=_t.xa._offset+(_t.x0+_t.x1)/2,Ie=_t.ya._offset+(_t.y0+_t.y1)/2,xe=Math.abs(_t.x1-_t.x0),ke=Math.abs(_t.y1-_t.y0),vt=H3(r,dt.node()),ir=vt.width/n._invScaleX,ar=vt.height/n._invScaleY;_t.ty0=(P-vt.top)/n._invScaleY,_t.bx=ir+2*sl,_t.by=Math.max(ar+2*sl,je),_t.anchor="start",_t.txwidth=ir,_t.tx2width=Je,_t.offset=0;var vr=(ir+Qc+sl+Je)*n._invScaleX,ii,pi;if(a)_t.pos=xt,ii=Ie+ke/2+vr<=z,pi=Ie-ke/2-vr>=0,(_t.idealAlign==="top"||!ii)&&pi?(Ie-=ke/2,_t.anchor="end"):ii?(Ie+=ke/2,_t.anchor="start"):_t.anchor="middle",_t.crossPos=Ie;else{if(_t.pos=Ie,ii=xt+xe/2+vr<=T,pi=xt-xe/2-vr>=0,(_t.idealAlign==="left"||!ii)&&pi)xt-=xe/2,_t.anchor="end";else if(ii)xt+=xe/2,_t.anchor="start";else{_t.anchor="middle";var $r=vr/2,di=xt+$r-T,ji=xt-$r;di>0&&(xt-=di),ji<0&&(xt+=-ji)}_t.crossPos=xt}dt.attr("text-anchor",_t.anchor),Je&&Ge.attr("text-anchor",_t.anchor),It.attr("transform",NB(xt,Ie)+(a?nut(Ole):""))}),{hoverLabels:Vt,commonLabelBoundingBox:H}}function Ile(e,t,r,n,i,a){var f,h;var o="",s="";e.nameOverride!==void 0&&(e.name=e.nameOverride),e.name&&(e.trace._meta&&(e.name=zf.templateString(e.name,e.trace._meta)),o=Fle(e.name,e.nameLength));var l=r.charAt(0),u=l==="x"?"y":"x";e.zLabel!==void 0?(e.xLabel!==void 0&&(s+="x: "+e.xLabel+"<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),(h=(f=e.trace)==null?void 0:f.hoverlabel)!=null&&h.split&&(e.hovertemplate="");let{hovertemplate:c=!1}=e;if(c){let d=e.hovertemplateLabels||e;e[l+"Label"]!==i&&(d[l+"other"]=d[l+"Val"],d[l+"otherLabel"]=d[l+"Label"]),s=zf.hovertemplateString({data:[e.eventData[0]||{},e.trace._meta],fallback:e.trace.hovertemplatefallback,labels:d,locale:n._d3locale,template:c}),s=s.replace(put,(v,_)=>(o=Fle(_,e.nameLength),""))}return[s,o]}function gut(e,t,r,n){var i=t?"xa":"ya",a=t?"ya":"xa",o=0,s=1,l=e.size(),u=new Array(l),c=0,f=n.minX,h=n.maxX,d=n.minY,v=n.maxY,_=function(Z){return Z*r._invScaleX},b=function(Z){return Z*r._invScaleY};e.each(function(Z){var j=Z[i],N=Z[a],H=j._id.charAt(0)==="x",te=j.range;c===0&&te&&te[0]>te[1]!==H&&(s=-1);var oe=0,_e=H?r.width:r.height;if(r.hovermode==="x"||r.hovermode==="y"){var Ee=Nle(Z,t),Ce=Z.anchor,me=Ce==="end"?-1:1,ie,Se;if(Ce==="middle")ie=Z.crossPos+(H?b(Ee.y-Z.by/2):_(Z.bx/2+Z.tx2width/2)),Se=ie+(H?b(Z.by):_(Z.bx));else if(H)ie=Z.crossPos+b(Qc+Ee.y)-b(Z.by/2-Qc),Se=ie+b(Z.by);else{var Le=_(me*Qc+Ee.x),Ae=Le+_(me*Z.bx);ie=Z.crossPos+Math.min(Le,Ae),Se=Z.crossPos+Math.max(Le,Ae)}H?d!==void 0&&v!==void 0&&Math.min(Se,v)-Math.max(ie,d)>1&&(N.side==="left"?(oe=N._mainLinePosition,_e=r.width):_e=N._mainLinePosition):f!==void 0&&h!==void 0&&Math.min(Se,h)-Math.max(ie,f)>1&&(N.side==="top"?(oe=N._mainLinePosition,_e=r.height):_e=N._mainLinePosition)}u[c++]=[{datum:Z,traceIndex:Z.trace.index,dp:0,pos:Z.pos,posref:Z.posref,size:Z.by*(H?cut:1)/2,pmin:oe,pmax:_e}]}),u.sort(function(Z,j){return Z[0].posref-j[0].posref||s*(j[0].traceIndex-Z[0].traceIndex)});var p,k,E,S,L,x,C;function M(Z){var j=Z[0],N=Z[Z.length-1];if(k=j.pmin-j.pos-j.dp+j.size,E=N.pos+N.dp+N.size-j.pmax,k>.01){for(L=Z.length-1;L>=0;L--)Z[L].dp+=k;p=!1}if(!(E<.01)){if(k<-.01){for(L=Z.length-1;L>=0;L--)Z[L].dp-=E;p=!1}if(p){var H=0;for(S=0;S<Z.length;S++)x=Z[S],x.pos+x.dp+x.size>j.pmax&&H++;for(S=Z.length-1;S>=0&&!(H<=0);S--)x=Z[S],x.pos>j.pmax-1&&(x.del=!0,H--);for(S=0;S<Z.length&&!(H<=0);S++)if(x=Z[S],x.pos<j.pmin+1)for(x.del=!0,H--,E=x.size*2,L=Z.length-1;L>=0;L--)Z[L].dp-=E;for(S=Z.length-1;S>=0&&!(H<=0);S--)x=Z[S],x.pos+x.dp+x.size>j.pmax&&(x.del=!0,H--)}}}for(;!p&&o<=l;){for(o++,p=!0,S=0;S<u.length-1;){var g=u[S],P=u[S+1],T=g[g.length-1],z=P[0];if(k=T.pos+T.dp+T.size-z.pos-z.dp+z.size,k>.01){for(L=P.length-1;L>=0;L--)P[L].dp+=k;for(g.push.apply(g,P),u.splice(S+1,1),C=0,L=g.length-1;L>=0;L--)C+=g[L].dp;for(E=C/g.length,L=g.length-1;L>=0;L--)g[L].dp-=E;p=!1}else S++}u.forEach(M)}for(S=u.length-1;S>=0;S--){var O=u[S];for(L=O.length-1;L>=0;L--){var V=O[L],G=V.datum;G.offset=V.dp,G.del=V.del}}}function Nle(e,t){var r=0,n=e.offset;return t&&(n*=-hut,r=e.offset*fut),{x:r,y:n}}function mut(e){var t={start:1,end:-1,middle:0}[e.anchor],r=t*(Qc+sl),n=r+t*(e.txwidth+sl),i=e.anchor==="middle";return i&&(r-=e.tx2width/2,n+=e.txwidth/2+sl),{alignShift:t,textShiftX:r,text2ShiftX:n}}function Ule(e,t,r,n){var i=function(o){return o*r},a=function(o){return o*n};e.each(function(o){var s=Fb.select(this);if(o.del)return s.remove();var l=s.select("text.nums"),u=o.anchor,c=u==="end"?-1:1,f=mut(o),h=Nle(o,t),d=h.x,v=h.y,_=u==="middle",b="hoverlabel"in o.trace?o.trace.hoverlabel.showarrow:!0,p;_?p="M-"+i(o.bx/2+o.tx2width/2)+","+a(v-o.by/2)+"h"+i(o.bx)+"v"+a(o.by)+"h-"+i(o.bx)+"Z":b?p="M0,0L"+i(c*Qc+d)+","+a(Qc+v)+"v"+a(o.by/2-Qc)+"h"+i(c*o.bx)+"v-"+a(o.by)+"H"+i(c*Qc+d)+"V"+a(v-Qc)+"Z":p="M"+i(c*Qc+d)+","+a(v-o.by/2)+"h"+i(c*o.bx)+"v"+a(o.by)+"h"+i(-c*o.bx)+"Z",s.select("path").attr("d",p);var k=d+f.textShiftX,E=v+o.ty0-o.by/2+sl,S=o.textAlign||"auto";S!=="auto"&&(S==="left"&&u!=="start"?(l.attr("text-anchor","start"),k=_?-o.bx/2-o.tx2width/2+sl:-o.bx-sl):S==="right"&&u!=="end"&&(l.attr("text-anchor","end"),k=_?o.bx/2-o.tx2width/2-sl:o.bx+sl)),l.call(T0.positionText,i(k),a(E)),o.tx2width&&(s.select("text.name").call(T0.positionText,i(f.text2ShiftX+f.alignShift*sl+d),a(v+o.ty0-o.by/2+sl)),s.select("rect").call(bm.setRect,i(f.text2ShiftX+(f.alignShift-1)*o.tx2width/2+d),a(v-o.by/2-1),i(o.tx2width),a(o.by+2)))})}function yut(e,t){var r=e.index,n=e.trace||{},i=e.cd[0],a=e.cd[r]||{};function o(h){return h||My(h)&&h===0}var s=Array.isArray(r)?function(h,d){var v=zf.castOption(i,r,h);return o(v)?v:zf.extractOption({},n,"",d)}:function(h,d){return zf.extractOption(a,n,h,d)};function l(h,d,v){var _=s(d,v);o(_)&&(e[h]=_)}if(l("hoverinfo","hi","hoverinfo"),l("bgcolor","hbg","hoverlabel.bgcolor"),l("borderColor","hbc","hoverlabel.bordercolor"),l("fontFamily","htf","hoverlabel.font.family"),l("fontSize","hts","hoverlabel.font.size"),l("fontColor","htc","hoverlabel.font.color"),l("fontWeight","htw","hoverlabel.font.weight"),l("fontStyle","hty","hoverlabel.font.style"),l("fontVariant","htv","hoverlabel.font.variant"),l("nameLength","hnl","hoverlabel.namelength"),l("textAlign","hta","hoverlabel.align"),e.posref=t==="y"||t==="closest"&&n.orientation==="h"?e.xa._offset+(e.x0+e.x1)/2:e.ya._offset+(e.y0+e.y1)/2,e.x0=zf.constrain(e.x0,0,e.xa._length),e.x1=zf.constrain(e.x1,0,e.xa._length),e.y0=zf.constrain(e.y0,0,e.ya._length),e.y1=zf.constrain(e.y1,0,e.ya._length),e.xLabelVal!==void 0&&(e.xLabel="xLabel"in e?e.xLabel:wm.hoverLabelText(e.xa,e.xLabelVal,n.xhoverformat),e.xVal=e.xa.c2d(e.xLabelVal)),e.yLabelVal!==void 0&&(e.yLabel="yLabel"in e?e.yLabel:wm.hoverLabelText(e.ya,e.yLabelVal,n.yhoverformat),e.yVal=e.ya.c2d(e.yLabelVal)),e.zLabelVal!==void 0&&e.zLabel===void 0&&(e.zLabel=String(e.zLabelVal)),!isNaN(e.xerr)&&!(e.xa.type==="log"&&e.xerr<=0)){var u=wm.tickText(e.xa,e.xa.c2l(e.xerr),"hover").text;e.xerrneg!==void 0?e.xLabel+=" +"+u+" / -"+wm.tickText(e.xa,e.xa.c2l(e.xerrneg),"hover").text:e.xLabel+=" \xB1 "+u,t==="x"&&(e.distance+=1)}if(!isNaN(e.yerr)&&!(e.ya.type==="log"&&e.yerr<=0)){var c=wm.tickText(e.ya,e.ya.c2l(e.yerr),"hover").text;e.yerrneg!==void 0?e.yLabel+=" +"+c+" / -"+wm.tickText(e.ya,e.ya.c2l(e.yerrneg),"hover").text:e.yLabel+=" \xB1 "+c,t==="y"&&(e.distance+=1)}var f=e.hoverinfo||e.trace.hoverinfo;return f&&f!=="all"&&(f=Array.isArray(f)?f:f.split("+"),f.indexOf("x")===-1&&(e.xLabel=void 0),f.indexOf("y")===-1&&(e.yLabel=void 0),f.indexOf("z")===-1&&(e.zLabel=void 0),f.indexOf("text")===-1&&(e.text=void 0),f.indexOf("name")===-1&&(e.name=void 0)),e}function Rle(e,t,r){var n=r.container,i=r.fullLayout,a=i._size,o=r.event,s=!!t.hLinePoint,l=!!t.vLinePoint,u,c;if(n.selectAll(".spikeline").remove(),!!(l||s)){var f=vd.combine(i.plot_bgcolor,i.paper_bgcolor);if(s){var h=t.hLinePoint,d,v;u=h&&h.xa,c=h&&h.ya;var _=c.spikesnap;_==="cursor"?(d=o.pointerX,v=o.pointerY):(d=u._offset+h.x,v=c._offset+h.y);var b=Cle.readability(h.color,f)<1.5?vd.contrast(f):h.color,p=c.spikemode,k=c.spikethickness,E=c.spikecolor||b,S=wm.getPxPosition(e,c),L,x;if(p.indexOf("toaxis")!==-1||p.indexOf("across")!==-1){if(p.indexOf("toaxis")!==-1&&(L=S,x=d),p.indexOf("across")!==-1){var C=c._counterDomainMin,M=c._counterDomainMax;c.anchor==="free"&&(C=Math.min(C,c.position),M=Math.max(M,c.position)),L=a.l+C*a.w,x=a.l+M*a.w}n.insert("line",":first-child").attr({x1:L,x2:x,y1:v,y2:v,"stroke-width":k,stroke:E,"stroke-dasharray":bm.dashStyle(c.spikedash,k)}).classed("spikeline",!0).classed("crisp",!0),n.insert("line",":first-child").attr({x1:L,x2:x,y1:v,y2:v,"stroke-width":k+2,stroke:f}).classed("spikeline",!0).classed("crisp",!0)}p.indexOf("marker")!==-1&&n.insert("circle",":first-child").attr({cx:S+(c.side!=="right"?k:-k),cy:v,r:k,fill:E}).classed("spikeline",!0)}if(l){var g=t.vLinePoint,P,T;u=g&&g.xa,c=g&&g.ya;var z=u.spikesnap;z==="cursor"?(P=o.pointerX,T=o.pointerY):(P=u._offset+g.x,T=c._offset+g.y);var O=Cle.readability(g.color,f)<1.5?vd.contrast(f):g.color,V=u.spikemode,G=u.spikethickness,Z=u.spikecolor||O,j=wm.getPxPosition(e,u),N,H;if(V.indexOf("toaxis")!==-1||V.indexOf("across")!==-1){if(V.indexOf("toaxis")!==-1&&(N=j,H=T),V.indexOf("across")!==-1){var te=u._counterDomainMin,oe=u._counterDomainMax;u.anchor==="free"&&(te=Math.min(te,u.position),oe=Math.max(oe,u.position)),N=a.t+(1-oe)*a.h,H=a.t+(1-te)*a.h}n.insert("line",":first-child").attr({x1:P,x2:P,y1:N,y2:H,"stroke-width":G,stroke:Z,"stroke-dasharray":bm.dashStyle(u.spikedash,G)}).classed("spikeline",!0).classed("crisp",!0),n.insert("line",":first-child").attr({x1:P,x2:P,y1:N,y2:H,"stroke-width":G+2,stroke:f}).classed("spikeline",!0).classed("crisp",!0)}V.indexOf("marker")!==-1&&n.insert("circle",":first-child").attr({cx:P,cy:j-(u.side!=="top"?G:-G),r:G,fill:Z}).classed("spikeline",!0)}}}function _ut(e,t,r){if(!r||r.length!==e._hoverdata.length)return!0;for(var n=r.length-1;n>=0;n--){var i=r[n],a=e._hoverdata[n];if(i.curveNumber!==a.curveNumber||String(i.pointNumber)!==String(a.pointNumber)||String(i.pointNumbers)!==String(a.pointNumbers)||i.binNumber!==a.binNumber)return!0}return!1}function Dle(e,t){return!t||t.vLinePoint!==e._spikepoints.vLinePoint||t.hLinePoint!==e._spikepoints.hLinePoint}function Fle(e,t){return T0.plainText(e||"",{len:t,allowedTags:["br","sub","sup","b","i","em","s","u"]})}function xut(e,t){for(var r=t.charAt(0),n=[],i=[],a=[],o=0;o<e.length;o++){var s=e[o];j3.traceIs(s.trace,"bar-like")||j3.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 zle(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}var Vle=e=>e.offsetTop+e.clientTop,Gle=e=>e.offsetLeft+e.clientLeft;function H3(e,t){var r=e._fullLayout,n=t.getBoundingClientRect(),i=n.left,a=n.top,o=i+n.width,s=a+n.height,l=zf.apply3DTransform(r._invTransform)(i,a),u=zf.apply3DTransform(r._invTransform)(o,s),c=l[0],f=l[1],h=u[0],d=u[1];return{x:c,y:f,width:h-c,height:d-f,top:Math.min(f,d),left:Math.min(c,h),right:Math.max(c,h),bottom:Math.max(f,d)}}});var hM=ye((gar,Hle)=>{"use strict";var but=Dr(),wut=ka(),Tut=ip().isUnifiedHover;Hle.exports=function(t,r,n,i){i=i||{};var a=r.legend;function o(s){i.font[s]||(i.font[s]=a?r.legend.font[s]:r.font[s])}r&&Tut(r.hovermode)&&(i.font||(i.font={}),o("size"),o("family"),o("color"),o("weight"),o("style"),o("variant"),a?(i.bgcolor||(i.bgcolor=wut.combine(r.legend.bgcolor,r.paper_bgcolor)),i.bordercolor||(i.bordercolor=r.legend.bordercolor)):i.bgcolor||(i.bgcolor=r.paper_bgcolor)),n("hoverlabel.bgcolor",i.bgcolor),n("hoverlabel.bordercolor",i.bordercolor),n("hoverlabel.namelength",i.namelength),n("hoverlabel.showarrow",i.showarrow),but.coerceFont(n,"hoverlabel.font",i.font),n("hoverlabel.align",i.align)}});var Wle=ye((mar,jle)=>{"use strict";var Aut=Dr(),Sut=hM(),Mut=B1();jle.exports=function(t,r){function n(i,a){return Aut.coerce(t,r,Mut,i,a)}Sut(t,r,n)}});var Yle=ye((yar,Zle)=>{"use strict";var Xle=Dr(),Eut=a3(),kut=hM();Zle.exports=function(t,r,n,i){function a(s,l){return Xle.coerce(t,r,Eut,s,l)}var o=Xle.extendFlat({},i.hoverlabel);r.hovertemplate&&(o.namelength=-1),kut(t,r,a,o)}});var HB=ye((_ar,Kle)=>{"use strict";var Cut=Dr(),Lut=B1();Kle.exports=function(t,r){function n(i,a){return r[i]!==void 0?r[i]:Cut.coerce(t,r,Lut,i,a)}return n("clickmode"),n("hoversubplots"),n("hovermode")}});var Qle=ye((xar,$le)=>{"use strict";var Jle=Dr(),Put=B1(),Iut=HB(),Rut=hM();$le.exports=function(t,r){function n(c,f){return Jle.coerce(t,r,Put,c,f)}var i=Iut(t,r);i&&(n("hoverdistance"),n("spikedistance"));var a=n("dragmode");a==="select"&&n("selectdirection");var o=r._has("mapbox"),s=r._has("map"),l=r._has("geo"),u=r._basePlotModules.length;r.dragmode==="zoom"&&((o||s||l)&&u===1||(o||s)&&l&&u===2)&&(r.dragmode="pan"),Rut(t,r,n),Jle.coerceFont(n,"hoverlabel.grouptitlefont",r.hoverlabel.font)}});var rue=ye((bar,tue)=>{"use strict";var jB=Dr(),eue=qa();tue.exports=function(t){var r=t.calcdata,n=t._fullLayout;function i(u){return function(c){return jB.coerceHoverinfo({hoverinfo:c},{_module:u._module},n)}}for(var a=0;a<r.length;a++){var o=r[a],s=o[0].trace;if(!eue.traceIs(s,"pie-like")){var l=eue.traceIs(s,"2dMap")?Dut:jB.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 Dut(e,t,r,n){n=n||jB.identity,Array.isArray(e)&&(t[0][r]=n(e))}});var nue=ye((war,iue)=>{"use strict";var Fut=qa(),zut=GB().hover;iue.exports=function(t,r,n){var i=Fut.getComponentMethod("annotations","onClick")(t,t._hoverdata);n!==void 0&&zut(t,r,n,!0);function a(){t.emit("plotly_click",{points:t._hoverdata,event:r})}t._hoverdata&&r&&r.target&&(i&&i.then?i.then(a):a(),r.stopImmediatePropagation&&r.stopImmediatePropagation())}});var vf=ye((Tar,sue)=>{"use strict";var Out=Oa(),WL=Dr(),qut=yv(),dM=ip(),aue=B1(),oue=GB();sue.exports={moduleType:"component",name:"fx",constants:zS(),schema:{layout:aue},attributes:a3(),layoutAttributes:aue,supplyLayoutGlobalDefaults:Wle(),supplyDefaults:Yle(),supplyLayoutDefaults:Qle(),calc:rue(),getDistanceFunction:dM.getDistanceFunction,getClosest:dM.getClosest,inbox:dM.inbox,quadrature:dM.quadrature,appendArrayPointValue:dM.appendArrayPointValue,castHoverOption:Nut,castHoverinfo:Uut,hover:oue.hover,unhover:qut.unhover,loneHover:oue.loneHover,loneUnhover:But,click:nue()};function But(e){var t=WL.isD3Selection(e)?e:Out.select(e);t.selectAll("g.hovertext").remove(),t.selectAll(".spikeline").remove()}function Nut(e,t,r){return WL.castOption(e,t,"hoverlabel."+r)}function Uut(e,t,r){function n(i){return WL.coerceHoverinfo({hoverinfo:i},{_module:e._module},t)}return WL.castOption(e,r,"hoverinfo",n)}});var Eg=ye(Ey=>{"use strict";Ey.selectMode=function(e){return e==="lasso"||e==="select"};Ey.drawMode=function(e){return e==="drawclosedpath"||e==="drawopenpath"||e==="drawline"||e==="drawrect"||e==="drawcircle"};Ey.openMode=function(e){return e==="drawline"||e==="drawopenpath"};Ey.rectMode=function(e){return e==="select"||e==="drawline"||e==="drawrect"||e==="drawcircle"};Ey.freeMode=function(e){return e==="lasso"||e==="drawclosedpath"||e==="drawopenpath"};Ey.selectingOrDrawing=function(e){return Ey.freeMode(e)||Ey.rectMode(e)}});var vM=ye((Sar,lue)=>{"use strict";lue.exports=function(t){var r=t._fullLayout;r._glcanvas&&r._glcanvas.size()&&r._glcanvas.each(function(n){n.regl&&n.regl.clear({color:!0,depth:!0})})}});var XL=ye((Mar,uue)=>{"use strict";uue.exports={undo:{width:857.1,height:1e3,path:"m857 350q0-87-34-166t-91-137-137-92-166-34q-96 0-183 41t-147 114q-4 6-4 13t5 11l76 77q6 5 14 5 9-1 13-7 41-53 100-82t126-29q58 0 110 23t92 61 61 91 22 111-22 111-61 91-92 61-110 23q-55 0-105-20t-90-57l77-77q17-16 8-38-10-23-33-23h-250q-15 0-25 11t-11 25v250q0 24 22 33 22 10 39-8l72-72q60 57 137 88t159 31q87 0 166-34t137-92 91-137 34-166z",transform:"matrix(1 0 0 -1 0 850)"},home:{width:928.6,height:1e3,path:"m786 296v-267q0-15-11-26t-25-10h-214v214h-143v-214h-214q-15 0-25 10t-11 26v267q0 1 0 2t0 2l321 264 321-264q1-1 1-4z m124 39l-34-41q-5-5-12-6h-2q-7 0-12 3l-386 322-386-322q-7-4-13-4-7 2-12 7l-35 41q-4 5-3 13t6 12l401 334q18 15 42 15t43-15l136-114v109q0 8 5 13t13 5h107q8 0 13-5t5-13v-227l122-102q5-5 6-12t-4-13z",transform:"matrix(1 0 0 -1 0 850)"},"camera-retro":{width:1e3,height:1e3,path:"m518 386q0 8-5 13t-13 5q-37 0-63-27t-26-63q0-8 5-13t13-5 12 5 5 13q0 23 16 38t38 16q8 0 13 5t5 13z m125-73q0-59-42-101t-101-42-101 42-42 101 42 101 101 42 101-42 42-101z m-572-320h858v71h-858v-71z m643 320q0 89-62 152t-152 62-151-62-63-152 63-151 151-63 152 63 62 151z m-571 358h214v72h-214v-72z m-72-107h858v143h-462l-36-71h-360v-72z m929 143v-714q0-30-21-51t-50-21h-858q-29 0-50 21t-21 51v714q0 30 21 51t50 21h858q29 0 50-21t21-51z",transform:"matrix(1 0 0 -1 0 850)"},zoombox:{width:1e3,height:1e3,path:"m1000-25l-250 251c40 63 63 138 63 218 0 224-182 406-407 406-224 0-406-182-406-406s183-406 407-406c80 0 155 22 218 62l250-250 125 125z m-812 250l0 438 437 0 0-438-437 0z m62 375l313 0 0-312-313 0 0 312z",transform:"matrix(1 0 0 -1 0 850)"},pan:{width:1e3,height:1e3,path:"m1000 350l-187 188 0-125-250 0 0 250 125 0-188 187-187-187 125 0 0-250-250 0 0 125-188-188 186-187 0 125 252 0 0-250-125 0 187-188 188 188-125 0 0 250 250 0 0-126 187 188z",transform:"matrix(1 0 0 -1 0 850)"},zoom_plus:{width:875,height:1e3,path:"m1 787l0-875 875 0 0 875-875 0z m687-500l-187 0 0-187-125 0 0 187-188 0 0 125 188 0 0 187 125 0 0-187 187 0 0-125z",transform:"matrix(1 0 0 -1 0 850)"},zoom_minus:{width:875,height:1e3,path:"m0 788l0-876 875 0 0 876-875 0z m688-500l-500 0 0 125 500 0 0-125z",transform:"matrix(1 0 0 -1 0 850)"},autoscale:{width:1e3,height:1e3,path:"m250 850l-187 0-63 0 0-62 0-188 63 0 0 188 187 0 0 62z m688 0l-188 0 0-62 188 0 0-188 62 0 0 188 0 62-62 0z m-875-938l0 188-63 0 0-188 0-62 63 0 187 0 0 62-187 0z m875 188l0-188-188 0 0-62 188 0 62 0 0 62 0 188-62 0z m-125 188l-1 0-93-94-156 156 156 156 92-93 2 0 0 250-250 0 0-2 93-92-156-156-156 156 94 92 0 2-250 0 0-250 0 0 93 93 157-156-157-156-93 94 0 0 0-250 250 0 0 0-94 93 156 157 156-157-93-93 0 0 250 0 0 250z",transform:"matrix(1 0 0 -1 0 850)"},tooltip_basic:{width:1500,height:1e3,path:"m375 725l0 0-375-375 375-374 0-1 1125 0 0 750-1125 0z",transform:"matrix(1 0 0 -1 0 850)"},tooltip_compare:{width:1125,height:1e3,path:"m187 786l0 2-187-188 188-187 0 0 937 0 0 373-938 0z m0-499l0 1-187-188 188-188 0 0 937 0 0 376-938-1z",transform:"matrix(1 0 0 -1 0 850)"},plotlylogo:{width:1542,height:1e3,path:"m0-10h182v-140h-182v140z m228 146h183v-286h-183v286z m225 714h182v-1000h-182v1000z m225-285h182v-715h-182v715z m225 142h183v-857h-183v857z m231-428h182v-429h-182v429z m225-291h183v-138h-183v138z",transform:"matrix(1 0 0 -1 0 850)"},"z-axis":{width:1e3,height:1e3,path:"m833 5l-17 108v41l-130-65 130-66c0 0 0 38 0 39 0-1 36-14 39-25 4-15-6-22-16-30-15-12-39-16-56-20-90-22-187-23-279-23-261 0-341 34-353 59 3 60 228 110 228 110-140-8-351-35-351-116 0-120 293-142 474-142 155 0 477 22 477 142 0 50-74 79-163 96z m-374 94c-58-5-99-21-99-40 0-24 65-43 144-43 79 0 143 19 143 43 0 19-42 34-98 40v216h87l-132 135-133-135h88v-216z m167 515h-136v1c16 16 31 34 46 52l84 109v54h-230v-71h124v-1c-16-17-28-32-44-51l-89-114v-51h245v72z",transform:"matrix(1 0 0 -1 0 850)"},"3d_rotate":{width:1e3,height:1e3,path:"m922 660c-5 4-9 7-14 11-359 263-580-31-580-31l-102 28 58-400c0 1 1 1 2 2 118 108 351 249 351 249s-62 27-100 42c88 83 222 183 347 122 16-8 30-17 44-27-2 1-4 2-6 4z m36-329c0 0 64 229-88 296-62 27-124 14-175-11 157-78 225-208 249-266 8-19 11-31 11-31 2 5 6 15 11 32-5-13-8-20-8-20z m-775-239c70-31 117-50 198-32-121 80-199 346-199 346l-96-15-58-12c0 0 55-226 155-287z m603 133l-317-139c0 0 4-4 19-14 7-5 24-15 24-15s-177-147-389 4c235-287 536-112 536-112l31-22 100 299-4-1z m-298-153c6-4 14-9 24-15 0 0-17 10-24 15z",transform:"matrix(1 0 0 -1 0 850)"},camera:{width:1e3,height:1e3,path:"m500 450c-83 0-150-67-150-150 0-83 67-150 150-150 83 0 150 67 150 150 0 83-67 150-150 150z m400 150h-120c-16 0-34 13-39 29l-31 93c-6 15-23 28-40 28h-340c-16 0-34-13-39-28l-31-94c-6-15-23-28-40-28h-120c-55 0-100-45-100-100v-450c0-55 45-100 100-100h800c55 0 100 45 100 100v450c0 55-45 100-100 100z m-400-550c-138 0-250 112-250 250 0 138 112 250 250 250 138 0 250-112 250-250 0-138-112-250-250-250z m365 380c-19 0-35 16-35 35 0 19 16 35 35 35 19 0 35-16 35-35 0-19-16-35-35-35z",transform:"matrix(1 0 0 -1 0 850)"},movie:{width:1e3,height:1e3,path:"m938 413l-188-125c0 37-17 71-44 94 64 38 107 107 107 187 0 121-98 219-219 219-121 0-219-98-219-219 0-61 25-117 66-156h-115c30 33 49 76 49 125 0 103-84 187-187 187s-188-84-188-187c0-57 26-107 65-141-38-22-65-62-65-109v-250c0-70 56-126 125-126h500c69 0 125 56 125 126l188-126c34 0 62 28 62 63v375c0 35-28 63-62 63z m-750 0c-69 0-125 56-125 125s56 125 125 125 125-56 125-125-56-125-125-125z m406-1c-87 0-157 70-157 157 0 86 70 156 157 156s156-70 156-156-70-157-156-157z",transform:"matrix(1 0 0 -1 0 850)"},question:{width:857.1,height:1e3,path:"m500 82v107q0 8-5 13t-13 5h-107q-8 0-13-5t-5-13v-107q0-8 5-13t13-5h107q8 0 13 5t5 13z m143 375q0 49-31 91t-77 65-95 23q-136 0-207-119-9-14 4-24l74-55q4-4 10-4 9 0 14 7 30 38 48 51 19 14 48 14 27 0 48-15t21-33q0-21-11-34t-38-25q-35-16-65-48t-29-70v-20q0-8 5-13t13-5h107q8 0 13 5t5 13q0 10 12 27t30 28q18 10 28 16t25 19 25 27 16 34 7 45z m214-107q0-117-57-215t-156-156-215-58-216 58-155 156-58 215 58 215 155 156 216 58 215-58 156-156 57-215z",transform:"matrix(1 0 0 -1 0 850)"},disk:{width:857.1,height:1e3,path:"m214-7h429v214h-429v-214z m500 0h72v500q0 8-6 21t-11 20l-157 156q-5 6-19 12t-22 5v-232q0-22-15-38t-38-16h-322q-22 0-37 16t-16 38v232h-72v-714h72v232q0 22 16 38t37 16h465q22 0 38-16t15-38v-232z m-214 518v178q0 8-5 13t-13 5h-107q-7 0-13-5t-5-13v-178q0-8 5-13t13-5h107q7 0 13 5t5 13z m357-18v-518q0-22-15-38t-38-16h-750q-23 0-38 16t-16 38v750q0 22 16 38t38 16h517q23 0 50-12t42-26l156-157q16-15 27-42t11-49z",transform:"matrix(1 0 0 -1 0 850)"},drawopenpath:{width:70,height:70,path:"M33.21,85.65a7.31,7.31,0,0,1-2.59-.48c-8.16-3.11-9.27-19.8-9.88-41.3-.1-3.58-.19-6.68-.35-9-.15-2.1-.67-3.48-1.43-3.79-2.13-.88-7.91,2.32-12,5.86L3,32.38c1.87-1.64,11.55-9.66,18.27-6.9,2.13.87,4.75,3.14,5.17,9,.17,2.43.26,5.59.36,9.25a224.17,224.17,0,0,0,1.5,23.4c1.54,10.76,4,12.22,4.48,12.4.84.32,2.79-.46,5.76-3.59L43,80.07C41.53,81.57,37.68,85.64,33.21,85.65ZM74.81,69a11.34,11.34,0,0,0,6.09-6.72L87.26,44.5,74.72,32,56.9,38.35c-2.37.86-5.57,3.42-6.61,6L38.65,72.14l8.42,8.43ZM55,46.27a7.91,7.91,0,0,1,3.64-3.17l14.8-5.3,8,8L76.11,60.6l-.06.19a6.37,6.37,0,0,1-3,3.43L48.25,74.59,44.62,71Zm16.57,7.82A6.9,6.9,0,1,0,64.64,61,6.91,6.91,0,0,0,71.54,54.09Zm-4.05,0a2.85,2.85,0,1,1-2.85-2.85A2.86,2.86,0,0,1,67.49,54.09Zm-4.13,5.22L60.5,56.45,44.26,72.7l2.86,2.86ZM97.83,35.67,84.14,22l-8.57,8.57L89.26,44.24Zm-13.69-8,8,8-2.85,2.85-8-8Z",transform:"matrix(1 0 0 1 -15 -15)"},drawclosedpath:{width:90,height:90,path:"M88.41,21.12a26.56,26.56,0,0,0-36.18,0l-2.07,2-2.07-2a26.57,26.57,0,0,0-36.18,0,23.74,23.74,0,0,0,0,34.8L48,90.12a3.22,3.22,0,0,0,4.42,0l36-34.21a23.73,23.73,0,0,0,0-34.79ZM84,51.24,50.16,83.35,16.35,51.25a17.28,17.28,0,0,1,0-25.47,20,20,0,0,1,27.3,0l4.29,4.07a3.23,3.23,0,0,0,4.44,0l4.29-4.07a20,20,0,0,1,27.3,0,17.27,17.27,0,0,1,0,25.46ZM66.76,47.68h-33v6.91h33ZM53.35,35H46.44V68h6.91Z",transform:"matrix(1 0 0 1 -5 -5)"},lasso:{width:1031,height:1e3,path:"m1018 538c-36 207-290 336-568 286-277-48-473-256-436-463 10-57 36-108 76-151-13-66 11-137 68-183 34-28 75-41 114-42l-55-70 0 0c-2-1-3-2-4-3-10-14-8-34 5-45 14-11 34-8 45 4 1 1 2 3 2 5l0 0 113 140c16 11 31 24 45 40 4 3 6 7 8 11 48-3 100 0 151 9 278 48 473 255 436 462z m-624-379c-80 14-149 48-197 96 42 42 109 47 156 9 33-26 47-66 41-105z m-187-74c-19 16-33 37-39 60 50-32 109-55 174-68-42-25-95-24-135 8z m360 75c-34-7-69-9-102-8 8 62-16 128-68 170-73 59-175 54-244-5-9 20-16 40-20 61-28 159 121 317 333 354s407-60 434-217c28-159-121-318-333-355z",transform:"matrix(1 0 0 -1 0 850)"},selectbox:{width:1e3,height:1e3,path:"m0 850l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m285 0l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m-857-286l0-143 143 0 0 143-143 0z m857 0l0-143 143 0 0 143-143 0z m-857-285l0-143 143 0 0 143-143 0z m857 0l0-143 143 0 0 143-143 0z m-857-286l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m285 0l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z",transform:"matrix(1 0 0 -1 0 850)"},drawline:{width:70,height:70,path:"M60.64,62.3a11.29,11.29,0,0,0,6.09-6.72l6.35-17.72L60.54,25.31l-17.82,6.4c-2.36.86-5.57,3.41-6.6,6L24.48,65.5l8.42,8.42ZM40.79,39.63a7.89,7.89,0,0,1,3.65-3.17l14.79-5.31,8,8L61.94,54l-.06.19a6.44,6.44,0,0,1-3,3.43L34.07,68l-3.62-3.63Zm16.57,7.81a6.9,6.9,0,1,0-6.89,6.9A6.9,6.9,0,0,0,57.36,47.44Zm-4,0a2.86,2.86,0,1,1-2.85-2.85A2.86,2.86,0,0,1,53.32,47.44Zm-4.13,5.22L46.33,49.8,30.08,66.05l2.86,2.86ZM83.65,29,70,15.34,61.4,23.9,75.09,37.59ZM70,21.06l8,8-2.84,2.85-8-8ZM87,80.49H10.67V87H87Z",transform:"matrix(1 0 0 1 -15 -15)"},drawrect:{width:80,height:80,path:"M78,22V79H21V22H78m9-9H12V88H87V13ZM68,46.22H31V54H68ZM53,32H45.22V69H53Z",transform:"matrix(1 0 0 1 -10 -10)"},drawcircle:{width:80,height:80,path:"M50,84.72C26.84,84.72,8,69.28,8,50.3S26.84,15.87,50,15.87,92,31.31,92,50.3,73.16,84.72,50,84.72Zm0-60.59c-18.6,0-33.74,11.74-33.74,26.17S31.4,76.46,50,76.46,83.74,64.72,83.74,50.3,68.6,24.13,50,24.13Zm17.15,22h-34v7.11h34Zm-13.8-13H46.24v34h7.11Z",transform:"matrix(1 0 0 1 -10 -10)"},eraseshape:{width:80,height:80,path:"M82.77,78H31.85L6,49.57,31.85,21.14H82.77a8.72,8.72,0,0,1,8.65,8.77V69.24A8.72,8.72,0,0,1,82.77,78ZM35.46,69.84H82.77a.57.57,0,0,0,.49-.6V29.91a.57.57,0,0,0-.49-.61H35.46L17,49.57Zm32.68-34.7-24,24,5,5,24-24Zm-19,.53-5,5,24,24,5-5Z",transform:"matrix(1 0 0 1 -10 -10)"},spikeline:{width:1e3,height:1e3,path:"M512 409c0-57-46-104-103-104-57 0-104 47-104 104 0 57 47 103 104 103 57 0 103-46 103-103z m-327-39l92 0 0 92-92 0z m-185 0l92 0 0 92-92 0z m370-186l92 0 0 93-92 0z m0-184l92 0 0 92-92 0z",transform:"matrix(1.5 0 0 -1.5 0 850)"},pencil:{width:1792,height:1792,path:"M491 1536l91-91-235-235-91 91v107h128v128h107zm523-928q0-22-22-22-10 0-17 7l-542 542q-7 7-7 17 0 22 22 22 10 0 17-7l542-542q7-7 7-17zm-54-192l416 416-832 832h-416v-416zm683 96q0 53-37 90l-166 166-416-416 166-165q36-38 90-38 53 0 91 38l235 234q37 39 37 91z",transform:"matrix(1 0 0 1 0 1)"},newplotlylogo:{name:"newplotlylogo",svg:["<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 YL=ye((Ear,cue)=>{"use strict";var ZL=32;cue.exports={CIRCLE_SIDES:ZL,i000:0,i090:ZL/4,i180:ZL/2,i270:ZL/4*3,cos45:Math.cos(Math.PI/4),sin45:Math.sin(Math.PI/4),SQRT2:Math.sqrt(2)}});var KL=ye((kar,hue)=>{"use strict";var Vut=Dr().strTranslate;function fue(e,t){switch(e.type){case"log":return e.p2d(t);case"date":return e.p2r(t,0,e.calendar);default:return e.p2r(t)}}function Gut(e,t){switch(e.type){case"log":return e.d2p(t);case"date":return e.r2p(t,0,e.calendar);default:return e.r2p(t)}}function Hut(e){var t=e._id.charAt(0)==="y"?1:0;return function(r){return fue(e,r[t])}}function jut(e){return Vut(e.xaxis._offset,e.yaxis._offset)}hue.exports={p2r:fue,r2p:Gut,axValue:Hut,getTransform:jut}});var u_=ye(ky=>{"use strict";var Wut=eM(),pue=YL(),W3=pue.CIRCLE_SIDES,WB=pue.SQRT2,gue=KL(),due=gue.p2r,vue=gue.r2p,Xut=[0,3,4,5,6,1,2],Zut=[0,3,4,1,2];ky.writePaths=function(e){var t=e.length;if(!t)return"M0,0Z";for(var r="",n=0;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=Zut[l]:o==="C"&&(u=Xut[l]),r+=e[n][a][u],l>0&&l<s-1&&(r+=",")}}return r};ky.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 _=[],b,p,k,E,S=i[v][0],L=S;switch(S){case"M":s(),u=+i[v][1],c=+i[v][2],_.push([L,u,c]),d();break;case"Q":case"S":b=+i[v][1],k=+i[v][2],u=+i[v][3],c=+i[v][4],_.push([L,u,c,b,k]);break;case"C":b=+i[v][1],k=+i[v][2],p=+i[v][3],E=+i[v][4],u=+i[v][5],c=+i[v][6],_.push([L,u,c,b,k,p,E]);break;case"T":case"L":u=+i[v][1],c=+i[v][2],_.push([L,u,c]);break;case"H":L="L",u=+i[v][1],_.push([L,u,c]);break;case"V":L="L",c=+i[v][1],_.push([L,u,c]);break;case"A":L="L";var x=+i[v][1],C=+i[v][2];+i[v][4]||(x=-x,C=-C);var M=u-x,g=c;for(l=1;l<=W3/2;l++){var P=2*Math.PI*l/W3;_.push([L,M+x*Math.cos(P),g+C*Math.sin(P)])}break;case"Z":(u!==f||c!==h)&&(u=f,c=h,_.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<_.length;Z++){for(l=0;l+2<7;l+=2){var j=_[Z][l+1],N=_[Z][l+2];j===void 0||N===void 0||(u=j,c=N,r&&(r.xaxis&&r.xaxis.p2r?(G&&(j-=r.xaxis._offset),O?j=vue(r.xaxis,r.xanchor)+j:j=due(r.xaxis,j)):(G&&(j-=z.l),T?j=T.x[0]+j/z.w:j=j/z.w),r.yaxis&&r.yaxis.p2r?(G&&(N-=r.yaxis._offset),V?N=vue(r.yaxis,r.yanchor)-N:N=due(r.yaxis,N)):(G&&(N-=z.t),T?N=T.y[1]-N/z.h:N=1-N/z.h)),_[Z][l+1]=j,_[Z][l+2]=N)}a[o].push(_[Z].slice())}}return a};function pM(e,t){return Math.abs(e-t)<=1e-6}function JL(e,t){var r=t[1]-e[1],n=t[2]-e[2];return Math.sqrt(r*r+n*n)}ky.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(!pM(n,i))return!1;var a=e[0][r]-e[3][r],o=e[1][r]-e[2][r];if(!pM(a,o))return!1}return!pM(e[0][1],e[1][1])&&!pM(e[0][1],e[3][1])?!1:!!(JL(e[0],e[1])*JL(e[0],e[3]))};ky.pointsOnEllipse=function(e){var t=e.length;if(t!==W3+1)return!1;t=W3;for(var r=0;r<t;r++){var n=(t*2-r)%t,i=(t/2+n)%t,a=(t/2+r)%t;if(!pM(JL(e[r],e[a]),JL(e[n],e[i])))return!1}return!0};ky.handleEllipse=function(e,t,r){if(!e)return[t,r];var n=ky.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/WB),s||(s=o=o/WB);for(var l=[],u=0;u<W3;u++){var c=u*2*Math.PI/W3;l.push([i+o*Math.cos(c),a+s*Math.sin(c)])}return l};ky.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=WB;return a*=u,o*=u,{x0:s-a,y0:l-o,x1:s+a,y1:l+o}};ky.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 eP=ye((Lar,Sue)=>{"use strict";var mue=hf(),wue=Eg(),Yut=wue.drawMode,Kut=wue.openMode,X3=YL(),yue=X3.i000,_ue=X3.i090,xue=X3.i180,bue=X3.i270,Jut=X3.cos45,$ut=X3.sin45,Tue=KL(),$L=Tue.p2r,c_=Tue.r2p,Qut=Q1(),ect=Qut.clearOutline,QL=u_(),tct=QL.readPaths,rct=QL.writePaths,ict=QL.ellipseOver,nct=QL.fixDatesForPaths;function act(e,t){if(e.length){var r=e[0][0];if(r){var n=t.gd,i=t.isActiveShape,a=t.dragmode,o=(n.layout||{}).shapes||[];if(!Yut(a)&&i!==void 0){var s=n._fullLayout._activeShapeIndex;if(s<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=Aue(e,t,a);ect(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 _=u;switch(v.type){case"line":case"rect":case"circle":var b=mue.getFromId(n,v.xref);v.xref.charAt(0)==="x"&&b.type.includes("category")?(f("x0",_.x0-(v.x0shift||0)),f("x1",_.x1-(v.x1shift||0))):(f("x0",_.x0),f("x1",_.x1));var p=mue.getFromId(n,v.yref);v.yref.charAt(0)==="y"&&p.type.includes("category")?(f("y0",_.y0-(v.y0shift||0)),f("y1",_.y1-(v.y1shift||0))):(f("y0",_.y0),f("y1",_.y1));break;case"path":f("path",_.path);break}}}return i===void 0?(h.push(u),h):c?c.getUpdateObj():{}}}}function Aue(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=Kut(r),v=tct(a,i,s,l),_={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||(_.fillcolor=o.fillcolor,_.fillrule=o.fillrule);var b;if(v.length===1&&(b=v[0]),b&&b.length===5&&r==="drawrect")_.type="rect",_.x0=b[0][1],_.y0=b[0][2],_.x1=b[2][1],_.y1=b[2][2];else if(b&&r==="drawline")_.type="line",_.x0=b[0][1],_.y0=b[0][2],_.x1=b[1][1],_.y1=b[1][2];else if(b&&r==="drawcircle"){_.type="circle";var p=b[yue][1],k=b[_ue][1],E=b[xue][1],S=b[bue][1],L=b[yue][2],x=b[_ue][2],C=b[xue][2],M=b[bue][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=c_(s.xaxis,p),k=c_(s.xaxis,k),E=c_(s.xaxis,E),S=c_(s.xaxis,S)),P&&(L=c_(s.yaxis,L),x=c_(s.yaxis,x),C=c_(s.yaxis,C),M=c_(s.yaxis,M));var T=(k+S)/2,z=(L+C)/2,O=(S-k+E-p)/2,V=(M-x+C-L)/2,G=ict({x0:T,y0:z,x1:T+O*Jut,y1:z+V*$ut});g&&(G.x0=$L(s.xaxis,G.x0),G.x1=$L(s.xaxis,G.x1)),P&&(G.y0=$L(s.yaxis,G.y0),G.y1=$L(s.yaxis,G.y1)),_.x0=G.x0,_.y0=G.y0,_.x1=G.x1,_.y1=G.y1}else _.type="path",u&&c&&nct(v,u,c),_.path=rct(v),b=null;return _}Sue.exports={newShapes:act,createShapeObj:Aue}});var ZB=ye((Par,Mue)=>{"use strict";var oct=Eg(),sct=oct.selectMode,lct=Q1(),uct=lct.clearOutline,XB=u_(),cct=XB.readPaths,fct=XB.writePaths,hct=XB.fixDatesForPaths;Mue.exports=function(t,r){if(t.length){var n=t[0][0];if(n){var i=n.getAttribute("d"),a=r.gd,o=a._fullLayout.newselection,s=r.plotinfo,l=s.xaxis,u=s.yaxis,c=r.isActiveSelection,f=r.dragmode,h=(a.layout||{}).selections||[];if(!sct(f)&&c!==void 0){var d=a._fullLayout._activeSelectionIndex;if(d<h.length)switch(a._fullLayout.selections[d].type){case"rect":f="select";break;case"path":f="lasso";break}}var v=cct(i,a,s,c),_={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"?(_.type="rect",_.x0=b[0][1],_.y0=b[0][2],_.x1=b[2][1],_.y1=b[2][2]):(_.type="path",l&&u&&hct(v,l,u),_.path=fct(v),b=null),uct(a);for(var p=r.editHelpers,k=(p||{}).modifyItem,E=[],S=0;S<h.length;S++){var L=a._fullLayout.selections[S];if(!L){E[S]=L;continue}if(E[S]=L._input,c!==void 0&&S===a._fullLayout._activeSelectionIndex){var x=_;switch(L.type){case"rect":k("x0",x.x0),k("x1",x.x1),k("y0",x.y0),k("y1",x.y1);break;case"path":k("path",x.path);break}}}return c===void 0?(E.push(_),E):p?p.getUpdateObj():{}}}}});var gM=ye((Iar,Eue)=>{"use strict";Eue.exports={segmentRE:/[MLHVQCTSZ][^MLHVQCTSZ]*/g,paramRE:/[^\s,]+/g,paramIsX:{M:{0:!0,drawn:0},L:{0:!0,drawn:0},H:{0:!0,drawn:0},V:{},Q:{0:!0,2:!0,drawn:2},C:{0:!0,2:!0,4:!0,drawn:4},T:{0:!0,drawn:0},S:{0:!0,2:!0,drawn:2},Z:{}},paramIsY:{M:{1:!0,drawn:1},L:{1:!0,drawn:1},H:{},V:{0:!0,drawn:0},Q:{1:!0,3:!0,drawn:3},C:{1:!0,3:!0,5:!0,drawn:5},T:{1:!0,drawn:1},S:{1:!0,3:!0,drawn:5},Z:{}},numParams:{M:2,L:2,H:1,V:1,Q:4,C:6,T:2,S:4,Z:0}}});var f_=ye(Dd=>{"use strict";var Ob=gM(),kue=Dr(),tP=ho();Dd.rangeToShapePosition=function(e){return e.type==="log"?e.r2d:function(t){return t}};Dd.shapePositionToRange=function(e){return e.type==="log"?e.d2r:function(t){return t}};Dd.decodeDate=function(e){return function(t){return t.replace&&(t=t.replace("_"," ")),e(t)}};Dd.encodeDate=function(e){return function(t){return e(t).replace(" ","_")}};Dd.extractPathCoords=function(e,t,r){var n=[],i=e.match(Ob.segmentRE);return i.forEach(function(a){var o=t[a.charAt(0)].drawn;if(o!==void 0){var s=a.slice(1).match(Ob.paramRE);if(!(!s||s.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=mM(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=tP.getRefType(t.xref),i=tP.getRefType(t.yref),a=tP.getFromId(e,t.xref),o=tP.getFromId(e,t.yref),s=e._fullLayout._size,l,u,c,f,h=mM(a,t.x0shift),d=mM(a,t.x1shift),v=mM(o,t.y0shift),_=mM(o,t.y1shift),b,p,k,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)),dct(t,u,f);if(t.xsizemode==="pixel"){var S=u(t.xanchor);b=S+t.x0+h,p=S+t.x1+d}else b=u(t.x0)+h,p=u(t.x1)+d;if(t.ysizemode==="pixel"){var L=f(t.yanchor);k=L-t.y0+v,E=L-t.y1+_}else k=f(t.y0)+v,E=f(t.y1)+_;if(r==="line")return"M"+b+","+k+"L"+p+","+E;if(r==="rect")return"M"+b+","+k+"H"+p+"V"+E+"H"+b+"Z";var x=(b+p)/2,C=(k+E)/2,M=Math.abs(x-b),g=Math.abs(C-k),P="A"+M+","+g,T=x+M+","+C,z=x+","+(C-g);return"M"+T+P+" 0 1,1 "+z+P+" 0 0,1 "+T+"Z"};function dct(e,t,r){var n=e.path,i=e.xsizemode,a=e.ysizemode,o=e.xanchor,s=e.yanchor;return n.replace(Ob.segmentRE,function(l){var u=0,c=l.charAt(0),f=Ob.paramIsX[c],h=Ob.paramIsY[c],d=Ob.numParams[c],v=l.slice(1).replace(Ob.paramRE,function(_){return f[u]?i==="pixel"?_=t(o)+Number(_):_=t(_):h[u]&&(a==="pixel"?_=r(s)-Number(_):_=r(_)),u++,u>d&&(_="X"),_});return u>d&&(v=v.replace(/[\s,]*X.*/,""),kue.log("Ignoring extra params in segment "+l)),c+v})}function mM(e,t){t=t||0;var r=0;return t&&e&&(e.type==="category"||e.type==="multicategory")&&(r=(e.r2p(1)-e.r2p(0))*t),r}});var KB=ye((Dar,Iue)=>{"use strict";var vct=Dr(),Z3=ho(),Cue=ru(),Lue=So(),pct=u_().readPaths,YB=f_(),gct=YB.getPathString,Pue=M6(),mct=$h().FROM_TL;Iue.exports=function(t,r,n,i){if(i.selectAll(".shape-label").remove(),!!(n.label.text||n.label.texttemplate)){var a;if(n.label.texttemplate){var o={};if(n.type!=="path"){var s=Z3.getFromId(t,n.xref),l=Z3.getFromId(t,n.yref);for(var u in Pue){var c=Pue[u](n,s,l);c!==void 0&&(o[u]=c)}}a=vct.texttemplateStringForShapes({data:[o],fallback:n.label.texttemplatefallback,locale:t._fullLayout._d3locale,template:n.label.texttemplate})}else a=n.label.text;var f={"data-index":r},h=n.label.font,d={"data-notex":1},v=i.append("g").attr(f).classed("shape-label",!0),_=v.append("text").attr(d).classed("shape-label-text",!0).text(a),b,p,k,E;if(n.path){var S=gct(t,n),L=pct(S,t);b=1/0,k=1/0,p=-1/0,E=-1/0;for(var x=0;x<L.length;x++)for(var C=0;C<L[x].length;C++)for(var M=L[x][C],g=1;g<M.length;g+=2){var P=M[g],T=M[g+1];b=Math.min(b,P),p=Math.max(p,P),k=Math.min(k,T),E=Math.max(E,T)}}else{var z=Z3.getFromId(t,n.xref),O=n.x0shift,V=n.x1shift,G=Z3.getRefType(n.xref),Z=Z3.getFromId(t,n.yref),j=n.y0shift,N=n.y1shift,H=Z3.getRefType(n.yref),te=function(Le,Ae){var Fe=YB.getDataToPixel(t,z,Ae,!1,G);return Fe(Le)},oe=function(Le,Ae){var Fe=YB.getDataToPixel(t,Z,Ae,!0,H);return Fe(Le)};b=te(n.x0,O),p=te(n.x1,V),k=oe(n.y0,j),E=oe(n.y1,N)}var _e=n.label.textangle;_e==="auto"&&(n.type==="line"?_e=yct(b,k,p,E):_e=0),_.call(function(Le){return Le.call(Lue.font,h).attr({}),Cue.convertToTspans(Le,t),Le});var Ee=Lue.bBox(_.node()),Ce=_ct(b,k,p,E,n,_e,Ee),me=Ce.textx,ie=Ce.texty,Se=Ce.xanchor;_.attr({"text-anchor":{left:"start",center:"middle",right:"end"}[Se],y:ie,x:me,transform:"rotate("+_e+","+me+","+ie+")"}).call(Cue.positionText,me,ie)}};function yct(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 _ct(e,t,r,n,i,a,o){var s=i.label.textposition,l=i.label.textangle,u=i.label.padding,c=i.type,f=Math.PI/180*a,h=Math.sin(f),d=Math.cos(f),v=i.label.xanchor,_=i.label.yanchor,b,p,k,E;if(c==="line"){s==="start"?(b=e,p=t):s==="end"?(b=r,p=n):(b=(e+r)/2,p=(t+n)/2),v==="auto"&&(s==="start"?l==="auto"?r>e?v="left":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 S={left:1,center:0,right:-1},L={bottom:-1,middle:0,top:1};if(l==="auto"){var x=L[_];k=-u*h*x,E=u*d*x}else{var C=S[v],M=L[_];k=u*C,E=u*M}b=b+k,p=p+E}else k=u+3,s.indexOf("right")!==-1?(b=Math.max(e,r)-k,v==="auto"&&(v="right")):s.indexOf("left")!==-1?(b=Math.min(e,r)+k,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,_==="bottom"?p=p-E:_==="top"&&(p=p+E);var g=mct[_],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 nP=ye((Far,Nue)=>{"use strict";var xct=Dr(),bct=xct.strTranslate,Rue=yv(),zue=Eg(),wct=zue.drawMode,Oue=zue.selectMode,que=qa(),Due=ka(),iP=YL(),Tct=iP.i000,Act=iP.i090,Sct=iP.i180,Mct=iP.i270,Ect=Q1(),Bue=Ect.clearOutlineControllers,$B=u_(),rP=$B.pointsOnRectangle,JB=$B.pointsOnEllipse,kct=$B.writePaths,Cct=eP().newShapes,Lct=eP().createShapeObj,Pct=ZB(),Ict=KB();Nue.exports=function e(t,r,n,i){i||(i=0);var a=n.gd;function o(){e(t,r,n,i++),(JB(t[0])||n.hasText)&&s({redrawing:!0})}function s(j){var N={};n.isActiveShape!==void 0&&(n.isActiveShape=!1,N=Cct(r,n)),n.isActiveSelection!==void 0&&(n.isActiveSelection=!1,N=Pct(r,n),a._fullLayout._reselect=!0),Object.keys(N).length&&que.call((j||{}).redrawing?"relayout":"_guiRelayout",a,N)}var l=a._fullLayout,u=l._zoomlayer,c=n.dragmode,f=wct(c),h=Oue(c);(f||h)&&(a._fullLayout._outlining=!0),Bue(a),r.attr("d",kct(t));var d,v,_,b,p;if(!i&&(n.isActiveShape||n.isActiveSelection)){p=Rct([],t);var k=u.append("g").attr("class","outline-controllers");P(k),Z()}if(f&&n.hasText){var E=u.select(".label-temp"),S=Lct(r,n,n.dragmode);Ict(a,"label-temp",S,E)}function L(j){_=+j.srcElement.getAttribute("data-i"),b=+j.srcElement.getAttribute("data-j"),d[_][b].moveFn=x}function x(j,N){if(t.length){var H=p[_][b][1],te=p[_][b][2],oe=t[_],_e=oe.length;if(rP(oe)){var Ee=j,Ce=N;if(n.isActiveSelection){var me=Fue(oe,b);me[1]===oe[b][1]?Ce=0:Ee=0}for(var ie=0;ie<_e;ie++)if(ie!==b){var Se=oe[ie];Se[1]===oe[b][1]&&(Se[1]=H+Ee),Se[2]===oe[b][2]&&(Se[2]=te+Ce)}if(oe[b][1]=H+Ee,oe[b][2]=te+Ce,!rP(oe))for(var Le=0;Le<_e;Le++)for(var Ae=0;Ae<oe[Le].length;Ae++)oe[Le][Ae]=p[_][Le][Ae]}else oe[b][1]=H+j,oe[b][2]=te+N;o()}}function C(){s()}function M(){if(t.length&&t[_]&&t[_].length){for(var j=[],N=0;N<t[_].length;N++)N!==b&&j.push(t[_][N]);j.length>1&&!(j.length===2&&j[1][0]==="Z")&&(b===0&&(j[0][0]="M"),t[_]=j,o(),s())}}function g(j,N){if(j===2){_=+N.srcElement.getAttribute("data-i"),b=+N.srcElement.getAttribute("data-j");var H=t[_];!rP(H)&&!JB(H)&&M()}}function P(j){d=[];for(var N=0;N<t.length;N++){var H=t[N],te=rP(H),oe=!te&&JB(H);d[N]=[];for(var _e=H.length,Ee=0;Ee<_e;Ee++)if(H[Ee][0]!=="Z"&&!(oe&&Ee!==Tct&&Ee!==Act&&Ee!==Sct&&Ee!==Mct)){var Ce=te&&n.isActiveSelection,me;Ce&&(me=Fue(H,Ee));var ie=H[Ee][1],Se=H[Ee][2],Le=j.append(Ce?"rect":"circle").attr("data-i",N).attr("data-j",Ee).style({fill:Due.background,stroke:Due.defaultLine,"stroke-width":1,"shape-rendering":"crispEdges"});if(Ce){var Ae=me[1]-ie,Fe=me[2]-Se,Pe=Fe?5:Math.max(Math.min(25,Math.abs(Ae)-5),5),ge=Ae?5:Math.max(Math.min(25,Math.abs(Fe)-5),5);Le.classed(Fe?"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",bct(Ae/2,Fe/2))}else Le.classed("cursor-grab",!0).attr("r",5).attr("cx",ie).attr("cy",Se);d[N][Ee]={element:Le.node(),gd:a,prepFn:L,doneFn:C,clickFn:g},Rue.init(d[N][Ee])}}}function T(j,N){if(t.length)for(var H=0;H<t.length;H++)for(var te=0;te<t[H].length;te++)for(var oe=0;oe+2<t[H][te].length;oe+=2)t[H][te][oe+1]=p[H][te][oe+1]+j,t[H][te][oe+2]=p[H][te][oe+2]+N}function z(j,N){T(j,N),o()}function O(j){_=+j.srcElement.getAttribute("data-i"),_||(_=0),v[_].moveFn=z}function V(){s()}function G(j){j===2&&Dct(a)}function Z(){if(v=[],!!t.length){var j=0;v[j]={element:r[0][0],gd:a,prepFn:O,doneFn:V,clickFn:G},Rue.init(v[j])}}};function Rct(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 Fue(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 Dct(e){if(Oue(e._fullLayout.dragmode)){Bue(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},que.call("_guiRelayout",e,{selections:n})}}}});var lP=ye((zar,Kue)=>{"use strict";var Fct=Oa(),Wue=qa(),Uue=Dr(),Y3=ho(),zct=u_().readPaths,Oct=nP(),oP=KB(),Xue=Q1().clearOutlineControllers,QB=ka(),tN=So(),qct=vl().arrayEditor,Vue=yv(),Gue=Sg(),qb=gM(),Ep=f_(),eN=Ep.getPathString;Kue.exports={draw:rN,drawOne:Zue,eraseActiveShape:Uct,drawLabel:oP};function rN(e){var t=e._fullLayout;t._shapeUpperLayer.selectAll("path").remove(),t._shapeLowerLayer.selectAll("path").remove(),t._shapeUpperLayer.selectAll("text").remove(),t._shapeLowerLayer.selectAll("text").remove();for(var r in t._plots){var n=t._plots[r].shapelayer;n&&(n.selectAll("path").remove(),n.selectAll("text").remove())}for(var i=0;i<t.shapes.length;i++)t.shapes[i].visible===!0&&Zue(e,i)}function aP(e){return!!e._fullLayout._outlining}function sP(e){return!e._context.edits.shapePosition}function Zue(e,t){e._fullLayout._paperdiv.selectAll('.shapelayer [data-index="'+t+'"]').remove();var r=Ep.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=eN(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 _=l[l.length-1]!=="Z",b=sP(e)&&n.editable&&e._fullLayout._activeShapeIndex===t;b&&(f=_?"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}),k=p.append("path").attr(u).style("opacity",c).call(QB.stroke,h).call(QB.fill,f).call(tN.dashLine,v,d);Yue(p,e,n),oP(e,t,n,p);var E;if((b||e._context.edits.shapePosition)&&(E=qct(e.layout,"shapes",n)),b){k.style({cursor:"move"});var S={element:k.node(),plotinfo:i,gd:e,editHelpers:E,hasText:n.label.text||n.label.texttemplate,isActiveShape:!0},L=zct(l,e);Oct(L,k,S)}else e._context.edits.shapePosition?Bct(e,k,n,t,s,E):n.editable===!0&&k.style("pointer-events",_||QB.opacity(f)*c<=.5?"stroke":"all");k.node().addEventListener("click",function(){return Nct(e,k)})}}function Yue(e,t,r){var n=(r.xref+r.yref).replace(/paper/g,"").replace(/[xyz][0-9]* *domain/g,"");tN.setClipUrl(e,n?"clip"+t._fullLayout._uid+n:null,t)}function Bct(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,_,b,p,k,E,S,L,x,C,M,g,P,T,z=Fct.select(t.node().parentNode),O=Y3.getFromId(e,r.xref),V=Y3.getRefType(r.xref),G=Y3.getFromId(e,r.yref),Z=Y3.getRefType(r.yref),j=r.x0shift,N=r.x1shift,H=r.y0shift,te=r.y1shift,oe=function(st,lt){var Gt=Ep.getDataToPixel(e,O,lt,!1,V);return Gt(st)},_e=function(st,lt){var Gt=Ep.getDataToPixel(e,G,lt,!0,Z);return Gt(st)},Ee=Ep.getPixelToData(e,O,!1,V),Ce=Ep.getPixelToData(e,G,!0,Z),me=Le(),ie={element:me.node(),gd:e,prepFn:Pe,doneFn:ge,clickFn:Re},Se;Vue.init(ie),me.node().onmousemove=Fe;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"},Jt=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,j),cy:u?_e(r.yanchor)-r.y0:_e(r.y0,H),r:Jt}).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,te),r:Jt}).style(Nt).classed("cursor-grab",!0),Gt}function Fe(st){if(aP(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,Jt=st.clientX-lt.left,sr=st.clientY-lt.top,wr=!f&&Gt>o&&Nt>s&&!st.shiftKey?Vue.getCursor(Jt/Gt,1-sr/Nt):"move";Gue(t,wr),Se=wr.split("-")[0]}}function Pe(st){aP(e)||(l&&(p=oe(r.xanchor)),u&&(k=_e(r.yanchor)),r.type==="path"?T=r.path:(d=l?r.x0:oe(r.x0),v=u?r.y0:_e(r.y0),_=l?r.x1:oe(r.x1),b=u?r.y1:_e(r.y1)),d<_?(L=d,g="x0",x=_,P="x1"):(L=_,g="x1",x=d,P="x0"),!u&&v<b||u&&v>b?(E=v,C="y0",S=b,M="y1"):(E=b,C="y1",S=v,M="y0"),Fe(st),ut(i,r),Zt(t,r,e),ie.moveFn=Se==="move"?ce:Ze,ie.altKey=st.altKey)}function ge(){aP(e)||(Gue(t),pt(i),Yue(t,e,r),Wue.call("_guiRelayout",e,a.getUpdateObj()))}function Re(){aP(e)||pt(i)}function ce(st,lt){if(r.type==="path"){var Gt=function(sr){return sr},Nt=Gt,Jt=Gt;l?h("xanchor",r.xanchor=Ee(p+st)):(Nt=function(wr){return Ee(oe(wr)+st)},O&&O.type==="date"&&(Nt=Ep.encodeDate(Nt))),u?h("yanchor",r.yanchor=Ce(k+lt)):(Jt=function(wr){return Ce(_e(wr)+lt)},G&&G.type==="date"&&(Jt=Ep.encodeDate(Jt))),h("path",r.path=Hue(T,Nt,Jt))}else l?h("xanchor",r.xanchor=Ee(p+st)):(h("x0",r.x0=Ee(d+st)),h("x1",r.x1=Ee(_+st))),u?h("yanchor",r.yanchor=Ce(k+lt)):(h("y0",r.y0=Ce(v+lt)),h("y1",r.y1=Ce(b+lt)));t.attr("d",eN(e,r)),ut(i,r),oP(e,n,r,z)}function Ze(st,lt){if(f){var Gt=function(Lr){return Lr},Nt=Gt,Jt=Gt;l?h("xanchor",r.xanchor=Ee(p+st)):(Nt=function(ti){return Ee(oe(ti)+st)},O&&O.type==="date"&&(Nt=Ep.encodeDate(Nt))),u?h("yanchor",r.yanchor=Ce(k+lt)):(Jt=function(ti){return Ce(_e(ti)+lt)},G&&G.type==="date"&&(Jt=Ep.encodeDate(Jt))),h("path",r.path=Hue(T,Nt,Jt))}else if(c){if(Se==="resize-over-start-point"){var sr=d+st,wr=u?v-lt:v+lt;h("x0",r.x0=l?sr:Ee(sr)),h("y0",r.y0=u?wr:Ce(wr))}else if(Se==="resize-over-end-point"){var cr=_+st,$e=u?b-lt:b+lt;h("x1",r.x1=l?cr:Ee(cr)),h("y1",r.y1=u?$e:Ce($e))}}else{var St=function(Lr){return Se.indexOf(Lr)!==-1},Qt=St("n"),Vt=St("s"),_t=St("w"),It=St("e"),mt=Qt?E+lt:E,er=Vt?S+lt:S,lr=_t?L+st:L,Tr=It?x+st:x;u&&(Qt&&(mt=E-lt),Vt&&(er=S-lt)),(!u&&er-mt>s||u&&mt-er>s)&&(h(C,r[C]=u?mt:Ce(mt)),h(M,r[M]=u?er:Ce(er))),Tr-lr>o&&(h(g,r[g]=l?lr:Ee(lr)),h(P,r[P]=l?Tr:Ee(Tr)))}t.attr("d",eN(e,r)),ut(i,r),oP(e,n,r,z)}function ut(st,lt){(l||u)&&Gt();function Gt(){var Nt=lt.type!=="path",Jt=st.selectAll(".visual-cue").data([0]),sr=1;Jt.enter().append("path").attr({fill:"#fff","fill-rule":"evenodd",stroke:"#000","stroke-width":sr}).classed("visual-cue",!0);var wr=oe(l?lt.xanchor:Uue.midRange(Nt?[lt.x0,lt.x1]:Ep.extractPathCoords(lt.path,qb.paramIsX))),cr=_e(u?lt.yanchor:Uue.midRange(Nt?[lt.y0,lt.y1]:Ep.extractPathCoords(lt.path,qb.paramIsY)));if(wr=Ep.roundPositionForSharpStrokeRendering(wr,sr),cr=Ep.roundPositionForSharpStrokeRendering(cr,sr),l&&u){var $e="M"+(wr-1-sr)+","+(cr-1-sr)+"h-8v2h8 v8h2v-8 h8v-2h-8 v-8h-2 Z";Jt.attr("d",$e)}else if(l){var St="M"+(wr-1-sr)+","+(cr-9-sr)+"v18 h2 v-18 Z";Jt.attr("d",St)}else{var Qt="M"+(wr-9-sr)+","+(cr-1-sr)+"h18 v2 h-18 Z";Jt.attr("d",Qt)}}}function pt(st){st.selectAll(".visual-cue").remove()}function Zt(st,lt,Gt){var Nt=lt.xref,Jt=lt.yref,sr=Y3.getFromId(Gt,Nt),wr=Y3.getFromId(Gt,Jt),cr="";Nt!=="paper"&&!sr.autorange&&(cr+=Nt),Jt!=="paper"&&!wr.autorange&&(cr+=Jt),tN.setClipUrl(st,cr?"clip"+Gt._fullLayout._uid+cr:null,Gt)}}function Hue(e,t,r){return e.replace(qb.segmentRE,function(n){var i=0,a=n.charAt(0),o=qb.paramIsX[a],s=qb.paramIsY[a],l=qb.numParams[a],u=n.slice(1).replace(qb.paramRE,function(c){return i>=l||(o[i]?c=t(c):s[i]&&(c=r(c)),i++),c});return a+u})}function Nct(e,t){if(sP(e)){var r=t.node(),n=+r.getAttribute("data-index");if(n>=0){if(n===e._fullLayout._activeShapeIndex){jue(e);return}e._fullLayout._activeShapeIndex=n,e._fullLayout._deactivateShape=jue,rN(e)}}}function jue(e){if(sP(e)){var t=e._fullLayout._activeShapeIndex;t>=0&&(Xue(e),delete e._fullLayout._activeShapeIndex,rN(e))}}function Uct(e){if(sP(e)){Xue(e);var t=e._fullLayout._activeShapeIndex,r=(e.layout||{}).shapes||[];if(t<r.length){for(var n=[],i=0;i<r.length;i++)i!==t&&n.push(r[i]);return delete e._fullLayout._activeShapeIndex,Wue.call("_guiRelayout",e,{shapes:n})}}}});var aN=ye((Oar,ace)=>{"use strict";var A0=qa(),Jue=Mc(),$ue=hf(),Pl=XL(),Vct=lP().eraseActiveShape,uP=Dr(),tl=uP._,Il=ace.exports={};Il.toImage={name:"toImage",title:function(e){var t=e._context.toImageButtonOptions||{},r=t.format||"png";return r==="png"?tl(e,"Download plot as a PNG"):tl(e,"Download plot")},icon:Pl.camera,click:function(e){var t=e._context.toImageButtonOptions,r={format:t.format||"png"};uP.notifier(tl(e,"Taking snapshot - this may take a few seconds"),"long"),["filename","width","height","scale"].forEach(function(n){n in t&&(r[n]=t[n])}),A0.call("downloadImage",e,r).then(function(n){uP.notifier(tl(e,"Snapshot succeeded")+" - "+n,"long")}).catch(function(){uP.notifier(tl(e,"Sorry, there was a problem downloading your snapshot!"),"long")})}};Il.sendDataToCloud={name:"sendDataToCloud",title:function(e){return tl(e,"Edit in Chart Studio")},icon:Pl.disk,click:function(e){Jue.sendDataToCloud(e)}};Il.editInChartStudio={name:"editInChartStudio",title:function(e){return tl(e,"Edit in Chart Studio")},icon:Pl.pencil,click:function(e){Jue.sendDataToCloud(e)}};Il.zoom2d={name:"zoom2d",_cat:"zoom",title:function(e){return tl(e,"Zoom")},attr:"dragmode",val:"zoom",icon:Pl.zoombox,click:Bv};Il.pan2d={name:"pan2d",_cat:"pan",title:function(e){return tl(e,"Pan")},attr:"dragmode",val:"pan",icon:Pl.pan,click:Bv};Il.select2d={name:"select2d",_cat:"select",title:function(e){return tl(e,"Box Select")},attr:"dragmode",val:"select",icon:Pl.selectbox,click:Bv};Il.lasso2d={name:"lasso2d",_cat:"lasso",title:function(e){return tl(e,"Lasso Select")},attr:"dragmode",val:"lasso",icon:Pl.lasso,click:Bv};Il.drawclosedpath={name:"drawclosedpath",title:function(e){return tl(e,"Draw closed freeform")},attr:"dragmode",val:"drawclosedpath",icon:Pl.drawclosedpath,click:Bv};Il.drawopenpath={name:"drawopenpath",title:function(e){return tl(e,"Draw open freeform")},attr:"dragmode",val:"drawopenpath",icon:Pl.drawopenpath,click:Bv};Il.drawline={name:"drawline",title:function(e){return tl(e,"Draw line")},attr:"dragmode",val:"drawline",icon:Pl.drawline,click:Bv};Il.drawrect={name:"drawrect",title:function(e){return tl(e,"Draw rectangle")},attr:"dragmode",val:"drawrect",icon:Pl.drawrect,click:Bv};Il.drawcircle={name:"drawcircle",title:function(e){return tl(e,"Draw circle")},attr:"dragmode",val:"drawcircle",icon:Pl.drawcircle,click:Bv};Il.eraseshape={name:"eraseshape",title:function(e){return tl(e,"Erase active shape")},icon:Pl.eraseshape,click:Vct};Il.zoomIn2d={name:"zoomIn2d",_cat:"zoomin",title:function(e){return tl(e,"Zoom in")},attr:"zoom",val:"in",icon:Pl.zoom_plus,click:Bv};Il.zoomOut2d={name:"zoomOut2d",_cat:"zoomout",title:function(e){return tl(e,"Zoom out")},attr:"zoom",val:"out",icon:Pl.zoom_minus,click:Bv};Il.autoScale2d={name:"autoScale2d",_cat:"autoscale",title:function(e){return tl(e,"Autoscale")},attr:"zoom",val:"auto",icon:Pl.autoscale,click:Bv};Il.resetScale2d={name:"resetScale2d",_cat:"resetscale",title:function(e){return tl(e,"Reset axes")},attr:"zoom",val:"reset",icon:Pl.home,click:Bv};Il.hoverClosestCartesian={name:"hoverClosestCartesian",_cat:"hoverclosest",title:function(e){return tl(e,"Show closest data on hover")},attr:"hovermode",val:"closest",icon:Pl.tooltip_basic,gravity:"ne",click:Bv};Il.hoverCompareCartesian={name:"hoverCompareCartesian",_cat:"hoverCompare",title:function(e){return tl(e,"Compare data on hover")},attr:"hovermode",val:function(e){return e._fullLayout._isHoriz?"y":"x"},icon:Pl.tooltip_compare,gravity:"ne",click:Bv};function Bv(e,t){var r=t.currentTarget,n=r.getAttribute("data-attr"),i=r.getAttribute("data-val")||!0,a=e._fullLayout,o={},s=$ue.list(e,null,!0),l=a._cartesianSpikesEnabled,u,c;if(n==="zoom"){var f=i==="in"?.5:2,h=(1+f)/2,d=(1-f)/2,v,_;for(c=0;c<s.length;c++)if(u=s[c],_=u.modebardisable==="none"||u.modebardisable.indexOf(i==="auto"||i==="reset"?"autoscale":"zoominout")===-1,_&&!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,A0.call("_guiRelayout",e,o)}Il.zoom3d={name:"zoom3d",_cat:"zoom",title:function(e){return tl(e,"Zoom")},attr:"scene.dragmode",val:"zoom",icon:Pl.zoombox,click:cP};Il.pan3d={name:"pan3d",_cat:"pan",title:function(e){return tl(e,"Pan")},attr:"scene.dragmode",val:"pan",icon:Pl.pan,click:cP};Il.orbitRotation={name:"orbitRotation",title:function(e){return tl(e,"Orbital rotation")},attr:"scene.dragmode",val:"orbit",icon:Pl["3d_rotate"],click:cP};Il.tableRotation={name:"tableRotation",title:function(e){return tl(e,"Turntable rotation")},attr:"scene.dragmode",val:"turntable",icon:Pl["z-axis"],click:cP};function cP(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,A0.call("_guiRelayout",e,o)}Il.resetCameraDefault3d={name:"resetCameraDefault3d",_cat:"resetCameraDefault",title:function(e){return tl(e,"Reset camera to default")},attr:"resetDefault",icon:Pl.home,click:iN};Il.resetCameraLastSave3d={name:"resetCameraLastSave3d",_cat:"resetCameraLastSave",title:function(e){return tl(e,"Reset camera to last save")},attr:"resetLastSave",icon:Pl.movie,click:iN};function iN(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,_;i?(l[f+".up"]=v.viewInitial.up,l[f+".eye"]=v.viewInitial.eye,l[f+".center"]=v.viewInitial.center,_=!0):a&&(l[f+".up"]=null,l[f+".eye"]=null,l[f+".center"]=null,_=!0),_&&(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)}A0.call("_guiRelayout",e,l)}Il.hoverClosest3d={name:"hoverClosest3d",_cat:"hoverclosest",title:function(e){return tl(e,"Toggle show closest data on hover")},attr:"hovermode",val:null,toggle:!0,icon:Pl.tooltip_basic,gravity:"ne",click:Gct};function Que(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],_=c+"."+v+".showspikes";l[_]=!1,s[_]=f[v].showspikes}}r._previousVal=s}return l}function Gct(e,t){var r=Que(e,t);A0.call("_guiRelayout",e,r)}Il.zoomInGeo={name:"zoomInGeo",_cat:"zoomin",title:function(e){return tl(e,"Zoom in")},attr:"zoom",val:"in",icon:Pl.zoom_plus,click:nN};Il.zoomOutGeo={name:"zoomOutGeo",_cat:"zoomout",title:function(e){return tl(e,"Zoom out")},attr:"zoom",val:"out",icon:Pl.zoom_minus,click:nN};Il.resetGeo={name:"resetGeo",_cat:"reset",title:function(e){return tl(e,"Reset")},attr:"reset",val:null,icon:Pl.autoscale,click:nN};Il.hoverClosestGeo={name:"hoverClosestGeo",_cat:"hoverclosest",title:function(e){return tl(e,"Toggle show closest data on hover")},attr:"hovermode",val:null,toggle:!0,icon:Pl.tooltip_basic,gravity:"ne",click:tce};function nN(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;A0.call("_guiRelayout",e,l+".projection.scale",f)}}n==="reset"&&K3(e,"geo")}Il.hoverClosestPie={name:"hoverClosestPie",_cat:"hoverclosest",title:function(e){return tl(e,"Toggle show closest data on hover")},attr:"hovermode",val:"closest",icon:Pl.tooltip_basic,gravity:"ne",click:tce};function ece(e){var t=e._fullLayout;return t.hovermode?!1:t._has("cartesian")?t._isHoriz?"y":"x":"closest"}function tce(e){var t=ece(e);A0.call("_guiRelayout",e,"hovermode",t)}Il.resetViewSankey={name:"resetSankeyGroup",title:function(e){return tl(e,"Reset view")},icon:Pl.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())}A0.call("restyle",e,t)}};Il.toggleHover={name:"toggleHover",title:function(e){return tl(e,"Toggle show closest data on hover")},attr:"hovermode",val:null,toggle:!0,icon:Pl.tooltip_basic,gravity:"ne",click:function(e,t){var r=Que(e,t);r.hovermode=ece(e),A0.call("_guiRelayout",e,r)}};Il.resetViews={name:"resetViews",title:function(e){return tl(e,"Reset views")},icon:Pl.home,click:function(e,t){var r=t.currentTarget;r.setAttribute("data-attr","zoom"),r.setAttribute("data-val","reset"),Bv(e,t),r.setAttribute("data-attr","resetLastSave"),iN(e,t),K3(e,"geo"),K3(e,"mapbox"),K3(e,"map")}};Il.toggleSpikelines={name:"toggleSpikelines",title:function(e){return tl(e,"Toggle Spike Lines")},icon:Pl.spikeline,attr:"_cartesianSpikesEnabled",val:"on",click:function(e){var t=e._fullLayout,r=t._cartesianSpikesEnabled;t._cartesianSpikesEnabled=r==="on"?"off":"on",A0.call("_guiRelayout",e,Hct(e))}};function Hct(e){for(var t=e._fullLayout,r=t._cartesianSpikesEnabled==="on",n=$ue.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}Il.resetViewMapbox={name:"resetViewMapbox",_cat:"resetView",title:function(e){return tl(e,"Reset view")},attr:"reset",icon:Pl.home,click:function(e){K3(e,"mapbox")}};Il.resetViewMap={name:"resetViewMap",_cat:"resetView",title:function(e){return tl(e,"Reset view")},attr:"reset",icon:Pl.home,click:function(e){K3(e,"map")}};Il.zoomInMapbox={name:"zoomInMapbox",_cat:"zoomin",title:function(e){return tl(e,"Zoom in")},attr:"zoom",val:"in",icon:Pl.zoom_plus,click:rce};Il.zoomInMap={name:"zoomInMap",_cat:"zoomin",title:function(e){return tl(e,"Zoom in")},attr:"zoom",val:"in",icon:Pl.zoom_plus,click:ice};Il.zoomOutMapbox={name:"zoomOutMapbox",_cat:"zoomout",title:function(e){return tl(e,"Zoom out")},attr:"zoom",val:"out",icon:Pl.zoom_minus,click:rce};Il.zoomOutMap={name:"zoomOutMap",_cat:"zoomout",title:function(e){return tl(e,"Zoom out")},attr:"zoom",val:"out",icon:Pl.zoom_minus,click:ice};function rce(e,t){nce(e,t,"mapbox")}function ice(e,t){nce(e,t,"map")}function nce(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}A0.call("_guiRelayout",e,l)}function K3(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]}A0.call("_guiRelayout",e,i)}});var oN=ye((qar,uce)=>{"use strict";var oce=aN(),jct=Object.keys(oce),sce=["drawline","drawopenpath","drawclosedpath","drawcircle","drawrect","eraseshape"],lce=["v1hovermode","hoverclosest","hovercompare","togglehover","togglespikelines"].concat(sce),J3=[],Wct=function(e){if(lce.indexOf(e._cat||e.name)===-1){var t=e.name,r=(e._cat||e.name).toLowerCase();J3.indexOf(t)===-1&&J3.push(t),J3.indexOf(r)===-1&&J3.push(r)}};jct.forEach(function(e){Wct(oce[e])});J3.sort();uce.exports={DRAW_MODES:sce,backButtons:lce,foreButtons:J3}});var sN=ye((Nar,cce)=>{"use strict";var Bar=oN();cce.exports={editType:"modebar",orientation:{valType:"enumerated",values:["v","h"],dflt:"h",editType:"modebar"},bgcolor:{valType:"color",editType:"modebar"},color:{valType:"color",editType:"modebar"},activecolor:{valType:"color",editType:"modebar"},uirevision:{valType:"any",editType:"none"},add:{valType:"string",arrayOk:!0,dflt:"",editType:"modebar"},remove:{valType:"string",arrayOk:!0,dflt:"",editType:"modebar"}}});var hce=ye((Uar,fce)=>{"use strict";var Xct=Dr(),yM=ka(),Zct=vl(),Yct=sN();fce.exports=function(t,r){var n=t.modebar||{},i=Zct.newContainer(r,"modebar");function a(s,l){return Xct.coerce(n,i,Yct,s,l)}a("orientation"),a("bgcolor",yM.addOpacity(r.paper_bgcolor,.5));var o=yM.contrast(yM.rgb(r.modebar.bgcolor));a("color",yM.addOpacity(o,.3)),a("activecolor",yM.addOpacity(o,.7)),a("uirevision",r.uirevision),a("add"),a("remove")}});var gce=ye((Var,pce)=>{"use strict";var lN=Oa(),Kct=Eo(),fP=Dr(),dce=XL(),Jct=l6().version,$ct=new DOMParser;function vce(e){this.container=e.container,this.element=document.createElement("div"),this.update(e.graphInfo,e.buttons),this.container.appendChild(this.element)}var Tm=vce.prototype;Tm.update=function(e,t){this.graphInfo=e;var r=this.graphInfo._context,n=this.graphInfo._fullLayout,i="modebar-"+n._uid;this.element.setAttribute("id",i),this.element.setAttribute("role","toolbar"),this._uid=i,this.element.className="modebar modebar--custom",r.displayModeBar==="hover"&&(this.element.className+=" modebar--hover ease-bg"),n.modebar.orientation==="v"&&(this.element.className+=" vertical",t=t.reverse());var a=n.modebar,o="#"+i+" .modebar-group";document.querySelectorAll(o).forEach(function(f){f.style.backgroundColor=a.bgcolor});var s=!this.hasButtons(t),l=this.hasLogo!==r.displaylogo,u=this.locale!==r.locale;if(this.locale=r.locale,(s||l||u)&&(this.removeAllButtons(),this.updateButtons(t),r.watermark||r.displaylogo)){var c=this.getLogo();r.watermark&&(c.className=c.className+" watermark"),n.modebar.orientation==="v"?this.element.insertBefore(c,this.element.childNodes[0]):this.element.appendChild(c),this.hasLogo=!0}this.updateActiveButton(),fP.setStyleOnHover("#"+i+" .modebar-btn",".active",".icon path","fill: "+a.activecolor,"fill: "+a.color,this.element)};Tm.updateButtons=function(e){var t=this;this.buttons=e,this.buttonElements=[],this.buttonsNames=[],this.buttons.forEach(function(r){var n=t.createGroup();r.forEach(function(i){var a=i.name;if(!a)throw new Error("must provide button 'name' in button config");if(t.buttonsNames.indexOf(a)!==-1)throw new Error("button name '"+a+"' is taken");t.buttonsNames.push(a);var o=t.createButton(i);t.buttonElements.push(o),n.appendChild(o)}),t.element.appendChild(n)})};Tm.createGroup=function(){var e=document.createElement("div");e.className="modebar-group";var t=this.graphInfo._fullLayout.modebar;return e.style.backgroundColor=t.bgcolor,e};Tm.createButton=function(e){var t=this,r=document.createElement("button");r.setAttribute("type","button"),r.setAttribute("rel","tooltip"),r.className="modebar-btn";var n=e.title;n===void 0?n=e.name:typeof n=="function"&&(n=n(this.graphInfo)),(n||n===0)&&(r.setAttribute("data-title",n),r.setAttribute("aria-label",n)),e.attr!==void 0&&r.setAttribute("data-attr",e.attr);var i=e.val;i!==void 0&&(typeof i=="function"&&(i=i(this.graphInfo)),r.setAttribute("data-val",i));var a=e.click;if(typeof a!="function")throw new Error("must provide button 'click' function in button config");r.addEventListener("click",function(s){e.click(t.graphInfo,s),t.updateActiveButton(s.currentTarget)}),r.setAttribute("data-toggle",e.toggle||!1),e.toggle&&lN.select(r).classed("active",!0);var o=e.icon;return typeof o=="function"?r.appendChild(o()):r.appendChild(this.createIcon(o||dce.question)),r.setAttribute("data-gravity",e.gravity||"n"),r};Tm.createIcon=function(e){var t=Kct(e.height)?Number(e.height):e.ascent-e.descent,r="http://www.w3.org/2000/svg",n;if(e.path){n=document.createElementNS(r,"svg"),n.setAttribute("viewBox",[0,0,e.width,t].join(" ")),n.setAttribute("class","icon");var i=document.createElementNS(r,"path");i.setAttribute("d",e.path),e.transform?i.setAttribute("transform",e.transform):e.ascent!==void 0&&i.setAttribute("transform","matrix(1 0 0 -1 0 "+e.ascent+")"),n.appendChild(i)}if(e.svg){var a=$ct.parseFromString(e.svg,"application/xml");n=a.childNodes[0]}return n.setAttribute("height","1em"),n.setAttribute("width","1em"),n};Tm.updateActiveButton=function(e){var t=this.graphInfo._fullLayout,r=e!==void 0?e.getAttribute("data-attr"):null;this.buttonElements.forEach(function(n){var i=n.getAttribute("data-val")||!0,a=n.getAttribute("data-attr"),o=n.getAttribute("data-toggle")==="true",s=lN.select(n),l=function(f,h){var d=t.modebar,v=f.querySelector(".icon path");v&&(h||f.matches(":hover")?v.style.fill=d.activecolor:v.style.fill=d.color)};if(o){if(a===r){var u=!s.classed("active");s.classed("active",u),l(n,u)}}else{var c=a===null?a:fP.nestedProperty(t,a).get();s.classed("active",c===i),l(n,c===i)}})};Tm.hasButtons=function(e){var t=this.buttons;if(!t||e.length!==t.length)return!1;for(var r=0;r<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 Qct(e){return e+" (v"+Jct+")"}Tm.getLogo=function(){var e=this.createGroup(),t=document.createElement("a");return t.href="https://plotly.com/",t.target="_blank",t.setAttribute("data-title",Qct(fP._(this.graphInfo,"Produced with Plotly.js"))),t.className="modebar-btn plotlyjsicon modebar-btn--logo",t.appendChild(this.createIcon(dce.newplotlylogo)),e.appendChild(t),e};Tm.removeAllButtons=function(){for(;this.element.firstChild;)this.element.removeChild(this.element.firstChild);this.hasLogo=!1};Tm.destroy=function(){fP.removeElement(this.container.querySelector(".modebar"))};function eft(e,t){var r=e._fullLayout,n=new vce({graphInfo:e,container:r._modebardiv.node(),buttons:t});return r._privateplot&&lN.select(n.element).append("span").classed("badge-private float--left",!0).text("PRIVATE"),n}pce.exports=eft});var _ce=ye((Gar,yce)=>{"use strict";var tft=hf(),mce=Ru(),uN=qa(),rft=ip().isUnifiedHover,ift=gce(),hP=aN(),nft=oN().DRAW_MODES,aft=Dr().extendDeep;yce.exports=function(t){var r=t._fullLayout,n=t._context,i=r._modeBar;if(!n.displayModeBar&&!n.watermark){i&&(i.destroy(),delete r._modeBar);return}if(!Array.isArray(n.modeBarButtonsToRemove))throw new Error(["*modeBarButtonsToRemove* configuration options","must be an array."].join(" "));if(!Array.isArray(n.modeBarButtonsToAdd))throw new Error(["*modeBarButtonsToAdd* configuration options","must be an array."].join(" "));var a=n.modeBarButtons,o;Array.isArray(a)&&a.length?o=fft(a):!n.displayModeBar&&n.watermark?o=[]:o=oft(t),i?i.update(t,o):r._modeBar=ift(t,o)};function oft(e){var t=e._fullLayout,r=e._fullData,n=e._context;function i(N,H){if(typeof H=="string"){if(H.toLowerCase()===N.toLowerCase())return!0}else{var te=H.name,oe=H._cat||H.name;if(te===N||oe===N.toLowerCase())return!0}return!1}var a=t.modebar.add;typeof a=="string"&&(a=[a]);var o=t.modebar.remove;typeof o=="string"&&(o=[o]);var s=n.modeBarButtonsToAdd.concat(a.filter(function(N){for(var H=0;H<n.modeBarButtonsToRemove.length;H++)if(i(N,n.modeBarButtonsToRemove[H]))return!1;return!0})),l=n.modeBarButtonsToRemove.concat(o.filter(function(N){for(var H=0;H<n.modeBarButtonsToAdd.length;H++)if(i(N,n.modeBarButtonsToAdd[H]))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"),_=t._has("mapbox"),b=t._has("map"),p=t._has("polar"),k=t._has("smith"),E=t._has("sankey"),S=sft(t),L=rft(t.hovermode),x=[];function C(N){if(N.length){for(var H=[],te=0;te<N.length;te++){for(var oe=N[te],_e=hP[oe],Ee=_e.name.toLowerCase(),Ce=(_e._cat||_e.name).toLowerCase(),me=!1,ie=0;ie<l.length;ie++){var Se=l[ie].toLowerCase();if(Se===Ee||Se===Ce){me=!0;break}}me||H.push(hP[oe])}x.push(H)}}var M=["toImage"];n.showEditInChartStudio?M.push("editInChartStudio"):n.showSendToCloud&&M.push("sendDataToCloud"),C(M);var g=[],P=[],T=[],z=[];(u||h||d||v)+f+c+_+b+p+k>1?(P=["toggleHover"],T=["resetViews"]):f?(g=["zoomInGeo","zoomOutGeo"],P=["hoverClosestGeo"],T=["resetGeo"]):c?(P=["hoverClosest3d"],T=["resetCameraDefault3d","resetCameraLastSave3d"]):_?(g=["zoomInMapbox","zoomOutMapbox"],P=["toggleHover"],T=["resetViewMapbox"]):b?(g=["zoomInMap","zoomOutMap"],P=["toggleHover"],T=["resetViewMap"]):h?P=["hoverClosestPie"]:E?(P=["hoverClosestCartesian","hoverCompareCartesian"],T=["resetViewSankey"]):P=["toggleHover"],u&&P.push("toggleSpikelines","hoverClosestCartesian","hoverCompareCartesian"),(uft(r)||L)&&(P=[]),u&&!S&&(g=["zoomIn2d","zoomOut2d","autoScale2d"],T[0]!=="resetViews"&&(T=["resetScale2d"])),c?z=["zoom3d","pan3d","orbitRotation","tableRotation"]:u&&!S||v?z=["zoom2d","pan2d"]:_||b||f?z=["pan2d"]:p&&(z=["zoom2d"]),lft(r)&&z.push("select2d","lasso2d");var O=[],V=function(N){O.indexOf(N)===-1&&P.indexOf(N)!==-1&&O.push(N)};if(Array.isArray(s)){for(var G=[],Z=0;Z<s.length;Z++){var j=s[Z];typeof j=="string"?(j=j.toLowerCase(),nft.indexOf(j)!==-1?(t._has("mapbox")||t._has("map")||t._has("cartesian"))&&z.push(j):j==="togglespikelines"?V("toggleSpikelines"):j==="togglehover"?V("toggleHover"):j==="hovercompare"?V("hoverCompareCartesian"):j==="hoverclosest"?(V("hoverClosestCartesian"),V("hoverClosestGeo"),V("hoverClosest3d"),V("hoverClosestPie")):j==="v1hovermode"&&(V("hoverClosestCartesian"),V("hoverCompareCartesian"),V("hoverClosestGeo"),V("hoverClosest3d"),V("hoverClosestPie"))):G.push(j)}s=G}return C(z),C(g.concat(T)),C(O),cft(x,s)}function sft(e){for(var t=tft.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 lft(e){for(var t=!1,r=0;r<e.length&&!t;r++){var n=e[r];!n._module||!n._module.selectPoints||(uN.traceIs(n,"scatter-like")?(mce.hasMarkers(n)||mce.hasText(n))&&(t=!0):uN.traceIs(n,"box-violin")?(n.boxpoints==="all"||n.points==="all")&&(t=!0):t=!0)}return t}function uft(e){for(var t=0;t<e.length;t++)if(!uN.traceIs(e[t],"noHover"))return!1;return!0}function cft(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 fft(e){for(var t=aft([],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(hP[a]!==void 0)t[r][i]=hP[a];else throw new Error(["*modeBarButtons* configuration options","invalid button name"].join(" "))}return t}});var cN=ye((Har,xce)=>{"use strict";xce.exports={moduleType:"component",name:"modebar",layoutAttributes:sN(),supplyLayoutDefaults:hce(),manage:_ce()}});var fN=ye((jar,bce)=>{"use strict";var hft=$h().FROM_BL;bce.exports=function(t,r,n){n===void 0&&(n=hft[t.constraintoward||"center"]);var i=[t.r2l(t.range[0]),t.r2l(t.range[1])],a=i[0]+(i[1]-i[0])*n;t.range=t._input.range=[t.l2r(a+(i[0]-a)*r),t.l2r(a+(i[1]-a)*r)],t.setScale()}});var Nb=ye(_M=>{"use strict";var Bb=Dr(),hN=Ag(),kg=hf().id2name,dft=Rd(),wce=fN(),vft=ym(),pft=fs().ALMOST_EQUAL,gft=$h().FROM_BL;_M.handleDefaults=function(e,t,r){var n=r.axIds,i=r.axHasImage,a=t._axisConstraintGroups=[],o=t._axisMatchGroups=[],s,l,u,c,f,h,d,v;for(s=0;s<n.length;s++)c=kg(n[s]),f=e[c],h=t[c],mft(f,h,{axIds:n,layoutOut:t,hasImage:i[c]});function _(M,g){for(s=0;s<M.length;s++){l=M[s];for(u in l)t[kg(u)][g]=l}}for(_(o,"_matchGroup"),s=0;s<a.length;s++){l=a[s];for(u in l)if(h=t[kg(u)],h.fixedrange){for(var b in l){var p=kg(b);(e[p]||{}).fixedrange===!1&&Bb.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[kg(u)],h._matchGroup&&Object.keys(h._matchGroup).length===Object.keys(l).length&&(a.splice(s,1),s--);break}s++}_(a,"_constraintGroup");var k=["constrain","range","autorange","rangemode","rangebreaks","categoryorder","categoryarray"],E=!1,S=!1;function L(){v=h[d],d==="rangebreaks"&&(S=h._hasDayOfWeekBreaks)}for(s=0;s<o.length;s++){l=o[s];for(var x=0;x<k.length;x++){d=k[x],v=null;var C;for(u in l)if(c=kg(u),f=e[c],h=t[c],d in h){if(!h.matches&&(C=h,d in f)){L();break}v===null&&d in f&&L()}if(d==="range"&&v&&f.range&&f.range.length===2&&f.range[0]!==null&&f.range[1]!==null&&(E=!0),d==="autorange"&&v===null&&E&&(v=!1),v===null&&d in C&&(v=C[d]),v!==null)for(u in l)h=t[kg(u)],h[d]=d==="range"?v.slice():v,d==="rangebreaks"&&(h._hasDayOfWeekBreaks=S,vft(h,t))}}};function mft(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 Bb.coerce(e,t,dft,z,O)}d("constrain",a?"domain":"range"),Bb.coerce(e,t,{constraintoward:{valType:"enumerated",values:h?["left","center","right"]:["bottom","middle","top"],dflt:h?"center":"middle"}},"constraintoward");var v=t.type,_,b,p=[];for(_=0;_<n.length;_++)if(b=n[_],b!==f){var k=i[kg(b)];k.type===v&&p.push(b)}var E=Sce(o,f);if(E){var S=[];for(_=0;_<p.length;_++)b=p[_],E[b]||S.push(b);p=S}var L=p.length,x,C;L&&(e.matches||c.matches)&&(x=Bb.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&&!x&&(e.scaleanchor||M)&&(C=Bb.coerce(e,t,{scaleanchor:{valType:"enumerated",values:p.concat([!1])}},"scaleanchor",M)),x){t._matchGroup=dN(s,f,x,1);var g=i[kg(x)],P=Tce(i,t)/Tce(i,g);h!==(x.charAt(0)==="x")&&(P=(h?"x":"y")+P),dN(o,f,x,P)}else e.matches&&n.indexOf(e.matches)!==-1&&Bb.warn("ignored "+t._name+'.matches: "'+e.matches+'" to avoid an infinite loop');if(C){var T=d("scaleratio");T||(T=t.scaleratio=1),dN(o,f,C,T)}else e.scaleanchor&&n.indexOf(e.scaleanchor)!==-1&&Bb.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 Tce(e,t){var r=t.domain;return r||(r=e[kg(t.overlaying)].domain),r[1]-r[0]}function Sce(e,t){for(var r=0;r<e.length;r++)if(e[r][t])return e[r];return null}function dN(e,t,r,n){var i,a,o,s,l,u=Sce(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]=vN(f,vN(n,u[s]));e.splice(l,1);return}if(n!==1)for(a=0;a<c.length;a++){var h=c[a];u[h]=vN(n,u[h])}u[r]=1}function vN(e,t){var r="",n="",i,a;typeof e=="string"&&(r=e.match(/^[xy]*/)[0],i=r.length,e=+e.slice(i)),typeof t=="string"&&(n=t.match(/^[xy]*/)[0],a=n.length,t=+t.slice(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.slice(a):n.slice(i))+o}function yft(e,t){for(var r=t._size,n=r.h/r.w,i={},a=Object.keys(e),o=0;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.slice(c);for(var f=u.charAt(0)==="y"?n:1/n,h=0;h<c;h++)l*=f}i[s]=l}return i}_M.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=yft(n[i],r);var h=Object.keys(o),d=1/0,v=0,_=1/0,b={},p={},k=!1;for(a=0;a<h.length;a++)s=h[a],p[s]=l=r[kg(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)&&(_=Math.min(_,u)),delete l._constraintShrinkable,v=Math.max(v,u),l.constrain==="domain"&&(k=!0);if(!(d>pft*v&&!k)){for(a=0;a<h.length;a++)if(s=h[a],u=b[s],l=p[s],c=l.constrain,u!==_||c==="domain")if(f=u/_,c==="range")wce(l,f);else{var E=l._inputDomain,S=(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/=S,f*L<1){l.domain=l._input.domain=E.slice(),wce(l,f);continue}if(L<1&&(l.range=l._input.range=l._inputRange.slice(),f*=L),l.autorange){var x=l.r2l(l.range[0]),C=l.r2l(l.range[1]),M=(x+C)/2,g=M,P=M,T=Math.abs(C-M),z=M-T*f*1.0001,O=M+T*f*1.0001,V=hN.makePadFn(r,l,0),G=hN.makePadFn(r,l,1);Ace(l,f);var Z=Math.abs(l._m),j=hN.concatExtremes(t,l),N=j.min,H=j.max,te,oe;for(oe=0;oe<N.length;oe++)te=N[oe].val-V(N[oe])/Z,te>z&&te<g&&(g=te);for(oe=0;oe<H.length;oe++)te=H[oe].val+G(H[oe])/Z,te<O&&te>P&&(P=te);var _e=(P-g)/(2*T);f/=_e,g=l.l2r(g),P=l.l2r(P),l.range=l._input.range=x<C?[g,P]:[P,g]}Ace(l,f)}}}};_M.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};_M.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 Ace(e,t){var r=e._inputDomain,n=gft[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 wM=ye(pd=>{"use strict";var vP=Oa(),Nv=qa(),Jp=Mc(),S0=Dr(),pN=ru(),gN=vM(),xM=ka(),$3=So(),Mce=Eb(),Pce=cN(),bM=ho(),Cy=$h(),Ice=Nb(),_ft=Ice.enforce,xft=Ice.clean,Ece=Ag().doAutoRange,Rce="start",bft="middle",Dce="end",wft=hd().zindexSeparator;pd.layoutStyles=function(e){return S0.syncOrAsync([Jp.doAutoMargin,Aft],e)};function Tft(e,t,r){for(var n=0;n<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 Aft(e){var t=e._fullLayout,r=t._size,n=r.p,i=bM.list(e,"",!0),a,o,s,l,u,c;if(t._paperdiv.style({width:e._context.responsive&&t.autosize&&!e._context._hasZeroWidth&&!e.layout.width?"100%":t.width+"px",height:e._context.responsive&&t.autosize&&!e._context._hasZeroHeight&&!e.layout.height?"100%":t.height+"px"}).selectAll(".main-svg").call($3.setSize,t.width,t.height),e._context.setBackground(e,t.paper_bgcolor),pd.drawMainTitle(e),Pce.manage(e),!t._has("cartesian"))return Jp.previousPromises(e);function f(Pe,ge,Re){var ce=Pe._lw/2;if(Pe._id.charAt(0)==="x"){if(ge){if(Re==="top")return ge._offset-n-ce}else return r.t+r.h*(1-(Pe.position||0))+ce%1;return ge._offset+ge._length+n+ce}if(ge){if(Re==="right")return ge._offset+ge._length+n+ce}else return r.l+r.w*(Pe.position||0)+ce%1;return ge._offset-n-ce}for(a=0;a<i.length;a++){l=i[a];var h=l._anchorAxis;l._linepositions={},l._lw=$3.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=[],_=[],b=xM.opacity(t.paper_bgcolor)===1&&xM.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,k=s.yaxis.domain,E=s.plotgroup;if(Tft(p,k,_)&&o.indexOf(wft)===-1){var S=E.node(),L=s.bg=S0.ensureSingle(E,"rect","bg");S.insertBefore(L.node(),S.childNodes[0]),v.push(o)}else E.select("rect.bg").remove(),_.push([p,k]),b||(d.push(o),v.push(o))}var x=t._bgLayer.selectAll(".bg").data(d);for(x.enter().append("rect").classed("bg",!0),x.exit().remove(),x.each(function(Pe){t._plots[Pe].bg=vP.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($3.setRect,u._offset-n,c._offset-n,u._length+2*n,c._length+2*n).call(xM.fill,t.plot_bgcolor).style("stroke-width",0);if(!t._hasOnlyLargeSploms)for(o in t._plots){s=t._plots[o],u=s.xaxis,c=s.yaxis;var C=s.clipId="clip"+t._uid+o+"plot",M=S0.ensureSingleById(t._clips,"clipPath",C,function(Pe){Pe.classed("plotclip",!0).append("rect")});s.clipRect=M.select("rect").attr({width:u._length,height:c._length}),$3.setTranslate(s.plot,u._offset,c._offset);var g,P;s._hasClipOnAxisFalse?(g=null,P=C):(g=C,P=null),$3.setClipUrl(s.plot,g,e),s.layerClipId=P}var T,z,O,V,G,Z,j,N,H,te,oe,_e,Ee;function Ce(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"+j}function Se(Pe){return c._shift!==void 0&&(Pe+=c._shift),"M"+Pe+","+c._offset+"v"+c._length}function Le(Pe,ge,Re){if(!Pe.showline||o!==Pe._mainSubplot)return"";if(!Pe._anchorAxis)return Re(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=dP(u,"left",c,i),T=u._offset-(G?n+G:0),Z=dP(u,"right",c,i),z=u._offset+u._length+(Z?n+Z:0),O=f(u,c,"bottom"),V=f(u,c,"top"),Ee=!u._anchorAxis||o!==u._mainSubplot,Ee&&(u.mirror==="allticks"||u.mirror==="all")&&(u._linepositions[o]=[O,V]),Ae=Le(u,Ce,me),Ee&&u.showline&&(u.mirror==="all"||u.mirror==="allticks")&&(Ae+=Ce(O)+Ce(V)),s.xlines.style("stroke-width",u._lw+"px").call(xM.stroke,u.showline?u.linecolor:"rgba(0,0,0,0)")),s.xlines.attr("d",Ae);var Fe="M0,0";kce(c,o)&&(oe=dP(c,"bottom",u,i),j=c._offset+c._length+(oe?n:0),_e=dP(c,"top",u,i),N=c._offset-(_e?n:0),H=f(c,u,"left"),te=f(c,u,"right"),Ee=!c._anchorAxis||o!==c._mainSubplot,Ee&&(c.mirror==="allticks"||c.mirror==="all")&&(c._linepositions[o]=[H,te]),Fe=Le(c,ie,Se),Ee&&c.showline&&(c.mirror==="all"||c.mirror==="allticks")&&(Fe+=ie(H)+ie(te)),s.ylines.style("stroke-width",c._lw+"px").call(xM.stroke,c.showline?c.linecolor:"rgba(0,0,0,0)")),s.ylines.attr("d",Fe)}return bM.makeClipPaths(e),Jp.previousPromises(e)}function kce(e,t){return(e.ticks||e.showline)&&(t===e._mainSubplot||e.mirror==="all"||e.mirror==="allticks")}function Cce(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 dP(e,t,r,n){if(Cce(e,t,r))return r._lw;for(var i=0;i<n.length;i++){var a=n[i];if(a._mainAxis===r._mainAxis&&Cce(e,t,a))return a._lw}return 0}pd.drawMainTitle=function(e){var t=e._fullLayout.title,r=e._fullLayout,n=Pft(r),i=Ift(r),a=Lft(r,i),o=Cft(r,n);if(Mce.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=vP.select(e).selectAll(".gtitle"),l=$3.bBox(vP.select(e).selectAll(".g-gtitle").node()).height,u=Eft(e,t,l);if(u>0){kft(e,a,u,l),s.attr({x:o,y:a,"text-anchor":n,dy:Lce(t.yanchor)}).call(pN.positionText,o,a);var c=(t.text.match(pN.BR_TAG_ALL)||[]).length;if(c){var f=Cy.LINE_SPACING*c+Cy.MID_SHIFT;t.y===0&&(f=-f),s.selectAll(".line").each(function(){var b=+this.getAttribute("dy").slice(0,-2)-f+"em";this.setAttribute("dy",b)})}var h=vP.select(e).selectAll(".gtitle-subtitle");if(h.node()){var d=s.node().getBBox(),v=d.y+d.height,_=v+Mce.SUBTITLE_PADDING_EM*t.subtitle.font.size;h.attr({x:o,y:_,"text-anchor":n,dy:Lce(t.yanchor)}).call(pN.positionText,o,_)}}}};function Sft(e,t,r,n,i){var a=t.yref==="paper"?e._fullLayout._size.h:e._fullLayout.height,o=S0.isTopAnchor(t)?n:n-i,s=r==="b"?a-o:o;return S0.isTopAnchor(t)&&r==="t"||S0.isBottomAnchor(t)&&r==="b"?!1:s<i}function Mft(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 Eft(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=Mft(a,n,i,e._fullLayout.height,r)+t.pad.t+t.pad.b),s>o?s:0}function kft(e,t,r,n){var i="title.automargin",a=e._fullLayout.title,o=a.y>.5?"t":"b",s={x:a.x,y:a.y,t:0,b:0},l={};a.yref==="paper"&&Sft(e,a,o,t,n)?s[o]=r:a.yref==="container"&&(l[o]=r,e._fullLayout._reservedMargin[i]=l),Jp.allowAutoMargin(e,i),Jp.autoMargin(e,i,s)}function Cft(e,t){var r=e.title,n=e._size,i=0;switch(t===Rce?i=r.pad.l:t===Dce&&(i=-r.pad.r),r.xref){case"paper":return n.l+n.w*r.x+i;case"container":default:return e.width*r.x+i}}function Lft(e,t){var r=e.title,n=e._size,i=0;if(t==="0em"||!t?i=-r.pad.b:t===Cy.CAP_SHIFT+"em"&&(i=r.pad.t),r.y==="auto")return n.t/2;switch(r.yref){case"paper":return n.t+n.h-n.h*r.y+i;case"container":default:return e.height-e.height*r.y+i}}function Lce(e){return e==="top"?Cy.CAP_SHIFT+.3+"em":e==="bottom"?"-0.3em":Cy.MID_SHIFT+"em"}function Pft(e){var t=e.title,r=bft;return S0.isRightAnchor(t)?r=Dce:S0.isLeftAnchor(t)&&(r=Rce),r}function Ift(e){var t=e.title,r="0em";return S0.isTopAnchor(t)?r=Cy.CAP_SHIFT+"em":S0.isMiddleAnchor(t)&&(r=Cy.MID_SHIFT+"em"),r}pd.doTraceStyle=function(e){var t=e.calcdata,r=[],n;for(n=0;n<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)}gN(e),pd.redrawReglTraces(e)}return Jp.style(e),Nv.getComponentMethod("legend","draw")(e),Jp.previousPromises(e)};pd.doColorBars=function(e){return Nv.getComponentMethod("colorbar","draw")(e),Jp.previousPromises(e)};pd.layoutReplot=function(e){var t=e.layout;return e.layout=void 0,Nv.call("_doPlot",e,"",t)};pd.doLegend=function(e){return Nv.getComponentMethod("legend","draw")(e),Jp.previousPromises(e)};pd.doTicksRelayout=function(e){return bM.draw(e,"redraw"),e._fullLayout._hasOnlyLargeSploms&&(Nv.subplotsRegistry.splom.updateGrid(e),gN(e),pd.redrawReglTraces(e)),pd.drawMainTitle(e),Jp.previousPromises(e)};pd.doModeBar=function(e){var t=e._fullLayout;Pce.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;gN(e);for(var r=t._basePlotModules,n=0;n<r.length;n++)r[n].plot(e);return pd.redrawReglTraces(e),Jp.style(e),Nv.getComponentMethod("selections","draw")(e),Nv.getComponentMethod("shapes","draw")(e),Nv.getComponentMethod("annotations","draw")(e),Nv.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"?S0.pushUnique(n,s.xaxis+s.yaxis):s.type==="scatterpolargl"&&S0.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=bM.list(e,"",!0),r,n={},i=0;i<t.length;i++)if(r=t[i],!n[r._id]){n[r._id]=1,xft(e,r),Ece(e,r);var a=r._matchGroup;if(a)for(var o in a){var s=bM.getFromId(e,o);Ece(e,s,r.range),n[o]=1}}_ft(e)};pd.finalDraw=function(e){Nv.getComponentMethod("rangeslider","draw")(e),Nv.getComponentMethod("rangeselector","draw")(e)};pd.drawMarginPushers=function(e){Nv.getComponentMethod("legend","draw")(e),Nv.getComponentMethod("rangeselector","draw")(e),Nv.getComponentMethod("sliders","draw")(e),Nv.getComponentMethod("updatemenus","draw")(e),Nv.getComponentMethod("colorbar","draw")(e)}});var _N=ye((Zar,Bce)=>{"use strict";var Rft=u_().readPaths,Dft=nP(),Fce=Q1().clearOutlineControllers,mN=ka(),zce=So(),Fft=vl().arrayEditor,Oce=f_(),zft=Oce.getPathString;Bce.exports={draw:pP,drawOne:qce,activateLastSelection:Bft};function pP(e){var t=e._fullLayout;Fce(e),t._selectionLayer.selectAll("path").remove();for(var r in t._plots){var n=t._plots[r].selectionLayer;n&&n.selectAll("path").remove()}for(var i=0;i<t.selections.length;i++)qce(e,i)}function gP(e){return e._context.editSelection}function qce(e,t){e._fullLayout._paperdiv.selectAll('.selectionlayer [data-index="'+t+'"]').remove();var r=Oce.makeSelectionsOptionsAndPlotinfo(e,t),n=r.options,i=r.plotinfo;if(!n._input)return;a(e._fullLayout._selectionLayer);function a(o){var s=zft(e,n),l={"data-index":t,"fill-rule":"evenodd",d:s},u=n.opacity,c="rgba(0,0,0,0)",f=n.line.color||mN.contrast(e._fullLayout.plot_bgcolor),h=n.line.width,d=n.line.dash;h||(h=5,d="solid");var v=gP(e)&&e._fullLayout._activeSelectionIndex===t;v&&(c=e._fullLayout.activeselection.fillcolor,u=e._fullLayout.activeselection.opacity);for(var _=[],b=1;b>=0;b--){var p=o.append("path").attr(l).style("opacity",b?.1:u).call(mN.stroke,f).call(mN.fill,c).call(zce.dashLine,b?"solid":d,b?4+h:h);if(Oft(p,e,n),v){var k=Fft(e.layout,"selections",n);p.style({cursor:"move"});var E={element:p.node(),plotinfo:i,gd:e,editHelpers:k,isActiveSelection:!0},S=Rft(s,e);Dft(S,p,E)}else p.style("pointer-events",b?"all":"none");_[b]=p}var L=_[0],x=_[1];x.node().addEventListener("click",function(){return qft(e,L)})}}function Oft(e,t,r){var n=r.xref+r.yref;zce.setClipUrl(e,"clip"+t._fullLayout._uid+n,t)}function qft(e,t){if(gP(e)){var r=t.node(),n=+r.getAttribute("data-index");if(n>=0){if(n===e._fullLayout._activeSelectionIndex){yN(e);return}e._fullLayout._activeSelectionIndex=n,e._fullLayout._deactivateSelection=yN,pP(e)}}}function Bft(e){if(gP(e)){var t=e._fullLayout.selections.length-1;e._fullLayout._activeSelectionIndex=t,e._fullLayout._deactivateSelection=yN,pP(e)}}function yN(e){if(gP(e)){var t=e._fullLayout._activeSelectionIndex;t>=0&&(Fce(e),delete e._fullLayout._activeSelectionIndex,pP(e))}}});var Uce=ye((Yar,Nce)=>{function Nft(){var e,t=0,r=!1;function n(i,a){return e.list.push({type:i,data:a?JSON.parse(JSON.stringify(a)):void 0}),e}return e={list:[],segmentId:function(){return t++},checkIntersection:function(i,a){return n("check",{seg1:i,seg2:a})},segmentChop:function(i,a){return n("div_seg",{seg:i,pt:a}),n("chop",{seg:i,pt:a})},statusRemove:function(i){return n("pop_seg",{seg:i})},segmentUpdate:function(i){return n("seg_update",{seg:i})},segmentNew:function(i,a){return n("new_seg",{seg:i,primary:a})},segmentRemove:function(i){return n("rem_seg",{seg:i})},tempStatus:function(i,a,o){return n("temp_status",{seg:i,above:a,below:o})},rewind:function(i){return n("rewind",{seg:i})},status:function(i,a,o){return n("status",{seg:i,above:a,below:o})},vert:function(i){return i===r?e:(r=i,n("vert",{x:i}))},log:function(i){return typeof i!="string"&&(i=JSON.stringify(i,!1," ")),n("log",{txt:i})},reset:function(){return n("reset")},selected:function(i){return n("selected",{segs:i})},chainStart:function(i){return n("chain_start",{seg:i})},chainRemoveHead:function(i,a){return n("chain_rem_head",{index:i,pt:a})},chainRemoveTail:function(i,a){return n("chain_rem_tail",{index:i,pt:a})},chainNew:function(i,a){return n("chain_new",{pt1:i,pt2:a})},chainMatch:function(i){return n("chain_match",{index:i})},chainClose:function(i){return n("chain_close",{index:i})},chainAddHead:function(i,a){return n("chain_add_head",{index:i,pt:a})},chainAddTail:function(i,a){return n("chain_add_tail",{index:i,pt:a})},chainConnect:function(i,a){return n("chain_con",{index1:i,index2:a})},chainReverse:function(i){return n("chain_rev",{index:i})},chainJoin:function(i,a){return n("chain_join",{index1:i,index2:a})},done:function(){return n("done")}},e}Nce.exports=Nft});var Gce=ye((Kar,Vce)=>{function Uft(e){typeof e!="number"&&(e=1e-10);var t={epsilon:function(r){return typeof r=="number"&&(e=r),e},pointAboveOrOnLine:function(r,n,i){var a=n[0],o=n[1],s=i[0],l=i[1],u=r[0],c=r[1];return(s-a)*(c-o)-(l-o)*(u-a)>=-e},pointBetween:function(r,n,i){var a=r[1]-n[1],o=i[0]-n[0],s=r[0]-n[0],l=i[1]-n[1],u=s*o+a*l;if(u<e)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,_={alongA:0,alongB:0,pt:[r[0]+d*o,r[1]+d*s]};return d<=-e?_.alongA=-2:d<e?_.alongA=-1:d-1<=-e?_.alongA=0:d-1<e?_.alongA=1:_.alongA=2,v<=-e?_.alongB=-2:v<e?_.alongB=-1:v-1<=-e?_.alongB=0:v-1<e?_.alongB=1:_.alongB=2,_},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}Vce.exports=Uft});var jce=ye((Jar,Hce)=>{var Vft={create:function(){var e={root:{root:!0,next:null},exists:function(t){return!(t===null||t===e.root)},isEmpty:function(){return e.root.next===null},getHead:function(){return e.root.next},insertBefore:function(t,r){for(var n=e.root,i=e.root.next;i!==null;){if(r(i)){t.prev=i.prev,t.next=i,i.prev.next=t,i.prev=t;return}n=i,i=i.next}n.next=t,t.prev=n,t.next=null},findTransition:function(t){for(var r=e.root,n=e.root.next;n!==null&&!t(n);)r=n,n=n.next;return{before:r===e.root?null:r,after:n,insert:function(i){return i.prev=r,i.next=n,r.next=i,n!==null&&(n.prev=i),i}}}};return e},node:function(e){return e.prev=null,e.next=null,e.remove=function(){e.prev.next=e.next,e.next&&(e.next.prev=e.prev),e.prev=null,e.next=null},e}};Hce.exports=Vft});var Xce=ye(($ar,Wce)=>{var TM=jce();function Gft(e,t,r){function n(v,_){return{id:r?r.segmentId():-1,start:v,end:_,myFill:{above:null,below:null},otherFill:null}}function i(v,_,b){return{id:r?r.segmentId():-1,start:v,end:_,myFill:{above:b.myFill.above,below:b.myFill.below},otherFill:null}}var a=TM.create();function o(v,_,b,p,k,E){var S=t.pointsCompare(_,k);return S!==0?S:t.pointsSame(b,E)?0:v!==p?v?1:-1:t.pointAboveOrOnLine(b,p?k:E,p?E:k)?1:-1}function s(v,_){a.insertBefore(v,function(b){var p=o(v.isStart,v.pt,_,b.isStart,b.pt,b.other.pt);return p<0})}function l(v,_){var b=TM.node({isStart:!0,pt:v.start,seg:v,primary:_,other:null,status:null});return s(b,v.end),b}function u(v,_,b){var p=TM.node({isStart:!1,pt:_.end,seg:_,primary:b,other:v,status:null});v.other=p,s(p,v.pt)}function c(v,_){var b=l(v,_);return u(b,v,_),b}function f(v,_){r&&r.segmentChop(v.seg,_),v.other.remove(),v.seg.end=_,v.other.pt=_,s(v.other,v.pt)}function h(v,_){var b=i(_,v.seg.end,v.seg);return f(v,_),c(b,v.primary)}function d(v,_){var b=TM.create();function p(G,Z){var j=G.seg.start,N=G.seg.end,H=Z.seg.start,te=Z.seg.end;return t.pointsCollinear(j,H,te)?t.pointsCollinear(N,H,te)||t.pointAboveOrOnLine(N,H,te)?1:-1:t.pointAboveOrOnLine(j,H,te)?1:-1}function k(G){return b.findTransition(function(Z){var j=p(G,Z.ev);return j>0})}function E(G,Z){var j=G.seg,N=Z.seg,H=j.start,te=j.end,oe=N.start,_e=N.end;r&&r.checkIntersection(j,N);var Ee=t.linesIntersect(H,te,oe,_e);if(Ee===!1){if(!t.pointsCollinear(H,te,oe)||t.pointsSame(H,_e)||t.pointsSame(te,oe))return!1;var Ce=t.pointsSame(H,oe),me=t.pointsSame(te,_e);if(Ce&&me)return Z;var ie=!Ce&&t.pointBetween(H,oe,_e),Se=!me&&t.pointBetween(te,oe,_e);if(Ce)return Se?h(Z,te):h(G,_e),Z;ie&&(me||(Se?h(Z,te):h(G,_e)),h(Z,H))}else Ee.alongA===0&&(Ee.alongB===-1?h(G,oe):Ee.alongB===0?h(G,Ee.pt):Ee.alongB===1&&h(G,_e)),Ee.alongB===0&&(Ee.alongA===-1?h(Z,H):Ee.alongA===0?h(Z,Ee.pt):Ee.alongA===1&&h(Z,te));return!1}for(var S=[];!a.isEmpty();){var L=a.getHead();if(r&&r.vert(L.pt[0]),L.isStart){let G=function(){if(C){var Z=E(L,C);if(Z)return Z}return M?E(L,M):!1};var V=G;r&&r.segmentNew(L.seg,L.primary);var x=k(L),C=x.before?x.before.ev:null,M=x.after?x.after.ev:null;r&&r.tempStatus(L.seg,C?C.seg:!1,M?M.seg:!1);var g=G();if(g){if(e){var P;L.seg.myFill.below===null?P=!0:P=L.seg.myFill.above!==L.seg.myFill.below,P&&(g.seg.myFill.above=!g.seg.myFill.above)}else g.seg.otherFill=L.seg.myFill;r&&r.segmentUpdate(g.seg),L.other.remove(),L.remove()}if(a.getHead()!==L){r&&r.rewind(L.seg);continue}if(e){var P;L.seg.myFill.below===null?P=!0:P=L.seg.myFill.above!==L.seg.myFill.below,M?L.seg.myFill.below=M.seg.myFill.above:L.seg.myFill.below=v,P?L.seg.myFill.above=!L.seg.myFill.below:L.seg.myFill.above=L.seg.myFill.below}else if(L.seg.otherFill===null){var T;M?L.primary===M.primary?T=M.seg.otherFill.above:T=M.seg.myFill.above:T=L.primary?_:v,L.seg.otherFill={above:T,below:T}}r&&r.status(L.seg,C?C.seg:!1,M?M.seg:!1),L.other.status=x.insert(TM.node({ev:L}))}else{var z=L.status;if(z===null)throw new Error("PolyBool: Zero-length segment detected; your epsilon is probably too small or too large");if(b.exists(z.prev)&&b.exists(z.next)&&E(z.prev.ev,z.next.ev),r&&r.statusRemove(z.ev.seg),z.remove(),!L.primary){var O=L.seg.myFill;L.seg.myFill=L.seg.otherFill,L.seg.otherFill=O}S.push(L.seg)}a.getHead().remove()}return r&&r.done(),S}return e?{addRegion:function(v){for(var _,b=v[v.length-1],p=0;p<v.length;p++){_=b,b=v[p];var k=t.pointsCompare(_,b);k!==0&&c(n(k<0?_:b,k<0?b:_),!0)}},calculate:function(v){return d(v,!1)}}:{calculate:function(v,_,b,p){return v.forEach(function(k){c(i(k.start,k.end,k),!0)}),b.forEach(function(k){c(i(k.start,k.end,k),!1)}),d(_,p)}}}Wce.exports=Gft});var Yce=ye((Qar,Zce)=>{function Hft(e,t,r){var n=[],i=[];return e.forEach(function(a){var o=a.start,s=a.end;if(t.pointsSame(o,s)){console.warn("PolyBool: Warning: Zero-length segment detected; your epsilon is probably too small or too large");return}r&&r.chainStart(a);var l={index:0,matches_head:!1,matches_pt1:!1},u={index:0,matches_head:!1,matches_pt1:!1},c=l;function f(V,G,Z){return c.index=V,c.matches_head=G,c.matches_pt1=Z,c===l?(c=u,!1):(c=null,!0)}for(var h=0;h<n.length;h++){var d=n[h],v=d[0],_=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 k=l.index,E=l.matches_pt1?s:o,S=l.matches_head,d=n[k],L=S?d[0]:d[d.length-1],x=S?d[1]:d[d.length-2],C=S?d[d.length-1]:d[0],M=S?d[d.length-2]:d[1];if(t.pointsCollinear(x,L,E)&&(S?(r&&r.chainRemoveHead(l.index,E),d.shift()):(r&&r.chainRemoveTail(l.index,E),d.pop()),L=x),t.pointsSame(C,E)){n.splice(k,1),t.pointsCollinear(M,C,L)&&(S?(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}S?(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],j=n[G],N=Z[Z.length-1],H=Z[Z.length-2],te=j[0],oe=j[1];t.pointsCollinear(H,N,te)&&(r&&r.chainRemoveTail(V,N),Z.pop(),N=H),t.pointsCollinear(N,te,oe)&&(r&&r.chainRemoveHead(G,te),j.shift()),r&&r.chainJoin(V,G),n[V]=Z.concat(j),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}Zce.exports=Hft});var Jce=ye((eor,Kce)=>{function AM(e,t,r){var n=[];return e.forEach(function(i){var a=(i.myFill.above?8:0)+(i.myFill.below?4:0)+(i.otherFill&&i.otherFill.above?2:0)+(i.otherFill&&i.otherFill.below?1:0);t[a]!==0&&n.push({id:r?r.segmentId():-1,start:i.start,end:i.end,myFill:{above:t[a]===1,below:t[a]===2},otherFill:null})}),r&&r.selected(n),n}var jft={union:function(e,t){return AM(e,[0,2,1,0,2,2,0,0,1,0,1,0,0,0,0,0],t)},intersect:function(e,t){return AM(e,[0,0,0,0,0,2,0,2,0,0,1,1,0,2,1,0],t)},difference:function(e,t){return AM(e,[0,0,0,0,2,0,2,0,1,1,0,0,0,1,2,0],t)},differenceRev:function(e,t){return AM(e,[0,2,1,0,0,0,1,1,0,2,0,2,0,0,0,0],t)},xor:function(e,t){return AM(e,[0,2,1,0,2,0,0,1,1,0,0,2,0,1,2,0],t)}};Kce.exports=jft});var Qce=ye((tor,$ce)=>{var Wft={toPolygon:function(e,t){function r(a){if(a.length<=0)return e.segments({inverted:!1,regions:[]});function o(u){var c=u.slice(0,u.length-1);return e.segments({inverted:!1,regions:[c]})}for(var s=o(a[0]),l=1;l<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 _=0;_<d.children.length;_++){var b=d.children[_];if(n(v,b.region)){o(b,v);return}}for(var p=i(v),_=0;_<d.children.length;_++){var b=d.children[_];n(b.region,v)&&(p.children.push(b),d.children.splice(_,1),_--)}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 _=0,b=d[d.length-1][0],p=d[d.length-1][1],k=[],E=0;E<d.length;E++){var S=d[E][0],L=d[E][1];k.push([S,L]),_+=L*b-S*p,b=S,p=L}var x=_<0;return x!==v&&k.reverse(),k.push([k[0][0],k[0][1]]),k}var c=[];function f(d){var v=[u(d.region,!1)];c.push(v);for(var _=0;_<d.children.length;_++)v.push(h(d.children[_]))}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}}};$ce.exports=Wft});var ife=ye((ror,rfe)=>{var Xft=Uce(),Zft=Gce(),efe=Xce(),Yft=Yce(),SM=Jce(),tfe=Qce(),M0=!1,MM=Zft(),kp;kp={buildLog:function(e){return e===!0?M0=Xft():e===!1&&(M0=!1),M0===!1?!1:M0.list},epsilon:function(e){return MM.epsilon(e)},segments:function(e){var t=efe(!0,MM,M0);return e.regions.forEach(t.addRegion),{segments:t.calculate(e.inverted),inverted:e.inverted}},combine:function(e,t){var r=efe(!1,MM,M0);return{combined:r.calculate(e.segments,e.inverted,t.segments,t.inverted),inverted1:e.inverted,inverted2:t.inverted}},selectUnion:function(e){return{segments:SM.union(e.combined,M0),inverted:e.inverted1||e.inverted2}},selectIntersect:function(e){return{segments:SM.intersect(e.combined,M0),inverted:e.inverted1&&e.inverted2}},selectDifference:function(e){return{segments:SM.difference(e.combined,M0),inverted:e.inverted1&&!e.inverted2}},selectDifferenceRev:function(e){return{segments:SM.differenceRev(e.combined,M0),inverted:!e.inverted1&&e.inverted2}},selectXor:function(e){return{segments:SM.xor(e.combined,M0),inverted:e.inverted1!==e.inverted2}},polygon:function(e){return{regions:Yft(e.segments,MM,M0),inverted:e.inverted}},polygonFromGeoJSON:function(e){return tfe.toPolygon(kp,e)},polygonToGeoJSON:function(e){return tfe.fromPolygon(kp,MM,e)},union:function(e,t){return EM(e,t,kp.selectUnion)},intersect:function(e,t){return EM(e,t,kp.selectIntersect)},difference:function(e,t){return EM(e,t,kp.selectDifference)},differenceRev:function(e,t){return EM(e,t,kp.selectDifferenceRev)},xor:function(e,t){return EM(e,t,kp.selectXor)}};function EM(e,t,r){var n=kp.segments(e),i=kp.segments(t),a=kp.combine(n,i),o=r(a);return kp.polygon(o)}typeof window=="object"&&(window.PolyBool=kp);rfe.exports=kp});var afe=ye((ior,nfe)=>{nfe.exports=function(t,r,n,i){var a=t[0],o=t[1],s=!1;n===void 0&&(n=0),i===void 0&&(i=r.length);for(var l=i-n,u=0,c=l-1;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],_=h>o!=v>o&&a<(d-f)*(o-h)/(v-h)+f;_&&(s=!s)}return s}});var kM=ye((nor,ofe)=>{"use strict";var xN=T6().dot,mP=fs().BADNUM,yP=ofe.exports={};yP.tester=function(t){var r=t.slice(),n=r[0][0],i=n,a=r[0][1],o=a,s;for((r[r.length-1][0]!==r[0][0]||r[r.length-1][1]!==r[0][1])&&r.push(r[0]),s=1;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,_){var b=v[0],p=v[1];return!(b===mP||b<n||b>i||p===mP||p<a||p>o||_&&u(v))}function f(v,_){var b=v[0],p=v[1];if(b===mP||b<n||b>i||p===mP||p<a||p>o)return!1;var k=r.length,E=r[0][0],S=r[0][1],L=0,x,C,M,g,P;for(x=1;x<k;x++)if(C=E,M=S,E=r[x][0],S=r[x][1],g=Math.min(C,E),!(b<g||b>Math.max(C,E)||p>Math.max(M,S)))if(p<Math.min(M,S))b!==g&&L++;else{if(E===C?P=p:P=M+(b-C)*(S-M)/(E-C),p===P)return!(x===1&&_);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}};yP.isSegmentBent=function(t,r,n,i){var a=t[r],o=[t[n][0]-a[0],t[n][1]-a[1]],s=xN(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=xN(f,o),h<0||h>s||Math.abs(xN(f,u))>i)return!0;return!1};yP.filter=function(t,r){var n=[t[0]],i=0,a=0;function o(l){t.push(l);var u=n.length,c=i;n.splice(a+1);for(var f=c+1;f<t.length;f++)(f===t.length-1||yP.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 lfe=ye((aor,sfe)=>{"use strict";sfe.exports={BENDPX:1.5,MINSELECT:12,SELECTDELAY:100,SELECTID:"-select"}});var Lfe=ye((oor,Cfe)=>{"use strict";var ufe=ife(),Kft=afe(),PM=qa(),Jft=So().dashStyle,CM=ka(),$ft=vf(),Qft=ip().makeEventData,zM=Eg(),eht=zM.freeMode,tht=zM.rectMode,IM=zM.drawMode,AN=zM.openMode,SN=zM.selectMode,cfe=f_(),ffe=gM(),gfe=nP(),mfe=Q1().clearOutline,yfe=u_(),bN=yfe.handleEllipse,rht=yfe.readPaths,iht=eP().newShapes,nht=ZB(),aht=_N().activateLastSelection,xP=Dr(),oht=xP.sorterAsc,_fe=kM(),LM=z6(),E0=hf().getFromId,sht=vM(),lht=wM().redrawReglTraces,bP=lfe(),Am=bP.MINSELECT,uht=_fe.filter,MN=_fe.tester,EN=KL(),hfe=EN.p2r,cht=EN.axValue,fht=EN.getTransform;function kN(e){return e.subplot!==void 0}function hht(e,t,r,n,i){var a=!kN(n),o=eht(i),s=tht(i),l=AN(i),u=IM(i),c=SN(i),f=i==="drawline",h=i==="drawcircle",d=f||h,v=n.gd,_=v._fullLayout,b=c&&_.newselection.mode==="immediate"&&a,p=_._zoomlayer,k=n.element.getBoundingClientRect(),E=n.plotinfo,S=fht(E),L=t-k.left,x=r-k.top;_._calcInverseTransform(v);var C=xP.apply3DTransform(_._invTransform)(L,x);L=C[0],x=C[1];var M=_._invScaleX,g=_._invScaleY,P=L,T=x,z="M"+L+","+x,O=n.xaxes[0],V=n.yaxes[0],G=O._length,Z=V._length,j=e.altKey&&!(IM(i)&&l),N,H,te,oe,_e,Ee,Ce;bfe(e,v,n),o&&(N=uht([[L,x]],bP.BENDPX));var me=p.selectAll("path.select-outline-"+E.id).data([1]),ie=u?_.newshape:_.newselection;u&&(n.hasText=ie.label.text||ie.label.texttemplate);var Se=u&&!l?ie.fillcolor:"rgba(0,0,0,0)",Le=ie.line.color||(a?CM.contrast(v._fullLayout.plot_bgcolor):"#7f7f7f");me.enter().append("path").attr("class","select-outline select-outline-"+E.id).style({opacity:u?ie.opacity/2:1,"stroke-dasharray":Jft(ie.line.dash,ie.line.width),"stroke-width":ie.line.width+"px","shape-rendering":"crispEdges"}).call(CM.stroke,Le).call(CM.fill,Se).attr("fill-rule","evenodd").classed("cursor-move",!!u).attr("transform",S).attr("d",z+"Z");var Ae=p.append("path").attr("class","zoombox-corners").style({fill:CM.background,stroke:CM.defaultLine,"stroke-width":1}).attr("transform",S).attr("d","M0,0Z");if(u&&n.hasText){var Fe=p.select(".label-temp");Fe.empty()&&(Fe=p.append("g").classed("label-temp",!0).classed("select-outline",!0).style({opacity:.8}))}var Pe=_._uid+bP.SELECTID,ge=[],Re=wP(v,n.xaxes,n.yaxes,n.subplot);b&&!e.shiftKey&&(n._clearSubplotSelections=function(){if(a){var Ze=O._id,ut=V._id;Mfe(v,Ze,ut,Re);for(var pt=(v.layout||{}).selections||[],Zt=[],st=!1,lt=0;lt<pt.length;lt++){var Gt=_.selections[lt];!Gt||Gt.xref!==Ze||Gt.yref!==ut?Zt.push(pt[lt]):st=!0}st&&(v._fullLayout._noEmitSelectedAtStart=!0,PM.call("_guiRelayout",v,{selections:Zt}))}});var ce=Mht(n);n.moveFn=function(Ze,ut){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*ut+x));var pt=Math.abs(P-L),Zt=Math.abs(T-x);if(s){var st,lt,Gt;if(c){var Nt=_.selectdirection;switch(Nt==="any"?Zt<Math.min(pt*.6,Am)?st="h":pt<Math.min(Zt*.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(_.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<Zt?(st="h",lt=x,Gt=T):(st="v",lt=L,Gt=P);break;default:st="d"}st==="h"?(oe=d?bN(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+","+(x-Am)+"h-4v"+2*Am+"h4ZM"+(oe.xmax-1)+","+(x-Am)+"h4v"+2*Am+"h-4Z")):st==="v"?(oe=d?bN(h,[lt,T],[Gt,T]):[[lt,x],[lt,T],[Gt,T],[Gt,x]],oe.xmin=Math.min(lt,Gt),oe.xmax=Math.max(lt,Gt),oe.ymin=d?T:Math.min(x,T),oe.ymax=d?T:Math.max(x,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?bN(h,[L,x],[P,T]):[[L,x],[L,T],[P,T],[P,x]],oe.xmin=Math.min(L,P),oe.xmax=Math.max(L,P),oe.ymin=Math.min(x,T),oe.ymax=Math.max(x,T),Ae.attr("d","M0,0Z"))}else o&&(N.addPt([P,T]),oe=N.filtered);if(n.selectionDefs&&n.selectionDefs.length?(te=wfe(n.mergedPolygons,oe,j),oe.subtract=j,H=CN(n.selectionDefs.concat([oe]))):(te=[oe],H=MN(oe)),gfe(Afe(te,l),me,n),c){var Jt=TN(v,!1),sr=Jt.eventData?Jt.eventData.points.slice():[];Jt=TN(v,!1,H,Re,n),H=Jt.selectionTesters,Ce=Jt.eventData;var wr;N?wr=N.filtered:wr=Efe(te),LM.throttle(Pe,bP.SELECTDELAY,function(){ge=Sfe(H,Re);for(var cr=ge.slice(),$e=0;$e<sr.length;$e++){for(var St=sr[$e],Qt=!1,Vt=0;Vt<cr.length;Vt++)if(cr[Vt].curveNumber===St.curveNumber&&cr[Vt].pointNumber===St.pointNumber){Qt=!0;break}Qt||cr.push(St)}cr.length&&(Ce||(Ce={}),Ce.points=cr),ce(Ce,wr),Eht(v,Ce)})}},n.clickFn=function(Ze,ut){if(Ae.remove(),v._fullLayout._activeShapeIndex>=0){v._fullLayout._deactivateShape(v);return}if(!u){var pt=_.clickmode;LM.done(Pe).then(function(){if(LM.clear(Pe),Ze===2){for(me.remove(),_e=0;_e<Re.length;_e++)Ee=Re[_e],Ee._module.selectPoints(Ee,!1);if(DM(v,Re),RM(n),PN(v),Re.length){var Zt=Re[0].xaxis,st=Re[0].yaxis;if(Zt&&st){for(var lt=[],Gt=v._fullLayout.selections,Nt=0;Nt<Gt.length;Nt++){var Jt=Gt[Nt];Jt&&(Jt.xref!==Zt._id||Jt.yref!==st._id)&&lt.push(Jt)}lt.length<Gt.length&&(v._fullLayout._noEmitSelectedAtStart=!0,PM.call("_guiRelayout",v,{selections:lt}))}}}else pt.indexOf("select")>-1&&xfe(ut,v,n.xaxes,n.yaxes,n.subplot,n,me),pt==="event"&&FM(v,void 0);$ft.click(v,ut,E.id)}).catch(xP.error)}},n.doneFn=function(){Ae.remove(),LM.done(Pe).then(function(){LM.clear(Pe),!b&&oe&&n.selectionDefs&&(oe.subtract=j,n.selectionDefs.push(oe),n.mergedPolygons.length=0,[].push.apply(n.mergedPolygons,te)),(b||u)&&RM(n,b),n.doneFnCompleted&&n.doneFnCompleted(ge),c&&FM(v,Ce)}).catch(xP.error)}}function xfe(e,t,r,n,i,a,o){var s=t._hoverdata,l=t._fullLayout,u=l.clickmode,c=u.indexOf("event")>-1,f=[],h,d,v,_,b,p,k,E,S,L;if(mht(s)){bfe(e,t,a),h=wP(t,r,n,i);var x=yht(s,h),C=x.pointNumbers.length>0;if(C?_ht(h,x):xht(h)&&(k=vfe(x))){for(o&&o.remove(),L=0;L<h.length;L++)d=h[L],d._module.selectPoints(d,!1);DM(t,h),RM(a),c&&PN(t)}else{E=e.shiftKey&&(k!==void 0?k:vfe(x)),v=dht(x.pointNumber,x.searchInfo,E);var M=a.selectionDefs.concat([v]);for(_=CN(M,_),L=0;L<h.length;L++)if(b=h[L]._module.selectPoints(h[L],_),p=Tfe(b,h[L]),f.length)for(var g=0;g<p.length;g++)f.push(p[g]);else f=p;if(S={points:f},DM(t,h,S),v&&a&&a.selectionDefs.push(v),o){var P=a.mergedPolygons,T=AN(a.dragmode);gfe(Afe(P,T),o,a)}c&&FM(t,S)}}}function dht(e,t,r){return{pointNumber:e,searchInfo:t,subtract:!!r}}function wN(e){return"pointNumber"in e&&"searchInfo"in e}function vht(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 CN(e){if(!e.length)return;for(var t=[],r=wN(e[0])?0:e[0][0][0],n=r,i=wN(e[0])?0:e[0][0][1],a=i,o=0;o<e.length;o++)if(wN(e[o]))t.push(vht(e[o]));else{var s=MN(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 bfe(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)&&!(IM(a)&&AN(a));o&&s&&i.selection&&i.selection.selectionDefs&&!r.selectionDefs?(r.selectionDefs=i.selection.selectionDefs,r.mergedPolygons=i.selection.mergedPolygons):(!s||!i.selection)&&RM(r),o||(mfe(t),n._lastSelectedSubplot=i.id)}function pht(e){return e._fullLayout._activeShapeIndex>=0}function ght(e){return e._fullLayout._activeSelectionIndex>=0}function RM(e,t){var r=e.dragmode,n=e.plotinfo,i=e.gd;pht(i)&&i._fullLayout._deactivateShape(i),ght(i)&&i._fullLayout._deactivateSelection(i);var a=i._fullLayout,o=a._zoomlayer,s=IM(r),l=SN(r);if(s||l){var u=o.selectAll(".select-outline-"+n.id);if(u&&i._fullLayout._outlining){var c;s&&(c=iht(u,e)),c&&PM.call("_guiRelayout",i,{shapes:c});var f;l&&!kN(e)&&(f=nht(u,e)),f&&(i._fullLayout._noEmitSelectedAtStart=!0,PM.call("_guiRelayout",i,{selections:f}).then(function(){t&&aht(i)})),i._fullLayout._outlining=!1}}n.selection={},n.selection.selectionDefs=e.selectionDefs=[],n.selection.mergedPolygons=e.mergedPolygons=[]}function dfe(e){return e._id}function wP(e,t,r,n){if(!e.calcdata)return[];var i=[],a=t.map(dfe),o=r.map(dfe),s,l,u;for(u=0;u<e.calcdata.length;u++)if(s=e.calcdata[u],l=s[0].trace,!(l.visible!==!0||!l._module||!l._module.selectPoints))if(kN({subplot:n})&&(l.subplot===n||l.geo===n))i.push(_P(l._module,s,t[0],r[0]));else if(l.type==="splom"){if(l._xaxes[a[0]]&&l._yaxes[o[0]]){var c=_P(l._module,s,t[0],r[0]);c.scene=e._fullLayout._splomScenes[l.uid],i.push(c)}}else if(l.type==="sankey"){var f=_P(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(_P(l._module,s,E0(e,l.xaxis),E0(e,l.yaxis)))}return i}function _P(e,t,r,n){return{_module:e,cd:t,xaxis:r,yaxis:n}}function mht(e){return e&&Array.isArray(e)&&e[0].hoverOnBox!==!0}function yht(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 vfe(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 _ht(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 xht(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 DM(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;bht(e,t)}function bht(e,t){for(var r=!1,n=0;n<t.length;n++){var i=t[n],a=i.cd;PM.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&&(sht(e),lht(e))}function wfe(e,t,r){for(var n=r?ufe.difference:ufe.union,i=n({regions:e},{regions:[t]}),a=i.regions.reverse(),o=0;o<a.length;o++){var s=a[o];s.subtract=LN(s,a.slice(0,o))}return a}function Tfe(e,t){if(Array.isArray(e))for(var r=t.cd,n=t.cd[0].trace,i=0;i<e.length;i++)e[i]=Qft(e[i],n,r);return e}function Afe(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 Sfe(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=Tfe(a,s),r=r.concat(n)}return r}function TN(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=pfe(e),h=e._fullLayout;if(o){var d=h._zoomlayer,v=h.dragmode,_=IM(v),b=SN(v);if(_||b){var p=E0(e,s,"x"),k=E0(e,l,"y");if(p&&k){var E=d.selectAll(".select-outline-"+o.id);if(E&&e._fullLayout._outlining&&E.length){for(var S=E[0][0],L=S.getAttribute("d"),x=rht(L,e,o),C=[],M=0;M<x.length;M++){for(var g=x[M],P=[],T=0;T<g.length;T++)P.push([h_(p,g[T][1]),h_(k,g[T][2])]);P.xref=s,P.yref=l,P.subtract=LN(P,C),C.push(P)}f=f.concat(C)}}}}var z=s&&l?[s+l]:h._subplots.cartesian;wht(e);for(var O={},V=0;V<z.length;V++){var G=z[V],Z=G.indexOf("y"),j=G.slice(0,Z),N=G.slice(Z),H=s&&l?r:void 0;if(H=Aht(f,j,N,H),H){var te=n;if(!a){var oe=E0(e,j,"x"),_e=E0(e,N,"y");te=wP(e,[oe],[_e],G);for(var Ee=0;Ee<te.length;Ee++){var Ce=te[Ee],me=Ce.cd[0],ie=me.trace;if(Ce._module.name==="scattergl"&&!me.t.xpx){var Se=ie.x,Le=ie.y,Ae=ie._length;me.t.xpx=[],me.t.ypx=[];for(var Fe=0;Fe<Ae;Fe++)me.t.xpx[Fe]=oe.c2p(Se[Fe]),me.t.ypx[Fe]=_e.c2p(Le[Fe])}Ce._module.name==="splom"&&(O[ie.uid]||(O[ie.uid]=!0))}}var Pe=Sfe(H,te);u=u.concat(Pe),c=c.concat(te)}}var ge={points:u};DM(e,c,ge);var Re=h.clickmode,ce=Re.indexOf("event")>-1&&t;if(!o&&t){var Ze=pfe(e,!0);if(Ze.length){var ut=Ze[0].xref,pt=Ze[0].yref;if(ut&&pt){var Zt=Efe(Ze),st=kfe([E0(e,ut,"x"),E0(e,pt,"y")]);st(ge,Zt)}}e._fullLayout._noEmitSelectedAtStart?e._fullLayout._noEmitSelectedAtStart=!1:ce&&FM(e,ge),h._reselect=!1}if(!o&&h._deselect){var lt=h._deselect;s=lt.xref,l=lt.yref,Tht(s,l,c)||Mfe(e,s,l,n),ce&&(ge.points.length?FM(e,ge):PN(e)),h._deselect=!1}return{eventData:ge,selectionTesters:r}}function wht(e){var t=e.calcdata;if(t)for(var r=0;r<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 Tht(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 Mfe(e,t,r,n){n=wP(e,[E0(e,t,"x")],[E0(e,r,"y")],t+r);for(var i=0;i<n.length;i++){var a=n[i];a._module.selectPoints(a,!1)}DM(e,n)}function Aht(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=wfe(i,o,s),n=CN(i)}else i=[o],n=MN(o)}return n}function pfe(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=E0(e,l,"x"),f=E0(e,u,"y"),h,d,v,_,b;if(s.type==="rect"){b=[];var p=h_(c,s.x0),k=h_(c,s.x1),E=h_(f,s.y0),S=h_(f,s.y1);b=[[p,E],[p,S],[k,S],[k,E]],h=Math.min(p,k),d=Math.max(p,k),v=Math.min(E,S),_=Math.max(E,S),b.xmin=h,b.xmax=d,b.ymin=v,b.ymax=_,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"),x=[],C=0;C<L.length;C++){var M=L[C];if(M){M+="Z";var g=cfe.extractPathCoords(M,ffe.paramIsX,"raw"),P=cfe.extractPathCoords(M,ffe.paramIsY,"raw");h=1/0,d=-1/0,v=1/0,_=-1/0,b=[];for(var T=0;T<g.length;T++){var z=h_(c,g[T]),O=h_(f,P[T]);b.push([z,O]),h=Math.min(z,h),d=Math.max(z,d),v=Math.min(O,v),_=Math.max(O,_)}b.xmin=h,b.xmax=d,b.ymin=v,b.ymax=_,b.xref=l,b.yref=u,b.subtract=LN(b,x),x.push(b),r.push(b)}}}}return r}function LN(e,t){for(var r=!1,n=0;n<t.length;n++)for(var i=t[n],a=0;a<e.length;a++)if(Kft(e[a],i)){r=!r;break}return r}function h_(e,t){return e.type==="date"&&(t=t.replace("_"," ")),e.type==="log"?e.c2p(t):e.r2p(t,null,e.calendar)}function Efe(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 Sht(r)}function Sht(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]=[hfe(o,u),hfe(o,c)].sort(oht))}else i||(i={}),i[s]=r.map(cht(o))}n&&(t.range=n),i&&(t.lassoPoints=i)}}function Mht(e){var t=e.plotinfo;return t.fillRangeItems||kfe(e.xaxes.concat(e.yaxes))}function Eht(e,t){e.emit("plotly_selecting",t)}function FM(e,t){t&&(t.selections=(e.layout||{}).selections||[]),e.emit("plotly_selected",t)}function PN(e){e.emit("plotly_deselect",null)}Cfe.exports={reselect:TN,prepSelect:hht,clearOutline:mfe,clearSelectionsCache:RM,selectOnClick:xfe}});var IN=ye((sor,Pfe)=>{"use strict";Pfe.exports=[{path:"",backoff:0},{path:"M-2.4,-3V3L0.6,0Z",backoff:.6},{path:"M-3.7,-2.5V2.5L1.3,0Z",backoff:1.3},{path:"M-4.45,-3L-1.65,-0.2V0.2L-4.45,3L1.55,0Z",backoff:1.55},{path:"M-2.2,-2.2L-0.2,-0.2V0.2L-2.2,2.2L-1.4,3L1.6,0L-1.4,-3Z",backoff:1.6},{path:"M-4.4,-2.1L-0.6,-0.2V0.2L-4.4,2.1L-4,3L2,0L-4,-3Z",backoff:2},{path:"M2,0A2,2 0 1,1 0,-2A2,2 0 0,1 2,0Z",backoff:0,noRotate:!0},{path:"M2,2V-2H-2V2Z",backoff:0,noRotate:!0}]});var OM=ye((lor,Ife)=>{"use strict";Ife.exports={axisRefDescription:function(e,t,r){return["If set to a",e,"axis id (e.g. *"+e+"* or","*"+e+"2*), the `"+e+"` position refers to a",e,"coordinate. If set to *paper*, the `"+e+"`","position refers to the distance from the",t,"of the plotting","area in normalized coordinates where *0* (*1*) corresponds to the",t,"("+r+"). If set to a",e,"axis ID followed by","*domain* (separated by a space), the position behaves like for","*paper*, but refers to the distance in fractions of the domain","length from the",t,"of the domain of that axis: e.g.,","*"+e+"2 domain* refers to the domain of the second",e," axis and a",e,"position of 0.5 refers to the","point between the",t,"and the",r,"of the domain of the","second",e,"axis."].join(" ")}}});var Ub=ye((cor,Ffe)=>{"use strict";var Rfe=IN(),Dfe=ec(),TP=hd(),kht=vl().templatedArray,uor=OM();Ffe.exports=kht("annotation",{visible:{valType:"boolean",dflt:!0,editType:"calc+arraydraw"},text:{valType:"string",editType:"calc+arraydraw"},textangle:{valType:"angle",dflt:0,editType:"calc+arraydraw"},font:Dfe({editType:"calc+arraydraw",colorEditType:"arraydraw"}),width:{valType:"number",min:1,dflt:null,editType:"calc+arraydraw"},height:{valType:"number",min:1,dflt:null,editType:"calc+arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},align:{valType:"enumerated",values:["left","center","right"],dflt:"center",editType:"arraydraw"},valign:{valType:"enumerated",values:["top","middle","bottom"],dflt:"middle",editType:"arraydraw"},bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},bordercolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},borderpad:{valType:"number",min:0,dflt:1,editType:"calc+arraydraw"},borderwidth:{valType:"number",min:0,dflt:1,editType:"calc+arraydraw"},showarrow:{valType:"boolean",dflt:!0,editType:"calc+arraydraw"},arrowcolor:{valType:"color",editType:"arraydraw"},arrowhead:{valType:"integer",min:0,max:Rfe.length,dflt:1,editType:"arraydraw"},startarrowhead:{valType:"integer",min:0,max:Rfe.length,dflt:1,editType:"arraydraw"},arrowside:{valType:"flaglist",flags:["end","start"],extras:["none"],dflt:"end",editType:"arraydraw"},arrowsize:{valType:"number",min:.3,dflt:1,editType:"calc+arraydraw"},startarrowsize:{valType:"number",min:.3,dflt:1,editType:"calc+arraydraw"},arrowwidth:{valType:"number",min:.1,editType:"calc+arraydraw"},standoff:{valType:"number",min:0,dflt:0,editType:"calc+arraydraw"},startstandoff:{valType:"number",min:0,dflt:0,editType:"calc+arraydraw"},ax:{valType:"any",editType:"calc+arraydraw"},ay:{valType:"any",editType:"calc+arraydraw"},axref:{valType:"enumerated",dflt:"pixel",values:["pixel",TP.idRegex.x.toString()],editType:"calc"},ayref:{valType:"enumerated",dflt:"pixel",values:["pixel",TP.idRegex.y.toString()],editType:"calc"},xref:{valType:"enumerated",values:["paper",TP.idRegex.x.toString()],editType:"calc"},x:{valType:"any",editType:"calc+arraydraw"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto",editType:"calc+arraydraw"},xshift:{valType:"number",dflt:0,editType:"calc+arraydraw"},yref:{valType:"enumerated",values:["paper",TP.idRegex.y.toString()],editType:"calc"},y:{valType:"any",editType:"calc+arraydraw"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"auto",editType:"calc+arraydraw"},yshift:{valType:"number",dflt:0,editType:"calc+arraydraw"},clicktoshow:{valType:"enumerated",values:[!1,"onoff","onout"],dflt:!1,editType:"arraydraw"},xclick:{valType:"any",editType:"arraydraw"},yclick:{valType:"any",editType:"arraydraw"},hovertext:{valType:"string",editType:"arraydraw"},hoverlabel:{bgcolor:{valType:"color",editType:"arraydraw"},bordercolor:{valType:"color",editType:"arraydraw"},font:Dfe({editType:"arraydraw"}),editType:"arraydraw"},captureevents:{valType:"boolean",editType:"arraydraw"},editType:"calc"})});var Sm=ye((hor,zfe)=>{"use strict";zfe.exports={PTS_LINESONLY:20,minTolerance:.2,toleranceGrowth:10,maxScreensAway:20,eventDataKeys:[]}});var Cg=ye((dor,Ofe)=>{"use strict";Ofe.exports=function(t){return{valType:"color",editType:"style",anim:!0}}});var pf=ye((vor,Hfe)=>{"use strict";var qfe=df().axisHoverFormat,{hovertemplateAttrs:Cht,texttemplateAttrs:Lht,templatefallbackAttrs:Bfe}=Ll(),Nfe=Tu(),Pht=ec(),Iht=Pd().dash,Rht=Pd().pattern,Dht=So(),Fht=Sm(),AP=Ao().extendFlat,zht=Cg();function Ufe(e){return{valType:"any",dflt:0,editType:"calc"}}function Vfe(e){return{valType:"any",editType:"calc"}}function Gfe(e){return{valType:"enumerated",values:["start","middle","end"],dflt:"middle",editType:"calc"}}Hfe.exports={x:{valType:"data_array",editType:"calc+clearAxisTypes",anim:!0},x0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes",anim:!0},dx:{valType:"number",dflt:1,editType:"calc",anim:!0},y:{valType:"data_array",editType:"calc+clearAxisTypes",anim:!0},y0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes",anim:!0},dy:{valType:"number",dflt:1,editType:"calc",anim:!0},xperiod:Ufe("x"),yperiod:Ufe("y"),xperiod0:Vfe("x0"),yperiod0:Vfe("y0"),xperiodalignment:Gfe("x"),yperiodalignment:Gfe("y"),xhoverformat:qfe("x"),yhoverformat:qfe("y"),offsetgroup:{valType:"string",dflt:"",editType:"calc"},alignmentgroup:{valType:"string",dflt:"",editType:"calc"},stackgroup:{valType:"string",dflt:"",editType:"calc"},orientation:{valType:"enumerated",values:["v","h"],editType:"calc"},groupnorm:{valType:"enumerated",values:["","fraction","percent"],dflt:"",editType:"calc"},stackgaps:{valType:"enumerated",values:["infer zero","interpolate"],dflt:"infer zero",editType:"calc"},text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},texttemplate:Lht(),texttemplatefallback:Bfe({editType:"calc"}),hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"style"},mode:{valType:"flaglist",flags:["lines","markers","text"],extras:["none"],editType:"calc"},hoveron:{valType:"flaglist",flags:["points","fills"],editType:"style"},hovertemplate:Cht({},{keys:Fht.eventDataKeys}),hovertemplatefallback:Bfe(),line:{color:{valType:"color",editType:"style",anim:!0},width:{valType:"number",min:0,dflt:2,editType:"style",anim:!0},shape:{valType:"enumerated",values:["linear","spline","hv","vh","hvh","vhv"],dflt:"linear",editType:"plot"},smoothing:{valType:"number",min:0,max:1.3,dflt:1,editType:"plot"},dash:AP({},Iht,{editType:"style"}),backoff:{valType:"number",min:0,dflt:"auto",arrayOk:!0,editType:"plot"},simplify:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},connectgaps:{valType:"boolean",dflt:!1,editType:"calc"},cliponaxis:{valType:"boolean",dflt:!0,editType:"plot"},fill:{valType:"enumerated",values:["none","tozeroy","tozerox","tonexty","tonextx","toself","tonext"],editType:"calc"},fillcolor:zht(!0),fillgradient:AP({type:{valType:"enumerated",values:["radial","horizontal","vertical","none"],dflt:"none",editType:"calc"},start:{valType:"number",editType:"calc"},stop:{valType:"number",editType:"calc"},colorscale:{valType:"colorscale",editType:"style"},editType:"calc"}),fillpattern:Rht,marker:AP({symbol:{valType:"enumerated",values:Dht.symbolList,dflt:"circle",arrayOk:!0,editType:"style"},opacity:{valType:"number",min:0,max:1,arrayOk:!0,editType:"style",anim:!0},angle:{valType:"angle",dflt:0,arrayOk:!0,editType:"plot",anim:!1},angleref:{valType:"enumerated",values:["previous","up"],dflt:"up",editType:"plot",anim:!1},standoff:{valType:"number",min:0,dflt:0,arrayOk:!0,editType:"plot",anim:!0},size:{valType:"number",min:0,dflt:6,arrayOk:!0,editType:"calc",anim:!0},maxdisplayed:{valType:"number",min:0,dflt:0,editType:"plot"},sizeref:{valType:"number",dflt:1,editType:"calc"},sizemin:{valType:"number",min:0,dflt:0,editType:"calc"},sizemode:{valType:"enumerated",values:["diameter","area"],dflt:"diameter",editType:"calc"},line:AP({width:{valType:"number",min:0,arrayOk:!0,editType:"style",anim:!0},editType:"calc"},Nfe("marker.line",{anim:!0})),gradient:{type:{valType:"enumerated",values:["radial","horizontal","vertical","none"],arrayOk:!0,dflt:"none",editType:"calc"},color:{valType:"color",arrayOk:!0,editType:"calc"},editType:"calc"},editType:"calc"},Nfe("marker",{anim:!0})),selected:{marker:{opacity:{valType:"number",min:0,max:1,editType:"style"},color:{valType:"color",editType:"style"},size:{valType:"number",min:0,editType:"style"},editType:"style"},textfont:{color:{valType:"color",editType:"style"},editType:"style"},editType:"style"},unselected:{marker:{opacity:{valType:"number",min:0,max:1,editType:"style"},color:{valType:"color",editType:"style"},size:{valType:"number",min:0,editType:"style"},editType:"style"},textfont:{color:{valType:"color",editType:"style"},editType:"style"},editType:"style"},textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right"],dflt:"middle center",arrayOk:!0,editType:"calc"},textfont:Pht({editType:"calc",colorEditType:"style",arrayOk:!0}),zorder:{valType:"integer",dflt:0,editType:"plot"}}});var RN=ye((gor,Xfe)=>{"use strict";var jfe=Ub(),Wfe=pf().line,Oht=Pd().dash,SP=Ao().extendFlat,qht=mc().overrideAll,Bht=vl().templatedArray,por=OM();Xfe.exports=qht(Bht("selection",{type:{valType:"enumerated",values:["rect","path"]},xref:SP({},jfe.xref,{}),yref:SP({},jfe.yref,{}),x0:{valType:"any"},x1:{valType:"any"},y0:{valType:"any"},y1:{valType:"any"},path:{valType:"string",editType:"arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:.7,editType:"arraydraw"},line:{color:Wfe.color,width:SP({},Wfe.width,{min:1,dflt:1}),dash:SP({},Oht,{dflt:"dot"})}}),"arraydraw","from-root")});var Jfe=ye((mor,Kfe)=>{"use strict";var Zfe=Dr(),MP=ho(),Nht=Yd(),Uht=RN(),Yfe=f_();Kfe.exports=function(t,r){Nht(t,r,{name:"selections",handleItemDefaults:Vht});for(var n=r.selections,i=0;i<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 Vht(e,t,r){function n(x,C){return Zfe.coerce(e,t,Uht,x,C)}var i=n("path"),a=i?"path":"rect",o=n("type",a),s=o!=="path";s&&delete t.path,n("opacity"),n("line.color"),n("line.width"),n("line.dash");for(var l=["x","y"],u=0;u<2;u++){var c=l[u],f={_fullLayout:r},h,d,v,_=MP.coerceRef(e,t,f,c);if(h=MP.getFromId(f,_),h._selectionIndices.push(t._index),v=Yfe.rangeToShapePosition(h),d=Yfe.shapePositionToRange(h),s){var b=c+"0",p=c+"1",k=e[b],E=e[p];e[b]=d(e[b],!0),e[p]=d(e[p],!0),MP.coercePosition(t,f,n,_,b),MP.coercePosition(t,f,n,_,p);var S=t[b],L=t[p];S!==void 0&&L!==void 0&&(t[b]=v(S),t[p]=v(L),e[b]=k,e[p]=E)}}s&&Zfe.noneOrAll(e,t,["x0","x1","y0","y1"])}});var Qfe=ye((yor,$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 qM=ye((_or,rhe)=>{"use strict";var Ght=qa(),ehe=Dr(),the=hf();rhe.exports=function(t){return function(n,i){var a=n[t];if(Array.isArray(a))for(var o=Ght.subplotsRegistry.cartesian,s=o.idRegex,l=i._subplots,u=l.xaxis,c=l.yaxis,f=l.cartesian,h=i._has("cartesian"),d=0;d<a.length;d++){var v=a[d];if(ehe.isPlainObject(v)){var _=the.cleanId(v.xref,"x",!1),b=the.cleanId(v.yref,"y",!1),p=s.x.test(_),k=s.y.test(b);if(p||k){h||ehe.pushUnique(i._basePlotModules,o);var E=!1;p&&u.indexOf(_)===-1&&(u.push(_),E=!0),k&&c.indexOf(b)===-1&&(c.push(b),E=!0),E&&p&&k&&f.push(_+b)}}}}}});var Of=ye((xor,nhe)=>{"use strict";var ihe=_N(),BM=Lfe();nhe.exports={moduleType:"component",name:"selections",layoutAttributes:RN(),supplyLayoutDefaults:Jfe(),supplyDrawNewSelectionDefaults:Qfe(),includeBasePlot:qM()("selections"),draw:ihe.draw,drawOne:ihe.drawOne,reselect:BM.reselect,prepSelect:BM.prepSelect,clearOutline:BM.clearOutline,clearSelectionsCache:BM.clearSelectionsCache,selectOnClick:BM.selectOnClick}});var NN=ye((bor,Ahe)=>{"use strict";var qN=Oa(),k0=Dr(),ahe=k0.numberFormat,Hht=cd(),jht=RL(),EP=qa(),vhe=k0.strTranslate,Wht=ru(),ohe=ka(),d_=So(),Xht=vf(),she=ho(),Zht=Sg(),Yht=yv(),phe=Eg(),kP=phe.selectingOrDrawing,Kht=phe.freeMode,Jht=$h().FROM_TL,$ht=vM(),Qht=wM().redrawReglTraces,edt=Mc(),FN=hf().getFromId,tdt=Of().prepSelect,rdt=Of().clearOutline,idt=Of().selectOnClick,DN=fN(),BN=hd(),lhe=BN.MINDRAG,np=BN.MINZOOM,uhe=!0;function ndt(e,t,r,n,i,a,o,s){var l=e._fullLayout._zoomlayer,u=o+s==="nsew",c=(o+s).length===1,f,h,d,v,_,b,p,k,E,S,L,x,C,M,g,P,T,z,O,V,G,Z,j;r+=t.yaxis._shift;function N(){if(f=t.xaxis,h=t.yaxis,E=f._length,S=h._length,p=f._offset,k=h._offset,d={},d[f._id]=f,v={},v[h._id]=h,o&&s)for(var It=t.overlays,mt=0;mt<It.length;mt++){var er=It[mt].xaxis;d[er._id]=er;var lr=It[mt].yaxis;v[lr._id]=lr}_=dhe(d),b=dhe(v),C=che(_,s),M=che(b,o),g=!M&&!C,x=hhe(e,e._fullLayout._axisMatchGroups,d,v),L=hhe(e,e._fullLayout._axisConstraintGroups,d,v,x);var Tr=L.isSubplotConstrained||x.isSubplotConstrained;P=s||Tr,T=o||Tr;var Lr=e._fullLayout;z=Lr._has("scattergl"),O=Lr._has("splom"),V=Lr._has("svg")}N();var H=sdt(M+C,e._fullLayout.dragmode,u),te=mhe(t,o+s+"drag",H,r,n,i,a);if(g&&!u)return te.onmousedown=null,te.style.pointerEvents="none",te;var oe={element:te,gd:e,plotinfo:t};oe.prepFn=function(It,mt,er){var lr=oe.dragmode,Tr=e._fullLayout.dragmode;Tr!==lr&&(oe.dragmode=Tr),N(),Z=e._fullLayout._invScaleX,j=e._fullLayout._invScaleY,g||(u?It.shiftKey?Tr==="pan"?Tr="zoom":kP(Tr)||(Tr="pan"):It.ctrlKey&&(Tr="pan"):Tr="pan"),Kht(Tr)?oe.minDrag=1:oe.minDrag=void 0,kP(Tr)?(oe.xaxes=_,oe.yaxes=b,tdt(It,mt,er,oe,Tr)):(oe.clickFn=Ee,kP(lr)&&_e(),g||(Tr==="zoom"?(oe.moveFn=Ze,oe.doneFn=pt,oe.minDrag=1,ce(It,mt,er)):Tr==="pan"&&(oe.moveFn=Jt,oe.doneFn=$e))),e._fullLayout._redrag=function(){var Lr=e._dragdata;if(Lr&&Lr.element===te){var ti=e._fullLayout.dragmode;kP(ti)||(N(),St([0,0,E,S]),oe.moveFn(Lr.dx,Lr.dy))}}};function _e(){oe.plotinfo.selection=!1,rdt(e)}function Ee(It,mt){var er=oe.gd;if(er._fullLayout._activeShapeIndex>=0){er._fullLayout._deactivateShape(er);return}var lr=er._fullLayout.clickmode;if(ON(er),It===2&&!c&&cr(),u)lr.indexOf("select")>-1&&idt(mt,er,_,b,t.id,oe),lr.indexOf("event")>-1&&Xht.click(er,mt,t.id);else if(It===1&&c){var Tr=o?h:f,Lr=o==="s"||s==="w"?0:1,ti=Tr._name+".range["+Lr+"]",Br=adt(Tr,Lr),Vr="left",dt="middle";if(Tr.fixedrange)return;o?(dt=o==="n"?"top":"bottom",Tr.side==="right"&&(Vr="right")):s==="e"&&(Vr="right"),er._context.showAxisRangeEntryBoxes&&qN.select(te).call(Wht.makeEditable,{gd:er,immediate:!0,background:er._fullLayout.paper_bgcolor,text:String(Br),fill:Tr.tickfont?Tr.tickfont.color:"#444",horizontalAlign:Vr,verticalAlign:dt}).on("edit",function(Ge){var Je=Tr.d2r(Ge);Je!==void 0&&EP.call("_guiRelayout",er,ti,Je)})}}Yht.init(oe);var Ce,me,ie,Se,Le,Ae,Fe,Pe,ge,Re;function ce(It,mt,er){var lr=te.getBoundingClientRect();Ce=mt-lr.left,me=er-lr.top,e._fullLayout._calcInverseTransform(e);var Tr=k0.apply3DTransform(e._fullLayout._invTransform)(Ce,me);Ce=Tr[0],me=Tr[1],ie={l:Ce,r:Ce,w:0,t:me,b:me,h:0},Se=e._hmpixcount?e._hmlumcount/e._hmpixcount:Hht(e._fullLayout.plot_bgcolor).getLuminance(),Le="M0,0H"+E+"V"+S+"H0V0",Ae=!1,Fe="xy",Re=!1,Pe=yhe(l,Se,p,k,Le),ge=_he(l,p,k)}function Ze(It,mt){if(e._transitioningWithDuration)return!1;var er=Math.max(0,Math.min(E,Z*It+Ce)),lr=Math.max(0,Math.min(S,j*mt+me)),Tr=Math.abs(er-Ce),Lr=Math.abs(lr-me);ie.l=Math.min(Ce,er),ie.r=Math.max(Ce,er),ie.t=Math.min(me,lr),ie.b=Math.max(me,lr);function ti(){Fe="",ie.r=ie.l,ie.t=ie.b,ge.attr("d","M0,0Z")}if(L.isSubplotConstrained)Tr>np||Lr>np?(Fe="xy",Tr/E>Lr/S?(Lr=Tr*S/E,me>lr?ie.t=me-Lr:ie.b=me+Lr):(Tr=Lr*E/S,Ce>er?ie.l=Ce-Tr:ie.r=Ce+Tr),ge.attr("d",CP(ie))):ti();else if(x.isSubplotConstrained)if(Tr>np||Lr>np){Fe="xy";var Br=Math.min(ie.l/E,(S-ie.b)/S),Vr=Math.max(ie.r/E,(S-ie.t)/S);ie.l=Br*E,ie.r=Vr*E,ie.b=(1-Br)*S,ie.t=(1-Vr)*S,ge.attr("d",CP(ie))}else ti();else!M||Lr<Math.min(Math.max(Tr*.6,lhe),np)?Tr<lhe||!C?ti():(ie.t=0,ie.b=S,Fe="x",ge.attr("d",ldt(ie,me))):!C||Tr<Math.min(Lr*.6,np)?(ie.l=0,ie.r=E,Fe="y",ge.attr("d",udt(ie,Ce))):(Fe="xy",ge.attr("d",CP(ie)));ie.w=ie.r-ie.l,ie.h=ie.b-ie.t,Fe&&(Re=!0),e._dragged=Re,xhe(Pe,ge,ie,Le,Ae,Se),ut(),e.emit("plotly_relayouting",G),Ae=!0}function ut(){G={},(Fe==="xy"||Fe==="x")&&(zN(_,ie.l/E,ie.r/E,G,L.xaxes),sr("x",G)),(Fe==="xy"||Fe==="y")&&(zN(b,(S-ie.b)/S,(S-ie.t)/S,G,L.yaxes),sr("y",G))}function pt(){ut(),ON(e),$e(),whe(e)}var Zt=[0,0,E,S],st=null,lt=BN.REDRAWDELAY,Gt=t.mainplot?e._fullLayout._plots[t.mainplot]:t;function Nt(It){if(!e._context._scrollZoom.cartesian&&!e._fullLayout._enablescrollzoom)return;if(_e(),e._transitioningWithDuration){It.preventDefault(),It.stopPropagation();return}N(),clearTimeout(st);var mt=-It.deltaY;if(isFinite(mt)||(mt=It.wheelDelta/10),!isFinite(mt)){k0.log("Did not find wheel motion attributes: ",It);return}var er=Math.exp(-Math.min(Math.max(mt,-20),20)/200),lr=Gt.draglayer.select(".nsewdrag").node().getBoundingClientRect(),Tr=(It.clientX-lr.left)/lr.width,Lr=(lr.bottom-It.clientY)/lr.height,ti;function Br(Vr,dt,Ge){if(Vr.fixedrange)return;var Je=k0.simpleMap(Vr.range,Vr.r2l),je=Je[0]+(Je[1]-Je[0])*dt;function tt(xt){return Vr.l2r(je+(xt-je)*Ge)}Vr.range=Je.map(tt)}if(P){for(s||(Tr=.5),ti=0;ti<_.length;ti++)Br(_[ti],Tr,er);sr("x"),Zt[2]*=er,Zt[0]+=Zt[2]*Tr*(1/er-1)}if(T){for(o||(Lr=.5),ti=0;ti<b.length;ti++)Br(b[ti],Lr,er);sr("y"),Zt[3]*=er,Zt[1]+=Zt[3]*(1-Lr)*(1/er-1)}St(Zt),wr(),e.emit("plotly_relayouting",G),st=setTimeout(function(){e._fullLayout&&(Zt=[0,0,E,S],$e())},lt),It.preventDefault()}o.length*s.length!==1&&The(te,Nt);function Jt(It,mt){if(It=It*Z,mt=mt*j,e._transitioningWithDuration)return;if(e._fullLayout._replotting=!0,C==="ew"||M==="ns"){var er=C?-It:0,lr=M?-mt:0;if(x.isSubplotConstrained){if(C&&M){var Tr=(It/E-mt/S)/2;It=Tr*E,mt=-Tr*S,er=-It,lr=-mt}M?er=-lr*E/S:lr=-er*S/E}C&&(fhe(_,It),sr("x")),M&&(fhe(b,mt),sr("y")),St([er,lr,E,S]),wr(),e.emit("plotly_relayouting",G);return}function Lr(tt,xt,Ie){for(var xe=1-xt,ke,vt,ir=0;ir<tt.length;ir++){var ar=tt[ir];if(!ar.fixedrange){ke=ar,vt=ar._rl[xe]+(ar._rl[xt]-ar._rl[xe])/odt(Ie/ar._length);var vr=ar.l2r(vt);vr!==!1&&vr!==void 0&&(ar.range[xt]=vr)}}return ke._length*(ke._rl[xt]-vt)/(ke._rl[xt]-ke._rl[xe])}var ti=C==="w"==(M==="n")?1:-1;if(C&&M&&(L.isSubplotConstrained||x.isSubplotConstrained)){var Br=(It/E+ti*mt/S)/2;It=Br*E,mt=ti*Br*S}var Vr,dt;if(C==="w"?It=Lr(_,0,It):C==="e"?It=Lr(_,1,-It):C||(It=0),M==="n"?mt=Lr(b,1,mt):M==="s"?mt=Lr(b,0,-mt):M||(mt=0),Vr=C==="w"?It:0,dt=M==="n"?mt:0,L.isSubplotConstrained&&!x.isSubplotConstrained||x.isSubplotConstrained&&C&&M&&ti>0){var Ge;if(x.isSubplotConstrained||!C&&M.length===1){for(Ge=0;Ge<_.length;Ge++)_[Ge].range=_[Ge]._r.slice(),DN(_[Ge],1-mt/S);It=mt*E/S,Vr=It/2}if(x.isSubplotConstrained||!M&&C.length===1){for(Ge=0;Ge<b.length;Ge++)b[Ge].range=b[Ge]._r.slice(),DN(b[Ge],1-It/E);mt=It*S/E,dt=mt/2}}(!x.isSubplotConstrained||!M)&&sr("x"),(!x.isSubplotConstrained||!C)&&sr("y");var Je=E-It,je=S-mt;x.isSubplotConstrained&&!(C&&M)&&(C?(dt=Vr?0:It*S/E,je=Je*S/E):(Vr=dt?0:mt*E/S,Je=je*E/S)),St([Vr,dt,Je,je]),wr(),e.emit("plotly_relayouting",G)}function sr(It,mt){for(var er=x.isSubplotConstrained?{x:b,y:_}[It]:x[It+"axes"],lr=x.isSubplotConstrained?{x:_,y:b}[It]:[],Tr=0;Tr<er.length;Tr++){var Lr=er[Tr],ti=Lr._id,Br=x.xLinks[ti]||x.yLinks[ti],Vr=lr[0]||d[Br]||v[Br];Vr&&(mt?(mt[Lr._name+".range[0]"]=mt[Vr._name+".range[0]"],mt[Lr._name+".range[1]"]=mt[Vr._name+".range[1]"]):Lr.range=Vr.range.slice())}}function wr(){var It=[],mt;function er(ti){for(mt=0;mt<ti.length;mt++)ti[mt].fixedrange||It.push(ti[mt]._id)}function lr(ti,Br){for(mt=0;mt<ti.length;mt++){var Vr=ti[mt],dt=Vr[Br];!Vr.fixedrange&&dt.tickmode==="sync"&&It.push(dt._id)}}for(P&&(er(_),er(L.xaxes),er(x.xaxes),lr(t.overlays,"xaxis")),T&&(er(b),er(L.yaxes),er(x.yaxes),lr(t.overlays,"yaxis")),G={},mt=0;mt<It.length;mt++){var Tr=It[mt],Lr=FN(e,Tr);she.drawOne(e,Lr,{skipTitle:!0}),G[Lr._name+".range[0]"]=Lr.range[0],G[Lr._name+".range[1]"]=Lr.range[1]}she.redrawComponents(e,It)}function cr(){if(!e._transitioningWithDuration){var It=e._context.doubleClick,mt=[];C&&(mt=mt.concat(_)),M&&(mt=mt.concat(b)),x.xaxes&&(mt=mt.concat(x.xaxes)),x.yaxes&&(mt=mt.concat(x.yaxes));var er={},lr,Tr;if(It==="reset+autosize")for(It="autosize",Tr=0;Tr<mt.length;Tr++){lr=mt[Tr];var Lr=lr._rangeInitial0,ti=lr._rangeInitial1,Br=Lr!==void 0||ti!==void 0;if(Br&&(Lr!==void 0&&Lr!==lr.range[0]||ti!==void 0&&ti!==lr.range[1])||!Br&&lr.autorange!==!0){It="reset";break}}if(It==="autosize")for(Tr=0;Tr<mt.length;Tr++)lr=mt[Tr],lr.fixedrange||(er[lr._name+".autorange"]=!0);else if(It==="reset"){for((C||L.isSubplotConstrained)&&(mt=mt.concat(L.xaxes)),M&&!L.isSubplotConstrained&&(mt=mt.concat(L.yaxes)),L.isSubplotConstrained&&(C?M||(mt=mt.concat(b)):mt=mt.concat(_)),Tr=0;Tr<mt.length;Tr++)if(lr=mt[Tr],!lr.fixedrange){var Vr=lr._name,dt=lr._autorangeInitial;lr._rangeInitial0===void 0&&lr._rangeInitial1===void 0?er[Vr+".autorange"]=!0:lr._rangeInitial0===void 0?(er[Vr+".autorange"]=dt,er[Vr+".range"]=[null,lr._rangeInitial1]):lr._rangeInitial1===void 0?(er[Vr+".range"]=[lr._rangeInitial0,null],er[Vr+".autorange"]=dt):er[Vr+".range"]=[lr._rangeInitial0,lr._rangeInitial1]}}e.emit("plotly_doubleclick",null),EP.call("_guiRelayout",e,er)}}function $e(){St([0,0,E,S]),k0.syncOrAsync([edt.previousPromises,function(){e._fullLayout._replotting=!1,EP.call("_guiRelayout",e,G)}],e)}function St(It){var mt=e._fullLayout,er=mt._plots,lr=mt._subplots.cartesian,Tr,Lr,ti,Br;if(O&&EP.subplotsRegistry.splom.drag(e),z){for(Tr=0;Tr<lr.length;Tr++)if(Lr=er[lr[Tr]],ti=Lr.xaxis,Br=Lr.yaxis,Lr._scene){ti.limitRange&&ti.limitRange(),Br.limitRange&&Br.limitRange();var Vr=k0.simpleMap(ti.range,ti.r2l),dt=k0.simpleMap(Br.range,Br.r2l);Lr._scene.update({range:[Vr[0],dt[0],Vr[1],dt[1]]})}}if((O||z)&&($ht(e),Qht(e)),V){var Ge=It[2]/f._length,Je=It[3]/h._length;for(Tr=0;Tr<lr.length;Tr++){Lr=er[lr[Tr]],ti=Lr.xaxis,Br=Lr.yaxis;var je=(P||x.isSubplotConstrained)&&!ti.fixedrange&&d[ti._id],tt=(T||x.isSubplotConstrained)&&!Br.fixedrange&&v[Br._id],xt,Ie,xe,ke;if(je?(xt=Ge,xe=s||x.isSubplotConstrained?It[0]:_t(ti,xt)):x.xaHash[ti._id]?(xt=Ge,xe=It[0]*ti._length/f._length):x.yaHash[ti._id]?(xt=Je,xe=M==="ns"?-It[1]*ti._length/h._length:_t(ti,xt,{n:"top",s:"bottom"}[M])):(xt=Qt(ti,Ge,Je),xe=Vt(ti,xt)),xt>1&&(ti.maxallowed!==void 0&&P===(ti.range[0]<ti.range[1]?"e":"w")||ti.minallowed!==void 0&&P===(ti.range[0]<ti.range[1]?"w":"e"))&&(xt=1,xe=0),tt?(Ie=Je,ke=o||x.isSubplotConstrained?It[1]:_t(Br,Ie)):x.yaHash[Br._id]?(Ie=Je,ke=It[1]*Br._length/h._length):x.xaHash[Br._id]?(Ie=Ge,ke=C==="ew"?-It[0]*Br._length/f._length:_t(Br,Ie,{e:"right",w:"left"}[C])):(Ie=Qt(Br,Ge,Je),ke=Vt(Br,Ie)),Ie>1&&(Br.maxallowed!==void 0&&T===(Br.range[0]<Br.range[1]?"n":"s")||Br.minallowed!==void 0&&T===(Br.range[0]<Br.range[1]?"s":"n"))&&(Ie=1,ke=0),!(!xt&&!Ie)){xt||(xt=1),Ie||(Ie=1);var vt=ti._offset-xe/xt,ir=Br._offset-ke/Ie;Lr.clipRect.call(d_.setTranslate,xe,ke).call(d_.setScale,xt,Ie),Lr.plot.call(d_.setTranslate,vt,ir).call(d_.setScale,1/xt,1/Ie),(xt!==Lr.xScaleFactor||Ie!==Lr.yScaleFactor)&&(d_.setPointGroupScale(Lr.zoomScalePts,xt,Ie),d_.setTextPointsScale(Lr.zoomScaleTxt,xt,Ie)),d_.hideOutsideRangePoints(Lr.clipOnAxisFalseTraces,Lr),Lr.xScaleFactor=xt,Lr.yScaleFactor=Ie}}}}function Qt(It,mt,er){return It.fixedrange?0:P&&L.xaHash[It._id]?mt:T&&(L.isSubplotConstrained?L.xaHash:L.yaHash)[It._id]?er:0}function Vt(It,mt){return mt?(It.range=It._r.slice(),DN(It,mt),_t(It,mt)):0}function _t(It,mt,er){return It._length*(1-mt)*Jht[er||It.constraintoward||"middle"]}return te}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(Zht,n),i.node()}function mhe(e,t,r,n,i,a,o){var s=ghe(e,"rect",t,r);return qN.select(s).call(d_.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 adt(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 zN(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;zN(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 odt(e){return 1-(e>=0?Math.min(e,.9):1/(1/Math.max(e,-.3)+3.222))}function sdt(e,t,r){return e?e==="nsew"?r?"":t==="pan"?"move":"crosshair":e.toLowerCase()+"-resize":"pointer"}function yhe(e,t,r,n,i){return e.append("path").attr("class","zoombox").style({fill:t>.2?"rgba(0,0,0,0)":"rgba(255,255,255,0)","stroke-width":0}).attr("transform",vhe(r,n)).attr("d",i+"Z")}function _he(e,t,r){return e.append("path").attr("class","zoombox-corners").style({fill:ohe.background,stroke:ohe.defaultLine,"stroke-width":1,opacity:0}).attr("transform",vhe(t,r)).attr("d","M0,0Z")}function xhe(e,t,r,n,i,a){e.attr("d",n+"M"+r.l+","+r.t+"v"+r.h+"h"+r.w+"v-"+r.h+"h-"+r.w+"Z"),bhe(e,t,i,a)}function bhe(e,t,r,n){r||(e.transition().style("fill",n>.2?"rgba(0,0,0,0.4)":"rgba(255,255,255,0.3)").duration(200),t.transition().style("opacity",1).duration(200))}function ON(e){qN.select(e).selectAll(".zoombox,.js-zoombox-backdrop,.js-zoombox-menu,.zoombox-corners").remove()}function whe(e){uhe&&e.data&&e._context.showTips&&(k0.notifier(k0._(e,"Double-click to zoom back out"),"long"),uhe=!1)}function ldt(e,t){return"M"+(e.l-.5)+","+(t-np-.5)+"h-3v"+(2*np+1)+"h3ZM"+(e.r+.5)+","+(t-np-.5)+"h3v"+(2*np+1)+"h-3Z"}function udt(e,t){return"M"+(t-np-.5)+","+(e.t-.5)+"v-3h"+(2*np+1)+"v3ZM"+(t-np-.5)+","+(e.b+.5)+"v3h"+(2*np+1)+"v-3Z"}function CP(e){var t=Math.floor(Math.min(e.b-e.t,e.r-e.l,np)/2);return"M"+(e.l-3.5)+","+(e.t-.5+t)+"h3v"+-t+"h"+t+"v-3h-"+(t+3)+"ZM"+(e.r+3.5)+","+(e.t-.5+t)+"h-3v"+-t+"h"+-t+"v-3h"+(t+3)+"ZM"+(e.r+3.5)+","+(e.b+.5-t)+"h-3v"+t+"h"+-t+"v3h"+(t+3)+"ZM"+(e.l-3.5)+","+(e.b+.5-t)+"h3v"+t+"h"+t+"v3h-"+(t+3)+"Z"}function hhe(e,t,r,n,i){for(var a=!1,o={},s={},l,u,c,f,h=(i||{}).xaHash,d=(i||{}).yaHash,v=0;v<t.length;v++){var _=t[v];for(l in r)if(_[l]){for(c in _)!(i&&(h[c]||d[c]))&&!(c.charAt(0)==="x"?r:n)[c]&&(o[c]=l);for(u in n)!(i&&(h[u]||d[u]))&&_[u]&&(a=!0)}for(u in n)if(_[u])for(f in _)!(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 k=FN(e,c);p.push(k),b[k._id]=k}var E={},S=[];for(f in s){var L=FN(e,f);S.push(L),E[L._id]=L}return{xaHash:b,yaHash:E,xaxes:p,yaxes:S,xLinks:o,yLinks:s,isSubplotConstrained:a}}function The(e,t){if(!jht)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:ndt,makeDragger:ghe,makeRectDragger:mhe,makeZoombox:yhe,makeCorners:_he,updateZoombox:xhe,xyCorners:CP,transitionZoombox:bhe,removeZoombox:ON,showDoubleClickNotifier:whe,attachWheelEventHandler:The}});var UN=ye(PP=>{"use strict";var cdt=Oa(),LP=vf(),fdt=yv(),hdt=Sg(),Lg=NN().makeDragBox,gd=hd().DRAGGERSIZE;PP.initInteractions=function(t){var r=t._fullLayout;if(t._context.staticPlot){cdt.select(t).selectAll(".drag").remove();return}if(!(!r._has("cartesian")&&!r._has("splom"))){var n=Object.keys(r._plots||{}).sort(function(a,o){if((r._plots[a].mainplot&&!0)===(r._plots[o].mainplot&&!0)){var s=a.split("y"),l=o.split("y");return s[0]===l[0]?Number(s[1]||1)-Number(l[1]||1):Number(s[0]||1)-Number(l[0]||1)}return r._plots[a].mainplot?1:-1});n.forEach(function(a){var o=r._plots[a],s=o.xaxis,l=o.yaxis;if(!o.mainplot){var u=Lg(t,o,s._offset,l._offset,s._length,l._length,"ns","ew");u.onmousemove=function(h){t._fullLayout._rehover=function(){t._fullLayout._hoversubplot===a&&t._fullLayout._plots[a]&&LP.hover(t,h,a)},LP.hover(t,h,a),t._fullLayout._lasthover=u,t._fullLayout._hoversubplot=a},u.onmouseout=function(h){t._dragging||(t._fullLayout._hoversubplot=null,fdt.unhover(t,h))},t._context.showAxisDragHandles&&(Lg(t,o,s._offset-gd,l._offset-gd,gd,gd,"n","w"),Lg(t,o,s._offset+s._length,l._offset-gd,gd,gd,"n","e"),Lg(t,o,s._offset-gd,l._offset+l._length,gd,gd,"s","w"),Lg(t,o,s._offset+s._length,l._offset+l._length,gd,gd,"s","e"))}if(t._context.showAxisDragHandles){if(a===s._mainSubplot){var c=s._mainLinePosition;s.side==="top"&&(c-=gd),Lg(t,o,s._offset+s._length*.1,c,s._length*.8,gd,"","ew"),Lg(t,o,s._offset,c,s._length*.1,gd,"","w"),Lg(t,o,s._offset+s._length*.9,c,s._length*.1,gd,"","e")}if(a===l._mainSubplot){var f=l._mainLinePosition;l.side!=="right"&&(f-=gd),Lg(t,o,f,l._offset+l._length*.1,gd,l._length*.8,"ns",""),Lg(t,o,f,l._offset+l._length*.9,gd,l._length*.1,"s",""),Lg(t,o,f,l._offset,gd,l._length*.1,"n","")}}});var i=r._hoverlayer.node();i.onmousemove=function(a){a.target=t._fullLayout._lasthover,LP.hover(t,a,r._hoversubplot)},i.onclick=function(a){a.target=t._fullLayout._lasthover,LP.click(t,a)},i.onmousedown=function(a){t._fullLayout._lasthover.onmousedown(a)},PP.updateFx(t)}};PP.updateFx=function(e){var t=e._fullLayout,r=t.dragmode==="pan"?"move":"crosshair";hdt(t._draggers,r)}});var Ehe=ye((Tor,Mhe)=>{"use strict";var She=qa();Mhe.exports=function(t){for(var r=She.layoutArrayContainers,n=She.layoutArrayRegexes,i=t.split("[")[0],a,o,s=0;s<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.slice(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 Che=ye(UM=>{"use strict";var ddt=my(),VN=w6(),NM=G1(),vdt=R6().sorterAsc,GN=qa();UM.containerArrayMatch=Ehe();var pdt=UM.isAddVal=function(t){return t==="add"||ddt(t)},khe=UM.isRemoveVal=function(t){return t===null||t==="remove"};UM.applyContainerArrayChanges=function(t,r,n,i,a){var o=r.astr,s=GN.getComponentMethod(o,"supplyLayoutDefaults"),l=GN.getComponentMethod(o,"draw"),u=GN.getComponentMethod(o,"drawOne"),c=i.replot||i.recalc||s===VN||l===VN,f=t.layout,h=t._fullLayout;if(n[""]){Object.keys(n).length>1&&NM.warn("Full array edits are incompatible with other edits",o);var d=n[""][""];if(khe(d))r.set(null);else if(Array.isArray(d))r.set(d);else return NM.warn("Unrecognized full array edit value",o,d),!0;return c?!1:(s(f,h),l(t),!0)}var v=Object.keys(n).map(Number).sort(vdt),_=r.get(),b=_||[],p=a(h,o).get(),k=[],E=-1,S=b.length,L,x,C,M,g,P,T,z;for(L=0;L<v.length;L++){if(C=v[L],M=n[C],g=Object.keys(M),P=M[""],T=pdt(P),C<0||C>b.length-(T?0:1)){NM.warn("index out of range",o,C);continue}if(P!==void 0)g.length>1&&NM.warn("Insertion & removal are incompatible with edits to the same index.",o,C),khe(P)?k.push(C):T?(P==="add"&&(P={}),b.splice(C,0,P),p&&p.splice(C,0,{})):NM.warn("Unrecognized full object edit value",o,C,P),E===-1&&(E=C);else for(x=0;x<g.length;x++)z=o+"["+C+"].",a(b[C],g[x],z).set(M[g[x]])}for(L=k.length-1;L>=0;L--)b.splice(k[L],1),p&&p.splice(k[L],1);if(b.length?_||r.set(b):r.set(null),c)return!1;if(s(f,h),u!==VN){var O;if(E===-1)O=v;else{for(S=Math.max(b.length,S),O=[],L=0;L<v.length&&(C=v[L],!(C>=E));L++)O.push(C);for(L=E;L<S;L++)O.push(L)}for(L=0;L<O.length;L++)u(t,O[L])}else l(t);return!0}});var Ohe=ye(C0=>{"use strict";var Rhe=Eo(),Dhe=qa(),Uv=Dr(),VM=Mc(),Fhe=hf(),zhe=ka(),GM=Fhe.cleanId,gdt=Fhe.getFromTrace,HN=Dhe.traceIs,mdt=["x","y","z"];C0.clearPromiseQueue=function(e){Array.isArray(e._promises)&&e._promises.length>0&&Uv.log("Clearing previous rejected promises from queue."),e._promises=[]};C0.cleanLayout=function(e){var t,r;e||(e={}),e.xaxis1&&(e.xaxis||(e.xaxis=e.xaxis1),delete e.xaxis1),e.yaxis1&&(e.yaxis||(e.yaxis=e.yaxis1),delete e.yaxis1),e.scene1&&(e.scene||(e.scene=e.scene1),delete e.scene1);var n=(VM.subplotsRegistry.cartesian||{}).attrRegex,i=(VM.subplotsRegistry.polar||{}).attrRegex,a=(VM.subplotsRegistry.ternary||{}).attrRegex,o=(VM.subplotsRegistry.gl3d||{}).attrRegex,s=Object.keys(e);for(t=0;t<s.length;t++){var l=s[t];if(n&&n.test(l)){var u=e[l];u.anchor&&u.anchor!=="free"&&(u.anchor=GM(u.anchor)),u.overlaying&&(u.overlaying=GM(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,IP(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];Uv.isPlainObject(f)&&(Q3(f,"xref"),Q3(f,"yref"))}var h=Array.isArray(e.shapes)?e.shapes.length:0;for(t=0;t<h;t++){var d=e.shapes[t];Uv.isPlainObject(d)&&(Q3(d,"xref"),Q3(d,"yref"))}var v=Array.isArray(e.images)?e.images.length:0;for(t=0;t<v;t++){var _=e.images[t];Uv.isPlainObject(_)&&(Q3(_,"xref"),Q3(_,"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&&C0.cleanLayout(e.template.layout),e};function Q3(e,t){var r=e[t],n=t.charAt(0);r&&r!=="paper"&&(e[t]=GM(r,n,!0))}C0.cleanData=function(e){for(var t=0;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"&&C0.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=GM(r.xaxis,"x")),r.yaxis&&(r.yaxis=GM(r.yaxis,"y")),HN(r,"gl3d")&&r.scene&&(r.scene=VM.subplotsRegistry.gl3d.cleanId(r.scene)),!HN(r,"pie-like")&&!HN(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"&&Uv.isPlainObject(r.contours)){var s=["x","y","z"];for(n=0;n<s.length;n++){var l=r.contours[s[n]];Uv.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=ydt(f,h,u,c);d&&(r.name=d)}else(f||h)&&!r.name&&(r.name=f||h)}IP(r,"line")&&delete r.line,"marker"in r&&(IP(r.marker,"line")&&delete r.marker.line,IP(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(!Uv.isPlainObject(e))return!1;var t=e.name;return delete e.name,delete e.showlegend,(typeof t=="string"||typeof t=="number")&&String(t)}function ydt(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.slice(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 IP(e,t){return t in e&&typeof e[t]=="object"&&Object.keys(e[t]).length===0}C0.swapXYData=function(e){var t;if(Uv.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);Uv.swapAttrs(e,["error_?.copy_ystyle"]),n&&Uv.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("+")}};C0.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++)Uv.isIndex(t[n],e.data.length)?r.push(t[n]):Uv.warn("trace index (",t[n],") is not a number or is out of bounds");return r}return t};C0.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=Uv.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 _dt=/(\.[^\[\]\.]+|\[[^\[\]\.]+\])$/;function Ihe(e){var t=e.search(_dt);if(t>0)return e.slice(0,t)}C0.hasParent=function(e,t){for(var r=Ihe(t);r;){if(r in e)return!0;r=Ihe(r)}return!1};C0.clearAxisTypes=function(e,t,r){for(var n=0;n<t.length;n++)for(var i=e._fullData[n],a=0;a<3;a++){var o=gdt(e,i,mdt[a]);if(o&&o.type!=="log"){var s=o._name,l=o._id.slice(1);if(l.slice(0,5)==="scene"){if(r[l]!==void 0)continue;s=l+"."+s}var u=s+".type";r[s]===void 0&&r[u]===void 0&&Uv.nestedProperty(e.layout,u).set(null)}}};var jN=(e,t)=>{let r=(...n)=>n.every(i=>Uv.isPlainObject(i))||n.every(i=>Array.isArray(i));if([e,t].every(n=>Array.isArray(n))){if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++){let i=e[n],a=t[n];if(i!==a&&!(r(i,a)?jN(i,a):!1))return!1}return!0}else if([e,t].every(n=>Uv.isPlainObject(n))){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(let n in e){if(n.startsWith("_"))continue;let i=e[n],a=t[n];if(i!==a&&!(r(i,a)?jN(i,a):!1))return!1}return!0}return!1};C0.collectionsAreEqual=jN});var HP=ye(_l=>{"use strict";var FP=Oa(),xdt=Eo(),bdt=nq(),Sa=Dr(),Ec=Sa.nestedProperty,ZN=_3(),ap=yne(),L0=qa(),VP=w3(),Qo=Mc(),Vv=ho(),wdt=xB(),Tdt=Rd(),WN=So(),Adt=ka(),Sdt=UN().initInteractions,Mdt=Wp(),Edt=Of().clearOutline,Vhe=cb().dfltConfig,RP=Che(),vh=Ohe(),Au=wM(),v_=mc(),kdt=hd().AX_NAME_PATTERN,XN=0,qhe=5;function Cdt(e,t,r,n){var i;if(e=Sa.getGraphDiv(e),ZN.init(e),Sa.isPlainObject(t)){var a=t;t=a.data,r=a.layout,n=a.config,i=a.frames}var o=ZN.triggerHandler(e,"plotly_beforeplot",[t,r,n]);if(o===!1)return Promise.reject();!t&&!r&&!Sa.isPlotDiv(e)&&Sa.warn("Calling _doPlot as if redrawing but this container doesn't yet have a plot.",e);function s(){if(i)return _l.addFrames(e,i)}Hhe(e,n),r||(r={}),FP.select(e).classed("js-plotly-plot",!0),WN.makeTester(),Array.isArray(e._promises)||(e._promises=[]);var l=(e.data||[]).length===0&&Array.isArray(t);Array.isArray(t)&&(vh.cleanData(t),l?e.data=t:e.data.push.apply(e.data,t),e.empty=!1),(!e.layout||l)&&(e.layout=vh.cleanLayout(r)),Qo.supplyDefaults(e);var u=e._fullLayout,c=u._has("cartesian");u._replotting=!0,(l||u._shouldCreateBgLayer)&&($dt(e),u._shouldCreateBgLayer&&delete u._shouldCreateBgLayer),WN.initGradients(e),WN.initPatterns(e),l&&Vv.saveShowSpikeInitial(e);var f=!e.calcdata||e.calcdata.length!==(e._fullData||[]).length;f&&Qo.doCalcdata(e);for(var h=0;h<e.calcdata.length;h++)e.calcdata[h][0].trace=e._fullData[h];e._context.responsive?e._responsiveChartHandler||(e._responsiveChartHandler=function(){Sa.isHidden(e)||Qo.resize(e)},window.addEventListener("resize",e._responsiveChartHandler)):Sa.clearResponsive(e);var d=Sa.extendFlat({},u._size),v=0;function _(){for(var C=u._basePlotModules,M=0;M<C.length;M++)C[M].drawFramework&&C[M].drawFramework(e);!u._glcanvas&&u._has("gl")&&(u._glcanvas=u._glcontainer.selectAll(".gl-canvas").data([{key:"contextLayer",context:!0,pick:!1},{key:"focusLayer",context:!1,pick:!1},{key:"pickLayer",context:!1,pick:!0}],function(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)Sa.error(T);else return Sa.log(T+" Clearing graph and plotting again."),Qo.cleanPlot([],{},e._fullData,u),Qo.supplyDefaults(e),u=e._fullLayout,Qo.doCalcdata(e),v++,_()}}return u.modebar.orientation==="h"?u._modebardiv.style("height",null).style("width","100%"):u._modebardiv.style("width",null).style("height",u.height+"px"),Qo.previousPromises(e)}function b(){if(Qo.clearAutoMarginIds(e),Au.drawMarginPushers(e),Vv.allowAutoMargin(e),e._fullLayout.title.text&&e._fullLayout.title.automargin&&Qo.allowAutoMargin(e,"title.automargin"),u._has("pie"))for(var C=e._fullData,M=0;M<C.length;M++){var g=C[M];g.type==="pie"&&g.automargin&&Qo.allowAutoMargin(e,"pie."+g.uid+".automargin")}return Qo.doAutoMargin(e),Qo.previousPromises(e)}function p(){if(Qo.didMarginChange(d,u._size))return Sa.syncOrAsync([b,Au.layoutStyles],e)}function k(){if(!f){E();return}return Sa.syncOrAsync([L0.getComponentMethod("shapes","calcAutorange"),L0.getComponentMethod("annotations","calcAutorange"),E],e)}function E(){e._transitioning||(Au.doAutoRangeAndConstraints(e),l&&Vv.saveRangeInitial(e),L0.getComponentMethod("rangeslider","calcAutorange")(e))}function S(){return Vv.draw(e,l?"":"redraw")}var L=[Qo.previousPromises,s,_,b,p];c&&L.push(k),L.push(Au.layoutStyles),c&&L.push(S,function(M){var g=M._fullLayout._insideTickLabelsUpdaterange;if(g)return M._fullLayout._insideTickLabelsUpdaterange=void 0,HM(M,g).then(function(){Vv.saveRangeInitial(M,!0)})}),L.push(Au.drawData,Au.finalDraw,Sdt,Qo.addLinks,Qo.rehover,Qo.redrag,Qo.reselect,Qo.doAutoMargin,Qo.previousPromises);var x=Sa.syncOrAsync(L,e);return(!x||!x.then)&&(x=Promise.resolve()),x.then(function(){return jM(e),e})}function jM(e){var t=e._fullLayout;t._redrawFromAutoMarginCount?t._redrawFromAutoMarginCount--:e.emit("plotly_afterplot")}function Ldt(e){return Sa.extendFlat(Vhe,e)}function Ghe(e,t){try{e._fullLayout._paper.style("background",t)}catch(r){Sa.error(r)}}function Pdt(e,t){var r=Adt.combine(t,"white");Ghe(e,r)}function Hhe(e,t){if(!e._context){e._context=Sa.extendDeep({},Vhe);var r=FP.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]=Pdt: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"&&!bdt&&(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 Idt(e){if(e=Sa.getGraphDiv(e),!Sa.isPlotDiv(e))throw new Error("This element is not a Plotly plot: "+e);return vh.cleanData(e.data),vh.cleanLayout(e.layout),e.calcdata=void 0,_l._doPlot(e).then(function(){return e.emit("plotly_redraw"),e})}function Rdt(e,t,r,n){return e=Sa.getGraphDiv(e),Qo.cleanPlot([],{},e._fullData||[],e._fullLayout||{}),Qo.purge(e),_l._doPlot(e,t,r,n)}function zP(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 OP(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]),OP(e,t,"currentIndices"),typeof r!="undefined"&&!Array.isArray(r)&&(r=[r]),typeof r!="undefined"&&OP(e,r,"newIndices"),typeof r!="undefined"&&t.length!==r.length)throw new Error("current and new indices must be of equal length.")}function Ddt(e,t,r){var n,i;if(!Array.isArray(e.data))throw new Error("gd.data must be an array.");if(typeof t=="undefined")throw new Error("traces must be defined.");for(Array.isArray(t)||(t=[t]),n=0;n<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=Sa.isPlainObject(n);if(!Array.isArray(e.data))throw new Error("gd.data must be an array");if(!Sa.isPlainObject(t))throw new Error("update must be a key:value object");if(typeof r=="undefined")throw new Error("indices must be an integer or array of integers");OP(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 correspondence with the keys and number of traces in the update object")}}function zdt(e,t,r,n){var i=Sa.isPlainObject(n),a=[],o,s,l,u,c;Array.isArray(r)||(r=[r]),r=zP(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],!Sa.isArrayOrTypedArray(u))throw new Error("attribute: "+f+" index: "+h+" must be an array");if(!Sa.isArrayOrTypedArray(s))throw new Error("cannot extend missing or non-array attribute: "+f);if(s.constructor!==u.constructor)throw new Error("cannot extend array with an array of a different type: "+f);c=i?n[f][h]:n,xdt(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=zdt(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=Sa.getGraphDiv(e);function i(l,u,c){var f,h;if(Sa.isTypedArray(l))if(c<0){var d=new l.constructor(0),v=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 _=u.length-c;f.set(u.subarray(_)),h.set(l),h.set(u.subarray(0,_),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=_l.redraw(e),s=[e,a.update,r,a.maxPoints];return ap.add(e,_l.prependTraces,s,Zhe,arguments),o}function Yhe(e,t,r,n){e=Sa.getGraphDiv(e);function i(l,u,c){var f,h;if(Sa.isTypedArray(l))if(c<=0){var d=new l.constructor(0),v=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 _=u.length-c;f.set(u.subarray(0,_)),h.set(u.subarray(_)),h.set(l,_)}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=_l.redraw(e),s=[e,a.update,r,a.maxPoints];return ap.add(e,_l.extendTraces,s,Yhe,arguments),o}function Khe(e,t,r){e=Sa.getGraphDiv(e);var n=[],i=_l.deleteTraces,a=Khe,o=[e,n],s=[e,t],l,u;for(Ddt(e,t,r),Array.isArray(t)||(t=[t]),t=t.map(function(c){return Sa.extendFlat({},c)}),vh.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=_l.redraw(e),ap.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 ap.startSequence(e),ap.add(e,i,o,a,s),u=_l.moveTraces(e,n,r),ap.stopSequence(e),u}function Jhe(e,t){e=Sa.getGraphDiv(e);var r=[],n=_l.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]),OP(e,t,"indices"),t=zP(t,e.data.length-1),t.sort(Sa.sorterDes),s=0;s<t.length;s+=1)l=e.data.splice(t[s],1)[0],r.push(l);var u=_l.redraw(e);return ap.add(e,n,a,i,o),u}function YN(e,t,r){e=Sa.getGraphDiv(e);var n=[],i=[],a=YN,o=YN,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=zP(t,e.data.length-1),r=zP(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=_l.redraw(e);return ap.add(e,a,s,o,l),c}function qP(e,t,r,n){e=Sa.getGraphDiv(e),vh.clearPromiseQueue(e);var i={};if(typeof t=="string")i[t]=r;else if(Sa.isPlainObject(t))i=Sa.extendFlat({},t),n===void 0&&(n=r);else return Sa.warn("Restyle fail.",t,r,n),Promise.reject();Object.keys(i).length&&(e.changed=!0);var a=vh.coerceTraceIndices(e,n),o=$he(e,i,a),s=o.flags;s.calc&&(e.calcdata=void 0),s.clearAxisTypes&&vh.clearAxisTypes(e,a,{});var l=[];s.fullReplot?l.push(_l._doPlot):(l.push(Qo.previousPromises),Qo.supplyDefaults(e),s.markerSize&&(Qo.doCalcdata(e),GP(l)),s.style&&l.push(Au.doTraceStyle),s.colorbars&&l.push(Au.doColorBars),l.push(jM)),l.push(Qo.rehover,Qo.redrag,Qo.reselect),ap.add(e,qP,[e,o.undoit,o.traces],qP,[e,o.redoit,o.traces]);var u=Sa.syncOrAsync(l,e);return(!u||!u.then)&&(u=Promise.resolve()),u.then(function(){return e.emit("plotly_restyle",o.eventData),e})}function Ly(e){return e===void 0?null:e}function DP(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;BP(l,a.get(),s,e),o(s)},a}:Ec}function BP(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++)BP(e+"["+s+"]",i[s],a[s],n);else if(Sa.isPlainObject(t)||Sa.isPlainObject(r)){var l=Sa.isPlainObject(t)?t:{},u=Sa.isPlainObject(r)?r:{},c=Sa.extendFlat({},l,u);for(var f in c)BP(e+"."+f,l[f],u[f],n)}else n[e]===void 0&&(n[e]=Ly(t))}function Odt(e,t,r){for(var n in r){var i=Ec(e,n);BP(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=DP(n._preGUI,o),l=Sa.extendDeepAll({},t),u,c=v_.traceFlags(),f={},h={},d;function v(){return r.map(function(){})}function _(ge){var Re=Vv.id2name(ge);d.indexOf(Re)===-1&&d.push(Re)}function b(ge){return"LAYOUT"+ge+".autorange"}function p(ge){return"LAYOUT"+ge+".range"}function k(ge){for(var Re=ge;Re<i.length;Re++)if(i[Re]._input===a[ge])return i[Re]}function E(ge,Re,ce){if(Array.isArray(ge)){ge.forEach(function(Zt){E(Zt,Re,ce)});return}if(!(ge in t||vh.hasParent(t,ge))){var Ze;if(ge.slice(0,6)==="LAYOUT")Ze=s(e.layout,ge.replace("LAYOUT",""));else{var ut=r[ce],pt=n._tracePreGUI[k(ut)._fullInput.uid];Ze=DP(pt,o)(a[ut],ge)}ge in h||(h[ge]=v()),h[ge][ce]===void 0&&(h[ge][ce]=Ly(Ze.get())),Re!==void 0&&Ze.set(Re)}}function S(ge){return function(Re){return i[Re][ge]}}function L(ge){return function(Re,ce){return Re===!1?i[r[ce]][ge]:null}}for(var x in t){if(vh.hasParent(t,x))throw new Error("cannot set "+x+" and a parent attribute simultaneously");var C=t[x],M,g,P,T,z,O;if((x==="autobinx"||x==="autobiny")&&(x=x.charAt(x.length-1)+"bins",Array.isArray(C)?C=C.map(L(x)):C===!1?C=r.map(S(x)):C=null),f[x]=C,x.slice(0,6)==="LAYOUT"){P=s(e.layout,x.replace("LAYOUT","")),h[x]=[Ly(P.get())],P.set(Array.isArray(C)?C[0]:C),c.calc=!0;continue}for(h[x]=v(),u=0;u<r.length;u++){M=a[r[u]],g=k(r[u]);var V=n._tracePreGUI[g._fullInput.uid];if(P=DP(V,o)(M,x),T=P.get(),z=Array.isArray(C)?C[u%C.length]:C,z!==void 0){var G=P.parts[P.parts.length-1],Z=x.slice(0,x.length-G.length-1),j=Z?Z+".":"",N=Z?Ec(g,Z).get():g;if(O=VP.getTraceValObject(g,P.parts),O&&O.impliedEdits&&z!==null)for(var H in O.impliedEdits)E(Sa.relativeAttr(x,H),O.impliedEdits[H],u);else if((G==="thicknessmode"||G==="lenmode")&&T!==z&&(z==="fraction"||z==="pixels")&&N){var te=n._size,oe=N.orient,_e=oe==="top"||oe==="bottom";if(G==="thicknessmode"){var Ee=_e?te.h:te.w;E(j+"thickness",N.thickness*(z==="fraction"?1/Ee:Ee),u)}else{var Ce=_e?te.w:te.h;E(j+"len",N.len*(z==="fraction"?1/Ce:Ce),u)}}else if(x==="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"),Sa.swapAttrs(M,["?","?src"],"labels",me),Sa.swapAttrs(M,["d?","?0"],"label",me),Sa.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[x][u]=Ly(T);var Se=["swapxy","swapxyaxes","orientation","orientationaxes"];if(Se.indexOf(x)!==-1){if(x==="orientation"){P.set(z);var Le=M.x&&!M.y?"h":"v";if((P.get()||Le)===g.orientation)continue}else x==="orientationaxes"&&(M.orientation={v:"h",h:"v"}[g.orientation]);vh.swapXYData(M),c.calc=c.clearAxisTypes=!0}else Qo.dataArrayContainers.indexOf(P.parts[0])!==-1?(vh.manageArrayContainers(P,z,h),c.calc=!0):(O?O.arrayOk&&!L0.traceIs(g,"regl")&&(Sa.isArrayOrTypedArray(z)||Sa.isArrayOrTypedArray(T))?c.calc=!0:v_.update(c,O):c.calc=!0,P.set(z))}}if(["swapxyaxes","orientationaxes"].indexOf(x)!==-1&&Vv.swap(e,r),x==="orientationaxes"){var Ae=Ec(e.layout,"hovermode"),Fe=Ae.get();Fe==="x"?Ae.set("y"):Fe==="y"?Ae.set("x"):Fe==="x unified"?Ae.set("y unified"):Fe==="y unified"&&Ae.set("x unified")}if(["orientation","type"].indexOf(x)!==-1){for(d=[],u=0;u<r.length;u++){var Pe=a[r[u]];L0.traceIs(Pe,"cartesian")&&(_(Pe.xaxis||"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:Sa.extendDeepNoArrays([],[l,r])}}function HM(e,t,r){e=Sa.getGraphDiv(e),vh.clearPromiseQueue(e);var n={};if(typeof t=="string")n[t]=r;else if(Sa.isPlainObject(t))n=Sa.extendFlat({},t);else return Sa.warn("Relayout fail.",t,r),Promise.reject();Object.keys(n).length&&(e.changed=!0);var i=rde(e,n),a=i.flags;a.calc&&(e.calcdata=void 0);var o=[Qo.previousPromises];a.layoutReplot?o.push(Au.layoutReplot):Object.keys(n).length&&(Qhe(e,a,i)||Qo.supplyDefaults(e),a.legend&&o.push(Au.doLegend),a.layoutstyle&&o.push(Au.layoutStyles),a.axrange&&GP(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(jM)),o.push(Qo.rehover,Qo.redrag,Qo.reselect),ap.add(e,HM,[e,i.undoit],HM,[e,i.redoit]);var s=Sa.syncOrAsync(o,e);return(!s||!s.then)&&(s=Promise.resolve(e)),s.then(function(){return e.emit("plotly_relayout",i.eventData),e})}function 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 Sa.coerce(a,o,Tdt,d,v)},l={};for(var u in r.rangesAltered){var c=Vv.id2name(u);if(a=e.layout[c],o=n[c],wdt(a,o,s,l),o._matchGroup){for(var f in o._matchGroup)if(f!==u){var h=n[Vv.id2name(f)];h.autorange=o.autorange,h.range=o.range.slice(),h._input.range=o.range.slice()}}}return!0}function GP(e,t){var r=t?function(n){var i=[],a=!0;for(var o in t){var s=Vv.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 Vv.draw(n,i,{skipTitle:a})}:function(n){return Vv.draw(n,"redraw")};e.push(Edt,Au.doAutoRangeAndConstraints,r,Au.drawData,Au.finalDraw)}var ede=/^[xyz]axis[0-9]*\.range(\[[0|1]\])?$/,tde=/^[xyz]axis[0-9]*\.autorange$/,qdt=/^[xyz]axis[0-9]*\.domain(\[[0|1]\])?$/;function rde(e,t){var r=e.layout,n=e._fullLayout,i=n._guiEditing,a=DP(n._preGUI,i),o=Object.keys(t),s=Vv.list(e),l=Sa.extendDeepAll({},t),u={},c,f,h;for(o=Object.keys(t),f=0;f<o.length;f++)if(o[f].indexOf("allaxes")===0){for(h=0;h<s.length;h++){var d=s[h]._id.slice(1),v=d.indexOf("scene")!==-1?d+".":"",_=o[f].replace("allaxes",v+s[h]._name);t[_]||(t[_]=t[o[f]])}delete t[o[f]]}var b=v_.layoutFlags(),p={},k={};function E(pt,Zt){if(Array.isArray(pt)){pt.forEach(function(lt){E(lt,Zt)});return}if(!(pt in t||vh.hasParent(t,pt))){var st=a(r,pt);pt in k||(k[pt]=Ly(st.get())),Zt!==void 0&&st.set(Zt)}}var S={},L;function x(pt){var Zt=Vv.name2id(pt.split(".")[0]);return S[Zt]=1,Zt}for(var C in t){if(vh.hasParent(t,C))throw new Error("cannot set "+C+" and a parent attribute simultaneously");for(var M=a(r,C),g=t[C],P=M.parts.length,T=P-1;T>0&&typeof M.parts[T]!="string";)T--;var z=M.parts[T],O=M.parts[T-1]+"."+z,V=M.parts.slice(0,T).join("."),G=Ec(e.layout,V).get(),Z=Ec(n,V).get(),j=M.get();if(g!==void 0){p[C]=g,k[C]=z==="reverse"?g:Ly(j);var N=VP.getLayoutValObject(n,M.parts);if(N&&N.impliedEdits&&g!==null)for(var H in N.impliedEdits)E(Sa.relativeAttr(C,H),N.impliedEdits[H]);if(["width","height"].indexOf(C)!==-1)if(g){E("autosize",null);var te=C==="height"?"width":"height";E(te,n[te])}else n[C]=e._initialAutoSize[C];else if(C==="autosize")E("width",g?null:n.width),E("height",g?null:n.height);else if(O.match(ede))x(O),Ec(n,V+"._inputRange").set(null);else if(O.match(tde)){x(O),Ec(n,V+"._inputRange").set(null);var oe=Ec(n,V).get();oe._inputDomain&&(oe._input.domain=oe._inputDomain.slice())}else O.match(qdt)&&Ec(n,V+"._inputDomain").set(null);if(z==="type"){L=G;var _e=Z.type==="linear"&&g==="log",Ee=Z.type==="log"&&g==="linear";if(_e||Ee){if(!L||!L.range)E(V+".autorange",!0);else if(Z.autorange)_e&&(L.range=L.range[1]>L.range[0]?[1,2]:[2,1]);else{var Ce=L.range[0],me=L.range[1];_e?(Ce<=0&&me<=0&&E(V+".autorange",!0),Ce<=0?Ce=me/1e6:me<=0&&(me=Ce/1e6),E(V+".range[0]",Math.log(Ce)/Math.LN10),E(V+".range[1]",Math.log(me)/Math.LN10)):(E(V+".range[0]",Math.pow(10,Ce)),E(V+".range[1]",Math.pow(10,me)))}Array.isArray(n._subplots.polar)&&n._subplots.polar.length&&n[M.parts[0]]&&M.parts[1]==="radialaxis"&&delete n[M.parts[0]]._subplot.viewInitial["radialaxis.range"],L0.getComponentMethod("annotations","convertCoords")(e,Z,g,E),L0.getComponentMethod("images","convertCoords")(e,Z,g,E)}else E(V+".autorange",!0),E(V+".range",null);Ec(n,V+"._inputRange").set(null)}else if(z.match(kdt)){var ie=Ec(n,C).get(),Se=(g||{}).type;(!Se||Se==="-")&&(Se="linear"),L0.getComponentMethod("annotations","convertCoords")(e,ie,Se,E),L0.getComponentMethod("images","convertCoords")(e,ie,Se,E)}var Le=RP.containerArrayMatch(C);if(Le){c=Le.array,f=Le.index;var Ae=Le.property,Fe=N||{editType:"calc"};f!==""&&Ae===""&&(RP.isAddVal(g)?k[C]=null:RP.isRemoveVal(g)?k[C]=(Ec(r,c).get()||[])[f]:Sa.warn("unrecognized full object value",t)),v_.update(b,Fe),u[c]||(u[c]={});var Pe=u[c][f];Pe||(Pe=u[c][f]={}),Pe[Ae]=g,delete t[C]}else z==="reverse"?(G.range?G.range.reverse():(E(V+".autorange",!0),G.range=[1,0]),Z.autorange?b.calc=!0:b.plot=!0):(C==="dragmode"&&(g===!1&&j!==!1||g!==!1&&j===!1)||n._has("scatter-like")&&n._has("regl")&&C==="dragmode"&&(g==="lasso"||g==="select")&&!(j==="lasso"||j==="select")?b.plot=!0:N?v_.update(b,N):b.calc=!0,M.set(g))}}for(c in u){var ge=RP.applyContainerArrayChanges(e,a(r,c),u[c],b,a);ge||(b.plot=!0)}for(var Re in S){L=Vv.getFromId(e,Re);var ce=L&&L._constraintGroup;if(ce){b.calc=!0;for(var Ze in ce)S[Ze]||(Vv.getFromId(e,Ze)._constraintShrinkable=!0)}}(ide(e)||t.height||t.width)&&(b.plot=!0);var ut=n.shapes;for(f=0;f<ut.length;f++)if(ut[f].showlegend){b.calc=!0;break}return(b.plot||b.calc)&&(b.layoutReplot=!0),{flags:b,rangesAltered:S,undoit:k,redoit:p,eventData:l}}function ide(e){var t=e._fullLayout,r=t.width,n=t.height;return e.layout.autosize&&Qo.plotAutoSize(e,e.layout,t),t.width!==r||t.height!==n}function NP(e,t,r,n){e=Sa.getGraphDiv(e),vh.clearPromiseQueue(e),Sa.isPlainObject(t)||(t={}),Sa.isPlainObject(r)||(r={}),Object.keys(t).length&&(e.changed=!0),Object.keys(r).length&&(e.changed=!0);var i=vh.coerceTraceIndices(e,n),a=$he(e,Sa.extendFlat({},t),i),o=a.flags,s=rde(e,Sa.extendFlat({},r)),l=s.flags;(o.calc||l.calc)&&(e.calcdata=void 0),o.clearAxisTypes&&vh.clearAxisTypes(e,i,r);var u=[];l.layoutReplot?u.push(Au.layoutReplot):o.fullReplot?u.push(_l._doPlot):(u.push(Qo.previousPromises),Qhe(e,l,s)||Qo.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&&GP(u,s.rangesAltered),l.ticks&&u.push(Au.doTicksRelayout),l.modebar&&u.push(Au.doModeBar),l.camera&&u.push(Au.doCamera),u.push(jM)),u.push(Qo.rehover,Qo.redrag,Qo.reselect),ap.add(e,NP,[e,a.undoit,s.undoit,a.traces],NP,[e,a.redoit,s.redoit,a.traces]);var c=Sa.syncOrAsync(u,e);return(!c||!c.then)&&(c=Promise.resolve(e)),c.then(function(){return e.emit("plotly_update",{data:a.eventData,layout:s.eventData}),e})}function KN(e){return function(r){r._fullLayout._guiEditing=!0;var n=e.apply(null,arguments);return r._fullLayout._guiEditing=!1,n}}var Bdt=[{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"}],Ndt=[{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.slice(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 Udt(e,t){for(var r=0;r<t.length;r++)if(t[r]._fullInput.uid===e)return r;return-1}function Vdt(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=Sa.isPlainObject(e),n=Array.isArray(e);return r||n?(r&&Sa.isPlainObject(t)||n&&Array.isArray(t))&&JSON.stringify(e)===JSON.stringify(t):e===t}function Gdt(e,t,r,n){var i=n._preGUI,a,o,s,l,u,c,f,h,d,v,_=[],b={},p={};for(a in i){if(u=Bhe(a,Bdt),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"&&_.push(d),f.set(Ly(Ec(n,a).get()));continue}else if(v==="autorange"||v.slice(0,6)==="range["){var k=i[d+".range[0]"],E=i[d+".range[1]"],S=i[d+".autorange"];if(S||S===null&&k===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(Ly(Ec(n,a).get()));continue}}}}}else Sa.warn("unrecognized GUI edit: "+a);delete i[a],u&&u.tail.slice(0,6)==="range["&&(p[u.head]=1)}for(var x=0;x<_.length;x++){var C=_[x];if(p[C]){var M=Ec(t,C).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=Udt(P,r);if(V<0){delete g[P];break}var G=r[V];O=G._fullInput;var Z=Vdt(P,e,O.index);if(Z<0){delete g[P];break}z=e[Z]}if(u=Bhe(a,Ndt),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(Ly(Ec(O,a).get()));continue}}else Sa.warn("unrecognized GUI edit: "+a+" in trace uid "+P);delete T[a]}}}function Hdt(e,t,r,n){var i,a;function o(){return _l.addFrames(e,i)}e=Sa.getGraphDiv(e),vh.clearPromiseQueue(e);var s=e._fullData,l=e._fullLayout;if(!Sa.isPlotDiv(e)||!s||!l)a=_l.newPlot(e,t,r,n);else{if(Sa.isPlainObject(t)){var u=t;t=u.data,r=u.layout,n=u.config,i=u.frames}var c=!1;if(n){let O=Sa.extendDeepAll({},e._context);e._context=void 0,Hhe(e,n),c=!vh.collectionsAreEqual(O,e._context)}if(c){let O=e._ev.eventNames().map(V=>[V,e._ev.listeners(V)]);a=_l.newPlot(e,t,r,n).then(()=>{for(let[V,G]of O)G.forEach(Z=>e.on(V,Z));return _l.react(e,t,r,n)})}else{e.data=t||[],vh.cleanData(e.data),e.layout=r||{},vh.cleanLayout(e.layout),Gdt(e.data,e.layout,s,l),Qo.supplyDefaults(e,{skipUpdateCalc:!0});var f=e._fullData,h=e._fullLayout,d=h.datarevision===void 0,v=h.transition,_=Wdt(e,l,h,d,v),b=_.newDataRevision,p=jdt(e,s,f,d,v,b);if(ide(e)&&(_.layoutReplot=!0),p.calc||_.calc){e.calcdata=void 0;for(var k=Object.getOwnPropertyNames(h),E=0;E<k.length;E++){var S=k[E],L=S.substring(0,5);if(L==="xaxis"||L==="yaxis"){var x=h[S]._emptyCategories;x&&x()}}}else Qo.supplyDefaultsUpdateCalc(e.calcdata,f);var C=[];if(i&&(e._transitionData={},Qo.createTransitionData(e),C.push(o)),h.transition&&(p.anim||_.anim))_.ticks&&C.push(Au.doTicksRelayout),Qo.doCalcdata(e),Au.doAutoRangeAndConstraints(e),C.push(function(){return Qo.transitionFromReact(e,p,_,l)});else if(p.fullReplot||_.layoutReplot)e._fullLayout._skipDefaults=!0,C.push(_l._doPlot);else{for(var M in _.arrays){var g=_.arrays[M];if(g.length){var P=L0.getComponentMethod(M,"drawOne");if(P!==Sa.noop)for(var T=0;T<g.length;T++)P(e,g[T]);else{var z=L0.getComponentMethod(M,"draw");if(z===Sa.noop)throw new Error("cannot draw components: "+M);z(e)}}}C.push(Qo.previousPromises),p.style&&C.push(Au.doTraceStyle),(p.colorbars||_.colorbars)&&C.push(Au.doColorBars),_.legend&&C.push(Au.doLegend),_.layoutstyle&&C.push(Au.layoutStyles),_.axrange&&GP(C),_.ticks&&C.push(Au.doTicksRelayout),_.modebar&&C.push(Au.doModeBar),_.camera&&C.push(Au.doCamera),C.push(jM)}C.push(Qo.rehover,Qo.redrag,Qo.reselect),a=Sa.syncOrAsync(C,e),(!a||!a.then)&&(a=Promise.resolve(e))}}return a.then(()=>(c||e.emit("plotly_react",{config:n,data:t,layout:r}),e))}function jdt(e,t,r,n,i,a){var o=t.length===r.length;if(!i&&!o)return{fullReplot:!0,calc:!0};var s=v_.traceFlags();s.arrays={},s.nChanges=0,s.nChangesAnim=0;var l,u;function c(d){var v=VP.getTraceValObject(u,d);return!u._module.animatable&&v.anim&&(v.anim=!1),v}var f={getValObject:c,flags:s,immutable:n,transition:i,newDataRevision:a,gd:e},h={};for(l=0;l<t.length;l++)if(r[l]){if(u=r[l]._fullInput,h[u.uid])continue;h[u.uid]=1,UP(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=v_.layoutFlags();a.arrays={},a.rangesAltered={},a.nChanges=0,a.nChangesAnim=0;function o(h){return VP.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 UP(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 UP(e,t,r,n){var i,a,o,s=n.getValObject,l=n.flags,u=n.immutable,c=n.inArray,f=n.arrayIndex;function h(){var V=i.editType;if(c&&V.indexOf("arraydraw")!==-1){Sa.pushUnique(l.arrays[c],f);return}v_.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],_=t[a],b=r.concat(a);if(o=b.join("."),!(a.charAt(0)==="_"||typeof v=="function"||v===_)){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(_)))){var k=i.valType,E,S=d(i),L=Array.isArray(v),x=Array.isArray(_);if(L&&x){var C="_input_"+a,M=e[C],g=t[C];if(Array.isArray(M)&&M===g)continue}if(_===void 0)S&&L?l.calc=!0:h();else if(i._isLinkedToArray){var P=[],T=!1;c||(l.arrays[a]=P);var z=Math.min(v.length,_.length),O=Math.max(v.length,_.length);if(z!==O)if(i.editType==="arraydraw")T=!0;else{h();continue}for(E=0;E<z;E++)UP(v[E],_[E],b.concat(E),Sa.extendFlat({inArray:a,arrayIndex:E},n));if(T)for(E=z;E<O;E++)P.push(E)}else!k&&Sa.isPlainObject(v)?UP(v,_,b,n):S?L&&x?(u&&(l.calc=!0),(u||n.newDataRevision)&&h()):L!==x?l.calc=!0:h():L&&x?(v.length!==_.length||String(v)!==String(_))&&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 Xdt(e,t,r){if(e=Sa.getGraphDiv(e),!Sa.isPlotDiv(e))throw new Error("This element is not a Plotly plot: "+e+". It's likely that you've failed to create a plot before animating it. For more details, see https://plotly.com/javascript/animations/");var n=e._transitionData;n._frameQueue||(n._frameQueue=[]),r=Qo.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=Qo.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 j={frame:V,name:z[O].name,frameOpts:G,transitionOpts:Z};O===z.length-1&&(j.onComplete=l(u,2),j.onInterrupt=c),n._frameQueue.push(j)}r.mode==="immediate"&&(n._lastFrameAt=-1/0),n._animationRaf||_()}}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,Qo.transition(e,z.frame.data,z.frame.layout,vh.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 _(){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 k,E,S=[],L=t==null,x=Array.isArray(t),C=!L&&!x&&Sa.isPlainObject(t);if(C)S.push({type:"object",data:p(Sa.extendFlat({},t))});else if(L||["string","number"].indexOf(typeof t)!==-1)for(k=0;k<n._frames.length;k++)E=n._frames[k],E&&(L||String(E.group)===String(t))&&S.push({type:"byname",name:String(E.name),data:p({name:E.name})});else if(x)for(k=0;k<t.length;k++){var M=t[k];["number","string"].indexOf(typeof M)!==-1?(M=String(M),S.push({type:"byname",name:M,data:p({name:M})})):Sa.isPlainObject(M)&&S.push({type:"object",data:p(Sa.extendFlat({},M))})}for(k=0;k<S.length;k++)if(E=S[k],E.type==="byname"&&!n._frameHash[E.data.name]){Sa.warn('animate failure: frame not found: "'+E.data.name+'"'),c();return}["next","immediate"].indexOf(r.mode)!==-1&&f(),r.direction==="reverse"&&S.reverse();var g=e._fullLayout._currentFrame;if(g&&r.fromcurrent){var P=-1;for(k=0;k<S.length;k++)if(E=S[k],E.type==="byname"&&E.name===g){P=k;break}if(P>0&&P<S.length-1){var T=[];for(k=0;k<S.length;k++)E=S[k],(S[k].type!=="byname"||k>P)&&T.push(E);S=T}}S.length>0?h(S):(e.emit("plotly_animated"),u())})}function Zdt(e,t,r){if(e=Sa.getGraphDiv(e),t==null)return Promise.resolve();if(!Sa.isPlotDiv(e))throw new Error("This element is not a Plotly plot: "+e+". It's likely that you've failed to create a plot before adding frames. For more details, see https://plotly.com/javascript/animations/");var n,i,a,o,s=e._transitionData._frames,l=e._transitionData._frameHash;if(!Array.isArray(t))throw new Error("addFrames failure: frameList must be an Array of frame definitions"+t);var u=s.length+t.length*2,c=[],f={};for(n=t.length-1;n>=0;n--)if(Sa.isPlainObject(t[n])){var h=t[n].name,d=(l[h]||f[h]||{}).name,v=t[n].name,_=l[d]||f[d];d&&v&&typeof v=="number"&&_&&XN<qhe&&(XN++,Sa.warn('addFrames: overwriting frame "'+(l[d]||f[d]).name+'" with a frame whose name of type "number" also equates to "'+d+'". This is valid but may potentially lead to unexpected behavior since all plotly.js frame names are stored internally as strings.'),XN===qhe&&Sa.warn("addFrames: This API call has yielded too many of these warnings. For the rest of this call, further warnings about numeric frame names will be suppressed.")),f[h]={name:h},c.push({frame:Qo.supplyFrameDefaults(t[n]),index:r&&r[n]!==void 0&&r[n]!==null?r[n]:u+n})}c.sort(function(C,M){return C.index>M.index?-1:C.index<M.index?1:0});var b=[],p=[],k=s.length;for(n=c.length-1;n>=0;n--){if(i=c[n].frame,typeof i.name=="number"&&Sa.warn("Warning: addFrames accepts frames with numeric names, but the numbers areimplicitly cast to strings"),!i.name)for(;l[i.name="frame "+e._transitionData._counter++];);if(l[i.name]){for(a=0;a<s.length&&(s[a]||{}).name!==i.name;a++);b.push({type:"replace",index:a,value:i}),p.unshift({type:"replace",index:a,value:s[a]})}else o=Math.max(0,Math.min(c[n].index,k)),b.push({type:"insert",index:o,value:i}),p.unshift({type:"delete",index:o}),k++}var E=Qo.modifyFrames,S=Qo.modifyFrames,L=[e,p],x=[e,b];return ap&&ap.add(e,E,L,S,x),Qo.modifyFrames(e,b)}function Ydt(e,t){if(e=Sa.getGraphDiv(e),!Sa.isPlotDiv(e))throw new Error("This element is not a Plotly plot: "+e);var r,n,i=e._transitionData._frames,a=[],o=[];if(!t)for(t=[],r=0;r<i.length;r++)t.push(r);for(t=t.slice(),t.sort(),r=t.length-1;r>=0;r--)n=t[r],a.push({type:"delete",index:n}),o.unshift({type:"insert",index:n,value:i[n]});var s=Qo.modifyFrames,l=Qo.modifyFrames,u=[e,o],c=[e,a];return ap&&ap.add(e,s,u,l,c),Qo.modifyFrames(e,a)}function Kdt(e){e=Sa.getGraphDiv(e);var t=e._fullLayout||{},r=e._fullData||[];return Qo.cleanPlot([],{},r,t),Qo.purge(e),ZN.purge(e),t._container&&t._container.remove(),delete e._context,e}function Jdt(e){var t=e._fullLayout,r=e.getBoundingClientRect();if(!Sa.equalDomRects(r,t._lastBBox)){var n=t._invTransform=Sa.inverseTransformMatrix(Sa.getFullTransformMatrix(e));t._invScaleX=Math.sqrt(n[0][0]*n[0][0]+n[0][1]*n[0][1]+n[0][2]*n[0][2]),t._invScaleY=Math.sqrt(n[1][0]*n[1][0]+n[1][1]*n[1][1]+n[1][2]*n[1][2]),t._lastBBox=r}}function $dt(e){var t=FP.select(e),r=e._fullLayout;if(r._calcInverseTransform=Jdt,r._calcInverseTransform(e),r._container=t.selectAll(".plot-container").data([0]),r._container.enter().insert("div",":first-child").classed("plot-container",!0).classed("plotly",!0).style({width:"100%",height:"100%"}),r._paperdiv=r._container.selectAll(".svg-container").data([0]),r._paperdiv.enter().append("div").classed("user-select-none",!0).classed("svg-container",!0).style("position","relative"),r._glcontainer=r._paperdiv.selectAll(".gl-container").data([{}]),r._glcontainer.enter().append("div").classed("gl-container",!0),r._paperdiv.selectAll(".main-svg").remove(),r._paperdiv.select(".modebar-container").remove(),r._paper=r._paperdiv.insert("svg",":first-child").classed("main-svg",!0),r._toppaper=r._paperdiv.append("svg").classed("main-svg",!0),r._modebardiv=r._paperdiv.append("div"),delete r._modeBar,r._hoverpaper=r._paperdiv.append("svg").classed("main-svg",!0),!r._uid){var n={};FP.selectAll("defs").each(function(){this.id&&(n[this.id.split("-")[1]]=1)}),r._uid=Sa.randstr(n)}r._paperdiv.selectAll(".main-svg").attr(Mdt.svgAttrs),r._defs=r._paper.append("defs").attr("id","defs-"+r._uid),r._clips=r._defs.append("g").classed("clips",!0),r._topdefs=r._toppaper.append("defs").attr("id","topdefs-"+r._uid),r._topclips=r._topdefs.append("g").classed("clips",!0),r._bgLayer=r._paper.append("g").classed("bglayer",!0),r._draggers=r._paper.append("g").classed("draglayer",!0);var i=r._paper.append("g").classed("layer-below",!0);r._imageLowerLayer=i.append("g").classed("imagelayer",!0),r._shapeLowerLayer=i.append("g").classed("shapelayer",!0),r._cartesianlayer=r._paper.append("g").classed("cartesianlayer",!0),r._polarlayer=r._paper.append("g").classed("polarlayer",!0),r._smithlayer=r._paper.append("g").classed("smithlayer",!0),r._ternarylayer=r._paper.append("g").classed("ternarylayer",!0),r._geolayer=r._paper.append("g").classed("geolayer",!0),r._funnelarealayer=r._paper.append("g").classed("funnelarealayer",!0),r._pielayer=r._paper.append("g").classed("pielayer",!0),r._iciclelayer=r._paper.append("g").classed("iciclelayer",!0),r._treemaplayer=r._paper.append("g").classed("treemaplayer",!0),r._sunburstlayer=r._paper.append("g").classed("sunburstlayer",!0),r._indicatorlayer=r._toppaper.append("g").classed("indicatorlayer",!0),r._glimages=r._paper.append("g").classed("glimages",!0);var a=r._toppaper.append("g").classed("layer-above",!0);r._imageUpperLayer=a.append("g").classed("imagelayer",!0),r._shapeUpperLayer=a.append("g").classed("shapelayer",!0),r._selectionLayer=r._toppaper.append("g").classed("selectionlayer",!0),r._infolayer=r._toppaper.append("g").classed("infolayer",!0),r._menulayer=r._toppaper.append("g").classed("menulayer",!0),r._zoomlayer=r._toppaper.append("g").classed("zoomlayer",!0),r._hoverlayer=r._hoverpaper.append("g").classed("hoverlayer",!0),r._modebardiv.classed("modebar-container",!0).style("position","absolute").style("top","0px").style("right","0px"),e.emit("plotly_framework")}_l.animate=Xdt;_l.addFrames=Zdt;_l.deleteFrames=Ydt;_l.addTraces=Khe;_l.deleteTraces=Jhe;_l.extendTraces=Zhe;_l.moveTraces=YN;_l.prependTraces=Yhe;_l.newPlot=Rdt;_l._doPlot=Cdt;_l.purge=Kdt;_l.react=Hdt;_l.redraw=Idt;_l.relayout=HM;_l.restyle=qP;_l.setPlotConfig=Ldt;_l.update=NP;_l._guiRelayout=KN(HM);_l._guiRestyle=KN(qP);_l._guiUpdate=KN(NP);_l._storeDirectGUIEdit=Odt});var Py=ye(Mm=>{"use strict";var Qdt=qa();Mm.getDelay=function(e){return e._has&&(e._has("gl3d")||e._has("mapbox")||e._has("map"))?500:0};Mm.getRedrawFunc=function(e){return function(){Qdt.getComponentMethod("colorbar","draw")(e)}};Mm.encodeSVG=function(e){return"data:image/svg+xml,"+encodeURIComponent(e)};Mm.encodeJSON=function(e){return"data:application/json,"+encodeURIComponent(e)};var nde=window.URL||window.webkitURL;Mm.createObjectURL=function(e){return nde.createObjectURL(e)};Mm.revokeObjectURL=function(e){return nde.revokeObjectURL(e)};Mm.createBlob=function(e,t){if(t==="svg")return new window.Blob([e],{type:"image/svg+xml;charset=utf-8"});if(t==="full-json")return new window.Blob([e],{type:"application/json;charset=utf-8"});var r=evt(window.atob(e));return new window.Blob([r],{type:"image/"+t})};Mm.octetStream=function(e){document.location.href="data:application/octet-stream"+e};function evt(e){for(var t=e.length,r=new ArrayBuffer(t),n=new Uint8Array(r),i=0;i<t;i++)n[i]=e.charCodeAt(i);return r}Mm.IMAGE_URL_PREFIX=/^data:image\/\w+;base64,/});var jP=ye((Lor,ade)=>{"use strict";var $N=Oa(),kor=Dr(),tvt=So(),rvt=ka(),Cor=Wp(),JN=/"/g,WM="TOBESTRIPPED",ivt=new RegExp('("'+WM+")|("+WM+'")',"g");function nvt(e){var t=$N.select("body").append("div").style({display:"none"}).html(""),r=e.replace(/(&[^;]*;)/gi,function(n){return n==="&lt;"?"&#60;":n==="&rt;"?"&#62;":n.indexOf("<")!==-1||n.indexOf(">")!==-1?"":t.html(n).text()});return t.remove(),r}function avt(e){return e.replace(/&(?!\w+;|\#[0-9]+;| \#x[0-9A-F]+;)/g,"&amp;")}ade.exports=function(t,r,n){var i=t._fullLayout,a=i._paper,o=i._toppaper,s=i.width,l=i.height,u;a.insert("rect",":first-child").call(tvt.setRect,0,0,s,l).call(rvt.fill,i.paper_bgcolor);var c=i._basePlotModules||[];for(u=0;u<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=$N.select(this);if(this.style.visibility==="hidden"||this.style.display==="none"){b.remove();return}else b.style({visibility:null,display:null});var p=this.style.fontFamily;p&&p.indexOf('"')!==-1&&b.style("font-family",p.replace(JN,WM));var k=this.style.fontWeight;k&&(k==="normal"||k==="400")&&b.style("font-weight",void 0);var E=this.style.fontStyle;E&&E==="normal"&&b.style("font-style",void 0);var S=this.style.fontVariant;S&&S==="normal"&&b.style("font-variant",void 0)}),a.selectAll(".gradient_filled,.pattern_filled").each(function(){var b=$N.select(this),p=this.style.fill;p&&p.indexOf("url(")!==-1&&b.style("fill",p.replace(JN,WM));var k=this.style.stroke;k&&k.indexOf("url(")!==-1&&b.style("stroke",k.replace(JN,WM))}),(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 _=new window.XMLSerializer().serializeToString(a.node());return _=nvt(_),_=avt(_),_=_.replace(ivt,"'"),_}});var WP=ye((Por,ode)=>{"use strict";var ovt=Dr(),svt=pb().EventEmitter,XM=Py();function lvt(e){var t=e.emitter||new svt,r=new Promise(function(n,i){var a=window.Image,o=e.svg,s=e.format||"png",l=e.canvas,u=e.scale||1,c=e.width||300,f=e.height||150,h=u*c,d=u*f,v=l.getContext("2d",{willReadFrequently:!0}),_=new a,b,p;s==="svg"||ovt.isSafari()?p=XM.encodeSVG(o):(b=XM.createBlob(o,"svg"),p=XM.createObjectURL(b)),l.width=h,l.height=d,_.onload=function(){var k;switch(b=null,XM.revokeObjectURL(p),s!=="svg"&&v.drawImage(_,0,0,h,d),s){case"jpeg":k=l.toDataURL("image/jpeg");break;case"png":k=l.toDataURL("image/png");break;case"webp":k=l.toDataURL("image/webp");break;case"svg":k=p;break;default:var E="Image format is not jpeg, png, svg or webp.";if(i(new Error(E)),!e.promise)return t.emit("error",E)}n(k),e.promise||t.emit("success",k)},_.onerror=function(k){if(b=null,XM.revokeObjectURL(p),i(k),!e.promise)return t.emit("error",k)},_.src=p});return e.promise?r:t}ode.exports=lvt});var eU=ye((Ior,ude)=>{"use strict";var sde=Eo(),lde=HP(),uvt=Mc(),Em=Dr(),ZM=Py(),cvt=jP(),fvt=WP(),hvt=l6().version,QN={format:{valType:"enumerated",values:["png","jpeg","webp","svg","full-json"],dflt:"png"},width:{valType:"number",min:1},height:{valType:"number",min:1},scale:{valType:"number",min:0,dflt:1},setBackground:{valType:"any",dflt:!1},imageDataOnly:{valType:"boolean",dflt:!1}};function dvt(e,t){t=t||{};var r,n,i,a;Em.isPlainObject(e)?(r=e.data||[],n=e.layout||{},i=e.config||{},a={}):(e=Em.getGraphDiv(e),r=Em.extendDeep([],e.data),n=Em.extendDeep({},e.layout),i=e._context,a=e._fullLayout||{});function o(x){return!(x in t)||Em.validate(t[x],QN[x])}if(!o("width")&&t.width!==null||!o("height")&&t.height!==null)throw new Error("Height and width should be pixel values.");if(!o("format"))throw new Error("Export format is not "+Em.join2(QN.format.values,", "," or ")+".");var s={};function l(x,C){return Em.coerce(t,s,QN,x,C)}var u=l("format"),c=l("width"),f=l("height"),h=l("scale"),d=l("setBackground"),v=l("imageDataOnly"),_=document.createElement("div");_.style.position="absolute",_.style.left="-5000px",document.body.appendChild(_);var b=Em.extendFlat({},n);c?b.width=c:t.width===null&&sde(a.width)&&(b.width=a.width),f?b.height=f:t.height===null&&sde(a.height)&&(b.height=a.height);var p=Em.extendFlat({},i,{_exportedPlot:!0,staticPlot:!0,setBackground:d}),k=ZM.getRedrawFunc(_);function E(){return new Promise(function(x){setTimeout(x,ZM.getDelay(_._fullLayout))})}function S(){return new Promise(function(x,C){var M=cvt(_,u,h),g=_._fullLayout.width,P=_._fullLayout.height;function T(){lde.purge(_),document.body.removeChild(_)}if(u==="full-json"){var z=uvt.graphJson(_,!1,"keepdata","object",!0,!0);return z.version=hvt,z=JSON.stringify(z),T(),x(v?z:ZM.encodeJSON(z))}if(T(),u==="svg")return x(v?M:ZM.encodeSVG(M));var O=document.createElement("canvas");O.id=Em.randstr(),fvt({format:u,width:g,height:P,scale:h,canvas:O,svg:M,promise:!0}).then(x).catch(C)})}function L(x){return v?x.replace(ZM.IMAGE_URL_PREFIX,""):x}return new Promise(function(x,C){lde.newPlot(_,r,b,p).then(k).then(E).then(S).then(function(M){x(L(M))}).catch(function(M){C(M)})})}ude.exports=dvt});var hde=ye((Ror,fde)=>{"use strict";var P0=Dr(),vvt=Mc(),pvt=w3(),gvt=cb().dfltConfig,Pg=P0.isPlainObject,Gb=Array.isArray,tU=P0.isArrayOrTypedArray;fde.exports=function(t,r){t===void 0&&(t=[]),r===void 0&&(r={});var n=pvt.get(),i=[],a={_context:P0.extendFlat({},gvt)},o,s;Gb(t)?(a.data=P0.extendDeep([],t),o=t):(a.data=[],o=[],i.push(md("array","data"))),Pg(r)?(a.layout=P0.extendDeep({},r),s=r):(a.layout={},s={},arguments.length>1&&i.push(md("object","layout"))),vvt.supplyDefaults(a);for(var l=a._fullData,u=o.length,c=0;c<u;c++){var f=o[c],h=["data",c];if(!Pg(f)){i.push(md("object",h));continue}var d=l[c],v=d.type,_=n.traces[v].attributes;_.type={valType:"enumerated",values:[v]},d.visible===!1&&f.visible!==!1&&i.push(md("invisible",h)),XP(f,d,_,i,h)}var b=a._fullLayout,p=mvt(n,l);return XP(s,b,p,i,"layout"),i.length===0?void 0:i};function XP(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=xvt(r,l),d=(h||{}).valType,v=d==="info_array",_=d==="colorscale",b=(h||{}).items;if(!_vt(r,l))n.push(md("schema",i,u));else if(Pg(c)&&Pg(f)&&d!=="any")XP(c,f,h,n,i,u);else if(v&&Gb(c)){c.length>f.length&&n.push(md("unused",i,u.concat(f.length)));var p=f.length,k=Array.isArray(b);k&&(p=Math.min(p,b.length));var E,S,L,x,C;if(h.dimensions===2)for(S=0;S<p;S++)if(Gb(c[S])){c[S].length>f[S].length&&n.push(md("unused",i,u.concat(S,f[S].length)));var M=f[S].length;for(E=0;E<(k?Math.min(M,b[S].length):M);E++)L=k?b[S][E]:b,x=c[S][E],C=f[S][E],P0.validate(x,L)?C!==x&&C!==+x&&n.push(md("dynamic",i,u.concat(S,E),x,C)):n.push(md("value",i,u.concat(S,E),x))}else n.push(md("array",i,u.concat(S),c[S]));else for(S=0;S<p;S++)L=k?b[S]:b,x=c[S],C=f[S],P0.validate(x,L)?C!==x&&C!==+x&&n.push(md("dynamic",i,u.concat(S),x,C)):n.push(md("value",i,u.concat(S),x))}else if(h.items&&!v&&Gb(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),Pg(c[O])&&Pg(f[T])){P.push(O);var V=c[O],G=f[T];Pg(V)&&V.visible!==!1&&G.visible===!1?n.push(md("invisible",i,z)):XP(V,G,g,n,i,z)}}for(T=0;T<c.length;T++)z=u.slice(),z.push(T),Pg(c[T])?P.indexOf(T)===-1&&n.push(md("unused",i,z)):n.push(md("object",i,z,c[T]))}else!Pg(c)&&Pg(f)?n.push(md("object",i,u,c)):!tU(c)&&tU(f)&&!v&&!_?n.push(md("array",i,u,c)):l in t?P0.validate(c,h)?h.valType==="enumerated"&&(h.coerceNumber&&c!==+f||!tU(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 mvt(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 yvt={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=Vb(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=Vb(e)+"key "+t,r+" must be linked to an array container"},schema:function(e,t){return Vb(e)+"key "+t+" is not part of the schema"},unused:function(e,t,r){var n=Pg(r)?"container":"key";return Vb(e)+n+" "+t+" did not get coerced"},dynamic:function(e,t,r,n){return[Vb(e)+"key",t,"(set to '"+r+"')","got reset to","'"+n+"'","during defaults."].join(" ")},invisible:function(e,t){return(t?Vb(e)+"item "+t:"Trace "+e[1])+" got defaulted to be not visible"},value:function(e,t,r){return[Vb(e)+"key "+t,"is set to an invalid value ("+r+")"].join(" ")}};function Vb(e){return Gb(e)?"In data trace "+e[1]+", ":"In "+e+", "}function md(e,t,r,n,i){r=r||"";var a,o;Gb(t)?(a=t[0],o=t[1]):(a=t,o=null);var s=wvt(r),l=yvt[e](t,s,n,i);return P0.log(l),{code:e,container:a,trace:o,path:r,astr:s,msg:l}}function _vt(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 xvt(e,t){if(t in e)return e[t];var r=cde(t);return e[r.keyMinusId]}var bvt=P0.counterRegex("([a-z]+)");function cde(e){var t=e.match(bvt);return{keyMinusId:t&&t[1],id:t&&t[2]}}function wvt(e){if(!Gb(e))return String(e);for(var t="",r=0;r<e.length;r++){var n=e[r];typeof n=="number"?t=t.slice(0,-1)+"["+n+"]":t+=n,r<e.length-1&&(t+=".")}return t}});var vde=ye((Dor,dde)=>{"use strict";var Tvt=Dr(),ZP=Py();function Avt(e,t,r){var n=document.createElement("a"),i="download"in n,a=new Promise(function(o,s){var l,u;if(i)return l=ZP.createBlob(e,r),u=ZP.createObjectURL(l),n.href=u,n.download=t,document.body.appendChild(n),n.click(),document.body.removeChild(n),ZP.revokeObjectURL(u),l=null,o(t);if(Tvt.isSafari()){var c=r==="svg"?",":";base64,";return ZP.octetStream(c+encodeURIComponent(e)),o(t)}s(new Error("download error"))});return a}dde.exports=Avt});var rU=ye((zor,gde)=>{"use strict";var pde=Dr(),Svt=eU(),Mvt=vde(),For=Py();function Evt(e,t){var r;return pde.isPlainObject(e)||(r=pde.getGraphDiv(e)),t=t||{},t.format=t.format||"png",t.width=t.width||null,t.height=t.height||null,t.imageDataOnly=!0,new Promise(function(n,i){r&&r._snapshotInProgress&&i(new Error("Snapshotting already in progress.")),r&&(r._snapshotInProgress=!0);var a=Svt(e,t),o=t.filename||e.fn||"newplot";o+="."+t.format.replace("-","."),a.then(function(s){return r&&(r._snapshotInProgress=!1),Mvt(s,o,t.format)}).then(function(s){n(s)}).catch(function(s){r&&(r._snapshotInProgress=!1),i(s)})})}gde.exports=Evt});var bde=ye(iU=>{"use strict";var Cp=Dr(),Lp=Cp.isPlainObject,mde=w3(),yde=Mc(),kvt=Gl(),_de=vl(),xde=cb().dfltConfig;iU.makeTemplate=function(e){e=Cp.isPlainObject(e)?e:Cp.getGraphDiv(e),e=Cp.extendDeep({_context:xde},{data:e.data,layout:e.layout}),yde.supplyDefaults(e);var t=e.data||[],r=e.layout||{};r._basePlotModules=e._fullLayout._basePlotModules,r._modules=e._fullLayout._modules;var n={data:{},layout:{}};t.forEach(function(d){var v={};YM(d,v,Lvt.bind(null,d));var _=Cp.coerce(d,{},kvt,"type"),b=n.data[_];b||(b=n.data[_]=[]),b.push(v)}),YM(r,n.layout,Cvt.bind(null,r)),delete n.layout.template;var i=r.template;if(Lp(i)){var a=i.layout,o,s,l,u,c,f;Lp(a)&&YP(a,n.layout);var h=i.data;if(Lp(h)){for(s in n.data)if(l=h[s],Array.isArray(l)){for(c=n.data[s],f=c.length,u=l.length,o=0;o<f;o++)YP(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 YP(e,t){e=Cp.extendDeep({},e);var r=Object.keys(e).sort(),n,i;function a(c,f,h){if(Lp(f)&&Lp(c))YP(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],_=d.newItem(v)._template;_&&YP(_,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,KP(o)===o)for(var l in t){var u=KP(l);l!==u&&u===o&&!(l in e)&&a(s,t[l],o)}}}function KP(e){return e.replace(/[0-9]+$/,"")}function YM(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=KP(o);f!==o&&(u=I0(e,f,i),c=r(u))}if(!(a&&a===c)&&!(!c||c._noTemplating||c.valType==="data_array"||c.arrayOk&&Array.isArray(s)))if(!c.valType&&Lp(s))YM(s,t,r,l,u);else if(c._isLinkedToArray&&Array.isArray(s))for(var h=!1,d=0,v={},_=0;_<s.length;_++){var b=s[_];if(Lp(b)){var p=b.name;if(p)v[p]||(YM(b,t,r,I0(s,d,l),I0(s,d,u)),d++,v[p]=1);else if(!h){var k=_de.arrayDefaultKey(o),E=I0(e,k,n),S=I0(s,d,l);YM(b,t,r,S,I0(s,d,u));var L=Cp.nestedProperty(t,S),x=Cp.nestedProperty(t,E);x.set(L.get()),L.set(null),h=!0}}}else{var C=Cp.nestedProperty(t,l);C.set(s)}}}function Cvt(e,t){return mde.getLayoutValObject(e,Cp.nestedProperty({},t).parts)}function Lvt(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}iU.validateTemplate=function(e,t){var r=Cp.extendDeep({},{_context:xde,data:e.data,layout:e.layout}),n=r.layout||{};Lp(t)||(t=n.template||{});var i=t.layout,a=t.data,o=[];r.layout=n,r.layout.template=t,yde.supplyDefaults(r);var s=r._fullLayout,l=r._fullData,u={};function c(E,S){for(var L in E)if(L.charAt(0)!=="_"&&Lp(E[L])){var x=KP(L),C=[],M;for(M=0;M<S.length;M++)C.push(I0(E,L,S[M])),x!==L&&C.push(I0(E,x,S[M]));for(M=0;M<C.length;M++)u[C[M]]=1;c(E[L],C)}}function f(E,S){for(var L in E)if(L.indexOf("defaults")===-1&&Lp(E[L])){var x=I0(E,L,S);u[x]?f(E[L],x):o.push({code:"unused",path:x})}}if(Lp(i)?(c(s,["layout"]),f(i,"layout")):o.push({code:"layout"}),!Lp(a))o.push({code:"data"});else{for(var h={},d,v=0;v<l.length;v++){var _=l[v];d=_.type,h[d]=(h[d]||0)+1,_._fullInput._template||o.push({code:"missing",index:_.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 k(E,S){for(var L in E)if(L.charAt(0)!=="_"){var x=E[L],C=I0(E,L,S);Lp(x)?(Array.isArray(E)&&x._template===!1&&x.templateitemname&&o.push({code:"missing",path:C,templateitemname:x.templateitemname}),k(x,C)):Array.isArray(x)&&Pvt(x)&&k(x,C)}}if(k({data:l,layout:s},""),o.length)return o.map(Ivt)};function Pvt(e){for(var t=0;t<e.length;t++)if(Lp(e[t]))return!0}function Ivt(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 td=HP();ef._doPlot=td._doPlot;ef.newPlot=td.newPlot;ef.restyle=td.restyle;ef.relayout=td.relayout;ef.redraw=td.redraw;ef.update=td.update;ef._guiRestyle=td._guiRestyle;ef._guiRelayout=td._guiRelayout;ef._guiUpdate=td._guiUpdate;ef._storeDirectGUIEdit=td._storeDirectGUIEdit;ef.react=td.react;ef.extendTraces=td.extendTraces;ef.prependTraces=td.prependTraces;ef.addTraces=td.addTraces;ef.deleteTraces=td.deleteTraces;ef.moveTraces=td.moveTraces;ef.purge=td.purge;ef.addFrames=td.addFrames;ef.deleteFrames=td.deleteFrames;ef.animate=td.animate;ef.setPlotConfig=td.setPlotConfig;var Rvt=NS().getGraphDiv,Dvt=lP().eraseActiveShape;ef.deleteActiveShape=function(e){return Dvt(Rvt(e))};ef.toImage=eU();ef.validate=hde();ef.downloadImage=rU();var wde=bde();ef.makeTemplate=wde.makeTemplate;ef.validateTemplate=wde.validateTemplate});var eT=ye((Bor,Ade)=>{"use strict";var nU=Dr(),Fvt=qa();Ade.exports=function(t,r,n,i){var a=i("x"),o=i("y"),s,l=Fvt.getComponentMethod("calendars","handleTraceDefaults");if(l(t,r,["x","y"],n),a){var u=nU.minRowLength(a);o?s=Math.min(u,nU.minRowLength(o)):(s=u,i("y0"),i("dy"))}else{if(!o)return 0;s=nU.minRowLength(o),i("x0"),i("dx")}return r._length=s,s}});var Ig=ye((Nor,Ede)=>{"use strict";var Sde=Dr().dateTick0,zvt=fs(),Ovt=zvt.ONEWEEK;function Mde(e,t){return e%Ovt===0?Sde(t,1):Sde(t,0)}Ede.exports=function(t,r,n,i,a){if(a||(a={x:!0,y:!0}),a.x){var o=i("xperiod");o&&(i("xperiod0",Mde(o,r.xcalendar)),i("xperiodalignment"))}if(a.y){var s=i("yperiod");s&&(i("yperiod0",Mde(s,r.ycalendar)),i("yperiodalignment"))}}});var Lde=ye((Uor,Cde)=>{"use strict";var kde=["orientation","groupnorm","stackgaps"];Cde.exports=function(t,r,n,i){var a=n._scatterStackOpts,o=i("stackgroup");if(o){var s=r.xaxis+r.yaxis,l=a[s];l||(l=a[s]={});var u=l[o],c=!1;u?u.traces.push(r):(u=l[o]={traceIndices:[],traces:[r]},c=!0);for(var f={orientation:r.x&&!r.y?"h":"v"},h=0;h<kde.length;h++){var d=kde[h],v=d+"Found";if(!u[v]){var _=t[d]!==void 0,b=d==="orientation";if((_||c)&&(u[d]=i(d,f[d]),b&&(u.fillDflt=u[d]==="h"?"tonextx":"tonexty"),_&&(u[v]=!0,!c&&(delete u.traces[0][d],b))))for(var p=0;p<u.traces.length-1;p++){var k=u.traces[p];k._input.fill!==k.fill&&(k.fill=u.fillDflt)}}}return u}}});var $p=ye((Vor,Dde)=>{"use strict";var Pde=ka(),Ide=pv().hasColorscale,Rde=Qh(),qvt=Ru();Dde.exports=function(t,r,n,i,a,o){var s=qvt.isBubble(t),l=(t.line||{}).color,u;if(o=o||{},l&&(n=l),a("marker.symbol"),a("marker.opacity",s?.7:1),a("marker.size"),o.noAngle||(a("marker.angle"),o.noAngleRef||a("marker.angleref"),o.noStandOff||a("marker.standoff")),a("marker.color",n),Ide(t,"marker")&&Rde(t,r,i,a,{prefix:"marker.",cLetter:"c"}),o.noSelect||(a("selected.marker.color"),a("unselected.marker.color"),a("selected.marker.size"),a("unselected.marker.size")),o.noLine||(l&&!Array.isArray(l)&&r.marker.color!==l?u=l:s?u=Pde.background:u=Pde.defaultLine,a("marker.line.color",u),Ide(t,"marker.line")&&Rde(t,r,i,a,{prefix:"marker.line.",cLetter:"c"}),a("marker.line.width",s?1:0)),s&&(a("marker.sizeref"),a("marker.sizemin"),a("marker.sizemode")),o.gradient){var c=a("marker.gradient.type");c!=="none"&&a("marker.gradient.color")}}});var R0=ye((Gor,Fde)=>{"use strict";var Bvt=Dr().isArrayOrTypedArray,Nvt=pv().hasColorscale,Uvt=Qh();Fde.exports=function(t,r,n,i,a,o){o||(o={});var s=(t.marker||{}).color;if(s&&s._inputArray&&(s=s._inputArray),a("line.color",n),Nvt(t,"line"))Uvt(t,r,i,a,{prefix:"line.",cLetter:"c"});else{var l=(Bvt(s)?!1:s)||n;a("line.color",l)}a("line.width"),o.noDash||a("line.dash"),o.backoff&&a("line.backoff")}});var tT=ye((Hor,zde)=>{"use strict";zde.exports=function(t,r,n){var i=n("line.shape");i==="spline"&&n("line.smoothing")}});var D0=ye((jor,Ode)=>{"use strict";var Vvt=Dr();Ode.exports=function(e,t,r,n,i){i=i||{},n("textposition"),Vvt.coerceFont(n,"textfont",i.font||r.font,i),i.noSelect||(n("selected.textfont.color"),n("unselected.textfont.color"))}});var Rg=ye((Wor,Bde)=>{"use strict";var JP=ka(),qde=Dr().isArrayOrTypedArray;function Gvt(e){for(var t=JP.interpolate(e[0][1],e[1][1],.5),r=2;r<e.length;r++){var n=JP.interpolate(e[r-1][1],e[r][1],.5);t=JP.interpolate(t,n,e[r-1][0]/e[r][0])}return t}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=Gvt(f))}}i("fillcolor",JP.addOpacity((r.line||{}).color||o||u||n,.5))}});var Gde=ye((Xor,Vde)=>{"use strict";var Nde=Dr(),Hvt=qa(),jvt=pf(),Wvt=Sm(),rT=Ru(),Xvt=eT(),Zvt=Ig(),Yvt=Lde(),Kvt=$p(),Jvt=R0(),Ude=tT(),$vt=D0(),Qvt=Rg(),ept=Dr().coercePattern;Vde.exports=function(t,r,n,i){function a(d,v){return Nde.coerce(t,r,jvt,d,v)}var o=Xvt(t,r,i,a);if(o||(r.visible=!1),!!r.visible){Zvt(t,r,i,a),a("xhoverformat"),a("yhoverformat"),a("zorder");var s=Yvt(t,r,i,a);i.scattermode==="group"&&r.orientation===void 0&&a("orientation","v");var l=!s&&o<Wvt.PTS_LINESONLY?"lines+markers":"lines";a("text"),a("hovertext"),a("mode",l),rT.hasMarkers(r)&&Kvt(t,r,n,i,a,{gradient:!0}),rT.hasLines(r)&&(Jvt(t,r,n,i,a,{backoff:!0}),Ude(t,r,a),a("connectgaps"),a("line.simplify")),rT.hasText(r)&&(a("texttemplate"),a("texttemplatefallback"),$vt(t,r,i,a));var u=[];(rT.hasMarkers(r)||rT.hasText(r))&&(a("cliponaxis"),a("marker.maxdisplayed"),u.push("points")),a("fill",s?s.fillDflt:"none"),r.fill!=="none"&&(Qvt(t,r,n,a,{moduleHasFillgradient:!0}),rT.hasLines(r)||Ude(t,r,a),ept(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"),a("hovertemplatefallback"));var h=Hvt.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 Hb=ye((Zor,Hde)=>{"use strict";var tpt=Nb().getAxisGroup;Hde.exports=function(t,r,n,i,a){var o=r.orientation,s=r[{v:"x",h:"y"}[o]+"axis"],l=tpt(n,s)+o,u=n._alignmentOpts||{},c=i("alignmentgroup"),f=u[l];f||(f=u[l]={});var h=f[c];h?h.traces.push(r):h=f[c]={traces:[r],alignmentIndex:Object.keys(f).length,offsetGroups:{}};var d=i("offsetgroup")||"",v=h.offsetGroups,_=v[d];r._offsetIndex=0,(a!=="group"||d)&&(_||(_=v[d]={offsetIndex:Object.keys(v).length}),r._offsetIndex=_.offsetIndex)}});var aU=ye((Yor,jde)=>{"use strict";var rpt=Dr(),ipt=Hb(),npt=pf();jde.exports=function(t,r){var n,i,a,o=r.scattermode;function s(h){return rpt.coerce(i._input,i,npt,h)}if(r.scattermode==="group")for(a=0;a<t.length;a++)i=t[a],i.type==="scatter"&&(n=i._input,ipt(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((Kor,Wde)=>{"use strict";var apt=Dr(),opt=X6();Wde.exports=function(e,t){function r(i,a){return apt.coerce(e,t,opt,i,a)}var n=t.barmode==="group";t.scattermode==="group"&&r("scattergap",n?t.bargap:.2)}});var Dg=ye((Jor,Yde)=>{"use strict";var spt=Eo(),Zde=Dr(),lpt=Zde.dateTime2ms,$P=Zde.incrementMonth,upt=fs(),cpt=upt.ONEAVGMONTH;Yde.exports=function(t,r,n,i){if(r.type!=="date")return{vals:i};var a=t[n+"periodalignment"];if(!a)return{vals:i};var o=t[n+"period"],s;if(spt(o)){if(o=+o,o<=0)return{vals:i}}else if(typeof o=="string"&&o.charAt(0)==="M"){var l=+o.substring(1);if(l>0&&Math.round(l)===l)s=l;else return{vals:i}}for(var u=r.calendar,c=a==="start",f=a==="end",h=t[n+"period0"],d=lpt(h,u)||0,v=[],_=[],b=[],p=i.length,k=0;k<p;k++){var E=i[k],S,L,x;if(s){for(S=Math.round((E-d)/(s*cpt)),x=$P(d,s*S,u);x>E;)x=$P(x,-s,u);for(;x<=E;)x=$P(x,s,u);L=$P(x,-s,u)}else{for(S=Math.round((E-d)/o),x=d+S*o;x>E;)x-=o;for(;x<=E;)x+=o;L=x-o}v[k]=c?L:f?x:(L+x)/2,_[k]=L,b[k]=x}return{vals:v,starts:_,ends:b}}});var F0=ye(($or,Jde)=>{"use strict";var oU=pv().hasColorscale,sU=gv(),Kde=Ru();Jde.exports=function(t,r){Kde.hasLines(r)&&oU(r,"line")&&sU(t,r,{vals:r.line.color,containerStr:"line",cLetter:"c"}),Kde.hasMarkers(r)&&(oU(r,"marker")&&sU(t,r,{vals:r.marker.color,containerStr:"marker",cLetter:"c"}),oU(r,"marker.line")&&sU(t,r,{vals:r.marker.line.color,containerStr:"marker.line",cLetter:"c"}))}});var km=ye((Qor,$de)=>{"use strict";var Yf=Dr();$de.exports=function(t,r){for(var n=0;n<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((esr,eve)=>{"use strict";var Qde=Dr();eve.exports=function(t,r){Qde.isArrayOrTypedArray(r.selectedpoints)&&Qde.tagSelected(t,r)}});var O0=ye((tsr,sve)=>{"use strict";var tve=Eo(),uU=Dr(),KM=ho(),rve=Dg(),lU=fs().BADNUM,cU=Ru(),fpt=F0(),hpt=km(),dpt=z0();function vpt(e,t){var r=e._fullLayout,n=t._xA=KM.getFromId(e,t.xaxis||"x","x"),i=t._yA=KM.getFromId(e,t.yaxis||"y","y"),a=n.makeCalcdata(t,"x"),o=i.makeCalcdata(t,"y"),s=rve(t,n,"x",a),l=rve(t,i,"y",o),u=s.vals,c=l.vals,f=t._length,h=new Array(f),d=t.ids,v=fU(t,r,n,i),_=!1,b,p,k,E,S,L;ave(r,t);var x="x",C="y",M;if(v)uU.pushUnique(v.traceIndices,t.index),b=v.orientation==="v",b?(C="s",M="x"):(x="s",M="y"),S=v.stackgaps==="interpolate";else{var g=nve(t,f);ive(e,t,n,i,u,c,g)}var P=!!t.xperiodalignment,T=!!t.yperiodalignment;for(p=0;p<f;p++){var z=h[p]={},O=tve(u[p]),V=tve(c[p]);O&&V?(z[x]=u[p],z[C]=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,S?(z.s=lU,_=!0):z.s=0):z[x]=z[C]=lU,d&&(z.id=String(d[p]))}if(hpt(h,t),fpt(e,t),dpt(h,t),v){for(p=0;p<h.length;)h[p][M]===lU?h.splice(p,1):p++;if(uU.sort(h,function(N,H){return N[M]-H[M]||N.i-H.i}),_){for(p=0;p<h.length-1&&h[p].gap;)p++;for(L=h[p].s,L||(L=h[p].s=0),k=0;k<p;k++)h[k].s=L;for(E=h.length-1;E>p&&h[E].gap;)E--;for(L=h[E].s,k=h.length-1;k>E;k--)h[k].s=L;for(;p<E;)if(p++,h[p].gap){for(k=p+1;h[k].gap;)k++;for(var G=h[p-1][M],Z=h[p-1].s,j=(h[k].s-Z)/(h[k][M]-G);p<k;)h[p].s=Z+(h[p][M]-G)*j,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=(fU(t,l,r,n)||{}).orientation,d=t.fill;r._minDtick=0,n._minDtick=0;var v={padded:!0},_={padded:!0};o&&(v.ppad=_.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"||!cU.hasMarkers(t)&&!cU.hasText(t))&&(v.padded=!1,v.ppad=0),b&&(d==="tozeroy"||d==="tonexty"&&(f||h==="v"))?_.tozero=!0:(d==="tonextx"||d==="tozerox")&&(_.padded=!1),u&&(t._extremes[u]=KM.findExtremes(r,i,v)),c&&(t._extremes[c]=KM.findExtremes(n,a,_))}function nve(e,t){if(cU.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)},uU.isArrayOrTypedArray(r.size)){var a={type:"linear"};KM.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 fU(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:vpt,calcMarkerSize:nve,calcAxisExpansion:ive,setFirstScatter:ave,getStackOpts:fU}});var uve=ye((rsr,lve)=>{"use strict";lve.exports=QP;var ppt=Dr().distinctVals;function QP(e,t){this.traces=e,this.sepNegVal=t.sepNegVal,this.overlapNoMerge=t.overlapNoMerge;for(var r=1/0,n=t.posAxis._id.charAt(0),i=[],a=0;a<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=ppt(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={}}QP.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};QP.prototype.get=function(t,r,n){var i=this.getLabel(t,r,n);return this.bins[i]||0};QP.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 jb=ye((isr,dve)=>{"use strict";var q0=Eo(),p_=Dr().isArrayOrTypedArray,iT=fs().BADNUM,gpt=qa(),JM=ho(),mpt=Nb().getAxisGroup,eI=uve();function ypt(e,t){for(var r=t.xaxis,n=t.yaxis,i=e._fullLayout,a=e._fullData,o=e.calcdata,s=[],l=[],u=0;u<a.length;u++){var c=a[u];if(c.visible===!0&&gpt.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};dU(e,r,n,l,d),dU(e,n,r,s,d)}function dU(e,t,r,n,i){if(n.length){var a,o,s,l,u;switch(bpt(r,n),i.mode){case"overlay":hU(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&&wpt(e,t,r,o,i),a.length&&hU(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);xpt(o),o.length&&Tpt(e,t,r,o,i),a.length&&hU(e,t,r,a,i);break}_pt(n),Cpt(n,t)}}function _pt(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 xpt(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 bpt(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(p_(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 hU(e,t,r,n,i){for(var a=0;a<n.length;a++){var o=n[a],s=new eI([o],{posAxis:t,sepNegVal:!1,overlapNoMerge:!i.norm});vU(e,t,s,i),i.norm?(hve(s),pU(r,s,i)):fve(r,s)}}function wpt(e,t,r,n,i){var a=new eI(n,{posAxis:t,sepNegVal:!1,overlapNoMerge:!i.norm});vU(e,t,a,i),Ept(a,t),i.norm?(hve(a),pU(r,a,i)):fve(r,a)}function Tpt(e,t,r,n,i){var a=new eI(n,{posAxis:t,sepNegVal:i.mode==="relative",overlapNoMerge:!(i.norm||i.mode==="stack"||i.mode==="relative")});vU(e,t,a,i),Mpt(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!==iT){var f=c.b+c.s===a.get(c.p,l,c.s);f&&(c._outmost=!0)}}i.norm&&pU(r,a,i)}function vU(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,_;if(t._id==="angularaxis")h=f,d=h*(1-(n.groupgap||0)),v=-d/2;else{var b=mpt(i,t._id)+l[0][0].trace.orientation;_=i._alignmentOpts[b]||{}}for(var p=0;p<u;p++){var k=l[p],E=k[0].trace;if(t._id!=="angularaxis"){var S=_[E.alignmentgroup]||{},L=Object.keys(S.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 x=k[0].t;x.barwidth=d,x.offsetindex=E._offsetIndex||0,x.poffset=v,x.bargroupwidth=f,x.bardelta=s}r.binWidth=l[0][0].t.barwidth/100,Apt(r),Spt(t,r),t._id==="angularaxis"?cve(t,r):cve(t,r,c)}function Apt(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(p_(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(p_(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 Spt(e,t){for(var r=t.traces,n=nT(e),i=0;i<r.length;i++)for(var a=r[i],o=a[0].t,s=o.poffset,l=p_(s),u=o.barwidth,c=p_(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;JM.minDtick(e,t.minDiff,t.distinctPositions[0],r);for(var o=0;o<n.length;o++){var s=n[o],l=s[0],u=l.trace,c=[],f,h,d,v;for(v=0;v<s.length;v++)f=s[v],h=f.p-a,d=f.p+a,c.push(h,d);if(u.width||u.offset){var _=l.t,b=_.poffset,p=_.barwidth,k=p_(b),E=p_(p);for(v=0;v<s.length;v++){f=s[v];var S=k?b[v]:b,L=E?p[v]:p;h=f.p+S,d=h+L,c.push(h,d)}}u._extremes[e._id]=JM.findExtremes(e,c,{padded:!1})}}function fve(e,t){for(var r=t.traces,n=nT(e),i=0;i<r.length;i++){for(var a=r[i],o=a[0].trace,s=o.type==="scatter",l=o.orientation==="v",u=[],c=!1,f=0;f<a.length;f++){var h=a[f],d=s?0:h.b,v=s?l?h.y:h.x:d+h.s;h[n]=v,u.push(v),h.hasB&&u.push(d),(!h.hasB||!h.b)&&(c=!0)}o._extremes[e._id]=JM.findExtremes(e,u,{tozero:c,padded:!0})}}function Mpt(e,t,r){var n=nT(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!==iT&&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!==iT){var d;s?d=c.s:d=c.s+c.b;var v=t.put(c.p,f,d),_=v+d;c.b=v,c[n]=_,r.norm||(h.push(_),c.hasB&&h.push(v))}r.norm||(o._extremes[e._id]=JM.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!==iT&&e.put(o.p,i,o.b+o.s)}}function Ept(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 eI([i],{posAxis:t,sepNegVal:!0,overlapNoMerge:!0}),l=0;l<i.length;l++){var u=i[l];if(u.p!==iT){var c=s.put(u.p,o,u.b+u.s);c&&(u.b=c)}}}}function pU(e,t,r){var n=t.traces,i=nT(e),a=r.norm==="fraction"?1:100,o=a/1e9,s=e.l2c(e.c2l(0)),l=r.mode==="stack"?a:s;function u(x){return q0(e.c2l(x))&&(x<s-o||x>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=[],_=!1,b=!1,p=0;p<f.length;p++){var k=f[p];if(k.s!==iT){var E=Math.abs(a/t.get(k.p,h,k.s));k.b*=E,k.s*=E;var S=k.b,L=S+k.s;k[i]=L,v.push(L),b=b||u(L),k.hasB&&(v.push(S),b=b||u(S)),(!k.hasB||!k.b)&&(_=!0)}}d._extremes[e._id]=JM.findExtremes(e,v,{tozero:_,padded:b})}}function kpt(e,t,r,n){for(var i=nT(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 Cpt(e,t){var r=nT(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 _=o[0].t.poffset,b=p_(_);for(a=0;a<o.length;a++){var p=o[a],k=p[r]-p.w/2;if(q0(k)){var E=p[r]+p.w/2,S=f(p.p);n[S]?n[S]=[Math.min(k,n[S][0]),Math.max(E,n[S][1])]:n[S]=[k,E]}if(p.p0=p.p+(b?_[a]:_),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,x=Math.max(p.s0,p.s1)||0,C=p[r];h[C]=C in h?Math.min(h[C],L):L,d[C]=C in d?Math.max(d[C],x):x}}}v&&kpt(e,h,d,t)}function nT(e){return e._id.charAt(0)}dve.exports={crossTraceCalc:ypt,setGroupPositions:dU}});var mve=ye((nsr,gve)=>{"use strict";var vve=O0(),pve=jb().setGroupPositions;function Lpt(e,t){for(var r=t.xaxis,n=t.yaxis,i=e._fullLayout,a=e._fullData,o=e.calcdata,s=[],l=[],u=0;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"&&Lpt(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,_,b,p,k,E,S,L,x;for(var C in o){p=o[C];var M=p.traceIndices;if(M.length){for(k=p.stackgaps==="interpolate",E=p.groupnorm,p.orientation==="v"?(S="x",L="y"):(S="y",L="x"),x=new Array(M.length),l=0;l<x.length;l++)x[l]=!1;d=s[M[0]];var g=new Array(d.length);for(l=0;l<d.length;l++)g[l]=d[l][S];for(l=1;l<M.length;l++){for(h=s[M[l]],u=c=0;u<h.length;u++){for(v=h[u][S];v>g[c]&&c<g.length;c++)gU(h,u,g[c],l,x,k,S),u++;if(v!==g[c]){for(f=0;f<l;f++)gU(s[M[f]],c,v,f,x,k,S);g.splice(c,0,v)}c++}for(;c<g.length;c++)gU(h,u,g[c],l,x,k,S),u++}var P=g.length;for(u=0;u<d.length;u++){for(_=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,_+=h[u].s,h[u][L]=_;if(E)for(b=(E==="fraction"?_:_/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&&x[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),j=new Array(P);for(u=0;u<P;u++)Z[u]=h[u].x,j[u]=h[u].y;vve.calcAxisExpansion(t,z,n,i,Z,j,O),h[0].t.orientation=p.orientation}}}}};function gU(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=Ppt(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 Ppt(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 yU=ye((asr,Tve)=>{"use strict";var Ipt=So(),bve=fs(),$M=bve.BADNUM,wve=bve.LOG_CLIP,yve=wve+.5,_ve=wve-.5,tI=Dr(),Rpt=tI.segmentsIntersect,xve=tI.constrain,mU=Sm();Tve.exports=function(t,r){var n=r.trace||{},i=r.xaxis,a=r.yaxis,o=i.type==="log",s=a.type==="log",l=i._length,u=a._length,c=r.backoff,f=n.marker,h=r.connectGaps,d=r.baseTolerance,v=r.shape,_=v==="linear",b=n.fill&&n.fill!=="none",p=[],k=mU.minTolerance,E=t.length,S=new Array(E),L=0,x,C,M,g,P,T,z,O,V,G,Z,j,N,H,te,oe;function _e(dt){var Ge=t[dt];if(!Ge)return!1;var Je=r.linearized?i.l2p(Ge.x):i.c2p(Ge.x),je=r.linearized?a.l2p(Ge.y):a.c2p(Ge.y);if(Je===$M){if(o&&(Je=i.c2p(Ge.x,!0)),Je===$M)return!1;s&&je===$M&&(Je*=Math.abs(i._m*u*(i._m>0?yve:_ve)/(a._m*l*(a._m>0?yve:_ve)))),Je*=1e3}if(je===$M){if(s&&(je=a.c2p(Ge.y,!0)),je===$M)return!1;je*=1e3}return[Je,je]}function Ee(dt,Ge,Je,je){var tt=Je-dt,xt=je-Ge,Ie=.5-dt,xe=.5-Ge,ke=tt*tt+xt*xt,vt=tt*Ie+xt*xe;if(vt>0&&vt<ke){var ir=Ie*xt-xe*tt;if(ir*ir<ke)return!0}}var Ce,me;function ie(dt,Ge){var Je=dt[0]/l,je=dt[1]/u,tt=Math.max(0,-Je,Je-1,-je,je-1);return tt&&Ce!==void 0&&Ee(Je,je,Ce,me)&&(tt=0),tt&&Ge&&Ee(Je,je,Ge[0]/l,Ge[1]/u)&&(tt=0),(1+mU.toleranceGrowth*tt)*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=mU.maxScreensAway,Ae=-l*Le,Fe=l*(1+Le),Pe=-u*Le,ge=u*(1+Le),Re=[[Ae,Pe,Fe,Pe],[Fe,Pe,Fe,ge],[Fe,ge,Ae,ge],[Ae,ge,Ae,Pe]],ce,Ze,ut,pt,Zt,st;function lt(dt,Ge){for(var Je=[],je=0,tt=0;tt<4;tt++){var xt=Re[tt],Ie=Rpt(dt[0],dt[1],Ge[0],Ge[1],xt[0],xt[1],xt[2],xt[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]>Fe||dt[1]<Pe||dt[1]>ge)return[xve(dt[0],Ae,Fe),xve(dt[1],Pe,ge)]}function Nt(dt,Ge){if(dt[0]===Ge[0]&&(dt[0]===Ae||dt[0]===Fe)||dt[1]===Ge[1]&&(dt[1]===Pe||dt[1]===ge))return!0}function Jt(dt,Ge){var Je=[],je=Gt(dt),tt=Gt(Ge);return je&&tt&&Nt(je,tt)||(je&&Je.push(je),tt&&Je.push(tt)),Je}function sr(dt,Ge,Je){return function(je,tt){var xt=Gt(je),Ie=Gt(tt),xe=[];if(xt&&Ie&&Nt(xt,Ie))return xe;xt&&xe.push(xt),Ie&&xe.push(Ie);var ke=2*tI.constrain((je[dt]+tt[dt])/2,Ge,Je)-((xt||je)[dt]+(Ie||tt)[dt]);if(ke){var vt;xt&&Ie?vt=ke>0==xt[dt]>Ie[dt]?xt:Ie:vt=xt||Ie,vt[dt]+=ke}return xe}}var wr;v==="linear"||v==="spline"?wr=lt:v==="hv"||v==="vh"?wr=Jt:v==="hvh"?wr=sr(0,Ae,Fe):v==="vhv"&&(wr=sr(1,Pe,ge));function cr(dt,Ge){var Je=Ge[0]-dt[0],je=(Ge[1]-dt[1])/Je,tt=(dt[1]*Ge[0]-Ge[1]*dt[0])/Je;return tt>0?[je>0?Ae:Fe,ge]:[je>0?Fe:Ae,Pe]}function $e(dt){var Ge=dt[0],Je=dt[1],je=Ge===S[L-1][0],tt=Je===S[L-1][1];if(!(je&&tt))if(L>1){var xt=Ge===S[L-2][0],Ie=Je===S[L-2][1];je&&(Ge===Ae||Ge===Fe)&&xt?Ie?L--:S[L-1]=dt:tt&&(Je===Pe||Je===ge)&&Ie?xt?L--:S[L-1]=dt:S[L++]=dt}else S[L++]=dt}function St(dt){S[L-1][0]!==dt[0]&&S[L-1][1]!==dt[1]&&$e([ut,pt]),$e(dt),Zt=null,ut=pt=0}var Qt=tI.isArrayOrTypedArray(f);function Vt(dt){if(dt&&c&&(dt.i=x,dt.d=t,dt.trace=n,dt.marker=Qt?f[dt.i]:f,dt.backoff=c),Ce=dt[0]/l,me=dt[1]/u,ce=dt[0]<Ae?Ae:dt[0]>Fe?Fe:0,Ze=dt[1]<Pe?Pe:dt[1]>ge?ge:0,ce||Ze){if(!L)S[L++]=[ce||dt[0],Ze||dt[1]];else if(Zt){var Ge=wr(Zt,dt);Ge.length>1&&(St(Ge[0]),S[L++]=Ge[1])}else st=wr(S[L-1],dt)[0],S[L++]=st;var Je=S[L-1];ce&&Ze&&(Je[0]!==ce||Je[1]!==Ze)?(Zt&&(ut!==ce&&pt!==Ze?$e(ut&&pt?cr(Zt,dt):[ut||ce,pt||Ze]):ut&&pt&&$e([ut,pt])),$e([ce,Ze])):ut-ce&&pt-Ze&&$e([ce||ut,Ze||pt]),Zt=dt,ut=ce,pt=Ze}else Zt&&St(wr(Zt,dt)[0]),S[L++]=dt}for(x=0;x<E;x++)if(C=_e(x),!!C){for(L=0,Zt=null,Vt(C),x++;x<E;x++){if(g=_e(x),!g){if(h)continue;break}if(!_||!r.simplify){Vt(g);continue}var _t=_e(x+1);if(G=Se(g,C),!(!(b&&(L===0||L===E-1))&&G<ie(g,_t)*k)){for(O=[(g[0]-C[0])/G,(g[1]-C[1])/G],P=C,Z=G,j=H=te=0,z=!1,M=g,x++;x<t.length;x++){if(T=_t,_t=_e(x+1),!T){if(h)continue;break}if(V=[T[0]-C[0],T[1]-C[1]],oe=V[0]*O[1]-V[1]*O[0],H=Math.min(H,oe),te=Math.max(te,oe),te-H>ie(T,_t))break;M=T,N=V[0]*O[0]+V[1]*O[1],N>Z?(Z=N,g=T,z=!1):N<j&&(j=N,P=T,z=!0)}if(z?(Vt(g),M!==P&&Vt(P)):(P!==C&&Vt(P),M!==g&&Vt(g)),Vt(M),x>=t.length||!T)break;Vt(T),C=T}}Zt&&$e([ut||Zt[0],pt||Zt[1]]),p.push(S.slice(0,L))}var It=v.slice(v.length-1);if(c&&It!=="h"&&It!=="v"){for(var mt=!1,er=-1,lr=[],Tr=0;Tr<p.length;Tr++)for(var Lr=0;Lr<p[Tr].length-1;Lr++){var ti=p[Tr][Lr],Br=p[Tr][Lr+1],Vr=Ipt.applyBackoff(Br,ti);(Vr[0]!==Br[0]||Vr[1]!==Br[1])&&(mt=!0),lr[er+1]||(er++,lr[er]=[ti,[Vr[0],Vr[1]]])}return mt?lr:p}return p}});var _U=ye((osr,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 k=b[0].trace,E=p[0].trace;return k._groupIndex-E._groupIndex||k.index-E.index});var _={};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=_[o],i._prevtrace=s||null,s&&(s._nexttrace=i)),i._ownfill=i.fill&&(i.fill.slice(0,6)==="tozero"||i.fill==="toself"||i.fill.slice(0,2)==="to"&&!i._prevtrace),_[o]=i):i._prevtrace=i._nexttrace=i._ownfill=null;return v}});var sT=ye((ssr,kve)=>{"use strict";var Fg=Oa(),Dpt=qa(),QM=Dr(),aT=QM.ensureSingle,Eve=QM.identity,Kf=So(),oT=Ru(),Fpt=yU(),zpt=_U(),rI=kM().tester;kve.exports=function(t,r,n,i,a,o){var s,l,u=!a,c=!!a&&a.duration>0,f=zpt(t,r,n);if(s=i.selectAll("g.trace").data(f,function(d){return d[0].trace.uid}),s.enter().append("g").attr("class",function(d){return"trace scatter trace"+d[0].trace.uid}).style("stroke-miterlimit",2),s.order(),Opt(t,s,r),c){o&&(l=o());var h=Fg.transition().duration(a.duration).ease(a.easing).each("end",function(){l&&l()}).each("interrupt",function(){l&&l()});h.each(function(){i.selectAll("g.trace").each(function(d,v){Mve(t,v,r,d,f,this,a)})})}else s.each(function(d,v){Mve(t,v,r,d,f,this,a)});u&&s.exit().remove(),i.selectAll("path:not([d])").remove()};function Opt(e,t,r){t.each(function(n){var i=aT(Fg.select(this),"g","fills");Kf.setClipUrl(i,r.layerClipId,e);var a=n[0].trace,o=[];a._ownfill&&o.push("_ownFill"),a._nexttrace&&o.push("_nextFill");var s=i.selectAll("g").data(o,Eve);s.enter().append("g"),s.exit().each(function(l){a[l]=null}).remove(),s.order().each(function(l){a[l]=aT(Fg.select(this),"path","js-fill")})})}function Mve(e,t,r,n,i,a,o){var s=e._context.staticPlot,l;qpt(e,t,r,n,i);var u=!!o&&o.duration>0;function c(sr){return u?sr.transition():sr}var f=r.xaxis,h=r.yaxis,d=n[0].trace,v=d.line,_=Fg.select(a),b=aT(_,"g","errorbars"),p=aT(_,"g","lines"),k=aT(_,"g","points"),E=aT(_,"g","text");if(Dpt.getComponentMethod("errorbars","plot")(e,b,r,o),d.visible!==!0)return;c(_).style("opacity",d.opacity);var S,L,x=d.fill.charAt(d.fill.length-1);x!=="x"&&x!=="y"&&(x="");var C,M;x==="y"?(C=1,M=h.c2p(0,!0)):x==="x"&&(C=0,M=f.c2p(0,!0)),n[0][r.isRangePlot?"nodeRangePlot3":"node3"]=_;var g="",P=[],T=d._prevtrace,z=null,O=null;T&&(g=T._prevRevpath||"",L=T._nextFill,P=T._ownPolygons,z=T._fillsegments,O=T._fillElement);var V,G,Z="",j="",N,H,te,oe,_e,Ee,Ce=[];d._polygons=[];var me=[],ie=[],Se=QM.noop;if(S=d._ownFill,oT.hasLines(d)||d.fill!=="none"){L&&L.datum(n),["hv","vh","hvh","vhv"].indexOf(v.shape)!==-1?(N=Kf.steps(v.shape),H=Kf.steps(v.shape.split("").reverse().join(""))):v.shape==="spline"?N=H=function(sr){var wr=sr[sr.length-1];return sr.length>1&&sr[0][0]===wr[0]&&sr[0][1]===wr[1]?Kf.smoothclosed(sr.slice(1),v.smoothing):Kf.smoothopen(sr,v.smoothing)}:N=H=function(sr){return"M"+sr.join("L")},te=function(sr){return H(sr.reverse())},ie=Fpt(n,{xaxis:f,yaxis:h,trace:d,connectGaps:d.connectgaps,baseTolerance:Math.max(v.width||1,3)/4,shape:v.shape,backoff:v.backoff,simplify:v.simplify,fill:d.fill}),me=new Array(ie.length);var Le=0;for(l=0;l<ie.length;l++){var Ae,Fe=ie[l];!Ae||!x?(Ae=Fe.slice(),me[Le]=Ae,Le++):Ae.push.apply(Ae,Fe)}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],Ee=_e[_e.length-1].slice()),Se=function(sr){return function(wr){if(V=N(wr),G=te(wr),Z?x?(Z+="L"+V.slice(1),j=G+("L"+j.slice(1))):(Z+="Z"+V,j=G+"Z"+j):(Z=V,j=G),oT.hasLines(d)){var cr=Fg.select(this);if(cr.datum(n),sr)c(cr.style("opacity",0).attr("d",V).call(Kf.lineGroupStyle)).style("opacity",1);else{var $e=c(cr);$e.attr("d",V),Kf.singleLineStyle(n,$e)}}}}}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 Re=function(){var sr=new Array(me.length);for(l=0;l<me.length;l++)sr[l]=rI(me[l]);return sr},ce=function(sr){var wr,cr;if(!sr||sr.length===0)for(wr=new Array(me.length),cr=0;cr<me.length;cr++){var $e=me[cr][0].slice(),St=me[cr][me[cr].length-1].slice();$e[C]=St[C]=M;var Qt=[St,$e],Vt=Qt.concat(me[cr]);wr[cr]=rI(Vt)}else{for(wr=new Array(sr.length-1+me.length),cr=0;cr<sr.length-1;cr++)wr[cr]=rI(sr[cr]);var _t=sr[sr.length-1].slice();for(_t.reverse(),cr=0;cr<me.length;cr++)wr[sr.length-1+cr]=rI(me[cr].concat(_t))}return wr};ie.length?(S?(S.datum(n),oe&&Ee&&(x?(oe[C]=Ee[C]=M,c(S).attr("d","M"+Ee+"L"+oe+"L"+Z.slice(1)).call(Kf.singleFillStyle,e),Ce=ce(null)):(c(S).attr("d",Z+"Z").call(Kf.singleFillStyle,e),Ce=Re())),d._polygons=Ce,d._fillElement=S):L&&(d.fill.slice(0,6)==="tonext"&&Z&&g?(d.fill==="tonext"?(c(L).attr("d",Z+"Z"+g+"Z").call(Kf.singleFillStyle,e),Ce=Re(),d._polygons=Ce.concat(P)):(c(L).attr("d",Z+"L"+g.slice(1)+"Z").call(Kf.singleFillStyle,e),Ce=ce(z),d._polygons=Ce),d._fillElement=L):ge(L)),d._prevRevpath=j):(S?ge(S):L&&ge(L),d._prevRevpath=null),d._ownPolygons=Ce;function Ze(sr){return sr.filter(function(wr){return!wr.gap&&wr.vis})}function ut(sr){return sr.filter(function(wr){return wr.vis})}function pt(sr){return sr.filter(function(wr){return!wr.gap})}function Zt(sr){return sr.id}function st(sr){if(sr.ids)return Zt}function lt(){return!1}function Gt(sr,wr,cr){var $e,St,Qt,Vt=cr[0].trace,_t=oT.hasMarkers(Vt),It=oT.hasText(Vt),mt=st(Vt),er=lt,lr=lt;if(_t||It){var Tr=Eve,Lr=Vt.stackgroup,ti=Lr&&e._fullLayout._scatterStackOpts[f._id+h._id][Lr].stackgaps==="infer zero";Vt.marker.maxdisplayed||Vt._needsCull?Tr=ti?ut:Ze:Lr&&!ti&&(Tr=pt),_t&&(er=Tr),It&&(lr=Tr)}St=sr.selectAll("path.point"),$e=St.data(er,mt);var Br=$e.enter().append("path").classed("point",!0);u&&Br.call(Kf.pointStyle,Vt,e).call(Kf.translatePoints,f,h).style("opacity",0).transition().style("opacity",1),$e.order();var Vr;_t&&(Vr=Kf.makePointStyleFns(Vt)),$e.each(function(dt){var Ge=Fg.select(this),Je=c(Ge);Qt=Kf.translatePoint(dt,Je,f,h),Qt?(Kf.singlePointStyle(dt,Je,Vt,Vr,e),r.layerClipId&&Kf.hideOutsideRangePoint(dt,Je,f,h,Vt.xcalendar,Vt.ycalendar),Vt.customdata&&Ge.classed("plotly-customdata",dt.data!==null&&dt.data!==void 0)):Je.remove()}),u?$e.exit().transition().style("opacity",0).remove():$e.exit().remove(),St=wr.selectAll("g"),$e=St.data(lr,mt),$e.enter().append("g").classed("textpoint",!0).append("text"),$e.order(),$e.each(function(dt){var Ge=Fg.select(this),Je=c(Ge.select("text"));Qt=Kf.translatePoint(dt,Je,f,h),Qt?r.layerClipId&&Kf.hideOutsideRangePoint(dt,Ge,f,h,Vt.xcalendar,Vt.ycalendar):Ge.remove()}),$e.selectAll("text").call(Kf.textPointStyle,Vt,e).each(function(dt){var Ge=f.c2p(dt.x),Je=h.c2p(dt.y);Fg.select(this).selectAll("tspan.line").each(function(){c(Fg.select(this)).attr({x:Ge,y:Je})})}),$e.exit().remove()}k.datum(n),E.datum(n),Gt(k,E,n);var Nt=d.cliponaxis===!1,Jt=Nt?null:r.layerClipId;Kf.setClipUrl(k,Jt,e),Kf.setClipUrl(E,Jt,e)}function qpt(e,t,r,n,i){var a=r.xaxis,o=r.yaxis,s=Fg.extent(QM.simpleMap(a.range,a.r2c)),l=Fg.extent(QM.simpleMap(o.range,o.r2c)),u=n[0].trace;if(oT.hasMarkers(u)){var c=u.marker.maxdisplayed;if(c!==0){var f=n.filter(function(_){return _.x>=s[0]&&_.x<=s[1]&&_.y>=l[0]&&_.y<=l[1]}),h=Math.ceil(f.length/c),d=0;i.forEach(function(_,b){var p=_[0].trace;oT.hasMarkers(p)&&p.marker.maxdisplayed>0&&b<t&&d++});var v=Math.round(d*h/3+Math.floor(d/3)*h/7.1);n.forEach(function(_){delete _.vis}),f.forEach(function(_,b){Math.round((b+v)%h)===0&&(_.vis=!0)})}}}});var $d=ye((lsr,Cve)=>{"use strict";Cve.exports={container:"marker",min:"cmin",max:"cmax"}});var nI=ye((usr,Lve)=>{"use strict";var iI=ho();Lve.exports=function(t,r,n){var i={},a={_fullLayout:n},o=iI.getFromTrace(a,r,"x"),s=iI.getFromTrace(a,r,"y"),l=t.orig_x;l===void 0&&(l=t.x);var u=t.orig_y;return u===void 0&&(u=t.y),i.xLabel=iI.tickText(o,o.c2l(l),!0).text,i.yLabel=iI.tickText(s,s.c2l(u),!0).text,i}});var op=ye((csr,Pve)=>{"use strict";var xU=Oa(),lT=So(),Bpt=qa();function Npt(e){var t=xU.select(e).selectAll("g.trace.scatter");t.style("opacity",function(r){return r[0].trace.opacity}),t.selectAll("g.points").each(function(r){var n=xU.select(this),i=r.trace||r[0].trace;bU(n,i,e)}),t.selectAll("g.text").each(function(r){var n=xU.select(this),i=r.trace||r[0].trace;wU(n,i,e)}),t.selectAll("g.trace path.js-line").call(lT.lineGroupStyle),t.selectAll("g.trace path.js-fill").call(lT.fillGroupStyle,e,!1),Bpt.getComponentMethod("errorbars","style")(t)}function bU(e,t,r){lT.pointStyle(e.selectAll("path.point"),t,r)}function wU(e,t,r){lT.textPointStyle(e.selectAll("text"),t,r)}function Upt(e,t,r){var n=t[0].trace;n.selectedpoints?(lT.selectedPointStyle(r.selectAll("path.point"),n),lT.selectedTextStyle(r.selectAll("text"),n)):(bU(r,n,e),wU(r,n,e))}Pve.exports={style:Npt,stylePoints:bU,styleText:wU,styleOnSelect:Upt}});var cT=ye((fsr,Ive)=>{"use strict";var uT=ka(),Vpt=Ru();Ive.exports=function(t,r){var n,i;if(t.mode==="lines")return n=t.line.color,n&&uT.opacity(n)?n:t.fillcolor;if(t.mode==="none")return t.fill?t.fillcolor:"";var a=r.mcc||(t.marker||{}).color,o=r.mlcc||((t.marker||{}).line||{}).color;return i=a&&uT.opacity(a)?a:o&&uT.opacity(o)&&(r.mlw||((t.marker||{}).line||{}).width)?o:"",i?uT.opacity(i)<.3?uT.addOpacity(i,.3):i:(n=(t.line||{}).color,n&&uT.opacity(n)&&Vpt.hasLines(t)&&t.line.width?n:t.fillcolor)}});var fT=ye((hsr,Dve)=>{"use strict";var aI=Dr(),Rve=vf(),Gpt=qa(),Hpt=cT(),TU=ka(),jpt=aI.fillText;Dve.exports=function(t,r,n,i){var a=t.cd,o=a[0].trace,s=t.xa,l=t.ya,u=s.c2p(r),c=l.c2p(n),f=[u,c],h=o.hoveron||"",d=o.mode.indexOf("markers")!==-1?3:.5,v=!!o.xperiodalignment,_=!!o.yperiodalignment;if(h.indexOf("points")!==-1){var b=function(j){if(v){var N=s.c2p(j.xStart),H=s.c2p(j.xEnd);return u>=Math.min(N,H)&&u<=Math.max(N,H)?0:1/0}var te=Math.max(3,j.mrc||0),oe=1-1/te,_e=Math.abs(s.c2p(j.x)-u);return _e<te?oe*_e/te:_e-te+oe},p=function(j){if(_){var N=l.c2p(j.yStart),H=l.c2p(j.yEnd);return c>=Math.min(N,H)&&c<=Math.max(N,H)?0:1/0}var te=Math.max(3,j.mrc||0),oe=1-1/te,_e=Math.abs(l.c2p(j.y)-c);return _e<te?oe*_e/te:_e-te+oe},k=function(j){var N=Math.max(d,j.mrc||0),H=s.c2p(j.x)-u,te=l.c2p(j.y)-c;return Math.max(Math.sqrt(H*H+te*te)-N,1-d/N)},E=Rve.getDistanceFunction(i,b,p,k);if(Rve.getClosest(a,E,t),t.index!==!1){var S=a[t.index],L=s.c2p(S.x,!0),x=l.c2p(S.y,!0),C=S.mrc||1;t.index=S.i;var M=a[0].t.orientation,g=M&&(S.sNorm||S.s),P=M==="h"?g:S.orig_x!==void 0?S.orig_x:S.x,T=M==="v"?g:S.orig_y!==void 0?S.orig_y:S.y;return aI.extendFlat(t,{color:Hpt(o,S),x0:L-C,x1:L+C,xLabelVal:P,y0:x-C,y1:x+C,yLabelVal:T,spikeDistance:k(S),hovertemplate:o.hovertemplate}),jpt(S,o,t),Gpt.getComponentMethod("errorbars","hoverInfo")(S,o,t),[t]}}function z(j){if(!j)return!1;var N=j.node();try{var H=new DOMPoint(f[0],f[1]);return N.isPointInFill(H)}catch(oe){var te=N.ownerSVGElement.createSVGPoint();return te.x=f[0],te.y=f[1],N.isPointInFill(te)}}function O(j){var N,H=[],te=1/0,oe=-1/0,_e=1/0,Ee=-1/0,Ce;for(N=0;N<j.length;N++){var me=j[N];me.contains(f)&&(H.push(me),_e=Math.min(_e,me.ymin),Ee=Math.max(Ee,me.ymax))}if(H.length===0)return null;_e=Math.max(_e,0),Ee=Math.min(Ee,l._length),Ce=(_e+Ee)/2;var ie,Se,Le,Ae,Fe,Pe,ge;for(N=0;N<H.length;N++)for(Se=H[N].pts,ie=1;ie<Se.length;ie++)Pe=Se[ie-1][1],ge=Se[ie][1],Pe>Ce!=ge>=Ce&&(Ae=Se[ie-1][0],Fe=Se[ie][0],ge-Pe&&(Le=Ae+(Fe-Ae)*(Ce-Pe)/(ge-Pe),te=Math.min(te,Le),oe=Math.max(oe,Le)));return te=Math.max(te,0),oe=Math.min(oe,s._length),{x0:te,x1:oe,y0:Ce,y1:Ce}}if(h.indexOf("fills")!==-1&&o._fillElement){var V=z(o._fillElement)&&!z(o._fillExclusionElement);if(V){var G=O(o._polygons);G===null&&(G={x0:f[0],x1:f[0],y0:f[1],y1:f[1]});var Z=TU.defaultLine;return TU.opacity(o.fillcolor)?Z=o.fillcolor:TU.opacity((o.line||{}).color)&&(Z=o.line.color),aI.extendFlat(t,{distance:t.maxHoverDistance,x0:G.x0,x1:G.x1,y0:G.y0,y1:G.y1,color:Z,hovertemplate:!1}),delete t.index,o.text&&!aI.isArrayOrTypedArray(o.text)?t.text=String(o.text):t.text=o.name,[t]}}}});var hT=ye((dsr,zve)=>{"use strict";var Fve=Ru();zve.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=[],s=n[0].trace,l,u,c,f,h=!Fve.hasMarkers(s)&&!Fve.hasText(s);if(h)return[];if(r===!1)for(l=0;l<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((vsr,Ove)=>{"use strict";Ove.exports={xaxis:{valType:"subplotid",dflt:"x",editType:"calc+clearAxisTypes"},yaxis:{valType:"subplotid",dflt:"y",editType:"calc+clearAxisTypes"}}});var SU=ye((psr,Uve)=>{"use strict";var e4=qa().traceIs,AU=R3();Uve.exports=function(t,r,n,i){n("autotypenumbers",i.autotypenumbersDflt);var a=n("type",(i.splomStash||{}).type);a==="-"&&(Wpt(r,i.data),r.type==="-"?r.type="linear":t.type=r.type)};function Wpt(e,t){if(e.type==="-"){var r=e._id,n=r.charAt(0),i;r.indexOf("scene")!==-1&&(r=n);var a=Xpt(t,r,n);if(a){if(a.type==="histogram"&&n==={v:"y",h:"x"}[a.orientation||"v"]){e.type="linear";return}var o=n+"calendar",s=a[o],l={noMultiCategory:!e4(a,"cartesian")||e4(a,"noMultiCategory")};if(a.type==="box"&&a._hasPreCompStats&&n==={h:"x",v:"y"}[a.orientation||"v"]&&(l.noMultiCategory=!0),l.autotypenumbers=e.autotypenumbers,Nve(a,n)){var u=Bve(a),c=[];for(i=0;i<t.length;i++){var f=t[i];!e4(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=AU(c,s,l)}else if(a.type==="splom"){var h=a.dimensions,d=h[a._axesDim[r]];d.visible&&(e.type=AU(d.values,s,l))}else e.type=AU(a[n]||[a[n+"0"]],s,l)}}}function Xpt(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=e4(e,"box-violin"),i=e4(e._fullInput||{},"candlestick");return n&&!i&&t===r&&e[r]===void 0&&e[r+"0"]===void 0}});var oI=ye((gsr,Vve)=>{"use strict";var Zpt=vv().isTypedArraySpec;function Ypt(e,t){var r=t.dataAttr||e._id.charAt(0),n={},i,a,o;if(t.axData)i=t.axData;else for(i=[],a=0;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||Zpt(a),s;o&&(s="array");var l=n("categoryorder",s),u;l==="array"&&(u=n("categoryarray")),!o&&l==="array"&&(l=r.categoryorder="trace"),l==="trace"?r._initialCategories=[]:l==="array"?r._initialCategories=u.slice():(u=Ypt(r,i).sort(),l==="category ascending"?r._initialCategories=u:l==="category descending"&&(r._initialCategories=u.reverse()))}}});var t4=ye((msr,Hve)=>{"use strict";var Gve=cd().mix,Kpt=Lh(),Jpt=Dr();Hve.exports=function(t,r,n,i){i=i||{};var a=i.dfltColor;function o(M,g){return Jpt.coerce2(t,r,i.attributes,M,g)}var s=o("linecolor",a),l=o("linewidth"),u=n("showline",i.showLine||!!s||!!l);u||(delete r.linecolor,delete r.linewidth);var c=Gve(a,i.bgColor,i.blend||Kpt.lightFraction).toRgbString(),f=o("gridcolor",c),h=o("gridwidth"),d=o("griddash"),v=n("showgrid",i.showGrid||!!f||!!h||!!d);if(v||(delete r.gridcolor,delete r.gridwidth,delete r.griddash),i.hasMinor){var _=Gve(r.gridcolor,i.bgColor,67).toRgbString(),b=o("minor.gridcolor",_),p=o("minor.gridwidth",r.gridwidth||1),k=o("minor.griddash",r.griddash||"solid"),E=n("minor.showgrid",!!b||!!p||!!k);E||(delete r.minor.gridcolor,delete r.minor.gridwidth,delete r.minor.griddash)}if(!i.noZeroLine){var S=o("zerolinelayer"),L=o("zerolinecolor",a),x=o("zerolinewidth"),C=n("zeroline",i.showGrid||!!L||!!x);C||(delete r.zerolinelayer,delete r.zerolinecolor,delete r.zerolinewidth)}}});var i4=ye((ysr,Kve)=>{"use strict";var jve=Eo(),$pt=qa(),r4=Dr(),Qpt=vl(),e0t=Yd(),MU=Rd(),Wve=bb(),Xve=M3(),t0t=e_(),r0t=t_(),i0t=oI(),n0t=t4(),a0t=xB(),Zve=ym(),sI=hd().WEEKDAY_PATTERN,o0t=hd().HOUR_PATTERN;Kve.exports=function(t,r,n,i,a){var o=i.letter,s=i.font||{},l=i.splomStash||{},u=n("visible",!i.visibleDflt),c=r._template||{},f=r.type||c.type||"-",h;if(f==="date"){var d=$pt.getComponentMethod("calendars","handleDefaults");d(t,r,"calendar",i.calendar),i.noTicklabelmode||(h=n("ticklabelmode"))}!i.noTicklabelindex&&(f==="date"||f==="linear")&&n("ticklabelindex");var v="";(!i.noTicklabelposition||f==="multicategory")&&(v=r4.coerce(t,r,{ticklabelposition:{valType:"enumerated",dflt:"outside",values:h==="period"?["outside","inside"]:o==="x"?["outside","inside","outside left","inside left","outside right","inside right"]:["outside","inside","outside top","inside top","outside bottom","inside bottom"]}},"ticklabelposition")),i.noTicklabeloverflow||n("ticklabeloverflow",v.indexOf("inside")!==-1?"hide past domain":f==="category"||f==="multicategory"?"allow":"hide past div"),Zve(r,a),a0t(t,r,n,i),i0t(t,r,n,i),i.noHover||(f!=="category"&&n("hoverformat"),i.noUnifiedhovertitle||n("unifiedhovertitle.text"));var _=n("color"),b=_!==MU.color.dflt?_:s.color,p=l.label||a._dfltTitle[o];if(r0t(t,r,n,f,i),!u)return r;n("title.text",p),r4.coerceFont(n,"title.font",s,{overrideDflt:{size:r4.bigFont(s.size),color:b}}),Wve(t,r,n,f);var k=i.hasMinor;if(k&&(Qpt.newContainer(r,"minor"),Wve(t,r,n,f,{isMinor:!0})),t0t(t,r,n,f,i),Xve(t,r,n,i),k){var E=i.isMinor;i.isMinor=!0,Xve(t,r,n,i),i.isMinor=E}n0t(t,r,n,{dfltColor:_,bgColor:i.bgColor,showGrid:i.showGrid,hasMinor:k,attributes:MU}),k&&!r.minor.ticks&&!r.minor.showgrid&&delete r.minor,(r.showline||r.ticks)&&n("mirror");var S=f==="multicategory";if(!i.noTickson&&(f==="category"||S)&&(r.ticks||r.showgrid)&&(S?(n("tickson","boundaries"),delete r.ticklabelposition):n("tickson")),S){var L=n("showdividers");L&&(n("dividercolor"),n("dividerwidth"))}if(f==="date")if(e0t(t,r,{name:"rangebreaks",inclusionAttr:"enabled",handleItemDefaults:s0t}),!r.rangebreaks.length)delete r.rangebreaks;else{for(var x=0;x<r.rangebreaks.length;x++)if(r.rangebreaks[x].pattern===sI){r._hasDayOfWeekBreaks=!0;break}if(Zve(r,a),a._has("scattergl")||a._has("splom"))for(var C=0;C<i.data.length;C++){var M=i.data[C];(M.type==="scattergl"||M.type==="splom")&&(M.visible=!1,r4.warn(M.type+" traces do not work on axes with rangebreaks. Setting trace "+M.index+" to `visible: false`."))}}return r};function s0t(e,t,r){function n(h,d){return r4.coerce(e,t,MU.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=sI;break}}var u=n("pattern",o);if(u===sI)for(s=0;s<2;s++)l=Yve(a[s]),l&&(t.bounds[s]=a[s]=l-1);if(u)for(s=0;s<2;s++)switch(l=a[s],u){case sI:if(!jve(l)){t.enabled=!1;return}if(l=+l,l!==Math.floor(l)||l<0||l>=7){t.enabled=!1;return}t.bounds[s]=a[s]=l;break;case o0t:if(!jve(l)){t.enabled=!1;return}if(l=+l,l<0||l>24){t.enabled=!1;return}t.bounds[s]=a[s]=l;break}if(r.autorange===!1){var c=r.range;if(c[0]<c[1]){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 l0t={sun:1,mon:2,tue:3,wed:4,thu:5,fri:6,sat:7};function Yve(e){if(typeof e=="string")return l0t[e.slice(0,3).toLowerCase()]}});var uI=ye((_sr,Jve)=>{"use strict";var u0t=Eo(),lI=Dr();Jve.exports=function(t,r,n,i){var a=i.counterAxes||[],o=i.overlayableAxes||[],s=i.letter,l=i.grid,u=i.overlayingDomain,c,f,h,d,v,_;l&&(f=l._domains[s][l._axisMap[r._id]],c=l._anchors[r._id],f&&(h=l[s+"side"].split(" ")[0],d=l.domain[s][h==="right"||h==="top"?1:0])),f=f||[0,1],c=c||(u0t(t.position)?"free":a[0]||"free"),h=h||(s==="x"?"bottom":"left"),d=d||0,v=0,_=!1;var b=lI.coerce(t,r,{anchor:{valType:"enumerated",values:["free"].concat(a),dflt:c}},"anchor"),p=lI.coerce(t,r,{side:{valType:"enumerated",values:s==="x"?["bottom","top"]:["left","right"],dflt:h}},"side");if(b==="free"){if(s==="y"){var k=n("autoshift");k&&(d=p==="left"?u[0]:u[1],_=r.automargin?r.automargin:!0,v=p==="left"?-3:3),n("shift",v)}n("position",d)}n("automargin",_);var E=!1;if(o.length&&(E=lI.coerce(t,r,{overlaying:{valType:"enumerated",values:[!1].concat(o),dflt:!1}},"overlaying")),!E){var S=n("domain",f);S[0]>S[1]-1/4096&&(r.domain=f),lI.noneOrAll(t.domain,r.domain,f),r.tickmode==="sync"&&(r.tickmode="auto")}return n("layer"),r}});var ope=ye((xsr,ape)=>{"use strict";var Wb=Dr(),$ve=ka(),c0t=ip().isUnifiedHover,f0t=HB(),Qve=vl(),h0t=c3(),epe=Rd(),d0t=SU(),tpe=i4(),v0t=Nb(),rpe=uI(),kU=hf(),Cm=kU.id2name,ipe=kU.name2id,p0t=hd().AX_ID_PATTERN,npe=qa(),cI=npe.traceIs,EU=npe.getComponentMethod;function fI(e,t,r){Array.isArray(e[t])?e[t].push(r):e[t]=[r]}ape.exports=function(t,r,n){var i=r.autotypenumbers,a={},o={},s={},l={},u={},c={},f={},h={},d={},v={},_,b;for(_=0;_<n.length;_++){var p=n[_];if(cI(p,"cartesian")){var k;if(p.xaxis)k=Cm(p.xaxis),fI(a,k,p);else if(p.xaxes)for(b=0;b<p.xaxes.length;b++)fI(a,Cm(p.xaxes[b]),p);var E;if(p.yaxis)E=Cm(p.yaxis),fI(a,E,p);else if(p.yaxes)for(b=0;b<p.yaxes.length;b++)fI(a,Cm(p.yaxes[b]),p);if(p.type==="funnel"?p.orientation==="h"?(k&&(o[k]=!0),E&&(f[E]=!0)):E&&(s[E]=!0):p.type==="image"?(E&&(h[E]=!0),k&&(h[k]=!0)):(E&&(u[E]=!0,c[E]=!0),(!cI(p,"carpet")||p.type==="carpet"&&!p._cheater)&&k&&(l[k]=!0)),p.type==="carpet"&&p._cheater&&k&&(o[k]=!0),cI(p,"2dMap")&&(d[k]=!0,d[E]=!0),cI(p,"oriented")){var S=p.orientation==="h"?E:k;v[S]=!0}}}var L=r._subplots,x=L.xaxis,C=L.yaxis,M=Wb.simpleMap(x,Cm),g=Wb.simpleMap(C,Cm),P=M.concat(g),T=$ve.background;x.length&&C.length&&(T=Wb.coerce(t,r,h0t,"plot_bgcolor"));var z=$ve.combine(T,r.paper_bgcolor),O,V,G,Z,j;function N(){var St=a[O]||[];j._traceIndices=St.map(function(Qt){return Qt.index}),j._annIndices=[],j._shapeIndices=[],j._selectionIndices=[],j._imgIndices=[],j._subplotsWith=[],j._counterAxes=[],j._name=j._attr=O,j._id=V}function H(St,Qt){return Wb.coerce(Z,j,epe,St,Qt)}function te(St,Qt){return Wb.coerce2(Z,j,epe,St,Qt)}function oe(St){return St==="x"?C:x}function _e(St,Qt){for(var Vt=St==="x"?M:g,_t=[],It=0;It<Vt.length;It++){var mt=Vt[It];mt!==Qt&&!(t[mt]||{}).overlaying&&_t.push(ipe(mt))}return _t}var Ee={x:oe("x"),y:oe("y")},Ce=Ee.x.concat(Ee.y),me={},ie=[];function Se(){var St=Z.matches;p0t.test(St)&&Ce.indexOf(St)===-1&&(me[St]=Z.type,ie=Object.keys(me))}var Le=f0t(t,r),Ae=c0t(Le);for(_=0;_<P.length;_++){O=P[_],V=ipe(O),G=O.charAt(0),Wb.isPlainObject(t[O])||(t[O]={}),Z=t[O],j=Qve.newContainer(r,O,G+"axis"),N();var Fe=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:Fe,reverseDflt:Pe,autotypenumbersDflt:i,splomStash:((r._splomAxes||{})[G]||{})[V],noAutotickangles:G==="y"};H("uirevision",r.uirevision),d0t(Z,j,H,ge),tpe(Z,j,H,ge,r);var Re=Ae&&G===Le.charAt(0),ce=te("spikecolor",Ae?j.color:void 0),Ze=te("spikethickness",Ae?1.5:void 0),ut=te("spikedash",Ae?"dot":void 0),pt=te("spikemode",Ae?"across":void 0),Zt=te("spikesnap"),st=H("showspikes",!!Re||!!ce||!!Ze||!!ut||!!pt||!!Zt);st||(delete j.spikecolor,delete j.spikethickness,delete j.spikedash,delete j.spikemode,delete j.spikesnap);var lt=Cm(Z.overlaying),Gt=[0,1];if(r[lt]!==void 0){var Nt=Cm(r[lt].anchor);r[Nt]!==void 0&&(Gt=r[Nt].domain)}rpe(Z,j,H,{letter:G,counterAxes:Ee[G],overlayableAxes:_e(G,O),grid:r.grid,overlayingDomain:Gt}),H("title.standoff"),Se(),j._input=Z}for(_=0;_<ie.length;){V=ie[_++],O=Cm(V),G=O.charAt(0),Wb.isPlainObject(t[O])||(t[O]={}),Z=t[O],j=Qve.newContainer(r,O,G+"axis"),N();var Jt={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]};H("uirevision",r.uirevision),j.type=me[V]||"linear",tpe(Z,j,H,Jt,r),rpe(Z,j,H,{letter:G,counterAxes:Ee[G],overlayableAxes:_e(G,O),grid:r.grid}),H("fixedrange"),H("modebardisable"),Se(),j._input=Z}var sr=EU("rangeslider","handleDefaults"),wr=EU("rangeselector","handleDefaults");for(_=0;_<M.length;_++)O=M[_],Z=t[O],j=r[O],sr(t,r,O),j.type==="date"&&wr(Z,j,r,g,j.calendar),H("fixedrange"),H("modebardisable");for(_=0;_<g.length;_++){O=g[_],Z=t[O],j=r[O];var cr=r[Cm(j.anchor)],$e=EU("rangeslider","isVisible")(cr);H("fixedrange",$e),H("modebardisable")}v0t.handleDefaults(t,r,{axIds:Ce.concat(ie).sort(kU.idSort),axHasImage:h})}});var upe=ye((bsr,lpe)=>{"use strict";var g0t=Oa(),spe=qa(),hI=Dr(),Qp=So(),dI=ho();lpe.exports=function(t,r,n,i){var a=t._fullLayout;if(r.length===0){dI.redrawComponents(t);return}function o(b){var p=b.xaxis,k=b.yaxis;a._defs.select("#"+b.clipId+"> rect").call(Qp.setTranslate,0,0).call(Qp.setScale,1,1),b.plot.call(Qp.setTranslate,p._offset,k._offset).call(Qp.setScale,1,1);var E=b.plot.selectAll(".scatterlayer .trace");E.selectAll(".point").call(Qp.setPointGroupScale,1,1),E.selectAll(".textpoint").call(Qp.setTextPointsScale,1,1),E.call(Qp.hideOutsideRangePoints,b)}function s(b,p){var k=b.plotinfo,E=k.xaxis,S=k.yaxis,L=E._length,x=S._length,C=!!b.xr1,M=!!b.yr1,g=[];if(C){var P=hI.simpleMap(b.xr0,E.r2l),T=hI.simpleMap(b.xr1,E.r2l),z=P[1]-P[0],O=T[1]-T[0];g[0]=(P[0]*(1-p)+p*T[0]-P[0])/(P[1]-P[0])*L,g[2]=L*(1-p+p*O/z),E.range[0]=E.l2r(P[0]*(1-p)+p*T[0]),E.range[1]=E.l2r(P[1]*(1-p)+p*T[1])}else g[0]=0,g[2]=L;if(M){var V=hI.simpleMap(b.yr0,S.r2l),G=hI.simpleMap(b.yr1,S.r2l),Z=V[1]-V[0],j=G[1]-G[0];g[1]=(V[1]*(1-p)+p*G[1]-V[1])/(V[0]-V[1])*x,g[3]=x*(1-p+p*j/Z),S.range[0]=E.l2r(V[0]*(1-p)+p*G[0]),S.range[1]=S.l2r(V[1]*(1-p)+p*G[1])}else g[1]=0,g[3]=x;dI.drawOne(t,E,{skipTitle:!0}),dI.drawOne(t,S,{skipTitle:!0}),dI.redrawComponents(t,[E._id,S._id]);var N=C?L/g[2]:1,H=M?x/g[3]:1,te=C?g[0]:0,oe=M?g[1]:0,_e=C?g[0]/g[2]*L:0,Ee=M?g[1]/g[3]*x:0,Ce=E._offset-_e,me=S._offset-Ee;k.clipRect.call(Qp.setTranslate,te,oe).call(Qp.setScale,1/N,1/H),k.plot.call(Qp.setTranslate,Ce,me).call(Qp.setScale,N,H),Qp.setPointGroupScale(k.zoomScalePts,1/N,1/H),Qp.setTextPointsScale(k.zoomScaleTxt,1/N,1/H)}var l;i&&(l=i());function u(){for(var b={},p=0;p<r.length;p++){var k=r[p],E=k.plotinfo.xaxis,S=k.plotinfo.yaxis;k.xr1&&(b[E._name+".range"]=k.xr1.slice()),k.yr1&&(b[S._name+".range"]=k.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 k=r[p],E=k.plotinfo.xaxis,S=k.plotinfo.yaxis;k.xr0&&(b[E._name+".range"]=k.xr0.slice()),k.yr0&&(b[S._name+".range"]=k.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=g0t.ease(n.easing);t._transitionData._interruptCallbacks.push(function(){return window.cancelAnimationFrame(d),d=null,c()});function _(){h=Date.now();for(var b=Math.min(1,(h-f)/n.duration),p=v(b),k=0;k<r.length;k++)s(r[k],p);h-f>n.duration?(u(),d=window.cancelAnimationFrame(_)):d=window.requestAnimationFrame(_)}return f=Date.now(),d=window.requestAnimationFrame(_),Promise.resolve()}});var ph=ye(xv=>{"use strict";var pI=Oa(),cpe=qa(),Xb=Dr(),m0t=Mc(),y0t=So(),fpe=Id().getModuleCalcData,g_=hf(),zg=hd(),_0t=Wp(),iu=Xb.ensureSingle;function vI(e,t,r){return Xb.ensureSingle(e,t,r,function(n){n.datum(r)})}var Zb=zg.zindexSeparator;xv.name="cartesian";xv.attr=["xaxis","yaxis"];xv.idRoot=["x","y"];xv.idRegex=zg.idRegex;xv.attrRegex=zg.attrRegex;xv.attributes=qve();xv.layoutAttributes=Rd();xv.supplyLayoutDefaults=ope();xv.transitionAxes=upe();xv.finalizeSubplots=function(e,t){var r=t._subplots,n=r.xaxis,i=r.yaxis,a=r.cartesian,o=a,s={},l={},u,c,f;for(u=0;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[g_.id2name(c)]||{}).anchor,zg.idRegex.y.test(f)||(f="y"),a.push(c+f),o.push(c+f),l[f]||(l[f]=1,Xb.pushUnique(i,f)));for(u=0;u<i.length;u++)f=i[u],l[f]||(c=(e[g_.id2name(f)]||{}).anchor,zg.idRegex.x.test(c)||(c="x"),a.push(c+f),o.push(c+f),s[c]||(s[c]=1,Xb.pushUnique(n,c)));if(!o.length){c="",f="";for(var d in e)if(zg.attrRegex.test(d)){var v=d.charAt(0);v==="x"?(!c||+d.slice(5)<+c.slice(5))&&(c=d):(!f||+d.slice(5)<+f.slice(5))&&(f=d)}c=c?g_.name2id(c):"x",f=f?g_.name2id(f):"y",n.push(c),i.push(f),a.push(c+f)}};xv.plot=function(e,t,r,n){var i=e._fullLayout,a=i._subplots.cartesian,o=e.calcdata,s;if(!Array.isArray(t))for(t=[],s=0;s<o.length;s++)t.push(s);for(var l=i._zindices,u=0;u<l.length;u++){var c=l[u];for(s=0;s<a.length;s++){var f=a[s],h=i._plots[f];if(u>0){var d=h.id;if(d.indexOf(Zb)!==-1)continue;d+=Zb+(u+1),h=Xb.extendFlat({},h,{id:d,plot:i._cartesianlayer.selectAll(".subplot").select("."+d)})}for(var v=[],_,b=0;b<o.length;b++){var p=o[b],k=p[0].trace;c===(k.zorder||0)&&k.xaxis+k.yaxis===f&&((t.indexOf(k.index)!==-1||k.carpet)&&(_&&_[0].trace.xaxis+_[0].trace.yaxis===f&&["tonextx","tonexty","tonext"].indexOf(k.fill)!==-1&&v.indexOf(_)===-1&&v.push(_),v.push(p)),_=p)}hpe(e,h,v,r,n)}}};function hpe(e,t,r,n,i){for(var a=zg.traceLayerClasses,o=e._fullLayout,s=o._zindices,l=o._modules,u,c,f,h=[],d=[],v=0;v<s.length;v++)for(var _=s[v],b=0;b<l.length;b++){u=l[b];var p=u.name,k=cpe.modules[p].categories;if(k.svg){var E=u.layerName||p+"layer",S=E+(v?Number(v)+1:""),L=u.plot;c=fpe(r,L,_),f=c[0],r=c[1],f.length&&h.push({i:a.indexOf(E),zindex:v,className:S,plotMethod:L,cdModule:f}),k.zoomScale&&d.push("."+S)}}h.sort(function(M,g){return(M.zindex||0)-(g.zindex||0)||M.i-g.i});var x=t.plot.selectAll("g.mlayer").data(h,function(M){return M.className});if(x.enter().append("g").attr("class",function(M){return M.className}).classed("mlayer",!0).classed("rangeplot",t.isRangePlot),x.exit().remove(),x.order(),x.each(function(M){var g=pI.select(this),P=M.className;M.plotMethod(e,t,M.cdModule,g,n,i),zg.clipOnAxisFalseQuery.indexOf("."+P)===-1&&y0t.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(zg.clipOnAxisFalseQuery.join(",")).selectAll(".trace")),d.length)){var C=t.plot.selectAll(d.join(",")).selectAll(".trace");t.zoomScalePts=C.selectAll("path.point"),t.zoomScaleTxt=C.selectAll(".textpoint")}}xv.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=g_.listIds({_fullLayout:n});for(l=0;l<h.length;l++){var d=h[l];t[g_.id2name(d)]||n._infolayer.selectAll(".g-"+d+"title").remove()}}var v=n._has&&n._has("cartesian"),_=t._has&&t._has("cartesian");if(v&&!_)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(Zb)===-1&&!a[b]){var p="."+b+",."+b+"-x,."+b+"-y";n._cartesianlayer.selectAll(p).remove(),ppe(b,n)}}};xv.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(Xb.sorterAsc);l.length||(l=[0]),t._zindices=l;var u=x0t(e),c=u.length,f=[];for(n=0;n<c;n++)f[n]=u[n].slice();for(var h=1;h<l.length;h++){var d=[];for(n=0;n<c;n++)d[n]=u[n].slice(),d[n][0]+=Zb+(h+1);f=f.concat(d)}var v=t._cartesianlayer.selectAll(".subplot").data(f,String);v.enter().append("g").attr("class",function(_){return"subplot "+_[0]}),v.order(),v.exit().call(vpe,t),v.each(function(_){var b=_[0],p=b.indexOf(Zb),k=p!==-1,E=k?b.slice(0,p):b,S=t._plots[b];S||(S=Xb.extendFlat({},t._plots[E]),S&&(S.id=b,t._plots[b]=S,t._subplots.cartesian.push(b))),S&&(S.plotgroup=pI.select(this),dpe(e,S),k||(S.draglayer=iu(t._draggers,"g",b)))})};xv.rangePlot=function(e,t,r){dpe(e,t),hpe(e,t,r),m0t.style(e)};function x0t(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,_=d._id+v._id,b=t._plots[_];l.overlays=[],_!==s&&b?(l.mainplot=_,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),k=[];for(a=0;a<i;a++){s=p[a],l=t._plots[s],u=l.xaxis,c=l.yaxis;for(var E=[],S=1;S<=r;S++){var L="";for(S>1&&(L+=Zb+S),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||""]),k.push(E)}return k}function dpe(e,t){var r=e._fullLayout,n=t.plotgroup,i=t.id,a=i.indexOf(Zb),o=a!==-1,s=zg.layerValue2layerClass[t.xaxis.layer],l=zg.layerValue2layerClass[t.yaxis.layer],u=r._hasOnlyLargeSploms,c=r._zindices.length>1,f=t.mainplotinfo;if(!t.mainplot||c)if(u)t.xlines=iu(n,"path","xlines-above"),t.ylines=iu(n,"path","ylines-above"),t.xaxislayer=iu(n,"g","xaxislayer-above"),t.yaxislayer=iu(n,"g","yaxislayer-above");else{if(!o){var h=iu(n,"g","layer-subplot");t.shapelayer=iu(h,"g","shapelayer"),t.imagelayer=iu(h,"g","imagelayer"),f&&c?(t.minorGridlayer=f.minorGridlayer,t.gridlayer=f.gridlayer,t.zerolinelayer=f.zerolinelayer):(t.minorGridlayer=iu(n,"g","minor-gridlayer"),t.gridlayer=iu(n,"g","gridlayer"),t.zerolinelayer=iu(n,"g","zerolinelayer"));var d=iu(n,"g","layer-between");t.shapelayerBetween=iu(d,"g","shapelayer"),t.imagelayerBetween=iu(d,"g","imagelayer"),iu(n,"path","xlines-below"),iu(n,"path","ylines-below"),t.overlinesBelow=iu(n,"g","overlines-below"),iu(n,"g","xaxislayer-below"),iu(n,"g","yaxislayer-below"),t.overaxesBelow=iu(n,"g","overaxes-below")}t.overplot=iu(n,"g","overplot"),t.plot=iu(t.overplot,"g",i),f&&c?t.zerolinelayerAbove=f.zerolinelayerAbove:t.zerolinelayerAbove=iu(n,"g","zerolinelayer-above"),o||(t.xlines=iu(n,"path","xlines-above"),t.ylines=iu(n,"path","ylines-above"),t.overlinesAbove=iu(n,"g","overlines-above"),iu(n,"g","xaxislayer-above"),iu(n,"g","yaxislayer-above"),t.overaxesAbove=iu(n,"g","overaxes-above"),t.xlines=n.select(".xlines-"+s),t.ylines=n.select(".ylines-"+l),t.xaxislayer=n.select(".xaxislayer-"+s),t.yaxislayer=n.select(".yaxislayer-"+l))}else{var v=f.plotgroup,_=i+"-x",b=i+"-y";t.minorGridlayer=f.minorGridlayer,t.gridlayer=f.gridlayer,t.zerolinelayer=f.zerolinelayer,t.zerolinelayerAbove=f.zerolinelayerAbove,iu(f.overlinesBelow,"path",_),iu(f.overlinesBelow,"path",b),iu(f.overaxesBelow,"g",_),iu(f.overaxesBelow,"g",b),t.plot=iu(f.overplot,"g",i),iu(f.overlinesAbove,"path",_),iu(f.overlinesAbove,"path",b),iu(f.overaxesAbove,"g",_),iu(f.overaxesAbove,"g",b),t.xlines=v.select(".overlines-"+s).select("."+_),t.ylines=v.select(".overlines-"+l).select("."+b),t.xaxislayer=v.select(".overaxes-"+s).select("."+_),t.yaxislayer=v.select(".overaxes-"+l).select("."+b)}o||(u||(vI(t.minorGridlayer,"g",t.xaxis._id),vI(t.minorGridlayer,"g",t.yaxis._id),t.minorGridlayer.selectAll("g").map(function(p){return p[0]}).sort(g_.idSort),vI(t.gridlayer,"g",t.xaxis._id),vI(t.gridlayer,"g",t.yaxis._id),t.gridlayer.selectAll("g").map(function(p){return p[0]}).sort(g_.idSort)),t.xlines.style("fill","none").classed("crisp",!0),t.ylines.style("fill","none").classed("crisp",!0))}function vpe(e,t){if(e){var r={};e.each(function(l){var u=l[0],c=pI.select(this);c.remove(),ppe(u,t),r[u]=!0});for(var n in t._plots)for(var i=t._plots[n],a=i.overlays||[],o=0;o<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()}xv.toSVG=function(e){var t=e._fullLayout._glimages,r=pI.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:_0t.svg,"xlink:href":o,preserveAspectRatio:"none",x:0,y:0,width:a.style.width,height:a.style.height})}n.each(i)};xv.updateFx=UN().updateFx});var mpe=ye((Tsr,gpe)=>{"use strict";var gI=Ru();gpe.exports={hasLines:gI.hasLines,hasMarkers:gI.hasMarkers,hasText:gI.hasText,isBubble:gI.isBubble,attributes:pf(),layoutAttributes:X6(),supplyDefaults:Gde(),crossTraceDefaults:aU(),supplyLayoutDefaults:Xde(),calc:O0().calc,crossTraceCalc:mve(),arraysToCalcdata:km(),plot:sT(),colorbar:$d(),formatLabels:nI(),style:op().style,styleOnSelect:op().styleOnSelect,hoverPoints:fT(),selectPoints:hT(),animatable:!0,moduleType:"trace",name:"scatter",basePlotModule:ph(),categories:["cartesian","svg","symbols","errorBarsOK","showLegend","scatter-like","zoomScale"],meta:{}}});var xpe=ye((Asr,_pe)=>{"use strict";var b0t=Oa(),w0t=ka(),ype=IN(),CU=Dr(),T0t=CU.strScale,A0t=CU.strRotate,S0t=CU.strTranslate;_pe.exports=function(t,r,n){var i=t.node(),a=ype[n.arrowhead||0],o=ype[n.startarrowhead||0],s=(n.arrowwidth||1)*(n.arrowsize||1),l=(n.arrowwidth||1)*(n.startarrowsize||1),u=r.indexOf("start")>=0,c=r.indexOf("end")>=0,f=a.backoff*s+n.standoff,h=o.backoff*l+n.startstandoff,d,v,_,b;if(i.nodeName==="line"){d={x:+t.attr("x1"),y:+t.attr("y1")},v={x:+t.attr("x2"),y:+t.attr("y2")};var p=d.x-v.x,k=d.y-v.y;if(_=Math.atan2(k,p),b=_+Math.PI,f&&h&&f+h>Math.sqrt(p*p+k*k)){V();return}if(f){if(f*f>p*p+k*k){V();return}var E=f*Math.cos(_),S=f*Math.sin(_);v.x+=E,v.y+=S,t.attr({x2:v.x,y2:v.y})}if(h){if(h*h>p*p+k*k){V();return}var L=h*Math.cos(_),x=h*Math.sin(_);d.x-=L,d.y-=x,t.attr({x1:d.x,y1:d.y})}}else if(i.nodeName==="path"){var C=i.getTotalLength(),M="";if(C<f+h){V();return}var g=i.getPointAtLength(0),P=i.getPointAtLength(.1);_=Math.atan2(g.y-P.y,g.x-P.x),d=i.getPointAtLength(Math.min(h,C)),M="0px,"+h+"px,";var T=i.getPointAtLength(C),z=i.getPointAtLength(C-.1);b=Math.atan2(T.y-z.y,T.x-z.x),v=i.getPointAtLength(Math.max(0,C-f));var O=M?h+f:f;M+=C-O+"px,"+C+"px",t.style("stroke-dasharray",M)}function V(){t.style("stroke-dasharray","0px,100px")}function G(Z,j,N,H){Z.path&&(Z.noRotate&&(N=0),b0t.select(i.parentNode).append("path").attr({class:t.attr("class"),d:Z.path,transform:S0t(j.x,j.y)+A0t(N*180/Math.PI)+T0t(H)}).style({fill:w0t.rgb(n.arrowcolor),"stroke-width":0}))}u&&G(o,d,_,l),c&&G(a,v,b,s)}});var mI=ye((Ssr,Spe)=>{"use strict";var bpe=Oa(),LU=qa(),M0t=Mc(),y_=Dr(),PU=y_.strTranslate,a4=ho(),Yb=ka(),Iy=So(),wpe=vf(),IU=ru(),RU=Sg(),n4=yv(),E0t=vl().arrayEditor,k0t=xpe();Spe.exports={draw:C0t,drawOne:Tpe,drawRaw:Ape};function C0t(e){var t=e._fullLayout;t._infolayer.selectAll(".annotation").remove();for(var r=0;r<t.annotations.length;r++)t.annotations[r].visible&&Tpe(e,r);return M0t.previousPromises(e)}function Tpe(e,t){var r=e._fullLayout,n=r.annotations[t]||{},i=a4.getFromId(e,n.xref),a=a4.getFromId(e,n.yref);i&&i.setScale(),a&&a.setScale(),Ape(e,n,t,!1,i,a)}function m_(e,t,r,n,i){var a=i[r],o=i[r+"ref"],s=r.indexOf("y")!==-1,l=a4.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=E0t(e.layout,c,t),h=f.modifyBase,d=f.modifyItem,v=f.getUpdateObj;o._infolayer.selectAll("."+u+'[data-index="'+r+'"]').remove();var _="clip"+o._uid+"_ann"+r;if(!t._input||t.visible===!1){bpe.selectAll("#"+_).remove();return}var b={x:{},y:{}},p=+t.textangle||0,k=o._infolayer.append("g").classed(u,!0).attr("data-index",String(r)).style("opacity",t.opacity),E=k.append("g").classed("annotation-text-g",!0),S=l[t.showarrow?"annotationTail":"annotationPosition"],L=t.captureevents||l.annotationText||S;function x(H){var te={index:r,annotation:t._input,fullAnnotation:t,event:H};return n&&(te.subplotId=n),te}var C=E.append("g").style("pointer-events",L?"all":null).call(RU,"pointer").on("click",function(){e._dragging=!1,e.emit("plotly_clickannotation",x(bpe.event))});t.hovertext&&C.on("mouseover",function(){var H=t.hoverlabel,te=H.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:H.bgcolor,borderColor:H.bordercolor,fontFamily:te.family,fontSize:te.size,fontColor:te.color,fontWeight:te.weight,fontStyle:te.style,fontVariant:te.variant,fontShadow:te.fontShadow,fontLineposition:te.fontLineposition,fontTextcase:te.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=C.append("rect").attr("class","bg").style("stroke-width",M+"px").call(Yb.stroke,t.bordercolor).call(Yb.fill,t.bgcolor),z=t.width||t.height,O=o._topclips.selectAll("#"+_).data(z?[0]:[]);O.enter().append("clipPath").classed("annclip",!0).attr("id",_).append("rect"),O.exit().remove();var V=t.font,G=o._meta?y_.templateString(t.text,o._meta):t.text,Z=C.append("text").classed("annotation-text",!0).text(G);function j(H){return H.call(Iy.font,V).attr({"text-anchor":{left:"start",right:"end"}[t.align]||"middle"}),IU.convertToTspans(H,e,N),H}function N(){var H=Z.selectAll("a");if(H.size()===1&&H.text()===Z.text()){var te=C.insert("a",":first-child").attr({"xlink:xlink:href":H.attr("xlink:href"),"xlink:xlink:show":H.attr("xlink:show")}).style({cursor:"pointer"});te.node().appendChild(T.node())}var oe=C.select(".annotation-text-math-group"),_e=!oe.empty(),Ee=Iy.bBox((_e?oe:Z).node()),Ce=Ee.width,me=Ee.height,ie=t.width||Ce,Se=t.height||me,Le=Math.round(ie+2*P),Ae=Math.round(Se+2*P);function Fe(je,tt){return tt==="auto"&&(je<1/3?tt="left":je>2/3?tt="right":tt="center"),{center:0,middle:0,left:.5,bottom:-.5,right:-.5,top:.5}[tt]}for(var Pe=!1,ge=["x","y"],Re=0;Re<ge.length;Re++){var ce=ge[Re],Ze=t[ce+"ref"]||ce,ut=t["a"+ce+"ref"],pt={x:i,y:a}[ce],Zt=(p+(ce==="x"?0:-90))*Math.PI/180,st=Le*Math.cos(Zt),lt=Ae*Math.sin(Zt),Gt=Math.abs(st)+Math.abs(lt),Nt=t[ce+"anchor"],Jt=t[ce+"shift"]*(ce==="x"?1:-1),sr=b[ce],wr,cr,$e,St,Qt,Vt=a4.getRefType(Ze);if(pt&&Vt!=="domain"){var _t=pt.r2fraction(t[ce]);(_t<0||_t>1)&&(ut===Ze?(_t=pt.r2fraction(t["a"+ce]),(_t<0||_t>1)&&(Pe=!0)):Pe=!0),wr=pt._offset+pt.r2p(t[ce]),St=.5}else{var It=Vt==="domain";ce==="x"?($e=t[ce],wr=It?pt._offset+pt._length*$e:wr=s.l+s.w*$e):($e=1-t[ce],wr=It?pt._offset+pt._length*$e:wr=s.t+s.h*$e),St=t.showarrow?.5:$e}if(t.showarrow){sr.head=wr;var mt=t["a"+ce];if(Qt=st*Fe(.5,t.xanchor)-lt*Fe(.5,t.yanchor),ut===Ze){var er=a4.getRefType(ut);er==="domain"?(ce==="y"&&(mt=1-mt),sr.tail=pt._offset+pt._length*mt):er==="paper"?ce==="y"?(mt=1-mt,sr.tail=s.t+s.h*mt):sr.tail=s.l+s.w*mt:sr.tail=pt._offset+pt.r2p(mt),cr=Qt}else sr.tail=wr+mt,cr=Qt+mt;sr.text=sr.tail+Qt;var lr=o[ce==="x"?"width":"height"];if(Ze==="paper"&&(sr.head=y_.constrain(sr.head,1,lr-1)),ut==="pixel"){var Tr=-Math.max(sr.tail-3,sr.text),Lr=Math.min(sr.tail+3,sr.text)-lr;Tr>0?(sr.tail+=Tr,sr.text+=Tr):Lr>0&&(sr.tail-=Lr,sr.text-=Lr)}sr.tail+=Jt,sr.head+=Jt}else Qt=Gt*Fe(St,Nt),cr=Qt,sr.text=wr+Qt;sr.text+=Jt,Qt+=Jt,cr+=Jt,t["_"+ce+"padplus"]=Gt/2+cr,t["_"+ce+"padminus"]=Gt/2-cr,t["_"+ce+"size"]=Gt,t["_"+ce+"shift"]=Qt}if(Pe){C.remove();return}var ti=0,Br=0;if(t.align!=="left"&&(ti=(ie-Ce)*(t.align==="center"?.5:1)),t.valign!=="top"&&(Br=(Se-me)*(t.valign==="middle"?.5:1)),_e)oe.select("svg").attr({x:P+ti-1,y:P+Br}).call(Iy.setClipUrl,z?_:null,e);else{var Vr=P+Br-Ee.top,dt=P+ti-Ee.left;Z.call(IU.positionText,dt,Vr).call(Iy.setClipUrl,z?_:null,e)}O.select("rect").call(Iy.setRect,P,P,ie,Se),T.call(Iy.setRect,M/2,M/2,Le-M,Ae-M),C.call(Iy.setTranslate,Math.round(b.x.text-Le/2),Math.round(b.y.text-Ae/2)),E.attr({transform:"rotate("+p+","+b.x.text+","+b.y.text+")"});var Ge=function(je,tt){k.selectAll(".annotation-arrow-g").remove();var xt=b.x.head,Ie=b.y.head,xe=b.x.tail+je,ke=b.y.tail+tt,vt=b.x.text+je,ir=b.y.text+tt,ar=y_.rotationXYMatrix(p,vt,ir),vr=y_.apply2DTransform(ar),ii=y_.apply2DTransform2(ar),pi=+T.attr("width"),$r=+T.attr("height"),di=vt-.5*pi,ji=di+pi,In=ir-.5*$r,wi=In+$r,On=[[di,In,di,wi],[di,wi,ji,wi],[ji,wi,ji,In],[ji,In,di,In]].map(ii);if(!On.reduce(function(Qr,Oi){return Qr^!!y_.segmentsIntersect(xt,Ie,xt+1e6,Ie+1e6,Oi[0],Oi[1],Oi[2],Oi[3])},!1)){On.forEach(function(Qr){var Oi=y_.segmentsIntersect(xe,ke,xt,Ie,Qr[0],Qr[1],Qr[2],Qr[3]);Oi&&(xe=Oi.x,ke=Oi.y)});var qn=t.arrowwidth,Fn=t.arrowcolor,ra=t.arrowside,la=k.append("g").style({opacity:Yb.opacity(Fn)}).classed("annotation-arrow-g",!0),Ut=la.append("path").attr("d","M"+xe+","+ke+"L"+xt+","+Ie).style("stroke-width",qn+"px").call(Yb.stroke,Yb.rgb(Fn));if(k0t(Ut,ra,t),l.annotationPosition&&Ut.node().parentNode&&!n){var wt=xt,rr=Ie;if(t.standoff){var nr=Math.sqrt(Math.pow(xt-xe,2)+Math.pow(Ie-ke,2));wt+=t.standoff*(xe-xt)/nr,rr+=t.standoff*(ke-Ie)/nr}var Er=la.append("path").classed("annotation-arrow",!0).classed("anndrag",!0).classed("cursor-move",!0).attr({d:"M3,3H-3V-3H3ZM0,0L"+(xe-wt)+","+(ke-rr),transform:PU(wt,rr)}).style("stroke-width",qn+6+"px").call(Yb.stroke,"rgba(0,0,0,0)").call(Yb.fill,"rgba(0,0,0,0)"),Xr,ri;n4.init({element:Er.node(),gd:e,prepFn:function(){var Qr=Iy.getTranslate(C);Xr=Qr.x,ri=Qr.y,i&&i.autorange&&h(i._name+".autorange",!0),a&&a.autorange&&h(a._name+".autorange",!0)},moveFn:function(Qr,Oi){var $i=vr(Xr,ri),tn=$i[0]+Qr,fn=$i[1]+Oi;C.call(Iy.setTranslate,tn,fn),d("x",m_(i,Qr,"x",s,t)),d("y",m_(a,Oi,"y",s,t)),t.axref===t.xref&&d("ax",m_(i,Qr,"ax",s,t)),t.ayref===t.yref&&d("ay",m_(a,Oi,"ay",s,t)),la.attr("transform",PU(Qr,Oi)),E.attr({transform:"rotate("+p+","+tn+","+fn+")"})},doneFn:function(){LU.call("_guiRelayout",e,v());var Qr=document.querySelector(".js-notes-box-panel");Qr&&Qr.redraw(Qr.selectedObj)}})}}};if(t.showarrow&&Ge(0,0),S){var Je;n4.init({element:C.node(),gd:e,prepFn:function(){Je=E.attr("transform")},moveFn:function(je,tt){var xt="pointer";if(t.showarrow)t.axref===t.xref?d("ax",m_(i,je,"ax",s,t)):d("ax",t.ax+je),t.ayref===t.yref?d("ay",m_(a,tt,"ay",s.w,t)):d("ay",t.ay+tt),Ge(je,tt);else{if(n)return;var Ie,xe;if(i)Ie=m_(i,je,"x",s,t);else{var ke=t._xsize/s.w,vt=t.x+(t._xshift-t.xshift)/s.w-ke/2;Ie=n4.align(vt+je/s.w,ke,0,1,t.xanchor)}if(a)xe=m_(a,tt,"y",s,t);else{var ir=t._ysize/s.h,ar=t.y-(t._yshift+t.yshift)/s.h-ir/2;xe=n4.align(ar-tt/s.h,ir,0,1,t.yanchor)}d("x",Ie),d("y",xe),(!i||!a)&&(xt=n4.getCursor(i?.5:Ie,a?.5:xe,t.xanchor,t.yanchor))}E.attr({transform:PU(je,tt)+Je}),RU(C,xt)},clickFn:function(je,tt){t.captureevents&&e.emit("plotly_clickannotation",x(tt))},doneFn:function(){RU(C),LU.call("_guiRelayout",e,v());var je=document.querySelector(".js-notes-box-panel");je&&je.redraw(je.selectedObj)}})}}l.annotationText?Z.call(IU.makeEditable,{delegate:C,gd:e}).call(j).on("edit",function(H){t.text=H,this.call(j),d("text",H),i&&i.autorange&&h(i._name+".autorange",!0),a&&a.autorange&&h(a._name+".autorange",!0),LU.call("_guiRelayout",e,v())}):Z.call(j)}});var Ppe=ye((Msr,Lpe)=>{"use strict";var Mpe=Dr(),L0t=qa(),Epe=vl().arrayEditor;Lpe.exports={hasClickToShow:P0t,onClick:I0t};function P0t(e,t){var r=Cpe(e,t);return r.on.length>0||r.explicitOff.length>0}function I0t(e,t){var r=Cpe(e,t),n=r.on,i=r.off.concat(r.explicitOff),a={},o=e._fullLayout.annotations,s,l;if(n.length||i.length){for(s=0;s<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 L0t.call("update",e,{},a)}}function Cpe(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)===kpe(u._xclick,h)&&d.d2r(f.y)===kpe(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 kpe(e,t){return t.type==="log"?t.l2r(e):t.d2r(e)}});var FU=ye((Esr,Ipe)=>{"use strict";var DU=Dr(),dT=ka();Ipe.exports=function(t,r,n,i){i("opacity");var a=i("bgcolor"),o=i("bordercolor"),s=dT.opacity(o);i("borderpad");var l=i("borderwidth"),u=i("showarrow");i("text",u?" ":n._dfltTitle.annotation),i("textangle"),DU.coerceFont(i,"font",n.font),i("width"),i("align");var c=i("height");if(c&&i("valign"),u){var f=i("arrowside"),h,d;f.indexOf("end")!==-1&&(h=i("arrowhead"),d=i("arrowsize")),f.indexOf("start")!==-1&&(i("startarrowhead",h),i("startarrowsize",d)),i("arrowcolor",s?r.bordercolor:dT.defaultLine),i("arrowwidth",(s&&l||1)*2),i("standoff"),i("startstandoff")}var v=i("hovertext"),_=n.hoverlabel||{};if(v){var b=i("hoverlabel.bgcolor",_.bgcolor||(dT.opacity(a)?dT.rgb(a):dT.defaultLine)),p=i("hoverlabel.bordercolor",_.bordercolor||dT.contrast(b)),k=DU.extendFlat({},_.font);k.color||(k.color=p),DU.coerceFont(i,"hoverlabel.font",k)}i("captureevents",!!v)}});var Dpe=ye((ksr,Rpe)=>{"use strict";var zU=Dr(),Kb=ho(),R0t=Yd(),D0t=FU(),F0t=Ub();Rpe.exports=function(t,r){R0t(t,r,{name:"annotations",handleItemDefaults:z0t})};function z0t(e,t,r){function n(E,S){return zU.coerce(e,t,F0t,E,S)}var i=n("visible"),a=n("clicktoshow");if(i||a){D0t(e,t,r,n);for(var o=t.showarrow,s=["x","y"],l=[-10,-30],u={_fullLayout:r},c=0;c<2;c++){var f=s[c],h=Kb.coerceRef(e,t,u,f,"","paper");if(h!=="paper"){var d=Kb.getFromId(u,h);d._annIndices.push(t._index)}if(Kb.coercePosition(t,u,n,h,f,.5),o){var v="a"+f,_=Kb.coerceRef(e,t,u,v,"pixel",["pixel","paper"]);_!=="pixel"&&_!==h&&(_=t[v]="pixel");var b=_==="pixel"?l[c]:.4;Kb.coercePosition(t,u,n,_,v,b)}n(f+"anchor"),n(f+"shift")}if(zU.noneOrAll(e,t,["x","y"]),o&&zU.noneOrAll(e,t,["ax","ay"]),a){var p=n("xclick"),k=n("yclick");t._xclick=p===void 0?t.x:Kb.cleanPosition(p,u,t.xref),t._yclick=k===void 0?t.y:Kb.cleanPosition(k,u,t.yref)}}}});var Ope=ye((Csr,zpe)=>{"use strict";var OU=Dr(),Jb=ho(),O0t=mI().draw;zpe.exports=function(t){var r=t._fullLayout,n=OU.filterVisible(r.annotations);if(n.length&&t._fullData.length)return OU.syncOrAsync([O0t,q0t],t)};function q0t(e){var t=e._fullLayout;OU.filterVisible(t.annotations).forEach(function(r){var n=Jb.getFromId(e,r.xref),i=Jb.getFromId(e,r.yref),a=Jb.getRefType(r.xref),o=Jb.getRefType(r.yref);r._extremes={},a==="range"&&Fpe(r,n),o==="range"&&Fpe(r,i)})}function Fpe(e,t){var r=t._id,n=r.charAt(0),i=e[n],a=e["a"+n],o=e[n+"ref"],s=e["a"+n+"ref"],l=e["_"+n+"padplus"],u=e["_"+n+"padminus"],c={x:1,y:-1}[n]*e[n+"shift"],f=3*e.arrowsize*e.arrowwidth||0,h=f+c,d=f-c,v=3*e.startarrowsize*e.arrowwidth||0,_=v+c,b=v-c,p;if(s===o){var k=Jb.findExtremes(t,[t.r2c(i)],{ppadplus:h,ppadminus:d}),E=Jb.findExtremes(t,[t.r2c(a)],{ppadplus:Math.max(l,_),ppadminus:Math.max(u,b)});p={min:[k.min[0],E.min[0]],max:[k.max[0],E.max[0]]}}else _=a?_+a:_,b=a?b-a:b,p=Jb.findExtremes(t,[t.r2c(i)],{ppadplus:Math.max(l,h,_),ppadminus:Math.max(u,d,b)});e._extremes[r]=p}});var Bpe=ye((Lsr,qpe)=>{"use strict";var B0t=Eo(),N0t=m6();qpe.exports=function(t,r,n,i){r=r||{};var a=n==="log"&&r.type==="linear",o=n==="linear"&&r.type==="log";if(!(a||o))return;var s=t._fullLayout.annotations,l=r._id.charAt(0),u,c;function f(d){var v=u[d],_=null;a?_=N0t(v,r.range):_=Math.pow(10,v),B0t(_)||(_=null),i(c+d,_)}for(var h=0;h<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((Psr,Upe)=>{"use strict";var qU=mI(),Npe=Ppe();Upe.exports={moduleType:"component",name:"annotations",layoutAttributes:Ub(),supplyLayoutDefaults:Dpe(),includeBasePlot:qM()("annotations"),calcAutorange:Ope(),draw:qU.draw,drawOne:qU.drawOne,drawRaw:qU.drawRaw,hasClickToShow:Npe.hasClickToShow,onClick:Npe.onClick,convertCoords:Bpe()}});var yI=ye((Isr,Gpe)=>{"use strict";var kc=Ub(),U0t=mc().overrideAll,V0t=vl().templatedArray;Gpe.exports=U0t(V0t("annotation",{visible:kc.visible,x:{valType:"any"},y:{valType:"any"},z:{valType:"any"},ax:{valType:"number"},ay:{valType:"number"},xanchor:kc.xanchor,xshift:kc.xshift,yanchor:kc.yanchor,yshift:kc.yshift,text:kc.text,textangle:kc.textangle,font:kc.font,width:kc.width,height:kc.height,opacity:kc.opacity,align:kc.align,valign:kc.valign,bgcolor:kc.bgcolor,bordercolor:kc.bordercolor,borderpad:kc.borderpad,borderwidth:kc.borderwidth,showarrow:kc.showarrow,arrowcolor:kc.arrowcolor,arrowhead:kc.arrowhead,startarrowhead:kc.startarrowhead,arrowside:kc.arrowside,arrowsize:kc.arrowsize,startarrowsize:kc.startarrowsize,arrowwidth:kc.arrowwidth,standoff:kc.standoff,startstandoff:kc.startstandoff,hovertext:kc.hovertext,hoverlabel:kc.hoverlabel,captureevents:kc.captureevents}),"calc","from-root")});var jpe=ye((Rsr,Hpe)=>{"use strict";var BU=Dr(),G0t=ho(),H0t=Yd(),j0t=FU(),W0t=yI();Hpe.exports=function(t,r,n){H0t(t,r,{name:"annotations",handleItemDefaults:X0t,fullLayout:n.fullLayout})};function X0t(e,t,r,n){function i(s,l){return BU.coerce(e,t,W0t,s,l)}function a(s){var l=s+"axis",u={_fullLayout:{}};return u._fullLayout[l]=r[l],G0t.coercePosition(t,u,i,s,s,.5)}var o=i("visible");o&&(j0t(e,t,n.fullLayout,i),a("x"),a("y"),a("z"),BU.noneOrAll(e,t,["x","y","z"]),t.xref="x",t.yref="y",t.zref="z",i("xanchor"),i("yanchor"),i("xshift"),i("yshift"),t.showarrow&&(t.axref="pixel",t.ayref="pixel",i("ax",-10),i("ay",-30),BU.noneOrAll(e,t,["ax","ay"])))}});var Ype=ye((Dsr,Zpe)=>{"use strict";var Wpe=Dr(),Xpe=ho();Zpe.exports=function(t){for(var r=t.fullSceneLayout,n=r.annotations,i=0;i<n.length;i++)Z0t(n[i],t);t.fullLayout._infolayer.selectAll(".annotation-"+t.id).remove()};function Z0t(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 UU=ye((Fsr,Kpe)=>{"use strict";function NU(e,t){var r=[0,0,0,0],n,i;for(n=0;n<4;++n)for(i=0;i<4;++i)r[i]+=e[4*n+i]*t[n];return r}function Y0t(e,t){var r=NU(e.projection,NU(e.view,NU(e.model,[t[0],t[1],t[2],1])));return r}Kpe.exports=Y0t});var $pe=ye((zsr,Jpe)=>{"use strict";var K0t=mI().drawRaw,J0t=UU(),$0t=["x","y","z"];Jpe.exports=function(t){for(var r=t.fullSceneLayout,n=t.dataScale,i=r.annotations,a=0;a<i.length;a++){for(var o=i[a],s=!1,l=0;l<3;l++){var u=$0t[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=J0t(t.glplot.cameraParams,[r.xaxis.r2l(o.x)*n[0],r.yaxis.r2l(o.y)*n[1],r.zaxis.r2l(o.z)*n[2]]),K0t(t.graphDiv,o,a,t.id,o._xa,o._ya))}}});var t0e=ye((Osr,e0e)=>{"use strict";var Q0t=qa(),Qpe=Dr();e0e.exports={moduleType:"component",name:"annotations3d",schema:{subplots:{scene:{annotations:yI()}}},layoutAttributes:yI(),handleDefaults:jpe(),includeBasePlot:egt,convert:Ype(),draw:$pe()};function egt(e,t){var r=Q0t.subplotsRegistry.gl3d;if(r)for(var n=r.attrRegex,i=Object.keys(e),a=0;a<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 VU=ye((Bsr,a0e)=>{"use strict";var r0e=Ub(),i0e=ec(),n0e=pf().line,tgt=Pd().dash,Og=Ao().extendFlat,rgt=vl().templatedArray,qsr=OM(),vT=Gl(),{shapeTexttemplateAttrs:igt,templatefallbackAttrs:ngt}=Ll(),agt=M6();a0e.exports=rgt("shape",{visible:Og({},vT.visible,{editType:"calc+arraydraw"}),showlegend:{valType:"boolean",dflt:!1,editType:"calc+arraydraw"},legend:Og({},vT.legend,{editType:"calc+arraydraw"}),legendgroup:Og({},vT.legendgroup,{editType:"calc+arraydraw"}),legendgrouptitle:{text:Og({},vT.legendgrouptitle.text,{editType:"calc+arraydraw"}),font:i0e({editType:"calc+arraydraw"}),editType:"calc+arraydraw"},legendrank:Og({},vT.legendrank,{editType:"calc+arraydraw"}),legendwidth:Og({},vT.legendwidth,{editType:"calc+arraydraw"}),type:{valType:"enumerated",values:["circle","rect","path","line"],editType:"calc+arraydraw"},layer:{valType:"enumerated",values:["below","above","between"],dflt:"above",editType:"arraydraw"},xref:Og({},r0e.xref,{}),xsizemode:{valType:"enumerated",values:["scaled","pixel"],dflt:"scaled",editType:"calc+arraydraw"},xanchor:{valType:"any",editType:"calc+arraydraw"},x0:{valType:"any",editType:"calc+arraydraw"},x1:{valType:"any",editType:"calc+arraydraw"},x0shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},x1shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},yref:Og({},r0e.yref,{}),ysizemode:{valType:"enumerated",values:["scaled","pixel"],dflt:"scaled",editType:"calc+arraydraw"},yanchor:{valType:"any",editType:"calc+arraydraw"},y0:{valType:"any",editType:"calc+arraydraw"},y1:{valType:"any",editType:"calc+arraydraw"},y0shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},y1shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},path:{valType:"string",editType:"calc+arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},line:{color:Og({},n0e.color,{editType:"arraydraw"}),width:Og({},n0e.width,{editType:"calc+arraydraw"}),dash:Og({},tgt,{editType:"arraydraw"}),editType:"calc+arraydraw"},fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},fillrule:{valType:"enumerated",values:["evenodd","nonzero"],dflt:"evenodd",editType:"arraydraw"},editable:{valType:"boolean",dflt:!1,editType:"calc+arraydraw"},label:{text:{valType:"string",dflt:"",editType:"arraydraw"},texttemplate:igt({},{keys:Object.keys(agt)}),texttemplatefallback:ngt({editType:"arraydraw"}),font:i0e({editType:"calc+arraydraw",colorEditType:"arraydraw"}),textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right","start","middle","end"],editType:"arraydraw"},textangle:{valType:"angle",dflt:"auto",editType:"calc+arraydraw"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto",editType:"calc+arraydraw"},yanchor:{valType:"enumerated",values:["top","middle","bottom"],editType:"calc+arraydraw"},padding:{valType:"number",dflt:3,min:0,editType:"arraydraw"},editType:"arraydraw"},editType:"arraydraw"})});var l0e=ye((Nsr,s0e)=>{"use strict";var o4=Dr(),pT=ho(),ogt=Yd(),sgt=VU(),o0e=f_();s0e.exports=function(t,r){ogt(t,r,{name:"shapes",handleItemDefaults:ugt})};function lgt(e,t){return e?"bottom":t.indexOf("top")!==-1?"top":t.indexOf("bottom")!==-1?"bottom":"middle"}function ugt(e,t,r){function n(H,te){return o4.coerce(e,t,sgt,H,te)}t._isShape=!0;var i=n("visible");if(i){var a=n("showlegend");a&&(n("legend"),n("legendwidth"),n("legendgroup"),n("legendgrouptitle.text"),o4.coerceFont(n,"legendgrouptitle.font"),n("legendrank"));var o=n("path"),s=o?"path":"rect",l=n("type",s),u=l!=="path";u&&delete t.path,n("editable"),n("layer"),n("opacity"),n("fillcolor"),n("fillrule");var c=n("line.width");c&&(n("line.color"),n("line.dash"));for(var f=n("xsizemode"),h=n("ysizemode"),d=["x","y"],v=0;v<2;v++){var _=d[v],b=_+"anchor",p=_==="x"?f:h,k={_fullLayout:r},E,S,L,x=pT.coerceRef(e,t,k,_,void 0,"paper"),C=pT.getRefType(x);if(C==="range"?(E=pT.getFromId(k,x),E._shapeIndices.push(t._index),L=o0e.rangeToShapePosition(E),S=o0e.shapePositionToRange(E),(E.type==="category"||E.type==="multicategory")&&(n(_+"0shift"),n(_+"1shift"))):S=L=o4.identity,u){var M=.25,g=.75,P=_+"0",T=_+"1",z=e[P],O=e[T];e[P]=S(e[P],!0),e[T]=S(e[T],!0),p==="pixel"?(n(P,0),n(T,10)):(pT.coercePosition(t,k,n,x,P,M),pT.coercePosition(t,k,n,x,T,g)),t[P]=L(t[P]),t[T]=L(t[T]),e[P]=z,e[T]=O}if(p==="pixel"){var V=e[b];e[b]=S(e[b],!0),pT.coercePosition(t,k,n,x,b,.25),t[b]=L(t[b]),e[b]=V}}u&&o4.noneOrAll(e,t,["x0","x1","y0","y1"]);var G=l==="line",Z,j;if(u&&(Z=n("label.texttemplate"),n("label.texttemplatefallback")),Z||(j=n("label.text")),j||Z){n("label.textangle");var N=n("label.textposition",G?"middle":"middle center");n("label.xanchor"),n("label.yanchor",lgt(G,N)),n("label.padding"),o4.coerceFont(n,"label.font",r.font)}}}});var f0e=ye((Usr,c0e)=>{"use strict";var cgt=ka(),u0e=Dr();function fgt(e,t){return e?"bottom":t.indexOf("top")!==-1?"top":t.indexOf("bottom")!==-1?"bottom":"middle"}c0e.exports=function(t,r,n){n("newshape.visible"),n("newshape.name"),n("newshape.showlegend"),n("newshape.legend"),n("newshape.legendwidth"),n("newshape.legendgroup"),n("newshape.legendgrouptitle.text"),u0e.coerceFont(n,"newshape.legendgrouptitle.font"),n("newshape.legendrank"),n("newshape.drawdirection"),n("newshape.layer"),n("newshape.fillcolor"),n("newshape.fillrule"),n("newshape.opacity");var i=n("newshape.line.width");if(i){var a=(t||{}).plot_bgcolor||"#FFF";n("newshape.line.color",cgt.contrast(a)),n("newshape.line.dash")}var o=t.dragmode==="drawline",s=n("newshape.label.text"),l=n("newshape.label.texttemplate");if(n("newshape.label.texttemplatefallback"),s||l){n("newshape.label.textangle");var u=n("newshape.label.textposition",o?"middle":"middle center");n("newshape.label.xanchor"),n("newshape.label.yanchor",fgt(o,u)),n("newshape.label.padding"),u0e.coerceFont(n,"newshape.label.font",r.font)}n("activeshape.fillcolor"),n("activeshape.opacity")}});var g0e=ye((Vsr,p0e)=>{"use strict";var GU=Dr(),gT=ho(),mT=gM(),d0e=f_();p0e.exports=function(t){var r=t._fullLayout,n=GU.filterVisible(r.shapes);if(!(!n.length||!t._fullData.length))for(var i=0;i<n.length;i++){var a=n[i];a._extremes={};var o,s,l=gT.getRefType(a.xref),u=gT.getRefType(a.yref);a.xref!=="paper"&&l!=="domain"&&(o=gT.getFromId(t,a.xref),s=h0e(o,a,mT.paramIsX),s&&(a._extremes[o._id]=gT.findExtremes(o,s,hgt(a)))),a.yref!=="paper"&&u!=="domain"&&(o=gT.getFromId(t,a.yref),s=h0e(o,a,mT.paramIsY),s&&(a._extremes[o._id]=gT.findExtremes(o,s,dgt(a))))}};function hgt(e){return v0e(e.line.width,e.xsizemode,e.x0,e.x1,e.path,!1)}function dgt(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?mT.paramIsY:mT.paramIsX):[r,n],u=GU.aggNums(Math.max,null,l),c=GU.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(mT.segmentRE),v,_,b,p,k;for(e.type==="date"&&(u=d0e.decodeDate(u)),v=0;v<d.length;v++)_=d[v],b=r[_.charAt(0)].drawn,b!==void 0&&(p=d[v].slice(1).match(mT.paramRE),!(!p||p.length<b)&&(k=u(p[b]),k<f&&(f=k),k>h&&(h=k)));if(h>=f)return[f,h]}}});var _0e=ye((Gsr,y0e)=>{"use strict";var m0e=lP();y0e.exports={moduleType:"component",name:"shapes",layoutAttributes:VU(),supplyLayoutDefaults:l0e(),supplyDrawNewShapeDefaults:f0e(),includeBasePlot:qM()("shapes"),calcAutorange:g0e(),draw:m0e.draw,drawOne:m0e.drawOne}});var HU=ye((jsr,b0e)=>{"use strict";var x0e=hd(),vgt=vl().templatedArray,Hsr=OM();b0e.exports=vgt("image",{visible:{valType:"boolean",dflt:!0,editType:"arraydraw"},source:{valType:"string",editType:"arraydraw"},layer:{valType:"enumerated",values:["below","above"],dflt:"above",editType:"arraydraw"},sizex:{valType:"number",dflt:0,editType:"arraydraw"},sizey:{valType:"number",dflt:0,editType:"arraydraw"},sizing:{valType:"enumerated",values:["fill","contain","stretch"],dflt:"contain",editType:"arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},x:{valType:"any",dflt:0,editType:"arraydraw"},y:{valType:"any",dflt:0,editType:"arraydraw"},xanchor:{valType:"enumerated",values:["left","center","right"],dflt:"left",editType:"arraydraw"},yanchor:{valType:"enumerated",values:["top","middle","bottom"],dflt:"top",editType:"arraydraw"},xref:{valType:"enumerated",values:["paper",x0e.idRegex.x.toString()],dflt:"paper",editType:"arraydraw"},yref:{valType:"enumerated",values:["paper",x0e.idRegex.y.toString()],dflt:"paper",editType:"arraydraw"},editType:"arraydraw"})});var T0e=ye((Wsr,w0e)=>{"use strict";var pgt=Dr(),jU=ho(),ggt=Yd(),mgt=HU(),ygt="images";w0e.exports=function(t,r){var n={name:ygt,handleItemDefaults:_gt};ggt(t,r,n)};function _gt(e,t,r){function n(h,d){return pgt.coerce(e,t,mgt,h,d)}var i=n("source"),a=n("visible",!!i);if(!a)return t;n("layer"),n("xanchor"),n("yanchor"),n("sizex"),n("sizey"),n("sizing"),n("opacity");for(var o={_fullLayout:r},s=["x","y"],l=0;l<2;l++){var u=s[l],c=jU.coerceRef(e,t,o,u,"paper",void 0);if(c!=="paper"){var f=jU.getFromId(o,c);f._imgIndices.push(t._index)}jU.coercePosition(t,o,n,c,u,0)}return t}});var E0e=ye((Xsr,M0e)=>{"use strict";var A0e=Oa(),xgt=So(),yT=ho(),S0e=hf(),bgt=Wp();M0e.exports=function(t){var r=t._fullLayout,n=[],i={},a=[],o,s;for(s=0;s<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(S){var L=A0e.select(this);if(this._imgSrc!==S.source)if(L.attr("xmlns",bgt.svg),!t._context.staticPlot||S.source&&S.source.slice(0,5)==="data:")L.attr("xlink:href",S.source),this._imgSrc=S.source;else{var x=new Promise(function(C){var M=new Image;this.img=M,M.setAttribute("crossOrigin","anonymous"),M.onerror=g,M.onload=function(){var P=document.createElement("canvas");P.width=this.width,P.height=this.height;var T=P.getContext("2d",{willReadFrequently:!0});T.drawImage(this,0,0);var z=P.toDataURL("image/png");L.attr("xlink:href",z),C()},L.on("error",g),M.src=S.source,this._imgSrc=S.source;function g(){L.remove(),C()}}.bind(this));t._promises.push(x)}}function h(S){var L=A0e.select(this),x=yT.getFromId(t,S.xref),C=yT.getFromId(t,S.yref),M=yT.getRefType(S.xref)==="domain",g=yT.getRefType(S.yref)==="domain",P=r._size,T,z;x!==void 0?T=typeof S.xref=="string"&&M?x._length*S.sizex:Math.abs(x.l2p(S.sizex)-x.l2p(0)):T=S.sizex*P.w,C!==void 0?z=typeof S.yref=="string"&&g?C._length*S.sizey:Math.abs(C.l2p(S.sizey)-C.l2p(0)):z=S.sizey*P.h;var O=T*c.x[S.xanchor].offset,V=z*c.y[S.yanchor].offset,G=c.x[S.xanchor].sizing+c.y[S.yanchor].sizing,Z,j;switch(x!==void 0?Z=typeof S.xref=="string"&&M?x._length*S.x+x._offset:x.r2p(S.x)+x._offset:Z=S.x*P.w+P.l,Z+=O,C!==void 0?j=typeof S.yref=="string"&&g?C._length*(1-S.y)+C._offset:C.r2p(S.y)+C._offset:j=P.h-S.y*P.h+P.t,j+=V,S.sizing){case"fill":G+=" slice";break;case"stretch":G="none";break}L.attr({x:Z,y:j,width:T,height:z,preserveAspectRatio:G,opacity:S.opacity});var N=x&&yT.getRefType(S.xref)!=="domain"?x._id:"",H=C&&yT.getRefType(S.yref)!=="domain"?C._id:"",te=N+H;xgt.setClipUrl(L,te?"clip"+r._uid+te:null,t)}function d(S){return[S.xref,S.x,S.sizex,S.yref,S.y,S.sizey].join("_")}function v(S,L){return S._index-L._index}var _=r._imageLowerLayer.selectAll("image").data(a,d),b=r._imageUpperLayer.selectAll("image").data(n,d);_.enter().append("image"),b.enter().append("image"),_.exit().remove(),b.exit().remove(),_.each(function(S){f.bind(this)(S),h.bind(this)(S)}),b.each(function(S){f.bind(this)(S),h.bind(this)(S)}),_.sort(v),b.sort(v);var p=Object.keys(r._plots);for(s=0;s<p.length;s++){o=p[s];var k=r._plots[o];if(k.imagelayer){var E=k.imagelayer.selectAll("image").data(i[o]||[],d);E.enter().append("image"),E.exit().remove(),E.each(function(S){f.bind(this)(S),h.bind(this)(S)}),E.sort(v)}}}});var L0e=ye((Zsr,C0e)=>{"use strict";var k0e=Eo(),wgt=m6();C0e.exports=function(t,r,n,i){r=r||{};var a=n==="log"&&r.type==="linear",o=n==="linear"&&r.type==="log";if(a||o){for(var s=t._fullLayout.images,l=r._id.charAt(0),u,c,f=0;f<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,_=null;if(a){v=wgt(h,r.range);var b=d/Math.pow(10,v)/2;_=2*Math.log(b+Math.sqrt(1+b*b))/Math.LN10}else v=Math.pow(10,h),_=v*(Math.pow(10,d/2)-Math.pow(10,-d/2));k0e(v)?k0e(_)||(_=null):(v=null,_=null),i(c+l,v),i(c+"size"+l,_)}}}});var I0e=ye((Ysr,P0e)=>{"use strict";P0e.exports={moduleType:"component",name:"images",layoutAttributes:HU(),supplyLayoutDefaults:T0e(),includeBasePlot:qM()("images"),draw:E0e(),convertCoords:L0e()}});var _I=ye((Ksr,R0e)=>{"use strict";R0e.exports={name:"updatemenus",containerClassName:"updatemenu-container",headerGroupClassName:"updatemenu-header-group",headerClassName:"updatemenu-header",headerArrowClassName:"updatemenu-header-arrow",dropdownButtonGroupClassName:"updatemenu-dropdown-button-group",dropdownButtonClassName:"updatemenu-dropdown-button",buttonClassName:"updatemenu-button",itemRectClassName:"updatemenu-item-rect",itemTextClassName:"updatemenu-item-text",menuIndexAttrName:"updatemenu-active-index",autoMarginIdRoot:"updatemenu-",blankHeaderOpts:{label:" "},minWidth:30,minHeight:30,textPadX:24,arrowPadX:16,rx:2,ry:2,textOffsetX:12,textOffsetY:3,arrowOffsetX:4,gapButtonHeader:5,gapButton:2,activeColor:"#F4FAFF",hoverColor:"#F4FAFF",arrowSymbol:{left:"\u25C4",right:"\u25BA",up:"\u25B2",down:"\u25BC"}}});var WU=ye((Jsr,F0e)=>{"use strict";var Tgt=ec(),Agt=Lh(),Sgt=Ao().extendFlat,Mgt=mc().overrideAll,Egt=E6(),D0e=vl().templatedArray,kgt=D0e("button",{visible:{valType:"boolean"},method:{valType:"enumerated",values:["restyle","relayout","animate","update","skip"],dflt:"restyle"},args:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},args2:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},label:{valType:"string",dflt:""},execute:{valType:"boolean",dflt:!0}});F0e.exports=Mgt(D0e("updatemenu",{_arrayAttrRegexps:[/^updatemenus\[(0|[1-9][0-9]+)\]\.buttons/],visible:{valType:"boolean"},type:{valType:"enumerated",values:["dropdown","buttons"],dflt:"dropdown"},direction:{valType:"enumerated",values:["left","right","up","down"],dflt:"down"},active:{valType:"integer",min:-1,dflt:0},showactive:{valType:"boolean",dflt:!0},buttons:kgt,x:{valType:"number",min:-2,max:3,dflt:-.05},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"right"},y:{valType:"number",min:-2,max:3,dflt:1},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"top"},pad:Sgt(Egt({editType:"arraydraw"}),{}),font:Tgt({}),bgcolor:{valType:"color"},bordercolor:{valType:"color",dflt:Agt.borderLine},borderwidth:{valType:"number",min:0,dflt:1,editType:"arraydraw"}}),"arraydraw","from-root")});var B0e=ye(($sr,q0e)=>{"use strict";var xI=Dr(),z0e=Yd(),O0e=WU(),Cgt=_I(),Lgt=Cgt.name,Pgt=O0e.buttons;q0e.exports=function(t,r){var n={name:Lgt,handleItemDefaults:Igt};z0e(t,r,n)};function Igt(e,t,r){function n(o,s){return xI.coerce(e,t,O0e,o,s)}var i=z0e(e,t,{name:"buttons",handleItemDefaults:Rgt}),a=n("visible",i.length>0);a&&(n("active"),n("direction"),n("type"),n("showactive"),n("x"),n("y"),xI.noneOrAll(e,t,["x","y"]),n("xanchor"),n("yanchor"),n("pad.t"),n("pad.r"),n("pad.b"),n("pad.l"),xI.coerceFont(n,"font",r.font),n("bgcolor",r.paper_bgcolor),n("bordercolor"),n("borderwidth"))}function Rgt(e,t){function r(i,a){return xI.coerce(e,t,Pgt,i,a)}var n=r("visible",e.method==="skip"||Array.isArray(e.args));n&&(r("method"),r("args"),r("args2"),r("label"),r("execute"))}});var V0e=ye((Qsr,U0e)=>{"use strict";U0e.exports=Mf;var qg=Oa(),N0e=ka(),_T=So(),bI=Dr();function Mf(e,t,r){this.gd=e,this.container=t,this.id=r,this.position=null,this.translateX=null,this.translateY=null,this.hbar=null,this.vbar=null,this.bg=this.container.selectAll("rect.scrollbox-bg").data([0]),this.bg.exit().on(".drag",null).on("wheel",null).remove(),this.bg.enter().append("rect").classed("scrollbox-bg",!0).style("pointer-events","all").attr({opacity:0,x:0,y:0,width:0,height:0})}Mf.barWidth=2;Mf.barLength=20;Mf.barRadius=2;Mf.barPad=1;Mf.barColor="#808BA4";Mf.prototype.enable=function(t,r,n){var i=this.gd._fullLayout,a=i.width,o=i.height;this.position=t;var s=this.position.l,l=this.position.w,u=this.position.t,c=this.position.h,f=this.position.direction,h=f==="down",d=f==="left",v=f==="right",_=f==="up",b=l,p=c,k,E,S,L;!h&&!d&&!v&&!_&&(this.position.direction="down",h=!0);var x=h||_;x?(k=s,E=k+b,h?(S=u,L=Math.min(S+p,o),p=L-S):(L=u+p,S=Math.max(L-p,0),p=L-S)):(S=u,L=S+p,d?(E=s+b,k=Math.max(E-b,0),b=E-k):(k=s,E=Math.min(k+b,a),b=E-k)),this._box={l:k,t:S,w:b,h:p};var C=l>b,M=Mf.barLength+2*Mf.barPad,g=Mf.barWidth+2*Mf.barPad,P=s,T=u+c;T+g>o&&(T=o-g);var z=this.container.selectAll("rect.scrollbar-horizontal").data(C?[0]:[]);z.exit().on(".drag",null).remove(),z.enter().append("rect").classed("scrollbar-horizontal",!0).call(N0e.fill,Mf.barColor),C?(this.hbar=z.attr({rx:Mf.barRadius,ry:Mf.barRadius,x:P,y:T,width:M,height:g}),this._hbarXMin=P+M/2,this._hbarTranslateMax=b-M):(delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax);var O=c>p,V=Mf.barWidth+2*Mf.barPad,G=Mf.barLength+2*Mf.barPad,Z=s+l,j=u;Z+V>a&&(Z=a-V);var N=this.container.selectAll("rect.scrollbar-vertical").data(O?[0]:[]);N.exit().on(".drag",null).remove(),N.enter().append("rect").classed("scrollbar-vertical",!0).call(N0e.fill,Mf.barColor),O?(this.vbar=N.attr({rx:Mf.barRadius,ry:Mf.barRadius,x:Z,y:j,width:V,height:G}),this._vbarYMin=j+G/2,this._vbarTranslateMax=p-G):(delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax);var H=this.id,te=k-.5,oe=O?E+V+.5:E+.5,_e=S-.5,Ee=C?L+g+.5:L+.5,Ce=i._topdefs.selectAll("#"+H).data(C||O?[0]:[]);if(Ce.exit().remove(),Ce.enter().append("clipPath").attr("id",H).append("rect"),C||O?(this._clipRect=Ce.select("rect").attr({x:Math.floor(te),y:Math.floor(_e),width:Math.ceil(oe)-Math.floor(te),height:Math.ceil(Ee)-Math.floor(_e)}),this.container.call(_T.setClipUrl,H,this.gd),this.bg.attr({x:s,y:u,width:l,height:c})):(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(_T.setClipUrl,null),delete this._clipRect),C||O){var me=qg.behavior.drag().on("dragstart",function(){qg.event.sourceEvent.preventDefault()}).on("drag",this._onBoxDrag.bind(this));this.container.on("wheel",null).on("wheel",this._onBoxWheel.bind(this)).on(".drag",null).call(me);var ie=qg.behavior.drag().on("dragstart",function(){qg.event.sourceEvent.preventDefault(),qg.event.sourceEvent.stopPropagation()}).on("drag",this._onBarDrag.bind(this));C&&this.hbar.on(".drag",null).call(ie),O&&this.vbar.on(".drag",null).call(ie)}this.setTranslate(r,n)};Mf.prototype.disable=function(){(this.hbar||this.vbar)&&(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(_T.setClipUrl,null),delete this._clipRect),this.hbar&&(this.hbar.on(".drag",null),this.hbar.remove(),delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax),this.vbar&&(this.vbar.on(".drag",null),this.vbar.remove(),delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax)};Mf.prototype._onBoxDrag=function(){var t=this.translateX,r=this.translateY;this.hbar&&(t-=qg.event.dx),this.vbar&&(r-=qg.event.dy),this.setTranslate(t,r)};Mf.prototype._onBoxWheel=function(){var t=this.translateX,r=this.translateY;this.hbar&&(t+=qg.event.deltaY),this.vbar&&(r+=qg.event.deltaY),this.setTranslate(t,r)};Mf.prototype._onBarDrag=function(){var t=this.translateX,r=this.translateY;if(this.hbar){var n=t+this._hbarXMin,i=n+this._hbarTranslateMax,a=bI.constrain(qg.event.x,n,i),o=(a-n)/(i-n),s=this.position.w-this._box.w;t=o*s}if(this.vbar){var l=r+this._vbarYMin,u=l+this._vbarTranslateMax,c=bI.constrain(qg.event.y,l,u),f=(c-l)/(u-l),h=this.position.h-this._box.h;r=f*h}this.setTranslate(t,r)};Mf.prototype.setTranslate=function(t,r){var n=this.position.w-this._box.w,i=this.position.h-this._box.h;if(t=bI.constrain(t||0,0,n),r=bI.constrain(r||0,0,i),this.translateX=t,this.translateY=r,this.container.call(_T.setTranslate,this._box.l-this.position.l-t,this._box.t-this.position.t-r),this._clipRect&&this._clipRect.attr({x:Math.floor(this.position.l+t-.5),y:Math.floor(this.position.t+r-.5)}),this.hbar){var a=t/n;this.hbar.call(_T.setTranslate,t+a*this._hbarTranslateMax,r)}if(this.vbar){var o=r/i;this.vbar.call(_T.setTranslate,t,r+o*this._vbarTranslateMax)}}});var $0e=ye((elr,J0e)=>{"use strict";var xT=Oa(),s4=Mc(),l4=ka(),bT=So(),e0=Dr(),wI=ru(),Dgt=vl().arrayEditor,H0e=$h().LINE_SPACING,es=_I(),Fgt=V0e();J0e.exports=function(t){var r=t._fullLayout,n=e0.filterVisible(r[es.name]);function i(h){s4.autoMargin(t,Y0e(h))}var a=r._menulayer.selectAll("g."+es.containerClassName).data(n.length>0?[0]:[]);if(a.enter().append("g").classed(es.containerClassName,!0).style("cursor","pointer"),a.exit().each(function(){xT.select(this).selectAll("g."+es.headerGroupClassName).each(i)}).remove(),n.length!==0){var o=a.selectAll("g."+es.headerGroupClassName).data(n,zgt);o.enter().append("g").classed(es.headerGroupClassName,!0);for(var s=e0.ensureSingle(a,"g",es.dropdownButtonGroupClassName,function(h){h.style("pointer-events","all")}),l=0;l<n.length;l++){var u=n[l];Vgt(t,u)}var c="updatemenus"+r._uid,f=new Fgt(t,s,c);o.enter().size()&&(s.node().parentNode.appendChild(s.node()),s.call(ZU)),o.exit().each(function(h){s.call(ZU),i(h)}).remove(),o.each(function(h){var d=xT.select(this),v=h.type==="dropdown"?s:null;s4.manageCommandObserver(t,h,h.buttons,function(_){XU(t,h,h.buttons[_.index],d,v,f,_.index,!0)}),h.type==="dropdown"?(W0e(t,d,s,f,h),j0e(s,h)&&u4(t,d,s,f,h)):u4(t,d,null,null,h)})}};function zgt(e){return e._index}function Ogt(e){return+e.attr(es.menuIndexAttrName)==-1}function j0e(e,t){return+e.attr(es.menuIndexAttrName)===t._index}function XU(e,t,r,n,i,a,o,s){t.active=o,Dgt(e.layout,es.name,t).applyUpdate("active",o),t.type==="buttons"?u4(e,n,null,null,t):t.type==="dropdown"&&(i.attr(es.menuIndexAttrName,"-1"),W0e(e,n,i,a,t),s||u4(e,n,i,a,t))}function W0e(e,t,r,n,i){var a=e0.ensureSingle(t,"g",es.headerClassName,function(h){h.style("pointer-events","all")}),o=i._dims,s=i.active,l=i.buttons[s]||es.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(YU,i,l,e).call(K0e,i,u,c);var f=e0.ensureSingle(t,"text",es.headerArrowClassName,function(h){h.attr("text-anchor","end").call(bT.font,i.font).text(es.arrowSymbol[i.direction])});f.attr({x:o.headerWidth-es.arrowOffsetX+i.pad.l,y:o.headerHeight/2+es.textOffsetY+i.pad.t}),a.on("click",function(){r.call(ZU,String(j0e(r,i)?-1:i._index)),u4(e,t,r,n,i)}),a.on("mouseover",function(){a.call(X0e)}),a.on("mouseout",function(){a.call(Z0e,i)}),bT.setTranslate(t,o.lx,o.ly)}function u4(e,t,r,n,i){r||(r=t,r.attr("pointer-events","all"));var a=!Ogt(r)||i.type==="buttons"?i.buttons:[],o=i.type==="dropdown"?es.dropdownButtonClassName:es.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+es.gapButtonHeader:c=h.headerWidth+es.gapButtonHeader),i.type==="dropdown"&&i.direction==="up"&&(f=-es.gapButtonHeader+es.gapButton-h.openHeight),i.type==="dropdown"&&i.direction==="left"&&(c=-es.gapButtonHeader+es.gapButton-h.openWidth);var v={x:h.lx+c+i.pad.l,y:h.ly+f+i.pad.t,yPad:es.gapButton,xPad:es.gapButton,index:0},_={l:v.x+i.borderwidth,t:v.y+i.borderwidth};s.each(function(b,p){var k=xT.select(this);k.call(YU,i,b,e).call(K0e,i,v),k.on("click",function(){xT.event.defaultPrevented||(b.execute&&(b.args2&&i.active===p?(XU(e,i,b,t,r,n,-1),s4.executeAPICommand(e,b.method,b.args2)):(XU(e,i,b,t,r,n,p),s4.executeAPICommand(e,b.method,b.args))),e.emit("plotly_buttonclicked",{menu:i,button:b,active:i.active}))}),k.on("mouseover",function(){k.call(X0e)}),k.on("mouseout",function(){k.call(Z0e,i),s.call(G0e,i)})}),s.call(G0e,i),d?(_.w=Math.max(h.openWidth,h.headerWidth),_.h=v.y-_.t):(_.w=v.x-_.l,_.h=Math.max(h.openHeight,h.headerHeight)),_.direction=i.direction,n&&(s.size()?qgt(e,t,r,n,i,_):Bgt(n))}function qgt(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]+es.gapButton;else for(c=0,h=0;h<u;h++)c+=l.widths[h]+es.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 Bgt(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 YU(e,t,r,n){e.call(Ngt,t).call(Ugt,t,r,n)}function Ngt(e,t){var r=e0.ensureSingle(e,"rect",es.itemRectClassName,function(n){n.attr({rx:es.rx,ry:es.ry,"shape-rendering":"crispEdges"})});r.call(l4.stroke,t.bordercolor).call(l4.fill,t.bgcolor).style("stroke-width",t.borderwidth+"px")}function Ugt(e,t,r,n){var i=e0.ensureSingle(e,"text",es.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(bT.font,t.font).text(a).call(wI.convertToTspans,n)}function G0e(e,t){var r=t.active;e.each(function(n,i){var a=xT.select(this);i===r&&t.showactive&&a.select("rect."+es.itemRectClassName).call(l4.fill,es.activeColor)})}function X0e(e){e.select("rect."+es.itemRectClassName).call(l4.fill,es.hoverColor)}function Z0e(e,t){e.select("rect."+es.itemRectClassName).call(l4.fill,t.bgcolor)}function Vgt(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=bT.tester.selectAll("g."+es.dropdownButtonClassName).data(e0.filterVisible(t.buttons));n.enter().append("g").classed(es.dropdownButtonClassName,!0);var i=["up","down"].indexOf(t.direction)!==-1;n.each(function(c,f){var h=xT.select(this);h.call(YU,t,c,e);var d=h.select("."+es.itemTextClassName),v=d.node()&&bT.bBox(d.node()).width,_=Math.max(v+es.textPadX,es.minWidth),b=t.font.size*H0e,p=wI.lineCount(d),k=Math.max(b*p,es.minHeight)+es.textOffsetY;k=Math.ceil(k),_=Math.ceil(_),r.widths[f]=_,r.heights[f]=k,r.height1=Math.max(r.height1,k),r.width1=Math.max(r.width1,_),i?(r.totalWidth=Math.max(r.totalWidth,_),r.openWidth=r.totalWidth,r.totalHeight+=k+es.gapButton,r.openHeight+=k+es.gapButton):(r.totalWidth+=_+es.gapButton,r.openWidth+=_+es.gapButton,r.totalHeight=Math.max(r.totalHeight,k),r.openHeight=r.totalHeight)}),i?r.totalHeight-=es.gapButton:r.totalWidth-=es.gapButton,r.headerWidth=r.width1+es.arrowPadX,r.headerHeight=r.height1,t.type==="dropdown"&&(i?(r.width1+=es.arrowPadX,r.totalHeight=r.height1):r.totalWidth=r.width1,r.totalWidth+=es.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),s4.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 es.autoMarginIdRoot+e._index}function K0e(e,t,r,n){n=n||{};var i=e.select("."+es.itemRectClassName),a=e.select("."+es.itemTextClassName),o=t.borderwidth,s=r.index,l=t._dims;bT.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=wI.lineCount(a),d=(h-1)*f/2;wI.positionText(a,es.textOffsetX,c/2-d+es.textOffsetY),u?r.y+=l.heights[s]+r.yPad:r.x+=l.widths[s]+r.xPad,r.index++}function ZU(e,t){e.attr(es.menuIndexAttrName,t||"-1").selectAll("g."+es.dropdownButtonClassName).remove()}});var ege=ye((tlr,Q0e)=>{"use strict";var Ggt=_I();Q0e.exports={moduleType:"component",name:Ggt.name,layoutAttributes:WU(),supplyLayoutDefaults:B0e(),draw:$0e()}});var c4=ye((rlr,tge)=>{"use strict";tge.exports={name:"sliders",containerClassName:"slider-container",groupClassName:"slider-group",inputAreaClass:"slider-input-area",railRectClass:"slider-rail-rect",railTouchRectClass:"slider-rail-touch-rect",gripRectClass:"slider-grip-rect",tickRectClass:"slider-tick-rect",inputProxyClass:"slider-input-proxy",labelsClass:"slider-labels",labelGroupClass:"slider-label-group",labelClass:"slider-label",currentValueClass:"slider-current-value",railHeight:5,menuIndexAttrName:"slider-active-index",autoMarginIdRoot:"slider-",minWidth:30,minHeight:30,textPadX:40,arrowOffsetX:4,railRadius:2,railWidth:5,railBorder:4,railBorderWidth:1,railBorderColor:"#bec8d9",railBgColor:"#f8fafc",railInset:8,stepInset:10,gripRadius:10,gripWidth:20,gripHeight:20,gripBorder:20,gripBorderWidth:1,gripBorderColor:"#bec8d9",gripBgColor:"#f6f8fa",gripBgActiveColor:"#dbdde0",labelPadding:8,labelOffset:0,tickWidth:1,tickColor:"#333",tickOffset:25,tickLength:7,minorTickOffset:25,minorTickColor:"#333",minorTickLength:4,currentValuePadding:8,currentValueInset:0}});var KU=ye((ilr,nge)=>{"use strict";var rge=ec(),Hgt=E6(),jgt=Ao().extendDeepAll,Wgt=mc().overrideAll,Xgt=US(),ige=vl().templatedArray,$b=c4(),Zgt=ige("step",{visible:{valType:"boolean",dflt:!0},method:{valType:"enumerated",values:["restyle","relayout","animate","update","skip"],dflt:"restyle"},args:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},label:{valType:"string"},value:{valType:"string"},execute:{valType:"boolean",dflt:!0}});nge.exports=Wgt(ige("slider",{visible:{valType:"boolean",dflt:!0},active:{valType:"number",min:0,dflt:0},steps:Zgt,lenmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"fraction"},len:{valType:"number",min:0,dflt:1},x:{valType:"number",min:-2,max:3,dflt:0},pad:jgt(Hgt({editType:"arraydraw"}),{},{t:{dflt:20}}),xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left"},y:{valType:"number",min:-2,max:3,dflt:0},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"top"},transition:{duration:{valType:"number",min:0,dflt:150},easing:{valType:"enumerated",values:Xgt.transition.easing.values,dflt:"cubic-in-out"}},currentvalue:{visible:{valType:"boolean",dflt:!0},xanchor:{valType:"enumerated",values:["left","center","right"],dflt:"left"},offset:{valType:"number",dflt:10},prefix:{valType:"string"},suffix:{valType:"string"},font:rge({})},font:rge({}),activebgcolor:{valType:"color",dflt:$b.gripBgActiveColor},bgcolor:{valType:"color",dflt:$b.railBgColor},bordercolor:{valType:"color",dflt:$b.railBorderColor},borderwidth:{valType:"number",min:0,dflt:$b.railBorderWidth},ticklen:{valType:"number",min:0,dflt:$b.tickLength},tickcolor:{valType:"color",dflt:$b.tickColor},tickwidth:{valType:"number",min:0,dflt:1},minorticklen:{valType:"number",min:0,dflt:$b.minorTickLength}}),"arraydraw","from-root")});var lge=ye((nlr,sge)=>{"use strict";var wT=Dr(),age=Yd(),oge=KU(),Ygt=c4(),Kgt=Ygt.name,Jgt=oge.steps;sge.exports=function(t,r){age(t,r,{name:Kgt,handleItemDefaults:$gt})};function $gt(e,t,r){function n(f,h){return wT.coerce(e,t,oge,f,h)}for(var i=age(e,t,{name:"steps",handleItemDefaults:Qgt}),a=0,o=0;o<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=wT.filterVisible(i),u=n("active");(i[u]||{}).visible||(t.active=l[0]._index),n("x"),n("y"),wT.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"),wT.coerceFont(n,"font",r.font);var c=n("currentvalue.visible");c&&(n("currentvalue.xanchor"),n("currentvalue.prefix"),n("currentvalue.suffix"),n("currentvalue.offset"),wT.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 Qgt(e,t){function r(a,o){return wT.coerce(e,t,Jgt,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((alr,mge)=>{"use strict";var Bg=Oa(),TI=Mc(),__=ka(),Ng=So(),t0=Dr(),emt=t0.strTranslate,f4=ru(),tmt=vl().arrayEditor,Rs=c4(),QU=$h(),fge=QU.LINE_SPACING,JU=QU.FROM_TL,$U=QU.FROM_BR;mge.exports=function(t){var r=t._context.staticPlot,n=t._fullLayout,i=rmt(n,t),a=n._infolayer.selectAll("g."+Rs.containerClassName).data(i.length>0?[0]:[]);a.enter().append("g").classed(Rs.containerClassName,!0).style("cursor",r?null:"ew-resize");function o(c){c._commandObserver&&(c._commandObserver.remove(),delete c._commandObserver),TI.autoMargin(t,hge(c))}if(a.exit().each(function(){Bg.select(this).selectAll("g."+Rs.groupClassName).each(o)}).remove(),i.length!==0){var s=a.selectAll("g."+Rs.groupClassName).data(i,imt);s.enter().append("g").classed(Rs.groupClassName,!0),s.exit().each(o).remove();for(var l=0;l<i.length;l++){var u=i[l];nmt(t,u)}s.each(function(c){var f=Bg.select(this);umt(c),TI.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))}),amt(t,Bg.select(this),c)})}};function hge(e){return Rs.autoMarginIdRoot+e._index}function rmt(e,t){for(var r=e[Rs.name],n=[],i=0;i<r.length;i++){var a=r[i];a.visible&&(a._gd=t,n.push(a))}return n}function imt(e){return e._index}function nmt(e,t){var r=Ng.tester.selectAll("g."+Rs.labelGroupClass).data(t._visibleSteps);r.enter().append("g").classed(Rs.labelGroupClass,!0);var n=0,i=0;r.each(function(v){var _=Bg.select(this),b=dge(_,{step:v},t),p=b.node();if(p){var k=Ng.bBox(p);i=Math.max(i,k.height),n=Math.max(n,k.width)}}),r.remove();var a=t._dims={};a.inputAreaWidth=Math.max(Rs.railWidth,Rs.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*Rs.stepInset,l=s/(t._stepCount-1),u=n+Rs.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=Ng.tester.append("g");r.each(function(v){var _=AI(c,t,v.label),b=_.node()&&Ng.bBox(_.node())||{width:0,height:0},p=f4.lineCount(_);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+Rs.tickOffset+t.ticklen+Rs.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*$U[h],t:a.height*JU[h]};t.lenmode==="fraction"?(d.l=0,d.xl=t.x-t.len*JU[f],d.r=0,d.xr=t.x+t.len*$U[f]):(d.x=t.x,d.l=a.outerLength*JU[f],d.r=a.outerLength*$U[f]),TI.autoMargin(e,hge(t),d)}function amt(e,t,r){(r.steps[r.active]||{}).visible||(r.active=r._visibleSteps[0]._index),t.call(AI,r).call(fmt,r).call(smt,r).call(lmt,r).call(cmt,e,r).call(omt,e,r);var n=r._dims;Ng.setTranslate(t,n.lx+r.pad.l,n.ly+r.pad.t),t.call(gge,r,!1),t.call(AI,r)}function AI(e,t,r){if(t.currentvalue.visible){var n=t._dims,i,a;switch(t.currentvalue.xanchor){case"right":i=n.inputAreaLength-Rs.currentValueInset-n.currentValueMaxWidth,a="left";break;case"center":i=n.inputAreaLength*.5,a="middle";break;default:i=Rs.currentValueInset,a="left"}var o=t0.ensureSingle(e,"text",Rs.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(Ng.font,t.currentvalue.font).text(s).call(f4.convertToTspans,t._gd);var c=f4.lineCount(o),f=(n.currentValueMaxLines+1-c)*t.currentvalue.font.size*fge;return f4.positionText(o,i,f),o}}function omt(e,t,r){var n=t0.ensureSingle(e,"rect",Rs.gripRectClass,function(i){i.call(pge,t,e,r).style("pointer-events","all")});n.attr({width:Rs.gripWidth,height:Rs.gripHeight,rx:Rs.gripRadius,ry:Rs.gripRadius}).call(__.stroke,r.bordercolor).call(__.fill,r.bgcolor).style("stroke-width",r.borderwidth+"px")}function dge(e,t,r){var n=t0.ensureSingle(e,"text",Rs.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(Ng.font,r.font).text(i).call(f4.convertToTspans,r._gd),n}function smt(e,t){var r=t0.ensureSingle(e,"g",Rs.labelsClass),n=t._dims,i=r.selectAll("g."+Rs.labelGroupClass).data(n.labelSteps);i.enter().append("g").classed(Rs.labelGroupClass,!0),i.exit().remove(),i.each(function(a){var o=Bg.select(this);o.call(dge,a,t),Ng.setTranslate(o,eV(t,a.fraction),Rs.tickOffset+t.ticklen+t.font.size*fge+Rs.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,tmt(e.layout,Rs.name,r).applyUpdate("active",n);var s=r.steps[r.active];t.call(gge,r,a),t.call(AI,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&&TI.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=Bg.select(t);function a(){return r.data()[0]}function o(){var s=a();t.emit("plotly_sliderstart",{slider:s});var l=r.select("."+Rs.gripRectClass);Bg.event.stopPropagation(),Bg.event.preventDefault(),l.call(__.fill,s.activebgcolor);var u=cge(s,Bg.mouse(n)[0]);uge(t,r,s,u,!0),s._dragging=!0;function c(){var h=a(),d=cge(h,Bg.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(__.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 lmt(e,t){var r=e.selectAll("rect."+Rs.tickRectClass).data(t._visibleSteps),n=t._dims;r.enter().append("rect").classed(Rs.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=Bg.select(this);s.attr({height:o?t.ticklen:t.minorticklen}).call(__.fill,t.tickcolor),Ng.setTranslate(s,eV(t,a/(t._stepCount-1))-.5*t.tickwidth,(o?Rs.tickOffset:Rs.minorTickOffset)+n.currentValueTotalHeight)})}function umt(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."+Rs.gripRectClass),i=0,a=0;a<t._stepCount;a++)if(t._visibleSteps[a]._index===t.active){i=a;break}var o=eV(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",emt(o-Rs.gripWidth*.5,t._dims.currentValueTotalHeight))}}function eV(e,t){var r=e._dims;return r.inputAreaStart+Rs.stepInset+(r.inputAreaLength-2*Rs.stepInset)*Math.min(1,Math.max(0,t))}function cge(e,t){var r=e._dims;return Math.min(1,Math.max(0,(t-Rs.stepInset-r.inputAreaStart)/(r.inputAreaLength-2*Rs.stepInset-2*r.inputAreaStart)))}function cmt(e,t,r){var n=r._dims,i=t0.ensureSingle(e,"rect",Rs.railTouchRectClass,function(a){a.call(pge,t,e,r).style("pointer-events","all")});i.attr({width:n.inputAreaLength,height:Math.max(n.inputAreaWidth,Rs.tickOffset+r.ticklen+n.labelHeight)}).call(__.fill,r.bgcolor).attr("opacity",0),Ng.setTranslate(i,0,n.currentValueTotalHeight)}function fmt(e,t){var r=t._dims,n=r.inputAreaLength-Rs.railInset*2,i=t0.ensureSingle(e,"rect",Rs.railRectClass);i.attr({width:n,height:Rs.railWidth,rx:Rs.railRadius,ry:Rs.railRadius,"shape-rendering":"crispEdges"}).call(__.stroke,t.bordercolor).call(__.fill,t.bgcolor).style("stroke-width",t.borderwidth+"px"),Ng.setTranslate(i,Rs.railInset,(r.inputAreaWidth-Rs.railWidth)*.5+r.currentValueTotalHeight)}});var xge=ye((olr,_ge)=>{"use strict";var hmt=c4();_ge.exports={moduleType:"component",name:hmt.name,layoutAttributes:KU(),supplyLayoutDefaults:lge(),draw:yge()}});var SI=ye((slr,wge)=>{"use strict";var bge=Lh();wge.exports={bgcolor:{valType:"color",dflt:bge.background,editType:"plot"},bordercolor:{valType:"color",dflt:bge.defaultLine,editType:"plot"},borderwidth:{valType:"integer",dflt:0,min:0,editType:"plot"},autorange:{valType:"boolean",dflt:!0,editType:"calc",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},range:{valType:"info_array",items:[{valType:"any",editType:"calc",impliedEdits:{"^autorange":!1}},{valType:"any",editType:"calc",impliedEdits:{"^autorange":!1}}],editType:"calc",impliedEdits:{autorange:!1}},thickness:{valType:"number",dflt:.15,min:0,max:1,editType:"plot"},visible:{valType:"boolean",dflt:!0,editType:"calc"},editType:"calc"}});var tV=ye((llr,Tge)=>{"use strict";Tge.exports={_isSubplotObj:!0,rangemode:{valType:"enumerated",values:["auto","fixed","match"],dflt:"match",editType:"calc"},range:{valType:"info_array",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},editType:"calc"}});var MI=ye((ulr,Age)=>{"use strict";Age.exports={name:"rangeslider",containerClassName:"rangeslider-container",bgClassName:"rangeslider-bg",rangePlotClassName:"rangeslider-rangeplot",maskMinClassName:"rangeslider-mask-min",maskMaxClassName:"rangeslider-mask-max",slideBoxClassName:"rangeslider-slidebox",grabberMinClassName:"rangeslider-grabber-min",grabAreaMinClassName:"rangeslider-grabarea-min",handleMinClassName:"rangeslider-handle-min",grabberMaxClassName:"rangeslider-grabber-max",grabAreaMaxClassName:"rangeslider-grabarea-max",handleMaxClassName:"rangeslider-handle-max",maskMinOppAxisClassName:"rangeslider-mask-min-opp-axis",maskMaxOppAxisClassName:"rangeslider-mask-max-opp-axis",maskColor:"rgba(0,0,0,0.4)",maskOppAxisColor:"rgba(0,0,0,0.2)",slideBoxFill:"transparent",slideBoxCursor:"ew-resize",grabAreaFill:"transparent",grabAreaCursor:"col-resize",grabAreaWidth:10,handleWidth:4,handleRadius:1,handleStrokeWidth:1,extraPad:15}});var Ege=ye(kI=>{"use strict";var dmt=hf(),vmt=ru(),Sge=MI(),pmt=$h().LINE_SPACING,EI=Sge.name;function Mge(e){var t=e&&e[EI];return t&&t.visible}kI.isVisible=Mge;kI.makeData=function(e){for(var t=dmt.list({_fullLayout:e},"x",!0),r=e.margin,n=[],i=0;i<t.length;i++){var a=t[i];if(Mge(a)){n.push(a);var o=a[EI];o._id=EI+a._id,o._height=(e.height-r.b-r.t)*o.thickness,o._offsetShift=Math.floor(o.borderwidth/2)}}e._rangeSliderData=n};kI.autoMarginOpts=function(e,t){var r=e._fullLayout,n=t[EI],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(vmt.BR_TAG_ALL)||[]).length;o+=s*t.title.font.size*pmt}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((flr,Lge)=>{"use strict";var CI=Dr(),kge=vl(),Cge=hf(),gmt=SI(),mmt=tV();Lge.exports=function(t,r,n){var i=t[n],a=r[n];if(!(i.rangeslider||r._requestRangeslider[a._id]))return;CI.isPlainObject(i.rangeslider)||(i.rangeslider={});var o=i.rangeslider,s=kge.newContainer(a,"rangeslider");function l(L,x){return CI.coerce(o,s,gmt,L,x)}var u,c;function f(L,x){return CI.coerce(u,c,mmt,L,x)}var h=l("visible");if(h){l("bgcolor",r.plot_bgcolor),l("bordercolor"),l("borderwidth"),l("thickness"),l("autorange",!a.isValidRange(o.range)),l("range");var d=r._subplots;if(d)for(var v=d.cartesian.filter(function(L){return L.slice(0,Math.max(0,L.indexOf("y")))===Cge.name2id(n)}).map(function(L){return L.slice(L.indexOf("y"),L.length)}),_=CI.simpleMap(v,Cge.id2name),b=0;b<_.length;b++){var p=_[b];u=o[p]||{},c=kge.newContainer(s,p,"yaxis");var k=r[p],E;u.range&&k.isValidRange(u.range)&&(E="fixed");var S=f("rangemode",E);S!=="match"&&f("range",k.range.slice())}s._input=o}}});var Rge=ye((hlr,Ige)=>{"use strict";var ymt=hf().list,_mt=Ag().getAutoRange,xmt=MI();Ige.exports=function(t){for(var r=ymt(t,"x",!0),n=0;n<r.length;n++){var i=r[n],a=i[xmt.name];a&&a.visible&&a.autorange&&(a._input.autorange=!0,a._input.range=a.range=_mt(t,i))}}});var Oge=ye((dlr,zge)=>{"use strict";var LI=Oa(),bmt=qa(),wmt=Mc(),Jf=Dr(),PI=Jf.strTranslate,Fge=So(),x_=ka(),Tmt=Eb(),Amt=ph(),rV=hf(),Smt=yv(),Mmt=Sg(),rl=MI();zge.exports=function(e){for(var t=e._fullLayout,r=t._rangeSliderData,n=0;n<r.length;n++){var i=r[n][rl.name];i._clipId=i._id+"-"+t._uid}function a(s){return s._name}var o=t._infolayer.selectAll("g."+rl.containerClassName).data(r,a);o.exit().each(function(s){var l=s[rl.name];t._topdefs.select("#"+l._clipId).remove()}).remove(),r.length!==0&&(o.enter().append("g").classed(rl.containerClassName,!0).attr("pointer-events","all"),o.each(function(s){var l=LI.select(this),u=s[rl.name],c=t[rV.id2name(s.anchor)],f=u[rV.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 _=t._size,b=s.domain;u._width=_.w*(b[1]-b[0]);var p=Math.round(_.l+_.w*b[0]),k=Math.round(_.t+_.h*(1-s._counterDomainMin)+(s.side==="bottom"?s._depth:0)+u._offsetShift+rl.extraPad);l.attr("transform",PI(p,k)),u._rl=Jf.simpleMap(u.range,s.r2l);var E=u._rl[0],S=u._rl[1],L=S-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 x=s.locateBreaks(E,S);if(x.length){var C,M,g=0;for(C=0;C<x.length;C++)M=x[C],g+=M.max-M.min;var P=u._width/(S-E-g),T=[-P*E];for(C=0;C<x.length;C++)M=x[C],T.push(T[T.length-1]-P*(M.max-M.min));for(u.d2p=function(G){for(var Z=T[0],j=0;j<x.length;j++){var N=x[j];if(G>=N.max)Z=T[j+1];else if(G<N.min)break}return Z+P*G},C=0;C<x.length;C++)M=x[C],M.pmin=u.d2p(M.min),M.pmax=u.d2p(M.max);u.p2d=function(G){for(var Z=T[0],j=0;j<x.length;j++){var N=x[j];if(G>=N.pmax)Z=T[j+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(Lmt,e,s,u).call(Pmt,e,s,u).call(Imt,e,s,u).call(Dmt,e,s,u,f).call(Fmt,e,s,u).call(zmt,e,s,u),Emt(l,e,s,u),Cmt(l,e,s,u,c,f),s.side==="bottom"&&Tmt.draw(e,s._id+"title",{propContainer:s,propName:s._name+".title.text",placeholder:t._dfltTitle.x,attributes:{x:s._offset+s._length/2,y:k+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 Emt(e,t,r,n){if(t._context.staticPlot)return;var i=e.select("rect."+rl.slideBoxClassName).node(),a=e.select("rect."+rl.grabAreaMinClassName).node(),o=e.select("rect."+rl.grabAreaMaxClassName).node();function s(){var l=LI.event,u=l.target,c=Dge(l),f=c-e.node().getBoundingClientRect().left,h=n.d2p(r._rl[0]),d=n.d2p(r._rl[1]),v=Smt.coverSlip();this.addEventListener("touchmove",_),this.addEventListener("touchend",b),v.addEventListener("mousemove",_),v.addEventListener("mouseup",b);function _(p){var k=Dge(p),E=+k-c,S,L,x;switch(u){case i:if(x="ew-resize",h+E>r._length||d+E<0)return;S=h+E,L=d+E;break;case a:if(x="col-resize",h+E>r._length)return;S=h+E,L=d;break;case o:if(x="col-resize",d+E<0)return;S=h,L=d+E;break;default:x="ew-resize",S=f,L=f+E;break}if(L<S){var C=L;L=S,S=C}n._pixelMin=S,n._pixelMax=L,Mmt(LI.select(v),x),kmt(e,t,r,n)}function b(){v.removeEventListener("mousemove",_),v.removeEventListener("mouseup",b),this.removeEventListener("touchmove",_),this.removeEventListener("touchend",b),Jf.removeElement(v)}}e.on("mousedown",s),e.on("touchstart",s)}function kmt(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(){bmt.call("_guiRelayout",t,r._name+".range",[a,o])})}function Cmt(e,t,r,n,i,a){var o=rl.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."+rl.slideBoxClassName).attr("x",c).attr("width",f-c),e.select("rect."+rl.maskMinClassName).attr("width",c),e.select("rect."+rl.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."+rl.maskMinOppAxisClassName).attr("x",c).attr("height",h).attr("width",f-c),e.select("rect."+rl.maskMaxOppAxisClassName).attr("x",c).attr("y",d).attr("height",n._height-d).attr("width",f-c),e.select("rect."+rl.slideBoxClassName).attr("y",h).attr("height",d-h)}var v=.5,_=Math.round(u(c-o))-v,b=Math.round(u(f-o))+v;e.select("g."+rl.grabberMinClassName).attr("transform",PI(_,v)),e.select("g."+rl.grabberMaxClassName).attr("transform",PI(b,v))}function Lmt(e,t,r,n){var i=Jf.ensureSingle(e,"rect",rl.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:PI(o,o),"stroke-width":s}).call(x_.stroke,n.bordercolor).call(x_.fill,n.bgcolor)}function Pmt(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 Imt(e,t,r,n){var i=t.calcdata,a=e.selectAll("g."+rl.rangePlotClassName).data(r._subplotsWith,Jf.identity);a.enter().append("g").attr("class",function(s){return rl.rangePlotClassName+" "+s}).call(Fge.setClipUrl,n._clipId,t),a.order(),a.exit().remove();var o;a.each(function(s,l){var u=LI.select(this),c=l===0,f=rV.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),wmt.supplyDefaults(v);var _=v._fullLayout.xaxis,b=v._fullLayout[h];_.clearCalc(),_.setScale(),b.clearCalc(),b.setScale();var p={id:s,plotgroup:u,xaxis:_,yaxis:b,isRangePlot:!0};c?o=p:(p.mainplot="xy",p.mainplotinfo=o),Amt.rangePlot(t,p,Rmt(i,s))})}function Rmt(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 Dmt(e,t,r,n,i){var a=Jf.ensureSingle(e,"rect",rl.maskMinClassName,function(u){u.attr({x:0,y:0,"shape-rendering":"crispEdges"})});a.attr("height",n._height).call(x_.fill,rl.maskColor);var o=Jf.ensureSingle(e,"rect",rl.maskMaxClassName,function(u){u.attr({y:0,"shape-rendering":"crispEdges"})});if(o.attr("height",n._height).call(x_.fill,rl.maskColor),i.rangemode!=="match"){var s=Jf.ensureSingle(e,"rect",rl.maskMinOppAxisClassName,function(u){u.attr({y:0,"shape-rendering":"crispEdges"})});s.attr("width",n._width).call(x_.fill,rl.maskOppAxisColor);var l=Jf.ensureSingle(e,"rect",rl.maskMaxOppAxisClassName,function(u){u.attr({y:0,"shape-rendering":"crispEdges"})});l.attr("width",n._width).style("border-top",rl.maskOppBorder).call(x_.fill,rl.maskOppAxisColor)}}function Fmt(e,t,r,n){if(!t._context.staticPlot){var i=Jf.ensureSingle(e,"rect",rl.slideBoxClassName,function(a){a.attr({y:0,cursor:rl.slideBoxCursor,"shape-rendering":"crispEdges"})});i.attr({height:n._height,fill:rl.slideBoxFill})}}function zmt(e,t,r,n){var i=Jf.ensureSingle(e,"g",rl.grabberMinClassName),a=Jf.ensureSingle(e,"g",rl.grabberMaxClassName),o={x:0,width:rl.handleWidth,rx:rl.handleRadius,fill:x_.background,stroke:x_.defaultLine,"stroke-width":rl.handleStrokeWidth,"shape-rendering":"crispEdges"},s={y:Math.round(n._height/4),height:Math.round(n._height/2)},l=Jf.ensureSingle(i,"rect",rl.handleMinClassName,function(d){d.attr(o)});l.attr(s);var u=Jf.ensureSingle(a,"rect",rl.handleMaxClassName,function(d){d.attr(o)});u.attr(s);var c={width:rl.grabAreaWidth,x:0,y:0,fill:rl.grabAreaFill,cursor:t._context.staticPlot?void 0:rl.grabAreaCursor},f=Jf.ensureSingle(i,"rect",rl.grabAreaMinClassName,function(d){d.attr(c)});f.attr("height",n._height);var h=Jf.ensureSingle(a,"rect",rl.grabAreaMaxClassName,function(d){d.attr(c)});h.attr("height",n._height)}});var Bge=ye((vlr,qge)=>{"use strict";var Omt=Dr(),qmt=SI(),Bmt=tV(),iV=Ege();qge.exports={moduleType:"component",name:"rangeslider",schema:{subplots:{xaxis:{rangeslider:Omt.extendFlat({},qmt,{yaxis:Bmt})}}},layoutAttributes:SI(),handleDefaults:Pge(),calcAutorange:Rge(),draw:Oge(),isVisible:iV.isVisible,makeData:iV.makeData,autoMarginOpts:iV.autoMarginOpts}});var II=ye((plr,Uge)=>{"use strict";var Nmt=ec(),Nge=Lh(),Umt=vl().templatedArray,Vmt=Umt("button",{visible:{valType:"boolean",dflt:!0,editType:"plot"},step:{valType:"enumerated",values:["month","year","day","hour","minute","second","all"],dflt:"month",editType:"plot"},stepmode:{valType:"enumerated",values:["backward","todate"],dflt:"backward",editType:"plot"},count:{valType:"number",min:0,dflt:1,editType:"plot"},label:{valType:"string",editType:"plot"},editType:"plot"});Uge.exports={visible:{valType:"boolean",editType:"plot"},buttons:Vmt,x:{valType:"number",min:-2,max:3,editType:"plot"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left",editType:"plot"},y:{valType:"number",min:-2,max:3,editType:"plot"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"bottom",editType:"plot"},font:Nmt({editType:"plot"}),bgcolor:{valType:"color",dflt:Nge.lightLine,editType:"plot"},activecolor:{valType:"color",editType:"plot"},bordercolor:{valType:"color",dflt:Nge.defaultLine,editType:"plot"},borderwidth:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"plot"}});var nV=ye((glr,Vge)=>{"use strict";Vge.exports={yPad:.02,minButtonWidth:30,rx:3,ry:3,lightAmount:25,darkAmount:10}});var jge=ye((mlr,Hge)=>{"use strict";var RI=Dr(),Gmt=ka(),Hmt=vl(),jmt=Yd(),Gge=II(),aV=nV();Hge.exports=function(t,r,n,i,a){var o=t.rangeselector||{},s=Hmt.newContainer(r,"rangeselector");function l(d,v){return RI.coerce(o,s,Gge,d,v)}var u=jmt(o,s,{name:"buttons",handleItemDefaults:Wmt,calendar:a}),c=l("visible",u.length>0);if(c){var f=Xmt(r,n,i);l("x",f[0]),l("y",f[1]),RI.noneOrAll(t,r,["x","y"]),l("xanchor"),l("yanchor"),RI.coerceFont(l,"font",n.font);var h=l("bgcolor");l("activecolor",Gmt.contrast(h,aV.lightAmount,aV.darkAmount)),l("bordercolor"),l("borderwidth")}};function Wmt(e,t,r,n){var i=n.calendar;function a(l,u){return RI.coerce(e,t,Gge.buttons,l,u)}var o=a("visible");if(o){var s=a("step");s!=="all"&&(i&&i!=="gregorian"&&(s==="month"||s==="year")?t.stepmode="backward":a("stepmode"),a("count")),a("label")}}function Xmt(e,t,r){for(var n=r.filter(function(s){return t[s].anchor===e._id}),i=0,a=0;a<n.length;a++){var o=t[n[a]].domain;o&&(i=Math.max(o[1],i))}return[e.domain[0],i+aV.yPad]}});var Xge=ye((ylr,Wge)=>{"use strict";var Zmt=bO(),Ymt=Dr().titleCase;Wge.exports=function(t,r){var n=t._name,i={};if(r.step==="all")i[n+".autorange"]=!0;else{var a=Kmt(t,r);i[n+".range[0]"]=a[0],i[n+".range[1]"]=a[1]}return i};function Kmt(e,t){var r=e.range,n=new Date(e.r2l(r[1])),i=t.step,a=Zmt["utc"+Ymt(i)],o=t.count,s;switch(t.stepmode){case"backward":s=e.l2r(+a.offset(n,-o));break;case"todate":var l=a.offset(n,-o);s=e.l2r(+a.ceil(l));break}var u=r[1];return[s,u]}});var tme=ye((_lr,eme)=>{"use strict";var FI=Oa(),Jmt=qa(),$mt=Mc(),Zge=ka(),Qge=So(),Ry=Dr(),Yge=Ry.strTranslate,DI=ru(),Qmt=hf(),lV=$h(),Kge=lV.LINE_SPACING,Jge=lV.FROM_TL,$ge=lV.FROM_BR,sV=nV(),eyt=Xge();eme.exports=function(t){var r=t._fullLayout,n=r._infolayer.selectAll(".rangeselector").data(tyt(t),ryt);n.enter().append("g").classed("rangeselector",!0),n.exit().remove(),n.style({cursor:"pointer","pointer-events":"all"}),n.each(function(i){var a=FI.select(this),o=i,s=o.rangeselector,l=a.selectAll("g.button").data(Ry.filterVisible(s.buttons));l.enter().append("g").classed("button",!0),l.exit().remove(),l.each(function(u){var c=FI.select(this),f=eyt(o,u);u._isActive=iyt(o,u,f),c.call(oV,s,u),c.call(ayt,s,u,t),c.on("click",function(){t._dragged||Jmt.call("_guiRelayout",t,f)}),c.on("mouseover",function(){u._isHovered=!0,c.call(oV,s,u)}),c.on("mouseout",function(){u._isHovered=!1,c.call(oV,s,u)})}),syt(t,l,s,o._name,a)})};function tyt(e){for(var t=Qmt.list(e,"x",!0),r=[],n=0;n<t.length;n++){var i=t[n];i.rangeselector&&i.rangeselector.visible&&r.push(i)}return r}function ryt(e){return e._id}function iyt(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 oV(e,t,r){var n=Ry.ensureSingle(e,"rect","selector-rect",function(i){i.attr("shape-rendering","crispEdges")});n.attr({rx:sV.rx,ry:sV.ry}),n.call(Zge.stroke,t.bordercolor).call(Zge.fill,nyt(t,r)).style("stroke-width",t.borderwidth+"px")}function nyt(e,t){return t._isActive||t._isHovered?e.activecolor:e.bgcolor}function ayt(e,t,r,n){function i(o){DI.convertToTspans(o,n)}var a=Ry.ensureSingle(e,"text","selector-text",function(o){o.attr("text-anchor","middle")});a.call(Qge.font,t.font).text(oyt(r,n._fullLayout._meta)).call(i)}function oyt(e,t){return e.label?t?Ry.templateString(e.label,t):e.label:e.step==="all"?"all":e.count+e.step.charAt(0)}function syt(e,t,r,n,i){var a=0,o=0,s=r.borderwidth;t.each(function(){var d=FI.select(this),v=d.select(".selector-text"),_=r.font.size*Kge,b=Math.max(_*DI.lineCount(v),16)+3;o=Math.max(o,b)}),t.each(function(){var d=FI.select(this),v=d.select(".selector-rect"),_=d.select(".selector-text"),b=_.node()&&Qge.bBox(_.node()).width,p=r.font.size*Kge,k=DI.lineCount(_),E=Math.max(b+10,sV.minButtonWidth);d.attr("transform",Yge(s+a,s)),v.attr({x:0,y:0,width:E,height:o}),DI.positionText(_,E/2,o/2-(k-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";Ry.isRightAnchor(r)&&(u-=a,f="right"),Ry.isCenterAnchor(r)&&(u-=a/2,f="center");var h="top";Ry.isBottomAnchor(r)&&(c-=o,h="bottom"),Ry.isMiddleAnchor(r)&&(c-=o/2,h="middle"),a=Math.ceil(a),o=Math.ceil(o),u=Math.round(u),c=Math.round(c),$mt.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((xlr,rme)=>{"use strict";rme.exports={moduleType:"component",name:"rangeselector",schema:{subplots:{xaxis:{rangeselector:II()}}},layoutAttributes:II(),handleDefaults:jge(),draw:tme()}});var Cc=ye(uV=>{"use strict";var nme=Ao().extendFlat;uV.attributes=function(e,t){e=e||{},t=t||{};var r={valType:"info_array",editType:e.editType,items:[{valType:"number",min:0,max:1,editType:e.editType},{valType:"number",min:0,max:1,editType:e.editType}],dflt:[0,1]},n=e.name?e.name+" ":"",i=e.trace?"trace ":"subplot ",a=t.description?" "+t.description:"",o={x:nme({},r,{}),y:nme({},r,{}),editType:e.editType};return e.noGridCell||(o.row={valType:"integer",min:0,dflt:0,editType:e.editType},o.column={valType:"integer",min:0,dflt:0,editType:e.editType}),o};uV.defaults=function(e,t,r,n){var i=n&&n.x||[0,1],a=n&&n.y||[0,1],o=t.grid;if(o){var s=r("domain.column");s!==void 0&&(s<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 fV=ye((wlr,lme)=>{"use strict";var lyt=Dr(),uyt=o3().counter,cyt=Cc().attributes,ame=hd().idRegex,fyt=vl(),cV={rows:{valType:"integer",min:1,editType:"plot"},roworder:{valType:"enumerated",values:["top to bottom","bottom to top"],dflt:"top to bottom",editType:"plot"},columns:{valType:"integer",min:1,editType:"plot"},subplots:{valType:"info_array",freeLength:!0,dimensions:2,items:{valType:"enumerated",values:[uyt("xy").toString(),""],editType:"plot"},editType:"plot"},xaxes:{valType:"info_array",freeLength:!0,items:{valType:"enumerated",values:[ame.x.toString(),""],editType:"plot"},editType:"plot"},yaxes:{valType:"info_array",freeLength:!0,items:{valType:"enumerated",values:[ame.y.toString(),""],editType:"plot"},editType:"plot"},pattern:{valType:"enumerated",values:["independent","coupled"],dflt:"coupled",editType:"plot"},xgap:{valType:"number",min:0,max:1,editType:"plot"},ygap:{valType:"number",min:0,max:1,editType:"plot"},domain:cyt({name:"grid",editType:"plot",noGridCell:!0},{}),xside:{valType:"enumerated",values:["bottom","bottom plot","top plot","top"],dflt:"bottom plot",editType:"plot"},yside:{valType:"enumerated",values:["left","left plot","right plot","right"],dflt:"left plot",editType:"plot"},editType:"plot"};function zI(e,t,r){var n=t[r+"axes"],i=Object.keys((e._splomAxes||{})[r]||{});if(Array.isArray(n))return n;if(i.length)return i}function hyt(e,t){var r=e.grid||{},n=zI(t,r,"x"),i=zI(t,r,"y");if(!e.grid&&!n&&!i)return;var a=Array.isArray(r.subplots)&&Array.isArray(r.subplots[0]),o=Array.isArray(n),s=Array.isArray(i),l=o&&n!==r.xaxes&&s&&i!==r.yaxes,u,c;a?(u=r.subplots.length,c=r.subplots[0].length):(s&&(u=i.length),o&&(c=n.length));var f=fyt.newContainer(t,"grid");function h(x,C){return lyt.coerce(r,f,cV,x,C)}var d=h("rows",u),v=h("columns",c);if(!(d*v>1)){delete t.grid;return}if(!a&&!o&&!s){var _=h("pattern")==="independent";_&&(a=!0)}f._hasSubplotGrid=a;var b=h("roworder"),p=b==="top to bottom",k=a?.2:.1,E=a?.3:.1,S,L;l&&t._splomGridDflt&&(S=t._splomGridDflt.xside,L=t._splomGridDflt.yside),f._domains={x:ome("x",h,k,S,v),y:ome("y",h,E,L,d,p)}}function ome(e,t,r,n,i,a){var o=t(e+"gap",r),s=t("domain."+e);t(e+"side",n);for(var l=new Array(i),u=s[0],c=(s[1]-u)/(i-o),f=c*(1-o),h=0;h<i;h++){var d=u+c*h;l[a?i-1-h:h]=[d,d+f]}return l}function dyt(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,_,b=r._axisMap={};if(a){var p=n.subplots||[];v=r.subplots=new Array(o);var k=1;for(u=0;u<o;u++){var E=v[u]=new Array(s),S=p[u]||[];for(c=0;c<s;c++)if(l?(d=k===1?"xy":"x"+k+"y"+k,k++):d=S[c],E[c]="",i.cartesian.indexOf(d)!==-1){if(_=d.indexOf("y"),f=d.slice(0,_),h=d.slice(_),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=zI(t,n,"x"),x=zI(t,n,"y");r.xaxes=sme(L,i.xaxis,s,b,"x"),r.yaxes=sme(x,i.yaxis,o,b,"y")}var C=r._anchors={},M=r.roworder==="top to bottom";for(var g in b){var P=g.charAt(0),T=r[P+"side"],z,O,V;if(T.length<8)C[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&&(_=d.indexOf("y"),d.slice(0,_)===g)){C[g]=d.slice(_);break}}else for(u=z;u!==V;u+=O)if(h=r.yaxes[u],i.cartesian.indexOf(g+h)!==-1){C[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&&(_=d.indexOf("y"),d.slice(_)===g)){C[g]=d.slice(0,_);break}}else for(u=z;u!==V;u+=O)if(f=r.xaxes[u],i.cartesian.indexOf(f+g)!==-1){C[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:cV}},layoutAttributes:cV,sizeDefaults:hyt,contentDefaults:dyt}});var hV=ye((Tlr,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((Alr,fme)=>{"use strict";var cme=Eo(),vyt=qa(),pyt=Dr(),gyt=vl(),myt=hV();fme.exports=function(e,t,r,n){var i="error_"+n.axis,a=gyt.newContainer(t,i),o=e[i]||{};function s(v,_){return pyt.coerce(o,a,myt,v,_)}var l=o.array!==void 0||o.value!==void 0||o.type==="sqrt",u=s("visible",l);if(u!==!1){var c=s("type","array"in o?"data":"percent"),f=!0;c!=="sqrt"&&(f=s("symmetric",!((c==="data"?"arrayminus":"valueminus")in o))),c==="data"?(s("array"),s("traceref"),f||(s("arrayminus"),s("tracerefminus"))):(c==="percent"||c==="constant")&&(s("value"),f||s("valueminus"));var h="copy_"+n.inherit+"style";if(n.inherit){var d=t["error_"+n.inherit];(d||{}).visible&&s(h,!(o.color||cme(o.thickness)||cme(o.width)))}(!n.inherit||!a[h])&&(s("color",r),s("thickness"),s("width",vyt.traceIs(t,"gl3d")?0:4))}}});var dV=ye((Slr,vme)=>{"use strict";vme.exports=function(t){var r=t.type,n=t.symmetric;if(r==="data"){var i=t.array||[];if(n)return function(u,c){var f=+i[c];return[f,f]};var a=t.arrayminus||[];return function(u,c){var f=+i[c],h=+a[c];return!isNaN(f)||!isNaN(h)?[h||0,f||0]:[NaN,NaN]}}else{var o=dme(r,t.value),s=dme(r,t.valueminus);return n||t.valueminus===void 0?function(u){var c=o(u);return[c,c]}:function(u){return[s(u),o(u)]}}};function dme(e,t){if(e==="percent")return function(r){return Math.abs(r*t/100)};if(e==="constant")return function(){return Math.abs(t)};if(e==="sqrt")return function(r){return Math.sqrt(Math.abs(r))}}});var mme=ye((Mlr,gme)=>{"use strict";var vV=Eo(),yyt=qa(),pV=ho(),_yt=Dr(),xyt=dV();gme.exports=function(t){for(var r=t.calcdata,n=0;n<r.length;n++){var i=r[n],a=i[0].trace;if(a.visible===!0&&yyt.traceIs(a,"errorBarsOK")){var o=pV.getFromId(t,a.xaxis),s=pV.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=xyt(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(vV(r.c2l(f))){var h=s(f,c);if(vV(h[0])&&vV(h[1])){var d=u[n+"s"]=f-h[0],v=u[n+"h"]=f+h[1];o.push(d,v)}}}var _=r._id,b=t._extremes[_],p=pV.findExtremes(r,o,_yt.extendFlat({tozero:b.opts.tozero},{padded:!0}));b.min=b.min.concat(p.min),b.max=b.max.concat(p.max)}}});var xme=ye((Elr,_me)=>{"use strict";var yme=Oa(),b_=Eo(),byt=So(),wyt=Ru();_me.exports=function(t,r,n,i){var a,o=n.xaxis,s=n.yaxis,l=i&&i.duration>0,u=t._context.staticPlot;r.each(function(c){var f=c[0].trace,h=f.error_x||{},d=f.error_y||{},v;f.ids&&(v=function(k){return k.id});var _=wyt.hasMarkers(f)&&f.marker.maxdisplayed>0;!d.visible&&!h.visible&&(c=[]);var b=yme.select(this).selectAll("g.errorbar").data(c,v);if(b.exit().remove(),!!c.length){h.visible||b.selectAll("path.xerror").remove(),d.visible||b.selectAll("path.yerror").remove(),b.style("opacity",1);var p=b.enter().append("g").classed("errorbar",!0);l&&p.style("opacity",0).transition().duration(i.duration).style("opacity",1),byt.setClipUrl(b,n.layerClipId,t),b.each(function(k){var E=yme.select(this),S=Tyt(k,o,s);if(!(_&&!k.vis)){var L,x=E.select("path.yerror");if(d.visible&&b_(S.x)&&b_(S.yh)&&b_(S.ys)){var C=d.width;L="M"+(S.x-C)+","+S.yh+"h"+2*C+"m-"+C+",0V"+S.ys,S.noYS||(L+="m-"+C+",0h"+2*C),a=!x.size(),a?x=E.append("path").style("vector-effect",u?"none":"non-scaling-stroke").classed("yerror",!0):l&&(x=x.transition().duration(i.duration).ease(i.easing)),x.attr("d",L)}else x.remove();var M=E.select("path.xerror");if(h.visible&&b_(S.y)&&b_(S.xh)&&b_(S.xs)){var g=(h.copy_ystyle?d:h).width;L="M"+S.xh+","+(S.y-g)+"v"+2*g+"m0,-"+g+"H"+S.xs,S.noXS||(L+="m0,-"+g+"v"+2*g),a=!M.size(),a?M=E.append("path").style("vector-effect",u?"none":"non-scaling-stroke").classed("xerror",!0):l&&(M=M.transition().duration(i.duration).ease(i.easing)),M.attr("d",L)}else M.remove()}})}})};function Tyt(e,t,r){var n={x:t.c2p(e.x),y:r.c2p(e.y)};return e.yh!==void 0&&(n.yh=r.c2p(e.yh),n.ys=r.c2p(e.ys),b_(n.ys)||(n.noYS=!0,n.ys=r.c2p(e.ys,!0))),e.xh!==void 0&&(n.xh=t.c2p(e.xh),n.xs=t.c2p(e.xs),b_(n.xs)||(n.noXS=!0,n.xs=t.c2p(e.xs,!0))),n}});var Tme=ye((klr,wme)=>{"use strict";var Ayt=Oa(),bme=ka();wme.exports=function(t){t.each(function(r){var n=r[0].trace,i=n.error_y||{},a=n.error_x||{},o=Ayt.select(this);o.selectAll("path.yerror").style("stroke-width",i.thickness+"px").call(bme.stroke,i.color),a.copy_ystyle&&(a=i),o.selectAll("path.xerror").style("stroke-width",a.thickness+"px").call(bme.stroke,a.color)})}});var Mme=ye((Clr,Sme)=>{"use strict";var h4=Dr(),Ame=mc().overrideAll,d4=hV(),Qb={error_x:h4.extendFlat({},d4),error_y:h4.extendFlat({},d4)};delete Qb.error_x.copy_zstyle;delete Qb.error_y.copy_zstyle;delete Qb.error_y.copy_ystyle;var v4={error_x:h4.extendFlat({},d4),error_y:h4.extendFlat({},d4),error_z:h4.extendFlat({},d4)};delete v4.error_x.copy_ystyle;delete v4.error_y.copy_ystyle;delete v4.error_z.copy_ystyle;delete v4.error_z.copy_zstyle;Sme.exports={moduleType:"component",name:"errorbars",schema:{traces:{scatter:Qb,bar:Qb,histogram:Qb,scatter3d:Ame(v4,"calc","nested"),scattergl:Ame(Qb,"calc","nested")}},supplyDefaults:hme(),calc:mme(),makeComputeError:dV(),plot:xme(),style:Tme(),hoverInfo:Syt};function Syt(e,t,r){(t.error_y||{}).visible&&(r.yerr=e.yh-e.y,t.error_y.symmetric||(r.yerrneg=e.y-e.ys)),(t.error_x||{}).visible&&(r.xerr=e.xh-e.x,t.error_x.symmetric||(r.xerrneg=e.x-e.xs))}});var kme=ye((Llr,Eme)=>{"use strict";Eme.exports={cn:{colorbar:"colorbar",cbbg:"cbbg",cbfill:"cbfill",cbfills:"cbfills",cbline:"cbline",cblines:"cblines",cbaxis:"cbaxis",cbtitleunshift:"cbtitleunshift",cbtitle:"cbtitle",cboutline:"cboutline",crisp:"crisp",jsPlaceholder:"js-placeholder"}}});var Fme=ye((Plr,Dme)=>{"use strict";var w_=Oa(),gV=cd(),qI=Mc(),Cme=qa(),Dy=ho(),OI=yv(),B0=Dr(),Vg=B0.strTranslate,Rme=Ao().extendFlat,mV=Sg(),Ug=So(),yV=ka(),Myt=Eb(),Eyt=ru(),kyt=pv().flipScale,Cyt=i4(),Lyt=uI(),Pyt=Rd(),_V=$h(),Lme=_V.LINE_SPACING,Pme=_V.FROM_TL,Ime=_V.FROM_BR,gf=kme().cn;function Iyt(e){var t=e._fullLayout,r=t._infolayer.selectAll("g."+gf.colorbar).data(Ryt(e),function(n){return n._id});r.enter().append("g").attr("class",function(n){return n._id}).classed(gf.colorbar,!0),r.each(function(n){var i=w_.select(this);B0.ensureSingle(i,"rect",gf.cbbg),B0.ensureSingle(i,"g",gf.cbfills),B0.ensureSingle(i,"g",gf.cblines),B0.ensureSingle(i,"g",gf.cbaxis,function(o){o.classed(gf.crisp,!0)}),B0.ensureSingle(i,"g",gf.cbtitleunshift,function(o){o.append("g").classed(gf.cbtitle,!0)}),B0.ensureSingle(i,"rect",gf.cboutline);var a=Dyt(i,n,e);a&&a.then&&(e._promises||[]).push(a),e._context.edits.colorbarPosition&&Fyt(i,n,e)}),r.exit().each(function(n){qI.autoMargin(e,n._id)}).remove(),r.order()}function Ryt(e){var t=e._fullLayout,r=e.calcdata,n=[],i,a,o,s;function l(E){return Rme(E,{_fillcolor:null,_line:{color:null,width:null,dash:null},_levels:{start:null,end:null,size:null},_filllevels:null,_fillgradient:null,_zrange:null})}function u(){typeof s.calc=="function"?s.calc(e,o,i):(i._fillgradient=a.reversescale?kyt(a.colorscale):a.colorscale,i._zrange=[a[s.min],a[s.max]])}for(var c=0;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],_=0;_<v.length;_++){s=v[_];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 k=t._colorAxes[p];i=l(a.colorbar),i._id="cb"+p,i._propPrefix=p+".colorbar.",i._meta=t._meta,s={min:"cmin",max:"cmax"},k[0]!=="heatmap"&&(o=k[1],s.calc=o._module.colorbar.calc),u(),n.push(i)}return n}function Dyt(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,_=t.x,b=n?t.y:1-t.y,p=t.yref==="paper",k=t.xref==="paper",E=r._fullLayout,S=E._size,L=t._fillcolor,x=t._line,C=t.title,M=C.side,g=t._zrange||w_.extent((typeof L=="function"?L:x.color).domain()),P=typeof x.color=="function"?x.color:function(){return x.color},T=typeof L=="function"?L:function(){return L},z=t._levels,O=zyt(r,t,g),V=O.fill,G=O.line,Z=Math.round(o*(s==="fraction"?n?S.w:S.h:1)),j=Z/(n?S.w:S.h),N=Math.round(i*(a==="fraction"?n?S.h:S.w:1)),H=N/(n?S.h:S.w),te=k?S.w:r._fullLayout.width,oe=p?S.h:r._fullLayout.height,_e=Math.round(n?_*te+d:b*oe+v),Ee={center:.5,right:1}[f]||0,Ce={top:1,middle:.5}[h]||0,me=n?_-Ee*j:b-Ce*j,ie=n?b-Ce*H:_-Ee*H,Se=Math.round(n?oe*(1-ie):te*ie);t._lenFrac=H,t._thickFrac=j,t._uFrac=me,t._vFrac=ie;var Le=t._axis=Oyt(r,t,g);Le.position=j+(n?_+d/S.w:b+v/S.h);var Ae=["top","bottom"].indexOf(M)!==-1;if(n&&Ae&&(Le.title.side=M,Le.titlex=_+d/S.w,Le.titley=ie+(C.side==="top"?H-v/S.h:v/S.h)),!n&&!Ae&&(Le.title.side=M,Le.titley=b+v/S.h,Le.titlex=ie+d/S.w),x.color&&t.tickmode==="auto"){Le.tickmode="linear",Le.tick0=z.start;var Fe=z.size,Pe=B0.constrain(N/50,4,15)+1,ge=(g[1]-g[0])/((t.nticks||Pe)*Fe);if(ge>1){var Re=Math.pow(10,Math.floor(Math.log(ge)/Math.LN10));Fe*=Re*B0.roundUp(ge/Re,[2,5,10]),(Math.abs(z.start)/z.size+1e-6)%1<2e-6&&(Le.tick0=0)}Le.dtick=Fe}Le.domain=n?[ie+v/S.h,ie+H-v/S.h]:[ie+d/S.w,ie+H-d/S.w],Le.setScale(),e.attr("transform",Vg(Math.round(S.l),Math.round(S.t)));var ce=e.select("."+gf.cbtitleunshift).attr("transform",Vg(-Math.round(S.l),-Math.round(S.t))),Ze=Le.ticklabelposition,ut=Le.title.font.size,pt=e.select("."+gf.cbaxis),Zt,st=0,lt=0;function Gt(cr,$e){var St={propContainer:Le,propName:t._propPrefix+"title.text",traceIndex:t._traceIndex,_meta:t._meta,placeholder:E._dfltTitle.colorbar,containerGroup:e.select("."+gf.cbtitle)},Qt=cr.charAt(0)==="h"?cr.slice(1):"h"+cr;e.selectAll("."+Qt+",."+Qt+"-math-group").remove(),Myt.draw(r,cr,Rme(St,$e||{}))}function Nt(){if(n&&Ae||!n&&!Ae){var cr,$e;M==="top"&&(cr=d+S.l+te*_,$e=v+S.t+oe*(1-ie-H)+3+ut*.75),M==="bottom"&&(cr=d+S.l+te*_,$e=v+S.t+oe*(1-ie)-3-ut*.25),M==="right"&&($e=v+S.t+oe*b+3+ut*.75,cr=d+S.l+te*ie),Gt(Le._id+"title",{attributes:{x:cr,y:$e,"text-anchor":n?"start":"middle"}})}}function Jt(){if(n&&!Ae||!n&&Ae){var cr=Le.position||0,$e=Le._offset+Le._length/2,St,Qt;if(M==="right")Qt=$e,St=S.l+te*cr+10+ut*(Le.showticklabels?1:.5);else if(St=$e,M==="bottom"&&(Qt=S.t+oe*cr+10+(Ze.indexOf("inside")===-1?Le.tickfont.size:0)+(Le.ticks!=="inside"&&t.ticklen||0)),M==="top"){var Vt=C.text.split("<br>").length;Qt=S.t+oe*cr+10-Z-Lme*ut*Vt}Gt((n?"h":"v")+Le._id+"title",{avoid:{selection:w_.select(r).selectAll("g."+Le._id+"tick"),side:M,offsetTop:n?0:S.t,offsetLeft:n?S.l:0,maxShift:n?E.width:E.height},attributes:{x:St,y:Qt,"text-anchor":"middle"},transform:{rotate:n?-90:0,offset:0}})}}function sr(){if(!n&&!Ae||n&&Ae){var cr=e.select("."+gf.cbtitle),$e=cr.select("text"),St=[-l/2,l/2],Qt=cr.select(".h"+Le._id+"title-math-group").node(),Vt=15.6;$e.node()&&(Vt=parseInt($e.node().style.fontSize,10)*Lme);var _t;if(Qt?(_t=Ug.bBox(Qt),lt=_t.width,st=_t.height,st>Vt&&(St[1]-=(st-Vt)/2)):$e.node()&&!$e.classed(gf.jsPlaceholder)&&(_t=Ug.bBox($e.node()),lt=_t.width,st=_t.height),n){if(st){if(st+=5,M==="top")Le.domain[1]-=st/S.h,St[1]*=-1;else{Le.domain[0]+=st/S.h;var It=Eyt.lineCount($e);St[1]+=(1-It)*Vt}cr.attr("transform",Vg(St[0],St[1])),Le.setScale()}}else lt&&(M==="right"&&(Le.domain[0]+=(lt+ut/2)/S.w),cr.attr("transform",Vg(St[0],St[1])),Le.setScale())}e.selectAll("."+gf.cbfills+",."+gf.cblines).attr("transform",n?Vg(0,Math.round(S.h*(1-Le.domain[1]))):Vg(Math.round(S.w*Le.domain[0]),0)),pt.attr("transform",n?Vg(0,Math.round(-S.t)):Vg(Math.round(-S.l),0));var mt=e.select("."+gf.cbfills).selectAll("rect."+gf.cbfill).attr("style","").data(V);mt.enter().append("rect").classed(gf.cbfill,!0).attr("style",""),mt.exit().remove();var er=g.map(Le.c2p).map(Math.round).sort(function(Br,Vr){return Br-Vr});mt.each(function(Br,Vr){var dt=[Vr===0?g[0]:(V[Vr]+V[Vr-1])/2,Vr===V.length-1?g[1]:(V[Vr]+V[Vr+1])/2].map(Le.c2p).map(Math.round);n&&(dt[1]=B0.constrain(dt[1]+(dt[1]>dt[0])?1:-1,er[0],er[1]));var Ge=w_.select(this).attr(n?"x":"y",_e).attr(n?"y":"x",w_.min(dt)).attr(n?"width":"height",Math.max(Z,2)).attr(n?"height":"width",Math.max(w_.max(dt)-w_.min(dt),2));if(t._fillgradient)Ug.gradient(Ge,r,t._id,n?"vertical":"horizontalreversed",t._fillgradient,"fill");else{var Je=T(Br).replace("e-","");Ge.attr("fill",gV(Je).toHexString())}});var lr=e.select("."+gf.cblines).selectAll("path."+gf.cbline).data(x.color&&x.width?G:[]);lr.enter().append("path").classed(gf.cbline,!0),lr.exit().remove(),lr.each(function(Br){var Vr=_e,dt=Math.round(Le.c2p(Br))+x.width/2%1;w_.select(this).attr("d","M"+(n?Vr+","+dt:dt+","+Vr)+(n?"h":"v")+Z).call(Ug.lineGroupStyle,x.width,P(Br),x.dash)}),pt.selectAll("g."+Le._id+"tick,path").remove();var Tr=_e+Z+(l||0)/2-(t.ticks==="outside"?1:0),Lr=Dy.calcTicks(Le),ti=Dy.getTickSigns(Le)[2];return Dy.drawTicks(r,Le,{vals:Le.ticks==="inside"?Dy.clipEnds(Le,Lr):Lr,layer:pt,path:Dy.makeTickPath(Le,Tr,ti),transFn:Dy.makeTransTickFn(Le)}),Dy.drawLabels(r,Le,{vals:Lr,layer:pt,transFn:Dy.makeTransTickLabelFn(Le),labelFns:Dy.makeLabelFns(Le,Tr)})}function wr(){var cr,$e=Z+l/2;Ze.indexOf("inside")===-1&&(cr=Ug.bBox(pt.node()),$e+=n?cr.width:cr.height),Zt=ce.select("text");var St=0,Qt=n&&M==="top",Vt=!n&&M==="right",_t=0;if(Zt.node()&&!Zt.classed(gf.jsPlaceholder)){var It,mt=ce.select(".h"+Le._id+"title-math-group").node();mt&&(n&&Ae||!n&&!Ae)?(cr=Ug.bBox(mt),St=cr.width,It=cr.height):(cr=Ug.bBox(ce.node()),St=cr.right-S.l-(n?_e:Se),It=cr.bottom-S.t-(n?Se:_e),!n&&M==="top"&&($e+=cr.height,_t=cr.height)),Vt&&(Zt.attr("transform",Vg(St/2+ut/2,0)),St*=2),$e=Math.max($e,n?St:It)}var er=(n?d:v)*2+$e+u+l/2,lr=0;!n&&C.text&&h==="bottom"&&b<=0&&(lr=er/2,er+=lr,_t+=lr),E._hColorbarMoveTitle=lr,E._hColorbarMoveCBTitle=_t;var Tr=u+l,Lr=(n?_e:Se)-Tr/2-(n?d:0),ti=(n?Se:_e)-(n?N:v+_t-lr);e.select("."+gf.cbbg).attr("x",Lr).attr("y",ti).attr(n?"width":"height",Math.max(er-lr,2)).attr(n?"height":"width",Math.max(N+Tr,2)).call(yV.fill,c).call(yV.stroke,t.bordercolor).style("stroke-width",u);var Br=Vt?Math.max(St-10,0):0;e.selectAll("."+gf.cboutline).attr("x",(n?_e:Se+d)+Br).attr("y",(n?Se+v-N:_e)+(Qt?st:0)).attr(n?"width":"height",Math.max(Z,2)).attr(n?"height":"width",Math.max(N-(n?2*v+st:2*d+Br),2)).call(yV.stroke,t.outlinecolor).style({fill:"none","stroke-width":l});var Vr=n?Ee*er:0,dt=n?0:(1-Ce)*er-_t;if(Vr=k?S.l-Vr:-Vr,dt=p?S.t-dt:-dt,e.attr("transform",Vg(Vr,dt)),!n&&(u||gV(c).getAlpha()&&!gV.equals(E.paper_bgcolor,c))){var Ge=pt.selectAll("text"),Je=Ge[0].length,je=e.select("."+gf.cbbg).node(),tt=Ug.bBox(je),xt=Ug.getTranslate(e),Ie=2;Ge.each(function(di,ji){var In=0,wi=Je-1;if(ji===In||ji===wi){var On=Ug.bBox(this),qn=Ug.getTranslate(this),Fn;if(ji===wi){var ra=On.right+qn.x,la=tt.right+xt.x+Se-u-Ie+_;Fn=la-ra,Fn>0&&(Fn=0)}else if(ji===In){var Ut=On.left+qn.x,wt=tt.left+xt.x+Se+u+Ie;Fn=wt-Ut,Fn<0&&(Fn=0)}Fn&&(Je<3?this.setAttribute("transform","translate("+Fn+",0) "+this.getAttribute("transform")):this.setAttribute("visibility","hidden"))}})}var xe={},ke=Pme[f],vt=Ime[f],ir=Pme[h],ar=Ime[h],vr=er-Z;n?(a==="pixels"?(xe.y=b,xe.t=N*ir,xe.b=N*ar):(xe.t=xe.b=0,xe.yt=b+i*ir,xe.yb=b-i*ar),s==="pixels"?(xe.x=_,xe.l=er*ke,xe.r=er*vt):(xe.l=vr*ke,xe.r=vr*vt,xe.xl=_-o*ke,xe.xr=_+o*vt)):(a==="pixels"?(xe.x=_,xe.l=N*ke,xe.r=N*vt):(xe.l=xe.r=0,xe.xl=_+i*ke,xe.xr=_-i*vt),s==="pixels"?(xe.y=1-b,xe.t=er*ir,xe.b=er*ar):(xe.t=vr*ir,xe.b=vr*ar,xe.yt=b-o*ir,xe.yb=b+o*ar));var ii=t.y<.5?"b":"t",pi=t.x<.5?"l":"r";r._fullLayout._reservedMargin[t._id]={};var $r={r:E.width-Lr-Vr,l:Lr+xe.r,b:E.height-ti-dt,t:ti+xe.b};k&&p?qI.autoMargin(r,t._id,xe):k?r._fullLayout._reservedMargin[t._id][ii]=$r[ii]:p||n?r._fullLayout._reservedMargin[t._id][pi]=$r[pi]:r._fullLayout._reservedMargin[t._id][ii]=$r[ii]}return B0.syncOrAsync([qI.previousPromises,Nt,sr,Jt,qI.previousPromises,wr],r)}function Fyt(e,t,r){var n=t.orientation==="v",i=r._fullLayout,a=i._size,o,s,l;OI.init({element:e.node(),gd:r,prepFn:function(){o=e.attr("transform"),mV(e)},moveFn:function(u,c){e.attr("transform",o+Vg(u,c)),s=OI.align((n?t._uFrac:t._vFrac)+u/a.w,n?t._thickFrac:t._lenFrac,0,1,t.xanchor),l=OI.align((n?t._vFrac:1-t._uFrac)-c/a.h,n?t._lenFrac:t._thickFrac,0,1,t.yanchor);var f=OI.getCursor(s,l,t.xanchor,t.yanchor);mV(e,f)},doneFn:function(){if(mV(e),s!==void 0&&l!==void 0){var u={};u[t._propPrefix+"x"]=s,u[t._propPrefix+"y"]=l,t._traceIndex!==void 0?Cme.call("_guiRestyle",r,u,t._traceIndex):Cme.call("_guiRelayout",r,u)}}})}function zyt(e,t,r){var n=t._levels,i=[],a=[],o,s,l=n.end+n.size/100,u=n.size,c=1.001*r[0]-.001*r[1],f=1.001*r[1]-.001*r[0];for(s=0;s<1e5&&(o=n.start+s*u,!(u>0?o>=l:o<=l));s++)o>c&&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 Oyt(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,Pyt,c,f)}return Cyt(a,s,u,l,n),Lyt(a,s,u,l),s}Dme.exports={draw:Iyt}});var Ome=ye((Ilr,zme)=>{"use strict";zme.exports={moduleType:"component",name:"colorbar",attributes:tL(),supplyDefaults:Pq(),draw:Fme().draw,hasColorbar:Aq()}});var Bme=ye((Rlr,qme)=>{"use strict";qme.exports={moduleType:"component",name:"legend",layoutAttributes:SB(),supplyLayoutDefaults:EB(),draw:BB(),style:FB()}});var Ume=ye((Dlr,Nme)=>{"use strict";Nme.exports={moduleType:"locale",name:"en",dictionary:{"Click to enter Colorscale title":"Click to enter Colourscale title"},format:{days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],periods:["AM","PM"],dateTime:"%a %b %e %X %Y",date:"%d/%m/%Y",time:"%H:%M:%S",decimal:".",thousands:",",grouping:[3],currency:["$",""],year:"%Y",month:"%b %Y",dayMonth:"%b %-d",dayMonthYear:"%b %-d, %Y"}}});var Gme=ye((Flr,Vme)=>{"use strict";Vme.exports={moduleType:"locale",name:"en-US",dictionary:{"Click to enter Colorscale title":"Click to enter Colorscale title"},format:{date:"%m/%d/%Y"}}});var bV=ye((zlr,Xme)=>{"use strict";var qyt=qa(),Wme=Dr(),xV=Wme.extendFlat,Hme=Wme.extendDeep;function jme(e){var t;switch(e){case"themes__thumb":t={autosize:!0,width:150,height:150,title:{text:""},showlegend:!1,margin:{l:5,r:5,t:5,b:5,pad:0},annotations:[]};break;case"thumbnail":t={title:{text:""},hidesources:!0,showlegend:!1,borderwidth:0,bordercolor:"",margin:{l:1,r:1,t:1,b:1,pad:0},annotations:[]};break;default:t={}}return t}function Byt(e){var t=["xaxis","yaxis","zaxis"];return t.indexOf(e.slice(0,5))>-1}Xme.exports=function(t,r){var n,i=t.data,a=t.layout,o=Hme([],i),s=Hme({},a,jme(r.tileClass)),l=t._context||{};if(r.width&&(s.width=r.width),r.height&&(s.height=r.height),r.tileClass==="thumbnail"||r.tileClass==="themes__thumb"){s.annotations=[];var u=Object.keys(s);for(n=0;n<u.length;n++)Byt(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),qyt.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={}),xV(d.xaxis,h),xV(d.yaxis,h),xV(d.zaxis,h),d._scene=null}}var v=document.createElement("div");r.tileClass&&(v.className=r.tileClass);var _={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"&&(_.config.setBackground=r.setBackground||"opaque"),_.gd.defaultLayout=jme(r.tileClass),_}});var Kme=ye((Olr,Yme)=>{"use strict";var Nyt=pb().EventEmitter,Uyt=qa(),Vyt=Dr(),Zme=Py(),Gyt=bV(),Hyt=jP(),jyt=WP();function Wyt(e,t){var r=new Nyt,n=Gyt(e,{format:"png"}),i=n.gd;i.style.position="absolute",i.style.left="-5000px",document.body.appendChild(i);function a(){var s=Zme.getDelay(i._fullLayout);setTimeout(function(){var l=Hyt(i),u=document.createElement("canvas");u.id=Vyt.randstr(),r=jyt({format:t.format,width:i._fullLayout.width,height:i._fullLayout.height,canvas:u,emitter:r,svg:l}),r.clean=function(){i&&document.body.removeChild(i)}},s)}var o=Zme.getRedrawFunc(i);return Uyt.call("_doPlot",i,n.data,n.layout,n.config).then(o).then(a).catch(function(s){r.emit("error",s)}),r}Yme.exports=Wyt});var Qme=ye((qlr,$me)=>{"use strict";var Jme=Py(),Xyt={getDelay:Jme.getDelay,getRedrawFunc:Jme.getRedrawFunc,clone:bV(),toSVG:jP(),svgToImg:WP(),toImage:Kme(),downloadImage:rU()};$me.exports=Xyt});var tye=ye(Fy=>{"use strict";Fy.version=l6().version;vee();rne();var Zyt=qa(),p4=Fy.register=Zyt.register,TV=Tde(),eye=Object.keys(TV);for(BI=0;BI<eye.length;BI++)TT=eye[BI],TT.charAt(0)!=="_"&&(Fy[TT]=TV[TT]),p4({moduleType:"apiMethod",name:TT,fn:TV[TT]});var TT,BI;p4(mpe());p4([Vpe(),t0e(),Of(),_0e(),I0e(),ege(),xge(),Bge(),ime(),fV(),Mme(),tc(),Ome(),Bme(),vf(),cN()]);p4([Ume(),Gme()]);window.PlotlyLocales&&Array.isArray(window.PlotlyLocales)&&(p4(window.PlotlyLocales),delete window.PlotlyLocales);Fy.Icons=XL();var NI=vf(),wV=Mc();Fy.Plots={resize:wV.resize,graphJson:wV.graphJson,sendDataToCloud:wV.sendDataToCloud};Fy.Fx={hover:NI.hover,unhover:NI.unhover,loneHover:NI.loneHover,loneUnhover:NI.loneUnhover};Fy.Snapshot=Qme();Fy.PlotSchema=w3()});var iye=ye((Nlr,rye)=>{"use strict";rye.exports=tye()});var e2=ye((Ulr,nye)=>{"use strict";nye.exports={TEXTPAD:3,eventDataKeys:["value","label"]}});var Lm=ye((Vlr,uye)=>{"use strict";var qf=pf(),aye=df().axisHoverFormat,{hovertemplateAttrs:Yyt,texttemplateAttrs:Kyt,templatefallbackAttrs:oye}=Ll(),lye=Tu(),Jyt=ec(),sye=e2(),$yt=Pd().pattern,t2=Ao().extendFlat,AV=Jyt({editType:"calc",arrayOk:!0,colorEditType:"style"}),Qyt=qf.marker,e1t=Qyt.line,t1t=t2({},e1t.width,{dflt:0}),r1t=t2({width:t1t,editType:"calc"},lye("marker.line")),i1t=t2({line:r1t,editType:"calc"},lye("marker"),{opacity:{valType:"number",arrayOk:!0,dflt:1,min:0,max:1,editType:"style"},pattern:$yt,cornerradius:{valType:"any",editType:"calc"}});uye.exports={x:qf.x,x0:qf.x0,dx:qf.dx,y:qf.y,y0:qf.y0,dy:qf.dy,xperiod:qf.xperiod,yperiod:qf.yperiod,xperiod0:qf.xperiod0,yperiod0:qf.yperiod0,xperiodalignment:qf.xperiodalignment,yperiodalignment:qf.yperiodalignment,xhoverformat:aye("x"),yhoverformat:aye("y"),text:qf.text,texttemplate:Kyt({editType:"plot"},{keys:sye.eventDataKeys}),texttemplatefallback:oye({editType:"plot"}),hovertext:qf.hovertext,hovertemplate:Yyt({},{keys:sye.eventDataKeys}),hovertemplatefallback:oye(),textposition:{valType:"enumerated",values:["inside","outside","auto","none"],dflt:"auto",arrayOk:!0,editType:"calc"},insidetextanchor:{valType:"enumerated",values:["end","middle","start"],dflt:"end",editType:"plot"},textangle:{valType:"angle",dflt:"auto",editType:"plot"},textfont:t2({},AV,{}),insidetextfont:t2({},AV,{}),outsidetextfont:t2({},AV,{}),constraintext:{valType:"enumerated",values:["inside","outside","both","none"],dflt:"both",editType:"calc"},cliponaxis:t2({},qf.cliponaxis,{}),orientation:{valType:"enumerated",values:["v","h"],editType:"calc+clearAxisTypes"},base:{valType:"any",dflt:null,arrayOk:!0,editType:"calc"},offset:{valType:"number",dflt:null,arrayOk:!0,editType:"calc"},width:{valType:"number",dflt:null,min:0,arrayOk:!0,editType:"calc"},marker:i1t,offsetgroup:qf.offsetgroup,alignmentgroup:qf.alignmentgroup,selected:{marker:{opacity:qf.selected.marker.opacity,color:qf.selected.marker.color,editType:"style"},textfont:qf.selected.textfont,editType:"style"},unselected:{marker:{opacity:qf.unselected.marker.opacity,color:qf.unselected.marker.color,editType:"style"},textfont:qf.unselected.textfont,editType:"style"},zorder:qf.zorder}});var UI=ye((Glr,cye)=>{"use strict";cye.exports={barmode:{valType:"enumerated",values:["stack","group","overlay","relative"],dflt:"group",editType:"calc"},barnorm:{valType:"enumerated",values:["","fraction","percent"],dflt:"",editType:"calc"},bargap:{valType:"number",min:0,max:1,editType:"calc"},bargroupgap:{valType:"number",min:0,max:1,dflt:0,editType:"calc"},barcornerradius:{valType:"any",editType:"calc"}}});var VI=ye((Hlr,dye)=>{"use strict";var n1t=ka(),fye=pv().hasColorscale,hye=Qh(),a1t=Dr().coercePattern;dye.exports=function(t,r,n,i,a){var o=n("marker.color",i),s=fye(t,"marker");s&&hye(t,r,a,n,{prefix:"marker.",cLetter:"c"}),n("marker.line.color",n1t.defaultLine),fye(t,"marker.line")&&hye(t,r,a,n,{prefix:"marker.line.",cLetter:"c"}),n("marker.line.width"),n("marker.opacity"),a1t(n,"marker.pattern",o,s),n("selected.marker.color"),n("unselected.marker.color")}});var r0=ye((jlr,_ye)=>{"use strict";var vye=Eo(),AT=Dr(),pye=ka(),o1t=qa(),s1t=eT(),l1t=Ig(),u1t=VI(),c1t=Hb(),gye=Lm(),GI=AT.coerceFont;function f1t(e,t,r,n){function i(u,c){return AT.coerce(e,t,gye,u,c)}var a=s1t(e,t,n,i);if(!a){t.visible=!1;return}l1t(e,t,n,i),i("xhoverformat"),i("yhoverformat"),i("zorder"),i("orientation",t.x&&!t.y?"h":"v"),i("base"),i("offset"),i("width"),i("text"),i("hovertext"),i("hovertemplate"),i("hovertemplatefallback");var o=i("textposition");yye(e,t,n,i,o,{moduleHasSelected:!0,moduleHasUnselected:!0,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),u1t(e,t,i,r,n);var s=(t.marker.line||{}).color,l=o1t.getComponentMethod("errorbars","supplyDefaults");l(e,t,s||pye.defaultLine,{axis:"y"}),l(e,t,s||pye.defaultLine,{axis:"x",inherit:"y"}),AT.coerceSelectionMarkerOpacity(t,i)}function h1t(e,t){var r,n;function i(s,l){return AT.coerce(n._input,n,gye,s,l)}for(var a=0;a<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=mye(o)),c1t(r,n,t,i,t.barmode)}}function mye(e){if(vye(e)){if(e=+e,e>=0)return e}else if(typeof e=="string"&&(e=e.trim(),e.slice(-1)==="%"&&vye(e.slice(0,-1))&&(e=+e.slice(0,-1),e>=0)))return e+"%"}function yye(e,t,r,n,i,a){a=a||{};var o=a.moduleHasSelected!==!1,s=a.moduleHasUnselected!==!1,l=a.moduleHasConstrain!==!1,u=a.moduleHasCliponaxis!==!1,c=a.moduleHasTextangle!==!1,f=a.moduleHasInsideanchor!==!1,h=!!a.hasPathbar,d=Array.isArray(i)||i==="auto",v=d||i==="inside",_=d||i==="outside";if(v||_){var b=GI(n,"textfont",r.font),p=AT.extendFlat({},b),k=e.textfont&&e.textfont.color,E=!k;if(E&&delete p.color,GI(n,"insidetextfont",p),h){var S=AT.extendFlat({},b);E&&delete S.color,GI(n,"pathbar.textfont",S)}_&&GI(n,"outsidetextfont",b),o&&n("selected.textfont.color"),s&&n("unselected.textfont.color"),l&&n("constraintext"),u&&n("cliponaxis"),c&&n("textangle"),n("texttemplate"),n("texttemplatefallback")}v&&f&&n("insidetextanchor")}_ye.exports={supplyDefaults:f1t,crossTraceDefaults:h1t,handleText:yye,validateCornerradius:mye}});var SV=ye((Wlr,xye)=>{"use strict";var d1t=qa(),v1t=ho(),p1t=Dr(),g1t=UI(),m1t=r0().validateCornerradius;xye.exports=function(e,t,r){function n(_,b){return p1t.coerce(e,t,g1t,_,b)}for(var i=!1,a=!1,o=!1,s={},l=n("barmode"),u=l==="group",c=0;c<r.length;c++){var f=r[c];if(d1t.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=v1t.getFromId({_fullLayout:t},f[f.orientation==="v"?"xaxis":"yaxis"]);d.type!=="category"&&(a=!0)}}if(!i){delete t.barmode;return}l!=="overlay"&&n("barnorm"),n("bargap",a&&!o?0:.2),n("bargroupgap");var v=n("barcornerradius");t.barcornerradius=m1t(v)}});var g4=ye((Xlr,bye)=>{"use strict";var ST=Dr();bye.exports=function(t,r){for(var n=0;n<t.length;n++)t[n].i=n;ST.mergeArray(r.text,t,"tx"),ST.mergeArray(r.hovertext,t,"htx");var i=r.marker;if(i){ST.mergeArray(i.opacity,t,"mo",!0),ST.mergeArray(i.color,t,"mc");var a=i.line;a&&(ST.mergeArray(a.color,t,"mlc"),ST.mergeArrayCastPositive(a.width,t,"mlw"))}}});var Eye=ye((Zlr,Mye)=>{"use strict";var wye=ho(),Tye=Dg(),Aye=pv().hasColorscale,Sye=gv(),y1t=g4(),_1t=z0();Mye.exports=function(t,r){var n=wye.getFromId(t,r.xaxis||"x"),i=wye.getFromId(t,r.yaxis||"y"),a,o,s,l,u,c,f={msUTC:!!(r.base||r.base===0)};r.orientation==="h"?(a=n.makeCalcdata(r,"x",f),s=i.makeCalcdata(r,"y"),l=Tye(r,i,"y",s),u=!!r.yperiodalignment,c="y"):(a=i.makeCalcdata(r,"y",f),s=n.makeCalcdata(r,"x"),l=Tye(r,n,"x",s),u=!!r.xperiodalignment,c="x"),o=l.vals;for(var h=Math.min(o.length,a.length),d=new Array(h),v=0;v<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 Aye(r,"marker")&&Sye(t,r,{vals:r.marker.color,containerStr:"marker",cLetter:"c"}),Aye(r,"marker.line")&&Sye(t,r,{vals:r.marker.line.color,containerStr:"marker.line",cLetter:"c"}),y1t(d,r),_1t(d,r),d}});var bv=ye((Ylr,Cye)=>{"use strict";var x1t=Oa(),b1t=Dr();function w1t(e,t,r){var n=e._fullLayout,i=n["_"+r+"Text_minsize"];if(i){var a=n.uniformtext.mode==="hide",o;switch(r){case"funnelarea":case"pie":case"sunburst":o="g.slice";break;case"treemap":case"icicle":o="g.slice, g.pathbar";break;default:o="g.points > g.point"}t.selectAll(o).each(function(s){var l=s.transform;if(l){l.scale=a&&l.hide?0:i/l.fontSize;var u=x1t.select(this).select("text");b1t.setTransormAndDisplay(u,l)}})}}function T1t(e,t,r){if(r.uniformtext.mode){var n=kye(e),i=r.uniformtext.minsize,a=t.scale*t.fontSize;t.hide=a<i,r[n]=r[n]||1/0,t.hide||(r[n]=Math.min(r[n],Math.max(a,i)))}}function A1t(e,t){var r=kye(e);t[r]=void 0}function kye(e){return"_"+e+"Text_minsize"}Cye.exports={recordMinTextSize:T1t,clearMinTextSize:A1t,resizeText:w1t}});var HI=ye(r2=>{"use strict";var S1t=Eo(),M1t=cd(),Lye=Dr().isArrayOrTypedArray;r2.coerceString=function(e,t,r){if(typeof t=="string"){if(t||!e.noBlank)return t}else if((typeof t=="number"||t===!0)&&!e.strict)return String(t);return r!==void 0?r:e.dflt};r2.coerceNumber=function(e,t,r){if(S1t(t)){t=+t;var n=e.min,i=e.max,a=n!==void 0&&t<n||i!==void 0&&t>i;if(!a)return t}return r!==void 0?r:e.dflt};r2.coerceColor=function(e,t,r){return M1t(t).isValid()?t:r!==void 0?r:e.dflt};r2.coerceEnumerated=function(e,t,r){return e.coerceNumber&&(t=+t),e.values.indexOf(t)!==-1?t:r!==void 0?r:e.dflt};r2.getValue=function(e,t){var r;return Lye(e)?t<e.length&&(r=e[t]):r=e,r};r2.getLineWidth=function(e,t){var r=0<t.mlw?t.mlw:Lye(e.marker.line.width)?0:e.marker.line.width;return r}});var N0=ye((Jlr,Uye)=>{"use strict";var m4=Oa(),E1t=ka(),y4=So(),Pye=Dr(),Iye=qa(),Rye=bv().resizeText,MV=Lm(),k1t=MV.textfont,C1t=MV.insidetextfont,L1t=MV.outsidetextfont,Qd=HI();function P1t(e){var t=m4.select(e).selectAll('g[class^="barlayer"]').selectAll("g.trace");Rye(e,t,"bar");var r=t.size(),n=e._fullLayout;t.style("opacity",function(i){return i[0].trace.opacity}).each(function(i){(n.barmode==="stack"&&r>1||n.bargap===0&&n.bargroupgap===0&&!i[0].trace.marker.line.width)&&m4.select(this).attr("shape-rendering","crispEdges")}),t.selectAll("g.points").each(function(i){var a=m4.select(this),o=i[0].trace;Dye(a,o,e)}),Iye.getComponentMethod("errorbars","style")(t)}function Dye(e,t,r){y4.pointStyle(e.selectAll("path"),t,r),Fye(e,t,r)}function Fye(e,t,r){e.selectAll("text").each(function(n){var i=m4.select(this),a=Pye.ensureUniformFontSize(r,zye(i,n,t,r));y4.font(i,a)})}function I1t(e,t,r){var n=t[0].trace;n.selectedpoints?R1t(r,n,e):(Dye(r,n,e),Iye.getComponentMethod("errorbars","style")(r))}function R1t(e,t,r){y4.selectedPointStyle(e.selectAll("path"),t),D1t(e.selectAll("text"),t,r)}function D1t(e,t,r){e.each(function(n){var i=m4.select(this),a;if(n.selected){a=Pye.ensureUniformFontSize(r,zye(i,n,t,r));var o=t.selected.textfont&&t.selected.textfont.color;o&&(a.color=o),y4.font(i,a)}else y4.selectedTextStyle(i,t)})}function zye(e,t,r,n){var i=n._fullLayout.font,a=r.textfont;if(e.classed("bartext-inside")){var o=Nye(t,r);a=qye(r,t.i,i,o)}else e.classed("bartext-outside")&&(a=Bye(r,t.i,i));return a}function Oye(e,t,r){return EV(k1t,e.textfont,t,r)}function qye(e,t,r,n){var i=Oye(e,t,r),a=e._input.textfont===void 0||e._input.textfont.color===void 0||Array.isArray(e.textfont.color)&&e.textfont.color[t]===void 0;return a&&(i={color:E1t.contrast(n),family:i.family,size:i.size,weight:i.weight,style:i.style,variant:i.variant,textcase:i.textcase,lineposition:i.lineposition,shadow:i.shadow}),EV(C1t,e.insidetextfont,t,i)}function Bye(e,t,r){var n=Oye(e,t,r);return EV(L1t,e.outsidetextfont,t,n)}function EV(e,t,r,n){t=t||{};var i=Qd.getValue(t.family,r),a=Qd.getValue(t.size,r),o=Qd.getValue(t.color,r),s=Qd.getValue(t.weight,r),l=Qd.getValue(t.style,r),u=Qd.getValue(t.variant,r),c=Qd.getValue(t.textcase,r),f=Qd.getValue(t.lineposition,r),h=Qd.getValue(t.shadow,r);return{family:Qd.coerceString(e.family,i,n.family),size:Qd.coerceNumber(e.size,a,n.size),color:Qd.coerceColor(e.color,o,n.color),weight:Qd.coerceString(e.weight,s,n.weight),style:Qd.coerceString(e.style,l,n.style),variant:Qd.coerceString(e.variant,u,n.variant),textcase:Qd.coerceString(e.variant,c,n.textcase),lineposition:Qd.coerceString(e.variant,f,n.lineposition),shadow:Qd.coerceString(e.variant,h,n.shadow)}}function Nye(e,t){return t.type==="waterfall"?t[e.dir].marker.color:e.mcc||e.mc||t.marker.color}Uye.exports={style:P1t,styleTextPoints:Fye,styleOnSelect:I1t,getInsideTextFont:qye,getOutsideTextFont:Bye,getBarColor:Nye,resizeText:Rye}});var n2=ye(($lr,Yye)=>{"use strict";var jI=Oa(),WI=Eo(),Fd=Dr(),F1t=ru(),z1t=ka(),T_=So(),O1t=qa(),XI=ho().tickText,Vye=bv(),q1t=Vye.recordMinTextSize,B1t=Vye.clearMinTextSize,kV=N0(),MT=HI(),N1t=e2(),Gye=Lm(),U1t=Gye.text,V1t=Gye.textposition,G1t=ip().appendArrayPointValue,Gv=N1t.TEXTPAD;function H1t(e){return e.id}function j1t(e){if(e.ids)return H1t}function CV(e){return(e>0)-(e<0)}function Pm(e,t){return e<t?1:-1}function W1t(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 Hye(e,t,r,n){if(!t.uniformtext.mode&&jye(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 jye(e){return e&&e.duration>0}function X1t(e,t,r,n,i,a){var o=t.xaxis,s=t.yaxis,l=e._fullLayout,u=e._context.staticPlot;i||(i={mode:l.barmode,norm:l.barmode,gap:l.bargap,groupgap:l.bargroupgap},B1t("bar",l));var c=Fd.makeTraceGroups(n,r,"trace bars").each(function(f){var h=jI.select(this),d=f[0].trace,v=f[0].t,_=d.type==="waterfall",b=d.type==="funnel",p=d.type==="histogram",k=d.type==="bar",E=k||b,S=0;_&&d.connector.visible&&d.connector.mode==="between"&&(S=d.connector.line.width/2);var L=d.orientation==="h",x=jye(i),C=Fd.ensureSingle(h,"g","points"),M=j1t(d),g=C.selectAll("g.point").data(Fd.identity,M);g.enter().append("g").classed("point",!0),g.exit().remove(),g.each(function(T,z){var O=jI.select(this),V=W1t(T,o,s,L),G=V[0][0],Z=V[0][1],j=V[1][0],N=V[1][1],H=(L?Z-G:N-j)===0;H&&E&&MT.getLineWidth(d,T)&&(H=!1),H||(H=!WI(G)||!WI(Z)||!WI(j)||!WI(N)),T.isBlank=H,H&&(L?Z=G:N=j),S&&!H&&(L?(G-=Pm(G,Z)*S,Z+=Pm(G,Z)*S):(j-=Pm(j,N)*S,N+=Pm(j,N)*S));var te,oe;if(d.type==="waterfall"){if(!H){var _e=d[T.dir].marker;te=_e.line.width,oe=_e.color}}else te=MT.getLineWidth(d,T),oe=T.mc||d.marker.color;function Ee($e){var St=jI.round(te/2%1,2);return i.gap===0&&i.groupgap===0?jI.round(Math.round($e)-St,2):$e}function Ce($e,St,Qt){return Qt&&$e===St?$e:Math.abs($e-St)>=2?Ee($e):$e>St?Math.ceil($e):Math.floor($e)}var me=z1t.opacity(oe),ie=me<1||te>.01?Ee:Ce;e._context.staticPlot||(G=ie(G,Z,L),Z=ie(Z,G,L),j=ie(j,N,!L),N=ie(N,j,!L));var Se=L?o.c2p:s.c2p,Le;T.s0>0?Le=T._sMax:T.s0<0?Le=T._sMin:Le=T.s1>0?T._sMax:T._sMin;function Ae($e,St){if(!$e)return 0;var Qt=Math.abs(L?N-j:Z-G),Vt=Math.abs(L?Z-G:N-j),_t=ie(Math.abs(Se(Le,!0)-Se(0,!0))),It=T.hasB?Math.min(Qt/2,Vt/2):Math.min(Qt/2,_t),mt;if(St==="%"){var er=Math.min(50,$e);mt=Qt*(er/100)}else mt=$e;return ie(Math.max(Math.min(mt,It),0))}var Fe=k||p?Ae(v.cornerradiusvalue,v.cornerradiusform):0,Pe,ge,Re="M"+G+","+j+"V"+N+"H"+Z+"V"+j+"Z",ce=0;if(Fe&&T.s){var Ze=CV(T.s0)===0||CV(T.s)===CV(T.s0)?T.s1:T.s0;if(ce=ie(T.hasB?0:Math.abs(Se(Le,!0)-Se(Ze,!0))),ce<Fe){var ut=Pm(G,Z),pt=Pm(j,N),Zt=ut===-pt?1:0;if(L)if(T.hasB)Pe="M"+(G+Fe*ut)+","+j+"A "+Fe+","+Fe+" 0 0 "+Zt+" "+G+","+(j+Fe*pt)+"V"+(N-Fe*pt)+"A "+Fe+","+Fe+" 0 0 "+Zt+" "+(G+Fe*ut)+","+N+"H"+(Z-Fe*ut)+"A "+Fe+","+Fe+" 0 0 "+Zt+" "+Z+","+(N-Fe*pt)+"V"+(j+Fe*pt)+"A "+Fe+","+Fe+" 0 0 "+Zt+" "+(Z-Fe*ut)+","+j+"Z";else{ge=Math.abs(Z-G)+ce;var st=ge<Fe?Fe-Math.sqrt(ge*(2*Fe-ge)):0,lt=ce>0?Math.sqrt(ce*(2*Fe-ce)):0,Gt=ut>0?Math.max:Math.min;Pe="M"+G+","+j+"V"+(N-st*pt)+"H"+Gt(Z-(Fe-ce)*ut,G)+"A "+Fe+","+Fe+" 0 0 "+Zt+" "+Z+","+(N-Fe*pt-lt)+"V"+(j+Fe*pt+lt)+"A "+Fe+","+Fe+" 0 0 "+Zt+" "+Gt(Z-(Fe-ce)*ut,G)+","+(j+st*pt)+"Z"}else if(T.hasB)Pe="M"+(G+Fe*ut)+","+j+"A "+Fe+","+Fe+" 0 0 "+Zt+" "+G+","+(j+Fe*pt)+"V"+(N-Fe*pt)+"A "+Fe+","+Fe+" 0 0 "+Zt+" "+(G+Fe*ut)+","+N+"H"+(Z-Fe*ut)+"A "+Fe+","+Fe+" 0 0 "+Zt+" "+Z+","+(N-Fe*pt)+"V"+(j+Fe*pt)+"A "+Fe+","+Fe+" 0 0 "+Zt+" "+(Z-Fe*ut)+","+j+"Z";else{ge=Math.abs(N-j)+ce;var Nt=ge<Fe?Fe-Math.sqrt(ge*(2*Fe-ge)):0,Jt=ce>0?Math.sqrt(ce*(2*Fe-ce)):0,sr=pt>0?Math.max:Math.min;Pe="M"+(G+Nt*ut)+","+j+"V"+sr(N-(Fe-ce)*pt,j)+"A "+Fe+","+Fe+" 0 0 "+Zt+" "+(G+Fe*ut-Jt)+","+N+"H"+(Z-Fe*ut+Jt)+"A "+Fe+","+Fe+" 0 0 "+Zt+" "+(Z-Nt*ut)+","+sr(N-(Fe-ce)*pt,j)+"V"+j+"Z"}}else Pe=Re}else Pe=Re;var wr=Hye(Fd.ensureSingle(O,"path"),l,i,a);if(wr.style("vector-effect",u?"none":"non-scaling-stroke").attr("d",isNaN((Z-G)*(N-j))||H&&e._context.staticPlot?"M0,0Z":Pe).call(T_.setClipUrl,t.layerClipId,e),!l.uniformtext.mode&&x){var cr=T_.makePointStyleFns(d);T_.singlePointStyle(T,wr,d,cr,e)}Z1t(e,t,O,f,z,G,Z,j,N,Fe,ce,i,a),t.layerClipId&&T_.hideOutsideRangePoint(T,O.select("text"),o,s,d.xcalendar,d.ycalendar)});var P=d.cliponaxis===!1;T_.setClipUrl(h,P?null:t.layerClipId,e)});O1t.getComponentMethod("errorbars","plot")(e,c,t,i)}function Z1t(e,t,r,n,i,a,o,s,l,u,c,f,h){var d=t.xaxis,v=t.yaxis,_=e._fullLayout,b;function p(ge,Re,ce){var Ze=Fd.ensureSingle(ge,"text").text(Re).attr({class:"bartext bartext-"+b,"text-anchor":"middle","data-notex":1}).call(T_.font,ce).call(F1t.convertToTspans,e);return Ze}var k=n[0].trace,E=k.orientation==="h",S=J1t(_,n,i,d,v);b=$1t(k,i);var L=f.mode==="stack"||f.mode==="relative",x=n[i],C=!L||x._outmost,M=x.hasB,g=u&&u-c>Gv;if(!S||b==="none"||(x.isBlank||a===o||s===l)&&(b==="auto"||b==="inside")){r.select("text").remove();return}var P=_.font,T=kV.getBarColor(n[i],k),z=kV.getInsideTextFont(k,i,P,T),O=kV.getOutsideTextFont(k,i,P),V=k.insidetextanchor||"end",G=r.datum();E?d.type==="log"&&G.s0<=0&&(d.range[0]<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),j=Math.abs(l-s),N=Z-2*Gv,H=j-2*Gv,te,oe,_e,Ee,Ce;if(b==="outside"&&!C&&!x.hasB&&(b="inside"),b==="auto")if(C){b="inside",Ce=Fd.ensureUniformFontSize(e,z),te=p(r,S,Ce),oe=T_.bBox(te.node()),_e=oe.width,Ee=oe.height;var me=_e>0&&Ee>0,ie;g?M?ie=i2(N-2*u,H,_e,Ee,E)||i2(N,H-2*u,_e,Ee,E):E?ie=i2(N-(u-c),H,_e,Ee,E)||i2(N,H-2*(u-c),_e,Ee,E):ie=i2(N,H-(u-c),_e,Ee,E)||i2(N-2*(u-c),H,_e,Ee,E):ie=i2(N,H,_e,Ee,E),me&&ie?b="inside":(b="outside",te.remove(),te=null)}else b="inside";if(!te){Ce=Fd.ensureUniformFontSize(e,b==="outside"?O:z),te=p(r,S,Ce);var Se=te.attr("transform");if(te.attr("transform",""),oe=T_.bBox(te.node()),_e=oe.width,Ee=oe.height,te.attr("transform",Se),_e<=0||Ee<=0){te.remove();return}}var Le=k.textangle,Ae,Fe;b==="outside"?(Fe=k.constraintext==="both"||k.constraintext==="outside",Ae=K1t(a,o,s,l,oe,{isHorizontal:E,constrained:Fe,angle:Le})):(Fe=k.constraintext==="both"||k.constraintext==="inside",Ae=Zye(a,o,s,l,oe,{isHorizontal:E,constrained:Fe,angle:Le,anchor:V,hasB:M,r:u,overhead:c})),Ae.fontSize=Ce.size,q1t(k.type==="histogram"?"bar":k.type,Ae,_),x.transform=Ae;var Pe=Hye(te,_,f,h);Fd.setTransormAndDisplay(Pe,Ae)}function i2(e,t,r,n,i){if(e<0||t<0)return!1;var a=r<=e&&n<=t,o=r<=t&&n<=e,s=i?e>=r*(t/n):t>=n*(e/r);return a||o||s}function Wye(e){return e==="auto"?0:e}function Xye(e,t){var r=Math.PI/180*t,n=Math.abs(Math.sin(r)),i=Math.abs(Math.cos(r));return{x:e.width*i+e.height*n,y:e.width*n+e.height*i}}function Zye(e,t,r,n,i,a){var o=!!a.isHorizontal,s=!!a.constrained,l=a.angle||0,u=a.anchor,c=u==="end",f=u==="start",h=a.leftToRight||0,d=(h+1)/2,v=1-d,_=a.hasB,b=a.r,p=a.overhead,k=i.width,E=i.height,S=Math.abs(t-e),L=Math.abs(n-r),x=S>2*Gv&&L>2*Gv?Gv:0;S-=2*x,L-=2*x;var C=Wye(l);l==="auto"&&!(k<=S&&E<=L)&&(k>S||E>L)&&(!(k>L||E>S)||k<E!=S<L)&&(C+=90);var M=Xye(i,C),g,P;if(b&&b-p>Gv){var T=Y1t(e,t,r,n,M,b,p,o,_);g=T.scale,P=T.pad}else g=1,s&&(g=Math.min(1,S/M.x,L/M.y)),P=0;var z=i.left*v+i.right*d,O=(i.top+i.bottom)/2,V=(e+Gv)*v+(t-Gv)*d,G=(r+n)/2,Z=0,j=0;if(f||c){var N=(o?M.x:M.y)/2;b&&(c||_)&&(x+=P);var H=o?Pm(e,t):Pm(r,n);o?f?(V=e+H*x,Z=-H*N):(V=t-H*x,Z=H*N):f?(G=r+H*x,j=-H*N):(G=n-H*x,j=H*N)}return{textX:z,textY:O,targetX:V,targetY:G,anchorX:Z,anchorY:j,scale:g,rotate:C}}function Y1t(e,t,r,n,i,a,o,s,l){var u=Math.max(0,Math.abs(t-e)-2*Gv),c=Math.max(0,Math.abs(n-r)-2*Gv),f=a-Gv,h=o?f-Math.sqrt(f*f-(f-o)*(f-o)):f,d=l?f*2:s?f-o:2*h,v=l?f*2:s?2*h:f-o,_,b,p,k,E;return i.y/i.x>=c/(u-d)?k=c/i.y:i.y/i.x<=(c-v)/u?k=u/i.x:!l&&s?(_=i.x*i.x+i.y*i.y/4,b=-2*i.x*(u-f)-i.y*(c/2-f),p=(u-f)*(u-f)+(c/2-f)*(c/2-f)-f*f,k=(-b+Math.sqrt(b*b-4*_*p))/(2*_)):l?(_=(i.x*i.x+i.y*i.y)/4,b=-i.x*(u/2-f)-i.y*(c/2-f),p=(u/2-f)*(u/2-f)+(c/2-f)*(c/2-f)-f*f,k=(-b+Math.sqrt(b*b-4*_*p))/(2*_)):(_=i.x*i.x/4+i.y*i.y,b=-i.x*(u/2-f)-2*i.y*(c-f),p=(u/2-f)*(u/2-f)+(c-f)*(c-f)-f*f,k=(-b+Math.sqrt(b*b-4*_*p))/(2*_)),k=Math.min(1,k),s?E=Math.max(0,f-Math.sqrt(Math.max(0,f*f-(f-(c-i.y*k)/2)*(f-(c-i.y*k)/2)))-o):E=Math.max(0,f-Math.sqrt(Math.max(0,f*f-(f-(u-i.x*k)/2)*(f-(u-i.x*k)/2)))-o),{scale:k,pad:E}}function K1t(e,t,r,n,i,a){var o=!!a.isHorizontal,s=!!a.constrained,l=a.angle||0,u=i.width,c=i.height,f=Math.abs(t-e),h=Math.abs(n-r),d;o?d=h>2*Gv?Gv:0:d=f>2*Gv?Gv:0;var v=1;s&&(v=o?Math.min(1,h/c):Math.min(1,f/u));var _=Wye(l),b=Xye(i,_),p=(o?b.x:b.y)/2,k=(i.left+i.right)/2,E=(i.top+i.bottom)/2,S=(e+t)/2,L=(r+n)/2,x=0,C=0,M=o?Pm(t,e):Pm(r,n);return o?(S=t-M*d,x=M*p):(L=n+M*d,C=-M*p),{textX:k,textY:E,targetX:S,targetY:L,anchorX:x,anchorY:C,scale:v,rotate:_}}function J1t(e,t,r,n,i){var a=t[0].trace,o=a.texttemplate,s;return o?s=Q1t(e,t,r,n,i):a.textinfo?s=e_t(t,r,n,i):s=MT.getValue(a.text,r),MT.coerceString(U1t,s)}function $1t(e,t){var r=MT.getValue(e.textposition,t);return MT.coerceEnumerated(V1t,r)}function Q1t(e,t,r,n,i){var a=t[0].trace,o=Fd.castOption(a,r,"texttemplate");if(!o)return"";var s=a.type==="histogram",l=a.type==="waterfall",u=a.type==="funnel",c=a.orientation==="h",f,h,d,v;c?(f="y",h=i,d="x",v=n):(f="x",h=n,d="y",v=i);function _(x){return XI(h,h.c2l(x),!0).text}function b(x){return XI(v,v.c2l(x),!0).text}var p=t[r],k={};k.label=p.p,k.labelLabel=k[f+"Label"]=_(p.p);var E=Fd.castOption(a,p.i,"text");(E===0||E)&&(k.text=E),k.value=p.s,k.valueLabel=k[d+"Label"]=b(p.s);var S={};G1t(S,a,p.i),(s||S.x===void 0)&&(S.x=c?k.value:k.label),(s||S.y===void 0)&&(S.y=c?k.label:k.value),(s||S.xLabel===void 0)&&(S.xLabel=c?k.valueLabel:k.labelLabel),(s||S.yLabel===void 0)&&(S.yLabel=c?k.labelLabel:k.valueLabel),l&&(k.delta=+p.rawS||p.s,k.deltaLabel=b(k.delta),k.final=p.v,k.finalLabel=b(k.final),k.initial=k.final-k.delta,k.initialLabel=b(k.initial)),u&&(k.value=p.s,k.valueLabel=b(k.value),k.percentInitial=p.begR,k.percentInitialLabel=Fd.formatPercent(p.begR),k.percentPrevious=p.difR,k.percentPreviousLabel=Fd.formatPercent(p.difR),k.percentTotal=p.sumR,k.percenTotalLabel=Fd.formatPercent(p.sumR));var L=Fd.castOption(a,p.i,"customdata");return L&&(k.customdata=L),Fd.texttemplateString({data:[S,k,a._meta],fallback:a.texttemplatefallback,labels:k,locale:e._d3locale,template:o})}function e_t(e,t,r,n){var i=e[0].trace,a=i.orientation==="h",o=i.type==="waterfall",s=i.type==="funnel";function l(L){var x=a?n:r;return XI(x,L,!0).text}function u(L){var x=a?r:n;return XI(x,+L,!0).text}var c=i.textinfo,f=e[t],h=c.split("+"),d=[],v,_=function(L){return h.indexOf(L)!==-1};if(_("label")&&d.push(l(e[t].p)),_("text")&&(v=Fd.castOption(i,f.i,"text"),(v===0||v)&&d.push(v)),o){var b=+f.rawS||f.s,p=f.v,k=p-b;_("initial")&&d.push(u(k)),_("delta")&&d.push(u(b)),_("final")&&d.push(u(p))}if(s){_("value")&&d.push(u(f.s));var E=0;_("percent initial")&&E++,_("percent previous")&&E++,_("percent total")&&E++;var S=E>1;_("percent initial")&&(v=Fd.formatPercent(f.begR),S&&(v+=" of initial"),d.push(v)),_("percent previous")&&(v=Fd.formatPercent(f.difR),S&&(v+=" of previous"),d.push(v)),_("percent total")&&(v=Fd.formatPercent(f.sumR),S&&(v+=" of total"),d.push(v))}return d.join("<br>")}Yye.exports={plot:X1t,toMoveInsideBar:Zye}});var ET=ye((Qlr,Qye)=>{"use strict";var _4=vf(),t_t=qa(),Kye=ka(),r_t=Dr().fillText,i_t=HI().getLineWidth,LV=ho().hoverLabelText,n_t=fs().BADNUM;function a_t(e,t,r,n,i){var a=Jye(e,t,r,n,i);if(a){var o=a.cd,s=o[0].trace,l=o[a.index];return a.color=$ye(s,l),t_t.getComponentMethod("errorbars","hoverInfo")(l,s,a),[a]}}function Jye(e,t,r,n,i){var a=e.cd,o=a[0].trace,s=a[0].t,l=n==="closest",u=o.type==="waterfall",c=e.maxHoverDistance,f=e.maxSpikeDistance,h,d,v,_,b,p,k;o.orientation==="h"?(h=r,d=t,v="y",_="x",b=G,p=z):(h=t,d=r,v="x",_="y",p=G,b=z);var E=o[v+"period"],S=l||E;function L(ie){return C(ie,-1)}function x(ie){return C(ie,1)}function C(ie,Se){var Le=ie.w;return ie[v]+Se*Le/2}function M(ie){return ie[v+"End"]-ie[v+"Start"]}var g=l?L:E?function(ie){return ie.p-M(ie)/2}:function(ie){return Math.min(L(ie),ie.p-s.bardelta/2)},P=l?x:E?function(ie){return ie.p+M(ie)/2}:function(ie){return Math.max(x(ie),ie.p+s.bardelta/2)};function T(ie,Se,Le){return i.finiteRange&&(Le=0),_4.inbox(ie-h,Se-h,Le+Math.min(1,Math.abs(Se-ie)/k)-1)}function z(ie){return T(g(ie),P(ie),c)}function O(ie){return T(L(ie),x(ie),f)}function V(ie){var Se=ie[_];if(u){var Le=Math.abs(ie.rawS)||0;d>0?Se+=Le:d<0&&(Se-=Le)}return Se}function G(ie){var Se=d,Le=ie.b,Ae=V(ie);return _4.inbox(Le-Se,Ae-Se,c+(Ae-Se)/(Ae-Le)-1)}function Z(ie){var Se=d,Le=ie.b,Ae=V(ie);return _4.inbox(Le-Se,Ae-Se,f+(Ae-Se)/(Ae-Le)-1)}var j=e[v+"a"],N=e[_+"a"];k=Math.abs(j.r2c(j.range[1])-j.r2c(j.range[0]));function H(ie){return(b(ie)+p(ie))/2}var te=_4.getDistanceFunction(n,b,p,H);if(_4.getClosest(a,te,e),e.index!==!1&&a[e.index].p!==n_t){S||(g=function(ie){return Math.min(L(ie),ie.p-s.bargroupwidth/2)},P=function(ie){return Math.max(x(ie),ie.p+s.bargroupwidth/2)});var oe=e.index,_e=a[oe],Ee=o.base?_e.b+_e.s:_e.s;e[_+"0"]=e[_+"1"]=N.c2p(_e[_],!0),e[_+"LabelVal"]=Ee;var Ce=s.extents[s.extents.round(_e.p)];e[v+"0"]=j.c2p(l?g(_e):Ce[0],!0),e[v+"1"]=j.c2p(l?P(_e):Ce[1],!0);var me=_e.orig_p!==void 0;return e[v+"LabelVal"]=me?_e.orig_p:_e.p,e.labelLabel=LV(j,e[v+"LabelVal"],o[v+"hoverformat"]),e.valueLabel=LV(N,e[_+"LabelVal"],o[_+"hoverformat"]),e.baseLabel=LV(N,_e.b,o[_+"hoverformat"]),e.spikeDistance=(Z(_e)+O(_e))/2,e[v+"Spike"]=j.c2p(_e.p,!0),r_t(_e,o,e),e.hovertemplate=o.hovertemplate,e}}function $ye(e,t){var r=t.mcc||e.marker.color,n=t.mlcc||e.marker.line.color,i=i_t(e,t);if(Kye.opacity(r))return r;if(Kye.opacity(n)&&i)return n}Qye.exports={hoverPoints:a_t,hoverOnBars:Jye,getTraceColor:$ye}});var t1e=ye((eur,e1e)=>{"use strict";e1e.exports=function(t,r,n){return t.x="xVal"in r?r.xVal:r.x,t.y="yVal"in r?r.yVal:r.y,r.xa&&(t.xaxis=r.xa),r.ya&&(t.yaxis=r.ya),n.orientation==="h"?(t.label=t.y,t.value=t.x):(t.label=t.x,t.value=t.y),t}});var kT=ye((tur,r1e)=>{"use strict";r1e.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=n[0].trace,s=o.type==="funnel",l=o.orientation==="h",u=[],c;if(r===!1)for(c=0;c<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:o_t(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 o_t(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 n1e=ye((rur,i1e)=>{"use strict";i1e.exports={attributes:Lm(),layoutAttributes:UI(),supplyDefaults:r0().supplyDefaults,crossTraceDefaults:r0().crossTraceDefaults,supplyLayoutDefaults:SV(),calc:Eye(),crossTraceCalc:jb().crossTraceCalc,colorbar:$d(),arraysToCalcdata:g4(),plot:n2().plot,style:N0().style,styleOnSelect:N0().styleOnSelect,hoverPoints:ET().hoverPoints,eventData:t1e(),selectPoints:kT(),moduleType:"trace",name:"bar",basePlotModule:ph(),categories:["bar-like","cartesian","svg","bar","oriented","errorBarsOK","showLegend","zoomScale"],animatable:!0,meta:{}}});var o1e=ye((iur,a1e)=>{"use strict";a1e.exports=n1e()});var x4=ye((nur,c1e)=>{"use strict";var s_t=Cg(),U0=pf(),s1e=Lm(),l_t=Lh(),l1e=df().axisHoverFormat,{hovertemplateAttrs:u_t,templatefallbackAttrs:c_t}=Ll(),zy=Ao().extendFlat,CT=U0.marker,u1e=CT.line;c1e.exports={y:{valType:"data_array",editType:"calc+clearAxisTypes"},x:{valType:"data_array",editType:"calc+clearAxisTypes"},x0:{valType:"any",editType:"calc+clearAxisTypes"},y0:{valType:"any",editType:"calc+clearAxisTypes"},dx:{valType:"number",editType:"calc"},dy:{valType:"number",editType:"calc"},xperiod:U0.xperiod,yperiod:U0.yperiod,xperiod0:U0.xperiod0,yperiod0:U0.yperiod0,xperiodalignment:U0.xperiodalignment,yperiodalignment:U0.yperiodalignment,xhoverformat:l1e("x"),yhoverformat:l1e("y"),name:{valType:"string",editType:"calc+clearAxisTypes"},q1:{valType:"data_array",editType:"calc+clearAxisTypes"},median:{valType:"data_array",editType:"calc+clearAxisTypes"},q3:{valType:"data_array",editType:"calc+clearAxisTypes"},lowerfence:{valType:"data_array",editType:"calc"},upperfence:{valType:"data_array",editType:"calc"},notched:{valType:"boolean",editType:"calc"},notchwidth:{valType:"number",min:0,max:.5,dflt:.25,editType:"calc"},notchspan:{valType:"data_array",editType:"calc"},boxpoints:{valType:"enumerated",values:["all","outliers","suspectedoutliers",!1],editType:"calc"},jitter:{valType:"number",min:0,max:1,editType:"calc"},pointpos:{valType:"number",min:-2,max:2,editType:"calc"},sdmultiple:{valType:"number",min:0,editType:"calc",dflt:1},sizemode:{valType:"enumerated",values:["quartiles","sd"],editType:"calc",dflt:"quartiles"},boxmean:{valType:"enumerated",values:[!0,"sd",!1],editType:"calc"},mean:{valType:"data_array",editType:"calc"},sd:{valType:"data_array",editType:"calc"},orientation:{valType:"enumerated",values:["v","h"],editType:"calc+clearAxisTypes"},quartilemethod:{valType:"enumerated",values:["linear","exclusive","inclusive"],dflt:"linear",editType:"calc"},width:{valType:"number",min:0,dflt:0,editType:"calc"},marker:{outliercolor:{valType:"color",dflt:"rgba(0, 0, 0, 0)",editType:"style"},symbol:zy({},CT.symbol,{arrayOk:!1,editType:"plot"}),opacity:zy({},CT.opacity,{arrayOk:!1,dflt:1,editType:"style"}),angle:zy({},CT.angle,{arrayOk:!1,editType:"calc"}),size:zy({},CT.size,{arrayOk:!1,editType:"calc"}),color:zy({},CT.color,{arrayOk:!1,editType:"style"}),line:{color:zy({},u1e.color,{arrayOk:!1,dflt:l_t.defaultLine,editType:"style"}),width:zy({},u1e.width,{arrayOk:!1,dflt:0,editType:"style"}),outliercolor:{valType:"color",editType:"style"},outlierwidth:{valType:"number",min:0,dflt:1,editType:"style"},editType:"style"},editType:"plot"},line:{color:{valType:"color",editType:"style"},width:{valType:"number",min:0,dflt:2,editType:"style"},editType:"plot"},fillcolor:s_t(),whiskerwidth:{valType:"number",min:0,max:1,dflt:.5,editType:"calc"},showwhiskers:{valType:"boolean",editType:"calc"},offsetgroup:s1e.offsetgroup,alignmentgroup:s1e.alignmentgroup,selected:{marker:U0.selected.marker,editType:"style"},unselected:{marker:U0.unselected.marker,editType:"style"},text:zy({},U0.text,{}),hovertext:zy({},U0.hovertext,{}),hovertemplate:u_t({}),hovertemplatefallback:c_t(),hoveron:{valType:"flaglist",flags:["boxes","points"],dflt:"boxes+points",editType:"style"},zorder:U0.zorder}});var b4=ye((aur,f1e)=>{"use strict";f1e.exports={boxmode:{valType:"enumerated",values:["group","overlay"],dflt:"overlay",editType:"calc"},boxgap:{valType:"number",min:0,max:1,dflt:.3,editType:"calc"},boxgroupgap:{valType:"number",min:0,max:1,dflt:.3,editType:"calc"}}});var T4=ye((our,p1e)=>{"use strict";var V0=Dr(),f_t=qa(),h_t=ka(),d_t=Ig(),v_t=Hb(),h1e=R3(),w4=x4();function p_t(e,t,r,n){function i(v,_){return V0.coerce(e,t,w4,v,_)}if(d1e(e,t,i,n),t.visible!==!1){d_t(e,t,n,i),i("xhoverformat"),i("yhoverformat");var a=t._hasPreCompStats;a&&(i("lowerfence"),i("upperfence")),i("line.color",(e.marker||{}).color||r),i("line.width"),i("fillcolor",h_t.addOpacity(t.line.color,.5));var o=!1;if(a){var s=i("mean"),l=i("sd");s&&s.length&&(o=!0,l&&l.length&&(o="sd"))}i("whiskerwidth");var u=i("sizemode"),c;u==="quartiles"&&(c=i("boxmean",o)),i("showwhiskers",u==="quartiles"),(u==="sd"||c==="sd")&&i("sdmultiple"),i("width"),i("quartilemethod");var f=!1;if(a){var h=i("notchspan");h&&h.length&&(f=!0)}else V0.validate(e.notchwidth,w4.notchwidth)&&(f=!0);var d=i("notched",f);d&&i("notchwidth"),v1e(e,t,i,{prefix:"box"}),i("zorder")}}function d1e(e,t,r,n){function i(P){var T=0;return P&&P.length&&(T+=1,V0.isArrayOrTypedArray(P[0])&&P[0].length&&(T+=1)),T}function a(P){return V0.validate(e[P],w4[P])}var o=r("y"),s=r("x"),l;if(t.type==="box"){var u=r("q1"),c=r("median"),f=r("q3");t._hasPreCompStats=u&&u.length&&c&&c.length&&f&&f.length,l=Math.min(V0.minRowLength(u),V0.minRowLength(c),V0.minRowLength(f))}var h=i(o),d=i(s),v=h&&V0.minRowLength(o),_=d&&V0.minRowLength(s),b=n.calendar,p={autotypenumbers:n.autotypenumbers},k,E;if(t._hasPreCompStats)switch(String(d)+String(h)){case"00":var S=a("x0")||a("dx"),L=a("y0")||a("dy");L&&!S?k="h":k="v",E=l;break;case"10":k="v",E=Math.min(l,_);break;case"20":k="h",E=Math.min(l,s.length);break;case"01":k="h",E=Math.min(l,v);break;case"02":k="v",E=Math.min(l,o.length);break;case"12":k="v",E=Math.min(l,_,o.length);break;case"21":k="h",E=Math.min(l,s.length,v);break;case"11":E=0;break;case"22":var x=!1,C;for(C=0;C<s.length;C++)if(h1e(s[C],b,p)==="category"){x=!0;break}if(x)k="v",E=Math.min(l,_,o.length);else{for(C=0;C<o.length;C++)if(h1e(o[C],b,p)==="category"){x=!0;break}x?(k="h",E=Math.min(l,s.length,v)):(k="v",E=Math.min(l,_,o.length))}break}else h>0?(k="v",d>0?E=Math.min(_,v):E=Math.min(v)):d>0?(k="h",E=Math.min(_)):E=0;if(!E){t.visible=!1;return}t._length=E;var M=r("orientation",k);t._hasPreCompStats?M==="v"&&d===0?(r("x0",0),r("dx",1)):M==="h"&&h===0&&(r("y0",0),r("dy",1)):M==="v"&&d===0?r("x0"):M==="h"&&h===0&&r("y0");var g=f_t.getComponentMethod("calendars","handleTraceDefaults");g(e,t,["x","y"],n)}function v1e(e,t,r,n){var i=n.prefix,a=V0.coerce2(e,t,w4,"marker.outliercolor"),o=r("marker.line.outliercolor"),s="outliers";t._hasPreCompStats?s="all":(a||o)&&(s="suspectedoutliers");var l=r(i+"points",s);l?(r("jitter",l==="all"?.3:0),r("pointpos",l==="all"?-1.5:0),r("marker.symbol"),r("marker.opacity"),r("marker.size"),r("marker.angle"),r("marker.color",t.line.color),r("marker.line.color"),r("marker.line.width"),l==="suspectedoutliers"&&(r("marker.line.outliercolor",t.marker.color),r("marker.line.outlierwidth")),r("selected.marker.color"),r("unselected.marker.color"),r("selected.marker.size"),r("unselected.marker.size"),r("text"),r("hovertext")):delete t.marker;var u=r("hoveron");(u==="all"||u.indexOf("points")!==-1)&&(r("hovertemplate"),r("hovertemplatefallback")),V0.coerceSelectionMarkerOpacity(t,r)}function g_t(e,t){var r,n;function i(l){return V0.coerce(n._input,n,w4,l)}for(var a=0;a<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"&&v_t(r,n,t,i,s)}}}p1e.exports={supplyDefaults:p_t,crossTraceDefaults:g_t,handleSampleDefaults:d1e,handlePointsDefaults:v1e}});var ZI=ye((sur,m1e)=>{"use strict";var m_t=qa(),y_t=Dr(),__t=b4();function g1e(e,t,r,n,i){for(var a=i+"Layout",o=!1,s=0;s<r.length;s++){var l=r[s];if(m_t.traceIs(l,a)){o=!0;break}}o&&(n(i+"mode"),n(i+"gap"),n(i+"groupgap"))}function x_t(e,t,r){function n(i,a){return y_t.coerce(e,t,__t,i,a)}g1e(e,t,r,n,"box")}m1e.exports={supplyLayoutDefaults:x_t,_supply:g1e}});var RV=ye((lur,M1e)=>{"use strict";var IV=Eo(),YI=ho(),b_t=Dg(),gh=Dr(),i0=fs().BADNUM,Oy=gh._;M1e.exports=function(t,r){var n=t._fullLayout,i=YI.getFromId(t,r.xaxis||"x"),a=YI.getFromId(t,r.yaxis||"y"),o=[],s=r.type==="violin"?"_numViolins":"_numBoxes",l,u,c,f,h,d,v;r.orientation==="h"?(c=i,f="x",h=a,d="y",v=!!r.yperiodalignment):(c=a,f="y",h=i,d="x",v=!!r.xperiodalignment);var _=w_t(r,d,h,n[s]),b=_[0],p=_[1],k=gh.distinctVals(b,h),E=k.vals,S=k.minDiff/2,L,x,C,M,g,P,T=(r.boxpoints||r.points)==="all"?gh.identity:function(Zt){return Zt.v<L.lf||Zt.v>L.uf};if(r._hasPreCompStats){var z=r[f],O=function(Zt){return c.d2c((r[Zt]||[])[l])},V=1/0,G=-1/0;for(l=0;l<r._length;l++){var Z=b[l];if(IV(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"),x=[],z&&gh.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]},y1e(g,r,[l,u]),x.push(g));if(L.pts=x.sort(_1e),C=L[f]=x.map(x1e),M=C.length,L.med!==i0&&L.q1!==i0&&L.q3!==i0&&L.med>=L.q1&&L.q3>=L.med){var j=O("lowerfence");L.lf=j!==i0&&j<=L.q1?j:b1e(L,C,M);var N=O("upperfence");L.uf=N!==i0&&N>=L.q3?N:w1e(L,C,M);var H=O("mean");L.mean=H!==i0?H:M?gh.mean(C,M):(L.q1+L.q3)/2;var te=O("sd");L.sd=H!==i0&&te>=0?te:M?gh.stdev(C,M,L.mean):L.q3-L.q1,L.lo=T1e(L),L.uo=A1e(L);var oe=O("notchspan");oe=oe!==i0&&oe>0?oe:S1e(L,M),L.ln=L.med-oe,L.un=L.med+oe;var _e=L.lf,Ee=L.uf;r.boxpoints&&C.length&&(_e=Math.min(_e,C[0]),Ee=Math.max(Ee,C[M-1])),r.notched&&(_e=Math.min(_e,L.ln),Ee=Math.max(Ee,L.un)),L.min=_e,L.max=Ee}else{gh.warn(["Invalid input - make sure that q1 <= median <= q3","q1 = "+L.q1,"median = "+L.med,"q3 = "+L.q3].join(`
`));var Ce;L.med!==i0?Ce=L.med:L.q1!==i0?L.q3!==i0?Ce=(L.q1+L.q3)/2:Ce=L.q1:L.q3!==i0?Ce=L.q3:Ce=0,L.med=Ce,L.q1=L.q3=Ce,L.lf=L.uf=Ce,L.mean=L.sd=Ce,L.ln=L.un=Ce,L.min=L.max=Ce}V=Math.min(V,L.min),G=Math.max(G,L.max),L.pts2=x.filter(T),o.push(L)}}r._extremes[c._id]=YI.findExtremes(c,[V,G],{padded:!0})}else{var me=c.makeCalcdata(r,f),ie=T_t(E,S),Se=E.length,Le=A_t(Se);for(l=0;l<r._length;l++)if(P=me[l],!!IV(P)){var Ae=gh.findBin(b[l],ie);Ae>=0&&Ae<Se&&(g={v:P,i:l},y1e(g,r,l),Le[Ae].push(g))}var Fe=1/0,Pe=-1/0,ge=r.quartilemethod,Re=ge==="exclusive",ce=ge==="inclusive";for(l=0;l<Se;l++)if(Le[l].length>0){if(L={},L.pos=L[d]=E[l],x=L.pts=Le[l].sort(_1e),C=L[f]=x.map(x1e),M=C.length,L.min=C[0],L.max=C[M-1],L.mean=gh.mean(C,M),L.sd=gh.stdev(C,M,L.mean)*r.sdmultiple,L.med=gh.interp(C,.5),M%2&&(Re||ce)){var Ze,ut;Re?(Ze=C.slice(0,M/2),ut=C.slice(M/2+1)):ce&&(Ze=C.slice(0,M/2+1),ut=C.slice(M/2)),L.q1=gh.interp(Ze,.5),L.q3=gh.interp(ut,.5)}else L.q1=gh.interp(C,.25),L.q3=gh.interp(C,.75);L.lf=b1e(L,C,M),L.uf=w1e(L,C,M),L.lo=T1e(L),L.uo=A1e(L);var pt=S1e(L,M);L.ln=L.med-pt,L.un=L.med+pt,Fe=Math.min(Fe,L.ln),Pe=Math.max(Pe,L.un),L.pts2=x.filter(T),o.push(L)}r.notched&&gh.isTypedArray(me)&&(me=Array.from(me)),r._extremes[c._id]=YI.findExtremes(c,r.notched?me.concat([Fe,Pe]):me,{padded:!0})}return S_t(o,r),o.length>0?(o[0].t={num:n[s],dPos:S,posLetter:d,valLetter:f,labels:{med:Oy(t,"median:"),min:Oy(t,"min:"),q1:Oy(t,"q1:"),q3:Oy(t,"q3:"),max:Oy(t,"max:"),mean:r.boxmean==="sd"||r.sizemode==="sd"?Oy(t,"mean \xB1 \u03C3:").replace("\u03C3",r.sdmultiple===1?"\u03C3":r.sdmultiple+"\u03C3"):Oy(t,"mean:"),lf:Oy(t,"lower fence:"),uf:Oy(t,"upper fence:")}},n[s]++,o):[{t:{empty:!0}}]};function w_t(e,t,r,n){var i=t in e,a=t+"0"in e,o="d"+t in e;if(i||a&&o){var s=r.makeCalcdata(e,t),l=b_t(e,r,t,s).vals;return[l,s]}var u;a?u=e[t+"0"]:"name"in e&&(r.type==="category"||IV(e.name)&&["linear","log"].indexOf(r.type)!==-1||gh.isDateTime(e.name)&&r.type==="date")?u=e.name:u=n;for(var c=r.type==="multicategory"?r.r2c_just_indices(u):r.d2c(u,0,e[t+"calendar"]),f=e._length,h=new Array(f),d=0;d<f;d++)h[d]=c;return[h]}function T_t(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 A_t(e){for(var t=new Array(e),r=0;r<e;r++)t[r]=[];return t}var PV={text:"tx",hovertext:"htx"};function y1e(e,t,r){for(var n in PV)gh.isArrayOrTypedArray(t[n])&&(Array.isArray(r)?gh.isArrayOrTypedArray(t[n][r[0]])&&(e[PV[n]]=t[n][r[0]][r[1]]):e[PV[n]]=t[n][r])}function S_t(e,t){if(gh.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;gh.tagSelected(n,t,i)}}function _1e(e,t){return e.v-t.v}function x1e(e){return e.v}function b1e(e,t,r){return r===0?e.q1:Math.min(e.q1,t[Math.min(gh.findBin(2.5*e.q1-1.5*e.q3,t,!0)+1,r-1)])}function w1e(e,t,r){return r===0?e.q3:Math.max(e.q3,t[Math.max(gh.findBin(2.5*e.q3-1.5*e.q1,t),0)])}function T1e(e){return 4*e.q1-3*e.q3}function A1e(e){return 4*e.q3-3*e.q1}function S1e(e,t){return t===0?0:1.57*(e.q3-e.q1)/Math.sqrt(t)}});var KI=ye((uur,L1e)=>{"use strict";var E1e=ho(),M_t=Dr(),E_t=Nb().getAxisGroup,k1e=["v","h"];function k_t(e,t){for(var r=e.calcdata,n=t.xaxis,i=t.yaxis,a=0;a<k1e.length;a++){for(var o=k1e[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=M_t.distinctVals(f);(n.type==="category"||n.type==="multicategory")&&(d.minDiff=1);var v=d.minDiff/2;E1e.minDtick(n,d.minDiff,d.vals[0],!0);var _=e==="violin"?"_numViolins":"_numBoxes",b=a[_],p=a[e+"mode"]==="group"&&b>1,k=1-a[e+"gap"],E=1-a[e+"groupgap"];for(l=0;l<r.length;l++){c=i[r[l]];var S=c[0].trace,L=c[0].t,x=S.width,C=S.side,M,g,P,T;if(x)M=g=T=x/2,P=0;else if(M=v,p){var z=E_t(a,n._id)+S.orientation,O=a._alignmentOpts[z]||{},V=O[S.alignmentgroup]||{},G=Object.keys(V.offsetGroups||{}).length,Z=G||b,j=G?S._offsetIndex:L.num;g=M*k*E/Z,P=2*M*(-.5+(j+.5)/Z)*k,T=M*k/Z}else g=M*k*E,P=0,T=M;L.dPos=M,L.bPos=P,L.bdPos=g,L.wHover=T;var N,H,te=P+g,oe,_e,Ee,Ce,me,ie,Se=!!x,Le=(S.boxpoints||S.points)&&h>0;if(C==="positive"?(N=M*(x?1:.5),oe=te,H=oe=P):C==="negative"?(N=oe=P,H=M*(x?1:.5),_e=te):(N=H=M,oe=_e=te),Le){var Ae=S.pointpos,Fe=S.jitter,Pe=S.marker.size/2,ge=0;Ae+Fe>=0&&(ge=te*(Ae+Fe),ge>N?(Se=!0,me=Pe,Ee=ge):ge>oe&&(me=Pe,Ee=N)),ge<=N&&(Ee=N);var Re=0;Ae-Fe<=0&&(Re=-te*(Ae-Fe),Re>H?(Se=!0,ie=Pe,Ce=Re):Re>_e&&(ie=Pe,Ce=H)),Re<=H&&(Ce=H)}else Ee=N,Ce=H;var ce=new Array(c.length);for(u=0;u<c.length;u++)ce[u]=c[u].pos;S._extremes[o]=E1e.findExtremes(n,ce,{padded:Se,vpadminus:Ce,vpadplus:Ee,vpadLinearized:!0,ppadminus:{x:ie,y:me}[s],ppadplus:{x:me,y:ie}[s]})}}}L1e.exports={crossTraceCalc:k_t,setPositionOffset:C1e}});var JI=ye((cur,F1e)=>{"use strict";var LT=Oa(),a2=Dr(),C_t=So(),P1e=5,L_t=.01;function P_t(e,t,r,n){var i=e._context.staticPlot,a=t.xaxis,o=t.yaxis;a2.makeTraceGroups(n,r,"trace boxes").each(function(s){var l=LT.select(this),u=s[0],c=u.t,f=u.trace;if(c.wdPos=c.bdPos*f.whiskerwidth,f.visible!==!0||c.empty){l.remove();return}var h,d;f.orientation==="h"?(h=o,d=a):(h=a,d=o),I1e(l,{pos:h,val:d},f,c,i),R1e(l,{x:a,y:o},f,c),D1e(l,{pos:h,val:d},f,c)})}function I1e(e,t,r,n,i){var a=r.orientation==="h",o=t.val,s=t.pos,l=!!s.rangebreaks,u=n.bPos,c=n.wdPos||0,f=n.bPosPxOffset||0,h=r.whiskerwidth||0,d=r.showwhiskers!==!1,v=r.notched||!1,_=v?1-2*r.notchwidth:1,b,p;Array.isArray(n.bdPos)?(b=n.bdPos[0],p=n.bdPos[1]):(b=n.bdPos,p=n.bdPos);var k=e.selectAll("path.box").data(r.type!=="violin"||r.box.visible?a2.identity:[]);k.enter().append("path").style("vector-effect",i?"none":"non-scaling-stroke").attr("class","box"),k.exit().remove(),k.each(function(E){if(E.empty)return LT.select(this).attr("d","M0,0Z");var S=s.c2l(E.pos+u,!0),L=s.l2p(S-b)+f,x=s.l2p(S+p)+f,C=l?(L+x)/2:s.l2p(S)+f,M=r.whiskerwidth,g=l?L*M+(1-M)*C:s.l2p(S-c)+f,P=l?x*M+(1-M)*C:s.l2p(S+c)+f,T=s.l2p(S-b*_)+f,z=s.l2p(S+p*_)+f,O=r.sizemode==="sd",V=o.c2p(O?E.mean-E.sd:E.q1,!0),G=O?o.c2p(E.mean+E.sd,!0):o.c2p(E.q3,!0),Z=a2.constrain(O?o.c2p(E.mean,!0):o.c2p(E.med,!0),Math.min(V,G)+1,Math.max(V,G)-1),j=E.lf===void 0||r.boxpoints===!1||O,N=o.c2p(j?E.min:E.lf,!0),H=o.c2p(j?E.max:E.uf,!0),te=o.c2p(E.ln,!0),oe=o.c2p(E.un,!0);a?LT.select(this).attr("d","M"+Z+","+T+"V"+z+"M"+V+","+L+"V"+x+(v?"H"+te+"L"+Z+","+z+"L"+oe+","+x:"")+"H"+G+"V"+L+(v?"H"+oe+"L"+Z+","+T+"L"+te+","+L:"")+"Z"+(d?"M"+V+","+C+"H"+N+"M"+G+","+C+"H"+H+(h===0?"":"M"+N+","+g+"V"+P+"M"+H+","+g+"V"+P):"")):LT.select(this).attr("d","M"+T+","+Z+"H"+z+"M"+L+","+V+"H"+x+(v?"V"+te+"L"+z+","+Z+"L"+x+","+oe:"")+"V"+G+"H"+L+(v?"V"+oe+"L"+T+","+Z+"L"+L+","+te:"")+"Z"+(d?"M"+C+","+V+"V"+N+"M"+C+","+G+"V"+H+(h===0?"":"M"+g+","+N+"H"+P+"M"+g+","+H+"H"+P):""))})}function R1e(e,t,r,n){var i=t.x,a=t.y,o=n.bdPos,s=n.bPos,l=r.boxpoints||r.points;a2.seedPseudoRandom();var u=function(h){return h.forEach(function(d){d.t=n,d.trace=r}),h},c=e.selectAll("g.points").data(l?u:[]);c.enter().append("g").attr("class","points"),c.exit().remove();var f=c.selectAll("path").data(function(h){var d,v=h.pts2,_=Math.max((h.max-h.min)/10,h.q3-h.q1),b=_*1e-9,p=_*L_t,k=[],E=0,S;if(r.jitter){if(_===0)for(E=1,k=new Array(v.length),d=0;d<v.length;d++)k[d]=1;else for(d=0;d<v.length;d++){var L=Math.max(0,d-P1e),x=v[L].v,C=Math.min(v.length-1,d+P1e),M=v[C].v;l!=="all"&&(v[d].v<h.lf?M=Math.min(M,h.lf):x=Math.max(x,h.uf));var g=Math.sqrt(p*(C-L)/(M-x+b))||0;g=a2.constrain(Math.abs(g),0,1),k.push(g),E=Math.max(g,E)}S=r.jitter*2/(E||1)}for(d=0;d<v.length;d++){var P=v[d],T=P.v,z=r.jitter?S*k[d]*(a2.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(C_t.translatePoints,i,a)}function D1e(e,t,r,n){var i=t.val,a=t.pos,o=!!a.rangebreaks,s=n.bPos,l=n.bPosPxOffset||0,u=r.boxmean||(r.meanline||{}).visible,c,f;Array.isArray(n.bdPos)?(c=n.bdPos[0],f=n.bdPos[1]):(c=n.bdPos,f=n.bdPos);var h=e.selectAll("path.mean").data(r.type==="box"&&r.boxmean||r.type==="violin"&&r.box.visible&&r.meanline.visible?a2.identity:[]);h.enter().append("path").attr("class","mean").style({fill:"none","vector-effect":"non-scaling-stroke"}),h.exit().remove(),h.each(function(d){var v=a.c2l(d.pos+s,!0),_=a.l2p(v-c)+l,b=a.l2p(v+f)+l,p=o?(_+b)/2:a.l2p(v)+l,k=i.c2p(d.mean,!0),E=i.c2p(d.mean-d.sd,!0),S=i.c2p(d.mean+d.sd,!0);r.orientation==="h"?LT.select(this).attr("d","M"+k+","+_+"V"+b+(u==="sd"?"m0,0L"+E+","+p+"L"+k+","+_+"L"+S+","+p+"Z":"")):LT.select(this).attr("d","M"+_+","+k+"H"+b+(u==="sd"?"m0,0L"+p+","+E+"L"+_+","+k+"L"+p+","+S+"Z":""))})}F1e.exports={plot:P_t,plotBoxAndWhiskers:I1e,plotPoints:R1e,plotBoxMean:D1e}});var $I=ye((fur,z1e)=>{"use strict";var DV=Oa(),FV=ka(),zV=So();function I_t(e,t,r){var n=r||DV.select(e).selectAll("g.trace.boxes");n.style("opacity",function(i){return i[0].trace.opacity}),n.each(function(i){var a=DV.select(this),o=i[0].trace,s=o.line.width;function l(f,h,d,v){f.style("stroke-width",h+"px").call(FV.stroke,d).call(FV.fill,v)}var u=a.selectAll("path.box");if(o.type==="candlestick")u.each(function(f){if(!f.empty){var h=DV.select(this),d=o[f.dir];l(h,d.line.width,d.line.color,d.fillcolor),h.style("opacity",o.selectedpoints&&!f.selected?.3:1)}});else{l(u,s,o.line.color,o.fillcolor),a.selectAll("path.mean").style({"stroke-width":s,"stroke-dasharray":2*s+"px,"+s+"px"}).call(FV.stroke,o.line.color);var c=a.selectAll("path.point");zV.pointStyle(c,o,e)}})}function R_t(e,t,r){var n=t[0].trace,i=r.selectAll("path.point");n.selectedpoints?zV.selectedPointStyle(i,n):zV.pointStyle(i,n,e)}z1e.exports={style:I_t,styleOnSelect:R_t}});var qV=ye((hur,N1e)=>{"use strict";var D_t=ho(),OV=Dr(),A_=vf(),O1e=ka(),F_t=OV.fillText;function z_t(e,t,r,n){var i=e.cd,a=i[0].trace,o=a.hoveron,s=[],l;return o.indexOf("boxes")!==-1&&(s=s.concat(q1e(e,t,r,n))),o.indexOf("points")!==-1&&(l=B1e(e,t,r)),n==="closest"?l?[l]:s:(l&&s.push(l),s)}function q1e(e,t,r,n){var i=e.cd,a=e.xa,o=e.ya,s=i[0].trace,l=i[0].t,u=s.type==="violin",c,f,h,d,v,_,b,p,k,E,S,L=l.bdPos,x,C,M=l.wHover,g=function(Pe){return h.c2l(Pe.pos)+l.bPos-h.c2l(_)};u&&s.side!=="both"?(s.side==="positive"&&(k=function(Pe){var ge=g(Pe);return A_.inbox(ge,ge+M,E)},x=L,C=0),s.side==="negative"&&(k=function(Pe){var ge=g(Pe);return A_.inbox(ge-M,ge,E)},x=0,C=L)):(k=function(Pe){var ge=g(Pe);return A_.inbox(ge-M,ge+M,E)},x=C=L);var P;u?P=function(Pe){return A_.inbox(Pe.span[0]-v,Pe.span[1]-v,E)}:P=function(Pe){return A_.inbox(Pe.min-v,Pe.max-v,E)},s.orientation==="h"?(v=t,_=r,b=P,p=k,c="y",h=o,f="x",d=a):(v=r,_=t,b=k,p=P,c="x",h=a,f="y",d=o);var T=Math.min(1,L/Math.abs(h.r2c(h.range[1])-h.r2c(h.range[0])));E=e.maxHoverDistance-T,S=e.maxSpikeDistance-T;function z(Pe){return(b(Pe)+p(Pe))/2}var O=A_.getDistanceFunction(n,b,p,z);if(A_.getClosest(i,O,e),e.index===!1)return[];var V=i[e.index],G=s.line.color,Z=(s.marker||{}).color;O1e.opacity(G)&&s.line.width?e.color=G:O1e.opacity(Z)&&s.boxpoints?e.color=Z:e.color=s.fillcolor,e[c+"0"]=h.c2p(V.pos+l.bPos-C,!0),e[c+"1"]=h.c2p(V.pos+l.bPos+x,!0),e[c+"LabelVal"]=V.orig_p!==void 0?V.orig_p:V.pos;var j=c+"Spike";e.spikeDistance=z(V)*S/E,e[j]=h.c2p(V.pos,!0);var N=s.boxmean||s.sizemode==="sd"||(s.meanline||{}).visible,H=s.boxpoints||s.points,te=H&&N?["max","uf","q3","med","mean","q1","lf","min"]:H&&!N?["max","uf","q3","med","q1","lf","min"]:!H&&N?["max","q3","med","mean","q1","min"]:["max","q3","med","q1","min"],oe=d.range[1]<d.range[0];s.orientation===(oe?"v":"h")&&te.reverse();for(var _e=e.spikeDistance,Ee=e[j],Ce=[],me=0;me<te.length;me++){var ie=te[me];if(ie in V){var Se=V[ie],Le=d.c2p(Se,!0),Ae=OV.extendFlat({},e);Ae.attr=ie,Ae[f+"0"]=Ae[f+"1"]=Le,Ae[f+"LabelVal"]=Se,Ae[f+"Label"]=(l.labels?l.labels[ie]+" ":"")+D_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,Ce.push(Ae)}}e.name="",e.spikeDistance=void 0,e[j]=void 0;for(var Fe=0;Fe<Ce.length;Fe++)Ce[Fe].attr!=="med"?(Ce[Fe].name="",Ce[Fe].spikeDistance=void 0,Ce[Fe][j]=void 0):(Ce[Fe].spikeDistance=_e,Ce[Fe][j]=Ee);return Ce}function B1e(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=A_.quadrature(c,f),d=!1,v,_,b=0;b<n.length;b++){v=n[b];for(var p=0;p<(v.pts||[]).length;p++){_=v.pts[p];var k=h(_);k<=e.distance&&(e.distance=k,d=[b,p])}}if(!d)return!1;v=n[d[0]],_=v.pts[d[1]];var E=i.c2p(_.x,!0),S=a.c2p(_.y,!0),L=_.mrc||1;u=OV.extendFlat({},e,{index:_.i,color:(o.marker||{}).color,name:o.name,x0:E-L,x1:E+L,y0:S-L,y1:S+L,spikeDistance:e.distance,hovertemplate:o.hovertemplate});var x=v.orig_p,C=x!==void 0?x:v.pos,M;o.orientation==="h"?(M=a,u.xLabelVal=_.x,u.yLabelVal=C):(M=i,u.xLabelVal=C,u.yLabelVal=_.y);var g=M._id.charAt(0);return u[g+"Spike"]=M.c2p(v.pos,!0),F_t(_,o,u),u}N1e.exports={hoverPoints:z_t,hoverOnBoxes:q1e,hoverOnPoints:B1e}});var V1e=ye((dur,U1e)=>{"use strict";U1e.exports=function(t,r){return r.hoverOnBox&&(t.hoverOnBox=r.hoverOnBox),"xVal"in r&&(t.x=r.xVal),"yVal"in r&&(t.y=r.yVal),r.xa&&(t.xaxis=r.xa),r.ya&&(t.yaxis=r.ya),t}});var BV=ye((vur,G1e)=>{"use strict";G1e.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=[],s,l;if(r===!1)for(s=0;s<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 j1e=ye((pur,H1e)=>{"use strict";H1e.exports={attributes:x4(),layoutAttributes:b4(),supplyDefaults:T4().supplyDefaults,crossTraceDefaults:T4().crossTraceDefaults,supplyLayoutDefaults:ZI().supplyLayoutDefaults,calc:RV(),crossTraceCalc:KI().crossTraceCalc,plot:JI().plot,style:$I().style,styleOnSelect:$I().styleOnSelect,hoverPoints:qV().hoverPoints,eventData:V1e(),selectPoints:BV(),moduleType:"trace",name:"box",basePlotModule:ph(),categories:["cartesian","svg","symbols","oriented","box-violin","showLegend","boxLayout","zoomScale"],meta:{}}});var X1e=ye((gur,W1e)=>{"use strict";W1e.exports=j1e()});var PT=ye((mur,Y1e)=>{"use strict";var O_t=Tu(),{extendFlat:Pp}=Ao(),q_t=Gl(),{axisHoverFormat:NV}=df(),B_t=ec(),{hovertemplateAttrs:N_t,templatefallbackAttrs:Z1e,texttemplateAttrs:U_t}=Ll(),n0=pf();Y1e.exports=Pp({z:{valType:"data_array",editType:"calc"},x:Pp({},n0.x,{impliedEdits:{xtype:"array"}}),x0:Pp({},n0.x0,{impliedEdits:{xtype:"scaled"}}),dx:Pp({},n0.dx,{impliedEdits:{xtype:"scaled"}}),y:Pp({},n0.y,{impliedEdits:{ytype:"array"}}),y0:Pp({},n0.y0,{impliedEdits:{ytype:"scaled"}}),dy:Pp({},n0.dy,{impliedEdits:{ytype:"scaled"}}),xperiod:Pp({},n0.xperiod,{impliedEdits:{xtype:"scaled"}}),yperiod:Pp({},n0.yperiod,{impliedEdits:{ytype:"scaled"}}),xperiod0:Pp({},n0.xperiod0,{impliedEdits:{xtype:"scaled"}}),yperiod0:Pp({},n0.yperiod0,{impliedEdits:{ytype:"scaled"}}),xperiodalignment:Pp({},n0.xperiodalignment,{impliedEdits:{xtype:"scaled"}}),yperiodalignment:Pp({},n0.yperiodalignment,{impliedEdits:{ytype:"scaled"}}),text:{valType:"data_array",editType:"calc"},hovertext:{valType:"data_array",editType:"calc"},transpose:{valType:"boolean",dflt:!1,editType:"calc"},xtype:{valType:"enumerated",values:["array","scaled"],editType:"calc+clearAxisTypes"},ytype:{valType:"enumerated",values:["array","scaled"],editType:"calc+clearAxisTypes"},zsmooth:{valType:"enumerated",values:["fast","best",!1],dflt:!1,editType:"calc"},hoverongaps:{valType:"boolean",dflt:!0,editType:"none"},connectgaps:{valType:"boolean",editType:"calc"},xgap:{valType:"number",dflt:0,min:0,editType:"plot"},ygap:{valType:"number",dflt:0,min:0,editType:"plot"},xhoverformat:NV("x"),yhoverformat:NV("y"),zhoverformat:NV("z",1),hovertemplate:N_t(),hovertemplatefallback:Z1e(),texttemplate:U_t({arrayOk:!1,editType:"plot"},{keys:["x","y","z","text"]}),texttemplatefallback:Z1e({editType:"plot"}),textfont:B_t({editType:"plot",autoSize:!0,autoColor:!0,colorEditType:"style"}),showlegend:Pp({},q_t.showlegend,{dflt:!1}),zorder:n0.zorder},O_t("",{cLetter:"z",autoColorDflt:!1}))});var e8=ye((yur,J1e)=>{"use strict";var V_t=Eo(),QI=Dr(),G_t=qa();J1e.exports=function(t,r,n,i,a,o){var s=n("z");a=a||"x",o=o||"y";var l,u;if(s===void 0||!s.length)return 0;if(QI.isArray1D(s)){l=n(a),u=n(o);var c=QI.minRowLength(l),f=QI.minRowLength(u);if(c===0||f===0)return 0;r._length=Math.min(c,f,s.length)}else{if(l=K1e(a,n),u=K1e(o,n),!H_t(s))return 0;n("transpose"),r._length=null}var h=G_t.getComponentMethod("calendars","handleTraceDefaults");return h(t,r,[a,o],i),!0};function K1e(e,t){var r=t(e),n=r?t(e+"type","array"):"scaled";return n==="scaled"&&(t(e+"0"),t("d"+e)),r}function H_t(e){for(var t=!0,r=!1,n=!1,i,a=0;a<e.length;a++){if(i=e[a],!QI.isArrayOrTypedArray(i)){t=!1;break}i.length>0&&(r=!0);for(var o=0;o<i.length;o++)if(V_t(i[o])){n=!0;break}}return t&&r&&n}});var A4=ye((_ur,Q1e)=>{"use strict";var $1e=Dr();Q1e.exports=function(t,r){t("texttemplate"),t("texttemplatefallback");var n=$1e.extendFlat({},r.font,{color:"auto",size:"auto"});$1e.coerceFont(t,"textfont",n)}});var UV=ye((xur,e_e)=>{"use strict";e_e.exports=function(t,r,n){var i=n("zsmooth");i===!1&&(n("xgap"),n("ygap")),n("zhoverformat")}});var i_e=ye((bur,r_e)=>{"use strict";var t_e=Dr(),j_t=e8(),W_t=A4(),X_t=Ig(),Z_t=UV(),Y_t=Qh(),K_t=PT();r_e.exports=function(t,r,n,i){function a(s,l){return t_e.coerce(t,r,K_t,s,l)}var o=j_t(t,r,a,i);if(!o){r.visible=!1;return}X_t(t,r,i,a),a("xhoverformat"),a("yhoverformat"),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),W_t(a,i),Z_t(t,r,a,i),a("hoverongaps"),a("connectgaps",t_e.isArray1D(r.z)&&r.zsmooth!==!1),Y_t(t,r,i,a,{prefix:"",cLetter:"z"}),a("zorder")}});var VV=ye((wur,n_e)=>{"use strict";var IT=Eo();n_e.exports={count:function(e,t,r){return r[e]++,1},sum:function(e,t,r,n){var i=n[t];return IT(i)?(i=Number(i),r[e]+=i,i):0},avg:function(e,t,r,n,i){var a=n[t];return IT(a)&&(a=Number(a),r[e]+=a,i[e]++),0},min:function(e,t,r,n){var i=n[t];if(IT(i))if(i=Number(i),IT(r[e])){if(r[e]>i){var a=i-r[e];return r[e]=i,a}}else return r[e]=i,i;return 0},max:function(e,t,r,n){var i=n[t];if(IT(i))if(i=Number(i),IT(r[e])){if(r[e]<i){var a=i-r[e];return r[e]=i,a}}else return r[e]=i,i;return 0}}});var GV=ye((Tur,a_e)=>{"use strict";a_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 HV=ye((Aur,o_e)=>{"use strict";o_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 jV=ye((Sur,v_e)=>{"use strict";var RT=fs(),o2=RT.ONEAVGYEAR,s_e=RT.ONEAVGMONTH,r8=RT.ONEDAY,l_e=RT.ONEHOUR,u_e=RT.ONEMIN,c_e=RT.ONESEC,f_e=ho().tickIncrement;v_e.exports=function(t,r,n,i,a){var o=-1.1*r,s=-.1*r,l=t-s,u=n[0],c=n[1],f=Math.min(t8(u+s,u+l,i,a),t8(c+s,c+l,i,a)),h=Math.min(t8(u+o,u+s,i,a),t8(c+o,c+s,i,a)),d,v;if(f>h&&h<Math.abs(c-u)/4e3?(d=f,v=!1):(d=Math.min(f,h),v=!0),i.type==="date"&&d>r8){var _=d===o2?1:6,b=d===o2?"M12":"M1";return function(p,k){var E=i.c2d(p,o2,a),S=E.indexOf("-",_);S>0&&(E=E.slice(0,S));var L=i.d2c(E,0,a);if(L<p){var x=f_e(L,b,!1,a);(L+x)/2<p+t&&(L=x)}return k&&v?f_e(L,b,!0,a):L}}return function(p,k){var E=d*Math.round(p/d);return E+d/10<p&&E+d*.9<p+t&&(E+=d),k&&v&&(E-=d),E}};function t8(e,t,r,n){if(e*t<=0)return 1/0;for(var i=Math.abs(t-e),a=r.type==="date",o=h_e(i,a),s=0;s<10;s++){var l=h_e(o*80,a);if(o===l)break;if(J_t(l,e,t,a,r,n))o=l;else break}return o}function h_e(e,t){return t&&e>c_e?e>r8?e>o2*1.1?o2:e>s_e*1.1?s_e:r8:e>l_e?l_e:e>u_e?u_e:c_e:Math.pow(10,Math.floor(Math.log(e)/Math.LN10))}function J_t(e,t,r,n,i,a){if(n&&e>r8){var o=d_e(t,i,a),s=d_e(r,i,a),l=e===o2?0:1;return o[l]!==s[l]}return Math.floor(r/e)-Math.floor(t/e)>.1}function d_e(e,t,r){var n=t.c2d(e,o2,r).split("-");return n[0]===""&&(n.unshift(),n[0]="-"+n[0]),n}});var ZV=ye((Mur,__e)=>{"use strict";var WV=Eo(),Hv=Dr(),p_e=qa(),G0=ho(),{hasColorscale:g_e}=pv(),m_e=gv(),$_t=g4(),y_e=VV(),Q_t=GV(),ext=HV(),txt=jV();function rxt(e,t){var r=[],n=[],i=t.orientation==="h",a=G0.getFromId(e,i?t.yaxis:t.xaxis),o=i?"y":"x",s={x:"y",y:"x"}[o],l=t[o+"calendar"],u=t.cumulative,c,f=XV(e,t,a,o),h=f[0],d=f[1],v=typeof h.size=="string",_=[],b=v?_:h,p=[],k=[],E=[],S=0,L=t.histnorm,x=t.histfunc,C=L.indexOf("density")!==-1,M,g,P;u.enabled&&C&&(L=L.replace(/ ?density$/,""),C=!1);var T=x==="max"||x==="min",z=T?null:0,O=y_e.count,V=Q_t[L],G=!1,Z=function(ge){return a.r2c(ge,0,l)},j;for(Hv.isArrayOrTypedArray(t[s])&&x!=="count"&&(j=t[s],G=x==="avg",O=y_e[x]),c=Z(h.start),g=Z(h.end)+(c-G0.tickIncrement(c,h.size,!1,l))/1e6;c<g&&r.length<1e6&&(M=G0.tickIncrement(c,h.size,!1,l),r.push((c+M)/2),n.push(z),E.push([]),_.push(c),C&&p.push(1/(M-c)),G&&k.push(0),!(M<=c));)c=M;_.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"],H={leftGap:1/0,rightGap:1/0};N&&(e._fullLayout._roundFnOpts[N]||(e._fullLayout._roundFnOpts[N]=H),H=e._fullLayout._roundFnOpts[N]);var te=n.length,oe=!0,_e=H.leftGap,Ee=H.rightGap,Ce={};for(c=0;c<d.length;c++){var me=d[c];P=Hv.findBin(me,b),P>=0&&P<te&&(S+=O(P,c,n,j,k),oe&&E[P].length&&me!==d[E[P][0]]&&(oe=!1),E[P].push(c),Ce[c]=P,_e=Math.min(_e,me-_[P]),Ee=Math.min(Ee,_[P+1]-me))}H.leftGap=_e,H.rightGap=Ee;var ie;oe||(ie=function(ge,Re){return function(){var ce=e._fullLayout._roundFnOpts[N];return txt(ce.leftGap,ce.rightGap,_,a,l)(ge,Re)}}),G&&(S=ext(n,k)),V&&V(n,S,p),u.enabled&&axt(n,u.direction,u.currentbin);var Se=Math.min(r.length,n.length),Le=[],Ae=0,Fe=Se-1;for(c=0;c<Se;c++)if(n[c]){Ae=c;break}for(c=Se-1;c>=Ae;c--)if(n[c]){Fe=c;break}for(c=Ae;c<=Fe;c++)if(WV(r[c])&&WV(n[c])){var Pe={p:r[c],s:n[c],b:0};u.enabled||(Pe.pts=E[c],oe?Pe.ph0=Pe.ph1=E[c].length?d[E[c][0]]:r[c]:(t._computePh=!0,Pe.ph0=ie(_[c]),Pe.ph1=ie(_[c+1],!0))),Le.push(Pe)}return Le.length===1&&(Le[0].width1=G0.tickIncrement(Le[0].p,h.size,!1,l)-Le[0].p),g_e(t,"marker")&&m_e(e,t,{vals:t.marker.color,containerStr:"marker",cLetter:"c"}),g_e(t,"marker.line")&&m_e(e,t,{vals:t.marker.line.color,containerStr:"marker.line",cLetter:"c"}),$_t(Le,t),Hv.isArrayOrTypedArray(t.selectedpoints)&&Hv.tagSelected(Le,t,Ce),Le}function XV(e,t,r,n,i){var a=n+"bins",o=e._fullLayout,s=t["_"+n+"bingroup"],l=o._histogramBinOpts[s],u=o.barmode==="overlay",c,f,h,d,v,_,b,p=function(me){return r.r2c(me,0,d)},k=function(me){return r.c2r(me,0,d)},E=r.type==="date"?function(me){return me||me===0?Hv.cleanDate(me,null,d):null}:function(me){return WV(me)?Number(me):null};function S(me,ie,Se){ie[me+"Found"]?(ie[me]=E(ie[me]),ie[me]===null&&(ie[me]=Se[me])):(_[me]=ie[me]=Se[me],Hv.nestedProperty(f[0],a+"."+me).set(Se[me]))}if(t["_"+n+"autoBinFinished"])delete t["_"+n+"autoBinFinished"];else{f=l.traces;var L=[],x=!0,C=!1,M=!1;for(c=0;c<f.length;c++)if(h=f[c],h.visible){var g=l.dirs[c];v=h["_"+g+"pos0"]=r.makeCalcdata(h,g),L=Hv.concat(L,v),delete h["_"+n+"autoBinFinished"],t.visible===!0&&(x?x=!1:(delete h._autoBin,h["_"+n+"autoBinFinished"]=1),p_e.traceIs(h,"2dMap")&&(C=!0),h.type==="histogram2dcontour"&&(M=!0))}d=f[0][n+"calendar"];var P=G0.autoBin(L,r,l.nbins,C,d,l.sizeFound&&l.size),T=f[0]._autoBin={};if(_=T[l.dirs[0]]={},M&&(l.size||(P.start=k(G0.tickIncrement(p(P.start),P.size,!0,d))),l.end===void 0&&(P.end=k(G0.tickIncrement(p(P.end),P.size,!1,d)))),u&&!p_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=ixt(e,t,r,n,a)}b=h.cumulative||{},b.enabled&&b.currentbin!=="include"&&(b.direction==="decreasing"?P.start=k(G0.tickIncrement(p(P.start),P.size,!0,d)):P.end=k(G0.tickIncrement(p(P.end),P.size,!1,d))),l.size=P.size,l.sizeFound||(_.size=P.size,Hv.nestedProperty(f[0],a+".size").set(P.size)),S("start",l,P),S("end",l,P)}v=t["_"+n+"pos0"],delete t["_"+n+"pos0"];var z=t._input[a]||{},O=Hv.extendFlat({},l),V=l.start,G=r.r2l(z.start),Z=G!==void 0;if((l.startFound||Z)&&G!==r.r2l(V)){var j=Z?G:Hv.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:[j,G0.tickIncrement(j,l.size,!1,d)].map(r.l2r)},H=G0.tickFirst(N);H>r.r2l(j)&&(H=G0.tickIncrement(H,l.size,!0,d)),O.start=r.l2r(H),Z||Hv.nestedProperty(t,a+".start").set(O.start)}var te=l.end,oe=r.r2l(z.end),_e=oe!==void 0;if((l.endFound||_e)&&oe!==r.r2l(te)){var Ee=_e?oe:Hv.aggNums(Math.max,null,v);O.end=r.l2r(Ee),_e||Hv.nestedProperty(t,a+".start").set(O.end)}var Ce="autobin"+n;return t._input[Ce]===!1&&(t._input[a]=Hv.extendFlat({},t[a]||{}),delete t._input[Ce],delete t[Ce]),[O,v]}function ixt(e,t,r,n,i){var a=e._fullLayout,o=nxt(e,t),s=!1,l=1/0,u=[t],c,f,h;for(c=0;c<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=XV(e,f,r,n,!0),v=d[0],_=d[2];f["_"+n+"autoBinFinished"]=1,f["_"+n+"pos0"]=d[1],_?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"],k=0;k<p.length;k++)if(p[k]!==void 0){b[c]=p[k];break}for(isFinite(l)||(l=Hv.distinctVals(b).minDiff),c=0;c<u.length;c++){f=u[c];var E=f[n+"calendar"],S={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]=S,h=a._histogramBinOpts[f["_"+n+"bingroup"]],h&&Hv.extendFlat(h,S)}return t[i]}function nxt(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 axt(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())}}__e.exports={calc:rxt,calcAllAutoBins:XV}});var E_e=ye((Eur,M_e)=>{"use strict";var x_e=Dr(),DT=ho(),b_e=VV(),oxt=GV(),sxt=HV(),lxt=jV(),w_e=ZV().calcAllAutoBins;M_e.exports=function(t,r){var n=DT.getFromId(t,r.xaxis),i=DT.getFromId(t,r.yaxis),a=r.xcalendar,o=r.ycalendar,s=function(It){return n.r2c(It,0,a)},l=function(It){return i.r2c(It,0,o)},u=function(It){return n.c2r(It,0,a)},c=function(It){return i.c2r(It,0,o)},f,h,d,v,_=w_e(t,r,n,"x"),b=_[0],p=_[1],k=w_e(t,r,i,"y"),E=k[0],S=k[1],L=r._length;p.length>L&&p.splice(L,p.length-L),S.length>L&&S.splice(L,S.length-L);var x=[],C=[],M=[],g=typeof b.size=="string",P=typeof E.size=="string",T=[],z=[],O=g?T:b,V=P?z:E,G=0,Z=[],j=[],N=r.histnorm,H=r.histfunc,te=N.indexOf("density")!==-1,oe=H==="max"||H==="min",_e=oe?null:0,Ee=b_e.count,Ce=oxt[N],me=!1,ie=[],Se=[],Le="z"in r?r.z:"marker"in r&&Array.isArray(r.marker.color)?r.marker.color:"";Le&&H!=="count"&&(me=H==="avg",Ee=b_e[H]);var Ae=b.size,Fe=s(b.start),Pe=s(b.end)+(Fe-DT.tickIncrement(Fe,Ae,!1,a))/1e6;for(f=Fe;f<Pe;f=DT.tickIncrement(f,Ae,!1,a))C.push(_e),T.push(f),me&&M.push(0);T.push(f);var ge=C.length,Re=(f-Fe)/ge,ce=u(Fe+Re/2),Ze=E.size,ut=l(E.start),pt=l(E.end)+(ut-DT.tickIncrement(ut,Ze,!1,o))/1e6;for(f=ut;f<pt;f=DT.tickIncrement(f,Ze,!1,o)){x.push(C.slice()),z.push(f);var Zt=new Array(ge);for(h=0;h<ge;h++)Zt[h]=[];j.push(Zt),me&&Z.push(M.slice())}z.push(f);var st=x.length,lt=(f-ut)/st,Gt=c(ut+lt/2);te&&(ie=T_e(C.length,O,Re,g),Se=T_e(x.length,V,lt,P)),!g&&n.type==="date"&&(O=A_e(s,O)),!P&&i.type==="date"&&(V=A_e(l,V));var Nt=!0,Jt=!0,sr=new Array(ge),wr=new Array(st),cr=1/0,$e=1/0,St=1/0,Qt=1/0;for(f=0;f<L;f++){var Vt=p[f],_t=S[f];d=x_e.findBin(Vt,O),v=x_e.findBin(_t,V),d>=0&&d<ge&&v>=0&&v<st&&(G+=Ee(d,f,x[v],Le,Z[v]),j[v][d].push(f),Nt&&(sr[d]===void 0?sr[d]=Vt:sr[d]!==Vt&&(Nt=!1)),Jt&&(wr[v]===void 0?wr[v]=_t:wr[v]!==_t&&(Jt=!1)),cr=Math.min(cr,Vt-T[d]),$e=Math.min($e,T[d+1]-Vt),St=Math.min(St,_t-z[v]),Qt=Math.min(Qt,z[v+1]-_t))}if(me)for(v=0;v<st;v++)G+=sxt(x[v],Z[v]);if(Ce)for(v=0;v<st;v++)Ce(x[v],G,ie,Se[v]);return{x:p,xRanges:S_e(T,Nt&&sr,cr,$e,n,a),x0:ce,dx:Re,y:S,yRanges:S_e(z,Jt&&wr,St,Qt,i,o),y0:Gt,dy:lt,z:x,pts:j}};function T_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 A_e(e,t){return{start:e(t.start),end:e(t.end),size:t.size}}function S_e(e,t,r,n,i,a){var o,s=e.length-1,l=new Array(s),u=lxt(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 i8=ye((kur,L_e)=>{"use strict";var Im=Dr(),k_e=fs().BADNUM,C_e=Dg();L_e.exports=function(t,r,n,i,a,o){var s=t._length,l=r.makeCalcdata(t,i),u=n.makeCalcdata(t,a);l=C_e(t,r,i,l).vals,u=C_e(t,n,a,u).vals;var c=t.text,f=c!==void 0&&Im.isArray1D(c),h=t.hovertext,d=h!==void 0&&Im.isArray1D(h),v,_,b=Im.distinctVals(l),p=b.vals,k=Im.distinctVals(u),E=k.vals,S=[],L,x,C=E.length,M=p.length;for(v=0;v<o.length;v++)S[v]=Im.init2dArray(C,M);f&&(L=Im.init2dArray(C,M)),d&&(x=Im.init2dArray(C,M));var g=Im.init2dArray(C,M);for(v=0;v<s;v++)if(l[v]!==k_e&&u[v]!==k_e){var P=Im.findBin(l[v]+b.minDiff/2,p),T=Im.findBin(u[v]+k.minDiff/2,E);for(_=0;_<o.length;_++){var z=o[_],O=t[z],V=S[_];V[T][P]=O[v],g[T][P]=v}f&&(L[T][P]=c[v]),d&&(x[T][P]=h[v])}for(t["_"+i]=p,t["_"+a]=E,_=0;_<o.length;_++)t["_"+o[_]]=S[_];f&&(t._text=L),d&&(t._hovertext=x),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 a8=ye((Cur,P_e)=>{"use strict";var uxt=Eo(),cxt=Dr(),n8=fs().BADNUM;P_e.exports=function(t,r,n,i){var a,o,s,l,u,c;function f(p){if(uxt(p))return+p}if(r&&r.transpose){for(a=0,u=0;u<t.length;u++)a=Math.max(a,t[u].length);if(a===0)return!1;s=function(p){return p.length},l=function(p,k,E){return(p[E]||[])[k]}}else a=t.length,s=function(p,k){return p[k].length},l=function(p,k,E){return(p[k]||[])[E]};var h=function(p,k,E){return k===n8||E===n8?n8:l(p,k,E)};function d(p){if(r&&r.type!=="carpet"&&r.type!=="contourcarpet"&&p&&p.type==="category"&&r["_"+p._id.charAt(0)].length){var k=p._id.charAt(0),E={},S=r["_"+k+"CategoryMap"]||r[k];for(u=0;u<S.length;u++)E[S[u]]=u;return function(L){var x=E[p._categories[L]];return x+1?x:n8}}else return cxt.identity}var v=d(n),_=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,_(u),v(c)));return b}});var o8=ye((Lur,D_e)=>{"use strict";var fxt=Dr(),I_e=.01,hxt=[[-1,0],[1,0],[0,-1],[0,1]];function dxt(e){return .5-.25*Math.min(1,e*.5)}D_e.exports=function(t,r){var n=1,i;for(R_e(t,r),i=0;i<r.length&&!(r[i][2]<4);i++);for(r=r.slice(i),i=0;i<100&&n>I_e;i++)n=R_e(t,r,dxt(n));return n>I_e&&fxt.log("interp2d didn't converge quickly",n),t};function R_e(e,t,r){var n=0,i,a,o,s,l,u,c,f,h,d,v,_,b;for(s=0;s<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=hxt[l],c=e[a+u[0]],c&&(f=c[o+u[1]],f!==void 0&&(d===0?_=b=f:(_=Math.min(_,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>_&&(n=Math.max(n,Math.abs(e[a][o]-v)/(b-_))))}return n}});var s8=ye((Pur,F_e)=>{"use strict";var vxt=Dr().maxRowLength;F_e.exports=function(t){var r=[],n={},i=[],a=t[0],o=[],s=[0,0,0],l=vxt(t),u,c,f,h,d,v,_,b;for(c=0;c<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(_={},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&&(_[h]=[c,f,v],i.splice(d,1),b=!0);if(!b)throw"findEmpties iterated with no new neighbors";for(h in _)n[h]=_[h],r.push(_[h])}return r.sort(function(p,k){return k[2]-p[2]})}});var YV=ye((Iur,q_e)=>{"use strict";var z_e=qa(),O_e=Dr().isArrayOrTypedArray;q_e.exports=function(t,r,n,i,a,o){var s=[],l=z_e.traceIs(t,"contour"),u=z_e.traceIs(t,"histogram"),c,f,h,d=O_e(r)&&r.length>1;if(d&&!u&&o.type!=="category"){var v=r.length;if(v<=a){if(l)s=Array.from(r).slice(0,a);else if(a===1)o.type==="log"?s=[.5*r[0],2*r[0]]:s=[r[0]-.5,r[0]+.5];else if(o.type==="log"){for(s=[Math.pow(r[0],1.5)/Math.pow(r[1],.5)],h=1;h<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 _=s[s.length-1],b;if(o.type==="log")for(b=_/s[s.length-2],h=v;h<a;h++)_*=b,s.push(_);else for(b=_-s[s.length-2],h=v;h<a;h++)_+=b,s.push(_)}}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(O_e(r)&&r.length===1)c=r[0];else if(n===void 0)c=0;else{var k=o.type==="log"?o.d2c:o.r2c;c=k(n,0,p)}for(f=i||1,h=l?0:-.5;h<a;h++)s.push(c+f*h)}return s}});var c8=ye((Rur,V_e)=>{"use strict";var B_e=qa(),KV=Dr(),l8=ho(),N_e=Dg(),pxt=E_e(),gxt=gv(),mxt=i8(),yxt=a8(),_xt=o8(),xxt=s8(),u8=YV(),JV=fs().BADNUM;V_e.exports=function(t,r){var n=l8.getFromId(t,r.xaxis||"x"),i=l8.getFromId(t,r.yaxis||"y"),a=B_e.traceIs(r,"contour"),o=B_e.traceIs(r,"histogram"),s=a?"best":r.zsmooth,l,u,c,f,h,d,v,_,b,p,k;if(n._minDtick=0,i._minDtick=0,o)k=pxt(t,r),f=k.orig_x,l=k.x,u=k.x0,c=k.dx,_=k.orig_y,h=k.y,d=k.y0,v=k.dy,b=k.z;else{var E=r.z;KV.isArray1D(E)?(mxt(r,n,i,"x","y",["z"]),l=r._x,h=r._y,E=r._z):(f=r.x?n.makeCalcdata(r,"x"):[],_=r.y?i.makeCalcdata(r,"y"):[],l=N_e(r,n,"x",f).vals,h=N_e(r,i,"y",_).vals,r._x=l,r._y=h),u=r.x0,c=r.dx,d=r.y0,v=r.dy,b=yxt(E,r,n,i)}(n.rangebreaks||i.rangebreaks)&&(b=bxt(l,h,b),o||(l=U_e(l),h=U_e(h),r._x=l,r._y=h)),!o&&(a||r.connectgaps)&&(r._emptypoints=xxt(b),_xt(b,r._emptypoints));function S(O){s=r._input.zsmooth=r.zsmooth=!1,KV.warn('cannot use zsmooth: "fast": '+O)}function L(O){if(O.length>1){var V=(O[O.length-1]-O[0])/(O.length-1),G=Math.abs(V/100);for(p=0;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"&&S("log axis found"):L(l)?L(h)?r._islinear=!0:s==="fast"&&S("y scale is not linear"):s==="fast"&&S("x scale is not linear");var x=KV.maxRowLength(b),C=r.xtype==="scaled"?"":l,M=u8(r,C,u,c,x,n),g=r.ytype==="scaled"?"":h,P=u8(r,g,d,v,b.length,i);r._extremes[n._id]=l8.findExtremes(n,M),r._extremes[i._id]=l8.findExtremes(i,P);var T={x:M,y:P,z:b,text:r._text||r.text,hovertext:r._hovertext||r.hovertext};if(r.xperiodalignment&&f&&(T.orig_x=f),r.yperiodalignment&&_&&(T.orig_y=_),C&&C.length===M.length-1&&(T.xCenter=C),g&&g.length===P.length-1&&(T.yCenter=g),o&&(T.xRanges=k.xRanges,T.yRanges=k.yRanges,T.pts=k.pts),a||gxt(t,r,{vals:b,cLetter:"z"}),a&&r.contours&&r.contours.coloring==="heatmap"){var z={type:r.type==="contour"?"heatmap":"histogram2d",xcalendar:r.xcalendar,ycalendar:r.ycalendar};T.xfill=u8(z,C,u,c,x,n),T.yfill=u8(z,g,d,v,b.length,i)}return[T]};function U_e(e){for(var t=[],r=e.length,n=0;n<r;n++){var i=e[n];i!==JV&&t.push(i)}return t}function bxt(e,t,r){for(var n=[],i=-1,a=0;a<r.length;a++)if(t[a]!==JV){i++,n[i]=[];for(var o=0;o<r[a].length;o++)e[o]!==JV&&n[i].push(r[a][o])}return n}});var h8=ye(f8=>{"use strict";f8.CSS_DECLARATIONS=[["image-rendering","optimizeSpeed"],["image-rendering","-moz-crisp-edges"],["image-rendering","-o-crisp-edges"],["image-rendering","-webkit-optimize-contrast"],["image-rendering","optimize-contrast"],["image-rendering","crisp-edges"],["image-rendering","pixelated"]];f8.STYLE=f8.CSS_DECLARATIONS.map(function(e){return e.join(": ")+"; "}).join("")});var QV=ye((Fur,H_e)=>{"use strict";var G_e=h8(),wxt=So(),$V=Dr(),FT=null;function Txt(){if(FT!==null)return FT;FT=!1;var e=$V.isSafari()||$V.isMacWKWebView()||$V.isIOS();if(window.navigator.userAgent&&!e){var t=Array.from(G_e.CSS_DECLARATIONS).reverse(),r=window.CSS&&window.CSS.supports||window.supportsCSS;if(typeof r=="function")FT=t.some(function(o){return r.apply(null,o)});else{var n=wxt.tester.append("image").attr("style",G_e.STYLE),i=window.getComputedStyle(n.node()),a=i.imageRendering;FT=t.some(function(o){var s=o[1];return a===s||a===s.toLowerCase()}),n.remove()}}return FT}H_e.exports=Txt});var d8=ye((zur,Q_e)=>{"use strict";var j_e=Oa(),Axt=cd(),Sxt=qa(),Mxt=So(),Ext=ho(),H0=Dr(),W_e=ru(),kxt=nI(),Cxt=ka(),Lxt=tc().extractOpts,Pxt=tc().makeColorScaleFuncFromTrace,Ixt=Wp(),Rxt=$h(),eG=Rxt.LINE_SPACING,Dxt=QV(),Fxt=h8().STYLE,J_e="heatmap-label";function $_e(e){return e.selectAll("g."+J_e)}function X_e(e){$_e(e).remove()}Q_e.exports=function(e,t,r,n){var i=t.xaxis,a=t.yaxis;H0.makeTraceGroups(n,r,"hm").each(function(o){var s=j_e.select(this),l=o[0],u=l.trace,c=u.xgap||0,f=u.ygap||0,h=l.z,d=l.x,v=l.y,_=l.xCenter,b=l.yCenter,p=Sxt.traceIs(u,"contour"),k=p?"best":u.zsmooth,E=h.length,S=H0.maxRowLength(h),L=!1,x=!1,C,M,g,P,T,z,O,V;for(z=0;C===void 0&&z<d.length-1;)C=i.c2p(d[z]),z++;for(z=d.length-1;M===void 0&&z>0;)M=i.c2p(d[z]),z--;for(M<C&&(g=M,M=C,C=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,x=!0),p&&(_=d,b=v,d=l.xfill,v=l.yfill);var G="default";if(k?G=k==="best"?"smooth":"fast":u._islinear&&c===0&&f===0&&Dxt()&&(G="fast"),G!=="fast"){var Z=k==="best"?0:.5;C=Math.max(-Z*i._length,C),M=Math.min((1+Z)*i._length,M),P=Math.max(-Z*a._length,P),T=Math.min((1+Z)*a._length,T)}var j=Math.round(M-C),N=Math.round(T-P),H=C>=i._length||M<=0||P>=a._length||T<=0;if(H){var te=s.selectAll("image").data([]);te.exit().remove(),X_e(s);return}var oe,_e;G==="fast"?(oe=S,_e=E):(oe=j,_e=N);var Ee=document.createElement("canvas");Ee.width=oe,Ee.height=_e;var Ce=Ee.getContext("2d",{willReadFrequently:!0}),me=Pxt(u,{noNumericCheck:!0,returnArray:!0}),ie,Se;G==="fast"?(ie=L?function(fn){return S-1-fn}:H0.identity,Se=x?function(fn){return E-1-fn}:H0.identity):(ie=function(fn){return H0.constrain(Math.round(i.c2p(d[fn])-C),0,j)},Se=function(fn){return H0.constrain(Math.round(a.c2p(v[fn])-P),0,N)});var Le=Se(0),Ae=[Le,Le],Fe=L?0:1,Pe=x?0:1,ge=0,Re=0,ce=0,Ze=0,ut,pt,Zt,st,lt;function Gt(fn,yn){if(fn!==void 0){var Sn=me(fn);return Sn[0]=Math.round(Sn[0]),Sn[1]=Math.round(Sn[1]),Sn[2]=Math.round(Sn[2]),ge+=yn,Re+=Sn[0]*yn,ce+=Sn[1]*yn,Ze+=Sn[2]*yn,Sn}return[0,0,0,0]}function Nt(fn,yn,Sn,Ba){var ua=fn[Sn.bin0];if(ua===void 0)return Gt(void 0,1);var ma=fn[Sn.bin1],Wa=yn[Sn.bin0],Fa=yn[Sn.bin1],Wo=ma-ua||0,da=Wa-ua||0,Wn;return ma===void 0?Fa===void 0?Wn=0:Wa===void 0?Wn=2*(Fa-ua):Wn=(2*Fa-Wa-ua)*2/3:Fa===void 0?Wa===void 0?Wn=0:Wn=(2*ua-ma-Wa)*2/3:Wa===void 0?Wn=(2*Fa-ma-ua)*2/3:Wn=Fa+ua-ma-Wa,Gt(ua+Sn.frac*Wo+Ba.frac*(da+Sn.frac*Wn))}if(G!=="default"){var Jt=0,sr;try{sr=new Uint8Array(oe*_e*4)}catch(fn){sr=new Array(oe*_e*4)}if(G==="smooth"){var wr=_||d,cr=b||v,$e=new Array(wr.length),St=new Array(cr.length),Qt=new Array(j),Vt=_?Y_e:Z_e,_t=b?Y_e:Z_e,It,mt,er;for(z=0;z<wr.length;z++)$e[z]=Math.round(i.c2p(wr[z])-C);for(z=0;z<cr.length;z++)St[z]=Math.round(a.c2p(cr[z])-P);for(z=0;z<j;z++)Qt[z]=Vt(z,$e);for(O=0;O<N;O++)for(It=_t(O,St),mt=h[It.bin0],er=h[It.bin1],z=0;z<j;z++,Jt+=4)lt=Nt(mt,er,Qt[z],It),K_e(sr,Jt,lt)}else for(O=0;O<E;O++)for(st=h[O],Ae=Se(O),z=0;z<S;z++)lt=Gt(st[z],1),Jt=(Ae*S+ie(z))*4,K_e(sr,Jt,lt);var lr=Ce.createImageData(oe,_e);try{lr.data.set(sr)}catch(fn){var Tr=lr.data,Lr=Tr.length;for(O=0;O<Lr;O++)Tr[O]=sr[O]}Ce.putImageData(lr,0,0)}else{var ti=Math.floor(c/2),Br=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),ut=[pt,pt],z=0;z<S;z++)ut.reverse(),ut[Fe]=ie(z+1),!(ut[0]===ut[1]||ut[0]===void 0||ut[1]===void 0)&&(Zt=st[z],lt=Gt(Zt,(ut[1]-ut[0])*(Ae[1]-Ae[0])),Ce.fillStyle="rgba("+lt.join(",")+")",Ce.fillRect(ut[0]+ti,Ae[0]+Br,ut[1]-ut[0]-c,Ae[1]-Ae[0]-f))}Re=Math.round(Re/ge),ce=Math.round(ce/ge),Ze=Math.round(Ze/ge);var Vr=Axt("rgb("+Re+","+ce+","+Ze+")");e._hmpixcount=(e._hmpixcount||0)+ge,e._hmlumcount=(e._hmlumcount||0)+ge*Vr.getLuminance();var dt=s.selectAll("image").data(o);dt.enter().append("svg:image").attr({xmlns:Ixt.svg,preserveAspectRatio:"none"}),dt.attr({height:N,width:j,x:C,y:P,"xlink:href":Ee.toDataURL("image/png")}),G==="fast"&&!k&&dt.attr("style",Fxt),X_e(s);var Ge=u.texttemplate;if(Ge){var Je=Lxt(u),je={type:"linear",range:[Je.min,Je.max],_separators:i._separators,_numFormat:i._numFormat},tt=u.type==="histogram2dcontour",xt=u.type==="contour",Ie=xt?1:0,xe=xt?E-1:E,ke=xt?1:0,vt=xt?S-1:S,ir=[];for(z=Ie;z<xe;z++){var ar;if(xt)ar=l.y[z];else if(tt){if(z===0||z===E-1)continue;ar=l.y[z]}else if(l.yCenter)ar=l.yCenter[z];else{if(z+1===E&&l.y[z+1]===void 0)continue;ar=(l.y[z]+l.y[z+1])/2}var vr=Math.round(a.c2p(ar));if(!(0>vr||vr>a._length))for(O=ke;O<vt;O++){var ii;if(xt)ii=l.x[O];else if(tt){if(O===0||O===S-1)continue;ii=l.x[O]}else if(l.xCenter)ii=l.xCenter[O];else{if(O+1===S&&l.x[O+1]===void 0)continue;ii=(l.x[O]+l.x[O+1])/2}var pi=Math.round(i.c2p(ii));if(!(0>pi||pi>i._length)){var $r=kxt({x:ii,y:ar},u,e._fullLayout);$r.x=ii,$r.y=ar;var di=l.z[z][O];di===void 0?($r.z="",$r.zLabel=""):($r.z=di,$r.zLabel=Ext.tickText(je,di,"hover").text);var ji=l.text&&l.text[z]&&l.text[z][O];(ji===void 0||ji===!1)&&(ji=""),$r.text=ji;var In=H0.texttemplateString({data:[$r,u._meta],fallback:u.texttemplatefallback,labels:$r,locale:e._fullLayout._d3locale,template:Ge});if(In){var wi=In.split("<br>"),On=wi.length,qn=0;for(V=0;V<On;V++)qn=Math.max(qn,wi[V].length);ir.push({l:On,c:qn,t:In,x:pi,y:vr,z:di})}}}}var Fn=u.textfont,ra=Fn.size,la=e._fullLayout.font.size;if(!ra||ra==="auto"){var Ut=1/0,wt=1/0,rr=0,nr=0;for(V=0;V<ir.length;V++){var Er=ir[V];if(rr=Math.max(rr,Er.l),nr=Math.max(nr,Er.c),V<ir.length-1){var Xr=ir[V+1],ri=Math.abs(Xr.x-Er.x),Qr=Math.abs(Xr.y-Er.y);ri&&(Ut=Math.min(Ut,ri)),Qr&&(wt=Math.min(wt,Qr))}}!isFinite(Ut)||!isFinite(wt)?ra=la:(Ut-=c,wt-=f,Ut/=nr,wt/=rr,Ut/=eG/2,wt/=eG,ra=Math.min(Math.floor(Ut),Math.floor(wt),la))}if(ra<=0||!isFinite(ra))return;var Oi=function(fn){return fn.x},$i=function(fn){return fn.y-ra*(fn.l*eG/2-1)},tn=$_e(s).data(ir);tn.enter().append("g").classed(J_e,1).append("text").attr("text-anchor","middle").each(function(fn){var yn=j_e.select(this),Sn=Fn.color;(!Sn||Sn==="auto")&&(Sn=Cxt.contrast(fn.z===void 0?e._fullLayout.plot_bgcolor:"rgba("+me(fn.z).join()+")")),yn.attr("data-notex",1).call(W_e.positionText,Oi(fn),$i(fn)).call(Mxt.font,{family:Fn.family,size:ra,color:Sn,weight:Fn.weight,style:Fn.style,variant:Fn.variant,textcase:Fn.textcase,lineposition:Fn.lineposition,shadow:Fn.shadow}).text(fn.t).call(W_e.convertToTspans,e)})}})};function Z_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 Y_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 K_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 S_=ye((Our,exe)=>{"use strict";exe.exports={min:"zmin",max:"zmax"}});var v8=ye((qur,txe)=>{"use strict";var zxt=Oa();txe.exports=function(t){zxt.select(t).selectAll(".hm image").style("opacity",function(r){return r.trace.opacity})}});var g8=ye((Bur,ixe)=>{"use strict";var rxe=vf(),S4=Dr(),p8=S4.isArrayOrTypedArray,Oxt=ho(),qxt=tc().extractOpts;ixe.exports=function(t,r,n,i,a){a||(a={});var o=a.isContour,s=t.cd[0],l=s.trace,u=t.xa,c=t.ya,f=s.x,h=s.y,d=s.z,v=s.xCenter,_=s.yCenter,b=s.zmask,p=l.zhoverformat,k=f,E=h,S,L,x,C;if(t.index!==!1){try{x=Math.round(t.index[1]),C=Math.round(t.index[0])}catch(te){S4.error("Error hovering on heatmap, pointNumber must be [row,col], found:",t.index);return}if(x<0||x>=d[0].length||C<0||C>d.length)return}else{if(rxe.inbox(r-f[0],r-f[f.length-1],0)>0||rxe.inbox(n-h[0],n-h[h.length-1],0)>0)return;if(o){var M;for(k=[2*f[0]-f[1]],M=1;M<f.length;M++)k.push((f[M]+f[M-1])/2);for(k.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]])}x=Math.max(0,Math.min(k.length-2,S4.findBin(r,k))),C=Math.max(0,Math.min(E.length-2,S4.findBin(n,E)))}var g=u.c2p(f[x]),P=u.c2p(f[x+1]),T=c.c2p(h[C]),z=c.c2p(h[C+1]),O,V;o?(O=s.orig_x||f,V=s.orig_y||h,P=g,S=O[x],z=T,L=V[C]):(O=s.orig_x||v||f,V=s.orig_y||_||h,S=v?O[x]:(O[x]+O[x+1])/2,L=_?V[C]:(V[C]+V[C+1])/2,u&&u.type==="category"&&(S=f[x]),c&&c.type==="category"&&(L=h[C]),l.zsmooth&&(g=P=u.c2p(S),T=z=c.c2p(L)));var G=d[C][x];if(b&&!b[C][x]&&(G=void 0),!(G===void 0&&!l.hoverongaps)){var Z;p8(s.hovertext)&&p8(s.hovertext[C])?Z=s.hovertext[C][x]:p8(s.text)&&p8(s.text[C])&&(Z=s.text[C][x]);var j=qxt(l),N={type:"linear",range:[j.min,j.max],hoverformat:p,_separators:u._separators,_numFormat:u._numFormat},H=Oxt.tickText(N,G,"hover").text;return[S4.extendFlat(t,{index:l._after2before?l._after2before[C][x]:[C,x],distance:t.maxHoverDistance,spikeDistance:t.maxSpikeDistance,x0:g,x1:P,y0:T,y1:z,xLabelVal:S,yLabelVal:L,zLabelVal:G,zLabel:H,text:Z})]}}});var axe=ye((Nur,nxe)=>{"use strict";nxe.exports={attributes:PT(),supplyDefaults:i_e(),calc:c8(),plot:d8(),colorbar:S_(),style:v8(),hoverPoints:g8(),moduleType:"trace",name:"heatmap",basePlotModule:ph(),categories:["cartesian","svg","2dMap","showLegend"],meta:{}}});var sxe=ye((Uur,oxe)=>{"use strict";oxe.exports=axe()});var tG=ye((Vur,lxe)=>{"use strict";lxe.exports=function(t,r){return{start:{valType:"any",editType:"calc"},end:{valType:"any",editType:"calc"},size:{valType:"any",editType:"calc"},editType:"calc"}}});var cxe=ye((Gur,uxe)=>{"use strict";uxe.exports={eventDataKeys:["binNumber"]}});var m8=ye((Hur,vxe)=>{"use strict";var Ip=Lm(),fxe=df().axisHoverFormat,{hovertemplateAttrs:Bxt,texttemplateAttrs:Nxt,templatefallbackAttrs:hxe}=Ll(),rG=ec(),dxe=tG(),Uxt=cxe(),iG=Ao().extendFlat;vxe.exports={x:{valType:"data_array",editType:"calc+clearAxisTypes"},y:{valType:"data_array",editType:"calc+clearAxisTypes"},xhoverformat:fxe("x"),yhoverformat:fxe("y"),text:iG({},Ip.text,{}),hovertext:iG({},Ip.hovertext,{}),orientation:Ip.orientation,histfunc:{valType:"enumerated",values:["count","sum","avg","min","max"],dflt:"count",editType:"calc"},histnorm:{valType:"enumerated",values:["","percent","probability","density","probability density"],dflt:"",editType:"calc"},cumulative:{enabled:{valType:"boolean",dflt:!1,editType:"calc"},direction:{valType:"enumerated",values:["increasing","decreasing"],dflt:"increasing",editType:"calc"},currentbin:{valType:"enumerated",values:["include","exclude","half"],dflt:"include",editType:"calc"},editType:"calc"},nbinsx:{valType:"integer",min:0,dflt:0,editType:"calc"},xbins:dxe("x",!0),nbinsy:{valType:"integer",min:0,dflt:0,editType:"calc"},ybins:dxe("y",!0),autobinx:{valType:"boolean",dflt:null,editType:"calc"},autobiny:{valType:"boolean",dflt:null,editType:"calc"},bingroup:{valType:"string",dflt:"",editType:"calc"},hovertemplate:Bxt({},{keys:Uxt.eventDataKeys}),hovertemplatefallback:hxe(),texttemplate:Nxt({arrayOk:!1,editType:"plot"},{keys:["label","value"]}),texttemplatefallback:hxe({editType:"plot"}),textposition:iG({},Ip.textposition,{arrayOk:!1}),textfont:rG({arrayOk:!1,editType:"plot",colorEditType:"style"}),outsidetextfont:rG({arrayOk:!1,editType:"plot",colorEditType:"style"}),insidetextfont:rG({arrayOk:!1,editType:"plot",colorEditType:"style"}),insidetextanchor:Ip.insidetextanchor,textangle:Ip.textangle,cliponaxis:Ip.cliponaxis,constraintext:Ip.constraintext,marker:Ip.marker,offsetgroup:Ip.offsetgroup,alignmentgroup:Ip.alignmentgroup,selected:Ip.selected,unselected:Ip.unselected,zorder:Ip.zorder}});var yxe=ye((jur,mxe)=>{"use strict";var pxe=qa(),M4=Dr(),gxe=ka(),Vxt=r0().handleText,Gxt=VI(),Hxt=m8();mxe.exports=function(t,r,n,i){function a(k,E){return M4.coerce(t,r,Hxt,k,E)}var o=a("x"),s=a("y"),l=a("cumulative.enabled");l&&(a("cumulative.direction"),a("cumulative.currentbin")),a("text");var u=a("textposition");Vxt(t,r,i,a,u,{moduleHasSelected:!0,moduleHasUnselected:!0,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),a("xhoverformat"),a("yhoverformat");var c=a("orientation",s&&!o?"h":"v"),f=c==="v"?"x":"y",h=c==="v"?"y":"x",d=o&&s?Math.min(M4.minRowLength(o)&&M4.minRowLength(s)):M4.minRowLength(r[f]||[]);if(!d){r.visible=!1;return}r._length=d;var v=pxe.getComponentMethod("calendars","handleTraceDefaults");v(t,r,["x","y"],i);var _=r[h];_&&a("histfunc"),a("histnorm"),a("autobin"+f),Gxt(t,r,a,n,i),M4.coerceSelectionMarkerOpacity(r,a);var b=(r.marker.line||{}).color,p=pxe.getComponentMethod("errorbars","supplyDefaults");p(t,r,b||gxe.defaultLine,{axis:"y"}),p(t,r,b||gxe.defaultLine,{axis:"x",inherit:"y"}),a("zorder")}});var _8=ye((Wur,bxe)=>{"use strict";var E4=Dr(),jxt=hf(),y8=qa().traceIs,Wxt=Hb(),Xxt=r0().validateCornerradius,_xe=E4.nestedProperty,nG=Nb().getAxisGroup,xxe=[{aStr:{x:"xbins.start",y:"ybins.start"},name:"start"},{aStr:{x:"xbins.end",y:"ybins.end"},name:"end"},{aStr:{x:"xbins.size",y:"ybins.size"},name:"size"},{aStr:{x:"nbinsx",y:"nbinsy"},name:"nbins"}],Zxt=["x","y"];bxe.exports=function(t,r){var n=r._histogramBinOpts={},i=[],a={},o=[],s,l,u,c,f,h,d;function v(G,Z){return E4.coerce(s._input,s,s._module.attributes,G,Z)}function _(G){return G.orientation==="v"?"x":"y"}function b(G,Z){var j=jxt.getFromTrace({_fullLayout:r},G,Z);return j.type}function p(G,Z,j){var N=G.uid+"__"+j;Z||(Z=N);var H=b(G,j),te=G[j+"calendar"]||"",oe=n[Z],_e=!0;oe&&(H===oe.axType&&te===oe.calendar?(_e=!1,oe.traces.push(G),oe.dirs.push(j)):(Z=N,H!==oe.axType&&E4.warn(["Attempted to group the bins of trace",G.index,"set on a","type:"+H,"axis","with bins on","type:"+oe.axType,"axis."].join(" ")),te!==oe.calendar&&E4.warn(["Attempted to group the bins of trace",G.index,"set with a",te,"calendar","with bins",oe.calendar?"on a "+oe.calendar+" calendar":"w/o a set calendar"].join(" ")))),_e&&(n[Z]={traces:[G],dirs:[j],axType:H,calendar:G[j+"calendar"]||""}),G["_"+j+"bingroup"]=Z}for(f=0;f<t.length;f++)if(s=t[f],y8(s,"histogram")){if(i.push(s),delete s._xautoBinFinished,delete s._yautoBinFinished,s.type==="histogram"){var k=v("marker.cornerradius",r.barcornerradius);s.marker&&(s.marker.cornerradius=Xxt(k))}y8(s,"2dMap")||Wxt(s._input,s,r,v,r.barmode)}var E=r._alignmentOpts||{};for(f=0;f<i.length;f++){if(s=i[f],u="",!y8(s,"2dMap")){if(c=_(s),r.barmode==="group"&&s.alignmentgroup){var S=s[c+"axis"],L=nG(r,S)+s.orientation;(E[L]||{})[s.alignmentgroup]&&(u=L)}!u&&r.barmode!=="overlay"&&(u=nG(r,s.xaxis)+nG(r,s.yaxis)+_(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 x=!1;for(l.length&&(s=l[0],x=v("bingroup")),u=x||u,f=0;f<l.length;f++){s=l[f];var C=s._input.bingroup;C&&C!==u&&E4.warn(["Trace",s.index,"must match","within bingroup",u+".","Ignoring its bingroup:",C,"setting."].join(" ")),s.bingroup=u,p(s,u,_(s))}}for(f=0;f<o.length;f++){s=o[f];var M=v("bingroup");if(y8(s,"2dMap"))for(d=0;d<2;d++){c=Zxt[d];var g=v(c+"bingroup",M?M+"__"+c:null);p(s,g,c)}else p(s,M,_(s))}for(u in n){var P=n[u];for(l=P.traces,h=0;h<xxe.length;h++){var T=xxe[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],_xe(s._input,O).get()!==void 0){P[z]=v(O),P[z+"Found"]=!0;break}V=(s._autoBin||{})[c]||{},V[z]&&_xe(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 Txe=ye((Xur,wxe)=>{"use strict";var Yxt=ET().hoverPoints,Kxt=ho().hoverLabelText;wxe.exports=function(t,r,n,i,a){var o=Yxt(t,r,n,i,a);if(o){t=o[0];var s=t.cd[t.index],l=t.cd[0].trace;if(!l.cumulative.enabled){var u=l.orientation==="h"?"y":"x";t[u+"Label"]=Kxt(t[u+"a"],[s.ph0,s.ph1],l[u+"hoverformat"])}return o}}});var aG=ye((Zur,Axe)=>{"use strict";Axe.exports=function(t,r,n,i,a){if(t.x="xVal"in r?r.xVal:r.x,t.y="yVal"in r?r.yVal:r.y,"zLabelVal"in r&&(t.z=r.zLabelVal),r.xa&&(t.xaxis=r.xa),r.ya&&(t.yaxis=r.ya),!(n.cumulative||{}).enabled){var o=Array.isArray(a)?i[0].pts[a[0]][a[1]]:i[a].pts;t.pointNumbers=o,t.binNumber=t.pointNumber,delete t.pointNumber,delete t.pointIndex;var s;if(n._indexToPoints){s=[];for(var l=0;l<o.length;l++)s=s.concat(n._indexToPoints[o[l]])}else s=o;t.pointIndices=s}return t}});var Mxe=ye((Yur,Sxe)=>{"use strict";Sxe.exports={attributes:m8(),layoutAttributes:UI(),supplyDefaults:yxe(),crossTraceDefaults:_8(),supplyLayoutDefaults:SV(),calc:ZV().calc,crossTraceCalc:jb().crossTraceCalc,plot:n2().plot,layerName:"barlayer",style:N0().style,styleOnSelect:N0().styleOnSelect,colorbar:$d(),hoverPoints:Txe(),selectPoints:kT(),eventData:aG(),moduleType:"trace",name:"histogram",basePlotModule:ph(),categories:["bar-like","cartesian","svg","bar","histogram","oriented","errorBarsOK","showLegend"],meta:{}}});var kxe=ye((Kur,Exe)=>{"use strict";Exe.exports=Mxe()});var b8=ye((Jur,Pxe)=>{"use strict";var Gg=m8(),Cxe=tG(),x8=PT(),Jxt=Gl(),oG=df().axisHoverFormat,{hovertemplateAttrs:$xt,texttemplateAttrs:Qxt,templatefallbackAttrs:Lxe}=Ll(),ebt=Tu(),k4=Ao().extendFlat;Pxe.exports=k4({x:Gg.x,y:Gg.y,z:{valType:"data_array",editType:"calc"},marker:{color:{valType:"data_array",editType:"calc"},editType:"calc"},histnorm:Gg.histnorm,histfunc:Gg.histfunc,nbinsx:Gg.nbinsx,xbins:Cxe("x"),nbinsy:Gg.nbinsy,ybins:Cxe("y"),autobinx:Gg.autobinx,autobiny:Gg.autobiny,bingroup:k4({},Gg.bingroup,{}),xbingroup:k4({},Gg.bingroup,{}),ybingroup:k4({},Gg.bingroup,{}),xgap:x8.xgap,ygap:x8.ygap,zsmooth:x8.zsmooth,xhoverformat:oG("x"),yhoverformat:oG("y"),zhoverformat:oG("z",1),hovertemplate:$xt({},{keys:["z"]}),hovertemplatefallback:Lxe(),texttemplate:Qxt({arrayOk:!1,editType:"plot"},{keys:["z"]}),texttemplatefallback:Lxe({editType:"plot"}),textfont:x8.textfont,showlegend:k4({},Jxt.showlegend,{dflt:!1})},ebt("",{cLetter:"z",autoColorDflt:!1}))});var sG=ye(($ur,Rxe)=>{"use strict";var tbt=qa(),Ixe=Dr();Rxe.exports=function(t,r,n,i){var a=n("x"),o=n("y"),s=Ixe.minRowLength(a),l=Ixe.minRowLength(o);if(!s||!l){r.visible=!1;return}r._length=Math.min(s,l);var u=tbt.getComponentMethod("calendars","handleTraceDefaults");u(t,r,["x","y"],i);var c=n("z")||n("marker.color");c&&n("histfunc"),n("histnorm"),n("autobinx"),n("autobiny")}});var Fxe=ye((Qur,Dxe)=>{"use strict";var rbt=Dr(),ibt=sG(),nbt=UV(),abt=Qh(),obt=A4(),sbt=b8();Dxe.exports=function(t,r,n,i){function a(o,s){return rbt.coerce(t,r,sbt,o,s)}ibt(t,r,a,i),r.visible!==!1&&(nbt(t,r,a,i),abt(t,r,i,a,{prefix:"",cLetter:"z"}),a("hovertemplate"),a("hovertemplatefallback"),obt(a,i),a("xhoverformat"),a("yhoverformat"))}});var qxe=ye((ecr,Oxe)=>{"use strict";var lbt=g8(),zxe=ho().hoverLabelText;Oxe.exports=function(t,r,n,i,a){var o=lbt(t,r,n,i,a);if(o){t=o[0];var s=t.index,l=s[0],u=s[1],c=t.cd[0],f=c.trace,h=c.xRanges[u],d=c.yRanges[l];return t.xLabel=zxe(t.xa,[h[0],h[1]],f.xhoverformat),t.yLabel=zxe(t.ya,[d[0],d[1]],f.yhoverformat),o}}});var Nxe=ye((tcr,Bxe)=>{"use strict";Bxe.exports={attributes:b8(),supplyDefaults:Fxe(),crossTraceDefaults:_8(),calc:c8(),plot:d8(),layerName:"heatmaplayer",colorbar:S_(),style:v8(),hoverPoints:qxe(),eventData:aG(),moduleType:"trace",name:"histogram2d",basePlotModule:ph(),categories:["cartesian","svg","2dMap","histogram","showLegend"],meta:{}}});var Vxe=ye((rcr,Uxe)=>{"use strict";Uxe.exports=Nxe()});var w8=ye((icr,Gxe)=>{"use strict";Gxe.exports={COMPARISON_OPS:["=","!=","<",">=",">","<="],COMPARISON_OPS2:["=","<",">=",">","<="],INTERVAL_OPS:["[]","()","[)","(]","][",")(","](",")["],SET_OPS:["{}","}{"],CONSTRAINT_REDUCTION:{"=":"=","<":"<","<=":"<",">":">",">=":">","[]":"[]","()":"[]","[)":"[]","(]":"[]","][":"][",")(":"][","](":"][",")[":"]["}}});var C4=ye((ncr,Xxe)=>{"use strict";var mh=PT(),T8=pf(),jxe=df(),lG=jxe.axisHoverFormat,ubt=jxe.descriptionOnlyNumbers,cbt=Tu(),fbt=Pd().dash,hbt=ec(),zT=Ao().extendFlat,Wxe=w8(),dbt=Wxe.COMPARISON_OPS2,vbt=Wxe.INTERVAL_OPS,Hxe=T8.line;Xxe.exports=zT({z:mh.z,x:mh.x,x0:mh.x0,dx:mh.dx,y:mh.y,y0:mh.y0,dy:mh.dy,xperiod:mh.xperiod,yperiod:mh.yperiod,xperiod0:T8.xperiod0,yperiod0:T8.yperiod0,xperiodalignment:mh.xperiodalignment,yperiodalignment:mh.yperiodalignment,text:mh.text,hovertext:mh.hovertext,transpose:mh.transpose,xtype:mh.xtype,ytype:mh.ytype,xhoverformat:lG("x"),yhoverformat:lG("y"),zhoverformat:lG("z",1),hovertemplate:mh.hovertemplate,hovertemplatefallback:mh.hovertemplatefallback,texttemplate:zT({},mh.texttemplate,{}),texttemplatefallback:mh.texttemplatefallback,textfont:zT({},mh.textfont,{}),hoverongaps:mh.hoverongaps,connectgaps:zT({},mh.connectgaps,{}),fillcolor:{valType:"color",editType:"calc"},autocontour:{valType:"boolean",dflt:!0,editType:"calc",impliedEdits:{"contours.start":void 0,"contours.end":void 0,"contours.size":void 0}},ncontours:{valType:"integer",dflt:15,min:1,editType:"calc"},contours:{type:{valType:"enumerated",values:["levels","constraint"],dflt:"levels",editType:"calc"},start:{valType:"number",dflt:null,editType:"plot",impliedEdits:{"^autocontour":!1}},end:{valType:"number",dflt:null,editType:"plot",impliedEdits:{"^autocontour":!1}},size:{valType:"number",dflt:null,min:0,editType:"plot",impliedEdits:{"^autocontour":!1}},coloring:{valType:"enumerated",values:["fill","heatmap","lines","none"],dflt:"fill",editType:"calc"},showlines:{valType:"boolean",dflt:!0,editType:"plot"},showlabels:{valType:"boolean",dflt:!1,editType:"plot"},labelfont:hbt({editType:"plot",colorEditType:"style"}),labelformat:{valType:"string",dflt:"",editType:"plot",description:ubt("contour label")},operation:{valType:"enumerated",values:[].concat(dbt).concat(vbt),dflt:"=",editType:"calc"},value:{valType:"any",dflt:0,editType:"calc"},editType:"calc",impliedEdits:{autocontour:!1}},line:{color:zT({},Hxe.color,{editType:"style+colorbars"}),width:{valType:"number",min:0,editType:"style+colorbars"},dash:fbt,smoothing:zT({},Hxe.smoothing,{}),editType:"plot"},zorder:T8.zorder},cbt("",{cLetter:"z",autoColorDflt:!1,editTypeOverride:"calc"}))});var cG=ye((acr,Yxe)=>{"use strict";var wv=b8(),Rm=C4(),pbt=Tu(),uG=df().axisHoverFormat,Zxe=Ao().extendFlat;Yxe.exports=Zxe({x:wv.x,y:wv.y,z:wv.z,marker:wv.marker,histnorm:wv.histnorm,histfunc:wv.histfunc,nbinsx:wv.nbinsx,xbins:wv.xbins,nbinsy:wv.nbinsy,ybins:wv.ybins,autobinx:wv.autobinx,autobiny:wv.autobiny,bingroup:wv.bingroup,xbingroup:wv.xbingroup,ybingroup:wv.ybingroup,autocontour:Rm.autocontour,ncontours:Rm.ncontours,contours:Rm.contours,line:{color:Rm.line.color,width:Zxe({},Rm.line.width,{dflt:.5}),dash:Rm.line.dash,smoothing:Rm.line.smoothing,editType:"plot"},xhoverformat:uG("x"),yhoverformat:uG("y"),zhoverformat:uG("z",1),hovertemplate:wv.hovertemplate,hovertemplatefallback:wv.hovertemplatefallback,texttemplate:Rm.texttemplate,texttemplatefallback:Rm.texttemplatefallback,textfont:Rm.textfont},pbt("",{cLetter:"z",editTypeOverride:"calc"}))});var A8=ye((ocr,Kxe)=>{"use strict";Kxe.exports=function(t,r,n,i){var a=i("contours.start"),o=i("contours.end"),s=a===!1||o===!1,l=n("contours.size"),u;s?u=r.autocontour=!0:u=n("autocontour",!1),(u||!l)&&n("ncontours")}});var fG=ye((scr,Jxe)=>{"use strict";var gbt=Dr();Jxe.exports=function(t,r,n,i){i||(i={});var a=t("contours.showlabels");if(a){var o=r.font;gbt.coerceFont(t,"contours.labelfont",o,{overrideDflt:{color:n}}),t("contours.labelformat")}i.hasHover!==!1&&t("zhoverformat")}});var S8=ye((lcr,$xe)=>{"use strict";var mbt=Qh(),ybt=fG();$xe.exports=function(t,r,n,i,a){var o=n("contours.coloring"),s,l="";o==="fill"&&(s=n("contours.showlines")),s!==!1&&(o!=="lines"&&(l=n("line.color","#000")),n("line.width",.5),n("line.dash")),o!=="none"&&(t.showlegend!==!0&&(r.showlegend=!1),r._dfltShowLegend=!1,mbt(t,r,i,n,{prefix:"",cLetter:"z"})),n("line.smoothing"),ybt(n,i,l,a)}});var rbe=ye((ucr,tbe)=>{"use strict";var Qxe=Dr(),_bt=sG(),xbt=A8(),bbt=S8(),wbt=A4(),ebe=cG();tbe.exports=function(t,r,n,i){function a(s,l){return Qxe.coerce(t,r,ebe,s,l)}function o(s){return Qxe.coerce2(t,r,ebe,s)}_bt(t,r,a,i),r.visible!==!1&&(xbt(t,r,a,o),bbt(t,r,a,i),a("xhoverformat"),a("yhoverformat"),a("hovertemplate"),a("hovertemplatefallback"),r.contours&&r.contours.coloring==="heatmap"&&wbt(a,i))}});var vG=ye((ccr,nbe)=>{"use strict";var dG=ho(),hG=Dr();nbe.exports=function(t,r){var n=t.contours;if(t.autocontour){var i=t.zmin,a=t.zmax;(t.zauto||i===void 0)&&(i=hG.aggNums(Math.min,null,r)),(t.zauto||a===void 0)&&(a=hG.aggNums(Math.max,null,r));var o=ibe(i,a,t.ncontours);n.size=o.dtick,n.start=dG.tickFirst(o),o.range.reverse(),n.end=dG.tickFirst(o),n.start===i&&(n.start+=n.size),n.end===a&&(n.end-=n.size),n.start>n.end&&(n.start=n.end=(n.start+n.end)/2),t._input.contours||(t._input.contours={}),hG.extendFlat(t._input.contours,{start:n.start,end:n.end,size:n.size}),t._input.autocontour=!0}else if(n.type!=="constraint"){var s=n.start,l=n.end,u=t._input.contours;if(s>l&&(n.start=u.start=l,l=n.end=u.end=s,s=n.start),!(n.size>0)){var c;s===l?c=1:c=ibe(s,l,t.ncontours).dtick,u.size=n.size=c}}};function ibe(e,t,r){var n={type:"linear",range:[e,t]};return dG.autoTicks(n,(t-e)/(r||15)),n}});var L4=ye((fcr,abe)=>{"use strict";abe.exports=function(t){return t.end+t.size/1e6}});var pG=ye((hcr,sbe)=>{"use strict";var obe=tc(),Tbt=c8(),Abt=vG(),Sbt=L4();sbe.exports=function(t,r){var n=Tbt(t,r),i=n[0].z;Abt(r,i);var a=r.contours,o=obe.extractOpts(r),s;if(a.coloring==="heatmap"&&o.auto&&r.autocontour===!1){var l=a.start,u=Sbt(a),c=a.size||1,f=Math.floor((u-l)/c)+1;isFinite(c)||(c=1,f=1);var h=l-c/2,d=h+f*c;s=[h,d]}else s=i;return obe.calc(t,r,{vals:s,cLetter:"z"}),n}});var P4=ye((dcr,lbe)=>{"use strict";lbe.exports={BOTTOMSTART:[1,9,13,104,713],TOPSTART:[4,6,7,104,713],LEFTSTART:[8,12,14,208,1114],RIGHTSTART:[2,3,11,208,1114],NEWDELTA:[null,[-1,0],[0,-1],[-1,0],[1,0],null,[0,-1],[-1,0],[0,1],[0,1],null,[0,1],[1,0],[1,0],[0,-1]],CHOOSESADDLE:{104:[4,1],208:[2,8],713:[7,13],1114:[11,14]},SADDLEREMAINDER:{1:4,2:8,4:1,7:13,8:2,11:14,13:7,14:11},LABELDISTANCE:2,LABELINCREASE:10,LABELMIN:3,LABELMAX:10,LABELOPTIMIZER:{EDGECOST:1,ANGLECOST:1,NEIGHBORCOST:5,SAMELEVELFACTOR:10,SAMELEVELDISTANCE:5,MAXCOST:100,INITIALSEARCHPOINTS:10,ITERATIONS:5}}});var gG=ye((vcr,ube)=>{"use strict";var M8=P4();ube.exports=function(t){var r=t[0].z,n=r.length,i=r[0].length,a=n===2||i===2,o,s,l,u,c,f,h,d,v;for(s=0;s<n-1;s++)for(u=[],s===0&&(u=u.concat(M8.BOTTOMSTART)),s===n-2&&(u=u.concat(M8.TOPSTART)),o=0;o<i-1;o++)for(l=u.slice(),o===0&&(l=l.concat(M8.LEFTSTART)),o===i-2&&(l=l.concat(M8.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=Mbt(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 Mbt(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 mG=ye((pcr,hbe)=>{"use strict";var E8=Dr(),OT=P4();hbe.exports=function(t,r,n){var i,a,o,s,l;for(r=r||.01,n=n||.01,o=0;o<t.length;o++){for(s=t[o],l=0;l<s.starts.length;l++)a=s.starts[l],cbe(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),cbe(s,a,void 0,r,n);i===1e4&&E8.log("Infinite loop in contour?")}};function I4(e,t,r,n){return Math.abs(e[0]-t[0])<r&&Math.abs(e[1]-t[1])<n}function Ebt(e,t){var r=e[2]-t[2],n=e[3]-t[3];return Math.sqrt(r*r+n*n)}function cbe(e,t,r,n,i){var a=t.join(","),o=e.crossings[a],s=kbt(o,r,t),l=[fbe(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=OT.CHOOSESADDLE[o][(s[0]||s[1])<0?0:1],e.crossings[a]=OT.SADDLEREMAINDER[o]):delete e.crossings[a],s=OT.NEWDELTA[o],!s){E8.log("Found bad marching index:",o,t,e.level);break}l.push(fbe(e,t,s)),t[0]+=s[0],t[1]+=s[1],a=t.join(","),I4(l[l.length-1],l[l.length-2],n,i)&&l.pop();var v=s[0]&&(t[0]<0||t[0]>c-2)||s[1]&&(t[1]<0||t[1]>u-2),_=t[0]===f[0]&&t[1]===f[1]&&s[0]===h[0]&&s[1]===h[1];if(_||r&&v)break;o=e.crossings[a]}d===1e4&&E8.log("Infinite loop in contour?");var b=I4(l[0],l[l.length-1],n,i),p=0,k=.2*e.smoothing,E=[],S=0,L,x,C,M,g,P,T,z,O,V,G;for(d=1;d<l.length;d++)T=Ebt(l[d],l[d-1]),p+=T,E.push(T);var Z=p/E.length*k;function j(te){return l[te%l.length]}for(d=l.length-2;d>=S;d--)if(L=E[d],L<Z){for(C=0,x=d-1;x>=S&&L+E[x]<Z;x--)L+=E[x];if(b&&d===l.length-2)for(C=0;C<x&&L+E[C]<Z;C++)L+=E[C];g=d-x+C+1,P=Math.floor((d+x+C+2)/2),!b&&d===l.length-2?M=l[l.length-1]:!b&&x===-1?M=l[0]:g%2?M=j(P):M=[(j(P)[0]+j(P+1)[0])/2,(j(P)[1]+j(P+1)[1])/2],l.splice(x+1,d-x+1,M),d=x+1,C&&(S=C),b&&(d===l.length-2?l[C]=l[l.length-1]:d===0&&(l[l.length-1]=l[0]))}for(l.splice(0,S),d=0;d<l.length;d++)l[d].length=2;if(!(l.length<2))if(b)l.pop(),e.paths.push(l);else{r||E8.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&&I4(V[0],l[l.length-1],n,i)){l.pop(),N=!0;var H=!1;for(O=0;O<e.edgepaths.length;O++)if(G=e.edgepaths[O],I4(G[G.length-1],l[0],n,i)){H=!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}H||(e.edgepaths[z]=l.concat(V))}for(z=0;z<e.edgepaths.length&&!N;z++)V=e.edgepaths[z],I4(V[V.length-1],l[0],n,i)&&(l.shift(),e.edgepaths[z]=V.concat(l),N=!0);N||e.edgepaths.push(l)}}function kbt(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:OT.BOTTOMSTART.indexOf(e)!==-1?i=1:OT.LEFTSTART.indexOf(e)!==-1?n=1:OT.TOPSTART.indexOf(e)!==-1?i=-1:n=-1,[n,i]}function fbe(e,t,r){var n=t[0]+Math.max(r[0],0),i=t[1]+Math.max(r[1],0),a=e.z[i][n],o=e.xaxis,s=e.yaxis;if(r[1]){var l=(e.level-a)/(e.z[i][n+1]-a),u=(l!==1?(1-l)*o.c2l(e.x[n]):0)+(l!==0?l*o.c2l(e.x[n+1]):0);return[o.c2p(o.l2c(u),!0),s.c2p(e.y[i],!0),n+l,i]}else{var c=(e.level-a)/(e.z[i+1][n]-a),f=(c!==1?(1-c)*s.c2l(e.y[i]):0)+(c!==0?c*s.c2l(e.y[i+1]):0);return[o.c2p(e.x[n],!0),s.c2p(s.l2c(f),!0),n,i+c]}}});var gbe=ye((gcr,pbe)=>{"use strict";var yG=w8(),Cbt=Eo();pbe.exports={"[]":dbe("[]"),"][":dbe("]["),">":_G(">"),"<":_G("<"),"=":_G("=")};function vbe(e,t){var r=Array.isArray(t),n;function i(a){return Cbt(a)?+a:null}return yG.COMPARISON_OPS2.indexOf(e)!==-1?n=i(r?t[0]:t):yG.INTERVAL_OPS.indexOf(e)!==-1?n=r?[i(t[0]),i(t[1])]:[i(t),i(t)]:yG.SET_OPS.indexOf(e)!==-1&&(n=r?t.map(i):[i(t)]),n}function dbe(e){return function(t){t=vbe(e,t);var r=Math.min(t[0],t[1]),n=Math.max(t[0],t[1]);return{start:r,end:n,size:n-r}}}function _G(e){return function(t){return t=vbe(e,t),{start:t,end:1/0,size:1/0}}}});var xG=ye((mcr,ybe)=>{"use strict";var mbe=Dr(),Lbt=gbe(),Pbt=L4();ybe.exports=function(t,r,n){for(var i=t.type==="constraint"?Lbt[t._operation](t.value):t,a=i.size,o=[],s=Pbt(i),l=n.trace._carpetTrace,u=l?{xaxis:l.aaxis,yaxis:l.baxis,x:n.a,y:n.b}:{xaxis:r.xaxis,yaxis:r.yaxis,x:n.x,y:n.y},c=i.start;c<s;c+=a)if(o.push(mbe.extendFlat({level:c,crossings:{},starts:[],edgepaths:[],paths:[],z:n.z,smoothing:n.trace.line.smoothing},u)),o.length>1e3){mbe.warn("Too many contours, clipping at 1000",t);break}return o}});var bG=ye((ycr,xbe)=>{"use strict";var qT=Dr();xbe.exports=function(e,t){var r,n,i,a=function(l){return l.reverse()},o=function(l){return l};switch(t){case"=":case"<":return e;case">":for(e.length!==1&&qT.warn("Contour data invalid for the specified inequality operation."),n=e[0],r=0;r<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&&qT.warn("Contour data invalid for the specified inequality range operation."),n=_be(e[0]),i=_be(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 _be(e){return qT.extendFlat({},e,{edgepaths:qT.extendDeep([],e.edgepaths),paths:qT.extendDeep([],e.paths),starts:qT.extendDeep([],e.starts)})}});var wG=ye((_cr,bbe)=>{"use strict";bbe.exports=function(e,t){var r=e[0],n=r.z,i;switch(t.type){case"levels":var a=Math.min(n[0][0],n[0][1]);for(i=0;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 k8=ye(jv=>{"use strict";var D4=Oa(),zd=Dr(),qy=So(),Ibt=tc(),Abe=ru(),wbe=ho(),Tbe=ym(),Rbt=d8(),Sbe=gG(),Mbe=mG(),Dbt=xG(),Fbt=bG(),Ebe=wG(),R4=P4(),Dm=R4.LABELOPTIMIZER;jv.plot=function(t,r,n,i){var a=r.xaxis,o=r.yaxis;zd.makeTraceGroups(i,n,"contour").each(function(s){var l=D4.select(this),u=s[0],c=u.trace,f=u.x,h=u.y,d=c.contours,v=Dbt(d,r,u),_=zd.ensureSingle(l,"g","heatmapcoloring"),b=[];d.coloring==="heatmap"&&(b=[s]),Rbt(t,r,b,_),Sbe(v),Mbe(v);var p=a.c2p(f[0],!0),k=a.c2p(f[f.length-1],!0),E=o.c2p(h[0],!0),S=o.c2p(h[h.length-1],!0),L=[[p,S],[k,S],[k,E],[p,E]],x=v;d.type==="constraint"&&(x=Fbt(v,d._operation)),zbt(l,L,d),Obt(l,x,L,d),qbt(l,v,t,u,d),Nbt(l,r,t,u,L)})};function zbt(e,t,r){var n=zd.ensureSingle(e,"g","contourbg"),i=n.selectAll("path").data(r.coloring==="fill"?[0]:[]);i.enter().append("path"),i.exit().remove(),i.attr("d","M"+t.join("L")+"Z").style("stroke","none")}function Obt(e,t,r,n){var i=n.coloring==="fill"||n.type==="constraint"&&n._operation!=="=",a="M"+r.join("L")+"Z";i&&Ebe(t,n);var o=zd.ensureSingle(e,"g","contourfill"),s=o.selectAll("path").data(i?t:[]);s.enter().append("path"),s.exit().remove(),s.each(function(l){var u=(l.prefixBoundary?a:"")+kbe(l,r);u?D4.select(this).attr("d",u).style("stroke","none"):D4.select(this).remove()})}function kbe(e,t){var r="",n=0,i=e.edgepaths.map(function(p,k){return k}),a=!0,o,s,l,u,c,f;function h(p){return Math.abs(p[1]-t[0][1])<.01}function d(p){return Math.abs(p[1]-t[2][1])<.01}function v(p){return Math.abs(p[0]-t[0][0])<.01}function _(p){return Math.abs(p[0]-t[2][0])<.01}for(;i.length;){for(f=qy.smoothopen(e.edgepaths[n],e.smoothing),r+=a?f:f.replace(/^M/,"L"),i.splice(i.indexOf(n),1),o=e.edgepaths[n][e.edgepaths[n].length-1],u=-1,l=0;l<4;l++){if(!o){zd.log("Missing end?",n,e);break}for(h(o)&&!_(o)?s=t[1]:v(o)?s=t[0]:d(o)?s=t[3]:_(o)&&(s=t[2]),c=0;c<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 qbt(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=jv.createLines(o,s||l,t,a),f=jv.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 _=jv.labelFormatter(r,n),b=qy.tester.append("text").attr("data-notex",1).call(qy.font,i.labelfont),p=t[0].xaxis,k=t[0].yaxis,E=p._length,S=k._length,L=p.range,x=k.range,C=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(C,!0),0),z=Math.min(p.c2p(M,!0),E),O=Math.max(k.c2p(P,!0),0),V=Math.min(k.c2p(g,!0),S),G={};L[0]<L[1]?(G.left=T,G.right=z):(G.left=z,G.right=T),x[0]<x[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+S*S),j=R4.LABELDISTANCE*Z/Math.max(1,t.length/R4.LABELINCREASE);c.each(function(N){var H=jv.calcTextOpts(N.level,_,b,r);D4.select(this).selectAll("path").each(function(){var te=this,oe=zd.getVisibleSegment(te,G,H.height/2);if(oe&&!(oe.len<(H.width+H.height)*R4.LABELMIN))for(var _e=Math.min(Math.ceil(oe.len/j),R4.LABELMAX),Ee=0;Ee<_e;Ee++){var Ce=jv.findBestTextLocation(te,oe,H,v,G);if(!Ce)break;jv.addLabelData(Ce,H,v,d)}})}),b.remove(),jv.drawLabels(h,v,r,f,u?d:null)}l&&!s&&c.remove()}jv.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};jv.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};jv.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,Tbe(a,r);else{var o=Ibt.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),Tbe(a,r),wbe.prepTicks(a),a._tmin=null,a._tmax=null}}return function(l){return wbe.tickText(a,l).text}};jv.calcTextOpts=function(e,t,r,n){var i=t(e);r.text(i).call(Abe.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}};jv.findBestTextLocation=function(e,t,r,n,i){var a=r.width,o,s,l,u,c;t.isClosed?(s=t.len/Dm.INITIALSEARCHPOINTS,o=t.min+s/2,l=t.max):(s=(t.len-a)/(Dm.INITIALSEARCHPOINTS+1),o=t.min+s+a/2,l=t.max-(s+a)/2);for(var f=1/0,h=0;h<Dm.ITERATIONS;h++){for(var d=o;d<l;d+=s){var v=zd.getTextLocation(e,t.total,d,a),_=Bbt(v,r,n,i);_<f&&(f=_,c=v,u=d)}if(f>Dm.MAXCOST*2)break;h&&(s/=2),o=u-s/2,l=o+s*1.5}if(f<=Dm.MAXCOST)return c};function Bbt(e,t,r,n){var i=t.width/2,a=t.height/2,o=e.x,s=e.y,l=e.theta,u=Math.cos(l)*i,c=Math.sin(l)*i,f=(o>n.center?n.right-o:o-n.left)/(u+Math.abs(Math.sin(l)*a)),h=(s>n.middle?n.bottom-s:s-n.top)/(Math.abs(c)+Math.cos(l)*a);if(f<1||h<1)return 1/0;var d=Dm.EDGECOST*(1/(f-1)+1/(h-1));d+=Dm.ANGLECOST*l*l;for(var v=o-u,_=s-c,b=o+u,p=s+c,k=0;k<r.length;k++){var E=r[k],S=Math.cos(E.theta)*E.width/2,L=Math.sin(E.theta)*E.width/2,x=zd.segmentDistance(v,_,b,p,E.x-S,E.y-L,E.x+S,E.y+L)*2/(t.height+E.height),C=E.level===t.level,M=C?Dm.SAMELEVELDISTANCE:1;if(x<=M)return 1/0;var g=Dm.NEIGHBORCOST*(C?Dm.SAMELEVELFACTOR:1);d+=g/(x-M)}return d}jv.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,_){return[s+v*f-_*c,l+v*c+_*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)};jv.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;D4.select(this).text(u.text).attr({x:c,y:f,transform:"rotate("+180*u.theta/Math.PI+" "+c+" "+f+")"}).call(Abe.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 Nbt(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:Ubt(n),smoothing:0};Sbe([u]),Mbe([u]),Ebe([u],{type:"levels"});var c=zd.ensureSingle(l,"path","");c.attr("d",(u.prefixBoundary?"M"+i.join("L")+"Z":"")+kbe(u,i))}else s=null;qy.setClipUrl(e,s,r)}function Ubt(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 AG=ye((bcr,Cbe)=>{"use strict";var Vbt=Oa(),TG=tc(),Gbt=L4();Cbe.exports=function(t){var r=t.contours,n=r.start,i=Gbt(r),a=r.size||1,o=Math.floor((i-n)/a)+1,s=r.coloring==="lines"?0:1,l=TG.extractOpts(t);isFinite(a)||(a=1,o=1);var u=l.reversescale?TG.flipScale(l.colorscale):l.colorscale,c=u.length,f=new Array(c),h=new Array(c),d,v,_=l.min,b=l.max;if(r.coloring==="heatmap"){for(v=0;v<c;v++)d=u[v],f[v]=d[0]*(b-_)+_,h[v]=d[1];var p=Vbt.extent([_,b,r.start,r.start+a*(o-1)]),k=p[_<b?0:1],E=p[_<b?1:0];k!==_&&(f.splice(0,0,k),h.splice(0,0,h[0])),E!==b&&(f.push(E),h.push(h[h.length-1]))}else{var S=t._input&&typeof t._input.zmin=="number"&&typeof t._input.zmax=="number";for(S&&(n<=_||i>=b)&&(n<=_&&(n=_),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];(S||t.autocontour)&&(f[0]>_&&(f.unshift(_),h.unshift(h[0])),f[f.length-1]<b&&(f.push(b),h.push(h[h.length-1])))}return TG.makeColorScaleFunc({domain:f,range:h},{noNumericCheck:!0})}});var L8=ye((wcr,Pbe)=>{"use strict";var C8=Oa(),Lbe=So(),Hbt=v8(),jbt=AG();Pbe.exports=function(t){var r=C8.select(t).selectAll("g.contour");r.style("opacity",function(n){return n[0].trace.opacity}),r.each(function(n){var i=C8.select(this),a=n[0].trace,o=a.contours,s=a.line,l=o.size||1,u=o.start,c=o.type==="constraint",f=!c&&o.coloring==="lines",h=!c&&o.coloring==="fill",d=f||h?jbt(a):null;i.selectAll("g.contourlevel").each(function(b){C8.select(this).selectAll("path").call(Lbe.lineGroupStyle,s.width,f?d(b.level):s.color,s.dash)});var v=o.labelfont;if(i.selectAll("g.contourlabels text").each(function(b){Lbe.font(C8.select(this),{weight:v.weight,style:v.style,variant:v.variant,textcase:v.textcase,lineposition:v.lineposition,shadow:v.shadow,family:v.family,size:v.size,color:v.color||(f?d(b.level):s.color)})}),c)i.selectAll("g.contourfill path").style("fill",a.fillcolor);else if(h){var _;i.selectAll("g.contourfill path").style("fill",function(b){return _===void 0&&(_=b.level),d(b.level+.5*l)}),_===void 0&&(_=u),i.selectAll("g.contourbg path").style("fill",d(_-.5*l))}}),Hbt(t)}});var P8=ye((Tcr,Rbe)=>{"use strict";var Ibe=tc(),Wbt=AG(),Xbt=L4();function Zbt(e,t,r){var n=t.contours,i=t.line,a=n.size||1,o=n.coloring,s=Wbt(t,{isColorbar:!0});if(o==="heatmap"){var l=Ibe.extractOpts(t);r._fillgradient=l.reversescale?Ibe.flipScale(l.colorscale):l.colorscale,r._zrange=[l.min,l.max]}else o==="fill"&&(r._fillcolor=s);r._line={color:o==="lines"?s:i.color,width:n.showlines!==!1?i.width:0,dash:i.dash},r._levels={start:n.start,end:Xbt(n),size:a}}Rbe.exports={min:"zmin",max:"zmax",calc:Zbt}});var SG=ye((Acr,Dbe)=>{"use strict";var I8=ka(),Ybt=g8();Dbe.exports=function(t,r,n,i,a){a||(a={}),a.isContour=!0;var o=Ybt(t,r,n,i,a);return o&&o.forEach(function(s){var l=s.trace;l.contours.type==="constraint"&&(l.fillcolor&&I8.opacity(l.fillcolor)?s.color=I8.addOpacity(l.fillcolor,1):l.contours.showlines&&I8.opacity(l.line.color)&&(s.color=I8.addOpacity(l.line.color,1)))}),o}});var zbe=ye((Scr,Fbe)=>{"use strict";Fbe.exports={attributes:cG(),supplyDefaults:rbe(),crossTraceDefaults:_8(),calc:pG(),plot:k8().plot,layerName:"contourlayer",style:L8(),colorbar:P8(),hoverPoints:SG(),moduleType:"trace",name:"histogram2dcontour",basePlotModule:ph(),categories:["cartesian","svg","2dMap","contour","histogram","showLegend"],meta:{}}});var qbe=ye((Mcr,Obe)=>{"use strict";Obe.exports=zbe()});var MG=ye((Ecr,Hbe)=>{"use strict";var Bbe=Eo(),Kbt=fG(),Vbe=ka(),Nbe=Vbe.addOpacity,Jbt=Vbe.opacity,Gbe=w8(),Ube=Dr().isArrayOrTypedArray,$bt=Gbe.CONSTRAINT_REDUCTION,Qbt=Gbe.COMPARISON_OPS2;Hbe.exports=function(t,r,n,i,a,o){var s=r.contours,l,u,c,f=n("contours.operation");if(s._operation=$bt[f],e2t(n,s),f==="="?l=s.showlines=!0:(l=n("contours.showlines"),c=n("fillcolor",Nbe((t.line||{}).color||a,.5))),l){var h=c&&Jbt(c)?Nbe(r.fillcolor,1):a;u=n("line.color",h),n("line.width",2),n("line.dash")}n("line.smoothing"),Kbt(n,i,u,o)};function e2t(e,t){var r;Qbt.indexOf(t.operation)===-1?(e("contours.value",[0,1]),Ube(t.value)?t.value.length>2?t.value=t.value.slice(2):t.length===0?t.value=[0,1]:t.length<2?(r=parseFloat(t.value[0]),t.value=[r,r+1]):t.value=[parseFloat(t.value[0]),parseFloat(t.value[1])]:Bbe(t.value)&&(r=parseFloat(t.value),t.value=[r,r+1])):(e("contours.value",0),Bbe(t.value)||(Ube(t.value)?t.value=parseFloat(t.value[0]):t.value=0))}});var Xbe=ye((kcr,Wbe)=>{"use strict";var EG=Dr(),t2t=e8(),r2t=Ig(),i2t=MG(),n2t=A8(),a2t=S8(),o2t=A4(),jbe=C4();Wbe.exports=function(t,r,n,i){function a(u,c){return EG.coerce(t,r,jbe,u,c)}function o(u){return EG.coerce2(t,r,jbe,u)}var s=t2t(t,r,a,i);if(!s){r.visible=!1;return}r2t(t,r,i,a),a("xhoverformat"),a("yhoverformat"),a("text"),a("hovertext"),a("hoverongaps"),a("hovertemplate"),a("hovertemplatefallback");var l=a("contours.type")==="constraint";a("connectgaps",EG.isArray1D(r.z)),l?i2t(t,r,a,i,n):(n2t(t,r,a,o),a2t(t,r,a,i)),r.contours&&r.contours.coloring==="heatmap"&&o2t(a,i),a("zorder")}});var Ybe=ye((Ccr,Zbe)=>{"use strict";Zbe.exports={attributes:C4(),supplyDefaults:Xbe(),calc:pG(),plot:k8().plot,style:L8(),colorbar:P8(),hoverPoints:SG(),moduleType:"trace",name:"contour",basePlotModule:ph(),categories:["cartesian","svg","2dMap","contour","showLegend"],meta:{}}});var Jbe=ye((Lcr,Kbe)=>{"use strict";Kbe.exports=Ybe()});var kG=ye((Pcr,e2e)=>{"use strict";var{hovertemplateAttrs:s2t,texttemplateAttrs:l2t,templatefallbackAttrs:$be}=Ll(),u2t=Cg(),a0=pf(),c2t=Gl(),Qbe=Tu(),f2t=Pd().dash,M_=Ao().extendFlat,j0=a0.marker,F4=a0.line,h2t=j0.line;e2e.exports={a:{valType:"data_array",editType:"calc"},b:{valType:"data_array",editType:"calc"},c:{valType:"data_array",editType:"calc"},sum:{valType:"number",dflt:0,min:0,editType:"calc"},mode:M_({},a0.mode,{dflt:"markers"}),text:M_({},a0.text,{}),texttemplate:l2t({editType:"plot"},{keys:["a","b","c","text"]}),texttemplatefallback:$be({editType:"plot"}),hovertext:M_({},a0.hovertext,{}),line:{color:F4.color,width:F4.width,dash:f2t,backoff:F4.backoff,shape:M_({},F4.shape,{values:["linear","spline"]}),smoothing:F4.smoothing,editType:"calc"},connectgaps:a0.connectgaps,cliponaxis:a0.cliponaxis,fill:M_({},a0.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:u2t(),marker:M_({symbol:j0.symbol,opacity:j0.opacity,angle:j0.angle,angleref:j0.angleref,standoff:j0.standoff,maxdisplayed:j0.maxdisplayed,size:j0.size,sizeref:j0.sizeref,sizemin:j0.sizemin,sizemode:j0.sizemode,line:M_({width:h2t.width,editType:"calc"},Qbe("marker.line")),gradient:j0.gradient,editType:"calc"},Qbe("marker")),textfont:a0.textfont,textposition:a0.textposition,selected:a0.selected,unselected:a0.unselected,hoverinfo:M_({},c2t.hoverinfo,{flags:["a","b","c","text","name"]}),hoveron:a0.hoveron,hovertemplate:s2t(),hovertemplatefallback:$be()}});var n2e=ye((Icr,i2e)=>{"use strict";var t2e=Dr(),d2t=Sm(),BT=Ru(),v2t=$p(),p2t=R0(),r2e=tT(),g2t=D0(),m2t=Rg(),y2t=kG();i2e.exports=function(t,r,n,i){function a(h,d){return t2e.coerce(t,r,y2t,h,d)}var o=a("a"),s=a("b"),l=a("c"),u;if(o?(u=o.length,s?(u=Math.min(u,s.length),l&&(u=Math.min(u,l.length))):l?u=Math.min(u,l.length):u=0):s&&l&&(u=Math.min(s.length,l.length)),!u){r.visible=!1;return}r._length=u,a("sum"),a("text"),a("hovertext"),r.hoveron!=="fills"&&(a("hovertemplate"),a("hovertemplatefallback"));var c=u<d2t.PTS_LINESONLY?"lines+markers":"lines";a("mode",c),BT.hasMarkers(r)&&v2t(t,r,n,i,a,{gradient:!0}),BT.hasLines(r)&&(p2t(t,r,n,i,a,{backoff:!0}),r2e(t,r,a),a("connectgaps")),BT.hasText(r)&&(a("texttemplate"),a("texttemplatefallback"),g2t(t,r,i,a));var f=[];(BT.hasMarkers(r)||BT.hasText(r))&&(a("cliponaxis"),a("marker.maxdisplayed"),f.push("points")),a("fill"),r.fill!=="none"&&(m2t(t,r,n,a),BT.hasLines(r)||r2e(t,r,a)),(r.fill==="tonext"||r.fill==="toself")&&f.push("fills"),a("hoveron",f.join("+")||"points"),t2e.coerceSelectionMarkerOpacity(r,a)}});var o2e=ye((Rcr,a2e)=>{"use strict";var CG=ho();a2e.exports=function(t,r,n){var i={},a=n[r.subplot]._subplot;return i.aLabel=CG.tickText(a.aaxis,t.a,!0).text,i.bLabel=CG.tickText(a.baxis,t.b,!0).text,i.cLabel=CG.tickText(a.caxis,t.c,!0).text,i}});var c2e=ye((Dcr,u2e)=>{"use strict";var LG=Eo(),_2t=F0(),x2t=km(),b2t=z0(),w2t=O0().calcMarkerSize,s2e=["a","b","c"],l2e={a:["b","c"],b:["a","c"],c:["a","b"]};u2e.exports=function(t,r){var n=t._fullLayout[r.subplot],i=n.sum,a=r.sum||i,o={a:r.a,b:r.b,c:r.c},s=r.ids,l,u,c,f,h,d;for(l=0;l<s2e.length;l++)if(c=s2e[l],!o[c]){for(h=o[l2e[c][0]],d=o[l2e[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,_=new Array(v),b,p,k,E,S,L;for(l=0;l<v;l++)b=o.a[l],p=o.b[l],k=o.c[l],LG(b)&&LG(p)&&LG(k)?(b=+b,p=+p,k=+k,E=i/(b+p+k),E!==1&&(b*=E,p*=E,k*=E),L=b,S=k-p,_[l]={x:S,y:L,a:b,b:p,c:k},s&&(_[l].id=s[l])):_[l]={x:!1,y:!1};return w2t(r,v),_2t(t,r),x2t(_,r),b2t(_,r),_}});var h2e=ye((Fcr,f2e)=>{"use strict";var T2t=sT();f2e.exports=function(t,r,n){var i=r.plotContainer;i.select(".scatterlayer").selectAll("*").remove();for(var a=r.xaxis,o=r.yaxis,s={xaxis:a,yaxis:o,plot:i,layerClipId:r._hasClipOnAxisFalse?r.clipIdRelative:null},l=r.layers.frontplot.select("g.scatterlayer"),u=0;u<n.length;u++){var c=n[u];c.length&&(c[0].trace._xA=a,c[0].trace._yA=o)}T2t(t,s,n,l)}});var v2e=ye((zcr,d2e)=>{"use strict";var A2t=fT();d2e.exports=function(t,r,n,i){var a=A2t(t,r,n,i);if(!a||a[0].index===!1)return;var o=a[0];if(o.index===void 0){var s=1-o.y0/t.ya._length,l=t.xa._length,u=l*s/2,c=l-u;return o.x0=Math.max(Math.min(o.x0,c),u),o.x1=Math.max(Math.min(o.x1,c),u),a}var f=o.cd[o.index],h=o.trace,d=o.subplot;o.a=f.a,o.b=f.b,o.c=f.c,o.xLabelVal=void 0,o.yLabelVal=void 0;var v={};v[h.subplot]={_subplot:d};var _=h._module.formatLabels(f,h,v);o.aLabel=_.aLabel,o.bLabel=_.bLabel,o.cLabel=_.cLabel;var b=f.hi||h.hoverinfo,p=[];function k(S,L){p.push(S._hovertitle+": "+L)}if(!h.hovertemplate){var E=b.split("+");E.indexOf("all")!==-1&&(E=["a","b","c"]),E.indexOf("a")!==-1&&k(d.aaxis,o.aLabel),E.indexOf("b")!==-1&&k(d.baxis,o.bLabel),E.indexOf("c")!==-1&&k(d.caxis,o.cLabel)}return o.extraText=p.join("<br>"),o.hovertemplate=h.hovertemplate,a}});var g2e=ye((Ocr,p2e)=>{"use strict";p2e.exports=function(t,r,n,i,a){if(r.xa&&(t.xaxis=r.xa),r.ya&&(t.yaxis=r.ya),i[a]){var o=i[a];t.a=o.a,t.b=o.b,t.c=o.c}else t.a=r.a,t.b=r.b,t.c=r.c;return t}});var E2e=ye((qcr,M2e)=>{"use strict";var w2e=Oa(),S2t=cd(),PG=qa(),By=Dr(),Fm=By.strTranslate,R8=By._,UT=ka(),D8=So(),z4=ym(),IG=Ao().extendFlat,M2t=Mc(),E_=ho(),m2e=yv(),y2e=vf(),T2e=Eg(),_2e=T2e.freeMode,E2t=T2e.rectMode,RG=Eb(),k2t=Of().prepSelect,C2t=Of().selectOnClick,L2t=Of().clearOutline,P2t=Of().clearSelectionsCache,A2e=hd();function S2e(e,t){this.id=e.id,this.graphDiv=e.graphDiv,this.init(t),this.makeFramework(t),this.updateFx(t),this.aTickLayout=null,this.bTickLayout=null,this.cTickLayout=null}M2e.exports=S2e;var zm=S2e.prototype;zm.init=function(e){this.container=e._ternarylayer,this.defs=e._defs,this.layoutId=e._uid,this.traceHash={},this.layers={}};zm.plot=function(e,t){var r=this,n=t[r.id],i=t._size;r._hasClipOnAxisFalse=!1;for(var a=0;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),M2t.generalUpdatePerTraceModule(r.graphDiv,r,e,n),r.layers.plotbg.select("path").call(UT.fill,n.bgcolor)};zm.makeFramework=function(e){var t=this,r=t.graphDiv,n=e[t.id],i=t.clipId="clip"+t.layoutId+t.id,a=t.clipIdRelative="clip-relative"+t.layoutId+t.id;t.clipDef=By.ensureSingleById(e._clips,"clipPath",i,function(o){o.append("path").attr("d","M0,0Z")}),t.clipDefRelative=By.ensureSingleById(e._clips,"clipPath",a,function(o){o.append("path").attr("d","M0,0Z")}),t.plotContainer=By.ensureSingle(t.container,"g",t.id),t.updateLayers(n),D8.setClipUrl(t.layers.backplot,i,r),D8.setClipUrl(t.layers.grids,i,r)};zm.updateFx=function(e){e._ternarylayer.selectAll("g.toplevel").style("cursor",e.dragmode==="pan"?"move":"crosshair")};zm.updateLayers=function(e){var t=this,r=t.layers,n=["draglayer","plotbg","backplot","grids"];e.aaxis.layer==="below traces"&&n.push("aaxis","aline"),e.baxis.layer==="below traces"&&n.push("baxis","bline"),e.caxis.layer==="below traces"&&n.push("caxis","cline"),n.push("frontplot"),e.aaxis.layer==="above traces"&&n.push("aaxis","aline"),e.baxis.layer==="above traces"&&n.push("baxis","bline"),e.caxis.layer==="above traces"&&n.push("caxis","cline");var i=t.plotContainer.selectAll("g.toplevel").data(n,String),a=["agrid","bgrid","cgrid"];i.enter().append("g").attr("class",function(o){return"toplevel "+o}).each(function(o){var s=w2e.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 NT=Math.sqrt(4/3);zm.adjustLayout=function(e,t){var r=this,n=e.domain,i=(n.x[0]+n.x[1])/2,a=(n.y[0]+n.y[1])/2,o=n.x[1]-n.x[0],s=n.y[1]-n.y[0],l=o*t.w,u=s*t.h,c=e.sum,f=e.aaxis.min,h=e.baxis.min,d=e.caxis.min,v,_,b,p,k,E;l>NT*u?(p=u,b=p*NT):(b=l,p=b/NT),k=o*b/l,E=s*p/u,v=t.l+t.w*i-b/2,_=t.t+t.h*(1-a)-p/2,r.x0=v,r.y0=_,r.w=b,r.h=p,r.sum=c,r.xaxis={type:"linear",range:[f+2*d-c,c-f-2*h],domain:[i-k/2,i+k/2],_id:"x"},z4(r.xaxis,r.graphDiv._fullLayout),r.xaxis.setScale(),r.xaxis.isPtWithinRange=function(V){return V.a>=r.aaxis.range[0]&&V.a<=r.aaxis.range[1]&&V.b>=r.baxis.range[1]&&V.b<=r.baxis.range[0]&&V.c>=r.caxis.range[1]&&V.c<=r.caxis.range[0]},r.yaxis={type:"linear",range:[f,c-h-d],domain:[a-E/2,a+E/2],_id:"y"},z4(r.yaxis,r.graphDiv._fullLayout),r.yaxis.setScale(),r.yaxis.isPtWithinRange=function(){return!0};var S=r.yaxis.domain[0],L=r.aaxis=IG({},e.aaxis,{range:[f,c-h-d],side:"left",tickangle:(+e.aaxis.tickangle||0)-30,domain:[S,S+E*NT],anchor:"free",position:0,_id:"y",_length:b});z4(L,r.graphDiv._fullLayout),L.setScale();var x=r.baxis=IG({},e.baxis,{range:[c-f-d,h],side:"bottom",domain:r.xaxis.domain,anchor:"free",position:0,_id:"x",_length:b});z4(x,r.graphDiv._fullLayout),x.setScale();var C=r.caxis=IG({},e.caxis,{range:[c-f-h,d],side:"right",tickangle:(+e.caxis.tickangle||0)+30,domain:[S,S+E*NT],anchor:"free",position:0,_id:"y",_length:b});z4(C,r.graphDiv._fullLayout),C.setScale();var M="M"+v+","+(_+p)+"h"+b+"l-"+b/2+",-"+p+"Z";r.clipDef.select("path").attr("d",M),r.layers.plotbg.select("path").attr("d",M);var g="M0,"+p+"h"+b+"l-"+b/2+",-"+p+"Z";r.clipDefRelative.select("path").attr("d",g);var P=Fm(v,_);r.plotContainer.selectAll(".scatterlayer,.maplayer").attr("transform",P),r.clipDefRelative.select("path").attr("transform",null);var T=Fm(v-x._offset,_+p);r.layers.baxis.attr("transform",T),r.layers.bgrid.attr("transform",T);var z=Fm(v+b/2,_)+"rotate(30)"+Fm(0,-L._offset);r.layers.aaxis.attr("transform",z),r.layers.agrid.attr("transform",z);var O=Fm(v+b/2,_)+"rotate(-30)"+Fm(0,-C._offset);r.layers.caxis.attr("transform",O),r.layers.cgrid.attr("transform",O),r.drawAxes(!0),r.layers.aline.select("path").attr("d",L.showline?"M"+v+","+(_+p)+"l"+b/2+",-"+p:"M0,0").call(UT.stroke,L.linecolor||"#000").style("stroke-width",(L.linewidth||0)+"px"),r.layers.bline.select("path").attr("d",x.showline?"M"+v+","+(_+p)+"h"+b:"M0,0").call(UT.stroke,x.linecolor||"#000").style("stroke-width",(x.linewidth||0)+"px"),r.layers.cline.select("path").attr("d",C.showline?"M"+(v+b/2)+","+_+"l"+b/2+","+p:"M0,0").call(UT.stroke,C.linecolor||"#000").style("stroke-width",(C.linewidth||0)+"px"),r.graphDiv._context.staticPlot||r.initInteractions(),D8.setClipUrl(r.layers.frontplot,r._hasClipOnAxisFalse?null:r.clipId,r.graphDiv)};zm.drawAxes=function(e){var t=this,r=t.graphDiv,n=t.id.slice(7)+"title",i=t.layers,a=t.aaxis,o=t.baxis,s=t.caxis;if(t.drawAx(a),t.drawAx(o),t.drawAx(s),e){var l=Math.max(a.showticklabels?a.tickfont.size/2:0,(s.showticklabels?s.tickfont.size*.75:0)+(s.ticks==="outside"?s.ticklen*.87:0)),u=(o.showticklabels?o.tickfont.size:0)+(o.ticks==="outside"?o.ticklen:0)+3;i["a-title"]=RG.draw(r,"a"+n,{propContainer:a,propName:t.id+".aaxis.title.text",placeholder:R8(r,"Click to enter Component A title"),attributes:{x:t.x0+t.w/2,y:t.y0-a.title.font.size/3-l,"text-anchor":"middle"}}),i["b-title"]=RG.draw(r,"b"+n,{propContainer:o,propName:t.id+".baxis.title.text",placeholder:R8(r,"Click to enter Component B title"),attributes:{x:t.x0-u,y:t.y0+t.h+o.title.font.size*.83+u,"text-anchor":"middle"}}),i["c-title"]=RG.draw(r,"c"+n,{propContainer:s,propName:t.id+".caxis.title.text",placeholder:R8(r,"Click to enter Component C title"),attributes:{x:t.x0+t.w+u,y:t.y0+t.h+s.title.font.size*.83+u,"text-anchor":"middle"}})}};zm.drawAx=function(e){var t=this,r=t.graphDiv,n=e._name,i=n.charAt(0),a=e._id,o=t.layers[n],s=30,l=i+"tickLayout",u=I2t(e);t[l]!==u&&(o.selectAll("."+a+"tick").remove(),t[l]=u),e.setScale();var c=E_.calcTicks(e),f=E_.clipEnds(e,c),h=E_.makeTransTickFn(e),d=E_.getTickSigns(e)[2],v=By.deg2rad(s),_=d*(e.linewidth||1)/2,b=d*e.ticklen,p=t.w,k=t.h,E=i==="b"?"M0,"+_+"l"+Math.sin(v)*b+","+Math.cos(v)*b:"M"+_+",0l"+Math.cos(v)*b+","+-Math.sin(v)*b,S={a:"M0,0l"+k+",-"+p/2,b:"M0,0l-"+p/2+",-"+k,c:"M0,0l-"+k+","+p/2}[i];E_.drawTicks(r,e,{vals:e.ticks==="inside"?f:c,layer:o,path:E,transFn:h,crisp:!1}),E_.drawGrid(r,e,{vals:f,layer:t.layers[i+"grid"],path:S,transFn:h,crisp:!1}),E_.drawLabels(r,e,{vals:c,layer:o,transFn:h,labelFns:E_.makeLabelFns(e,0,s)})};function I2t(e){return e.ticks+String(e.ticklen)+String(e.showticklabels)}var yd=A2e.MINZOOM/2+.87,R2t="m-0.87,.5h"+yd+"v3h-"+(yd+5.2)+"l"+(yd/2+2.6)+",-"+(yd*.87+4.5)+"l2.6,1.5l-"+yd/2+","+yd*.87+"Z",D2t="m0.87,.5h-"+yd+"v3h"+(yd+5.2)+"l-"+(yd/2+2.6)+",-"+(yd*.87+4.5)+"l-2.6,1.5l"+yd/2+","+yd*.87+"Z",F2t="m0,1l"+yd/2+","+yd*.87+"l2.6,-1.5l-"+(yd/2+2.6)+",-"+(yd*.87+4.5)+"l-"+(yd/2+2.6)+","+(yd*.87+4.5)+"l2.6,1.5l"+yd/2+",-"+yd*.87+"Z",z2t="m0.5,0.5h5v-2h-5v-5h-2v5h-5v2h5v5h2Z",x2e=!0;zm.clearOutline=function(){P2t(this.dragOptions),L2t(this.dragOptions.gd)};zm.initInteractions=function(){var e=this,t=e.layers.plotbg.select("path").node(),r=e.graphDiv,n=r._fullLayout._zoomlayer,i,a;this.dragOptions={element:t,gd:r,plotinfo:{id:e.id,domain:r._fullLayout[e.id].domain,xaxis:e.xaxis,yaxis:e.yaxis},subplot:e.id,prepFn:function(T,z,O){e.dragOptions.xaxes=[e.xaxis],e.dragOptions.yaxes=[e.yaxis],i=r._fullLayout._invScaleX,a=r._fullLayout._invScaleY;var V=e.dragOptions.dragmode=r._fullLayout.dragmode;_2e(V)?e.dragOptions.minDrag=1:e.dragOptions.minDrag=void 0,V==="zoom"?(e.dragOptions.moveFn=x,e.dragOptions.clickFn=p,e.dragOptions.doneFn=C,k(T,z,O)):V==="pan"?(e.dragOptions.moveFn=g,e.dragOptions.clickFn=p,e.dragOptions.doneFn=P,M(),e.clearOutline(r)):(E2t(V)||_2e(V))&&k2t(T,z,O,e.dragOptions,V)}};var o,s,l,u,c,f,h,d,v,_;function b(T){var z={};return z[e.id+".aaxis.min"]=T.a,z[e.id+".baxis.min"]=T.b,z[e.id+".caxis.min"]=T.c,z}function p(T,z){var O=r._fullLayout.clickmode;b2e(r),T===2&&(r.emit("plotly_doubleclick",null),PG.call("_guiRelayout",r,b({a:0,b:0,c:0}))),O.indexOf("select")>-1&&T===1&&C2t(z,r,[e.xaxis],[e.yaxis],e.id,e.dragOptions),O.indexOf("event")>-1&&y2e.click(r,z,e.id)}function k(T,z,O){var V=t.getBoundingClientRect();o=z-V.left,s=O-V.top,r._fullLayout._calcInverseTransform(r);var G=r._fullLayout._invTransform,Z=By.apply3DTransform(G)(o,s);o=Z[0],s=Z[1],l={a:e.aaxis.range[0],b:e.baxis.range[1],c:e.caxis.range[1]},c=l,u=e.aaxis.range[1]-l.a,f=S2t(e.graphDiv._fullLayout[e.id].bgcolor).getLuminance(),h="M0,"+e.h+"L"+e.w/2+", 0L"+e.w+","+e.h+"Z",d=!1,v=n.append("path").attr("class","zoombox").attr("transform",Fm(e.x0,e.y0)).style({fill:f>.2?"rgba(0,0,0,0)":"rgba(255,255,255,0)","stroke-width":0}).attr("d",h),_=n.append("path").attr("class","zoombox-corners").attr("transform",Fm(e.x0,e.y0)).style({fill:UT.background,stroke:UT.defaultLine,"stroke-width":1,opacity:0}).attr("d","M0,0Z"),e.clearOutline(r)}function E(T,z){return 1-z/e.h}function S(T,z){return 1-(T+(e.h-z)/Math.sqrt(3))/e.w}function L(T,z){return(T-(e.h-z)/Math.sqrt(3))/e.w}function x(T,z){var O=o+T*i,V=s+z*a,G=Math.max(0,Math.min(1,E(o,s),E(O,V))),Z=Math.max(0,Math.min(1,S(o,s),S(O,V))),j=Math.max(0,Math.min(1,L(o,s),L(O,V))),N=(G/2+j)*e.w,H=(1-G/2-Z)*e.w,te=(N+H)/2,oe=H-N,_e=(1-G)*e.h,Ee=_e-oe/NT;oe<A2e.MINZOOM?(c=l,v.attr("d",h),_.attr("d","M0,0Z")):(c={a:l.a+G*u,b:l.b+Z*u,c:l.c+j*u},v.attr("d",h+"M"+N+","+_e+"H"+H+"L"+te+","+Ee+"L"+N+","+_e+"Z"),_.attr("d","M"+o+","+s+z2t+"M"+N+","+_e+R2t+"M"+H+","+_e+D2t+"M"+te+","+Ee+F2t)),d||(v.transition().style("fill",f>.2?"rgba(0,0,0,0.4)":"rgba(255,255,255,0.3)").duration(200),_.transition().style("opacity",1).duration(200),d=!0),r.emit("plotly_relayouting",b(c))}function C(){b2e(r),c!==l&&(PG.call("_guiRelayout",r,b(c)),x2e&&r.data&&r._context.showTips&&(By.notifier(R8(r,"Double-click to zoom back out"),"long"),x2e=!1))}function M(){l={a:e.aaxis.range[0],b:e.baxis.range[1],c:e.caxis.range[1]},c=l}function g(T,z){var O=T/e.xaxis._m,V=z/e.yaxis._m;c={a:l.a-V,b:l.b+(O+V)/2,c:l.c-(O-V)/2};var G=[c.a,c.b,c.c].sort(By.sorterAsc),Z={a:G.indexOf(c.a),b:G.indexOf(c.b),c:G.indexOf(c.c)};G[0]<0&&(G[1]+G[0]/2<0?(G[2]+=G[0]+G[1],G[0]=G[1]=0):(G[2]+=G[0]/2,G[1]+=G[0]/2,G[0]=0),c={a:G[Z.a],b:G[Z.b],c:G[Z.c]},z=(l.a-c.a)*e.yaxis._m,T=(l.c-c.c-l.b+c.b)*e.xaxis._m);var j=Fm(e.x0+T,e.y0+z);e.plotContainer.selectAll(".scatterlayer,.maplayer").attr("transform",j);var N=Fm(-T,-z);e.clipDefRelative.select("path").attr("transform",N),e.aaxis.range=[c.a,e.sum-c.b-c.c],e.baxis.range=[e.sum-c.a-c.c,c.b],e.caxis.range=[e.sum-c.a-c.b,c.c],e.drawAxes(!1),e._hasClipOnAxisFalse&&e.plotContainer.select(".scatterlayer").selectAll(".trace").call(D8.hideOutsideRangePoints,e),r.emit("plotly_relayouting",b(c))}function P(){PG.call("_guiRelayout",r,b(c))}t.onmousemove=function(T){y2e.hover(r,T,e.id),r._fullLayout._lasthover=t,r._fullLayout._hoversubplot=e.id},t.onmouseout=function(T){r._dragging||m2e.unhover(r,T)},m2e.init(this.dragOptions)};function b2e(e){w2e.select(e).selectAll(".zoombox,.js-zoombox-backdrop,.js-zoombox-menu,.zoombox-corners").remove()}});var zG=ye((Bcr,k2e)=>{"use strict";var O2t=Lh(),q2t=Cc().attributes,su=Rd(),B2t=mc().overrideAll,DG=Ao().extendFlat,FG={title:{text:su.title.text,font:su.title.font},color:su.color,tickmode:su.minor.tickmode,nticks:DG({},su.nticks,{dflt:6,min:1}),tick0:su.tick0,dtick:su.dtick,tickvals:su.tickvals,ticktext:su.ticktext,ticks:su.ticks,ticklen:su.ticklen,tickwidth:su.tickwidth,tickcolor:su.tickcolor,ticklabelstep:su.ticklabelstep,showticklabels:su.showticklabels,labelalias:su.labelalias,showtickprefix:su.showtickprefix,tickprefix:su.tickprefix,showticksuffix:su.showticksuffix,ticksuffix:su.ticksuffix,showexponent:su.showexponent,exponentformat:su.exponentformat,minexponent:su.minexponent,separatethousands:su.separatethousands,tickfont:su.tickfont,tickangle:su.tickangle,tickformat:su.tickformat,tickformatstops:su.tickformatstops,hoverformat:su.hoverformat,showline:DG({},su.showline,{dflt:!0}),linecolor:su.linecolor,linewidth:su.linewidth,showgrid:DG({},su.showgrid,{dflt:!0}),gridcolor:su.gridcolor,gridwidth:su.gridwidth,griddash:su.griddash,layer:su.layer,min:{valType:"number",dflt:0,min:0}},F8=k2e.exports=B2t({domain:q2t({name:"ternary"}),bgcolor:{valType:"color",dflt:O2t.background},sum:{valType:"number",dflt:1,min:0},aaxis:FG,baxis:FG,caxis:FG},"plot","from-root");F8.uirevision={valType:"any",editType:"none"};F8.aaxis.uirevision=F8.baxis.uirevision=F8.caxis.uirevision={valType:"any",editType:"none"}});var k_=ye((Ncr,C2e)=>{"use strict";var N2t=Dr(),U2t=vl(),V2t=Cc().defaults;C2e.exports=function(t,r,n,i){var a=i.type,o=i.attributes,s=i.handleDefaults,l=i.partition||"x",u=r._subplots[a],c=u.length,f=c&&u[0].replace(/\d+$/,""),h,d;function v(k,E){return N2t.coerce(h,d,o,k,E)}for(var _=0;_<c;_++){var b=u[_];t[b]?h=t[b]:h=t[b]={},d=U2t.newContainer(r,b,f),i.noUirevision||v("uirevision",r.uirevision);var p={};p[l]=[_/c,(_+1)/c],V2t(d,r,v,p),i.id=b,s(h,d,v,i)}}});var R2e=ye((Ucr,I2e)=>{"use strict";var G2t=ka(),H2t=vl(),z8=Dr(),j2t=k_(),W2t=e_(),X2t=t_(),Z2t=M3(),Y2t=bb(),K2t=t4(),P2e=zG(),L2e=["aaxis","baxis","caxis"];I2e.exports=function(t,r,n){j2t(t,r,n,{type:"ternary",attributes:P2e,handleDefaults:J2t,font:r.font,paper_bgcolor:r.paper_bgcolor})};function J2t(e,t,r,n){var i=r("bgcolor"),a=r("sum");n.bgColor=G2t.combine(i,n.paper_bgcolor);for(var o,s,l,u=0;u<L2e.length;u++)o=L2e[u],s=e[o]||{},l=H2t.newContainer(t,o),l._name=o,$2t(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 $2t(e,t,r,n){var i=P2e[t._name];function a(d,v){return z8.coerce(e,t,i,d,v)}a("uirevision",n.uirevision),t.type="linear";var o=a("color"),s=o!==i.color.dflt?o:r.font.color,l=t._name,u=l.charAt(0).toUpperCase(),c="Component "+u,f=a("title.text",c);t._hovertitle=f===c?f:u,z8.coerceFont(a,"title.font",r.font,{overrideDflt:{size:z8.bigFont(r.font.size),color:s}}),a("min"),Y2t(e,t,a,"linear"),X2t(e,t,a,"linear"),W2t(e,t,a,"linear",{noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0}),Z2t(e,t,a,{outerTicks:!0});var h=a("showticklabels");h&&(z8.coerceFont(a,"tickfont",r.font,{overrideDflt:{color:s}}),a("tickangle"),a("tickformat")),K2t(e,t,a,{dfltColor:o,bgColor:r.bgColor,blend:60,showLine:!0,showGrid:!0,noZeroLine:!0,attributes:i}),a("hoverformat"),a("layer")}});var D2e=ye(W0=>{"use strict";var Q2t=E2e(),ewt=Id().getSubplotCalcData,twt=Dr().counterRegex,VT="ternary";W0.name=VT;var rwt=W0.attr="subplot";W0.idRoot=VT;W0.idRegex=W0.attrRegex=twt(VT);var iwt=W0.attributes={};iwt[rwt]={valType:"subplotid",dflt:"ternary",editType:"calc"};W0.layoutAttributes=zG();W0.supplyLayoutDefaults=R2e();W0.plot=function(t){for(var r=t._fullLayout,n=t.calcdata,i=r._subplots[VT],a=0;a<i.length;a++){var o=i[a],s=ewt(n,VT,o),l=r[o]._subplot;l||(l=new Q2t({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[VT]||[],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 z2e=ye((Gcr,F2e)=>{"use strict";F2e.exports={attributes:kG(),supplyDefaults:n2e(),colorbar:$d(),formatLabels:o2e(),calc:c2e(),plot:h2e(),style:op().style,styleOnSelect:op().styleOnSelect,hoverPoints:v2e(),selectPoints:hT(),eventData:g2e(),moduleType:"trace",name:"scatterternary",basePlotModule:D2e(),categories:["ternary","symbols","showLegend","scatter-like"],meta:{}}});var q2e=ye((Hcr,O2e)=>{"use strict";O2e.exports=z2e()});var OG=ye((jcr,N2e)=>{"use strict";var Fh=x4(),GT=Ao().extendFlat,B2e=df().axisHoverFormat;N2e.exports={y:Fh.y,x:Fh.x,x0:Fh.x0,y0:Fh.y0,xhoverformat:B2e("x"),yhoverformat:B2e("y"),name:GT({},Fh.name,{}),orientation:GT({},Fh.orientation,{}),bandwidth:{valType:"number",min:0,editType:"calc"},scalegroup:{valType:"string",dflt:"",editType:"calc"},scalemode:{valType:"enumerated",values:["width","count"],dflt:"width",editType:"calc"},spanmode:{valType:"enumerated",values:["soft","hard","manual"],dflt:"soft",editType:"calc"},span:{valType:"info_array",items:[{valType:"any",editType:"calc"},{valType:"any",editType:"calc"}],editType:"calc"},line:{color:{valType:"color",editType:"style"},width:{valType:"number",min:0,dflt:2,editType:"style"},editType:"plot"},fillcolor:Fh.fillcolor,points:GT({},Fh.boxpoints,{}),jitter:GT({},Fh.jitter,{}),pointpos:GT({},Fh.pointpos,{}),width:GT({},Fh.width,{}),marker:Fh.marker,text:Fh.text,hovertext:Fh.hovertext,hovertemplate:Fh.hovertemplate,hovertemplatefallback:Fh.hovertemplatefallback,quartilemethod:Fh.quartilemethod,box:{visible:{valType:"boolean",dflt:!1,editType:"plot"},width:{valType:"number",min:0,max:1,dflt:.25,editType:"plot"},fillcolor:{valType:"color",editType:"style"},line:{color:{valType:"color",editType:"style"},width:{valType:"number",min:0,editType:"style"},editType:"style"},editType:"plot"},meanline:{visible:{valType:"boolean",dflt:!1,editType:"plot"},color:{valType:"color",editType:"style"},width:{valType:"number",min:0,editType:"style"},editType:"plot"},side:{valType:"enumerated",values:["both","positive","negative"],dflt:"both",editType:"calc"},offsetgroup:Fh.offsetgroup,alignmentgroup:Fh.alignmentgroup,selected:Fh.selected,unselected:Fh.unselected,hoveron:{valType:"flaglist",flags:["violins","points","kde"],dflt:"violins+points+kde",extras:["all"],editType:"style"},zorder:Fh.zorder}});var NG=ye((Wcr,U2e)=>{"use strict";var qG=b4(),BG=Dr().extendFlat;U2e.exports={violinmode:BG({},qG.boxmode,{}),violingap:BG({},qG.boxgap,{}),violingroupgap:BG({},qG.boxgroupgap,{})}});var W2e=ye((Xcr,j2e)=>{"use strict";var V2e=Dr(),nwt=ka(),G2e=T4(),H2e=OG();j2e.exports=function(t,r,n,i){function a(L,x){return V2e.coerce(t,r,H2e,L,x)}function o(L,x){return V2e.coerce2(t,r,H2e,L,x)}if(G2e.handleSampleDefaults(t,r,a,i),r.visible!==!1){a("bandwidth"),a("side");var s=a("width");s||(a("scalegroup",r.name),a("scalemode"));var l=a("span"),u;Array.isArray(l)&&(u="manual"),a("spanmode",u);var c=a("line.color",(t.marker||{}).color||n),f=a("line.width"),h=a("fillcolor",nwt.addOpacity(r.line.color,.5));G2e.handlePointsDefaults(t,r,a,{prefix:""});var d=o("box.width"),v=o("box.fillcolor",h),_=o("box.line.color",c),b=o("box.line.width",f),p=a("box.visible",!!(d||v||_||b));p||(r.box={visible:!1});var k=o("meanline.color",c),E=o("meanline.width",f),S=a("meanline.visible",!!(k||E));S||(r.meanline={visible:!1}),a("quartilemethod"),a("zorder")}}});var Z2e=ye((Zcr,X2e)=>{"use strict";var awt=Dr(),owt=NG(),swt=ZI();X2e.exports=function(t,r,n){function i(a,o){return awt.coerce(t,r,owt,a,o)}swt._supply(t,r,n,i,"violin")}});var O8=ye(s2=>{"use strict";var lwt=Dr(),uwt={gaussian:function(e){return 1/Math.sqrt(2*Math.PI)*Math.exp(-.5*e*e)}};s2.makeKDE=function(e,t,r){var n=r.length,i=uwt.gaussian,a=e.bandwidth,o=1/(n*a);return function(s){for(var l=0,u=0;u<n;u++)l+=i((s-r[u])/a);return o*l}};s2.getPositionOnKdePath=function(e,t,r){var n,i;t.orientation==="h"?(n="y",i="x"):(n="x",i="y");var a=lwt.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]};s2.getKdeValue=function(e,t,r){var n=e.pts.map(s2.extractVal),i=s2.makeKDE(e,t,n);return i(r)/e.posDensityScale};s2.extractVal=function(e){return e.v}});var J2e=ye((Kcr,K2e)=>{"use strict";var UG=Dr(),VG=ho(),cwt=RV(),Y2e=O8(),fwt=fs().BADNUM;K2e.exports=function(t,r){var n=cwt(t,r);if(n[0].t.empty)return n;for(var i=t._fullLayout,a=VG.getFromId(t,r[r.orientation==="h"?"xaxis":"yaxis"]),o=1/0,s=-1/0,l=0,u=0,c=0;c<n.length;c++){var f=n[c],h=f.pts.map(Y2e.extractVal),d=f.bandwidth=dwt(r,f,h),v=f.span=vwt(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 _=v[1]-v[0],b=Math.ceil(_/(d/3)),p=_/b;if(!isFinite(p)||!isFinite(b))return UG.error("Something went wrong with computing the violin span"),n[0].t.empty=!0,n;var k=Y2e.makeKDE(f,r,h);f.density=new Array(b+1);for(var E=0;E<f.density.length;E++){var S=v[0]+E*p,L=k(S);f.density[E]={v:L,t:S},l=Math.max(l,L)}}u=Math.max(u,h.length),o=Math.min(o,v[0]),s=Math.max(s,v[1])}var x=VG.findExtremes(a,[o,s],{padded:!0});if(r._extremes[a._id]=x,r.width)n[0].t.maxKDE=l;else{var C=i._violinScaleGroupStats,M=r.scalegroup,g=C[M];g?(g.maxKDE=Math.max(g.maxKDE,l),g.maxCount=Math.max(g.maxCount,u)):C[M]={maxKDE:l,maxCount:u}}return n[0].t.labels.kde=UG._(t,"kde:"),n};function hwt(e,t,r){var n=Math.min(t,r/1.349);return 1.059*n*Math.pow(e,-.2)}function dwt(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=UG.stdev(r,i-1,t.mean);return Math.max(hwt(i,a,t.q3-t.q1),n/100)}function vwt(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===fwt?s[f]:d}i==="soft"?l=s:i==="hard"?l=o:l=[u(0),u(1)];var c={type:"linear",range:l};return VG.setConvert(c),c.cleanRange(),l}});var ewe=ye((Jcr,Q2e)=>{"use strict";var pwt=KI().setPositionOffset,$2e=["v","h"];Q2e.exports=function(t,r){for(var n=t.calcdata,i=r.xaxis,a=r.yaxis,o=0;o<$2e.length;o++){for(var s=$2e[o],l=s==="h"?a:i,u=[],c=0;c<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)}pwt("violin",t,u,l)}}});var rwe=ye(($cr,twe)=>{"use strict";var GG=Oa(),HG=Dr(),gwt=So(),jG=JI(),mwt=yU(),ywt=O8();twe.exports=function(t,r,n,i){var a=t._context.staticPlot,o=t._fullLayout,s=r.xaxis,l=r.yaxis;function u(c,f){var h=mwt(c,{xaxis:s,yaxis:l,trace:f,connectGaps:!0,baseTolerance:.75,shape:"spline",simplify:!0,linearized:!0});return gwt.smoothopen(h[0],1)}HG.makeTraceGroups(i,n,"trace violins").each(function(c){var f=GG.select(this),h=c[0],d=h.t,v=h.trace;if(v.visible!==!0||d.empty){f.remove();return}var _=d.bPos,b=d.bdPos,p=r[d.valLetter+"axis"],k=r[d.posLetter+"axis"],E=v.side==="both",S=E||v.side==="positive",L=E||v.side==="negative",x=f.selectAll("path.violin").data(HG.identity);x.enter().append("path").style("vector-effect",a?"none":"non-scaling-stroke").attr("class","violin"),x.exit().remove(),x.each(function(V){var G=GG.select(this),Z=V.density,j=Z.length,N=k.c2l(V.pos+_,!0),H=k.l2p(N),te;if(v.width)te=d.maxKDE/b;else{var oe=o._violinScaleGroupStats[v.scalegroup];te=v.scalemode==="count"?oe.maxKDE/b*(oe.maxCount/V.pts.length):oe.maxKDE/b}var _e,Ee,Ce,me,ie,Se,Le;if(S){for(Se=new Array(j),me=0;me<j;me++)Le=Se[me]={},Le[d.posLetter]=N+Z[me].v/te,Le[d.valLetter]=p.c2l(Z[me].t,!0);_e=u(Se,v)}if(L){for(Se=new Array(j),ie=0,me=j-1;ie<j;ie++,me--)Le=Se[ie]={},Le[d.posLetter]=N-Z[me].v/te,Le[d.valLetter]=p.c2l(Z[me].t,!0);Ee=u(Se,v)}if(E)Ce=_e+"L"+Ee.slice(1)+"Z";else{var Ae=[H,p.c2p(Z[0].t)],Fe=[H,p.c2p(Z[j-1].t)];v.orientation==="h"&&(Ae.reverse(),Fe.reverse()),S?Ce="M"+Ae+"L"+_e.slice(1)+"L"+Fe:Ce="M"+Fe+"L"+Ee.slice(1)+"L"+Ae}G.attr("d",Ce),V.posCenterPx=H,V.posDensityScale=te*b,V.path=G.node(),V.pathLength=V.path.getTotalLength()/(E?2:1)});var C=v.box,M=C.width,g=(C.line||{}).width,P,T;E?(P=b*M,T=0):S?(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]),jG.plotBoxAndWhiskers(f,{pos:k,val:p},v,{bPos:_,bdPos:P,bPosPxOffset:T}),jG.plotBoxMean(f,{pos:k,val:p},v,{bPos:_,bdPos:P,bPosPxOffset:T});var z;!v.box.visible&&v.meanline.visible&&(z=HG.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=ywt.getPositionOnKdePath(V,v,G);GG.select(this).attr("d",v.orientation==="h"?"M"+G+","+Z[0]+"V"+Z[1]:"M"+Z[0]+","+G+"H"+Z[1])}),jG.plotPoints(f,{x:s,y:l},v,d)})}});var awe=ye((Qcr,nwe)=>{"use strict";var iwe=Oa(),HT=ka(),_wt=op().stylePoints;nwe.exports=function(t){var r=iwe.select(t).selectAll("g.trace.violins");r.style("opacity",function(n){return n[0].trace.opacity}),r.each(function(n){var i=n[0].trace,a=iwe.select(this),o=i.box||{},s=o.line||{},l=i.meanline||{},u=l.width;a.selectAll("path.violin").style("stroke-width",i.line.width+"px").call(HT.stroke,i.line.color).call(HT.fill,i.fillcolor),a.selectAll("path.box").style("stroke-width",s.width+"px").call(HT.stroke,s.color).call(HT.fill,o.fillcolor);var c={"stroke-width":u+"px","stroke-dasharray":2*u+"px,"+u+"px"};a.selectAll("path.mean").style(c).call(HT.stroke,l.color),a.selectAll("path.meanline").style(c).call(HT.stroke,l.color),_wt(a,i,t)})}});var uwe=ye((efr,lwe)=>{"use strict";var xwt=ka(),WG=Dr(),bwt=ho(),owe=qV(),swe=O8();lwe.exports=function(t,r,n,i,a){a||(a={});var o=a.hoverLayer,s=t.cd,l=s[0].trace,u=l.hoveron,c=u.indexOf("violins")!==-1,f=u.indexOf("kde")!==-1,h=[],d,v;if(c||f){var _=owe.hoverOnBoxes(t,r,n,i);if(f&&_.length>0){var b=t.xa,p=t.ya,k,E,S,L,x;l.orientation==="h"?(x=r,k="y",S=p,E="x",L=b):(x=n,k="x",S=b,E="y",L=p);var C=s[t.index];if(x>=C.span[0]&&x<=C.span[1]){var M=WG.extendFlat({},t),g=L.c2p(x,!0),P=swe.getKdeValue(C,l,x),T=swe.getPositionOnKdePath(C,l,g),z=S._offset,O=S._length;M[k+"0"]=T[0],M[k+"1"]=T[1],M[E+"0"]=M[E+"1"]=g,M[E+"Label"]=E+": "+bwt.hoverLabelText(L,x,l[E+"hoverformat"])+", "+s[0].t.labels.kde+" "+P.toFixed(3);for(var V=0,G=0;G<_.length;G++)if(_[G].attr==="med"){V=G;break}M.spikeDistance=_[V].spikeDistance;var Z=k+"Spike";M[Z]=_[V][Z],_[V].spikeDistance=void 0,_[V][Z]=void 0,M.hovertemplate=!1,h.push(M),v={},v[k+"1"]=WG.constrain(z+T[0],z,z+O),v[k+"2"]=WG.constrain(z+T[1],z,z+O),v[E+"1"]=v[E+"2"]=L._offset+g}}c&&(h=h.concat(_))}u.indexOf("points")!==-1&&(d=owe.hoverOnPoints(t,r,n));var j=o.selectAll(".violinline-"+l.uid).data(v?[0]:[]);return j.enter().append("line").classed("violinline-"+l.uid,!0).attr("stroke-width",1.5),j.exit().remove(),j.attr(v).call(xwt.stroke,t.color),i==="closest"?d?[d]:h:(d&&h.push(d),h)}});var fwe=ye((tfr,cwe)=>{"use strict";cwe.exports={attributes:OG(),layoutAttributes:NG(),supplyDefaults:W2e(),crossTraceDefaults:T4().crossTraceDefaults,supplyLayoutDefaults:Z2e(),calc:J2e(),crossTraceCalc:ewe(),plot:rwe(),style:awe(),styleOnSelect:op().styleOnSelect,hoverPoints:uwe(),selectPoints:BV(),moduleType:"trace",name:"violin",basePlotModule:ph(),categories:["cartesian","svg","symbols","oriented","box-violin","showLegend","violinLayout","zoomScale"],meta:{}}});var dwe=ye((rfr,hwe)=>{"use strict";hwe.exports=fwe()});var pwe=ye((ifr,vwe)=>{"use strict";vwe.exports={eventDataKeys:["percentInitial","percentPrevious","percentTotal"]}});var ZG=ye((nfr,_we)=>{"use strict";var jc=Lm(),XG=pf().line,wwt=Gl(),gwe=df().axisHoverFormat,{hovertemplateAttrs:Twt,texttemplateAttrs:Awt,templatefallbackAttrs:mwe}=Ll(),ywe=pwe(),Ny=Ao().extendFlat,Swt=ka();_we.exports={x:jc.x,x0:jc.x0,dx:jc.dx,y:jc.y,y0:jc.y0,dy:jc.dy,xperiod:jc.xperiod,yperiod:jc.yperiod,xperiod0:jc.xperiod0,yperiod0:jc.yperiod0,xperiodalignment:jc.xperiodalignment,yperiodalignment:jc.yperiodalignment,xhoverformat:gwe("x"),yhoverformat:gwe("y"),hovertext:jc.hovertext,hovertemplate:Twt({},{keys:ywe.eventDataKeys}),hovertemplatefallback:mwe(),hoverinfo:Ny({},wwt.hoverinfo,{flags:["name","x","y","text","percent initial","percent previous","percent total"]}),textinfo:{valType:"flaglist",flags:["label","text","percent initial","percent previous","percent total","value"],extras:["none"],editType:"plot",arrayOk:!1},texttemplate:Awt({editType:"plot"},{keys:ywe.eventDataKeys.concat(["label","value"])}),texttemplatefallback:mwe({editType:"plot"}),text:jc.text,textposition:jc.textposition,insidetextanchor:Ny({},jc.insidetextanchor,{dflt:"middle"}),textangle:Ny({},jc.textangle,{dflt:0}),textfont:jc.textfont,insidetextfont:jc.insidetextfont,outsidetextfont:jc.outsidetextfont,constraintext:jc.constraintext,cliponaxis:jc.cliponaxis,orientation:Ny({},jc.orientation,{}),offset:Ny({},jc.offset,{arrayOk:!1}),width:Ny({},jc.width,{arrayOk:!1}),marker:Mwt(),connector:{fillcolor:{valType:"color",editType:"style"},line:{color:Ny({},XG.color,{dflt:Swt.defaultLine}),width:Ny({},XG.width,{dflt:0,editType:"plot"}),dash:XG.dash,editType:"style"},visible:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},offsetgroup:jc.offsetgroup,alignmentgroup:jc.alignmentgroup,zorder:jc.zorder};function Mwt(){var e=Ny({},jc.marker);return delete e.pattern,delete e.cornerradius,e}});var YG=ye((afr,xwe)=>{"use strict";xwe.exports={funnelmode:{valType:"enumerated",values:["stack","group","overlay"],dflt:"stack",editType:"calc"},funnelgap:{valType:"number",min:0,max:1,editType:"calc"},funnelgroupgap:{valType:"number",min:0,max:1,dflt:0,editType:"calc"}}});var JG=ye((ofr,wwe)=>{"use strict";var q8=Dr(),Ewt=Hb(),kwt=r0().handleText,Cwt=eT(),Lwt=Ig(),bwe=ZG(),KG=ka();function Pwt(e,t,r,n){function i(f,h){return q8.coerce(e,t,bwe,f,h)}var a=Cwt(e,t,n,i);if(!a){t.visible=!1;return}Lwt(e,t,n,i),i("xhoverformat"),i("yhoverformat"),i("orientation",t.y&&!t.x?"v":"h"),i("offset"),i("width");var o=i("text");i("hovertext"),i("hovertemplate"),i("hovertemplatefallback");var s=i("textposition");kwt(e,t,n,i,s,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),t.textposition!=="none"&&!t.texttemplate&&i("textinfo",q8.isArrayOrTypedArray(o)?"text+value":"value");var l=i("marker.color",r);i("marker.line.color",KG.defaultLine),i("marker.line.width");var u=i("connector.visible");if(u){i("connector.fillcolor",Iwt(l));var c=i("connector.line.width");c&&(i("connector.line.color"),i("connector.line.dash"))}i("zorder")}function Iwt(e){var t=q8.isArrayOrTypedArray(e)?"#000":e;return KG.addOpacity(t,.5*KG.opacity(t))}function Rwt(e,t){var r,n;function i(o){return q8.coerce(n._input,n,bwe,o)}for(var a=0;a<e.length;a++)n=e[a],n.type==="funnel"&&(r=n._input,Ewt(r,n,t,i,t.funnelmode))}wwe.exports={supplyDefaults:Pwt,crossTraceDefaults:Rwt}});var Awe=ye((sfr,Twe)=>{"use strict";var Dwt=Dr(),Fwt=YG();Twe.exports=function(e,t,r){var n=!1;function i(s,l){return Dwt.coerce(e,t,Fwt,s,l)}for(var a=0;a<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 Mwe=ye((lfr,Swe)=>{"use strict";var jT=Dr();Swe.exports=function(t,r){for(var n=0;n<t.length;n++)t[n].i=n;jT.mergeArray(r.text,t,"tx"),jT.mergeArray(r.hovertext,t,"htx");var i=r.marker;if(i){jT.mergeArray(i.opacity,t,"mo"),jT.mergeArray(i.color,t,"mc");var a=i.line;a&&(jT.mergeArray(a.color,t,"mlc"),jT.mergeArrayCastPositive(a.width,t,"mlw"))}}});var Lwe=ye((ufr,Cwe)=>{"use strict";var Ewe=ho(),kwe=Dg(),zwt=Mwe(),Owt=z0(),O4=fs().BADNUM;Cwe.exports=function(t,r){var n=Ewe.getFromId(t,r.xaxis||"x"),i=Ewe.getFromId(t,r.yaxis||"y"),a,o,s,l,u,c,f,h;r.orientation==="h"?(a=n.makeCalcdata(r,"x"),s=i.makeCalcdata(r,"y"),l=kwe(r,i,"y",s),u=!!r.yperiodalignment,c="y"):(a=i.makeCalcdata(r,"y"),s=n.makeCalcdata(r,"x"),l=kwe(r,n,"x",s),u=!!r.xperiodalignment,c="x"),o=l.vals;var d=Math.min(o.length,a.length),v=new Array(d);for(r._base=[],f=0;f<d;f++){a[f]<0&&(a[f]=O4);var _=!1;a[f]!==O4&&f+1<d&&a[f+1]!==O4&&(_=!0),h=v[f]={p:o[f],s:a[f],cNext:_},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+=$G(h.s),h.begR=$G(h.s)/$G(v[0].s)}var b;for(f=0;f<d;f++)h=v[f],h.s!==O4&&(h.sumR=h.s/v[0].vTotal,h.difR=b!==void 0?h.s/b:1,b=h.s);return zwt(v,r),Owt(v,r),v};function $G(e){return e===O4?0:e}});var Rwe=ye((cfr,Iwe)=>{"use strict";var Pwe=jb().setGroupPositions;Iwe.exports=function(t,r){var n=t._fullLayout,i=t._fullData,a=t.calcdata,o=r.xaxis,s=r.yaxis,l=[],u=[],c=[],f,h;for(h=0;h<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 _={mode:n.funnelmode,norm:n.funnelnorm,gap:n.funnelgap,groupgap:n.funnelgroupgap};for(Pwe(t,o,s,u,_),Pwe(t,s,o,c,_),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 Owe=ye((ffr,zwe)=>{"use strict";var B8=Oa(),L_=Dr(),Dwe=So(),C_=fs().BADNUM,qwt=n2(),Bwt=bv().clearMinTextSize;zwe.exports=function(t,r,n,i){var a=t._fullLayout;Bwt("funnel",a),Nwt(t,r,n,i),Uwt(t,r,n,i),qwt.plot(t,r,n,i,{mode:a.funnelmode,norm:a.funnelmode,gap:a.funnelgap,groupgap:a.funnelgroupgap})};function Nwt(e,t,r,n){var i=t.xaxis,a=t.yaxis;L_.makeTraceGroups(n,r,"trace bars").each(function(o){var s=B8.select(this),l=o[0].trace,u=L_.ensureSingle(s,"g","regions");if(!l.connector||!l.connector.visible){u.remove();return}var c=l.orientation==="h",f=u.selectAll("g.region").data(L_.identity);f.enter().append("g").classed("region",!0),f.exit().remove();var h=f.size();f.each(function(d,v){if(!(v!==h-1&&!d.cNext)){var _=Fwe(d,i,a,c),b=_[0],p=_[1],k="";b[0]!==C_&&p[0]!==C_&&b[1]!==C_&&p[1]!==C_&&b[2]!==C_&&p[2]!==C_&&b[3]!==C_&&p[3]!==C_&&(c?k+="M"+b[0]+","+p[1]+"L"+b[2]+","+p[2]+"H"+b[3]+"L"+b[1]+","+p[1]+"Z":k+="M"+b[1]+","+p[1]+"L"+b[2]+","+p[3]+"V"+p[2]+"L"+b[1]+","+p[0]+"Z"),k===""&&(k="M0,0Z"),L_.ensureSingle(B8.select(this),"path").attr("d",k).call(Dwe.setClipUrl,t.layerClipId,e)}})})}function Uwt(e,t,r,n){var i=t.xaxis,a=t.yaxis;L_.makeTraceGroups(n,r,"trace bars").each(function(o){var s=B8.select(this),l=o[0].trace,u=L_.ensureSingle(s,"g","lines");if(!l.connector||!l.connector.visible||!l.connector.line.width){u.remove();return}var c=l.orientation==="h",f=u.selectAll("g.line").data(L_.identity);f.enter().append("g").classed("line",!0),f.exit().remove();var h=f.size();f.each(function(d,v){if(!(v!==h-1&&!d.cNext)){var _=Fwe(d,i,a,c),b=_[0],p=_[1],k="";b[3]!==void 0&&p[3]!==void 0&&(c?(k+="M"+b[0]+","+p[1]+"L"+b[2]+","+p[2],k+="M"+b[1]+","+p[1]+"L"+b[3]+","+p[2]):(k+="M"+b[1]+","+p[1]+"L"+b[2]+","+p[3],k+="M"+b[1]+","+p[0]+"L"+b[2]+","+p[2])),k===""&&(k="M0,0Z"),L_.ensureSingle(B8.select(this),"path").attr("d",k).call(Dwe.setClipUrl,t.layerClipId,e)}})})}function Fwe(e,t,r,n){var i=[],a=[],o=n?t:r,s=n?r:t;return i[0]=o.c2p(e.s0,!0),a[0]=s.c2p(e.p0,!0),i[1]=o.c2p(e.s1,!0),a[1]=s.c2p(e.p1,!0),i[2]=o.c2p(e.nextS0,!0),a[2]=s.c2p(e.nextP0,!0),i[3]=o.c2p(e.nextS1,!0),a[3]=s.c2p(e.nextP1,!0),n?[i,a]:[a,i]}});var Nwe=ye((hfr,Bwe)=>{"use strict";var q4=Oa(),qwe=So(),QG=ka(),Vwt=N1().DESELECTDIM,Gwt=N0(),Hwt=bv().resizeText,jwt=Gwt.styleTextPoints;function Wwt(e,t,r){var n=r||q4.select(e).selectAll('g[class^="funnellayer"]').selectAll("g.trace");Hwt(e,n,"funnel"),n.style("opacity",function(i){return i[0].trace.opacity}),n.each(function(i){var a=q4.select(this),o=i[0].trace;a.selectAll(".point > path").each(function(s){if(!s.isBlank){var l=o.marker;q4.select(this).call(QG.fill,s.mc||l.color).call(QG.stroke,s.mlc||l.line.color).call(qwe.dashLine,l.line.dash,s.mlw||l.line.width).style("opacity",o.selectedpoints&&!s.selected?Vwt:1)}}),jwt(a,o,e),a.selectAll(".regions").each(function(){q4.select(this).selectAll("path").style("stroke-width",0).call(QG.fill,o.connector.fillcolor)}),a.selectAll(".lines").each(function(){var s=o.connector.line;qwe.lineGroupStyle(q4.select(this).selectAll("path"),s.width,s.color,s.dash)})})}Bwe.exports={style:Wwt}});var Gwe=ye((dfr,Vwe)=>{"use strict";var Uwe=ka().opacity,Xwt=ET().hoverOnBars,eH=Dr().formatPercent;Vwe.exports=function(t,r,n,i,a){var o=Xwt(t,r,n,i,a);if(o){var s=o.cd,l=s[0].trace,u=l.orientation==="h",c=o.index,f=s[c],h=u?"x":"y";o[h+"LabelVal"]=f.s,o.percentInitial=f.begR,o.percentInitialLabel=eH(f.begR,1),o.percentPrevious=f.difR,o.percentPreviousLabel=eH(f.difR,1),o.percentTotal=f.sumR,o.percentTotalLabel=eH(f.sumR,1);var d=f.hi||l.hoverinfo,v=[];if(d&&d!=="none"&&d!=="skip"){var _=d==="all",b=d.split("+"),p=function(k){return _||b.indexOf(k)!==-1};p("percent initial")&&v.push(o.percentInitialLabel+" of initial"),p("percent previous")&&v.push(o.percentPreviousLabel+" of previous"),p("percent total")&&v.push(o.percentTotalLabel+" of total")}return o.extraText=v.join("<br>"),o.color=Zwt(l,f),[o]}};function Zwt(e,t){var r=e.marker,n=t.mc||r.color,i=t.mlc||r.line.color,a=t.mlw||r.line.width;if(Uwe(n))return n;if(Uwe(i)&&a)return i}});var jwe=ye((vfr,Hwe)=>{"use strict";Hwe.exports=function(t,r){return t.x="xVal"in r?r.xVal:r.x,t.y="yVal"in r?r.yVal:r.y,"percentInitial"in r&&(t.percentInitial=r.percentInitial),"percentPrevious"in r&&(t.percentPrevious=r.percentPrevious),"percentTotal"in r&&(t.percentTotal=r.percentTotal),r.xa&&(t.xaxis=r.xa),r.ya&&(t.yaxis=r.ya),t}});var Xwe=ye((pfr,Wwe)=>{"use strict";Wwe.exports={attributes:ZG(),layoutAttributes:YG(),supplyDefaults:JG().supplyDefaults,crossTraceDefaults:JG().crossTraceDefaults,supplyLayoutDefaults:Awe(),calc:Lwe(),crossTraceCalc:Rwe(),plot:Owe(),style:Nwe().style,hoverPoints:Gwe(),eventData:jwe(),selectPoints:kT(),moduleType:"trace",name:"funnel",basePlotModule:ph(),categories:["bar-like","cartesian","svg","oriented","showLegend","zoomScale"],meta:{}}});var Ywe=ye((gfr,Zwe)=>{"use strict";Zwe.exports=Xwe()});var Jwe=ye((mfr,Kwe)=>{"use strict";Kwe.exports={eventDataKeys:["initial","delta","final"]}});var iH=ye((yfr,t3e)=>{"use strict";var _c=Lm(),tH=pf().line,Ywt=Gl(),$we=df().axisHoverFormat,{hovertemplateAttrs:Kwt,texttemplateAttrs:Jwt,templatefallbackAttrs:Qwe}=Ll(),e3e=Jwe(),WT=Ao().extendFlat,$wt=ka();function rH(e){return{marker:{color:WT({},_c.marker.color,{arrayOk:!1,editType:"style"}),line:{color:WT({},_c.marker.line.color,{arrayOk:!1,editType:"style"}),width:WT({},_c.marker.line.width,{arrayOk:!1,editType:"style"}),editType:"style"},editType:"style"},editType:"style"}}t3e.exports={measure:{valType:"data_array",dflt:[],editType:"calc"},base:{valType:"number",dflt:null,arrayOk:!1,editType:"calc"},x:_c.x,x0:_c.x0,dx:_c.dx,y:_c.y,y0:_c.y0,dy:_c.dy,xperiod:_c.xperiod,yperiod:_c.yperiod,xperiod0:_c.xperiod0,yperiod0:_c.yperiod0,xperiodalignment:_c.xperiodalignment,yperiodalignment:_c.yperiodalignment,xhoverformat:$we("x"),yhoverformat:$we("y"),hovertext:_c.hovertext,hovertemplate:Kwt({},{keys:e3e.eventDataKeys}),hovertemplatefallback:Qwe(),hoverinfo:WT({},Ywt.hoverinfo,{flags:["name","x","y","text","initial","delta","final"]}),textinfo:{valType:"flaglist",flags:["label","text","initial","delta","final"],extras:["none"],editType:"plot",arrayOk:!1},texttemplate:Jwt({editType:"plot"},{keys:e3e.eventDataKeys.concat(["label"])}),texttemplatefallback:Qwe({editType:"plot"}),text:_c.text,textposition:_c.textposition,insidetextanchor:_c.insidetextanchor,textangle:_c.textangle,textfont:_c.textfont,insidetextfont:_c.insidetextfont,outsidetextfont:_c.outsidetextfont,constraintext:_c.constraintext,cliponaxis:_c.cliponaxis,orientation:_c.orientation,offset:_c.offset,width:_c.width,increasing:rH("increasing"),decreasing:rH("decreasing"),totals:rH("intermediate sums and total"),connector:{line:{color:WT({},tH.color,{dflt:$wt.defaultLine}),width:WT({},tH.width,{editType:"plot"}),dash:tH.dash,editType:"plot"},mode:{valType:"enumerated",values:["spanning","between"],dflt:"between",editType:"plot"},visible:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},offsetgroup:_c.offsetgroup,alignmentgroup:_c.alignmentgroup,zorder:_c.zorder}});var nH=ye((_fr,r3e)=>{"use strict";r3e.exports={waterfallmode:{valType:"enumerated",values:["group","overlay"],dflt:"group",editType:"calc"},waterfallgap:{valType:"number",min:0,max:1,editType:"calc"},waterfallgroupgap:{valType:"number",min:0,max:1,dflt:0,editType:"calc"}}});var XT=ye((xfr,i3e)=>{"use strict";i3e.exports={INCREASING:{COLOR:"#3D9970",SYMBOL:"\u25B2"},DECREASING:{COLOR:"#FF4136",SYMBOL:"\u25BC"}}});var oH=ye((bfr,s3e)=>{"use strict";var n3e=Dr(),Qwt=Hb(),e3t=r0().handleText,t3t=eT(),r3t=Ig(),a3e=iH(),i3t=ka(),o3e=XT(),n3t=o3e.INCREASING.COLOR,a3t=o3e.DECREASING.COLOR,o3t="#4499FF";function aH(e,t,r){e(t+".marker.color",r),e(t+".marker.line.color",i3t.defaultLine),e(t+".marker.line.width")}function s3t(e,t,r,n){function i(u,c){return n3e.coerce(e,t,a3e,u,c)}var a=t3t(e,t,n,i);if(!a){t.visible=!1;return}r3t(e,t,n,i),i("xhoverformat"),i("yhoverformat"),i("measure"),i("orientation",t.x&&!t.y?"h":"v"),i("base"),i("offset"),i("width"),i("text"),i("hovertext"),i("hovertemplate"),i("hovertemplatefallback");var o=i("textposition");e3t(e,t,n,i,o,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),t.textposition!=="none"&&(i("texttemplate"),i("texttemplatefallback"),t.texttemplate||i("textinfo")),aH(i,"increasing",n3t),aH(i,"decreasing",a3t),aH(i,"totals",o3t);var s=i("connector.visible");if(s){i("connector.mode");var l=i("connector.line.width");l&&(i("connector.line.color"),i("connector.line.dash"))}i("zorder")}function l3t(e,t){var r,n;function i(o){return n3e.coerce(n._input,n,a3e,o)}if(t.waterfallmode==="group")for(var a=0;a<e.length;a++)n=e[a],r=n._input,Qwt(r,n,t,i,t.waterfallmode)}s3e.exports={supplyDefaults:s3t,crossTraceDefaults:l3t}});var u3e=ye((wfr,l3e)=>{"use strict";var u3t=Dr(),c3t=nH();l3e.exports=function(e,t,r){var n=!1;function i(s,l){return u3t.coerce(e,t,c3t,s,l)}for(var a=0;a<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 p3e=ye((Tfr,v3e)=>{"use strict";var c3e=ho(),f3e=Dg(),h3e=Dr().mergeArray,f3t=z0(),d3e=fs().BADNUM;function sH(e){return e==="a"||e==="absolute"}function lH(e){return e==="t"||e==="total"}v3e.exports=function(t,r){var n=c3e.getFromId(t,r.xaxis||"x"),i=c3e.getFromId(t,r.yaxis||"y"),a,o,s,l,u,c;r.orientation==="h"?(a=n.makeCalcdata(r,"x"),s=i.makeCalcdata(r,"y"),l=f3e(r,i,"y",s),u=!!r.yperiodalignment,c="y"):(a=i.makeCalcdata(r,"y"),s=n.makeCalcdata(r,"x"),l=f3e(r,n,"x",s),u=!!r.xperiodalignment,c="x"),o=l.vals;for(var f=Math.min(o.length,a.length),h=new Array(f),d=0,v,_=!1,b=0;b<f;b++){var p=a[b]||0,k=!1;(a[b]!==d3e||lH(r.measure[b])||sH(r.measure[b]))&&b+1<f&&(a[b+1]!==d3e||lH(r.measure[b+1])||sH(r.measure[b+1]))&&(k=!0);var E=h[b]={i:b,p:o[b],s:p,rawS:p,cNext:k};sH(r.measure[b])?(d=E.s,E.isSum=!0,E.dir="totals",E.s=d):lH(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"&&(_=!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=_),h3e(r.text,h,"tx"),h3e(r.hovertext,h,"htx"),f3t(h,r),h}});var y3e=ye((Afr,m3e)=>{"use strict";var g3e=jb().setGroupPositions;m3e.exports=function(t,r){var n=t._fullLayout,i=t._fullData,a=t.calcdata,o=r.xaxis,s=r.yaxis,l=[],u=[],c=[],f,h;for(h=0;h<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(g3e(t,o,s,u,v),g3e(t,s,o,c,v),h=0;h<l.length;h++){f=l[h];for(var _=0;_<f.length;_++){var b=f[_];b.isSum===!1&&(b.s0+=_===0?0:f[_-1].s),_+1<f.length&&(f[_].nextP0=f[_+1].p0,f[_].nextS0=f[_+1].s0)}}}});var b3e=ye((Sfr,x3e)=>{"use strict";var _3e=Oa(),N8=Dr(),h3t=So(),ZT=fs().BADNUM,d3t=n2(),v3t=bv().clearMinTextSize;x3e.exports=function(t,r,n,i){var a=t._fullLayout;v3t("waterfall",a),d3t.plot(t,r,n,i,{mode:a.waterfallmode,norm:a.waterfallmode,gap:a.waterfallgap,groupgap:a.waterfallgroupgap}),p3t(t,r,n,i)};function p3t(e,t,r,n){var i=t.xaxis,a=t.yaxis;N8.makeTraceGroups(n,r,"trace bars").each(function(o){var s=_3e.select(this),l=o[0].trace,u=N8.ensureSingle(s,"g","lines");if(!l.connector||!l.connector.visible){u.remove();return}var c=l.orientation==="h",f=l.connector.mode,h=u.selectAll("g.line").data(N8.identity);h.enter().append("g").classed("line",!0),h.exit().remove();var d=h.size();h.each(function(v,_){if(!(_!==d-1&&!v.cNext)){var b=g3t(v,i,a,c),p=b[0],k=b[1],E="";p[0]!==ZT&&k[0]!==ZT&&p[1]!==ZT&&k[1]!==ZT&&(f==="spanning"&&!v.isSum&&_>0&&(c?E+="M"+p[0]+","+k[1]+"V"+k[0]:E+="M"+p[1]+","+k[0]+"H"+p[0]),f!=="between"&&(v.isSum||_<d-1)&&(c?E+="M"+p[1]+","+k[0]+"V"+k[1]:E+="M"+p[0]+","+k[1]+"H"+p[1]),p[2]!==ZT&&k[2]!==ZT&&(c?E+="M"+p[1]+","+k[1]+"V"+k[2]:E+="M"+p[1]+","+k[1]+"H"+p[2])),E===""&&(E="M0,0Z"),N8.ensureSingle(_3e.select(this),"path").attr("d",E).call(h3t.setClipUrl,t.layerClipId,e)}})})}function g3t(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 S3e=ye((Mfr,A3e)=>{"use strict";var U8=Oa(),w3e=So(),T3e=ka(),m3t=N1().DESELECTDIM,y3t=N0(),_3t=bv().resizeText,x3t=y3t.styleTextPoints;function b3t(e,t,r){var n=r||U8.select(e).selectAll('g[class^="waterfalllayer"]').selectAll("g.trace");_3t(e,n,"waterfall"),n.style("opacity",function(i){return i[0].trace.opacity}),n.each(function(i){var a=U8.select(this),o=i[0].trace;a.selectAll(".point > path").each(function(s){if(!s.isBlank){var l=o[s.dir].marker;U8.select(this).call(T3e.fill,l.color).call(T3e.stroke,l.line.color).call(w3e.dashLine,l.line.dash,l.line.width).style("opacity",o.selectedpoints&&!s.selected?m3t:1)}}),x3t(a,o,e),a.selectAll(".lines").each(function(){var s=o.connector.line;w3e.lineGroupStyle(U8.select(this).selectAll("path"),s.width,s.color,s.dash)})})}A3e.exports={style:b3t}});var L3e=ye((Efr,C3e)=>{"use strict";var w3t=ho().hoverLabelText,M3e=ka().opacity,T3t=ET().hoverOnBars,E3e=XT(),k3e={increasing:E3e.INCREASING.SYMBOL,decreasing:E3e.DECREASING.SYMBOL};C3e.exports=function(t,r,n,i,a){var o=T3t(t,r,n,i,a);if(!o)return;var s=o.cd,l=s[0].trace,u=l.orientation==="h",c=u?"x":"y",f=u?t.xa:t.ya;function h(x){return w3t(f,x,l[c+"hoverformat"])}var d=o.index,v=s[d],_=v.isSum?v.b+v.s:v.rawS;o.initial=v.b+v.s-_,o.delta=_,o.final=o.initial+o.delta;var b=h(Math.abs(o.delta));o.deltaLabel=_<0?"("+b+")":b,o.finalLabel=h(o.final),o.initialLabel=h(o.initial);var p=v.hi||l.hoverinfo,k=[];if(p&&p!=="none"&&p!=="skip"){var E=p==="all",S=p.split("+"),L=function(x){return E||S.indexOf(x)!==-1};v.isSum||(L("final")&&(u?!L("x"):!L("y"))&&k.push(o.finalLabel),L("delta")&&(_<0?k.push(o.deltaLabel+" "+k3e.decreasing):k.push(o.deltaLabel+" "+k3e.increasing)),L("initial")&&k.push("Initial: "+o.initialLabel))}return k.length&&(o.extraText=k.join("<br>")),o.color=A3t(l,v),[o]};function A3t(e,t){var r=e[t.dir].marker,n=r.color,i=r.line.color,a=r.line.width;if(M3e(n))return n;if(M3e(i)&&a)return i}});var I3e=ye((kfr,P3e)=>{"use strict";P3e.exports=function(t,r){return t.x="xVal"in r?r.xVal:r.x,t.y="yVal"in r?r.yVal:r.y,"initial"in r&&(t.initial=r.initial),"delta"in r&&(t.delta=r.delta),"final"in r&&(t.final=r.final),r.xa&&(t.xaxis=r.xa),r.ya&&(t.yaxis=r.ya),t}});var D3e=ye((Cfr,R3e)=>{"use strict";R3e.exports={attributes:iH(),layoutAttributes:nH(),supplyDefaults:oH().supplyDefaults,crossTraceDefaults:oH().crossTraceDefaults,supplyLayoutDefaults:u3e(),calc:p3e(),crossTraceCalc:y3e(),plot:b3e(),style:S3e().style,hoverPoints:L3e(),eventData:I3e(),selectPoints:kT(),moduleType:"trace",name:"waterfall",basePlotModule:ph(),categories:["bar-like","cartesian","svg","oriented","showLegend","zoomScale"],meta:{}}});var z3e=ye((Lfr,F3e)=>{"use strict";F3e.exports=D3e()});var YT=ye((Pfr,O3e)=>{"use strict";O3e.exports={colormodel:{rgb:{min:[0,0,0],max:[255,255,255],fmt:function(e){return e.slice(0,3)},suffix:["","",""]},rgba:{min:[0,0,0,0],max:[255,255,255,1],fmt:function(e){return e.slice(0,4)},suffix:["","","",""]},rgba256:{colormodel:"rgba",zminDflt:[0,0,0,0],zmaxDflt:[255,255,255,255],min:[0,0,0,0],max:[255,255,255,1],fmt:function(e){return e.slice(0,4)},suffix:["","","",""]},hsl:{min:[0,0,0],max:[360,100,100],fmt:function(e){var t=e.slice(0,3);return t[1]=t[1]+"%",t[2]=t[2]+"%",t},suffix:["\xB0","%","%"]},hsla:{min:[0,0,0,0],max:[360,100,100,1],fmt:function(e){var t=e.slice(0,4);return t[1]=t[1]+"%",t[2]=t[2]+"%",t},suffix:["\xB0","%","%",""]}}}});var uH=ye((Ifr,B3e)=>{"use strict";var S3t=Gl(),M3t=pf().zorder,{hovertemplateAttrs:E3t,templatefallbackAttrs:k3t}=Ll(),q3e=Ao().extendFlat,C3t=YT().colormodel,N4=["rgb","rgba","rgba256","hsl","hsla"],L3t=[],P3t=[];for(KT=0;KT<N4.length;KT++)B4=C3t[N4[KT]],L3t.push("For the `"+N4[KT]+"` colormodel, it is ["+(B4.zminDflt||B4.min).join(", ")+"]."),P3t.push("For the `"+N4[KT]+"` colormodel, it is ["+(B4.zmaxDflt||B4.max).join(", ")+"].");var B4,KT;B3e.exports=q3e({source:{valType:"string",editType:"calc"},z:{valType:"data_array",editType:"calc"},colormodel:{valType:"enumerated",values:N4,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",description:"Set the pixel's horizontal size."},dy:{valType:"number",dflt:1,editType:"calc",description:"Set the pixel's vertical size"},text:{valType:"data_array",editType:"plot"},hovertext:{valType:"data_array",editType:"plot"},hoverinfo:q3e({},S3t.hoverinfo,{flags:["x","y","z","color","name","text"],dflt:"x+y+z+text+name"}),hovertemplate:E3t({},{keys:["z","color","colormodel"]}),hovertemplatefallback:k3t(),zorder:M3t})});var V3e=ye((Rfr,U3e)=>{"use strict";var I3t=Dr(),R3t=uH(),N3e=YT(),D3t=Py().IMAGE_URL_PREFIX;U3e.exports=function(t,r){function n(o,s){return I3t.coerce(t,r,R3t,o,s)}n("source"),r.source&&!r.source.match(D3t)&&delete r.source,r._hasSource=!!r.source;var i=n("z");if(r._hasZ=!(i===void 0||!i.length||!i[0]||!i[0].length),!r._hasZ&&!r._hasSource){r.visible=!1;return}n("x0"),n("y0"),n("dx"),n("dy");var a;r._hasZ?(n("colormodel","rgb"),a=N3e.colormodel[r.colormodel],n("zmin",a.zminDflt||a.min),n("zmax",a.zmaxDflt||a.max)):r._hasSource&&(r.colormodel="rgba256",a=N3e.colormodel[r.colormodel],r.zmin=a.zminDflt,r.zmax=a.zmaxDflt),n("zsmooth"),n("text"),n("hovertext"),n("hovertemplate"),n("hovertemplatefallback"),r._length=null,n("zorder")}});var Uy=ye((Dfr,cH)=>{typeof Object.create=="function"?cH.exports=function(t,r){r&&(t.super_=r,t.prototype=Object.create(r.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}))}:cH.exports=function(t,r){if(r){t.super_=r;var n=function(){};n.prototype=r.prototype,t.prototype=new n,t.prototype.constructor=t}}});var fH=ye((Ffr,G3e)=>{G3e.exports=pb().EventEmitter});var W3e=ye(V8=>{"use strict";V8.byteLength=z3t;V8.toByteArray=q3t;V8.fromByteArray=U3t;var Om=[],X0=[],F3t=typeof Uint8Array!="undefined"?Uint8Array:Array,hH="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(l2=0,H3e=hH.length;l2<H3e;++l2)Om[l2]=hH[l2],X0[hH.charCodeAt(l2)]=l2;var l2,H3e;X0[45]=62;X0[95]=63;function j3e(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 z3t(e){var t=j3e(e),r=t[0],n=t[1];return(r+n)*3/4-n}function O3t(e,t,r){return(t+r)*3/4-r}function q3t(e){var t,r=j3e(e),n=r[0],i=r[1],a=new F3t(O3t(e,n,i)),o=0,s=i>0?n-4:n,l;for(l=0;l<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 B3t(e){return Om[e>>18&63]+Om[e>>12&63]+Om[e>>6&63]+Om[e&63]}function N3t(e,t,r){for(var n,i=[],a=t;a<r;a+=3)n=(e[a]<<16&16711680)+(e[a+1]<<8&65280)+(e[a+2]&255),i.push(B3t(n));return i.join("")}function U3t(e){for(var t,r=e.length,n=r%3,i=[],a=16383,o=0,s=r-n;o<s;o+=a)i.push(N3t(e,o,o+a>s?s:o+a));return n===1?(t=e[r-1],i.push(Om[t>>2]+Om[t<<4&63]+"==")):n===2&&(t=(e[r-2]<<8)+e[r-1],i.push(Om[t>>10]+Om[t>>4&63]+Om[t<<2&63]+"=")),i.join("")}});var X3e=ye(dH=>{dH.read=function(e,t,r,n,i){var a,o,s=i*8-n-1,l=(1<<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)};dH.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,_=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]|=_*128}});var c2=ye(eA=>{"use strict";var vH=W3e(),$T=X3e(),Z3e=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;eA.Buffer=ea;eA.SlowBuffer=X3t;eA.INSPECT_MAX_BYTES=50;var G8=2147483647;eA.kMaxLength=G8;ea.TYPED_ARRAY_SUPPORT=V3t();!ea.TYPED_ARRAY_SUPPORT&&typeof console!="undefined"&&typeof console.error=="function"&&console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.");function V3t(){try{let e=new Uint8Array(1),t={foo:function(){return 42}};return Object.setPrototypeOf(t,Uint8Array.prototype),Object.setPrototypeOf(e,t),e.foo()===42}catch(e){return!1}}Object.defineProperty(ea.prototype,"parent",{enumerable:!0,get:function(){if(ea.isBuffer(this))return this.buffer}});Object.defineProperty(ea.prototype,"offset",{enumerable:!0,get:function(){if(ea.isBuffer(this))return this.byteOffset}});function Vy(e){if(e>G8)throw new RangeError('The value "'+e+'" is invalid for option "size"');let t=new Uint8Array(e);return Object.setPrototypeOf(t,ea.prototype),t}function ea(e,t,r){if(typeof e=="number"){if(typeof t=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return yH(e)}return $3e(e,t,r)}ea.poolSize=8192;function $3e(e,t,r){if(typeof e=="string")return H3t(e,t);if(ArrayBuffer.isView(e))return j3t(e);if(e==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e);if(qm(e,ArrayBuffer)||e&&qm(e.buffer,ArrayBuffer)||typeof SharedArrayBuffer!="undefined"&&(qm(e,SharedArrayBuffer)||e&&qm(e.buffer,SharedArrayBuffer)))return gH(e,t,r);if(typeof e=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');let n=e.valueOf&&e.valueOf();if(n!=null&&n!==e)return ea.from(n,t,r);let i=W3t(e);if(i)return i;if(typeof Symbol!="undefined"&&Symbol.toPrimitive!=null&&typeof e[Symbol.toPrimitive]=="function")return ea.from(e[Symbol.toPrimitive]("string"),t,r);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e)}ea.from=function(e,t,r){return $3e(e,t,r)};Object.setPrototypeOf(ea.prototype,Uint8Array.prototype);Object.setPrototypeOf(ea,Uint8Array);function Q3e(e){if(typeof e!="number")throw new TypeError('"size" argument must be of type number');if(e<0)throw new RangeError('The value "'+e+'" is invalid for option "size"')}function G3t(e,t,r){return Q3e(e),e<=0?Vy(e):t!==void 0?typeof r=="string"?Vy(e).fill(t,r):Vy(e).fill(t):Vy(e)}ea.alloc=function(e,t,r){return G3t(e,t,r)};function yH(e){return Q3e(e),Vy(e<0?0:_H(e)|0)}ea.allocUnsafe=function(e){return yH(e)};ea.allocUnsafeSlow=function(e){return yH(e)};function H3t(e,t){if((typeof t!="string"||t==="")&&(t="utf8"),!ea.isEncoding(t))throw new TypeError("Unknown encoding: "+t);let r=eTe(e,t)|0,n=Vy(r),i=n.write(e,t);return i!==r&&(n=n.slice(0,i)),n}function pH(e){let t=e.length<0?0:_H(e.length)|0,r=Vy(t);for(let n=0;n<t;n+=1)r[n]=e[n]&255;return r}function j3t(e){if(qm(e,Uint8Array)){let t=new Uint8Array(e);return gH(t.buffer,t.byteOffset,t.byteLength)}return pH(e)}function gH(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,ea.prototype),n}function W3t(e){if(ea.isBuffer(e)){let t=_H(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"||bH(e.length)?Vy(0):pH(e);if(e.type==="Buffer"&&Array.isArray(e.data))return pH(e.data)}function _H(e){if(e>=G8)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+G8.toString(16)+" bytes");return e|0}function X3t(e){return+e!=e&&(e=0),ea.alloc(+e)}ea.isBuffer=function(t){return t!=null&&t._isBuffer===!0&&t!==ea.prototype};ea.compare=function(t,r){if(qm(t,Uint8Array)&&(t=ea.from(t,t.offset,t.byteLength)),qm(r,Uint8Array)&&(r=ea.from(r,r.offset,r.byteLength)),!ea.isBuffer(t)||!ea.isBuffer(r))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(t===r)return 0;let n=t.length,i=r.length;for(let a=0,o=Math.min(n,i);a<o;++a)if(t[a]!==r[a]){n=t[a],i=r[a];break}return n<i?-1:i<n?1:0};ea.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}};ea.concat=function(t,r){if(!Array.isArray(t))throw new TypeError('"list" argument must be an Array of Buffers');if(t.length===0)return ea.alloc(0);let n;if(r===void 0)for(r=0,n=0;n<t.length;++n)r+=t[n].length;let i=ea.allocUnsafe(r),a=0;for(n=0;n<t.length;++n){let o=t[n];if(qm(o,Uint8Array))a+o.length>i.length?(ea.isBuffer(o)||(o=ea.from(o)),o.copy(i,a)):Uint8Array.prototype.set.call(i,o,a);else if(ea.isBuffer(o))o.copy(i,a);else throw new TypeError('"list" argument must be an Array of Buffers');a+=o.length}return i};function eTe(e,t){if(ea.isBuffer(e))return e.length;if(ArrayBuffer.isView(e)||qm(e,ArrayBuffer))return e.byteLength;if(typeof e!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof e);let r=e.length,n=arguments.length>2&&arguments[2]===!0;if(!n&&r===0)return 0;let i=!1;for(;;)switch(t){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":return mH(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return r*2;case"hex":return r>>>1;case"base64":return uTe(e).length;default:if(i)return n?-1:mH(e).length;t=(""+t).toLowerCase(),i=!0}}ea.byteLength=eTe;function Z3t(e,t,r){let n=!1;if((t===void 0||t<0)&&(t=0),t>this.length||((r===void 0||r>this.length)&&(r=this.length),r<=0)||(r>>>=0,t>>>=0,r<=t))return"";for(e||(e="utf8");;)switch(e){case"hex":return nTt(this,t,r);case"utf8":case"utf-8":return rTe(this,t,r);case"ascii":return rTt(this,t,r);case"latin1":case"binary":return iTt(this,t,r);case"base64":return eTt(this,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return aTt(this,t,r);default:if(n)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),n=!0}}ea.prototype._isBuffer=!0;function u2(e,t,r){let n=e[t];e[t]=e[r],e[r]=n}ea.prototype.swap16=function(){let t=this.length;if(t%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let r=0;r<t;r+=2)u2(this,r,r+1);return this};ea.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)u2(this,r,r+3),u2(this,r+1,r+2);return this};ea.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)u2(this,r,r+7),u2(this,r+1,r+6),u2(this,r+2,r+5),u2(this,r+3,r+4);return this};ea.prototype.toString=function(){let t=this.length;return t===0?"":arguments.length===0?rTe(this,0,t):Z3t.apply(this,arguments)};ea.prototype.toLocaleString=ea.prototype.toString;ea.prototype.equals=function(t){if(!ea.isBuffer(t))throw new TypeError("Argument must be a Buffer");return this===t?!0:ea.compare(this,t)===0};ea.prototype.inspect=function(){let t="",r=eA.INSPECT_MAX_BYTES;return t=this.toString("hex",0,r).replace(/(.{2})/g,"$1 ").trim(),this.length>r&&(t+=" ... "),"<Buffer "+t+">"};Z3e&&(ea.prototype[Z3e]=ea.prototype.inspect);ea.prototype.compare=function(t,r,n,i,a){if(qm(t,Uint8Array)&&(t=ea.from(t,t.offset,t.byteLength)),!ea.isBuffer(t))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof t);if(r===void 0&&(r=0),n===void 0&&(n=t?t.length:0),i===void 0&&(i=0),a===void 0&&(a=this.length),r<0||n>t.length||i<0||a>this.length)throw new RangeError("out of range index");if(i>=a&&r>=n)return 0;if(i>=a)return-1;if(r>=n)return 1;if(r>>>=0,n>>>=0,i>>>=0,a>>>=0,this===t)return 0;let o=a-i,s=n-r,l=Math.min(o,s),u=this.slice(i,a),c=t.slice(r,n);for(let f=0;f<l;++f)if(u[f]!==c[f]){o=u[f],s=c[f];break}return o<s?-1:s<o?1:0};function tTe(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,bH(r)&&(r=i?0:e.length-1),r<0&&(r=e.length+r),r>=e.length){if(i)return-1;r=e.length-1}else if(r<0)if(i)r=0;else return-1;if(typeof t=="string"&&(t=ea.from(t,n)),ea.isBuffer(t))return t.length===0?-1:Y3e(e,t,r,n,i);if(typeof t=="number")return t=t&255,typeof Uint8Array.prototype.indexOf=="function"?i?Uint8Array.prototype.indexOf.call(e,t,r):Uint8Array.prototype.lastIndexOf.call(e,t,r):Y3e(e,[t],r,n,i);throw new TypeError("val must be string, number or Buffer")}function Y3e(e,t,r,n,i){let a=1,o=e.length,s=t.length;if(n!==void 0&&(n=String(n).toLowerCase(),n==="ucs2"||n==="ucs-2"||n==="utf16le"||n==="utf-16le")){if(e.length<2||t.length<2)return-1;a=2,o/=2,s/=2,r/=2}function l(c,f){return a===1?c[f]:c.readUInt16BE(f*a)}let u;if(i){let c=-1;for(u=r;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}ea.prototype.includes=function(t,r,n){return this.indexOf(t,r,n)!==-1};ea.prototype.indexOf=function(t,r,n){return tTe(this,t,r,n,!0)};ea.prototype.lastIndexOf=function(t,r,n){return tTe(this,t,r,n,!1)};function Y3t(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(bH(s))return o;e[r+o]=s}return o}function K3t(e,t,r,n){return H8(mH(t,e.length-r),e,r,n)}function J3t(e,t,r,n){return H8(uTt(t),e,r,n)}function $3t(e,t,r,n){return H8(uTe(t),e,r,n)}function Q3t(e,t,r,n){return H8(cTt(t,e.length-r),e,r,n)}ea.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 Y3t(this,t,r,n);case"utf8":case"utf-8":return K3t(this,t,r,n);case"ascii":case"latin1":case"binary":return J3t(this,t,r,n);case"base64":return $3t(this,t,r,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return Q3t(this,t,r,n);default:if(o)throw new TypeError("Unknown encoding: "+i);i=(""+i).toLowerCase(),o=!0}};ea.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function eTt(e,t,r){return t===0&&r===e.length?vH.fromByteArray(e):vH.fromByteArray(e.slice(t,r))}function rTe(e,t,r){r=Math.min(e.length,r);let n=[],i=t;for(;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 tTt(n)}var K3e=4096;function tTt(e){let t=e.length;if(t<=K3e)return String.fromCharCode.apply(String,e);let r="",n=0;for(;n<t;)r+=String.fromCharCode.apply(String,e.slice(n,n+=K3e));return r}function rTt(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 iTt(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 nTt(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+=fTt[e[a]];return i}function aTt(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}ea.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,ea.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")}ea.prototype.readUintLE=ea.prototype.readUIntLE=function(t,r,n){t=t>>>0,r=r>>>0,n||ev(t,r,this.length);let i=this[t],a=1,o=0;for(;++o<r&&(a*=256);)i+=this[t+o]*a;return i};ea.prototype.readUintBE=ea.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};ea.prototype.readUint8=ea.prototype.readUInt8=function(t,r){return t=t>>>0,r||ev(t,1,this.length),this[t]};ea.prototype.readUint16LE=ea.prototype.readUInt16LE=function(t,r){return t=t>>>0,r||ev(t,2,this.length),this[t]|this[t+1]<<8};ea.prototype.readUint16BE=ea.prototype.readUInt16BE=function(t,r){return t=t>>>0,r||ev(t,2,this.length),this[t]<<8|this[t+1]};ea.prototype.readUint32LE=ea.prototype.readUInt32LE=function(t,r){return t=t>>>0,r||ev(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+this[t+3]*16777216};ea.prototype.readUint32BE=ea.prototype.readUInt32BE=function(t,r){return t=t>>>0,r||ev(t,4,this.length),this[t]*16777216+(this[t+1]<<16|this[t+2]<<8|this[t+3])};ea.prototype.readBigUInt64LE=P_(function(t){t=t>>>0,QT(t,"offset");let r=this[t],n=this[t+7];(r===void 0||n===void 0)&&U4(t,this.length-8);let i=r+this[++t]*2**8+this[++t]*2**16+this[++t]*2**24,a=this[++t]+this[++t]*2**8+this[++t]*2**16+n*2**24;return BigInt(i)+(BigInt(a)<<BigInt(32))});ea.prototype.readBigUInt64BE=P_(function(t){t=t>>>0,QT(t,"offset");let r=this[t],n=this[t+7];(r===void 0||n===void 0)&&U4(t,this.length-8);let i=r*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)});ea.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};ea.prototype.readIntBE=function(t,r,n){t=t>>>0,r=r>>>0,n||ev(t,r,this.length);let i=r,a=1,o=this[t+--i];for(;i>0&&(a*=256);)o+=this[t+--i]*a;return a*=128,o>=a&&(o-=Math.pow(2,8*r)),o};ea.prototype.readInt8=function(t,r){return t=t>>>0,r||ev(t,1,this.length),this[t]&128?(255-this[t]+1)*-1:this[t]};ea.prototype.readInt16LE=function(t,r){t=t>>>0,r||ev(t,2,this.length);let n=this[t]|this[t+1]<<8;return n&32768?n|4294901760:n};ea.prototype.readInt16BE=function(t,r){t=t>>>0,r||ev(t,2,this.length);let n=this[t+1]|this[t]<<8;return n&32768?n|4294901760:n};ea.prototype.readInt32LE=function(t,r){return t=t>>>0,r||ev(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24};ea.prototype.readInt32BE=function(t,r){return t=t>>>0,r||ev(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]};ea.prototype.readBigInt64LE=P_(function(t){t=t>>>0,QT(t,"offset");let r=this[t],n=this[t+7];(r===void 0||n===void 0)&&U4(t,this.length-8);let i=this[t+4]+this[t+5]*2**8+this[t+6]*2**16+(n<<24);return(BigInt(i)<<BigInt(32))+BigInt(r+this[++t]*2**8+this[++t]*2**16+this[++t]*2**24)});ea.prototype.readBigInt64BE=P_(function(t){t=t>>>0,QT(t,"offset");let r=this[t],n=this[t+7];(r===void 0||n===void 0)&&U4(t,this.length-8);let i=(r<<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)});ea.prototype.readFloatLE=function(t,r){return t=t>>>0,r||ev(t,4,this.length),$T.read(this,t,!0,23,4)};ea.prototype.readFloatBE=function(t,r){return t=t>>>0,r||ev(t,4,this.length),$T.read(this,t,!1,23,4)};ea.prototype.readDoubleLE=function(t,r){return t=t>>>0,r||ev(t,8,this.length),$T.read(this,t,!0,52,8)};ea.prototype.readDoubleBE=function(t,r){return t=t>>>0,r||ev(t,8,this.length),$T.read(this,t,!1,52,8)};function Rp(e,t,r,n,i,a){if(!ea.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>i||t<a)throw new RangeError('"value" argument is out of bounds');if(r+n>e.length)throw new RangeError("Index out of range")}ea.prototype.writeUintLE=ea.prototype.writeUIntLE=function(t,r,n,i){if(t=+t,r=r>>>0,n=n>>>0,!i){let s=Math.pow(2,8*n)-1;Rp(this,t,r,n,s,0)}let a=1,o=0;for(this[r]=t&255;++o<n&&(a*=256);)this[r+o]=t/a&255;return r+n};ea.prototype.writeUintBE=ea.prototype.writeUIntBE=function(t,r,n,i){if(t=+t,r=r>>>0,n=n>>>0,!i){let s=Math.pow(2,8*n)-1;Rp(this,t,r,n,s,0)}let a=n-1,o=1;for(this[r+a]=t&255;--a>=0&&(o*=256);)this[r+a]=t/o&255;return r+n};ea.prototype.writeUint8=ea.prototype.writeUInt8=function(t,r,n){return t=+t,r=r>>>0,n||Rp(this,t,r,1,255,0),this[r]=t&255,r+1};ea.prototype.writeUint16LE=ea.prototype.writeUInt16LE=function(t,r,n){return t=+t,r=r>>>0,n||Rp(this,t,r,2,65535,0),this[r]=t&255,this[r+1]=t>>>8,r+2};ea.prototype.writeUint16BE=ea.prototype.writeUInt16BE=function(t,r,n){return t=+t,r=r>>>0,n||Rp(this,t,r,2,65535,0),this[r]=t>>>8,this[r+1]=t&255,r+2};ea.prototype.writeUint32LE=ea.prototype.writeUInt32LE=function(t,r,n){return t=+t,r=r>>>0,n||Rp(this,t,r,4,4294967295,0),this[r+3]=t>>>24,this[r+2]=t>>>16,this[r+1]=t>>>8,this[r]=t&255,r+4};ea.prototype.writeUint32BE=ea.prototype.writeUInt32BE=function(t,r,n){return t=+t,r=r>>>0,n||Rp(this,t,r,4,4294967295,0),this[r]=t>>>24,this[r+1]=t>>>16,this[r+2]=t>>>8,this[r+3]=t&255,r+4};function iTe(e,t,r,n,i){lTe(t,n,i,e,r,7);let a=Number(t&BigInt(4294967295));e[r++]=a,a=a>>8,e[r++]=a,a=a>>8,e[r++]=a,a=a>>8,e[r++]=a;let o=Number(t>>BigInt(32)&BigInt(4294967295));return e[r++]=o,o=o>>8,e[r++]=o,o=o>>8,e[r++]=o,o=o>>8,e[r++]=o,r}function nTe(e,t,r,n,i){lTe(t,n,i,e,r,7);let a=Number(t&BigInt(4294967295));e[r+7]=a,a=a>>8,e[r+6]=a,a=a>>8,e[r+5]=a,a=a>>8,e[r+4]=a;let o=Number(t>>BigInt(32)&BigInt(4294967295));return e[r+3]=o,o=o>>8,e[r+2]=o,o=o>>8,e[r+1]=o,o=o>>8,e[r]=o,r+8}ea.prototype.writeBigUInt64LE=P_(function(t,r=0){return iTe(this,t,r,BigInt(0),BigInt("0xffffffffffffffff"))});ea.prototype.writeBigUInt64BE=P_(function(t,r=0){return nTe(this,t,r,BigInt(0),BigInt("0xffffffffffffffff"))});ea.prototype.writeIntLE=function(t,r,n,i){if(t=+t,r=r>>>0,!i){let l=Math.pow(2,8*n-1);Rp(this,t,r,n,l-1,-l)}let a=0,o=1,s=0;for(this[r]=t&255;++a<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};ea.prototype.writeIntBE=function(t,r,n,i){if(t=+t,r=r>>>0,!i){let l=Math.pow(2,8*n-1);Rp(this,t,r,n,l-1,-l)}let a=n-1,o=1,s=0;for(this[r+a]=t&255;--a>=0&&(o*=256);)t<0&&s===0&&this[r+a+1]!==0&&(s=1),this[r+a]=(t/o>>0)-s&255;return r+n};ea.prototype.writeInt8=function(t,r,n){return t=+t,r=r>>>0,n||Rp(this,t,r,1,127,-128),t<0&&(t=255+t+1),this[r]=t&255,r+1};ea.prototype.writeInt16LE=function(t,r,n){return t=+t,r=r>>>0,n||Rp(this,t,r,2,32767,-32768),this[r]=t&255,this[r+1]=t>>>8,r+2};ea.prototype.writeInt16BE=function(t,r,n){return t=+t,r=r>>>0,n||Rp(this,t,r,2,32767,-32768),this[r]=t>>>8,this[r+1]=t&255,r+2};ea.prototype.writeInt32LE=function(t,r,n){return t=+t,r=r>>>0,n||Rp(this,t,r,4,2147483647,-2147483648),this[r]=t&255,this[r+1]=t>>>8,this[r+2]=t>>>16,this[r+3]=t>>>24,r+4};ea.prototype.writeInt32BE=function(t,r,n){return t=+t,r=r>>>0,n||Rp(this,t,r,4,2147483647,-2147483648),t<0&&(t=4294967295+t+1),this[r]=t>>>24,this[r+1]=t>>>16,this[r+2]=t>>>8,this[r+3]=t&255,r+4};ea.prototype.writeBigInt64LE=P_(function(t,r=0){return iTe(this,t,r,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});ea.prototype.writeBigInt64BE=P_(function(t,r=0){return nTe(this,t,r,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});function aTe(e,t,r,n,i,a){if(r+n>e.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function oTe(e,t,r,n,i){return t=+t,r=r>>>0,i||aTe(e,t,r,4,34028234663852886e22,-34028234663852886e22),$T.write(e,t,r,n,23,4),r+4}ea.prototype.writeFloatLE=function(t,r,n){return oTe(this,t,r,!0,n)};ea.prototype.writeFloatBE=function(t,r,n){return oTe(this,t,r,!1,n)};function sTe(e,t,r,n,i){return t=+t,r=r>>>0,i||aTe(e,t,r,8,17976931348623157e292,-17976931348623157e292),$T.write(e,t,r,n,52,8),r+8}ea.prototype.writeDoubleLE=function(t,r,n){return sTe(this,t,r,!0,n)};ea.prototype.writeDoubleBE=function(t,r,n){return sTe(this,t,r,!1,n)};ea.prototype.copy=function(t,r,n,i){if(!ea.isBuffer(t))throw new TypeError("argument should be a Buffer");if(n||(n=0),!i&&i!==0&&(i=this.length),r>=t.length&&(r=t.length),r||(r=0),i>0&&i<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};ea.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"&&!ea.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=ea.isBuffer(t)?t:ea.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 JT={};function xH(e,t,r){JT[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}`}}}xH("ERR_BUFFER_OUT_OF_BOUNDS",function(e){return e?`${e} is outside of buffer bounds`:"Attempt to access memory outside buffer bounds"},RangeError);xH("ERR_INVALID_ARG_TYPE",function(e,t){return`The "${e}" argument must be of type number. Received type ${typeof t}`},TypeError);xH("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=J3e(String(r)):typeof r=="bigint"&&(i=String(r),(r>BigInt(2)**BigInt(32)||r<-(BigInt(2)**BigInt(32)))&&(i=J3e(i)),i+="n"),n+=` It must be ${t}. Received ${i}`,n},RangeError);function J3e(e){let t="",r=e.length,n=e[0]==="-"?1:0;for(;r>=n+4;r-=3)t=`_${e.slice(r-3,r)}${t}`;return`${e.slice(0,r)}${t}`}function oTt(e,t,r){QT(t,"offset"),(e[t]===void 0||e[t+r]===void 0)&&U4(t,e.length-(r+1))}function lTe(e,t,r,n,i,a){if(e>r||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 JT.ERR_OUT_OF_RANGE("value",s,e)}oTt(n,i,a)}function QT(e,t){if(typeof e!="number")throw new JT.ERR_INVALID_ARG_TYPE(t,"number",e)}function U4(e,t,r){throw Math.floor(e)!==e?(QT(e,r),new JT.ERR_OUT_OF_RANGE(r||"offset","an integer",e)):t<0?new JT.ERR_BUFFER_OUT_OF_BOUNDS:new JT.ERR_OUT_OF_RANGE(r||"offset",`>= ${r?1:0} and <= ${t}`,e)}var sTt=/[^+/0-9A-Za-z-_]/g;function lTt(e){if(e=e.split("=")[0],e=e.trim().replace(sTt,""),e.length<2)return"";for(;e.length%4!==0;)e=e+"=";return e}function mH(e,t){t=t||1/0;let r,n=e.length,i=null,a=[];for(let o=0;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 uTt(e){let t=[];for(let r=0;r<e.length;++r)t.push(e.charCodeAt(r)&255);return t}function cTt(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 uTe(e){return vH.toByteArray(lTt(e))}function H8(e,t,r,n){let i;for(i=0;i<n&&!(i+r>=t.length||i>=e.length);++i)t[i+r]=e[i];return i}function qm(e,t){return e instanceof t||e!=null&&e.constructor!=null&&e.constructor.name!=null&&e.constructor.name===t.name}function bH(e){return e!==e}var fTt=function(){let e="0123456789abcdef",t=new Array(256);for(let r=0;r<16;++r){let n=r*16;for(let i=0;i<16;++i)t[n+i]=e[r]+e[i]}return t}();function P_(e){return typeof BigInt=="undefined"?hTt:e}function hTt(){throw new Error("BigInt not supported")}});var j8=ye((Nfr,cTe)=>{"use strict";cTe.exports=function(){if(typeof Symbol!="function"||typeof Object.getOwnPropertySymbols!="function")return!1;if(typeof Symbol.iterator=="symbol")return!0;var t={},r=Symbol("test"),n=Object(r);if(typeof r=="string"||Object.prototype.toString.call(r)!=="[object Symbol]"||Object.prototype.toString.call(n)!=="[object Symbol]")return!1;var i=42;t[r]=i;for(var a in t)return!1;if(typeof Object.keys=="function"&&Object.keys(t).length!==0||typeof Object.getOwnPropertyNames=="function"&&Object.getOwnPropertyNames(t).length!==0)return!1;var o=Object.getOwnPropertySymbols(t);if(o.length!==1||o[0]!==r||!Object.prototype.propertyIsEnumerable.call(t,r))return!1;if(typeof Object.getOwnPropertyDescriptor=="function"){var s=Object.getOwnPropertyDescriptor(t,r);if(s.value!==i||s.enumerable!==!0)return!1}return!0}});var V4=ye((Ufr,fTe)=>{"use strict";var dTt=j8();fTe.exports=function(){return dTt()&&!!Symbol.toStringTag}});var wH=ye((Vfr,hTe)=>{"use strict";hTe.exports=Object});var vTe=ye((Gfr,dTe)=>{"use strict";dTe.exports=Error});var gTe=ye((Hfr,pTe)=>{"use strict";pTe.exports=EvalError});var yTe=ye((jfr,mTe)=>{"use strict";mTe.exports=RangeError});var xTe=ye((Wfr,_Te)=>{"use strict";_Te.exports=ReferenceError});var TH=ye((Xfr,bTe)=>{"use strict";bTe.exports=SyntaxError});var tA=ye((Zfr,wTe)=>{"use strict";wTe.exports=TypeError});var ATe=ye((Yfr,TTe)=>{"use strict";TTe.exports=URIError});var MTe=ye((Kfr,STe)=>{"use strict";STe.exports=Math.abs});var kTe=ye((Jfr,ETe)=>{"use strict";ETe.exports=Math.floor});var LTe=ye(($fr,CTe)=>{"use strict";CTe.exports=Math.max});var ITe=ye((Qfr,PTe)=>{"use strict";PTe.exports=Math.min});var DTe=ye((ehr,RTe)=>{"use strict";RTe.exports=Math.pow});var zTe=ye((thr,FTe)=>{"use strict";FTe.exports=Math.round});var qTe=ye((rhr,OTe)=>{"use strict";OTe.exports=Number.isNaN||function(t){return t!==t}});var NTe=ye((ihr,BTe)=>{"use strict";var vTt=qTe();BTe.exports=function(t){return vTt(t)||t===0?t:t<0?-1:1}});var VTe=ye((nhr,UTe)=>{"use strict";UTe.exports=Object.getOwnPropertyDescriptor});var f2=ye((ahr,GTe)=>{"use strict";var W8=VTe();if(W8)try{W8([],"length")}catch(e){W8=null}GTe.exports=W8});var G4=ye((ohr,HTe)=>{"use strict";var X8=Object.defineProperty||!1;if(X8)try{X8({},"a",{value:1})}catch(e){X8=!1}HTe.exports=X8});var XTe=ye((shr,WTe)=>{"use strict";var jTe=typeof Symbol!="undefined"&&Symbol,pTt=j8();WTe.exports=function(){return typeof jTe!="function"||typeof Symbol!="function"||typeof jTe("foo")!="symbol"||typeof Symbol("bar")!="symbol"?!1:pTt()}});var AH=ye((lhr,ZTe)=>{"use strict";ZTe.exports=typeof Reflect!="undefined"&&Reflect.getPrototypeOf||null});var SH=ye((uhr,YTe)=>{"use strict";var gTt=wH();YTe.exports=gTt.getPrototypeOf||null});var $Te=ye((chr,JTe)=>{"use strict";var mTt="Function.prototype.bind called on incompatible ",yTt=Object.prototype.toString,_Tt=Math.max,xTt="[object Function]",KTe=function(t,r){for(var n=[],i=0;i<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},bTt=function(t,r){for(var n=[],i=r||0,a=0;i<t.length;i+=1,a+=1)n[a]=t[i];return n},wTt=function(e,t){for(var r="",n=0;n<e.length;n+=1)r+=e[n],n+1<e.length&&(r+=t);return r};JTe.exports=function(t){var r=this;if(typeof r!="function"||yTt.apply(r)!==xTt)throw new TypeError(mTt+r);for(var n=bTt(arguments,1),i,a=function(){if(this instanceof i){var c=r.apply(this,KTe(n,arguments));return Object(c)===c?c:this}return r.apply(t,KTe(n,arguments))},o=_Tt(0,r.length-n.length),s=[],l=0;l<o;l++)s[l]="$"+l;if(i=Function("binder","return function ("+wTt(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 rA=ye((fhr,QTe)=>{"use strict";var TTt=$Te();QTe.exports=Function.prototype.bind||TTt});var Z8=ye((hhr,eAe)=>{"use strict";eAe.exports=Function.prototype.call});var MH=ye((dhr,tAe)=>{"use strict";tAe.exports=Function.prototype.apply});var iAe=ye((vhr,rAe)=>{"use strict";rAe.exports=typeof Reflect!="undefined"&&Reflect&&Reflect.apply});var aAe=ye((phr,nAe)=>{"use strict";var ATt=rA(),STt=MH(),MTt=Z8(),ETt=iAe();nAe.exports=ETt||ATt.call(MTt,STt)});var sAe=ye((ghr,oAe)=>{"use strict";var kTt=rA(),CTt=tA(),LTt=Z8(),PTt=aAe();oAe.exports=function(t){if(t.length<1||typeof t[0]!="function")throw new CTt("a function is required");return PTt(kTt,LTt,t)}});var dAe=ye((mhr,hAe)=>{"use strict";var ITt=sAe(),lAe=f2(),cAe;try{cAe=[].__proto__===Array.prototype}catch(e){if(!e||typeof e!="object"||!("code"in e)||e.code!=="ERR_PROTO_ACCESS")throw e}var EH=!!cAe&&lAe&&lAe(Object.prototype,"__proto__"),fAe=Object,uAe=fAe.getPrototypeOf;hAe.exports=EH&&typeof EH.get=="function"?ITt([EH.get]):typeof uAe=="function"?function(t){return uAe(t==null?t:fAe(t))}:!1});var yAe=ye((yhr,mAe)=>{"use strict";var vAe=AH(),pAe=SH(),gAe=dAe();mAe.exports=vAe?function(t){return vAe(t)}:pAe?function(t){if(!t||typeof t!="object"&&typeof t!="function")throw new TypeError("getProto: not an object");return pAe(t)}:gAe?function(t){return gAe(t)}:null});var xAe=ye((_hr,_Ae)=>{"use strict";var RTt=Function.prototype.call,DTt=Object.prototype.hasOwnProperty,FTt=rA();_Ae.exports=FTt.call(RTt,DTt)});var J8=ye((xhr,MAe)=>{"use strict";var lu,zTt=wH(),OTt=vTe(),qTt=gTe(),BTt=yTe(),NTt=xTe(),oA=TH(),aA=tA(),UTt=ATe(),VTt=MTe(),GTt=kTe(),HTt=LTe(),jTt=ITe(),WTt=DTe(),XTt=zTe(),ZTt=NTe(),AAe=Function,kH=function(e){try{return AAe('"use strict"; return ('+e+").constructor;")()}catch(t){}},H4=f2(),YTt=G4(),CH=function(){throw new aA},KTt=H4?function(){try{return arguments.callee,CH}catch(e){try{return H4(arguments,"callee").get}catch(t){return CH}}}():CH,iA=XTe()(),tv=yAe(),JTt=SH(),$Tt=AH(),SAe=MH(),j4=Z8(),nA={},QTt=typeof Uint8Array=="undefined"||!tv?lu:tv(Uint8Array),h2={__proto__:null,"%AggregateError%":typeof AggregateError=="undefined"?lu:AggregateError,"%Array%":Array,"%ArrayBuffer%":typeof ArrayBuffer=="undefined"?lu:ArrayBuffer,"%ArrayIteratorPrototype%":iA&&tv?tv([][Symbol.iterator]()):lu,"%AsyncFromSyncIteratorPrototype%":lu,"%AsyncFunction%":nA,"%AsyncGenerator%":nA,"%AsyncGeneratorFunction%":nA,"%AsyncIteratorPrototype%":nA,"%Atomics%":typeof Atomics=="undefined"?lu:Atomics,"%BigInt%":typeof BigInt=="undefined"?lu:BigInt,"%BigInt64Array%":typeof BigInt64Array=="undefined"?lu:BigInt64Array,"%BigUint64Array%":typeof BigUint64Array=="undefined"?lu:BigUint64Array,"%Boolean%":Boolean,"%DataView%":typeof DataView=="undefined"?lu:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":OTt,"%eval%":eval,"%EvalError%":qTt,"%Float16Array%":typeof Float16Array=="undefined"?lu:Float16Array,"%Float32Array%":typeof Float32Array=="undefined"?lu:Float32Array,"%Float64Array%":typeof Float64Array=="undefined"?lu:Float64Array,"%FinalizationRegistry%":typeof FinalizationRegistry=="undefined"?lu:FinalizationRegistry,"%Function%":AAe,"%GeneratorFunction%":nA,"%Int8Array%":typeof Int8Array=="undefined"?lu:Int8Array,"%Int16Array%":typeof Int16Array=="undefined"?lu:Int16Array,"%Int32Array%":typeof Int32Array=="undefined"?lu:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":iA&&tv?tv(tv([][Symbol.iterator]())):lu,"%JSON%":typeof JSON=="object"?JSON:lu,"%Map%":typeof Map=="undefined"?lu:Map,"%MapIteratorPrototype%":typeof Map=="undefined"||!iA||!tv?lu:tv(new Map()[Symbol.iterator]()),"%Math%":Math,"%Number%":Number,"%Object%":zTt,"%Object.getOwnPropertyDescriptor%":H4,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":typeof Promise=="undefined"?lu:Promise,"%Proxy%":typeof Proxy=="undefined"?lu:Proxy,"%RangeError%":BTt,"%ReferenceError%":NTt,"%Reflect%":typeof Reflect=="undefined"?lu:Reflect,"%RegExp%":RegExp,"%Set%":typeof Set=="undefined"?lu:Set,"%SetIteratorPrototype%":typeof Set=="undefined"||!iA||!tv?lu:tv(new Set()[Symbol.iterator]()),"%SharedArrayBuffer%":typeof SharedArrayBuffer=="undefined"?lu:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":iA&&tv?tv(""[Symbol.iterator]()):lu,"%Symbol%":iA?Symbol:lu,"%SyntaxError%":oA,"%ThrowTypeError%":KTt,"%TypedArray%":QTt,"%TypeError%":aA,"%Uint8Array%":typeof Uint8Array=="undefined"?lu:Uint8Array,"%Uint8ClampedArray%":typeof Uint8ClampedArray=="undefined"?lu:Uint8ClampedArray,"%Uint16Array%":typeof Uint16Array=="undefined"?lu:Uint16Array,"%Uint32Array%":typeof Uint32Array=="undefined"?lu:Uint32Array,"%URIError%":UTt,"%WeakMap%":typeof WeakMap=="undefined"?lu:WeakMap,"%WeakRef%":typeof WeakRef=="undefined"?lu:WeakRef,"%WeakSet%":typeof WeakSet=="undefined"?lu:WeakSet,"%Function.prototype.call%":j4,"%Function.prototype.apply%":SAe,"%Object.defineProperty%":YTt,"%Object.getPrototypeOf%":JTt,"%Math.abs%":VTt,"%Math.floor%":GTt,"%Math.max%":HTt,"%Math.min%":jTt,"%Math.pow%":WTt,"%Math.round%":XTt,"%Math.sign%":ZTt,"%Reflect.getPrototypeOf%":$Tt};if(tv)try{null.error}catch(e){bAe=tv(tv(e)),h2["%Error.prototype%"]=bAe}var bAe,eAt=function e(t){var r;if(t==="%AsyncFunction%")r=kH("async function () {}");else if(t==="%GeneratorFunction%")r=kH("function* () {}");else if(t==="%AsyncGeneratorFunction%")r=kH("async function* () {}");else if(t==="%AsyncGenerator%"){var n=e("%AsyncGeneratorFunction%");n&&(r=n.prototype)}else if(t==="%AsyncIteratorPrototype%"){var i=e("%AsyncGenerator%");i&&tv&&(r=tv(i.prototype))}return h2[t]=r,r},wAe={__proto__:null,"%ArrayBufferPrototype%":["ArrayBuffer","prototype"],"%ArrayPrototype%":["Array","prototype"],"%ArrayProto_entries%":["Array","prototype","entries"],"%ArrayProto_forEach%":["Array","prototype","forEach"],"%ArrayProto_keys%":["Array","prototype","keys"],"%ArrayProto_values%":["Array","prototype","values"],"%AsyncFunctionPrototype%":["AsyncFunction","prototype"],"%AsyncGenerator%":["AsyncGeneratorFunction","prototype"],"%AsyncGeneratorPrototype%":["AsyncGeneratorFunction","prototype","prototype"],"%BooleanPrototype%":["Boolean","prototype"],"%DataViewPrototype%":["DataView","prototype"],"%DatePrototype%":["Date","prototype"],"%ErrorPrototype%":["Error","prototype"],"%EvalErrorPrototype%":["EvalError","prototype"],"%Float32ArrayPrototype%":["Float32Array","prototype"],"%Float64ArrayPrototype%":["Float64Array","prototype"],"%FunctionPrototype%":["Function","prototype"],"%Generator%":["GeneratorFunction","prototype"],"%GeneratorPrototype%":["GeneratorFunction","prototype","prototype"],"%Int8ArrayPrototype%":["Int8Array","prototype"],"%Int16ArrayPrototype%":["Int16Array","prototype"],"%Int32ArrayPrototype%":["Int32Array","prototype"],"%JSONParse%":["JSON","parse"],"%JSONStringify%":["JSON","stringify"],"%MapPrototype%":["Map","prototype"],"%NumberPrototype%":["Number","prototype"],"%ObjectPrototype%":["Object","prototype"],"%ObjProto_toString%":["Object","prototype","toString"],"%ObjProto_valueOf%":["Object","prototype","valueOf"],"%PromisePrototype%":["Promise","prototype"],"%PromiseProto_then%":["Promise","prototype","then"],"%Promise_all%":["Promise","all"],"%Promise_reject%":["Promise","reject"],"%Promise_resolve%":["Promise","resolve"],"%RangeErrorPrototype%":["RangeError","prototype"],"%ReferenceErrorPrototype%":["ReferenceError","prototype"],"%RegExpPrototype%":["RegExp","prototype"],"%SetPrototype%":["Set","prototype"],"%SharedArrayBufferPrototype%":["SharedArrayBuffer","prototype"],"%StringPrototype%":["String","prototype"],"%SymbolPrototype%":["Symbol","prototype"],"%SyntaxErrorPrototype%":["SyntaxError","prototype"],"%TypedArrayPrototype%":["TypedArray","prototype"],"%TypeErrorPrototype%":["TypeError","prototype"],"%Uint8ArrayPrototype%":["Uint8Array","prototype"],"%Uint8ClampedArrayPrototype%":["Uint8ClampedArray","prototype"],"%Uint16ArrayPrototype%":["Uint16Array","prototype"],"%Uint32ArrayPrototype%":["Uint32Array","prototype"],"%URIErrorPrototype%":["URIError","prototype"],"%WeakMapPrototype%":["WeakMap","prototype"],"%WeakSetPrototype%":["WeakSet","prototype"]},W4=rA(),Y8=xAe(),tAt=W4.call(j4,Array.prototype.concat),rAt=W4.call(SAe,Array.prototype.splice),TAe=W4.call(j4,String.prototype.replace),K8=W4.call(j4,String.prototype.slice),iAt=W4.call(j4,RegExp.prototype.exec),nAt=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,aAt=/\\(\\)?/g,oAt=function(t){var r=K8(t,0,1),n=K8(t,-1);if(r==="%"&&n!=="%")throw new oA("invalid intrinsic syntax, expected closing `%`");if(n==="%"&&r!=="%")throw new oA("invalid intrinsic syntax, expected opening `%`");var i=[];return TAe(t,nAt,function(a,o,s,l){i[i.length]=s?TAe(l,aAt,"$1"):o||a}),i},sAt=function(t,r){var n=t,i;if(Y8(wAe,n)&&(i=wAe[n],n="%"+i[0]+"%"),Y8(h2,n)){var a=h2[n];if(a===nA&&(a=eAt(n)),typeof a=="undefined"&&!r)throw new aA("intrinsic "+t+" exists, but is not available. Please file an issue!");return{alias:i,name:n,value:a}}throw new oA("intrinsic "+t+" does not exist!")};MAe.exports=function(t,r){if(typeof t!="string"||t.length===0)throw new aA("intrinsic name must be a non-empty string");if(arguments.length>1&&typeof r!="boolean")throw new aA('"allowMissing" argument must be a boolean');if(iAt(/^%?[^%]*%?$/,t)===null)throw new oA("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var n=oAt(t),i=n.length>0?n[0]:"",a=sAt("%"+i+"%",r),o=a.name,s=a.value,l=!1,u=a.alias;u&&(i=u[0],rAt(n,tAt([0,1],u)));for(var c=1,f=!0;c<n.length;c+=1){var h=n[c],d=K8(h,0,1),v=K8(h,-1);if((d==='"'||d==="'"||d==="`"||v==='"'||v==="'"||v==="`")&&d!==v)throw new oA("property names with quotes must have matching quotes");if((h==="constructor"||!f)&&(l=!0),i+="."+h,o="%"+i+"%",Y8(h2,o))s=h2[o];else if(s!=null){if(!(h in s)){if(!r)throw new aA("base intrinsic for "+t+" exists, but the property is not available.");return}if(H4&&c+1>=n.length){var _=H4(s,h);f=!!_,f&&"get"in _&&!("originalValue"in _.get)?s=_.get:s=s[h]}else f=Y8(s,h),s=s[h];f&&!l&&(h2[o]=s)}}return s}});var LAe=ye((bhr,CAe)=>{"use strict";var EAe=G4(),lAt=TH(),sA=tA(),kAe=f2();CAe.exports=function(t,r,n){if(!t||typeof t!="object"&&typeof t!="function")throw new sA("`obj` must be an object or a function`");if(typeof r!="string"&&typeof r!="symbol")throw new sA("`property` must be a string or a symbol`");if(arguments.length>3&&typeof arguments[3]!="boolean"&&arguments[3]!==null)throw new sA("`nonEnumerable`, if provided, must be a boolean or null");if(arguments.length>4&&typeof arguments[4]!="boolean"&&arguments[4]!==null)throw new sA("`nonWritable`, if provided, must be a boolean or null");if(arguments.length>5&&typeof arguments[5]!="boolean"&&arguments[5]!==null)throw new sA("`nonConfigurable`, if provided, must be a boolean or null");if(arguments.length>6&&typeof arguments[6]!="boolean")throw new sA("`loose`, if provided, must be a boolean");var i=arguments.length>3?arguments[3]:null,a=arguments.length>4?arguments[4]:null,o=arguments.length>5?arguments[5]:null,s=arguments.length>6?arguments[6]:!1,l=!!kAe&&kAe(t,r);if(EAe)EAe(t,r,{configurable:o===null&&l?l.configurable:!o,enumerable:i===null&&l?l.enumerable:!i,value:n,writable:a===null&&l?l.writable:!a});else if(s||!i&&!a&&!o)t[r]=n;else throw new lAt("This environment does not support defining a property as non-configurable, non-writable, or non-enumerable.")}});var PH=ye((whr,IAe)=>{"use strict";var LH=G4(),PAe=function(){return!!LH};PAe.hasArrayLengthDefineBug=function(){if(!LH)return null;try{return LH([],"length",{value:1}).length!==1}catch(t){return!0}};IAe.exports=PAe});var OAe=ye((Thr,zAe)=>{"use strict";var uAt=J8(),RAe=LAe(),cAt=PH()(),DAe=f2(),FAe=tA(),fAt=uAt("%Math.floor%");zAe.exports=function(t,r){if(typeof t!="function")throw new FAe("`fn` is not a function");if(typeof r!="number"||r<0||r>4294967295||fAt(r)!==r)throw new FAe("`length` must be a positive 32-bit integer");var n=arguments.length>2&&!!arguments[2],i=!0,a=!0;if("length"in t&&DAe){var o=DAe(t,"length");o&&!o.configurable&&(i=!1),o&&!o.writable&&(a=!1)}return(i||a||!n)&&(cAt?RAe(t,"length",r,!0,!0):RAe(t,"length",r)),t}});var X4=ye((Ahr,$8)=>{"use strict";var IH=rA(),Q8=J8(),hAt=OAe(),dAt=tA(),NAe=Q8("%Function.prototype.apply%"),UAe=Q8("%Function.prototype.call%"),VAe=Q8("%Reflect.apply%",!0)||IH.call(UAe,NAe),qAe=G4(),vAt=Q8("%Math.max%");$8.exports=function(t){if(typeof t!="function")throw new dAt("a function is required");var r=VAe(IH,UAe,arguments);return hAt(r,1+vAt(0,t.length-(arguments.length-1)),!0)};var BAe=function(){return VAe(IH,NAe,arguments)};qAe?qAe($8.exports,"apply",{value:BAe}):$8.exports.apply=BAe});var lA=ye((Shr,jAe)=>{"use strict";var GAe=J8(),HAe=X4(),pAt=HAe(GAe("String.prototype.indexOf"));jAe.exports=function(t,r){var n=GAe(t,!!r);return typeof n=="function"&&pAt(t,".prototype.")>-1?HAe(n):n}});var ZAe=ye((Mhr,XAe)=>{"use strict";var gAt=V4()(),mAt=lA(),RH=mAt("Object.prototype.toString"),eR=function(t){return gAt&&t&&typeof t=="object"&&Symbol.toStringTag in t?!1:RH(t)==="[object Arguments]"},WAe=function(t){return eR(t)?!0:t!==null&&typeof t=="object"&&typeof t.length=="number"&&t.length>=0&&RH(t)!=="[object Array]"&&RH(t.callee)==="[object Function]"},yAt=function(){return eR(arguments)}();eR.isLegacyArguments=WAe;XAe.exports=yAt?eR:WAe});var JAe=ye((Ehr,KAe)=>{"use strict";var _At=Object.prototype.toString,xAt=Function.prototype.toString,bAt=/^\s*(?:function)?\*/,YAe=V4()(),DH=Object.getPrototypeOf,wAt=function(){if(!YAe)return!1;try{return Function("return function*() {}")()}catch(e){}},FH;KAe.exports=function(t){if(typeof t!="function")return!1;if(bAt.test(xAt.call(t)))return!0;if(!YAe){var r=_At.call(t);return r==="[object GeneratorFunction]"}if(!DH)return!1;if(typeof FH=="undefined"){var n=wAt();FH=n?DH(n):!1}return DH(t)===FH}});var t5e=ye((khr,e5e)=>{"use strict";var QAe=Function.prototype.toString,uA=typeof Reflect=="object"&&Reflect!==null&&Reflect.apply,OH,tR;if(typeof uA=="function"&&typeof Object.defineProperty=="function")try{OH=Object.defineProperty({},"length",{get:function(){throw tR}}),tR={},uA(function(){throw 42},null,OH)}catch(e){e!==tR&&(uA=null)}else uA=null;var TAt=/^\s*class\b/,qH=function(t){try{var r=QAe.call(t);return TAt.test(r)}catch(n){return!1}},zH=function(t){try{return qH(t)?!1:(QAe.call(t),!0)}catch(r){return!1}},rR=Object.prototype.toString,AAt="[object Object]",SAt="[object Function]",MAt="[object GeneratorFunction]",EAt="[object HTMLAllCollection]",kAt="[object HTML document.all class]",CAt="[object HTMLCollection]",LAt=typeof Symbol=="function"&&!!Symbol.toStringTag,PAt=!(0 in[,]),BH=function(){return!1};typeof document=="object"&&($Ae=document.all,rR.call($Ae)===rR.call(document.all)&&(BH=function(t){if((PAt||!t)&&(typeof t=="undefined"||typeof t=="object"))try{var r=rR.call(t);return(r===EAt||r===kAt||r===CAt||r===AAt)&&t("")==null}catch(n){}return!1}));var $Ae;e5e.exports=uA?function(t){if(BH(t))return!0;if(!t||typeof t!="function"&&typeof t!="object")return!1;try{uA(t,null,OH)}catch(r){if(r!==tR)return!1}return!qH(t)&&zH(t)}:function(t){if(BH(t))return!0;if(!t||typeof t!="function"&&typeof t!="object")return!1;if(LAt)return zH(t);if(qH(t))return!1;var r=rR.call(t);return r!==SAt&&r!==MAt&&!/^\[object HTML/.test(r)?!1:zH(t)}});var NH=ye((Chr,i5e)=>{"use strict";var IAt=t5e(),RAt=Object.prototype.toString,r5e=Object.prototype.hasOwnProperty,DAt=function(t,r,n){for(var i=0,a=t.length;i<a;i++)r5e.call(t,i)&&(n==null?r(t[i],i,t):r.call(n,t[i],i,t))},FAt=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)},zAt=function(t,r,n){for(var i in t)r5e.call(t,i)&&(n==null?r(t[i],i,t):r.call(n,t[i],i,t))},OAt=function(t,r,n){if(!IAt(r))throw new TypeError("iterator must be a function");var i;arguments.length>=3&&(i=n),RAt.call(t)==="[object Array]"?DAt(t,r,i):typeof t=="string"?FAt(t,r,i):zAt(t,r,i)};i5e.exports=OAt});var VH=ye((Lhr,n5e)=>{"use strict";var UH=["BigInt64Array","BigUint64Array","Float32Array","Float64Array","Int16Array","Int32Array","Int8Array","Uint16Array","Uint32Array","Uint8Array","Uint8ClampedArray"],qAt=typeof globalThis=="undefined"?window:globalThis;n5e.exports=function(){for(var t=[],r=0;r<UH.length;r++)typeof qAt[UH[r]]=="function"&&(t[t.length]=UH[r]);return t}});var u5e=ye((Phr,l5e)=>{"use strict";var nR=NH(),BAt=VH(),a5e=X4(),jH=lA(),iR=f2(),NAt=jH("Object.prototype.toString"),s5e=V4()(),o5e=typeof globalThis=="undefined"?window:globalThis,HH=BAt(),WH=jH("String.prototype.slice"),GH=Object.getPrototypeOf,UAt=jH("Array.prototype.indexOf",!0)||function(t,r){for(var n=0;n<t.length;n+=1)if(t[n]===r)return n;return-1},aR={__proto__:null};s5e&&iR&&GH?nR(HH,function(e){var t=new o5e[e];if(Symbol.toStringTag in t){var r=GH(t),n=iR(r,Symbol.toStringTag);if(!n){var i=GH(r);n=iR(i,Symbol.toStringTag)}aR["$"+e]=a5e(n.get)}}):nR(HH,function(e){var t=new o5e[e],r=t.slice||t.set;r&&(aR["$"+e]=a5e(r))});var VAt=function(t){var r=!1;return nR(aR,function(n,i){if(!r)try{"$"+n(t)===i&&(r=WH(i,1))}catch(a){}}),r},GAt=function(t){var r=!1;return nR(aR,function(n,i){if(!r)try{n(t),r=WH(i,1)}catch(a){}}),r};l5e.exports=function(t){if(!t||typeof t!="object")return!1;if(!s5e){var r=WH(NAt(t),8,-1);return UAt(HH,r)>-1?r:r!=="Object"?!1:GAt(t)}return iR?VAt(t):null}});var p5e=ye((Ihr,v5e)=>{"use strict";var c5e=NH(),HAt=VH(),ZH=lA(),jAt=ZH("Object.prototype.toString"),f5e=V4()(),oR=f2(),WAt=typeof globalThis=="undefined"?window:globalThis,h5e=HAt(),XAt=ZH("Array.prototype.indexOf",!0)||function(t,r){for(var n=0;n<t.length;n+=1)if(t[n]===r)return n;return-1},ZAt=ZH("String.prototype.slice"),d5e={},XH=Object.getPrototypeOf;f5e&&oR&&XH&&c5e(h5e,function(e){var t=new WAt[e];if(Symbol.toStringTag in t){var r=XH(t),n=oR(r,Symbol.toStringTag);if(!n){var i=XH(r);n=oR(i,Symbol.toStringTag)}d5e[e]=n.get}});var YAt=function(t){var r=!1;return c5e(d5e,function(n,i){if(!r)try{r=n.call(t)===i}catch(a){}}),r};v5e.exports=function(t){if(!t||typeof t!="object")return!1;if(!f5e||!(Symbol.toStringTag in t)){var r=ZAt(jAt(t),8,-1);return XAt(h5e,r)>-1}return oR?YAt(t):!1}});var JH=ye(uu=>{"use strict";var KAt=ZAe(),JAt=JAe(),Hg=u5e(),g5e=p5e();function cA(e){return e.call.bind(e)}var m5e=typeof BigInt!="undefined",y5e=typeof Symbol!="undefined",Z0=cA(Object.prototype.toString),$At=cA(Number.prototype.valueOf),QAt=cA(String.prototype.valueOf),e5t=cA(Boolean.prototype.valueOf);m5e&&(_5e=cA(BigInt.prototype.valueOf));var _5e;y5e&&(x5e=cA(Symbol.prototype.valueOf));var x5e;function Y4(e,t){if(typeof e!="object")return!1;try{return t(e),!0}catch(r){return!1}}uu.isArgumentsObject=KAt;uu.isGeneratorFunction=JAt;uu.isTypedArray=g5e;function t5t(e){return typeof Promise!="undefined"&&e instanceof Promise||e!==null&&typeof e=="object"&&typeof e.then=="function"&&typeof e.catch=="function"}uu.isPromise=t5t;function r5t(e){return typeof ArrayBuffer!="undefined"&&ArrayBuffer.isView?ArrayBuffer.isView(e):g5e(e)||w5e(e)}uu.isArrayBufferView=r5t;function i5t(e){return Hg(e)==="Uint8Array"}uu.isUint8Array=i5t;function n5t(e){return Hg(e)==="Uint8ClampedArray"}uu.isUint8ClampedArray=n5t;function a5t(e){return Hg(e)==="Uint16Array"}uu.isUint16Array=a5t;function o5t(e){return Hg(e)==="Uint32Array"}uu.isUint32Array=o5t;function s5t(e){return Hg(e)==="Int8Array"}uu.isInt8Array=s5t;function l5t(e){return Hg(e)==="Int16Array"}uu.isInt16Array=l5t;function u5t(e){return Hg(e)==="Int32Array"}uu.isInt32Array=u5t;function c5t(e){return Hg(e)==="Float32Array"}uu.isFloat32Array=c5t;function f5t(e){return Hg(e)==="Float64Array"}uu.isFloat64Array=f5t;function h5t(e){return Hg(e)==="BigInt64Array"}uu.isBigInt64Array=h5t;function d5t(e){return Hg(e)==="BigUint64Array"}uu.isBigUint64Array=d5t;function sR(e){return Z0(e)==="[object Map]"}sR.working=typeof Map!="undefined"&&sR(new Map);function v5t(e){return typeof Map=="undefined"?!1:sR.working?sR(e):e instanceof Map}uu.isMap=v5t;function lR(e){return Z0(e)==="[object Set]"}lR.working=typeof Set!="undefined"&&lR(new Set);function p5t(e){return typeof Set=="undefined"?!1:lR.working?lR(e):e instanceof Set}uu.isSet=p5t;function uR(e){return Z0(e)==="[object WeakMap]"}uR.working=typeof WeakMap!="undefined"&&uR(new WeakMap);function g5t(e){return typeof WeakMap=="undefined"?!1:uR.working?uR(e):e instanceof WeakMap}uu.isWeakMap=g5t;function KH(e){return Z0(e)==="[object WeakSet]"}KH.working=typeof WeakSet!="undefined"&&KH(new WeakSet);function m5t(e){return KH(e)}uu.isWeakSet=m5t;function cR(e){return Z0(e)==="[object ArrayBuffer]"}cR.working=typeof ArrayBuffer!="undefined"&&cR(new ArrayBuffer);function b5e(e){return typeof ArrayBuffer=="undefined"?!1:cR.working?cR(e):e instanceof ArrayBuffer}uu.isArrayBuffer=b5e;function fR(e){return Z0(e)==="[object DataView]"}fR.working=typeof ArrayBuffer!="undefined"&&typeof DataView!="undefined"&&fR(new DataView(new ArrayBuffer(1),0,1));function w5e(e){return typeof DataView=="undefined"?!1:fR.working?fR(e):e instanceof DataView}uu.isDataView=w5e;var YH=typeof SharedArrayBuffer!="undefined"?SharedArrayBuffer:void 0;function Z4(e){return Z0(e)==="[object SharedArrayBuffer]"}function T5e(e){return typeof YH=="undefined"?!1:(typeof Z4.working=="undefined"&&(Z4.working=Z4(new YH)),Z4.working?Z4(e):e instanceof YH)}uu.isSharedArrayBuffer=T5e;function y5t(e){return Z0(e)==="[object AsyncFunction]"}uu.isAsyncFunction=y5t;function _5t(e){return Z0(e)==="[object Map Iterator]"}uu.isMapIterator=_5t;function x5t(e){return Z0(e)==="[object Set Iterator]"}uu.isSetIterator=x5t;function b5t(e){return Z0(e)==="[object Generator]"}uu.isGeneratorObject=b5t;function w5t(e){return Z0(e)==="[object WebAssembly.Module]"}uu.isWebAssemblyCompiledModule=w5t;function A5e(e){return Y4(e,$At)}uu.isNumberObject=A5e;function S5e(e){return Y4(e,QAt)}uu.isStringObject=S5e;function M5e(e){return Y4(e,e5t)}uu.isBooleanObject=M5e;function E5e(e){return m5e&&Y4(e,_5e)}uu.isBigIntObject=E5e;function k5e(e){return y5e&&Y4(e,x5e)}uu.isSymbolObject=k5e;function T5t(e){return A5e(e)||S5e(e)||M5e(e)||E5e(e)||k5e(e)}uu.isBoxedPrimitive=T5t;function A5t(e){return typeof Uint8Array!="undefined"&&(b5e(e)||T5e(e))}uu.isAnyArrayBuffer=A5t;["isProxy","isExternal","isModuleNamespaceObject"].forEach(function(e){Object.defineProperty(uu,e,{enumerable:!1,value:function(){throw new Error(e+" is not supported in userland")}})})});var $H=ye((Dhr,C5e)=>{C5e.exports=function(t){return t&&typeof t=="object"&&typeof t.copy=="function"&&typeof t.fill=="function"&&typeof t.readUInt8=="function"}});var nj=ye(cu=>{var L5e=Object.getOwnPropertyDescriptors||function(t){for(var r=Object.keys(t),n={},i=0;i<r.length;i++)n[r[i]]=Object.getOwnPropertyDescriptor(t,r[i]);return n},S5t=/%[sdj%]/g;cu.format=function(e){if(!yR(e)){for(var t=[],r=0;r<arguments.length;r++)t.push(I_(arguments[r]));return t.join(" ")}for(var r=1,n=arguments,i=n.length,a=String(e).replace(S5t,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])mR(o)||!fA(o)?a+=" "+o:a+=" "+I_(o);return a};cu.deprecate=function(e,t){if(typeof process!="undefined"&&process.noDeprecation===!0)return e;if(typeof process=="undefined")return function(){return cu.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 hR={},P5e=/^$/;dR="false",dR=dR.replace(/[|\\{}()[\]^$+?.]/g,"\\$&").replace(/\*/g,".*").replace(/,/g,"$|^").toUpperCase(),P5e=new RegExp("^"+dR+"$","i");var dR;cu.debuglog=function(e){if(e=e.toUpperCase(),!hR[e])if(P5e.test(e)){var t=process.pid;hR[e]=function(){var r=cu.format.apply(cu,arguments);console.error("%s %d: %s",e,t,r)}}else hR[e]=function(){};return hR[e]};function I_(e,t){var r={seen:[],stylize:E5t};return arguments.length>=3&&(r.depth=arguments[2]),arguments.length>=4&&(r.colors=arguments[3]),rj(t)?r.showHidden=t:t&&cu._extend(r,t),v2(r.showHidden)&&(r.showHidden=!1),v2(r.depth)&&(r.depth=2),v2(r.colors)&&(r.colors=!1),v2(r.customInspect)&&(r.customInspect=!0),r.colors&&(r.stylize=M5t),pR(r,e,r.depth)}cu.inspect=I_;I_.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]};I_.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"};function M5t(e,t){var r=I_.styles[t];return r?"\x1B["+I_.colors[r][0]+"m"+e+"\x1B["+I_.colors[r][1]+"m":e}function E5t(e,t){return e}function k5t(e){var t={};return e.forEach(function(r,n){t[r]=!0}),t}function pR(e,t,r){if(e.customInspect&&t&&vR(t.inspect)&&t.inspect!==cu.inspect&&!(t.constructor&&t.constructor.prototype===t)){var n=t.inspect(r,e);return yR(n)||(n=pR(e,n,r)),n}var i=C5t(e,t);if(i)return i;var a=Object.keys(t),o=k5t(a);if(e.showHidden&&(a=Object.getOwnPropertyNames(t)),J4(t)&&(a.indexOf("message")>=0||a.indexOf("description")>=0))return QH(t);if(a.length===0){if(vR(t)){var s=t.name?": "+t.name:"";return e.stylize("[Function"+s+"]","special")}if(K4(t))return e.stylize(RegExp.prototype.toString.call(t),"regexp");if(gR(t))return e.stylize(Date.prototype.toString.call(t),"date");if(J4(t))return QH(t)}var l="",u=!1,c=["{","}"];if(I5e(t)&&(u=!0,c=["[","]"]),vR(t)){var f=t.name?": "+t.name:"";l=" [Function"+f+"]"}if(K4(t)&&(l=" "+RegExp.prototype.toString.call(t)),gR(t)&&(l=" "+Date.prototype.toUTCString.call(t)),J4(t)&&(l=" "+QH(t)),a.length===0&&(!u||t.length==0))return c[0]+l+c[1];if(r<0)return K4(t)?e.stylize(RegExp.prototype.toString.call(t),"regexp"):e.stylize("[Object]","special");e.seen.push(t);var h;return u?h=L5t(e,t,r,o,a):h=a.map(function(d){return tj(e,t,r,o,d,u)}),e.seen.pop(),P5t(h,l,c)}function C5t(e,t){if(v2(t))return e.stylize("undefined","undefined");if(yR(t)){var r="'"+JSON.stringify(t).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(r,"string")}if(R5e(t))return e.stylize(""+t,"number");if(rj(t))return e.stylize(""+t,"boolean");if(mR(t))return e.stylize("null","null")}function QH(e){return"["+Error.prototype.toString.call(e)+"]"}function L5t(e,t,r,n,i){for(var a=[],o=0,s=t.length;o<s;++o)D5e(t,String(o))?a.push(tj(e,t,r,n,String(o),!0)):a.push("");return i.forEach(function(l){l.match(/^\d+$/)||a.push(tj(e,t,r,n,l,!0))}),a}function tj(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")),D5e(n,i)||(o="["+i+"]"),s||(e.seen.indexOf(l.value)<0?(mR(r)?s=pR(e,l.value,null):s=pR(e,l.value,r-1),s.indexOf(`
`)>-1&&(a?s=s.split(`
`).map(function(u){return" "+u}).join(`
`).slice(2):s=`
`+s.split(`
`).map(function(u){return" "+u}).join(`
`))):s=e.stylize("[Circular]","special")),v2(o)){if(a&&i.match(/^\d+$/))return s;o=JSON.stringify(""+i),o.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(o=o.slice(1,-1),o=e.stylize(o,"name")):(o=o.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),o=e.stylize(o,"string"))}return o+": "+s}function P5t(e,t,r){var n=0,i=e.reduce(function(a,o){return n++,o.indexOf(`
`)>=0&&n++,a+o.replace(/\u001b\[\d\d?m/g,"").length+1},0);return i>60?r[0]+(t===""?"":t+`
`)+" "+e.join(`,
`)+" "+r[1]:r[0]+t+" "+e.join(", ")+" "+r[1]}cu.types=JH();function I5e(e){return Array.isArray(e)}cu.isArray=I5e;function rj(e){return typeof e=="boolean"}cu.isBoolean=rj;function mR(e){return e===null}cu.isNull=mR;function I5t(e){return e==null}cu.isNullOrUndefined=I5t;function R5e(e){return typeof e=="number"}cu.isNumber=R5e;function yR(e){return typeof e=="string"}cu.isString=yR;function R5t(e){return typeof e=="symbol"}cu.isSymbol=R5t;function v2(e){return e===void 0}cu.isUndefined=v2;function K4(e){return fA(e)&&ij(e)==="[object RegExp]"}cu.isRegExp=K4;cu.types.isRegExp=K4;function fA(e){return typeof e=="object"&&e!==null}cu.isObject=fA;function gR(e){return fA(e)&&ij(e)==="[object Date]"}cu.isDate=gR;cu.types.isDate=gR;function J4(e){return fA(e)&&(ij(e)==="[object Error]"||e instanceof Error)}cu.isError=J4;cu.types.isNativeError=J4;function vR(e){return typeof e=="function"}cu.isFunction=vR;function D5t(e){return e===null||typeof e=="boolean"||typeof e=="number"||typeof e=="string"||typeof e=="symbol"||typeof e=="undefined"}cu.isPrimitive=D5t;cu.isBuffer=$H();function ij(e){return Object.prototype.toString.call(e)}function ej(e){return e<10?"0"+e.toString(10):e.toString(10)}var F5t=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function z5t(){var e=new Date,t=[ej(e.getHours()),ej(e.getMinutes()),ej(e.getSeconds())].join(":");return[e.getDate(),F5t[e.getMonth()],t].join(" ")}cu.log=function(){console.log("%s - %s",z5t(),cu.format.apply(cu,arguments))};cu.inherits=Uy();cu._extend=function(e,t){if(!t||!fA(t))return e;for(var r=Object.keys(t),n=r.length;n--;)e[r[n]]=t[r[n]];return e};function D5e(e,t){return Object.prototype.hasOwnProperty.call(e,t)}var d2=typeof Symbol!="undefined"?Symbol("util.promisify.custom"):void 0;cu.promisify=function(t){if(typeof t!="function")throw new TypeError('The "original" argument must be of type Function');if(d2&&t[d2]){var r=t[d2];if(typeof r!="function")throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(r,d2,{value:r,enumerable:!1,writable:!1,configurable:!0}),r}function r(){for(var n,i,a=new Promise(function(l,u){n=l,i=u}),o=[],s=0;s<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)),d2&&Object.defineProperty(r,d2,{value:r,enumerable:!1,writable:!1,configurable:!0}),Object.defineProperties(r,L5e(t))};cu.promisify.custom=d2;function O5t(e,t){if(!e){var r=new Error("Promise was rejected with a falsy value");r.reason=e,e=r}return t(e)}function q5t(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(O5t.bind(null,s,o))})}return Object.setPrototypeOf(t,Object.getPrototypeOf(e)),Object.defineProperties(t,L5e(e)),t}cu.callbackify=q5t});var q5e=ye((zhr,O5e)=>{"use strict";function F5e(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function B5t(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?F5e(Object(r),!0).forEach(function(n){N5t(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):F5e(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function N5t(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function U5t(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function z5e(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 V5t(e,t,r){return t&&z5e(e.prototype,t),r&&z5e(e,r),e}var G5t=c2(),_R=G5t.Buffer,H5t=nj(),aj=H5t.inspect,j5t=aj&&aj.custom||"inspect";function W5t(e,t,r){_R.prototype.copy.call(e,t,r)}O5e.exports=function(){function e(){U5t(this,e),this.head=null,this.tail=null,this.length=0}return V5t(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 _R.alloc(0);for(var n=_R.allocUnsafe(r>>>0),i=this.head,a=0;i;)W5t(i.data,n,a),a+=i.data.length,i=i.next;return n}},{key:"consume",value:function(r,n){var i;return 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=_R.allocUnsafe(r),i=this.head,a=1;for(i.data.copy(n),r-=i.data.length;i=i.next;){var o=i.data,s=r>o.length?o.length:r;if(o.copy(n,n.length-r,0,s),r-=s,r===0){s===o.length?(++a,i.next?this.head=i.next:this.head=this.tail=null):(this.head=i,i.data=o.slice(s));break}++a}return this.length-=a,n}},{key:j5t,value:function(r,n){return aj(this,B5t({},n,{depth:0,customInspect:!1}))}}]),e}()});var sj=ye((Ohr,N5e)=>{"use strict";function X5t(e,t){var r=this,n=this._readableState&&this._readableState.destroyed,i=this._writableState&&this._writableState.destroyed;return n||i?(t?t(e):e&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,process.nextTick(oj,this,e)):process.nextTick(oj,this,e)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,function(a){!t&&a?r._writableState?r._writableState.errorEmitted?process.nextTick(xR,r):(r._writableState.errorEmitted=!0,process.nextTick(B5e,r,a)):process.nextTick(B5e,r,a):t?(process.nextTick(xR,r),t(a)):process.nextTick(xR,r)}),this)}function B5e(e,t){oj(e,t),xR(e)}function xR(e){e._writableState&&!e._writableState.emitClose||e._readableState&&!e._readableState.emitClose||e.emit("close")}function Z5t(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}function oj(e,t){e.emit("error",t)}function Y5t(e,t){var r=e._readableState,n=e._writableState;r&&r.autoDestroy||n&&n.autoDestroy?e.destroy(t):e.emit("error",t)}N5e.exports={destroy:X5t,undestroy:Z5t,errorOrDestroy:Y5t}});var p2=ye((qhr,G5e)=>{"use strict";function K5t(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,e.__proto__=t}var V5e={};function Y0(e,t,r){r||(r=Error);function n(a,o,s){return typeof t=="string"?t:t(a,o,s)}var i=function(a){K5t(o,a);function o(s,l,u){return a.call(this,n(s,l,u))||this}return o}(r);i.prototype.name=r.name,i.prototype.code=e,V5e[e]=i}function U5e(e,t){if(Array.isArray(e)){var r=e.length;return e=e.map(function(n){return String(n)}),r>2?"one of ".concat(t," ").concat(e.slice(0,r-1).join(", "),", or ")+e[r-1]:r===2?"one of ".concat(t," ").concat(e[0]," or ").concat(e[1]):"of ".concat(t," ").concat(e[0])}else return"of ".concat(t," ").concat(String(e))}function J5t(e,t,r){return e.substr(!r||r<0?0:+r,t.length)===t}function $5t(e,t,r){return(r===void 0||r>e.length)&&(r=e.length),e.substring(r-t.length,r)===t}function Q5t(e,t,r){return typeof r!="number"&&(r=0),r+t.length>e.length?!1:e.indexOf(t,r)!==-1}Y0("ERR_INVALID_OPT_VALUE",function(e,t){return'The value "'+t+'" is invalid for option "'+e+'"'},TypeError);Y0("ERR_INVALID_ARG_TYPE",function(e,t,r){var n;typeof t=="string"&&J5t(t,"not ")?(n="must not be",t=t.replace(/^not /,"")):n="must be";var i;if($5t(e," argument"))i="The ".concat(e," ").concat(n," ").concat(U5e(t,"type"));else{var a=Q5t(e,".")?"property":"argument";i='The "'.concat(e,'" ').concat(a," ").concat(n," ").concat(U5e(t,"type"))}return i+=". Received type ".concat(typeof r),i},TypeError);Y0("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF");Y0("ERR_METHOD_NOT_IMPLEMENTED",function(e){return"The "+e+" method is not implemented"});Y0("ERR_STREAM_PREMATURE_CLOSE","Premature close");Y0("ERR_STREAM_DESTROYED",function(e){return"Cannot call "+e+" after a stream was destroyed"});Y0("ERR_MULTIPLE_CALLBACK","Callback called multiple times");Y0("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable");Y0("ERR_STREAM_WRITE_AFTER_END","write after end");Y0("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError);Y0("ERR_UNKNOWN_ENCODING",function(e){return"Unknown encoding: "+e},TypeError);Y0("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event");G5e.exports.codes=V5e});var lj=ye((Bhr,H5e)=>{"use strict";var eSt=p2().codes.ERR_INVALID_OPT_VALUE;function tSt(e,t,r){return e.highWaterMark!=null?e.highWaterMark:t?e[r]:null}function rSt(e,t,r,n){var i=tSt(t,n,r);if(i!=null){if(!(isFinite(i)&&Math.floor(i)===i)||i<0){var a=n?r:"highWaterMark";throw new eSt(a,i)}return Math.floor(i)}return e.objectMode?16:16*1024}H5e.exports={getHighWaterMark:rSt}});var W5e=ye((Nhr,j5e)=>{j5e.exports=iSt;function iSt(e,t){if(uj("noDeprecation"))return e;var r=!1;function n(){if(!r){if(uj("throwDeprecation"))throw new Error(t);uj("traceDeprecation")?console.trace(t):console.warn(t),r=!0}return e.apply(this,arguments)}return n}function uj(e){try{if(!window.localStorage)return!1}catch(r){return!1}var t=window.localStorage[e];return t==null?!1:String(t).toLowerCase()==="true"}});var hj=ye((Uhr,$5e)=>{"use strict";$5e.exports=zh;function Z5e(e){var t=this;this.next=null,this.entry=null,this.finish=function(){LSt(t,e)}}var hA;zh.WritableState=Q4;var nSt={deprecate:W5e()},Y5e=fH(),wR=c2().Buffer,aSt=window.Uint8Array||function(){};function oSt(e){return wR.from(e)}function sSt(e){return wR.isBuffer(e)||e instanceof aSt}var fj=sj(),lSt=lj(),uSt=lSt.getHighWaterMark,R_=p2().codes,cSt=R_.ERR_INVALID_ARG_TYPE,fSt=R_.ERR_METHOD_NOT_IMPLEMENTED,hSt=R_.ERR_MULTIPLE_CALLBACK,dSt=R_.ERR_STREAM_CANNOT_PIPE,vSt=R_.ERR_STREAM_DESTROYED,pSt=R_.ERR_STREAM_NULL_VALUES,gSt=R_.ERR_STREAM_WRITE_AFTER_END,mSt=R_.ERR_UNKNOWN_ENCODING,dA=fj.errorOrDestroy;Uy()(zh,Y5e);function ySt(){}function Q4(e,t,r){hA=hA||g2(),e=e||{},typeof r!="boolean"&&(r=t instanceof hA),this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.writableObjectMode),this.highWaterMark=uSt(this,e,"writableHighWaterMark",r),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var n=e.decodeStrings===!1;this.decodeStrings=!n,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(i){SSt(t,i)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=e.emitClose!==!1,this.autoDestroy=!!e.autoDestroy,this.bufferedRequestCount=0,this.corkedRequestsFree=new Z5e(this)}Q4.prototype.getBuffer=function(){for(var t=this.bufferedRequest,r=[];t;)r.push(t),t=t.next;return r};(function(){try{Object.defineProperty(Q4.prototype,"buffer",{get:nSt.deprecate(function(){return this.getBuffer()},"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(e){}})();var bR;typeof Symbol=="function"&&Symbol.hasInstance&&typeof Function.prototype[Symbol.hasInstance]=="function"?(bR=Function.prototype[Symbol.hasInstance],Object.defineProperty(zh,Symbol.hasInstance,{value:function(t){return bR.call(this,t)?!0:this!==zh?!1:t&&t._writableState instanceof Q4}})):bR=function(t){return t instanceof this};function zh(e){hA=hA||g2();var t=this instanceof hA;if(!t&&!bR.call(zh,this))return new zh(e);this._writableState=new Q4(e,this,t),this.writable=!0,e&&(typeof e.write=="function"&&(this._write=e.write),typeof e.writev=="function"&&(this._writev=e.writev),typeof e.destroy=="function"&&(this._destroy=e.destroy),typeof e.final=="function"&&(this._final=e.final)),Y5e.call(this)}zh.prototype.pipe=function(){dA(this,new dSt)};function _St(e,t){var r=new gSt;dA(e,r),process.nextTick(t,r)}function xSt(e,t,r,n){var i;return r===null?i=new pSt:typeof r!="string"&&!t.objectMode&&(i=new cSt("chunk",["string","Buffer"],r)),i?(dA(e,i),process.nextTick(n,i),!1):!0}zh.prototype.write=function(e,t,r){var n=this._writableState,i=!1,a=!n.objectMode&&sSt(e);return a&&!wR.isBuffer(e)&&(e=oSt(e)),typeof t=="function"&&(r=t,t=null),a?t="buffer":t||(t=n.defaultEncoding),typeof r!="function"&&(r=ySt),n.ending?_St(this,r):(a||xSt(this,n,e,r))&&(n.pendingcb++,i=wSt(this,n,a,e,t,r)),i};zh.prototype.cork=function(){this._writableState.corked++};zh.prototype.uncork=function(){var e=this._writableState;e.corked&&(e.corked--,!e.writing&&!e.corked&&!e.bufferProcessing&&e.bufferedRequest&&K5e(this,e))};zh.prototype.setDefaultEncoding=function(t){if(typeof t=="string"&&(t=t.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((t+"").toLowerCase())>-1))throw new mSt(t);return this._writableState.defaultEncoding=t,this};Object.defineProperty(zh.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}});function bSt(e,t,r){return!e.objectMode&&e.decodeStrings!==!1&&typeof t=="string"&&(t=wR.from(t,r)),t}Object.defineProperty(zh.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}});function wSt(e,t,r,n,i,a){if(!r){var o=bSt(t,n,i);n!==o&&(r=!0,i="buffer",n=o)}var s=t.objectMode?1:n.length;t.length+=s;var l=t.length<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 cj(e,t,!1,s,n,i,a);return l}function cj(e,t,r,n,i,a,o){t.writelen=n,t.writecb=o,t.writing=!0,t.sync=!0,t.destroyed?t.onwrite(new vSt("write")):r?e._writev(i,t.onwrite):e._write(i,a,t.onwrite),t.sync=!1}function TSt(e,t,r,n,i){--t.pendingcb,r?(process.nextTick(i,n),process.nextTick($4,e,t),e._writableState.errorEmitted=!0,dA(e,n)):(i(n),e._writableState.errorEmitted=!0,dA(e,n),$4(e,t))}function ASt(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}function SSt(e,t){var r=e._writableState,n=r.sync,i=r.writecb;if(typeof i!="function")throw new hSt;if(ASt(r),t)TSt(e,r,n,t,i);else{var a=J5e(r)||e.destroyed;!a&&!r.corked&&!r.bufferProcessing&&r.bufferedRequest&&K5e(e,r),n?process.nextTick(X5e,e,r,a,i):X5e(e,r,a,i)}}function X5e(e,t,r,n){r||MSt(e,t),t.pendingcb--,n(),$4(e,t)}function MSt(e,t){t.length===0&&t.needDrain&&(t.needDrain=!1,e.emit("drain"))}function K5e(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,cj(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 Z5e(t),t.bufferedRequestCount=0}else{for(;r;){var l=r.chunk,u=r.encoding,c=r.callback,f=t.objectMode?1:l.length;if(cj(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}zh.prototype._write=function(e,t,r){r(new fSt("_write()"))};zh.prototype._writev=null;zh.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||CSt(this,n,r),this};Object.defineProperty(zh.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}});function J5e(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&&dA(e,r),t.prefinished=!0,e.emit("prefinish"),$4(e,t)})}function kSt(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 $4(e,t){var r=J5e(t);if(r&&(kSt(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 CSt(e,t,r){t.ending=!0,$4(e,t),r&&(t.finished?process.nextTick(r):e.once("finish",r)),t.ended=!0,e.writable=!1}function LSt(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(zh.prototype,"destroyed",{enumerable:!1,get:function(){return this._writableState===void 0?!1:this._writableState.destroyed},set:function(t){this._writableState&&(this._writableState.destroyed=t)}});zh.prototype.destroy=fj.destroy;zh.prototype._undestroy=fj.undestroy;zh.prototype._destroy=function(e,t){t(e)}});var g2=ye((Vhr,eSe)=>{"use strict";var PSt=Object.keys||function(e){var t=[];for(var r in e)t.push(r);return t};eSe.exports=Bm;var Q5e=pj(),vj=hj();Uy()(Bm,Q5e);for(dj=PSt(vj.prototype),TR=0;TR<dj.length;TR++)AR=dj[TR],Bm.prototype[AR]||(Bm.prototype[AR]=vj.prototype[AR]);var dj,AR,TR;function Bm(e){if(!(this instanceof Bm))return new Bm(e);Q5e.call(this,e),vj.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",ISt)))}Object.defineProperty(Bm.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}});Object.defineProperty(Bm.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}});Object.defineProperty(Bm.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}});function ISt(){this._writableState.ended||process.nextTick(RSt,this)}function RSt(e){e.end()}Object.defineProperty(Bm.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 iSe=ye((gj,rSe)=>{var SR=c2(),Nm=SR.Buffer;function tSe(e,t){for(var r in e)t[r]=e[r]}Nm.from&&Nm.alloc&&Nm.allocUnsafe&&Nm.allocUnsafeSlow?rSe.exports=SR:(tSe(SR,gj),gj.Buffer=m2);function m2(e,t,r){return Nm(e,t,r)}m2.prototype=Object.create(Nm.prototype);tSe(Nm,m2);m2.from=function(e,t,r){if(typeof e=="number")throw new TypeError("Argument must not be a number");return Nm(e,t,r)};m2.alloc=function(e,t,r){if(typeof e!="number")throw new TypeError("Argument must be a number");var n=Nm(e);return t!==void 0?typeof r=="string"?n.fill(t,r):n.fill(t):n.fill(0),n};m2.allocUnsafe=function(e){if(typeof e!="number")throw new TypeError("Argument must be a number");return Nm(e)};m2.allocUnsafeSlow=function(e){if(typeof e!="number")throw new TypeError("Argument must be a number");return SR.SlowBuffer(e)}});var _j=ye(aSe=>{"use strict";var yj=iSe().Buffer,nSe=yj.isEncoding||function(e){switch(e=""+e,e&&e.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function DSt(e){if(!e)return"utf8";for(var t;;)switch(e){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return e;default:if(t)return;e=(""+e).toLowerCase(),t=!0}}function FSt(e){var t=DSt(e);if(typeof t!="string"&&(yj.isEncoding===nSe||!nSe(e)))throw new Error("Unknown encoding: "+e);return t||e}aSe.StringDecoder=eE;function eE(e){this.encoding=FSt(e);var t;switch(this.encoding){case"utf16le":this.text=USt,this.end=VSt,t=4;break;case"utf8":this.fillLast=qSt,t=4;break;case"base64":this.text=GSt,this.end=HSt,t=3;break;default:this.write=jSt,this.end=WSt;return}this.lastNeed=0,this.lastTotal=0,this.lastChar=yj.allocUnsafe(t)}eE.prototype.write=function(e){if(e.length===0)return"";var t,r;if(this.lastNeed){if(t=this.fillLast(e),t===void 0)return"";r=this.lastNeed,this.lastNeed=0}else r=0;return r<e.length?t?t+this.text(e,r):this.text(e,r):t||""};eE.prototype.end=NSt;eE.prototype.text=BSt;eE.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 mj(e){return e<=127?0:e>>5===6?2:e>>4===14?3:e>>3===30?4:e>>6===2?-1:-2}function zSt(e,t,r){var n=t.length-1;if(n<r)return 0;var i=mj(t[n]);return i>=0?(i>0&&(e.lastNeed=i-1),i):--n<r||i===-2?0:(i=mj(t[n]),i>=0?(i>0&&(e.lastNeed=i-2),i):--n<r||i===-2?0:(i=mj(t[n]),i>=0?(i>0&&(i===2?i=0:e.lastNeed=i-3),i):0))}function OSt(e,t,r){if((t[0]&192)!==128)return e.lastNeed=0,"\uFFFD";if(e.lastNeed>1&&t.length>1){if((t[1]&192)!==128)return e.lastNeed=1,"\uFFFD";if(e.lastNeed>2&&t.length>2&&(t[2]&192)!==128)return e.lastNeed=2,"\uFFFD"}}function qSt(e){var t=this.lastTotal-this.lastNeed,r=OSt(this,e,t);if(r!==void 0)return r;if(this.lastNeed<=e.length)return e.copy(this.lastChar,t,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);e.copy(this.lastChar,t,0,e.length),this.lastNeed-=e.length}function BSt(e,t){var r=zSt(this,e,t);if(!this.lastNeed)return e.toString("utf8",t);this.lastTotal=r;var n=e.length-(r-this.lastNeed);return e.copy(this.lastChar,0,n),e.toString("utf8",t,n)}function NSt(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+"\uFFFD":t}function USt(e,t){if((e.length-t)%2===0){var r=e.toString("utf16le",t);if(r){var n=r.charCodeAt(r.length-1);if(n>=55296&&n<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],r.slice(0,-1)}return r}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString("utf16le",t,e.length-1)}function VSt(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed){var r=this.lastTotal-this.lastNeed;return t+this.lastChar.toString("utf16le",0,r)}return t}function GSt(e,t){var r=(e.length-t)%3;return r===0?e.toString("base64",t):(this.lastNeed=3-r,this.lastTotal=3,r===1?this.lastChar[0]=e[e.length-1]:(this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1]),e.toString("base64",t,e.length-r))}function HSt(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+this.lastChar.toString("base64",0,3-this.lastNeed):t}function jSt(e){return e.toString(this.encoding)}function WSt(e){return e&&e.length?this.write(e):""}});var MR=ye((Hhr,lSe)=>{"use strict";var oSe=p2().codes.ERR_STREAM_PREMATURE_CLOSE;function XSt(e){var t=!1;return function(){if(!t){t=!0;for(var r=arguments.length,n=new Array(r),i=0;i<r;i++)n[i]=arguments[i];e.apply(this,n)}}}function ZSt(){}function YSt(e){return e.setHeader&&typeof e.abort=="function"}function sSe(e,t,r){if(typeof t=="function")return sSe(e,null,t);t||(t={}),r=XSt(r||ZSt);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 oSe),r.call(e,v);if(i&&!o)return(!e._writableState||!e._writableState.ended)&&(v=new oSe),r.call(e,v)},h=function(){e.req.on("finish",s)};return YSt(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)}}lSe.exports=sSe});var cSe=ye((jhr,uSe)=>{"use strict";var ER;function D_(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var KSt=MR(),F_=Symbol("lastResolve"),y2=Symbol("lastReject"),tE=Symbol("error"),kR=Symbol("ended"),_2=Symbol("lastPromise"),xj=Symbol("handlePromise"),x2=Symbol("stream");function z_(e,t){return{value:e,done:t}}function JSt(e){var t=e[F_];if(t!==null){var r=e[x2].read();r!==null&&(e[_2]=null,e[F_]=null,e[y2]=null,t(z_(r,!1)))}}function $St(e){process.nextTick(JSt,e)}function QSt(e,t){return function(r,n){e.then(function(){if(t[kR]){r(z_(void 0,!0));return}t[xj](r,n)},n)}}var eMt=Object.getPrototypeOf(function(){}),tMt=Object.setPrototypeOf((ER={get stream(){return this[x2]},next:function(){var t=this,r=this[tE];if(r!==null)return Promise.reject(r);if(this[kR])return Promise.resolve(z_(void 0,!0));if(this[x2].destroyed)return new Promise(function(o,s){process.nextTick(function(){t[tE]?s(t[tE]):o(z_(void 0,!0))})});var n=this[_2],i;if(n)i=new Promise(QSt(n,this));else{var a=this[x2].read();if(a!==null)return Promise.resolve(z_(a,!1));i=new Promise(this[xj])}return this[_2]=i,i}},D_(ER,Symbol.asyncIterator,function(){return this}),D_(ER,"return",function(){var t=this;return new Promise(function(r,n){t[x2].destroy(null,function(i){if(i){n(i);return}r(z_(void 0,!0))})})}),ER),eMt),rMt=function(t){var r,n=Object.create(tMt,(r={},D_(r,x2,{value:t,writable:!0}),D_(r,F_,{value:null,writable:!0}),D_(r,y2,{value:null,writable:!0}),D_(r,tE,{value:null,writable:!0}),D_(r,kR,{value:t._readableState.endEmitted,writable:!0}),D_(r,xj,{value:function(a,o){var s=n[x2].read();s?(n[_2]=null,n[F_]=null,n[y2]=null,a(z_(s,!1))):(n[F_]=a,n[y2]=o)},writable:!0}),r));return n[_2]=null,KSt(t,function(i){if(i&&i.code!=="ERR_STREAM_PREMATURE_CLOSE"){var a=n[y2];a!==null&&(n[_2]=null,n[F_]=null,n[y2]=null,a(i)),n[tE]=i;return}var o=n[F_];o!==null&&(n[_2]=null,n[F_]=null,n[y2]=null,o(z_(void 0,!0))),n[kR]=!0}),t.on("readable",$St.bind(null,n)),n};uSe.exports=rMt});var hSe=ye((Whr,fSe)=>{fSe.exports=function(){throw new Error("Readable.from is not available in the browser")}});var pj=ye((Zhr,wSe)=>{"use strict";wSe.exports=Bu;var vA;Bu.ReadableState=gSe;var Xhr=pb().EventEmitter,pSe=function(t,r){return t.listeners(r).length},iE=fH(),CR=c2().Buffer,iMt=window.Uint8Array||function(){};function nMt(e){return CR.from(e)}function aMt(e){return CR.isBuffer(e)||e instanceof iMt}var bj=nj(),nu;bj&&bj.debuglog?nu=bj.debuglog("stream"):nu=function(){};var oMt=q5e(),kj=sj(),sMt=lj(),lMt=sMt.getHighWaterMark,LR=p2().codes,uMt=LR.ERR_INVALID_ARG_TYPE,cMt=LR.ERR_STREAM_PUSH_AFTER_EOF,fMt=LR.ERR_METHOD_NOT_IMPLEMENTED,hMt=LR.ERR_STREAM_UNSHIFT_AFTER_END_EVENT,pA,wj,Tj;Uy()(Bu,iE);var rE=kj.errorOrDestroy,Aj=["error","close","destroy","pause","resume"];function dMt(e,t,r){if(typeof e.prependListener=="function")return e.prependListener(t,r);!e._events||!e._events[t]?e.on(t,r):Array.isArray(e._events[t])?e._events[t].unshift(r):e._events[t]=[r,e._events[t]]}function gSe(e,t,r){vA=vA||g2(),e=e||{},typeof r!="boolean"&&(r=t instanceof vA),this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.readableObjectMode),this.highWaterMark=lMt(this,e,"readableHighWaterMark",r),this.buffer=new oMt,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.paused=!0,this.emitClose=e.emitClose!==!1,this.autoDestroy=!!e.autoDestroy,this.destroyed=!1,this.defaultEncoding=e.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,e.encoding&&(pA||(pA=_j().StringDecoder),this.decoder=new pA(e.encoding),this.encoding=e.encoding)}function Bu(e){if(vA=vA||g2(),!(this instanceof Bu))return new Bu(e);var t=this instanceof vA;this._readableState=new gSe(e,this,t),this.readable=!0,e&&(typeof e.read=="function"&&(this._read=e.read),typeof e.destroy=="function"&&(this._destroy=e.destroy)),iE.call(this)}Object.defineProperty(Bu.prototype,"destroyed",{enumerable:!1,get:function(){return this._readableState===void 0?!1:this._readableState.destroyed},set:function(t){this._readableState&&(this._readableState.destroyed=t)}});Bu.prototype.destroy=kj.destroy;Bu.prototype._undestroy=kj.undestroy;Bu.prototype._destroy=function(e,t){t(e)};Bu.prototype.push=function(e,t){var r=this._readableState,n;return r.objectMode?n=!0:typeof e=="string"&&(t=t||r.defaultEncoding,t!==r.encoding&&(e=CR.from(e,t),t=""),n=!0),mSe(this,e,t,!1,n)};Bu.prototype.unshift=function(e){return mSe(this,e,null,!0,!1)};function mSe(e,t,r,n,i){nu("readableAddChunk",t);var a=e._readableState;if(t===null)a.reading=!1,gMt(e,a);else{var o;if(i||(o=vMt(a,t)),o)rE(e,o);else if(a.objectMode||t&&t.length>0)if(typeof t!="string"&&!a.objectMode&&Object.getPrototypeOf(t)!==CR.prototype&&(t=nMt(t)),n)a.endEmitted?rE(e,new hMt):Sj(e,a,t,!0);else if(a.ended)rE(e,new cMt);else{if(a.destroyed)return!1;a.reading=!1,a.decoder&&!r?(t=a.decoder.write(t),a.objectMode||t.length!==0?Sj(e,a,t,!1):Ej(e,a)):Sj(e,a,t,!1)}else n||(a.reading=!1,Ej(e,a))}return!a.ended&&(a.length<a.highWaterMark||a.length===0)}function Sj(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&&PR(e)),Ej(e,t)}function vMt(e,t){var r;return!aMt(t)&&typeof t!="string"&&t!==void 0&&!e.objectMode&&(r=new uMt("chunk",["string","Buffer","Uint8Array"],t)),r}Bu.prototype.isPaused=function(){return this._readableState.flowing===!1};Bu.prototype.setEncoding=function(e){pA||(pA=_j().StringDecoder);var t=new pA(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 dSe=1073741824;function pMt(e){return e>=dSe?e=dSe:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}function vSe(e,t){return e<=0||t.length===0&&t.ended?0:t.objectMode?1:e!==e?t.flowing&&t.length?t.buffer.head.data.length:t.length:(e>t.highWaterMark&&(t.highWaterMark=pMt(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}Bu.prototype.read=function(e){nu("read",e),e=parseInt(e,10);var t=this._readableState,r=e;if(e!==0&&(t.emittedReadable=!1),e===0&&t.needReadable&&((t.highWaterMark!==0?t.length>=t.highWaterMark:t.length>0)||t.ended))return nu("read: emitReadable",t.length,t.ended),t.length===0&&t.ended?Mj(this):PR(this),null;if(e=vSe(e,t),e===0&&t.ended)return t.length===0&&Mj(this),null;var n=t.needReadable;nu("need readable",n),(t.length===0||t.length-e<t.highWaterMark)&&(n=!0,nu("length less than watermark",n)),t.ended||t.reading?(n=!1,nu("reading or ended",n)):n&&(nu("do read"),t.reading=!0,t.sync=!0,t.length===0&&(t.needReadable=!0),this._read(t.highWaterMark),t.sync=!1,t.reading||(e=vSe(r,t)));var i;return e>0?i=xSe(e,t):i=null,i===null?(t.needReadable=t.length<=t.highWaterMark,e=0):(t.length-=e,t.awaitDrain=0),t.length===0&&(t.ended||(t.needReadable=!0),r!==e&&t.ended&&Mj(this)),i!==null&&this.emit("data",i),i};function gMt(e,t){if(nu("onEofChunk"),!t.ended){if(t.decoder){var r=t.decoder.end();r&&r.length&&(t.buffer.push(r),t.length+=t.objectMode?1:r.length)}t.ended=!0,t.sync?PR(e):(t.needReadable=!1,t.emittedReadable||(t.emittedReadable=!0,ySe(e)))}}function PR(e){var t=e._readableState;nu("emitReadable",t.needReadable,t.emittedReadable),t.needReadable=!1,t.emittedReadable||(nu("emitReadable",t.flowing),t.emittedReadable=!0,process.nextTick(ySe,e))}function ySe(e){var t=e._readableState;nu("emitReadable_",t.destroyed,t.length,t.ended),!t.destroyed&&(t.length||t.ended)&&(e.emit("readable"),t.emittedReadable=!1),t.needReadable=!t.flowing&&!t.ended&&t.length<=t.highWaterMark,Cj(e)}function Ej(e,t){t.readingMore||(t.readingMore=!0,process.nextTick(mMt,e,t))}function mMt(e,t){for(;!t.reading&&!t.ended&&(t.length<t.highWaterMark||t.flowing&&t.length===0);){var r=t.length;if(nu("maybeReadMore read 0"),e.read(0),r===t.length)break}t.readingMore=!1}Bu.prototype._read=function(e){rE(this,new fMt("_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,nu("pipe count=%d opts=%j",n.pipesCount,t);var i=(!t||t.end!==!1)&&e!==process.stdout&&e!==process.stderr,a=i?s:_;n.endEmitted?process.nextTick(a):r.once("end",a),e.on("unpipe",o);function o(b,p){nu("onunpipe"),b===r&&p&&p.hasUnpiped===!1&&(p.hasUnpiped=!0,c())}function s(){nu("onend"),e.end()}var l=yMt(r);e.on("drain",l);var u=!1;function c(){nu("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",_),r.removeListener("data",f),u=!0,n.awaitDrain&&(!e._writableState||e._writableState.needDrain)&&l()}r.on("data",f);function f(b){nu("ondata");var p=e.write(b);nu("dest.write",p),p===!1&&((n.pipesCount===1&&n.pipes===e||n.pipesCount>1&&bSe(n.pipes,e)!==-1)&&!u&&(nu("false write response, pause",n.awaitDrain),n.awaitDrain++),r.pause())}function h(b){nu("onerror",b),_(),e.removeListener("error",h),pSe(e,"error")===0&&rE(e,b)}dMt(e,"error",h);function d(){e.removeListener("finish",v),_()}e.once("close",d);function v(){nu("onfinish"),e.removeListener("close",d),_()}e.once("finish",v);function _(){nu("unpipe"),r.unpipe(e)}return e.emit("pipe",r),n.flowing||(nu("pipe resume"),r.resume()),e};function yMt(e){return function(){var r=e._readableState;nu("pipeOnDrain",r.awaitDrain),r.awaitDrain&&r.awaitDrain--,r.awaitDrain===0&&pSe(e,"data")&&(r.flowing=!0,Cj(e))}}Bu.prototype.unpipe=function(e){var t=this._readableState,r={hasUnpiped:!1};if(t.pipesCount===0)return this;if(t.pipesCount===1)return e&&e!==t.pipes?this:(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,r),this);if(!e){var n=t.pipes,i=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var a=0;a<i;a++)n[a].emit("unpipe",this,{hasUnpiped:!1});return this}var o=bSe(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=iE.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,nu("on readable",n.length,n.reading),n.length?PR(this):n.reading||process.nextTick(_Mt,this)),r};Bu.prototype.addListener=Bu.prototype.on;Bu.prototype.removeListener=function(e,t){var r=iE.prototype.removeListener.call(this,e,t);return e==="readable"&&process.nextTick(_Se,this),r};Bu.prototype.removeAllListeners=function(e){var t=iE.prototype.removeAllListeners.apply(this,arguments);return(e==="readable"||e===void 0)&&process.nextTick(_Se,this),t};function _Se(e){var t=e._readableState;t.readableListening=e.listenerCount("readable")>0,t.resumeScheduled&&!t.paused?t.flowing=!0:e.listenerCount("data")>0&&e.resume()}function _Mt(e){nu("readable nexttick read 0"),e.read(0)}Bu.prototype.resume=function(){var e=this._readableState;return e.flowing||(nu("resume"),e.flowing=!e.readableListening,xMt(this,e)),e.paused=!1,this};function xMt(e,t){t.resumeScheduled||(t.resumeScheduled=!0,process.nextTick(bMt,e,t))}function bMt(e,t){nu("resume",t.reading),t.reading||e.read(0),t.resumeScheduled=!1,e.emit("resume"),Cj(e),t.flowing&&!t.reading&&e.read(0)}Bu.prototype.pause=function(){return nu("call pause flowing=%j",this._readableState.flowing),this._readableState.flowing!==!1&&(nu("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this};function Cj(e){var t=e._readableState;for(nu("flow",t.flowing);t.flowing&&e.read()!==null;);}Bu.prototype.wrap=function(e){var t=this,r=this._readableState,n=!1;e.on("end",function(){if(nu("wrapped end"),r.decoder&&!r.ended){var o=r.decoder.end();o&&o.length&&t.push(o)}t.push(null)}),e.on("data",function(o){if(nu("wrapped data"),r.decoder&&(o=r.decoder.write(o)),!(r.objectMode&&o==null)&&!(!r.objectMode&&(!o||!o.length))){var s=t.push(o);s||(n=!0,e.pause())}});for(var i in e)this[i]===void 0&&typeof e[i]=="function"&&(this[i]=function(s){return function(){return e[s].apply(e,arguments)}}(i));for(var a=0;a<Aj.length;a++)e.on(Aj[a],this.emit.bind(this,Aj[a]));return this._read=function(o){nu("wrapped _read",o),n&&(n=!1,e.resume())},this};typeof Symbol=="function"&&(Bu.prototype[Symbol.asyncIterator]=function(){return wj===void 0&&(wj=cSe()),wj(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=xSe;Object.defineProperty(Bu.prototype,"readableLength",{enumerable:!1,get:function(){return this._readableState.length}});function xSe(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 Mj(e){var t=e._readableState;nu("endReadable",t.endEmitted),t.endEmitted||(t.ended=!0,process.nextTick(wMt,t,e))}function wMt(e,t){if(nu("endReadableNT",e.endEmitted,e.length),!e.endEmitted&&e.length===0&&(e.endEmitted=!0,t.readable=!1,t.emit("end"),e.autoDestroy)){var r=t._writableState;(!r||r.autoDestroy&&r.finished)&&t.destroy()}}typeof Symbol=="function"&&(Bu.from=function(e,t){return Tj===void 0&&(Tj=hSe()),Tj(Bu,e,t)});function bSe(e,t){for(var r=0,n=e.length;r<n;r++)if(e[r]===t)return r;return-1}});var Lj=ye((Yhr,ASe)=>{"use strict";ASe.exports=Gy;var IR=p2().codes,TMt=IR.ERR_METHOD_NOT_IMPLEMENTED,AMt=IR.ERR_MULTIPLE_CALLBACK,SMt=IR.ERR_TRANSFORM_ALREADY_TRANSFORMING,MMt=IR.ERR_TRANSFORM_WITH_LENGTH_0,RR=g2();Uy()(Gy,RR);function EMt(e,t){var r=this._transformState;r.transforming=!1;var n=r.writecb;if(n===null)return this.emit("error",new AMt);r.writechunk=null,r.writecb=null,t!=null&&this.push(t),n(e);var i=this._readableState;i.reading=!1,(i.needReadable||i.length<i.highWaterMark)&&this._read(i.highWaterMark)}function Gy(e){if(!(this instanceof Gy))return new Gy(e);RR.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",kMt)}function kMt(){var e=this;typeof this._flush=="function"&&!this._readableState.destroyed?this._flush(function(t,r){TSe(e,t,r)}):TSe(this,null,null)}Gy.prototype.push=function(e,t){return this._transformState.needTransform=!1,RR.prototype.push.call(this,e,t)};Gy.prototype._transform=function(e,t,r){r(new TMt("_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){RR.prototype._destroy.call(this,e,function(r){t(r)})};function TSe(e,t,r){if(t)return e.emit("error",t);if(r!=null&&e.push(r),e._writableState.length)throw new MMt;if(e._transformState.transforming)throw new SMt;return e.push(null)}});var ESe=ye((Khr,MSe)=>{"use strict";MSe.exports=nE;var SSe=Lj();Uy()(nE,SSe);function nE(e){if(!(this instanceof nE))return new nE(e);SSe.call(this,e)}nE.prototype._transform=function(e,t,r){r(null,e)}});var ISe=ye((Jhr,PSe)=>{"use strict";var Pj;function CMt(e){var t=!1;return function(){t||(t=!0,e.apply(void 0,arguments))}}var LSe=p2().codes,LMt=LSe.ERR_MISSING_ARGS,PMt=LSe.ERR_STREAM_DESTROYED;function kSe(e){if(e)throw e}function IMt(e){return e.setHeader&&typeof e.abort=="function"}function RMt(e,t,r,n){n=CMt(n);var i=!1;e.on("close",function(){i=!0}),Pj===void 0&&(Pj=MR()),Pj(e,{readable:t,writable:r},function(o){if(o)return n(o);i=!0,n()});var a=!1;return function(o){if(!i&&!a){if(a=!0,IMt(e))return e.abort();if(typeof e.destroy=="function")return e.destroy();n(o||new PMt("pipe"))}}}function CSe(e){e()}function DMt(e,t){return e.pipe(t)}function FMt(e){return!e.length||typeof e[e.length-1]!="function"?kSe:e.pop()}function zMt(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];var n=FMt(t);if(Array.isArray(t[0])&&(t=t[0]),t.length<2)throw new LMt("streams");var i,a=t.map(function(o,s){var l=s<t.length-1,u=s>0;return RMt(o,l,u,function(c){i||(i=c),c&&a.forEach(CSe),!l&&(a.forEach(CSe),n(i))})});return t.reduce(DMt)}PSe.exports=zMt});var DSe=ye(($hr,RSe)=>{RSe.exports=K0;var Ij=pb().EventEmitter,OMt=Uy();OMt(K0,Ij);K0.Readable=pj();K0.Writable=hj();K0.Duplex=g2();K0.Transform=Lj();K0.PassThrough=ESe();K0.finished=MR();K0.pipeline=ISe();K0.Stream=K0;function K0(){Ij.call(this)}K0.prototype.pipe=function(e,t){var r=this;function n(c){e.writable&&e.write(c)===!1&&r.pause&&r.pause()}r.on("data",n);function i(){r.readable&&r.resume&&r.resume()}e.on("drain",i),!e._isStdio&&(!t||t.end!==!1)&&(r.on("end",o),r.on("close",s));var a=!1;function o(){a||(a=!0,e.end())}function s(){a||(a=!0,typeof e.destroy=="function"&&e.destroy())}function l(c){if(u(),Ij.listenerCount(this,"error")===0)throw c}r.on("error",l),e.on("error",l);function u(){r.removeListener("data",n),e.removeListener("drain",i),r.removeListener("end",o),r.removeListener("close",s),r.removeListener("error",l),e.removeListener("error",l),r.removeListener("end",u),r.removeListener("close",u),e.removeListener("close",u)}return r.on("end",u),r.on("close",u),e.on("close",u),e.emit("pipe",r),e}});var mA=ye(fu=>{var FSe=Object.getOwnPropertyDescriptors||function(t){for(var r=Object.keys(t),n={},i=0;i<r.length;i++)n[r[i]]=Object.getOwnPropertyDescriptor(t,r[i]);return n},qMt=/%[sdj%]/g;fu.format=function(e){if(!NR(e)){for(var t=[],r=0;r<arguments.length;r++)t.push(O_(arguments[r]));return t.join(" ")}for(var r=1,n=arguments,i=n.length,a=String(e).replace(qMt,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])BR(o)||!gA(o)?a+=" "+o:a+=" "+O_(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 DR={},zSe=/^$/;FR="false",FR=FR.replace(/[|\\{}()[\]^$+?.]/g,"\\$&").replace(/\*/g,".*").replace(/,/g,"$|^").toUpperCase(),zSe=new RegExp("^"+FR+"$","i");var FR;fu.debuglog=function(e){if(e=e.toUpperCase(),!DR[e])if(zSe.test(e)){var t=process.pid;DR[e]=function(){var r=fu.format.apply(fu,arguments);console.error("%s %d: %s",e,t,r)}}else DR[e]=function(){};return DR[e]};function O_(e,t){var r={seen:[],stylize:NMt};return arguments.length>=3&&(r.depth=arguments[2]),arguments.length>=4&&(r.colors=arguments[3]),zj(t)?r.showHidden=t:t&&fu._extend(r,t),w2(r.showHidden)&&(r.showHidden=!1),w2(r.depth)&&(r.depth=2),w2(r.colors)&&(r.colors=!1),w2(r.customInspect)&&(r.customInspect=!0),r.colors&&(r.stylize=BMt),OR(r,e,r.depth)}fu.inspect=O_;O_.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]};O_.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"};function BMt(e,t){var r=O_.styles[t];return r?"\x1B["+O_.colors[r][0]+"m"+e+"\x1B["+O_.colors[r][1]+"m":e}function NMt(e,t){return e}function UMt(e){var t={};return e.forEach(function(r,n){t[r]=!0}),t}function OR(e,t,r){if(e.customInspect&&t&&zR(t.inspect)&&t.inspect!==fu.inspect&&!(t.constructor&&t.constructor.prototype===t)){var n=t.inspect(r,e);return NR(n)||(n=OR(e,n,r)),n}var i=VMt(e,t);if(i)return i;var a=Object.keys(t),o=UMt(a);if(e.showHidden&&(a=Object.getOwnPropertyNames(t)),oE(t)&&(a.indexOf("message")>=0||a.indexOf("description")>=0))return Rj(t);if(a.length===0){if(zR(t)){var s=t.name?": "+t.name:"";return e.stylize("[Function"+s+"]","special")}if(aE(t))return e.stylize(RegExp.prototype.toString.call(t),"regexp");if(qR(t))return e.stylize(Date.prototype.toString.call(t),"date");if(oE(t))return Rj(t)}var l="",u=!1,c=["{","}"];if(OSe(t)&&(u=!0,c=["[","]"]),zR(t)){var f=t.name?": "+t.name:"";l=" [Function"+f+"]"}if(aE(t)&&(l=" "+RegExp.prototype.toString.call(t)),qR(t)&&(l=" "+Date.prototype.toUTCString.call(t)),oE(t)&&(l=" "+Rj(t)),a.length===0&&(!u||t.length==0))return c[0]+l+c[1];if(r<0)return aE(t)?e.stylize(RegExp.prototype.toString.call(t),"regexp"):e.stylize("[Object]","special");e.seen.push(t);var h;return u?h=GMt(e,t,r,o,a):h=a.map(function(d){return Fj(e,t,r,o,d,u)}),e.seen.pop(),HMt(h,l,c)}function VMt(e,t){if(w2(t))return e.stylize("undefined","undefined");if(NR(t)){var r="'"+JSON.stringify(t).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(r,"string")}if(qSe(t))return e.stylize(""+t,"number");if(zj(t))return e.stylize(""+t,"boolean");if(BR(t))return e.stylize("null","null")}function Rj(e){return"["+Error.prototype.toString.call(e)+"]"}function GMt(e,t,r,n,i){for(var a=[],o=0,s=t.length;o<s;++o)BSe(t,String(o))?a.push(Fj(e,t,r,n,String(o),!0)):a.push("");return i.forEach(function(l){l.match(/^\d+$/)||a.push(Fj(e,t,r,n,l,!0))}),a}function Fj(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")),BSe(n,i)||(o="["+i+"]"),s||(e.seen.indexOf(l.value)<0?(BR(r)?s=OR(e,l.value,null):s=OR(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")),w2(o)){if(a&&i.match(/^\d+$/))return s;o=JSON.stringify(""+i),o.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(o=o.slice(1,-1),o=e.stylize(o,"name")):(o=o.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),o=e.stylize(o,"string"))}return o+": "+s}function HMt(e,t,r){var n=0,i=e.reduce(function(a,o){return n++,o.indexOf(`
`)>=0&&n++,a+o.replace(/\u001b\[\d\d?m/g,"").length+1},0);return i>60?r[0]+(t===""?"":t+`
`)+" "+e.join(`,
`)+" "+r[1]:r[0]+t+" "+e.join(", ")+" "+r[1]}fu.types=JH();function OSe(e){return Array.isArray(e)}fu.isArray=OSe;function zj(e){return typeof e=="boolean"}fu.isBoolean=zj;function BR(e){return e===null}fu.isNull=BR;function jMt(e){return e==null}fu.isNullOrUndefined=jMt;function qSe(e){return typeof e=="number"}fu.isNumber=qSe;function NR(e){return typeof e=="string"}fu.isString=NR;function WMt(e){return typeof e=="symbol"}fu.isSymbol=WMt;function w2(e){return e===void 0}fu.isUndefined=w2;function aE(e){return gA(e)&&Oj(e)==="[object RegExp]"}fu.isRegExp=aE;fu.types.isRegExp=aE;function gA(e){return typeof e=="object"&&e!==null}fu.isObject=gA;function qR(e){return gA(e)&&Oj(e)==="[object Date]"}fu.isDate=qR;fu.types.isDate=qR;function oE(e){return gA(e)&&(Oj(e)==="[object Error]"||e instanceof Error)}fu.isError=oE;fu.types.isNativeError=oE;function zR(e){return typeof e=="function"}fu.isFunction=zR;function XMt(e){return e===null||typeof e=="boolean"||typeof e=="number"||typeof e=="string"||typeof e=="symbol"||typeof e=="undefined"}fu.isPrimitive=XMt;fu.isBuffer=$H();function Oj(e){return Object.prototype.toString.call(e)}function Dj(e){return e<10?"0"+e.toString(10):e.toString(10)}var ZMt=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function YMt(){var e=new Date,t=[Dj(e.getHours()),Dj(e.getMinutes()),Dj(e.getSeconds())].join(":");return[e.getDate(),ZMt[e.getMonth()],t].join(" ")}fu.log=function(){console.log("%s - %s",YMt(),fu.format.apply(fu,arguments))};fu.inherits=Uy();fu._extend=function(e,t){if(!t||!gA(t))return e;for(var r=Object.keys(t),n=r.length;n--;)e[r[n]]=t[r[n]];return e};function BSe(e,t){return Object.prototype.hasOwnProperty.call(e,t)}var b2=typeof Symbol!="undefined"?Symbol("util.promisify.custom"):void 0;fu.promisify=function(t){if(typeof t!="function")throw new TypeError('The "original" argument must be of type Function');if(b2&&t[b2]){var r=t[b2];if(typeof r!="function")throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(r,b2,{value:r,enumerable:!1,writable:!1,configurable:!0}),r}function r(){for(var n,i,a=new Promise(function(l,u){n=l,i=u}),o=[],s=0;s<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)),b2&&Object.defineProperty(r,b2,{value:r,enumerable:!1,writable:!1,configurable:!0}),Object.defineProperties(r,FSe(t))};fu.promisify.custom=b2;function KMt(e,t){if(!e){var r=new Error("Promise was rejected with a falsy value");r.reason=e,e=r}return t(e)}function JMt(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(KMt.bind(null,s,o))})}return Object.setPrototypeOf(t,Object.getPrototypeOf(e)),Object.defineProperties(t,FSe(e)),t}fu.callbackify=JMt});var Nj=ye((edr,GSe)=>{"use strict";function q_(e){"@babel/helpers - typeof";return q_=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},q_(e)}function NSe(e,t){for(var r=0;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,QMt(n.key),n)}}function $Mt(e,t,r){return t&&NSe(e.prototype,t),r&&NSe(e,r),Object.defineProperty(e,"prototype",{writable:!1}),e}function QMt(e){var t=e4t(e,"string");return q_(t)==="symbol"?t:String(t)}function e4t(e,t){if(q_(e)!=="object"||e===null)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t||"default");if(q_(n)!=="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function t4t(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function r4t(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&&Bj(e,t)}function Bj(e,t){return Bj=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(n,i){return n.__proto__=i,n},Bj(e,t)}function i4t(e){var t=o4t();return function(){var n=UR(e),i;if(t){var a=UR(this).constructor;i=Reflect.construct(n,arguments,a)}else i=n.apply(this,arguments);return n4t(this,i)}}function n4t(e,t){if(t&&(q_(t)==="object"||typeof t=="function"))return t;if(t!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return a4t(e)}function a4t(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function o4t(){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 UR(e){return UR=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(r){return r.__proto__||Object.getPrototypeOf(r)},UR(e)}var VSe={},yA,qj;function sE(e,t,r){r||(r=Error);function n(a,o,s){return typeof t=="string"?t:t(a,o,s)}var i=function(a){r4t(s,a);var o=i4t(s);function s(l,u,c){var f;return t4t(this,s),f=o.call(this,n(l,u,c)),f.code=e,f}return $Mt(s)}(r);VSe[e]=i}function USe(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 s4t(e,t,r){return e.substr(!r||r<0?0:+r,t.length)===t}function l4t(e,t,r){return(r===void 0||r>e.length)&&(r=e.length),e.substring(r-t.length,r)===t}function u4t(e,t,r){return typeof r!="number"&&(r=0),r+t.length>e.length?!1:e.indexOf(t,r)!==-1}sE("ERR_AMBIGUOUS_ARGUMENT",'The "%s" argument is ambiguous. %s',TypeError);sE("ERR_INVALID_ARG_TYPE",function(e,t,r){yA===void 0&&(yA=lE()),yA(typeof e=="string","'name' must be a string");var n;typeof t=="string"&&s4t(t,"not ")?(n="must not be",t=t.replace(/^not /,"")):n="must be";var i;if(l4t(e," argument"))i="The ".concat(e," ").concat(n," ").concat(USe(t,"type"));else{var a=u4t(e,".")?"property":"argument";i='The "'.concat(e,'" ').concat(a," ").concat(n," ").concat(USe(t,"type"))}return i+=". Received type ".concat(q_(r)),i},TypeError);sE("ERR_INVALID_ARG_VALUE",function(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"is invalid";qj===void 0&&(qj=mA());var n=qj.inspect(t);return n.length>128&&(n="".concat(n.slice(0,128),"...")),"The argument '".concat(e,"' ").concat(r,". Received ").concat(n)},TypeError,RangeError);sE("ERR_INVALID_RETURN_VALUE",function(e,t,r){var n;return r&&r.constructor&&r.constructor.name?n="instance of ".concat(r.constructor.name):n="type ".concat(q_(r)),"Expected ".concat(e,' to be returned from the "').concat(t,'"')+" function but got ".concat(n,".")},TypeError);sE("ERR_MISSING_ARGS",function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];yA===void 0&&(yA=lE()),yA(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);GSe.exports.codes=VSe});var QSe=ye((tdr,$Se)=>{"use strict";function HSe(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function jSe(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?HSe(Object(r),!0).forEach(function(n){c4t(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):HSe(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function c4t(e,t,r){return t=YSe(t),t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function f4t(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function WSe(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,YSe(n.key),n)}}function h4t(e,t,r){return t&&WSe(e.prototype,t),r&&WSe(e,r),Object.defineProperty(e,"prototype",{writable:!1}),e}function YSe(e){var t=d4t(e,"string");return Dp(t)==="symbol"?t:String(t)}function d4t(e,t){if(Dp(e)!=="object"||e===null)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t||"default");if(Dp(n)!=="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function v4t(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&&hE(e,t)}function p4t(e){var t=JSe();return function(){var n=dE(e),i;if(t){var a=dE(this).constructor;i=Reflect.construct(n,arguments,a)}else i=n.apply(this,arguments);return KSe(this,i)}}function KSe(e,t){if(t&&(Dp(t)==="object"||typeof t=="function"))return t;if(t!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return Uj(e)}function Uj(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function Vj(e){var t=typeof Map=="function"?new Map:void 0;return Vj=function(n){if(n===null||!g4t(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 VR(n,arguments,dE(this).constructor)}return i.prototype=Object.create(n.prototype,{constructor:{value:i,enumerable:!1,writable:!0,configurable:!0}}),hE(i,n)},Vj(e)}function VR(e,t,r){return JSe()?VR=Reflect.construct.bind():VR=function(i,a,o){var s=[null];s.push.apply(s,a);var l=Function.bind.apply(i,s),u=new l;return o&&hE(u,o.prototype),u},VR.apply(null,arguments)}function JSe(){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 g4t(e){return Function.toString.call(e).indexOf("[native code]")!==-1}function hE(e,t){return hE=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(n,i){return n.__proto__=i,n},hE(e,t)}function dE(e){return dE=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(r){return r.__proto__||Object.getPrototypeOf(r)},dE(e)}function Dp(e){"@babel/helpers - typeof";return Dp=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Dp(e)}var m4t=mA(),Gj=m4t.inspect,y4t=Nj(),_4t=y4t.codes.ERR_INVALID_ARG_TYPE;function XSe(e,t,r){return(r===void 0||r>e.length)&&(r=e.length),e.substring(r-t.length,r)===t}function x4t(e,t){if(t=Math.floor(t),e.length==0||t==0)return"";var r=e.length*t;for(t=Math.floor(Math.log(t)/Math.log(2));t;)e+=e,t--;return e+=e.substring(0,r-e.length),e}var jg="",uE="",cE="",Tv="",T2={deepStrictEqual:"Expected values to be strictly deep-equal:",strictEqual:"Expected values to be strictly equal:",strictEqualObject:'Expected "actual" to be reference-equal to "expected":',deepEqual:"Expected values to be loosely deep-equal:",equal:"Expected values to be loosely equal:",notDeepStrictEqual:'Expected "actual" not to be strictly deep-equal to:',notStrictEqual:'Expected "actual" to be strictly unequal to:',notStrictEqualObject:'Expected "actual" not to be reference-equal to "expected":',notDeepEqual:'Expected "actual" not to be loosely deep-equal to:',notEqual:'Expected "actual" to be loosely unequal to:',notIdentical:"Values identical but not reference-equal:"},b4t=10;function ZSe(e){var t=Object.keys(e),r=Object.create(Object.getPrototypeOf(e));return t.forEach(function(n){r[n]=e[n]}),Object.defineProperty(r,"message",{value:e.message}),r}function fE(e){return Gj(e,{compact:!1,customInspect:!1,depth:1e3,maxArrayLength:1/0,showHidden:!1,breakLength:1/0,showProxy:!1,sorted:!0,getters:!0})}function w4t(e,t,r){var n="",i="",a=0,o="",s=!1,l=fE(e),u=l.split(`
`),c=fE(t).split(`
`),f=0,h="";if(r==="strictEqual"&&Dp(e)==="object"&&Dp(t)==="object"&&e!==null&&t!==null&&(r="strictEqualObject"),u.length===1&&c.length===1&&u[0]!==c[0]){var d=u[0].length+c[0].length;if(d<=b4t){if((Dp(e)!=="object"||e===null)&&(Dp(t)!=="object"||t===null)&&(e!==0||t!==0))return"".concat(T2[r],`
`)+"".concat(u[0]," !== ").concat(c[0],`
`)}else if(r!=="strictEqualObject"){var v=process.stderr&&process.stderr.isTTY?process.stderr.columns:80;if(d<v){for(;u[0][f]===c[0][f];)f++;f>2&&(h=`
`.concat(x4t(" ",f),"^"),f=0)}}}for(var _=u[u.length-1],b=c[c.length-1];_===b&&(f++<2?o=`
`.concat(_).concat(o):n=_,u.pop(),c.pop(),!(u.length===0||c.length===0));)_=u[u.length-1],b=c[c.length-1];var p=Math.max(u.length,c.length);if(p===0){var k=l.split(`
`);if(k.length>30)for(k[26]="".concat(jg,"...").concat(Tv);k.length>27;)k.pop();return"".concat(T2.notIdentical,`
`).concat(k.join(`
`),`
`)}f>3&&(o=`
`.concat(jg,"...").concat(Tv).concat(o),s=!0),n!==""&&(o=`
`.concat(n).concat(o),n="");var E=0,S=T2[r]+`
`.concat(uE,"+ actual").concat(Tv," ").concat(cE,"- expected").concat(Tv),L=" ".concat(jg,"...").concat(Tv," Lines skipped");for(f=0;f<p;f++){var x=f-a;if(u.length<f+1)x>1&&f>2&&(x>4?(i+=`
`.concat(jg,"...").concat(Tv),s=!0):x>3&&(i+=`
`.concat(c[f-2]),E++),i+=`
`.concat(c[f-1]),E++),a=f,n+=`
`.concat(cE,"-").concat(Tv," ").concat(c[f]),E++;else if(c.length<f+1)x>1&&f>2&&(x>4?(i+=`
`.concat(jg,"...").concat(Tv),s=!0):x>3&&(i+=`
`.concat(u[f-2]),E++),i+=`
`.concat(u[f-1]),E++),a=f,i+=`
`.concat(uE,"+").concat(Tv," ").concat(u[f]),E++;else{var C=c[f],M=u[f],g=M!==C&&(!XSe(M,",")||M.slice(0,-1)!==C);g&&XSe(C,",")&&C.slice(0,-1)===M&&(g=!1,M+=","),g?(x>1&&f>2&&(x>4?(i+=`
`.concat(jg,"...").concat(Tv),s=!0):x>3&&(i+=`
`.concat(u[f-2]),E++),i+=`
`.concat(u[f-1]),E++),a=f,i+=`
`.concat(uE,"+").concat(Tv," ").concat(M),n+=`
`.concat(cE,"-").concat(Tv," ").concat(C),E+=2):(i+=n,n="",(x===1||f===0)&&(i+=`
`.concat(M),E++))}if(E>20&&f<p-2)return"".concat(S).concat(L,`
`).concat(i,`
`).concat(jg,"...").concat(Tv).concat(n,`
`)+"".concat(jg,"...").concat(Tv)}return"".concat(S).concat(s?L:"",`
`).concat(i).concat(n).concat(o).concat(h)}var T4t=function(e,t){v4t(n,e);var r=p4t(n);function n(i){var a;if(f4t(this,n),Dp(i)!=="object"||i===null)throw new _4t("options","Object",i);var o=i.message,s=i.operator,l=i.stackStartFn,u=i.actual,c=i.expected,f=Error.stackTraceLimit;if(Error.stackTraceLimit=0,o!=null)a=r.call(this,String(o));else if(process.stderr&&process.stderr.isTTY&&(process.stderr&&process.stderr.getColorDepth&&process.stderr.getColorDepth()!==1?(jg="\x1B[34m",uE="\x1B[32m",Tv="\x1B[39m",cE="\x1B[31m"):(jg="",uE="",Tv="",cE="")),Dp(u)==="object"&&u!==null&&Dp(c)==="object"&&c!==null&&"stack"in u&&u instanceof Error&&"stack"in c&&c instanceof Error&&(u=ZSe(u),c=ZSe(c)),s==="deepStrictEqual"||s==="strictEqual")a=r.call(this,w4t(u,c,s));else if(s==="notDeepStrictEqual"||s==="notStrictEqual"){var h=T2[s],d=fE(u).split(`
`);if(s==="notStrictEqual"&&Dp(u)==="object"&&u!==null&&(h=T2.notStrictEqualObject),d.length>30)for(d[26]="".concat(jg,"...").concat(Tv);d.length>27;)d.pop();d.length===1?a=r.call(this,"".concat(h," ").concat(d[0])):a=r.call(this,"".concat(h,`
`).concat(d.join(`
`),`
`))}else{var v=fE(u),_="",b=T2[s];s==="notDeepEqual"||s==="notEqual"?(v="".concat(T2[s],`
`).concat(v),v.length>1024&&(v="".concat(v.slice(0,1021),"..."))):(_="".concat(fE(c)),v.length>512&&(v="".concat(v.slice(0,509),"...")),_.length>512&&(_="".concat(_.slice(0,509),"...")),s==="deepEqual"||s==="equal"?v="".concat(b,`
`).concat(v,`
should equal
`):_=" ".concat(s," ").concat(_)),a=r.call(this,"".concat(v).concat(_))}return Error.stackTraceLimit=f,a.generatedMessage=!o,Object.defineProperty(Uj(a),"name",{value:"AssertionError [ERR_ASSERTION]",enumerable:!1,writable:!0,configurable:!0}),a.code="ERR_ASSERTION",a.actual=u,a.expected=c,a.operator=s,Error.captureStackTrace&&Error.captureStackTrace(Uj(a),l),a.stack,a.name="AssertionError",KSe(a)}return h4t(n,[{key:"toString",value:function(){return"".concat(this.name," [").concat(this.code,"]: ").concat(this.message)}},{key:t,value:function(a,o){return Gj(this,jSe(jSe({},o),{},{customInspect:!1,depth:0}))}}]),n}(Vj(Error),Gj.custom);$Se.exports=T4t});var Hj=ye((rdr,tMe)=>{"use strict";var eMe=Object.prototype.toString;tMe.exports=function(t){var r=eMe.call(t),n=r==="[object Arguments]";return n||(n=r!=="[object Array]"&&t!==null&&typeof t=="object"&&typeof t.length=="number"&&t.length>=0&&eMe.call(t.callee)==="[object Function]"),n}});var cMe=ye((idr,uMe)=>{"use strict";var lMe;Object.keys||(vE=Object.prototype.hasOwnProperty,jj=Object.prototype.toString,rMe=Hj(),Wj=Object.prototype.propertyIsEnumerable,iMe=!Wj.call({toString:null},"toString"),nMe=Wj.call(function(){},"prototype"),pE=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],GR=function(e){var t=e.constructor;return t&&t.prototype===e},aMe={$applicationCache:!0,$console:!0,$external:!0,$frame:!0,$frameElement:!0,$frames:!0,$innerHeight:!0,$innerWidth:!0,$onmozfullscreenchange:!0,$onmozfullscreenerror:!0,$outerHeight:!0,$outerWidth:!0,$pageXOffset:!0,$pageYOffset:!0,$parent:!0,$scrollLeft:!0,$scrollTop:!0,$scrollX:!0,$scrollY:!0,$self:!0,$webkitIndexedDB:!0,$webkitStorageInfo:!0,$window:!0},oMe=function(){if(typeof window=="undefined")return!1;for(var e in window)try{if(!aMe["$"+e]&&vE.call(window,e)&&window[e]!==null&&typeof window[e]=="object")try{GR(window[e])}catch(t){return!0}}catch(t){return!0}return!1}(),sMe=function(e){if(typeof window=="undefined"||!oMe)return GR(e);try{return GR(e)}catch(t){return!1}},lMe=function(t){var r=t!==null&&typeof t=="object",n=jj.call(t)==="[object Function]",i=rMe(t),a=r&&jj.call(t)==="[object String]",o=[];if(!r&&!n&&!i)throw new TypeError("Object.keys called on a non-object");var s=nMe&&n;if(a&&t.length>0&&!vE.call(t,0))for(var l=0;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")&&vE.call(t,c)&&o.push(String(c));if(iMe)for(var f=sMe(t),h=0;h<pE.length;++h)!(f&&pE[h]==="constructor")&&vE.call(t,pE[h])&&o.push(pE[h]);return o});var vE,jj,rMe,Wj,iMe,nMe,pE,GR,aMe,oMe,sMe;uMe.exports=lMe});var Xj=ye((ndr,dMe)=>{"use strict";var A4t=Array.prototype.slice,S4t=Hj(),fMe=Object.keys,HR=fMe?function(t){return fMe(t)}:cMe(),hMe=Object.keys;HR.shim=function(){if(Object.keys){var t=function(){var r=Object.keys(arguments);return r&&r.length===arguments.length}(1,2);t||(Object.keys=function(n){return S4t(n)?hMe(A4t.call(n)):hMe(n)})}else Object.keys=HR;return Object.keys||HR};dMe.exports=HR});var _Me=ye((adr,yMe)=>{"use strict";var M4t=Xj(),gMe=j8()(),mMe=lA(),vMe=Object,E4t=mMe("Array.prototype.push"),pMe=mMe("Object.prototype.propertyIsEnumerable"),k4t=gMe?Object.getOwnPropertySymbols:null;yMe.exports=function(t,r){if(t==null)throw new TypeError("target must be an object");var n=vMe(t);if(arguments.length===1)return n;for(var i=1;i<arguments.length;++i){var a=vMe(arguments[i]),o=M4t(a),s=gMe&&(Object.getOwnPropertySymbols||k4t);if(s)for(var l=s(a),u=0;u<l.length;++u){var c=l[u];pMe(a,c)&&E4t(o,c)}for(var f=0;f<o.length;++f){var h=o[f];if(pMe(a,h)){var d=a[h];n[h]=d}}}return n}});var bMe=ye((odr,xMe)=>{"use strict";var Zj=_Me(),C4t=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},L4t=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};xMe.exports=function(){return!Object.assign||C4t()||L4t()?Zj:Object.assign}});var Yj=ye((sdr,TMe)=>{"use strict";var wMe=function(e){return e!==e};TMe.exports=function(t,r){return t===0&&r===0?1/t===1/r:!!(t===r||wMe(t)&&wMe(r))}});var jR=ye((ldr,AMe)=>{"use strict";var P4t=Yj();AMe.exports=function(){return typeof Object.is=="function"?Object.is:P4t}});var gE=ye((udr,kMe)=>{"use strict";var I4t=Xj(),R4t=typeof Symbol=="function"&&typeof Symbol("foo")=="symbol",D4t=Object.prototype.toString,F4t=Array.prototype.concat,SMe=Object.defineProperty,z4t=function(e){return typeof e=="function"&&D4t.call(e)==="[object Function]"},O4t=PH()(),MMe=SMe&&O4t,q4t=function(e,t,r,n){if(t in e){if(n===!0){if(e[t]===r)return}else if(!z4t(n)||!n())return}MMe?SMe(e,t,{configurable:!0,enumerable:!1,value:r,writable:!0}):e[t]=r},EMe=function(e,t){var r=arguments.length>2?arguments[2]:{},n=I4t(t);R4t&&(n=F4t.call(n,Object.getOwnPropertySymbols(t)));for(var i=0;i<n.length;i+=1)q4t(e,n[i],t[n[i]],r[n[i]])};EMe.supportsDescriptors=!!MMe;kMe.exports=EMe});var LMe=ye((cdr,CMe)=>{"use strict";var B4t=jR(),N4t=gE();CMe.exports=function(){var t=B4t();return N4t(Object,{is:t},{is:function(){return Object.is!==t}}),t}});var DMe=ye((fdr,RMe)=>{"use strict";var U4t=gE(),V4t=X4(),G4t=Yj(),PMe=jR(),H4t=LMe(),IMe=V4t(PMe(),Object);U4t(IMe,{getPolyfill:PMe,implementation:G4t,shim:H4t});RMe.exports=IMe});var Kj=ye((hdr,FMe)=>{"use strict";FMe.exports=function(t){return t!==t}});var Jj=ye((ddr,zMe)=>{"use strict";var j4t=Kj();zMe.exports=function(){return Number.isNaN&&Number.isNaN(NaN)&&!Number.isNaN("a")?Number.isNaN:j4t}});var qMe=ye((vdr,OMe)=>{"use strict";var W4t=gE(),X4t=Jj();OMe.exports=function(){var t=X4t();return W4t(Number,{isNaN:t},{isNaN:function(){return Number.isNaN!==t}}),t}});var VMe=ye((pdr,UMe)=>{"use strict";var Z4t=X4(),Y4t=gE(),K4t=Kj(),BMe=Jj(),J4t=qMe(),NMe=Z4t(BMe(),Number);Y4t(NMe,{getPolyfill:BMe,implementation:K4t,shim:J4t});UMe.exports=NMe});var l4e=ye((gdr,s4e)=>{"use strict";function GMe(e,t){return tEt(e)||eEt(e,t)||Q4t(e,t)||$4t()}function $4t(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Q4t(e,t){if(e){if(typeof e=="string")return HMe(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return HMe(e,t)}}function HMe(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function eEt(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 tEt(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 rEt=/a/g.flags!==void 0,$R=function(t){var r=[];return t.forEach(function(n){return r.push(n)}),r},jMe=function(t){var r=[];return t.forEach(function(n,i){return r.push([i,n])}),r},r4e=Object.is?Object.is:DMe(),KR=Object.getOwnPropertySymbols?Object.getOwnPropertySymbols:function(){return[]},$j=Number.isNaN?Number.isNaN:VMe();function eW(e){return e.call.bind(e)}var yE=eW(Object.prototype.hasOwnProperty),JR=eW(Object.prototype.propertyIsEnumerable),WMe=eW(Object.prototype.toString),sp=mA().types,iEt=sp.isAnyArrayBuffer,nEt=sp.isArrayBufferView,XMe=sp.isDate,WR=sp.isMap,ZMe=sp.isRegExp,XR=sp.isSet,aEt=sp.isNativeError,oEt=sp.isBoxedPrimitive,YMe=sp.isNumberObject,KMe=sp.isStringObject,JMe=sp.isBooleanObject,$Me=sp.isBigIntObject,sEt=sp.isSymbolObject,lEt=sp.isFloat32Array,uEt=sp.isFloat64Array;function cEt(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 ZR(e){return Object.keys(e).filter(cEt).concat(KR(e).filter(Object.prototype.propertyIsEnumerable.bind(e)))}function i4e(e,t){if(e===t)return 0;for(var r=e.length,n=t.length,i=0,a=Math.min(r,n);i<a;++i)if(e[i]!==t[i]){r=e[i],n=t[i];break}return r<n?-1:n<r?1:0}var YR=void 0,fEt=!0,hEt=!1,Qj=0,tW=1,n4e=2,a4e=3;function dEt(e,t){return rEt?e.source===t.source&&e.flags===t.flags:RegExp.prototype.toString.call(e)===RegExp.prototype.toString.call(t)}function vEt(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 pEt(e,t){return e.byteLength!==t.byteLength?!1:i4e(new Uint8Array(e.buffer,e.byteOffset,e.byteLength),new Uint8Array(t.buffer,t.byteOffset,t.byteLength))===0}function gEt(e,t){return e.byteLength===t.byteLength&&i4e(new Uint8Array(e),new Uint8Array(t))===0}function mEt(e,t){return YMe(e)?YMe(t)&&r4e(Number.prototype.valueOf.call(e),Number.prototype.valueOf.call(t)):KMe(e)?KMe(t)&&String.prototype.valueOf.call(e)===String.prototype.valueOf.call(t):JMe(e)?JMe(t)&&Boolean.prototype.valueOf.call(e)===Boolean.prototype.valueOf.call(t):$Me(e)?$Me(t)&&BigInt.prototype.valueOf.call(e)===BigInt.prototype.valueOf.call(t):sEt(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?r4e(e,t):!0;if(r){if(J0(e)!=="object")return typeof e=="number"&&$j(e)&&$j(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=WMe(e),a=WMe(t);if(i!==a)return!1;if(Array.isArray(e)){if(e.length!==t.length)return!1;var o=ZR(e,YR),s=ZR(t,YR);return o.length!==s.length?!1:mE(e,t,r,n,tW,o)}if(i==="[object Object]"&&(!WR(e)&&WR(t)||!XR(e)&&XR(t)))return!1;if(XMe(e)){if(!XMe(t)||Date.prototype.getTime.call(e)!==Date.prototype.getTime.call(t))return!1}else if(ZMe(e)){if(!ZMe(t)||!dEt(e,t))return!1}else if(aEt(e)||e instanceof Error){if(e.message!==t.message||e.name!==t.name)return!1}else if(nEt(e)){if(!r&&(lEt(e)||uEt(e))){if(!vEt(e,t))return!1}else if(!pEt(e,t))return!1;var l=ZR(e,YR),u=ZR(t,YR);return l.length!==u.length?!1:mE(e,t,r,n,Qj,l)}else{if(XR(e))return!XR(t)||e.size!==t.size?!1:mE(e,t,r,n,n4e);if(WR(e))return!WR(t)||e.size!==t.size?!1:mE(e,t,r,n,a4e);if(iEt(e)){if(!gEt(e,t))return!1}else if(oEt(e)&&!mEt(e,t))return!1}return mE(e,t,r,n,Qj)}function QMe(e,t){return t.filter(function(r){return JR(e,r)})}function mE(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(!yE(t,a[s]))return!1;if(r&&arguments.length===5){var l=KR(e);if(l.length!==0){var u=0;for(s=0;s<l.length;s++){var c=l[s];if(JR(e,c)){if(!JR(t,c))return!1;a.push(c),u++}else if(JR(t,c))return!1}var f=KR(t);if(l.length!==f.length&&QMe(t,f).length!==u)return!1}else{var h=KR(t);if(h.length!==0&&QMe(t,h).length!==0)return!1}}if(a.length===0&&(i===Qj||i===tW&&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 _=wEt(e,t,r,a,n,i);return n.val1.delete(e),n.val2.delete(t),_}function e4e(e,t,r,n){for(var i=$R(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 o4e(e){switch(J0(e)){case"undefined":return null;case"object":return;case"symbol":return!1;case"string":e=+e;case"number":if($j(e))return!1}return!0}function yEt(e,t,r){var n=o4e(r);return n!=null?n:t.has(n)&&!e.has(n)}function _Et(e,t,r,n,i){var a=o4e(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 xEt(e,t,r,n){for(var i=null,a=$R(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||!yEt(e,t,s))return!1;i===null&&(i=new Set),i.add(s)}}if(i!==null){for(var l=$R(t),u=0;u<l.length;u++){var c=l[u];if(J0(c)==="object"&&c!==null){if(!e4e(i,c,r,n))return!1}else if(!r&&!e.has(c)&&!e4e(i,c,r,n))return!1}return i.size===0}return!0}function t4e(e,t,r,n,i,a){for(var o=$R(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 bEt(e,t,r,n){for(var i=null,a=jMe(e),o=0;o<a.length;o++){var s=GMe(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||!_Et(e,t,l,u,n))return!1;i===null&&(i=new Set),i.add(l)}}}if(i!==null){for(var f=jMe(t),h=0;h<f.length;h++){var d=GMe(f[h],2),v=d[0],_=d[1];if(J0(v)==="object"&&v!==null){if(!t4e(i,e,v,_,r,n))return!1}else if(!r&&(!e.has(v)||!$0(e.get(v),_,!1,n))&&!t4e(i,e,v,_,!1,n))return!1}return i.size===0}return!0}function wEt(e,t,r,n,i,a){var o=0;if(a===n4e){if(!xEt(e,t,r,i))return!1}else if(a===a4e){if(!bEt(e,t,r,i))return!1}else if(a===tW)for(;o<e.length;o++)if(yE(e,o)){if(!yE(t,o)||!$0(e[o],t[o],r,i))return!1}else{if(yE(t,o))return!1;for(var s=Object.keys(e);o<s.length;o++){var l=s[o];if(!yE(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 TEt(e,t){return $0(e,t,hEt)}function AEt(e,t){return $0(e,t,fEt)}s4e.exports={isDeepEqual:TEt,isDeepStrictEqual:AEt}});var lE=ye((mdr,M4e)=>{"use strict";function Wg(e){"@babel/helpers - typeof";return Wg=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Wg(e)}function u4e(e,t){for(var r=0;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,MEt(n.key),n)}}function SEt(e,t,r){return t&&u4e(e.prototype,t),r&&u4e(e,r),Object.defineProperty(e,"prototype",{writable:!1}),e}function MEt(e){var t=EEt(e,"string");return Wg(t)==="symbol"?t:String(t)}function EEt(e,t){if(Wg(e)!=="object"||e===null)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t||"default");if(Wg(n)!=="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function kEt(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var CEt=Nj(),_E=CEt.codes,c4e=_E.ERR_AMBIGUOUS_ARGUMENT,_A=_E.ERR_INVALID_ARG_TYPE,LEt=_E.ERR_INVALID_ARG_VALUE,PEt=_E.ERR_INVALID_RETURN_VALUE,N_=_E.ERR_MISSING_ARGS,U_=QSe(),IEt=mA(),QR=IEt.inspect,v4e=mA().types,REt=v4e.isPromise,eD=v4e.isRegExp,DEt=bMe()(),p4e=jR()(),tD=lA()("RegExp.prototype.test"),B_,rD;function xE(){var e=l4e();B_=e.isDeepEqual,rD=e.isDeepStrictEqual}var f4e=!1,Ef=M4e.exports=rW,iD={};function Xg(e){throw e.message instanceof Error?e.message:new U_(e)}function g4e(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(f4e===!1){f4e=!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||g4e};r!==void 0&&(l.message=r);var u=new U_(l);throw o&&(u.message=o,u.generatedMessage=!0),u}Ef.fail=g4e;Ef.AssertionError=U_;function m4e(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 U_({actual:r,expected:!0,message:n,operator:"==",stackStartFn:e});throw a.generatedMessage=i,a}}function rW(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];m4e.apply(void 0,[rW,t.length].concat(t))}Ef.ok=rW;Ef.equal=function e(t,r,n){if(arguments.length<2)throw new N_("actual","expected");t!=r&&Xg({actual:t,expected:r,message:n,operator:"==",stackStartFn:e})};Ef.notEqual=function e(t,r,n){if(arguments.length<2)throw new N_("actual","expected");t==r&&Xg({actual:t,expected:r,message:n,operator:"!=",stackStartFn:e})};Ef.deepEqual=function e(t,r,n){if(arguments.length<2)throw new N_("actual","expected");B_===void 0&&xE(),B_(t,r)||Xg({actual:t,expected:r,message:n,operator:"deepEqual",stackStartFn:e})};Ef.notDeepEqual=function e(t,r,n){if(arguments.length<2)throw new N_("actual","expected");B_===void 0&&xE(),B_(t,r)&&Xg({actual:t,expected:r,message:n,operator:"notDeepEqual",stackStartFn:e})};Ef.deepStrictEqual=function e(t,r,n){if(arguments.length<2)throw new N_("actual","expected");B_===void 0&&xE(),rD(t,r)||Xg({actual:t,expected:r,message:n,operator:"deepStrictEqual",stackStartFn:e})};Ef.notDeepStrictEqual=y4e;function y4e(e,t,r){if(arguments.length<2)throw new N_("actual","expected");B_===void 0&&xE(),rD(e,t)&&Xg({actual:e,expected:t,message:r,operator:"notDeepStrictEqual",stackStartFn:y4e})}Ef.strictEqual=function e(t,r,n){if(arguments.length<2)throw new N_("actual","expected");p4e(t,r)||Xg({actual:t,expected:r,message:n,operator:"strictEqual",stackStartFn:e})};Ef.notStrictEqual=function e(t,r,n){if(arguments.length<2)throw new N_("actual","expected");p4e(t,r)&&Xg({actual:t,expected:r,message:n,operator:"notStrictEqual",stackStartFn:e})};var h4e=SEt(function e(t,r,n){var i=this;kEt(this,e),r.forEach(function(a){a in t&&(n!==void 0&&typeof n[a]=="string"&&eD(t[a])&&tD(t[a],n[a])?i[a]=n[a]:i[a]=t[a])})});function FEt(e,t,r,n,i,a){if(!(r in e)||!rD(e[r],t[r])){if(!n){var o=new h4e(e,i),s=new h4e(t,i,e),l=new U_({actual:o,expected:s,operator:"deepStrictEqual",stackStartFn:a});throw l.actual=e,l.expected=t,l.operator=a.name,l}Xg({actual:e,expected:t,message:n,operator:a.name,stackStartFn:a})}}function _4e(e,t,r,n){if(typeof t!="function"){if(eD(t))return tD(t,e);if(arguments.length===2)throw new _A("expected",["Function","RegExp"],t);if(Wg(e)!=="object"||e===null){var i=new U_({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 LEt("error",t,"may not be an empty object");return B_===void 0&&xE(),a.forEach(function(o){typeof e[o]=="string"&&eD(t[o])&&tD(t[o],e[o])||FEt(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 x4e(e){if(typeof e!="function")throw new _A("fn","Function",e);try{e()}catch(t){return t}return iD}function d4e(e){return REt(e)||e!==null&&Wg(e)==="object"&&typeof e.then=="function"&&typeof e.catch=="function"}function b4e(e){return Promise.resolve().then(function(){var t;if(typeof e=="function"){if(t=e(),!d4e(t))throw new PEt("instance of Promise","promiseFn",t)}else if(d4e(e))t=e;else throw new _A("promiseFn",["Function","Promise"],e);return Promise.resolve().then(function(){return t}).then(function(){return iD}).catch(function(r){return r})})}function w4e(e,t,r,n){if(typeof r=="string"){if(arguments.length===4)throw new _A("error",["Object","Error","Function","RegExp"],r);if(Wg(t)==="object"&&t!==null){if(t.message===r)throw new c4e("error/message",'The error message "'.concat(t.message,'" is identical to the message.'))}else if(t===r)throw new c4e("error/message",'The error "'.concat(t,'" is identical to the message.'));n=r,r=void 0}else if(r!=null&&Wg(r)!=="object"&&typeof r!="function")throw new _A("error",["Object","Error","Function","RegExp"],r);if(t===iD){var i="";r&&r.name&&(i+=" (".concat(r.name,")")),i+=n?": ".concat(n):".";var a=e.name==="rejects"?"rejection":"exception";Xg({actual:void 0,expected:r,operator:e.name,message:"Missing expected ".concat(a).concat(i),stackStartFn:e})}if(r&&!_4e(t,r,n,e))throw t}function T4e(e,t,r,n){if(t!==iD){if(typeof r=="string"&&(n=r,r=void 0),!r||_4e(t,r)){var i=n?": ".concat(n):".",a=e.name==="doesNotReject"?"rejection":"exception";Xg({actual:t,expected:r,operator:e.name,message:"Got unwanted ".concat(a).concat(i,`
`)+'Actual message: "'.concat(t&&t.message,'"'),stackStartFn:e})}throw t}}Ef.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];w4e.apply(void 0,[e,x4e(t)].concat(n))};Ef.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 b4e(t).then(function(a){return w4e.apply(void 0,[e,a].concat(n))})};Ef.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];T4e.apply(void 0,[e,x4e(t)].concat(n))};Ef.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 b4e(t).then(function(a){return T4e.apply(void 0,[e,a].concat(n))})};Ef.ifError=function e(t){if(t!=null){var r="ifError got unwanted exception: ";Wg(t)==="object"&&typeof t.message=="string"?t.message.length===0&&t.constructor?r+=t.constructor.name:r+=t.message:r+=QR(t);var n=new U_({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 A4e(e,t,r,n,i){if(!eD(t))throw new _A("regexp","RegExp",t);var a=i==="match";if(typeof e!="string"||tD(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(Wg(e)," (").concat(QR(e),")"):(a?"The input did not match the regular expression ":"The input was expected to not match the regular expression ")+"".concat(QR(t),`. Input:
`).concat(QR(e),`
`));var s=new U_({actual:e,expected:t,message:r,operator:i,stackStartFn:n});throw s.generatedMessage=o,s}}Ef.match=function e(t,r,n){A4e(t,r,n,e,"match")};Ef.doesNotMatch=function e(t,r,n){A4e(t,r,n,e,"doesNotMatch")};function S4e(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];m4e.apply(void 0,[S4e,t.length].concat(t))}Ef.strict=DEt(S4e,Ef,{equal:Ef.strictEqual,deepEqual:Ef.deepStrictEqual,notEqual:Ef.notStrictEqual,notDeepEqual:Ef.notDeepStrictEqual});Ef.strict.strict=Ef.strict});var k4e=ye((ydr,E4e)=>{var bE=1e3,wE=bE*60,TE=wE*60,AE=TE*24,zEt=AE*365.25;E4e.exports=function(e,t){t=t||{};var r=typeof e;if(r==="string"&&e.length>0)return OEt(e);if(r==="number"&&isNaN(e)===!1)return t.long?BEt(e):qEt(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))};function OEt(e){if(e=String(e),!(e.length>100)){var t=/^((?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|years?|yrs?|y)?$/i.exec(e);if(t){var r=parseFloat(t[1]),n=(t[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return r*zEt;case"days":case"day":case"d":return r*AE;case"hours":case"hour":case"hrs":case"hr":case"h":return r*TE;case"minutes":case"minute":case"mins":case"min":case"m":return r*wE;case"seconds":case"second":case"secs":case"sec":case"s":return r*bE;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function qEt(e){return e>=AE?Math.round(e/AE)+"d":e>=TE?Math.round(e/TE)+"h":e>=wE?Math.round(e/wE)+"m":e>=bE?Math.round(e/bE)+"s":e+"ms"}function BEt(e){return nD(e,AE,"day")||nD(e,TE,"hour")||nD(e,wE,"minute")||nD(e,bE,"second")||e+" ms"}function nD(e,t,r){if(!(e<t))return e<t*1.5?Math.floor(e/t)+" "+r:Math.ceil(e/t)+" "+r+"s"}});var L4e=ye((Lc,C4e)=>{Lc=C4e.exports=nW.debug=nW.default=nW;Lc.coerce=HEt;Lc.disable=VEt;Lc.enable=UEt;Lc.enabled=GEt;Lc.humanize=k4e();Lc.names=[];Lc.skips=[];Lc.formatters={};var iW;function NEt(e){var t=0,r;for(r in e)t=(t<<5)-t+e.charCodeAt(r),t|=0;return Lc.colors[Math.abs(t)%Lc.colors.length]}function nW(e){function t(){if(t.enabled){var r=t,n=+new Date,i=n-(iW||n);r.diff=i,r.prev=iW,r.curr=n,iW=n;for(var a=new Array(arguments.length),o=0;o<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=NEt(e),typeof Lc.init=="function"&&Lc.init(t),t}function UEt(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 VEt(){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 HEt(e){return e instanceof Error?e.stack||e.message:e}});var R4e=ye((lp,I4e)=>{lp=I4e.exports=L4e();lp.log=XEt;lp.formatArgs=WEt;lp.save=ZEt;lp.load=P4e;lp.useColors=jEt;lp.storage=typeof chrome!="undefined"&&typeof chrome.storage!="undefined"?chrome.storage.local:YEt();lp.colors=["lightseagreen","forestgreen","goldenrod","dodgerblue","darkorchid","crimson"];function jEt(){return typeof window!="undefined"&&window.process&&window.process.type==="renderer"?!0:typeof document!="undefined"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window!="undefined"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator!="undefined"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||typeof navigator!="undefined"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}lp.formatters.j=function(e){try{return JSON.stringify(e)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}};function WEt(e){var t=this.useColors;if(e[0]=(t?"%c":"")+this.namespace+(t?" %c":" ")+e[0]+(t?"%c ":" ")+"+"+lp.humanize(this.diff),!!t){var r="color: "+this.color;e.splice(1,0,r,"color: inherit");var n=0,i=0;e[0].replace(/%[a-zA-Z%]/g,function(a){a!=="%%"&&(n++,a==="%c"&&(i=n))}),e.splice(i,0,r)}}function XEt(){return typeof console=="object"&&console.log&&Function.prototype.apply.call(console.log,console,arguments)}function ZEt(e){try{e==null?lp.storage.removeItem("debug"):lp.storage.debug=e}catch(t){}}function P4e(){var e;try{e=lp.storage.debug}catch(t){}return!e&&typeof process!="undefined"&&"env"in process&&(e=process.env.DEBUG),e}lp.enable(P4e());function YEt(){try{return window.localStorage}catch(e){}}});var U4e=ye((_dr,N4e)=>{var xA=lE(),V_=R4e()("stream-parser");N4e.exports=JEt;var F4e=-1,aD=0,KEt=1,z4e=2;function JEt(e){var t=e&&typeof e._transform=="function",r=e&&typeof e._write=="function";if(!t&&!r)throw new Error("must pass a Writable or Transform stream in");V_("extending Parser into stream"),e._bytes=$Et,e._skipBytes=QEt,t&&(e._passthrough=ekt),t?e._transform=rkt:e._write=tkt}function SE(e){V_("initializing parser stream"),e._parserBytesLeft=0,e._parserBuffers=[],e._parserBuffered=0,e._parserState=F4e,e._parserCallback=null,typeof e.push=="function"&&(e._parserOutput=e.push.bind(e)),e._parserInit=!0}function $Et(e,t){xA(!this._parserCallback,'there is already a "callback" set!'),xA(isFinite(e)&&e>0,'can only buffer a finite number of bytes > 0, got "'+e+'"'),this._parserInit||SE(this),V_("buffering %o bytes",e),this._parserBytesLeft=e,this._parserCallback=t,this._parserState=aD}function QEt(e,t){xA(!this._parserCallback,'there is already a "callback" set!'),xA(e>0,'can only skip > 0 bytes, got "'+e+'"'),this._parserInit||SE(this),V_("skipping %o bytes",e),this._parserBytesLeft=e,this._parserCallback=t,this._parserState=KEt}function ekt(e,t){xA(!this._parserCallback,'There is already a "callback" set!'),xA(e>0,'can only pass through > 0 bytes, got "'+e+'"'),this._parserInit||SE(this),V_("passing through %o bytes",e),this._parserBytesLeft=e,this._parserCallback=t,this._parserState=z4e}function tkt(e,t,r){this._parserInit||SE(this),V_("write(%o bytes)",e.length),typeof t=="function"&&(r=t),q4e(this,e,null,r)}function rkt(e,t,r){this._parserInit||SE(this),V_("transform(%o bytes)",e.length),typeof t!="function"&&(t=this._parserOutput),q4e(this,e,t,r)}function O4e(e,t,r,n){return e._parserBytesLeft<=0?n(new Error("got data but not currently parsing anything")):t.length<=e._parserBytesLeft?function(){return D4e(e,t,r,n)}:function(){var i=t.slice(0,e._parserBytesLeft);return D4e(e,i,r,function(a){if(a)return n(a);if(t.length>i.length)return function(){return O4e(e,t.slice(i.length),r,n)}})}}function D4e(e,t,r,n){if(e._parserBytesLeft-=t.length,V_("%o bytes left for stream piece",e._parserBytesLeft),e._parserState===aD?(e._parserBuffers.push(t),e._parserBuffered+=t.length):e._parserState===z4e&&r(t),e._parserBytesLeft===0){var i=e._parserCallback;if(i&&e._parserState===aD&&e._parserBuffers.length>1&&(t=Buffer.concat(e._parserBuffers,e._parserBuffered)),e._parserState!==aD&&(t=null),e._parserCallback=null,e._parserBuffered=0,e._parserState=F4e,e._parserBuffers.splice(0),i){var a=[];t&&a.push(t),r&&a.push(r);var o=i.length>a.length;o&&a.push(B4e(n));var s=i.apply(e,a);if(!o||n===s)return n}}else return n}var q4e=B4e(O4e);function B4e(e){return function(){for(var t=e.apply(this,arguments);typeof t=="function";)t=t();return t}}});var rc=ye(Hy=>{"use strict";var V4e=DSe().Transform,ikt=U4e();function ME(){V4e.call(this,{readableObjectMode:!0})}ME.prototype=Object.create(V4e.prototype);ME.prototype.constructor=ME;ikt(ME.prototype);Hy.ParserStream=ME;Hy.sliceEq=function(e,t,r){for(var n=t,i=0;i<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 oD(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)}oD.prototype=Object.create(Error.prototype);oD.prototype.constructor=oD;Hy.ProbeError=oD});var G4e=ye((bdr,sD)=>{"use strict";var bA=rc().readUInt16BE,oW=rc().readUInt32BE;function EE(e,t){if(e.length<4+t)return null;var r=oW(e,t);return e.length<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}}sD.exports.unbox=EE;function nkt(e,t){for(var r=0;;){var n=EE(e,r);if(!n)break;switch(n.boxtype){case"ispe":t.sizes.push({width:oW(n.data,4),height:oW(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 aW(e,t,r){for(var n=0,i=0;i<r;i++)n=n*256+(e[t+i]||0);return n}function akt(e,t){for(var r=e[4]>>4&15,n=e[4]&15,i=e[5]>>4&15,a=bA(e,6),o=8,s=0;s<a;s++){var l=bA(e,o);o+=2;var u=bA(e,o);o+=2;var c=aW(e,o,i);o+=i;var f=bA(e,o);if(o+=2,u===0&&f===1){var h=aW(e,o,r),d=aW(e,o+r,n);t.item_loc[l]={length:d,offset:h+c}}o+=f*(r+n)}}function okt(e,t){for(var r=bA(e,4),n=6,i=0;i<r;i++){var a=EE(e,n);if(!a)break;if(a.boxtype==="infe"){for(var o=bA(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 skt(e,t){for(var r=0;;){var n=EE(e,r);if(!n)break;n.boxtype==="ipco"&&nkt(n.data,t),r=n.end}}function lkt(e,t){for(var r=4;;){var n=EE(e,r);if(!n)break;n.boxtype==="iprp"&&skt(n.data,t),n.boxtype==="iloc"&&akt(n.data,t),n.boxtype==="iinf"&&okt(n.data,t),r=n.end}}function ukt(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}sD.exports.readSizeFromMeta=function(e){var t={sizes:[],transforms:[],item_inf:{},item_loc:{}};if(lkt(e,t),!!t.sizes.length){var r=ukt(t.sizes),n=1;t.transforms.forEach(function(a){var o={1:6,2:5,3:8,4:7,5:4,6:3,7:2,8:1},s={1:4,2:3,3:2,4:1,5:6,6:5,7:8,8:7};if(a.type==="imir"&&(a.value===0?n=s[n]:(n=s[n],n=o[n],n=o[n])),a.type==="irot")for(var l=0;l<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}}};sD.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 uD=ye((wdr,sW)=>{"use strict";function lD(e,t){var r=new Error(e);return r.code=t,r}function ckt(e){try{return decodeURIComponent(escape(e))}catch(t){return e}}function jy(e,t,r){this.input=e.subarray(t,r),this.start=t;var n=String.fromCharCode.apply(null,this.input.subarray(0,4));if(n!=="II*\0"&&n!=="MM\0*")throw lD("invalid TIFF signature","EBADDATA");this.big_endian=n[0]==="M"}jy.prototype.each=function(e){this.aborted=!1;var t=this.read_uint32(4);for(this.ifds_to_read=[{id:0,offset:t}];this.ifds_to_read.length>0&&!this.aborted;){var r=this.ifds_to_read.shift();r.offset&&this.scan_ifd(r.id,r.offset,e)}};jy.prototype.read_uint16=function(e){var t=this.input;if(e+2>t.length)throw lD("unexpected EOF","EBADDATA");return this.big_endian?t[e]*256+t[e+1]:t[e]+t[e+1]*256};jy.prototype.read_uint32=function(e){var t=this.input;if(e+4>t.length)throw lD("unexpected EOF","EBADDATA");return this.big_endian?t[e]*16777216+t[e+1]*65536+t[e+2]*256+t[e+3]:t[e]+t[e+1]*256+t[e+2]*65536+t[e+3]*16777216};jy.prototype.is_subifd_link=function(e,t){return e===0&&t===34665||e===0&&t===34853||e===34665&&t===40965};jy.prototype.exif_format_length=function(e){switch(e){case 1:case 2:case 6:case 7:return 1;case 3:case 8:return 2;case 4:case 9:case 11:return 4;case 5:case 10:case 12:return 8;default:return 0}};jy.prototype.exif_format_read=function(e,t){var r;switch(e){case 1:case 2:return r=this.input[t],r;case 6:return r=this.input[t],r|(r&128)*33554430;case 3:return r=this.read_uint16(t),r;case 8:return r=this.read_uint16(t),r|(r&32768)*131070;case 4:return r=this.read_uint32(t),r;case 9:return r=this.read_uint32(t),r|0;case 5:case 10:case 11:case 12:return null;case 7:return null;default:return null}};jy.prototype.scan_ifd=function(e,t,r){var n=this.read_uint16(t);t+=2;for(var i=0;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 lD("unexpected EOF","EBADDATA");for(var h=[],d=c,v=0;v<s;v++,d+=l){var _=this.exif_format_read(o,d);if(_===null){h=null;break}h.push(_)}Array.isArray(h)&&o===2&&(h=ckt(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)})};sW.exports.ExifParser=jy;sW.exports.get_orientation=function(e){var t=0;try{return new jy(e,0,e.length).each(function(r){if(r.ifd===0&&r.tag===274&&Array.isArray(r.value))return t=r.value[0],!1}),t}catch(r){return-1}}});var j4e=ye((Tdr,H4e)=>{"use strict";var fkt=rc().str2arr,hkt=rc().sliceEq,dkt=rc().readUInt32BE,cD=G4e(),vkt=uD(),pkt=fkt("ftyp");H4e.exports=function(e){if(hkt(e,4,pkt)){var t=cD.unbox(e,0);if(t){var r=cD.getMimeType(t.data);if(r){for(var n,i=t.end;;){var a=cD.unbox(e,i);if(!a)break;if(i=a.end,a.boxtype==="mdat")return;if(a.boxtype==="meta"){n=a.data;break}}if(n){var o=cD.readSizeFromMeta(n);if(o){var s={width:o.width,height:o.height,type:r.type,mime:r.mime,wUnits:"px",hUnits:"px"};if(o.variants.length>1&&(s.variants=o.variants),o.orientation&&(s.orientation=o.orientation),o.exif_location&&o.exif_location.offset+o.exif_location.length<=e.length){var l=dkt(e,o.exif_location.offset),u=e.slice(o.exif_location.offset+l+4,o.exif_location.offset+o.exif_location.length),c=vkt.get_orientation(u);c>0&&(s.orientation=c)}return s}}}}}}});var Z4e=ye((Adr,X4e)=>{"use strict";var gkt=rc().str2arr,mkt=rc().sliceEq,W4e=rc().readUInt16LE,ykt=gkt("BM");X4e.exports=function(e){if(!(e.length<26)&&mkt(e,0,ykt))return{width:W4e(e,18),height:W4e(e,22),type:"bmp",mime:"image/bmp",wUnits:"px",hUnits:"px"}}});var Q4e=ye((Sdr,$4e)=>{"use strict";var J4e=rc().str2arr,Y4e=rc().sliceEq,K4e=rc().readUInt16LE,_kt=J4e("GIF87a"),xkt=J4e("GIF89a");$4e.exports=function(e){if(!(e.length<10)&&!(!Y4e(e,0,_kt)&&!Y4e(e,0,xkt)))return{width:K4e(e,6),height:K4e(e,8),type:"gif",mime:"image/gif",wUnits:"px",hUnits:"px"}}});var rEe=ye((Mdr,tEe)=>{"use strict";var lW=rc().readUInt16LE,bkt=0,wkt=1,eEe=16;tEe.exports=function(e){var t=lW(e,0),r=lW(e,2),n=lW(e,4);if(!(t!==bkt||r!==wkt||!n)){for(var i=[],a={width:0,height:0},o=0;o<n;o++){var s=e[6+eEe*o]||256,l=e[6+eEe*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 nEe=ye((Edr,iEe)=>{"use strict";var uW=rc().readUInt16BE,Tkt=rc().str2arr,Akt=rc().sliceEq,Skt=uD(),Mkt=Tkt("Exif\0\0");iEe.exports=function(e){if(!(e.length<2)&&!(e[0]!==255||e[1]!==216||e[2]!==255))for(var t=2;;){for(;;){if(e.length-t<2)return;if(e[t++]===255)break}for(var r=e[t++],n;r===255;)r=e[t++];if(208<=r&&r<=217||r===1)n=0;else if(192<=r&&r<=254){if(e.length-t<2)return;n=uW(e,t)-2,t+=2}else return;if(r===217||r===218)return;var i;if(r===225&&n>=10&&Akt(e,t,Mkt)&&(i=Skt.get_orientation(e.slice(t+6,t+n))),n>=5&&192<=r&&r<=207&&r!==196&&r!==200&&r!==204){if(e.length-t<n)return;var a={width:uW(e,t+3),height:uW(e,t+1),type:"jpg",mime:"image/jpeg",wUnits:"px",hUnits:"px"};return i>0&&(a.orientation=i),a}t+=n}}});var uEe=ye((kdr,lEe)=>{"use strict";var sEe=rc().str2arr,aEe=rc().sliceEq,oEe=rc().readUInt32BE,Ekt=sEe(`\x89PNG\r

`),kkt=sEe("IHDR");lEe.exports=function(e){if(!(e.length<24)&&aEe(e,0,Ekt)&&aEe(e,12,kkt))return{width:oEe(e,16),height:oEe(e,20),type:"png",mime:"image/png",wUnits:"px",hUnits:"px"}}});var hEe=ye((Cdr,fEe)=>{"use strict";var Ckt=rc().str2arr,Lkt=rc().sliceEq,cEe=rc().readUInt32BE,Pkt=Ckt("8BPS\0");fEe.exports=function(e){if(!(e.length<22)&&Lkt(e,0,Pkt))return{width:cEe(e,18),height:cEe(e,14),type:"psd",mime:"image/vnd.adobe.photoshop",wUnits:"px",hUnits:"px"}}});var pEe=ye((Ldr,vEe)=>{"use strict";function Ikt(e){return e===32||e===9||e===13||e===10}function wA(e){return typeof e=="number"&&isFinite(e)&&e>0}function Rkt(e){var t=0,r=e.length;for(e[0]===239&&e[1]===187&&e[2]===191&&(t=3);t<r&&Ikt(e[t]);)t++;return t===r?!1:e[t]===60}var Dkt=/<[-_.:a-zA-Z0-9][^>]*>/,Fkt=/^<([-_.:a-zA-Z0-9]+:)?svg\s/,zkt=/[^-]\bwidth="([^%]+?)"|[^-]\bwidth='([^%]+?)'/,Okt=/\bheight="([^%]+?)"|\bheight='([^%]+?)'/,qkt=/\bview[bB]ox="(.+?)"|\bview[bB]ox='(.+?)'/,dEe=/in$|mm$|cm$|pt$|pc$|px$|em$|ex$/;function Bkt(e){var t=e.match(zkt),r=e.match(Okt),n=e.match(qkt);return{width:t&&(t[1]||t[2]),height:r&&(r[1]||r[2]),viewbox:n&&(n[1]||n[2])}}function Um(e){return dEe.test(e)?e.match(dEe)[0]:"px"}vEe.exports=function(e){if(Rkt(e)){for(var t="",r=0;r<e.length;r++)t+=String.fromCharCode(e[r]);var n=(t.match(Dkt)||[""])[0];if(Fkt.test(n)){var i=Bkt(n),a=parseFloat(i.width),o=parseFloat(i.height);if(i.width&&i.height)return!wA(a)||!wA(o)?void 0:{width:a,height:o,type:"svg",mime:"image/svg+xml",wUnits:Um(i.width),hUnits:Um(i.height)};var s=(i.viewbox||"").split(" "),l={width:s[2],height:s[3]},u=parseFloat(l.width),c=parseFloat(l.height);if(!(!wA(u)||!wA(c))&&Um(l.width)===Um(l.height)){var f=u/c;return i.width?wA(a)?{width:a,height:a/f,type:"svg",mime:"image/svg+xml",wUnits:Um(i.width),hUnits:Um(i.width)}:void 0:i.height?wA(o)?{width:o*f,height:o,type:"svg",mime:"image/svg+xml",wUnits:Um(i.height),hUnits:Um(i.height)}:void 0:{width:u,height:c,type:"svg",mime:"image/svg+xml",wUnits:Um(l.width),hUnits:Um(l.height)}}}}}});var xEe=ye((Pdr,_Ee)=>{"use strict";var yEe=rc().str2arr,gEe=rc().sliceEq,Nkt=rc().readUInt16LE,Ukt=rc().readUInt16BE,Vkt=rc().readUInt32LE,Gkt=rc().readUInt32BE,Hkt=yEe("II*\0"),jkt=yEe("MM\0*");function fD(e,t,r){return r?Ukt(e,t):Nkt(e,t)}function cW(e,t,r){return r?Gkt(e,t):Vkt(e,t)}function mEe(e,t,r){var n=fD(e,t+2,r),i=cW(e,t+4,r);return i!==1||n!==3&&n!==4?null:n===3?fD(e,t+8,r):cW(e,t+8,r)}_Ee.exports=function(e){if(!(e.length<8)&&!(!gEe(e,0,Hkt)&&!gEe(e,0,jkt))){var t=e[0]===77,r=cW(e,4,t)-8;if(!(r<0)){var n=r+8;if(!(e.length-n<2)){var i=fD(e,n+0,t)*12;if(!(i<=0)&&(n+=2,!(e.length-n<i))){var a,o,s,l;for(a=0;a<i;a+=12)l=fD(e,n+a,t),l===256?o=mEe(e,n+a,t):l===257&&(s=mEe(e,n+a,t));if(o&&s)return{width:o,height:s,type:"tiff",mime:"image/tiff",wUnits:"px",hUnits:"px"}}}}}}});var SEe=ye((Idr,AEe)=>{"use strict";var TEe=rc().str2arr,bEe=rc().sliceEq,wEe=rc().readUInt16LE,fW=rc().readUInt32LE,Wkt=uD(),Xkt=TEe("RIFF"),Zkt=TEe("WEBP");function Ykt(e,t){if(!(e[t+3]!==157||e[t+4]!==1||e[t+5]!==42))return{width:wEe(e,t+6)&16383,height:wEe(e,t+8)&16383,type:"webp",mime:"image/webp",wUnits:"px",hUnits:"px"}}function Kkt(e,t){if(e[t]===47){var r=fW(e,t+1);return{width:(r&16383)+1,height:(r>>14&16383)+1,type:"webp",mime:"image/webp",wUnits:"px",hUnits:"px"}}}function Jkt(e,t){return{width:(e[t+6]<<16|e[t+5]<<8|e[t+4])+1,height:(e[t+9]<<t|e[t+8]<<8|e[t+7])+1,type:"webp",mime:"image/webp",wUnits:"px",hUnits:"px"}}AEe.exports=function(e){if(!(e.length<16)&&!(!bEe(e,0,Xkt)&&!bEe(e,8,Zkt))){var t=12,r=null,n=0,i=fW(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=fW(e,t+4);a==="VP8 "&&o>=10?r=r||Ykt(e,t+8):a==="VP8L"&&o>=9?r=r||Kkt(e,t+8):a==="VP8X"&&o>=10?r=r||Jkt(e,t+8):a==="EXIF"&&(n=Wkt.get_orientation(e.slice(t+8,t+8+o)),t=1/0),t+=8+o}if(r)return n>0&&(r.orientation=n),r}}}});var EEe=ye((Rdr,MEe)=>{"use strict";MEe.exports={avif:j4e(),bmp:Z4e(),gif:Q4e(),ico:rEe(),jpeg:nEe(),png:uEe(),psd:hEe(),svg:pEe(),tiff:xEe(),webp:SEe()}});var kEe=ye((Ddr,dW)=>{"use strict";var hW=EEe();function $kt(e){for(var t=Object.keys(hW),r=0;r<t.length;r++){var n=hW[t[r]](e);if(n)return n}return null}dW.exports=function(t){return $kt(t)};dW.exports.parsers=hW});var LEe=ye(CEe=>{"use strict";var Qkt=kEe(),eCt=Py().IMAGE_URL_PREFIX,tCt=c2().Buffer;CEe.getImageSize=function(e){var t=e.replace(eCt,""),r=new tCt(t,"base64");return Qkt(r)}});var REe=ye((zdr,IEe)=>{"use strict";var PEe=Dr(),rCt=YT(),iCt=Eo(),hD=ho(),nCt=Dr().maxRowLength,aCt=LEe().getImageSize;IEe.exports=function(t,r){var n,i;if(r._hasZ)n=r.z.length,i=nCt(r.z);else if(r._hasSource){var a=aCt(r.source);n=a.height,i=a.width}var o=hD.getFromId(t,r.xaxis||"x"),s=hD.getFromId(t,r.yaxis||"y"),l=o.d2c(r.x0)-r.dx/2,u=s.d2c(r.y0)-r.dy/2,c,f=[l,l+i*r.dx],h=[u,u+n*r.dy];if(o&&o.type==="log")for(c=0;c<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]=hD.findExtremes(o,f),r._extremes[s._id]=hD.findExtremes(s,h),r._scaler=lCt(r);var d={x0:l,y0:u,z:r.z,w:i,h:n};return[d]};function oCt(e,t,r,n){return function(i){return PEe.constrain((i-e)*t,r,n)}}function sCt(e,t){return function(r){return PEe.constrain(r,e,t)}}function lCt(e){var t=rCt.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(oCt(e.zmin[i],(t.max[i]-t.min[i])/(e.zmax[i]-e.zmin[i]),t.min[i],t.max[i])):e._sArray.push(sCt(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(!iCt(l))return!1;o[s]=e._sArray[s](l)}return o}}});var zEe=ye((Odr,FEe)=>{"use strict";var uCt=Oa(),A2=Dr(),DEe=A2.strTranslate,cCt=Wp(),fCt=YT(),hCt=QV(),dCt=h8().STYLE;FEe.exports=function(t,r,n,i){var a=r.xaxis,o=r.yaxis,s=!t._context._exportedPlot&&hCt();A2.makeTraceGroups(i,n,"im").each(function(l){var u=uCt.select(this),c=l[0],f=c.trace,h=(f.zsmooth==="fast"||f.zsmooth===!1&&s)&&!f._hasZ&&f._hasSource&&a.type==="linear"&&o.type==="linear";f._realImage=h;var d=c.z,v=c.x0,_=c.y0,b=c.w,p=c.h,k=f.dx,E=f.dy,S,L,x,C,M,g;for(g=0;S===void 0&&g<b;)S=a.c2p(v+g*k),g++;for(g=b;L===void 0&&g>0;)L=a.c2p(v+g*k),g--;for(g=0;C===void 0&&g<p;)C=o.c2p(_+g*E),g++;for(g=p;M===void 0&&g>0;)M=o.c2p(_+g*E),g--;if(L<S&&(x=L,L=S,S=x),M<C&&(x=C,C=M,M=x),!h){var P=.5;S=Math.max(-P*a._length,S),L=Math.min((1+P)*a._length,L),C=Math.max(-P*o._length,C),M=Math.min((1+P)*o._length,M)}var T=Math.round(L-S),z=Math.round(M-C),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 A2.constrain(Math.round(a.c2p(v+st*k)-S),0,T)},Ae=function(st){return A2.constrain(Math.round(o.c2p(_+st*E)-C),0,z)},Fe=fCt.colormodel[f.colormodel],Pe=Fe.colormodel||f.colormodel,ge=Fe.fmt,Re;for(g=0;g<c.w;g++){var ce=Le(g),Ze=Le(g+1);if(!(Ze===ce||isNaN(Ze)||isNaN(ce)))for(var ut=0;ut<c.h;ut++){var pt=Ae(ut),Zt=Ae(ut+1);Zt===pt||isNaN(Zt)||isNaN(pt)||!me(g,ut)||(Re=f._scaler(me(g,ut)),Re?Se.fillStyle=Pe+"("+ge(Re).join(",")+")":Se.fillStyle="rgba(0,0,0,0)",Se.fillRect(ce,pt,Ze-ce,Zt-pt))}}return ie}var Z=u.selectAll("image").data([l]);Z.enter().append("svg:image").attr({xmlns:cCt.svg,preserveAspectRatio:"none"}),Z.exit().remove();var j=f.zsmooth===!1?dCt:"";if(h){var N=A2.simpleMap(a.range,a.r2l),H=A2.simpleMap(o.range,o.r2l),te=N[1]<N[0],oe=H[1]>H[0];if(te||oe){var _e=S+T/2,Ee=C+z/2;j+="transform:"+DEe(_e+"px",Ee+"px")+"scale("+(te?-1:1)+","+(oe?-1:1)+")"+DEe(-_e+"px",-Ee+"px")+";"}}Z.attr("style",j);var Ce=new Promise(function(me){if(f._hasZ)me();else if(f._hasSource)if(f._canvas&&f._canvas.el.width===b&&f._canvas.el.height===p&&f._canvas.source===f.source)me();else{var ie=document.createElement("canvas");ie.width=b,ie.height=p;var Se=ie.getContext("2d",{willReadFrequently:!0});f._image=f._image||new Image;var Le=f._image;Le.onload=function(){Se.drawImage(Le,0,0),f._canvas={el:ie,source:f.source},me()},Le.setAttribute("src",f.source)}}).then(function(){var me,ie;if(f._hasZ)ie=G(function(Ae,Fe){var Pe=d[Fe][Ae];return A2.isTypedArray(Pe)&&(Pe=Array.from(Pe)),Pe}),me=ie.toDataURL("image/png");else if(f._hasSource)if(h)me=f.source;else{var Se=f._canvas.el.getContext("2d",{willReadFrequently:!0}),Le=Se.getImageData(0,0,b,p).data;ie=G(function(Ae,Fe){var Pe=4*(Fe*b+Ae);return[Le[Pe],Le[Pe+1],Le[Pe+2],Le[Pe+3]]}),me=ie.toDataURL("image/png")}Z.attr({"xlink:href":me,height:z,width:T,x:S,y:C})});t._promises.push(Ce)})}});var qEe=ye((qdr,OEe)=>{"use strict";var vCt=Oa();OEe.exports=function(t){vCt.select(t).selectAll(".im image").style("opacity",function(r){return r[0].trace.opacity})}});var VEe=ye((Bdr,UEe)=>{"use strict";var BEe=vf(),NEe=Dr(),dD=NEe.isArrayOrTypedArray,pCt=YT();UEe.exports=function(t,r,n){var i=t.cd[0],a=i.trace,o=t.xa,s=t.ya;if(!(BEe.inbox(r-i.x0,r-(i.x0+i.w*a.dx),0)>0||BEe.inbox(n-i.y0,n-(i.y0+i.h*a.dy),0)>0)){var l=Math.floor((r-i.x0)/a.dx),u=Math.floor(Math.abs(n-i.y0)/a.dy),c;if(a._hasZ?c=i.z[u][l]:a._hasSource&&(c=a._canvas.el.getContext("2d",{willReadFrequently:!0}).getImageData(l,u,1,1).data),!!c){var f=i.hi||a.hoverinfo,h;if(f){var d=f.split("+");d.indexOf("all")!==-1&&(d=["color"]),d.indexOf("color")!==-1&&(h=!0)}var v=pCt.colormodel[a.colormodel],_=v.colormodel||a.colormodel,b=_.length,p=a._scaler(c),k=v.suffix,E=[];(a.hovertemplate||h)&&(E.push("["+[p[0]+k[0],p[1]+k[1],p[2]+k[2]].join(", ")),b===4&&E.push(", "+p[3]+k[3]),E.push("]"),E=E.join(""),t.extraText=_.toUpperCase()+": "+E);var S;dD(a.hovertext)&&dD(a.hovertext[u])?S=a.hovertext[u][l]:dD(a.text)&&dD(a.text[u])&&(S=a.text[u][l]);var L=s.c2p(i.y0+(u+.5)*a.dy),x=i.x0+(l+.5)*a.dx,C=i.y0+(u+.5)*a.dy,M="["+c.slice(0,a.colormodel.length).join(", ")+"]";return[NEe.extendFlat(t,{index:[u,l],x0:o.c2p(i.x0+l*a.dx),x1:o.c2p(i.x0+(l+1)*a.dx),y0:L,y1:L,color:p,xVal:x,xLabelVal:x,yVal:C,yLabelVal:C,zLabelVal:M,text:S,hovertemplateLabels:{zLabel:M,colorLabel:E,"color[0]Label":p[0]+k[0],"color[1]Label":p[1]+k[1],"color[2]Label":p[2]+k[2],"color[3]Label":p[3]+k[3]}})]}}}});var HEe=ye((Ndr,GEe)=>{"use strict";GEe.exports=function(t,r){return"xVal"in r&&(t.x=r.xVal),"yVal"in r&&(t.y=r.yVal),r.xa&&(t.xaxis=r.xa),r.ya&&(t.yaxis=r.ya),t.color=r.color,t.colormodel=r.trace.colormodel,t.z||(t.z=r.color),t}});var WEe=ye((Udr,jEe)=>{"use strict";jEe.exports={attributes:uH(),supplyDefaults:V3e(),calc:REe(),plot:zEe(),style:qEe(),hoverPoints:VEe(),eventData:HEe(),moduleType:"trace",name:"image",basePlotModule:ph(),categories:["cartesian","svg","2dMap","noSortingByValue"],animatable:!1,meta:{}}});var ZEe=ye((Vdr,XEe)=>{"use strict";XEe.exports=WEe()});var M2=ye((Gdr,KEe)=>{"use strict";var vW=Gl(),gCt=Cc().attributes,mCt=ec(),yCt=Lh(),{hovertemplateAttrs:_Ct,texttemplateAttrs:xCt,templatefallbackAttrs:YEe}=Ll(),S2=Ao().extendFlat,bCt=Pd().pattern,vD=mCt({editType:"plot",arrayOk:!0,colorEditType:"plot"});KEe.exports={labels:{valType:"data_array",editType:"calc"},label0:{valType:"number",dflt:0,editType:"calc"},dlabel:{valType:"number",dflt:1,editType:"calc"},values:{valType:"data_array",editType:"calc"},marker:{colors:{valType:"data_array",editType:"calc"},line:{color:{valType:"color",dflt:yCt.defaultLine,arrayOk:!0,editType:"style"},width:{valType:"number",min:0,dflt:0,arrayOk:!0,editType:"style"},editType:"calc"},pattern:bCt,editType:"calc"},text:{valType:"data_array",editType:"plot"},hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"style"},scalegroup:{valType:"string",dflt:"",editType:"calc"},textinfo:{valType:"flaglist",flags:["label","text","value","percent"],extras:["none"],editType:"calc"},hoverinfo:S2({},vW.hoverinfo,{flags:["label","text","value","percent","name"]}),hovertemplate:_Ct({},{keys:["label","color","value","percent","text"]}),hovertemplatefallback:YEe(),texttemplate:xCt({editType:"plot"},{keys:["label","color","value","percent","text"]}),texttemplatefallback:YEe({editType:"plot"}),textposition:{valType:"enumerated",values:["inside","outside","auto","none"],dflt:"auto",arrayOk:!0,editType:"plot"},textfont:S2({},vD,{}),insidetextorientation:{valType:"enumerated",values:["horizontal","radial","tangential","auto"],dflt:"auto",editType:"plot"},insidetextfont:S2({},vD,{}),outsidetextfont:S2({},vD,{}),automargin:{valType:"boolean",dflt:!1,editType:"plot"},showlegend:S2({},vW.showlegend,{arrayOk:!0}),legend:S2({},vW.legend,{arrayOk:!0}),title:{text:{valType:"string",dflt:"",editType:"plot"},font:S2({},vD,{}),position:{valType:"enumerated",values:["top left","top center","top right","middle center","bottom left","bottom center","bottom right"],editType:"plot"},editType:"plot"},domain:gCt({name:"pie",trace:!0,editType:"calc"}),hole:{valType:"number",min:0,max:1,dflt:0,editType:"calc"},sort:{valType:"boolean",dflt:!0,editType:"calc"},direction:{valType:"enumerated",values:["clockwise","counterclockwise"],dflt:"counterclockwise",editType:"calc"},rotation:{valType:"angle",dflt:0,editType:"calc"},pull:{valType:"number",min:0,max:1,dflt:0,arrayOk:!0,editType:"calc"}}});var E2=ye((Hdr,QEe)=>{"use strict";var wCt=Eo(),kE=Dr(),TCt=M2(),ACt=Cc().defaults,SCt=r0().handleText,MCt=Dr().coercePattern;function JEe(e,t){var r=kE.isArrayOrTypedArray(e),n=kE.isArrayOrTypedArray(t),i=Math.min(r?e.length:1/0,n?t.length:1/0);if(isFinite(i)||(i=0),i&&n){for(var a,o=0;o<i;o++){var s=t[o];if(wCt(s)&&s>0){a=!0;break}}a||(i=0)}return{hasLabels:r,hasValues:n,len:i}}function $Ee(e,t,r,n,i){var a=n("marker.line.width");a&&n("marker.line.color",i?void 0:r.paper_bgcolor);var o=n("marker.colors");MCt(n,"marker.pattern",o),e.marker&&!t.marker.pattern.fgcolor&&(t.marker.pattern.fgcolor=e.marker.colors),t.marker.pattern.bgcolor||(t.marker.pattern.bgcolor=r.paper_bgcolor)}function ECt(e,t,r,n){function i(k,E){return kE.coerce(e,t,TCt,k,E)}var a=i("labels"),o=i("values"),s=JEe(a,o),l=s.len;if(t._hasLabels=s.hasLabels,t._hasValues=s.hasValues,!t._hasLabels&&t._hasValues&&(i("label0"),i("dlabel")),!l){t.visible=!1;return}t._length=l,$Ee(e,t,n,i,!0),i("scalegroup");var u=i("text"),c=i("texttemplate");i("texttemplatefallback");var f;if(c||(f=i("textinfo",kE.isArrayOrTypedArray(u)?"text+percent":"percent")),i("hovertext"),i("hovertemplate"),i("hovertemplatefallback"),c||f&&f!=="none"){var h=i("textposition");SCt(e,t,n,i,h,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1});var d=Array.isArray(h)||h==="auto",v=d||h==="outside";v&&i("automargin"),(h==="inside"||h==="auto"||Array.isArray(h))&&i("insidetextorientation")}else f==="none"&&i("textposition","none");ACt(t,n,i);var _=i("hole"),b=i("title.text");if(b){var p=i("title.position",_?"middle center":"top center");!_&&p==="middle center"&&(t.title.position="top center"),kE.coerceFont(i,"title.font",n.font)}i("sort"),i("direction"),i("rotation"),i("pull")}QEe.exports={handleLabelsAndValues:JEe,handleMarkerDefaults:$Ee,supplyDefaults:ECt}});var pD=ye((jdr,eke)=>{"use strict";eke.exports={hiddenlabels:{valType:"data_array",editType:"calc"},piecolorway:{valType:"colorlist",editType:"calc"},extendpiecolors:{valType:"boolean",dflt:!0,editType:"calc"}}});var rke=ye((Wdr,tke)=>{"use strict";var kCt=Dr(),CCt=pD();tke.exports=function(t,r){function n(i,a){return kCt.coerce(t,r,CCt,i,a)}n("hiddenlabels"),n("piecolorway",r.colorway),n("extendpiecolors")}});var TA=ye((Xdr,ake)=>{"use strict";var LCt=Eo(),pW=cd(),PCt=ka(),ICt={};function RCt(e,t){var r=[],n=e._fullLayout,i=n.hiddenlabels||[],a=t.labels,o=t.marker.colors||[],s=t.values,l=t._length,u=t._hasValues&&l,c,f;if(t.dlabel)for(a=new Array(l),c=0;c<l;c++)a[c]=String(t.label0+c*t.dlabel);var h={},d=ike(n["_"+t.type+"colormap"]),v=0,_=!1;for(c=0;c<l;c++){var b,p,k;if(u){if(b=s[c],!LCt(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,k=i.indexOf(p)!==-1,k||(v+=b),r.push({v:b,label:p,color:d(o[c],p),i:c,pts:[c],hidden:k})):(_=!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 S=t.type==="funnelarea"?_:t.sort;return S&&r.sort(function(L,x){return x.v-L.v}),r[0]&&(r[0].vTotal=v),r}function ike(e){return function(r,n){return!r||(r=pW(r),!r.isValid())?!1:(r=PCt.addOpacity(r,r.getAlpha()),e[n]||(e[n]=r),r)}}function DCt(e,t){var r=(t||{}).type;r||(r="pie");var n=e._fullLayout,i=e.calcdata,a=n[r+"colorway"],o=n["_"+r+"colormap"];n["extend"+r+"colors"]&&(a=nke(a,ICt));for(var s=0,l=0;l<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 nke(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(pW(e[r]).lighten(20).toHexString());for(r=0;r<e.length;r++)i.push(pW(e[r]).darken(20).toHexString());t[n]=i}return i}ake.exports={calc:RCt,crossTraceCalc:DCt,makePullColorFn:ike,generateExtendedColors:nke}});var ske=ye((Zdr,oke)=>{"use strict";var FCt=ip().appendArrayMultiPointValues;oke.exports=function(t,r){var n={curveNumber:r.index,pointNumbers:t.pts,data:r._input,fullData:r,label:t.label,color:t.color,value:t.v,percent:t.percent,text:t.text,bbox:t.bbox,v:t.v};return t.pts.length===1&&(n.pointNumber=n.i=t.pts[0]),FCt(n,r,t.pts),r.type==="funnelarea"&&(delete n.v,delete n.i),n}});var _D=ye((Ydr,kke)=>{"use strict";var Fp=Oa(),zCt=Mc(),gD=vf(),dke=ka(),Wy=So(),rv=Dr(),OCt=rv.strScale,lke=rv.strTranslate,gW=ru(),vke=bv(),qCt=vke.recordMinTextSize,BCt=vke.clearMinTextSize,pke=e2().TEXTPAD,ns=l_(),mD=ske(),uke=Dr().isValidTextValue;function NCt(e,t){var r=e._context.staticPlot,n=e._fullLayout,i=n._size;BCt("pie",n),yke(t,e),Ske(t,i);var a=rv.makeTraceGroups(n._pielayer,t,"trace").each(function(o){var s=Fp.select(this),l=o[0],u=l.trace;YCt(o),s.attr("stroke-linejoin","round"),s.each(function(){var c=Fp.select(this).selectAll("g.slice").data(o);c.enter().append("g").classed("slice",!0),c.exit().remove();var f=[[[],[]],[[],[]]],h=!1;c.each(function(S,L){if(S.hidden){Fp.select(this).selectAll("path,g").remove();return}S.pointNumber=S.i,S.curveNumber=u.index,f[S.pxmid[1]<0?0:1][S.pxmid[0]<0?0:1].push(S);var x=l.cx,C=l.cy,M=Fp.select(this),g=M.selectAll("path.surface").data([S]);if(g.enter().append("path").classed("surface",!0).style({"pointer-events":r?"none":"all"}),M.call(gke,e,o),u.pull){var P=+ns.castOption(u.pull,S.pts)||0;P>0&&(x+=P*S.pxmid[0],C+=P*S.pxmid[1])}S.cxFinal=x,S.cyFinal=C;function T(N,H,te,oe){var _e=oe*(H[0]-N[0]),Ee=oe*(H[1]-N[1]);return"a"+oe*l.r+","+oe*l.r+" 0 "+S.largeArc+(te?" 1 ":" 0 ")+_e+","+Ee}var z=u.hole;if(S.v===l.vTotal){var O="M"+(x+S.px0[0])+","+(C+S.px0[1])+T(S.px0,S.pxmid,!0,1)+T(S.pxmid,S.px0,!0,1)+"Z";z?g.attr("d","M"+(x+z*S.px0[0])+","+(C+z*S.px0[1])+T(S.px0,S.pxmid,!1,z)+T(S.pxmid,S.px0,!1,z)+"Z"+O):g.attr("d",O)}else{var V=T(S.px0,S.px1,!0,1);if(z){var G=1-z;g.attr("d","M"+(x+z*S.px1[0])+","+(C+z*S.px1[1])+T(S.px1,S.px0,!1,z)+"l"+G*S.px0[0]+","+G*S.px0[1]+V+"Z")}else g.attr("d","M"+x+","+C+"l"+S.px0[0]+","+S.px0[1]+V+"Z")}Mke(e,S,l);var Z=ns.castOption(u.textposition,S.pts),j=M.selectAll("g.slicetext").data(S.text&&Z!=="none"?[0]:[]);j.enter().append("g").classed("slicetext",!0),j.exit().remove(),j.each(function(){var N=rv.ensureSingle(Fp.select(this),"text","",function(ie){ie.attr("data-notex",1)}),H=rv.ensureUniformFontSize(e,Z==="outside"?VCt(u,S,n.font):mke(u,S,n.font));N.text(S.text).attr({class:"slicetext",transform:"","text-anchor":"middle"}).call(Wy.font,H).call(gW.convertToTspans,e);var te=Wy.bBox(N.node()),oe;if(Z==="outside")oe=hke(te,S);else if(oe=_ke(te,S,l),Z==="auto"&&oe.scale<1){var _e=rv.ensureUniformFontSize(e,u.outsidetextfont);N.call(Wy.font,_e),te=Wy.bBox(N.node()),oe=hke(te,S)}var Ee=oe.textPosAngle,Ce=Ee===void 0?S.pxmid:yD(l.r,Ee);if(oe.targetX=x+Ce[0]*oe.rCenter+(oe.x||0),oe.targetY=C+Ce[1]*oe.rCenter+(oe.y||0),Eke(oe,te),oe.outside){var me=oe.targetY;S.yLabelMin=me-te.height/2,S.yLabelMid=me,S.yLabelMax=me+te.height/2,S.labelExtraX=0,S.labelExtraY=0,h=!0}oe.fontSize=H.size,qCt(u.type,oe,n),o[L].transform=oe,rv.setTransormAndDisplay(N,oe)})});var d=Fp.select(this).selectAll("g.titletext").data(u.title.text?[0]:[]);if(d.enter().append("g").classed("titletext",!0),d.exit().remove(),d.each(function(){var S=rv.ensureSingle(Fp.select(this),"text","",function(C){C.attr("data-notex",1)}),L=u.title.text;u._meta&&(L=rv.templateString(L,u._meta)),S.text(L).attr({class:"titletext",transform:"","text-anchor":"middle"}).call(Wy.font,u.title.font).call(gW.convertToTspans,e);var x;u.title.position==="middle center"?x=jCt(l):x=Tke(l,i),S.attr("transform",lke(x.x,x.y)+OCt(Math.min(1,x.scale))+lke(x.tx,x.ty))}),h&&XCt(f,u),UCt(c,u),h&&u.automargin){var v=Wy.bBox(s.node()),_=u.domain,b=i.w*(_.x[1]-_.x[0]),p=i.h*(_.y[1]-_.y[0]),k=(.5*b-l.r)/i.w,E=(.5*p-l.r)/i.h;zCt.autoMargin(e,"pie."+u.uid+".automargin",{xl:_.x[0]-k,xr:_.x[1]+k,yb:_.y[0]-E,yt:_.y[1]+E,l:Math.max(l.cx-l.r-v.left,0),r:Math.max(v.right-(l.cx+l.r),0),b:Math.max(v.bottom-(l.cy+l.r),0),t:Math.max(l.cy-l.r-v.top,0),pad:5})}})});setTimeout(function(){a.selectAll("tspan").each(function(){var o=Fp.select(this);o.attr("dy")&&o.attr("dy",o.attr("dy"))})},0)}function UCt(e,t){e.each(function(r){var n=Fp.select(this);if(!r.labelExtraX&&!r.labelExtraY){n.select("path.textline").remove();return}var i=n.select("g.slicetext text");r.transform.targetX+=r.labelExtraX,r.transform.targetY+=r.labelExtraY,rv.setTransormAndDisplay(i,r.transform);var a=r.cxFinal+r.pxmid[0],o=r.cyFinal+r.pxmid[1],s="M"+a+","+o,l=(r.yLabelMax-r.yLabelMin)*(r.pxmid[0]<0?-1:1)/4;if(r.labelExtraX){var u=r.labelExtraX*r.pxmid[1]/r.pxmid[0],c=r.yLabelMid+r.labelExtraY-(r.cyFinal+r.pxmid[1]);Math.abs(u)>Math.abs(c)?s+="l"+c*r.pxmid[0]/r.pxmid[1]+","+c+"H"+(a+r.labelExtraX+l):s+="l"+r.labelExtraX+","+u+"v"+(c-u)+"h"+l}else s+="V"+(r.yLabelMid+r.labelExtraY)+"h"+l;rv.ensureSingle(n,"path","textline").call(dke.stroke,t.outsidetextfont.color).attr({"stroke-width":Math.min(2,t.outsidetextfont.size/8),d:s,fill:"none"})})}function gke(e,t,r){var n=r[0],i=n.cx,a=n.cy,o=n.trace,s=o.type==="funnelarea";"_hasHoverLabel"in o||(o._hasHoverLabel=!1),"_hasHoverEvent"in o||(o._hasHoverEvent=!1),e.on("mouseover",function(l){var u=t._fullLayout,c=t._fullData[o.index];if(!(t._dragging||u.hovermode===!1)){var f=c.hoverinfo;if(Array.isArray(f)&&(f=gD.castHoverinfo({hoverinfo:[ns.castOption(f,l.pts)],_module:o._module},u,0)),f==="all"&&(f="label+text+value+percent+name"),c.hovertemplate||f!=="none"&&f!=="skip"&&f){var h=l.rInscribed||0,d=i+l.pxmid[0]*(1-h),v=a+l.pxmid[1]*(1-h),_=u.separators,b=[];if(f&&f.indexOf("label")!==-1&&b.push(l.label),l.text=ns.castOption(c.hovertext||c.text,l.pts),f&&f.indexOf("text")!==-1){var p=l.text;rv.isValidTextValue(p)&&b.push(p)}l.value=l.v,l.valueLabel=ns.formatPieValue(l.v,_),f&&f.indexOf("value")!==-1&&b.push(l.valueLabel),l.percent=l.v/n.vTotal,l.percentLabel=ns.formatPiePercent(l.percent,_),f&&f.indexOf("percent")!==-1&&b.push(l.percentLabel);var k=c.hoverlabel,E=k.font,S=[];gD.loneHover({trace:o,x0:d-h*n.r,x1:d+h*n.r,y:v,_x0:s?i+l.TL[0]:d-h*n.r,_x1:s?i+l.TR[0]:d+h*n.r,_y0:s?a+l.TL[1]:v-h*n.r,_y1:s?a+l.BL[1]:v+h*n.r,text:b.join("<br>"),name:c.hovertemplate||f.indexOf("name")!==-1?c.name:void 0,idealAlign:l.pxmid[0]<0?"left":"right",color:ns.castOption(k.bgcolor,l.pts)||l.color,borderColor:ns.castOption(k.bordercolor,l.pts),fontFamily:ns.castOption(E.family,l.pts),fontSize:ns.castOption(E.size,l.pts),fontColor:ns.castOption(E.color,l.pts),nameLength:ns.castOption(k.namelength,l.pts),textAlign:ns.castOption(k.align,l.pts),hovertemplate:ns.castOption(c.hovertemplate,l.pts),hovertemplateLabels:l,eventData:[mD(l,c)]},{container:u._hoverlayer.node(),outerContainer:u._paper.node(),gd:t,inOut_bbox:S}),l.bbox=S[0],o._hasHoverLabel=!0}o._hasHoverEvent=!0,t.emit("plotly_hover",{points:[mD(l,c)],event:Fp.event})}}),e.on("mouseout",function(l){var u=t._fullLayout,c=t._fullData[o.index],f=Fp.select(this).datum();o._hasHoverEvent&&(l.originalEvent=Fp.event,t.emit("plotly_unhover",{points:[mD(f,c)],event:Fp.event}),o._hasHoverEvent=!1),o._hasHoverLabel&&(gD.loneUnhover(u._hoverlayer.node()),o._hasHoverLabel=!1)}),e.on("click",function(l){var u=t._fullLayout,c=t._fullData[o.index];t._dragging||u.hovermode===!1||(t._hoverdata=[mD(l,c)],gD.click(t,Fp.event))})}function VCt(e,t,r){var n=ns.castOption(e.outsidetextfont.color,t.pts)||ns.castOption(e.textfont.color,t.pts)||r.color,i=ns.castOption(e.outsidetextfont.family,t.pts)||ns.castOption(e.textfont.family,t.pts)||r.family,a=ns.castOption(e.outsidetextfont.size,t.pts)||ns.castOption(e.textfont.size,t.pts)||r.size,o=ns.castOption(e.outsidetextfont.weight,t.pts)||ns.castOption(e.textfont.weight,t.pts)||r.weight,s=ns.castOption(e.outsidetextfont.style,t.pts)||ns.castOption(e.textfont.style,t.pts)||r.style,l=ns.castOption(e.outsidetextfont.variant,t.pts)||ns.castOption(e.textfont.variant,t.pts)||r.variant,u=ns.castOption(e.outsidetextfont.textcase,t.pts)||ns.castOption(e.textfont.textcase,t.pts)||r.textcase,c=ns.castOption(e.outsidetextfont.lineposition,t.pts)||ns.castOption(e.textfont.lineposition,t.pts)||r.lineposition,f=ns.castOption(e.outsidetextfont.shadow,t.pts)||ns.castOption(e.textfont.shadow,t.pts)||r.shadow;return{color:n,family:i,size:a,weight:o,style:s,variant:l,textcase:u,lineposition:c,shadow:f}}function mke(e,t,r){var n=ns.castOption(e.insidetextfont.color,t.pts);!n&&e._input.textfont&&(n=ns.castOption(e._input.textfont.color,t.pts));var i=ns.castOption(e.insidetextfont.family,t.pts)||ns.castOption(e.textfont.family,t.pts)||r.family,a=ns.castOption(e.insidetextfont.size,t.pts)||ns.castOption(e.textfont.size,t.pts)||r.size,o=ns.castOption(e.insidetextfont.weight,t.pts)||ns.castOption(e.textfont.weight,t.pts)||r.weight,s=ns.castOption(e.insidetextfont.style,t.pts)||ns.castOption(e.textfont.style,t.pts)||r.style,l=ns.castOption(e.insidetextfont.variant,t.pts)||ns.castOption(e.textfont.variant,t.pts)||r.variant,u=ns.castOption(e.insidetextfont.textcase,t.pts)||ns.castOption(e.textfont.textcase,t.pts)||r.textcase,c=ns.castOption(e.insidetextfont.lineposition,t.pts)||ns.castOption(e.textfont.lineposition,t.pts)||r.lineposition,f=ns.castOption(e.insidetextfont.shadow,t.pts)||ns.castOption(e.textfont.shadow,t.pts)||r.shadow;return{color:n||dke.contrast(t.color),family:i,size:a,weight:o,style:s,variant:l,textcase:u,lineposition:c,shadow:f}}function yke(e,t){for(var r,n,i=0;i<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(gW.convertToTspans,t),s=Wy.bBox(o.node(),!0);r.titleBox={width:s.width,height:s.height},o.remove()}}function _ke(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",_=[],b;if(!v){var p=function(M,g){if(GCt(t,M)){var P=Math.abs(M-t.startangle),T=Math.abs(M-t.stopangle),z=P<T?P:T;g==="tan"?b=fke(e,n,o,z,0):b=cke(e,n,o,z,Math.PI/2),b.textPosAngle=M,_.push(b)}},k;if(f||h){for(k=4;k>=-4;k-=2)p(Math.PI*k,"tan");for(k=4;k>=-4;k-=2)p(Math.PI*(k+1),"tan")}if(f||d){for(k=4;k>=-4;k-=2)p(Math.PI*(k+1.5),"rad");for(k=4;k>=-4;k-=2)p(Math.PI*(k+.5),"rad")}}if(s||v||f){var E=Math.sqrt(e.width*e.width+e.height*e.height);if(b={scale:i*n*2/E,rCenter:1-i,rotate:0},b.textPosAngle=(t.startangle+t.stopangle)/2,b.scale>=1)return b;_.push(b)}(v||d)&&(b=cke(e,n,o,l,u),b.textPosAngle=(t.startangle+t.stopangle)/2,_.push(b)),(v||h)&&(b=fke(e,n,o,l,u),b.textPosAngle=(t.startangle+t.stopangle)/2,_.push(b));for(var S=0,L=0,x=0;x<_.length;x++){var C=_[x].scale;if(L<C&&(L=C,S=x),!v&&L>=1)break}return _[S]}function GCt(e,t){var r=e.startangle,n=e.stopangle;return r>t&&t>n||r<t&&t<n}function cke(e,t,r,n,i){t=Math.max(0,t-2*pke);var a=e.width/e.height,o=wke(a,n,t,r);return{scale:o*2/e.height,rCenter:xke(a,o/t),rotate:bke(i)}}function fke(e,t,r,n,i){t=Math.max(0,t-2*pke);var a=e.height/e.width,o=wke(a,n,t,r);return{scale:o*2/e.width,rCenter:xke(a,o/t),rotate:bke(i+Math.PI/2)}}function xke(e,t){return Math.cos(t)-e*t}function bke(e){return(180/Math.PI*e+720)%180-90}function wke(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 HCt(e,t){return e.v===t.vTotal&&!t.trace.hole?1:Math.min(1/(1+1/Math.sin(e.halfangle)),e.ring/2)}function hke(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 jCt(e){var t=Math.sqrt(e.titleBox.width*e.titleBox.width+e.titleBox.height*e.titleBox.height);return{x:e.cx,y:e.cy,scale:e.trace.hole*e.r*2/t,tx:0,ty:-e.titleBox.height/2+e.trace.title.font.size}}function Tke(e,t){var r=1,n=1,i,a=e.trace,o={x:e.cx,y:e.cy},s={tx:0,ty:0};s.ty+=a.title.font.size,i=Ake(a),a.title.position.indexOf("top")!==-1?(o.y-=(1+i)*e.r,s.ty-=e.titleBox.height):a.title.position.indexOf("bottom")!==-1&&(o.y+=(1+i)*e.r);var l=WCt(e.r,e.trace.aspectratio),u=t.w*(a.domain.x[1]-a.domain.x[0])/2;return a.title.position.indexOf("left")!==-1?(u=u+l,o.x-=(1+i)*l,s.tx+=e.titleBox.width/2):a.title.position.indexOf("center")!==-1?u*=2:a.title.position.indexOf("right")!==-1&&(u=u+l,o.x+=(1+i)*l,s.tx-=e.titleBox.width/2),r=u/e.titleBox.width,n=mW(e,t)/e.titleBox.height,{x:o.x,y:o.y,scale:Math.min(r,n),tx:s.tx,ty:s.ty}}function WCt(e,t){return e/(t===void 0?1:t)}function mW(e,t){var r=e.trace,n=t.h*(r.domain.y[1]-r.domain.y[0]);return Math.min(e.titleBox.height,n/2)}function Ake(e){var t=e.pull;if(!t)return 0;var r;if(rv.isArrayOrTypedArray(t))for(t=0,r=0;r<e.pull.length;r++)e.pull[r]>t&&(t=e.pull[r]);return t}function XCt(e,t){var r,n,i,a,o,s,l,u,c,f,h,d,v;function _(E,S){return E.pxmid[1]-S.pxmid[1]}function b(E,S){return S.pxmid[1]-E.pxmid[1]}function p(E,S){S||(S={});var L=S.labelExtraY+(n?S.yLabelMax:S.yLabelMin),x=n?E.yLabelMin:E.yLabelMax,C=n?E.yLabelMax:E.yLabelMin,M=E.cyFinal+o(E.px0[1],E.px1[1]),g=L-x,P,T,z,O,V,G;if(g*l>0&&(E.labelExtraY=g),!!rv.isArrayOrTypedArray(t.pull))for(T=0;T<f.length;T++)z=f[T],!(z===E||(ns.castOption(t.pull,E.pts)||0)>=(ns.castOption(t.pull,z.pts)||0))&&((E.pxmid[1]-z.pxmid[1])*l>0?(O=z.cyFinal+o(z.px0[1],z.px1[1]),g=O-x-E.labelExtraY,g*l>0&&(E.labelExtraY+=g)):(C+E.labelExtraY-M)*l>0&&(P=3*s*Math.abs(T-f.indexOf(E)),V=z.cxFinal+a(z.px0[0],z.px1[0]),G=V+P-(E.cxFinal+E.pxmid[0])-E.labelExtraX,G*s>0&&(E.labelExtraX+=G)))}for(n=0;n<2;n++)for(i=n?_:b,o=n?Math.max:Math.min,l=n?1:-1,r=0;r<2;r++){for(a=r?Math.max:Math.min,s=r?1:-1,u=e[n][r],u.sort(i),c=e[1-n][r],f=c.concat(u),d=[],h=0;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 k=h&&d[h-1];v&&!h&&(k=v),p(d[h],k)}}}function Ske(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-=mW(i,t));var u=s/2,c=l/2;a.type==="funnelarea"&&!a.scalegroup&&(c/=a.aspectratio),i.r=Math.min(u,c)/(1+Ake(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-=mW(i,t)),a.scalegroup&&r.indexOf(a.scalegroup)===-1&&r.push(a.scalegroup)}ZCt(e,r)}function ZCt(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 YCt(e){var t=e[0],r=t.r,n=t.trace,i=ns.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=yD(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=yD(r,i),u.midangle=i,i+=a*u.v/2,c=yD(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=HCt(u,t))}function yD(e,t){return[e*Math.sin(t),-e*Math.cos(t)]}function Mke(e,t,r){var n=e._fullLayout,i=r.trace,a=i.texttemplate,o=i.textinfo;if(!a&&o&&o!=="none"){var s=o.split("+"),l=function(S){return s.indexOf(S)!==-1},u=l("label"),c=l("text"),f=l("value"),h=l("percent"),d=n.separators,v;if(v=u?[t.label]:[],c){var _=ns.getFirstFilled(i.text,t.pts);uke(_)&&v.push(_)}f&&v.push(ns.formatPieValue(t.v,d)),h&&v.push(ns.formatPiePercent(t.v/r.vTotal,d)),t.text=v.join("<br>")}function b(S){return{label:S.label,value:S.v,valueLabel:ns.formatPieValue(S.v,n.separators),percent:S.v/r.vTotal,percentLabel:ns.formatPiePercent(S.v/r.vTotal,n.separators),color:S.color,text:S.text,customdata:rv.castOption(i,S.i,"customdata")}}if(a){var p=rv.castOption(i,t.i,"texttemplate");if(!p)t.text="";else{var k=b(t),E=ns.getFirstFilled(i.text,t.pts);(uke(E)||E==="")&&(k.text=E),t.text=rv.texttemplateString({data:[k,i._meta],fallback:i.texttemplatefallback,labels:k,locale:e._fullLayout._d3locale,template:p})}}}function Eke(e,t){var r=e.rotate*Math.PI/180,n=Math.cos(r),i=Math.sin(r),a=(t.left+t.right)/2,o=(t.top+t.bottom)/2;e.textX=a*n-o*i,e.textY=a*i+o*n,e.noCenter=!0}kke.exports={plot:NCt,formatSliceLabel:Mke,transformInsideText:_ke,determineInsideTextFont:mke,positionTitleOutside:Tke,prerenderTitles:yke,layoutAreas:Ske,attachFxHandlers:gke,computeTransform:Eke}});var Pke=ye((Kdr,Lke)=>{"use strict";var Cke=Oa(),KCt=B3(),JCt=bv().resizeText;Lke.exports=function(t){var r=t._fullLayout._pielayer.selectAll(".trace");JCt(t,r,"pie"),r.each(function(n){var i=n[0],a=i.trace,o=Cke.select(this);o.style({opacity:a.opacity}),o.selectAll("path.surface").each(function(s){Cke.select(this).call(KCt,s,a,t)})})}});var Rke=ye(AA=>{"use strict";var Ike=Mc();AA.name="pie";AA.plot=function(e,t,r,n){Ike.plotBasePlot(AA.name,e,t,r,n)};AA.clean=function(e,t,r,n){Ike.cleanBasePlot(AA.name,e,t,r,n)}});var Fke=ye(($dr,Dke)=>{"use strict";Dke.exports={attributes:M2(),supplyDefaults:E2().supplyDefaults,supplyLayoutDefaults:rke(),layoutAttributes:pD(),calc:TA().calc,crossTraceCalc:TA().crossTraceCalc,plot:_D().plot,style:Pke(),styleOne:B3(),moduleType:"trace",name:"pie",basePlotModule:Rke(),categories:["pie-like","pie","showLegend"],meta:{}}});var Oke=ye((Qdr,zke)=>{"use strict";zke.exports=Fke()});var Bke=ye(SA=>{"use strict";var qke=Mc();SA.name="sunburst";SA.plot=function(e,t,r,n){qke.plotBasePlot(SA.name,e,t,r,n)};SA.clean=function(e,t,r,n){qke.cleanBasePlot(SA.name,e,t,r,n)}});var yW=ye((tvr,Nke)=>{"use strict";Nke.exports={CLICK_TRANSITION_TIME:750,CLICK_TRANSITION_EASING:"linear",eventDataKeys:["currentPath","root","entry","percentRoot","percentEntry","percentParent"]}});var LE=ye((rvr,Gke)=>{"use strict";var $Ct=Gl(),{hovertemplateAttrs:QCt,texttemplateAttrs:e6t,templatefallbackAttrs:Uke}=Ll(),t6t=Tu(),r6t=Cc().attributes,Xy=M2(),Vke=yW(),CE=Ao().extendFlat,i6t=Pd().pattern;Gke.exports={labels:{valType:"data_array",editType:"calc"},parents:{valType:"data_array",editType:"calc"},values:{valType:"data_array",editType:"calc"},branchvalues:{valType:"enumerated",values:["remainder","total"],dflt:"remainder",editType:"calc"},count:{valType:"flaglist",flags:["branches","leaves"],dflt:"leaves",editType:"calc"},level:{valType:"any",editType:"plot",anim:!0},maxdepth:{valType:"integer",editType:"plot",dflt:-1},marker:CE({colors:{valType:"data_array",editType:"calc"},line:{color:CE({},Xy.marker.line.color,{dflt:null}),width:CE({},Xy.marker.line.width,{dflt:1}),editType:"calc"},pattern:i6t,editType:"calc"},t6t("marker",{colorAttr:"colors",anim:!1})),leaf:{opacity:{valType:"number",editType:"style",min:0,max:1},editType:"plot"},text:Xy.text,textinfo:{valType:"flaglist",flags:["label","text","value","current path","percent root","percent entry","percent parent"],extras:["none"],editType:"plot"},texttemplate:e6t({editType:"plot"},{keys:Vke.eventDataKeys.concat(["label","value"])}),texttemplatefallback:Uke({editType:"plot"}),hovertext:Xy.hovertext,hoverinfo:CE({},$Ct.hoverinfo,{flags:["label","text","value","name","current path","percent root","percent entry","percent parent"],dflt:"label+text+value+name"}),hovertemplate:QCt({},{keys:Vke.eventDataKeys}),hovertemplatefallback:Uke(),textfont:Xy.textfont,insidetextorientation:Xy.insidetextorientation,insidetextfont:Xy.insidetextfont,outsidetextfont:CE({},Xy.outsidetextfont,{}),rotation:{valType:"angle",dflt:0,editType:"plot"},sort:Xy.sort,root:{color:{valType:"color",editType:"calc",dflt:"rgba(0,0,0,0)"},editType:"calc"},domain:r6t({name:"sunburst",trace:!0,editType:"calc"})}});var _W=ye((ivr,Hke)=>{"use strict";Hke.exports={sunburstcolorway:{valType:"colorlist",editType:"calc"},extendsunburstcolors:{valType:"boolean",dflt:!0,editType:"calc"}}});var Zke=ye((nvr,Xke)=>{"use strict";var jke=Dr(),n6t=LE(),a6t=Cc().defaults,o6t=r0().handleText,s6t=E2().handleMarkerDefaults,Wke=tc(),l6t=Wke.hasColorscale,u6t=Wke.handleDefaults;Xke.exports=function(t,r,n,i){function a(h,d){return jke.coerce(t,r,n6t,h,d)}var o=a("labels"),s=a("parents");if(!o||!o.length||!s||!s.length){r.visible=!1;return}var l=a("values");l&&l.length?a("branchvalues"):a("count"),a("level"),a("maxdepth"),s6t(t,r,i,a);var u=r._hasColorscale=l6t(t,"marker","colors")||(t.marker||{}).coloraxis;u&&u6t(t,r,i,a,{prefix:"marker.",cLetter:"c"}),a("leaf.opacity",u?1:.7);var c=a("text");a("texttemplate"),a("texttemplatefallback"),r.texttemplate||a("textinfo",jke.isArrayOrTypedArray(c)?"text+label":"label"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback");var f="auto";o6t(t,r,i,a,f,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),a("insidetextorientation"),a("sort"),a("rotation"),a("root.color"),a6t(r,i,a),r._length=null}});var Kke=ye((avr,Yke)=>{"use strict";var c6t=Dr(),f6t=_W();Yke.exports=function(t,r){function n(i,a){return c6t.coerce(t,r,f6t,i,a)}n("sunburstcolorway",r.colorway),n("extendsunburstcolors")}});var PE=ye((xD,Jke)=>{(function(e,t){typeof xD=="object"&&typeof Jke!="undefined"?t(xD):(e=e||self,t(e.d3=e.d3||{}))})(xD,function(e){"use strict";function t(je,tt){return je.parent===tt.parent?1:2}function r(je){return je.reduce(n,0)/je.length}function n(je,tt){return je+tt.x}function i(je){return 1+je.reduce(a,0)}function a(je,tt){return Math.max(je,tt.y)}function o(je){for(var tt;tt=je.children;)je=tt[0];return je}function s(je){for(var tt;tt=je.children;)je=tt[tt.length-1];return je}function l(){var je=t,tt=1,xt=1,Ie=!1;function xe(ke){var vt,ir=0;ke.eachAfter(function($r){var di=$r.children;di?($r.x=r(di),$r.y=i(di)):($r.x=vt?ir+=je($r,vt):0,$r.y=0,vt=$r)});var ar=o(ke),vr=s(ke),ii=ar.x-je(ar,vr)/2,pi=vr.x+je(vr,ar)/2;return ke.eachAfter(Ie?function($r){$r.x=($r.x-ke.x)*tt,$r.y=(ke.y-$r.y)*xt}:function($r){$r.x=($r.x-ii)/(pi-ii)*tt,$r.y=(1-(ke.y?$r.y/ke.y:1))*xt})}return xe.separation=function(ke){return arguments.length?(je=ke,xe):je},xe.size=function(ke){return arguments.length?(Ie=!1,tt=+ke[0],xt=+ke[1],xe):Ie?null:[tt,xt]},xe.nodeSize=function(ke){return arguments.length?(Ie=!0,tt=+ke[0],xt=+ke[1],xe):Ie?[tt,xt]:null},xe}function u(je){var tt=0,xt=je.children,Ie=xt&&xt.length;if(!Ie)tt=1;else for(;--Ie>=0;)tt+=xt[Ie].value;je.value=tt}function c(){return this.eachAfter(u)}function f(je){var tt=this,xt,Ie=[tt],xe,ke,vt;do for(xt=Ie.reverse(),Ie=[];tt=xt.pop();)if(je(tt),xe=tt.children,xe)for(ke=0,vt=xe.length;ke<vt;++ke)Ie.push(xe[ke]);while(Ie.length);return this}function h(je){for(var tt=this,xt=[tt],Ie,xe;tt=xt.pop();)if(je(tt),Ie=tt.children,Ie)for(xe=Ie.length-1;xe>=0;--xe)xt.push(Ie[xe]);return this}function d(je){for(var tt=this,xt=[tt],Ie=[],xe,ke,vt;tt=xt.pop();)if(Ie.push(tt),xe=tt.children,xe)for(ke=0,vt=xe.length;ke<vt;++ke)xt.push(xe[ke]);for(;tt=Ie.pop();)je(tt);return this}function v(je){return this.eachAfter(function(tt){for(var xt=+je(tt.data)||0,Ie=tt.children,xe=Ie&&Ie.length;--xe>=0;)xt+=Ie[xe].value;tt.value=xt})}function _(je){return this.eachBefore(function(tt){tt.children&&tt.children.sort(je)})}function b(je){for(var tt=this,xt=p(tt,je),Ie=[tt];tt!==xt;)tt=tt.parent,Ie.push(tt);for(var xe=Ie.length;je!==xt;)Ie.splice(xe,0,je),je=je.parent;return Ie}function p(je,tt){if(je===tt)return je;var xt=je.ancestors(),Ie=tt.ancestors(),xe=null;for(je=xt.pop(),tt=Ie.pop();je===tt;)xe=je,je=xt.pop(),tt=Ie.pop();return xe}function k(){for(var je=this,tt=[je];je=je.parent;)tt.push(je);return tt}function E(){var je=[];return this.each(function(tt){je.push(tt)}),je}function S(){var je=[];return this.eachBefore(function(tt){tt.children||je.push(tt)}),je}function L(){var je=this,tt=[];return je.each(function(xt){xt!==je&&tt.push({source:xt.parent,target:xt})}),tt}function x(je,tt){var xt=new T(je),Ie=+je.value&&(xt.value=je.value),xe,ke=[xt],vt,ir,ar,vr;for(tt==null&&(tt=M);xe=ke.pop();)if(Ie&&(xe.value=+xe.data.value),(ir=tt(xe.data))&&(vr=ir.length))for(xe.children=new Array(vr),ar=vr-1;ar>=0;--ar)ke.push(vt=xe.children[ar]=new T(ir[ar])),vt.parent=xe,vt.depth=xe.depth+1;return xt.eachBefore(P)}function C(){return x(this).eachBefore(g)}function M(je){return je.children}function g(je){je.data=je.data.data}function P(je){var tt=0;do je.height=tt;while((je=je.parent)&&je.height<++tt)}function T(je){this.data=je,this.depth=this.height=0,this.parent=null}T.prototype=x.prototype={constructor:T,count:c,each:f,eachAfter:d,eachBefore:h,sum:v,sort:_,path:b,ancestors:k,descendants:E,leaves:S,links:L,copy:C};var z=Array.prototype.slice;function O(je){for(var tt=je.length,xt,Ie;tt;)Ie=Math.random()*tt--|0,xt=je[tt],je[tt]=je[Ie],je[Ie]=xt;return je}function V(je){for(var tt=0,xt=(je=O(z.call(je))).length,Ie=[],xe,ke;tt<xt;)xe=je[tt],ke&&j(ke,xe)?++tt:(ke=H(Ie=G(Ie,xe)),tt=0);return ke}function G(je,tt){var xt,Ie;if(N(tt,je))return[tt];for(xt=0;xt<je.length;++xt)if(Z(tt,je[xt])&&N(oe(je[xt],tt),je))return[je[xt],tt];for(xt=0;xt<je.length-1;++xt)for(Ie=xt+1;Ie<je.length;++Ie)if(Z(oe(je[xt],je[Ie]),tt)&&Z(oe(je[xt],tt),je[Ie])&&Z(oe(je[Ie],tt),je[xt])&&N(_e(je[xt],je[Ie],tt),je))return[je[xt],je[Ie],tt];throw new Error}function Z(je,tt){var xt=je.r-tt.r,Ie=tt.x-je.x,xe=tt.y-je.y;return xt<0||xt*xt<Ie*Ie+xe*xe}function j(je,tt){var xt=je.r-tt.r+1e-6,Ie=tt.x-je.x,xe=tt.y-je.y;return xt>0&&xt*xt>Ie*Ie+xe*xe}function N(je,tt){for(var xt=0;xt<tt.length;++xt)if(!j(je,tt[xt]))return!1;return!0}function H(je){switch(je.length){case 1:return te(je[0]);case 2:return oe(je[0],je[1]);case 3:return _e(je[0],je[1],je[2])}}function te(je){return{x:je.x,y:je.y,r:je.r}}function oe(je,tt){var xt=je.x,Ie=je.y,xe=je.r,ke=tt.x,vt=tt.y,ir=tt.r,ar=ke-xt,vr=vt-Ie,ii=ir-xe,pi=Math.sqrt(ar*ar+vr*vr);return{x:(xt+ke+ar/pi*ii)/2,y:(Ie+vt+vr/pi*ii)/2,r:(pi+xe+ir)/2}}function _e(je,tt,xt){var Ie=je.x,xe=je.y,ke=je.r,vt=tt.x,ir=tt.y,ar=tt.r,vr=xt.x,ii=xt.y,pi=xt.r,$r=Ie-vt,di=Ie-vr,ji=xe-ir,In=xe-ii,wi=ar-ke,On=pi-ke,qn=Ie*Ie+xe*xe-ke*ke,Fn=qn-vt*vt-ir*ir+ar*ar,ra=qn-vr*vr-ii*ii+pi*pi,la=di*ji-$r*In,Ut=(ji*ra-In*Fn)/(la*2)-Ie,wt=(In*wi-ji*On)/la,rr=(di*Fn-$r*ra)/(la*2)-xe,nr=($r*On-di*wi)/la,Er=wt*wt+nr*nr-1,Xr=2*(ke+Ut*wt+rr*nr),ri=Ut*Ut+rr*rr-ke*ke,Qr=-(Er?(Xr+Math.sqrt(Xr*Xr-4*Er*ri))/(2*Er):ri/Xr);return{x:Ie+Ut+wt*Qr,y:xe+rr+nr*Qr,r:Qr}}function Ee(je,tt,xt){var Ie=je.x-tt.x,xe,ke,vt=je.y-tt.y,ir,ar,vr=Ie*Ie+vt*vt;vr?(ke=tt.r+xt.r,ke*=ke,ar=je.r+xt.r,ar*=ar,ke>ar?(xe=(vr+ar-ke)/(2*vr),ir=Math.sqrt(Math.max(0,ar/vr-xe*xe)),xt.x=je.x-xe*Ie-ir*vt,xt.y=je.y-xe*vt+ir*Ie):(xe=(vr+ke-ar)/(2*vr),ir=Math.sqrt(Math.max(0,ke/vr-xe*xe)),xt.x=tt.x+xe*Ie-ir*vt,xt.y=tt.y+xe*vt+ir*Ie)):(xt.x=tt.x+xt.r,xt.y=tt.y)}function Ce(je,tt){var xt=je.r+tt.r-1e-6,Ie=tt.x-je.x,xe=tt.y-je.y;return xt>0&&xt*xt>Ie*Ie+xe*xe}function me(je){var tt=je._,xt=je.next._,Ie=tt.r+xt.r,xe=(tt.x*xt.r+xt.x*tt.r)/Ie,ke=(tt.y*xt.r+xt.y*tt.r)/Ie;return xe*xe+ke*ke}function ie(je){this._=je,this.next=null,this.previous=null}function Se(je){if(!(xe=je.length))return 0;var tt,xt,Ie,xe,ke,vt,ir,ar,vr,ii,pi;if(tt=je[0],tt.x=0,tt.y=0,!(xe>1))return tt.r;if(xt=je[1],tt.x=-xt.r,xt.x=tt.r,xt.y=0,!(xe>2))return tt.r+xt.r;Ee(xt,tt,Ie=je[2]),tt=new ie(tt),xt=new ie(xt),Ie=new ie(Ie),tt.next=Ie.previous=xt,xt.next=tt.previous=Ie,Ie.next=xt.previous=tt;e:for(ir=3;ir<xe;++ir){Ee(tt._,xt._,Ie=je[ir]),Ie=new ie(Ie),ar=xt.next,vr=tt.previous,ii=xt._.r,pi=tt._.r;do if(ii<=pi){if(Ce(ar._,Ie._)){xt=ar,tt.next=xt,xt.previous=tt,--ir;continue e}ii+=ar._.r,ar=ar.next}else{if(Ce(vr._,Ie._)){tt=vr,tt.next=xt,xt.previous=tt,--ir;continue e}pi+=vr._.r,vr=vr.previous}while(ar!==vr.next);for(Ie.previous=tt,Ie.next=xt,tt.next=xt.previous=xt=Ie,ke=me(tt);(Ie=Ie.next)!==xt;)(vt=me(Ie))<ke&&(tt=Ie,ke=vt);xt=tt.next}for(tt=[xt._],Ie=xt;(Ie=Ie.next)!==xt;)tt.push(Ie._);for(Ie=V(tt),ir=0;ir<xe;++ir)tt=je[ir],tt.x-=Ie.x,tt.y-=Ie.y;return Ie.r}function Le(je){return Se(je),je}function Ae(je){return je==null?null:Fe(je)}function Fe(je){if(typeof je!="function")throw new Error;return je}function Pe(){return 0}function ge(je){return function(){return je}}function Re(je){return Math.sqrt(je.value)}function ce(){var je=null,tt=1,xt=1,Ie=Pe;function xe(ke){return ke.x=tt/2,ke.y=xt/2,je?ke.eachBefore(Ze(je)).eachAfter(ut(Ie,.5)).eachBefore(pt(1)):ke.eachBefore(Ze(Re)).eachAfter(ut(Pe,1)).eachAfter(ut(Ie,ke.r/Math.min(tt,xt))).eachBefore(pt(Math.min(tt,xt)/(2*ke.r))),ke}return xe.radius=function(ke){return arguments.length?(je=Ae(ke),xe):je},xe.size=function(ke){return arguments.length?(tt=+ke[0],xt=+ke[1],xe):[tt,xt]},xe.padding=function(ke){return arguments.length?(Ie=typeof ke=="function"?ke:ge(+ke),xe):Ie},xe}function Ze(je){return function(tt){tt.children||(tt.r=Math.max(0,+je(tt)||0))}}function ut(je,tt){return function(xt){if(Ie=xt.children){var Ie,xe,ke=Ie.length,vt=je(xt)*tt||0,ir;if(vt)for(xe=0;xe<ke;++xe)Ie[xe].r+=vt;if(ir=Se(Ie),vt)for(xe=0;xe<ke;++xe)Ie[xe].r-=vt;xt.r=ir+vt}}}function pt(je){return function(tt){var xt=tt.parent;tt.r*=je,xt&&(tt.x=xt.x+je*tt.x,tt.y=xt.y+je*tt.y)}}function Zt(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,tt,xt,Ie,xe){for(var ke=je.children,vt,ir=-1,ar=ke.length,vr=je.value&&(Ie-tt)/je.value;++ir<ar;)vt=ke[ir],vt.y0=xt,vt.y1=xe,vt.x0=tt,vt.x1=tt+=vt.value*vr}function lt(){var je=1,tt=1,xt=0,Ie=!1;function xe(vt){var ir=vt.height+1;return vt.x0=vt.y0=xt,vt.x1=je,vt.y1=tt/ir,vt.eachBefore(ke(tt,ir)),Ie&&vt.eachBefore(Zt),vt}function ke(vt,ir){return function(ar){ar.children&&st(ar,ar.x0,vt*(ar.depth+1)/ir,ar.x1,vt*(ar.depth+2)/ir);var vr=ar.x0,ii=ar.y0,pi=ar.x1-xt,$r=ar.y1-xt;pi<vr&&(vr=pi=(vr+pi)/2),$r<ii&&(ii=$r=(ii+$r)/2),ar.x0=vr,ar.y0=ii,ar.x1=pi,ar.y1=$r}}return xe.round=function(vt){return arguments.length?(Ie=!!vt,xe):Ie},xe.size=function(vt){return arguments.length?(je=+vt[0],tt=+vt[1],xe):[je,tt]},xe.padding=function(vt){return arguments.length?(xt=+vt,xe):xt},xe}var Gt="$",Nt={depth:-1},Jt={};function sr(je){return je.id}function wr(je){return je.parentId}function cr(){var je=sr,tt=wr;function xt(Ie){var xe,ke,vt=Ie.length,ir,ar,vr,ii=new Array(vt),pi,$r,di={};for(ke=0;ke<vt;++ke)xe=Ie[ke],vr=ii[ke]=new T(xe),(pi=je(xe,ke,Ie))!=null&&(pi+="")&&($r=Gt+(vr.id=pi),di[$r]=$r in di?Jt:vr);for(ke=0;ke<vt;++ke)if(vr=ii[ke],pi=tt(Ie[ke],ke,Ie),pi==null||!(pi+="")){if(ir)throw new Error("multiple roots");ir=vr}else{if(ar=di[Gt+pi],!ar)throw new Error("missing: "+pi);if(ar===Jt)throw new Error("ambiguous: "+pi);ar.children?ar.children.push(vr):ar.children=[vr],vr.parent=ar}if(!ir)throw new Error("no root");if(ir.parent=Nt,ir.eachBefore(function(ji){ji.depth=ji.parent.depth+1,--vt}).eachBefore(P),ir.parent=null,vt>0)throw new Error("cycle");return ir}return xt.id=function(Ie){return arguments.length?(je=Fe(Ie),xt):je},xt.parentId=function(Ie){return arguments.length?(tt=Fe(Ie),xt):tt},xt}function $e(je,tt){return je.parent===tt.parent?1:2}function St(je){var tt=je.children;return tt?tt[0]:je.t}function Qt(je){var tt=je.children;return tt?tt[tt.length-1]:je.t}function Vt(je,tt,xt){var Ie=xt/(tt.i-je.i);tt.c-=Ie,tt.s+=xt,je.c+=Ie,tt.z+=xt,tt.m+=xt}function _t(je){for(var tt=0,xt=0,Ie=je.children,xe=Ie.length,ke;--xe>=0;)ke=Ie[xe],ke.z+=tt,ke.m+=tt,tt+=ke.s+(xt+=ke.c)}function It(je,tt,xt){return je.a.parent===tt.parent?je.a:xt}function mt(je,tt){this._=je,this.parent=null,this.children=null,this.A=null,this.a=this,this.z=0,this.m=0,this.c=0,this.s=0,this.t=null,this.i=tt}mt.prototype=Object.create(T.prototype);function er(je){for(var tt=new mt(je,0),xt,Ie=[tt],xe,ke,vt,ir;xt=Ie.pop();)if(ke=xt._.children)for(xt.children=new Array(ir=ke.length),vt=ir-1;vt>=0;--vt)Ie.push(xe=xt.children[vt]=new mt(ke[vt],vt)),xe.parent=xt;return(tt.parent=new mt(null,0)).children=[tt],tt}function lr(){var je=$e,tt=1,xt=1,Ie=null;function xe(vr){var ii=er(vr);if(ii.eachAfter(ke),ii.parent.m=-ii.z,ii.eachBefore(vt),Ie)vr.eachBefore(ar);else{var pi=vr,$r=vr,di=vr;vr.eachBefore(function(qn){qn.x<pi.x&&(pi=qn),qn.x>$r.x&&($r=qn),qn.depth>di.depth&&(di=qn)});var ji=pi===$r?1:je(pi,$r)/2,In=ji-pi.x,wi=tt/($r.x+ji+In),On=xt/(di.depth||1);vr.eachBefore(function(qn){qn.x=(qn.x+In)*wi,qn.y=qn.depth*On})}return vr}function ke(vr){var ii=vr.children,pi=vr.parent.children,$r=vr.i?pi[vr.i-1]:null;if(ii){_t(vr);var di=(ii[0].z+ii[ii.length-1].z)/2;$r?(vr.z=$r.z+je(vr._,$r._),vr.m=vr.z-di):vr.z=di}else $r&&(vr.z=$r.z+je(vr._,$r._));vr.parent.A=ir(vr,$r,vr.parent.A||pi[0])}function vt(vr){vr._.x=vr.z+vr.parent.m,vr.m+=vr.parent.m}function ir(vr,ii,pi){if(ii){for(var $r=vr,di=vr,ji=ii,In=$r.parent.children[0],wi=$r.m,On=di.m,qn=ji.m,Fn=In.m,ra;ji=Qt(ji),$r=St($r),ji&&$r;)In=St(In),di=Qt(di),di.a=vr,ra=ji.z+qn-$r.z-wi+je(ji._,$r._),ra>0&&(Vt(It(ji,vr,pi),vr,ra),wi+=ra,On+=ra),qn+=ji.m,wi+=$r.m,Fn+=In.m,On+=di.m;ji&&!Qt(di)&&(di.t=ji,di.m+=qn-On),$r&&!St(In)&&(In.t=$r,In.m+=wi-Fn,pi=vr)}return pi}function ar(vr){vr.x*=tt,vr.y=vr.depth*xt}return xe.separation=function(vr){return arguments.length?(je=vr,xe):je},xe.size=function(vr){return arguments.length?(Ie=!1,tt=+vr[0],xt=+vr[1],xe):Ie?null:[tt,xt]},xe.nodeSize=function(vr){return arguments.length?(Ie=!0,tt=+vr[0],xt=+vr[1],xe):Ie?[tt,xt]:null},xe}function Tr(je,tt,xt,Ie,xe){for(var ke=je.children,vt,ir=-1,ar=ke.length,vr=je.value&&(xe-xt)/je.value;++ir<ar;)vt=ke[ir],vt.x0=tt,vt.x1=Ie,vt.y0=xt,vt.y1=xt+=vt.value*vr}var Lr=(1+Math.sqrt(5))/2;function ti(je,tt,xt,Ie,xe,ke){for(var vt=[],ir=tt.children,ar,vr,ii=0,pi=0,$r=ir.length,di,ji,In=tt.value,wi,On,qn,Fn,ra,la,Ut;ii<$r;){di=xe-xt,ji=ke-Ie;do wi=ir[pi++].value;while(!wi&&pi<$r);for(On=qn=wi,la=Math.max(ji/di,di/ji)/(In*je),Ut=wi*wi*la,ra=Math.max(qn/Ut,Ut/On);pi<$r;++pi){if(wi+=vr=ir[pi].value,vr<On&&(On=vr),vr>qn&&(qn=vr),Ut=wi*wi*la,Fn=Math.max(qn/Ut,Ut/On),Fn>ra){wi-=vr;break}ra=Fn}vt.push(ar={value:wi,dice:di<ji,children:ir.slice(ii,pi)}),ar.dice?st(ar,xt,Ie,xe,In?Ie+=ji*wi/In:ke):Tr(ar,xt,Ie,In?xt+=di*wi/In:xe,ke),In-=wi,ii=pi}return vt}var Br=function je(tt){function xt(Ie,xe,ke,vt,ir){ti(tt,Ie,xe,ke,vt,ir)}return xt.ratio=function(Ie){return je((Ie=+Ie)>1?Ie:1)},xt}(Lr);function Vr(){var je=Br,tt=!1,xt=1,Ie=1,xe=[0],ke=Pe,vt=Pe,ir=Pe,ar=Pe,vr=Pe;function ii($r){return $r.x0=$r.y0=0,$r.x1=xt,$r.y1=Ie,$r.eachBefore(pi),xe=[0],tt&&$r.eachBefore(Zt),$r}function pi($r){var di=xe[$r.depth],ji=$r.x0+di,In=$r.y0+di,wi=$r.x1-di,On=$r.y1-di;wi<ji&&(ji=wi=(ji+wi)/2),On<In&&(In=On=(In+On)/2),$r.x0=ji,$r.y0=In,$r.x1=wi,$r.y1=On,$r.children&&(di=xe[$r.depth+1]=ke($r)/2,ji+=vr($r)-di,In+=vt($r)-di,wi-=ir($r)-di,On-=ar($r)-di,wi<ji&&(ji=wi=(ji+wi)/2),On<In&&(In=On=(In+On)/2),je($r,ji,In,wi,On))}return ii.round=function($r){return arguments.length?(tt=!!$r,ii):tt},ii.size=function($r){return arguments.length?(xt=+$r[0],Ie=+$r[1],ii):[xt,Ie]},ii.tile=function($r){return arguments.length?(je=Fe($r),ii):je},ii.padding=function($r){return arguments.length?ii.paddingInner($r).paddingOuter($r):ii.paddingInner()},ii.paddingInner=function($r){return arguments.length?(ke=typeof $r=="function"?$r:ge(+$r),ii):ke},ii.paddingOuter=function($r){return arguments.length?ii.paddingTop($r).paddingRight($r).paddingBottom($r).paddingLeft($r):ii.paddingTop()},ii.paddingTop=function($r){return arguments.length?(vt=typeof $r=="function"?$r:ge(+$r),ii):vt},ii.paddingRight=function($r){return arguments.length?(ir=typeof $r=="function"?$r:ge(+$r),ii):ir},ii.paddingBottom=function($r){return arguments.length?(ar=typeof $r=="function"?$r:ge(+$r),ii):ar},ii.paddingLeft=function($r){return arguments.length?(vr=typeof $r=="function"?$r:ge(+$r),ii):vr},ii}function dt(je,tt,xt,Ie,xe){var ke=je.children,vt,ir=ke.length,ar,vr=new Array(ir+1);for(vr[0]=ar=vt=0;vt<ir;++vt)vr[vt+1]=ar+=ke[vt].value;ii(0,ir,je.value,tt,xt,Ie,xe);function ii(pi,$r,di,ji,In,wi,On){if(pi>=$r-1){var qn=ke[pi];qn.x0=ji,qn.y0=In,qn.x1=wi,qn.y1=On;return}for(var Fn=vr[pi],ra=di/2+Fn,la=pi+1,Ut=$r-1;la<Ut;){var wt=la+Ut>>>1;vr[wt]<ra?la=wt+1:Ut=wt}ra-vr[la-1]<vr[la]-ra&&pi+1<la&&--la;var rr=vr[la]-Fn,nr=di-rr;if(wi-ji>On-In){var Er=(ji*nr+wi*rr)/di;ii(pi,la,rr,ji,In,Er,On),ii(la,$r,nr,Er,In,wi,On)}else{var Xr=(In*nr+On*rr)/di;ii(pi,la,rr,ji,In,wi,Xr),ii(la,$r,nr,ji,Xr,wi,On)}}}function Ge(je,tt,xt,Ie,xe){(je.depth&1?Tr:st)(je,tt,xt,Ie,xe)}var Je=function je(tt){function xt(Ie,xe,ke,vt,ir){if((ar=Ie._squarify)&&ar.ratio===tt)for(var ar,vr,ii,pi,$r=-1,di,ji=ar.length,In=Ie.value;++$r<ji;){for(vr=ar[$r],ii=vr.children,pi=vr.value=0,di=ii.length;pi<di;++pi)vr.value+=ii[pi].value;vr.dice?st(vr,xe,ke,vt,ke+=(ir-ke)*vr.value/In):Tr(vr,xe,ke,xe+=(vt-xe)*vr.value/In,ir),In-=vr.value}else Ie._squarify=ar=ti(tt,Ie,xe,ke,vt,ir),ar.ratio=tt}return xt.ratio=function(Ie){return je((Ie=+Ie)>1?Ie:1)},xt}(Lr);e.cluster=l,e.hierarchy=x,e.pack=ce,e.packEnclose=V,e.packSiblings=Le,e.partition=lt,e.stratify=cr,e.tree=lr,e.treemap=Vr,e.treemapBinary=dt,e.treemapDice=st,e.treemapResquarify=Je,e.treemapSlice=Tr,e.treemapSliceDice=Ge,e.treemapSquarify=Br,Object.defineProperty(e,"__esModule",{value:!0})})});var RE=ye(IE=>{"use strict";var $ke=PE(),h6t=Eo(),MA=Dr(),d6t=tc().makeColorScaleFuncFromTrace,v6t=TA().makePullColorFn,p6t=TA().generateExtendedColors,g6t=tc().calc,m6t=fs().ALMOST_EQUAL,y6t={},_6t={},x6t={};IE.calc=function(e,t){var r=e._fullLayout,n=t.ids,i=MA.isArrayOrTypedArray(n),a=t.labels,o=t.parents,s=t.values,l=MA.isArrayOrTypedArray(s),u=[],c={},f={},h=function(j,N){c[j]?c[j].push(N):c[j]=[N],f[N]=1},d=function(j){return j||typeof j=="number"},v=function(j){return!l||h6t(s[j])&&s[j]>=0},_,b,p;i?(_=Math.min(n.length,o.length),b=function(j){return d(n[j])&&v(j)},p=function(j){return String(n[j])}):(_=Math.min(a.length,o.length),b=function(j){return d(a[j])&&v(j)},p=function(j){return String(a[j])}),l&&(_=Math.min(_,s.length));for(var k=0;k<_;k++)if(b(k)){var E=p(k),S=d(o[k])?String(o[k]):"",L={i:k,id:E,pid:S,label:d(a[k])?String(a[k]):""};l&&(L.v=+s[k]),u.push(L),h(S,E)}if(c[""]){if(c[""].length>1){for(var M=MA.randstr(),g=0;g<u.length;g++)u[g].pid===""&&(u[g].pid=M);u.unshift({hasMultipleRoots:!0,id:M,pid:"",label:""})}}else{var x=[],C;for(C in c)f[C]||x.push(C);if(x.length===1)C=x[0],u.unshift({hasImpliedRoot:!0,id:C,pid:"",label:C});else return MA.warn(["Multiple implied roots, cannot build",t.type,"hierarchy of",t.name+".","These roots include:",x.join(", ")].join(" "))}var P;try{P=$ke.stratify().id(function(j){return j.id}).parentId(function(j){return j.pid})(u)}catch(j){return MA.warn(["Failed to build",t.type,"hierarchy of",t.name+".","Error:",j.message].join(" "))}var T=$ke.hierarchy(P),z=!1;if(l)switch(t.branchvalues){case"remainder":T.sum(function(j){return j.data.v});break;case"total":T.each(function(j){var N=j.data.data,H=N.v;if(j.children){var te=j.children.reduce(function(oe,_e){return oe+_e.data.data.v},0);if((N.hasImpliedRoot||N.hasMultipleRoots)&&(H=te),H<te*m6t)return z=!0,MA.warn(["Total value for node",j.data.data.id,"of",t.name,"is smaller than the sum of its children.",`
parent value =`,H,`
children sum =`,te].join(" "))}j.value=H});break}else Qke(T,t,{branches:t.count.indexOf("branches")!==-1,leaves:t.count.indexOf("leaves")!==-1});if(!z){t.sort&&T.sort(function(j,N){return N.value-j.value});var O,V,G=t.marker.colors||[],Z=!!G.length;return t._hasColorscale?(Z||(G=l?t.values:t._values),g6t(e,t,{vals:G,containerStr:"marker",cLetter:"c"}),V=d6t(t.marker)):O=v6t(r["_"+t.type+"colormap"]),T.each(function(j){var N=j.data.data;N.color=t._hasColorscale?V(G[N.i]):O(G[N.i],N.id)}),u[0].hierarchy=T,u}};IE._runCrossTraceCalc=function(e,t){var r=t._fullLayout,n=t.calcdata,i=r[e+"colorway"],a=r["_"+e+"colormap"];r["extend"+e+"colors"]&&(i=p6t(i,e==="icicle"?x6t:e==="treemap"?_6t:y6t));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))}};IE.crossTraceCalc=function(e){return IE._runCrossTraceCalc("sunburst",e)};function Qke(e,t,r){var n=0,i=e.children;if(i){for(var a=i.length,o=0;o<a;o++)n+=Qke(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 G_(e,t){var r=Object.create(e.prototype);for(var n in t)r[n]=t[n];return r}var bD=gu(()=>{});function Gm(){}function tCe(){return this.rgb().formatHex()}function k6t(){return this.rgb().formatHex8()}function C6t(){return lCe(this).formatHsl()}function rCe(){return this.rgb().formatRgb()}function j_(e){var t,r;return e=(e+"").trim().toLowerCase(),(t=b6t.exec(e))?(r=t[1].length,t=parseInt(t[1],16),r===6?iCe(t):r===3?new _d(t>>8&15|t>>4&240,t>>4&15|t&240,(t&15)<<4|t&15,1):r===8?wD(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):r===4?wD(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|t&240,((t&15)<<4|t&15)/255):null):(t=w6t.exec(e))?new _d(t[1],t[2],t[3],1):(t=T6t.exec(e))?new _d(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=A6t.exec(e))?wD(t[1],t[2],t[3],t[4]):(t=S6t.exec(e))?wD(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=M6t.exec(e))?oCe(t[1],t[2]/100,t[3]/100,1):(t=E6t.exec(e))?oCe(t[1],t[2]/100,t[3]/100,t[4]):eCe.hasOwnProperty(e)?iCe(eCe[e]):e==="transparent"?new _d(NaN,NaN,NaN,0):null}function iCe(e){return new _d(e>>16&255,e>>8&255,e&255,1)}function wD(e,t,r,n){return n<=0&&(e=t=r=NaN),new _d(e,t,r,n)}function FE(e){return e instanceof Gm||(e=j_(e)),e?(e=e.rgb(),new _d(e.r,e.g,e.b,e.opacity)):new _d}function kA(e,t,r,n){return arguments.length===1?FE(e):new _d(e,t,r,n==null?1:n)}function _d(e,t,r,n){this.r=+e,this.g=+t,this.b=+r,this.opacity=+n}function nCe(){return`#${k2(this.r)}${k2(this.g)}${k2(this.b)}`}function L6t(){return`#${k2(this.r)}${k2(this.g)}${k2(this.b)}${k2((isNaN(this.opacity)?1:this.opacity)*255)}`}function aCe(){let e=AD(this.opacity);return`${e===1?"rgb(":"rgba("}${C2(this.r)}, ${C2(this.g)}, ${C2(this.b)}${e===1?")":`, ${e})`}`}function AD(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function C2(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function k2(e){return e=C2(e),(e<16?"0":"")+e.toString(16)}function oCe(e,t,r,n){return n<=0?e=t=r=NaN:r<=0||r>=1?e=t=NaN:t<=0&&(e=NaN),new Zg(e,t,r,n)}function lCe(e){if(e instanceof Zg)return new Zg(e.h,e.s,e.l,e.opacity);if(e instanceof Gm||(e=j_(e)),!e)return new Zg;if(e instanceof Zg)return e;e=e.rgb();var t=e.r/255,r=e.g/255,n=e.b/255,i=Math.min(t,r,n),a=Math.max(t,r,n),o=NaN,s=a-i,l=(a+i)/2;return s?(t===a?o=(r-n)/s+(r<n)*6:r===a?o=(n-t)/s+2:o=(t-r)/s+4,s/=l<.5?a+i:2-a-i,o*=60):s=l>0&&l<1?0:o,new Zg(o,s,l,e.opacity)}function zE(e,t,r,n){return arguments.length===1?lCe(e):new Zg(e,t,r,n==null?1:n)}function Zg(e,t,r,n){this.h=+e,this.s=+t,this.l=+r,this.opacity=+n}function sCe(e){return e=(e||0)%360,e<0?e+360:e}function TD(e){return Math.max(0,Math.min(1,e||0))}function xW(e,t,r){return(e<60?t+(r-t)*e/60:e<180?r:e<240?t+(r-t)*(240-e)/60:t)*255}var H_,L2,EA,DE,Vm,b6t,w6t,T6t,A6t,S6t,M6t,E6t,eCe,SD=gu(()=>{bD();H_=.7,L2=1/H_,EA="\\s*([+-]?\\d+)\\s*",DE="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",Vm="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",b6t=/^#([0-9a-f]{3,8})$/,w6t=new RegExp(`^rgb\\(${EA},${EA},${EA}\\)$`),T6t=new RegExp(`^rgb\\(${Vm},${Vm},${Vm}\\)$`),A6t=new RegExp(`^rgba\\(${EA},${EA},${EA},${DE}\\)$`),S6t=new RegExp(`^rgba\\(${Vm},${Vm},${Vm},${DE}\\)$`),M6t=new RegExp(`^hsl\\(${DE},${Vm},${Vm}\\)$`),E6t=new RegExp(`^hsla\\(${DE},${Vm},${Vm},${DE}\\)$`),eCe={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};Zy(Gm,j_,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:tCe,formatHex:tCe,formatHex8:k6t,formatHsl:C6t,formatRgb:rCe,toString:rCe});Zy(_d,kA,G_(Gm,{brighter(e){return e=e==null?L2:Math.pow(L2,e),new _d(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?H_:Math.pow(H_,e),new _d(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new _d(C2(this.r),C2(this.g),C2(this.b),AD(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:nCe,formatHex:nCe,formatHex8:L6t,formatRgb:aCe,toString:aCe}));Zy(Zg,zE,G_(Gm,{brighter(e){return e=e==null?L2:Math.pow(L2,e),new Zg(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?H_:Math.pow(H_,e),new Zg(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,t=isNaN(e)||isNaN(this.s)?0:this.s,r=this.l,n=r+(r<.5?r:1-r)*t,i=2*r-n;return new _d(xW(e>=240?e-240:e+120,i,n),xW(e,i,n),xW(e<120?e+240:e-120,i,n),this.opacity)},clamp(){return new Zg(sCe(this.h),TD(this.s),TD(this.l),AD(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){let e=AD(this.opacity);return`${e===1?"hsl(":"hsla("}${sCe(this.h)}, ${TD(this.s)*100}%, ${TD(this.l)*100}%${e===1?")":`, ${e})`}`}}))});var MD,ED,bW=gu(()=>{MD=Math.PI/180,ED=180/Math.PI});function vCe(e){if(e instanceof Hm)return new Hm(e.l,e.a,e.b,e.opacity);if(e instanceof Yy)return pCe(e);e instanceof _d||(e=FE(e));var t=SW(e.r),r=SW(e.g),n=SW(e.b),i=wW((.2225045*t+.7168786*r+.0606169*n)/cCe),a,o;return t===r&&r===n?a=o=i:(a=wW((.4360747*t+.3850649*r+.1430804*n)/uCe),o=wW((.0139322*t+.0971045*r+.7141733*n)/fCe)),new Hm(116*i-16,500*(a-i),200*(i-o),e.opacity)}function LA(e,t,r,n){return arguments.length===1?vCe(e):new Hm(e,t,r,n==null?1:n)}function Hm(e,t,r,n){this.l=+e,this.a=+t,this.b=+r,this.opacity=+n}function wW(e){return e>P6t?Math.pow(e,1/3):e/dCe+hCe}function TW(e){return e>CA?e*e*e:dCe*(e-hCe)}function AW(e){return 255*(e<=.0031308?12.92*e:1.055*Math.pow(e,1/2.4)-.055)}function SW(e){return(e/=255)<=.04045?e/12.92:Math.pow((e+.055)/1.055,2.4)}function I6t(e){if(e instanceof Yy)return new Yy(e.h,e.c,e.l,e.opacity);if(e instanceof Hm||(e=vCe(e)),e.a===0&&e.b===0)return new Yy(NaN,0<e.l&&e.l<100?0:NaN,e.l,e.opacity);var t=Math.atan2(e.b,e.a)*ED;return new Yy(t<0?t+360:t,Math.sqrt(e.a*e.a+e.b*e.b),e.l,e.opacity)}function OE(e,t,r,n){return arguments.length===1?I6t(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 pCe(e){if(isNaN(e.h))return new Hm(e.l,0,0,e.opacity);var t=e.h*MD;return new Hm(e.l,Math.cos(t)*e.c,Math.sin(t)*e.c,e.opacity)}var kD,uCe,cCe,fCe,hCe,CA,dCe,P6t,gCe=gu(()=>{bD();SD();bW();kD=18,uCe=.96422,cCe=1,fCe=.82521,hCe=4/29,CA=6/29,dCe=3*CA*CA,P6t=CA*CA*CA;Zy(Hm,LA,G_(Gm,{brighter(e){return new Hm(this.l+kD*(e==null?1:e),this.a,this.b,this.opacity)},darker(e){return new Hm(this.l-kD*(e==null?1:e),this.a,this.b,this.opacity)},rgb(){var e=(this.l+16)/116,t=isNaN(this.a)?e:e+this.a/500,r=isNaN(this.b)?e:e-this.b/200;return t=uCe*TW(t),e=cCe*TW(e),r=fCe*TW(r),new _d(AW(3.1338561*t-1.6168667*e-.4906146*r),AW(-.9787684*t+1.9161415*e+.033454*r),AW(.0719453*t-.2289914*e+1.4052427*r),this.opacity)}}));Zy(Yy,OE,G_(Gm,{brighter(e){return new Yy(this.h,this.c,this.l+kD*(e==null?1:e),this.opacity)},darker(e){return new Yy(this.h,this.c,this.l-kD*(e==null?1:e),this.opacity)},rgb(){return pCe(this).rgb()}}))});function R6t(e){if(e instanceof P2)return new P2(e.h,e.s,e.l,e.opacity);e instanceof _d||(e=FE(e));var t=e.r/255,r=e.g/255,n=e.b/255,i=(_Ce*n+mCe*t-yCe*r)/(_Ce+mCe-yCe),a=n-i,o=(qE*(r-i)-EW*a)/CD,s=Math.sqrt(o*o+a*a)/(qE*i*(1-i)),l=s?Math.atan2(o,a)*ED-120:NaN;return new P2(l<0?l+360:l,s,i,e.opacity)}function PA(e,t,r,n){return arguments.length===1?R6t(e):new P2(e,t,r,n==null?1:n)}function P2(e,t,r,n){this.h=+e,this.s=+t,this.l=+r,this.opacity=+n}var xCe,MW,EW,CD,qE,mCe,yCe,_Ce,bCe=gu(()=>{bD();SD();bW();xCe=-.14861,MW=1.78277,EW=-.29227,CD=-.90649,qE=1.97294,mCe=qE*CD,yCe=qE*MW,_Ce=MW*EW-CD*xCe;Zy(P2,PA,G_(Gm,{brighter(e){return e=e==null?L2:Math.pow(L2,e),new P2(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?H_:Math.pow(H_,e),new P2(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=isNaN(this.h)?0:(this.h+120)*MD,t=+this.l,r=isNaN(this.s)?0:this.s*t*(1-t),n=Math.cos(e),i=Math.sin(e);return new _d(255*(t+r*(xCe*n+MW*i)),255*(t+r*(EW*n+CD*i)),255*(t+r*(qE*n)),this.opacity)}}))});var I2=gu(()=>{SD();gCe();bCe()});function kW(e,t,r,n,i){var a=e*e,o=a*e;return((1-3*e+3*a-o)*t+(4-6*a+3*o)*r+(1+3*e+3*a-3*o)*n+o*i)/6}function LD(e){var t=e.length-1;return function(r){var n=r<=0?r=0:r>=1?(r=1,t-1):Math.floor(r*t),i=e[n],a=e[n+1],o=n>0?e[n-1]:2*i-a,s=n<t-1?e[n+2]:2*a-i;return kW((r-n/t)*t,o,i,a,s)}}var PD=gu(()=>{});function ID(e){var t=e.length;return function(r){var n=Math.floor(((r%=1)<0?++r:r)*t),i=e[(n+t-1)%t],a=e[n%t],o=e[(n+1)%t],s=e[(n+2)%t];return kW((r-n/t)*t,i,a,o,s)}}var CW=gu(()=>{PD()});var IA,LW=gu(()=>{IA=e=>()=>e});function wCe(e,t){return function(r){return e+r*t}}function D6t(e,t,r){return e=Math.pow(e,r),t=Math.pow(t,r)-e,r=1/r,function(n){return Math.pow(e+n*t,r)}}function W_(e,t){var r=t-e;return r?wCe(e,r>180||r<-180?r-360*Math.round(r/360):r):IA(isNaN(e)?t:e)}function TCe(e){return(e=+e)==1?$f:function(t,r){return r-t?D6t(t,r,e):IA(isNaN(t)?r:t)}}function $f(e,t){var r=t-e;return r?wCe(e,r):IA(isNaN(e)?t:e)}var R2=gu(()=>{LW()});function ACe(e){return function(t){var r=t.length,n=new Array(r),i=new Array(r),a=new Array(r),o,s;for(o=0;o<r;++o)s=kA(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 BE,SCe,MCe,PW=gu(()=>{I2();PD();CW();R2();BE=function e(t){var r=TCe(t);function n(i,a){var o=r((i=kA(i)).r,(a=kA(a)).r),s=r(i.g,a.g),l=r(i.b,a.b),u=$f(i.opacity,a.opacity);return function(c){return i.r=o(c),i.g=s(c),i.b=l(c),i.opacity=u(c),i+""}}return n.gamma=e,n}(1);SCe=ACe(LD),MCe=ACe(ID)});function RA(e,t){t||(t=[]);var r=e?Math.min(t.length,e.length):0,n=t.slice(),i;return function(a){for(i=0;i<r;++i)n[i]=e[i]*(1-a)+t[i]*a;return n}}function RD(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}var DD=gu(()=>{});function ECe(e,t){return(RD(t)?RA:IW)(e,t)}function IW(e,t){var r=t?t.length:0,n=e?Math.min(r,e.length):0,i=new Array(n),a=new Array(r),o;for(o=0;o<n;++o)i[o]=X_(e[o],t[o]);for(;o<r;++o)a[o]=t[o];return function(s){for(o=0;o<n;++o)a[o]=i[o](s);return a}}var RW=gu(()=>{NE();DD()});function FD(e,t){var r=new Date;return e=+e,t=+t,function(n){return r.setTime(e*(1-n)+t*n),r}}var DW=gu(()=>{});function zp(e,t){return e=+e,t=+t,function(r){return e*(1-r)+t*r}}var UE=gu(()=>{});function zD(e,t){var r={},n={},i;(e===null||typeof e!="object")&&(e={}),(t===null||typeof t!="object")&&(t={});for(i in t)i in e?r[i]=X_(e[i],t[i]):n[i]=t[i];return function(a){for(i in r)n[i]=r[i](a);return n}}var FW=gu(()=>{NE()});function F6t(e){return function(){return e}}function z6t(e){return function(t){return e(t)+""}}function OD(e,t){var r=OW.lastIndex=zW.lastIndex=0,n,i,a,o=-1,s=[],l=[];for(e=e+"",t=t+"";(n=OW.exec(e))&&(i=zW.exec(t));)(a=i.index)>r&&(a=t.slice(r,a),s[o]?s[o]+=a:s[++o]=a),(n=n[0])===(i=i[0])?s[o]?s[o]+=i:s[++o]=i:(s[++o]=null,l.push({i:o,x:zp(n,i)})),r=zW.lastIndex;return r<t.length&&(a=t.slice(r),s[o]?s[o]+=a:s[++o]=a),s.length<2?l[0]?z6t(l[0].x):F6t(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 OW,zW,qW=gu(()=>{UE();OW=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,zW=new RegExp(OW.source,"g")});function X_(e,t){var r=typeof t,n;return t==null||r==="boolean"?IA(t):(r==="number"?zp:r==="string"?(n=j_(t))?(t=n,BE):OD:t instanceof j_?BE:t instanceof Date?FD:RD(t)?RA:Array.isArray(t)?IW:typeof t.valueOf!="function"&&typeof t.toString!="function"||isNaN(t)?zD:zp)(e,t)}var NE=gu(()=>{I2();PW();RW();DW();UE();FW();qW();LW();DD()});function kCe(e){var t=e.length;return function(r){return e[Math.max(0,Math.min(t-1,Math.floor(r*t)))]}}var CCe=gu(()=>{});function LCe(e,t){var r=W_(+e,+t);return function(n){var i=r(n);return i-360*Math.floor(i/360)}}var PCe=gu(()=>{R2()});function ICe(e,t){return e=+e,t=+t,function(r){return Math.round(e*(1-r)+t*r)}}var RCe=gu(()=>{});function BW(e,t,r,n,i,a){var o,s,l;return(o=Math.sqrt(e*e+t*t))&&(e/=o,t/=o),(l=e*r+t*n)&&(r-=e*l,n-=t*l),(s=Math.sqrt(r*r+n*n))&&(r/=s,n/=s,l/=s),e*n<t*r&&(e=-e,t=-t,l=-l,o=-o),{translateX:i,translateY:a,rotate:Math.atan2(t,e)*DCe,skewX:Math.atan(l)*DCe,scaleX:o,scaleY:s}}var DCe,qD,FCe=gu(()=>{DCe=180/Math.PI,qD={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1}});function zCe(e){let t=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(e+"");return t.isIdentity?qD:BW(t.a,t.b,t.c,t.d,t.e,t.f)}function OCe(e){return e==null?qD:(BD||(BD=document.createElementNS("http://www.w3.org/2000/svg","g")),BD.setAttribute("transform",e),(e=BD.transform.baseVal.consolidate())?(e=e.matrix,BW(e.a,e.b,e.c,e.d,e.e,e.f)):qD)}var BD,qCe=gu(()=>{FCe()});function BCe(e,t,r,n){function i(u){return u.length?u.pop()+" ":""}function a(u,c,f,h,d,v){if(u!==f||c!==h){var _=d.push("translate(",null,t,null,r);v.push({i:_-4,x:zp(u,f)},{i:_-2,x:zp(c,h)})}else(f||h)&&d.push("translate("+f+t+h+r)}function o(u,c,f,h){u!==c?(u-c>180?c+=360:c-u>180&&(u+=360),h.push({i:f.push(i(f)+"rotate(",null,n)-2,x:zp(u,c)})):c&&f.push(i(f)+"rotate("+c+n)}function s(u,c,f,h){u!==c?h.push({i:f.push(i(f)+"skewX(",null,n)-2,x:zp(u,c)}):c&&f.push(i(f)+"skewX("+c+n)}function l(u,c,f,h,d,v){if(u!==f||c!==h){var _=d.push(i(d)+"scale(",null,",",null,")");v.push({i:_-4,x:zp(u,f)},{i:_-2,x:zp(c,h)})}else(f!==1||h!==1)&&d.push(i(d)+"scale("+f+","+h+")")}return function(u,c){var f=[],h=[];return u=e(u),c=e(c),a(u.translateX,u.translateY,c.translateX,c.translateY,f,h),o(u.rotate,c.rotate,f,h),s(u.skewX,c.skewX,f,h),l(u.scaleX,u.scaleY,c.scaleX,c.scaleY,f,h),u=c=null,function(d){for(var v=-1,_=h.length,b;++v<_;)f[(b=h[v]).i]=b.x(d);return f.join("")}}}var NCe,UCe,VCe=gu(()=>{UE();qCe();NCe=BCe(zCe,"px, ","px)","deg)"),UCe=BCe(OCe,", ",")",")")});function GCe(e){return((e=Math.exp(e))+1/e)/2}function q6t(e){return((e=Math.exp(e))-1/e)/2}function B6t(e){return((e=Math.exp(2*e))-1)/(e+1)}var O6t,HCe,jCe=gu(()=>{O6t=1e-12;HCe=function e(t,r,n){function i(a,o){var s=a[0],l=a[1],u=a[2],c=o[0],f=o[1],h=o[2],d=c-s,v=f-l,_=d*d+v*v,b,p;if(_<O6t)p=Math.log(h/u)/t,b=function(C){return[s+C*d,l+C*v,u*Math.exp(t*C*p)]};else{var k=Math.sqrt(_),E=(h*h-u*u+n*_)/(2*u*r*k),S=(h*h-u*u-n*_)/(2*h*r*k),L=Math.log(Math.sqrt(E*E+1)-E),x=Math.log(Math.sqrt(S*S+1)-S);p=(x-L)/t,b=function(C){var M=C*p,g=GCe(L),P=u/(r*k)*(g*B6t(t*M+L)-q6t(L));return[s+P*d,l+P*v,u*g/GCe(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 WCe(e){return function(t,r){var n=e((t=zE(t)).h,(r=zE(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 XCe,ZCe,YCe=gu(()=>{I2();R2();XCe=WCe(W_),ZCe=WCe($f)});function NW(e,t){var r=$f((e=LA(e)).l,(t=LA(t)).l),n=$f(e.a,t.a),i=$f(e.b,t.b),a=$f(e.opacity,t.opacity);return function(o){return e.l=r(o),e.a=n(o),e.b=i(o),e.opacity=a(o),e+""}}var KCe=gu(()=>{I2();R2()});function JCe(e){return function(t,r){var n=e((t=OE(t)).h,(r=OE(r)).h),i=$f(t.c,r.c),a=$f(t.l,r.l),o=$f(t.opacity,r.opacity);return function(s){return t.h=n(s),t.c=i(s),t.l=a(s),t.opacity=o(s),t+""}}}var $Ce,QCe,e6e=gu(()=>{I2();R2();$Ce=JCe(W_),QCe=JCe($f)});function t6e(e){return function t(r){r=+r;function n(i,a){var o=e((i=PA(i)).h,(a=PA(a)).h),s=$f(i.s,a.s),l=$f(i.l,a.l),u=$f(i.opacity,a.opacity);return function(c){return i.h=o(c),i.s=s(c),i.l=l(Math.pow(c,r)),i.opacity=u(c),i+""}}return n.gamma=t,n}(1)}var r6e,i6e,n6e=gu(()=>{I2();R2();r6e=t6e(W_),i6e=t6e($f)});function UW(e,t){t===void 0&&(t=e,e=X_);for(var r=0,n=t.length-1,i=t[0],a=new Array(n<0?0:n);r<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 a6e=gu(()=>{NE()});function o6e(e,t){for(var r=new Array(t),n=0;n<t;++n)r[n]=e(n/(t-1));return r}var s6e=gu(()=>{});var D2={};cee(D2,{interpolate:()=>X_,interpolateArray:()=>ECe,interpolateBasis:()=>LD,interpolateBasisClosed:()=>ID,interpolateCubehelix:()=>r6e,interpolateCubehelixLong:()=>i6e,interpolateDate:()=>FD,interpolateDiscrete:()=>kCe,interpolateHcl:()=>$Ce,interpolateHclLong:()=>QCe,interpolateHsl:()=>XCe,interpolateHslLong:()=>ZCe,interpolateHue:()=>LCe,interpolateLab:()=>NW,interpolateNumber:()=>zp,interpolateNumberArray:()=>RA,interpolateObject:()=>zD,interpolateRgb:()=>BE,interpolateRgbBasis:()=>SCe,interpolateRgbBasisClosed:()=>MCe,interpolateRound:()=>ICe,interpolateString:()=>OD,interpolateTransformCss:()=>NCe,interpolateTransformSvg:()=>UCe,interpolateZoom:()=>HCe,piecewise:()=>UW,quantize:()=>o6e});var F2=gu(()=>{NE();RW();PD();CW();DW();CCe();PCe();UE();DD();FW();RCe();qW();VCe();jCe();PW();YCe();KCe();e6e();n6e();a6e();s6e()});var ND=ye((Ypr,l6e)=>{"use strict";var N6t=So(),U6t=ka();l6e.exports=function(t,r,n,i,a){var o=r.data.data,s=o.i,l=a||o.color;if(s>=0){r.i=o.i;var u=n.marker;u.pattern?(!u.colors||!u.pattern.shape)&&(u.color=l,r.color=l):(u.color=l,r.color=l),N6t.pointStyle(t,n,i,r)}else U6t.fill(t,l)}});var VW=ye((Kpr,d6e)=>{"use strict";var u6e=Oa(),c6e=ka(),f6e=Dr(),V6t=bv().resizeText,G6t=ND();function H6t(e){var t=e._fullLayout._sunburstlayer.selectAll(".trace");V6t(e,t,"sunburst"),t.each(function(r){var n=u6e.select(this),i=r[0],a=i.trace;n.style("opacity",a.opacity),n.selectAll("path.surface").each(function(o){u6e.select(this).call(h6e,o,a,e)})})}function h6e(e,t,r,n){var i=t.data.data,a=!t.children,o=i.i,s=f6e.castOption(r,o,"marker.line.color")||c6e.defaultLine,l=f6e.castOption(r,o,"marker.line.width")||0;e.call(G6t,t,r,n).style("stroke-width",l).call(c6e.stroke,s).style("opacity",a?r.leaf.opacity:null)}d6e.exports={style:H6t,styleOne:h6e}});var Ky=ye(Bs=>{"use strict";var z2=Dr(),j6t=ka(),W6t=Sg(),v6e=l_();Bs.findEntryWithLevel=function(e,t){var r;return t&&e.eachAfter(function(n){if(Bs.getPtId(n)===t)return r=n.copy()}),r||e};Bs.findEntryWithChild=function(e,t){var r;return e.eachAfter(function(n){for(var i=n.children||[],a=0;a<i.length;a++){var o=i[a];if(Bs.getPtId(o)===t)return r=n.copy()}}),r||e};Bs.isEntry=function(e){return!e.parent};Bs.isLeaf=function(e){return!e.children};Bs.getPtId=function(e){return e.data.data.id};Bs.getPtLabel=function(e){return e.data.data.label};Bs.getValue=function(e){return e.value};Bs.isHierarchyRoot=function(e){return p6e(e)===""};Bs.setSliceCursor=function(e,t,r){var n=r.isTransitioning;if(!n){var i=e.datum();n=r.hideOnRoot&&Bs.isHierarchyRoot(i)||r.hideOnLeaves&&Bs.isLeaf(i)}W6t(e,n?null:"pointer")};function X6t(e,t,r){return{color:Bs.getOutsideTextFontKey("color",e,t,r),family:Bs.getOutsideTextFontKey("family",e,t,r),size:Bs.getOutsideTextFontKey("size",e,t,r),weight:Bs.getOutsideTextFontKey("weight",e,t,r),style:Bs.getOutsideTextFontKey("style",e,t,r),variant:Bs.getOutsideTextFontKey("variant",e,t,r),textcase:Bs.getOutsideTextFontKey("textcase",e,t,r),lineposition:Bs.getOutsideTextFontKey("lineposition",e,t,r),shadow:Bs.getOutsideTextFontKey("shadow",e,t,r)}}function Z6t(e,t,r,n){var i=(n||{}).onPathbar,a=t.data.data,o=a.i,s=z2.castOption(e,o,(i?"pathbar.textfont":"insidetextfont")+".color");return!s&&e._input.textfont&&(s=z2.castOption(e._input,o,"textfont.color")),{color:s||j6t.contrast(a.color),family:Bs.getInsideTextFontKey("family",e,t,r,n),size:Bs.getInsideTextFontKey("size",e,t,r,n),weight:Bs.getInsideTextFontKey("weight",e,t,r,n),style:Bs.getInsideTextFontKey("style",e,t,r,n),variant:Bs.getInsideTextFontKey("variant",e,t,r,n),textcase:Bs.getInsideTextFontKey("textcase",e,t,r,n),lineposition:Bs.getInsideTextFontKey("lineposition",e,t,r,n),shadow:Bs.getInsideTextFontKey("shadow",e,t,r,n)}}Bs.getInsideTextFontKey=function(e,t,r,n,i){var a=(i||{}).onPathbar,o=a?"pathbar.textfont":"insidetextfont",s=r.data.data.i;return z2.castOption(t,s,o+"."+e)||z2.castOption(t,s,"textfont."+e)||n.size};Bs.getOutsideTextFontKey=function(e,t,r,n){var i=r.data.data.i;return z2.castOption(t,i,"outsidetextfont."+e)||z2.castOption(t,i,"textfont."+e)||n.size};Bs.isOutsideText=function(e,t){return!e._hasColorscale&&Bs.isHierarchyRoot(t)};Bs.determineTextFont=function(e,t,r,n){return Bs.isOutsideText(e,t)?X6t(e,t,r):Z6t(e,t,r,n)};Bs.hasTransition=function(e){return!!(e&&e.duration>0)};Bs.getMaxDepth=function(e){return e.maxdepth>=0?e.maxdepth:1/0};Bs.isHeader=function(e,t){return!(Bs.isLeaf(e)||e.depth===t._maxDepth-1)};function p6e(e){return e.data.data.pid}Bs.getParent=function(e,t){return Bs.findEntryWithLevel(e,p6e(t))};Bs.listPath=function(e,t){var r=e.parent;if(!r)return[];var n=t?[r.data[t]]:[r];return Bs.listPath(r,t).concat(n)};Bs.getPath=function(e){return Bs.listPath(e,"label").join("/")+"/"};Bs.formatValue=v6e.formatPieValue;Bs.formatPercent=function(e,t){var r=z2.formatPercent(e,0);return r==="0%"&&(r=v6e.formatPiePercent(e,t)),r}});var HE=ye(($pr,y6e)=>{"use strict";var DA=Oa(),g6e=qa(),Y6t=ip().appendArrayPointValue,VE=vf(),m6e=Dr(),K6t=_3(),rd=Ky(),J6t=l_(),$6t=J6t.formatPieValue;y6e.exports=function(t,r,n,i,a){var o=i[0],s=o.trace,l=o.hierarchy,u=s.type==="sunburst",c=s.type==="treemap"||s.type==="icicle";"_hasHoverLabel"in s||(s._hasHoverLabel=!1),"_hasHoverEvent"in s||(s._hasHoverEvent=!1);var f=function(v){var _=n._fullLayout;if(!(n._dragging||_.hovermode===!1)){var b=n._fullData[s.index],p=v.data.data,k=p.i,E=rd.isHierarchyRoot(v),S=rd.getParent(l,v),L=rd.getValue(v),x=function(Ee){return m6e.castOption(b,k,Ee)},C=x("hovertemplate"),M=VE.castHoverinfo(b,_,k),g=_.separators,P;if(C||M&&M!=="none"&&M!=="skip"){var T,z;u&&(T=o.cx+v.pxmid[0]*(1-v.rInscribed),z=o.cy+v.pxmid[1]*(1-v.rInscribed)),c&&(T=v._hoverX,z=v._hoverY);var O={},V=[],G=[],Z=function(Ee){return V.indexOf(Ee)!==-1};M&&(V=M==="all"?b._module.attributes.hoverinfo.flags:M.split("+")),O.label=p.label,Z("label")&&O.label&&G.push(O.label),p.hasOwnProperty("v")&&(O.value=p.v,O.valueLabel=$6t(O.value,g),Z("value")&&G.push(O.valueLabel)),O.currentPath=v.currentPath=rd.getPath(v.data),Z("current path")&&!E&&G.push(O.currentPath);var j,N=[],H=function(){N.indexOf(j)===-1&&(G.push(j),N.push(j))};O.percentParent=v.percentParent=L/rd.getValue(S),O.parent=v.parentString=rd.getPtLabel(S),Z("percent parent")&&(j=rd.formatPercent(O.percentParent,g)+" of "+O.parent,H()),O.percentEntry=v.percentEntry=L/rd.getValue(r),O.entry=v.entry=rd.getPtLabel(r),Z("percent entry")&&!E&&!v.onPathbar&&(j=rd.formatPercent(O.percentEntry,g)+" of "+O.entry,H()),O.percentRoot=v.percentRoot=L/rd.getValue(l),O.root=v.root=rd.getPtLabel(l),Z("percent root")&&!E&&(j=rd.formatPercent(O.percentRoot,g)+" of "+O.root,H()),O.text=x("hovertext")||x("text"),Z("text")&&(j=O.text,m6e.isValidTextValue(j)&&G.push(j)),P=[GE(v,b,a.eventDataKeys)];var te={trace:b,y:z,_x0:v._x0,_x1:v._x1,_y0:v._y0,_y1:v._y1,text:G.join("<br>"),name:C||Z("name")?b.name:void 0,color:x("hoverlabel.bgcolor")||p.color,borderColor:x("hoverlabel.bordercolor"),fontFamily:x("hoverlabel.font.family"),fontSize:x("hoverlabel.font.size"),fontColor:x("hoverlabel.font.color"),fontWeight:x("hoverlabel.font.weight"),fontStyle:x("hoverlabel.font.style"),fontVariant:x("hoverlabel.font.variant"),nameLength:x("hoverlabel.namelength"),textAlign:x("hoverlabel.align"),hovertemplate:C,hovertemplateLabels:O,eventData:P};u&&(te.x0=T-v.rInscribed*v.rpx1,te.x1=T+v.rInscribed*v.rpx1,te.idealAlign=v.pxmid[0]<0?"left":"right"),c&&(te.x=T,te.idealAlign=T<0?"left":"right");var oe=[];VE.loneHover(te,{container:_._hoverlayer.node(),outerContainer:_._paper.node(),gd:n,inOut_bbox:oe}),P[0].bbox=oe[0],s._hasHoverLabel=!0}if(c){var _e=t.select("path.surface");a.styleOne(_e,v,b,n,{hovered:!0})}s._hasHoverEvent=!0,n.emit("plotly_hover",{points:P||[GE(v,b,a.eventDataKeys)],event:DA.event})}},h=function(v){var _=n._fullLayout,b=n._fullData[s.index],p=DA.select(this).datum();if(s._hasHoverEvent&&(v.originalEvent=DA.event,n.emit("plotly_unhover",{points:[GE(p,b,a.eventDataKeys)],event:DA.event}),s._hasHoverEvent=!1),s._hasHoverLabel&&(VE.loneUnhover(_._hoverlayer.node()),s._hasHoverLabel=!1),c){var k=t.select("path.surface");a.styleOne(k,p,b,n,{hovered:!1})}},d=function(v){var _=n._fullLayout,b=n._fullData[s.index],p=u&&(rd.isHierarchyRoot(v)||rd.isLeaf(v)),k=rd.getPtId(v),E=rd.isEntry(v)?rd.findEntryWithChild(l,k):rd.findEntryWithLevel(l,k),S=rd.getPtId(E),L={points:[GE(v,b,a.eventDataKeys)],event:DA.event};p||(L.nextLevel=S);var x=K6t.triggerHandler(n,"plotly_"+s.type+"click",L);if(x!==!1&&_.hovermode&&(n._hoverdata=[GE(v,b,a.eventDataKeys)],VE.click(n,DA.event)),!p&&x!==!1&&!n._dragging&&!n._transitioning){g6e.call("_storeDirectGUIEdit",b,_._tracePreGUI[b.uid],{level:b.level});var C={data:[{level:S}],traces:[s.index]},M={frame:{redraw:!1,duration:a.transitionTime},transition:{duration:a.transitionTime,easing:a.transitionEasing},mode:"immediate",fromcurrent:!0};VE.loneUnhover(_._hoverlayer.node()),g6e.call("animate",n,C,M)}};t.on("mouseover",f),t.on("mouseout",h),t.on("click",d)};function GE(e,t,r){for(var n=e.data.data,i={curveNumber:t.index,pointNumber:n.i,data:t._input,fullData:t},a=0;a<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),Y6t(i,t,n.i),i}});var VD=ye(UD=>{"use strict";var jE=Oa(),Q6t=PE(),Yg=(F2(),ob(D2)).interpolate,_6e=So(),Av=Dr(),eLt=ru(),T6e=bv(),x6e=T6e.recordMinTextSize,tLt=T6e.clearMinTextSize,A6e=_D(),rLt=l_().getRotationAngle,iLt=A6e.computeTransform,nLt=A6e.transformInsideText,aLt=VW().styleOne,oLt=N0().resizeText,sLt=HE(),GW=yW(),Rl=Ky();UD.plot=function(e,t,r,n){var i=e._fullLayout,a=i._sunburstlayer,o,s,l=!r,u=!i.uniformtext.mode&&Rl.hasTransition(r);if(tLt("sunburst",i),o=a.selectAll("g.trace.sunburst").data(t,function(f){return f[0].trace.uid}),o.enter().append("g").classed("trace",!0).classed("sunburst",!0).attr("stroke-linejoin","round"),o.order(),u){n&&(s=n());var c=jE.transition().duration(r.duration).ease(r.easing).each("end",function(){s&&s()}).each("interrupt",function(){s&&s()});c.each(function(){a.selectAll("g.trace").each(function(f){b6e(e,f,this,r)})})}else o.each(function(f){b6e(e,f,this,r)}),i.uniformtext.mode&&oLt(e,i._sunburstlayer.selectAll(".trace"),"sunburst");l&&o.exit().remove()};function b6e(e,t,r,n){var i=e._context.staticPlot,a=e._fullLayout,o=!a.uniformtext.mode&&Rl.hasTransition(n),s=jE.select(r),l=s.selectAll("g.slice"),u=t[0],c=u.trace,f=u.hierarchy,h=Rl.findEntryWithLevel(f,c.level),d=Rl.getMaxDepth(c),v=a._size,_=c.domain,b=v.w*(_.x[1]-_.x[0]),p=v.h*(_.y[1]-_.y[0]),k=.5*Math.min(b,p),E=u.cx=v.l+v.w*(_.x[1]+_.x[0])/2,S=u.cy=v.t+v.h*(1-_.y[0])-p/2;if(!h)return l.remove();var L=null,x={};o&&l.each(function(me){x[Rl.getPtId(me)]={rpx0:me.rpx0,rpx1:me.rpx1,x0:me.x0,x1:me.x1,transform:me.transform},!L&&Rl.isEntry(me)&&(L=me)});var C=lLt(h).descendants(),M=h.height+1,g=0,P=d;u.hasMultipleRoots&&Rl.isHierarchyRoot(h)&&(C=C.slice(1),M-=1,g=1,P+=1),C=C.filter(function(me){return me.y1<=P});var T=rLt(c.rotation);T&&C.forEach(function(me){me.x0+=T,me.x1+=T});var z=Math.min(M,d),O=function(me){return(me-g)/z*k},V=function(me,ie){return[me*Math.cos(ie),-me*Math.sin(ie)]},G=function(me){return Av.pathAnnulus(me.rpx0,me.rpx1,me.x0,me.x1,E,S)},Z=function(me){return E+w6e(me)[0]*(me.transform.rCenter||0)+(me.transform.x||0)},j=function(me){return S+w6e(me)[1]*(me.transform.rCenter||0)+(me.transform.y||0)};l=l.data(C,Rl.getPtId),l.enter().append("g").classed("slice",!0),o?l.exit().transition().each(function(){var me=jE.select(this),ie=me.select("path.surface");ie.transition().attrTween("d",function(Le){var Ae=oe(Le);return function(Fe){return G(Ae(Fe))}});var Se=me.select("g.slicetext");Se.attr("opacity",0)}).remove():l.exit().remove(),l.order();var N=null;if(o&&L){var H=Rl.getPtId(L);l.each(function(me){N===null&&Rl.getPtId(me)===H&&(N=me.x1)})}var te=l;o&&(te=te.transition().each("end",function(){var me=jE.select(this);Rl.setSliceCursor(me,e,{hideOnRoot:!0,hideOnLeaves:!0,isTransitioning:!1})})),te.each(function(me){var ie=jE.select(this),Se=Av.ensureSingle(ie,"path","surface",function(Re){Re.style("pointer-events",i?"none":"all")});me.rpx0=O(me.y0),me.rpx1=O(me.y1),me.xmid=(me.x0+me.x1)/2,me.pxmid=V(me.rpx1,me.xmid),me.midangle=-(me.xmid-Math.PI/2),me.startangle=-(me.x0-Math.PI/2),me.stopangle=-(me.x1-Math.PI/2),me.halfangle=.5*Math.min(Av.angleDelta(me.x0,me.x1)||Math.PI,Math.PI),me.ring=1-me.rpx0/me.rpx1,me.rInscribed=uLt(me,c),o?Se.transition().attrTween("d",function(Re){var ce=_e(Re);return function(Ze){return G(ce(Ze))}}):Se.attr("d",G),ie.call(sLt,h,e,t,{eventDataKeys:GW.eventDataKeys,transitionTime:GW.CLICK_TRANSITION_TIME,transitionEasing:GW.CLICK_TRANSITION_EASING}).call(Rl.setSliceCursor,e,{hideOnRoot:!0,hideOnLeaves:!0,isTransitioning:e._transitioning}),Se.call(aLt,me,c,e);var Le=Av.ensureSingle(ie,"g","slicetext"),Ae=Av.ensureSingle(Le,"text","",function(Re){Re.attr("data-notex",1)}),Fe=Av.ensureUniformFontSize(e,Rl.determineTextFont(c,me,a.font));Ae.text(UD.formatSliceLabel(me,h,c,t,a)).classed("slicetext",!0).attr("text-anchor","middle").call(_6e.font,Fe).call(eLt.convertToTspans,e);var Pe=_6e.bBox(Ae.node());me.transform=nLt(Pe,me,u),me.transform.targetX=Z(me),me.transform.targetY=j(me);var ge=function(Re,ce){var Ze=Re.transform;return iLt(Ze,ce),Ze.fontSize=Fe.size,x6e(c.type,Ze,a),Av.getTextTransform(Ze)};o?Ae.transition().attrTween("transform",function(Re){var ce=Ee(Re);return function(Ze){return ge(ce(Ze),Pe)}}):Ae.attr("transform",ge(me,Pe))});function oe(me){var ie=Rl.getPtId(me),Se=x[ie],Le=x[Rl.getPtId(h)],Ae;if(Le){var Fe=(me.x1>Le.x1?2*Math.PI:0)+T;Ae=me.rpx1<Le.rpx1?{x0:me.x0,x1:me.x1,rpx0:0,rpx1:0}:{x0:Fe,x1:Fe,rpx0:me.rpx0,rpx1:me.rpx1}}else{var Pe,ge=Rl.getPtId(me.parent);l.each(function(pt){if(Rl.getPtId(pt)===ge)return Pe=pt});var Re=Pe.children,ce;Re.forEach(function(pt,Zt){if(Rl.getPtId(pt)===ie)return ce=Zt});var Ze=Re.length,ut=Yg(Pe.x0,Pe.x1);Ae={rpx0:k,rpx1:k,x0:ut(ce/Ze),x1:ut((ce+1)/Ze)}}return Yg(Se,Ae)}function _e(me){var ie=x[Rl.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:k,rpx1:k},Av.extendFlat(Se,Ce(me));else Se={rpx0:0,rpx1:0};else Se={x0:T,x1:T};return Yg(Se,Le)}function Ee(me){var ie=x[Rl.getPtId(me)],Se,Le=me.transform;if(ie)Se=ie;else if(Se={rpx1:me.rpx1,transform:{textPosAngle:Le.textPosAngle,scale:0,rotate:Le.rotate,rCenter:Le.rCenter,x:Le.x,y:Le.y}},L)if(me.parent)if(N){var Ae=me.x1>N?2*Math.PI:0;Se.x0=Se.x1=Ae}else Av.extendFlat(Se,Ce(me));else Se.x0=Se.x1=T;else Se.x0=Se.x1=T;var Fe=Yg(Se.transform.textPosAngle,me.transform.textPosAngle),Pe=Yg(Se.rpx1,me.rpx1),ge=Yg(Se.x0,me.x0),Re=Yg(Se.x1,me.x1),ce=Yg(Se.transform.scale,Le.scale),Ze=Yg(Se.transform.rotate,Le.rotate),ut=Le.rCenter===0?3:Se.transform.rCenter===0?1/3:1,pt=Yg(Se.transform.rCenter,Le.rCenter),Zt=function(st){return pt(Math.pow(st,ut))};return function(st){var lt=Pe(st),Gt=ge(st),Nt=Re(st),Jt=Zt(st),sr=V(lt,(Gt+Nt)/2),wr=Fe(st),cr={pxmid:sr,rpx1:lt,transform:{textPosAngle:wr,rCenter:Jt,x:Le.x,y:Le.y}};return x6e(c.type,Le,a),{transform:{targetX:Z(cr),targetY:j(cr),scale:ce(st),rotate:Ze(st),rCenter:Jt}}}}function Ce(me){var ie=me.parent,Se=x[Rl.getPtId(ie)],Le={};if(Se){var Ae=ie.children,Fe=Ae.indexOf(me),Pe=Ae.length,ge=Yg(Se.x0,Se.x1);Le.x0=ge(Fe/Pe),Le.x1=ge(Fe/Pe)}else Le.x0=Le.x1=0;return Le}}function lLt(e){return Q6t.partition().size([2*Math.PI,e.height+1])(e)}UD.formatSliceLabel=function(e,t,r,n,i){var a=r.texttemplate,o=r.textinfo;if(!a&&(!o||o==="none"))return"";var s=i.separators,l=n[0],u=e.data.data,c=l.hierarchy,f=Rl.isHierarchyRoot(e),h=Rl.getParent(c,e),d=Rl.getValue(e);if(!a){var v=o.split("+"),_=function(g){return v.indexOf(g)!==-1},b=[],p;if(_("label")&&u.label&&b.push(u.label),u.hasOwnProperty("v")&&_("value")&&b.push(Rl.formatValue(u.v,s)),!f){_("current path")&&b.push(Rl.getPath(e.data));var k=0;_("percent parent")&&k++,_("percent entry")&&k++,_("percent root")&&k++;var E=k>1;if(k){var S,L=function(g){p=Rl.formatPercent(S,s),E&&(p+=" of "+g),b.push(p)};_("percent parent")&&!f&&(S=d/Rl.getValue(h),L("parent")),_("percent entry")&&(S=d/Rl.getValue(t),L("entry")),_("percent root")&&(S=d/Rl.getValue(c),L("root"))}}return _("text")&&(p=Av.castOption(r,u.i,"text"),Av.isValidTextValue(p)&&b.push(p)),b.join("<br>")}var x=Av.castOption(r,u.i,"texttemplate");if(!x)return"";var C={};u.label&&(C.label=u.label),u.hasOwnProperty("v")&&(C.value=u.v,C.valueLabel=Rl.formatValue(u.v,s)),C.currentPath=Rl.getPath(e.data),f||(C.percentParent=d/Rl.getValue(h),C.percentParentLabel=Rl.formatPercent(C.percentParent,s),C.parent=Rl.getPtLabel(h)),C.percentEntry=d/Rl.getValue(t),C.percentEntryLabel=Rl.formatPercent(C.percentEntry,s),C.entry=Rl.getPtLabel(t),C.percentRoot=d/Rl.getValue(c),C.percentRootLabel=Rl.formatPercent(C.percentRoot,s),C.root=Rl.getPtLabel(c),u.hasOwnProperty("color")&&(C.color=u.color);var M=Av.castOption(r,u.i,"text");return(Av.isValidTextValue(M)||M==="")&&(C.text=M),C.customdata=Av.castOption(r,u.i,"customdata"),Av.texttemplateString({data:[C,r._meta],fallback:r.texttemplatefallback,labels:C,locale:i._d3locale,template:x})};function uLt(e){return e.rpx0===0&&Av.isFullCircle([e.x0,e.x1])?1:Math.max(0,Math.min(1/(1+1/Math.sin(e.halfangle)),e.ring/2))}function w6e(e){return cLt(e.rpx1,e.transform.textPosAngle)}function cLt(e,t){return[e*Math.sin(t),-e*Math.cos(t)]}});var M6e=ye((e0r,S6e)=>{"use strict";S6e.exports={moduleType:"trace",name:"sunburst",basePlotModule:Bke(),categories:[],animatable:!0,attributes:LE(),layoutAttributes:_W(),supplyDefaults:Zke(),supplyLayoutDefaults:Kke(),calc:RE().calc,crossTraceCalc:RE().crossTraceCalc,plot:VD().plot,style:VW().style,colorbar:$d(),meta:{}}});var k6e=ye((t0r,E6e)=>{"use strict";E6e.exports=M6e()});var L6e=ye(FA=>{"use strict";var C6e=Mc();FA.name="treemap";FA.plot=function(e,t,r,n){C6e.plotBasePlot(FA.name,e,t,r,n)};FA.clean=function(e,t,r,n){C6e.cleanBasePlot(FA.name,e,t,r,n)}});var O2=ye((i0r,P6e)=>{"use strict";P6e.exports={CLICK_TRANSITION_TIME:750,CLICK_TRANSITION_EASING:"poly",eventDataKeys:["currentPath","root","entry","percentRoot","percentEntry","percentParent"],gapWithPathbar:1}});var GD=ye((n0r,D6e)=>{"use strict";var{hovertemplateAttrs:fLt,texttemplateAttrs:hLt,templatefallbackAttrs:I6e}=Ll(),dLt=Tu(),vLt=Cc().attributes,q2=M2(),Q0=LE(),R6e=O2(),HW=Ao().extendFlat,pLt=Pd().pattern;D6e.exports={labels:Q0.labels,parents:Q0.parents,values:Q0.values,branchvalues:Q0.branchvalues,count:Q0.count,level:Q0.level,maxdepth:Q0.maxdepth,tiling:{packing:{valType:"enumerated",values:["squarify","binary","dice","slice","slice-dice","dice-slice"],dflt:"squarify",editType:"plot"},squarifyratio:{valType:"number",min:1,dflt:1,editType:"plot"},flip:{valType:"flaglist",flags:["x","y"],dflt:"",editType:"plot"},pad:{valType:"number",min:0,dflt:3,editType:"plot"},editType:"calc"},marker:HW({pad:{t:{valType:"number",min:0,editType:"plot"},l:{valType:"number",min:0,editType:"plot"},r:{valType:"number",min:0,editType:"plot"},b:{valType:"number",min:0,editType:"plot"},editType:"calc"},colors:Q0.marker.colors,pattern:pLt,depthfade:{valType:"enumerated",values:[!0,!1,"reversed"],editType:"style"},line:Q0.marker.line,cornerradius:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"calc"},dLt("marker",{colorAttr:"colors",anim:!1})),pathbar:{visible:{valType:"boolean",dflt:!0,editType:"plot"},side:{valType:"enumerated",values:["top","bottom"],dflt:"top",editType:"plot"},edgeshape:{valType:"enumerated",values:[">","<","|","/","\\"],dflt:">",editType:"plot"},thickness:{valType:"number",min:12,editType:"plot"},textfont:HW({},q2.textfont,{}),editType:"calc"},text:q2.text,textinfo:Q0.textinfo,texttemplate:hLt({editType:"plot"},{keys:R6e.eventDataKeys.concat(["label","value"])}),texttemplatefallback:I6e({editType:"plot"}),hovertext:q2.hovertext,hoverinfo:Q0.hoverinfo,hovertemplate:fLt({},{keys:R6e.eventDataKeys}),hovertemplatefallback:I6e(),textfont:q2.textfont,insidetextfont:q2.insidetextfont,outsidetextfont:HW({},q2.outsidetextfont,{}),textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right"],dflt:"top left",editType:"plot"},sort:q2.sort,root:Q0.root,domain:vLt({name:"treemap",trace:!0,editType:"calc"})}});var jW=ye((a0r,F6e)=>{"use strict";F6e.exports={treemapcolorway:{valType:"colorlist",editType:"calc"},extendtreemapcolors:{valType:"boolean",dflt:!0,editType:"calc"}}});var B6e=ye((o0r,q6e)=>{"use strict";var z6e=Dr(),gLt=GD(),mLt=ka(),yLt=Cc().defaults,_Lt=r0().handleText,xLt=e2().TEXTPAD,bLt=E2().handleMarkerDefaults,O6e=tc(),wLt=O6e.hasColorscale,TLt=O6e.handleDefaults;q6e.exports=function(t,r,n,i){function a(b,p){return z6e.coerce(t,r,gLt,b,p)}var o=a("labels"),s=a("parents");if(!o||!o.length||!s||!s.length){r.visible=!1;return}var l=a("values");l&&l.length?a("branchvalues"):a("count"),a("level"),a("maxdepth");var u=a("tiling.packing");u==="squarify"&&a("tiling.squarifyratio"),a("tiling.flip"),a("tiling.pad");var c=a("text");a("texttemplate"),a("texttemplatefallback"),r.texttemplate||a("textinfo",z6e.isArrayOrTypedArray(c)?"text+label":"label"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback");var f=a("pathbar.visible"),h="auto";_Lt(t,r,i,a,h,{hasPathbar:f,moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),a("textposition");var d=r.textposition.indexOf("bottom")!==-1;bLt(t,r,i,a);var v=r._hasColorscale=wLt(t,"marker","colors")||(t.marker||{}).coloraxis;v?TLt(t,r,i,a,{prefix:"marker.",cLetter:"c"}):a("marker.depthfade",!(r.marker.colors||[]).length);var _=r.textfont.size*2;a("marker.pad.t",d?_/4:_),a("marker.pad.l",_/4),a("marker.pad.r",_/4),a("marker.pad.b",d?_:_/4),a("marker.cornerradius"),r._hovered={marker:{line:{width:2,color:mLt.contrast(i.paper_bgcolor)}}},f&&(a("pathbar.thickness",r.pathbar.textfont.size+2*xLt),a("pathbar.side"),a("pathbar.edgeshape")),a("sort"),a("root.color"),yLt(r,i,a),r._length=null}});var U6e=ye((s0r,N6e)=>{"use strict";var ALt=Dr(),SLt=jW();N6e.exports=function(t,r){function n(i,a){return ALt.coerce(t,r,SLt,i,a)}n("treemapcolorway",r.colorway),n("extendtreemapcolors")}});var XW=ye(WW=>{"use strict";var V6e=RE();WW.calc=function(e,t){return V6e.calc(e,t)};WW.crossTraceCalc=function(e){return V6e._runCrossTraceCalc("treemap",e)}});var ZW=ye((u0r,G6e)=>{"use strict";G6e.exports=function e(t,r,n){var i;n.swapXY&&(i=t.x0,t.x0=t.y0,t.y0=i,i=t.x1,t.x1=t.y1,t.y1=i),n.flipX&&(i=t.x0,t.x0=r[0]-t.x1,t.x1=r[0]-i),n.flipY&&(i=t.y0,t.y0=r[1]-t.y1,t.y1=r[1]-i);var a=t.children;if(a)for(var o=0;o<a.length;o++)e(a[o],r,n)}});var YW=ye((c0r,H6e)=>{"use strict";var zA=PE(),MLt=ZW();H6e.exports=function(t,r,n){var i=n.flipX,a=n.flipY,o=n.packing==="dice-slice",s=n.pad[a?"bottom":"top"],l=n.pad[i?"right":"left"],u=n.pad[i?"left":"right"],c=n.pad[a?"top":"bottom"],f;o&&(f=l,l=s,s=f,f=u,u=c,c=f);var h=zA.treemap().tile(ELt(n.packing,n.squarifyratio)).paddingInner(n.pad.inner).paddingLeft(l).paddingRight(u).paddingTop(s).paddingBottom(c).size(o?[r[1],r[0]]:r)(t);return(o||i||a)&&MLt(h,r,{swapXY:o,flipX:i,flipY:a}),h};function ELt(e,t){switch(e){case"squarify":return zA.treemapSquarify.ratio(t);case"binary":return zA.treemapBinary;case"dice":return zA.treemapDice;case"slice":return zA.treemapSlice;default:return zA.treemapSliceDice}}});var HD=ye((f0r,Z6e)=>{"use strict";var j6e=Oa(),OA=ka(),W6e=Dr(),KW=Ky(),kLt=bv().resizeText,CLt=ND();function LLt(e){var t=e._fullLayout._treemaplayer.selectAll(".trace");kLt(e,t,"treemap"),t.each(function(r){var n=j6e.select(this),i=r[0],a=i.trace;n.style("opacity",a.opacity),n.selectAll("path.surface").each(function(o){j6e.select(this).call(X6e,o,a,e,{hovered:!1})})})}function X6e(e,t,r,n,i){var a=(i||{}).hovered,o=t.data.data,s=o.i,l,u,c=o.color,f=KW.isHierarchyRoot(t),h=1;if(a)l=r._hovered.marker.line.color,u=r._hovered.marker.line.width;else if(f&&c===r.root.color)h=100,l="rgba(0,0,0,0)",u=0;else if(l=W6e.castOption(r,s,"marker.line.color")||OA.defaultLine,u=W6e.castOption(r,s,"marker.line.width")||0,!r._hasColorscale&&!t.onPathbar){var d=r.marker.depthfade;if(d){var v=OA.combine(OA.addOpacity(r._backgroundColor,.75),c),_;if(d===!0){var b=KW.getMaxDepth(r);isFinite(b)?KW.isLeaf(t)?_=0:_=r._maxVisibleLayers-(t.data.depth-r._entryDepth):_=t.data.height+1}else _=t.data.depth-r._entryDepth,r._atRootLevel||_++;if(_>0)for(var p=0;p<_;p++){var k=.5*p/_;c=OA.combine(OA.addOpacity(v,k),c)}}}e.call(CLt,t,r,n,c).style("stroke-width",u).call(OA.stroke,l).style("opacity",h)}Z6e.exports={style:LLt,styleOne:X6e}});var Q6e=ye((h0r,$6e)=>{"use strict";var Y6e=Oa(),jD=Dr(),K6e=So(),PLt=ru(),ILt=YW(),J6e=HD().styleOne,JW=O2(),qA=Ky(),RLt=HE(),$W=!0;$6e.exports=function(t,r,n,i,a){var o=a.barDifY,s=a.width,l=a.height,u=a.viewX,c=a.viewY,f=a.pathSlice,h=a.toMoveInsideSlice,d=a.strTransform,v=a.hasTransition,_=a.handleSlicesExit,b=a.makeUpdateSliceInterpolator,p=a.makeUpdateTextInterpolator,k={},E=t._context.staticPlot,S=t._fullLayout,L=r[0],x=L.trace,C=L.hierarchy,M=s/x._entryDepth,g=qA.listPath(n.data,"id"),P=ILt(C.copy(),[s,l],{packing:"dice",pad:{inner:0,top:0,left:0,right:0,bottom:0}}).descendants();P=P.filter(function(z){var O=g.indexOf(z.data.id);return O===-1?!1:(z.x0=M*O,z.x1=M*(O+1),z.y0=o,z.y1=o+l,z.onPathbar=!0,!0)}),P.reverse(),i=i.data(P,qA.getPtId),i.enter().append("g").classed("pathbar",!0),_(i,$W,k,[s,l],f),i.order();var T=i;v&&(T=T.transition().each("end",function(){var z=Y6e.select(this);qA.setSliceCursor(z,t,{hideOnRoot:!1,hideOnLeaves:!1,isTransitioning:!1})})),T.each(function(z){z._x0=u(z.x0),z._x1=u(z.x1),z._y0=c(z.y0),z._y1=c(z.y1),z._hoverX=u(z.x1-Math.min(s,l)/2),z._hoverY=c(z.y1-l/2);var O=Y6e.select(this),V=jD.ensureSingle(O,"path","surface",function(N){N.style("pointer-events",E?"none":"all")});v?V.transition().attrTween("d",function(N){var H=b(N,$W,k,[s,l]);return function(te){return f(H(te))}}):V.attr("d",f),O.call(RLt,n,t,r,{styleOne:J6e,eventDataKeys:JW.eventDataKeys,transitionTime:JW.CLICK_TRANSITION_TIME,transitionEasing:JW.CLICK_TRANSITION_EASING}).call(qA.setSliceCursor,t,{hideOnRoot:!1,hideOnLeaves:!1,isTransitioning:t._transitioning}),V.call(J6e,z,x,t,{hovered:!1}),z._text=(qA.getPtLabel(z)||"").split("<br>").join(" ")||"";var G=jD.ensureSingle(O,"g","slicetext"),Z=jD.ensureSingle(G,"text","",function(N){N.attr("data-notex",1)}),j=jD.ensureUniformFontSize(t,qA.determineTextFont(x,z,S.font,{onPathbar:!0}));Z.text(z._text||" ").classed("slicetext",!0).attr("text-anchor","start").call(K6e.font,j).call(PLt.convertToTspans,t),z.textBB=K6e.bBox(Z.node()),z.transform=h(z,{fontSize:j.size,onPathbar:!0}),z.transform.fontSize=j.size,v?Z.transition().attrTween("transform",function(N){var H=p(N,$W,k,[s,l]);return function(te){return d(H(te))}}):Z.attr("transform",d(z))})}});var iLe=ye((d0r,rLe)=>{"use strict";var eLe=Oa(),QW=(F2(),ob(D2)).interpolate,Z_=Ky(),WE=Dr(),tLe=e2().TEXTPAD,DLt=n2(),FLt=DLt.toMoveInsideBar,zLt=bv(),eX=zLt.recordMinTextSize,OLt=O2(),qLt=Q6e();function B2(e){return Z_.isHierarchyRoot(e)?"":Z_.getPtId(e)}rLe.exports=function(t,r,n,i,a){var o=t._fullLayout,s=r[0],l=s.trace,u=l.type,c=u==="icicle",f=s.hierarchy,h=Z_.findEntryWithLevel(f,l.level),d=eLe.select(n),v=d.selectAll("g.pathbar"),_=d.selectAll("g.slice");if(!h){v.remove(),_.remove();return}var b=Z_.isHierarchyRoot(h),p=!o.uniformtext.mode&&Z_.hasTransition(i),k=Z_.getMaxDepth(l),E=function($e){return $e.data.depth-h.data.depth<k},S=o._size,L=l.domain,x=S.w*(L.x[1]-L.x[0]),C=S.h*(L.y[1]-L.y[0]),M=x,g=l.pathbar.thickness,P=l.marker.line.width+OLt.gapWithPathbar,T=l.pathbar.visible?l.pathbar.side.indexOf("bottom")>-1?C+P:-(g+P):0,z={x0:M,x1:M,y0:T,y1:T+g},O=function($e,St,Qt){var Vt=l.tiling.pad,_t=function(lr){return lr-Vt<=St.x0},It=function(lr){return lr+Vt>=St.x1},mt=function(lr){return lr-Vt<=St.y0},er=function(lr){return lr+Vt>=St.y1};return $e.x0===St.x0&&$e.x1===St.x1&&$e.y0===St.y0&&$e.y1===St.y1?{x0:$e.x0,x1:$e.x1,y0:$e.y0,y1:$e.y1}:{x0:_t($e.x0-Vt)?0:It($e.x0-Vt)?Qt[0]:$e.x0,x1:_t($e.x1+Vt)?0:It($e.x1+Vt)?Qt[0]:$e.x1,y0:mt($e.y0-Vt)?0:er($e.y0-Vt)?Qt[1]:$e.y0,y1:mt($e.y1+Vt)?0:er($e.y1+Vt)?Qt[1]:$e.y1}},V=null,G={},Z={},j=null,N=function($e,St){return St?G[B2($e)]:Z[B2($e)]},H=function($e,St,Qt,Vt){if(St)return G[B2(f)]||z;var _t=Z[l.level]||Qt;return E($e)?O($e,_t,Vt):{}};s.hasMultipleRoots&&b&&k++,l._maxDepth=k,l._backgroundColor=o.paper_bgcolor,l._entryDepth=h.data.depth,l._atRootLevel=b;var te=-x/2+S.l+S.w*(L.x[1]+L.x[0])/2,oe=-C/2+S.t+S.h*(1-(L.y[1]+L.y[0])/2),_e=function($e){return te+$e},Ee=function($e){return oe+$e},Ce=Ee(0),me=_e(0),ie=function($e){return me+$e},Se=function($e){return Ce+$e};function Le($e,St){return $e+","+St}var Ae=ie(0),Fe=function($e){$e.x=Math.max(Ae,$e.x)},Pe=l.pathbar.edgeshape,ge=function($e){var St=ie(Math.max(Math.min($e.x0,$e.x0),0)),Qt=ie(Math.min(Math.max($e.x1,$e.x1),M)),Vt=Se($e.y0),_t=Se($e.y1),It=g/2,mt={},er={};mt.x=St,er.x=Qt,mt.y=er.y=(Vt+_t)/2;var lr={x:St,y:Vt},Tr={x:Qt,y:Vt},Lr={x:Qt,y:_t},ti={x:St,y:_t};return Pe===">"?(lr.x-=It,Tr.x-=It,Lr.x-=It,ti.x-=It):Pe==="/"?(Lr.x-=It,ti.x-=It,mt.x-=It/2,er.x-=It/2):Pe==="\\"?(lr.x-=It,Tr.x-=It,mt.x-=It/2,er.x-=It/2):Pe==="<"&&(mt.x-=It,er.x-=It),Fe(lr),Fe(ti),Fe(mt),Fe(Tr),Fe(Lr),Fe(er),"M"+Le(lr.x,lr.y)+"L"+Le(Tr.x,Tr.y)+"L"+Le(er.x,er.y)+"L"+Le(Lr.x,Lr.y)+"L"+Le(ti.x,ti.y)+"L"+Le(mt.x,mt.y)+"Z"},Re=l[c?"tiling":"marker"].pad,ce=function($e){return l.textposition.indexOf($e)!==-1},Ze=ce("top"),ut=ce("left"),pt=ce("right"),Zt=ce("bottom"),st=function($e){var St=_e($e.x0),Qt=_e($e.x1),Vt=Ee($e.y0),_t=Ee($e.y1),It=Qt-St,mt=_t-Vt;if(!It||!mt)return"";var er=l.marker.cornerradius||0,lr=Math.min(er,It/2,mt/2);lr&&$e.data&&$e.data.data&&$e.data.data.label&&(Ze&&(lr=Math.min(lr,Re.t)),ut&&(lr=Math.min(lr,Re.l)),pt&&(lr=Math.min(lr,Re.r)),Zt&&(lr=Math.min(lr,Re.b)));var Tr=function(Lr,ti){return lr?"a"+Le(lr,lr)+" 0 0 1 "+Le(Lr,ti):""};return"M"+Le(St,Vt+lr)+Tr(lr,-lr)+"L"+Le(Qt-lr,Vt)+Tr(lr,lr)+"L"+Le(Qt,_t-lr)+Tr(-lr,lr)+"L"+Le(St+lr,_t)+Tr(-lr,-lr)+"Z"},lt=function($e,St){var Qt=$e.x0,Vt=$e.x1,_t=$e.y0,It=$e.y1,mt=$e.textBB,er=Ze||St.isHeader&&!Zt,lr=er?"start":Zt?"end":"middle",Tr=ce("right"),Lr=ce("left")||St.onPathbar,ti=Lr?-1:Tr?1:0;if(St.isHeader){if(Qt+=(c?Re:Re.l)-tLe,Vt-=(c?Re:Re.r)-tLe,Qt>=Vt){var Br=(Qt+Vt)/2;Qt=Br,Vt=Br}var Vr;Zt?(Vr=It-(c?Re:Re.b),_t<Vr&&Vr<It&&(_t=Vr)):(Vr=_t+(c?Re:Re.t),_t<Vr&&Vr<It&&(It=Vr))}var dt=FLt(Qt,Vt,_t,It,mt,{isHorizontal:!1,constrained:!0,angle:0,anchor:lr,leftToRight:ti});return dt.fontSize=St.fontSize,dt.targetX=_e(dt.targetX),dt.targetY=Ee(dt.targetY),isNaN(dt.targetX)||isNaN(dt.targetY)?{}:(Qt!==Vt&&_t!==It&&eX(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($e,St){for(var Qt,Vt=0,_t=$e;!Qt&&Vt<k;)Vt++,_t=_t.parent,_t?Qt=N(_t,St):Vt=k;return Qt||{}},Nt=function($e,St,Qt,Vt){var _t=N($e,St),It;if(St)It=z;else{var mt=N(h,St);mt?It=O($e,mt,Vt):It={}}return QW(_t,It)},Jt=function($e,St,Qt,Vt,_t){var It=N($e,St),mt;if(It)mt=It;else if(St)mt=z;else if(V)if($e.parent){var er=j||Qt;er&&!St?mt=O($e,er,Vt):(mt={},WE.extendFlat(mt,Gt($e,St)))}else mt=WE.extendFlat({},$e),c&&(_t.orientation==="h"?_t.flipX?mt.x0=$e.x1:mt.x1=0:_t.flipY?mt.y0=$e.y1:mt.y1=0);else mt={};return QW(mt,{x0:$e.x0,x1:$e.x1,y0:$e.y0,y1:$e.y1})},sr=function($e,St,Qt,Vt){var _t=N($e,St),It={},mt=H($e,St,Qt,Vt);WE.extendFlat(It,{transform:lt({x0:mt.x0,x1:mt.x1,y0:mt.y0,y1:mt.y1,textBB:$e.textBB,_text:$e._text},{isHeader:Z_.isHeader($e,l)})}),_t?It=_t:$e.parent&&WE.extendFlat(It,Gt($e,St));var er=$e.transform;return $e.x0!==$e.x1&&$e.y0!==$e.y1&&eX(l.type,er,o),QW(It,{transform:{scale:er.scale,rotate:er.rotate,textX:er.textX,textY:er.textY,anchorX:er.anchorX,anchorY:er.anchorY,targetX:er.targetX,targetY:er.targetY}})},wr=function($e,St,Qt,Vt,_t){var It=Vt[0],mt=Vt[1];p?$e.exit().transition().each(function(){var er=eLe.select(this),lr=er.select("path.surface");lr.transition().attrTween("d",function(Lr){var ti=Nt(Lr,St,Qt,[It,mt]);return function(Br){return _t(ti(Br))}});var Tr=er.select("g.slicetext");Tr.attr("opacity",0)}).remove():$e.exit().remove()},cr=function($e){var St=$e.transform;return $e.x0!==$e.x1&&$e.y0!==$e.y1&&eX(l.type,St,o),WE.getTextTransform({textX:St.textX,textY:St.textY,anchorX:St.anchorX,anchorY:St.anchorY,targetX:St.targetX,targetY:St.targetY,scale:St.scale,rotate:St.rotate})};p&&(v.each(function($e){G[B2($e)]={x0:$e.x0,x1:$e.x1,y0:$e.y0,y1:$e.y1},$e.transform&&(G[B2($e)].transform={textX:$e.transform.textX,textY:$e.transform.textY,anchorX:$e.transform.anchorX,anchorY:$e.transform.anchorY,targetX:$e.transform.targetX,targetY:$e.transform.targetY,scale:$e.transform.scale,rotate:$e.transform.rotate})}),_.each(function($e){Z[B2($e)]={x0:$e.x0,x1:$e.x1,y0:$e.y0,y1:$e.y1},$e.transform&&(Z[B2($e)].transform={textX:$e.transform.textX,textY:$e.transform.textY,anchorX:$e.transform.anchorX,anchorY:$e.transform.anchorY,targetX:$e.transform.targetX,targetY:$e.transform.targetY,scale:$e.transform.scale,rotate:$e.transform.rotate}),!V&&Z_.isEntry($e)&&(V=$e)})),j=a(t,r,h,_,{width:x,height:C,viewX:_e,viewY:Ee,pathSlice:st,toMoveInsideSlice:lt,prevEntry:V,makeUpdateSliceInterpolator:Jt,makeUpdateTextInterpolator:sr,handleSlicesExit:wr,hasTransition:p,strTransform:cr}),l.pathbar.visible?qLt(t,r,h,v,{barDifY:T,width:M,height:g,viewX:ie,viewY:Se,pathSlice:ge,toMoveInsideSlice:lt,makeUpdateSliceInterpolator:Jt,makeUpdateTextInterpolator:sr,handleSlicesExit:wr,hasTransition:p,strTransform:cr}):v.remove()}});var tX=ye((v0r,aLe)=>{"use strict";var BLt=Oa(),NLt=Ky(),ULt=bv(),VLt=ULt.clearMinTextSize,GLt=N0().resizeText,nLe=iLe();aLe.exports=function(t,r,n,i,a){var o=a.type,s=a.drawDescendants,l=t._fullLayout,u=l["_"+o+"layer"],c,f,h=!n;if(VLt(o,l),c=u.selectAll("g.trace."+o).data(r,function(v){return v[0].trace.uid}),c.enter().append("g").classed("trace",!0).classed(o,!0),c.order(),!l.uniformtext.mode&&NLt.hasTransition(n)){i&&(f=i());var d=BLt.transition().duration(n.duration).ease(n.easing).each("end",function(){f&&f()}).each("interrupt",function(){f&&f()});d.each(function(){u.selectAll("g.trace").each(function(v){nLe(t,v,this,n,s)})})}else c.each(function(v){nLe(t,v,this,n,s)}),l.uniformtext.mode&&GLt(t,u.selectAll(".trace"),o);h&&c.exit().remove()}});var cLe=ye((p0r,uLe)=>{"use strict";var oLe=Oa(),WD=Dr(),sLe=So(),HLt=ru(),jLt=YW(),lLe=HD().styleOne,rX=O2(),Y_=Ky(),WLt=HE(),XLt=VD().formatSliceLabel,iX=!1;uLe.exports=function(t,r,n,i,a){var o=a.width,s=a.height,l=a.viewX,u=a.viewY,c=a.pathSlice,f=a.toMoveInsideSlice,h=a.strTransform,d=a.hasTransition,v=a.handleSlicesExit,_=a.makeUpdateSliceInterpolator,b=a.makeUpdateTextInterpolator,p=a.prevEntry,k={},E=t._context.staticPlot,S=t._fullLayout,L=r[0],x=L.trace,C=x.textposition.indexOf("left")!==-1,M=x.textposition.indexOf("right")!==-1,g=x.textposition.indexOf("bottom")!==-1,P=!g&&!x.marker.pad.t||g&&!x.marker.pad.b,T=jLt(n,[o,s],{packing:x.tiling.packing,squarifyratio:x.tiling.squarifyratio,flipX:x.tiling.flip.indexOf("x")>-1,flipY:x.tiling.flip.indexOf("y")>-1,pad:{inner:x.tiling.pad,top:x.marker.pad.t,left:x.marker.pad.l,right:x.marker.pad.r,bottom:x.marker.pad.b}}),z=T.descendants(),O=1/0,V=-1/0;z.forEach(function(H){var te=H.depth;te>=x._maxDepth?(H.x0=H.x1=(H.x0+H.x1)/2,H.y0=H.y1=(H.y0+H.y1)/2):(O=Math.min(O,te),V=Math.max(V,te))}),i=i.data(z,Y_.getPtId),x._maxVisibleLayers=isFinite(V)?V-O+1:0,i.enter().append("g").classed("slice",!0),v(i,iX,k,[o,s],c),i.order();var G=null;if(d&&p){var Z=Y_.getPtId(p);i.each(function(H){G===null&&Y_.getPtId(H)===Z&&(G={x0:H.x0,x1:H.x1,y0:H.y0,y1:H.y1})})}var j=function(){return G||{x0:0,x1:o,y0:0,y1:s}},N=i;return d&&(N=N.transition().each("end",function(){var H=oLe.select(this);Y_.setSliceCursor(H,t,{hideOnRoot:!0,hideOnLeaves:!1,isTransitioning:!1})})),N.each(function(H){var te=Y_.isHeader(H,x);H._x0=l(H.x0),H._x1=l(H.x1),H._y0=u(H.y0),H._y1=u(H.y1),H._hoverX=l(H.x1-x.marker.pad.r),H._hoverY=u(g?H.y1-x.marker.pad.b/2:H.y0+x.marker.pad.t/2);var oe=oLe.select(this),_e=WD.ensureSingle(oe,"path","surface",function(Le){Le.style("pointer-events",E?"none":"all")});d?_e.transition().attrTween("d",function(Le){var Ae=_(Le,iX,j(),[o,s]);return function(Fe){return c(Ae(Fe))}}):_e.attr("d",c),oe.call(WLt,n,t,r,{styleOne:lLe,eventDataKeys:rX.eventDataKeys,transitionTime:rX.CLICK_TRANSITION_TIME,transitionEasing:rX.CLICK_TRANSITION_EASING}).call(Y_.setSliceCursor,t,{isTransitioning:t._transitioning}),_e.call(lLe,H,x,t,{hovered:!1}),H.x0===H.x1||H.y0===H.y1?H._text="":te?H._text=P?"":Y_.getPtLabel(H)||"":H._text=XLt(H,n,x,r,S)||"";var Ee=WD.ensureSingle(oe,"g","slicetext"),Ce=WD.ensureSingle(Ee,"text","",function(Le){Le.attr("data-notex",1)}),me=WD.ensureUniformFontSize(t,Y_.determineTextFont(x,H,S.font)),ie=H._text||" ",Se=te&&ie.indexOf("<br>")===-1;Ce.text(ie).classed("slicetext",!0).attr("text-anchor",M?"end":C||Se?"start":"middle").call(sLe.font,me).call(HLt.convertToTspans,t),H.textBB=sLe.bBox(Ce.node()),H.transform=f(H,{fontSize:me.size,isHeader:te}),H.transform.fontSize=me.size,d?Ce.transition().attrTween("transform",function(Le){var Ae=b(Le,iX,j(),[o,s]);return function(Fe){return h(Ae(Fe))}}):Ce.attr("transform",h(H))}),G}});var hLe=ye((g0r,fLe)=>{"use strict";var ZLt=tX(),YLt=cLe();fLe.exports=function(t,r,n,i){return ZLt(t,r,n,i,{type:"treemap",drawDescendants:YLt})}});var vLe=ye((m0r,dLe)=>{"use strict";dLe.exports={moduleType:"trace",name:"treemap",basePlotModule:L6e(),categories:[],animatable:!0,attributes:GD(),layoutAttributes:jW(),supplyDefaults:B6e(),supplyLayoutDefaults:U6e(),calc:XW().calc,crossTraceCalc:XW().crossTraceCalc,plot:hLe(),style:HD().style,colorbar:$d(),meta:{}}});var gLe=ye((y0r,pLe)=>{"use strict";pLe.exports=vLe()});var yLe=ye(BA=>{"use strict";var mLe=Mc();BA.name="icicle";BA.plot=function(e,t,r,n){mLe.plotBasePlot(BA.name,e,t,r,n)};BA.clean=function(e,t,r,n){mLe.cleanBasePlot(BA.name,e,t,r,n)}});var nX=ye((x0r,bLe)=>{"use strict";var{hovertemplateAttrs:KLt,texttemplateAttrs:JLt,templatefallbackAttrs:_Le}=Ll(),$Lt=Tu(),QLt=Cc().attributes,XE=M2(),o0=LE(),XD=GD(),xLe=O2(),ePt=Ao().extendFlat,tPt=Pd().pattern;bLe.exports={labels:o0.labels,parents:o0.parents,values:o0.values,branchvalues:o0.branchvalues,count:o0.count,level:o0.level,maxdepth:o0.maxdepth,tiling:{orientation:{valType:"enumerated",values:["v","h"],dflt:"h",editType:"plot"},flip:XD.tiling.flip,pad:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"calc"},marker:ePt({colors:o0.marker.colors,line:o0.marker.line,pattern:tPt,editType:"calc"},$Lt("marker",{colorAttr:"colors",anim:!1})),leaf:o0.leaf,pathbar:XD.pathbar,text:XE.text,textinfo:o0.textinfo,texttemplate:JLt({editType:"plot"},{keys:xLe.eventDataKeys.concat(["label","value"])}),texttemplatefallback:_Le({editType:"plot"}),hovertext:XE.hovertext,hoverinfo:o0.hoverinfo,hovertemplate:KLt({},{keys:xLe.eventDataKeys}),hovertemplatefallback:_Le(),textfont:XE.textfont,insidetextfont:XE.insidetextfont,outsidetextfont:XD.outsidetextfont,textposition:XD.textposition,sort:XE.sort,root:o0.root,domain:QLt({name:"icicle",trace:!0,editType:"calc"})}});var aX=ye((b0r,wLe)=>{"use strict";wLe.exports={iciclecolorway:{valType:"colorlist",editType:"calc"},extendiciclecolors:{valType:"boolean",dflt:!0,editType:"calc"}}});var MLe=ye((w0r,SLe)=>{"use strict";var TLe=Dr(),rPt=nX(),iPt=ka(),nPt=Cc().defaults,aPt=r0().handleText,oPt=e2().TEXTPAD,sPt=E2().handleMarkerDefaults,ALe=tc(),lPt=ALe.hasColorscale,uPt=ALe.handleDefaults;SLe.exports=function(t,r,n,i){function a(d,v){return TLe.coerce(t,r,rPt,d,v)}var o=a("labels"),s=a("parents");if(!o||!o.length||!s||!s.length){r.visible=!1;return}var l=a("values");l&&l.length?a("branchvalues"):a("count"),a("level"),a("maxdepth"),a("tiling.orientation"),a("tiling.flip"),a("tiling.pad");var u=a("text");a("texttemplate"),a("texttemplatefallback"),r.texttemplate||a("textinfo",TLe.isArrayOrTypedArray(u)?"text+label":"label"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback");var c=a("pathbar.visible"),f="auto";aPt(t,r,i,a,f,{hasPathbar:c,moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),a("textposition"),sPt(t,r,i,a);var h=r._hasColorscale=lPt(t,"marker","colors")||(t.marker||{}).coloraxis;h&&uPt(t,r,i,a,{prefix:"marker.",cLetter:"c"}),a("leaf.opacity",h?1:.7),r._hovered={marker:{line:{width:2,color:iPt.contrast(i.paper_bgcolor)}}},c&&(a("pathbar.thickness",r.pathbar.textfont.size+2*oPt),a("pathbar.side"),a("pathbar.edgeshape")),a("sort"),a("root.color"),nPt(r,i,a),r._length=null}});var kLe=ye((T0r,ELe)=>{"use strict";var cPt=Dr(),fPt=aX();ELe.exports=function(t,r){function n(i,a){return cPt.coerce(t,r,fPt,i,a)}n("iciclecolorway",r.colorway),n("extendiciclecolors")}});var sX=ye(oX=>{"use strict";var CLe=RE();oX.calc=function(e,t){return CLe.calc(e,t)};oX.crossTraceCalc=function(e){return CLe._runCrossTraceCalc("icicle",e)}});var PLe=ye((S0r,LLe)=>{"use strict";var hPt=PE(),dPt=ZW();LLe.exports=function(t,r,n){var i=n.flipX,a=n.flipY,o=n.orientation==="h",s=n.maxDepth,l=r[0],u=r[1];s&&(l=(t.height+1)*r[0]/Math.min(t.height+1,s),u=(t.height+1)*r[1]/Math.min(t.height+1,s));var c=hPt.partition().padding(n.pad.inner).size(o?[r[1],l]:[r[0],u])(t);return(o||i||a)&&dPt(c,r,{swapXY:o,flipX:i,flipY:a}),c}});var lX=ye((M0r,zLe)=>{"use strict";var ILe=Oa(),RLe=ka(),DLe=Dr(),vPt=bv().resizeText,pPt=ND();function gPt(e){var t=e._fullLayout._iciclelayer.selectAll(".trace");vPt(e,t,"icicle"),t.each(function(r){var n=ILe.select(this),i=r[0],a=i.trace;n.style("opacity",a.opacity),n.selectAll("path.surface").each(function(o){ILe.select(this).call(FLe,o,a,e)})})}function FLe(e,t,r,n){var i=t.data.data,a=!t.children,o=i.i,s=DLe.castOption(r,o,"marker.line.color")||RLe.defaultLine,l=DLe.castOption(r,o,"marker.line.width")||0;e.call(pPt,t,r,n).style("stroke-width",l).call(RLe.stroke,s).style("opacity",a?r.leaf.opacity:null)}zLe.exports={style:gPt,styleOne:FLe}});var ULe=ye((E0r,NLe)=>{"use strict";var OLe=Oa(),ZD=Dr(),qLe=So(),mPt=ru(),yPt=PLe(),BLe=lX().styleOne,uX=O2(),NA=Ky(),_Pt=HE(),xPt=VD().formatSliceLabel,cX=!1;NLe.exports=function(t,r,n,i,a){var o=a.width,s=a.height,l=a.viewX,u=a.viewY,c=a.pathSlice,f=a.toMoveInsideSlice,h=a.strTransform,d=a.hasTransition,v=a.handleSlicesExit,_=a.makeUpdateSliceInterpolator,b=a.makeUpdateTextInterpolator,p=a.prevEntry,k={},E=t._context.staticPlot,S=t._fullLayout,L=r[0],x=L.trace,C=x.textposition.indexOf("left")!==-1,M=x.textposition.indexOf("right")!==-1,g=x.textposition.indexOf("bottom")!==-1,P=yPt(n,[o,s],{flipX:x.tiling.flip.indexOf("x")>-1,flipY:x.tiling.flip.indexOf("y")>-1,orientation:x.tiling.orientation,pad:{inner:x.tiling.pad},maxDepth:x._maxDepth}),T=P.descendants(),z=1/0,O=-1/0;T.forEach(function(N){var H=N.depth;H>=x._maxDepth?(N.x0=N.x1=(N.x0+N.x1)/2,N.y0=N.y1=(N.y0+N.y1)/2):(z=Math.min(z,H),O=Math.max(O,H))}),i=i.data(T,NA.getPtId),x._maxVisibleLayers=isFinite(O)?O-z+1:0,i.enter().append("g").classed("slice",!0),v(i,cX,k,[o,s],c),i.order();var V=null;if(d&&p){var G=NA.getPtId(p);i.each(function(N){V===null&&NA.getPtId(N)===G&&(V={x0:N.x0,x1:N.x1,y0:N.y0,y1:N.y1})})}var Z=function(){return V||{x0:0,x1:o,y0:0,y1:s}},j=i;return d&&(j=j.transition().each("end",function(){var N=OLe.select(this);NA.setSliceCursor(N,t,{hideOnRoot:!0,hideOnLeaves:!1,isTransitioning:!1})})),j.each(function(N){N._x0=l(N.x0),N._x1=l(N.x1),N._y0=u(N.y0),N._y1=u(N.y1),N._hoverX=l(N.x1-x.tiling.pad),N._hoverY=u(g?N.y1-x.tiling.pad/2:N.y0+x.tiling.pad/2);var H=OLe.select(this),te=ZD.ensureSingle(H,"path","surface",function(Ce){Ce.style("pointer-events",E?"none":"all")});d?te.transition().attrTween("d",function(Ce){var me=_(Ce,cX,Z(),[o,s],{orientation:x.tiling.orientation,flipX:x.tiling.flip.indexOf("x")>-1,flipY:x.tiling.flip.indexOf("y")>-1});return function(ie){return c(me(ie))}}):te.attr("d",c),H.call(_Pt,n,t,r,{styleOne:BLe,eventDataKeys:uX.eventDataKeys,transitionTime:uX.CLICK_TRANSITION_TIME,transitionEasing:uX.CLICK_TRANSITION_EASING}).call(NA.setSliceCursor,t,{isTransitioning:t._transitioning}),te.call(BLe,N,x,t,{hovered:!1}),N.x0===N.x1||N.y0===N.y1?N._text="":N._text=xPt(N,n,x,r,S)||"";var oe=ZD.ensureSingle(H,"g","slicetext"),_e=ZD.ensureSingle(oe,"text","",function(Ce){Ce.attr("data-notex",1)}),Ee=ZD.ensureUniformFontSize(t,NA.determineTextFont(x,N,S.font));_e.text(N._text||" ").classed("slicetext",!0).attr("text-anchor",M?"end":C?"start":"middle").call(qLe.font,Ee).call(mPt.convertToTspans,t),N.textBB=qLe.bBox(_e.node()),N.transform=f(N,{fontSize:Ee.size}),N.transform.fontSize=Ee.size,d?_e.transition().attrTween("transform",function(Ce){var me=b(Ce,cX,Z(),[o,s]);return function(ie){return h(me(ie))}}):_e.attr("transform",h(N))}),V}});var GLe=ye((k0r,VLe)=>{"use strict";var bPt=tX(),wPt=ULe();VLe.exports=function(t,r,n,i){return bPt(t,r,n,i,{type:"icicle",drawDescendants:wPt})}});var jLe=ye((C0r,HLe)=>{"use strict";HLe.exports={moduleType:"trace",name:"icicle",basePlotModule:yLe(),categories:[],animatable:!0,attributes:nX(),layoutAttributes:aX(),supplyDefaults:MLe(),supplyLayoutDefaults:kLe(),calc:sX().calc,crossTraceCalc:sX().crossTraceCalc,plot:GLe(),style:lX().style,colorbar:$d(),meta:{}}});var XLe=ye((L0r,WLe)=>{"use strict";WLe.exports=jLe()});var YLe=ye(UA=>{"use strict";var ZLe=Mc();UA.name="funnelarea";UA.plot=function(e,t,r,n){ZLe.plotBasePlot(UA.name,e,t,r,n)};UA.clean=function(e,t,r,n){ZLe.cleanBasePlot(UA.name,e,t,r,n)}});var fX=ye((I0r,JLe)=>{"use strict";var iv=M2(),TPt=Gl(),APt=Cc().attributes,{hovertemplateAttrs:SPt,texttemplateAttrs:MPt,templatefallbackAttrs:KLe}=Ll(),N2=Ao().extendFlat;JLe.exports={labels:iv.labels,label0:iv.label0,dlabel:iv.dlabel,values:iv.values,marker:{colors:iv.marker.colors,line:{color:N2({},iv.marker.line.color,{dflt:null}),width:N2({},iv.marker.line.width,{dflt:1}),editType:"calc"},pattern:iv.marker.pattern,editType:"calc"},text:iv.text,hovertext:iv.hovertext,scalegroup:N2({},iv.scalegroup,{}),textinfo:N2({},iv.textinfo,{flags:["label","text","value","percent"]}),texttemplate:MPt({editType:"plot"},{keys:["label","color","value","text","percent"]}),texttemplatefallback:KLe({editType:"plot"}),hoverinfo:N2({},TPt.hoverinfo,{flags:["label","text","value","percent","name"]}),hovertemplate:SPt({},{keys:["label","color","value","text","percent"]}),hovertemplatefallback:KLe(),textposition:N2({},iv.textposition,{values:["inside","none"],dflt:"inside"}),textfont:iv.textfont,insidetextfont:iv.insidetextfont,title:{text:iv.title.text,font:iv.title.font,position:N2({},iv.title.position,{values:["top left","top center","top right"],dflt:"top center"}),editType:"plot"},domain:APt({name:"funnelarea",trace:!0,editType:"calc"}),aspectratio:{valType:"number",min:0,dflt:1,editType:"plot"},baseratio:{valType:"number",min:0,max:1,dflt:.333,editType:"plot"}}});var hX=ye((R0r,$Le)=>{"use strict";var EPt=pD().hiddenlabels;$Le.exports={hiddenlabels:EPt,funnelareacolorway:{valType:"colorlist",editType:"calc"},extendfunnelareacolors:{valType:"boolean",dflt:!0,editType:"calc"}}});var tPe=ye((D0r,ePe)=>{"use strict";var QLe=Dr(),kPt=fX(),CPt=Cc().defaults,LPt=r0().handleText,PPt=E2().handleLabelsAndValues,IPt=E2().handleMarkerDefaults;ePe.exports=function(t,r,n,i){function a(_,b){return QLe.coerce(t,r,kPt,_,b)}var o=a("labels"),s=a("values"),l=PPt(o,s),u=l.len;if(r._hasLabels=l.hasLabels,r._hasValues=l.hasValues,!r._hasLabels&&r._hasValues&&(a("label0"),a("dlabel")),!u){r.visible=!1;return}r._length=u,IPt(t,r,i,a),a("scalegroup");var c=a("text"),f=a("texttemplate");a("texttemplatefallback");var h;if(f||(h=a("textinfo",Array.isArray(c)?"text+percent":"percent")),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),f||h&&h!=="none"){var d=a("textposition");LPt(t,r,i,a,d,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1})}else h==="none"&&a("textposition","none");CPt(r,i,a);var v=a("title.text");v&&(a("title.position"),QLe.coerceFont(a,"title.font",i.font)),a("aspectratio"),a("baseratio")}});var iPe=ye((F0r,rPe)=>{"use strict";var RPt=Dr(),DPt=hX();rPe.exports=function(t,r){function n(i,a){return RPt.coerce(t,r,DPt,i,a)}n("hiddenlabels"),n("funnelareacolorway",r.colorway),n("extendfunnelareacolors")}});var dX=ye((z0r,aPe)=>{"use strict";var nPe=TA();function FPt(e,t){return nPe.calc(e,t)}function zPt(e){nPe.crossTraceCalc(e,{type:"funnelarea"})}aPe.exports={calc:FPt,crossTraceCalc:zPt}});var cPe=ye((O0r,uPe)=>{"use strict";var U2=Oa(),vX=So(),K_=Dr(),OPt=K_.strScale,oPe=K_.strTranslate,sPe=ru(),qPt=n2(),BPt=qPt.toMoveInsideBar,lPe=bv(),NPt=lPe.recordMinTextSize,UPt=lPe.clearMinTextSize,VPt=l_(),VA=_D(),GPt=VA.attachFxHandlers,HPt=VA.determineInsideTextFont,jPt=VA.layoutAreas,WPt=VA.prerenderTitles,XPt=VA.positionTitleOutside,ZPt=VA.formatSliceLabel;uPe.exports=function(t,r){var n=t._context.staticPlot,i=t._fullLayout;UPt("funnelarea",i),WPt(r,t),jPt(r,i._size),K_.makeTraceGroups(i._funnelarealayer,r,"trace").each(function(a){var o=U2.select(this),s=a[0],l=s.trace;KPt(a),o.each(function(){var u=U2.select(this).selectAll("g.slice").data(a);u.enter().append("g").classed("slice",!0),u.exit().remove(),u.each(function(f,h){if(f.hidden){U2.select(this).selectAll("path,g").remove();return}f.pointNumber=f.i,f.curveNumber=l.index;var d=s.cx,v=s.cy,_=U2.select(this),b=_.selectAll("path.surface").data([f]);b.enter().append("path").classed("surface",!0).style({"pointer-events":n?"none":"all"}),_.call(GPt,t,a);var p="M"+(d+f.TR[0])+","+(v+f.TR[1])+pX(f.TR,f.BR)+pX(f.BR,f.BL)+pX(f.BL,f.TL)+"Z";b.attr("d",p),ZPt(t,f,s);var k=VPt.castOption(l.textposition,f.pts),E=_.selectAll("g.slicetext").data(f.text&&k!=="none"?[0]:[]);E.enter().append("g").classed("slicetext",!0),E.exit().remove(),E.each(function(){var S=K_.ensureSingle(U2.select(this),"text","",function(z){z.attr("data-notex",1)}),L=K_.ensureUniformFontSize(t,HPt(l,f,i.font));S.text(f.text).attr({class:"slicetext",transform:"","text-anchor":"middle"}).call(vX.font,L).call(sPe.convertToTspans,t);var x=vX.bBox(S.node()),C,M,g,P=Math.min(f.BL[1],f.BR[1])+v,T=Math.max(f.TL[1],f.TR[1])+v;M=Math.max(f.TL[0],f.BL[0])+d,g=Math.min(f.TR[0],f.BR[0])+d,C=BPt(M,g,P,T,x,{isHorizontal:!0,constrained:!0,angle:0,anchor:"middle"}),C.fontSize=L.size,NPt(l.type,C,i),a[h].transform=C,K_.setTransormAndDisplay(S,C)})});var c=U2.select(this).selectAll("g.titletext").data(l.title.text?[0]:[]);c.enter().append("g").classed("titletext",!0),c.exit().remove(),c.each(function(){var f=K_.ensureSingle(U2.select(this),"text","",function(v){v.attr("data-notex",1)}),h=l.title.text;l._meta&&(h=K_.templateString(h,l._meta)),f.text(h).attr({class:"titletext",transform:"","text-anchor":"middle"}).call(vX.font,l.title.font).call(sPe.convertToTspans,t);var d=XPt(s,i._size);f.attr("transform",oPe(d.x,d.y)+OPt(Math.min(1,d.scale))+oPe(d.tx,d.ty))})})})};function pX(e,t){var r=t[0]-e[0],n=t[1]-e[1];return"l"+r+","+n}function YPt(e,t){return[.5*(e[0]+t[0]),.5*(e[1]+t[1])]}function KPt(e){if(!e.length)return;var t=e[0],r=t.trace,n=r.aspectratio,i=r.baseratio;i>.999&&(i=.999);var a=Math.pow(i,2),o=t.vTotal,s=o*a/(1-a),l=o,u=s/o;function c(){var O=Math.sqrt(u);return{x:O,y:-O}}function f(){var O=c();return[O.x,O.y]}var h,d=[];d.push(f());var v,_;for(v=e.length-1;v>-1;v--)if(_=e[v],!_.hidden){var b=_.v/l;u+=b,d.push(f())}var p=1/0,k=-1/0;for(v=0;v<d.length;v++)h=d[v],p=Math.min(p,h[1]),k=Math.max(k,h[1]);for(v=0;v<d.length;v++)d[v][1]-=(k+p)/2;var E=d[d.length-1][0],S=t.r,L=(k-p)/2,x=S/E,C=S/L*n;for(t.r=C*L,v=0;v<d.length;v++)d[v][0]*=x,d[v][1]*=C;h=d[0];var M=[-h[0],h[1]],g=[h[0],h[1]],P=0;for(v=e.length-1;v>-1;v--)if(_=e[v],!_.hidden){P+=1;var T=d[P][0],z=d[P][1];_.TL=[-T,z],_.TR=[T,z],_.BL=M,_.BR=g,_.pxmid=YPt(_.TR,_.BR),M=_.TL,g=_.TR}}});var dPe=ye((q0r,hPe)=>{"use strict";var fPe=Oa(),JPt=B3(),$Pt=bv().resizeText;hPe.exports=function(t){var r=t._fullLayout._funnelarealayer.selectAll(".trace");$Pt(t,r,"funnelarea"),r.each(function(n){var i=n[0],a=i.trace,o=fPe.select(this);o.style({opacity:a.opacity}),o.selectAll("path.surface").each(function(s){fPe.select(this).call(JPt,s,a,t)})})}});var pPe=ye((B0r,vPe)=>{"use strict";vPe.exports={moduleType:"trace",name:"funnelarea",basePlotModule:YLe(),categories:["pie-like","funnelarea","showLegend"],attributes:fX(),layoutAttributes:hX(),supplyDefaults:tPe(),supplyLayoutDefaults:iPe(),calc:dX().calc,crossTraceCalc:dX().crossTraceCalc,plot:cPe(),style:dPe(),styleOne:B3(),meta:{}}});var mPe=ye((N0r,gPe)=>{"use strict";gPe.exports=pPe()});var Od=ye((U0r,yPe)=>{(function(){var e={24:function(i){var a={left:0,top:0};i.exports=o;function o(l,u,c){u=u||l.currentTarget||l.srcElement,Array.isArray(c)||(c=[0,0]);var f=l.clientX||0,h=l.clientY||0,d=s(u);return c[0]=f-d.left,c[1]=h-d.top,c}function s(l){return l===window||l===document||l===document.body?a:l.getBoundingClientRect()}},109:function(i){i.exports=a;function a(o,s,l,u){var c=l[0],f=l[2],h=s[0]-c,d=s[2]-f,v=Math.sin(u),_=Math.cos(u);return o[0]=c+d*v+h*_,o[1]=s[1],o[2]=f+d*_-h*v,o}},160:function(i){i.exports=a;function a(o,s,l){return o[0]=Math.max(s[0],l[0]),o[1]=Math.max(s[1],l[1]),o[2]=Math.max(s[2],l[2]),o[3]=Math.max(s[3],l[3]),o}},216:function(i){"use strict";i.exports=a;function a(o,s){for(var l={},u=0;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 _=1;_<v.length;++_){var b=parseInt(v[_]);_<v.length-1||d<f.length-1?(b in h||(_<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}},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)}}},244:function(i){i.exports=a;function a(o,s){return o[0]*s[0]+o[1]*s[1]+o[2]*s[2]}},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],_=l[3],b=_*u+d*f-v*c,p=_*c+v*u-h*f,k=_*f+h*c-d*u,E=-h*u-d*c-v*f;return o[0]=b*_+E*-h+p*-v-k*-d,o[1]=p*_+E*-d+k*-h-b*-v,o[2]=k*_+E*-v+b*-d-p*-h,o}},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),_=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 j=V[Z],N=O[j[0]],H=O[j[1]];G[Z]=[v(Math.min(N[0],H[0]),-1/0),v(Math.min(N[1],H[1]),-1/0),v(Math.max(N[0],H[0]),1/0),v(Math.max(N[1],H[1]),1/0)]}return G}function k(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(j,N){var H=V[j],te=V[N];if(!(H[0]===te[0]||H[0]===te[1]||H[1]===te[0]||H[1]===te[1])){var oe=O[H[0]],_e=O[H[1]],Ee=O[te[0]],Ce=O[te[1]];u(oe,_e,Ee,Ce)&&Z.push([j,N])}}),Z}function S(O,V,G,Z){var j=[];return l(G,Z,function(N,H){var te=V[N];if(!(te[0]===H||te[1]===H)){var oe=O[H],_e=O[te[0]],Ee=O[te[1]];u(_e,Ee,oe,oe)&&j.push([N,H])}}),j}function L(O,V,G,Z,j){var N,H,te=O.map(function(pt){return[c(pt[0]),c(pt[1])]});for(N=0;N<G.length;++N){var oe=G[N];H=oe[0];var _e=oe[1],Ee=V[H],Ce=V[_e],me=_(d(O[Ee[0]]),d(O[Ee[1]]),d(O[Ce[0]]),d(O[Ce[1]]));if(me){var ie=O.length;O.push([h(me[0]),h(me[1])]),te.push(me),Z.push([H,ie],[_e,ie])}}for(Z.sort(function(pt,Zt){if(pt[0]!==Zt[0])return pt[0]-Zt[0];var st=te[pt[1]],lt=te[Zt[1]];return f(st[0],lt[0])||f(st[1],lt[1])}),N=Z.length-1;N>=0;--N){var Se=Z[N];H=Se[0];var Le=V[H],Ae=Le[0],Fe=Le[1],Pe=O[Ae],ge=O[Fe];if((Pe[0]-ge[0]||Pe[1]-ge[1])<0){var Re=Ae;Ae=Fe,Fe=Re}Le[0]=Ae;var ce=Le[1]=Se[1],Ze;for(j&&(Ze=Le[2]);N>0&&Z[N-1][0]===H;){var Se=Z[--N],ut=Se[1];j?V.push([ce,ut,Ze]):V.push([ce,ut]),ce=ut}j?V.push([ce,Fe,Ze]):V.push([ce,Fe])}return te}function x(O,V,G){for(var Z=V.length,j=new s(Z),N=[],H=0;H<V.length;++H){var te=V[H],oe=b(te[0]),_e=b(te[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){j.link(Se,Le)});for(var Ee=!0,Ce=new Array(Z),H=0;H<Z;++H){var me=j.find(H);me!==H&&(Ee=!1,O[me]=[Math.min(O[H][0],O[me][0]),Math.min(O[H][1],O[me][1])])}if(Ee)return null;for(var ie=0,H=0;H<Z;++H){var me=j.find(H);me===H?(Ce[H]=ie,O[ie++]=O[H]):Ce[H]=-1}O.length=ie;for(var H=0;H<Z;++H)Ce[H]<0&&(Ce[H]=Ce[j.find(H)]);return Ce}function C(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 j=O[Z],N=V[j[0]],H=V[j[1]];j[0]=Math.min(N,H),j[1]=Math.max(N,H)}else for(var Z=0;Z<O.length;++Z){var j=O[Z],N=j[0],H=j[1];j[0]=Math.min(N,H),j[1]=Math.max(N,H)}G?O.sort(M):O.sort(C);for(var te=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[te++]=_e)}O.length=te}}function P(O,V,G){var Z=x(O,[],k(O));return g(V,Z,G),!!Z}function T(O,V,G){var Z=p(O,V),j=E(O,V,Z),N=k(O),H=S(O,V,Z,N),te=L(O,V,j,H,G),oe=x(O,te,N);return g(V,oe,G),oe?!0:j.length>0||H.length>0}function z(O,V,G){var Z;if(G){Z=V;for(var j=new Array(V.length),N=0;N<V.length;++N){var H=V[N];j[N]=[H[0],H[1],G[N]]}V=j}for(var te=P(O,V,!!G);T(O,V,!!G);)te=!0;if(G&&te){Z.length=0,G.length=0;for(var N=0;N<V.length;++N){var H=V[N];Z.push([H[0],H[1]]),G.push(H[2])}}return te}},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},_=!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 k(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 S(T){b(T)&&c&&c(f,h,d,v)}function L(T){s.buttons(T)===0?p(0,T):p(f,T)}function x(T){p(f|s.buttons(T),T)}function C(T){p(f&~s.buttons(T),T)}function M(){_||(_=!0,u.addEventListener("mousemove",L),u.addEventListener("mousedown",x),u.addEventListener("mouseup",C),u.addEventListener("mouseleave",k),u.addEventListener("mouseenter",k),u.addEventListener("mouseout",k),u.addEventListener("mouseover",k),u.addEventListener("blur",E),u.addEventListener("keyup",S),u.addEventListener("keydown",S),u.addEventListener("keypress",S),u!==window&&(window.addEventListener("blur",E),window.addEventListener("keyup",S),window.addEventListener("keydown",S),window.addEventListener("keypress",S)))}function g(){_&&(_=!1,u.removeEventListener("mousemove",L),u.removeEventListener("mousedown",x),u.removeEventListener("mouseup",C),u.removeEventListener("mouseleave",k),u.removeEventListener("mouseenter",k),u.removeEventListener("mouseout",k),u.removeEventListener("mouseover",k),u.removeEventListener("blur",E),u.removeEventListener("keyup",S),u.removeEventListener("keydown",S),u.removeEventListener("keypress",S),u!==window&&(window.removeEventListener("blur",E),window.removeEventListener("keyup",S),window.removeEventListener("keydown",S),window.removeEventListener("keypress",S)))}M();var P={element:u};return Object.defineProperties(P,{enabled:{get:function(){return _},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}},395:function(i){function a(o,s,l){return o*(1-l)+s*l}i.exports=a},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(":"),_=l[v];return _||(l[v]=_=s(f,h)),_(c),c}i.exports=u},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}},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}},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 _(S){return S[0]=S[1]=S[2]=0,S}function b(S,L){return S[0]=L[0],S[1]=L[1],S[2]=L[2],S}function p(S,L,x,C,M,g,P,T){this.gl=S,this.vertBuffer=L,this.vao=x,this.shader=C,this.tickCount=M,this.tickOffset=g,this.gridCount=P,this.gridOffset=T}var k=p.prototype;k.bind=function(S,L,x){this.shader.bind(),this.shader.uniforms.model=S,this.shader.uniforms.view=L,this.shader.uniforms.projection=x,v[0]=this.gl.drawingBufferWidth,v[1]=this.gl.drawingBufferHeight,this.shader.uniforms.screenShape=v,this.vao.bind()},k.unbind=function(){this.vao.unbind()},k.drawAxisLine=function(S,L,x,C,M){var g=_(f);this.shader.uniforms.majorAxis=f,g[S]=L[1][S]-L[0][S],this.shader.uniforms.minorAxis=g;var P=b(d,x);P[S]+=L[0][S],this.shader.uniforms.offset=P,this.shader.uniforms.lineWidth=M,this.shader.uniforms.color=C;var T=_(h);T[(S+2)%3]=1,this.shader.uniforms.screenAxis=T,this.vao.draw(this.gl.TRIANGLES,6);var T=_(h);T[(S+1)%3]=1,this.shader.uniforms.screenAxis=T,this.vao.draw(this.gl.TRIANGLES,6)},k.drawAxisTicks=function(S,L,x,C,M){if(this.tickCount[S]){var g=_(c);g[S]=1,this.shader.uniforms.majorAxis=g,this.shader.uniforms.offset=L,this.shader.uniforms.minorAxis=x,this.shader.uniforms.color=C,this.shader.uniforms.lineWidth=M;var P=_(h);P[S]=1,this.shader.uniforms.screenAxis=P,this.vao.draw(this.gl.TRIANGLES,this.tickCount[S],this.tickOffset[S])}},k.drawGrid=function(S,L,x,C,M,g){if(this.gridCount[S]){var P=_(f);P[L]=x[1][L]-x[0][L],this.shader.uniforms.minorAxis=P;var T=b(d,C);T[L]+=x[0][L],this.shader.uniforms.offset=T;var z=_(c);z[S]=1,this.shader.uniforms.majorAxis=z;var O=_(h);O[S]=1,this.shader.uniforms.screenAxis=O,this.shader.uniforms.lineWidth=g,this.shader.uniforms.color=M,this.vao.draw(this.gl.TRIANGLES,this.gridCount[S],this.gridOffset[S])}},k.drawZero=function(S,L,x,C,M,g){var P=_(f);this.shader.uniforms.majorAxis=P,P[S]=x[1][S]-x[0][S],this.shader.uniforms.minorAxis=P;var T=b(d,C);T[S]+=x[0][S],this.shader.uniforms.offset=T;var z=_(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)},k.dispose=function(){this.vao.dispose(),this.vertBuffer.dispose(),this.shader.dispose()};function E(S,L,x){var C=[],M=[0,0,0],g=[0,0,0],P=[0,0,0],T=[0,0,0];C.push(0,0,1,0,1,1,0,0,-1,0,0,-1,0,1,1,0,1,-1);for(var z=0;z<3;++z){for(var G=C.length/3|0,O=0;O<x[z].length;++O){var V=+x[z][O].x;C.push(V,0,1,V,1,1,V,0,-1,V,0,-1,V,1,1,V,1,-1)}var j=C.length/3|0;M[z]=G,g[z]=j-G;for(var G=C.length/3|0,Z=0;Z<x[z].length;++Z){var V=+x[z][Z].x;C.push(V,0,1,V,1,1,V,0,-1,V,0,-1,V,1,1,V,1,-1)}var j=C.length/3|0;P[z]=G,T[z]=j-G}var N=s(S,new Float32Array(C)),H=l(S,[{buffer:N,type:S.FLOAT,size:3,stride:0,offset:0}]),te=u(S);return te.attributes.position.location=0,new p(S,N,H,te,g,M,T,P)}},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}},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}}}},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"}]}},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"]},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 _=u(v,"font-size")/128;return d.removeChild(v),_}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}},727:function(i,a,o){"use strict";var s=o(2962),l=6;function u(S){var L=S===2?h:S===3?d:S===4?v:S===5?_:b;return S<6?L(s[S]):L(s)}function c(){return[[0]]}function f(S,L){return[[L[0]],[S[0][0]]]}function h(S){return function(x,C){return[S([[+C[0],+x[0][1]],[+C[1],+x[1][1]]]),S([[+x[0][0],+C[0]],[+x[1][0],+C[1]]]),S(x)]}}function d(S){return function(x,C){return[S([[+C[0],+x[0][1],+x[0][2]],[+C[1],+x[1][1],+x[1][2]],[+C[2],+x[2][1],+x[2][2]]]),S([[+x[0][0],+C[0],+x[0][2]],[+x[1][0],+C[1],+x[1][2]],[+x[2][0],+C[2],+x[2][2]]]),S([[+x[0][0],+x[0][1],+C[0]],[+x[1][0],+x[1][1],+C[1]],[+x[2][0],+x[2][1],+C[2]]]),S(x)]}}function v(S){return function(x,C){return[S([[+C[0],+x[0][1],+x[0][2],+x[0][3]],[+C[1],+x[1][1],+x[1][2],+x[1][3]],[+C[2],+x[2][1],+x[2][2],+x[2][3]],[+C[3],+x[3][1],+x[3][2],+x[3][3]]]),S([[+x[0][0],+C[0],+x[0][2],+x[0][3]],[+x[1][0],+C[1],+x[1][2],+x[1][3]],[+x[2][0],+C[2],+x[2][2],+x[2][3]],[+x[3][0],+C[3],+x[3][2],+x[3][3]]]),S([[+x[0][0],+x[0][1],+C[0],+x[0][3]],[+x[1][0],+x[1][1],+C[1],+x[1][3]],[+x[2][0],+x[2][1],+C[2],+x[2][3]],[+x[3][0],+x[3][1],+C[3],+x[3][3]]]),S([[+x[0][0],+x[0][1],+x[0][2],+C[0]],[+x[1][0],+x[1][1],+x[1][2],+C[1]],[+x[2][0],+x[2][1],+x[2][2],+C[2]],[+x[3][0],+x[3][1],+x[3][2],+C[3]]]),S(x)]}}function _(S){return function(x,C){return[S([[+C[0],+x[0][1],+x[0][2],+x[0][3],+x[0][4]],[+C[1],+x[1][1],+x[1][2],+x[1][3],+x[1][4]],[+C[2],+x[2][1],+x[2][2],+x[2][3],+x[2][4]],[+C[3],+x[3][1],+x[3][2],+x[3][3],+x[3][4]],[+C[4],+x[4][1],+x[4][2],+x[4][3],+x[4][4]]]),S([[+x[0][0],+C[0],+x[0][2],+x[0][3],+x[0][4]],[+x[1][0],+C[1],+x[1][2],+x[1][3],+x[1][4]],[+x[2][0],+C[2],+x[2][2],+x[2][3],+x[2][4]],[+x[3][0],+C[3],+x[3][2],+x[3][3],+x[3][4]],[+x[4][0],+C[4],+x[4][2],+x[4][3],+x[4][4]]]),S([[+x[0][0],+x[0][1],+C[0],+x[0][3],+x[0][4]],[+x[1][0],+x[1][1],+C[1],+x[1][3],+x[1][4]],[+x[2][0],+x[2][1],+C[2],+x[2][3],+x[2][4]],[+x[3][0],+x[3][1],+C[3],+x[3][3],+x[3][4]],[+x[4][0],+x[4][1],+C[4],+x[4][3],+x[4][4]]]),S([[+x[0][0],+x[0][1],+x[0][2],+C[0],+x[0][4]],[+x[1][0],+x[1][1],+x[1][2],+C[1],+x[1][4]],[+x[2][0],+x[2][1],+x[2][2],+C[2],+x[2][4]],[+x[3][0],+x[3][1],+x[3][2],+C[3],+x[3][4]],[+x[4][0],+x[4][1],+x[4][2],+C[4],+x[4][4]]]),S([[+x[0][0],+x[0][1],+x[0][2],+x[0][3],+C[0]],[+x[1][0],+x[1][1],+x[1][2],+x[1][3],+C[1]],[+x[2][0],+x[2][1],+x[2][2],+x[2][3],+C[2]],[+x[3][0],+x[3][1],+x[3][2],+x[3][3],+C[3]],[+x[4][0],+x[4][1],+x[4][2],+x[4][3],+C[4]]]),S(x)]}}function b(S){return function(x,C){return[S([[+C[0],+x[0][1],+x[0][2],+x[0][3],+x[0][4],+x[0][5]],[+C[1],+x[1][1],+x[1][2],+x[1][3],+x[1][4],+x[1][5]],[+C[2],+x[2][1],+x[2][2],+x[2][3],+x[2][4],+x[2][5]],[+C[3],+x[3][1],+x[3][2],+x[3][3],+x[3][4],+x[3][5]],[+C[4],+x[4][1],+x[4][2],+x[4][3],+x[4][4],+x[4][5]],[+C[5],+x[5][1],+x[5][2],+x[5][3],+x[5][4],+x[5][5]]]),S([[+x[0][0],+C[0],+x[0][2],+x[0][3],+x[0][4],+x[0][5]],[+x[1][0],+C[1],+x[1][2],+x[1][3],+x[1][4],+x[1][5]],[+x[2][0],+C[2],+x[2][2],+x[2][3],+x[2][4],+x[2][5]],[+x[3][0],+C[3],+x[3][2],+x[3][3],+x[3][4],+x[3][5]],[+x[4][0],+C[4],+x[4][2],+x[4][3],+x[4][4],+x[4][5]],[+x[5][0],+C[5],+x[5][2],+x[5][3],+x[5][4],+x[5][5]]]),S([[+x[0][0],+x[0][1],+C[0],+x[0][3],+x[0][4],+x[0][5]],[+x[1][0],+x[1][1],+C[1],+x[1][3],+x[1][4],+x[1][5]],[+x[2][0],+x[2][1],+C[2],+x[2][3],+x[2][4],+x[2][5]],[+x[3][0],+x[3][1],+C[3],+x[3][3],+x[3][4],+x[3][5]],[+x[4][0],+x[4][1],+C[4],+x[4][3],+x[4][4],+x[4][5]],[+x[5][0],+x[5][1],+C[5],+x[5][3],+x[5][4],+x[5][5]]]),S([[+x[0][0],+x[0][1],+x[0][2],+C[0],+x[0][4],+x[0][5]],[+x[1][0],+x[1][1],+x[1][2],+C[1],+x[1][4],+x[1][5]],[+x[2][0],+x[2][1],+x[2][2],+C[2],+x[2][4],+x[2][5]],[+x[3][0],+x[3][1],+x[3][2],+C[3],+x[3][4],+x[3][5]],[+x[4][0],+x[4][1],+x[4][2],+C[4],+x[4][4],+x[4][5]],[+x[5][0],+x[5][1],+x[5][2],+C[5],+x[5][4],+x[5][5]]]),S([[+x[0][0],+x[0][1],+x[0][2],+x[0][3],+C[0],+x[0][5]],[+x[1][0],+x[1][1],+x[1][2],+x[1][3],+C[1],+x[1][5]],[+x[2][0],+x[2][1],+x[2][2],+x[2][3],+C[2],+x[2][5]],[+x[3][0],+x[3][1],+x[3][2],+x[3][3],+C[3],+x[3][5]],[+x[4][0],+x[4][1],+x[4][2],+x[4][3],+C[4],+x[4][5]],[+x[5][0],+x[5][1],+x[5][2],+x[5][3],+C[5],+x[5][5]]]),S([[+x[0][0],+x[0][1],+x[0][2],+x[0][3],+x[0][4],+C[0]],[+x[1][0],+x[1][1],+x[1][2],+x[1][3],+x[1][4],+C[1]],[+x[2][0],+x[2][1],+x[2][2],+x[2][3],+x[2][4],+C[2]],[+x[3][0],+x[3][1],+x[3][2],+x[3][3],+x[3][4],+C[3]],[+x[4][0],+x[4][1],+x[4][2],+x[4][3],+x[4][4],+C[4]],[+x[5][0],+x[5][1],+x[5][2],+x[5][3],+x[5][4],+C[5]]]),S(x)]}}var p=[c,f];function k(S,L,x,C,M,g,P,T){return function(O,V){switch(O.length){case 0:return S(O,V);case 1:return L(O,V);case 2:return x(O,V);case 3:return C(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=k.apply(void 0,p.concat([p,u]));for(var S=0;S<l;++S)i.exports[S]=p[S]}E()},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"}},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}},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],_=l[1],b=l[2],p=l[3],k,E,S,L,x;return E=c*v+f*_+h*b+d*p,E<0&&(E=-E,v=-v,_=-_,b=-b,p=-p),1-E>1e-6?(k=Math.acos(E),S=Math.sin(k),L=Math.sin((1-u)*k)/S,x=Math.sin(u*k)/S):(L=1-u,x=u),o[0]=L*c+x*v,o[1]=L*f+x*_,o[2]=L*h+x*b,o[3]=L*d+x*p,o}},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"}])}},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}},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;
}`]),_=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)));
}`]),k=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:_,attributes:[{name:"position",type:"vec3"},{name:"id",type:"vec4"}]},a.pointPickShader={vertex:b,fragment:_,attributes:[{name:"position",type:"vec3"},{name:"pointSize",type:"float"},{name:"id",type:"vec4"}]},a.contourShader={vertex:p,fragment:k,attributes:[{name:"position",type:"vec3"}]}},855:function(i,a,o){"use strict";i.exports={init:E,sweepBipartite:x,sweepComplete:C,scanBipartite:M,scanComplete:g};var s=o(1888),l=o(8828),u=o(4192),c=1<<28,f=1024,h=s.mallocInt32(f),d=s.mallocInt32(f),v=s.mallocInt32(f),_=s.mallocInt32(f),b=s.mallocInt32(f),p=s.mallocInt32(f),k=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)),_.length<T&&(s.free(_),_=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;k.length<z&&(s.free(k),k=s.mallocDouble(z))}function S(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 x(P,T,z,O,V,G,Z,j,N,H){for(var te=0,oe=2*P,_e=P-1,Ee=oe-1,Ce=z;Ce<O;++Ce){var me=G[Ce],ie=oe*Ce;k[te++]=V[ie+_e],k[te++]=-(me+1),k[te++]=V[ie+Ee],k[te++]=me}for(var Ce=Z;Ce<j;++Ce){var me=H[Ce]+c,Se=oe*Ce;k[te++]=N[Se+_e],k[te++]=-me,k[te++]=N[Se+Ee],k[te++]=me}var Le=te>>>1;u(k,Le);for(var Ae=0,Fe=0,Ce=0;Ce<Le;++Ce){var Pe=k[2*Ce+1]|0;if(Pe>=c)Pe=Pe-c|0,S(v,_,Fe--,Pe);else if(Pe>=0)S(h,d,Ae--,Pe);else if(Pe<=-c){Pe=-Pe-c|0;for(var ge=0;ge<Ae;++ge){var Re=T(h[ge],Pe);if(Re!==void 0)return Re}L(v,_,Fe++,Pe)}else{Pe=-Pe-1|0;for(var ge=0;ge<Fe;++ge){var Re=T(Pe,v[ge]);if(Re!==void 0)return Re}L(h,d,Ae++,Pe)}}}function C(P,T,z,O,V,G,Z,j,N,H){for(var te=0,oe=2*P,_e=P-1,Ee=oe-1,Ce=z;Ce<O;++Ce){var me=G[Ce]+1<<1,ie=oe*Ce;k[te++]=V[ie+_e],k[te++]=-me,k[te++]=V[ie+Ee],k[te++]=me}for(var Ce=Z;Ce<j;++Ce){var me=H[Ce]+1<<1,Se=oe*Ce;k[te++]=N[Se+_e],k[te++]=-me|1,k[te++]=N[Se+Ee],k[te++]=me|1}var Le=te>>>1;u(k,Le);for(var Ae=0,Fe=0,Pe=0,Ce=0;Ce<Le;++Ce){var ge=k[2*Ce+1]|0,Re=ge&1;if(Ce<Le-1&&ge>>1===k[2*Ce+3]>>1&&(Re=2,Ce+=1),ge<0){for(var ce=-(ge>>1)-1,Ze=0;Ze<Pe;++Ze){var ut=T(b[Ze],ce);if(ut!==void 0)return ut}if(Re!==0)for(var Ze=0;Ze<Ae;++Ze){var ut=T(h[Ze],ce);if(ut!==void 0)return ut}if(Re!==1)for(var Ze=0;Ze<Fe;++Ze){var ut=T(v[Ze],ce);if(ut!==void 0)return ut}Re===0?L(h,d,Ae++,ce):Re===1?L(v,_,Fe++,ce):Re===2&&L(b,p,Pe++,ce)}else{var ce=(ge>>1)-1;Re===0?S(h,d,Ae--,ce):Re===1?S(v,_,Fe--,ce):Re===2&&S(b,p,Pe--,ce)}}}function M(P,T,z,O,V,G,Z,j,N,H,te,oe){var _e=0,Ee=2*P,Ce=T,me=T+P,ie=1,Se=1;O?Se=c:ie=c;for(var Le=V;Le<G;++Le){var Ae=Le+ie,Fe=Ee*Le;k[_e++]=Z[Fe+Ce],k[_e++]=-Ae,k[_e++]=Z[Fe+me],k[_e++]=Ae}for(var Le=N;Le<H;++Le){var Ae=Le+Se,Pe=Ee*Le;k[_e++]=te[Pe+Ce],k[_e++]=-Ae}var ge=_e>>>1;u(k,ge);for(var Re=0,Le=0;Le<ge;++Le){var ce=k[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,Re++,Ae);else{var ut=oe[Ae],pt=Ee*Ae,Zt=te[pt+T+1],st=te[pt+T+1+P];e:for(var lt=0;lt<Re;++lt){var Gt=h[lt],Nt=Ee*Gt;if(!(st<Z[Nt+T+1]||Z[Nt+T+1+P]<Zt)){for(var Jt=T+2;Jt<P;++Jt)if(te[pt+Jt+P]<Z[Nt+Jt]||Z[Nt+Jt+P]<te[pt+Jt])continue e;var sr=j[Gt],wr;if(O?wr=z(ut,sr):wr=z(sr,ut),wr!==void 0)return wr}}}}else S(h,d,Re--,ce-ie)}}function g(P,T,z,O,V,G,Z,j,N,H,te){for(var oe=0,_e=2*P,Ee=T,Ce=T+P,me=O;me<V;++me){var ie=me+c,Se=_e*me;k[oe++]=G[Se+Ee],k[oe++]=-ie,k[oe++]=G[Se+Ce],k[oe++]=ie}for(var me=j;me<N;++me){var ie=me+1,Le=_e*me;k[oe++]=H[Le+Ee],k[oe++]=-ie}var Ae=oe>>>1;u(k,Ae);for(var Fe=0,me=0;me<Ae;++me){var Pe=k[2*me+1]|0;if(Pe<0){var ie=-Pe;if(ie>=c)h[Fe++]=ie-c;else{ie-=1;var ge=te[ie],Re=_e*ie,ce=H[Re+T+1],Ze=H[Re+T+1+P];e:for(var ut=0;ut<Fe;++ut){var pt=h[ut],Zt=Z[pt];if(Zt===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(H[Re+lt+P]<G[st+lt]||G[st+lt+P]<H[Re+lt])continue e;var Gt=z(Zt,ge);if(Gt!==void 0)return Gt}}}}else{for(var ie=Pe-c,ut=Fe-1;ut>=0;--ut)if(h[ut]===ie){for(var lt=ut+1;lt<Fe;++lt)h[lt-1]=h[lt];break}--Fe}}}},868:function(i,a,o){i.exports=o(1387)},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]}},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},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,_=s(v),b=d.mod,p=f.negative!==h.negative?-1:1;if(b.cmpn(0)===0)return p*_;if(_){var k=l(_)+4,E=s(b.ushln(k).divRound(h));return p*(_+E*Math.pow(2,-k))}else{var S=h.bitLength()-b.bitLength()+53,E=s(b.ushln(S).divRound(h));return S<1023?p*E*Math.pow(2,-S):(E*=Math.pow(2,-1023),p*E*Math.pow(2,1023-S))}}},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}},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,_){var b=_+c,p=String(b).length,k=s(b,d-p);return k+f+v}).join(`
`)}},1091:function(i){i.exports=a;function a(){var o=new Float32Array(3);return o[0]=0,o[1]=0,o[2]=0,o}},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 _=c[v],b=f[v],p=Math.min(_,b),k=Math.max(_,b),E=h[v],S=d[v],L=Math.min(E,S),x=Math.max(E,S);if(x<p||k<L)return!1}return!0}function u(c,f,h,d){var v=s(c,h,d),_=s(f,h,d);if(v>0&&_>0||v<0&&_<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&&_===0&&b===0&&p===0?l(c,f,h,d):!0}},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)}},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"}],_={vertex:u,fragment:h,attributes:v},b={vertex:c,fragment:h,attributes:v},p={vertex:f,fragment:h,attributes:v},k={vertex:u,fragment:d,attributes:v},E={vertex:c,fragment:d,attributes:v},S={vertex:f,fragment:d,attributes:v};function L(x,C){var M=s(x,C),g=M.attributes;return g.position.location=0,g.color.location=1,g.glyph.location=2,g.id.location=3,M}a.createPerspective=function(x){return L(x,_)},a.createOrtho=function(x){return L(x,b)},a.createProject=function(x){return L(x,p)},a.createPickPerspective=function(x){return L(x,k)},a.createPickOrtho=function(x){return L(x,E)},a.createPickProject=function(x){return L(x,S)}},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]),_=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 _<b?_-b:v>p?v-p:_-p}var k,E;c[0][1]<c[1][1]?(k=c[0],E=c[1]):(k=c[1],E=c[0]);var S=s(d,h,k);return S||(S=s(d,h,E),S)?S: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,_;if(c[0][0]<c[1][0])v=c[0],_=c[1];else if(c[0][0]>c[1][0])v=c[1],_=c[0];else return-l(c,f);var b=s(h,d,_),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(_,v,d),p=s(_,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]-_[0]}},1318:function(i){"use strict";i.exports=a;function a(o,s){return o[0].mul(s[1]).cmp(s[0].mul(o[1]))}},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},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}},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}},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}},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)}},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,_=!!f.normalized,b=f.stride||0,p=f.offset||0;h.bind(),o.enableVertexAttribArray(c),o.vertexAttribPointer(c,d,v,_,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},1463:function(i){i.exports=a;function a(o,s,l,u){return o[0]=s,o[1]=l,o[2]=u,o}},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"}])}},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}},1533:function(i,a,o){"use strict";var s=o(6859);i.exports=l;function l(u){return u&&typeof u=="object"&&!!u.words}},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,_="weakmap:",b=_+"ident:"+Math.random()+"___";if(typeof crypto!="undefined"&&typeof crypto.getRandomValues=="function"&&typeof ArrayBuffer=="function"&&typeof Uint8Array=="function"){var p=new ArrayBuffer(25),k=new Uint8Array(p);crypto.getRandomValues(k),b=_+"rand:"+Array.prototype.map.call(k,function(T){return(T%36).toString(36)}).join("")+"___"}function E(T){return!(T.substr(0,_.length)==_&&T.substr(T.length-3)==="___")}if(d(Object,"getOwnPropertyNames",{value:function(z){return h(z).filter(E)}}),"getPropertyNames"in Object){var S=Object.getPropertyNames;d(Object,"getPropertyNames",{value:function(z){return S(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 x(T){return T.prototype=null,Object.freeze(T)}var C=!1;function M(){!C&&typeof console!="undefined"&&(C=!0,console.warn("WeakMap should be invoked as new WeakMap(), not WeakMap(). This will be an error in the future."))}var g=0,P=function(){this instanceof P||M();var T=[],z=[],O=g++;function V(N,H){var te,oe=L(N);return oe?O in oe?oe[O]:H:(te=T.indexOf(N),te>=0?z[te]:H)}function G(N){var H=L(N);return H?O in H:T.indexOf(N)>=0}function Z(N,H){var te,oe=L(N);return oe?oe[O]=H:(te=T.indexOf(N),te>=0?z[te]=H:(te=T.length,z[te]=H,T[te]=N)),this}function j(N){var H=L(N),te,oe;return H?O in H&&delete H[O]:(te=T.indexOf(N),te<0?!1:(oe=T.length-1,T[te]=void 0,z[te]=z[oe],T[te]=T[oe],T.length=oe,z.length=oe,!0))}return Object.create(P.prototype,{get___:{value:x(V)},has___:{value:x(G)},set___:{value:x(Z)},delete___:{value:x(j)}})};P.prototype=Object.create(Object.prototype,{get:{value:function(z,O){return this.get___(z,O)},writable:!0,configurable:!0},has:{value:function(z){return this.has___(z)},writable:!0,configurable:!0},set:{value:function(z,O){return this.set___(z,O)},writable:!0,configurable:!0},delete:{value:function(z){return this.delete___(z)},writable:!0,configurable:!0}}),typeof l=="function"?function(){s&&typeof Proxy!="undefined"&&(Proxy=void 0);function T(){this instanceof P||M();var z=new l,O=void 0,V=!1;function G(H,te){return O?z.has(H)?z.get(H):O.get___(H,te):z.get(H,te)}function Z(H){return z.has(H)||(O?O.has___(H):!1)}var j;s?j=function(H,te){return z.set(H,te),z.has(H)||(O||(O=new P),O.set(H,te)),this}:j=function(H,te){if(V)try{z.set(H,te)}catch(oe){O||(O=new P),O.set___(H,te)}else z.set(H,te);return this};function N(H){var te=!!z.delete(H);return O&&O.delete___(H)||te}return Object.create(P.prototype,{get___:{value:x(G)},has___:{value:x(Z)},set___:{value:x(j)},delete___:{value:x(N)},permitHostObjects___:{value:x(function(H){if(H===o)V=!0;else throw new Error("bogus call to permitHostObjects___")})}})}T.prototype=P.prototype,i.exports=T,Object.defineProperty(WeakMap.prototype,"constructor",{value:WeakMap,enumerable:!1,configurable:!0,writable:!0})}():(typeof Proxy!="undefined"&&(Proxy=void 0),i.exports=P)})()},1570:function(i){"use strict";i.exports=o;var a=[function(){function l(c,f,h,d){for(var v=Math.min(h,d)|0,_=Math.max(h,d)|0,b=c[2*v],p=c[2*v+1];b<p;){var k=b+p>>1,E=f[2*k+1];if(E===_)return k;_<E?p=k:b=k+1}return b}function u(c,f,h,d){for(var v=c.length,_=[],b=0;b<v;++b)var p=c[b],k=p.length;return _}return u},function(){function l(c,f,h,d){for(var v=Math.min(h,d)|0,_=Math.max(h,d)|0,b=c[2*v],p=c[2*v+1];b<p;){var k=b+p>>1,E=f[2*k+1];if(E===_)return k;_<E?p=k:b=k+1}return b}function u(c,f,h,d){for(var v=c.length,_=[],b=0;b<v;++b){var p=c[b],k=p.length;if(k===2){var E=(d[p[0]]<<0)+(d[p[1]]<<1);if(E===0||E===3)continue;switch(E){case 0:break;case 1:_.push([l(h,f,p[0],p[1])]);break;case 2:_.push([l(h,f,p[1],p[0])]);break;case 3:break}}}return _}return u},function(){function l(c,f,h,d){for(var v=Math.min(h,d)|0,_=Math.max(h,d)|0,b=c[2*v],p=c[2*v+1];b<p;){var k=b+p>>1,E=f[2*k+1];if(E===_)return k;_<E?p=k:b=k+1}return b}function u(c,f,h,d){for(var v=c.length,_=[],b=0;b<v;++b){var p=c[b],k=p.length;if(k===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:_.push([l(h,f,p[0],p[2]),l(h,f,p[0],p[1])]);break;case 2:_.push([l(h,f,p[1],p[0]),l(h,f,p[1],p[2])]);break;case 3:_.push([l(h,f,p[0],p[2]),l(h,f,p[1],p[2])]);break;case 4:_.push([l(h,f,p[2],p[1]),l(h,f,p[2],p[0])]);break;case 5:_.push([l(h,f,p[2],p[1]),l(h,f,p[0],p[1])]);break;case 6:_.push([l(h,f,p[1],p[0]),l(h,f,p[2],p[0])]);break;case 7:break}}else if(k===2){var E=(d[p[0]]<<0)+(d[p[1]]<<1);if(E===0||E===3)continue;switch(E){case 0:break;case 1:_.push([l(h,f,p[0],p[1])]);break;case 2:_.push([l(h,f,p[1],p[0])]);break;case 3:break}}}return _}return u},function(){function l(c,f,h,d){for(var v=Math.min(h,d)|0,_=Math.max(h,d)|0,b=c[2*v],p=c[2*v+1];b<p;){var k=b+p>>1,E=f[2*k+1];if(E===_)return k;_<E?p=k:b=k+1}return b}function u(c,f,h,d){for(var v=c.length,_=[],b=0;b<v;++b){var p=c[b],k=p.length;if(k===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:_.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:_.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:_.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:_.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:_.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:_.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:_.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:_.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:_.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:_.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:_.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:_.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:_.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:_.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(k===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:_.push([l(h,f,p[0],p[2]),l(h,f,p[0],p[1])]);break;case 2:_.push([l(h,f,p[1],p[0]),l(h,f,p[1],p[2])]);break;case 3:_.push([l(h,f,p[0],p[2]),l(h,f,p[1],p[2])]);break;case 4:_.push([l(h,f,p[2],p[1]),l(h,f,p[2],p[0])]);break;case 5:_.push([l(h,f,p[2],p[1]),l(h,f,p[0],p[1])]);break;case 6:_.push([l(h,f,p[1],p[0]),l(h,f,p[2],p[0])]);break;case 7:break}}else if(k===2){var E=(d[p[0]]<<0)+(d[p[1]]<<1);if(E===0||E===3)continue;switch(E){case 0:break;case 1:_.push([l(h,f,p[0],p[1])]);break;case 2:_.push([l(h,f,p[1],p[0])]);break;case 3:break}}}return _}return u}];function o(s){return a[s]()}},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},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])}}},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),_=o(2504),b=o(3536),p=[0,0,0];i.exports=L;function k(x){this._components=x.slice(),this._time=[0],this.prevMatrix=x.slice(),this.nextMatrix=x.slice(),this.computedMatrix=x.slice(),this.computedInverse=x.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=k.prototype;E.recalcMatrix=function(x){var C=this._time,M=s.le(C,x),g=this.computedMatrix;if(!(M<0)){var P=this._components;if(M===C.length-1)for(var T=16*M,z=0;z<16;++z)g[z]=P[T++];else{for(var O=C[M+1]-C[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,(x-C[M])/O)}var j=this.computedUp;j[0]=g[1],j[1]=g[5],j[2]=g[9],b(j,j);var N=this.computedInverse;u(N,g);var H=this.computedEye,te=N[15];H[0]=N[12]/te,H[1]=N[13]/te,H[2]=N[14]/te;for(var oe=this.computedCenter,_e=Math.exp(this.computedRadius[0]),z=0;z<3;++z)oe[z]=H[z]-g[2+4*z]*_e}},E.idle=function(x){if(!(x<this.lastT())){for(var C=this._components,M=C.length-16,g=0;g<16;++g)C.push(C[M++]);this._time.push(x)}},E.flush=function(x){var C=s.gt(this._time,x)-2;C<0||(this._time.splice(0,C),this._components.splice(0,16*C))},E.lastT=function(){return this._time[this._time.length-1]},E.lookAt=function(x,C,M,g){this.recalcMatrix(x),C=C||this.computedEye,M=M||p,g=g||this.computedUp,this.setMatrix(x,d(this.computedMatrix,C,M,g));for(var P=0,T=0;T<3;++T)P+=Math.pow(M[T]-C[T],2);P=Math.log(Math.sqrt(P)),this.computedRadius[0]=P},E.rotate=function(x,C,M,g){this.recalcMatrix(x);var P=this.computedInverse;C&&f(P,P,C),M&&c(P,P,M),g&&h(P,P,g),this.setMatrix(x,u(this.computedMatrix,P))};var S=[0,0,0];E.pan=function(x,C,M,g){S[0]=-(C||0),S[1]=-(M||0),S[2]=-(g||0),this.recalcMatrix(x);var P=this.computedInverse;v(P,P,S),this.setMatrix(x,u(P,P))},E.translate=function(x,C,M,g){S[0]=C||0,S[1]=M||0,S[2]=g||0,this.recalcMatrix(x);var P=this.computedMatrix;v(P,P,S),this.setMatrix(x,P)},E.setMatrix=function(x,C){if(!(x<this.lastT())){this._time.push(x);for(var M=0;M<16;++M)this._components.push(C[M])}},E.setDistance=function(x,C){this.computedRadius[0]=C},E.setDistanceLimits=function(x,C){var M=this._limits;M[0]=x,M[1]=C},E.getDistanceLimits=function(x){var C=this._limits;return x?(x[0]=C[0],x[1]=C[1],x):C};function L(x){x=x||{};var C=x.matrix||[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];return new k(C)}},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 _=v[1],b=v[2];return(_?l(b):b).trim()}}}}},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(_){return l(_,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(_){return l(_,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(_){return l(_,d,v,null,[{name:"position",type:"vec3"},{name:"normal",type:"vec3"}])}},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,_=d.BUFFER;a.free=function(j){if(u.isBuffer(j))_[s.log2(j.length)].push(j);else{if(Object.prototype.toString.call(j)!=="[object ArrayBuffer]"&&(j=j.buffer),!j)return;var N=j.length||j.byteLength,H=s.log2(N)|0;v[H].push(j)}};function b(Z){if(Z){var j=Z.length||Z.byteLength,N=s.log2(j);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(j){_[s.log2(j.length)].push(j)},a.malloc=function(j,N){if(N===void 0||N==="arraybuffer")return k(j);switch(N){case"uint8":return E(j);case"uint16":return S(j);case"uint32":return L(j);case"int8":return x(j);case"int16":return C(j);case"int32":return M(j);case"float":case"float32":return g(j);case"double":case"float64":return P(j);case"uint8_clamped":return T(j);case"bigint64":return O(j);case"biguint64":return z(j);case"buffer":return G(j);case"data":case"dataview":return V(j);default:return null}return null};function k(j){var j=s.nextPow2(j),N=s.log2(j),H=v[N];return H.length>0?H.pop():new ArrayBuffer(j)}a.mallocArrayBuffer=k;function E(Z){return new Uint8Array(k(Z),0,Z)}a.mallocUint8=E;function S(Z){return new Uint16Array(k(2*Z),0,Z)}a.mallocUint16=S;function L(Z){return new Uint32Array(k(4*Z),0,Z)}a.mallocUint32=L;function x(Z){return new Int8Array(k(Z),0,Z)}a.mallocInt8=x;function C(Z){return new Int16Array(k(2*Z),0,Z)}a.mallocInt16=C;function M(Z){return new Int32Array(k(4*Z),0,Z)}a.mallocInt32=M;function g(Z){return new Float32Array(k(4*Z),0,Z)}a.mallocFloat32=a.mallocFloat=g;function P(Z){return new Float64Array(k(8*Z),0,Z)}a.mallocFloat64=a.mallocDouble=P;function T(Z){return c?new Uint8ClampedArray(k(Z),0,Z):E(Z)}a.mallocUint8Clamped=T;function z(Z){return f?new BigUint64Array(k(8*Z),0,Z):null}a.mallocBigUint64=z;function O(Z){return h?new BigInt64Array(k(8*Z),0,Z):null}a.mallocBigInt64=O;function V(Z){return new DataView(k(Z),0,Z)}a.mallocDataView=V;function G(Z){Z=s.nextPow2(Z);var j=s.log2(Z),N=_[j];return N.length>0?N.pop():new u(Z)}a.mallocBuffer=G,a.clearCache=function(){for(var j=0;j<32;++j)d.UINT8[j].length=0,d.UINT16[j].length=0,d.UINT32[j].length=0,d.INT8[j].length=0,d.INT16[j].length=0,d.INT32[j].length=0,d.FLOAT[j].length=0,d.DOUBLE[j].length=0,d.BIGUINT64[j].length=0,d.BIGINT64[j].length=0,d.UINT8C[j].length=0,v[j].length=0,_[j].length=0}},1903:function(i){i.exports=a;function a(o){var s=new Float32Array(16);return s[0]=o[0],s[1]=o[1],s[2]=o[2],s[3]=o[3],s[4]=o[4],s[5]=o[5],s[6]=o[6],s[7]=o[7],s[8]=o[8],s[9]=o[9],s[10]=o[10],s[11]=o[11],s[12]=o[12],s[13]=o[13],s[14]=o[14],s[15]=o[15],s}},1944:function(i,a,o){"use strict";var s=o(5250),l=o(8210);i.exports=u;function u(c,f){for(var h=s(c[0],f[0]),d=1;d<c.length;++d)h=l(h,s(c[d],f[d]));return h}},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)}},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]),j=O(P[0],P[1]),N=O(Z,g[2])-O(j,P[2]);return N||O(Z+g[2],V)-O(j+P[2],G);default:var H=g.slice(0);H.sort();var te=P.slice(0);te.sort();for(var oe=0;oe<T;++oe)if(z=H[oe]-te[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 _(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=_;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],j=Z.length,N=1,H=1<<j;N<H;++N){V.length=s.popCount(N);for(var te=0,oe=0;oe<j;++oe)N&1<<oe&&(V[te++]=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 k(g,P){if(!P)return p(_(S(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=k;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 j=[],N=0;N<V;++N)G>>>N&1&&j.push(O[N]);P.push(j)}return v(P)}a.explode=E;function S(g,P){if(P<0)return[];for(var T=[],z=(1<<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),j=0,N=0;N<V.length;++N)G&1<<N&&(Z[j++]=V[N]);T.push(Z)}return v(T)}a.skeleton=S;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),j=0,N=0;j<G;++j)j!==V&&(Z[N++]=O[j]);P.push(Z)}return v(P)}a.boundary=L;function x(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=[],j=T.ranks,z=0;z<j.length;++z)j[z]=-1;for(var z=0;z<g.length;++z){var N=T.find(g[z][0]);j[N]<0?(j[N]=Z.length,Z.push([g[z].slice(0)])):Z[j[N]].push(g[z].slice(0))}return Z}function C(g){for(var P=_(v(S(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 j=[],N=T.ranks,z=0;z<N.length;++z)N[z]=-1;for(var z=0;z<g.length;++z){var H=T.find(b(P,[g[z][0]]));N[H]<0?(N[H]=j.length,j.push([g[z].slice(0)])):j[N[H]].push(g[z].slice(0))}return j}function M(g,P){return P?x(g,P):C(g)}a.connectedComponents=M},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,k){for(var E=new Array(p),S=0;S<p;++S)E[S]=k;return E}function _(p){for(var k=new Array(p),E=0;E<p;++E)k[E]=[];return k}function b(p,k){var Re=d(p,k);p=Re[0],k=Re[1];for(var E=k.length,S=p.length,L=s(p,k.length),x=0;x<E;++x)if(L[x].length%2===1)throw new Error("planar-graph-to-polyline: graph must be manifold");var C=l(p,k);function M(lt){for(var Gt=lt.length,Nt=[0],Jt=0;Jt<Gt;++Jt){var sr=k[lt[Jt]],wr=k[lt[(Jt+1)%Gt]],cr=c(-sr[0],sr[1]),$e=c(-sr[0],wr[1]),St=c(wr[0],sr[1]),Qt=c(wr[0],wr[1]);Nt=f(Nt,f(f(cr,$e),f(St,Qt)))}return Nt[Nt.length-1]>0}C=C.filter(M);for(var g=C.length,P=new Array(g),T=new Array(g),x=0;x<g;++x){P[x]=x;var z=new Array(g),O=C[x].map(function(Gt){return k[Gt]}),V=u([O]),G=0;e:for(var Z=0;Z<g;++Z)if(z[Z]=0,x!==Z){for(var j=C[Z],N=j.length,H=0;H<N;++H){var te=V(k[j[H]]);if(te!==0){te<0&&(z[Z]=1,G+=1);continue e}}z[Z]=1,G+=1}T[x]=[G,x,z]}T.sort(function(lt,Gt){return Gt[0]-lt[0]});for(var x=0;x<g;++x)for(var z=T[x],oe=z[1],_e=z[2],Z=0;Z<g;++Z)_e[Z]&&(P[Z]=oe);for(var Ee=_(g),x=0;x<g;++x)Ee[x].push(P[x]),Ee[P[x]].push(x);for(var Ce={},me=v(E,!1),x=0;x<g;++x)for(var j=C[x],N=j.length,Z=0;Z<N;++Z){var ie=j[Z],Se=j[(Z+1)%N],Le=Math.min(ie,Se)+":"+Math.max(ie,Se);if(Le in Ce){var Ae=Ce[Le];Ee[Ae].push(x),Ee[x].push(Ae),me[ie]=me[Se]=!0}else Ce[Le]=x}function Fe(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),x=0;x<g;++x)P[x]===x&&!Fe(C[x])?(Pe.push(x),ge[x]=0):ge[x]=-1;for(var Re=[];Pe.length>0;){var ce=Pe.pop(),Ze=Ee[ce];h(Ze,function(lt,Gt){return lt-Gt});var ut=Ze.length,pt=ge[ce],Zt;if(pt===0){var j=C[ce];Zt=[j]}for(var x=0;x<ut;++x){var st=Ze[x];if(!(ge[st]>=0)&&(ge[st]=pt^1,Pe.push(st),pt===0)){var j=C[st];Fe(j)||(j.reverse(),Zt.push(j))}}pt===0&&Re.push(Zt)}return Re}},2145:function(i,a){"use strict";a.uniforms=u,a.attributes=c;var o={FLOAT:"float",FLOAT_VEC2:"vec2",FLOAT_VEC3:"vec3",FLOAT_VEC4:"vec4",INT:"int",INT_VEC2:"ivec2",INT_VEC3:"ivec3",INT_VEC4:"ivec4",BOOL:"bool",BOOL_VEC2:"bvec2",BOOL_VEC3:"bvec3",BOOL_VEC4:"bvec4",FLOAT_MAT2:"mat2",FLOAT_MAT3:"mat3",FLOAT_MAT4:"mat4",SAMPLER_2D:"sampler2D",SAMPLER_CUBE:"samplerCube"},s=null;function l(f,h){if(!s){var d=Object.keys(o);s={};for(var v=0;v<d.length;++v){var _=d[v];s[f[_]]=o[_]}}return s[h]}function u(f,h){for(var d=f.getProgramParameter(h,f.ACTIVE_UNIFORMS),v=[],_=0;_<d;++_){var b=f.getActiveUniform(h,_);if(b){var p=l(f,b.type);if(b.size>1)for(var k=0;k<b.size;++k)v.push({name:b.name.replace("[0]","["+k+"]"),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=[],_=0;_<d;++_){var b=f.getActiveAttrib(h,_);b&&v.push({name:b.name,type:l(f,b.type)})}return v}},2229:function(i,a,o){i.exports=o(6843)},2260:function(i,a,o){"use strict";var s=o(7766);i.exports=C;var l=null,u,c,f,h;function d(M){var g=M.getParameter(M.FRAMEBUFFER_BINDING),P=M.getParameter(M.RENDERBUFFER_BINDING),T=M.getParameter(M.TEXTURE_BINDING_2D);return[g,P,T]}function v(M,g){M.bindFramebuffer(M.FRAMEBUFFER,g[0]),M.bindRenderbuffer(M.RENDERBUFFER,g[1]),M.bindTexture(M.TEXTURE_2D,g[2])}function _(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 k(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,j=M._useDepth,N=M._colorType;P.bindFramebuffer(P.FRAMEBUFFER,T);for(var H=0;H<V;++H)M.color[H]=p(P,z,O,N,P.RGBA,P.COLOR_ATTACHMENT0+H);V===0?(M._color_rb=k(P,z,O,P.RGBA4,P.COLOR_ATTACHMENT0),G&&G.drawBuffersWEBGL(l[0])):V>1&&G.drawBuffersWEBGL(l[V]);var te=P.getExtension("WEBGL_depth_texture");te?Z?M.depth=p(P,z,O,te.UNSIGNED_INT_24_8_WEBGL,P.DEPTH_STENCIL,P.DEPTH_STENCIL_ATTACHMENT):j&&(M.depth=p(P,z,O,P.UNSIGNED_SHORT,P.DEPTH_COMPONENT,P.DEPTH_ATTACHMENT)):j&&Z?M._depth_rb=k(P,z,O,P.DEPTH_STENCIL,P.DEPTH_STENCIL_ATTACHMENT):j?M._depth_rb=k(P,z,O,P.DEPTH_COMPONENT16,P.DEPTH_ATTACHMENT):Z&&(M._depth_rb=k(P,z,O,P.STENCIL_INDEX,P.STENCIL_ATTACHMENT));var oe=P.checkFramebufferStatus(P.FRAMEBUFFER);if(oe!==P.FRAMEBUFFER_COMPLETE){M._destroyed=!0,P.bindFramebuffer(P.FRAMEBUFFER,null),P.deleteFramebuffer(M.handle),M.handle=null,M.depth&&(M.depth.dispose(),M.depth=null),M._depth_rb&&(P.deleteRenderbuffer(M._depth_rb),M._depth_rb=null);for(var H=0;H<M.color.length;++H)M.color[H].dispose(),M.color[H]=null;M._color_rb&&(P.deleteRenderbuffer(M._color_rb),M._color_rb=null),v(P,g),b(oe)}v(P,g)}function S(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 j=this,N=[g|0,P|0];Object.defineProperties(N,{0:{get:function(){return j._shape[0]},set:function(H){return j.width=H}},1:{get:function(){return j._shape[1]},set:function(H){return j.height=H}}}),this._shapeVector=N,E(this)}var L=S.prototype;function x(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 x(this,g,P),[g,P]},enumerable:!1},width:{get:function(){return this._destroyed?0:this._shape[0]},set:function(M){return M=M|0,x(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,x(this,this._shape[0],M),M},enumerable:!1}}),L.bind=function(){if(!this._destroyed){var M=this.gl;M.bindFramebuffer(M.FRAMEBUFFER,this.handle),M.viewport(0,0,this._shape[0],this._shape[1])}},L.dispose=function(){if(!this._destroyed){this._destroyed=!0;var M=this.gl;M.deleteFramebuffer(this.handle),this.handle=null,this.depth&&(this.depth.dispose(),this.depth=null),this._depth_rb&&(M.deleteRenderbuffer(this._depth_rb),this._depth_rb=null);for(var g=0;g<this.color.length;++g)this.color[g].dispose(),this.color[g]=null;this._color_rb&&(M.deleteRenderbuffer(this._color_rb),this._color_rb=null)}};function C(M,g,P,T){u||(u=M.FRAMEBUFFER_UNSUPPORTED,c=M.FRAMEBUFFER_INCOMPLETE_ATTACHMENT,f=M.FRAMEBUFFER_INCOMPLETE_DIMENSIONS,h=M.FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT);var z=M.getExtension("WEBGL_draw_buffers");if(!l&&z&&_(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 j=!0;"depth"in T&&(j=!!T.depth);var N=!1;return"stencil"in T&&(N=!!T.stencil),new S(M,g,P,G,V,j,N,z)}},2272:function(i,a,o){"use strict";var s=o(2646)[4],l=o(2478);i.exports=c;function u(f,h,d,v,_,b){var p=h.opposite(v,_);if(!(p<0)){if(_<v){var k=v;v=_,_=k,k=b,b=p,p=k}h.isConstraint(v,_)||s(f[v],f[_],f[b],f[p])<0&&d.push(v,_)}}function c(f,h){for(var d=[],v=f.length,_=h.stars,b=0;b<v;++b)for(var p=_[b],k=1;k<p.length;k+=2){var E=p[k];if(!(E<b)&&!h.isConstraint(b,E)){for(var S=p[k-1],L=-1,x=1;x<p.length;x+=2)if(p[x-1]===E){L=p[x];break}L<0||s(f[b],f[E],f[S],f[L])<0&&d.push(b,E)}}for(;d.length>0;){for(var E=d.pop(),b=d.pop(),S=-1,L=-1,p=_[b],C=1;C<p.length;C+=2){var M=p[C-1],g=p[C];M===E?L=g:g===E&&(S=M)}S<0||L<0||s(f[b],f[E],f[S],f[L])>=0||(h.flip(b,E),u(f,h,d,S,b,L),u(f,h,d,b,L,S),u(f,h,d,L,E,S),u(f,h,d,E,S,L))}}},2334:function(i){i.exports=a;function a(o,s,l){return o[0]=Math.min(s[0],l[0]),o[1]=Math.min(s[1],l[1]),o[2]=Math.min(s[2],l[2]),o[3]=Math.min(s[3],l[3]),o}},2335:function(i){i.exports=a;function a(o){var s=new Float32Array(4);return s[0]=o[0],s[1]=o[1],s[2]=o[2],s[3]=o[3],s}},2361:function(i){var a=!1;if(typeof Float64Array!="undefined"){var o=new Float64Array(1),s=new Uint32Array(o.buffer);if(o[0]=1,a=!0,s[1]===1072693248){let k=function(L,x){return s[0]=L,s[1]=x,o[0]},E=function(L){return o[0]=L,s[0]},S=function(L){return o[0]=L,s[1]};var u=k,c=E,f=S;i.exports=function(x){return o[0]=x,[s[0],s[1]]},i.exports.pack=k,i.exports.lo=E,i.exports.hi=S}else if(s[0]===1072693248){let k=function(L,x){return s[1]=L,s[0]=x,o[0]},E=function(L){return o[0]=L,s[1]},S=function(L){return o[0]=L,s[0]};var h=k,d=E,v=S;i.exports=function(x){return o[0]=x,[s[1],s[0]]},i.exports.pack=k,i.exports.lo=E,i.exports.hi=S}else a=!1}if(!a){let k=function(L,x){return l.writeUInt32LE(L,0,!0),l.writeUInt32LE(x,4,!0),l.readDoubleLE(0,!0)},E=function(L){return l.writeDoubleLE(L,0,!0),l.readUInt32LE(0,!0)},S=function(L){return l.writeDoubleLE(L,0,!0),l.readUInt32LE(4,!0)};var _=k,b=E,p=S,l=new Buffer(8);i.exports=function(x){return l.writeDoubleLE(x,0,!0),[l.readUInt32LE(0,!0),l.readUInt32LE(4,!0)]},i.exports.pack=k,i.exports.lo=E,i.exports.hi=S}i.exports.sign=function(k){return i.exports.hi(k)>>>31},i.exports.exponent=function(k){var E=i.exports.hi(k);return(E<<1>>>21)-1023},i.exports.fraction=function(k){var E=i.exports.lo(k),S=i.exports.hi(k),L=S&(1<<20)-1;return S&2146435072&&(L+=1048576),[E,L]},i.exports.denormalized=function(k){var E=i.exports.hi(k);return!(E&2146435072)}},2408:function(i){i.exports=a;function a(o,s,l){var u=Math.sin(l),c=Math.cos(l),f=s[0],h=s[1],d=s[2],v=s[3],_=s[8],b=s[9],p=s[10],k=s[11];return s!==o&&(o[4]=s[4],o[5]=s[5],o[6]=s[6],o[7]=s[7],o[12]=s[12],o[13]=s[13],o[14]=s[14],o[15]=s[15]),o[0]=f*c-_*u,o[1]=h*c-b*u,o[2]=d*c-p*u,o[3]=v*c-k*u,o[8]=f*u+_*c,o[9]=h*u+b*c,o[10]=d*u+p*c,o[11]=v*u+k*c,o}},2419:function(i){"use strict";i.exports=a;function a(o){for(var s=1,l=1;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}},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}},2455:function(i,a){"use strict";function o(){function u(h,d,v,_,b,p,k,E,S,L,x){for(var C=2*h,M=_,g=C*_;M<b;++M,g+=C){var P=p[d+g],T=p[d+g+h],z=k[M];e:for(var O=E,V=C*E;O<S;++O,V+=C){var G=L[d+V],Z=L[d+V+h],j=x[O];if(!(Z<P||T<G)){for(var N=d+1;N<h;++N){var H=p[N+g],te=p[N+h+g],oe=L[N+V],_e=L[N+h+V];if(te<oe||_e<H)continue e}var Ee=v(z,j);if(Ee!==void 0)return Ee}}}}function c(h,d,v,_,b,p,k,E,S,L,x){for(var C=2*h,M=E,g=C*E;M<S;++M,g+=C){var P=L[d+g],T=L[d+g+h],z=x[M];e:for(var O=_,V=C*_;O<b;++O,V+=C){var G=p[d+V],Z=p[d+V+h],j=k[O];if(!(T<G||Z<P)){for(var N=d+1;N<h;++N){var H=p[N+V],te=p[N+h+V],oe=L[N+g],_e=L[N+h+g];if(te<oe||_e<H)continue e}var Ee=v(j,z);if(Ee!==void 0)return Ee}}}}function f(h,d,v,_,b,p,k,E,S,L,x){return b-_>S-E?u(h,d,v,_,b,p,k,E,S,L,x):c(h,d,v,_,b,p,k,E,S,L,x)}return f}function s(){function u(v,_,b,p,k,E,S,L,x,C,M){for(var g=2*v,P=p,T=g*p;P<k;++P,T+=g){var z=E[_+T],O=E[_+T+v],V=S[P];e:for(var G=L,Z=g*L;G<x;++G,Z+=g){var j=C[_+Z],N=M[G];if(!(j<=z||O<j)){for(var H=_+1;H<v;++H){var te=E[H+T],oe=E[H+v+T],_e=C[H+Z],Ee=C[H+v+Z];if(oe<_e||Ee<te)continue e}var Ce=b(N,V);if(Ce!==void 0)return Ce}}}}function c(v,_,b,p,k,E,S,L,x,C,M){for(var g=2*v,P=p,T=g*p;P<k;++P,T+=g){var z=E[_+T],O=E[_+T+v],V=S[P];e:for(var G=L,Z=g*L;G<x;++G,Z+=g){var j=C[_+Z],N=M[G];if(!(j<z||O<j)){for(var H=_+1;H<v;++H){var te=E[H+T],oe=E[H+v+T],_e=C[H+Z],Ee=C[H+v+Z];if(oe<_e||Ee<te)continue e}var Ce=b(V,N);if(Ce!==void 0)return Ce}}}}function f(v,_,b,p,k,E,S,L,x,C,M){for(var g=2*v,P=L,T=g*L;P<x;++P,T+=g){var z=C[_+T],O=M[P];e:for(var V=p,G=g*p;V<k;++V,G+=g){var Z=E[_+G],j=E[_+G+v],N=S[V];if(!(z<=Z||j<z)){for(var H=_+1;H<v;++H){var te=E[H+G],oe=E[H+v+G],_e=C[H+T],Ee=C[H+v+T];if(oe<_e||Ee<te)continue e}var Ce=b(O,N);if(Ce!==void 0)return Ce}}}}function h(v,_,b,p,k,E,S,L,x,C,M){for(var g=2*v,P=L,T=g*L;P<x;++P,T+=g){var z=C[_+T],O=M[P];e:for(var V=p,G=g*p;V<k;++V,G+=g){var Z=E[_+G],j=E[_+G+v],N=S[V];if(!(z<Z||j<z)){for(var H=_+1;H<v;++H){var te=E[H+G],oe=E[H+v+G],_e=C[H+T],Ee=C[H+v+T];if(oe<_e||Ee<te)continue e}var Ce=b(N,O);if(Ce!==void 0)return Ce}}}}function d(v,_,b,p,k,E,S,L,x,C,M,g){return E-k>C-x?p?u(v,_,b,k,E,S,L,x,C,M,g):c(v,_,b,k,E,S,L,x,C,M,g):p?f(v,_,b,k,E,S,L,x,C,M,g):h(v,_,b,k,E,S,L,x,C,M,g)}return d}function l(u){return u?o():s()}a.partial=l(!1),a.full=l(!0)},2478:function(i){"use strict";function a(f,h,d,v,_){for(var b=_+1;v<=_;){var p=v+_>>>1,k=f[p],E=d!==void 0?d(k,h):k-h;E>=0?(b=p,_=p-1):v=p+1}return b}function o(f,h,d,v,_){for(var b=_+1;v<=_;){var p=v+_>>>1,k=f[p],E=d!==void 0?d(k,h):k-h;E>0?(b=p,_=p-1):v=p+1}return b}function s(f,h,d,v,_){for(var b=v-1;v<=_;){var p=v+_>>>1,k=f[p],E=d!==void 0?d(k,h):k-h;E<0?(b=p,v=p+1):_=p-1}return b}function l(f,h,d,v,_){for(var b=v-1;v<=_;){var p=v+_>>>1,k=f[p],E=d!==void 0?d(k,h):k-h;E<=0?(b=p,v=p+1):_=p-1}return b}function u(f,h,d,v,_){for(;v<=_;){var b=v+_>>>1,p=f[b],k=d!==void 0?d(p,h):p-h;if(k===0)return b;k<=0?v=b+1:_=b-1}return-1}function c(f,h,d,v,_,b){return typeof d=="function"?b(f,h,d,v===void 0?0:v|0,_===void 0?f.length-1:_|0):b(f,h,void 0,d===void 0?0:d|0,v===void 0?f.length-1:v|0)}i.exports={ge:function(f,h,d,v,_){return c(f,h,d,v,_,a)},gt:function(f,h,d,v,_){return c(f,h,d,v,_,o)},lt:function(f,h,d,v,_){return c(f,h,d,v,_,s)},le:function(f,h,d,v,_){return c(f,h,d,v,_,l)},eq:function(f,h,d,v,_){return c(f,h,d,v,_,u)}}},2504:function(i){i.exports=a;function a(o,s,l){var u=l[0],c=l[1],f=l[2];return o[0]=s[0]*u,o[1]=s[1]*u,o[2]=s[2]*u,o[3]=s[3]*u,o[4]=s[4]*c,o[5]=s[5]*c,o[6]=s[6]*c,o[7]=s[7]*c,o[8]=s[8]*f,o[9]=s[9]*f,o[10]=s[10]*f,o[11]=s[11]*f,o[12]=s[12],o[13]=s[13],o[14]=s[14],o[15]=s[15],o}},2538:function(i,a,o){"use strict";var s=o(8902),l=o(5542),u=o(2272),c=o(5023);i.exports=_;function f(b){return[Math.min(b[0],b[1]),Math.max(b[0],b[1])]}function h(b,p){return b[0]-p[0]||b[1]-p[1]}function d(b){return b.map(f).sort(h)}function v(b,p,k){return p in b?b[p]:k}function _(b,p,k){Array.isArray(p)?(k=k||{},p=p||[]):(k=p||{},p=[]);var E=!!v(k,"delaunay",!0),S=!!v(k,"interior",!0),L=!!v(k,"exterior",!0),x=!!v(k,"infinity",!1);if(!S&&!L||b.length===0)return[];var C=s(b,p);if(E||S!==L||x){for(var M=l(b.length,d(p)),g=0;g<C.length;++g){var P=C[g];M.addTriangle(P[0],P[1],P[2])}return E&&u(b,M),L?S?x?c(M,0,x):M.cells():c(M,1,x):c(M,-1)}else return 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}},2613:function(i){i.exports=1e-6},2640:function(i,a,o){"use strict";var s=o(1888);i.exports=c;var l={"false,0,1":function(h,d,v,_,b){return function(k,E,S,L){var x=k.shape[0]|0,C=k.shape[1]|0,M=k.data,g=k.offset|0,P=k.stride[0]|0,T=k.stride[1]|0,z=g,O,V=-P|0,G=0,Z=-T|0,j=0,N=-P-T|0,H=0,te=P|0,oe=T-P*x|0,_e=0,Ee=0,Ce=0,me=2*x|0,ie=_(me),Se=_(me),Le=0,Ae=0,Fe=-1,Pe=-1,ge=0,Re=-x|0,ce=x|0,Ze=0,ut=-x-1|0,pt=x-1|0,Zt=0,st=0,lt=0;for(_e=0;_e<x;++_e)ie[Le++]=v(M[z],E,S,L),z+=te;if(z+=oe,C>0){if(Ee=1,ie[Le++]=v(M[z],E,S,L),z+=te,x>0)for(_e=1,O=M[z],Ae=ie[Le]=v(O,E,S,L),ge=ie[Le+Fe],Ze=ie[Le+Re],Zt=ie[Le+ut],(Ae!==ge||Ae!==Ze||Ae!==Zt)&&(G=M[z+V],j=M[z+Z],H=M[z+N],h(_e,Ee,O,G,j,H,Ae,ge,Ze,Zt,E,S,L),st=Se[Le]=Ce++),Le+=1,z+=te,_e=2;_e<x;++_e)O=M[z],Ae=ie[Le]=v(O,E,S,L),ge=ie[Le+Fe],Ze=ie[Le+Re],Zt=ie[Le+ut],(Ae!==ge||Ae!==Ze||Ae!==Zt)&&(G=M[z+V],j=M[z+Z],H=M[z+N],h(_e,Ee,O,G,j,H,Ae,ge,Ze,Zt,E,S,L),st=Se[Le]=Ce++,Zt!==ge&&d(Se[Le+Fe],st,H,G,Zt,ge,E,S,L)),Le+=1,z+=te;for(z+=oe,Le=0,lt=Fe,Fe=Pe,Pe=lt,lt=Re,Re=ce,ce=lt,lt=ut,ut=pt,pt=lt,Ee=2;Ee<C;++Ee){if(ie[Le++]=v(M[z],E,S,L),z+=te,x>0)for(_e=1,O=M[z],Ae=ie[Le]=v(O,E,S,L),ge=ie[Le+Fe],Ze=ie[Le+Re],Zt=ie[Le+ut],(Ae!==ge||Ae!==Ze||Ae!==Zt)&&(G=M[z+V],j=M[z+Z],H=M[z+N],h(_e,Ee,O,G,j,H,Ae,ge,Ze,Zt,E,S,L),st=Se[Le]=Ce++,Zt!==Ze&&d(Se[Le+Re],st,j,H,Ze,Zt,E,S,L)),Le+=1,z+=te,_e=2;_e<x;++_e)O=M[z],Ae=ie[Le]=v(O,E,S,L),ge=ie[Le+Fe],Ze=ie[Le+Re],Zt=ie[Le+ut],(Ae!==ge||Ae!==Ze||Ae!==Zt)&&(G=M[z+V],j=M[z+Z],H=M[z+N],h(_e,Ee,O,G,j,H,Ae,ge,Ze,Zt,E,S,L),st=Se[Le]=Ce++,Zt!==Ze&&d(Se[Le+Re],st,j,H,Ze,Zt,E,S,L),Zt!==ge&&d(Se[Le+Fe],st,H,G,Zt,ge,E,S,L)),Le+=1,z+=te;Ee&1&&(Le=0),lt=Fe,Fe=Pe,Pe=lt,lt=Re,Re=ce,ce=lt,lt=ut,ut=pt,pt=lt,z+=oe}}b(Se),b(ie)}},"false,1,0":function(h,d,v,_,b){return function(k,E,S,L){var x=k.shape[0]|0,C=k.shape[1]|0,M=k.data,g=k.offset|0,P=k.stride[0]|0,T=k.stride[1]|0,z=g,O,V=-P|0,G=0,Z=-T|0,j=0,N=-P-T|0,H=0,te=T|0,oe=P-T*C|0,_e=0,Ee=0,Ce=0,me=2*C|0,ie=_(me),Se=_(me),Le=0,Ae=0,Fe=-1,Pe=-1,ge=0,Re=-C|0,ce=C|0,Ze=0,ut=-C-1|0,pt=C-1|0,Zt=0,st=0,lt=0;for(Ee=0;Ee<C;++Ee)ie[Le++]=v(M[z],E,S,L),z+=te;if(z+=oe,x>0){if(_e=1,ie[Le++]=v(M[z],E,S,L),z+=te,C>0)for(Ee=1,O=M[z],Ae=ie[Le]=v(O,E,S,L),Ze=ie[Le+Re],ge=ie[Le+Fe],Zt=ie[Le+ut],(Ae!==Ze||Ae!==ge||Ae!==Zt)&&(G=M[z+V],j=M[z+Z],H=M[z+N],h(_e,Ee,O,G,j,H,Ae,Ze,ge,Zt,E,S,L),st=Se[Le]=Ce++),Le+=1,z+=te,Ee=2;Ee<C;++Ee)O=M[z],Ae=ie[Le]=v(O,E,S,L),Ze=ie[Le+Re],ge=ie[Le+Fe],Zt=ie[Le+ut],(Ae!==Ze||Ae!==ge||Ae!==Zt)&&(G=M[z+V],j=M[z+Z],H=M[z+N],h(_e,Ee,O,G,j,H,Ae,Ze,ge,Zt,E,S,L),st=Se[Le]=Ce++,Zt!==ge&&d(Se[Le+Fe],st,j,H,ge,Zt,E,S,L)),Le+=1,z+=te;for(z+=oe,Le=0,lt=Re,Re=ce,ce=lt,lt=Fe,Fe=Pe,Pe=lt,lt=ut,ut=pt,pt=lt,_e=2;_e<x;++_e){if(ie[Le++]=v(M[z],E,S,L),z+=te,C>0)for(Ee=1,O=M[z],Ae=ie[Le]=v(O,E,S,L),Ze=ie[Le+Re],ge=ie[Le+Fe],Zt=ie[Le+ut],(Ae!==Ze||Ae!==ge||Ae!==Zt)&&(G=M[z+V],j=M[z+Z],H=M[z+N],h(_e,Ee,O,G,j,H,Ae,Ze,ge,Zt,E,S,L),st=Se[Le]=Ce++,Zt!==Ze&&d(Se[Le+Re],st,H,G,Zt,Ze,E,S,L)),Le+=1,z+=te,Ee=2;Ee<C;++Ee)O=M[z],Ae=ie[Le]=v(O,E,S,L),Ze=ie[Le+Re],ge=ie[Le+Fe],Zt=ie[Le+ut],(Ae!==Ze||Ae!==ge||Ae!==Zt)&&(G=M[z+V],j=M[z+Z],H=M[z+N],h(_e,Ee,O,G,j,H,Ae,Ze,ge,Zt,E,S,L),st=Se[Le]=Ce++,Zt!==ge&&d(Se[Le+Fe],st,j,H,ge,Zt,E,S,L),Zt!==Ze&&d(Se[Le+Re],st,H,G,Zt,Ze,E,S,L)),Le+=1,z+=te;_e&1&&(Le=0),lt=Re,Re=ce,ce=lt,lt=Fe,Fe=Pe,Pe=lt,lt=ut,ut=pt,pt=lt,z+=oe}}b(Se),b(ie)}}};function u(f,h,d,v,_,b){var p=[b,_].join(","),k=l[p];return k(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 _=f.scalarArguments||0;_<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),k=0;k<v;++k)b.indexOf(k)>=0?p[k]=!0:p[k]=!1;return u(f.vertex,f.cell,f.phase,_,d,p)}},2642:function(i,a,o){"use strict";i.exports=u;var s=o(727);function l(c){for(var f=0,h=0;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 _=new Array(h+1),b=0;b<=h;++b)_[b]=c[b][v];d[v]=_}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 k=s(d,p),E=l(k[h+1]);E===0&&(E=1);for(var S=new Array(h+1),v=0;v<=h;++v)S[v]=l(k[v])/E;return S}},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?k:E;return g(l,u,s,c)}function d(){return 0}function v(){return 0}function _(){return 0}function b(M,g,P,T){function z(O,V,G){var Z=P(O[0],O[0]),j=T(Z,V[0]),N=T(Z,G[0]),H=P(V[0],V[0]),te=T(H,O[0]),oe=T(H,G[0]),_e=P(G[0],G[0]),Ee=T(_e,O[0]),Ce=T(_e,V[0]),me=M(g(Ce,oe),g(te,j)),ie=g(Ee,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 j=M(P(O[0],O[0]),P(O[1],O[1])),N=T(j,V[0]),H=T(j,G[0]),te=T(j,Z[0]),oe=M(P(V[0],V[0]),P(V[1],V[1])),_e=T(oe,O[0]),Ee=T(oe,G[0]),Ce=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])),Fe=T(Ae,O[0]),Pe=T(Ae,V[0]),ge=T(Ae,G[0]),Re=M(M(T(g(ge,Le),V[1]),M(T(g(Pe,Ce),-G[1]),T(g(Se,Ee),Z[1]))),M(T(g(Pe,Ce),O[1]),M(T(g(Fe,te),-V[1]),T(g(_e,N),Z[1])))),ce=M(M(T(g(ge,Le),O[1]),M(T(g(Fe,te),-G[1]),T(g(ie,H),Z[1]))),M(T(g(Se,Ee),O[1]),M(T(g(ie,H),-V[1]),T(g(_e,N),G[1])))),Ze=g(Re,ce);return Ze[Ze.length-1]}return z}function k(M,g,P,T){function z(O,V,G,Z,j){var N=M(P(O[0],O[0]),M(P(O[1],O[1]),P(O[2],O[2]))),H=T(N,V[0]),te=T(N,G[0]),oe=T(N,Z[0]),_e=T(N,j[0]),Ee=M(P(V[0],V[0]),M(P(V[1],V[1]),P(V[2],V[2]))),Ce=T(Ee,O[0]),me=T(Ee,G[0]),ie=T(Ee,Z[0]),Se=T(Ee,j[0]),Le=M(P(G[0],G[0]),M(P(G[1],G[1]),P(G[2],G[2]))),Ae=T(Le,O[0]),Fe=T(Le,V[0]),Pe=T(Le,Z[0]),ge=T(Le,j[0]),Re=M(P(Z[0],Z[0]),M(P(Z[1],Z[1]),P(Z[2],Z[2]))),ce=T(Re,O[0]),Ze=T(Re,V[0]),ut=T(Re,G[0]),pt=T(Re,j[0]),Zt=M(P(j[0],j[0]),M(P(j[1],j[1]),P(j[2],j[2]))),st=T(Zt,O[0]),lt=T(Zt,V[0]),Gt=T(Zt,G[0]),Nt=T(Zt,Z[0]),Jt=M(M(M(T(M(T(g(Nt,pt),G[1]),M(T(g(Gt,ge),-Z[1]),T(g(ut,Pe),j[1]))),V[2]),M(T(M(T(g(Nt,pt),V[1]),M(T(g(lt,Se),-Z[1]),T(g(Ze,ie),j[1]))),-G[2]),T(M(T(g(Gt,ge),V[1]),M(T(g(lt,Se),-G[1]),T(g(Fe,me),j[1]))),Z[2]))),M(T(M(T(g(ut,Pe),V[1]),M(T(g(Ze,ie),-G[1]),T(g(Fe,me),Z[1]))),-j[2]),M(T(M(T(g(Nt,pt),V[1]),M(T(g(lt,Se),-Z[1]),T(g(Ze,ie),j[1]))),O[2]),T(M(T(g(Nt,pt),O[1]),M(T(g(st,_e),-Z[1]),T(g(ce,oe),j[1]))),-V[2])))),M(M(T(M(T(g(lt,Se),O[1]),M(T(g(st,_e),-V[1]),T(g(Ce,H),j[1]))),Z[2]),M(T(M(T(g(Ze,ie),O[1]),M(T(g(ce,oe),-V[1]),T(g(Ce,H),Z[1]))),-j[2]),T(M(T(g(ut,Pe),V[1]),M(T(g(Ze,ie),-G[1]),T(g(Fe,me),Z[1]))),O[2]))),M(T(M(T(g(ut,Pe),O[1]),M(T(g(ce,oe),-G[1]),T(g(Ae,te),Z[1]))),-V[2]),M(T(M(T(g(Ze,ie),O[1]),M(T(g(ce,oe),-V[1]),T(g(Ce,H),Z[1]))),G[2]),T(M(T(g(Fe,me),O[1]),M(T(g(Ae,te),-V[1]),T(g(Ce,H),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(ut,Pe),j[1]))),O[2]),T(M(T(g(Nt,pt),O[1]),M(T(g(st,_e),-Z[1]),T(g(ce,oe),j[1]))),-G[2])),M(T(M(T(g(Gt,ge),O[1]),M(T(g(st,_e),-G[1]),T(g(Ae,te),j[1]))),Z[2]),T(M(T(g(ut,Pe),O[1]),M(T(g(ce,oe),-G[1]),T(g(Ae,te),Z[1]))),-j[2]))),M(M(T(M(T(g(Gt,ge),V[1]),M(T(g(lt,Se),-G[1]),T(g(Fe,me),j[1]))),O[2]),T(M(T(g(Gt,ge),O[1]),M(T(g(st,_e),-G[1]),T(g(Ae,te),j[1]))),-V[2])),M(T(M(T(g(lt,Se),O[1]),M(T(g(st,_e),-V[1]),T(g(Ce,H),j[1]))),G[2]),T(M(T(g(Fe,me),O[1]),M(T(g(Ae,te),-V[1]),T(g(Ce,H),G[1]))),-j[2])))),wr=g(Jt,sr);return wr[wr.length-1]}return z}function E(M,g,P,T){function z(O,V,G,Z,j,N){var H=M(M(P(O[0],O[0]),P(O[1],O[1])),M(P(O[2],O[2]),P(O[3],O[3]))),te=T(H,V[0]),oe=T(H,G[0]),_e=T(H,Z[0]),Ee=T(H,j[0]),Ce=T(H,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,j[0]),Fe=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]),Re=T(Pe,V[0]),ce=T(Pe,Z[0]),Ze=T(Pe,j[0]),ut=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]))),Zt=T(pt,O[0]),st=T(pt,V[0]),lt=T(pt,G[0]),Gt=T(pt,j[0]),Nt=T(pt,N[0]),Jt=M(M(P(j[0],j[0]),P(j[1],j[1])),M(P(j[2],j[2]),P(j[3],j[3]))),sr=T(Jt,O[0]),wr=T(Jt,V[0]),cr=T(Jt,G[0]),$e=T(Jt,Z[0]),St=T(Jt,N[0]),Qt=M(M(P(N[0],N[0]),P(N[1],N[1])),M(P(N[2],N[2]),P(N[3],N[3]))),Vt=T(Qt,O[0]),_t=T(Qt,V[0]),It=T(Qt,G[0]),mt=T(Qt,Z[0]),er=T(Qt,j[0]),lr=M(M(M(T(M(M(T(M(T(g(er,St),Z[1]),M(T(g(mt,Nt),-j[1]),T(g($e,Gt),N[1]))),G[2]),T(M(T(g(er,St),G[1]),M(T(g(It,ut),-j[1]),T(g(cr,Ze),N[1]))),-Z[2])),M(T(M(T(g(mt,Nt),G[1]),M(T(g(It,ut),-Z[1]),T(g(lt,ce),N[1]))),j[2]),T(M(T(g($e,Gt),G[1]),M(T(g(cr,Ze),-Z[1]),T(g(lt,ce),j[1]))),-N[2]))),V[3]),M(T(M(M(T(M(T(g(er,St),Z[1]),M(T(g(mt,Nt),-j[1]),T(g($e,Gt),N[1]))),V[2]),T(M(T(g(er,St),V[1]),M(T(g(_t,Fe),-j[1]),T(g(wr,Ae),N[1]))),-Z[2])),M(T(M(T(g(mt,Nt),V[1]),M(T(g(_t,Fe),-Z[1]),T(g(st,Le),N[1]))),j[2]),T(M(T(g($e,Gt),V[1]),M(T(g(wr,Ae),-Z[1]),T(g(st,Le),j[1]))),-N[2]))),-G[3]),T(M(M(T(M(T(g(er,St),G[1]),M(T(g(It,ut),-j[1]),T(g(cr,Ze),N[1]))),V[2]),T(M(T(g(er,St),V[1]),M(T(g(_t,Fe),-j[1]),T(g(wr,Ae),N[1]))),-G[2])),M(T(M(T(g(It,ut),V[1]),M(T(g(_t,Fe),-G[1]),T(g(Re,Se),N[1]))),j[2]),T(M(T(g(cr,Ze),V[1]),M(T(g(wr,Ae),-G[1]),T(g(Re,Se),j[1]))),-N[2]))),Z[3]))),M(M(T(M(M(T(M(T(g(mt,Nt),G[1]),M(T(g(It,ut),-Z[1]),T(g(lt,ce),N[1]))),V[2]),T(M(T(g(mt,Nt),V[1]),M(T(g(_t,Fe),-Z[1]),T(g(st,Le),N[1]))),-G[2])),M(T(M(T(g(It,ut),V[1]),M(T(g(_t,Fe),-G[1]),T(g(Re,Se),N[1]))),Z[2]),T(M(T(g(lt,ce),V[1]),M(T(g(st,Le),-G[1]),T(g(Re,Se),Z[1]))),-N[2]))),-j[3]),T(M(M(T(M(T(g($e,Gt),G[1]),M(T(g(cr,Ze),-Z[1]),T(g(lt,ce),j[1]))),V[2]),T(M(T(g($e,Gt),V[1]),M(T(g(wr,Ae),-Z[1]),T(g(st,Le),j[1]))),-G[2])),M(T(M(T(g(cr,Ze),V[1]),M(T(g(wr,Ae),-G[1]),T(g(Re,Se),j[1]))),Z[2]),T(M(T(g(lt,ce),V[1]),M(T(g(st,Le),-G[1]),T(g(Re,Se),Z[1]))),-j[2]))),N[3])),M(T(M(M(T(M(T(g(er,St),Z[1]),M(T(g(mt,Nt),-j[1]),T(g($e,Gt),N[1]))),V[2]),T(M(T(g(er,St),V[1]),M(T(g(_t,Fe),-j[1]),T(g(wr,Ae),N[1]))),-Z[2])),M(T(M(T(g(mt,Nt),V[1]),M(T(g(_t,Fe),-Z[1]),T(g(st,Le),N[1]))),j[2]),T(M(T(g($e,Gt),V[1]),M(T(g(wr,Ae),-Z[1]),T(g(st,Le),j[1]))),-N[2]))),O[3]),T(M(M(T(M(T(g(er,St),Z[1]),M(T(g(mt,Nt),-j[1]),T(g($e,Gt),N[1]))),O[2]),T(M(T(g(er,St),O[1]),M(T(g(Vt,Ce),-j[1]),T(g(sr,Ee),N[1]))),-Z[2])),M(T(M(T(g(mt,Nt),O[1]),M(T(g(Vt,Ce),-Z[1]),T(g(Zt,_e),N[1]))),j[2]),T(M(T(g($e,Gt),O[1]),M(T(g(sr,Ee),-Z[1]),T(g(Zt,_e),j[1]))),-N[2]))),-V[3])))),M(M(M(T(M(M(T(M(T(g(er,St),V[1]),M(T(g(_t,Fe),-j[1]),T(g(wr,Ae),N[1]))),O[2]),T(M(T(g(er,St),O[1]),M(T(g(Vt,Ce),-j[1]),T(g(sr,Ee),N[1]))),-V[2])),M(T(M(T(g(_t,Fe),O[1]),M(T(g(Vt,Ce),-V[1]),T(g(ie,te),N[1]))),j[2]),T(M(T(g(wr,Ae),O[1]),M(T(g(sr,Ee),-V[1]),T(g(ie,te),j[1]))),-N[2]))),Z[3]),T(M(M(T(M(T(g(mt,Nt),V[1]),M(T(g(_t,Fe),-Z[1]),T(g(st,Le),N[1]))),O[2]),T(M(T(g(mt,Nt),O[1]),M(T(g(Vt,Ce),-Z[1]),T(g(Zt,_e),N[1]))),-V[2])),M(T(M(T(g(_t,Fe),O[1]),M(T(g(Vt,Ce),-V[1]),T(g(ie,te),N[1]))),Z[2]),T(M(T(g(st,Le),O[1]),M(T(g(Zt,_e),-V[1]),T(g(ie,te),Z[1]))),-N[2]))),-j[3])),M(T(M(M(T(M(T(g($e,Gt),V[1]),M(T(g(wr,Ae),-Z[1]),T(g(st,Le),j[1]))),O[2]),T(M(T(g($e,Gt),O[1]),M(T(g(sr,Ee),-Z[1]),T(g(Zt,_e),j[1]))),-V[2])),M(T(M(T(g(wr,Ae),O[1]),M(T(g(sr,Ee),-V[1]),T(g(ie,te),j[1]))),Z[2]),T(M(T(g(st,Le),O[1]),M(T(g(Zt,_e),-V[1]),T(g(ie,te),Z[1]))),-j[2]))),N[3]),T(M(M(T(M(T(g(mt,Nt),G[1]),M(T(g(It,ut),-Z[1]),T(g(lt,ce),N[1]))),V[2]),T(M(T(g(mt,Nt),V[1]),M(T(g(_t,Fe),-Z[1]),T(g(st,Le),N[1]))),-G[2])),M(T(M(T(g(It,ut),V[1]),M(T(g(_t,Fe),-G[1]),T(g(Re,Se),N[1]))),Z[2]),T(M(T(g(lt,ce),V[1]),M(T(g(st,Le),-G[1]),T(g(Re,Se),Z[1]))),-N[2]))),O[3]))),M(M(T(M(M(T(M(T(g(mt,Nt),G[1]),M(T(g(It,ut),-Z[1]),T(g(lt,ce),N[1]))),O[2]),T(M(T(g(mt,Nt),O[1]),M(T(g(Vt,Ce),-Z[1]),T(g(Zt,_e),N[1]))),-G[2])),M(T(M(T(g(It,ut),O[1]),M(T(g(Vt,Ce),-G[1]),T(g(ge,oe),N[1]))),Z[2]),T(M(T(g(lt,ce),O[1]),M(T(g(Zt,_e),-G[1]),T(g(ge,oe),Z[1]))),-N[2]))),-V[3]),T(M(M(T(M(T(g(mt,Nt),V[1]),M(T(g(_t,Fe),-Z[1]),T(g(st,Le),N[1]))),O[2]),T(M(T(g(mt,Nt),O[1]),M(T(g(Vt,Ce),-Z[1]),T(g(Zt,_e),N[1]))),-V[2])),M(T(M(T(g(_t,Fe),O[1]),M(T(g(Vt,Ce),-V[1]),T(g(ie,te),N[1]))),Z[2]),T(M(T(g(st,Le),O[1]),M(T(g(Zt,_e),-V[1]),T(g(ie,te),Z[1]))),-N[2]))),G[3])),M(T(M(M(T(M(T(g(It,ut),V[1]),M(T(g(_t,Fe),-G[1]),T(g(Re,Se),N[1]))),O[2]),T(M(T(g(It,ut),O[1]),M(T(g(Vt,Ce),-G[1]),T(g(ge,oe),N[1]))),-V[2])),M(T(M(T(g(_t,Fe),O[1]),M(T(g(Vt,Ce),-V[1]),T(g(ie,te),N[1]))),G[2]),T(M(T(g(Re,Se),O[1]),M(T(g(ge,oe),-V[1]),T(g(ie,te),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(Re,Se),Z[1]))),O[2]),T(M(T(g(lt,ce),O[1]),M(T(g(Zt,_e),-G[1]),T(g(ge,oe),Z[1]))),-V[2])),M(T(M(T(g(st,Le),O[1]),M(T(g(Zt,_e),-V[1]),T(g(ie,te),Z[1]))),G[2]),T(M(T(g(Re,Se),O[1]),M(T(g(ge,oe),-V[1]),T(g(ie,te),G[1]))),-Z[2]))),N[3]))))),Tr=M(M(M(T(M(M(T(M(T(g(er,St),Z[1]),M(T(g(mt,Nt),-j[1]),T(g($e,Gt),N[1]))),G[2]),T(M(T(g(er,St),G[1]),M(T(g(It,ut),-j[1]),T(g(cr,Ze),N[1]))),-Z[2])),M(T(M(T(g(mt,Nt),G[1]),M(T(g(It,ut),-Z[1]),T(g(lt,ce),N[1]))),j[2]),T(M(T(g($e,Gt),G[1]),M(T(g(cr,Ze),-Z[1]),T(g(lt,ce),j[1]))),-N[2]))),O[3]),M(T(M(M(T(M(T(g(er,St),Z[1]),M(T(g(mt,Nt),-j[1]),T(g($e,Gt),N[1]))),O[2]),T(M(T(g(er,St),O[1]),M(T(g(Vt,Ce),-j[1]),T(g(sr,Ee),N[1]))),-Z[2])),M(T(M(T(g(mt,Nt),O[1]),M(T(g(Vt,Ce),-Z[1]),T(g(Zt,_e),N[1]))),j[2]),T(M(T(g($e,Gt),O[1]),M(T(g(sr,Ee),-Z[1]),T(g(Zt,_e),j[1]))),-N[2]))),-G[3]),T(M(M(T(M(T(g(er,St),G[1]),M(T(g(It,ut),-j[1]),T(g(cr,Ze),N[1]))),O[2]),T(M(T(g(er,St),O[1]),M(T(g(Vt,Ce),-j[1]),T(g(sr,Ee),N[1]))),-G[2])),M(T(M(T(g(It,ut),O[1]),M(T(g(Vt,Ce),-G[1]),T(g(ge,oe),N[1]))),j[2]),T(M(T(g(cr,Ze),O[1]),M(T(g(sr,Ee),-G[1]),T(g(ge,oe),j[1]))),-N[2]))),Z[3]))),M(M(T(M(M(T(M(T(g(mt,Nt),G[1]),M(T(g(It,ut),-Z[1]),T(g(lt,ce),N[1]))),O[2]),T(M(T(g(mt,Nt),O[1]),M(T(g(Vt,Ce),-Z[1]),T(g(Zt,_e),N[1]))),-G[2])),M(T(M(T(g(It,ut),O[1]),M(T(g(Vt,Ce),-G[1]),T(g(ge,oe),N[1]))),Z[2]),T(M(T(g(lt,ce),O[1]),M(T(g(Zt,_e),-G[1]),T(g(ge,oe),Z[1]))),-N[2]))),-j[3]),T(M(M(T(M(T(g($e,Gt),G[1]),M(T(g(cr,Ze),-Z[1]),T(g(lt,ce),j[1]))),O[2]),T(M(T(g($e,Gt),O[1]),M(T(g(sr,Ee),-Z[1]),T(g(Zt,_e),j[1]))),-G[2])),M(T(M(T(g(cr,Ze),O[1]),M(T(g(sr,Ee),-G[1]),T(g(ge,oe),j[1]))),Z[2]),T(M(T(g(lt,ce),O[1]),M(T(g(Zt,_e),-G[1]),T(g(ge,oe),Z[1]))),-j[2]))),N[3])),M(T(M(M(T(M(T(g(er,St),G[1]),M(T(g(It,ut),-j[1]),T(g(cr,Ze),N[1]))),V[2]),T(M(T(g(er,St),V[1]),M(T(g(_t,Fe),-j[1]),T(g(wr,Ae),N[1]))),-G[2])),M(T(M(T(g(It,ut),V[1]),M(T(g(_t,Fe),-G[1]),T(g(Re,Se),N[1]))),j[2]),T(M(T(g(cr,Ze),V[1]),M(T(g(wr,Ae),-G[1]),T(g(Re,Se),j[1]))),-N[2]))),O[3]),T(M(M(T(M(T(g(er,St),G[1]),M(T(g(It,ut),-j[1]),T(g(cr,Ze),N[1]))),O[2]),T(M(T(g(er,St),O[1]),M(T(g(Vt,Ce),-j[1]),T(g(sr,Ee),N[1]))),-G[2])),M(T(M(T(g(It,ut),O[1]),M(T(g(Vt,Ce),-G[1]),T(g(ge,oe),N[1]))),j[2]),T(M(T(g(cr,Ze),O[1]),M(T(g(sr,Ee),-G[1]),T(g(ge,oe),j[1]))),-N[2]))),-V[3])))),M(M(M(T(M(M(T(M(T(g(er,St),V[1]),M(T(g(_t,Fe),-j[1]),T(g(wr,Ae),N[1]))),O[2]),T(M(T(g(er,St),O[1]),M(T(g(Vt,Ce),-j[1]),T(g(sr,Ee),N[1]))),-V[2])),M(T(M(T(g(_t,Fe),O[1]),M(T(g(Vt,Ce),-V[1]),T(g(ie,te),N[1]))),j[2]),T(M(T(g(wr,Ae),O[1]),M(T(g(sr,Ee),-V[1]),T(g(ie,te),j[1]))),-N[2]))),G[3]),T(M(M(T(M(T(g(It,ut),V[1]),M(T(g(_t,Fe),-G[1]),T(g(Re,Se),N[1]))),O[2]),T(M(T(g(It,ut),O[1]),M(T(g(Vt,Ce),-G[1]),T(g(ge,oe),N[1]))),-V[2])),M(T(M(T(g(_t,Fe),O[1]),M(T(g(Vt,Ce),-V[1]),T(g(ie,te),N[1]))),G[2]),T(M(T(g(Re,Se),O[1]),M(T(g(ge,oe),-V[1]),T(g(ie,te),G[1]))),-N[2]))),-j[3])),M(T(M(M(T(M(T(g(cr,Ze),V[1]),M(T(g(wr,Ae),-G[1]),T(g(Re,Se),j[1]))),O[2]),T(M(T(g(cr,Ze),O[1]),M(T(g(sr,Ee),-G[1]),T(g(ge,oe),j[1]))),-V[2])),M(T(M(T(g(wr,Ae),O[1]),M(T(g(sr,Ee),-V[1]),T(g(ie,te),j[1]))),G[2]),T(M(T(g(Re,Se),O[1]),M(T(g(ge,oe),-V[1]),T(g(ie,te),G[1]))),-j[2]))),N[3]),T(M(M(T(M(T(g($e,Gt),G[1]),M(T(g(cr,Ze),-Z[1]),T(g(lt,ce),j[1]))),V[2]),T(M(T(g($e,Gt),V[1]),M(T(g(wr,Ae),-Z[1]),T(g(st,Le),j[1]))),-G[2])),M(T(M(T(g(cr,Ze),V[1]),M(T(g(wr,Ae),-G[1]),T(g(Re,Se),j[1]))),Z[2]),T(M(T(g(lt,ce),V[1]),M(T(g(st,Le),-G[1]),T(g(Re,Se),Z[1]))),-j[2]))),O[3]))),M(M(T(M(M(T(M(T(g($e,Gt),G[1]),M(T(g(cr,Ze),-Z[1]),T(g(lt,ce),j[1]))),O[2]),T(M(T(g($e,Gt),O[1]),M(T(g(sr,Ee),-Z[1]),T(g(Zt,_e),j[1]))),-G[2])),M(T(M(T(g(cr,Ze),O[1]),M(T(g(sr,Ee),-G[1]),T(g(ge,oe),j[1]))),Z[2]),T(M(T(g(lt,ce),O[1]),M(T(g(Zt,_e),-G[1]),T(g(ge,oe),Z[1]))),-j[2]))),-V[3]),T(M(M(T(M(T(g($e,Gt),V[1]),M(T(g(wr,Ae),-Z[1]),T(g(st,Le),j[1]))),O[2]),T(M(T(g($e,Gt),O[1]),M(T(g(sr,Ee),-Z[1]),T(g(Zt,_e),j[1]))),-V[2])),M(T(M(T(g(wr,Ae),O[1]),M(T(g(sr,Ee),-V[1]),T(g(ie,te),j[1]))),Z[2]),T(M(T(g(st,Le),O[1]),M(T(g(Zt,_e),-V[1]),T(g(ie,te),Z[1]))),-j[2]))),G[3])),M(T(M(M(T(M(T(g(cr,Ze),V[1]),M(T(g(wr,Ae),-G[1]),T(g(Re,Se),j[1]))),O[2]),T(M(T(g(cr,Ze),O[1]),M(T(g(sr,Ee),-G[1]),T(g(ge,oe),j[1]))),-V[2])),M(T(M(T(g(wr,Ae),O[1]),M(T(g(sr,Ee),-V[1]),T(g(ie,te),j[1]))),G[2]),T(M(T(g(Re,Se),O[1]),M(T(g(ge,oe),-V[1]),T(g(ie,te),G[1]))),-j[2]))),-Z[3]),T(M(M(T(M(T(g(lt,ce),V[1]),M(T(g(st,Le),-G[1]),T(g(Re,Se),Z[1]))),O[2]),T(M(T(g(lt,ce),O[1]),M(T(g(Zt,_e),-G[1]),T(g(ge,oe),Z[1]))),-V[2])),M(T(M(T(g(st,Le),O[1]),M(T(g(Zt,_e),-V[1]),T(g(ie,te),Z[1]))),G[2]),T(M(T(g(Re,Se),O[1]),M(T(g(ge,oe),-V[1]),T(g(ie,te),G[1]))),-Z[2]))),j[3]))))),Lr=g(lr,Tr);return Lr[Lr.length-1]}return z}var S=[d,v,_];function L(M){var g=S[M.length];return g||(g=S[M.length]=h(M.length)),g.apply(void 0,M)}function x(M,g,P,T,z,O,V,G){function Z(j,N,H,te,oe,_e){switch(arguments.length){case 0:case 1:return 0;case 2:return T(j,N);case 3:return z(j,N,H);case 4:return O(j,N,H,te);case 5:return V(j,N,H,te,oe);case 6:return G(j,N,H,te,oe,_e)}for(var Ee=new Array(arguments.length),Ce=0;Ce<arguments.length;++Ce)Ee[Ce]=arguments[Ce];return M(Ee)}return Z}function C(){for(;S.length<=f;)S.push(h(S.length));i.exports=x.apply(void 0,[L].concat(S));for(var M=0;M<=f;++M)i.exports[M]=S[M]}C()},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)}},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(),_=l(),b=[0,0,0,0],p=[[0,0,0],[0,0,0],[0,0,0]],k=[0,0,0];i.exports=function(C,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,C)||(u(_,v),_[3]=0,_[7]=0,_[11]=0,_[15]=1,Math.abs(c(_)<1e-8)))return!1;var O=v[3],V=v[7],G=v[11],Z=v[12],j=v[13],N=v[14],H=v[15];if(O!==0||V!==0||G!==0){b[0]=O,b[1]=V,b[2]=G,b[3]=H;var te=f(_,_);if(!te)return!1;h(_,_),E(T,b,_)}else T[0]=T[1]=T[2]=0,T[3]=1;if(M[0]=Z,M[1]=j,M[2]=N,S(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(k,p[1],p[2]),d.dot(p[0],k)<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(x,C,M){var g=C[0],P=C[1],T=C[2],z=C[3];return x[0]=M[0]*g+M[4]*P+M[8]*T+M[12]*z,x[1]=M[1]*g+M[5]*P+M[9]*T+M[13]*z,x[2]=M[2]*g+M[6]*P+M[10]*T+M[14]*z,x[3]=M[3]*g+M[7]*P+M[11]*T+M[15]*z,x}function S(x,C){x[0][0]=C[0],x[0][1]=C[1],x[0][2]=C[2],x[1][0]=C[4],x[1][1]=C[5],x[1][2]=C[6],x[2][0]=C[8],x[2][1]=C[9],x[2][2]=C[10]}function L(x,C,M,g,P){x[0]=C[0]*g+M[0]*P,x[1]=C[1]*g+M[1]*P,x[2]=C[2]*g+M[2]*P}},2653:function(i,a,o){"use strict";var s=o(3865);i.exports=l;function l(u,c){for(var f=u.length,h=new Array(f),d=0;d<f;++d)h[d]=s(u[d],c[d]);return h}},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}},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,_=new Array(v),b=0;b<d.length;++b)_[b]=h[d[b]];for(var p=d.length,b=0;b<v;++b)d.indexOf(b)<0&&(_[p++]=h[b]);return _}function c(h,d){for(var v=h.length,_=d.length,b=0;b<v;++b)for(var p=h[b],k=0;k<p.length;++k){var E=p[k];if(E<_)p[k]=d[E];else{E=E-_;for(var S=0;S<_;++S)E>=d[S]&&(E+=1);p[k]=E}}return h}function f(h,d){try{return s(h,!0)}catch(p){var v=l(h);if(v.length<=d)return[];var _=u(h,v),b=s(_,!0);return c(b,v)}}},2762:function(i,a,o){"use strict";var s=o(1888),l=o(5298),u=o(9618),c=["uint8","uint8_clamped","uint16","uint32","int8","int16","int32","float32"];function f(p,k,E,S,L){this.gl=p,this.type=k,this.handle=E,this.length=S,this.usage=L}var h=f.prototype;h.bind=function(){this.gl.bindBuffer(this.type,this.handle)},h.unbind=function(){this.gl.bindBuffer(this.type,null)},h.dispose=function(){this.gl.deleteBuffer(this.handle)};function d(p,k,E,S,L,x){var C=L.length*L.BYTES_PER_ELEMENT;if(x<0)return p.bufferData(k,L,S),C;if(C+x>E)throw new Error("gl-buffer: If resizing buffer, must not specify offset");return p.bufferSubData(k,x,L),E}function v(p,k){for(var E=s.malloc(p.length,k),S=p.length,L=0;L<S;++L)E[L]=p[L];return E}function _(p,k){for(var E=1,S=k.length-1;S>=0;--S){if(k[S]!==E)return!1;E*=p[S]}return!0}h.update=function(p,k){if(typeof k!="number"&&(k=-1),this.bind(),typeof p=="object"&&typeof p.shape!="undefined"){var E=p.dtype;if(c.indexOf(E)<0&&(E="float32"),this.type===this.gl.ELEMENT_ARRAY_BUFFER){var S=gl.getExtension("OES_element_index_uint");S&&E!=="uint16"?E="uint32":E="uint16"}if(E===p.dtype&&_(p.shape,p.stride))p.offset===0&&p.data.length===p.shape[0]?this.length=d(this.gl,this.type,this.length,this.usage,p.data,k):this.length=d(this.gl,this.type,this.length,this.usage,p.data.subarray(p.offset,p.shape[0]),k);else{var L=s.malloc(p.size,E),x=u(L,p.shape);l.assign(x,p),k<0?this.length=d(this.gl,this.type,this.length,this.usage,L,k):this.length=d(this.gl,this.type,this.length,this.usage,L.subarray(0,p.size),k),s.free(L)}}else if(Array.isArray(p)){var C;this.type===this.gl.ELEMENT_ARRAY_BUFFER?C=v(p,"uint16"):C=v(p,"float32"),k<0?this.length=d(this.gl,this.type,this.length,this.usage,C,k):this.length=d(this.gl,this.type,this.length,this.usage,C.subarray(0,p.length),k),s.free(C)}else if(typeof p=="object"&&typeof p.length=="number")this.length=d(this.gl,this.type,this.length,this.usage,p,k);else if(typeof p=="number"||p===void 0){if(k>=0)throw new Error("gl-buffer: Cannot specify offset when resizing buffer");p=p|0,p<=0&&(p=1),this.gl.bufferData(this.type,p|0,this.usage),this.length=p}else throw new Error("gl-buffer: Invalid data type")};function b(p,k,E,S){if(E=E||p.ARRAY_BUFFER,S=S||p.DYNAMIC_DRAW,E!==p.ARRAY_BUFFER&&E!==p.ELEMENT_ARRAY_BUFFER)throw new Error("gl-buffer: Invalid type for webgl buffer, must be either gl.ARRAY_BUFFER or gl.ELEMENT_ARRAY_BUFFER");if(S!==p.DYNAMIC_DRAW&&S!==p.STATIC_DRAW&&S!==p.STREAM_DRAW)throw new Error("gl-buffer: Invalid usage for buffer, must be either gl.DYNAMIC_DRAW, gl.STATIC_DRAW or gl.STREAM_DRAW");var L=p.createBuffer(),x=new f(p,E,L,0,S);return x.update(k),x}i.exports=b},2825:function(i){i.exports=a;function a(o,s,l){var u=new Float32Array(3);return u[0]=o,u[1]=s,u[2]=l,u}},2931:function(i,a,o){i.exports={EPSILON:o(2613),create:o(1091),clone:o(3126),angle:o(8192),fromValues:o(2825),copy:o(3990),set:o(1463),equals:o(9922),exactEquals:o(9265),add:o(5632),subtract:o(6843),sub:o(2229),multiply:o(5847),mul:o(4505),divide:o(6690),div:o(4008),min:o(8107),max:o(7417),floor:o(2681),ceil:o(9226),round:o(2447),scale:o(6621),scaleAndAdd:o(8489),distance:o(7056),dist:o(5455),squaredDistance:o(2953),sqrDist:o(6141),length:o(1387),len:o(868),squaredLength:o(3066),sqrLen:o(5486),negate:o(5093),inverse:o(811),normalize:o(3536),dot:o(244),cross:o(5911),lerp:o(6658),random:o(7636),transformMat4:o(5673),transformMat3:o(492),transformQuat:o(264),rotateX:o(6894),rotateY:o(109),rotateZ:o(8692),forEach:o(5137)}},2933:function(i){i.exports=a;function a(o,s){return o[0]=s[0],o[1]=s[1],o[2]=s[2],o[3]=s[3],o}},2953:function(i){i.exports=a;function a(o,s){var l=s[0]-o[0],u=s[1]-o[1],c=s[2]-o[2];return l*l+u*u+c*c}},2962:function(i,a,o){"use strict";var s=o(5250),l=o(8210),u=o(3012),c=o(7004),f=6;function h(S,L,x,C){return function(g){return C(S(x(g[0][0],g[1][1]),x(-g[0][1],g[1][0])))}}function d(S,L,x,C){return function(g){return C(S(L(S(x(g[1][1],g[2][2]),x(-g[1][2],g[2][1])),g[0][0]),S(L(S(x(g[1][0],g[2][2]),x(-g[1][2],g[2][0])),-g[0][1]),L(S(x(g[1][0],g[2][1]),x(-g[1][1],g[2][0])),g[0][2]))))}}function v(S,L,x,C){return function(g){return C(S(S(L(S(L(S(x(g[2][2],g[3][3]),x(-g[2][3],g[3][2])),g[1][1]),S(L(S(x(g[2][1],g[3][3]),x(-g[2][3],g[3][1])),-g[1][2]),L(S(x(g[2][1],g[3][2]),x(-g[2][2],g[3][1])),g[1][3]))),g[0][0]),L(S(L(S(x(g[2][2],g[3][3]),x(-g[2][3],g[3][2])),g[1][0]),S(L(S(x(g[2][0],g[3][3]),x(-g[2][3],g[3][0])),-g[1][2]),L(S(x(g[2][0],g[3][2]),x(-g[2][2],g[3][0])),g[1][3]))),-g[0][1])),S(L(S(L(S(x(g[2][1],g[3][3]),x(-g[2][3],g[3][1])),g[1][0]),S(L(S(x(g[2][0],g[3][3]),x(-g[2][3],g[3][0])),-g[1][1]),L(S(x(g[2][0],g[3][1]),x(-g[2][1],g[3][0])),g[1][3]))),g[0][2]),L(S(L(S(x(g[2][1],g[3][2]),x(-g[2][2],g[3][1])),g[1][0]),S(L(S(x(g[2][0],g[3][2]),x(-g[2][2],g[3][0])),-g[1][1]),L(S(x(g[2][0],g[3][1]),x(-g[2][1],g[3][0])),g[1][2]))),-g[0][3]))))}}function _(S,L,x,C){return function(g){return C(S(S(L(S(S(L(S(L(S(x(g[3][3],g[4][4]),x(-g[3][4],g[4][3])),g[2][2]),S(L(S(x(g[3][2],g[4][4]),x(-g[3][4],g[4][2])),-g[2][3]),L(S(x(g[3][2],g[4][3]),x(-g[3][3],g[4][2])),g[2][4]))),g[1][1]),L(S(L(S(x(g[3][3],g[4][4]),x(-g[3][4],g[4][3])),g[2][1]),S(L(S(x(g[3][1],g[4][4]),x(-g[3][4],g[4][1])),-g[2][3]),L(S(x(g[3][1],g[4][3]),x(-g[3][3],g[4][1])),g[2][4]))),-g[1][2])),S(L(S(L(S(x(g[3][2],g[4][4]),x(-g[3][4],g[4][2])),g[2][1]),S(L(S(x(g[3][1],g[4][4]),x(-g[3][4],g[4][1])),-g[2][2]),L(S(x(g[3][1],g[4][2]),x(-g[3][2],g[4][1])),g[2][4]))),g[1][3]),L(S(L(S(x(g[3][2],g[4][3]),x(-g[3][3],g[4][2])),g[2][1]),S(L(S(x(g[3][1],g[4][3]),x(-g[3][3],g[4][1])),-g[2][2]),L(S(x(g[3][1],g[4][2]),x(-g[3][2],g[4][1])),g[2][3]))),-g[1][4]))),g[0][0]),L(S(S(L(S(L(S(x(g[3][3],g[4][4]),x(-g[3][4],g[4][3])),g[2][2]),S(L(S(x(g[3][2],g[4][4]),x(-g[3][4],g[4][2])),-g[2][3]),L(S(x(g[3][2],g[4][3]),x(-g[3][3],g[4][2])),g[2][4]))),g[1][0]),L(S(L(S(x(g[3][3],g[4][4]),x(-g[3][4],g[4][3])),g[2][0]),S(L(S(x(g[3][0],g[4][4]),x(-g[3][4],g[4][0])),-g[2][3]),L(S(x(g[3][0],g[4][3]),x(-g[3][3],g[4][0])),g[2][4]))),-g[1][2])),S(L(S(L(S(x(g[3][2],g[4][4]),x(-g[3][4],g[4][2])),g[2][0]),S(L(S(x(g[3][0],g[4][4]),x(-g[3][4],g[4][0])),-g[2][2]),L(S(x(g[3][0],g[4][2]),x(-g[3][2],g[4][0])),g[2][4]))),g[1][3]),L(S(L(S(x(g[3][2],g[4][3]),x(-g[3][3],g[4][2])),g[2][0]),S(L(S(x(g[3][0],g[4][3]),x(-g[3][3],g[4][0])),-g[2][2]),L(S(x(g[3][0],g[4][2]),x(-g[3][2],g[4][0])),g[2][3]))),-g[1][4]))),-g[0][1])),S(L(S(S(L(S(L(S(x(g[3][3],g[4][4]),x(-g[3][4],g[4][3])),g[2][1]),S(L(S(x(g[3][1],g[4][4]),x(-g[3][4],g[4][1])),-g[2][3]),L(S(x(g[3][1],g[4][3]),x(-g[3][3],g[4][1])),g[2][4]))),g[1][0]),L(S(L(S(x(g[3][3],g[4][4]),x(-g[3][4],g[4][3])),g[2][0]),S(L(S(x(g[3][0],g[4][4]),x(-g[3][4],g[4][0])),-g[2][3]),L(S(x(g[3][0],g[4][3]),x(-g[3][3],g[4][0])),g[2][4]))),-g[1][1])),S(L(S(L(S(x(g[3][1],g[4][4]),x(-g[3][4],g[4][1])),g[2][0]),S(L(S(x(g[3][0],g[4][4]),x(-g[3][4],g[4][0])),-g[2][1]),L(S(x(g[3][0],g[4][1]),x(-g[3][1],g[4][0])),g[2][4]))),g[1][3]),L(S(L(S(x(g[3][1],g[4][3]),x(-g[3][3],g[4][1])),g[2][0]),S(L(S(x(g[3][0],g[4][3]),x(-g[3][3],g[4][0])),-g[2][1]),L(S(x(g[3][0],g[4][1]),x(-g[3][1],g[4][0])),g[2][3]))),-g[1][4]))),g[0][2]),S(L(S(S(L(S(L(S(x(g[3][2],g[4][4]),x(-g[3][4],g[4][2])),g[2][1]),S(L(S(x(g[3][1],g[4][4]),x(-g[3][4],g[4][1])),-g[2][2]),L(S(x(g[3][1],g[4][2]),x(-g[3][2],g[4][1])),g[2][4]))),g[1][0]),L(S(L(S(x(g[3][2],g[4][4]),x(-g[3][4],g[4][2])),g[2][0]),S(L(S(x(g[3][0],g[4][4]),x(-g[3][4],g[4][0])),-g[2][2]),L(S(x(g[3][0],g[4][2]),x(-g[3][2],g[4][0])),g[2][4]))),-g[1][1])),S(L(S(L(S(x(g[3][1],g[4][4]),x(-g[3][4],g[4][1])),g[2][0]),S(L(S(x(g[3][0],g[4][4]),x(-g[3][4],g[4][0])),-g[2][1]),L(S(x(g[3][0],g[4][1]),x(-g[3][1],g[4][0])),g[2][4]))),g[1][2]),L(S(L(S(x(g[3][1],g[4][2]),x(-g[3][2],g[4][1])),g[2][0]),S(L(S(x(g[3][0],g[4][2]),x(-g[3][2],g[4][0])),-g[2][1]),L(S(x(g[3][0],g[4][1]),x(-g[3][1],g[4][0])),g[2][2]))),-g[1][4]))),-g[0][3]),L(S(S(L(S(L(S(x(g[3][2],g[4][3]),x(-g[3][3],g[4][2])),g[2][1]),S(L(S(x(g[3][1],g[4][3]),x(-g[3][3],g[4][1])),-g[2][2]),L(S(x(g[3][1],g[4][2]),x(-g[3][2],g[4][1])),g[2][3]))),g[1][0]),L(S(L(S(x(g[3][2],g[4][3]),x(-g[3][3],g[4][2])),g[2][0]),S(L(S(x(g[3][0],g[4][3]),x(-g[3][3],g[4][0])),-g[2][2]),L(S(x(g[3][0],g[4][2]),x(-g[3][2],g[4][0])),g[2][3]))),-g[1][1])),S(L(S(L(S(x(g[3][1],g[4][3]),x(-g[3][3],g[4][1])),g[2][0]),S(L(S(x(g[3][0],g[4][3]),x(-g[3][3],g[4][0])),-g[2][1]),L(S(x(g[3][0],g[4][1]),x(-g[3][1],g[4][0])),g[2][3]))),g[1][2]),L(S(L(S(x(g[3][1],g[4][2]),x(-g[3][2],g[4][1])),g[2][0]),S(L(S(x(g[3][0],g[4][2]),x(-g[3][2],g[4][0])),-g[2][1]),L(S(x(g[3][0],g[4][1]),x(-g[3][1],g[4][0])),g[2][2]))),-g[1][3]))),g[0][4])))))}}function b(S){var L=S===2?h:S===3?d:S===4?v:S===5?_:void 0;return L(l,u,s,c)}var p=[function(){return[0]},function(L){return[L[0][0]]}];function k(S,L,x,C,M,g,P,T){return function(O){switch(O.length){case 0:return S(O);case 1:return L(O);case 2:return x(O);case 3:return C(O);case 4:return M(O);case 5:return g(O)}var V=P[O.length];return V||(V=P[O.length]=T(O.length)),V(O)}}function E(){for(;p.length<f;)p.push(b(p.length));i.exports=k.apply(void 0,p.concat([p,b]));for(var S=0;S<p.length;++S)i.exports[S]=p[S]}E()},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 _=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,_),k=s("%s%s",p,h),E=h.split(`
`),S={},L=0;L<E.length;L++){var x=E[L];if(!(x===""||x==="\0")){var C=parseInt(x.split(":")[2]);if(isNaN(C))throw new Error(s("Could not parse error: %s",x));S[C]=x}}for(var M=c(d).split(`
`),L=0;L<M.length;L++)if(!(!S[L+3]&&!S[L+2]&&!S[L+1])){var g=M[L];if(p+=g+`
`,S[L+1]){var P=S[L+1];P=P.substr(P.split(":",3).join(":").length+1).trim(),p+=s(`^^^ %s
`,P)}}return{long:p.trim(),short:k.trim()}}},3012:function(i,a,o){"use strict";var s=o(5250),l=o(9362);i.exports=u;function u(c,f){var h=c.length;if(h===1){var d=s(c[0],f);return d[0]?d:[d[1]]}var v=new Array(2*h),_=[.1,.1],b=[.1,.1],p=0;s(c[0],f,_),_[0]&&(v[p++]=_[0]);for(var k=1;k<h;++k){s(c[k],f,b);var E=_[1];l(E,b[0],_),_[0]&&(v[p++]=_[0]);var S=b[1],L=_[1],x=S+L,C=x-S,M=L-C;_[1]=x,M&&(v[p++]=M)}return _[1]&&(v[p++]=_[1]),p===0&&(v[p++]=0),v.length=p,v}},3025:function(i,a,o){i.exports=o.g.performance&&o.g.performance.now?function(){return performance.now()}:Date.now||function(){return+new Date}},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}},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 _=u[v];d[0][_[0]].push(_),d[1][_[1]].push(_)}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 k(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 j=d[Z][P],N=0;N<j.length;++N){var H=j[N],te=H[Z^1],oe=s(c[g],c[P],c[O],c[te]);oe>0&&(z=H,O=te,V=Z)}return T||z&&p(z,V),O}function E(g,P){var T=d[P][g][0],z=[g];p(T,P);for(var O=T[P^1],V=P;;){for(;O!==g;)z.push(O),O=k(z[z.length-2],O,!1);if(d[0][g].length+d[1][g].length===0)break;var G=z[z.length-1],Z=g,j=z[1],N=k(G,Z,!0);if(s(c[G],c[Z],c[j],c[N])<0)break;z.push(g),O=k(G,Z)}return z}function S(g,P){return P[1]===P[P.length-1]}for(var v=0;v<f;++v)for(var L=0;L<2;++L){for(var x=[];d[L][v].length>0;){var C=d[0][v].length,M=E(v,L);S(x,M)?x.push.apply(x,M):(x.length>0&&b.push(x),x=M)}x.length>0&&b.push(x)}return b}},3090:function(i,a,o){"use strict";i.exports=l;var s=o(3250)[3];function l(u){var c=u.length;if(c<3){for(var k=new Array(c),f=0;f<c;++f)k[f]=f;return c===2&&u[0][0]===u[1][0]&&u[0][1]===u[1][1]?[0]:k}for(var h=new Array(c),f=0;f<c;++f)h[f]=f;h.sort(function(x,C){var M=u[x][0]-u[C][0];return M||u[x][1]-u[C][1]});for(var d=[h[0],h[1]],v=[h[0],h[1]],f=2;f<c;++f){for(var _=h[f],b=u[_],p=d.length;p>1&&s(u[d[p-2]],u[d[p-1]],b)<=0;)p-=1,d.pop();for(d.push(_),p=v.length;p>1&&s(u[v[p-2]],u[v[p-1]],b)>=0;)p-=1,v.pop();v.push(_)}for(var k=new Array(v.length+d.length-2),E=0,f=0,S=d.length;f<S;++f)k[E++]=d[f];for(var L=v.length-2;L>0;--L)k[E++]=v[L];return k}},3105:function(i,a){"use strict";"use restrict";var o=32;a.INT_BITS=o,a.INT_MAX=2147483647,a.INT_MIN=-1<<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}},3126:function(i){i.exports=a;function a(o){var s=new Float32Array(3);return s[0]=o[0],s[1]=o[1],s[2]=o[2],s}},3134:function(i,a,o){"use strict";i.exports=l;var s=o(1682);function l(u,c){var f=u.length;if(typeof c!="number"){c=0;for(var h=0;h<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 _=0;_<c;++_)s(v[_],function(b,p){return b-p});return v}},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,_,b){var p=u(v[0],-_[0]),k=u(v[1],-_[1]),E=u(b[0],-_[0]),S=u(b[1],-_[1]),L=f(c(p,E),c(k,S));return L[L.length-1]>=0}function d(v,_,b,p){var k=s(_,b,p);if(k===0){var E=l(s(v,_,b)),S=l(s(v,_,p));if(E===S){if(E===0){var L=h(v,_,b),x=h(v,_,p);return L===x?0:L?1:-1}return 0}else{if(S===0)return E>0||h(v,_,p)?-1:1;if(E===0)return S>0||h(v,_,b)?1:-1}return l(S-E)}var C=s(v,_,b);if(C>0)return k>0&&s(v,_,p)>0?1:-1;if(C<0)return k>0||s(v,_,p)>0?1:-1;var M=s(v,_,p);return M>0||h(v,_,b)?1:-1}},3202:function(i){i.exports=function(o,s){s||(s=[0,""]),o=String(o);var l=parseFloat(o,10);return s[0]=l,s[1]=o.match(/[\d.\-\+]*\s*(.*)/)[1]||"",s}},3233:function(i){"use strict";var a="",o;i.exports=s;function s(l,u){if(typeof l!="string")throw new TypeError("expected a string");if(u===1)return l;if(u===2)return l+l;var c=l.length*u;if(o!==l||typeof o=="undefined")o=l,a="";else if(a.length>=c)return a.substr(0,c);for(;c>a.length&&u>1;)u&1&&(a+=l),u>>=1,l+=l;return a+=l,a=a.substr(0,c),a}},3236:function(i){i.exports=function(a){typeof a=="string"&&(a=[a]);for(var o=[].slice.call(arguments,1),s=[],l=0;l<a.length-1;l++)s.push(a[l],o[l]||"");return s.push(a[l]),s.join("")}},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 _(g,P,T,z){return function(V,G,Z){var j=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])),H=z(j,N);return H[H.length-1]}}function b(g,P,T,z){return function(V,G,Z,j){var N=g(g(T(g(P(Z[1],j[0]),P(-j[1],Z[0])),G[2]),g(T(g(P(G[1],j[0]),P(-j[1],G[0])),-Z[2]),T(g(P(G[1],Z[0]),P(-Z[1],G[0])),j[2]))),g(T(g(P(G[1],j[0]),P(-j[1],G[0])),V[2]),g(T(g(P(V[1],j[0]),P(-j[1],V[0])),-G[2]),T(g(P(V[1],G[0]),P(-G[1],V[0])),j[2])))),H=g(g(T(g(P(Z[1],j[0]),P(-j[1],Z[0])),V[2]),g(T(g(P(V[1],j[0]),P(-j[1],V[0])),-Z[2]),T(g(P(V[1],Z[0]),P(-Z[1],V[0])),j[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])))),te=z(N,H);return te[te.length-1]}}function p(g,P,T,z){return function(V,G,Z,j,N){var H=g(g(g(T(g(T(g(P(j[1],N[0]),P(-N[1],j[0])),Z[2]),g(T(g(P(Z[1],N[0]),P(-N[1],Z[0])),-j[2]),T(g(P(Z[1],j[0]),P(-j[1],Z[0])),N[2]))),G[3]),g(T(g(T(g(P(j[1],N[0]),P(-N[1],j[0])),G[2]),g(T(g(P(G[1],N[0]),P(-N[1],G[0])),-j[2]),T(g(P(G[1],j[0]),P(-j[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]))),j[3]))),g(T(g(T(g(P(Z[1],j[0]),P(-j[1],Z[0])),G[2]),g(T(g(P(G[1],j[0]),P(-j[1],G[0])),-Z[2]),T(g(P(G[1],Z[0]),P(-Z[1],G[0])),j[2]))),-N[3]),g(T(g(T(g(P(j[1],N[0]),P(-N[1],j[0])),G[2]),g(T(g(P(G[1],N[0]),P(-N[1],G[0])),-j[2]),T(g(P(G[1],j[0]),P(-j[1],G[0])),N[2]))),V[3]),T(g(T(g(P(j[1],N[0]),P(-N[1],j[0])),V[2]),g(T(g(P(V[1],N[0]),P(-N[1],V[0])),-j[2]),T(g(P(V[1],j[0]),P(-j[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]))),j[3]),g(T(g(T(g(P(G[1],j[0]),P(-j[1],G[0])),V[2]),g(T(g(P(V[1],j[0]),P(-j[1],V[0])),-G[2]),T(g(P(V[1],G[0]),P(-G[1],V[0])),j[2]))),-N[3]),T(g(T(g(P(Z[1],j[0]),P(-j[1],Z[0])),G[2]),g(T(g(P(G[1],j[0]),P(-j[1],G[0])),-Z[2]),T(g(P(G[1],Z[0]),P(-Z[1],G[0])),j[2]))),V[3]))),g(T(g(T(g(P(Z[1],j[0]),P(-j[1],Z[0])),V[2]),g(T(g(P(V[1],j[0]),P(-j[1],V[0])),-Z[2]),T(g(P(V[1],Z[0]),P(-Z[1],V[0])),j[2]))),-G[3]),g(T(g(T(g(P(G[1],j[0]),P(-j[1],G[0])),V[2]),g(T(g(P(V[1],j[0]),P(-j[1],V[0])),-G[2]),T(g(P(V[1],G[0]),P(-G[1],V[0])),j[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]))),-j[3]))))),te=g(g(g(T(g(T(g(P(j[1],N[0]),P(-N[1],j[0])),Z[2]),g(T(g(P(Z[1],N[0]),P(-N[1],Z[0])),-j[2]),T(g(P(Z[1],j[0]),P(-j[1],Z[0])),N[2]))),V[3]),T(g(T(g(P(j[1],N[0]),P(-N[1],j[0])),V[2]),g(T(g(P(V[1],N[0]),P(-N[1],V[0])),-j[2]),T(g(P(V[1],j[0]),P(-j[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]))),j[3]),T(g(T(g(P(Z[1],j[0]),P(-j[1],Z[0])),V[2]),g(T(g(P(V[1],j[0]),P(-j[1],V[0])),-Z[2]),T(g(P(V[1],Z[0]),P(-Z[1],V[0])),j[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(H,te);return oe[oe.length-1]}}function k(g){var P=g===3?_:g===4?b:p;return P(l,s,u,c)}var E=k(3),S=k(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 j=d*Z;return G>=j||G<=-j?G:E(P,T,z)},function(P,T,z,O){var V=P[0]-O[0],G=T[0]-O[0],Z=z[0]-O[0],j=P[1]-O[1],N=T[1]-O[1],H=z[1]-O[1],te=P[2]-O[2],oe=T[2]-O[2],_e=z[2]-O[2],Ee=G*H,Ce=Z*N,me=Z*j,ie=V*H,Se=V*N,Le=G*j,Ae=te*(Ee-Ce)+oe*(me-ie)+_e*(Se-Le),Fe=(Math.abs(Ee)+Math.abs(Ce))*Math.abs(te)+(Math.abs(me)+Math.abs(ie))*Math.abs(oe)+(Math.abs(Se)+Math.abs(Le))*Math.abs(_e),Pe=v*Fe;return Ae>Pe||-Ae>Pe?Ae:S(P,T,z,O)}];function x(g){var P=L[g.length];return P||(P=L[g.length]=k(g.length)),P.apply(void 0,g)}function C(g,P,T,z,O,V,G){return function(j,N,H,te,oe){switch(arguments.length){case 0:case 1:return 0;case 2:return z(j,N);case 3:return O(j,N,H);case 4:return V(j,N,H,te);case 5:return G(j,N,H,te,oe)}for(var _e=new Array(arguments.length),Ee=0;Ee<arguments.length;++Ee)_e[Ee]=arguments[Ee];return g(_e)}}function M(){for(;L.length<=f;)L.push(k(L.length));i.exports=C.apply(void 0,[x].concat(L));for(var g=0;g<=f;++g)i.exports[g]=L[g]}M()},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),_=0;_<h;++_)v[_]=d;return v}function f(h,d,v,_){function b(C){return function(M,g,P){return M.getUniform(g.program,P[C])}}function p(C){return function(g){for(var P=k("",C),T=0;T<P.length;++T){var z=P[T],O=z[0],V=z[1];if(_[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 j=Z.indexOf("["),N=Z.slice(0,j),H=Z.slice(j+1,Z.length-1);G=N?g[N][H]:g[H]}else G=g[Z]}var te=v[V].type,oe;switch(te){case"bool":case"int":case"sampler2D":case"samplerCube":h.uniform1i(_[V],G);break;case"float":h.uniform1f(_[V],G);break;default:var _e=te.indexOf("vec");if(0<=_e&&_e<=1&&te.length===4+_e){if(oe=te.charCodeAt(te.length-1)-48,oe<2||oe>4)throw new l("","Invalid data type");switch(te.charAt(0)){case"b":case"i":h["uniform"+oe+"iv"](_[V],G);break;case"v":h["uniform"+oe+"fv"](_[V],G);break;default:throw new l("","Unrecognized data type for vector "+name+": "+te)}}else if(te.indexOf("mat")===0&&te.length===4){if(oe=te.charCodeAt(te.length-1)-48,oe<2||oe>4)throw new l("","Invalid uniform dimension type for matrix "+name+": "+te);h["uniformMatrix"+oe+"fv"](_[V],!1,G);break}else throw new l("","Unknown uniform data type for "+name+": "+te)}}}}}function k(C,M){if(typeof M!="object")return[[C,M]];var g=[];for(var P in M){var T=M[P],z=C;parseInt(P)+""===P?z+="["+P+"]":z+="."+P,typeof T=="object"?g.push.apply(g,k(z,T)):g.push([z,T])}return g}function E(C){switch(C){case"bool":return!1;case"int":case"sampler2D":case"samplerCube":return 0;case"float":return 0;default:var M=C.indexOf("vec");if(0<=M&&M<=1&&C.length===4+M){var g=C.charCodeAt(C.length-1)-48;if(g<2||g>4)throw new l("","Invalid data type");return C.charAt(0)==="b"?c(g,!1):c(g,0)}else if(C.indexOf("mat")===0&&C.length===4){var g=C.charCodeAt(C.length-1)-48;if(g<2||g>4)throw new l("","Invalid uniform dimension type for matrix "+name+": "+C);return c(g*g,0)}else throw new l("","Unknown uniform data type for "+name+": "+C)}}function S(C,M,g){if(typeof g=="object"){var P=L(g);Object.defineProperty(C,M,{get:u(P),set:p(g),enumerable:!0,configurable:!1})}else _[g]?Object.defineProperty(C,M,{get:b(g),set:p(g),enumerable:!0,configurable:!1}):C[M]=E(v[g].type)}function L(C){var M;if(Array.isArray(C)){M=new Array(C.length);for(var g=0;g<C.length;++g)S(M,g,C[g])}else{M={};for(var P in C)S(M,P,C[P])}return M}var x=s(v,!0);return{get:u(L(x)),set:p(x),enumerable:!0,configurable:!0}}},3349:function(i){"use strict";function a(){return function(f,h,d,v,_,b){var p=f[0],k=d[0],E=[0],S=k;v|=0;var L=0,x=k;for(L=0;L<p;++L){{var C=h[v]-b,M=h[v+S]-b;C>=0!=M>=0&&_.push(E[0]+.5+.5*(C+M)/(C-M))}v+=x,++E[0]}}}function o(){return a()}var s=o;function l(f){var h={};return function(v,_,b){var p=v.dtype,k=v.order,E=[p,k.join()].join(),S=h[E];return S||(h[E]=S=f([p,k])),S(v.shape.slice(0),v.data,v.stride,v.offset|0,_,b)}}function u(f){return l(s.bind(void 0,f))}function c(f){return u({funcName:f.funcName})}i.exports=c({funcName:"zeroCrossings"})},3352:function(i,a,o){"use strict";var s=o(2478),l=0,u=1,c=2;i.exports=P;function f(T,z,O,V,G){this.mid=T,this.left=z,this.right=O,this.leftPoints=V,this.rightPoints=G,this.count=(z?z.count:0)+(O?O.count:0)+V.length}var h=f.prototype;function d(T,z){T.mid=z.mid,T.left=z.left,T.right=z.right,T.leftPoints=z.leftPoints,T.rightPoints=z.rightPoints,T.count=z.count}function v(T,z){var O=C(z);T.mid=O.mid,T.left=O.left,T.right=O.right,T.leftPoints=O.leftPoints,T.rightPoints=O.rightPoints,T.count=O.count}function _(T,z){var O=T.intervals([]);O.push(z),v(T,O)}function b(T,z){var O=T.intervals([]),V=O.indexOf(z);return V<0?l:(O.splice(V,1),v(T,O),u)}h.intervals=function(T){return T.push.apply(T,this.leftPoints),this.left&&this.left.intervals(T),this.right&&this.right.intervals(T),T},h.insert=function(T){var z=this.count-this.leftPoints.length;if(this.count+=1,T[1]<this.mid)this.left?4*(this.left.count+1)>3*(z+1)?_(this,T):this.left.insert(T):this.left=C([T]);else if(T[0]>this.mid)this.right?4*(this.right.count+1)>3*(z+1)?_(this,T):this.right.insert(T):this.right=C([T]);else{var O=s.ge(this.leftPoints,T,L),V=s.ge(this.rightPoints,T,x);this.leftPoints.splice(O,0,T),this.rightPoints.splice(V,0,T)}},h.remove=function(T){var z=this.count-this.leftPoints;if(T[1]<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,j=this.left;j.right;)Z=j,j=j.right;if(Z===this)j.right=this.right;else{var N=this.left,V=this.right;Z.count-=j.count,Z.right=j.left,j.left=N,j.right=V}d(this,j),this.count=(this.left?this.left.count:0)+(this.right?this.right.count:0)+this.leftPoints.length}else this.left?d(this,this.left):d(this,this.right);return u}for(var N=s.ge(this.leftPoints,T,L);N<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,x);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 k(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 k(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?k(this.rightPoints,T,O):E(this.leftPoints,O)};function S(T,z){return T-z}function L(T,z){var O=T[0]-z[0];return O||T[1]-z[1]}function x(T,z){var O=T[1]-z[1];return O||T[0]-z[0]}function C(T){if(T.length===0)return null;for(var z=[],O=0;O<T.length;++O)z.push(T[O][0],T[O][1]);z.sort(S);for(var V=z[z.length>>1],G=[],Z=[],j=[],O=0;O<T.length;++O){var N=T[O];N[1]<V?G.push(N):V<N[0]?Z.push(N):j.push(N)}var H=j,te=j.slice();return H.sort(L),te.sort(x),new f(V,C(G),C(Z),H,te)}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(C(T))}},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,_){return u.apply(null,[v].concat(_||[]))}function f(v,_){var b=1,p=v.length,k,E="",S,L,x,C,M,g,P,T;for(S=0;S<p;S++)if(typeof v[S]=="string")E+=v[S];else if(typeof v[S]=="object"){if(x=v[S],x.keys)for(k=_[b],L=0;L<x.keys.length;L++){if(k==null)throw new Error(u('[sprintf] Cannot access property "%s" of undefined value "%s"',x.keys[L],x.keys[L-1]));k=k[x.keys[L]]}else x.param_no?k=_[x.param_no]:k=_[b++];if(l.not_type.test(x.type)&&l.not_primitive.test(x.type)&&k instanceof Function&&(k=k()),l.numeric_arg.test(x.type)&&typeof k!="number"&&isNaN(k))throw new TypeError(u("[sprintf] expecting number but found %T",k));switch(l.number.test(x.type)&&(P=k>=0),x.type){case"b":k=parseInt(k,10).toString(2);break;case"c":k=String.fromCharCode(parseInt(k,10));break;case"d":case"i":k=parseInt(k,10);break;case"j":k=JSON.stringify(k,null,x.width?parseInt(x.width):0);break;case"e":k=x.precision?parseFloat(k).toExponential(x.precision):parseFloat(k).toExponential();break;case"f":k=x.precision?parseFloat(k).toFixed(x.precision):parseFloat(k);break;case"g":k=x.precision?String(Number(k.toPrecision(x.precision))):parseFloat(k);break;case"o":k=(parseInt(k,10)>>>0).toString(8);break;case"s":k=String(k),k=x.precision?k.substring(0,x.precision):k;break;case"t":k=String(!!k),k=x.precision?k.substring(0,x.precision):k;break;case"T":k=Object.prototype.toString.call(k).slice(8,-1).toLowerCase(),k=x.precision?k.substring(0,x.precision):k;break;case"u":k=parseInt(k,10)>>>0;break;case"v":k=k.valueOf(),k=x.precision?k.substring(0,x.precision):k;break;case"x":k=(parseInt(k,10)>>>0).toString(16);break;case"X":k=(parseInt(k,10)>>>0).toString(16).toUpperCase();break}l.json.test(x.type)?E+=k:(l.number.test(x.type)&&(!P||x.sign)?(T=P?"+":"-",k=k.toString().replace(l.sign,"")):T="",M=x.pad_char?x.pad_char==="0"?"0":x.pad_char.charAt(1):" ",g=x.width-(T+k).length,C=x.width&&g>0?M.repeat(g):"",E+=x.align?T+k+C:M==="0"?T+C+k:C+T+k)}return E}var h=Object.create(null);function d(v){if(h[v])return h[v];for(var _=v,b,p=[],k=0;_;){if((b=l.text.exec(_))!==null)p.push(b[0]);else if((b=l.modulo.exec(_))!==null)p.push("%");else if((b=l.placeholder.exec(_))!==null){if(b[2]){k|=1;var E=[],S=b[2],L=[];if((L=l.key.exec(S))!==null)for(E.push(L[1]);(S=S.substring(L[0].length))!=="";)if((L=l.key_access.exec(S))!==null)E.push(L[1]);else if((L=l.index_access.exec(S))!==null)E.push(L[1]);else throw new SyntaxError("[sprintf] failed to parse named argument key");else throw new SyntaxError("[sprintf] failed to parse named argument key");b[2]=E}else k|=2;if(k===3)throw new Error("[sprintf] mixing positional and named placeholders is not (yet) supported");p.push({placeholder:b[0],param_no:b[1],keys:b[2],sign:b[3],pad_char:b[4],align:b[5],width:b[6],precision:b[7],type:b[8]})}else throw new SyntaxError("[sprintf] unexpected placeholder");_=_.substring(b[0].length)}return h[v]=p}a.sprintf=u,a.vsprintf=c,typeof window!="undefined"&&(window.sprintf=u,window.vsprintf=c,s=function(){return{sprintf:u,vsprintf:c}}.call(a,o,a,i),s!==void 0&&(i.exports=s))})()},3390:function(i){i.exports=a;function a(o,s,l,u){var c=new Float32Array(4);return c[0]=o,c[1]=s,c[2]=l,c[3]=u,c}},3436:function(i,a,o){"use strict";var s=o(3236),l=o(9405),u=s([`precision highp float;
#define GLSLIFY 1
attribute vec3 position, offset;
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"}])}},3502:function(i,a,o){i.exports=u;var s=o(5995),l=o(9127);function u(c,f){return l(s(c,f))}},3508:function(i,a,o){var s=o(6852);s=s.slice().filter(function(l){return!/^(gl\_|texture)/.test(l)}),i.exports=s.concat(["gl_VertexID","gl_InstanceID","gl_Position","gl_PointSize","gl_FragCoord","gl_FrontFacing","gl_FragDepth","gl_PointCoord","gl_MaxVertexAttribs","gl_MaxVertexUniformVectors","gl_MaxVertexOutputVectors","gl_MaxFragmentInputVectors","gl_MaxVertexTextureImageUnits","gl_MaxCombinedTextureImageUnits","gl_MaxTextureImageUnits","gl_MaxFragmentUniformVectors","gl_MaxDrawBuffers","gl_MinProgramTexelOffset","gl_MaxProgramTexelOffset","gl_DepthRangeParameters","gl_DepthRange","trunc","round","roundEven","isnan","isinf","floatBitsToInt","floatBitsToUint","intBitsToFloat","uintBitsToFloat","packSnorm2x16","unpackSnorm2x16","packUnorm2x16","unpackUnorm2x16","packHalf2x16","unpackHalf2x16","outerProduct","transpose","determinant","inverse","texture","textureSize","textureProj","textureLod","textureOffset","texelFetch","texelFetchOffset","textureProjOffset","textureLodOffset","textureProjLod","textureProjLodOffset","textureGrad","textureGradOffset","textureProjGrad","textureProjGradOffset"])},3536:function(i){i.exports=a;function a(o,s){var l=s[0],u=s[1],c=s[2],f=l*l+u*u+c*c;return f>0&&(f=1/Math.sqrt(f),o[0]=s[0]*f,o[1]=s[1]*f,o[2]=s[2]*f),o}},3545:function(i,a,o){"use strict";i.exports=f;var s=o(8105),l=s("lo<p0"),u=8;function c(h,d,v,_,b,p){for(var k=2*h,E=k*(v+1)+d,S=v+1;S<_;++S,E+=k)for(var L=b[E],x=S,C=k*(S-1);x>v&&b[C+d]>L;--x,C-=k){for(var M=C,g=C+k,P=0;P<k;++P,++M,++g){var T=b[M];b[M]=b[g],b[g]=T}var z=p[x];p[x]=p[x-1],p[x-1]=z}}function f(h,d,v,_,b,p){if(_<=v+1)return v;for(var k=v,E=_,S=_+v>>>1,L=2*h,x=S,C=b[L*S+d];k<E;){if(E-k<u){c(h,d,k,E,b,p),C=b[L*S+d];break}var M=E-k,g=Math.random()*M+k|0,P=b[L*g+d],T=Math.random()*M+k|0,z=b[L*T+d],O=Math.random()*M+k|0,V=b[L*O+d];P<=z?V>=z?(x=T,C=z):P>=V?(x=g,C=P):(x=O,C=V):z>=V?(x=T,C=z):V>=P?(x=g,C=P):(x=O,C=V);for(var j=L*(E-1),N=L*x,G=0;G<L;++G,++j,++N){var Z=b[j];b[j]=b[N],b[N]=Z}var H=p[E-1];p[E-1]=p[x],p[x]=H,x=l(h,d,k,E-1,b,p,C);for(var j=L*(E-1),N=L*x,G=0;G<L;++G,++j,++N){var Z=b[j];b[j]=b[N],b[N]=Z}var H=p[E-1];if(p[E-1]=p[x],p[x]=H,S<x){for(E=x-1;k<E&&b[L*(E-1)+d]===C;)E-=1;E+=1}else if(x<S)for(k=x+1;k<E&&b[L*k+d]===C;)k+=1;else break}return l(h,d,v,S,b,p,b[L*S+d])}},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}},3589:function(i,a,o){"use strict";i.exports=_;var s=o(2260),l=o(1888),u=o(9618),c=o(8828).nextPow2,f=function(b,p,k){for(var E=1e8,S=-1,L=-1,x=b.shape[0],C=b.shape[1],M=0;M<x;M++)for(var g=0;g<C;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=k-g,Z=V*V+G*G;Z<E&&(E=Z,S=M,L=g)}}return[S,L,E]};function h(b,p,k,E,S){this.coord=[b,p],this.id=k,this.value=E,this.distance=S}function d(b,p,k){this.gl=b,this.fbo=p,this.buffer=k,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],k=this.fbo.shape[1];if(k*p*4>this.buffer.length){l.free(this.buffer);for(var E=this.buffer=l.mallocUint8(c(k*p*4)),S=0;S<k*p*4;++S)E[S]=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,k){if(!this.gl)return null;var E=this.fbo.shape.slice();b=b|0,p=p|0,typeof k!="number"&&(k=1);var S=Math.min(Math.max(b-k,0),E[0])|0,L=Math.min(Math.max(b+k,0),E[0])|0,x=Math.min(Math.max(p-k,0),E[1])|0,C=Math.min(Math.max(p+k,0),E[1])|0;if(L<=S||C<=x)return null;var M=[L-S,C-x],g=u(this.buffer,[M[0],M[1],4],[4,E[0]*4,1],4*(S+E[0]*x)),P=f(g.hi(M[0],M[1],1),k,k),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+S|0,z+x|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 _(b,p){var k=p[0],E=p[1],S={},L=s(b,k,E,S),x=l.mallocUint8(k*E*4);return new d(b,L,x)}},3628:function(i,a,o){"use strict";var s=o(1338),l=o(727);function u(h,d){for(var v=0,_=h.length,b=0;b<_;++b)v+=h[b]*d[b];return v}function c(h){var d=h.length;if(d===0)return[];var v=h[0].length,_=s([h.length+1,h.length+1],1),b=s([h.length+1],1);_[d][d]=0;for(var p=0;p<d;++p){for(var k=0;k<=p;++k)_[k][p]=_[p][k]=2*u(h[p],h[k]);b[p]=u(h[p],h[p])}for(var E=l(_,b),S=0,L=E[d+1],p=0;p<L.length;++p)S+=L[p];for(var x=new Array(d),p=0;p<d;++p){for(var L=E[p],C=0,k=0;k<L.length;++k)C+=L[k];x[p]=C/S}return x}function f(h){if(h.length===0)return[];for(var d=h[0].length,v=s([d]),_=c(h),b=0;b<h.length;++b)for(var p=0;p<d;++p)v[p]+=h[b][p]*_[b];return v}f.barycenetric=c,i.exports=f},3637:function(i,a,o){"use strict";i.exports=_;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 _(b,p,k,E){var S=f(p,b),L=f(E,k),x=v(S,L);if(c(x)===0)return null;var C=f(b,k),M=v(L,C),g=l(M,x),P=d(S,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]}]}},3711:function(i,a,o){"use strict";i.exports=d;var s=o(2640),l=o(781),u={"2d":function(v,_,b){var p=v({order:_,scalarArguments:3,getters:b==="generic"?[0]:void 0,phase:function(E,S,L,x){return E>x|0},vertex:function(E,S,L,x,C,M,g,P,T,z,O,V,G){var Z=(g<<0)+(P<<1)+(T<<2)+(z<<3)|0;if(!(Z===0||Z===15))switch(Z){case 0:O.push([E-.5,S-.5]);break;case 1:O.push([E-.25-.25*(x+L-2*G)/(L-x),S-.25-.25*(C+L-2*G)/(L-C)]);break;case 2:O.push([E-.75-.25*(-x-L+2*G)/(x-L),S-.25-.25*(M+x-2*G)/(x-M)]);break;case 3:O.push([E-.5,S-.5-.5*(C+L+M+x-4*G)/(L-C+x-M)]);break;case 4:O.push([E-.25-.25*(M+C-2*G)/(C-M),S-.75-.25*(-C-L+2*G)/(C-L)]);break;case 5:O.push([E-.5-.5*(x+L+M+C-4*G)/(L-x+C-M),S-.5]);break;case 6:O.push([E-.5-.25*(-x-L+M+C)/(x-L+C-M),S-.5-.25*(-C-L+M+x)/(C-L+x-M)]);break;case 7:O.push([E-.75-.25*(M+C-2*G)/(C-M),S-.75-.25*(M+x-2*G)/(x-M)]);break;case 8:O.push([E-.75-.25*(-M-C+2*G)/(M-C),S-.75-.25*(-M-x+2*G)/(M-x)]);break;case 9:O.push([E-.5-.25*(x+L+-M-C)/(L-x+M-C),S-.5-.25*(C+L+-M-x)/(L-C+M-x)]);break;case 10:O.push([E-.5-.5*(-x-L+-M-C+4*G)/(x-L+M-C),S-.5]);break;case 11:O.push([E-.25-.25*(-M-C+2*G)/(M-C),S-.75-.25*(C+L-2*G)/(L-C)]);break;case 12:O.push([E-.5,S-.5-.5*(-C-L+-M-x+4*G)/(C-L+M-x)]);break;case 13:O.push([E-.75-.25*(x+L-2*G)/(L-x),S-.25-.25*(-M-x+2*G)/(M-x)]);break;case 14:O.push([E-.25-.25*(-x-L+2*G)/(x-L),S-.25-.25*(-C-L+2*G)/(C-L)]);break;case 15:O.push([E-.5,S-.5]);break}},cell:function(E,S,L,x,C,M,g,P,T){C?P.push([E,S]):P.push([S,E])}});return function(k,E){var S=[],L=[];return p(k,S,L,E),{positions:S,cells:L}}}};function c(v,_){var b=v.length+"d",p=u[b];if(p)return p(s,v,_)}function f(v,_){for(var b=l(v,_),p=b.length,k=new Array(p),E=new Array(p),S=0;S<p;++S)k[S]=[b[S]],E[S]=[S];return{positions:k,cells:E}}var h={};function d(v,k){if(v.dimension<=0)return{positions:[],cells:[]};if(v.dimension===1)return f(v,k);var b=v.order.join()+"-"+v.dtype,p=h[b],k=+k||0;return p||(p=h[b]=c(v.order,v.dtype)),p(v,k)}},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]}},3778:function(i,a){a.read=function(o,s,l,u,c){var f,h,d=c*8-u-1,v=(1<<d)-1,_=v>>1,b=-7,p=l?c-1:0,k=l?-1:1,E=o[s+p];for(p+=k,f=E&(1<<-b)-1,E>>=-b,b+=d;b>0;f=f*256+o[s+p],p+=k,b-=8);for(h=f&(1<<-b)-1,f>>=-b,b+=u;b>0;h=h*256+o[s+p],p+=k,b-=8);if(f===0)f=1-_;else{if(f===v)return h?NaN:(E?-1:1)*(1/0);h=h+Math.pow(2,u),f=f-_}return(E?-1:1)*h*Math.pow(2,f-u)},a.write=function(o,s,l,u,c,f){var h,d,v,_=f*8-c-1,b=(1<<_)-1,p=b>>1,k=c===23?Math.pow(2,-24)-Math.pow(2,-77):0,E=u?0:f-1,S=u?1:-1,L=s<0||s===0&&1/s<0?1:0;for(s=Math.abs(s),isNaN(s)||s===1/0?(d=isNaN(s)?1:0,h=b):(h=Math.floor(Math.log(s)/Math.LN2),s*(v=Math.pow(2,-h))<1&&(h--,v*=2),h+p>=1?s+=k/v:s+=k*Math.pow(2,1-p),s*v>=2&&(h++,v/=2),h+p>=b?(d=0,h=b):h+p>=1?(d=(s*v-1)*Math.pow(2,c),h=h+p):(d=s*Math.pow(2,p-1)*Math.pow(2,c),h=0));c>=8;o[l+E]=d&255,E+=S,d/=256,c-=8);for(h=h<<c|d,_+=c;_>0;o[l+E]=h&255,E+=S,h/=256,_-=8);o[l+E-S]|=L*128}},3788:function(i,a,o){"use strict";var s=o(8507),l=o(2419);i.exports=u;function u(c,f){return s(c,f)||l(c)-l(f)}},3837:function(i,a,o){"use strict";i.exports=O;var s=o(4935),l=o(501),u=o(5304),c=o(6429),f=o(6444),h=new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]),d=ArrayBuffer,v=DataView;function _(V){return d.isView(V)&&!(V instanceof v)}function b(V){return Array.isArray(V)||_(V)}function p(V,G){return V[0]=G[0],V[1]=G[1],V[2]=G[2],V}function k(V){this.gl=V,this.pixelRatio=1,this.bounds=[[-10,-10,-10],[10,10,10]],this.ticks=[[],[],[]],this.autoTicks=!0,this.tickSpacing=[1,1,1],this.tickEnable=[!0,!0,!0],this.tickFont=["sans-serif","sans-serif","sans-serif"],this.tickFontStyle=["normal","normal","normal"],this.tickFontWeight=["normal","normal","normal"],this.tickFontVariant=["normal","normal","normal"],this.tickSize=[12,12,12],this.tickAngle=[0,0,0],this.tickAlign=["auto","auto","auto"],this.tickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.tickPad=[10,10,10],this.lastCubeProps={cubeEdges:[0,0,0],axis:[0,0,0]},this.labels=["x","y","z"],this.labelEnable=[!0,!0,!0],this.labelFont=["sans-serif","sans-serif","sans-serif"],this.labelFontStyle=["normal","normal","normal"],this.labelFontWeight=["normal","normal","normal"],this.labelFontVariant=["normal","normal","normal"],this.labelSize=[20,20,20],this.labelAngle=[0,0,0],this.labelAlign=["auto","auto","auto"],this.labelColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.labelPad=[10,10,10],this.lineEnable=[!0,!0,!0],this.lineMirror=[!1,!1,!1],this.lineWidth=[1,1,1],this.lineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.lineTickEnable=[!0,!0,!0],this.lineTickMirror=[!1,!1,!1],this.lineTickLength=[0,0,0],this.lineTickWidth=[1,1,1],this.lineTickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.gridEnable=[!0,!0,!0],this.gridWidth=[1,1,1],this.gridColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroEnable=[!0,!0,!0],this.zeroLineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroLineWidth=[2,2,2],this.backgroundEnable=[!1,!1,!1],this.backgroundColor=[[.8,.8,.8,.5],[.8,.8,.8,.5],[.8,.8,.8,.5]],this._firstInit=!0,this._text=null,this._lines=null,this._background=u(V)}var E=k.prototype;E.update=function(V){V=V||{};function G(Ae,Fe,Pe){if(Pe in V){var ge=V[Pe],Re=this[Pe],ce;(Ae?b(ge)&&b(ge[0]):b(ge))?this[Pe]=ce=[Fe(ge[0]),Fe(ge[1]),Fe(ge[2])]:this[Pe]=ce=[Fe(ge),Fe(ge),Fe(ge)];for(var Ze=0;Ze<3;++Ze)if(ce[Ze]!==Re[Ze])return!0}return!1}var Z=G.bind(this,!1,Number),j=G.bind(this,!1,Boolean),N=G.bind(this,!1,String),H=G.bind(this,!0,function(Ae){if(b(Ae)){if(Ae.length===3)return[+Ae[0],+Ae[1],+Ae[2],1];if(Ae.length===4)return[+Ae[0],+Ae[1],+Ae[2],+Ae[3]]}return[0,0,0,1]}),te,oe=!1,_e=!1;if("bounds"in V)for(var Ee=V.bounds,Ce=0;Ce<2;++Ce)for(var me=0;me<3;++me)Ee[Ce][me]!==this.bounds[Ce][me]&&(_e=!0),this.bounds[Ce][me]=Ee[Ce][me];if("ticks"in V){te=V.ticks,oe=!0,this.autoTicks=!1;for(var Ce=0;Ce<3;++Ce)this.tickSpacing[Ce]=0}else Z("tickSpacing")&&(this.autoTicks=!0,_e=!0);if(this._firstInit&&("ticks"in V||"tickSpacing"in V||(this.autoTicks=!0),_e=!0,oe=!0,this._firstInit=!1),_e&&this.autoTicks&&(te=f.create(this.bounds,this.tickSpacing),oe=!0),oe){for(var Ce=0;Ce<3;++Ce)te[Ce].sort(function(Fe,Pe){return Fe.x-Pe.x});f.equal(te,this.ticks)?oe=!1:this.ticks=te}j("tickEnable"),N("tickFont")&&(oe=!0),N("tickFontStyle")&&(oe=!0),N("tickFontWeight")&&(oe=!0),N("tickFontVariant")&&(oe=!0),Z("tickSize"),Z("tickAngle"),Z("tickPad"),H("tickColor");var ie=N("labels");N("labelFont")&&(ie=!0),N("labelFontStyle")&&(ie=!0),N("labelFontWeight")&&(ie=!0),N("labelFontVariant")&&(ie=!0),j("labelEnable"),Z("labelSize"),Z("labelPad"),H("labelColor"),j("lineEnable"),j("lineMirror"),Z("lineWidth"),H("lineColor"),j("lineTickEnable"),j("lineTickMirror"),Z("lineTickLength"),Z("lineTickWidth"),H("lineTickColor"),j("gridEnable"),Z("gridWidth"),H("gridColor"),j("zeroEnable"),H("zeroLineColor"),Z("zeroLineWidth"),j("backgroundEnable"),H("backgroundColor");var Se=[{family:this.labelFont[0],style:this.labelFontStyle[0],weight:this.labelFontWeight[0],variant:this.labelFontVariant[0]},{family:this.labelFont[1],style:this.labelFontStyle[1],weight:this.labelFontWeight[1],variant:this.labelFontVariant[1]},{family:this.labelFont[2],style:this.labelFontStyle[2],weight:this.labelFontWeight[2],variant:this.labelFontVariant[2]}],Le=[{family:this.tickFont[0],style:this.tickFontStyle[0],weight:this.tickFontWeight[0],variant:this.tickFontVariant[0]},{family:this.tickFont[1],style:this.tickFontStyle[1],weight:this.tickFontWeight[1],variant:this.tickFontVariant[1]},{family:this.tickFont[2],style:this.tickFontStyle[2],weight:this.tickFontWeight[2],variant:this.tickFontVariant[2]}];this._text?this._text&&(ie||oe)&&this._text.update(this.bounds,this.labels,Se,this.ticks,Le):this._text=s(this.gl,this.bounds,this.labels,Se,this.ticks,Le),this._lines&&oe&&(this._lines.dispose(),this._lines=null),this._lines||(this._lines=l(this.gl,this.bounds,this.ticks))};function S(){this.primalOffset=[0,0,0],this.primalMinor=[0,0,0],this.mirrorOffset=[0,0,0],this.mirrorMinor=[0,0,0]}var L=[new S,new S,new S];function x(V,G,Z,j,N){for(var H=V.primalOffset,te=V.primalMinor,oe=V.mirrorOffset,_e=V.mirrorMinor,Ee=j[G],Ce=0;Ce<3;++Ce)if(G!==Ce){var me=H,ie=oe,Se=te,Le=_e;Ee&1<<Ce&&(me=oe,ie=H,Se=_e,Le=te),me[Ce]=Z[0][Ce],ie[Ce]=Z[1][Ce],N[Ce]>0?(Se[Ce]=-1,Le[Ce]=0):(Se[Ce]=0,Le[Ce]=1)}}var C=[0,0,0],M={model:h,view:h,projection:h,_ortho:!1};E.isOpaque=function(){return!0},E.isTransparent=function(){return!1},E.drawTransparent=function(V){};var g=0,P=[0,0,0],T=[0,0,0],z=[0,0,0];E.draw=function(V){V=V||M;for(var Pe=this.gl,G=V.model||h,Z=V.view||h,j=V.projection||h,N=this.bounds,H=V._ortho||!1,te=c(G,Z,j,N,H),oe=te.cubeEdges,_e=te.axis,Ee=Z[12],Ce=Z[13],me=Z[14],ie=Z[15],Se=H?2:1,Le=Se*this.pixelRatio*(j[3]*Ee+j[7]*Ce+j[11]*me+j[15]*ie)/Pe.drawingBufferHeight,Ae=0;Ae<3;++Ae)this.lastCubeProps.cubeEdges[Ae]=oe[Ae],this.lastCubeProps.axis[Ae]=_e[Ae];for(var Fe=L,Ae=0;Ae<3;++Ae)x(L[Ae],Ae,this.bounds,oe,_e);for(var Pe=this.gl,ge=C,Ae=0;Ae<3;++Ae)this.backgroundEnable[Ae]?ge[Ae]=_e[Ae]:ge[Ae]=0;this._background.draw(G,Z,j,N,ge,this.backgroundColor),this._lines.bind(G,Z,j,this);for(var Ae=0;Ae<3;++Ae){var Re=[0,0,0];_e[Ae]>0?Re[Ae]=N[1][Ae]:Re[Ae]=N[0][Ae];for(var ce=0;ce<2;++ce){var Ze=(Ae+1+ce)%3,ut=(Ae+1+(ce^1))%3;this.gridEnable[Ze]&&this._lines.drawGrid(Ze,ut,this.bounds,Re,this.gridColor[Ze],this.gridWidth[Ze]*this.pixelRatio)}for(var ce=0;ce<2;++ce){var Ze=(Ae+1+ce)%3,ut=(Ae+1+(ce^1))%3;this.zeroEnable[ut]&&Math.min(N[0][ut],N[1][ut])<=0&&Math.max(N[0][ut],N[1][ut])>=0&&this._lines.drawZero(Ze,ut,this.bounds,Re,this.zeroLineColor[ut],this.zeroLineWidth[ut]*this.pixelRatio)}}for(var Ae=0;Ae<3;++Ae){this.lineEnable[Ae]&&this._lines.drawAxisLine(Ae,this.bounds,Fe[Ae].primalOffset,this.lineColor[Ae],this.lineWidth[Ae]*this.pixelRatio),this.lineMirror[Ae]&&this._lines.drawAxisLine(Ae,this.bounds,Fe[Ae].mirrorOffset,this.lineColor[Ae],this.lineWidth[Ae]*this.pixelRatio);for(var pt=p(P,Fe[Ae].primalMinor),Zt=p(T,Fe[Ae].mirrorMinor),st=this.lineTickLength,ce=0;ce<3;++ce){var lt=Le/G[5*ce];pt[ce]*=st[ce]*lt,Zt[ce]*=st[ce]*lt}this.lineTickEnable[Ae]&&this._lines.drawAxisTicks(Ae,Fe[Ae].primalOffset,pt,this.lineTickColor[Ae],this.lineTickWidth[Ae]*this.pixelRatio),this.lineTickMirror[Ae]&&this._lines.drawAxisTicks(Ae,Fe[Ae].mirrorOffset,Zt,this.lineTickColor[Ae],this.lineTickWidth[Ae]*this.pixelRatio)}this._lines.unbind(),this._text.bind(G,Z,j,this.pixelRatio);var Gt,Nt=.5,Jt,sr;function wr(_t){sr=[0,0,0],sr[_t]=1}function cr(_t,It,mt){var er=(_t+1)%3,lr=(_t+2)%3,Tr=It[er],Lr=It[lr],ti=mt[er],Br=mt[lr];if(Tr>0&&Br>0){wr(er);return}else if(Tr>0&&Br<0){wr(er);return}else if(Tr<0&&Br>0){wr(er);return}else if(Tr<0&&Br<0){wr(er);return}else if(Lr>0&&ti>0){wr(lr);return}else if(Lr>0&&ti<0){wr(lr);return}else if(Lr<0&&ti>0){wr(lr);return}else if(Lr<0&&ti<0){wr(lr);return}}for(var Ae=0;Ae<3;++Ae){for(var $e=Fe[Ae].primalMinor,St=Fe[Ae].mirrorMinor,Qt=p(z,Fe[Ae].primalOffset),ce=0;ce<3;++ce)this.lineTickEnable[Ae]&&(Qt[ce]+=Le*$e[ce]*Math.max(this.lineTickLength[ce],0)/G[5*ce]);var Vt=[0,0,0];if(Vt[Ae]=1,this.tickEnable[Ae]){this.tickAngle[Ae]===-3600?(this.tickAngle[Ae]=0,this.tickAlign[Ae]="auto"):this.tickAlign[Ae]=-1,Jt=1,Gt=[this.tickAlign[Ae],Nt,Jt],Gt[0]==="auto"?Gt[0]=g:Gt[0]=parseInt(""+Gt[0]),sr=[0,0,0],cr(Ae,$e,St);for(var ce=0;ce<3;++ce)Qt[ce]+=Le*$e[ce]*this.tickPad[ce]/G[5*ce];this._text.drawTicks(Ae,this.tickSize[Ae],this.tickAngle[Ae],Qt,this.tickColor[Ae],Vt,sr,Gt)}if(this.labelEnable[Ae]){Jt=0,sr=[0,0,0],this.labels[Ae].length>4&&(wr(Ae),Jt=1),Gt=[this.labelAlign[Ae],Nt,Jt],Gt[0]==="auto"?Gt[0]=g:Gt[0]=parseInt(""+Gt[0]);for(var ce=0;ce<3;++ce)Qt[ce]+=Le*$e[ce]*this.labelPad[ce]/G[5*ce];Qt[Ae]+=.5*(N[0][Ae]+N[1][Ae]),this._text.drawLabel(Ae,this.labelSize[Ae],this.labelAngle[Ae],Qt,this.labelColor[Ae],[0,0,0],sr,Gt)}}this._text.unbind()},E.dispose=function(){this._text.dispose(),this._lines.dispose(),this._background.dispose(),this._lines=null,this._text=null,this._background=null,this.gl=null};function O(V,G){var Z=new k(V);return Z.update(G),Z}},3840:function(i){"use strict";i.exports=L;var a=0,o=1;function s(x,C,M,g,P,T){this._color=x,this.key=C,this.value=M,this.left=g,this.right=P,this._count=T}function l(x){return new s(x._color,x.key,x.value,x.left,x.right,x._count)}function u(x,C){return new s(x,C.key,C.value,C.left,C.right,C._count)}function c(x){x._count=1+(x.left?x.left._count:0)+(x.right?x.right._count:0)}function f(x,C){this._compare=x,this.root=C}var h=f.prototype;Object.defineProperty(h,"keys",{get:function(){var x=[];return this.forEach(function(C,M){x.push(C)}),x}}),Object.defineProperty(h,"values",{get:function(){var x=[];return this.forEach(function(C,M){x.push(M)}),x}}),Object.defineProperty(h,"length",{get:function(){return this.root?this.root._count:0}}),h.insert=function(x,C){for(var M=this._compare,g=this.root,P=[],T=[];g;){var z=M(x,g.key);P.push(g),T.push(z),z<=0?g=g.left:g=g.right}P.push(new s(a,x,C,null,null,1));for(var O=P.length-2;O>=0;--O){var g=P[O];T[O]<=0?P[O]=new s(g._color,g.key,g.value,P[O+1],g.right,g._count+1):P[O]=new s(g._color,g.key,g.value,g.left,P[O+1],g._count+1)}for(var O=P.length-1;O>1;--O){var V=P[O-1],g=P[O];if(V._color===o||g._color===o)break;var G=P[O-2];if(G.left===V)if(V.left===g){var Z=G.right;if(Z&&Z._color===a)V._color=o,G.right=u(o,Z),G._color=a,O-=1;else{if(G._color=a,G.left=V.right,V._color=o,V.right=G,P[O-2]=V,P[O-1]=g,c(G),c(V),O>=3){var j=P[O-3];j.left===G?j.left=V:j.right=V}break}}else{var Z=G.right;if(Z&&Z._color===a)V._color=o,G.right=u(o,Z),G._color=a,O-=1;else{if(V.right=g.left,G._color=a,G.left=g.right,g._color=o,g.left=V,g.right=G,P[O-2]=g,P[O-1]=V,c(G),c(V),c(g),O>=3){var j=P[O-3];j.left===G?j.left=g:j.right=g}break}}else if(V.right===g){var Z=G.left;if(Z&&Z._color===a)V._color=o,G.left=u(o,Z),G._color=a,O-=1;else{if(G._color=a,G.right=V.left,V._color=o,V.left=G,P[O-2]=V,P[O-1]=g,c(G),c(V),O>=3){var j=P[O-3];j.right===G?j.right=V:j.left=V}break}}else{var Z=G.left;if(Z&&Z._color===a)V._color=o,G.left=u(o,Z),G._color=a,O-=1;else{if(V.left=g.right,G._color=a,G.right=g.left,g._color=o,g.right=V,g.left=G,P[O-2]=g,P[O-1]=V,c(G),c(V),c(g),O>=3){var j=P[O-3];j.right===G?j.right=g:j.left=g}break}}}return P[0]._color=o,new f(M,P[0])};function d(x,C){if(C.left){var M=d(x,C.left);if(M)return M}var M=x(C.key,C.value);if(M)return M;if(C.right)return d(x,C.right)}function v(x,C,M,g){var P=C(x,g.key);if(P<=0){if(g.left){var T=v(x,C,M,g.left);if(T)return T}var T=M(g.key,g.value);if(T)return T}if(g.right)return v(x,C,M,g.right)}function _(x,C,M,g,P){var T=M(x,P.key),z=M(C,P.key),O;if(T<=0&&(P.left&&(O=_(x,C,M,g,P.left),O)||z>0&&(O=g(P.key,P.value),O)))return O;if(z>0&&P.right)return _(x,C,M,g,P.right)}h.forEach=function(C,M,g){if(this.root)switch(arguments.length){case 1:return d(C,this.root);case 2:return v(M,this._compare,C,this.root);case 3:return this._compare(M,g)>=0?void 0:_(M,g,this._compare,C,this.root)}},Object.defineProperty(h,"begin",{get:function(){for(var x=[],C=this.root;C;)x.push(C),C=C.left;return new b(this,x)}}),Object.defineProperty(h,"end",{get:function(){for(var x=[],C=this.root;C;)x.push(C),C=C.right;return new b(this,x)}}),h.at=function(x){if(x<0)return new b(this,[]);for(var C=this.root,M=[];;){if(M.push(C),C.left){if(x<C.left._count){C=C.left;continue}x-=C.left._count}if(!x)return new b(this,M);if(x-=1,C.right){if(x>=C.right._count)break;C=C.right}else break}return new b(this,[])},h.ge=function(x){for(var C=this._compare,M=this.root,g=[],P=0;M;){var T=C(x,M.key);g.push(M),T<=0&&(P=g.length),T<=0?M=M.left:M=M.right}return g.length=P,new b(this,g)},h.gt=function(x){for(var C=this._compare,M=this.root,g=[],P=0;M;){var T=C(x,M.key);g.push(M),T<0&&(P=g.length),T<0?M=M.left:M=M.right}return g.length=P,new b(this,g)},h.lt=function(x){for(var C=this._compare,M=this.root,g=[],P=0;M;){var T=C(x,M.key);g.push(M),T>0&&(P=g.length),T<=0?M=M.left:M=M.right}return g.length=P,new b(this,g)},h.le=function(x){for(var C=this._compare,M=this.root,g=[],P=0;M;){var T=C(x,M.key);g.push(M),T>=0&&(P=g.length),T<0?M=M.left:M=M.right}return g.length=P,new b(this,g)},h.find=function(x){for(var C=this._compare,M=this.root,g=[];M;){var P=C(x,M.key);if(g.push(M),P===0)return new b(this,g);P<=0?M=M.left:M=M.right}return new b(this,[])},h.remove=function(x){var C=this.find(x);return C?C.remove():this},h.get=function(x){for(var C=this._compare,M=this.root;M;){var g=C(x,M.key);if(g===0)return M.value;g<=0?M=M.left:M=M.right}};function b(x,C){this.tree=x,this._stack=C}var p=b.prototype;Object.defineProperty(p,"valid",{get:function(){return this._stack.length>0}}),Object.defineProperty(p,"node",{get:function(){return this._stack.length>0?this._stack[this._stack.length-1]:null},enumerable:!0}),p.clone=function(){return new b(this.tree,this._stack.slice())};function k(x,C){x.key=C.key,x.value=C.value,x.left=C.left,x.right=C.right,x._color=C._color,x._count=C._count}function E(x){for(var C,M,g,P,T=x.length-1;T>=0;--T){if(C=x[T],T===0){C._color=o;return}if(M=x[T-1],M.left===C){if(g=M.right,g.right&&g.right._color===a){if(g=M.right=l(g),P=g.right=l(g.right),M.right=g.left,g.left=M,g.right=P,g._color=M._color,C._color=o,M._color=o,P._color=o,c(M),c(g),T>1){var z=x[T-2];z.left===M?z.left=g:z.right=g}x[T-1]=g;return}else if(g.left&&g.left._color===a){if(g=M.right=l(g),P=g.left=l(g.left),M.right=P.left,g.left=P.right,P.left=M,P.right=g,P._color=M._color,M._color=o,g._color=o,C._color=o,c(M),c(g),c(P),T>1){var z=x[T-2];z.left===M?z.left=P:z.right=P}x[T-1]=P;return}if(g._color===o)if(M._color===a){M._color=o,M.right=u(a,g);return}else{M.right=u(a,g);continue}else{if(g=l(g),M.right=g.left,g.left=M,g._color=M._color,M._color=a,c(M),c(g),T>1){var z=x[T-2];z.left===M?z.left=g:z.right=g}x[T-1]=g,x[T]=M,T+1<x.length?x[T+1]=C:x.push(C),T=T+2}}else{if(g=M.left,g.left&&g.left._color===a){if(g=M.left=l(g),P=g.left=l(g.left),M.left=g.right,g.right=M,g.left=P,g._color=M._color,C._color=o,M._color=o,P._color=o,c(M),c(g),T>1){var z=x[T-2];z.right===M?z.right=g:z.left=g}x[T-1]=g;return}else if(g.right&&g.right._color===a){if(g=M.left=l(g),P=g.right=l(g.right),M.left=P.right,g.right=P.left,P.right=M,P.left=g,P._color=M._color,M._color=o,g._color=o,C._color=o,c(M),c(g),c(P),T>1){var z=x[T-2];z.right===M?z.right=P:z.left=P}x[T-1]=P;return}if(g._color===o)if(M._color===a){M._color=o,M.left=u(a,g);return}else{M.left=u(a,g);continue}else{if(g=l(g),M.left=g.right,g.right=M,g._color=M._color,M._color=a,c(M),c(g),T>1){var z=x[T-2];z.right===M?z.right=g:z.left=g}x[T-1]=g,x[T]=M,T+1<x.length?x[T+1]=C:x.push(C),T=T+2}}}}p.remove=function(){var x=this._stack;if(x.length===0)return this.tree;var C=new Array(x.length),M=x[x.length-1];C[C.length-1]=new s(M._color,M.key,M.value,M.left,M.right,M._count);for(var g=x.length-2;g>=0;--g){var M=x[g];M.left===x[g+1]?C[g]=new s(M._color,M.key,M.value,C[g+1],M.right,M._count):C[g]=new s(M._color,M.key,M.value,M.left,C[g+1],M._count)}if(M=C[C.length-1],M.left&&M.right){var P=C.length;for(M=M.left;M.right;)C.push(M),M=M.right;var T=C[P-1];C.push(new s(M._color,T.key,T.value,M.left,M.right,M._count)),C[P-1].key=M.key,C[P-1].value=M.value;for(var g=C.length-2;g>=P;--g)M=C[g],C[g]=new s(M._color,M.key,M.value,M.left,C[g+1],M._count);C[P-1].left=C[P]}if(M=C[C.length-1],M._color===a){var z=C[C.length-2];z.left===M?z.left=null:z.right===M&&(z.right=null),C.pop();for(var g=0;g<C.length;++g)C[g]._count--;return new f(this.tree._compare,C[0])}else if(M.left||M.right){M.left?k(M,M.left):M.right&&k(M,M.right),M._color=o;for(var g=0;g<C.length-1;++g)C[g]._count--;return new f(this.tree._compare,C[0])}else{if(C.length===1)return new f(this.tree._compare,null);for(var g=0;g<C.length;++g)C[g]._count--;var O=C[C.length-2];E(C),O.left===M?O.left=null:O.right=null}return new f(this.tree._compare,C[0])},Object.defineProperty(p,"key",{get:function(){if(this._stack.length>0)return this._stack[this._stack.length-1].key},enumerable:!0}),Object.defineProperty(p,"value",{get:function(){if(this._stack.length>0)return this._stack[this._stack.length-1].value},enumerable:!0}),Object.defineProperty(p,"index",{get:function(){var x=0,C=this._stack;if(C.length===0){var M=this.tree.root;return M?M._count:0}else C[C.length-1].left&&(x=C[C.length-1].left._count);for(var g=C.length-2;g>=0;--g)C[g+1]===C[g].right&&(++x,C[g].left&&(x+=C[g].left._count));return x},enumerable:!0}),p.next=function(){var x=this._stack;if(x.length!==0){var C=x[x.length-1];if(C.right)for(C=C.right;C;)x.push(C),C=C.left;else for(x.pop();x.length>0&&x[x.length-1].right===C;)C=x[x.length-1],x.pop()}},Object.defineProperty(p,"hasNext",{get:function(){var x=this._stack;if(x.length===0)return!1;if(x[x.length-1].right)return!0;for(var C=x.length-1;C>0;--C)if(x[C-1].left===x[C])return!0;return!1}}),p.update=function(x){var C=this._stack;if(C.length===0)throw new Error("Can't update empty node!");var M=new Array(C.length),g=C[C.length-1];M[M.length-1]=new s(g._color,g.key,x,g.left,g.right,g._count);for(var P=C.length-2;P>=0;--P)g=C[P],g.left===C[P+1]?M[P]=new s(g._color,g.key,g.value,M[P+1],g.right,g._count):M[P]=new s(g._color,g.key,g.value,g.left,M[P+1],g._count);return new f(this.tree._compare,M[0])},p.prev=function(){var x=this._stack;if(x.length!==0){var C=x[x.length-1];if(C.left)for(C=C.left;C;)x.push(C),C=C.right;else for(x.pop();x.length>0&&x[x.length-1].left===C;)C=x[x.length-1],x.pop()}},Object.defineProperty(p,"hasPrev",{get:function(){var x=this._stack;if(x.length===0)return!1;if(x[x.length-1].left)return!0;for(var C=x.length-1;C>0;--C)if(x[C-1].right===x[C])return!0;return!1}});function S(x,C){return x<C?-1:x>C?1:0}function L(x){return new f(x||S,null)}},3865:function(i,a,o){"use strict";var s=o(869);i.exports=l;function l(u,c){return s(u[0].mul(c[1]).add(c[0].mul(u[1])),u[1].mul(c[1]))}},3952:function(i,a,o){"use strict";i.exports=u;var s=o(3250);function l(c,f){for(var h=new Array(f+1),d=0;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 _=new Array(f),b=0;b<f;++b)_[b]=Math.pow(v+1-d,b);h[v]=_}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],_=1;_<f;++_){if(d.push(c[_]),!l(d,h)){d.pop();continue}if(v.push(_),v.length===h+1)return v}return v}},3990:function(i){i.exports=a;function a(o,s){return o[0]=s[0],o[1]=s[1],o[2]=s[2],o}},4008:function(i,a,o){i.exports=o(6690)},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}},4040:function(i){i.exports=a;function a(o,s,l,u,c,f,h){var d=1/(s-l),v=1/(u-c),_=1/(f-h);return o[0]=-2*d,o[1]=0,o[2]=0,o[3]=0,o[4]=0,o[5]=-2*v,o[6]=0,o[7]=0,o[8]=0,o[9]=0,o[10]=2*_,o[11]=0,o[12]=(s+l)*d,o[13]=(c+u)*v,o[14]=(h+f)*_,o[15]=1,o}},4041:function(i){i.exports=a;function a(o,s,l){var u=s[0],c=s[1],f=s[2],h=l[0],d=l[1],v=l[2],_=l[3],b=_*u+d*f-v*c,p=_*c+v*u-h*f,k=_*f+h*c-d*u,E=-h*u-d*c-v*f;return o[0]=b*_+E*-h+p*-v-k*-d,o[1]=p*_+E*-d+k*-h-b*-v,o[2]=k*_+E*-v+b*-d-p*-h,o[3]=s[3],o}},4081:function(i){"use strict";i.exports=a;function a(o,s,l,u,c,f,h,d,v,_){var b=s+f+_;if(p>0){var p=Math.sqrt(b+1);o[0]=.5*(h-v)/p,o[1]=.5*(d-u)/p,o[2]=.5*(l-f)/p,o[3]=.5*p}else{var k=Math.max(s,f,_),p=Math.sqrt(2*k-b+1);s>=k?(o[0]=.5*p,o[1]=.5*(c+l)/p,o[2]=.5*(d+u)/p,o[3]=.5*(h-v)/p):f>=k?(o[0]=.5*(l+c)/p,o[1]=.5*p,o[2]=.5*(v+h)/p,o[3]=.5*(d-u)/p):(o[0]=.5*(u+d)/p,o[1]=.5*(h+v)/p,o[2]=.5*p,o[3]=.5*(l-c)/p)}return o}},4100:function(i,a,o){"use strict";var s=o(4437),l=o(3837),u=o(5445),c=o(4449),f=o(3589),h=o(2260),d=o(7169),v=o(351),_=o(4772),b=o(4040),p=o(799),k=o(9216)({tablet:!0,featureDetect:!0});i.exports={createScene:C,createCamera:s};function E(){this.mouse=[-1,-1],this.screen=null,this.distance=1/0,this.index=null,this.dataCoordinate=null,this.dataPosition=null,this.object=null,this.data=null}function S(g,P){var T=null;try{T=g.getContext("webgl",P),T||(T=g.getContext("experimental-webgl",P))}catch(z){return null}return T}function L(g){var P=Math.round(Math.log(Math.abs(g))/Math.log(10));if(P<0){var T=Math.round(Math.pow(10,-P));return Math.ceil(g*T)/T}else if(P>0){var T=Math.round(Math.pow(10,P));return Math.ceil(g/T)*T}return Math.ceil(g)}function x(g){return typeof g=="boolean"?g:!0}function C(g){g=g||{},g.camera=g.camera||{};var P=g.canvas;if(!P)if(P=document.createElement("canvas"),g.container){var T=g.container;T.appendChild(P)}else document.body.appendChild(P);var z=g.gl;if(z||(g.glOptions&&(k=!!g.glOptions.preserveDrawingBuffer),z=S(P,g.glOptions||{premultipliedAlpha:!0,antialias:!0,preserveDrawingBuffer:k})),!z)throw new Error("webgl not supported");var O=g.bounds||[[-10,-10,-10],[10,10,10]],V=new E,G=h(z,z.drawingBufferWidth,z.drawingBufferHeight,{preferFloat:!k}),Z=p(z),j=g.cameraObject&&g.cameraObject._ortho===!0||g.camera.projection&&g.camera.projection.type==="orthographic"||!1,N={eye:g.camera.eye||[2,0,0],center:g.camera.center||[0,0,0],up:g.camera.up||[0,1,0],zoomMin:g.camera.zoomMax||.1,zoomMax:g.camera.zoomMin||100,mode:g.camera.mode||"turntable",_ortho:j},H=g.axes||{},te=l(z,H);te.enable=!H.disable;var oe=g.spikes||{},_e=c(z,oe),Ee=[],Ce=[],me=[],ie=[],Se=!0,Pe=!0,Le=new Array(16),Ae=new Array(16),Fe={view:null,projection:Le,model:Ae,_ortho:!1},Pe=!0,ge=[z.drawingBufferWidth,z.drawingBufferHeight],Re=g.cameraObject||s(P,N),ce={gl:z,contextLost:!1,pixelRatio:g.pixelRatio||1,canvas:P,selection:V,camera:Re,axes:te,axesPixels:null,spikes:_e,bounds:O,objects:Ee,shape:ge,aspect:g.aspectRatio||[1,1,1],pickRadius:g.pickRadius||10,zNear:g.zNear||.01,zFar:g.zFar||1e3,fovy:g.fovy||Math.PI/4,clearColor:g.clearColor||[0,0,0,0],autoResize:x(g.autoResize),autoBounds:x(g.autoBounds),autoScale:!!g.autoScale,autoCenter:x(g.autoCenter),clipToBounds:x(g.clipToBounds),snapToData:!!g.snapToData,onselect:g.onselect||null,onrender:g.onrender||null,onclick:g.onclick||null,cameraParams:Fe,oncontextloss:null,mouseListener:null,_stopped:!1,getAspectratio:function(){return{x:this.aspect[0],y:this.aspect[1],z:this.aspect[2]}},setAspectratio:function(sr){this.aspect[0]=sr.x,this.aspect[1]=sr.y,this.aspect[2]=sr.z,Pe=!0},setBounds:function(sr,wr){this.bounds[0][sr]=wr.min,this.bounds[1][sr]=wr.max},setClearColor:function(sr){this.clearColor=sr},clearRGBA:function(){this.gl.clearColor(this.clearColor[0],this.clearColor[1],this.clearColor[2],this.clearColor[3]),this.gl.clear(this.gl.COLOR_BUFFER_BIT|this.gl.DEPTH_BUFFER_BIT)}},Ze=[z.drawingBufferWidth/ce.pixelRatio|0,z.drawingBufferHeight/ce.pixelRatio|0];function ut(){if(!ce._stopped&&ce.autoResize){var sr=P.parentNode,wr=1,cr=1;sr&&sr!==document.body?(wr=sr.clientWidth,cr=sr.clientHeight):(wr=window.innerWidth,cr=window.innerHeight);var $e=Math.ceil(wr*ce.pixelRatio)|0,St=Math.ceil(cr*ce.pixelRatio)|0;if($e!==P.width||St!==P.height){P.width=$e,P.height=St;var Qt=P.style;Qt.position=Qt.position||"absolute",Qt.left="0px",Qt.top="0px",Qt.width=wr+"px",Qt.height=cr+"px",Se=!0}}}ce.autoResize&&ut(),window.addEventListener("resize",ut);function pt(){for(var sr=Ee.length,wr=ie.length,cr=0;cr<wr;++cr)me[cr]=0;e:for(var cr=0;cr<sr;++cr){var $e=Ee[cr],St=$e.pickSlots;if(!St){Ce[cr]=-1;continue}for(var Qt=0;Qt<wr;++Qt)if(me[Qt]+St<255){Ce[cr]=Qt,$e.setPickBase(me[Qt]+1),me[Qt]+=St;continue e}var Vt=f(z,ge);Ce[cr]=wr,ie.push(Vt),me.push(St),$e.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=te,Ee.push(sr),Ce.push(-1),Se=!0,Pe=!0,pt())},ce.remove=function(sr){if(!ce._stopped){var wr=Ee.indexOf(sr);wr<0||(Ee.splice(wr,1),Ce.pop(),Se=!0,Pe=!0,pt())}},ce.dispose=function(){if(!ce._stopped&&(ce._stopped=!0,window.removeEventListener("resize",ut),P.removeEventListener("webglcontextlost",Zt),ce.mouseListener.enabled=!1,!ce.contextLost)){te.dispose(),_e.dispose();for(var sr=0;sr<Ee.length;++sr)Ee[sr].dispose();G.dispose();for(var sr=0;sr<ie.length;++sr)ie[sr].dispose();Z.dispose(),z=null,te=null,_e=null,Ee=[]}},ce._mouseRotating=!1,ce._prevButtons=0,ce.enableMouseListeners=function(){ce.mouseListener=v(P,function(sr,wr,cr){if(!ce._stopped){var $e=ie.length,St=Ee.length,Qt=V.object;V.distance=1/0,V.mouse[0]=wr,V.mouse[1]=cr,V.object=null,V.screen=null,V.dataCoordinate=V.dataPosition=null;var Vt=!1;if(sr&&ce._prevButtons)ce._mouseRotating=!0;else{ce._mouseRotating&&(Pe=!0),ce._mouseRotating=!1;for(var _t=0;_t<$e;++_t){var It=ie[_t].query(wr,Ze[1]-cr-1,ce.pickRadius);if(It){if(It.distance>V.distance)continue;for(var mt=0;mt<St;++mt){var er=Ee[mt];if(Ce[mt]===_t){var lr=er.pick(It);lr&&(V.buttons=sr,V.screen=It.coord,V.distance=It.distance,V.object=er,V.index=lr.distance,V.dataPosition=lr.position,V.dataCoordinate=lr.dataCoordinate,V.data=lr,Vt=!0)}}}}}Qt&&Qt!==V.object&&(Qt.highlight&&Qt.highlight(null),Se=!0),V.object&&(V.object.highlight&&V.object.highlight(V.data),Se=!0),Vt=Vt||V.object!==Qt,Vt&&ce.onselect&&ce.onselect(V),sr&1&&!(ce._prevButtons&1)&&ce.onclick&&ce.onclick(V),ce._prevButtons=sr}})};function Zt(){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",Zt);function st(){if(!Zt()){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=Ee.length,wr=ie.length,cr=0;cr<wr;++cr){var $e=ie[cr];$e.shape=Ze,$e.begin();for(var St=0;St<sr;++St)if(Ce[St]===cr){var Qt=Ee[St];Qt.drawPick&&(Qt.pixelRatio=1,Qt.drawPick(Fe))}$e.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(!Zt()){ut();var sr=ce.camera.tick();Fe.view=ce.camera.matrix,Se=Se||sr,Pe=Pe||sr,te.pixelRatio=ce.pixelRatio,_e.pixelRatio=ce.pixelRatio;var wr=Ee.length,cr=lt[0],$e=lt[1];cr[0]=cr[1]=cr[2]=1/0,$e[0]=$e[1]=$e[2]=-1/0;for(var St=0;St<wr;++St){var Qt=Ee[St];Qt.pixelRatio=ce.pixelRatio,Qt.axes=ce.axes,Se=Se||!!Qt.dirty,Pe=Pe||!!Qt.dirty;var Vt=Qt.bounds;if(Vt)for(var _t=Vt[0],It=Vt[1],mt=0;mt<3;++mt)cr[mt]=Math.min(cr[mt],_t[mt]),$e[mt]=Math.max($e[mt],It[mt])}var er=ce.bounds;if(ce.autoBounds)for(var mt=0;mt<3;++mt){if($e[mt]<cr[mt])cr[mt]=-1,$e[mt]=1;else{cr[mt]===$e[mt]&&(cr[mt]-=1,$e[mt]+=1);var lr=.05*($e[mt]-cr[mt]);cr[mt]=cr[mt]-lr,$e[mt]=$e[mt]+lr}er[0][mt]=cr[mt],er[1][mt]=$e[mt]}for(var Tr=!1,mt=0;mt<3;++mt)Tr=Tr||Gt[0][mt]!==er[0][mt]||Gt[1][mt]!==er[1][mt],Gt[0][mt]=er[0][mt],Gt[1][mt]=er[1][mt];if(Pe=Pe||Tr,Se=Se||Tr,!!Se){if(Tr){for(var Lr=[0,0,0],St=0;St<3;++St)Lr[St]=L((er[1][St]-er[0][St])/10);te.autoTicks?te.update({bounds:er,tickSpacing:Lr}):te.update({bounds:er})}var ti=z.drawingBufferWidth,Br=z.drawingBufferHeight;ge[0]=ti,ge[1]=Br,Ze[0]=Math.max(ti/ce.pixelRatio,1)|0,Ze[1]=Math.max(Br/ce.pixelRatio,1)|0,M(ce,j);for(var St=0;St<wr;++St){var Qt=Ee[St];Qt.axesBounds=er,ce.clipToBounds&&(Qt.clipBounds=er)}V.object&&(ce.snapToData?_e.position=V.dataCoordinate:_e.position=V.dataPosition,_e.bounds=er),Pe&&(Pe=!1,st()),ce.axesPixels=u(ce.axes,Fe,ti,Br),ce.onrender&&ce.onrender(),z.bindFramebuffer(z.FRAMEBUFFER,null),z.viewport(0,0,ti,Br),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 Vr=!1;te.enable&&(Vr=Vr||te.isTransparent(),te.draw(Fe)),_e.axes=te,V.object&&_e.draw(Fe),z.disable(z.CULL_FACE);for(var St=0;St<wr;++St){var Qt=Ee[St];Qt.axes=te,Qt.pixelRatio=ce.pixelRatio,Qt.isOpaque&&Qt.isOpaque()&&Qt.draw(Fe),Qt.isTransparent&&Qt.isTransparent()&&(Vr=!0)}if(Vr){G.shape=ge,G.bind(),z.clear(z.DEPTH_BUFFER_BIT),z.colorMask(!1,!1,!1,!1),z.depthMask(!0),z.depthFunc(z.LESS),te.enable&&te.isTransparent()&&te.drawTransparent(Fe);for(var St=0;St<wr;++St){var Qt=Ee[St];Qt.isOpaque&&Qt.isOpaque()&&Qt.draw(Fe)}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),te.isTransparent()&&te.drawTransparent(Fe);for(var St=0;St<wr;++St){var Qt=Ee[St];Qt.isTransparent&&Qt.isTransparent()&&Qt.drawTransparent(Fe)}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 St=0;St<wr;++St)Ee[St].dirty=!1}}}function Jt(){ce._stopped||ce.contextLost||(Nt(),requestAnimationFrame(Jt))}return ce.enableMouseListeners(),Jt(),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,j=g.zNear,N=g.zFar,H=g.fovy,te=G/Z;P?(b(O,-te,te,-1,1,j,N),z._ortho=!0):(_(O,H,te,j,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]))}},4192:function(i){"use strict";i.exports=o;var a=32;function o(_,b){b<=4*a?s(0,b-1,_):v(0,b-1,_)}function s(_,b,p){for(var k=2*(_+1),E=_+1;E<=b;++E){for(var S=p[k++],L=p[k++],x=E,C=k-2;x-- >_;){var M=p[C-2],g=p[C-1];if(M<S)break;if(M===S&&g<L)break;p[C]=M,p[C+1]=g,C-=2}p[C]=S,p[C+1]=L}}function l(_,b,p){_*=2,b*=2;var k=p[_],E=p[_+1];p[_]=p[b],p[_+1]=p[b+1],p[b]=k,p[b+1]=E}function u(_,b,p){_*=2,b*=2,p[_]=p[b],p[_+1]=p[b+1]}function c(_,b,p,k){_*=2,b*=2,p*=2;var E=k[_],S=k[_+1];k[_]=k[b],k[_+1]=k[b+1],k[b]=k[p],k[b+1]=k[p+1],k[p]=E,k[p+1]=S}function f(_,b,p,k,E){_*=2,b*=2,E[_]=E[b],E[b]=p,E[_+1]=E[b+1],E[b+1]=k}function h(_,b,p){_*=2,b*=2;var k=p[_],E=p[b];return k<E?!1:k===E?p[_+1]>p[b+1]:!0}function d(_,b,p,k){_*=2;var E=k[_];return E<b?!0:E===b?k[_+1]<p:!1}function v(_,b,p){var k=(b-_+1)/6|0,E=_+k,S=b-k,L=_+b>>1,x=L-k,C=L+k,M=E,g=x,P=L,T=C,z=S,O=_+1,V=b-1,G=0;h(M,g,p)&&(G=M,M=g,g=G),h(T,z,p)&&(G=T,T=z,z=G),h(M,P,p)&&(G=M,M=P,P=G),h(g,P,p)&&(G=g,g=P,P=G),h(M,T,p)&&(G=M,M=T,T=G),h(P,T,p)&&(G=P,P=T,T=G),h(g,z,p)&&(G=g,g=z,z=G),h(g,P,p)&&(G=g,g=P,P=G),h(T,z,p)&&(G=T,T=z,z=G);for(var Z=p[2*g],j=p[2*g+1],N=p[2*T],H=p[2*T+1],te=2*M,oe=2*P,_e=2*z,Ee=2*E,Ce=2*L,me=2*S,ie=0;ie<2;++ie){var Se=p[te+ie],Le=p[oe+ie],Ae=p[_e+ie];p[Ee+ie]=Se,p[Ce+ie]=Le,p[me+ie]=Ae}u(x,_,p),u(C,b,p);for(var Fe=O;Fe<=V;++Fe)if(d(Fe,Z,j,p))Fe!==O&&l(Fe,O,p),++O;else if(!d(Fe,N,H,p))for(;;)if(d(V,N,H,p)){d(V,Z,j,p)?(c(Fe,O,V,p),++O,--V):(l(Fe,V,p),--V);break}else{if(--V<Fe)break;continue}f(_,O-1,Z,j,p),f(b,V+1,N,H,p),O-2-_<=a?s(_,O-2,p):v(_,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)}},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(k,E,S){this.slabs=k,this.coordinates=E,this.horizontal=S}var h=f.prototype;function d(k,E){return k.y-E}function v(k,E){for(var S=null;k;){var L=k.key,x,C;L[0][0]<L[1][0]?(x=L[0],C=L[1]):(x=L[1],C=L[0]);var M=u(x,C,E);if(M<0)k=k.left;else if(M>0)if(E[0]!==L[1][0])S=k,k=k.right;else{var g=v(k.right,E);if(g)return g;k=k.left}else{if(E[0]!==L[1][0])return k;var g=v(k.right,E);if(g)return g;k=k.left}}return S}h.castUp=function(k){var E=s.le(this.coordinates,k[0]);if(E<0)return-1;var S=this.slabs[E],L=v(this.slabs[E],k),x=-1;if(L&&(x=L.value),this.coordinates[E]===k[0]){var C=null;if(L&&(C=L.key),E>0){var M=v(this.slabs[E-1],k);M&&(C?c(M.key,C)>0&&(C=M.key,x=M.value):(x=M.value,C=M.key))}var g=this.horizontal[E];if(g.length>0){var P=s.ge(g,k[1],d);if(P<g.length){var T=g[P];if(k[1]===T.y){if(T.closed)return T.index;for(;P<g.length-1&&g[P+1].y===k[1];)if(P=P+1,T=g[P],T.closed)return T.index;if(T.y===k[1]&&!T.start){if(P=P+1,P>=g.length)return x;T=g[P]}}if(T.start)if(C){var z=u(C[0],C[1],[k[0],T.y]);C[0][0]>C[1][0]&&(z=-z),z>0&&(x=T.index)}else x=T.index;else T.y!==k[1]&&(x=T.index)}}}return x};function _(k,E,S,L){this.y=k,this.index=E,this.start=S,this.closed=L}function b(k,E,S,L){this.x=k,this.segment=E,this.create=S,this.index=L}function p(k){for(var E=k.length,S=2*E,L=new Array(S),x=0;x<E;++x){var C=k[x],M=C[0][0]<C[1][0];L[2*x]=new b(C[0][0],C,M,x),L[2*x+1]=new b(C[1][0],C,!M,x)}L.sort(function(j,N){var H=j.x-N.x;return H||(H=j.create-N.create,H)?H:Math.min(j.segment[0][1],j.segment[1][1])-Math.min(N.segment[0][1],N.segment[1][1])});for(var g=l(c),P=[],T=[],z=[],O=-1/0,x=0;x<S;){for(var V=L[x].x,G=[];x<S;){var Z=L[x];if(Z.x!==V)break;x+=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 _(Z.segment[0][1],Z.index,!0,!0)),G.push(new _(Z.segment[1][1],Z.index,!1,!1))):(G.push(new _(Z.segment[1][1],Z.index,!0,!1)),G.push(new _(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)}},4317:function(i){"use strict";function a(c,f){var h=Math.floor(f),d=f-h,v=0<=h&&h<c.shape[0],_=0<=h+1&&h+1<c.shape[0],b=v?+c.get(h):0,p=_?+c.get(h+1):0;return(1-d)*b+d*p}function o(c,f,h){var d=Math.floor(f),v=f-d,_=0<=d&&d<c.shape[0],b=0<=d+1&&d+1<c.shape[0],p=Math.floor(h),k=h-p,E=0<=p&&p<c.shape[1],S=0<=p+1&&p+1<c.shape[1],L=_&&E?c.get(d,p):0,x=_&&S?c.get(d,p+1):0,C=b&&E?c.get(d+1,p):0,M=b&&S?c.get(d+1,p+1):0;return(1-k)*((1-v)*L+v*C)+k*((1-v)*x+v*M)}function s(c,f,h,d){var v=Math.floor(f),_=f-v,b=0<=v&&v<c.shape[0],p=0<=v+1&&v+1<c.shape[0],k=Math.floor(h),E=h-k,S=0<=k&&k<c.shape[1],L=0<=k+1&&k+1<c.shape[1],x=Math.floor(d),C=d-x,M=0<=x&&x<c.shape[2],g=0<=x+1&&x+1<c.shape[2],P=b&&S&&M?c.get(v,k,x):0,T=b&&L&&M?c.get(v,k+1,x):0,z=p&&S&&M?c.get(v+1,k,x):0,O=p&&L&&M?c.get(v+1,k+1,x):0,V=b&&S&&g?c.get(v,k,x+1):0,G=b&&L&&g?c.get(v,k+1,x+1):0,Z=p&&S&&g?c.get(v+1,k,x+1):0,j=p&&L&&g?c.get(v+1,k+1,x+1):0;return(1-C)*((1-E)*((1-_)*P+_*z)+E*((1-_)*T+_*O))+C*((1-E)*((1-_)*V+_*Z)+E*((1-_)*G+_*j))}function l(c){var f=c.shape.length|0,h=new Array(f),d=new Array(f),v=new Array(f),_=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],_[b]=0<=h[b]+1&&h[b]+1<c.shape[b];var k=0,E,S,L;e:for(b=0;b<1<<f;++b){for(S=1,L=c.offset,E=0;E<f;++E)if(b&1<<E){if(!_[E])continue e;S*=d[E],L+=c.stride[E]*(h[E]+1)}else{if(!v[E])continue e;S*=1-d[E],L+=c.stride[E]*h[E]}k+=S*c.data[L]}return k}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},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}},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)}},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}},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,_){v=v||document.body,_=_||{};var b=[.01,1/0];"distanceLimits"in _&&(b[0]=_.distanceLimits[0],b[1]=_.distanceLimits[1]),"zoomMin"in _&&(b[0]=_.zoomMin),"zoomMax"in _&&(b[1]=_.zoomMax);var p=l({center:_.center||[0,0,0],up:_.up||[0,1,0],eye:_.eye||[0,0,10],mode:_.mode||"orbit",distanceLimits:b}),k=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],E=0,S=v.clientWidth,L=v.clientHeight,x={keyBindingMode:"rotate",enableWheel:!0,view:p,element:v,delay:_.delay||16,rotateSpeed:_.rotateSpeed||1,zoomSpeed:_.zoomSpeed||1,translateSpeed:_.translateSpeed||1,flipX:!!_.flipX,flipY:!!_.flipY,modes:p.modes,_ortho:_._ortho||_.projection&&_.projection.type==="orthographic"||!1,tick:function(){var C=s(),M=this.delay,g=C-2*M;p.idle(C-M),p.recalcMatrix(g),p.flush(C-(100+M*2));for(var P=!0,T=p.computedMatrix,z=0;z<16;++z)P=P&&k[z]===T[z],k[z]=T[z];var O=v.clientWidth===S&&v.clientHeight===L;return S=v.clientWidth,L=v.clientHeight,P?!O:(E=Math.exp(p.computedRadius[0]),!0)},lookAt:function(C,M,g){p.lookAt(p.lastT(),C,M,g)},rotate:function(C,M,g){p.rotate(p.lastT(),C,M,g)},pan:function(C,M,g){p.pan(p.lastT(),C,M,g)},translate:function(C,M,g){p.translate(p.lastT(),C,M,g)}};return Object.defineProperties(x,{matrix:{get:function(){return p.computedMatrix},set:function(C){return p.setMatrix(p.lastT(),C),p.computedMatrix},enumerable:!0},mode:{get:function(){return p.getMode()},set:function(C){var M=p.computedUp.slice(),g=p.computedEye.slice(),P=p.computedCenter.slice();if(p.setMode(C),C==="turntable"){var T=s();p._active.lookAt(T,g,P,M),p._active.lookAt(T+500,g,P,[0,0,1]),p._active.flush(T)}return p.getMode()},enumerable:!0},center:{get:function(){return p.computedCenter},set:function(C){return p.lookAt(p.lastT(),null,C),p.computedCenter},enumerable:!0},eye:{get:function(){return p.computedEye},set:function(C){return p.lookAt(p.lastT(),C),p.computedEye},enumerable:!0},up:{get:function(){return p.computedUp},set:function(C){return p.lookAt(p.lastT(),null,null,C),p.computedUp},enumerable:!0},distance:{get:function(){return E},set:function(C){return p.setDistance(p.lastT(),C),C},enumerable:!0},distanceLimits:{get:function(){return p.getDistanceLimits(b)},set:function(C){return p.setDistanceLimits(C),C},enumerable:!0}}),v.addEventListener("contextmenu",function(C){return C.preventDefault(),!1}),x._lastX=-1,x._lastY=-1,x._lastMods={shift:!1,control:!1,alt:!1,meta:!1},x.enableMouseListeners=function(){x.mouseListener=u(v,C),v.addEventListener("touchstart",function(M){var g=f(M.changedTouches[0],v);C(0,g[0],g[1],x._lastMods),C(1,g[0],g[1],x._lastMods)},h?{passive:!0}:!1),v.addEventListener("touchmove",function(M){var g=f(M.changedTouches[0],v);C(1,g[0],g[1],x._lastMods),M.preventDefault()},h?{passive:!1}:!1),v.addEventListener("touchend",function(M){C(0,x._lastX,x._lastY,x._lastMods)},h?{passive:!0}:!1);function C(M,g,P,T){var z=x.keyBindingMode;if(z!==!1){var O=z==="rotate",V=z==="pan",G=z==="zoom",Z=!!T.control,j=!!T.alt,N=!!T.shift,H=!!(M&1),te=!!(M&2),oe=!!(M&4),_e=1/v.clientHeight,Ee=_e*(g-x._lastX),Ce=_e*(P-x._lastY),me=x.flipX?1:-1,ie=x.flipY?1:-1,Se=Math.PI*x.rotateSpeed,Le=s();if(x._lastX!==-1&&x._lastY!==-1&&((O&&H&&!Z&&!j&&!N||H&&!Z&&!j&&N)&&p.rotate(Le,me*Se*Ee,-ie*Se*Ce,0),(V&&H&&!Z&&!j&&!N||te||H&&Z&&!j&&!N)&&p.pan(Le,-x.translateSpeed*Ee*E,x.translateSpeed*Ce*E,0),G&&H&&!Z&&!j&&!N||oe||H&&!Z&&j&&!N)){var Ae=-x.zoomSpeed*Ce/window.innerHeight*(Le-p.lastT())*100;p.pan(Le,0,0,E*(Math.exp(Ae)-1))}return x._lastX=g,x._lastY=P,x._lastMods=T,!0}}x.wheelListener=c(v,function(M,g){if(x.keyBindingMode!==!1&&x.enableWheel){var P=x.flipX?1:-1,T=x.flipY?1:-1,z=s();if(Math.abs(M)>Math.abs(g))p.rotate(z,0,0,-M*P*Math.PI*x.rotateSpeed/window.innerWidth);else if(!x._ortho){var O=-x.zoomSpeed*T*g/window.innerHeight*(z-p.lastT())/20;p.pan(z,0,0,E*(Math.exp(O)-1))}}},!0)},x.enableMouseListeners(),x}},4449:function(i,a,o){"use strict";var s=o(2762),l=o(8116),u=o(1493);i.exports=b;var c=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function f(p,k,E,S){this.gl=p,this.buffer=k,this.vao=E,this.shader=S,this.pixelRatio=1,this.bounds=[[-1e3,-1e3,-1e3],[1e3,1e3,1e3]],this.position=[0,0,0],this.lineWidth=[2,2,2],this.colors=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.enabled=[!0,!0,!0],this.drawSides=[!0,!0,!0],this.axes=null}var h=f.prototype,d=[0,0,0],v=[0,0,0],_=[0,0];h.isTransparent=function(){return!1},h.drawTransparent=function(p){},h.draw=function(p){var k=this.gl,E=this.vao,S=this.shader;E.bind(),S.bind();var L=p.model||c,x=p.view||c,C=p.projection||c,M;this.axes&&(M=this.axes.lastCubeProps.axis);for(var g=d,P=v,T=0;T<3;++T)M&&M[T]<0?(g[T]=this.bounds[0][T],P[T]=this.bounds[1][T]):(g[T]=this.bounds[1][T],P[T]=this.bounds[0][T]);_[0]=k.drawingBufferWidth,_[1]=k.drawingBufferHeight,S.uniforms.model=L,S.uniforms.view=x,S.uniforms.projection=C,S.uniforms.coordinates=[this.position,g,P],S.uniforms.colors=this.colors,S.uniforms.screenShape=_;for(var T=0;T<3;++T)S.uniforms.lineWidth=this.lineWidth[T]*this.pixelRatio,this.enabled[T]&&(E.draw(k.TRIANGLES,6,6*T),this.drawSides[T]&&E.draw(k.TRIANGLES,12,18+12*T));E.unbind()},h.update=function(p){p&&("bounds"in p&&(this.bounds=p.bounds),"position"in p&&(this.position=p.position),"lineWidth"in p&&(this.lineWidth=p.lineWidth),"colors"in p&&(this.colors=p.colors),"enabled"in p&&(this.enabled=p.enabled),"drawSides"in p&&(this.drawSides=p.drawSides))},h.dispose=function(){this.vao.dispose(),this.buffer.dispose(),this.shader.dispose()};function b(p,k){var E=[];function S(g,P,T,z,O,V){var G=[g,P,T,0,0,0,1];G[z+3]=1,G[z]=O,E.push.apply(E,G),G[6]=-1,E.push.apply(E,G),G[z]=V,E.push.apply(E,G),E.push.apply(E,G),G[6]=1,E.push.apply(E,G),G[z]=O,E.push.apply(E,G)}S(0,0,0,0,0,1),S(0,0,0,1,0,1),S(0,0,0,2,0,1),S(1,0,0,1,-1,1),S(1,0,0,2,-1,1),S(0,1,0,0,-1,1),S(0,1,0,2,-1,1),S(0,0,1,0,-1,1),S(0,0,1,1,-1,1);var L=s(p,E),x=l(p,[{type:p.FLOAT,buffer:L,size:3,offset:0,stride:28},{type:p.FLOAT,buffer:L,size:3,offset:12,stride:28},{type:p.FLOAT,buffer:L,size:1,offset:24,stride:28}]),C=u(p);C.attributes.position.location=0,C.attributes.color.location=1,C.attributes.weight.location=2;var M=new f(p,L,x,C);return M.update(k),M}},4494:function(i){i.exports=a;function a(o,s){return o[0]=1/s[0],o[1]=1/s[1],o[2]=1/s[2],o[3]=1/s[3],o}},4505:function(i,a,o){i.exports=o(5847)},4578:function(i){i.exports=a;function a(o,s,l,u,c){return o[0]=s,o[1]=l,o[2]=u,o[3]=c,o}},4623:function(i){"use strict";"use restrict";i.exports=a;function a(o){this.roots=new Array(o),this.ranks=new Array(o);for(var s=0;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])}}},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},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)}},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 _=c[v];h[v]=[d,_],d=_}return h}},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,_=-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]+_*u[p]+b*c[p];return h}return d*s+v*l+_*u[p]+b*c}function o(s,l,u,c,f,h){var d=f-1,v=f*f,_=d*d,b=(1+2*f)*_,p=f*_,k=v*(3-2*f),E=v*d;if(s.length){h||(h=new Array(s.length));for(var S=s.length-1;S>=0;--S)h[S]=b*s[S]+p*l[S]+k*u[S]+E*c[S];return h}return b*s+p*l+k*u+E*c}i.exports=o,i.exports.derivative=a},4772:function(i){i.exports=a;function a(o,s,l,u,c){var f=1/Math.tan(s/2),h=1/(u-c);return o[0]=f/l,o[1]=0,o[2]=0,o[3]=0,o[4]=0,o[5]=f,o[6]=0,o[7]=0,o[8]=0,o[9]=0,o[10]=(c+u)*h,o[11]=-1,o[12]=0,o[13]=0,o[14]=2*c*u*h,o[15]=0,o}},4793:function(i,a,o){"use strict";var s;function l(Ie,xe){if(!(Ie instanceof xe))throw new TypeError("Cannot call a class as a function")}function u(Ie,xe){for(var ke=0;ke<xe.length;ke++){var vt=xe[ke];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,ke){return xe&&u(Ie.prototype,xe),ke&&u(Ie,ke),Object.defineProperty(Ie,"prototype",{writable:!1}),Ie}function f(Ie){var xe=h(Ie,"string");return S(xe)=="symbol"?xe:xe+""}function h(Ie,xe){if(S(Ie)!="object"||!Ie)return Ie;var ke=Ie[Symbol.toPrimitive];if(ke!==void 0){var vt=ke.call(Ie,xe||"default");if(S(vt)!="object")return vt;throw new TypeError("@@toPrimitive must return a primitive value.")}return(xe==="string"?String:Number)(Ie)}function d(Ie,xe,ke){return xe=p(xe),v(Ie,b()?Reflect.construct(xe,ke||[],p(Ie).constructor):xe.apply(Ie,ke))}function v(Ie,xe){if(xe&&(S(xe)=="object"||typeof xe=="function"))return xe;if(xe!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return _(Ie)}function _(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 k(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(ke,vt){return ke.__proto__=vt,ke},E(Ie,xe)}function S(Ie){"@babel/helpers - typeof";return S=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},S(Ie)}var L=o(7507),x=o(3778),C=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;a.hp=T,s=_e,a.IS=50;var M=2147483647;s=M,T.TYPED_ARRAY_SUPPORT=g(),!T.TYPED_ARRAY_SUPPORT&&typeof console!="undefined"&&typeof console.error=="function"&&console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.");function g(){try{var Ie=new Uint8Array(1),xe={foo:function(){return 42}};return Object.setPrototypeOf(xe,Uint8Array.prototype),Object.setPrototypeOf(Ie,xe),Ie.foo()===42}catch(ke){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,ke){if(typeof Ie=="number"){if(typeof xe=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return G(Ie)}return z(Ie,xe,ke)}T.poolSize=8192;function z(Ie,xe,ke){if(typeof Ie=="string")return Z(Ie,xe);if(ArrayBuffer.isView(Ie))return N(Ie);if(Ie==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+S(Ie));if(Ge(Ie,ArrayBuffer)||Ie&&Ge(Ie.buffer,ArrayBuffer)||typeof SharedArrayBuffer!="undefined"&&(Ge(Ie,SharedArrayBuffer)||Ie&&Ge(Ie.buffer,SharedArrayBuffer)))return H(Ie,xe,ke);if(typeof Ie=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');var vt=Ie.valueOf&&Ie.valueOf();if(vt!=null&&vt!==Ie)return T.from(vt,xe,ke);var ir=te(Ie);if(ir)return ir;if(typeof Symbol!="undefined"&&Symbol.toPrimitive!=null&&typeof Ie[Symbol.toPrimitive]=="function")return T.from(Ie[Symbol.toPrimitive]("string"),xe,ke);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+S(Ie))}T.from=function(Ie,xe,ke){return z(Ie,xe,ke)},Object.setPrototypeOf(T.prototype,Uint8Array.prototype),Object.setPrototypeOf(T,Uint8Array);function O(Ie){if(typeof Ie!="number")throw new TypeError('"size" argument must be of type number');if(Ie<0)throw new RangeError('The value "'+Ie+'" is invalid for option "size"')}function V(Ie,xe,ke){return O(Ie),Ie<=0?P(Ie):xe!==void 0?typeof ke=="string"?P(Ie).fill(xe,ke):P(Ie).fill(xe):P(Ie)}T.alloc=function(Ie,xe,ke){return V(Ie,xe,ke)};function G(Ie){return O(Ie),P(Ie<0?0:oe(Ie)|0)}T.allocUnsafe=function(Ie){return G(Ie)},T.allocUnsafeSlow=function(Ie){return G(Ie)};function Z(Ie,xe){if((typeof xe!="string"||xe==="")&&(xe="utf8"),!T.isEncoding(xe))throw new TypeError("Unknown encoding: "+xe);var ke=Ee(Ie,xe)|0,vt=P(ke),ir=vt.write(Ie,xe);return ir!==ke&&(vt=vt.slice(0,ir)),vt}function j(Ie){for(var xe=Ie.length<0?0:oe(Ie.length)|0,ke=P(xe),vt=0;vt<xe;vt+=1)ke[vt]=Ie[vt]&255;return ke}function N(Ie){if(Ge(Ie,Uint8Array)){var xe=new Uint8Array(Ie);return H(xe.buffer,xe.byteOffset,xe.byteLength)}return j(Ie)}function H(Ie,xe,ke){if(xe<0||Ie.byteLength<xe)throw new RangeError('"offset" is outside of buffer bounds');if(Ie.byteLength<xe+(ke||0))throw new RangeError('"length" is outside of buffer bounds');var vt;return xe===void 0&&ke===void 0?vt=new Uint8Array(Ie):ke===void 0?vt=new Uint8Array(Ie,xe):vt=new Uint8Array(Ie,xe,ke),Object.setPrototypeOf(vt,T.prototype),vt}function te(Ie){if(T.isBuffer(Ie)){var xe=oe(Ie.length)|0,ke=P(xe);return ke.length===0||Ie.copy(ke,0,0,xe),ke}if(Ie.length!==void 0)return typeof Ie.length!="number"||Je(Ie.length)?P(0):j(Ie);if(Ie.type==="Buffer"&&Array.isArray(Ie.data))return j(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,ke){if(Ge(xe,Uint8Array)&&(xe=T.from(xe,xe.offset,xe.byteLength)),Ge(ke,Uint8Array)&&(ke=T.from(ke,ke.offset,ke.byteLength)),!T.isBuffer(xe)||!T.isBuffer(ke))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(xe===ke)return 0;for(var vt=xe.length,ir=ke.length,ar=0,vr=Math.min(vt,ir);ar<vr;++ar)if(xe[ar]!==ke[ar]){vt=xe[ar],ir=ke[ar];break}return vt<ir?-1:ir<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,ke){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(ke===void 0)for(ke=0,vt=0;vt<xe.length;++vt)ke+=xe[vt].length;var ir=T.allocUnsafe(ke),ar=0;for(vt=0;vt<xe.length;++vt){var vr=xe[vt];if(Ge(vr,Uint8Array))ar+vr.length>ir.length?(T.isBuffer(vr)||(vr=T.from(vr)),vr.copy(ir,ar)):Uint8Array.prototype.set.call(ir,vr,ar);else if(T.isBuffer(vr))vr.copy(ir,ar);else throw new TypeError('"list" argument must be an Array of Buffers');ar+=vr.length}return ir};function Ee(Ie,xe){if(T.isBuffer(Ie))return Ie.length;if(ArrayBuffer.isView(Ie)||Ge(Ie,ArrayBuffer))return Ie.byteLength;if(typeof Ie!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+S(Ie));var ke=Ie.length,vt=arguments.length>2&&arguments[2]===!0;if(!vt&&ke===0)return 0;for(var ir=!1;;)switch(xe){case"ascii":case"latin1":case"binary":return ke;case"utf8":case"utf-8":return Lr(Ie).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return ke*2;case"hex":return ke>>>1;case"base64":return Vr(Ie).length;default:if(ir)return vt?-1:Lr(Ie).length;xe=(""+xe).toLowerCase(),ir=!0}}T.byteLength=Ee;function Ce(Ie,xe,ke){var vt=!1;if((xe===void 0||xe<0)&&(xe=0),xe>this.length||((ke===void 0||ke>this.length)&&(ke=this.length),ke<=0)||(ke>>>=0,xe>>>=0,ke<=xe))return"";for(Ie||(Ie="utf8");;)switch(Ie){case"hex":return st(this,xe,ke);case"utf8":case"utf-8":return ce(this,xe,ke);case"ascii":return pt(this,xe,ke);case"latin1":case"binary":return Zt(this,xe,ke);case"base64":return Re(this,xe,ke);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return lt(this,xe,ke);default:if(vt)throw new TypeError("Unknown encoding: "+Ie);Ie=(Ie+"").toLowerCase(),vt=!0}}T.prototype._isBuffer=!0;function me(Ie,xe,ke){var vt=Ie[xe];Ie[xe]=Ie[ke],Ie[ke]=vt}T.prototype.swap16=function(){var xe=this.length;if(xe%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var ke=0;ke<xe;ke+=2)me(this,ke,ke+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 ke=0;ke<xe;ke+=4)me(this,ke,ke+3),me(this,ke+1,ke+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 ke=0;ke<xe;ke+=8)me(this,ke,ke+7),me(this,ke+1,ke+6),me(this,ke+2,ke+5),me(this,ke+3,ke+4);return this},T.prototype.toString=function(){var xe=this.length;return xe===0?"":arguments.length===0?ce(this,0,xe):Ce.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="",ke=a.IS;return xe=this.toString("hex",0,ke).replace(/(.{2})/g,"$1 ").trim(),this.length>ke&&(xe+=" ... "),"<Buffer "+xe+">"},C&&(T.prototype[C]=T.prototype.inspect),T.prototype.compare=function(xe,ke,vt,ir,ar){if(Ge(xe,Uint8Array)&&(xe=T.from(xe,xe.offset,xe.byteLength)),!T.isBuffer(xe))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+S(xe));if(ke===void 0&&(ke=0),vt===void 0&&(vt=xe?xe.length:0),ir===void 0&&(ir=0),ar===void 0&&(ar=this.length),ke<0||vt>xe.length||ir<0||ar>this.length)throw new RangeError("out of range index");if(ir>=ar&&ke>=vt)return 0;if(ir>=ar)return-1;if(ke>=vt)return 1;if(ke>>>=0,vt>>>=0,ir>>>=0,ar>>>=0,this===xe)return 0;for(var vr=ar-ir,ii=vt-ke,pi=Math.min(vr,ii),$r=this.slice(ir,ar),di=xe.slice(ke,vt),ji=0;ji<pi;++ji)if($r[ji]!==di[ji]){vr=$r[ji],ii=di[ji];break}return vr<ii?-1:ii<vr?1:0};function ie(Ie,xe,ke,vt,ir){if(Ie.length===0)return-1;if(typeof ke=="string"?(vt=ke,ke=0):ke>2147483647?ke=2147483647:ke<-2147483648&&(ke=-2147483648),ke=+ke,Je(ke)&&(ke=ir?0:Ie.length-1),ke<0&&(ke=Ie.length+ke),ke>=Ie.length){if(ir)return-1;ke=Ie.length-1}else if(ke<0)if(ir)ke=0;else return-1;if(typeof xe=="string"&&(xe=T.from(xe,vt)),T.isBuffer(xe))return xe.length===0?-1:Se(Ie,xe,ke,vt,ir);if(typeof xe=="number")return xe=xe&255,typeof Uint8Array.prototype.indexOf=="function"?ir?Uint8Array.prototype.indexOf.call(Ie,xe,ke):Uint8Array.prototype.lastIndexOf.call(Ie,xe,ke):Se(Ie,[xe],ke,vt,ir);throw new TypeError("val must be string, number or Buffer")}function Se(Ie,xe,ke,vt,ir){var ar=1,vr=Ie.length,ii=xe.length;if(vt!==void 0&&(vt=String(vt).toLowerCase(),vt==="ucs2"||vt==="ucs-2"||vt==="utf16le"||vt==="utf-16le")){if(Ie.length<2||xe.length<2)return-1;ar=2,vr/=2,ii/=2,ke/=2}function pi(wi,On){return ar===1?wi[On]:wi.readUInt16BE(On*ar)}var $r;if(ir){var di=-1;for($r=ke;$r<vr;$r++)if(pi(Ie,$r)===pi(xe,di===-1?0:$r-di)){if(di===-1&&(di=$r),$r-di+1===ii)return di*ar}else di!==-1&&($r-=$r-di),di=-1}else for(ke+ii>vr&&(ke=vr-ii),$r=ke;$r>=0;$r--){for(var ji=!0,In=0;In<ii;In++)if(pi(Ie,$r+In)!==pi(xe,In)){ji=!1;break}if(ji)return $r}return-1}T.prototype.includes=function(xe,ke,vt){return this.indexOf(xe,ke,vt)!==-1},T.prototype.indexOf=function(xe,ke,vt){return ie(this,xe,ke,vt,!0)},T.prototype.lastIndexOf=function(xe,ke,vt){return ie(this,xe,ke,vt,!1)};function Le(Ie,xe,ke,vt){ke=Number(ke)||0;var ir=Ie.length-ke;vt?(vt=Number(vt),vt>ir&&(vt=ir)):vt=ir;var ar=xe.length;vt>ar/2&&(vt=ar/2);var vr;for(vr=0;vr<vt;++vr){var ii=parseInt(xe.substr(vr*2,2),16);if(Je(ii))return vr;Ie[ke+vr]=ii}return vr}function Ae(Ie,xe,ke,vt){return dt(Lr(xe,Ie.length-ke),Ie,ke,vt)}function Fe(Ie,xe,ke,vt){return dt(ti(xe),Ie,ke,vt)}function Pe(Ie,xe,ke,vt){return dt(Vr(xe),Ie,ke,vt)}function ge(Ie,xe,ke,vt){return dt(Br(xe,Ie.length-ke),Ie,ke,vt)}T.prototype.write=function(xe,ke,vt,ir){if(ke===void 0)ir="utf8",vt=this.length,ke=0;else if(vt===void 0&&typeof ke=="string")ir=ke,vt=this.length,ke=0;else if(isFinite(ke))ke=ke>>>0,isFinite(vt)?(vt=vt>>>0,ir===void 0&&(ir="utf8")):(ir=vt,vt=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");var ar=this.length-ke;if((vt===void 0||vt>ar)&&(vt=ar),xe.length>0&&(vt<0||ke<0)||ke>this.length)throw new RangeError("Attempt to write outside buffer bounds");ir||(ir="utf8");for(var vr=!1;;)switch(ir){case"hex":return Le(this,xe,ke,vt);case"utf8":case"utf-8":return Ae(this,xe,ke,vt);case"ascii":case"latin1":case"binary":return Fe(this,xe,ke,vt);case"base64":return Pe(this,xe,ke,vt);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return ge(this,xe,ke,vt);default:if(vr)throw new TypeError("Unknown encoding: "+ir);ir=(""+ir).toLowerCase(),vr=!0}},T.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function Re(Ie,xe,ke){return xe===0&&ke===Ie.length?L.fromByteArray(Ie):L.fromByteArray(Ie.slice(xe,ke))}function ce(Ie,xe,ke){ke=Math.min(Ie.length,ke);for(var vt=[],ir=xe;ir<ke;){var ar=Ie[ir],vr=null,ii=ar>239?4:ar>223?3:ar>191?2:1;if(ir+ii<=ke){var pi=void 0,$r=void 0,di=void 0,ji=void 0;switch(ii){case 1:ar<128&&(vr=ar);break;case 2:pi=Ie[ir+1],(pi&192)===128&&(ji=(ar&31)<<6|pi&63,ji>127&&(vr=ji));break;case 3:pi=Ie[ir+1],$r=Ie[ir+2],(pi&192)===128&&($r&192)===128&&(ji=(ar&15)<<12|(pi&63)<<6|$r&63,ji>2047&&(ji<55296||ji>57343)&&(vr=ji));break;case 4:pi=Ie[ir+1],$r=Ie[ir+2],di=Ie[ir+3],(pi&192)===128&&($r&192)===128&&(di&192)===128&&(ji=(ar&15)<<18|(pi&63)<<12|($r&63)<<6|di&63,ji>65535&&ji<1114112&&(vr=ji))}}vr===null?(vr=65533,ii=1):vr>65535&&(vr-=65536,vt.push(vr>>>10&1023|55296),vr=56320|vr&1023),vt.push(vr),ir+=ii}return ut(vt)}var Ze=4096;function ut(Ie){var xe=Ie.length;if(xe<=Ze)return String.fromCharCode.apply(String,Ie);for(var ke="",vt=0;vt<xe;)ke+=String.fromCharCode.apply(String,Ie.slice(vt,vt+=Ze));return ke}function pt(Ie,xe,ke){var vt="";ke=Math.min(Ie.length,ke);for(var ir=xe;ir<ke;++ir)vt+=String.fromCharCode(Ie[ir]&127);return vt}function Zt(Ie,xe,ke){var vt="";ke=Math.min(Ie.length,ke);for(var ir=xe;ir<ke;++ir)vt+=String.fromCharCode(Ie[ir]);return vt}function st(Ie,xe,ke){var vt=Ie.length;(!xe||xe<0)&&(xe=0),(!ke||ke<0||ke>vt)&&(ke=vt);for(var ir="",ar=xe;ar<ke;++ar)ir+=je[Ie[ar]];return ir}function lt(Ie,xe,ke){for(var vt=Ie.slice(xe,ke),ir="",ar=0;ar<vt.length-1;ar+=2)ir+=String.fromCharCode(vt[ar]+vt[ar+1]*256);return ir}T.prototype.slice=function(xe,ke){var vt=this.length;xe=~~xe,ke=ke===void 0?vt:~~ke,xe<0?(xe+=vt,xe<0&&(xe=0)):xe>vt&&(xe=vt),ke<0?(ke+=vt,ke<0&&(ke=0)):ke>vt&&(ke=vt),ke<xe&&(ke=xe);var ir=this.subarray(xe,ke);return Object.setPrototypeOf(ir,T.prototype),ir};function Gt(Ie,xe,ke){if(Ie%1!==0||Ie<0)throw new RangeError("offset is not uint");if(Ie+xe>ke)throw new RangeError("Trying to access beyond buffer length")}T.prototype.readUintLE=T.prototype.readUIntLE=function(xe,ke,vt){xe=xe>>>0,ke=ke>>>0,vt||Gt(xe,ke,this.length);for(var ir=this[xe],ar=1,vr=0;++vr<ke&&(ar*=256);)ir+=this[xe+vr]*ar;return ir},T.prototype.readUintBE=T.prototype.readUIntBE=function(xe,ke,vt){xe=xe>>>0,ke=ke>>>0,vt||Gt(xe,ke,this.length);for(var ir=this[xe+--ke],ar=1;ke>0&&(ar*=256);)ir+=this[xe+--ke]*ar;return ir},T.prototype.readUint8=T.prototype.readUInt8=function(xe,ke){return xe=xe>>>0,ke||Gt(xe,1,this.length),this[xe]},T.prototype.readUint16LE=T.prototype.readUInt16LE=function(xe,ke){return xe=xe>>>0,ke||Gt(xe,2,this.length),this[xe]|this[xe+1]<<8},T.prototype.readUint16BE=T.prototype.readUInt16BE=function(xe,ke){return xe=xe>>>0,ke||Gt(xe,2,this.length),this[xe]<<8|this[xe+1]},T.prototype.readUint32LE=T.prototype.readUInt32LE=function(xe,ke){return xe=xe>>>0,ke||Gt(xe,4,this.length),(this[xe]|this[xe+1]<<8|this[xe+2]<<16)+this[xe+3]*16777216},T.prototype.readUint32BE=T.prototype.readUInt32BE=function(xe,ke){return xe=xe>>>0,ke||Gt(xe,4,this.length),this[xe]*16777216+(this[xe+1]<<16|this[xe+2]<<8|this[xe+3])},T.prototype.readBigUInt64LE=tt(function(xe){xe=xe>>>0,mt(xe,"offset");var ke=this[xe],vt=this[xe+7];(ke===void 0||vt===void 0)&&er(xe,this.length-8);var ir=ke+this[++xe]*Math.pow(2,8)+this[++xe]*Math.pow(2,16)+this[++xe]*Math.pow(2,24),ar=this[++xe]+this[++xe]*Math.pow(2,8)+this[++xe]*Math.pow(2,16)+vt*Math.pow(2,24);return BigInt(ir)+(BigInt(ar)<<BigInt(32))}),T.prototype.readBigUInt64BE=tt(function(xe){xe=xe>>>0,mt(xe,"offset");var ke=this[xe],vt=this[xe+7];(ke===void 0||vt===void 0)&&er(xe,this.length-8);var ir=ke*Math.pow(2,24)+this[++xe]*Math.pow(2,16)+this[++xe]*Math.pow(2,8)+this[++xe],ar=this[++xe]*Math.pow(2,24)+this[++xe]*Math.pow(2,16)+this[++xe]*Math.pow(2,8)+vt;return(BigInt(ir)<<BigInt(32))+BigInt(ar)}),T.prototype.readIntLE=function(xe,ke,vt){xe=xe>>>0,ke=ke>>>0,vt||Gt(xe,ke,this.length);for(var ir=this[xe],ar=1,vr=0;++vr<ke&&(ar*=256);)ir+=this[xe+vr]*ar;return ar*=128,ir>=ar&&(ir-=Math.pow(2,8*ke)),ir},T.prototype.readIntBE=function(xe,ke,vt){xe=xe>>>0,ke=ke>>>0,vt||Gt(xe,ke,this.length);for(var ir=ke,ar=1,vr=this[xe+--ir];ir>0&&(ar*=256);)vr+=this[xe+--ir]*ar;return ar*=128,vr>=ar&&(vr-=Math.pow(2,8*ke)),vr},T.prototype.readInt8=function(xe,ke){return xe=xe>>>0,ke||Gt(xe,1,this.length),this[xe]&128?(255-this[xe]+1)*-1:this[xe]},T.prototype.readInt16LE=function(xe,ke){xe=xe>>>0,ke||Gt(xe,2,this.length);var vt=this[xe]|this[xe+1]<<8;return vt&32768?vt|4294901760:vt},T.prototype.readInt16BE=function(xe,ke){xe=xe>>>0,ke||Gt(xe,2,this.length);var vt=this[xe+1]|this[xe]<<8;return vt&32768?vt|4294901760:vt},T.prototype.readInt32LE=function(xe,ke){return xe=xe>>>0,ke||Gt(xe,4,this.length),this[xe]|this[xe+1]<<8|this[xe+2]<<16|this[xe+3]<<24},T.prototype.readInt32BE=function(xe,ke){return xe=xe>>>0,ke||Gt(xe,4,this.length),this[xe]<<24|this[xe+1]<<16|this[xe+2]<<8|this[xe+3]},T.prototype.readBigInt64LE=tt(function(xe){xe=xe>>>0,mt(xe,"offset");var ke=this[xe],vt=this[xe+7];(ke===void 0||vt===void 0)&&er(xe,this.length-8);var ir=this[xe+4]+this[xe+5]*Math.pow(2,8)+this[xe+6]*Math.pow(2,16)+(vt<<24);return(BigInt(ir)<<BigInt(32))+BigInt(ke+this[++xe]*Math.pow(2,8)+this[++xe]*Math.pow(2,16)+this[++xe]*Math.pow(2,24))}),T.prototype.readBigInt64BE=tt(function(xe){xe=xe>>>0,mt(xe,"offset");var ke=this[xe],vt=this[xe+7];(ke===void 0||vt===void 0)&&er(xe,this.length-8);var ir=(ke<<24)+this[++xe]*Math.pow(2,16)+this[++xe]*Math.pow(2,8)+this[++xe];return(BigInt(ir)<<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,ke){return xe=xe>>>0,ke||Gt(xe,4,this.length),x.read(this,xe,!0,23,4)},T.prototype.readFloatBE=function(xe,ke){return xe=xe>>>0,ke||Gt(xe,4,this.length),x.read(this,xe,!1,23,4)},T.prototype.readDoubleLE=function(xe,ke){return xe=xe>>>0,ke||Gt(xe,8,this.length),x.read(this,xe,!0,52,8)},T.prototype.readDoubleBE=function(xe,ke){return xe=xe>>>0,ke||Gt(xe,8,this.length),x.read(this,xe,!1,52,8)};function Nt(Ie,xe,ke,vt,ir,ar){if(!T.isBuffer(Ie))throw new TypeError('"buffer" argument must be a Buffer instance');if(xe>ir||xe<ar)throw new RangeError('"value" argument is out of bounds');if(ke+vt>Ie.length)throw new RangeError("Index out of range")}T.prototype.writeUintLE=T.prototype.writeUIntLE=function(xe,ke,vt,ir){if(xe=+xe,ke=ke>>>0,vt=vt>>>0,!ir){var ar=Math.pow(2,8*vt)-1;Nt(this,xe,ke,vt,ar,0)}var vr=1,ii=0;for(this[ke]=xe&255;++ii<vt&&(vr*=256);)this[ke+ii]=xe/vr&255;return ke+vt},T.prototype.writeUintBE=T.prototype.writeUIntBE=function(xe,ke,vt,ir){if(xe=+xe,ke=ke>>>0,vt=vt>>>0,!ir){var ar=Math.pow(2,8*vt)-1;Nt(this,xe,ke,vt,ar,0)}var vr=vt-1,ii=1;for(this[ke+vr]=xe&255;--vr>=0&&(ii*=256);)this[ke+vr]=xe/ii&255;return ke+vt},T.prototype.writeUint8=T.prototype.writeUInt8=function(xe,ke,vt){return xe=+xe,ke=ke>>>0,vt||Nt(this,xe,ke,1,255,0),this[ke]=xe&255,ke+1},T.prototype.writeUint16LE=T.prototype.writeUInt16LE=function(xe,ke,vt){return xe=+xe,ke=ke>>>0,vt||Nt(this,xe,ke,2,65535,0),this[ke]=xe&255,this[ke+1]=xe>>>8,ke+2},T.prototype.writeUint16BE=T.prototype.writeUInt16BE=function(xe,ke,vt){return xe=+xe,ke=ke>>>0,vt||Nt(this,xe,ke,2,65535,0),this[ke]=xe>>>8,this[ke+1]=xe&255,ke+2},T.prototype.writeUint32LE=T.prototype.writeUInt32LE=function(xe,ke,vt){return xe=+xe,ke=ke>>>0,vt||Nt(this,xe,ke,4,4294967295,0),this[ke+3]=xe>>>24,this[ke+2]=xe>>>16,this[ke+1]=xe>>>8,this[ke]=xe&255,ke+4},T.prototype.writeUint32BE=T.prototype.writeUInt32BE=function(xe,ke,vt){return xe=+xe,ke=ke>>>0,vt||Nt(this,xe,ke,4,4294967295,0),this[ke]=xe>>>24,this[ke+1]=xe>>>16,this[ke+2]=xe>>>8,this[ke+3]=xe&255,ke+4};function Jt(Ie,xe,ke,vt,ir){It(xe,vt,ir,Ie,ke,7);var ar=Number(xe&BigInt(4294967295));Ie[ke++]=ar,ar=ar>>8,Ie[ke++]=ar,ar=ar>>8,Ie[ke++]=ar,ar=ar>>8,Ie[ke++]=ar;var vr=Number(xe>>BigInt(32)&BigInt(4294967295));return Ie[ke++]=vr,vr=vr>>8,Ie[ke++]=vr,vr=vr>>8,Ie[ke++]=vr,vr=vr>>8,Ie[ke++]=vr,ke}function sr(Ie,xe,ke,vt,ir){It(xe,vt,ir,Ie,ke,7);var ar=Number(xe&BigInt(4294967295));Ie[ke+7]=ar,ar=ar>>8,Ie[ke+6]=ar,ar=ar>>8,Ie[ke+5]=ar,ar=ar>>8,Ie[ke+4]=ar;var vr=Number(xe>>BigInt(32)&BigInt(4294967295));return Ie[ke+3]=vr,vr=vr>>8,Ie[ke+2]=vr,vr=vr>>8,Ie[ke+1]=vr,vr=vr>>8,Ie[ke]=vr,ke+8}T.prototype.writeBigUInt64LE=tt(function(xe){var ke=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return Jt(this,xe,ke,BigInt(0),BigInt("0xffffffffffffffff"))}),T.prototype.writeBigUInt64BE=tt(function(xe){var ke=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return sr(this,xe,ke,BigInt(0),BigInt("0xffffffffffffffff"))}),T.prototype.writeIntLE=function(xe,ke,vt,ir){if(xe=+xe,ke=ke>>>0,!ir){var ar=Math.pow(2,8*vt-1);Nt(this,xe,ke,vt,ar-1,-ar)}var vr=0,ii=1,pi=0;for(this[ke]=xe&255;++vr<vt&&(ii*=256);)xe<0&&pi===0&&this[ke+vr-1]!==0&&(pi=1),this[ke+vr]=(xe/ii>>0)-pi&255;return ke+vt},T.prototype.writeIntBE=function(xe,ke,vt,ir){if(xe=+xe,ke=ke>>>0,!ir){var ar=Math.pow(2,8*vt-1);Nt(this,xe,ke,vt,ar-1,-ar)}var vr=vt-1,ii=1,pi=0;for(this[ke+vr]=xe&255;--vr>=0&&(ii*=256);)xe<0&&pi===0&&this[ke+vr+1]!==0&&(pi=1),this[ke+vr]=(xe/ii>>0)-pi&255;return ke+vt},T.prototype.writeInt8=function(xe,ke,vt){return xe=+xe,ke=ke>>>0,vt||Nt(this,xe,ke,1,127,-128),xe<0&&(xe=255+xe+1),this[ke]=xe&255,ke+1},T.prototype.writeInt16LE=function(xe,ke,vt){return xe=+xe,ke=ke>>>0,vt||Nt(this,xe,ke,2,32767,-32768),this[ke]=xe&255,this[ke+1]=xe>>>8,ke+2},T.prototype.writeInt16BE=function(xe,ke,vt){return xe=+xe,ke=ke>>>0,vt||Nt(this,xe,ke,2,32767,-32768),this[ke]=xe>>>8,this[ke+1]=xe&255,ke+2},T.prototype.writeInt32LE=function(xe,ke,vt){return xe=+xe,ke=ke>>>0,vt||Nt(this,xe,ke,4,2147483647,-2147483648),this[ke]=xe&255,this[ke+1]=xe>>>8,this[ke+2]=xe>>>16,this[ke+3]=xe>>>24,ke+4},T.prototype.writeInt32BE=function(xe,ke,vt){return xe=+xe,ke=ke>>>0,vt||Nt(this,xe,ke,4,2147483647,-2147483648),xe<0&&(xe=4294967295+xe+1),this[ke]=xe>>>24,this[ke+1]=xe>>>16,this[ke+2]=xe>>>8,this[ke+3]=xe&255,ke+4},T.prototype.writeBigInt64LE=tt(function(xe){var ke=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return Jt(this,xe,ke,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))}),T.prototype.writeBigInt64BE=tt(function(xe){var ke=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return sr(this,xe,ke,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});function wr(Ie,xe,ke,vt,ir,ar){if(ke+vt>Ie.length)throw new RangeError("Index out of range");if(ke<0)throw new RangeError("Index out of range")}function cr(Ie,xe,ke,vt,ir){return xe=+xe,ke=ke>>>0,ir||wr(Ie,xe,ke,4,34028234663852886e22,-34028234663852886e22),x.write(Ie,xe,ke,vt,23,4),ke+4}T.prototype.writeFloatLE=function(xe,ke,vt){return cr(this,xe,ke,!0,vt)},T.prototype.writeFloatBE=function(xe,ke,vt){return cr(this,xe,ke,!1,vt)};function $e(Ie,xe,ke,vt,ir){return xe=+xe,ke=ke>>>0,ir||wr(Ie,xe,ke,8,17976931348623157e292,-17976931348623157e292),x.write(Ie,xe,ke,vt,52,8),ke+8}T.prototype.writeDoubleLE=function(xe,ke,vt){return $e(this,xe,ke,!0,vt)},T.prototype.writeDoubleBE=function(xe,ke,vt){return $e(this,xe,ke,!1,vt)},T.prototype.copy=function(xe,ke,vt,ir){if(!T.isBuffer(xe))throw new TypeError("argument should be a Buffer");if(vt||(vt=0),!ir&&ir!==0&&(ir=this.length),ke>=xe.length&&(ke=xe.length),ke||(ke=0),ir>0&&ir<vt&&(ir=vt),ir===vt||xe.length===0||this.length===0)return 0;if(ke<0)throw new RangeError("targetStart out of bounds");if(vt<0||vt>=this.length)throw new RangeError("Index out of range");if(ir<0)throw new RangeError("sourceEnd out of bounds");ir>this.length&&(ir=this.length),xe.length-ke<ir-vt&&(ir=xe.length-ke+vt);var ar=ir-vt;return this===xe&&typeof Uint8Array.prototype.copyWithin=="function"?this.copyWithin(ke,vt,ir):Uint8Array.prototype.set.call(xe,this.subarray(vt,ir),ke),ar},T.prototype.fill=function(xe,ke,vt,ir){if(typeof xe=="string"){if(typeof ke=="string"?(ir=ke,ke=0,vt=this.length):typeof vt=="string"&&(ir=vt,vt=this.length),ir!==void 0&&typeof ir!="string")throw new TypeError("encoding must be a string");if(typeof ir=="string"&&!T.isEncoding(ir))throw new TypeError("Unknown encoding: "+ir);if(xe.length===1){var ar=xe.charCodeAt(0);(ir==="utf8"&&ar<128||ir==="latin1")&&(xe=ar)}}else typeof xe=="number"?xe=xe&255:typeof xe=="boolean"&&(xe=Number(xe));if(ke<0||this.length<ke||this.length<vt)throw new RangeError("Out of range index");if(vt<=ke)return this;ke=ke>>>0,vt=vt===void 0?this.length:vt>>>0,xe||(xe=0);var vr;if(typeof xe=="number")for(vr=ke;vr<vt;++vr)this[vr]=xe;else{var ii=T.isBuffer(xe)?xe:T.from(xe,ir),pi=ii.length;if(pi===0)throw new TypeError('The value "'+xe+'" is invalid for argument "value"');for(vr=0;vr<vt-ke;++vr)this[vr+ke]=ii[vr%pi]}return this};var St={};function Qt(Ie,xe,ke){St[Ie]=function(vt){function ir(){var ar;return l(this,ir),ar=d(this,ir),Object.defineProperty(ar,"message",{value:xe.apply(ar,arguments),writable:!0,configurable:!0}),ar.name="".concat(ar.name," [").concat(Ie,"]"),ar.stack,delete ar.name,ar}return k(ir,vt),c(ir,[{key:"code",get:function(){return Ie},set:function(vr){Object.defineProperty(this,"code",{configurable:!0,enumerable:!0,value:vr,writable:!0})}},{key:"toString",value:function(){return"".concat(this.name," [").concat(Ie,"]: ").concat(this.message)}}])}(ke)}Qt("ERR_BUFFER_OUT_OF_BOUNDS",function(Ie){return Ie?"".concat(Ie," is outside of buffer bounds"):"Attempt to access memory outside buffer bounds"},RangeError),Qt("ERR_INVALID_ARG_TYPE",function(Ie,xe){return'The "'.concat(Ie,'" argument must be of type number. Received type ').concat(S(xe))},TypeError),Qt("ERR_OUT_OF_RANGE",function(Ie,xe,ke){var vt='The value of "'.concat(Ie,'" is out of range.'),ir=ke;return Number.isInteger(ke)&&Math.abs(ke)>Math.pow(2,32)?ir=Vt(String(ke)):typeof ke=="bigint"&&(ir=String(ke),(ke>Math.pow(BigInt(2),BigInt(32))||ke<-Math.pow(BigInt(2),BigInt(32)))&&(ir=Vt(ir)),ir+="n"),vt+=" It must be ".concat(xe,". Received ").concat(ir),vt},RangeError);function Vt(Ie){for(var xe="",ke=Ie.length,vt=Ie[0]==="-"?1:0;ke>=vt+4;ke-=3)xe="_".concat(Ie.slice(ke-3,ke)).concat(xe);return"".concat(Ie.slice(0,ke)).concat(xe)}function _t(Ie,xe,ke){mt(xe,"offset"),(Ie[xe]===void 0||Ie[xe+ke]===void 0)&&er(xe,Ie.length-(ke+1))}function It(Ie,xe,ke,vt,ir,ar){if(Ie>ke||Ie<xe){var vr=typeof xe=="bigint"?"n":"",ii;throw ar>3?xe===0||xe===BigInt(0)?ii=">= 0".concat(vr," and < 2").concat(vr," ** ").concat((ar+1)*8).concat(vr):ii=">= -(2".concat(vr," ** ").concat((ar+1)*8-1).concat(vr,") and < 2 ** ")+"".concat((ar+1)*8-1).concat(vr):ii=">= ".concat(xe).concat(vr," and <= ").concat(ke).concat(vr),new St.ERR_OUT_OF_RANGE("value",ii,Ie)}_t(vt,ir,ar)}function mt(Ie,xe){if(typeof Ie!="number")throw new St.ERR_INVALID_ARG_TYPE(xe,"number",Ie)}function er(Ie,xe,ke){throw Math.floor(Ie)!==Ie?(mt(Ie,ke),new St.ERR_OUT_OF_RANGE(ke||"offset","an integer",Ie)):xe<0?new St.ERR_BUFFER_OUT_OF_BOUNDS:new St.ERR_OUT_OF_RANGE(ke||"offset",">= ".concat(ke?1:0," and <= ").concat(xe),Ie)}var lr=/[^+/0-9A-Za-z-_]/g;function Tr(Ie){if(Ie=Ie.split("=")[0],Ie=Ie.trim().replace(lr,""),Ie.length<2)return"";for(;Ie.length%4!==0;)Ie=Ie+"=";return Ie}function Lr(Ie,xe){xe=xe||1/0;for(var ke,vt=Ie.length,ir=null,ar=[],vr=0;vr<vt;++vr){if(ke=Ie.charCodeAt(vr),ke>55295&&ke<57344){if(!ir){if(ke>56319){(xe-=3)>-1&&ar.push(239,191,189);continue}else if(vr+1===vt){(xe-=3)>-1&&ar.push(239,191,189);continue}ir=ke;continue}if(ke<56320){(xe-=3)>-1&&ar.push(239,191,189),ir=ke;continue}ke=(ir-55296<<10|ke-56320)+65536}else ir&&(xe-=3)>-1&&ar.push(239,191,189);if(ir=null,ke<128){if((xe-=1)<0)break;ar.push(ke)}else if(ke<2048){if((xe-=2)<0)break;ar.push(ke>>6|192,ke&63|128)}else if(ke<65536){if((xe-=3)<0)break;ar.push(ke>>12|224,ke>>6&63|128,ke&63|128)}else if(ke<1114112){if((xe-=4)<0)break;ar.push(ke>>18|240,ke>>12&63|128,ke>>6&63|128,ke&63|128)}else throw new Error("Invalid code point")}return ar}function ti(Ie){for(var xe=[],ke=0;ke<Ie.length;++ke)xe.push(Ie.charCodeAt(ke)&255);return xe}function Br(Ie,xe){for(var ke,vt,ir,ar=[],vr=0;vr<Ie.length&&!((xe-=2)<0);++vr)ke=Ie.charCodeAt(vr),vt=ke>>8,ir=ke%256,ar.push(ir),ar.push(vt);return ar}function Vr(Ie){return L.toByteArray(Tr(Ie))}function dt(Ie,xe,ke,vt){var ir;for(ir=0;ir<vt&&!(ir+ke>=xe.length||ir>=Ie.length);++ir)xe[ir+ke]=Ie[ir];return ir}function Ge(Ie,xe){return Ie instanceof xe||Ie!=null&&Ie.constructor!=null&&Ie.constructor.name!=null&&Ie.constructor.name===xe.name}function Je(Ie){return Ie!==Ie}var je=function(){for(var Ie="0123456789abcdef",xe=new Array(256),ke=0;ke<16;++ke)for(var vt=ke*16,ir=0;ir<16;++ir)xe[vt+ir]=Ie[ke]+Ie[ir];return xe}();function tt(Ie){return typeof BigInt=="undefined"?xt:Ie}function xt(){throw new Error("BigInt not supported")}},4844:function(i){i.exports=a;function a(o,s,l,u){return o[0]=s[0]+l[0]*u,o[1]=s[1]+l[1]*u,o[2]=s[2]+l[2]*u,o[3]=s[3]+l[3]*u,o}},4905:function(i,a,o){var s=o(5874);i.exports=l;function l(u,c){var f=s(c),h=[];return h=h.concat(f(u)),h=h.concat(f(null)),h}},4935:function(i,a,o){"use strict";i.exports=k;var s=o(2762),l=o(8116),u=o(4359),c=o(1879).Q,f=window||process.global||{},h=f.__TEXT_CACHE||{};f.__TEXT_CACHE={};var d=3;function v(E,S,L,x){this.gl=E,this.shader=S,this.buffer=L,this.vao=x,this.tickOffset=this.tickCount=this.labelOffset=this.labelCount=null}var _=v.prototype,b=[0,0];_.bind=function(E,S,L,x){this.vao.bind(),this.shader.bind();var C=this.shader.uniforms;C.model=E,C.view=S,C.projection=L,C.pixelScale=x,b[0]=this.gl.drawingBufferWidth,b[1]=this.gl.drawingBufferHeight,this.shader.uniforms.resolution=b},_.unbind=function(){this.vao.unbind()},_.update=function(E,S,L,x,C){var M=[];function g(H,te,oe,_e,Ee,Ce){var me=[oe.style,oe.weight,oe.variant,oe.family].join("_"),ie=h[me];ie||(ie=h[me]={});var Se=ie[te];Se||(Se=ie[te]=p(te,{triangles:!0,font:oe.family,fontStyle:oe.style,fontWeight:oe.weight,fontVariant:oe.variant,textAlign:"center",textBaseline:"middle",lineSpacing:Ee,styletags:Ce}));for(var Le=(_e||12)/12,Ae=Se.positions,Fe=Se.cells,Pe=0,ge=Fe.length;Pe<ge;++Pe)for(var Re=Fe[Pe],ce=2;ce>=0;--ce){var Ze=Ae[Re[ce]];M.push(Le*Ze[0],-Le*Ze[1],H)}}for(var P=[0,0,0],T=[0,0,0],z=[0,0,0],O=[0,0,0],V=1.25,G={breaklines:!0,bolds:!0,italics:!0,subscripts:!0,superscripts:!0},Z=0;Z<3;++Z){z[Z]=M.length/d|0,g(.5*(E[0][Z]+E[1][Z]),S[Z],L[Z],12,V,G),O[Z]=(M.length/d|0)-z[Z],P[Z]=M.length/d|0;for(var j=0;j<x[Z].length;++j)if(x[Z][j].text){var N={family:x[Z][j].font||C[Z].family,style:C[Z].fontStyle||C[Z].style,weight:C[Z].fontWeight||C[Z].weight,variant:C[Z].fontVariant||C[Z].variant};g(x[Z][j].x,x[Z][j].text,N,x[Z][j].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},_.drawTicks=function(E,S,L,x,C,M,g,P){this.tickCount[E]&&(this.shader.uniforms.axis=M,this.shader.uniforms.color=C,this.shader.uniforms.angle=L,this.shader.uniforms.scale=S,this.shader.uniforms.offset=x,this.shader.uniforms.alignDir=g,this.shader.uniforms.alignOpt=P,this.vao.draw(this.gl.TRIANGLES,this.tickCount[E],this.tickOffset[E]))},_.drawLabel=function(E,S,L,x,C,M,g,P){this.labelCount[E]&&(this.shader.uniforms.axis=M,this.shader.uniforms.color=C,this.shader.uniforms.angle=L,this.shader.uniforms.scale=S,this.shader.uniforms.offset=x,this.shader.uniforms.alignDir=g,this.shader.uniforms.alignOpt=P,this.vao.draw(this.gl.TRIANGLES,this.labelCount[E],this.labelOffset[E]))},_.dispose=function(){this.shader.dispose(),this.vao.dispose(),this.buffer.dispose()};function p(E,S){try{return u(E,S)}catch(L){return console.warn('error vectorizing text:"'+E+'" error:',L),{cells:[],positions:[]}}}function k(E,S,L,x,C,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(S,L,x,C,M),z}},5023:function(i,a,o){"use strict";var s=o(2478);i.exports=d;function l(v,_,b,p,k,E,S){this.cells=v,this.neighbor=_,this.flags=p,this.constraint=b,this.active=k,this.next=E,this.boundary=S}var u=l.prototype;function c(v,_){return v[0]-_[0]||v[1]-_[1]||v[2]-_[2]}u.locate=function(){var v=[0,0,0];return function(_,b,p){var k=_,E=b,S=p;return b<p?b<_&&(k=b,E=p,S=_):p<_&&(k=p,E=_,S=b),k<0?-1:(v[0]=k,v[1]=E,v[2]=S,s.eq(this.cells,v,c))}}();function f(v,_){for(var b=v.cells(),p=b.length,k=0;k<p;++k){var E=b[k],S=E[0],L=E[1],x=E[2];L<x?L<S&&(E[0]=L,E[1]=x,E[2]=S):x<S&&(E[0]=x,E[1]=S,E[2]=L)}b.sort(c);for(var C=new Array(p),k=0;k<C.length;++k)C[k]=0;var M=[],g=[],P=new Array(3*p),T=new Array(3*p),z=null;_&&(z=[]);for(var O=new l(b,P,T,C,M,g,z),k=0;k<p;++k)for(var E=b[k],V=0;V<3;++V){var S=E[V],L=E[(V+1)%3],G=P[3*k+V]=O.locate(L,S,v.opposite(L,S)),Z=T[3*k+V]=v.isConstraint(S,L);G<0&&(Z?g.push(k):(M.push(k),C[k]=1),_&&z.push([L,S,-1]))}return O}function h(v,_,b){for(var p=0,k=0;k<v.length;++k)_[k]===b&&(v[p++]=v[k]);return v.length=p,v}function d(v,_,b){var p=f(v,b);if(_===0)return b?p.cells.concat(p.boundary):p.cells;for(var k=1,E=p.active,S=p.next,L=p.flags,x=p.cells,C=p.constraint,M=p.neighbor;E.length>0||S.length>0;){for(;E.length>0;){var g=E.pop();if(L[g]!==-k){L[g]=k;for(var P=x[g],T=0;T<3;++T){var z=M[3*g+T];z>=0&&L[z]===0&&(C[3*g+T]?S.push(z):(E.push(z),L[z]=k))}}}var O=S;S=E,E=O,S.length=0,k=-k}var V=h(x,L,_);return b?V.concat(p.boundary):V}},5033:function(i){"use strict";i.exports=a;function a(o,s,l){var u=s||0,c=l||1;return[[o[12]+o[0],o[13]+o[1],o[14]+o[2],o[15]+o[3]],[o[12]-o[0],o[13]-o[1],o[14]-o[2],o[15]-o[3]],[o[12]+o[4],o[13]+o[5],o[14]+o[6],o[15]+o[7]],[o[12]-o[4],o[13]-o[5],o[14]-o[6],o[15]-o[7]],[u*o[12]+o[8],u*o[13]+o[9],u*o[14]+o[10],u*o[15]+o[11]],[c*o[12]-o[8],c*o[13]-o[9],c*o[14]-o[10],c*o[15]-o[11]]]}},5085:function(i,a,o){i.exports=k;var s=o(3250)[3],l=o(4209),u=o(3352),c=o(2478);function f(){return!0}function h(E){return function(S,L){var x=E[S];return x?!!x.queryPoint(L,f):!1}}function d(E){for(var S={},L=0;L<E.length;++L){var x=E[L],C=x[0][0],M=x[0][1],g=x[1][1],P=[Math.min(M,g),Math.max(M,g)];C in S?S[C].push(P):S[C]=[P]}for(var T={},z=Object.keys(S),L=0;L<z.length;++L){var O=S[z[L]];T[z[L]]=u(O)}return h(T)}function v(E,S){return function(L){var x=c.le(S,L[0]);if(x<0)return 1;var C=E[x];if(!C)if(x>0&&S[x]===L[0])C=E[x-1];else return 1;for(var M=1;C;){var g=C.key,P=s(L,g[0],g[1]);if(g[0][0]<g[1][0])if(P<0)C=C.left;else if(P>0)M=-1,C=C.right;else return 0;else if(P>0)C=C.left;else if(P<0)M=1,C=C.right;else return 0}return M}}function _(E){return 1}function b(E){return function(L){return E(L[0],L[1])?0:1}}function p(E,S){return function(x){return E(x[0],x[1])?0:S(x)}}function k(E){for(var S=E.length,L=[],x=[],C=0,M=0;M<S;++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]?x.push([O,V]):L.push([O,V])}if(L.length===0)return x.length===0?_:b(d(x));var G=l(L),Z=v(G.slabs,G.coordinates);return x.length===0?Z:p(d(x),Z)}},5091:function(i,a,o){"use strict";a.shader=k,a.program=E;var s=o(8866),l=o(2992),u=typeof WeakMap=="undefined"?o(606):WeakMap,c=new u,f=0;function h(S,L,x,C,M,g,P){this.id=S,this.src=L,this.type=x,this.shader=C,this.count=g,this.programs=[],this.cache=P}h.prototype.dispose=function(){if(--this.count===0){for(var S=this.cache,L=S.gl,x=this.programs,C=0,M=x.length;C<M;++C){var g=S.programs[x[C]];g&&(delete S.programs[C],L.deleteProgram(g))}L.deleteShader(this.shader),delete S.shaders[this.type===L.FRAGMENT_SHADER|0][this.src]}};function d(S){this.gl=S,this.shaders=[{},{}],this.programs={}}var v=d.prototype;function _(S,L,x){var C=S.createShader(L);if(S.shaderSource(C,x),S.compileShader(C),!S.getShaderParameter(C,S.COMPILE_STATUS)){var M=S.getShaderInfoLog(C);try{var g=l(M,x,L)}catch(P){throw console.warn("Failed to format compiler error: "+P),new s(M,`Error compiling shader:
`+M)}throw new s(M,g.short,g.long)}return C}v.getShaderReference=function(S,L){var x=this.gl,C=this.shaders[S===x.FRAGMENT_SHADER|0],M=C[L];if(!M||!x.isShader(M.shader)){var g=_(x,S,L);M=C[L]=new h(f++,L,S,g,[],1,this)}else M.count+=1;return M};function b(S,L,x,C,M){var g=S.createProgram();S.attachShader(g,L),S.attachShader(g,x);for(var P=0;P<C.length;++P)S.bindAttribLocation(g,M[P],C[P]);if(S.linkProgram(g),!S.getProgramParameter(g,S.LINK_STATUS)){var T=S.getProgramInfoLog(g);throw new s(T,"Error linking program: "+T)}return g}v.getProgram=function(S,L,x,C){var M=[S.id,L.id,x.join(":"),C.join(":")].join("@"),g=this.programs[M];return(!g||!this.gl.isProgram(g))&&(this.programs[M]=g=b(this.gl,S.shader,L.shader,x,C),S.programs.push(M),L.programs.push(M)),g};function p(S){var L=c.get(S);return L||(L=new d(S),c.set(S,L)),L}function k(S,L,x){return p(S).getShaderReference(L,x)}function E(S,L,x,C,M){return p(S).getProgram(L,x,C,M)}},5093:function(i){i.exports=a;function a(o,s){return o[0]=-s[0],o[1]=-s[1],o[2]=-s[2],o}},5137:function(i,a,o){i.exports=l;var s=o(1091)();function l(u,c,f,h,d,v){var _,b;for(c||(c=3),f||(f=0),h?b=Math.min(h*c+f,u.length):b=u.length,_=f;_<b;_+=c)s[0]=u[_],s[1]=u[_+1],s[2]=u[_+2],d(s,s,v),u[_]=s[0],u[_+1]=s[1],u[_+2]=s[2];return u}},5171:function(i,a,o){var s=o(737);i.exports=function(u){return s[u]}},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}},5202:function(i,a,o){"use strict";var s=o(1944),l=o(8210);i.exports=f,i.exports.positive=h,i.exports.negative=d;function u(v,_){var b=l(s(v,_),[_[_.length-1]]);return b[b.length-1]}function c(v,_,b,p){var k=p-_,E=-_/k;E<0?E=0:E>1&&(E=1);for(var S=1-E,L=v.length,x=new Array(L),C=0;C<L;++C)x[C]=E*v[C]+S*b[C];return x}function f(v,_){for(var b=[],p=[],k=u(v[v.length-1],_),E=v[v.length-1],S=v[0],L=0;L<v.length;++L,E=S){S=v[L];var x=u(S,_);if(k<0&&x>0||k>0&&x<0){var C=c(E,x,S,k);b.push(C),p.push(C.slice())}x<0?p.push(S.slice()):x>0?b.push(S.slice()):(b.push(S.slice()),p.push(S.slice())),k=x}return{positive:b,negative:p}}function h(v,_){for(var b=[],p=u(v[v.length-1],_),k=v[v.length-1],E=v[0],S=0;S<v.length;++S,k=E){E=v[S];var L=u(E,_);(p<0&&L>0||p>0&&L<0)&&b.push(c(k,L,E,p)),L>=0&&b.push(E.slice()),p=L}return b}function d(v,_){for(var b=[],p=u(v[v.length-1],_),k=v[v.length-1],E=v[0],S=0;S<v.length;++S,k=E){E=v[S];var L=u(E,_);(p<0&&L>0||p>0&&L<0)&&b.push(c(k,L,E,p)),L<=0&&b.push(E.slice()),p=L}return b}},5219:function(i){"use strict";i.exports=function(a){for(var o=a.length,s,l=0;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}},5250:function(i){"use strict";i.exports=o;var a=+(Math.pow(2,27)+1);function o(s,l,u){var c=s*l,f=a*s,h=f-s,d=f-h,v=s-d,_=a*l,b=_-l,p=_-b,k=l-p,E=c-d*p,S=E-v*p,L=S-d*k,x=v*k-L;return u?(u[0]=x,u[1]=c,u):[x,c]}},5298:function(i,a){"use strict";var o={"float64,2,1,0":function(){return function(v,_,b,p,k){var E=v[0],S=v[1],L=v[2],x=b[0],C=b[1],M=b[2];p|=0;var g=0,P=0,T=0,z=M,O=C-L*M,V=x-S*C;for(T=0;T<E;++T){for(P=0;P<S;++P){for(g=0;g<L;++g)_[p]/=k,p+=z;p+=O}p+=V}}},"uint8,2,0,1,float64,2,1,0":function(){return function(v,_,b,p,k,E,S,L){var x=v[0],C=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,S|=0;for(var G=p,Z=S,j=v[0]|0;j>0;){j<64?(x=j,j=0):(x=64,j-=64);for(var N=v[1]|0;N>0;){N<64?(C=N,N=0):(C=64,N-=64),p=G+j*g+N*P,S=Z+j*z+N*O;var H=0,te=0,oe=0,_e=T,Ee=g-M*T,Ce=P-x*g,me=V,ie=z-M*V,Se=O-x*z;for(oe=0;oe<C;++oe){for(te=0;te<x;++te){for(H=0;H<M;++H)_[p]=k[S]*L,p+=_e,S+=me;p+=Ee,S+=ie}p+=Ce,S+=Se}}}}},"float32,1,0,float32,1,0":function(){return function(v,_,b,p,k,E,S){var L=v[0],x=v[1],C=b[0],M=b[1],g=E[0],P=E[1];p|=0,S|=0;var T=0,z=0,O=M,V=C-x*M,G=P,Z=g-x*P;for(z=0;z<L;++z){for(T=0;T<x;++T)_[p]=k[S],p+=O,S+=G;p+=V,S+=Z}}},"float32,1,0,float32,0,1":function(){return function(v,_,b,p,k,E,S){var L=v[0],x=v[1],C=b[0],M=b[1],g=E[0],P=E[1];p|=0,S|=0;for(var T=p,z=S,O=v[1]|0;O>0;){O<64?(x=O,O=0):(x=64,O-=64);for(var V=v[0]|0;V>0;){V<64?(L=V,V=0):(L=64,V-=64),p=T+O*M+V*C,S=z+O*P+V*g;var G=0,Z=0,j=M,N=C-x*M,H=P,te=g-x*P;for(Z=0;Z<L;++Z){for(G=0;G<x;++G)_[p]=k[S],p+=j,S+=H;p+=N,S+=te}}}}},"uint8,2,0,1,uint8,1,2,0":function(){return function(v,_,b,p,k,E,S){var L=v[0],x=v[1],C=v[2],M=b[0],g=b[1],P=b[2],T=E[0],z=E[1],O=E[2];p|=0,S|=0;for(var V=p,G=S,Z=v[2]|0;Z>0;){Z<64?(C=Z,Z=0):(C=64,Z-=64);for(var j=v[0]|0;j>0;){j<64?(L=j,j=0):(L=64,j-=64);for(var N=v[1]|0;N>0;){N<64?(x=N,N=0):(x=64,N-=64),p=V+Z*P+j*M+N*g,S=G+Z*O+j*T+N*z;var H=0,te=0,oe=0,_e=P,Ee=M-C*P,Ce=g-L*M,me=O,ie=T-C*O,Se=z-L*T;for(oe=0;oe<x;++oe){for(te=0;te<L;++te){for(H=0;H<C;++H)_[p]=k[S],p+=_e,S+=me;p+=Ee,S+=ie}p+=Ce,S+=Se}}}}}},"uint8,2,0,1,array,2,0,1":function(){return function(v,_,b,p,k,E,S){var L=v[0],x=v[1],C=v[2],M=b[0],g=b[1],P=b[2],T=E[0],z=E[1],O=E[2];p|=0,S|=0;var V=0,G=0,Z=0,j=P,N=M-C*P,H=g-L*M,te=O,oe=T-C*O,_e=z-L*T;for(Z=0;Z<x;++Z){for(G=0;G<L;++G){for(V=0;V<C;++V)_[p]=k[S],p+=j,S+=te;p+=N,S+=oe}p+=H,S+=_e}}}};function s(d,v){var _=v.join(","),b=o[_];return b()}var l=s,u={mul:function(d){var v={};return function(b,p,k){var E=b.dtype,S=b.order,L=p.dtype,x=p.order,C=k.dtype,M=k.order,g=[E,S.join(),L,x.join(),C,M.join()].join(),P=v[g];return P||(v[g]=P=d([E,S,L,x,C,M])),P(b.shape.slice(0),b.data,b.stride,b.offset|0,p.data,p.stride,p.offset|0,k.data,k.stride,k.offset|0)}},muls:function(d){var v={};return function(b,p,k){var E=b.dtype,S=b.order,L=p.dtype,x=p.order,C=[E,S.join(),L,x.join()].join(),M=v[C];return M||(v[C]=M=d([E,S,L,x])),M(b.shape.slice(0),b.data,b.stride,b.offset|0,p.data,p.stride,p.offset|0,k)}},mulseq:function(d){var v={};return function(b,p){var k=b.dtype,E=b.order,S=[k,E.join()].join(),L=v[S];return L||(v[S]=L=d([k,E])),L(b.shape.slice(0),b.data,b.stride,b.offset|0,p)}},div:function(d){var v={};return function(b,p,k){var E=b.dtype,S=b.order,L=p.dtype,x=p.order,C=k.dtype,M=k.order,g=[E,S.join(),L,x.join(),C,M.join()].join(),P=v[g];return P||(v[g]=P=d([E,S,L,x,C,M])),P(b.shape.slice(0),b.data,b.stride,b.offset|0,p.data,p.stride,p.offset|0,k.data,k.stride,k.offset|0)}},divs:function(d){var v={};return function(b,p,k){var E=b.dtype,S=b.order,L=p.dtype,x=p.order,C=[E,S.join(),L,x.join()].join(),M=v[C];return M||(v[C]=M=d([E,S,L,x])),M(b.shape.slice(0),b.data,b.stride,b.offset|0,p.data,p.stride,p.offset|0,k)}},divseq:function(d){var v={};return function(b,p){var k=b.dtype,E=b.order,S=[k,E.join()].join(),L=v[S];return L||(v[S]=L=d([k,E])),L(b.shape.slice(0),b.data,b.stride,b.offset|0,p)}},assign:function(d){var v={};return function(b,p){var k=b.dtype,E=b.order,S=p.dtype,L=p.order,x=[k,E.join(),S,L.join()].join(),C=v[x];return C||(v[x]=C=d([k,E,S,L])),C(b.shape.slice(0),b.data,b.stride,b.offset|0,p.data,p.stride,p.offset|0)}}};function c(d){var v=u[d.funcName];return v(l.bind(void 0,d))}function f(d){return c({funcName:d.funcName})}var h={mul:"*",div:"/"};(function(){for(var d in h)a[d]=f({funcName:d}),a[d+"s"]=f({funcName:d+"s"}),a[d+"seq"]=f({funcName:d+"seq"})})(),a.assign=f({funcName:"assign"})},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,_,b){this.gl=d,this.buffer=v,this.vao=_,this.shader=b}var f=c.prototype;f.draw=function(d,v,_,b,p,k){for(var E=!1,S=0;S<3;++S)E=E||p[S];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:_,bounds:b,enable:p,colors:k},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=[],_=[],b=0,p=0;p<3;++p)for(var k=(p+1)%3,E=(p+2)%3,S=[0,0,0],L=[0,0,0],x=-1;x<=1;x+=2){_.push(b,b+2,b+1,b+1,b+2,b+3),S[p]=x,L[p]=x;for(var C=-1;C<=1;C+=2){S[k]=C;for(var M=-1;M<=1;M+=2)S[E]=M,v.push(S[0],S[1],S[2],L[0],L[1],L[2]),b+=1}var g=k;k=E,E=g}var P=s(d,new Float32Array(v)),T=s(d,new Uint16Array(_),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)}},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}},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}},5445:function(i,a,o){"use strict";i.exports=L;var s=o(5033),l=o(5202),u=o(6429),c=o(6760),f=o(5665),h=o(5352),d=new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]),v=new Float32Array(16);function _(x,C,M){this.lo=x,this.hi=C,this.pixelsPerDataUnit=M}var b=[0,0,0,1],p=[0,0,0,1];function k(x,C,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,C),O[3]<0&&(x[T]=1/0),z[T]-=1,h(z,z,C),z[3]<0&&(x[T]=1/0);var G=(z[0]/z[3]-O[0]/O[3])*g,Z=(z[1]/z[3]-O[1]/O[3])*P;x[T]=.25*Math.sqrt(G*G+Z*Z)}return x}var E=[new _(1/0,-1/0,1/0),new _(1/0,-1/0,1/0),new _(1/0,-1/0,1/0)],S=[0,0,0];function L(x,C,M,g,Z){var T=C.model||d,z=C.view||d,O=C.projection||d,V=C._ortho||!1,G=x.bounds,Z=Z||u(T,z,O,G,V),j=Z.axis;c(v,z,T),c(v,O,v);for(var N=E,H=0;H<3;++H)N[H].lo=1/0,N[H].hi=-1/0,N[H].pixelsPerDataUnit=1/0;var te=s(f(v,v));f(v,v);for(var oe=0;oe<3;++oe){var _e=(oe+1)%3,Ee=(oe+2)%3,Ce=S;e:for(var H=0;H<2;++H){var me=[];if(j[oe]<0!=!!H){Ce[oe]=G[H][oe];for(var ie=0;ie<2;++ie){Ce[_e]=G[ie^H][_e];for(var Se=0;Se<2;++Se)Ce[Ee]=G[Se^ie^H][Ee],me.push(Ce.slice())}for(var Le=V?5:4,ie=Le;ie===Le;++ie){if(me.length===0)continue e;me=l.positive(me,te[ie])}for(var ie=0;ie<me.length;++ie)for(var Ee=me[ie],Ae=k(S,v,Ee,M,g),Se=0;Se<3;++Se)N[Se].lo=Math.min(N[Se].lo,Ee[Se]),N[Se].hi=Math.max(N[Se].hi,Ee[Se]),Se!==oe&&(N[Se].pixelsPerDataUnit=Math.min(N[Se].pixelsPerDataUnit,Math.abs(Ae[Se])))}}}return N}},5455:function(i,a,o){i.exports=o(7056)},5486:function(i,a,o){i.exports=o(3066)},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 _=1,b=h.length;_<b;_+=2)if(h[_-1]===d&&h[_]===v){h[_-1]=h[b-2],h[_]=h[b-1],h.length=b-2;return}}u.isConstraint=function(){var h=[0,0];function d(v,_){return v[0]-_[0]||v[1]-_[1]}return function(v,_){return h[0]=Math.min(v,_),h[1]=Math.max(v,_),s.eq(this.edges,h,d)>=0}}(),u.removeTriangle=function(h,d,v){var _=this.stars;c(_[h],d,v),c(_[d],v,h),c(_[v],h,d)},u.addTriangle=function(h,d,v){var _=this.stars;_[h].push(d,v),_[d].push(v,h),_[v].push(h,d)},u.opposite=function(h,d){for(var v=this.stars[d],_=1,b=v.length;_<b;_+=2)if(v[_]===h)return v[_-1];return-1},u.flip=function(h,d){var v=this.opposite(h,d),_=this.opposite(d,h);this.removeTriangle(h,d,v),this.removeTriangle(d,h,_),this.addTriangle(h,_,v),this.addTriangle(d,v,_)},u.edges=function(){for(var h=this.stars,d=[],v=0,_=h.length;v<_;++v)for(var b=h[v],p=0,k=b.length;p<k;p+=2)d.push([b[p],b[p+1]]);return d},u.cells=function(){for(var h=this.stars,d=[],v=0,_=h.length;v<_;++v)for(var b=h[v],p=0,k=b.length;p<k;p+=2){var E=b[p],S=b[p+1];v<Math.min(E,S)&&d.push([v,E,S])}return d};function f(h,d){for(var v=new Array(h),_=0;_<h;++_)v[_]=[];return new l(v,d)}},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],_=s[8],b=s[9],p=s[10],k=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+_*u,o[5]=h*c+b*u,o[6]=d*c+p*u,o[7]=v*c+k*u,o[8]=_*c-f*u,o[9]=b*c-h*u,o[10]=p*c-d*u,o[11]=k*c-v*u,o}},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]))}},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=[],_=0;_<c.length;++_){var b=f[_].length;d[_]=b,h[_]=!0,b<=1&&v.push(_)}for(;v.length>0;){var p=v.pop();h[p]=!1;for(var k=f[p],_=0;_<k.length;++_){var E=k[_];--d[E]===0&&v.push(E)}}for(var S=new Array(c.length),L=[],_=0;_<c.length;++_)if(h[_]){var p=L.length;S[_]=p,L.push(c[_])}else S[_]=-1;for(var x=[],_=0;_<u.length;++_){var C=u[_];h[C[0]]&&h[C[1]]&&x.push([S[C[0]],S[C[1]]])}return[x,L]}},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}},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}},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}},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),_=o(7319),b=_.createShader,p=_.createPickShader,k=[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 S(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 x(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 C=x.prototype;C.isTransparent=function(){return this.hasAlpha},C.isOpaque=function(){return!this.hasAlpha},C.pickSlots=1,C.setPickBase=function(g){this.pickId=g},C.drawTransparent=C.draw=function(g){if(this.vertexCount){var P=this.gl,T=this.shader,z=this.vao;T.bind(),T.uniforms={model:g.model||k,view:g.view||k,projection:g.projection||k,clipBounds:S(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()}},C.drawPick=function(g){if(this.vertexCount){var P=this.gl,T=this.pickShader,z=this.vao;T.bind(),T.uniforms={model:g.model||k,view:g.view||k,projection:g.projection||k,pickId:this.pickId,clipBounds:S(this.clipBounds),screenShape:[P.drawingBufferWidth,P.drawingBufferHeight],pixelRatio:this.pixelRatio},z.bind(),z.draw(P.TRIANGLE_STRIP,this.vertexCount),z.unbind()}},C.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,j=0,N=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],H=g.position||g.positions;if(H){var te=g.color||g.colors||[0,0,0,1],oe=g.lineWidth||1,_e=!1;e:for(P=1;P<H.length;++P){var Ee=H[P-1],Ce=H[P];for(V.push(Z),G.push(Ee.slice()),T=0;T<3;++T){if(isNaN(Ee[T])||isNaN(Ce[T])||!isFinite(Ee[T])||!isFinite(Ce[T])){if(!z&&O.length>0){for(var me=0;me<24;++me)O.push(O[O.length-12]);j+=2,_e=!0}continue e}N[0][T]=Math.min(N[0][T],Ee[T],Ce[T]),N[1][T]=Math.max(N[1][T],Ee[T],Ce[T])}var ie,Se;Array.isArray(te[0])?(ie=te.length>P-1?te[P-1]:te.length>0?te[te.length-1]:[0,0,0,1],Se=te.length>P?te[P]:te.length>0?te[te.length-1]:[0,0,0,1]):ie=Se=te,ie.length===3&&(ie=[ie[0],ie[1],ie[2],1]),Se.length===3&&(Se=[Se[0],Se[1],Se[2],1]),!this.hasAlpha&&ie[3]<1&&(this.hasAlpha=!0);var Le;Array.isArray(oe)?Le=oe.length>P-1?oe[P-1]:oe.length>0?oe[oe.length-1]:[0,0,0,1]:Le=oe;var Ae=Z;if(Z+=E(Ee,Ce),_e){for(T=0;T<2;++T)O.push(Ee[0],Ee[1],Ee[2],Ce[0],Ce[1],Ce[2],Ae,Le,ie[0],ie[1],ie[2],ie[3]);j+=2,_e=!1}O.push(Ee[0],Ee[1],Ee[2],Ce[0],Ce[1],Ce[2],Ae,Le,ie[0],ie[1],ie[2],ie[3],Ee[0],Ee[1],Ee[2],Ce[0],Ce[1],Ce[2],Ae,-Le,ie[0],ie[1],ie[2],ie[3],Ce[0],Ce[1],Ce[2],Ee[0],Ee[1],Ee[2],Z,-Le,Se[0],Se[1],Se[2],Se[3],Ce[0],Ce[1],Ce[2],Ee[0],Ee[1],Ee[2],Z,Le,Se[0],Se[1],Se[2],Se[3]),j+=4}}if(this.buffer.update(O),V.push(Z),G.push(H[H.length-1].slice()),this.bounds=N,this.vertexCount=j,this.points=G,this.arcLength=V,"dashes"in g){var Fe=g.dashes,Pe=Fe.slice();for(Pe.unshift(0),P=1;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)}},C.dispose=function(){this.shader.dispose(),this.vao.dispose(),this.buffer.dispose()},C.pick=function(g){if(!g||g.id!==this.pickId)return null;var P=h(g.value[0],g.value[1],g.value[2],0),T=d.le(this.arcLength,P);if(T<0)return null;if(T===this.arcLength.length-1)return new L(this.arcLength[this.arcLength.length-1],this.points[this.points.length-1].slice(),T);for(var 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],j=0;j<3;++j)Z[j]=G*z[j]+V*O[j];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 j=u(P,G);j.wrap=P.REPEAT;var N=new x(P,T,z,O,V,j);return N.update(g),N}},5716:function(i,a,o){"use strict";var s=o(6859);i.exports=l;function l(u){return u.cmp(new s(0))}},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]]}},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 _=f[v],b=u(_);if(b!==0){if(d>0){var p=f[d-1];if(s(_,p)===0&&u(p)!==b){d-=1;continue}}f[d++]=_}}return f.length=d,f}},5838:function(i,a,o){"use strict";i.exports=l;var s=o(7842);function l(u){for(var c=new Array(u.length),f=0;f<u.length;++f)c[f]=s(u[f]);return c}},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}},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,_=1,b=2,p=3,k=4,E=5,S=6,L=7,x=8,C=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,j,N=[],H=[],te=0,oe=0,_e=1,Ee=0,Ce=0,me=!1,ie=!1,Se="",Le;z=z||{};var Ae=u,Fe=s;z.version==="300 es"&&(Ae=f,Fe=c);for(var Pe={},ge={},O=0;O<Ae.length;O++)Pe[Ae[O]]=!0;for(var O=0;O<Fe.length;O++)ge[Fe[O]]=!0;return function($e){return H=[],$e!==null?ce($e):Ze()};function Re($e){$e.length&&H.push({type:P[G],data:$e,position:Ce,line:_e,column:Ee})}function ce($e){O=0,$e.toString&&($e=$e.toString()),Se+=$e.replace(/\r\n/g,`
`),Le=Se.length;for(var St;Z=Se[O],O<Le;){switch(St=O,G){case v:O=lt();break;case _:O=st();break;case b:O=Zt();break;case p:O=Gt();break;case k:O=sr();break;case g:O=Jt();break;case E:O=wr();break;case d:O=cr();break;case C:O=pt();break;case h:O=ut();break}if(St!==O)switch(Se[St]){case`
`:Ee=0,++_e;break;default:++Ee;break}}return V+=O,Se=Se.slice(O),H}function Ze($e){return N.length&&Re(N.join("")),G=M,Re("(eof)"),H}function ut(){return N=N.length?[]:N,j==="/"&&Z==="*"?(Ce=V+O-1,G=v,j=Z,O+1):j==="/"&&Z==="/"?(Ce=V+O-1,G=_,j=Z,O+1):Z==="#"?(G=b,Ce=V+O,O):/\s/.test(Z)?(G=C,Ce=V+O,O):(me=/\d/.test(Z),ie=/[^\w_]/.test(Z),Ce=V+O,G=me?k:ie?p:d,O)}function pt(){return/[^\s]/g.test(Z)?(Re(N.join("")),G=h,O):(N.push(Z),j=Z,O+1)}function Zt(){return(Z==="\r"||Z===`
`)&&j!=="\\"?(Re(N.join("")),G=h,O):(N.push(Z),j=Z,O+1)}function st(){return Zt()}function lt(){return Z==="/"&&j==="*"?(N.push(Z),Re(N.join("")),G=h,O+1):(N.push(Z),j=Z,O+1)}function Gt(){if(j==="."&&/\d/.test(Z))return G=E,O;if(j==="/"&&Z==="*")return G=v,O;if(j==="/"&&Z==="/")return G=_,O;if(Z==="."&&N.length){for(;Nt(N););return G=E,O}if(Z===";"||Z===")"||Z==="("){if(N.length)for(;Nt(N););return Re(Z),G=h,O+1}var $e=N.length===2&&Z!=="=";if(/[\w_\d\s]/.test(Z)||$e){for(;Nt(N););return G=h,O}return N.push(Z),j=Z,O+1}function Nt($e){var St=0,Qt,Vt;do{if(Qt=l.indexOf($e.slice(0,$e.length+St).join("")),Vt=l[Qt],Qt===-1){if(St--+$e.length>0)continue;Vt=$e.slice(0,1).join("")}return Re(Vt),Ce+=Vt.length,N=N.slice(Vt.length),N.length}while(!0)}function Jt(){return/[^a-fA-F0-9]/.test(Z)?(Re(N.join("")),G=h,O):(N.push(Z),j=Z,O+1)}function sr(){return Z==="."||/[eE]/.test(Z)?(N.push(Z),G=E,j=Z,O+1):Z==="x"&&N.length===1&&N[0]==="0"?(G=g,N.push(Z),j=Z,O+1):/[^\d]/.test(Z)?(Re(N.join("")),G=h,O):(N.push(Z),j=Z,O+1)}function wr(){return Z==="f"&&(N.push(Z),j=Z,O+=1),/[eE]/.test(Z)||(Z==="-"||Z==="+")&&/[eE]/.test(j)?(N.push(Z),j=Z,O+1):/[^\d]/.test(Z)?(Re(N.join("")),G=h,O):(N.push(Z),j=Z,O+1)}function cr(){if(/[^\d\w_]/.test(Z)){var $e=N.join("");return ge[$e]?G=x:Pe[$e]?G=L:G=S,Re(N.join("")),G=h,O}return N.push(Z),j=Z,O+1}}},5878:function(i,a,o){"use strict";i.exports=c;var s=o(3250),l=o(2014);function u(f,h,d){var v=Math.abs(s(f,h,d)),_=Math.sqrt(Math.pow(h[0]-d[0],2)+Math.pow(h[1]-d[1],2));return v/_}function c(f,h,d){for(var v=h.length,_=f.length,b=new Array(v),p=new Array(v),k=new Array(v),E=new Array(v),S=0;S<v;++S)b[S]=p[S]=-1,k[S]=1/0,E[S]=!1;for(var S=0;S<_;++S){var L=f[S];if(L.length!==2)throw new Error("Input must be a graph");var x=L[1],C=L[0];p[C]!==-1?p[C]=-2:p[C]=x,b[x]!==-1?b[x]=-2:b[x]=C}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=j[ie],Ae=j[Se];j[ie]=Ae,j[Se]=Le,N[Le]=Se,N[Ae]=ie}function P(ie){return k[j[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,Fe=2*(ie+1),Pe=ie;if(Ae<te){var ge=P(Ae);ge<Le&&(Pe=Ae,Le=ge)}if(Fe<te){var Re=P(Fe);Re<Le&&(Pe=Fe)}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(te>0){var ie=j[0];return g(0,te-1),te-=1,z(0),ie}return-1}function G(ie,Se){var Le=j[ie];return k[Le]===Se?ie:(k[Le]=-1/0,O(ie),V(),k[Le]=Se,te+=1,O(te-1))}function Z(ie){if(!E[ie]){E[ie]=!0;var Se=b[ie],Le=p[ie];b[Le]>=0&&(b[Le]=Se),p[Se]>=0&&(p[Se]=Le),N[Se]>=0&&G(N[Se],M(Se)),N[Le]>=0&&G(N[Le],M(Le))}}for(var j=[],N=new Array(v),S=0;S<v;++S){var H=k[S]=M(S);H<1/0?(N[S]=j.length,j.push(S)):N[S]=-1}for(var te=j.length,S=te>>1;S>=0;--S)z(S);for(;;){var oe=V();if(oe<0||k[oe]>d)break;Z(oe)}for(var _e=[],S=0;S<v;++S)E[S]||(N[S]=_e.length,_e.push(h[S].slice()));var Ee=_e.length;function Ce(ie,Se){if(ie[Se]<0)return Se;var Le=Se,Ae=Se;do{var Fe=ie[Ae];if(!E[Ae]||Fe<0||Fe===Ae||(Ae=Fe,Fe=ie[Ae],!E[Ae]||Fe<0||Fe===Ae))break;Ae=Fe,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=Ce(b,ie[0]),Le=Ce(p,ie[1]);if(Se>=0&&Le>=0&&Se!==Le){var Ae=N[Se],Fe=N[Le];Ae!==Fe&&me.push([Ae,Fe])}}),l.unique(l.normalize(me)),{positions:_e,edges:me}}},5911:function(i){i.exports=a;function a(o,s,l){var u=s[0],c=s[1],f=s[2],h=l[0],d=l[1],v=l[2];return o[0]=c*v-f*d,o[1]=f*h-u*v,o[2]=u*d-c*h,o}},5964:function(i){"use strict";i.exports=function(a){return!a&&a!==0?"":a.toString()}},5995:function(i,a,o){"use strict";i.exports=u;var s=o(7642),l=o(6037);function u(c,f){return s(f).filter(function(h){for(var d=new Array(h.length),v=0;v<h.length;++v)d[v]=f[h[v]];return l(d)*c<1})}},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)}},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,_,b,p,k,E,S,L,x,C,M,g,P,T,z,O,V,G,Z,j,N,H,te,oe;return Math.abs(d)<1e-6?null:(d=1/d,c*=d,f*=d,h*=d,v=Math.sin(l),_=Math.cos(l),b=1-_,p=s[0],k=s[1],E=s[2],S=s[3],L=s[4],x=s[5],C=s[6],M=s[7],g=s[8],P=s[9],T=s[10],z=s[11],O=c*c*b+_,V=f*c*b+h*v,G=h*c*b-f*v,Z=c*f*b-h*v,j=f*f*b+_,N=h*f*b+c*v,H=c*h*b+f*v,te=f*h*b-c*v,oe=h*h*b+_,o[0]=p*O+L*V+g*G,o[1]=k*O+x*V+P*G,o[2]=E*O+C*V+T*G,o[3]=S*O+M*V+z*G,o[4]=p*Z+L*j+g*N,o[5]=k*Z+x*j+P*N,o[6]=E*Z+C*j+T*N,o[7]=S*Z+M*j+z*N,o[8]=p*H+L*te+g*oe,o[9]=k*H+x*te+P*oe,o[10]=E*H+C*te+T*oe,o[11]=S*H+M*te+z*oe,s!==o&&(o[12]=s[12],o[13]=s[13],o[14]=s[14],o[15]=s[15]),o)}},6141:function(i,a,o){i.exports=o(2953)},6199:function(i,a,o){"use strict";var s=o(1338),l={zero:function(L,x,C,M){var g=L[0],P=C[0];M|=0;var T=0,z=P;for(T=0;T<g;++T)x[M]=0,M+=z},fdTemplate1:function(L,x,C,M,g,P,T){var z=L[0],O=C[0],V=P[0],G=-1*O,Z=O;M|=0,T|=0;var j=0,N=O,H=V;for(j=0;j<z;++j)g[T]=.5*(x[M+G]-x[M+Z]),M+=N,T+=H},fdTemplate2:function(L,x,C,M,g,P,T,z,O,V){var G=L[0],Z=L[1],j=C[0],N=C[1],H=P[0],te=P[1],oe=O[0],_e=O[1],Ee=-1*j,Ce=j,me=-1*N,ie=N;M|=0,T|=0,V|=0;var Se=0,Le=0,Ae=N,Fe=j-Z*N,Pe=te,ge=H-Z*te,Re=_e,ce=oe-Z*_e;for(Le=0;Le<G;++Le){for(Se=0;Se<Z;++Se)g[T]=.5*(x[M+Ee]-x[M+Ce]),z[V]=.5*(x[M+me]-x[M+ie]),M+=Ae,T+=Pe,V+=Re;M+=Fe,T+=ge,V+=ce}}},u={cdiff:function(L){var x={};return function(M,g,P){var T=M.dtype,z=M.order,O=g.dtype,V=g.order,G=P.dtype,Z=P.order,j=[T,z.join(),O,V.join(),G,Z.join()].join(),N=x[j];return N||(x[j]=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 x={};return function(M){var g=M.dtype,P=M.order,T=[g,P.join()].join(),z=x[T];return z||(x[T]=z=L([g,P])),z(M.shape.slice(0),M.data,M.stride,M.offset|0)}},fdTemplate1:function(L){var x={};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=x[V];return G||(x[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 x={};return function(M,g,P){var T=M.dtype,z=M.order,O=g.dtype,V=g.order,G=P.dtype,Z=P.order,j=[T,z.join(),O,V.join(),G,Z.join()].join(),N=x[j];return N||(x[j]=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 x=u[L.funcName];return x(f.bind(void 0,L))}function f(L){return l[L.funcName]}function h(L){return c({funcName:L.funcName})}var d={},v={},_={body:"",args:[],thisVars:[],localVars:[]},b=h({funcName:"cdiff"}),p=h({funcName:"zero"});function k(L){return L in d?d[L]:d[L]=h({funcName:"fdTemplate"+L})}function E(L,x,C,M){return function(g,P){var T=P.shape.slice();return T[0]>2&&T[1]>2&&M(P.pick(-1,-1).lo(1,1).hi(T[0]-2,T[1]-2),g.pick(-1,-1,0).lo(1,1).hi(T[0]-2,T[1]-2),g.pick(-1,-1,1).lo(1,1).hi(T[0]-2,T[1]-2)),T[1]>2&&(C(P.pick(0,-1).lo(1).hi(T[1]-2),g.pick(0,-1,1).lo(1).hi(T[1]-2)),x(g.pick(0,-1,0).lo(1).hi(T[1]-2))),T[1]>2&&(C(P.pick(T[0]-1,-1).lo(1).hi(T[1]-2),g.pick(T[0]-1,-1,1).lo(1).hi(T[1]-2)),x(g.pick(T[0]-1,-1,0).lo(1).hi(T[1]-2))),T[0]>2&&(C(P.pick(-1,0).lo(1).hi(T[0]-2),g.pick(-1,0,0).lo(1).hi(T[0]-2)),x(g.pick(-1,0,1).lo(1).hi(T[0]-2))),T[0]>2&&(C(P.pick(-1,T[1]-1).lo(1).hi(T[0]-2),g.pick(-1,T[1]-1,0).lo(1).hi(T[0]-2)),x(g.pick(-1,T[1]-1,1).lo(1).hi(T[0]-2))),g.set(0,0,0,0),g.set(0,0,1,0),g.set(T[0]-1,0,0,0),g.set(T[0]-1,0,1,0),g.set(0,T[1]-1,0,0),g.set(0,T[1]-1,1,0),g.set(T[0]-1,T[1]-1,0,0),g.set(T[0]-1,T[1]-1,1,0),g}}function S(L){var x=L.join(),T=v[x];if(T)return T;for(var C=L.length,M=[b,p],g=1;g<=C;++g)M.push(k(g));var P=E,T=P.apply(void 0,M);return v[x]=T,T}i.exports=function(x,C,M){if(Array.isArray(M)||(typeof M=="string"?M=s(C.dimension,M):M=s(C.dimension,"clamp")),C.size===0)return x;if(C.dimension===0)return x.set(0),x;var g=S(M);return g(x,C)}},6204:function(i){"use strict";i.exports=a;function a(o){var s,l,u,c=o.length,f=0;for(s=0;s<c;++s)f+=o[s].length;var h=new Array(f),d=0;for(s=0;s<c;++s){var v=o[s],_=v.length;for(l=0;l<_;++l){var b=h[d++]=new Array(_-1),p=0;for(u=0;u<_;++u)u!==l&&(b[p++]=v[u]);if(l&1){var k=b[1];b[1]=b[0],b[0]=k}}}return h}},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(_){return d[_]}),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,_=0;_<v.length;++_)v[_].flush(d)},f.idle=function(d){for(var v=this._controllerList,_=0;_<v.length;++_)v[_].idle(d)},f.lookAt=function(d,v,_,b){for(var p=this._controllerList,k=0;k<p.length;++k)p[k].lookAt(d,v,_,b)},f.rotate=function(d,v,_,b){for(var p=this._controllerList,k=0;k<p.length;++k)p[k].rotate(d,v,_,b)},f.pan=function(d,v,_,b){for(var p=this._controllerList,k=0;k<p.length;++k)p[k].pan(d,v,_,b)},f.translate=function(d,v,_,b){for(var p=this._controllerList,k=0;k<p.length;++k)p[k].translate(d,v,_,b)},f.setMatrix=function(d,v){for(var _=this._controllerList,b=0;b<_.length;++b)_[b].setMatrix(d,v)},f.setDistanceLimits=function(d,v){for(var _=this._controllerList,b=0;b<_.length;++b)_[b].setDistanceLimits(d,v)},f.setDistance=function(d,v){for(var _=this._controllerList,b=0;b<_.length;++b)_[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 _=this._active,b=this._controllerList[v],p=Math.max(_.lastT(),b.lastT());_.recalcMatrix(p),b.setMatrix(p,_.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],_=d.center||[0,0,0],b=d.up||[0,1,0],p=d.distanceLimits||[0,1/0],k=d.mode||"turntable",E=s(),S=l(),L=u();return E.setDistanceLimits(p[0],p[1]),E.lookAt(0,v,_,b),S.setDistanceLimits(p[0],p[1]),S.lookAt(0,v,_,b),L.setDistanceLimits(p[0],p[1]),L.lookAt(0,v,_,b),new c({turntable:E,orbit:S,matrix:L},k)}},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])}},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,_=1/0,b=-1/0,p=1/0,k=-1/0,E=1/0,S=-1/0,L=null,x=null,C=[],M=1/0,g=!1,P=u.coneSizemode==="raw",T=0;T<f.length;T++){var z=f[T];_=Math.min(z[0],_),b=Math.max(z[0],b),p=Math.min(z[1],p),k=Math.max(z[1],k),E=Math.min(z[2],E),S=Math.max(z[2],S);var O=h[T];if(s.length(O)>v&&(v=s.length(O)),T&&!P){var V=2*s.distance(L,z)/(s.length(x)+s.length(O));V?(M=Math.min(M,V),g=!1):g=!0}g||(L=z,x=O),C.push(O)}var G=[_,p,E],Z=[b,k,S];c&&(c[0]=G,c[1]=Z),v===0&&(v=1);var j=1/v;isFinite(M)||(M=1),d.vectorScale=M;var N=u.coneSize||(P?1:.5);u.absoluteConeSize&&(N=u.absoluteConeSize*j),d.coneScale=N;for(var T=0,H=0;T<f.length;T++)for(var z=f[T],te=z[0],oe=z[1],_e=z[2],Ee=C[T],Ce=s.length(Ee)*j,me=0,ie=8;me<ie;me++){d.positions.push([te,oe,_e,H++]),d.positions.push([te,oe,_e,H++]),d.positions.push([te,oe,_e,H++]),d.positions.push([te,oe,_e,H++]),d.positions.push([te,oe,_e,H++]),d.positions.push([te,oe,_e,H++]),d.vectors.push(Ee),d.vectors.push(Ee),d.vectors.push(Ee),d.vectors.push(Ee),d.vectors.push(Ee),d.vectors.push(Ee),d.vertexIntensity.push(Ce,Ce,Ce),d.vertexIntensity.push(Ce,Ce,Ce);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"})}},6429:function(i,a,o){"use strict";i.exports=x;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),_=[0,0,0];(function(){for(var C=0;C<8;++C)h[C]=[1,1,1,1],d[C]=[1,1,1]})();function b(C,M,g){for(var P=0;P<4;++P){C[P]=g[12+P];for(var T=0;T<3;++T)C[P]+=M[T]*g[4*T+P]}}var p=[[0,0,1,0,0],[0,0,-1,1,0],[0,-1,0,1,0],[0,1,0,1,0],[-1,0,0,1,0],[1,0,0,1,0]];function k(C){for(var M=0;M<p.length;++M)if(C=u.positive(C,p[M]),C.length<3)return 0;for(var g=C[0],P=g[0]/g[3],T=g[1]/g[3],z=0,M=1;M+1<C.length;++M){var O=C[M],V=C[M+1],G=O[0]/O[3],Z=O[1]/O[3],j=V[0]/V[3],N=V[1]/V[3],H=G-P,te=Z-T,oe=j-P,_e=N-T;z+=Math.abs(H*_e-te*oe)}return z}var E=[1,1,1],S=[0,0,0],L={cubeEdges:E,axis:S};function x(C,M,g,P,T){l(f,M,C),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 j=h[O][3],N=0;N<3;++N)d[O][N]=h[O][N]/j;T&&(d[O][2]*=-1),j<0&&(Z<0||d[O][2]<d[Z][2])&&(Z=O)}if(Z<0){Z=0;for(var H=0;H<3;++H){for(var te=(H+2)%3,oe=(H+1)%3,_e=-1,Ee=-1,Ce=0;Ce<2;++Ce){var me=Ce<<H,ie=me+(Ce<<te)+(1-Ce<<oe),Se=me+(1-Ce<<te)+(Ce<<oe);c(d[me],d[ie],d[Se],_)<0||(Ce?_e=1:Ee=1)}if(_e<0||Ee<0){Ee>_e&&(Z|=1<<H);continue}for(var Ce=0;Ce<2;++Ce){var me=Ce<<H,ie=me+(Ce<<te)+(1-Ce<<oe),Se=me+(1-Ce<<te)+(Ce<<oe),Le=k([h[me],h[ie],h[Se],h[me+(1<<te)+(1<<oe)]]);Ce?_e=Le:Ee=Le}if(Ee>_e){Z|=1<<H;continue}}}for(var Ae=7^Z,Fe=-1,O=0;O<8;++O)O===Z||O===Ae||(Fe<0||d[Fe][1]>d[O][1])&&(Fe=O);for(var Pe=-1,O=0;O<3;++O){var ge=Fe^1<<O;if(!(ge===Z||ge===Ae)){Pe<0&&(Pe=ge);var oe=d[ge];oe[0]<d[Pe][0]&&(Pe=ge)}}for(var Re=-1,O=0;O<3;++O){var ge=Fe^1<<O;if(!(ge===Z||ge===Ae||ge===Pe)){Re<0&&(Re=ge);var oe=d[ge];oe[0]>d[Re][0]&&(Re=ge)}}var ce=E;ce[0]=ce[1]=ce[2]=0,ce[s.log2(Pe^Fe)]=Fe&Pe,ce[s.log2(Fe^Re)]=Fe&Re;var Ze=Re^7;Ze===Z||Ze===Ae?(Ze=Pe^7,ce[s.log2(Re^Ze)]=Ze&Re):ce[s.log2(Pe^Ze)]=Ze&Pe;for(var ut=S,pt=Z,H=0;H<3;++H)pt&1<<H?ut[H]=-1:ut[H]=1;return L}},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),_=Math.round(u*c*v),b=_+"";if(b.indexOf("e")>=0)return b;var p=_/v,k=_%v;_<0?(p=-Math.ceil(p)|0,k=-k|0):(p=Math.floor(p)|0,k=k|0);var E=""+p;if(_<0&&(E="-"+E),d){for(var S=""+k;S.length<d;)S="0"+S;return E+"."+S}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]),_=0;_*c[h]<=u[1][h];++_)d.push({x:_*c[h],text:o(c[h],_)});for(var _=-1;_*c[h]>=u[0][h];--_)d.push({x:_*c[h],text:o(c[h],_)});f.push(d)}return f}function l(u,c){for(var f=0;f<3;++f){if(u[f].length!==c[f].length)return!1;for(var h=0;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}},6468:function(i){i.exports=function(o){return atob(o)}},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]))}},6582:function(i,a,o){var s=o(7894);i.exports=l;function l(u,c,f,h){var d,v,_,b,p,k,E,S,L,x,C=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(C-O)<1e-6&&Math.abs(M-V)<1e-6&&Math.abs(g-G)<1e-6?s(u):(E=C-O,S=M-V,L=g-G,x=1/Math.sqrt(E*E+S*S+L*L),E*=x,S*=x,L*=x,d=T*L-z*S,v=z*E-P*L,_=P*S-T*E,x=Math.sqrt(d*d+v*v+_*_),x?(x=1/x,d*=x,v*=x,_*=x):(d=0,v=0,_=0),b=S*_-L*v,p=L*d-E*_,k=E*v-S*d,x=Math.sqrt(b*b+p*p+k*k),x?(x=1/x,b*=x,p*=x,k*=x):(b=0,p=0,k=0),u[0]=d,u[1]=b,u[2]=E,u[3]=0,u[4]=v,u[5]=p,u[6]=S,u[7]=0,u[8]=_,u[9]=k,u[10]=L,u[11]=0,u[12]=-(d*C+v*M+_*g),u[13]=-(b*C+p*M+k*g),u[14]=-(E*C+S*M+L*g),u[15]=1,u)}},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}},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}},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}},6729:function(i,a,o){"use strict";var s=o(3642),l=o(395);i.exports=u;function u(d){var v,_,b,p,k,E,S,L,g,x,C;if(d||(d={}),L=(d.nshades||72)-1,S=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");k=s[E]}else if(Array.isArray(E))k=E.slice();else throw Error("unsupported colormap option",E);if(k.length>L+1)throw new Error(E+" map requires nshades to be at least size "+k.length);Array.isArray(d.alpha)?d.alpha.length!==2?x=[1,1]:x=d.alpha.slice():typeof d.alpha=="number"?x=[d.alpha,d.alpha]:x=[1,1],v=k.map(function(z){return Math.round(z.index*L)}),x[0]=Math.min(Math.max(x[0],0),1),x[1]=Math.min(Math.max(x[1],0),1);var M=k.map(function(z,O){var V=k[O].index,G=k[O].rgb.slice();return G.length===4&&G[3]>=0&&G[3]<=1||(G[3]=x[0]+(x[1]-x[0])*V),G}),g=[];for(C=0;C<v.length-1;++C){p=v[C+1]-v[C],_=M[C],b=M[C+1];for(var P=0;P<p;P++){var T=P/p;g.push([Math.round(l(_[0],b[0],T)),Math.round(l(_[1],b[1],T)),Math.round(l(_[2],b[2],T)),l(_[3],b[3],T)])}}return g.push(k[k.length-1].rgb.concat(x[1])),S==="hex"?g=g.map(f):S==="rgbaString"?g=g.map(h):S==="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,_="#",b=0;b<3;++b)v=d[b],v=v.toString(16),_+=("00"+v).substr(v.length);return _}function h(d){return"rgba("+d.join(",")+")"}},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"}]}},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,_=f+f,b=u*d,p=u*v,k=u*_,E=c*v,S=c*_,L=f*_,x=h*d,C=h*v,M=h*_;return o[0]=1-(E+L),o[1]=p+M,o[2]=k-C,o[3]=0,o[4]=p-M,o[5]=1-(b+L),o[6]=S+x,o[7]=0,o[8]=k+C,o[9]=S-x,o[10]=1-(b+E),o[11]=0,o[12]=l[0],o[13]=l[1],o[14]=l[2],o[15]=1,o}},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],_=s[6],b=s[7],p=s[8],k=s[9],E=s[10],S=s[11],L=s[12],x=s[13],C=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*k+z*x,o[2]=g*f+P*_+T*E+z*C,o[3]=g*h+P*b+T*S+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*k+z*x,o[6]=g*f+P*_+T*E+z*C,o[7]=g*h+P*b+T*S+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*k+z*x,o[10]=g*f+P*_+T*E+z*C,o[11]=g*h+P*b+T*S+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*k+z*x,o[14]=g*f+P*_+T*E+z*C,o[15]=g*h+P*b+T*S+z*M,o}},6768:function(i,a,o){"use strict";var s=o(6859);i.exports=l;function l(u){return new s(u)}},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,j=G.length;Z<j;++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 H=P[0]+P[1]-T[0]-T[1];return H||V(P[0],P[1])-V(T[0],T[1]);case 3:var G=P[0]+P[1],Z=T[0]+T[1];if(H=G+P[2]-(Z+T[2]),H)return H;var j=V(P[0],P[1]),N=V(T[0],T[1]),H=V(j,P[2])-V(N,T[2]);return H||V(j+P[2],G)-V(N+T[2],Z);default:var te=P.slice(0);te.sort();var oe=T.slice(0);oe.sort();for(var _e=0;_e<z;++_e)if(O=te[_e]-oe[_e],O)return O;return 0}}a.Fw=d;function v(P,T){return d(P[0],T[0])}function _(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=_;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 k(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 j=T[O],N=j.length,H=1,te=1<<N;H<te;++H){G.length=l.popCount(H);for(var oe=0,_e=0;_e<N;++_e)H&1<<_e&&(G[oe++]=j[_e]);var Ee=p(P,G);if(!(Ee<0))for(;z[Ee++].push(O),!(Ee>=P.length||d(P[Ee],G)!==0););}return z}s=k;function E(P,T){if(!T)return k(b(L(P,0)),P,0);for(var z=new Array(T),O=0;O<T;++O)z[O]=[];for(var O=0,V=P.length;O<V;++O)for(var G=P[O],Z=0,j=G.length;Z<j;++Z)z[G[Z]].push(O);return z}s=E;function S(P){for(var T=[],z=0,O=P.length;z<O;++z)for(var V=P[z],G=V.length|0,Z=1,j=1<<G;Z<j;++Z){for(var N=[],H=0;H<G;++H)Z>>>H&1&&N.push(V[H]);T.push(N)}return _(T)}s=S;function L(P,T){if(T<0)return[];for(var z=[],O=(1<<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 j=new Array(T+1),N=0,H=0;H<G.length;++H)Z&1<<H&&(j[N++]=G[H]);z.push(j)}return _(z)}s=L;function x(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 j=new Array(V.length-1),N=0,H=0;N<Z;++N)N!==G&&(j[H++]=V[N]);T.push(j)}return _(T)}s=x;function C(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 j=[],N=z.ranks,O=0;O<N.length;++O)N[O]=-1;for(var O=0;O<P.length;++O){var H=z.find(P[O][0]);N[H]<0?(N[H]=j.length,j.push([P[O].slice(0)])):j[N[H]].push(P[O].slice(0))}return j}function M(P){for(var T=b(_(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]]),j=G+1;j<V.length;++j)z.link(Z,p(T,[V[j]]));for(var N=[],H=z.ranks,O=0;O<H.length;++O)H[O]=-1;for(var O=0;O<P.length;++O){var te=z.find(p(T,[P[O][0]]));H[te]<0?(H[te]=N.length,N.push([P[O].slice(0)])):N[H[te]].push(P[O].slice(0))}return N}function g(P,T){return T?C(P,T):M(P)}s=g},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)}},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}},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"]},6859:function(i,a,o){i=o.nmd(i),function(s,l){"use strict";function u(j,N){if(!j)throw new Error(N||"Assertion failed")}function c(j,N){j.super_=N;var H=function(){};H.prototype=N.prototype,j.prototype=new H,j.prototype.constructor=j}function f(j,N,H){if(f.isBN(j))return j;this.negative=0,this.words=null,this.length=0,this.red=null,j!==null&&((N==="le"||N==="be")&&(H=N,N=10),this._init(j||0,N||10,H||"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(j){}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,H){return N.cmp(H)>0?N:H},f.min=function(N,H){return N.cmp(H)<0?N:H},f.prototype._init=function(N,H,te){if(typeof N=="number")return this._initNumber(N,H,te);if(typeof N=="object")return this._initArray(N,H,te);H==="hex"&&(H=16),u(H===(H|0)&&H>=2&&H<=36),N=N.toString().replace(/\s+/g,"");var oe=0;N[0]==="-"&&(oe++,this.negative=1),oe<N.length&&(H===16?this._parseHex(N,oe,te):(this._parseBase(N,H,oe),te==="le"&&this._initArray(this.toArray(),H,te)))},f.prototype._initNumber=function(N,H,te){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),te==="le"&&this._initArray(this.toArray(),H,te)},f.prototype._initArray=function(N,H,te){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,Ee,Ce=0;if(te==="be")for(oe=N.length-1,_e=0;oe>=0;oe-=3)Ee=N[oe]|N[oe-1]<<8|N[oe-2]<<16,this.words[_e]|=Ee<<Ce&67108863,this.words[_e+1]=Ee>>>26-Ce&67108863,Ce+=24,Ce>=26&&(Ce-=26,_e++);else if(te==="le")for(oe=0,_e=0;oe<N.length;oe+=3)Ee=N[oe]|N[oe+1]<<8|N[oe+2]<<16,this.words[_e]|=Ee<<Ce&67108863,this.words[_e+1]=Ee>>>26-Ce&67108863,Ce+=24,Ce>=26&&(Ce-=26,_e++);return this.strip()};function d(j,N){var H=j.charCodeAt(N);return H>=65&&H<=70?H-55:H>=97&&H<=102?H-87:H-48&15}function v(j,N,H){var te=d(j,H);return H-1>=N&&(te|=d(j,H-1)<<4),te}f.prototype._parseHex=function(N,H,te){this.length=Math.ceil((N.length-H)/6),this.words=new Array(this.length);for(var oe=0;oe<this.length;oe++)this.words[oe]=0;var _e=0,Ee=0,Ce;if(te==="be")for(oe=N.length-1;oe>=H;oe-=2)Ce=v(N,H,oe)<<_e,this.words[Ee]|=Ce&67108863,_e>=18?(_e-=18,Ee+=1,this.words[Ee]|=Ce>>>26):_e+=8;else{var me=N.length-H;for(oe=me%2===0?H+1:H;oe<N.length;oe+=2)Ce=v(N,H,oe)<<_e,this.words[Ee]|=Ce&67108863,_e>=18?(_e-=18,Ee+=1,this.words[Ee]|=Ce>>>26):_e+=8}this.strip()};function _(j,N,H,te){for(var oe=0,_e=Math.min(j.length,H),Ee=N;Ee<_e;Ee++){var Ce=j.charCodeAt(Ee)-48;oe*=te,Ce>=49?oe+=Ce-49+10:Ce>=17?oe+=Ce-17+10:oe+=Ce}return oe}f.prototype._parseBase=function(N,H,te){this.words=[0],this.length=1;for(var oe=0,_e=1;_e<=67108863;_e*=H)oe++;oe--,_e=_e/H|0;for(var Ee=N.length-te,Ce=Ee%oe,me=Math.min(Ee,Ee-Ce)+te,ie=0,Se=te;Se<me;Se+=oe)ie=_(N,Se,Se+oe,H),this.imuln(_e),this.words[0]+ie<67108864?this.words[0]+=ie:this._iaddn(ie);if(Ce!==0){var Le=1;for(ie=_(N,Se,N.length,H),Se=0;Se<Ce;Se++)Le*=H;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 H=0;H<this.length;H++)N.words[H]=this.words[H];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],k=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];f.prototype.toString=function(N,H){N=N||10,H=H|0||1;var te;if(N===16||N==="hex"){te="";for(var oe=0,_e=0,Ee=0;Ee<this.length;Ee++){var Ce=this.words[Ee],me=((Ce<<oe|_e)&16777215).toString(16);_e=Ce>>>24-oe&16777215,_e!==0||Ee!==this.length-1?te=b[6-me.length]+me+te:te=me+te,oe+=2,oe>=26&&(oe-=26,Ee--)}for(_e!==0&&(te=_e.toString(16)+te);te.length%H!==0;)te="0"+te;return this.negative!==0&&(te="-"+te),te}if(N===(N|0)&&N>=2&&N<=36){var ie=p[N],Se=k[N];te="";var Le=this.clone();for(Le.negative=0;!Le.isZero();){var Ae=Le.modn(Se).toString(N);Le=Le.idivn(Se),Le.isZero()?te=Ae+te:te=b[ie-Ae.length]+Ae+te}for(this.isZero()&&(te="0"+te);te.length%H!==0;)te="0"+te;return this.negative!==0&&(te="-"+te),te}u(!1,"Base should be between 2 and 36")},f.prototype.toNumber=function(){var N=this.words[0];return this.length===2?N+=this.words[1]*67108864:this.length===3&&this.words[2]===1?N+=4503599627370496+this.words[1]*67108864:this.length>2&&u(!1,"Number can only safely store up to 53 bits"),this.negative!==0?-N:N},f.prototype.toJSON=function(){return this.toString(16)},f.prototype.toBuffer=function(N,H){return u(typeof h!="undefined"),this.toArrayLike(h,N,H)},f.prototype.toArray=function(N,H){return this.toArrayLike(Array,N,H)},f.prototype.toArrayLike=function(N,H,te){var oe=this.byteLength(),_e=te||Math.max(1,oe);u(oe<=_e,"byte array longer than desired length"),u(_e>0,"Requested array length <= 0"),this.strip();var Ee=H==="le",Ce=new N(_e),me,ie,Se=this.clone();if(Ee){for(ie=0;!Se.isZero();ie++)me=Se.andln(255),Se.iushrn(8),Ce[ie]=me;for(;ie<_e;ie++)Ce[ie]=0}else{for(ie=0;ie<_e-oe;ie++)Ce[ie]=0;for(ie=0;!Se.isZero();ie++)me=Se.andln(255),Se.iushrn(8),Ce[_e-ie-1]=me}return Ce},Math.clz32?f.prototype._countBits=function(N){return 32-Math.clz32(N)}:f.prototype._countBits=function(N){var H=N,te=0;return H>=4096&&(te+=13,H>>>=13),H>=64&&(te+=7,H>>>=7),H>=8&&(te+=4,H>>>=4),H>=2&&(te+=2,H>>>=2),te+H},f.prototype._zeroBits=function(N){if(N===0)return 26;var H=N,te=0;return(H&8191)===0&&(te+=13,H>>>=13),(H&127)===0&&(te+=7,H>>>=7),(H&15)===0&&(te+=4,H>>>=4),(H&3)===0&&(te+=2,H>>>=2),(H&1)===0&&te++,te},f.prototype.bitLength=function(){var N=this.words[this.length-1],H=this._countBits(N);return(this.length-1)*26+H};function E(j){for(var N=new Array(j.bitLength()),H=0;H<N.length;H++){var te=H/26|0,oe=H%26;N[H]=(j.words[te]&1<<oe)>>>oe}return N}f.prototype.zeroBits=function(){if(this.isZero())return 0;for(var N=0,H=0;H<this.length;H++){var te=this._zeroBits(this.words[H]);if(N+=te,te!==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 H=0;H<N.length;H++)this.words[H]=this.words[H]|N.words[H];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 H;this.length>N.length?H=N:H=this;for(var te=0;te<H.length;te++)this.words[te]=this.words[te]&N.words[te];return this.length=H.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 H,te;this.length>N.length?(H=this,te=N):(H=N,te=this);for(var oe=0;oe<te.length;oe++)this.words[oe]=H.words[oe]^te.words[oe];if(this!==H)for(;oe<H.length;oe++)this.words[oe]=H.words[oe];return this.length=H.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 H=Math.ceil(N/26)|0,te=N%26;this._expand(H),te>0&&H--;for(var oe=0;oe<H;oe++)this.words[oe]=~this.words[oe]&67108863;return te>0&&(this.words[oe]=~this.words[oe]&67108863>>26-te),this.strip()},f.prototype.notn=function(N){return this.clone().inotn(N)},f.prototype.setn=function(N,H){u(typeof N=="number"&&N>=0);var te=N/26|0,oe=N%26;return this._expand(te+1),H?this.words[te]=this.words[te]|1<<oe:this.words[te]=this.words[te]&~(1<<oe),this.strip()},f.prototype.iadd=function(N){var H;if(this.negative!==0&&N.negative===0)return this.negative=0,H=this.isub(N),this.negative^=1,this._normSign();if(this.negative===0&&N.negative!==0)return N.negative=0,H=this.isub(N),N.negative=1,H._normSign();var te,oe;this.length>N.length?(te=this,oe=N):(te=N,oe=this);for(var _e=0,Ee=0;Ee<oe.length;Ee++)H=(te.words[Ee]|0)+(oe.words[Ee]|0)+_e,this.words[Ee]=H&67108863,_e=H>>>26;for(;_e!==0&&Ee<te.length;Ee++)H=(te.words[Ee]|0)+_e,this.words[Ee]=H&67108863,_e=H>>>26;if(this.length=te.length,_e!==0)this.words[this.length]=_e,this.length++;else if(te!==this)for(;Ee<te.length;Ee++)this.words[Ee]=te.words[Ee];return this},f.prototype.add=function(N){var H;return N.negative!==0&&this.negative===0?(N.negative=0,H=this.sub(N),N.negative^=1,H):N.negative===0&&this.negative!==0?(this.negative=0,H=N.sub(this),this.negative=1,H):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 H=this.iadd(N);return N.negative=1,H._normSign()}else if(this.negative!==0)return this.negative=0,this.iadd(N),this.negative=1,this._normSign();var te=this.cmp(N);if(te===0)return this.negative=0,this.length=1,this.words[0]=0,this;var oe,_e;te>0?(oe=this,_e=N):(oe=N,_e=this);for(var Ee=0,Ce=0;Ce<_e.length;Ce++)H=(oe.words[Ce]|0)-(_e.words[Ce]|0)+Ee,Ee=H>>26,this.words[Ce]=H&67108863;for(;Ee!==0&&Ce<oe.length;Ce++)H=(oe.words[Ce]|0)+Ee,Ee=H>>26,this.words[Ce]=H&67108863;if(Ee===0&&Ce<oe.length&&oe!==this)for(;Ce<oe.length;Ce++)this.words[Ce]=oe.words[Ce];return this.length=Math.max(this.length,Ce),oe!==this&&(this.negative=1),this.strip()},f.prototype.sub=function(N){return this.clone().isub(N)};function S(j,N,H){H.negative=N.negative^j.negative;var te=j.length+N.length|0;H.length=te,te=te-1|0;var oe=j.words[0]|0,_e=N.words[0]|0,Ee=oe*_e,Ce=Ee&67108863,me=Ee/67108864|0;H.words[0]=Ce;for(var ie=1;ie<te;ie++){for(var Se=me>>>26,Le=me&67108863,Ae=Math.min(ie,N.length-1),Fe=Math.max(0,ie-j.length+1);Fe<=Ae;Fe++){var Pe=ie-Fe|0;oe=j.words[Pe]|0,_e=N.words[Fe]|0,Ee=oe*_e+Le,Se+=Ee/67108864|0,Le=Ee&67108863}H.words[ie]=Le|0,me=Se|0}return me!==0?H.words[ie]=me|0:H.length--,H.strip()}var L=function(N,H,te){var oe=N.words,_e=H.words,Ee=te.words,Ce=0,me,ie,Se,Le=oe[0]|0,Ae=Le&8191,Fe=Le>>>13,Pe=oe[1]|0,ge=Pe&8191,Re=Pe>>>13,ce=oe[2]|0,Ze=ce&8191,ut=ce>>>13,pt=oe[3]|0,Zt=pt&8191,st=pt>>>13,lt=oe[4]|0,Gt=lt&8191,Nt=lt>>>13,Jt=oe[5]|0,sr=Jt&8191,wr=Jt>>>13,cr=oe[6]|0,$e=cr&8191,St=cr>>>13,Qt=oe[7]|0,Vt=Qt&8191,_t=Qt>>>13,It=oe[8]|0,mt=It&8191,er=It>>>13,lr=oe[9]|0,Tr=lr&8191,Lr=lr>>>13,ti=_e[0]|0,Br=ti&8191,Vr=ti>>>13,dt=_e[1]|0,Ge=dt&8191,Je=dt>>>13,je=_e[2]|0,tt=je&8191,xt=je>>>13,Ie=_e[3]|0,xe=Ie&8191,ke=Ie>>>13,vt=_e[4]|0,ir=vt&8191,ar=vt>>>13,vr=_e[5]|0,ii=vr&8191,pi=vr>>>13,$r=_e[6]|0,di=$r&8191,ji=$r>>>13,In=_e[7]|0,wi=In&8191,On=In>>>13,qn=_e[8]|0,Fn=qn&8191,ra=qn>>>13,la=_e[9]|0,Ut=la&8191,wt=la>>>13;te.negative=N.negative^H.negative,te.length=19,me=Math.imul(Ae,Br),ie=Math.imul(Ae,Vr),ie=ie+Math.imul(Fe,Br)|0,Se=Math.imul(Fe,Vr);var rr=(Ce+me|0)+((ie&8191)<<13)|0;Ce=(Se+(ie>>>13)|0)+(rr>>>26)|0,rr&=67108863,me=Math.imul(ge,Br),ie=Math.imul(ge,Vr),ie=ie+Math.imul(Re,Br)|0,Se=Math.imul(Re,Vr),me=me+Math.imul(Ae,Ge)|0,ie=ie+Math.imul(Ae,Je)|0,ie=ie+Math.imul(Fe,Ge)|0,Se=Se+Math.imul(Fe,Je)|0;var nr=(Ce+me|0)+((ie&8191)<<13)|0;Ce=(Se+(ie>>>13)|0)+(nr>>>26)|0,nr&=67108863,me=Math.imul(Ze,Br),ie=Math.imul(Ze,Vr),ie=ie+Math.imul(ut,Br)|0,Se=Math.imul(ut,Vr),me=me+Math.imul(ge,Ge)|0,ie=ie+Math.imul(ge,Je)|0,ie=ie+Math.imul(Re,Ge)|0,Se=Se+Math.imul(Re,Je)|0,me=me+Math.imul(Ae,tt)|0,ie=ie+Math.imul(Ae,xt)|0,ie=ie+Math.imul(Fe,tt)|0,Se=Se+Math.imul(Fe,xt)|0;var Er=(Ce+me|0)+((ie&8191)<<13)|0;Ce=(Se+(ie>>>13)|0)+(Er>>>26)|0,Er&=67108863,me=Math.imul(Zt,Br),ie=Math.imul(Zt,Vr),ie=ie+Math.imul(st,Br)|0,Se=Math.imul(st,Vr),me=me+Math.imul(Ze,Ge)|0,ie=ie+Math.imul(Ze,Je)|0,ie=ie+Math.imul(ut,Ge)|0,Se=Se+Math.imul(ut,Je)|0,me=me+Math.imul(ge,tt)|0,ie=ie+Math.imul(ge,xt)|0,ie=ie+Math.imul(Re,tt)|0,Se=Se+Math.imul(Re,xt)|0,me=me+Math.imul(Ae,xe)|0,ie=ie+Math.imul(Ae,ke)|0,ie=ie+Math.imul(Fe,xe)|0,Se=Se+Math.imul(Fe,ke)|0;var Xr=(Ce+me|0)+((ie&8191)<<13)|0;Ce=(Se+(ie>>>13)|0)+(Xr>>>26)|0,Xr&=67108863,me=Math.imul(Gt,Br),ie=Math.imul(Gt,Vr),ie=ie+Math.imul(Nt,Br)|0,Se=Math.imul(Nt,Vr),me=me+Math.imul(Zt,Ge)|0,ie=ie+Math.imul(Zt,Je)|0,ie=ie+Math.imul(st,Ge)|0,Se=Se+Math.imul(st,Je)|0,me=me+Math.imul(Ze,tt)|0,ie=ie+Math.imul(Ze,xt)|0,ie=ie+Math.imul(ut,tt)|0,Se=Se+Math.imul(ut,xt)|0,me=me+Math.imul(ge,xe)|0,ie=ie+Math.imul(ge,ke)|0,ie=ie+Math.imul(Re,xe)|0,Se=Se+Math.imul(Re,ke)|0,me=me+Math.imul(Ae,ir)|0,ie=ie+Math.imul(Ae,ar)|0,ie=ie+Math.imul(Fe,ir)|0,Se=Se+Math.imul(Fe,ar)|0;var ri=(Ce+me|0)+((ie&8191)<<13)|0;Ce=(Se+(ie>>>13)|0)+(ri>>>26)|0,ri&=67108863,me=Math.imul(sr,Br),ie=Math.imul(sr,Vr),ie=ie+Math.imul(wr,Br)|0,Se=Math.imul(wr,Vr),me=me+Math.imul(Gt,Ge)|0,ie=ie+Math.imul(Gt,Je)|0,ie=ie+Math.imul(Nt,Ge)|0,Se=Se+Math.imul(Nt,Je)|0,me=me+Math.imul(Zt,tt)|0,ie=ie+Math.imul(Zt,xt)|0,ie=ie+Math.imul(st,tt)|0,Se=Se+Math.imul(st,xt)|0,me=me+Math.imul(Ze,xe)|0,ie=ie+Math.imul(Ze,ke)|0,ie=ie+Math.imul(ut,xe)|0,Se=Se+Math.imul(ut,ke)|0,me=me+Math.imul(ge,ir)|0,ie=ie+Math.imul(ge,ar)|0,ie=ie+Math.imul(Re,ir)|0,Se=Se+Math.imul(Re,ar)|0,me=me+Math.imul(Ae,ii)|0,ie=ie+Math.imul(Ae,pi)|0,ie=ie+Math.imul(Fe,ii)|0,Se=Se+Math.imul(Fe,pi)|0;var Qr=(Ce+me|0)+((ie&8191)<<13)|0;Ce=(Se+(ie>>>13)|0)+(Qr>>>26)|0,Qr&=67108863,me=Math.imul($e,Br),ie=Math.imul($e,Vr),ie=ie+Math.imul(St,Br)|0,Se=Math.imul(St,Vr),me=me+Math.imul(sr,Ge)|0,ie=ie+Math.imul(sr,Je)|0,ie=ie+Math.imul(wr,Ge)|0,Se=Se+Math.imul(wr,Je)|0,me=me+Math.imul(Gt,tt)|0,ie=ie+Math.imul(Gt,xt)|0,ie=ie+Math.imul(Nt,tt)|0,Se=Se+Math.imul(Nt,xt)|0,me=me+Math.imul(Zt,xe)|0,ie=ie+Math.imul(Zt,ke)|0,ie=ie+Math.imul(st,xe)|0,Se=Se+Math.imul(st,ke)|0,me=me+Math.imul(Ze,ir)|0,ie=ie+Math.imul(Ze,ar)|0,ie=ie+Math.imul(ut,ir)|0,Se=Se+Math.imul(ut,ar)|0,me=me+Math.imul(ge,ii)|0,ie=ie+Math.imul(ge,pi)|0,ie=ie+Math.imul(Re,ii)|0,Se=Se+Math.imul(Re,pi)|0,me=me+Math.imul(Ae,di)|0,ie=ie+Math.imul(Ae,ji)|0,ie=ie+Math.imul(Fe,di)|0,Se=Se+Math.imul(Fe,ji)|0;var Oi=(Ce+me|0)+((ie&8191)<<13)|0;Ce=(Se+(ie>>>13)|0)+(Oi>>>26)|0,Oi&=67108863,me=Math.imul(Vt,Br),ie=Math.imul(Vt,Vr),ie=ie+Math.imul(_t,Br)|0,Se=Math.imul(_t,Vr),me=me+Math.imul($e,Ge)|0,ie=ie+Math.imul($e,Je)|0,ie=ie+Math.imul(St,Ge)|0,Se=Se+Math.imul(St,Je)|0,me=me+Math.imul(sr,tt)|0,ie=ie+Math.imul(sr,xt)|0,ie=ie+Math.imul(wr,tt)|0,Se=Se+Math.imul(wr,xt)|0,me=me+Math.imul(Gt,xe)|0,ie=ie+Math.imul(Gt,ke)|0,ie=ie+Math.imul(Nt,xe)|0,Se=Se+Math.imul(Nt,ke)|0,me=me+Math.imul(Zt,ir)|0,ie=ie+Math.imul(Zt,ar)|0,ie=ie+Math.imul(st,ir)|0,Se=Se+Math.imul(st,ar)|0,me=me+Math.imul(Ze,ii)|0,ie=ie+Math.imul(Ze,pi)|0,ie=ie+Math.imul(ut,ii)|0,Se=Se+Math.imul(ut,pi)|0,me=me+Math.imul(ge,di)|0,ie=ie+Math.imul(ge,ji)|0,ie=ie+Math.imul(Re,di)|0,Se=Se+Math.imul(Re,ji)|0,me=me+Math.imul(Ae,wi)|0,ie=ie+Math.imul(Ae,On)|0,ie=ie+Math.imul(Fe,wi)|0,Se=Se+Math.imul(Fe,On)|0;var $i=(Ce+me|0)+((ie&8191)<<13)|0;Ce=(Se+(ie>>>13)|0)+($i>>>26)|0,$i&=67108863,me=Math.imul(mt,Br),ie=Math.imul(mt,Vr),ie=ie+Math.imul(er,Br)|0,Se=Math.imul(er,Vr),me=me+Math.imul(Vt,Ge)|0,ie=ie+Math.imul(Vt,Je)|0,ie=ie+Math.imul(_t,Ge)|0,Se=Se+Math.imul(_t,Je)|0,me=me+Math.imul($e,tt)|0,ie=ie+Math.imul($e,xt)|0,ie=ie+Math.imul(St,tt)|0,Se=Se+Math.imul(St,xt)|0,me=me+Math.imul(sr,xe)|0,ie=ie+Math.imul(sr,ke)|0,ie=ie+Math.imul(wr,xe)|0,Se=Se+Math.imul(wr,ke)|0,me=me+Math.imul(Gt,ir)|0,ie=ie+Math.imul(Gt,ar)|0,ie=ie+Math.imul(Nt,ir)|0,Se=Se+Math.imul(Nt,ar)|0,me=me+Math.imul(Zt,ii)|0,ie=ie+Math.imul(Zt,pi)|0,ie=ie+Math.imul(st,ii)|0,Se=Se+Math.imul(st,pi)|0,me=me+Math.imul(Ze,di)|0,ie=ie+Math.imul(Ze,ji)|0,ie=ie+Math.imul(ut,di)|0,Se=Se+Math.imul(ut,ji)|0,me=me+Math.imul(ge,wi)|0,ie=ie+Math.imul(ge,On)|0,ie=ie+Math.imul(Re,wi)|0,Se=Se+Math.imul(Re,On)|0,me=me+Math.imul(Ae,Fn)|0,ie=ie+Math.imul(Ae,ra)|0,ie=ie+Math.imul(Fe,Fn)|0,Se=Se+Math.imul(Fe,ra)|0;var tn=(Ce+me|0)+((ie&8191)<<13)|0;Ce=(Se+(ie>>>13)|0)+(tn>>>26)|0,tn&=67108863,me=Math.imul(Tr,Br),ie=Math.imul(Tr,Vr),ie=ie+Math.imul(Lr,Br)|0,Se=Math.imul(Lr,Vr),me=me+Math.imul(mt,Ge)|0,ie=ie+Math.imul(mt,Je)|0,ie=ie+Math.imul(er,Ge)|0,Se=Se+Math.imul(er,Je)|0,me=me+Math.imul(Vt,tt)|0,ie=ie+Math.imul(Vt,xt)|0,ie=ie+Math.imul(_t,tt)|0,Se=Se+Math.imul(_t,xt)|0,me=me+Math.imul($e,xe)|0,ie=ie+Math.imul($e,ke)|0,ie=ie+Math.imul(St,xe)|0,Se=Se+Math.imul(St,ke)|0,me=me+Math.imul(sr,ir)|0,ie=ie+Math.imul(sr,ar)|0,ie=ie+Math.imul(wr,ir)|0,Se=Se+Math.imul(wr,ar)|0,me=me+Math.imul(Gt,ii)|0,ie=ie+Math.imul(Gt,pi)|0,ie=ie+Math.imul(Nt,ii)|0,Se=Se+Math.imul(Nt,pi)|0,me=me+Math.imul(Zt,di)|0,ie=ie+Math.imul(Zt,ji)|0,ie=ie+Math.imul(st,di)|0,Se=Se+Math.imul(st,ji)|0,me=me+Math.imul(Ze,wi)|0,ie=ie+Math.imul(Ze,On)|0,ie=ie+Math.imul(ut,wi)|0,Se=Se+Math.imul(ut,On)|0,me=me+Math.imul(ge,Fn)|0,ie=ie+Math.imul(ge,ra)|0,ie=ie+Math.imul(Re,Fn)|0,Se=Se+Math.imul(Re,ra)|0,me=me+Math.imul(Ae,Ut)|0,ie=ie+Math.imul(Ae,wt)|0,ie=ie+Math.imul(Fe,Ut)|0,Se=Se+Math.imul(Fe,wt)|0;var fn=(Ce+me|0)+((ie&8191)<<13)|0;Ce=(Se+(ie>>>13)|0)+(fn>>>26)|0,fn&=67108863,me=Math.imul(Tr,Ge),ie=Math.imul(Tr,Je),ie=ie+Math.imul(Lr,Ge)|0,Se=Math.imul(Lr,Je),me=me+Math.imul(mt,tt)|0,ie=ie+Math.imul(mt,xt)|0,ie=ie+Math.imul(er,tt)|0,Se=Se+Math.imul(er,xt)|0,me=me+Math.imul(Vt,xe)|0,ie=ie+Math.imul(Vt,ke)|0,ie=ie+Math.imul(_t,xe)|0,Se=Se+Math.imul(_t,ke)|0,me=me+Math.imul($e,ir)|0,ie=ie+Math.imul($e,ar)|0,ie=ie+Math.imul(St,ir)|0,Se=Se+Math.imul(St,ar)|0,me=me+Math.imul(sr,ii)|0,ie=ie+Math.imul(sr,pi)|0,ie=ie+Math.imul(wr,ii)|0,Se=Se+Math.imul(wr,pi)|0,me=me+Math.imul(Gt,di)|0,ie=ie+Math.imul(Gt,ji)|0,ie=ie+Math.imul(Nt,di)|0,Se=Se+Math.imul(Nt,ji)|0,me=me+Math.imul(Zt,wi)|0,ie=ie+Math.imul(Zt,On)|0,ie=ie+Math.imul(st,wi)|0,Se=Se+Math.imul(st,On)|0,me=me+Math.imul(Ze,Fn)|0,ie=ie+Math.imul(Ze,ra)|0,ie=ie+Math.imul(ut,Fn)|0,Se=Se+Math.imul(ut,ra)|0,me=me+Math.imul(ge,Ut)|0,ie=ie+Math.imul(ge,wt)|0,ie=ie+Math.imul(Re,Ut)|0,Se=Se+Math.imul(Re,wt)|0;var yn=(Ce+me|0)+((ie&8191)<<13)|0;Ce=(Se+(ie>>>13)|0)+(yn>>>26)|0,yn&=67108863,me=Math.imul(Tr,tt),ie=Math.imul(Tr,xt),ie=ie+Math.imul(Lr,tt)|0,Se=Math.imul(Lr,xt),me=me+Math.imul(mt,xe)|0,ie=ie+Math.imul(mt,ke)|0,ie=ie+Math.imul(er,xe)|0,Se=Se+Math.imul(er,ke)|0,me=me+Math.imul(Vt,ir)|0,ie=ie+Math.imul(Vt,ar)|0,ie=ie+Math.imul(_t,ir)|0,Se=Se+Math.imul(_t,ar)|0,me=me+Math.imul($e,ii)|0,ie=ie+Math.imul($e,pi)|0,ie=ie+Math.imul(St,ii)|0,Se=Se+Math.imul(St,pi)|0,me=me+Math.imul(sr,di)|0,ie=ie+Math.imul(sr,ji)|0,ie=ie+Math.imul(wr,di)|0,Se=Se+Math.imul(wr,ji)|0,me=me+Math.imul(Gt,wi)|0,ie=ie+Math.imul(Gt,On)|0,ie=ie+Math.imul(Nt,wi)|0,Se=Se+Math.imul(Nt,On)|0,me=me+Math.imul(Zt,Fn)|0,ie=ie+Math.imul(Zt,ra)|0,ie=ie+Math.imul(st,Fn)|0,Se=Se+Math.imul(st,ra)|0,me=me+Math.imul(Ze,Ut)|0,ie=ie+Math.imul(Ze,wt)|0,ie=ie+Math.imul(ut,Ut)|0,Se=Se+Math.imul(ut,wt)|0;var Sn=(Ce+me|0)+((ie&8191)<<13)|0;Ce=(Se+(ie>>>13)|0)+(Sn>>>26)|0,Sn&=67108863,me=Math.imul(Tr,xe),ie=Math.imul(Tr,ke),ie=ie+Math.imul(Lr,xe)|0,Se=Math.imul(Lr,ke),me=me+Math.imul(mt,ir)|0,ie=ie+Math.imul(mt,ar)|0,ie=ie+Math.imul(er,ir)|0,Se=Se+Math.imul(er,ar)|0,me=me+Math.imul(Vt,ii)|0,ie=ie+Math.imul(Vt,pi)|0,ie=ie+Math.imul(_t,ii)|0,Se=Se+Math.imul(_t,pi)|0,me=me+Math.imul($e,di)|0,ie=ie+Math.imul($e,ji)|0,ie=ie+Math.imul(St,di)|0,Se=Se+Math.imul(St,ji)|0,me=me+Math.imul(sr,wi)|0,ie=ie+Math.imul(sr,On)|0,ie=ie+Math.imul(wr,wi)|0,Se=Se+Math.imul(wr,On)|0,me=me+Math.imul(Gt,Fn)|0,ie=ie+Math.imul(Gt,ra)|0,ie=ie+Math.imul(Nt,Fn)|0,Se=Se+Math.imul(Nt,ra)|0,me=me+Math.imul(Zt,Ut)|0,ie=ie+Math.imul(Zt,wt)|0,ie=ie+Math.imul(st,Ut)|0,Se=Se+Math.imul(st,wt)|0;var Ba=(Ce+me|0)+((ie&8191)<<13)|0;Ce=(Se+(ie>>>13)|0)+(Ba>>>26)|0,Ba&=67108863,me=Math.imul(Tr,ir),ie=Math.imul(Tr,ar),ie=ie+Math.imul(Lr,ir)|0,Se=Math.imul(Lr,ar),me=me+Math.imul(mt,ii)|0,ie=ie+Math.imul(mt,pi)|0,ie=ie+Math.imul(er,ii)|0,Se=Se+Math.imul(er,pi)|0,me=me+Math.imul(Vt,di)|0,ie=ie+Math.imul(Vt,ji)|0,ie=ie+Math.imul(_t,di)|0,Se=Se+Math.imul(_t,ji)|0,me=me+Math.imul($e,wi)|0,ie=ie+Math.imul($e,On)|0,ie=ie+Math.imul(St,wi)|0,Se=Se+Math.imul(St,On)|0,me=me+Math.imul(sr,Fn)|0,ie=ie+Math.imul(sr,ra)|0,ie=ie+Math.imul(wr,Fn)|0,Se=Se+Math.imul(wr,ra)|0,me=me+Math.imul(Gt,Ut)|0,ie=ie+Math.imul(Gt,wt)|0,ie=ie+Math.imul(Nt,Ut)|0,Se=Se+Math.imul(Nt,wt)|0;var ua=(Ce+me|0)+((ie&8191)<<13)|0;Ce=(Se+(ie>>>13)|0)+(ua>>>26)|0,ua&=67108863,me=Math.imul(Tr,ii),ie=Math.imul(Tr,pi),ie=ie+Math.imul(Lr,ii)|0,Se=Math.imul(Lr,pi),me=me+Math.imul(mt,di)|0,ie=ie+Math.imul(mt,ji)|0,ie=ie+Math.imul(er,di)|0,Se=Se+Math.imul(er,ji)|0,me=me+Math.imul(Vt,wi)|0,ie=ie+Math.imul(Vt,On)|0,ie=ie+Math.imul(_t,wi)|0,Se=Se+Math.imul(_t,On)|0,me=me+Math.imul($e,Fn)|0,ie=ie+Math.imul($e,ra)|0,ie=ie+Math.imul(St,Fn)|0,Se=Se+Math.imul(St,ra)|0,me=me+Math.imul(sr,Ut)|0,ie=ie+Math.imul(sr,wt)|0,ie=ie+Math.imul(wr,Ut)|0,Se=Se+Math.imul(wr,wt)|0;var ma=(Ce+me|0)+((ie&8191)<<13)|0;Ce=(Se+(ie>>>13)|0)+(ma>>>26)|0,ma&=67108863,me=Math.imul(Tr,di),ie=Math.imul(Tr,ji),ie=ie+Math.imul(Lr,di)|0,Se=Math.imul(Lr,ji),me=me+Math.imul(mt,wi)|0,ie=ie+Math.imul(mt,On)|0,ie=ie+Math.imul(er,wi)|0,Se=Se+Math.imul(er,On)|0,me=me+Math.imul(Vt,Fn)|0,ie=ie+Math.imul(Vt,ra)|0,ie=ie+Math.imul(_t,Fn)|0,Se=Se+Math.imul(_t,ra)|0,me=me+Math.imul($e,Ut)|0,ie=ie+Math.imul($e,wt)|0,ie=ie+Math.imul(St,Ut)|0,Se=Se+Math.imul(St,wt)|0;var Wa=(Ce+me|0)+((ie&8191)<<13)|0;Ce=(Se+(ie>>>13)|0)+(Wa>>>26)|0,Wa&=67108863,me=Math.imul(Tr,wi),ie=Math.imul(Tr,On),ie=ie+Math.imul(Lr,wi)|0,Se=Math.imul(Lr,On),me=me+Math.imul(mt,Fn)|0,ie=ie+Math.imul(mt,ra)|0,ie=ie+Math.imul(er,Fn)|0,Se=Se+Math.imul(er,ra)|0,me=me+Math.imul(Vt,Ut)|0,ie=ie+Math.imul(Vt,wt)|0,ie=ie+Math.imul(_t,Ut)|0,Se=Se+Math.imul(_t,wt)|0;var Fa=(Ce+me|0)+((ie&8191)<<13)|0;Ce=(Se+(ie>>>13)|0)+(Fa>>>26)|0,Fa&=67108863,me=Math.imul(Tr,Fn),ie=Math.imul(Tr,ra),ie=ie+Math.imul(Lr,Fn)|0,Se=Math.imul(Lr,ra),me=me+Math.imul(mt,Ut)|0,ie=ie+Math.imul(mt,wt)|0,ie=ie+Math.imul(er,Ut)|0,Se=Se+Math.imul(er,wt)|0;var Wo=(Ce+me|0)+((ie&8191)<<13)|0;Ce=(Se+(ie>>>13)|0)+(Wo>>>26)|0,Wo&=67108863,me=Math.imul(Tr,Ut),ie=Math.imul(Tr,wt),ie=ie+Math.imul(Lr,Ut)|0,Se=Math.imul(Lr,wt);var da=(Ce+me|0)+((ie&8191)<<13)|0;return Ce=(Se+(ie>>>13)|0)+(da>>>26)|0,da&=67108863,Ee[0]=rr,Ee[1]=nr,Ee[2]=Er,Ee[3]=Xr,Ee[4]=ri,Ee[5]=Qr,Ee[6]=Oi,Ee[7]=$i,Ee[8]=tn,Ee[9]=fn,Ee[10]=yn,Ee[11]=Sn,Ee[12]=Ba,Ee[13]=ua,Ee[14]=ma,Ee[15]=Wa,Ee[16]=Fa,Ee[17]=Wo,Ee[18]=da,Ce!==0&&(Ee[19]=Ce,te.length++),te};Math.imul||(L=S);function x(j,N,H){H.negative=N.negative^j.negative,H.length=j.length+N.length;for(var te=0,oe=0,_e=0;_e<H.length-1;_e++){var Ee=oe;oe=0;for(var Ce=te&67108863,me=Math.min(_e,N.length-1),ie=Math.max(0,_e-j.length+1);ie<=me;ie++){var Se=_e-ie,Le=j.words[Se]|0,Ae=N.words[ie]|0,Fe=Le*Ae,Pe=Fe&67108863;Ee=Ee+(Fe/67108864|0)|0,Pe=Pe+Ce|0,Ce=Pe&67108863,Ee=Ee+(Pe>>>26)|0,oe+=Ee>>>26,Ee&=67108863}H.words[_e]=Ce,te=Ee,Ee=oe}return te!==0?H.words[_e]=te:H.length--,H.strip()}function C(j,N,H){var te=new M;return te.mulp(j,N,H)}f.prototype.mulTo=function(N,H){var te,oe=this.length+N.length;return this.length===10&&N.length===10?te=L(this,N,H):oe<63?te=S(this,N,H):oe<1024?te=x(this,N,H):te=C(this,N,H),te};function M(j,N){this.x=j,this.y=N}M.prototype.makeRBT=function(N){for(var H=new Array(N),te=f.prototype._countBits(N)-1,oe=0;oe<N;oe++)H[oe]=this.revBin(oe,te,N);return H},M.prototype.revBin=function(N,H,te){if(N===0||N===te-1)return N;for(var oe=0,_e=0;_e<H;_e++)oe|=(N&1)<<H-_e-1,N>>=1;return oe},M.prototype.permute=function(N,H,te,oe,_e,Ee){for(var Ce=0;Ce<Ee;Ce++)oe[Ce]=H[N[Ce]],_e[Ce]=te[N[Ce]]},M.prototype.transform=function(N,H,te,oe,_e,Ee){this.permute(Ee,N,H,te,oe,_e);for(var Ce=1;Ce<_e;Ce<<=1)for(var me=Ce<<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,Fe=Se,Pe=0;Pe<Ce;Pe++){var ge=te[Le+Pe],Re=oe[Le+Pe],ce=te[Le+Pe+Ce],Ze=oe[Le+Pe+Ce],ut=Ae*ce-Fe*Ze;Ze=Ae*Ze+Fe*ce,ce=ut,te[Le+Pe]=ge+ce,oe[Le+Pe]=Re+Ze,te[Le+Pe+Ce]=ge-ce,oe[Le+Pe+Ce]=Re-Ze,Pe!==me&&(ut=ie*Ae-Se*Fe,Fe=ie*Fe+Se*Ae,Ae=ut)}},M.prototype.guessLen13b=function(N,H){var te=Math.max(H,N)|1,oe=te&1,_e=0;for(te=te/2|0;te;te=te>>>1)_e++;return 1<<_e+1+oe},M.prototype.conjugate=function(N,H,te){if(!(te<=1))for(var oe=0;oe<te/2;oe++){var _e=N[oe];N[oe]=N[te-oe-1],N[te-oe-1]=_e,_e=H[oe],H[oe]=-H[te-oe-1],H[te-oe-1]=-_e}},M.prototype.normalize13b=function(N,H){for(var te=0,oe=0;oe<H/2;oe++){var _e=Math.round(N[2*oe+1]/H)*8192+Math.round(N[2*oe]/H)+te;N[oe]=_e&67108863,_e<67108864?te=0:te=_e/67108864|0}return N},M.prototype.convert13b=function(N,H,te,oe){for(var _e=0,Ee=0;Ee<H;Ee++)_e=_e+(N[Ee]|0),te[2*Ee]=_e&8191,_e=_e>>>13,te[2*Ee+1]=_e&8191,_e=_e>>>13;for(Ee=2*H;Ee<oe;++Ee)te[Ee]=0;u(_e===0),u((_e&-8192)===0)},M.prototype.stub=function(N){for(var H=new Array(N),te=0;te<N;te++)H[te]=0;return H},M.prototype.mulp=function(N,H,te){var oe=2*this.guessLen13b(N.length,H.length),_e=this.makeRBT(oe),Ee=this.stub(oe),Ce=new Array(oe),me=new Array(oe),ie=new Array(oe),Se=new Array(oe),Le=new Array(oe),Ae=new Array(oe),Fe=te.words;Fe.length=oe,this.convert13b(N.words,N.length,Ce,oe),this.convert13b(H.words,H.length,Se,oe),this.transform(Ce,Ee,me,ie,oe,_e),this.transform(Se,Ee,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,Fe,Ee,oe,_e),this.conjugate(Fe,Ee,oe),this.normalize13b(Fe,oe),te.negative=N.negative^H.negative,te.length=N.length+H.length,te.strip()},f.prototype.mul=function(N){var H=new f(null);return H.words=new Array(this.length+N.length),this.mulTo(N,H)},f.prototype.mulf=function(N){var H=new f(null);return H.words=new Array(this.length+N.length),C(this,N,H)},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 H=0,te=0;te<this.length;te++){var oe=(this.words[te]|0)*N,_e=(oe&67108863)+(H&67108863);H>>=26,H+=oe/67108864|0,H+=_e>>>26,this.words[te]=_e&67108863}return H!==0&&(this.words[te]=H,this.length++),this},f.prototype.muln=function(N){return this.clone().imuln(N)},f.prototype.sqr=function(){return this.mul(this)},f.prototype.isqr=function(){return this.imul(this.clone())},f.prototype.pow=function(N){var H=E(N);if(H.length===0)return new f(1);for(var te=this,oe=0;oe<H.length&&H[oe]===0;oe++,te=te.sqr());if(++oe<H.length)for(var _e=te.sqr();oe<H.length;oe++,_e=_e.sqr())H[oe]!==0&&(te=te.mul(_e));return te},f.prototype.iushln=function(N){u(typeof N=="number"&&N>=0);var H=N%26,te=(N-H)/26,oe=67108863>>>26-H<<26-H,_e;if(H!==0){var Ee=0;for(_e=0;_e<this.length;_e++){var Ce=this.words[_e]&oe,me=(this.words[_e]|0)-Ce<<H;this.words[_e]=me|Ee,Ee=Ce>>>26-H}Ee&&(this.words[_e]=Ee,this.length++)}if(te!==0){for(_e=this.length-1;_e>=0;_e--)this.words[_e+te]=this.words[_e];for(_e=0;_e<te;_e++)this.words[_e]=0;this.length+=te}return this.strip()},f.prototype.ishln=function(N){return u(this.negative===0),this.iushln(N)},f.prototype.iushrn=function(N,H,te){u(typeof N=="number"&&N>=0);var oe;H?oe=(H-H%26)/26:oe=0;var _e=N%26,Ee=Math.min((N-_e)/26,this.length),Ce=67108863^67108863>>>_e<<_e,me=te;if(oe-=Ee,oe=Math.max(0,oe),me){for(var ie=0;ie<Ee;ie++)me.words[ie]=this.words[ie];me.length=Ee}if(Ee!==0)if(this.length>Ee)for(this.length-=Ee,ie=0;ie<this.length;ie++)this.words[ie]=this.words[ie+Ee];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&Ce}return me&&Se!==0&&(me.words[me.length++]=Se),this.length===0&&(this.words[0]=0,this.length=1),this.strip()},f.prototype.ishrn=function(N,H,te){return u(this.negative===0),this.iushrn(N,H,te)},f.prototype.shln=function(N){return this.clone().ishln(N)},f.prototype.ushln=function(N){return this.clone().iushln(N)},f.prototype.shrn=function(N){return this.clone().ishrn(N)},f.prototype.ushrn=function(N){return this.clone().iushrn(N)},f.prototype.testn=function(N){u(typeof N=="number"&&N>=0);var H=N%26,te=(N-H)/26,oe=1<<H;if(this.length<=te)return!1;var _e=this.words[te];return!!(_e&oe)},f.prototype.imaskn=function(N){u(typeof N=="number"&&N>=0);var H=N%26,te=(N-H)/26;if(u(this.negative===0,"imaskn works only with positive numbers"),this.length<=te)return this;if(H!==0&&te++,this.length=Math.min(te,this.length),H!==0){var oe=67108863^67108863>>>H<<H;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 H=0;H<this.length&&this.words[H]>=67108864;H++)this.words[H]-=67108864,H===this.length-1?this.words[H+1]=1:this.words[H+1]++;return this.length=Math.max(this.length,H+1),this},f.prototype.isubn=function(N){if(u(typeof N=="number"),u(N<67108864),N<0)return this.iaddn(-N);if(this.negative!==0)return this.negative=0,this.iaddn(N),this.negative=1,this;if(this.words[0]-=N,this.length===1&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var H=0;H<this.length&&this.words[H]<0;H++)this.words[H]+=67108864,this.words[H+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,H,te){var oe=N.length+te,_e;this._expand(oe);var Ee,Ce=0;for(_e=0;_e<N.length;_e++){Ee=(this.words[_e+te]|0)+Ce;var me=(N.words[_e]|0)*H;Ee-=me&67108863,Ce=(Ee>>26)-(me/67108864|0),this.words[_e+te]=Ee&67108863}for(;_e<this.length-te;_e++)Ee=(this.words[_e+te]|0)+Ce,Ce=Ee>>26,this.words[_e+te]=Ee&67108863;if(Ce===0)return this.strip();for(u(Ce===-1),Ce=0,_e=0;_e<this.length;_e++)Ee=-(this.words[_e]|0)+Ce,Ce=Ee>>26,this.words[_e]=Ee&67108863;return this.negative=1,this.strip()},f.prototype._wordDiv=function(N,H){var te=this.length-N.length,oe=this.clone(),_e=N,Ee=_e.words[_e.length-1]|0,Ce=this._countBits(Ee);te=26-Ce,te!==0&&(_e=_e.ushln(te),oe.iushln(te),Ee=_e.words[_e.length-1]|0);var me=oe.length-_e.length,ie;if(H!=="mod"){ie=new f(null),ie.length=me+1,ie.words=new Array(ie.length);for(var Se=0;Se<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 Fe=(oe.words[_e.length+Ae]|0)*67108864+(oe.words[_e.length+Ae-1]|0);for(Fe=Math.min(Fe/Ee|0,67108863),oe._ishlnsubmul(_e,Fe,Ae);oe.negative!==0;)Fe--,oe.negative=0,oe._ishlnsubmul(_e,1,Ae),oe.isZero()||(oe.negative^=1);ie&&(ie.words[Ae]=Fe)}return ie&&ie.strip(),oe.strip(),H!=="div"&&te!==0&&oe.iushrn(te),{div:ie||null,mod:oe}},f.prototype.divmod=function(N,H,te){if(u(!N.isZero()),this.isZero())return{div:new f(0),mod:new f(0)};var oe,_e,Ee;return this.negative!==0&&N.negative===0?(Ee=this.neg().divmod(N,H),H!=="mod"&&(oe=Ee.div.neg()),H!=="div"&&(_e=Ee.mod.neg(),te&&_e.negative!==0&&_e.iadd(N)),{div:oe,mod:_e}):this.negative===0&&N.negative!==0?(Ee=this.divmod(N.neg(),H),H!=="mod"&&(oe=Ee.div.neg()),{div:oe,mod:Ee.mod}):(this.negative&N.negative)!==0?(Ee=this.neg().divmod(N.neg(),H),H!=="div"&&(_e=Ee.mod.neg(),te&&_e.negative!==0&&_e.isub(N)),{div:Ee.div,mod:_e}):N.length>this.length||this.cmp(N)<0?{div:new f(0),mod:this}:N.length===1?H==="div"?{div:this.divn(N.words[0]),mod:null}:H==="mod"?{div:null,mod:new f(this.modn(N.words[0]))}:{div:this.divn(N.words[0]),mod:new f(this.modn(N.words[0]))}:this._wordDiv(N,H)},f.prototype.div=function(N){return this.divmod(N,"div",!1).div},f.prototype.mod=function(N){return this.divmod(N,"mod",!1).mod},f.prototype.umod=function(N){return this.divmod(N,"mod",!0).mod},f.prototype.divRound=function(N){var H=this.divmod(N);if(H.mod.isZero())return H.div;var te=H.div.negative!==0?H.mod.isub(N):H.mod,oe=N.ushrn(1),_e=N.andln(1),Ee=te.cmp(oe);return Ee<0||_e===1&&Ee===0?H.div:H.div.negative!==0?H.div.isubn(1):H.div.iaddn(1)},f.prototype.modn=function(N){u(N<=67108863);for(var H=(1<<26)%N,te=0,oe=this.length-1;oe>=0;oe--)te=(H*te+(this.words[oe]|0))%N;return te},f.prototype.idivn=function(N){u(N<=67108863);for(var H=0,te=this.length-1;te>=0;te--){var oe=(this.words[te]|0)+H*67108864;this.words[te]=oe/N|0,H=oe%N}return this.strip()},f.prototype.divn=function(N){return this.clone().idivn(N)},f.prototype.egcd=function(N){u(N.negative===0),u(!N.isZero());var H=this,te=N.clone();H.negative!==0?H=H.umod(N):H=H.clone();for(var oe=new f(1),_e=new f(0),Ee=new f(0),Ce=new f(1),me=0;H.isEven()&&te.isEven();)H.iushrn(1),te.iushrn(1),++me;for(var ie=te.clone(),Se=H.clone();!H.isZero();){for(var Le=0,Ae=1;(H.words[0]&Ae)===0&&Le<26;++Le,Ae<<=1);if(Le>0)for(H.iushrn(Le);Le-- >0;)(oe.isOdd()||_e.isOdd())&&(oe.iadd(ie),_e.isub(Se)),oe.iushrn(1),_e.iushrn(1);for(var Fe=0,Pe=1;(te.words[0]&Pe)===0&&Fe<26;++Fe,Pe<<=1);if(Fe>0)for(te.iushrn(Fe);Fe-- >0;)(Ee.isOdd()||Ce.isOdd())&&(Ee.iadd(ie),Ce.isub(Se)),Ee.iushrn(1),Ce.iushrn(1);H.cmp(te)>=0?(H.isub(te),oe.isub(Ee),_e.isub(Ce)):(te.isub(H),Ee.isub(oe),Ce.isub(_e))}return{a:Ee,b:Ce,gcd:te.iushln(me)}},f.prototype._invmp=function(N){u(N.negative===0),u(!N.isZero());var H=this,te=N.clone();H.negative!==0?H=H.umod(N):H=H.clone();for(var oe=new f(1),_e=new f(0),Ee=te.clone();H.cmpn(1)>0&&te.cmpn(1)>0;){for(var Ce=0,me=1;(H.words[0]&me)===0&&Ce<26;++Ce,me<<=1);if(Ce>0)for(H.iushrn(Ce);Ce-- >0;)oe.isOdd()&&oe.iadd(Ee),oe.iushrn(1);for(var ie=0,Se=1;(te.words[0]&Se)===0&&ie<26;++ie,Se<<=1);if(ie>0)for(te.iushrn(ie);ie-- >0;)_e.isOdd()&&_e.iadd(Ee),_e.iushrn(1);H.cmp(te)>=0?(H.isub(te),oe.isub(_e)):(te.isub(H),_e.isub(oe))}var Le;return H.cmpn(1)===0?Le=oe:Le=_e,Le.cmpn(0)<0&&Le.iadd(N),Le},f.prototype.gcd=function(N){if(this.isZero())return N.abs();if(N.isZero())return this.abs();var H=this.clone(),te=N.clone();H.negative=0,te.negative=0;for(var oe=0;H.isEven()&&te.isEven();oe++)H.iushrn(1),te.iushrn(1);do{for(;H.isEven();)H.iushrn(1);for(;te.isEven();)te.iushrn(1);var _e=H.cmp(te);if(_e<0){var Ee=H;H=te,te=Ee}else if(_e===0||te.cmpn(1)===0)break;H.isub(te)}while(!0);return te.iushln(oe)},f.prototype.invm=function(N){return this.egcd(N).a.umod(N)},f.prototype.isEven=function(){return(this.words[0]&1)===0},f.prototype.isOdd=function(){return(this.words[0]&1)===1},f.prototype.andln=function(N){return this.words[0]&N},f.prototype.bincn=function(N){u(typeof N=="number");var H=N%26,te=(N-H)/26,oe=1<<H;if(this.length<=te)return this._expand(te+1),this.words[te]|=oe,this;for(var _e=oe,Ee=te;_e!==0&&Ee<this.length;Ee++){var Ce=this.words[Ee]|0;Ce+=_e,_e=Ce>>>26,Ce&=67108863,this.words[Ee]=Ce}return _e!==0&&(this.words[Ee]=_e,this.length++),this},f.prototype.isZero=function(){return this.length===1&&this.words[0]===0},f.prototype.cmpn=function(N){var H=N<0;if(this.negative!==0&&!H)return-1;if(this.negative===0&&H)return 1;this.strip();var te;if(this.length>1)te=1;else{H&&(N=-N),u(N<=67108863,"Number is too big");var oe=this.words[0]|0;te=oe===N?0:oe<N?-1:1}return this.negative!==0?-te|0:te},f.prototype.cmp=function(N){if(this.negative!==0&&N.negative===0)return-1;if(this.negative===0&&N.negative!==0)return 1;var H=this.ucmp(N);return this.negative!==0?-H|0:H},f.prototype.ucmp=function(N){if(this.length>N.length)return 1;if(this.length<N.length)return-1;for(var H=0,te=this.length-1;te>=0;te--){var oe=this.words[te]|0,_e=N.words[te]|0;if(oe!==_e){oe<_e?H=-1:oe>_e&&(H=1);break}}return H},f.prototype.gtn=function(N){return this.cmpn(N)===1},f.prototype.gt=function(N){return this.cmp(N)===1},f.prototype.gten=function(N){return this.cmpn(N)>=0},f.prototype.gte=function(N){return this.cmp(N)>=0},f.prototype.ltn=function(N){return this.cmpn(N)===-1},f.prototype.lt=function(N){return this.cmp(N)===-1},f.prototype.lten=function(N){return this.cmpn(N)<=0},f.prototype.lte=function(N){return this.cmp(N)<=0},f.prototype.eqn=function(N){return this.cmpn(N)===0},f.prototype.eq=function(N){return this.cmp(N)===0},f.red=function(N){return new G(N)},f.prototype.toRed=function(N){return u(!this.red,"Already a number in reduction context"),u(this.negative===0,"red works only with positives"),N.convertTo(this)._forceRed(N)},f.prototype.fromRed=function(){return u(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},f.prototype._forceRed=function(N){return this.red=N,this},f.prototype.forceRed=function(N){return u(!this.red,"Already a number in reduction context"),this._forceRed(N)},f.prototype.redAdd=function(N){return u(this.red,"redAdd works only with red numbers"),this.red.add(this,N)},f.prototype.redIAdd=function(N){return u(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,N)},f.prototype.redSub=function(N){return u(this.red,"redSub works only with red numbers"),this.red.sub(this,N)},f.prototype.redISub=function(N){return u(this.red,"redISub works only with red numbers"),this.red.isub(this,N)},f.prototype.redShl=function(N){return u(this.red,"redShl works only with red numbers"),this.red.shl(this,N)},f.prototype.redMul=function(N){return u(this.red,"redMul works only with red numbers"),this.red._verify2(this,N),this.red.mul(this,N)},f.prototype.redIMul=function(N){return u(this.red,"redMul works only with red numbers"),this.red._verify2(this,N),this.red.imul(this,N)},f.prototype.redSqr=function(){return u(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},f.prototype.redISqr=function(){return u(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},f.prototype.redSqrt=function(){return u(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},f.prototype.redInvm=function(){return u(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},f.prototype.redNeg=function(){return u(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},f.prototype.redPow=function(N){return u(this.red&&!N.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,N)};var g={k256:null,p224:null,p192:null,p25519:null};function P(j,N){this.name=j,this.p=new f(N,16),this.n=this.p.bitLength(),this.k=new f(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}P.prototype._tmp=function(){var N=new f(null);return N.words=new Array(Math.ceil(this.n/13)),N},P.prototype.ireduce=function(N){var H=N,te;do this.split(H,this.tmp),H=this.imulK(H),H=H.iadd(this.tmp),te=H.bitLength();while(te>this.n);var oe=te<this.n?-1:H.ucmp(this.p);return oe===0?(H.words[0]=0,H.length=1):oe>0?H.isub(this.p):H.strip!==void 0?H.strip():H._strip(),H},P.prototype.split=function(N,H){N.iushrn(this.n,0,H)},P.prototype.imulK=function(N){return N.imul(this.k)};function T(){P.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}c(T,P),T.prototype.split=function(N,H){for(var te=4194303,oe=Math.min(N.length,9),_e=0;_e<oe;_e++)H.words[_e]=N.words[_e];if(H.length=oe,N.length<=9){N.words[0]=0,N.length=1;return}var Ee=N.words[9];for(H.words[H.length++]=Ee&te,_e=10;_e<N.length;_e++){var Ce=N.words[_e]|0;N.words[_e-10]=(Ce&te)<<4|Ee>>>22,Ee=Ce}Ee>>>=22,N.words[_e-10]=Ee,Ee===0&&N.length>10?N.length-=10:N.length-=9},T.prototype.imulK=function(N){N.words[N.length]=0,N.words[N.length+1]=0,N.length+=2;for(var H=0,te=0;te<N.length;te++){var oe=N.words[te]|0;H+=oe*977,N.words[te]=H&67108863,H=oe*64+(H/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 H=0,te=0;te<N.length;te++){var oe=(N.words[te]|0)*19+H,_e=oe&67108863;oe>>>=26,N.words[te]=_e,H=oe}return H!==0&&(N.words[N.length++]=H),N},f._prime=function(N){if(g[N])return g[N];var H;if(N==="k256")H=new T;else if(N==="p224")H=new z;else if(N==="p192")H=new O;else if(N==="p25519")H=new V;else throw new Error("Unknown prime "+N);return g[N]=H,H};function G(j){if(typeof j=="string"){var N=f._prime(j);this.m=N.p,this.prime=N}else u(j.gtn(1),"modulus must be greater than 1"),this.m=j,this.prime=null}G.prototype._verify1=function(N){u(N.negative===0,"red works only with positives"),u(N.red,"red works only with red numbers")},G.prototype._verify2=function(N,H){u((N.negative|H.negative)===0,"red works only with positives"),u(N.red&&N.red===H.red,"red works only with red numbers")},G.prototype.imod=function(N){return this.prime?this.prime.ireduce(N)._forceRed(this):N.umod(this.m)._forceRed(this)},G.prototype.neg=function(N){return N.isZero()?N.clone():this.m.sub(N)._forceRed(this)},G.prototype.add=function(N,H){this._verify2(N,H);var te=N.add(H);return te.cmp(this.m)>=0&&te.isub(this.m),te._forceRed(this)},G.prototype.iadd=function(N,H){this._verify2(N,H);var te=N.iadd(H);return te.cmp(this.m)>=0&&te.isub(this.m),te},G.prototype.sub=function(N,H){this._verify2(N,H);var te=N.sub(H);return te.cmpn(0)<0&&te.iadd(this.m),te._forceRed(this)},G.prototype.isub=function(N,H){this._verify2(N,H);var te=N.isub(H);return te.cmpn(0)<0&&te.iadd(this.m),te},G.prototype.shl=function(N,H){return this._verify1(N),this.imod(N.ushln(H))},G.prototype.imul=function(N,H){return this._verify2(N,H),this.imod(N.imul(H))},G.prototype.mul=function(N,H){return this._verify2(N,H),this.imod(N.mul(H))},G.prototype.isqr=function(N){return this.imul(N,N.clone())},G.prototype.sqr=function(N){return this.mul(N,N)},G.prototype.sqrt=function(N){if(N.isZero())return N.clone();var H=this.m.andln(3);if(u(H%2===1),H===3){var te=this.m.add(new f(1)).iushrn(2);return this.pow(N,te)}for(var oe=this.m.subn(1),_e=0;!oe.isZero()&&oe.andln(1)===0;)_e++,oe.iushrn(1);u(!oe.isZero());var Ee=new f(1).toRed(this),Ce=Ee.redNeg(),me=this.m.subn(1).iushrn(1),ie=this.m.bitLength();for(ie=new f(2*ie*ie).toRed(this);this.pow(ie,me).cmp(Ce)!==0;)ie.redIAdd(Ce);for(var Se=this.pow(ie,oe),Le=this.pow(N,oe.addn(1).iushrn(1)),Ae=this.pow(N,oe),Fe=_e;Ae.cmp(Ee)!==0;){for(var Pe=Ae,ge=0;Pe.cmp(Ee)!==0;ge++)Pe=Pe.redSqr();u(ge<Fe);var Re=this.pow(Se,new f(1).iushln(Fe-ge-1));Le=Le.redMul(Re),Se=Re.redSqr(),Ae=Ae.redMul(Se),Fe=ge}return Le},G.prototype.invm=function(N){var H=N._invmp(this.m);return H.negative!==0?(H.negative=0,this.imod(H).redNeg()):this.imod(H)},G.prototype.pow=function(N,H){if(H.isZero())return new f(1).toRed(this);if(H.cmpn(1)===0)return N.clone();var te=4,oe=new Array(1<<te);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 Ee=oe[0],Ce=0,me=0,ie=H.bitLength()%26;for(ie===0&&(ie=26),_e=H.length-1;_e>=0;_e--){for(var Se=H.words[_e],Le=ie-1;Le>=0;Le--){var Ae=Se>>Le&1;if(Ee!==oe[0]&&(Ee=this.sqr(Ee)),Ae===0&&Ce===0){me=0;continue}Ce<<=1,Ce|=Ae,me++,!(me!==te&&(_e!==0||Le!==0))&&(Ee=this.mul(Ee,oe[Ce]),me=0,Ce=0)}ie=26}return Ee},G.prototype.convertTo=function(N){var H=N.umod(this.m);return H===N?H.clone():H},G.prototype.convertFrom=function(N){var H=N.clone();return H.red=null,H},f.mont=function(N){return new Z(N)};function Z(j){G.call(this,j),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new f(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}c(Z,G),Z.prototype.convertTo=function(N){return this.imod(N.ushln(this.shift))},Z.prototype.convertFrom=function(N){var H=this.imod(N.mul(this.rinv));return H.red=null,H},Z.prototype.imul=function(N,H){if(N.isZero()||H.isZero())return N.words[0]=0,N.length=1,N;var te=N.imul(H),oe=te.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),_e=te.isub(oe).iushrn(this.shift),Ee=_e;return _e.cmp(this.m)>=0?Ee=_e.isub(this.m):_e.cmpn(0)<0&&(Ee=_e.iadd(this.m)),Ee._forceRed(this)},Z.prototype.mul=function(N,H){if(N.isZero()||H.isZero())return new f(0)._forceRed(this);var te=N.mul(H),oe=te.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),_e=te.isub(oe).iushrn(this.shift),Ee=_e;return _e.cmp(this.m)>=0?Ee=_e.isub(this.m):_e.cmpn(0)<0&&(Ee=_e.iadd(this.m)),Ee._forceRed(this)},Z.prototype.invm=function(N){var H=this.imod(N._invmp(this.m).mul(this.r2));return H._forceRed(this)}}(i,this)},6860:function(i){i.exports=a;function a(o,s,l){return o[0]=s[0]-l[0],o[1]=s[1]-l[1],o[2]=s[2]-l[2],o[3]=s[3]-l[3],o}},6864:function(i){i.exports=a;function a(){var o=new Float32Array(16);return o[0]=1,o[1]=0,o[2]=0,o[3]=0,o[4]=0,o[5]=1,o[6]=0,o[7]=0,o[8]=0,o[9]=0,o[10]=1,o[11]=0,o[12]=0,o[13]=0,o[14]=0,o[15]=1,o}},6867:function(i,a,o){"use strict";i.exports=p;var s=o(1888),l=o(855),u=o(7150);function c(k,E){for(var S=0;S<k;++S)if(!(E[S]<=E[S+k]))return!0;return!1}function f(k,E,S,L){for(var x=0,C=0,M=0,g=k.length;M<g;++M){var P=k[M];if(!c(E,P)){for(var T=0;T<2*E;++T)S[x++]=P[T];L[C++]=M}}return C}function h(k,E,S,L){var x=k.length,C=E.length;if(!(x<=0||C<=0)){var M=k[0].length>>>1;if(!(M<=0)){var g,P=s.mallocDouble(2*M*x),T=s.mallocInt32(x);if(x=f(k,M,P,T),x>0){if(M===1&&L)l.init(x),g=l.sweepComplete(M,S,0,x,P,T,0,x,P,T);else{var z=s.mallocDouble(2*M*C),O=s.mallocInt32(C);C=f(E,M,z,O),C>0&&(l.init(x+C),M===1?g=l.sweepBipartite(M,S,0,x,P,T,0,C,z,O):g=u(M,S,L,x,P,T,C,z,O),s.free(z),s.free(O))}s.free(P),s.free(T)}return g}}}var d;function v(k,E){d.push([k,E])}function _(k){return d=[],h(k,k,v,!0),d}function b(k,E){return d=[],h(k,E,v,!1),d}function p(k,E,S){switch(arguments.length){case 1:return _(k);case 2:return typeof E=="function"?h(k,k,E,!0):b(k,E);case 3:return h(k,E,S,!1);default:throw new Error("box-intersect: Invalid arguments")}}},6894:function(i){i.exports=a;function a(o,s,l,u){var c=l[1],f=l[2],h=s[1]-c,d=s[2]-f,v=Math.sin(u),_=Math.cos(u);return o[0]=s[0],o[1]=c+h*_-d*v,o[2]=f+h*v+d*_,o}},7004:function(i){"use strict";i.exports=a;function a(o){for(var s=o.length,l=o[o.length-1],u=s,c=s-2;c>=0;--c){var f=l,h=o[c];l=f+h;var d=l-f,v=h-d;v&&(o[--u]=l,l=v)}for(var _=0,c=u;c<s;++c){var f=o[c],h=l;l=f+h;var d=l-f,v=h-d;v&&(o[_++]=v)}return o[_++]=l,o.length=_,o}},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)}},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],_=s[4],b=s[5],p=s[6],k=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+_*u,o[1]=h*c+b*u,o[2]=d*c+p*u,o[3]=v*c+k*u,o[4]=_*c-f*u,o[5]=b*c-h*u,o[6]=p*c-d*u,o[7]=k*c-v*u,o}},7150:function(i,a,o){"use strict";i.exports=j;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),_=128,b=1<<22,p=1<<22,k=v("!(lo>=p0)&&!(p1>=hi)"),E=v("lo===p0"),S=v("lo<p0"),L=v("hi<=p0"),x=v("lo<=p0&&p0<=hi"),C=v("lo<p0&&p0<=hi"),M=6,g=2,P=1024,T=s.mallocInt32(P),z=s.mallocDouble(P);function O(N,H){var te=8*l.log2(H+1)*(N+1)|0,oe=l.nextPow2(M*te);T.length<oe&&(s.free(T),T=s.mallocInt32(oe));var _e=l.nextPow2(g*te);z.length<_e&&(s.free(z),z=s.mallocDouble(_e))}function V(N,H,te,oe,_e,Ee,Ce,me,ie){var Se=M*N;T[Se]=H,T[Se+1]=te,T[Se+2]=oe,T[Se+3]=_e,T[Se+4]=Ee,T[Se+5]=Ce;var Le=g*N;z[Le]=me,z[Le+1]=ie}function G(N,H,te,oe,_e,Ee,Ce,me,ie,Se,Le){var Ae=2*N,Fe=ie*Ae,Pe=Se[Fe+H];e:for(var ge=_e,Re=_e*Ae;ge<Ee;++ge,Re+=Ae){var ce=Ce[Re+H],Ze=Ce[Re+H+N];if(!(Pe<ce||Ze<Pe)&&!(oe&&Pe===ce)){for(var ut=me[ge],pt=H+1;pt<N;++pt){var ce=Ce[Re+pt],Ze=Ce[Re+pt+N],Zt=Se[Fe+pt],st=Se[Fe+pt+N];if(Ze<Zt||st<ce)continue e}var lt;if(oe?lt=te(Le,ut):lt=te(ut,Le),lt!==void 0)return lt}}}function Z(N,H,te,oe,_e,Ee,Ce,me,ie,Se){var Le=2*N,Ae=me*Le,Fe=ie[Ae+H];e:for(var Pe=oe,ge=oe*Le;Pe<_e;++Pe,ge+=Le){var Re=Ce[Pe];if(Re!==Se){var ce=Ee[ge+H],Ze=Ee[ge+H+N];if(!(Fe<ce||Ze<Fe)){for(var ut=H+1;ut<N;++ut){var ce=Ee[ge+ut],Ze=Ee[ge+ut+N],pt=ie[Ae+ut],Zt=ie[Ae+ut+N];if(Ze<pt||Zt<ce)continue e}var st=te(Re,Se);if(st!==void 0)return st}}}}function j(N,H,te,oe,_e,Ee,Ce,me,ie){O(N,oe+Ce);var Se=0,Le=2*N,Ae;for(V(Se++,0,0,oe,0,Ce,te?16:0,-1/0,1/0),te||V(Se++,0,0,Ce,0,oe,1,-1/0,1/0);Se>0;){Se-=1;var Fe=Se*M,Pe=T[Fe],ge=T[Fe+1],Re=T[Fe+2],ce=T[Fe+3],Ze=T[Fe+4],ut=T[Fe+5],pt=Se*g,Zt=z[pt],st=z[pt+1],lt=ut&1,Gt=!!(ut&16),Nt=_e,Jt=Ee,sr=me,wr=ie;if(lt&&(Nt=me,Jt=ie,sr=_e,wr=Ee),!(ut&2&&(Re=S(N,Pe,ge,Re,Nt,Jt,st),ge>=Re))&&!(ut&4&&(ge=L(N,Pe,ge,Re,Nt,Jt,Zt),ge>=Re))){var cr=Re-ge,$e=Ze-ce;if(Gt){if(N*cr*(cr+$e)<p){if(Ae=h.scanComplete(N,Pe,H,ge,Re,Nt,Jt,ce,Ze,sr,wr),Ae!==void 0)return Ae;continue}}else if(N*Math.min(cr,$e)<_){if(Ae=c(N,Pe,H,lt,ge,Re,Nt,Jt,ce,Ze,sr,wr),Ae!==void 0)return Ae;continue}else if(N*cr*$e<b){if(Ae=h.scanBipartite(N,Pe,H,lt,ge,Re,Nt,Jt,ce,Ze,sr,wr),Ae!==void 0)return Ae;continue}var St=k(N,Pe,ge,Re,Nt,Jt,Zt,st);if(ge<St)if(N*(St-ge)<_){if(Ae=f(N,Pe+1,H,ge,St,Nt,Jt,ce,Ze,sr,wr),Ae!==void 0)return Ae}else if(Pe===N-2){if(lt?Ae=h.sweepBipartite(N,H,ce,Ze,sr,wr,ge,St,Nt,Jt):Ae=h.sweepBipartite(N,H,ge,St,Nt,Jt,ce,Ze,sr,wr),Ae!==void 0)return Ae}else V(Se++,Pe+1,ge,St,ce,Ze,lt,-1/0,1/0),V(Se++,Pe+1,ce,Ze,ge,St,lt^1,-1/0,1/0);if(St<Re){var Qt=d(N,Pe,ce,Ze,sr,wr),Vt=sr[Le*Qt+Pe],_t=E(N,Pe,Qt,Ze,sr,wr,Vt);if(_t<Ze&&V(Se++,Pe,St,Re,_t,Ze,(lt|4)+(Gt?16:0),Vt,st),ce<Qt&&V(Se++,Pe,St,Re,ce,Qt,(lt|2)+(Gt?16:0),Zt,Vt),Qt+1===_t){if(Gt?Ae=Z(N,Pe,H,St,Re,Nt,Jt,Qt,sr,wr[Qt]):Ae=G(N,Pe,H,lt,St,Re,Nt,Jt,Qt,sr,wr[Qt]),Ae!==void 0)return Ae}else if(Qt<_t){var It;if(Gt){if(It=x(N,Pe,St,Re,Nt,Jt,Vt),St<It){var mt=E(N,Pe,St,It,Nt,Jt,Vt);if(Pe===N-2){if(St<mt&&(Ae=h.sweepComplete(N,H,St,mt,Nt,Jt,Qt,_t,sr,wr),Ae!==void 0)||mt<It&&(Ae=h.sweepBipartite(N,H,mt,It,Nt,Jt,Qt,_t,sr,wr),Ae!==void 0))return Ae}else St<mt&&V(Se++,Pe+1,St,mt,Qt,_t,16,-1/0,1/0),mt<It&&(V(Se++,Pe+1,mt,It,Qt,_t,0,-1/0,1/0),V(Se++,Pe+1,Qt,_t,mt,It,1,-1/0,1/0))}}else lt?It=C(N,Pe,St,Re,Nt,Jt,Vt):It=x(N,Pe,St,Re,Nt,Jt,Vt),St<It&&(Pe===N-2?lt?Ae=h.sweepBipartite(N,H,Qt,_t,sr,wr,St,It,Nt,Jt):Ae=h.sweepBipartite(N,H,St,It,Nt,Jt,Qt,_t,sr,wr):(V(Se++,Pe+1,St,It,Qt,_t,lt,-1/0,1/0),V(Se++,Pe+1,Qt,_t,St,It,lt^1,-1/0,1/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))}},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 _=l(h,new Float32Array([-1,-1,-1,4,4,-1]));d=u(h,[{buffer:_,type:h.FLOAT,size:2}]),d._triangleBuffer=_,c.set(h,d)}d.bind(),h.drawArrays(h.TRIANGLES,0,3),d.unbind()}i.exports=f},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,_,b){return s.identity(f),s.fromRotationTranslation(f,b,h),f[3]=_[0],f[7]=_[1],f[11]=_[2],f[15]=_[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}},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),_=o(7608),b=o(9618),p=o(6729),k=o(7765),E=o(1888),S=o(840),L=o(7626),x=S.meshShader,C=S.wireShader,M=S.pointShader,g=S.pickShader,P=S.pointPickShader,T=S.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,Fe,Pe,ge,Re,ce,Ze,ut,pt,Zt,st,lt,Gt,Nt,Jt,sr,wr,cr,$e,St,Qt,Vt,_t){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=Fe,this.pointPickShader=Pe,this.contourShader=ge,this.trianglePositions=Re,this.triangleColors=Ze,this.triangleNormals=pt,this.triangleUVs=ut,this.triangleIds=ce,this.triangleVAO=Zt,this.triangleCount=0,this.lineWidth=1,this.edgePositions=st,this.edgeColors=Gt,this.edgeUVs=Nt,this.edgeIds=lt,this.edgeVAO=Jt,this.edgeCount=0,this.pointPositions=sr,this.pointColors=cr,this.pointUVs=$e,this.pointSizes=St,this.pointIds=wr,this.pointVAO=Qt,this.pointCount=0,this.contourLineWidth=1,this.contourPositions=Vt,this.contourVAO=_t,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 Fe=Se[Ae],Pe=0;Pe<3;++Pe)Le[4*Ae+Pe]=Fe[Pe];ie?Le[4*Ae+3]=255*G(Ae/255,ie):Le[4*Ae+3]=255*Fe[3]}return b(Le,[256,256,4],[4,0,1])}function j(me){for(var ie=me.length,Se=new Array(ie),Le=0;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=k(this.cells,this.intensity,me.intensity),Se=ie.cells,Le=ie.vertexIds,Ae=ie.vertexWeights,Fe=Se.length,Pe=E.mallocFloat32(2*3*Fe),ge=0,Re=0;Re<Fe;++Re)for(var ce=Se[Re],Ze=0;Ze<2;++Ze){var ut=ce[0];ce.length===2&&(ut=ce[Ze]);for(var pt=Le[ut][0],Zt=Le[ut][1],st=Ae[ut],lt=1-st,Gt=this.positions[pt],Nt=this.positions[Zt],Jt=0;Jt<3;++Jt)Pe[ge++]=st*Gt[Jt]+lt*Nt[Jt]}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=[],Fe=[],Pe=[],ge=[],Re=[],ce=[],Ze=[],ut=[],pt=[],Zt=[],st=[],lt=[],Gt=[],Nt=[];this.cells=Se,this.positions=Le;var Jt=me.vertexNormals,sr=me.cellNormals,wr=me.vertexNormalsEpsilon===void 0?s:me.vertexNormalsEpsilon,cr=me.faceNormalsEpsilon===void 0?l:me.faceNormalsEpsilon;me.useFacetNormals&&!sr&&(sr=d.faceNormals(Se,Le,cr)),!sr&&!Jt&&(Jt=d.vertexNormals(Se,Le,wr));var $e=me.vertexColors,St=me.cellColors,Qt=me.meshColor||[1,1,1,1],Vt=me.vertexUVs,_t=me.vertexIntensity,It=me.cellUVs,mt=me.cellIntensity,er=1/0,lr=-1/0;if(!Vt&&!It)if(_t)if(me.vertexIntensityBounds)er=+me.vertexIntensityBounds[0],lr=+me.vertexIntensityBounds[1];else for(var Tr=0;Tr<_t.length;++Tr){var Lr=_t[Tr];er=Math.min(er,Lr),lr=Math.max(lr,Lr)}else if(mt)if(me.cellIntensityBounds)er=+me.cellIntensityBounds[0],lr=+me.cellIntensityBounds[1];else for(var Tr=0;Tr<mt.length;++Tr){var Lr=mt[Tr];er=Math.min(er,Lr),lr=Math.max(lr,Lr)}else for(var Tr=0;Tr<Le.length;++Tr){var Lr=Le[Tr][2];er=Math.min(er,Lr),lr=Math.max(lr,Lr)}_t?this.intensity=_t:mt?this.intensity=mt:this.intensity=j(Le),this.pickVertex=!(mt||St);var ti=me.pointSizes,Br=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 Vr=Le[Tr],dt=0;dt<3;++dt)isNaN(Vr[dt])||!isFinite(Vr[dt])||(this.bounds[0][dt]=Math.min(this.bounds[0][dt],Vr[dt]),this.bounds[1][dt]=Math.max(this.bounds[1][dt],Vr[dt]));var Ge=0,Je=0,je=0;e:for(var Tr=0;Tr<Se.length;++Tr){var tt=Se[Tr];switch(tt.length){case 1:for(var xt=tt[0],Vr=Le[xt],dt=0;dt<3;++dt)if(isNaN(Vr[dt])||!isFinite(Vr[dt]))continue e;Zt.push(Vr[0],Vr[1],Vr[2]);var Ie;$e?Ie=$e[xt]:St?Ie=St[Tr]:Ie=Qt,this.opacityscale&&_t?Fe.push(Ie[0],Ie[1],Ie[2],this.opacity*G((_t[xt]-er)/(lr-er),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;Vt?xe=Vt[xt]:_t?xe=[(_t[xt]-er)/(lr-er),0]:It?xe=It[Tr]:mt?xe=[(mt[Tr]-er)/(lr-er),0]:xe=[(Vr[2]-er)/(lr-er),0],lt.push(xe[0],xe[1]),ti?Gt.push(ti[xt]):Gt.push(Br),Nt.push(Tr),je+=1;break;case 2:for(var dt=0;dt<2;++dt)for(var xt=tt[dt],Vr=Le[xt],ke=0;ke<3;++ke)if(isNaN(Vr[ke])||!isFinite(Vr[ke]))continue e;for(var dt=0;dt<2;++dt){var xt=tt[dt],Vr=Le[xt];ce.push(Vr[0],Vr[1],Vr[2]);var Ie;$e?Ie=$e[xt]:St?Ie=St[Tr]:Ie=Qt,this.opacityscale&&_t?Fe.push(Ie[0],Ie[1],Ie[2],this.opacity*G((_t[xt]-er)/(lr-er),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;Vt?xe=Vt[xt]:_t?xe=[(_t[xt]-er)/(lr-er),0]:It?xe=It[Tr]:mt?xe=[(mt[Tr]-er)/(lr-er),0]:xe=[(Vr[2]-er)/(lr-er),0],ut.push(xe[0],xe[1]),pt.push(Tr)}Je+=1;break;case 3:for(var dt=0;dt<3;++dt)for(var xt=tt[dt],Vr=Le[xt],ke=0;ke<3;++ke)if(isNaN(Vr[ke])||!isFinite(Vr[ke]))continue e;for(var dt=0;dt<3;++dt){var xt=tt[2-dt],Vr=Le[xt];Ae.push(Vr[0],Vr[1],Vr[2]);var Ie;$e?Ie=$e[xt]:St?Ie=St[Tr]:Ie=Qt,Ie?this.opacityscale&&_t?Fe.push(Ie[0],Ie[1],Ie[2],this.opacity*G((_t[xt]-er)/(lr-er),this.opacityscale)):Ie.length===3?Fe.push(Ie[0],Ie[1],Ie[2],this.opacity):(Fe.push(Ie[0],Ie[1],Ie[2],Ie[3]*this.opacity),Ie[3]<1&&(this.hasAlpha=!0)):Fe.push(.5,.5,.5,1);var xe;Vt?xe=Vt[xt]:_t?xe=[(_t[xt]-er)/(lr-er),0]:It?xe=It[Tr]:mt?xe=[(mt[Tr]-er)/(lr-er),0]:xe=[(Vr[2]-er)/(lr-er),0],ge.push(xe[0],xe[1]);var vt;Jt?vt=Jt[xt]:vt=sr[Tr],Pe.push(vt[0],vt[1],vt[2]),Re.push(Tr)}Ge+=1;break;default:break}}this.pointCount=je,this.edgeCount=Je,this.triangleCount=Ge,this.pointPositions.update(Zt),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(ut),this.edgeIds.update(new Uint32Array(pt)),this.trianglePositions.update(Ae),this.triangleColors.update(Fe),this.triangleUVs.update(ge),this.triangleNormals.update(Pe),this.triangleIds.update(new Uint32Array(Re))}},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,Fe=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],Pe=0;Pe<3;++Pe)Fe[0][Pe]=Math.max(Fe[0][Pe],this.clipBounds[0][Pe]),Fe[1][Pe]=Math.min(Fe[1][Pe],this.clipBounds[1][Pe]);var ge={model:Se,view:Le,projection:Ae,inverseModel:z.slice(),clipBounds:Fe,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=_(ge.inverseModel,ge.model),ie.disable(ie.CULL_FACE),this.texture.bind(0);var Re=new Array(16);v(Re,ge.view,ge.model),v(Re,ge.projection,Re),_(Re,Re);for(var Pe=0;Pe<3;++Pe)ge.eyePosition[Pe]=Re[12+Pe]/Re[15];for(var ce=Re[15],Pe=0;Pe<3;++Pe)ce+=this.lightPosition[Pe]*Re[4*Pe+3];for(var Pe=0;Pe<3;++Pe){for(var Ze=Re[12+Pe],ut=0;ut<3;++ut)Ze+=Re[4*ut+Pe]*this.lightPosition[ut];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,Fe=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],Pe=0;Pe<3;++Pe)Fe[0][Pe]=Math.max(Fe[0][Pe],this.clipBounds[0][Pe]),Fe[1][Pe]=Math.min(Fe[1][Pe],this.clipBounds[1][Pe]);this._model=[].slice.call(Se),this._view=[].slice.call(Le),this._projection=[].slice.call(Ae),this._resolution=[ie.drawingBufferWidth,ie.drawingBufferHeight];var ge={model:Se,view:Le,projection:Ae,clipBounds:Fe,pickId:this.pickId/255},Re=this.pickShader;if(Re.bind(),Re.uniforms=ge,this.triangleCount>0&&(this.triangleVAO.bind(),ie.drawArrays(ie.TRIANGLES,0,this.triangleCount*3),this.triangleVAO.unbind()),this.edgeCount>0&&(this.edgeVAO.bind(),ie.lineWidth(this.lineWidth*this.pixelRatio),ie.drawArrays(ie.LINES,0,this.edgeCount*2),this.edgeVAO.unbind()),this.pointCount>0){var Re=this.pointPickShader;Re.bind(),Re.uniforms=ge,this.pointVAO.bind(),ie.drawArrays(ie.POINTS,0,this.pointCount),this.pointVAO.unbind()}},V.pick=function(me){if(!me||me.id!==this.pickId)return null;for(var ie=me.value[0]+256*me.value[1]+65536*me.value[2],Se=this.cells[ie],Le=this.positions,Ae=new Array(Se.length),Fe=0;Fe<Se.length;++Fe)Ae[Fe]=Le[Se[Fe]];var Pe=me.coord[0],ge=me.coord[1];if(!this.pickVertex){var Re=this.positions[Se[0]],ce=this.positions[Se[1]],Ze=this.positions[Se[2]],ut=[(Re[0]+ce[0]+Ze[0])/3,(Re[1]+ce[1]+Ze[1])/3,(Re[2]+ce[2]+Ze[2])/3];return{_cellCenter:!0,position:[Pe,ge],index:ie,cell:Se,cellId:ie,intensity:this.intensity[ie],dataCoordinate:ut}}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 Zt=pt[2],st=0,Fe=0;Fe<Se.length;++Fe)st+=Zt[Fe]*this.intensity[Se[Fe]];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,x.vertex,x.fragment);return ie.attributes.position.location=0,ie.attributes.color.location=2,ie.attributes.uv.location=3,ie.attributes.normal.location=4,ie}function H(me){var ie=u(me,C.vertex,C.fragment);return ie.attributes.position.location=0,ie.attributes.color.location=2,ie.attributes.uv.location=3,ie}function te(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 Ee(me){var ie=u(me,T.vertex,T.fragment);return ie.attributes.position.location=0,ie}function Ce(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=H(me),Fe=te(me),Pe=oe(me),ge=_e(me),Re=Ee(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),ut=c(me),pt=c(me),Zt=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:ut,type:me.FLOAT,size:4},{buffer:pt,type:me.FLOAT,size:2},{buffer:Zt,type:me.FLOAT,size:3}]),Gt=c(me),Nt=c(me),Jt=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:Jt,type:me.FLOAT,size:2}]),cr=c(me),$e=c(me),St=c(me),Qt=c(me),Vt=c(me),_t=f(me,[{buffer:cr,type:me.FLOAT,size:3},{buffer:Vt,type:me.UNSIGNED_BYTE,size:4,normalized:!0},{buffer:$e,type:me.FLOAT,size:4},{buffer:St,type:me.FLOAT,size:2},{buffer:Qt,type:me.FLOAT,size:1}]),It=c(me),mt=f(me,[{buffer:It,type:me.FLOAT,size:3}]),er=new O(me,ce,Le,Ae,Fe,Pe,ge,Re,Ze,st,ut,pt,Zt,lt,Gt,sr,Nt,Jt,wr,cr,Vt,$e,St,Qt,_t,It,mt);return er.update(ie),er}i.exports=Ce},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(S,L,x){return Math.sqrt(Math.pow(S,2)+Math.pow(L,2)+Math.pow(x,2))}function v(S){return Math.min(1,Math.max(-1,S))}function _(S){var L=Math.abs(S[0]),x=Math.abs(S[1]),C=Math.abs(S[2]),M=[0,0,0];L>Math.max(x,C)?M[2]=1:x>Math.max(L,C)?M[0]=1:M[1]=1;for(var g=0,P=0,T=0;T<3;++T)g+=S[T]*S[T],P+=M[T]*S[T];for(var T=0;T<3;++T)M[T]-=P/g*S[T];return f(M,M),M}function b(S,L,x,C,M,g,P,T){this.center=s(x),this.up=s(C),this.right=s(M),this.radius=s([g]),this.angle=s([P,T]),this.angle.bounds=[[-1/0,-Math.PI/2],[1/0,Math.PI/2]],this.setDistanceLimits(S,L),this.computedCenter=this.center.curve(0),this.computedUp=this.up.curve(0),this.computedRight=this.right.curve(0),this.computedRadius=this.radius.curve(0),this.computedAngle=this.angle.curve(0),this.computedToward=[0,0,0],this.computedEye=[0,0,0],this.computedMatrix=new Array(16);for(var z=0;z<16;++z)this.computedMatrix[z]=.5;this.recalcMatrix(0)}var p=b.prototype;p.setDistanceLimits=function(S,L){S>0?S=Math.log(S):S=-1/0,L>0?L=Math.log(L):L=1/0,L=Math.max(L,S),this.radius.bounds[0][0]=S,this.radius.bounds[1][0]=L},p.getDistanceLimits=function(S){var L=this.radius.bounds[0];return S?(S[0]=Math.exp(L[0][0]),S[1]=Math.exp(L[1][0]),S):[Math.exp(L[0][0]),Math.exp(L[1][0])]},p.recalcMatrix=function(S){this.center.curve(S),this.up.curve(S),this.right.curve(S),this.radius.curve(S),this.angle.curve(S);for(var L=this.computedUp,x=this.computedRight,C=0,M=0,g=0;g<3;++g)M+=L[g]*x[g],C+=L[g]*L[g];for(var P=Math.sqrt(C),T=0,g=0;g<3;++g)x[g]-=L[g]*M/C,T+=x[g]*x[g],L[g]/=P;for(var z=Math.sqrt(T),g=0;g<3;++g)x[g]/=z;var O=this.computedToward;c(O,L,x),f(O,O);for(var V=Math.exp(this.computedRadius[0]),G=this.computedAngle[0],Z=this.computedAngle[1],j=Math.cos(G),N=Math.sin(G),H=Math.cos(Z),te=Math.sin(Z),oe=this.computedCenter,_e=j*H,Ee=N*H,Ce=te,me=-j*te,ie=-N*te,Se=H,Le=this.computedEye,Ae=this.computedMatrix,g=0;g<3;++g){var Fe=_e*x[g]+Ee*O[g]+Ce*L[g];Ae[4*g+1]=me*x[g]+ie*O[g]+Se*L[g],Ae[4*g+2]=Fe,Ae[4*g+3]=0}var Pe=Ae[1],ge=Ae[5],Re=Ae[9],ce=Ae[2],Ze=Ae[6],ut=Ae[10],pt=ge*ut-Re*Ze,Zt=Re*ce-Pe*ut,st=Pe*Ze-ge*ce,lt=d(pt,Zt,st);pt/=lt,Zt/=lt,st/=lt,Ae[0]=pt,Ae[4]=Zt,Ae[8]=st;for(var g=0;g<3;++g)Le[g]=oe[g]+Ae[2+4*g]*V;for(var g=0;g<3;++g){for(var T=0,Gt=0;Gt<3;++Gt)T+=Ae[g+4*Gt]*Le[Gt];Ae[12+g]=-T}Ae[15]=1},p.getMatrix=function(S,L){this.recalcMatrix(S);var x=this.computedMatrix;if(L){for(var C=0;C<16;++C)L[C]=x[C];return L}return x};var k=[0,0,0];p.rotate=function(S,L,x,C){if(this.angle.move(S,L,x),C){this.recalcMatrix(S);var M=this.computedMatrix;k[0]=M[2],k[1]=M[6],k[2]=M[10];for(var g=this.computedUp,P=this.computedRight,T=this.computedToward,z=0;z<3;++z)M[4*z]=g[z],M[4*z+1]=P[z],M[4*z+2]=T[z];u(M,M,C,k);for(var z=0;z<3;++z)g[z]=M[4*z],P[z]=M[4*z+1];this.up.set(S,g[0],g[1],g[2]),this.right.set(S,P[0],P[1],P[2])}},p.pan=function(S,L,x,C){L=L||0,x=x||0,C=C||0,this.recalcMatrix(S);var M=this.computedMatrix,g=Math.exp(this.computedRadius[0]),P=M[1],T=M[5],z=M[9],O=d(P,T,z);P/=O,T/=O,z/=O;var V=M[0],G=M[4],Z=M[8],j=V*P+G*T+Z*z;V-=P*j,G-=T*j,Z-=z*j;var N=d(V,G,Z);V/=N,G/=N,Z/=N;var H=V*L+P*x,te=G*L+T*x,oe=Z*L+z*x;this.center.move(S,H,te,oe);var _e=Math.exp(this.computedRadius[0]);_e=Math.max(1e-4,_e+C),this.radius.set(S,Math.log(_e))},p.translate=function(S,L,x,C){this.center.move(S,L||0,x||0,C||0)},p.setMatrix=function(S,L,x,C){var M=1;typeof x=="number"&&(M=x|0),(M<0||M>3)&&(M=1);var g=(M+2)%3,P=(M+1)%3;L||(this.recalcMatrix(S),L=this.computedMatrix);var T=L[M],z=L[M+4],O=L[M+8];if(C){var G=Math.abs(T),Z=Math.abs(z),j=Math.abs(O),N=Math.max(G,Z,j);G===N?(T=T<0?-1:1,z=O=0):j===N?(O=O<0?-1:1,T=z=0):(z=z<0?-1:1,T=O=0)}else{var V=d(T,z,O);T/=V,z/=V,O/=V}var H=L[g],te=L[g+4],oe=L[g+8],_e=H*T+te*z+oe*O;H-=T*_e,te-=z*_e,oe-=O*_e;var Ee=d(H,te,oe);H/=Ee,te/=Ee,oe/=Ee;var Ce=z*oe-O*te,me=O*H-T*oe,ie=T*te-z*H,Se=d(Ce,me,ie);Ce/=Se,me/=Se,ie/=Se,this.center.jump(S,cr,$e,St),this.radius.idle(S),this.up.jump(S,T,z,O),this.right.jump(S,H,te,oe);var Le,Ae;if(M===2){var Fe=L[1],Pe=L[5],ge=L[9],Re=Fe*H+Pe*te+ge*oe,ce=Fe*Ce+Pe*me+ge*ie;Zt<0?Le=-Math.PI/2:Le=Math.PI/2,Ae=Math.atan2(ce,Re)}else{var Ze=L[2],ut=L[6],pt=L[10],Zt=Ze*T+ut*z+pt*O,st=Ze*H+ut*te+pt*oe,lt=Ze*Ce+ut*me+pt*ie;Le=Math.asin(v(Zt)),Ae=Math.atan2(lt,st)}this.angle.jump(S,Ae,Le),this.recalcMatrix(S);var Gt=L[2],Nt=L[6],Jt=L[10],sr=this.computedMatrix;l(sr,L);var wr=sr[15],cr=sr[12]/wr,$e=sr[13]/wr,St=sr[14]/wr,Qt=Math.exp(this.computedRadius[0]);this.center.jump(S,cr-Gt*Qt,$e-Nt*Qt,St-Jt*Qt)},p.lastT=function(){return Math.max(this.center.lastT(),this.up.lastT(),this.right.lastT(),this.radius.lastT(),this.angle.lastT())},p.idle=function(S){this.center.idle(S),this.up.idle(S),this.right.idle(S),this.radius.idle(S),this.angle.idle(S)},p.flush=function(S){this.center.flush(S),this.up.flush(S),this.right.flush(S),this.radius.flush(S),this.angle.flush(S)},p.setDistance=function(S,L){L>0&&this.radius.set(S,Math.log(L))},p.lookAt=function(S,L,x,C){this.recalcMatrix(S),L=L||this.computedEye,x=x||this.computedCenter,C=C||this.computedUp;var M=C[0],g=C[1],P=C[2],T=d(M,g,P);if(!(T<1e-6)){M/=T,g/=T,P/=T;var z=L[0]-x[0],O=L[1]-x[1],V=L[2]-x[2],G=d(z,O,V);if(!(G<1e-6)){z/=G,O/=G,V/=G;var Z=this.computedRight,j=Z[0],N=Z[1],H=Z[2],te=M*j+g*N+P*H;j-=te*M,N-=te*g,H-=te*P;var oe=d(j,N,H);if(!(oe<.01&&(j=g*V-P*O,N=P*z-M*V,H=M*O-g*z,oe=d(j,N,H),oe<1e-6))){j/=oe,N/=oe,H/=oe,this.up.set(S,M,g,P),this.right.set(S,j,N,H),this.center.set(S,x[0],x[1],x[2]),this.radius.set(S,Math.log(G));var _e=g*H-P*N,Ee=P*j-M*H,Ce=M*N-g*j,me=d(_e,Ee,Ce);_e/=me,Ee/=me,Ce/=me;var ie=M*z+g*O+P*V,Se=j*z+N*O+H*V,Le=_e*z+Ee*O+Ce*V,Ae=Math.asin(v(ie)),Fe=Math.atan2(Le,Se),Pe=this.angle._state,ge=Pe[Pe.length-1],Re=Pe[Pe.length-2];ge=ge%(2*Math.PI);var ce=Math.abs(ge+2*Math.PI-Fe),Ze=Math.abs(ge-Fe),ut=Math.abs(ge-2*Math.PI-Fe);ce<Ze&&(ge+=2*Math.PI),ut<Ze&&(ge-=2*Math.PI),this.angle.jump(this.angle.lastT(),ge,Re),this.angle.set(S,Fe,Ae)}}}};function E(S){S=S||{};var L=S.center||[0,0,0],x=S.up||[0,1,0],C=S.right||_(x),M=S.radius||1,g=S.theta||0,P=S.phi||0;if(L=[].slice.call(L,0,3),x=[].slice.call(x,0,3),f(x,x),C=[].slice.call(C,0,3),f(C,C),"eye"in S){var T=S.eye,z=[T[0]-L[0],T[1]-L[1],T[2]-L[2]];c(C,z,x),d(C[0],C[1],C[2])<1e-6?C=_(x):f(C,C),M=d(z[0],z[1],z[2]);var O=h(x,z)/M,V=h(C,z)/M;P=Math.acos(O),g=Math.acos(V)}return M=Math.log(M),new b(S.zoomMin,S.zoomMax,L,x,C,M,g,P)}},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)}},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)}},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,_=l*h,b=u*h,p=u*d,k=c*h,E=c*d,S=c*v,L=f*h,x=f*d,C=f*v;return o[0]=1-p-S,o[1]=b+C,o[2]=k-x,o[3]=0,o[4]=b-C,o[5]=1-_-S,o[6]=E+L,o[7]=0,o[8]=k+x,o[9]=E-L,o[10]=1-_-p,o[11]=0,o[12]=0,o[13]=0,o[14]=0,o[15]=1,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}},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=_;function _(E,S,L,x){if(c(S)===0||c(L)===0)return!1;var C=u(S,h.translate,h.scale,h.skew,h.perspective,h.quaternion),M=u(L,d.translate,d.scale,d.skew,d.perspective,d.quaternion);return!C||!M?!1:(s(v.translate,h.translate,d.translate,x),s(v.skew,h.skew,d.skew,x),s(v.scale,h.scale,d.scale,x),s(v.perspective,h.perspective,d.perspective,x),f(v.quaternion,h.quaternion,d.quaternion,x),l(E,v.translate,v.scale,v.skew,v.perspective,v.quaternion),!0)}function b(){return{translate:p(),scale:p(1),skew:p(),perspective:k(),quaternion:k()}}function p(E){return[E||0,E||0,E||0]}function k(){return[0,0,0,1]}},7507:function(i,a){"use strict";a.byteLength=d,a.toByteArray=_,a.fromByteArray=k;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 S=E.length;if(S%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var L=E.indexOf("=");L===-1&&(L=S);var x=L===S?0:4-L%4;return[L,x]}function d(E){var S=h(E),L=S[0],x=S[1];return(L+x)*3/4-x}function v(E,S,L){return(S+L)*3/4-L}function _(E){var S,L=h(E),x=L[0],C=L[1],M=new l(v(E,x,C)),g=0,P=C>0?x-4:x,T;for(T=0;T<P;T+=4)S=s[E.charCodeAt(T)]<<18|s[E.charCodeAt(T+1)]<<12|s[E.charCodeAt(T+2)]<<6|s[E.charCodeAt(T+3)],M[g++]=S>>16&255,M[g++]=S>>8&255,M[g++]=S&255;return C===2&&(S=s[E.charCodeAt(T)]<<2|s[E.charCodeAt(T+1)]>>4,M[g++]=S&255),C===1&&(S=s[E.charCodeAt(T)]<<10|s[E.charCodeAt(T+1)]<<4|s[E.charCodeAt(T+2)]>>2,M[g++]=S>>8&255,M[g++]=S&255),M}function b(E){return o[E>>18&63]+o[E>>12&63]+o[E>>6&63]+o[E&63]}function p(E,S,L){for(var x,C=[],M=S;M<L;M+=3)x=(E[M]<<16&16711680)+(E[M+1]<<8&65280)+(E[M+2]&255),C.push(b(x));return C.join("")}function k(E){for(var S,L=E.length,x=L%3,C=[],M=16383,g=0,P=L-x;g<P;g+=M)C.push(p(E,g,g+M>P?P:g+M));return x===1?(S=E[L-1],C.push(o[S>>2]+o[S<<4&63]+"==")):x===2&&(S=(E[L-2]<<8)+E[L-1],C.push(o[S>>10]+o[S>>4&63]+o[S<<2&63]+"=")),C.join("")}},7518:function(i,a,o){"use strict";var s=o(1433);function l(f,h,d,v,_,b){this.location=f,this.dimension=h,this.a=d,this.b=v,this.c=_,this.d=b}l.prototype.bind=function(f){switch(this.dimension){case 1:f.vertexAttrib1f(this.location,this.a);break;case 2:f.vertexAttrib2f(this.location,this.a,this.b);break;case 3:f.vertexAttrib3f(this.location,this.a,this.b,this.c);break;case 4:f.vertexAttrib4f(this.location,this.a,this.b,this.c,this.d);break}};function u(f,h,d){this.gl=f,this._ext=h,this.handle=d,this._attribs=[],this._useElements=!1,this._elementsType=f.UNSIGNED_SHORT}u.prototype.bind=function(){this._ext.bindVertexArrayOES(this.handle);for(var f=0;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 _=f[v];typeof _=="number"?this._attribs.push(new l(v,1,_)):Array.isArray(_)&&this._attribs.push(new l(v,_.length,_[0],_[1],_[2],_[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},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()},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}},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],_=s[7],b=s[8],p=s[9],k=s[10],E=s[11],S=s[12],L=s[13],x=s[14],C=s[15],M=l*d-u*h,g=l*v-c*h,P=l*_-f*h,T=u*v-c*d,z=u*_-f*d,O=c*_-f*v,V=b*L-p*S,G=b*x-k*S,Z=b*C-E*S,j=p*x-k*L,N=p*C-E*L,H=k*C-E*x,te=M*H-g*N+P*j+T*Z-z*G+O*V;return te?(te=1/te,o[0]=(d*H-v*N+_*j)*te,o[1]=(c*N-u*H-f*j)*te,o[2]=(L*O-x*z+C*T)*te,o[3]=(k*z-p*O-E*T)*te,o[4]=(v*Z-h*H-_*G)*te,o[5]=(l*H-c*Z+f*G)*te,o[6]=(x*P-S*O-C*g)*te,o[7]=(b*O-k*P+E*g)*te,o[8]=(h*N-d*Z+_*V)*te,o[9]=(u*Z-l*N-f*V)*te,o[10]=(S*z-L*P+C*M)*te,o[11]=(p*P-b*z-E*M)*te,o[12]=(d*G-h*j-v*V)*te,o[13]=(l*j-u*G+c*V)*te,o[14]=(L*g-S*T-x*M)*te,o[15]=(b*T-p*g+k*M)*te,o):null}},7626:function(i,a,o){"use strict";var s=o(2642),l=o(9346);i.exports=d;function u(v,_){for(var b=[0,0,0,0],p=0;p<4;++p)for(var k=0;k<4;++k)b[k]+=v[4*p+k]*_[p];return b}function c(v,_,b,p,k){for(var E=u(p,u(b,u(_,[v[0],v[1],v[2],1]))),S=0;S<3;++S)E[S]/=E[3];return[.5*k[0]*(1+E[0]),.5*k[1]*(1-E[1])]}function f(v,_){if(v.length===2){for(var b=0,p=0,k=0;k<2;++k)b+=Math.pow(_[k]-v[0][k],2),p+=Math.pow(_[k]-v[1][k],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],_,E),s(v,E)}return[]}function h(v,_){for(var b=[0,0,0],p=0;p<v.length;++p)for(var k=v[p],E=_[p],S=0;S<3;++S)b[S]+=E*k[S];return b}function d(v,_,b,p,k,E){if(v.length===1)return[0,v[0].slice()];for(var S=new Array(v.length),L=0;L<v.length;++L)S[L]=c(v[L],b,p,k,E);for(var x=0,C=1/0,L=0;L<S.length;++L){for(var M=0,g=0;g<2;++g)M+=Math.pow(S[L][g]-_[g],2);M<C&&(C=M,x=L)}for(var P=f(S,_),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:[x,h(v,P),P]}},7636:function(i){i.exports=a;function a(o,s){s=s||1;var l=Math.random()*2*Math.PI,u=Math.random()*2-1,c=Math.sqrt(1-u*u)*s;return o[0]=Math.cos(l)*c,o[1]=Math.sin(l)*c,o[2]=u*s,o}},7640:function(i,a,o){"use strict";var s=o(1888);function l(_){switch(_){case"uint32":return[s.mallocUint32,s.freeUint32];default:return null}}var u={"uint32,1,0":function(_,b){return function(k,E,S,L,x,C,M,g,P,T,z){var O,V,G,Z=k*x+L,j,N=_(g),H,te,oe,_e;for(O=k+1;O<=E;++O){for(V=O,Z+=x,G=Z,H=0,te=Z,j=0;j<g;++j)N[H++]=S[te],te+=P;e:for(;V-- >k;){H=0,te=G-x;t:for(j=0;j<g;++j){if(oe=S[te],_e=N[H],oe<_e)break e;if(oe>_e)break t;te+=T,H+=z}for(H=G,te=G-x,j=0;j<g;++j)S[H]=S[te],H+=P,te+=P;G-=x}for(H=G,te=0,j=0;j<g;++j)S[H]=N[te++],H+=P}b(N)}}};function c(_,b){var p=l(b),k=[b,_].join(","),E=u[k];return p?E(p[0],p[1]):E()}var f={"uint32,1,0":function(_,b,p){return function k(E,S,L,x,C,M,g,P,T,z,O){var V=(S-E+1)/6|0,G=E+V,Z=S-V,j=E+S>>1,N=j-V,H=j+V,te=G,oe=N,_e=j,Ee=H,Ce=Z,me=E+1,ie=S-1,Se=!0,Le,Ae,Fe,Pe,ge,Re,ce,Ze,ut,pt=0,Zt=0,st=0,lt,Gt,Nt,Jt,sr,wr,cr,$e,St,Qt,Vt,_t,It,mt,er,lr,Tr=P,Lr=b(Tr),ti=b(Tr);Gt=C*te,Nt=C*oe,lr=x;e:for(lt=0;lt<P;++lt){if(ce=Gt+lr,Ze=Nt+lr,st=L[ce]-L[Ze],st>0){Ae=te,te=oe,oe=Ae;break e}if(st<0)break e;lr+=z}Gt=C*Ee,Nt=C*Ce,lr=x;e:for(lt=0;lt<P;++lt){if(ce=Gt+lr,Ze=Nt+lr,st=L[ce]-L[Ze],st>0){Ae=Ee,Ee=Ce,Ce=Ae;break e}if(st<0)break e;lr+=z}Gt=C*te,Nt=C*_e,lr=x;e:for(lt=0;lt<P;++lt){if(ce=Gt+lr,Ze=Nt+lr,st=L[ce]-L[Ze],st>0){Ae=te,te=_e,_e=Ae;break e}if(st<0)break e;lr+=z}Gt=C*oe,Nt=C*_e,lr=x;e:for(lt=0;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=C*te,Nt=C*Ee,lr=x;e:for(lt=0;lt<P;++lt){if(ce=Gt+lr,Ze=Nt+lr,st=L[ce]-L[Ze],st>0){Ae=te,te=Ee,Ee=Ae;break e}if(st<0)break e;lr+=z}Gt=C*_e,Nt=C*Ee,lr=x;e:for(lt=0;lt<P;++lt){if(ce=Gt+lr,Ze=Nt+lr,st=L[ce]-L[Ze],st>0){Ae=_e,_e=Ee,Ee=Ae;break e}if(st<0)break e;lr+=z}Gt=C*oe,Nt=C*Ce,lr=x;e:for(lt=0;lt<P;++lt){if(ce=Gt+lr,Ze=Nt+lr,st=L[ce]-L[Ze],st>0){Ae=oe,oe=Ce,Ce=Ae;break e}if(st<0)break e;lr+=z}Gt=C*oe,Nt=C*_e,lr=x;e:for(lt=0;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=C*Ee,Nt=C*Ce,lr=x;e:for(lt=0;lt<P;++lt){if(ce=Gt+lr,Ze=Nt+lr,st=L[ce]-L[Ze],st>0){Ae=Ee,Ee=Ce,Ce=Ae;break e}if(st<0)break e;lr+=z}for(Gt=C*te,Nt=C*oe,Jt=C*_e,sr=C*Ee,wr=C*Ce,cr=C*G,$e=C*j,St=C*Z,er=0,lr=x,lt=0;lt<P;++lt)ce=Gt+lr,Ze=Nt+lr,ut=Jt+lr,Qt=sr+lr,Vt=wr+lr,_t=cr+lr,It=$e+lr,mt=St+lr,Lr[er]=L[Ze],ti[er]=L[Qt],Se=Se&&Lr[er]===ti[er],Fe=L[ce],Pe=L[ut],ge=L[Vt],L[_t]=Fe,L[It]=Pe,L[mt]=ge,++er,lr+=T;for(Gt=C*N,Nt=C*E,lr=x,lt=0;lt<P;++lt)ce=Gt+lr,Ze=Nt+lr,L[ce]=L[Ze],lr+=T;for(Gt=C*H,Nt=C*S,lr=x,lt=0;lt<P;++lt)ce=Gt+lr,Ze=Nt+lr,L[ce]=L[Ze],lr+=T;if(Se)for(Re=me;Re<=ie;++Re){ce=x+Re*C,er=0;e:for(lt=0;lt<P;++lt){if(st=L[ce]-Lr[er],st!==0)break e;er+=O,ce+=z}if(st!==0)if(st<0){if(Re!==me)for(Gt=C*Re,Nt=C*me,lr=x,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=x+ie*C,er=0;e:for(lt=0;lt<P;++lt){if(st=L[ce]-Lr[er],st!==0)break e;er+=O,ce+=z}if(st>0)ie--;else if(st<0){for(Gt=C*Re,Nt=C*me,Jt=C*ie,lr=x,lt=0;lt<P;++lt)ce=Gt+lr,Ze=Nt+lr,ut=Jt+lr,Le=L[ce],L[ce]=L[Ze],L[Ze]=L[ut],L[ut]=Le,lr+=T;++me,--ie;break}else{for(Gt=C*Re,Nt=C*ie,lr=x,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(Re=me;Re<=ie;++Re){ce=x+Re*C,er=0;e:for(lt=0;lt<P;++lt){if(pt=L[ce]-Lr[er],pt!==0)break e;er+=O,ce+=z}if(pt<0){if(Re!==me)for(Gt=C*Re,Nt=C*me,lr=x,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=x+Re*C,er=0;e:for(lt=0;lt<P;++lt){if(Zt=L[ce]-ti[er],Zt!==0)break e;er+=O,ce+=z}if(Zt>0)for(;;){ce=x+ie*C,er=0;e:for(lt=0;lt<P;++lt){if(st=L[ce]-ti[er],st!==0)break e;er+=O,ce+=z}if(st>0){if(--ie<Re)break;continue}else{ce=x+ie*C,er=0;e:for(lt=0;lt<P;++lt){if(st=L[ce]-Lr[er],st!==0)break e;er+=O,ce+=z}if(st<0){for(Gt=C*Re,Nt=C*me,Jt=C*ie,lr=x,lt=0;lt<P;++lt)ce=Gt+lr,Ze=Nt+lr,ut=Jt+lr,Le=L[ce],L[ce]=L[Ze],L[Ze]=L[ut],L[ut]=Le,lr+=T;++me,--ie}else{for(Gt=C*Re,Nt=C*ie,lr=x,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=C*E,Nt=C*(me-1),er=0,lr=x,lt=0;lt<P;++lt)ce=Gt+lr,Ze=Nt+lr,L[ce]=L[Ze],L[Ze]=Lr[er],++er,lr+=T;for(Gt=C*S,Nt=C*(ie+1),er=0,lr=x,lt=0;lt<P;++lt)ce=Gt+lr,Ze=Nt+lr,L[ce]=L[Ze],L[Ze]=ti[er],++er,lr+=T;if(me-2-E<=32?_(E,me-2,L,x,C,M,g,P,T,z,O):k(E,me-2,L,x,C,M,g,P,T,z,O),S-(ie+2)<=32?_(ie+2,S,L,x,C,M,g,P,T,z,O):k(ie+2,S,L,x,C,M,g,P,T,z,O),Se){p(Lr),p(ti);return}if(me<G&&ie>Z){e:for(;;){for(ce=x+me*C,er=0,lr=x,lt=0;lt<P;++lt){if(L[ce]!==Lr[er])break e;++er,ce+=T}++me}e:for(;;){for(ce=x+ie*C,er=0,lr=x,lt=0;lt<P;++lt){if(L[ce]!==ti[er])break e;++er,ce+=T}--ie}for(Re=me;Re<=ie;++Re){ce=x+Re*C,er=0;e:for(lt=0;lt<P;++lt){if(pt=L[ce]-Lr[er],pt!==0)break e;er+=O,ce+=z}if(pt===0){if(Re!==me)for(Gt=C*Re,Nt=C*me,lr=x,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=x+Re*C,er=0;e:for(lt=0;lt<P;++lt){if(Zt=L[ce]-ti[er],Zt!==0)break e;er+=O,ce+=z}if(Zt===0)for(;;){ce=x+ie*C,er=0;e:for(lt=0;lt<P;++lt){if(st=L[ce]-ti[er],st!==0)break e;er+=O,ce+=z}if(st===0){if(--ie<Re)break;continue}else{ce=x+ie*C,er=0;e:for(lt=0;lt<P;++lt){if(st=L[ce]-Lr[er],st!==0)break e;er+=O,ce+=z}if(st<0){for(Gt=C*Re,Nt=C*me,Jt=C*ie,lr=x,lt=0;lt<P;++lt)ce=Gt+lr,Ze=Nt+lr,ut=Jt+lr,Le=L[ce],L[ce]=L[Ze],L[Ze]=L[ut],L[ut]=Le,lr+=T;++me,--ie}else{for(Gt=C*Re,Nt=C*ie,lr=x,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(Lr),p(ti),ie-me<=32?_(me,ie,L,x,C,M,g,P,T,z,O):k(me,ie,L,x,C,M,g,P,T,z,O)}}};function h(_,b,p){var k=l(b),E=[b,_].join(","),S=f[E];return _.length>1&&k?S(p,k[0],k[1]):S(p)}var d={"uint32,1,0":function(_,b){return function(p){var k=p.data,E=p.offset|0,S=p.shape,L=p.stride,x=L[0]|0,C=S[0]|0,M=L[1]|0,g=S[1]|0,P=M,T=M,z=1;C<=32?_(0,C-1,k,E,x,M,C,g,P,T,z):b(0,C-1,k,E,x,M,C,g,P,T,z)}}};function v(_,b){var p=[b,_].join(","),k=d[p],E=c(_,b),S=h(_,b,E);return k(E,S)}i.exports=v},7642:function(i,a,o){"use strict";var s=o(8954),l=o(1682);i.exports=h;function u(d,v){this.point=d,this.index=v}function c(d,v){for(var _=d.point,b=v.point,p=_.length,k=0;k<p;++k){var E=b[k]-_[k];if(E)return E}return 0}function f(d,v,_){if(d===1)return _?[[-1,0]]:[];var b=v.map(function(L,x){return[L[0],x]});b.sort(function(L,x){return L[0]-x[0]});for(var p=new Array(d-1),k=1;k<d;++k){var E=b[k-1],S=b[k];p[k-1]=[E[1],S[1]]}return _&&p.push([-1,p[0][1]],[p[d-1][1],-1]),p}function h(d,v){var _=d.length;if(_===0)return[];var b=d[0].length;if(b<1)return[];if(b===1)return f(_,d,v);for(var p=new Array(_),k=1,E=0;E<_;++E){for(var S=d[E],L=new Array(b+1),x=0,C=0;C<b;++C){var M=S[C];L[C]=M,x+=M*M}L[b]=x,p[E]=new u(L,E),k=Math.max(x,k)}l(p,c),_=p.length;for(var g=new Array(_+b+1),P=new Array(_+b+1),T=(b+1)*(b+1)*k,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<_;++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,j=0;j<=b;++j){var N=P[G[j]];if(N<0&&++Z>=2)return!1;G[j]=N}return!0}):V=V.filter(function(G){for(var Z=0;Z<=b;++Z){var j=P[G[Z]];if(j<0)return!1;G[Z]=j}return!0}),b&1)for(var E=0;E<V.length;++E){var O=V[E],L=O[0];O[0]=O[1],O[1]=L}return V}},7656:function(i){i.exports=a;function a(o,s,l){var u=l[0],c=l[1],f=l[2],h,d,v,_,b,p,k,E,S,L,x,C;return s===o?(o[12]=s[0]*u+s[4]*c+s[8]*f+s[12],o[13]=s[1]*u+s[5]*c+s[9]*f+s[13],o[14]=s[2]*u+s[6]*c+s[10]*f+s[14],o[15]=s[3]*u+s[7]*c+s[11]*f+s[15]):(h=s[0],d=s[1],v=s[2],_=s[3],b=s[4],p=s[5],k=s[6],E=s[7],S=s[8],L=s[9],x=s[10],C=s[11],o[0]=h,o[1]=d,o[2]=v,o[3]=_,o[4]=b,o[5]=p,o[6]=k,o[7]=E,o[8]=S,o[9]=L,o[10]=x,o[11]=C,o[12]=h*u+b*c+S*f+s[12],o[13]=d*u+p*c+L*f+s[13],o[14]=v*u+k*c+x*f+s[14],o[15]=_*u+E*c+C*f+s[15]),o}},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|",_="i",b="i|",p="sup",k="+",E="+1",S="sub",L="-",x="-1";function C(V,G,Z,j){for(var N="<"+V+">",H="</"+V+">",te=N.length,oe=H.length,_e=G[0]===k||G[0]===L,Ee=0,Ce=-oe;Ee>-1&&(Ee=Z.indexOf(N,Ee),!(Ee===-1||(Ce=Z.indexOf(H,Ee+te),Ce===-1)||Ce<=Ee));){for(var me=Ee;me<Ce+oe;++me)if(me<Ee+te||me>=Ce)j[me]=null,Z=Z.substr(0,me)+" "+Z.substr(me+1);else if(j[me]!==null){var ie=j[me].indexOf(G[0]);ie===-1?j[me]+=G:_e&&(j[me]=j[me].substr(0,ie+1)+(1+parseInt(j[me][ie+1]))+j[me].substr(ie+2))}var Se=Ee+te,Le=Z.substr(Se,Ce-Se),Ae=Le.indexOf(N);Ae!==-1?Ee=Ae:Ee=Ce+oe}return j}function M(V,G,Z){for(var j=G.textAlign||"start",N=G.textBaseline||"alphabetic",H=[1<<30,1<<30],te=[0,0],oe=V.length,_e=0;_e<oe;++_e)for(var Ee=V[_e],Ce=0;Ce<2;++Ce)H[Ce]=Math.min(H[Ce],Ee[Ce])|0,te[Ce]=Math.max(te[Ce],Ee[Ce])|0;var me=0;switch(j){case"center":me=-.5*(H[0]+te[0]);break;case"right":case"end":me=-te[0];break;case"left":case"start":me=-H[0];break;default:throw new Error("vectorize-text: Unrecognized textAlign: '"+j+"'")}var ie=0;switch(N){case"hanging":case"top":ie=-H[1];break;case"middle":ie=-.5*(H[1]+te[1]);break;case"alphabetic":case"ideographic":ie=-3*Z;break;case"bottom":ie=-te[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/(te[0]-H[0]):"height"in G&&(Se=G.height/(te[1]-H[1])),V.map(function(Le){return[Se*(Le[0]+me),Se*(Le[1]+ie)]})}function g(V,G,Z,j,N,H){Z=Z.replace(/\n/g,""),H.breaklines===!0?Z=Z.replace(/\<br\>/g,`
`):Z=Z.replace(/\<br\>/g," ");var te="",oe=[];for(ge=0;ge<Z.length;++ge)oe[ge]=te;H.bolds===!0&&(oe=C(d,v,Z,oe)),H.italics===!0&&(oe=C(_,b,Z,oe)),H.superscripts===!0&&(oe=C(p,E,Z,oe)),H.subscripts===!0&&(oe=C(S,x,Z,oe));var _e=[],Ee="";for(ge=0;ge<Z.length;++ge)oe[ge]!==null&&(Ee+=Z[ge],_e.push(oe[ge]));var Ce=Ee.split(`
`),me=Ce.length,ie=Math.round(N*j),Se=j,Le=j*2,Ae=0,Fe=me*ie+Le;V.height<Fe&&(V.height=Fe),G.fillStyle="#000",G.fillRect(0,0,V.width,V.height),G.fillStyle="#fff";var Pe,ge,Re,ce,Ze,ut=0,pt="";function Zt(){if(pt!==""){var $e=G.measureText(pt).width;G.fillText(pt,Se+Re,Le+ce),Re+=$e}}function st(){return""+Math.round(Ze)+"px "}function lt($e,St){var Qt=""+G.font;if(H.subscripts===!0){var Vt=$e.indexOf(L),_t=St.indexOf(L),It=Vt>-1?parseInt($e[1+Vt]):0,mt=_t>-1?parseInt(St[1+_t]):0;It!==mt&&(Qt=Qt.replace(st(),"?px "),Ze*=Math.pow(.75,mt-It),Qt=Qt.replace("?px ",st())),ce+=.25*ie*(mt-It)}if(H.superscripts===!0){var er=$e.indexOf(k),lr=St.indexOf(k),Tr=er>-1?parseInt($e[1+er]):0,Lr=lr>-1?parseInt(St[1+lr]):0;Tr!==Lr&&(Qt=Qt.replace(st(),"?px "),Ze*=Math.pow(.75,Lr-Tr),Qt=Qt.replace("?px ",st())),ce-=.25*ie*(Lr-Tr)}if(H.bolds===!0){var ti=$e.indexOf(v)>-1,Br=St.indexOf(v)>-1;!ti&&Br&&(Vr?Qt=Qt.replace("italic ","italic bold "):Qt="bold "+Qt),ti&&!Br&&(Qt=Qt.replace("bold ",""))}if(H.italics===!0){var Vr=$e.indexOf(b)>-1,dt=St.indexOf(b)>-1;!Vr&&dt&&(Qt="italic "+Qt),Vr&&!dt&&(Qt=Qt.replace("italic ",""))}G.font=Qt}for(Pe=0;Pe<me;++Pe){var Gt=Ce[Pe]+`
`;for(Re=0,ce=Pe*ie,Ze=j,pt="",ge=0;ge<Gt.length;++ge){var Nt=ge+ut<_e.length?_e[ge+ut]:_e[_e.length-1];te===Nt?pt+=Gt[ge]:(Zt(),pt=Gt[ge],Nt!==void 0&&(lt(te,Nt),te=Nt))}Zt(),ut+=Gt.length;var Jt=Math.round(Re+2*Se)|0;Ae<Jt&&(Ae=Jt)}var sr=Ae,wr=Le+ie*me,cr=l(G.getImageData(0,0,sr,wr).data,[wr,sr,4]);return cr.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,j){var N=P(V,j),H=M(N.positions,G,Z),te=N.edges,oe=G.orientation==="ccw";if(c(H,te),G.polygons||G.polygon||G.polyline){for(var _e=h(te,H),Ee=new Array(_e.length),Ce=0;Ce<_e.length;++Ce){for(var me=_e[Ce],ie=new Array(me.length),Se=0;Se<me.length;++Se){for(var Le=me[Se],Ae=new Array(Le.length),Fe=0;Fe<Le.length;++Fe)Ae[Fe]=H[Le[Fe]].slice();oe&&Ae.reverse(),ie[Se]=Ae}Ee[Ce]=ie}return Ee}else return G.triangles||G.triangulate||G.triangle?{cells:f(H,te,{delaunay:!1,exterior:!1,interior:!0}),positions:H}:{edges:te,positions:H}}function z(V,G,Z){try{return T(V,G,Z,!0)}catch(j){}try{return T(V,G,Z,!1)}catch(j){}return G.polygons||G.polyline||G.polygon?[]:G.triangles||G.triangulate||G.triangle?{cells:[],positions:[]}:{edges:[],positions:[]}}function O(V,G,Z,j){var N=64,H=1.25,te={breaklines:!1,bolds:!1,italics:!1,subscripts:!1,superscripts:!1};j&&(j.size&&j.size>0&&(N=j.size),j.lineSpacing&&j.lineSpacing>0&&(H=j.lineSpacing),j.styletags&&j.styletags.breaklines&&(te.breaklines=!!j.styletags.breaklines),j.styletags&&j.styletags.bolds&&(te.bolds=!!j.styletags.bolds),j.styletags&&j.styletags.italics&&(te.italics=!!j.styletags.italics),j.styletags&&j.styletags.subscripts&&(te.subscripts=!!j.styletags.subscripts),j.styletags&&j.styletags.superscripts&&(te.superscripts=!!j.styletags.superscripts)),Z.font=[j.fontStyle,j.fontVariant,j.fontWeight,N+"px",j.font].filter(function(_e){return _e}).join(" "),Z.textAlign="start",Z.textBaseline="alphabetic",Z.direction="ltr";var oe=g(G,Z,V,N,H,te);return z(oe,j,N)}},7721:function(i,a,o){"use strict";var s=o(5716);i.exports=l;function l(u){return s(u[0])*s(u[1])}},7765:function(i,a,o){"use strict";i.exports=p;var s=o(9618),l=o(1888),u=o(446),c=o(1570);function f(k){for(var E=k.length,S=0,L=0;L<E;++L)S=Math.max(S,k[L].length)|0;return S-1}function h(k,E){for(var S=k.length,L=l.mallocUint8(S),x=0;x<S;++x)L[x]=k[x]<E|0;return L}function d(k,E){for(var S=k.length,L=E*(E+1)/2*S|0,x=l.mallocUint32(L*2),C=0,M=0;M<S;++M)for(var g=k[M],E=g.length,P=0;P<E;++P)for(var T=0;T<P;++T){var z=g[T],O=g[P];x[C++]=Math.min(z,O)|0,x[C++]=Math.max(z,O)|0}var V=C/2|0;u(s(x,[V,2]));for(var G=2,M=2;M<C;M+=2)x[M-2]===x[M]&&x[M-1]===x[M+1]||(x[G++]=x[M],x[G++]=x[M+1]);return s(x,[G/2|0,2])}function v(k,E,S,L){for(var x=k.data,C=k.shape[0],M=l.mallocDouble(C),g=0,P=0;P<C;++P){var T=x[2*P],z=x[2*P+1];if(S[T]!==S[z]){var O=E[T],V=E[z];x[2*g]=T,x[2*g+1]=z,M[g++]=(V-L)/(V-O)}}return k.shape[0]=g,s(M,[g])}function _(k,E){var S=l.mallocInt32(E*2),L=k.shape[0],x=k.data;S[0]=0;for(var C=0,M=0;M<L;++M){var g=x[2*M];if(g!==C){for(S[2*C+1]=M;++C<g;)S[2*C]=M,S[2*C+1]=M;S[2*C]=M}}for(S[2*C+1]=L;++C<E;)S[2*C]=S[2*C+1]=L;return S}function b(k){for(var E=k.shape[0]|0,S=k.data,L=new Array(E),x=0;x<E;++x)L[x]=[S[2*x],S[2*x+1]];return L}function p(k,E,S,L){S=S||0,typeof L=="undefined"&&(L=f(k));var x=k.length;if(x===0||L<1)return{cells:[],vertexIds:[],vertexWeights:[]};var C=h(E,+S),M=d(k,L),g=v(M,E,C,+S),P=_(M,E.length|0),T=c(L)(k,M.data,P,C),z=b(M),O=[].slice.call(g.data,0,g.shape[0]);return l.free(C),l.free(M.data),l.free(g.data),l.free(P),{cells:T,vertexIds:z,vertexWeights:O}}},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 _=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,j=[this._wrapS,this._wrapT];Object.defineProperties(j,[{get:function(){return Z._wrapS},set:function(H){return Z.wrapS=H}},{get:function(){return Z._wrapT},set:function(H){return Z.wrapT=H}}]),this._wrapVector=j;var N=[this._shape[0],this._shape[1]];Object.defineProperties(N,[{get:function(){return Z._shape[0]},set:function(H){return Z.width=H}},{get:function(){return Z._shape[1]},set:function(H){return Z.height=H}}]),this._shapeVector=N}var k=p.prototype;Object.defineProperties(k,{minFilter:{get:function(){return this._minFilter},set:function(P){this.bind();var T=this.gl;if(this.type===T.FLOAT&&c.indexOf(P)>=0&&(T.getExtension("OES_texture_float_linear")||(P=T.NEAREST)),f.indexOf(P)<0)throw new Error("gl-texture2d: Unknown filter mode "+P);return T.texParameteri(T.TEXTURE_2D,T.TEXTURE_MIN_FILTER,P),this._minFilter=P}},magFilter:{get:function(){return this._magFilter},set:function(P){this.bind();var T=this.gl;if(this.type===T.FLOAT&&c.indexOf(P)>=0&&(T.getExtension("OES_texture_float_linear")||(P=T.NEAREST)),f.indexOf(P)<0)throw new Error("gl-texture2d: Unknown filter mode "+P);return T.texParameteri(T.TEXTURE_2D,T.TEXTURE_MAG_FILTER,P),this._magFilter=P}},mipSamples:{get:function(){return this._anisoSamples},set:function(P){var T=this._anisoSamples;if(this._anisoSamples=Math.max(P,1)|0,T!==this._anisoSamples){var z=this.gl.getExtension("EXT_texture_filter_anisotropic");z&&this.gl.texParameterf(this.gl.TEXTURE_2D,z.TEXTURE_MAX_ANISOTROPY_EXT,this._anisoSamples)}return this._anisoSamples}},wrapS:{get:function(){return this._wrapS},set:function(P){if(this.bind(),h.indexOf(P)<0)throw new Error("gl-texture2d: Unknown wrap mode "+P);return this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_S,P),this._wrapS=P}},wrapT:{get:function(){return this._wrapT},set:function(P){if(this.bind(),h.indexOf(P)<0)throw new Error("gl-texture2d: Unknown wrap mode "+P);return this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_T,P),this._wrapT=P}},wrap:{get:function(){return this._wrapVector},set:function(P){if(Array.isArray(P)||(P=[P,P]),P.length!==2)throw new Error("gl-texture2d: Must specify wrap mode for rows and columns");for(var T=0;T<2;++T)if(h.indexOf(P[T])<0)throw new Error("gl-texture2d: Unknown wrap mode "+P);this._wrapS=P[0],this._wrapT=P[1];var z=this.gl;return this.bind(),z.texParameteri(z.TEXTURE_2D,z.TEXTURE_WRAP_S,this._wrapS),z.texParameteri(z.TEXTURE_2D,z.TEXTURE_WRAP_T,this._wrapT),P}},shape:{get:function(){return this._shapeVector},set:function(P){if(!Array.isArray(P))P=[P|0,P|0];else if(P.length!==2)throw new Error("gl-texture2d: Invalid texture shape");return b(this,P[0]|0,P[1]|0),[P[0]|0,P[1]|0]}},width:{get:function(){return this._shape[0]},set:function(P){return P=P|0,b(this,P,this._shape[1]),P}},height:{get:function(){return this._shape[1]},set:function(P){return P=P|0,b(this,this._shape[0],P),P}}}),k.bind=function(P){var T=this.gl;return P!==void 0&&T.activeTexture(T.TEXTURE0+(P|0)),T.bindTexture(T.TEXTURE_2D,this.handle),P!==void 0?P|0:T.getParameter(T.ACTIVE_TEXTURE)-T.TEXTURE0},k.dispose=function(){this.gl.deleteTexture(this.handle)},k.generateMipmap=function(){this.bind(),this.gl.generateMipmap(this.gl.TEXTURE_2D);for(var P=Math.min(this._shape[0],this._shape[1]),T=0;P>0;++T,P>>>=1)this._mipLevels.indexOf(T)<0&&this._mipLevels.push(T)},k.setPixels=function(P,T,z,O){var V=this.gl;this.bind(),Array.isArray(T)?(O=z,z=T[1]|0,T=T[0]|0):(T=T||0,z=z||0),O=O||0;var G=v(P)?P:P.raw;if(G){var Z=this._mipLevels.indexOf(O)<0;Z?(V.texImage2D(V.TEXTURE_2D,0,this.format,this.format,this.type,G),this._mipLevels.push(O)):V.texSubImage2D(V.TEXTURE_2D,O,T,z,this.format,this.type,G)}else if(P.shape&&P.stride&&P.data){if(P.shape.length<2||T+P.shape[1]>this._shape[1]>>>O||z+P.shape[0]>this._shape[0]>>>O||T<0||z<0)throw new Error("gl-texture2d: Texture dimensions are out of bounds");S(V,T,z,O,this.format,this.type,this._mipLevels,P)}else throw new Error("gl-texture2d: Unsupported data type")};function E(P,T){return P.length===3?T[2]===1&&T[1]===P[0]*P[2]&&T[0]===P[2]:T[0]===1&&T[1]===P[0]}function S(P,T,z,O,V,G,Z,j){var N=j.dtype,H=j.shape.slice();if(H.length<2||H.length>3)throw new Error("gl-texture2d: Invalid ndarray, must be 2d or 3d");var te=0,oe=0,_e=E(H,j.stride.slice());N==="float32"?te=P.FLOAT:N==="float64"?(te=P.FLOAT,_e=!1,N="float32"):N==="uint8"?te=P.UNSIGNED_BYTE:(te=P.UNSIGNED_BYTE,_e=!1,N="uint8");var Ee=1;if(H.length===2)oe=P.LUMINANCE,H=[H[0],H[1],1],j=s(j.data,H,[j.stride[0],j.stride[1],1],j.offset);else if(H.length===3){if(H[2]===1)oe=P.ALPHA;else if(H[2]===2)oe=P.LUMINANCE_ALPHA;else if(H[2]===3)oe=P.RGB;else if(H[2]===4)oe=P.RGBA;else throw new Error("gl-texture2d: Invalid shape for pixel coords");Ee=H[2]}else throw new Error("gl-texture2d: Invalid shape for texture");if((oe===P.LUMINANCE||oe===P.ALPHA)&&(V===P.LUMINANCE||V===P.ALPHA)&&(oe=V),oe!==V)throw new Error("gl-texture2d: Incompatible texture format for setPixels");var Ce=j.size,me=Z.indexOf(O)<0;if(me&&Z.push(O),te===G&&_e)j.offset===0&&j.data.length===Ce?me?P.texImage2D(P.TEXTURE_2D,O,V,H[0],H[1],0,V,G,j.data):P.texSubImage2D(P.TEXTURE_2D,O,T,z,H[0],H[1],V,G,j.data):me?P.texImage2D(P.TEXTURE_2D,O,V,H[0],H[1],0,V,G,j.data.subarray(j.offset,j.offset+Ce)):P.texSubImage2D(P.TEXTURE_2D,O,T,z,H[0],H[1],V,G,j.data.subarray(j.offset,j.offset+Ce));else{var ie;G===P.FLOAT?ie=u.mallocFloat32(Ce):ie=u.mallocUint8(Ce);var Se=s(ie,H,[H[2],H[2]*H[0],1]);te===P.FLOAT&&G===P.UNSIGNED_BYTE?_(Se,j):l.assign(Se,j),me?P.texImage2D(P.TEXTURE_2D,O,V,H[0],H[1],0,V,G,ie.subarray(0,Ce)):P.texSubImage2D(P.TEXTURE_2D,O,T,z,H[0],H[1],V,G,ie.subarray(0,Ce)),G===P.FLOAT?u.freeFloat32(ie):u.freeUint8(ie)}}function L(P){var T=P.createTexture();return P.bindTexture(P.TEXTURE_2D,T),P.texParameteri(P.TEXTURE_2D,P.TEXTURE_MIN_FILTER,P.NEAREST),P.texParameteri(P.TEXTURE_2D,P.TEXTURE_MAG_FILTER,P.NEAREST),P.texParameteri(P.TEXTURE_2D,P.TEXTURE_WRAP_S,P.CLAMP_TO_EDGE),P.texParameteri(P.TEXTURE_2D,P.TEXTURE_WRAP_T,P.CLAMP_TO_EDGE),T}function x(P,T,z,O,V){var G=P.getParameter(P.MAX_TEXTURE_SIZE);if(T<0||T>G||z<0||z>G)throw new Error("gl-texture2d: Invalid texture shape");if(V===P.FLOAT&&!P.getExtension("OES_texture_float"))throw new Error("gl-texture2d: Floating point textures not supported on this platform");var Z=L(P);return P.texImage2D(P.TEXTURE_2D,0,O,T,z,0,O,V,null),new p(P,Z,T,z,O,V)}function C(P,T,z,O,V,G){var Z=L(P);return P.texImage2D(P.TEXTURE_2D,0,V,V,G,T),new p(P,Z,z,O,V,G)}function M(P,T){var z=T.dtype,O=T.shape.slice(),V=P.getParameter(P.MAX_TEXTURE_SIZE);if(O[0]<0||O[0]>V||O[1]<0||O[1]>V)throw new Error("gl-texture2d: Invalid texture size");var G=E(O,T.stride.slice()),Z=0;z==="float32"?Z=P.FLOAT:z==="float64"?(Z=P.FLOAT,G=!1,z="float32"):z==="uint8"?Z=P.UNSIGNED_BYTE:(Z=P.UNSIGNED_BYTE,G=!1,z="uint8");var j=0;if(O.length===2)j=P.LUMINANCE,O=[O[0],O[1],1],T=s(T.data,O,[T.stride[0],T.stride[1],1],T.offset);else if(O.length===3)if(O[2]===1)j=P.ALPHA;else if(O[2]===2)j=P.LUMINANCE_ALPHA;else if(O[2]===3)j=P.RGB;else if(O[2]===4)j=P.RGBA;else throw new Error("gl-texture2d: Invalid shape for pixel coords");else throw new Error("gl-texture2d: Invalid shape for texture");Z===P.FLOAT&&!P.getExtension("OES_texture_float")&&(Z=P.UNSIGNED_BYTE,G=!1);var N,H,te=T.size;if(G)T.offset===0&&T.data.length===te?N=T.data:N=T.data.subarray(T.offset,T.offset+te);else{var oe=[O[2],O[2]*O[0],1];H=u.malloc(te,z);var _e=s(H,O,oe,0);(z==="float32"||z==="float64")&&Z===P.UNSIGNED_BYTE?_(_e,T):l.assign(_e,T),N=H.subarray(0,te)}var Ee=L(P);return P.texImage2D(P.TEXTURE_2D,0,j,O[0],O[1],0,j,Z,N),G||u.free(H),new p(P,Ee,O[0],O[1],j,Z)}function g(P){if(arguments.length<=1)throw new Error("gl-texture2d: Missing arguments for texture2d constructor");if(c||d(P),typeof arguments[1]=="number")return x(P,arguments[1],arguments[2],arguments[3]||P.RGBA,arguments[4]||P.UNSIGNED_BYTE);if(Array.isArray(arguments[1]))return x(P,arguments[1][0]|0,arguments[1][1]|0,arguments[2]||P.RGBA,arguments[3]||P.UNSIGNED_BYTE);if(typeof arguments[1]=="object"){var T=arguments[1],z=v(T)?T:T.raw;if(z)return C(P,z,T.width|0,T.height|0,arguments[2]||P.RGBA,arguments[3]||P.UNSIGNED_BYTE);if(T.shape&&T.data&&T.stride)return M(P,T)}throw new Error("gl-texture2d: Invalid arguments for texture2d constructor")}},7790:function(){},7815:function(i,a,o){"use strict";var s=o(2931),l=o(9970),u=["xyz","xzy","yxz","yzx","zxy","zyx"],c=function(S,L,x,C){for(var M=S.points,g=S.velocities,P=S.divergences,T=[],z=[],O=[],V=[],G=[],Z=[],j=0,N=0,H=l.create(),te=l.create(),oe=8,_e=0;_e<M.length;_e++){var Ee=M[_e],Ce=g[_e],me=P[_e];L===0&&(me=x*.05),N=s.length(Ce)/C,H=l.create(),s.copy(H,Ce),H[3]=me;for(var ie=0;ie<oe;ie++)G[ie]=[Ee[0],Ee[1],Ee[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(te,H,H,H,te,te),Z.push(j,N,N,N,j,j);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 Fe=te;te=H,H=Fe;var Pe=j;j=N,N=Pe}return{positions:T,cells:z,vectors:O,vertexIntensity:Z}},f=function(S,L,x,C){for(var M=0,g=0;g<S.length;g++)for(var P=S[g].velocities,T=0;T<P.length;T++)M=Math.max(M,s.length(P[T]));for(var z=S.map(function(_e){return c(_e,x,C,M)}),O=[],V=[],G=[],Z=[],g=0;g<z.length;g++){var j=z[g],N=O.length;O=O.concat(j.positions),G=G.concat(j.vectors),Z=Z.concat(j.vertexIntensity);for(var T=0;T<j.cells.length;T++){var H=j.cells[T],te=[];V.push(te);for(var oe=0;oe<H.length;oe++)te.push(H[oe]+N)}}return{positions:O,cells:V,vectors:G,vertexIntensity:Z,colormap:L}},h=function(S,L){var x=S.length,C;for(C=0;C<x;C++){var M=S[C];if(M===L)return C;if(M>L)return C-1}return C},d=function(S,L,x){return S<L?L:S>x?x:S},v=function(S,L,x){var C=L.vectors,M=L.meshgrid,g=S[0],P=S[1],T=S[2],z=M[0].length,O=M[1].length,V=M[2].length,G=h(M[0],g),Z=h(M[1],P),j=h(M[2],T),N=G+1,H=Z+1,te=j+1;if(G=d(G,0,z-1),N=d(N,0,z-1),Z=d(Z,0,O-1),H=d(H,0,O-1),j=d(j,0,V-1),te=d(te,0,V-1),G<0||Z<0||j<0||N>z-1||H>O-1||te>V-1)return s.create();var oe=M[0][G],_e=M[0][N],Ee=M[1][Z],Ce=M[1][H],me=M[2][j],ie=M[2][te],Se=(g-oe)/(_e-oe),Le=(P-Ee)/(Ce-Ee),Ae=(T-me)/(ie-me);isFinite(Se)||(Se=.5),isFinite(Le)||(Le=.5),isFinite(Ae)||(Ae=.5);var Fe,Pe,ge,Re,ce,Ze;switch(x.reversedX&&(G=z-1-G,N=z-1-N),x.reversedY&&(Z=O-1-Z,H=O-1-H),x.reversedZ&&(j=V-1-j,te=V-1-te),x.filled){case 5:ce=j,Ze=te,ge=Z*V,Re=H*V,Fe=G*V*O,Pe=N*V*O;break;case 4:ce=j,Ze=te,Fe=G*V,Pe=N*V,ge=Z*V*z,Re=H*V*z;break;case 3:ge=Z,Re=H,ce=j*O,Ze=te*O,Fe=G*O*V,Pe=N*O*V;break;case 2:ge=Z,Re=H,Fe=G*O,Pe=N*O,ce=j*O*z,Ze=te*O*z;break;case 1:Fe=G,Pe=N,ce=j*z,Ze=te*z,ge=Z*z*V,Re=H*z*V;break;default:Fe=G,Pe=N,ge=Z*z,Re=H*z,ce=j*z*O,Ze=te*z*O;break}var ut=C[Fe+ge+ce],pt=C[Fe+ge+Ze],Zt=C[Fe+Re+ce],st=C[Fe+Re+Ze],lt=C[Pe+ge+ce],Gt=C[Pe+ge+Ze],Nt=C[Pe+Re+ce],Jt=C[Pe+Re+Ze],sr=s.create(),wr=s.create(),cr=s.create(),$e=s.create();s.lerp(sr,ut,lt,Se),s.lerp(wr,pt,Gt,Se),s.lerp(cr,Zt,Nt,Se),s.lerp($e,st,Jt,Se);var St=s.create(),Qt=s.create();s.lerp(St,sr,cr,Le),s.lerp(Qt,wr,$e,Le);var Vt=s.create();return s.lerp(Vt,St,Qt,Ae),Vt},_=function(S,L){var x=L[0],C=L[1],M=L[2];return S[0]=x<0?-x:x,S[1]=C<0?-C:C,S[2]=M<0?-M:M,S},b=function(S){var L=1/0;S.sort(function(g,P){return g-P});for(var x=S.length,C=1;C<x;C++){var M=Math.abs(S[C]-S[C-1]);M<L&&(L=M)}return L},p=function(S){for(var L=[],x=[],C=[],M={},g={},P={},T=S.length,z=0;z<T;z++){var O=S[z],V=O[0],G=O[1],Z=O[2];M[V]||(L.push(V),M[V]=!0),g[G]||(x.push(G),g[G]=!0),P[Z]||(C.push(Z),P[Z]=!0)}var j=b(L),N=b(x),H=b(C),te=Math.min(j,N,H);return isFinite(te)?te:1};i.exports=function(S,L){var x=S.startingPositions,C=S.maxLength||1e3,M=S.tubeSize||1,g=S.absoluteTubeSize,P=S.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=S.getVelocity||function(Gt){return v(Gt,S,T)},O=S.getDivergence||function(Gt,Nt){var Jt=s.create(),sr=1e-4;s.add(Jt,Gt,[sr,0,0]);var wr=z(Jt);s.subtract(wr,wr,Nt),s.scale(wr,wr,1/sr),s.add(Jt,Gt,[0,sr,0]);var cr=z(Jt);s.subtract(cr,cr,Nt),s.scale(cr,cr,1/sr),s.add(Jt,Gt,[0,0,sr]);var $e=z(Jt);return s.subtract($e,$e,Nt),s.scale($e,$e,1/sr),s.add(Jt,wr,cr),s.add(Jt,Jt,$e),Jt},V=[],G=L[0][0],Z=L[0][1],j=L[0][2],N=L[1][0],H=L[1][1],te=L[1][2],oe=function(Gt){var Nt=Gt[0],Jt=Gt[1],sr=Gt[2];return!(Nt<G||Nt>N||Jt<Z||Jt>H||sr<j||sr>te)},_e=s.distance(L[0],L[1]),Ee=10*_e/C,Ce=Ee*Ee,me=1,ie=0,Se=x.length;Se>1&&(me=p(x));for(var Le=0;Le<Se;Le++){var Ae=s.create();s.copy(Ae,x[Le]);var Fe=[Ae],Pe=[],ge=z(Ae),Re=Ae;Pe.push(ge);var ce=[],Ze=O(Ae,ge),ut=s.length(Ze);isFinite(ut)&&ut>ie&&(ie=ut),ce.push(ut),V.push({points:Fe,velocities:Pe,divergences:ce});for(var pt=0;pt<C*100&&Fe.length<C&&oe(Ae);){pt++;var Zt=s.clone(ge),st=s.squaredLength(Zt);if(st===0)break;if(st>Ce&&s.scale(Zt,Zt,Ee/Math.sqrt(st)),s.add(Zt,Zt,Ae),ge=z(Zt),s.squaredDistance(Re,Zt)-Ce>-1e-4*Ce){Fe.push(Zt),Re=Zt,Pe.push(ge);var Ze=O(Zt,ge),ut=s.length(Ze);isFinite(ut)&&ut>ie&&(ie=ut),ce.push(ut)}Ae=Zt}}var lt=f(V,S.colormap,ie,me);return g?lt.tubeScale=g:(ie===0&&(ie=1),lt.tubeScale=M*.5*me/ie),lt};var k=o(6740),E=o(6405).createMesh;i.exports.createTubeMesh=function(S,L){return E(S,L,{shaders:k,traceType:"streamtube"})}},7827:function(i){i.exports=["<<=",">>=","++","--","<<",">>","<=",">=","==","!=","&&","||","+=","-=","*=","/=","%=","&=","^^","^=","|=","(",")","[","]",".","!","~","*","/","%","+","-","<",">","&","^","|","?",":","=",",",";","{","}"]},7842:function(i,a,o){"use strict";var s=o(6330),l=o(1533),u=o(2651),c=o(6768),f=o(869),h=o(8697);i.exports=d;function d(v,_){if(s(v))return _?h(v,d(_)):[v[0].clone(),v[1].clone()];var b=0,p,k;if(l(v))p=v.clone();else if(typeof v=="string")p=c(v);else{if(v===0)return[u(0),u(1)];if(v===Math.floor(v))p=u(v);else{for(;v!==Math.floor(v);)v=v*Math.pow(2,256),b-=256;p=u(v)}}if(s(_))p.mul(_[1]),k=_[0].clone();else if(l(_))k=_.clone();else if(typeof _=="string")k=c(_);else if(!_)k=u(1);else if(_===Math.floor(_))k=u(_);else{for(;_!==Math.floor(_);)_=_*Math.pow(2,256),b+=256;k=u(_)}return b>0?p=p.ushln(b):b<0&&(k=k.ushln(-b)),f(p,k)}},7894:function(i){i.exports=a;function a(o){return o[0]=1,o[1]=0,o[2]=0,o[3]=0,o[4]=0,o[5]=1,o[6]=0,o[7]=0,o[8]=0,o[9]=0,o[10]=1,o[11]=0,o[12]=0,o[13]=0,o[14]=0,o[15]=1,o}},7932:function(i,a,o){var s=o(620);i.exports=s.slice().concat(["layout","centroid","smooth","case","mat2x2","mat2x3","mat2x4","mat3x2","mat3x3","mat3x4","mat4x2","mat4x3","mat4x4","uvec2","uvec3","uvec4","samplerCubeShadow","sampler2DArray","sampler2DArrayShadow","isampler2D","isampler3D","isamplerCube","isampler2DArray","usampler2D","usampler3D","usamplerCube","usampler2DArray","coherent","restrict","readonly","writeonly","resource","atomic_uint","noperspective","patch","sample","subroutine","common","partition","active","filter","image1D","image2D","image3D","imageCube","iimage1D","iimage2D","iimage3D","iimageCube","uimage1D","uimage2D","uimage3D","uimageCube","image1DArray","image2DArray","iimage1DArray","iimage2DArray","uimage1DArray","uimage2DArray","image1DShadow","image2DShadow","image1DArrayShadow","image2DArrayShadow","imageBuffer","iimageBuffer","uimageBuffer","sampler1DArray","sampler1DArrayShadow","isampler1D","isampler1DArray","usampler1D","usampler1DArray","isampler2DRect","usampler2DRect","samplerBuffer","isamplerBuffer","usamplerBuffer","sampler2DMS","isampler2DMS","usampler2DMS","sampler2DMSArray","isampler2DMSArray","usampler2DMSArray"])},7960:function(i){i.exports=a;function a(o,s){var l=s[0]-o[0],u=s[1]-o[1],c=s[2]-o[2],f=s[3]-o[3];return l*l+u*u+c*c+f*f}},8105:function(i){"use strict";i.exports=o;var a={"lo===p0":s,"lo<p0":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,_,b,p,k,E,S){for(var L=2*v,x=L*b,C=x,M=b,g=_,P=v+_,T=b;p>T;++T,x+=L){var z=k[x+g];if(z===S)if(M===T)M+=1,C+=L;else{for(var O=0;L>O;++O){var V=k[x+O];k[x+O]=k[C],k[C++]=V}var G=E[T];E[T]=E[M],E[M++]=G}}return M}function l(v,_,b,p,k,E,S){for(var L=2*v,x=L*b,C=x,M=b,g=_,P=v+_,T=b;p>T;++T,x+=L){var z=k[x+g];if(z<S)if(M===T)M+=1,C+=L;else{for(var O=0;L>O;++O){var V=k[x+O];k[x+O]=k[C],k[C++]=V}var G=E[T];E[T]=E[M],E[M++]=G}}return M}function u(v,_,b,p,k,E,S){for(var L=2*v,x=L*b,C=x,M=b,g=_,P=v+_,T=b;p>T;++T,x+=L){var z=k[x+P];if(z<=S)if(M===T)M+=1,C+=L;else{for(var O=0;L>O;++O){var V=k[x+O];k[x+O]=k[C],k[C++]=V}var G=E[T];E[T]=E[M],E[M++]=G}}return M}function c(v,_,b,p,k,E,S){for(var L=2*v,x=L*b,C=x,M=b,g=_,P=v+_,T=b;p>T;++T,x+=L){var z=k[x+P];if(z<=S)if(M===T)M+=1,C+=L;else{for(var O=0;L>O;++O){var V=k[x+O];k[x+O]=k[C],k[C++]=V}var G=E[T];E[T]=E[M],E[M++]=G}}return M}function f(v,_,b,p,k,E,S){for(var L=2*v,x=L*b,C=x,M=b,g=_,P=v+_,T=b;p>T;++T,x+=L){var z=k[x+g],O=k[x+P];if(z<=S&&S<=O)if(M===T)M+=1,C+=L;else{for(var V=0;L>V;++V){var G=k[x+V];k[x+V]=k[C],k[C++]=G}var Z=E[T];E[T]=E[M],E[M++]=Z}}return M}function h(v,_,b,p,k,E,S){for(var L=2*v,x=L*b,C=x,M=b,g=_,P=v+_,T=b;p>T;++T,x+=L){var z=k[x+g],O=k[x+P];if(z<S&&S<=O)if(M===T)M+=1,C+=L;else{for(var V=0;L>V;++V){var G=k[x+V];k[x+V]=k[C],k[C++]=G}var Z=E[T];E[T]=E[M],E[M++]=Z}}return M}function d(v,_,b,p,k,E,S,L){for(var x=2*v,C=x*b,M=C,g=b,P=_,T=v+_,z=b;p>z;++z,C+=x){var O=k[C+P],V=k[C+T];if(!(O>=S)&&!(L>=V))if(g===z)g+=1,M+=x;else{for(var G=0;x>G;++G){var Z=k[C+G];k[C+G]=k[M],k[M++]=Z}var j=E[z];E[z]=E[g],E[g++]=j}}return g}},8107:function(i){i.exports=a;function a(o,s,l){return o[0]=Math.min(s[0],l[0]),o[1]=Math.min(s[1],l[1]),o[2]=Math.min(s[2],l[2]),o}},8116:function(i,a,o){"use strict";var s=o(7518),l=o(870);function u(f){this.bindVertexArrayOES=f.bindVertexArray.bind(f),this.createVertexArrayOES=f.createVertexArray.bind(f),this.deleteVertexArrayOES=f.deleteVertexArray.bind(f)}function c(f,h,d,v){var _=f.createVertexArray?new u(f):f.getExtension("OES_vertex_array_object"),b;return _?b=s(f,_):b=l(f),b.update(h,d,v),b}i.exports=c},8192:function(i,a,o){i.exports=c;var s=o(2825),l=o(3536),u=o(244);function c(f,h){var d=s(f[0],f[1],f[2]),v=s(h[0],h[1],h[2]);l(d,d),l(v,v);var _=u(d,v);return _>1?0:Math.acos(_)}},8210:function(i){"use strict";i.exports=o;function a(s,l){var u=s+l,c=u-s,f=u-c,h=l-c,d=s-f,v=d+h;return v?[v,u]:[u]}function o(s,l){var u=s.length|0,c=l.length|0;if(u===1&&c===1)return a(s[0],l[0]);var f=u+c,h=new Array(f),d=0,v=0,_=0,b=Math.abs,p=s[v],k=b(p),E=l[_],S=b(E),L,x;k<S?(x=p,v+=1,v<u&&(p=s[v],k=b(p))):(x=E,_+=1,_<c&&(E=l[_],S=b(E))),v<u&&k<S||_>=c?(L=p,v+=1,v<u&&(p=s[v],k=b(p))):(L=E,_+=1,_<c&&(E=l[_],S=b(E)));for(var C=L+x,M=C-L,g=x-M,P=g,T=C,z,O,V,G,Z;v<u&&_<c;)k<S?(L=p,v+=1,v<u&&(p=s[v],k=b(p))):(L=E,_+=1,_<c&&(E=l[_],S=b(E))),x=P,C=L+x,M=C-L,g=x-M,g&&(h[d++]=g),z=T+C,O=z-T,V=z-O,G=C-O,Z=T-V,P=Z+G,T=z;for(;v<u;)L=p,x=P,C=L+x,M=C-L,g=x-M,g&&(h[d++]=g),z=T+C,O=z-T,V=z-O,G=C-O,Z=T-V,P=Z+G,T=z,v+=1,v<u&&(p=s[v]);for(;_<c;)L=E,x=P,C=L+x,M=C-L,g=x-M,g&&(h[d++]=g),z=T+C,O=z-T,V=z-O,G=C-O,Z=T-V,P=Z+G,T=z,_+=1,_<c&&(E=l[_]);return P&&(h[d++]=P),T&&(h[d++]=T),d||(h[d++]=0),h.length=d,h}},8277:function(i){"use strict";function a(){return function(f,h,d,v,_){var b=f[0],p=f[1],k=f[2],E=d[0],S=d[1],L=d[2],x=[0,0,0];v|=0;var C=0,M=0,g=0,P=L,T=S-k*L,z=E-p*S;for(g=0;g<b;++g){for(M=0;M<p;++M){for(C=0;C<k;++C){{var O=_,V;for(V=0;V<x.length-1;++V)O=O[x[V]];h[v]=O[x[x.length-1]]}v+=P,++x[2]}v+=T,x[2]-=k,++x[1]}v+=z,x[1]-=p,++x[0]}}}function o(){return a()}var s=o;function l(f){var h={};return function(v,_){var b=v.dtype,p=v.order,k=[b,p.join()].join(),E=h[k];return E||(h[k]=E=f([b,p])),E(v.shape.slice(0),v.data,v.stride,v.offset|0,_)}}function u(f){return l(s.bind(void 0,f))}function c(f){return u({funcName:f.funcName})}i.exports=c({funcName:"convert"})},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}},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 _=l[v],b=0,p=_[_.length-1],k=_[0],E=0;E<_.length;++E){b=p,p=k,k=_[(E+1)%_.length];for(var S=u[b],L=u[p],x=u[k],C=new Array(3),M=0,g=new Array(3),P=0,T=0;T<3;++T)C[T]=S[T]-L[T],M+=C[T]*C[T],g[T]=x[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]*C[G]-g[G]*C[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 _=l[v],b=new Array(3),p=0;p<3;++p)b[p]=u[_[p]];for(var k=new Array(3),E=new Array(3),p=0;p<3;++p)k[p]=b[1][p]-b[0][p],E[p]=b[2][p]-b[0][p];for(var S=new Array(3),L=0,p=0;p<3;++p){var x=(p+1)%3,C=(p+2)%3;S[p]=k[x]*E[C]-k[C]*E[x],L+=S[p]*S[p]}L>d?L=1/Math.sqrt(L):L=0;for(var p=0;p<3;++p)S[p]*=L;h[v]=S}return h}},8418:function(i,a,o){"use strict";var s=o(5219),l=o(2762),u=o(8116),c=o(1888),f=o(6760),h=o(1283),d=o(9366),v=o(5964),_=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],b=ArrayBuffer,p=DataView;function k(Ae){return b.isView(Ae)&&!(Ae instanceof p)}function E(Ae){return Array.isArray(Ae)||k(Ae)}i.exports=Le;function S(Ae,Fe){var Pe=Ae[0],ge=Ae[1],Re=Ae[2],ce=Ae[3];return Ae[0]=Fe[0]*Pe+Fe[4]*ge+Fe[8]*Re+Fe[12]*ce,Ae[1]=Fe[1]*Pe+Fe[5]*ge+Fe[9]*Re+Fe[13]*ce,Ae[2]=Fe[2]*Pe+Fe[6]*ge+Fe[10]*Re+Fe[14]*ce,Ae[3]=Fe[3]*Pe+Fe[7]*ge+Fe[11]*Re+Fe[15]*ce,Ae}function L(Ae,Fe,Pe,ge){return S(ge,ge,Pe),S(ge,ge,Fe),S(ge,ge,Ae)}function x(Ae,Fe){this.index=Ae,this.dataCoordinate=this.position=Fe}function C(Ae){return Ae===!0||Ae>1?1:Ae}function M(Ae,Fe,Pe,ge,Re,ce,Ze,ut,pt,Zt,st,lt){this.gl=Ae,this.pixelRatio=1,this.shader=Fe,this.orthoShader=Pe,this.projectShader=ge,this.pointBuffer=Re,this.colorBuffer=ce,this.glyphBuffer=Ze,this.idBuffer=ut,this.vao=pt,this.vertexCount=0,this.lineVertexCount=0,this.opacity=1,this.hasAlpha=!1,this.lineWidth=0,this.projectScale=[.6666666666666666,.6666666666666666,.6666666666666666],this.projectOpacity=[1,1,1],this.projectHasAlpha=!1,this.pickId=0,this.pickPerspectiveShader=Zt,this.pickOrthoShader=st,this.pickProjectShader=lt,this.points=[],this._selectResult=new x(0,[0,0,0]),this.useOrtho=!0,this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.axesProject=[!0,!0,!0],this.axesBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.highlightId=[1,1,1,1],this.highlightScale=2,this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.dirty=!0}var g=M.prototype;g.pickSlots=1,g.setPickBase=function(Ae){this.pickId=Ae},g.isTransparent=function(){if(this.hasAlpha)return!0;for(var Ae=0;Ae<3;++Ae)if(this.axesProject[Ae]&&this.projectHasAlpha)return!0;return!1},g.isOpaque=function(){if(!this.hasAlpha)return!0;for(var Ae=0;Ae<3;++Ae)if(this.axesProject[Ae]&&!this.projectHasAlpha)return!0;return!1};var P=[0,0],T=[0,0,0],z=[0,0,0],O=[0,0,0,1],V=[0,0,0,1],G=_.slice(),Z=[0,0,0],j=[[0,0,0],[0,0,0]];function N(Ae){return Ae[0]=Ae[1]=Ae[2]=0,Ae}function H(Ae,Fe){return Ae[0]=Fe[0],Ae[1]=Fe[1],Ae[2]=Fe[2],Ae[3]=1,Ae}function te(Ae,Fe,Pe,ge){return Ae[0]=Fe[0],Ae[1]=Fe[1],Ae[2]=Fe[2],Ae[Pe]=ge,Ae}function oe(Ae){for(var Fe=j,Pe=0;Pe<2;++Pe)for(var ge=0;ge<3;++ge)Fe[Pe][ge]=Math.max(Math.min(Ae[Pe][ge],1e8),-1e8);return Fe}function _e(Ae,Fe,Pe,ge){var Re=Fe.axesProject,ce=Fe.gl,Ze=Ae.uniforms,ut=Pe.model||_,pt=Pe.view||_,Zt=Pe.projection||_,st=Fe.axesBounds,lt=oe(Fe.clipBounds),Gt;Fe.axes&&Fe.axes.lastCubeProps?Gt=Fe.axes.lastCubeProps.axis:Gt=[1,1,1],P[0]=2/ce.drawingBufferWidth,P[1]=2/ce.drawingBufferHeight,Ae.bind(),Ze.view=pt,Ze.projection=Zt,Ze.screenSize=P,Ze.highlightId=Fe.highlightId,Ze.highlightScale=Fe.highlightScale,Ze.clipBounds=lt,Ze.pickGroup=Fe.pickId/255,Ze.pixelRatio=ge;for(var Nt=0;Nt<3;++Nt)if(Re[Nt]){Ze.scale=Fe.projectScale[Nt],Ze.opacity=Fe.projectOpacity[Nt];for(var Jt=G,sr=0;sr<16;++sr)Jt[sr]=0;for(var sr=0;sr<4;++sr)Jt[5*sr]=1;Jt[5*Nt]=0,Gt[Nt]<0?Jt[12+Nt]=st[0][Nt]:Jt[12+Nt]=st[1][Nt],f(Jt,ut,Jt),Ze.model=Jt;var wr=(Nt+1)%3,cr=(Nt+2)%3,$e=N(T),St=N(z);$e[wr]=1,St[cr]=1;var Qt=L(Zt,pt,ut,H(O,$e)),Vt=L(Zt,pt,ut,H(V,St));if(Math.abs(Qt[1])>Math.abs(Vt[1])){var _t=Qt;Qt=Vt,Vt=_t,_t=$e,$e=St,St=_t;var It=wr;wr=cr,cr=It}Qt[0]<0&&($e[wr]=-1),Vt[1]>0&&(St[cr]=-1);for(var mt=0,er=0,sr=0;sr<4;++sr)mt+=Math.pow(ut[4*wr+sr],2),er+=Math.pow(ut[4*cr+sr],2);$e[wr]/=Math.sqrt(mt),St[cr]/=Math.sqrt(er),Ze.axes[0]=$e,Ze.axes[1]=St,Ze.fragClipBounds[0]=te(Z,lt[0],Nt,-1e8),Ze.fragClipBounds[1]=te(Z,lt[1],Nt,1e8),Fe.vao.bind(),Fe.vao.draw(ce.TRIANGLES,Fe.vertexCount),Fe.lineWidth>0&&(ce.lineWidth(Fe.lineWidth*ge),Fe.vao.draw(ce.LINES,Fe.lineVertexCount,Fe.vertexCount)),Fe.vao.unbind()}}var Ee=[-1e8,-1e8,-1e8],Ce=[1e8,1e8,1e8],me=[Ee,Ce];function ie(Ae,Fe,Pe,ge,Re,ce,Ze){var ut=Pe.gl;if((ce===Pe.projectHasAlpha||Ze)&&_e(Fe,Pe,ge,Re),ce===Pe.hasAlpha||Ze){Ae.bind();var pt=Ae.uniforms;pt.model=ge.model||_,pt.view=ge.view||_,pt.projection=ge.projection||_,P[0]=2/ut.drawingBufferWidth,P[1]=2/ut.drawingBufferHeight,pt.screenSize=P,pt.highlightId=Pe.highlightId,pt.highlightScale=Pe.highlightScale,pt.fragClipBounds=me,pt.clipBounds=Pe.axes.bounds,pt.opacity=Pe.opacity,pt.pickGroup=Pe.pickId/255,pt.pixelRatio=Re,Pe.vao.bind(),Pe.vao.draw(ut.TRIANGLES,Pe.vertexCount),Pe.lineWidth>0&&(ut.lineWidth(Pe.lineWidth*Re),Pe.vao.draw(ut.LINES,Pe.lineVertexCount,Pe.vertexCount)),Pe.vao.unbind()}}g.draw=function(Ae){var Fe=this.useOrtho?this.orthoShader:this.shader;ie(Fe,this.projectShader,this,Ae,this.pixelRatio,!1,!1)},g.drawTransparent=function(Ae){var Fe=this.useOrtho?this.orthoShader:this.shader;ie(Fe,this.projectShader,this,Ae,this.pixelRatio,!0,!1)},g.drawPick=function(Ae){var Fe=this.useOrtho?this.pickOrthoShader:this.pickPerspectiveShader;ie(Fe,this.pickProjectShader,this,Ae,1,!0,!0)},g.pick=function(Ae){if(!Ae||Ae.id!==this.pickId)return null;var Fe=Ae.value[2]+(Ae.value[1]<<8)+(Ae.value[0]<<16);if(Fe>=this.pointCount||Fe<0)return null;var Pe=this.points[Fe],ge=this._selectResult;ge.index=Fe;for(var Re=0;Re<3;++Re)ge.position[Re]=ge.dataCoordinate[Re]=Pe[Re];return ge},g.highlight=function(Ae){if(!Ae)this.highlightId=[1,1,1,1];else{var Fe=Ae.index,Pe=Fe&255,ge=Fe>>8&255,Re=Fe>>16&255;this.highlightId=[Pe/255,ge/255,Re/255,0]}};function Se(Ae,Fe,Pe,ge){var Re;E(Ae)?Fe<Ae.length?Re=Ae[Fe]:Re=void 0:Re=Ae,Re=v(Re);var ce=!0;s(Re)&&(Re="\u25BC",ce=!1),Pe||(Pe={});var Ze=Pe.family;E(Ze)&&(Ze=Ze[Fe]),Ze||(Ze="normal");var ut=Pe.weight;E(ut)&&(ut=ut[Fe]),ut||(ut="normal");var pt=Pe.style;E(pt)&&(pt=pt[Fe]),pt||(pt="normal");var Zt=Pe.variant;E(Zt)&&(Zt=Zt[Fe]),Zt||(Zt="normal");var st=d(Re,{family:Ze,weight:ut,style:pt,variant:Zt},ge),st=d(Re,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 Fe=!!Ae.project;this.axesProject=[Fe,Fe,Fe]}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]=C(this.projectOpacity[ge]),this.projectOpacity[ge]<1&&(this.projectHasAlpha=!0)}this.hasAlpha=!1,"opacity"in Ae&&(this.opacity=C(Ae.opacity),this.opacity<1&&(this.hasAlpha=!0)),this.dirty=!0;var Re=Ae.position,ce={family:Ae.font||"normal",style:Ae.fontStyle||"normal",weight:Ae.fontWeight||"normal",variant:Ae.fontVariant||"normal"},Ze=Ae.alignment||[0,0],ut,pt;if(Ze.length===2)ut=Ze[0],pt=Ze[1];else{ut=[],pt=[];for(var ge=0;ge<Ze.length;++ge)ut[ge]=Ze[ge][0],pt[ge]=Ze[ge][1]}var Zt=[1/0,1/0,1/0],st=[-1/0,-1/0,-1/0],lt=Ae.glyph,Gt=Ae.color,Nt=Ae.size,Jt=Ae.angle,sr=Ae.lineColor,wr=-1,cr=0,$e=0,St=0;if(Re.length){St=Re.length;e:for(var ge=0;ge<St;++ge){for(var Qt=Re[ge],Vt=0;Vt<3;++Vt)if(isNaN(Qt[Vt])||!isFinite(Qt[Vt]))continue e;var _t=Se(lt,ge,ce,this.pixelRatio),It=_t.mesh,mt=_t.lines,er=_t.bounds;cr+=It.cells.length*3,$e+=mt.edges.length*2}}var lr=cr+$e,Tr=c.mallocFloat(3*lr),Lr=c.mallocFloat(4*lr),ti=c.mallocFloat(2*lr),Br=c.mallocUint32(lr);if(lr>0){var Vr=0,dt=cr,Ge=[0,0,0,1],Je=[0,0,0,1],je=E(Gt)&&E(Gt[0]),tt=E(sr)&&E(sr[0]);e:for(var ge=0;ge<St;++ge){wr+=1;for(var Qt=Re[ge],Vt=0;Vt<3;++Vt){if(isNaN(Qt[Vt])||!isFinite(Qt[Vt]))continue e;st[Vt]=Math.max(st[Vt],Qt[Vt]),Zt[Vt]=Math.min(Zt[Vt],Qt[Vt])}var _t=Se(lt,ge,ce,this.pixelRatio),It=_t.mesh,mt=_t.lines,er=_t.bounds,xt=_t.visible;if(!xt)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 Vt=0;Vt<3;++Vt)Ge[Vt]=Ie[Vt];Ge[3]=1}else if(Ie.length===4){for(var Vt=0;Vt<4;++Vt)Ge[Vt]=Ie[Vt];!this.hasAlpha&&Ie[3]<1&&(this.hasAlpha=!0)}}else Ge[0]=Ge[1]=Ge[2]=0,Ge[3]=1;if(!xt)Je=[1,1,1,0];else if(E(sr)){var Ie;if(tt?ge<sr.length?Ie=sr[ge]:Ie=[0,0,0,0]:Ie=sr,Ie.length===3){for(var Vt=0;Vt<3;++Vt)Je[Vt]=Ie[Vt];Je[Vt]=1}else if(Ie.length===4){for(var Vt=0;Vt<4;++Vt)Je[Vt]=Ie[Vt];!this.hasAlpha&&Ie[3]<1&&(this.hasAlpha=!0)}}else Je[0]=Je[1]=Je[2]=0,Je[3]=1;var xe=.5;xt?E(Nt)?ge<Nt.length?xe=+Nt[ge]:xe=12:Nt?xe=+Nt:this.useOrtho&&(xe=12):xe=0;var ke=0;E(Jt)?ge<Jt.length?ke=+Jt[ge]:ke=0:Jt&&(ke=+Jt);for(var vt=Math.cos(ke),ir=Math.sin(ke),Qt=Re[ge],Vt=0;Vt<3;++Vt)st[Vt]=Math.max(st[Vt],Qt[Vt]),Zt[Vt]=Math.min(Zt[Vt],Qt[Vt]);var ar=ut,vr=pt,ar=0;E(ut)?ge<ut.length?ar=ut[ge]:ar=0:ut&&(ar=ut);var vr=0;E(pt)?ge<pt.length?vr=pt[ge]:vr=0:pt&&(vr=pt),ar*=ar>0?1-er[0][0]:ar<0?1+er[1][0]:1,vr*=vr>0?1-er[0][1]:vr<0?1+er[1][1]:1;for(var ii=[ar,vr],In=It.cells||[],wi=It.positions||[],Vt=0;Vt<In.length;++Vt)for(var pi=In[Vt],$r=0;$r<3;++$r){for(var di=0;di<3;++di)Tr[3*Vr+di]=Qt[di];for(var di=0;di<4;++di)Lr[4*Vr+di]=Ge[di];Br[Vr]=wr;var ji=wi[pi[$r]];ti[2*Vr]=xe*(vt*ji[0]-ir*ji[1]+ii[0]),ti[2*Vr+1]=xe*(ir*ji[0]+vt*ji[1]+ii[1]),Vr+=1}for(var In=mt.edges,wi=mt.positions,Vt=0;Vt<In.length;++Vt)for(var pi=In[Vt],$r=0;$r<2;++$r){for(var di=0;di<3;++di)Tr[3*dt+di]=Qt[di];for(var di=0;di<4;++di)Lr[4*dt+di]=Je[di];Br[dt]=wr;var ji=wi[pi[$r]];ti[2*dt]=xe*(vt*ji[0]-ir*ji[1]+ii[0]),ti[2*dt+1]=xe*(ir*ji[0]+vt*ji[1]+ii[1]),dt+=1}}}this.bounds=[Zt,st],this.points=Re,this.pointCount=Re.length,this.vertexCount=cr,this.lineVertexCount=$e,this.pointBuffer.update(Tr),this.colorBuffer.update(Lr),this.glyphBuffer.update(ti),this.idBuffer.update(Br),c.free(Tr),c.free(Lr),c.free(ti),c.free(Br)},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 Fe=Ae.gl,Pe=h.createPerspective(Fe),ge=h.createOrtho(Fe),Re=h.createProject(Fe),ce=h.createPickPerspective(Fe),Ze=h.createPickOrtho(Fe),ut=h.createPickProject(Fe),pt=l(Fe),Zt=l(Fe),st=l(Fe),lt=l(Fe),Gt=u(Fe,[{buffer:pt,size:3,type:Fe.FLOAT},{buffer:Zt,size:4,type:Fe.FLOAT},{buffer:st,size:2,type:Fe.FLOAT},{buffer:lt,size:4,type:Fe.UNSIGNED_BYTE,normalized:!0}]),Nt=new M(Fe,Pe,ge,Re,pt,Zt,st,lt,Gt,ce,Ze,ut);return Nt.update(Ae),Nt}},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}},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]),_=a(u[0],u[1]);return a(v,l[2])-a(_,u[2])||a(v+l[2],h)-a(_+u[2],d);case 4:var b=l[0],p=l[1],k=l[2],E=l[3],S=u[0],L=u[1],x=u[2],C=u[3];return b+p+k+E-(S+L+x+C)||a(b,p,k,E)-a(S,L,x,C,S)||a(b+p,b+k,b+E,p+k,p+E,k+E)-a(S+L,S+x,S+C,L+x,L+C,x+C)||a(b+p+k,b+p+E,b+k+E,p+k+E)-a(S+L+x,S+L+C,S+x+C,L+x+C);default:for(var M=l.slice().sort(o),g=u.slice().sort(o),P=0;P<c;++P)if(f=M[P]-g[P],f)return f;return 0}}},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 _=v.deltaX||0,b=v.deltaY||0,p=v.deltaZ||0,k=v.deltaMode,E=1;switch(k){case 1:E=h;break;case 2:E=window.innerHeight;break}if(_*=E,b*=E,p*=E,_||b||p)return c(_,b,p,v)};return u.addEventListener("wheel",d),d}},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,_=0,b=Math.abs,p=s[v],k=b(p),E=-l[_],S=b(E),L,x;k<S?(x=p,v+=1,v<u&&(p=s[v],k=b(p))):(x=E,_+=1,_<c&&(E=-l[_],S=b(E))),v<u&&k<S||_>=c?(L=p,v+=1,v<u&&(p=s[v],k=b(p))):(L=E,_+=1,_<c&&(E=-l[_],S=b(E)));for(var C=L+x,M=C-L,g=x-M,P=g,T=C,z,O,V,G,Z;v<u&&_<c;)k<S?(L=p,v+=1,v<u&&(p=s[v],k=b(p))):(L=E,_+=1,_<c&&(E=-l[_],S=b(E))),x=P,C=L+x,M=C-L,g=x-M,g&&(h[d++]=g),z=T+C,O=z-T,V=z-O,G=C-O,Z=T-V,P=Z+G,T=z;for(;v<u;)L=p,x=P,C=L+x,M=C-L,g=x-M,g&&(h[d++]=g),z=T+C,O=z-T,V=z-O,G=C-O,Z=T-V,P=Z+G,T=z,v+=1,v<u&&(p=s[v]);for(;_<c;)L=E,x=P,C=L+x,M=C-L,g=x-M,g&&(h[d++]=g),z=T+C,O=z-T,V=z-O,G=C-O,Z=T-V,P=Z+G,T=z,_+=1,_<c&&(E=-l[_]);return P&&(h[d++]=P),T&&(h[d++]=T),d||(h[d++]=0),h.length=d,h}},8572:function(i){"use strict";i.exports=function(o){return o<0?-1:o>0?1:0}},8648:function(i,a,o){i.exports=o(783)},8692:function(i){i.exports=a;function a(o,s,l,u){var c=l[0],f=l[1],h=s[0]-c,d=s[1]-f,v=Math.sin(u),_=Math.cos(u);return o[0]=c+h*_-d*v,o[1]=f+h*v+d*_,o[2]=s[2],o}},8697:function(i,a,o){"use strict";var s=o(869);i.exports=l;function l(u,c){return s(u[0].mul(c[1]),u[1].mul(c[0]))}},8731:function(i,a,o){"use strict";i.exports=d;var s=o(8866);function l(v,_,b,p,k,E){this._gl=v,this._wrapper=_,this._index=b,this._locations=p,this._dimension=k,this._constFunc=E}var u=l.prototype;u.pointer=function(_,b,p,k){var E=this,S=E._gl,L=E._locations[E._index];S.vertexAttribPointer(L,E._dimension,_||S.FLOAT,!!b,p||0,k||0),S.enableVertexAttribArray(L)},u.set=function(v,_,b,p){return this._constFunc(this._locations[this._index],v,_,b,p)},Object.defineProperty(u,"location",{get:function(){return this._locations[this._index]},set:function(v){return v!==this._locations[this._index]&&(this._locations[this._index]=v|0,this._wrapper.program=null),v|0}});var c=[function(v,_,b){return b.length===void 0?v.vertexAttrib1f(_,b):v.vertexAttrib1fv(_,b)},function(v,_,b,p){return b.length===void 0?v.vertexAttrib2f(_,b,p):v.vertexAttrib2fv(_,b)},function(v,_,b,p,k){return b.length===void 0?v.vertexAttrib3f(_,b,p,k):v.vertexAttrib3fv(_,b)},function(v,_,b,p,k,E){return b.length===void 0?v.vertexAttrib4f(_,b,p,k,E):v.vertexAttrib4fv(_,b)}];function f(v,_,b,p,k,E,S){var L=c[k],x=new l(v,_,b,p,k,L);Object.defineProperty(E,S,{set:function(C){return v.disableVertexAttribArray(p[b]),L(v,p[b],C),C},get:function(){return x},enumerable:!0})}function h(v,_,b,p,k,E,S){for(var L=new Array(k),x=new Array(k),C=0;C<k;++C)f(v,_,b[C],p,k,L,C),x[C]=L[C];Object.defineProperty(L,"location",{set:function(P){if(Array.isArray(P))for(var T=0;T<k;++T)x[T].location=P[T];else for(var T=0;T<k;++T)x[T].location=P+T;return P},get:function(){for(var P=new Array(k),T=0;T<k;++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||k*k,O=O||0;for(var V=0;V<k;++V){var G=p[b[V]];v.vertexAttribPointer(G,k,P,T,z,O+V*k),v.enableVertexAttribArray(G)}};var M=new Array(k),g=v["vertexAttrib"+k+"fv"];Object.defineProperty(E,S,{set:function(P){for(var T=0;T<k;++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<k;++O)M[O]=P[k*T+O];g.call(v,z,M)}}return P},get:function(){return L},enumerable:!0})}function d(v,_,b,p){for(var k={},E=0,S=b.length;E<S;++E){var L=b[E],x=L.name,C=L.type,M=L.locations;switch(C){case"bool":case"int":case"float":f(v,_,M[0],p,1,k,x);break;default:if(C.indexOf("vec")>=0){var g=C.charCodeAt(C.length-1)-48;if(g<2||g>4)throw new s("","Invalid data type for attribute "+x+": "+C);f(v,_,M[0],p,g,k,x)}else if(C.indexOf("mat")>=0){var g=C.charCodeAt(C.length-1)-48;if(g<2||g>4)throw new s("","Invalid data type for attribute "+x+": "+C);h(v,_,M,p,g,k,x)}else throw new s("","Unknown data type for attribute "+x+": "+C);break}}return k}},8828:function(i,a){"use strict";"use restrict";var o=32;a.INT_BITS=o,a.INT_MAX=2147483647,a.INT_MIN=-1<<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}},8866:function(i){function a(o,s,l){this.shortMessage=s||"",this.longMessage=l||"",this.rawError=o||"",this.message="gl-shader: "+(s||o||"")+(l?`
`+l:""),this.stack=new Error().stack}a.prototype=new Error,a.prototype.name="GLError",a.prototype.constructor=a,i.exports=a},8902:function(i,a,o){"use strict";var s=o(2478),l=o(3250)[3],u=0,c=1,f=2;i.exports=S;function h(L,x,C,M,g){this.a=L,this.b=x,this.idx=C,this.lowerIds=M,this.upperIds=g}function d(L,x,C,M){this.a=L,this.b=x,this.type=C,this.idx=M}function v(L,x){var C=L.a[0]-x.a[0]||L.a[1]-x.a[1]||L.type-x.type;return C||L.type!==u&&(C=l(L.a,L.b,x.b),C)?C:L.idx-x.idx}function _(L,x){return l(L.a,L.b,x)}function b(L,x,C,M,g){for(var P=s.lt(x,M,_),T=s.gt(x,M,_),z=P;z<T;++z){for(var O=x[z],V=O.lowerIds,Z=V.length;Z>1&&l(C[V[Z-2]],C[V[Z-1]],M)>0;)L.push([V[Z-1],V[Z-2],g]),Z-=1;V.length=Z,V.push(g);for(var G=O.upperIds,Z=G.length;Z>1&&l(C[G[Z-2]],C[G[Z-1]],M)<0;)L.push([G[Z-2],G[Z-1],g]),Z-=1;G.length=Z,G.push(g)}}function p(L,x){var C;return L.a[0]<x.a[0]?C=l(L.a,L.b,x.a):C=l(x.b,x.a,L.a),C||(x.b[0]<L.b[0]?C=l(L.a,L.b,x.b):C=l(x.b,x.a,L.b),C||L.idx-x.idx)}function k(L,x,C){var M=s.le(L,C,p),g=L[M],P=g.upperIds,T=P[P.length-1];g.upperIds=[T],L.splice(M+1,0,new h(C.a,C.b,C.idx,[T],P))}function E(L,x,C){var M=C.a;C.a=C.b,C.b=M;var g=s.eq(L,C,p),P=L[g],T=L[g-1];T.upperIds=P.upperIds,L.splice(g,1)}function S(L,x){for(var C=L.length,M=x.length,g=[],P=0;P<C;++P)g.push(new d(L[P],null,u,P));for(var P=0;P<M;++P){var T=x[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,j=g.length;P<j;++P){var N=g[P],H=N.type;H===u?b(Z,G,L,N.a,N.idx):H===f?k(G,L,N):E(G,L,N)}return Z}},8954:function(i,a,o){"use strict";i.exports=p;var s=o(3250),l=o(6803).Fw;function u(k,E,S){this.vertices=k,this.adjacent=E,this.boundary=S,this.lastVisited=-1}u.prototype.flip=function(){var k=this.vertices[0];this.vertices[0]=this.vertices[1],this.vertices[1]=k;var E=this.adjacent[0];this.adjacent[0]=this.adjacent[1],this.adjacent[1]=E};function c(k,E,S){this.vertices=k,this.cell=E,this.index=S}function f(k,E){return l(k.vertices,E.vertices)}function h(k){return function(){var E=this.tuple;return k.apply(this,E)}}function d(k){var E=s[k+1];return E||(E=s),h(E)}var v=[];function _(k,E,S){this.dimension=k,this.vertices=E,this.simplices=S,this.interior=S.filter(function(C){return!C.boundary}),this.tuple=new Array(k+1);for(var L=0;L<=k;++L)this.tuple[L]=this.vertices[L];var x=v[k];x||(x=v[k]=d(k)),this.orient=x}var b=_.prototype;b.handleBoundaryDegeneracy=function(k,E){var S=this.dimension,L=this.vertices.length-1,x=this.tuple,C=this.vertices,M=[k];for(k.lastVisited=-L;M.length>0;){k=M.pop();for(var g=k.adjacent,P=0;P<=S;++P){var T=g[P];if(!(!T.boundary||T.lastVisited<=-L)){for(var z=T.vertices,O=0;O<=S;++O){var V=z[O];V<0?x[O]=E:x[O]=C[V]}var G=this.orient();if(G>0)return T;T.lastVisited=-L,G===0&&M.push(T)}}}return null},b.walk=function(k,E){var S=this.vertices.length-1,L=this.dimension,x=this.vertices,C=this.tuple,M=E?this.interior.length*Math.random()|0:this.interior.length-1,g=this.interior[M];e:for(;!g.boundary;){for(var P=g.vertices,T=g.adjacent,z=0;z<=L;++z)C[z]=x[P[z]];g.lastVisited=S;for(var z=0;z<=L;++z){var O=T[z];if(!(O.lastVisited>=S)){var V=C[z];C[z]=k;var G=this.orient();if(C[z]=V,G<0){g=O;continue e}else O.boundary?O.lastVisited=-S:O.lastVisited=S}}return}return g},b.addPeaks=function(k,E){var S=this.vertices.length-1,L=this.dimension,x=this.vertices,C=this.tuple,M=this.interior,g=this.simplices,P=[E];E.lastVisited=S,E.vertices[E.vertices.indexOf(-1)]=S,E.boundary=!1,M.push(E);for(var T=[];P.length>0;){var E=P.pop(),z=E.vertices,O=E.adjacent,V=z.indexOf(S);if(!(V<0)){for(var G=0;G<=L;++G)if(G!==V){var Z=O[G];if(!(!Z.boundary||Z.lastVisited>=S)){var j=Z.vertices;if(Z.lastVisited!==-S){for(var N=0,H=0;H<=L;++H)j[H]<0?(N=H,C[H]=k):C[H]=x[j[H]];var te=this.orient();if(te>0){j[N]=S,Z.boundary=!1,M.push(Z),P.push(Z),Z.lastVisited=S;continue}else Z.lastVisited=-S}var oe=Z.adjacent,_e=z.slice(),Ee=O.slice(),Ce=new u(_e,Ee,!0);g.push(Ce);var me=oe.indexOf(E);if(!(me<0)){oe[me]=Ce,Ee[V]=Z,_e[G]=-1,Ee[G]=E,O[G]=Ce,Ce.flip();for(var H=0;H<=L;++H){var ie=_e[H];if(!(ie<0||ie===S)){for(var Se=new Array(L-1),Le=0,Ae=0;Ae<=L;++Ae){var Fe=_e[Ae];Fe<0||Ae===H||(Se[Le++]=Fe)}T.push(new c(Se,Ce,H))}}}}}}}T.sort(f);for(var G=0;G+1<T.length;G+=2){var Pe=T[G],ge=T[G+1],Re=Pe.index,ce=ge.index;Re<0||ce<0||(Pe.cell.adjacent[Pe.index]=ge.cell,ge.cell.adjacent[ge.index]=Pe.cell)}},b.insert=function(k,E){var S=this.vertices;S.push(k);var L=this.walk(k,E);if(L){for(var x=this.dimension,C=this.tuple,M=0;M<=x;++M){var g=L.vertices[M];g<0?C[M]=k:C[M]=S[g]}var P=this.orient(C);P<0||P===0&&(L=this.handleBoundaryDegeneracy(L,k),!L)||this.addPeaks(k,L)}},b.boundary=function(){for(var k=this.dimension,E=[],S=this.simplices,L=S.length,x=0;x<L;++x){var C=S[x];if(C.boundary){for(var M=new Array(k),g=C.vertices,P=0,T=0,z=0;z<=k;++z)g[z]>=0?M[P++]=g[z]:T=z&1;if(T===(k&1)){var O=M[0];M[0]=M[1],M[1]=O}E.push(M)}}return E};function p(k,E){var S=k.length;if(S===0)throw new Error("Must have at least d+1 points");var L=k[0].length;if(S<=L)throw new Error("Must input at least d+1 points");var x=k.slice(0,L+1),C=s.apply(void 0,x);if(C===0)throw new Error("Input not in general position");for(var M=new Array(L+1),g=0;g<=L;++g)M[g]=g;C<0&&(M[0]=1,M[1]=0);for(var P=new u(M,new Array(L+1),!1),T=P.adjacent,z=new Array(L+2),g=0;g<=L;++g){for(var O=M.slice(),V=0;V<=L;++V)V===g&&(O[V]=-1);var G=O[0];O[0]=O[1],O[1]=G;var Z=new u(O,new Array(L+1),!0);T[g]=Z,z[g]=Z}z[L+1]=P;for(var g=0;g<=L;++g)for(var O=T[g].vertices,j=T[g].adjacent,V=0;V<=L;++V){var N=O[V];if(N<0){j[V]=P;continue}for(var H=0;H<=L;++H)T[H].vertices.indexOf(N)<0&&(j[V]=T[H])}for(var te=new _(L,x,z),oe=!!E,g=L+1;g<S;++g)te.insert(k[g],oe);return te.boundary()}},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),_=0;_<d;++_)v[_]=l(c[_],h);return v}},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),_=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function b(C,M,g,P,T,z,O,V,G,Z,j){this.gl=C,this.pixelRatio=1,this.cells=[],this.positions=[],this.intensity=[],this.texture=M,this.dirty=!0,this.triShader=g,this.pickShader=P,this.trianglePositions=T,this.triangleVectors=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=j,this.tubeScale=1,this.coneScale=2,this.vectorScale=1,this.coneOffset=.25,this._model=_,this._view=_,this._projection=_,this._resolution=[1,1]}var p=b.prototype;p.isOpaque=function(){return this.opacity>=1},p.isTransparent=function(){return this.opacity<1},p.pickSlots=1,p.setPickBase=function(C){this.pickId=C};function k(C){for(var M=v({colormap:C,nshades:256,format:"rgba"}),g=new Uint8Array(256*4),P=0;P<256;++P){for(var T=M[P],z=0;z<3;++z)g[4*P+z]=T[z];g[4*P+3]=T[3]*255}return d(g,[256,256,4],[4,0,1])}function E(C){for(var M=C.length,g=new Array(M),P=0;P<M;++P)g[P]=C[P][2];return g}p.update=function(C){C=C||{};var M=this.gl;this.dirty=!0,"lightPosition"in C&&(this.lightPosition=C.lightPosition),"opacity"in C&&(this.opacity=C.opacity),"ambient"in C&&(this.ambientLight=C.ambient),"diffuse"in C&&(this.diffuseLight=C.diffuse),"specular"in C&&(this.specularLight=C.specular),"roughness"in C&&(this.roughness=C.roughness),"fresnel"in C&&(this.fresnel=C.fresnel),C.tubeScale!==void 0&&(this.tubeScale=C.tubeScale),C.vectorScale!==void 0&&(this.vectorScale=C.vectorScale),C.coneScale!==void 0&&(this.coneScale=C.coneScale),C.coneOffset!==void 0&&(this.coneOffset=C.coneOffset),C.colormap&&(this.texture.shape=[256,256],this.texture.minFilter=M.LINEAR_MIPMAP_LINEAR,this.texture.magFilter=M.LINEAR,this.texture.setPixels(k(C.colormap)),this.texture.generateMipmap());var g=C.cells,P=C.positions,T=C.vectors;if(!(!P||!g||!T)){var z=[],O=[],V=[],G=[],Z=[];this.cells=g,this.positions=P,this.vectors=T;var j=C.meshColor||[1,1,1,1],N=C.vertexIntensity,H=1/0,te=-1/0;if(N)if(C.vertexIntensityBounds)H=+C.vertexIntensityBounds[0],te=+C.vertexIntensityBounds[1];else for(var oe=0;oe<N.length;++oe){var _e=N[oe];H=Math.min(H,_e),te=Math.max(te,_e)}else for(var oe=0;oe<P.length;++oe){var _e=P[oe][2];H=Math.min(H,_e),te=Math.max(te,_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 Ee=P[oe],Ce=0;Ce<3;++Ce)isNaN(Ee[Ce])||!isFinite(Ee[Ce])||(this.bounds[0][Ce]=Math.min(this.bounds[0][Ce],Ee[Ce]),this.bounds[1][Ce]=Math.max(this.bounds[1][Ce],Ee[Ce]));var me=0;e:for(var oe=0;oe<g.length;++oe){var ie=g[oe];switch(ie.length){case 3:for(var Ce=0;Ce<3;++Ce)for(var Se=ie[Ce],Ee=P[Se],Le=0;Le<3;++Le)if(isNaN(Ee[Le])||!isFinite(Ee[Le]))continue e;for(var Ce=0;Ce<3;++Ce){var Se=ie[2-Ce],Ee=P[Se];z.push(Ee[0],Ee[1],Ee[2],Ee[3]);var Ae=T[Se];O.push(Ae[0],Ae[1],Ae[2],Ae[3]||0);var Fe=j;Fe.length===3?V.push(Fe[0],Fe[1],Fe[2],1):V.push(Fe[0],Fe[1],Fe[2],Fe[3]);var Pe;N?Pe=[(N[Se]-H)/(te-H),0]:Pe=[(Ee[2]-H)/(te-H),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(C){C=C||{};for(var M=this.gl,g=C.model||_,P=C.view||_,T=C.projection||_,z=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],O=0;O<3;++O)z[0][O]=Math.max(z[0][O],this.clipBounds[0][O]),z[1][O]=Math.min(z[1][O],this.clipBounds[1][O]);var V={model:g,view:P,projection:T,inverseModel:_.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 j=G[12+O],N=0;N<3;++N)j+=G[4*N+O]*this.lightPosition[N];V.lightPosition[O]=j/Z}if(this.triangleCount>0){var H=this.triShader;H.bind(),H.uniforms=V,this.triangleVAO.bind(),M.drawArrays(M.TRIANGLES,0,this.triangleCount*3),this.triangleVAO.unbind()}},p.drawPick=function(C){C=C||{};for(var M=this.gl,g=C.model||_,P=C.view||_,T=C.projection||_,z=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],O=0;O<3;++O)z[0][O]=Math.max(z[0][O],this.clipBounds[0][O]),z[1][O]=Math.min(z[1][O],this.clipBounds[1][O]);this._model=[].slice.call(g),this._view=[].slice.call(P),this._projection=[].slice.call(T),this._resolution=[M.drawingBufferWidth,M.drawingBufferHeight];var V={model:g,view:P,projection:T,clipBounds:z,tubeScale:this.tubeScale,vectorScale:this.vectorScale,coneScale:this.coneScale,coneOffset:this.coneOffset,pickId:this.pickId/255},G=this.pickShader;G.bind(),G.uniforms=V,this.triangleCount>0&&(this.triangleVAO.bind(),M.drawArrays(M.TRIANGLES,0,this.triangleCount*3),this.triangleVAO.unbind())},p.pick=function(C){if(!C||C.id!==this.pickId)return null;var M=C.value[0]+256*C.value[1]+65536*C.value[2],g=this.cells[M],P=this.positions[g[1]].slice(0,3),T={position:P,dataCoordinate:P,index:Math.floor(g[1]/48)};return this.traceType==="cone"?T.index=Math.floor(g[1]/48):this.traceType==="streamtube"&&(T.intensity=this.intensity[g[1]],T.velocity=this.vectors[g[1]].slice(0,3),T.divergence=this.vectors[g[1]][3],T.index=M),T},p.dispose=function(){this.texture.dispose(),this.triShader.dispose(),this.pickShader.dispose(),this.triangleVAO.dispose(),this.trianglePositions.dispose(),this.triangleVectors.dispose(),this.triangleColors.dispose(),this.triangleUVs.dispose(),this.triangleIds.dispose()};function S(C,M){var g=s(C,M.meshShader.vertex,M.meshShader.fragment,null,M.meshShader.attributes);return g.attributes.position.location=0,g.attributes.color.location=2,g.attributes.uv.location=3,g.attributes.vector.location=4,g}function L(C,M){var g=s(C,M.pickShader.vertex,M.pickShader.fragment,null,M.pickShader.attributes);return g.attributes.position.location=0,g.attributes.id.location=1,g.attributes.vector.location=4,g}function x(C,M,g){var P=g.shaders;arguments.length===1&&(M=C,C=M.gl);var T=S(C,P),z=L(C,P),O=c(C,d(new Uint8Array([255,255,255,255]),[1,1,4]));O.generateMipmap(),O.minFilter=C.LINEAR_MIPMAP_LINEAR,O.magFilter=C.LINEAR;var V=l(C),G=l(C),Z=l(C),j=l(C),N=l(C),H=u(C,[{buffer:V,type:C.FLOAT,size:4},{buffer:N,type:C.UNSIGNED_BYTE,size:4,normalized:!0},{buffer:Z,type:C.FLOAT,size:4},{buffer:j,type:C.FLOAT,size:2},{buffer:G,type:C.FLOAT,size:4}]),te=new b(C,O,T,z,V,G,N,Z,j,H,g.traceType||"cone");return te.update(M),te}i.exports=x},9127:function(i,a,o){"use strict";i.exports=u;var s=o(6204),l=o(5771);function u(c){return l(s(c))}},9131:function(i,a,o){var s=o(5177),l=o(9288);i.exports=u;function u(c,f){return f=f||1,c[0]=Math.random(),c[1]=Math.random(),c[2]=Math.random(),c[3]=Math.random(),s(c,c),l(c,c,f),c}},9165:function(i,a,o){"use strict";i.exports=b;var s=o(2762),l=o(8116),u=o(3436),c=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function f(p,k,E,S){this.gl=p,this.shader=S,this.buffer=k,this.vao=E,this.pixelRatio=1,this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.lineWidth=[1,1,1],this.capSize=[10,10,10],this.lineCount=[0,0,0],this.lineOffset=[0,0,0],this.opacity=1,this.hasAlpha=!1}var h=f.prototype;h.isOpaque=function(){return!this.hasAlpha},h.isTransparent=function(){return this.hasAlpha},h.drawTransparent=h.draw=function(p){var k=this.gl,E=this.shader.uniforms;this.shader.bind();var S=E.view=p.view||c,L=E.projection=p.projection||c;E.model=p.model||c,E.clipBounds=this.clipBounds,E.opacity=this.opacity;var x=S[12],C=S[13],M=S[14],g=S[15],P=p._ortho||!1,T=P?2:1,z=T*this.pixelRatio*(L[3]*x+L[7]*C+L[11]*M+L[15]*g)/k.drawingBufferHeight;this.vao.bind();for(var O=0;O<3;++O)k.lineWidth(this.lineWidth[O]*this.pixelRatio),E.capSize=this.capSize[O]*z,this.lineCount[O]&&k.drawArrays(k.LINES,this.lineOffset[O],this.lineCount[O]);this.vao.unbind()};function d(p,k){for(var E=0;E<3;++E)p[0][E]=Math.min(p[0][E],k[E]),p[1][E]=Math.max(p[1][E],k[E])}var v=function(){for(var p=new Array(3),k=0;k<3;++k){for(var E=[],S=1;S<=2;++S)for(var L=-1;L<=1;L+=2){var x=(S+k)%3,C=[0,0,0];C[x]=L,E.push(C)}p[k]=E}return p}();function _(p,k,E,S){for(var L=v[S],x=0;x<L.length;++x){var C=L[x];p.push(k[0],k[1],k[2],E[0],E[1],E[2],E[3],C[0],C[1],C[2])}return L.length}h.update=function(p){p=p||{},"lineWidth"in p&&(this.lineWidth=p.lineWidth,Array.isArray(this.lineWidth)||(this.lineWidth=[this.lineWidth,this.lineWidth,this.lineWidth])),"capSize"in p&&(this.capSize=p.capSize,Array.isArray(this.capSize)||(this.capSize=[this.capSize,this.capSize,this.capSize])),this.hasAlpha=!1,"opacity"in p&&(this.opacity=+p.opacity,this.opacity<1&&(this.hasAlpha=!0));var k=p.color||[[0,0,0],[0,0,0],[0,0,0]],E=p.position,S=p.error;if(Array.isArray(k[0])||(k=[k,k,k]),E&&S){var L=[],x=E.length,C=0;this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.lineCount=[0,0,0];for(var M=0;M<3;++M){this.lineOffset[M]=C;e:for(var g=0;g<x;++g){for(var P=E[g],T=0;T<3;++T)if(isNaN(P[T])||!isFinite(P[T]))continue e;var z=S[g],O=k[M];if(Array.isArray(O[0])&&(O=k[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),C+=2+_(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),C+=2+_(L,V,O,M)}}}this.lineCount[M]=C-this.lineOffset[M]}this.buffer.update(L)}},h.dispose=function(){this.shader.dispose(),this.buffer.dispose(),this.vao.dispose()};function b(p){var k=p.gl,E=s(k),S=l(k,[{buffer:E,type:k.FLOAT,size:3,offset:0,stride:40},{buffer:E,type:k.FLOAT,size:4,offset:12,stride:40},{buffer:E,type:k.FLOAT,size:3,offset:28,stride:40}]),L=u(k);L.attributes.position.location=0,L.attributes.color.location=1,L.attributes.offset.location=2;var x=new f(k,E,S,L);return x.update(p),x}},9215:function(i,a,o){"use strict";i.exports=d;var s=o(4769),l=o(2478);function u(v,_,b){return Math.min(_,Math.max(v,b))}function c(v,_,b){this.dimension=v.length,this.bounds=[new Array(this.dimension),new Array(this.dimension)];for(var p=0;p<this.dimension;++p)this.bounds[0][p]=-1/0,this.bounds[1][p]=1/0;this._state=v.slice().reverse(),this._velocity=_.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 _=l.gt(this._time,v)-1;_<=0||(this._time.splice(0,_),this._state.splice(0,_*this.dimension),this._velocity.splice(0,_*this.dimension))},f.curve=function(v){var _=this._time,b=_.length,p=l.le(_,v),k=this._scratch[0],E=this._state,S=this._velocity,L=this.dimension,x=this.bounds;if(p<0)for(var C=L-1,M=0;M<L;++M,--C)k[M]=E[C];else if(p>=b-1)for(var C=E.length-1,g=v-_[b-1],M=0;M<L;++M,--C)k[M]=E[C]+g*S[C];else{for(var C=L*(p+1)-1,P=_[p],T=_[p+1],z=T-P||1,O=this._scratch[1],V=this._scratch[2],G=this._scratch[3],Z=this._scratch[4],j=!0,M=0;M<L;++M,--C)O[M]=E[C],G[M]=S[C]*z,V[M]=E[C+L],Z[M]=S[C+L]*z,j=j&&O[M]===V[M]&&G[M]===Z[M]&&G[M]===0;if(j)for(var M=0;M<L;++M)k[M]=O[M];else s(O,G,V,Z,(v-P)/z,k)}for(var N=x[0],H=x[1],M=0;M<L;++M)k[M]=u(N[M],H[M],k[M]);return k},f.dcurve=function(v){var _=this._time,b=_.length,p=l.le(_,v),k=this._scratch[0],E=this._state,S=this._velocity,L=this.dimension;if(p>=b-1)for(var x=E.length-1,C=v-_[b-1],M=0;M<L;++M,--x)k[M]=S[x];else{for(var x=L*(p+1)-1,g=_[p],P=_[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,--x)z[M]=E[x],V[M]=S[x]*T,O[M]=E[x+L],G[M]=S[x+L]*T,Z=Z&&z[M]===O[M]&&V[M]===G[M]&&V[M]===0;if(Z)for(var M=0;M<L;++M)k[M]=0;else{s.derivative(z,V,O,G,(v-g)/T,k);for(var M=0;M<L;++M)k[M]/=T}}return k},f.lastT=function(){var v=this._time;return v[v.length-1]},f.stable=function(){for(var v=this._velocity,_=v.length,b=this.dimension-1;b>=0;--b)if(v[--_])return!1;return!0},f.jump=function(v){var _=this.lastT(),b=this.dimension;if(!(v<_||arguments.length!==b+1)){var p=this._state,k=this._velocity,E=p.length-this.dimension,S=this.bounds,L=S[0],x=S[1];this._time.push(_,v);for(var C=0;C<2;++C)for(var M=0;M<b;++M)p.push(p[E++]),k.push(0);this._time.push(v);for(var M=b;M>0;--M)p.push(u(L[M-1],x[M-1],arguments[M])),k.push(0)}},f.push=function(v){var _=this.lastT(),b=this.dimension;if(!(v<_||arguments.length!==b+1)){var p=this._state,k=this._velocity,E=p.length-this.dimension,S=v-_,L=this.bounds,x=L[0],C=L[1],M=S>1e-6?1/S:0;this._time.push(v);for(var g=b;g>0;--g){var P=u(x[g-1],C[g-1],arguments[g]);p.push(P),k.push((P-p[E++])*M)}}},f.set=function(v){var _=this.dimension;if(!(v<this.lastT()||arguments.length!==_+1)){var b=this._state,p=this._velocity,k=this.bounds,E=k[0],S=k[1];this._time.push(v);for(var L=_;L>0;--L)b.push(u(E[L-1],S[L-1],arguments[L])),p.push(0)}},f.move=function(v){var _=this.lastT(),b=this.dimension;if(!(v<=_||arguments.length!==b+1)){var p=this._state,k=this._velocity,E=p.length-this.dimension,S=this.bounds,L=S[0],x=S[1],C=v-_,M=C>1e-6?1/C:0;this._time.push(v);for(var g=b;g>0;--g){var P=arguments[g];p.push(u(L[g-1],x[g-1],p[E++]+P)),k.push(P*M)}}},f.idle=function(v){var _=this.lastT();if(!(v<_)){var b=this.dimension,p=this._state,k=this._velocity,E=p.length-b,S=this.bounds,L=S[0],x=S[1],C=v-_;this._time.push(v);for(var M=b-1;M>=0;--M)p.push(u(L[M],x[M],p[E]+C*k[E])),k.push(0),E+=1}};function h(v){for(var _=new Array(v),b=0;b<v;++b)_[b]=0;return _}function d(v,_,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 _=="number"){var p=h(v.length);return new c(v,p,+_)}else b=0;case 3:if(v.length!==_.length)throw new Error("state and velocity lengths must match");return new c(v,_,b)}}},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}},9226:function(i){i.exports=a;function a(o,s){return o[0]=Math.ceil(s[0]),o[1]=Math.ceil(s[1]),o[2]=Math.ceil(s[2]),o}},9265:function(i){i.exports=a;function a(o,s){return o[0]===s[0]&&o[1]===s[1]&&o[2]===s[2]}},9288:function(i){i.exports=a;function a(o,s,l){return o[0]=s[0]*l,o[1]=s[1]*l,o[2]=s[2]*l,o[3]=s[3]*l,o}},9346:function(i){"use strict";var a=new Float64Array(4),o=new Float64Array(4),s=new Float64Array(4);function l(u,c,f,h,d){a.length<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 _=0,b=0,p=0,k=0,E=0,S=0,v=0;v<h.length;++v){var L=o[v],x=s[v],C=a[v];_+=L*L,b+=L*x,p+=x*x,k+=C*L,E+=C*x,S+=C*C}var M=Math.abs(_*p-b*b),g=b*E-p*k,P=b*k-_*E,T;if(g+P<=M)if(g<0)P<0&&k<0?(P=0,-k>=_?(g=1,T=_+2*k+S):(g=-k/_,T=k*g+S)):(g=0,E>=0?(P=0,T=S):-E>=p?(P=1,T=p+2*E+S):(P=-E/p,T=E*P+S));else if(P<0)P=0,k>=0?(g=0,T=S):-k>=_?(g=1,T=_+2*k+S):(g=-k/_,T=k*g+S);else{var z=1/M;g*=z,P*=z,T=g*(_*g+b*P+2*k)+P*(b*g+p*P+2*E)+S}else{var O,V,G,Z;g<0?(O=b+k,V=p+E,V>O?(G=V-O,Z=_-2*b+p,G>=Z?(g=1,P=0,T=_+2*k+S):(g=G/Z,P=1-g,T=g*(_*g+b*P+2*k)+P*(b*g+p*P+2*E)+S)):(g=0,V<=0?(P=1,T=p+2*E+S):E>=0?(P=0,T=S):(P=-E/p,T=E*P+S))):P<0?(O=b+E,V=_+k,V>O?(G=V-O,Z=_-2*b+p,G>=Z?(P=1,g=0,T=p+2*E+S):(P=G/Z,g=1-P,T=g*(_*g+b*P+2*k)+P*(b*g+p*P+2*E)+S)):(P=0,V<=0?(g=1,T=_+2*k+S):k>=0?(g=0,T=S):(g=-k/_,T=k*g+S))):(G=p+E-b-k,G<=0?(g=0,P=1,T=p+2*E+S):(Z=_-2*b+p,G>=Z?(g=1,P=0,T=_+2*k+S):(g=G/Z,P=1-g,T=g*(_*g+b*P+2*k)+P*(b*g+p*P+2*E)+S)))}for(var j=1-g-P,v=0;v<h.length;++v)d[v]=j*u[v]+g*c[v]+P*f[v];return T<0?0:T}i.exports=l},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]}},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 _={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}};_.triangles=!0;var b=s(c,_);_.triangles=!1;var p=s(c,_),k,E;if(h&&h!==1){for(k=0;k<b.positions.length;++k)for(E=0;E<b.positions[k].length;++E)b.positions[k][E]/=h;for(k=0;k<p.positions.length;++k)for(E=0;E<p.positions[k].length;++E)p.positions[k][E]/=h}var S=[[1/0,1/0],[-1/0,-1/0]],L=p.positions.length;for(k=0;k<L;++k){var x=p.positions[k];for(E=0;E<2;++E)S[0][E]=Math.min(S[0][E],x[E]),S[1][E]=Math.max(S[1][E],x[E])}return v[c]=[b,p,S]}},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,k=this.gl.getProgramParameter(this.program,this.gl.ACTIVE_ATTRIBUTES),E=this.gl.lastAttribCount;if(k>E)for(p=E;p<k;p++)this.gl.enableVertexAttribArray(p);else if(E>k)for(p=k;p<E;p++)this.gl.disableVertexAttribArray(p);this.gl.lastAttribCount=k,this.gl.useProgram(this.program)},v.dispose=function(){for(var p=this.gl.lastAttribCount,k=0;k<p;k++)this.gl.disableVertexAttribArray(k);this.gl.lastAttribCount=0,this._fref&&this._fref.dispose(),this._vref&&this._vref.dispose(),this.attributes=this.types=this.vertShader=this.fragShader=this.program=this._relink=this._fref=this._vref=null};function _(p,k){return p.name<k.name?-1:1}v.update=function(p,k,E,S){if(!k||arguments.length===1){var L=p;p=L.vertex,k=L.fragment,E=L.uniforms,S=L.attributes}var x=this,C=x.gl,M=x._vref;x._vref=c.shader(C,C.VERTEX_SHADER,p),M&&M.dispose(),x.vertShader=x._vref.shader;var g=this._fref;if(x._fref=c.shader(C,C.FRAGMENT_SHADER,k),g&&g.dispose(),x.fragShader=x._fref.shader,!E||!S){var P=C.createProgram();if(C.attachShader(P,x.fragShader),C.attachShader(P,x.vertShader),C.linkProgram(P),!C.getProgramParameter(P,C.LINK_STATUS)){var T=C.getProgramInfoLog(P);throw new h(T,"Error linking program:"+T)}E=E||f.uniforms(C,P),S=S||f.attributes(C,P),C.deleteProgram(P)}S=S.slice(),S.sort(_);var z=[],O=[],V=[],G;for(G=0;G<S.length;++G){var Z=S[G];if(Z.type.indexOf("mat")>=0){for(var j=Z.type.charAt(Z.type.length-1)|0,N=new Array(j),H=0;H<j;++H)N[H]=V.length,O.push(Z.name+"["+H+"]"),typeof Z.location=="number"?V.push(Z.location+H):Array.isArray(Z.location)&&Z.location.length===j&&typeof Z.location[H]=="number"?V.push(Z.location[H]|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 te=0;for(G=0;G<V.length;++G)if(V[G]<0){for(;V.indexOf(te)>=0;)te+=1;V[G]=te}var oe=new Array(E.length);function _e(){x.program=c.program(C,x._vref,x._fref,O,V);for(var Ee=0;Ee<E.length;++Ee)oe[Ee]=C.getUniformLocation(x.program,E[Ee].name)}_e(),x._relink=_e,x.types={uniforms:u(E),attributes:u(S)},x.attributes=l(C,x,z,V),Object.defineProperty(x,"uniforms",s(C,x,E,oe))};function b(p,k,E,S,L){var x=new d(p);return x.update(k,E,S,L),x}i.exports=b},9499:function(i,a,o){"use strict";i.exports=Fe;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),_=o(9618),b=o(3711),p=o(6760),k=o(7608),E=o(2478),S=o(6199),L=o(990),x=L.createShader,C=L.createContourShader,M=L.createPickShader,g=L.createPickContourShader,P=4*10,T=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],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],Re=(Pe+1)%3,ce=(Pe+2)%3;ge[Re+0]=1,ge[ce+3]=1,ge[Pe+6]=1}})();function V(Pe,ge,Re,ce,Ze){this.position=Pe,this.index=ge,this.uv=Re,this.level=ce,this.dataCoordinate=Ze}var G=256;function Z(Pe,ge,Re,ce,Ze,ut,pt,Zt,st,lt,Gt,Nt,Jt,sr,wr){this.gl=Pe,this.shape=ge,this.bounds=Re,this.objectOffset=wr,this.intensityBounds=[],this._shader=ce,this._pickShader=Ze,this._coordinateBuffer=ut,this._vao=pt,this._colorMap=Zt,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=Jt,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=[_(f.mallocFloat(1024),[0,0]),_(f.mallocFloat(1024),[0,0]),_(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 j=Z.prototype;j.genColormap=function(Pe,ge){var Re=!1,ce=v([h({colormap:Pe,nshades:G,format:"rgba"}).map(function(Ze,ut){var pt=ge?N(ut/255,ge):Ze[3];return pt<1&&(Re=!0),[Ze[0],Ze[1],Ze[2],255*pt]})]);return d.divseq(ce,255),this.hasAlphaScale=Re,ce},j.isTransparent=function(){return this.opacity<1||this.hasAlphaScale},j.isOpaque=function(){return!this.isTransparent()},j.pickSlots=1,j.setPickBase=function(Pe){this.pickId=Pe};function N(Pe,ge){if(!ge||!ge.length)return 1;for(var Re=0;Re<ge.length;++Re){if(ge.length<2)return 1;if(ge[Re][0]===Pe)return ge[Re][1];if(ge[Re][0]>Pe&&Re>0){var ce=(ge[Re][0]-Pe)/(ge[Re][0]-ge[Re-1][0]);return ge[Re][1]*(1-ce)+ce*ge[Re-1][1]}}return 1}var H=[0,0,0],te={showSurface:!1,showContour:!1,projections:[T.slice(),T.slice(),T.slice()],clipBounds:[[[0,0,0],[0,0,0]],[[0,0,0],[0,0,0]],[[0,0,0],[0,0,0]]]};function oe(Pe,ge){var Re,ce,Ze,ut=ge.axes&&ge.axes.lastCubeProps.axis||H,pt=ge.showSurface,Zt=ge.showContour;for(Re=0;Re<3;++Re)for(pt=pt||ge.surfaceProject[Re],ce=0;ce<3;++ce)Zt=Zt||ge.contourProject[Re][ce];for(Re=0;Re<3;++Re){var st=te.projections[Re];for(ce=0;ce<16;++ce)st[ce]=0;for(ce=0;ce<4;++ce)st[5*ce]=1;st[5*Re]=0,st[12+Re]=ge.axesBounds[+(ut[Re]>0)][Re],p(st,Pe.model,st);var lt=te.clipBounds[Re];for(Ze=0;Ze<2;++Ze)for(ce=0;ce<3;++ce)lt[Ze][ce]=Pe.clipBounds[Ze][ce];lt[0][Re]=-1e8,lt[1][Re]=1e8}return te.showSurface=pt,te.showContour=Zt,te}var _e={model:T,view:T,projection:T,inverseModel:T.slice(),lowerBound:[0,0,0],upperBound:[0,0,0],colorMap:0,clipBounds:[[0,0,0],[0,0,0]],height:0,contourTint:0,contourColor:[0,0,0,1],permutation:[1,0,0,0,1,0,0,0,1],zOffset:-1e-4,objectOffset:[0,0,0],kambient:1,kdiffuse:1,kspecular:1,lightPosition:[1e3,1e3,1e3],eyePosition:[0,0,0],roughness:1,fresnel:1,opacity:1,vertexColor:0},Ee=T.slice(),Ce=[1,0,0,0,1,0,0,0,1];function me(Pe,ge){Pe=Pe||{};var Re=this.gl;Re.disable(Re.CULL_FACE),this._colorMap.bind(0);var ce=_e;ce.model=Pe.model||T,ce.view=Pe.view||T,ce.projection=Pe.projection||T,ce.lowerBound=[this.bounds[0][0],this.bounds[0][1],this.colorBounds[0]||this.bounds[0][2]],ce.upperBound=[this.bounds[1][0],this.bounds[1][1],this.colorBounds[1]||this.bounds[1][2]],ce.objectOffset=this.objectOffset,ce.contourColor=this.contourColor[0],ce.inverseModel=k(ce.inverseModel,ce.model);for(var Ze=0;Ze<2;++Ze)for(var ut=ce.clipBounds[Ze],pt=0;pt<3;++pt)ut[pt]=Math.min(Math.max(this.clipBounds[Ze][pt],-1e8),1e8);ce.kambient=this.ambientLight,ce.kdiffuse=this.diffuseLight,ce.kspecular=this.specularLight,ce.roughness=this.roughness,ce.fresnel=this.fresnel,ce.opacity=this.opacity,ce.height=0,ce.permutation=Ce,ce.vertexColor=this.vertexColor;var Zt=Ee;for(p(Zt,ce.view,ce.model),p(Zt,ce.projection,Zt),k(Zt,Zt),Ze=0;Ze<3;++Ze)ce.eyePosition[Ze]=Zt[12+Ze]/Zt[15];var st=Zt[15];for(Ze=0;Ze<3;++Ze)st+=this.lightPosition[Ze]*Zt[4*Ze+3];for(Ze=0;Ze<3;++Ze){var lt=Zt[12+Ze];for(pt=0;pt<3;++pt)lt+=Zt[4*pt+Ze]*this.lightPosition[pt];ce.lightPosition[Ze]=lt/st}var Gt=oe(ce,this);if(Gt.showSurface){for(this._shader.bind(),this._shader.uniforms=ce,this._vao.bind(),this.showSurface&&this._vertexCount&&this._vao.draw(Re.TRIANGLES,this._vertexCount),Ze=0;Ze<3;++Ze)!this.surfaceProject[Ze]||!this.vertexCount||(this._shader.uniforms.model=Gt.projections[Ze],this._shader.uniforms.clipBounds=Gt.clipBounds[Ze],this._vao.draw(Re.TRIANGLES,this._vertexCount));this._vao.unbind()}if(Gt.showContour){var Nt=this._contourShader;ce.kambient=1,ce.kdiffuse=0,ce.kspecular=0,ce.opacity=1,Nt.bind(),Nt.uniforms=ce;var Jt=this._contourVAO;for(Jt.bind(),Ze=0;Ze<3;++Ze)for(Nt.uniforms.permutation=O[Ze],Re.lineWidth(this.contourWidth[Ze]*this.pixelRatio),pt=0;pt<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],Jt.draw(Re.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],Re.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],Jt.draw(Re.LINES,this._contourCounts[pt][sr],this._contourOffsets[pt][sr]))}for(Jt.unbind(),Jt=this._dynamicVAO,Jt.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],Re.lineWidth(this.dynamicWidth[Ze]*this.pixelRatio),Nt.uniforms.contourColor=this.dynamicColor[Ze],Nt.uniforms.contourTint=this.dynamicTint[Ze],Nt.uniforms.height=this.dynamicLevel[Ze],Jt.draw(Re.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],Jt.draw(Re.LINES,this._dynamicCounts[Ze],this._dynamicOffsets[Ze]));Jt.unbind()}}j.draw=function(Pe){return me.call(this,Pe,!1)},j.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]};j.drawPick=function(Pe){Pe=Pe||{};var ge=this.gl;ge.disable(ge.CULL_FACE);var Re=ie;Re.model=Pe.model||T,Re.view=Pe.view||T,Re.projection=Pe.projection||T,Re.shape=this._field[2].shape,Re.pickId=this.pickId/255,Re.lowerBound=this.bounds[0],Re.upperBound=this.bounds[1],Re.objectOffset=this.objectOffset,Re.permutation=Ce;for(var ce=0;ce<2;++ce)for(var Ze=Re.clipBounds[ce],ut=0;ut<3;++ut)Ze[ut]=Math.min(Math.max(this.clipBounds[ce][ut],-1e8),1e8);var pt=oe(Re,this);if(pt.showSurface){for(this._pickShader.bind(),this._pickShader.uniforms=Re,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 Zt=this._contourPickShader;Zt.bind(),Zt.uniforms=Re;var st=this._contourVAO;for(st.bind(),ut=0;ut<3;++ut)for(ge.lineWidth(this.contourWidth[ut]*this.pixelRatio),Zt.uniforms.permutation=O[ut],ce=0;ce<this.contourLevels[ut].length;++ce)this._contourCounts[ut][ce]&&(Zt.uniforms.height=this.contourLevels[ut][ce],st.draw(ge.LINES,this._contourCounts[ut][ce],this._contourOffsets[ut][ce]));for(ce=0;ce<3;++ce)for(Zt.uniforms.model=pt.projections[ce],Zt.uniforms.clipBounds=pt.clipBounds[ce],ut=0;ut<3;++ut)if(this.contourProject[ce][ut]){Zt.uniforms.permutation=O[ut],ge.lineWidth(this.contourWidth[ut]*this.pixelRatio);for(var lt=0;lt<this.contourLevels[ut].length;++lt)this._contourCounts[ut][lt]&&(Zt.uniforms.height=this.contourLevels[ut][lt],st.draw(ge.LINES,this._contourCounts[ut][lt],this._contourOffsets[ut][lt]))}st.unbind()}},j.pick=function(Pe){if(!Pe||Pe.id!==this.pickId)return null;var ge=this._field[2].shape,Re=this._pickResult,ce=ge[0]*(Pe.value[0]+(Pe.value[2]>>4)/16)/255,Ze=Math.floor(ce),ut=ce-Ze,pt=ge[1]*(Pe.value[1]+(Pe.value[2]&15)/16)/255,Zt=Math.floor(pt),st=pt-Zt;Ze+=1,Zt+=1;var lt=Re.position;lt[0]=lt[1]=lt[2]=0;for(var Gt=0;Gt<2;++Gt)for(var Nt=Gt?ut:1-ut,Jt=0;Jt<2;++Jt)for(var sr=Jt?st:1-st,wr=Ze+Gt,cr=Zt+Jt,$e=Nt*sr,St=0;St<3;++St)lt[St]+=this._field[St].get(wr,cr)*$e;for(var Qt=this._pickResult.level,Vt=0;Vt<3;++Vt)if(Qt[Vt]=E.le(this.contourLevels[Vt],lt[Vt]),Qt[Vt]<0)this.contourLevels[Vt].length>0&&(Qt[Vt]=0);else if(Qt[Vt]<this.contourLevels[Vt].length-1){var _t=this.contourLevels[Vt][Qt[Vt]],It=this.contourLevels[Vt][Qt[Vt]+1];Math.abs(_t-lt[Vt])>Math.abs(It-lt[Vt])&&(Qt[Vt]+=1)}for(Re.index[0]=ut<.5?Ze:Ze+1,Re.index[1]=st<.5?Zt:Zt+1,Re.uv[0]=ce/ge[0],Re.uv[1]=pt/ge[1],St=0;St<3;++St)Re.dataCoordinate[St]=this._field[St].get(Re.index[0],Re.index[1]);return Re},j.padField=function(Pe,ge){var Re=ge.shape.slice(),ce=Pe.shape.slice();d.assign(Pe.lo(1,1).hi(Re[0],Re[1]),ge),d.assign(Pe.lo(1).hi(Re[0],1),ge.hi(Re[0],1)),d.assign(Pe.lo(1,ce[1]-1).hi(Re[0],1),ge.lo(0,Re[1]-1).hi(Re[0],1)),d.assign(Pe.lo(0,1).hi(1,Re[1]),ge.hi(1)),d.assign(Pe.lo(ce[0]-1,1).hi(1,Re[1]),ge.lo(Re[0]-1)),Pe.set(0,0,ge.get(0,0)),Pe.set(0,ce[1]-1,ge.get(0,Re[1]-1)),Pe.set(ce[0]-1,0,ge.get(Re[0]-1,0)),Pe.set(ce[0]-1,ce[1]-1,ge.get(Re[0]-1,Re[1]-1))};function Se(Pe,ge){return Array.isArray(Pe)?[ge(Pe[0]),ge(Pe[1]),ge(Pe[2])]:[ge(Pe),ge(Pe),ge(Pe)]}function Le(Pe){return Array.isArray(Pe)?Pe.length===3?[Pe[0],Pe[1],Pe[2],1]:[Pe[0],Pe[1],Pe[2],Pe[3]]:[0,0,0,1]}function Ae(Pe){if(Array.isArray(Pe)){if(Array.isArray(Pe))return[Le(Pe[0]),Le(Pe[1]),Le(Pe[2])];var ge=Le(Pe);return[ge.slice(),ge.slice(),ge.slice()]}}j.update=function(Pe){Pe=Pe||{},this.objectOffset=Pe.objectOffset||this.objectOffset,this.dirty=!0,"contourWidth"in Pe&&(this.contourWidth=Se(Pe.contourWidth,Number)),"showContour"in Pe&&(this.showContour=Se(Pe.showContour,Boolean)),"showSurface"in Pe&&(this.showSurface=!!Pe.showSurface),"contourTint"in Pe&&(this.contourTint=Se(Pe.contourTint,Boolean)),"contourColor"in Pe&&(this.contourColor=Ae(Pe.contourColor)),"contourProject"in Pe&&(this.contourProject=Se(Pe.contourProject,function(yn){return Se(yn,Boolean)})),"surfaceProject"in Pe&&(this.surfaceProject=Pe.surfaceProject),"dynamicColor"in Pe&&(this.dynamicColor=Ae(Pe.dynamicColor)),"dynamicTint"in Pe&&(this.dynamicTint=Se(Pe.dynamicTint,Number)),"dynamicWidth"in Pe&&(this.dynamicWidth=Se(Pe.dynamicWidth,Number)),"opacity"in Pe&&(this.opacity=Pe.opacity),"opacityscale"in Pe&&(this.opacityscale=Pe.opacityscale),"colorBounds"in Pe&&(this.colorBounds=Pe.colorBounds),"vertexColor"in Pe&&(this.vertexColor=Pe.vertexColor?1:0),"colormap"in Pe&&this._colorMap.setPixels(this.genColormap(Pe.colormap,this.opacityscale));var ge=Pe.field||Pe.coords&&Pe.coords[2]||null,Re=!1;if(ge||(this._field[2].shape[0]||this._field[2].shape[2]?ge=this._field[2].lo(1,1).hi(this._field[2].shape[0]-2,this._field[2].shape[1]-2):ge=this._field[2].hi(0,0)),"field"in Pe||"coords"in Pe){var ce=(ge.shape[0]+2)*(ge.shape[1]+2);ce>this._field[2].data.length&&(f.freeFloat(this._field[2].data),this._field[2].data=f.mallocFloat(s.nextPow2(ce))),this._field[2]=_(this._field[2].data,[ge.shape[0]+2,ge.shape[1]+2]),this.padField(this._field[2],ge),this.shape=ge.shape.slice();for(var Ze=this.shape,ut=0;ut<2;++ut)this._field[2].size>this._field[ut].data.length&&(f.freeFloat(this._field[ut].data),this._field[ut].data=f.mallocFloat(this._field[2].size)),this._field[ut]=_(this._field[ut].data,[Ze[0]+2,Ze[1]+2]);if(Pe.coords){var pt=Pe.coords;if(!Array.isArray(pt)||pt.length!==3)throw new Error("gl-surface: invalid coordinates for x/y");for(ut=0;ut<2;++ut){var Zt=pt[ut];for(Jt=0;Jt<2;++Jt)if(Zt.shape[Jt]!==Ze[Jt])throw new Error("gl-surface: coords have incorrect shape");this.padField(this._field[ut],Zt)}}else if(Pe.ticks){var st=Pe.ticks;if(!Array.isArray(st)||st.length!==2)throw new Error("gl-surface: invalid ticks");for(ut=0;ut<2;++ut){var lt=st[ut];if((Array.isArray(lt)||lt.length)&&(lt=_(lt)),lt.shape[0]!==Ze[ut])throw new Error("gl-surface: invalid tick length");var Gt=_(lt.data,Ze);Gt.stride[ut]=lt.stride[0],Gt.stride[ut^1]=0,this.padField(this._field[ut],Gt)}}else{for(ut=0;ut<2;++ut){var Nt=[0,0];Nt[ut]=1,this._field[ut]=_(this._field[ut].data,[Ze[0]+2,Ze[1]+2],Nt,0)}this._field[0].set(0,0,0);for(var Jt=0;Jt<Ze[0];++Jt)this._field[0].set(Jt+1,0,Jt);for(this._field[0].set(Ze[0]+1,0,Ze[0]-1),this._field[1].set(0,0,0),Jt=0;Jt<Ze[1];++Jt)this._field[1].set(0,Jt+1,Jt);this._field[1].set(0,Ze[1]+1,Ze[1]-1)}var sr=this._field,wr=_(f.mallocFloat(sr[2].size*3*2),[3,Ze[0]+2,Ze[1]+2,2]);for(ut=0;ut<3;++ut)S(wr.pick(ut),sr[ut],"mirror");var cr=_(f.mallocFloat(sr[2].size*3),[Ze[0]+2,Ze[1]+2,3]);for(ut=0;ut<Ze[0]+2;++ut)for(Jt=0;Jt<Ze[1]+2;++Jt){var $e=wr.get(0,ut,Jt,0),St=wr.get(0,ut,Jt,1),Qt=wr.get(1,ut,Jt,0),Vt=wr.get(1,ut,Jt,1),_t=wr.get(2,ut,Jt,0),It=wr.get(2,ut,Jt,1),mt=Qt*It-Vt*_t,er=_t*St-It*$e,lr=$e*Vt-St*Qt,Tr=Math.sqrt(mt*mt+er*er+lr*lr);Tr<1e-8?(Tr=Math.max(Math.abs(mt),Math.abs(er),Math.abs(lr)),Tr<1e-8?(lr=1,er=mt=0,Tr=1):Tr=1/Tr):Tr=1/Math.sqrt(Tr),cr.set(ut,Jt,0,mt*Tr),cr.set(ut,Jt,1,er*Tr),cr.set(ut,Jt,2,lr*Tr)}f.free(wr.data);var Lr=[1/0,1/0,1/0],ti=[-1/0,-1/0,-1/0],Br=1/0,Vr=-1/0,dt=(Ze[0]-1)*(Ze[1]-1)*6,Ge=f.mallocFloat(s.nextPow2(10*dt)),Je=0,je=0;for(ut=0;ut<Ze[0]-1;++ut)e:for(Jt=0;Jt<Ze[1]-1;++Jt){for(var tt=0;tt<2;++tt)for(var xt=0;xt<2;++xt)for(var Ie=0;Ie<3;++Ie){var xe=this._field[Ie].get(1+ut+tt,1+Jt+xt);if(isNaN(xe)||!isFinite(xe))continue e}for(Ie=0;Ie<6;++Ie){var ke=ut+z[Ie][0],vt=Jt+z[Ie][1],ir=this._field[0].get(ke+1,vt+1),ar=this._field[1].get(ke+1,vt+1);xe=this._field[2].get(ke+1,vt+1),mt=cr.get(ke+1,vt+1,0),er=cr.get(ke+1,vt+1,1),lr=cr.get(ke+1,vt+1,2),Pe.intensity&&(vr=Pe.intensity.get(ke,vt));var vr=Pe.intensity?Pe.intensity.get(ke,vt):xe+this.objectOffset[2];Ge[Je++]=ke,Ge[Je++]=vt,Ge[Je++]=ir,Ge[Je++]=ar,Ge[Je++]=xe,Ge[Je++]=0,Ge[Je++]=vr,Ge[Je++]=mt,Ge[Je++]=er,Ge[Je++]=lr,Lr[0]=Math.min(Lr[0],ir+this.objectOffset[0]),Lr[1]=Math.min(Lr[1],ar+this.objectOffset[1]),Lr[2]=Math.min(Lr[2],xe+this.objectOffset[2]),Br=Math.min(Br,vr),ti[0]=Math.max(ti[0],ir+this.objectOffset[0]),ti[1]=Math.max(ti[1],ar+this.objectOffset[1]),ti[2]=Math.max(ti[2],xe+this.objectOffset[2]),Vr=Math.max(Vr,vr),je+=1}}for(Pe.intensityBounds&&(Br=+Pe.intensityBounds[0],Vr=+Pe.intensityBounds[1]),ut=6;ut<Je;ut+=10)Ge[ut]=(Ge[ut]-Br)/(Vr-Br);this._vertexCount=je,this._coordinateBuffer.update(Ge.subarray(0,Je)),f.freeFloat(Ge),f.free(cr.data),this.bounds=[Lr,ti],this.intensity=Pe.intensity||this._field[2],(this.intensityBounds[0]!==Br||this.intensityBounds[1]!==Vr)&&(Re=!0),this.intensityBounds=[Br,Vr]}if("levels"in Pe){var ii=Pe.levels;for(Array.isArray(ii[0])?ii=ii.slice():ii=[[],[],ii],ut=0;ut<3;++ut)ii[ut]=ii[ut].slice(),ii[ut].sort(function(yn,Sn){return yn-Sn});for(ut=0;ut<3;++ut)for(Jt=0;Jt<ii[ut].length;++Jt)ii[ut][Jt]-=this.objectOffset[ut];e:for(ut=0;ut<3;++ut){if(ii[ut].length!==this.contourLevels[ut].length){Re=!0;break}for(Jt=0;Jt<ii[ut].length;++Jt)if(ii[ut][Jt]!==this.contourLevels[ut][Jt]){Re=!0;break e}}this.contourLevels=ii}if(Re){sr=this._field,Ze=this.shape;for(var pi=[],$r=0;$r<3;++$r){var di=this.contourLevels[$r],ji=[],In=[],wi=[0,0,0];for(ut=0;ut<di.length;++ut){var On=b(this._field[$r],di[ut]);ji.push(pi.length/5|0),je=0;e:for(Jt=0;Jt<On.cells.length;++Jt){var qn=On.cells[Jt];for(Ie=0;Ie<2;++Ie){var Fn=On.positions[qn[Ie]],ra=Fn[0],la=Math.floor(ra)|0,Ut=ra-la,wt=Fn[1],rr=Math.floor(wt)|0,nr=wt-rr,Er=!1;t:for(var Xr=0;Xr<3;++Xr){wi[Xr]=0;var ri=($r+Xr+1)%3;for(tt=0;tt<2;++tt){var Qr=tt?Ut:1-Ut;for(ke=Math.min(Math.max(la+tt,0),Ze[0])|0,xt=0;xt<2;++xt){var Oi=xt?nr:1-nr;if(vt=Math.min(Math.max(rr+xt,0),Ze[1])|0,Xr<2?xe=this._field[ri].get(ke,vt):xe=(this.intensity.get(ke,vt)-this.intensityBounds[0])/(this.intensityBounds[1]-this.intensityBounds[0]),!isFinite(xe)||isNaN(xe)){Er=!0;break t}var $i=Qr*Oi;wi[Xr]+=$i*xe}}}if(!Er)pi.push(wi[0],wi[1],Fn[0],Fn[1],wi[2]),je+=1;else{if(Ie>0){for(var tn=0;tn<5;++tn)pi.pop();je-=1}continue e}}}In.push(je)}this._contourOffsets[$r]=ji,this._contourCounts[$r]=In}var fn=f.mallocFloat(pi.length);for(ut=0;ut<pi.length;++ut)fn[ut]=pi[ut];this._contourBuffer.update(fn),f.freeFloat(fn)}},j.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)},j.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 Re;for(this.snapToData?Re=Pe.dataCoordinate:Re=Pe.position,ge=0;ge<3;++ge)Re[ge]-=this.objectOffset[ge];if(!((!this.enableDynamic[0]||Re[0]===this.dynamicLevel[0])&&(!this.enableDynamic[1]||Re[1]===this.dynamicLevel[1])&&(!this.enableDynamic[2]||Re[2]===this.dynamicLevel[2]))){for(var ce=0,Ze=this.shape,ut=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]=Re[pt];var Zt=(pt+1)%3,st=(pt+2)%3,lt=this._field[pt],Gt=this._field[Zt],Nt=this._field[st],Jt=b(lt,Re[pt]),sr=Jt.cells,wr=Jt.positions;for(this._dynamicOffsets[pt]=ce,ge=0;ge<sr.length;++ge)for(var cr=sr[ge],$e=0;$e<2;++$e){var St=wr[cr[$e]],Qt=+St[0],Vt=Qt|0,_t=Math.min(Vt+1,Ze[0])|0,It=Qt-Vt,mt=1-It,er=+St[1],lr=er|0,Tr=Math.min(lr+1,Ze[1])|0,Lr=er-lr,ti=1-Lr,Br=mt*ti,Vr=mt*Lr,dt=It*ti,Ge=It*Lr,Je=Br*Gt.get(Vt,lr)+Vr*Gt.get(Vt,Tr)+dt*Gt.get(_t,lr)+Ge*Gt.get(_t,Tr),je=Br*Nt.get(Vt,lr)+Vr*Nt.get(Vt,Tr)+dt*Nt.get(_t,lr)+Ge*Nt.get(_t,Tr);if(isNaN(Je)||isNaN(je)){$e&&(ce-=1);break}ut[2*ce+0]=Je,ut[2*ce+1]=je,ce+=1}this._dynamicCounts[pt]=ce-this._dynamicOffsets[pt]}this._dynamicBuffer.update(ut.subarray(0,2*ce)),f.freeFloat(ut)}};function Fe(Pe){var ge=Pe.gl,Re=x(ge),ce=M(ge),Ze=C(ge),ut=g(ge),pt=l(ge),Zt=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}]),Jt=c(ge,1,G,ge.RGBA,ge.UNSIGNED_BYTE);Jt.minFilter=ge.LINEAR,Jt.magFilter=ge.LINEAR;var sr=new Z(ge,[0,0],[[0,0,0],[0,0,0]],Re,ce,pt,Zt,Jt,Ze,ut,st,lt,Gt,Nt,[0,0,0]),wr={levels:[[],[],[]]};for(var cr in Pe)wr[cr]=Pe[cr];return wr.colormap=wr.colormap||"jet",sr.update(wr),sr}},9507:function(i){i.exports=!0},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),k;for(k=0;k<p.length;++k)p[k]=[Math.abs(b[k]),k];p.sort(u);var E=new Array(p.length);for(k=0;k<E.length;++k)E[k]=p[k][1];return E}var f={T:function(b){function p(E){this.data=E}var k=p.prototype;return k.dtype=b,k.index=function(){return-1},k.size=0,k.dimension=-1,k.shape=k.stride=k.order=[],k.lo=k.hi=k.transpose=k.step=function(){return new p(this.data)},k.get=k.set=function(){},k.pick=function(){return null},function(S){return new p(S)}},0:function(b,p){function k(S,L){this.data=S,this.offset=L}var E=k.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 k(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,x,C,M){return new k(L,M)}},1:function(b,p,k){function E(L,x,C,M){this.data=L,this.shape=[x],this.stride=[C],this.offset=M|0}var S=E.prototype;return S.dtype=b,S.dimension=1,Object.defineProperty(S,"size",{get:function(){return this.shape[0]}}),S.order=[0],S.set=function(x,C){return b==="generic"?this.data.set(this.offset+this.stride[0]*x,C):this.data[this.offset+this.stride[0]*x]=C},S.get=function(x){return b==="generic"?this.data.get(this.offset+this.stride[0]*x):this.data[this.offset+this.stride[0]*x]},S.index=function(x){return this.offset+this.stride[0]*x},S.hi=function(x){return new E(this.data,typeof x!="number"||x<0?this.shape[0]:x|0,this.stride[0],this.offset)},S.lo=function(x){var C=this.offset,M=0,g=this.shape[0],P=this.stride[0];return typeof x=="number"&&x>=0&&(M=x|0,C+=P*M,g-=M),new E(this.data,g,P,C)},S.step=function(x){var C=this.shape[0],M=this.stride[0],g=this.offset,P=0,T=Math.ceil;return typeof x=="number"&&(P=x|0,P<0?(g+=M*(C-1),C=T(-C/P)):C=T(C/P),M*=P),new E(this.data,C,M,g)},S.transpose=function(x){x=x===void 0?0:x|0;var C=this.shape,M=this.stride;return new E(this.data,C[x],M[x],this.offset)},S.pick=function(x){var C=[],M=[],g=this.offset;typeof x=="number"&&x>=0?g=g+this.stride[0]*x|0:(C.push(this.shape[0]),M.push(this.stride[0]));var P=p[C.length+1];return P(this.data,C,M,g)},function(x,C,M,g){return new E(x,C[0],M[0],g)}},2:function(b,p,k){function E(L,x,C,M,g,P){this.data=L,this.shape=[x,C],this.stride=[M,g],this.offset=P|0}var S=E.prototype;return S.dtype=b,S.dimension=2,Object.defineProperty(S,"size",{get:function(){return this.shape[0]*this.shape[1]}}),Object.defineProperty(S,"order",{get:function(){return Math.abs(this.stride[0])>Math.abs(this.stride[1])?[1,0]:[0,1]}}),S.set=function(x,C,M){return b==="generic"?this.data.set(this.offset+this.stride[0]*x+this.stride[1]*C,M):this.data[this.offset+this.stride[0]*x+this.stride[1]*C]=M},S.get=function(x,C){return b==="generic"?this.data.get(this.offset+this.stride[0]*x+this.stride[1]*C):this.data[this.offset+this.stride[0]*x+this.stride[1]*C]},S.index=function(x,C){return this.offset+this.stride[0]*x+this.stride[1]*C},S.hi=function(x,C){return new E(this.data,typeof x!="number"||x<0?this.shape[0]:x|0,typeof C!="number"||C<0?this.shape[1]:C|0,this.stride[0],this.stride[1],this.offset)},S.lo=function(x,C){var M=this.offset,g=0,P=this.shape[0],T=this.shape[1],z=this.stride[0],O=this.stride[1];return typeof x=="number"&&x>=0&&(g=x|0,M+=z*g,P-=g),typeof C=="number"&&C>=0&&(g=C|0,M+=O*g,T-=g),new E(this.data,P,T,z,O,M)},S.step=function(x,C){var M=this.shape[0],g=this.shape[1],P=this.stride[0],T=this.stride[1],z=this.offset,O=0,V=Math.ceil;return typeof x=="number"&&(O=x|0,O<0?(z+=P*(M-1),M=V(-M/O)):M=V(M/O),P*=O),typeof C=="number"&&(O=C|0,O<0?(z+=T*(g-1),g=V(-g/O)):g=V(g/O),T*=O),new E(this.data,M,g,P,T,z)},S.transpose=function(x,C){x=x===void 0?0:x|0,C=C===void 0?1:C|0;var M=this.shape,g=this.stride;return new E(this.data,M[x],M[C],g[x],g[C],this.offset)},S.pick=function(x,C){var M=[],g=[],P=this.offset;typeof x=="number"&&x>=0?P=P+this.stride[0]*x|0:(M.push(this.shape[0]),g.push(this.stride[0])),typeof C=="number"&&C>=0?P=P+this.stride[1]*C|0:(M.push(this.shape[1]),g.push(this.stride[1]));var T=p[M.length+1];return T(this.data,M,g,P)},function(x,C,M,g){return new E(x,C[0],C[1],M[0],M[1],g)}},3:function(b,p,k){function E(L,x,C,M,g,P,T,z){this.data=L,this.shape=[x,C,M],this.stride=[g,P,T],this.offset=z|0}var S=E.prototype;return S.dtype=b,S.dimension=3,Object.defineProperty(S,"size",{get:function(){return this.shape[0]*this.shape[1]*this.shape[2]}}),Object.defineProperty(S,"order",{get:function(){var x=Math.abs(this.stride[0]),C=Math.abs(this.stride[1]),M=Math.abs(this.stride[2]);return x>C?C>M?[2,1,0]:x>M?[1,2,0]:[1,0,2]:x>M?[2,0,1]:M>C?[0,1,2]:[0,2,1]}}),S.set=function(x,C,M,g){return b==="generic"?this.data.set(this.offset+this.stride[0]*x+this.stride[1]*C+this.stride[2]*M,g):this.data[this.offset+this.stride[0]*x+this.stride[1]*C+this.stride[2]*M]=g},S.get=function(x,C,M){return b==="generic"?this.data.get(this.offset+this.stride[0]*x+this.stride[1]*C+this.stride[2]*M):this.data[this.offset+this.stride[0]*x+this.stride[1]*C+this.stride[2]*M]},S.index=function(x,C,M){return this.offset+this.stride[0]*x+this.stride[1]*C+this.stride[2]*M},S.hi=function(x,C,M){return new E(this.data,typeof x!="number"||x<0?this.shape[0]:x|0,typeof C!="number"||C<0?this.shape[1]:C|0,typeof M!="number"||M<0?this.shape[2]:M|0,this.stride[0],this.stride[1],this.stride[2],this.offset)},S.lo=function(x,C,M){var g=this.offset,P=0,T=this.shape[0],z=this.shape[1],O=this.shape[2],V=this.stride[0],G=this.stride[1],Z=this.stride[2];return typeof x=="number"&&x>=0&&(P=x|0,g+=V*P,T-=P),typeof C=="number"&&C>=0&&(P=C|0,g+=G*P,z-=P),typeof M=="number"&&M>=0&&(P=M|0,g+=Z*P,O-=P),new E(this.data,T,z,O,V,G,Z,g)},S.step=function(x,C,M){var g=this.shape[0],P=this.shape[1],T=this.shape[2],z=this.stride[0],O=this.stride[1],V=this.stride[2],G=this.offset,Z=0,j=Math.ceil;return typeof x=="number"&&(Z=x|0,Z<0?(G+=z*(g-1),g=j(-g/Z)):g=j(g/Z),z*=Z),typeof C=="number"&&(Z=C|0,Z<0?(G+=O*(P-1),P=j(-P/Z)):P=j(P/Z),O*=Z),typeof M=="number"&&(Z=M|0,Z<0?(G+=V*(T-1),T=j(-T/Z)):T=j(T/Z),V*=Z),new E(this.data,g,P,T,z,O,V,G)},S.transpose=function(x,C,M){x=x===void 0?0:x|0,C=C===void 0?1:C|0,M=M===void 0?2:M|0;var g=this.shape,P=this.stride;return new E(this.data,g[x],g[C],g[M],P[x],P[C],P[M],this.offset)},S.pick=function(x,C,M){var g=[],P=[],T=this.offset;typeof x=="number"&&x>=0?T=T+this.stride[0]*x|0:(g.push(this.shape[0]),P.push(this.stride[0])),typeof C=="number"&&C>=0?T=T+this.stride[1]*C|0:(g.push(this.shape[1]),P.push(this.stride[1])),typeof M=="number"&&M>=0?T=T+this.stride[2]*M|0:(g.push(this.shape[2]),P.push(this.stride[2]));var z=p[g.length+1];return z(this.data,g,P,T)},function(x,C,M,g){return new E(x,C[0],C[1],C[2],M[0],M[1],M[2],g)}},4:function(b,p,k){function E(L,x,C,M,g,P,T,z,O,V){this.data=L,this.shape=[x,C,M,g],this.stride=[P,T,z,O],this.offset=V|0}var S=E.prototype;return S.dtype=b,S.dimension=4,Object.defineProperty(S,"size",{get:function(){return this.shape[0]*this.shape[1]*this.shape[2]*this.shape[3]}}),Object.defineProperty(S,"order",{get:k}),S.set=function(x,C,M,g,P){return b==="generic"?this.data.set(this.offset+this.stride[0]*x+this.stride[1]*C+this.stride[2]*M+this.stride[3]*g,P):this.data[this.offset+this.stride[0]*x+this.stride[1]*C+this.stride[2]*M+this.stride[3]*g]=P},S.get=function(x,C,M,g){return b==="generic"?this.data.get(this.offset+this.stride[0]*x+this.stride[1]*C+this.stride[2]*M+this.stride[3]*g):this.data[this.offset+this.stride[0]*x+this.stride[1]*C+this.stride[2]*M+this.stride[3]*g]},S.index=function(x,C,M,g){return this.offset+this.stride[0]*x+this.stride[1]*C+this.stride[2]*M+this.stride[3]*g},S.hi=function(x,C,M,g){return new E(this.data,typeof x!="number"||x<0?this.shape[0]:x|0,typeof C!="number"||C<0?this.shape[1]:C|0,typeof M!="number"||M<0?this.shape[2]:M|0,typeof g!="number"||g<0?this.shape[3]:g|0,this.stride[0],this.stride[1],this.stride[2],this.stride[3],this.offset)},S.lo=function(x,C,M,g){var P=this.offset,T=0,z=this.shape[0],O=this.shape[1],V=this.shape[2],G=this.shape[3],Z=this.stride[0],j=this.stride[1],N=this.stride[2],H=this.stride[3];return typeof x=="number"&&x>=0&&(T=x|0,P+=Z*T,z-=T),typeof C=="number"&&C>=0&&(T=C|0,P+=j*T,O-=T),typeof M=="number"&&M>=0&&(T=M|0,P+=N*T,V-=T),typeof g=="number"&&g>=0&&(T=g|0,P+=H*T,G-=T),new E(this.data,z,O,V,G,Z,j,N,H,P)},S.step=function(x,C,M,g){var P=this.shape[0],T=this.shape[1],z=this.shape[2],O=this.shape[3],V=this.stride[0],G=this.stride[1],Z=this.stride[2],j=this.stride[3],N=this.offset,H=0,te=Math.ceil;return typeof x=="number"&&(H=x|0,H<0?(N+=V*(P-1),P=te(-P/H)):P=te(P/H),V*=H),typeof C=="number"&&(H=C|0,H<0?(N+=G*(T-1),T=te(-T/H)):T=te(T/H),G*=H),typeof M=="number"&&(H=M|0,H<0?(N+=Z*(z-1),z=te(-z/H)):z=te(z/H),Z*=H),typeof g=="number"&&(H=g|0,H<0?(N+=j*(O-1),O=te(-O/H)):O=te(O/H),j*=H),new E(this.data,P,T,z,O,V,G,Z,j,N)},S.transpose=function(x,C,M,g){x=x===void 0?0:x|0,C=C===void 0?1:C|0,M=M===void 0?2:M|0,g=g===void 0?3:g|0;var P=this.shape,T=this.stride;return new E(this.data,P[x],P[C],P[M],P[g],T[x],T[C],T[M],T[g],this.offset)},S.pick=function(x,C,M,g){var P=[],T=[],z=this.offset;typeof x=="number"&&x>=0?z=z+this.stride[0]*x|0:(P.push(this.shape[0]),T.push(this.stride[0])),typeof C=="number"&&C>=0?z=z+this.stride[1]*C|0:(P.push(this.shape[1]),T.push(this.stride[1])),typeof M=="number"&&M>=0?z=z+this.stride[2]*M|0:(P.push(this.shape[2]),T.push(this.stride[2])),typeof g=="number"&&g>=0?z=z+this.stride[3]*g|0:(P.push(this.shape[3]),T.push(this.stride[3]));var O=p[P.length+1];return O(this.data,P,T,z)},function(x,C,M,g){return new E(x,C[0],C[1],C[2],C[3],M[0],M[1],M[2],M[3],g)}},5:function(p,k,E){function S(x,C,M,g,P,T,z,O,V,G,Z,j){this.data=x,this.shape=[C,M,g,P,T],this.stride=[z,O,V,G,Z],this.offset=j|0}var L=S.prototype;return L.dtype=p,L.dimension=5,Object.defineProperty(L,"size",{get:function(){return this.shape[0]*this.shape[1]*this.shape[2]*this.shape[3]*this.shape[4]}}),Object.defineProperty(L,"order",{get:E}),L.set=function(C,M,g,P,T,z){return p==="generic"?this.data.set(this.offset+this.stride[0]*C+this.stride[1]*M+this.stride[2]*g+this.stride[3]*P+this.stride[4]*T,z):this.data[this.offset+this.stride[0]*C+this.stride[1]*M+this.stride[2]*g+this.stride[3]*P+this.stride[4]*T]=z},L.get=function(C,M,g,P,T){return p==="generic"?this.data.get(this.offset+this.stride[0]*C+this.stride[1]*M+this.stride[2]*g+this.stride[3]*P+this.stride[4]*T):this.data[this.offset+this.stride[0]*C+this.stride[1]*M+this.stride[2]*g+this.stride[3]*P+this.stride[4]*T]},L.index=function(C,M,g,P,T){return this.offset+this.stride[0]*C+this.stride[1]*M+this.stride[2]*g+this.stride[3]*P+this.stride[4]*T},L.hi=function(C,M,g,P,T){return new S(this.data,typeof C!="number"||C<0?this.shape[0]:C|0,typeof M!="number"||M<0?this.shape[1]:M|0,typeof g!="number"||g<0?this.shape[2]:g|0,typeof P!="number"||P<0?this.shape[3]:P|0,typeof T!="number"||T<0?this.shape[4]:T|0,this.stride[0],this.stride[1],this.stride[2],this.stride[3],this.stride[4],this.offset)},L.lo=function(C,M,g,P,T){var z=this.offset,O=0,V=this.shape[0],G=this.shape[1],Z=this.shape[2],j=this.shape[3],N=this.shape[4],H=this.stride[0],te=this.stride[1],oe=this.stride[2],_e=this.stride[3],Ee=this.stride[4];return typeof C=="number"&&C>=0&&(O=C|0,z+=H*O,V-=O),typeof M=="number"&&M>=0&&(O=M|0,z+=te*O,G-=O),typeof g=="number"&&g>=0&&(O=g|0,z+=oe*O,Z-=O),typeof P=="number"&&P>=0&&(O=P|0,z+=_e*O,j-=O),typeof T=="number"&&T>=0&&(O=T|0,z+=Ee*O,N-=O),new S(this.data,V,G,Z,j,N,H,te,oe,_e,Ee,z)},L.step=function(C,M,g,P,T){var z=this.shape[0],O=this.shape[1],V=this.shape[2],G=this.shape[3],Z=this.shape[4],j=this.stride[0],N=this.stride[1],H=this.stride[2],te=this.stride[3],oe=this.stride[4],_e=this.offset,Ee=0,Ce=Math.ceil;return typeof C=="number"&&(Ee=C|0,Ee<0?(_e+=j*(z-1),z=Ce(-z/Ee)):z=Ce(z/Ee),j*=Ee),typeof M=="number"&&(Ee=M|0,Ee<0?(_e+=N*(O-1),O=Ce(-O/Ee)):O=Ce(O/Ee),N*=Ee),typeof g=="number"&&(Ee=g|0,Ee<0?(_e+=H*(V-1),V=Ce(-V/Ee)):V=Ce(V/Ee),H*=Ee),typeof P=="number"&&(Ee=P|0,Ee<0?(_e+=te*(G-1),G=Ce(-G/Ee)):G=Ce(G/Ee),te*=Ee),typeof T=="number"&&(Ee=T|0,Ee<0?(_e+=oe*(Z-1),Z=Ce(-Z/Ee)):Z=Ce(Z/Ee),oe*=Ee),new S(this.data,z,O,V,G,Z,j,N,H,te,oe,_e)},L.transpose=function(C,M,g,P,T){C=C===void 0?0:C|0,M=M===void 0?1:M|0,g=g===void 0?2:g|0,P=P===void 0?3:P|0,T=T===void 0?4:T|0;var z=this.shape,O=this.stride;return new S(this.data,z[C],z[M],z[g],z[P],z[T],O[C],O[M],O[g],O[P],O[T],this.offset)},L.pick=function(C,M,g,P,T){var z=[],O=[],V=this.offset;typeof C=="number"&&C>=0?V=V+this.stride[0]*C|0:(z.push(this.shape[0]),O.push(this.stride[0])),typeof M=="number"&&M>=0?V=V+this.stride[1]*M|0:(z.push(this.shape[1]),O.push(this.stride[1])),typeof g=="number"&&g>=0?V=V+this.stride[2]*g|0:(z.push(this.shape[2]),O.push(this.stride[2])),typeof P=="number"&&P>=0?V=V+this.stride[3]*P|0:(z.push(this.shape[3]),O.push(this.stride[3])),typeof T=="number"&&T>=0?V=V+this.stride[4]*T|0:(z.push(this.shape[4]),O.push(this.stride[4]));var G=k[z.length+1];return G(this.data,z,O,V)},function(C,M,g,P){return new S(C,M[0],M[1],M[2],M[3],M[4],g[0],g[1],g[2],g[3],g[4],P)}}};function h(b,p){var k=p===-1?"T":String(p),E=f[k];return p===-1?E(b):p===0?E(b,v[b][0]):E(b,v[b],c)}function d(b){if(s(b))return"buffer";if(l)switch(Object.prototype.toString.call(b)){case"[object Float64Array]":return"float64";case"[object Float32Array]":return"float32";case"[object Int8Array]":return"int8";case"[object Int16Array]":return"int16";case"[object Int32Array]":return"int32";case"[object Uint8ClampedArray]":return"uint8_clamped";case"[object Uint8Array]":return"uint8";case"[object Uint16Array]":return"uint16";case"[object Uint32Array]":return"uint32";case"[object BigInt64Array]":return"bigint64";case"[object BigUint64Array]":return"biguint64"}return Array.isArray(b)?"array":"generic"}var v={generic:[],buffer:[],array:[],float32:[],float64:[],int8:[],int16:[],int32:[],uint8_clamped:[],uint8:[],uint16:[],uint32:[],bigint64:[],biguint64:[]};function _(b,p,k,E){if(b===void 0){var g=v.array[0];return g([])}else typeof b=="number"&&(b=[b]);p===void 0&&(p=[b.length]);var S=p.length;if(k===void 0){k=new Array(S);for(var L=S-1,x=1;L>=0;--L)k[L]=x,x*=p[L]}if(E===void 0){E=0;for(var L=0;L<S;++L)k[L]<0&&(E-=(p[L]-1)*k[L])}for(var C=d(b),M=v[C];M.length<=S+1;)M.push(h(C,M.length-1));var g=M[S+1];return g(b,p,k,E)}i.exports=_},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],_=o[8],b=o[9],p=o[10],k=o[11],E=o[12],S=o[13],L=o[14],x=o[15],C=s*h-l*f,M=s*d-u*f,g=s*v-c*f,P=l*d-u*h,T=l*v-c*h,z=u*v-c*d,O=_*S-b*E,V=_*L-p*E,G=_*x-k*E,Z=b*L-p*S,j=b*x-k*S,N=p*x-k*L;return C*N-M*j+g*Z+P*G-T*V+z*O}},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],_=c[1],b=c[2];return Math.abs(f-v)<=s*Math.max(1,Math.abs(f),Math.abs(v))&&Math.abs(h-_)<=s*Math.max(1,Math.abs(h),Math.abs(_))&&Math.abs(d-b)<=s*Math.max(1,Math.abs(d),Math.abs(b))}},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)}},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(k,E,S){return Math.sqrt(Math.pow(k,2)+Math.pow(E,2)+Math.pow(S,2))}function d(k,E,S,L){return Math.sqrt(Math.pow(k,2)+Math.pow(E,2)+Math.pow(S,2)+Math.pow(L,2))}function v(k,E){var S=E[0],L=E[1],x=E[2],C=E[3],M=d(S,L,x,C);M>1e-6?(k[0]=S/M,k[1]=L/M,k[2]=x/M,k[3]=C/M):(k[0]=k[1]=k[2]=0,k[3]=1)}function _(k,E,S){this.radius=s([S]),this.center=s(E),this.rotation=s(k),this.computedRadius=this.radius.curve(0),this.computedCenter=this.center.curve(0),this.computedRotation=this.rotation.curve(0),this.computedUp=[.1,0,0],this.computedEye=[.1,0,0],this.computedMatrix=[.1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],this.recalcMatrix(0)}var b=_.prototype;b.lastT=function(){return Math.max(this.radius.lastT(),this.center.lastT(),this.rotation.lastT())},b.recalcMatrix=function(k){this.radius.curve(k),this.center.curve(k),this.rotation.curve(k);var E=this.computedRotation;v(E,E);var S=this.computedMatrix;u(S,E);var L=this.computedCenter,x=this.computedEye,C=this.computedUp,M=Math.exp(this.computedRadius[0]);x[0]=L[0]+M*S[2],x[1]=L[1]+M*S[6],x[2]=L[2]+M*S[10],C[0]=S[1],C[1]=S[5],C[2]=S[9];for(var g=0;g<3;++g){for(var P=0,T=0;T<3;++T)P+=S[g+4*T]*x[T];S[12+g]=-P}},b.getMatrix=function(k,E){this.recalcMatrix(k);var S=this.computedMatrix;if(E){for(var L=0;L<16;++L)E[L]=S[L];return E}return S},b.idle=function(k){this.center.idle(k),this.radius.idle(k),this.rotation.idle(k)},b.flush=function(k){this.center.flush(k),this.radius.flush(k),this.rotation.flush(k)},b.pan=function(k,E,S,L){E=E||0,S=S||0,L=L||0,this.recalcMatrix(k);var x=this.computedMatrix,C=x[1],M=x[5],g=x[9],P=h(C,M,g);C/=P,M/=P,g/=P;var T=x[0],z=x[4],O=x[8],V=T*C+z*M+O*g;T-=C*V,z-=M*V,O-=g*V;var G=h(T,z,O);T/=G,z/=G,O/=G;var Z=x[2],j=x[6],N=x[10],H=Z*C+j*M+N*g,te=Z*T+j*z+N*O;Z-=H*C+te*T,j-=H*M+te*z,N-=H*g+te*O;var oe=h(Z,j,N);Z/=oe,j/=oe,N/=oe;var _e=T*E+C*S,Ee=z*E+M*S,Ce=O*E+g*S;this.center.move(k,_e,Ee,Ce);var me=Math.exp(this.computedRadius[0]);me=Math.max(1e-4,me+L),this.radius.set(k,Math.log(me))},b.rotate=function(k,E,S,L){this.recalcMatrix(k),E=E||0,S=S||0;var x=this.computedMatrix,C=x[0],M=x[4],g=x[8],P=x[1],T=x[5],z=x[9],O=x[2],V=x[6],G=x[10],Z=E*C+S*P,j=E*M+S*T,N=E*g+S*z,H=-(V*N-G*j),te=-(G*Z-O*N),oe=-(O*j-V*Z),_e=Math.sqrt(Math.max(0,1-Math.pow(H,2)-Math.pow(te,2)-Math.pow(oe,2))),Ee=d(H,te,oe,_e);Ee>1e-6?(H/=Ee,te/=Ee,oe/=Ee,_e/=Ee):(H=te=oe=0,_e=1);var Ce=this.computedRotation,me=Ce[0],ie=Ce[1],Se=Ce[2],Le=Ce[3],Ae=me*_e+Le*H+ie*oe-Se*te,Fe=ie*_e+Le*te+Se*H-me*oe,Pe=Se*_e+Le*oe+me*te-ie*H,ge=Le*_e-me*H-ie*te-Se*oe;if(L){H=O,te=V,oe=G;var Re=Math.sin(L)/h(H,te,oe);H*=Re,te*=Re,oe*=Re,_e=Math.cos(E),Ae=Ae*_e+ge*H+Fe*oe-Pe*te,Fe=Fe*_e+ge*te+Pe*H-Ae*oe,Pe=Pe*_e+ge*oe+Ae*te-Fe*H,ge=ge*_e-Ae*H-Fe*te-Pe*oe}var ce=d(Ae,Fe,Pe,ge);ce>1e-6?(Ae/=ce,Fe/=ce,Pe/=ce,ge/=ce):(Ae=Fe=Pe=0,ge=1),this.rotation.set(k,Ae,Fe,Pe,ge)},b.lookAt=function(k,E,S,L){this.recalcMatrix(k),S=S||this.computedCenter,E=E||this.computedEye,L=L||this.computedUp;var x=this.computedMatrix;l(x,E,S,L);var C=this.computedRotation;f(C,x[0],x[1],x[2],x[4],x[5],x[6],x[8],x[9],x[10]),v(C,C),this.rotation.set(k,C[0],C[1],C[2],C[3]);for(var M=0,g=0;g<3;++g)M+=Math.pow(S[g]-E[g],2);this.radius.set(k,.5*Math.log(Math.max(M,1e-6))),this.center.set(k,S[0],S[1],S[2])},b.translate=function(k,E,S,L){this.center.move(k,E||0,S||0,L||0)},b.setMatrix=function(k,E){var S=this.computedRotation;f(S,E[0],E[1],E[2],E[4],E[5],E[6],E[8],E[9],E[10]),v(S,S),this.rotation.set(k,S[0],S[1],S[2],S[3]);var L=this.computedMatrix;c(L,E);var x=L[15];if(Math.abs(x)>1e-6){var C=L[12]/x,M=L[13]/x,g=L[14]/x;this.recalcMatrix(k);var P=Math.exp(this.computedRadius[0]);this.center.set(k,C-L[2]*P,M-L[6]*P,g-L[10]*P),this.radius.idle(k)}else this.center.idle(k),this.radius.idle(k)},b.setDistance=function(k,E){E>0&&this.radius.set(k,Math.log(E))},b.setDistanceLimits=function(k,E){k>0?k=Math.log(k):k=-1/0,E>0?E=Math.log(E):E=1/0,E=Math.max(E,k),this.radius.bounds[0][0]=k,this.radius.bounds[1][0]=E},b.getDistanceLimits=function(k){var E=this.radius.bounds;return k?(k[0]=Math.exp(E[0][0]),k[1]=Math.exp(E[1][0]),k):[Math.exp(E[0][0]),Math.exp(E[1][0])]},b.toJSON=function(){return this.recalcMatrix(this.lastT()),{center:this.computedCenter.slice(),rotation:this.computedRotation.slice(),distance:Math.log(this.computedRadius[0]),zoomMin:this.radius.bounds[0][0],zoomMax:this.radius.bounds[1][0]}},b.fromJSON=function(k){var E=this.lastT(),S=k.center;S&&this.center.set(E,S[0],S[1],S[2]);var L=k.rotation;L&&this.rotation.set(E,L[0],L[1],L[2],L[3]);var x=k.distance;x&&x>0&&this.radius.set(E,Math.log(x)),this.setDistanceLimits(k.zoomMin,k.zoomMax)};function p(k){k=k||{};var E=k.center||[0,0,0],S=k.rotation||[0,0,0,1],L=k.radius||1;E=[].slice.call(E,0,3),S=[].slice.call(S,0,4),v(S,S);var x=new _(S,E,Math.log(L));return x.setDistanceLimits(k.zoomMin,k.zoomMax),("eye"in k||"up"in k)&&x.lookAt(0,k.eye,k.center,k.up),x}},9994:function(i,a,o){"use strict";var s=o(9618),l=o(8277);i.exports=function(c,f){for(var h=[],d=c,v=1;Array.isArray(d);)h.push(d.length),v*=d.length,d=d[0];return h.length===0?s():(f||(f=s(new Float64Array(v),h)),l(f,c),f)}}},t={};function r(i){var a=t[i];if(a!==void 0)return a.exports;var o=t[i]={id:i,loaded:!1,exports:{}};return e[i].call(o.exports,o,o.exports,r),o.loaded=!0,o.exports}(function(){r.g=function(){if(typeof globalThis=="object")return globalThis;try{return this||new Function("return this")()}catch(i){if(typeof window=="object")return window}}()})(),function(){r.nmd=function(i){return i.paths=[],i.children||(i.children=[]),i}}();var n=r(1964);yPe.exports=n})()});var gX=ye((V0r,_Pe)=>{"use strict";_Pe.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}});var TPe=ye((G0r,wPe)=>{"use strict";var xPe=gX();wPe.exports=QPt;var bPe={red:0,orange:60,yellow:120,green:180,blue:240,purple:300};function QPt(e){var t,r=[],n=1,i;if(typeof e=="string")if(e=e.toLowerCase(),xPe[e])r=xPe[e].slice(),i="rgb";else if(e==="transparent")n=0,i="rgb",r=[0,0,0];else if(/^#[A-Fa-f0-9]+$/.test(e)){var a=e.slice(1),o=a.length,s=o<=4;n=1,s?(r=[parseInt(a[0]+a[0],16),parseInt(a[1]+a[1],16),parseInt(a[2]+a[2],16)],o===4&&(n=parseInt(a[3]+a[3],16)/255)):(r=[parseInt(a[0]+a[1],16),parseInt(a[2]+a[3],16),parseInt(a[4]+a[5],16)],o===8&&(n=parseInt(a[6]+a[7],16)/255)),r[0]||(r[0]=0),r[1]||(r[1]=0),r[2]||(r[2]=0),i="rgb"}else if(t=/^((?:rgb|hs[lvb]|hwb|cmyk?|xy[zy]|gray|lab|lchu?v?|[ly]uv|lms)a?)\s*\(([^\)]*)\)/.exec(e)){var l=t[1],u=l==="rgb",a=l.replace(/a$/,"");i=a;var o=a==="cmyk"?4:a==="gray"?1:3;r=t[2].trim().split(/\s*[,\/]\s*|\s+/).map(function(h,d){if(/%$/.test(h))return d===o?parseFloat(h)/100:a==="rgb"?parseFloat(h)*255/100:parseFloat(h);if(a[d]==="h"){if(/deg$/.test(h))return parseFloat(h);if(bPe[h]!==void 0)return bPe[h]}return parseFloat(h)}),l===a&&r.push(1),n=u||r[o]===void 0?1:r[o],r=r.slice(0,o)}else e.length>10&&/[0-9](?:\s|\/)/.test(e)&&(r=e.match(/([0-9]+)/g).map(function(c){return parseFloat(c)}),i=e.match(/([a-z])/ig).join("").toLowerCase());else isNaN(e)?Array.isArray(e)||e.length?(r=[e[0],e[1],e[2]],i="rgb",n=e.length===4?e[3]:1):e instanceof Object&&(e.r!=null||e.red!=null||e.R!=null?(i="rgb",r=[e.r||e.red||e.R||0,e.g||e.green||e.G||0,e.b||e.blue||e.B||0]):(i="hsl",r=[e.h||e.hue||e.H||0,e.s||e.saturation||e.S||0,e.l||e.lightness||e.L||e.b||e.brightness]),n=e.a||e.alpha||e.opacity||1,e.opacity!=null&&(n/=100)):(i="rgb",r=[e>>>16,(e&65280)>>>8,e&255]);return{space:i,values:r,alpha:n}}});var SPe=ye((H0r,APe)=>{"use strict";var eIt=TPe();APe.exports=function(t){Array.isArray(t)&&t.raw&&(t=String.raw.apply(null,arguments));var r,n,i,a=eIt(t);if(!a.space)return[];var o=[0,0,0],s=a.space[0]==="h"?[360,100,100]:[255,255,255];return r=Array(3),r[0]=Math.min(Math.max(a.values[0],o[0]),s[0]),r[1]=Math.min(Math.max(a.values[1],o[1]),s[1]),r[2]=Math.min(Math.max(a.values[2],o[2]),s[2]),a.space[0]==="h"&&(r=tIt(r)),r.push(Math.min(Math.max(a.alpha,0),1)),r};function tIt(e){var t=e[0]/360,r=e[1]/100,n=e[2]/100,i,a,o,s,l,u=0;if(r===0)return l=n*255,[l,l,l];for(a=n<.5?n*(1+r):n+r-n*r,i=2*n-a,s=[0,0,0];u<3;)o=t+1/3*-(u-1),o<0?o++:o>1&&o--,l=6*o<1?i+(a-i)*6*o:2*o<1?a:3*o<2?i+(a-i)*(2/3-o)*6:i,s[u++]=l*255;return s}});var ZE=ye((j0r,MPe)=>{MPe.exports=rIt;function rIt(e,t,r){return t<r?e<t?t:e>r?r:e:e<r?r:e>t?t:e}});var YD=ye((W0r,EPe)=>{EPe.exports=function(e){switch(e){case"int8":return Int8Array;case"int16":return Int16Array;case"int32":return Int32Array;case"uint8":return Uint8Array;case"uint16":return Uint16Array;case"uint32":return Uint32Array;case"float32":return Float32Array;case"float64":return Float64Array;case"array":return Array;case"uint8_clamped":return Uint8ClampedArray}}});var J_=ye((X0r,kPe)=>{"use strict";var iIt=SPe(),KD=ZE(),nIt=YD();kPe.exports=function(t,r){(r==="float"||!r)&&(r="array"),r==="uint"&&(r="uint8"),r==="uint_clamped"&&(r="uint8_clamped");var n=nIt(r),i=new n(4),a=r!=="uint8"&&r!=="uint8_clamped";return(!t.length||typeof t=="string")&&(t=iIt(t),t[0]/=255,t[1]/=255,t[2]/=255),aIt(t)?(i[0]=t[0],i[1]=t[1],i[2]=t[2],i[3]=t[3]!=null?t[3]:255,a&&(i[0]/=255,i[1]/=255,i[2]/=255,i[3]/=255),i):(a?(i[0]=t[0],i[1]=t[1],i[2]=t[2],i[3]=t[3]!=null?t[3]:1):(i[0]=KD(Math.floor(t[0]*255),0,255),i[1]=KD(Math.floor(t[1]*255),0,255),i[2]=KD(Math.floor(t[2]*255),0,255),i[3]=t[3]==null?255:KD(Math.floor(t[3]*255),0,255)),i)};function aIt(e){return!!(e instanceof Uint8Array||e instanceof Uint8ClampedArray||Array.isArray(e)&&(e[0]>1||e[0]===0)&&(e[1]>1||e[1]===0)&&(e[2]>1||e[2]===0)&&(!e[3]||e[3]>1))}});var Jy=ye((Z0r,CPe)=>{"use strict";var oIt=J_();function sIt(e){return e?oIt(e):[0,0,0,1]}CPe.exports=sIt});var $y=ye((Y0r,zPe)=>{"use strict";var DPe=Eo(),lIt=cd(),JD=J_(),$D=tc(),uIt=Lh().defaultLine,LPe=vv().isArrayOrTypedArray,mX=JD(uIt),FPe=1;function PPe(e,t){var r=e;return r[3]*=t,r}function IPe(e){if(DPe(e))return mX;var t=JD(e);return t.length?t:mX}function RPe(e){return DPe(e)?e:FPe}function cIt(e,t,r){var n=e.color;n&&n._inputArray&&(n=n._inputArray);var i=LPe(n),a=LPe(t),o=$D.extractOpts(e),s=[],l,u,c,f,h;if(o.colorscale!==void 0?l=$D.makeColorScaleFuncFromTrace(e):l=IPe,i?u=function(v,_){return v[_]===void 0?mX:JD(l(v[_]))}:u=IPe,a?c=function(v,_){return v[_]===void 0?FPe:RPe(v[_])}:c=RPe,i||a)for(var d=0;d<r;d++)f=u(n,d),h=c(t,d),s[d]=PPe(f,h);else s=PPe(JD(n),t);return s}function fIt(e){var t=$D.extractOpts(e),r=t.colorscale;return t.reversescale&&(r=$D.flipScale(t.colorscale)),r.map(function(n){var i=n[0],a=lIt(n[1]),o=a.toRgb();return{index:i,rgb:[o.r,o.g,o.b,o.a]}})}zPe.exports={formatColor:cIt,parseColorScale:fIt}});var yX=ye((K0r,OPe)=>{"use strict";OPe.exports={solid:[[],0],dot:[[.5,1],200],dash:[[.5,1],50],longdash:[[.5,1],10],dashdot:[[.5,.625,.875,1],50],longdashdot:[[.5,.7,.8,1],10]}});var QD=ye((J0r,qPe)=>{"use strict";qPe.exports={circle:"\u25CF","circle-open":"\u25CB",square:"\u25A0","square-open":"\u25A1",diamond:"\u25C6","diamond-open":"\u25C7",cross:"+",x:"\u274C"}});var NPe=ye(($0r,BPe)=>{"use strict";var hIt=qa();function _X(e,t,r,n){if(!t||!t.visible)return null;for(var i=hIt.getComponentMethod("errorbars","makeComputeError")(t),a=new Array(e.length),o=0;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 dIt(e){for(var t=0;t<e.length;t++)if(e[t])return e[t].length;return 0}function vIt(e,t,r){var n=[_X(e.x,e.error_x,t[0],r.xaxis),_X(e.y,e.error_y,t[1],r.yaxis),_X(e.z,e.error_z,t[2],r.zaxis)],i=dIt(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}BPe.exports=vIt});var YPe=ye((Q0r,ZPe)=>{"use strict";var pIt=Od().gl_line3d,UPe=Od().gl_scatter3d,gIt=Od().gl_error3d,mIt=Od().gl_mesh3d,yIt=Od().delaunay_triangulate,Qy=Dr(),WPe=Jy(),eF=$y().formatColor,_It=k3(),xX=yX(),xIt=QD(),bIt=ho(),wIt=ip().appendArrayPointValue,TIt=NPe();function XPe(e,t){this.scene=e,this.uid=t,this.linePlot=null,this.scatterPlot=null,this.errorBars=null,this.textMarkers=null,this.delaunayMesh=null,this.color=null,this.mode="",this.dataPoints=[],this.axesBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.textLabels=null,this.data=null}var wX=XPe.prototype;wX.handlePick=function(e){if(e.object&&(e.object===this.linePlot||e.object===this.delaunayMesh||e.object===this.textMarkers||e.object===this.scatterPlot)){var t=e.index=e.data.index;return e.object.highlight&&e.object.highlight(null),this.scatterPlot&&(e.object=this.scatterPlot,this.scatterPlot.highlight(e.data)),e.textLabel="",this.textLabels&&(Qy.isArrayOrTypedArray(this.textLabels)?(this.textLabels[t]||this.textLabels[t]===0)&&(e.textLabel=this.textLabels[t]):e.textLabel=this.textLabels),e.traceCoordinate=[this.data.x[t],this.data.y[t],this.data.z[t]],!0}};function AIt(e,t,r){var n=(r+1)%3,i=(r+2)%3,a=[],o=[],s;for(s=0;s<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=yIt(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 SIt(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]=WPe(a.color),n[i]=a.thickness)}return{capSize:t,color:r,lineWidth:n}}function VPe(e){return e==null?0:e.indexOf("left")>-1?-1:e.indexOf("right")>-1?1:0}function GPe(e){return e==null?0:e.indexOf("top")>-1?-1:e.indexOf("bottom")>-1?1:0}function MIt(e){var t=0,r=0,n=[t,r];if(Array.isArray(e))for(var i=0;i<e.length;i++)n[i]=[t,r],e[i]&&(n[i][0]=VPe(e[i]),n[i][1]=GPe(e[i]));else n[0]=VPe(e),n[1]=GPe(e);return n}function EIt(e,t){return t(e*4)}function kIt(e){return xIt[e]}function bX(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 CIt(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,_=t.ycalendar,b=t.zcalendar,p,k,E,S,L,x;for(L=0;L<d;L++)p=a.d2l(c[L],0,v)*i[0],k=o.d2l(f[L],0,_)*i[1],E=s.d2l(h[L],0,b)*i[2],r[L]=[p,k,E];if(Array.isArray(t.text))x=t.text;else if(Qy.isTypedArray(t.text))x=Array.from(t.text);else if(t.text!==void 0)for(x=new Array(d),L=0;L<d;L++)x[L]=t.text;function C(oe,_e){var Ee=n[oe];return bIt.tickText(Ee,Ee.d2l(_e),!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(oe){return M[oe]}:function(){return M};for(x=new Array(z),L=0;L<z;L++){var V={x:c[L],y:f[L],z:h[L]},G={xLabel:C("xaxis",c[L]),yLabel:C("yaxis",f[L]),zLabel:C("zaxis",h[L])},Z={};wIt(Z,t,L),x[L]=Qy.texttemplateString({data:[Z,V,t._meta],fallback:t.texttemplatefallback,labels:G,locale:P,template:O(L)})}}if(S={position:r,mode:t.mode,text:x},"line"in t&&(S.lineColor=eF(u,1,d),S.lineWidth=u.width,S.lineDashes=u.dash),"marker"in t){var j=_It(t);S.scatterColor=eF(l,1,d),S.scatterSize=bX(l.size,d,EIt,20,j),S.scatterMarker=bX(l.symbol,d,kIt,"\u25CF"),S.scatterLineWidth=l.line.width,S.scatterLineColor=eF(l.line,1,d),S.scatterAngle=0}"textposition"in t&&(S.textOffset=MIt(t.textposition),S.textColor=eF(t.textfont,1,d),S.textSize=bX(t.textfont.size,d,Qy.identity,12),S.textFontFamily=t.textfont.family,S.textFontWeight=t.textfont.weight,S.textFontStyle=t.textfont.style,S.textFontVariant=t.textfont.variant,S.textAngle=0);var N=["x","y","z"];for(S.project=[!1,!1,!1],S.projectScale=[1,1,1],S.projectOpacity=[1,1,1],L=0;L<3;++L){var H=t.projection[N[L]];(S.project[L]=H.show)&&(S.projectOpacity[L]=H.opacity,S.projectScale[L]=H.scale)}S.errorBounds=TIt(t,i,n);var te=SIt([t.error_x,t.error_y,t.error_z]);return S.errorColor=te.color,S.errorLineWidth=te.lineWidth,S.errorCapSize=te.capSize,S.delaunayAxis=t.surfaceaxis,S.delaunayColor=WPe(t.surfacecolor),S}function HPe(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 jPe(e){return Qy.isArrayOrTypedArray(e)?e.length===4&&typeof e[0]=="number"?HPe(e):e.map(HPe):null}wX.update=function(e){var t=this.scene.glplot.gl,r,n,i,a,o=xX.solid;this.data=e;var s=CIt(this.scene,e);"mode"in s&&(this.mode=s.mode),"lineDashes"in s&&s.lineDashes in xX&&(o=xX[s.lineDashes]),this.color=jPe(s.scatterColor)||jPe(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=pIt(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=UPe(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=UPe(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=gIt(i),this.errorBars._trace=this,this.scene.glplot.add(this.errorBars)),s.delaunayAxis>=0){var u=AIt(s.position,s.delaunayColor,s.delaunayAxis);u.opacity=e.opacity,this.delaunayMesh?this.delaunayMesh.update(u):(u.gl=t,this.delaunayMesh=mIt(u),this.delaunayMesh._trace=this,this.scene.glplot.add(this.delaunayMesh))}else this.delaunayMesh&&(this.scene.glplot.remove(this.delaunayMesh),this.delaunayMesh.dispose(),this.delaunayMesh=null)};wX.dispose=function(){this.linePlot&&(this.scene.glplot.remove(this.linePlot),this.linePlot.dispose()),this.scatterPlot&&(this.scene.glplot.remove(this.scatterPlot),this.scatterPlot.dispose()),this.errorBars&&(this.scene.glplot.remove(this.errorBars),this.errorBars.dispose()),this.textMarkers&&(this.scene.glplot.remove(this.textMarkers),this.textMarkers.dispose()),this.delaunayMesh&&(this.scene.glplot.remove(this.delaunayMesh),this.delaunayMesh.dispose())};function LIt(e,t){var r=new XPe(e,t.uid);return r.update(t),r}ZPe.exports=LIt});var EX=ye((egr,QPe)=>{"use strict";var e1=pf(),PIt=ec(),MX=Tu(),TX=df().axisHoverFormat,{hovertemplateAttrs:IIt,texttemplateAttrs:RIt,templatefallbackAttrs:KPe}=Ll(),JPe=Gl(),DIt=yX(),FIt=QD(),Kg=Ao().extendFlat,zIt=mc().overrideAll,$Pe=Z1(),OIt=e1.line,V2=e1.marker,qIt=V2.line,BIt=Kg({width:OIt.width,dash:{valType:"enumerated",values:$Pe(DIt),dflt:"solid"}},MX("line"));function AX(e){return{show:{valType:"boolean",dflt:!1},opacity:{valType:"number",min:0,max:1,dflt:1},scale:{valType:"number",min:0,max:10,dflt:2/3}}}var SX=QPe.exports=zIt({x:e1.x,y:e1.y,z:{valType:"data_array"},text:Kg({},e1.text,{}),texttemplate:RIt(),texttemplatefallback:KPe({editType:"calc"}),hovertext:Kg({},e1.hovertext,{}),hovertemplate:IIt(),hovertemplatefallback:KPe(),xhoverformat:TX("x"),yhoverformat:TX("y"),zhoverformat:TX("z"),mode:Kg({},e1.mode,{dflt:"lines+markers"}),surfaceaxis:{valType:"enumerated",values:[-1,0,1,2],dflt:-1},surfacecolor:{valType:"color"},projection:{x:AX("x"),y:AX("y"),z:AX("z")},connectgaps:e1.connectgaps,line:BIt,marker:Kg({symbol:{valType:"enumerated",values:$Pe(FIt),dflt:"circle",arrayOk:!0},size:Kg({},V2.size,{dflt:8}),sizeref:V2.sizeref,sizemin:V2.sizemin,sizemode:V2.sizemode,opacity:Kg({},V2.opacity,{arrayOk:!1}),colorbar:V2.colorbar,line:Kg({width:Kg({},qIt.width,{arrayOk:!1})},MX("marker.line"))},MX("marker")),textposition:Kg({},e1.textposition,{dflt:"top center"}),textfont:PIt({noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0,editType:"calc",colorEditType:"style",arrayOk:!0,variantValues:["normal","small-caps"]}),opacity:JPe.opacity,hoverinfo:Kg({},JPe.hoverinfo)},"calc","nested");SX.x.editType=SX.y.editType=SX.z.editType="calc+clearAxisTypes"});var rIe=ye((tgr,tIe)=>{"use strict";var eIe=qa(),NIt=Dr(),kX=Ru(),UIt=$p(),VIt=R0(),GIt=D0(),HIt=EX();tIe.exports=function(t,r,n,i){function a(d,v){return NIt.coerce(t,r,HIt,d,v)}var o=jIt(t,r,a,i);if(!o){r.visible=!1;return}a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),a("xhoverformat"),a("yhoverformat"),a("zhoverformat"),a("mode"),kX.hasMarkers(r)&&UIt(t,r,n,i,a,{noSelect:!0,noAngle:!0}),kX.hasLines(r)&&(a("connectgaps"),VIt(t,r,n,i,a)),kX.hasText(r)&&(a("texttemplate"),a("texttemplatefallback"),GIt(t,r,i,a,{noSelect:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0}));var s=(r.line||{}).color,l=(r.marker||{}).color;a("surfaceaxis")>=0&&a("surfacecolor",s||l);for(var u=["x","y","z"],c=0;c<3;++c){var f="projection."+u[c];a(f+".show")&&(a(f+".opacity"),a(f+".scale"))}var h=eIe.getComponentMethod("errorbars","supplyDefaults");h(t,r,s||l||n,{axis:"z"}),h(t,r,s||l||n,{axis:"y",inherit:"z"}),h(t,r,s||l||n,{axis:"x",inherit:"z"})};function jIt(e,t,r,n){var i=0,a=r("x"),o=r("y"),s=r("z"),l=eIe.getComponentMethod("calendars","handleTraceDefaults");return l(e,t,["x","y","z"],n),a&&o&&s&&(i=Math.min(a.length,o.length,s.length),t._length=t._xlength=t._ylength=t._zlength=i),i}});var nIe=ye((rgr,iIe)=>{"use strict";var WIt=km(),XIt=F0();iIe.exports=function(t,r){var n=[{x:!1,y:!1,trace:r,t:{}}];return WIt(n,r),XIt(t,r),n}});var oIe=ye((igr,aIe)=>{aIe.exports=ZIt;function ZIt(e,t){if(typeof e!="string")throw new TypeError("must specify type string");if(t=t||{},typeof document=="undefined"&&!t.canvas)return null;var r=t.canvas||document.createElement("canvas");typeof t.width=="number"&&(r.width=t.width),typeof t.height=="number"&&(r.height=t.height);var n=t,i;try{var a=[e];e.indexOf("webgl")===0&&a.push("experimental-"+e);for(var o=0;o<a.length;o++)if(i=r.getContext(a[o],n),i)return i}catch(s){i=null}return i||null}});var lIe=ye((ngr,sIe)=>{var YIt=oIe();sIe.exports=function(t){return YIt("webgl",t)}});var CX=ye((agr,cIe)=>{"use strict";var uIe=ka(),KIt=function(){};cIe.exports=function(t){for(var r in t)typeof t[r]=="function"&&(t[r]=KIt);t.destroy=function(){t.container.parentNode.removeChild(t.container)};var n=document.createElement("div");n.className="no-webgl",n.style.cursor="pointer",n.style.fontSize="24px",n.style.color=uIe.defaults[0],n.style.position="absolute",n.style.left=n.style.top="0px",n.style.width=n.style.height="100%",n.style["background-color"]=uIe.lightLine,n.style["z-index"]=30;var i=document.createElement("p");return i.textContent="WebGL is not supported by your browser - visit https://get.webgl.org for more info",i.style.position="relative",i.style.top="50%",i.style.left="50%",i.style.height="30%",i.style.width="50%",i.style.margin="-15% 0 0 -25%",n.appendChild(i),t.container.appendChild(n),t.container.style.background="#FFFFFF",t.container.onclick=function(){window.open("https://get.webgl.org")},!1}});var dIe=ye((ogr,hIe)=>{"use strict";var G2=Jy(),JIt=Dr(),$It=["xaxis","yaxis","zaxis"];function fIe(){this.bounds=[[-10,-10,-10],[10,10,10]],this.ticks=[[],[],[]],this.tickEnable=[!0,!0,!0],this.tickFont=["sans-serif","sans-serif","sans-serif"],this.tickSize=[12,12,12],this.tickFontWeight=["normal","normal","normal","normal"],this.tickFontStyle=["normal","normal","normal","normal"],this.tickFontVariant=["normal","normal","normal","normal"],this.tickAngle=[0,0,0],this.tickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.tickPad=[18,18,18],this.labels=["x","y","z"],this.labelEnable=[!0,!0,!0],this.labelFont=["Open Sans","Open Sans","Open Sans"],this.labelSize=[20,20,20],this.labelFontWeight=["normal","normal","normal","normal"],this.labelFontStyle=["normal","normal","normal","normal"],this.labelFontVariant=["normal","normal","normal","normal"],this.labelColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.labelPad=[30,30,30],this.lineEnable=[!0,!0,!0],this.lineMirror=[!1,!1,!1],this.lineWidth=[1,1,1],this.lineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.lineTickEnable=[!0,!0,!0],this.lineTickMirror=[!1,!1,!1],this.lineTickLength=[10,10,10],this.lineTickWidth=[1,1,1],this.lineTickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.gridEnable=[!0,!0,!0],this.gridWidth=[1,1,1],this.gridColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroEnable=[!0,!0,!0],this.zeroLineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroLineWidth=[2,2,2],this.backgroundEnable=[!0,!0,!0],this.backgroundColor=[[.8,.8,.8,.5],[.8,.8,.8,.5],[.8,.8,.8,.5]],this._defaultTickPad=this.tickPad.slice(),this._defaultLabelPad=this.labelPad.slice(),this._defaultLineTickLength=this.lineTickLength.slice()}var QIt=fIe.prototype;QIt.merge=function(e,t){for(var r=this,n=0;n<3;++n){var i=t[$It[n]];if(!i.visible){r.tickEnable[n]=!1,r.labelEnable[n]=!1,r.lineEnable[n]=!1,r.lineTickEnable[n]=!1,r.gridEnable[n]=!1,r.zeroEnable[n]=!1,r.backgroundEnable[n]=!1;continue}r.labels[n]=e._meta?JIt.templateString(i.title.text,e._meta):i.title.text,"font"in i.title&&(i.title.font.color&&(r.labelColor[n]=G2(i.title.font.color)),i.title.font.family&&(r.labelFont[n]=i.title.font.family),i.title.font.size&&(r.labelSize[n]=i.title.font.size),i.title.font.weight&&(r.labelFontWeight[n]=i.title.font.weight),i.title.font.style&&(r.labelFontStyle[n]=i.title.font.style),i.title.font.variant&&(r.labelFontVariant[n]=i.title.font.variant)),"showline"in i&&(r.lineEnable[n]=i.showline),"linecolor"in i&&(r.lineColor[n]=G2(i.linecolor)),"linewidth"in i&&(r.lineWidth[n]=i.linewidth),"showgrid"in i&&(r.gridEnable[n]=i.showgrid),"gridcolor"in i&&(r.gridColor[n]=G2(i.gridcolor)),"gridwidth"in i&&(r.gridWidth[n]=i.gridwidth),i.type==="log"?r.zeroEnable[n]=!1:"zeroline"in i&&(r.zeroEnable[n]=i.zeroline),"zerolinecolor"in i&&(r.zeroLineColor[n]=G2(i.zerolinecolor)),"zerolinewidth"in i&&(r.zeroLineWidth[n]=i.zerolinewidth),"ticks"in i&&i.ticks?r.lineTickEnable[n]=!0:r.lineTickEnable[n]=!1,"ticklen"in i&&(r.lineTickLength[n]=r._defaultLineTickLength[n]=i.ticklen),"tickcolor"in i&&(r.lineTickColor[n]=G2(i.tickcolor)),"tickwidth"in i&&(r.lineTickWidth[n]=i.tickwidth),"tickangle"in i&&(r.tickAngle[n]=i.tickangle==="auto"?-3600:Math.PI*-i.tickangle/180),"showticklabels"in i&&(r.tickEnable[n]=i.showticklabels),"tickfont"in i&&(i.tickfont.color&&(r.tickColor[n]=G2(i.tickfont.color)),i.tickfont.family&&(r.tickFont[n]=i.tickfont.family),i.tickfont.size&&(r.tickSize[n]=i.tickfont.size),i.tickfont.weight&&(r.tickFontWeight[n]=i.tickfont.weight),i.tickfont.style&&(r.tickFontStyle[n]=i.tickfont.style),i.tickfont.variant&&(r.tickFontVariant[n]=i.tickfont.variant)),"mirror"in i?["ticks","all","allticks"].indexOf(i.mirror)!==-1?(r.lineTickMirror[n]=!0,r.lineMirror[n]=!0):i.mirror===!0?(r.lineTickMirror[n]=!1,r.lineMirror[n]=!0):(r.lineTickMirror[n]=!1,r.lineMirror[n]=!1):r.lineMirror[n]=!1,"showbackground"in i&&i.showbackground!==!1?(r.backgroundEnable[n]=!0,r.backgroundColor[n]=G2(i.backgroundcolor)):r.backgroundEnable[n]=!1}};function e8t(e,t){var r=new fIe;return r.merge(e,t),r}hIe.exports=e8t});var gIe=ye((sgr,pIe)=>{"use strict";var t8t=Jy(),r8t=["xaxis","yaxis","zaxis"];function vIe(){this.enabled=[!0,!0,!0],this.colors=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.drawSides=[!0,!0,!0],this.lineWidth=[1,1,1]}var i8t=vIe.prototype;i8t.merge=function(e){for(var t=0;t<3;++t){var r=e[r8t[t]];if(!r.visible){this.enabled[t]=!1,this.drawSides[t]=!1;continue}this.enabled[t]=r.showspikes,this.colors[t]=t8t(r.spikecolor),this.drawSides[t]=r.spikesides,this.lineWidth[t]=r.spikethickness}};function n8t(e){var t=new vIe;return t.merge(e),t}pIe.exports=n8t});var _Ie=ye((lgr,yIe)=>{"use strict";yIe.exports=u8t;var mIe=ho(),a8t=Dr(),o8t=["xaxis","yaxis","zaxis"],s8t=[0,0,0];function l8t(e){for(var t=new Array(3),r=0;r<3;++r){for(var n=e[r],i=new Array(n.length),a=0;a<n.length;++a)i[a]=n[a].x;t[r]=i}return t}function u8t(e){for(var t=e.axesOptions,r=e.glplot.axesPixels,n=e.fullSceneLayout,i=[[],[],[]],a=0;a<3;++a){var o=n[o8t[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||a8t.constrain(o._length/40,4,9);mIe.autoTicks(o,Math.abs(o.range[1]-o.range[0])/l)}for(var u=mIe.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){s8t[a]=.5*(e.glplot.bounds[0][a]+e.glplot.bounds[1][a]);for(var c=0;c<2;++c)t.bounds[c][a]=e.glplot.bounds[c][a]}e.contourLevels=l8t(i)}});var MIe=ye((ugr,SIe)=>{"use strict";var wIe=Od().gl_plot3d,c8t=wIe.createCamera,xIe=wIe.createScene,f8t=lIe(),h8t=RL(),iF=qa(),up=Dr(),rF=up.preserveDrawingBuffer(),nF=ho(),Jg=vf(),d8t=Jy(),v8t=CX(),p8t=UU(),g8t=dIe(),m8t=gIe(),y8t=_Ie(),_8t=Ag().applyAutorangeOptions,YE,tF,TIe=!1;function AIe(e,t){var r=document.createElement("div"),n=e.container;this.graphDiv=e.graphDiv;var i=document.createElementNS("http://www.w3.org/2000/svg","svg");i.style.position="absolute",i.style.top=i.style.left="0px",i.style.width=i.style.height="100%",i.style["z-index"]=20,i.style["pointer-events"]="none",r.appendChild(i),this.svgContainer=i,r.id=e.id,r.style.position="absolute",r.style.top=r.style.left="0px",r.style.width=r.style.height="100%",n.appendChild(r),this.fullLayout=t,this.id=e.id||"scene",this.fullSceneLayout=t[this.id],this.plotArgs=[[],{},{}],this.axesOptions=g8t(t,t[this.id]),this.spikeOptions=m8t(t[this.id]),this.container=r,this.staticMode=!!e.staticPlot,this.pixelRatio=this.pixelRatio||e.plotGlPixelRatio||2,this.dataScale=[1,1,1],this.contourLevels=[[],[],[]],this.convertAnnotations=iF.getComponentMethod("annotations3d","convert"),this.drawAnnotations=iF.getComponentMethod("annotations3d","draw"),this.initializeGLPlot()}var Sv=AIe.prototype;Sv.prepareOptions=function(){var e=this,t={canvas:e.canvas,gl:e.gl,glOptions:{preserveDrawingBuffer:rF,premultipliedAlpha:!0,antialias:!0},container:e.container,axes:e.axesOptions,spikes:e.spikeOptions,pickRadius:10,snapToData:!0,autoScale:!0,autoBounds:!1,cameraObject:e.camera,pixelRatio:e.pixelRatio};if(e.staticMode){if(!tF&&(YE=document.createElement("canvas"),tF=f8t({canvas:YE,preserveDrawingBuffer:!0,premultipliedAlpha:!0,antialias:!0}),!tF))throw new Error("error creating static canvas/context for image server");t.gl=tF,t.canvas=YE}return t};var bIe=!0;Sv.tryCreatePlot=function(){var e=this,t=e.prepareOptions(),r=!0;try{e.glplot=xIe(t)}catch(n){if(e.staticMode||!bIe||rF)r=!1;else{up.warn(["webgl setup failed possibly due to","false preserveDrawingBuffer config.","The mobile/tablet device may not be detected by is-mobile module.","Enabling preserveDrawingBuffer in second attempt to create webgl scene..."].join(" "));try{rF=t.glOptions.preserveDrawingBuffer=!0,e.glplot=xIe(t)}catch(i){rF=t.glOptions.preserveDrawingBuffer=!1,r=!1}}}return bIe=!1,r};Sv.initializeGLCamera=function(){var e=this,t=e.fullSceneLayout.camera,r=t.projection.type==="orthographic";e.camera=c8t(e.container,{center:[t.center.x,t.center.y,t.center.z],eye:[t.eye.x,t.eye.y,t.eye.z],up:[t.up.x,t.up.y,t.up.z],_ortho:r,zoomMin:.01,zoomMax:100,mode:"orbit"})};Sv.initializeGLPlot=function(){var e=this;e.initializeGLCamera();var t=e.tryCreatePlot();if(!t)return v8t(e);e.traces={},e.make4thDimension();var r=e.graphDiv,n=r.layout,i=function(){var o={};return e.isCameraChanged(n)&&(o[e.id+".camera"]=e.getCamera()),e.isAspectChanged(n)&&(o[e.id+".aspectratio"]=e.glplot.getAspectratio(),n[e.id].aspectmode!=="manual"&&(e.fullSceneLayout.aspectmode=n[e.id].aspectmode=o[e.id+".aspectmode"]="manual")),o},a=function(o){if(o.fullSceneLayout.dragmode!==!1){var s=i();o.saveLayout(n),o.graphDiv.emit("plotly_relayout",s)}};return e.glplot.canvas&&(e.glplot.canvas.addEventListener("mouseup",function(){a(e)}),e.glplot.canvas.addEventListener("touchstart",function(){TIe=!0}),e.glplot.canvas.addEventListener("wheel",function(o){if(r._context._scrollZoom.gl3d){if(e.camera._ortho){var s=o.deltaX>o.deltaY?1.1:.9090909090909091,l=e.glplot.getAspectratio();e.glplot.setAspectratio({x:s*l.x,y:s*l.y,z:s*l.z})}a(e)}},h8t?{passive:!1}:!1),e.glplot.canvas.addEventListener("mousemove",function(){if(e.fullSceneLayout.dragmode!==!1&&e.camera.mouseListener.buttons!==0){var o=i();e.graphDiv.emit("plotly_relayouting",o)}}),e.staticMode||e.glplot.canvas.addEventListener("webglcontextlost",function(o){r&&r.emit&&r.emit("plotly_webglcontextlost",{event:o,layer:e.id})},!1)),e.glplot.oncontextloss=function(){e.recoverContext()},e.glplot.onrender=function(){e.render()},!0};Sv.render=function(){var e=this,t=e.graphDiv,r,n=e.svgContainer,i=e.container.getBoundingClientRect();t._fullLayout._calcInverseTransform(t);var a=t._fullLayout._invScaleX,o=t._fullLayout._invScaleY,s=i.width*a,l=i.height*o;n.setAttributeNS(null,"viewBox","0 0 "+s+" "+l),n.setAttributeNS(null,"width",s),n.setAttributeNS(null,"height",l),y8t(e),e.glplot.axes.update(e.axesOptions);for(var u=Object.keys(e.traces),c=null,f=e.glplot.selection,h=0;h<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)),nF.hoverLabelText(O,T,z)}if(c!==null){var v=p8t(e.glplot.cameraParams,f.dataCoordinate);r=c.data;var _=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)},k=Jg.castHoverinfo(_,e.fullLayout,b),E=(k||"").split("+"),S=k&&k==="all";!_.hovertemplate&&!S&&(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,x=[];r.type==="cone"||r.type==="streamtube"?(p.uLabel=d("x",f.traceCoordinate[3],r.uhoverformat),(S||E.indexOf("u")!==-1)&&x.push("u: "+p.uLabel),p.vLabel=d("y",f.traceCoordinate[4],r.vhoverformat),(S||E.indexOf("v")!==-1)&&x.push("v: "+p.vLabel),p.wLabel=d("z",f.traceCoordinate[5],r.whoverformat),(S||E.indexOf("w")!==-1)&&x.push("w: "+p.wLabel),p.normLabel=f.traceCoordinate[6].toPrecision(3),(S||E.indexOf("norm")!==-1)&&x.push("norm: "+p.normLabel),r.type==="streamtube"&&(p.divergenceLabel=f.traceCoordinate[7].toPrecision(3),(S||E.indexOf("divergence")!==-1)&&x.push("divergence: "+p.divergenceLabel)),f.textLabel&&x.push(f.textLabel),L=x.join("<br>")):r.type==="isosurface"||r.type==="volume"?(p.valueLabel=nF.hoverLabelText(e._mockAxis,e._mockAxis.d2l(f.traceCoordinate[3]),r.valuehoverformat),x.push("value: "+p.valueLabel),f.textLabel&&x.push(f.textLabel),L=x.join("<br>")):L=f.textLabel;var C={x:f.traceCoordinate[0],y:f.traceCoordinate[1],z:f.traceCoordinate[2],data:_._input,fullData:_,curveNumber:_.index,pointNumber:b};Jg.appendArrayPointValue(C,_,b),r._module.eventData&&(C=_._module.eventData(C,f,_,{},b));var M={points:[C]};if(e.fullSceneLayout.hovermode){var g=[];Jg.loneHover({trace:_,x:(.5+.5*v[0]/v[3])*s,y:(.5-.5*v[1]/v[3])*l,xLabel:p.xLabel,yLabel:p.yLabel,zLabel:p.zLabel,text:L,name:c.name,color:Jg.castHoverOption(_,b,"bgcolor")||c.color,borderColor:Jg.castHoverOption(_,b,"bordercolor"),fontFamily:Jg.castHoverOption(_,b,"font.family"),fontSize:Jg.castHoverOption(_,b,"font.size"),fontColor:Jg.castHoverOption(_,b,"font.color"),nameLength:Jg.castHoverOption(_,b,"namelength"),textAlign:Jg.castHoverOption(_,b,"align"),hovertemplate:up.castOption(_,b,"hovertemplate"),hovertemplateLabels:up.extendFlat({},C,p),eventData:[C]},{container:n,gd:t,inOut_bbox:g}),C.bbox=g[0]}f.distance<5&&(f.buttons||TIe)?t.emit("plotly_click",M):t.emit("plotly_hover",M),this.oldEventData=M}else Jg.loneUnhover(n),this.oldEventData&&t.emit("plotly_unhover",this.oldEventData),this.oldEventData=void 0;e.drawAnnotations(e)};Sv.recoverContext=function(){var e=this;e.glplot.dispose();var t=function(){if(e.glplot.gl.isContextLost()){requestAnimationFrame(t);return}if(!e.initializeGLPlot()){up.error("Catastrophic and unrecoverable WebGL error. Context lost.");return}e.plot.apply(e,e.plotArgs)};requestAnimationFrame(t)};var KE=["xaxis","yaxis","zaxis"];function x8t(e,t,r){for(var n=e.fullSceneLayout,i=0;i<3;i++){var a=KE[i],o=a.charAt(0),s=n[a],l=t[o],u=t[o+"calendar"],c=t["_"+o+"length"];if(!up.isArrayOrTypedArray(l))r[0][i]=Math.min(r[0][i],0),r[1][i]=Math.max(r[1][i],c-1);else for(var f,h=0;h<(c||l.length);h++)if(up.isArrayOrTypedArray(l[h]))for(var d=0;d<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 b8t(e,t){for(var r=e.fullSceneLayout,n=r.annotations||[],i=0;i<3;i++)for(var a=KE[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))}}}Sv.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(d8t(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)&&x8t(this,i,h);b8t(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 _=[[0,0,0],[0,0,0]],b=[],p={};for(o=0;o<3;++o){l=c[KE[o]],u=l.type,u in p?(p[u].acc*=d[o],p[u].count+=1):p[u]={acc:d[o],count:1};var k;if(l.autorange){_[0][o]=1/0,_[1][o]=-1/0;var E=n.glplot.objects,S=n.fullSceneLayout.annotations||[],L=l._name.charAt(0);for(s=0;s<E.length;s++){var x=E[s],C=x.bounds,M=x._trace.data._pad||0;x.constructor.name==="ErrorBars"&&l._lowerLogErrorBound?_[0][o]=Math.min(_[0][o],l._lowerLogErrorBound):_[0][o]=Math.min(_[0][o],C[0][o]/d[o]-M),_[1][o]=Math.max(_[1][o],C[1][o]/d[o]+M)}for(s=0;s<S.length;s++){var g=S[s];if(g.visible){var P=l.r2l(g[L]);_[0][o]=Math.min(_[0][o],P),_[1][o]=Math.max(_[1][o],P)}}if("rangemode"in l&&l.rangemode==="tozero"&&(_[0][o]=Math.min(_[0][o],0),_[1][o]=Math.max(_[1][o],0)),_[0][o]>_[1][o])_[0][o]=-1,_[1][o]=1;else{var T=_[1][o]-_[0][o];_[0][o]-=T/32,_[1][o]+=T/32}if(k=[_[0][o],_[1][o]],k=_8t(k,l),_[0][o]=k[0],_[1][o]=k[1],l.isReversed()){var z=_[0][o];_[0][o]=_[1][o],_[1][o]=z}}else k=l.range,_[0][o]=l.r2l(k[0]),_[1][o]=l.r2l(k[1]);_[0][o]===_[1][o]&&(_[0][o]-=1,_[1][o]+=1),b[o]=_[1][o]-_[0][o],l.range=[_[0][o],_[1][o]],l.limitRange(),n.glplot.setBounds(o,{min:l.range[0]*d[o],max:l.range[1]*d[o]})}var O,V=c.aspectmode;if(V==="cube")O=[1,1,1];else if(V==="manual"){var G=c.aspectratio;O=[G.x,G.y,G.z]}else if(V==="auto"||V==="data"){var Z=[1,1,1];for(o=0;o<3;++o){l=c[KE[o]],u=l.type;var j=p[u];Z[o]=Math.pow(j.acc,1/j.count)/d[o]}V==="data"||Math.max.apply(null,Z)/Math.min.apply(null,Z)<=4?O=Z:O=[1,1,1]}else throw new Error("scene.js aspectRatio was not one of the enumerated types");c.aspectratio.x=f.aspectratio.x=O[0],c.aspectratio.y=f.aspectratio.y=O[1],c.aspectratio.z=f.aspectratio.z=O[2],n.glplot.setAspectratio(c.aspectratio),n.viewInitial.aspectratio||(n.viewInitial.aspectratio={x:c.aspectratio.x,y:c.aspectratio.y,z:c.aspectratio.z}),n.viewInitial.aspectmode||(n.viewInitial.aspectmode=c.aspectmode);var N=c.domain||null,H=t._size||null;if(N&&H){var te=n.container.style;te.position="absolute",te.left=H.l+N.x[0]*H.w+"px",te.top=H.t+(1-N.y[1])*H.h+"px",te.width=H.w*(N.x[1]-N.x[0])+"px",te.height=H.h*(N.y[1]-N.y[0])+"px"}n.glplot.redraw()}};Sv.destroy=function(){var e=this;e.glplot&&(e.camera.mouseListener.enabled=!1,e.container.removeEventListener("wheel",e.camera.wheelListener),e.camera=null,e.glplot.dispose(),e.container.parentNode.removeChild(e.container),e.glplot=null)};function w8t(e){return[[e.eye.x,e.eye.y,e.eye.z],[e.center.x,e.center.y,e.center.z],[e.up.x,e.up.y,e.up.z]]}function T8t(e){return{up:{x:e.up[0],y:e.up[1],z:e.up[2]},center:{x:e.center[0],y:e.center[1],z:e.center[2]},eye:{x:e.eye[0],y:e.eye[1],z:e.eye[2]},projection:{type:e._ortho===!0?"orthographic":"perspective"}}}Sv.getCamera=function(){var e=this;return e.camera.view.recalcMatrix(e.camera.view.lastT()),T8t(e.camera)};Sv.setViewport=function(e){var t=this,r=e.camera;t.camera.lookAt.apply(this,w8t(r)),t.glplot.setAspectratio(e.aspectratio);var n=r.projection.type==="orthographic",i=t.camera._ortho;n!==i&&(t.glplot.redraw(),t.glplot.clearRGBA(),t.glplot.dispose(),t.initializeGLPlot())};Sv.isCameraChanged=function(e){var t=this,r=t.getCamera(),n=up.nestedProperty(e,t.id+".camera"),i=n.get();function a(u,c,f,h){var d=["up","center","eye"],v=["x","y","z"];return c[d[f]]&&u[d[f]][v[h]]===c[d[f]][v[h]]}var o=!1;if(i===void 0)o=!0;else{for(var s=0;s<3;s++)for(var l=0;l<3;l++)if(!a(r,i,s,l)){o=!0;break}(!i.projection||r.projection&&r.projection.type!==i.projection.type)&&(o=!0)}return o};Sv.isAspectChanged=function(e){var t=this,r=t.glplot.getAspectratio(),n=up.nestedProperty(e,t.id+".aspectratio"),i=n.get();return i===void 0||i.x!==r.x||i.y!==r.y||i.z!==r.z};Sv.saveLayout=function(e){var t=this,r=t.fullLayout,n,i,a,o,s,l,u=t.isCameraChanged(e),c=t.isAspectChanged(e),f=u||c;if(f){var h={};if(u&&(n=t.getCamera(),i=up.nestedProperty(e,t.id+".camera"),a=i.get(),h[t.id+".camera"]=a),c&&(o=t.glplot.getAspectratio(),s=up.nestedProperty(e,t.id+".aspectratio"),l=s.get(),h[t.id+".aspectratio"]=l),iF.call("_storeDirectGUIEdit",e,r._preGUI,h),u){i.set(n);var d=up.nestedProperty(r,t.id+".camera");d.set(n)}if(c){s.set(o);var v=up.nestedProperty(r,t.id+".aspectratio");v.set(o),t.glplot.redraw()}}return f};Sv.updateFx=function(e,t){var r=this,n=r.camera;if(n)if(e==="orbit")n.mode="orbit",n.keyBindingMode="rotate";else if(e==="turntable"){n.up=[0,0,1],n.mode="turntable",n.keyBindingMode="rotate";var i=r.graphDiv,a=i._fullLayout,o=r.fullSceneLayout.camera,s=o.up.x,l=o.up.y,u=o.up.z;if(u/Math.sqrt(s*s+l*l+u*u)<.999){var c=r.id+".camera.up",f={x:0,y:0,z:1},h={};h[c]=f;var d=i.layout;iF.call("_storeDirectGUIEdit",d,a._preGUI,h),o.up=f,up.nestedProperty(d,c).set(f)}}else n.keyBindingMode=e;r.fullSceneLayout.hovermode=t};function A8t(e,t,r){for(var n=0,i=r-1;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 S8t(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)}}Sv.toImage=function(e){var t=this;e||(e="png"),t.staticMode&&t.container.appendChild(YE),t.glplot.redraw();var r=t.glplot.gl,n=r.drawingBufferWidth,i=r.drawingBufferHeight;r.bindFramebuffer(r.FRAMEBUFFER,null);var a=new Uint8Array(n*i*4);r.readPixels(0,0,n,i,r.RGBA,r.UNSIGNED_BYTE,a),A8t(a,n,i),S8t(a,n,i);var o=document.createElement("canvas");o.width=n,o.height=i;var s=o.getContext("2d",{willReadFrequently:!0}),l=s.createImageData(n,i);l.data.set(a),s.putImageData(l,0,0);var u;switch(e){case"jpeg":u=o.toDataURL("image/jpeg");break;case"webp":u=o.toDataURL("image/webp");break;default:u=o.toDataURL("image/png")}return t.staticMode&&t.container.removeChild(YE),u};Sv.setConvert=function(){for(var e=this,t=0;t<3;t++){var r=e.fullSceneLayout[KE[t]];nF.setConvert(r,e.fullLayout),r.setScale=up.noop}};Sv.make4thDimension=function(){var e=this,t=e.graphDiv,r=t._fullLayout;e._mockAxis={type:"linear",showexponent:"all",exponentformat:"B"},nF.setConvert(e._mockAxis,r)};SIe.exports=AIe});var kIe=ye((cgr,EIe)=>{"use strict";EIe.exports={scene:{valType:"subplotid",dflt:"scene",editType:"calc+clearAxisTypes"}}});var PX=ye((fgr,CIe)=>{"use strict";var M8t=ka(),xs=Rd(),LX=Ao().extendFlat,E8t=mc().overrideAll;CIe.exports=E8t({visible:xs.visible,showspikes:{valType:"boolean",dflt:!0},spikesides:{valType:"boolean",dflt:!0},spikethickness:{valType:"number",min:0,dflt:2},spikecolor:{valType:"color",dflt:M8t.defaultLine},showbackground:{valType:"boolean",dflt:!1},backgroundcolor:{valType:"color",dflt:"rgba(204, 204, 204, 0.5)"},showaxeslabels:{valType:"boolean",dflt:!0},color:xs.color,categoryorder:xs.categoryorder,categoryarray:xs.categoryarray,title:{text:xs.title.text,font:xs.title.font},type:LX({},xs.type,{values:["-","linear","log","date","category"]}),autotypenumbers:xs.autotypenumbers,autorange:xs.autorange,autorangeoptions:{minallowed:xs.autorangeoptions.minallowed,maxallowed:xs.autorangeoptions.maxallowed,clipmin:xs.autorangeoptions.clipmin,clipmax:xs.autorangeoptions.clipmax,include:xs.autorangeoptions.include,editType:"plot"},rangemode:xs.rangemode,minallowed:xs.minallowed,maxallowed:xs.maxallowed,range:LX({},xs.range,{items:[{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}}],anim:!1}),tickmode:xs.minor.tickmode,nticks:xs.nticks,tick0:xs.tick0,dtick:xs.dtick,tickvals:xs.tickvals,ticktext:xs.ticktext,ticks:xs.ticks,mirror:xs.mirror,ticklen:xs.ticklen,tickwidth:xs.tickwidth,tickcolor:xs.tickcolor,showticklabels:xs.showticklabels,labelalias:xs.labelalias,tickfont:xs.tickfont,tickangle:xs.tickangle,tickprefix:xs.tickprefix,showtickprefix:xs.showtickprefix,ticksuffix:xs.ticksuffix,showticksuffix:xs.showticksuffix,showexponent:xs.showexponent,exponentformat:xs.exponentformat,minexponent:xs.minexponent,separatethousands:xs.separatethousands,tickformat:xs.tickformat,tickformatstops:xs.tickformatstops,hoverformat:xs.hoverformat,showline:xs.showline,linecolor:xs.linecolor,linewidth:xs.linewidth,showgrid:xs.showgrid,gridcolor:LX({},xs.gridcolor,{dflt:"rgb(204, 204, 204)"}),gridwidth:xs.gridwidth,zeroline:xs.zeroline,zerolinecolor:xs.zerolinecolor,zerolinewidth:xs.zerolinewidth},"plot","from-root")});var FX=ye((hgr,LIe)=>{"use strict";var IX=PX(),k8t=Cc().attributes,RX=Ao().extendFlat,C8t=Dr().counterRegex;function DX(e,t,r){return{x:{valType:"number",dflt:e,editType:"camera"},y:{valType:"number",dflt:t,editType:"camera"},z:{valType:"number",dflt:r,editType:"camera"},editType:"camera"}}LIe.exports={_arrayAttrRegexps:[C8t("scene",".annotations",!0)],bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"plot"},camera:{up:RX(DX(0,0,1),{}),center:RX(DX(0,0,0),{}),eye:RX(DX(1.25,1.25,1.25),{}),projection:{type:{valType:"enumerated",values:["perspective","orthographic"],dflt:"perspective",editType:"calc"},editType:"calc"},editType:"camera"},domain:k8t({name:"scene",editType:"plot"}),aspectmode:{valType:"enumerated",values:["auto","cube","data","manual"],dflt:"auto",editType:"plot",impliedEdits:{"aspectratio.x":void 0,"aspectratio.y":void 0,"aspectratio.z":void 0}},aspectratio:{x:{valType:"number",min:0,editType:"plot",impliedEdits:{"^aspectmode":"manual"}},y:{valType:"number",min:0,editType:"plot",impliedEdits:{"^aspectmode":"manual"}},z:{valType:"number",min:0,editType:"plot",impliedEdits:{"^aspectmode":"manual"}},editType:"plot",impliedEdits:{aspectmode:"manual"}},xaxis:IX,yaxis:IX,zaxis:IX,dragmode:{valType:"enumerated",values:["orbit","turntable","zoom","pan",!1],editType:"plot"},hovermode:{valType:"enumerated",values:["closest",!1],dflt:"closest",editType:"modebar"},uirevision:{valType:"any",editType:"none"},editType:"plot"}});var DIe=ye((dgr,RIe)=>{"use strict";var L8t=cd().mix,PIe=Dr(),P8t=vl(),I8t=PX(),R8t=SU(),D8t=i4(),IIe=["xaxis","yaxis","zaxis"],F8t=100*136/187;RIe.exports=function(t,r,n){var i,a;function o(u,c){return PIe.coerce(i,a,I8t,u,c)}for(var s=0;s<IIe.length;s++){var l=IIe[s];i=t[l]||{},a=P8t.newContainer(r,l),a._id=l[0]+n.scene,a._name=l,R8t(i,a,o,n),D8t(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",L8t(a.color,n.bgColor,F8t).toRgbString()),o("title.text",l[0]),a.setScale=PIe.noop,o("showspikes")&&(o("spikesides"),o("spikethickness"),o("spikecolor",a.color)),o("showaxeslabels"),o("showbackground")&&o("backgroundcolor")}}});var qIe=ye((vgr,OIe)=>{"use strict";var z8t=Dr(),O8t=ka(),q8t=qa(),B8t=k_(),N8t=DIe(),FIe=FX(),U8t=Id().getSubplotData,zIe="gl3d";OIe.exports=function(t,r,n){var i=r._basePlotModules.length>1;function a(o){if(!i){var s=z8t.validate(t[o],FIe[o]);if(s)return t[o]}}B8t(t,r,n,{type:zIe,attributes:FIe,handleDefaults:V8t,fullLayout:r,font:r.font,fullData:n,getDfltFromLayout:a,autotypenumbersDflt:r.autotypenumbers,paper_bgcolor:r.paper_bgcolor,calendar:r.calendar})};function V8t(e,t,r,n){for(var i=r("bgcolor"),a=O8t.combine(i,n.paper_bgcolor),o=["up","center","eye"],s=0;s<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=U8t(n.fullData,zIe,n.id);N8t(e,t,{font:n.font,scene:n.id,data:f,bgColor:a,calendar:n.calendar,autotypenumbersDflt:n.autotypenumbersDflt,fullLayout:n.fullLayout}),q8t.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,_=e.camera.up.z;_!==0&&(!d||!v||!_||_/Math.sqrt(d*d+v*v+_*_)>.999)&&(h="turntable")}else h="turntable";r("dragmode",h),r("hovermode",n.getDfltFromLayout("hovermode"))}});var $_=ye(cp=>{"use strict";var G8t=mc().overrideAll,H8t=B1(),j8t=MIe(),W8t=Id().getSubplotData,X8t=Dr(),Z8t=Wp(),GA="gl3d",zX="scene";cp.name=GA;cp.attr=zX;cp.idRoot=zX;cp.idRegex=cp.attrRegex=X8t.counterRegex("scene");cp.attributes=kIe();cp.layoutAttributes=FX();cp.baseLayoutAttrOverrides=G8t({hoverlabel:H8t.hoverlabel},"plot","nested");cp.supplyLayoutDefaults=qIe();cp.plot=function(t){for(var r=t._fullLayout,n=t._fullData,i=r._subplots[GA],a=0;a<i.length;a++){var o=i[a],s=W8t(n,GA,o),l=r[o],u=l.camera,c=l._scene;c||(c=new j8t({id:o,graphDiv:t,container:t.querySelector(".gl-container"),staticPlot:t._context.staticPlot,plotGlPixelRatio:t._context.plotGlPixelRatio,camera:u},r),l._scene=c),c.viewInitial||(c.viewInitial={up:{x:u.up.x,y:u.up.y,z:u.up.z},eye:{x:u.eye.x,y:u.eye.y,z:u.eye.z},center:{x:u.center.x,y:u.center.y,z:u.center.z}}),c.plot(s,r,t.layout)}};cp.clean=function(e,t,r,n){for(var i=n._subplots[GA]||[],a=0;a<i.length;a++){var o=i[a];!t[o]&&n[o]._scene&&(n[o]._scene.destroy(),n._infolayer&&n._infolayer.selectAll(".annotation-"+o).remove())}};cp.toSVG=function(e){for(var t=e._fullLayout,r=t._subplots[GA],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:Z8t.svg,"xlink:href":l,x:n.l+n.w*o.x[0],y:n.t+n.h*(1-o.y[1]),width:n.w*(o.x[1]-o.x[0]),height:n.h*(o.y[1]-o.y[0]),preserveAspectRatio:"none"}),s.destroy()}};cp.cleanId=function(t){if(t.match(/^scene[0-9]*$/)){var r=t.slice(5);return r==="1"&&(r=""),zX+r}};cp.updateFx=function(e){for(var t=e._fullLayout,r=t._subplots[GA],n=0;n<r.length;n++){var i=t[r[n]]._scene;i.updateFx(t.dragmode,t.hovermode)}}});var NIe=ye((ggr,BIe)=>{"use strict";BIe.exports={plot:YPe(),attributes:EX(),markerSymbols:QD(),supplyDefaults:rIe(),colorbar:[{container:"marker",min:"cmin",max:"cmax"},{container:"line",min:"cmin",max:"cmax"}],calc:nIe(),moduleType:"trace",name:"scatter3d",basePlotModule:$_(),categories:["gl3d","symbols","showLegend","scatter-like"],meta:{}}});var VIe=ye((mgr,UIe)=>{"use strict";UIe.exports=NIe()});var JE=ye((ygr,jIe)=>{"use strict";var GIe=ka(),Y8t=Tu(),OX=df().axisHoverFormat,{hovertemplateAttrs:K8t,templatefallbackAttrs:J8t}=Ll(),HIe=Gl(),qX=Ao().extendFlat,$8t=mc().overrideAll;function BX(e){return{valType:"boolean",dflt:!1}}function NX(e){return{show:{valType:"boolean",dflt:!1},start:{valType:"number",dflt:null,editType:"plot"},end:{valType:"number",dflt:null,editType:"plot"},size:{valType:"number",dflt:null,min:0,editType:"plot"},project:{x:BX("x"),y:BX("y"),z:BX("z")},color:{valType:"color",dflt:GIe.defaultLine},usecolormap:{valType:"boolean",dflt:!1},width:{valType:"number",min:1,max:16,dflt:2},highlight:{valType:"boolean",dflt:!0},highlightcolor:{valType:"color",dflt:GIe.defaultLine},highlightwidth:{valType:"number",min:1,max:16,dflt:2}}}var UX=jIe.exports=$8t(qX({z:{valType:"data_array"},x:{valType:"data_array"},y:{valType:"data_array"},text:{valType:"string",dflt:"",arrayOk:!0},hovertext:{valType:"string",dflt:"",arrayOk:!0},hovertemplate:K8t(),hovertemplatefallback:J8t(),xhoverformat:OX("x"),yhoverformat:OX("y"),zhoverformat:OX("z"),connectgaps:{valType:"boolean",dflt:!1,editType:"calc"},surfacecolor:{valType:"data_array"}},Y8t("",{colorAttr:"z or surfacecolor",showScaleDflt:!0,autoColorDflt:!1,editTypeOverride:"calc"}),{contours:{x:NX("x"),y:NX("y"),z:NX("z")},hidesurface:{valType:"boolean",dflt:!1},lightposition:{x:{valType:"number",min:-1e5,max:1e5,dflt:10},y:{valType:"number",min:-1e5,max:1e5,dflt:1e4},z:{valType:"number",min:-1e5,max:1e5,dflt:0}},lighting:{ambient:{valType:"number",min:0,max:1,dflt:.8},diffuse:{valType:"number",min:0,max:1,dflt:.8},specular:{valType:"number",min:0,max:2,dflt:.05,description:"Represents the level that incident rays are reflected in a single direction, causing shine."},roughness:{valType:"number",min:0,max:1,dflt:.5,description:"Alters specular reflection; the rougher the surface, the wider and less contrasty the shine."},fresnel:{valType:"number",min:0,max:5,dflt:.2}},opacity:{valType:"number",min:0,max:1,dflt:1},opacityscale:{valType:"any",editType:"calc"},hoverinfo:qX({},HIe.hoverinfo),showlegend:qX({},HIe.showlegend,{dflt:!1})}),"calc","nested");UX.x.editType=UX.y.editType=UX.z.editType="calc+clearAxisTypes"});var GX=ye((_gr,ZIe)=>{"use strict";var Q8t=qa(),WIe=Dr(),eRt=Qh(),tRt=JE(),VX=.1;function rRt(e,t){for(var r=[],n=32,i=0;i<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 iRt(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 nRt(e,t,r,n){var i,a;function o(b,p){return WIe.coerce(e,t,tRt,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)&&WIe.isArrayOrTypedArray(s[0])?u.length:u[0].length,t._ylength=u.length;var c=Q8t.getComponentMethod("calendars","handleTraceDefaults");c(e,t,["x","y","z"],n),o("text"),o("hovertext"),o("hovertemplate"),o("hovertemplatefallback"),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"),_=o(d+".highlight");if(v||_)for(a=0;a<3;++a)o(d+".project."+h[a]);v&&(o(d+".color"),o(d+".width"),o(d+".usecolormap")),_&&(o(d+".highlightcolor"),o(d+".highlightwidth")),o(d+".start"),o(d+".end"),o(d+".size")}eRt(e,t,n,o,{prefix:"",cLetter:"c"}),XIe(e,t,n,o),t._length=null}function XIe(e,t,r,n){var i=n("opacityscale");i==="max"?t.opacityscale=[[0,VX],[1,1]]:i==="min"?t.opacityscale=[[0,1],[1,VX]]:i==="extremes"?t.opacityscale=rRt(1,VX):iRt(i)||(t.opacityscale=void 0)}ZIe.exports={supplyDefaults:nRt,opacityscaleDefaults:XIe}});var JIe=ye((xgr,KIe)=>{"use strict";var YIe=gv();KIe.exports=function(t,r){r.surfacecolor?YIe(t,r,{vals:r.surfacecolor,containerStr:"",cLetter:"c"}):YIe(t,r,{vals:r.z,containerStr:"",cLetter:"c"})}});var i8e=ye((bgr,r8e)=>{"use strict";var aRt=Od().gl_surface3d,HA=Od().ndarray,oRt=Od().ndarray_linear_interpolate.d2,sRt=o8(),lRt=s8(),$E=Dr().isArrayOrTypedArray,uRt=$y().parseColorScale,$Ie=Jy(),cRt=tc().extractOpts;function e8e(e,t,r){this.scene=e,this.uid=r,this.surface=t,this.data=null,this.showContour=[!1,!1,!1],this.contourStart=[null,null,null],this.contourEnd=[null,null,null],this.contourSize=[0,0,0],this.minValues=[1/0,1/0,1/0],this.maxValues=[-1/0,-1/0,-1/0],this.dataScaleX=1,this.dataScaleY=1,this.refineData=!0,this.objectOffset=[0,0,0]}var $g=e8e.prototype;$g.getXat=function(e,t,r,n){var i=$E(this.data.x)?$E(this.data.x[0])?this.data.x[t][e]:this.data.x[e]:e;return r===void 0?i:n.d2l(i,0,r)};$g.getYat=function(e,t,r,n){var i=$E(this.data.y)?$E(this.data.y[0])?this.data.y[t][e]:this.data.y[t]:t;return r===void 0?i:n.d2l(i,0,r)};$g.getZat=function(e,t,r,n){var i=this.data.z[t][e];return i===null&&this.data.connectgaps&&this.data._interpolatedZ&&(i=this.data._interpolatedZ[t][e]),r===void 0?i:n.d2l(i,0,r)};$g.handlePick=function(e){if(e.object===this.surface){var t=(e.data.index[0]-1)/this.dataScaleX-1,r=(e.data.index[1]-1)/this.dataScaleY-1,n=Math.max(Math.min(Math.round(t),this.data.z[0].length-1),0),i=Math.max(Math.min(Math.round(r),this.data._ylength-1),0);e.index=[n,i],e.traceCoordinate=[this.getXat(n,i),this.getYat(n,i),this.getZat(n,i)],e.dataCoordinate=[this.getXat(n,i,this.data.xcalendar,this.scene.fullSceneLayout.xaxis),this.getYat(n,i,this.data.ycalendar,this.scene.fullSceneLayout.yaxis),this.getZat(n,i,this.data.zcalendar,this.scene.fullSceneLayout.zaxis)];for(var a=0;a<3;a++){var o=e.dataCoordinate[a];o!=null&&(e.dataCoordinate[a]*=this.scene.dataScale[a])}var s=this.data.hovertext||this.data.text;return $E(s)&&s[i]&&s[i][n]!==void 0?e.textLabel=s[i][n]:s?e.textLabel=s:e.textLabel="",e.data.dataCoordinate=e.dataCoordinate.slice(),this.surface.highlight(e.data),this.scene.glplot.spikes.position=e.dataCoordinate,!0}};function fRt(e){var t=e[0].rgb,r=e[e.length-1].rgb;return t[0]===r[0]&&t[1]===r[1]&&t[2]===r[2]&&t[3]===r[3]}var jA=[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997,1009,1013,1019,1021,1031,1033,1039,1049,1051,1061,1063,1069,1087,1091,1093,1097,1103,1109,1117,1123,1129,1151,1153,1163,1171,1181,1187,1193,1201,1213,1217,1223,1229,1231,1237,1249,1259,1277,1279,1283,1289,1291,1297,1301,1303,1307,1319,1321,1327,1361,1367,1373,1381,1399,1409,1423,1427,1429,1433,1439,1447,1451,1453,1459,1471,1481,1483,1487,1489,1493,1499,1511,1523,1531,1543,1549,1553,1559,1567,1571,1579,1583,1597,1601,1607,1609,1613,1619,1621,1627,1637,1657,1663,1667,1669,1693,1697,1699,1709,1721,1723,1733,1741,1747,1753,1759,1777,1783,1787,1789,1801,1811,1823,1831,1847,1861,1867,1871,1873,1877,1879,1889,1901,1907,1913,1931,1933,1949,1951,1973,1979,1987,1993,1997,1999,2003,2011,2017,2027,2029,2039,2053,2063,2069,2081,2083,2087,2089,2099,2111,2113,2129,2131,2137,2141,2143,2153,2161,2179,2203,2207,2213,2221,2237,2239,2243,2251,2267,2269,2273,2281,2287,2293,2297,2309,2311,2333,2339,2341,2347,2351,2357,2371,2377,2381,2383,2389,2393,2399,2411,2417,2423,2437,2441,2447,2459,2467,2473,2477,2503,2521,2531,2539,2543,2549,2551,2557,2579,2591,2593,2609,2617,2621,2633,2647,2657,2659,2663,2671,2677,2683,2687,2689,2693,2699,2707,2711,2713,2719,2729,2731,2741,2749,2753,2767,2777,2789,2791,2797,2801,2803,2819,2833,2837,2843,2851,2857,2861,2879,2887,2897,2903,2909,2917,2927,2939,2953,2957,2963,2969,2971,2999];function hRt(e,t){if(e<t)return 0;for(var r=0;Math.floor(e%t)===0;)e/=t,r++;return r}function HX(e){for(var t=[],r=0;r<jA.length;r++){var n=jA[r];t.push(hRt(e,n))}return t}function dRt(e){for(var t=HX(e),r=e,n=0;n<jA.length;n++)if(t[n]>0){r=jA[n];break}return r}function vRt(e,t){if(!(e<1||t<1)){for(var r=HX(e),n=HX(t),i=1,a=0;a<jA.length;a++)i*=Math.pow(jA[a],Math.max(r[a],n[a]));return i}}function pRt(e){if(e.length!==0){for(var t=1,r=0;r<e.length;r++)t=vRt(t,e[r]);return t}}$g.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};$g.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 t8e=[1,2,4,6,12,24,36,48,60,120,180,240,360,720,840,1260],QIe=t8e[9],aF=t8e[13];$g.estimateScale=function(e,t){for(var r=t===0?this.calcXnums(e):this.calcYnums(e),n=1+pRt(r);n<QIe;)n*=2;for(;n>aF;)n--,n/=dRt(n),n++,n<QIe&&(n=aF);var i=Math.round(n/e);return i>1?i:1};function gRt(e,t,r){var n=r[8]+r[2]*t[0]+r[5]*t[1];return e[0]=(r[6]+r[0]*t[0]+r[3]*t[1])/n,e[1]=(r[7]+r[1]*t[0]+r[4]*t[1])/n,e}function mRt(e,t,r){return yRt(e,t,gRt,r),e}function yRt(e,t,r,n){for(var i=[0,0],a=e.shape[0],o=e.shape[1],s=0;s<a;s++)for(var l=0;l<o;l++)r(i,[s,l],n),e.set(s,l,oRt(t,i[0],i[1]));return e}$g.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=HA(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=HA(new Float32Array(a*o),[a,o]);mRt(h,u,c),e[f]=h}};function _Rt(e,t){for(var r=!1,n=0;n<e.length;n++)if(t===e[n]){r=!0;break}r===!1&&e.push(t)}$g.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],_Rt(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})}};$g.update=function(e){var t=this.scene,r=t.fullSceneLayout,n=this.surface,i=uRt(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=lRt(d[2]),sRt(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=[HA(new Float32Array(o*s),[o,s]),HA(new Float32Array(o*s),[o,s]),HA(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 _={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=cRt(e);if(_.intensityBounds=[b.min,b.max],e.surfacecolor){var p=HA(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 _.intensityBounds[0]*=a[2],_.intensityBounds[1]*=a[2];(aF<v[0].shape[0]||aF<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&&(_.intensity=v.pop());var k=[!0,!0,!0],E=["x","y","z"];for(u=0;u<3;++u){var S=e.contours[E[u]];k[u]=S.highlight,_.showContour[u]=S.show||S.highlight,_.showContour[u]&&(_.contourProject[u]=[S.project.x,S.project.y,S.project.z],S.show?(this.showContour[u]=!0,_.levels[u]=l[u],n.highlightColor[u]=_.contourColor[u]=$Ie(S.color),S.usecolormap?n.highlightTint[u]=_.contourTint[u]=0:n.highlightTint[u]=_.contourTint[u]=1,_.contourWidth[u]=S.width,this.contourStart[u]=S.start,this.contourEnd[u]=S.end,this.contourSize[u]=S.size):(this.showContour[u]=!1,this.contourStart[u]=null,this.contourEnd[u]=null,this.contourSize[u]=0),S.highlight&&(_.dynamicColor[u]=$Ie(S.highlightcolor),_.dynamicWidth[u]=S.highlightwidth))}fRt(i)&&(_.vertexColor=!0),_.objectOffset=this.objectOffset,_.coords=v,n.update(_),n.visible=e.visible,n.enableDynamic=k,n.enableHighlight=k,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])};$g.dispose=function(){this.scene.glplot.remove(this.surface),this.surface.dispose()};function xRt(e,t){var r=e.glplot.gl,n=aRt({gl:r}),i=new e8e(e,n,t.uid);return n._trace=i,i.update(t),e.glplot.add(n),i}r8e.exports=xRt});var a8e=ye((wgr,n8e)=>{"use strict";n8e.exports={attributes:JE(),supplyDefaults:GX().supplyDefaults,colorbar:{min:"cmin",max:"cmax"},calc:JIe(),plot:i8e(),moduleType:"trace",name:"surface",basePlotModule:$_(),categories:["gl3d","2dMap","showLegend"],meta:{}}});var s8e=ye((Tgr,o8e)=>{"use strict";o8e.exports=a8e()});var WA=ye((Agr,u8e)=>{"use strict";var bRt=Tu(),jX=df().axisHoverFormat,{hovertemplateAttrs:wRt,templatefallbackAttrs:TRt}=Ll(),Q_=JE(),l8e=Gl(),ex=Ao().extendFlat;u8e.exports=ex({x:{valType:"data_array",editType:"calc+clearAxisTypes"},y:{valType:"data_array",editType:"calc+clearAxisTypes"},z:{valType:"data_array",editType:"calc+clearAxisTypes"},i:{valType:"data_array",editType:"calc"},j:{valType:"data_array",editType:"calc"},k:{valType:"data_array",editType:"calc"},text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertemplate:wRt({editType:"calc"}),hovertemplatefallback:TRt({editType:"calc"}),xhoverformat:jX("x"),yhoverformat:jX("y"),zhoverformat:jX("z"),delaunayaxis:{valType:"enumerated",values:["x","y","z"],dflt:"z",editType:"calc"},alphahull:{valType:"number",dflt:-1,editType:"calc"},intensity:{valType:"data_array",editType:"calc"},intensitymode:{valType:"enumerated",values:["vertex","cell"],dflt:"vertex",editType:"calc"},color:{valType:"color",editType:"calc"},vertexcolor:{valType:"data_array",editType:"calc"},facecolor:{valType:"data_array",editType:"calc"}},bRt("",{colorAttr:"`intensity`",showScaleDflt:!0,editTypeOverride:"calc"}),{opacity:Q_.opacity,flatshading:{valType:"boolean",dflt:!1,editType:"calc"},contour:{show:ex({},Q_.contours.x.show,{}),color:Q_.contours.x.color,width:Q_.contours.x.width,editType:"calc"},lightposition:{x:ex({},Q_.lightposition.x,{dflt:1e5}),y:ex({},Q_.lightposition.y,{dflt:1e5}),z:ex({},Q_.lightposition.z,{dflt:0}),editType:"calc"},lighting:ex({vertexnormalsepsilon:{valType:"number",min:0,max:1,dflt:1e-12,editType:"calc",description:"Epsilon for vertex normals calculation avoids math issues arising from degenerate geometry."},facenormalsepsilon:{valType:"number",min:0,max:1,dflt:1e-6,editType:"calc",description:"Epsilon for face normals calculation avoids math issues arising from degenerate geometry."},editType:"calc"},Q_.lighting),hoverinfo:ex({},l8e.hoverinfo,{editType:"calc"}),showlegend:ex({},l8e.showlegend,{dflt:!1})})});var sF=ye((Sgr,f8e)=>{"use strict";var ARt=Tu(),oF=df().axisHoverFormat,{hovertemplateAttrs:SRt,templatefallbackAttrs:MRt}=Ll(),QE=WA(),c8e=Gl(),WX=Ao().extendFlat,ERt=mc().overrideAll;function XX(e){return{show:{valType:"boolean",dflt:!1},locations:{valType:"data_array",dflt:[]},fill:{valType:"number",min:0,max:1,dflt:1}}}function ZX(e){return{show:{valType:"boolean",dflt:!0},fill:{valType:"number",min:0,max:1,dflt:1}}}var XA=f8e.exports=ERt(WX({x:{valType:"data_array"},y:{valType:"data_array"},z:{valType:"data_array"},value:{valType:"data_array"},isomin:{valType:"number"},isomax:{valType:"number"},surface:{show:{valType:"boolean",dflt:!0},count:{valType:"integer",dflt:2,min:1},fill:{valType:"number",min:0,max:1,dflt:1},pattern:{valType:"flaglist",flags:["A","B","C","D","E"],extras:["all","odd","even"],dflt:"all"}},spaceframe:{show:{valType:"boolean",dflt:!1},fill:{valType:"number",min:0,max:1,dflt:.15}},slices:{x:XX("x"),y:XX("y"),z:XX("z")},caps:{x:ZX("x"),y:ZX("y"),z:ZX("z")},text:{valType:"string",dflt:"",arrayOk:!0},hovertext:{valType:"string",dflt:"",arrayOk:!0},hovertemplate:SRt(),hovertemplatefallback:MRt(),xhoverformat:oF("x"),yhoverformat:oF("y"),zhoverformat:oF("z"),valuehoverformat:oF("value",1),showlegend:WX({},c8e.showlegend,{dflt:!1})},ARt("",{colorAttr:"`value`",showScaleDflt:!0,editTypeOverride:"calc"}),{opacity:QE.opacity,lightposition:QE.lightposition,lighting:QE.lighting,flatshading:QE.flatshading,contour:QE.contour,hoverinfo:WX({},c8e.hoverinfo)}),"calc","nested");XA.flatshading.dflt=!0;XA.lighting.facenormalsepsilon.dflt=0;XA.x.editType=XA.y.editType=XA.z.editType=XA.value.editType="calc+clearAxisTypes"});var YX=ye((Mgr,d8e)=>{"use strict";var kRt=Dr(),CRt=qa(),LRt=sF(),PRt=Qh();function IRt(e,t,r,n){function i(a,o){return kRt.coerce(e,t,LRt,a,o)}h8e(e,t,r,n,i)}function h8e(e,t,r,n,i){var a=i("isomin"),o=i("isomax");o!=null&&a!==void 0&&a!==null&&a>o&&(t.isomin=null,t.isomax=null);var s=i("x"),l=i("y"),u=i("z"),c=i("value");if(!s||!s.length||!l||!l.length||!u||!u.length||!c||!c.length){t.visible=!1;return}var f=CRt.getComponentMethod("calendars","handleTraceDefaults");f(e,t,["x","y","z"],n),i("valuehoverformat"),["x","y","z"].forEach(function(_){i(_+"hoverformat");var b="caps."+_,p=i(b+".show");p&&i(b+".fill");var k="slices."+_,E=i(k+".show");E&&(i(k+".fill"),i(k+".locations"))});var h=i("spaceframe.show");h&&i("spaceframe.fill");var d=i("surface.show");d&&(i("surface.count"),i("surface.fill"),i("surface.pattern"));var v=i("contour.show");v&&(i("contour.color"),i("contour.width")),["text","hovertext","hovertemplate","lighting.ambient","lighting.diffuse","lighting.specular","lighting.roughness","lighting.fresnel","lighting.vertexnormalsepsilon","lighting.facenormalsepsilon","lightposition.x","lightposition.y","lightposition.z","flatshading","opacity"].forEach(function(_){i(_)}),PRt(e,t,n,i,{prefix:"",cLetter:"c"}),t._length=null}d8e.exports={supplyDefaults:IRt,supplyIsoDefaults:h8e}});var lF=ye((Egr,p8e)=>{"use strict";var JX=Dr(),RRt=gv();function DRt(e,t){t._len=Math.min(t.u.length,t.v.length,t.w.length,t.x.length,t.y.length,t.z.length),t._u=jm(t.u,t._len),t._v=jm(t.v,t._len),t._w=jm(t.w,t._len),t._x=jm(t.x,t._len),t._y=jm(t.y,t._len),t._z=jm(t.z,t._len);var r=v8e(t);t._gridFill=r.fill,t._Xs=r.Xs,t._Ys=r.Ys,t._Zs=r.Zs,t._len=r.len;var n=0,i,a,o;t.starts&&(i=jm(t.starts.x||[]),a=jm(t.starts.y||[]),o=jm(t.starts.z||[]),n=Math.min(i.length,a.length,o.length)),t._startsX=i||[],t._startsY=a||[],t._startsZ=o||[];var s=0,l=1/0,u;for(u=0;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(RRt(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 _=a[u];r.yMax=Math.max(r.yMax,_),r.yMin=Math.min(r.yMin,_);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 v8e(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="",_,b,p,k,E,S,L,x,C;for(i&&(k=t[0],S=r[0],x=n[0]),i>1&&(E=t[i-1],L=r[i-1],C=n[i-1]),a=0;a<i;a++)l=Math.max(l,t[a]),u=Math.min(u,t[a]),c=Math.max(c,r[a]),f=Math.min(f,r[a]),h=Math.max(h,n[a]),d=Math.min(d,n[a]),!_&&t[a]!==k&&(_=!0,v+="x"),!b&&r[a]!==S&&(b=!0,v+="y"),!p&&n[a]!==x&&(p=!0,v+="z");_||(v+="x"),b||(v+="y"),p||(v+="z");var M=KX(e._x),g=KX(e._y),P=KX(e._z);v=v.replace("x",(k>E?"-":"+")+"x"),v=v.replace("y",(S>L?"-":"+")+"y"),v=v.replace("z",(x>C?"-":"+")+"z");var T=function(){i=0,M=[],g=[],P=[]};(!i||i<M.length*g.length*P.length)&&T();var z=function(Fe){return Fe==="x"?t:Fe==="y"?r:n},O=function(Fe){return Fe==="x"?M:Fe==="y"?g:P},V=function(Fe){return Fe[i-1]<Fe[0]?-1:1},G=z(v[1]),Z=z(v[3]),j=z(v[5]),N=O(v[1]).length,H=O(v[3]).length,te=O(v[5]).length,oe=!1,_e=function(Fe,Pe,ge){return N*(H*Fe+Pe)+ge},Ee=V(z(v[1])),Ce=V(z(v[3])),me=V(z(v[5]));for(a=0;a<te-1;a++){for(o=0;o<H-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]*Ee<G[Se]*Ee)||!(Z[ie]*Ce<Z[Le]*Ce)||!(j[ie]*me<j[Ae]*me))&&(oe=!0),oe)break}if(oe)break}if(oe)break}return oe&&(JX.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 KX(e){return JX.distinctVals(e).vals}function jm(e,t){if(t===void 0&&(t=e.length),JX.isTypedArray(e))return e.subarray(0,t);for(var r=[],n=0;n<t;n++)r[n]=+e[n];return r}p8e.exports={calc:DRt,filter:jm,processGrid:v8e}});var $X=ye((kgr,g8e)=>{"use strict";var FRt=gv(),zRt=lF().processGrid,uF=lF().filter;g8e.exports=function(t,r){r._len=Math.min(r.x.length,r.y.length,r.z.length,r.value.length),r._x=uF(r.x,r._len),r._y=uF(r.y,r._len),r._z=uF(r.z,r._len),r._value=uF(r.value,r._len);var n=zRt(r);r._gridFill=n.fill,r._Xs=n.Xs,r._Ys=n.Ys,r._Zs=n.Zs,r._len=n.len;for(var i=1/0,a=-1/0,o=0;o<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,FRt(t,r,{vals:[r._vMin,r._vMax],containerStr:"",cLetter:"c"})}});var ZA=ye((Cgr,m8e)=>{"use strict";m8e.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 cF=ye((Lgr,b8e)=>{"use strict";var ORt=Od().gl_mesh3d,qRt=$y().parseColorScale,BRt=Dr().isArrayOrTypedArray,NRt=Jy(),URt=tc().extractOpts,y8e=ZA(),ek=function(e,t){for(var r=t.length-1;r>0;r--){var n=Math.min(t[r],t[r-1]),i=Math.max(t[r],t[r-1]);if(i>n&&n<e&&e<=i)return{id:r,distRatio:(i-e)/(i-n)}}return{id:0,distRatio:0}};function _8e(e,t,r){this.scene=e,this.uid=r,this.mesh=t,this.name="",this.data=null,this.showContour=!1}var QX=_8e.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=ek(r,this.data._Xs).id,l=ek(n,this.data._Ys).id,u=ek(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 BRt(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=x8e(e);function n(l,u,c,f){return u.map(function(h){return l.d2l(h,0,f)*c})}var i=y8e(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=y8e(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:NRt(e.contour.color).slice(0,3),contourWidth:e.contour.width,useFacetNormals:e.flatshading},s=URt(e);o.vertexIntensity=e._meshIntensity,o.vertexIntensityBounds=[s.min,s.max],o.colormap=qRt(e),this.mesh.update(o)};QX.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()};var VRt=["xyz","xzy","yxz","yzx","zxy","zyx"];function x8e(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,_=h.length,b=VRt.indexOf(e._gridFill.replace(/-/g,"").replace(/\+/g,"")),p=function(Qt,Vt,_t){switch(b){case 5:return _t+_*Vt+_*v*Qt;case 4:return _t+_*Qt+_*d*Vt;case 3:return Vt+v*_t+v*_*Qt;case 2:return Vt+v*Qt+v*d*_t;case 1:return Qt+d*_t+d*_*Vt;default:return Qt+d*Vt+d*v*_t}},k=e._minValues,E=e._maxValues,S=e._vMin,L=e._vMax,x,C,M,g;function P(Qt,Vt,_t){for(var It=g.length,mt=u;mt<It;mt++)if(Qt===x[mt]&&Vt===C[mt]&&_t===M[mt])return mt;return-1}function T(){u=l}function z(){x=[],C=[],M=[],g=[],l=0,T()}function O(Qt,Vt,_t,It){return x.push(Qt),C.push(Vt),M.push(_t),g.push(It),l++,l-1}function V(Qt,Vt,_t){return e._meshI.push(Qt),e._meshJ.push(Vt),e._meshK.push(_t),s++,s-1}function G(Qt,Vt,_t){for(var It=[],mt=0;mt<Qt.length;mt++)It[mt]=(Qt[mt]+Vt[mt]+_t[mt])/3;return It}function Z(Qt,Vt,_t){for(var It=[],mt=0;mt<Qt.length;mt++)It[mt]=Qt[mt]*(1-_t)+_t*Vt[mt];return It}var j;function N(Qt){j=Qt}function H(Qt,Vt){var _t=Qt[0],It=Qt[1],mt=Qt[2],er=G(_t,It,mt),lr=Math.sqrt(1-j),Tr=Z(er,_t,lr),Lr=Z(er,It,lr),ti=Z(er,mt,lr),Br=Vt[0],Vr=Vt[1],dt=Vt[2];return{xyzv:[[_t,It,Lr],[Lr,Tr,_t],[It,mt,ti],[ti,Lr,It],[mt,_t,Tr],[Tr,ti,mt]],abc:[[Br,Vr,-1],[-1,-1,Br],[Vr,dt,-1],[-1,-1,Vr],[dt,Br,-1],[-1,-1,dt]]}}function te(Qt,Vt){return Qt==="all"||Qt===null?!0:Qt.indexOf(Vt)>-1}function oe(Qt,Vt){return Qt===null?Vt:Qt}function _e(Qt,Vt,_t){T();var It=[Vt],mt=[_t];if(j>=1)It=[Vt],mt=[_t];else if(j>0){var er=H(Vt,_t);It=er.xyzv,mt=er.abc}for(var lr=0;lr<It.length;lr++){Vt=It[lr],_t=mt[lr];for(var Tr=[],Lr=0;Lr<3;Lr++){var ti=Vt[Lr][0],Br=Vt[Lr][1],Vr=Vt[Lr][2],dt=Vt[Lr][3],Ge=_t[Lr]>-1?_t[Lr]:P(ti,Br,Vr);Ge>-1?Tr[Lr]=Ge:Tr[Lr]=O(ti,Br,Vr,oe(Qt,dt))}V(Tr[0],Tr[1],Tr[2])}}function Ee(Qt,Vt,_t){var It=function(mt,er,lr){_e(Qt,[Vt[mt],Vt[er],Vt[lr]],[_t[mt],_t[er],_t[lr]])};It(0,1,2),It(2,3,0)}function Ce(Qt,Vt,_t){var It=function(mt,er,lr){_e(Qt,[Vt[mt],Vt[er],Vt[lr]],[_t[mt],_t[er],_t[lr]])};It(0,1,2),It(3,0,1),It(2,3,0),It(1,2,3)}function me(Qt,Vt,_t,It){var mt=Qt[3];mt<_t&&(mt=_t),mt>It&&(mt=It);for(var er=(Qt[3]-mt)/(Qt[3]-Vt[3]+1e-9),lr=[],Tr=0;Tr<4;Tr++)lr[Tr]=(1-er)*Qt[Tr]+er*Vt[Tr];return lr}function ie(Qt,Vt,_t){return Qt>=Vt&&Qt<=_t}function Se(Qt){var Vt=.001*(L-S);return Qt>=S-Vt&&Qt<=L+Vt}function Le(Qt){for(var Vt=[],_t=0;_t<4;_t++){var It=Qt[_t];Vt.push([e._x[It],e._y[It],e._z[It],e._value[It]])}return Vt}var Ae=3;function Fe(Qt,Vt,_t,It,mt,er){er||(er=1),_t=[-1,-1,-1];var lr=!1,Tr=[ie(Vt[0][3],It,mt),ie(Vt[1][3],It,mt),ie(Vt[2][3],It,mt)];if(!Tr[0]&&!Tr[1]&&!Tr[2])return!1;var Lr=function(Br,Vr,dt){return Se(Vr[0][3])&&Se(Vr[1][3])&&Se(Vr[2][3])?(_e(Br,Vr,dt),!0):er<Ae?Fe(Br,Vr,dt,S,L,++er):!1};if(Tr[0]&&Tr[1]&&Tr[2])return Lr(Qt,Vt,_t)||lr;var ti=!1;return[[0,1,2],[2,0,1],[1,2,0]].forEach(function(Br){if(Tr[Br[0]]&&Tr[Br[1]]&&!Tr[Br[2]]){var Vr=Vt[Br[0]],dt=Vt[Br[1]],Ge=Vt[Br[2]],Je=me(Ge,Vr,It,mt),je=me(Ge,dt,It,mt);lr=Lr(Qt,[je,Je,Vr],[-1,-1,_t[Br[0]]])||lr,lr=Lr(Qt,[Vr,dt,je],[_t[Br[0]],_t[Br[1]],-1])||lr,ti=!0}}),ti||[[0,1,2],[1,2,0],[2,0,1]].forEach(function(Br){if(Tr[Br[0]]&&!Tr[Br[1]]&&!Tr[Br[2]]){var Vr=Vt[Br[0]],dt=Vt[Br[1]],Ge=Vt[Br[2]],Je=me(dt,Vr,It,mt),je=me(Ge,Vr,It,mt);lr=Lr(Qt,[je,Je,Vr],[-1,-1,_t[Br[0]]])||lr,ti=!0}}),lr}function Pe(Qt,Vt,_t,It){var mt=!1,er=Le(Vt),lr=[ie(er[0][3],_t,It),ie(er[1][3],_t,It),ie(er[2][3],_t,It),ie(er[3][3],_t,It)];if(!lr[0]&&!lr[1]&&!lr[2]&&!lr[3])return mt;if(lr[0]&&lr[1]&&lr[2]&&lr[3])return o&&(mt=Ce(Qt,er,Vt)||mt),mt;var Tr=!1;return[[0,1,2,3],[3,0,1,2],[2,3,0,1],[1,2,3,0]].forEach(function(Lr){if(lr[Lr[0]]&&lr[Lr[1]]&&lr[Lr[2]]&&!lr[Lr[3]]){var ti=er[Lr[0]],Br=er[Lr[1]],Vr=er[Lr[2]],dt=er[Lr[3]];if(o)mt=_e(Qt,[ti,Br,Vr],[Vt[Lr[0]],Vt[Lr[1]],Vt[Lr[2]]])||mt;else{var Ge=me(dt,ti,_t,It),Je=me(dt,Br,_t,It),je=me(dt,Vr,_t,It);mt=_e(null,[Ge,Je,je],[-1,-1,-1])||mt}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(Lr){if(lr[Lr[0]]&&lr[Lr[1]]&&!lr[Lr[2]]&&!lr[Lr[3]]){var ti=er[Lr[0]],Br=er[Lr[1]],Vr=er[Lr[2]],dt=er[Lr[3]],Ge=me(Vr,ti,_t,It),Je=me(Vr,Br,_t,It),je=me(dt,Br,_t,It),tt=me(dt,ti,_t,It);o?(mt=_e(Qt,[ti,tt,Ge],[Vt[Lr[0]],-1,-1])||mt,mt=_e(Qt,[Br,Je,je],[Vt[Lr[1]],-1,-1])||mt):mt=Ee(null,[Ge,Je,je,tt],[-1,-1,-1,-1])||mt,Tr=!0}}),Tr)||[[0,1,2,3],[1,2,3,0],[2,3,0,1],[3,0,1,2]].forEach(function(Lr){if(lr[Lr[0]]&&!lr[Lr[1]]&&!lr[Lr[2]]&&!lr[Lr[3]]){var ti=er[Lr[0]],Br=er[Lr[1]],Vr=er[Lr[2]],dt=er[Lr[3]],Ge=me(Br,ti,_t,It),Je=me(Vr,ti,_t,It),je=me(dt,ti,_t,It);o?(mt=_e(Qt,[ti,Ge,Je],[Vt[Lr[0]],-1,-1])||mt,mt=_e(Qt,[ti,Je,je],[Vt[Lr[0]],-1,-1])||mt,mt=_e(Qt,[ti,je,Ge],[Vt[Lr[0]],-1,-1])||mt):mt=_e(null,[Ge,Je,je],[-1,-1,-1])||mt,Tr=!0}}),mt}function ge(Qt,Vt,_t,It,mt,er,lr,Tr,Lr,ti,Br){var Vr=!1;return a&&(te(Qt,"A")&&(Vr=Pe(null,[Vt,_t,It,er],ti,Br)||Vr),te(Qt,"B")&&(Vr=Pe(null,[_t,It,mt,Lr],ti,Br)||Vr),te(Qt,"C")&&(Vr=Pe(null,[_t,er,lr,Lr],ti,Br)||Vr),te(Qt,"D")&&(Vr=Pe(null,[It,er,Tr,Lr],ti,Br)||Vr),te(Qt,"E")&&(Vr=Pe(null,[_t,It,er,Lr],ti,Br)||Vr)),o&&(Vr=Pe(Qt,[_t,It,er,Lr],ti,Br)||Vr),Vr}function Re(Qt,Vt,_t,It,mt,er,lr,Tr){return[Tr[0]===!0?!0:Fe(Qt,Le([Vt,_t,It]),[Vt,_t,It],er,lr),Tr[1]===!0?!0:Fe(Qt,Le([It,mt,Vt]),[It,mt,Vt],er,lr)]}function ce(Qt,Vt,_t,It,mt,er,lr,Tr,Lr){return Tr?Re(Qt,Vt,_t,mt,It,er,lr,Lr):Re(Qt,_t,mt,It,Vt,er,lr,Lr)}function Ze(Qt,Vt,_t,It,mt,er,lr){var Tr=!1,Lr,ti,Br,Vr,dt=function(){Tr=Fe(Qt,[Lr,ti,Br],[-1,-1,-1],mt,er)||Tr,Tr=Fe(Qt,[Br,Vr,Lr],[-1,-1,-1],mt,er)||Tr},Ge=lr[0],Je=lr[1],je=lr[2];return Ge&&(Lr=Z(Le([p(Vt,_t-0,It-0)])[0],Le([p(Vt-1,_t-0,It-0)])[0],Ge),ti=Z(Le([p(Vt,_t-0,It-1)])[0],Le([p(Vt-1,_t-0,It-1)])[0],Ge),Br=Z(Le([p(Vt,_t-1,It-1)])[0],Le([p(Vt-1,_t-1,It-1)])[0],Ge),Vr=Z(Le([p(Vt,_t-1,It-0)])[0],Le([p(Vt-1,_t-1,It-0)])[0],Ge),dt()),Je&&(Lr=Z(Le([p(Vt-0,_t,It-0)])[0],Le([p(Vt-0,_t-1,It-0)])[0],Je),ti=Z(Le([p(Vt-0,_t,It-1)])[0],Le([p(Vt-0,_t-1,It-1)])[0],Je),Br=Z(Le([p(Vt-1,_t,It-1)])[0],Le([p(Vt-1,_t-1,It-1)])[0],Je),Vr=Z(Le([p(Vt-1,_t,It-0)])[0],Le([p(Vt-1,_t-1,It-0)])[0],Je),dt()),je&&(Lr=Z(Le([p(Vt-0,_t-0,It)])[0],Le([p(Vt-0,_t-0,It-1)])[0],je),ti=Z(Le([p(Vt-0,_t-1,It)])[0],Le([p(Vt-0,_t-1,It-1)])[0],je),Br=Z(Le([p(Vt-1,_t-1,It)])[0],Le([p(Vt-1,_t-1,It-1)])[0],je),Vr=Z(Le([p(Vt-1,_t-0,It)])[0],Le([p(Vt-1,_t-0,It-1)])[0],je),dt()),Tr}function ut(Qt,Vt,_t,It,mt,er,lr,Tr,Lr,ti,Br,Vr){var dt=Qt;return Vr?(a&&Qt==="even"&&(dt=null),ge(dt,Vt,_t,It,mt,er,lr,Tr,Lr,ti,Br)):(a&&Qt==="odd"&&(dt=null),ge(dt,Lr,Tr,lr,er,mt,It,_t,Vt,ti,Br))}function pt(Qt,Vt,_t,It,mt){for(var er=[],lr=0,Tr=0;Tr<Vt.length;Tr++)for(var Lr=Vt[Tr],ti=1;ti<_;ti++)for(var Br=1;Br<v;Br++)er.push(ce(Qt,p(Lr,Br-1,ti-1),p(Lr,Br-1,ti),p(Lr,Br,ti-1),p(Lr,Br,ti),_t,It,(Lr+Br+ti)%2,mt&&mt[lr]?mt[lr]:[])),lr++;return er}function Zt(Qt,Vt,_t,It,mt){for(var er=[],lr=0,Tr=0;Tr<Vt.length;Tr++)for(var Lr=Vt[Tr],ti=1;ti<d;ti++)for(var Br=1;Br<_;Br++)er.push(ce(Qt,p(ti-1,Lr,Br-1),p(ti,Lr,Br-1),p(ti-1,Lr,Br),p(ti,Lr,Br),_t,It,(ti+Lr+Br)%2,mt&&mt[lr]?mt[lr]:[])),lr++;return er}function st(Qt,Vt,_t,It,mt){for(var er=[],lr=0,Tr=0;Tr<Vt.length;Tr++)for(var Lr=Vt[Tr],ti=1;ti<v;ti++)for(var Br=1;Br<d;Br++)er.push(ce(Qt,p(Br-1,ti-1,Lr),p(Br-1,ti,Lr),p(Br,ti-1,Lr),p(Br,ti,Lr),_t,It,(Br+ti+Lr)%2,mt&&mt[lr]?mt[lr]:[])),lr++;return er}function lt(Qt,Vt,_t){for(var It=1;It<_;It++)for(var mt=1;mt<v;mt++)for(var er=1;er<d;er++)ut(Qt,p(er-1,mt-1,It-1),p(er-1,mt-1,It),p(er-1,mt,It-1),p(er-1,mt,It),p(er,mt-1,It-1),p(er,mt-1,It),p(er,mt,It-1),p(er,mt,It),Vt,_t,(er+mt+It)%2)}function Gt(Qt,Vt,_t){o=!0,lt(Qt,Vt,_t),o=!1}function Nt(Qt,Vt,_t){a=!0,lt(Qt,Vt,_t),a=!1}function Jt(Qt,Vt,_t,It,mt,er){for(var lr=[],Tr=0,Lr=0;Lr<Vt.length;Lr++)for(var ti=Vt[Lr],Br=1;Br<_;Br++)for(var Vr=1;Vr<v;Vr++)lr.push(Ze(Qt,ti,Vr,Br,_t,It,mt[Lr],er&&er[Tr]?er[Tr]:[])),Tr++;return lr}function sr(Qt,Vt,_t,It,mt,er){for(var lr=[],Tr=0,Lr=0;Lr<Vt.length;Lr++)for(var ti=Vt[Lr],Br=1;Br<d;Br++)for(var Vr=1;Vr<_;Vr++)lr.push(Ze(Qt,Br,ti,Vr,_t,It,mt[Lr],er&&er[Tr]?er[Tr]:[])),Tr++;return lr}function wr(Qt,Vt,_t,It,mt,er){for(var lr=[],Tr=0,Lr=0;Lr<Vt.length;Lr++)for(var ti=Vt[Lr],Br=1;Br<v;Br++)for(var Vr=1;Vr<d;Vr++)lr.push(Ze(Qt,Vr,Br,ti,_t,It,mt[Lr],er&&er[Tr]?er[Tr]:[])),Tr++;return lr}function cr(Qt,Vt){for(var _t=[],It=Qt;It<Vt;It++)_t.push(It);return _t}function $e(){for(var Qt=0;Qt<d;Qt++)for(var Vt=0;Vt<v;Vt++)for(var _t=0;_t<_;_t++){var It=p(Qt,Vt,_t);O(e._x[It],e._y[It],e._z[It],e._value[It])}}function St(){z(),$e();var Qt=null;if(r&&i&&(N(i),Gt(Qt,S,L)),t&&n){N(n);for(var Vt=e.surface.pattern,_t=e.surface.count,It=0;It<_t;It++){var mt=_t===1?.5:It/(_t-1),er=(1-mt)*S+mt*L,lr=Math.abs(er-k),Tr=Math.abs(er-E),Lr=lr>Tr?[k,er]:[er,E];Nt(Vt,Lr[0],Lr[1])}}var ti=[[Math.min(S,E),Math.max(S,E)],[Math.min(k,L),Math.max(k,L)]];["x","y","z"].forEach(function(Br){for(var Vr=[],dt=0;dt<ti.length;dt++){var Ge=0,Je=ti[dt][0],je=ti[dt][1],tt=e.slices[Br];if(tt.show&&tt.fill){N(tt.fill);var xt=[],Ie=[],xe=[];if(tt.locations.length)for(var ke=0;ke<tt.locations.length;ke++){var vt=ek(tt.locations[ke],Br==="x"?c:Br==="y"?f:h);vt.distRatio===0?xt.push(vt.id):vt.id>0&&(Ie.push(vt.id),Br==="x"?xe.push([vt.distRatio,0,0]):Br==="y"?xe.push([0,vt.distRatio,0]):xe.push([0,0,vt.distRatio]))}else Br==="x"?xt=cr(1,d-1):Br==="y"?xt=cr(1,v-1):xt=cr(1,_-1);Ie.length>0&&(Br==="x"?Vr[Ge]=Jt(Qt,Ie,Je,je,xe,Vr[Ge]):Br==="y"?Vr[Ge]=sr(Qt,Ie,Je,je,xe,Vr[Ge]):Vr[Ge]=wr(Qt,Ie,Je,je,xe,Vr[Ge]),Ge++),xt.length>0&&(Br==="x"?Vr[Ge]=pt(Qt,xt,Je,je,Vr[Ge]):Br==="y"?Vr[Ge]=Zt(Qt,xt,Je,je,Vr[Ge]):Vr[Ge]=st(Qt,xt,Je,je,Vr[Ge]),Ge++)}var ir=e.caps[Br];ir.show&&ir.fill&&(N(ir.fill),Br==="x"?Vr[Ge]=pt(Qt,[0,d-1],Je,je,Vr[Ge]):Br==="y"?Vr[Ge]=Zt(Qt,[0,v-1],Je,je,Vr[Ge]):Vr[Ge]=st(Qt,[0,_-1],Je,je,Vr[Ge]),Ge++)}}),s===0&&z(),e._meshX=x,e._meshY=C,e._meshZ=M,e._meshIntensity=g,e._Xs=c,e._Ys=f,e._Zs=h}return St(),e}function GRt(e,t){var r=e.glplot.gl,n=ORt({gl:r}),i=new _8e(e,n,t.uid);return n._trace=i,i.update(t),e.glplot.add(n),i}b8e.exports={findNearestOnAxis:ek,generateIsoMeshes:x8e,createIsosurfaceTrace:GRt}});var T8e=ye((Pgr,w8e)=>{"use strict";w8e.exports={attributes:sF(),supplyDefaults:YX().supplyDefaults,calc:$X(),colorbar:{min:"cmin",max:"cmax"},plot:cF().createIsosurfaceTrace,moduleType:"trace",name:"isosurface",basePlotModule:$_(),categories:["gl3d","showLegend"],meta:{}}});var S8e=ye((Igr,A8e)=>{"use strict";A8e.exports=T8e()});var tZ=ye((Rgr,E8e)=>{"use strict";var HRt=Tu(),yh=sF(),jRt=JE(),M8e=Gl(),eZ=Ao().extendFlat,WRt=mc().overrideAll,fF=E8e.exports=WRt(eZ({x:yh.x,y:yh.y,z:yh.z,value:yh.value,isomin:yh.isomin,isomax:yh.isomax,surface:yh.surface,spaceframe:{show:{valType:"boolean",dflt:!1},fill:{valType:"number",min:0,max:1,dflt:1}},slices:yh.slices,caps:yh.caps,text:yh.text,hovertext:yh.hovertext,xhoverformat:yh.xhoverformat,yhoverformat:yh.yhoverformat,zhoverformat:yh.zhoverformat,valuehoverformat:yh.valuehoverformat,hovertemplate:yh.hovertemplate,hovertemplatefallback:yh.hovertemplatefallback},HRt("",{colorAttr:"`value`",showScaleDflt:!0,editTypeOverride:"calc"}),{colorbar:yh.colorbar,opacity:yh.opacity,opacityscale:jRt.opacityscale,lightposition:yh.lightposition,lighting:yh.lighting,flatshading:yh.flatshading,contour:yh.contour,hoverinfo:eZ({},M8e.hoverinfo),showlegend:eZ({},M8e.showlegend,{dflt:!1})}),"calc","nested");fF.x.editType=fF.y.editType=fF.z.editType=fF.value.editType="calc+clearAxisTypes"});var C8e=ye((Dgr,k8e)=>{"use strict";var XRt=Dr(),ZRt=tZ(),YRt=YX().supplyIsoDefaults,KRt=GX().opacityscaleDefaults;k8e.exports=function(t,r,n,i){function a(o,s){return XRt.coerce(t,r,ZRt,o,s)}YRt(t,r,n,i,a),KRt(t,r,i,a)}});var R8e=ye((Fgr,I8e)=>{"use strict";var JRt=Od().gl_mesh3d,$Rt=$y().parseColorScale,QRt=Dr().isArrayOrTypedArray,eDt=Jy(),tDt=tc().extractOpts,L8e=ZA(),rZ=cF().findNearestOnAxis,rDt=cF().generateIsoMeshes;function P8e(e,t,r){this.scene=e,this.uid=r,this.mesh=t,this.name="",this.data=null,this.showContour=!1}var iZ=P8e.prototype;iZ.handlePick=function(e){if(e.object===this.mesh){var t=e.data.index,r=this.data._meshX[t],n=this.data._meshY[t],i=this.data._meshZ[t],a=this.data._Ys.length,o=this.data._Zs.length,s=rZ(r,this.data._Xs).id,l=rZ(n,this.data._Ys).id,u=rZ(i,this.data._Zs).id,c=e.index=u+o*l+o*a*s;e.traceCoordinate=[this.data._meshX[c],this.data._meshY[c],this.data._meshZ[c],this.data._value[c]];var f=this.data.hovertext||this.data.text;return QRt(f)&&f[c]!==void 0?e.textLabel=f[c]:f&&(e.textLabel=f),!0}};iZ.update=function(e){var t=this.scene,r=t.fullSceneLayout;this.data=rDt(e);function n(l,u,c,f){return u.map(function(h){return l.d2l(h,0,f)*c})}var i=L8e(n(r.xaxis,e._meshX,t.dataScale[0],e.xcalendar),n(r.yaxis,e._meshY,t.dataScale[1],e.ycalendar),n(r.zaxis,e._meshZ,t.dataScale[2],e.zcalendar)),a=L8e(e._meshI,e._meshJ,e._meshK),o={positions:i,cells:a,lightPosition:[e.lightposition.x,e.lightposition.y,e.lightposition.z],ambient:e.lighting.ambient,diffuse:e.lighting.diffuse,specular:e.lighting.specular,roughness:e.lighting.roughness,fresnel:e.lighting.fresnel,vertexNormalsEpsilon:e.lighting.vertexnormalsepsilon,faceNormalsEpsilon:e.lighting.facenormalsepsilon,opacity:e.opacity,opacityscale:e.opacityscale,contourEnable:e.contour.show,contourColor:eDt(e.contour.color).slice(0,3),contourWidth:e.contour.width,useFacetNormals:e.flatshading},s=tDt(e);o.vertexIntensity=e._meshIntensity,o.vertexIntensityBounds=[s.min,s.max],o.colormap=$Rt(e),this.mesh.update(o)};iZ.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()};function iDt(e,t){var r=e.glplot.gl,n=JRt({gl:r}),i=new P8e(e,n,t.uid);return n._trace=i,i.update(t),e.glplot.add(n),i}I8e.exports=iDt});var F8e=ye((zgr,D8e)=>{"use strict";D8e.exports={attributes:tZ(),supplyDefaults:C8e(),calc:$X(),colorbar:{min:"cmin",max:"cmax"},plot:R8e(),moduleType:"trace",name:"volume",basePlotModule:$_(),categories:["gl3d","showLegend"],meta:{}}});var O8e=ye((Ogr,z8e)=>{"use strict";z8e.exports=F8e()});var N8e=ye((qgr,B8e)=>{"use strict";var nDt=qa(),q8e=Dr(),aDt=Qh(),oDt=WA();B8e.exports=function(t,r,n,i){function a(c,f){return q8e.coerce(t,r,oDt,c,f)}function o(c){var f=c.map(function(h){var d=a(h);return d&&q8e.isArrayOrTypedArray(d)?d:null});return f.every(function(h){return h&&h.length===f[0].length})&&f}var s=o(["x","y","z"]);if(!s){r.visible=!1;return}if(o(["i","j","k"]),r.i&&(!r.j||!r.k)||r.j&&(!r.k||!r.i)||r.k&&(!r.i||!r.j)){r.visible=!1;return}var l=nDt.getComponentMethod("calendars","handleTraceDefaults");l(t,r,["x","y","z"],i),["lighting.ambient","lighting.diffuse","lighting.specular","lighting.roughness","lighting.fresnel","lighting.vertexnormalsepsilon","lighting.facenormalsepsilon","lightposition.x","lightposition.y","lightposition.z","flatshading","alphahull","delaunayaxis","opacity"].forEach(function(c){a(c)});var u=a("contour.show");u&&(a("contour.color"),a("contour.width")),"intensity"in t?(a("intensity"),a("intensitymode"),aDt(t,r,i,a,{prefix:"",cLetter:"c"})):(r.showscale=!1,"facecolor"in t?a("facecolor"):"vertexcolor"in t?a("vertexcolor"):a("color",n)),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),a("xhoverformat"),a("yhoverformat"),a("zhoverformat"),r._length=null}});var V8e=ye((Bgr,U8e)=>{"use strict";var sDt=gv();U8e.exports=function(t,r){r.intensity&&sDt(t,r,{vals:r.intensity,containerStr:"",cLetter:"c"})}});var X8e=ye((Ngr,W8e)=>{"use strict";var lDt=Od().gl_mesh3d,uDt=Od().delaunay_triangulate,cDt=Od().alpha_shape,fDt=Od().convex_hull,hDt=$y().parseColorScale,dDt=Dr().isArrayOrTypedArray,sZ=Jy(),vDt=tc().extractOpts,G8e=ZA();function j8e(e,t,r){this.scene=e,this.uid=r,this.mesh=t,this.name="",this.color="#fff",this.data=null,this.showContour=!1}var lZ=j8e.prototype;lZ.handlePick=function(e){if(e.object===this.mesh){var t=e.index=e.data.index;e.data._cellCenter?e.traceCoordinate=e.data.dataCoordinate:e.traceCoordinate=[this.data.x[t],this.data.y[t],this.data.z[t]];var r=this.data.hovertext||this.data.text;return dDt(r)&&r[t]!==void 0?e.textLabel=r[t]:r&&(e.textLabel=r),!0}};function H8e(e){for(var t=[],r=e.length,n=0;n<r;n++)t[n]=sZ(e[n]);return t}function nZ(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 aZ(e){for(var t=[],r=e.length,n=0;n<r;n++)t[n]=Math.round(e[n]);return t}function pDt(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 uDt(n)}function oZ(e,t){for(var r=e.length,n=0;n<r;n++)if(e[n]<=-.5||e[n]>=t-.5)return!1;return!0}lZ.update=function(e){var t=this.scene,r=t.fullSceneLayout;this.data=e;var n=e.x.length,i=G8e(nZ(r.xaxis,e.x,t.dataScale[0],e.xcalendar),nZ(r.yaxis,e.y,t.dataScale[1],e.ycalendar),nZ(r.zaxis,e.z,t.dataScale[2],e.zcalendar)),a;if(e.i&&e.j&&e.k){if(e.i.length!==e.j.length||e.j.length!==e.k.length||!oZ(e.i,n)||!oZ(e.j,n)||!oZ(e.k,n))return;a=G8e(aZ(e.i),aZ(e.j),aZ(e.k))}else e.alphahull===0?a=fDt(i):e.alphahull>0?a=cDt(e.alphahull,i):a=pDt(e.delaunayaxis,i);var o={positions:i,cells:a,lightPosition:[e.lightposition.x,e.lightposition.y,e.lightposition.z],ambient:e.lighting.ambient,diffuse:e.lighting.diffuse,specular:e.lighting.specular,roughness:e.lighting.roughness,fresnel:e.lighting.fresnel,vertexNormalsEpsilon:e.lighting.vertexnormalsepsilon,faceNormalsEpsilon:e.lighting.facenormalsepsilon,opacity:e.opacity,contourEnable:e.contour.show,contourColor:sZ(e.contour.color).slice(0,3),contourWidth:e.contour.width,useFacetNormals:e.flatshading};if(e.intensity){var s=vDt(e);this.color="#fff";var l=e.intensitymode;o[l+"Intensity"]=e.intensity,o[l+"IntensityBounds"]=[s.min,s.max],o.colormap=hDt(e)}else e.vertexcolor?(this.color=e.vertexcolor[0],o.vertexColors=H8e(e.vertexcolor)):e.facecolor?(this.color=e.facecolor[0],o.cellColors=H8e(e.facecolor)):(this.color=e.color,o.meshColor=sZ(e.color));this.mesh.update(o)};lZ.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()};function gDt(e,t){var r=e.glplot.gl,n=lDt({gl:r}),i=new j8e(e,n,t.uid);return n._trace=i,i.update(t),e.glplot.add(n),i}W8e.exports=gDt});var Y8e=ye((Ugr,Z8e)=>{"use strict";Z8e.exports={attributes:WA(),supplyDefaults:N8e(),calc:V8e(),colorbar:{min:"cmin",max:"cmax"},plot:X8e(),moduleType:"trace",name:"mesh3d",basePlotModule:$_(),categories:["gl3d","showLegend"],meta:{}}});var J8e=ye((Vgr,K8e)=>{"use strict";K8e.exports=Y8e()});var cZ=ye((Ggr,Q8e)=>{"use strict";var mDt=Tu(),YA=df().axisHoverFormat,{hovertemplateAttrs:yDt,templatefallbackAttrs:_Dt}=Ll(),xDt=WA(),$8e=Gl(),uZ=Ao().extendFlat,hF={x:{valType:"data_array",editType:"calc+clearAxisTypes"},y:{valType:"data_array",editType:"calc+clearAxisTypes"},z:{valType:"data_array",editType:"calc+clearAxisTypes"},u:{valType:"data_array",editType:"calc"},v:{valType:"data_array",editType:"calc"},w:{valType:"data_array",editType:"calc"},sizemode:{valType:"enumerated",values:["scaled","absolute","raw"],editType:"calc",dflt:"scaled"},sizeref:{valType:"number",editType:"calc",min:0},anchor:{valType:"enumerated",editType:"calc",values:["tip","tail","cm","center"],dflt:"cm"},text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertemplate:yDt({editType:"calc"},{keys:["norm"]}),hovertemplatefallback:_Dt({editType:"calc"}),uhoverformat:YA("u",1),vhoverformat:YA("v",1),whoverformat:YA("w",1),xhoverformat:YA("x"),yhoverformat:YA("y"),zhoverformat:YA("z"),showlegend:uZ({},$8e.showlegend,{dflt:!1})};uZ(hF,mDt("",{colorAttr:"u/v/w norm",showScaleDflt:!0,editTypeOverride:"calc"}));var bDt=["opacity","lightposition","lighting"];bDt.forEach(function(e){hF[e]=xDt[e]});hF.hoverinfo=uZ({},$8e.hoverinfo,{editType:"calc",flags:["x","y","z","u","v","w","norm","text","name"],dflt:"x+y+z+norm+text+name"});Q8e.exports=hF});var tRe=ye((Hgr,eRe)=>{"use strict";var wDt=Dr(),TDt=Qh(),ADt=cZ();eRe.exports=function(t,r,n,i){function a(d,v){return wDt.coerce(t,r,ADt,d,v)}var o=a("u"),s=a("v"),l=a("w"),u=a("x"),c=a("y"),f=a("z");if(!o||!o.length||!s||!s.length||!l||!l.length||!u||!u.length||!c||!c.length||!f||!f.length){r.visible=!1;return}var h=a("sizemode");a("sizeref",h==="raw"?1:.5),a("anchor"),a("lighting.ambient"),a("lighting.diffuse"),a("lighting.specular"),a("lighting.roughness"),a("lighting.fresnel"),a("lightposition.x"),a("lightposition.y"),a("lightposition.z"),TDt(t,r,i,a,{prefix:"",cLetter:"c"}),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),a("uhoverformat"),a("vhoverformat"),a("whoverformat"),a("xhoverformat"),a("yhoverformat"),a("zhoverformat"),r._length=null}});var iRe=ye((jgr,rRe)=>{"use strict";var SDt=gv();rRe.exports=function(t,r){for(var n=r.u,i=r.v,a=r.w,o=Math.min(r.x.length,r.y.length,r.z.length,n.length,i.length,a.length),s=-1/0,l=1/0,u=0;u<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,SDt(t,r,{vals:[l,s],containerStr:"",cLetter:"c"})}});var lRe=ye((Wgr,sRe)=>{"use strict";var MDt=Od().gl_cone3d,EDt=Od().gl_cone3d.createConeMesh,kDt=Dr().simpleMap,CDt=$y().parseColorScale,LDt=tc().extractOpts,PDt=Dr().isArrayOrTypedArray,nRe=ZA();function aRe(e,t){this.scene=e,this.uid=t,this.mesh=null,this.data=null}var fZ=aRe.prototype;fZ.handlePick=function(e){if(e.object===this.mesh){var t=e.index=e.data.index,r=this.data.x[t],n=this.data.y[t],i=this.data.z[t],a=this.data.u[t],o=this.data.v[t],s=this.data.w[t];e.traceCoordinate=[r,n,i,a,o,s,Math.sqrt(a*a+o*o+s*s)];var l=this.data.hovertext||this.data.text;return PDt(l)&&l[t]!==void 0?e.textLabel=l[t]:l&&(e.textLabel=l),!0}};var IDt={xaxis:0,yaxis:1,zaxis:2},RDt={tip:1,tail:0,cm:.25,center:.5},DDt={tip:1,tail:1,cm:.75,center:.5};function oRe(e,t){var r=e.fullSceneLayout,n=e.dataScale,i={};function a(c,f){var h=r[f],d=n[IDt[f]];return kDt(c,function(v){return h.d2l(v)*d})}i.vectors=nRe(a(t.u,"xaxis"),a(t.v,"yaxis"),a(t.w,"zaxis"),t._len),i.positions=nRe(a(t.x,"xaxis"),a(t.y,"yaxis"),a(t.z,"zaxis"),t._len);var o=LDt(t);i.colormap=CDt(t),i.vertexIntensityBounds=[o.min/t._normMax,o.max/t._normMax],i.coneOffset=RDt[t.anchor];var s=t.sizemode;s==="scaled"?i.coneSize=t.sizeref||.5:s==="absolute"?i.coneSize=t.sizeref&&t._normMax?t.sizeref/t._normMax:.5:s==="raw"&&(i.coneSize=t.sizeref),i.coneSizemode=s;var l=MDt(i),u=t.lightposition;return l.lightPosition=[u.x,u.y,u.z],l.ambient=t.lighting.ambient,l.diffuse=t.lighting.diffuse,l.specular=t.lighting.specular,l.roughness=t.lighting.roughness,l.fresnel=t.lighting.fresnel,l.opacity=t.opacity,t._pad=DDt[t.anchor]*l.vectorScale*l.coneScale*t._normMax,l}fZ.update=function(e){this.data=e;var t=oRe(this.scene,e);this.mesh.update(t)};fZ.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()};function FDt(e,t){var r=e.glplot.gl,n=oRe(e,t),i=EDt(r,n),a=new aRe(e,t.uid);return a.mesh=i,a.data=t,i._trace=a,e.glplot.add(i),a}sRe.exports=FDt});var cRe=ye((Xgr,uRe)=>{"use strict";uRe.exports={moduleType:"trace",name:"cone",basePlotModule:$_(),categories:["gl3d","showLegend"],attributes:cZ(),supplyDefaults:tRe(),colorbar:{min:"cmin",max:"cmax"},calc:iRe(),plot:lRe(),eventData:function(e,t){return e.norm=t.traceCoordinate[6],e},meta:{}}});var hRe=ye((Zgr,fRe)=>{"use strict";fRe.exports=cRe()});var dZ=ye((Ygr,vRe)=>{"use strict";var zDt=Tu(),KA=df().axisHoverFormat,{hovertemplateAttrs:ODt,templatefallbackAttrs:qDt}=Ll(),BDt=WA(),dRe=Gl(),hZ=Ao().extendFlat,dF={x:{valType:"data_array",editType:"calc+clearAxisTypes"},y:{valType:"data_array",editType:"calc+clearAxisTypes"},z:{valType:"data_array",editType:"calc+clearAxisTypes"},u:{valType:"data_array",editType:"calc"},v:{valType:"data_array",editType:"calc"},w:{valType:"data_array",editType:"calc"},starts:{x:{valType:"data_array",editType:"calc"},y:{valType:"data_array",editType:"calc"},z:{valType:"data_array",editType:"calc"},editType:"calc"},maxdisplayed:{valType:"integer",min:0,dflt:1e3,editType:"calc"},sizeref:{valType:"number",editType:"calc",min:0,dflt:1},text:{valType:"string",dflt:"",editType:"calc"},hovertext:{valType:"string",dflt:"",editType:"calc"},hovertemplate:ODt({editType:"calc"},{keys:["tubex","tubey","tubez","tubeu","tubev","tubew","norm","divergence"]}),hovertemplatefallback:qDt({editType:"calc"}),uhoverformat:KA("u",1),vhoverformat:KA("v",1),whoverformat:KA("w",1),xhoverformat:KA("x"),yhoverformat:KA("y"),zhoverformat:KA("z"),showlegend:hZ({},dRe.showlegend,{dflt:!1})};hZ(dF,zDt("",{colorAttr:"u/v/w norm",showScaleDflt:!0,editTypeOverride:"calc"}));var NDt=["opacity","lightposition","lighting"];NDt.forEach(function(e){dF[e]=BDt[e]});dF.hoverinfo=hZ({},dRe.hoverinfo,{editType:"calc",flags:["x","y","z","u","v","w","norm","divergence","text","name"],dflt:"x+y+z+norm+text+name"});vRe.exports=dF});var gRe=ye((Kgr,pRe)=>{"use strict";var UDt=Dr(),VDt=Qh(),GDt=dZ();pRe.exports=function(t,r,n,i){function a(h,d){return UDt.coerce(t,r,GDt,h,d)}var o=a("u"),s=a("v"),l=a("w"),u=a("x"),c=a("y"),f=a("z");if(!o||!o.length||!s||!s.length||!l||!l.length||!u||!u.length||!c||!c.length||!f||!f.length){r.visible=!1;return}a("starts.x"),a("starts.y"),a("starts.z"),a("maxdisplayed"),a("sizeref"),a("lighting.ambient"),a("lighting.diffuse"),a("lighting.specular"),a("lighting.roughness"),a("lighting.fresnel"),a("lightposition.x"),a("lightposition.y"),a("lightposition.z"),VDt(t,r,i,a,{prefix:"",cLetter:"c"}),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),a("uhoverformat"),a("vhoverformat"),a("whoverformat"),a("xhoverformat"),a("yhoverformat"),a("zhoverformat"),r._length=null}});var ARe=ye((Jgr,TRe)=>{"use strict";var _Re=Od().gl_streamtube3d,HDt=_Re.createTubeMesh,jDt=Dr(),WDt=$y().parseColorScale,XDt=tc().extractOpts,mRe=ZA(),xRe={xaxis:0,yaxis:1,zaxis:2};function bRe(e,t){this.scene=e,this.uid=t,this.mesh=null,this.data=null}var pZ=bRe.prototype;pZ.handlePick=function(e){var t=this.scene.fullSceneLayout,r=this.scene.dataScale;function n(o,s){var l=t[s],u=r[xRe[s]];return l.l2c(o)/u}if(e.object===this.mesh){var i=e.data.position,a=e.data.velocity;return e.traceCoordinate=[n(i[0],"xaxis"),n(i[1],"yaxis"),n(i[2],"zaxis"),n(a[0],"xaxis"),n(a[1],"yaxis"),n(a[2],"zaxis"),e.data.intensity*this.data._normMax,e.data.divergence],e.textLabel=this.data.hovertext||this.data.text,!0}};function yRe(e){var t=e.length,r;return t>2?r=e.slice(1,t-1):t===2?r=[(e[0]+e[1])/2]:r=e,r}function vZ(e){var t=e.length;return t===1?[.5,.5]:[e[1]-e[0],e[t-1]-e[t-2]]}function wRe(e,t){var r=e.fullSceneLayout,n=e.dataScale,i=t._len,a={};function o(z,O){var V=r[O],G=n[xRe[O]];return jDt.simpleMap(z,function(Z){return V.d2l(Z)*G})}if(a.vectors=mRe(o(t._u,"xaxis"),o(t._v,"yaxis"),o(t._w,"zaxis"),i),!i)return{positions:[],cells:[]};var s=o(t._Xs,"xaxis"),l=o(t._Ys,"yaxis"),u=o(t._Zs,"zaxis");a.meshgrid=[s,l,u],a.gridFill=t._gridFill;var c=t._slen;if(c)a.startingPositions=mRe(o(t._startsX,"xaxis"),o(t._startsY,"yaxis"),o(t._startsZ,"zaxis"));else{for(var f=l[0],h=yRe(s),d=yRe(u),v=new Array(h.length*d.length),_=0,b=0;b<h.length;b++)for(var p=0;p<d.length;p++)v[_++]=[h[b],f,d[p]];a.startingPositions=v}a.colormap=WDt(t),a.tubeSize=t.sizeref,a.maxLength=t.maxdisplayed;var k=o(t._xbnds,"xaxis"),E=o(t._ybnds,"yaxis"),S=o(t._zbnds,"zaxis"),L=vZ(s),x=vZ(l),C=vZ(u),M=[[k[0]-L[0],E[0]-x[0],S[0]-C[0]],[k[1]+L[1],E[1]+x[1],S[1]+C[1]]],g=_Re(a,M),P=XDt(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}pZ.update=function(e){this.data=e;var t=wRe(this.scene,e);this.mesh.update(t)};pZ.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()};function ZDt(e,t){var r=e.glplot.gl,n=wRe(e,t),i=HDt(r,n),a=new bRe(e,t.uid);return a.mesh=i,a.data=t,i._trace=a,e.glplot.add(i),a}TRe.exports=ZDt});var MRe=ye(($gr,SRe)=>{"use strict";SRe.exports={moduleType:"trace",name:"streamtube",basePlotModule:$_(),categories:["gl3d","showLegend"],attributes:dZ(),supplyDefaults:gRe(),colorbar:{min:"cmin",max:"cmax"},calc:lF().calc,plot:ARe(),eventData:function(e,t){return e.tubex=e.x,e.tubey=e.y,e.tubez=e.z,e.tubeu=t.traceCoordinate[3],e.tubev=t.traceCoordinate[4],e.tubew=t.traceCoordinate[5],e.norm=t.traceCoordinate[6],e.divergence=t.traceCoordinate[7],delete e.x,delete e.y,delete e.z,e},meta:{}}});var kRe=ye((Qgr,ERe)=>{"use strict";ERe.exports=MRe()});var j2=ye((tmr,IRe)=>{"use strict";var{hovertemplateAttrs:YDt,texttemplateAttrs:KDt,templatefallbackAttrs:CRe}=Ll(),JDt=Cg(),Wm=pf(),$Dt=Gl(),LRe=Tu(),QDt=Pd().dash,H2=Ao().extendFlat,eFt=mc().overrideAll,eg=Wm.marker,PRe=Wm.line,tFt=eg.line,emr=["The library used by the *country names* `locationmode` option is changing in an upcoming version.","Country names in existing plots may not work in the new version."].join(" ");IRe.exports=eFt({lon:{valType:"data_array"},lat:{valType:"data_array"},locations:{valType:"data_array"},locationmode:{valType:"enumerated",values:["ISO-3","USA-states","country names","geojson-id"],dflt:"ISO-3"},geojson:{valType:"any",editType:"calc"},featureidkey:{valType:"string",editType:"calc",dflt:"id"},mode:H2({},Wm.mode,{dflt:"markers"}),text:H2({},Wm.text,{}),texttemplate:KDt({editType:"plot"},{keys:["lat","lon","location","text"]}),texttemplatefallback:CRe({editType:"plot"}),hovertext:H2({},Wm.hovertext,{}),textfont:Wm.textfont,textposition:Wm.textposition,line:{color:PRe.color,width:PRe.width,dash:QDt},connectgaps:Wm.connectgaps,marker:H2({symbol:eg.symbol,opacity:eg.opacity,angle:eg.angle,angleref:H2({},eg.angleref,{values:["previous","up","north"]}),standoff:eg.standoff,size:eg.size,sizeref:eg.sizeref,sizemin:eg.sizemin,sizemode:eg.sizemode,colorbar:eg.colorbar,line:H2({width:tFt.width},LRe("marker.line")),gradient:eg.gradient},LRe("marker")),fill:{valType:"enumerated",values:["none","toself"],dflt:"none"},fillcolor:JDt(),selected:Wm.selected,unselected:Wm.unselected,hoverinfo:H2({},$Dt.hoverinfo,{flags:["lon","lat","location","text","name"]}),hovertemplate:YDt(),hovertemplatefallback:CRe()},"calc","nested")});var DRe=ye((rmr,RRe)=>{"use strict";var vF=Dr(),gZ=Ru(),rFt=$p(),iFt=R0(),nFt=D0(),aFt=Rg(),oFt=j2(),sFt=["The library used by the *country names* `locationmode` option is changing in the next major version.","Some country names in existing plots may not work in the new version.","To ensure consistent behavior, consider setting `locationmode` to *ISO-3*."].join(" ");RRe.exports=function(t,r,n,i){function a(d,v){return vF.coerce(t,r,oFt,d,v)}var o=a("locations"),s;if(o&&o.length){var l=a("geojson"),u;(typeof l=="string"&&l!==""||vF.isPlainObject(l))&&(u="geojson-id");var c=a("locationmode",u);c==="country names"&&vF.warn(sFt),c==="geojson-id"&&a("featureidkey"),s=o.length}else{var f=a("lon")||[],h=a("lat")||[];s=Math.min(f.length,h.length)}if(!s){r.visible=!1;return}r._length=s,a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),a("mode"),gZ.hasMarkers(r)&&rFt(t,r,n,i,a,{gradient:!0}),gZ.hasLines(r)&&(iFt(t,r,n,i,a),a("connectgaps")),gZ.hasText(r)&&(a("texttemplate"),a("texttemplatefallback"),nFt(t,r,i,a)),a("fill"),r.fill!=="none"&&aFt(t,r,n,a),vF.coerceSelectionMarkerOpacity(r,a)}});var ORe=ye((imr,zRe)=>{"use strict";var FRe=ho();zRe.exports=function(t,r,n){var i={},a=n[r.geo]._subplot,o=a.mockAxis,s=t.lonlat;return i.lonLabel=FRe.tickText(o,o.c2l(s[0]),!0).text,i.latLabel=FRe.tickText(o,o.c2l(s[1]),!0).text,i}});var pF=ye((nmr,URe)=>{"use strict";var mZ=Eo(),qRe=fs().BADNUM,lFt=F0(),uFt=km(),cFt=z0(),fFt=Dr().isArrayOrTypedArray,BRe=Dr()._;function NRe(e){return e&&typeof e=="string"}URe.exports=function(t,r){var n=fFt(r.locations),i=n?r.locations.length:r._length,a=new Array(i),o;r.geojson?o=function(h){return NRe(h)||mZ(h)}:o=NRe;for(var s=0;s<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];mZ(c)&&mZ(f)?l.lonlat=[+c,+f]:l.lonlat=[qRe,qRe]}}return uFt(a,r),lFt(t,r),cFt(a,r),i&&(a[0].t={labels:{lat:BRe(t,"lat:")+" ",lon:BRe(t,"lon:")+" "}}),a}});var tk=ye(Mv=>{"use strict";Mv.projNames={airy:"airy",aitoff:"aitoff","albers usa":"albersUsa",albers:"albers",august:"august","azimuthal equal area":"azimuthalEqualArea","azimuthal equidistant":"azimuthalEquidistant",baker:"baker",bertin1953:"bertin1953",boggs:"boggs",bonne:"bonne",bottomley:"bottomley",bromley:"bromley",collignon:"collignon","conic conformal":"conicConformal","conic equal area":"conicEqualArea","conic equidistant":"conicEquidistant",craig:"craig",craster:"craster","cylindrical equal area":"cylindricalEqualArea","cylindrical stereographic":"cylindricalStereographic",eckert1:"eckert1",eckert2:"eckert2",eckert3:"eckert3",eckert4:"eckert4",eckert5:"eckert5",eckert6:"eckert6",eisenlohr:"eisenlohr","equal earth":"equalEarth",equirectangular:"equirectangular",fahey:"fahey","foucaut sinusoidal":"foucautSinusoidal",foucaut:"foucaut",ginzburg4:"ginzburg4",ginzburg5:"ginzburg5",ginzburg6:"ginzburg6",ginzburg8:"ginzburg8",ginzburg9:"ginzburg9",gnomonic:"gnomonic","gringorten quincuncial":"gringortenQuincuncial",gringorten:"gringorten",guyou:"guyou",hammer:"hammer",hill:"hill",homolosine:"homolosine",hufnagel:"hufnagel",hyperelliptical:"hyperelliptical",kavrayskiy7:"kavrayskiy7",lagrange:"lagrange",larrivee:"larrivee",laskowski:"laskowski",loximuthal:"loximuthal",mercator:"mercator",miller:"miller",mollweide:"mollweide","mt flat polar parabolic":"mtFlatPolarParabolic","mt flat polar quartic":"mtFlatPolarQuartic","mt flat polar sinusoidal":"mtFlatPolarSinusoidal","natural earth":"naturalEarth","natural earth1":"naturalEarth1","natural earth2":"naturalEarth2","nell hammer":"nellHammer",nicolosi:"nicolosi",orthographic:"orthographic",patterson:"patterson","peirce quincuncial":"peirceQuincuncial",polyconic:"polyconic","rectangular polyconic":"rectangularPolyconic",robinson:"robinson",satellite:"satellite","sinu mollweide":"sinuMollweide",sinusoidal:"sinusoidal",stereographic:"stereographic",times:"times","transverse mercator":"transverseMercator","van der grinten":"vanDerGrinten","van der grinten2":"vanDerGrinten2","van der grinten3":"vanDerGrinten3","van der grinten4":"vanDerGrinten4",wagner4:"wagner4",wagner6:"wagner6",wiechel:"wiechel","winkel tripel":"winkel3",winkel3:"winkel3"};Mv.axesNames=["lonaxis","lataxis"];Mv.lonaxisSpan={orthographic:180,"azimuthal equal area":360,"azimuthal equidistant":360,"conic conformal":180,gnomonic:160,stereographic:180,"transverse mercator":180,"*":360};Mv.lataxisSpan={"conic conformal":150,stereographic:179.5,"*":180};Mv.scopeDefaults={world:{lonaxisRange:[-180,180],lataxisRange:[-90,90],projType:"equirectangular",projRotate:[0,0,0]},usa:{lonaxisRange:[-180,-50],lataxisRange:[15,80],projType:"albers usa"},europe:{lonaxisRange:[-30,60],lataxisRange:[30,85],projType:"conic conformal",projRotate:[15,0,0],projParallels:[0,60]},asia:{lonaxisRange:[22,160],lataxisRange:[-15,55],projType:"mercator",projRotate:[0,0,0]},africa:{lonaxisRange:[-30,60],lataxisRange:[-40,40],projType:"mercator",projRotate:[0,0,0]},"north america":{lonaxisRange:[-180,-45],lataxisRange:[5,85],projType:"conic conformal",projRotate:[-100,0,0],projParallels:[29.5,45.5]},"south america":{lonaxisRange:[-100,-30],lataxisRange:[-60,15],projType:"mercator",projRotate:[0,0,0]},antarctica:{lonaxisRange:[-180,180],lataxisRange:[-90,-60],projType:"equirectangular",projRotate:[0,0,0]},oceania:{lonaxisRange:[-180,180],lataxisRange:[-50,25],projType:"equirectangular",projRotate:[0,0,0]}};Mv.clipPad=.001;Mv.precision=.1;Mv.landColor="#F0DC82";Mv.waterColor="#3399FF";Mv.locationmodeToLayer={"ISO-3":"countries","USA-states":"subunits","country names":"countries"};Mv.sphereSVG={type:"Sphere"};Mv.fillLayers={ocean:1,land:1,lakes:1};Mv.lineLayers={subunits:1,countries:1,coastlines:1,rivers:1,frame:1};Mv.layers=["bg","ocean","land","lakes","subunits","countries","coastlines","rivers","lataxis","lonaxis","frame","backplot","frontplot"];Mv.layersForChoropleth=["bg","ocean","land","subunits","countries","coastlines","lataxis","lonaxis","frame","backplot","rivers","lakes","frontplot"];Mv.layerNameToAdjective={ocean:"ocean",land:"land",lakes:"lake",subunits:"subunit",countries:"country",coastlines:"coastline",rivers:"river",frame:"frame"}});var yZ=ye((gF,VRe)=>{(function(e,t){typeof gF=="object"&&typeof VRe!="undefined"?t(gF):(e=e||self,t(e.topojson=e.topojson||{}))})(gF,function(e){"use strict";function t(E){return E}function r(E){if(E==null)return t;var S,L,x=E.scale[0],C=E.scale[1],M=E.translate[0],g=E.translate[1];return function(P,T){T||(S=L=0);var z=2,O=P.length,V=new Array(O);for(V[0]=(S+=P[0])*x+M,V[1]=(L+=P[1])*C+g;z<O;)V[z]=P[z],++z;return V}}function n(E){var S=r(E.transform),L,x=1/0,C=x,M=-x,g=-x;function P(z){z=S(z),z[0]<x&&(x=z[0]),z[0]>M&&(M=z[0]),z[1]<C&&(C=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=S(z[O],O),G[0]<x&&(x=G[0]),G[0]>M&&(M=G[0]),G[1]<C&&(C=G[1]),G[1]>g&&(g=G[1])});for(L in E.objects)T(E.objects[L]);return[x,C,M,g]}function i(E,S){for(var L,x=E.length,C=x-S;C<--x;)L=E[C],E[C++]=E[x],E[x]=L}function a(E,S){return typeof S=="string"&&(S=E.objects[S]),S.type==="GeometryCollection"?{type:"FeatureCollection",features:S.geometries.map(function(L){return o(E,L)})}:o(E,S)}function o(E,S){var L=S.id,x=S.bbox,C=S.properties==null?{}:S.properties,M=s(E,S);return L==null&&x==null?{type:"Feature",properties:C,geometry:M}:x==null?{type:"Feature",id:L,properties:C,geometry:M}:{type:"Feature",id:L,bbox:x,properties:C,geometry:M}}function s(E,S){var L=r(E.transform),x=E.arcs;function C(O,V){V.length&&V.pop();for(var G=x[O<0?~O:O],Z=0,j=G.length;Z<j;++Z)V.push(L(G[Z],Z));O<0&&i(V,j)}function M(O){return L(O)}function g(O){for(var V=[],G=0,Z=O.length;G<Z;++G)C(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(S)}function l(E,S){var L={},x={},C={},M=[],g=-1;S.forEach(function(z,O){var V=E.arcs[z<0?~z:z],G;V.length<3&&!V[1][0]&&!V[1][1]&&(G=S[++g],S[g]=z,S[O]=G)}),S.forEach(function(z){var O=P(z),V=O[0],G=O[1],Z,j;if(Z=C[V])if(delete C[Z.end],Z.push(z),Z.end=G,j=x[G]){delete x[j.start];var N=j===Z?Z:Z.concat(j);x[N.start=Z.start]=C[N.end=j.end]=N}else x[Z.start]=C[Z.end]=Z;else if(Z=x[G])if(delete x[Z.start],Z.unshift(z),Z.start=V,j=C[V]){delete C[j.end];var H=j===Z?Z:j.concat(Z);x[H.start=j.start]=C[H.end=Z.end]=H}else x[Z.start]=C[Z.end]=Z;else Z=[z],x[Z.start=V]=C[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(C,x),T(x,C),S.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,S,L){var x,C,M;if(arguments.length>1)x=f(E,S,L);else for(C=0,x=new Array(M=E.arcs.length);C<M;++C)x[C]=C;return{type:"MultiLineString",arcs:l(E,x)}}function f(E,S,L){var x=[],C=[],M;function g(V){var G=V<0?~V:V;(C[G]||(C[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(S),C.forEach(L==null?function(V){x.push(V[0].i)}:function(V){L(V[0].g,V[V.length-1].g)&&x.push(V[0].i)}),x}function h(E){for(var S=-1,L=E.length,x,C=E[L-1],M=0;++S<L;)x=C,C=E[S],M+=x[0]*C[1]-x[1]*C[0];return Math.abs(M)}function d(E){return s(E,v.apply(this,arguments))}function v(E,S){var L={},x=[],C=[];S.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)})}),x.push(T)}function P(T){return h(s(E,{type:"Polygon",arcs:[T]}).coordinates[0])}return x.forEach(function(T){if(!T._){var z=[],O=[T];for(T._=1,C.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))})})})}}),x.forEach(function(T){delete T._}),{type:"MultiPolygon",arcs:C.map(function(T){var z=[],O;if(T.forEach(function(N){N.forEach(function(H){H.forEach(function(te){L[te<0?~te:te].length<2&&z.push(te)})})}),z=l(E,z),(O=z.length)>1)for(var V=1,G=P(z[0]),Z,j;V<O;++V)(Z=P(z[V]))>G&&(j=z[0],z[0]=z[V],z[V]=j,G=Z);return z}).filter(function(T){return T.length>0})}}function _(E,S){for(var L=0,x=E.length;L<x;){var C=L+x>>>1;E[C]<S?L=C+1:x=C}return L}function b(E){var S={},L=E.map(function(){return[]});function x(N,H){N.forEach(function(te){te<0&&(te=~te);var oe=S[te];oe?oe.push(H):S[te]=[H]})}function C(N,H){N.forEach(function(te){x(te,H)})}function M(N,H){N.type==="GeometryCollection"?N.geometries.forEach(function(te){M(te,H)}):N.type in g&&g[N.type](N.arcs,H)}var g={LineString:x,MultiLineString:C,Polygon:C,MultiPolygon:function(N,H){N.forEach(function(te){C(te,H)})}};E.forEach(M);for(var P in S)for(var T=S[P],z=T.length,O=0;O<z;++O)for(var V=O+1;V<z;++V){var G=T[O],Z=T[V],j;(j=L[G])[P=_(j,Z)]!==Z&&j.splice(P,0,Z),(j=L[Z])[P=_(j,G)]!==G&&j.splice(P,0,G)}return L}function p(E){if(E==null)return t;var S,L,x=E.scale[0],C=E.scale[1],M=E.translate[0],g=E.translate[1];return function(P,T){T||(S=L=0);var z=2,O=P.length,V=new Array(O),G=Math.round((P[0]-M)/x),Z=Math.round((P[1]-g)/C);for(V[0]=G-S,S=G,V[1]=Z-L,L=Z;z<O;)V[z]=P[z],++z;return V}}function k(E,S){if(E.transform)throw new Error("already quantized");if(!S||!S.scale){if(!((g=Math.floor(S))>=2))throw new Error("n must be \u22652");T=E.bbox||n(E);var L=T[0],x=T[1],C=T[2],M=T[3],g;S={scale:[C-L?(C-L)/(g-1):1,M-x?(M-x)/(g-1):1],translate:[L,x]}}else T=E.bbox;var P=p(S),T,z,O=E.objects,V={};function G(N){return P(N)}function Z(N){var H;switch(N.type){case"GeometryCollection":H={type:"GeometryCollection",geometries:N.geometries.map(Z)};break;case"Point":H={type:"Point",coordinates:G(N.coordinates)};break;case"MultiPoint":H={type:"MultiPoint",coordinates:N.coordinates.map(G)};break;default:return N}return N.id!=null&&(H.id=N.id),N.bbox!=null&&(H.bbox=N.bbox),N.properties!=null&&(H.properties=N.properties),H}function j(N){var H=0,te=1,oe=N.length,_e,Ee=new Array(oe);for(Ee[0]=P(N[0],0);++H<oe;)((_e=P(N[H],H))[0]||_e[1])&&(Ee[te++]=_e);return te===1&&(Ee[te++]=[0,0]),Ee.length=te,Ee}for(z in O)V[z]=Z(O[z]);return{type:"Topology",bbox:T,transform:S,objects:V,arcs:E.arcs.map(j)}}e.bbox=n,e.feature=a,e.merge=d,e.mergeArcs=v,e.mesh=u,e.meshArcs=c,e.neighbors=b,e.quantize=k,e.transform=r,e.untransform=p,Object.defineProperty(e,"__esModule",{value:!0})})});var mF=ye((omr,GRe)=>{"use strict";var _Z=GRe.exports={},hFt=tk().locationmodeToLayer,dFt=yZ().feature;_Z.getTopojsonName=function(e){return[e.scope.replace(/ /g,"-"),"_",e.resolution.toString(),"m"].join("")};_Z.getTopojsonPath=function(e,t){return e+=e.endsWith("/")?"":"/",`${e}${t}.json`};_Z.getTopojsonFeatures=function(e,t){var r=hFt[e.locationmode],n=t.objects[r];return dFt(t,n).features}});var tx=ye(rk=>{"use strict";var vFt=fs().BADNUM;rk.calcTraceToLineCoords=function(e){for(var t=e[0].trace,r=t.connectgaps,n=[],i=[],a=0;a<e.length;a++){var o=e[a],s=o.lonlat;s[0]!==vFt?i.push(s):!r&&i.length>0&&(n.push(i),i=[])}return i.length>0&&n.push(i),n};rk.makeLine=function(e){return e.length===1?{type:"LineString",coordinates:e[0]}:{type:"MultiLineString",coordinates:e}};rk.makePolygon=function(e){if(e.length===1)return{type:"Polygon",coordinates:e};for(var t=new Array(e.length),r=0;r<e.length;r++)t[r]=[e[r]];return{type:"MultiPolygon",coordinates:t}};rk.makeBlank=function(){return{type:"Point",coordinates:[]}}});var jRe=ye((lmr,HRe)=>{HRe.exports={AFG:"afghan",ALA:"\\b\\wland",ALB:"albania",DZA:"algeria",ASM:"^(?=.*americ).*samoa",AND:"andorra",AGO:"angola",AIA:"anguill?a",ATA:"antarctica",ATG:"antigua",ARG:"argentin",ARM:"armenia",ABW:"^(?!.*bonaire).*\\baruba",AUS:"australia",AUT:"^(?!.*hungary).*austria|\\baustri.*\\bemp",AZE:"azerbaijan",BHS:"bahamas",BHR:"bahrain",BGD:"bangladesh|^(?=.*east).*paki?stan",BRB:"barbados",BLR:"belarus|byelo",BEL:"^(?!.*luxem).*belgium",BLZ:"belize|^(?=.*british).*honduras",BEN:"benin|dahome",BMU:"bermuda",BTN:"bhutan",BOL:"bolivia",BES:"^(?=.*bonaire).*eustatius|^(?=.*carib).*netherlands|\\bbes.?islands",BIH:"herzegovina|bosnia",BWA:"botswana|bechuana",BVT:"bouvet",BRA:"brazil",IOT:"british.?indian.?ocean",BRN:"brunei",BGR:"bulgaria",BFA:"burkina|\\bfaso|upper.?volta",BDI:"burundi",CPV:"verde",KHM:"cambodia|kampuchea|khmer",CMR:"cameroon",CAN:"canada",CYM:"cayman",CAF:"\\bcentral.african.republic",TCD:"\\bchad",CHL:"\\bchile",CHN:"^(?!.*\\bmac)(?!.*\\bhong)(?!.*\\btai)(?!.*\\brep).*china|^(?=.*peo)(?=.*rep).*china",CXR:"christmas",CCK:"\\bcocos|keeling",COL:"colombia",COM:"comoro",COG:"^(?!.*\\bdem)(?!.*\\bd[\\.]?r)(?!.*kinshasa)(?!.*zaire)(?!.*belg)(?!.*l.opoldville)(?!.*free).*\\bcongo",COK:"\\bcook",CRI:"costa.?rica",CIV:"ivoire|ivory",HRV:"croatia",CUB:"\\bcuba",CUW:"^(?!.*bonaire).*\\bcura(c|\xE7)ao",CYP:"cyprus",CSK:"czechoslovakia",CZE:"^(?=.*rep).*czech|czechia|bohemia",COD:"\\bdem.*congo|congo.*\\bdem|congo.*\\bd[\\.]?r|\\bd[\\.]?r.*congo|belgian.?congo|congo.?free.?state|kinshasa|zaire|l.opoldville|drc|droc|rdc",DNK:"denmark",DJI:"djibouti",DMA:"dominica(?!n)",DOM:"dominican.rep",ECU:"ecuador",EGY:"egypt",SLV:"el.?salvador",GNQ:"guine.*eq|eq.*guine|^(?=.*span).*guinea",ERI:"eritrea",EST:"estonia",ETH:"ethiopia|abyssinia",FLK:"falkland|malvinas",FRO:"faroe|faeroe",FJI:"fiji",FIN:"finland",FRA:"^(?!.*\\bdep)(?!.*martinique).*france|french.?republic|\\bgaul",GUF:"^(?=.*french).*guiana",PYF:"french.?polynesia|tahiti",ATF:"french.?southern",GAB:"gabon",GMB:"gambia",GEO:"^(?!.*south).*georgia",DDR:"german.?democratic.?republic|democratic.?republic.*germany|east.germany",DEU:"^(?!.*east).*germany|^(?=.*\\bfed.*\\brep).*german",GHA:"ghana|gold.?coast",GIB:"gibraltar",GRC:"greece|hellenic|hellas",GRL:"greenland",GRD:"grenada",GLP:"guadeloupe",GUM:"\\bguam",GTM:"guatemala",GGY:"guernsey",GIN:"^(?!.*eq)(?!.*span)(?!.*bissau)(?!.*portu)(?!.*new).*guinea",GNB:"bissau|^(?=.*portu).*guinea",GUY:"guyana|british.?guiana",HTI:"haiti",HMD:"heard.*mcdonald",VAT:"holy.?see|vatican|papal.?st",HND:"^(?!.*brit).*honduras",HKG:"hong.?kong",HUN:"^(?!.*austr).*hungary",ISL:"iceland",IND:"india(?!.*ocea)",IDN:"indonesia",IRN:"\\biran|persia",IRQ:"\\biraq|mesopotamia",IRL:"(^ireland)|(^republic.*ireland)",IMN:"^(?=.*isle).*\\bman",ISR:"israel",ITA:"italy",JAM:"jamaica",JPN:"japan",JEY:"jersey",JOR:"jordan",KAZ:"kazak",KEN:"kenya|british.?east.?africa|east.?africa.?prot",KIR:"kiribati",PRK:"^(?=.*democrat|people|north|d.*p.*.r).*\\bkorea|dprk|korea.*(d.*p.*r)",KWT:"kuwait",KGZ:"kyrgyz|kirghiz",LAO:"\\blaos?\\b",LVA:"latvia",LBN:"lebanon",LSO:"lesotho|basuto",LBR:"liberia",LBY:"libya",LIE:"liechtenstein",LTU:"lithuania",LUX:"^(?!.*belg).*luxem",MAC:"maca(o|u)",MDG:"madagascar|malagasy",MWI:"malawi|nyasa",MYS:"malaysia",MDV:"maldive",MLI:"\\bmali\\b",MLT:"\\bmalta",MHL:"marshall",MTQ:"martinique",MRT:"mauritania",MUS:"mauritius",MYT:"\\bmayotte",MEX:"\\bmexic",FSM:"fed.*micronesia|micronesia.*fed",MCO:"monaco",MNG:"mongolia",MNE:"^(?!.*serbia).*montenegro",MSR:"montserrat",MAR:"morocco|\\bmaroc",MOZ:"mozambique",MMR:"myanmar|burma",NAM:"namibia",NRU:"nauru",NPL:"nepal",NLD:"^(?!.*\\bant)(?!.*\\bcarib).*netherlands",ANT:"^(?=.*\\bant).*(nether|dutch)",NCL:"new.?caledonia",NZL:"new.?zealand",NIC:"nicaragua",NER:"\\bniger(?!ia)",NGA:"nigeria",NIU:"niue",NFK:"norfolk",MNP:"mariana",NOR:"norway",OMN:"\\boman|trucial",PAK:"^(?!.*east).*paki?stan",PLW:"palau",PSE:"palestin|\\bgaza|west.?bank",PAN:"panama",PNG:"papua|new.?guinea",PRY:"paraguay",PER:"peru",PHL:"philippines",PCN:"pitcairn",POL:"poland",PRT:"portugal",PRI:"puerto.?rico",QAT:"qatar",KOR:"^(?!.*d.*p.*r)(?!.*democrat)(?!.*people)(?!.*north).*\\bkorea(?!.*d.*p.*r)",MDA:"moldov|b(a|e)ssarabia",REU:"r(e|\xE9)union",ROU:"r(o|u|ou)mania",RUS:"\\brussia|soviet.?union|u\\.?s\\.?s\\.?r|socialist.?republics",RWA:"rwanda",BLM:"barth(e|\xE9)lemy",SHN:"helena",KNA:"kitts|\\bnevis",LCA:"\\blucia",MAF:"^(?=.*collectivity).*martin|^(?=.*france).*martin(?!ique)|^(?=.*french).*martin(?!ique)",SPM:"miquelon",VCT:"vincent",WSM:"^(?!.*amer).*samoa",SMR:"san.?marino",STP:"\\bs(a|\xE3)o.?tom(e|\xE9)",SAU:"\\bsa\\w*.?arabia",SEN:"senegal",SRB:"^(?!.*monte).*serbia",SYC:"seychell",SLE:"sierra",SGP:"singapore",SXM:"^(?!.*martin)(?!.*saba).*maarten",SVK:"^(?!.*cze).*slovak",SVN:"slovenia",SLB:"solomon",SOM:"somali",ZAF:"south.africa|s\\\\..?africa",SGS:"south.?georgia|sandwich",SSD:"\\bs\\w*.?sudan",ESP:"spain",LKA:"sri.?lanka|ceylon",SDN:"^(?!.*\\bs(?!u)).*sudan",SUR:"surinam|dutch.?guiana",SJM:"svalbard",SWZ:"swaziland",SWE:"sweden",CHE:"switz|swiss",SYR:"syria",TWN:"taiwan|taipei|formosa|^(?!.*peo)(?=.*rep).*china",TJK:"tajik",THA:"thailand|\\bsiam",MKD:"macedonia|fyrom",TLS:"^(?=.*leste).*timor|^(?=.*east).*timor",TGO:"togo",TKL:"tokelau",TON:"tonga",TTO:"trinidad|tobago",TUN:"tunisia",TUR:"turkey",TKM:"turkmen",TCA:"turks",TUV:"tuvalu",UGA:"uganda",UKR:"ukrain",ARE:"emirates|^u\\.?a\\.?e\\.?$|united.?arab.?em",GBR:"united.?kingdom|britain|^u\\.?k\\.?$",TZA:"tanzania",USA:"united.?states\\b(?!.*islands)|\\bu\\.?s\\.?a\\.?\\b|^\\s*u\\.?s\\.?\\b(?!.*islands)",UMI:"minor.?outlying.?is",URY:"uruguay",UZB:"uzbek",VUT:"vanuatu|new.?hebrides",VEN:"venezuela",VNM:"^(?!.*republic).*viet.?nam|^(?=.*socialist).*viet.?nam",VGB:"^(?=.*\\bu\\.?\\s?k).*virgin|^(?=.*brit).*virgin|^(?=.*kingdom).*virgin",VIR:"^(?=.*\\bu\\.?\\s?s).*virgin|^(?=.*states).*virgin",WLF:"futuna|wallis",ESH:"western.sahara",YEM:"^(?!.*arab)(?!.*north)(?!.*sana)(?!.*peo)(?!.*dem)(?!.*south)(?!.*aden)(?!.*\\bp\\.?d\\.?r).*yemen",YMD:"^(?=.*peo).*yemen|^(?!.*rep)(?=.*dem).*yemen|^(?=.*south).*yemen|^(?=.*aden).*yemen|^(?=.*\\bp\\.?d\\.?r).*yemen",YUG:"yugoslavia",ZMB:"zambia|northern.?rhodesia",EAZ:"zanzibar",ZWE:"zimbabwe|^(?!.*northern).*rhodesia"}});var xF=ye(ic=>{"use strict";Object.defineProperty(ic,"__esModule",{value:!0});var Op=63710088e-1,bZ={centimeters:Op*100,centimetres:Op*100,degrees:360/(2*Math.PI),feet:Op*3.28084,inches:Op*39.37,kilometers:Op/1e3,kilometres:Op/1e3,meters:Op,metres:Op,miles:Op/1609.344,millimeters:Op*1e3,millimetres:Op*1e3,nauticalmiles:Op/1852,radians:1,yards:Op*1.0936},xZ={acres:247105e-9,centimeters:1e4,centimetres:1e4,feet:10.763910417,hectares:1e-4,inches:1550.003100006,kilometers:1e-6,kilometres:1e-6,meters:1,metres:1,miles:386e-9,nauticalmiles:29155334959812285e-23,millimeters:1e6,millimetres:1e6,yards:1.195990046};function rx(e,t,r={}){let n={type:"Feature"};return(r.id===0||r.id)&&(n.id=r.id),r.bbox&&(n.bbox=r.bbox),n.properties=t||{},n.geometry=e,n}function pFt(e,t,r={}){switch(e){case"Point":return wZ(t).geometry;case"LineString":return AZ(t).geometry;case"Polygon":return TZ(t).geometry;case"MultiPoint":return XRe(t).geometry;case"MultiLineString":return WRe(t).geometry;case"MultiPolygon":return ZRe(t).geometry;default:throw new Error(e+" is invalid")}}function wZ(e,t,r={}){if(!e)throw new Error("coordinates is required");if(!Array.isArray(e))throw new Error("coordinates must be an Array");if(e.length<2)throw new Error("coordinates must be at least 2 numbers long");if(!yF(e[0])||!yF(e[1]))throw new Error("coordinates must contain numbers");return rx({type:"Point",coordinates:e},t,r)}function gFt(e,t,r={}){return _F(e.map(n=>wZ(n,t)),r)}function TZ(e,t,r={}){for(let i of e){if(i.length<4)throw new Error("Each LinearRing of a Polygon must have 4 or more Positions.");if(i[i.length-1].length!==i[0].length)throw new Error("First and last Position are not equivalent.");for(let a=0;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 rx({type:"Polygon",coordinates:e},t,r)}function mFt(e,t,r={}){return _F(e.map(n=>TZ(n,t)),r)}function AZ(e,t,r={}){if(e.length<2)throw new Error("coordinates must be an array of two or more positions");return rx({type:"LineString",coordinates:e},t,r)}function yFt(e,t,r={}){return _F(e.map(n=>AZ(n,t)),r)}function _F(e,t={}){let r={type:"FeatureCollection"};return t.id&&(r.id=t.id),t.bbox&&(r.bbox=t.bbox),r.features=e,r}function WRe(e,t,r={}){return rx({type:"MultiLineString",coordinates:e},t,r)}function XRe(e,t,r={}){return rx({type:"MultiPoint",coordinates:e},t,r)}function ZRe(e,t,r={}){return rx({type:"MultiPolygon",coordinates:e},t,r)}function _Ft(e,t,r={}){return rx({type:"GeometryCollection",geometries:e},t,r)}function xFt(e,t=0){if(t&&!(t>=0))throw new Error("precision must be a positive number");let r=Math.pow(10,t||0);return Math.round(e*r)/r}function YRe(e,t="kilometers"){let r=bZ[t];if(!r)throw new Error(t+" units is invalid");return e*r}function SZ(e,t="kilometers"){let r=bZ[t];if(!r)throw new Error(t+" units is invalid");return e/r}function bFt(e,t){return KRe(SZ(e,t))}function wFt(e){let t=e%360;return t<0&&(t+=360),t}function TFt(e){return e=e%360,e>180?e-360:e<-180?e+360:e}function KRe(e){return e%(2*Math.PI)*180/Math.PI}function AFt(e){return e%360*Math.PI/180}function SFt(e,t="kilometers",r="kilometers"){if(!(e>=0))throw new Error("length must be a positive number");return YRe(SZ(e,t),r)}function MFt(e,t="meters",r="kilometers"){if(!(e>=0))throw new Error("area must be a positive number");let n=xZ[t];if(!n)throw new Error("invalid original units");let i=xZ[r];if(!i)throw new Error("invalid final units");return e/n*i}function yF(e){return!isNaN(e)&&e!==null&&!Array.isArray(e)}function EFt(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function kFt(e){if(!e)throw new Error("bbox is required");if(!Array.isArray(e))throw new Error("bbox must be an Array");if(e.length!==4&&e.length!==6)throw new Error("bbox must be an Array of 4 or 6 numbers");e.forEach(t=>{if(!yF(t))throw new Error("bbox must only contain numbers")})}function CFt(e){if(!e)throw new Error("id is required");if(["string","number"].indexOf(typeof e)===-1)throw new Error("id must be a number or a string")}ic.areaFactors=xZ;ic.azimuthToBearing=TFt;ic.bearingToAzimuth=wFt;ic.convertArea=MFt;ic.convertLength=SFt;ic.degreesToRadians=AFt;ic.earthRadius=Op;ic.factors=bZ;ic.feature=rx;ic.featureCollection=_F;ic.geometry=pFt;ic.geometryCollection=_Ft;ic.isNumber=yF;ic.isObject=EFt;ic.lengthToDegrees=bFt;ic.lengthToRadians=SZ;ic.lineString=AZ;ic.lineStrings=yFt;ic.multiLineString=WRe;ic.multiPoint=XRe;ic.multiPolygon=ZRe;ic.point=wZ;ic.points=gFt;ic.polygon=TZ;ic.polygons=mFt;ic.radiansToDegrees=KRe;ic.radiansToLength=YRe;ic.round=xFt;ic.validateBBox=kFt;ic.validateId=CFt});var wF=ye(qd=>{"use strict";Object.defineProperty(qd,"__esModule",{value:!0});var Wv=xF();function ik(e,t,r){if(e!==null)for(var n,i,a,o,s,l,u,c=0,f=0,h,d=e.type,v=d==="FeatureCollection",_=d==="Feature",b=v?e.features.length:1,p=0;p<b;p++){u=v?e.features[p].geometry:_?e.geometry:e,h=u?u.type==="GeometryCollection":!1,s=h?u.geometries.length:1;for(var k=0;k<s;k++){var E=0,S=0;if(o=h?u.geometries[k]: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,S)===!1)return!1;f++,E++;break;case"LineString":case"MultiPoint":for(n=0;n<l.length;n++){if(t(l[n],f,p,E,S)===!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,S)===!1)return!1;f++}L==="MultiLineString"&&E++,L==="Polygon"&&S++}L==="Polygon"&&E++;break;case"MultiPolygon":for(n=0;n<l.length;n++){for(S=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,S)===!1)return!1;f++}S++}E++}break;case"GeometryCollection":for(n=0;n<o.geometries.length;n++)if(ik(o.geometries[n],t,r)===!1)return!1;break;default:throw new Error("Unknown Geometry Type")}}}}}function LFt(e,t,r,n){var i=r;return ik(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 JRe(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 PFt(e,t,r){var n=r;return JRe(e,function(i,a){a===0&&r===void 0?n=i:n=t(n,i,a)}),n}function $Re(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 IFt(e,t,r){var n=r;return $Re(e,function(i,a){a===0&&r===void 0?n=i:n=t(n,i,a)}),n}function RFt(e){var t=[];return ik(e,function(r){t.push(r)}),t}function MZ(e,t){var r,n,i,a,o,s,l,u,c,f,h=0,d=e.type==="FeatureCollection",v=e.type==="Feature",_=d?e.features.length:1;for(r=0;r<_;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 DFt(e,t,r){var n=r;return MZ(e,function(i,a,o,s,l){a===0&&r===void 0?n=i:n=t(n,i,a,o,s,l)}),n}function bF(e,t){MZ(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(Wv.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(Wv.feature.call(void 0,f,i),n,u)===!1)return!1}})}function FFt(e,t,r){var n=r;return bF(e,function(i,a,o){a===0&&o===0&&r===void 0?n=i:n=t(n,i,a,o)}),n}function QRe(e,t){bF(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(ik(r,function(f,h,d,v,_){if(s===void 0||n>l||v>u||_>c){s=f,l=n,u=v,c=_,a=0;return}var b=Wv.lineString.call(void 0,[s,f],r.properties);if(t(b,n,i,_,a)===!1)return!1;a++,s=f})===!1)return!1}}})}function zFt(e,t,r){var n=r,i=!1;return QRe(e,function(a,o,s,l,u){i===!1&&r===void 0?n=a:n=t(n,a,o,s,l,u),i=!0}),n}function eDe(e,t){if(!e)throw new Error("geojson is required");bF(e,function(r,n,i){if(r.geometry!==null){var a=r.geometry.type,o=r.geometry.coordinates;switch(a){case"LineString":if(t(r,n,i,0,0)===!1)return!1;break;case"Polygon":for(var s=0;s<o.length;s++)if(t(Wv.lineString.call(void 0,o[s],r.properties),n,i,s)===!1)return!1;break}}})}function OFt(e,t,r){var n=r;return eDe(e,function(i,a,o,s){a===0&&r===void 0?n=i:n=t(n,i,a,o,s)}),n}function qFt(e,t){if(t=t||{},!Wv.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),Wv.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),Wv.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),Wv.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),Wv.lineString.call(void 0,[l[n][i][a],l[n][i][a+1]],o,t)}throw new Error("geojson is invalid")}function BFt(e,t){if(t=t||{},!Wv.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 Wv.point.call(void 0,l,o,t);case"MultiPoint":return n<0&&(n=l.length+n),Wv.point.call(void 0,l[n],o,t);case"LineString":return a<0&&(a=l.length+a),Wv.point.call(void 0,l[a],o,t);case"Polygon":return i<0&&(i=l.length+i),a<0&&(a=l[i].length+a),Wv.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),Wv.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),Wv.point.call(void 0,l[n][i][a],o,t)}throw new Error("geojson is invalid")}qd.coordAll=RFt;qd.coordEach=ik;qd.coordReduce=LFt;qd.featureEach=$Re;qd.featureReduce=IFt;qd.findPoint=BFt;qd.findSegment=qFt;qd.flattenEach=bF;qd.flattenReduce=FFt;qd.geomEach=MZ;qd.geomReduce=DFt;qd.lineEach=eDe;qd.lineReduce=OFt;qd.propEach=JRe;qd.propReduce=PFt;qd.segmentEach=QRe;qd.segmentReduce=zFt});var aDe=ye(TF=>{"use strict";Object.defineProperty(TF,"__esModule",{value:!0});var tDe=xF(),NFt=wF();function nDe(e){return NFt.geomReduce.call(void 0,e,(t,r)=>t+UFt(r),0)}function UFt(e){let t=0,r;switch(e.type){case"Polygon":return rDe(e.coordinates);case"MultiPolygon":for(r=0;r<e.coordinates.length;r++)t+=rDe(e.coordinates[r]);return t;case"Point":case"MultiPoint":case"LineString":case"MultiLineString":return 0}return 0}function rDe(e){let t=0;if(e&&e.length>0){t+=Math.abs(iDe(e[0]));for(let r=1;r<e.length;r++)t-=Math.abs(iDe(e[r]))}return t}var VFt=tDe.earthRadius*tDe.earthRadius/2,EZ=Math.PI/180;function iDe(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]*EZ,l=a[1]*EZ,u=o[0]*EZ;r+=(u-s)*Math.sin(l),n++}return r*VFt}var GFt=nDe;TF.area=nDe;TF.default=GFt});var sDe=ye(AF=>{"use strict";Object.defineProperty(AF,"__esModule",{value:!0});var HFt=xF(),jFt=wF();function oDe(e,t={}){let r=0,n=0,i=0;return jFt.coordEach.call(void 0,e,function(a){r+=a[0],n+=a[1],i++},!0),HFt.point.call(void 0,[r/i,n/i],t.properties)}var WFt=oDe;AF.centroid=oDe;AF.default=WFt});var uDe=ye(SF=>{"use strict";Object.defineProperty(SF,"__esModule",{value:!0});var XFt=wF();function lDe(e,t={}){if(e.bbox!=null&&t.recompute!==!0)return e.bbox;let r=[1/0,1/0,-1/0,-1/0];return XFt.coordEach.call(void 0,e,n=>{r[0]>n[0]&&(r[0]=n[0]),r[1]>n[1]&&(r[1]=n[1]),r[2]<n[0]&&(r[2]=n[0]),r[3]<n[1]&&(r[3]=n[1])}),r}var ZFt=lDe;SF.bbox=lDe;SF.default=ZFt});var ix=ye((vmr,vDe)=>{"use strict";var YFt=Oa(),hDe=jRe(),{area:KFt}=aDe(),{centroid:JFt}=sDe(),{bbox:$Ft}=uDe(),cDe=HS(),JA=G1(),QFt=my(),ezt=PS(),MF=kM(),fDe=Object.keys(hDe),tzt={"ISO-3":cDe,"USA-states":cDe,"country names":rzt};function rzt(e){for(var t=0;t<fDe.length;t++){var r=fDe[t],n=new RegExp(hDe[r]);if(n.test(e.trim().toLowerCase()))return r}return JA.log("Unrecognized country name: "+e+"."),!1}function izt(e,t,r){if(!t||typeof t!="string")return!1;var n=tzt[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;JA.log(["Location with id",n,"does not have a matching topojson feature at this resolution."].join(" "))}return!1}function nzt(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(MF.tester(f))}:n==="ATA"?a=function(c){var f=u(c);if(f===null)return i.push(MF.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=MF.tester(h);v.pts.pop(),i.push(v)}:a=function(c){i.push(MF.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 dDe(e){var t=e.geojson,r=window.PlotlyGeoAssets||{},n=typeof t=="string"?r[t]:t;return QFt(n)?n:(JA.error("Oops ... something went wrong when fetching "+t),!1)}function azt(e){var t=e[0].trace,r=dDe(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=ezt(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=ozt(v):v.properties.ct=[NaN,NaN],h.fIn=c,h.fOut=v,i.push(v)}else JA.log(["Location",h.loc,"does not have a valid GeoJSON geometry.","Traces with locationmode *geojson-id* only support","*Polygon* and *MultiPolygon* geometries."].join(" "))}delete n[f]}switch(r.type){case"FeatureCollection":var l=r.features;for(a=0;a<l.length;a++)s(l[a]);break;case"Feature":s(r);break;default:return JA.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)JA.log(["Location *"+u+"*","does not have a matching feature with id-key","*"+t.featureidkey+"*."].join(" "));return i}function ozt(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=KFt(o);s>i&&(i=s,r=o)}else r=t;return JFt(r).geometry.coordinates}function szt(e){var t=window.PlotlyGeoAssets||{},r=[];function n(l){return new Promise(function(u,c){YFt.json(l,function(f,h){if(f){delete t[l];var d=f.status===404?'GeoJSON at URL "'+l+'" does not exist.':"Unexpected error while fetching from "+l;return c(new Error(d))}return t[l]=h,u(h)})})}function i(l){return new Promise(function(u,c){var f=0,h=setInterval(function(){if(t[l]&&t[l]!=="pending")return clearInterval(h),u(t[l]);if(f>100)return clearInterval(h),c("Unexpected error while fetching from "+l);f++},50)})}for(var a=0;a<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 lzt(e){return $Ft(e)}vDe.exports={locationToFeature:izt,feature2polygons:nzt,getTraceGeojson:dDe,extractTraceFeature:azt,fetchTraceGeoData:szt,computeBbox:lzt}});var kZ=ye((pmr,mDe)=>{"use strict";var uzt=Oa(),czt=So(),pDe=ka(),gDe=op(),fzt=gDe.stylePoints,hzt=gDe.styleText;mDe.exports=function(t,r){r&&dzt(t,r)};function dzt(e,t){var r=t[0].trace,n=t[0].node3;n.style("opacity",t[0].trace.opacity),fzt(n,r,e),hzt(n,r,e),n.selectAll("path.js-line").style("fill","none").each(function(i){var a=uzt.select(this),o=i.trace,s=o.line||{};a.call(pDe.stroke,s.color).call(czt.dashLine,s.dash||"",s.width||0),o.fill!=="none"&&a.call(pDe.fill,o.fillcolor)})}});var IZ=ye((gmr,xDe)=>{"use strict";var yDe=Oa(),kF=Dr(),vzt=mF().getTopojsonFeatures,CZ=tx(),EF=ix(),_De=Ag().findExtremes,PZ=fs().BADNUM,pzt=O0().calcMarkerSize,LZ=Ru(),gzt=kZ();function mzt(e,t,r){var n=t.layers.frontplot.select(".scatterlayer"),i=kF.makeTraceGroups(n,r,"trace scattergeo");function a(o,s){o.lonlat[0]===PZ&&yDe.select(s).remove()}i.selectAll("*").remove(),i.each(function(o){var s=yDe.select(this),l=o[0].trace;if(LZ.hasLines(l)||l.fill!=="none"){var u=CZ.calcTraceToLineCoords(o),c=l.fill!=="none"?CZ.makePolygon(u):CZ.makeLine(u);s.selectAll("path.js-line").data([{geojson:c,trace:l}]).enter().append("path").classed("js-line",!0).style("stroke-miterlimit",2)}LZ.hasMarkers(l)&&s.selectAll("path.point").data(kF.identity).enter().append("path").classed("point",!0).each(function(f){a(f,this)}),LZ.hasText(l)&&s.selectAll("g").data(kF.identity).enter().append("g").append("text").each(function(f){a(f,this)}),gzt(e,o)})}function yzt(e,t){var r=e[0].trace,n=t[r.geo],i=n._subplot,a=r._length,o,s;if(kF.isArrayOrTypedArray(r.locations)){var l=r.locationmode,u=l==="geojson-id"?EF.extractTraceFeature(e):vzt(r,i.topojson);for(o=0;o<a;o++){s=e[o];var c=l==="geojson-id"?s.fOut:EF.locationToFeature(l,s.loc,u);s.lonlat=c?c.properties.ct:[PZ,PZ]}}var f={padded:!0},h,d;if(n.fitbounds==="geojson"&&r.locationmode==="geojson-id"){var v=EF.computeBbox(EF.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=pzt(r,a)}r._extremes.lon=_De(n.lonaxis._ax,h,f),r._extremes.lat=_De(n.lataxis._ax,d,f)}xDe.exports={calcGeoJSON:yzt,plot:mzt}});var wDe=ye((mmr,bDe)=>{"use strict";var _zt=vf(),xzt=fs().BADNUM,bzt=cT(),wzt=Dr().fillText,Tzt=j2();bDe.exports=function(t,r,n){var i=t.cd,a=i[0].trace,o=t.xa,s=t.ya,l=t.subplot,u=l.projection.isLonLatOverEdges,c=l.project;function f(k){var E=k.lonlat;if(E[0]===xzt||u(E))return 1/0;var S=c(E),L=c([r,n]),x=Math.abs(S[0]-L[0]),C=Math.abs(S[1]-L[1]),M=Math.max(3,k.mrc||0);return Math.max(Math.sqrt(x*x+C*C)-M,1-3/M)}if(_zt.getClosest(i,f,t),t.index!==!1){var h=i[t.index],d=h.lonlat,v=[o.c2p(d),s.c2p(d)],_=h.mrc||1;t.x0=v[0]-_,t.x1=v[0]+_,t.y0=v[1]-_,t.y1=v[1]+_,t.loc=h.loc,t.lon=d[0],t.lat=d[1];var b={};b[a.geo]={_subplot:l};var p=a._module.formatLabels(h,a,b);return t.lonLabel=p.lonLabel,t.latLabel=p.latLabel,t.color=bzt(a,h),t.extraText=Azt(a,h,t,i[0].t.labels),t.hovertemplate=a.hovertemplate,[t]}};function Azt(e,t,r,n){if(e.hovertemplate)return;var i=t.hi||e.hoverinfo,a=i==="all"?Tzt.hoverinfo.flags:i.split("+"),o=a.indexOf("location")!==-1&&Array.isArray(e.locations),s=a.indexOf("lon")!==-1,l=a.indexOf("lat")!==-1,u=a.indexOf("text")!==-1,c=[];function f(h){return h+"\xB0"}return o?c.push(t.loc):s&&l?c.push("("+f(r.latLabel)+", "+f(r.lonLabel)+")"):s?c.push(n.lon+f(r.lonLabel)):l&&c.push(n.lat+f(r.latLabel)),u&&wzt(t,e,c),c.join("<br>")}});var ADe=ye((ymr,TDe)=>{"use strict";TDe.exports=function(t,r,n,i,a){t.lon=r.lon,t.lat=r.lat,t.location=r.loc?r.loc:null;var o=i[a];return o.fIn&&o.fIn.properties&&(t.properties=o.fIn.properties),t}});var EDe=ye((_mr,MDe)=>{"use strict";var SDe=Ru(),Szt=fs().BADNUM;MDe.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=[],s=n[0].trace,l,u,c,f,h,d=!SDe.hasMarkers(s)&&!SDe.hasText(s);if(d)return[];if(r===!1)for(h=0;h<n.length;h++)n[h].selected=0;else for(h=0;h<n.length;h++)l=n[h],u=l.lonlat,u[0]!==Szt&&(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 nk=ye((CF,kDe)=>{(function(e,t){t(typeof CF=="object"&&typeof kDe!="undefined"?CF:e.d3=e.d3||{})})(CF,function(e){"use strict";function t(Le,Ae){return Le<Ae?-1:Le>Ae?1:Le>=Ae?0:NaN}function r(Le){return Le.length===1&&(Le=n(Le)),{left:function(Ae,Fe,Pe,ge){for(Pe==null&&(Pe=0),ge==null&&(ge=Ae.length);Pe<ge;){var Re=Pe+ge>>>1;Le(Ae[Re],Fe)<0?Pe=Re+1:ge=Re}return Pe},right:function(Ae,Fe,Pe,ge){for(Pe==null&&(Pe=0),ge==null&&(ge=Ae.length);Pe<ge;){var Re=Pe+ge>>>1;Le(Ae[Re],Fe)>0?ge=Re:Pe=Re+1}return Pe}}}function n(Le){return function(Ae,Fe){return t(Le(Ae),Fe)}}var i=r(t),a=i.right,o=i.left;function s(Le,Ae){Ae==null&&(Ae=l);for(var Fe=0,Pe=Le.length-1,ge=Le[0],Re=new Array(Pe<0?0:Pe);Fe<Pe;)Re[Fe]=Ae(ge,ge=Le[++Fe]);return Re}function l(Le,Ae){return[Le,Ae]}function u(Le,Ae,Fe){var Pe=Le.length,ge=Ae.length,Re=new Array(Pe*ge),ce,Ze,ut,pt;for(Fe==null&&(Fe=l),ce=ut=0;ce<Pe;++ce)for(pt=Le[ce],Ze=0;Ze<ge;++Ze,++ut)Re[ut]=Fe(pt,Ae[Ze]);return Re}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 Fe=Le.length,Pe=0,ge=-1,Re=0,ce,Ze,ut=0;if(Ae==null)for(;++ge<Fe;)isNaN(ce=f(Le[ge]))||(Ze=ce-Re,Re+=Ze/++Pe,ut+=Ze*(ce-Re));else for(;++ge<Fe;)isNaN(ce=f(Ae(Le[ge],ge,Le)))||(Ze=ce-Re,Re+=Ze/++Pe,ut+=Ze*(ce-Re));if(Pe>1)return ut/(Pe-1)}function d(Le,Ae){var Fe=h(Le,Ae);return Fe&&Math.sqrt(Fe)}function v(Le,Ae){var Fe=Le.length,Pe=-1,ge,Re,ce;if(Ae==null){for(;++Pe<Fe;)if((ge=Le[Pe])!=null&&ge>=ge)for(Re=ce=ge;++Pe<Fe;)(ge=Le[Pe])!=null&&(Re>ge&&(Re=ge),ce<ge&&(ce=ge))}else for(;++Pe<Fe;)if((ge=Ae(Le[Pe],Pe,Le))!=null&&ge>=ge)for(Re=ce=ge;++Pe<Fe;)(ge=Ae(Le[Pe],Pe,Le))!=null&&(Re>ge&&(Re=ge),ce<ge&&(ce=ge));return[Re,ce]}var _=Array.prototype,b=_.slice,p=_.map;function k(Le){return function(){return Le}}function E(Le){return Le}function S(Le,Ae,Fe){Le=+Le,Ae=+Ae,Fe=(ge=arguments.length)<2?(Ae=Le,Le=0,1):ge<3?1:+Fe;for(var Pe=-1,ge=Math.max(0,Math.ceil((Ae-Le)/Fe))|0,Re=new Array(ge);++Pe<ge;)Re[Pe]=Le+Pe*Fe;return Re}var L=Math.sqrt(50),x=Math.sqrt(10),C=Math.sqrt(2);function M(Le,Ae,Fe){var Pe,ge=-1,Re,ce,Ze;if(Ae=+Ae,Le=+Le,Fe=+Fe,Le===Ae&&Fe>0)return[Le];if((Pe=Ae<Le)&&(Re=Le,Le=Ae,Ae=Re),(Ze=g(Le,Ae,Fe))===0||!isFinite(Ze))return[];if(Ze>0)for(Le=Math.ceil(Le/Ze),Ae=Math.floor(Ae/Ze),ce=new Array(Re=Math.ceil(Ae-Le+1));++ge<Re;)ce[ge]=(Le+ge)*Ze;else for(Le=Math.floor(Le*Ze),Ae=Math.ceil(Ae*Ze),ce=new Array(Re=Math.ceil(Le-Ae+1));++ge<Re;)ce[ge]=(Le-ge)/Ze;return Pe&&ce.reverse(),ce}function g(Le,Ae,Fe){var Pe=(Ae-Le)/Math.max(0,Fe),ge=Math.floor(Math.log(Pe)/Math.LN10),Re=Pe/Math.pow(10,ge);return ge>=0?(Re>=L?10:Re>=x?5:Re>=C?2:1)*Math.pow(10,ge):-Math.pow(10,-ge)/(Re>=L?10:Re>=x?5:Re>=C?2:1)}function P(Le,Ae,Fe){var Pe=Math.abs(Ae-Le)/Math.max(0,Fe),ge=Math.pow(10,Math.floor(Math.log(Pe)/Math.LN10)),Re=Pe/ge;return Re>=L?ge*=10:Re>=x?ge*=5:Re>=C&&(ge*=2),Ae<Le?-ge:ge}function T(Le){return Math.ceil(Math.log(Le.length)/Math.LN2)+1}function z(){var Le=E,Ae=v,Fe=T;function Pe(ge){var Re,ce=ge.length,Ze,ut=new Array(ce);for(Re=0;Re<ce;++Re)ut[Re]=Le(ge[Re],Re,ge);var pt=Ae(ut),Zt=pt[0],st=pt[1],lt=Fe(ut,Zt,st);Array.isArray(lt)||(lt=P(Zt,st,lt),lt=S(Math.ceil(Zt/lt)*lt,st,lt));for(var Gt=lt.length;lt[0]<=Zt;)lt.shift(),--Gt;for(;lt[Gt-1]>st;)lt.pop(),--Gt;var Nt=new Array(Gt+1),Jt;for(Re=0;Re<=Gt;++Re)Jt=Nt[Re]=[],Jt.x0=Re>0?lt[Re-1]:Zt,Jt.x1=Re<Gt?lt[Re]:st;for(Re=0;Re<ce;++Re)Ze=ut[Re],Zt<=Ze&&Ze<=st&&Nt[a(lt,Ze,0,Gt)].push(ge[Re]);return Nt}return Pe.value=function(ge){return arguments.length?(Le=typeof ge=="function"?ge:k(ge),Pe):Le},Pe.domain=function(ge){return arguments.length?(Ae=typeof ge=="function"?ge:k([ge[0],ge[1]]),Pe):Ae},Pe.thresholds=function(ge){return arguments.length?(Fe=typeof ge=="function"?ge:Array.isArray(ge)?k(b.call(ge)):k(ge),Pe):Fe},Pe}function O(Le,Ae,Fe){if(Fe==null&&(Fe=f),!!(Pe=Le.length)){if((Ae=+Ae)<=0||Pe<2)return+Fe(Le[0],0,Le);if(Ae>=1)return+Fe(Le[Pe-1],Pe-1,Le);var Pe,ge=(Pe-1)*Ae,Re=Math.floor(ge),ce=+Fe(Le[Re],Re,Le),Ze=+Fe(Le[Re+1],Re+1,Le);return ce+(Ze-ce)*(ge-Re)}}function V(Le,Ae,Fe){return Le=p.call(Le,f).sort(t),Math.ceil((Fe-Ae)/(2*(O(Le,.75)-O(Le,.25))*Math.pow(Le.length,-1/3)))}function G(Le,Ae,Fe){return Math.ceil((Fe-Ae)/(3.5*d(Le)*Math.pow(Le.length,-1/3)))}function Z(Le,Ae){var Fe=Le.length,Pe=-1,ge,Re;if(Ae==null){for(;++Pe<Fe;)if((ge=Le[Pe])!=null&&ge>=ge)for(Re=ge;++Pe<Fe;)(ge=Le[Pe])!=null&&ge>Re&&(Re=ge)}else for(;++Pe<Fe;)if((ge=Ae(Le[Pe],Pe,Le))!=null&&ge>=ge)for(Re=ge;++Pe<Fe;)(ge=Ae(Le[Pe],Pe,Le))!=null&&ge>Re&&(Re=ge);return Re}function j(Le,Ae){var Fe=Le.length,Pe=Fe,ge=-1,Re,ce=0;if(Ae==null)for(;++ge<Fe;)isNaN(Re=f(Le[ge]))?--Pe:ce+=Re;else for(;++ge<Fe;)isNaN(Re=f(Ae(Le[ge],ge,Le)))?--Pe:ce+=Re;if(Pe)return ce/Pe}function N(Le,Ae){var Fe=Le.length,Pe=-1,ge,Re=[];if(Ae==null)for(;++Pe<Fe;)isNaN(ge=f(Le[Pe]))||Re.push(ge);else for(;++Pe<Fe;)isNaN(ge=f(Ae(Le[Pe],Pe,Le)))||Re.push(ge);return O(Re.sort(t),.5)}function H(Le){for(var Ae=Le.length,Fe,Pe=-1,ge=0,Re,ce;++Pe<Ae;)ge+=Le[Pe].length;for(Re=new Array(ge);--Ae>=0;)for(ce=Le[Ae],Fe=ce.length;--Fe>=0;)Re[--ge]=ce[Fe];return Re}function te(Le,Ae){var Fe=Le.length,Pe=-1,ge,Re;if(Ae==null){for(;++Pe<Fe;)if((ge=Le[Pe])!=null&&ge>=ge)for(Re=ge;++Pe<Fe;)(ge=Le[Pe])!=null&&Re>ge&&(Re=ge)}else for(;++Pe<Fe;)if((ge=Ae(Le[Pe],Pe,Le))!=null&&ge>=ge)for(Re=ge;++Pe<Fe;)(ge=Ae(Le[Pe],Pe,Le))!=null&&Re>ge&&(Re=ge);return Re}function oe(Le,Ae){for(var Fe=Ae.length,Pe=new Array(Fe);Fe--;)Pe[Fe]=Le[Ae[Fe]];return Pe}function _e(Le,Ae){if(Fe=Le.length){var Fe,Pe=0,ge=0,Re,ce=Le[ge];for(Ae==null&&(Ae=t);++Pe<Fe;)(Ae(Re=Le[Pe],ce)<0||Ae(ce,ce)!==0)&&(ce=Re,ge=Pe);if(Ae(ce,ce)===0)return ge}}function Ee(Le,Ae,Fe){for(var Pe=(Fe==null?Le.length:Fe)-(Ae=Ae==null?0:+Ae),ge,Re;Pe;)Re=Math.random()*Pe--|0,ge=Le[Pe+Ae],Le[Pe+Ae]=Le[Re+Ae],Le[Re+Ae]=ge;return Le}function Ce(Le,Ae){var Fe=Le.length,Pe=-1,ge,Re=0;if(Ae==null)for(;++Pe<Fe;)(ge=+Le[Pe])&&(Re+=ge);else for(;++Pe<Fe;)(ge=+Ae(Le[Pe],Pe,Le))&&(Re+=ge);return Re}function me(Le){if(!(Re=Le.length))return[];for(var Ae=-1,Fe=te(Le,ie),Pe=new Array(Fe);++Ae<Fe;)for(var ge=-1,Re,ce=Pe[Ae]=new Array(Re);++ge<Re;)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=j,e.median=N,e.merge=H,e.min=te,e.pairs=s,e.permute=oe,e.quantile=O,e.range=S,e.scan=_e,e.shuffle=Ee,e.sum=Ce,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 RZ=ye((LF,CDe)=>{(function(e,t){typeof LF=="object"&&typeof CDe!="undefined"?t(LF,nk()):(e=e||self,t(e.d3=e.d3||{},e.d3))})(LF,function(e,t){"use strict";function r(){return new n}function n(){this.reset()}n.prototype={constructor:n,reset:function(){this.s=this.t=0},add:function(At){a(i,At,this.t),a(this,i.s,this.s),this.s?this.t+=i.t:this.s=i.t},valueOf:function(){return this.s}};var i=new n;function a(At,Wt,Cr){var Ar=At.s=Wt+Cr,Kr=Ar-Wt,ki=Ar-Kr;At.t=Wt-ki+(Cr-Kr)}var o=1e-6,s=1e-12,l=Math.PI,u=l/2,c=l/4,f=l*2,h=180/l,d=l/180,v=Math.abs,_=Math.atan,b=Math.atan2,p=Math.cos,k=Math.ceil,E=Math.exp,S=Math.log,L=Math.pow,x=Math.sin,C=Math.sign||function(At){return At>0?1:At<0?-1:0},M=Math.sqrt,g=Math.tan;function P(At){return At>1?0:At<-1?l:Math.acos(At)}function T(At){return At>1?u:At<-1?-u:Math.asin(At)}function z(At){return(At=x(At/2))*At}function O(){}function V(At,Wt){At&&Z.hasOwnProperty(At.type)&&Z[At.type](At,Wt)}var G={Feature:function(At,Wt){V(At.geometry,Wt)},FeatureCollection:function(At,Wt){for(var Cr=At.features,Ar=-1,Kr=Cr.length;++Ar<Kr;)V(Cr[Ar].geometry,Wt)}},Z={Sphere:function(At,Wt){Wt.sphere()},Point:function(At,Wt){At=At.coordinates,Wt.point(At[0],At[1],At[2])},MultiPoint:function(At,Wt){for(var Cr=At.coordinates,Ar=-1,Kr=Cr.length;++Ar<Kr;)At=Cr[Ar],Wt.point(At[0],At[1],At[2])},LineString:function(At,Wt){j(At.coordinates,Wt,0)},MultiLineString:function(At,Wt){for(var Cr=At.coordinates,Ar=-1,Kr=Cr.length;++Ar<Kr;)j(Cr[Ar],Wt,0)},Polygon:function(At,Wt){N(At.coordinates,Wt)},MultiPolygon:function(At,Wt){for(var Cr=At.coordinates,Ar=-1,Kr=Cr.length;++Ar<Kr;)N(Cr[Ar],Wt)},GeometryCollection:function(At,Wt){for(var Cr=At.geometries,Ar=-1,Kr=Cr.length;++Ar<Kr;)V(Cr[Ar],Wt)}};function j(At,Wt,Cr){var Ar=-1,Kr=At.length-Cr,ki;for(Wt.lineStart();++Ar<Kr;)ki=At[Ar],Wt.point(ki[0],ki[1],ki[2]);Wt.lineEnd()}function N(At,Wt){var Cr=-1,Ar=At.length;for(Wt.polygonStart();++Cr<Ar;)j(At[Cr],Wt,1);Wt.polygonEnd()}function H(At,Wt){At&&G.hasOwnProperty(At.type)?G[At.type](At,Wt):V(At,Wt)}var te=r(),oe=r(),_e,Ee,Ce,me,ie,Se={point:O,lineStart:O,lineEnd:O,polygonStart:function(){te.reset(),Se.lineStart=Le,Se.lineEnd=Ae},polygonEnd:function(){var At=+te;oe.add(At<0?f+At:At),this.lineStart=this.lineEnd=this.point=O},sphere:function(){oe.add(f)}};function Le(){Se.point=Fe}function Ae(){Pe(_e,Ee)}function Fe(At,Wt){Se.point=Pe,_e=At,Ee=Wt,At*=d,Wt*=d,Ce=At,me=p(Wt=Wt/2+c),ie=x(Wt)}function Pe(At,Wt){At*=d,Wt*=d,Wt=Wt/2+c;var Cr=At-Ce,Ar=Cr>=0?1:-1,Kr=Ar*Cr,ki=p(Wt),Xi=x(Wt),dn=ie*Xi,wn=me*ki+dn*p(Kr),Nn=dn*Ar*x(Kr);te.add(b(Nn,wn)),Ce=At,me=ki,ie=Xi}function ge(At){return oe.reset(),H(At,Se),oe*2}function Re(At){return[b(At[1],At[0]),T(At[2])]}function ce(At){var Wt=At[0],Cr=At[1],Ar=p(Cr);return[Ar*p(Wt),Ar*x(Wt),x(Cr)]}function Ze(At,Wt){return At[0]*Wt[0]+At[1]*Wt[1]+At[2]*Wt[2]}function ut(At,Wt){return[At[1]*Wt[2]-At[2]*Wt[1],At[2]*Wt[0]-At[0]*Wt[2],At[0]*Wt[1]-At[1]*Wt[0]]}function pt(At,Wt){At[0]+=Wt[0],At[1]+=Wt[1],At[2]+=Wt[2]}function Zt(At,Wt){return[At[0]*Wt,At[1]*Wt,At[2]*Wt]}function st(At){var Wt=M(At[0]*At[0]+At[1]*At[1]+At[2]*At[2]);At[0]/=Wt,At[1]/=Wt,At[2]/=Wt}var lt,Gt,Nt,Jt,sr,wr,cr,$e,St=r(),Qt,Vt,_t={point:It,lineStart:er,lineEnd:lr,polygonStart:function(){_t.point=Tr,_t.lineStart=Lr,_t.lineEnd=ti,St.reset(),Se.polygonStart()},polygonEnd:function(){Se.polygonEnd(),_t.point=It,_t.lineStart=er,_t.lineEnd=lr,te<0?(lt=-(Nt=180),Gt=-(Jt=90)):St>o?Jt=90:St<-o&&(Gt=-90),Vt[0]=lt,Vt[1]=Nt},sphere:function(){lt=-(Nt=180),Gt=-(Jt=90)}};function It(At,Wt){Qt.push(Vt=[lt=At,Nt=At]),Wt<Gt&&(Gt=Wt),Wt>Jt&&(Jt=Wt)}function mt(At,Wt){var Cr=ce([At*d,Wt*d]);if($e){var Ar=ut($e,Cr),Kr=[Ar[1],-Ar[0],0],ki=ut(Kr,Ar);st(ki),ki=Re(ki);var Xi=At-sr,dn=Xi>0?1:-1,wn=ki[0]*h*dn,Nn,Yi=v(Xi)>180;Yi^(dn*sr<wn&&wn<dn*At)?(Nn=ki[1]*h,Nn>Jt&&(Jt=Nn)):(wn=(wn+360)%360-180,Yi^(dn*sr<wn&&wn<dn*At)?(Nn=-ki[1]*h,Nn<Gt&&(Gt=Nn)):(Wt<Gt&&(Gt=Wt),Wt>Jt&&(Jt=Wt))),Yi?At<sr?Br(lt,At)>Br(lt,Nt)&&(Nt=At):Br(At,Nt)>Br(lt,Nt)&&(lt=At):Nt>=lt?(At<lt&&(lt=At),At>Nt&&(Nt=At)):At>sr?Br(lt,At)>Br(lt,Nt)&&(Nt=At):Br(At,Nt)>Br(lt,Nt)&&(lt=At)}else Qt.push(Vt=[lt=At,Nt=At]);Wt<Gt&&(Gt=Wt),Wt>Jt&&(Jt=Wt),$e=Cr,sr=At}function er(){_t.point=mt}function lr(){Vt[0]=lt,Vt[1]=Nt,_t.point=It,$e=null}function Tr(At,Wt){if($e){var Cr=At-sr;St.add(v(Cr)>180?Cr+(Cr>0?360:-360):Cr)}else wr=At,cr=Wt;Se.point(At,Wt),mt(At,Wt)}function Lr(){Se.lineStart()}function ti(){Tr(wr,cr),Se.lineEnd(),v(St)>o&&(lt=-(Nt=180)),Vt[0]=lt,Vt[1]=Nt,$e=null}function Br(At,Wt){return(Wt-=At)<0?Wt+360:Wt}function Vr(At,Wt){return At[0]-Wt[0]}function dt(At,Wt){return At[0]<=At[1]?At[0]<=Wt&&Wt<=At[1]:Wt<At[0]||At[1]<Wt}function Ge(At){var Wt,Cr,Ar,Kr,ki,Xi,dn;if(Jt=Nt=-(lt=Gt=1/0),Qt=[],H(At,_t),Cr=Qt.length){for(Qt.sort(Vr),Wt=1,Ar=Qt[0],ki=[Ar];Wt<Cr;++Wt)Kr=Qt[Wt],dt(Ar,Kr[0])||dt(Ar,Kr[1])?(Br(Ar[0],Kr[1])>Br(Ar[0],Ar[1])&&(Ar[1]=Kr[1]),Br(Kr[0],Ar[1])>Br(Ar[0],Ar[1])&&(Ar[0]=Kr[0])):ki.push(Ar=Kr);for(Xi=-1/0,Cr=ki.length-1,Wt=0,Ar=ki[Cr];Wt<=Cr;Ar=Kr,++Wt)Kr=ki[Wt],(dn=Br(Ar[1],Kr[0]))>Xi&&(Xi=dn,lt=Kr[0],Nt=Ar[1])}return Qt=Vt=null,lt===1/0||Gt===1/0?[[NaN,NaN],[NaN,NaN]]:[[lt,Gt],[Nt,Jt]]}var Je,je,tt,xt,Ie,xe,ke,vt,ir,ar,vr,ii,pi,$r,di,ji,In={sphere:O,point:wi,lineStart:qn,lineEnd:la,polygonStart:function(){In.lineStart=Ut,In.lineEnd=wt},polygonEnd:function(){In.lineStart=qn,In.lineEnd=la}};function wi(At,Wt){At*=d,Wt*=d;var Cr=p(Wt);On(Cr*p(At),Cr*x(At),x(Wt))}function On(At,Wt,Cr){++Je,tt+=(At-tt)/Je,xt+=(Wt-xt)/Je,Ie+=(Cr-Ie)/Je}function qn(){In.point=Fn}function Fn(At,Wt){At*=d,Wt*=d;var Cr=p(Wt);$r=Cr*p(At),di=Cr*x(At),ji=x(Wt),In.point=ra,On($r,di,ji)}function ra(At,Wt){At*=d,Wt*=d;var Cr=p(Wt),Ar=Cr*p(At),Kr=Cr*x(At),ki=x(Wt),Xi=b(M((Xi=di*ki-ji*Kr)*Xi+(Xi=ji*Ar-$r*ki)*Xi+(Xi=$r*Kr-di*Ar)*Xi),$r*Ar+di*Kr+ji*ki);je+=Xi,xe+=Xi*($r+($r=Ar)),ke+=Xi*(di+(di=Kr)),vt+=Xi*(ji+(ji=ki)),On($r,di,ji)}function la(){In.point=wi}function Ut(){In.point=rr}function wt(){nr(ii,pi),In.point=wi}function rr(At,Wt){ii=At,pi=Wt,At*=d,Wt*=d,In.point=nr;var Cr=p(Wt);$r=Cr*p(At),di=Cr*x(At),ji=x(Wt),On($r,di,ji)}function nr(At,Wt){At*=d,Wt*=d;var Cr=p(Wt),Ar=Cr*p(At),Kr=Cr*x(At),ki=x(Wt),Xi=di*ki-ji*Kr,dn=ji*Ar-$r*ki,wn=$r*Kr-di*Ar,Nn=M(Xi*Xi+dn*dn+wn*wn),Yi=T(Nn),Qi=Nn&&-Yi/Nn;ir+=Qi*Xi,ar+=Qi*dn,vr+=Qi*wn,je+=Yi,xe+=Yi*($r+($r=Ar)),ke+=Yi*(di+(di=Kr)),vt+=Yi*(ji+(ji=ki)),On($r,di,ji)}function Er(At){Je=je=tt=xt=Ie=xe=ke=vt=ir=ar=vr=0,H(At,In);var Wt=ir,Cr=ar,Ar=vr,Kr=Wt*Wt+Cr*Cr+Ar*Ar;return Kr<s&&(Wt=xe,Cr=ke,Ar=vt,je<o&&(Wt=tt,Cr=xt,Ar=Ie),Kr=Wt*Wt+Cr*Cr+Ar*Ar,Kr<s)?[NaN,NaN]:[b(Cr,Wt)*h,T(Ar/M(Kr))*h]}function Xr(At){return function(){return At}}function ri(At,Wt){function Cr(Ar,Kr){return Ar=At(Ar,Kr),Wt(Ar[0],Ar[1])}return At.invert&&Wt.invert&&(Cr.invert=function(Ar,Kr){return Ar=Wt.invert(Ar,Kr),Ar&&At.invert(Ar[0],Ar[1])}),Cr}function Qr(At,Wt){return[v(At)>l?At+Math.round(-At/f)*f:At,Wt]}Qr.invert=Qr;function Oi(At,Wt,Cr){return(At%=f)?Wt||Cr?ri(tn(At),fn(Wt,Cr)):tn(At):Wt||Cr?fn(Wt,Cr):Qr}function $i(At){return function(Wt,Cr){return Wt+=At,[Wt>l?Wt-f:Wt<-l?Wt+f:Wt,Cr]}}function tn(At){var Wt=$i(At);return Wt.invert=$i(-At),Wt}function fn(At,Wt){var Cr=p(At),Ar=x(At),Kr=p(Wt),ki=x(Wt);function Xi(dn,wn){var Nn=p(wn),Yi=p(dn)*Nn,Qi=x(dn)*Nn,on=x(wn),Fi=on*Cr+Yi*Ar;return[b(Qi*Kr-Fi*ki,Yi*Cr-on*Ar),T(Fi*Kr+Qi*ki)]}return Xi.invert=function(dn,wn){var Nn=p(wn),Yi=p(dn)*Nn,Qi=x(dn)*Nn,on=x(wn),Fi=on*Kr-Qi*ki;return[b(Qi*Kr+on*ki,Yi*Cr+Fi*Ar),T(Fi*Cr-Yi*Ar)]},Xi}function yn(At){At=Oi(At[0]*d,At[1]*d,At.length>2?At[2]*d:0);function Wt(Cr){return Cr=At(Cr[0]*d,Cr[1]*d),Cr[0]*=h,Cr[1]*=h,Cr}return Wt.invert=function(Cr){return Cr=At.invert(Cr[0]*d,Cr[1]*d),Cr[0]*=h,Cr[1]*=h,Cr},Wt}function Sn(At,Wt,Cr,Ar,Kr,ki){if(Cr){var Xi=p(Wt),dn=x(Wt),wn=Ar*Cr;Kr==null?(Kr=Wt+Ar*f,ki=Wt-wn/2):(Kr=Ba(Xi,Kr),ki=Ba(Xi,ki),(Ar>0?Kr<ki:Kr>ki)&&(Kr+=Ar*f));for(var Nn,Yi=Kr;Ar>0?Yi>ki:Yi<ki;Yi-=wn)Nn=Re([Xi,-dn*p(Yi),-dn*x(Yi)]),At.point(Nn[0],Nn[1])}}function Ba(At,Wt){Wt=ce(Wt),Wt[0]-=At,st(Wt);var Cr=P(-Wt[1]);return((-Wt[2]<0?-Cr:Cr)+f-o)%f}function ua(){var At=Xr([0,0]),Wt=Xr(90),Cr=Xr(6),Ar,Kr,ki={point:Xi};function Xi(wn,Nn){Ar.push(wn=Kr(wn,Nn)),wn[0]*=h,wn[1]*=h}function dn(){var wn=At.apply(this,arguments),Nn=Wt.apply(this,arguments)*d,Yi=Cr.apply(this,arguments)*d;return Ar=[],Kr=Oi(-wn[0]*d,-wn[1]*d,0).invert,Sn(ki,Nn,Yi,1),wn={type:"Polygon",coordinates:[Ar]},Ar=Kr=null,wn}return dn.center=function(wn){return arguments.length?(At=typeof wn=="function"?wn:Xr([+wn[0],+wn[1]]),dn):At},dn.radius=function(wn){return arguments.length?(Wt=typeof wn=="function"?wn:Xr(+wn),dn):Wt},dn.precision=function(wn){return arguments.length?(Cr=typeof wn=="function"?wn:Xr(+wn),dn):Cr},dn}function ma(){var At=[],Wt;return{point:function(Cr,Ar,Kr){Wt.push([Cr,Ar,Kr])},lineStart:function(){At.push(Wt=[])},lineEnd:O,rejoin:function(){At.length>1&&At.push(At.pop().concat(At.shift()))},result:function(){var Cr=At;return At=[],Wt=null,Cr}}}function Wa(At,Wt){return v(At[0]-Wt[0])<o&&v(At[1]-Wt[1])<o}function Fa(At,Wt,Cr,Ar){this.x=At,this.z=Wt,this.o=Cr,this.e=Ar,this.v=!1,this.n=this.p=null}function Wo(At,Wt,Cr,Ar,Kr){var ki=[],Xi=[],dn,wn;if(At.forEach(function($n){if(!((Ca=$n.length-1)<=0)){var Ca,Ra=$n[0],La=$n[Ca],Na;if(Wa(Ra,La)){if(!Ra[2]&&!La[2]){for(Kr.lineStart(),dn=0;dn<Ca;++dn)Kr.point((Ra=$n[dn])[0],Ra[1]);Kr.lineEnd();return}La[0]+=2*o}ki.push(Na=new Fa(Ra,$n,null,!0)),Xi.push(Na.o=new Fa(Ra,null,Na,!1)),ki.push(Na=new Fa(La,$n,null,!1)),Xi.push(Na.o=new Fa(La,null,Na,!0))}}),!!ki.length){for(Xi.sort(Wt),da(ki),da(Xi),dn=0,wn=Xi.length;dn<wn;++dn)Xi[dn].e=Cr=!Cr;for(var Nn=ki[0],Yi,Qi;;){for(var on=Nn,Fi=!0;on.v;)if((on=on.n)===Nn)return;Yi=on.z,Kr.lineStart();do{if(on.v=on.o.v=!0,on.e){if(Fi)for(dn=0,wn=Yi.length;dn<wn;++dn)Kr.point((Qi=Yi[dn])[0],Qi[1]);else Ar(on.x,on.n.x,1,Kr);on=on.n}else{if(Fi)for(Yi=on.p.z,dn=Yi.length-1;dn>=0;--dn)Kr.point((Qi=Yi[dn])[0],Qi[1]);else Ar(on.x,on.p.x,-1,Kr);on=on.p}on=on.o,Yi=on.z,Fi=!Fi}while(!on.v);Kr.lineEnd()}}}function da(At){if(Wt=At.length){for(var Wt,Cr=0,Ar=At[0],Kr;++Cr<Wt;)Ar.n=Kr=At[Cr],Kr.p=Ar,Ar=Kr;Ar.n=Kr=At[0],Kr.p=Ar}}var Wn=r();function Ha(At){return v(At[0])<=l?At[0]:C(At[0])*((v(At[0])+l)%f-l)}function vo(At,Wt){var Cr=Ha(Wt),Ar=Wt[1],Kr=x(Ar),ki=[x(Cr),-p(Cr),0],Xi=0,dn=0;Wn.reset(),Kr===1?Ar=u+o:Kr===-1&&(Ar=-u-o);for(var wn=0,Nn=At.length;wn<Nn;++wn)if(Qi=(Yi=At[wn]).length)for(var Yi,Qi,on=Yi[Qi-1],Fi=Ha(on),$n=on[1]/2+c,Ca=x($n),Ra=p($n),La=0;La<Qi;++La,Fi=Yn,Ca=Ka,Ra=bo,on=Na){var Na=Yi[La],Yn=Ha(Na),Dn=Na[1]/2+c,Ka=x(Dn),bo=p(Dn),Xo=Yn-Fi,Ss=Xo>=0?1:-1,as=Ss*Xo,ws=as>l,Ho=Ca*Ka;if(Wn.add(b(Ho*Ss*x(as),Ra*bo+Ho*p(as))),Xi+=ws?Xo+Ss*f:Xo,ws^Fi>=Cr^Yn>=Cr){var ml=ut(ce(on),ce(Na));st(ml);var Ws=ut(ki,ml);st(Ws);var Ls=(ws^Xo>=0?-1:1)*T(Ws[2]);(Ar>Ls||Ar===Ls&&(ml[0]||ml[1]))&&(dn+=ws^Xo>=0?1:-1)}}return(Xi<-o||Xi<o&&Wn<-o)^dn&1}function jn(At,Wt,Cr,Ar){return function(Kr){var ki=Wt(Kr),Xi=ma(),dn=Wt(Xi),wn=!1,Nn,Yi,Qi,on={point:Fi,lineStart:Ca,lineEnd:Ra,polygonStart:function(){on.point=La,on.lineStart=Na,on.lineEnd=Yn,Yi=[],Nn=[]},polygonEnd:function(){on.point=Fi,on.lineStart=Ca,on.lineEnd=Ra,Yi=t.merge(Yi);var Dn=vo(Nn,Ar);Yi.length?(wn||(Kr.polygonStart(),wn=!0),Wo(Yi,kr,Dn,Cr,Kr)):Dn&&(wn||(Kr.polygonStart(),wn=!0),Kr.lineStart(),Cr(null,null,1,Kr),Kr.lineEnd()),wn&&(Kr.polygonEnd(),wn=!1),Yi=Nn=null},sphere:function(){Kr.polygonStart(),Kr.lineStart(),Cr(null,null,1,Kr),Kr.lineEnd(),Kr.polygonEnd()}};function Fi(Dn,Ka){At(Dn,Ka)&&Kr.point(Dn,Ka)}function $n(Dn,Ka){ki.point(Dn,Ka)}function Ca(){on.point=$n,ki.lineStart()}function Ra(){on.point=Fi,ki.lineEnd()}function La(Dn,Ka){Qi.push([Dn,Ka]),dn.point(Dn,Ka)}function Na(){dn.lineStart(),Qi=[]}function Yn(){La(Qi[0][0],Qi[0][1]),dn.lineEnd();var Dn=dn.clean(),Ka=Xi.result(),bo,Xo=Ka.length,Ss,as,ws;if(Qi.pop(),Nn.push(Qi),Qi=null,!!Xo){if(Dn&1){if(as=Ka[0],(Ss=as.length-1)>0){for(wn||(Kr.polygonStart(),wn=!0),Kr.lineStart(),bo=0;bo<Ss;++bo)Kr.point((ws=as[bo])[0],ws[1]);Kr.lineEnd()}return}Xo>1&&Dn&2&&Ka.push(Ka.pop().concat(Ka.shift())),Yi.push(Ka.filter(Mt))}}return on}}function Mt(At){return At.length>1}function kr(At,Wt){return((At=At.x)[0]<0?At[1]-u-o:u-At[1])-((Wt=Wt.x)[0]<0?Wt[1]-u-o:u-Wt[1])}var Jr=jn(function(){return!0},vi,An,[-l,-u]);function vi(At){var Wt=NaN,Cr=NaN,Ar=NaN,Kr;return{lineStart:function(){At.lineStart(),Kr=1},point:function(ki,Xi){var dn=ki>0?l:-l,wn=v(ki-Wt);v(wn-l)<o?(At.point(Wt,Cr=(Cr+Xi)/2>0?u:-u),At.point(Ar,Cr),At.lineEnd(),At.lineStart(),At.point(dn,Cr),At.point(ki,Cr),Kr=0):Ar!==dn&&wn>=l&&(v(Wt-Ar)<o&&(Wt-=Ar*o),v(ki-dn)<o&&(ki-=dn*o),Cr=hn(Wt,Cr,ki,Xi),At.point(Ar,Cr),At.lineEnd(),At.lineStart(),At.point(dn,Cr),Kr=0),At.point(Wt=ki,Cr=Xi),Ar=dn},lineEnd:function(){At.lineEnd(),Wt=Cr=NaN},clean:function(){return 2-Kr}}}function hn(At,Wt,Cr,Ar){var Kr,ki,Xi=x(At-Cr);return v(Xi)>o?_((x(Wt)*(ki=p(Ar))*x(Cr)-x(Ar)*(Kr=p(Wt))*x(At))/(Kr*ki*Xi)):(Wt+Ar)/2}function An(At,Wt,Cr,Ar){var Kr;if(At==null)Kr=Cr*u,Ar.point(-l,Kr),Ar.point(0,Kr),Ar.point(l,Kr),Ar.point(l,0),Ar.point(l,-Kr),Ar.point(0,-Kr),Ar.point(-l,-Kr),Ar.point(-l,0),Ar.point(-l,Kr);else if(v(At[0]-Wt[0])>o){var ki=At[0]<Wt[0]?l:-l;Kr=Cr*ki/2,Ar.point(-ki,Kr),Ar.point(0,Kr),Ar.point(ki,Kr)}else Ar.point(Wt[0],Wt[1])}function Mn(At){var Wt=p(At),Cr=6*d,Ar=Wt>0,Kr=v(Wt)>o;function ki(Yi,Qi,on,Fi){Sn(Fi,At,Cr,on,Yi,Qi)}function Xi(Yi,Qi){return p(Yi)*p(Qi)>Wt}function dn(Yi){var Qi,on,Fi,$n,Ca;return{lineStart:function(){$n=Fi=!1,Ca=1},point:function(Ra,La){var Na=[Ra,La],Yn,Dn=Xi(Ra,La),Ka=Ar?Dn?0:Nn(Ra,La):Dn?Nn(Ra+(Ra<0?l:-l),La):0;if(!Qi&&($n=Fi=Dn)&&Yi.lineStart(),Dn!==Fi&&(Yn=wn(Qi,Na),(!Yn||Wa(Qi,Yn)||Wa(Na,Yn))&&(Na[2]=1)),Dn!==Fi)Ca=0,Dn?(Yi.lineStart(),Yn=wn(Na,Qi),Yi.point(Yn[0],Yn[1])):(Yn=wn(Qi,Na),Yi.point(Yn[0],Yn[1],2),Yi.lineEnd()),Qi=Yn;else if(Kr&&Qi&&Ar^Dn){var bo;!(Ka&on)&&(bo=wn(Na,Qi,!0))&&(Ca=0,Ar?(Yi.lineStart(),Yi.point(bo[0][0],bo[0][1]),Yi.point(bo[1][0],bo[1][1]),Yi.lineEnd()):(Yi.point(bo[1][0],bo[1][1]),Yi.lineEnd(),Yi.lineStart(),Yi.point(bo[0][0],bo[0][1],3)))}Dn&&(!Qi||!Wa(Qi,Na))&&Yi.point(Na[0],Na[1]),Qi=Na,Fi=Dn,on=Ka},lineEnd:function(){Fi&&Yi.lineEnd(),Qi=null},clean:function(){return Ca|($n&&Fi)<<1}}}function wn(Yi,Qi,on){var Fi=ce(Yi),$n=ce(Qi),Ca=[1,0,0],Ra=ut(Fi,$n),La=Ze(Ra,Ra),Na=Ra[0],Yn=La-Na*Na;if(!Yn)return!on&&Yi;var Dn=Wt*La/Yn,Ka=-Wt*Na/Yn,bo=ut(Ca,Ra),Xo=Zt(Ca,Dn),Ss=Zt(Ra,Ka);pt(Xo,Ss);var as=bo,ws=Ze(Xo,as),Ho=Ze(as,as),ml=ws*ws-Ho*(Ze(Xo,Xo)-1);if(!(ml<0)){var Ws=M(ml),Ls=Zt(as,(-ws-Ws)/Ho);if(pt(Ls,Xo),Ls=Re(Ls),!on)return Ls;var va=Yi[0],no=Qi[0],ys=Yi[1],rs=Qi[1],$l;no<va&&($l=va,va=no,no=$l);var Cu=no-va,Yu=v(Cu-l)<o,Nc=Yu||Cu<o;if(!Yu&&rs<ys&&($l=ys,ys=rs,rs=$l),Nc?Yu?ys+rs>0^Ls[1]<(v(Ls[0]-va)<o?ys:rs):ys<=Ls[1]&&Ls[1]<=rs:Cu>l^(va<=Ls[0]&&Ls[0]<=no)){var pu=Zt(as,(-ws+Ws)/Ho);return pt(pu,Xo),[Ls,Re(pu)]}}}function Nn(Yi,Qi){var on=Ar?At:l-At,Fi=0;return Yi<-on?Fi|=1:Yi>on&&(Fi|=2),Qi<-on?Fi|=4:Qi>on&&(Fi|=8),Fi}return jn(Xi,dn,ki,Ar?[0,-At]:[-l,At-l])}function Li(At,Wt,Cr,Ar,Kr,ki){var Xi=At[0],dn=At[1],wn=Wt[0],Nn=Wt[1],Yi=0,Qi=1,on=wn-Xi,Fi=Nn-dn,$n;if($n=Cr-Xi,!(!on&&$n>0)){if($n/=on,on<0){if($n<Yi)return;$n<Qi&&(Qi=$n)}else if(on>0){if($n>Qi)return;$n>Yi&&(Yi=$n)}if($n=Kr-Xi,!(!on&&$n<0)){if($n/=on,on<0){if($n>Qi)return;$n>Yi&&(Yi=$n)}else if(on>0){if($n<Yi)return;$n<Qi&&(Qi=$n)}if($n=Ar-dn,!(!Fi&&$n>0)){if($n/=Fi,Fi<0){if($n<Yi)return;$n<Qi&&(Qi=$n)}else if(Fi>0){if($n>Qi)return;$n>Yi&&(Yi=$n)}if($n=ki-dn,!(!Fi&&$n<0)){if($n/=Fi,Fi<0){if($n>Qi)return;$n>Yi&&(Yi=$n)}else if(Fi>0){if($n<Yi)return;$n<Qi&&(Qi=$n)}return Yi>0&&(At[0]=Xi+Yi*on,At[1]=dn+Yi*Fi),Qi<1&&(Wt[0]=Xi+Qi*on,Wt[1]=dn+Qi*Fi),!0}}}}}var _n=1e9,ya=-_n;function Jn(At,Wt,Cr,Ar){function Kr(Nn,Yi){return At<=Nn&&Nn<=Cr&&Wt<=Yi&&Yi<=Ar}function ki(Nn,Yi,Qi,on){var Fi=0,$n=0;if(Nn==null||(Fi=Xi(Nn,Qi))!==($n=Xi(Yi,Qi))||wn(Nn,Yi)<0^Qi>0)do on.point(Fi===0||Fi===3?At:Cr,Fi>1?Ar:Wt);while((Fi=(Fi+Qi+4)%4)!==$n);else on.point(Yi[0],Yi[1])}function Xi(Nn,Yi){return v(Nn[0]-At)<o?Yi>0?0:3:v(Nn[0]-Cr)<o?Yi>0?2:1:v(Nn[1]-Wt)<o?Yi>0?1:0:Yi>0?3:2}function dn(Nn,Yi){return wn(Nn.x,Yi.x)}function wn(Nn,Yi){var Qi=Xi(Nn,1),on=Xi(Yi,1);return Qi!==on?Qi-on:Qi===0?Yi[1]-Nn[1]:Qi===1?Nn[0]-Yi[0]:Qi===2?Nn[1]-Yi[1]:Yi[0]-Nn[0]}return function(Nn){var Yi=Nn,Qi=ma(),on,Fi,$n,Ca,Ra,La,Na,Yn,Dn,Ka,bo,Xo={point:Ss,lineStart:ml,lineEnd:Ws,polygonStart:ws,polygonEnd:Ho};function Ss(va,no){Kr(va,no)&&Yi.point(va,no)}function as(){for(var va=0,no=0,ys=Fi.length;no<ys;++no)for(var rs=Fi[no],$l=1,Cu=rs.length,Yu=rs[0],Nc,pu,Uc=Yu[0],xu=Yu[1];$l<Cu;++$l)Nc=Uc,pu=xu,Yu=rs[$l],Uc=Yu[0],xu=Yu[1],pu<=Ar?xu>Ar&&(Uc-Nc)*(Ar-pu)>(xu-pu)*(At-Nc)&&++va:xu<=Ar&&(Uc-Nc)*(Ar-pu)<(xu-pu)*(At-Nc)&&--va;return va}function ws(){Yi=Qi,on=[],Fi=[],bo=!0}function Ho(){var va=as(),no=bo&&va,ys=(on=t.merge(on)).length;(no||ys)&&(Nn.polygonStart(),no&&(Nn.lineStart(),ki(null,null,1,Nn),Nn.lineEnd()),ys&&Wo(on,dn,va,ki,Nn),Nn.polygonEnd()),Yi=Nn,on=Fi=$n=null}function ml(){Xo.point=Ls,Fi&&Fi.push($n=[]),Ka=!0,Dn=!1,Na=Yn=NaN}function Ws(){on&&(Ls(Ca,Ra),La&&Dn&&Qi.rejoin(),on.push(Qi.result())),Xo.point=Ss,Dn&&Yi.lineEnd()}function Ls(va,no){var ys=Kr(va,no);if(Fi&&$n.push([va,no]),Ka)Ca=va,Ra=no,La=ys,Ka=!1,ys&&(Yi.lineStart(),Yi.point(va,no));else if(ys&&Dn)Yi.point(va,no);else{var rs=[Na=Math.max(ya,Math.min(_n,Na)),Yn=Math.max(ya,Math.min(_n,Yn))],$l=[va=Math.max(ya,Math.min(_n,va)),no=Math.max(ya,Math.min(_n,no))];Li(rs,$l,At,Wt,Cr,Ar)?(Dn||(Yi.lineStart(),Yi.point(rs[0],rs[1])),Yi.point($l[0],$l[1]),ys||Yi.lineEnd(),bo=!1):ys&&(Yi.lineStart(),Yi.point(va,no),bo=!1)}Na=va,Yn=no,Dn=ys}return Xo}}function Ma(){var At=0,Wt=0,Cr=960,Ar=500,Kr,ki,Xi;return Xi={stream:function(dn){return Kr&&ki===dn?Kr:Kr=Jn(At,Wt,Cr,Ar)(ki=dn)},extent:function(dn){return arguments.length?(At=+dn[0][0],Wt=+dn[0][1],Cr=+dn[1][0],Ar=+dn[1][1],Kr=ki=null,Xi):[[At,Wt],[Cr,Ar]]}}}var _o=r(),No,po,Lo,ko={sphere:O,point:O,lineStart:Ds,lineEnd:O,polygonStart:O,polygonEnd:O};function Ds(){ko.point=ll,ko.lineEnd=Fs}function Fs(){ko.point=ko.lineEnd=O}function ll(At,Wt){At*=d,Wt*=d,No=At,po=x(Wt),Lo=p(Wt),ko.point=ul}function ul(At,Wt){At*=d,Wt*=d;var Cr=x(Wt),Ar=p(Wt),Kr=v(At-No),ki=p(Kr),Xi=x(Kr),dn=Ar*Xi,wn=Lo*Cr-po*Ar*ki,Nn=po*Cr+Lo*Ar*ki;_o.add(b(M(dn*dn+wn*wn),Nn)),No=At,po=Cr,Lo=Ar}function zl(At){return _o.reset(),H(At,ko),+_o}var us=[null,null],il={type:"LineString",coordinates:us};function As(At,Wt){return us[0]=At,us[1]=Wt,zl(il)}var cl={Feature:function(At,Wt){return zs(At.geometry,Wt)},FeatureCollection:function(At,Wt){for(var Cr=At.features,Ar=-1,Kr=Cr.length;++Ar<Kr;)if(zs(Cr[Ar].geometry,Wt))return!0;return!1}},Ks={Sphere:function(){return!0},Point:function(At,Wt){return Io(At.coordinates,Wt)},MultiPoint:function(At,Wt){for(var Cr=At.coordinates,Ar=-1,Kr=Cr.length;++Ar<Kr;)if(Io(Cr[Ar],Wt))return!0;return!1},LineString:function(At,Wt){return ls(At.coordinates,Wt)},MultiLineString:function(At,Wt){for(var Cr=At.coordinates,Ar=-1,Kr=Cr.length;++Ar<Kr;)if(ls(Cr[Ar],Wt))return!0;return!1},Polygon:function(At,Wt){return Zl(At.coordinates,Wt)},MultiPolygon:function(At,Wt){for(var Cr=At.coordinates,Ar=-1,Kr=Cr.length;++Ar<Kr;)if(Zl(Cr[Ar],Wt))return!0;return!1},GeometryCollection:function(At,Wt){for(var Cr=At.geometries,Ar=-1,Kr=Cr.length;++Ar<Kr;)if(zs(Cr[Ar],Wt))return!0;return!1}};function zs(At,Wt){return At&&Ks.hasOwnProperty(At.type)?Ks[At.type](At,Wt):!1}function Io(At,Wt){return As(At,Wt)===0}function ls(At,Wt){for(var Cr,Ar,Kr,ki=0,Xi=At.length;ki<Xi;ki++){if(Ar=As(At[ki],Wt),Ar===0||ki>0&&(Kr=As(At[ki],At[ki-1]),Kr>0&&Cr<=Kr&&Ar<=Kr&&(Cr+Ar-Kr)*(1-Math.pow((Cr-Ar)/Kr,2))<s*Kr))return!0;Cr=Ar}return!1}function Zl(At,Wt){return!!vo(At.map(Su),nc(Wt))}function Su(At){return At=At.map(nc),At.pop(),At}function nc(At){return[At[0]*d,At[1]*d]}function bs(At,Wt){return(At&&cl.hasOwnProperty(At.type)?cl[At.type]:zs)(At,Wt)}function Rn(At,Wt,Cr){var Ar=t.range(At,Wt-o,Cr).concat(Wt);return function(Kr){return Ar.map(function(ki){return[Kr,ki]})}}function _a(At,Wt,Cr){var Ar=t.range(At,Wt-o,Cr).concat(Wt);return function(Kr){return Ar.map(function(ki){return[ki,Kr]})}}function Vu(){var At,Wt,Cr,Ar,Kr,ki,Xi,dn,wn=10,Nn=wn,Yi=90,Qi=360,on,Fi,$n,Ca,Ra=2.5;function La(){return{type:"MultiLineString",coordinates:Na()}}function Na(){return t.range(k(Ar/Yi)*Yi,Cr,Yi).map($n).concat(t.range(k(dn/Qi)*Qi,Xi,Qi).map(Ca)).concat(t.range(k(Wt/wn)*wn,At,wn).filter(function(Yn){return v(Yn%Yi)>o}).map(on)).concat(t.range(k(ki/Nn)*Nn,Kr,Nn).filter(function(Yn){return v(Yn%Qi)>o}).map(Fi))}return La.lines=function(){return Na().map(function(Yn){return{type:"LineString",coordinates:Yn}})},La.outline=function(){return{type:"Polygon",coordinates:[$n(Ar).concat(Ca(Xi).slice(1),$n(Cr).reverse().slice(1),Ca(dn).reverse().slice(1))]}},La.extent=function(Yn){return arguments.length?La.extentMajor(Yn).extentMinor(Yn):La.extentMinor()},La.extentMajor=function(Yn){return arguments.length?(Ar=+Yn[0][0],Cr=+Yn[1][0],dn=+Yn[0][1],Xi=+Yn[1][1],Ar>Cr&&(Yn=Ar,Ar=Cr,Cr=Yn),dn>Xi&&(Yn=dn,dn=Xi,Xi=Yn),La.precision(Ra)):[[Ar,dn],[Cr,Xi]]},La.extentMinor=function(Yn){return arguments.length?(Wt=+Yn[0][0],At=+Yn[1][0],ki=+Yn[0][1],Kr=+Yn[1][1],Wt>At&&(Yn=Wt,Wt=At,At=Yn),ki>Kr&&(Yn=ki,ki=Kr,Kr=Yn),La.precision(Ra)):[[Wt,ki],[At,Kr]]},La.step=function(Yn){return arguments.length?La.stepMajor(Yn).stepMinor(Yn):La.stepMinor()},La.stepMajor=function(Yn){return arguments.length?(Yi=+Yn[0],Qi=+Yn[1],La):[Yi,Qi]},La.stepMinor=function(Yn){return arguments.length?(wn=+Yn[0],Nn=+Yn[1],La):[wn,Nn]},La.precision=function(Yn){return arguments.length?(Ra=+Yn,on=Rn(ki,Kr,90),Fi=_a(Wt,At,Ra),$n=Rn(dn,Xi,90),Ca=_a(Ar,Cr,Ra),La):Ra},La.extentMajor([[-180,-90+o],[180,90-o]]).extentMinor([[-180,-80-o],[180,80+o]])}function Ol(){return Vu()()}function xo(At,Wt){var Cr=At[0]*d,Ar=At[1]*d,Kr=Wt[0]*d,ki=Wt[1]*d,Xi=p(Ar),dn=x(Ar),wn=p(ki),Nn=x(ki),Yi=Xi*p(Cr),Qi=Xi*x(Cr),on=wn*p(Kr),Fi=wn*x(Kr),$n=2*T(M(z(ki-Ar)+Xi*wn*z(Kr-Cr))),Ca=x($n),Ra=$n?function(La){var Na=x(La*=$n)/Ca,Yn=x($n-La)/Ca,Dn=Yn*Yi+Na*on,Ka=Yn*Qi+Na*Fi,bo=Yn*dn+Na*Nn;return[b(Ka,Dn)*h,b(bo,M(Dn*Dn+Ka*Ka))*h]}:function(){return[Cr*h,Ar*h]};return Ra.distance=$n,Ra}function Yl(At){return At}var Ns=r(),Hl=r(),ac,aa,Oo,qo,ql={point:O,lineStart:O,lineEnd:O,polygonStart:function(){ql.lineStart=Pc,ql.lineEnd=Uf},polygonEnd:function(){ql.lineStart=ql.lineEnd=ql.point=O,Ns.add(v(Hl)),Hl.reset()},result:function(){var At=Ns/2;return Ns.reset(),At}};function Pc(){ql.point=Do}function Do(At,Wt){ql.point=rf,ac=Oo=At,aa=qo=Wt}function rf(At,Wt){Hl.add(qo*At-Oo*Wt),Oo=At,qo=Wt}function Uf(){rf(ac,aa)}var pl=1/0,Zc=pl,Kl=-pl,Os=Kl,yu={point:oc,lineStart:O,lineEnd:O,polygonStart:O,polygonEnd:O,result:function(){var At=[[pl,Zc],[Kl,Os]];return Kl=Os=-(Zc=pl=1/0),At}};function oc(At,Wt){At<pl&&(pl=At),At>Kl&&(Kl=At),Wt<Zc&&(Zc=Wt),Wt>Os&&(Os=Wt)}var Cf=0,sc=0,Vh=0,Lf=0,cs=0,nf=0,Vf=0,Jl=0,fl=0,lc,Fu,Es,Hs,Go={point:ps,lineStart:uc,lineEnd:qs,polygonStart:function(){Go.lineStart=ad,Go.lineEnd=Po},polygonEnd:function(){Go.point=ps,Go.lineStart=uc,Go.lineEnd=qs},result:function(){var At=fl?[Vf/fl,Jl/fl]:nf?[Lf/nf,cs/nf]:Vh?[Cf/Vh,sc/Vh]:[NaN,NaN];return Cf=sc=Vh=Lf=cs=nf=Vf=Jl=fl=0,At}};function ps(At,Wt){Cf+=At,sc+=Wt,++Vh}function uc(){Go.point=xl}function xl(At,Wt){Go.point=Gu,ps(Es=At,Hs=Wt)}function Gu(At,Wt){var Cr=At-Es,Ar=Wt-Hs,Kr=M(Cr*Cr+Ar*Ar);Lf+=Kr*(Es+At)/2,cs+=Kr*(Hs+Wt)/2,nf+=Kr,ps(Es=At,Hs=Wt)}function qs(){Go.point=ps}function ad(){Go.point=od}function Po(){Yo(lc,Fu)}function od(At,Wt){Go.point=Yo,ps(lc=Es=At,Fu=Hs=Wt)}function Yo(At,Wt){var Cr=At-Es,Ar=Wt-Hs,Kr=M(Cr*Cr+Ar*Ar);Lf+=Kr*(Es+At)/2,cs+=Kr*(Hs+Wt)/2,nf+=Kr,Kr=Hs*At-Es*Wt,Vf+=Kr*(Es+At),Jl+=Kr*(Hs+Wt),fl+=Kr*3,ps(Es=At,Hs=Wt)}function Pa(At){this._context=At}Pa.prototype={_radius:4.5,pointRadius:function(At){return this._radius=At,this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){this._line===0&&this._context.closePath(),this._point=NaN},point:function(At,Wt){switch(this._point){case 0:{this._context.moveTo(At,Wt),this._point=1;break}case 1:{this._context.lineTo(At,Wt);break}default:{this._context.moveTo(At+this._radius,Wt),this._context.arc(At,Wt,this._radius,0,f);break}}},result:O};var af=r(),Hu,bl,Gf,Ic,yf,Bl={point:O,lineStart:function(){Bl.point=wh},lineEnd:function(){Hu&&Qf(bl,Gf),Bl.point=O},polygonStart:function(){Hu=!0},polygonEnd:function(){Hu=null},result:function(){var At=+af;return af.reset(),At}};function wh(At,Wt){Bl.point=Qf,bl=Ic=At,Gf=yf=Wt}function Qf(At,Wt){Ic-=At,yf-=Wt,af.add(M(Ic*Ic+yf*yf)),Ic=At,yf=Wt}function _f(){this._string=[]}_f.prototype={_radius:4.5,_circle:Yc(4.5),pointRadius:function(At){return(At=+At)!==this._radius&&(this._radius=At,this._circle=null),this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){this._line===0&&this._string.push("Z"),this._point=NaN},point:function(At,Wt){switch(this._point){case 0:{this._string.push("M",At,",",Wt),this._point=1;break}case 1:{this._string.push("L",At,",",Wt);break}default:{this._circle==null&&(this._circle=Yc(this._radius)),this._string.push("M",At,",",Wt,this._circle);break}}},result:function(){if(this._string.length){var At=this._string.join("");return this._string=[],At}else return null}};function Yc(At){return"m0,"+At+"a"+At+","+At+" 0 1,1 0,"+-2*At+"a"+At+","+At+" 0 1,1 0,"+2*At+"z"}function eh(At,Wt){var Cr=4.5,Ar,Kr;function ki(Xi){return Xi&&(typeof Cr=="function"&&Kr.pointRadius(+Cr.apply(this,arguments)),H(Xi,Ar(Kr))),Kr.result()}return ki.area=function(Xi){return H(Xi,Ar(ql)),ql.result()},ki.measure=function(Xi){return H(Xi,Ar(Bl)),Bl.result()},ki.bounds=function(Xi){return H(Xi,Ar(yu)),yu.result()},ki.centroid=function(Xi){return H(Xi,Ar(Go)),Go.result()},ki.projection=function(Xi){return arguments.length?(Ar=Xi==null?(At=null,Yl):(At=Xi).stream,ki):At},ki.context=function(Xi){return arguments.length?(Kr=Xi==null?(Wt=null,new _f):new Pa(Wt=Xi),typeof Cr!="function"&&Kr.pointRadius(Cr),ki):Wt},ki.pointRadius=function(Xi){return arguments.length?(Cr=typeof Xi=="function"?Xi:(Kr.pointRadius(+Xi),+Xi),ki):Cr},ki.projection(At).context(Wt)}function th(At){return{stream:ju(At)}}function ju(At){return function(Wt){var Cr=new Hf;for(var Ar in At)Cr[Ar]=At[Ar];return Cr.stream=Wt,Cr}}function Hf(){}Hf.prototype={constructor:Hf,point:function(At,Wt){this.stream.point(At,Wt)},sphere:function(){this.stream.sphere()},lineStart:function(){this.stream.lineStart()},lineEnd:function(){this.stream.lineEnd()},polygonStart:function(){this.stream.polygonStart()},polygonEnd:function(){this.stream.polygonEnd()}};function cc(At,Wt,Cr){var Ar=At.clipExtent&&At.clipExtent();return At.scale(150).translate([0,0]),Ar!=null&&At.clipExtent(null),H(Cr,At.stream(yu)),Wt(yu.result()),Ar!=null&&At.clipExtent(Ar),At}function of(At,Wt,Cr){return cc(At,function(Ar){var Kr=Wt[1][0]-Wt[0][0],ki=Wt[1][1]-Wt[0][1],Xi=Math.min(Kr/(Ar[1][0]-Ar[0][0]),ki/(Ar[1][1]-Ar[0][1])),dn=+Wt[0][0]+(Kr-Xi*(Ar[1][0]+Ar[0][0]))/2,wn=+Wt[0][1]+(ki-Xi*(Ar[1][1]+Ar[0][1]))/2;At.scale(150*Xi).translate([dn,wn])},Cr)}function Nl(At,Wt,Cr){return of(At,[[0,0],Wt],Cr)}function Kc(At,Wt,Cr){return cc(At,function(Ar){var Kr=+Wt,ki=Kr/(Ar[1][0]-Ar[0][0]),Xi=(Kr-ki*(Ar[1][0]+Ar[0][0]))/2,dn=-ki*Ar[0][1];At.scale(150*ki).translate([Xi,dn])},Cr)}function Rc(At,Wt,Cr){return cc(At,function(Ar){var Kr=+Wt,ki=Kr/(Ar[1][1]-Ar[0][1]),Xi=-ki*Ar[0][0],dn=(Kr-ki*(Ar[1][1]+Ar[0][1]))/2;At.scale(150*ki).translate([Xi,dn])},Cr)}var gs=16,jf=p(30*d);function Gh(At,Wt){return+Wt?sf(At,Wt):rh(At)}function rh(At){return ju({point:function(Wt,Cr){Wt=At(Wt,Cr),this.stream.point(Wt[0],Wt[1])}})}function sf(At,Wt){function Cr(Ar,Kr,ki,Xi,dn,wn,Nn,Yi,Qi,on,Fi,$n,Ca,Ra){var La=Nn-Ar,Na=Yi-Kr,Yn=La*La+Na*Na;if(Yn>4*Wt&&Ca--){var Dn=Xi+on,Ka=dn+Fi,bo=wn+$n,Xo=M(Dn*Dn+Ka*Ka+bo*bo),Ss=T(bo/=Xo),as=v(v(bo)-1)<o||v(ki-Qi)<o?(ki+Qi)/2:b(Ka,Dn),ws=At(as,Ss),Ho=ws[0],ml=ws[1],Ws=Ho-Ar,Ls=ml-Kr,va=Na*Ws-La*Ls;(va*va/Yn>Wt||v((La*Ws+Na*Ls)/Yn-.5)>.3||Xi*on+dn*Fi+wn*$n<jf)&&(Cr(Ar,Kr,ki,Xi,dn,wn,Ho,ml,as,Dn/=Xo,Ka/=Xo,bo,Ca,Ra),Ra.point(Ho,ml),Cr(Ho,ml,as,Dn,Ka,bo,Nn,Yi,Qi,on,Fi,$n,Ca,Ra))}}return function(Ar){var Kr,ki,Xi,dn,wn,Nn,Yi,Qi,on,Fi,$n,Ca,Ra={point:La,lineStart:Na,lineEnd:Dn,polygonStart:function(){Ar.polygonStart(),Ra.lineStart=Ka},polygonEnd:function(){Ar.polygonEnd(),Ra.lineStart=Na}};function La(Ss,as){Ss=At(Ss,as),Ar.point(Ss[0],Ss[1])}function Na(){Qi=NaN,Ra.point=Yn,Ar.lineStart()}function Yn(Ss,as){var ws=ce([Ss,as]),Ho=At(Ss,as);Cr(Qi,on,Yi,Fi,$n,Ca,Qi=Ho[0],on=Ho[1],Yi=Ss,Fi=ws[0],$n=ws[1],Ca=ws[2],gs,Ar),Ar.point(Qi,on)}function Dn(){Ra.point=La,Ar.lineEnd()}function Ka(){Na(),Ra.point=bo,Ra.lineEnd=Xo}function bo(Ss,as){Yn(Kr=Ss,as),ki=Qi,Xi=on,dn=Fi,wn=$n,Nn=Ca,Ra.point=Yn}function Xo(){Cr(Qi,on,Yi,Fi,$n,Ca,ki,Xi,Kr,dn,wn,Nn,gs,Ar),Ra.lineEnd=Dn,Dn()}return Ra}}var Th=ju({point:function(At,Wt){this.stream.point(At*d,Wt*d)}});function Mu(At){return ju({point:function(Wt,Cr){var Ar=At(Wt,Cr);return this.stream.point(Ar[0],Ar[1])}})}function ih(At,Wt,Cr,Ar,Kr){function ki(Xi,dn){return Xi*=Ar,dn*=Kr,[Wt+At*Xi,Cr-At*dn]}return ki.invert=function(Xi,dn){return[(Xi-Wt)/At*Ar,(Cr-dn)/At*Kr]},ki}function js(At,Wt,Cr,Ar,Kr,ki){var Xi=p(ki),dn=x(ki),wn=Xi*At,Nn=dn*At,Yi=Xi/At,Qi=dn/At,on=(dn*Cr-Xi*Wt)/At,Fi=(dn*Wt+Xi*Cr)/At;function $n(Ca,Ra){return Ca*=Ar,Ra*=Kr,[wn*Ca-Nn*Ra+Wt,Cr-Nn*Ca-wn*Ra]}return $n.invert=function(Ca,Ra){return[Ar*(Yi*Ca-Qi*Ra+on),Kr*(Fi-Qi*Ca-Yi*Ra)]},$n}function Eu(At){return Dc(function(){return At})()}function Dc(At){var Wt,Cr=150,Ar=480,Kr=250,ki=0,Xi=0,dn=0,wn=0,Nn=0,Yi,Qi=0,on=1,Fi=1,$n=null,Ca=Jr,Ra=null,La,Na,Yn,Dn=Yl,Ka=.5,bo,Xo,Ss,as,ws;function Ho(va){return Ss(va[0]*d,va[1]*d)}function ml(va){return va=Ss.invert(va[0],va[1]),va&&[va[0]*h,va[1]*h]}Ho.stream=function(va){return as&&ws===va?as:as=Th(Mu(Yi)(Ca(bo(Dn(ws=va)))))},Ho.preclip=function(va){return arguments.length?(Ca=va,$n=void 0,Ls()):Ca},Ho.postclip=function(va){return arguments.length?(Dn=va,Ra=La=Na=Yn=null,Ls()):Dn},Ho.clipAngle=function(va){return arguments.length?(Ca=+va?Mn($n=va*d):($n=null,Jr),Ls()):$n*h},Ho.clipExtent=function(va){return arguments.length?(Dn=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]),Ls()):Ra==null?null:[[Ra,La],[Na,Yn]]},Ho.scale=function(va){return arguments.length?(Cr=+va,Ws()):Cr},Ho.translate=function(va){return arguments.length?(Ar=+va[0],Kr=+va[1],Ws()):[Ar,Kr]},Ho.center=function(va){return arguments.length?(ki=va[0]%360*d,Xi=va[1]%360*d,Ws()):[ki*h,Xi*h]},Ho.rotate=function(va){return arguments.length?(dn=va[0]%360*d,wn=va[1]%360*d,Nn=va.length>2?va[2]%360*d:0,Ws()):[dn*h,wn*h,Nn*h]},Ho.angle=function(va){return arguments.length?(Qi=va%360*d,Ws()):Qi*h},Ho.reflectX=function(va){return arguments.length?(on=va?-1:1,Ws()):on<0},Ho.reflectY=function(va){return arguments.length?(Fi=va?-1:1,Ws()):Fi<0},Ho.precision=function(va){return arguments.length?(bo=Gh(Xo,Ka=va*va),Ls()):M(Ka)},Ho.fitExtent=function(va,no){return of(Ho,va,no)},Ho.fitSize=function(va,no){return Nl(Ho,va,no)},Ho.fitWidth=function(va,no){return Kc(Ho,va,no)},Ho.fitHeight=function(va,no){return Rc(Ho,va,no)};function Ws(){var va=js(Cr,0,0,on,Fi,Qi).apply(null,Wt(ki,Xi)),no=(Qi?js:ih)(Cr,Ar-va[0],Kr-va[1],on,Fi,Qi);return Yi=Oi(dn,wn,Nn),Xo=ri(Wt,no),Ss=ri(Yi,Xo),bo=Gh(Xo,Ka),Ls()}function Ls(){return as=ws=null,Ho}return function(){return Wt=At.apply(this,arguments),Ho.invert=Wt.invert&&ml,Ws()}}function ks(At){var Wt=0,Cr=l/3,Ar=Dc(At),Kr=Ar(Wt,Cr);return Kr.parallels=function(ki){return arguments.length?Ar(Wt=ki[0]*d,Cr=ki[1]*d):[Wt*h,Cr*h]},Kr}function bc(At){var Wt=p(At);function Cr(Ar,Kr){return[Ar*Wt,x(Kr)/Wt]}return Cr.invert=function(Ar,Kr){return[Ar/Wt,T(Kr*Wt)]},Cr}function hu(At,Wt){var Cr=x(At),Ar=(Cr+x(Wt))/2;if(v(Ar)<o)return bc(At);var Kr=1+Cr*(2*Ar-Cr),ki=M(Kr)/Ar;function Xi(dn,wn){var Nn=M(Kr-2*Ar*x(wn))/Ar;return[Nn*x(dn*=Ar),ki-Nn*p(dn)]}return Xi.invert=function(dn,wn){var Nn=ki-wn,Yi=b(dn,v(Nn))*C(Nn);return Nn*Ar<0&&(Yi-=l*C(dn)*C(Nn)),[Yi/Ar,T((Kr-(dn*dn+Nn*Nn)*Ar*Ar)/(2*Ar))]},Xi}function _u(){return ks(hu).scale(155.424).center([0,33.6442])}function nl(){return _u().parallels([29.5,45.5]).scale(1070).translate([480,250]).rotate([96,0]).center([-.6,38.7])}function nh(At){var Wt=At.length;return{point:function(Cr,Ar){for(var Kr=-1;++Kr<Wt;)At[Kr].point(Cr,Ar)},sphere:function(){for(var Cr=-1;++Cr<Wt;)At[Cr].sphere()},lineStart:function(){for(var Cr=-1;++Cr<Wt;)At[Cr].lineStart()},lineEnd:function(){for(var Cr=-1;++Cr<Wt;)At[Cr].lineEnd()},polygonStart:function(){for(var Cr=-1;++Cr<Wt;)At[Cr].polygonStart()},polygonEnd:function(){for(var Cr=-1;++Cr<Wt;)At[Cr].polygonEnd()}}}function Ah(){var At,Wt,Cr=nl(),Ar,Kr=_u().rotate([154,0]).center([-2,58.5]).parallels([55,65]),ki,Xi=_u().rotate([157,0]).center([-3,19.9]).parallels([8,18]),dn,wn,Nn={point:function(on,Fi){wn=[on,Fi]}};function Yi(on){var Fi=on[0],$n=on[1];return wn=null,Ar.point(Fi,$n),wn||(ki.point(Fi,$n),wn)||(dn.point(Fi,$n),wn)}Yi.invert=function(on){var Fi=Cr.scale(),$n=Cr.translate(),Ca=(on[0]-$n[0])/Fi,Ra=(on[1]-$n[1])/Fi;return(Ra>=.12&&Ra<.234&&Ca>=-.425&&Ca<-.214?Kr:Ra>=.166&&Ra<.234&&Ca>=-.214&&Ca<-.115?Xi:Cr).invert(on)},Yi.stream=function(on){return At&&Wt===on?At:At=nh([Cr.stream(Wt=on),Kr.stream(on),Xi.stream(on)])},Yi.precision=function(on){return arguments.length?(Cr.precision(on),Kr.precision(on),Xi.precision(on),Qi()):Cr.precision()},Yi.scale=function(on){return arguments.length?(Cr.scale(on),Kr.scale(on*.35),Xi.scale(on),Yi.translate(Cr.translate())):Cr.scale()},Yi.translate=function(on){if(!arguments.length)return Cr.translate();var Fi=Cr.scale(),$n=+on[0],Ca=+on[1];return Ar=Cr.translate(on).clipExtent([[$n-.455*Fi,Ca-.238*Fi],[$n+.455*Fi,Ca+.238*Fi]]).stream(Nn),ki=Kr.translate([$n-.307*Fi,Ca+.201*Fi]).clipExtent([[$n-.425*Fi+o,Ca+.12*Fi+o],[$n-.214*Fi-o,Ca+.234*Fi-o]]).stream(Nn),dn=Xi.translate([$n-.205*Fi,Ca+.212*Fi]).clipExtent([[$n-.214*Fi+o,Ca+.166*Fi+o],[$n-.115*Fi-o,Ca+.234*Fi-o]]).stream(Nn),Qi()},Yi.fitExtent=function(on,Fi){return of(Yi,on,Fi)},Yi.fitSize=function(on,Fi){return Nl(Yi,on,Fi)},Yi.fitWidth=function(on,Fi){return Kc(Yi,on,Fi)},Yi.fitHeight=function(on,Fi){return Rc(Yi,on,Fi)};function Qi(){return At=Wt=null,Yi}return Yi.scale(1070)}function zu(At){return function(Wt,Cr){var Ar=p(Wt),Kr=p(Cr),ki=At(Ar*Kr);return[ki*Kr*x(Wt),ki*x(Cr)]}}function Fc(At){return function(Wt,Cr){var Ar=M(Wt*Wt+Cr*Cr),Kr=At(Ar),ki=x(Kr),Xi=p(Kr);return[b(Wt*ki,Ar*Xi),T(Ar&&Cr*ki/Ar)]}}var wc=zu(function(At){return M(2/(1+At))});wc.invert=Fc(function(At){return 2*T(At/2)});function bd(){return Eu(wc).scale(124.75).clipAngle(180-.001)}var xf=zu(function(At){return(At=P(At))&&At/x(At)});xf.invert=Fc(function(At){return At});function Pf(){return Eu(xf).scale(79.4188).clipAngle(180-.001)}function Ou(At,Wt){return[At,S(g((u+Wt)/2))]}Ou.invert=function(At,Wt){return[At,2*_(E(Wt))-u]};function bf(){return jl(Ou).scale(961/f)}function jl(At){var Wt=Eu(At),Cr=Wt.center,Ar=Wt.scale,Kr=Wt.translate,ki=Wt.clipExtent,Xi=null,dn,wn,Nn;Wt.scale=function(Qi){return arguments.length?(Ar(Qi),Yi()):Ar()},Wt.translate=function(Qi){return arguments.length?(Kr(Qi),Yi()):Kr()},Wt.center=function(Qi){return arguments.length?(Cr(Qi),Yi()):Cr()},Wt.clipExtent=function(Qi){return arguments.length?(Qi==null?Xi=dn=wn=Nn=null:(Xi=+Qi[0][0],dn=+Qi[0][1],wn=+Qi[1][0],Nn=+Qi[1][1]),Yi()):Xi==null?null:[[Xi,dn],[wn,Nn]]};function Yi(){var Qi=l*Ar(),on=Wt(yn(Wt.rotate()).invert([0,0]));return ki(Xi==null?[[on[0]-Qi,on[1]-Qi],[on[0]+Qi,on[1]+Qi]]:At===Ou?[[Math.max(on[0]-Qi,Xi),dn],[Math.min(on[0]+Qi,wn),Nn]]:[[Xi,Math.max(on[1]-Qi,dn)],[wn,Math.min(on[1]+Qi,Nn)]])}return Yi()}function lf(At){return g((u+At)/2)}function Hh(At,Wt){var Cr=p(At),Ar=At===Wt?x(At):S(Cr/p(Wt))/S(lf(Wt)/lf(At)),Kr=Cr*L(lf(At),Ar)/Ar;if(!Ar)return Ou;function ki(Xi,dn){Kr>0?dn<-u+o&&(dn=-u+o):dn>u-o&&(dn=u-o);var wn=Kr/L(lf(dn),Ar);return[wn*x(Ar*Xi),Kr-wn*p(Ar*Xi)]}return ki.invert=function(Xi,dn){var wn=Kr-dn,Nn=C(Ar)*M(Xi*Xi+wn*wn),Yi=b(Xi,v(wn))*C(wn);return wn*Ar<0&&(Yi-=l*C(Xi)*C(wn)),[Yi/Ar,2*_(L(Kr/Nn,1/Ar))-u]},ki}function If(){return ks(Hh).scale(109.5).parallels([30,30])}function Cs(At,Wt){return[At,Wt]}Cs.invert=Cs;function du(){return Eu(Cs).scale(152.63)}function ku(At,Wt){var Cr=p(At),Ar=At===Wt?x(At):(Cr-p(Wt))/(Wt-At),Kr=Cr/Ar+At;if(v(Ar)<o)return Cs;function ki(Xi,dn){var wn=Kr-dn,Nn=Ar*Xi;return[wn*x(Nn),Kr-wn*p(Nn)]}return ki.invert=function(Xi,dn){var wn=Kr-dn,Nn=b(Xi,v(wn))*C(wn);return wn*Ar<0&&(Nn-=l*C(Xi)*C(wn)),[Nn/Ar,Kr-C(Ar)*M(Xi*Xi+wn*wn)]},ki}function Wf(){return ks(ku).scale(131.154).center([0,13.9389])}var Us=1.340264,wf=-.081106,zc=893e-6,Wu=.003796,Rf=M(3)/2,Xu=12;function uf(At,Wt){var Cr=T(Rf*x(Wt)),Ar=Cr*Cr,Kr=Ar*Ar*Ar;return[At*p(Cr)/(Rf*(Us+3*wf*Ar+Kr*(7*zc+9*Wu*Ar))),Cr*(Us+wf*Ar+Kr*(zc+Wu*Ar))]}uf.invert=function(At,Wt){for(var Cr=Wt,Ar=Cr*Cr,Kr=Ar*Ar*Ar,ki=0,Xi,dn,wn;ki<Xu&&(dn=Cr*(Us+wf*Ar+Kr*(zc+Wu*Ar))-Wt,wn=Us+3*wf*Ar+Kr*(7*zc+9*Wu*Ar),Cr-=Xi=dn/wn,Ar=Cr*Cr,Kr=Ar*Ar*Ar,!(v(Xi)<s));++ki);return[Rf*At*(Us+3*wf*Ar+Kr*(7*zc+9*Wu*Ar))/p(Cr),T(x(Cr)/Rf)]};function Xf(){return Eu(uf).scale(177.158)}function Wl(At,Wt){var Cr=p(Wt),Ar=p(At)*Cr;return[Cr*x(At)/Ar,x(Wt)/Ar]}Wl.invert=Fc(_);function ah(){return Eu(Wl).scale(144.049).clipAngle(60)}function Zu(){var At=1,Wt=0,Cr=0,Ar=1,Kr=1,ki=0,Xi,dn,wn=null,Nn,Yi,Qi,on=1,Fi=1,$n=ju({point:function(Dn,Ka){var bo=Yn([Dn,Ka]);this.stream.point(bo[0],bo[1])}}),Ca=Yl,Ra,La;function Na(){return on=At*Ar,Fi=At*Kr,Ra=La=null,Yn}function Yn(Dn){var Ka=Dn[0]*on,bo=Dn[1]*Fi;if(ki){var Xo=bo*Xi-Ka*dn;Ka=Ka*Xi+bo*dn,bo=Xo}return[Ka+Wt,bo+Cr]}return Yn.invert=function(Dn){var Ka=Dn[0]-Wt,bo=Dn[1]-Cr;if(ki){var Xo=bo*Xi+Ka*dn;Ka=Ka*Xi-bo*dn,bo=Xo}return[Ka/on,bo/Fi]},Yn.stream=function(Dn){return Ra&&La===Dn?Ra:Ra=$n(Ca(La=Dn))},Yn.postclip=function(Dn){return arguments.length?(Ca=Dn,wn=Nn=Yi=Qi=null,Na()):Ca},Yn.clipExtent=function(Dn){return arguments.length?(Ca=Dn==null?(wn=Nn=Yi=Qi=null,Yl):Jn(wn=+Dn[0][0],Nn=+Dn[0][1],Yi=+Dn[1][0],Qi=+Dn[1][1]),Na()):wn==null?null:[[wn,Nn],[Yi,Qi]]},Yn.scale=function(Dn){return arguments.length?(At=+Dn,Na()):At},Yn.translate=function(Dn){return arguments.length?(Wt=+Dn[0],Cr=+Dn[1],Na()):[Wt,Cr]},Yn.angle=function(Dn){return arguments.length?(ki=Dn%360*d,dn=x(ki),Xi=p(ki),Na()):ki*h},Yn.reflectX=function(Dn){return arguments.length?(Ar=Dn?-1:1,Na()):Ar<0},Yn.reflectY=function(Dn){return arguments.length?(Kr=Dn?-1:1,Na()):Kr<0},Yn.fitExtent=function(Dn,Ka){return of(Yn,Dn,Ka)},Yn.fitSize=function(Dn,Ka){return Nl(Yn,Dn,Ka)},Yn.fitWidth=function(Dn,Ka){return Kc(Yn,Dn,Ka)},Yn.fitHeight=function(Dn,Ka){return Rc(Yn,Dn,Ka)},Yn}function Oc(At,Wt){var Cr=Wt*Wt,Ar=Cr*Cr;return[At*(.8707-.131979*Cr+Ar*(-.013791+Ar*(.003971*Cr-.001529*Ar))),Wt*(1.007226+Cr*(.015085+Ar*(-.044475+.028874*Cr-.005916*Ar)))]}Oc.invert=function(At,Wt){var Cr=Wt,Ar=25,Kr;do{var ki=Cr*Cr,Xi=ki*ki;Cr-=Kr=(Cr*(1.007226+ki*(.015085+Xi*(-.044475+.028874*ki-.005916*Xi)))-Wt)/(1.007226+ki*(.015085*3+Xi*(-.044475*7+.028874*9*ki-.005916*11*Xi)))}while(v(Kr)>o&&--Ar>0);return[At/(.8707+(ki=Cr*Cr)*(-.131979+ki*(-.013791+ki*ki*ki*(.003971-.001529*ki)))),Cr]};function Tc(){return Eu(Oc).scale(175.295)}function wl(At,Wt){return[p(Wt)*x(At),x(Wt)]}wl.invert=Fc(T);function vu(){return Eu(wl).scale(249.5).clipAngle(90+o)}function qc(At,Wt){var Cr=p(Wt),Ar=1+p(At)*Cr;return[Cr*x(At)/Ar,x(Wt)/Ar]}qc.invert=Fc(function(At){return 2*_(At)});function cf(){return Eu(qc).scale(250).clipAngle(142)}function fc(At,Wt){return[S(g((u+Wt)/2)),-At]}fc.invert=function(At,Wt){return[-Wt,2*_(E(At))-u]};function Bc(){var At=jl(fc),Wt=At.center,Cr=At.rotate;return At.center=function(Ar){return arguments.length?Wt([-Ar[1],Ar[0]]):(Ar=Wt(),[Ar[1],-Ar[0]])},At.rotate=function(Ar){return arguments.length?Cr([Ar[0],Ar[1],Ar.length>2?Ar[2]+90:90]):(Ar=Cr(),[Ar[0],Ar[1],Ar[2]-90])},Cr([0,0,90]).scale(159.155)}e.geoAlbers=nl,e.geoAlbersUsa=Ah,e.geoArea=ge,e.geoAzimuthalEqualArea=bd,e.geoAzimuthalEqualAreaRaw=wc,e.geoAzimuthalEquidistant=Pf,e.geoAzimuthalEquidistantRaw=xf,e.geoBounds=Ge,e.geoCentroid=Er,e.geoCircle=ua,e.geoClipAntimeridian=Jr,e.geoClipCircle=Mn,e.geoClipExtent=Ma,e.geoClipRectangle=Jn,e.geoConicConformal=If,e.geoConicConformalRaw=Hh,e.geoConicEqualArea=_u,e.geoConicEqualAreaRaw=hu,e.geoConicEquidistant=Wf,e.geoConicEquidistantRaw=ku,e.geoContains=bs,e.geoDistance=As,e.geoEqualEarth=Xf,e.geoEqualEarthRaw=uf,e.geoEquirectangular=du,e.geoEquirectangularRaw=Cs,e.geoGnomonic=ah,e.geoGnomonicRaw=Wl,e.geoGraticule=Vu,e.geoGraticule10=Ol,e.geoIdentity=Zu,e.geoInterpolate=xo,e.geoLength=zl,e.geoMercator=bf,e.geoMercatorRaw=Ou,e.geoNaturalEarth1=Tc,e.geoNaturalEarth1Raw=Oc,e.geoOrthographic=vu,e.geoOrthographicRaw=wl,e.geoPath=eh,e.geoProjection=Eu,e.geoProjectionMutator=Dc,e.geoRotation=yn,e.geoStereographic=cf,e.geoStereographicRaw=qc,e.geoStream=H,e.geoTransform=th,e.geoTransverseMercator=Bc,e.geoTransverseMercatorRaw=fc,Object.defineProperty(e,"__esModule",{value:!0})})});var PDe=ye((PF,LDe)=>{(function(e,t){typeof PF=="object"&&typeof LDe!="undefined"?t(PF,RZ(),nk()):t(e.d3=e.d3||{},e.d3,e.d3)})(PF,function(e,t,r){"use strict";var n=Math.abs,i=Math.atan,a=Math.atan2,o=Math.cos,s=Math.exp,l=Math.floor,u=Math.log,c=Math.max,f=Math.min,h=Math.pow,d=Math.round,v=Math.sign||function(ve){return ve>0?1:ve<0?-1:0},_=Math.sin,b=Math.tan,p=1e-6,k=1e-12,E=Math.PI,S=E/2,L=E/4,x=Math.SQRT1_2,C=G(2),M=G(E),g=E*2,P=180/E,T=E/180;function z(ve){return ve?ve/Math.sin(ve):1}function O(ve){return ve>1?S:ve<-1?-S:Math.asin(ve)}function V(ve){return ve>1?0:ve<-1?E:Math.acos(ve)}function G(ve){return ve>0?Math.sqrt(ve):0}function Z(ve){return ve=s(2*ve),(ve-1)/(ve+1)}function j(ve){return(s(ve)-s(-ve))/2}function N(ve){return(s(ve)+s(-ve))/2}function H(ve){return u(ve+G(ve*ve+1))}function te(ve){return u(ve+G(ve*ve-1))}function oe(ve){var be=b(ve/2),De=2*u(o(ve/2))/(be*be);function Be(et,We){var it=o(et),Ft=o(We),Ht=_(We),tr=Ft*it,dr=-((1-tr?u((1+tr)/2)/(1-tr):-.5)+De/(1+tr));return[dr*Ft*_(et),dr*Ht]}return Be.invert=function(et,We){var it=G(et*et+We*We),Ft=-ve/2,Ht=50,tr;if(!it)return[0,0];do{var dr=Ft/2,Sr=o(dr),Or=_(dr),Wr=Or/Sr,ni=-u(n(Sr));Ft-=tr=(2/Wr*ni-De*Wr-it)/(-ni/(Or*Or)+1-De/(2*Sr*Sr))*(Sr<0?.7:1)}while(n(tr)>p&&--Ht>0);var Pi=_(Ft);return[a(et*Pi,it*o(Ft)),O(We*Pi/it)]},Be}function _e(){var ve=S,be=t.geoProjectionMutator(oe),De=be(ve);return De.radius=function(Be){return arguments.length?be(ve=Be*T):ve*P},De.scale(179.976).clipAngle(147)}function Ee(ve,be){var De=o(be),Be=z(V(De*o(ve/=2)));return[2*De*_(ve)*Be,_(be)*Be]}Ee.invert=function(ve,be){if(!(ve*ve+4*be*be>E*E+p)){var De=ve,Be=be,et=25;do{var We=_(De),it=_(De/2),Ft=o(De/2),Ht=_(Be),tr=o(Be),dr=_(2*Be),Sr=Ht*Ht,Or=tr*tr,Wr=it*it,ni=1-Or*Ft*Ft,Pi=ni?V(tr*Ft)*G(cn=1/ni):cn=0,cn,ln=2*Pi*tr*it-ve,Cn=Pi*Ht-be,Kn=cn*(Or*Wr+Pi*tr*Ft*Sr),Ta=cn*(.5*We*dr-Pi*2*Ht*it),fa=cn*.25*(dr*it-Pi*Ht*Or*We),$a=cn*(Sr*Ft+Pi*Wr*tr),Co=Ta*fa-$a*Kn;if(!Co)break;var Qa=(Cn*Ta-ln*$a)/Co,mo=(ln*fa-Cn*Kn)/Co;De-=Qa,Be-=mo}while((n(Qa)>p||n(mo)>p)&&--et>0);return[De,Be]}};function Ce(){return t.geoProjection(Ee).scale(152.63)}function me(ve){var be=_(ve),De=o(ve),Be=ve>=0?1:-1,et=b(Be*ve),We=(1+be-De)/2;function it(Ft,Ht){var tr=o(Ht),dr=o(Ft/=2);return[(1+tr)*_(Ft),(Be*Ht>-a(dr,et)-.001?0:-Be*10)+We+_(Ht)*De-(1+tr)*be*dr]}return it.invert=function(Ft,Ht){var tr=0,dr=0,Sr=50;do{var Or=o(tr),Wr=_(tr),ni=o(dr),Pi=_(dr),cn=1+ni,ln=cn*Wr-Ft,Cn=We+Pi*De-cn*be*Or-Ht,Kn=cn*Or/2,Ta=-Wr*Pi,fa=be*cn*Wr/2,$a=De*ni+be*Or*Pi,Co=Ta*fa-$a*Kn,Qa=(Cn*Ta-ln*$a)/Co/2,mo=(ln*fa-Cn*Kn)/Co;n(mo)>2&&(mo/=2),tr-=Qa,dr-=mo}while((n(Qa)>p||n(mo)>p)&&--Sr>0);return Be*dr>-a(o(tr),et)-.001?[tr*2,dr]:null},it}function ie(){var ve=20*T,be=ve>=0?1:-1,De=b(be*ve),Be=t.geoProjectionMutator(me),et=Be(ve),We=et.stream;return et.parallel=function(it){return arguments.length?(De=b((be=(ve=it*T)>=0?1:-1)*ve),Be(ve)):ve*P},et.stream=function(it){var Ft=et.rotate(),Ht=We(it),tr=(et.rotate([0,0]),We(it)),dr=et.precision();return et.rotate(Ft),Ht.sphere=function(){tr.polygonStart(),tr.lineStart();for(var Sr=be*-180;be*Sr<180;Sr+=be*90)tr.point(Sr,be*90);if(ve)for(;be*(Sr-=3*be*dr)>=-180;)tr.point(Sr,be*-a(o(Sr*T/2),De)*P);tr.lineEnd(),tr.polygonEnd()},Ht},et.scale(218.695).center([0,28.0974])}function Se(ve,be){var De=b(be/2),Be=G(1-De*De),et=1+Be*o(ve/=2),We=_(ve)*Be/et,it=De/et,Ft=We*We,Ht=it*it;return[4/3*We*(3+Ft-3*Ht),4/3*it*(3+3*Ft-Ht)]}Se.invert=function(ve,be){if(ve*=3/8,be*=3/8,!ve&&n(be)>1)return null;var De=ve*ve,Be=be*be,et=1+De+Be,We=G((et-G(et*et-4*be*be))/2),it=O(We)/3,Ft=We?te(n(be/We))/3:H(n(ve))/3,Ht=o(it),tr=N(Ft),dr=tr*tr-Ht*Ht;return[v(ve)*2*a(j(Ft)*Ht,.25-dr),v(be)*2*a(tr*_(it),.25+dr)]};function Le(){return t.geoProjection(Se).scale(66.1603)}var Ae=G(8),Fe=u(1+C);function Pe(ve,be){var De=n(be);return De<L?[ve,u(b(L+be/2))]:[ve*o(De)*(2*C-1/_(De)),v(be)*(2*C*(De-L)-u(b(De/2)))]}Pe.invert=function(ve,be){if((We=n(be))<Fe)return[ve,2*i(s(be))-S];var De=L,Be=25,et,We;do{var it=o(De/2),Ft=b(De/2);De-=et=(Ae*(De-L)-u(Ft)-We)/(Ae-it*it/(2*Ft))}while(n(et)>k&&--Be>0);return[ve/(o(De)*(Ae-1/_(De))),v(be)*De]};function ge(){return t.geoProjection(Pe).scale(112.314)}function Re(ve){var be=2*E/ve;function De(Be,et){var We=t.geoAzimuthalEquidistantRaw(Be,et);if(n(Be)>S){var it=a(We[1],We[0]),Ft=G(We[0]*We[0]+We[1]*We[1]),Ht=be*d((it-S)/be)+S,tr=a(_(it-=Ht),2-o(it));it=Ht+O(E/Ft*_(tr))-tr,We[0]=Ft*o(it),We[1]=Ft*_(it)}return We}return De.invert=function(Be,et){var We=G(Be*Be+et*et);if(We>S){var it=a(et,Be),Ft=be*d((it-S)/be)+S,Ht=it>Ft?-1:1,tr=We*o(Ft-it),dr=1/b(Ht*V((tr-E)/G(E*(E-2*tr)+We*We)));it=Ft+2*i((dr+Ht*G(dr*dr-3))/3),Be=We*o(it),et=We*_(it)}return t.geoAzimuthalEquidistantRaw.invert(Be,et)},De}function ce(){var ve=5,be=t.geoProjectionMutator(Re),De=be(ve),Be=De.stream,et=.01,We=-o(et*T),it=_(et*T);return De.lobes=function(Ft){return arguments.length?be(ve=+Ft):ve},De.stream=function(Ft){var Ht=De.rotate(),tr=Be(Ft),dr=(De.rotate([0,0]),Be(Ft));return De.rotate(Ht),tr.sphere=function(){dr.polygonStart(),dr.lineStart();for(var Sr=0,Or=360/ve,Wr=2*E/ve,ni=90-180/ve,Pi=S;Sr<ve;++Sr,ni-=Or,Pi-=Wr)dr.point(a(it*o(Pi),We)*P,O(it*_(Pi))*P),ni<-90?(dr.point(-90,-180-ni-et),dr.point(-90,-180-ni+et)):(dr.point(90,ni+et),dr.point(90,ni-et));dr.lineEnd(),dr.polygonEnd()},tr},De.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 ut;function De(Be,et){var We=t.geoAzimuthalEqualAreaRaw(Be/be,et);return We[0]*=ve,We}return De.invert=function(Be,et){var We=t.geoAzimuthalEqualAreaRaw.invert(Be/ve,et);return We[0]*=be,We},De}function ut(ve,be){return[ve*o(be)/o(be/=2),2*_(be)]}ut.invert=function(ve,be){var De=2*O(be/2);return[ve*o(De/2)/o(De),De]};function pt(){var ve=2,be=t.geoProjectionMutator(Ze),De=be(ve);return De.coefficient=function(Be){return arguments.length?be(ve=+Be):ve},De.scale(169.529)}function Zt(ve,be,De){var Be=100,et,We,it;De=De===void 0?0:+De,be=+be;do We=ve(De),it=ve(De+p),We===it&&(it=We+p),De-=et=-1*p*(We-be)/(We-it);while(Be-- >0&&n(et)>p);return Be<0?NaN:De}function st(ve,be,De){return be===void 0&&(be=40),De===void 0&&(De=k),function(Be,et,We,it){var Ft,Ht,tr;We=We===void 0?0:+We,it=it===void 0?0:+it;for(var dr=0;dr<be;dr++){var Sr=ve(We,it),Or=Sr[0]-Be,Wr=Sr[1]-et;if(n(Or)<De&&n(Wr)<De)break;var ni=Or*Or+Wr*Wr;if(ni>Ft){We-=Ht/=2,it-=tr/=2;continue}Ft=ni;var Pi=(We>0?-1:1)*De,cn=(it>0?-1:1)*De,ln=ve(We+Pi,it),Cn=ve(We,it+cn),Kn=(ln[0]-Sr[0])/Pi,Ta=(ln[1]-Sr[1])/Pi,fa=(Cn[0]-Sr[0])/cn,$a=(Cn[1]-Sr[1])/cn,Co=$a*Kn-Ta*fa,Qa=(n(Co)<.5?.5:1)/Co;if(Ht=(Wr*fa-Or*$a)*Qa,tr=(Or*Ta-Wr*Kn)*Qa,We+=Ht,it+=tr,n(Ht)<De&&n(tr)<De)break}return[We,it]}}function lt(){var ve=Ze(1.68,2),be=1.4,De=12;function Be(et,We){if(et+We<-be){var it=(et-We+1.6)*(et+We+be)/8;et+=it,We-=.8*it*_(We+E/2)}var Ft=ve(et,We),Ht=(1-o(et*We))/De;return Ft[1]<0&&(Ft[0]*=1+Ht),Ft[1]>0&&(Ft[1]*=1+Ht/1.5*Ft[0]*Ft[0]),Ft}return Be.invert=st(Be),Be}function Gt(){return t.geoProjection(lt()).rotate([-16.5,-42]).scale(176.57).center([7.93,.09])}function Nt(ve,be){var De=ve*_(be),Be=30,et;do be-=et=(be+_(be)-De)/(1+o(be));while(n(et)>p&&--Be>0);return be/2}function Jt(ve,be,De){function Be(et,We){return[ve*et*o(We=Nt(De,We)),be*_(We)]}return Be.invert=function(et,We){return We=O(We/be),[et/(ve*o(We)),O((2*We+_(2*We))/De)]},Be}var sr=Jt(C/S,C,E);function wr(){return t.geoProjection(sr).scale(169.529)}var cr=2.00276,$e=1.11072;function St(ve,be){var De=Nt(E,be);return[cr*ve/(1/o(be)+$e/o(De)),(be+C*_(De))/cr]}St.invert=function(ve,be){var De=cr*be,Be=be<0?-L:L,et=25,We,it;do it=De-C*_(Be),Be-=We=(_(2*Be)+2*Be-E*_(it))/(2*o(2*Be)+2+E*o(it)*C*o(Be));while(n(We)>p&&--et>0);return it=De-C*_(Be),[ve*(1/o(it)+$e/o(Be))/cr,it]};function Qt(){return t.geoProjection(St).scale(160.857)}function Vt(ve){var be=0,De=t.geoProjectionMutator(ve),Be=De(be);return Be.parallel=function(et){return arguments.length?De(be=et*T):be*P},Be}function _t(ve,be){return[ve*o(be),be]}_t.invert=function(ve,be){return[ve/o(be),be]};function It(){return t.geoProjection(_t).scale(152.63)}function mt(ve){if(!ve)return _t;var be=1/b(ve);function De(Be,et){var We=be+ve-et,it=We&&Be*o(et)/We;return[We*_(it),be-We*o(it)]}return De.invert=function(Be,et){var We=G(Be*Be+(et=be-et)*et),it=be+ve-We;return[We/o(it)*a(Be,et),it]},De}function er(){return Vt(mt).scale(123.082).center([0,26.1441]).parallel(45)}function lr(ve){function be(De,Be){var et=S-Be,We=et&&De*ve*_(et)/et;return[et*_(We)/ve,S-et*o(We)]}return be.invert=function(De,Be){var et=De*ve,We=S-Be,it=G(et*et+We*We),Ft=a(et,We);return[(it?it/_(it):1)*Ft/ve,S-it]},be}function Tr(){var ve=.5,be=t.geoProjectionMutator(lr),De=be(ve);return De.fraction=function(Be){return arguments.length?be(ve=+Be):ve},De.scale(158.837)}var Lr=Jt(1,4/E,E);function ti(){return t.geoProjection(Lr).scale(152.63)}function Br(ve,be,De,Be,et,We){var it=o(We),Ft;if(n(ve)>1||n(We)>1)Ft=V(De*et+be*Be*it);else{var Ht=_(ve/2),tr=_(We/2);Ft=2*O(G(Ht*Ht+be*Be*tr*tr))}return n(Ft)>p?[Ft,a(Be*_(We),be*et-De*Be*it)]:[0,0]}function Vr(ve,be,De){return V((ve*ve+be*be-De*De)/(2*ve*be))}function dt(ve){return ve-2*E*l((ve+E)/(2*E))}function Ge(ve,be,De){for(var Be=[[ve[0],ve[1],_(ve[1]),o(ve[1])],[be[0],be[1],_(be[1]),o(be[1])],[De[0],De[1],_(De[1]),o(De[1])]],et=Be[2],We,it=0;it<3;++it,et=We)We=Be[it],et.v=Br(We[1]-et[1],et[3],et[2],We[3],We[2],We[0]-et[0]),et.point=[0,0];var Ft=Vr(Be[0].v[0],Be[2].v[0],Be[1].v[0]),Ht=Vr(Be[0].v[0],Be[1].v[0],Be[2].v[0]),tr=E-Ft;Be[2].point[1]=0,Be[0].point[0]=-(Be[1].point[0]=Be[0].v[0]/2);var dr=[Be[2].point[0]=Be[0].point[0]+Be[2].v[0]*o(Ft),2*(Be[0].point[1]=Be[1].point[1]=Be[2].v[0]*_(Ft))];function Sr(Or,Wr){var ni=_(Wr),Pi=o(Wr),cn=new Array(3),ln;for(ln=0;ln<3;++ln){var Cn=Be[ln];if(cn[ln]=Br(Wr-Cn[1],Cn[3],Cn[2],Pi,ni,Or-Cn[0]),!cn[ln][0])return Cn.point;cn[ln][1]=dt(cn[ln][1]-Cn.v[1])}var Kn=dr.slice();for(ln=0;ln<3;++ln){var Ta=ln==2?0:ln+1,fa=Vr(Be[ln].v[0],cn[ln][0],cn[Ta][0]);cn[ln][1]<0&&(fa=-fa),ln?ln==1?(fa=Ht-fa,Kn[0]-=cn[ln][0]*o(fa),Kn[1]-=cn[ln][0]*_(fa)):(fa=tr-fa,Kn[0]+=cn[ln][0]*o(fa),Kn[1]+=cn[ln][0]*_(fa)):(Kn[0]+=cn[ln][0]*o(fa),Kn[1]-=cn[ln][0]*_(fa))}return Kn[0]/=3,Kn[1]/=3,Kn}return Sr}function Je(ve){return ve[0]*=T,ve[1]*=T,ve}function je(){return tt([0,22],[45,22],[22.5,-22]).scale(380).center([22.5,2])}function tt(ve,be,De){var Be=t.geoCentroid({type:"MultiPoint",coordinates:[ve,be,De]}),et=[-Be[0],-Be[1]],We=t.geoRotation(et),it=Ge(Je(We(ve)),Je(We(be)),Je(We(De)));it.invert=st(it);var Ft=t.geoProjection(it).rotate(et),Ht=Ft.center;return delete Ft.rotate,Ft.center=function(tr){return arguments.length?Ht(We(tr)):We.invert(Ht())},Ft.clipAngle(90)}function xt(ve,be){var De=G(1-_(be));return[2/M*ve*De,M*(1-De)]}xt.invert=function(ve,be){var De=(De=be/M-1)*De;return[De>0?ve*G(E/De)/2:0,O(1-De)]};function Ie(){return t.geoProjection(xt).scale(95.6464).center([0,30])}function xe(ve){var be=b(ve);function De(Be,et){return[Be,(Be?Be/_(Be):1)*(_(et)*o(Be)-be*o(et))]}return De.invert=be?function(Be,et){Be&&(et*=_(Be)/Be);var We=o(Be);return[Be,2*a(G(We*We+be*be-et*et)-We,be-et)]}:function(Be,et){return[Be,O(Be?et*b(Be)/Be:et)]},De}function ke(){return Vt(xe).scale(249.828).clipAngle(90)}var vt=G(3);function ir(ve,be){return[vt*ve*(2*o(2*be/3)-1)/M,vt*M*_(be/3)]}ir.invert=function(ve,be){var De=3*O(be/(vt*M));return[M*ve/(vt*(2*o(2*De/3)-1)),De]};function ar(){return t.geoProjection(ir).scale(156.19)}function vr(ve){var be=o(ve);function De(Be,et){return[Be*be,_(et)/be]}return De.invert=function(Be,et){return[Be/be,O(et*be)]},De}function ii(){return Vt(vr).parallel(38.58).scale(195.044)}function pi(ve){var be=o(ve);function De(Be,et){return[Be*be,(1+be)*b(et/2)]}return De.invert=function(Be,et){return[Be/be,i(et/(1+be))*2]},De}function $r(){return Vt(pi).scale(124.75)}function di(ve,be){var De=G(8/(3*E));return[De*ve*(1-n(be)/E),De*be]}di.invert=function(ve,be){var De=G(8/(3*E)),Be=be/De;return[ve/(De*(1-n(Be)/E)),Be]};function ji(){return t.geoProjection(di).scale(165.664)}function In(ve,be){var De=G(4-3*_(n(be)));return[2/G(6*E)*ve*De,v(be)*G(2*E/3)*(2-De)]}In.invert=function(ve,be){var De=2-n(be)/G(2*E/3);return[ve*G(6*E)/(2*De),v(be)*O((4-De*De)/3)]};function wi(){return t.geoProjection(In).scale(165.664)}function On(ve,be){var De=G(E*(4+E));return[2/De*ve*(1+G(1-4*be*be/(E*E))),4/De*be]}On.invert=function(ve,be){var De=G(E*(4+E))/2;return[ve*De/(1+G(1-be*be*(4+E)/(4*E))),be*De/2]};function qn(){return t.geoProjection(On).scale(180.739)}function Fn(ve,be){var De=(2+S)*_(be);be/=2;for(var Be=0,et=1/0;Be<10&&n(et)>p;Be++){var We=o(be);be-=et=(be+_(be)*(We+2)-De)/(2*We*(1+We))}return[2/G(E*(4+E))*ve*(1+o(be)),2*G(E/(4+E))*_(be)]}Fn.invert=function(ve,be){var De=be*G((4+E)/E)/2,Be=O(De),et=o(Be);return[ve/(2/G(E*(4+E))*(1+et)),O((Be+De*(et+2))/(2+S))]};function ra(){return t.geoProjection(Fn).scale(180.739)}function la(ve,be){return[ve*(1+o(be))/G(2+E),2*be/G(2+E)]}la.invert=function(ve,be){var De=G(2+E),Be=be*De/2;return[De*ve/(1+o(Be)),Be]};function Ut(){return t.geoProjection(la).scale(173.044)}function wt(ve,be){for(var De=(1+S)*_(be),Be=0,et=1/0;Be<10&&n(et)>p;Be++)be-=et=(be+_(be)-De)/(1+o(be));return De=G(2+E),[ve*(1+o(be))/De,2*be/De]}wt.invert=function(ve,be){var De=1+S,Be=G(De/2);return[ve*2*Be/(1+o(be*=Be)),O((be+_(be))/De)]};function rr(){return t.geoProjection(wt).scale(173.044)}var nr=3+2*C;function Er(ve,be){var De=_(ve/=2),Be=o(ve),et=G(o(be)),We=o(be/=2),it=_(be)/(We+C*Be*et),Ft=G(2/(1+it*it)),Ht=G((C*We+(Be+De)*et)/(C*We+(Be-De)*et));return[nr*(Ft*(Ht-1/Ht)-2*u(Ht)),nr*(Ft*it*(Ht+1/Ht)-2*i(it))]}Er.invert=function(ve,be){if(!(We=Se.invert(ve/1.2,be*1.065)))return null;var De=We[0],Be=We[1],et=20,We;ve/=nr,be/=nr;do{var it=De/2,Ft=Be/2,Ht=_(it),tr=o(it),dr=_(Ft),Sr=o(Ft),Or=o(Be),Wr=G(Or),ni=dr/(Sr+C*tr*Wr),Pi=ni*ni,cn=G(2/(1+Pi)),ln=C*Sr+(tr+Ht)*Wr,Cn=C*Sr+(tr-Ht)*Wr,Kn=ln/Cn,Ta=G(Kn),fa=Ta-1/Ta,$a=Ta+1/Ta,Co=cn*fa-2*u(Ta)-ve,Qa=cn*ni*$a-2*i(ni)-be,mo=dr&&x*Wr*Ht*Pi/dr,Bo=(C*tr*Sr+Wr)/(2*(Sr+C*tr*Wr)*(Sr+C*tr*Wr)*Wr),Ps=-.5*ni*cn*cn*cn,Ts=Ps*mo,wo=Ps*Bo,To=(To=2*Sr+C*Wr*(tr-Ht))*To*Ta,hl=(C*tr*Sr*Wr+Or)/To,Ul=-(C*Ht*dr)/(Wr*To),Lu=fa*Ts-2*hl/Ta+cn*(hl+hl/Kn),au=fa*wo-2*Ul/Ta+cn*(Ul+Ul/Kn),Js=ni*$a*Ts-2*mo/(1+Pi)+cn*$a*mo+cn*ni*(hl-hl/Kn),Ql=ni*$a*wo-2*Bo/(1+Pi)+cn*$a*Bo+cn*ni*(Ul-Ul/Kn),dc=au*Js-Ql*Lu;if(!dc)break;var Tl=(Qa*au-Co*Ql)/dc,Al=(Co*Js-Qa*Lu)/dc;De-=Tl,Be=c(-S,f(S,Be-Al))}while((n(Tl)>p||n(Al)>p)&&--et>0);return n(n(Be)-S)<p?[0,Be]:et&&[De,Be]};function Xr(){return t.geoProjection(Er).scale(62.5271)}var ri=o(35*T);function Qr(ve,be){var De=b(be/2);return[ve*ri*G(1-De*De),(1+ri)*De]}Qr.invert=function(ve,be){var De=be/(1+ri);return[ve&&ve/(ri*G(1-De*De)),2*i(De)]};function Oi(){return t.geoProjection(Qr).scale(137.152)}function $i(ve,be){var De=be/2,Be=o(De);return[2*ve/M*o(be)*Be*Be,M*b(De)]}$i.invert=function(ve,be){var De=i(be/M),Be=o(De),et=2*De;return[ve*M/2/(o(et)*Be*Be),et]};function tn(){return t.geoProjection($i).scale(135.264)}function fn(ve){var be=1-ve,De=We(E,0)[0]-We(-E,0)[0],Be=We(0,S)[1]-We(0,-S)[1],et=G(2*Be/De);function We(Ht,tr){var dr=o(tr),Sr=_(tr);return[dr/(be+ve*dr)*Ht,be*tr+ve*Sr]}function it(Ht,tr){var dr=We(Ht,tr);return[dr[0]*et,dr[1]/et]}function Ft(Ht){return it(0,Ht)[1]}return it.invert=function(Ht,tr){var dr=Zt(Ft,tr),Sr=Ht/et*(ve+be/o(dr));return[Sr,dr]},it}function yn(){var ve=.5,be=t.geoProjectionMutator(fn),De=be(ve);return De.alpha=function(Be){return arguments.length?be(ve=+Be):ve},De.scale(168.725)}function Sn(ve){return[ve[0]/2,O(b(ve[1]/2*T))*P]}function Ba(ve){return[ve[0]*2,2*i(_(ve[1]*T))*P]}function ua(ve){ve==null&&(ve=t.geoOrthographic);var be=ve(),De=t.geoEquirectangular().scale(P).precision(0).clipAngle(null).translate([0,0]);function Be(We){return be(Sn(We))}be.invert&&(Be.invert=function(We){return Ba(be.invert(We))}),Be.stream=function(We){var it=be.stream(We),Ft=De.stream({point:function(Ht,tr){it.point(Ht/2,O(b(-tr/2*T))*P)},lineStart:function(){it.lineStart()},lineEnd:function(){it.lineEnd()},polygonStart:function(){it.polygonStart()},polygonEnd:function(){it.polygonEnd()}});return Ft.sphere=it.sphere,Ft};function et(We){Be[We]=function(){return arguments.length?(be[We].apply(be,arguments),Be):be[We]()}}return Be.rotate=function(We){return arguments.length?(De.rotate(We),Be):De.rotate()},Be.center=function(We){return arguments.length?(be.center(Sn(We)),Be):Ba(be.center())},et("angle"),et("clipAngle"),et("clipExtent"),et("fitExtent"),et("fitHeight"),et("fitSize"),et("fitWidth"),et("scale"),et("translate"),et("precision"),Be.scale(249.5)}function ma(ve,be){var De=2*E/be,Be=ve*ve;function et(We,it){var Ft=t.geoAzimuthalEquidistantRaw(We,it),Ht=Ft[0],tr=Ft[1],dr=Ht*Ht+tr*tr;if(dr>Be){var Sr=G(dr),Or=a(tr,Ht),Wr=De*d(Or/De),ni=Or-Wr,Pi=ve*o(ni),cn=(ve*_(ni)-ni*_(Pi))/(S-Pi),ln=Wa(ni,cn),Cn=(E-ve)/Fa(ln,Pi,E);Ht=Sr;var Kn=50,Ta;do Ht-=Ta=(ve+Fa(ln,Pi,Ht)*Cn-Sr)/(ln(Ht)*Cn);while(n(Ta)>p&&--Kn>0);tr=ni*_(Ht),Ht<S&&(tr-=cn*(Ht-S));var fa=_(Wr),$a=o(Wr);Ft[0]=Ht*$a-tr*fa,Ft[1]=Ht*fa+tr*$a}return Ft}return et.invert=function(We,it){var Ft=We*We+it*it;if(Ft>Be){var Ht=G(Ft),tr=a(it,We),dr=De*d(tr/De),Sr=tr-dr;We=Ht*o(Sr),it=Ht*_(Sr);for(var Or=We-S,Wr=_(We),ni=it/Wr,Pi=We<S?1/0:0,cn=10;;){var ln=ve*_(ni),Cn=ve*o(ni),Kn=_(Cn),Ta=S-Cn,fa=(ln-ni*Kn)/Ta,$a=Wa(ni,fa);if(n(Pi)<k||!--cn)break;ni-=Pi=(ni*Wr-fa*Or-it)/(Wr-Or*2*(Ta*(Cn+ni*ln*o(Cn)-Kn)-ln*(ln-ni*Kn))/(Ta*Ta))}Ht=ve+Fa($a,Cn,We)*(E-ve)/Fa($a,Cn,E),tr=dr+ni,We=Ht*o(tr),it=Ht*_(tr)}return t.geoAzimuthalEquidistantRaw.invert(We,it)},et}function Wa(ve,be){return function(De){var Be=ve*o(De);return De<S&&(Be-=be),G(1+Be*Be)}}function Fa(ve,be,De){for(var Be=50,et=(De-be)/Be,We=ve(be)+ve(De),it=1,Ft=be;it<Be;++it)We+=2*ve(Ft+=et);return We*.5*et}function Wo(){var ve=6,be=30*T,De=o(be),Be=_(be),et=t.geoProjectionMutator(ma),We=et(be,ve),it=We.stream,Ft=.01,Ht=-o(Ft*T),tr=_(Ft*T);return We.radius=function(dr){return arguments.length?(De=o(be=dr*T),Be=_(be),et(be,ve)):be*P},We.lobes=function(dr){return arguments.length?et(be,ve=+dr):ve},We.stream=function(dr){var Sr=We.rotate(),Or=it(dr),Wr=(We.rotate([0,0]),it(dr));return We.rotate(Sr),Or.sphere=function(){Wr.polygonStart(),Wr.lineStart();for(var ni=0,Pi=2*E/ve,cn=0;ni<ve;++ni,cn-=Pi)Wr.point(a(tr*o(cn),Ht)*P,O(tr*_(cn))*P),Wr.point(a(Be*o(cn-Pi/2),De)*P,O(Be*_(cn-Pi/2))*P);Wr.lineEnd(),Wr.polygonEnd()},Or},We.rotate([90,-40]).scale(91.7095).clipAngle(180-.001)}function da(ve,be,De,Be,et,We,it,Ft){arguments.length<8&&(Ft=0);function Ht(tr,dr){if(!dr)return[ve*tr/E,0];var Sr=dr*dr,Or=ve+Sr*(be+Sr*(De+Sr*Be)),Wr=dr*(et-1+Sr*(We-Ft+Sr*it)),ni=(Or*Or+Wr*Wr)/(2*Wr),Pi=tr*O(Or/ni)/E;return[ni*_(Pi),dr*(1+Sr*Ft)+ni*(1-o(Pi))]}return Ht.invert=function(tr,dr){var Sr=E*tr/ve,Or=dr,Wr,ni,Pi=50;do{var cn=Or*Or,ln=ve+cn*(be+cn*(De+cn*Be)),Cn=Or*(et-1+cn*(We-Ft+cn*it)),Kn=ln*ln+Cn*Cn,Ta=2*Cn,fa=Kn/Ta,$a=fa*fa,Co=O(ln/fa)/E,Qa=Sr*Co,mo=ln*ln,Bo=(2*be+cn*(4*De+cn*6*Be))*Or,Ps=et+cn*(3*We+cn*5*it),Ts=2*(ln*Bo+Cn*(Ps-1)),wo=2*(Ps-1),To=(Ts*Ta-Kn*wo)/(Ta*Ta),hl=o(Qa),Ul=_(Qa),Lu=fa*hl,au=fa*Ul,Js=Sr/E*(1/G(1-mo/$a))*(Bo*fa-ln*To)/$a,Ql=au-tr,dc=Or*(1+cn*Ft)+fa-Lu-dr,Tl=To*Ul+Lu*Js,Al=Lu*Co,X=1+To-(To*hl-au*Js),se=au*Co,Te=Tl*se-X*Al;if(!Te)break;Sr-=Wr=(dc*Tl-Ql*X)/Te,Or-=ni=(Ql*se-dc*Al)/Te}while((n(Wr)>p||n(ni)>p)&&--Pi>0);return[Sr,Or]},Ht}var Wn=da(2.8284,-1.6988,.75432,-.18071,1.76003,-.38914,.042555);function Ha(){return t.geoProjection(Wn).scale(149.995)}var vo=da(2.583819,-.835827,.170354,-.038094,1.543313,-.411435,.082742);function jn(){return t.geoProjection(vo).scale(153.93)}var Mt=da(5/6*E,-.62636,-.0344,0,1.3493,-.05524,0,.045);function kr(){return t.geoProjection(Mt).scale(130.945)}function Jr(ve,be){var De=ve*ve,Be=be*be;return[ve*(1-.162388*Be)*(.87-952426e-9*De*De),be*(1+Be/12)]}Jr.invert=function(ve,be){var De=ve,Be=be,et=50,We;do{var it=Be*Be;Be-=We=(Be*(1+it/12)-be)/(1+it/4)}while(n(We)>p&&--et>0);et=50,ve/=1-.162388*it;do{var Ft=(Ft=De*De)*Ft;De-=We=(De*(.87-952426e-9*Ft)-ve)/(.87-.00476213*Ft)}while(n(We)>p&&--et>0);return[De,Be]};function vi(){return t.geoProjection(Jr).scale(131.747)}var hn=da(2.6516,-.76534,.19123,-.047094,1.36289,-.13965,.031762);function An(){return t.geoProjection(hn).scale(131.087)}function Mn(ve){var be=ve(S,0)[0]-ve(-S,0)[0];function De(Be,et){var We=Be>0?-.5:.5,it=ve(Be+We*E,et);return it[0]-=We*be,it}return ve.invert&&(De.invert=function(Be,et){var We=Be>0?-.5:.5,it=ve.invert(Be+We*be,et),Ft=it[0]-We*E;return Ft<-E?Ft+=2*E:Ft>E&&(Ft-=2*E),it[0]=Ft,it}),De}function Li(ve,be){var De=v(ve),Be=v(be),et=o(be),We=o(ve)*et,it=_(ve)*et,Ft=_(Be*be);ve=n(a(it,Ft)),be=O(We),n(ve-S)>p&&(ve%=S);var Ht=_n(ve>E/4?S-ve:ve,be);return ve>E/4&&(Ft=Ht[0],Ht[0]=-Ht[1],Ht[1]=-Ft),Ht[0]*=De,Ht[1]*=-Be,Ht}Li.invert=function(ve,be){n(ve)>1&&(ve=v(ve)*2-ve),n(be)>1&&(be=v(be)*2-be);var De=v(ve),Be=v(be),et=-De*ve,We=-Be*be,it=We/et<1,Ft=ya(it?We:et,it?et:We),Ht=Ft[0],tr=Ft[1],dr=o(tr);return it&&(Ht=-S-Ht),[De*(a(_(Ht)*dr,-_(tr))+E),Be*O(o(Ht)*dr)]};function _n(ve,be){if(be===S)return[0,0];var De=_(be),Be=De*De,et=Be*Be,We=1+et,it=1+3*et,Ft=1-et,Ht=O(1/G(We)),tr=Ft+Be*We*Ht,dr=(1-De)/tr,Sr=G(dr),Or=dr*We,Wr=G(Or),ni=Sr*Ft,Pi,cn;if(ve===0)return[0,-(ni+Be*Wr)];var ln=o(be),Cn=1/ln,Kn=2*De*ln,Ta=(-3*Be+Ht*it)*Kn,fa=(-tr*ln-(1-De)*Ta)/(tr*tr),$a=.5*fa/Sr,Co=Ft*$a-2*Be*Sr*Kn,Qa=Be*We*fa+dr*it*Kn,mo=-Cn*Kn,Bo=-Cn*Qa,Ps=-2*Cn*Co,Ts=4*ve/E,wo;if(ve>.222*E||be<E/4&&ve>.175*E){if(Pi=(ni+Be*G(Or*(1+et)-ni*ni))/(1+et),ve>E/4)return[Pi,Pi];var To=Pi,hl=.5*Pi;Pi=.5*(hl+To),cn=50;do{var Ul=G(Or-Pi*Pi),Lu=Pi*(Ps+mo*Ul)+Bo*O(Pi/Wr)-Ts;if(!Lu)break;Lu<0?hl=Pi:To=Pi,Pi=.5*(hl+To)}while(n(To-hl)>p&&--cn>0)}else{Pi=p,cn=25;do{var au=Pi*Pi,Js=G(Or-au),Ql=Ps+mo*Js,dc=Pi*Ql+Bo*O(Pi/Wr)-Ts,Tl=Ql+(Bo-mo*au)/Js;Pi-=wo=Js?dc/Tl:0}while(n(wo)>p&&--cn>0)}return[Pi,-ni-Be*G(Or-Pi*Pi)]}function ya(ve,be){for(var De=0,Be=1,et=.5,We=50;;){var it=et*et,Ft=G(et),Ht=O(1/G(1+it)),tr=1-it+et*(1+it)*Ht,dr=(1-Ft)/tr,Sr=G(dr),Or=dr*(1+it),Wr=Sr*(1-it),ni=Or-ve*ve,Pi=G(ni),cn=be+Wr+et*Pi;if(n(Be-De)<k||--We===0||cn===0)break;cn>0?De=et:Be=et,et=.5*(De+Be)}if(!We)return null;var ln=O(Ft),Cn=o(ln),Kn=1/Cn,Ta=2*Ft*Cn,fa=(-3*et+Ht*(1+3*it))*Ta,$a=(-tr*Cn-(1-Ft)*fa)/(tr*tr),Co=.5*$a/Sr,Qa=(1-it)*Co-2*et*Sr*Ta,mo=-2*Kn*Qa,Bo=-Kn*Ta,Ps=-Kn*(et*(1+it)*$a+dr*(1+3*it)*Ta);return[E/4*(ve*(mo+Bo*Pi)+Ps*O(ve/G(Or))),ln]}function Jn(){return t.geoProjection(Mn(Li)).scale(239.75)}function Ma(ve,be,De){var Be,et,We;return ve?(Be=_o(ve,De),be?(et=_o(be,1-De),We=et[1]*et[1]+De*Be[0]*Be[0]*et[0]*et[0],[[Be[0]*et[2]/We,Be[1]*Be[2]*et[0]*et[1]/We],[Be[1]*et[1]/We,-Be[0]*Be[2]*et[0]*et[2]/We],[Be[2]*et[1]*et[2]/We,-De*Be[0]*Be[1]*et[0]/We]]):[[Be[0],0],[Be[1],0],[Be[2],0]]):(et=_o(be,1-De),[[0,et[0]/et[1]],[1/et[1],0],[et[2]/et[1],0]])}function _o(ve,be){var De,Be,et,We,it;if(be<p)return We=_(ve),Be=o(ve),De=be*(ve-We*Be)/4,[We-De*Be,Be+De*We,1-be*We*We/2,ve-De];if(be>=1-p)return De=(1-be)/4,Be=N(ve),We=Z(ve),et=1/Be,it=Be*j(ve),[We+De*(it-ve)/(Be*Be),et-De*We*et*(it-ve),et+De*We*et*(it+ve),2*i(s(ve))-S+De*(it-ve)/Be];var Ft=[1,0,0,0,0,0,0,0,0],Ht=[G(be),0,0,0,0,0,0,0,0],tr=0;for(Be=G(1-be),it=1;n(Ht[tr]/Ft[tr])>p&&tr<8;)De=Ft[tr++],Ht[tr]=(De-Be)/2,Ft[tr]=(De+Be)/2,Be=G(De*Be),it*=2;et=it*Ft[tr]*ve;do We=Ht[tr]*_(Be=et)/Ft[tr],et=(O(We)+et)/2;while(--tr);return[_(et),We=o(et),We/o(et-Be),et]}function No(ve,be,De){var Be=n(ve),et=n(be),We=j(et);if(Be){var it=1/_(Be),Ft=1/(b(Be)*b(Be)),Ht=-(Ft+De*(We*We*it*it)-1+De),tr=(De-1)*Ft,dr=(-Ht+G(Ht*Ht-4*tr))/2;return[po(i(1/G(dr)),De)*v(ve),po(i(G((dr/Ft-1)/De)),1-De)*v(be)]}return[0,po(i(We),1-De)*v(be)]}function po(ve,be){if(!be)return ve;if(be===1)return u(b(ve/2+L));for(var De=1,Be=G(1-be),et=G(be),We=0;n(et)>p;We++){if(ve%E){var it=i(Be*b(ve)/De);it<0&&(it+=E),ve+=it+~~(ve/E)*E}else ve+=ve;et=(De+Be)/2,Be=G(De*Be),et=((De=et)-Be)/2}return ve/(h(2,We)*De)}function Lo(ve,be){var De=(C-1)/(C+1),Be=G(1-De*De),et=po(S,Be*Be),We=-1,it=u(b(E/4+n(be)/2)),Ft=s(We*it)/G(De),Ht=ko(Ft*o(We*ve),Ft*_(We*ve)),tr=No(Ht[0],Ht[1],Be*Be);return[-tr[1],(be>=0?1:-1)*(.5*et-tr[0])]}function ko(ve,be){var De=ve*ve,Be=be+1,et=1-De-be*be;return[.5*((ve>=0?S:-S)-a(et,2*ve)),-.25*u(et*et+4*De)+.5*u(Be*Be+De)]}function Ds(ve,be){var De=be[0]*be[0]+be[1]*be[1];return[(ve[0]*be[0]+ve[1]*be[1])/De,(ve[1]*be[0]-ve[0]*be[1])/De]}Lo.invert=function(ve,be){var De=(C-1)/(C+1),Be=G(1-De*De),et=po(S,Be*Be),We=-1,it=Ma(.5*et-be,-ve,Be*Be),Ft=Ds(it[0],it[1]),Ht=a(Ft[1],Ft[0])/We;return[Ht,2*i(s(.5/We*u(De*Ft[0]*Ft[0]+De*Ft[1]*Ft[1])))-S]};function Fs(){return t.geoProjection(Mn(Lo)).scale(151.496)}function ll(ve){var be=_(ve),De=o(ve),Be=ul(ve);Be.invert=ul(-ve);function et(We,it){var Ft=Be(We,it);We=Ft[0],it=Ft[1];var Ht=_(it),tr=o(it),dr=o(We),Sr=V(be*Ht+De*tr*dr),Or=_(Sr),Wr=n(Or)>p?Sr/Or:1;return[Wr*De*_(We),(n(We)>S?Wr:-Wr)*(be*tr-De*Ht*dr)]}return et.invert=function(We,it){var Ft=G(We*We+it*it),Ht=-_(Ft),tr=o(Ft),dr=Ft*tr,Sr=-it*Ht,Or=Ft*be,Wr=G(dr*dr+Sr*Sr-Or*Or),ni=a(dr*Or+Sr*Wr,Sr*Or-dr*Wr),Pi=(Ft>S?-1:1)*a(We*Ht,Ft*o(ni)*tr+it*_(ni)*Ht);return Be.invert(Pi,ni)},et}function ul(ve){var be=_(ve),De=o(ve);return function(Be,et){var We=o(et),it=o(Be)*We,Ft=_(Be)*We,Ht=_(et);return[a(Ft,it*De-Ht*be),O(Ht*De+it*be)]}}function zl(){var ve=0,be=t.geoProjectionMutator(ll),De=be(ve),Be=De.rotate,et=De.stream,We=t.geoCircle();return De.parallel=function(it){if(!arguments.length)return ve*P;var Ft=De.rotate();return be(ve=it*T).rotate(Ft)},De.rotate=function(it){return arguments.length?(Be.call(De,[it[0],it[1]-ve*P]),We.center([-it[0],-it[1]]),De):(it=Be.call(De),it[1]+=ve*P,it)},De.stream=function(it){return it=et(it),it.sphere=function(){it.polygonStart();var Ft=.01,Ht=We.radius(90-Ft)().coordinates[0],tr=Ht.length-1,dr=-1,Sr;for(it.lineStart();++dr<tr;)it.point((Sr=Ht[dr])[0],Sr[1]);for(it.lineEnd(),Ht=We.radius(90+Ft)().coordinates[0],tr=Ht.length-1,it.lineStart();--dr>=0;)it.point((Sr=Ht[dr])[0],Sr[1]);it.lineEnd(),it.polygonEnd()},it},De.scale(79.4187).parallel(45).clipAngle(180-.001)}var us=3,il=O(1-1/us)*P,As=vr(0);function cl(ve){var be=il*T,De=xt(E,be)[0]-xt(-E,be)[0],Be=As(0,be)[1],et=xt(0,be)[1],We=M-et,it=g/ve,Ft=4/g,Ht=Be+We*We*4/g;function tr(dr,Sr){var Or,Wr=n(Sr);if(Wr>be){var ni=f(ve-1,c(0,l((dr+E)/it)));dr+=E*(ve-1)/ve-ni*it,Or=xt(dr,Wr),Or[0]=Or[0]*g/De-g*(ve-1)/(2*ve)+ni*g/ve,Or[1]=Be+(Or[1]-et)*4*We/g,Sr<0&&(Or[1]=-Or[1])}else Or=As(dr,Sr);return Or[0]*=Ft,Or[1]/=Ht,Or}return tr.invert=function(dr,Sr){dr/=Ft,Sr*=Ht;var Or=n(Sr);if(Or>Be){var Wr=f(ve-1,c(0,l((dr+E)/it)));dr=(dr+E*(ve-1)/ve-Wr*it)*De/g;var ni=xt.invert(dr,.25*(Or-Be)*g/We+et);return ni[0]-=E*(ve-1)/ve-Wr*it,Sr<0&&(ni[1]=-ni[1]),ni}return As.invert(dr,Sr)},tr}function Ks(ve,be){return[ve,be&1?90-p:il]}function zs(ve,be){return[ve,be&1?-90+p:-il]}function Io(ve){return[ve[0]*(1-p),ve[1]]}function ls(ve){var be=[].concat(r.range(-180,180+ve/2,ve).map(Ks),r.range(180,-180-ve/2,-ve).map(zs));return{type:"Polygon",coordinates:[ve===180?be.map(Io):be]}}function Zl(){var ve=4,be=t.geoProjectionMutator(cl),De=be(ve),Be=De.stream;return De.lobes=function(et){return arguments.length?be(ve=+et):ve},De.stream=function(et){var We=De.rotate(),it=Be(et),Ft=(De.rotate([0,0]),Be(et));return De.rotate(We),it.sphere=function(){t.geoStream(ls(180/ve),Ft)},it},De.scale(239.75)}function Su(ve){var be=1+ve,De=_(1/be),Be=O(De),et=2*G(E/(We=E+4*Be*be)),We,it=.5*et*(be+G(ve*(2+ve))),Ft=ve*ve,Ht=be*be;function tr(dr,Sr){var Or=1-_(Sr),Wr,ni;if(Or&&Or<2){var Pi=S-Sr,cn=25,ln;do{var Cn=_(Pi),Kn=o(Pi),Ta=Be+a(Cn,be-Kn),fa=1+Ht-2*be*Kn;Pi-=ln=(Pi-Ft*Be-be*Cn+fa*Ta-.5*Or*We)/(2*be*Cn*Ta)}while(n(ln)>k&&--cn>0);Wr=et*G(fa),ni=dr*Ta/E}else Wr=et*(ve+Or),ni=dr*Be/E;return[Wr*_(ni),it-Wr*o(ni)]}return tr.invert=function(dr,Sr){var Or=dr*dr+(Sr-=it)*Sr,Wr=(1+Ht-Or/(et*et))/(2*be),ni=V(Wr),Pi=_(ni),cn=Be+a(Pi,be-Wr);return[O(dr/G(Or))*E/cn,O(1-2*(ni-Ft*Be-be*Pi+(1+Ht-2*be*Wr)*cn)/We)]},tr}function nc(){var ve=1,be=t.geoProjectionMutator(Su),De=be(ve);return De.ratio=function(Be){return arguments.length?be(ve=+Be):ve},De.scale(167.774).center([0,18.67])}var bs=.7109889596207567,Rn=.0528035274542;function _a(ve,be){return be>-bs?(ve=sr(ve,be),ve[1]+=Rn,ve):_t(ve,be)}_a.invert=function(ve,be){return be>-bs?sr.invert(ve,be-Rn):_t.invert(ve,be)};function Vu(){return t.geoProjection(_a).rotate([-20,-55]).scale(164.263).center([0,-5.4036])}function Ol(ve,be){return n(be)>bs?(ve=sr(ve,be),ve[1]-=be>0?Rn:-Rn,ve):_t(ve,be)}Ol.invert=function(ve,be){return n(be)>bs?sr.invert(ve,be+(be>0?Rn:-Rn)):_t.invert(ve,be)};function xo(){return t.geoProjection(Ol).scale(152.63)}function Yl(ve,be,De,Be){var et=G(4*E/(2*De+(1+ve-be/2)*_(2*De)+(ve+be)/2*_(4*De)+be/2*_(6*De))),We=G(Be*_(De)*G((1+ve*o(2*De)+be*o(4*De))/(1+ve+be))),it=De*Ht(1);function Ft(Sr){return G(1+ve*o(2*Sr)+be*o(4*Sr))}function Ht(Sr){var Or=Sr*De;return(2*Or+(1+ve-be/2)*_(2*Or)+(ve+be)/2*_(4*Or)+be/2*_(6*Or))/De}function tr(Sr){return Ft(Sr)*_(Sr)}var dr=function(Sr,Or){var Wr=De*Zt(Ht,it*_(Or)/De,Or/E);isNaN(Wr)&&(Wr=De*v(Or));var ni=et*Ft(Wr);return[ni*We*Sr/E*o(Wr),ni/We*_(Wr)]};return dr.invert=function(Sr,Or){var Wr=Zt(tr,Or*We/et);return[Sr*E/(o(Wr)*et*We*Ft(Wr)),O(De*Ht(Wr/De)/it)]},De===0&&(et=G(Be/E),dr=function(Sr,Or){return[Sr*et,_(Or)/et]},dr.invert=function(Sr,Or){return[Sr/et,O(Or*et)]}),dr}function Ns(){var ve=1,be=0,De=45*T,Be=2,et=t.geoProjectionMutator(Yl),We=et(ve,be,De,Be);return We.a=function(it){return arguments.length?et(ve=+it,be,De,Be):ve},We.b=function(it){return arguments.length?et(ve,be=+it,De,Be):be},We.psiMax=function(it){return arguments.length?et(ve,be,De=+it*T,Be):De*P},We.ratio=function(it){return arguments.length?et(ve,be,De,Be=+it):Be},We.scale(180.739)}function Hl(ve,be,De,Be,et,We,it,Ft,Ht,tr,dr){if(dr.nanEncountered)return NaN;var Sr,Or,Wr,ni,Pi,cn,ln,Cn,Kn,Ta;if(Sr=De-be,Or=ve(be+Sr*.25),Wr=ve(De-Sr*.25),isNaN(Or)){dr.nanEncountered=!0;return}if(isNaN(Wr)){dr.nanEncountered=!0;return}return ni=Sr*(Be+4*Or+et)/12,Pi=Sr*(et+4*Wr+We)/12,cn=ni+Pi,Ta=(cn-it)/15,tr>Ht?(dr.maxDepthCount++,cn+Ta):Math.abs(Ta)<Ft?cn+Ta:(ln=be+Sr*.5,Cn=Hl(ve,be,ln,Be,Or,et,ni,Ft*.5,Ht,tr+1,dr),isNaN(Cn)?(dr.nanEncountered=!0,NaN):(Kn=Hl(ve,ln,De,et,Wr,We,Pi,Ft*.5,Ht,tr+1,dr),isNaN(Kn)?(dr.nanEncountered=!0,NaN):Cn+Kn))}function ac(ve,be,De,Be,et){var We={maxDepthCount:0,nanEncountered:!1};Be===void 0&&(Be=1e-8),et===void 0&&(et=20);var it=ve(be),Ft=ve(.5*(be+De)),Ht=ve(De),tr=(it+4*Ft+Ht)*(De-be)/6,dr=Hl(ve,be,De,it,Ft,Ht,tr,Be,et,1,We);return dr}function aa(ve,be,De){function Be(Wr){return ve+(1-ve)*h(1-h(Wr,be),1/be)}function et(Wr){return ac(Be,0,Wr,1e-4)}for(var We=1/et(1),it=1e3,Ft=(1+1e-8)*We,Ht=[],tr=0;tr<=it;tr++)Ht.push(et(tr/it)*Ft);function dr(Wr){var ni=0,Pi=it,cn=it>>1;do Ht[cn]>Wr?Pi=cn:ni=cn,cn=ni+Pi>>1;while(cn>ni);var ln=Ht[cn+1]-Ht[cn];return ln&&(ln=(Wr-Ht[cn+1])/ln),(cn+1+ln)/it}var Sr=2*dr(1)/E*We/De,Or=function(Wr,ni){var Pi=dr(n(_(ni))),cn=Be(Pi)*Wr;return Pi/=Sr,[cn,ni>=0?Pi:-Pi]};return Or.invert=function(Wr,ni){var Pi;return ni*=Sr,n(ni)<1&&(Pi=v(ni)*O(et(n(ni))*We)),[Wr/Be(n(ni)),Pi]},Or}function Oo(){var ve=0,be=2.5,De=1.183136,Be=t.geoProjectionMutator(aa),et=Be(ve,be,De);return et.alpha=function(We){return arguments.length?Be(ve=+We,be,De):ve},et.k=function(We){return arguments.length?Be(ve,be=+We,De):be},et.gamma=function(We){return arguments.length?Be(ve,be,De=+We):De},et.scale(152.63)}function qo(ve,be){return n(ve[0]-be[0])<p&&n(ve[1]-be[1])<p}function ql(ve,be){for(var De=-1,Be=ve.length,et=ve[0],We,it,Ft,Ht=[];++De<Be;){We=ve[De],it=(We[0]-et[0])/be,Ft=(We[1]-et[1])/be;for(var tr=0;tr<be;++tr)Ht.push([et[0]+tr*it,et[1]+tr*Ft]);et=We}return Ht.push(We),Ht}function Pc(ve){var be=[],De,Be,et,We,it,Ft,Ht,tr=ve[0].length;for(Ht=0;Ht<tr;++Ht)De=ve[0][Ht],Be=De[0][0],et=De[0][1],We=De[1][1],it=De[2][0],Ft=De[2][1],be.push(ql([[Be+p,et+p],[Be+p,We-p],[it-p,We-p],[it-p,Ft+p]],30));for(Ht=ve[1].length-1;Ht>=0;--Ht)De=ve[1][Ht],Be=De[0][0],et=De[0][1],We=De[1][1],it=De[2][0],Ft=De[2][1],be.push(ql([[it-p,Ft-p],[it-p,We+p],[Be+p,We+p],[Be+p,et-p]],30));return{type:"Polygon",coordinates:[r.merge(be)]}}function Do(ve,be,De){var Be,et;function We(Ht,tr){for(var dr=tr<0?-1:1,Sr=be[+(tr<0)],Or=0,Wr=Sr.length-1;Or<Wr&&Ht>Sr[Or][2][0];++Or);var ni=ve(Ht-Sr[Or][1][0],tr);return ni[0]+=ve(Sr[Or][1][0],dr*tr>dr*Sr[Or][0][1]?Sr[Or][0][1]:tr)[0],ni}De?We.invert=De(We):ve.invert&&(We.invert=function(Ht,tr){for(var dr=et[+(tr<0)],Sr=be[+(tr<0)],Or=0,Wr=dr.length;Or<Wr;++Or){var ni=dr[Or];if(ni[0][0]<=Ht&&Ht<ni[1][0]&&ni[0][1]<=tr&&tr<ni[1][1]){var Pi=ve.invert(Ht-ve(Sr[Or][1][0],0)[0],tr);return Pi[0]+=Sr[Or][1][0],qo(We(Pi[0],Pi[1]),[Ht,tr])?Pi:null}}});var it=t.geoProjection(We),Ft=it.stream;return it.stream=function(Ht){var tr=it.rotate(),dr=Ft(Ht),Sr=(it.rotate([0,0]),Ft(Ht));return it.rotate(tr),dr.sphere=function(){t.geoStream(Be,Sr)},dr},it.lobes=function(Ht){return arguments.length?(Be=Pc(Ht),be=Ht.map(function(tr){return tr.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]]})}),et=be.map(function(tr){return tr.map(function(dr){var Sr=ve(dr[0][0],dr[0][1])[0],Or=ve(dr[2][0],dr[2][1])[0],Wr=ve(dr[1][0],dr[0][1])[1],ni=ve(dr[1][0],dr[1][1])[1],Pi;return Wr>ni&&(Pi=Wr,Wr=ni,ni=Pi),[[Sr,Wr],[Or,ni]]})}),it):be.map(function(tr){return tr.map(function(dr){return[[dr[0][0]*P,dr[0][1]*P],[dr[1][0]*P,dr[1][1]*P],[dr[2][0]*P,dr[2][1]*P]]})})},be!=null&&it.lobes(be),it}var rf=[[[[-180,0],[-100,90],[-40,0]],[[-40,0],[30,90],[180,0]]],[[[-180,0],[-160,-90],[-100,0]],[[-100,0],[-60,-90],[-20,0]],[[-20,0],[20,-90],[80,0]],[[80,0],[140,-90],[180,0]]]];function Uf(){return Do(St,rf).scale(160.857)}var pl=[[[[-180,0],[-100,90],[-40,0]],[[-40,0],[30,90],[180,0]]],[[[-180,0],[-160,-90],[-100,0]],[[-100,0],[-60,-90],[-20,0]],[[-20,0],[20,-90],[80,0]],[[80,0],[140,-90],[180,0]]]];function Zc(){return Do(Ol,pl).scale(152.63)}var Kl=[[[[-180,0],[-100,90],[-40,0]],[[-40,0],[30,90],[180,0]]],[[[-180,0],[-160,-90],[-100,0]],[[-100,0],[-60,-90],[-20,0]],[[-20,0],[20,-90],[80,0]],[[80,0],[140,-90],[180,0]]]];function Os(){return Do(sr,Kl).scale(169.529)}var yu=[[[[-180,0],[-90,90],[0,0]],[[0,0],[90,90],[180,0]]],[[[-180,0],[-90,-90],[0,0]],[[0,0],[90,-90],[180,0]]]];function oc(){return Do(sr,yu).scale(169.529).rotate([20,0])}var Cf=[[[[-180,35],[-30,90],[0,35]],[[0,35],[30,90],[180,35]]],[[[-180,-10],[-102,-90],[-65,-10]],[[-65,-10],[5,-90],[77,-10]],[[77,-10],[103,-90],[180,-10]]]];function sc(){return Do(_a,Cf,st).rotate([-20,-55]).scale(164.263).center([0,-5.4036])}var Vh=[[[[-180,0],[-110,90],[-40,0]],[[-40,0],[0,90],[40,0]],[[40,0],[110,90],[180,0]]],[[[-180,0],[-110,-90],[-40,0]],[[-40,0],[0,-90],[40,0]],[[40,0],[110,-90],[180,0]]]];function Lf(){return Do(_t,Vh).scale(152.63).rotate([-20,0])}function cs(ve,be){return[3/g*ve*G(E*E/3-be*be),be]}cs.invert=function(ve,be){return[g/3*ve/G(E*E/3-be*be),be]};function nf(){return t.geoProjection(cs).scale(158.837)}function Vf(ve){function be(De,Be){if(n(n(Be)-S)<p)return[0,Be<0?-2:2];var et=_(Be),We=h((1+et)/(1-et),ve/2),it=.5*(We+1/We)+o(De*=ve);return[2*_(De)/it,(We-1/We)/it]}return be.invert=function(De,Be){var et=n(Be);if(n(et-2)<p)return De?null:[0,v(Be)*S];if(et>2)return null;De/=2,Be/=2;var We=De*De,it=Be*Be,Ft=2*Be/(1+We+it);return Ft=h((1+Ft)/(1-Ft),1/ve),[a(2*De,1-We-it)/ve,O((Ft-1)/(Ft+1))]},be}function Jl(){var ve=.5,be=t.geoProjectionMutator(Vf),De=be(ve);return De.spacing=function(Be){return arguments.length?be(ve=+Be):ve},De.scale(124.75)}var fl=E/C;function lc(ve,be){return[ve*(1+G(o(be)))/2,be/(o(be/2)*o(ve/6))]}lc.invert=function(ve,be){var De=n(ve),Be=n(be),et=p,We=S;Be<fl?We*=Be/fl:et+=6*V(fl/Be);for(var it=0;it<25;it++){var Ft=_(We),Ht=G(o(We)),tr=_(We/2),dr=o(We/2),Sr=_(et/6),Or=o(et/6),Wr=.5*et*(1+Ht)-De,ni=We/(dr*Or)-Be,Pi=Ht?-.25*et*Ft/Ht:0,cn=.5*(1+Ht),ln=(1+.5*We*tr/dr)/(dr*Or),Cn=We/dr*(Sr/6)/(Or*Or),Kn=Pi*Cn-ln*cn,Ta=(Wr*Cn-ni*cn)/Kn,fa=(ni*Pi-Wr*ln)/Kn;if(We-=Ta,et-=fa,n(Ta)<p&&n(fa)<p)break}return[ve<0?-et:et,be<0?-We:We]};function Fu(){return t.geoProjection(lc).scale(97.2672)}function Es(ve,be){var De=ve*ve,Be=be*be;return[ve*(.975534+Be*(-.119161+De*-.0143059+Be*-.0547009)),be*(1.00384+De*(.0802894+Be*-.02855+De*199025e-9)+Be*(.0998909+Be*-.0491032))]}Es.invert=function(ve,be){var De=v(ve)*E,Be=be/2,et=50;do{var We=De*De,it=Be*Be,Ft=De*Be,Ht=De*(.975534+it*(-.119161+We*-.0143059+it*-.0547009))-ve,tr=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=-Ft*(2*.119161+4*.0547009*it+2*.0143059*We),Or=Ft*(2*.0802894+4*199025e-9*We+2*-.02855*it),Wr=1.00384+We*(.0802894+199025e-9*We)+it*(3*(.0998909-.02855*We)-5*.0491032*it),ni=Sr*Or-Wr*dr,Pi=(tr*Sr-Ht*Wr)/ni,cn=(Ht*Or-tr*dr)/ni;De-=Pi,Be-=cn}while((n(Pi)>p||n(cn)>p)&&--et>0);return et&&[De,Be]};function Hs(){return t.geoProjection(Es).scale(139.98)}function Go(ve,be){return[_(ve)/o(be),b(be)*o(ve)]}Go.invert=function(ve,be){var De=ve*ve,Be=be*be,et=Be+1,We=De+et,it=ve?x*G((We-G(We*We-4*De))/De):1/G(et);return[O(ve*it),v(be)*V(it)]};function ps(){return t.geoProjection(Go).scale(144.049).clipAngle(90-.001)}function uc(ve){var be=o(ve),De=b(L+ve/2);function Be(et,We){var it=We-ve,Ft=n(it)<p?et*be:n(Ft=L+We/2)<p||n(n(Ft)-S)<p?0:et*it/u(b(Ft)/De);return[Ft,it]}return Be.invert=function(et,We){var it,Ft=We+ve;return[n(We)<p?et/be:n(it=L+Ft/2)<p||n(n(it)-S)<p?0:et*u(b(it)/De)/We,Ft]},Be}function xl(){return Vt(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 qs(){return t.geoProjection(Gu).scale(108.318)}function ad(ve){var be=ve.length-1;function De(Be,et){for(var We=o(et),it=2/(1+We*o(Be)),Ft=it*We*_(Be),Ht=it*_(et),tr=be,dr=ve[tr],Sr=dr[0],Or=dr[1],Wr;--tr>=0;)dr=ve[tr],Sr=dr[0]+Ft*(Wr=Sr)-Ht*Or,Or=dr[1]+Ft*Or+Ht*Wr;return Sr=Ft*(Wr=Sr)-Ht*Or,Or=Ft*Or+Ht*Wr,[Sr,Or]}return De.invert=function(Be,et){var We=20,it=Be,Ft=et;do{for(var Ht=be,tr=ve[Ht],dr=tr[0],Sr=tr[1],Or=0,Wr=0,ni;--Ht>=0;)tr=ve[Ht],Or=dr+it*(ni=Or)-Ft*Wr,Wr=Sr+it*Wr+Ft*ni,dr=tr[0]+it*(ni=dr)-Ft*Sr,Sr=tr[1]+it*Sr+Ft*ni;Or=dr+it*(ni=Or)-Ft*Wr,Wr=Sr+it*Wr+Ft*ni,dr=it*(ni=dr)-Ft*Sr-Be,Sr=it*Sr+Ft*ni-et;var Pi=Or*Or+Wr*Wr,cn,ln;it-=cn=(dr*Or+Sr*Wr)/Pi,Ft-=ln=(Sr*Or-dr*Wr)/Pi}while(n(cn)+n(ln)>p*p&&--We>0);if(We){var Cn=G(it*it+Ft*Ft),Kn=2*i(Cn*.5),Ta=_(Kn);return[a(it*Ta,Cn*o(Kn)),Cn?O(Ft*Ta/Cn):0]}},De}var Po=[[.9972523,0],[.0052513,-.0041175],[.0074606,.0048125],[-.0153783,-.1968253],[.0636871,-.1408027],[.3660976,-.2937382]],od=[[.98879,0],[0,0],[-.050909,0],[0,0],[.075528,0]],Yo=[[.984299,0],[.0211642,.0037608],[-.1036018,-.0575102],[-.0329095,-.0320119],[.0499471,.1223335],[.026046,.0899805],[7388e-7,-.1435792],[.0075848,-.1334108],[-.0216473,.0776645],[-.0225161,.0853673]],Pa=[[.9245,0],[0,0],[.01943,0]],af=[[.721316,0],[0,0],[-.00881625,-.00617325]];function Hu(){return Bl(Po,[152,-64]).scale(1400).center([-160.908,62.4864]).clipAngle(30).angle(7.8)}function bl(){return Bl(od,[95,-38]).scale(1e3).clipAngle(55).center([-96.5563,38.8675])}function Gf(){return Bl(Yo,[120,-45]).scale(359.513).clipAngle(55).center([-117.474,53.0628])}function Ic(){return Bl(Pa,[-20,-18]).scale(209.091).center([20,16.7214]).clipAngle(82)}function yf(){return Bl(af,[165,10]).scale(250).clipAngle(130).center([-165,-10])}function Bl(ve,be){var De=t.geoProjection(ad(ve)).rotate(be).clipAngle(90),Be=t.geoRotation(be),et=De.center;return delete De.rotate,De.center=function(We){return arguments.length?et(Be(We)):Be.invert(et())},De}var wh=G(6),Qf=G(7);function _f(ve,be){var De=O(7*_(be)/(3*wh));return[wh*ve*(2*o(2*De/3)-1)/Qf,9*_(De/3)/Qf]}_f.invert=function(ve,be){var De=3*O(be*Qf/9);return[ve*Qf/(wh*(2*o(2*De/3)-1)),O(_(De)*3*wh/7)]};function Yc(){return t.geoProjection(_f).scale(164.859)}function eh(ve,be){for(var De=(1+x)*_(be),Be=be,et=0,We;et<25&&(Be-=We=(_(Be/2)+_(Be)-De)/(.5*o(Be/2)+o(Be)),!(n(We)<p));et++);return[ve*(1+2*o(Be)/o(Be/2))/(3*C),2*G(3)*_(Be/2)/G(2+C)]}eh.invert=function(ve,be){var De=be*G(2+C)/(2*G(3)),Be=2*O(De);return[3*C*ve/(1+2*o(Be)/o(Be/2)),O((De+_(Be))/(1+x))]};function th(){return t.geoProjection(eh).scale(188.209)}function ju(ve,be){for(var De=G(6/(4+E)),Be=(1+E/4)*_(be),et=be/2,We=0,it;We<25&&(et-=it=(et/2+_(et)-Be)/(.5+o(et)),!(n(it)<p));We++);return[De*(.5+o(et))*ve/1.5,De*et]}ju.invert=function(ve,be){var De=G(6/(4+E)),Be=be/De;return n(n(Be)-S)<p&&(Be=Be<0?-S:S),[1.5*ve/(De*(.5+o(Be))),O((Be/2+_(Be))/(1+E/4))]};function Hf(){return t.geoProjection(ju).scale(166.518)}function cc(ve,be){var De=be*be,Be=De*De,et=De*Be;return[ve*(.84719-.13063*De+et*et*(-.04515+.05494*De-.02326*Be+.00331*et)),be*(1.01183+Be*Be*(-.02625+.01926*De-.00396*Be))]}cc.invert=function(ve,be){var De=be,Be=25,et,We,it,Ft;do We=De*De,it=We*We,De-=et=(De*(1.01183+it*it*(-.02625+.01926*We-.00396*it))-be)/(1.01183+it*it*(9*-.02625+11*.01926*We+13*-.00396*it));while(n(et)>k&&--Be>0);return We=De*De,it=We*We,Ft=We*it,[ve/(.84719-.13063*We+Ft*Ft*(-.04515+.05494*We-.02326*it+.00331*Ft)),De]};function of(){return t.geoProjection(cc).scale(175.295)}function Nl(ve,be){return[ve*(1+o(be))/2,2*(be-b(be/2))]}Nl.invert=function(ve,be){for(var De=be/2,Be=0,et=1/0;Be<10&&n(et)>p;++Be){var We=o(be/2);be-=et=(be-b(be/2)-De)/(1-.5/(We*We))}return[2*ve/(1+o(be)),be]};function Kc(){return t.geoProjection(Nl).scale(152.63)}var Rc=[[[[-180,0],[-90,90],[0,0]],[[0,0],[90,90],[180,0]]],[[[-180,0],[-90,-90],[0,0]],[[0,0],[90,-90],[180,0]]]];function gs(){return Do(Ze(1/0),Rc).rotate([20,0]).scale(152.63)}function jf(ve,be){var De=_(be),Be=o(be),et=v(ve);if(ve===0||n(be)===S)return[0,be];if(be===0)return[ve,0];if(n(ve)===S)return[ve*Be,S*De];var We=E/(2*ve)-2*ve/E,it=2*be/E,Ft=(1-it*it)/(De-it),Ht=We*We,tr=Ft*Ft,dr=1+Ht/tr,Sr=1+tr/Ht,Or=(We*De/Ft-We/2)/dr,Wr=(tr*De/Ht+Ft/2)/Sr,ni=Or*Or+Be*Be/dr,Pi=Wr*Wr-(tr*De*De/Ht+Ft*De-1)/Sr;return[S*(Or+G(ni)*et),S*(Wr+G(Pi<0?0:Pi)*v(-be*We)*et)]}jf.invert=function(ve,be){ve/=S,be/=S;var De=ve*ve,Be=be*be,et=De+Be,We=E*E;return[ve?(et-1+G((1-et)*(1-et)+4*De))/(2*ve)*S:0,Zt(function(it){return et*(E*_(it)-2*it)*E+4*it*it*(be-_(it))+2*E*it-We*be},0)]};function Gh(){return t.geoProjection(jf).scale(127.267)}var rh=1.0148,sf=.23185,Th=-.14499,Mu=.02406,ih=rh,js=5*sf,Eu=7*Th,Dc=9*Mu,ks=1.790857183;function bc(ve,be){var De=be*be;return[ve,be*(rh+De*De*(sf+De*(Th+Mu*De)))]}bc.invert=function(ve,be){be>ks?be=ks:be<-ks&&(be=-ks);var De=be,Be;do{var et=De*De;De-=Be=(De*(rh+et*et*(sf+et*(Th+Mu*et)))-be)/(ih+et*et*(js+et*(Eu+Dc*et)))}while(n(Be)>p);return[ve,De]};function hu(){return t.geoProjection(bc).scale(139.319)}function _u(ve,be){if(n(be)<p)return[ve,0];var De=b(be),Be=ve*_(be);return[_(Be)/De,be+(1-o(Be))/De]}_u.invert=function(ve,be){if(n(be)<p)return[ve,0];var De=ve*ve+be*be,Be=be*.5,et=10,We;do{var it=b(Be),Ft=1/o(Be),Ht=De-2*be*Be+Be*Be;Be-=We=(it*Ht+2*(Be-be))/(2+Ht*Ft*Ft+2*(Be-be)*it)}while(n(We)>p&&--et>0);return it=b(Be),[(n(be)<n(Be+1/it)?O(ve*it):v(be)*v(ve)*(V(n(ve*it))+S))/_(Be),Be]};function nl(){return t.geoProjection(_u).scale(103.74)}function nh(ve,be){var De=Fc(ve[1],ve[0]),Be=Fc(be[1],be[0]),et=bd(De,Be),We=wc(De)/wc(Be);return zu([1,0,ve[0][0],0,1,ve[0][1]],zu([We,0,0,0,We,0],zu([o(et),_(et),0,-_(et),o(et),0],[1,0,-be[0][0],0,1,-be[0][1]])))}function Ah(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 xf(ve,be,De){Be(ve,{transform:null});function Be(tr,dr){if(tr.edges=jl(tr.face),dr.face){var Sr=tr.shared=bf(tr.face,dr.face),Or=nh(Sr.map(dr.project),Sr.map(tr.project));tr.transform=dr.transform?zu(dr.transform,Or):Or;for(var Wr=dr.edges,ni=0,Pi=Wr.length;ni<Pi;++ni)Ou(Sr[0],Wr[ni][1])&&Ou(Sr[1],Wr[ni][0])&&(Wr[ni]=tr),Ou(Sr[0],Wr[ni][0])&&Ou(Sr[1],Wr[ni][1])&&(Wr[ni]=tr);for(Wr=tr.edges,ni=0,Pi=Wr.length;ni<Pi;++ni)Ou(Sr[0],Wr[ni][0])&&Ou(Sr[1],Wr[ni][1])&&(Wr[ni]=dr),Ou(Sr[0],Wr[ni][1])&&Ou(Sr[1],Wr[ni][0])&&(Wr[ni]=dr)}else tr.transform=dr.transform;return tr.children&&tr.children.forEach(function(cn){Be(cn,tr)}),tr}function et(tr,dr){var Sr=be(tr,dr),Or=Sr.project([tr*P,dr*P]),Wr;return(Wr=Sr.transform)?[Wr[0]*Or[0]+Wr[1]*Or[1]+Wr[2],-(Wr[3]*Or[0]+Wr[4]*Or[1]+Wr[5])]:(Or[1]=-Or[1],Or)}lf(ve)&&(et.invert=function(tr,dr){var Sr=We(ve,[tr,-dr]);return Sr&&(Sr[0]*=T,Sr[1]*=T,Sr)});function We(tr,dr){var Sr=tr.project.invert,Or=tr.transform,Wr=dr;if(Or&&(Or=Ah(Or),Wr=[Or[0]*Wr[0]+Or[1]*Wr[1]+Or[2],Or[3]*Wr[0]+Or[4]*Wr[1]+Or[5]]),Sr&&tr===it(ni=Sr(Wr)))return ni;for(var ni,Pi=tr.children,cn=0,ln=Pi&&Pi.length;cn<ln;++cn)if(ni=We(Pi[cn],dr))return ni}function it(tr){return be(tr[0]*T,tr[1]*T)}var Ft=t.geoProjection(et),Ht=Ft.stream;return Ft.stream=function(tr){var dr=Ft.rotate(),Sr=Ht(tr),Or=(Ft.rotate([0,0]),Ht(tr));return Ft.rotate(dr),Sr.sphere=function(){Or.polygonStart(),Or.lineStart(),Pf(Or,ve),Or.lineEnd(),Or.polygonEnd()},Sr},Ft.angle(De==null?-30:De*P)}function Pf(ve,be,De){var Be,et=be.edges,We=et.length,it,Ft={type:"MultiPoint",coordinates:be.face},Ht=be.face.filter(function(Pi){return n(Pi[1])!==90}),tr=t.geoBounds({type:"MultiPoint",coordinates:Ht}),dr=!1,Sr=-1,Or=tr[1][0]-tr[0][0],Wr=Or===180||Or===360?[(tr[0][0]+tr[1][0])/2,(tr[0][1]+tr[1][1])/2]:t.geoCentroid(Ft);if(De)for(;++Sr<We&&et[Sr]!==De;);++Sr;for(var ni=0;ni<We;++ni)it=et[(ni+Sr)%We],Array.isArray(it)?(dr||(ve.point((Be=t.geoInterpolate(it[0],Wr)(p))[0],Be[1]),dr=!0),ve.point((Be=t.geoInterpolate(it[1],Wr)(p))[0],Be[1])):(dr=!1,it!==De&&Pf(ve,it,be))}function Ou(ve,be){return ve&&be&&ve[0]===be[0]&&ve[1]===be[1]}function bf(ve,be){for(var De,Be,et=ve.length,We=null,it=0;it<et;++it){De=ve[it];for(var Ft=be.length;--Ft>=0;)if(Be=be[Ft],De[0]===Be[0]&&De[1]===Be[1]){if(We)return[We,De];We=De}}}function jl(ve){for(var be=ve.length,De=[],Be=ve[be-1],et=0;et<be;++et)De.push([Be,Be=ve[et]]);return De}function lf(ve){return ve.project.invert||ve.children&&ve.children.some(lf)}var Hh=[[0,90],[-90,0],[0,0],[90,0],[180,0],[0,-90]],If=[[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 Hh[be]})});function Cs(ve){ve=ve||function(De){var Be=t.geoCentroid({type:"MultiPoint",coordinates:De});return t.geoGnomonic().scale(1).translate([0,0]).rotate([-Be[0],-Be[1]])};var be=If.map(function(De){return{face:De,project:ve(De)}});return[-1,0,0,1,0,1,4,5].forEach(function(De,Be){var et=be[De];et&&(et.children||(et.children=[])).push(be[Be])}),xf(be[0],function(De,Be){return be[De<-E/2?Be<0?6:4:De<0?Be<0?2:0:De<E/2?Be<0?3:1:Be<0?7:5]}).angle(-30).scale(101.858).center([0,45])}var du=2/G(3);function ku(ve,be){var De=xt(ve,be);return[De[0]*du,De[1]]}ku.invert=function(ve,be){return xt.invert(ve/du,be)};function Wf(ve){ve=ve||function(De){var Be=t.geoCentroid({type:"MultiPoint",coordinates:De});return t.geoProjection(ku).translate([0,0]).scale(1).rotate(Be[1]>0?[-Be[0],0]:[180-Be[0],180])};var be=If.map(function(De){return{face:De,project:ve(De)}});return[-1,0,0,1,0,1,4,5].forEach(function(De,Be){var et=be[De];et&&(et.children||(et.children=[])).push(be[Be])}),xf(be[0],function(De,Be){return be[De<-E/2?Be<0?6:4:De<0?Be<0?2:0:De<E/2?Be<0?3:1:Be<0?7:5]}).angle(-30).scale(121.906).center([0,48.5904])}function Us(ve){ve=ve||function(it){var Ft=it.length===6?t.geoCentroid({type:"MultiPoint",coordinates:it}):it[0];return t.geoGnomonic().scale(1).translate([0,0]).rotate([-Ft[0],-Ft[1]])};var be=If.map(function(it){for(var Ft=it.map(Rf),Ht=Ft.length,tr=Ft[Ht-1],dr,Sr=[],Or=0;Or<Ht;++Or)dr=Ft[Or],Sr.push(Wu([tr[0]*.9486832980505138+dr[0]*.31622776601683794,tr[1]*.9486832980505138+dr[1]*.31622776601683794,tr[2]*.9486832980505138+dr[2]*.31622776601683794]),Wu([dr[0]*.9486832980505138+tr[0]*.31622776601683794,dr[1]*.9486832980505138+tr[1]*.31622776601683794,dr[2]*.9486832980505138+tr[2]*.31622776601683794])),tr=dr;return Sr}),De=[],Be=[-1,0,0,1,0,1,4,5];be.forEach(function(it,Ft){for(var Ht=If[Ft],tr=Ht.length,dr=De[Ft]=[],Sr=0;Sr<tr;++Sr)be.push([Ht[Sr],it[(Sr*2+2)%(2*tr)],it[(Sr*2+1)%(2*tr)]]),Be.push(Ft),dr.push(zc(Rf(it[(Sr*2+2)%(2*tr)]),Rf(it[(Sr*2+1)%(2*tr)])))});var et=be.map(function(it){return{project:ve(it),face:it}});Be.forEach(function(it,Ft){var Ht=et[it];Ht&&(Ht.children||(Ht.children=[])).push(et[Ft])});function We(it,Ft){var Ht=o(Ft),tr=[Ht*o(it),Ht*_(it),_(Ft)],dr=it<-E/2?Ft<0?6:4:it<0?Ft<0?2:0:it<E/2?Ft<0?3:1:Ft<0?7:5,Sr=De[dr];return et[wf(Sr[0],tr)<0?8+3*dr:wf(Sr[1],tr)<0?8+3*dr+1:wf(Sr[2],tr)<0?8+3*dr+2:dr]}return xf(et[0],We).angle(-30).scale(110.625).center([0,45])}function wf(ve,be){for(var De=0,Be=ve.length,et=0;De<Be;++De)et+=ve[De]*be[De];return et}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 Rf(ve){var be=ve[0]*T,De=ve[1]*T,Be=o(De);return[Be*o(be),Be*_(be),_(De)]}function Xu(){}function uf(ve){if((De=ve.length)<4)return!1;for(var be=0,De,Be=ve[De-1][1]*ve[0][0]-ve[De-1][0]*ve[0][1];++be<De;)Be+=ve[be-1][1]*ve[be][0]-ve[be-1][0]*ve[be][1];return Be<=0}function Xf(ve,be){for(var De=be[0],Be=be[1],et=!1,We=0,it=ve.length,Ft=it-1;We<it;Ft=We++){var Ht=ve[We],tr=Ht[0],dr=Ht[1],Sr=ve[Ft],Or=Sr[0],Wr=Sr[1];dr>Be^Wr>Be&&De<(Or-tr)*(Be-dr)/(Wr-dr)+tr&&(et=!et)}return et}function Wl(ve,be){var De=be.stream,Be;if(!De)throw new Error("invalid projection");switch(ve&&ve.type){case"Feature":Be=Zu;break;case"FeatureCollection":Be=ah;break;default:Be=Tc;break}return Be(ve,De)}function ah(ve,be){return{type:"FeatureCollection",features:ve.features.map(function(De){return Zu(De,be)})}}function Zu(ve,be){return{type:"Feature",id:ve.id,properties:ve.properties,geometry:Tc(ve.geometry,be)}}function Oc(ve,be){return{type:"GeometryCollection",geometries:ve.geometries.map(function(De){return Tc(De,be)})}}function Tc(ve,be){if(!ve)return null;if(ve.type==="GeometryCollection")return Oc(ve,be);var De;switch(ve.type){case"Point":De=qc;break;case"MultiPoint":De=qc;break;case"LineString":De=cf;break;case"MultiLineString":De=cf;break;case"Polygon":De=fc;break;case"MultiPolygon":De=fc;break;case"Sphere":De=fc;break;default:return null}return t.geoStream(ve,be(De)),De.result()}var wl=[],vu=[],qc={point:function(ve,be){wl.push([ve,be])},result:function(){var ve=wl.length?wl.length<2?{type:"Point",coordinates:wl[0]}:{type:"MultiPoint",coordinates:wl}:null;return wl=[],ve}},cf={lineStart:Xu,point:function(ve,be){wl.push([ve,be])},lineEnd:function(){wl.length&&(vu.push(wl),wl=[])},result:function(){var ve=vu.length?vu.length<2?{type:"LineString",coordinates:vu[0]}:{type:"MultiLineString",coordinates:vu}:null;return vu=[],ve}},fc={polygonStart:Xu,lineStart:Xu,point:function(ve,be){wl.push([ve,be])},lineEnd:function(){var ve=wl.length;if(ve){do wl.push(wl[0].slice());while(++ve<4);vu.push(wl),wl=[]}},polygonEnd:Xu,result:function(){if(!vu.length)return null;var ve=[],be=[];return vu.forEach(function(De){uf(De)?ve.push([De]):be.push(De)}),be.forEach(function(De){var Be=De[0];ve.some(function(et){if(Xf(et[0],Be))return et.push(De),!0})||ve.push([De])}),vu=[],ve.length?ve.length>1?{type:"MultiPolygon",coordinates:ve}:{type:"Polygon",coordinates:ve[0]}:null}};function Bc(ve){var be=ve(S,0)[0]-ve(-S,0)[0];function De(Be,et){var We=n(Be)<S,it=ve(We?Be:Be>0?Be-E:Be+E,et),Ft=(it[0]-it[1])*x,Ht=(it[0]+it[1])*x;if(We)return[Ft,Ht];var tr=be*x,dr=Ft>0^Ht>0?-1:1;return[dr*Ft-v(Ht)*tr,dr*Ht-v(Ft)*tr]}return ve.invert&&(De.invert=function(Be,et){var We=(Be+et)*x,it=(et-Be)*x,Ft=n(We)<.5*be&&n(it)<.5*be;if(!Ft){var Ht=be*x,tr=We>0^it>0?-1:1,dr=-tr*Be+(it>0?1:-1)*Ht,Sr=-tr*et+(We>0?1:-1)*Ht;We=(-dr-Sr)*x,it=(dr-Sr)*x}var Or=ve.invert(We,it);return Ft||(Or[0]+=We>0?E:-E),Or}),t.geoProjection(De).rotate([-90,-90,45]).clipAngle(180-.001)}function At(){return Bc(Li).scale(176.423)}function Wt(){return Bc(Lo).scale(111.48)}function Cr(ve,be){if(!(0<=(be=+be)&&be<=20))throw new Error("invalid digits");function De(tr){var dr=tr.length,Sr=2,Or=new Array(dr);for(Or[0]=+tr[0].toFixed(be),Or[1]=+tr[1].toFixed(be);Sr<dr;)Or[Sr]=tr[Sr],++Sr;return Or}function Be(tr){return tr.map(De)}function et(tr){for(var dr=De(tr[0]),Sr=[dr],Or=1;Or<tr.length;Or++){var Wr=De(tr[Or]);(Wr.length>2||Wr[0]!=dr[0]||Wr[1]!=dr[1])&&(Sr.push(Wr),dr=Wr)}return Sr.length===1&&tr.length>1&&Sr.push(De(tr[tr.length-1])),Sr}function We(tr){return tr.map(et)}function it(tr){if(tr==null)return tr;var dr;switch(tr.type){case"GeometryCollection":dr={type:"GeometryCollection",geometries:tr.geometries.map(it)};break;case"Point":dr={type:"Point",coordinates:De(tr.coordinates)};break;case"MultiPoint":dr={type:tr.type,coordinates:Be(tr.coordinates)};break;case"LineString":dr={type:tr.type,coordinates:et(tr.coordinates)};break;case"MultiLineString":case"Polygon":dr={type:tr.type,coordinates:We(tr.coordinates)};break;case"MultiPolygon":dr={type:"MultiPolygon",coordinates:tr.coordinates.map(We)};break;default:return tr}return tr.bbox!=null&&(dr.bbox=tr.bbox),dr}function Ft(tr){var dr={type:"Feature",properties:tr.properties,geometry:it(tr.geometry)};return tr.id!=null&&(dr.id=tr.id),tr.bbox!=null&&(dr.bbox=tr.bbox),dr}if(ve!=null)switch(ve.type){case"Feature":return Ft(ve);case"FeatureCollection":{var Ht={type:"FeatureCollection",features:ve.features.map(Ft)};return ve.bbox!=null&&(Ht.bbox=ve.bbox),Ht}default:return it(ve)}return ve}function Ar(ve){var be=_(ve);function De(Be,et){var We=be?b(Be*be/2)/be:Be/2;if(!et)return[2*We,-ve];var it=2*i(We*_(et)),Ft=1/b(et);return[_(it)*Ft,et+(1-o(it))*Ft-ve]}return De.invert=function(Be,et){if(n(et+=ve)<p)return[be?2*i(be*Be/2)/be:Be,0];var We=Be*Be+et*et,it=0,Ft=10,Ht;do{var tr=b(it),dr=1/o(it),Sr=We-2*et*it+it*it;it-=Ht=(tr*Sr+2*(it-et))/(2+Sr*dr*dr+2*(it-et)*tr)}while(n(Ht)>p&&--Ft>0);var Or=Be*(tr=b(it)),Wr=b(n(et)<n(it+1/tr)?O(Or)*.5:V(Or)*.5+E/4)/_(it);return[be?2*i(be*Wr)/be:2*Wr,it]},De}function Kr(){return Vt(Ar).scale(131.215)}var ki=[[.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]];ki.forEach(function(ve){ve[1]*=1.0144});function Xi(ve,be){var De=f(18,n(be)*36/E),Be=l(De),et=De-Be,We=(Sr=ki[Be])[0],it=Sr[1],Ft=(Sr=ki[++Be])[0],Ht=Sr[1],tr=(Sr=ki[f(19,++Be)])[0],dr=Sr[1],Sr;return[ve*(Ft+et*(tr-We)/2+et*et*(tr-2*Ft+We)/2),(be>0?S:-S)*(Ht+et*(dr-it)/2+et*et*(dr-2*Ht+it)/2)]}Xi.invert=function(ve,be){var De=be/S,Be=De*90,et=f(18,n(Be/5)),We=c(0,l(et));do{var it=ki[We][1],Ft=ki[We+1][1],Ht=ki[f(19,We+2)][1],tr=Ht-it,dr=Ht-2*Ft+it,Sr=2*(n(De)-Ft)/tr,Or=dr/tr,Wr=Sr*(1-Or*Sr*(1-2*Or*Sr));if(Wr>=0||We===1){Be=(be>=0?5:-5)*(Wr+et);var ni=50,Pi;do et=f(18,n(Be)/5),We=l(et),Wr=et-We,it=ki[We][1],Ft=ki[We+1][1],Ht=ki[f(19,We+2)][1],Be-=(Pi=(be>=0?S:-S)*(Ft+Wr*(Ht-it)/2+Wr*Wr*(Ht-2*Ft+it)/2)-be)*P;while(n(Pi)>k&&--ni>0);break}}while(--We>=0);var cn=ki[We][0],ln=ki[We+1][0],Cn=ki[f(19,We+2)][0];return[ve/(ln+Wr*(Cn-cn)/2+Wr*Wr*(Cn-2*ln+cn)/2),Be*T]};function dn(){return t.geoProjection(Xi).scale(152.63)}function wn(ve){function be(De,Be){var et=o(Be),We=(ve-1)/(ve-et*o(De));return[We*et*_(De),We*_(Be)]}return be.invert=function(De,Be){var et=De*De+Be*Be,We=G(et),it=(ve-G(1-et*(ve+1)/(ve-1)))/((ve-1)/We+We/(ve-1));return[a(De*it,We*G(1-it*it)),We?O(Be*it/We):0]},be}function Nn(ve,be){var De=wn(ve);if(!be)return De;var Be=o(be),et=_(be);function We(it,Ft){var Ht=De(it,Ft),tr=Ht[1],dr=tr*et/(ve-1)+Be;return[Ht[0]*Be/dr,tr/dr]}return We.invert=function(it,Ft){var Ht=(ve-1)/(ve-1-Ft*et);return De.invert(Ht*it,Ht*Ft*Be)},We}function Yi(){var ve=2,be=0,De=t.geoProjectionMutator(Nn),Be=De(ve,be);return Be.distance=function(et){return arguments.length?De(ve=+et,be):ve},Be.tilt=function(et){return arguments.length?De(ve,be=et*T):be*P},Be.scale(432.147).clipAngle(V(1/ve)*P-1e-6)}var Qi=1e-4,on=1e4,Fi=-180,$n=Fi+Qi,Ca=180,Ra=Ca-Qi,La=-90,Na=La+Qi,Yn=90,Dn=Yn-Qi;function Ka(ve){return ve.length>0}function bo(ve){return Math.floor(ve*on)/on}function Xo(ve){return ve===La||ve===Yn?[0,ve]:[Fi,bo(ve)]}function Ss(ve){var be=ve[0],De=ve[1],Be=!1;return be<=$n?(be=Fi,Be=!0):be>=Ra&&(be=Ca,Be=!0),De<=Na?(De=La,Be=!0):De>=Dn&&(De=Yn,Be=!0),Be?[be,De]:ve}function as(ve){return ve.map(Ss)}function ws(ve,be,De){for(var Be=0,et=ve.length;Be<et;++Be){var We=ve[Be].slice();De.push({index:-1,polygon:be,ring:We});for(var it=0,Ft=We.length;it<Ft;++it){var Ht=We[it],tr=Ht[0],dr=Ht[1];if(tr<=$n||tr>=Ra||dr<=Na||dr>=Dn){We[it]=Ss(Ht);for(var Sr=it+1;Sr<Ft;++Sr){var Or=We[Sr],Wr=Or[0],ni=Or[1];if(Wr>$n&&Wr<Ra&&ni>Na&&ni<Dn)break}if(Sr===it+1)continue;if(it){var Pi={index:-1,polygon:be,ring:We.slice(0,it+1)};Pi.ring[Pi.ring.length-1]=Xo(dr),De[De.length-1]=Pi}else De.pop();if(Sr>=Ft)break;De.push({index:-1,polygon:be,ring:We=We.slice(Sr-1)}),We[0]=Xo(We[0][1]),it=-1,Ft=We.length}}}}function Ho(ve){var be,De=ve.length,Be={},et={},We,it,Ft,Ht,tr;for(be=0;be<De;++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]=et[Ht]=We}for(be=0;be<De;++be)if(We=ve[be],We){if(it=We.ring[0],Ht=We.ring[We.ring.length-1],Ft=et[it],tr=Be[Ht],delete Be[it],delete et[Ht],it[0]===Ht[0]&&it[1]===Ht[1]){We.polygon.push(We.ring);continue}Ft?(delete et[it],delete Be[Ft.ring[0]],Ft.ring.pop(),ve[Ft.index]=null,We={index:-1,polygon:Ft.polygon,ring:Ft.ring.concat(We.ring)},Ft===tr?We.polygon.push(We.ring):(We.index=De++,ve.push(Be[We.ring[0]]=et[We.ring[We.ring.length-1]]=We))):tr?(delete Be[Ht],delete et[tr.ring[tr.ring.length-1]],We.ring.pop(),We={index:De++,polygon:tr.polygon,ring:We.ring.concat(tr.ring)},ve[tr.index]=null,ve.push(Be[We.ring[0]]=et[We.ring[We.ring.length-1]]=We)):(We.ring.push(We.ring[0]),We.polygon.push(We.ring))}}function ml(ve){var be={type:"Feature",geometry:Ws(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 Ws(ve){if(ve==null)return ve;var be,De,Be,et;switch(ve.type){case"GeometryCollection":be={type:"GeometryCollection",geometries:ve.geometries.map(Ws)};break;case"Point":be={type:"Point",coordinates:Ss(ve.coordinates)};break;case"MultiPoint":case"LineString":be={type:ve.type,coordinates:as(ve.coordinates)};break;case"MultiLineString":be={type:"MultiLineString",coordinates:ve.coordinates.map(as)};break;case"Polygon":{var We=[];ws(ve.coordinates,We,De=[]),Ho(De),be={type:"Polygon",coordinates:We};break}case"MultiPolygon":{De=[],Be=-1,et=ve.coordinates.length;for(var it=new Array(et);++Be<et;)ws(ve.coordinates[Be],it[Be]=[],De);Ho(De),be={type:"MultiPolygon",coordinates:it.filter(Ka)};break}default:return ve}return ve.bbox!=null&&(be.bbox=ve.bbox),be}function Ls(ve){if(ve==null)return ve;switch(ve.type){case"Feature":return ml(ve);case"FeatureCollection":{var be={type:"FeatureCollection",features:ve.features.map(ml)};return ve.bbox!=null&&(be.bbox=ve.bbox),be}default:return Ws(ve)}}function va(ve,be){var De=b(be/2),Be=_(L*De);return[ve*(.74482-.34588*Be*Be),1.70711*De]}va.invert=function(ve,be){var De=be/1.70711,Be=_(L*De);return[ve/(.74482-.34588*Be*Be),2*i(De)]};function no(){return t.geoProjection(va).scale(146.153)}function ys(ve,be,De){var Be=t.geoInterpolate(be,De),et=Be(.5),We=t.geoRotation([-et[0],-et[1]])(be),it=Be.distance/2,Ft=-O(_(We[1]*T)/_(it)),Ht=[-et[0],-et[1],-(We[0]>0?E-Ft:Ft)*P],tr=t.geoProjection(ve(it)).rotate(Ht),dr=t.geoRotation(Ht),Sr=tr.center;return delete tr.rotate,tr.center=function(Or){return arguments.length?Sr(dr(Or)):dr.invert(Sr())},tr.clipAngle(90)}function rs(ve){var be=o(ve);function De(Be,et){var We=t.geoGnomonicRaw(Be,et);return We[0]*=be,We}return De.invert=function(Be,et){return t.geoGnomonicRaw.invert(Be/be,et)},De}function $l(){return Cu([-158,21.5],[-77,39]).clipAngle(60).scale(400)}function Cu(ve,be){return ys(rs,ve,be)}function Yu(ve){if(!(ve*=2))return t.geoAzimuthalEquidistantRaw;var be=-ve/2,De=-be,Be=ve*ve,et=b(De),We=.5/_(De);function it(Ft,Ht){var tr=V(o(Ht)*o(Ft-be)),dr=V(o(Ht)*o(Ft-De)),Sr=Ht<0?-1:1;return tr*=tr,dr*=dr,[(tr-dr)/(2*ve),Sr*G(4*Be*dr-(Be-tr+dr)*(Be-tr+dr))/(2*ve)]}return it.invert=function(Ft,Ht){var tr=Ht*Ht,dr=o(G(tr+(Or=Ft+be)*Or)),Sr=o(G(tr+(Or=Ft+De)*Or)),Or,Wr;return[a(Wr=dr-Sr,Or=(dr+Sr)*et),(Ht<0?-1:1)*V(G(Or*Or+Wr*Wr)*We)]},it}function Nc(){return pu([-158,21.5],[-77,39]).clipAngle(130).scale(122.571)}function pu(ve,be){return ys(Yu,ve,be)}function Uc(ve,be){if(n(be)<p)return[ve,0];var De=n(be/S),Be=O(De);if(n(ve)<p||n(n(be)-S)<p)return[0,v(be)*E*b(Be/2)];var et=o(Be),We=n(E/ve-ve/E)/2,it=We*We,Ft=et/(De+et-1),Ht=Ft*(2/De-1),tr=Ht*Ht,dr=tr+it,Sr=Ft-tr,Or=it+Ft;return[v(ve)*E*(We*Sr+G(it*Sr*Sr-dr*(Ft*Ft-tr)))/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,S*_(2*i(be/E))];var De=(ve/=E)*ve,Be=(be/=E)*be,et=De+Be,We=et*et,it=-n(be)*(1+et),Ft=it-2*Be+De,Ht=-2*it+1+2*Be+We,tr=Be/Ht+(2*Ft*Ft*Ft/(Ht*Ht*Ht)-9*it*Ft/(Ht*Ht))/27,dr=(it-Ft*Ft/(3*Ht))/Ht,Sr=2*G(-dr/3),Or=V(3*tr/(dr*Sr))/3;return[E*(et-1+G(1+2*(De-Be)+We))/(2*ve),v(be)*E*(-Sr*o(Or+E/3)-Ft/(3*Ht))]};function xu(){return t.geoProjection(Uc).scale(79.4183)}function Ac(ve,be){if(n(be)<p)return[ve,0];var De=n(be/S),Be=O(De);if(n(ve)<p||n(n(be)-S)<p)return[0,v(be)*E*b(Be/2)];var et=o(Be),We=n(E/ve-ve/E)/2,it=We*We,Ft=et*(G(1+it)-We*et)/(1+it*De*De);return[v(ve)*E*Ft,v(be)*E*G(1-Ft*(2*We+Ft))]}Ac.invert=function(ve,be){if(!ve)return[0,S*_(2*i(be/E))];var De=n(ve/E),Be=(1-De*De-(be/=E)*be)/(2*De),et=Be*Be,We=G(et+1);return[v(ve)*E*(We-Be),v(be)*S*_(2*a(G((1-2*Be*De)*(Be+We)-De),G(We+Be+De)))]};function Ua(){return t.geoProjection(Ac).scale(79.4183)}function oo(ve,be){if(n(be)<p)return[ve,0];var De=be/S,Be=O(De);if(n(ve)<p||n(n(be)-S)<p)return[0,E*b(Be/2)];var et=(E/ve-ve/E)/2,We=De/(1+o(Be));return[E*(v(ve)*G(et*et+1-We*We)-et),E*We]}oo.invert=function(ve,be){if(!be)return[ve,0];var De=be/E,Be=(E*E*(1-De*De)-ve*ve)/(2*E*ve);return[ve?E*(v(ve)*G(Be*Be+1)-Be):0,S*_(2*i(De))]};function Vc(){return t.geoProjection(oo).scale(79.4183)}function hc(ve,be){if(!be)return[ve,0];var De=n(be);if(!ve||De===S)return[0,be];var Be=De/S,et=Be*Be,We=(8*Be-et*(et+2)-5)/(2*et*(Be-1)),it=We*We,Ft=Be*We,Ht=et+it+2*Ft,tr=Be+3*We,dr=ve/S,Sr=dr+1/dr,Or=v(n(ve)-S)*G(Sr*Sr-4),Wr=Or*Or,ni=Ht*(et+it*Wr-1)+(1-et)*(et*(tr*tr+4*it)+12*Ft*it+4*it*it),Pi=(Or*(Ht+it-1)+2*G(ni))/(4*Ht+Wr);return[v(ve)*S*Pi,v(be)*S*G(1+Or*n(Pi)-Pi*Pi)]}hc.invert=function(ve,be){var De;if(!ve||!be)return[ve,be];be/=E;var Be=v(ve)*ve/S,et=(Be*Be-1+4*be*be)/n(Be),We=et*et,it=2*be,Ft=50;do{var Ht=it*it,tr=(8*it-Ht*(Ht+2)-5)/(2*Ht*(it-1)),dr=(3*it-Ht*it-10)/(2*Ht*it),Sr=tr*tr,Or=it*tr,Wr=it+tr,ni=Wr*Wr,Pi=it+3*tr,cn=ni*(Ht+Sr*We-1)+(1-Ht)*(Ht*(Pi*Pi+4*Sr)+Sr*(12*Or+4*Sr)),ln=-2*Wr*(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)),Cn=G(cn),Kn=et*(ni+Sr-1)+2*Cn-Be*(4*ni+We),Ta=et*(2*tr*dr+2*Wr*(1+dr))+ln/Cn-8*Wr*(et*(-1+Sr+ni)+2*Cn)*(1+dr)/(We+4*ni);it-=De=Kn/Ta}while(De>p&&--Ft>0);return[v(ve)*(G(et*et+4)+et)*E/4,S*it]};function Ku(){return t.geoProjection(hc).scale(127.16)}function ue(ve,be,De,Be,et){function We(it,Ft){var Ht=De*_(Be*Ft),tr=G(1-Ht*Ht),dr=G(2/(1+tr*o(it*=et)));return[ve*tr*dr*_(it),be*Ht*dr]}return We.invert=function(it,Ft){var Ht=it/ve,tr=Ft/be,dr=G(Ht*Ht+tr*tr),Sr=2*O(dr/2);return[a(it*b(Sr),ve*dr)/et,dr&&O(Ft*_(Sr)/(be*De*dr))/Be]},We}function w(ve,be,De,Be){var et=E/3;ve=c(ve,p),be=c(be,p),ve=f(ve,S),be=f(be,E-p),De=c(De,0),De=f(De,100-p),Be=c(Be,p);var We=De/100+1,it=Be/100,Ft=V(We*o(et))/et,Ht=_(ve)/_(Ft*S),tr=be/E,dr=G(it*_(ve/2)/_(be/2)),Sr=dr/G(tr*Ht*Ft),Or=1/(dr*G(tr*Ht*Ft));return ue(Sr,Or,Ht,Ft,tr)}function B(){var ve=65*T,be=60*T,De=20,Be=200,et=t.geoProjectionMutator(w),We=et(ve,be,De,Be);return We.poleline=function(it){return arguments.length?et(ve=+it*T,be,De,Be):ve*P},We.parallels=function(it){return arguments.length?et(ve,be=+it*T,De,Be):be*P},We.inflation=function(it){return arguments.length?et(ve,be,De=+it,Be):De},We.ratio=function(it){return arguments.length?et(ve,be,De,Be=+it):Be},We.scale(163.775)}function Q(){return B().poleline(65).parallels(60).inflation(0).ratio(200).scale(172.633)}var ee=4*E+3*G(3),le=2*G(2*E*G(3)/ee),qe=Jt(le*G(3)/E,le,ee/6);function Xe(){return t.geoProjection(qe).scale(176.84)}function ot(ve,be){return[ve*G(1-3*be*be/(E*E)),be]}ot.invert=function(ve,be){return[ve/G(1-3*be*be/(E*E)),be]};function Tt(){return t.geoProjection(ot).scale(152.63)}function Yt(ve,be){var De=o(be),Be=o(ve)*De,et=1-Be,We=o(ve=a(_(ve)*De,-_(be))),it=_(ve);return De=G(1-Be*Be),[it*De-We*et,-We*De-it*et]}Yt.invert=function(ve,be){var De=(ve*ve+be*be)/-2,Be=G(-De*(2+De)),et=be*De+ve*Be,We=ve*De-be*Be,it=G(We*We+et*et);return[a(Be*et,it*(1+De)),it?-O(Be*We/it):0]};function Kt(){return t.geoProjection(Yt).rotate([0,-90,45]).scale(124.75).clipAngle(180-.001)}function xr(ve,be){var De=Ee(ve,be);return[(De[0]+ve/S)/2,(De[1]+be)/2]}xr.invert=function(ve,be){var De=ve,Be=be,et=25;do{var We=o(Be),it=_(Be),Ft=_(2*Be),Ht=it*it,tr=We*We,dr=_(De),Sr=o(De/2),Or=_(De/2),Wr=Or*Or,ni=1-tr*Sr*Sr,Pi=ni?V(We*Sr)*G(cn=1/ni):cn=0,cn,ln=.5*(2*Pi*We*Or+De/S)-ve,Cn=.5*(Pi*it+Be)-be,Kn=.5*cn*(tr*Wr+Pi*We*Sr*Ht)+.5/S,Ta=cn*(dr*Ft/4-Pi*it*Or),fa=.125*cn*(Ft*Or-Pi*it*tr*dr),$a=.5*cn*(Ht*Sr+Pi*Wr*We)+.5,Co=Ta*fa-$a*Kn,Qa=(Cn*Ta-ln*$a)/Co,mo=(ln*fa-Cn*Kn)/Co;De-=Qa,Be-=mo}while((n(Qa)>p||n(mo)>p)&&--et>0);return[De,Be]};function Ir(){return t.geoProjection(xr).scale(158.837)}e.geoNaturalEarth=t.geoNaturalEarth1,e.geoNaturalEarthRaw=t.geoNaturalEarth1Raw,e.geoAiry=_e,e.geoAiryRaw=oe,e.geoAitoff=Ce,e.geoAitoffRaw=Ee,e.geoArmadillo=ie,e.geoArmadilloRaw=me,e.geoAugust=Le,e.geoAugustRaw=Se,e.geoBaker=ge,e.geoBakerRaw=Pe,e.geoBerghaus=ce,e.geoBerghausRaw=Re,e.geoBertin1953=Gt,e.geoBertin1953Raw=lt,e.geoBoggs=Qt,e.geoBoggsRaw=St,e.geoBonne=er,e.geoBonneRaw=mt,e.geoBottomley=Tr,e.geoBottomleyRaw=lr,e.geoBromley=ti,e.geoBromleyRaw=Lr,e.geoChamberlin=tt,e.geoChamberlinRaw=Ge,e.geoChamberlinAfrica=je,e.geoCollignon=Ie,e.geoCollignonRaw=xt,e.geoCraig=ke,e.geoCraigRaw=xe,e.geoCraster=ar,e.geoCrasterRaw=ir,e.geoCylindricalEqualArea=ii,e.geoCylindricalEqualAreaRaw=vr,e.geoCylindricalStereographic=$r,e.geoCylindricalStereographicRaw=pi,e.geoEckert1=ji,e.geoEckert1Raw=di,e.geoEckert2=wi,e.geoEckert2Raw=In,e.geoEckert3=qn,e.geoEckert3Raw=On,e.geoEckert4=ra,e.geoEckert4Raw=Fn,e.geoEckert5=Ut,e.geoEckert5Raw=la,e.geoEckert6=rr,e.geoEckert6Raw=wt,e.geoEisenlohr=Xr,e.geoEisenlohrRaw=Er,e.geoFahey=Oi,e.geoFaheyRaw=Qr,e.geoFoucaut=tn,e.geoFoucautRaw=$i,e.geoFoucautSinusoidal=yn,e.geoFoucautSinusoidalRaw=fn,e.geoGilbert=ua,e.geoGingery=Wo,e.geoGingeryRaw=ma,e.geoGinzburg4=Ha,e.geoGinzburg4Raw=Wn,e.geoGinzburg5=jn,e.geoGinzburg5Raw=vo,e.geoGinzburg6=kr,e.geoGinzburg6Raw=Mt,e.geoGinzburg8=vi,e.geoGinzburg8Raw=Jr,e.geoGinzburg9=An,e.geoGinzburg9Raw=hn,e.geoGringorten=Jn,e.geoGringortenRaw=Li,e.geoGuyou=Fs,e.geoGuyouRaw=Lo,e.geoHammer=pt,e.geoHammerRaw=Ze,e.geoHammerRetroazimuthal=zl,e.geoHammerRetroazimuthalRaw=ll,e.geoHealpix=Zl,e.geoHealpixRaw=cl,e.geoHill=nc,e.geoHillRaw=Su,e.geoHomolosine=xo,e.geoHomolosineRaw=Ol,e.geoHufnagel=Ns,e.geoHufnagelRaw=Yl,e.geoHyperelliptical=Oo,e.geoHyperellipticalRaw=aa,e.geoInterrupt=Do,e.geoInterruptedBoggs=Uf,e.geoInterruptedHomolosine=Zc,e.geoInterruptedMollweide=Os,e.geoInterruptedMollweideHemispheres=oc,e.geoInterruptedSinuMollweide=sc,e.geoInterruptedSinusoidal=Lf,e.geoKavrayskiy7=nf,e.geoKavrayskiy7Raw=cs,e.geoLagrange=Jl,e.geoLagrangeRaw=Vf,e.geoLarrivee=Fu,e.geoLarriveeRaw=lc,e.geoLaskowski=Hs,e.geoLaskowskiRaw=Es,e.geoLittrow=ps,e.geoLittrowRaw=Go,e.geoLoximuthal=xl,e.geoLoximuthalRaw=uc,e.geoMiller=qs,e.geoMillerRaw=Gu,e.geoModifiedStereographic=Bl,e.geoModifiedStereographicRaw=ad,e.geoModifiedStereographicAlaska=Hu,e.geoModifiedStereographicGs48=bl,e.geoModifiedStereographicGs50=Gf,e.geoModifiedStereographicMiller=Ic,e.geoModifiedStereographicLee=yf,e.geoMollweide=wr,e.geoMollweideRaw=sr,e.geoMtFlatPolarParabolic=Yc,e.geoMtFlatPolarParabolicRaw=_f,e.geoMtFlatPolarQuartic=th,e.geoMtFlatPolarQuarticRaw=eh,e.geoMtFlatPolarSinusoidal=Hf,e.geoMtFlatPolarSinusoidalRaw=ju,e.geoNaturalEarth2=of,e.geoNaturalEarth2Raw=cc,e.geoNellHammer=Kc,e.geoNellHammerRaw=Nl,e.geoInterruptedQuarticAuthalic=gs,e.geoNicolosi=Gh,e.geoNicolosiRaw=jf,e.geoPatterson=hu,e.geoPattersonRaw=bc,e.geoPolyconic=nl,e.geoPolyconicRaw=_u,e.geoPolyhedral=xf,e.geoPolyhedralButterfly=Cs,e.geoPolyhedralCollignon=Wf,e.geoPolyhedralWaterman=Us,e.geoProject=Wl,e.geoGringortenQuincuncial=At,e.geoPeirceQuincuncial=Wt,e.geoPierceQuincuncial=Wt,e.geoQuantize=Cr,e.geoQuincuncial=Bc,e.geoRectangularPolyconic=Kr,e.geoRectangularPolyconicRaw=Ar,e.geoRobinson=dn,e.geoRobinsonRaw=Xi,e.geoSatellite=Yi,e.geoSatelliteRaw=Nn,e.geoSinuMollweide=Vu,e.geoSinuMollweideRaw=_a,e.geoSinusoidal=It,e.geoSinusoidalRaw=_t,e.geoStitch=Ls,e.geoTimes=no,e.geoTimesRaw=va,e.geoTwoPointAzimuthal=Cu,e.geoTwoPointAzimuthalRaw=rs,e.geoTwoPointAzimuthalUsa=$l,e.geoTwoPointEquidistant=pu,e.geoTwoPointEquidistantRaw=Yu,e.geoTwoPointEquidistantUsa=Nc,e.geoVanDerGrinten=xu,e.geoVanDerGrintenRaw=Uc,e.geoVanDerGrinten2=Ua,e.geoVanDerGrinten2Raw=Ac,e.geoVanDerGrinten3=Vc,e.geoVanDerGrinten3Raw=oo,e.geoVanDerGrinten4=Ku,e.geoVanDerGrinten4Raw=hc,e.geoWagner=B,e.geoWagner7=Q,e.geoWagnerRaw=w,e.geoWagner4=Xe,e.geoWagner4Raw=qe,e.geoWagner6=Tt,e.geoWagner6Raw=ot,e.geoWiechel=Kt,e.geoWiechelRaw=Yt,e.geoWinkel3=Ir,e.geoWinkel3Raw=xr,Object.defineProperty(e,"__esModule",{value:!0})})});var zDe=ye((xmr,FDe)=>{"use strict";var id=Oa(),DZ=Dr(),Mzt=qa(),$A=Math.PI/180,W2=180/Math.PI,zZ={cursor:"pointer"},OZ={cursor:"auto"};function Ezt(e,t){var r=e.projection,n;return t._isScoped?n=kzt:t._isClipped?n=Lzt:n=Czt,n(e,r)}FDe.exports=Ezt;function qZ(e,t){return id.behavior.zoom().translate(t.translate()).scale(t.scale())}function BZ(e,t,r){var n=e.id,i=e.graphDiv,a=i.layout,o=a[n],s=i._fullLayout,l=s[n],u={},c={};function f(h,d){u[n+"."+h]=DZ.nestedProperty(o,h).get(),Mzt.call("_storeDirectGUIEdit",a,s._preGUI,u);var v=DZ.nestedProperty(l,h);v.get()!==d&&(v.set(d),DZ.nestedProperty(o,h).set(d),c[n+"."+h]=d)}r(f),f("projection.scale",t.scale()/e.fitScale),f("fitbounds",!1),i.emit("plotly_relayout",c)}function kzt(e,t){var r=qZ(e,t);function n(){id.select(this).style(zZ)}function i(){t.scale(id.event.scale).translate(id.event.translate),e.render(!0);var s=t.invert(e.midPt);e.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":t.scale()/e.fitScale,"geo.center.lon":s[0],"geo.center.lat":s[1]})}function a(s){var l=t.invert(e.midPt);s("center.lon",l[0]),s("center.lat",l[1])}function o(){id.select(this).style(OZ),BZ(e,t,a)}return r.on("zoomstart",n).on("zoom",i).on("zoomend",o),r}function Czt(e,t){var r=qZ(e,t),n=2,i,a,o,s,l,u,c,f,h;function d(E){return t.invert(E)}function v(E){var S=d(E);if(!S)return!0;var L=t(S);return Math.abs(L[0]-E[0])>n||Math.abs(L[1]-E[1])>n}function _(){id.select(this).style(zZ),i=id.mouse(this),a=t.rotate(),o=t.translate(),s=a,l=d(i)}function b(){if(u=id.mouse(this),v(i)){r.scale(t.scale()),r.translate(t.translate());return}t.scale(id.event.scale),t.translate([o[0],id.event.translate[1]]),l?d(u)&&(f=d(u),c=[s[0]+(f[0]-l[0]),a[1],a[2]],t.rotate(c),s=c):(i=u,l=d(i)),h=!0,e.render(!0);var E=t.rotate(),S=t.invert(e.midPt);e.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":t.scale()/e.fitScale,"geo.center.lon":S[0],"geo.center.lat":S[1],"geo.projection.rotation.lon":-E[0]})}function p(){id.select(this).style(OZ),h&&BZ(e,t,k)}function k(E){var S=t.rotate(),L=t.invert(e.midPt);E("projection.rotation.lon",-S[0]),E("center.lon",L[0]),E("center.lat",L[1])}return r.on("zoomstart",_).on("zoom",b).on("zoomend",p),r}function Lzt(e,t){var r={r:t.rotate(),k:t.scale()},n=qZ(e,t),i=qzt(n,"zoomstart","zoom","zoomend"),a=0,o=n.on,s;n.on("zoomstart",function(){id.select(this).style(zZ);var h=id.mouse(this),d=t.rotate(),v=d,_=t.translate(),b=Pzt(d);s=IF(t,h),o.call(n,"zoom",function(){var p=id.mouse(this);if(t.scale(r.k=id.event.scale),!s)h=p,s=IF(t,h);else if(IF(t,p)){t.rotate(d).translate(_);var k=IF(t,p),E=Rzt(s,k),S=Fzt(Izt(b,E)),L=r.r=Dzt(S,s,v);(!isFinite(L[0])||!isFinite(L[1])||!isFinite(L[2]))&&(L=v),t.rotate(L),v=L}u(i.of(this,arguments))}),l(i.of(this,arguments))}).on("zoomend",function(){id.select(this).style(OZ),o.call(n,"zoom",null),c(i.of(this,arguments)),BZ(e,t,f)}).on("zoom.redraw",function(){e.render(!0);var h=t.rotate();e.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":t.scale()/e.fitScale,"geo.projection.rotation.lon":-h[0],"geo.projection.rotation.lat":-h[1]})});function l(h){a++||h({type:"zoomstart"})}function u(h){h({type:"zoom"})}function c(h){--a||h({type:"zoomend"})}function f(h){var d=t.rotate();h("projection.rotation.lon",-d[0]),h("projection.rotation.lat",-d[1])}return id.rebind(n,i,"on")}function IF(e,t){var r=e.invert(t);return r&&isFinite(r[0])&&isFinite(r[1])&&zzt(r)}function Pzt(e){var t=.5*e[0]*$A,r=.5*e[1]*$A,n=.5*e[2]*$A,i=Math.sin(t),a=Math.cos(t),o=Math.sin(r),s=Math.cos(r),l=Math.sin(n),u=Math.cos(n);return[a*s*u+i*o*l,i*s*u-a*o*l,a*o*u+i*s*l,a*s*l-i*o*u]}function Izt(e,t){var r=e[0],n=e[1],i=e[2],a=e[3],o=t[0],s=t[1],l=t[2],u=t[3];return[r*o-n*s-i*l-a*u,r*s+n*o+i*u-a*l,r*l-n*u+i*o+a*s,r*u+n*l-i*s+a*o]}function Rzt(e,t){if(!(!e||!t)){var r=Ozt(e,t),n=Math.sqrt(DDe(r,r)),i=.5*Math.acos(Math.max(-1,Math.min(1,DDe(e,t)))),a=Math.sin(i)/n;return n&&[Math.cos(i),r[2]*a,-r[1]*a,r[0]*a]}}function Dzt(e,t,r){var n=FZ(t,2,e[0]);n=FZ(n,1,e[1]),n=FZ(n,0,e[2]-r[2]);var i=t[0],a=t[1],o=t[2],s=n[0],l=n[1],u=n[2],c=Math.atan2(a,i)*W2,f=Math.sqrt(i*i+a*a),h,d;Math.abs(l)>f?(d=(l>0?90:-90)-c,h=0):(d=Math.asin(l/f)*W2-c,h=Math.sqrt(f*f-l*l));var v=180-d-2*c,_=(Math.atan2(u,s)-Math.atan2(o,h))*W2,b=(Math.atan2(u,s)-Math.atan2(o,-h))*W2,p=IDe(r[0],r[1],d,_),k=IDe(r[0],r[1],v,b);return p<=k?[d,_,r[2]]:[v,b,r[2]]}function IDe(e,t,r,n){var i=RDe(r-e),a=RDe(n-t);return Math.sqrt(i*i+a*a)}function RDe(e){return(e%360+540)%360-180}function FZ(e,t,r){var n=r*$A,i=e.slice(),a=t===0?1:0,o=t===2?1:2,s=Math.cos(n),l=Math.sin(n);return i[a]=e[a]*s-e[o]*l,i[o]=e[o]*s+e[a]*l,i}function Fzt(e){return[Math.atan2(2*(e[0]*e[1]+e[2]*e[3]),1-2*(e[1]*e[1]+e[2]*e[2]))*W2,Math.asin(Math.max(-1,Math.min(1,2*(e[0]*e[2]-e[3]*e[1]))))*W2,Math.atan2(2*(e[0]*e[3]+e[1]*e[2]),1-2*(e[2]*e[2]+e[3]*e[3]))*W2]}function zzt(e){var t=e[0]*$A,r=e[1]*$A,n=Math.cos(r);return[n*Math.cos(t),n*Math.sin(t),Math.sin(r)]}function DDe(e,t){for(var r=0,n=0,i=e.length;n<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 qzt(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 GDe=ye((bmr,VDe)=>{"use strict";var t1=Oa(),VZ=RZ(),Bzt=VZ.geoPath,Nzt=VZ.geoDistance,Uzt=PDe(),Vzt=qa(),ok=Dr(),Gzt=ok.strTranslate,RF=ka(),ak=So(),ODe=vf(),Hzt=Mc(),UZ=ho(),qDe=Ag().getAutoRange,NZ=yv(),jzt=Of().prepSelect,Wzt=Of().clearOutline,Xzt=Of().selectOnClick,Zzt=zDe(),fp=tk(),Yzt=ix(),NDe=mF(),Kzt=yZ().feature;function UDe(e){this.id=e.id,this.graphDiv=e.graphDiv,this.container=e.container,this.topojsonURL=e.topojsonURL,this.isStatic=e.staticPlot,this.topojsonName=null,this.topojson=null,this.projection=null,this.scope=null,this.viewInitial=null,this.fitScale=null,this.bounds=null,this.midPt=null,this.hasChoropleth=!1,this.traceHash={},this.layers={},this.basePaths={},this.dataPaths={},this.dataPoints={},this.clipDef=null,this.clipRect=null,this.bgRect=null,this.makeFramework()}var Qg=UDe.prototype;VDe.exports=function(t){return new UDe(t)};Qg.plot=function(e,t,r,n){var i=this;if(n)return i.update(e,t,!0);i._geoCalcData=e,i._fullLayout=t;var a=t[this.id],o=[],s=!1;for(var l in fp.layerNameToAdjective)if(l!=="frame"&&a["show"+l]){s=!0;break}for(var u=!1,c=0;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 _=NDe.getTopojsonName(a);(i.topojson===null||_!==i.topojsonName)&&(i.topojsonName=_,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)}))};Qg.fetchTopojson=function(){var e=this,t=NDe.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()})})};Qg.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),Hzt.generalUpdatePerTraceModule(this.graphDiv,this,e,n);var l=this.layers.frontplot.select(".scatterlayer");this.dataPoints.point=l.selectAll(".point"),this.dataPoints.text=l.selectAll("text"),this.dataPaths.line=l.selectAll(".js-line");var u=this.layers.backplot.select(".choroplethlayer");this.dataPaths.choropleth=u.selectAll("path"),this._render()};Qg.updateProjection=function(e,t){var r=this.graphDiv,n=t[this.id],i=t._size,a=n.domain,o=n.projection,s=n.lonaxis,l=n.lataxis,u=s._ax,c=l._ax,f=this.projection=Jzt(n),h=[[i.l+i.w*a.x[0],i.t+i.h*(1-a.y[1])],[i.l+i.w*a.x[1],i.t+i.h*(1-a.y[0])]],d=n.center||{},v=o.rotation||{},_=s.range||[],b=l.range||[];if(n.fitbounds){u._length=h[1][0]-h[0][0],c._length=h[1][1]-h[0][1],u.range=qDe(r,u),c.range=qDe(r,c);var p=(u.range[0]+u.range[1])/2,k=(c.range[0]+c.range[1])/2;if(n._isScoped)d={lon:p,lat:k};else if(n._isClipped){d={lon:p,lat:k},v={lon:p,lat:k,roll:v.roll};var E=o.type,S=fp.lonaxisSpan[E]/2||180,L=fp.lataxisSpan[E]/2||90;_=[p-S,p+S],b=[k-L,k+L]}else d={lon:p,lat:k},v={lon:p,lat:v.lat,roll:v.roll}}f.center([d.lon-v.lon,d.lat-v.lat]).rotate([-v.lon,-v.lat,v.roll]).parallels(o.parallels);var x=BDe(_,b);f.fitExtent(h,x);var C=this.bounds=f.getBounds(x),M=this.fitScale=f.scale(),g=f.translate();if(n.fitbounds){var P=f.getBounds(BDe(u.range,c.range)),T=Math.min((C[1][0]-C[0][0])/(P[1][0]-P[0][0]),(C[1][1]-C[0][1])/(P[1][1]-P[0][1]));isFinite(T)?f.scale(T*M):ok.warn("Something went wrong during"+this.id+"fitbounds computations.")}else f.scale(o.scale*M);var z=this.midPt=[(C[0][0]+C[1][0])/2,(C[0][1]+C[1][1])/2];if(f.translate([g[0]+(z[0]-g[0]),g[1]+(z[1]-g[1])]).clipExtent(C),n._isAlbersUsa){var O=f([d.lon,d.lat]),V=f.translate();f.translate([V[0]-(O[0]-V[0]),V[1]-(O[1]-V[1])])}};Qg.updateBaseLayers=function(e,t){var r=this,n=r.topojson,i=r.layers,a=r.basePaths;function o(h){return h==="lonaxis"||h==="lataxis"}function s(h){return!!fp.lineLayers[h]}function l(h){return!!fp.fillLayers[h]}var u=this.hasChoropleth?fp.layersForChoropleth:fp.layers,c=u.filter(function(h){return s(h)||l(h)?t["show"+h]:o(h)?t[h].showgrid:!0}),f=r.framework.selectAll(".layer").data(c,String);f.exit().each(function(h){delete i[h],delete a[h],t1.select(this).remove()}),f.enter().append("g").attr("class",function(h){return"layer "+h}).each(function(h){var d=i[h]=t1.select(this);h==="bg"?r.bgRect=d.append("rect").style("pointer-events","all"):o(h)?a[h]=d.append("path").style("fill","none"):h==="backplot"?d.append("g").classed("choroplethlayer",!0):h==="frontplot"?d.append("g").classed("scatterlayer",!0):s(h)?a[h]=d.append("path").style("fill","none").style("stroke-miterlimit",2):l(h)&&(a[h]=d.append("path").style("stroke","none"))}),f.order(),f.each(function(h){var d=a[h],v=fp.layerNameToAdjective[h];h==="frame"?d.datum(fp.sphereSVG):s(h)||l(h)?d.datum(Kzt(n,n.objects[h])):o(h)&&d.datum($zt(h,t,e)).call(RF.stroke,t[h].gridcolor).call(ak.dashLine,t[h].griddash,t[h].gridwidth),s(h)?d.call(RF.stroke,t[v+"color"]).call(ak.dashLine,"",t[v+"width"]):l(h)&&d.call(RF.fill,t[v+"color"])})};Qg.updateDims=function(e,t){var r=this.bounds,n=(t.framewidth||0)/2,i=r[0][0]-n,a=r[0][1]-n,o=r[1][0]-i+n,s=r[1][1]-a+n;ak.setRect(this.clipRect,i,a,o,s),this.bgRect.call(ak.setRect,i,a,o,s).call(RF.fill,t.bgcolor),this.xaxis._offset=i,this.xaxis._length=o,this.yaxis._offset=a,this.yaxis._length=s};Qg.updateFx=function(e,t){var r=this,n=r.graphDiv,i=r.bgRect,a=e.dragmode,o=e.clickmode;if(r.isStatic)return;function s(){var f=r.viewInitial,h={};for(var d in f)h[r.id+"."+d]=f[d];Vzt.call("_guiRelayout",n,h),n.emit("plotly_doubleclick",null)}function l(f){return r.projection.invert([f[0]+r.xaxis._offset,f[1]+r.yaxis._offset])}var u=function(f,h){if(h.isRect){var d=f.range={};d[r.id]=[l([h.xmin,h.ymin]),l([h.xmax,h.ymax])]}else{var v=f.lassoPoints={};v[r.id]=h.map(l)}},c={element:r.bgRect.node(),gd:n,plotinfo:{id:r.id,xaxis:r.xaxis,yaxis:r.yaxis,fillRangeItems:u},xaxes:[r.xaxis],yaxes:[r.yaxis],subplot:r.id,clickFn:function(f){f===2&&Wzt(n)}};a==="pan"?(i.node().onmousedown=null,i.call(Zzt(r,t)),i.on("dblclick.zoom",s),n._context._scrollZoom.geo||i.on("wheel.zoom",null)):(a==="select"||a==="lasso")&&(i.on(".zoom",null),c.prepFn=function(f,h,d){jzt(f,h,d,c,a)},NZ.init(c)),i.on("mousemove",function(){var f=r.projection.invert(ok.getPositionFromD3Event());if(!f)return NZ.unhover(n,t1.event);r.xaxis.p2c=function(){return f[0]},r.yaxis.p2c=function(){return f[1]},ODe.hover(n,t1.event,r.id)}),i.on("mouseout",function(){n._dragging||NZ.unhover(n,t1.event)}),i.on("click",function(){a!=="select"&&a!=="lasso"&&(o.indexOf("select")>-1&&Xzt(t1.event,n,[r.xaxis],[r.yaxis],r.id,c),o.indexOf("event")>-1&&ODe.click(n,t1.event))})};Qg.makeFramework=function(){var e=this,t=e.graphDiv,r=t._fullLayout,n="clip"+r._uid+e.id;e.clipDef=r._clips.append("clipPath").attr("id",n),e.clipRect=e.clipDef.append("rect"),e.framework=t1.select(e.container).append("g").attr("class","geo "+e.id).call(ak.setClipUrl,n,t),e.project=function(i){var a=e.projection(i);return a?[a[0]-e.xaxis._offset,a[1]-e.yaxis._offset]:[null,null]},e.xaxis={_id:"x",c2p:function(i){return e.project(i)[0]}},e.yaxis={_id:"y",c2p:function(i){return e.project(i)[1]}},e.mockAxis={type:"linear",showexponent:"all",exponentformat:"B"},UZ.setConvert(e.mockAxis,r)};Qg.saveViewInitial=function(e){var t=e.center||{},r=e.projection,n=r.rotation||{};this.viewInitial={fitbounds:e.fitbounds,"projection.scale":r.scale};var i;e._isScoped?i={"center.lon":t.lon,"center.lat":t.lat}:e._isClipped?i={"projection.rotation.lon":n.lon,"projection.rotation.lat":n.lat}:i={"center.lon":t.lon,"center.lat":t.lat,"projection.rotation.lon":n.lon},ok.extendFlat(this.viewInitial,i)};Qg.render=function(e){this._hasMarkerAngles&&e?this.plot(this._geoCalcData,this._fullLayout,[],!0):this._render()};Qg._render=function(){var e=this.projection,t=e.getPath(),r;function n(a){var o=e(a.lonlat);return o?Gzt(o[0],o[1]):null}function i(a){return e.isLonLatOverEdges(a.lonlat)?"none":null}for(r in this.basePaths)this.basePaths[r].attr("d",t);for(r in this.dataPaths)this.dataPaths[r].attr("d",function(a){return t(a.geojson)});for(r in this.dataPoints)this.dataPoints[r].attr("display",i).attr("transform",n)};function Jzt(e){var t=e.projection,r=t.type,n=fp.projNames[r];n="geo"+ok.titleCase(n);for(var i=VZ[n]||Uzt[n],a=i(),o=e._isSatellite?Math.acos(1/t.distance)*180/Math.PI:e._isClipped?fp.lonaxisSpan[r]/2:null,s=["center","rotate","parallels","clipExtent"],l=function(f){return f?a:[]},u=0;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=Nzt(f,[-h[0],-h[1]]),v=o*Math.PI/180;return d>v}else return!1},a.getPath=function(){return Bzt().projection(a)},a.getBounds=function(f){return a.getPath().bounds(f)},a.precision(fp.precision),e._isSatellite&&a.tilt(t.tilt).distance(t.distance),o&&a.clipAngle(o-fp.clipPad),a}function $zt(e,t,r){var n=1e-6,i=2.5,a=t[e],o=fp.scopeDefaults[t.scope],s,l,u;e==="lonaxis"?(s=o.lonaxisRange,l=o.lataxisRange,u=function(k,E){return[k,E]}):e==="lataxis"&&(s=o.lataxisRange,l=o.lonaxisRange,u=function(k,E){return[E,k]});var c={type:"linear",range:[s[0],s[1]-n],tick0:a.tick0,dtick:a.dtick};UZ.setConvert(c,r);var f=UZ.calcTicks(c);!t.isScoped&&e==="lonaxis"&&f.pop();for(var h=f.length,d=new Array(h),v=0;v<h;v++)for(var _=f[v].x,b=d[v]=[],p=l[0];p<l[1]+i;p+=i)b.push(u(_,p));return{type:"MultiLineString",coordinates:d}}function BDe(e,t){var r=fp.clipPad,n=e[0]+r,i=e[1]-r,a=t[0]+r,o=t[1]-r;n>0&&i<0&&(i+=360);var s=(i-n)/4;return{type:"Polygon",coordinates:[[[n,a],[n,o],[n+s,o],[n+2*s,o],[n+3*s,o],[i,o],[i,a],[i-s,a],[i-2*s,a],[i-3*s,a],[n,a]]]}}});var GZ=ye((wmr,WDe)=>{"use strict";var e5=Lh(),Qzt=Cc().attributes,e7t=Pd().dash,QA=tk(),t7t=mc().overrideAll,HDe=Z1(),jDe={range:{valType:"info_array",items:[{valType:"number"},{valType:"number"}]},showgrid:{valType:"boolean",dflt:!1},tick0:{valType:"number",dflt:0},dtick:{valType:"number"},gridcolor:{valType:"color",dflt:e5.lightLine},gridwidth:{valType:"number",min:0,dflt:1},griddash:e7t},r7t=WDe.exports=t7t({domain:Qzt({name:"geo"},{}),fitbounds:{valType:"enumerated",values:[!1,"locations","geojson"],dflt:!1,editType:"plot"},resolution:{valType:"enumerated",values:[110,50],dflt:110,coerceNumber:!0},scope:{valType:"enumerated",values:HDe(QA.scopeDefaults),dflt:"world"},projection:{type:{valType:"enumerated",values:HDe(QA.projNames)},rotation:{lon:{valType:"number"},lat:{valType:"number"},roll:{valType:"number"}},tilt:{valType:"number",dflt:0},distance:{valType:"number",min:1.001,dflt:2},parallels:{valType:"info_array",items:[{valType:"number"},{valType:"number"}]},scale:{valType:"number",min:0,dflt:1}},center:{lon:{valType:"number"},lat:{valType:"number"}},visible:{valType:"boolean",dflt:!0},showcoastlines:{valType:"boolean"},coastlinecolor:{valType:"color",dflt:e5.defaultLine},coastlinewidth:{valType:"number",min:0,dflt:1},showland:{valType:"boolean",dflt:!1},landcolor:{valType:"color",dflt:QA.landColor},showocean:{valType:"boolean",dflt:!1},oceancolor:{valType:"color",dflt:QA.waterColor},showlakes:{valType:"boolean",dflt:!1},lakecolor:{valType:"color",dflt:QA.waterColor},showrivers:{valType:"boolean",dflt:!1},rivercolor:{valType:"color",dflt:QA.waterColor},riverwidth:{valType:"number",min:0,dflt:1},showcountries:{valType:"boolean"},countrycolor:{valType:"color",dflt:e5.defaultLine},countrywidth:{valType:"number",min:0,dflt:1},showsubunits:{valType:"boolean"},subunitcolor:{valType:"color",dflt:e5.defaultLine},subunitwidth:{valType:"number",min:0,dflt:1},showframe:{valType:"boolean"},framecolor:{valType:"color",dflt:e5.defaultLine},framewidth:{valType:"number",min:0,dflt:1},bgcolor:{valType:"color",dflt:e5.background},lonaxis:jDe,lataxis:jDe},"plot","from-root");r7t.uirevision={valType:"any",editType:"none"}});var YDe=ye((Tmr,ZDe)=>{"use strict";var DF=Dr(),i7t=k_(),n7t=Id().getSubplotData,FF=tk(),a7t=GZ(),XDe=FF.axesNames;ZDe.exports=function(t,r,n){i7t(t,r,n,{type:"geo",attributes:a7t,handleDefaults:o7t,fullData:n,partition:"y"})};function o7t(e,t,r,n){var i=n7t(n.fullData,"geo",n.id),a=i.map(function(oe){return oe.index}),o=r("resolution"),s=r("scope"),l=FF.scopeDefaults[s],u=r("projection.type",l.projType),c=t._isAlbersUsa=u==="albers usa";c&&(s=t.scope="usa");var f=t._isScoped=s!=="world",h=t._isSatellite=u==="satellite",d=t._isConic=u.indexOf("conic")!==-1||u==="albers",v=t._isClipped=!!FF.lonaxisSpan[u];if(e.visible===!1){var _=DF.extendDeep({},t._template);_.showcoastlines=!1,_.showcountries=!1,_.showframe=!1,_.showlakes=!1,_.showland=!1,_.showocean=!1,_.showrivers=!1,_.showsubunits=!1,_.lonaxis&&(_.lonaxis.showgrid=!1),_.lataxis&&(_.lataxis.showgrid=!1),t._template=_}for(var b=r("visible"),p,k=0;k<XDe.length;k++){var E=XDe[k],S=[30,10][k],L;if(f)L=l[E+"Range"];else{var x=FF[E+"Span"],C=(x[u]||x["*"])/2,M=r("projection.rotation."+E.slice(0,3),l.projRotate[k]);L=[M-C,M+C]}var g=r(E+".range",L);r(E+".tick0"),r(E+".dtick",S),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:DF.identity,c2l:DF.identity,r2l:DF.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 j,N;if(c?(j=-96.6,N=38.7):(j=f?V:G,N=(T[0]+T[1])/2),r("center.lon",j),r("center.lat",N),h&&(r("projection.tilt"),r("projection.distance")),d){var H=l.projParallels||[0,60];r("projection.parallels",H)}r("projection.scale"),p=r("showland",b?void 0:!1),p&&r("landcolor"),p=r("showlakes",b?void 0:!1),p&&r("lakecolor"),p=r("showrivers",b?void 0:!1),p&&(r("rivercolor"),r("riverwidth")),p=r("showcountries",f&&s!=="usa"&&b),p&&(r("countrycolor"),r("countrywidth")),(s==="usa"||s==="north america"&&o===50)&&(r("showsubunits",b),r("subunitcolor"),r("subunitwidth")),f||(p=r("showframe",b),p&&(r("framecolor"),r("framewidth"))),r("bgcolor");var te=r("fitbounds");te&&(delete t.projection.scale,f?(delete t.center.lon,delete t.center.lat):v?(delete t.center.lon,delete t.center.lat,delete t.projection.rotation.lon,delete t.projection.rotation.lat,delete t.lonaxis.range,delete t.lataxis.range):(delete t.center.lon,delete t.center.lat,delete t.projection.rotation.lon))}});var HZ=ye((Amr,$De)=>{"use strict";var s7t=Id().getSubplotCalcData,l7t=Dr().counterRegex,u7t=GDe(),Xm="geo",KDe=l7t(Xm),JDe={};JDe[Xm]={valType:"subplotid",dflt:Xm,editType:"calc"};function c7t(e){for(var t=e._fullLayout,r=e.calcdata,n=t._subplots[Xm],i=0;i<n.length;i++){var a=n[i],o=s7t(r,Xm,a),s=t[a],l=s._subplot;l||(l=u7t({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 f7t(e,t,r,n){for(var i=n._subplots[Xm]||[],a=0;a<i.length;a++){var o=i[a],s=n[o]._subplot;!t[o]&&s&&(s.framework.remove(),s.clipDef.remove())}}function h7t(e){for(var t=e._fullLayout,r=t._subplots[Xm],n=0;n<r.length;n++){var i=t[r[n]],a=i._subplot;a.updateFx(t,i)}}$De.exports={attr:Xm,name:Xm,idRoot:Xm,idRegex:KDe,attrRegex:KDe,attributes:JDe,layoutAttributes:GZ(),supplyLayoutDefaults:YDe(),plot:c7t,updateFx:h7t,clean:f7t}});var eFe=ye((Smr,QDe)=>{"use strict";QDe.exports={attributes:j2(),supplyDefaults:DRe(),colorbar:$d(),formatLabels:ORe(),calc:pF(),calcGeoJSON:IZ().calcGeoJSON,plot:IZ().plot,style:kZ(),styleOnSelect:op().styleOnSelect,hoverPoints:wDe(),eventData:ADe(),selectPoints:EDe(),moduleType:"trace",name:"scattergeo",basePlotModule:HZ(),categories:["geo","symbols","showLegend","scatter-like"],meta:{}}});var rFe=ye((Mmr,tFe)=>{"use strict";tFe.exports=eFe()});var t5=ye((Emr,aFe)=>{"use strict";var{hovertemplateAttrs:d7t,templatefallbackAttrs:v7t}=Ll(),ax=j2(),p7t=Tu(),iFe=Gl(),g7t=Lh().defaultLine,nx=Ao().extendFlat,nFe=ax.marker.line;aFe.exports=nx({locations:{valType:"data_array",editType:"calc"},locationmode:ax.locationmode,z:{valType:"data_array",editType:"calc"},geojson:nx({},ax.geojson,{}),featureidkey:ax.featureidkey,text:nx({},ax.text,{}),hovertext:nx({},ax.hovertext,{}),marker:{line:{color:nx({},nFe.color,{dflt:g7t}),width:nx({},nFe.width,{dflt:1}),editType:"calc"},opacity:{valType:"number",arrayOk:!0,min:0,max:1,dflt:1,editType:"style"},editType:"calc"},selected:{marker:{opacity:ax.selected.marker.opacity,editType:"plot"},editType:"plot"},unselected:{marker:{opacity:ax.unselected.marker.opacity,editType:"plot"},editType:"plot"},hoverinfo:nx({},iFe.hoverinfo,{editType:"calc",flags:["location","z","text","name"]}),hovertemplate:d7t(),hovertemplatefallback:v7t(),showlegend:nx({},iFe.showlegend,{dflt:!1})},p7t("",{cLetter:"z",editTypeOverride:"calc"}))});var sFe=ye((kmr,oFe)=>{"use strict";var sk=Dr(),m7t=Qh(),y7t=t5(),_7t=["The library used by the *country names* `locationmode` option is changing in the next major version.","Some country names in existing plots may not work in the new version.","To ensure consistent behavior, consider setting `locationmode` to *ISO-3*."].join(" ");oFe.exports=function(t,r,n,i){function a(h,d){return sk.coerce(t,r,y7t,h,d)}var o=a("locations"),s=a("z");if(!(o&&o.length&&sk.isArrayOrTypedArray(s)&&s.length)){r.visible=!1;return}r._length=Math.min(o.length,s.length);var l=a("geojson"),u;(typeof l=="string"&&l!==""||sk.isPlainObject(l))&&(u="geojson-id");var c=a("locationmode",u);c==="country names"&&sk.warn(_7t),c==="geojson-id"&&a("featureidkey"),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback");var f=a("marker.line.width");f&&a("marker.line.color"),a("marker.opacity"),m7t(t,r,i,a,{prefix:"",cLetter:"z"}),sk.coerceSelectionMarkerOpacity(r,a)}});var zF=ye((Cmr,cFe)=>{"use strict";var lFe=Eo(),x7t=fs().BADNUM,b7t=gv(),w7t=km(),T7t=z0();function uFe(e){return e&&typeof e=="string"}cFe.exports=function(t,r){var n=r._length,i=new Array(n),a;r.geojson?a=function(c){return uFe(c)||lFe(c)}:a=uFe;for(var o=0;o<n;o++){var s=i[o]={},l=r.locations[o],u=r.z[o];a(l)&&lFe(u)?(s.loc=l,s.z=u):(s.loc=null,s.z=x7t),s.index=o}return w7t(i,r),b7t(t,r,{vals:r.z,containerStr:"",cLetter:"z"}),T7t(i,r),i}});var OF=ye((Lmr,hFe)=>{"use strict";var A7t=Oa(),S7t=ka(),jZ=So(),M7t=tc();function E7t(e,t){t&&fFe(e,t)}function fFe(e,t){var r=t[0].trace,n=t[0].node3,i=n.selectAll(".choroplethlocation"),a=r.marker||{},o=a.line||{},s=M7t.makeColorScaleFuncFromTrace(r);i.each(function(l){A7t.select(this).attr("fill",s(l.z)).call(S7t.stroke,l.mlc||o.color).call(jZ.dashLine,"",l.mlw||o.width||0).style("opacity",a.opacity)}),jZ.selectedPointStyle(i,r)}function k7t(e,t){var r=t[0].node3,n=t[0].trace;n.selectedpoints?jZ.selectedPointStyle(r.selectAll(".choroplethlocation"),n):fFe(e,t)}hFe.exports={style:E7t,styleOnSelect:k7t}});var WZ=ye((Pmr,pFe)=>{"use strict";var C7t=Oa(),dFe=Dr(),r5=ix(),L7t=mF().getTopojsonFeatures,vFe=Ag().findExtremes,P7t=OF().style;function I7t(e,t,r){var n=t.layers.backplot.select(".choroplethlayer");dFe.makeTraceGroups(n,r,"trace choropleth").each(function(i){var a=C7t.select(this),o=a.selectAll("path.choroplethlocation").data(dFe.identity);o.enter().append("path").classed("choroplethlocation",!0),o.exit().remove(),P7t(e,i)})}function R7t(e,t){for(var r=e[0].trace,n=t[r.geo],i=n._subplot,a=r.locationmode,o=r._length,s=a==="geojson-id"?r5.extractTraceFeature(e):L7t(r,i.topojson),l=[],u=[],c=0;c<o;c++){var f=e[c],h=a==="geojson-id"?f.fOut:r5.locationToFeature(a,f.loc,s);if(h){f.geojson=h,f.ct=h.properties.ct,f._polygons=r5.feature2polygons(h);var d=r5.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=r5.computeBbox(r5.getTraceGeojson(r));l=[v[0],v[2]],u=[v[1],v[3]]}var _={padded:!0};r._extremes.lon=vFe(n.lonaxis._ax,l,_),r._extremes.lat=vFe(n.lataxis._ax,u,_)}pFe.exports={calcGeoJSON:R7t,plot:I7t}});var qF=ye((Imr,gFe)=>{"use strict";var D7t=ho(),F7t=t5(),z7t=Dr().fillText;gFe.exports=function(t,r,n){var i=t.cd,a=i[0].trace,o=t.subplot,s,l,u,c,f=[r,n],h=[r+360,n];for(l=0;l<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=D7t.tickText(o.mockAxis,o.mockAxis.c2l(s.z),"hover").text,t.hovertemplate=s.hovertemplate,O7t(t,a,s),[t]};function O7t(e,t,r){if(!t.hovertemplate){var n=r.hi||t.hoverinfo,i=String(r.loc),a=n==="all"?F7t.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&&z7t(r,t,f),e.extraText=f.join("<br>")}}});var BF=ye((Rmr,mFe)=>{"use strict";mFe.exports=function(t,r,n,i,a){t.location=r.location,t.z=r.z;var o=i[a];return o.fIn&&o.fIn.properties&&(t.properties=o.fIn.properties),t.ct=o.ct,t}});var NF=ye((Dmr,yFe)=>{"use strict";yFe.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=[],s,l,u,c,f;if(r===!1)for(s=0;s<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 xFe=ye((Fmr,_Fe)=>{"use strict";_Fe.exports={attributes:t5(),supplyDefaults:sFe(),colorbar:S_(),calc:zF(),calcGeoJSON:WZ().calcGeoJSON,plot:WZ().plot,style:OF().style,styleOnSelect:OF().styleOnSelect,hoverPoints:qF(),eventData:BF(),selectPoints:NF(),moduleType:"trace",name:"choropleth",basePlotModule:HZ(),categories:["geo","noOpacity","showLegend"],meta:{}}});var wFe=ye((zmr,bFe)=>{"use strict";bFe.exports=xFe()});var UF=ye((Omr,AFe)=>{"use strict";var q7t=qa(),s0=Dr(),B7t=cT();function N7t(e,t,r,n){var i=e.cd,a=i[0].t,o=i[0].trace,s=e.xa,l=e.ya,u=a.x,c=a.y,f=s.c2p(t),h=l.c2p(r),d=e.distance,v;if(a.tree){var _=s.p2c(f-d),b=s.p2c(f+d),p=l.p2c(h-d),k=l.p2c(h+d);n==="x"?v=a.tree.range(Math.min(_,b),Math.min(l._rl[0],l._rl[1]),Math.max(_,b),Math.max(l._rl[0],l._rl[1])):v=a.tree.range(Math.min(_,b),Math.min(p,k),Math.max(_,b),Math.max(p,k))}else v=a.ids;var E,S,L,x,C,M,g,P,T,z=d;if(n==="x"){var O=!!o.xperiodalignment,V=!!o.yperiodalignment;for(C=0;C<v.length;C++){if(E=v[C],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,x=c[E],g=l.c2p(x)-h,V){var j=l.c2p(o._yStarts[E]),N=l.c2p(o._yEnds[E]);g=h>=Math.min(j,N)&&h<=Math.max(j,N)?0:1/0}T=Math.sqrt(M*M+g*g),S=v[C]}}}else for(C=v.length-1;C>-1;C--)E=v[C],L=u[E],x=c[E],M=s.c2p(L)-f,g=l.c2p(x)-h,P=Math.sqrt(M*M+g*g),P<z&&(z=T=P,S=E);return e.index=S,e.distance=z,e.dxy=T,S===void 0?[e]:[TFe(e,u,c,o)]}function TFe(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),_=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 k=n.hoverinfo;k&&(u.hi=Array.isArray(k)?k[l]:k);var E=n.hovertemplate;E&&(u.ht=Array.isArray(E)?E[l]:E);var S={};S[e.index]=u;var L=n._origX,x=n._origY,C=s0.extendFlat({},e,{color:B7t(n,u),x0:v-b,x1:v+b,xLabelVal:L?L[l]:u.x,y0:_-b,y1:_+b,yLabelVal:x?x[l]:u.y,cd:S,distance:o,spikeDistance:s,hovertemplate:u.ht});return u.htx?C.text=u.htx:u.tx?C.text=u.tx:n.text&&(C.text=n.text),s0.fillText(u,n,C),q7t.getComponentMethod("errorbars","hoverInfo")(u,n,C),C}AFe.exports={hoverPoints:N7t,calcHover:TFe}});var ox=ye((qmr,MFe)=>{"use strict";var SFe=20;MFe.exports={TOO_MANY_POINTS:1e5,SYMBOL_SDF_SIZE:200,SYMBOL_SIZE:SFe,SYMBOL_STROKE:SFe/20,DOT_RE:/-dot/,OPEN_RE:/-open/,DASHES:{solid:[1],dot:[1,1],dash:[4,1],longdash:[8,1],dashdot:[4,1,1,1],longdashdot:[8,1,1,1]}}});var lk=ye((Bmr,LFe)=>{"use strict";var U7t=Gl(),V7t=ec(),G7t=Cg(),mf=pf(),EFe=df().axisHoverFormat,kFe=Tu(),H7t=Z1(),XZ=Ao().extendFlat,j7t=mc().overrideAll,W7t=ox().DASHES,CFe=mf.line,r1=mf.marker,X7t=r1.line,sx=LFe.exports=j7t({x:mf.x,x0:mf.x0,dx:mf.dx,y:mf.y,y0:mf.y0,dy:mf.dy,xperiod:mf.xperiod,yperiod:mf.yperiod,xperiod0:mf.xperiod0,yperiod0:mf.yperiod0,xperiodalignment:mf.xperiodalignment,yperiodalignment:mf.yperiodalignment,xhoverformat:EFe("x"),yhoverformat:EFe("y"),text:mf.text,hovertext:mf.hovertext,textposition:mf.textposition,textfont:V7t({noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0,editType:"calc",colorEditType:"style",arrayOk:!0,noNumericWeightValues:!0,variantValues:["normal","small-caps"]}),mode:{valType:"flaglist",flags:["lines","markers","text"],extras:["none"]},line:{color:CFe.color,width:CFe.width,shape:{valType:"enumerated",values:["linear","hv","vh","hvh","vhv"],dflt:"linear",editType:"plot"},dash:{valType:"enumerated",values:H7t(W7t),dflt:"solid"}},marker:XZ({},kFe("marker"),{symbol:r1.symbol,angle:r1.angle,size:r1.size,sizeref:r1.sizeref,sizemin:r1.sizemin,sizemode:r1.sizemode,opacity:r1.opacity,colorbar:r1.colorbar,line:XZ({},kFe("marker.line"),{width:X7t.width})}),connectgaps:mf.connectgaps,fill:XZ({},mf.fill,{dflt:"none"}),fillcolor:G7t(),selected:{marker:mf.selected.marker,textfont:mf.selected.textfont},unselected:{marker:mf.unselected.marker,textfont:mf.unselected.textfont},opacity:U7t.opacity},"calc","nested");sx.x.editType=sx.y.editType=sx.x0.editType=sx.y0.editType="calc+clearAxisTypes";sx.hovertemplate=mf.hovertemplate;sx.hovertemplatefallback=mf.hovertemplatefallback;sx.texttemplate=mf.texttemplate;sx.texttemplatefallback=mf.texttemplatefallback});var VF=ye(ZZ=>{"use strict";var PFe=ox();ZZ.isOpenSymbol=function(e){return typeof e=="string"?PFe.OPEN_RE.test(e):e%200>100};ZZ.isDotSymbol=function(e){return typeof e=="string"?PFe.DOT_RE.test(e):e>200}});var DFe=ye((Umr,RFe)=>{"use strict";var IFe=Dr(),Z7t=qa(),Y7t=VF(),K7t=lk(),J7t=Sm(),GF=Ru(),$7t=eT(),Q7t=Ig(),e9t=$p(),t9t=R0(),r9t=Rg(),i9t=D0();RFe.exports=function(t,r,n,i){function a(d,v){return IFe.coerce(t,r,K7t,d,v)}var o=t.marker?Y7t.isOpenSymbol(t.marker.symbol):!1,s=GF.isBubble(t),l=$7t(t,r,i,a);if(!l){r.visible=!1;return}Q7t(t,r,i,a),a("xhoverformat"),a("yhoverformat");var u=l<J7t.PTS_LINESONLY?"lines+markers":"lines";a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),a("mode",u),GF.hasMarkers(r)&&(e9t(t,r,n,i,a,{noAngleRef:!0,noStandOff:!0}),a("marker.line.width",o||s?1:0)),GF.hasLines(r)&&(a("connectgaps"),t9t(t,r,n,i,a),a("line.shape")),GF.hasText(r)&&(a("texttemplate"),a("texttemplatefallback"),i9t(t,r,i,a,{noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0}));var c=(r.line||{}).color,f=(r.marker||{}).color;a("fill"),r.fill!=="none"&&r9t(t,r,n,a);var h=Z7t.getComponentMethod("errorbars","supplyDefaults");h(t,r,c||f||n,{axis:"y"}),h(t,r,c||f||n,{axis:"x",inherit:"y"}),IFe.coerceSelectionMarkerOpacity(r,a)}});var zFe=ye((Vmr,FFe)=>{"use strict";var n9t=nI();FFe.exports=function(t,r,n){var i=t.i;return"x"in t||(t.x=r._x[i]),"y"in t||(t.y=r._y[i]),n9t(t,r,n)}});var qFe=ye((Gmr,OFe)=>{"use strict";function a9t(e,t,r,n,i){for(var a=i+1;n<=i;){var o=n+i>>>1,s=e[o],l=r!==void 0?r(s,t):s-t;l>=0?(a=o,i=o-1):n=o+1}return a}function o9t(e,t,r,n,i){for(var a=i+1;n<=i;){var o=n+i>>>1,s=e[o],l=r!==void 0?r(s,t):s-t;l>0?(a=o,i=o-1):n=o+1}return a}function s9t(e,t,r,n,i){for(var a=n-1;n<=i;){var o=n+i>>>1,s=e[o],l=r!==void 0?r(s,t):s-t;l<0?(a=o,n=o+1):i=o-1}return a}function l9t(e,t,r,n,i){for(var a=n-1;n<=i;){var o=n+i>>>1,s=e[o],l=r!==void 0?r(s,t):s-t;l<=0?(a=o,n=o+1):i=o-1}return a}function u9t(e,t,r,n,i){for(;n<=i;){var a=n+i>>>1,o=e[a],s=r!==void 0?r(o,t):o-t;if(s===0)return a;s<=0?n=a+1:i=a-1}return-1}function uk(e,t,r,n,i,a){return typeof r=="function"?a(e,t,r,n===void 0?0:n|0,i===void 0?e.length-1:i|0):a(e,t,void 0,r===void 0?0:r|0,n===void 0?e.length-1:n|0)}OFe.exports={ge:function(e,t,r,n,i){return uk(e,t,r,n,i,a9t)},gt:function(e,t,r,n,i){return uk(e,t,r,n,i,o9t)},lt:function(e,t,r,n,i){return uk(e,t,r,n,i,s9t)},le:function(e,t,r,n,i){return uk(e,t,r,n,i,l9t)},eq:function(e,t,r,n,i){return uk(e,t,r,n,i,u9t)}}});var Zm=ye((Hmr,NFe)=>{"use strict";NFe.exports=function(t,r,n){var i={},a,o;if(typeof r=="string"&&(r=BFe(r)),Array.isArray(r)){var s={};for(o=0;o<r.length;o++)s[r[o]]=!0;r=s}for(a in r)r[a]=BFe(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 YZ={};function BFe(e){return YZ[e]?YZ[e]:(typeof e=="string"&&(e=YZ[e]=e.split(/\s*,\s*|\s+/)),e)}});var i5=ye((jmr,UFe)=>{"use strict";var c9t=Zm();UFe.exports=f9t;function f9t(e){var t;return arguments.length>1&&(e=arguments),typeof e=="string"?e=e.split(/\s/).map(parseFloat):typeof e=="number"&&(e=[e]),e.length&&typeof e[0]=="number"?e.length===1?t={width:e[0],height:e[0],x:0,y:0}:e.length===2?t={width:e[0],height:e[1],x:0,y:0}:t={x:e[0],y:e[1],width:e[2]-e[0]||0,height:e[3]-e[1]||0}:e&&(e=c9t(e,{left:"x l left Left",top:"y t top Top",width:"w width W Width",height:"h height W Width",bottom:"b bottom Bottom",right:"r right Right"}),t={x:e.left||0,y:e.top||0},e.width==null?e.right?t.width=e.right-t.x:t.width=0:t.width=e.width,e.height==null?e.bottom?t.height=e.bottom-t.y:t.height=0:t.height=e.height),t}});var X2=ye((Wmr,VFe)=>{"use strict";VFe.exports=h9t;function h9t(e,t){if(!e||e.length==null)throw Error("Argument should be an array");t==null?t=1:t=Math.floor(t);for(var r=Array(t*2),n=0;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 HFe=ye((Xmr,GFe)=>{GFe.exports=function(){for(var e=0;e<arguments.length;e++)if(arguments[e]!==void 0)return arguments[e]}});var Z2=ye((Zmr,WFe)=>{var jFe=YD();WFe.exports=d9t;function d9t(e,t,r){if(!e)throw new TypeError("must specify data as first parameter");if(r=+(r||0)|0,Array.isArray(e)&&e[0]&&typeof e[0][0]=="number"){var n=e[0].length,i=e.length*n,a,o,s,l;(!t||typeof t=="string")&&(t=new(jFe(t||"float32"))(i+r));var u=t.length-r;if(i!==u)throw new Error("source length "+i+" ("+n+"x"+e.length+") does not match destination length "+u);for(a=0,s=r;a<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=jFe(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 ZFe=ye((Ymr,XFe)=>{"use strict";XFe.exports=function(e){var t=typeof e;return e!==null&&(t==="object"||t==="function")}});var KFe=ye((Kmr,YFe)=>{"use strict";YFe.exports=Math.log2||function(e){return Math.log(e)*Math.LOG2E}});var ize=ye((Jmr,rze)=>{"use strict";var JFe=qFe(),$Fe=ZE(),v9t=i5(),p9t=X2(),QFe=Zm(),KZ=HFe(),g9t=Z2(),m9t=ZFe(),y9t=YD(),eze=KFe(),_9t=1073741824;rze.exports=function(t,r){r||(r={}),t=g9t(t,"float64"),r=QFe(r,{bounds:"range bounds dataBox databox",maxDepth:"depth maxDepth maxdepth level maxLevel maxlevel levels",dtype:"type dtype format out dst output destination"});let n=KZ(r.maxDepth,255),i=KZ(r.bounds,p9t(t,2));i[0]===i[2]&&i[2]++,i[1]===i[3]&&i[3]++;let a=tze(t,i),o=t.length>>>1,s;r.dtype||(r.dtype="array"),typeof r.dtype=="string"?s=new(y9t(r.dtype))(o):r.dtype&&(s=r.dtype,Array.isArray(s)&&(s.length=o));for(let p=0;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 k=l[p];if(s.set)s.set(k,h);else for(let S=0,L=k.length;S<L;S++)s[S+h]=k[S];let E=h+l[p].length;f[p]=[h,E],h=E}return s.range=v,s;function d(p,k,E,S,L,x){if(!S.length)return null;let C=l[L]||(l[L]=[]),M=c[L]||(c[L]=[]),g=u[L]||(u[L]=[]),P=C.length;if(L++,L>n||x>_9t){for(let N=0;N<S.length;N++)C.push(S[N]),M.push(x),g.push(null,null,null,null);return P}if(C.push(S[0]),M.push(x),S.length<=1)return g.push(null,null,null,null),P;let T=E*.5,z=p+T,O=k+T,V=[],G=[],Z=[],j=[];for(let N=1,H=S.length;N<H;N++){let te=S[N],oe=a[te*2],_e=a[te*2+1];oe<z?_e<O?V.push(te):G.push(te):_e<O?Z.push(te):j.push(te)}return x<<=2,g.push(d(p,k,T,V,L,x),d(p,O,T,G,L,x+1),d(z,k,T,Z,L,x+2),d(z,O,T,j,L,x+3)),P}function v(...p){let k;if(m9t(p[p.length-1])){let Z=p.pop();!p.length&&(Z.x!=null||Z.l!=null||Z.left!=null)&&(p=[Z],k={}),k=QFe(Z,{level:"level maxLevel",d:"d diam diameter r radius px pxSize pixel pixelSize maxD size minSize",lod:"lod details ranges offsets"})}else k={};p.length||(p=i);let E=v9t(...p),[S,L,x,C]=[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]=tze([S,L,x,C],i),z=KZ(k.level,l.length);if(k.d!=null){let Z;typeof k.d=="number"?Z=[k.d,k.d]:k.d.length&&(Z=k.d),z=Math.min(Math.max(Math.ceil(-eze(Math.abs(Z[0])/(i[2]-i[0]))),Math.ceil(-eze(Math.abs(Z[1])/(i[3]-i[1])))),z)}if(z=Math.min(z,l.length),k.lod)return _(M,g,P,T,z);let O=[];V(0,0,1,0,0,1);function V(Z,j,N,H,te,oe){if(te===null||oe===null)return;let _e=Z+N,Ee=j+N;if(M>_e||g>Ee||P<Z||T<j||H>=z||te===oe)return;let Ce=l[H];oe===void 0&&(oe=Ce.length);for(let Re=te;Re<oe;Re++){let ce=Ce[Re],Ze=t[ce*2],ut=t[ce*2+1];Ze>=S&&Ze<=x&&ut>=L&&ut<=C&&O.push(ce)}let me=u[H],ie=me[te*4+0],Se=me[te*4+1],Le=me[te*4+2],Ae=me[te*4+3],Fe=G(me,te+1),Pe=N*.5,ge=H+1;V(Z,j,Pe,ge,ie,Se||Le||Ae||Fe),V(Z,j+Pe,Pe,ge,Se,Le||Ae||Fe),V(Z+Pe,j,Pe,ge,Le,Ae||Fe),V(Z+Pe,j+Pe,Pe,ge,Ae,Fe)}function G(Z,j){let N=null,H=0;for(;N===null;)if(N=Z[j*4+H],H++,H>Z.length)return null;return N}return O}function _(p,k,E,S,L){let x=[];for(let C=0;C<L;C++){let M=c[C],g=f[C][0],P=b(p,k,C),T=b(E,S,C),z=JFe.ge(M,P),O=JFe.gt(M,T,z,M.length-1);x[C]=[z+g,O+g]}return x}function b(p,k,E){let S=1,L=.5,x=.5,C=.5;for(let M=0;M<E;M++)S<<=2,S+=p<L?k<x?0:1:k<x?2:3,C*=.5,L+=p<L?-C:C,x+=k<x?-C:C;return S}};function tze(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]=$Fe((e[2*u]-r)*o,0,1),l[2*u+1]=$Fe((e[2*u+1]-n)*s,0,1);return l}});var HF=ye(($mr,nze)=>{"use strict";nze.exports=ize()});var JZ=ye((Qmr,aze)=>{aze.exports=x9t;function x9t(e){var t=0,r=0,n=0,i=0;return e.map(function(a){a=a.slice();var o=a[0],s=o.toUpperCase();if(o!=s)switch(a[0]=s,o){case"a":a[6]+=n,a[7]+=i;break;case"v":a[1]+=i;break;case"h":a[1]+=n;break;default:for(var l=1;l<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 lze=ye((jF,sze)=>{"use strict";Object.defineProperty(jF,"__esModule",{value:!0});var b9t=function(){function e(t,r){var n=[],i=!0,a=!1,o=void 0;try{for(var s=t[Symbol.iterator](),l;!(i=(l=s.next()).done)&&(n.push(l.value),!(r&&n.length===r));i=!0);}catch(u){a=!0,o=u}finally{try{!i&&s.return&&s.return()}finally{if(a)throw o}}return n}return function(t,r){if(Array.isArray(t))return t;if(Symbol.iterator in Object(t))return e(t,r);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),ck=Math.PI*2,$Z=function(t,r,n,i,a,o,s){var l=t.x,u=t.y;l*=r,u*=n;var c=i*l-a*u,f=a*l+i*u;return{x:c+o,y:f+s}},w9t=function(t,r){var n=r===1.5707963267948966?.551915024494:r===-1.5707963267948966?-.551915024494:1.3333333333333333*Math.tan(r/4),i=Math.cos(t),a=Math.sin(t),o=Math.cos(t+r),s=Math.sin(t+r);return[{x:i-a*n,y:a+i*n},{x:o+s*n,y:s-o*n},{x:o,y:s}]},oze=function(t,r,n,i){var a=t*i-r*n<0?-1:1,o=t*n+r*i;return o>1&&(o=1),o<-1&&(o=-1),a*Math.acos(o)},T9t=function(t,r,n,i,a,o,s,l,u,c,f,h){var d=Math.pow(a,2),v=Math.pow(o,2),_=Math.pow(f,2),b=Math.pow(h,2),p=d*v-d*b-v*_;p<0&&(p=0),p/=d*b+v*_,p=Math.sqrt(p)*(s===l?-1:1);var k=p*a/o*h,E=p*-o/a*f,S=c*k-u*E+(t+n)/2,L=u*k+c*E+(r+i)/2,x=(f-k)/a,C=(h-E)/o,M=(-f-k)/a,g=(-h-E)/o,P=oze(1,0,x,C),T=oze(x,C,M,g);return l===0&&T>0&&(T-=ck),l===1&&T<0&&(T+=ck),[S,L,P,T]},A9t=function(t){var r=t.px,n=t.py,i=t.cx,a=t.cy,o=t.rx,s=t.ry,l=t.xAxisRotation,u=l===void 0?0:l,c=t.largeArcFlag,f=c===void 0?0:c,h=t.sweepFlag,d=h===void 0?0:h,v=[];if(o===0||s===0)return[];var _=Math.sin(u*ck/360),b=Math.cos(u*ck/360),p=b*(r-i)/2+_*(n-a)/2,k=-_*(r-i)/2+b*(n-a)/2;if(p===0&&k===0)return[];o=Math.abs(o),s=Math.abs(s);var E=Math.pow(p,2)/Math.pow(o,2)+Math.pow(k,2)/Math.pow(s,2);E>1&&(o*=Math.sqrt(E),s*=Math.sqrt(E));var S=T9t(r,n,i,a,o,s,f,d,_,b,p,k),L=b9t(S,4),x=L[0],C=L[1],M=L[2],g=L[3],P=Math.abs(g)/(ck/4);Math.abs(1-P)<1e-7&&(P=1);var T=Math.max(Math.ceil(P),1);g/=T;for(var z=0;z<T;z++)v.push(w9t(M,g)),M+=g;return v.map(function(O){var V=$Z(O[0],o,s,b,_,x,C),G=V.x,Z=V.y,j=$Z(O[1],o,s,b,_,x,C),N=j.x,H=j.y,te=$Z(O[2],o,s,b,_,x,C),oe=te.x,_e=te.y;return{x1:G,y1:Z,x2:N,y2:H,x:oe,y:_e}})};jF.default=A9t;sze.exports=jF.default});var fze=ye((eyr,cze)=>{"use strict";cze.exports=M9t;var S9t=lze();function M9t(e){for(var t,r=[],n=0,i=0,a=0,o=0,s=null,l=null,u=0,c=0,f=0,h=e.length;f<h;f++){var d=e[f],v=d[0];switch(v){case"M":a=d[1],o=d[2];break;case"A":var _=S9t({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(!_.length)continue;for(var b=0,p;b<_.length;b++)p=_[b],d=["C",p.x1,p.y1,p.x2,p.y2,p.x,p.y],b<_.length-1&&r.push(d);break;case"S":var k=u,E=c;(t=="C"||t=="S")&&(k+=k-n,E+=E-i),d=["C",k,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=uze(u,c,s,l,d[1],d[2]);break;case"Q":s=d[1],l=d[2],d=uze(u,c,d[1],d[2],d[3],d[4]);break;case"L":d=WF(u,c,d[1],d[2]);break;case"H":d=WF(u,c,d[1],c);break;case"V":d=WF(u,c,u,d[1]);break;case"Z":d=WF(u,c,a,o);break}t=v,u=d[d.length-2],c=d[d.length-1],d.length>4?(n=d[d.length-4],i=d[d.length-3]):(n=u,i=c),r.push(d)}return r}function WF(e,t,r,n){return["C",e,t,r,n,r,n]}function uze(e,t,r,n,i,a){return["C",e/3+2/3*r,t/3+2/3*n,i/3+2/3*r,a/3+2/3*n,i,a]}});var QZ=ye((tyr,hze)=>{"use strict";hze.exports=function(t){return typeof t!="string"?!1:(t=t.trim(),!!(/^[mzlhvcsqta]\s*[-+.0-9][^mlhvzcsqta]+/i.test(t)&&/[\dz]$/i.test(t)&&t.length>4))}});var pze=ye((ryr,vze)=>{"use strict";var E9t=eM(),k9t=JZ(),C9t=fze(),L9t=QZ(),dze=lE();vze.exports=P9t;function P9t(e){if(Array.isArray(e)&&e.length===1&&typeof e[0]=="string"&&(e=e[0]),typeof e=="string"&&(dze(L9t(e),"String is not an SVG path."),e=E9t(e)),dze(Array.isArray(e),"Argument should be a string or an array of path segments."),e=k9t(e),e=C9t(e),!e.length)return[0,0,0,0];for(var t=[1/0,1/0,-1/0,-1/0],r=0,n=e.length;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 bze=ye((iyr,xze)=>{var Y2=Math.PI,gze=_ze(120);xze.exports=I9t;function I9t(e){for(var t,r=[],n=0,i=0,a=0,o=0,s=null,l=null,u=0,c=0,f=0,h=e.length;f<h;f++){var d=e[f],v=d[0];switch(v){case"M":a=d[1],o=d[2];break;case"A":d=yze(u,c,d[1],d[2],_ze(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 _=u,b=c;(t=="C"||t=="S")&&(_+=_-n,b+=b-i),d=["C",_,b,d[1],d[2],d[3],d[4]];break;case"T":t=="Q"||t=="T"?(s=u*2-s,l=c*2-l):(s=u,l=c),d=mze(u,c,s,l,d[1],d[2]);break;case"Q":s=d[1],l=d[2],d=mze(u,c,d[1],d[2],d[3],d[4]);break;case"L":d=XF(u,c,d[1],d[2]);break;case"H":d=XF(u,c,d[1],c);break;case"V":d=XF(u,c,u,d[1]);break;case"Z":d=XF(u,c,a,o);break}t=v,u=d[d.length-2],c=d[d.length-1],d.length>4?(n=d[d.length-4],i=d[d.length-3]):(n=u,i=c),r.push(d)}return r}function XF(e,t,r,n){return["C",e,t,r,n,r,n]}function mze(e,t,r,n,i,a){return["C",e/3+2/3*r,t/3+2/3*n,i/3+2/3*r,a/3+2/3*n,i,a]}function yze(e,t,r,n,i,a,o,s,l,u){if(u)E=u[0],S=u[1],p=u[2],k=u[3];else{var c=eY(e,t,-i);e=c.x,t=c.y,c=eY(s,l,-i),s=c.x,l=c.y;var f=(e-s)/2,h=(t-l)/2,d=f*f/(r*r)+h*h/(n*n);d>1&&(d=Math.sqrt(d),r=d*r,n=d*n);var v=r*r,_=n*n,b=(a==o?-1:1)*Math.sqrt(Math.abs((v*_-v*h*h-_*f*f)/(v*h*h+_*f*f)));b==1/0&&(b=1);var p=b*r*h/n+(e+s)/2,k=b*-n*f/r+(t+l)/2,E=Math.asin(((t-k)/n).toFixed(9)),S=Math.asin(((l-k)/n).toFixed(9));E=e<p?Y2-E:E,S=s<p?Y2-S:S,E<0&&(E=Y2*2+E),S<0&&(S=Y2*2+S),o&&E>S&&(E=E-Y2*2),!o&&S>E&&(S=S-Y2*2)}if(Math.abs(S-E)>gze){var L=S,x=s,C=l;S=E+gze*(o&&S>E?1:-1),s=p+r*Math.cos(S),l=k+n*Math.sin(S);var M=yze(s,l,r,n,i,0,o,x,C,[S,L,p,k])}var g=Math.tan((S-E)/4),P=4/3*r*g,T=4/3*n*g,z=[2*e-(e+P*Math.sin(E)),2*t-(t-T*Math.cos(E)),s+P*Math.sin(S),l-T*Math.cos(S),s,l];if(u)return z;M&&(z=z.concat(M));for(var O=0;O<z.length;){var V=eY(z[O],z[O+1],i);z[O++]=V.x,z[O++]=V.y}return z}function eY(e,t,r){return{x:e*Math.cos(r)-t*Math.sin(r),y:e*Math.sin(r)+t*Math.cos(r)}}function _ze(e){return e*(Y2/180)}});var Tze=ye((nyr,wze)=>{var R9t=JZ(),D9t=bze(),F9t={M:"moveTo",C:"bezierCurveTo"};wze.exports=function(e,t){e.beginPath(),D9t(R9t(t)).forEach(function(r){var n=r[0],i=r.slice(1);e[F9t[n]].apply(e,i)}),e.closePath()}});var Eze=ye((ayr,Mze)=>{"use strict";var z9t=ZE();Mze.exports=O9t;var fk=1e20;function O9t(e,t){t||(t={});var r=t.cutoff==null?.25:t.cutoff,n=t.radius==null?8:t.radius,i=t.channel||0,a,o,s,l,u,c,f,h,d,v,_;if(ArrayBuffer.isView(e)||Array.isArray(e)){if(!t.width||!t.height)throw Error("For raw data width and height should be provided by options");a=t.width,o=t.height,l=e,t.stride?c=t.stride:c=Math.floor(e.length/a/o)}else window.HTMLCanvasElement&&e instanceof window.HTMLCanvasElement?(h=e,f=h.getContext("2d"),a=h.width,o=h.height,d=f.getImageData(0,0,a,o),l=d.data,c=4):window.CanvasRenderingContext2D&&e instanceof window.CanvasRenderingContext2D?(h=e.canvas,f=e,a=h.width,o=h.height,d=f.getImageData(0,0,a,o),l=d.data,c=4):window.ImageData&&e instanceof window.ImageData&&(d=e,a=e.width,o=e.height,l=d.data,c=4);if(s=Math.max(a,o),window.Uint8ClampedArray&&l instanceof window.Uint8ClampedArray||window.Uint8Array&&l instanceof window.Uint8Array)for(u=l,l=Array(a*o),v=0,_=u.length;v<_;v++)l[v]=u[v*c+i]/255;else if(c!==1)throw Error("Raw data can have only 1 value per pixel");var b=Array(a*o),p=Array(a*o),k=Array(s),E=Array(s),S=Array(s+1),L=Array(s);for(v=0,_=a*o;v<_;v++){var x=l[v];b[v]=x===1?0:x===0?fk:Math.pow(Math.max(0,.5-x),2),p[v]=x===1?fk:x===0?0:Math.pow(Math.max(0,x-.5),2)}Aze(b,a,o,k,E,L,S),Aze(p,a,o,k,E,L,S);var C=window.Float32Array?new Float32Array(a*o):new Array(a*o);for(v=0,_=a*o;v<_;v++)C[v]=z9t(1-((b[v]-p[v])/n+r),0,1);return C}function Aze(e,t,r,n,i,a,o){for(var s=0;s<t;s++){for(var l=0;l<r;l++)n[l]=e[l*t+s];for(Sze(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(Sze(n,i,a,o,t),s=0;s<t;s++)e[l*t+s]=Math.sqrt(i[s])}}function Sze(e,t,r,n,i){r[0]=0,n[0]=-fk,n[1]=+fk;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]=+fk}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 Cze=ye((oyr,kze)=>{"use strict";var q9t=pze(),B9t=eM(),N9t=Tze(),U9t=QZ(),V9t=Eze(),tY=document.createElement("canvas"),hp=tY.getContext("2d");kze.exports=G9t;function G9t(e,t){if(!U9t(e))throw Error("Argument should be valid svg path string");t||(t={});var r,n;t.shape?(r=t.shape[0],n=t.shape[1]):(r=tY.width=t.w||t.width||200,n=tY.height=t.h||t.height||200);var i=Math.min(r,n),a=t.stroke||0,o=t.viewbox||t.viewBox||q9t(e),s=[r/(o[2]-o[0]),n/(o[3]-o[1])],l=Math.min(s[0]||0,s[1]||0)/2;if(hp.fillStyle="black",hp.fillRect(0,0,r,n),hp.fillStyle="white",a&&(typeof a!="number"&&(a=1),a>0?hp.strokeStyle="white":hp.strokeStyle="black",hp.lineWidth=Math.abs(a)),hp.translate(r*.5,n*.5),hp.scale(l,l),H9t()){var u=new Path2D(e);hp.fill(u),a&&hp.stroke(u)}else{var c=B9t(e);N9t(hp,c),hp.fill(),a&&hp.stroke()}hp.setTransform(1,0,0,1,0,0);var f=V9t(hp,{cutoff:t.cutoff!=null?t.cutoff:.5,radius:t.radius!=null?t.radius:i*.5});return f}var ZF;function H9t(){if(ZF!=null)return ZF;var e=document.createElement("canvas").getContext("2d");if(e.canvas.width=e.canvas.height=1,!window.Path2D)return ZF=!1;var t=new Path2D("M0,0h1v1h-1v-1Z");e.fillStyle="black",e.fill(t);var r=e.getImageData(0,0,1,1);return ZF=r&&r.data&&r.data[3]===255}});var J2=ye((syr,Nze)=>{"use strict";var KF=Eo(),j9t=Cze(),YF=J_(),W9t=qa(),o5=Dr(),_h=o5.isArrayOrTypedArray,n5=So(),Lze=hf(),Pze=$y().formatColor,a5=Ru(),X9t=k3(),iY=VF(),hk=ox(),Z9t=N1().DESELECTDIM,Ize={start:1,left:1,end:-1,right:-1,middle:0,center:0,bottom:1,top:-1},Y9t=ip().appendArrayPointValue;function K9t(e,t){var r,n={marker:void 0,markerSel:void 0,markerUnsel:void 0,line:void 0,fill:void 0,errorX:void 0,errorY:void 0,text:void 0,textSel:void 0,textUnsel:void 0},i=e._context.plotGlPixelRatio;if(t.visible!==!0)return n;if(a5.hasText(t)&&(n.text=Bze(e,t),n.textSel=Dze(e,t,t.selected),n.textUnsel=Dze(e,t,t.unselected)),a5.hasMarkers(t)&&(n.marker=aY(e,t),n.markerSel=nY(e,t,t.selected),n.markerUnsel=nY(e,t,t.unselected),!t.unselected&&_h(t.marker.opacity))){var a=t.marker.opacity;for(n.markerUnsel.opacity=new Array(a.length),r=0;r<a.length;r++)n.markerUnsel.opacity[r]=Z9t*a[r]}if(a5.hasLines(t)){n.line={overlay:!0,thickness:t.line.width*i,color:t.line.color,opacity:t.opacity};var o=(hk.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=Fze(t,t.error_x,i)),t.error_y&&t.error_y.visible&&(n.errorY=Fze(t,t.error_y,i)),t.fill&&t.fill!=="none"&&(n.fill={closed:!0,fill:t.fillcolor,thickness:0}),n}function Bze(e,t){var r=e._fullLayout,n=t._length,i=t.textfont,a=t.textposition,o=_h(a)?a:[a],s=i.color,l=i.size,u=i.family,c=i.weight,f=i.style,h=i.variant,d={},v,_=e._context.plotGlPixelRatio,b=t.texttemplate;if(b){d.text=[];var p=r._d3locale,k=Array.isArray(b),E=k?Math.min(b.length,n):n,S=k?function(P){return b[P]}:function(){return b};for(v=0;v<E;v++){var L={i:v},x=t._module.formatLabels(L,t,r),C={};Y9t(C,t,v),d.text.push(o5.texttemplateString({data:[C,L,t._meta],fallback:t.texttemplatefallback,labels:x,locale:p,template:S(v)}))}}else _h(t.text)&&t.text.length<n?d.text=t.text.slice():d.text=t.text;if(_h(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 M=o[v].split(/\s+/);switch(M[1]){case"left":d.align.push("right");break;case"right":d.align.push("left");break;default:d.align.push(M[1])}switch(M[0]){case"top":d.baseline.push("bottom");break;case"bottom":d.baseline.push("top");break;default:d.baseline.push(M[0])}}if(_h(s))for(d.color=new Array(n),v=0;v<n;v++)d.color[v]=s[v];else d.color=s;if(_h(l)||Array.isArray(u)||_h(c)||Array.isArray(f)||Array.isArray(h))for(d.font=new Array(n),v=0;v<n;v++){var g=d.font[v]={};g.size=(o5.isTypedArray(l)?l[v]:_h(l)?KF(l[v])?l[v]:0:l)*_,g.family=Array.isArray(u)?u[v]:u,g.weight=Rze(_h(c)?c[v]:c),g.style=Array.isArray(f)?f[v]:f,g.variant=Array.isArray(h)?h[v]:h}else d.font={size:l*_,family:u,weight:Rze(c),style:f,variant:h};return d}function Rze(e){return e<=1e3?e>500?"bold":"normal":e}function aY(e,t){var r=t._length,n=t.marker,i={},a,o=_h(n.symbol),s=_h(n.angle),l=_h(n.color),u=_h(n.line.color),c=_h(n.opacity),f=_h(n.size),h=_h(n.line.width),d;if(o||(d=iY.isOpenSymbol(n.symbol)),o||l||u||c||s){i.symbols=new Array(r),i.angles=new Array(r),i.colors=new Array(r),i.borderColors=new Array(r);var v=n.symbol,_=n.angle,b=Pze(n,n.opacity,r),p=Pze(n.line,n.opacity,r);if(!_h(p[0])){var k=p;for(p=Array(r),a=0;a<r;a++)p[a]=k}if(!_h(b[0])){var E=b;for(b=Array(r),a=0;a<r;a++)b[a]=E}if(!_h(v)){var S=v;for(v=Array(r),a=0;a<r;a++)v[a]=S}if(!_h(_)){var L=_;for(_=Array(r),a=0;a<r;a++)_[a]=L}for(i.symbols=v,i.angles=_,i.colors=b,i.borderColors=p,a=0;a<r;a++)o&&(d=iY.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]=qze({mx:i.symbols[a],ma:i.angles[a]},t)}else d?(i.color=YF(n.color,"uint8"),i.color[3]=0,i.borderColor=YF(n.color,"uint8")):(i.color=YF(n.color,"uint8"),i.borderColor=YF(n.line.color,"uint8")),i.opacity=t.opacity*n.opacity,i.marker=qze({mx:n.symbol,ma:n.angle},t);var x=1,C=X9t(t,x),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]=C(n.size[a]),T+=g[a];z=T/r}else for(M=C(n.size),a=0;a<r;a++)g[a]=M;if(h)for(a=0;a<r;a++)P[a]=n.line.width[a];else for(M=n.line.width,a=0;a<r;a++)P[a]=M;i.sizeAvg=z}else i.size=C(n&&n.size||10),i.borderSizes=C(n.line.width);return i}function nY(e,t,r){var n=t.marker,i={};return r&&(r.marker&&r.marker.symbol?i=aY(e,o5.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 Dze(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:o5.extendFlat({},t.textfont)};r.textfont&&o5.extendFlat(i.textfont,r.textfont),n=Bze(e,i)}return n}function Fze(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 zze=hk.SYMBOL_SDF_SIZE,K2=hk.SYMBOL_SIZE,Oze=hk.SYMBOL_STROKE,rY={},J9t=n5.symbolFuncs[0](K2*.05);function qze(e,t){var r=e.mx;if(r==="circle")return null;var n,i,a=n5.symbolNumber(r),o=n5.symbolFuncs[a%100],s=!!n5.symbolNoDot[a%100],l=!!n5.symbolNoFill[a%100],u=iY.isDotSymbol(r);if(e.ma&&(r+="_"+e.ma),rY[r])return rY[r];var c=n5.getMarkerAngle(e,t);return u&&!s?n=o(K2*1.1,c)+J9t:n=o(K2,c),i=j9t(n,{w:zze,h:zze,viewBox:[-K2,-K2,K2,K2],stroke:l?Oze:-Oze}),rY[r]=i,i||null}function $9t(e,t,r){var n=r.length,i=n/2,a,o;if(a5.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>hk.TOO_MANY_POINTS||a5.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 Q9t(e,t,r,n,i){var a=W9t.getComponentMethod("errorbars","makeComputeError"),o=Lze.getFromId(e,t.xaxis,"x"),s=Lze.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 _=a(v),b={x:0,y:1}[d],p={x:[0,1,2,3],y:[2,3,0,1]}[d],k=new Float64Array(4*l),E=1/0,S=-1/0,L=0,x=0;L<l;L++,x+=4){var C=f[L];if(KF(C)){var M=r[L*2+b],g=_(C,L),P=g[0],T=g[1];if(KF(P)&&KF(T)){var z=C-P,O=C+T;k[x+p[0]]=M-h.c2l(z),k[x+p[1]]=h.c2l(O)-M,k[x+p[2]]=0,k[x+p[3]]=0,E=Math.min(E,C-P),S=Math.max(S,C+T)}}}u[d]={positions:r,errors:k,_bnds:[E,S]}}}return c(n,o),c(i,s),u}function eOt(e,t,r,n){var i=t._length,a={},o;if(a5.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=_h(s)?s[o].size:s.size,h=_h(l)?l.length>1?l[o]:l[0]:l,d=_h(u)?u.length>1?u[o]:u[0]:u,v=Ize[h],_=Ize[d],b=c?c/.8+1:0,p=-_*b-_*.5;a.offset[o]=[v*b/f,p/f]}}return a}Nze.exports={style:K9t,markerStyle:aY,markerSelection:nY,linePositions:$9t,errorBarPositions:Q9t,textPosition:eOt}});var oY=ye((lyr,Uze)=>{"use strict";var JF=Dr();Uze.exports=function(t,r){var n=r._scene,i={count:0,dirty:!0,lineOptions:[],fillOptions:[],markerOptions:[],markerSelectedOptions:[],markerUnselectedOptions:[],errorXOptions:[],errorYOptions:[],textOptions:[],textSelectedOptions:[],textUnselectedOptions:[],selectBatch:[],unselectBatch:[]},a={fill2d:!1,scatter2d:!1,error2d:!1,line2d:!1,glText:!1,select2d:!1};return r._scene||(n=r._scene={},n.init=function(){JF.extendFlat(n,a,i)},n.init(),n.update=function(s){var l=JF.repeat(s,n.count);if(n.fill2d&&n.fill2d.update(l),n.scatter2d&&n.scatter2d.update(l),n.line2d&&n.line2d.update(l),n.error2d&&n.error2d.update(l.concat(l)),n.select2d&&n.select2d.update(l),n.glText)for(var u=0;u<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,_=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(_[b].length){var p=JF.repeat([],n.count);p[b]=_[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||JF.extendFlat(n,i),n}});var Xze=ye((uyr,Wze)=>{"use strict";var tOt=HF(),s5=Dr(),Vze=hf(),rOt=Ag().findExtremes,Gze=Dg(),sY=O0(),iOt=sY.calcMarkerSize,nOt=sY.calcAxisExpansion,aOt=sY.setFirstScatter,oOt=F0(),l5=J2(),sOt=oY(),Hze=fs().BADNUM,lOt=ox().TOO_MANY_POINTS;Wze.exports=function(t,r){var n=t._fullLayout,i=r._xA=Vze.getFromId(t,r.xaxis,"x"),a=r._yA=Vze.getFromId(t,r.yaxis,"y"),o=n._plots[r.xaxis+r.yaxis],s=r._length,l=s>=lOt,u=s*2,c={},f,h=i.makeCalcdata(r,"x"),d=a.makeCalcdata(r,"y"),v=Gze(r,i,"x",h),_=Gze(r,a,"y",d),b=v.vals,p=_.vals;r._x=b,r._y=p,r.xperiodalignment&&(r._origX=h,r._xStarts=v.starts,r._xEnds=v.ends),r.yperiodalignment&&(r._origY=d,r._yStarts=_.starts,r._yEnds=_.ends);var k=new Array(u),E=new Array(s);for(f=0;f<s;f++)k[f*2]=b[f]===Hze?NaN:b[f],k[f*2+1]=p[f]===Hze?NaN:p[f],E[f]=f;if(i.type==="log")for(f=0;f<u;f+=2)k[f]=i.c2l(k[f]);if(a.type==="log")for(f=1;f<u;f+=2)k[f]=a.c2l(k[f]);l&&i.type!=="log"&&a.type!=="log"?c.tree=tOt(k):c.ids=E,oOt(t,r);var S=uOt(t,o,r,k,b,p),L=sOt(t,o);aOt(n,r);var x;return l?S.marker&&(x=S.marker.sizeAvg||Math.max(S.marker.size,3)):x=iOt(r,s),nOt(t,r,i,a,b,p,x),S.errorX&&jze(r,i,S.errorX),S.errorY&&jze(r,a,S.errorY),S.fill&&!L.fill2d&&(L.fill2d=!0),S.marker&&!L.scatter2d&&(L.scatter2d=!0),S.line&&!L.line2d&&(L.line2d=!0),(S.errorX||S.errorY)&&!L.error2d&&(L.error2d=!0),S.text&&!L.glText&&(L.glText=!0),S.marker&&(S.marker.snap=s),L.lineOptions.push(S.line),L.errorXOptions.push(S.errorX),L.errorYOptions.push(S.errorY),L.fillOptions.push(S.fill),L.markerOptions.push(S.marker),L.markerSelectedOptions.push(S.markerSel),L.markerUnselectedOptions.push(S.markerUnsel),L.textOptions.push(S.text),L.textSelectedOptions.push(S.textSel),L.textUnselectedOptions.push(S.textUnsel),L.selectBatch.push([]),L.unselectBatch.push([]),c._scene=L,c.index=L.count,c.x=b,c.y=p,c.positions=k,L.count++,[{x:!1,y:!1,t:c,trace:r}]};function jze(e,t,r){var n=e._extremes[t._id],i=rOt(t,r._bnds,{padded:!0});n.min=n.min.concat(i.min),n.max=n.max.concat(i.max)}function uOt(e,t,r,n,i,a){var o=l5.style(e,r);if(o.marker&&(o.marker.positions=n),o.line&&n.length>1&&s5.extendFlat(o.line,l5.linePositions(e,r,n)),o.errorX||o.errorY){var s=l5.errorBarPositions(e,r,n,i,a);o.errorX&&s5.extendFlat(o.errorX,s.x),o.errorY&&s5.extendFlat(o.errorY,s.y)}return o.text&&(s5.extendFlat(o.text,{positions:n},l5.textPosition(e,r,o.text,o.marker)),s5.extendFlat(o.textSel,{positions:n},l5.textPosition(e,r,o.text,o.markerSel)),s5.extendFlat(o.textUnsel,{positions:n},l5.textPosition(e,r,o.text,o.markerUnsel))),o}});var lY=ye((cyr,Yze)=>{"use strict";var Zze=Dr(),cOt=ka(),fOt=N1().DESELECTDIM;function hOt(e){var t=e[0],r=t.trace,n=t.t,i=n._scene,a=n.index,o=i.selectBatch[a],s=i.unselectBatch[a],l=i.textOptions[a],u=i.textSelectedOptions[a]||{},c=i.textUnselectedOptions[a]||{},f=Zze.extendFlat({},l),h,d;if(o.length||s.length){var v=u.color,_=c.color,b=l.color,p=Zze.isArrayOrTypedArray(b);for(f.color=new Array(r._length),h=0;h<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 k=p?b[d]:b;f.color[d]=_||(v?k:cOt.addOpacity(k,fOt))}}i.glText[a].update(f)}Yze.exports={styleTextSelection:hOt}});var uY=ye((fyr,Jze)=>{"use strict";var Kze=Ru(),dOt=lY().styleTextSelection;Jze.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=[],s=n[0].trace,l=n[0].t,u=s._length,c=l.x,f=l.y,h=l._scene,d=l.index;if(!h)return o;var v=Kze.hasText(s),_=Kze.hasMarkers(s),b=!_&&!v;if(s.visible!==!0||b)return o;var p=[],k=[];if(r!==!1&&!r.degenerate)for(var E=0;E<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])})):k.push(E);if(_){var S=h.scatter2d;if(!p.length&&!k.length){var L=new Array(h.count);L[d]=h.markerOptions[d],S.update.apply(S,L)}else if(!h.selectBatch[d].length&&!h.unselectBatch[d].length){var x=new Array(h.count);x[d]=h.markerUnselectedOptions[d],S.update.apply(S,x)}}return h.selectBatch[d]=p,h.unselectBatch[d]=k,v&&dOt(n),o}});var Qze=ye((hyr,$ze)=>{"use strict";var vOt=UF();$ze.exports={moduleType:"trace",name:"scattergl",basePlotModule:ph(),categories:["gl","regl","cartesian","symbols","errorBarsOK","showLegend","scatter-like"],attributes:lk(),supplyDefaults:DFe(),crossTraceDefaults:aU(),colorbar:$d(),formatLabels:zFe(),calc:Xze(),hoverPoints:vOt.hoverPoints,selectPoints:uY(),meta:{}}});var t7e=ye((dyr,QF)=>{"use strict";var $F=ZE();QF.exports=e7e;QF.exports.to=e7e;QF.exports.from=pOt;function e7e(e,t){t==null&&(t=!0);var r=e[0],n=e[1],i=e[2],a=e[3];a==null&&(a=t?1:255),t&&(r*=255,n*=255,i*=255,a*=255),r=$F(r,0,255)&255,n=$F(n,0,255)&255,i=$F(i,0,255)&255,a=$F(a,0,255)&255;var o=r*16777216+(n<<16)+(i<<8)+a;return o}function pOt(e,t){e=+e;var r=e>>>24,n=(e&16711680)>>>16,i=(e&65280)>>>8,a=e&255;return t===!1?[r,n,i,a]:[r/255,n/255,i/255,a/255]}});var Oh=ye((vyr,i7e)=>{"use strict";var r7e=Object.getOwnPropertySymbols,gOt=Object.prototype.hasOwnProperty,mOt=Object.prototype.propertyIsEnumerable;function yOt(e){if(e==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}function _Ot(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de",Object.getOwnPropertyNames(e)[0]==="5")return!1;for(var t={},r=0;r<10;r++)t["_"+String.fromCharCode(r)]=r;var n=Object.getOwnPropertyNames(t).map(function(a){return t[a]});if(n.join("")!=="0123456789")return!1;var i={};return"abcdefghijklmnopqrst".split("").forEach(function(a){i[a]=a}),Object.keys(Object.assign({},i)).join("")==="abcdefghijklmnopqrst"}catch(a){return!1}}i7e.exports=_Ot()?Object.assign:function(e,t){for(var r,n=yOt(e),i,a=1;a<arguments.length;a++){r=Object(arguments[a]);for(var o in r)gOt.call(r,o)&&(n[o]=r[o]);if(r7e){i=r7e(r);for(var s=0;s<i.length;s++)mOt.call(r,i[s])&&(n[i[s]]=r[i[s]])}}return n}});var a7e=ye((pyr,n7e)=>{n7e.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 cY=ye((gyr,o7e)=>{"use strict";o7e.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 l7e=ye((myr,s7e)=>{"use strict";s7e.exports=typeof navigator!="undefined"&&(/MSIE/.test(navigator.userAgent)||/Trident\//.test(navigator.appVersion))});var ez=ye((yyr,u5)=>{"use strict";u5.exports=dk;u5.exports.float32=u5.exports.float=dk;u5.exports.fract32=u5.exports.fract=xOt;var u7e=new Float32Array(1);function xOt(e,t){if(e.length){if(e instanceof Float32Array)return new Float32Array(e.length);t instanceof Float32Array||(t=dk(e));for(var r=0,n=t.length;r<n;r++)t[r]=e[r]-t[r];return t}return dk(e-dk(e))}function dk(e){return e.length?e instanceof Float32Array?e:new Float32Array(e):(u7e[0]=e,u7e[0])}});var hY=ye((_yr,h7e)=>{"use strict";function bOt(e,t){var r=e==null?null:typeof Symbol!="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(r!=null){var n,i,a,o,s=[],l=!0,u=!1;try{if(a=(r=r.call(e)).next,t===0){if(Object(r)!==r)return;l=!1}else for(;!(l=(n=a.call(r)).done)&&(s.push(n.value),s.length!==t);l=!0);}catch(c){u=!0,i=c}finally{try{if(!l&&r.return!=null&&(o=r.return(),Object(o)!==o))return}finally{if(u)throw i}}return s}}function wOt(e,t){return SOt(e)||bOt(e,t)||f7e(e,t)||kOt()}function TOt(e){return AOt(e)||MOt(e)||f7e(e)||EOt()}function AOt(e){if(Array.isArray(e))return fY(e)}function SOt(e){if(Array.isArray(e))return e}function MOt(e){if(typeof Symbol!="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function f7e(e,t){if(e){if(typeof e=="string")return fY(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return fY(e,t)}}function fY(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function EOt(){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 kOt(){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 COt=J_(),LOt=X2(),POt=t7e(),IOt=HF(),$2=Oh(),tz=a7e(),ROt=Zm(),DOt=cY(),FOt=Z2(),c7e=l7e(),rz=ez(),zOt=i5(),OOt=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=c7e,i=e.texture({data:new Uint8Array(c*4),width:c,height:1,type:"uint8",format:"rgba",wrapS:"clamp",wrapT:"clamp",mag:"nearest",min:"nearest"}),$2(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=$2({},h);d.frag=tz([`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=tz([`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=$2({},h);v.frag=tz([`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=tz([`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;
}
`]),c7e&&(v.frag=v.frag.replace("smoothstep","smoothStep"),d.frag=d.frag.replace("smoothstep","smoothStep")),this.drawCircle=e(v)}nv.defaults={color:"black",borderColor:"transparent",borderSize:0,size:12,opacity:1,marker:void 0,viewport:null,range:null,pixelSize:null,count:0,offset:0,bounds:null,positions:[],snap:1e4};nv.prototype.render=function(){return arguments.length&&this.update.apply(this,arguments),this.draw(),this};nv.prototype.draw=function(){for(var e=this,t=arguments.length,r=new Array(t),n=0;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,TOt(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?[$2({},t,{markerTexture:this.markerTextures[e],activation:o[e],count:r.length,elements:r,offset:0})]:[$2({},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),_=0;_<r.length;_++){var b=r[_];v[b]=d?d[b]:1}s.subdata(v)}for(var p=f.length;p--;){var k=wOt(f[p],2),E=k[0],S=k[1];c.push($2({},t,{markerTexture:this.markerTextures[e],activation:r?s:o[e],offset:E,count:S-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=ROt(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=$2({},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(DOt(h,c,[{snap:!0,size:function(j,N){return j==null&&(j=nv.defaults.size),d+=j&&j.length?1:0,j},borderSize:function(j,N){return j==null&&(j=nv.defaults.borderSize),d+=j&&j.length?1:0,j},opacity:parseFloat,color:function(j,N){return j==null&&(j=nv.defaults.color),j=e.updateColor(j),v++,j},borderColor:function(j,N){return j==null&&(j=nv.defaults.borderColor),j=e.updateColor(j),v++,j},bounds:function(j,N,H){return"range"in H||(H.range=null),j},positions:function(j,N,H){var te=N.snap,oe=N.positionBuffer,_e=N.positionFractBuffer,Ee=N.selectionBuffer;if(j.x||j.y)return j.x.length?N.xAttr={buffer:o.buffer(j.x),offset:0,stride:4,count:j.x.length}:N.xAttr={buffer:j.x.buffer,offset:j.x.offset*4||0,stride:(j.x.stride||1)*4,count:j.x.count},j.y.length?N.yAttr={buffer:o.buffer(j.y),offset:0,stride:4,count:j.y.length}:N.yAttr={buffer:j.y.buffer,offset:j.y.offset*4||0,stride:(j.y.stride||1)*4,count:j.y.count},N.count=Math.max(N.xAttr.count,N.yAttr.count),j;j=FOt(j,"float64");var Ce=N.count=Math.floor(j.length/2),me=N.bounds=Ce?LOt(j,2):null;if(!H.range&&!N.range&&(delete N.range,H.range=me),!H.marker&&!N.marker&&(delete N.marker,H.marker=null),te&&(te===!0||Ce>te)?N.tree=IOt(j,{bounds:me}):te&&te.length&&(N.tree=te),N.tree){var ie={primitive:"points",usage:"static",data:N.tree,type:"uint32"};N.elements?N.elements(ie):N.elements=o.elements(ie)}var Se=rz.float32(j);oe({data:Se,usage:"dynamic"});var Le=rz.fract32(j,Se);return _e({data:Le,usage:"dynamic"}),Ee({data:new Uint8Array(Ce),type:"uint8",usage:"stream"}),j}},{marker:function(j,N,H){var te=N.activation;if(te.forEach(function(Le){return Le&&Le.destroy&&Le.destroy()}),te.length=0,!j||typeof j[0]=="number"){var oe=e.addMarker(j);te[oe]=!0}else{for(var _e=[],Ee=0,Ce=Math.min(j.length,N.count);Ee<Ce;Ee++){var me=e.addMarker(j[Ee]);_e[me]||(_e[me]=new Uint8Array(N.count)),_e[me][Ee]=1}for(var ie=0;ie<_e.length;ie++)if(_e[ie]){var Se={data:_e[ie],type:"uint8",usage:"static"};te[ie]?te[ie](Se):te[ie]=o.buffer(Se),te[ie].data=_e[ie]}}return j},range:function(j,N,H){var te=N.bounds;if(te)return j||(j=te),N.scale=[1/(j[2]-j[0]),1/(j[3]-j[1])],N.translate=[-j[0],-j[1]],N.scaleFract=rz.fract(N.scale),N.translateFract=rz.fract(N.translate),j},viewport:function(j){var N=zOt(j||[a.drawingBufferWidth,a.drawingBufferHeight]);return N}}]),d){var _=h,b=_.count,p=_.size,k=_.borderSize,E=_.sizeBuffer,S=new Uint8Array(b*2);if(p.length||k.length)for(var L=0;L<b;L++)S[L*2]=Math.round((p[L]==null?p:p[L])*255/s),S[L*2+1]=Math.round((k[L]==null?k:k[L])*255/s);E({data:S,usage:"dynamic"})}if(v){var x=h,C=x.count,M=x.color,g=x.borderColor,P=x.colorBuffer,T;if(e.tooManyColors){if(M.length||g.length){T=new Uint8Array(C*8);for(var z=0;z<C;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(C*4+2);for(var G=0;G<C;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=COt(u,"uint8");var c=POt(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 qOt=Oh(),BOt=function(t,r){var n=new OOt(t,r),i=n.render.bind(n);return qOt(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};h7e.exports=BOt});var m7e=ye((xyr,gY)=>{"use strict";gY.exports=az;gY.exports.default=az;function az(e,t,r){r=r||2;var n=t&&t.length,i=n?t[0]*r:e.length,a=v7e(e,0,i,r,!0),o=[];if(!a||a.next===a.prev)return o;var s,l,u,c,f,h,d;if(n&&(a=HOt(e,t,a,r)),e.length>80*r){s=u=e[0],l=c=e[1];for(var v=r;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 vk(a,o,r,s,l,d,0),o}function v7e(e,t,r,n,i){var a,o;if(i===pY(e,t,r,n)>0)for(a=t;a<r;a+=n)o=d7e(a,e[a],e[a+1],o);else for(a=r-n;a>=t;a-=n)o=d7e(a,e[a],e[a+1],o);return o&&oz(o,o.next)&&(gk(o),o=o.next),o}function Q2(e,t){if(!e)return e;t||(t=e);var r=e,n;do if(n=!1,!r.steiner&&(oz(r,r.next)||xh(r.prev,r,r.next)===0)){if(gk(r),r=t=r.prev,r===r.next)break;n=!0}else r=r.next;while(n||r!==t);return t}function vk(e,t,r,n,i,a,o){if(e){!o&&a&&YOt(e,n,i,a);for(var s=e,l,u;e.prev!==e.next;){if(l=e.prev,u=e.next,a?UOt(e,n,i,a):NOt(e)){t.push(l.i/r|0),t.push(e.i/r|0),t.push(u.i/r|0),gk(e),e=u.next,s=u.next;continue}if(e=u,e===s){o?o===1?(e=VOt(Q2(e),t,r),vk(e,t,r,n,i,a,2)):o===2&&GOt(e,t,r,n,i,a):vk(Q2(e),t,r,n,i,a,1);break}}}}function NOt(e){var t=e.prev,r=e,n=e.next;if(xh(t,r,n)>=0)return!1;for(var i=t.x,a=r.x,o=n.x,s=t.y,l=r.y,u=n.y,c=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&&c5(i,s,a,l,o,u,v.x,v.y)&&xh(v.prev,v,v.next)>=0)return!1;v=v.next}return!0}function UOt(e,t,r,n){var i=e.prev,a=e,o=e.next;if(xh(i,a,o)>=0)return!1;for(var s=i.x,l=a.x,u=o.x,c=i.y,f=a.y,h=o.y,d=s<l?s<u?s:u:l<u?l:u,v=c<f?c<h?c:h:f<h?f:h,_=s>l?s>u?s:u:l>u?l:u,b=c>f?c>h?c:h:f>h?f:h,p=dY(d,v,t,r,n),k=dY(_,b,t,r,n),E=e.prevZ,S=e.nextZ;E&&E.z>=p&&S&&S.z<=k;){if(E.x>=d&&E.x<=_&&E.y>=v&&E.y<=b&&E!==i&&E!==o&&c5(s,c,l,f,u,h,E.x,E.y)&&xh(E.prev,E,E.next)>=0||(E=E.prevZ,S.x>=d&&S.x<=_&&S.y>=v&&S.y<=b&&S!==i&&S!==o&&c5(s,c,l,f,u,h,S.x,S.y)&&xh(S.prev,S,S.next)>=0))return!1;S=S.nextZ}for(;E&&E.z>=p;){if(E.x>=d&&E.x<=_&&E.y>=v&&E.y<=b&&E!==i&&E!==o&&c5(s,c,l,f,u,h,E.x,E.y)&&xh(E.prev,E,E.next)>=0)return!1;E=E.prevZ}for(;S&&S.z<=k;){if(S.x>=d&&S.x<=_&&S.y>=v&&S.y<=b&&S!==i&&S!==o&&c5(s,c,l,f,u,h,S.x,S.y)&&xh(S.prev,S,S.next)>=0)return!1;S=S.nextZ}return!0}function VOt(e,t,r){var n=e;do{var i=n.prev,a=n.next.next;!oz(i,a)&&p7e(i,n,n.next,a)&&pk(i,a)&&pk(a,i)&&(t.push(i.i/r|0),t.push(n.i/r|0),t.push(a.i/r|0),gk(n),gk(n.next),n=e=a),n=n.next}while(n!==e);return Q2(n)}function GOt(e,t,r,n,i,a){var o=e;do{for(var s=o.next.next;s!==o.prev;){if(o.i!==s.i&&$Ot(o,s)){var l=g7e(o,s);o=Q2(o,o.next),l=Q2(l,l.next),vk(o,t,r,n,i,a,0),vk(l,t,r,n,i,a,0);return}s=s.next}o=o.next}while(o!==e)}function HOt(e,t,r,n){var i=[],a,o,s,l,u;for(a=0,o=t.length;a<o;a++)s=t[a]*n,l=a<o-1?t[a+1]*n:e.length,u=v7e(e,s,l,n,!1),u===u.next&&(u.steiner=!0),i.push(JOt(u));for(i.sort(jOt),a=0;a<i.length;a++)r=WOt(i[a],r);return r}function jOt(e,t){return e.x-t.x}function WOt(e,t){var r=XOt(e,t);if(!r)return t;var n=g7e(r,e);return Q2(n,n.next),Q2(r,r.next)}function XOt(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&&c5(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),pk(r,e)&&(h<f||h===f&&(r.x>o.x||r.x===o.x&&ZOt(o,r)))&&(o=r,f=h)),r=r.next;while(r!==l);return o}function ZOt(e,t){return xh(e.prev,e,t.prev)<0&&xh(t.next,e,e.next)<0}function YOt(e,t,r,n){var i=e;do i.z===0&&(i.z=dY(i.x,i.y,t,r,n)),i.prevZ=i.prev,i.nextZ=i.next,i=i.next;while(i!==e);i.prevZ.nextZ=null,i.prevZ=null,KOt(i)}function KOt(e){var t,r,n,i,a,o,s,l,u=1;do{for(r=e,e=null,a=null,o=0;r;){for(o++,n=r,s=0,t=0;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 dY(e,t,r,n,i){return e=(e-r)*i|0,t=(t-n)*i|0,e=(e|e<<8)&16711935,e=(e|e<<4)&252645135,e=(e|e<<2)&858993459,e=(e|e<<1)&1431655765,t=(t|t<<8)&16711935,t=(t|t<<4)&252645135,t=(t|t<<2)&858993459,t=(t|t<<1)&1431655765,e|t<<1}function JOt(e){var t=e,r=e;do(t.x<r.x||t.x===r.x&&t.y<r.y)&&(r=t),t=t.next;while(t!==e);return r}function c5(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 $Ot(e,t){return e.next.i!==t.i&&e.prev.i!==t.i&&!QOt(e,t)&&(pk(e,t)&&pk(t,e)&&eqt(e,t)&&(xh(e.prev,e,t.prev)||xh(e,t.prev,t))||oz(e,t)&&xh(e.prev,e,e.next)>0&&xh(t.prev,t,t.next)>0)}function xh(e,t,r){return(t.y-e.y)*(r.x-t.x)-(t.x-e.x)*(r.y-t.y)}function oz(e,t){return e.x===t.x&&e.y===t.y}function p7e(e,t,r,n){var i=nz(xh(e,t,r)),a=nz(xh(e,t,n)),o=nz(xh(r,n,e)),s=nz(xh(r,n,t));return!!(i!==a&&o!==s||i===0&&iz(e,r,t)||a===0&&iz(e,n,t)||o===0&&iz(r,e,n)||s===0&&iz(r,t,n))}function iz(e,t,r){return t.x<=Math.max(e.x,r.x)&&t.x>=Math.min(e.x,r.x)&&t.y<=Math.max(e.y,r.y)&&t.y>=Math.min(e.y,r.y)}function nz(e){return e>0?1:e<0?-1:0}function QOt(e,t){var r=e;do{if(r.i!==e.i&&r.next.i!==e.i&&r.i!==t.i&&r.next.i!==t.i&&p7e(r,r.next,e,t))return!0;r=r.next}while(r!==e);return!1}function pk(e,t){return xh(e.prev,e,e.next)<0?xh(e,t,e.next)>=0&&xh(e,e.prev,t)>=0:xh(e,t,e.prev)<0||xh(e,e.next,t)<0}function eqt(e,t){var r=e,n=!1,i=(e.x+t.x)/2,a=(e.y+t.y)/2;do r.y>a!=r.next.y>a&&r.next.y!==r.y&&i<(r.next.x-r.x)*(a-r.y)/(r.next.y-r.y)+r.x&&(n=!n),r=r.next;while(r!==e);return n}function g7e(e,t){var r=new vY(e.i,e.x,e.y),n=new vY(t.i,t.x,t.y),i=e.next,a=t.prev;return e.next=t,t.prev=e,r.next=i,i.prev=r,n.next=r,r.prev=n,a.next=n,n.prev=a,n}function d7e(e,t,r,n){var i=new vY(e,t,r);return n?(i.next=n.next,i.prev=n,n.next.prev=i,n.next=i):(i.prev=i,i.next=i),i}function gk(e){e.next.prev=e.prev,e.prev.next=e.next,e.prevZ&&(e.prevZ.nextZ=e.nextZ),e.nextZ&&(e.nextZ.prevZ=e.prevZ)}function vY(e,t,r){this.i=e,this.x=t,this.y=r,this.prev=null,this.next=null,this.z=0,this.prevZ=null,this.nextZ=null,this.steiner=!1}az.deviation=function(e,t,r,n){var i=t&&t.length,a=i?t[0]*r:e.length,o=Math.abs(pY(e,0,a,r));if(i)for(var s=0,l=t.length;s<l;s++){var u=t[s]*r,c=s<l-1?t[s+1]*r:e.length;o-=Math.abs(pY(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 pY(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}az.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 _7e=ye((byr,y7e)=>{"use strict";var tqt=X2();y7e.exports=rqt;function rqt(e,t,r){if(!e||e.length==null)throw Error("Argument should be an array");t==null&&(t=1),r==null&&(r=tqt(e,t));for(var n=0;n<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 b7e=ye((wyr,x7e)=>{"use strict";x7e.exports=function(){var e,t;if(typeof WeakMap!="function")return!1;try{e=new WeakMap([[t={},"one"],[{},"two"],[{},"three"]])}catch(r){return!1}return!(String(e)!=="[object WeakMap]"||typeof e.set!="function"||e.set({},1)!==e||typeof e.delete!="function"||typeof e.has!="function"||e.get(t)!=="one")}});var T7e=ye((Tyr,w7e)=>{"use strict";w7e.exports=function(){}});var lx=ye((Ayr,A7e)=>{"use strict";var iqt=T7e()();A7e.exports=function(e){return e!==iqt&&e!==null}});var mY=ye((Syr,M7e)=>{"use strict";var nqt=Object.create,aqt=Object.getPrototypeOf,S7e={};M7e.exports=function(){var e=Object.setPrototypeOf,t=arguments[0]||nqt;return typeof e!="function"?!1:aqt(e(t(null),S7e))===S7e}});var yY=ye((Myr,E7e)=>{"use strict";var oqt=lx(),sqt={function:!0,object:!0};E7e.exports=function(e){return oqt(e)&&sqt[typeof e]||!1}});var i1=ye((Eyr,k7e)=>{"use strict";var lqt=lx();k7e.exports=function(e){if(!lqt(e))throw new TypeError("Cannot use null or undefined");return e}});var L7e=ye((kyr,C7e)=>{"use strict";var _Y=Object.create,sz;mY()()||(sz=xY());C7e.exports=function(){var e,t,r;return!sz||sz.level!==1?_Y:(e={},t={},r={configurable:!1,enumerable:!1,writable:!0,value:void 0},Object.getOwnPropertyNames(Object.prototype).forEach(function(n){if(n==="__proto__"){t[n]={configurable:!0,enumerable:!1,writable:!0,value:void 0};return}t[n]=r}),Object.defineProperties(e,t),Object.defineProperty(sz,"nullPolyfill",{configurable:!1,enumerable:!1,writable:!1,value:e}),function(n,i){return _Y(n===null?e:n,i)})}()});var xY=ye((Cyr,P7e)=>{"use strict";var uqt=yY(),cqt=i1(),fqt=Object.prototype.isPrototypeOf,hqt=Object.defineProperty,dqt={configurable:!0,enumerable:!1,writable:!0,value:void 0},lz;lz=function(e,t){if(cqt(e),t===null||uqt(t))return e;throw new TypeError("Prototype must be null or an object")};P7e.exports=function(e){var t,r;return e?(e.level===2?e.set?(r=e.set,t=function(n,i){return r.call(lz(n,i),i),n}):t=function(n,i){return lz(n,i).__proto__=i,n}:t=function n(i,a){var o;return lz(i,a),o=fqt.call(n.nullPolyfill,i),o&&delete n.nullPolyfill.__proto__,a===null&&(a=n.nullPolyfill),i.__proto__=a,o&&hqt(n.nullPolyfill,"__proto__",dqt),i},Object.defineProperty(t,"level",{configurable:!1,enumerable:!1,writable:!1,value:e.level})):null}(function(){var e=Object.create(null),t={},r,n=Object.getOwnPropertyDescriptor(Object.prototype,"__proto__");if(n){try{r=n.set,r.call(e,t)}catch(i){}if(Object.getPrototypeOf(e)===t)return{set:r,level:2}}return e.__proto__=t,Object.getPrototypeOf(e)===t?{level:2}:(e={},e.__proto__=t,Object.getPrototypeOf(e)===t?{level:1}:!1)}());L7e()});var uz=ye((Lyr,I7e)=>{"use strict";I7e.exports=mY()()?Object.setPrototypeOf:xY()});var D7e=ye((Pyr,R7e)=>{"use strict";var vqt=yY();R7e.exports=function(e){if(!vqt(e))throw new TypeError(e+" is not an Object");return e}});var z7e=ye((Iyr,F7e)=>{"use strict";var pqt=Object.create(null),gqt=Math.random;F7e.exports=function(){var e;do e=gqt().toString(36).slice(2);while(pqt[e]);return e}});var ew=ye((Ryr,O7e)=>{"use strict";var mqt=void 0;O7e.exports=function(e){return e!==mqt&&e!==null}});var cz=ye((Dyr,q7e)=>{"use strict";var yqt=ew(),_qt={object:!0,function:!0,undefined:!0};q7e.exports=function(e){return yqt(e)?hasOwnProperty.call(_qt,typeof e):!1}});var N7e=ye((Fyr,B7e)=>{"use strict";var xqt=cz();B7e.exports=function(e){if(!xqt(e))return!1;try{return e.constructor?e.constructor.prototype===e:!1}catch(t){return!1}}});var V7e=ye((zyr,U7e)=>{"use strict";var bqt=N7e();U7e.exports=function(e){if(typeof e!="function"||!hasOwnProperty.call(e,"length"))return!1;try{if(typeof e.length!="number"||typeof e.call!="function"||typeof e.apply!="function")return!1}catch(t){return!1}return!bqt(e)}});var bY=ye((Oyr,G7e)=>{"use strict";var wqt=V7e(),Tqt=/^\s*class[\s{/}]/,Aqt=Function.prototype.toString;G7e.exports=function(e){return!(!wqt(e)||Tqt.test(Aqt.call(e)))}});var j7e=ye((qyr,H7e)=>{"use strict";H7e.exports=function(){var e=Object.assign,t;return typeof e!="function"?!1:(t={foo:"raz"},e(t,{bar:"dwa"},{trzy:"trzy"}),t.foo+t.bar+t.trzy==="razdwatrzy")}});var X7e=ye((Byr,W7e)=>{"use strict";W7e.exports=function(){try{return Object.keys("primitive"),!0}catch(e){return!1}}});var Y7e=ye((Nyr,Z7e)=>{"use strict";var Sqt=lx(),Mqt=Object.keys;Z7e.exports=function(e){return Mqt(Sqt(e)?Object(e):e)}});var J7e=ye((Uyr,K7e)=>{"use strict";K7e.exports=X7e()()?Object.keys:Y7e()});var Q7e=ye((Vyr,$7e)=>{"use strict";var Eqt=J7e(),kqt=i1(),Cqt=Math.max;$7e.exports=function(e,t){var r,n,i=Cqt(arguments.length,2),a;for(e=Object(kqt(e)),a=function(o){try{e[o]=t[o]}catch(s){r||(r=s)}},n=1;n<i;++n)t=arguments[n],Eqt(t).forEach(a);if(r!==void 0)throw r;return e}});var fz=ye((Gyr,e9e)=>{"use strict";e9e.exports=j7e()()?Object.assign:Q7e()});var wY=ye((Hyr,t9e)=>{"use strict";var Lqt=lx(),Pqt=Array.prototype.forEach,Iqt=Object.create,Rqt=function(e,t){var r;for(r in e)t[r]=e[r]};t9e.exports=function(e){var t=Iqt(null);return Pqt.call(arguments,function(r){Lqt(r)&&Rqt(Object(r),t)}),t}});var i9e=ye((jyr,r9e)=>{"use strict";var TY="razdwatrzy";r9e.exports=function(){return typeof TY.contains!="function"?!1:TY.contains("dwa")===!0&&TY.contains("foo")===!1}});var a9e=ye((Wyr,n9e)=>{"use strict";var Dqt=String.prototype.indexOf;n9e.exports=function(e){return Dqt.call(this,e,arguments[1])>-1}});var AY=ye((Xyr,o9e)=>{"use strict";o9e.exports=i9e()()?String.prototype.contains:a9e()});var n1=ye((Zyr,c9e)=>{"use strict";var hz=ew(),s9e=bY(),l9e=fz(),u9e=wY(),mk=AY(),Fqt=c9e.exports=function(e,t){var r,n,i,a,o;return arguments.length<2||typeof e!="string"?(a=t,t=e,e=null):a=arguments[2],hz(e)?(r=mk.call(e,"c"),n=mk.call(e,"e"),i=mk.call(e,"w")):(r=i=!0,n=!1),o={value:t,configurable:r,enumerable:n,writable:i},a?l9e(u9e(a),o):o};Fqt.gs=function(e,t,r){var n,i,a,o;return typeof e!="string"?(a=r,r=t,t=e,e=null):a=arguments[3],hz(t)?s9e(t)?hz(r)?s9e(r)||(a=r,r=void 0):r=void 0:(a=t,t=r=void 0):t=void 0,hz(e)?(n=mk.call(e,"c"),i=mk.call(e,"e")):(n=!0,i=!1),o={get:t,set:r,configurable:n,enumerable:i},a?l9e(u9e(a),o):o}});var yk=ye((Yyr,h9e)=>{"use strict";var f9e=Object.prototype.toString,zqt=f9e.call(function(){return arguments}());h9e.exports=function(e){return f9e.call(e)===zqt}});var _k=ye((Kyr,v9e)=>{"use strict";var d9e=Object.prototype.toString,Oqt=d9e.call("");v9e.exports=function(e){return typeof e=="string"||e&&typeof e=="object"&&(e instanceof String||d9e.call(e)===Oqt)||!1}});var g9e=ye((Jyr,p9e)=>{"use strict";p9e.exports=function(){return typeof globalThis!="object"||!globalThis?!1:globalThis.Array===Array}});var _9e=ye(($yr,y9e)=>{var m9e=function(){if(typeof self=="object"&&self)return self;if(typeof window=="object"&&window)return window;throw new Error("Unable to resolve global `this`")};y9e.exports=function(){if(this)return this;try{Object.defineProperty(Object.prototype,"__global__",{get:function(){return this},configurable:!0})}catch(e){return m9e()}try{return __global__||m9e()}finally{delete Object.prototype.__global__}}()});var xk=ye((Qyr,x9e)=>{"use strict";x9e.exports=g9e()()?globalThis:_9e()});var w9e=ye((e1r,b9e)=>{"use strict";var qqt=xk(),SY={object:!0,symbol:!0};b9e.exports=function(){var e=qqt.Symbol,t;if(typeof e!="function")return!1;t=e("test symbol");try{String(t)}catch(r){return!1}return!(!SY[typeof e.iterator]||!SY[typeof e.toPrimitive]||!SY[typeof e.toStringTag])}});var A9e=ye((t1r,T9e)=>{"use strict";T9e.exports=function(e){return e?typeof e=="symbol"?!0:!e.constructor||e.constructor.name!=="Symbol"?!1:e[e.constructor.toStringTag]==="Symbol":!1}});var MY=ye((r1r,S9e)=>{"use strict";var Bqt=A9e();S9e.exports=function(e){if(!Bqt(e))throw new TypeError(e+" is not a symbol");return e}});var L9e=ye((i1r,C9e)=>{"use strict";var M9e=n1(),Nqt=Object.create,E9e=Object.defineProperty,Uqt=Object.prototype,k9e=Nqt(null);C9e.exports=function(e){for(var t=0,r,n;k9e[e+(t||"")];)++t;return e+=t||"",k9e[e]=!0,r="@@"+e,E9e(Uqt,r,M9e.gs(null,function(i){n||(n=!0,E9e(this,r,M9e(i)),n=!1)})),r}});var I9e=ye((n1r,P9e)=>{"use strict";var em=n1(),qh=xk().Symbol;P9e.exports=function(e){return Object.defineProperties(e,{hasInstance:em("",qh&&qh.hasInstance||e("hasInstance")),isConcatSpreadable:em("",qh&&qh.isConcatSpreadable||e("isConcatSpreadable")),iterator:em("",qh&&qh.iterator||e("iterator")),match:em("",qh&&qh.match||e("match")),replace:em("",qh&&qh.replace||e("replace")),search:em("",qh&&qh.search||e("search")),species:em("",qh&&qh.species||e("species")),split:em("",qh&&qh.split||e("split")),toPrimitive:em("",qh&&qh.toPrimitive||e("toPrimitive")),toStringTag:em("",qh&&qh.toStringTag||e("toStringTag")),unscopables:em("",qh&&qh.unscopables||e("unscopables"))})}});var F9e=ye((a1r,D9e)=>{"use strict";var R9e=n1(),Vqt=MY(),bk=Object.create(null);D9e.exports=function(e){return Object.defineProperties(e,{for:R9e(function(t){return bk[t]?bk[t]:bk[t]=e(String(t))}),keyFor:R9e(function(t){var r;Vqt(t);for(r in bk)if(bk[r]===t)return r})})}});var q9e=ye((o1r,O9e)=>{"use strict";var Ym=n1(),EY=MY(),dz=xk().Symbol,Gqt=L9e(),Hqt=I9e(),jqt=F9e(),Wqt=Object.create,kY=Object.defineProperties,vz=Object.defineProperty,Xv,f5,z9e;if(typeof dz=="function")try{String(dz()),z9e=!0}catch(e){}else dz=null;f5=function(t){if(this instanceof f5)throw new TypeError("Symbol is not a constructor");return Xv(t)};O9e.exports=Xv=function e(t){var r;if(this instanceof e)throw new TypeError("Symbol is not a constructor");return z9e?dz(t):(r=Wqt(f5.prototype),t=t===void 0?"":String(t),kY(r,{__description__:Ym("",t),__name__:Ym("",Gqt(t))}))};Hqt(Xv);jqt(Xv);kY(f5.prototype,{constructor:Ym(Xv),toString:Ym("",function(){return this.__name__})});kY(Xv.prototype,{toString:Ym(function(){return"Symbol ("+EY(this).__description__+")"}),valueOf:Ym(function(){return EY(this)})});vz(Xv.prototype,Xv.toPrimitive,Ym("",function(){var e=EY(this);return typeof e=="symbol"?e:e.toString()}));vz(Xv.prototype,Xv.toStringTag,Ym("c","Symbol"));vz(f5.prototype,Xv.toStringTag,Ym("c",Xv.prototype[Xv.toStringTag]));vz(f5.prototype,Xv.toPrimitive,Ym("c",Xv.prototype[Xv.toPrimitive]))});var ux=ye((s1r,B9e)=>{"use strict";B9e.exports=w9e()()?xk().Symbol:q9e()});var U9e=ye((l1r,N9e)=>{"use strict";var Xqt=i1();N9e.exports=function(){return Xqt(this).length=0,this}});var h5=ye((u1r,V9e)=>{"use strict";V9e.exports=function(e){if(typeof e!="function")throw new TypeError(e+" is not a function");return e}});var H9e=ye((c1r,G9e)=>{"use strict";var Zqt=ew(),Yqt=cz(),Kqt=Object.prototype.toString;G9e.exports=function(e){if(!Zqt(e))return null;if(Yqt(e)){var t=e.toString;if(typeof t!="function"||t===Kqt)return null}try{return""+e}catch(r){return null}}});var W9e=ye((f1r,j9e)=>{"use strict";j9e.exports=function(e){try{return e.toString()}catch(t){try{return String(e)}catch(r){return null}}}});var Z9e=ye((h1r,X9e)=>{"use strict";var Jqt=W9e(),$qt=/[\n\r\u2028\u2029]/g;X9e.exports=function(e){var t=Jqt(e);return t===null?"<Non-coercible to string value>":(t.length>100&&(t=t.slice(0,99)+"\u2026"),t=t.replace($qt,function(r){switch(r){case`
`:return"\\n";case"\r":return"\\r";case"\u2028":return"\\u2028";case"\u2029":return"\\u2029";default:throw new Error("Unexpected character")}}),t)}});var CY=ye((d1r,J9e)=>{"use strict";var Y9e=ew(),Qqt=cz(),eBt=H9e(),tBt=Z9e(),K9e=function(e,t){return e.replace("%v",tBt(t))};J9e.exports=function(e,t,r){if(!Qqt(r))throw new TypeError(K9e(t,e));if(!Y9e(e)){if("default"in r)return r.default;if(r.isOptional)return null}var n=eBt(r.errorMessage);throw Y9e(n)||(n=t),new TypeError(K9e(n,e))}});var Q9e=ye((v1r,$9e)=>{"use strict";var rBt=CY(),iBt=ew();$9e.exports=function(e){return iBt(e)?e:rBt(e,"Cannot use %v",arguments[1])}});var tOe=ye((p1r,eOe)=>{"use strict";var nBt=CY(),aBt=bY();eOe.exports=function(e){return aBt(e)?e:nBt(e,"%v is not a plain function",arguments[1])}});var iOe=ye((g1r,rOe)=>{"use strict";rOe.exports=function(){var e=Array.from,t,r;return typeof e!="function"?!1:(t=["raz","dwa"],r=e(t),!!(r&&r!==t&&r[1]==="dwa"))}});var aOe=ye((m1r,nOe)=>{"use strict";var oBt=Object.prototype.toString,sBt=RegExp.prototype.test.bind(/^[object [A-Za-z0-9]*Function]$/);nOe.exports=function(e){return typeof e=="function"&&sBt(oBt.call(e))}});var sOe=ye((y1r,oOe)=>{"use strict";oOe.exports=function(){var e=Math.sign;return typeof e!="function"?!1:e(10)===1&&e(-20)===-1}});var uOe=ye((_1r,lOe)=>{"use strict";lOe.exports=function(e){return e=Number(e),isNaN(e)||e===0?e:e>0?1:-1}});var fOe=ye((x1r,cOe)=>{"use strict";cOe.exports=sOe()()?Math.sign:uOe()});var dOe=ye((b1r,hOe)=>{"use strict";var lBt=fOe(),uBt=Math.abs,cBt=Math.floor;hOe.exports=function(e){return isNaN(e)?0:(e=Number(e),e===0||!isFinite(e)?e:lBt(e)*cBt(uBt(e)))}});var pOe=ye((w1r,vOe)=>{"use strict";var fBt=dOe(),hBt=Math.max;vOe.exports=function(e){return hBt(0,fBt(e))}});var _Oe=ye((T1r,yOe)=>{"use strict";var dBt=ux().iterator,vBt=yk(),pBt=aOe(),gBt=pOe(),gOe=h5(),mBt=i1(),yBt=lx(),_Bt=_k(),mOe=Array.isArray,LY=Function.prototype.call,tw={configurable:!0,enumerable:!0,writable:!0,value:null},PY=Object.defineProperty;yOe.exports=function(e){var t=arguments[1],r=arguments[2],n,i,a,o,s,l,u,c,f,h;if(e=Object(mBt(e)),yBt(t)&&gOe(t),!this||this===Array||!pBt(this)){if(!t){if(vBt(e))return s=e.length,s!==1?Array.apply(null,e):(o=new Array(1),o[0]=e[0],o);if(mOe(e)){for(o=new Array(s=e.length),i=0;i<s;++i)o[i]=e[i];return o}}o=[]}else n=this;if(!mOe(e)){if((f=e[dBt])!==void 0){for(u=gOe(f).call(e),n&&(o=new n),c=u.next(),i=0;!c.done;)h=t?LY.call(t,r,c.value,i):c.value,n?(tw.value=h,PY(o,i,tw)):o[i]=h,c=u.next(),++i;s=i}else if(_Bt(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?LY.call(t,r,h,a):h,n?(tw.value=h,PY(o,a,tw)):o[a]=h,++a;s=a}}if(s===void 0)for(s=gBt(e.length),n&&(o=new n(s)),i=0;i<s;++i)h=t?LY.call(t,r,e[i],i):e[i],n?(tw.value=h,PY(o,i,tw)):o[i]=h;return n&&(tw.value=null,o.length=s),o}});var bOe=ye((A1r,xOe)=>{"use strict";xOe.exports=iOe()()?Array.from:_Oe()});var TOe=ye((S1r,wOe)=>{"use strict";var xBt=bOe(),bBt=fz(),wBt=i1();wOe.exports=function(e){var t=Object(wBt(e)),r=arguments[1],n=Object(arguments[2]);if(t!==e&&!r)return t;var i={};return r?xBt(r,function(a){(n.ensure||a in e)&&(i[a]=e[a])}):bBt(i,e),i}});var MOe=ye((M1r,SOe)=>{"use strict";var TBt=h5(),ABt=i1(),SBt=Function.prototype.bind,AOe=Function.prototype.call,MBt=Object.keys,EBt=Object.prototype.propertyIsEnumerable;SOe.exports=function(e,t){return function(r,n){var i,a=arguments[2],o=arguments[3];return r=Object(ABt(r)),TBt(n),i=MBt(r),o&&i.sort(typeof o=="function"?SBt.call(o,r):void 0),typeof e!="function"&&(e=i[e]),AOe.call(e,i,function(s,l){return EBt.call(r,s)?AOe.call(n,a,r[s],s,r,l):t})}}});var kOe=ye((E1r,EOe)=>{"use strict";EOe.exports=MOe()("forEach")});var LOe=ye((k1r,COe)=>{"use strict";var kBt=h5(),CBt=kOe(),LBt=Function.prototype.call;COe.exports=function(e,t){var r={},n=arguments[2];return kBt(t),CBt(e,function(i,a,o,s){r[a]=LBt.call(t,n,i,a,o,s)}),r}});var DOe=ye((C1r,ROe)=>{"use strict";var PBt=ew(),IBt=Q9e(),POe=tOe(),RBt=TOe(),DBt=wY(),FBt=LOe(),zBt=Function.prototype.bind,OBt=Object.defineProperty,qBt=Object.prototype.hasOwnProperty,IOe;IOe=function(e,t,r){var n=IBt(t)&&POe(t.value),i;return i=RBt(t),delete i.writable,delete i.value,i.get=function(){return!r.overwriteDefinition&&qBt.call(this,e)?n:(t.value=zBt.call(n,r.resolveContext?r.resolveContext(this):this),OBt(this,e,t),this[e])},i};ROe.exports=function(e){var t=DBt(arguments[1]);return PBt(t.resolveContext)&&POe(t.resolveContext),FBt(e,function(r,n){return IOe(n,r,t)})}});var IY=ye((L1r,qOe)=>{"use strict";var BBt=U9e(),NBt=fz(),UBt=h5(),VBt=i1(),qp=n1(),GBt=DOe(),FOe=ux(),zOe=Object.defineProperty,OOe=Object.defineProperties,wk;qOe.exports=wk=function(e,t){if(!(this instanceof wk))throw new TypeError("Constructor requires 'new'");OOe(this,{__list__:qp("w",VBt(e)),__context__:qp("w",t),__nextIndex__:qp("w",0)}),t&&(UBt(t.on),t.on("_add",this._onAdd),t.on("_delete",this._onDelete),t.on("_clear",this._onClear))};delete wk.prototype.constructor;OOe(wk.prototype,NBt({_next:qp(function(){var e;if(this.__list__){if(this.__redo__&&(e=this.__redo__.shift(),e!==void 0))return e;if(this.__nextIndex__<this.__list__.length)return this.__nextIndex__++;this._unBind()}}),next:qp(function(){return this._createResult(this._next())}),_createResult:qp(function(e){return e===void 0?{done:!0,value:void 0}:{done:!1,value:this._resolve(e)}}),_resolve:qp(function(e){return this.__list__[e]}),_unBind:qp(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:qp(function(){return"[object "+(this[FOe.toStringTag]||"Object")+"]"})},GBt({_onAdd:qp(function(e){if(!(e>=this.__nextIndex__)){if(++this.__nextIndex__,!this.__redo__){zOe(this,"__redo__",qp("c",[e]));return}this.__redo__.forEach(function(t,r){t>=e&&(this.__redo__[r]=++t)},this),this.__redo__.push(e)}}),_onDelete:qp(function(e){var t;e>=this.__nextIndex__||(--this.__nextIndex__,this.__redo__&&(t=this.__redo__.indexOf(e),t!==-1&&this.__redo__.splice(t,1),this.__redo__.forEach(function(r,n){r>e&&(this.__redo__[n]=--r)},this)))}),_onClear:qp(function(){this.__redo__&&BBt.call(this.__redo__),this.__nextIndex__=0})})));zOe(wk.prototype,FOe.iterator,qp(function(){return this}))});var GOe=ye((P1r,VOe)=>{"use strict";var BOe=uz(),NOe=AY(),RY=n1(),HBt=ux(),DY=IY(),UOe=Object.defineProperty,d5;d5=VOe.exports=function(e,t){if(!(this instanceof d5))throw new TypeError("Constructor requires 'new'");DY.call(this,e),t?NOe.call(t,"key+value")?t="key+value":NOe.call(t,"key")?t="key":t="value":t="value",UOe(this,"__kind__",RY("",t))};BOe&&BOe(d5,DY);delete d5.prototype.constructor;d5.prototype=Object.create(DY.prototype,{_resolve:RY(function(e){return this.__kind__==="value"?this.__list__[e]:this.__kind__==="key+value"?[e,this.__list__[e]]:e})});UOe(d5.prototype,HBt.toStringTag,RY("c","Array Iterator"))});var XOe=ye((I1r,WOe)=>{"use strict";var HOe=uz(),pz=n1(),jBt=ux(),FY=IY(),jOe=Object.defineProperty,v5;v5=WOe.exports=function(e){if(!(this instanceof v5))throw new TypeError("Constructor requires 'new'");e=String(e),FY.call(this,e),jOe(this,"__length__",pz("",e.length))};HOe&&HOe(v5,FY);delete v5.prototype.constructor;v5.prototype=Object.create(FY.prototype,{_next:pz(function(){if(this.__list__){if(this.__nextIndex__<this.__length__)return this.__nextIndex__++;this._unBind()}}),_resolve:pz(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)})});jOe(v5.prototype,jBt.toStringTag,pz("c","String Iterator"))});var YOe=ye((R1r,ZOe)=>{"use strict";var WBt=yk(),XBt=lx(),ZBt=_k(),YBt=ux().iterator,KBt=Array.isArray;ZOe.exports=function(e){return XBt(e)?KBt(e)||ZBt(e)||WBt(e)?!0:typeof e[YBt]=="function":!1}});var JOe=ye((D1r,KOe)=>{"use strict";var JBt=YOe();KOe.exports=function(e){if(!JBt(e))throw new TypeError(e+" is not iterable");return e}});var zY=ye((F1r,eqe)=>{"use strict";var $Bt=yk(),QBt=_k(),$Oe=GOe(),eNt=XOe(),tNt=JOe(),QOe=ux().iterator;eqe.exports=function(e){return typeof tNt(e)[QOe]=="function"?e[QOe]():$Bt(e)?new $Oe(e):QBt(e)?new eNt(e):new $Oe(e)}});var rqe=ye((z1r,tqe)=>{"use strict";var rNt=yk(),iNt=h5(),nNt=_k(),aNt=zY(),oNt=Array.isArray,OY=Function.prototype.call,sNt=Array.prototype.some;tqe.exports=function(e,t){var r,n=arguments[2],i,a,o,s,l,u,c;if(oNt(e)||rNt(e)?r="array":nNt(e)?r="string":e=aNt(e),iNt(t),a=function(){o=!0},r==="array"){sNt.call(e,function(f){return OY.call(t,n,f,a),o});return}if(r==="string"){for(l=e.length,s=0;s<l&&(u=e[s],s+1<l&&(c=u.charCodeAt(0),c>=55296&&c<=56319&&(u+=e[++s])),OY.call(t,n,u,a),!o);++s);return}for(i=e.next();!i.done;){if(OY.call(t,n,i.value,a),o)return;i=e.next()}}});var nqe=ye((O1r,iqe)=>{"use strict";iqe.exports=function(){return typeof WeakMap!="function"?!1:Object.prototype.toString.call(new WeakMap)==="[object WeakMap]"}()});var sqe=ye((q1r,oqe)=>{"use strict";var lNt=lx(),mz=uz(),gz=D7e(),uNt=i1(),cNt=z7e(),a1=n1(),fNt=zY(),hNt=rqe(),dNt=ux().toStringTag,aqe=nqe(),vNt=Array.isArray,BY=Object.defineProperty,qY=Object.prototype.hasOwnProperty,pNt=Object.getPrototypeOf,cx;oqe.exports=cx=function(){var e=arguments[0],t;if(!(this instanceof cx))throw new TypeError("Constructor requires 'new'");return t=aqe&&mz&&WeakMap!==cx?mz(new WeakMap,pNt(this)):this,lNt(e)&&(vNt(e)||(e=fNt(e))),BY(t,"__weakMapData__",a1("c","$weakMap$"+cNt())),e&&hNt(e,function(r){uNt(r),t.set(r[0],r[1])}),t};aqe&&(mz&&mz(cx,WeakMap),cx.prototype=Object.create(WeakMap.prototype,{constructor:a1(cx)}));Object.defineProperties(cx.prototype,{delete:a1(function(e){return qY.call(gz(e),this.__weakMapData__)?(delete e[this.__weakMapData__],!0):!1}),get:a1(function(e){if(qY.call(gz(e),this.__weakMapData__))return e[this.__weakMapData__]}),has:a1(function(e){return qY.call(gz(e),this.__weakMapData__)}),set:a1(function(e,t){return BY(gz(e),this.__weakMapData__,a1("c",t)),this}),toString:a1(function(){return"[object WeakMap]"})});BY(cx.prototype,dNt,a1("c","WeakMap"))});var NY=ye((B1r,lqe)=>{"use strict";lqe.exports=b7e()()?WeakMap:sqe()});var cqe=ye((N1r,uqe)=>{"use strict";uqe.exports=function(e,t,r){if(typeof Array.prototype.findIndex=="function")return e.findIndex(t,r);if(typeof t!="function")throw new TypeError("predicate must be a function");var n=Object(e),i=n.length;if(i===0)return-1;for(var a=0;a<i;a++)if(t.call(r,n[a],a,n))return a;return-1}});var GY=ye((U1r,dqe)=>{"use strict";var yz=J_(),gNt=X2(),VY=Oh(),mNt=Zm(),yNt=Z2(),fqe=m7e(),_Nt=_7e(),{float32:xNt,fract32:UY}=ez(),bNt=NY(),hqe=i5(),wNt=cqe(),TNt=`
precision highp float;
attribute vec2 aCoord, bCoord, aCoordFract, bCoordFract;
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.;
}
`,ANt=`
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;
}
`,SNt=`
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;
}
`,MNt=`
precision highp float;
varying vec4 fragColor;
void main() {
gl_FragColor = fragColor;
}
`,ENt=`
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;
}
}
}
`,kNt=`
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;
}
`;dqe.exports=Wc;function Wc(e,t){if(!(this instanceof Wc))return new Wc(e,t);if(typeof e=="function"?(t||(t={}),t.regl=e):t=e,t.length&&(t.positions=t),e=t.regl,!e.hasExtension("ANGLE_instanced_arrays"))throw Error("regl-error2d: `ANGLE_instanced_arrays` extension should be enabled");this.gl=e._gl,this.regl=e,this.passes=[],this.shaders=Wc.shaders.has(e)?Wc.shaders.get(e):Wc.shaders.set(e,Wc.createShaders(e)).get(e),this.update(t)}Wc.dashMult=2;Wc.maxPatternLength=256;Wc.precisionThreshold=3e6;Wc.maxPoints=1e4;Wc.maxLines=2048;Wc.shaders=new bNt;Wc.createShaders=function(e){let t=e.buffer({usage:"static",type:"float",data:[0,1,0,0,1,1,1,0]}),r={primitive:"triangle strip",instances:e.prop("count"),count:4,offset:0,uniforms:{miterMode:(o,s)=>s.join==="round"?2:1,miterLimit:e.prop("miterLimit"),scale:e.prop("scale"),scaleFract:e.prop("scaleFract"),translateFract:e.prop("translateFract"),translate:e.prop("translate"),thickness:e.prop("thickness"),dashTexture:e.prop("dashTexture"),opacity:e.prop("opacity"),pixelRatio:e.context("pixelRatio"),id:e.prop("id"),dashLength:e.prop("dashLength"),viewport:(o,s)=>[s.viewport.x,s.viewport.y,o.viewportWidth,o.viewportHeight],depth:e.prop("depth")},blend:{enable:!0,color:[0,0,0,0],equation:{rgb:"add",alpha:"add"},func:{srcRGB:"src alpha",dstRGB:"one minus src alpha",srcAlpha:"one minus dst alpha",dstAlpha:"one"}},depth:{enable:(o,s)=>!s.overlay},stencil:{enable:!1},scissor:{enable:!0,box:e.prop("viewport")},viewport:e.prop("viewport")},n=e(VY({vert:TNt,frag:ANt,attributes:{lineEnd:{buffer:t,divisor:0,stride:8,offset:0},lineTop:{buffer:t,divisor:0,stride:8,offset:4},aCoord:{buffer:e.prop("positionBuffer"),stride:8,offset:8,divisor:1},bCoord:{buffer:e.prop("positionBuffer"),stride:8,offset:16,divisor:1},aCoordFract:{buffer:e.prop("positionFractBuffer"),stride:8,offset:8,divisor:1},bCoordFract:{buffer:e.prop("positionFractBuffer"),stride:8,offset:16,divisor:1},color:{buffer:e.prop("colorBuffer"),stride:4,offset:0,divisor:1}}},r)),i;try{i=e(VY({cull:{enable:!0,face:"back"},vert:ENt,frag:kNt,attributes:{lineEnd:{buffer:t,divisor:0,stride:8,offset:0},lineTop:{buffer:t,divisor:0,stride:8,offset:4},aColor:{buffer:e.prop("colorBuffer"),stride:4,offset:0,divisor:1},bColor:{buffer:e.prop("colorBuffer"),stride:4,offset:4,divisor:1},prevCoord:{buffer:e.prop("positionBuffer"),stride:8,offset:0,divisor:1},aCoord:{buffer:e.prop("positionBuffer"),stride:8,offset:8,divisor:1},bCoord:{buffer:e.prop("positionBuffer"),stride:8,offset:16,divisor:1},nextCoord:{buffer:e.prop("positionBuffer"),stride:8,offset:24,divisor:1}}},r))}catch(o){i=n}return{fill:e({primitive:"triangle",elements:(o,s)=>s.triangles,offset:0,vert:SNt,frag:MNt,uniforms:{scale:e.prop("scale"),color:e.prop("fill"),scaleFract:e.prop("scaleFract"),translateFract:e.prop("translateFract"),translate:e.prop("translate"),opacity:e.prop("opacity"),pixelRatio:e.context("pixelRatio"),id:e.prop("id"),viewport:(o,s)=>[s.viewport.x,s.viewport.y,o.viewportWidth,o.viewportHeight]},attributes:{position:{buffer:e.prop("positionBuffer"),stride:8,offset:8},positionFract:{buffer:e.prop("positionFractBuffer"),stride:8,offset:8}},blend:r.blend,depth:{enable:!1},scissor:r.scissor,stencil:r.stencil,viewport:r.viewport}),rect:n,miter:i}};Wc.defaults={dashes:null,join:"miter",miterLimit:1,thickness:10,cap:"square",color:"black",opacity:1,overlay:!1,viewport:null,range:null,close:!1,fill:null};Wc.prototype.render=function(...e){e.length&&this.update(...e),this.draw()};Wc.prototype.draw=function(...e){return(e.length?e:this.passes).forEach((t,r)=>{if(t&&Array.isArray(t))return this.draw(...t);typeof t=="number"&&(t=this.passes[t]),t&&t.count>1&&t.opacity&&(this.regl._refresh(),t.fill&&t.triangles&&t.triangles.length>2&&this.shaders.fill(t),t.thickness&&(t.scale[0]*t.viewport.width>Wc.precisionThreshold||t.scale[1]*t.viewport.height>Wc.precisionThreshold?this.shaders.rect(t):t.join==="rect"||!t.join&&(t.thickness<=2||t.count>=Wc.maxPoints)?this.shaders.rect(t):this.shaders.miter(t)))}),this};Wc.prototype.update=function(e){if(!e)return;e.length!=null?typeof e[0]=="number"&&(e=[{positions:e}]):Array.isArray(e)||(e=[e]);let{regl:t,gl:r}=this;if(e.forEach((i,a)=>{let o=this.passes[a];if(i!==void 0){if(i===null){this.passes[a]=null;return}if(typeof i[0]=="number"&&(i={positions:i}),i=mNt(i,{positions:"positions points data coords",thickness:"thickness lineWidth lineWidths line-width linewidth width stroke-width strokewidth strokeWidth",join:"lineJoin linejoin join type mode",miterLimit:"miterlimit miterLimit",dashes:"dash dashes dasharray dash-array dashArray",color:"color colour stroke colors colours stroke-color strokeColor",fill:"fill fill-color fillColor",opacity:"alpha opacity",overlay:"overlay crease overlap intersect",close:"closed close closed-path closePath",range:"range dataBox",viewport:"viewport viewBox",hole:"holes hole hollow",splitNull:"splitNull"}),o||(this.passes[a]=o={id:a,scale:null,scaleFract:null,translate:null,translateFract:null,count:0,hole:[],depth:0,dashLength:1,dashTexture:t.texture({channels:1,data:new Uint8Array([255]),width:1,height:1,mag:"linear",min:"linear"}),colorBuffer:t.buffer({usage:"dynamic",type:"uint8",data:new Uint8Array}),positionBuffer:t.buffer({usage:"dynamic",type:"float",data:new Uint8Array}),positionFractBuffer:t.buffer({usage:"dynamic",type:"float",data:new Uint8Array})},i=VY({},Wc.defaults,i)),i.thickness!=null&&(o.thickness=parseFloat(i.thickness)),i.opacity!=null&&(o.opacity=parseFloat(i.opacity)),i.miterLimit!=null&&(o.miterLimit=parseFloat(i.miterLimit)),i.overlay!=null&&(o.overlay=!!i.overlay,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?yz(i.fill,"uint8"):null),i.viewport!=null&&(o.viewport=hqe(i.viewport)),o.viewport||(o.viewport=hqe([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,_=i.positions.y;c=o.count=Math.max(v.length,_.length),u=new Float64Array(c*2);for(let b=0;b<c;b++)u[b*2]=v[b],u[b*2+1]=_[b]}else u=yNt(i.positions,"float64"),c=o.count=Math.floor(u.length/2);let f=o.bounds=gNt(u,2);if(o.fill){let v=[],_={},b=0;for(let p=0,k=0,E=o.count;p<E;p++){let S=u[p*2],L=u[p*2+1];isNaN(S)||isNaN(L)||S==null||L==null?(S=u[b*2],L=u[b*2+1],_[p]=b):b=p,v[k++]=S,v[k++]=L}if(i.splitNull){o.count-1 in _||(_[o.count]=o.count-1);let p=Object.keys(_).map(Number).sort((L,x)=>L-x),k=[],E=0,S=o.hole!=null?o.hole[0]:null;if(S!=null){let L=wNt(p,x=>x>=S);p=p.slice(0,L),p.push(S)}for(let L=0;L<p.length;L++){let x=v.slice(E*2,p[L]*2).concat(S?v.slice(S*2):[]),C=(o.hole||[]).map(g=>g-S+(p[L]-E)),M=fqe(x,C);M=M.map(g=>g+E+(g+E<p[L]?0:S-p[L])),k.push(...M),E=p[L]+1}for(let L=0,x=k.length;L<x;L++)_[k[L]]!=null&&(k[L]=_[k[L]]);o.triangles=k}else{let p=fqe(v,o.hole||[]);for(let k=0,E=p.length;k<E;k++)_[p[k]]!=null&&(p[k]=_[p[k]]);o.triangles=p}}let h=new Float64Array(u);_Nt(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=xNt(d);o.positionBuffer(s);var l=UY(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=UY(o.scale),o.translateFract=UY(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 _=0,b=i.dashes[v]*Wc.dashMult*.5;_<b;++_)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=yz(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=yz(c[h],"uint8");f.set(d,h*4)}f.set(yz(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 yqe=ye((V1r,mqe)=>{"use strict";var CNt=X2(),LNt=J_(),PNt=cY(),INt=Zm(),vqe=Oh(),pqe=Z2(),{float32:RNt,fract32:HY}=ez();mqe.exports=DNt;var gqe=[[1,0,0,1,0,0],[1,0,0,-1,0,0],[-1,0,0,-1,0,0],[-1,0,0,-1,0,0],[-1,0,0,1,0,0],[1,0,0,1,0,0],[1,0,-1,0,0,1],[1,0,-1,0,0,-1],[1,0,1,0,0,-1],[1,0,1,0,0,-1],[1,0,1,0,0,1],[1,0,-1,0,0,1],[-1,0,-1,0,0,1],[-1,0,-1,0,0,-1],[-1,0,1,0,0,-1],[-1,0,1,0,0,-1],[-1,0,1,0,0,1],[-1,0,-1,0,0,1],[0,1,1,0,0,0],[0,1,-1,0,0,0],[0,-1,-1,0,0,0],[0,-1,-1,0,0,0],[0,1,1,0,0,0],[0,-1,1,0,0,0],[0,1,0,-1,1,0],[0,1,0,-1,-1,0],[0,1,0,1,-1,0],[0,1,0,1,1,0],[0,1,0,-1,1,0],[0,1,0,1,-1,0],[0,-1,0,-1,1,0],[0,-1,0,-1,-1,0],[0,-1,0,1,-1,0],[0,-1,0,1,1,0],[0,-1,0,-1,1,0],[0,-1,0,1,-1,0]];function DNt(e,t){if(typeof e=="function"?(t||(t={}),t.regl=e):t=e,t.length&&(t.positions=t),e=t.regl,!e.hasExtension("ANGLE_instanced_arrays"))throw Error("regl-error2d: `ANGLE_instanced_arrays` extension should be enabled");let r=e._gl,n,i,a,o,s,l,u={color:"black",capSize:5,lineWidth:1,opacity:1,viewport:null,range:null,offset:0,count:0,bounds:null,positions:[],errors:[]},c=[];return o=e.buffer({usage:"dynamic",type:"uint8",data:new Uint8Array(0)}),i=e.buffer({usage:"dynamic",type:"float",data:new Uint8Array(0)}),a=e.buffer({usage:"dynamic",type:"float",data:new Uint8Array(0)}),s=e.buffer({usage:"dynamic",type:"float",data:new Uint8Array(0)}),l=e.buffer({usage:"static",type:"float",data:gqe}),v(t),n=e({vert:`
precision highp float;
attribute vec2 position, positionFract;
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:gqe.length}),vqe(f,{update:v,draw:h,destroy:_,regl:e,gl:r,canvas:r.canvas,groups:c}),f;function f(b){b?v(b):b===null&&_(),h()}function h(b){if(typeof b=="number")return d(b);b&&!Array.isArray(b)&&(b=[b]),e._refresh(),c.forEach((p,k)=>{if(p){if(b&&(b[k]?p.draw=!0:p.draw=!1),!p.draw){p.draw=!0;return}d(k)}})}function d(b){typeof b=="number"&&(b=c[b]),b!=null&&b&&b.count&&b.color&&b.opacity&&b.positions&&b.positions.length>1&&(b.scaleRatio=[b.scale[0]*b.viewport.width,b.scale[1]*b.viewport.height],n(b),b.after&&b.after(b))}function v(b){if(!b)return;b.length!=null?typeof b[0]=="number"&&(b=[{positions:b}]):Array.isArray(b)||(b=[b]);let p=0,k=0;if(f.groups=c=b.map((L,x)=>{let C=c[x];if(L)typeof L=="function"?L={after:L}:typeof L[0]=="number"&&(L={positions:L});else return C;return L=INt(L,{color:"color colors fill",capSize:"capSize cap capsize cap-size",lineWidth:"lineWidth line-width width line thickness",opacity:"opacity alpha",range:"range dataBox",viewport:"viewport viewBox",errors:"errors error",positions:"positions position data points"}),C||(c[x]=C={id:x,scale:null,translate:null,scaleFract:null,translateFract:null,draw:!0},L=vqe({},u,L)),PNt(C,L,[{lineWidth:M=>+M*.5,capSize:M=>+M*.5,opacity:parseFloat,errors:M=>(M=pqe(M),k+=M.length,M),positions:(M,g)=>(M=pqe(M,"float64"),g.count=Math.floor(M.length/2),g.bounds=CNt(M,2),g.offset=p,p+=g.count,M)},{color:(M,g)=>{let P=g.count;if(M||(M="transparent"),!Array.isArray(M)||typeof M[0]=="number"){let z=M;M=Array(P);for(let O=0;O<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=LNt(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=HY(g.scale),g.translateFract=HY(g.translate),M},viewport:M=>{let g;return Array.isArray(M)?g={x:M[0],y:M[1],width:M[2]-M[0],height:M[3]-M[1]}:M?(g={x:M.x||M.left||0,y:M.y||M.top||0},M.right?g.width=M.right-g.x:g.width=M.w||M.width||0,M.bottom?g.height=M.bottom-g.y:g.height=M.h||M.height||0):g={x:0,y:0,width:r.drawingBufferWidth,height:r.drawingBufferHeight},g}}]),C}),p||k){let L=c.reduce((g,P,T)=>g+(P?P.count:0),0),x=new Float64Array(L*2),C=new Uint8Array(L*4),M=new Float32Array(L*4);c.forEach((g,P)=>{if(!g)return;let{positions:T,count:z,offset:O,color:V,errors:G}=g;z&&(C.set(V,O*4),M.set(G,O*4),x.set(T,O*2))});var E=RNt(x);i(E);var S=HY(x,E);a(S),o(C),s(M)}}function _(){i.destroy(),a.destroy(),o.destroy(),s.destroy(),l.destroy()}}});var bqe=ye((G1r,xqe)=>{var _qe=/[\'\"]/;xqe.exports=function(t){return t?(_qe.test(t.charAt(0))&&(t=t.substr(1)),_qe.test(t.charAt(t.length-1))&&(t=t.substr(0,t.length-1)),t):""}});var jY=ye((H1r,FNt)=>{FNt.exports=["inherit","initial","unset"]});var WY=ye((j1r,zNt)=>{zNt.exports=["caption","icon","menu","message-box","small-caption","status-bar"]});var XY=ye((W1r,ONt)=>{ONt.exports=["normal","bold","bolder","lighter","100","200","300","400","500","600","700","800","900"]});var ZY=ye((X1r,qNt)=>{qNt.exports=["normal","italic","oblique"]});var YY=ye((Z1r,BNt)=>{BNt.exports=["normal","condensed","semi-condensed","extra-condensed","ultra-condensed","expanded","semi-expanded","extra-expanded","ultra-expanded"]});var Sqe=ye((Y1r,Aqe)=>{"use strict";function wqe(e,t){if(typeof e!="string")return[e];var r=[e];typeof t=="string"||Array.isArray(t)?t={brackets:t}:t||(t={});var n=t.brackets?Array.isArray(t.brackets)?t.brackets:[t.brackets]:["{}","[]","()"],i=t.escape||"___",a=!!t.flat;n.forEach(function(l){var u=new RegExp(["\\",l[0],"[^\\",l[0],"\\",l[1],"]*\\",l[1]].join("")),c=[];function f(h,d,v){var _=r.push(h.slice(l[0].length,-l[1].length))-1;return c.push(_),i+_+i}r.forEach(function(h,d){for(var v,_=0;h!=v;)if(v=h,h=h.replace(u,f),_++>1e4)throw Error("References have circular dependency. Please, check them.");r[d]=h}),c=c.reverse(),r=r.map(function(h){return c.forEach(function(d){h=h.replace(new RegExp("(\\"+i+d+"\\"+i+")","g"),l[0]+"$1"+l[1])}),h})});var o=new RegExp("\\"+i+"([0-9]+)\\"+i);function s(l,u,c){for(var f=[],h,d=0;h=o.exec(l);){if(d++>1e4)throw Error("Circular references in parenthesis");f.push(l.slice(0,h.index)),f.push(s(u[h[1]],u)),l=l.slice(h.index+h[0].length)}return f.push(l),f}return a?r:s(r[0],r)}function Tqe(e,t){if(t&&t.flat){var r=t&&t.escape||"___",n=e[0],i;if(!n)return"";for(var a=new RegExp("\\"+r+"([0-9]+)\\"+r),o=0;n!=i;){if(o++>1e4)throw Error("Circular references in "+e);i=n,n=n.replace(a,s)}return n}return e.reduce(function l(u,c){return Array.isArray(c)&&(c=c.reduce(l,"")),u+c},"");function s(l,u){if(e[u]==null)throw Error("Reference "+u+"is undefined");return e[u]}}function KY(e,t){return Array.isArray(e)?Tqe(e,t):wqe(e,t)}KY.parse=wqe;KY.stringify=Tqe;Aqe.exports=KY});var kqe=ye((K1r,Eqe)=>{"use strict";var Mqe=Sqe();Eqe.exports=function(t,r,n){if(t==null)throw Error("First argument should be a string");if(r==null)throw Error("Separator should be a string or a RegExp");n?(typeof n=="string"||Array.isArray(n))&&(n={ignore:n}):n={},n.escape==null&&(n.escape=!0),n.ignore==null?n.ignore=["[]","()","{}","<>",'""',"''","``","\u201C\u201D","\xAB\xBB"]:(typeof n.ignore=="string"&&(n.ignore=[n.ignore]),n.ignore=n.ignore.map(function(f){return f.length===1&&(f=f+f),f}));var i=Mqe.parse(t,{flat:!0,brackets:n.ignore}),a=i[0],o=a.split(r);if(n.escape){for(var s=[],l=0;l<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]=Mqe.stringify(i,{flat:!0});return o}});var Cqe=ye((J1r,NNt)=>{NNt.exports=["xx-small","x-small","small","medium","large","x-large","xx-large","larger","smaller"]});var JY=ye(($1r,Lqe)=>{"use strict";var UNt=Cqe();Lqe.exports={isSize:function(t){return/^[\d\.]/.test(t)||t.indexOf("/")!==-1||UNt.indexOf(t)!==-1}}});var Dqe=ye((Q1r,Rqe)=>{"use strict";var VNt=bqe(),GNt=jY(),HNt=WY(),jNt=XY(),WNt=ZY(),XNt=YY(),$Y=kqe(),ZNt=JY().isSize;Rqe.exports=Iqe;var Tk=Iqe.cache={};function Iqe(e){if(typeof e!="string")throw new Error("Font argument must be a string.");if(Tk[e])return Tk[e];if(e==="")throw new Error("Cannot parse an empty string.");if(HNt.indexOf(e)!==-1)return Tk[e]={system:e};for(var t={style:"normal",variant:"normal",weight:"normal",stretch:"normal",lineHeight:"normal",size:"1rem",family:["serif"]},r=$Y(e,/\s+/),n;n=r.shift();){if(GNt.indexOf(n)!==-1)return["style","variant","weight","stretch"].forEach(function(a){t[a]=n}),Tk[e]=t;if(WNt.indexOf(n)!==-1){t.style=n;continue}if(n==="normal"||n==="small-caps"){t.variant=n;continue}if(XNt.indexOf(n)!==-1){t.stretch=n;continue}if(jNt.indexOf(n)!==-1){t.weight=n;continue}if(ZNt(n)){var i=$Y(n,"/");if(t.size=i[0],i[1]!=null?t.lineHeight=Pqe(i[1]):r[0]==="/"&&(r.shift(),t.lineHeight=Pqe(r.shift())),!r.length)throw new Error("Missing required font-family.");return t.family=$Y(r.join(" "),/\s*,\s*/).map(VNt),Tk[e]=t}throw new Error("Unknown or unsupported font token: "+n)}throw new Error("Missing required font-size.")}function Pqe(e){var t=parseFloat(e);return t.toString()===e?t:e}});var eK=ye((e_r,Fqe)=>{"use strict";var YNt=Zm(),KNt=JY().isSize,JNt=Sk(jY()),$Nt=Sk(WY()),QNt=Sk(XY()),eUt=Sk(ZY()),tUt=Sk(YY()),rUt={normal:1,"small-caps":1},iUt={serif:1,"sans-serif":1,monospace:1,cursive:1,fantasy:1,"system-ui":1},QY={style:"normal",variant:"normal",weight:"normal",stretch:"normal",size:"1rem",lineHeight:"normal",family:"serif"};Fqe.exports=function(t){if(t=YNt(t,{style:"style fontstyle fontStyle font-style slope distinction",variant:"variant font-variant fontVariant fontvariant var capitalization",weight:"weight w font-weight fontWeight fontweight",stretch:"stretch font-stretch fontStretch fontstretch width",size:"size s font-size fontSize fontsize height em emSize",lineHeight:"lh line-height lineHeight lineheight leading",family:"font family fontFamily font-family fontfamily type typeface face",system:"system reserved default global"}),t.system)return t.system&&Ak(t.system,$Nt),t.system;if(Ak(t.style,eUt),Ak(t.variant,rUt),Ak(t.weight,QNt),Ak(t.stretch,tUt),t.size==null&&(t.size=QY.size),typeof t.size=="number"&&(t.size+="px"),!KNt)throw Error("Bad size value `"+t.size+"`");t.family||(t.family=QY.family),Array.isArray(t.family)&&(t.family.length||(t.family=[QY.family]),t.family=t.family.map(function(n){return iUt[n]?n:'"'+n+'"'}).join(", "));var r=[];return r.push(t.style),t.variant!==t.style&&r.push(t.variant),t.weight!==t.variant&&t.weight!==t.style&&r.push(t.weight),t.stretch!==t.weight&&t.stretch!==t.variant&&t.stretch!==t.style&&r.push(t.stretch),r.push(t.size+(t.lineHeight==null||t.lineHeight==="normal"||t.lineHeight+""=="1"?"":"/"+t.lineHeight)),r.push(t.family),r.filter(Boolean).join(" ")};function Ak(e,t){if(e&&!t[e]&&!JNt[e])throw Error("Unknown keyword `"+e+"`");return e}function Sk(e){for(var t={},r=0;r<e.length;r++)t[e[r]]=1;return t}});var Oqe=ye((t_r,zqe)=>{"use strict";zqe.exports={parse:Dqe(),stringify:eK()}});var qqe=ye((tK,rK)=>{(function(e,t){typeof tK=="object"&&typeof rK!="undefined"?rK.exports=t():e.createREGL=t()})(tK,function(){"use strict";var e=function(Me,bt){for(var zt=Object.keys(bt),Rr=0;Rr<zt.length;++Rr)Me[zt[Rr]]=bt[zt[Rr]];return Me},t=0,r=0,n=5,i=6;function a(Me,bt){this.id=t++,this.type=Me,this.data=bt}function o(Me){return Me.replace(/\\/g,"\\\\").replace(/"/g,'\\"')}function s(Me){if(Me.length===0)return[];var bt=Me.charAt(0),zt=Me.charAt(Me.length-1);if(Me.length>1&&bt===zt&&(bt==='"'||bt==="'"))return['"'+o(Me.substr(1,Me.length-2))+'"'];var Rr=/\[(false|true|null|\d+|'[^']*'|"[^"]*")\]/.exec(Me);if(Rr)return s(Me.substr(0,Rr.index)).concat(s(Rr[1])).concat(s(Me.substr(Rr.index+Rr[0].length)));var jr=Me.split(".");if(jr.length===1)return['"'+o(Me)+'"'];for(var Nr=[],Gr=0;Gr<jr.length;++Gr)Nr=Nr.concat(s(jr[Gr]));return Nr}function l(Me){return"["+s(Me).join("][")+"]"}function u(Me,bt){return new a(Me,l(bt+""))}function c(Me){return typeof Me=="function"&&!Me._reglType||Me instanceof a}function f(Me,bt){if(typeof Me=="function")return new a(r,Me);if(typeof Me=="number"||typeof Me=="boolean")return new a(n,Me);if(Array.isArray(Me))return new a(i,Me.map(function(zt,Rr){return f(zt,bt+"["+Rr+"]")}));if(Me instanceof a)return Me}var h={DynamicVariable:a,define:u,isDynamic:c,unbox:f,accessor:l},d={next:typeof requestAnimationFrame=="function"?function(Me){return requestAnimationFrame(Me)}:function(Me){return setTimeout(Me,16)},cancel:typeof cancelAnimationFrame=="function"?function(Me){return cancelAnimationFrame(Me)}:clearTimeout},v=typeof performance!="undefined"&&performance.now?function(){return performance.now()}:function(){return+new Date};function _(){var Me={"":0},bt=[""];return{id:function(zt){var Rr=Me[zt];return Rr||(Rr=Me[zt]=bt.length,bt.push(zt),Rr)},str:function(zt){return bt[zt]}}}function b(Me,bt,zt){var Rr=document.createElement("canvas");e(Rr.style,{border:0,margin:0,padding:0,top:0,left:0,width:"100%",height:"100%"}),Me.appendChild(Rr),Me===document.body&&(Rr.style.position="absolute",e(Me.style,{margin:0,padding:0}));function jr(){var mi=window.innerWidth,Ui=window.innerHeight;if(Me!==document.body){var qi=Rr.getBoundingClientRect();mi=qi.right-qi.left,Ui=qi.bottom-qi.top}Rr.width=zt*mi,Rr.height=zt*Ui}var Nr;Me!==document.body&&typeof ResizeObserver=="function"?(Nr=new ResizeObserver(function(){setTimeout(jr)}),Nr.observe(Me)):window.addEventListener("resize",jr,!1);function Gr(){Nr?Nr.disconnect():window.removeEventListener("resize",jr),Me.removeChild(Rr)}return jr(),{canvas:Rr,onDestroy:Gr}}function p(Me,bt){function zt(Rr){try{return Me.getContext(Rr,bt)}catch(jr){return null}}return zt("webgl")||zt("experimental-webgl")||zt("webgl-experimental")}function k(Me){return typeof Me.nodeName=="string"&&typeof Me.appendChild=="function"&&typeof Me.getBoundingClientRect=="function"}function E(Me){return typeof Me.drawArrays=="function"||typeof Me.drawElements=="function"}function S(Me){return typeof Me=="string"?Me.split():Me}function L(Me){return typeof Me=="string"?document.querySelector(Me):Me}function x(Me){var bt=Me||{},zt,Rr,jr,Nr,Gr={},mi=[],Ui=[],qi=typeof window=="undefined"?1:window.devicePixelRatio,Ei=!1,Hn={},en=function(Mr){},Wi=function(){};if(typeof bt=="string"?zt=document.querySelector(bt):typeof bt=="object"&&(k(bt)?zt=bt:E(bt)?(Nr=bt,jr=Nr.canvas):("gl"in bt?Nr=bt.gl:"canvas"in bt?jr=L(bt.canvas):"container"in bt&&(Rr=L(bt.container)),"attributes"in bt&&(Gr=bt.attributes),"extensions"in bt&&(mi=S(bt.extensions)),"optionalExtensions"in bt&&(Ui=S(bt.optionalExtensions)),"onDone"in bt&&(en=bt.onDone),"profile"in bt&&(Ei=!!bt.profile),"pixelRatio"in bt&&(qi=+bt.pixelRatio),"cachedCode"in bt&&(Hn=bt.cachedCode))),zt&&(zt.nodeName.toLowerCase()==="canvas"?jr=zt:Rr=zt),!Nr){if(!jr){var si=b(Rr||document.body,en,qi);if(!si)return null;jr=si.canvas,Wi=si.onDestroy}Gr.premultipliedAlpha===void 0&&(Gr.premultipliedAlpha=!0),Nr=p(jr,Gr)}return Nr?{gl:Nr,canvas:jr,container:Rr,extensions:mi,optionalExtensions:Ui,pixelRatio:qi,profile:Ei,cachedCode:Hn,onDone:en,onDestroy:Wi}:(Wi(),en("webgl not supported, try upgrading your browser or graphics drivers http://get.webgl.org"),null)}function C(Me,bt){var zt={};function Rr(Gr){var mi=Gr.toLowerCase(),Ui;try{Ui=zt[mi]=Me.getExtension(mi)}catch(qi){}return!!Ui}for(var jr=0;jr<bt.extensions.length;++jr){var Nr=bt.extensions[jr];if(!Rr(Nr))return bt.onDestroy(),bt.onDone('"'+Nr+'" extension is not supported by the current WebGL context, try upgrading your system or a different browser'),null}return bt.optionalExtensions.forEach(Rr),{extensions:zt,restore:function(){Object.keys(zt).forEach(function(Gr){if(zt[Gr]&&!Rr(Gr))throw new Error("(regl): error restoring extension "+Gr)})}}}function M(Me,bt){for(var zt=Array(Me),Rr=0;Rr<Me;++Rr)zt[Rr]=bt(Rr);return zt}var g=5120,P=5121,T=5122,z=5123,O=5124,V=5125,G=5126;function Z(Me){for(var bt=16;bt<=1<<28;bt*=16)if(Me<=bt)return bt;return 0}function j(Me){var bt,zt;return bt=(Me>65535)<<4,Me>>>=bt,zt=(Me>255)<<3,Me>>>=zt,bt|=zt,zt=(Me>15)<<2,Me>>>=zt,bt|=zt,zt=(Me>3)<<1,Me>>>=zt,bt|=zt,bt|Me>>1}function N(){var Me=M(8,function(){return[]});function bt(Nr){var Gr=Z(Nr),mi=Me[j(Gr)>>2];return mi.length>0?mi.pop():new ArrayBuffer(Gr)}function zt(Nr){Me[j(Nr.byteLength)>>2].push(Nr)}function Rr(Nr,Gr){var mi=null;switch(Nr){case g:mi=new Int8Array(bt(Gr),0,Gr);break;case P:mi=new Uint8Array(bt(Gr),0,Gr);break;case T:mi=new Int16Array(bt(2*Gr),0,Gr);break;case z:mi=new Uint16Array(bt(2*Gr),0,Gr);break;case O:mi=new Int32Array(bt(4*Gr),0,Gr);break;case V:mi=new Uint32Array(bt(4*Gr),0,Gr);break;case G:mi=new Float32Array(bt(4*Gr),0,Gr);break;default:return null}return mi.length!==Gr?mi.subarray(0,Gr):mi}function jr(Nr){zt(Nr.buffer)}return{alloc:bt,free:zt,allocType:Rr,freeType:jr}}var H=N();H.zero=N();var te=3408,oe=3410,_e=3411,Ee=3412,Ce=3413,me=3414,ie=3415,Se=33901,Le=33902,Ae=3379,Fe=3386,Pe=34921,ge=36347,Re=36348,ce=35661,Ze=35660,ut=34930,pt=36349,Zt=34076,st=34024,lt=7936,Gt=7937,Nt=7938,Jt=35724,sr=34047,wr=36063,cr=34852,$e=3553,St=34067,Qt=34069,Vt=33984,_t=6408,It=5126,mt=5121,er=36160,lr=36053,Tr=36064,Lr=16384,ti=function(Me,bt){var zt=1;bt.ext_texture_filter_anisotropic&&(zt=Me.getParameter(sr));var Rr=1,jr=1;bt.webgl_draw_buffers&&(Rr=Me.getParameter(cr),jr=Me.getParameter(wr));var Nr=!!bt.oes_texture_float;if(Nr){var Gr=Me.createTexture();Me.bindTexture($e,Gr),Me.texImage2D($e,0,_t,1,1,0,_t,It,null);var mi=Me.createFramebuffer();if(Me.bindFramebuffer(er,mi),Me.framebufferTexture2D(er,Tr,$e,Gr,0),Me.bindTexture($e,null),Me.checkFramebufferStatus(er)!==lr)Nr=!1;else{Me.viewport(0,0,1,1),Me.clearColor(1,0,0,1),Me.clear(Lr);var Ui=H.allocType(It,4);Me.readPixels(0,0,1,1,_t,It,Ui),Me.getError()?Nr=!1:(Me.deleteFramebuffer(mi),Me.deleteTexture(Gr),Nr=Ui[0]===1),H.freeType(Ui)}}var qi=typeof navigator!="undefined"&&(/MSIE/.test(navigator.userAgent)||/Trident\//.test(navigator.appVersion)||/Edge/.test(navigator.userAgent)),Ei=!0;if(!qi){var Hn=Me.createTexture(),en=H.allocType(mt,36);Me.activeTexture(Vt),Me.bindTexture(St,Hn),Me.texImage2D(Qt,0,_t,3,3,0,_t,mt,en),H.freeType(en),Me.bindTexture(St,null),Me.deleteTexture(Hn),Ei=!Me.getError()}return{colorBits:[Me.getParameter(oe),Me.getParameter(_e),Me.getParameter(Ee),Me.getParameter(Ce)],depthBits:Me.getParameter(me),stencilBits:Me.getParameter(ie),subpixelBits:Me.getParameter(te),extensions:Object.keys(bt).filter(function(Wi){return!!bt[Wi]}),maxAnisotropic:zt,maxDrawbuffers:Rr,maxColorAttachments:jr,pointSizeDims:Me.getParameter(Se),lineWidthDims:Me.getParameter(Le),maxViewportDims:Me.getParameter(Fe),maxCombinedTextureUnits:Me.getParameter(ce),maxCubeMapSize:Me.getParameter(Zt),maxRenderbufferSize:Me.getParameter(st),maxTextureUnits:Me.getParameter(ut),maxTextureSize:Me.getParameter(Ae),maxAttributes:Me.getParameter(Pe),maxVertexUniforms:Me.getParameter(ge),maxVertexTextureUnits:Me.getParameter(Ze),maxVaryingVectors:Me.getParameter(Re),maxFragmentUniforms:Me.getParameter(pt),glsl:Me.getParameter(Jt),renderer:Me.getParameter(Gt),vendor:Me.getParameter(lt),version:Me.getParameter(Nt),readFloat:Nr,npotTextureCube:Ei}},Br=function(Me){return Me instanceof Uint8Array||Me instanceof Uint16Array||Me instanceof Uint32Array||Me instanceof Int8Array||Me instanceof Int16Array||Me instanceof Int32Array||Me instanceof Float32Array||Me instanceof Float64Array||Me instanceof Uint8ClampedArray};function Vr(Me){return!!Me&&typeof Me=="object"&&Array.isArray(Me.shape)&&Array.isArray(Me.stride)&&typeof Me.offset=="number"&&Me.shape.length===Me.stride.length&&(Array.isArray(Me.data)||Br(Me.data))}var dt=function(Me){return Object.keys(Me).map(function(bt){return Me[bt]})},Ge={shape:xe,flatten:Ie};function Je(Me,bt,zt){for(var Rr=0;Rr<bt;++Rr)zt[Rr]=Me[Rr]}function je(Me,bt,zt,Rr){for(var jr=0,Nr=0;Nr<bt;++Nr)for(var Gr=Me[Nr],mi=0;mi<zt;++mi)Rr[jr++]=Gr[mi]}function tt(Me,bt,zt,Rr,jr,Nr){for(var Gr=Nr,mi=0;mi<bt;++mi)for(var Ui=Me[mi],qi=0;qi<zt;++qi)for(var Ei=Ui[qi],Hn=0;Hn<Rr;++Hn)jr[Gr++]=Ei[Hn]}function xt(Me,bt,zt,Rr,jr){for(var Nr=1,Gr=zt+1;Gr<bt.length;++Gr)Nr*=bt[Gr];var mi=bt[zt];if(bt.length-zt===4){var Ui=bt[zt+1],qi=bt[zt+2],Ei=bt[zt+3];for(Gr=0;Gr<mi;++Gr)tt(Me[Gr],Ui,qi,Ei,Rr,jr),jr+=Nr}else for(Gr=0;Gr<mi;++Gr)xt(Me[Gr],bt,zt+1,Rr,jr),jr+=Nr}function Ie(Me,bt,zt,Rr){var jr=1;if(bt.length)for(var Nr=0;Nr<bt.length;++Nr)jr*=bt[Nr];else jr=0;var Gr=Rr||H.allocType(zt,jr);switch(bt.length){case 0:break;case 1:Je(Me,bt[0],Gr);break;case 2:je(Me,bt[0],bt[1],Gr);break;case 3:tt(Me,bt[0],bt[1],bt[2],Gr,0);break;default:xt(Me,bt,0,Gr,0)}return Gr}function xe(Me){for(var bt=[],zt=Me;zt.length;zt=zt[0])bt.push(zt.length);return bt}var ke={"[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,ir=5122,ar=5124,vr=5121,ii=5123,pi=5125,$r=5126,di=5126,ji={int8:vt,int16:ir,int32:ar,uint8:vr,uint16:ii,uint32:pi,float:$r,float32:di},In=35048,wi=35040,On={dynamic:In,stream:wi,static:35044},qn=Ge.flatten,Fn=Ge.shape,ra=35044,la=35040,Ut=5121,wt=5126,rr=[];rr[5120]=1,rr[5122]=2,rr[5124]=4,rr[5121]=1,rr[5123]=2,rr[5125]=4,rr[5126]=4;function nr(Me){return ke[Object.prototype.toString.call(Me)]|0}function Er(Me,bt){for(var zt=0;zt<bt.length;++zt)Me[zt]=bt[zt]}function Xr(Me,bt,zt,Rr,jr,Nr,Gr){for(var mi=0,Ui=0;Ui<zt;++Ui)for(var qi=0;qi<Rr;++qi)Me[mi++]=bt[jr*Ui+Nr*qi+Gr]}function ri(Me,bt,zt,Rr){var jr=0,Nr={};function Gr(Mr){this.id=jr++,this.buffer=Me.createBuffer(),this.type=Mr,this.usage=ra,this.byteLength=0,this.dimension=1,this.dtype=Ut,this.persistentData=null,zt.profile&&(this.stats={size:0})}Gr.prototype.bind=function(){Me.bindBuffer(this.type,this.buffer)},Gr.prototype.destroy=function(){en(this)};var mi=[];function Ui(Mr,Yr){var xi=mi.pop();return xi||(xi=new Gr(Mr)),xi.bind(),Hn(xi,Yr,la,0,1,!1),xi}function qi(Mr){mi.push(Mr)}function Ei(Mr,Yr,xi){Mr.byteLength=Yr.byteLength,Me.bufferData(Mr.type,Yr,xi)}function Hn(Mr,Yr,xi,Ri,ci,an){var Zi;if(Mr.usage=xi,Array.isArray(Yr)){if(Mr.dtype=Ri||wt,Yr.length>0){var Bn;if(Array.isArray(Yr[0])){Zi=Fn(Yr);for(var hi=1,li=1;li<Zi.length;++li)hi*=Zi[li];Mr.dimension=hi,Bn=qn(Yr,Zi,Mr.dtype),Ei(Mr,Bn,xi),an?Mr.persistentData=Bn:H.freeType(Bn)}else if(typeof Yr[0]=="number"){Mr.dimension=ci;var mn=H.allocType(Mr.dtype,Yr.length);Er(mn,Yr),Ei(Mr,mn,xi),an?Mr.persistentData=mn:H.freeType(mn)}else Br(Yr[0])&&(Mr.dimension=Yr[0].length,Mr.dtype=Ri||nr(Yr[0])||wt,Bn=qn(Yr,[Yr.length,Yr[0].length],Mr.dtype),Ei(Mr,Bn,xi),an?Mr.persistentData=Bn:H.freeType(Bn))}}else if(Br(Yr))Mr.dtype=Ri||nr(Yr),Mr.dimension=ci,Ei(Mr,Yr,xi),an&&(Mr.persistentData=new Uint8Array(new Uint8Array(Yr.buffer)));else if(Vr(Yr)){Zi=Yr.shape;var Ji=Yr.stride,Vi=Yr.offset,Ni=0,pn=0,Vn=0,na=0;Zi.length===1?(Ni=Zi[0],pn=1,Vn=Ji[0],na=0):Zi.length===2&&(Ni=Zi[0],pn=Zi[1],Vn=Ji[0],na=Ji[1]),Mr.dtype=Ri||nr(Yr.data)||wt,Mr.dimension=pn;var Ki=H.allocType(Mr.dtype,Ni*pn);Xr(Ki,Yr.data,Ni,pn,Vn,na,Vi),Ei(Mr,Ki,xi),an?Mr.persistentData=Ki:H.freeType(Ki)}else Yr instanceof ArrayBuffer&&(Mr.dtype=Ut,Mr.dimension=ci,Ei(Mr,Yr,xi),an&&(Mr.persistentData=new Uint8Array(new Uint8Array(Yr))))}function en(Mr){bt.bufferCount--,Rr(Mr);var Yr=Mr.buffer;Me.deleteBuffer(Yr),Mr.buffer=null,delete Nr[Mr.id]}function Wi(Mr,Yr,xi,Ri){bt.bufferCount++;var ci=new Gr(Yr);Nr[ci.id]=ci;function an(hi){var li=ra,mn=null,Ji=0,Vi=0,Ni=1;return Array.isArray(hi)||Br(hi)||Vr(hi)||hi instanceof ArrayBuffer?mn=hi:typeof hi=="number"?Ji=hi|0:hi&&("data"in hi&&(mn=hi.data),"usage"in hi&&(li=On[hi.usage]),"type"in hi&&(Vi=ji[hi.type]),"dimension"in hi&&(Ni=hi.dimension|0),"length"in hi&&(Ji=hi.length|0)),ci.bind(),mn?Hn(ci,mn,li,Vi,Ni,Ri):(Ji&&Me.bufferData(ci.type,Ji,li),ci.dtype=Vi||Ut,ci.usage=li,ci.dimension=Ni,ci.byteLength=Ji),zt.profile&&(ci.stats.size=ci.byteLength*rr[ci.dtype]),an}function Zi(hi,li){Me.bufferSubData(ci.type,li,hi)}function Bn(hi,li){var mn=(li||0)|0,Ji;if(ci.bind(),Br(hi)||hi instanceof ArrayBuffer)Zi(hi,mn);else if(Array.isArray(hi)){if(hi.length>0){if(typeof hi[0]=="number"){var Vi=H.allocType(ci.dtype,hi.length);Er(Vi,hi),Zi(Vi,mn),H.freeType(Vi)}else if(Array.isArray(hi[0])||Br(hi[0])){Ji=Fn(hi);var Ni=qn(hi,Ji,ci.dtype);Zi(Ni,mn),H.freeType(Ni)}}}else if(Vr(hi)){Ji=hi.shape;var pn=hi.stride,Vn=0,na=0,Ki=0,kn=0;Ji.length===1?(Vn=Ji[0],na=1,Ki=pn[0],kn=0):Ji.length===2&&(Vn=Ji[0],na=Ji[1],Ki=pn[0],kn=pn[1]);var ta=Array.isArray(hi.data)?ci.dtype:nr(hi.data),oa=H.allocType(ta,Vn*na);Xr(oa,hi.data,Vn,na,Ki,kn,hi.offset),Zi(oa,mn),H.freeType(oa)}return an}return xi||an(Mr),an._reglType="buffer",an._buffer=ci,an.subdata=Bn,zt.profile&&(an.stats=ci.stats),an.destroy=function(){en(ci)},an}function si(){dt(Nr).forEach(function(Mr){Mr.buffer=Me.createBuffer(),Me.bindBuffer(Mr.type,Mr.buffer),Me.bufferData(Mr.type,Mr.persistentData||Mr.byteLength,Mr.usage)})}return zt.profile&&(bt.getTotalBufferSize=function(){var Mr=0;return Object.keys(Nr).forEach(function(Yr){Mr+=Nr[Yr].stats.size}),Mr}),{create:Wi,createStream:Ui,destroyStream:qi,clear:function(){dt(Nr).forEach(en),mi.forEach(en)},getBuffer:function(Mr){return Mr&&Mr._buffer instanceof Gr?Mr._buffer:null},restore:si,_initBuffer:Hn}}var Qr=0,Oi=0,$i=1,tn=1,fn=4,yn=4,Sn={points:Qr,point:Oi,lines:$i,line:tn,triangles:fn,triangle:yn,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6},Ba=0,ua=1,ma=4,Wa=5120,Fa=5121,Wo=5122,da=5123,Wn=5124,Ha=5125,vo=34963,jn=35040,Mt=35044;function kr(Me,bt,zt,Rr){var jr={},Nr=0,Gr={uint8:Fa,uint16:da};bt.oes_element_index_uint&&(Gr.uint32=Ha);function mi(si){this.id=Nr++,jr[this.id]=this,this.buffer=si,this.primType=ma,this.vertCount=0,this.type=0}mi.prototype.bind=function(){this.buffer.bind()};var Ui=[];function qi(si){var Mr=Ui.pop();return Mr||(Mr=new mi(zt.create(null,vo,!0,!1)._buffer)),Hn(Mr,si,jn,-1,-1,0,0),Mr}function Ei(si){Ui.push(si)}function Hn(si,Mr,Yr,xi,Ri,ci,an){si.buffer.bind();var Zi;if(Mr){var Bn=an;!an&&(!Br(Mr)||Vr(Mr)&&!Br(Mr.data))&&(Bn=bt.oes_element_index_uint?Ha:da),zt._initBuffer(si.buffer,Mr,Yr,Bn,3)}else Me.bufferData(vo,ci,Yr),si.buffer.dtype=Zi||Fa,si.buffer.usage=Yr,si.buffer.dimension=3,si.buffer.byteLength=ci;if(Zi=an,!an){switch(si.buffer.dtype){case Fa:case Wa:Zi=Fa;break;case da:case Wo:Zi=da;break;case Ha:case Wn:Zi=Ha;break;default:}si.buffer.dtype=Zi}si.type=Zi;var hi=Ri;hi<0&&(hi=si.buffer.byteLength,Zi===da?hi>>=1:Zi===Ha&&(hi>>=2)),si.vertCount=hi;var li=xi;if(xi<0){li=ma;var mn=si.buffer.dimension;mn===1&&(li=Ba),mn===2&&(li=ua),mn===3&&(li=ma)}si.primType=li}function en(si){Rr.elementsCount--,delete jr[si.id],si.buffer.destroy(),si.buffer=null}function Wi(si,Mr){var Yr=zt.create(null,vo,!0),xi=new mi(Yr._buffer);Rr.elementsCount++;function Ri(ci){if(!ci)Yr(),xi.primType=ma,xi.vertCount=0,xi.type=Fa;else if(typeof ci=="number")Yr(ci),xi.primType=ma,xi.vertCount=ci|0,xi.type=Fa;else{var an=null,Zi=Mt,Bn=-1,hi=-1,li=0,mn=0;Array.isArray(ci)||Br(ci)||Vr(ci)?an=ci:("data"in ci&&(an=ci.data),"usage"in ci&&(Zi=On[ci.usage]),"primitive"in ci&&(Bn=Sn[ci.primitive]),"count"in ci&&(hi=ci.count|0),"type"in ci&&(mn=Gr[ci.type]),"length"in ci?li=ci.length|0:(li=hi,mn===da||mn===Wo?li*=2:(mn===Ha||mn===Wn)&&(li*=4))),Hn(xi,an,Zi,Bn,hi,li,mn)}return Ri}return Ri(si),Ri._reglType="elements",Ri._elements=xi,Ri.subdata=function(ci,an){return Yr.subdata(ci,an),Ri},Ri.destroy=function(){en(xi)},Ri}return{create:Wi,createStream:qi,destroyStream:Ei,getElements:function(si){return typeof si=="function"&&si._elements instanceof mi?si._elements:null},clear:function(){dt(jr).forEach(en)}}}var Jr=new Float32Array(1),vi=new Uint32Array(Jr.buffer),hn=5123;function An(Me){for(var bt=H.allocType(hn,Me.length),zt=0;zt<Me.length;++zt)if(isNaN(Me[zt]))bt[zt]=65535;else if(Me[zt]===1/0)bt[zt]=31744;else if(Me[zt]===-1/0)bt[zt]=64512;else{Jr[0]=Me[zt];var Rr=vi[0],jr=Rr>>>31<<15,Nr=(Rr<<1>>>24)-127,Gr=Rr>>13&1023;if(Nr<-24)bt[zt]=jr;else if(Nr<-14){var mi=-14-Nr;bt[zt]=jr+(Gr+1024>>mi)}else Nr>15?bt[zt]=jr+31744:bt[zt]=jr+(Nr+15<<10)+Gr}return bt}function Mn(Me){return Array.isArray(Me)||Br(Me)}var Li=34467,_n=3553,ya=34067,Jn=34069,Ma=6408,_o=6406,No=6407,po=6409,Lo=6410,ko=32854,Ds=32855,Fs=36194,ll=32819,ul=32820,zl=33635,us=34042,il=6402,As=34041,cl=35904,Ks=35906,zs=36193,Io=33776,ls=33777,Zl=33778,Su=33779,nc=35986,bs=35987,Rn=34798,_a=35840,Vu=35841,Ol=35842,xo=35843,Yl=36196,Ns=5121,Hl=5123,ac=5125,aa=5126,Oo=10242,qo=10243,ql=10497,Pc=33071,Do=33648,rf=10240,Uf=10241,pl=9728,Zc=9729,Kl=9984,Os=9985,yu=9986,oc=9987,Cf=33170,sc=4352,Vh=4353,Lf=4354,cs=34046,nf=3317,Vf=37440,Jl=37441,fl=37443,lc=37444,Fu=33984,Es=[Kl,yu,Os,oc],Hs=[0,po,Lo,No,Ma],Go={};Go[po]=Go[_o]=Go[il]=1,Go[As]=Go[Lo]=2,Go[No]=Go[cl]=3,Go[Ma]=Go[Ks]=4;function ps(Me){return"[object "+Me+"]"}var uc=ps("HTMLCanvasElement"),xl=ps("OffscreenCanvas"),Gu=ps("CanvasRenderingContext2D"),qs=ps("ImageBitmap"),ad=ps("HTMLImageElement"),Po=ps("HTMLVideoElement"),od=Object.keys(ke).concat([uc,xl,Gu,qs,ad,Po]),Yo=[];Yo[Ns]=1,Yo[aa]=4,Yo[zs]=2,Yo[Hl]=2,Yo[ac]=4;var Pa=[];Pa[ko]=2,Pa[Ds]=2,Pa[Fs]=2,Pa[As]=4,Pa[Io]=.5,Pa[ls]=.5,Pa[Zl]=1,Pa[Su]=1,Pa[nc]=.5,Pa[bs]=1,Pa[Rn]=1,Pa[_a]=.5,Pa[Vu]=.25,Pa[Ol]=.5,Pa[xo]=.25,Pa[Yl]=.5;function af(Me){return Array.isArray(Me)&&(Me.length===0||typeof Me[0]=="number")}function Hu(Me){if(!Array.isArray(Me))return!1;var bt=Me.length;return!(bt===0||!Mn(Me[0]))}function bl(Me){return Object.prototype.toString.call(Me)}function Gf(Me){return bl(Me)===uc}function Ic(Me){return bl(Me)===xl}function yf(Me){return bl(Me)===Gu}function Bl(Me){return bl(Me)===qs}function wh(Me){return bl(Me)===ad}function Qf(Me){return bl(Me)===Po}function _f(Me){if(!Me)return!1;var bt=bl(Me);return od.indexOf(bt)>=0?!0:af(Me)||Hu(Me)||Vr(Me)}function Yc(Me){return ke[Object.prototype.toString.call(Me)]|0}function eh(Me,bt){var zt=bt.length;switch(Me.type){case Ns:case Hl:case ac:case aa:var Rr=H.allocType(Me.type,zt);Rr.set(bt),Me.data=Rr;break;case zs:Me.data=An(bt);break;default:}}function th(Me,bt){return H.allocType(Me.type===zs?aa:Me.type,bt)}function ju(Me,bt){Me.type===zs?(Me.data=An(bt),H.freeType(bt)):Me.data=bt}function Hf(Me,bt,zt,Rr,jr,Nr){for(var Gr=Me.width,mi=Me.height,Ui=Me.channels,qi=Gr*mi*Ui,Ei=th(Me,qi),Hn=0,en=0;en<mi;++en)for(var Wi=0;Wi<Gr;++Wi)for(var si=0;si<Ui;++si)Ei[Hn++]=bt[zt*Wi+Rr*en+jr*si+Nr];ju(Me,Ei)}function cc(Me,bt,zt,Rr,jr,Nr){var Gr;if(typeof Pa[Me]!="undefined"?Gr=Pa[Me]:Gr=Go[Me]*Yo[bt],Nr&&(Gr*=6),jr){for(var mi=0,Ui=zt;Ui>=1;)mi+=Gr*Ui*Ui,Ui/=2;return mi}else return Gr*zt*Rr}function of(Me,bt,zt,Rr,jr,Nr,Gr){var mi={"don't care":sc,"dont care":sc,nice:Lf,fast:Vh},Ui={repeat:ql,clamp:Pc,mirror:Do},qi={nearest:pl,linear:Zc},Ei=e({mipmap:oc,"nearest mipmap nearest":Kl,"linear mipmap nearest":Os,"nearest mipmap linear":yu,"linear mipmap linear":oc},qi),Hn={none:0,browser:lc},en={uint8:Ns,rgba4:ll,rgb565:zl,"rgb5 a1":ul},Wi={alpha:_o,luminance:po,"luminance alpha":Lo,rgb:No,rgba:Ma,rgba4:ko,"rgb5 a1":Ds,rgb565:Fs},si={};bt.ext_srgb&&(Wi.srgb=cl,Wi.srgba=Ks),bt.oes_texture_float&&(en.float32=en.float=aa),bt.oes_texture_half_float&&(en.float16=en["half float"]=zs),bt.webgl_depth_texture&&(e(Wi,{depth:il,"depth stencil":As}),e(en,{uint16:Hl,uint32:ac,"depth stencil":us})),bt.webgl_compressed_texture_s3tc&&e(si,{"rgb s3tc dxt1":Io,"rgba s3tc dxt1":ls,"rgba s3tc dxt3":Zl,"rgba s3tc dxt5":Su}),bt.webgl_compressed_texture_atc&&e(si,{"rgb atc":nc,"rgba atc explicit alpha":bs,"rgba atc interpolated alpha":Rn}),bt.webgl_compressed_texture_pvrtc&&e(si,{"rgb pvrtc 4bppv1":_a,"rgb pvrtc 2bppv1":Vu,"rgba pvrtc 4bppv1":Ol,"rgba pvrtc 2bppv1":xo}),bt.webgl_compressed_texture_etc1&&(si["rgb etc1"]=Yl);var Mr=Array.prototype.slice.call(Me.getParameter(Li));Object.keys(si).forEach(function(ne){var we=si[ne];Mr.indexOf(we)>=0&&(Wi[ne]=we)});var Yr=Object.keys(Wi);zt.textureFormats=Yr;var xi=[];Object.keys(Wi).forEach(function(ne){var we=Wi[ne];xi[we]=ne});var Ri=[];Object.keys(en).forEach(function(ne){var we=en[ne];Ri[we]=ne});var ci=[];Object.keys(qi).forEach(function(ne){var we=qi[ne];ci[we]=ne});var an=[];Object.keys(Ei).forEach(function(ne){var we=Ei[ne];an[we]=ne});var Zi=[];Object.keys(Ui).forEach(function(ne){var we=Ui[ne];Zi[we]=ne});var Bn=Yr.reduce(function(ne,we){var Ue=Wi[we];return Ue===po||Ue===_o||Ue===po||Ue===Lo||Ue===il||Ue===As||bt.ext_srgb&&(Ue===cl||Ue===Ks)?ne[Ue]=Ue:Ue===Ds||we.indexOf("rgba")>=0?ne[Ue]=Ma:ne[Ue]=No,ne},{});function hi(){this.internalformat=Ma,this.format=Ma,this.type=Ns,this.compressed=!1,this.premultiplyAlpha=!1,this.flipY=!1,this.unpackAlignment=1,this.colorSpace=lc,this.width=0,this.height=0,this.channels=0}function li(ne,we){ne.internalformat=we.internalformat,ne.format=we.format,ne.type=we.type,ne.compressed=we.compressed,ne.premultiplyAlpha=we.premultiplyAlpha,ne.flipY=we.flipY,ne.unpackAlignment=we.unpackAlignment,ne.colorSpace=we.colorSpace,ne.width=we.width,ne.height=we.height,ne.channels=we.channels}function mn(ne,we){if(!(typeof we!="object"||!we)){if("premultiplyAlpha"in we&&(ne.premultiplyAlpha=we.premultiplyAlpha),"flipY"in we&&(ne.flipY=we.flipY),"alignment"in we&&(ne.unpackAlignment=we.alignment),"colorSpace"in we&&(ne.colorSpace=Hn[we.colorSpace]),"type"in we){var Ue=we.type;ne.type=en[Ue]}var ft=ne.width,Xt=ne.height,hr=ne.channels,qt=!1;"shape"in we?(ft=we.shape[0],Xt=we.shape[1],we.shape.length===3&&(hr=we.shape[2],qt=!0)):("radius"in we&&(ft=Xt=we.radius),"width"in we&&(ft=we.width),"height"in we&&(Xt=we.height),"channels"in we&&(hr=we.channels,qt=!0)),ne.width=ft|0,ne.height=Xt|0,ne.channels=hr|0;var Ve=!1;if("format"in we){var Qe=we.format,at=ne.internalformat=Wi[Qe];ne.format=Bn[at],Qe in en&&("type"in we||(ne.type=en[Qe])),Qe in si&&(ne.compressed=!0),Ve=!0}!qt&&Ve?ne.channels=Go[ne.format]:qt&&!Ve&&ne.channels!==Hs[ne.format]&&(ne.format=ne.internalformat=Hs[ne.channels])}}function Ji(ne){Me.pixelStorei(Vf,ne.flipY),Me.pixelStorei(Jl,ne.premultiplyAlpha),Me.pixelStorei(fl,ne.colorSpace),Me.pixelStorei(nf,ne.unpackAlignment)}function Vi(){hi.call(this),this.xOffset=0,this.yOffset=0,this.data=null,this.needsFree=!1,this.element=null,this.needsCopy=!1}function Ni(ne,we){var Ue=null;if(_f(we)?Ue=we:we&&(mn(ne,we),"x"in we&&(ne.xOffset=we.x|0),"y"in we&&(ne.yOffset=we.y|0),_f(we.data)&&(Ue=we.data)),we.copy){var ft=jr.viewportWidth,Xt=jr.viewportHeight;ne.width=ne.width||ft-ne.xOffset,ne.height=ne.height||Xt-ne.yOffset,ne.needsCopy=!0}else if(!Ue)ne.width=ne.width||1,ne.height=ne.height||1,ne.channels=ne.channels||4;else if(Br(Ue))ne.channels=ne.channels||4,ne.data=Ue,!("type"in we)&&ne.type===Ns&&(ne.type=Yc(Ue));else if(af(Ue))ne.channels=ne.channels||4,eh(ne,Ue),ne.alignment=1,ne.needsFree=!0;else if(Vr(Ue)){var hr=Ue.data;!Array.isArray(hr)&&ne.type===Ns&&(ne.type=Yc(hr));var qt=Ue.shape,Ve=Ue.stride,Qe,at,Ct,Ot,Rt,Bt;qt.length===3?(Ct=qt[2],Bt=Ve[2]):(Ct=1,Bt=1),Qe=qt[0],at=qt[1],Ot=Ve[0],Rt=Ve[1],ne.alignment=1,ne.width=Qe,ne.height=at,ne.channels=Ct,ne.format=ne.internalformat=Hs[Ct],ne.needsFree=!0,Hf(ne,hr,Ot,Rt,Bt,Ue.offset)}else if(Gf(Ue)||Ic(Ue)||yf(Ue))Gf(Ue)||Ic(Ue)?ne.element=Ue:ne.element=Ue.canvas,ne.width=ne.element.width,ne.height=ne.element.height,ne.channels=4;else if(Bl(Ue))ne.element=Ue,ne.width=Ue.width,ne.height=Ue.height,ne.channels=4;else if(wh(Ue))ne.element=Ue,ne.width=Ue.naturalWidth,ne.height=Ue.naturalHeight,ne.channels=4;else if(Qf(Ue))ne.element=Ue,ne.width=Ue.videoWidth,ne.height=Ue.videoHeight,ne.channels=4;else if(Hu(Ue)){var Dt=ne.width||Ue[0].length,yt=ne.height||Ue.length,Pt=ne.channels;Mn(Ue[0][0])?Pt=Pt||Ue[0][0].length:Pt=Pt||1;for(var ht=Ge.shape(Ue),ur=1,br=0;br<ht.length;++br)ur*=ht[br];var Ur=th(ne,ur);Ge.flatten(Ue,ht,"",Ur),ju(ne,Ur),ne.alignment=1,ne.width=Dt,ne.height=yt,ne.channels=Pt,ne.format=ne.internalformat=Hs[Pt],ne.needsFree=!0}ne.type===aa||ne.type}function pn(ne,we,Ue){var ft=ne.element,Xt=ne.data,hr=ne.internalformat,qt=ne.format,Ve=ne.type,Qe=ne.width,at=ne.height;Ji(ne),ft?Me.texImage2D(we,Ue,qt,qt,Ve,ft):ne.compressed?Me.compressedTexImage2D(we,Ue,hr,Qe,at,0,Xt):ne.needsCopy?(Rr(),Me.copyTexImage2D(we,Ue,qt,ne.xOffset,ne.yOffset,Qe,at,0)):Me.texImage2D(we,Ue,qt,Qe,at,0,qt,Ve,Xt||null)}function Vn(ne,we,Ue,ft,Xt){var hr=ne.element,qt=ne.data,Ve=ne.internalformat,Qe=ne.format,at=ne.type,Ct=ne.width,Ot=ne.height;Ji(ne),hr?Me.texSubImage2D(we,Xt,Ue,ft,Qe,at,hr):ne.compressed?Me.compressedTexSubImage2D(we,Xt,Ue,ft,Ve,Ct,Ot,qt):ne.needsCopy?(Rr(),Me.copyTexSubImage2D(we,Xt,Ue,ft,ne.xOffset,ne.yOffset,Ct,Ot)):Me.texSubImage2D(we,Xt,Ue,ft,Ct,Ot,Qe,at,qt)}var na=[];function Ki(){return na.pop()||new Vi}function kn(ne){ne.needsFree&&H.freeType(ne.data),Vi.call(ne),na.push(ne)}function ta(){hi.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]=Ki();ne.mipmask=1,ft.width=ne.width=we,ft.height=ne.height=Ue,ft.channels=ne.channels=4}function ba(ne,we){var Ue=null;if(_f(we))Ue=ne.images[0]=Ki(),li(Ue,ne),Ni(Ue,we),ne.mipmask=1;else if(mn(ne,we),Array.isArray(we.mipmap))for(var ft=we.mipmap,Xt=0;Xt<ft.length;++Xt)Ue=ne.images[Xt]=Ki(),li(Ue,ne),Ue.width>>=Xt,Ue.height>>=Xt,Ni(Ue,ft[Xt]),ne.mipmask|=1<<Xt;else Ue=ne.images[0]=Ki(),li(Ue,ne),Ni(Ue,we),ne.mipmask=1;li(ne,ne.images[0]),ne.compressed&&(ne.internalformat===Io||ne.internalformat===ls||ne.internalformat===Zl||ne.internalformat)}function is(ne,we){for(var Ue=ne.images,ft=0;ft<Ue.length;++ft){if(!Ue[ft])return;pn(Ue[ft],we,ft)}}var Zs=[];function Va(){var ne=Zs.pop()||new ta;hi.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]&&kn(we[Ue]),we[Ue]=null;Zs.push(ne)}function zo(){this.minFilter=pl,this.magFilter=pl,this.wrapS=Pc,this.wrapT=Pc,this.anisotropic=1,this.genMipmaps=!1,this.mipmapHint=sc}function Qs(ne,we){if("min"in we){var Ue=we.min;ne.minFilter=Ei[Ue],Es.indexOf(ne.minFilter)>=0&&!("faces"in we)&&(ne.genMipmaps=!0)}if("mag"in we){var ft=we.mag;ne.magFilter=qi[ft]}var Xt=ne.wrapS,hr=ne.wrapT;if("wrap"in we){var qt=we.wrap;typeof qt=="string"?Xt=hr=Ui[qt]:Array.isArray(qt)&&(Xt=Ui[qt[0]],hr=Ui[qt[1]])}else{if("wrapS"in we){var Ve=we.wrapS;Xt=Ui[Ve]}if("wrapT"in we){var Qe=we.wrapT;hr=Ui[Qe]}}if(ne.wrapS=Xt,ne.wrapT=hr,"anisotropic"in we){var at=we.anisotropic;ne.anisotropic=we.anisotropic}if("mipmap"in we){var Ct=!1;switch(typeof we.mipmap){case"string":ne.mipmapHint=mi[we.mipmap],ne.genMipmaps=!0,Ct=!0;break;case"boolean":Ct=ne.genMipmaps=we.mipmap;break;case"object":ne.genMipmaps=!1,Ct=!0;break;default:}Ct&&!("min"in we)&&(ne.minFilter=Kl)}}function al(ne,we){Me.texParameteri(we,Uf,ne.minFilter),Me.texParameteri(we,rf,ne.magFilter),Me.texParameteri(we,Oo,ne.wrapS),Me.texParameteri(we,qo,ne.wrapT),bt.ext_texture_filter_anisotropic&&Me.texParameteri(we,cs,ne.anisotropic),ne.genMipmaps&&(Me.hint(Cf,ne.mipmapHint),Me.generateMipmap(we))}var Vl=0,ss={},Vs=zt.maxTextureUnits,Ys=Array(Vs).map(function(){return null});function wa(ne){hi.call(this),this.mipmask=0,this.internalformat=Ma,this.id=Vl++,this.refCount=1,this.target=ne,this.texture=Me.createTexture(),this.unit=-1,this.bindCount=0,this.texInfo=new zo,Gr.profile&&(this.stats={size:0})}function ol(ne){Me.activeTexture(Fu),Me.bindTexture(ne.target,ne.texture)}function io(){var ne=Ys[0];ne?Me.bindTexture(ne.target,ne.texture):Me.bindTexture(_n,null)}function Y(ne){var we=ne.texture,Ue=ne.unit,ft=ne.target;Ue>=0&&(Me.activeTexture(Fu+Ue),Me.bindTexture(ft,null),Ys[Ue]=null),Me.deleteTexture(we),ne.texture=null,ne.params=null,ne.pixels=null,ne.refCount=0,delete ss[ne.id],Nr.textureCount--}e(wa.prototype,{bind:function(){var ne=this;ne.bindCount+=1;var we=ne.unit;if(we<0){for(var Ue=0;Ue<Vs;++Ue){var ft=Ys[Ue];if(ft){if(ft.bindCount>0)continue;ft.unit=-1}Ys[Ue]=ne,we=Ue;break}we>=Vs,Gr.profile&&Nr.maxTextureUnits<we+1&&(Nr.maxTextureUnits=we+1),ne.unit=we,Me.activeTexture(Fu+we),Me.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 wa(_n);ss[Ue.id]=Ue,Nr.textureCount++;function ft(qt,Ve){var Qe=Ue.texInfo;zo.call(Qe);var at=Va();return typeof qt=="number"?typeof Ve=="number"?oa(at,qt|0,Ve|0):oa(at,qt|0,qt|0):qt?(Qs(Qe,qt),ba(at,qt)):oa(at,1,1),Qe.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,ol(Ue),is(at,_n),al(Qe,_n),io(),Ml(at),Gr.profile&&(Ue.stats.size=cc(Ue.internalformat,Ue.type,at.width,at.height,Qe.genMipmaps,!1)),ft.format=xi[Ue.internalformat],ft.type=Ri[Ue.type],ft.mag=ci[Qe.magFilter],ft.min=an[Qe.minFilter],ft.wrapS=Zi[Qe.wrapS],ft.wrapT=Zi[Qe.wrapT],ft}function Xt(qt,Ve,Qe,at){var Ct=Ve|0,Ot=Qe|0,Rt=at|0,Bt=Ki();return li(Bt,Ue),Bt.width=0,Bt.height=0,Ni(Bt,qt),Bt.width=Bt.width||(Ue.width>>Rt)-Ct,Bt.height=Bt.height||(Ue.height>>Rt)-Ot,ol(Ue),Vn(Bt,_n,Ct,Ot,Rt),io(),kn(Bt),ft}function hr(qt,Ve){var Qe=qt|0,at=Ve|0||Qe;if(Qe===Ue.width&&at===Ue.height)return ft;ft.width=Ue.width=Qe,ft.height=Ue.height=at,ol(Ue);for(var Ct=0;Ue.mipmask>>Ct;++Ct){var Ot=Qe>>Ct,Rt=at>>Ct;if(!Ot||!Rt)break;Me.texImage2D(_n,Ct,Ue.format,Ot,Rt,0,Ue.format,Ue.type,null)}return io(),Gr.profile&&(Ue.stats.size=cc(Ue.internalformat,Ue.type,Qe,at,!1,!1)),ft}return ft(ne,we),ft.subimage=Xt,ft.resize=hr,ft._reglType="texture2d",ft._texture=Ue,Gr.profile&&(ft.stats=Ue.stats),ft.destroy=function(){Ue.decRef()},ft}function J(ne,we,Ue,ft,Xt,hr){var qt=new wa(ya);ss[qt.id]=qt,Nr.cubeCount++;var Ve=new Array(6);function Qe(Ot,Rt,Bt,Dt,yt,Pt){var ht,ur=qt.texInfo;for(zo.call(ur),ht=0;ht<6;++ht)Ve[ht]=Va();if(typeof Ot=="number"||!Ot){var br=Ot|0||1;for(ht=0;ht<6;++ht)oa(Ve[ht],br,br)}else if(typeof Ot=="object")if(Rt)ba(Ve[0],Ot),ba(Ve[1],Rt),ba(Ve[2],Bt),ba(Ve[3],Dt),ba(Ve[4],yt),ba(Ve[5],Pt);else if(Qs(ur,Ot),mn(qt,Ot),"faces"in Ot){var Ur=Ot.faces;for(ht=0;ht<6;++ht)li(Ve[ht],qt),ba(Ve[ht],Ur[ht])}else for(ht=0;ht<6;++ht)ba(Ve[ht],Ot);for(li(qt,Ve[0]),ur.genMipmaps?qt.mipmask=(Ve[0].width<<1)-1:qt.mipmask=Ve[0].mipmask,qt.internalformat=Ve[0].internalformat,Qe.width=Ve[0].width,Qe.height=Ve[0].height,ol(qt),ht=0;ht<6;++ht)is(Ve[ht],Jn+ht);for(al(ur,ya),io(),Gr.profile&&(qt.stats.size=cc(qt.internalformat,qt.type,Qe.width,Qe.height,ur.genMipmaps,!0)),Qe.format=xi[qt.internalformat],Qe.type=Ri[qt.type],Qe.mag=ci[ur.magFilter],Qe.min=an[ur.minFilter],Qe.wrapS=Zi[ur.wrapS],Qe.wrapT=Zi[ur.wrapT],ht=0;ht<6;++ht)Ml(Ve[ht]);return Qe}function at(Ot,Rt,Bt,Dt,yt){var Pt=Bt|0,ht=Dt|0,ur=yt|0,br=Ki();return li(br,qt),br.width=0,br.height=0,Ni(br,Rt),br.width=br.width||(qt.width>>ur)-Pt,br.height=br.height||(qt.height>>ur)-ht,ol(qt),Vn(br,Jn+Ot,Pt,ht,ur),io(),kn(br),Qe}function Ct(Ot){var Rt=Ot|0;if(Rt!==qt.width){Qe.width=qt.width=Rt,Qe.height=qt.height=Rt,ol(qt);for(var Bt=0;Bt<6;++Bt)for(var Dt=0;qt.mipmask>>Dt;++Dt)Me.texImage2D(Jn+Bt,Dt,qt.format,Rt>>Dt,Rt>>Dt,0,qt.format,qt.type,null);return io(),Gr.profile&&(qt.stats.size=cc(qt.internalformat,qt.type,Qe.width,Qe.height,!1,!0)),Qe}}return Qe(ne,we,Ue,ft,Xt,hr),Qe.subimage=at,Qe.resize=Ct,Qe._reglType="textureCube",Qe._texture=qt,Gr.profile&&(Qe.stats=qt.stats),Qe.destroy=function(){qt.decRef()},Qe}function q(){for(var ne=0;ne<Vs;++ne)Me.activeTexture(Fu+ne),Me.bindTexture(_n,null),Ys[ne]=null;dt(ss).forEach(Y),Nr.cubeCount=0,Nr.textureCount=0}Gr.profile&&(Nr.getTotalTextureSize=function(){var ne=0;return Object.keys(ss).forEach(function(we){ne+=ss[we].stats.size}),ne});function K(){for(var ne=0;ne<Vs;++ne){var we=Ys[ne];we&&(we.bindCount=0,we.unit=-1,Ys[ne]=null)}dt(ss).forEach(function(Ue){Ue.texture=Me.createTexture(),Me.bindTexture(Ue.target,Ue.texture);for(var ft=0;ft<32;++ft)if((Ue.mipmask&1<<ft)!==0)if(Ue.target===_n)Me.texImage2D(_n,ft,Ue.internalformat,Ue.width>>ft,Ue.height>>ft,0,Ue.internalformat,Ue.type,null);else for(var Xt=0;Xt<6;++Xt)Me.texImage2D(Jn+Xt,ft,Ue.internalformat,Ue.width>>ft,Ue.height>>ft,0,Ue.internalformat,Ue.type,null);al(Ue.texInfo,Ue.target)})}function de(){for(var ne=0;ne<Vs;++ne){var we=Ys[ne];we&&(we.bindCount=0,we.unit=-1,Ys[ne]=null),Me.activeTexture(Fu+ne),Me.bindTexture(_n,null),Me.bindTexture(ya,null)}}return{create2D:D,createCube:J,clear:q,getTexture:function(ne){return null},restore:K,refresh:de}}var Nl=36161,Kc=32854,Rc=32855,gs=36194,jf=33189,Gh=36168,rh=34041,sf=35907,Th=34836,Mu=34842,ih=34843,js=[];js[Kc]=2,js[Rc]=2,js[gs]=2,js[jf]=2,js[Gh]=1,js[rh]=4,js[sf]=4,js[Th]=16,js[Mu]=8,js[ih]=6;function Eu(Me,bt,zt){return js[Me]*bt*zt}var Dc=function(Me,bt,zt,Rr,jr){var Nr={rgba4:Kc,rgb565:gs,"rgb5 a1":Rc,depth:jf,stencil:Gh,"depth stencil":rh};bt.ext_srgb&&(Nr.srgba=sf),bt.ext_color_buffer_half_float&&(Nr.rgba16f=Mu,Nr.rgb16f=ih),bt.webgl_color_buffer_float&&(Nr.rgba32f=Th);var Gr=[];Object.keys(Nr).forEach(function(Wi){var si=Nr[Wi];Gr[si]=Wi});var mi=0,Ui={};function qi(Wi){this.id=mi++,this.refCount=1,this.renderbuffer=Wi,this.format=Kc,this.width=0,this.height=0,jr.profile&&(this.stats={size:0})}qi.prototype.decRef=function(){--this.refCount<=0&&Ei(this)};function Ei(Wi){var si=Wi.renderbuffer;Me.bindRenderbuffer(Nl,null),Me.deleteRenderbuffer(si),Wi.renderbuffer=null,Wi.refCount=0,delete Ui[Wi.id],Rr.renderbufferCount--}function Hn(Wi,si){var Mr=new qi(Me.createRenderbuffer());Ui[Mr.id]=Mr,Rr.renderbufferCount++;function Yr(Ri,ci){var an=0,Zi=0,Bn=Kc;if(typeof Ri=="object"&&Ri){var hi=Ri;if("shape"in hi){var li=hi.shape;an=li[0]|0,Zi=li[1]|0}else"radius"in hi&&(an=Zi=hi.radius|0),"width"in hi&&(an=hi.width|0),"height"in hi&&(Zi=hi.height|0);"format"in hi&&(Bn=Nr[hi.format])}else typeof Ri=="number"?(an=Ri|0,typeof ci=="number"?Zi=ci|0:Zi=an):Ri||(an=Zi=1);if(!(an===Mr.width&&Zi===Mr.height&&Bn===Mr.format))return Yr.width=Mr.width=an,Yr.height=Mr.height=Zi,Mr.format=Bn,Me.bindRenderbuffer(Nl,Mr.renderbuffer),Me.renderbufferStorage(Nl,Bn,an,Zi),jr.profile&&(Mr.stats.size=Eu(Mr.format,Mr.width,Mr.height)),Yr.format=Gr[Mr.format],Yr}function xi(Ri,ci){var an=Ri|0,Zi=ci|0||an;return an===Mr.width&&Zi===Mr.height||(Yr.width=Mr.width=an,Yr.height=Mr.height=Zi,Me.bindRenderbuffer(Nl,Mr.renderbuffer),Me.renderbufferStorage(Nl,Mr.format,an,Zi),jr.profile&&(Mr.stats.size=Eu(Mr.format,Mr.width,Mr.height))),Yr}return Yr(Wi,si),Yr.resize=xi,Yr._reglType="renderbuffer",Yr._renderbuffer=Mr,jr.profile&&(Yr.stats=Mr.stats),Yr.destroy=function(){Mr.decRef()},Yr}jr.profile&&(Rr.getTotalRenderbufferSize=function(){var Wi=0;return Object.keys(Ui).forEach(function(si){Wi+=Ui[si].stats.size}),Wi});function en(){dt(Ui).forEach(function(Wi){Wi.renderbuffer=Me.createRenderbuffer(),Me.bindRenderbuffer(Nl,Wi.renderbuffer),Me.renderbufferStorage(Nl,Wi.format,Wi.width,Wi.height)}),Me.bindRenderbuffer(Nl,null)}return{create:Hn,clear:function(){dt(Ui).forEach(Ei)},restore:en}},ks=36160,bc=36161,hu=3553,_u=34069,nl=36064,nh=36096,Ah=36128,zu=33306,Fc=36053,wc=36193,bd=5121,xf=5126,Pf=6407,Ou=6408,bf=[];bf[Ou]=4,bf[Pf]=3;var jl=[];jl[bd]=1,jl[xf]=4,jl[wc]=2;function lf(Me,bt,zt,Rr,jr,Nr){var Gr={cur:null,next:null,dirty:!1,setFBO:null},mi=["rgba"],Ui=["rgba4","rgb565","rgb5 a1"];bt.ext_srgb&&Ui.push("srgba"),bt.ext_color_buffer_half_float&&Ui.push("rgba16f","rgb16f"),bt.webgl_color_buffer_float&&Ui.push("rgba32f");var qi=["uint8"];bt.oes_texture_half_float&&qi.push("half float","float16"),bt.oes_texture_float&&qi.push("float","float32");function Ei(Vi,Ni,pn){this.target=Vi,this.texture=Ni,this.renderbuffer=pn;var Vn=0,na=0;Ni?(Vn=Ni.width,na=Ni.height):pn&&(Vn=pn.width,na=pn.height),this.width=Vn,this.height=na}function Hn(Vi){Vi&&(Vi.texture&&Vi.texture._texture.decRef(),Vi.renderbuffer&&Vi.renderbuffer._renderbuffer.decRef())}function en(Vi,Ni,pn){if(Vi)if(Vi.texture){var Vn=Vi.texture._texture,na=Math.max(1,Vn.width),Ki=Math.max(1,Vn.height);Vn.refCount+=1}else{var kn=Vi.renderbuffer._renderbuffer;kn.refCount+=1}}function Wi(Vi,Ni){Ni&&(Ni.texture?Me.framebufferTexture2D(ks,Vi,Ni.target,Ni.texture._texture.texture,0):Me.framebufferRenderbuffer(ks,Vi,bc,Ni.renderbuffer._renderbuffer.renderbuffer))}function si(Vi){var Ni=hu,pn=null,Vn=null,na=Vi;typeof Vi=="object"&&(na=Vi.data,"target"in Vi&&(Ni=Vi.target|0));var Ki=na._reglType;return Ki==="texture2d"||Ki==="textureCube"?pn=na:Ki==="renderbuffer"&&(Vn=na,Ni=bc),new Ei(Ni,pn,Vn)}function Mr(Vi,Ni,pn,Vn,na){if(pn){var Ki=Rr.create2D({width:Vi,height:Ni,format:Vn,type:na});return Ki._texture.refCount=0,new Ei(hu,Ki,null)}else{var kn=jr.create({width:Vi,height:Ni,format:Vn});return kn._renderbuffer.refCount=0,new Ei(bc,null,kn)}}function Yr(Vi){return Vi&&(Vi.texture||Vi.renderbuffer)}function xi(Vi,Ni,pn){Vi&&(Vi.texture?Vi.texture.resize(Ni,pn):Vi.renderbuffer&&Vi.renderbuffer.resize(Ni,pn),Vi.width=Ni,Vi.height=pn)}var Ri=0,ci={};function an(){this.id=Ri++,ci[this.id]=this,this.framebuffer=Me.createFramebuffer(),this.width=0,this.height=0,this.colorAttachments=[],this.depthAttachment=null,this.stencilAttachment=null,this.depthStencilAttachment=null}function Zi(Vi){Vi.colorAttachments.forEach(Hn),Hn(Vi.depthAttachment),Hn(Vi.stencilAttachment),Hn(Vi.depthStencilAttachment)}function Bn(Vi){var Ni=Vi.framebuffer;Me.deleteFramebuffer(Ni),Vi.framebuffer=null,Nr.framebufferCount--,delete ci[Vi.id]}function hi(Vi){var Ni;Me.bindFramebuffer(ks,Vi.framebuffer);var pn=Vi.colorAttachments;for(Ni=0;Ni<pn.length;++Ni)Wi(nl+Ni,pn[Ni]);for(Ni=pn.length;Ni<zt.maxColorAttachments;++Ni)Me.framebufferTexture2D(ks,nl+Ni,hu,null,0);Me.framebufferTexture2D(ks,zu,hu,null,0),Me.framebufferTexture2D(ks,nh,hu,null,0),Me.framebufferTexture2D(ks,Ah,hu,null,0),Wi(nh,Vi.depthAttachment),Wi(Ah,Vi.stencilAttachment),Wi(zu,Vi.depthStencilAttachment);var Vn=Me.checkFramebufferStatus(ks);Me.isContextLost(),Me.bindFramebuffer(ks,Gr.next?Gr.next.framebuffer:null),Gr.cur=Gr.next,Me.getError()}function li(Vi,Ni){var pn=new an;Nr.framebufferCount++;function Vn(Ki,kn){var ta,oa=0,ba=0,is=!0,Zs=!0,Va=null,Ml=!0,zo="rgba",Qs="uint8",al=1,Vl=null,ss=null,Vs=null,Ys=!1;if(typeof Ki=="number")oa=Ki|0,ba=kn|0||oa;else if(!Ki)oa=ba=1;else{var wa=Ki;if("shape"in wa){var ol=wa.shape;oa=ol[0],ba=ol[1]}else"radius"in wa&&(oa=ba=wa.radius),"width"in wa&&(oa=wa.width),"height"in wa&&(ba=wa.height);("color"in wa||"colors"in wa)&&(Va=wa.color||wa.colors,Array.isArray(Va)),Va||("colorCount"in wa&&(al=wa.colorCount|0),"colorTexture"in wa&&(Ml=!!wa.colorTexture,zo="rgba4"),"colorType"in wa&&(Qs=wa.colorType,Ml||(Qs==="half float"||Qs==="float16"?zo="rgba16f":(Qs==="float"||Qs==="float32")&&(zo="rgba32f"))),"colorFormat"in wa&&(zo=wa.colorFormat,mi.indexOf(zo)>=0?Ml=!0:Ui.indexOf(zo)>=0&&(Ml=!1))),("depthTexture"in wa||"depthStencilTexture"in wa)&&(Ys=!!(wa.depthTexture||wa.depthStencilTexture)),"depth"in wa&&(typeof wa.depth=="boolean"?is=wa.depth:(Vl=wa.depth,Zs=!1)),"stencil"in wa&&(typeof wa.stencil=="boolean"?Zs=wa.stencil:(ss=wa.stencil,is=!1)),"depthStencil"in wa&&(typeof wa.depthStencil=="boolean"?is=Zs=wa.depthStencil:(Vs=wa.depthStencil,is=!1,Zs=!1))}var io=null,Y=null,D=null,J=null;if(Array.isArray(Va))io=Va.map(si);else if(Va)io=[si(Va)];else for(io=new Array(al),ta=0;ta<al;++ta)io[ta]=Mr(oa,ba,Ml,zo,Qs);oa=oa||io[0].width,ba=ba||io[0].height,Vl?Y=si(Vl):is&&!Zs&&(Y=Mr(oa,ba,Ys,"depth","uint32")),ss?D=si(ss):Zs&&!is&&(D=Mr(oa,ba,!1,"stencil","uint8")),Vs?J=si(Vs):!Vl&&!ss&&Zs&&is&&(J=Mr(oa,ba,Ys,"depth stencil","depth stencil"));var q=null;for(ta=0;ta<io.length;++ta)if(en(io[ta],oa,ba),io[ta]&&io[ta].texture){var K=bf[io[ta].texture._texture.format]*jl[io[ta].texture._texture.type];q===null&&(q=K)}return en(Y,oa,ba),en(D,oa,ba),en(J,oa,ba),Zi(pn),pn.width=oa,pn.height=ba,pn.colorAttachments=io,pn.depthAttachment=Y,pn.stencilAttachment=D,pn.depthStencilAttachment=J,Vn.color=io.map(Yr),Vn.depth=Yr(Y),Vn.stencil=Yr(D),Vn.depthStencil=Yr(J),Vn.width=pn.width,Vn.height=pn.height,hi(pn),Vn}function na(Ki,kn){var ta=Math.max(Ki|0,1),oa=Math.max(kn|0||ta,1);if(ta===pn.width&&oa===pn.height)return Vn;for(var ba=pn.colorAttachments,is=0;is<ba.length;++is)xi(ba[is],ta,oa);return xi(pn.depthAttachment,ta,oa),xi(pn.stencilAttachment,ta,oa),xi(pn.depthStencilAttachment,ta,oa),pn.width=Vn.width=ta,pn.height=Vn.height=oa,hi(pn),Vn}return Vn(Vi,Ni),e(Vn,{resize:na,_reglType:"framebuffer",_framebuffer:pn,destroy:function(){Bn(pn),Zi(pn)},use:function(Ki){Gr.setFBO({framebuffer:Vn},Ki)}})}function mn(Vi){var Ni=Array(6);function pn(na){var Ki,kn={color:null},ta=0,oa=null,ba="rgba",is="uint8",Zs=1;if(typeof na=="number")ta=na|0;else if(!na)ta=1;else{var Va=na;if("shape"in Va){var Ml=Va.shape;ta=Ml[0]}else"radius"in Va&&(ta=Va.radius|0),"width"in Va?(ta=Va.width|0,"height"in Va):"height"in Va&&(ta=Va.height|0);("color"in Va||"colors"in Va)&&(oa=Va.color||Va.colors,Array.isArray(oa)),oa||("colorCount"in Va&&(Zs=Va.colorCount|0),"colorType"in Va&&(is=Va.colorType),"colorFormat"in Va&&(ba=Va.colorFormat)),"depth"in Va&&(kn.depth=Va.depth),"stencil"in Va&&(kn.stencil=Va.stencil),"depthStencil"in Va&&(kn.depthStencil=Va.depthStencil)}var zo;if(oa)if(Array.isArray(oa))for(zo=[],Ki=0;Ki<oa.length;++Ki)zo[Ki]=oa[Ki];else zo=[oa];else{zo=Array(Zs);var Qs={radius:ta,format:ba,type:is};for(Ki=0;Ki<Zs;++Ki)zo[Ki]=Rr.createCube(Qs)}for(kn.color=Array(zo.length),Ki=0;Ki<zo.length;++Ki){var al=zo[Ki];ta=ta||al.width,kn.color[Ki]={target:_u,data:zo[Ki]}}for(Ki=0;Ki<6;++Ki){for(var Vl=0;Vl<zo.length;++Vl)kn.color[Vl].target=_u+Ki;Ki>0&&(kn.depth=Ni[0].depth,kn.stencil=Ni[0].stencil,kn.depthStencil=Ni[0].depthStencil),Ni[Ki]?Ni[Ki](kn):Ni[Ki]=li(kn)}return e(pn,{width:ta,height:ta,color:zo})}function Vn(na){var Ki,kn=na|0;if(kn===pn.width)return pn;var ta=pn.color;for(Ki=0;Ki<ta.length;++Ki)ta[Ki].resize(kn);for(Ki=0;Ki<6;++Ki)Ni[Ki].resize(kn);return pn.width=pn.height=kn,pn}return pn(Vi),e(pn,{faces:Ni,resize:Vn,_reglType:"framebufferCube",destroy:function(){Ni.forEach(function(na){na.destroy()})}})}function Ji(){Gr.cur=null,Gr.next=null,Gr.dirty=!0,dt(ci).forEach(function(Vi){Vi.framebuffer=Me.createFramebuffer(),hi(Vi)})}return e(Gr,{getFramebuffer:function(Vi){if(typeof Vi=="function"&&Vi._reglType==="framebuffer"){var Ni=Vi._framebuffer;if(Ni instanceof an)return Ni}return null},create:li,createCube:mn,clear:function(){dt(ci).forEach(Bn)},restore:Ji})}var Hh=5126,If=34962,Cs=34963;function du(){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=Hh,this.offset=0,this.stride=0,this.divisor=0}function ku(Me,bt,zt,Rr,jr,Nr,Gr){for(var mi=zt.maxAttributes,Ui=new Array(mi),qi=0;qi<mi;++qi)Ui[qi]=new du;var Ei=0,Hn={},en={Record:du,scope:{},state:Ui,currentVAO:null,targetVAO:null,restore:si()?Zi:function(){},createVAO:Bn,getVAO:Yr,destroyBuffer:Wi,setVAO:si()?xi:Ri,clear:si()?ci:function(){}};function Wi(hi){for(var li=0;li<Ui.length;++li){var mn=Ui[li];mn.buffer===hi&&(Me.disableVertexAttribArray(li),mn.buffer=null)}}function si(){return bt.oes_vertex_array_object}function Mr(){return bt.angle_instanced_arrays}function Yr(hi){return typeof hi=="function"&&hi._vao?hi._vao:null}function xi(hi){if(hi!==en.currentVAO){var li=si();hi?li.bindVertexArrayOES(hi.vao):li.bindVertexArrayOES(null),en.currentVAO=hi}}function Ri(hi){if(hi!==en.currentVAO){if(hi)hi.bindAttrs();else{for(var li=Mr(),mn=0;mn<Ui.length;++mn){var Ji=Ui[mn];Ji.buffer?(Me.enableVertexAttribArray(mn),Ji.buffer.bind(),Me.vertexAttribPointer(mn,Ji.size,Ji.type,Ji.normalized,Ji.stride,Ji.offfset),li&&Ji.divisor&&li.vertexAttribDivisorANGLE(mn,Ji.divisor)):(Me.disableVertexAttribArray(mn),Me.vertexAttrib4f(mn,Ji.x,Ji.y,Ji.z,Ji.w))}Gr.elements?Me.bindBuffer(Cs,Gr.elements.buffer.buffer):Me.bindBuffer(Cs,null)}en.currentVAO=hi}}function ci(){dt(Hn).forEach(function(hi){hi.destroy()})}function an(){this.id=++Ei,this.attributes=[],this.elements=null,this.ownsElements=!1,this.count=0,this.offset=0,this.instances=-1,this.primitive=4;var hi=si();hi?this.vao=hi.createVertexArrayOES():this.vao=null,Hn[this.id]=this,this.buffers=[]}an.prototype.bindAttrs=function(){for(var hi=Mr(),li=this.attributes,mn=0;mn<li.length;++mn){var Ji=li[mn];Ji.buffer?(Me.enableVertexAttribArray(mn),Me.bindBuffer(If,Ji.buffer.buffer),Me.vertexAttribPointer(mn,Ji.size,Ji.type,Ji.normalized,Ji.stride,Ji.offset),hi&&Ji.divisor&&hi.vertexAttribDivisorANGLE(mn,Ji.divisor)):(Me.disableVertexAttribArray(mn),Me.vertexAttrib4f(mn,Ji.x,Ji.y,Ji.z,Ji.w))}for(var Vi=li.length;Vi<mi;++Vi)Me.disableVertexAttribArray(Vi);var Ni=Nr.getElements(this.elements);Ni?Me.bindBuffer(Cs,Ni.buffer.buffer):Me.bindBuffer(Cs,null)},an.prototype.refresh=function(){var hi=si();hi&&(hi.bindVertexArrayOES(this.vao),this.bindAttrs(),en.currentVAO=null,hi.bindVertexArrayOES(null))},an.prototype.destroy=function(){if(this.vao){var hi=si();this===en.currentVAO&&(en.currentVAO=null,hi.bindVertexArrayOES(null)),hi.deleteVertexArrayOES(this.vao),this.vao=null}this.ownsElements&&(this.elements.destroy(),this.elements=null,this.ownsElements=!1),Hn[this.id]&&(delete Hn[this.id],Rr.vaoCount-=1)};function Zi(){var hi=si();hi&&dt(Hn).forEach(function(li){li.refresh()})}function Bn(hi){var li=new an;Rr.vaoCount+=1;function mn(Ji){var Vi;if(Array.isArray(Ji))Vi=Ji,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(Ji.elements){var Ni=Ji.elements;li.ownsElements?typeof Ni=="function"&&Ni._reglType==="elements"?(li.elements.destroy(),li.ownsElements=!1):(li.elements(Ni),li.ownsElements=!1):Nr.getElements(Ji.elements)?(li.elements=Ji.elements,li.ownsElements=!1):(li.elements=Nr.create(Ji.elements),li.ownsElements=!0)}else li.elements=null,li.ownsElements=!1;Vi=Ji.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 Ji&&(li.offset=Ji.offset|0),"count"in Ji&&(li.count=Ji.count|0),"instances"in Ji&&(li.instances=Ji.instances|0),"primitive"in Ji&&(li.primitive=Sn[Ji.primitive])}var pn={},Vn=li.attributes;Vn.length=Vi.length;for(var na=0;na<Vi.length;++na){var Ki=Vi[na],kn=Vn[na]=new du,ta=Ki.data||Ki;if(Array.isArray(ta)||Br(ta)||Vr(ta)){var oa;li.buffers[na]&&(oa=li.buffers[na],Br(ta)&&oa._buffer.byteLength>=ta.byteLength?oa.subdata(ta):(oa.destroy(),li.buffers[na]=null)),li.buffers[na]||(oa=li.buffers[na]=jr.create(Ki,If,!1,!0)),kn.buffer=jr.getBuffer(oa),kn.size=kn.buffer.dimension|0,kn.normalized=!1,kn.type=kn.buffer.dtype,kn.offset=0,kn.stride=0,kn.divisor=0,kn.state=1,pn[na]=1}else jr.getBuffer(Ki)?(kn.buffer=jr.getBuffer(Ki),kn.size=kn.buffer.dimension|0,kn.normalized=!1,kn.type=kn.buffer.dtype,kn.offset=0,kn.stride=0,kn.divisor=0,kn.state=1):jr.getBuffer(Ki.buffer)?(kn.buffer=jr.getBuffer(Ki.buffer),kn.size=(+Ki.size||kn.buffer.dimension)|0,kn.normalized=!!Ki.normalized||!1,"type"in Ki?kn.type=ji[Ki.type]:kn.type=kn.buffer.dtype,kn.offset=(Ki.offset||0)|0,kn.stride=(Ki.stride||0)|0,kn.divisor=(Ki.divisor||0)|0,kn.state=1):"x"in Ki&&(kn.x=+Ki.x||0,kn.y=+Ki.y||0,kn.z=+Ki.z||0,kn.w=+Ki.w||0,kn.state=2)}for(var ba=0;ba<li.buffers.length;++ba)!pn[ba]&&li.buffers[ba]&&(li.buffers[ba].destroy(),li.buffers[ba]=null);return li.refresh(),mn}return mn.destroy=function(){for(var Ji=0;Ji<li.buffers.length;++Ji)li.buffers[Ji]&&li.buffers[Ji].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(hi)}return en}var Wf=35632,Us=35633,wf=35718,zc=35721;function Wu(Me,bt,zt,Rr){var jr={},Nr={};function Gr(Mr,Yr,xi,Ri){this.name=Mr,this.id=Yr,this.location=xi,this.info=Ri}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 Ui(Mr,Yr,xi){var Ri=Mr===Wf?jr:Nr,ci=Ri[Yr];if(!ci){var an=bt.str(Yr);ci=Me.createShader(Mr),Me.shaderSource(ci,an),Me.compileShader(ci),Ri[Yr]=ci}return ci}var qi={},Ei=[],Hn=0;function en(Mr,Yr){this.id=Hn++,this.fragId=Mr,this.vertId=Yr,this.program=null,this.uniforms=[],this.attributes=[],this.refCount=1,Rr.profile&&(this.stats={uniformsCount:0,attributesCount:0})}function Wi(Mr,Yr,xi){var Ri,ci,an=Ui(Wf,Mr.fragId),Zi=Ui(Us,Mr.vertId),Bn=Mr.program=Me.createProgram();if(Me.attachShader(Bn,an),Me.attachShader(Bn,Zi),xi)for(Ri=0;Ri<xi.length;++Ri){var hi=xi[Ri];Me.bindAttribLocation(Bn,hi[0],hi[1])}Me.linkProgram(Bn);var li=Me.getProgramParameter(Bn,wf);Rr.profile&&(Mr.stats.uniformsCount=li);var mn=Mr.uniforms;for(Ri=0;Ri<li;++Ri)if(ci=Me.getActiveUniform(Bn,Ri),ci)if(ci.size>1)for(var Ji=0;Ji<ci.size;++Ji){var Vi=ci.name.replace("[0]","["+Ji+"]");mi(mn,new Gr(Vi,bt.id(Vi),Me.getUniformLocation(Bn,Vi),ci))}else mi(mn,new Gr(ci.name,bt.id(ci.name),Me.getUniformLocation(Bn,ci.name),ci));var Ni=Me.getProgramParameter(Bn,zc);Rr.profile&&(Mr.stats.attributesCount=Ni);var pn=Mr.attributes;for(Ri=0;Ri<Ni;++Ri)ci=Me.getActiveAttrib(Bn,Ri),ci&&mi(pn,new Gr(ci.name,bt.id(ci.name),Me.getAttribLocation(Bn,ci.name),ci))}Rr.profile&&(zt.getMaxUniformsCount=function(){var Mr=0;return Ei.forEach(function(Yr){Yr.stats.uniformsCount>Mr&&(Mr=Yr.stats.uniformsCount)}),Mr},zt.getMaxAttributesCount=function(){var Mr=0;return Ei.forEach(function(Yr){Yr.stats.attributesCount>Mr&&(Mr=Yr.stats.attributesCount)}),Mr});function si(){jr={},Nr={};for(var Mr=0;Mr<Ei.length;++Mr)Wi(Ei[Mr],null,Ei[Mr].attributes.map(function(Yr){return[Yr.location,Yr.name]}))}return{clear:function(){var Mr=Me.deleteShader.bind(Me);dt(jr).forEach(Mr),jr={},dt(Nr).forEach(Mr),Nr={},Ei.forEach(function(Yr){Me.deleteProgram(Yr.program)}),Ei.length=0,qi={},zt.shaderCount=0},program:function(Mr,Yr,xi,Ri){var ci=qi[Yr];ci||(ci=qi[Yr]={});var an=ci[Mr];if(an&&(an.refCount++,!Ri))return an;var Zi=new en(Yr,Mr);return zt.shaderCount++,Wi(Zi,xi,Ri),an||(ci[Mr]=Zi),Ei.push(Zi),e(Zi,{destroy:function(){if(Zi.refCount--,Zi.refCount<=0){Me.deleteProgram(Zi.program);var Bn=Ei.indexOf(Zi);Ei.splice(Bn,1),zt.shaderCount--}ci[Zi.vertId].refCount<=0&&(Me.deleteShader(Nr[Zi.vertId]),delete Nr[Zi.vertId],delete qi[Zi.fragId][Zi.vertId]),Object.keys(qi[Zi.fragId]).length||(Me.deleteShader(jr[Zi.fragId]),delete jr[Zi.fragId],delete qi[Zi.fragId])}})},restore:si,shader:Ui,frag:-1,vert:-1}}var Rf=6408,Xu=5121,uf=3333,Xf=5126;function Wl(Me,bt,zt,Rr,jr,Nr,Gr){function mi(Ei){var Hn;bt.next===null?Hn=Xu:Hn=bt.next.colorAttachments[0].texture._texture.type;var en=0,Wi=0,si=Rr.framebufferWidth,Mr=Rr.framebufferHeight,Yr=null;Br(Ei)?Yr=Ei:Ei&&(en=Ei.x|0,Wi=Ei.y|0,si=(Ei.width||Rr.framebufferWidth-en)|0,Mr=(Ei.height||Rr.framebufferHeight-Wi)|0,Yr=Ei.data||null),zt();var xi=si*Mr*4;return Yr||(Hn===Xu?Yr=new Uint8Array(xi):Hn===Xf&&(Yr=Yr||new Float32Array(xi))),Me.pixelStorei(uf,4),Me.readPixels(en,Wi,si,Mr,Rf,Hn,Yr),Yr}function Ui(Ei){var Hn;return bt.setFBO({framebuffer:Ei.framebuffer},function(){Hn=mi(Ei)}),Hn}function qi(Ei){return!Ei||!("framebuffer"in Ei)?mi(Ei):Ui(Ei)}return qi}var ah=0,Zu="";function Oc(Me){return vu(Tc(fc(Me)))}function Tc(Me){return At(Yi(Bc(Me),Me.length*8))}function wl(Me,bt){var zt=Bc(Me);zt.length>16&&(zt=Yi(zt,Me.length*8));for(var Rr=Array(16),jr=Array(16),Nr=0;Nr<16;Nr++)Rr[Nr]=zt[Nr]^909522486,jr[Nr]=zt[Nr]^1549556828;var Gr=Yi(Rr.concat(Bc(bt)),512+bt.length*8);return At(Yi(jr.concat(Gr),768))}function vu(Me){for(var bt=ah?"0123456789ABCDEF":"0123456789abcdef",zt="",Rr,jr=0;jr<Me.length;jr++)Rr=Me.charCodeAt(jr),zt+=bt.charAt(Rr>>>4&15)+bt.charAt(Rr&15);return zt}function qc(Me){for(var bt="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",zt="",Rr=Me.length,jr=0;jr<Rr;jr+=3)for(var Nr=Me.charCodeAt(jr)<<16|(jr+1<Rr?Me.charCodeAt(jr+1)<<8:0)|(jr+2<Rr?Me.charCodeAt(jr+2):0),Gr=0;Gr<4;Gr++)jr*8+Gr*6>Me.length*8?zt+=Zu:zt+=bt.charAt(Nr>>>6*(3-Gr)&63);return zt}function cf(Me,bt){var zt=bt.length,Rr=Array(),jr,Nr,Gr,mi,Ui=Array(Math.ceil(Me.length/2));for(jr=0;jr<Ui.length;jr++)Ui[jr]=Me.charCodeAt(jr*2)<<8|Me.charCodeAt(jr*2+1);for(;Ui.length>0;){for(mi=Array(),Gr=0,jr=0;jr<Ui.length;jr++)Gr=(Gr<<16)+Ui[jr],Nr=Math.floor(Gr/zt),Gr-=Nr*zt,(mi.length>0||Nr>0)&&(mi[mi.length]=Nr);Rr[Rr.length]=Gr,Ui=mi}var qi="";for(jr=Rr.length-1;jr>=0;jr--)qi+=bt.charAt(Rr[jr]);var Ei=Math.ceil(Me.length*8/(Math.log(bt.length)/Math.log(2)));for(jr=qi.length;jr<Ei;jr++)qi=bt[0]+qi;return qi}function fc(Me){for(var bt="",zt=-1,Rr,jr;++zt<Me.length;)Rr=Me.charCodeAt(zt),jr=zt+1<Me.length?Me.charCodeAt(zt+1):0,55296<=Rr&&Rr<=56319&&56320<=jr&&jr<=57343&&(Rr=65536+((Rr&1023)<<10)+(jr&1023),zt++),Rr<=127?bt+=String.fromCharCode(Rr):Rr<=2047?bt+=String.fromCharCode(192|Rr>>>6&31,128|Rr&63):Rr<=65535?bt+=String.fromCharCode(224|Rr>>>12&15,128|Rr>>>6&63,128|Rr&63):Rr<=2097151&&(bt+=String.fromCharCode(240|Rr>>>18&7,128|Rr>>>12&63,128|Rr>>>6&63,128|Rr&63));return bt}function Bc(Me){for(var bt=Array(Me.length>>2),zt=0;zt<bt.length;zt++)bt[zt]=0;for(var zt=0;zt<Me.length*8;zt+=8)bt[zt>>5]|=(Me.charCodeAt(zt/8)&255)<<24-zt%32;return bt}function At(Me){for(var bt="",zt=0;zt<Me.length*32;zt+=8)bt+=String.fromCharCode(Me[zt>>5]>>>24-zt%32&255);return bt}function Wt(Me,bt){return Me>>>bt|Me<<32-bt}function Cr(Me,bt){return Me>>>bt}function Ar(Me,bt,zt){return Me&bt^~Me&zt}function Kr(Me,bt,zt){return Me&bt^Me&zt^bt&zt}function ki(Me){return Wt(Me,2)^Wt(Me,13)^Wt(Me,22)}function Xi(Me){return Wt(Me,6)^Wt(Me,11)^Wt(Me,25)}function dn(Me){return Wt(Me,7)^Wt(Me,18)^Cr(Me,3)}function wn(Me){return Wt(Me,17)^Wt(Me,19)^Cr(Me,10)}var Nn=new Array(1116352408,1899447441,-1245643825,-373957723,961987163,1508970993,-1841331548,-1424204075,-670586216,310598401,607225278,1426881987,1925078388,-2132889090,-1680079193,-1046744716,-459576895,-272742522,264347078,604807628,770255983,1249150122,1555081692,1996064986,-1740746414,-1473132947,-1341970488,-1084653625,-958395405,-710438585,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,-2117940946,-1838011259,-1564481375,-1474664885,-1035236496,-949202525,-778901479,-694614492,-200395387,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,-2067236844,-1933114872,-1866530822,-1538233109,-1090935817,-965641998);function Yi(Me,bt){var zt=new Array(1779033703,-1150833019,1013904242,-1521486534,1359893119,-1694144372,528734635,1541459225),Rr=new Array(64),jr,Nr,Gr,mi,Ui,qi,Ei,Hn,en,Wi,si,Mr;for(Me[bt>>5]|=128<<24-bt%32,Me[(bt+64>>9<<4)+15]=bt,en=0;en<Me.length;en+=16){for(jr=zt[0],Nr=zt[1],Gr=zt[2],mi=zt[3],Ui=zt[4],qi=zt[5],Ei=zt[6],Hn=zt[7],Wi=0;Wi<64;Wi++)Wi<16?Rr[Wi]=Me[Wi+en]:Rr[Wi]=Qi(Qi(Qi(wn(Rr[Wi-2]),Rr[Wi-7]),dn(Rr[Wi-15])),Rr[Wi-16]),si=Qi(Qi(Qi(Qi(Hn,Xi(Ui)),Ar(Ui,qi,Ei)),Nn[Wi]),Rr[Wi]),Mr=Qi(ki(jr),Kr(jr,Nr,Gr)),Hn=Ei,Ei=qi,qi=Ui,Ui=Qi(mi,si),mi=Gr,Gr=Nr,Nr=jr,jr=Qi(si,Mr);zt[0]=Qi(jr,zt[0]),zt[1]=Qi(Nr,zt[1]),zt[2]=Qi(Gr,zt[2]),zt[3]=Qi(mi,zt[3]),zt[4]=Qi(Ui,zt[4]),zt[5]=Qi(qi,zt[5]),zt[6]=Qi(Ei,zt[6]),zt[7]=Qi(Hn,zt[7])}return zt}function Qi(Me,bt){var zt=(Me&65535)+(bt&65535),Rr=(Me>>16)+(bt>>16)+(zt>>16);return Rr<<16|zt&65535}function on(Me){return Array.prototype.slice.call(Me)}function Fi(Me){return on(Me).join("")}function $n(Me){var bt=Me&&Me.cache,zt=0,Rr=[],jr=[],Nr=[];function Gr(si,Mr){var Yr=Mr&&Mr.stable;if(!Yr){for(var xi=0;xi<jr.length;++xi)if(jr[xi]===si&&!Nr[xi])return Rr[xi]}var Ri="g"+zt++;return Rr.push(Ri),jr.push(si),Nr.push(Yr),Ri}function mi(){var si=[];function Mr(){si.push.apply(si,on(arguments))}var Yr=[];function xi(){var Ri="v"+zt++;return Yr.push(Ri),arguments.length>0&&(si.push(Ri,"="),si.push.apply(si,on(arguments)),si.push(";")),Ri}return e(Mr,{def:xi,toString:function(){return Fi([Yr.length>0?"var "+Yr.join(",")+";":"",Fi(si)])}})}function Ui(){var si=mi(),Mr=mi(),Yr=si.toString,xi=Mr.toString;function Ri(ci,an){Mr(ci,an,"=",si.def(ci,an),";")}return e(function(){si.apply(si,on(arguments))},{def:si.def,entry:si,exit:Mr,save:Ri,set:function(ci,an,Zi){Ri(ci,an),si(ci,an,"=",Zi,";")},toString:function(){return Yr()+xi()}})}function qi(){var si=Fi(arguments),Mr=Ui(),Yr=Ui(),xi=Mr.toString,Ri=Yr.toString;return e(Mr,{then:function(){return Mr.apply(Mr,on(arguments)),this},else:function(){return Yr.apply(Yr,on(arguments)),this},toString:function(){var ci=Ri();return ci&&(ci="else{"+ci+"}"),Fi(["if(",si,"){",xi(),"}",ci])}})}var Ei=mi(),Hn={};function en(si,Mr){var Yr=[];function xi(){var Bn="a"+Yr.length;return Yr.push(Bn),Bn}Mr=Mr||0;for(var Ri=0;Ri<Mr;++Ri)xi();var ci=Ui(),an=ci.toString,Zi=Hn[si]=e(ci,{arg:xi,toString:function(){return Fi(["function(",Yr.join(),"){",an(),"}"])}});return Zi}function Wi(){var si=['"use strict";',Ei,"return {"];Object.keys(Hn).forEach(function(Ri){si.push('"',Ri,'":',Hn[Ri].toString(),",")}),si.push("}");var Mr=Fi(si).replace(/;/g,`;
`).replace(/}/g,`}
`).replace(/{/g,`{
`),Yr;if(bt&&(Yr=Oc(Mr),bt[Yr]))return bt[Yr].apply(null,jr);var xi=Function.apply(null,Rr.concat(Mr));return bt&&(bt[Yr]=xi),xi.apply(null,jr)}return{global:Ei,link:Gr,block:mi,proc:en,scope:Ui,cond:qi,compile:Wi}}var Ca="xyzw".split(""),Ra=5121,La=1,Na=2,Yn=0,Dn=1,Ka=2,bo=3,Xo=4,Ss=5,as=6,ws="dither",Ho="blend.enable",ml="blend.color",Ws="blend.equation",Ls="blend.func",va="depth.enable",no="depth.func",ys="depth.range",rs="depth.mask",$l="colorMask",Cu="cull.enable",Yu="cull.face",Nc="frontFace",pu="lineWidth",Uc="polygonOffset.enable",xu="polygonOffset.offset",Ac="sample.alpha",Ua="sample.enable",oo="sample.coverage",Vc="stencil.enable",hc="stencil.mask",Ku="stencil.func",ue="stencil.opFront",w="stencil.opBack",B="scissor.enable",Q="scissor.box",ee="viewport",le="profile",qe="framebuffer",Xe="vert",ot="frag",Tt="elements",Yt="primitive",Kt="count",xr="offset",Ir="instances",ve="vao",be="Width",De="Height",Be=qe+be,et=qe+De,We=ee+be,it=ee+De,Ft="drawingBuffer",Ht=Ft+be,tr=Ft+De,dr=[Ls,Ws,Ku,ue,w,oo,ee,Q,xu],Sr=34962,Or=34963,Wr=2884,ni=3042,Pi=3024,cn=2960,ln=2929,Cn=3089,Kn=32823,Ta=32926,fa=32928,$a=5126,Co=35664,Qa=35665,mo=35666,Bo=5124,Ps=35667,Ts=35668,wo=35669,To=35670,hl=35671,Ul=35672,Lu=35673,au=35674,Js=35675,Ql=35676,dc=35678,Tl=35680,Al=4,X=1028,se=1029,Te=2304,Ne=2305,He=32775,Ye=32776,kt=519,nt=7680,jt=0,gr=1,yr=32774,Hr=513,qr=36160,_i=36064,bi={0:0,1:1,zero:0,one:1,"src color":768,"one minus src color":769,"src alpha":770,"one minus src alpha":771,"dst color":774,"one minus dst color":775,"dst alpha":772,"one minus dst alpha":773,"constant color":32769,"one minus constant color":32770,"constant alpha":32771,"one minus constant alpha":32772,"src alpha saturate":776},Zr={never:512,less:513,"<":513,equal:514,"=":514,"==":514,"===":514,lequal:515,"<=":515,greater:516,">":516,notequal:517,"!=":517,"!==":517,gequal:518,">=":518,always:519},ai={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,"increment wrap":34055,"decrement wrap":34056,invert:5386},gi={cw:Te,ccw:Ne};function Ii(Me){return Array.isArray(Me)||Br(Me)||Vr(Me)}function Si(Me){return Me.sort(function(bt,zt){return bt===ee?-1:zt===ee?1:bt<zt?-1:1})}function ei(Me,bt,zt,Rr){this.thisDep=Me,this.contextDep=bt,this.propDep=zt,this.append=Rr}function Ln(Me){return Me&&!(Me.thisDep||Me.contextDep||Me.propDep)}function En(Me){return new ei(!1,!1,!1,Me)}function Un(Me,bt){var zt=Me.type;if(zt===Yn){var Rr=Me.data.length;return new ei(!0,Rr>=1,Rr>=2,bt)}else if(zt===Xo){var jr=Me.data;return new ei(jr.thisDep,jr.contextDep,jr.propDep,bt)}else{if(zt===Ss)return new ei(!1,!1,!1,bt);if(zt===as){for(var Nr=!1,Gr=!1,mi=!1,Ui=0;Ui<Me.data.length;++Ui){var qi=Me.data[Ui];if(qi.type===Dn)mi=!0;else if(qi.type===Ka)Gr=!0;else if(qi.type===bo)Nr=!0;else if(qi.type===Yn){Nr=!0;var Ei=qi.data;Ei>=1&&(Gr=!0),Ei>=2&&(mi=!0)}else qi.type===Xo&&(Nr=Nr||qi.data.thisDep,Gr=Gr||qi.data.contextDep,mi=mi||qi.data.propDep)}return new ei(Nr,Gr,mi,bt)}else return new ei(zt===bo,zt===Ka,zt===Dn,bt)}}var ia=new ei(!1,!1,!1,function(){});function Ea(Me,bt,zt,Rr,jr,Nr,Gr,mi,Ui,qi,Ei,Hn,en,Wi,si,Mr){var Yr=qi.Record,xi={add:32774,subtract:32778,"reverse subtract":32779};zt.ext_blend_minmax&&(xi.min=He,xi.max=Ye);var Ri=zt.angle_instanced_arrays,ci=zt.webgl_draw_buffers,an=zt.oes_vertex_array_object,Zi={dirty:!0,profile:Mr.profile},Bn={},hi=[],li={},mn={};function Ji(Ve){return Ve.replace(".","_")}function Vi(Ve,Qe,at){var Ct=Ji(Ve);hi.push(Ve),Bn[Ct]=Zi[Ct]=!!at,li[Ct]=Qe}function Ni(Ve,Qe,at){var Ct=Ji(Ve);hi.push(Ve),Array.isArray(at)?(Zi[Ct]=at.slice(),Bn[Ct]=at.slice()):Zi[Ct]=Bn[Ct]=at,mn[Ct]=Qe}function pn(Ve){return!!isNaN(Ve)}Vi(ws,Pi),Vi(Ho,ni),Ni(ml,"blendColor",[0,0,0,0]),Ni(Ws,"blendEquationSeparate",[yr,yr]),Ni(Ls,"blendFuncSeparate",[gr,jt,gr,jt]),Vi(va,ln,!0),Ni(no,"depthFunc",Hr),Ni(ys,"depthRange",[0,1]),Ni(rs,"depthMask",!0),Ni($l,$l,[!0,!0,!0,!0]),Vi(Cu,Wr),Ni(Yu,"cullFace",se),Ni(Nc,Nc,Ne),Ni(pu,pu,1),Vi(Uc,Kn),Ni(xu,"polygonOffset",[0,0]),Vi(Ac,Ta),Vi(Ua,fa),Ni(oo,"sampleCoverage",[1,!1]),Vi(Vc,cn),Ni(hc,"stencilMask",-1),Ni(Ku,"stencilFunc",[kt,0,-1]),Ni(ue,"stencilOpSeparate",[X,nt,nt,nt]),Ni(w,"stencilOpSeparate",[se,nt,nt,nt]),Vi(B,Cn),Ni(Q,"scissor",[0,0,Me.drawingBufferWidth,Me.drawingBufferHeight]),Ni(ee,ee,[0,0,Me.drawingBufferWidth,Me.drawingBufferHeight]);var Vn={gl:Me,context:en,strings:bt,next:Bn,current:Zi,draw:Hn,elements:Nr,buffer:jr,shader:Ei,attributes:qi.state,vao:qi,uniforms:Ui,framebuffer:mi,extensions:zt,timer:Wi,isBufferArgs:Ii},na={primTypes:Sn,compareFuncs:Zr,blendFuncs:bi,blendEquations:xi,stencilOps:ai,glTypes:ji,orientationType:gi};ci&&(na.backBuffer=[se],na.drawBuffer=M(Rr.maxDrawbuffers,function(Ve){return Ve===0?[0]:M(Ve,function(Qe){return _i+Qe})}));var Ki=0;function kn(){var Ve=$n({cache:si}),Qe=Ve.link,at=Ve.global;Ve.id=Ki++,Ve.batchId="0";var Ct=Qe(Vn),Ot=Ve.shared={props:"a0"};Object.keys(Vn).forEach(function(Pt){Ot[Pt]=at.def(Ct,".",Pt)});var Rt=Ve.next={},Bt=Ve.current={};Object.keys(mn).forEach(function(Pt){Array.isArray(Zi[Pt])&&(Rt[Pt]=at.def(Ot.next,".",Pt),Bt[Pt]=at.def(Ot.current,".",Pt))});var Dt=Ve.constants={};Object.keys(na).forEach(function(Pt){Dt[Pt]=at.def(JSON.stringify(na[Pt]))}),Ve.invoke=function(Pt,ht){switch(ht.type){case Yn:var ur=["this",Ot.context,Ot.props,Ve.batchId];return Pt.def(Qe(ht.data),".call(",ur.slice(0,Math.max(ht.data.length+1,4)),")");case Dn:return Pt.def(Ot.props,ht.data);case Ka:return Pt.def(Ot.context,ht.data);case bo:return Pt.def("this",ht.data);case Xo:return ht.data.append(Ve,Pt),ht.data.ref;case Ss:return ht.data.toString();case as:return ht.data.map(function(br){return Ve.invoke(Pt,br)})}},Ve.attribCache={};var yt={};return Ve.scopeAttrib=function(Pt){var ht=bt.id(Pt);if(ht in yt)return yt[ht];var ur=qi.scope[ht];ur||(ur=qi.scope[ht]=new Yr);var br=yt[ht]=Qe(ur);return br},Ve}function ta(Ve){var Qe=Ve.static,at=Ve.dynamic,Ct;if(le in Qe){var Ot=!!Qe[le];Ct=En(function(Bt,Dt){return Ot}),Ct.enable=Ot}else if(le in at){var Rt=at[le];Ct=Un(Rt,function(Bt,Dt){return Bt.invoke(Dt,Rt)})}return Ct}function oa(Ve,Qe){var at=Ve.static,Ct=Ve.dynamic;if(qe in at){var Ot=at[qe];return Ot?(Ot=mi.getFramebuffer(Ot),En(function(Bt,Dt){var yt=Bt.link(Ot),Pt=Bt.shared;Dt.set(Pt.framebuffer,".next",yt);var ht=Pt.context;return Dt.set(ht,"."+Be,yt+".width"),Dt.set(ht,"."+et,yt+".height"),yt})):En(function(Bt,Dt){var yt=Bt.shared;Dt.set(yt.framebuffer,".next","null");var Pt=yt.context;return Dt.set(Pt,"."+Be,Pt+"."+Ht),Dt.set(Pt,"."+et,Pt+"."+tr),"null"})}else if(qe in Ct){var Rt=Ct[qe];return Un(Rt,function(Bt,Dt){var yt=Bt.invoke(Dt,Rt),Pt=Bt.shared,ht=Pt.framebuffer,ur=Dt.def(ht,".getFramebuffer(",yt,")");Dt.set(ht,".next",ur);var br=Pt.context;return Dt.set(br,"."+Be,ur+"?"+ur+".width:"+br+"."+Ht),Dt.set(br,"."+et,ur+"?"+ur+".height:"+br+"."+tr),ur})}else return null}function ba(Ve,Qe,at){var Ct=Ve.static,Ot=Ve.dynamic;function Rt(yt){if(yt in Ct){var Pt=Ct[yt],ht=!0,ur=Pt.x|0,br=Pt.y|0,Ur,Di;return"width"in Pt?Ur=Pt.width|0:ht=!1,"height"in Pt?Di=Pt.height|0:ht=!1,new ei(!ht&&Qe&&Qe.thisDep,!ht&&Qe&&Qe.contextDep,!ht&&Qe&&Qe.propDep,function(gn,rn){var Ci=gn.shared.context,Bi=Ur;"width"in Pt||(Bi=rn.def(Ci,".",Be,"-",ur));var Gi=Di;return"height"in Pt||(Gi=rn.def(Ci,".",et,"-",br)),[ur,br,Bi,Gi]})}else if(yt in Ot){var fi=Ot[yt],Ti=Un(fi,function(gn,rn){var Ci=gn.invoke(rn,fi),Bi=gn.shared.context,Gi=rn.def(Ci,".x|0"),sn=rn.def(Ci,".y|0"),zn=rn.def('"width" in ',Ci,"?",Ci,".width|0:","(",Bi,".",Be,"-",Gi,")"),Ja=rn.def('"height" in ',Ci,"?",Ci,".height|0:","(",Bi,".",et,"-",sn,")");return[Gi,sn,zn,Ja]});return Qe&&(Ti.thisDep=Ti.thisDep||Qe.thisDep,Ti.contextDep=Ti.contextDep||Qe.contextDep,Ti.propDep=Ti.propDep||Qe.propDep),Ti}else return Qe?new ei(Qe.thisDep,Qe.contextDep,Qe.propDep,function(gn,rn){var Ci=gn.shared.context;return[0,0,rn.def(Ci,".",Be),rn.def(Ci,".",et)]}):null}var Bt=Rt(ee);if(Bt){var Dt=Bt;Bt=new ei(Bt.thisDep,Bt.contextDep,Bt.propDep,function(yt,Pt){var ht=Dt.append(yt,Pt),ur=yt.shared.context;return Pt.set(ur,"."+We,ht[2]),Pt.set(ur,"."+it,ht[3]),ht})}return{viewport:Bt,scissor_box:Rt(Q)}}function is(Ve,Qe){var at=Ve.static,Ct=typeof at[ot]=="string"&&typeof at[Xe]=="string";if(Ct){if(Object.keys(Qe.dynamic).length>0)return null;var Ot=Qe.static,Rt=Object.keys(Ot);if(Rt.length>0&&typeof Ot[Rt[0]]=="number"){for(var Bt=[],Dt=0;Dt<Rt.length;++Dt)Bt.push([Ot[Rt[Dt]]|0,Rt[Dt]]);return Bt}}return null}function Zs(Ve,Qe,at){var Ct=Ve.static,Ot=Ve.dynamic;function Rt(ht){if(ht in Ct){var ur=bt.id(Ct[ht]),br=En(function(){return ur});return br.id=ur,br}else if(ht in Ot){var Ur=Ot[ht];return Un(Ur,function(Di,fi){var Ti=Di.invoke(fi,Ur),gn=fi.def(Di.shared.strings,".id(",Ti,")");return gn})}return null}var Bt=Rt(ot),Dt=Rt(Xe),yt=null,Pt;return Ln(Bt)&&Ln(Dt)?(yt=Ei.program(Dt.id,Bt.id,null,at),Pt=En(function(ht,ur){return ht.link(yt)})):Pt=new ei(Bt&&Bt.thisDep||Dt&&Dt.thisDep,Bt&&Bt.contextDep||Dt&&Dt.contextDep,Bt&&Bt.propDep||Dt&&Dt.propDep,function(ht,ur){var br=ht.shared.shader,Ur;Bt?Ur=Bt.append(ht,ur):Ur=ur.def(br,".",ot);var Di;Dt?Di=Dt.append(ht,ur):Di=ur.def(br,".",Xe);var fi=br+".program("+Di+","+Ur;return ur.def(fi+")")}),{frag:Bt,vert:Dt,progVar:Pt,program:yt}}function Va(Ve,Qe){var at=Ve.static,Ct=Ve.dynamic,Ot={},Rt=!1;function Bt(){if(ve in at){var rn=at[ve];return rn!==null&&qi.getVAO(rn)===null&&(rn=qi.createVAO(rn)),Rt=!0,Ot.vao=rn,En(function(Bi){var Gi=qi.getVAO(rn);return Gi?Bi.link(Gi):"null"})}else if(ve in Ct){Rt=!0;var Ci=Ct[ve];return Un(Ci,function(Bi,Gi){var sn=Bi.invoke(Gi,Ci);return Gi.def(Bi.shared.vao+".getVAO("+sn+")")})}return null}var Dt=Bt(),yt=!1;function Pt(){if(Tt in at){var rn=at[Tt];if(Ot.elements=rn,Ii(rn)){var Ci=Ot.elements=Nr.create(rn,!0);rn=Nr.getElements(Ci),yt=!0}else rn&&(rn=Nr.getElements(rn),yt=!0);var Bi=En(function(sn,zn){if(rn){var Ja=sn.link(rn);return sn.ELEMENTS=Ja,Ja}return sn.ELEMENTS=null,null});return Bi.value=rn,Bi}else if(Tt in Ct){yt=!0;var Gi=Ct[Tt];return Un(Gi,function(sn,zn){var Ja=sn.shared,co=Ja.isBufferArgs,ts=Ja.elements,so=sn.invoke(zn,Gi),Zo=zn.def("null"),ms=zn.def(co,"(",so,")"),ou=sn.cond(ms).then(Zo,"=",ts,".createStream(",so,");").else(Zo,"=",ts,".getElements(",so,");");return zn.entry(ou),zn.exit(sn.cond(ms).then(ts,".destroyStream(",Zo,");")),sn.ELEMENTS=Zo,Zo})}else if(Rt)return new ei(Dt.thisDep,Dt.contextDep,Dt.propDep,function(sn,zn){return zn.def(sn.shared.vao+".currentVAO?"+sn.shared.elements+".getElements("+sn.shared.vao+".currentVAO.elements):null")});return null}var ht=Pt();function ur(){if(Yt in at){var rn=at[Yt];return Ot.primitive=rn,En(function(Bi,Gi){return Sn[rn]})}else if(Yt in Ct){var Ci=Ct[Yt];return Un(Ci,function(Bi,Gi){var sn=Bi.constants.primTypes,zn=Bi.invoke(Gi,Ci);return Gi.def(sn,"[",zn,"]")})}else{if(yt)return Ln(ht)?ht.value?En(function(Bi,Gi){return Gi.def(Bi.ELEMENTS,".primType")}):En(function(){return Al}):new ei(ht.thisDep,ht.contextDep,ht.propDep,function(Bi,Gi){var sn=Bi.ELEMENTS;return Gi.def(sn,"?",sn,".primType:",Al)});if(Rt)return new ei(Dt.thisDep,Dt.contextDep,Dt.propDep,function(Bi,Gi){return Gi.def(Bi.shared.vao+".currentVAO?"+Bi.shared.vao+".currentVAO.primitive:"+Al)})}return null}function br(rn,Ci){if(rn in at){var Bi=at[rn]|0;return Ci?Ot.offset=Bi:Ot.instances=Bi,En(function(sn,zn){return Ci&&(sn.OFFSET=Bi),Bi})}else if(rn in Ct){var Gi=Ct[rn];return Un(Gi,function(sn,zn){var Ja=sn.invoke(zn,Gi);return Ci&&(sn.OFFSET=Ja),Ja})}else if(Ci){if(yt)return En(function(sn,zn){return sn.OFFSET=0,0});if(Rt)return new ei(Dt.thisDep,Dt.contextDep,Dt.propDep,function(sn,zn){return zn.def(sn.shared.vao+".currentVAO?"+sn.shared.vao+".currentVAO.offset:0")})}else if(Rt)return new ei(Dt.thisDep,Dt.contextDep,Dt.propDep,function(sn,zn){return zn.def(sn.shared.vao+".currentVAO?"+sn.shared.vao+".currentVAO.instances:-1")});return null}var Ur=br(xr,!0);function Di(){if(Kt in at){var rn=at[Kt]|0;return Ot.count=rn,En(function(){return rn})}else if(Kt in Ct){var Ci=Ct[Kt];return Un(Ci,function(zn,Ja){var co=zn.invoke(Ja,Ci);return co})}else if(yt)if(Ln(ht)){if(ht)return Ur?new ei(Ur.thisDep,Ur.contextDep,Ur.propDep,function(zn,Ja){var co=Ja.def(zn.ELEMENTS,".vertCount-",zn.OFFSET);return co}):En(function(zn,Ja){return Ja.def(zn.ELEMENTS,".vertCount")});var Bi=En(function(){return-1});return Bi}else{var Gi=new ei(ht.thisDep||Ur.thisDep,ht.contextDep||Ur.contextDep,ht.propDep||Ur.propDep,function(zn,Ja){var co=zn.ELEMENTS;return zn.OFFSET?Ja.def(co,"?",co,".vertCount-",zn.OFFSET,":-1"):Ja.def(co,"?",co,".vertCount:-1")});return Gi}else if(Rt){var sn=new ei(Dt.thisDep,Dt.contextDep,Dt.propDep,function(zn,Ja){return Ja.def(zn.shared.vao,".currentVAO?",zn.shared.vao,".currentVAO.count:-1")});return sn}return null}var fi=ur(),Ti=Di(),gn=br(Ir,!1);return{elements:ht,primitive:fi,count:Ti,instances:gn,offset:Ur,vao:Dt,vaoActive:Rt,elementsActive:yt,static:Ot}}function Ml(Ve,Qe){var at=Ve.static,Ct=Ve.dynamic,Ot={};return hi.forEach(function(Rt){var Bt=Ji(Rt);function Dt(yt,Pt){if(Rt in at){var ht=yt(at[Rt]);Ot[Bt]=En(function(){return ht})}else if(Rt in Ct){var ur=Ct[Rt];Ot[Bt]=Un(ur,function(br,Ur){return Pt(br,Ur,br.invoke(Ur,ur))})}}switch(Rt){case Cu:case Ho:case ws:case Vc:case va:case B:case Uc:case Ac:case Ua:case rs:return Dt(function(yt){return yt},function(yt,Pt,ht){return ht});case no:return Dt(function(yt){return Zr[yt]},function(yt,Pt,ht){var ur=yt.constants.compareFuncs;return Pt.def(ur,"[",ht,"]")});case ys:return Dt(function(yt){return yt},function(yt,Pt,ht){var ur=Pt.def("+",ht,"[0]"),br=Pt.def("+",ht,"[1]");return[ur,br]});case Ls:return Dt(function(yt){var Pt="srcRGB"in yt?yt.srcRGB:yt.src,ht="srcAlpha"in yt?yt.srcAlpha:yt.src,ur="dstRGB"in yt?yt.dstRGB:yt.dst,br="dstAlpha"in yt?yt.dstAlpha:yt.dst;return[bi[Pt],bi[ur],bi[ht],bi[br]]},function(yt,Pt,ht){var ur=yt.constants.blendFuncs;function br(Ci,Bi){var Gi=Pt.def('"',Ci,Bi,'" in ',ht,"?",ht,".",Ci,Bi,":",ht,".",Ci);return Gi}var Ur=br("src","RGB"),Di=br("dst","RGB"),fi=Pt.def(ur,"[",Ur,"]"),Ti=Pt.def(ur,"[",br("src","Alpha"),"]"),gn=Pt.def(ur,"[",Di,"]"),rn=Pt.def(ur,"[",br("dst","Alpha"),"]");return[fi,gn,Ti,rn]});case Ws:return Dt(function(yt){if(typeof yt=="string")return[xi[yt],xi[yt]];if(typeof yt=="object")return[xi[yt.rgb],xi[yt.alpha]]},function(yt,Pt,ht){var ur=yt.constants.blendEquations,br=Pt.def(),Ur=Pt.def(),Di=yt.cond("typeof ",ht,'==="string"');return Di.then(br,"=",Ur,"=",ur,"[",ht,"];"),Di.else(br,"=",ur,"[",ht,".rgb];",Ur,"=",ur,"[",ht,".alpha];"),Pt(Di),[br,Ur]});case ml:return Dt(function(yt){return M(4,function(Pt){return+yt[Pt]})},function(yt,Pt,ht){return M(4,function(ur){return Pt.def("+",ht,"[",ur,"]")})});case hc:return Dt(function(yt){return yt|0},function(yt,Pt,ht){return Pt.def(ht,"|0")});case Ku:return Dt(function(yt){var Pt=yt.cmp||"keep",ht=yt.ref||0,ur="mask"in yt?yt.mask:-1;return[Zr[Pt],ht,ur]},function(yt,Pt,ht){var ur=yt.constants.compareFuncs,br=Pt.def('"cmp" in ',ht,"?",ur,"[",ht,".cmp]",":",nt),Ur=Pt.def(ht,".ref|0"),Di=Pt.def('"mask" in ',ht,"?",ht,".mask|0:-1");return[br,Ur,Di]});case ue:case w:return Dt(function(yt){var Pt=yt.fail||"keep",ht=yt.zfail||"keep",ur=yt.zpass||"keep";return[Rt===w?se:X,ai[Pt],ai[ht],ai[ur]]},function(yt,Pt,ht){var ur=yt.constants.stencilOps;function br(Ur){return Pt.def('"',Ur,'" in ',ht,"?",ur,"[",ht,".",Ur,"]:",nt)}return[Rt===w?se:X,br("fail"),br("zfail"),br("zpass")]});case xu:return Dt(function(yt){var Pt=yt.factor|0,ht=yt.units|0;return[Pt,ht]},function(yt,Pt,ht){var ur=Pt.def(ht,".factor|0"),br=Pt.def(ht,".units|0");return[ur,br]});case Yu:return Dt(function(yt){var Pt=0;return yt==="front"?Pt=X:yt==="back"&&(Pt=se),Pt},function(yt,Pt,ht){return Pt.def(ht,'==="front"?',X,":",se)});case pu:return Dt(function(yt){return yt},function(yt,Pt,ht){return ht});case Nc:return Dt(function(yt){return gi[yt]},function(yt,Pt,ht){return Pt.def(ht+'==="cw"?'+Te+":"+Ne)});case $l:return Dt(function(yt){return yt.map(function(Pt){return!!Pt})},function(yt,Pt,ht){return M(4,function(ur){return"!!"+ht+"["+ur+"]"})});case oo:return Dt(function(yt){var Pt="value"in yt?yt.value:1,ht=!!yt.invert;return[Pt,ht]},function(yt,Pt,ht){var ur=Pt.def('"value" in ',ht,"?+",ht,".value:1"),br=Pt.def("!!",ht,".invert");return[ur,br]})}}),Ot}function zo(Ve,Qe){var at=Ve.static,Ct=Ve.dynamic,Ot={};return Object.keys(at).forEach(function(Rt){var Bt=at[Rt],Dt;if(typeof Bt=="number"||typeof Bt=="boolean")Dt=En(function(){return Bt});else if(typeof Bt=="function"){var yt=Bt._reglType;yt==="texture2d"||yt==="textureCube"?Dt=En(function(Pt){return Pt.link(Bt)}):(yt==="framebuffer"||yt==="framebufferCube")&&(Dt=En(function(Pt){return Pt.link(Bt.color[0])}))}else Mn(Bt)&&(Dt=En(function(Pt){var ht=Pt.global.def("[",M(Bt.length,function(ur){return Bt[ur]}),"]");return ht}));Dt.value=Bt,Ot[Rt]=Dt}),Object.keys(Ct).forEach(function(Rt){var Bt=Ct[Rt];Ot[Rt]=Un(Bt,function(Dt,yt){return Dt.invoke(yt,Bt)})}),Ot}function Qs(Ve,Qe){var at=Ve.static,Ct=Ve.dynamic,Ot={};return Object.keys(at).forEach(function(Rt){var Bt=at[Rt],Dt=bt.id(Rt),yt=new Yr;if(Ii(Bt))yt.state=La,yt.buffer=jr.getBuffer(jr.create(Bt,Sr,!1,!0)),yt.type=0;else{var Pt=jr.getBuffer(Bt);if(Pt)yt.state=La,yt.buffer=Pt,yt.type=0;else if("constant"in Bt){var ht=Bt.constant;yt.buffer="null",yt.state=Na,typeof ht=="number"?yt.x=ht:Ca.forEach(function(gn,rn){rn<ht.length&&(yt[gn]=ht[rn])})}else{Ii(Bt.buffer)?Pt=jr.getBuffer(jr.create(Bt.buffer,Sr,!1,!0)):Pt=jr.getBuffer(Bt.buffer);var ur=Bt.offset|0,br=Bt.stride|0,Ur=Bt.size|0,Di=!!Bt.normalized,fi=0;"type"in Bt&&(fi=ji[Bt.type]);var Ti=Bt.divisor|0;yt.buffer=Pt,yt.state=La,yt.size=Ur,yt.normalized=Di,yt.type=fi||Pt.dtype,yt.offset=ur,yt.stride=br,yt.divisor=Ti}}Ot[Rt]=En(function(gn,rn){var Ci=gn.attribCache;if(Dt in Ci)return Ci[Dt];var Bi={isStream:!1};return Object.keys(yt).forEach(function(Gi){Bi[Gi]=yt[Gi]}),yt.buffer&&(Bi.buffer=gn.link(yt.buffer),Bi.type=Bi.type||Bi.buffer+".dtype"),Ci[Dt]=Bi,Bi})}),Object.keys(Ct).forEach(function(Rt){var Bt=Ct[Rt];function Dt(yt,Pt){var ht=yt.invoke(Pt,Bt),ur=yt.shared,br=yt.constants,Ur=ur.isBufferArgs,Di=ur.buffer,fi={isStream:Pt.def(!1)},Ti=new Yr;Ti.state=La,Object.keys(Ti).forEach(function(Bi){fi[Bi]=Pt.def(""+Ti[Bi])});var gn=fi.buffer,rn=fi.type;Pt("if(",Ur,"(",ht,")){",fi.isStream,"=true;",gn,"=",Di,".createStream(",Sr,",",ht,");",rn,"=",gn,".dtype;","}else{",gn,"=",Di,".getBuffer(",ht,");","if(",gn,"){",rn,"=",gn,".dtype;",'}else if("constant" in ',ht,"){",fi.state,"=",Na,";","if(typeof "+ht+'.constant === "number"){',fi[Ca[0]],"=",ht,".constant;",Ca.slice(1).map(function(Bi){return fi[Bi]}).join("="),"=0;","}else{",Ca.map(function(Bi,Gi){return fi[Bi]+"="+ht+".constant.length>"+Gi+"?"+ht+".constant["+Gi+"]:0;"}).join(""),"}}else{","if(",Ur,"(",ht,".buffer)){",gn,"=",Di,".createStream(",Sr,",",ht,".buffer);","}else{",gn,"=",Di,".getBuffer(",ht,".buffer);","}",rn,'="type" in ',ht,"?",br.glTypes,"[",ht,".type]:",gn,".dtype;",fi.normalized,"=!!",ht,".normalized;");function Ci(Bi){Pt(fi[Bi],"=",ht,".",Bi,"|0;")}return Ci("size"),Ci("offset"),Ci("stride"),Ci("divisor"),Pt("}}"),Pt.exit("if(",fi.isStream,"){",Di,".destroyStream(",gn,");","}"),fi}Ot[Rt]=Un(Bt,Dt)}),Ot}function al(Ve){var Qe=Ve.static,at=Ve.dynamic,Ct={};return Object.keys(Qe).forEach(function(Ot){var Rt=Qe[Ot];Ct[Ot]=En(function(Bt,Dt){return typeof Rt=="number"||typeof Rt=="boolean"?""+Rt:Bt.link(Rt)})}),Object.keys(at).forEach(function(Ot){var Rt=at[Ot];Ct[Ot]=Un(Rt,function(Bt,Dt){return Bt.invoke(Dt,Rt)})}),Ct}function Vl(Ve,Qe,at,Ct,Ot){var Rt=Ve.static,Bt=Ve.dynamic,Dt=is(Ve,Qe),yt=oa(Ve,Ot),Pt=ba(Ve,yt,Ot),ht=Va(Ve,Ot),ur=Ml(Ve,Ot),br=Zs(Ve,Ot,Dt);function Ur(Ci){var Bi=Pt[Ci];Bi&&(ur[Ci]=Bi)}Ur(ee),Ur(Ji(Q));var Di=Object.keys(ur).length>0,fi={framebuffer:yt,draw:ht,shader:br,state:ur,dirty:Di,scopeVAO:null,drawVAO:null,useVAO:!1,attributes:{}};if(fi.profile=ta(Ve,Ot),fi.uniforms=zo(at,Ot),fi.drawVAO=fi.scopeVAO=ht.vao,!fi.drawVAO&&br.program&&!Dt&&zt.angle_instanced_arrays&&ht.static.elements){var Ti=!0,gn=br.program.attributes.map(function(Ci){var Bi=Qe.static[Ci];return Ti=Ti&&!!Bi,Bi});if(Ti&&gn.length>0){var rn=qi.getVAO(qi.createVAO({attributes:gn,elements:ht.static.elements}));fi.drawVAO=new ei(null,null,null,function(Ci,Bi){return Ci.link(rn)}),fi.useVAO=!0}}return Dt?fi.useVAO=!0:fi.attributes=Qs(Qe,Ot),fi.context=al(Ct,Ot),fi}function ss(Ve,Qe,at){var Ct=Ve.shared,Ot=Ct.context,Rt=Ve.scope();Object.keys(at).forEach(function(Bt){Qe.save(Ot,"."+Bt);var Dt=at[Bt],yt=Dt.append(Ve,Qe);Array.isArray(yt)?Rt(Ot,".",Bt,"=[",yt.join(),"];"):Rt(Ot,".",Bt,"=",yt,";")}),Qe(Rt)}function Vs(Ve,Qe,at,Ct){var Ot=Ve.shared,Rt=Ot.gl,Bt=Ot.framebuffer,Dt;ci&&(Dt=Qe.def(Ot.extensions,".webgl_draw_buffers"));var yt=Ve.constants,Pt=yt.drawBuffer,ht=yt.backBuffer,ur;at?ur=at.append(Ve,Qe):ur=Qe.def(Bt,".next"),Ct||Qe("if(",ur,"!==",Bt,".cur){"),Qe("if(",ur,"){",Rt,".bindFramebuffer(",qr,",",ur,".framebuffer);"),ci&&Qe(Dt,".drawBuffersWEBGL(",Pt,"[",ur,".colorAttachments.length]);"),Qe("}else{",Rt,".bindFramebuffer(",qr,",null);"),ci&&Qe(Dt,".drawBuffersWEBGL(",ht,");"),Qe("}",Bt,".cur=",ur,";"),Ct||Qe("}")}function Ys(Ve,Qe,at){var Ct=Ve.shared,Ot=Ct.gl,Rt=Ve.current,Bt=Ve.next,Dt=Ct.current,yt=Ct.next,Pt=Ve.cond(Dt,".dirty");hi.forEach(function(ht){var ur=Ji(ht);if(!(ur in at.state)){var br,Ur;if(ur in Bt){br=Bt[ur],Ur=Rt[ur];var Di=M(Zi[ur].length,function(Ti){return Pt.def(br,"[",Ti,"]")});Pt(Ve.cond(Di.map(function(Ti,gn){return Ti+"!=="+Ur+"["+gn+"]"}).join("||")).then(Ot,".",mn[ur],"(",Di,");",Di.map(function(Ti,gn){return Ur+"["+gn+"]="+Ti}).join(";"),";"))}else{br=Pt.def(yt,".",ur);var fi=Ve.cond(br,"!==",Dt,".",ur);Pt(fi),ur in li?fi(Ve.cond(br).then(Ot,".enable(",li[ur],");").else(Ot,".disable(",li[ur],");"),Dt,".",ur,"=",br,";"):fi(Ot,".",mn[ur],"(",br,");",Dt,".",ur,"=",br,";")}}}),Object.keys(at.state).length===0&&Pt(Dt,".dirty=false;"),Qe(Pt)}function wa(Ve,Qe,at,Ct){var Ot=Ve.shared,Rt=Ve.current,Bt=Ot.current,Dt=Ot.gl,yt;Si(Object.keys(at)).forEach(function(Pt){var ht=at[Pt];if(!(Ct&&!Ct(ht))){var ur=ht.append(Ve,Qe);if(li[Pt]){var br=li[Pt];Ln(ht)?(yt=Ve.link(ur,{stable:!0}),Qe(Ve.cond(yt).then(Dt,".enable(",br,");").else(Dt,".disable(",br,");")),Qe(Bt,".",Pt,"=",yt,";")):(Qe(Ve.cond(ur).then(Dt,".enable(",br,");").else(Dt,".disable(",br,");")),Qe(Bt,".",Pt,"=",ur,";"))}else if(Mn(ur)){var Ur=Rt[Pt];Qe(Dt,".",mn[Pt],"(",ur,");",ur.map(function(Di,fi){return Ur+"["+fi+"]="+Di}).join(";"),";")}else Ln(ht)?(yt=Ve.link(ur,{stable:!0}),Qe(Dt,".",mn[Pt],"(",yt,");",Bt,".",Pt,"=",yt,";")):Qe(Dt,".",mn[Pt],"(",ur,");",Bt,".",Pt,"=",ur,";")}})}function ol(Ve,Qe){Ri&&(Ve.instancing=Qe.def(Ve.shared.extensions,".angle_instanced_arrays"))}function io(Ve,Qe,at,Ct,Ot){var Rt=Ve.shared,Bt=Ve.stats,Dt=Rt.current,yt=Rt.timer,Pt=at.profile;function ht(){return typeof performance=="undefined"?"Date.now()":"performance.now()"}var ur,br;function Ur(Ci){ur=Qe.def(),Ci(ur,"=",ht(),";"),typeof Ot=="string"?Ci(Bt,".count+=",Ot,";"):Ci(Bt,".count++;"),Wi&&(Ct?(br=Qe.def(),Ci(br,"=",yt,".getNumPendingQueries();")):Ci(yt,".beginQuery(",Bt,");"))}function Di(Ci){Ci(Bt,".cpuTime+=",ht(),"-",ur,";"),Wi&&(Ct?Ci(yt,".pushScopeStats(",br,",",yt,".getNumPendingQueries(),",Bt,");"):Ci(yt,".endQuery();"))}function fi(Ci){var Bi=Qe.def(Dt,".profile");Qe(Dt,".profile=",Ci,";"),Qe.exit(Dt,".profile=",Bi,";")}var Ti;if(Pt){if(Ln(Pt)){Pt.enable?(Ur(Qe),Di(Qe.exit),fi("true")):fi("false");return}Ti=Pt.append(Ve,Qe),fi(Ti)}else Ti=Qe.def(Dt,".profile");var gn=Ve.block();Ur(gn),Qe("if(",Ti,"){",gn,"}");var rn=Ve.block();Di(rn),Qe.exit("if(",Ti,"){",rn,"}")}function Y(Ve,Qe,at,Ct,Ot){var Rt=Ve.shared;function Bt(yt){switch(yt){case Co:case Ps:case hl:return 2;case Qa:case Ts:case Ul:return 3;case mo:case wo:case Lu:return 4;default:return 1}}function Dt(yt,Pt,ht){var ur=Rt.gl,br=Qe.def(yt,".location"),Ur=Qe.def(Rt.attributes,"[",br,"]"),Di=ht.state,fi=ht.buffer,Ti=[ht.x,ht.y,ht.z,ht.w],gn=["buffer","normalized","offset","stride"];function rn(){Qe("if(!",Ur,".buffer){",ur,".enableVertexAttribArray(",br,");}");var Bi=ht.type,Gi;if(ht.size?Gi=Qe.def(ht.size,"||",Pt):Gi=Pt,Qe("if(",Ur,".type!==",Bi,"||",Ur,".size!==",Gi,"||",gn.map(function(zn){return Ur+"."+zn+"!=="+ht[zn]}).join("||"),"){",ur,".bindBuffer(",Sr,",",fi,".buffer);",ur,".vertexAttribPointer(",[br,Gi,Bi,ht.normalized,ht.stride,ht.offset],");",Ur,".type=",Bi,";",Ur,".size=",Gi,";",gn.map(function(zn){return Ur+"."+zn+"="+ht[zn]+";"}).join(""),"}"),Ri){var sn=ht.divisor;Qe("if(",Ur,".divisor!==",sn,"){",Ve.instancing,".vertexAttribDivisorANGLE(",[br,sn],");",Ur,".divisor=",sn,";}")}}function Ci(){Qe("if(",Ur,".buffer){",ur,".disableVertexAttribArray(",br,");",Ur,".buffer=null;","}if(",Ca.map(function(Bi,Gi){return Ur+"."+Bi+"!=="+Ti[Gi]}).join("||"),"){",ur,".vertexAttrib4f(",br,",",Ti,");",Ca.map(function(Bi,Gi){return Ur+"."+Bi+"="+Ti[Gi]+";"}).join(""),"}")}Di===La?rn():Di===Na?Ci():(Qe("if(",Di,"===",La,"){"),rn(),Qe("}else{"),Ci(),Qe("}"))}Ct.forEach(function(yt){var Pt=yt.name,ht=at.attributes[Pt],ur;if(ht){if(!Ot(ht))return;ur=ht.append(Ve,Qe)}else{if(!Ot(ia))return;var br=Ve.scopeAttrib(Pt);ur={},Object.keys(new Yr).forEach(function(Ur){ur[Ur]=Qe.def(br,".",Ur)})}Dt(Ve.link(yt),Bt(yt.info.type),ur)})}function D(Ve,Qe,at,Ct,Ot,Rt){for(var Bt=Ve.shared,Dt=Bt.gl,yt,Pt=0;Pt<Ct.length;++Pt){var ht=Ct[Pt],ur=ht.name,br=ht.info.type,Ur=at.uniforms[ur],Di=Ve.link(ht),fi=Di+".location",Ti;if(Ur){if(!Ot(Ur))continue;if(Ln(Ur)){var gn=Ur.value;if(br===dc||br===Tl){var rn=Ve.link(gn._texture||gn.color[0]._texture);Qe(Dt,".uniform1i(",fi,",",rn+".bind());"),Qe.exit(rn,".unbind();")}else if(br===au||br===Js||br===Ql){var Ci=Ve.global.def("new Float32Array(["+Array.prototype.slice.call(gn)+"])"),Bi=2;br===Js?Bi=3:br===Ql&&(Bi=4),Qe(Dt,".uniformMatrix",Bi,"fv(",fi,",false,",Ci,");")}else{switch(br){case $a:yt="1f";break;case Co:yt="2f";break;case Qa:yt="3f";break;case mo:yt="4f";break;case To:yt="1i";break;case Bo:yt="1i";break;case hl:yt="2i";break;case Ps:yt="2i";break;case Ul:yt="3i";break;case Ts:yt="3i";break;case Lu:yt="4i";break;case wo:yt="4i";break}Qe(Dt,".uniform",yt,"(",fi,",",Mn(gn)?Array.prototype.slice.call(gn):gn,");")}continue}else Ti=Ur.append(Ve,Qe)}else{if(!Ot(ia))continue;Ti=Qe.def(Bt.uniforms,"[",bt.id(ur),"]")}br===dc?Qe("if(",Ti,"&&",Ti,'._reglType==="framebuffer"){',Ti,"=",Ti,".color[0];","}"):br===Tl&&Qe("if(",Ti,"&&",Ti,'._reglType==="framebufferCube"){',Ti,"=",Ti,".color[0];","}");var Gi=1;switch(br){case dc:case Tl:var sn=Qe.def(Ti,"._texture");Qe(Dt,".uniform1i(",fi,",",sn,".bind());"),Qe.exit(sn,".unbind();");continue;case Bo:case To:yt="1i";break;case Ps:case hl:yt="2i",Gi=2;break;case Ts:case Ul:yt="3i",Gi=3;break;case wo:case Lu:yt="4i",Gi=4;break;case $a:yt="1f";break;case Co:yt="2f",Gi=2;break;case Qa:yt="3f",Gi=3;break;case mo:yt="4f",Gi=4;break;case au:yt="Matrix2fv";break;case Js:yt="Matrix3fv";break;case Ql:yt="Matrix4fv";break}if(yt.charAt(0)==="M"){Qe(Dt,".uniform",yt,"(",fi,",");var zn=Math.pow(br-au+2,2),Ja=Ve.global.def("new Float32Array(",zn,")");Array.isArray(Ti)?Qe("false,(",M(zn,function(ms){return Ja+"["+ms+"]="+Ti[ms]}),",",Ja,")"):Qe("false,(Array.isArray(",Ti,")||",Ti," instanceof Float32Array)?",Ti,":(",M(zn,function(ms){return Ja+"["+ms+"]="+Ti+"["+ms+"]"}),",",Ja,")"),Qe(");")}else if(Gi>1){for(var co=[],ts=[],so=0;so<Gi;++so)Array.isArray(Ti)?ts.push(Ti[so]):ts.push(Qe.def(Ti+"["+so+"]")),Rt&&co.push(Qe.def());Rt&&Qe("if(!",Ve.batchId,"||",co.map(function(ms,ou){return ms+"!=="+ts[ou]}).join("||"),"){",co.map(function(ms,ou){return ms+"="+ts[ou]+";"}).join("")),Qe(Dt,".uniform",yt,"(",fi,",",ts.join(","),");"),Rt&&Qe("}")}else{if(Rt){var Zo=Qe.def();Qe("if(!",Ve.batchId,"||",Zo,"!==",Ti,"){",Zo,"=",Ti,";")}Qe(Dt,".uniform",yt,"(",fi,",",Ti,");"),Rt&&Qe("}")}}}function J(Ve,Qe,at,Ct){var Ot=Ve.shared,Rt=Ot.gl,Bt=Ot.draw,Dt=Ct.draw;function yt(){var Gi=Dt.elements,sn,zn=Qe;return Gi?((Gi.contextDep&&Ct.contextDynamic||Gi.propDep)&&(zn=at),sn=Gi.append(Ve,zn),Dt.elementsActive&&zn("if("+sn+")"+Rt+".bindBuffer("+Or+","+sn+".buffer.buffer);")):(sn=zn.def(),zn(sn,"=",Bt,".",Tt,";","if(",sn,"){",Rt,".bindBuffer(",Or,",",sn,".buffer.buffer);}","else if(",Ot.vao,".currentVAO){",sn,"=",Ve.shared.elements+".getElements("+Ot.vao,".currentVAO.elements);",an?"":"if("+sn+")"+Rt+".bindBuffer("+Or+","+sn+".buffer.buffer);","}")),sn}function Pt(){var Gi=Dt.count,sn,zn=Qe;return Gi?((Gi.contextDep&&Ct.contextDynamic||Gi.propDep)&&(zn=at),sn=Gi.append(Ve,zn)):sn=zn.def(Bt,".",Kt),sn}var ht=yt();function ur(Gi){var sn=Dt[Gi];return sn?sn.contextDep&&Ct.contextDynamic||sn.propDep?sn.append(Ve,at):sn.append(Ve,Qe):Qe.def(Bt,".",Gi)}var br=ur(Yt),Ur=ur(xr),Di=Pt();if(typeof Di=="number"){if(Di===0)return}else at("if(",Di,"){"),at.exit("}");var fi,Ti;Ri&&(fi=ur(Ir),Ti=Ve.instancing);var gn=ht+".type",rn=Dt.elements&&Ln(Dt.elements)&&!Dt.vaoActive;function Ci(){function Gi(){at(Ti,".drawElementsInstancedANGLE(",[br,Di,gn,Ur+"<<(("+gn+"-"+Ra+")>>1)",fi],");")}function sn(){at(Ti,".drawArraysInstancedANGLE(",[br,Ur,Di,fi],");")}ht&&ht!=="null"?rn?Gi():(at("if(",ht,"){"),Gi(),at("}else{"),sn(),at("}")):sn()}function Bi(){function Gi(){at(Rt+".drawElements("+[br,Di,gn,Ur+"<<(("+gn+"-"+Ra+")>>1)"]+");")}function sn(){at(Rt+".drawArrays("+[br,Ur,Di]+");")}ht&&ht!=="null"?rn?Gi():(at("if(",ht,"){"),Gi(),at("}else{"),sn(),at("}")):sn()}Ri&&(typeof fi!="number"||fi>=0)?typeof fi=="string"?(at("if(",fi,">0){"),Ci(),at("}else if(",fi,"<0){"),Bi(),at("}")):Ci():Bi()}function q(Ve,Qe,at,Ct,Ot){var Rt=kn(),Bt=Rt.proc("body",Ot);return Ri&&(Rt.instancing=Bt.def(Rt.shared.extensions,".angle_instanced_arrays")),Ve(Rt,Bt,at,Ct),Rt.compile().body}function K(Ve,Qe,at,Ct){ol(Ve,Qe),at.useVAO?at.drawVAO?Qe(Ve.shared.vao,".setVAO(",at.drawVAO.append(Ve,Qe),");"):Qe(Ve.shared.vao,".setVAO(",Ve.shared.vao,".targetVAO);"):(Qe(Ve.shared.vao,".setVAO(null);"),Y(Ve,Qe,at,Ct.attributes,function(){return!0})),D(Ve,Qe,at,Ct.uniforms,function(){return!0},!1),J(Ve,Qe,Qe,at)}function de(Ve,Qe){var at=Ve.proc("draw",1);ol(Ve,at),ss(Ve,at,Qe.context),Vs(Ve,at,Qe.framebuffer),Ys(Ve,at,Qe),wa(Ve,at,Qe.state),io(Ve,at,Qe,!1,!0);var Ct=Qe.shader.progVar.append(Ve,at);if(at(Ve.shared.gl,".useProgram(",Ct,".program);"),Qe.shader.program)K(Ve,at,Qe,Qe.shader.program);else{at(Ve.shared.vao,".setVAO(null);");var Ot=Ve.global.def("{}"),Rt=at.def(Ct,".id"),Bt=at.def(Ot,"[",Rt,"]");at(Ve.cond(Bt).then(Bt,".call(this,a0);").else(Bt,"=",Ot,"[",Rt,"]=",Ve.link(function(Dt){return q(K,Ve,Qe,Dt,1)}),"(",Ct,");",Bt,".call(this,a0);"))}Object.keys(Qe.state).length>0&&at(Ve.shared.current,".dirty=true;"),Ve.shared.vao&&at(Ve.shared.vao,".setVAO(null);")}function ne(Ve,Qe,at,Ct){Ve.batchId="a1",ol(Ve,Qe);function Ot(){return!0}Y(Ve,Qe,at,Ct.attributes,Ot),D(Ve,Qe,at,Ct.uniforms,Ot,!1),J(Ve,Qe,Qe,at)}function we(Ve,Qe,at,Ct){ol(Ve,Qe);var Ot=at.contextDep,Rt=Qe.def(),Bt="a0",Dt="a1",yt=Qe.def();Ve.shared.props=yt,Ve.batchId=Rt;var Pt=Ve.scope(),ht=Ve.scope();Qe(Pt.entry,"for(",Rt,"=0;",Rt,"<",Dt,";++",Rt,"){",yt,"=",Bt,"[",Rt,"];",ht,"}",Pt.exit);function ur(gn){return gn.contextDep&&Ot||gn.propDep}function br(gn){return!ur(gn)}if(at.needsContext&&ss(Ve,ht,at.context),at.needsFramebuffer&&Vs(Ve,ht,at.framebuffer),wa(Ve,ht,at.state,ur),at.profile&&ur(at.profile)&&io(Ve,ht,at,!1,!0),Ct)at.useVAO?at.drawVAO?ur(at.drawVAO)?ht(Ve.shared.vao,".setVAO(",at.drawVAO.append(Ve,ht),");"):Pt(Ve.shared.vao,".setVAO(",at.drawVAO.append(Ve,Pt),");"):Pt(Ve.shared.vao,".setVAO(",Ve.shared.vao,".targetVAO);"):(Pt(Ve.shared.vao,".setVAO(null);"),Y(Ve,Pt,at,Ct.attributes,br),Y(Ve,ht,at,Ct.attributes,ur)),D(Ve,Pt,at,Ct.uniforms,br,!1),D(Ve,ht,at,Ct.uniforms,ur,!0),J(Ve,Pt,ht,at);else{var Ur=Ve.global.def("{}"),Di=at.shader.progVar.append(Ve,ht),fi=ht.def(Di,".id"),Ti=ht.def(Ur,"[",fi,"]");ht(Ve.shared.gl,".useProgram(",Di,".program);","if(!",Ti,"){",Ti,"=",Ur,"[",fi,"]=",Ve.link(function(gn){return q(ne,Ve,at,gn,2)}),"(",Di,");}",Ti,".call(this,a0[",Rt,"],",Rt,");")}}function Ue(Ve,Qe){var at=Ve.proc("batch",2);Ve.batchId="0",ol(Ve,at);var Ct=!1,Ot=!0;Object.keys(Qe.context).forEach(function(Ur){Ct=Ct||Qe.context[Ur].propDep}),Ct||(ss(Ve,at,Qe.context),Ot=!1);var Rt=Qe.framebuffer,Bt=!1;Rt?(Rt.propDep?Ct=Bt=!0:Rt.contextDep&&Ct&&(Bt=!0),Bt||Vs(Ve,at,Rt)):Vs(Ve,at,null),Qe.state.viewport&&Qe.state.viewport.propDep&&(Ct=!0);function Dt(Ur){return Ur.contextDep&&Ct||Ur.propDep}Ys(Ve,at,Qe),wa(Ve,at,Qe.state,function(Ur){return!Dt(Ur)}),(!Qe.profile||!Dt(Qe.profile))&&io(Ve,at,Qe,!1,"a1"),Qe.contextDep=Ct,Qe.needsContext=Ot,Qe.needsFramebuffer=Bt;var yt=Qe.shader.progVar;if(yt.contextDep&&Ct||yt.propDep)we(Ve,at,Qe,null);else{var Pt=yt.append(Ve,at);if(at(Ve.shared.gl,".useProgram(",Pt,".program);"),Qe.shader.program)we(Ve,at,Qe,Qe.shader.program);else{at(Ve.shared.vao,".setVAO(null);");var ht=Ve.global.def("{}"),ur=at.def(Pt,".id"),br=at.def(ht,"[",ur,"]");at(Ve.cond(br).then(br,".call(this,a0,a1);").else(br,"=",ht,"[",ur,"]=",Ve.link(function(Ur){return q(we,Ve,Qe,Ur,2)}),"(",Pt,");",br,".call(this,a0,a1);"))}}Object.keys(Qe.state).length>0&&at(Ve.shared.current,".dirty=true;"),Ve.shared.vao&&at(Ve.shared.vao,".setVAO(null);")}function ft(Ve,Qe){var at=Ve.proc("scope",3);Ve.batchId="a2";var Ct=Ve.shared,Ot=Ct.current;if(ss(Ve,at,Qe.context),Qe.framebuffer&&Qe.framebuffer.append(Ve,at),Si(Object.keys(Qe.state)).forEach(function(Dt){var yt=Qe.state[Dt],Pt=yt.append(Ve,at);Mn(Pt)?Pt.forEach(function(ht,ur){pn(ht)?at.set(Ve.next[Dt],"["+ur+"]",ht):at.set(Ve.next[Dt],"["+ur+"]",Ve.link(ht,{stable:!0}))}):Ln(yt)?at.set(Ct.next,"."+Dt,Ve.link(Pt,{stable:!0})):at.set(Ct.next,"."+Dt,Pt)}),io(Ve,at,Qe,!0,!0),[Tt,xr,Kt,Ir,Yt].forEach(function(Dt){var yt=Qe.draw[Dt];if(yt){var Pt=yt.append(Ve,at);pn(Pt)?at.set(Ct.draw,"."+Dt,Pt):at.set(Ct.draw,"."+Dt,Ve.link(Pt),{stable:!0})}}),Object.keys(Qe.uniforms).forEach(function(Dt){var yt=Qe.uniforms[Dt].append(Ve,at);Array.isArray(yt)&&(yt="["+yt.map(function(Pt){return pn(Pt)?Pt:Ve.link(Pt,{stable:!0})})+"]"),at.set(Ct.uniforms,"["+Ve.link(bt.id(Dt),{stable:!0})+"]",yt)}),Object.keys(Qe.attributes).forEach(function(Dt){var yt=Qe.attributes[Dt].append(Ve,at),Pt=Ve.scopeAttrib(Dt);Object.keys(new Yr).forEach(function(ht){at.set(Pt,"."+ht,yt[ht])})}),Qe.scopeVAO){var Rt=Qe.scopeVAO.append(Ve,at);pn(Rt)?at.set(Ct.vao,".targetVAO",Rt):at.set(Ct.vao,".targetVAO",Ve.link(Rt,{stable:!0}))}function Bt(Dt){var yt=Qe.shader[Dt];if(yt){var Pt=yt.append(Ve,at);pn(Pt)?at.set(Ct.shader,"."+Dt,Pt):at.set(Ct.shader,"."+Dt,Ve.link(Pt,{stable:!0}))}}Bt(Xe),Bt(ot),Object.keys(Qe.state).length>0&&(at(Ot,".dirty=true;"),at.exit(Ot,".dirty=true;")),at("a1(",Ve.shared.context,",a0,",Ve.batchId,");")}function Xt(Ve){if(!(typeof Ve!="object"||Mn(Ve))){for(var Qe=Object.keys(Ve),at=0;at<Qe.length;++at)if(h.isDynamic(Ve[Qe[at]]))return!0;return!1}}function hr(Ve,Qe,at){var Ct=Qe.static[at];if(!Ct||!Xt(Ct))return;var Ot=Ve.global,Rt=Object.keys(Ct),Bt=!1,Dt=!1,yt=!1,Pt=Ve.global.def("{}");Rt.forEach(function(ur){var br=Ct[ur];if(h.isDynamic(br)){typeof br=="function"&&(br=Ct[ur]=h.unbox(br));var Ur=Un(br,null);Bt=Bt||Ur.thisDep,yt=yt||Ur.propDep,Dt=Dt||Ur.contextDep}else{switch(Ot(Pt,".",ur,"="),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(ur,br){Rt.forEach(function(Ur){var Di=Ct[Ur];if(h.isDynamic(Di)){var fi=ur.invoke(br,Di);br(Pt,".",Ur,"=",fi,";")}})}Qe.dynamic[at]=new h.DynamicVariable(Xo,{thisDep:Bt,contextDep:Dt,propDep:yt,ref:Pt,append:ht}),delete Qe.static[at]}function qt(Ve,Qe,at,Ct,Ot){var Rt=kn();Rt.stats=Rt.link(Ot),Object.keys(Qe.static).forEach(function(Dt){hr(Rt,Qe,Dt)}),dr.forEach(function(Dt){hr(Rt,Ve,Dt)});var Bt=Vl(Ve,Qe,at,Ct,Rt);return Bt.shader.program&&(Bt.shader.program.attributes.sort(function(Dt,yt){return Dt.name<yt.name?-1:1}),Bt.shader.program.uniforms.sort(function(Dt,yt){return Dt.name<yt.name?-1:1})),de(Rt,Bt),ft(Rt,Bt),Ue(Rt,Bt),e(Rt.compile(),{destroy:function(){Bt.shader.program.destroy()}})}return{next:Bn,current:Zi,procs:function(){var Ve=kn(),Qe=Ve.proc("poll"),at=Ve.proc("refresh"),Ct=Ve.block();Qe(Ct),at(Ct);var Ot=Ve.shared,Rt=Ot.gl,Bt=Ot.next,Dt=Ot.current;Ct(Dt,".dirty=false;"),Vs(Ve,Qe),Vs(Ve,at,null,!0);var yt;Ri&&(yt=Ve.link(Ri)),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),ur=Ve.cond(ht,".buffer");ur.then(Rt,".enableVertexAttribArray(i);",Rt,".bindBuffer(",Sr,",",ht,".buffer.buffer);",Rt,".vertexAttribPointer(i,",ht,".size,",ht,".type,",ht,".normalized,",ht,".stride,",ht,".offset);").else(Rt,".disableVertexAttribArray(i);",Rt,".vertexAttrib4f(i,",ht,".x,",ht,".y,",ht,".z,",ht,".w);",ht,".buffer=null;");var br=Ve.link(Rr.maxAttributes,{stable:!0});return at("for(var i=0;i<",br,";++i){",ht,"=",Pt,"[i];",ur,"}"),Ri&&at("for(var i=0;i<",br,";++i){",yt,".vertexAttribDivisorANGLE(i,",Pt,"[i].divisor);","}"),at(Ve.shared.vao,".currentVAO=null;",Ve.shared.vao,".setVAO(",Ve.shared.vao,".targetVAO);"),Object.keys(li).forEach(function(Ur){var Di=li[Ur],fi=Ct.def(Bt,".",Ur),Ti=Ve.block();Ti("if(",fi,"){",Rt,".enable(",Di,")}else{",Rt,".disable(",Di,")}",Dt,".",Ur,"=",fi,";"),at(Ti),Qe("if(",fi,"!==",Dt,".",Ur,"){",Ti,"}")}),Object.keys(mn).forEach(function(Ur){var Di=mn[Ur],fi=Zi[Ur],Ti,gn,rn=Ve.block();if(rn(Rt,".",Di,"("),Mn(fi)){var Ci=fi.length;Ti=Ve.global.def(Bt,".",Ur),gn=Ve.global.def(Dt,".",Ur),rn(M(Ci,function(Bi){return Ti+"["+Bi+"]"}),");",M(Ci,function(Bi){return gn+"["+Bi+"]="+Ti+"["+Bi+"];"}).join("")),Qe("if(",M(Ci,function(Bi){return Ti+"["+Bi+"]!=="+gn+"["+Bi+"]"}).join("||"),"){",rn,"}")}else Ti=Ct.def(Bt,".",Ur),gn=Ct.def(Dt,".",Ur),rn(Ti,");",Dt,".",Ur,"=",Ti,";"),Qe("if(",Ti,"!==",gn,"){",rn,"}");at(rn)}),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,Is=function(Me,bt){if(!bt.ext_disjoint_timer_query)return null;var zt=[];function Rr(){return zt.pop()||bt.ext_disjoint_timer_query.createQueryEXT()}function jr(xi){zt.push(xi)}var Nr=[];function Gr(xi){var Ri=Rr();bt.ext_disjoint_timer_query.beginQueryEXT(go,Ri),Nr.push(Ri),Wi(Nr.length-1,Nr.length,xi)}function mi(){bt.ext_disjoint_timer_query.endQueryEXT(go)}function Ui(){this.startQueryIndex=-1,this.endQueryIndex=-1,this.sum=0,this.stats=null}var qi=[];function Ei(){return qi.pop()||new Ui}function Hn(xi){qi.push(xi)}var en=[];function Wi(xi,Ri,ci){var an=Ei();an.startQueryIndex=xi,an.endQueryIndex=Ri,an.sum=0,an.stats=ci,en.push(an)}var si=[],Mr=[];function Yr(){var xi,Ri,ci=Nr.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 an=0;for(xi=0,Ri=0;Ri<Nr.length;++Ri){var Zi=Nr[Ri];bt.ext_disjoint_timer_query.getQueryObjectEXT(Zi,Da)?(an+=bt.ext_disjoint_timer_query.getQueryObjectEXT(Zi,yo),jr(Zi)):Nr[xi++]=Zi,si[Ri+1]=an,Mr[Ri+1]=xi}for(Nr.length=xi,xi=0,Ri=0;Ri<en.length;++Ri){var Bn=en[Ri],hi=Bn.startQueryIndex,li=Bn.endQueryIndex;Bn.sum+=si[li]-si[hi];var mn=Mr[hi],Ji=Mr[li];Ji===mn?(Bn.stats.gpuTime+=Bn.sum/1e6,Hn(Bn)):(Bn.startQueryIndex=mn,Bn.endQueryIndex=Ji,en[xi++]=Bn)}en.length=xi}}return{beginQuery:Gr,endQuery:mi,pushScopeStats:Wi,update:Yr,getNumPendingQueries:function(){return Nr.length},clear:function(){zt.push.apply(zt,Nr);for(var xi=0;xi<zt.length;xi++)bt.ext_disjoint_timer_query.deleteQueryEXT(zt[xi]);Nr.length=0,zt.length=0},restore:function(){Nr.length=0,zt.length=0}}},Ms=16384,Xs=256,Gn=1024,ja=34962,Fo="webglcontextlost",Uo="webglcontextrestored",$s=1,Sl=2,bu=3;function dl(Me,bt){for(var zt=0;zt<Me.length;++zt)if(Me[zt]===bt)return zt;return-1}function Sc(Me){var bt=x(Me);if(!bt)return null;var zt=bt.gl,Rr=zt.getContextAttributes(),jr=zt.isContextLost(),Nr=C(zt,bt);if(!Nr)return null;var Gr=_(),mi=Ia(),Ui=bt.cachedCode||{},qi=Nr.extensions,Ei=Is(zt,qi),Hn=v(),en=zt.drawingBufferWidth,Wi=zt.drawingBufferHeight,si={tick:0,time:0,viewportWidth:en,viewportHeight:Wi,framebufferWidth:en,framebufferHeight:Wi,drawingBufferWidth:en,drawingBufferHeight:Wi,pixelRatio:bt.pixelRatio},Mr={},Yr={elements:null,primitive:4,count:-1,offset:0,instances:-1},xi=ti(zt,qi),Ri=ri(zt,mi,bt,Zi),ci=kr(zt,qi,Ri,mi),an=ku(zt,qi,xi,mi,Ri,ci,Yr);function Zi(q){return an.destroyBuffer(q)}var Bn=Wu(zt,Gr,mi,bt),hi=of(zt,qi,xi,function(){Ji.procs.poll()},si,mi,bt),li=Dc(zt,qi,xi,mi,bt),mn=lf(zt,qi,xi,hi,li,mi),Ji=Ea(zt,Gr,qi,xi,Ri,ci,hi,mn,Mr,an,Bn,Yr,si,Ei,Ui,bt),Vi=Wl(zt,mn,Ji.procs.poll,si,Rr,qi,xi),Ni=Ji.next,pn=zt.canvas,Vn=[],na=[],Ki=[],kn=[bt.onDestroy],ta=null;function oa(){if(Vn.length===0){Ei&&Ei.update(),ta=null;return}ta=d.next(oa),Ys();for(var q=Vn.length-1;q>=0;--q){var K=Vn[q];K&&K(si,null,0)}zt.flush(),Ei&&Ei.update()}function ba(){!ta&&Vn.length>0&&(ta=d.next(oa))}function is(){ta&&(d.cancel(oa),ta=null)}function Zs(q){q.preventDefault(),jr=!0,is(),na.forEach(function(K){K()})}function Va(q){zt.getError(),jr=!1,Nr.restore(),Bn.restore(),Ri.restore(),hi.restore(),li.restore(),mn.restore(),an.restore(),Ei&&Ei.restore(),Ji.procs.refresh(),ba(),Ki.forEach(function(K){K()})}pn&&(pn.addEventListener(Fo,Zs,!1),pn.addEventListener(Uo,Va,!1));function Ml(){Vn.length=0,is(),pn&&(pn.removeEventListener(Fo,Zs),pn.removeEventListener(Uo,Va)),Bn.clear(),mn.clear(),li.clear(),an.clear(),hi.clear(),ci.clear(),Ri.clear(),Ei&&Ei.clear(),kn.forEach(function(q){q()})}function zo(q){function K(Rt){var Bt=e({},Rt);delete Bt.uniforms,delete Bt.attributes,delete Bt.context,delete Bt.vao,"stencil"in Bt&&Bt.stencil.op&&(Bt.stencil.opBack=Bt.stencil.opFront=Bt.stencil.op,delete Bt.stencil.op);function Dt(yt){if(yt in Bt){var Pt=Bt[yt];delete Bt[yt],Object.keys(Pt).forEach(function(ht){Bt[yt+"."+ht]=Pt[ht]})}}return Dt("blend"),Dt("depth"),Dt("cull"),Dt("stencil"),Dt("polygonOffset"),Dt("scissor"),Dt("sample"),"vao"in Rt&&(Bt.vao=Rt.vao),Bt}function de(Rt,Bt){var Dt={},yt={};return Object.keys(Rt).forEach(function(Pt){var ht=Rt[Pt];if(h.isDynamic(ht)){yt[Pt]=h.unbox(ht,Pt);return}else if(Bt&&Array.isArray(ht)){for(var ur=0;ur<ht.length;++ur)if(h.isDynamic(ht[ur])){yt[Pt]=h.unbox(ht,Pt);return}}Dt[Pt]=ht}),{dynamic:yt,static:Dt}}var ne=de(q.context||{},!0),we=de(q.uniforms||{},!0),Ue=de(q.attributes||{},!1),ft=de(K(q),!1),Xt={gpuTime:0,cpuTime:0,count:0},hr=Ji.compile(ft,Ue,we,ne,Xt),qt=hr.draw,Ve=hr.batch,Qe=hr.scope,at=[];function Ct(Rt){for(;at.length<Rt;)at.push(null);return at}function Ot(Rt,Bt){var Dt;if(typeof Rt=="function")return Qe.call(this,null,Rt,0);if(typeof Bt=="function")if(typeof Rt=="number")for(Dt=0;Dt<Rt;++Dt)Qe.call(this,null,Bt,Dt);else if(Array.isArray(Rt))for(Dt=0;Dt<Rt.length;++Dt)Qe.call(this,Rt[Dt],Bt,Dt);else return Qe.call(this,Rt,Bt,0);else if(typeof Rt=="number"){if(Rt>0)return Ve.call(this,Ct(Rt|0),Rt|0)}else if(Array.isArray(Rt)){if(Rt.length)return Ve.call(this,Rt,Rt.length)}else return qt.call(this,Rt)}return e(Ot,{stats:Xt,destroy:function(){hr.destroy()}})}var Qs=mn.setFBO=zo({framebuffer:h.define.call(null,$s,"framebuffer")});function al(q,K){var de=0;Ji.procs.poll();var ne=K.color;ne&&(zt.clearColor(+ne[0]||0,+ne[1]||0,+ne[2]||0,+ne[3]||0),de|=Ms),"depth"in K&&(zt.clearDepth(+K.depth),de|=Xs),"stencil"in K&&(zt.clearStencil(K.stencil|0),de|=Gn),zt.clear(de)}function Vl(q){if("framebuffer"in q)if(q.framebuffer&&q.framebuffer_reglType==="framebufferCube")for(var K=0;K<6;++K)Qs(e({framebuffer:q.framebuffer.faces[K]},q),al);else Qs(q,al);else al(null,q)}function ss(q){Vn.push(q);function K(){var de=dl(Vn,q);function ne(){var we=dl(Vn,ne);Vn[we]=Vn[Vn.length-1],Vn.length-=1,Vn.length<=0&&is()}Vn[de]=ne}return ba(),{cancel:K}}function Vs(){var q=Ni.viewport,K=Ni.scissor_box;q[0]=q[1]=K[0]=K[1]=0,si.viewportWidth=si.framebufferWidth=si.drawingBufferWidth=q[2]=K[2]=zt.drawingBufferWidth,si.viewportHeight=si.framebufferHeight=si.drawingBufferHeight=q[3]=K[3]=zt.drawingBufferHeight}function Ys(){si.tick+=1,si.time=ol(),Vs(),Ji.procs.poll()}function wa(){hi.refresh(),Vs(),Ji.procs.refresh(),Ei&&Ei.update()}function ol(){return(v()-Hn)/1e3}wa();function io(q,K){var de;switch(q){case"frame":return ss(K);case"lost":de=na;break;case"restore":de=Ki;break;case"destroy":de=kn;break;default:}return de.push(K),{cancel:function(){for(var ne=0;ne<de.length;++ne)if(de[ne]===K){de[ne]=de[de.length-1],de.pop();return}}}}function Y(){return Ui}function D(q){Object.entries(q).forEach(function(K){Ui[K[0]]=K[1]})}var J=e(zo,{clear:Vl,prop:h.define.bind(null,$s),context:h.define.bind(null,Sl),this:h.define.bind(null,bu),draw:zo({}),buffer:function(q){return Ri.create(q,ja,!1,!1)},elements:function(q){return ci.create(q,!1)},texture:hi.create2D,cube:hi.createCube,renderbuffer:li.create,framebuffer:mn.create,framebufferCube:mn.createCube,vao:an.createVAO,attributes:Rr,frame:ss,on:io,limits:xi,hasExtension:function(q){return xi.extensions.indexOf(q.toLowerCase())>=0},read:Vi,destroy:Ml,_gl:zt,_refresh:wa,poll:function(){Ys(),Ei&&Ei.update()},now:ol,stats:mi,getCachedCode:Y,preloadCachedCode:D});return bt.onDone(null,J),J}return Sc})});var Gqe=ye((r_r,Vqe)=>{"use strict";var nUt=Zm();Vqe.exports=function(t){if(t?typeof t=="string"&&(t={container:t}):t={},Nqe(t)?t={container:t}:aUt(t)?t={container:t}:oUt(t)?t={gl:t}:t=nUt(t,{container:"container target element el canvas holder parent parentNode wrapper use ref root node",gl:"gl context webgl glContext",attrs:"attributes attrs contextAttributes",pixelRatio:"pixelRatio pxRatio px ratio pxratio pixelratio",width:"w width",height:"h height"},!0),t.pixelRatio||(t.pixelRatio=window.pixelRatio||1),t.gl)return t.gl;if(t.canvas&&(t.container=t.canvas.parentNode),t.container){if(typeof t.container=="string"){var r=document.querySelector(t.container);if(!r)throw Error("Element "+t.container+" is not found");t.container=r}Nqe(t.container)?(t.canvas=t.container,t.container=t.canvas.parentNode):t.canvas||(t.canvas=Uqe(),t.container.appendChild(t.canvas),Bqe(t))}else if(!t.canvas)if(typeof document!="undefined")t.container=document.body||document.documentElement,t.canvas=Uqe(),t.container.appendChild(t.canvas),Bqe(t);else throw Error("Not DOM environment. Use headless-gl.");return t.gl||["webgl","experimental-webgl","webgl-experimental"].some(function(n){try{t.gl=t.canvas.getContext(n,t.attrs)}catch(i){}return t.gl}),t.gl};function Bqe(e){if(e.container)if(e.container==document.body)document.body.style.width||(e.canvas.width=e.width||e.pixelRatio*window.innerWidth),document.body.style.height||(e.canvas.height=e.height||e.pixelRatio*window.innerHeight);else{var t=e.container.getBoundingClientRect();e.canvas.width=e.width||t.right-t.left,e.canvas.height=e.height||t.bottom-t.top}}function Nqe(e){return typeof e.getContext=="function"&&"width"in e&&"height"in e}function aUt(e){return typeof e.nodeName=="string"&&typeof e.appendChild=="function"&&typeof e.getBoundingClientRect=="function"}function oUt(e){return typeof e.drawArrays=="function"||typeof e.drawElements=="function"}function Uqe(){var e=document.createElement("canvas");return e.style.position="absolute",e.style.top=0,e.style.left=0,e}});var jqe=ye((i_r,Hqe)=>{"use strict";var sUt=eK(),lUt=[32,126];Hqe.exports=uUt;function uUt(e){e=e||{};var t=e.shape?e.shape:e.canvas?[e.canvas.width,e.canvas.height]:[512,512],r=e.canvas||document.createElement("canvas"),n=e.font,i=typeof e.step=="number"?[e.step,e.step]:e.step||[32,32],a=e.chars||lUt;if(n&&typeof n!="string"&&(n=sUt(n)),!Array.isArray(a))a=String(a).split("");else if(a.length===2&&typeof a[0]=="number"&&typeof a[1]=="number"){for(var o=[],s=a[0],l=0;s<=a[1];s++)o[l++]=String.fromCharCode(s);a=o}t=t.slice(),r.width=t[0],r.height=t[1];var u=r.getContext("2d");u.fillStyle="#000",u.fillRect(0,0,r.width,r.height),u.font=n,u.textAlign="center",u.textBaseline="middle",u.fillStyle="#fff";for(var c=i[0]/2,f=i[1]/2,s=0;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 nK=ye(Bh=>{"use strict";"use restrict";var iK=32;Bh.INT_BITS=iK;Bh.INT_MAX=2147483647;Bh.INT_MIN=-1<<iK-1;Bh.sign=function(e){return(e>0)-(e<0)};Bh.abs=function(e){var t=e>>iK-1;return(e^t)-t};Bh.min=function(e,t){return t^(e^t)&-(e<t)};Bh.max=function(e,t){return e^(e^t)&-(e<t)};Bh.isPow2=function(e){return!(e&e-1)&&!!e};Bh.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};Bh.log10=function(e){return e>=1e9?9:e>=1e8?8:e>=1e7?7:e>=1e6?6:e>=1e5?5:e>=1e4?4:e>=1e3?3:e>=100?2:e>=10?1:0};Bh.popCount=function(e){return e=e-(e>>>1&1431655765),e=(e&858993459)+(e>>>2&858993459),(e+(e>>>4)&252645135)*16843009>>>24};function Wqe(e){var t=32;return e&=-e,e&&t--,e&65535&&(t-=16),e&16711935&&(t-=8),e&252645135&&(t-=4),e&858993459&&(t-=2),e&1431655765&&(t-=1),t}Bh.countTrailingZeros=Wqe;Bh.nextPow2=function(e){return e+=e===0,--e,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e+1};Bh.prevPow2=function(e){return e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e-(e>>>1)};Bh.parity=function(e){return e^=e>>>16,e^=e>>>8,e^=e>>>4,e&=15,27030>>>e&1};var Mk=new Array(256);(function(e){for(var t=0;t<256;++t){var r=t,n=t,i=7;for(r>>>=1;r;r>>>=1)n<<=1,n|=r&1,--i;e[t]=n<<i&255}})(Mk);Bh.reverse=function(e){return Mk[e&255]<<24|Mk[e>>>8&255]<<16|Mk[e>>>16&255]<<8|Mk[e>>>24&255]};Bh.interleave2=function(e,t){return e&=65535,e=(e|e<<8)&16711935,e=(e|e<<4)&252645135,e=(e|e<<2)&858993459,e=(e|e<<1)&1431655765,t&=65535,t=(t|t<<8)&16711935,t=(t|t<<4)&252645135,t=(t|t<<2)&858993459,t=(t|t<<1)&1431655765,e|t<<1};Bh.deinterleave2=function(e,t){return e=e>>>t&1431655765,e=(e|e>>>1)&858993459,e=(e|e>>>2)&252645135,e=(e|e>>>4)&16711935,e=(e|e>>>16)&65535,e<<16>>16};Bh.interleave3=function(e,t,r){return e&=1023,e=(e|e<<16)&4278190335,e=(e|e<<8)&251719695,e=(e|e<<4)&3272356035,e=(e|e<<2)&1227133513,t&=1023,t=(t|t<<16)&4278190335,t=(t|t<<8)&251719695,t=(t|t<<4)&3272356035,t=(t|t<<2)&1227133513,e|=t<<1,r&=1023,r=(r|r<<16)&4278190335,r=(r|r<<8)&251719695,r=(r|r<<4)&3272356035,r=(r|r<<2)&1227133513,e|r<<2};Bh.deinterleave3=function(e,t){return e=e>>>t&1227133513,e=(e|e>>>2)&3272356035,e=(e|e>>>4)&251719695,e=(e|e>>>8)&4278190335,e=(e|e>>>16)&1023,e<<22>>22};Bh.nextCombination=function(e){var t=e|e-1;return t+1|(~t&-~t)-1>>>Wqe(e)+1}});var Yqe=ye((a_r,Zqe)=>{"use strict";function Xqe(e,t,r){var n=e[r]|0;if(n<=0)return[];var i=new Array(n),a;if(r===e.length-1)for(a=0;a<n;++a)i[a]=t;else for(a=0;a<n;++a)i[a]=Xqe(e,t,r+1);return i}function cUt(e,t){var r,n;for(r=new Array(e),n=0;n<e;++n)r[n]=t;return r}function fUt(e,t){switch(typeof t=="undefined"&&(t=0),typeof e){case"number":if(e>0)return cUt(e|0,t);break;case"object":if(typeof e.length=="number")return Xqe(e,t,0);break}return[]}Zqe.exports=fUt});var cBe=ye(mu=>{"use strict";var fx=nK(),Ev=Yqe(),Kqe=c2().Buffer;window.__TYPEDARRAY_POOL||(window.__TYPEDARRAY_POOL={UINT8:Ev([32,0]),UINT16:Ev([32,0]),UINT32:Ev([32,0]),BIGUINT64:Ev([32,0]),INT8:Ev([32,0]),INT16:Ev([32,0]),INT32:Ev([32,0]),BIGINT64:Ev([32,0]),FLOAT:Ev([32,0]),DOUBLE:Ev([32,0]),DATA:Ev([32,0]),UINT8C:Ev([32,0]),BUFFER:Ev([32,0])});var hUt=typeof Uint8ClampedArray!="undefined",dUt=typeof BigUint64Array!="undefined",vUt=typeof BigInt64Array!="undefined",nd=window.__TYPEDARRAY_POOL;nd.UINT8C||(nd.UINT8C=Ev([32,0]));nd.BIGUINT64||(nd.BIGUINT64=Ev([32,0]));nd.BIGINT64||(nd.BIGINT64=Ev([32,0]));nd.BUFFER||(nd.BUFFER=Ev([32,0]));var _z=nd.DATA,xz=nd.BUFFER;mu.free=function(t){if(Kqe.isBuffer(t))xz[fx.log2(t.length)].push(t);else{if(Object.prototype.toString.call(t)!=="[object ArrayBuffer]"&&(t=t.buffer),!t)return;var r=t.length||t.byteLength,n=fx.log2(r)|0;_z[n].push(t)}};function Jqe(e){if(e){var t=e.length||e.byteLength,r=fx.log2(t);_z[r].push(e)}}function pUt(e){Jqe(e.buffer)}mu.freeUint8=mu.freeUint16=mu.freeUint32=mu.freeBigUint64=mu.freeInt8=mu.freeInt16=mu.freeInt32=mu.freeBigInt64=mu.freeFloat32=mu.freeFloat=mu.freeFloat64=mu.freeDouble=mu.freeUint8Clamped=mu.freeDataView=pUt;mu.freeArrayBuffer=Jqe;mu.freeBuffer=function(t){xz[fx.log2(t.length)].push(t)};mu.malloc=function(t,r){if(r===void 0||r==="arraybuffer")return Bp(t);switch(r){case"uint8":return aK(t);case"uint16":return $qe(t);case"uint32":return Qqe(t);case"int8":return eBe(t);case"int16":return tBe(t);case"int32":return rBe(t);case"float":case"float32":return iBe(t);case"double":case"float64":return nBe(t);case"uint8_clamped":return aBe(t);case"bigint64":return sBe(t);case"biguint64":return oBe(t);case"buffer":return uBe(t);case"data":case"dataview":return lBe(t);default:return null}return null};function Bp(t){var t=fx.nextPow2(t),r=fx.log2(t),n=_z[r];return n.length>0?n.pop():new ArrayBuffer(t)}mu.mallocArrayBuffer=Bp;function aK(e){return new Uint8Array(Bp(e),0,e)}mu.mallocUint8=aK;function $qe(e){return new Uint16Array(Bp(2*e),0,e)}mu.mallocUint16=$qe;function Qqe(e){return new Uint32Array(Bp(4*e),0,e)}mu.mallocUint32=Qqe;function eBe(e){return new Int8Array(Bp(e),0,e)}mu.mallocInt8=eBe;function tBe(e){return new Int16Array(Bp(2*e),0,e)}mu.mallocInt16=tBe;function rBe(e){return new Int32Array(Bp(4*e),0,e)}mu.mallocInt32=rBe;function iBe(e){return new Float32Array(Bp(4*e),0,e)}mu.mallocFloat32=mu.mallocFloat=iBe;function nBe(e){return new Float64Array(Bp(8*e),0,e)}mu.mallocFloat64=mu.mallocDouble=nBe;function aBe(e){return hUt?new Uint8ClampedArray(Bp(e),0,e):aK(e)}mu.mallocUint8Clamped=aBe;function oBe(e){return dUt?new BigUint64Array(Bp(8*e),0,e):null}mu.mallocBigUint64=oBe;function sBe(e){return vUt?new BigInt64Array(Bp(8*e),0,e):null}mu.mallocBigInt64=sBe;function lBe(e){return new DataView(Bp(e),0,e)}mu.mallocDataView=lBe;function uBe(e){e=fx.nextPow2(e);var t=fx.log2(e),r=xz[t];return r.length>0?r.pop():new Kqe(e)}mu.mallocBuffer=uBe;mu.clearCache=function(){for(var t=0;t<32;++t)nd.UINT8[t].length=0,nd.UINT16[t].length=0,nd.UINT32[t].length=0,nd.INT8[t].length=0,nd.INT16[t].length=0,nd.INT32[t].length=0,nd.FLOAT[t].length=0,nd.DOUBLE[t].length=0,nd.BIGUINT64[t].length=0,nd.BIGINT64[t].length=0,nd.UINT8C[t].length=0,_z[t].length=0,xz[t].length=0}});var hBe=ye((s_r,fBe)=>{"use strict";var gUt=Object.prototype.toString;fBe.exports=function(e){var t;return gUt.call(e)==="[object Object]"&&(t=Object.getPrototypeOf(e),t===null||t===Object.getPrototypeOf({}))}});var oK=ye((l_r,dBe)=>{dBe.exports=function(t,r){r||(r=[0,""]),t=String(t);var n=parseFloat(t,10);return r[0]=n,r[1]=t.match(/[\d.\-\+]*\s*(.*)/)[1]||"",r}});var gBe=ye((u_r,pBe)=>{"use strict";var mUt=oK();pBe.exports=vBe;var Ek=96;function sK(e,t){var r=mUt(getComputedStyle(e).getPropertyValue(t));return r[0]*vBe(r[1],e)}function yUt(e,t){var r=document.createElement("div");r.style["font-size"]="128"+e,t.appendChild(r);var n=sK(r,"font-size")/128;return t.removeChild(r),n}function vBe(e,t){switch(t=t||document.body,e=(e||"px").trim().toLowerCase(),(t===window||t===document)&&(t=document.body),e){case"%":return t.clientHeight/100;case"ch":case"ex":return yUt(e,t);case"em":return sK(t,"font-size");case"rem":return sK(document.body,"font-size");case"vw":return window.innerWidth/100;case"vh":return window.innerHeight/100;case"vmin":return Math.min(window.innerWidth,window.innerHeight)/100;case"vmax":return Math.max(window.innerWidth,window.innerHeight)/100;case"in":return Ek;case"cm":return Ek/2.54;case"mm":return Ek/25.4;case"pt":return Ek/72;case"pc":return Ek/6}return 1}});var _Be=ye((c_r,yBe)=>{"use strict";yBe.exports=Tz;var _Ut=Tz.canvas=document.createElement("canvas"),bz=_Ut.getContext("2d"),mBe=wz([32,126]);Tz.createPairs=wz;Tz.ascii=mBe;function Tz(e,t){Array.isArray(e)&&(e=e.join(", "));var r={},n,i=16,a=.05;t&&(t.length===2&&typeof t[0]=="number"?n=wz(t):Array.isArray(t)?n=t:(t.o?n=wz(t.o):t.pairs&&(n=t.pairs),t.fontSize&&(i=t.fontSize),t.threshold!=null&&(a=t.threshold))),n||(n=mBe),bz.font=i+"px "+e;for(var o=0;o<n.length;o++){var s=n[o],l=bz.measureText(s[0]).width+bz.measureText(s[1]).width,u=bz.measureText(s).width;if(Math.abs(l-u)>i*a){var c=(u-l)/i;r[s]=c*1e3}}return r}function wz(e){for(var t=[],r=e[0];r<=e[1];r++)for(var n=String.fromCharCode(r),i=e[0];i<e[1];i++){var a=String.fromCharCode(i),o=n+a;t.push(o)}return t}});var TBe=ye((f_r,wBe)=>{"use strict";wBe.exports=hx;hx.canvas=document.createElement("canvas");hx.cache={};function hx(o,t){t||(t={}),(typeof o=="string"||Array.isArray(o))&&(t.family=o);var r=Array.isArray(t.family)?t.family.join(", "):t.family;if(!r)throw Error("`family` must be defined");var n=t.size||t.fontSize||t.em||48,i=t.weight||t.fontWeight||"",a=t.style||t.fontStyle||"",o=[a,i,n].join(" ")+"px "+r,s=t.origin||"top";if(hx.cache[r]&&n<=hx.cache[r].em)return xBe(hx.cache[r],s);var l=t.canvas||hx.canvas,u=l.getContext("2d"),c={upper:t.upper!==void 0?t.upper:"H",lower:t.lower!==void 0?t.lower:"x",descent:t.descent!==void 0?t.descent:"p",ascent:t.ascent!==void 0?t.ascent:"h",tittle:t.tittle!==void 0?t.tittle:"i",overshoot:t.overshoot!==void 0?t.overshoot:"O"},f=Math.ceil(n*1.5);l.height=f,l.width=f*.5,u.font=o;var h="H",d={top:0};u.clearRect(0,0,f,f),u.textBaseline="top",u.fillStyle="black",u.fillText(h,0,0);var v=Km(u.getImageData(0,0,f,f));u.clearRect(0,0,f,f),u.textBaseline="bottom",u.fillText(h,0,f);var _=Km(u.getImageData(0,0,f,f));d.lineHeight=d.bottom=f-_+v,u.clearRect(0,0,f,f),u.textBaseline="alphabetic",u.fillText(h,0,f);var b=Km(u.getImageData(0,0,f,f)),p=f-b-1+v;d.baseline=d.alphabetic=p,u.clearRect(0,0,f,f),u.textBaseline="middle",u.fillText(h,0,f*.5);var k=Km(u.getImageData(0,0,f,f));d.median=d.middle=f-k-1+v-f*.5,u.clearRect(0,0,f,f),u.textBaseline="hanging",u.fillText(h,0,f*.5);var E=Km(u.getImageData(0,0,f,f));d.hanging=f-E-1+v-f*.5,u.clearRect(0,0,f,f),u.textBaseline="ideographic",u.fillText(h,0,f);var S=Km(u.getImageData(0,0,f,f));if(d.ideographic=f-S-1+v,c.upper&&(u.clearRect(0,0,f,f),u.textBaseline="top",u.fillText(c.upper,0,0),d.upper=Km(u.getImageData(0,0,f,f)),d.capHeight=d.baseline-d.upper),c.lower&&(u.clearRect(0,0,f,f),u.textBaseline="top",u.fillText(c.lower,0,0),d.lower=Km(u.getImageData(0,0,f,f)),d.xHeight=d.baseline-d.lower),c.tittle&&(u.clearRect(0,0,f,f),u.textBaseline="top",u.fillText(c.tittle,0,0),d.tittle=Km(u.getImageData(0,0,f,f))),c.ascent&&(u.clearRect(0,0,f,f),u.textBaseline="top",u.fillText(c.ascent,0,0),d.ascent=Km(u.getImageData(0,0,f,f))),c.descent&&(u.clearRect(0,0,f,f),u.textBaseline="top",u.fillText(c.descent,0,0),d.descent=bBe(u.getImageData(0,0,f,f))),c.overshoot){u.clearRect(0,0,f,f),u.textBaseline="top",u.fillText(c.overshoot,0,0);var L=bBe(u.getImageData(0,0,f,f));d.overshoot=L-p}for(var x in d)d[x]/=n;return d.em=n,hx.cache[r]=d,xBe(d,s)}function xBe(e,t){var r={};typeof t=="string"&&(t=e[t]);for(var n in e)n!=="em"&&(r[n]=e[n]-t);return r}function Km(e){for(var t=e.height,r=e.data,n=3;n<r.length;n+=4)if(r[n]!==0)return Math.floor((n-3)*.25/t)}function bBe(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 EBe=ye((h_r,MBe)=>{"use strict";var p5=Oqe(),xUt=Zm(),bUt=qqe(),wUt=Gqe(),TUt=NY(),lK=J_(),AUt=jqe(),dx=cBe(),SUt=i5(),MUt=hBe(),EUt=oK(),kUt=gBe(),CUt=_Be(),LUt=Oh(),PUt=TBe(),IUt=Z2(),RUt=nK(),ABe=RUt.nextPow2,SBe=new TUt,Sz=!1;document.body&&(Az=document.body.appendChild(document.createElement("div")),Az.style.font="italic small-caps bold condensed 16px/2 cursive",getComputedStyle(Az).fontStretch&&(Sz=!0),document.body.removeChild(Az));var Az,xc=function(t){DUt(t)?(t={regl:t},this.gl=t.regl._gl):this.gl=wUt(t),this.shader=SBe.get(this.gl),this.shader?this.regl=this.shader.regl:this.regl=t.regl||bUt({gl:this.gl}),this.charBuffer=this.regl.buffer({type:"uint8",usage:"stream"}),this.sizeBuffer=this.regl.buffer({type:"float",usage:"stream"}),this.shader||(this.shader=this.createShader(),SBe.set(this.gl,this.shader)),this.batch=[],this.fontSize=[],this.font=[],this.fontAtlas=[],this.draw=this.shader.draw.bind(this),this.render=function(){this.regl._refresh(),this.draw(this.batch)},this.canvas=this.gl.canvas,this.update(MUt(t)?t:{})};xc.prototype.createShader=function(){var t=this.regl,r=t({blend:{enable:!0,color:[0,0,0,1],func:{srcRGB:"src alpha",dstRGB:"one minus src alpha",srcAlpha:"one minus dst alpha",dstAlpha:"one"}},stencil:{enable:!1},depth:{enable:!1},count:t.prop("count"),offset:t.prop("offset"),attributes:{charOffset:{offset:4,stride:8,buffer:t.this("sizeBuffer")},width:{offset:0,stride:8,buffer:t.this("sizeBuffer")},char:t.this("charBuffer"),position:t.this("position")},uniforms:{atlasSize:function(i,a){return[a.atlas.width,a.atlas.height]},atlasDim:function(i,a){return[a.atlas.cols,a.atlas.rows]},atlas:function(i,a){return a.atlas.texture},charStep:function(i,a){return a.atlas.step},em:function(i,a){return a.atlas.em},color:t.prop("color"),opacity:t.prop("opacity"),viewport:t.this("viewportArray"),scale:t.this("scale"),align:t.prop("align"),baseline:t.prop("baseline"),translate:t.this("translate"),positionOffset:t.prop("positionOffset")},primitive:"points",viewport:t.this("viewport"),vert:`
precision highp float;
attribute float width, charOffset, char;
attribute vec2 position;
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=xUt(t,{position:"position positions coord coords coordinates",font:"font fontFace fontface typeface cssFont css-font family fontFamily",fontSize:"fontSize fontsize size font-size",text:"text texts chars characters value values symbols",align:"align alignment textAlign textbaseline",baseline:"baseline textBaseline textbaseline",direction:"dir direction textDirection",color:"color colour fill fill-color fillColor textColor textcolor",kerning:"kerning kern",range:"range dataBox",viewport:"vp viewport viewBox viewbox viewPort",opacity:"opacity alpha transparency visible visibility opaque",offset:"offset positionOffset padding shift indent indentation"},!0),t.opacity!=null&&(Array.isArray(t.opacity)?this.opacity=t.opacity.map(function(Ce){return parseFloat(Ce)}):this.opacity=parseFloat(t.opacity)),t.viewport!=null&&(this.viewport=SUt(t.viewport),this.viewportArray=[this.viewport.x,this.viewport.y,this.viewport.width,this.viewport.height]),this.viewport==null&&(this.viewport={x:0,y:0,width:this.gl.drawingBufferWidth,height:this.gl.drawingBufferHeight},this.viewportArray=[this.viewport.x,this.viewport.y,this.viewport.width,this.viewport.height]),t.kerning!=null&&(this.kerning=t.kerning),t.offset!=null&&(typeof t.offset=="number"&&(t.offset=[t.offset,0]),this.positionOffset=IUt(t.offset)),t.direction&&(this.direction=t.direction),t.range&&(this.range=t.range,this.scale=[1/(t.range[2]-t.range[0]),1/(t.range[3]-t.range[1])],this.translate=[-t.range[0],-t.range[1]]),t.scale&&(this.scale=t.scale),t.translate&&(this.translate=t.translate),this.scale||(this.scale=[1/this.viewport.width,1/this.viewport.height]),this.translate||(this.translate=[0,0]),!this.font.length&&!t.font&&(t.font=xc.baseFontSize+"px sans-serif");var n=!1,i=!1;if(t.font&&(Array.isArray(t.font)?t.font:[t.font]).forEach(function(Ce,me){if(typeof Ce=="string")try{Ce=p5.parse(Ce)}catch(Ze){Ce=p5.parse(xc.baseFontSize+"px "+Ce)}else{var ie=Ce.style,Se=Ce.weight,Le=Ce.stretch,Ae=Ce.variant;Ce=p5.parse(p5.stringify(Ce)),ie&&(Ce.style=ie),Se&&(Ce.weight=Se),Le&&(Ce.stretch=Le),Ae&&(Ce.variant=Ae)}var Fe=p5.stringify({size:xc.baseFontSize,family:Ce.family,stretch:Sz?Ce.stretch:void 0,variant:Ce.variant,weight:Ce.weight,style:Ce.style}),Pe=EUt(Ce.size),ge=Math.round(Pe[0]*kUt(Pe[1]));if(ge!==r.fontSize[me]&&(i=!0,r.fontSize[me]=ge),(!r.font[me]||Fe!=r.font[me].baseString)&&(n=!0,r.font[me]=xc.fonts[Fe],!r.font[me])){var Re=Ce.family.join(", "),ce=[Ce.style];Ce.style!=Ce.variant&&ce.push(Ce.variant),Ce.variant!=Ce.weight&&ce.push(Ce.weight),Sz&&Ce.weight!=Ce.stretch&&ce.push(Ce.stretch),r.font[me]={baseString:Fe,family:Re,weight:Ce.weight,stretch:Ce.stretch,style:Ce.style,variant:Ce.variant,width:{},kerning:{},metrics:PUt(Re,{origin:"top",fontSize:xc.baseFontSize,fontStyle:ce.join(" ")})},xc.fonts[Fe]=r.font[me]}}),(n||i)&&this.font.forEach(function(Ce,me){var ie=p5.stringify({size:r.fontSize[me],family:Ce.family,stretch:Sz?Ce.stretch:void 0,variant:Ce.variant,weight:Ce.weight,style:Ce.style});if(r.fontAtlas[me]=r.shader.atlas[ie],!r.fontAtlas[me]){var Se=Ce.metrics;r.shader.atlas[ie]=r.fontAtlas[me]={fontString:ie,step:Math.ceil(r.fontSize[me]*Se.bottom*.5)*2,em:r.fontSize[me],cols:0,rows:0,height:0,width:0,chars:[],ids:{},texture:r.regl.texture()}}t.text==null&&(t.text=r.text)}),typeof t.text=="string"&&t.position&&t.position.length>2){for(var a=Array(t.position.length*.5),o=0;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(Ce,me){xc.atlasContext.font=Ce.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)),Ce.width[Le]==null&&(Ce.width[Le]=xc.atlasContext.measureText(Le).width/xc.baseFontSize,r.kerning)){var Ae=[];for(var Fe in Ce.width)Ae.push(Fe+Le,Le+Fe);LUt(Ce.kerning,CUt(Ce.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 _=0;_<d;_++)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 k=0,E=0;k<this.counts.length;k++){for(var S=this.counts[k],L=this.font[k]||this.font[0],x=this.fontAtlas[k]||this.fontAtlas[0],C=0;C<S;C++){var M=this.text.charAt(E),g=this.text.charAt(E-1);if(b[E]=x.ids[M],p[E*2]=L.width[M],C){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(Ce,me){var ie=r.fontAtlas[me],Se=ie.step,Le=Math.floor(xc.maxAtlasSize/Se),Ae=Math.min(Le,ie.chars.length),Fe=Math.ceil(ie.chars.length/Ae),Pe=ABe(Ae*Se),ge=ABe(Fe*Se);ie.width=Pe,ie.height=ge,ie.rows=Fe,ie.cols=Ae,ie.em&&ie.texture({data:AUt({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(Ce,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-Ce;case"center":case"centre":case"middle":return-Ce*.5}return 0})),this.baseline==null&&t.baseline==null&&(t.baseline=0),t.baseline!=null&&(this.baseline=t.baseline,Array.isArray(this.baseline)||(this.baseline=[this.baseline]),this.baselineOffset=this.baseline.map(function(Ce,me){var ie=(r.font[me]||r.font[0]).metrics,Se=0;return Se+=ie.bottom*.5,typeof Ce=="number"?Se+=Ce-ie.baseline:Se+=-ie[Ce],Se*=-1,Se})),t.color!=null)if(t.color||(t.color="transparent"),typeof t.color=="string"||!isNaN(t.color))this.color=lK(t.color,"uint8");else{var G;if(typeof t.color[0]=="number"&&t.color.length>this.counts.length){var Z=t.color.length;G=dx.mallocUint8(Z);for(var j=(t.color.subarray||t.color.slice).bind(t.color),N=0;N<Z;N+=4)G.set(lK(j(N,N+4),"uint8"),N)}else{var H=t.color.length;G=dx.mallocUint8(H*4);for(var te=0;te<H;te++)G.set(lK(t.color[te]||0,"uint8"),te*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 Ee=0;Ee<this.batch.length;Ee++)this.batch[Ee]={count:this.counts.length>1?this.counts[Ee]:this.counts[0],offset:this.textOffsets.length>1?this.textOffsets[Ee]:this.textOffsets[0],color:this.color?this.color.length<=4?this.color:this.color.subarray(Ee*4,Ee*4+4):[0,0,0,255],opacity:Array.isArray(this.opacity)?this.opacity[Ee]:this.opacity,baseline:this.baselineOffset[Ee]!=null?this.baselineOffset[Ee]:this.baselineOffset[0],align:this.align?this.alignOffset[Ee]!=null?this.alignOffset[Ee]:this.alignOffset[0]:0,atlas:this.fontAtlas[Ee]||this.fontAtlas[0],positionOffset:this.positionOffset.length>2?this.positionOffset.subarray(Ee*2,Ee*2+2):this.positionOffset}}else this.count?this.batch=[{count:this.count,offset:0,color:this.color||[0,0,0,255],opacity:Array.isArray(this.opacity)?this.opacity[0]:this.opacity,baseline:this.baselineOffset[0],align:this.alignOffset?this.alignOffset[0]:0,atlas:this.fontAtlas[0],positionOffset:this.positionOffset}]:this.batch=[]}};xc.prototype.destroy=function(){};xc.prototype.kerning=!0;xc.prototype.position={constant:new Float32Array(2)};xc.prototype.translate=null;xc.prototype.scale=null;xc.prototype.font=null;xc.prototype.text="";xc.prototype.positionOffset=[0,0];xc.prototype.opacity=1;xc.prototype.color=new Uint8Array([0,0,0,255]);xc.prototype.alignOffset=[0,0];xc.maxAtlasSize=1024;xc.atlasCanvas=document.createElement("canvas");xc.atlasContext=xc.atlasCanvas.getContext("2d",{alpha:!1});xc.baseFontSize=64;xc.fonts={};function DUt(e){return typeof e=="function"&&e._gl&&e.prop&&e.texture&&e.buffer}MBe.exports=xc});var kBe=ye((uK,cK)=>{(function(e,t){typeof uK=="object"&&typeof cK!="undefined"?cK.exports=t():e.createREGL=t()})(uK,function(){"use strict";var e=function(Me,bt){for(var zt=Object.keys(bt),Rr=0;Rr<zt.length;++Rr)Me[zt[Rr]]=bt[zt[Rr]];return Me},t=0,r=0,n=5,i=6;function a(Me,bt){this.id=t++,this.type=Me,this.data=bt}function o(Me){return Me.replace(/\\/g,"\\\\").replace(/"/g,'\\"')}function s(Me){if(Me.length===0)return[];var bt=Me.charAt(0),zt=Me.charAt(Me.length-1);if(Me.length>1&&bt===zt&&(bt==='"'||bt==="'"))return['"'+o(Me.substr(1,Me.length-2))+'"'];var Rr=/\[(false|true|null|\d+|'[^']*'|"[^"]*")\]/.exec(Me);if(Rr)return s(Me.substr(0,Rr.index)).concat(s(Rr[1])).concat(s(Me.substr(Rr.index+Rr[0].length)));var jr=Me.split(".");if(jr.length===1)return['"'+o(Me)+'"'];for(var Nr=[],Gr=0;Gr<jr.length;++Gr)Nr=Nr.concat(s(jr[Gr]));return Nr}function l(Me){return"["+s(Me).join("][")+"]"}function u(Me,bt){return new a(Me,l(bt+""))}function c(Me){return typeof Me=="function"&&!Me._reglType||Me instanceof a}function f(Me,bt){if(typeof Me=="function")return new a(r,Me);if(typeof Me=="number"||typeof Me=="boolean")return new a(n,Me);if(Array.isArray(Me))return new a(i,Me.map(function(zt,Rr){return f(zt,bt+"["+Rr+"]")}));if(Me instanceof a)return Me}var h={DynamicVariable:a,define:u,isDynamic:c,unbox:f,accessor:l},d={next:typeof requestAnimationFrame=="function"?function(Me){return requestAnimationFrame(Me)}:function(Me){return setTimeout(Me,16)},cancel:typeof cancelAnimationFrame=="function"?function(Me){return cancelAnimationFrame(Me)}:clearTimeout},v=typeof performance!="undefined"&&performance.now?function(){return performance.now()}:function(){return+new Date};function _(){var Me={"":0},bt=[""];return{id:function(zt){var Rr=Me[zt];return Rr||(Rr=Me[zt]=bt.length,bt.push(zt),Rr)},str:function(zt){return bt[zt]}}}function b(Me,bt,zt){var Rr=document.createElement("canvas");e(Rr.style,{border:0,margin:0,padding:0,top:0,left:0,width:"100%",height:"100%"}),Me.appendChild(Rr),Me===document.body&&(Rr.style.position="absolute",e(Me.style,{margin:0,padding:0}));function jr(){var mi=window.innerWidth,Ui=window.innerHeight;if(Me!==document.body){var qi=Rr.getBoundingClientRect();mi=qi.right-qi.left,Ui=qi.bottom-qi.top}Rr.width=zt*mi,Rr.height=zt*Ui}var Nr;Me!==document.body&&typeof ResizeObserver=="function"?(Nr=new ResizeObserver(function(){setTimeout(jr)}),Nr.observe(Me)):window.addEventListener("resize",jr,!1);function Gr(){Nr?Nr.disconnect():window.removeEventListener("resize",jr),Me.removeChild(Rr)}return jr(),{canvas:Rr,onDestroy:Gr}}function p(Me,bt){function zt(Rr){try{return Me.getContext(Rr,bt)}catch(jr){return null}}return zt("webgl")||zt("experimental-webgl")||zt("webgl-experimental")}function k(Me){return typeof Me.nodeName=="string"&&typeof Me.appendChild=="function"&&typeof Me.getBoundingClientRect=="function"}function E(Me){return typeof Me.drawArrays=="function"||typeof Me.drawElements=="function"}function S(Me){return typeof Me=="string"?Me.split():Me}function L(Me){return typeof Me=="string"?document.querySelector(Me):Me}function x(Me){var bt=Me||{},zt,Rr,jr,Nr,Gr={},mi=[],Ui=[],qi=typeof window=="undefined"?1:window.devicePixelRatio,Ei=!1,Hn={},en=function(Mr){},Wi=function(){};if(typeof bt=="string"?zt=document.querySelector(bt):typeof bt=="object"&&(k(bt)?zt=bt:E(bt)?(Nr=bt,jr=Nr.canvas):("gl"in bt?Nr=bt.gl:"canvas"in bt?jr=L(bt.canvas):"container"in bt&&(Rr=L(bt.container)),"attributes"in bt&&(Gr=bt.attributes),"extensions"in bt&&(mi=S(bt.extensions)),"optionalExtensions"in bt&&(Ui=S(bt.optionalExtensions)),"onDone"in bt&&(en=bt.onDone),"profile"in bt&&(Ei=!!bt.profile),"pixelRatio"in bt&&(qi=+bt.pixelRatio),"cachedCode"in bt&&(Hn=bt.cachedCode))),zt&&(zt.nodeName.toLowerCase()==="canvas"?jr=zt:Rr=zt),!Nr){if(!jr){var si=b(Rr||document.body,en,qi);if(!si)return null;jr=si.canvas,Wi=si.onDestroy}Gr.premultipliedAlpha===void 0&&(Gr.premultipliedAlpha=!0),Nr=p(jr,Gr)}return Nr?{gl:Nr,canvas:jr,container:Rr,extensions:mi,optionalExtensions:Ui,pixelRatio:qi,profile:Ei,cachedCode:Hn,onDone:en,onDestroy:Wi}:(Wi(),en("webgl not supported, try upgrading your browser or graphics drivers http://get.webgl.org"),null)}function C(Me,bt){var zt={};function Rr(Gr){var mi=Gr.toLowerCase(),Ui;try{Ui=zt[mi]=Me.getExtension(mi)}catch(qi){}return!!Ui}for(var jr=0;jr<bt.extensions.length;++jr){var Nr=bt.extensions[jr];if(!Rr(Nr))return bt.onDestroy(),bt.onDone('"'+Nr+'" extension is not supported by the current WebGL context, try upgrading your system or a different browser'),null}return bt.optionalExtensions.forEach(Rr),{extensions:zt,restore:function(){Object.keys(zt).forEach(function(Gr){if(zt[Gr]&&!Rr(Gr))throw new Error("(regl): error restoring extension "+Gr)})}}}function M(Me,bt){for(var zt=Array(Me),Rr=0;Rr<Me;++Rr)zt[Rr]=bt(Rr);return zt}var g=5120,P=5121,T=5122,z=5123,O=5124,V=5125,G=5126;function Z(Me){for(var bt=16;bt<=1<<28;bt*=16)if(Me<=bt)return bt;return 0}function j(Me){var bt,zt;return bt=(Me>65535)<<4,Me>>>=bt,zt=(Me>255)<<3,Me>>>=zt,bt|=zt,zt=(Me>15)<<2,Me>>>=zt,bt|=zt,zt=(Me>3)<<1,Me>>>=zt,bt|=zt,bt|Me>>1}function N(){var Me=M(8,function(){return[]});function bt(Nr){var Gr=Z(Nr),mi=Me[j(Gr)>>2];return mi.length>0?mi.pop():new ArrayBuffer(Gr)}function zt(Nr){Me[j(Nr.byteLength)>>2].push(Nr)}function Rr(Nr,Gr){var mi=null;switch(Nr){case g:mi=new Int8Array(bt(Gr),0,Gr);break;case P:mi=new Uint8Array(bt(Gr),0,Gr);break;case T:mi=new Int16Array(bt(2*Gr),0,Gr);break;case z:mi=new Uint16Array(bt(2*Gr),0,Gr);break;case O:mi=new Int32Array(bt(4*Gr),0,Gr);break;case V:mi=new Uint32Array(bt(4*Gr),0,Gr);break;case G:mi=new Float32Array(bt(4*Gr),0,Gr);break;default:return null}return mi.length!==Gr?mi.subarray(0,Gr):mi}function jr(Nr){zt(Nr.buffer)}return{alloc:bt,free:zt,allocType:Rr,freeType:jr}}var H=N();H.zero=N();var te=3408,oe=3410,_e=3411,Ee=3412,Ce=3413,me=3414,ie=3415,Se=33901,Le=33902,Ae=3379,Fe=3386,Pe=34921,ge=36347,Re=36348,ce=35661,Ze=35660,ut=34930,pt=36349,Zt=34076,st=34024,lt=7936,Gt=7937,Nt=7938,Jt=35724,sr=34047,wr=36063,cr=34852,$e=3553,St=34067,Qt=34069,Vt=33984,_t=6408,It=5126,mt=5121,er=36160,lr=36053,Tr=36064,Lr=16384,ti=function(Me,bt){var zt=1;bt.ext_texture_filter_anisotropic&&(zt=Me.getParameter(sr));var Rr=1,jr=1;bt.webgl_draw_buffers&&(Rr=Me.getParameter(cr),jr=Me.getParameter(wr));var Nr=!!bt.oes_texture_float;if(Nr){var Gr=Me.createTexture();Me.bindTexture($e,Gr),Me.texImage2D($e,0,_t,1,1,0,_t,It,null);var mi=Me.createFramebuffer();if(Me.bindFramebuffer(er,mi),Me.framebufferTexture2D(er,Tr,$e,Gr,0),Me.bindTexture($e,null),Me.checkFramebufferStatus(er)!==lr)Nr=!1;else{Me.viewport(0,0,1,1),Me.clearColor(1,0,0,1),Me.clear(Lr);var Ui=H.allocType(It,4);Me.readPixels(0,0,1,1,_t,It,Ui),Me.getError()?Nr=!1:(Me.deleteFramebuffer(mi),Me.deleteTexture(Gr),Nr=Ui[0]===1),H.freeType(Ui)}}var qi=typeof navigator!="undefined"&&(/MSIE/.test(navigator.userAgent)||/Trident\//.test(navigator.appVersion)||/Edge/.test(navigator.userAgent)),Ei=!0;if(!qi){var Hn=Me.createTexture(),en=H.allocType(mt,36);Me.activeTexture(Vt),Me.bindTexture(St,Hn),Me.texImage2D(Qt,0,_t,3,3,0,_t,mt,en),H.freeType(en),Me.bindTexture(St,null),Me.deleteTexture(Hn),Ei=!Me.getError()}return{colorBits:[Me.getParameter(oe),Me.getParameter(_e),Me.getParameter(Ee),Me.getParameter(Ce)],depthBits:Me.getParameter(me),stencilBits:Me.getParameter(ie),subpixelBits:Me.getParameter(te),extensions:Object.keys(bt).filter(function(Wi){return!!bt[Wi]}),maxAnisotropic:zt,maxDrawbuffers:Rr,maxColorAttachments:jr,pointSizeDims:Me.getParameter(Se),lineWidthDims:Me.getParameter(Le),maxViewportDims:Me.getParameter(Fe),maxCombinedTextureUnits:Me.getParameter(ce),maxCubeMapSize:Me.getParameter(Zt),maxRenderbufferSize:Me.getParameter(st),maxTextureUnits:Me.getParameter(ut),maxTextureSize:Me.getParameter(Ae),maxAttributes:Me.getParameter(Pe),maxVertexUniforms:Me.getParameter(ge),maxVertexTextureUnits:Me.getParameter(Ze),maxVaryingVectors:Me.getParameter(Re),maxFragmentUniforms:Me.getParameter(pt),glsl:Me.getParameter(Jt),renderer:Me.getParameter(Gt),vendor:Me.getParameter(lt),version:Me.getParameter(Nt),readFloat:Nr,npotTextureCube:Ei}},Br=function(Me){return Me instanceof Uint8Array||Me instanceof Uint16Array||Me instanceof Uint32Array||Me instanceof Int8Array||Me instanceof Int16Array||Me instanceof Int32Array||Me instanceof Float32Array||Me instanceof Float64Array||Me instanceof Uint8ClampedArray};function Vr(Me){return!!Me&&typeof Me=="object"&&Array.isArray(Me.shape)&&Array.isArray(Me.stride)&&typeof Me.offset=="number"&&Me.shape.length===Me.stride.length&&(Array.isArray(Me.data)||Br(Me.data))}var dt=function(Me){return Object.keys(Me).map(function(bt){return Me[bt]})},Ge={shape:xe,flatten:Ie};function Je(Me,bt,zt){for(var Rr=0;Rr<bt;++Rr)zt[Rr]=Me[Rr]}function je(Me,bt,zt,Rr){for(var jr=0,Nr=0;Nr<bt;++Nr)for(var Gr=Me[Nr],mi=0;mi<zt;++mi)Rr[jr++]=Gr[mi]}function tt(Me,bt,zt,Rr,jr,Nr){for(var Gr=Nr,mi=0;mi<bt;++mi)for(var Ui=Me[mi],qi=0;qi<zt;++qi)for(var Ei=Ui[qi],Hn=0;Hn<Rr;++Hn)jr[Gr++]=Ei[Hn]}function xt(Me,bt,zt,Rr,jr){for(var Nr=1,Gr=zt+1;Gr<bt.length;++Gr)Nr*=bt[Gr];var mi=bt[zt];if(bt.length-zt===4){var Ui=bt[zt+1],qi=bt[zt+2],Ei=bt[zt+3];for(Gr=0;Gr<mi;++Gr)tt(Me[Gr],Ui,qi,Ei,Rr,jr),jr+=Nr}else for(Gr=0;Gr<mi;++Gr)xt(Me[Gr],bt,zt+1,Rr,jr),jr+=Nr}function Ie(Me,bt,zt,Rr){var jr=1;if(bt.length)for(var Nr=0;Nr<bt.length;++Nr)jr*=bt[Nr];else jr=0;var Gr=Rr||H.allocType(zt,jr);switch(bt.length){case 0:break;case 1:Je(Me,bt[0],Gr);break;case 2:je(Me,bt[0],bt[1],Gr);break;case 3:tt(Me,bt[0],bt[1],bt[2],Gr,0);break;default:xt(Me,bt,0,Gr,0)}return Gr}function xe(Me){for(var bt=[],zt=Me;zt.length;zt=zt[0])bt.push(zt.length);return bt}var ke={"[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,ir=5122,ar=5124,vr=5121,ii=5123,pi=5125,$r=5126,di=5126,ji={int8:vt,int16:ir,int32:ar,uint8:vr,uint16:ii,uint32:pi,float:$r,float32:di},In=35048,wi=35040,On={dynamic:In,stream:wi,static:35044},qn=Ge.flatten,Fn=Ge.shape,ra=35044,la=35040,Ut=5121,wt=5126,rr=[];rr[5120]=1,rr[5122]=2,rr[5124]=4,rr[5121]=1,rr[5123]=2,rr[5125]=4,rr[5126]=4;function nr(Me){return ke[Object.prototype.toString.call(Me)]|0}function Er(Me,bt){for(var zt=0;zt<bt.length;++zt)Me[zt]=bt[zt]}function Xr(Me,bt,zt,Rr,jr,Nr,Gr){for(var mi=0,Ui=0;Ui<zt;++Ui)for(var qi=0;qi<Rr;++qi)Me[mi++]=bt[jr*Ui+Nr*qi+Gr]}function ri(Me,bt,zt,Rr){var jr=0,Nr={};function Gr(Mr){this.id=jr++,this.buffer=Me.createBuffer(),this.type=Mr,this.usage=ra,this.byteLength=0,this.dimension=1,this.dtype=Ut,this.persistentData=null,zt.profile&&(this.stats={size:0})}Gr.prototype.bind=function(){Me.bindBuffer(this.type,this.buffer)},Gr.prototype.destroy=function(){en(this)};var mi=[];function Ui(Mr,Yr){var xi=mi.pop();return xi||(xi=new Gr(Mr)),xi.bind(),Hn(xi,Yr,la,0,1,!1),xi}function qi(Mr){mi.push(Mr)}function Ei(Mr,Yr,xi){Mr.byteLength=Yr.byteLength,Me.bufferData(Mr.type,Yr,xi)}function Hn(Mr,Yr,xi,Ri,ci,an){var Zi;if(Mr.usage=xi,Array.isArray(Yr)){if(Mr.dtype=Ri||wt,Yr.length>0){var Bn;if(Array.isArray(Yr[0])){Zi=Fn(Yr);for(var hi=1,li=1;li<Zi.length;++li)hi*=Zi[li];Mr.dimension=hi,Bn=qn(Yr,Zi,Mr.dtype),Ei(Mr,Bn,xi),an?Mr.persistentData=Bn:H.freeType(Bn)}else if(typeof Yr[0]=="number"){Mr.dimension=ci;var mn=H.allocType(Mr.dtype,Yr.length);Er(mn,Yr),Ei(Mr,mn,xi),an?Mr.persistentData=mn:H.freeType(mn)}else Br(Yr[0])&&(Mr.dimension=Yr[0].length,Mr.dtype=Ri||nr(Yr[0])||wt,Bn=qn(Yr,[Yr.length,Yr[0].length],Mr.dtype),Ei(Mr,Bn,xi),an?Mr.persistentData=Bn:H.freeType(Bn))}}else if(Br(Yr))Mr.dtype=Ri||nr(Yr),Mr.dimension=ci,Ei(Mr,Yr,xi),an&&(Mr.persistentData=new Uint8Array(new Uint8Array(Yr.buffer)));else if(Vr(Yr)){Zi=Yr.shape;var Ji=Yr.stride,Vi=Yr.offset,Ni=0,pn=0,Vn=0,na=0;Zi.length===1?(Ni=Zi[0],pn=1,Vn=Ji[0],na=0):Zi.length===2&&(Ni=Zi[0],pn=Zi[1],Vn=Ji[0],na=Ji[1]),Mr.dtype=Ri||nr(Yr.data)||wt,Mr.dimension=pn;var Ki=H.allocType(Mr.dtype,Ni*pn);Xr(Ki,Yr.data,Ni,pn,Vn,na,Vi),Ei(Mr,Ki,xi),an?Mr.persistentData=Ki:H.freeType(Ki)}else Yr instanceof ArrayBuffer&&(Mr.dtype=Ut,Mr.dimension=ci,Ei(Mr,Yr,xi),an&&(Mr.persistentData=new Uint8Array(new Uint8Array(Yr))))}function en(Mr){bt.bufferCount--,Rr(Mr);var Yr=Mr.buffer;Me.deleteBuffer(Yr),Mr.buffer=null,delete Nr[Mr.id]}function Wi(Mr,Yr,xi,Ri){bt.bufferCount++;var ci=new Gr(Yr);Nr[ci.id]=ci;function an(hi){var li=ra,mn=null,Ji=0,Vi=0,Ni=1;return Array.isArray(hi)||Br(hi)||Vr(hi)||hi instanceof ArrayBuffer?mn=hi:typeof hi=="number"?Ji=hi|0:hi&&("data"in hi&&(mn=hi.data),"usage"in hi&&(li=On[hi.usage]),"type"in hi&&(Vi=ji[hi.type]),"dimension"in hi&&(Ni=hi.dimension|0),"length"in hi&&(Ji=hi.length|0)),ci.bind(),mn?Hn(ci,mn,li,Vi,Ni,Ri):(Ji&&Me.bufferData(ci.type,Ji,li),ci.dtype=Vi||Ut,ci.usage=li,ci.dimension=Ni,ci.byteLength=Ji),zt.profile&&(ci.stats.size=ci.byteLength*rr[ci.dtype]),an}function Zi(hi,li){Me.bufferSubData(ci.type,li,hi)}function Bn(hi,li){var mn=(li||0)|0,Ji;if(ci.bind(),Br(hi)||hi instanceof ArrayBuffer)Zi(hi,mn);else if(Array.isArray(hi)){if(hi.length>0){if(typeof hi[0]=="number"){var Vi=H.allocType(ci.dtype,hi.length);Er(Vi,hi),Zi(Vi,mn),H.freeType(Vi)}else if(Array.isArray(hi[0])||Br(hi[0])){Ji=Fn(hi);var Ni=qn(hi,Ji,ci.dtype);Zi(Ni,mn),H.freeType(Ni)}}}else if(Vr(hi)){Ji=hi.shape;var pn=hi.stride,Vn=0,na=0,Ki=0,kn=0;Ji.length===1?(Vn=Ji[0],na=1,Ki=pn[0],kn=0):Ji.length===2&&(Vn=Ji[0],na=Ji[1],Ki=pn[0],kn=pn[1]);var ta=Array.isArray(hi.data)?ci.dtype:nr(hi.data),oa=H.allocType(ta,Vn*na);Xr(oa,hi.data,Vn,na,Ki,kn,hi.offset),Zi(oa,mn),H.freeType(oa)}return an}return xi||an(Mr),an._reglType="buffer",an._buffer=ci,an.subdata=Bn,zt.profile&&(an.stats=ci.stats),an.destroy=function(){en(ci)},an}function si(){dt(Nr).forEach(function(Mr){Mr.buffer=Me.createBuffer(),Me.bindBuffer(Mr.type,Mr.buffer),Me.bufferData(Mr.type,Mr.persistentData||Mr.byteLength,Mr.usage)})}return zt.profile&&(bt.getTotalBufferSize=function(){var Mr=0;return Object.keys(Nr).forEach(function(Yr){Mr+=Nr[Yr].stats.size}),Mr}),{create:Wi,createStream:Ui,destroyStream:qi,clear:function(){dt(Nr).forEach(en),mi.forEach(en)},getBuffer:function(Mr){return Mr&&Mr._buffer instanceof Gr?Mr._buffer:null},restore:si,_initBuffer:Hn}}var Qr=0,Oi=0,$i=1,tn=1,fn=4,yn=4,Sn={points:Qr,point:Oi,lines:$i,line:tn,triangles:fn,triangle:yn,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6},Ba=0,ua=1,ma=4,Wa=5120,Fa=5121,Wo=5122,da=5123,Wn=5124,Ha=5125,vo=34963,jn=35040,Mt=35044;function kr(Me,bt,zt,Rr){var jr={},Nr=0,Gr={uint8:Fa,uint16:da};bt.oes_element_index_uint&&(Gr.uint32=Ha);function mi(si){this.id=Nr++,jr[this.id]=this,this.buffer=si,this.primType=ma,this.vertCount=0,this.type=0}mi.prototype.bind=function(){this.buffer.bind()};var Ui=[];function qi(si){var Mr=Ui.pop();return Mr||(Mr=new mi(zt.create(null,vo,!0,!1)._buffer)),Hn(Mr,si,jn,-1,-1,0,0),Mr}function Ei(si){Ui.push(si)}function Hn(si,Mr,Yr,xi,Ri,ci,an){si.buffer.bind();var Zi;if(Mr){var Bn=an;!an&&(!Br(Mr)||Vr(Mr)&&!Br(Mr.data))&&(Bn=bt.oes_element_index_uint?Ha:da),zt._initBuffer(si.buffer,Mr,Yr,Bn,3)}else Me.bufferData(vo,ci,Yr),si.buffer.dtype=Zi||Fa,si.buffer.usage=Yr,si.buffer.dimension=3,si.buffer.byteLength=ci;if(Zi=an,!an){switch(si.buffer.dtype){case Fa:case Wa:Zi=Fa;break;case da:case Wo:Zi=da;break;case Ha:case Wn:Zi=Ha;break;default:}si.buffer.dtype=Zi}si.type=Zi;var hi=Ri;hi<0&&(hi=si.buffer.byteLength,Zi===da?hi>>=1:Zi===Ha&&(hi>>=2)),si.vertCount=hi;var li=xi;if(xi<0){li=ma;var mn=si.buffer.dimension;mn===1&&(li=Ba),mn===2&&(li=ua),mn===3&&(li=ma)}si.primType=li}function en(si){Rr.elementsCount--,delete jr[si.id],si.buffer.destroy(),si.buffer=null}function Wi(si,Mr){var Yr=zt.create(null,vo,!0),xi=new mi(Yr._buffer);Rr.elementsCount++;function Ri(ci){if(!ci)Yr(),xi.primType=ma,xi.vertCount=0,xi.type=Fa;else if(typeof ci=="number")Yr(ci),xi.primType=ma,xi.vertCount=ci|0,xi.type=Fa;else{var an=null,Zi=Mt,Bn=-1,hi=-1,li=0,mn=0;Array.isArray(ci)||Br(ci)||Vr(ci)?an=ci:("data"in ci&&(an=ci.data),"usage"in ci&&(Zi=On[ci.usage]),"primitive"in ci&&(Bn=Sn[ci.primitive]),"count"in ci&&(hi=ci.count|0),"type"in ci&&(mn=Gr[ci.type]),"length"in ci?li=ci.length|0:(li=hi,mn===da||mn===Wo?li*=2:(mn===Ha||mn===Wn)&&(li*=4))),Hn(xi,an,Zi,Bn,hi,li,mn)}return Ri}return Ri(si),Ri._reglType="elements",Ri._elements=xi,Ri.subdata=function(ci,an){return Yr.subdata(ci,an),Ri},Ri.destroy=function(){en(xi)},Ri}return{create:Wi,createStream:qi,destroyStream:Ei,getElements:function(si){return typeof si=="function"&&si._elements instanceof mi?si._elements:null},clear:function(){dt(jr).forEach(en)}}}var Jr=new Float32Array(1),vi=new Uint32Array(Jr.buffer),hn=5123;function An(Me){for(var bt=H.allocType(hn,Me.length),zt=0;zt<Me.length;++zt)if(isNaN(Me[zt]))bt[zt]=65535;else if(Me[zt]===1/0)bt[zt]=31744;else if(Me[zt]===-1/0)bt[zt]=64512;else{Jr[0]=Me[zt];var Rr=vi[0],jr=Rr>>>31<<15,Nr=(Rr<<1>>>24)-127,Gr=Rr>>13&1023;if(Nr<-24)bt[zt]=jr;else if(Nr<-14){var mi=-14-Nr;bt[zt]=jr+(Gr+1024>>mi)}else Nr>15?bt[zt]=jr+31744:bt[zt]=jr+(Nr+15<<10)+Gr}return bt}function Mn(Me){return Array.isArray(Me)||Br(Me)}var Li=34467,_n=3553,ya=34067,Jn=34069,Ma=6408,_o=6406,No=6407,po=6409,Lo=6410,ko=32854,Ds=32855,Fs=36194,ll=32819,ul=32820,zl=33635,us=34042,il=6402,As=34041,cl=35904,Ks=35906,zs=36193,Io=33776,ls=33777,Zl=33778,Su=33779,nc=35986,bs=35987,Rn=34798,_a=35840,Vu=35841,Ol=35842,xo=35843,Yl=36196,Ns=5121,Hl=5123,ac=5125,aa=5126,Oo=10242,qo=10243,ql=10497,Pc=33071,Do=33648,rf=10240,Uf=10241,pl=9728,Zc=9729,Kl=9984,Os=9985,yu=9986,oc=9987,Cf=33170,sc=4352,Vh=4353,Lf=4354,cs=34046,nf=3317,Vf=37440,Jl=37441,fl=37443,lc=37444,Fu=33984,Es=[Kl,yu,Os,oc],Hs=[0,po,Lo,No,Ma],Go={};Go[po]=Go[_o]=Go[il]=1,Go[As]=Go[Lo]=2,Go[No]=Go[cl]=3,Go[Ma]=Go[Ks]=4;function ps(Me){return"[object "+Me+"]"}var uc=ps("HTMLCanvasElement"),xl=ps("OffscreenCanvas"),Gu=ps("CanvasRenderingContext2D"),qs=ps("ImageBitmap"),ad=ps("HTMLImageElement"),Po=ps("HTMLVideoElement"),od=Object.keys(ke).concat([uc,xl,Gu,qs,ad,Po]),Yo=[];Yo[Ns]=1,Yo[aa]=4,Yo[zs]=2,Yo[Hl]=2,Yo[ac]=4;var Pa=[];Pa[ko]=2,Pa[Ds]=2,Pa[Fs]=2,Pa[As]=4,Pa[Io]=.5,Pa[ls]=.5,Pa[Zl]=1,Pa[Su]=1,Pa[nc]=.5,Pa[bs]=1,Pa[Rn]=1,Pa[_a]=.5,Pa[Vu]=.25,Pa[Ol]=.5,Pa[xo]=.25,Pa[Yl]=.5;function af(Me){return Array.isArray(Me)&&(Me.length===0||typeof Me[0]=="number")}function Hu(Me){if(!Array.isArray(Me))return!1;var bt=Me.length;return!(bt===0||!Mn(Me[0]))}function bl(Me){return Object.prototype.toString.call(Me)}function Gf(Me){return bl(Me)===uc}function Ic(Me){return bl(Me)===xl}function yf(Me){return bl(Me)===Gu}function Bl(Me){return bl(Me)===qs}function wh(Me){return bl(Me)===ad}function Qf(Me){return bl(Me)===Po}function _f(Me){if(!Me)return!1;var bt=bl(Me);return od.indexOf(bt)>=0?!0:af(Me)||Hu(Me)||Vr(Me)}function Yc(Me){return ke[Object.prototype.toString.call(Me)]|0}function eh(Me,bt){var zt=bt.length;switch(Me.type){case Ns:case Hl:case ac:case aa:var Rr=H.allocType(Me.type,zt);Rr.set(bt),Me.data=Rr;break;case zs:Me.data=An(bt);break;default:}}function th(Me,bt){return H.allocType(Me.type===zs?aa:Me.type,bt)}function ju(Me,bt){Me.type===zs?(Me.data=An(bt),H.freeType(bt)):Me.data=bt}function Hf(Me,bt,zt,Rr,jr,Nr){for(var Gr=Me.width,mi=Me.height,Ui=Me.channels,qi=Gr*mi*Ui,Ei=th(Me,qi),Hn=0,en=0;en<mi;++en)for(var Wi=0;Wi<Gr;++Wi)for(var si=0;si<Ui;++si)Ei[Hn++]=bt[zt*Wi+Rr*en+jr*si+Nr];ju(Me,Ei)}function cc(Me,bt,zt,Rr,jr,Nr){var Gr;if(typeof Pa[Me]!="undefined"?Gr=Pa[Me]:Gr=Go[Me]*Yo[bt],Nr&&(Gr*=6),jr){for(var mi=0,Ui=zt;Ui>=1;)mi+=Gr*Ui*Ui,Ui/=2;return mi}else return Gr*zt*Rr}function of(Me,bt,zt,Rr,jr,Nr,Gr){var mi={"don't care":sc,"dont care":sc,nice:Lf,fast:Vh},Ui={repeat:ql,clamp:Pc,mirror:Do},qi={nearest:pl,linear:Zc},Ei=e({mipmap:oc,"nearest mipmap nearest":Kl,"linear mipmap nearest":Os,"nearest mipmap linear":yu,"linear mipmap linear":oc},qi),Hn={none:0,browser:lc},en={uint8:Ns,rgba4:ll,rgb565:zl,"rgb5 a1":ul},Wi={alpha:_o,luminance:po,"luminance alpha":Lo,rgb:No,rgba:Ma,rgba4:ko,"rgb5 a1":Ds,rgb565:Fs},si={};bt.ext_srgb&&(Wi.srgb=cl,Wi.srgba=Ks),bt.oes_texture_float&&(en.float32=en.float=aa),bt.oes_texture_half_float&&(en.float16=en["half float"]=zs),bt.webgl_depth_texture&&(e(Wi,{depth:il,"depth stencil":As}),e(en,{uint16:Hl,uint32:ac,"depth stencil":us})),bt.webgl_compressed_texture_s3tc&&e(si,{"rgb s3tc dxt1":Io,"rgba s3tc dxt1":ls,"rgba s3tc dxt3":Zl,"rgba s3tc dxt5":Su}),bt.webgl_compressed_texture_atc&&e(si,{"rgb atc":nc,"rgba atc explicit alpha":bs,"rgba atc interpolated alpha":Rn}),bt.webgl_compressed_texture_pvrtc&&e(si,{"rgb pvrtc 4bppv1":_a,"rgb pvrtc 2bppv1":Vu,"rgba pvrtc 4bppv1":Ol,"rgba pvrtc 2bppv1":xo}),bt.webgl_compressed_texture_etc1&&(si["rgb etc1"]=Yl);var Mr=Array.prototype.slice.call(Me.getParameter(Li));Object.keys(si).forEach(function(ne){var we=si[ne];Mr.indexOf(we)>=0&&(Wi[ne]=we)});var Yr=Object.keys(Wi);zt.textureFormats=Yr;var xi=[];Object.keys(Wi).forEach(function(ne){var we=Wi[ne];xi[we]=ne});var Ri=[];Object.keys(en).forEach(function(ne){var we=en[ne];Ri[we]=ne});var ci=[];Object.keys(qi).forEach(function(ne){var we=qi[ne];ci[we]=ne});var an=[];Object.keys(Ei).forEach(function(ne){var we=Ei[ne];an[we]=ne});var Zi=[];Object.keys(Ui).forEach(function(ne){var we=Ui[ne];Zi[we]=ne});var Bn=Yr.reduce(function(ne,we){var Ue=Wi[we];return Ue===po||Ue===_o||Ue===po||Ue===Lo||Ue===il||Ue===As||bt.ext_srgb&&(Ue===cl||Ue===Ks)?ne[Ue]=Ue:Ue===Ds||we.indexOf("rgba")>=0?ne[Ue]=Ma:ne[Ue]=No,ne},{});function hi(){this.internalformat=Ma,this.format=Ma,this.type=Ns,this.compressed=!1,this.premultiplyAlpha=!1,this.flipY=!1,this.unpackAlignment=1,this.colorSpace=lc,this.width=0,this.height=0,this.channels=0}function li(ne,we){ne.internalformat=we.internalformat,ne.format=we.format,ne.type=we.type,ne.compressed=we.compressed,ne.premultiplyAlpha=we.premultiplyAlpha,ne.flipY=we.flipY,ne.unpackAlignment=we.unpackAlignment,ne.colorSpace=we.colorSpace,ne.width=we.width,ne.height=we.height,ne.channels=we.channels}function mn(ne,we){if(!(typeof we!="object"||!we)){if("premultiplyAlpha"in we&&(ne.premultiplyAlpha=we.premultiplyAlpha),"flipY"in we&&(ne.flipY=we.flipY),"alignment"in we&&(ne.unpackAlignment=we.alignment),"colorSpace"in we&&(ne.colorSpace=Hn[we.colorSpace]),"type"in we){var Ue=we.type;ne.type=en[Ue]}var ft=ne.width,Xt=ne.height,hr=ne.channels,qt=!1;"shape"in we?(ft=we.shape[0],Xt=we.shape[1],we.shape.length===3&&(hr=we.shape[2],qt=!0)):("radius"in we&&(ft=Xt=we.radius),"width"in we&&(ft=we.width),"height"in we&&(Xt=we.height),"channels"in we&&(hr=we.channels,qt=!0)),ne.width=ft|0,ne.height=Xt|0,ne.channels=hr|0;var Ve=!1;if("format"in we){var Qe=we.format,at=ne.internalformat=Wi[Qe];ne.format=Bn[at],Qe in en&&("type"in we||(ne.type=en[Qe])),Qe in si&&(ne.compressed=!0),Ve=!0}!qt&&Ve?ne.channels=Go[ne.format]:qt&&!Ve&&ne.channels!==Hs[ne.format]&&(ne.format=ne.internalformat=Hs[ne.channels])}}function Ji(ne){Me.pixelStorei(Vf,ne.flipY),Me.pixelStorei(Jl,ne.premultiplyAlpha),Me.pixelStorei(fl,ne.colorSpace),Me.pixelStorei(nf,ne.unpackAlignment)}function Vi(){hi.call(this),this.xOffset=0,this.yOffset=0,this.data=null,this.needsFree=!1,this.element=null,this.needsCopy=!1}function Ni(ne,we){var Ue=null;if(_f(we)?Ue=we:we&&(mn(ne,we),"x"in we&&(ne.xOffset=we.x|0),"y"in we&&(ne.yOffset=we.y|0),_f(we.data)&&(Ue=we.data)),we.copy){var ft=jr.viewportWidth,Xt=jr.viewportHeight;ne.width=ne.width||ft-ne.xOffset,ne.height=ne.height||Xt-ne.yOffset,ne.needsCopy=!0}else if(!Ue)ne.width=ne.width||1,ne.height=ne.height||1,ne.channels=ne.channels||4;else if(Br(Ue))ne.channels=ne.channels||4,ne.data=Ue,!("type"in we)&&ne.type===Ns&&(ne.type=Yc(Ue));else if(af(Ue))ne.channels=ne.channels||4,eh(ne,Ue),ne.alignment=1,ne.needsFree=!0;else if(Vr(Ue)){var hr=Ue.data;!Array.isArray(hr)&&ne.type===Ns&&(ne.type=Yc(hr));var qt=Ue.shape,Ve=Ue.stride,Qe,at,Ct,Ot,Rt,Bt;qt.length===3?(Ct=qt[2],Bt=Ve[2]):(Ct=1,Bt=1),Qe=qt[0],at=qt[1],Ot=Ve[0],Rt=Ve[1],ne.alignment=1,ne.width=Qe,ne.height=at,ne.channels=Ct,ne.format=ne.internalformat=Hs[Ct],ne.needsFree=!0,Hf(ne,hr,Ot,Rt,Bt,Ue.offset)}else if(Gf(Ue)||Ic(Ue)||yf(Ue))Gf(Ue)||Ic(Ue)?ne.element=Ue:ne.element=Ue.canvas,ne.width=ne.element.width,ne.height=ne.element.height,ne.channels=4;else if(Bl(Ue))ne.element=Ue,ne.width=Ue.width,ne.height=Ue.height,ne.channels=4;else if(wh(Ue))ne.element=Ue,ne.width=Ue.naturalWidth,ne.height=Ue.naturalHeight,ne.channels=4;else if(Qf(Ue))ne.element=Ue,ne.width=Ue.videoWidth,ne.height=Ue.videoHeight,ne.channels=4;else if(Hu(Ue)){var Dt=ne.width||Ue[0].length,yt=ne.height||Ue.length,Pt=ne.channels;Mn(Ue[0][0])?Pt=Pt||Ue[0][0].length:Pt=Pt||1;for(var ht=Ge.shape(Ue),ur=1,br=0;br<ht.length;++br)ur*=ht[br];var Ur=th(ne,ur);Ge.flatten(Ue,ht,"",Ur),ju(ne,Ur),ne.alignment=1,ne.width=Dt,ne.height=yt,ne.channels=Pt,ne.format=ne.internalformat=Hs[Pt],ne.needsFree=!0}ne.type===aa||ne.type}function pn(ne,we,Ue){var ft=ne.element,Xt=ne.data,hr=ne.internalformat,qt=ne.format,Ve=ne.type,Qe=ne.width,at=ne.height;Ji(ne),ft?Me.texImage2D(we,Ue,qt,qt,Ve,ft):ne.compressed?Me.compressedTexImage2D(we,Ue,hr,Qe,at,0,Xt):ne.needsCopy?(Rr(),Me.copyTexImage2D(we,Ue,qt,ne.xOffset,ne.yOffset,Qe,at,0)):Me.texImage2D(we,Ue,qt,Qe,at,0,qt,Ve,Xt||null)}function Vn(ne,we,Ue,ft,Xt){var hr=ne.element,qt=ne.data,Ve=ne.internalformat,Qe=ne.format,at=ne.type,Ct=ne.width,Ot=ne.height;Ji(ne),hr?Me.texSubImage2D(we,Xt,Ue,ft,Qe,at,hr):ne.compressed?Me.compressedTexSubImage2D(we,Xt,Ue,ft,Ve,Ct,Ot,qt):ne.needsCopy?(Rr(),Me.copyTexSubImage2D(we,Xt,Ue,ft,ne.xOffset,ne.yOffset,Ct,Ot)):Me.texSubImage2D(we,Xt,Ue,ft,Ct,Ot,Qe,at,qt)}var na=[];function Ki(){return na.pop()||new Vi}function kn(ne){ne.needsFree&&H.freeType(ne.data),Vi.call(ne),na.push(ne)}function ta(){hi.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]=Ki();ne.mipmask=1,ft.width=ne.width=we,ft.height=ne.height=Ue,ft.channels=ne.channels=4}function ba(ne,we){var Ue=null;if(_f(we))Ue=ne.images[0]=Ki(),li(Ue,ne),Ni(Ue,we),ne.mipmask=1;else if(mn(ne,we),Array.isArray(we.mipmap))for(var ft=we.mipmap,Xt=0;Xt<ft.length;++Xt)Ue=ne.images[Xt]=Ki(),li(Ue,ne),Ue.width>>=Xt,Ue.height>>=Xt,Ni(Ue,ft[Xt]),ne.mipmask|=1<<Xt;else Ue=ne.images[0]=Ki(),li(Ue,ne),Ni(Ue,we),ne.mipmask=1;li(ne,ne.images[0]),ne.compressed&&(ne.internalformat===Io||ne.internalformat===ls||ne.internalformat===Zl||ne.internalformat)}function is(ne,we){for(var Ue=ne.images,ft=0;ft<Ue.length;++ft){if(!Ue[ft])return;pn(Ue[ft],we,ft)}}var Zs=[];function Va(){var ne=Zs.pop()||new ta;hi.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]&&kn(we[Ue]),we[Ue]=null;Zs.push(ne)}function zo(){this.minFilter=pl,this.magFilter=pl,this.wrapS=Pc,this.wrapT=Pc,this.anisotropic=1,this.genMipmaps=!1,this.mipmapHint=sc}function Qs(ne,we){if("min"in we){var Ue=we.min;ne.minFilter=Ei[Ue],Es.indexOf(ne.minFilter)>=0&&!("faces"in we)&&(ne.genMipmaps=!0)}if("mag"in we){var ft=we.mag;ne.magFilter=qi[ft]}var Xt=ne.wrapS,hr=ne.wrapT;if("wrap"in we){var qt=we.wrap;typeof qt=="string"?Xt=hr=Ui[qt]:Array.isArray(qt)&&(Xt=Ui[qt[0]],hr=Ui[qt[1]])}else{if("wrapS"in we){var Ve=we.wrapS;Xt=Ui[Ve]}if("wrapT"in we){var Qe=we.wrapT;hr=Ui[Qe]}}if(ne.wrapS=Xt,ne.wrapT=hr,"anisotropic"in we){var at=we.anisotropic;ne.anisotropic=we.anisotropic}if("mipmap"in we){var Ct=!1;switch(typeof we.mipmap){case"string":ne.mipmapHint=mi[we.mipmap],ne.genMipmaps=!0,Ct=!0;break;case"boolean":Ct=ne.genMipmaps=we.mipmap;break;case"object":ne.genMipmaps=!1,Ct=!0;break;default:}Ct&&!("min"in we)&&(ne.minFilter=Kl)}}function al(ne,we){Me.texParameteri(we,Uf,ne.minFilter),Me.texParameteri(we,rf,ne.magFilter),Me.texParameteri(we,Oo,ne.wrapS),Me.texParameteri(we,qo,ne.wrapT),bt.ext_texture_filter_anisotropic&&Me.texParameteri(we,cs,ne.anisotropic),ne.genMipmaps&&(Me.hint(Cf,ne.mipmapHint),Me.generateMipmap(we))}var Vl=0,ss={},Vs=zt.maxTextureUnits,Ys=Array(Vs).map(function(){return null});function wa(ne){hi.call(this),this.mipmask=0,this.internalformat=Ma,this.id=Vl++,this.refCount=1,this.target=ne,this.texture=Me.createTexture(),this.unit=-1,this.bindCount=0,this.texInfo=new zo,Gr.profile&&(this.stats={size:0})}function ol(ne){Me.activeTexture(Fu),Me.bindTexture(ne.target,ne.texture)}function io(){var ne=Ys[0];ne?Me.bindTexture(ne.target,ne.texture):Me.bindTexture(_n,null)}function Y(ne){var we=ne.texture,Ue=ne.unit,ft=ne.target;Ue>=0&&(Me.activeTexture(Fu+Ue),Me.bindTexture(ft,null),Ys[Ue]=null),Me.deleteTexture(we),ne.texture=null,ne.params=null,ne.pixels=null,ne.refCount=0,delete ss[ne.id],Nr.textureCount--}e(wa.prototype,{bind:function(){var ne=this;ne.bindCount+=1;var we=ne.unit;if(we<0){for(var Ue=0;Ue<Vs;++Ue){var ft=Ys[Ue];if(ft){if(ft.bindCount>0)continue;ft.unit=-1}Ys[Ue]=ne,we=Ue;break}we>=Vs,Gr.profile&&Nr.maxTextureUnits<we+1&&(Nr.maxTextureUnits=we+1),ne.unit=we,Me.activeTexture(Fu+we),Me.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 wa(_n);ss[Ue.id]=Ue,Nr.textureCount++;function ft(qt,Ve){var Qe=Ue.texInfo;zo.call(Qe);var at=Va();return typeof qt=="number"?typeof Ve=="number"?oa(at,qt|0,Ve|0):oa(at,qt|0,qt|0):qt?(Qs(Qe,qt),ba(at,qt)):oa(at,1,1),Qe.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,ol(Ue),is(at,_n),al(Qe,_n),io(),Ml(at),Gr.profile&&(Ue.stats.size=cc(Ue.internalformat,Ue.type,at.width,at.height,Qe.genMipmaps,!1)),ft.format=xi[Ue.internalformat],ft.type=Ri[Ue.type],ft.mag=ci[Qe.magFilter],ft.min=an[Qe.minFilter],ft.wrapS=Zi[Qe.wrapS],ft.wrapT=Zi[Qe.wrapT],ft}function Xt(qt,Ve,Qe,at){var Ct=Ve|0,Ot=Qe|0,Rt=at|0,Bt=Ki();return li(Bt,Ue),Bt.width=0,Bt.height=0,Ni(Bt,qt),Bt.width=Bt.width||(Ue.width>>Rt)-Ct,Bt.height=Bt.height||(Ue.height>>Rt)-Ot,ol(Ue),Vn(Bt,_n,Ct,Ot,Rt),io(),kn(Bt),ft}function hr(qt,Ve){var Qe=qt|0,at=Ve|0||Qe;if(Qe===Ue.width&&at===Ue.height)return ft;ft.width=Ue.width=Qe,ft.height=Ue.height=at,ol(Ue);for(var Ct=0;Ue.mipmask>>Ct;++Ct){var Ot=Qe>>Ct,Rt=at>>Ct;if(!Ot||!Rt)break;Me.texImage2D(_n,Ct,Ue.format,Ot,Rt,0,Ue.format,Ue.type,null)}return io(),Gr.profile&&(Ue.stats.size=cc(Ue.internalformat,Ue.type,Qe,at,!1,!1)),ft}return ft(ne,we),ft.subimage=Xt,ft.resize=hr,ft._reglType="texture2d",ft._texture=Ue,Gr.profile&&(ft.stats=Ue.stats),ft.destroy=function(){Ue.decRef()},ft}function J(ne,we,Ue,ft,Xt,hr){var qt=new wa(ya);ss[qt.id]=qt,Nr.cubeCount++;var Ve=new Array(6);function Qe(Ot,Rt,Bt,Dt,yt,Pt){var ht,ur=qt.texInfo;for(zo.call(ur),ht=0;ht<6;++ht)Ve[ht]=Va();if(typeof Ot=="number"||!Ot){var br=Ot|0||1;for(ht=0;ht<6;++ht)oa(Ve[ht],br,br)}else if(typeof Ot=="object")if(Rt)ba(Ve[0],Ot),ba(Ve[1],Rt),ba(Ve[2],Bt),ba(Ve[3],Dt),ba(Ve[4],yt),ba(Ve[5],Pt);else if(Qs(ur,Ot),mn(qt,Ot),"faces"in Ot){var Ur=Ot.faces;for(ht=0;ht<6;++ht)li(Ve[ht],qt),ba(Ve[ht],Ur[ht])}else for(ht=0;ht<6;++ht)ba(Ve[ht],Ot);for(li(qt,Ve[0]),ur.genMipmaps?qt.mipmask=(Ve[0].width<<1)-1:qt.mipmask=Ve[0].mipmask,qt.internalformat=Ve[0].internalformat,Qe.width=Ve[0].width,Qe.height=Ve[0].height,ol(qt),ht=0;ht<6;++ht)is(Ve[ht],Jn+ht);for(al(ur,ya),io(),Gr.profile&&(qt.stats.size=cc(qt.internalformat,qt.type,Qe.width,Qe.height,ur.genMipmaps,!0)),Qe.format=xi[qt.internalformat],Qe.type=Ri[qt.type],Qe.mag=ci[ur.magFilter],Qe.min=an[ur.minFilter],Qe.wrapS=Zi[ur.wrapS],Qe.wrapT=Zi[ur.wrapT],ht=0;ht<6;++ht)Ml(Ve[ht]);return Qe}function at(Ot,Rt,Bt,Dt,yt){var Pt=Bt|0,ht=Dt|0,ur=yt|0,br=Ki();return li(br,qt),br.width=0,br.height=0,Ni(br,Rt),br.width=br.width||(qt.width>>ur)-Pt,br.height=br.height||(qt.height>>ur)-ht,ol(qt),Vn(br,Jn+Ot,Pt,ht,ur),io(),kn(br),Qe}function Ct(Ot){var Rt=Ot|0;if(Rt!==qt.width){Qe.width=qt.width=Rt,Qe.height=qt.height=Rt,ol(qt);for(var Bt=0;Bt<6;++Bt)for(var Dt=0;qt.mipmask>>Dt;++Dt)Me.texImage2D(Jn+Bt,Dt,qt.format,Rt>>Dt,Rt>>Dt,0,qt.format,qt.type,null);return io(),Gr.profile&&(qt.stats.size=cc(qt.internalformat,qt.type,Qe.width,Qe.height,!1,!0)),Qe}}return Qe(ne,we,Ue,ft,Xt,hr),Qe.subimage=at,Qe.resize=Ct,Qe._reglType="textureCube",Qe._texture=qt,Gr.profile&&(Qe.stats=qt.stats),Qe.destroy=function(){qt.decRef()},Qe}function q(){for(var ne=0;ne<Vs;++ne)Me.activeTexture(Fu+ne),Me.bindTexture(_n,null),Ys[ne]=null;dt(ss).forEach(Y),Nr.cubeCount=0,Nr.textureCount=0}Gr.profile&&(Nr.getTotalTextureSize=function(){var ne=0;return Object.keys(ss).forEach(function(we){ne+=ss[we].stats.size}),ne});function K(){for(var ne=0;ne<Vs;++ne){var we=Ys[ne];we&&(we.bindCount=0,we.unit=-1,Ys[ne]=null)}dt(ss).forEach(function(Ue){Ue.texture=Me.createTexture(),Me.bindTexture(Ue.target,Ue.texture);for(var ft=0;ft<32;++ft)if((Ue.mipmask&1<<ft)!==0)if(Ue.target===_n)Me.texImage2D(_n,ft,Ue.internalformat,Ue.width>>ft,Ue.height>>ft,0,Ue.internalformat,Ue.type,null);else for(var Xt=0;Xt<6;++Xt)Me.texImage2D(Jn+Xt,ft,Ue.internalformat,Ue.width>>ft,Ue.height>>ft,0,Ue.internalformat,Ue.type,null);al(Ue.texInfo,Ue.target)})}function de(){for(var ne=0;ne<Vs;++ne){var we=Ys[ne];we&&(we.bindCount=0,we.unit=-1,Ys[ne]=null),Me.activeTexture(Fu+ne),Me.bindTexture(_n,null),Me.bindTexture(ya,null)}}return{create2D:D,createCube:J,clear:q,getTexture:function(ne){return null},restore:K,refresh:de}}var Nl=36161,Kc=32854,Rc=32855,gs=36194,jf=33189,Gh=36168,rh=34041,sf=35907,Th=34836,Mu=34842,ih=34843,js=[];js[Kc]=2,js[Rc]=2,js[gs]=2,js[jf]=2,js[Gh]=1,js[rh]=4,js[sf]=4,js[Th]=16,js[Mu]=8,js[ih]=6;function Eu(Me,bt,zt){return js[Me]*bt*zt}var Dc=function(Me,bt,zt,Rr,jr){var Nr={rgba4:Kc,rgb565:gs,"rgb5 a1":Rc,depth:jf,stencil:Gh,"depth stencil":rh};bt.ext_srgb&&(Nr.srgba=sf),bt.ext_color_buffer_half_float&&(Nr.rgba16f=Mu,Nr.rgb16f=ih),bt.webgl_color_buffer_float&&(Nr.rgba32f=Th);var Gr=[];Object.keys(Nr).forEach(function(Wi){var si=Nr[Wi];Gr[si]=Wi});var mi=0,Ui={};function qi(Wi){this.id=mi++,this.refCount=1,this.renderbuffer=Wi,this.format=Kc,this.width=0,this.height=0,jr.profile&&(this.stats={size:0})}qi.prototype.decRef=function(){--this.refCount<=0&&Ei(this)};function Ei(Wi){var si=Wi.renderbuffer;Me.bindRenderbuffer(Nl,null),Me.deleteRenderbuffer(si),Wi.renderbuffer=null,Wi.refCount=0,delete Ui[Wi.id],Rr.renderbufferCount--}function Hn(Wi,si){var Mr=new qi(Me.createRenderbuffer());Ui[Mr.id]=Mr,Rr.renderbufferCount++;function Yr(Ri,ci){var an=0,Zi=0,Bn=Kc;if(typeof Ri=="object"&&Ri){var hi=Ri;if("shape"in hi){var li=hi.shape;an=li[0]|0,Zi=li[1]|0}else"radius"in hi&&(an=Zi=hi.radius|0),"width"in hi&&(an=hi.width|0),"height"in hi&&(Zi=hi.height|0);"format"in hi&&(Bn=Nr[hi.format])}else typeof Ri=="number"?(an=Ri|0,typeof ci=="number"?Zi=ci|0:Zi=an):Ri||(an=Zi=1);if(!(an===Mr.width&&Zi===Mr.height&&Bn===Mr.format))return Yr.width=Mr.width=an,Yr.height=Mr.height=Zi,Mr.format=Bn,Me.bindRenderbuffer(Nl,Mr.renderbuffer),Me.renderbufferStorage(Nl,Bn,an,Zi),jr.profile&&(Mr.stats.size=Eu(Mr.format,Mr.width,Mr.height)),Yr.format=Gr[Mr.format],Yr}function xi(Ri,ci){var an=Ri|0,Zi=ci|0||an;return an===Mr.width&&Zi===Mr.height||(Yr.width=Mr.width=an,Yr.height=Mr.height=Zi,Me.bindRenderbuffer(Nl,Mr.renderbuffer),Me.renderbufferStorage(Nl,Mr.format,an,Zi),jr.profile&&(Mr.stats.size=Eu(Mr.format,Mr.width,Mr.height))),Yr}return Yr(Wi,si),Yr.resize=xi,Yr._reglType="renderbuffer",Yr._renderbuffer=Mr,jr.profile&&(Yr.stats=Mr.stats),Yr.destroy=function(){Mr.decRef()},Yr}jr.profile&&(Rr.getTotalRenderbufferSize=function(){var Wi=0;return Object.keys(Ui).forEach(function(si){Wi+=Ui[si].stats.size}),Wi});function en(){dt(Ui).forEach(function(Wi){Wi.renderbuffer=Me.createRenderbuffer(),Me.bindRenderbuffer(Nl,Wi.renderbuffer),Me.renderbufferStorage(Nl,Wi.format,Wi.width,Wi.height)}),Me.bindRenderbuffer(Nl,null)}return{create:Hn,clear:function(){dt(Ui).forEach(Ei)},restore:en}},ks=36160,bc=36161,hu=3553,_u=34069,nl=36064,nh=36096,Ah=36128,zu=33306,Fc=36053,wc=36193,bd=5121,xf=5126,Pf=6407,Ou=6408,bf=[];bf[Ou]=4,bf[Pf]=3;var jl=[];jl[bd]=1,jl[xf]=4,jl[wc]=2;function lf(Me,bt,zt,Rr,jr,Nr){var Gr={cur:null,next:null,dirty:!1,setFBO:null},mi=["rgba"],Ui=["rgba4","rgb565","rgb5 a1"];bt.ext_srgb&&Ui.push("srgba"),bt.ext_color_buffer_half_float&&Ui.push("rgba16f","rgb16f"),bt.webgl_color_buffer_float&&Ui.push("rgba32f");var qi=["uint8"];bt.oes_texture_half_float&&qi.push("half float","float16"),bt.oes_texture_float&&qi.push("float","float32");function Ei(Vi,Ni,pn){this.target=Vi,this.texture=Ni,this.renderbuffer=pn;var Vn=0,na=0;Ni?(Vn=Ni.width,na=Ni.height):pn&&(Vn=pn.width,na=pn.height),this.width=Vn,this.height=na}function Hn(Vi){Vi&&(Vi.texture&&Vi.texture._texture.decRef(),Vi.renderbuffer&&Vi.renderbuffer._renderbuffer.decRef())}function en(Vi,Ni,pn){if(Vi)if(Vi.texture){var Vn=Vi.texture._texture,na=Math.max(1,Vn.width),Ki=Math.max(1,Vn.height);Vn.refCount+=1}else{var kn=Vi.renderbuffer._renderbuffer;kn.refCount+=1}}function Wi(Vi,Ni){Ni&&(Ni.texture?Me.framebufferTexture2D(ks,Vi,Ni.target,Ni.texture._texture.texture,0):Me.framebufferRenderbuffer(ks,Vi,bc,Ni.renderbuffer._renderbuffer.renderbuffer))}function si(Vi){var Ni=hu,pn=null,Vn=null,na=Vi;typeof Vi=="object"&&(na=Vi.data,"target"in Vi&&(Ni=Vi.target|0));var Ki=na._reglType;return Ki==="texture2d"||Ki==="textureCube"?pn=na:Ki==="renderbuffer"&&(Vn=na,Ni=bc),new Ei(Ni,pn,Vn)}function Mr(Vi,Ni,pn,Vn,na){if(pn){var Ki=Rr.create2D({width:Vi,height:Ni,format:Vn,type:na});return Ki._texture.refCount=0,new Ei(hu,Ki,null)}else{var kn=jr.create({width:Vi,height:Ni,format:Vn});return kn._renderbuffer.refCount=0,new Ei(bc,null,kn)}}function Yr(Vi){return Vi&&(Vi.texture||Vi.renderbuffer)}function xi(Vi,Ni,pn){Vi&&(Vi.texture?Vi.texture.resize(Ni,pn):Vi.renderbuffer&&Vi.renderbuffer.resize(Ni,pn),Vi.width=Ni,Vi.height=pn)}var Ri=0,ci={};function an(){this.id=Ri++,ci[this.id]=this,this.framebuffer=Me.createFramebuffer(),this.width=0,this.height=0,this.colorAttachments=[],this.depthAttachment=null,this.stencilAttachment=null,this.depthStencilAttachment=null}function Zi(Vi){Vi.colorAttachments.forEach(Hn),Hn(Vi.depthAttachment),Hn(Vi.stencilAttachment),Hn(Vi.depthStencilAttachment)}function Bn(Vi){var Ni=Vi.framebuffer;Me.deleteFramebuffer(Ni),Vi.framebuffer=null,Nr.framebufferCount--,delete ci[Vi.id]}function hi(Vi){var Ni;Me.bindFramebuffer(ks,Vi.framebuffer);var pn=Vi.colorAttachments;for(Ni=0;Ni<pn.length;++Ni)Wi(nl+Ni,pn[Ni]);for(Ni=pn.length;Ni<zt.maxColorAttachments;++Ni)Me.framebufferTexture2D(ks,nl+Ni,hu,null,0);Me.framebufferTexture2D(ks,zu,hu,null,0),Me.framebufferTexture2D(ks,nh,hu,null,0),Me.framebufferTexture2D(ks,Ah,hu,null,0),Wi(nh,Vi.depthAttachment),Wi(Ah,Vi.stencilAttachment),Wi(zu,Vi.depthStencilAttachment);var Vn=Me.checkFramebufferStatus(ks);Me.isContextLost(),Me.bindFramebuffer(ks,Gr.next?Gr.next.framebuffer:null),Gr.cur=Gr.next,Me.getError()}function li(Vi,Ni){var pn=new an;Nr.framebufferCount++;function Vn(Ki,kn){var ta,oa=0,ba=0,is=!0,Zs=!0,Va=null,Ml=!0,zo="rgba",Qs="uint8",al=1,Vl=null,ss=null,Vs=null,Ys=!1;if(typeof Ki=="number")oa=Ki|0,ba=kn|0||oa;else if(!Ki)oa=ba=1;else{var wa=Ki;if("shape"in wa){var ol=wa.shape;oa=ol[0],ba=ol[1]}else"radius"in wa&&(oa=ba=wa.radius),"width"in wa&&(oa=wa.width),"height"in wa&&(ba=wa.height);("color"in wa||"colors"in wa)&&(Va=wa.color||wa.colors,Array.isArray(Va)),Va||("colorCount"in wa&&(al=wa.colorCount|0),"colorTexture"in wa&&(Ml=!!wa.colorTexture,zo="rgba4"),"colorType"in wa&&(Qs=wa.colorType,Ml||(Qs==="half float"||Qs==="float16"?zo="rgba16f":(Qs==="float"||Qs==="float32")&&(zo="rgba32f"))),"colorFormat"in wa&&(zo=wa.colorFormat,mi.indexOf(zo)>=0?Ml=!0:Ui.indexOf(zo)>=0&&(Ml=!1))),("depthTexture"in wa||"depthStencilTexture"in wa)&&(Ys=!!(wa.depthTexture||wa.depthStencilTexture)),"depth"in wa&&(typeof wa.depth=="boolean"?is=wa.depth:(Vl=wa.depth,Zs=!1)),"stencil"in wa&&(typeof wa.stencil=="boolean"?Zs=wa.stencil:(ss=wa.stencil,is=!1)),"depthStencil"in wa&&(typeof wa.depthStencil=="boolean"?is=Zs=wa.depthStencil:(Vs=wa.depthStencil,is=!1,Zs=!1))}var io=null,Y=null,D=null,J=null;if(Array.isArray(Va))io=Va.map(si);else if(Va)io=[si(Va)];else for(io=new Array(al),ta=0;ta<al;++ta)io[ta]=Mr(oa,ba,Ml,zo,Qs);oa=oa||io[0].width,ba=ba||io[0].height,Vl?Y=si(Vl):is&&!Zs&&(Y=Mr(oa,ba,Ys,"depth","uint32")),ss?D=si(ss):Zs&&!is&&(D=Mr(oa,ba,!1,"stencil","uint8")),Vs?J=si(Vs):!Vl&&!ss&&Zs&&is&&(J=Mr(oa,ba,Ys,"depth stencil","depth stencil"));var q=null;for(ta=0;ta<io.length;++ta)if(en(io[ta],oa,ba),io[ta]&&io[ta].texture){var K=bf[io[ta].texture._texture.format]*jl[io[ta].texture._texture.type];q===null&&(q=K)}return en(Y,oa,ba),en(D,oa,ba),en(J,oa,ba),Zi(pn),pn.width=oa,pn.height=ba,pn.colorAttachments=io,pn.depthAttachment=Y,pn.stencilAttachment=D,pn.depthStencilAttachment=J,Vn.color=io.map(Yr),Vn.depth=Yr(Y),Vn.stencil=Yr(D),Vn.depthStencil=Yr(J),Vn.width=pn.width,Vn.height=pn.height,hi(pn),Vn}function na(Ki,kn){var ta=Math.max(Ki|0,1),oa=Math.max(kn|0||ta,1);if(ta===pn.width&&oa===pn.height)return Vn;for(var ba=pn.colorAttachments,is=0;is<ba.length;++is)xi(ba[is],ta,oa);return xi(pn.depthAttachment,ta,oa),xi(pn.stencilAttachment,ta,oa),xi(pn.depthStencilAttachment,ta,oa),pn.width=Vn.width=ta,pn.height=Vn.height=oa,hi(pn),Vn}return Vn(Vi,Ni),e(Vn,{resize:na,_reglType:"framebuffer",_framebuffer:pn,destroy:function(){Bn(pn),Zi(pn)},use:function(Ki){Gr.setFBO({framebuffer:Vn},Ki)}})}function mn(Vi){var Ni=Array(6);function pn(na){var Ki,kn={color:null},ta=0,oa=null,ba="rgba",is="uint8",Zs=1;if(typeof na=="number")ta=na|0;else if(!na)ta=1;else{var Va=na;if("shape"in Va){var Ml=Va.shape;ta=Ml[0]}else"radius"in Va&&(ta=Va.radius|0),"width"in Va?(ta=Va.width|0,"height"in Va):"height"in Va&&(ta=Va.height|0);("color"in Va||"colors"in Va)&&(oa=Va.color||Va.colors,Array.isArray(oa)),oa||("colorCount"in Va&&(Zs=Va.colorCount|0),"colorType"in Va&&(is=Va.colorType),"colorFormat"in Va&&(ba=Va.colorFormat)),"depth"in Va&&(kn.depth=Va.depth),"stencil"in Va&&(kn.stencil=Va.stencil),"depthStencil"in Va&&(kn.depthStencil=Va.depthStencil)}var zo;if(oa)if(Array.isArray(oa))for(zo=[],Ki=0;Ki<oa.length;++Ki)zo[Ki]=oa[Ki];else zo=[oa];else{zo=Array(Zs);var Qs={radius:ta,format:ba,type:is};for(Ki=0;Ki<Zs;++Ki)zo[Ki]=Rr.createCube(Qs)}for(kn.color=Array(zo.length),Ki=0;Ki<zo.length;++Ki){var al=zo[Ki];ta=ta||al.width,kn.color[Ki]={target:_u,data:zo[Ki]}}for(Ki=0;Ki<6;++Ki){for(var Vl=0;Vl<zo.length;++Vl)kn.color[Vl].target=_u+Ki;Ki>0&&(kn.depth=Ni[0].depth,kn.stencil=Ni[0].stencil,kn.depthStencil=Ni[0].depthStencil),Ni[Ki]?Ni[Ki](kn):Ni[Ki]=li(kn)}return e(pn,{width:ta,height:ta,color:zo})}function Vn(na){var Ki,kn=na|0;if(kn===pn.width)return pn;var ta=pn.color;for(Ki=0;Ki<ta.length;++Ki)ta[Ki].resize(kn);for(Ki=0;Ki<6;++Ki)Ni[Ki].resize(kn);return pn.width=pn.height=kn,pn}return pn(Vi),e(pn,{faces:Ni,resize:Vn,_reglType:"framebufferCube",destroy:function(){Ni.forEach(function(na){na.destroy()})}})}function Ji(){Gr.cur=null,Gr.next=null,Gr.dirty=!0,dt(ci).forEach(function(Vi){Vi.framebuffer=Me.createFramebuffer(),hi(Vi)})}return e(Gr,{getFramebuffer:function(Vi){if(typeof Vi=="function"&&Vi._reglType==="framebuffer"){var Ni=Vi._framebuffer;if(Ni instanceof an)return Ni}return null},create:li,createCube:mn,clear:function(){dt(ci).forEach(Bn)},restore:Ji})}var Hh=5126,If=34962,Cs=34963;function du(){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=Hh,this.offset=0,this.stride=0,this.divisor=0}function ku(Me,bt,zt,Rr,jr,Nr,Gr){for(var mi=zt.maxAttributes,Ui=new Array(mi),qi=0;qi<mi;++qi)Ui[qi]=new du;var Ei=0,Hn={},en={Record:du,scope:{},state:Ui,currentVAO:null,targetVAO:null,restore:si()?Zi:function(){},createVAO:Bn,getVAO:Yr,destroyBuffer:Wi,setVAO:si()?xi:Ri,clear:si()?ci:function(){}};function Wi(hi){for(var li=0;li<Ui.length;++li){var mn=Ui[li];mn.buffer===hi&&(Me.disableVertexAttribArray(li),mn.buffer=null)}}function si(){return bt.oes_vertex_array_object}function Mr(){return bt.angle_instanced_arrays}function Yr(hi){return typeof hi=="function"&&hi._vao?hi._vao:null}function xi(hi){if(hi!==en.currentVAO){var li=si();hi?li.bindVertexArrayOES(hi.vao):li.bindVertexArrayOES(null),en.currentVAO=hi}}function Ri(hi){if(hi!==en.currentVAO){if(hi)hi.bindAttrs();else{for(var li=Mr(),mn=0;mn<Ui.length;++mn){var Ji=Ui[mn];Ji.buffer?(Me.enableVertexAttribArray(mn),Ji.buffer.bind(),Me.vertexAttribPointer(mn,Ji.size,Ji.type,Ji.normalized,Ji.stride,Ji.offfset),li&&Ji.divisor&&li.vertexAttribDivisorANGLE(mn,Ji.divisor)):(Me.disableVertexAttribArray(mn),Me.vertexAttrib4f(mn,Ji.x,Ji.y,Ji.z,Ji.w))}Gr.elements?Me.bindBuffer(Cs,Gr.elements.buffer.buffer):Me.bindBuffer(Cs,null)}en.currentVAO=hi}}function ci(){dt(Hn).forEach(function(hi){hi.destroy()})}function an(){this.id=++Ei,this.attributes=[],this.elements=null,this.ownsElements=!1,this.count=0,this.offset=0,this.instances=-1,this.primitive=4;var hi=si();hi?this.vao=hi.createVertexArrayOES():this.vao=null,Hn[this.id]=this,this.buffers=[]}an.prototype.bindAttrs=function(){for(var hi=Mr(),li=this.attributes,mn=0;mn<li.length;++mn){var Ji=li[mn];Ji.buffer?(Me.enableVertexAttribArray(mn),Me.bindBuffer(If,Ji.buffer.buffer),Me.vertexAttribPointer(mn,Ji.size,Ji.type,Ji.normalized,Ji.stride,Ji.offset),hi&&Ji.divisor&&hi.vertexAttribDivisorANGLE(mn,Ji.divisor)):(Me.disableVertexAttribArray(mn),Me.vertexAttrib4f(mn,Ji.x,Ji.y,Ji.z,Ji.w))}for(var Vi=li.length;Vi<mi;++Vi)Me.disableVertexAttribArray(Vi);var Ni=Nr.getElements(this.elements);Ni?Me.bindBuffer(Cs,Ni.buffer.buffer):Me.bindBuffer(Cs,null)},an.prototype.refresh=function(){var hi=si();hi&&(hi.bindVertexArrayOES(this.vao),this.bindAttrs(),en.currentVAO=null,hi.bindVertexArrayOES(null))},an.prototype.destroy=function(){if(this.vao){var hi=si();this===en.currentVAO&&(en.currentVAO=null,hi.bindVertexArrayOES(null)),hi.deleteVertexArrayOES(this.vao),this.vao=null}this.ownsElements&&(this.elements.destroy(),this.elements=null,this.ownsElements=!1),Hn[this.id]&&(delete Hn[this.id],Rr.vaoCount-=1)};function Zi(){var hi=si();hi&&dt(Hn).forEach(function(li){li.refresh()})}function Bn(hi){var li=new an;Rr.vaoCount+=1;function mn(Ji){var Vi;if(Array.isArray(Ji))Vi=Ji,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(Ji.elements){var Ni=Ji.elements;li.ownsElements?typeof Ni=="function"&&Ni._reglType==="elements"?(li.elements.destroy(),li.ownsElements=!1):(li.elements(Ni),li.ownsElements=!1):Nr.getElements(Ji.elements)?(li.elements=Ji.elements,li.ownsElements=!1):(li.elements=Nr.create(Ji.elements),li.ownsElements=!0)}else li.elements=null,li.ownsElements=!1;Vi=Ji.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 Ji&&(li.offset=Ji.offset|0),"count"in Ji&&(li.count=Ji.count|0),"instances"in Ji&&(li.instances=Ji.instances|0),"primitive"in Ji&&(li.primitive=Sn[Ji.primitive])}var pn={},Vn=li.attributes;Vn.length=Vi.length;for(var na=0;na<Vi.length;++na){var Ki=Vi[na],kn=Vn[na]=new du,ta=Ki.data||Ki;if(Array.isArray(ta)||Br(ta)||Vr(ta)){var oa;li.buffers[na]&&(oa=li.buffers[na],Br(ta)&&oa._buffer.byteLength>=ta.byteLength?oa.subdata(ta):(oa.destroy(),li.buffers[na]=null)),li.buffers[na]||(oa=li.buffers[na]=jr.create(Ki,If,!1,!0)),kn.buffer=jr.getBuffer(oa),kn.size=kn.buffer.dimension|0,kn.normalized=!1,kn.type=kn.buffer.dtype,kn.offset=0,kn.stride=0,kn.divisor=0,kn.state=1,pn[na]=1}else jr.getBuffer(Ki)?(kn.buffer=jr.getBuffer(Ki),kn.size=kn.buffer.dimension|0,kn.normalized=!1,kn.type=kn.buffer.dtype,kn.offset=0,kn.stride=0,kn.divisor=0,kn.state=1):jr.getBuffer(Ki.buffer)?(kn.buffer=jr.getBuffer(Ki.buffer),kn.size=(+Ki.size||kn.buffer.dimension)|0,kn.normalized=!!Ki.normalized||!1,"type"in Ki?kn.type=ji[Ki.type]:kn.type=kn.buffer.dtype,kn.offset=(Ki.offset||0)|0,kn.stride=(Ki.stride||0)|0,kn.divisor=(Ki.divisor||0)|0,kn.state=1):"x"in Ki&&(kn.x=+Ki.x||0,kn.y=+Ki.y||0,kn.z=+Ki.z||0,kn.w=+Ki.w||0,kn.state=2)}for(var ba=0;ba<li.buffers.length;++ba)!pn[ba]&&li.buffers[ba]&&(li.buffers[ba].destroy(),li.buffers[ba]=null);return li.refresh(),mn}return mn.destroy=function(){for(var Ji=0;Ji<li.buffers.length;++Ji)li.buffers[Ji]&&li.buffers[Ji].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(hi)}return en}var Wf=35632,Us=35633,wf=35718,zc=35721;function Wu(Me,bt,zt,Rr){var jr={},Nr={};function Gr(Mr,Yr,xi,Ri){this.name=Mr,this.id=Yr,this.location=xi,this.info=Ri}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 Ui(Mr,Yr,xi){var Ri=Mr===Wf?jr:Nr,ci=Ri[Yr];if(!ci){var an=bt.str(Yr);ci=Me.createShader(Mr),Me.shaderSource(ci,an),Me.compileShader(ci),Ri[Yr]=ci}return ci}var qi={},Ei=[],Hn=0;function en(Mr,Yr){this.id=Hn++,this.fragId=Mr,this.vertId=Yr,this.program=null,this.uniforms=[],this.attributes=[],this.refCount=1,Rr.profile&&(this.stats={uniformsCount:0,attributesCount:0})}function Wi(Mr,Yr,xi){var Ri,ci,an=Ui(Wf,Mr.fragId),Zi=Ui(Us,Mr.vertId),Bn=Mr.program=Me.createProgram();if(Me.attachShader(Bn,an),Me.attachShader(Bn,Zi),xi)for(Ri=0;Ri<xi.length;++Ri){var hi=xi[Ri];Me.bindAttribLocation(Bn,hi[0],hi[1])}Me.linkProgram(Bn);var li=Me.getProgramParameter(Bn,wf);Rr.profile&&(Mr.stats.uniformsCount=li);var mn=Mr.uniforms;for(Ri=0;Ri<li;++Ri)if(ci=Me.getActiveUniform(Bn,Ri),ci)if(ci.size>1)for(var Ji=0;Ji<ci.size;++Ji){var Vi=ci.name.replace("[0]","["+Ji+"]");mi(mn,new Gr(Vi,bt.id(Vi),Me.getUniformLocation(Bn,Vi),ci))}else mi(mn,new Gr(ci.name,bt.id(ci.name),Me.getUniformLocation(Bn,ci.name),ci));var Ni=Me.getProgramParameter(Bn,zc);Rr.profile&&(Mr.stats.attributesCount=Ni);var pn=Mr.attributes;for(Ri=0;Ri<Ni;++Ri)ci=Me.getActiveAttrib(Bn,Ri),ci&&mi(pn,new Gr(ci.name,bt.id(ci.name),Me.getAttribLocation(Bn,ci.name),ci))}Rr.profile&&(zt.getMaxUniformsCount=function(){var Mr=0;return Ei.forEach(function(Yr){Yr.stats.uniformsCount>Mr&&(Mr=Yr.stats.uniformsCount)}),Mr},zt.getMaxAttributesCount=function(){var Mr=0;return Ei.forEach(function(Yr){Yr.stats.attributesCount>Mr&&(Mr=Yr.stats.attributesCount)}),Mr});function si(){jr={},Nr={};for(var Mr=0;Mr<Ei.length;++Mr)Wi(Ei[Mr],null,Ei[Mr].attributes.map(function(Yr){return[Yr.location,Yr.name]}))}return{clear:function(){var Mr=Me.deleteShader.bind(Me);dt(jr).forEach(Mr),jr={},dt(Nr).forEach(Mr),Nr={},Ei.forEach(function(Yr){Me.deleteProgram(Yr.program)}),Ei.length=0,qi={},zt.shaderCount=0},program:function(Mr,Yr,xi,Ri){var ci=qi[Yr];ci||(ci=qi[Yr]={});var an=ci[Mr];if(an&&(an.refCount++,!Ri))return an;var Zi=new en(Yr,Mr);return zt.shaderCount++,Wi(Zi,xi,Ri),an||(ci[Mr]=Zi),Ei.push(Zi),e(Zi,{destroy:function(){if(Zi.refCount--,Zi.refCount<=0){Me.deleteProgram(Zi.program);var Bn=Ei.indexOf(Zi);Ei.splice(Bn,1),zt.shaderCount--}ci[Zi.vertId].refCount<=0&&(Me.deleteShader(Nr[Zi.vertId]),delete Nr[Zi.vertId],delete qi[Zi.fragId][Zi.vertId]),Object.keys(qi[Zi.fragId]).length||(Me.deleteShader(jr[Zi.fragId]),delete jr[Zi.fragId],delete qi[Zi.fragId])}})},restore:si,shader:Ui,frag:-1,vert:-1}}var Rf=6408,Xu=5121,uf=3333,Xf=5126;function Wl(Me,bt,zt,Rr,jr,Nr,Gr){function mi(Ei){var Hn;bt.next===null?Hn=Xu:Hn=bt.next.colorAttachments[0].texture._texture.type;var en=0,Wi=0,si=Rr.framebufferWidth,Mr=Rr.framebufferHeight,Yr=null;Br(Ei)?Yr=Ei:Ei&&(en=Ei.x|0,Wi=Ei.y|0,si=(Ei.width||Rr.framebufferWidth-en)|0,Mr=(Ei.height||Rr.framebufferHeight-Wi)|0,Yr=Ei.data||null),zt();var xi=si*Mr*4;return Yr||(Hn===Xu?Yr=new Uint8Array(xi):Hn===Xf&&(Yr=Yr||new Float32Array(xi))),Me.pixelStorei(uf,4),Me.readPixels(en,Wi,si,Mr,Rf,Hn,Yr),Yr}function Ui(Ei){var Hn;return bt.setFBO({framebuffer:Ei.framebuffer},function(){Hn=mi(Ei)}),Hn}function qi(Ei){return!Ei||!("framebuffer"in Ei)?mi(Ei):Ui(Ei)}return qi}var ah=0,Zu="";function Oc(Me){return vu(Tc(fc(Me)))}function Tc(Me){return At(Yi(Bc(Me),Me.length*8))}function wl(Me,bt){var zt=Bc(Me);zt.length>16&&(zt=Yi(zt,Me.length*8));for(var Rr=Array(16),jr=Array(16),Nr=0;Nr<16;Nr++)Rr[Nr]=zt[Nr]^909522486,jr[Nr]=zt[Nr]^1549556828;var Gr=Yi(Rr.concat(Bc(bt)),512+bt.length*8);return At(Yi(jr.concat(Gr),768))}function vu(Me){for(var bt=ah?"0123456789ABCDEF":"0123456789abcdef",zt="",Rr,jr=0;jr<Me.length;jr++)Rr=Me.charCodeAt(jr),zt+=bt.charAt(Rr>>>4&15)+bt.charAt(Rr&15);return zt}function qc(Me){for(var bt="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",zt="",Rr=Me.length,jr=0;jr<Rr;jr+=3)for(var Nr=Me.charCodeAt(jr)<<16|(jr+1<Rr?Me.charCodeAt(jr+1)<<8:0)|(jr+2<Rr?Me.charCodeAt(jr+2):0),Gr=0;Gr<4;Gr++)jr*8+Gr*6>Me.length*8?zt+=Zu:zt+=bt.charAt(Nr>>>6*(3-Gr)&63);return zt}function cf(Me,bt){var zt=bt.length,Rr=Array(),jr,Nr,Gr,mi,Ui=Array(Math.ceil(Me.length/2));for(jr=0;jr<Ui.length;jr++)Ui[jr]=Me.charCodeAt(jr*2)<<8|Me.charCodeAt(jr*2+1);for(;Ui.length>0;){for(mi=Array(),Gr=0,jr=0;jr<Ui.length;jr++)Gr=(Gr<<16)+Ui[jr],Nr=Math.floor(Gr/zt),Gr-=Nr*zt,(mi.length>0||Nr>0)&&(mi[mi.length]=Nr);Rr[Rr.length]=Gr,Ui=mi}var qi="";for(jr=Rr.length-1;jr>=0;jr--)qi+=bt.charAt(Rr[jr]);var Ei=Math.ceil(Me.length*8/(Math.log(bt.length)/Math.log(2)));for(jr=qi.length;jr<Ei;jr++)qi=bt[0]+qi;return qi}function fc(Me){for(var bt="",zt=-1,Rr,jr;++zt<Me.length;)Rr=Me.charCodeAt(zt),jr=zt+1<Me.length?Me.charCodeAt(zt+1):0,55296<=Rr&&Rr<=56319&&56320<=jr&&jr<=57343&&(Rr=65536+((Rr&1023)<<10)+(jr&1023),zt++),Rr<=127?bt+=String.fromCharCode(Rr):Rr<=2047?bt+=String.fromCharCode(192|Rr>>>6&31,128|Rr&63):Rr<=65535?bt+=String.fromCharCode(224|Rr>>>12&15,128|Rr>>>6&63,128|Rr&63):Rr<=2097151&&(bt+=String.fromCharCode(240|Rr>>>18&7,128|Rr>>>12&63,128|Rr>>>6&63,128|Rr&63));return bt}function Bc(Me){for(var bt=Array(Me.length>>2),zt=0;zt<bt.length;zt++)bt[zt]=0;for(var zt=0;zt<Me.length*8;zt+=8)bt[zt>>5]|=(Me.charCodeAt(zt/8)&255)<<24-zt%32;return bt}function At(Me){for(var bt="",zt=0;zt<Me.length*32;zt+=8)bt+=String.fromCharCode(Me[zt>>5]>>>24-zt%32&255);return bt}function Wt(Me,bt){return Me>>>bt|Me<<32-bt}function Cr(Me,bt){return Me>>>bt}function Ar(Me,bt,zt){return Me&bt^~Me&zt}function Kr(Me,bt,zt){return Me&bt^Me&zt^bt&zt}function ki(Me){return Wt(Me,2)^Wt(Me,13)^Wt(Me,22)}function Xi(Me){return Wt(Me,6)^Wt(Me,11)^Wt(Me,25)}function dn(Me){return Wt(Me,7)^Wt(Me,18)^Cr(Me,3)}function wn(Me){return Wt(Me,17)^Wt(Me,19)^Cr(Me,10)}var Nn=new Array(1116352408,1899447441,-1245643825,-373957723,961987163,1508970993,-1841331548,-1424204075,-670586216,310598401,607225278,1426881987,1925078388,-2132889090,-1680079193,-1046744716,-459576895,-272742522,264347078,604807628,770255983,1249150122,1555081692,1996064986,-1740746414,-1473132947,-1341970488,-1084653625,-958395405,-710438585,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,-2117940946,-1838011259,-1564481375,-1474664885,-1035236496,-949202525,-778901479,-694614492,-200395387,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,-2067236844,-1933114872,-1866530822,-1538233109,-1090935817,-965641998);function Yi(Me,bt){var zt=new Array(1779033703,-1150833019,1013904242,-1521486534,1359893119,-1694144372,528734635,1541459225),Rr=new Array(64),jr,Nr,Gr,mi,Ui,qi,Ei,Hn,en,Wi,si,Mr;for(Me[bt>>5]|=128<<24-bt%32,Me[(bt+64>>9<<4)+15]=bt,en=0;en<Me.length;en+=16){for(jr=zt[0],Nr=zt[1],Gr=zt[2],mi=zt[3],Ui=zt[4],qi=zt[5],Ei=zt[6],Hn=zt[7],Wi=0;Wi<64;Wi++)Wi<16?Rr[Wi]=Me[Wi+en]:Rr[Wi]=Qi(Qi(Qi(wn(Rr[Wi-2]),Rr[Wi-7]),dn(Rr[Wi-15])),Rr[Wi-16]),si=Qi(Qi(Qi(Qi(Hn,Xi(Ui)),Ar(Ui,qi,Ei)),Nn[Wi]),Rr[Wi]),Mr=Qi(ki(jr),Kr(jr,Nr,Gr)),Hn=Ei,Ei=qi,qi=Ui,Ui=Qi(mi,si),mi=Gr,Gr=Nr,Nr=jr,jr=Qi(si,Mr);zt[0]=Qi(jr,zt[0]),zt[1]=Qi(Nr,zt[1]),zt[2]=Qi(Gr,zt[2]),zt[3]=Qi(mi,zt[3]),zt[4]=Qi(Ui,zt[4]),zt[5]=Qi(qi,zt[5]),zt[6]=Qi(Ei,zt[6]),zt[7]=Qi(Hn,zt[7])}return zt}function Qi(Me,bt){var zt=(Me&65535)+(bt&65535),Rr=(Me>>16)+(bt>>16)+(zt>>16);return Rr<<16|zt&65535}function on(Me){return Array.prototype.slice.call(Me)}function Fi(Me){return on(Me).join("")}function $n(Me){var bt=Me&&Me.cache,zt=0,Rr=[],jr=[],Nr=[];function Gr(si,Mr){var Yr=Mr&&Mr.stable;if(!Yr){for(var xi=0;xi<jr.length;++xi)if(jr[xi]===si&&!Nr[xi])return Rr[xi]}var Ri="g"+zt++;return Rr.push(Ri),jr.push(si),Nr.push(Yr),Ri}function mi(){var si=[];function Mr(){si.push.apply(si,on(arguments))}var Yr=[];function xi(){var Ri="v"+zt++;return Yr.push(Ri),arguments.length>0&&(si.push(Ri,"="),si.push.apply(si,on(arguments)),si.push(";")),Ri}return e(Mr,{def:xi,toString:function(){return Fi([Yr.length>0?"var "+Yr.join(",")+";":"",Fi(si)])}})}function Ui(){var si=mi(),Mr=mi(),Yr=si.toString,xi=Mr.toString;function Ri(ci,an){Mr(ci,an,"=",si.def(ci,an),";")}return e(function(){si.apply(si,on(arguments))},{def:si.def,entry:si,exit:Mr,save:Ri,set:function(ci,an,Zi){Ri(ci,an),si(ci,an,"=",Zi,";")},toString:function(){return Yr()+xi()}})}function qi(){var si=Fi(arguments),Mr=Ui(),Yr=Ui(),xi=Mr.toString,Ri=Yr.toString;return e(Mr,{then:function(){return Mr.apply(Mr,on(arguments)),this},else:function(){return Yr.apply(Yr,on(arguments)),this},toString:function(){var ci=Ri();return ci&&(ci="else{"+ci+"}"),Fi(["if(",si,"){",xi(),"}",ci])}})}var Ei=mi(),Hn={};function en(si,Mr){var Yr=[];function xi(){var Bn="a"+Yr.length;return Yr.push(Bn),Bn}Mr=Mr||0;for(var Ri=0;Ri<Mr;++Ri)xi();var ci=Ui(),an=ci.toString,Zi=Hn[si]=e(ci,{arg:xi,toString:function(){return Fi(["function(",Yr.join(),"){",an(),"}"])}});return Zi}function Wi(){var si=['"use strict";',Ei,"return {"];Object.keys(Hn).forEach(function(Ri){si.push('"',Ri,'":',Hn[Ri].toString(),",")}),si.push("}");var Mr=Fi(si).replace(/;/g,`;
`).replace(/}/g,`}
`).replace(/{/g,`{
`),Yr;if(bt&&(Yr=Oc(Mr),bt[Yr]))return bt[Yr].apply(null,jr);var xi=Function.apply(null,Rr.concat(Mr));return bt&&(bt[Yr]=xi),xi.apply(null,jr)}return{global:Ei,link:Gr,block:mi,proc:en,scope:Ui,cond:qi,compile:Wi}}var Ca="xyzw".split(""),Ra=5121,La=1,Na=2,Yn=0,Dn=1,Ka=2,bo=3,Xo=4,Ss=5,as=6,ws="dither",Ho="blend.enable",ml="blend.color",Ws="blend.equation",Ls="blend.func",va="depth.enable",no="depth.func",ys="depth.range",rs="depth.mask",$l="colorMask",Cu="cull.enable",Yu="cull.face",Nc="frontFace",pu="lineWidth",Uc="polygonOffset.enable",xu="polygonOffset.offset",Ac="sample.alpha",Ua="sample.enable",oo="sample.coverage",Vc="stencil.enable",hc="stencil.mask",Ku="stencil.func",ue="stencil.opFront",w="stencil.opBack",B="scissor.enable",Q="scissor.box",ee="viewport",le="profile",qe="framebuffer",Xe="vert",ot="frag",Tt="elements",Yt="primitive",Kt="count",xr="offset",Ir="instances",ve="vao",be="Width",De="Height",Be=qe+be,et=qe+De,We=ee+be,it=ee+De,Ft="drawingBuffer",Ht=Ft+be,tr=Ft+De,dr=[Ls,Ws,Ku,ue,w,oo,ee,Q,xu],Sr=34962,Or=34963,Wr=2884,ni=3042,Pi=3024,cn=2960,ln=2929,Cn=3089,Kn=32823,Ta=32926,fa=32928,$a=5126,Co=35664,Qa=35665,mo=35666,Bo=5124,Ps=35667,Ts=35668,wo=35669,To=35670,hl=35671,Ul=35672,Lu=35673,au=35674,Js=35675,Ql=35676,dc=35678,Tl=35680,Al=4,X=1028,se=1029,Te=2304,Ne=2305,He=32775,Ye=32776,kt=519,nt=7680,jt=0,gr=1,yr=32774,Hr=513,qr=36160,_i=36064,bi={0:0,1:1,zero:0,one:1,"src color":768,"one minus src color":769,"src alpha":770,"one minus src alpha":771,"dst color":774,"one minus dst color":775,"dst alpha":772,"one minus dst alpha":773,"constant color":32769,"one minus constant color":32770,"constant alpha":32771,"one minus constant alpha":32772,"src alpha saturate":776},Zr={never:512,less:513,"<":513,equal:514,"=":514,"==":514,"===":514,lequal:515,"<=":515,greater:516,">":516,notequal:517,"!=":517,"!==":517,gequal:518,">=":518,always:519},ai={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,"increment wrap":34055,"decrement wrap":34056,invert:5386},gi={cw:Te,ccw:Ne};function Ii(Me){return Array.isArray(Me)||Br(Me)||Vr(Me)}function Si(Me){return Me.sort(function(bt,zt){return bt===ee?-1:zt===ee?1:bt<zt?-1:1})}function ei(Me,bt,zt,Rr){this.thisDep=Me,this.contextDep=bt,this.propDep=zt,this.append=Rr}function Ln(Me){return Me&&!(Me.thisDep||Me.contextDep||Me.propDep)}function En(Me){return new ei(!1,!1,!1,Me)}function Un(Me,bt){var zt=Me.type;if(zt===Yn){var Rr=Me.data.length;return new ei(!0,Rr>=1,Rr>=2,bt)}else if(zt===Xo){var jr=Me.data;return new ei(jr.thisDep,jr.contextDep,jr.propDep,bt)}else{if(zt===Ss)return new ei(!1,!1,!1,bt);if(zt===as){for(var Nr=!1,Gr=!1,mi=!1,Ui=0;Ui<Me.data.length;++Ui){var qi=Me.data[Ui];if(qi.type===Dn)mi=!0;else if(qi.type===Ka)Gr=!0;else if(qi.type===bo)Nr=!0;else if(qi.type===Yn){Nr=!0;var Ei=qi.data;Ei>=1&&(Gr=!0),Ei>=2&&(mi=!0)}else qi.type===Xo&&(Nr=Nr||qi.data.thisDep,Gr=Gr||qi.data.contextDep,mi=mi||qi.data.propDep)}return new ei(Nr,Gr,mi,bt)}else return new ei(zt===bo,zt===Ka,zt===Dn,bt)}}var ia=new ei(!1,!1,!1,function(){});function Ea(Me,bt,zt,Rr,jr,Nr,Gr,mi,Ui,qi,Ei,Hn,en,Wi,si,Mr){var Yr=qi.Record,xi={add:32774,subtract:32778,"reverse subtract":32779};zt.ext_blend_minmax&&(xi.min=He,xi.max=Ye);var Ri=zt.angle_instanced_arrays,ci=zt.webgl_draw_buffers,an=zt.oes_vertex_array_object,Zi={dirty:!0,profile:Mr.profile},Bn={},hi=[],li={},mn={};function Ji(Ve){return Ve.replace(".","_")}function Vi(Ve,Qe,at){var Ct=Ji(Ve);hi.push(Ve),Bn[Ct]=Zi[Ct]=!!at,li[Ct]=Qe}function Ni(Ve,Qe,at){var Ct=Ji(Ve);hi.push(Ve),Array.isArray(at)?(Zi[Ct]=at.slice(),Bn[Ct]=at.slice()):Zi[Ct]=Bn[Ct]=at,mn[Ct]=Qe}function pn(Ve){return!!isNaN(Ve)}Vi(ws,Pi),Vi(Ho,ni),Ni(ml,"blendColor",[0,0,0,0]),Ni(Ws,"blendEquationSeparate",[yr,yr]),Ni(Ls,"blendFuncSeparate",[gr,jt,gr,jt]),Vi(va,ln,!0),Ni(no,"depthFunc",Hr),Ni(ys,"depthRange",[0,1]),Ni(rs,"depthMask",!0),Ni($l,$l,[!0,!0,!0,!0]),Vi(Cu,Wr),Ni(Yu,"cullFace",se),Ni(Nc,Nc,Ne),Ni(pu,pu,1),Vi(Uc,Kn),Ni(xu,"polygonOffset",[0,0]),Vi(Ac,Ta),Vi(Ua,fa),Ni(oo,"sampleCoverage",[1,!1]),Vi(Vc,cn),Ni(hc,"stencilMask",-1),Ni(Ku,"stencilFunc",[kt,0,-1]),Ni(ue,"stencilOpSeparate",[X,nt,nt,nt]),Ni(w,"stencilOpSeparate",[se,nt,nt,nt]),Vi(B,Cn),Ni(Q,"scissor",[0,0,Me.drawingBufferWidth,Me.drawingBufferHeight]),Ni(ee,ee,[0,0,Me.drawingBufferWidth,Me.drawingBufferHeight]);var Vn={gl:Me,context:en,strings:bt,next:Bn,current:Zi,draw:Hn,elements:Nr,buffer:jr,shader:Ei,attributes:qi.state,vao:qi,uniforms:Ui,framebuffer:mi,extensions:zt,timer:Wi,isBufferArgs:Ii},na={primTypes:Sn,compareFuncs:Zr,blendFuncs:bi,blendEquations:xi,stencilOps:ai,glTypes:ji,orientationType:gi};ci&&(na.backBuffer=[se],na.drawBuffer=M(Rr.maxDrawbuffers,function(Ve){return Ve===0?[0]:M(Ve,function(Qe){return _i+Qe})}));var Ki=0;function kn(){var Ve=$n({cache:si}),Qe=Ve.link,at=Ve.global;Ve.id=Ki++,Ve.batchId="0";var Ct=Qe(Vn),Ot=Ve.shared={props:"a0"};Object.keys(Vn).forEach(function(Pt){Ot[Pt]=at.def(Ct,".",Pt)});var Rt=Ve.next={},Bt=Ve.current={};Object.keys(mn).forEach(function(Pt){Array.isArray(Zi[Pt])&&(Rt[Pt]=at.def(Ot.next,".",Pt),Bt[Pt]=at.def(Ot.current,".",Pt))});var Dt=Ve.constants={};Object.keys(na).forEach(function(Pt){Dt[Pt]=at.def(JSON.stringify(na[Pt]))}),Ve.invoke=function(Pt,ht){switch(ht.type){case Yn:var ur=["this",Ot.context,Ot.props,Ve.batchId];return Pt.def(Qe(ht.data),".call(",ur.slice(0,Math.max(ht.data.length+1,4)),")");case Dn:return Pt.def(Ot.props,ht.data);case Ka:return Pt.def(Ot.context,ht.data);case bo:return Pt.def("this",ht.data);case Xo:return ht.data.append(Ve,Pt),ht.data.ref;case Ss:return ht.data.toString();case as:return ht.data.map(function(br){return Ve.invoke(Pt,br)})}},Ve.attribCache={};var yt={};return Ve.scopeAttrib=function(Pt){var ht=bt.id(Pt);if(ht in yt)return yt[ht];var ur=qi.scope[ht];ur||(ur=qi.scope[ht]=new Yr);var br=yt[ht]=Qe(ur);return br},Ve}function ta(Ve){var Qe=Ve.static,at=Ve.dynamic,Ct;if(le in Qe){var Ot=!!Qe[le];Ct=En(function(Bt,Dt){return Ot}),Ct.enable=Ot}else if(le in at){var Rt=at[le];Ct=Un(Rt,function(Bt,Dt){return Bt.invoke(Dt,Rt)})}return Ct}function oa(Ve,Qe){var at=Ve.static,Ct=Ve.dynamic;if(qe in at){var Ot=at[qe];return Ot?(Ot=mi.getFramebuffer(Ot),En(function(Bt,Dt){var yt=Bt.link(Ot),Pt=Bt.shared;Dt.set(Pt.framebuffer,".next",yt);var ht=Pt.context;return Dt.set(ht,"."+Be,yt+".width"),Dt.set(ht,"."+et,yt+".height"),yt})):En(function(Bt,Dt){var yt=Bt.shared;Dt.set(yt.framebuffer,".next","null");var Pt=yt.context;return Dt.set(Pt,"."+Be,Pt+"."+Ht),Dt.set(Pt,"."+et,Pt+"."+tr),"null"})}else if(qe in Ct){var Rt=Ct[qe];return Un(Rt,function(Bt,Dt){var yt=Bt.invoke(Dt,Rt),Pt=Bt.shared,ht=Pt.framebuffer,ur=Dt.def(ht,".getFramebuffer(",yt,")");Dt.set(ht,".next",ur);var br=Pt.context;return Dt.set(br,"."+Be,ur+"?"+ur+".width:"+br+"."+Ht),Dt.set(br,"."+et,ur+"?"+ur+".height:"+br+"."+tr),ur})}else return null}function ba(Ve,Qe,at){var Ct=Ve.static,Ot=Ve.dynamic;function Rt(yt){if(yt in Ct){var Pt=Ct[yt],ht=!0,ur=Pt.x|0,br=Pt.y|0,Ur,Di;return"width"in Pt?Ur=Pt.width|0:ht=!1,"height"in Pt?Di=Pt.height|0:ht=!1,new ei(!ht&&Qe&&Qe.thisDep,!ht&&Qe&&Qe.contextDep,!ht&&Qe&&Qe.propDep,function(gn,rn){var Ci=gn.shared.context,Bi=Ur;"width"in Pt||(Bi=rn.def(Ci,".",Be,"-",ur));var Gi=Di;return"height"in Pt||(Gi=rn.def(Ci,".",et,"-",br)),[ur,br,Bi,Gi]})}else if(yt in Ot){var fi=Ot[yt],Ti=Un(fi,function(gn,rn){var Ci=gn.invoke(rn,fi),Bi=gn.shared.context,Gi=rn.def(Ci,".x|0"),sn=rn.def(Ci,".y|0"),zn=rn.def('"width" in ',Ci,"?",Ci,".width|0:","(",Bi,".",Be,"-",Gi,")"),Ja=rn.def('"height" in ',Ci,"?",Ci,".height|0:","(",Bi,".",et,"-",sn,")");return[Gi,sn,zn,Ja]});return Qe&&(Ti.thisDep=Ti.thisDep||Qe.thisDep,Ti.contextDep=Ti.contextDep||Qe.contextDep,Ti.propDep=Ti.propDep||Qe.propDep),Ti}else return Qe?new ei(Qe.thisDep,Qe.contextDep,Qe.propDep,function(gn,rn){var Ci=gn.shared.context;return[0,0,rn.def(Ci,".",Be),rn.def(Ci,".",et)]}):null}var Bt=Rt(ee);if(Bt){var Dt=Bt;Bt=new ei(Bt.thisDep,Bt.contextDep,Bt.propDep,function(yt,Pt){var ht=Dt.append(yt,Pt),ur=yt.shared.context;return Pt.set(ur,"."+We,ht[2]),Pt.set(ur,"."+it,ht[3]),ht})}return{viewport:Bt,scissor_box:Rt(Q)}}function is(Ve,Qe){var at=Ve.static,Ct=typeof at[ot]=="string"&&typeof at[Xe]=="string";if(Ct){if(Object.keys(Qe.dynamic).length>0)return null;var Ot=Qe.static,Rt=Object.keys(Ot);if(Rt.length>0&&typeof Ot[Rt[0]]=="number"){for(var Bt=[],Dt=0;Dt<Rt.length;++Dt)Bt.push([Ot[Rt[Dt]]|0,Rt[Dt]]);return Bt}}return null}function Zs(Ve,Qe,at){var Ct=Ve.static,Ot=Ve.dynamic;function Rt(ht){if(ht in Ct){var ur=bt.id(Ct[ht]),br=En(function(){return ur});return br.id=ur,br}else if(ht in Ot){var Ur=Ot[ht];return Un(Ur,function(Di,fi){var Ti=Di.invoke(fi,Ur),gn=fi.def(Di.shared.strings,".id(",Ti,")");return gn})}return null}var Bt=Rt(ot),Dt=Rt(Xe),yt=null,Pt;return Ln(Bt)&&Ln(Dt)?(yt=Ei.program(Dt.id,Bt.id,null,at),Pt=En(function(ht,ur){return ht.link(yt)})):Pt=new ei(Bt&&Bt.thisDep||Dt&&Dt.thisDep,Bt&&Bt.contextDep||Dt&&Dt.contextDep,Bt&&Bt.propDep||Dt&&Dt.propDep,function(ht,ur){var br=ht.shared.shader,Ur;Bt?Ur=Bt.append(ht,ur):Ur=ur.def(br,".",ot);var Di;Dt?Di=Dt.append(ht,ur):Di=ur.def(br,".",Xe);var fi=br+".program("+Di+","+Ur;return ur.def(fi+")")}),{frag:Bt,vert:Dt,progVar:Pt,program:yt}}function Va(Ve,Qe){var at=Ve.static,Ct=Ve.dynamic,Ot={},Rt=!1;function Bt(){if(ve in at){var rn=at[ve];return rn!==null&&qi.getVAO(rn)===null&&(rn=qi.createVAO(rn)),Rt=!0,Ot.vao=rn,En(function(Bi){var Gi=qi.getVAO(rn);return Gi?Bi.link(Gi):"null"})}else if(ve in Ct){Rt=!0;var Ci=Ct[ve];return Un(Ci,function(Bi,Gi){var sn=Bi.invoke(Gi,Ci);return Gi.def(Bi.shared.vao+".getVAO("+sn+")")})}return null}var Dt=Bt(),yt=!1;function Pt(){if(Tt in at){var rn=at[Tt];if(Ot.elements=rn,Ii(rn)){var Ci=Ot.elements=Nr.create(rn,!0);rn=Nr.getElements(Ci),yt=!0}else rn&&(rn=Nr.getElements(rn),yt=!0);var Bi=En(function(sn,zn){if(rn){var Ja=sn.link(rn);return sn.ELEMENTS=Ja,Ja}return sn.ELEMENTS=null,null});return Bi.value=rn,Bi}else if(Tt in Ct){yt=!0;var Gi=Ct[Tt];return Un(Gi,function(sn,zn){var Ja=sn.shared,co=Ja.isBufferArgs,ts=Ja.elements,so=sn.invoke(zn,Gi),Zo=zn.def("null"),ms=zn.def(co,"(",so,")"),ou=sn.cond(ms).then(Zo,"=",ts,".createStream(",so,");").else(Zo,"=",ts,".getElements(",so,");");return zn.entry(ou),zn.exit(sn.cond(ms).then(ts,".destroyStream(",Zo,");")),sn.ELEMENTS=Zo,Zo})}else if(Rt)return new ei(Dt.thisDep,Dt.contextDep,Dt.propDep,function(sn,zn){return zn.def(sn.shared.vao+".currentVAO?"+sn.shared.elements+".getElements("+sn.shared.vao+".currentVAO.elements):null")});return null}var ht=Pt();function ur(){if(Yt in at){var rn=at[Yt];return Ot.primitive=rn,En(function(Bi,Gi){return Sn[rn]})}else if(Yt in Ct){var Ci=Ct[Yt];return Un(Ci,function(Bi,Gi){var sn=Bi.constants.primTypes,zn=Bi.invoke(Gi,Ci);return Gi.def(sn,"[",zn,"]")})}else{if(yt)return Ln(ht)?ht.value?En(function(Bi,Gi){return Gi.def(Bi.ELEMENTS,".primType")}):En(function(){return Al}):new ei(ht.thisDep,ht.contextDep,ht.propDep,function(Bi,Gi){var sn=Bi.ELEMENTS;return Gi.def(sn,"?",sn,".primType:",Al)});if(Rt)return new ei(Dt.thisDep,Dt.contextDep,Dt.propDep,function(Bi,Gi){return Gi.def(Bi.shared.vao+".currentVAO?"+Bi.shared.vao+".currentVAO.primitive:"+Al)})}return null}function br(rn,Ci){if(rn in at){var Bi=at[rn]|0;return Ci?Ot.offset=Bi:Ot.instances=Bi,En(function(sn,zn){return Ci&&(sn.OFFSET=Bi),Bi})}else if(rn in Ct){var Gi=Ct[rn];return Un(Gi,function(sn,zn){var Ja=sn.invoke(zn,Gi);return Ci&&(sn.OFFSET=Ja),Ja})}else if(Ci){if(yt)return En(function(sn,zn){return sn.OFFSET=0,0});if(Rt)return new ei(Dt.thisDep,Dt.contextDep,Dt.propDep,function(sn,zn){return zn.def(sn.shared.vao+".currentVAO?"+sn.shared.vao+".currentVAO.offset:0")})}else if(Rt)return new ei(Dt.thisDep,Dt.contextDep,Dt.propDep,function(sn,zn){return zn.def(sn.shared.vao+".currentVAO?"+sn.shared.vao+".currentVAO.instances:-1")});return null}var Ur=br(xr,!0);function Di(){if(Kt in at){var rn=at[Kt]|0;return Ot.count=rn,En(function(){return rn})}else if(Kt in Ct){var Ci=Ct[Kt];return Un(Ci,function(zn,Ja){var co=zn.invoke(Ja,Ci);return co})}else if(yt)if(Ln(ht)){if(ht)return Ur?new ei(Ur.thisDep,Ur.contextDep,Ur.propDep,function(zn,Ja){var co=Ja.def(zn.ELEMENTS,".vertCount-",zn.OFFSET);return co}):En(function(zn,Ja){return Ja.def(zn.ELEMENTS,".vertCount")});var Bi=En(function(){return-1});return Bi}else{var Gi=new ei(ht.thisDep||Ur.thisDep,ht.contextDep||Ur.contextDep,ht.propDep||Ur.propDep,function(zn,Ja){var co=zn.ELEMENTS;return zn.OFFSET?Ja.def(co,"?",co,".vertCount-",zn.OFFSET,":-1"):Ja.def(co,"?",co,".vertCount:-1")});return Gi}else if(Rt){var sn=new ei(Dt.thisDep,Dt.contextDep,Dt.propDep,function(zn,Ja){return Ja.def(zn.shared.vao,".currentVAO?",zn.shared.vao,".currentVAO.count:-1")});return sn}return null}var fi=ur(),Ti=Di(),gn=br(Ir,!1);return{elements:ht,primitive:fi,count:Ti,instances:gn,offset:Ur,vao:Dt,vaoActive:Rt,elementsActive:yt,static:Ot}}function Ml(Ve,Qe){var at=Ve.static,Ct=Ve.dynamic,Ot={};return hi.forEach(function(Rt){var Bt=Ji(Rt);function Dt(yt,Pt){if(Rt in at){var ht=yt(at[Rt]);Ot[Bt]=En(function(){return ht})}else if(Rt in Ct){var ur=Ct[Rt];Ot[Bt]=Un(ur,function(br,Ur){return Pt(br,Ur,br.invoke(Ur,ur))})}}switch(Rt){case Cu:case Ho:case ws:case Vc:case va:case B:case Uc:case Ac:case Ua:case rs:return Dt(function(yt){return yt},function(yt,Pt,ht){return ht});case no:return Dt(function(yt){return Zr[yt]},function(yt,Pt,ht){var ur=yt.constants.compareFuncs;return Pt.def(ur,"[",ht,"]")});case ys:return Dt(function(yt){return yt},function(yt,Pt,ht){var ur=Pt.def("+",ht,"[0]"),br=Pt.def("+",ht,"[1]");return[ur,br]});case Ls:return Dt(function(yt){var Pt="srcRGB"in yt?yt.srcRGB:yt.src,ht="srcAlpha"in yt?yt.srcAlpha:yt.src,ur="dstRGB"in yt?yt.dstRGB:yt.dst,br="dstAlpha"in yt?yt.dstAlpha:yt.dst;return[bi[Pt],bi[ur],bi[ht],bi[br]]},function(yt,Pt,ht){var ur=yt.constants.blendFuncs;function br(Ci,Bi){var Gi=Pt.def('"',Ci,Bi,'" in ',ht,"?",ht,".",Ci,Bi,":",ht,".",Ci);return Gi}var Ur=br("src","RGB"),Di=br("dst","RGB"),fi=Pt.def(ur,"[",Ur,"]"),Ti=Pt.def(ur,"[",br("src","Alpha"),"]"),gn=Pt.def(ur,"[",Di,"]"),rn=Pt.def(ur,"[",br("dst","Alpha"),"]");return[fi,gn,Ti,rn]});case Ws:return Dt(function(yt){if(typeof yt=="string")return[xi[yt],xi[yt]];if(typeof yt=="object")return[xi[yt.rgb],xi[yt.alpha]]},function(yt,Pt,ht){var ur=yt.constants.blendEquations,br=Pt.def(),Ur=Pt.def(),Di=yt.cond("typeof ",ht,'==="string"');return Di.then(br,"=",Ur,"=",ur,"[",ht,"];"),Di.else(br,"=",ur,"[",ht,".rgb];",Ur,"=",ur,"[",ht,".alpha];"),Pt(Di),[br,Ur]});case ml:return Dt(function(yt){return M(4,function(Pt){return+yt[Pt]})},function(yt,Pt,ht){return M(4,function(ur){return Pt.def("+",ht,"[",ur,"]")})});case hc:return Dt(function(yt){return yt|0},function(yt,Pt,ht){return Pt.def(ht,"|0")});case Ku:return Dt(function(yt){var Pt=yt.cmp||"keep",ht=yt.ref||0,ur="mask"in yt?yt.mask:-1;return[Zr[Pt],ht,ur]},function(yt,Pt,ht){var ur=yt.constants.compareFuncs,br=Pt.def('"cmp" in ',ht,"?",ur,"[",ht,".cmp]",":",nt),Ur=Pt.def(ht,".ref|0"),Di=Pt.def('"mask" in ',ht,"?",ht,".mask|0:-1");return[br,Ur,Di]});case ue:case w:return Dt(function(yt){var Pt=yt.fail||"keep",ht=yt.zfail||"keep",ur=yt.zpass||"keep";return[Rt===w?se:X,ai[Pt],ai[ht],ai[ur]]},function(yt,Pt,ht){var ur=yt.constants.stencilOps;function br(Ur){return Pt.def('"',Ur,'" in ',ht,"?",ur,"[",ht,".",Ur,"]:",nt)}return[Rt===w?se:X,br("fail"),br("zfail"),br("zpass")]});case xu:return Dt(function(yt){var Pt=yt.factor|0,ht=yt.units|0;return[Pt,ht]},function(yt,Pt,ht){var ur=Pt.def(ht,".factor|0"),br=Pt.def(ht,".units|0");return[ur,br]});case Yu:return Dt(function(yt){var Pt=0;return yt==="front"?Pt=X:yt==="back"&&(Pt=se),Pt},function(yt,Pt,ht){return Pt.def(ht,'==="front"?',X,":",se)});case pu:return Dt(function(yt){return yt},function(yt,Pt,ht){return ht});case Nc:return Dt(function(yt){return gi[yt]},function(yt,Pt,ht){return Pt.def(ht+'==="cw"?'+Te+":"+Ne)});case $l:return Dt(function(yt){return yt.map(function(Pt){return!!Pt})},function(yt,Pt,ht){return M(4,function(ur){return"!!"+ht+"["+ur+"]"})});case oo:return Dt(function(yt){var Pt="value"in yt?yt.value:1,ht=!!yt.invert;return[Pt,ht]},function(yt,Pt,ht){var ur=Pt.def('"value" in ',ht,"?+",ht,".value:1"),br=Pt.def("!!",ht,".invert");return[ur,br]})}}),Ot}function zo(Ve,Qe){var at=Ve.static,Ct=Ve.dynamic,Ot={};return Object.keys(at).forEach(function(Rt){var Bt=at[Rt],Dt;if(typeof Bt=="number"||typeof Bt=="boolean")Dt=En(function(){return Bt});else if(typeof Bt=="function"){var yt=Bt._reglType;yt==="texture2d"||yt==="textureCube"?Dt=En(function(Pt){return Pt.link(Bt)}):(yt==="framebuffer"||yt==="framebufferCube")&&(Dt=En(function(Pt){return Pt.link(Bt.color[0])}))}else Mn(Bt)&&(Dt=En(function(Pt){var ht=Pt.global.def("[",M(Bt.length,function(ur){return Bt[ur]}),"]");return ht}));Dt.value=Bt,Ot[Rt]=Dt}),Object.keys(Ct).forEach(function(Rt){var Bt=Ct[Rt];Ot[Rt]=Un(Bt,function(Dt,yt){return Dt.invoke(yt,Bt)})}),Ot}function Qs(Ve,Qe){var at=Ve.static,Ct=Ve.dynamic,Ot={};return Object.keys(at).forEach(function(Rt){var Bt=at[Rt],Dt=bt.id(Rt),yt=new Yr;if(Ii(Bt))yt.state=La,yt.buffer=jr.getBuffer(jr.create(Bt,Sr,!1,!0)),yt.type=0;else{var Pt=jr.getBuffer(Bt);if(Pt)yt.state=La,yt.buffer=Pt,yt.type=0;else if("constant"in Bt){var ht=Bt.constant;yt.buffer="null",yt.state=Na,typeof ht=="number"?yt.x=ht:Ca.forEach(function(gn,rn){rn<ht.length&&(yt[gn]=ht[rn])})}else{Ii(Bt.buffer)?Pt=jr.getBuffer(jr.create(Bt.buffer,Sr,!1,!0)):Pt=jr.getBuffer(Bt.buffer);var ur=Bt.offset|0,br=Bt.stride|0,Ur=Bt.size|0,Di=!!Bt.normalized,fi=0;"type"in Bt&&(fi=ji[Bt.type]);var Ti=Bt.divisor|0;yt.buffer=Pt,yt.state=La,yt.size=Ur,yt.normalized=Di,yt.type=fi||Pt.dtype,yt.offset=ur,yt.stride=br,yt.divisor=Ti}}Ot[Rt]=En(function(gn,rn){var Ci=gn.attribCache;if(Dt in Ci)return Ci[Dt];var Bi={isStream:!1};return Object.keys(yt).forEach(function(Gi){Bi[Gi]=yt[Gi]}),yt.buffer&&(Bi.buffer=gn.link(yt.buffer),Bi.type=Bi.type||Bi.buffer+".dtype"),Ci[Dt]=Bi,Bi})}),Object.keys(Ct).forEach(function(Rt){var Bt=Ct[Rt];function Dt(yt,Pt){var ht=yt.invoke(Pt,Bt),ur=yt.shared,br=yt.constants,Ur=ur.isBufferArgs,Di=ur.buffer,fi={isStream:Pt.def(!1)},Ti=new Yr;Ti.state=La,Object.keys(Ti).forEach(function(Bi){fi[Bi]=Pt.def(""+Ti[Bi])});var gn=fi.buffer,rn=fi.type;Pt("if(",Ur,"(",ht,")){",fi.isStream,"=true;",gn,"=",Di,".createStream(",Sr,",",ht,");",rn,"=",gn,".dtype;","}else{",gn,"=",Di,".getBuffer(",ht,");","if(",gn,"){",rn,"=",gn,".dtype;",'}else if("constant" in ',ht,"){",fi.state,"=",Na,";","if(typeof "+ht+'.constant === "number"){',fi[Ca[0]],"=",ht,".constant;",Ca.slice(1).map(function(Bi){return fi[Bi]}).join("="),"=0;","}else{",Ca.map(function(Bi,Gi){return fi[Bi]+"="+ht+".constant.length>"+Gi+"?"+ht+".constant["+Gi+"]:0;"}).join(""),"}}else{","if(",Ur,"(",ht,".buffer)){",gn,"=",Di,".createStream(",Sr,",",ht,".buffer);","}else{",gn,"=",Di,".getBuffer(",ht,".buffer);","}",rn,'="type" in ',ht,"?",br.glTypes,"[",ht,".type]:",gn,".dtype;",fi.normalized,"=!!",ht,".normalized;");function Ci(Bi){Pt(fi[Bi],"=",ht,".",Bi,"|0;")}return Ci("size"),Ci("offset"),Ci("stride"),Ci("divisor"),Pt("}}"),Pt.exit("if(",fi.isStream,"){",Di,".destroyStream(",gn,");","}"),fi}Ot[Rt]=Un(Bt,Dt)}),Ot}function al(Ve){var Qe=Ve.static,at=Ve.dynamic,Ct={};return Object.keys(Qe).forEach(function(Ot){var Rt=Qe[Ot];Ct[Ot]=En(function(Bt,Dt){return typeof Rt=="number"||typeof Rt=="boolean"?""+Rt:Bt.link(Rt)})}),Object.keys(at).forEach(function(Ot){var Rt=at[Ot];Ct[Ot]=Un(Rt,function(Bt,Dt){return Bt.invoke(Dt,Rt)})}),Ct}function Vl(Ve,Qe,at,Ct,Ot){var Rt=Ve.static,Bt=Ve.dynamic,Dt=is(Ve,Qe),yt=oa(Ve,Ot),Pt=ba(Ve,yt,Ot),ht=Va(Ve,Ot),ur=Ml(Ve,Ot),br=Zs(Ve,Ot,Dt);function Ur(Ci){var Bi=Pt[Ci];Bi&&(ur[Ci]=Bi)}Ur(ee),Ur(Ji(Q));var Di=Object.keys(ur).length>0,fi={framebuffer:yt,draw:ht,shader:br,state:ur,dirty:Di,scopeVAO:null,drawVAO:null,useVAO:!1,attributes:{}};if(fi.profile=ta(Ve,Ot),fi.uniforms=zo(at,Ot),fi.drawVAO=fi.scopeVAO=ht.vao,!fi.drawVAO&&br.program&&!Dt&&zt.angle_instanced_arrays&&ht.static.elements){var Ti=!0,gn=br.program.attributes.map(function(Ci){var Bi=Qe.static[Ci];return Ti=Ti&&!!Bi,Bi});if(Ti&&gn.length>0){var rn=qi.getVAO(qi.createVAO({attributes:gn,elements:ht.static.elements}));fi.drawVAO=new ei(null,null,null,function(Ci,Bi){return Ci.link(rn)}),fi.useVAO=!0}}return Dt?fi.useVAO=!0:fi.attributes=Qs(Qe,Ot),fi.context=al(Ct,Ot),fi}function ss(Ve,Qe,at){var Ct=Ve.shared,Ot=Ct.context,Rt=Ve.scope();Object.keys(at).forEach(function(Bt){Qe.save(Ot,"."+Bt);var Dt=at[Bt],yt=Dt.append(Ve,Qe);Array.isArray(yt)?Rt(Ot,".",Bt,"=[",yt.join(),"];"):Rt(Ot,".",Bt,"=",yt,";")}),Qe(Rt)}function Vs(Ve,Qe,at,Ct){var Ot=Ve.shared,Rt=Ot.gl,Bt=Ot.framebuffer,Dt;ci&&(Dt=Qe.def(Ot.extensions,".webgl_draw_buffers"));var yt=Ve.constants,Pt=yt.drawBuffer,ht=yt.backBuffer,ur;at?ur=at.append(Ve,Qe):ur=Qe.def(Bt,".next"),Ct||Qe("if(",ur,"!==",Bt,".cur){"),Qe("if(",ur,"){",Rt,".bindFramebuffer(",qr,",",ur,".framebuffer);"),ci&&Qe(Dt,".drawBuffersWEBGL(",Pt,"[",ur,".colorAttachments.length]);"),Qe("}else{",Rt,".bindFramebuffer(",qr,",null);"),ci&&Qe(Dt,".drawBuffersWEBGL(",ht,");"),Qe("}",Bt,".cur=",ur,";"),Ct||Qe("}")}function Ys(Ve,Qe,at){var Ct=Ve.shared,Ot=Ct.gl,Rt=Ve.current,Bt=Ve.next,Dt=Ct.current,yt=Ct.next,Pt=Ve.cond(Dt,".dirty");hi.forEach(function(ht){var ur=Ji(ht);if(!(ur in at.state)){var br,Ur;if(ur in Bt){br=Bt[ur],Ur=Rt[ur];var Di=M(Zi[ur].length,function(Ti){return Pt.def(br,"[",Ti,"]")});Pt(Ve.cond(Di.map(function(Ti,gn){return Ti+"!=="+Ur+"["+gn+"]"}).join("||")).then(Ot,".",mn[ur],"(",Di,");",Di.map(function(Ti,gn){return Ur+"["+gn+"]="+Ti}).join(";"),";"))}else{br=Pt.def(yt,".",ur);var fi=Ve.cond(br,"!==",Dt,".",ur);Pt(fi),ur in li?fi(Ve.cond(br).then(Ot,".enable(",li[ur],");").else(Ot,".disable(",li[ur],");"),Dt,".",ur,"=",br,";"):fi(Ot,".",mn[ur],"(",br,");",Dt,".",ur,"=",br,";")}}}),Object.keys(at.state).length===0&&Pt(Dt,".dirty=false;"),Qe(Pt)}function wa(Ve,Qe,at,Ct){var Ot=Ve.shared,Rt=Ve.current,Bt=Ot.current,Dt=Ot.gl,yt;Si(Object.keys(at)).forEach(function(Pt){var ht=at[Pt];if(!(Ct&&!Ct(ht))){var ur=ht.append(Ve,Qe);if(li[Pt]){var br=li[Pt];Ln(ht)?(yt=Ve.link(ur,{stable:!0}),Qe(Ve.cond(yt).then(Dt,".enable(",br,");").else(Dt,".disable(",br,");")),Qe(Bt,".",Pt,"=",yt,";")):(Qe(Ve.cond(ur).then(Dt,".enable(",br,");").else(Dt,".disable(",br,");")),Qe(Bt,".",Pt,"=",ur,";"))}else if(Mn(ur)){var Ur=Rt[Pt];Qe(Dt,".",mn[Pt],"(",ur,");",ur.map(function(Di,fi){return Ur+"["+fi+"]="+Di}).join(";"),";")}else Ln(ht)?(yt=Ve.link(ur,{stable:!0}),Qe(Dt,".",mn[Pt],"(",yt,");",Bt,".",Pt,"=",yt,";")):Qe(Dt,".",mn[Pt],"(",ur,");",Bt,".",Pt,"=",ur,";")}})}function ol(Ve,Qe){Ri&&(Ve.instancing=Qe.def(Ve.shared.extensions,".angle_instanced_arrays"))}function io(Ve,Qe,at,Ct,Ot){var Rt=Ve.shared,Bt=Ve.stats,Dt=Rt.current,yt=Rt.timer,Pt=at.profile;function ht(){return typeof performance=="undefined"?"Date.now()":"performance.now()"}var ur,br;function Ur(Ci){ur=Qe.def(),Ci(ur,"=",ht(),";"),typeof Ot=="string"?Ci(Bt,".count+=",Ot,";"):Ci(Bt,".count++;"),Wi&&(Ct?(br=Qe.def(),Ci(br,"=",yt,".getNumPendingQueries();")):Ci(yt,".beginQuery(",Bt,");"))}function Di(Ci){Ci(Bt,".cpuTime+=",ht(),"-",ur,";"),Wi&&(Ct?Ci(yt,".pushScopeStats(",br,",",yt,".getNumPendingQueries(),",Bt,");"):Ci(yt,".endQuery();"))}function fi(Ci){var Bi=Qe.def(Dt,".profile");Qe(Dt,".profile=",Ci,";"),Qe.exit(Dt,".profile=",Bi,";")}var Ti;if(Pt){if(Ln(Pt)){Pt.enable?(Ur(Qe),Di(Qe.exit),fi("true")):fi("false");return}Ti=Pt.append(Ve,Qe),fi(Ti)}else Ti=Qe.def(Dt,".profile");var gn=Ve.block();Ur(gn),Qe("if(",Ti,"){",gn,"}");var rn=Ve.block();Di(rn),Qe.exit("if(",Ti,"){",rn,"}")}function Y(Ve,Qe,at,Ct,Ot){var Rt=Ve.shared;function Bt(yt){switch(yt){case Co:case Ps:case hl:return 2;case Qa:case Ts:case Ul:return 3;case mo:case wo:case Lu:return 4;default:return 1}}function Dt(yt,Pt,ht){var ur=Rt.gl,br=Qe.def(yt,".location"),Ur=Qe.def(Rt.attributes,"[",br,"]"),Di=ht.state,fi=ht.buffer,Ti=[ht.x,ht.y,ht.z,ht.w],gn=["buffer","normalized","offset","stride"];function rn(){Qe("if(!",Ur,".buffer){",ur,".enableVertexAttribArray(",br,");}");var Bi=ht.type,Gi;if(ht.size?Gi=Qe.def(ht.size,"||",Pt):Gi=Pt,Qe("if(",Ur,".type!==",Bi,"||",Ur,".size!==",Gi,"||",gn.map(function(zn){return Ur+"."+zn+"!=="+ht[zn]}).join("||"),"){",ur,".bindBuffer(",Sr,",",fi,".buffer);",ur,".vertexAttribPointer(",[br,Gi,Bi,ht.normalized,ht.stride,ht.offset],");",Ur,".type=",Bi,";",Ur,".size=",Gi,";",gn.map(function(zn){return Ur+"."+zn+"="+ht[zn]+";"}).join(""),"}"),Ri){var sn=ht.divisor;Qe("if(",Ur,".divisor!==",sn,"){",Ve.instancing,".vertexAttribDivisorANGLE(",[br,sn],");",Ur,".divisor=",sn,";}")}}function Ci(){Qe("if(",Ur,".buffer){",ur,".disableVertexAttribArray(",br,");",Ur,".buffer=null;","}if(",Ca.map(function(Bi,Gi){return Ur+"."+Bi+"!=="+Ti[Gi]}).join("||"),"){",ur,".vertexAttrib4f(",br,",",Ti,");",Ca.map(function(Bi,Gi){return Ur+"."+Bi+"="+Ti[Gi]+";"}).join(""),"}")}Di===La?rn():Di===Na?Ci():(Qe("if(",Di,"===",La,"){"),rn(),Qe("}else{"),Ci(),Qe("}"))}Ct.forEach(function(yt){var Pt=yt.name,ht=at.attributes[Pt],ur;if(ht){if(!Ot(ht))return;ur=ht.append(Ve,Qe)}else{if(!Ot(ia))return;var br=Ve.scopeAttrib(Pt);ur={},Object.keys(new Yr).forEach(function(Ur){ur[Ur]=Qe.def(br,".",Ur)})}Dt(Ve.link(yt),Bt(yt.info.type),ur)})}function D(Ve,Qe,at,Ct,Ot,Rt){for(var Bt=Ve.shared,Dt=Bt.gl,yt,Pt=0;Pt<Ct.length;++Pt){var ht=Ct[Pt],ur=ht.name,br=ht.info.type,Ur=at.uniforms[ur],Di=Ve.link(ht),fi=Di+".location",Ti;if(Ur){if(!Ot(Ur))continue;if(Ln(Ur)){var gn=Ur.value;if(br===dc||br===Tl){var rn=Ve.link(gn._texture||gn.color[0]._texture);Qe(Dt,".uniform1i(",fi,",",rn+".bind());"),Qe.exit(rn,".unbind();")}else if(br===au||br===Js||br===Ql){var Ci=Ve.global.def("new Float32Array(["+Array.prototype.slice.call(gn)+"])"),Bi=2;br===Js?Bi=3:br===Ql&&(Bi=4),Qe(Dt,".uniformMatrix",Bi,"fv(",fi,",false,",Ci,");")}else{switch(br){case $a:yt="1f";break;case Co:yt="2f";break;case Qa:yt="3f";break;case mo:yt="4f";break;case To:yt="1i";break;case Bo:yt="1i";break;case hl:yt="2i";break;case Ps:yt="2i";break;case Ul:yt="3i";break;case Ts:yt="3i";break;case Lu:yt="4i";break;case wo:yt="4i";break}Qe(Dt,".uniform",yt,"(",fi,",",Mn(gn)?Array.prototype.slice.call(gn):gn,");")}continue}else Ti=Ur.append(Ve,Qe)}else{if(!Ot(ia))continue;Ti=Qe.def(Bt.uniforms,"[",bt.id(ur),"]")}br===dc?Qe("if(",Ti,"&&",Ti,'._reglType==="framebuffer"){',Ti,"=",Ti,".color[0];","}"):br===Tl&&Qe("if(",Ti,"&&",Ti,'._reglType==="framebufferCube"){',Ti,"=",Ti,".color[0];","}");var Gi=1;switch(br){case dc:case Tl:var sn=Qe.def(Ti,"._texture");Qe(Dt,".uniform1i(",fi,",",sn,".bind());"),Qe.exit(sn,".unbind();");continue;case Bo:case To:yt="1i";break;case Ps:case hl:yt="2i",Gi=2;break;case Ts:case Ul:yt="3i",Gi=3;break;case wo:case Lu:yt="4i",Gi=4;break;case $a:yt="1f";break;case Co:yt="2f",Gi=2;break;case Qa:yt="3f",Gi=3;break;case mo:yt="4f",Gi=4;break;case au:yt="Matrix2fv";break;case Js:yt="Matrix3fv";break;case Ql:yt="Matrix4fv";break}if(yt.charAt(0)==="M"){Qe(Dt,".uniform",yt,"(",fi,",");var zn=Math.pow(br-au+2,2),Ja=Ve.global.def("new Float32Array(",zn,")");Array.isArray(Ti)?Qe("false,(",M(zn,function(ms){return Ja+"["+ms+"]="+Ti[ms]}),",",Ja,")"):Qe("false,(Array.isArray(",Ti,")||",Ti," instanceof Float32Array)?",Ti,":(",M(zn,function(ms){return Ja+"["+ms+"]="+Ti+"["+ms+"]"}),",",Ja,")"),Qe(");")}else if(Gi>1){for(var co=[],ts=[],so=0;so<Gi;++so)Array.isArray(Ti)?ts.push(Ti[so]):ts.push(Qe.def(Ti+"["+so+"]")),Rt&&co.push(Qe.def());Rt&&Qe("if(!",Ve.batchId,"||",co.map(function(ms,ou){return ms+"!=="+ts[ou]}).join("||"),"){",co.map(function(ms,ou){return ms+"="+ts[ou]+";"}).join("")),Qe(Dt,".uniform",yt,"(",fi,",",ts.join(","),");"),Rt&&Qe("}")}else{if(Rt){var Zo=Qe.def();Qe("if(!",Ve.batchId,"||",Zo,"!==",Ti,"){",Zo,"=",Ti,";")}Qe(Dt,".uniform",yt,"(",fi,",",Ti,");"),Rt&&Qe("}")}}}function J(Ve,Qe,at,Ct){var Ot=Ve.shared,Rt=Ot.gl,Bt=Ot.draw,Dt=Ct.draw;function yt(){var Gi=Dt.elements,sn,zn=Qe;return Gi?((Gi.contextDep&&Ct.contextDynamic||Gi.propDep)&&(zn=at),sn=Gi.append(Ve,zn),Dt.elementsActive&&zn("if("+sn+")"+Rt+".bindBuffer("+Or+","+sn+".buffer.buffer);")):(sn=zn.def(),zn(sn,"=",Bt,".",Tt,";","if(",sn,"){",Rt,".bindBuffer(",Or,",",sn,".buffer.buffer);}","else if(",Ot.vao,".currentVAO){",sn,"=",Ve.shared.elements+".getElements("+Ot.vao,".currentVAO.elements);",an?"":"if("+sn+")"+Rt+".bindBuffer("+Or+","+sn+".buffer.buffer);","}")),sn}function Pt(){var Gi=Dt.count,sn,zn=Qe;return Gi?((Gi.contextDep&&Ct.contextDynamic||Gi.propDep)&&(zn=at),sn=Gi.append(Ve,zn)):sn=zn.def(Bt,".",Kt),sn}var ht=yt();function ur(Gi){var sn=Dt[Gi];return sn?sn.contextDep&&Ct.contextDynamic||sn.propDep?sn.append(Ve,at):sn.append(Ve,Qe):Qe.def(Bt,".",Gi)}var br=ur(Yt),Ur=ur(xr),Di=Pt();if(typeof Di=="number"){if(Di===0)return}else at("if(",Di,"){"),at.exit("}");var fi,Ti;Ri&&(fi=ur(Ir),Ti=Ve.instancing);var gn=ht+".type",rn=Dt.elements&&Ln(Dt.elements)&&!Dt.vaoActive;function Ci(){function Gi(){at(Ti,".drawElementsInstancedANGLE(",[br,Di,gn,Ur+"<<(("+gn+"-"+Ra+")>>1)",fi],");")}function sn(){at(Ti,".drawArraysInstancedANGLE(",[br,Ur,Di,fi],");")}ht&&ht!=="null"?rn?Gi():(at("if(",ht,"){"),Gi(),at("}else{"),sn(),at("}")):sn()}function Bi(){function Gi(){at(Rt+".drawElements("+[br,Di,gn,Ur+"<<(("+gn+"-"+Ra+")>>1)"]+");")}function sn(){at(Rt+".drawArrays("+[br,Ur,Di]+");")}ht&&ht!=="null"?rn?Gi():(at("if(",ht,"){"),Gi(),at("}else{"),sn(),at("}")):sn()}Ri&&(typeof fi!="number"||fi>=0)?typeof fi=="string"?(at("if(",fi,">0){"),Ci(),at("}else if(",fi,"<0){"),Bi(),at("}")):Ci():Bi()}function q(Ve,Qe,at,Ct,Ot){var Rt=kn(),Bt=Rt.proc("body",Ot);return Ri&&(Rt.instancing=Bt.def(Rt.shared.extensions,".angle_instanced_arrays")),Ve(Rt,Bt,at,Ct),Rt.compile().body}function K(Ve,Qe,at,Ct){ol(Ve,Qe),at.useVAO?at.drawVAO?Qe(Ve.shared.vao,".setVAO(",at.drawVAO.append(Ve,Qe),");"):Qe(Ve.shared.vao,".setVAO(",Ve.shared.vao,".targetVAO);"):(Qe(Ve.shared.vao,".setVAO(null);"),Y(Ve,Qe,at,Ct.attributes,function(){return!0})),D(Ve,Qe,at,Ct.uniforms,function(){return!0},!1),J(Ve,Qe,Qe,at)}function de(Ve,Qe){var at=Ve.proc("draw",1);ol(Ve,at),ss(Ve,at,Qe.context),Vs(Ve,at,Qe.framebuffer),Ys(Ve,at,Qe),wa(Ve,at,Qe.state),io(Ve,at,Qe,!1,!0);var Ct=Qe.shader.progVar.append(Ve,at);if(at(Ve.shared.gl,".useProgram(",Ct,".program);"),Qe.shader.program)K(Ve,at,Qe,Qe.shader.program);else{at(Ve.shared.vao,".setVAO(null);");var Ot=Ve.global.def("{}"),Rt=at.def(Ct,".id"),Bt=at.def(Ot,"[",Rt,"]");at(Ve.cond(Bt).then(Bt,".call(this,a0);").else(Bt,"=",Ot,"[",Rt,"]=",Ve.link(function(Dt){return q(K,Ve,Qe,Dt,1)}),"(",Ct,");",Bt,".call(this,a0);"))}Object.keys(Qe.state).length>0&&at(Ve.shared.current,".dirty=true;"),Ve.shared.vao&&at(Ve.shared.vao,".setVAO(null);")}function ne(Ve,Qe,at,Ct){Ve.batchId="a1",ol(Ve,Qe);function Ot(){return!0}Y(Ve,Qe,at,Ct.attributes,Ot),D(Ve,Qe,at,Ct.uniforms,Ot,!1),J(Ve,Qe,Qe,at)}function we(Ve,Qe,at,Ct){ol(Ve,Qe);var Ot=at.contextDep,Rt=Qe.def(),Bt="a0",Dt="a1",yt=Qe.def();Ve.shared.props=yt,Ve.batchId=Rt;var Pt=Ve.scope(),ht=Ve.scope();Qe(Pt.entry,"for(",Rt,"=0;",Rt,"<",Dt,";++",Rt,"){",yt,"=",Bt,"[",Rt,"];",ht,"}",Pt.exit);function ur(gn){return gn.contextDep&&Ot||gn.propDep}function br(gn){return!ur(gn)}if(at.needsContext&&ss(Ve,ht,at.context),at.needsFramebuffer&&Vs(Ve,ht,at.framebuffer),wa(Ve,ht,at.state,ur),at.profile&&ur(at.profile)&&io(Ve,ht,at,!1,!0),Ct)at.useVAO?at.drawVAO?ur(at.drawVAO)?ht(Ve.shared.vao,".setVAO(",at.drawVAO.append(Ve,ht),");"):Pt(Ve.shared.vao,".setVAO(",at.drawVAO.append(Ve,Pt),");"):Pt(Ve.shared.vao,".setVAO(",Ve.shared.vao,".targetVAO);"):(Pt(Ve.shared.vao,".setVAO(null);"),Y(Ve,Pt,at,Ct.attributes,br),Y(Ve,ht,at,Ct.attributes,ur)),D(Ve,Pt,at,Ct.uniforms,br,!1),D(Ve,ht,at,Ct.uniforms,ur,!0),J(Ve,Pt,ht,at);else{var Ur=Ve.global.def("{}"),Di=at.shader.progVar.append(Ve,ht),fi=ht.def(Di,".id"),Ti=ht.def(Ur,"[",fi,"]");ht(Ve.shared.gl,".useProgram(",Di,".program);","if(!",Ti,"){",Ti,"=",Ur,"[",fi,"]=",Ve.link(function(gn){return q(ne,Ve,at,gn,2)}),"(",Di,");}",Ti,".call(this,a0[",Rt,"],",Rt,");")}}function Ue(Ve,Qe){var at=Ve.proc("batch",2);Ve.batchId="0",ol(Ve,at);var Ct=!1,Ot=!0;Object.keys(Qe.context).forEach(function(Ur){Ct=Ct||Qe.context[Ur].propDep}),Ct||(ss(Ve,at,Qe.context),Ot=!1);var Rt=Qe.framebuffer,Bt=!1;Rt?(Rt.propDep?Ct=Bt=!0:Rt.contextDep&&Ct&&(Bt=!0),Bt||Vs(Ve,at,Rt)):Vs(Ve,at,null),Qe.state.viewport&&Qe.state.viewport.propDep&&(Ct=!0);function Dt(Ur){return Ur.contextDep&&Ct||Ur.propDep}Ys(Ve,at,Qe),wa(Ve,at,Qe.state,function(Ur){return!Dt(Ur)}),(!Qe.profile||!Dt(Qe.profile))&&io(Ve,at,Qe,!1,"a1"),Qe.contextDep=Ct,Qe.needsContext=Ot,Qe.needsFramebuffer=Bt;var yt=Qe.shader.progVar;if(yt.contextDep&&Ct||yt.propDep)we(Ve,at,Qe,null);else{var Pt=yt.append(Ve,at);if(at(Ve.shared.gl,".useProgram(",Pt,".program);"),Qe.shader.program)we(Ve,at,Qe,Qe.shader.program);else{at(Ve.shared.vao,".setVAO(null);");var ht=Ve.global.def("{}"),ur=at.def(Pt,".id"),br=at.def(ht,"[",ur,"]");at(Ve.cond(br).then(br,".call(this,a0,a1);").else(br,"=",ht,"[",ur,"]=",Ve.link(function(Ur){return q(we,Ve,Qe,Ur,2)}),"(",Pt,");",br,".call(this,a0,a1);"))}}Object.keys(Qe.state).length>0&&at(Ve.shared.current,".dirty=true;"),Ve.shared.vao&&at(Ve.shared.vao,".setVAO(null);")}function ft(Ve,Qe){var at=Ve.proc("scope",3);Ve.batchId="a2";var Ct=Ve.shared,Ot=Ct.current;if(ss(Ve,at,Qe.context),Qe.framebuffer&&Qe.framebuffer.append(Ve,at),Si(Object.keys(Qe.state)).forEach(function(Dt){var yt=Qe.state[Dt],Pt=yt.append(Ve,at);Mn(Pt)?Pt.forEach(function(ht,ur){pn(ht)?at.set(Ve.next[Dt],"["+ur+"]",ht):at.set(Ve.next[Dt],"["+ur+"]",Ve.link(ht,{stable:!0}))}):Ln(yt)?at.set(Ct.next,"."+Dt,Ve.link(Pt,{stable:!0})):at.set(Ct.next,"."+Dt,Pt)}),io(Ve,at,Qe,!0,!0),[Tt,xr,Kt,Ir,Yt].forEach(function(Dt){var yt=Qe.draw[Dt];if(yt){var Pt=yt.append(Ve,at);pn(Pt)?at.set(Ct.draw,"."+Dt,Pt):at.set(Ct.draw,"."+Dt,Ve.link(Pt),{stable:!0})}}),Object.keys(Qe.uniforms).forEach(function(Dt){var yt=Qe.uniforms[Dt].append(Ve,at);Array.isArray(yt)&&(yt="["+yt.map(function(Pt){return pn(Pt)?Pt:Ve.link(Pt,{stable:!0})})+"]"),at.set(Ct.uniforms,"["+Ve.link(bt.id(Dt),{stable:!0})+"]",yt)}),Object.keys(Qe.attributes).forEach(function(Dt){var yt=Qe.attributes[Dt].append(Ve,at),Pt=Ve.scopeAttrib(Dt);Object.keys(new Yr).forEach(function(ht){at.set(Pt,"."+ht,yt[ht])})}),Qe.scopeVAO){var Rt=Qe.scopeVAO.append(Ve,at);pn(Rt)?at.set(Ct.vao,".targetVAO",Rt):at.set(Ct.vao,".targetVAO",Ve.link(Rt,{stable:!0}))}function Bt(Dt){var yt=Qe.shader[Dt];if(yt){var Pt=yt.append(Ve,at);pn(Pt)?at.set(Ct.shader,"."+Dt,Pt):at.set(Ct.shader,"."+Dt,Ve.link(Pt,{stable:!0}))}}Bt(Xe),Bt(ot),Object.keys(Qe.state).length>0&&(at(Ot,".dirty=true;"),at.exit(Ot,".dirty=true;")),at("a1(",Ve.shared.context,",a0,",Ve.batchId,");")}function Xt(Ve){if(!(typeof Ve!="object"||Mn(Ve))){for(var Qe=Object.keys(Ve),at=0;at<Qe.length;++at)if(h.isDynamic(Ve[Qe[at]]))return!0;return!1}}function hr(Ve,Qe,at){var Ct=Qe.static[at];if(!Ct||!Xt(Ct))return;var Ot=Ve.global,Rt=Object.keys(Ct),Bt=!1,Dt=!1,yt=!1,Pt=Ve.global.def("{}");Rt.forEach(function(ur){var br=Ct[ur];if(h.isDynamic(br)){typeof br=="function"&&(br=Ct[ur]=h.unbox(br));var Ur=Un(br,null);Bt=Bt||Ur.thisDep,yt=yt||Ur.propDep,Dt=Dt||Ur.contextDep}else{switch(Ot(Pt,".",ur,"="),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(ur,br){Rt.forEach(function(Ur){var Di=Ct[Ur];if(h.isDynamic(Di)){var fi=ur.invoke(br,Di);br(Pt,".",Ur,"=",fi,";")}})}Qe.dynamic[at]=new h.DynamicVariable(Xo,{thisDep:Bt,contextDep:Dt,propDep:yt,ref:Pt,append:ht}),delete Qe.static[at]}function qt(Ve,Qe,at,Ct,Ot){var Rt=kn();Rt.stats=Rt.link(Ot),Object.keys(Qe.static).forEach(function(Dt){hr(Rt,Qe,Dt)}),dr.forEach(function(Dt){hr(Rt,Ve,Dt)});var Bt=Vl(Ve,Qe,at,Ct,Rt);return Bt.shader.program&&(Bt.shader.program.attributes.sort(function(Dt,yt){return Dt.name<yt.name?-1:1}),Bt.shader.program.uniforms.sort(function(Dt,yt){return Dt.name<yt.name?-1:1})),de(Rt,Bt),ft(Rt,Bt),Ue(Rt,Bt),e(Rt.compile(),{destroy:function(){Bt.shader.program.destroy()}})}return{next:Bn,current:Zi,procs:function(){var Ve=kn(),Qe=Ve.proc("poll"),at=Ve.proc("refresh"),Ct=Ve.block();Qe(Ct),at(Ct);var Ot=Ve.shared,Rt=Ot.gl,Bt=Ot.next,Dt=Ot.current;Ct(Dt,".dirty=false;"),Vs(Ve,Qe),Vs(Ve,at,null,!0);var yt;Ri&&(yt=Ve.link(Ri)),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),ur=Ve.cond(ht,".buffer");ur.then(Rt,".enableVertexAttribArray(i);",Rt,".bindBuffer(",Sr,",",ht,".buffer.buffer);",Rt,".vertexAttribPointer(i,",ht,".size,",ht,".type,",ht,".normalized,",ht,".stride,",ht,".offset);").else(Rt,".disableVertexAttribArray(i);",Rt,".vertexAttrib4f(i,",ht,".x,",ht,".y,",ht,".z,",ht,".w);",ht,".buffer=null;");var br=Ve.link(Rr.maxAttributes,{stable:!0});return at("for(var i=0;i<",br,";++i){",ht,"=",Pt,"[i];",ur,"}"),Ri&&at("for(var i=0;i<",br,";++i){",yt,".vertexAttribDivisorANGLE(i,",Pt,"[i].divisor);","}"),at(Ve.shared.vao,".currentVAO=null;",Ve.shared.vao,".setVAO(",Ve.shared.vao,".targetVAO);"),Object.keys(li).forEach(function(Ur){var Di=li[Ur],fi=Ct.def(Bt,".",Ur),Ti=Ve.block();Ti("if(",fi,"){",Rt,".enable(",Di,")}else{",Rt,".disable(",Di,")}",Dt,".",Ur,"=",fi,";"),at(Ti),Qe("if(",fi,"!==",Dt,".",Ur,"){",Ti,"}")}),Object.keys(mn).forEach(function(Ur){var Di=mn[Ur],fi=Zi[Ur],Ti,gn,rn=Ve.block();if(rn(Rt,".",Di,"("),Mn(fi)){var Ci=fi.length;Ti=Ve.global.def(Bt,".",Ur),gn=Ve.global.def(Dt,".",Ur),rn(M(Ci,function(Bi){return Ti+"["+Bi+"]"}),");",M(Ci,function(Bi){return gn+"["+Bi+"]="+Ti+"["+Bi+"];"}).join("")),Qe("if(",M(Ci,function(Bi){return Ti+"["+Bi+"]!=="+gn+"["+Bi+"]"}).join("||"),"){",rn,"}")}else Ti=Ct.def(Bt,".",Ur),gn=Ct.def(Dt,".",Ur),rn(Ti,");",Dt,".",Ur,"=",Ti,";"),Qe("if(",Ti,"!==",gn,"){",rn,"}");at(rn)}),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,Is=function(Me,bt){if(!bt.ext_disjoint_timer_query)return null;var zt=[];function Rr(){return zt.pop()||bt.ext_disjoint_timer_query.createQueryEXT()}function jr(xi){zt.push(xi)}var Nr=[];function Gr(xi){var Ri=Rr();bt.ext_disjoint_timer_query.beginQueryEXT(go,Ri),Nr.push(Ri),Wi(Nr.length-1,Nr.length,xi)}function mi(){bt.ext_disjoint_timer_query.endQueryEXT(go)}function Ui(){this.startQueryIndex=-1,this.endQueryIndex=-1,this.sum=0,this.stats=null}var qi=[];function Ei(){return qi.pop()||new Ui}function Hn(xi){qi.push(xi)}var en=[];function Wi(xi,Ri,ci){var an=Ei();an.startQueryIndex=xi,an.endQueryIndex=Ri,an.sum=0,an.stats=ci,en.push(an)}var si=[],Mr=[];function Yr(){var xi,Ri,ci=Nr.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 an=0;for(xi=0,Ri=0;Ri<Nr.length;++Ri){var Zi=Nr[Ri];bt.ext_disjoint_timer_query.getQueryObjectEXT(Zi,Da)?(an+=bt.ext_disjoint_timer_query.getQueryObjectEXT(Zi,yo),jr(Zi)):Nr[xi++]=Zi,si[Ri+1]=an,Mr[Ri+1]=xi}for(Nr.length=xi,xi=0,Ri=0;Ri<en.length;++Ri){var Bn=en[Ri],hi=Bn.startQueryIndex,li=Bn.endQueryIndex;Bn.sum+=si[li]-si[hi];var mn=Mr[hi],Ji=Mr[li];Ji===mn?(Bn.stats.gpuTime+=Bn.sum/1e6,Hn(Bn)):(Bn.startQueryIndex=mn,Bn.endQueryIndex=Ji,en[xi++]=Bn)}en.length=xi}}return{beginQuery:Gr,endQuery:mi,pushScopeStats:Wi,update:Yr,getNumPendingQueries:function(){return Nr.length},clear:function(){zt.push.apply(zt,Nr);for(var xi=0;xi<zt.length;xi++)bt.ext_disjoint_timer_query.deleteQueryEXT(zt[xi]);Nr.length=0,zt.length=0},restore:function(){Nr.length=0,zt.length=0}}},Ms=16384,Xs=256,Gn=1024,ja=34962,Fo="webglcontextlost",Uo="webglcontextrestored",$s=1,Sl=2,bu=3;function dl(Me,bt){for(var zt=0;zt<Me.length;++zt)if(Me[zt]===bt)return zt;return-1}function Sc(Me){var bt=x(Me);if(!bt)return null;var zt=bt.gl,Rr=zt.getContextAttributes(),jr=zt.isContextLost(),Nr=C(zt,bt);if(!Nr)return null;var Gr=_(),mi=Ia(),Ui=bt.cachedCode||{},qi=Nr.extensions,Ei=Is(zt,qi),Hn=v(),en=zt.drawingBufferWidth,Wi=zt.drawingBufferHeight,si={tick:0,time:0,viewportWidth:en,viewportHeight:Wi,framebufferWidth:en,framebufferHeight:Wi,drawingBufferWidth:en,drawingBufferHeight:Wi,pixelRatio:bt.pixelRatio},Mr={},Yr={elements:null,primitive:4,count:-1,offset:0,instances:-1},xi=ti(zt,qi),Ri=ri(zt,mi,bt,Zi),ci=kr(zt,qi,Ri,mi),an=ku(zt,qi,xi,mi,Ri,ci,Yr);function Zi(q){return an.destroyBuffer(q)}var Bn=Wu(zt,Gr,mi,bt),hi=of(zt,qi,xi,function(){Ji.procs.poll()},si,mi,bt),li=Dc(zt,qi,xi,mi,bt),mn=lf(zt,qi,xi,hi,li,mi),Ji=Ea(zt,Gr,qi,xi,Ri,ci,hi,mn,Mr,an,Bn,Yr,si,Ei,Ui,bt),Vi=Wl(zt,mn,Ji.procs.poll,si,Rr,qi,xi),Ni=Ji.next,pn=zt.canvas,Vn=[],na=[],Ki=[],kn=[bt.onDestroy],ta=null;function oa(){if(Vn.length===0){Ei&&Ei.update(),ta=null;return}ta=d.next(oa),Ys();for(var q=Vn.length-1;q>=0;--q){var K=Vn[q];K&&K(si,null,0)}zt.flush(),Ei&&Ei.update()}function ba(){!ta&&Vn.length>0&&(ta=d.next(oa))}function is(){ta&&(d.cancel(oa),ta=null)}function Zs(q){q.preventDefault(),jr=!0,is(),na.forEach(function(K){K()})}function Va(q){zt.getError(),jr=!1,Nr.restore(),Bn.restore(),Ri.restore(),hi.restore(),li.restore(),mn.restore(),an.restore(),Ei&&Ei.restore(),Ji.procs.refresh(),ba(),Ki.forEach(function(K){K()})}pn&&(pn.addEventListener(Fo,Zs,!1),pn.addEventListener(Uo,Va,!1));function Ml(){Vn.length=0,is(),pn&&(pn.removeEventListener(Fo,Zs),pn.removeEventListener(Uo,Va)),Bn.clear(),mn.clear(),li.clear(),an.clear(),hi.clear(),ci.clear(),Ri.clear(),Ei&&Ei.clear(),kn.forEach(function(q){q()})}function zo(q){function K(Rt){var Bt=e({},Rt);delete Bt.uniforms,delete Bt.attributes,delete Bt.context,delete Bt.vao,"stencil"in Bt&&Bt.stencil.op&&(Bt.stencil.opBack=Bt.stencil.opFront=Bt.stencil.op,delete Bt.stencil.op);function Dt(yt){if(yt in Bt){var Pt=Bt[yt];delete Bt[yt],Object.keys(Pt).forEach(function(ht){Bt[yt+"."+ht]=Pt[ht]})}}return Dt("blend"),Dt("depth"),Dt("cull"),Dt("stencil"),Dt("polygonOffset"),Dt("scissor"),Dt("sample"),"vao"in Rt&&(Bt.vao=Rt.vao),Bt}function de(Rt,Bt){var Dt={},yt={};return Object.keys(Rt).forEach(function(Pt){var ht=Rt[Pt];if(h.isDynamic(ht)){yt[Pt]=h.unbox(ht,Pt);return}else if(Bt&&Array.isArray(ht)){for(var ur=0;ur<ht.length;++ur)if(h.isDynamic(ht[ur])){yt[Pt]=h.unbox(ht,Pt);return}}Dt[Pt]=ht}),{dynamic:yt,static:Dt}}var ne=de(q.context||{},!0),we=de(q.uniforms||{},!0),Ue=de(q.attributes||{},!1),ft=de(K(q),!1),Xt={gpuTime:0,cpuTime:0,count:0},hr=Ji.compile(ft,Ue,we,ne,Xt),qt=hr.draw,Ve=hr.batch,Qe=hr.scope,at=[];function Ct(Rt){for(;at.length<Rt;)at.push(null);return at}function Ot(Rt,Bt){var Dt;if(typeof Rt=="function")return Qe.call(this,null,Rt,0);if(typeof Bt=="function")if(typeof Rt=="number")for(Dt=0;Dt<Rt;++Dt)Qe.call(this,null,Bt,Dt);else if(Array.isArray(Rt))for(Dt=0;Dt<Rt.length;++Dt)Qe.call(this,Rt[Dt],Bt,Dt);else return Qe.call(this,Rt,Bt,0);else if(typeof Rt=="number"){if(Rt>0)return Ve.call(this,Ct(Rt|0),Rt|0)}else if(Array.isArray(Rt)){if(Rt.length)return Ve.call(this,Rt,Rt.length)}else return qt.call(this,Rt)}return e(Ot,{stats:Xt,destroy:function(){hr.destroy()}})}var Qs=mn.setFBO=zo({framebuffer:h.define.call(null,$s,"framebuffer")});function al(q,K){var de=0;Ji.procs.poll();var ne=K.color;ne&&(zt.clearColor(+ne[0]||0,+ne[1]||0,+ne[2]||0,+ne[3]||0),de|=Ms),"depth"in K&&(zt.clearDepth(+K.depth),de|=Xs),"stencil"in K&&(zt.clearStencil(K.stencil|0),de|=Gn),zt.clear(de)}function Vl(q){if("framebuffer"in q)if(q.framebuffer&&q.framebuffer_reglType==="framebufferCube")for(var K=0;K<6;++K)Qs(e({framebuffer:q.framebuffer.faces[K]},q),al);else Qs(q,al);else al(null,q)}function ss(q){Vn.push(q);function K(){var de=dl(Vn,q);function ne(){var we=dl(Vn,ne);Vn[we]=Vn[Vn.length-1],Vn.length-=1,Vn.length<=0&&is()}Vn[de]=ne}return ba(),{cancel:K}}function Vs(){var q=Ni.viewport,K=Ni.scissor_box;q[0]=q[1]=K[0]=K[1]=0,si.viewportWidth=si.framebufferWidth=si.drawingBufferWidth=q[2]=K[2]=zt.drawingBufferWidth,si.viewportHeight=si.framebufferHeight=si.drawingBufferHeight=q[3]=K[3]=zt.drawingBufferHeight}function Ys(){si.tick+=1,si.time=ol(),Vs(),Ji.procs.poll()}function wa(){hi.refresh(),Vs(),Ji.procs.refresh(),Ei&&Ei.update()}function ol(){return(v()-Hn)/1e3}wa();function io(q,K){var de;switch(q){case"frame":return ss(K);case"lost":de=na;break;case"restore":de=Ki;break;case"destroy":de=kn;break;default:}return de.push(K),{cancel:function(){for(var ne=0;ne<de.length;++ne)if(de[ne]===K){de[ne]=de[de.length-1],de.pop();return}}}}function Y(){return Ui}function D(q){Object.entries(q).forEach(function(K){Ui[K[0]]=K[1]})}var J=e(zo,{clear:Vl,prop:h.define.bind(null,$s),context:h.define.bind(null,Sl),this:h.define.bind(null,bu),draw:zo({}),buffer:function(q){return Ri.create(q,ja,!1,!1)},elements:function(q){return ci.create(q,!1)},texture:hi.create2D,cube:hi.createCube,renderbuffer:li.create,framebuffer:mn.create,framebufferCube:mn.createCube,vao:an.createVAO,attributes:Rr,frame:ss,on:io,limits:xi,hasExtension:function(q){return xi.extensions.indexOf(q.toLowerCase())>=0},read:Vi,destroy:Ml,_gl:zt,_refresh:wa,poll:function(){Ys(),Ei&&Ei.update()},now:ol,stats:mi,getCachedCode:Y,preloadCachedCode:D});return bt.onDone(null,J),J}return Sc})});var Mz=ye((d_r,CBe)=>{"use strict";var FUt=CX(),zUt=kBe();CBe.exports=function(t,r,n){var i=t._fullLayout,a=!0;return i._glcanvas.each(function(o){if(o.regl){o.regl.preloadCachedCode(n);return}if(!(o.pick&&!i._has("parcoords"))){try{o.regl=zUt({canvas:this,attributes:{antialias:!o.pick,preserveDrawingBuffer:!0},pixelRatio:t._context.plotGlPixelRatio||window.devicePixelRatio,extensions:r||[],cachedCode:n||{}})}catch(s){a=!1}o.regl||(a=!1),a&&this.addEventListener("webglcontextlost",function(s){t&&t.emit&&t.emit("plotly_webglcontextlost",{event:s,layer:o.key})},!1)}}),a||FUt({container:i._glcontainer.node()}),a}});var dK=ye((hK,DBe)=>{"use strict";var LBe=hY(),PBe=GY(),OUt=yqe(),IBe=EBe(),fK=Dr(),qUt=Eg().selectMode,BUt=Mz(),NUt=Ru(),UUt=_U(),VUt=lY().styleTextSelection,RBe={};function GUt(e,t,r,n){var i=e._size,a=e.width*n,o=e.height*n,s=i.l*n,l=i.b*n,u=i.r*n,c=i.t*n,f=i.w*n,h=i.h*n;return[s+t.domain[0]*f,l+r.domain[0]*h,a-u-(1-t.domain[1])*f,o-c-(1-r.domain[1])*h]}var hK=DBe.exports=function(t,r,n){if(n.length){var i=t._fullLayout,a=r._scene,o=r.xaxis,s=r.yaxis,l,u;if(a){var c=BUt(t,["ANGLE_instanced_arrays","OES_element_index_uint"],RBe);if(!c){a.init();return}var f=a.count,h=i._glcanvas.data()[0].regl;if(UUt(t,r,n),a.dirty){if((a.line2d||a.error2d)&&!(a.scatter2d||a.fill2d||a.glText)&&h.clear({color:!0,depth:!0}),a.error2d===!0&&(a.error2d=OUt(h)),a.line2d===!0&&(a.line2d=PBe(h)),a.scatter2d===!0&&(a.scatter2d=LBe(h)),a.fill2d===!0&&(a.fill2d=PBe(h)),a.glText===!0)for(a.glText=new Array(f),l=0;l<f;l++)a.glText[l]=new IBe(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 IBe(h))}else if(f<a.glText.length){var v=a.glText.length-f,_=a.glText.splice(f,v);_.forEach(function(H){H.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(H){if(H&&H.positions){for(var te=H.positions,oe=0;oe<te.length&&(isNaN(te[oe])||isNaN(te[oe+1]));)oe+=2;for(var _e=te.length-2;_e>oe&&(isNaN(te[_e])||isNaN(te[_e+1]));)_e-=2;H.positions=te.slice(oe,_e+2)}return H}),a.line2d.update(a.lineOptions)),a.error2d){var b=(a.errorXOptions||[]).concat(a.errorYOptions||[]);a.error2d.update(b)}a.scatter2d&&a.scatter2d.update(a.markerOptions),a.fillOrder=fK.repeat(null,f),a.fill2d&&(a.fillOptions=a.fillOptions.map(function(H,te){var oe=n[te];if(!(!H||!oe||!oe[0]||!oe[0].trace)){var _e=oe[0],Ee=_e.trace,Ce=_e.t,me=a.lineOptions[te],ie,Se,Le=[];Ee._ownfill&&Le.push(te),Ee._nexttrace&&Le.push(te+1),Le.length&&(a.fillOrder[te]=Le);var Ae=[],Fe=me&&me.positions||Ce.positions,Pe,ge;if(Ee.fill==="tozeroy"){for(Pe=0;Pe<Fe.length&&isNaN(Fe[Pe+1]);)Pe+=2;for(ge=Fe.length-2;ge>Pe&&isNaN(Fe[ge+1]);)ge-=2;Fe[Pe+1]!==0&&(Ae=[Fe[Pe],0]),Ae=Ae.concat(Fe.slice(Pe,ge+2)),Fe[ge+1]!==0&&(Ae=Ae.concat([Fe[ge],0]))}else if(Ee.fill==="tozerox"){for(Pe=0;Pe<Fe.length&&isNaN(Fe[Pe]);)Pe+=2;for(ge=Fe.length-2;ge>Pe&&isNaN(Fe[ge]);)ge-=2;Fe[Pe]!==0&&(Ae=[0,Fe[Pe+1]]),Ae=Ae.concat(Fe.slice(Pe,ge+2)),Fe[ge]!==0&&(Ae=Ae.concat([0,Fe[ge+1]]))}else if(Ee.fill==="toself"||Ee.fill==="tonext"){for(Ae=[],ie=0,H.splitNull=!0,Se=0;Se<Fe.length;Se+=2)(isNaN(Fe[Se])||isNaN(Fe[Se+1]))&&(Ae=Ae.concat(Fe.slice(ie,Se)),Ae.push(Fe[ie],Fe[ie+1]),Ae.push(null,null),ie=Se+2);Ae=Ae.concat(Fe.slice(ie)),ie&&Ae.push(Fe[ie],Fe[ie+1])}else{var Re=Ee._nexttrace;if(Re){var ce=a.lineOptions[te+1];if(ce){var Ze=ce.positions;if(Ee.fill==="tonexty"){for(Ae=Fe.slice(),te=Math.floor(Ze.length/2);te--;){var ut=Ze[te*2],pt=Ze[te*2+1];isNaN(ut)||isNaN(pt)||Ae.push(ut,pt)}H.fill=Re.fillcolor}}}}if(Ee._prevtrace&&Ee._prevtrace.fill==="tonext"){var Zt=a.lineOptions[te-1].positions,st=Ae.length/2;ie=st;var lt=[ie];for(Se=0;Se<Zt.length;Se+=2)(isNaN(Zt[Se])||isNaN(Zt[Se+1]))&&(lt.push(Se/2+st+1),ie=Se+2);Ae=Ae.concat(Zt),H.hole=lt}return H.fillmode=Ee.fill,H.opacity=Ee.opacity,H.positions=Ae,H}}),a.fill2d.update(a.fillOptions))}var p=i.dragmode,k=qUt(p),E=i.clickmode.indexOf("select")>-1;for(l=0;l<f;l++){var S=n[l][0],L=S.trace,x=S.t,C=x.index,M=L._length,g=x.x,P=x.y;if(L.selectedpoints||k||E){if(k||(k=!0),L.selectedpoints){var T=a.selectBatch[C]=fK.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[C]=O}var V=x.xpx=new Array(M),G=x.ypx=new Array(M);for(u=0;u<M;u++)V[u]=o.c2p(g[u]),G[u]=s.c2p(P[u])}else x.xpx=x.ypx=null}if(k){if(a.select2d||(a.select2d=LBe(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(H){var te=((H||[])[0]||{}).trace||{};NUt.hasText(te)&&VUt(H)})}else a.scatter2d&&a.scatter2d.update(a.markerOptions);var j={viewport:GUt(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=fK.repeat(j,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(H){H.update(j)})}}};hK.reglPrecompiled=RBe});var OBe=ye((v_r,zBe)=>{"use strict";var FBe=Qze();FBe.plot=dK();zBe.exports=FBe});var BBe=ye((p_r,qBe)=>{"use strict";qBe.exports=OBe()});var vK=ye((g_r,GBe)=>{"use strict";var HUt=pf(),VBe=Tu(),NBe=df().axisHoverFormat,{hovertemplateAttrs:jUt,templatefallbackAttrs:WUt}=Ll(),kk=lk(),XUt=hd().idRegex,ZUt=vl().templatedArray,g5=Ao().extendFlat,o1=HUt.marker,YUt=o1.line,KUt=g5(VBe("marker.line",{editTypeOverride:"calc"}),{width:g5({},YUt.width,{editType:"calc"}),editType:"calc"}),Ez=g5(VBe("marker"),{symbol:o1.symbol,angle:o1.angle,size:g5({},o1.size,{editType:"markerSize"}),sizeref:o1.sizeref,sizemin:o1.sizemin,sizemode:o1.sizemode,opacity:o1.opacity,colorbar:o1.colorbar,line:KUt,editType:"calc"});Ez.color.editType=Ez.cmin.editType=Ez.cmax.editType="style";function UBe(e){return{valType:"info_array",freeLength:!0,editType:"calc",items:{valType:"subplotid",regex:XUt[e],editType:"plot"}}}GBe.exports={dimensions:ZUt("dimension",{visible:{valType:"boolean",dflt:!0,editType:"calc"},label:{valType:"string",editType:"calc"},values:{valType:"data_array",editType:"calc+clearAxisTypes"},axis:{type:{valType:"enumerated",values:["linear","log","date","category"],editType:"calc+clearAxisTypes"},matches:{valType:"boolean",dflt:!1,editType:"calc"},editType:"calc+clearAxisTypes"},editType:"calc+clearAxisTypes"}),text:g5({},kk.text,{}),hovertext:g5({},kk.hovertext,{}),hovertemplate:jUt(),hovertemplatefallback:WUt(),xhoverformat:NBe("x"),yhoverformat:NBe("y"),marker:Ez,xaxes:UBe("x"),yaxes:UBe("y"),diagonal:{visible:{valType:"boolean",dflt:!0,editType:"calc"},editType:"calc"},showupperhalf:{valType:"boolean",dflt:!0,editType:"calc"},showlowerhalf:{valType:"boolean",dflt:!0,editType:"calc"},selected:{marker:kk.selected.marker,editType:"calc"},unselected:{marker:kk.unselected.marker,editType:"calc"},opacity:kk.opacity}});var kz=ye((m_r,HBe)=>{"use strict";HBe.exports=function(e,t,r,n){n||(n=1/0);var i,a;for(i=0;i<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 XBe=ye((y_r,WBe)=>{"use strict";var pK=Dr(),JUt=Yd(),jBe=vK(),$Ut=Ru(),QUt=$p(),eVt=kz(),tVt=VF().isOpenSymbol;WBe.exports=function(t,r,n,i){function a(d,v){return pK.coerce(t,r,jBe,d,v)}var o=JUt(t,r,{name:"dimensions",handleItemDefaults:rVt}),s=a("diagonal.visible"),l=a("showupperhalf"),u=a("showlowerhalf"),c=eVt(r,o,"values");if(!c||!s&&!l&&!u){r.visible=!1;return}a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),a("xhoverformat"),a("yhoverformat"),QUt(t,r,n,i,a,{noAngleRef:!0,noStandOff:!0});var f=tVt(r.marker.symbol),h=$Ut.isBubble(r);a("marker.line.width",f||h?1:0),iVt(t,r,i,a),pK.coerceSelectionMarkerOpacity(r,a)};function rVt(e,t){function r(i,a){return pK.coerce(e,t,jBe.dimensions,i,a)}r("label");var n=r("values");n&&n.length?r("visible"):t.visible=!1,r("axis.type"),r("axis.matches")}function iVt(e,t,r,n){var i=t.dimensions,a=i.length,o=t.showupperhalf,s=t.showlowerhalf,l=t.diagonal.visible,u,c,f=new Array(a),h=new Array(a);for(u=0;u<a;u++){var d=u?u+1:"";f[u]="x"+d,h[u]="y"+d}var v=n("xaxes",f),_=n("yaxes",h),b=t._diag=new Array(a);t._xaxes={},t._yaxes={};var p=[],k=[];function E(z,O,V,G){if(z){var Z=z.charAt(0),j=r._splomAxes[Z];if(t["_"+Z+"axes"][z]=1,G.push(z),!(z in j)){var N=j[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 S=!l&&!s,L=!l&&!o;for(t._axesDim={},u=0;u<a;u++){var x=i[u],C=u===0,M=u===a-1,g=C&&S||M&&L?void 0:v[u],P=C&&L||M&&S?void 0:_[u];E(g,P,x,p),E(P,g,x,k),b[u]=[g,P],t._axesDim[g]=u,t._axesDim[P]=u}for(u=0;u<p.length;u++)for(c=0;c<k.length;c++){var T=p[u]+k[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 KBe=ye((__r,YBe)=>{"use strict";var ZBe=Dr();YBe.exports=function(t,r){var n=t._fullLayout,i=r.uid,a=n._splomScenes;a||(a=n._splomScenes={});var o={dirty:!0,selectBatch:[],unselectBatch:[]},s={matrix:!1,selectBatch:[],unselectBatch:[]},l=a[r.uid];return l||(l=a[i]=ZBe.extendFlat({},o,s),l.draw=function(){l.matrix&&l.matrix.draw&&(l.selectBatch.length||l.unselectBatch.length?l.matrix.draw(l.unselectBatch,l.selectBatch):l.matrix.draw()),l.dirty=!1},l.destroy=function(){l.matrix&&l.matrix.destroy&&l.matrix.destroy(),l.matrixOptions=null,l.selectBatch=null,l.unselectBatch=null,l=null}),l.dirty||ZBe.extendFlat(l,o),l}});var QBe=ye((x_r,$Be)=>{"use strict";var gK=Dr(),Cz=hf(),nVt=O0().calcMarkerSize,aVt=O0().calcAxisExpansion,oVt=F0(),JBe=J2().markerSelection,sVt=J2().markerStyle,lVt=KBe(),uVt=fs().BADNUM,cVt=ox().TOO_MANY_POINTS;$Be.exports=function(t,r){var n=r.dimensions,i=r._length,a={},o=a.cdata=[],s=a.data=[],l=r._visibleDims=[],u,c,f,h,d;function v(E,S){for(var L=E.makeCalcdata({v:S.values,vcalendar:r.calendar},"v"),x=0;x<L.length;x++)L[x]=L[x]===uVt?NaN:L[x];o.push(L),s.push(E.type==="log"?gK.simpleMap(L,E.c2l):L)}for(u=0;u<n.length;u++)if(f=n[u],f.visible){if(h=Cz.getFromId(t,r._diag[u][0]),d=Cz.getFromId(t,r._diag[u][1]),h&&d&&h.type!==d.type){gK.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)}oVt(t,r),gK.extendFlat(a,sVt(t,r));var _=o.length,b=_*i>cVt,p;for(b?p=a.sizeAvg||Math.max(a.size,3):p=nVt(r,i),c=0;c<l.length;c++)u=l[c],f=n[u],h=Cz.getFromId(t,r._diag[u][0])||{},d=Cz.getFromId(t,r._diag[u][1])||{},aVt(t,r,h,d,o[c],o[c],p);var k=lVt(t,r);return k.matrix||(k.matrix=!0),k.matrixOptions=a,k.selectedOptions=JBe(t,r,r.selected),k.unselectedOptions=JBe(t,r,r.unselected),[{x:!1,y:!1,t:{},trace:r}]}});var tNe=ye((eNe,Ck)=>{(function(){var e,t,r,n,i,a;typeof performance!="undefined"&&performance!==null&&performance.now?Ck.exports=function(){return performance.now()}:typeof process!="undefined"&&process!==null&&process.hrtime?(Ck.exports=function(){return(e()-i)/1e6},t=process.hrtime,e=function(){var o;return o=t(),o[0]*1e9+o[1]},n=e(),a=process.uptime()*1e9,i=n-a):Date.now?(Ck.exports=function(){return Date.now()-r},r=Date.now()):(Ck.exports=function(){return new Date().getTime()-r},r=new Date().getTime())}).call(eNe)});var iNe=ye((b_r,Iz)=>{var fVt=tNe(),s1=window,Lz=["moz","webkit"],y5="AnimationFrame",_5=s1["request"+y5],Lk=s1["cancel"+y5]||s1["cancelRequest"+y5];for(m5=0;!_5&&m5<Lz.length;m5++)_5=s1[Lz[m5]+"Request"+y5],Lk=s1[Lz[m5]+"Cancel"+y5]||s1[Lz[m5]+"CancelRequest"+y5];var m5;(!_5||!Lk)&&(Pz=0,mK=0,vx=[],rNe=1e3/60,_5=function(e){if(vx.length===0){var t=fVt(),r=Math.max(0,rNe-(t-Pz));Pz=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(Pz)}catch(a){setTimeout(function(){throw a},0)}},Math.round(r))}return vx.push({handle:++mK,callback:e,cancelled:!1}),mK},Lk=function(e){for(var t=0;t<vx.length;t++)vx[t].handle===e&&(vx[t].cancelled=!0)});var Pz,mK,vx,rNe;Iz.exports=function(e){return _5.call(s1,e)};Iz.exports.cancel=function(){Lk.apply(s1,arguments)};Iz.exports.polyfill=function(e){e||(e=s1),e.requestAnimationFrame=_5,e.cancelAnimationFrame=Lk}});var aNe=ye((w_r,nNe)=>{nNe.exports=function(t,r){var n=typeof t=="number",i=typeof r=="number";n&&!i?(r=t,t=0):!n&&!i&&(t=0,r=0),t=t|0,r=r|0;var a=r-t;if(a<0)throw new Error("array length must be positive");for(var o=new Array(a),s=0,l=t;s<a;s++,l++)o[s]=l;return o}});var uNe=ye((T_r,lNe)=>{"use strict";var hVt=hY(),dVt=Zm(),vVt=X2(),oNe=iNe(),pVt=aNe(),yK=i5(),gVt=Z2();lNe.exports=px;function px(e,t){if(!(this instanceof px))return new px(e,t);this.traces=[],this.passes={},this.regl=e,this.scatter=hVt(e),this.canvas=this.scatter.canvas}px.prototype.render=function(...e){return e.length&&this.update(...e),this.regl.attributes.preserveDrawingBuffer?this.draw():(this.dirty?this.planned==null&&(this.planned=oNe(()=>{this.draw(),this.dirty=!0,this.planned=null})):(this.draw(),this.dirty=!0,oNe(()=>{this.dirty=!1})),this)};px.prototype.update=function(...e){if(!e.length)return;for(let n=0;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=dVt(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:yK([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=yK(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(gVt(n.data)),i.columns=n.data.length,i.count=n.data[0].length,i.bounds=[];for(let _=0;_<i.columns;_++)i.bounds[_]=vVt(n.data[_],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(sNe),o=!0):i.padding=sNe(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 _=0;_<s;_++)for(let b=0;b<s;b++){if(!i.diagonal&&b===_||!i.upper&&_>b||!i.lower&&_<b)continue;let p=mVt(i.id,_,b),k=this.passes[p]||(this.passes[p]={});if(n.data&&(n.transpose?k.positions={x:{buffer:i.buffer,offset:b,count:l,stride:s},y:{buffer:i.buffer,offset:_,count:l,stride:s}}:k.positions={x:{buffer:i.buffer,offset:b*l,count:l},y:{buffer:i.buffer,offset:_*l,count:l}},k.bounds=Rz(i.bounds,_,b)),n.domain||n.viewport||n.data){let E=o?Rz(i.padding,_,b):i.padding;if(i.domain){let[S,L,x,C]=Rz(i.domain,_,b);k.viewport=[f+S*u+E[0],h+L*c+E[1],f+x*u-E[2],h+C*c-E[3]]}else k.viewport=[f+b*d+d*E[0],h+_*v+v*E[1],f+(b+1)*d-d*E[2],h+(_+1)*v-v*E[3]]}n.color&&(k.color=i.color),n.size&&(k.size=i.size),n.marker&&(k.marker=i.marker),n.borderSize&&(k.borderSize=i.borderSize),n.borderColor&&(k.borderColor=i.borderColor),n.opacity&&(k.opacity=i.opacity),n.range&&(k.range=a?Rz(i.range,_,b):i.range||k.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(...pVt(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 mVt(e,t,r){let n=e.id!=null?e.id:e,i=t,a=r;return n<<16|(i&255)<<8|a&255}function Rz(e,t,r){let n,i,a,o,s,l,u,c,f=e[t],h=e[r];return f.length>2?(n=f[0],a=f[2],i=f[1],o=f[3]):f.length?(n=i=f[0],a=o=f[1]):(n=f.x,i=f.y,a=f.x+f.width,o=f.y+f.height),h.length>2?(s=h[0],u=h[2],l=h[1],c=h[3]):h.length?(s=l=h[0],u=c=h[1]):(s=h.x,l=h.y,u=h.x+h.width,c=h.y+h.height),[s,i,u,o]}function sNe(e){if(typeof e=="number")return[e,e,e,e];if(e.length===2)return[e[0],e[1],e[0],e[1]];{let t=yK(e);return[t.x,t.y,t.x+t.width,t.y+t.height]}}});var fNe=ye((A_r,cNe)=>{"use strict";var yVt=uNe(),_K=Dr(),Dz=hf(),_Vt=Eg().selectMode;cNe.exports=function(t,r,n){if(n.length)for(var i=0;i<n.length;i++)xVt(t,n[i][0])};function xVt(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,_;if(l.length!==0){s.lower=i.showupperhalf,s.upper=i.showlowerhalf,s.diagonal=i.diagonal.visible;var b=i._visibleDims,p=l.length,k=o.viewOpts={};for(k.ranges=new Array(p),k.domains=new Array(p),_=0;_<b.length;_++){d=b[_];var E=k.ranges[_]=new Array(4),S=k.domains[_]=new Array(4);f=Dz.getFromId(e,i._diag[d][0]),f&&(E[0]=f._rl[0],E[2]=f._rl[1],S[0]=f.domain[0],S[2]=f.domain[1]),h=Dz.getFromId(e,i._diag[d][1]),h&&(E[1]=h._rl[0],E[3]=h._rl[1],S[1]=h.domain[0],S[3]=h.domain[1])}var L=e._context.plotGlPixelRatio,x=n.l*L,C=n.b*L,M=n.w*L,g=n.h*L;k.viewport=[x,C,M+x,g+C],o.matrix===!0&&(o.matrix=yVt(u));var P=r.clickmode.indexOf("select")>-1,T=_Vt(c)||!!i.selectedpoints||P,z=!0;if(T){var O=i._length;if(i.selectedpoints){o.selectBatch=i.selectedpoints;var V=i.selectedpoints,G={};for(d=0;d<V.length;d++)G[V[d]]=!0;var Z=[];for(d=0;d<O;d++)G[d]||Z.push(d);o.unselectBatch=Z}var j=a.xpx=new Array(p),N=a.ypx=new Array(p);for(_=0;_<b.length;_++){if(d=b[_],f=Dz.getFromId(e,i._diag[d][0]),f)for(j[_]=new Array(O),v=0;v<O;v++)j[_][v]=f.c2p(l[_][v]);if(h=Dz.getFromId(e,i._diag[d][1]),h)for(N[_]=new Array(O),v=0;v<O;v++)N[_][v]=h.c2p(l[_][v])}if(o.selectBatch.length||o.unselectBatch.length){var H=_K.extendFlat({},s,o.unselectedOptions,k),te=_K.extendFlat({},s,o.selectedOptions,k);o.matrix.update(H,te),z=!1}}else a.xpx=a.ypx=null;if(z){var oe=_K.extendFlat({},s,k);o.matrix.update(oe,null)}}}});var xK=ye(hNe=>{"use strict";hNe.getDimIndex=function(t,r){for(var n=r._id,i=n.charAt(0),a={x:0,y:1}[i],o=t._visibleDims,s=0;s<o.length;s++){var l=o[s];if(t._diag[l][a]===n)return s}return!1}});var mNe=ye((M_r,gNe)=>{"use strict";var dNe=xK(),bVt=UF().calcHover,vNe=ho().getFromId,wVt=Ao().extendFlat;function TVt(e,t,r,n,i){i||(i={});var a=(n||"").charAt(0)==="x",o=(n||"").charAt(0)==="y",s=pNe(e,t,r);if((a||o)&&i.hoversubplots==="axis"&&s[0])for(var l=(a?e.xa:e.ya)._subplotsWith,u=i.gd,c=wVt({},e),f=0;f<l.length;f++){var h=l[f];if(h!==e.xa._id+e.ya._id){o?c.xa=vNe(u,h,"x"):c.ya=vNe(u,h,"y");var d=a||o,v=pNe(c,t,r,d);s=s.concat(v)}}return s}function pNe(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=dNe.getDimIndex(a,l),v=dNe.getDimIndex(a,u);if(d===!1||v===!1)return[e];for(var _=s[d],b=s[v],p,k,E=h,S=0;S<_.length;S++)if(!(n&&S!==e.index)){var L=_[S],x=b[S],C=l.c2p(L)-c,M=u.c2p(x)-f,g=Math.sqrt(C*C+M*M);(n||g<E)&&(E=k=g,p=S)}return e.index=p,e.distance=E,e.dxy=k,p===void 0?[e]:[bVt(e,_,b,a)]}gNe.exports={hoverPoints:TVt}});var TNe=ye((E_r,wNe)=>{"use strict";var bNe=Dr(),yNe=bNe.pushUnique,_Ne=Ru(),xNe=xK();wNe.exports=function(t,r){var n=t.cd,i=n[0].trace,a=n[0].t,o=t.scene,s=o.matrixOptions.cdata,l=t.xaxis,u=t.yaxis,c=[];if(!o)return c;var f=!_Ne.hasMarkers(i)&&!_Ne.hasText(i);if(i.visible!==!0||f)return c;var h=xNe.getDimIndex(i,l),d=xNe.getDimIndex(i,u);if(h===!1||d===!1)return c;var v=a.xpx[h],_=a.ypx[d],b=s[h],p=s[d],k=(t.scene.selectBatch||[]).slice(),E=[];if(r!==!1&&!r.degenerate)for(var S=0;S<b.length;S++)r.contains([v[S],_[S]],null,S,t)?(c.push({pointNumber:S,x:b[S],y:p[S]}),yNe(k,S)):k.indexOf(S)!==-1?yNe(k,S):E.push(S);var L=o.matrixOptions;return!k.length&&!E.length?o.matrix.update(L,null):!o.selectBatch.length&&!o.unselectBatch.length&&o.matrix.update(o.unselectedOptions,bNe.extendFlat({},L,o.selectedOptions,o.viewOpts)),o.selectBatch=k,o.unselectBatch=E,c}});var MNe=ye((k_r,SNe)=>{"use strict";var ANe=Dr(),AVt=F0(),SVt=J2().markerStyle;SNe.exports=function(t,r){var n=r.trace,i=t._fullLayout._splomScenes[n.uid];if(i){AVt(t,n),ANe.extendFlat(i.matrixOptions,SVt(t,n));var a=ANe.extendFlat({},i.matrixOptions,i.viewOpts);i.matrix.update(a,null)}}});var kNe=ye((C_r,ENe)=>{"use strict";var MVt=qa(),EVt=fV();ENe.exports={moduleType:"trace",name:"splom",categories:["gl","regl","cartesian","symbols","showLegend","scatter-like"],attributes:vK(),supplyDefaults:XBe(),colorbar:$d(),calc:QBe(),plot:fNe(),hoverPoints:mNe().hoverPoints,selectPoints:TNe(),editStyle:MNe(),meta:{}};MVt.register(EVt)});var DNe=ye((L_r,RNe)=>{"use strict";var kVt=GY(),CVt=qa(),LVt=Mz(),PVt=Id().getModuleCalcData,gx=ph(),CNe=hf().getFromId,LNe=ho().shouldShowZeroLine,PNe="splom",INe={};function IVt(e){var t=e._fullLayout,r=CVt.getModule(PNe),n=PVt(e.calcdata,r)[0],i=LVt(e,["ANGLE_instanced_arrays","OES_element_index_uint"],INe);i&&(t._hasOnlyLargeSploms&&bK(e),r.plot(e,{},n))}function RVt(e){var t=e.calcdata,r=e._fullLayout;r._hasOnlyLargeSploms&&bK(e);for(var n=0;n<t.length;n++){var i=t[n][0],a=i.trace,o=r._splomScenes[a.uid];a.type==="splom"&&o&&o.matrix&&DVt(e,a,o)}}function DVt(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=CNe(e,t._diag[s][0]);u&&(l[0]=u.r2l(u.range[0]),l[2]=u.r2l(u.range[1]));var c=CNe(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 bK(e){var t=e._fullLayout,r=t._glcanvas.data()[0].regl,n=t._splomGrid;n||(n=t._splomGrid=kVt(r)),n.update(FVt(e))}function FVt(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(x,C,M,g,P,T){M*=t,g*=t,P*=t,T*=t;var z=C[x+"color"],O=C[x+"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,_=c._length,b=n.b+c.domain[0]*n.h,p=-c._m,k=-p*c.r2l(c.range[0],c.calendar),E,S;if(u.showgrid)for(o=0;o<f.length;o++)E=d+u.l2p(f[o].x),s("grid",u,E,b,E,b+_);if(c.showgrid)for(o=0;o<h.length;o++)S=b+k+p*h[o].x,s("grid",c,d,S,d+v,S);LNe(e,u,c)&&(E=d+u.l2p(0),s("zeroline",u,E,b,E,b+_)),LNe(e,c,u)&&(S=b+k+0,s("zeroline",c,d,S,d+v,S))}var L=[];for(o in a)L.push(a[o]);return L}function zVt(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)}RNe.exports={name:PNe,attr:gx.attr,attrRegex:gx.attrRegex,layoutAttributes:gx.layoutAttributes,supplyLayoutDefaults:gx.supplyLayoutDefaults,drawFramework:gx.drawFramework,plot:IVt,drag:RVt,updateGrid:bK,clean:zVt,updateFx:gx.updateFx,toSVG:gx.toSVG,reglPrecompiled:INe}});var ONe=ye((P_r,zNe)=>{"use strict";var FNe=kNe();FNe.basePlotModule=DNe(),zNe.exports=FNe});var BNe=ye((I_r,qNe)=>{"use strict";qNe.exports=ONe()});var AK=ye((R_r,NNe)=>{"use strict";var OVt=Tu(),wK=Rd(),TK=ec(),qVt=Cc().attributes,Fz=Ao().extendFlat,BVt=vl().templatedArray;NNe.exports={domain:qVt({name:"parcoords",trace:!0,editType:"plot"}),labelangle:{valType:"angle",dflt:0,editType:"plot"},labelside:{valType:"enumerated",values:["top","bottom"],dflt:"top",editType:"plot"},labelfont:TK({editType:"plot"}),tickfont:TK({autoShadowDflt:!0,editType:"plot"}),rangefont:TK({editType:"plot"}),dimensions:BVt("dimension",{label:{valType:"string",editType:"plot"},tickvals:Fz({},wK.tickvals,{editType:"plot"}),ticktext:Fz({},wK.ticktext,{editType:"plot"}),tickformat:Fz({},wK.tickformat,{editType:"plot"}),visible:{valType:"boolean",dflt:!0,editType:"plot"},range:{valType:"info_array",items:[{valType:"number",editType:"plot"},{valType:"number",editType:"plot"}],editType:"plot"},constraintrange:{valType:"info_array",freeLength:!0,dimensions:"1-2",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},multiselect:{valType:"boolean",dflt:!0,editType:"plot"},values:{valType:"data_array",editType:"calc"},editType:"calc"}),line:Fz({editType:"calc"},OVt("line",{colorscaleDflt:"Viridis",autoColorDflt:!1,editTypeOverride:"calc"})),unselected:{line:{color:{valType:"color",dflt:"#7f7f7f",editType:"plot"},opacity:{valType:"number",min:0,max:1,dflt:"auto",editType:"plot"},editType:"plot"},editType:"plot"}}});var Pk=ye((D_r,UNe)=>{"use strict";UNe.exports={maxDimensionCount:60,overdrag:45,verticalPadding:2,tickDistance:50,canvasPixelRatio:1,blockLineCount:5e3,layers:["contextLineLayer","focusLineLayer","pickLineLayer"],axisTitleOffset:28,axisExtentOffset:10,bar:{width:4,captureWidth:10,fillColor:"magenta",fillOpacity:1,snapDuration:150,snapRatio:.25,snapClose:.01,strokeOpacity:1,strokeWidth:1,handleHeight:8,handleOpacity:1,handleOverlap:0},cn:{axisExtentText:"axis-extent-text",parcoordsLineLayers:"parcoords-line-layers",parcoordsLineLayer:"parcoords-lines",parcoords:"parcoords",parcoordsControlView:"parcoords-control-view",yAxis:"y-axis",axisOverlays:"axis-overlays",axis:"axis",axisHeading:"axis-heading",axisTitle:"axis-title",axisExtent:"axis-extent",axisExtentTop:"axis-extent-top",axisExtentTopText:"axis-extent-top-text",axisExtentBottom:"axis-extent-bottom",axisExtentBottomText:"axis-extent-bottom-text",axisBrush:"axis-brush"},id:{filterBarPattern:"filter-bar-pattern"}}});var Jm=ye((F_r,GNe)=>{"use strict";var NVt=HS();function VNe(e){return[e]}GNe.exports={keyFun:function(e){return e.key},repeat:VNe,descend:NVt,wrap:VNe,unwrap:function(e){return e[0]}}});var EK=ye((z_r,eUe)=>{"use strict";var bh=Pk(),tm=Oa(),UVt=Jm().keyFun,zz=Jm().repeat,x5=Dr().sorterAsc,VVt=Dr().strTranslate,HNe=bh.bar.snapRatio;function jNe(e,t){return e*(1-HNe)+t*HNe}var WNe=bh.bar.snapClose;function GVt(e,t){return e*(1-WNe)+t*WNe}function qz(e,t,r,n){if(HVt(r,n))return r;var i=e?-1:1,a=0,o=t.length-1;if(i<0){var s=a;a=o,o=s}for(var l=t[a],u=l,c=a;i*c<i*o;c+=i){var f=c+i,h=t[f];if(i*r<i*GVt(l,h))return jNe(l,u);if(i*r<i*h||f===o)return jNe(h,l);u=l,l=h}}function HVt(e,t){for(var r=0;r<t.length;r++)if(e>=t[r][0]&&e<=t[r][1])return!0;return!1}function jVt(e){e.attr("x",-bh.bar.captureWidth/2).attr("width",bh.bar.captureWidth)}function WVt(e){e.attr("visibility","visible").style("visibility","visible").attr("fill","yellow").attr("opacity",0)}function XVt(e){if(!e.brush.filterSpecified)return"0,"+e.height;for(var t=XNe(e.brush.filter.getConsolidated(),e.height),r=[0],n,i,a,o=t.length?t[0][0]:null,s=0;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 XNe(e,t){return e.map(function(r){return r.map(function(n){return Math.max(0,n*t)}).sort(x5)})}function ZVt(e,t){var r=bh.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 ZNe(){tm.select(document.body).style("cursor",null)}function MK(e){e.attr("stroke-dasharray",XVt)}function Oz(e,t){var r=tm.select(e).selectAll(".highlight, .highlight-shadow"),n=t?r.transition().duration(bh.bar.snapDuration).each("end",t):r;MK(n)}function YNe(e,t){var r=e.brush,n=r.filterSpecified,i=NaN,a={},o;if(n){var s=e.height,l=r.filter.getConsolidated(),u=XNe(l,s),c=NaN,f=NaN,h=NaN;for(o=0;o<=u.length;o++){var d=u[o];if(d&&d[0]<=t&&t<=d[1]){c=o;break}else if(f=o?o-1:NaN,d&&d[0]>t){h=o;break}}if(i=c,isNaN(i)&&(isNaN(f)||isNaN(h)?i=isNaN(f)?h:f:i=t-u[f][1]<u[h][0]-t?f:h),!isNaN(i)){var v=u[i],_=ZVt(v,t);_&&(a.interval=l[i],a.intervalPix=v,a.region=_)}}if(e.ordinal&&!a.region){var b=e.unitTickvals,p=e.unitToPaddedPx.invert(t);for(o=0;o<b.length;o++){var k=[b[Math.max(o-1,0)]*.25+b[o]*.75,b[Math.min(o+1,b.length-1)]*.25+b[o]*.75];if(p>=k[0]&&p<=k[1]){a.clickableOrdinalRange=k;break}}}return a}function YVt(e,t){tm.event.sourceEvent.stopPropagation();var r=t.height-tm.mouse(e)[1]-2*bh.verticalPadding,n=t.unitToPaddedPx.invert(r),i=t.brush,a=YNe(t,r),o=a.interval,s=i.svgBrush;if(s.wasDragged=!1,s.grabbingBar=a.region==="ns",s.grabbingBar){var l=o.map(t.unitToPaddedPx);s.grabPoint=r-l[0]-bh.verticalPadding,s.barLength=l[1]-l[0]}s.clickableOrdinalRange=a.clickableOrdinalRange,s.stayingIntervals=t.multiselect&&i.filterSpecified?i.filter.getConsolidated():[],o&&(s.stayingIntervals=s.stayingIntervals.filter(function(u){return u[0]!==o[0]&&u[1]!==o[1]})),s.startExtent=a.region?o[a.region==="s"?1:0]:n,t.parent.inBrushDrag=!0,s.brushStartCallback()}function KNe(e,t){tm.event.sourceEvent.stopPropagation();var r=t.height-tm.mouse(e)[1]-2*bh.verticalPadding,n=t.brush.svgBrush;n.wasDragged=!0,n._dragging=!0,n.grabbingBar?n.newExtent=[r-n.grabPoint,r+n.barLength-n.grabPoint].map(t.unitToPaddedPx.invert):n.newExtent=[n.startExtent,t.unitToPaddedPx.invert(r)].sort(x5),t.brush.filterSpecified=!0,n.extent=n.stayingIntervals.concat([n.newExtent]),n.brushCallback(t),Oz(e.parentNode)}function KVt(e,t){var r=t.brush,n=r.filter,i=r.svgBrush;i._dragging||(JNe(e,t),KNe(e,t),t.brush.svgBrush.wasDragged=!1),i._dragging=!1;var a=tm.event;a.sourceEvent.stopPropagation();var o=i.grabbingBar;if(i.grabbingBar=!1,i.grabLocation=void 0,t.parent.inBrushDrag=!1,ZNe(),!i.wasDragged){i.wasDragged=void 0,i.clickableOrdinalRange?r.filterSpecified&&t.multiselect?i.extent.push(i.clickableOrdinalRange):(i.extent=[i.clickableOrdinalRange],r.filterSpecified=!0):o?(i.extent=i.stayingIntervals,i.extent.length===0&&SK(r)):SK(r),i.brushCallback(t),Oz(e.parentNode),i.brushEndCallback(r.filterSpecified?n.getConsolidated():[]);return}var s=function(){n.set(n.getConsolidated())};if(t.ordinal){var l=t.unitTickvals;l[l.length-1]<l[0]&&l.reverse(),i.newExtent=[qz(0,l,i.newExtent[0],i.stayingIntervals),qz(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||SK(r),i.brushCallback(t),u?Oz(e.parentNode,s):(s(),Oz(e.parentNode))}else s();i.brushEndCallback(r.filterSpecified?n.getConsolidated():[])}function JNe(e,t){var r=t.height-tm.mouse(e)[1]-2*bh.verticalPadding,n=YNe(t,r),i="crosshair";n.clickableOrdinalRange?i="pointer":n.region&&(i=n.region+"-resize"),tm.select(document.body).style("cursor",i)}function JVt(e){e.on("mousemove",function(t){tm.event.preventDefault(),t.parent.inBrushDrag||JNe(this,t)}).on("mouseleave",function(t){t.parent.inBrushDrag||ZNe()}).call(tm.behavior.drag().on("dragstart",function(t){YVt(this,t)}).on("drag",function(t){KNe(this,t)}).on("dragend",function(t){KVt(this,t)}))}function $Ne(e,t){return e[0]-t[0]}function $Vt(e,t,r){var n=r._context.staticPlot,i=e.selectAll(".background").data(zz);i.enter().append("rect").classed("background",!0).call(jVt).call(WVt).style("pointer-events",n?"none":"auto").attr("transform",VVt(0,bh.verticalPadding)),i.call(JVt).attr("height",function(s){return s.height-bh.verticalPadding});var a=e.selectAll(".highlight-shadow").data(zz);a.enter().append("line").classed("highlight-shadow",!0).attr("x",-bh.bar.width/2).attr("stroke-width",bh.bar.width+bh.bar.strokeWidth).attr("stroke",t).attr("opacity",bh.bar.strokeOpacity).attr("stroke-linecap","butt"),a.attr("y1",function(s){return s.height}).call(MK);var o=e.selectAll(".highlight").data(zz);o.enter().append("line").classed("highlight",!0).attr("x",-bh.bar.width/2).attr("stroke-width",bh.bar.width-bh.bar.strokeWidth).attr("stroke",bh.bar.fillColor).attr("opacity",bh.bar.fillOpacity).attr("stroke-linecap","butt"),o.attr("y1",function(s){return s.height}).call(MK)}function QVt(e,t,r){var n=e.selectAll("."+bh.cn.axisBrush).data(zz,UVt);n.enter().append("g").classed(bh.cn.axisBrush,!0),$Vt(n,t,r)}function eGt(e){return e.svgBrush.extent.map(function(t){return t.slice()})}function SK(e){e.filterSpecified=!1,e.svgBrush.extent=[[-1/0,1/0]]}function tGt(e){return function(r){var n=r.brush,i=eGt(n),a=i.slice();n.filter.set(a),e()}}function QNe(e){for(var t=e.slice(),r=[],n,i=t.shift();i;){for(n=i.slice();(i=t.shift())&&i[0]<=n[1];)n[1]=Math.max(n[1],i[1]);r.push(n)}return r.length===1&&r[0][0]>r[0][1]&&(r=[]),r}function rGt(){var e=[],t,r;return{set:function(n){e=n.map(function(i){return i.slice().sort(x5)}).sort($Ne),e.length===1&&e[0][0]===-1/0&&e[0][1]===1/0&&(e=[[0,-1]]),t=QNe(e),r=e.reduce(function(i,a){return[Math.min(i[0],a[0]),Math.max(i[1],a[1])]},[1/0,-1/0])},get:function(){return e.slice()},getConsolidated:function(){return t},getBounds:function(){return r}}}function iGt(e,t,r,n,i,a){var o=rGt();return o.set(r),{filter:o,filterSpecified:t,svgBrush:{extent:[],brushStartCallback:n,brushCallback:tGt(i),brushEndCallback:a}}}function nGt(e,t){if(Array.isArray(e[0])?(e=e.map(function(n){return n.sort(x5)}),t.multiselect?e=QNe(e.sort($Ne)):e=[e[0]]):e=[e.sort(x5)],t.tickvals){var r=t.tickvals.slice().sort(x5);if(e=e.map(function(n){var i=[qz(0,r,n[0],[]),qz(1,r,n[1],[])];if(i[1]>i[0])return i}).filter(function(n){return n}),!e.length)return}return e.length>1?e:e[0]}eUe.exports={makeBrush:iGt,ensureAxisBrush:QVt,cleanRanges:nGt}});var iUe=ye((O_r,rUe)=>{"use strict";var mx=Dr(),aGt=pv().hasColorscale,oGt=Qh(),sGt=Cc().defaults,lGt=Yd(),uGt=ho(),tUe=AK(),cGt=EK(),kK=Pk().maxDimensionCount,fGt=kz();function hGt(e,t,r,n,i){var a=i("line.color",r);if(aGt(e,"line")&&mx.isArrayOrTypedArray(a)){if(a.length)return i("line.colorscale"),oGt(e,t,n,i,{prefix:"line.",cLetter:"c"}),a.length;t.line.color=r}return 1/0}function dGt(e,t,r,n){function i(u,c){return mx.coerce(e,t,tUe.dimensions,u,c)}var a=i("values"),o=i("visible");if(a&&a.length||(o=t.visible=!1),o){i("label"),i("tickvals"),i("ticktext"),i("tickformat");var s=i("range");t._ax={_id:"y",type:"linear",showexponent:"all",exponentformat:"B",range:s},uGt.setConvert(t._ax,n.layout),i("multiselect");var l=i("constraintrange");l&&(t.constraintrange=cGt.cleanRanges(l,t))}}rUe.exports=function(t,r,n,i){function a(c,f){return mx.coerce(t,r,tUe,c,f)}var o=t.dimensions;Array.isArray(o)&&o.length>kK&&(mx.log("parcoords traces support up to "+kK+" dimensions at the moment"),o.splice(kK));var s=lGt(t,r,{name:"dimensions",layout:i,handleItemDefaults:dGt}),l=hGt(t,r,n,i,a);sGt(r,i,a),(!Array.isArray(s)||!s.length)&&(r.visible=!1),fGt(r,s,"values",l);var u=mx.extendFlat({},i.font,{size:Math.round(i.font.size/1.2)});mx.coerceFont(a,"labelfont",u),mx.coerceFont(a,"tickfont",u,{autoShadowDflt:!0}),mx.coerceFont(a,"rangefont",u),a("labelangle"),a("labelside"),a("unselected.line.color"),a("unselected.line.opacity")}});var aUe=ye((q_r,nUe)=>{"use strict";var vGt=Dr().isArrayOrTypedArray,CK=tc(),pGt=Jm().wrap;nUe.exports=function(t,r){var n,i;return CK.hasColorscale(r,"line")&&vGt(r.line.color)?(n=r.line.color,i=CK.extractOpts(r.line).colorscale,CK.calc(t,r,{vals:n,containerStr:"line",cLetter:"c"})):(n=gGt(r._length),i=[[0,r.line.color],[1,r.line.color]]),pGt({lineColor:n,cscale:i})};function gGt(e){for(var t=new Array(e),r=0;r<e;r++)t[r]=.5;return t}});function mGt(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(),LK.default[e])r=LK.default[e].slice(),i="rgb";else if(e==="transparent")n=0,i="rgb",r=[0,0,0];else if(e[0]==="#"){var a=e.slice(1),o=a.length,s=o<=4;n=1,s?(r=[parseInt(a[0]+a[0],16),parseInt(a[1]+a[1],16),parseInt(a[2]+a[2],16)],o===4&&(n=parseInt(a[3]+a[3],16)/255)):(r=[parseInt(a[0]+a[1],16),parseInt(a[2]+a[3],16),parseInt(a[4]+a[5],16)],o===8&&(n=parseInt(a[6]+a[7],16)/255)),r[0]||(r[0]=0),r[1]||(r[1]=0),r[2]||(r[2]=0),i="rgb"}else if(t=/^((?:rgba?|hs[lvb]a?|hwba?|cmyk?|xy[zy]|gray|lab|lchu?v?|[ly]uv|lms|oklch|oklab|color))\s*\(([^\)]*)\)/.exec(e)){var l=t[1];i=l.replace(/a$/,"");var u=i==="cmyk"?4:i==="gray"?1:3;r=t[2].trim().split(/\s*[,\/]\s*|\s+/),i==="color"&&(i=r.shift()),r=r.map(function(h,d){if(h[h.length-1]==="%")return h=parseFloat(h)/100,d===3?h:i==="rgb"?h*255:i[0]==="h"||i[0]==="l"&&!d?h*100:i==="lab"?h*125:i==="lch"?d<2?h*150:h*360:i[0]==="o"&&!d?h:i==="oklab"?h*.4:i==="oklch"?d<2?h*.4:h*360:h;if(i[d]==="h"||d===2&&i[i.length-1]==="h"){if(oUe[h]!==void 0)return oUe[h];if(h.endsWith("deg"))return parseFloat(h);if(h.endsWith("turn"))return parseFloat(h)*360;if(h.endsWith("grad"))return parseFloat(h)*360/400;if(h.endsWith("rad"))return parseFloat(h)*180/Math.PI}return h==="none"?0:parseFloat(h)}),n=r.length>u?r.pop():1}else/[0-9](?:\s|\/|,)/.test(e)&&(r=e.match(/([0-9]+)/g).map(function(h){return parseFloat(h)}),i=((f=(c=e.match(/([a-z])/ig))==null?void 0:c.join(""))==null?void 0:f.toLowerCase())||"rgb");return{space:i,values:r,alpha:n}}var LK,sUe,oUe,lUe=gu(()=>{LK=gtt(gX(),1),sUe=mGt,oUe={red:0,orange:60,yellow:120,green:180,blue:240,purple:300}});var Ik,PK=gu(()=>{Ik={name:"rgb",min:[0,0,0],max:[255,255,255],channel:["red","green","blue"],alias:["RGB"]}});var Bz,uUe=gu(()=>{PK();Bz={name:"hsl",min:[0,0,0],max:[360,100,100],channel:["hue","saturation","lightness"],alias:["HSL"],rgb:function(e){var t=e[0]/360,r=e[1]/100,n=e[2]/100,i,a,o,s,l,u=0;if(r===0)return l=n*255,[l,l,l];for(a=n<.5?n*(1+r):n+r-n*r,i=2*n-a,s=[0,0,0];u<3;)o=t+1/3*-(u-1),o<0?o++:o>1&&o--,l=6*o<1?i+(a-i)*6*o:2*o<1?a:3*o<2?i+(a-i)*(2/3-o)*6:i,s[u++]=l*255;return s}};Ik.hsl=function(e){var t=e[0]/255,r=e[1]/255,n=e[2]/255,i=Math.min(t,r,n),a=Math.max(t,r,n),o=a-i,s,l,u;return a===i?s=0:t===a?s=(r-n)/o:r===a?s=2+(n-t)/o:n===a&&(s=4+(t-r)/o),s=Math.min(s*60,360),s<0&&(s+=360),u=(i+a)/2,a===i?l=0:u<=.5?l=o/(a+i):l=o/(2-a-i),[s,l*100,u*100]}});var fUe={};cee(fUe,{default:()=>cUe});function cUe(e){Array.isArray(e)&&e.raw&&(e=String.raw(...arguments)),e instanceof Number&&(e=+e);var t,r,n,i=sUe(e);if(!i.space)return[];let a=i.space[0]==="h"?Bz.min:Ik.min,o=i.space[0]==="h"?Bz.max:Ik.max;return t=Array(3),t[0]=Math.min(Math.max(i.values[0],a[0]),o[0]),t[1]=Math.min(Math.max(i.values[1],a[1]),o[1]),t[2]=Math.min(Math.max(i.values[2],a[2]),o[2]),i.space[0]==="h"&&(t=Bz.rgb(t)),t.push(Math.min(Math.max(i.alpha,0),1)),t}var hUe=gu(()=>{lUe();PK();uUe()});var IK=ye(Nz=>{"use strict";var yGt=Dr().isTypedArray;Nz.convertTypedArray=function(e){return yGt(e)?Array.prototype.slice.call(e):e};Nz.isOrdinal=function(e){return!!e.tickvals};Nz.isVisible=function(e){return e.visible||!("visible"in e)}});var wUe=ye((X_r,bUe)=>{"use strict";var _Gt=["precision highp float;","","varying vec4 fragColor;","","attribute vec4 p01_04, p05_08, p09_12, p13_16,"," p17_20, p21_24, p25_28, p29_32,"," p33_36, p37_40, p41_44, p45_48,"," p49_52, p53_56, p57_60, colors;","","uniform mat4 dim0A, dim1A, dim0B, dim1B, dim0C, dim1C, dim0D, dim1D,"," loA, hiA, loB, hiB, loC, hiC, loD, hiD;","","uniform vec2 resolution, viewBoxPos, viewBoxSize;","uniform float maskHeight;","uniform float drwLayer; // 0: context, 1: focus, 2: pick","uniform vec4 contextColor;","uniform sampler2D maskTexture, palette;","","bool isPick = (drwLayer > 1.5);","bool isContext = (drwLayer < 0.5);","","const vec4 ZEROS = vec4(0.0, 0.0, 0.0, 0.0);","const vec4 UNITS = vec4(1.0, 1.0, 1.0, 1.0);","","float val(mat4 p, mat4 v) {"," return dot(matrixCompMult(p, v) * UNITS, UNITS);","}","","float axisY(float ratio, mat4 A, mat4 B, mat4 C, mat4 D) {"," float y1 = val(A, dim0A) + val(B, dim0B) + val(C, dim0C) + val(D, dim0D);"," float y2 = val(A, dim1A) + val(B, dim1B) + val(C, dim1C) + val(D, dim1D);"," return y1 * (1.0 - ratio) + y2 * ratio;","}","","int iMod(int a, int b) {"," return a - b * (a / b);","}","","bool fOutside(float p, float lo, float hi) {"," return (lo < hi) && (lo > p || p > hi);","}","","bool vOutside(vec4 p, vec4 lo, vec4 hi) {"," return ("," fOutside(p[0], lo[0], hi[0]) ||"," fOutside(p[1], lo[1], hi[1]) ||"," fOutside(p[2], lo[2], hi[2]) ||"," fOutside(p[3], lo[3], hi[3])"," );","}","","bool mOutside(mat4 p, mat4 lo, mat4 hi) {"," return ("," vOutside(p[0], lo[0], hi[0]) ||"," vOutside(p[1], lo[1], hi[1]) ||"," vOutside(p[2], lo[2], hi[2]) ||"," vOutside(p[3], lo[3], hi[3])"," );","}","","bool outsideBoundingBox(mat4 A, mat4 B, mat4 C, mat4 D) {"," return mOutside(A, loA, hiA) ||"," mOutside(B, loB, hiB) ||"," mOutside(C, loC, hiC) ||"," mOutside(D, loD, hiD);","}","","bool outsideRasterMask(mat4 A, mat4 B, mat4 C, mat4 D) {"," mat4 pnts[4];"," pnts[0] = A;"," pnts[1] = B;"," pnts[2] = C;"," pnts[3] = D;",""," for(int i = 0; i < 4; ++i) {"," for(int j = 0; j < 4; ++j) {"," for(int k = 0; k < 4; ++k) {"," if(0 == iMod("," int(255.0 * texture2D(maskTexture,"," vec2("," (float(i * 2 + j / 2) + 0.5) / 8.0,"," (pnts[i][j][k] * (maskHeight - 1.0) + 1.0) / maskHeight"," ))[3]"," ) / int(pow(2.0, float(iMod(j * 4 + k, 8)))),"," 2"," )) return true;"," }"," }"," }"," return false;","}","","vec4 position(bool isContext, float v, mat4 A, mat4 B, mat4 C, mat4 D) {"," float x = 0.5 * sign(v) + 0.5;"," float y = axisY(x, A, B, C, D);"," float z = 1.0 - abs(v);",""," z += isContext ? 0.0 : 2.0 * float("," outsideBoundingBox(A, B, C, D) ||"," outsideRasterMask(A, B, C, D)"," );",""," return vec4("," 2.0 * (vec2(x, y) * viewBoxSize + viewBoxPos) / resolution - 1.0,"," z,"," 1.0"," );","}","","void main() {"," mat4 A = mat4(p01_04, p05_08, p09_12, p13_16);"," mat4 B = mat4(p17_20, p21_24, p25_28, p29_32);"," mat4 C = mat4(p33_36, p37_40, p41_44, p45_48);"," mat4 D = mat4(p49_52, p53_56, p57_60, ZEROS);",""," float v = colors[3];",""," gl_Position = position(isContext, v, A, B, C, D);",""," fragColor ="," isContext ? vec4(contextColor) :"," isPick ? vec4(colors.rgb, 1.0) : texture2D(palette, vec2(abs(v), 0.5));","}"].join(`
`),xGt=["precision highp float;","","varying vec4 fragColor;","","void main() {"," gl_FragColor = fragColor;","}"].join(`
`),Rk=Pk().maxDimensionCount,yUe=Dr(),dUe=1e-6,Uz=2048,bGt=new Uint8Array(4),vUe=new Uint8Array(4),pUe={shape:[256,1],format:"rgba",type:"uint8",mag:"nearest",min:"nearest"};function wGt(e){e.read({x:0,y:0,width:1,height:1,data:bGt})}function _Ue(e,t,r,n,i){var a=e._gl;a.enable(a.SCISSOR_TEST),a.scissor(t,r,n,i),e.clear({color:[0,0,0,0],depth:1})}function TGt(e,t,r,n,i,a){var o=a.key;function s(l){var u=Math.min(n,i-l*n);l===0&&(window.cancelAnimationFrame(r.currentRafs[o]),delete r.currentRafs[o],_Ue(e,a.scissorX,a.scissorY,a.scissorWidth,a.viewBoxSize[1])),!r.clearOnly&&(a.count=2*u,a.offset=2*l*n,t(a),l*n+u<i&&(r.currentRafs[o]=window.requestAnimationFrame(function(){s(l+1)})),r.drawCompleted=!1)}r.drawCompleted||(wGt(e),r.drawCompleted=!0),s(0)}function AGt(e){return Math.max(dUe,Math.min(1-dUe,e))}function SGt(e,t){for(var r=new Array(256),n=0;n<256;n++)r[n]=e(n/255).concat(t);return r}function RK(e,t){return(e>>>8*t)%256/255}function MGt(e,t,r){for(var n=new Array(e*(Rk+4)),i=0,a=0;a<e;a++){for(var o=0;o<Rk;o++)n[i++]=o<t.length?t[o].paddedUnitValues[a]:.5;n[i++]=RK(a,2),n[i++]=RK(a,1),n[i++]=RK(a,0),n[i++]=AGt(r[a])}return n}function EGt(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 gUe(e){var t="0"+e;return t.slice(-2)}function xUe(e){return e<Rk?"p"+gUe(e+1)+"_"+gUe(e+4):"colors"}function kGt(e,t,r){for(var n=0;n<=Rk;n+=4)e[xUe(n)](EGt(n/4,t,r))}function CGt(e){for(var t={},r=0;r<=Rk;r+=4)t[xUe(r)]=e.buffer({usage:"dynamic",type:"float",data:new Uint8Array(0)});return t}function LGt(e,t,r,n,i,a,o,s,l,u,c,f,h,d){for(var v=[[],[]],_=0;_<64;_++)v[0][_]=_===i?1:0,v[1][_]=_===a?1:0;o*=d,s*=d,l*=d,u*=d;var b=e.lines.canvasOverdrag*d,p=e.domain,k=e.canvasWidth*d,E=e.canvasHeight*d,S=e.pad.l*d,L=e.pad.b*d,x=e.layoutHeight*d,C=e.layoutWidth*d,M=e.deselectedLines.color,g=e.deselectedLines.opacity,P=yUe.extendFlat({key:c,resolution:[k,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)+(S-b)+C*p.x[0],scissorWidth:(n===r?k-o+b:l+.5)+(n===t?o+b:0),scissorY:s+L+x*p.y[0],scissorHeight:u,viewportX:S-b+C*p.x[0],viewportY:L+x*p.y[0],viewportWidth:k,viewportHeight:E},h);return P}function mUe(e){var t=Uz-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)]}bUe.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=CGt(i),v,_=i.texture(pUe),b=[];k(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:_Gt,frag:xGt,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:_,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 k(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=MGt(h,f,P);kGt(d,h,T),!r&&!n&&(_=i.texture(yUe.extendFlat({data:SGt(u.unitToColor,255)},pUe)))}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=Uz*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,j=(g-Z)/8,N=Math.pow(2,Z),H=f[g],te=H.brush.filter.get();if(!(te.length<2)){var oe=mUe(te[0])[1];for(P=1;P<te.length;P++){var _e=mUe(te[P]);for(T=oe+1;T<_e[0];T++)G[T*8+j]&=~N;oe=Math.max(oe,_e[1])}}}var Ee={shape:[8,Uz],format:"alpha",type:"uint8",mag:"nearest",min:"nearest",data:G};return v?v(Ee):v=i.texture(Ee),{maskTexture:v,maskHeight:Uz,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 S(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&&_Ue(i,0,0,u.canvasWidth,u.canvasHeight);var j=E(r);for(z=0;z<T;z++){var N=M[z],H=N.dim0.crossfilterDimensionIndex,te=N.dim1.crossfilterDimensionIndex,oe=N.canvasX,_e=N.canvasY,Ee=oe+N.panelSizeX,Ce=N.plotGlPixelRatio;if(g||!b[H]||b[H][0]!==oe||b[H][1]!==Ee){b[H]=[oe,Ee];var me=LGt(u,O,V,z,H,te,oe,_e,N.panelSizeX,N.panelSizeY,N.dim0.crossfilterDimensionIndex,r?0:n?2:1,j,Ce);l.clearOnly=P;var ie=g?u.lines.blockLineCount:h;TGt(i,p,l,ie,h,me)}}}function L(M,g){return i.read({x:M,y:g,width:1,height:1,data:vUe}),vUe}function x(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 C(){e.style["pointer-events"]="none",_.destroy(),v&&v.destroy();for(var M in d)d[M].destroy()}return{render:S,readPixel:L,readPixels:x,destroy:C,update:k}}});var zUe=ye((Z_r,FUe)=>{"use strict";var Bd=Oa(),l1=Dr(),DK=l1.isArrayOrTypedArray,kUe=l1.numberFormat,CUe=(hUe(),ob(fUe)).default,LUe=ho(),PGt=l1.strRotate,$m=l1.strTranslate,IGt=ru(),Vz=So(),TUe=tc(),OK=Jm(),tg=OK.keyFun,Qm=OK.repeat,PUe=OK.unwrap,b5=IK(),Dl=Pk(),IUe=EK(),RGt=wUe();function AUe(e,t,r){return l1.aggNums(e,null,t,r)}function RUe(e,t){return qK(AUe(Math.min,e,t),AUe(Math.max,e,t))}function Gz(e){var t=e.range;return t?qK(t[0],t[1]):RUe(e.values,e._length)}function qK(e,t){return(isNaN(e)||!isFinite(e))&&(e=0),(isNaN(t)||!isFinite(t))&&(t=0),e===t&&(e===0?(e-=1,t+=1):(e*=.9,t*=1.1)),[e,t]}function DGt(e,t){return t?function(r,n){var i=t[n];return i==null?e(r):i}:e}function FGt(e,t,r,n,i){var a=Gz(r);return n?Bd.scale.ordinal().domain(n.map(DGt(kUe(r.tickformat),i))).range(n.map(function(o){var s=(o-a[0])/(a[1]-a[0]);return e-t+s*(2*t-e)})):Bd.scale.linear().domain(a).range([e-t,t])}function zGt(e,t){return Bd.scale.linear().range([t,e-t])}function OGt(e,t){return Bd.scale.linear().domain(Gz(e)).range([t,1-t])}function qGt(e){if(e.tickvals){var t=Gz(e);return Bd.scale.ordinal().domain(e.tickvals).range(e.tickvals.map(function(r){return(r-t[0])/(t[1]-t[0])}))}}function BGt(e){var t=e.map(function(a){return a[0]}),r=e.map(function(a){var o=CUe(a[1]);return Bd.rgb("rgb("+o[0]+","+o[1]+","+o[2]+")")}),n=function(a){return function(o){return o[a]}},i="rgb".split("").map(function(a){return Bd.scale.linear().clamp(!0).domain(t).range(r.map(n(a)))});return function(a){return i.map(function(o){return o(a)})}}function zK(e){return e.dimensions.some(function(t){return t.brush.filterSpecified})}function NGt(e,t,r){var n=PUe(t),i=n.trace,a=b5.convertTypedArray(n.lineColor),o=i.line,s={color:CUe(i.unselected.line.color),opacity:i.unselected.line.opacity},l=TUe.extractOpts(o),u=l.reversescale?TUe.flipScale(n.cscale):n.cscale,c=i.domain,f=i.dimensions,h=e.width,d=i.labelangle,v=i.labelside,_=i.labelfont,b=i.tickfont,p=i.rangefont,k=l1.extendDeepNoArrays({},o,{color:a.map(Bd.scale.linear().domain(Gz({values:a,range:[l.min,l.max],_length:i._length}))),blockLineCount:Dl.blockLineCount,canvasOverdrag:Dl.overdrag*Dl.canvasPixelRatio}),E=Math.floor(h*(c.x[1]-c.x[0])),S=Math.floor(e.height*(c.y[1]-c.y[0])),L=e.margin||{l:80,r:80,t:100,b:80},x=E,C=S;return{key:r,colCount:f.filter(b5.isVisible).length,dimensions:f,tickDistance:Dl.tickDistance,unitToColor:BGt(u),lines:k,deselectedLines:s,labelAngle:d,labelSide:v,labelFont:_,tickFont:b,rangeFont:p,layoutWidth:h,layoutHeight:e.height,domain:c,translateX:c.x[0]*h,translateY:e.height-c.y[1]*e.height,pad:L,canvasWidth:x*Dl.canvasPixelRatio+2*k.canvasOverdrag,canvasHeight:C*Dl.canvasPixelRatio,width:x,height:C,canvasPixelRatio:Dl.canvasPixelRatio}}function UGt(e,t,r){var n=r.width,i=r.height,a=r.dimensions,o=r.canvasPixelRatio,s=function(h){return n*h/Math.max(1,r.colCount-1)},l=Dl.verticalPadding/i,u=zGt(i,Dl.verticalPadding),c={key:r.key,xScale:s,model:r,inBrushDrag:!1},f={};return c.dimensions=a.filter(b5.isVisible).map(function(h,d){var v=OGt(h,l),_=f[h.label];f[h.label]=(_||0)+1;var b=h.label+(_?"__"+_:""),p=h.constraintrange,k=p&&p.length;k&&!DK(p[0])&&(p=[p]);var E=k?p.map(function(O){return O.map(v)}):[[-1/0,1/0]],S=function(){var O=c;O.focusLayer&&O.focusLayer.render(O.panels,!0);var V=zK(O);!e.contextShown()&&V?(O.contextLayer&&O.contextLayer.render(O.panels,!0),e.contextShown(!0)):e.contextShown()&&!V&&(O.contextLayer&&O.contextLayer.render(O.panels,!0,!0),e.contextShown(!1))},L=h.values;L.length>h._length&&(L=L.slice(0,h._length));var x=h.tickvals,C;function M(O,V){return{val:O,text:C[V]}}function g(O,V){return O.val-V.val}if(DK(x)&&x.length){l1.isTypedArray(x)&&(x=Array.from(x)),C=h.ticktext,!DK(C)||!C.length?C=x.map(kUe(h.tickformat)):C.length>x.length?C=C.slice(0,x.length):x.length>C.length&&(x=x.slice(0,C.length));for(var P=1;P<x.length;P++)if(x[P]<x[P-1]){for(var T=x.map(M).sort(g),z=0;z<x.length;z++)x[z]=T[z].val,C[z]=T[z].text;break}}else x=void 0;return L=b5.convertTypedArray(L),{key:b,label:h.label,tickFormat:h.tickformat,tickvals:x,ticktext:C,ordinal:b5.isOrdinal(h),multiselect:h.multiselect,xIndex:d,crossfilterDimensionIndex:d,visibleIndex:h._index,height:i,values:L,paddedUnitValues:L.map(v),unitTickvals:x&&x.map(v),xScale:s,x:s(d),canvasX:s(d)*o,unitToPaddedPx:u,domainScale:FGt(i,Dl.verticalPadding,h,x,C),ordinalScale:qGt(h),parent:c,model:r,brush:IUe.makeBrush(e,k,E,function(){e.linePickActive(!1)},S,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,j){return Z[0]-j[0]});t.filterChanged(c.key,h._index,G)}})}}),c}function SUe(e){e.classed(Dl.cn.axisExtentText,!0).attr("text-anchor","middle").style("cursor","default")}function VGt(){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 MUe(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 FK(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 GGt(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=qK(s.range[0],s.range[1]):s.range=RUe(o,n._length),s.dtick||(s.dtick=.01*(Math.abs(s.range[1]-s.range[0])||1)),s.tickformat=i[a].tickformat,LUe.calcTicks(s),s.cleanRange())}}function DUe(e,t){return LUe.tickText(e._ax,t,!1).text}function EUe(e,t){if(e.ordinal)return"";var r=e.domainScale.domain(),n=r[t?r.length-1:0];return DUe(e.model.dimensions[e.visibleIndex],n)}FUe.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;GGt(r);var f=VGt(),h=r.filter(function(z){return PUe(z).trace.visible}).map(NGt.bind(0,n)).map(UGt.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,_=d.filter(function(z){return z.pick});_.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),j=Z[0],N=Z[1];if(j<0||N<0||j>=V||N>=G)return;var H=z.lineLayer.readPixel(j,G-1-N),te=H[3]!==0,oe=te?H[2]+256*(H[1]+256*H[0]):null,_e={x:j,y:N,clientX:O.clientX,clientY:O.clientY,dataIndex:z.model.key,curveNumber:oe};oe!==v&&(te?i.hover(_e):i.unhover&&i.unhover(_e),v=oe)}}),d.style("opacity",function(z){return z.pick?0:1}),s.style("background","rgba(255, 255, 255, 0)");var b=s.selectAll("."+Dl.cn.parcoords).data(h,tg);b.exit().remove(),b.enter().append("g").classed(Dl.cn.parcoords,!0).style("shape-rendering","crispEdges").style("pointer-events","none"),b.attr("transform",function(z){return $m(z.model.translateX,z.model.translateY)});var p=b.selectAll("."+Dl.cn.parcoordsControlView).data(Qm,tg);p.enter().append("g").classed(Dl.cn.parcoordsControlView,!0),p.attr("transform",function(z){return $m(z.model.pad.l,z.model.pad.t)});var k=p.selectAll("."+Dl.cn.yAxis).data(function(z){return z.dimensions},tg);k.enter().append("g").classed(Dl.cn.yAxis,!0),p.each(function(z){FK(k,z,u)}),d.each(function(z){if(z.viewModel){!z.lineLayer||i?z.lineLayer=RGt(this,z):z.lineLayer.update(z),(z.key||z.key===0)&&(z.viewModel[z.key]=z.lineLayer);var O=!z.context||i;z.lineLayer.render(z.viewModel.panels,O)}}),k.attr("transform",function(z){return $m(z.xScale(z.xIndex),0)}),k.call(Bd.behavior.drag().origin(function(z){return z}).on("drag",function(z){var O=z.parent;f.linePickActive(!1),z.x=Math.max(-Dl.overdrag,Math.min(z.model.width+Dl.overdrag,Bd.event.x)),z.canvasX=z.x*z.model.canvasPixelRatio,k.sort(function(V,G){return V.x-G.x}).each(function(V,G){V.xIndex=G,V.x=z===V?V.x:V.xScale(V.xIndex),V.canvasX=V.x*V.model.canvasPixelRatio}),FK(k,O,u),k.filter(function(V){return Math.abs(z.xIndex-V.xIndex)!==0}).attr("transform",function(V){return $m(V.xScale(V.xIndex),0)}),Bd.select(this).attr("transform",$m(z.x,0)),k.each(function(V,G,Z){Z===z.parent.key&&(O.dimensions[G]=V)}),O.contextLayer&&O.contextLayer.render(O.panels,!1,!zK(O)),O.focusLayer.render&&O.focusLayer.render(O.panels)}).on("dragend",function(z){var O=z.parent;z.x=z.xScale(z.xIndex),z.canvasX=z.x*z.model.canvasPixelRatio,FK(k,O,u),Bd.select(this).attr("transform",function(V){return $m(V.x,0)}),O.contextLayer&&O.contextLayer.render(O.panels,!1,!zK(O)),O.focusLayer&&O.focusLayer.render(O.panels),O.pickLayer&&O.pickLayer.render(O.panels,!0),f.linePickActive(!0),i&&i.axesMoved&&i.axesMoved(O.key,O.dimensions.map(function(V){return V.crossfilterDimensionIndex}))})),k.exit().remove();var E=k.selectAll("."+Dl.cn.axisOverlays).data(Qm,tg);E.enter().append("g").classed(Dl.cn.axisOverlays,!0),E.selectAll("."+Dl.cn.axis).remove();var S=E.selectAll("."+Dl.cn.axis).data(Qm,tg);S.enter().append("g").classed(Dl.cn.axis,!0),S.each(function(z){var O=z.model.height/z.model.tickDistance,V=z.domainScale,G=V.domain();Bd.select(this).call(Bd.svg.axis().orient("left").tickSize(4).outerTickSize(2).ticks(O,z.tickFormat).tickValues(z.ordinal?G:null).tickFormat(function(Z){return b5.isOrdinal(z)?Z:DUe(z.model.dimensions[z.visibleIndex],Z)}).scale(V)),Vz.font(S.selectAll("text"),z.model.tickFont)}),S.selectAll(".domain, .tick>line").attr("fill","none").attr("stroke","black").attr("stroke-opacity",.25).attr("stroke-width","1px"),S.selectAll("text").style("cursor","default");var L=E.selectAll("."+Dl.cn.axisHeading).data(Qm,tg);L.enter().append("g").classed(Dl.cn.axisHeading,!0);var x=L.selectAll("."+Dl.cn.axisTitle).data(Qm,tg);x.enter().append("text").classed(Dl.cn.axisTitle,!0).attr("text-anchor","middle").style("cursor","ew-resize").style("pointer-events",a?"none":"auto"),x.text(function(z){return z.label}).each(function(z){var O=Bd.select(this);Vz.font(O,z.model.labelFont),IGt.convertToTspans(O,t)}).attr("transform",function(z){var O=MUe(z.model.labelAngle,z.model.labelSide),V=Dl.axisTitleOffset;return(O.dir>0?"":$m(0,2*V+z.model.height))+PGt(O.degrees)+$m(-V*O.dx,-V*O.dy)}).attr("text-anchor",function(z){var O=MUe(z.model.labelAngle,z.model.labelSide),V=Math.abs(O.dx),G=Math.abs(O.dy);return 2*V>G?O.dir*O.dx<0?"start":"end":"middle"});var C=E.selectAll("."+Dl.cn.axisExtent).data(Qm,tg);C.enter().append("g").classed(Dl.cn.axisExtent,!0);var M=C.selectAll("."+Dl.cn.axisExtentTop).data(Qm,tg);M.enter().append("g").classed(Dl.cn.axisExtentTop,!0),M.attr("transform",$m(0,-Dl.axisExtentOffset));var g=M.selectAll("."+Dl.cn.axisExtentTopText).data(Qm,tg);g.enter().append("text").classed(Dl.cn.axisExtentTopText,!0).call(SUe),g.text(function(z){return EUe(z,!0)}).each(function(z){Vz.font(Bd.select(this),z.model.rangeFont)});var P=C.selectAll("."+Dl.cn.axisExtentBottom).data(Qm,tg);P.enter().append("g").classed(Dl.cn.axisExtentBottom,!0),P.attr("transform",function(z){return $m(0,z.model.height+Dl.axisExtentOffset)});var T=P.selectAll("."+Dl.cn.axisExtentBottomText).data(Qm,tg);T.enter().append("text").classed(Dl.cn.axisExtentBottomText,!0).attr("dy","0.75em").call(SUe),T.text(function(z){return EUe(z,!1)}).each(function(z){Vz.font(Bd.select(this),z.model.rangeFont)}),IUe.ensureAxisBrush(E,c,t)}});var NK=ye((BK,NUe)=>{"use strict";var HGt=zUe(),jGt=Mz(),OUe=IK().isVisible,BUe={};function qUe(e,t,r){var n=t.indexOf(r),i=e.indexOf(n);return i===-1&&(i+=t.length),i}function WGt(e,t){return function(n,i){return qUe(e,t,n)-qUe(e,t,i)}}var BK=NUe.exports=function(t,r){var n=t._fullLayout,i=jGt(t,[],BUe);if(i){var a={},o={},s={},l={},u=n._size;r.forEach(function(v,_){var b=v[0].trace;s[_]=b.index;var p=l[_]=b.index;a[_]=t.data[p].dimensions,o[_]=t.data[p].dimensions.slice()});var c=function(v,_,b){var p=o[v][_],k=b.map(function(M){return M.slice()}),E="dimensions["+_+"].constraintrange",S=n._tracePreGUI[t._fullData[s[v]]._fullInput.uid];if(S[E]===void 0){var L=p.constraintrange;S[E]=L||null}var x=t._fullData[s[v]].dimensions[_];k.length?(k.length===1&&(k=k[0]),p.constraintrange=k,x.constraintrange=k.slice(),k=[k]):(delete p.constraintrange,delete x.constraintrange,k=null);var C={};C[E]=k,t.emit("plotly_restyle",[C,[l[v]]])},f=function(v){t.emit("plotly_hover",v)},h=function(v){t.emit("plotly_unhover",v)},d=function(v,_){var b=WGt(_,o[v].filter(OUe));a[v].sort(b),o[v].filter(function(p){return!OUe(p)}).sort(function(p){return o[v].indexOf(p)}).forEach(function(p){a[v].splice(a[v].indexOf(p),1),a[v].splice(o[v].indexOf(p),0,p)}),t.emit("plotly_restyle",[{dimensions:[a[v]]},[l[v]]])};HGt(t,r,{width:u.w,height:u.h,margin:{t:u.t,r:u.r,b:u.b,l:u.l}},{filterChanged:c,hover:f,unhover:h,axesMoved:d})}};BK.reglPrecompiled=BUe});var VUe=ye(Dk=>{"use strict";var UUe=Oa(),XGt=Id().getModuleCalcData,ZGt=NK(),YGt=Wp();Dk.name="parcoords";Dk.plot=function(e){var t=XGt(e.calcdata,"parcoords")[0];t.length&&ZGt(e,t)};Dk.clean=function(e,t,r,n){var i=n._has&&n._has("parcoords"),a=t._has&&t._has("parcoords");i&&!a&&(n._paperdiv.selectAll(".parcoords").remove(),n._glimages.selectAll("*").remove())};Dk.toSVG=function(e){var t=e._fullLayout._glimages,r=UUe.select(e).selectAll(".svg-container"),n=r.filter(function(a,o){return o===r.size()-1}).selectAll(".gl-canvas-context, .gl-canvas-focus");function i(){var a=this,o=a.toDataURL("image/png"),s=t.append("svg:image");s.attr({xmlns:YGt.svg,"xlink:href":o,preserveAspectRatio:"none",x:0,y:0,width:a.style.width,height:a.style.height})}n.each(i),window.setTimeout(function(){UUe.selectAll("#filterBarPattern").attr("id","filterBarPattern")},60)}});var HUe=ye((K_r,GUe)=>{"use strict";GUe.exports={attributes:AK(),supplyDefaults:iUe(),calc:aUe(),colorbar:{container:"line",min:"cmin",max:"cmax"},moduleType:"trace",name:"parcoords",basePlotModule:VUe(),categories:["gl","regl","noOpacity","noHover"],meta:{}}});var XUe=ye((J_r,WUe)=>{"use strict";var jUe=HUe();jUe.plot=NK();WUe.exports=jUe});var YUe=ye(($_r,ZUe)=>{"use strict";ZUe.exports=XUe()});var UK=ye((Q_r,eVe)=>{"use strict";var JUe=Ao().extendFlat,KGt=Gl(),KUe=ec(),JGt=Tu(),{hovertemplateAttrs:$Ue,templatefallbackAttrs:QUe}=Ll(),$Gt=Cc().attributes,QGt=JUe({editType:"calc"},JGt("line",{editTypeOverride:"calc"}),{shape:{valType:"enumerated",values:["linear","hspline"],dflt:"linear",editType:"plot"},hovertemplate:$Ue({editType:"plot",arrayOk:!1},{keys:["count","probability"]}),hovertemplatefallback:QUe({editType:"plot"})});eVe.exports={domain:$Gt({name:"parcats",trace:!0,editType:"calc"}),hoverinfo:JUe({},KGt.hoverinfo,{flags:["count","probability"],editType:"plot",arrayOk:!1}),hoveron:{valType:"enumerated",values:["category","color","dimension"],dflt:"category",editType:"plot"},hovertemplate:$Ue({editType:"plot",arrayOk:!1},{keys:["count","probability","category","categorycount","colorcount","bandcolorcount"]}),hovertemplatefallback:QUe({editType:"plot"}),arrangement:{valType:"enumerated",values:["perpendicular","freeform","fixed"],dflt:"perpendicular",editType:"plot"},bundlecolors:{valType:"boolean",dflt:!0,editType:"plot"},sortpaths:{valType:"enumerated",values:["forward","backward"],dflt:"forward",editType:"plot"},labelfont:KUe({editType:"calc"}),tickfont:KUe({autoShadowDflt:!0,editType:"calc"}),dimensions:{_isLinkedToArray:"dimension",label:{valType:"string",editType:"calc"},categoryorder:{valType:"enumerated",values:["trace","category ascending","category descending","array"],dflt:"trace",editType:"calc"},categoryarray:{valType:"data_array",editType:"calc"},ticktext:{valType:"data_array",editType:"calc"},values:{valType:"data_array",dflt:[],editType:"calc"},displayindex:{valType:"integer",editType:"calc"},editType:"calc",visible:{valType:"boolean",dflt:!0,editType:"calc"}},line:QGt,counts:{valType:"number",min:0,dflt:1,arrayOk:!0,editType:"calc"},customdata:void 0,hoverlabel:void 0,ids:void 0,legend:void 0,legendgroup:void 0,legendrank:void 0,opacity:void 0,selectedpoints:void 0,showlegend:void 0}});var iVe=ye((exr,rVe)=>{"use strict";var w5=Dr(),eHt=pv().hasColorscale,tHt=Qh(),rHt=Cc().defaults,iHt=Yd(),tVe=UK(),nHt=kz(),aHt=vv().isTypedArraySpec;function oHt(e,t,r,n,i){i("line.shape"),i("line.hovertemplate"),i("line.hovertemplatefallback");var a=i("line.color",n.colorway[0]);if(eHt(e,"line")&&w5.isArrayOrTypedArray(a)){if(a.length)return i("line.colorscale"),tHt(e,t,n,i,{prefix:"line.",cLetter:"c"}),a.length;t.line.color=r}return 1/0}function sHt(e,t){function r(u,c){return w5.coerce(e,t,tVe.dimensions,u,c)}var n=r("values"),i=r("visible");if(n&&n.length||(i=t.visible=!1),i){r("label"),r("displayindex",t._index);var a=e.categoryarray,o=w5.isArrayOrTypedArray(a)&&a.length>0||aHt(a),s;o&&(s="array");var l=r("categoryorder",s);l==="array"?(r("categoryarray"),r("ticktext")):(delete e.categoryarray,delete e.ticktext),!o&&l==="array"&&(t.categoryorder="trace")}}rVe.exports=function(t,r,n,i){function a(u,c){return w5.coerce(t,r,tVe,u,c)}var o=iHt(t,r,{name:"dimensions",handleItemDefaults:sHt}),s=oHt(t,r,n,i,a);rHt(r,i,a),(!Array.isArray(o)||!o.length)&&(r.visible=!1),nHt(r,o,"values",s),a("hoveron"),a("hovertemplate"),a("hovertemplatefallback"),a("arrangement"),a("bundlecolors"),a("sortpaths"),a("counts");var l=i.font;w5.coerceFont(a,"labelfont",l,{overrideDflt:{size:Math.round(l.size)}}),w5.coerceFont(a,"tickfont",l,{autoShadowDflt:!0,overrideDflt:{size:Math.round(l.size/1.2)}})}});var aVe=ye((txr,nVe)=>{"use strict";var lHt=Jm().wrap,uHt=pv().hasColorscale,cHt=gv(),fHt=JO(),hHt=So(),Fk=Dr(),dHt=Eo();nVe.exports=function(t,r){var n=Fk.filterVisible(r.dimensions);if(n.length===0)return[];var i=n.map(function(g){var P;if(g.categoryorder==="trace")P=null;else if(g.categoryorder==="array")P=g.categoryarray;else{P=fHt(g.values);for(var T=!0,z=0;z<P.length;z++)if(!dHt(P[z])){T=!1;break}P.sort(T?Fk.sorterAsc:void 0),g.categoryorder==="category descending"&&(P=P.reverse())}return xHt(g.values,P)}),a,o,s;Fk.isArrayOrTypedArray(r.counts)?a=r.counts:a=[r.counts],bHt(n),n.forEach(function(g,P){wHt(g,i[P])});var l=r.line,u;l?(uHt(r,"line")&&cHt(t,r,{vals:r.line.color,containerStr:"line",cLetter:"c"}),u=hHt.tryColorscale(l)):u=Fk.identity;function c(g){var P,T;return Fk.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,_;for(v=0;v<f;v++){var b=[];for(_=0;_<d.length;_++)b.push(d[_][v]);o=a[v%a.length],s+=o;var p=c(v),k=b+"-"+p.rawColor;h[k]===void 0&&(h[k]=yHt(b,p.color,p.rawColor)),_Ht(h[k],v,o)}var E=n.map(function(g,P){return pHt(P,g._index,g._displayindex,g.label,s)});for(v=0;v<f;v++)for(o=a[v%a.length],_=0;_<E.length;_++){var S=E[_].containerInd,L=i[_].inds[v],x=E[_].categories;if(x[L]===void 0){var C=r.dimensions[S]._categoryarray[L],M=r.dimensions[S]._ticktext[L];x[L]=gHt(_,L,C,M)}mHt(x[L],v,o)}return lHt(vHt(E,h,s))};function vHt(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 pHt(e,t,r,n,i){return{dimensionInd:e,containerInd:t,displayInd:r,dimensionLabel:n,count:i,categories:[],dragX:null}}function gHt(e,t,r,n){return{dimensionInd:e,categoryInd:t,categoryValue:r,displayInd:t,categoryLabel:n,valueInds:[],count:0,dragY:null}}function mHt(e,t,r){e.valueInds.push(t),e.count+=r}function yHt(e,t,r){return{categoryInds:e,color:t,rawColor:r,valueInds:[],count:0}}function _Ht(e,t,r){e.valueInds.push(t),e.count+=r}function xHt(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 bHt(e){var t=e.map(function(n){return n.displayindex}),r;if(THt(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 wHt(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 THt(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 vVe=ye((rxr,dVe)=>{"use strict";var Fl=Oa(),AHt=(F2(),ob(D2)).interpolateNumber,SHt=HP(),qk=vf(),yx=Dr(),zk=yx.strTranslate,oVe=So(),VK=cd(),MHt=ru();function EHt(e,t,r,n){var i=t._context.staticPlot,a=e.map(VHt.bind(0,t,r)),o=n.selectAll("g.parcatslayer").data([null]);o.enter().append("g").attr("class","parcatslayer").style("pointer-events",i?"none":"all");var s=o.selectAll("g.trace.parcats").data(a,u1),l=s.enter().append("g").attr("class","trace parcats");s.attr("transform",function(k){return zk(k.x,k.y)}),l.append("g").attr("class","paths");var u=s.select("g.paths"),c=u.selectAll("path.path").data(function(k){return k.paths},u1);c.attr("fill",function(k){return k.model.color});var f=c.enter().append("path").attr("class","path").attr("stroke-opacity",0).attr("fill",function(k){return k.model.color}).attr("fill-opacity",0);jK(f),c.attr("d",function(k){return k.svgD}),f.empty()||c.sort(GK),c.exit().remove(),c.on("mouseover",kHt).on("mouseout",CHt).on("click",LHt),l.append("g").attr("class","dimensions");var h=s.select("g.dimensions"),d=h.selectAll("g.dimension").data(function(k){return k.dimensions},u1);d.enter().append("g").attr("class","dimension"),d.attr("transform",function(k){return zk(k.x,0)}),d.exit().remove();var v=d.selectAll("g.category").data(function(k){return k.categories},u1),_=v.enter().append("g").attr("class","category");v.attr("transform",function(k){return zk(0,k.y)}),_.append("rect").attr("class","catrect").attr("pointer-events","none"),v.select("rect.catrect").attr("fill","none").attr("width",function(k){return k.width}).attr("height",function(k){return k.height}),lVe(_);var b=v.selectAll("rect.bandrect").data(function(k){return k.bands},u1);b.each(function(){yx.raiseToTop(this)}),b.attr("fill",function(k){return k.color});var p=b.enter().append("rect").attr("class","bandrect").attr("stroke-opacity",0).attr("fill",function(k){return k.color}).attr("fill-opacity",0);b.attr("fill",function(k){return k.color}).attr("width",function(k){return k.width}).attr("height",function(k){return k.height}).attr("y",function(k){return k.y}).attr("cursor",function(k){return k.parcatsViewModel.arrangement==="fixed"?"default":k.parcatsViewModel.arrangement==="perpendicular"?"ns-resize":"move"}),XK(p),b.exit().remove(),_.append("text").attr("class","catlabel").attr("pointer-events","none"),v.select("text.catlabel").attr("text-anchor",function(k){return Ok(k)?"start":"end"}).attr("alignment-baseline","middle").style("fill","rgb(0, 0, 0)").attr("x",function(k){return Ok(k)?k.width+5:-5}).attr("y",function(k){return k.height/2}).text(function(k){return k.model.categoryLabel}).each(function(k){oVe.font(Fl.select(this),k.parcatsViewModel.categorylabelfont),MHt.convertToTspans(Fl.select(this),t)}),_.append("text").attr("class","dimlabel"),v.select("text.dimlabel").attr("text-anchor","middle").attr("alignment-baseline","baseline").attr("cursor",function(k){return k.parcatsViewModel.arrangement==="fixed"?"default":"ew-resize"}).attr("x",function(k){return k.width/2}).attr("y",-5).text(function(k,E){return E===0?k.parcatsViewModel.model.dimensions[k.model.dimensionInd].dimensionLabel:null}).each(function(k){oVe.font(Fl.select(this),k.parcatsViewModel.labelfont)}),v.selectAll("rect.bandrect").on("mouseover",OHt).on("mouseout",qHt),v.exit().remove(),d.call(Fl.behavior.drag().origin(function(k){return{x:k.x,y:0}}).on("dragstart",BHt).on("drag",NHt).on("dragend",UHt)),s.each(function(k){k.traceSelection=Fl.select(this),k.pathSelection=Fl.select(this).selectAll("g.paths").selectAll("path.path"),k.dimensionSelection=Fl.select(this).selectAll("g.dimensions").selectAll("g.dimension")}),s.exit().remove()}dVe.exports=function(e,t,r,n){EHt(r,e,n,t)};function u1(e){return e.key}function Ok(e){var t=e.parcatsViewModel.dimensions.length,r=e.parcatsViewModel.dimensions[t-1].model.dimensionInd;return e.model.dimensionInd===r}function GK(e,t){return e.model.rawColor>t.model.rawColor?1:e.model.rawColor<t.model.rawColor?-1:0}function kHt(e){if(!e.parcatsViewModel.dragDimension&&e.parcatsViewModel.hoverinfoItems.indexOf("skip")===-1){yx.raiseToTop(this),WK(Fl.select(this));var t=Bk(e),r=HK(e);if(e.parcatsViewModel.graphDiv.emit("plotly_hover",{points:t,event:Fl.event,constraints:r}),e.parcatsViewModel.hoverinfoItems.indexOf("none")===-1){var n=Fl.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,_=e.parcatsViewModel.y+c,b=VK.mostReadable(e.model.color,["black","white"]),p=e.model.count,k=p/e.parcatsViewModel.model.count,E={countLabel:p,probabilityLabel:k.toFixed(3)},S=[];e.parcatsViewModel.hoverinfoItems.indexOf("count")!==-1&&S.push(["Count:",E.countLabel].join(" ")),e.parcatsViewModel.hoverinfoItems.indexOf("probability")!==-1&&S.push(["P:",E.probabilityLabel].join(" "));var L=S.join("<br>"),x=Fl.mouse(i)[0];qk.loneHover({trace:a,x:v-s.left+l.left,y:_-s.top+l.top,text:L,color:e.model.color,borderColor:"black",fontFamily:'Monaco, "Courier New", monospace',fontSize:10,fontColor:b,idealAlign:x<v?"right":"left",hovertemplate:(a.line||{}).hovertemplate,hovertemplateLabels:E,eventData:[{data:a._input,fullData:a,count:p,probability:k}]},{container:o._hoverlayer.node(),outerContainer:o._paper.node(),gd:i})}}}function CHt(e){if(!e.parcatsViewModel.dragDimension&&(jK(Fl.select(this)),qk.loneUnhover(e.parcatsViewModel.graphDiv._fullLayout._hoverlayer.node()),e.parcatsViewModel.pathSelection.sort(GK),e.parcatsViewModel.hoverinfoItems.indexOf("skip")===-1)){var t=Bk(e),r=HK(e);e.parcatsViewModel.graphDiv.emit("plotly_unhover",{points:t,event:Fl.event,constraints:r})}}function Bk(e){for(var t=[],r=cVe(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 HK(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 LHt(e){if(e.parcatsViewModel.hoverinfoItems.indexOf("skip")===-1){var t=Bk(e),r=HK(e);e.parcatsViewModel.graphDiv.emit("plotly_click",{points:t,event:Fl.event,constraints:r})}}function jK(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 WK(e){e.attr("fill-opacity",.8).attr("stroke",function(t){return VK.mostReadable(t.model.color,["black","white"])}).attr("stroke-width",.3)}function PHt(e){e.select("rect.catrect").attr("stroke","black").attr("stroke-width",2.5)}function lVe(e){e.select("rect.catrect").attr("stroke","black").attr("stroke-width",1).attr("stroke-opacity",1)}function IHt(e){e.attr("stroke","black").attr("stroke-width",1.5)}function XK(e){e.attr("stroke","black").attr("stroke-width",.2).attr("stroke-opacity",1).attr("fill-opacity",1)}function Hz(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 RHt(e){var t=Fl.select(e.parentNode).selectAll("rect.bandrect");t.each(function(r){var n=Hz(r);WK(n),n.each(function(){yx.raiseToTop(this)})}),PHt(Fl.select(e.parentNode))}function DHt(e){var t=Fl.select(e).datum(),r=Hz(t);WK(r),r.each(function(){yx.raiseToTop(this)}),Fl.select(e.parentNode).selectAll("rect.bandrect").filter(function(n){return n.color===t.color}).each(function(){yx.raiseToTop(this),IHt(Fl.select(this))})}function ZK(e,t,r){var n=Fl.select(e).datum(),i=n.categoryViewModel.model,a=n.parcatsViewModel.graphDiv,o=Fl.select(e.parentNode).selectAll("rect.bandrect"),s=[];o.each(function(u){var c=Hz(u);c.each(function(f){Array.prototype.push.apply(s,Bk(f))})});var l={};l[i.dimensionInd]=i.categoryValue,a.emit(t,{points:s,event:r,constraints:l})}function YK(e,t,r){var n=Fl.select(e).datum(),i=n.categoryViewModel.model,a=n.parcatsViewModel.graphDiv,o=Hz(n),s=[];o.each(function(u){Array.prototype.push.apply(s,Bk(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 uVe(e,t,r){e._fullLayout._calcInverseTransform(e);var n=e._fullLayout._invScaleX,i=e._fullLayout._invScaleY,a=Fl.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,_=s.model.categoryLabel,b=v/s.parcatsViewModel.model.count,p={countLabel:v,categoryLabel:_,probabilityLabel:b.toFixed(3)},k=[];s.parcatsViewModel.hoverinfoItems.indexOf("count")!==-1&&k.push(["Count:",p.countLabel].join(" ")),s.parcatsViewModel.hoverinfoItems.indexOf("probability")!==-1&&k.push(["P("+p.categoryLabel+"):",p.probabilityLabel].join(" "));var E=k.join("<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:_,probability:b}]}}function FHt(e,t,r){var n=[];return Fl.select(r.parentNode.parentNode).selectAll("g.category").select("rect.catrect").each(function(){var i=this;n.push(uVe(e,t,i))}),n}function zHt(e,t,r){e._fullLayout._calcInverseTransform(e);var n=e._fullLayout._invScaleX,i=e._fullLayout._invScaleY,a=r.getBoundingClientRect(),o=Fl.select(r).datum(),s=o.categoryViewModel,l=s.parcatsViewModel,u=l.model.dimensions[s.model.dimensionInd],c=l.trace,f=a.y+a.height/2,h,d;l.dimensions.length>1&&u.displayInd===l.dimensions.length-1?(h=a.left,d="left"):(h=a.left+a.width,d="right");var v=s.model.categoryLabel,_=o.parcatsViewModel.model.count,b=0;o.categoryViewModel.bands.forEach(function(P){P.color===o.color&&(b+=P.count)});var p=s.model.count,k=0;l.pathSelection.each(function(P){P.model.color===o.color&&(k+=P.model.count)});var E=b/_,S=b/k,L=b/p,x={countLabel:b,categoryLabel:v,probabilityLabel:E.toFixed(3)},C=[];s.parcatsViewModel.hoverinfoItems.indexOf("count")!==-1&&C.push(["Count:",x.countLabel].join(" ")),s.parcatsViewModel.hoverinfoItems.indexOf("probability")!==-1&&(C.push("P(color \u2229 "+v+"): "+x.probabilityLabel),C.push("P("+v+" | color): "+S.toFixed(3)),C.push("P(color | "+v+"): "+L.toFixed(3)));var M=C.join("<br>"),g=VK.mostReadable(o.color,["black","white"]);return{trace:c,x:n*(h-t.left),y:i*(f-t.top),text:M,color:o.color,borderColor:"black",fontFamily:'Monaco, "Courier New", monospace',fontColor:g,fontSize:10,idealAlign:d,hovertemplate:c.hovertemplate,hovertemplateLabels:x,eventData:[{data:c._input,fullData:c,category:v,count:_,probability:E,categorycount:p,colorcount:k,bandcolorcount:b}]}}function OHt(e){if(!e.parcatsViewModel.dragDimension&&e.parcatsViewModel.hoverinfoItems.indexOf("skip")===-1){var t=Fl.mouse(this)[1];if(t<-1)return;var r=e.parcatsViewModel.graphDiv,n=r._fullLayout,i=n._paperdiv.node().getBoundingClientRect(),a=e.parcatsViewModel.hoveron,o=this;if(a==="color"?(DHt(o),YK(o,"plotly_hover",Fl.event)):(RHt(o),ZK(o,"plotly_hover",Fl.event)),e.parcatsViewModel.hoverinfoItems.indexOf("none")===-1){var s;a==="category"?s=uVe(r,i,o):a==="color"?s=zHt(r,i,o):a==="dimension"&&(s=FHt(r,i,o)),s&&qk.loneHover(s,{container:n._hoverlayer.node(),outerContainer:n._paper.node(),gd:r})}}}function qHt(e){var t=e.parcatsViewModel;if(!t.dragDimension&&(jK(t.pathSelection),lVe(t.dimensionSelection.selectAll("g.category")),XK(t.dimensionSelection.selectAll("g.category").selectAll("rect.bandrect")),qk.loneUnhover(t.graphDiv._fullLayout._hoverlayer.node()),t.pathSelection.sort(GK),t.hoverinfoItems.indexOf("skip")===-1)){var r=e.parcatsViewModel.hoveron,n=this;r==="color"?YK(n,"plotly_unhover",Fl.event):ZK(n,"plotly_unhover",Fl.event)}}function BHt(e){e.parcatsViewModel.arrangement!=="fixed"&&(e.dragDimensionDisplayInd=e.model.displayInd,e.initialDragDimensionDisplayInds=e.parcatsViewModel.model.dimensions.map(function(t){return t.displayInd}),e.dragHasMoved=!1,e.dragCategoryDisplayInd=null,Fl.select(this).selectAll("g.category").select("rect.catrect").each(function(t){var r=Fl.mouse(this)[0],n=Fl.mouse(this)[1];-2<=r&&r<=t.width+2&&-2<=n&&n<=t.height+2&&(e.dragCategoryDisplayInd=t.model.displayInd,e.initialDragCategoryDisplayInds=e.model.categories.map(function(i){return i.displayInd}),t.model.dragY=t.y,yx.raiseToTop(this.parentNode),Fl.select(this.parentNode).selectAll("rect.bandrect").each(function(i){i.y<n&&n<=i.y+i.height&&(e.potentialClickBand=this)}))}),e.parcatsViewModel.dragDimension=e,qk.loneUnhover(e.parcatsViewModel.graphDiv._fullLayout._hoverlayer.node()))}function NHt(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+=Fl.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=Fl.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}JK(e.parcatsViewModel),KK(e.parcatsViewModel),hVe(e.parcatsViewModel),fVe(e.parcatsViewModel)}}function UHt(e){if(e.parcatsViewModel.arrangement!=="fixed"&&e.dragDimensionDisplayInd!==null){Fl.select(this).selectAll("text").attr("font-weight","normal");var t={},r=cVe(e.parcatsViewModel),n=e.parcatsViewModel.model.dimensions.map(function(h){return h.displayInd}),i=e.initialDragDimensionDisplayInds.some(function(h,d){return h!==n[d]});i&&n.forEach(function(h,d){var v=e.parcatsViewModel.model.dimensions[d].containerInd;t["dimensions["+v+"].displayindex"]=h});var a=!1;if(e.dragCategoryDisplayInd!==null){var o=e.model.categories.map(function(h){return h.displayInd});if(a=e.initialDragCategoryDisplayInds.some(function(h,d){return h!==o[d]}),a){var s=e.model.categories.slice().sort(function(h,d){return h.displayInd-d.displayInd}),l=s.map(function(h){return h.categoryValue}),u=s.map(function(h){return h.categoryLabel});t["dimensions["+e.model.containerInd+"].categoryarray"]=[l],t["dimensions["+e.model.containerInd+"].ticktext"]=[u],t["dimensions["+e.model.containerInd+"].categoryorder"]="array"}}if(e.parcatsViewModel.hoverinfoItems.indexOf("skip")===-1&&!e.dragHasMoved&&e.potentialClickBand&&(e.parcatsViewModel.hoveron==="color"?YK(e.potentialClickBand,"plotly_click",Fl.event.sourceEvent):ZK(e.potentialClickBand,"plotly_click",Fl.event.sourceEvent)),e.model.dragX=null,e.dragCategoryDisplayInd!==null){var c=e.parcatsViewModel.dimensions[e.dragDimensionDisplayInd].categories[e.dragCategoryDisplayInd];c.model.dragY=null,e.dragCategoryDisplayInd=null}e.dragDimensionDisplayInd=null,e.parcatsViewModel.dragDimension=null,e.dragHasMoved=null,e.potentialClickBand=null,JK(e.parcatsViewModel),KK(e.parcatsViewModel);var f=Fl.transition().duration(300).ease("cubic-in-out");f.each(function(){hVe(e.parcatsViewModel,!0),fVe(e.parcatsViewModel,!0)}).each("end",function(){(i||a)&&SHt.restyle(e.parcatsViewModel.graphDiv,t,[r])})}}function cVe(e){for(var t,r=e.graphDiv._fullData,n=0;n<r.length;n++)if(e.key===r[n].uid){t=n;break}return t}function fVe(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 hVe(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 zk(l.x,0)}),r(n).attr("transform",function(l){return zk(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 Ok(l)?"start":"end"}).attr("x",function(l){return Ok(l)?l.width+5:-5}).each(function(l){var u,c;Ok(l)?(u=l.width+5,c="start"):(u=-5,c="end"),Fl.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}),XK(s),o.each(function(){yx.raiseToTop(this)}),o.exit().remove()}function VHt(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 _={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&&(JK(_),KK(_)),_}function sVe(e,t,r,n,i){var a=[],o=[],s,l;for(l=0;l<r.length-1;l++)s=AHt(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 KK(e){var t=e.dimensions,r=e.model,n=t.map(function(O){return O.categories.map(function(V){return V.y})}),i=e.model.dimensions.map(function(O){return O.categories.map(function(V){return V.displayInd})}),a=e.model.dimensions.map(function(O){return O.displayInd}),o=e.dimensions.map(function(O){return O.model.dimensionInd}),s=t.map(function(O){return O.x}),l=t.map(function(O){return O.width}),u=[];for(var c in r.paths)r.paths.hasOwnProperty(c)&&u.push(r.paths[c]);function f(O){var V=O.categoryInds.map(function(Z,j){return i[j][Z]}),G=o.map(function(Z){return V[Z]});return G}u.sort(function(O,V){var G=f(O),Z=f(V);return e.sortpaths==="backward"&&(G.reverse(),Z.reverse()),G.push(O.valueInds[0]),Z.push(V.valueInds[0]),e.bundlecolors&&(G.unshift(O.rawColor),Z.unshift(V.rawColor)),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}),_=0;_<u.length;_++){var b=u[_],p;d>0?p=v*(b.count/d):p=0;for(var k=new Array(n.length),E=0;E<b.categoryInds.length;E++){var S=b.categoryInds[E],L=i[E][S],x=a[E];k[x]=n[x][L],n[x][L]+=p;var C=e.dimensions[x].categories[L],M=C.bands.length,g=C.bands[M-1];if(g===void 0||b.rawColor!==g.rawColor){var P=g===void 0?0:g.y+g.height;C.bands.push({key:P,color:b.color,rawColor:b.rawColor,height:p,width:C.width,count:b.count,y:P,categoryViewModel:C,parcatsViewModel:e})}else{var T=C.bands[M-1];T.height+=p,T.count+=b.count}}var z;e.pathShape==="hspline"?z=sVe(s,k,l,p,.5):z=sVe(s,k,l,p,0),h[_]={key:b.valueInds[0],model:b,height:p,leftXs:s,topYs:k,dimWidths:l,svgD:z,parcatsViewModel:e}}e.paths=h}function JK(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(GHt(e,a))}e.dimensions=r}function GHt(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),_,b,p,k,E,S=(c-f)*h/2,L=t.categories.map(function(x){return{displayInd:x.displayInd,categoryInd:x.categoryInd}});for(L.sort(function(x,C){return x.displayInd-C.displayInd}),E=0;E<f;E++)k=L[E].categoryInd,b=t.categories[k],d>0?_=b.count/d*v:_=0,p={key:b.valueInds[0],model:b,width:n,height:_,y:b.dragY!==null?b.dragY:S,bands:[],parcatsViewModel:e},S=S+_+h,u.push(p);return{key:t.dimensionInd,x:t.dragX!==null?t.dragX:l,y:0,width:n,model:t,categories:u,parcatsViewModel:e,dragCategoryDisplayInd:null,dragDimensionDisplayInd:null,initialDragDimensionDisplayInds:null,initialDragCategoryDisplayInds:null,dragHasMoved:null,potentialClickBand:null}}});var $K=ye((ixr,pVe)=>{"use strict";var HHt=vVe();pVe.exports=function(t,r,n,i){var a=t._fullLayout,o=a._paper,s=a._size;HHt(t,o,r,{width:s.w,height:s.h,margin:{t:s.t,r:s.r,b:s.b,l:s.l}},n,i)}});var mVe=ye(jz=>{"use strict";var jHt=Id().getModuleCalcData,WHt=$K(),gVe="parcats";jz.name=gVe;jz.plot=function(e,t,r,n){var i=jHt(e.calcdata,gVe);if(i.length){var a=i[0];WHt(e,a,r,n)}};jz.clean=function(e,t,r,n){var i=n._has&&n._has("parcats"),a=t._has&&t._has("parcats");i&&!a&&n._paperdiv.selectAll(".parcats").remove()}});var _Ve=ye((axr,yVe)=>{"use strict";yVe.exports={attributes:UK(),supplyDefaults:iVe(),calc:aVe(),plot:$K(),colorbar:{container:"line",min:"cmin",max:"cmax"},moduleType:"trace",name:"parcats",basePlotModule:mVe(),categories:["noOpacity"],meta:{}}});var bVe=ye((oxr,xVe)=>{"use strict";xVe.exports=_Ve()});var c1=ye((sxr,kVe)=>{"use strict";var XHt=Z1(),wVe="1.13.4",MVe='\xA9 <a target="_blank" href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors',TVe=['\xA9 <a target="_blank" href="https://carto.com/">Carto</a>',MVe].join(" "),AVe=['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(" "),ZHt=['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(" "),EVe={"open-street-map":{id:"osm",version:8,sources:{"plotly-osm-tiles":{type:"raster",attribution:MVe,tiles:["https://a.tile.openstreetmap.org/{z}/{x}/{y}.png","https://b.tile.openstreetmap.org/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-osm-tiles",type:"raster",source:"plotly-osm-tiles",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"white-bg":{id:"white-bg",version:8,sources:{},layers:[{id:"white-bg",type:"background",paint:{"background-color":"#FFFFFF"},minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"carto-positron":{id:"carto-positron",version:8,sources:{"plotly-carto-positron":{type:"raster",attribution:TVe,tiles:["https://cartodb-basemaps-c.global.ssl.fastly.net/light_all/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-carto-positron",type:"raster",source:"plotly-carto-positron",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"carto-darkmatter":{id:"carto-darkmatter",version:8,sources:{"plotly-carto-darkmatter":{type:"raster",attribution:TVe,tiles:["https://cartodb-basemaps-c.global.ssl.fastly.net/dark_all/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-carto-darkmatter",type:"raster",source:"plotly-carto-darkmatter",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"stamen-terrain":{id:"stamen-terrain",version:8,sources:{"plotly-stamen-terrain":{type:"raster",attribution:AVe,tiles:["https://tiles.stadiamaps.com/tiles/stamen_terrain/{z}/{x}/{y}.png?api_key="],tileSize:256}},layers:[{id:"plotly-stamen-terrain",type:"raster",source:"plotly-stamen-terrain",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"stamen-toner":{id:"stamen-toner",version:8,sources:{"plotly-stamen-toner":{type:"raster",attribution:AVe,tiles:["https://tiles.stadiamaps.com/tiles/stamen_toner/{z}/{x}/{y}.png?api_key="],tileSize:256}},layers:[{id:"plotly-stamen-toner",type:"raster",source:"plotly-stamen-toner",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"stamen-watercolor":{id:"stamen-watercolor",version:8,sources:{"plotly-stamen-watercolor":{type:"raster",attribution:ZHt,tiles:["https://tiles.stadiamaps.com/tiles/stamen_watercolor/{z}/{x}/{y}.jpg?api_key="],tileSize:256}},layers:[{id:"plotly-stamen-watercolor",type:"raster",source:"plotly-stamen-watercolor",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"}},SVe=XHt(EVe);kVe.exports={requiredVersion:wVe,styleUrlPrefix:"mapbox://styles/mapbox/",styleUrlSuffix:"v9",styleValuesMapbox:["basic","streets","outdoors","light","dark","satellite","satellite-streets"],styleValueDflt:"basic",stylesNonMapbox:EVe,styleValuesNonMapbox:SVe,traceLayerPrefix:"plotly-trace-layer-",layoutLayerPrefix:"plotly-layout-layer-",wrongVersionErrorMsg:["Your custom plotly.js bundle is not using the correct mapbox-gl version","Please install @plotly/mapbox-gl@"+wVe+"."].join(`
`),noAccessTokenErrorMsg:["Missing Mapbox access token.","Mapbox trace type require a Mapbox access token to be registered.","For example:"," Plotly.newPlot(gd, data, layout, { mapboxAccessToken: 'my-access-token' });","More info here: https://www.mapbox.com/help/define-access-token/"].join(`
`),missingStyleErrorMsg:["No valid mapbox style found, please set `mapbox.style` to one of:",SVe.join(", "),"or register a Mapbox access token to use a Mapbox-served style."].join(`
`),multipleTokensErrorMsg:["Set multiple mapbox access token across different mapbox subplot,","using first token found as mapbox-gl does not allow multipleaccess tokens on the same page."].join(`
`),mapOnErrorMsg:"Mapbox error.",mapboxLogo:{path0:"m 10.5,1.24 c -5.11,0 -9.25,4.15 -9.25,9.25 0,5.1 4.15,9.25 9.25,9.25 5.1,0 9.25,-4.15 9.25,-9.25 0,-5.11 -4.14,-9.25 -9.25,-9.25 z m 4.39,11.53 c -1.93,1.93 -4.78,2.31 -6.7,2.31 -0.7,0 -1.41,-0.05 -2.1,-0.16 0,0 -1.02,-5.64 2.14,-8.81 0.83,-0.83 1.95,-1.28 3.13,-1.28 1.27,0 2.49,0.51 3.39,1.42 1.84,1.84 1.89,4.75 0.14,6.52 z",path1:"M 10.5,-0.01 C 4.7,-0.01 0,4.7 0,10.49 c 0,5.79 4.7,10.5 10.5,10.5 5.8,0 10.5,-4.7 10.5,-10.5 C 20.99,4.7 16.3,-0.01 10.5,-0.01 Z m 0,19.75 c -5.11,0 -9.25,-4.15 -9.25,-9.25 0,-5.1 4.14,-9.26 9.25,-9.26 5.11,0 9.25,4.15 9.25,9.25 0,5.13 -4.14,9.26 -9.25,9.26 z",path2:"M 14.74,6.25 C 12.9,4.41 9.98,4.35 8.23,6.1 5.07,9.27 6.09,14.91 6.09,14.91 c 0,0 5.64,1.02 8.81,-2.14 C 16.64,11 16.59,8.09 14.74,6.25 Z m -2.27,4.09 -0.91,1.87 -0.9,-1.87 -1.86,-0.91 1.86,-0.9 0.9,-1.87 0.91,1.87 1.86,0.9 z",polygon:"11.56,12.21 10.66,10.34 8.8,9.43 10.66,8.53 11.56,6.66 12.47,8.53 14.33,9.43 12.47,10.34"},styleRules:{map:"overflow:hidden;position:relative;","missing-css":"display:none;",canary:"background-color:salmon;","ctrl-bottom-left":"position: absolute; pointer-events: none; z-index: 2; bottom: 0; left: 0;","ctrl-bottom-right":"position: absolute; pointer-events: none; z-index: 2; right: 0; bottom: 0;",ctrl:"clear: both; pointer-events: auto; transform: translate(0, 0);","ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-inner":"display: none;","ctrl-attrib.mapboxgl-compact:hover .mapboxgl-ctrl-attrib-inner":"display: block; margin-top:2px","ctrl-attrib.mapboxgl-compact:hover":"padding: 2px 24px 2px 4px; visibility: visible; margin-top: 6px;","ctrl-attrib.mapboxgl-compact::after":`content: ""; cursor: pointer; position: absolute; background-image: url('data:image/svg+xml;charset=utf-8,%3Csvg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"%3E %3Cpath fill="%23333333" fill-rule="evenodd" d="M4,10a6,6 0 1,0 12,0a6,6 0 1,0 -12,0 M9,7a1,1 0 1,0 2,0a1,1 0 1,0 -2,0 M9,10a1,1 0 1,1 2,0l0,3a1,1 0 1,1 -2,0"/%3E %3C/svg%3E'); background-color: rgba(255, 255, 255, 0.5); width: 24px; height: 24px; box-sizing: border-box; border-radius: 12px;`,"ctrl-attrib.mapboxgl-compact":"min-height: 20px; padding: 0; margin: 10px; position: relative; background-color: #fff; border-radius: 3px 12px 12px 3px;","ctrl-bottom-right > .mapboxgl-ctrl-attrib.mapboxgl-compact::after":"bottom: 0; right: 0","ctrl-bottom-left > .mapboxgl-ctrl-attrib.mapboxgl-compact::after":"bottom: 0; left: 0","ctrl-bottom-left .mapboxgl-ctrl":"margin: 0 0 10px 10px; float: left;","ctrl-bottom-right .mapboxgl-ctrl":"margin: 0 10px 10px 0; float: right;","ctrl-attrib":"color: rgba(0, 0, 0, 0.75); text-decoration: none; font-size: 12px","ctrl-attrib a":"color: rgba(0, 0, 0, 0.75); text-decoration: none; font-size: 12px","ctrl-attrib a:hover":"color: inherit; text-decoration: underline;","ctrl-attrib .mapbox-improve-map":"font-weight: bold; margin-left: 2px;","attrib-empty":"display: none;","ctrl-logo":`display:block; width: 21px; height: 21px; background-image: url('data:image/svg+xml;charset=utf-8,%3C?xml version="1.0" encoding="utf-8"?%3E %3Csvg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 21 21" style="enable-background:new 0 0 21 21;" xml:space="preserve"%3E%3Cg transform="translate(0,0.01)"%3E%3Cpath d="m 10.5,1.24 c -5.11,0 -9.25,4.15 -9.25,9.25 0,5.1 4.15,9.25 9.25,9.25 5.1,0 9.25,-4.15 9.25,-9.25 0,-5.11 -4.14,-9.25 -9.25,-9.25 z m 4.39,11.53 c -1.93,1.93 -4.78,2.31 -6.7,2.31 -0.7,0 -1.41,-0.05 -2.1,-0.16 0,0 -1.02,-5.64 2.14,-8.81 0.83,-0.83 1.95,-1.28 3.13,-1.28 1.27,0 2.49,0.51 3.39,1.42 1.84,1.84 1.89,4.75 0.14,6.52 z" style="opacity:0.9;fill:%23ffffff;enable-background:new" class="st0"/%3E%3Cpath d="M 10.5,-0.01 C 4.7,-0.01 0,4.7 0,10.49 c 0,5.79 4.7,10.5 10.5,10.5 5.8,0 10.5,-4.7 10.5,-10.5 C 20.99,4.7 16.3,-0.01 10.5,-0.01 Z m 0,19.75 c -5.11,0 -9.25,-4.15 -9.25,-9.25 0,-5.1 4.14,-9.26 9.25,-9.26 5.11,0 9.25,4.15 9.25,9.25 0,5.13 -4.14,9.26 -9.25,9.26 z" style="opacity:0.35;enable-background:new" class="st1"/%3E%3Cpath d="M 14.74,6.25 C 12.9,4.41 9.98,4.35 8.23,6.1 5.07,9.27 6.09,14.91 6.09,14.91 c 0,0 5.64,1.02 8.81,-2.14 C 16.64,11 16.59,8.09 14.74,6.25 Z m -2.27,4.09 -0.91,1.87 -0.9,-1.87 -1.86,-0.91 1.86,-0.9 0.9,-1.87 0.91,1.87 1.86,0.9 z" style="opacity:0.35;enable-background:new" class="st1"/%3E%3Cpolygon points="11.56,12.21 10.66,10.34 8.8,9.43 10.66,8.53 11.56,6.66 12.47,8.53 14.33,9.43 12.47,10.34 " style="opacity:0.9;fill:%23ffffff;enable-background:new" class="st0"/%3E%3C/g%3E%3C/svg%3E')`}}});var Nk=ye((lxr,IVe)=>{"use strict";var CVe=Dr(),LVe=ka().defaultLine,YHt=Cc().attributes,KHt=ec(),JHt=pf().textposition,$Ht=mc().overrideAll,QHt=vl().templatedArray,QK=c1(),PVe=KHt({noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0});PVe.family.dflt="Open Sans Regular, Arial Unicode MS Regular";var ejt=IVe.exports=$Ht({_arrayAttrRegexps:[CVe.counterRegex("mapbox",".layers",!0)],domain:YHt({name:"mapbox"}),accesstoken:{valType:"string",noBlank:!0,strict:!0},style:{valType:"any",values:QK.styleValuesMapbox.concat(QK.styleValuesNonMapbox),dflt:QK.styleValueDflt},center:{lon:{valType:"number",dflt:0},lat:{valType:"number",dflt:0}},zoom:{valType:"number",dflt:1},bearing:{valType:"number",dflt:0},pitch:{valType:"number",dflt:0},bounds:{west:{valType:"number"},east:{valType:"number"},south:{valType:"number"},north:{valType:"number"}},layers:QHt("layer",{visible:{valType:"boolean",dflt:!0},sourcetype:{valType:"enumerated",values:["geojson","vector","raster","image"],dflt:"geojson"},source:{valType:"any"},sourcelayer:{valType:"string",dflt:""},sourceattribution:{valType:"string"},type:{valType:"enumerated",values:["circle","line","fill","symbol","raster"],dflt:"circle"},coordinates:{valType:"any"},below:{valType:"string"},color:{valType:"color",dflt:LVe},opacity:{valType:"number",min:0,max:1,dflt:1},minzoom:{valType:"number",min:0,max:24,dflt:0},maxzoom:{valType:"number",min:0,max:24,dflt:24},circle:{radius:{valType:"number",dflt:15}},line:{width:{valType:"number",dflt:2},dash:{valType:"data_array"}},fill:{outlinecolor:{valType:"color",dflt:LVe}},symbol:{icon:{valType:"string",dflt:"marker"},iconsize:{valType:"number",dflt:10},text:{valType:"string",dflt:""},placement:{valType:"enumerated",values:["point","line","line-center"],dflt:"point"},textfont:PVe,textposition:CVe.extendFlat({},JHt,{arrayOk:!1})}})},"plot","from-root");ejt.uirevision={valType:"any",editType:"none"}});var Wz=ye((uxr,zVe)=>{"use strict";var{hovertemplateAttrs:tjt,texttemplateAttrs:rjt,templatefallbackAttrs:RVe}=Ll(),ijt=Cg(),Uk=j2(),T5=pf(),DVe=Nk(),njt=Gl(),ajt=Tu(),rw=Ao().extendFlat,ojt=mc().overrideAll,sjt=Nk(),FVe=Uk.line,A5=Uk.marker;zVe.exports=ojt({lon:Uk.lon,lat:Uk.lat,cluster:{enabled:{valType:"boolean"},maxzoom:rw({},sjt.layers.maxzoom,{}),step:{valType:"number",arrayOk:!0,dflt:-1,min:-1},size:{valType:"number",arrayOk:!0,dflt:20,min:0},color:{valType:"color",arrayOk:!0},opacity:rw({},A5.opacity,{dflt:1})},mode:rw({},T5.mode,{dflt:"markers"}),text:rw({},T5.text,{}),texttemplate:rjt({editType:"plot"},{keys:["lat","lon","text"]}),texttemplatefallback:RVe({editType:"plot"}),hovertext:rw({},T5.hovertext,{}),line:{color:FVe.color,width:FVe.width},connectgaps:T5.connectgaps,marker:rw({symbol:{valType:"string",dflt:"circle",arrayOk:!0},angle:{valType:"number",dflt:"auto",arrayOk:!0},allowoverlap:{valType:"boolean",dflt:!1},opacity:A5.opacity,size:A5.size,sizeref:A5.sizeref,sizemin:A5.sizemin,sizemode:A5.sizemode},ajt("marker")),fill:Uk.fill,fillcolor:ijt(),textfont:DVe.layers.symbol.textfont,textposition:DVe.layers.symbol.textposition,below:{valType:"string"},selected:{marker:T5.selected.marker},unselected:{marker:T5.unselected.marker},hoverinfo:rw({},njt.hoverinfo,{flags:["lon","lat","text","name"]}),hovertemplate:tjt(),hovertemplatefallback:RVe()},"calc","nested")});var eJ=ye((cxr,OVe)=>{"use strict";var ljt=["Metropolis Black Italic","Metropolis Black","Metropolis Bold Italic","Metropolis Bold","Metropolis Extra Bold Italic","Metropolis Extra Bold","Metropolis Extra Light Italic","Metropolis Extra Light","Metropolis Light Italic","Metropolis Light","Metropolis Medium Italic","Metropolis Medium","Metropolis Regular Italic","Metropolis Regular","Metropolis Semi Bold Italic","Metropolis Semi Bold","Metropolis Thin Italic","Metropolis Thin","Open Sans Bold Italic","Open Sans Bold","Open Sans Extrabold Italic","Open Sans Extrabold","Open Sans Italic","Open Sans Light Italic","Open Sans Light","Open Sans Regular","Open Sans Semibold Italic","Open Sans Semibold","Klokantech Noto Sans Bold","Klokantech Noto Sans CJK Bold","Klokantech Noto Sans CJK Regular","Klokantech Noto Sans Italic","Klokantech Noto Sans Regular"];OVe.exports={isSupportedFont:function(e){return ljt.indexOf(e)!==-1}}});var NVe=ye((fxr,BVe)=>{"use strict";var Vk=Dr(),tJ=Ru(),ujt=$p(),cjt=R0(),fjt=D0(),hjt=Rg(),qVe=Wz(),djt=eJ().isSupportedFont;BVe.exports=function(t,r,n,i){function a(p,k){return Vk.coerce(t,r,qVe,p,k)}function o(p,k){return Vk.coerce2(t,r,qVe,p,k)}var s=vjt(t,r,a);if(!s){r.visible=!1;return}if(a("text"),a("texttemplate"),a("texttemplatefallback"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),a("mode"),a("below"),tJ.hasMarkers(r)){ujt(t,r,n,i,a,{noLine:!0,noAngle:!0}),a("marker.allowoverlap"),a("marker.angle");var l=r.marker;l.symbol!=="circle"&&(Vk.isArrayOrTypedArray(l.size)&&(l.size=l.size[0]),Vk.isArrayOrTypedArray(l.color)&&(l.color=l.color[0]))}tJ.hasLines(r)&&(cjt(t,r,n,i,a,{noDash:!0}),a("connectgaps"));var u=o("cluster.maxzoom"),c=o("cluster.step"),f=o("cluster.color",r.marker&&r.marker.color||n),h=o("cluster.size"),d=o("cluster.opacity"),v=u!==!1||c!==!1||f!==!1||h!==!1||d!==!1,_=a("cluster.enabled",v);if(_||tJ.hasText(r)){var b=i.font.family;fjt(t,r,i,a,{noSelect:!0,noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0,font:{family:djt(b)?b:"Open Sans Regular",weight:i.font.weight,style:i.font.style,size:i.font.size,color:i.font.color}})}a("fill"),r.fill!=="none"&&hjt(t,r,n,a),Vk.coerceSelectionMarkerOpacity(r,a)};function vjt(e,t,r){var n=r("lon")||[],i=r("lat")||[],a=Math.min(n.length,i.length);return t._length=a,a}});var rJ=ye((hxr,VVe)=>{"use strict";var UVe=ho();VVe.exports=function(t,r,n){var i={},a=n[r.subplot]._subplot,o=a.mockAxis,s=t.lonlat;return i.lonLabel=UVe.tickText(o,o.c2l(s[0]),!0).text,i.latLabel=UVe.tickText(o,o.c2l(s[1]),!0).text,i}});var iJ=ye((dxr,HVe)=>{"use strict";var GVe=Dr();HVe.exports=function(t,r){var n=t.split(" "),i=n[0],a=n[1],o=GVe.isArrayOrTypedArray(r)?GVe.mean(r):r,s=.5+o/100,l=1.5+o/100,u=["",""],c=[0,0];switch(i){case"top":u[0]="top",c[1]=-l;break;case"bottom":u[0]="bottom",c[1]=l;break}switch(a){case"left":u[1]="right",c[0]=-s;break;case"right":u[1]="left",c[0]=s;break}var f;return u[0]&&u[1]?f=u.join("-"):u[0]?f=u[0]:u[1]?f=u[1]:f="center",{anchor:f,offset:c}}});var KVe=ye((vxr,YVe)=>{"use strict";var XVe=Eo(),av=Dr(),pjt=fs().BADNUM,Zz=tx(),jVe=tc(),gjt=So(),mjt=k3(),Yz=Ru(),yjt=eJ().isSupportedFont,_jt=iJ(),xjt=ip().appendArrayPointValue,bjt=ru().NEWLINES,wjt=ru().BR_TAG_ALL;YVe.exports=function(t,r){var n=r[0].trace,i=n.visible===!0&&n._length!==0,a=n.fill!=="none",o=Yz.hasLines(n),s=Yz.hasMarkers(n),l=Yz.hasText(n),u=s&&n.marker.symbol==="circle",c=s&&n.marker.symbol!=="circle",f=n.cluster&&n.cluster.enabled,h=Xz("fill"),d=Xz("line"),v=Xz("circle"),_=Xz("symbol"),b={fill:h,line:d,circle:v,symbol:_};if(!i)return b;var p;if((a||o)&&(p=Zz.calcTraceToLineCoords(r)),a&&(h.geojson=Zz.makePolygon(p),h.layout.visibility="visible",av.extendFlat(h.paint,{"fill-color":n.fillcolor})),o&&(d.geojson=Zz.makeLine(p),d.layout.visibility="visible",av.extendFlat(d.paint,{"line-width":n.line.width,"line-color":n.line.color,"line-opacity":n.opacity})),u){var k=Tjt(r);v.geojson=k.geojson,v.layout.visibility="visible",f&&(v.filter=["!",["has","point_count"]],b.cluster={type:"circle",filter:["has","point_count"],layout:{visibility:"visible"},paint:{"circle-color":aJ(n.cluster.color,n.cluster.step),"circle-radius":aJ(n.cluster.size,n.cluster.step),"circle-opacity":aJ(n.cluster.opacity,n.cluster.step)}},b.clusterCount={type:"symbol",filter:["has","point_count"],paint:{},layout:{"text-field":"{point_count_abbreviated}","text-font":WVe(n),"text-size":12}}),av.extendFlat(v.paint,{"circle-color":k.mcc,"circle-radius":k.mrc,"circle-opacity":k.mo})}if(u&&f&&(v.filter=["!",["has","point_count"]]),(c||l)&&(_.geojson=Ajt(r,t),av.extendFlat(_.layout,{visibility:"visible","icon-image":"{symbol}-15","text-field":"{text}"}),c&&(av.extendFlat(_.layout,{"icon-size":n.marker.size/10}),"angle"in n.marker&&n.marker.angle!=="auto"&&av.extendFlat(_.layout,{"icon-rotate":{type:"identity",property:"angle"},"icon-rotation-alignment":"map"}),_.layout["icon-allow-overlap"]=n.marker.allowoverlap,av.extendFlat(_.paint,{"icon-opacity":n.opacity*n.marker.opacity,"icon-color":n.marker.color})),l)){var E=(n.marker||{}).size,S=_jt(n.textposition,E);av.extendFlat(_.layout,{"text-size":n.textfont.size,"text-anchor":S.anchor,"text-offset":S.offset,"text-font":WVe(n)}),av.extendFlat(_.paint,{"text-color":n.textfont.color,"text-opacity":n.opacity})}return b};function Xz(e){return{type:e,geojson:Zz.makeBlank(),layout:{visibility:"none"},filter:null,paint:{}}}function Tjt(e){var t=e[0].trace,r=t.marker,n=t.selectedpoints,i=av.isArrayOrTypedArray(r.color),a=av.isArrayOrTypedArray(r.size),o=av.isArrayOrTypedArray(r.opacity),s;function l(E){return t.opacity*E}function u(E){return E/2}var c;i&&(jVe.hasColorscale(t,"marker")?c=jVe.makeColorScaleFuncFromTrace(r):c=av.identity);var f;a&&(f=mjt(t));var h;o&&(h=function(E){var S=XVe(E)?+av.constrain(E,0,1):0;return l(S)});var d=[];for(s=0;s<e.length;s++){var v=e[s],_=v.lonlat;if(!ZVe(_)){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:_},properties:b})}}var p;if(n)for(p=gjt.makeSelectedPointStyleFns(t),s=0;s<d.length;s++){var k=d[s].properties;p.selectedOpacityFn&&(k.mo=l(p.selectedOpacityFn(k))),p.selectedColorFn&&(k.mcc=p.selectedColorFn(k)),p.selectedSizeFn&&(k.mrc=p.selectedSizeFn(k))}return{geojson:{type:"FeatureCollection",features:d},mcc:i||p&&p.selectedColorFn?{type:"identity",property:"mcc"}:r.color,mrc:a||p&&p.selectedSizeFn?{type:"identity",property:"mrc"}:u(r.size),mo:o||p&&p.selectedOpacityFn?{type:"identity",property:"mo"}:l(r.opacity)}}function Ajt(e,t){for(var r=t._fullLayout,n=e[0].trace,i=n.marker||{},a=i.symbol,o=i.angle,s=a!=="circle"?nJ(a):Kz,l=o!=="auto"?nJ(o,!0):Kz,u=Yz.hasText(n)?nJ(n.text):Kz,c=[],f=0;f<e.length;f++){var h=e[f];if(!ZVe(h.lonlat)){var d=n.texttemplate,v;if(d){var _=Array.isArray(d)?d[f]||"":d,b=n._module.formatLabels(h,n,r),p={};xjt(p,n,h.i),v=av.texttemplateString({data:[p,h,n._meta],fallback:n.texttemplatefallback,labels:b,locale:r._d3locale,template:_})}else v=u(f);v&&(v=v.replace(bjt,"").replace(wjt,`
`)),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 nJ(e,t){return av.isArrayOrTypedArray(e)?t?function(r){return XVe(e[r])?+e[r]:0}:function(r){return e[r]}:e?function(){return e}:Kz}function Kz(){return""}function ZVe(e){return e[0]===pjt}function aJ(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 WVe(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"),yjt(s)||(s=r);var l=s.split(", ");return l}});var eGe=ye((pxr,QVe)=>{"use strict";var Sjt=Dr(),JVe=KVe(),S5=c1().traceLayerPrefix,rg={cluster:["cluster","clusterCount","circle"],nonCluster:["fill","line","circle","symbol"]};function $Ve(e,t,r,n){this.type="scattermapbox",this.subplot=e,this.uid=t,this.clusterEnabled=r,this.isHidden=n,this.sourceIds={fill:"source-"+t+"-fill",line:"source-"+t+"-line",circle:"source-"+t+"-circle",symbol:"source-"+t+"-symbol",cluster:"source-"+t+"-circle",clusterCount:"source-"+t+"-circle"},this.layerIds={fill:S5+t+"-fill",line:S5+t+"-line",circle:S5+t+"-circle",symbol:S5+t+"-symbol",cluster:S5+t+"-cluster",clusterCount:S5+t+"-cluster-count"},this.below=null}var Gk=$Ve.prototype;Gk.addSource=function(e,t,r){var n={type:"geojson",data:t.geojson};r&&r.enabled&&Sjt.extendFlat(n,{cluster:!0,clusterMaxZoom:r.maxzoom});var i=this.subplot.map.getSource(this.sourceIds[e]);i?i.setData(t.geojson):this.subplot.map.addSource(this.sourceIds[e],n)};Gk.setSourceData=function(e,t){this.subplot.map.getSource(this.sourceIds[e]).setData(t.geojson)};Gk.addLayer=function(e,t,r){var n={type:t.type,id:this.layerIds[e],source:this.sourceIds[e],layout:t.layout,paint:t.paint};t.filter&&(n.filter=t.filter);for(var i=this.layerIds[e],a,o=this.subplot.getMapLayers(),s=0;s<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)};Gk.update=function(t){var r=t[0].trace,n=this.subplot,i=n.map,a=JVe(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 S=rg.cluster,L=0;L<S.length;L++){var x=S[L],C=a[x];u.addLayer(x,C,o)}}function f(E){for(var S=rg.cluster,L=S.length-1;L>=0;L--){var x=S[L];i.removeLayer(u.layerIds[x])}E||i.removeSource(u.sourceIds.circle)}function h(E){for(var S=rg.nonCluster,L=0;L<S.length;L++){var x=S[L],C=a[x];E||u.addSource(x,C),u.addLayer(x,C,o)}}function d(E){for(var S=rg.nonCluster,L=S.length-1;L>=0;L--){var x=S[L];i.removeLayer(u.layerIds[x]),E||i.removeSource(u.sourceIds[x])}}function v(E){l?f(E):d(E)}function _(E){s?c(E):h(E)}function b(){for(var E=s?rg.cluster:rg.nonCluster,S=0;S<E.length;S++){var L=E[S],x=a[L];x&&(n.setOptions(u.layerIds[L],"setLayoutProperty",x.layout),x.layout.visibility==="visible"&&(L!=="cluster"&&u.setSourceData(L,x),n.setOptions(u.layerIds[L],"setPaintProperty",x.paint)))}}var p=this.isHidden,k=r.visible!==!0;k?p||v():p?k||_():l!==s?(v(),_()):(this.below!==o&&(v(!0),_(!0)),b()),this.clusterEnabled=s,this.isHidden=k,this.below=o,t[0].trace._glTrace=this};Gk.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])}};QVe.exports=function(t,r){var n=r[0].trace,i=n.cluster&&n.cluster.enabled,a=n.visible!==!0,o=new $Ve(t,n.uid,i,a),s=JVe(t.gd,r),l=o.below=t.belowLookup["trace-"+n.uid],u,c,f;if(i)for(o.addSource("circle",s.circle,n.cluster),u=0;u<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 Jz=ye((gxr,rGe)=>{"use strict";var Mjt=vf(),oJ=Dr(),Ejt=cT(),kjt=oJ.fillText,Cjt=fs().BADNUM,Ljt=c1().traceLayerPrefix;function Pjt(e,t,r){var n=e.cd,i=n[0].trace,a=e.xa,o=e.ya,s=e.subplot,l=[],u=Ljt+i.uid+"-circle",c=i.cluster&&i.cluster.enabled;if(c){var f=s.map.queryRenderedFeatures(null,{layers:[u]});l=f.map(function(M){return M.id})}var h=t>=0?Math.floor((t+180)/360):Math.ceil((t-180)/360),d=h*360,v=t-d;function _(M){var g=M.lonlat;if(g[0]===Cjt||c&&l.indexOf(M.i+1)===-1)return 1/0;var P=oJ.modHalf(g[0],360),T=g[1],z=s.project([P,T]),O=z.x-a.c2p([v,T]),V=z.y-o.c2p([P,r]),G=Math.max(3,M.mrc||0);return Math.max(Math.sqrt(O*O+V*V)-G,1-3/G)}if(Mjt.getClosest(n,_,e),e.index!==!1){var b=n[e.index],p=b.lonlat,k=[oJ.modHalf(p[0],360)+d,p[1]],E=a.c2p(k),S=o.c2p(k),L=b.mrc||1;e.x0=E-L,e.x1=E+L,e.y0=S-L,e.y1=S+L;var x={};x[i.subplot]={_subplot:s};var C=i._module.formatLabels(b,i,x);return e.lonLabel=C.lonLabel,e.latLabel=C.latLabel,e.color=Ejt(i,b),e.extraText=tGe(i,b,n[0].t.labels),e.hovertemplate=i.hovertemplate,[e]}}function tGe(e,t,r){if(e.hovertemplate)return;var n=t.hi||e.hoverinfo,i=n.split("+"),a=i.indexOf("all")!==-1,o=i.indexOf("lon")!==-1,s=i.indexOf("lat")!==-1,l=t.lonlat,u=[];function c(f){return f+"\xB0"}return a||o&&s?u.push("("+c(l[1])+", "+c(l[0])+")"):o?u.push(r.lon+c(l[0])):s&&u.push(r.lat+c(l[1])),(a||i.indexOf("text")!==-1)&&kjt(t,e,u),u.join("<br>")}rGe.exports={hoverPoints:Pjt,getExtraText:tGe}});var nGe=ye((mxr,iGe)=>{"use strict";iGe.exports=function(t,r){return t.lon=r.lon,t.lat=r.lat,t}});var oGe=ye((yxr,aGe)=>{"use strict";var Ijt=Dr(),Rjt=Ru(),Djt=fs().BADNUM;aGe.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=[],s=n[0].trace,l;if(!Rjt.hasMarkers(s))return[];if(r===!1)for(l=0;l<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]!==Djt){var f=[Ijt.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 uJ=ye((sJ,lJ)=>{(function(e,t){typeof sJ=="object"&&typeof lJ!="undefined"?lJ.exports=t():(e=e||self,e.mapboxgl=t())})(sJ,function(){"use strict";var e,t,r;function n(i,a){if(!e)e=a;else if(!t)t=a;else{var o="var sharedChunk = {}; ("+e+")(sharedChunk); ("+t+")(sharedChunk);",s={};e(s),r=a(s),typeof window!="undefined"&&(r.workerUrl=window.URL.createObjectURL(new Blob([o],{type:"text/javascript"})))}}return n(["exports"],function(i){"use strict";function a(m,y){return y={exports:{}},m(y,y.exports),y.exports}var o="1.13.4",s=l;function l(m,y,I,U){this.cx=3*m,this.bx=3*(I-m)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*y,this.by=3*(U-y)-this.cy,this.ay=1-this.cy-this.by,this.p1x=m,this.p1y=U,this.p2x=I,this.p2y=U}l.prototype.sampleCurveX=function(m){return((this.ax*m+this.bx)*m+this.cx)*m},l.prototype.sampleCurveY=function(m){return((this.ay*m+this.by)*m+this.cy)*m},l.prototype.sampleCurveDerivativeX=function(m){return(3*this.ax*m+2*this.bx)*m+this.cx},l.prototype.solveCurveX=function(m,y){typeof y=="undefined"&&(y=1e-6);var I,U,$,ae,he;for($=m,he=0;he<8;he++){if(ae=this.sampleCurveX($)-m,Math.abs(ae)<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 _(m,y,I,U){var $=new s(m,y,I,U);return function(ae){return $.solve(ae)}}var b=_(.25,.1,.25,1);function p(m,y,I){return Math.min(I,Math.max(y,m))}function k(m,y,I){var U=I-y,$=((m-y)%U+U)%U+y;return $===y?I:$}function E(m,y,I){if(!m.length)return I(null,[]);var U=m.length,$=new Array(m.length),ae=null;m.forEach(function(he,Oe){y(he,function(rt,gt){rt&&(ae=rt),$[Oe]=gt,--U===0&&I(ae,$)})})}function S(m){var y=[];for(var I in m)y.push(m[I]);return y}function L(m,y){var I=[];for(var U in m)U in y||I.push(U);return I}function x(m){for(var y=[],I=arguments.length-1;I-- >0;)y[I]=arguments[I+1];for(var U=0,$=y;U<$.length;U+=1){var ae=$[U];for(var he in ae)m[he]=ae[he]}return m}function C(m,y){for(var I={},U=0;U<y.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 j(m){return Array.isArray(m)?m.map(j):typeof m=="object"&&m?G(m,j):m}function N(m,y){for(var I=0;I<m.length;I++)if(y.indexOf(m[I])>=0)return!0;return!1}var H={};function te(m){H[m]||(typeof console!="undefined"&&console.warn(m),H[m]=!0)}function oe(m,y,I){return(I.y-m.y)*(y.x-m.x)>(y.y-m.y)*(I.x-m.x)}function _e(m){for(var y=0,I=0,U=m.length,$=U-1,ae=void 0,he=void 0;I<U;$=I++)ae=m[I],he=m[$],y+=(he.x-ae.x)*(ae.y+he.y);return y}function Ee(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 Ce(){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 Fe(m){return decodeURIComponent(f.atob(m).split("").map(function(y){return"%"+("00"+y.charCodeAt(0).toString(16)).slice(-2)}).join(""))}var Pe=f.performance&&f.performance.now?f.performance.now.bind(f.performance):Date.now.bind(Date),ge=f.requestAnimationFrame||f.mozRequestAnimationFrame||f.webkitRequestAnimationFrame||f.msRequestAnimationFrame,Re=f.cancelAnimationFrame||f.mozCancelAnimationFrame||f.webkitCancelAnimationFrame||f.msCancelAnimationFrame,ce,Ze,ut={now:Pe,frame:function(y){var I=ge(y);return{cancel:function(){return Re(I)}}},getImageData:function(y,I){I===void 0&&(I=0);var U=f.document.createElement("canvas"),$=U.getContext("2d");if(!$)throw new Error("failed to create canvas 2d context");return U.width=y.width,U.height=y.height,$.drawImage(y,0,0,y.width,y.height),$.getImageData(-I,-I,y.width+2*I,y.height+2*I)},resolveURL:function(y){return ce||(ce=f.document.createElement("a")),ce.href=y,ce.href},hardwareConcurrency:f.navigator&&f.navigator.hardwareConcurrency||4,get devicePixelRatio(){return f.devicePixelRatio},get prefersReducedMotion(){return f.matchMedia?(Ze==null&&(Ze=f.matchMedia("(prefers-reduced-motion: reduce)")),Ze.matches):!1}},pt={API_URL:"https://api.mapbox.com",get EVENTS_URL(){return this.API_URL?this.API_URL.indexOf("https://api.mapbox.cn")===0?"https://events.mapbox.cn/events/v2":this.API_URL.indexOf("https://api.mapbox.com")===0?"https://events.mapbox.com/events/v2":null:null},FEEDBACK_URL:"https://apps.mapbox.com/feedback",REQUIRE_ACCESS_TOKEN:!0,ACCESS_TOKEN:null,MAX_PARALLEL_IMAGE_REQUESTS:16},Zt={supported:!1,testSupport:Jt},st,lt=!1,Gt,Nt=!1;f.document&&(Gt=f.document.createElement("img"),Gt.onload=function(){st&&sr(st),st=null,Nt=!0},Gt.onerror=function(){lt=!0,st=null},Gt.src="data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA=");function Jt(m){lt||!Gt||(Nt?sr(m):st=m)}function sr(m){var y=m.createTexture();m.bindTexture(m.TEXTURE_2D,y);try{if(m.texImage2D(m.TEXTURE_2D,0,m.RGBA,m.RGBA,m.UNSIGNED_BYTE,Gt),m.isContextLost())return;Zt.supported=!0}catch(I){}m.deleteTexture(y),lt=!0}var wr="01";function cr(){for(var m="1",y="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ",I="",U=0;U<10;U++)I+=y[Math.floor(Math.random()*62)];var $=12*60*60*1e3,ae=[m,wr,I].join(""),he=Date.now()+$;return{token:ae,tokenExpiresAt:he}}var $e=function(y,I){this._transformRequestFn=y,this._customAccessToken=I,this._createSkuToken()};$e.prototype._createSkuToken=function(){var y=cr();this._skuToken=y.token,this._skuTokenExpiresAt=y.tokenExpiresAt},$e.prototype._isSkuTokenExpired=function(){return Date.now()>this._skuTokenExpiresAt},$e.prototype.transformRequest=function(y,I){return this._transformRequestFn?this._transformRequestFn(y,I)||{url:y}:{url:y}},$e.prototype.normalizeStyleURL=function(y,I){if(!St(y))return y;var U=er(y);return U.path="/styles/v1"+U.path,this._makeAPIURL(U,this._customAccessToken||I)},$e.prototype.normalizeGlyphsURL=function(y,I){if(!St(y))return y;var U=er(y);return U.path="/fonts/v1"+U.path,this._makeAPIURL(U,this._customAccessToken||I)},$e.prototype.normalizeSourceURL=function(y,I){if(!St(y))return y;var U=er(y);return U.path="/v4/"+U.authority+".json",U.params.push("secure"),this._makeAPIURL(U,this._customAccessToken||I)},$e.prototype.normalizeSpriteURL=function(y,I,U,$){var ae=er(y);return St(y)?(ae.path="/styles/v1"+ae.path+"/sprite"+I+U,this._makeAPIURL(ae,this._customAccessToken||$)):(ae.path+=""+I+U,lr(ae))},$e.prototype.normalizeTileURL=function(y,I){if(this._isSkuTokenExpired()&&this._createSkuToken(),y&&!St(y))return y;var U=er(y),$=/(\.(png|jpg)\d*)(?=$)/,ae=/^.+\/v4\//,he=ut.devicePixelRatio>=2||I===512?"@2x":"",Oe=Zt.supported?".webp":"$1";U.path=U.path.replace($,""+he+Oe),U.path=U.path.replace(ae,"/"),U.path="/v4"+U.path;var rt=this._customAccessToken||It(U.params)||pt.ACCESS_TOKEN;return pt.REQUIRE_ACCESS_TOKEN&&rt&&this._skuToken&&U.params.push("sku="+this._skuToken),this._makeAPIURL(U,rt)},$e.prototype.canonicalizeTileURL=function(y,I){var U="/v4/",$=/\.[\w]+$/,ae=er(y);if(!ae.path.match(/(^\/v4\/)/)||!ae.path.match($))return y;var he="mapbox://tiles/";he+=ae.path.replace(U,"");var Oe=ae.params;return I&&(Oe=Oe.filter(function(rt){return!rt.match(/^access_token=/)})),Oe.length&&(he+="?"+Oe.join("&")),he},$e.prototype.canonicalizeTileset=function(y,I){for(var U=I?St(I):!1,$=[],ae=0,he=y.tiles||[];ae<he.length;ae+=1){var Oe=he[ae];Vt(Oe)?$.push(this.canonicalizeTileURL(Oe,U)):$.push(Oe)}return $},$e.prototype._makeAPIURL=function(y,I){var U="See https://www.mapbox.com/api-documentation/#access-tokens-and-token-scopes",$=er(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 St(m){return m.indexOf("mapbox:")===0}var Qt=/^((https?:)?\/\/)?([^\/]+\.)?mapbox\.c(n|om)(\/|\?|$)/i;function Vt(m){return Qt.test(m)}function _t(m){return m.indexOf("sku=")>0&&Vt(m)}function It(m){for(var y=0,I=m;y<I.length;y+=1){var U=I[y],$=U.match(/^access_token=(.*)$/);if($)return $[1]}return null}var mt=/^(\w+):\/\/([^/?]*)(\/[^?]+)?\??(.+)?/;function er(m){var y=m.match(mt);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 Lr(m){if(!m)return null;var y=m.split(".");if(!y||y.length!==3)return null;try{var I=JSON.parse(Fe(y[1]));return I}catch(U){return null}}var ti=function(y){this.type=y,this.anonId=null,this.eventData={},this.queue=[],this.pendingRequest=null};ti.prototype.getStorageKey=function(y){var I=Lr(pt.ACCESS_TOKEN),U="";return I&&I.u?U=Ae(I.u):U=pt.ACCESS_TOKEN||"",y?Tr+"."+y+":"+U:Tr+":"+U},ti.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){te("Unable to read from LocalStorage")}},ti.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($){te("Unable to write to LocalStorage")}},ti.prototype.processRequests=function(y){},ti.prototype.postEvent=function(y,I,U,$){var ae=this;if(pt.EVENTS_URL){var he=er(pt.EVENTS_URL);he.params.push("access_token="+($||pt.ACCESS_TOKEN||""));var Oe={event:this.type,created:new Date(y).toISOString(),sdkIdentifier:"mapbox-gl-js",sdkVersion:o,skuId:wr,userId:this.anonId},rt=I?x(Oe,I):Oe,gt={url:lr(he),headers:{"Content-Type":"text/plain"},body:JSON.stringify([rt])};this.pendingRequest=Qr(gt,function(Et){ae.pendingRequest=null,U(Et),ae.saveEventData(),ae.processRequests($)})}},ti.prototype.queueRequest=function(y,I){this.queue.push(y),this.processRequests(I)};var Br=function(m){function y(){m.call(this,"map.load"),this.success={},this.skuToken=""}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.postMapLoadEvent=function(U,$,ae,he){this.skuToken=ae,(pt.EVENTS_URL&&he||pt.ACCESS_TOKEN&&Array.isArray(U)&&U.some(function(Oe){return St(Oe)||Vt(Oe)}))&&this.queueRequest({id:$,timestamp:Date.now()},he)},y.prototype.processRequests=function(U){var $=this;if(!(this.pendingRequest||this.queue.length===0)){var ae=this.queue.shift(),he=ae.id,Oe=ae.timestamp;he&&this.success[he]||(this.anonId||this.fetchEventData(),z(this.anonId)||(this.anonId=P()),this.postEvent(Oe,{skuToken:this.skuToken},function(rt){rt||he&&($.success[he]=!0)},U))}},y}(ti),Vr=function(m){function y(I){m.call(this,"appUserTurnstile"),this._customAccessToken=I}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.postTurnstileEvent=function(U,$){pt.EVENTS_URL&&pt.ACCESS_TOKEN&&Array.isArray(U)&&U.some(function(ae){return St(ae)||Vt(ae)})&&this.queueRequest(Date.now(),$)},y.prototype.processRequests=function(U){var $=this;if(!(this.pendingRequest||this.queue.length===0)){(!this.anonId||!this.eventData.lastSuccess||!this.eventData.tokenU)&&this.fetchEventData();var ae=Lr(pt.ACCESS_TOKEN),he=ae?ae.u:pt.ACCESS_TOKEN,Oe=he!==this.eventData.tokenU;z(this.anonId)||(this.anonId=P(),Oe=!0);var rt=this.queue.shift();if(this.eventData.lastSuccess){var gt=new Date(this.eventData.lastSuccess),Et=new Date(rt),or=(rt-this.eventData.lastSuccess)/(24*60*60*1e3);Oe=Oe||or>=1||or<-1||gt.getDate()!==Et.getDate()}else Oe=!0;if(!Oe)return this.processRequests();this.postEvent(rt,{"enabled.telemetry":!1},function(_r){_r||($.eventData.lastSuccess=rt,$.eventData.tokenU=he)},U)}},y}(ti),dt=new Vr,Ge=dt.postTurnstileEvent.bind(dt),Je=new Br,je=Je.postMapLoadEvent.bind(Je),tt="mapbox-tiles",xt=500,Ie=50,xe=1e3*60*7,ke;function vt(){f.caches&&!ke&&(ke=f.caches.open(tt))}var ir;function ar(m,y){if(ir===void 0)try{new Response(new ReadableStream),ir=!0}catch(I){ir=!1}ir?y(m.body):m.blob().then(y)}function vr(m,y,I){if(vt(),!!ke){var U={status:y.status,statusText:y.statusText,headers:new f.Headers};y.headers.forEach(function(he,Oe){return U.headers.set(Oe,he)});var $=me(y.headers.get("Cache-Control")||"");if(!$["no-store"]){$["max-age"]&&U.headers.set("Expires",new Date(I+$["max-age"]*1e3).toUTCString());var ae=new Date(U.headers.get("Expires")).getTime()-I;ae<xe||ar(y,function(he){var Oe=new f.Response(he,U);vt(),ke&&ke.then(function(rt){return rt.put(ii(m.url),Oe)}).catch(function(rt){return te(rt.message)})})}}}function ii(m){var y=m.indexOf("?");return y<0?m:m.slice(0,y)}function pi(m,y){if(vt(),!ke)return y(null);var I=ii(m.url);ke.then(function(U){U.match(I).then(function($){var ae=$r($);U.delete(I),ae&&U.put(I,$.clone()),y(null,$,ae)}).catch(y)}).catch(y)}function $r(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 di=1/0;function ji(m){di++,di>Ie&&(m.getActor().send("enforceCacheSizeLimit",xt),di=0)}function In(m){vt(),ke&&ke.then(function(y){y.keys().then(function(I){for(var U=0;U<I.length-m;U++)y.delete(I[U])})})}function wi(m){var y=f.caches.delete(tt);m&&y.catch(m).then(function(){return m()})}function On(m,y){xt=m,Ie=y}var qn;function Fn(){return qn==null&&(qn=f.OffscreenCanvas&&new f.OffscreenCanvas(1,1).getContext("2d")&&typeof f.createImageBitmap=="function"),qn}var ra={Unknown:"Unknown",Style:"Style",Source:"Source",Tile:"Tile",Glyphs:"Glyphs",SpriteImage:"SpriteImage",SpriteJSON:"SpriteJSON",Image:"Image"};typeof Object.freeze=="function"&&Object.freeze(ra);var la=function(m){function y(I,U,$){U===401&&Vt($)&&(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),Ut=Ce()?function(){return self.worker&&self.worker.referrer}:function(){return(f.location.protocol==="blob:"?f.parent:f).location.href},wt=function(m){return/^file:/.test(m)||/^file:/.test(Ut())&&!/^\w+:/.test(m)};function rr(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:Ut(),signal:I.signal}),$=!1,ae=!1,he=_t(U.url);m.type==="json"&&U.headers.set("Accept","application/json");var Oe=function(gt,Et,or){if(!ae){if(gt&&gt.message!=="SecurityError"&&te(gt),Et&&or)return rt(Et);var _r=Date.now();f.fetch(U).then(function(pr){if(pr.ok){var Fr=he?pr.clone():null;return rt(pr,Fr,_r)}else return y(new la(pr.statusText,pr.status,m.url))}).catch(function(pr){pr.code!==20&&y(new Error(pr.message))})}},rt=function(gt,Et,or){(m.type==="arrayBuffer"?gt.arrayBuffer():m.type==="json"?gt.json():gt.text()).then(function(_r){ae||(Et&&or&&vr(U,Et,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?pi(U,Oe):Oe(null,null),{cancel:function(){ae=!0,$||I.abort()}}}function nr(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 la(I.statusText,I.status,m.url))},I.send(m.body),{cancel:function(){return I.abort()}}}var Er=function(m,y){if(!wt(m.url)){if(f.fetch&&f.Request&&f.AbortController&&f.Request.prototype.hasOwnProperty("signal"))return rr(m,y);if(Ce()&&self.worker&&self.worker.actor){var I=!0;return self.worker.actor.send("getResource",m,y,void 0,I)}}return nr(m,y)},Xr=function(m,y){return Er(x(m,{type:"json"}),y)},ri=function(m,y){return Er(x(m,{type:"arrayBuffer"}),y)},Qr=function(m,y){return Er(x(m,{method:"POST"}),y)};function Oi(m){var y=f.document.createElement("a");return y.href=m,y.protocol===f.document.location.protocol&&y.host===f.document.location.host}var $i="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVQYV2NgAAIAAAUAAarVyFEAAAAASUVORK5CYII=";function tn(m,y,I,U){var $=new f.Image,ae=f.URL;$.onload=function(){y(null,$),ae.revokeObjectURL($.src),$.onload=null,f.requestAnimationFrame(function(){$.src=$i})},$.onerror=function(){return y(new Error("Could not load image. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."))};var he=new f.Blob([new Uint8Array(m)],{type:"image/png"});$.cacheControl=I,$.expires=U,$.src=m.byteLength?ae.createObjectURL(he):$i}function fn(m,y){var I=new f.Blob([new Uint8Array(m)],{type:"image/png"});f.createImageBitmap(I).then(function(U){y(null,U)}).catch(function(U){y(new Error("Could not load image because of "+U.message+". Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."))})}var yn,Sn,Ba=function(){yn=[],Sn=0};Ba();var ua=function(m,y){if(Zt.supported&&(m.headers||(m.headers={}),m.headers.accept="image/webp,*/*"),Sn>=pt.MAX_PARALLEL_IMAGE_REQUESTS){var I={requestParameters:m,callback:y,cancelled:!1,cancel:function(){this.cancelled=!0}};return yn.push(I),I}Sn++;var U=!1,$=function(){if(!U)for(U=!0,Sn--;yn.length&&Sn<pt.MAX_PARALLEL_IMAGE_REQUESTS;){var he=yn.shift(),Oe=he.requestParameters,rt=he.callback,gt=he.cancelled;gt||(he.cancel=ua(Oe,rt).cancel)}},ae=ri(m,function(he,Oe,rt,gt){$(),he?y(he):Oe&&(Fn()?fn(Oe,y):tn(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");Oi(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={}),x(this,I),this.type=y},da=function(m){function y(I,U){U===void 0&&(U={}),m.call(this,"error",x({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,Et=rt;gt<Et.length;gt+=1){var or=Et[gt];Fa(U,or,this._oneTimeListeners),or.call(this,y)}var _r=this._eventedParent;_r&&(x(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 Ha=8,vo={version:{required:!0,type:"enum",values:[8]},name:{type:"string"},metadata:{type:"*"},center:{type:"array",value:"number"},zoom:{type:"number"},bearing:{type:"number",default:0,period:360,units:"degrees"},pitch:{type:"number",default:0,units:"degrees"},light:{type:"light"},sources:{required:!0,type:"sources"},sprite:{type:"string"},glyphs:{type:"string"},transition:{type:"transition"},layers:{required:!0,type:"array",value:"layer"}},jn={"*":{type:"source"}},Mt=["source_vector","source_raster","source_raster_dem","source_geojson","source_video","source_image"],kr={type:{required:!0,type:"enum",values:{vector:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},attribution:{type:"string"},promoteId:{type:"promoteId"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},Jr={type:{required:!0,type:"enum",values:{raster:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},attribution:{type:"string"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},vi={type:{required:!0,type:"enum",values:{"raster-dem":{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},attribution:{type:"string"},encoding:{type:"enum",values:{terrarium:{},mapbox:{}},default:"mapbox"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},hn={type:{required:!0,type:"enum",values:{geojson:{}}},data:{type:"*"},maxzoom:{type:"number",default:18},attribution:{type:"string"},buffer:{type:"number",default:128,maximum:512,minimum:0},filter:{type:"*"},tolerance:{type:"number",default:.375},cluster:{type:"boolean",default:!1},clusterRadius:{type:"number",default:50,minimum:0},clusterMaxZoom:{type:"number"},clusterMinPoints:{type:"number"},clusterProperties:{type:"*"},lineMetrics:{type:"boolean",default:!1},generateId:{type:"boolean",default:!1},promoteId:{type:"promoteId"}},An={type:{required:!0,type:"enum",values:{video:{}}},urls:{required:!0,type:"array",value:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},Mn={type:{required:!0,type:"enum",values:{image:{}}},url:{required:!0,type:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},Li={id:{type:"string",required:!0},type:{type:"enum",values:{fill:{},line:{},symbol:{},circle:{},heatmap:{},"fill-extrusion":{},raster:{},hillshade:{},background:{}},required:!0},metadata:{type:"*"},source:{type:"string"},"source-layer":{type:"string"},minzoom:{type:"number",minimum:0,maximum:24},maxzoom:{type:"number",minimum:0,maximum:24},filter:{type:"filter"},layout:{type:"layout"},paint:{type:"paint"}},_n=["layout_fill","layout_line","layout_circle","layout_heatmap","layout_fill-extrusion","layout_symbol","layout_raster","layout_hillshade","layout_background"],ya={visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},Jn={"fill-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},Ma={"circle-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},_o={visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},No={"line-cap":{type:"enum",values:{butt:{},round:{},square:{}},default:"butt",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-join":{type:"enum",values:{bevel:{},round:{},miter:{}},default:"miter",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"line-miter-limit":{type:"number",default:2,requires:[{"line-join":"miter"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-round-limit":{type:"number",default:1.05,requires:[{"line-join":"round"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},po={"symbol-placement":{type:"enum",values:{point:{},line:{},"line-center":{}},default:"point",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-spacing":{type:"number",default:250,minimum:1,units:"pixels",requires:[{"symbol-placement":"line"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"symbol-avoid-edges":{type:"boolean",default:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"symbol-z-order":{type:"enum",values:{auto:{},"viewport-y":{},source:{}},default:"auto",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-allow-overlap":{type:"boolean",default:!1,requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-ignore-placement":{type:"boolean",default:!1,requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-optional":{type:"boolean",default:!1,requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-rotation-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-size":{type:"number",default:1,minimum:0,units:"factor of the original icon size",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-text-fit":{type:"enum",values:{none:{},width:{},height:{},both:{}},default:"none",requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-text-fit-padding":{type:"array",value:"number",length:4,default:[0,0,0,0],units:"pixels",requires:["icon-image","text-field",{"icon-text-fit":["both","width","height"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-image":{type:"resolvedImage",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-padding":{type:"number",default:2,minimum:0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-keep-upright":{type:"boolean",default:!1,requires:["icon-image",{"icon-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-offset":{type:"array",value:"number",length:2,default:[0,0],requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotation-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-field":{type:"formatted",default:"",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-font":{type:"array",value:"string",default:["Open Sans Regular","Arial Unicode MS Regular"],requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-size":{type:"number",default:16,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-width":{type:"number",default:10,minimum:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-line-height":{type:"number",default:1.2,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-letter-spacing":{type:"number",default:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-justify":{type:"enum",values:{auto:{},left:{},center:{},right:{}},default:"center",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-radial-offset":{type:"number",units:"ems",default:0,requires:["text-field"],"property-type":"data-driven",expression:{interpolated:!0,parameters:["zoom","feature"]}},"text-variable-anchor":{type:"array",value:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["text-field",{"!":"text-variable-anchor"}],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-angle":{type:"number",default:45,units:"degrees",requires:["text-field",{"symbol-placement":["line","line-center"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-writing-mode":{type:"array",value:"enum",values:{horizontal:{},vertical:{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-padding":{type:"number",default:2,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-keep-upright":{type:"boolean",default:!0,requires:["text-field",{"text-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-transform":{type:"enum",values:{none:{},uppercase:{},lowercase:{}},default:"none",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-offset":{type:"array",value:"number",units:"ems",length:2,default:[0,0],requires:["text-field",{"!":"text-radial-offset"}],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-allow-overlap":{type:"boolean",default:!1,requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-ignore-placement":{type:"boolean",default:!1,requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-optional":{type:"boolean",default:!1,requires:["text-field","icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},Lo={visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},ko={visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},Ds={type:"array",value:"*"},Fs={type:"enum",values:{"==":{},"!=":{},">":{},">=":{},"<":{},"<=":{},in:{},"!in":{},all:{},any:{},none:{},has:{},"!has":{},within:{}}},ll={type:"enum",values:{Point:{},LineString:{},Polygon:{}}},ul={type:"array",minimum:0,maximum:24,value:["number","color"],length:2},zl={type:"array",value:"*",minimum:1},us={anchor:{type:"enum",default:"viewport",values:{map:{},viewport:{}},"property-type":"data-constant",transition:!1,expression:{interpolated:!1,parameters:["zoom"]}},position:{type:"array",default:[1.15,210,30],length:3,value:"number","property-type":"data-constant",transition:!0,expression:{interpolated:!0,parameters:["zoom"]}},color:{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},intensity:{type:"number","property-type":"data-constant",default:.5,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0}},il=["paint_fill","paint_line","paint_circle","paint_heatmap","paint_fill-extrusion","paint_symbol","paint_raster","paint_hillshade","paint_background"],As={"fill-antialias":{type:"boolean",default:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-outline-color":{type:"color",transition:!0,requires:[{"!":"fill-pattern"},{"fill-antialias":!0}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"}},cl={"line-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"line-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["line-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-width":{type:"number",default:1,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-gap-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-offset":{type:"number",default:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-dasharray":{type:"array",value:"number",minimum:0,transition:!0,units:"line widths",requires:[{"!":"line-pattern"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"line-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"line-gradient":{type:"color",transition:!1,requires:[{"!":"line-dasharray"},{"!":"line-pattern"},{source:"geojson",has:{lineMetrics:!0}}],expression:{interpolated:!0,parameters:["line-progress"]},"property-type":"color-ramp"}},Ks={"circle-radius":{type:"number",default:5,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-blur":{type:"number",default:0,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"circle-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["circle-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-scale":{type:"enum",values:{map:{},viewport:{}},default:"map",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-alignment":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-stroke-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"}},zs={"heatmap-radius":{type:"number",default:30,minimum:1,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-weight":{type:"number",default:1,minimum:0,transition:!1,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-intensity":{type:"number",default:1,minimum:0,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"heatmap-color":{type:"color",default:["interpolate",["linear"],["heatmap-density"],0,"rgba(0, 0, 255, 0)",.1,"royalblue",.3,"cyan",.5,"lime",.7,"yellow",1,"red"],transition:!1,expression:{interpolated:!0,parameters:["heatmap-density"]},"property-type":"color-ramp"},"heatmap-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},Io={"icon-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-color":{type:"color",default:"#000000",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["icon-image","icon-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-color":{type:"color",default:"#000000",transition:!0,overridable:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["text-field","text-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},ls={"raster-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-hue-rotate":{type:"number",default:0,period:360,transition:!0,units:"degrees",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-min":{type:"number",default:0,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-max":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-saturation":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-contrast":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-resampling":{type:"enum",values:{linear:{},nearest:{}},default:"linear",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"raster-fade-duration":{type:"number",default:300,minimum:0,transition:!1,units:"milliseconds",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},Zl={"hillshade-illumination-direction":{type:"number",default:335,minimum:0,maximum:359,transition:!1,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-illumination-anchor":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-exaggeration":{type:"number",default:.5,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-shadow-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-highlight-color":{type:"color",default:"#FFFFFF",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-accent-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},Su={"background-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"background-pattern"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"background-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"background-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},nc={duration:{type:"number",default:300,minimum:0,units:"milliseconds"},delay:{type:"number",default:0,minimum:0,units:"milliseconds"}},bs={"*":{type:"string"}},Rn={$version:Ha,$root:vo,sources:jn,source:Mt,source_vector:kr,source_raster:Jr,source_raster_dem:vi,source_geojson:hn,source_video:An,source_image:Mn,layer:Li,layout:_n,layout_background:ya,layout_fill:Jn,layout_circle:Ma,layout_heatmap:_o,"layout_fill-extrusion":{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_line:No,layout_symbol:po,layout_raster:Lo,layout_hillshade:ko,filter:Ds,filter_operator:Fs,geometry_type:ll,function:{expression:{type:"expression"},stops:{type:"array",value:"function_stop"},base:{type:"number",default:1,minimum:0},property:{type:"string",default:"$zoom"},type:{type:"enum",values:{identity:{},exponential:{},interval:{},categorical:{}},default:"exponential"},colorSpace:{type:"enum",values:{rgb:{},lab:{},hcl:{}},default:"rgb"},default:{type:"*",required:!1}},function_stop:ul,expression:zl,light:us,paint:il,paint_fill:As,"paint_fill-extrusion":{"fill-extrusion-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-extrusion-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-extrusion-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"fill-extrusion-height":{type:"number",default:0,minimum:0,units:"meters",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-base":{type:"number",default:0,minimum:0,units:"meters",transition:!0,requires:["fill-extrusion-height"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-vertical-gradient":{type:"boolean",default:!0,transition:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},paint_line:cl,paint_circle:Ks,paint_heatmap:zs,paint_symbol:Io,paint_raster:ls,paint_hillshade:Zl,paint_background:Su,transition:nc,"property-type":{"data-driven":{type:"property-type"},"cross-faded":{type:"property-type"},"cross-faded-data-driven":{type:"property-type"},"color-ramp":{type:"property-type"},"data-constant":{type:"property-type"},constant:{type:"property-type"}},promoteId:bs},_a=function(y,I,U,$){this.message=(y?y+": ":"")+U,$&&(this.identifier=$),I!=null&&I.__line__&&(this.line=I.__line__)};function Vu(m){var y=m.key,I=m.value;return I?[new _a(y,I,"constants have been deprecated as of v8")]:[]}function Ol(m){for(var y=[],I=arguments.length-1;I-- >0;)y[I]=arguments[I+1];for(var U=0,$=y;U<$.length;U+=1){var ae=$[U];for(var he in ae)m[he]=ae[he]}return m}function xo(m){return m instanceof Number||m instanceof String||m instanceof Boolean?m.valueOf():m}function Yl(m){if(Array.isArray(m))return m.map(Yl);if(m instanceof Object&&!(m instanceof Number||m instanceof String||m instanceof Boolean)){var y={};for(var I in m)y[I]=Yl(m[I]);return y}return xo(m)}var Ns=function(m){function y(I,U){m.call(this,U),this.message=U,this.key=I}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y}(Error),Hl=function(y,I){I===void 0&&(I=[]),this.parent=y,this.bindings={};for(var U=0,$=I;U<$.length;U+=1){var ae=$[U],he=ae[0],Oe=ae[1];this.bindings[he]=Oe}};Hl.prototype.concat=function(y){return new Hl(this,y)},Hl.prototype.get=function(y){if(this.bindings[y])return this.bindings[y];if(this.parent)return this.parent.get(y);throw new Error(y+" not found in scope.")},Hl.prototype.has=function(y){return this.bindings[y]?!0:this.parent?this.parent.has(y):!1};var ac={kind:"null"},aa={kind:"number"},Oo={kind:"string"},qo={kind:"boolean"},ql={kind:"color"},Pc={kind:"object"},Do={kind:"value"},rf={kind:"error"},Uf={kind:"collator"},pl={kind:"formatted"},Zc={kind:"resolvedImage"};function Kl(m,y){return{kind:"array",itemType:m,N:y}}function Os(m){if(m.kind==="array"){var y=Os(m.itemType);return typeof m.N=="number"?"array<"+y+", "+m.N+">":m.itemType.kind==="value"?"array":"array<"+y+">"}else return m.kind}var yu=[ac,aa,Oo,qo,ql,pl,Pc,Kl(Do),Zc];function oc(m,y){if(y.kind==="error")return null;if(m.kind==="array"){if(y.kind==="array"&&(y.N===0&&y.itemType.kind==="value"||!oc(m.itemType,y.itemType))&&(typeof m.N!="number"||m.N===y.N))return null}else{if(m.kind===y.kind)return null;if(m.kind==="value")for(var I=0,U=yu;I<U.length;I+=1){var $=U[I];if(!oc($,y))return null}}return"Expected "+Os(m)+" but found "+Os(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 Vh=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,Et,or){return or<0?or+=1:or>1&&(or-=1),or*6<1?gt+(Et-gt)*or*6:or*2<1?Et:or*3<2?gt+(Et-gt)*(2/3-or)*6:gt}function rt(gt){var Et=gt.replace(/ /g,"").toLowerCase();if(Et in I)return I[Et].slice();if(Et[0]==="#"){if(Et.length===4){var or=parseInt(Et.substr(1),16);return or>=0&&or<=4095?[(or&3840)>>4|(or&3840)>>8,or&240|(or&240)>>4,or&15|(or&15)<<4,1]:null}else if(Et.length===7){var or=parseInt(Et.substr(1),16);return or>=0&&or<=16777215?[(or&16711680)>>16,(or&65280)>>8,or&255,1]:null}return null}var _r=Et.indexOf("("),pr=Et.indexOf(")");if(_r!==-1&&pr+1===Et.length){var Fr=Et.substr(0,_r),oi=Et.substr(_r+1,pr-(_r+1)).split(","),Hi=1;switch(Fr){case"rgba":if(oi.length!==4)return null;Hi=he(oi.pop());case"rgb":return oi.length!==3?null:[ae(oi[0]),ae(oi[1]),ae(oi[2]),Hi];case"hsla":if(oi.length!==4)return null;Hi=he(oi.pop());case"hsl":if(oi.length!==3)return null;var Ai=(parseFloat(oi[0])%360+360)%360/360,bn=he(oi[1]),nn=he(oi[2]),xn=nn<=.5?nn*(bn+1):nn+bn-nn*bn,Pn=nn*2-xn;return[U(Oe(Pn,xn,Ai+1/3)*255),U(Oe(Pn,xn,Ai)*255),U(Oe(Pn,xn,Ai-1/3)*255),Hi];default:return null}}return null}try{y.parseCSSColor=rt}catch(gt){}}),Lf=Vh.parseCSSColor,cs=function(y,I,U,$){$===void 0&&($=1),this.r=y,this.g=I,this.b=U,this.a=$};cs.parse=function(y){if(y){if(y instanceof cs)return y;if(typeof y=="string"){var I=Lf(y);if(I)return new cs(I[0]/255*I[3],I[1]/255*I[3],I[2]/255*I[3],I[3])}}},cs.prototype.toString=function(){var y=this.toArray(),I=y[0],U=y[1],$=y[2],ae=y[3];return"rgba("+Math.round(I)+","+Math.round(U)+","+Math.round($)+","+ae+")"},cs.prototype.toArray=function(){var y=this,I=y.r,U=y.g,$=y.b,ae=y.a;return ae===0?[0,0,0,0]:[I*255/ae,U*255/ae,$*255/ae,ae]},cs.black=new cs(0,0,0,1),cs.white=new cs(1,1,1,1),cs.transparent=new cs(0,0,0,0),cs.red=new cs(1,0,0,1);var nf=function(y,I,U){y?this.sensitivity=I?"variant":"case":this.sensitivity=I?"accent":"base",this.locale=U,this.collator=new Intl.Collator(this.locale?this.locale:[],{sensitivity:this.sensitivity,usage:"search"})};nf.prototype.compare=function(y,I){return this.collator.compare(y,I)},nf.prototype.resolvedLocale=function(){return new Intl.Collator(this.locale?this.locale:[]).resolvedOptions().locale};var Vf=function(y,I,U,$,ae){this.text=y,this.image=I,this.scale=U,this.fontStack=$,this.textColor=ae},Jl=function(y){this.sections=y};Jl.fromString=function(y){return new Jl([new Vf(y,null,null,null,null)])},Jl.prototype.isEmpty=function(){return this.sections.length===0?!0:!this.sections.some(function(y){return y.text.length!==0||y.image&&y.image.name.length!==0})},Jl.factory=function(y){return y instanceof Jl?y:Jl.fromString(y)},Jl.prototype.toString=function(){return this.sections.length===0?"":this.sections.map(function(y){return y.text}).join("")},Jl.prototype.serialize=function(){for(var y=["format"],I=0,U=this.sections;I<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 fl=function(y){this.name=y.name,this.available=y.available};fl.prototype.toString=function(){return this.name},fl.fromString=function(y){return y?new fl({name:y,available:!1}):null},fl.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 cs)return!0;if(m instanceof nf)return!0;if(m instanceof Jl)return!0;if(m instanceof fl)return!0;if(Array.isArray(m)){for(var y=0,I=m;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 Es(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 cs)return ql;if(m instanceof nf)return Uf;if(m instanceof Jl)return pl;if(m instanceof fl)return Zc;if(Array.isArray(m)){for(var y=m.length,I,U=0,$=m;U<$.length;U+=1){var ae=$[U],he=Es(ae);if(!I)I=he;else{if(I===he)continue;I=Do;break}}return Kl(I||Do,y)}else return Pc}function Hs(m){var y=typeof m;return m===null?"":y==="string"||y==="number"||y==="boolean"?String(m):m instanceof cs||m instanceof Jl||m instanceof fl?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],$=Es(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 cs?["rgba"].concat(this.value.toArray()):this.value instanceof Jl?this.value.serialize():this.value};var ps=function(y){this.name="ExpressionEvaluationError",this.message=y};ps.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 Et=I.parse(y[U],U,Do);if(!Et)return null;gt.push(Et)}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,Es(U));if($){if(I===this.args.length-1)throw new ps("Expected value to be of type "+Os(this.type)+", but found "+Os(Es(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=pl,this.sections=y};Gu.parse=function(y,I){if(y.length<2)return I.error("Expected at least one argument.");var U=y[1];if(!Array.isArray(U)&&typeof U=="object")return I.error("First argument must be an image or text section.");for(var $=[],ae=!1,he=1;he<=y.length-1;++he){var Oe=y[he];if(ae&&typeof Oe=="object"&&!Array.isArray(Oe)){ae=!1;var rt=null;if(Oe["font-scale"]&&(rt=I.parse(Oe["font-scale"],1,aa),!rt))return null;var gt=null;if(Oe["text-font"]&&(gt=I.parse(Oe["text-font"],1,Kl(Oo)),!gt))return null;var Et=null;if(Oe["text-color"]&&(Et=I.parse(Oe["text-color"],1,ql),!Et))return null;var or=$[$.length-1];or.scale=rt,or.font=gt,or.textColor=Et}else{var _r=I.parse(y[he],1,Do);if(!_r)return null;var pr=_r.type.kind;if(pr!=="string"&&pr!=="value"&&pr!=="null"&&pr!=="resolvedImage")return I.error("Formatted text type must be 'string', 'value', 'image' or 'null'.");ae=!0,$.push({content:_r,scale:null,font:null,textColor:null})}}return new Gu($)},Gu.prototype.evaluate=function(y){var I=function(U){var $=U.content.evaluate(y);return Es($)===Zc?new Vf("",$,null,null,null):new Vf(Hs($),null,U.scale?U.scale.evaluate(y):null,U.font?U.font.evaluate(y).join(","):null,U.textColor?U.textColor.evaluate(y):null)};return new Jl(this.sections.map(I))},Gu.prototype.eachChild=function(y){for(var I=0,U=this.sections;I<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 qs=function(y){this.type=Zc,this.input=y};qs.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 qs(U):I.error("No image name provided.")},qs.prototype.evaluate=function(y){var I=this.input.evaluate(y),U=fl.fromString(I);return U&&y.availableImages&&(U.available=y.availableImages.indexOf(I)>-1),U},qs.prototype.eachChild=function(y){y(this.input)},qs.prototype.outputDefined=function(){return!1},qs.prototype.serialize=function(){return["image",this.input.serialize()]};var ad={"to-boolean":qo,"to-color":ql,"to-number":aa,"to-string":Oo},Po=function(y,I){this.type=y,this.args=I};Po.parse=function(y,I){if(y.length<2)return I.error("Expected at least one argument.");var U=y[0];if((U==="to-boolean"||U==="to-string")&&y.length!==2)return I.error("Expected one argument.");for(var $=ad[U],ae=[],he=1;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 cs)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 cs(I[0]/255,I[1]/255,I[2]/255,I[3])}throw new ps(U||"Could not parse color from value '"+(typeof I=="string"?I:String(JSON.stringify(I)))+"'")}else if(this.type.kind==="number"){for(var rt=null,gt=0,Et=this.args;gt<Et.length;gt+=1){var or=Et[gt];if(rt=or.evaluate(y),rt===null)return 0;var _r=Number(rt);if(!isNaN(_r))return _r}throw new ps("Could not convert "+JSON.stringify(rt)+" to number.")}else return this.type.kind==="formatted"?Jl.fromString(Hs(this.args[0].evaluate(y))):this.type.kind==="resolvedImage"?fl.fromString(Hs(this.args[0].evaluate(y))):Hs(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 qs(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]=cs.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,Et=0,or=rt;Et<or.length;Et+=1){var _r=or[Et],pr=_r[0],Fr=_r[1];gt=new ks(I.registry,I.path,null,I.scope);for(var oi=[],Hi=!1,Ai=1;Ai<y.length;Ai++){var bn=y[Ai],nn=Array.isArray(pr)?pr[Ai-1]:pr.type,xn=gt.parse(bn,1+oi.length,nn);if(!xn){Hi=!0;break}oi.push(xn)}if(!Hi){if(Array.isArray(pr)&&pr.length!==oi.length){gt.error("Expected "+pr.length+" arguments, but found "+oi.length+" instead.");continue}for(var Pn=0;Pn<oi.length;Pn++){var Zn=Array.isArray(pr)?pr[Pn]:pr.type,ga=oi[Pn];gt.concat(Pn+1).checkSubtype(Zn,ga.type)}if(gt.errors.length===0)return new Pa($,he,Fr,oi)}}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(Os(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(Os).join(", ")+")":"("+Os(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 yf(m){return(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+m*Math.PI/360)))/360}function Bl(m,y){return!(m[0]<=y[0]||m[2]>=y[2]||m[1]<=y[1]||m[3]>=y[3])}function wh(m,y){var I=Ic(m[0]),U=yf(m[1]),$=Math.pow(2,y.z);return[Math.round(I*$*bl),Math.round(U*$*bl)]}function Qf(m,y,I){var U=m[0]-y[0],$=m[1]-y[1],ae=m[0]-I[0],he=m[1]-I[1];return U*he-ae*$===0&&U*ae<=0&&$*he<=0}function _f(m,y,I){return y[1]>m[1]!=I[1]>m[1]&&m[0]<(I[0]-y[0])*(m[1]-y[1])/(I[1]-y[1])+y[0]}function Yc(m,y){for(var I=!1,U=0,$=y.length;U<$;U++)for(var ae=y[U],he=0,Oe=ae.length;he<Oe-1;he++){if(Qf(m,ae[he],ae[he+1]))return!1;_f(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],Et=$*gt-rt*ae,or=he*gt-rt*Oe;return Et>0&&or<0||Et<0&&or>0}function Hf(m,y,I,U){var $=[y[0]-m[0],y[1]-m[1]],ae=[U[0]-I[0],U[1]-I[1]];return th(ae,$)===0?!1:!!(ju(m,y,I,U)&&ju(I,U,m,y))}function cc(m,y,I){for(var U=0,$=I;U<$.length;U+=1)for(var ae=$[U],he=0;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 Nl(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=wh(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 gs(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 Gh(m,y,I,U){for(var $=Math.pow(2,U.z)*bl,ae=[U.x*bl,U.y*bl],he=[],Oe=0,rt=m;Oe<rt.length;Oe+=1)for(var gt=rt[Oe],Et=0,or=gt;Et<or.length;Et+=1){var _r=or[Et],pr=[_r.x+ae[0],_r.y+ae[1]];gs(pr,y,I,$),he.push(pr)}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],Et=[],or=0,_r=gt;or<_r.length;or+=1){var pr=_r[or],Fr=[pr.x+ae[0],pr.y+ae[1]];Gf(y,Fr),Et.push(Fr)}he.push(Et)}if(y[2]-y[0]<=$/2){jf(y);for(var oi=0,Hi=he;oi<Hi.length;oi+=1)for(var Ai=Hi[oi],bn=0,nn=Ai;bn<nn.length;bn+=1){var xn=nn[bn];gs(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=Gh(m.geometry(),I,U,$);if(!Bl(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 Et=Rc(y.coordinates,U,$),or=Gh(m.geometry(),I,U,$);if(!Bl(I,U))return!1;for(var _r=0,pr=or;_r<pr.length;_r+=1){var Fr=pr[_r];if(!eh(Fr,Et))return!1}}return!0}function Th(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(!Bl(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 Et=Rc(y.coordinates,U,$),or=rh(m.geometry(),I,U,$);if(!Bl(I,U))return!1;for(var _r=0,pr=or;_r<pr.length;_r+=1){var Fr=pr[_r];if(!Nl(Fr,Et))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 Th(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 js(m){if(m instanceof Pa&&m.name==="feature-state")return!1;var y=!0;return m.eachChild(function(I){y&&!js(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(Et,or,_r){return _r==="assert"?new xl(or,[Et]):_r==="coerce"?new Po(or,[Et]):Et}if(Array.isArray(y)){if(y.length===0)return this.error('Expected an array with at least one element. If you wanted a literal array, use ["literal", []].');var $=y[0];if(typeof $!="string")return this.error("Expression name must be a string, but found "+typeof $+' instead. If you wanted a literal array, use ["literal", [...]].',0),null;var ae=this.registry[$];if(ae){var he=ae.parse(y,this);if(!he)return null;if(this.expectedType){var Oe=this.expectedType,rt=he.type;if((Oe.kind==="string"||Oe.kind==="number"||Oe.kind==="boolean"||Oe.kind==="object"||Oe.kind==="array")&&rt.kind==="value")he=U(he,Oe,I.typeAnnotation||"assert");else if((Oe.kind==="color"||Oe.kind==="formatted"||Oe.kind==="resolvedImage")&&(rt.kind==="value"||rt.kind==="string"))he=U(he,Oe,I.typeAnnotation||"coerce");else if(this.checkSubtype(Oe,rt))return null}if(!(he instanceof Go)&&he.type.kind!=="resolvedImage"&&bc(he)){var gt=new Yo;try{he=new Go(he.type,he.evaluate(gt))}catch(Et){return this.error(Et.message),null}}return he}return this.error('Unknown expression "'+$+'". If you wanted a literal array, use ["literal", [...]].',0)}else return typeof y=="undefined"?this.error("'undefined' value invalid. Use null instead."):typeof y=="object"?this.error('Bare objects invalid. Use ["literal", {...}] instead.'):this.error("Expected an array, but found "+typeof y+" instead.")},ks.prototype.concat=function(y,I,U){var $=typeof y=="number"?this.path.concat(y):this.path,ae=U?this.scope.concat(U):this.scope;return new ks(this.registry,$,I||null,ae,this.errors)},ks.prototype.error=function(y){for(var I=[],U=arguments.length-1;U-- >0;)I[U]=arguments[U+1];var $=""+this.key+I.map(function(ae){return"["+ae+"]"}).join("");this.errors.push(new Ns($,y))},ks.prototype.checkSubtype=function(y,I){var U=oc(y,I);return U&&this.error(U),U};function bc(m){if(m instanceof Dc)return bc(m.boundExpression);if(m instanceof Pa&&m.name==="error")return!1;if(m instanceof Hu)return!1;if(m instanceof Mu)return!1;var y=m instanceof Po||m instanceof xl,I=!0;return m.eachChild(function(U){y?I=I&&bc(U):I=I&&U instanceof Go}),I?ih(m)&&Eu(m,["zoom","heatmap-density","line-progress","accumulated","is-supported-script"]):!1}function hu(m,y){for(var I=m.length-1,U=0,$=I,ae=0,he,Oe;U<=$;)if(ae=Math.floor((U+$)/2),he=m[ae],Oe=m[ae+1],he<=y){if(ae===I||y<Oe)return ae;U=ae+1}else if(he>y)$=ae-1;else throw new ps("Input is not a number.");return 0}var _u=function(y,I,U){this.type=y,this.input=I,this.labels=[],this.outputs=[];for(var $=0,ae=U;$<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,Et=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,Et,ae);if(!or)return null;ae=ae||or.type,$.push([Oe,or])}return new _u(ae,U,$)},_u.prototype.evaluate=function(y){var I=this.labels,U=this.outputs;if(I.length===1)return U[0].evaluate(y);var $=this.input.evaluate(y);if($<=I[0])return U[0].evaluate(y);var ae=I.length;if($>=I[ae-1])return U[ae-1].evaluate(y);var he=hu(I,$);return U[he].evaluate(y)},_u.prototype.eachChild=function(y){y(this.input);for(var I=0,U=this.outputs;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 nl(m,y,I){return m*(1-I)+y*I}function nh(m,y,I){return new cs(nl(m.r,y.r,I),nl(m.g,y.g,I),nl(m.b,y.b,I),nl(m.a,y.a,I))}function Ah(m,y,I){return m.map(function(U,$){return nl(U,y[$],I)})}var zu=Object.freeze({__proto__:null,number:nl,color:nh,array:Ah}),Fc=.95047,wc=1,bd=1.08883,xf=4/29,Pf=6/29,Ou=3*Pf*Pf,bf=Pf*Pf*Pf,jl=Math.PI/180,lf=180/Math.PI;function Hh(m){return m>bf?Math.pow(m,1/3):m/Ou+xf}function If(m){return m>Pf?m*m*m:Ou*(m-xf)}function Cs(m){return 255*(m<=.0031308?12.92*m:1.055*Math.pow(m,1/2.4)-.055)}function du(m){return m/=255,m<=.04045?m/12.92:Math.pow((m+.055)/1.055,2.4)}function ku(m){var y=du(m.r),I=du(m.g),U=du(m.b),$=Hh((.4124564*y+.3575761*I+.1804375*U)/Fc),ae=Hh((.2126729*y+.7151522*I+.072175*U)/wc),he=Hh((.0193339*y+.119192*I+.9503041*U)/bd);return{l:116*ae-16,a:500*($-ae),b:200*(ae-he),alpha:m.a}}function Wf(m){var y=(m.l+16)/116,I=isNaN(m.a)?y:y+m.a/500,U=isNaN(m.b)?y:y-m.b/200;return y=wc*If(y),I=Fc*If(I),U=bd*If(U),new cs(Cs(3.2404542*I-1.5371385*y-.4985314*U),Cs(-.969266*I+1.8760108*y+.041556*U),Cs(.0556434*I-.2040259*y+1.0572252*U),m.alpha)}function Us(m,y,I){return{l:nl(m.l,y.l,I),a:nl(m.a,y.a,I),b:nl(m.b,y.b,I),alpha:nl(m.alpha,y.alpha,I)}}function wf(m){var y=ku(m),I=y.l,U=y.a,$=y.b,ae=Math.atan2($,U)*lf;return{h:ae<0?ae+360:ae,c:Math.sqrt(U*U+$*$),l:I,alpha:m.a}}function zc(m){var y=m.h*jl,I=m.c,U=m.l;return Wf({l:U,a:Math.cos(y)*I,b:Math.sin(y)*I,alpha:m.alpha})}function Wu(m,y,I){var U=y-m;return m+I*(U>180||U<-180?U-360*Math.round(U/360):U)}function Rf(m,y,I){return{h:Wu(m.h,y.h,I),c:nl(m.c,y.c,I),l:nl(m.l,y.l,I),alpha:nl(m.alpha,y.alpha,I)}}var Xu={forward:ku,reverse:Wf,interpolate:Us},uf={forward:wf,reverse:zc,interpolate:Rf},Xf=Object.freeze({__proto__:null,lab:Xu,hcl:uf}),Wl=function(y,I,U,$,ae){this.type=y,this.operator=I,this.interpolation=U,this.input=$,this.labels=[],this.outputs=[];for(var he=0,Oe=ae;he<Oe.length;he+=1){var rt=Oe[he],gt=rt[0],Et=rt[1];this.labels.push(gt),this.outputs.push(Et)}};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(Ai){return typeof Ai!="number"||Ai<0||Ai>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=[],Et=null;U==="interpolate-hcl"||U==="interpolate-lab"?Et=ql:I.expectedType&&I.expectedType.kind!=="value"&&(Et=I.expectedType);for(var or=0;or<he.length;or+=2){var _r=he[or],pr=he[or+1],Fr=or+3,oi=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[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 Hi=I.parse(pr,oi,Et);if(!Hi)return null;Et=Et||Hi.type,gt.push([_r,Hi])}return Et.kind!=="number"&&Et.kind!=="color"&&!(Et.kind==="array"&&Et.itemType.kind==="number"&&typeof Et.N=="number")?I.error("Type "+Os(Et)+" is not interpolatable."):new Wl(Et,U,$,ae,gt)},Wl.prototype.evaluate=function(y){var I=this.labels,U=this.outputs;if(I.length===1)return U[0].evaluate(y);var $=this.input.evaluate(y);if($<=I[0])return U[0].evaluate(y);var ae=I.length;if($>=I[ae-1])return U[ae-1].evaluate(y);var he=hu(I,$),Oe=I[he],rt=I[he+1],gt=Wl.interpolationFactor(this.interpolation,$,Oe,rt),Et=U[he].evaluate(y),or=U[he+1].evaluate(y);return this.operator==="interpolate"?zu[this.type.kind.toLowerCase()](Et,or,gt):this.operator==="interpolate-hcl"?uf.reverse(uf.interpolate(uf.forward(Et),uf.forward(or),gt)):Xu.reverse(Xu.interpolate(Xu.forward(Et),Xu.forward(or),gt))},Wl.prototype.eachChild=function(y){y(this.input);for(var I=0,U=this.outputs;I<U.length;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 Et=$&&ae.some(function(or){return oc($,or.type)});return Et?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 fl&&!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 ps("Array index out of bounds: "+I+" < 0.");if(I>=U.length)throw new ps("Array index out of bounds: "+I+" > "+(U.length-1)+".");if(I!==Math.floor(I))throw new ps("Array index must be an integer, but found "+I+" instead.");return U[I]},Tc.prototype.eachChild=function(y){y(this.index),y(this.input)},Tc.prototype.outputDefined=function(){return!1},Tc.prototype.serialize=function(){return["at",this.index.serialize(),this.input.serialize()]};var wl=function(y,I){this.type=qo,this.needle=y,this.haystack=I};wl.parse=function(y,I){if(y.length!==3)return I.error("Expected 2 arguments, but found "+(y.length-1)+" instead.");var U=I.parse(y[1],1,Do),$=I.parse(y[2],2,Do);return!U||!$?null:Cf(U.type,[qo,Oo,aa,ac,Do])?new wl(U,$):I.error("Expected first argument to be of type boolean, string, number or null, but found "+Os(U.type)+" instead")},wl.prototype.evaluate=function(y){var I=this.needle.evaluate(y),U=this.haystack.evaluate(y);if(!U)return!1;if(!sc(I,["boolean","string","number","null"]))throw new ps("Expected first argument to be of type boolean, string, number or null, but found "+Os(Es(I))+" instead.");if(!sc(U,["string","array"]))throw new ps("Expected second argument to be of type array or string, but found "+Os(Es(U))+" instead.");return U.indexOf(I)>=0},wl.prototype.eachChild=function(y){y(this.needle),y(this.haystack)},wl.prototype.outputDefined=function(){return!0},wl.prototype.serialize=function(){return["in",this.needle.serialize(),this.haystack.serialize()]};var vu=function(y,I,U){this.type=aa,this.needle=y,this.haystack=I,this.fromIndex=U};vu.parse=function(y,I){if(y.length<=2||y.length>=5)return I.error("Expected 3 or 4 arguments, but found "+(y.length-1)+" instead.");var U=I.parse(y[1],1,Do),$=I.parse(y[2],2,Do);if(!U||!$)return null;if(!Cf(U.type,[qo,Oo,aa,ac,Do]))return I.error("Expected first argument to be of type boolean, string, number or null, but found "+Os(U.type)+" instead");if(y.length===4){var ae=I.parse(y[3],3,aa);return ae?new vu(U,$,ae):null}else return new vu(U,$)},vu.prototype.evaluate=function(y){var I=this.needle.evaluate(y),U=this.haystack.evaluate(y);if(!sc(I,["boolean","string","number","null"]))throw new ps("Expected first argument to be of type boolean, string, number or null, but found "+Os(Es(I))+" instead.");if(!sc(U,["string","array"]))throw new ps("Expected second argument to be of type array or string, but found "+Os(Es(U))+" instead.");if(this.fromIndex){var $=this.fromIndex.evaluate(y);return U.indexOf(I,$)}return U.indexOf(I)},vu.prototype.eachChild=function(y){y(this.needle),y(this.haystack),this.fromIndex&&y(this.fromIndex)},vu.prototype.outputDefined=function(){return!1},vu.prototype.serialize=function(){if(this.fromIndex!=null&&this.fromIndex!==void 0){var y=this.fromIndex.serialize();return["index-of",this.needle.serialize(),this.haystack.serialize(),y]}return["index-of",this.needle.serialize(),this.haystack.serialize()]};var qc=function(y,I,U,$,ae,he){this.inputType=y,this.type=I,this.input=U,this.cases=$,this.outputs=ae,this.otherwise=he};qc.parse=function(y,I){if(y.length<5)return I.error("Expected at least 4 arguments, but found only "+(y.length-1)+".");if(y.length%2!==1)return I.error("Expected an even number of arguments.");var U,$;I.expectedType&&I.expectedType.kind!=="value"&&($=I.expectedType);for(var ae={},he=[],Oe=2;Oe<y.length-1;Oe+=2){var rt=y[Oe],gt=y[Oe+1];Array.isArray(rt)||(rt=[rt]);var Et=I.concat(Oe);if(rt.length===0)return Et.error("Expected at least one branch label.");for(var or=0,_r=rt;or<_r.length;or+=1){var pr=_r[or];if(typeof pr!="number"&&typeof pr!="string")return Et.error("Branch labels must be numbers or strings.");if(typeof pr=="number"&&Math.abs(pr)>Number.MAX_SAFE_INTEGER)return Et.error("Branch labels must be integers no larger than "+Number.MAX_SAFE_INTEGER+".");if(typeof pr=="number"&&Math.floor(pr)!==pr)return Et.error("Numeric branch labels must be integer values.");if(!U)U=Es(pr);else if(Et.checkSubtype(U,Es(pr)))return null;if(typeof ae[String(pr)]!="undefined")return Et.error("Branch labels must be unique.");ae[String(pr)]=he.length}var Fr=I.parse(gt,Oe,$);if(!Fr)return null;$=$||Fr.type,he.push(Fr)}var oi=I.parse(y[1],1,Do);if(!oi)return null;var Hi=I.parse(y[y.length-1],y.length-1,$);return!Hi||oi.type.kind!=="value"&&I.concat(1).checkSubtype(U,oi.type)?null:new qc(U,$,oi,ae,he,Hi)},qc.prototype.evaluate=function(y){var I=this.input.evaluate(y),U=Es(I)===this.inputType&&this.outputs[this.cases[I]]||this.otherwise;return U.evaluate(y)},qc.prototype.eachChild=function(y){y(this.input),this.outputs.forEach(y),y(this.otherwise)},qc.prototype.outputDefined=function(){return this.outputs.every(function(y){return y.outputDefined()})&&this.otherwise.outputDefined()},qc.prototype.serialize=function(){for(var y=this,I=["match",this.input.serialize()],U=Object.keys(this.cases).sort(),$=[],ae={},he=0,Oe=U;he<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 Et=function(oi){return y.inputType.kind==="number"?Number(oi):oi},or=0,_r=$;or<_r.length;or+=1){var pr=_r[or],gt=pr[0],Fr=pr[1];Fr.length===1?I.push(Et(Fr[0])):I.push(Fr.map(Et)),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 "+Os(U.type)+" instead");if(y.length===4){var ae=I.parse(y[3],3,aa);return ae?new fc(U.type,U,$,ae):null}else return new fc(U.type,U,$)},fc.prototype.evaluate=function(y){var I=this.input.evaluate(y),U=this.beginIndex.evaluate(y);if(!sc(I,["string","array"]))throw new ps("Expected first argument to be of type array or string, but found "+Os(Es(I))+" instead.");if(this.endIndex){var $=this.endIndex.evaluate(y);return I.slice(U,$)}return I.slice(U)},fc.prototype.eachChild=function(y){y(this.input),y(this.beginIndex),this.endIndex&&y(this.endIndex)},fc.prototype.outputDefined=function(){return!1},fc.prototype.serialize=function(){if(this.endIndex!=null&&this.endIndex!==void 0){var y=this.endIndex.serialize();return["slice",this.input.serialize(),this.beginIndex.serialize(),y]}return["slice",this.input.serialize(),this.beginIndex.serialize()]};function Bc(m,y){return m==="=="||m==="!="?y.kind==="boolean"||y.kind==="string"||y.kind==="number"||y.kind==="null"||y.kind==="value":y.kind==="string"||y.kind==="number"||y.kind==="value"}function At(m,y,I){return y===I}function Wt(m,y,I){return y!==I}function Cr(m,y,I){return y<I}function Ar(m,y,I){return y>I}function Kr(m,y,I){return y<=I}function ki(m,y,I){return y>=I}function Xi(m,y,I,U){return U.compare(y,I)===0}function dn(m,y,I,U){return!Xi(m,y,I,U)}function wn(m,y,I,U){return U.compare(y,I)<0}function Nn(m,y,I,U){return U.compare(y,I)>0}function Yi(m,y,I,U){return U.compare(y,I)<=0}function Qi(m,y,I,U){return U.compare(y,I)>=0}function on(m,y,I){var U=m!=="=="&&m!=="!=";return function(){function $(ae,he,Oe){this.type=qo,this.lhs=ae,this.rhs=he,this.collator=Oe,this.hasUntypedArgument=ae.type.kind==="value"||he.type.kind==="value"}return $.parse=function(he,Oe){if(he.length!==3&&he.length!==4)return Oe.error("Expected two or three arguments.");var rt=he[0],gt=Oe.parse(he[1],1,Do);if(!gt)return null;if(!Bc(rt,gt.type))return Oe.concat(1).error('"'+rt+`" comparisons are not supported for type '`+Os(gt.type)+"'.");var Et=Oe.parse(he[2],2,Do);if(!Et)return null;if(!Bc(rt,Et.type))return Oe.concat(2).error('"'+rt+`" comparisons are not supported for type '`+Os(Et.type)+"'.");if(gt.type.kind!==Et.type.kind&&gt.type.kind!=="value"&&Et.type.kind!=="value")return Oe.error("Cannot compare types '"+Os(gt.type)+"' and '"+Os(Et.type)+"'.");U&&(gt.type.kind==="value"&&Et.type.kind!=="value"?gt=new xl(Et.type,[gt]):gt.type.kind!=="value"&&Et.type.kind==="value"&&(Et=new xl(gt.type,[Et])));var or=null;if(he.length===4){if(gt.type.kind!=="string"&&Et.type.kind!=="string"&&gt.type.kind!=="value"&&Et.type.kind!=="value")return Oe.error("Cannot use collator to compare non-string types.");if(or=Oe.parse(he[3],3,Uf),!or)return null}return new $(gt,Et,or)},$.prototype.evaluate=function(he){var Oe=this.lhs.evaluate(he),rt=this.rhs.evaluate(he);if(U&&this.hasUntypedArgument){var gt=Es(Oe),Et=Es(rt);if(gt.kind!==Et.kind||!(gt.kind==="string"||gt.kind==="number"))throw new ps('Expected arguments for "'+m+'" to be (string, string) or (number, number), but found ('+gt.kind+", "+Et.kind+") instead.")}if(this.collator&&!U&&this.hasUntypedArgument){var or=Es(Oe),_r=Es(rt);if(or.kind!=="string"||_r.kind!=="string")return y(he,Oe,rt)}return this.collator?I(he,Oe,rt,this.collator.evaluate(he)):y(he,Oe,rt)},$.prototype.eachChild=function(he){he(this.lhs),he(this.rhs),this.collator&&he(this.collator)},$.prototype.outputDefined=function(){return!0},$.prototype.serialize=function(){var he=[m];return this.eachChild(function(Oe){he.push(Oe.serialize())}),he},$}()}var Fi=on("==",At,Xi),$n=on("!=",Wt,dn),Ca=on("<",Cr,wn),Ra=on(">",Ar,Nn),La=on("<=",Kr,Yi),Na=on(">=",ki,Qi),Yn=function(y,I,U,$,ae){this.type=Oo,this.number=y,this.locale=I,this.currency=U,this.minFractionDigits=$,this.maxFractionDigits=ae};Yn.parse=function(y,I){if(y.length!==3)return I.error("Expected two arguments.");var U=I.parse(y[1],1,aa);if(!U)return null;var $=y[2];if(typeof $!="object"||Array.isArray($))return I.error("NumberFormat options argument must be an object.");var ae=null;if($.locale&&(ae=I.parse($.locale,1,Oo),!ae))return null;var he=null;if($.currency&&(he=I.parse($.currency,1,Oo),!he))return null;var Oe=null;if($["min-fraction-digits"]&&(Oe=I.parse($["min-fraction-digits"],1,aa),!Oe))return null;var rt=null;return $["max-fraction-digits"]&&(rt=I.parse($["max-fraction-digits"],1,aa),!rt)?null:new Yn(U,ae,he,Oe,rt)},Yn.prototype.evaluate=function(y){return new Intl.NumberFormat(this.locale?this.locale.evaluate(y):[],{style:this.currency?"currency":"decimal",currency:this.currency?this.currency.evaluate(y):void 0,minimumFractionDigits:this.minFractionDigits?this.minFractionDigits.evaluate(y):void 0,maximumFractionDigits:this.maxFractionDigits?this.maxFractionDigits.evaluate(y):void 0}).format(this.number.evaluate(y))},Yn.prototype.eachChild=function(y){y(this.number),this.locale&&y(this.locale),this.currency&&y(this.currency),this.minFractionDigits&&y(this.minFractionDigits),this.maxFractionDigits&&y(this.maxFractionDigits)},Yn.prototype.outputDefined=function(){return!1},Yn.prototype.serialize=function(){var y={};return this.locale&&(y.locale=this.locale.serialize()),this.currency&&(y.currency=this.currency.serialize()),this.minFractionDigits&&(y["min-fraction-digits"]=this.minFractionDigits.serialize()),this.maxFractionDigits&&(y["max-fraction-digits"]=this.maxFractionDigits.serialize()),["number-format",this.number.serialize(),y]};var Dn=function(y){this.type=aa,this.input=y};Dn.parse=function(y,I){if(y.length!==2)return I.error("Expected 1 argument, but found "+(y.length-1)+" instead.");var U=I.parse(y[1],1);return U?U.type.kind!=="array"&&U.type.kind!=="string"&&U.type.kind!=="value"?I.error("Expected argument of type string or array, but found "+Os(U.type)+" instead."):new Dn(U):null},Dn.prototype.evaluate=function(y){var I=this.input.evaluate(y);if(typeof I=="string")return I.length;if(Array.isArray(I))return I.length;throw new ps("Expected value to be of type string or array, but found "+Os(Es(I))+" instead.")},Dn.prototype.eachChild=function(y){y(this.input)},Dn.prototype.outputDefined=function(){return!1},Dn.prototype.serialize=function(){var y=["length"];return this.eachChild(function(I){y.push(I.serialize())}),y};var Ka={"==":Fi,"!=":$n,">":Ra,"<":Ca,">=":Na,"<=":La,array:xl,at:Tc,boolean:xl,case:cf,coalesce:Zu,collator:Hu,format:Gu,image:qs,in:wl,"index-of":vu,interpolate:Wl,"interpolate-hcl":Wl,"interpolate-lab":Wl,length:Dn,let:Oc,literal:Go,match:qc,number:xl,"number-format":Yn,object:xl,slice:fc,step:_u,string:xl,"to-boolean":Po,"to-color":Po,"to-number":Po,"to-string":Po,var:Dc,within:Mu};function bo(m,y){var I=y[0],U=y[1],$=y[2],ae=y[3];I=I.evaluate(m),U=U.evaluate(m),$=$.evaluate(m);var he=ae?ae.evaluate(m):1,Oe=lc(I,U,$,he);if(Oe)throw new ps(Oe);return new cs(I/255*he,U/255*he,$/255*he,he)}function Xo(m,y){return m in y}function Ss(m,y){var I=y[m];return typeof I=="undefined"?null:I}function as(m,y,I,U){for(;I<=U;){var $=I+U>>1;if(y[$]===m)return!0;y[$]>m?U=$-1:I=$+1}return!1}function ws(m){return{type:m}}Pa.register(Ka,{error:[rf,[Oo],function(m,y){var I=y[0];throw new ps(I.evaluate(m))}],typeof:[Oo,[Do],function(m,y){var I=y[0];return Os(Es(I.evaluate(m)))}],"to-rgba":[Kl(aa,4),[ql],function(m,y){var I=y[0];return I.evaluate(m).toArray()}],rgb:[ql,[aa,aa,aa],bo],rgba:[ql,[aa,aa,aa,aa],bo],has:{type:qo,overloads:[[[Oo],function(m,y){var I=y[0];return Xo(I.evaluate(m),m.properties())}],[[Oo,Pc],function(m,y){var I=y[0],U=y[1];return Xo(I.evaluate(m),U.evaluate(m))}]]},get:{type:Do,overloads:[[[Oo],function(m,y){var I=y[0];return Ss(I.evaluate(m),m.properties())}],[[Oo,Pc],function(m,y){var I=y[0],U=y[1];return Ss(I.evaluate(m),U.evaluate(m))}]]},"feature-state":[Do,[Oo],function(m,y){var I=y[0];return Ss(I.evaluate(m),m.featureState||{})}],properties:[Pc,[],function(m){return m.properties()}],"geometry-type":[Oo,[],function(m){return m.geometryType()}],id:[Do,[],function(m){return m.id()}],zoom:[aa,[],function(m){return m.globals.zoom}],"heatmap-density":[aa,[],function(m){return m.globals.heatmapDensity||0}],"line-progress":[aa,[],function(m){return m.globals.lineProgress||0}],accumulated:[Do,[],function(m){return m.globals.accumulated===void 0?null:m.globals.accumulated}],"+":[aa,ws(aa),function(m,y){for(var I=0,U=0,$=y;U<$.length;U+=1){var ae=$[U];I+=ae.evaluate(m)}return I}],"*":[aa,ws(aa),function(m,y){for(var I=1,U=0,$=y;U<$.length;U+=1){var ae=$[U];I*=ae.evaluate(m)}return I}],"-":{type:aa,overloads:[[[aa,aa],function(m,y){var I=y[0],U=y[1];return I.evaluate(m)-U.evaluate(m)}],[[aa],function(m,y){var I=y[0];return-I.evaluate(m)}]]},"/":[aa,[aa,aa],function(m,y){var I=y[0],U=y[1];return I.evaluate(m)/U.evaluate(m)}],"%":[aa,[aa,aa],function(m,y){var I=y[0],U=y[1];return I.evaluate(m)%U.evaluate(m)}],ln2:[aa,[],function(){return Math.LN2}],pi:[aa,[],function(){return Math.PI}],e:[aa,[],function(){return Math.E}],"^":[aa,[aa,aa],function(m,y){var I=y[0],U=y[1];return Math.pow(I.evaluate(m),U.evaluate(m))}],sqrt:[aa,[aa],function(m,y){var I=y[0];return Math.sqrt(I.evaluate(m))}],log10:[aa,[aa],function(m,y){var I=y[0];return Math.log(I.evaluate(m))/Math.LN10}],ln:[aa,[aa],function(m,y){var I=y[0];return Math.log(I.evaluate(m))}],log2:[aa,[aa],function(m,y){var I=y[0];return Math.log(I.evaluate(m))/Math.LN2}],sin:[aa,[aa],function(m,y){var I=y[0];return Math.sin(I.evaluate(m))}],cos:[aa,[aa],function(m,y){var I=y[0];return Math.cos(I.evaluate(m))}],tan:[aa,[aa],function(m,y){var I=y[0];return Math.tan(I.evaluate(m))}],asin:[aa,[aa],function(m,y){var I=y[0];return Math.asin(I.evaluate(m))}],acos:[aa,[aa],function(m,y){var I=y[0];return Math.acos(I.evaluate(m))}],atan:[aa,[aa],function(m,y){var I=y[0];return Math.atan(I.evaluate(m))}],min:[aa,ws(aa),function(m,y){return Math.min.apply(Math,y.map(function(I){return I.evaluate(m)}))}],max:[aa,ws(aa),function(m,y){return Math.max.apply(Math,y.map(function(I){return I.evaluate(m)}))}],abs:[aa,[aa],function(m,y){var I=y[0];return Math.abs(I.evaluate(m))}],round:[aa,[aa],function(m,y){var I=y[0],U=I.evaluate(m);return U<0?-Math.round(-U):Math.round(U)}],floor:[aa,[aa],function(m,y){var I=y[0];return Math.floor(I.evaluate(m))}],ceil:[aa,[aa],function(m,y){var I=y[0];return Math.ceil(I.evaluate(m))}],"filter-==":[qo,[Oo,Do],function(m,y){var I=y[0],U=y[1];return m.properties()[I.value]===U.value}],"filter-id-==":[qo,[Do],function(m,y){var I=y[0];return m.id()===I.value}],"filter-type-==":[qo,[Oo],function(m,y){var I=y[0];return m.geometryType()===I.value}],"filter-<":[qo,[Oo,Do],function(m,y){var I=y[0],U=y[1],$=m.properties()[I.value],ae=U.value;return typeof $==typeof ae&&$<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 as(m.properties()[I.value],U.value,0,U.value.length-1)}],all:{type:qo,overloads:[[[qo,qo],function(m,y){var I=y[0],U=y[1];return I.evaluate(m)&&U.evaluate(m)}],[ws(qo),function(m,y){for(var I=0,U=y;I<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)}],[ws(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,ws(Do),function(m,y){return y.map(function(I){return Hs(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 ml(m){return{result:"error",value:m}}function Ws(m){return m["property-type"]==="data-driven"||m["property-type"]==="cross-faded-data-driven"}function Ls(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 ys(m){return typeof m=="object"&&m!==null&&!Array.isArray(m)}function rs(m){return m}function $l(m,y){var I=y.type==="color",U=m.stops&&typeof m.stops[0][0]=="object",$=U||m.property!==void 0,ae=U||!$,he=m.type||(va(y)?"exponential":"interval");if(I&&(m=Ol({},m),m.stops&&(m.stops=m.stops.map(function(ha){return[ha[0],cs.parse(ha[1])]})),m.default?m.default=cs.parse(m.default):m.default=cs.parse(y.default)),m.colorSpace&&m.colorSpace!=="rgb"&&!Xf[m.colorSpace])throw new Error("Unknown color space: "+m.colorSpace);var Oe,rt,gt;if(he==="exponential")Oe=pu;else if(he==="interval")Oe=Nc;else if(he==="categorical"){Oe=Yu,rt=Object.create(null);for(var Et=0,or=m.stops;Et<or.length;Et+=1){var _r=or[Et];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 pr={},Fr=[],oi=0;oi<m.stops.length;oi++){var Hi=m.stops[oi],Ai=Hi[0].zoom;pr[Ai]===void 0&&(pr[Ai]={zoom:Ai,type:m.type,property:m.property,default:m.default,stops:[]},Fr.push(Ai)),pr[Ai].stops.push([Hi[0].value,Hi[1]])}for(var bn=[],nn=0,xn=Fr;nn<xn.length;nn+=1){var Pn=xn[nn];bn.push([pr[Pn].zoom,$l(pr[Pn],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 pu({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?Cu(m.default,y.default):Oe(m,y,Za,rt,gt)}}}function Cu(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 Cu(ae,m.default,y.default)}function Nc(m,y,I){if(no(I)!=="number")return Cu(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 $=hu(m.stops.map(function(ae){return ae[0]}),I);return m.stops[$][1]}function pu(m,y,I){var U=m.base!==void 0?m.base:1;if(no(I)!=="number")return Cu(m.default,y.default);var $=m.stops.length;if($===1||I<=m.stops[0][0])return m.stops[0][1];if(I>=m.stops[$-1][0])return m.stops[$-1][1];var ae=hu(m.stops.map(function(or){return or[0]}),I),he=xu(I,U,m.stops[ae][0],m.stops[ae+1][0]),Oe=m.stops[ae][1],rt=m.stops[ae+1][1],gt=zu[y.type]||rs;if(m.colorSpace&&m.colorSpace!=="rgb"){var Et=Xf[m.colorSpace];gt=function(or,_r){return Et.reverse(Et.interpolate(Et.forward(or),Et.forward(_r),he))}}return typeof Oe.evaluate=="function"?{evaluate:function(){for(var _r=[],pr=arguments.length;pr--;)_r[pr]=arguments[pr];var Fr=Oe.evaluate.apply(void 0,_r),oi=rt.evaluate.apply(void 0,_r);if(!(Fr===void 0||oi===void 0))return gt(Fr,oi,he)}}:gt(Oe,rt,he)}function Uc(m,y,I){return y.type==="color"?I=cs.parse(I):y.type==="formatted"?I=Jl.fromString(I.toString()):y.type==="resolvedImage"?I=fl.fromString(I.toString()):no(I)!==y.type&&(y.type!=="enum"||!y.values[I])&&(I=void 0),Cu(I,m.default,y.default)}function xu(m,y,I,U){var $=U-I,ae=m-I;return $===0?0:y===1?ae/$:(Math.pow(y,ae)-1)/(Math.pow(y,$)-1)}var Ac=function(y,I){this.expression=y,this._warningHistory={},this._evaluator=new Yo,this._defaultValue=I?ee(I):null,this._enumValues=I&&I.type==="enum"?I.values:null};Ac.prototype.evaluateWithoutErrorHandling=function(y,I,U,$,ae,he){return this._evaluator.globals=y,this._evaluator.feature=I,this._evaluator.featureState=U,this._evaluator.canonical=$,this._evaluator.availableImages=ae||null,this._evaluator.formattedSection=he,this.expression.evaluate(this._evaluator)},Ac.prototype.evaluate=function(y,I,U,$,ae,he){this._evaluator.globals=y,this._evaluator.feature=I||null,this._evaluator.featureState=U||null,this._evaluator.canonical=$,this._evaluator.availableImages=ae||null,this._evaluator.formattedSection=he||null;try{var Oe=this.expression.evaluate(this._evaluator);if(Oe==null||typeof Oe=="number"&&Oe!==Oe)return this._defaultValue;if(this._enumValues&&!(Oe in this._enumValues))throw new ps("Expected value to be one of "+Object.keys(this._enumValues).map(function(rt){return JSON.stringify(rt)}).join(", ")+", but found "+JSON.stringify(Oe)+" instead.");return Oe}catch(rt){return this._warningHistory[rt.message]||(this._warningHistory[rt.message]=!0,typeof console!="undefined"&&console.warn(rt.message)),this._defaultValue}};function Ua(m){return Array.isArray(m)&&m.length>0&&typeof m[0]=="string"&&m[0]in Ka}function oo(m,y){var I=new ks(Ka,[],y?Q(y):void 0),U=I.parse(m,void 0,void 0,void 0,y&&y.type==="string"?{typeAnnotation:"coerce"}:void 0);return U?Ho(new Ac(U,y)):ml(I.errors)}var Vc=function(y,I){this.kind=y,this._styleExpression=I,this.isStateDependent=y!=="constant"&&!js(I.expression)};Vc.prototype.evaluateWithoutErrorHandling=function(y,I,U,$,ae,he){return this._styleExpression.evaluateWithoutErrorHandling(y,I,U,$,ae,he)},Vc.prototype.evaluate=function(y,I,U,$,ae,he){return this._styleExpression.evaluate(y,I,U,$,ae,he)};var hc=function(y,I,U,$){this.kind=y,this.zoomStops=U,this._styleExpression=I,this.isStateDependent=y!=="camera"&&!js(I.expression),this.interpolationType=$};hc.prototype.evaluateWithoutErrorHandling=function(y,I,U,$,ae,he){return this._styleExpression.evaluateWithoutErrorHandling(y,I,U,$,ae,he)},hc.prototype.evaluate=function(y,I,U,$,ae,he){return this._styleExpression.evaluate(y,I,U,$,ae,he)},hc.prototype.interpolationFactor=function(y,I,U){return this.interpolationType?Wl.interpolationFactor(this.interpolationType,y,I,U):0};function Ku(m,y){if(m=oo(m,y),m.result==="error")return m;var I=m.value.expression,U=ih(I);if(!U&&!Ws(y))return ml([new Ns("","data expressions not supported")]);var $=Eu(I,["zoom"]);if(!$&&!Ls(y))return ml([new Ns("","zoom expressions not supported")]);var ae=B(I);if(!ae&&!$)return ml([new Ns("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.')]);if(ae instanceof Ns)return ml([ae]);if(ae instanceof Wl&&!va(y))return ml([new Ns("",'"interpolate" expressions cannot be used with this property')]);if(!ae)return Ho(U?new Vc("constant",m.value):new Vc("source",m.value));var he=ae instanceof Wl?ae.interpolation:void 0;return Ho(U?new hc("camera",m.value,ae.labels,he):new hc("composite",m.value,ae.labels,he))}var ue=function(y,I){this._parameters=y,this._specification=I,Ol(this,$l(this._parameters,this._specification))};ue.deserialize=function(y){return new ue(y._parameters,y._specification)},ue.serialize=function(y){return{_parameters:y._parameters,_specification:y._specification}};function w(m,y){if(ys(m))return new ue(m,y);if(Ua(m)){var I=Ku(m,y);if(I.result==="error")throw new Error(I.value.map(function($){return $.key+": "+$.message}).join(", "));return I.value}else{var U=m;return typeof m=="string"&&y.type==="color"&&(U=cs.parse(m)),{kind:"constant",evaluate:function(){return U}}}}function B(m){var y=null;if(m instanceof Oc)y=B(m.result);else if(m instanceof Zu)for(var I=0,U=m.args;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 Ns||m.eachChild(function(ae){var he=B(ae);he instanceof Ns?y=he:!y&&he?y=new Ns("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.'):y&&he&&y!==he&&(y=new Ns("",'Only one zoom-based "step" or "interpolate" subexpression may be used in an expression.'))}),y}function Q(m){var y={color:ql,string:Oo,number:aa,enum:Oo,boolean:qo,formatted:pl,resolvedImage:Zc};return m.type==="array"?Kl(y[m.value]||Do,m.length):y[m.type]}function ee(m){return m.type==="color"&&ys(m.default)?new cs(0,0,0,0):m.type==="color"?cs.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 Et=gt.split(".")[0],or=U[Et]||U["*"],_r=void 0;if($[Et])_r=$[Et];else if(U[Et])_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 pr in U)$[pr]||U[pr].required&&U[pr].default===void 0&&I[pr]===void 0&&Oe.push(new _a(y,I,'missing required property "'+pr+'"'));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",Et=le({key:m.key,value:m.value,valueSpec:m.styleSpec.function,style:m.style,styleSpec:m.styleSpec,objectElementValidators:{stops:or,default:Fr}});return I==="identity"&&Oe&&Et.push(new _a(m.key,m.value,'missing required property "property"')),I!=="identity"&&!m.value.stops&&Et.push(new _a(m.key,m.value,'missing required property "stops"')),I==="exponential"&&m.valueSpec.expression&&!va(m.valueSpec)&&Et.push(new _a(m.key,m.value,"exponential functions not supported")),m.styleSpec.$version>=8&&(rt&&!Ws(m.valueSpec)?Et.push(new _a(m.key,m.value,"property functions not supported")):Oe&&!Ls(m.valueSpec)&&Et.push(new _a(m.key,m.value,"zoom functions not supported"))),(I==="categorical"||gt)&&m.value.property===void 0&&Et.push(new _a(m.key,m.value,'"property" property is required')),Et;function or(oi){if(I==="identity")return[new _a(oi.key,oi.value,'identity function may not have a "stops" property')];var Hi=[],Ai=oi.value;return Hi=Hi.concat(qe({key:oi.key,value:Ai,valueSpec:oi.valueSpec,style:oi.style,styleSpec:oi.styleSpec,arrayElementValidator:_r})),no(Ai)==="array"&&Ai.length===0&&Hi.push(new _a(oi.key,Ai,"array must have at least one stop")),Hi}function _r(oi){var Hi=[],Ai=oi.value,bn=oi.key;if(no(Ai)!=="array")return[new _a(bn,Ai,"array expected, "+no(Ai)+" found")];if(Ai.length!==2)return[new _a(bn,Ai,"array length 2 expected, length "+Ai.length+" found")];if(gt){if(no(Ai[0])!=="object")return[new _a(bn,Ai,"object expected, "+no(Ai[0])+" found")];if(Ai[0].zoom===void 0)return[new _a(bn,Ai,"object stop key must have zoom")];if(Ai[0].value===void 0)return[new _a(bn,Ai,"object stop key must have value")];if(he&&he>xo(Ai[0].zoom))return[new _a(bn,Ai[0].zoom,"stop zoom values must appear in ascending order")];xo(Ai[0].zoom)!==he&&(he=xo(Ai[0].zoom),ae=void 0,$={}),Hi=Hi.concat(le({key:bn+"[0]",value:Ai[0],valueSpec:{zoom:{}},style:oi.style,styleSpec:oi.styleSpec,objectElementValidators:{zoom:Xe,value:pr}}))}else Hi=Hi.concat(pr({key:bn+"[0]",value:Ai[0],valueSpec:{},style:oi.style,styleSpec:oi.styleSpec},Ai));return Ua(Yl(Ai[1]))?Hi.concat([new _a(bn+"[1]",Ai[1],"expressions are not allowed in function stops.")]):Hi.concat(Qa({key:bn+"[1]",value:Ai[1],valueSpec:y,style:oi.style,styleSpec:oi.styleSpec}))}function pr(oi,Hi){var Ai=no(oi.value),bn=xo(oi.value),nn=oi.value!==null?oi.value:Hi;if(!U)U=Ai;else if(Ai!==U)return[new _a(oi.key,nn,Ai+" stop domain type must match previous stop domain type "+U)];if(Ai!=="number"&&Ai!=="string"&&Ai!=="boolean")return[new _a(oi.key,nn,"stop domain value must be a number, string, or boolean")];if(Ai!=="number"&&I!=="categorical"){var xn="number expected, "+Ai+" found";return Ws(y)&&I===void 0&&(xn+='\nIf you intended to use a categorical function, specify `"type": "categorical"`.'),[new _a(oi.key,nn,xn)]}return I==="categorical"&&Ai==="number"&&(!isFinite(bn)||Math.floor(bn)!==bn)?[new _a(oi.key,nn,"integer expected, found "+bn)]:I!=="categorical"&&Ai==="number"&&ae!==void 0&&bn<ae?[new _a(oi.key,nn,"stop domain values must appear in ascending order")]:(ae=bn,I==="categorical"&&bn in $?[new _a(oi.key,nn,"stop domain values must be unique")]:($[bn]=!0,[]))}function Fr(oi){return Qa({key:oi.key,value:oi.value,valueSpec:y,style:oi.style,styleSpec:oi.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"&&!js(I))return[new _a(m.key,m.value,'"feature-state" data expressions are not supported with layout properties.')];if(m.expressionContext==="filter"&&!js(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 Yt(m){var y=m.value,I=m.key,U=no(y);return U!=="boolean"?[new _a(I,y,"boolean expected, "+U+" found")]:[]}function Kt(m){var y=m.key,I=m.value,U=no(I);return U!=="string"?[new _a(y,I,"color expected, "+U+" found")]:Lf(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 Ir(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(!Ir(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};Ir(m)||(m=et(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 De(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 et(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==="!="?tr(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(et)):y==="none"?["all"].concat(m.slice(1).map(et).map(tr)):y==="in"?Ft(m[1],m.slice(2)):y==="!in"?tr(Ft(m[1],m.slice(2))):y==="has"?Ht(m[1]):y==="!has"?tr(Ht(m[1])):y==="within"?m:!0;return I}function We(m,y,I){switch(m){case"$type":return["filter-type-"+I,y];case"$id":return["filter-id-"+I,y];default:return["filter-"+I,m,y]}}function it(m){return["any"].concat(m.map(et))}function Ft(m,y){if(y.length===0)return!1;switch(m){case"$type":return["filter-type-in",["literal",y]];case"$id":return["filter-id-in",["literal",y]];default:return y.length>200&&!y.some(function(I){return typeof I!=typeof y[0]})?["filter-in-large",m,["literal",y.sort(De)]]:["filter-in-small",m,["literal",y]]}}function Ht(m){switch(m){case"$type":return!0;case"$id":return["filter-has-id"];default:return["filter-has",m]}}function tr(m){return["!",m]}function dr(m){return Ir(Yl(m.value))?Tt(Ol({},m,{expressionContext:"filter",valueSpec:{value:"boolean"}})):Sr(m)}function Sr(m){var y=m.value,I=m.key;if(no(y)!=="array")return[new _a(I,y,"array expected, "+no(y)+" found")];var U=m.styleSpec,$,ae=[];if(y.length<1)return[new _a(I,y,"filter array must have at least 1 element")];switch(ae=ae.concat(xr({key:I+"[0]",value:y[0],valueSpec:U.filter_operator,style:m.style,styleSpec:m.styleSpec})),xo(y[0])){case"<":case"<=":case">":case">=":y.length>=2&&xo(y[1])==="$type"&&ae.push(new _a(I,y,'"$type" cannot be use with operator "'+y[0]+'"'));case"==":case"!=":y.length!==3&&ae.push(new _a(I,y,'filter array for operator "'+y[0]+'" must have 3 elements'));case"in":case"!in":y.length>=2&&($=no(y[1]),$!=="string"&&ae.push(new _a(I+"[1]",y[1],"string expected, "+$+" found")));for(var he=2;he<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 Et;if(no(ae)==="string"&&Ws(gt)&&!gt.tokens&&(Et=/^{([^}]+)}$/.exec(ae)))return[new _a(I,ae,'"'+he+'" does not support interpolation syntax\nUse an identity property function instead: `{ "type": "identity", "property": '+JSON.stringify(Et[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"&&ys(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 Wr(m){return Or(m,"paint")}function ni(m){return Or(m,"layout")}function Pi(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 Et=$.layers[gt];xo(Et.id)===rt&&y.push(new _a(U,I.id,'duplicate layer id "'+I.id+'", previously used at line '+Et.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],pr=_r&&xo(_r.type);_r?pr==="vector"&&he==="raster"?y.push(new _a(U,I.source,'layer "'+I.id+'" requires a raster source')):pr==="raster"&&he!=="raster"?y.push(new _a(U,I.source,'layer "'+I.id+'" requires a vector source')):pr==="vector"&&!I["source-layer"]?y.push(new _a(U,I,'layer "'+I.id+'" must specify a "source-layer"')):pr==="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"]&&(pr!=="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(oi){return le({layer:I,key:oi.key,value:oi.value,style:oi.style,styleSpec:oi.styleSpec,objectElementValidators:{"*":function(Ai){return ni(Ol({layerType:he},Ai))}}})},paint:function(oi){return le({layer:I,key:oi.key,value:oi.value,style:oi.style,styleSpec:oi.styleSpec,objectElementValidators:{"*":function(Ai){return Wr(Ol({layerType:he},Ai))}}})}}})),y}function cn(m){var y=m.value,I=m.key,U=no(y);return U!=="string"?[new _a(I,y,"string expected, "+U+" found")]:[]}var ln={promoteId:Kn};function Cn(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:ln}),he;case"geojson":if(he=le({key:I,value:y,valueSpec:U.source_geojson,style:$,styleSpec:U,objectElementValidators:ln}),y.cluster)for(var Oe in y.clusterProperties){var rt=y.clusterProperties[Oe],gt=rt[0],Et=rt[1],or=typeof gt=="string"?[gt,["accumulated"],["get",Oe]]:gt;he.push.apply(he,Tt({key:I+"."+Oe+".map",value:Et,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 cn({key:y,value:I});var U=[];for(var $ in I)U.push.apply(U,cn({key:y+"."+$,value:I[$]}));return U}function Ta(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 cn(m).length===0?[]:Tt(m)}function $a(m){return cn(m).length===0?[]:Tt(m)}var Co={"*":function(){return[]},array:qe,boolean:Yt,number:Xe,color:Kt,constants:Vu,enum:xr,filter:dr,function:ot,layer:Pi,object:le,source:Cn,light:Ta,string:cn,formatted:fa,resolvedImage:$a};function Qa(m){var y=m.value,I=m.valueSpec,U=m.styleSpec;if(I.expression&&ys(xo(y)))return ot(m);if(I.expression&&Ua(Yl(y)))return Tt(m);if(I.type&&Co[I.type])return Co[I.type](m);var $=le(Ol({},m,{valueSpec:I.type?U[I.type]:I}));return $}function mo(m){var y=m.value,I=m.key,U=cn(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=Rn);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}))),Ps(I)}Bo.source=Ts(Cn),Bo.light=Ts(Ta),Bo.layer=Ts(Pi),Bo.filter=Ts(dr),Bo.paintProperty=Ts(Wr),Bo.layoutProperty=Ts(ni);function Ps(m){return[].concat(m).sort(function(y,I){return y.line-I.line})}function Ts(m){return function(){for(var y=[],I=arguments.length;I--;)y[I]=arguments[I];return Ps(m.apply(this,y))}}var wo=Bo,To=wo.light,hl=wo.paintProperty,Ul=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 au=Ql,Js=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=$[Js+ae],Oe=$[Js+ae+1];U.push(he===Oe?null:$.subarray(he,Oe))}var rt=$[Js+U.length],gt=$[Js+U.length+1];this.keys=$.subarray(rt,gt),this.bboxes=$.subarray(gt),this.insert=this._insertReadonly}else{this.d=y+2*I;for(var Et=0;Et<this.d*this.d;Et++)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,Et=this.bboxes,or=0;or<rt.length;or++){var _r=rt[or];if(he[_r]===void 0){var pr=_r*4;(Oe?Oe(Et[pr+0],Et[pr+1],Et[pr+2],Et[pr+3]):m<=Et[pr+2]&&y<=Et[pr+3]&&I>=Et[pr+0]&&U>=Et[pr+1])?(he[_r]=!0,ae.push(gt[_r])):he[_r]=!1}}},Ql.prototype._forEachCell=function(m,y,I,U,$,ae,he,Oe){for(var rt=this._convertToCellCoord(m),gt=this._convertToCellCoord(y),Et=this._convertToCellCoord(I),or=this._convertToCellCoord(U),_r=rt;_r<=Et;_r++)for(var pr=gt;pr<=or;pr++){var Fr=this.d*pr+_r;if(!(Oe&&!Oe(this._convertFromCellCoord(_r),this._convertFromCellCoord(pr),this._convertFromCellCoord(_r+1),this._convertFromCellCoord(pr+1)))&&$.call(this,m,y,I,U,Fr,ae,he,Oe))return}},Ql.prototype._convertFromCellCoord=function(m){return(m-this.padding)/this.scale},Ql.prototype._convertToCellCoord=function(m){return Math.max(0,Math.min(this.d-1,Math.floor(m*this.scale)+this.padding))},Ql.prototype.toArrayBuffer=function(){if(this.arrayBuffer)return this.arrayBuffer;for(var m=this.cells,y=Js+this.cells.length+1+1,I=0,U=0;U<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];$[Js+he]=ae,$.set(Oe,ae),ae+=Oe.length}return $[Js+m.length]=ae,$.set(this.keys,ae),ae+=this.keys.length,$[Js+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),au.serialize=function(y,I){var U=y.toArrayBuffer();return I&&I.push(U),{buffer:U}},au.deserialize=function(y){return new au(y.buffer)},X("Grid",au),X("Color",cs),X("Error",Error),X("ResolvedImage",fl),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 Et in m)if(m.hasOwnProperty(Et)&&!(Al[rt].omit.indexOf(Et)>=0)){var or=m[Et];gt[Et]=Al[rt].shallow.indexOf(Et)>=0?or:He(or,y)}m instanceof Error&&(gt.message=m.message)}if(gt.$name)throw new Error("$name property is reserved for worker serialization logic.");return rt!=="Object"&&(gt.$name=rt),gt}throw new Error("can't serialize object of type "+typeof m)}function Ye(m){if(m==null||typeof m=="boolean"||typeof m=="number"||typeof m=="string"||m instanceof Boolean||m instanceof Number||m instanceof String||m instanceof Date||m instanceof RegExp||Te(m)||Ne(m)||ArrayBuffer.isView(m)||m instanceof dc)return m;if(Array.isArray(m))return m.map(Ye);if(typeof m=="object"){var y=m.$name||"Object",I=Al[y],U=I.klass;if(!U)throw new Error("can't deserialize unregistered class "+y);if(U.deserialize)return U.deserialize(m);for(var $=Object.create(U.prototype),ae=0,he=Object.keys(m);ae<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 kt=function(){this.first=!0};kt.prototype.update=function(y,I){var U=Math.floor(y);return this.first?(this.first=!1,this.lastIntegerZoom=U,this.lastIntegerZoomTime=0,this.lastZoom=y,this.lastFloorZoom=U,!0):(this.lastFloorZoom>U?(this.lastIntegerZoom=U+1,this.lastIntegerZoomTime=I):this.lastFloorZoom<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 Hr(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 Zr(m){return nt.Arabic(m)||nt["Arabic Supplement"](m)||nt["Arabic Extended-A"](m)||nt["Arabic Presentation Forms-A"](m)||nt["Arabic Presentation Forms-B"](m)}function ai(m){return m>=1424&&m<=2303||nt["Arabic Presentation Forms-A"](m)||nt["Arabic Presentation Forms-B"](m)}function gi(m,y){return!(!y&&ai(m)||m>=2304&&m<=3583||m>=3840&&m<=4255||nt.Khmer(m))}function Ii(m){for(var y=0,I=m;y<I.length;y+=1){var U=I[y];if(ai(U.charCodeAt(0)))return!0}return!1}function Si(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 ei={unavailable:"unavailable",deferred:"deferred",loading:"loading",loaded:"loaded",error:"error"},Ln=null,En=ei.unavailable,Un=null,ia=function(m){m&&typeof m=="string"&&m.indexOf("NetworkError")>-1&&(En=ei.error),Ln&&Ln(m)};function Ea(){Ia.fire(new Wo("pluginStateChange",{pluginStatus:En,pluginURL:Un}))}var Ia=new Wn,yo=function(){return En},Da=function(m){return m({pluginStatus:En,pluginURL:Un}),Ia.on("pluginStateChange",m),m},go=function(m,y,I){if(I===void 0&&(I=!1),En===ei.deferred||En===ei.loading||En===ei.loaded)throw new Error("setRTLTextPlugin cannot be called multiple times.");Un=ut.resolveURL(m),En=ei.deferred,Ln=y,Ea(),I||Is()},Is=function(){if(En!==ei.deferred||!Un)throw new Error("rtl-text-plugin cannot be downloaded unless a pluginURL is specified");En=ei.loading,Ea(),Un&&ri({url:Un},function(m){m?ia(m):(En=ei.loaded,Ea())})},Ms={applyArabicShaping:null,processBidirectionalText:null,processStyledBidirectionalText:null,isLoaded:function(){return En===ei.loaded||Ms.applyArabicShaping!=null},isLoading:function(){return En===ei.loading},setState:function(y){En=y.pluginStatus,Un=y.pluginURL},isParsed:function(){return Ms.applyArabicShaping!=null&&Ms.processBidirectionalText!=null&&Ms.processStyledBidirectionalText!=null},getPluginURL:function(){return Un}},Xs=function(){!Ms.isLoading()&&!Ms.isLoaded()&&yo()==="deferred"&&Is()},Gn=function(y,I){this.zoom=y,I?(this.now=I.now,this.fadeDuration=I.fadeDuration,this.zoomHistory=I.zoomHistory,this.transition=I.transition):(this.now=0,this.fadeDuration=0,this.zoomHistory=new kt,this.transition={})};Gn.prototype.isSupportedScript=function(y){return Si(y,Ms.isLoaded())},Gn.prototype.crossFadingFactor=function(){return this.fadeDuration===0?1:Math.min((this.now-this.zoomHistory.lastIntegerZoomTime)/this.fadeDuration,1)},Gn.prototype.getCrossfadeParameters=function(){var y=this.zoom,I=y-Math.floor(y),U=this.crossFadingFactor();return y>this.zoomHistory.lastIntegerZoom?{fromScale:2,toScale:1,t:I+(1-I)*U}:{fromScale:.5,toScale:1,t:1-(1-U)*I}};var ja=function(y,I){this.property=y,this.value=I,this.expression=w(I===void 0?y.specification.default:I,y.specification)};ja.prototype.isDataDriven=function(){return this.expression.kind==="source"||this.expression.kind==="composite"},ja.prototype.possiblyEvaluate=function(y,I,U){return this.property.possiblyEvaluate(this,y,I,U)};var Fo=function(y){this.property=y,this.value=new ja(y,void 0)};Fo.prototype.transitioned=function(y,I){return new $s(this.property,this.value,I,x({},y.transition,this.transition),y.now)},Fo.prototype.untransitioned=function(){return new $s(this.property,this.value,null,{},0)};var Uo=function(y){this._properties=y,this._values=Object.create(y.defaultTransitionablePropertyValues)};Uo.prototype.getValue=function(y){return j(this._values[y].value.value)},Uo.prototype.setValue=function(y,I){this._values.hasOwnProperty(y)||(this._values[y]=new Fo(this._values[y].property)),this._values[y].value=new ja(this._values[y].property,I===null?void 0:j(I))},Uo.prototype.getTransition=function(y){return j(this._values[y].transition)},Uo.prototype.setTransition=function(y,I){this._values.hasOwnProperty(y)||(this._values[y]=new Fo(this._values[y].property)),this._values[y].transition=j(I)||void 0},Uo.prototype.serialize=function(){for(var y={},I=0,U=Object.keys(this._values);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 $s=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)};$s.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 j(this._values[y].value)},bu.prototype.setValue=function(y,I){this._values[y]=new ja(this._values[y].property,I===null?void 0:j(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 dl=function(y,I,U){this.property=y,this.value=I,this.parameters=U};dl.prototype.isConstant=function(){return this.value.kind==="constant"},dl.prototype.constantOr=function(y){return this.value.kind==="constant"?this.value.value:y},dl.prototype.evaluate=function(y,I,U,$){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 Me=function(y){this.specification=y};Me.prototype.possiblyEvaluate=function(y,I){return y.expression.evaluate(I)},Me.prototype.interpolate=function(y,I,U){var $=zu[this.specification.type];return $?$(y,I,U):y};var bt=function(y,I){this.specification=y,this.overrides=I};bt.prototype.possiblyEvaluate=function(y,I,U,$){return y.expression.kind==="constant"||y.expression.kind==="camera"?new dl(this,{kind:"constant",value:y.expression.evaluate(I,null,{},U,$)},I):new dl(this,y.expression,I)},bt.prototype.interpolate=function(y,I,U){if(y.value.kind!=="constant"||I.value.kind!=="constant")return y;if(y.value.value===void 0||I.value.value===void 0)return new dl(this,{kind:"constant",value:void 0},y.parameters);var $=zu[this.specification.type];return $?new dl(this,{kind:"constant",value:$(y.value.value,I.value.value,U)},y.parameters):y},bt.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 dl(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,Et=this._calculate(gt,gt,gt,$);return new dl(this,{kind:"constant",value:Et},$)}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 dl(this,{kind:"constant",value:or},$)}else return new dl(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}(bt),Rr=function(y){this.specification=y};Rr.prototype.possiblyEvaluate=function(y,I,U,$){if(y.value!==void 0)if(y.expression.kind==="constant"){var ae=y.expression.evaluate(I,null,{},U,$);return this._calculate(ae,ae,ae,I)}else return this._calculate(y.expression.evaluate(new Gn(Math.floor(I.zoom-1),I)),y.expression.evaluate(new Gn(Math.floor(I.zoom),I)),y.expression.evaluate(new Gn(Math.floor(I.zoom+1),I)),I)},Rr.prototype._calculate=function(y,I,U,$){var ae=$.zoom;return ae>$.zoomHistory.lastIntegerZoom?{from:y,to:I}:{from:U,to:I}},Rr.prototype.interpolate=function(y){return y};var jr=function(y){this.specification=y};jr.prototype.possiblyEvaluate=function(y,I,U,$){return!!y.expression.evaluate(I,null,{},U,$)},jr.prototype.interpolate=function(){return!1};var Nr=function(y){this.properties=y,this.defaultPropertyValues={},this.defaultTransitionablePropertyValues={},this.defaultTransitioningPropertyValues={},this.defaultPossiblyEvaluatedValues={},this.overridableProperties=[];for(var I in y){var U=y[I];U.specification.overridable&&this.overridableProperties.push(I);var $=this.defaultPropertyValues[I]=new ja(U,void 0),ae=this.defaultTransitionablePropertyValues[I]=new Fo(U);this.defaultTransitioningPropertyValues[I]=ae.untransitioned(),this.defaultPossiblyEvaluatedValues[I]=$.possiblyEvaluate({})}};X("DataDrivenProperty",bt),X("DataConstantProperty",Me),X("CrossFadedDataDrivenProperty",zt),X("CrossFadedProperty",Rr),X("ColorRampProperty",jr);var Gr="-transition",mi=function(m){function y(I,U){if(m.call(this),this.id=I.id,this.type=I.type,this._featureFilter={filter:function(){return!0},needGeometry:!1},I.type!=="custom"&&(I=I,this.metadata=I.metadata,this.minzoom=I.minzoom,this.maxzoom=I.maxzoom,I.type!=="background"&&(this.source=I.source,this.sourceLayer=I["source-layer"],this.filter=I.filter),U.layout&&(this._unevaluatedLayout=new bu(U.layout)),U.paint)){this._transitionablePaint=new Uo(U.paint);for(var $ in I.paint)this.setPaintProperty($,I.paint[$],{validate:!1});for(var ae in I.layout)this.setLayoutProperty(ae,I.layout[ae],{validate:!1});this._transitioningPaint=this._transitionablePaint.untransitioned(),this.paint=new Sc(U.paint)}}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.getCrossfadeParameters=function(){return this._crossfadeParameters},y.prototype.getLayoutProperty=function(U){return U==="visibility"?this.visibility:this._unevaluatedLayout.getValue(U)},y.prototype.setLayoutProperty=function(U,$,ae){if(ae===void 0&&(ae={}),$!=null){var he="layers."+this.id+".layout."+U;if(this._validate(Ul,he,U,$,ae))return}if(U==="visibility"){this.visibility=$;return}this._unevaluatedLayout.setValue(U,$)},y.prototype.getPaintProperty=function(U){return V(U,Gr)?this._transitionablePaint.getTransition(U.slice(0,-Gr.length)):this._transitionablePaint.getValue(U)},y.prototype.setPaintProperty=function(U,$,ae){if(ae===void 0&&(ae={}),$!=null){var he="layers."+this.id+".paint."+U;if(this._validate(hl,he,U,$,ae))return!1}if(V(U,Gr))return this._transitionablePaint.setTransition(U.slice(0,-Gr.length),$||void 0),!1;var Oe=this._transitionablePaint._values[U],rt=Oe.property.specification["property-type"]==="cross-faded-data-driven",gt=Oe.value.isDataDriven(),Et=Oe.value;this._transitionablePaint.setValue(U,$),this._handleSpecialPaintPropertyUpdate(U);var or=this._transitionablePaint._values[U].value,_r=or.isDataDriven();return _r||gt||rt||this._handleOverridablePaintPropertyUpdate(U,Et,or)},y.prototype._handleSpecialPaintPropertyUpdate=function(U){},y.prototype._handleOverridablePaintPropertyUpdate=function(U,$,ae){return!1},y.prototype.isHidden=function(U){return this.minzoom&&U<this.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:Rn,style:{glyphs:!0,sprite:!0}}))},y.prototype.is3D=function(){return!1},y.prototype.isTileClipped=function(){return!1},y.prototype.hasOffscreenPass=function(){return!1},y.prototype.resize=function(){},y.prototype.isStateDependent=function(){for(var U in this.paint._values){var $=this.paint.get(U);if(!(!($ instanceof dl)||!Ws($.property.specification))&&($.value.kind==="source"||$.value.kind==="composite")&&$.value.isStateDependent)return!0}return!1},y}(Wn),Ui={Int8:Int8Array,Uint8:Uint8Array,Int16:Int16Array,Uint16:Uint16Array,Int32:Int32Array,Uint32:Uint32Array,Float32:Float32Array},qi=function(y,I){this._structArray=y,this._pos1=I*this.size,this._pos2=this._pos1/2,this._pos4=this._pos1/4,this._pos8=this._pos1/8},Ei=128,Hn=5,en=function(){this.isTransferred=!1,this.capacity=-1,this.resize(0)};en.serialize=function(y,I){return y._trim(),I&&(y.isTransferred=!0,I.push(y.arrayBuffer)),{length:y.length,arrayBuffer:y.arrayBuffer}},en.deserialize=function(y){var I=Object.create(this.prototype);return I.arrayBuffer=y.arrayBuffer,I.length=y.length,I.capacity=y.arrayBuffer.byteLength/I.bytesPerElement,I._refreshViews(),I},en.prototype._trim=function(){this.length!==this.capacity&&(this.capacity=this.length,this.arrayBuffer=this.arrayBuffer.slice(0,this.length*this.bytesPerElement),this._refreshViews())},en.prototype.clear=function(){this.length=0},en.prototype.resize=function(y){this.reserve(y),this.length=y},en.prototype.reserve=function(y){if(y>this.capacity){this.capacity=Math.max(y,Math.floor(this.capacity*Hn),Ei),this.arrayBuffer=new ArrayBuffer(this.capacity*this.bytesPerElement);var I=this.uint8;this._refreshViews(),I&&this.uint8.set(I)}},en.prototype._refreshViews=function(){throw new Error("_refreshViews() must be implemented by each concrete StructArray layout")};function Wi(m,y){y===void 0&&(y=1);var I=0,U=0,$=m.map(function(he){var Oe=si(he.type),rt=I=Mr(I,Math.max(y,Oe)),gt=he.components||1;return U=Math.max(U,Oe),I+=Oe*gt,{name:he.name,type:he.type,components:gt,offset:rt}}),ae=Mr(I,Math.max(U,y));return{members:$,size:ae,alignment:y}}function si(m){return Ui[m].BYTES_PER_ELEMENT}function Mr(m,y){return Math.ceil(m/y)*y}var Yr=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$){var ae=this.length;return this.resize(ae+1),this.emplace(ae,U,$)},y.prototype.emplace=function(U,$,ae){var he=U*2;return this.int16[he+0]=$,this.int16[he+1]=ae,U},y}(en);Yr.prototype.bytesPerElement=4,X("StructArrayLayout2i4",Yr);var xi=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae,he){var Oe=this.length;return this.resize(Oe+1),this.emplace(Oe,U,$,ae,he)},y.prototype.emplace=function(U,$,ae,he,Oe){var rt=U*4;return this.int16[rt+0]=$,this.int16[rt+1]=ae,this.int16[rt+2]=he,this.int16[rt+3]=Oe,U},y}(en);xi.prototype.bytesPerElement=8,X("StructArrayLayout4i8",xi);var Ri=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae,he,Oe,rt){var gt=this.length;return this.resize(gt+1),this.emplace(gt,U,$,ae,he,Oe,rt)},y.prototype.emplace=function(U,$,ae,he,Oe,rt,gt){var Et=U*6;return this.int16[Et+0]=$,this.int16[Et+1]=ae,this.int16[Et+2]=he,this.int16[Et+3]=Oe,this.int16[Et+4]=rt,this.int16[Et+5]=gt,U},y}(en);Ri.prototype.bytesPerElement=12,X("StructArrayLayout2i4i12",Ri);var ci=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae,he,Oe,rt){var gt=this.length;return this.resize(gt+1),this.emplace(gt,U,$,ae,he,Oe,rt)},y.prototype.emplace=function(U,$,ae,he,Oe,rt,gt){var Et=U*4,or=U*8;return this.int16[Et+0]=$,this.int16[Et+1]=ae,this.uint8[or+4]=he,this.uint8[or+5]=Oe,this.uint8[or+6]=rt,this.uint8[or+7]=gt,U},y}(en);ci.prototype.bytesPerElement=8,X("StructArrayLayout2i4ub8",ci);var an=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$){var ae=this.length;return this.resize(ae+1),this.emplace(ae,U,$)},y.prototype.emplace=function(U,$,ae){var he=U*2;return this.float32[he+0]=$,this.float32[he+1]=ae,U},y}(en);an.prototype.bytesPerElement=8,X("StructArrayLayout2f8",an);var Zi=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae,he,Oe,rt,gt,Et,or,_r){var pr=this.length;return this.resize(pr+1),this.emplace(pr,U,$,ae,he,Oe,rt,gt,Et,or,_r)},y.prototype.emplace=function(U,$,ae,he,Oe,rt,gt,Et,or,_r,pr){var Fr=U*10;return this.uint16[Fr+0]=$,this.uint16[Fr+1]=ae,this.uint16[Fr+2]=he,this.uint16[Fr+3]=Oe,this.uint16[Fr+4]=rt,this.uint16[Fr+5]=gt,this.uint16[Fr+6]=Et,this.uint16[Fr+7]=or,this.uint16[Fr+8]=_r,this.uint16[Fr+9]=pr,U},y}(en);Zi.prototype.bytesPerElement=20,X("StructArrayLayout10ui20",Zi);var Bn=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae,he,Oe,rt,gt,Et,or,_r,pr,Fr){var oi=this.length;return this.resize(oi+1),this.emplace(oi,U,$,ae,he,Oe,rt,gt,Et,or,_r,pr,Fr)},y.prototype.emplace=function(U,$,ae,he,Oe,rt,gt,Et,or,_r,pr,Fr,oi){var Hi=U*12;return this.int16[Hi+0]=$,this.int16[Hi+1]=ae,this.int16[Hi+2]=he,this.int16[Hi+3]=Oe,this.uint16[Hi+4]=rt,this.uint16[Hi+5]=gt,this.uint16[Hi+6]=Et,this.uint16[Hi+7]=or,this.int16[Hi+8]=_r,this.int16[Hi+9]=pr,this.int16[Hi+10]=Fr,this.int16[Hi+11]=oi,U},y}(en);Bn.prototype.bytesPerElement=24,X("StructArrayLayout4i4ui4i24",Bn);var hi=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae){var he=this.length;return this.resize(he+1),this.emplace(he,U,$,ae)},y.prototype.emplace=function(U,$,ae,he){var Oe=U*3;return this.float32[Oe+0]=$,this.float32[Oe+1]=ae,this.float32[Oe+2]=he,U},y}(en);hi.prototype.bytesPerElement=12,X("StructArrayLayout3f12",hi);var li=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U){var $=this.length;return this.resize($+1),this.emplace($,U)},y.prototype.emplace=function(U,$){var ae=U*1;return this.uint32[ae+0]=$,U},y}(en);li.prototype.bytesPerElement=4,X("StructArrayLayout1ul4",li);var mn=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae,he,Oe,rt,gt,Et,or){var _r=this.length;return this.resize(_r+1),this.emplace(_r,U,$,ae,he,Oe,rt,gt,Et,or)},y.prototype.emplace=function(U,$,ae,he,Oe,rt,gt,Et,or,_r){var pr=U*10,Fr=U*5;return this.int16[pr+0]=$,this.int16[pr+1]=ae,this.int16[pr+2]=he,this.int16[pr+3]=Oe,this.int16[pr+4]=rt,this.int16[pr+5]=gt,this.uint32[Fr+3]=Et,this.uint16[pr+8]=or,this.uint16[pr+9]=_r,U},y}(en);mn.prototype.bytesPerElement=20,X("StructArrayLayout6i1ul2ui20",mn);var Ji=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae,he,Oe,rt){var gt=this.length;return this.resize(gt+1),this.emplace(gt,U,$,ae,he,Oe,rt)},y.prototype.emplace=function(U,$,ae,he,Oe,rt,gt){var Et=U*6;return this.int16[Et+0]=$,this.int16[Et+1]=ae,this.int16[Et+2]=he,this.int16[Et+3]=Oe,this.int16[Et+4]=rt,this.int16[Et+5]=gt,U},y}(en);Ji.prototype.bytesPerElement=12,X("StructArrayLayout2i2i2i12",Ji);var Vi=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae,he,Oe){var rt=this.length;return this.resize(rt+1),this.emplace(rt,U,$,ae,he,Oe)},y.prototype.emplace=function(U,$,ae,he,Oe,rt){var gt=U*4,Et=U*8;return this.float32[gt+0]=$,this.float32[gt+1]=ae,this.float32[gt+2]=he,this.int16[Et+6]=Oe,this.int16[Et+7]=rt,U},y}(en);Vi.prototype.bytesPerElement=16,X("StructArrayLayout2f1f2i16",Vi);var Ni=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae,he){var Oe=this.length;return this.resize(Oe+1),this.emplace(Oe,U,$,ae,he)},y.prototype.emplace=function(U,$,ae,he,Oe){var rt=U*12,gt=U*3;return this.uint8[rt+0]=$,this.uint8[rt+1]=ae,this.float32[gt+1]=he,this.float32[gt+2]=Oe,U},y}(en);Ni.prototype.bytesPerElement=12,X("StructArrayLayout2ub2f12",Ni);var pn=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae){var he=this.length;return this.resize(he+1),this.emplace(he,U,$,ae)},y.prototype.emplace=function(U,$,ae,he){var Oe=U*3;return this.uint16[Oe+0]=$,this.uint16[Oe+1]=ae,this.uint16[Oe+2]=he,U},y}(en);pn.prototype.bytesPerElement=6,X("StructArrayLayout3ui6",pn);var Vn=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae,he,Oe,rt,gt,Et,or,_r,pr,Fr,oi,Hi,Ai,bn,nn){var xn=this.length;return this.resize(xn+1),this.emplace(xn,U,$,ae,he,Oe,rt,gt,Et,or,_r,pr,Fr,oi,Hi,Ai,bn,nn)},y.prototype.emplace=function(U,$,ae,he,Oe,rt,gt,Et,or,_r,pr,Fr,oi,Hi,Ai,bn,nn,xn){var Pn=U*24,Zn=U*12,ga=U*48;return this.int16[Pn+0]=$,this.int16[Pn+1]=ae,this.uint16[Pn+2]=he,this.uint16[Pn+3]=Oe,this.uint32[Zn+2]=rt,this.uint32[Zn+3]=gt,this.uint32[Zn+4]=Et,this.uint16[Pn+10]=or,this.uint16[Pn+11]=_r,this.uint16[Pn+12]=pr,this.float32[Zn+7]=Fr,this.float32[Zn+8]=oi,this.uint8[ga+36]=Hi,this.uint8[ga+37]=Ai,this.uint8[ga+38]=bn,this.uint32[Zn+10]=nn,this.int16[Pn+22]=xn,U},y}(en);Vn.prototype.bytesPerElement=48,X("StructArrayLayout2i2ui3ul3ui2f3ub1ul1i48",Vn);var na=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae,he,Oe,rt,gt,Et,or,_r,pr,Fr,oi,Hi,Ai,bn,nn,xn,Pn,Zn,ga,ha,eo,za,Za,Ko,to,ao){var _s=this.length;return this.resize(_s+1),this.emplace(_s,U,$,ae,he,Oe,rt,gt,Et,or,_r,pr,Fr,oi,Hi,Ai,bn,nn,xn,Pn,Zn,ga,ha,eo,za,Za,Ko,to,ao)},y.prototype.emplace=function(U,$,ae,he,Oe,rt,gt,Et,or,_r,pr,Fr,oi,Hi,Ai,bn,nn,xn,Pn,Zn,ga,ha,eo,za,Za,Ko,to,ao,_s){var jo=U*34,El=U*17;return this.int16[jo+0]=$,this.int16[jo+1]=ae,this.int16[jo+2]=he,this.int16[jo+3]=Oe,this.int16[jo+4]=rt,this.int16[jo+5]=gt,this.int16[jo+6]=Et,this.int16[jo+7]=or,this.uint16[jo+8]=_r,this.uint16[jo+9]=pr,this.uint16[jo+10]=Fr,this.uint16[jo+11]=oi,this.uint16[jo+12]=Hi,this.uint16[jo+13]=Ai,this.uint16[jo+14]=bn,this.uint16[jo+15]=nn,this.uint16[jo+16]=xn,this.uint16[jo+17]=Pn,this.uint16[jo+18]=Zn,this.uint16[jo+19]=ga,this.uint16[jo+20]=ha,this.uint16[jo+21]=eo,this.uint16[jo+22]=za,this.uint32[El+12]=Za,this.float32[El+13]=Ko,this.float32[El+14]=to,this.float32[El+15]=ao,this.float32[El+16]=_s,U},y}(en);na.prototype.bytesPerElement=68,X("StructArrayLayout8i15ui1ul4f68",na);var Ki=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U){var $=this.length;return this.resize($+1),this.emplace($,U)},y.prototype.emplace=function(U,$){var ae=U*1;return this.float32[ae+0]=$,U},y}(en);Ki.prototype.bytesPerElement=4,X("StructArrayLayout1f4",Ki);var kn=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae){var he=this.length;return this.resize(he+1),this.emplace(he,U,$,ae)},y.prototype.emplace=function(U,$,ae,he){var Oe=U*3;return this.int16[Oe+0]=$,this.int16[Oe+1]=ae,this.int16[Oe+2]=he,U},y}(en);kn.prototype.bytesPerElement=6,X("StructArrayLayout3i6",kn);var ta=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae){var he=this.length;return this.resize(he+1),this.emplace(he,U,$,ae)},y.prototype.emplace=function(U,$,ae,he){var Oe=U*2,rt=U*4;return this.uint32[Oe+0]=$,this.uint16[rt+2]=ae,this.uint16[rt+3]=he,U},y}(en);ta.prototype.bytesPerElement=8,X("StructArrayLayout1ul2ui8",ta);var oa=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$){var ae=this.length;return this.resize(ae+1),this.emplace(ae,U,$)},y.prototype.emplace=function(U,$,ae){var he=U*2;return this.uint16[he+0]=$,this.uint16[he+1]=ae,U},y}(en);oa.prototype.bytesPerElement=4,X("StructArrayLayout2ui4",oa);var ba=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U){var $=this.length;return this.resize($+1),this.emplace($,U)},y.prototype.emplace=function(U,$){var ae=U*1;return this.uint16[ae+0]=$,U},y}(en);ba.prototype.bytesPerElement=2,X("StructArrayLayout1ui2",ba);var is=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae,he){var Oe=this.length;return this.resize(Oe+1),this.emplace(Oe,U,$,ae,he)},y.prototype.emplace=function(U,$,ae,he,Oe){var rt=U*4;return this.float32[rt+0]=$,this.float32[rt+1]=ae,this.float32[rt+2]=he,this.float32[rt+3]=Oe,U},y}(en);is.prototype.bytesPerElement=16,X("StructArrayLayout4f16",is);var Zs=function(m){function y(){m.apply(this,arguments)}m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y;var I={anchorPointX:{configurable:!0},anchorPointY:{configurable:!0},x1:{configurable:!0},y1:{configurable:!0},x2:{configurable:!0},y2:{configurable:!0},featureIndex:{configurable:!0},sourceLayerIndex:{configurable:!0},bucketIndex:{configurable:!0},anchorPoint:{configurable:!0}};return I.anchorPointX.get=function(){return this._structArray.int16[this._pos2+0]},I.anchorPointY.get=function(){return this._structArray.int16[this._pos2+1]},I.x1.get=function(){return this._structArray.int16[this._pos2+2]},I.y1.get=function(){return this._structArray.int16[this._pos2+3]},I.x2.get=function(){return this._structArray.int16[this._pos2+4]},I.y2.get=function(){return this._structArray.int16[this._pos2+5]},I.featureIndex.get=function(){return this._structArray.uint32[this._pos4+3]},I.sourceLayerIndex.get=function(){return this._structArray.uint16[this._pos2+8]},I.bucketIndex.get=function(){return this._structArray.uint16[this._pos2+9]},I.anchorPoint.get=function(){return new u(this.anchorPointX,this.anchorPointY)},Object.defineProperties(y.prototype,I),y}(qi);Zs.prototype.size=20;var Va=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.get=function(U){return new Zs(this,U)},y}(mn);X("CollisionBoxArray",Va);var Ml=function(m){function y(){m.apply(this,arguments)}m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y;var I={anchorX:{configurable:!0},anchorY:{configurable:!0},glyphStartIndex:{configurable:!0},numGlyphs:{configurable:!0},vertexStartIndex:{configurable:!0},lineStartIndex:{configurable:!0},lineLength:{configurable:!0},segment:{configurable:!0},lowerSize:{configurable:!0},upperSize:{configurable:!0},lineOffsetX:{configurable:!0},lineOffsetY:{configurable:!0},writingMode:{configurable:!0},placedOrientation:{configurable:!0},hidden:{configurable:!0},crossTileID:{configurable:!0},associatedIconIndex:{configurable:!0}};return I.anchorX.get=function(){return this._structArray.int16[this._pos2+0]},I.anchorY.get=function(){return this._structArray.int16[this._pos2+1]},I.glyphStartIndex.get=function(){return this._structArray.uint16[this._pos2+2]},I.numGlyphs.get=function(){return this._structArray.uint16[this._pos2+3]},I.vertexStartIndex.get=function(){return this._structArray.uint32[this._pos4+2]},I.lineStartIndex.get=function(){return this._structArray.uint32[this._pos4+3]},I.lineLength.get=function(){return this._structArray.uint32[this._pos4+4]},I.segment.get=function(){return this._structArray.uint16[this._pos2+10]},I.lowerSize.get=function(){return this._structArray.uint16[this._pos2+11]},I.upperSize.get=function(){return this._structArray.uint16[this._pos2+12]},I.lineOffsetX.get=function(){return this._structArray.float32[this._pos4+7]},I.lineOffsetY.get=function(){return this._structArray.float32[this._pos4+8]},I.writingMode.get=function(){return this._structArray.uint8[this._pos1+36]},I.placedOrientation.get=function(){return this._structArray.uint8[this._pos1+37]},I.placedOrientation.set=function(U){this._structArray.uint8[this._pos1+37]=U},I.hidden.get=function(){return this._structArray.uint8[this._pos1+38]},I.hidden.set=function(U){this._structArray.uint8[this._pos1+38]=U},I.crossTileID.get=function(){return this._structArray.uint32[this._pos4+10]},I.crossTileID.set=function(U){this._structArray.uint32[this._pos4+10]=U},I.associatedIconIndex.get=function(){return this._structArray.int16[this._pos2+22]},Object.defineProperties(y.prototype,I),y}(qi);Ml.prototype.size=48;var zo=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.get=function(U){return new Ml(this,U)},y}(Vn);X("PlacedSymbolArray",zo);var Qs=function(m){function y(){m.apply(this,arguments)}m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y;var I={anchorX:{configurable:!0},anchorY:{configurable:!0},rightJustifiedTextSymbolIndex:{configurable:!0},centerJustifiedTextSymbolIndex:{configurable:!0},leftJustifiedTextSymbolIndex:{configurable:!0},verticalPlacedTextSymbolIndex:{configurable:!0},placedIconSymbolIndex:{configurable:!0},verticalPlacedIconSymbolIndex:{configurable:!0},key:{configurable:!0},textBoxStartIndex:{configurable:!0},textBoxEndIndex:{configurable:!0},verticalTextBoxStartIndex:{configurable:!0},verticalTextBoxEndIndex:{configurable:!0},iconBoxStartIndex:{configurable:!0},iconBoxEndIndex:{configurable:!0},verticalIconBoxStartIndex:{configurable:!0},verticalIconBoxEndIndex:{configurable:!0},featureIndex:{configurable:!0},numHorizontalGlyphVertices:{configurable:!0},numVerticalGlyphVertices:{configurable:!0},numIconVertices:{configurable:!0},numVerticalIconVertices:{configurable:!0},useRuntimeCollisionCircles:{configurable:!0},crossTileID:{configurable:!0},textBoxScale:{configurable:!0},textOffset0:{configurable:!0},textOffset1:{configurable:!0},collisionCircleDiameter:{configurable:!0}};return I.anchorX.get=function(){return this._structArray.int16[this._pos2+0]},I.anchorY.get=function(){return this._structArray.int16[this._pos2+1]},I.rightJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+2]},I.centerJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+3]},I.leftJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+4]},I.verticalPlacedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+5]},I.placedIconSymbolIndex.get=function(){return this._structArray.int16[this._pos2+6]},I.verticalPlacedIconSymbolIndex.get=function(){return this._structArray.int16[this._pos2+7]},I.key.get=function(){return this._structArray.uint16[this._pos2+8]},I.textBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+9]},I.textBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+10]},I.verticalTextBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+11]},I.verticalTextBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+12]},I.iconBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+13]},I.iconBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+14]},I.verticalIconBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+15]},I.verticalIconBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+16]},I.featureIndex.get=function(){return this._structArray.uint16[this._pos2+17]},I.numHorizontalGlyphVertices.get=function(){return this._structArray.uint16[this._pos2+18]},I.numVerticalGlyphVertices.get=function(){return this._structArray.uint16[this._pos2+19]},I.numIconVertices.get=function(){return this._structArray.uint16[this._pos2+20]},I.numVerticalIconVertices.get=function(){return this._structArray.uint16[this._pos2+21]},I.useRuntimeCollisionCircles.get=function(){return this._structArray.uint16[this._pos2+22]},I.crossTileID.get=function(){return this._structArray.uint32[this._pos4+12]},I.crossTileID.set=function(U){this._structArray.uint32[this._pos4+12]=U},I.textBoxScale.get=function(){return this._structArray.float32[this._pos4+13]},I.textOffset0.get=function(){return this._structArray.float32[this._pos4+14]},I.textOffset1.get=function(){return this._structArray.float32[this._pos4+15]},I.collisionCircleDiameter.get=function(){return this._structArray.float32[this._pos4+16]},Object.defineProperties(y.prototype,I),y}(qi);Qs.prototype.size=68;var al=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.get=function(U){return new Qs(this,U)},y}(na);X("SymbolInstanceArray",al);var Vl=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.getoffsetX=function(U){return this.float32[U*1+0]},y}(Ki);X("GlyphOffsetArray",Vl);var ss=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.getx=function(U){return this.int16[U*3+0]},y.prototype.gety=function(U){return this.int16[U*3+1]},y.prototype.gettileUnitDistanceFromAnchor=function(U){return this.int16[U*3+2]},y}(kn);X("SymbolLineVertexArray",ss);var Vs=function(m){function y(){m.apply(this,arguments)}m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y;var I={featureIndex:{configurable:!0},sourceLayerIndex:{configurable:!0},bucketIndex:{configurable:!0}};return I.featureIndex.get=function(){return this._structArray.uint32[this._pos4+0]},I.sourceLayerIndex.get=function(){return this._structArray.uint16[this._pos2+2]},I.bucketIndex.get=function(){return this._structArray.uint16[this._pos2+3]},Object.defineProperties(y.prototype,I),y}(qi);Vs.prototype.size=8;var Ys=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.get=function(U){return new Vs(this,U)},y}(ta);X("FeatureIndexArray",Ys);var wa=Wi([{name:"a_pos",components:2,type:"Int16"}],4),ol=wa.members,io=function(y){y===void 0&&(y=[]),this.segments=y};io.prototype.prepareSegment=function(y,I,U,$){var ae=this.segments[this.segments.length-1];return y>io.MAX_VERTEX_ARRAY_LENGTH&&te("Max vertices per segment is "+io.MAX_VERTEX_ARRAY_LENGTH+": bucket requested "+y),(!ae||ae.vertexLength+y>io.MAX_VERTEX_ARRAY_LENGTH||ae.sortKey!==$)&&(ae={vertexOffset:I.length,primitiveOffset:U.length,vertexLength:0,primitiveLength:0},$!==void 0&&(ae.sortKey=$),this.segments.push(ae)),ae},io.prototype.get=function(){return this.segments},io.prototype.destroy=function(){for(var y=0,I=this.segments;y<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=Wi([{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,Et,or;for($=I.length&3,ae=I.length-$,he=U,rt=3432918353,gt=461845907,or=0;or<ae;)Et=I.charCodeAt(or)&255|(I.charCodeAt(++or)&255)<<8|(I.charCodeAt(++or)&255)<<16|(I.charCodeAt(++or)&255)<<24,++or,Et=(Et&65535)*rt+(((Et>>>16)*rt&65535)<<16)&4294967295,Et=Et<<15|Et>>>17,Et=(Et&65535)*gt+(((Et>>>16)*gt&65535)<<16)&4294967295,he^=Et,he=he<<13|he>>>19,Oe=(he&65535)*5+(((he>>>16)*5&65535)<<16)&4294967295,he=(Oe&65535)+27492+(((Oe>>>16)+58964&65535)<<16);switch(Et=0,$){case 3:Et^=(I.charCodeAt(or+2)&255)<<16;case 2:Et^=(I.charCodeAt(or+1)&255)<<8;case 1:Et^=I.charCodeAt(or)&255,Et=(Et&65535)*rt+(((Et>>>16)*rt&65535)<<16)&4294967295,Et=Et<<15|Et>>>17,Et=(Et&65535)*gt+(((Et>>>16)*gt&65535)<<16)&4294967295,he^=Et}return he^=I.length,he^=he>>>16,he=(he&65535)*2246822507+(((he>>>16)*2246822507&65535)<<16)&4294967295,he^=he>>>13,he=(he&65535)*3266489909+(((he>>>16)*3266489909&65535)<<16)&4294967295,he^=he>>>16,he>>>0}m.exports=y}),q=a(function(m){function y(I,U){for(var $=I.length,ae=U^$,he=0,Oe;$>=4;)Oe=I.charCodeAt(he)&255|(I.charCodeAt(++he)&255)<<8|(I.charCodeAt(++he)&255)<<16|(I.charCodeAt(++he)&255)<<24,Oe=(Oe&65535)*1540483477+(((Oe>>>16)*1540483477&65535)<<16),Oe^=Oe>>>24,Oe=(Oe&65535)*1540483477+(((Oe>>>16)*1540483477&65535)<<16),ae=(ae&65535)*1540483477+(((ae>>>16)*1540483477&65535)<<16)^Oe,$-=4,++he;switch($){case 3:ae^=(I.charCodeAt(he+2)&255)<<16;case 2:ae^=(I.charCodeAt(he+1)&255)<<8;case 1:ae^=I.charCodeAt(he)&255,ae=(ae&65535)*1540483477+(((ae>>>16)*1540483477&65535)<<16)}return ae^=ae>>>13,ae=(ae&65535)*1540483477+(((ae>>>16)*1540483477&65535)<<16),ae^=ae>>>15,ae>>>0}m.exports=y}),K=J,de=J,ne=q;K.murmur3=de,K.murmur2=ne;var we=function(){this.ids=[],this.positions=[],this.indexed=!1};we.prototype.add=function(y,I,U,$){this.ids.push(ft(y)),this.positions.push(I,U,$)},we.prototype.getPositions=function(y){for(var I=ft(y),U=0,$=this.ids.length-1;U<$;){var ae=U+$>>1;this.ids[ae]>=I?$=ae:U=ae+1}for(var he=[];this.ids[U]===I;){var Oe=this.positions[3*U],rt=this.positions[3*U+1],gt=this.positions[3*U+2];he.push({index:Oe,start:rt,end:gt}),U++}return he},we.serialize=function(y,I){var U=new Float64Array(y.ids),$=new Uint32Array(y.positions);return Xt(U,$,0,U.length-1),I&&I.push(U.buffer,$.buffer),{ids:U,positions:$}},we.deserialize=function(y){var I=new we;return I.ids=y.ids,I.positions=y.positions,I.indexed=!0,I};var Ue=Math.pow(2,53)-1;function ft(m){var y=+m;return!isNaN(y)&&y<=Ue?y:K(String(m))}function Xt(m,y,I,U){for(;I<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?(Xt(m,y,I,he),I=he+1):(Xt(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),Qe=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),Ct=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),Rt=function(m){function y(I,U){m.call(this,I,U),this.current=cs.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),Dt=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 yt(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 Rt(y,I):new Qe(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 Qe(y,I)};var ur=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 $};ur.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)},ur.prototype.updatePaintArray=function(y,I,U,$){var ae=this.expression.evaluate({zoom:0},U,$);this._setPaintValue(y,I,ae)},ur.prototype._setPaintValue=function(y,I,U){if(this.type==="color")for(var $=yt(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))}},ur.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))},ur.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=yt(U),he=yt($),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 Qe(y,I)};var Ur=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};Ur.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)},Ur.prototype.updatePaintArray=function(y,I,U,$,ae){this._setPaintValues(y,I,U.patterns&&U.patterns[this.layerId],ae)},Ur.prototype._setPaintValues=function(y,I,U,$){if(!(!$||!U)){var ae=U.min,he=U.mid,Oe=U.max,rt=$[ae],gt=$[he],Et=$[Oe];if(!(!rt||!gt||!Et))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],Et.tl[0],Et.tl[1],Et.br[0],Et.br[1],gt.pixelRatio,Et.pixelRatio)}},Ur.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))},Ur.prototype.destroy=function(){this.zoomOutPaintVertexBuffer&&this.zoomOutPaintVertexBuffer.destroy(),this.zoomInPaintVertexBuffer&&this.zoomInPaintVertexBuffer.destroy()};var Di=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 dl)||!Ws(he.property.specification))){var Oe=Ti(ae,y.type),rt=he.value,gt=he.property.specification.type,Et=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 pr=rn(ae,gt,"source");this.binders[ae]=_r?new Ur(rt,gt,Et,I,pr,y.id):new ur(rt,Oe,gt,pr),$.push("/a_"+ae)}else{var Fr=rn(ae,gt,"composite");this.binders[ae]=new br(rt,Oe,gt,Et,I,Fr),$.push("/z_"+ae)}}}this.cacheKey=$.sort().join("")};Di.prototype.getMaxValue=function(y){var I=this.binders[y];return I instanceof ur||I instanceof br?I.maxValue:0},Di.prototype.populatePaintArrays=function(y,I,U,$,ae){for(var he in this.binders){var Oe=this.binders[he];(Oe instanceof ur||Oe instanceof br||Oe instanceof Ur)&&Oe.populatePaintArray(y,I,U,$,ae)}},Di.prototype.setConstantPatternPositions=function(y,I){for(var U in this.binders){var $=this.binders[U];$ instanceof ht&&$.setConstantPatternPositions(y,I)}},Di.prototype.updatePaintArrays=function(y,I,U,$,ae){var he=!1;for(var Oe in y)for(var rt=I.getPositions(Oe),gt=0,Et=rt;gt<Et.length;gt+=1){var or=Et[gt],_r=U.feature(or.index);for(var pr in this.binders){var Fr=this.binders[pr];if((Fr instanceof ur||Fr instanceof br||Fr instanceof Ur)&&Fr.expression.isStateDependent===!0){var oi=$.paint.get(pr);Fr.expression=oi.value,Fr.updatePaintArray(or.start,or.end,_r,y[Oe],ae),he=!0}}}return he},Di.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},Di.prototype.getBinderAttributes=function(){var y=[];for(var I in this.binders){var U=this.binders[I];if(U instanceof ur||U instanceof br)for(var $=0;$<U.paintVertexAttributes.length;$++)y.push(U.paintVertexAttributes[$].name);else if(U instanceof Ur)for(var ae=0;ae<D.members.length;ae++)y.push(D.members[ae].name)}return y},Di.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},Di.prototype.getPaintVertexBuffers=function(){return this._buffers},Di.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},Di.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,Et=Oe.binding;this.binders[gt].setUniform(Et,$,U.get(gt),rt)}},Di.prototype.updatePaintBuffers=function(y){this._buffers=[];for(var I in this.binders){var U=this.binders[I];if(y&&U instanceof Ur){var $=y.fromScale===2?U.zoomInPaintVertexBuffer:U.zoomOutPaintVertexBuffer;$&&this._buffers.push($)}else(U instanceof ur||U instanceof br)&&U.paintVertexBuffer&&this._buffers.push(U.paintVertexBuffer)}},Di.prototype.upload=function(y){for(var I in this.binders){var U=this.binders[I];(U instanceof ur||U instanceof br||U instanceof Ur)&&U.upload(y)}this.updatePaintBuffers()},Di.prototype.destroy=function(){for(var y in this.binders){var I=this.binders[y];(I instanceof ur||I instanceof br||I instanceof Ur)&&I.destroy()}};var fi=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 Di(he,I,U)}this.needsUpload=!1,this._featureMap=new we,this._bufferOffset=0};fi.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},fi.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}},fi.prototype.get=function(y){return this.programConfigurations[y]},fi.prototype.upload=function(y){if(this.needsUpload){for(var I in this.programConfigurations)this.programConfigurations[I].upload(y);this.needsUpload=!1}},fi.prototype.destroy=function(){for(var y in this.programConfigurations)this.programConfigurations[y].destroy()};function Ti(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:Zi,composite:Zi},"fill-pattern":{source:Zi,composite:Zi},"fill-extrusion-pattern":{source:Zi,composite:Zi}};return y[m]}function rn(m,y,I){var U={color:{source:an,composite:is},number:{source:Ki,composite:an}},$=gn(m);return $&&$[I]||U[y][I]}X("ConstantBinder",Pt),X("CrossFadedConstantBinder",ht),X("SourceExpressionBinder",ur),X("CrossFadedCompositeBinder",Ur),X("CompositeExpressionBinder",br),X("ProgramConfiguration",Di,{omit:["_buffers"]}),X("ProgramConfigurationSet",fi);var Ci=8192,Bi=15,Gi=Math.pow(2,Bi-1)-1,sn=-Gi-1;function zn(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,sn,Gi),he.y=p(rt,sn,Gi),(Oe<he.x||Oe>he.x+1||rt<he.y||rt>he.y+1)&&te("Geometry exceeds allowed extent, reduce your vector tile buffer size")}return I}function Ja(m,y){return{type:m.type,id:m.id,properties:m.properties,geometry:y?zn(m):[]}}function co(m,y,I,U,$){m.emplaceBack(y*2+(U+1)/2,I*2+($+1)/2)}var ts=function(y){this.zoom=y.zoom,this.overscaling=y.overscaling,this.layers=y.layers,this.layerIds=this.layers.map(function(I){return I.id}),this.index=y.index,this.hasPattern=!1,this.layoutVertexArray=new Yr,this.indexArray=new pn,this.segments=new io,this.programConfigurations=new fi(y.layers,y.zoom),this.stateDependentLayerIds=this.layers.filter(function(I){return I.isStateDependent()}).map(function(I){return I.id})};ts.prototype.populate=function(y,I,U){var $=this.layers[0],ae=[],he=null;$.type==="circle"&&(he=$.layout.get("circle-sort-key"));for(var Oe=0,rt=y;Oe<rt.length;Oe+=1){var gt=rt[Oe],Et=gt.feature,or=gt.id,_r=gt.index,pr=gt.sourceLayerIndex,Fr=this.layers[0]._featureFilter.needGeometry,oi=Ja(Et,Fr);if(this.layers[0]._featureFilter.filter(new Gn(this.zoom),oi,U)){var Hi=he?he.evaluate(oi,{},U):void 0,Ai={id:or,properties:Et.properties,type:Et.type,sourceLayerIndex:pr,index:_r,geometry:Fr?oi.geometry:zn(Et),patterns:{},sortKey:Hi};ae.push(Ai)}}he&&ae.sort(function(za,Za){return za.sortKey-Za.sortKey});for(var bn=0,nn=ae;bn<nn.length;bn+=1){var xn=nn[bn],Pn=xn,Zn=Pn.geometry,ga=Pn.index,ha=Pn.sourceLayerIndex,eo=y[ga].feature;this.addFeature(xn,Zn,ga,U),I.featureIndex.insert(eo,Zn,ga,ha,this.index)}},ts.prototype.update=function(y,I,U){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(y,I,this.stateDependentLayers,U)},ts.prototype.isEmpty=function(){return this.layoutVertexArray.length===0},ts.prototype.uploadPending=function(){return!this.uploaded||this.programConfigurations.needsUpload},ts.prototype.upload=function(y){this.uploaded||(this.layoutVertexBuffer=y.createVertexBuffer(this.layoutVertexArray,ol),this.indexBuffer=y.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(y),this.uploaded=!0},ts.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())},ts.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 Et=gt[rt],or=Et.x,_r=Et.y;if(!(or<0||or>=Ci||_r<0||_r>=Ci)){var pr=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray,y.sortKey),Fr=pr.vertexLength;co(this.layoutVertexArray,or,_r,-1,-1),co(this.layoutVertexArray,or,_r,1,-1),co(this.layoutVertexArray,or,_r,1,1),co(this.layoutVertexArray,or,_r,-1,1),this.indexArray.emplaceBack(Fr,Fr+1,Fr+2),this.indexArray.emplaceBack(Fr,Fr+3,Fr+2),pr.vertexLength+=4,pr.primitiveLength+=2}}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,y,U,{},$)},X("CircleBucket",ts,{omit:["layers"]});function so(m,y){for(var I=0;I<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!!Lv(m,y)}function Zo(m,y,I){return!!(Td(m,y)||Kv(y,m,I))}function ms(m,y){if(m.length===1)return pp(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(pp(y,m[ae]))return!0;for(var he=0;he<y.length;he++)if(Lv(m,y[he]))return!0;return!1}function ou(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(Cv(m,$,I))return!0}return!1}function Cv(m,y,I){if(m.length>1){if(Lv(m,y))return!0;for(var U=0;U<y.length;U++)if(Kv(y[U],m,I))return!0}for(var $=0;$<m.length;$++)if(Kv(m[$],y,I))return!0;return!1}function Lv(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 Kv(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 pp(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 gp(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,Et=rt;gt<Et.length;gt+=1){var or=Et[gt];if(Td(m,or))return!0}for(var _r=0;_r<m.length-1;_r++){var pr=m[_r],Fr=m[_r+1];if(Vd(pr,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 Pv(m){return Math.sqrt(m[0]*m[0]+m[1]*m[1])}function Jv(m,y,I,U,$){if(!y[0]&&!y[1])return m;var ae=u.convert(y)._mult($);I==="viewport"&&ae._rotate(-U);for(var he=[],Oe=0;Oe<m.length;Oe++){var rt=m[Oe];he.push(rt.sub(ae))}return he}var Iv=new Nr({"circle-sort-key":new bt(Rn.layout_circle["circle-sort-key"])}),ay=new Nr({"circle-radius":new bt(Rn.paint_circle["circle-radius"]),"circle-color":new bt(Rn.paint_circle["circle-color"]),"circle-blur":new bt(Rn.paint_circle["circle-blur"]),"circle-opacity":new bt(Rn.paint_circle["circle-opacity"]),"circle-translate":new Me(Rn.paint_circle["circle-translate"]),"circle-translate-anchor":new Me(Rn.paint_circle["circle-translate-anchor"]),"circle-pitch-scale":new Me(Rn.paint_circle["circle-pitch-scale"]),"circle-pitch-alignment":new Me(Rn.paint_circle["circle-pitch-alignment"]),"circle-stroke-width":new bt(Rn.paint_circle["circle-stroke-width"]),"circle-stroke-color":new bt(Rn.paint_circle["circle-stroke-color"]),"circle-stroke-opacity":new bt(Rn.paint_circle["circle-stroke-opacity"])}),fg={paint:ay,layout:Iv},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 oy(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 jh(){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 im(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 b1(){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 w1(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 sy(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 nm(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],Et=y[8],or=y[9],_r=y[10],pr=y[11],Fr=y[12],oi=y[13],Hi=y[14],Ai=y[15],bn=I*Oe-U*he,nn=I*rt-$*he,xn=I*gt-ae*he,Pn=U*rt-$*Oe,Zn=U*gt-ae*Oe,ga=$*gt-ae*rt,ha=Et*oi-or*Fr,eo=Et*Hi-_r*Fr,za=Et*Ai-pr*Fr,Za=or*Hi-_r*oi,Ko=or*Ai-pr*oi,to=_r*Ai-pr*Hi,ao=bn*to-nn*Ko+xn*Za+Pn*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]=(oi*ga-Hi*Zn+Ai*Pn)*ao,m[3]=(_r*Zn-or*ga-pr*Pn)*ao,m[4]=(rt*za-he*to-gt*eo)*ao,m[5]=(I*to-$*za+ae*eo)*ao,m[6]=(Hi*xn-Fr*ga-Ai*nn)*ao,m[7]=(Et*ga-_r*xn+pr*nn)*ao,m[8]=(he*Ko-Oe*za+gt*ha)*ao,m[9]=(U*za-I*Ko-ae*ha)*ao,m[10]=(Fr*Zn-oi*xn+Ai*bn)*ao,m[11]=(or*xn-Et*Zn-pr*bn)*ao,m[12]=(Oe*eo-he*Za-rt*ha)*ao,m[13]=(I*Za-U*eo+$*ha)*ao,m[14]=(oi*nn-Fr*Pn-Hi*bn)*ao,m[15]=(Et*Pn-or*nn+_r*bn)*ao,m):null}function am(m,y,I){var U=y[0],$=y[1],ae=y[2],he=y[3],Oe=y[4],rt=y[5],gt=y[6],Et=y[7],or=y[8],_r=y[9],pr=y[10],Fr=y[11],oi=y[12],Hi=y[13],Ai=y[14],bn=y[15],nn=I[0],xn=I[1],Pn=I[2],Zn=I[3];return m[0]=nn*U+xn*Oe+Pn*or+Zn*oi,m[1]=nn*$+xn*rt+Pn*_r+Zn*Hi,m[2]=nn*ae+xn*gt+Pn*pr+Zn*Ai,m[3]=nn*he+xn*Et+Pn*Fr+Zn*bn,nn=I[4],xn=I[5],Pn=I[6],Zn=I[7],m[4]=nn*U+xn*Oe+Pn*or+Zn*oi,m[5]=nn*$+xn*rt+Pn*_r+Zn*Hi,m[6]=nn*ae+xn*gt+Pn*pr+Zn*Ai,m[7]=nn*he+xn*Et+Pn*Fr+Zn*bn,nn=I[8],xn=I[9],Pn=I[10],Zn=I[11],m[8]=nn*U+xn*Oe+Pn*or+Zn*oi,m[9]=nn*$+xn*rt+Pn*_r+Zn*Hi,m[10]=nn*ae+xn*gt+Pn*pr+Zn*Ai,m[11]=nn*he+xn*Et+Pn*Fr+Zn*bn,nn=I[12],xn=I[13],Pn=I[14],Zn=I[15],m[12]=nn*U+xn*Oe+Pn*or+Zn*oi,m[13]=nn*$+xn*rt+Pn*_r+Zn*Hi,m[14]=nn*ae+xn*gt+Pn*pr+Zn*Ai,m[15]=nn*he+xn*Et+Pn*Fr+Zn*bn,m}function vc(m,y,I){var U=I[0],$=I[1],ae=I[2],he,Oe,rt,gt,Et,or,_r,pr,Fr,oi,Hi,Ai;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],Et=y[4],or=y[5],_r=y[6],pr=y[7],Fr=y[8],oi=y[9],Hi=y[10],Ai=y[11],m[0]=he,m[1]=Oe,m[2]=rt,m[3]=gt,m[4]=Et,m[5]=or,m[6]=_r,m[7]=pr,m[8]=Fr,m[9]=oi,m[10]=Hi,m[11]=Ai,m[12]=he*U+Et*$+Fr*ae+y[12],m[13]=Oe*U+or*$+oi*ae+y[13],m[14]=rt*U+_r*$+Hi*ae+y[14],m[15]=gt*U+pr*$+Ai*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],Et=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*$+Et*U,m[6]=Oe*$+or*U,m[7]=rt*$+_r*U,m[8]=gt*$-ae*U,m[9]=Et*$-he*U,m[10]=or*$-Oe*U,m[11]=_r*$-rt*U,m}function ly(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],Et=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*$+Et*U,m[2]=Oe*$+or*U,m[3]=rt*$+_r*U,m[4]=gt*$-ae*U,m[5]=Et*$-he*U,m[6]=or*$-Oe*U,m[7]=_r*$-rt*U,m}function T1(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=am;function om(){var m=new oh(3);return oh!=Float32Array&&(m[0]=0,m[1]=0,m[2]=0),m}function kw(m){var y=new oh(3);return y[0]=m[0],y[1]=m[1],y[2]=m[2],y}function Rv(m,y,I){return m[0]=y[0]+I[0],m[1]=y[1]+I[1],m[2]=y[2]+I[2],m}function sm(m,y,I){return m[0]=y[0]-I[0],m[1]=y[1]-I[1],m[2]=y[2]-I[2],m}function Cw(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 q9(m,y){return m[0]*y[0]+m[1]*y[1]+m[2]*y[2]}function B9(m,y,I){var U=y[0],$=y[1],ae=y[2],he=I[0],Oe=I[1],rt=I[2];return m[0]=$*rt-ae*Oe,m[1]=ae*he-U*rt,m[2]=U*Oe-$*he,m}function N9(m,y,I){var U=y[0],$=y[1],ae=y[2];return m[0]=U*I[0]+$*I[3]+ae*I[6],m[1]=U*I[1]+$*I[4]+ae*I[7],m[2]=U*I[2]+$*I[5]+ae*I[8],m}var U9=sm,LQ=function(){var m=om();return function(y,I,U,$,ae,he){var Oe,rt;for(I||(I=3),U||(U=0),$?rt=Math.min($*I+U,y.length):rt=y.length,Oe=U;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 V9(){var m=new oh(4);return oh!=Float32Array&&(m[0]=0,m[1]=0,m[2]=0,m[3]=0),m}function G9(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 H9(m,y){return m[0]*y[0]+m[1]*y[1]+m[2]*y[2]+m[3]*y[3]}function uy(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=V9();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 mC(){var m=new oh(2);return oh!=Float32Array&&(m[0]=0,m[1]=0),m}function nS(m){var y=m[0],I=m[1];return y*y+I*I}var aS=nS,PQ=function(){var m=mC();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}}(),j9=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 ts(U)},y.prototype.queryRadius=function(U){var $=U;return Ad("circle-radius",this,$)+Ad("circle-stroke-width",this,$)+Pv(this.paint.get("circle-translate"))},y.prototype.queryIntersectsFeature=function(U,$,ae,he,Oe,rt,gt,Et){for(var or=Jv(U,this.paint.get("circle-translate"),this.paint.get("circle-translate-anchor"),rt.angle,gt),_r=this.paint.get("circle-radius").evaluate($,ae),pr=this.paint.get("circle-stroke-width").evaluate($,ae),Fr=_r+pr,oi=this.paint.get("circle-pitch-alignment")==="map",Hi=oi?or:_C(or,Et),Ai=oi?Fr*gt:Fr,bn=0,nn=he;bn<nn.length;bn+=1)for(var xn=nn[bn],Pn=0,Zn=xn;Pn<Zn.length;Pn+=1){var ga=Zn[Pn],ha=oi?ga:yC(ga,Et),eo=Ai,za=uy([],[ga.x,ga.y,0,1],Et);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(Hi,ha,eo))return!0}return!1},y}(mi);function yC(m,y){var I=uy([],[m.x,m.y,0,1],y);return new u(I[0]/I[3],I[1]/I[3])}function _C(m,y){return m.map(function(I){return yC(I,y)})}var oS=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}(ts);X("HeatmapBucket",oS,{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 Lw(m,y,I){var U=y.width,$=y.height;if(!(U===m.width&&$===m.height)){var ae=Md({},{width:U,height:$},I);Pw(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 Pw(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,Et=((U.y+rt)*y.width+U.x)*ae,or=0;or<$.width*ae;or++)Oe[Et+or]=he[gt+or];return y}var Dv=function(y,I){Md(this,y,1,I)};Dv.prototype.resize=function(y){Lw(this,y,1)},Dv.prototype.clone=function(){return new Dv({width:this.width,height:this.height},new Uint8Array(this.data))},Dv.copy=function(y,I,U,$,ae){Pw(y,I,U,$,ae,1)};var Sh=function(y,I){Md(this,y,4,I)};Sh.prototype.resize=function(y){Lw(this,y,4)},Sh.prototype.replace=function(y,I){I?this.data.set(y):y instanceof Uint8ClampedArray?this.data=new Uint8Array(y.buffer):this.data=y},Sh.prototype.clone=function(){return new Sh({width:this.width,height:this.height},new Uint8Array(this.data))},Sh.copy=function(y,I,U,$,ae){Pw(y,I,U,$,ae,4)},X("AlphaImage",Dv),X("RGBAImage",Sh);var Gx=new Nr({"heatmap-radius":new bt(Rn.paint_heatmap["heatmap-radius"]),"heatmap-weight":new bt(Rn.paint_heatmap["heatmap-weight"]),"heatmap-intensity":new Me(Rn.paint_heatmap["heatmap-intensity"]),"heatmap-color":new jr(Rn.paint_heatmap["heatmap-color"]),"heatmap-opacity":new Me(Rn.paint_heatmap["heatmap-opacity"])}),A1={paint:Gx};function Hx(m){var y={},I=m.resolution||256,U=m.clips?m.clips.length:1,$=m.image||new Sh({width:I,height:U}),ae=function(bn,nn,xn){y[m.evaluationKey]=xn;var Pn=m.expression.evaluate(y);$.data[bn+nn+0]=Math.floor(Pn.r*255/Pn.a),$.data[bn+nn+1]=Math.floor(Pn.g*255/Pn.a),$.data[bn+nn+2]=Math.floor(Pn.b*255/Pn.a),$.data[bn+nn+3]=Math.floor(Pn.a*255)};if(m.clips)for(var gt=0,Et=0;gt<U;++gt,Et+=I*4)for(var or=0,_r=0;or<I;or++,_r+=4){var pr=or/(I-1),Fr=m.clips[gt],oi=Fr.start,Hi=Fr.end,Ai=oi*(1-pr)+Hi*pr;ae(Et,_r,Ai)}else for(var he=0,Oe=0;he<I;he++,Oe+=4){var rt=he/(I-1);ae(0,Oe,rt)}return $}var Iw=function(m){function y(I){m.call(this,I,A1),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 oS(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),W9=new Nr({"hillshade-illumination-direction":new Me(Rn.paint_hillshade["hillshade-illumination-direction"]),"hillshade-illumination-anchor":new Me(Rn.paint_hillshade["hillshade-illumination-anchor"]),"hillshade-exaggeration":new Me(Rn.paint_hillshade["hillshade-exaggeration"]),"hillshade-shadow-color":new Me(Rn.paint_hillshade["hillshade-shadow-color"]),"hillshade-highlight-color":new Me(Rn.paint_hillshade["hillshade-highlight-color"]),"hillshade-accent-color":new Me(Rn.paint_hillshade["hillshade-accent-color"])}),X9={paint:W9},xC=function(m){function y(I){m.call(this,I,X9)}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),bC=Wi([{name:"a_pos",components:2,type:"Int16"}],4),Z9=bC.members,Rw=S1,wC=S1;function S1(m,y,I){I=I||2;var U=y&&y.length,$=U?y[0]*I:m.length,ae=Dw(m,0,$,I,!0),he=[];if(!ae||ae.next===ae.prev)return he;var Oe,rt,gt,Et,or,_r,pr;if(U&&(ae=um(m,y,ae,I)),m.length>80*I){Oe=gt=m[0],rt=Et=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>Et&&(Et=_r);pr=Math.max(gt-Oe,Et-rt),pr=pr!==0?1/pr:0}return jx(ae,he,I,Oe,rt,pr),he}function Dw(m,y,I,U,$){var ae,he;if($===dS(m,y,I,U)>0)for(ae=y;ae<I;ae+=U)he=EC(ae,m[ae],m[ae+1],he);else for(ae=I-U;ae>=y;ae-=U)he=EC(ae,m[ae],m[ae+1],he);return he&&Xx(he,he.next)&&(Kx(he),he=he.next),he}function lm(m,y){if(!m)return m;y||(y=m);var I=m,U;do if(U=!1,!I.steiner&&(Xx(I,I.next)||Tf(I.prev,I,I.next)===0)){if(Kx(I),I=y=I.prev,I===I.next)break;U=!0}else I=I.next;while(U||I!==y);return y}function jx(m,y,I,U,$,ae,he){if(m){!he&&ae&&Fw(m,U,$,ae);for(var Oe=m,rt,gt;m.prev!==m.next;){if(rt=m.prev,gt=m.next,ae?AC(m,U,$,ae):TC(m)){y.push(rt.i/I),y.push(m.i/I),y.push(gt.i/I),Kx(m),m=gt.next,Oe=gt.next;continue}if(m=gt,m===Oe){he?he===1?(m=Wx(lm(m),y,I),jx(m,y,I,U,$,ae,2)):he===2&&d0(m,y,I,U,$,ae):jx(lm(m),y,I,U,$,ae,1);break}}}}function TC(m){var y=m.prev,I=m,U=m.next;if(Tf(y,I,U)>=0)return!1;for(var $=m.next.next;$!==m.prev;){if(cm(y.x,y.y,I.x,I.y,U.x,U.y,$.x,$.y)&&Tf($.prev,$,$.next)>=0)return!1;$=$.next}return!0}function AC(m,y,I,U){var $=m.prev,ae=m,he=m.next;if(Tf($,ae,he)>=0)return!1;for(var Oe=$.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,Et=$.y>ae.y?$.y>he.y?$.y:he.y:ae.y>he.y?ae.y:he.y,or=uS(Oe,rt,y,I,U),_r=uS(gt,Et,y,I,U),pr=m.prevZ,Fr=m.nextZ;pr&&pr.z>=or&&Fr&&Fr.z<=_r;){if(pr!==m.prev&&pr!==m.next&&cm($.x,$.y,ae.x,ae.y,he.x,he.y,pr.x,pr.y)&&Tf(pr.prev,pr,pr.next)>=0||(pr=pr.prevZ,Fr!==m.prev&&Fr!==m.next&&cm($.x,$.y,ae.x,ae.y,he.x,he.y,Fr.x,Fr.y)&&Tf(Fr.prev,Fr,Fr.next)>=0))return!1;Fr=Fr.nextZ}for(;pr&&pr.z>=or;){if(pr!==m.prev&&pr!==m.next&&cm($.x,$.y,ae.x,ae.y,he.x,he.y,pr.x,pr.y)&&Tf(pr.prev,pr,pr.next)>=0)return!1;pr=pr.prevZ}for(;Fr&&Fr.z<=_r;){if(Fr!==m.prev&&Fr!==m.next&&cm($.x,$.y,ae.x,ae.y,he.x,he.y,Fr.x,Fr.y)&&Tf(Fr.prev,Fr,Fr.next)>=0)return!1;Fr=Fr.nextZ}return!0}function Wx(m,y,I){var U=m;do{var $=U.prev,ae=U.next.next;!Xx($,ae)&&zw($,U,U.next,ae)&&Yx($,ae)&&Yx(ae,$)&&(y.push($.i/I),y.push(U.i/I),y.push(ae.i/I),Kx(U),Kx(U.next),U=m=ae),U=U.next}while(U!==m);return lm(U)}function d0(m,y,I,U,$,ae){var he=m;do{for(var Oe=he.next.next;Oe!==he.prev;){if(he.i!==Oe.i&&M1(he,Oe)){var rt=fS(he,Oe);he=lm(he,he.next),rt=lm(rt,rt.next),jx(he,y,I,U,$,ae),jx(rt,y,I,U,$,ae);return}Oe=Oe.next}he=he.next}while(he!==m)}function um(m,y,I,U){var $=[],ae,he,Oe,rt,gt;for(ae=0,he=y.length;ae<he;ae++)Oe=y[ae]*U,rt=ae<he-1?y[ae+1]*U:m.length,gt=Dw(m,Oe,rt,U,!1),gt===gt.next&&(gt.steiner=!0),$.push(cS(gt));for($.sort(SC),ae=0;ae<$.length;ae++)sS($[ae],I),I=lm(I,I.next);return I}function SC(m,y){return m.x-y.x}function sS(m,y){if(y=Y9(m,y),y){var I=fS(y,m);lm(y,y.next),lm(I,I.next)}}function Y9(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,Et=he.y,or=1/0,_r;I=he;do U>=I.x&&I.x>=gt&&U!==I.x&&cm($<Et?U:ae,$,gt,Et,$<Et?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&&K9(he,I)))&&(he=I,or=_r)),I=I.next;while(I!==rt);return he}function K9(m,y){return Tf(m.prev,m,y.prev)<0&&Tf(y.next,m,m.next)<0}function Fw(m,y,I,U){var $=m;do $.z===null&&($.z=uS($.x,$.y,y,I,U)),$.prevZ=$.prev,$.nextZ=$.next,$=$.next;while($!==m);$.prevZ.nextZ=null,$.prevZ=null,lS($)}function lS(m){var y,I,U,$,ae,he,Oe,rt,gt=1;do{for(I=m,m=null,ae=null,he=0;I;){for(he++,U=I,Oe=0,y=0;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 uS(m,y,I,U,$){return m=32767*(m-I)*$,y=32767*(y-U)*$,m=(m|m<<8)&16711935,m=(m|m<<4)&252645135,m=(m|m<<2)&858993459,m=(m|m<<1)&1431655765,y=(y|y<<8)&16711935,y=(y|y<<4)&252645135,y=(y|y<<2)&858993459,y=(y|y<<1)&1431655765,m|y<<1}function cS(m){var y=m,I=m;do(y.x<I.x||y.x===I.x&&y.y<I.y)&&(I=y),y=y.next;while(y!==m);return I}function cm(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 M1(m,y){return m.next.i!==y.i&&m.prev.i!==y.i&&!MC(m,y)&&(Yx(m,y)&&Yx(y,m)&&J9(m,y)&&(Tf(m.prev,m,y.prev)||Tf(m,y.prev,y))||Xx(m,y)&&Tf(m.prev,m,m.next)>0&&Tf(y.prev,y,y.next)>0)}function Tf(m,y,I){return(y.y-m.y)*(I.x-y.x)-(y.x-m.x)*(I.y-y.y)}function Xx(m,y){return m.x===y.x&&m.y===y.y}function zw(m,y,I,U){var $=cy(Tf(m,y,I)),ae=cy(Tf(m,y,U)),he=cy(Tf(I,U,m)),Oe=cy(Tf(I,U,y));return!!($!==ae&&he!==Oe||$===0&&Zx(m,I,y)||ae===0&&Zx(m,U,y)||he===0&&Zx(I,m,U)||Oe===0&&Zx(I,y,U))}function Zx(m,y,I){return y.x<=Math.max(m.x,I.x)&&y.x>=Math.min(m.x,I.x)&&y.y<=Math.max(m.y,I.y)&&y.y>=Math.min(m.y,I.y)}function cy(m){return m>0?1:m<0?-1:0}function MC(m,y){var I=m;do{if(I.i!==m.i&&I.next.i!==m.i&&I.i!==y.i&&I.next.i!==y.i&&zw(I,I.next,m,y))return!0;I=I.next}while(I!==m);return!1}function Yx(m,y){return Tf(m.prev,m,m.next)<0?Tf(m,y,m.next)>=0&&Tf(m,m.prev,y)>=0:Tf(m,y,m.prev)<0||Tf(m,m.next,y)<0}function J9(m,y){var I=m,U=!1,$=(m.x+y.x)/2,ae=(m.y+y.y)/2;do I.y>ae!=I.next.y>ae&&I.next.y!==I.y&&$<(I.next.x-I.x)*(ae-I.y)/(I.next.y-I.y)+I.x&&(U=!U),I=I.next;while(I!==m);return U}function fS(m,y){var I=new hS(m.i,m.x,m.y),U=new hS(y.i,y.x,y.y),$=m.next,ae=y.prev;return m.next=y,y.prev=m,I.next=$,$.prev=I,U.next=I,I.prev=U,ae.next=U,U.prev=ae,U}function EC(m,y,I,U){var $=new hS(m,y,I);return U?($.next=U.next,$.prev=U,U.next.prev=$,U.next=$):($.prev=$,$.next=$),$}function Kx(m){m.next.prev=m.prev,m.prev.next=m.next,m.prevZ&&(m.prevZ.nextZ=m.nextZ),m.nextZ&&(m.nextZ.prevZ=m.prevZ)}function hS(m,y,I){this.i=m,this.x=y,this.y=I,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1}S1.deviation=function(m,y,I,U){var $=y&&y.length,ae=$?y[0]*I:m.length,he=Math.abs(dS(m,0,ae,I));if($)for(var Oe=0,rt=y.length;Oe<rt;Oe++){var gt=y[Oe]*I,Et=Oe<rt-1?y[Oe+1]*I:m.length;he-=Math.abs(dS(m,gt,Et,I))}var or=0;for(Oe=0;Oe<U.length;Oe+=3){var _r=U[Oe]*I,pr=U[Oe+1]*I,Fr=U[Oe+2]*I;or+=Math.abs((m[_r]-m[Fr])*(m[pr+1]-m[_r+1])-(m[_r]-m[pr])*(m[Fr+1]-m[_r+1]))}return he===0&&or===0?0:Math.abs((or-he)/he)};function dS(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 $}S1.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},Rw.default=wC;function vS(m,y,I,U,$){dg(m,y,I||0,U||m.length-1,$||kC)}function dg(m,y,I,U,$){for(;U>I;){if(U-I>600){var ae=U-I+1,he=y-I+1,Oe=Math.log(ae),rt=.5*Math.exp(2*Oe/3),gt=.5*Math.sqrt(Oe*rt*(ae-rt)/ae)*(he-ae/2<0?-1:1),Et=Math.max(I,Math.floor(y-he*rt/ae+gt)),or=Math.min(U,Math.floor(y+(ae-he)*rt/ae+gt));dg(m,y,Et,or,$)}var _r=m[y],pr=I,Fr=U;for(E1(m,I,y),$(m[U],_r)>0&&E1(m,I,U);pr<Fr;){for(E1(m,pr,Fr),pr++,Fr--;$(m[pr],_r)<0;)pr++;for(;$(m[Fr],_r)>0;)Fr--}$(m[I],_r)===0?E1(m,I,Fr):(Fr++,E1(m,Fr,U)),Fr<=y&&(I=Fr+1),y<=Fr&&(U=Fr-1)}}function E1(m,y,I){var U=m[y];m[y]=m[I],m[I]=U}function kC(m,y){return m<y?-1:m>y?1:0}function Ow(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||(vS(U[rt],y,1,U[rt].length-1,CC),U[rt]=U[rt].slice(0,y));return U}function CC(m,y){return y.area-m.area}function qw(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"),Et=gt.value;if(Et.kind!=="constant"){var or=Et.evaluate({zoom:U-1},I,{},$.availableImages),_r=Et.evaluate({zoom:U},I,{},$.availableImages),pr=Et.evaluate({zoom:U+1},I,{},$.availableImages);or=or&&or.name?or.name:or,_r=_r&&_r.name?_r.name:_r,pr=pr&&pr.name?pr.name:pr,ae[or]=!0,ae[_r]=!0,ae[pr]=!0,I.patterns[rt.id]={min:or,mid:_r,max:pr}}}return I}var $x=500,mp=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 pn,this.indexArray2=new oa,this.programConfigurations=new fi(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})};mp.prototype.populate=function(y,I,U){this.hasPattern=qw("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,Et=rt.id,or=rt.index,_r=rt.sourceLayerIndex,pr=this.layers[0]._featureFilter.needGeometry,Fr=Ja(gt,pr);if(this.layers[0]._featureFilter.filter(new Gn(this.zoom),Fr,U)){var oi=$?$.evaluate(Fr,{},U,I.availableImages):void 0,Hi={id:Et,properties:gt.properties,type:gt.type,sourceLayerIndex:_r,index:or,geometry:pr?Fr.geometry:zn(gt),patterns:{},sortKey:oi};ae.push(Hi)}}$&&ae.sort(function(za,Za){return za.sortKey-Za.sortKey});for(var Ai=0,bn=ae;Ai<bn.length;Ai+=1){var nn=bn[Ai],xn=nn,Pn=xn.geometry,Zn=xn.index,ga=xn.sourceLayerIndex;if(this.hasPattern){var ha=Jx("fill",this.layers,nn,this.zoom,I);this.patternFeatures.push(ha)}else this.addFeature(nn,Pn,Zn,U,{});var eo=y[Zn].feature;I.featureIndex.insert(eo,Pn,Zn,ga,this.index)}},mp.prototype.update=function(y,I,U){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(y,I,this.stateDependentLayers,U)},mp.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)}},mp.prototype.isEmpty=function(){return this.layoutVertexArray.length===0},mp.prototype.uploadPending=function(){return!this.uploaded||this.programConfigurations.needsUpload},mp.prototype.upload=function(y){this.uploaded||(this.layoutVertexBuffer=y.createVertexBuffer(this.layoutVertexArray,Z9),this.indexBuffer=y.createIndexBuffer(this.indexArray),this.indexBuffer2=y.createIndexBuffer(this.indexArray2)),this.programConfigurations.upload(y),this.uploaded=!0},mp.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.indexBuffer2.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.segments2.destroy())},mp.prototype.addFeature=function(y,I,U,$,ae){for(var he=0,Oe=Ow(I,$x);he<Oe.length;he+=1){for(var rt=Oe[he],gt=0,Et=0,or=rt;Et<or.length;Et+=1){var _r=or[Et];gt+=_r.length}for(var pr=this.segments.prepareSegment(gt,this.layoutVertexArray,this.indexArray),Fr=pr.vertexLength,oi=[],Hi=[],Ai=0,bn=rt;Ai<bn.length;Ai+=1){var nn=bn[Ai];if(nn.length!==0){nn!==rt[0]&&Hi.push(oi.length/2);var xn=this.segments2.prepareSegment(nn.length,this.layoutVertexArray,this.indexArray2),Pn=xn.vertexLength;this.layoutVertexArray.emplaceBack(nn[0].x,nn[0].y),this.indexArray2.emplaceBack(Pn+nn.length-1,Pn),oi.push(nn[0].x),oi.push(nn[0].y);for(var Zn=1;Zn<nn.length;Zn++)this.layoutVertexArray.emplaceBack(nn[Zn].x,nn[Zn].y),this.indexArray2.emplaceBack(Pn+Zn-1,Pn+Zn),oi.push(nn[Zn].x),oi.push(nn[Zn].y);xn.vertexLength+=nn.length,xn.primitiveLength+=nn.length}}for(var ga=Rw(oi,Hi),ha=0;ha<ga.length;ha+=3)this.indexArray.emplaceBack(Fr+ga[ha],Fr+ga[ha+1],Fr+ga[ha+2]);pr.vertexLength+=gt,pr.primitiveLength+=ga.length/3}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,y,U,ae,$)},X("FillBucket",mp,{omit:["layers","patternFeatures"]});var pS=new Nr({"fill-sort-key":new bt(Rn.layout_fill["fill-sort-key"])}),LC=new Nr({"fill-antialias":new Me(Rn.paint_fill["fill-antialias"]),"fill-opacity":new bt(Rn.paint_fill["fill-opacity"]),"fill-color":new bt(Rn.paint_fill["fill-color"]),"fill-outline-color":new bt(Rn.paint_fill["fill-outline-color"]),"fill-translate":new Me(Rn.paint_fill["fill-translate"]),"fill-translate-anchor":new Me(Rn.paint_fill["fill-translate-anchor"]),"fill-pattern":new zt(Rn.paint_fill["fill-pattern"])}),$v={paint:LC,layout:pS},Qx=function(m){function y(I){m.call(this,I,$v)}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 mp(U)},y.prototype.queryRadius=function(){return Pv(this.paint.get("fill-translate"))},y.prototype.queryIntersectsFeature=function(U,$,ae,he,Oe,rt,gt){var Et=Jv(U,this.paint.get("fill-translate"),this.paint.get("fill-translate-anchor"),rt.angle,gt);return ms(Et,he)},y.prototype.isTileClipped=function(){return!0},y}(mi),PC=Wi([{name:"a_pos",components:2,type:"Int16"},{name:"a_normal_ed",components:4,type:"Int16"}],4),IC=PC.members,gS=fy;function fy(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(RC,this,y)}function RC(m,y,I){m==1?y.id=I.readVarint():m==2?DC(I,y):m==3?y.type=I.readVarint():m==4&&(y._geometry=I.pos)}function DC(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]=$}}fy.types=["Unknown","Point","LineString","Polygon"],fy.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},fy.prototype.bbox=function(){var m=this._pbf;m.pos=this._geometry;for(var y=m.readVarint()+m.pos,I=1,U=0,$=0,ae=0,he=1/0,Oe=-1/0,rt=1/0,gt=-1/0;m.pos<y;){if(U<=0){var Et=m.readVarint();I=Et&7,U=Et>>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]},fy.prototype.toGeoJSON=function(m,y,I){var U=this.extent*Math.pow(2,I),$=this.extent*m,ae=this.extent*y,he=this.loadGeometry(),Oe=fy.types[this.type],rt,gt;function Et(pr){for(var Fr=0;Fr<pr.length;Fr++){var oi=pr[Fr],Hi=180-(oi.y+ae)*360/U;pr[Fr]=[(oi.x+$)*360/U-180,360/Math.PI*Math.atan(Math.exp(Hi*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,Et(he);break;case 2:for(rt=0;rt<he.length;rt++)Et(he[rt]);break;case 3:for(he=$9(he),rt=0;rt<he.length;rt++)for(gt=0;gt<he[rt].length;gt++)Et(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 $9(m){var y=m.length;if(y<=1)return[m];for(var I=[],U,$,ae=0;ae<y;ae++){var he=FC(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 FC(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=mS;function mS(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(zC,this,y),this.length=this._features.length}function zC(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(OC(I))}function OC(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}mS.prototype.feature=function(m){if(m<0||m>=this._features.length)throw new Error("feature index out of bounds");this._pbf.pos=this._features[m];var y=this._pbf.readVarint()+this._pbf.pos;return new gS(this._pbf,y,this.extent,this._keys,this._values)};var qC=Q9;function Q9(m,y){this.layers=m.readFields(eO,{},y)}function eO(m,y,I){if(m===3){var U=new vg(I,I.readVarint()+I.pos);U.length&&(y[U.name]=U)}}var BC=qC,k1=gS,NC=vg,pg={VectorTile:BC,VectorTileFeature:k1,VectorTileLayer:NC},UC=pg.VectorTileFeature.types,Bw=500,C1=Math.pow(2,13);function fm(m,y,I,U,$,ae,he,Oe){m.emplaceBack(y,I,Math.floor(U*C1)*2+he,$*C1*2,ae*C1*2,Math.round(Oe))}var Vp=function(y){this.zoom=y.zoom,this.overscaling=y.overscaling,this.layers=y.layers,this.layerIds=this.layers.map(function(I){return I.id}),this.index=y.index,this.hasPattern=!1,this.layoutVertexArray=new Ri,this.indexArray=new pn,this.programConfigurations=new fi(y.layers,y.zoom),this.segments=new io,this.stateDependentLayerIds=this.layers.filter(function(I){return I.isStateDependent()}).map(function(I){return I.id})};Vp.prototype.populate=function(y,I,U){this.features=[],this.hasPattern=qw("fill-extrusion",this.layers,I);for(var $=0,ae=y;$<ae.length;$+=1){var he=ae[$],Oe=he.feature,rt=he.id,gt=he.index,Et=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 pr={id:rt,sourceLayerIndex:Et,index:gt,geometry:or?_r.geometry:zn(Oe),properties:Oe.properties,type:Oe.type,patterns:{}};this.hasPattern?this.features.push(Jx("fill-extrusion",this.layers,pr,this.zoom,I)):this.addFeature(pr,pr.geometry,gt,U,{}),I.featureIndex.insert(Oe,pr.geometry,gt,Et,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,IC),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=Ow(I,Bw);he<Oe.length;he+=1){for(var rt=Oe[he],gt=0,Et=0,or=rt;Et<or.length;Et+=1){var _r=or[Et];gt+=_r.length}for(var pr=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray),Fr=0,oi=rt;Fr<oi.length;Fr+=1){var Hi=oi[Fr];if(Hi.length!==0&&!rO(Hi))for(var Ai=0,bn=0;bn<Hi.length;bn++){var nn=Hi[bn];if(bn>=1){var xn=Hi[bn-1];if(!tO(nn,xn)){pr.vertexLength+4>io.MAX_VERTEX_ARRAY_LENGTH&&(pr=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray));var Pn=nn.sub(xn)._perp()._unit(),Zn=xn.dist(nn);Ai+Zn>32768&&(Ai=0),fm(this.layoutVertexArray,nn.x,nn.y,Pn.x,Pn.y,0,0,Ai),fm(this.layoutVertexArray,nn.x,nn.y,Pn.x,Pn.y,0,1,Ai),Ai+=Zn,fm(this.layoutVertexArray,xn.x,xn.y,Pn.x,Pn.y,0,0,Ai),fm(this.layoutVertexArray,xn.x,xn.y,Pn.x,Pn.y,0,1,Ai);var ga=pr.vertexLength;this.indexArray.emplaceBack(ga,ga+2,ga+1),this.indexArray.emplaceBack(ga+1,ga+2,ga+3),pr.vertexLength+=4,pr.primitiveLength+=2}}}}if(pr.vertexLength+gt>io.MAX_VERTEX_ARRAY_LENGTH&&(pr=this.segments.prepareSegment(gt,this.layoutVertexArray,this.indexArray)),UC[y.type]==="Polygon"){for(var ha=[],eo=[],za=pr.vertexLength,Za=0,Ko=rt;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 _s=to[ao];fm(this.layoutVertexArray,_s.x,_s.y,0,0,1,1,0),ha.push(_s.x),ha.push(_s.y)}}}for(var jo=Rw(ha,eo),El=0;El<jo.length;El+=3)this.indexArray.emplaceBack(za+jo[El],za+jo[El+2],za+jo[El+1]);pr.primitiveLength+=jo.length/3,pr.vertexLength+=gt}}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,y,U,ae,$)},X("FillExtrusionBucket",Vp,{omit:["layers","features"]});function tO(m,y){return m.x===y.x&&(m.x<0||m.x>Ci)||m.y===y.y&&(m.y<0||m.y>Ci)}function rO(m){return m.every(function(y){return y.x<0})||m.every(function(y){return y.x>Ci})||m.every(function(y){return y.y<0})||m.every(function(y){return y.y>Ci})}var L1=new Nr({"fill-extrusion-opacity":new Me(Rn["paint_fill-extrusion"]["fill-extrusion-opacity"]),"fill-extrusion-color":new bt(Rn["paint_fill-extrusion"]["fill-extrusion-color"]),"fill-extrusion-translate":new Me(Rn["paint_fill-extrusion"]["fill-extrusion-translate"]),"fill-extrusion-translate-anchor":new Me(Rn["paint_fill-extrusion"]["fill-extrusion-translate-anchor"]),"fill-extrusion-pattern":new zt(Rn["paint_fill-extrusion"]["fill-extrusion-pattern"]),"fill-extrusion-height":new bt(Rn["paint_fill-extrusion"]["fill-extrusion-height"]),"fill-extrusion-base":new bt(Rn["paint_fill-extrusion"]["fill-extrusion-base"]),"fill-extrusion-vertical-gradient":new Me(Rn["paint_fill-extrusion"]["fill-extrusion-vertical-gradient"])}),sd={paint:L1},hm=function(m){function y(I){m.call(this,I,sd)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.createBucket=function(U){return new Vp(U)},y.prototype.queryRadius=function(){return Pv(this.paint.get("fill-extrusion-translate"))},y.prototype.is3D=function(){return!0},y.prototype.queryIntersectsFeature=function(U,$,ae,he,Oe,rt,gt,Et){var or=Jv(U,this.paint.get("fill-extrusion-translate"),this.paint.get("fill-extrusion-translate-anchor"),rt.angle,gt),_r=this.paint.get("fill-extrusion-height").evaluate($,ae),pr=this.paint.get("fill-extrusion-base").evaluate($,ae),Fr=iO(or,Et,rt,0),oi=_S(he,pr,_r,Et),Hi=oi[0],Ai=oi[1];return VC(Hi,Ai,Fr)},y}(mi);function hy(m,y){return m.x*y.x+m.y*y.y}function yS(m,y){if(m.length===1){for(var I=0,U=y[I++],$;!$||U.equals($);)if($=y[I++],!$)return 1/0;for(;I<y.length;I++){var ae=y[I],he=m[0],Oe=$.sub(U),rt=ae.sub(U),gt=he.sub(U),Et=hy(Oe,Oe),or=hy(Oe,rt),_r=hy(rt,rt),pr=hy(gt,Oe),Fr=hy(gt,rt),oi=Et*_r-or*or,Hi=(_r*pr-or*Fr)/oi,Ai=(Et*Fr-or*pr)/oi,bn=1-Hi-Ai,nn=U.z*bn+$.z*Hi+ae.z*Ai;if(isFinite(nn))return nn}return 1/0}else{for(var xn=1/0,Pn=0,Zn=y;Pn<Zn.length;Pn+=1){var ga=Zn[Pn];xn=Math.min(xn,ga.z)}return xn}}function VC(m,y,I){var U=1/0;ms(I,y)&&(U=yS(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],Et=he[Oe],or=he[Oe+1],_r=[rt,gt,or,Et,rt];so(I,_r)&&(U=Math.min(U,yS(I,_r)))}return U===1/0?!1:U}function _S(m,y,I,U){for(var $=[],ae=[],he=U[8]*y,Oe=U[9]*y,rt=U[10]*y,gt=U[11]*y,Et=U[8]*I,or=U[9]*I,_r=U[10]*I,pr=U[11]*I,Fr=0,oi=m;Fr<oi.length;Fr+=1){for(var Hi=oi[Fr],Ai=[],bn=[],nn=0,xn=Hi;nn<xn.length;nn+=1){var Pn=xn[nn],Zn=Pn.x,ga=Pn.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,_s=Za+gt,jo=ha+Et,El=eo+or,Iu=za+_r,kl=Za+pr,Cl=new u(Ko/_s,to/_s);Cl.z=ao/_s,Ai.push(Cl);var yl=new u(jo/kl,El/kl);yl.z=Iu/kl,bn.push(yl)}$.push(Ai),ae.push(bn)}return[$,ae]}function iO(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];uy(rt,rt,y),$.push(new u(rt[0]/rt[3],rt[1]/rt[3]))}return $}var GC=Wi([{name:"a_pos_normal",components:2,type:"Int16"},{name:"a_data",components:4,type:"Uint8"}],4),HC=GC.members,nO=Wi([{name:"a_uv_x",components:1,type:"Float32"},{name:"a_split_index",components:1,type:"Float32"}]),jC=nO.members,xS=pg.VectorTileFeature.types,Nw=63,WC=Math.cos(75/2*(Math.PI/180)),eb=15,bS=20,XC=15,Uw=1/2,tb=Math.pow(2,XC-1)/Uw,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 an,this.indexArray=new pn,this.programConfigurations=new fi(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=qw("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,Et=rt.id,or=rt.index,_r=rt.sourceLayerIndex,pr=this.layers[0]._featureFilter.needGeometry,Fr=Ja(gt,pr);if(this.layers[0]._featureFilter.filter(new Gn(this.zoom),Fr,U)){var oi=$?$.evaluate(Fr,{},U):void 0,Hi={id:Et,properties:gt.properties,type:gt.type,sourceLayerIndex:_r,index:or,geometry:pr?Fr.geometry:zn(gt),patterns:{},sortKey:oi};ae.push(Hi)}}$&&ae.sort(function(za,Za){return za.sortKey-Za.sortKey});for(var Ai=0,bn=ae;Ai<bn.length;Ai+=1){var nn=bn[Ai],xn=nn,Pn=xn.geometry,Zn=xn.index,ga=xn.sourceLayerIndex;if(this.hasPattern){var ha=Jx("line",this.layers,nn,this.zoom,I);this.patternFeatures.push(ha)}else this.addFeature(nn,Pn,Zn,U,{});var eo=y[Zn].feature;I.featureIndex.insert(eo,Pn,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,jC)),this.layoutVertexBuffer=y.createVertexBuffer(this.layoutVertexArray,HC),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"),Et=he.get("line-round-limit");this.lineClips=this.lineFeatureClips(y);for(var or=0,_r=I;or<_r.length;or+=1){var pr=_r[or];this.addLine(pr,y,Oe,rt,gt,Et)}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=xS[I.type]==="Polygon",gt=y.length;gt>=2&&y[gt-1].equals(y[gt-2]);)gt--;for(var Et=0;Et<gt-1&&y[Et].equals(y[Et+1]);)Et++;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),pr,Fr=void 0,oi=void 0,Hi=void 0,Ai=void 0;this.e1=this.e2=-1,rt&&(pr=y[gt-2],Ai=y[Et].sub(pr)._unit()._perp());for(var bn=Et;bn<gt;bn++)if(oi=bn===gt-1?rt?y[Et+1]:void 0:y[bn+1],!(oi&&y[bn].equals(oi))){Ai&&(Hi=Ai),pr&&(Fr=pr),pr=y[bn],Ai=oi?oi.sub(pr)._unit()._perp():Hi,Hi=Hi||Ai;var nn=Hi.add(Ai);(nn.x!==0||nn.y!==0)&&nn._unit();var xn=Hi.x*Ai.x+Hi.y*Ai.y,Pn=nn.x*Ai.x+nn.y*Ai.y,Zn=Pn!==0?1/Pn:1/0,ga=2*Math.sqrt(2-2*Pn),ha=Pn<WC&&Fr&&oi,eo=Hi.x*Ai.y-Hi.y*Ai.x>0;if(ha&&bn>Et){var za=pr.dist(Fr);if(za>2*or){var Za=pr.sub(pr.sub(Fr)._mult(or/za)._round());this.updateDistance(Fr,Za),this.addCurrentVertex(Za,Hi,0,0,_r),Fr=Za}}var Ko=Fr&&oi,to=Ko?U:rt?"butt":$;if(Ko&&to==="round"&&(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,pr),to==="miter")nn._mult(Zn),this.addCurrentVertex(pr,nn,0,0,_r);else if(to==="flipbevel"){if(Zn>100)nn=Ai.mult(-1);else{var ao=Zn*Hi.add(Ai).mag()/Hi.sub(Ai).mag();nn._perp()._mult(ao*(eo?-1:1))}this.addCurrentVertex(pr,nn,0,0,_r),this.addCurrentVertex(pr,nn.mult(-1),0,0,_r)}else if(to==="bevel"||to==="fakeround"){var _s=-Math.sqrt(Zn*Zn-1),jo=eo?_s:0,El=eo?0:_s;if(Fr&&this.addCurrentVertex(pr,Hi,jo,El,_r),to==="fakeround")for(var Iu=Math.round(ga*180/Math.PI/bS),kl=1;kl<Iu;kl++){var Cl=kl/Iu;if(Cl!==.5){var yl=Cl-.5,Qu=1.0904+xn*(-3.2452+xn*(3.55645-xn*1.43519)),gc=.848013+xn*(-1.06021+xn*.215638);Cl=Cl+Cl*yl*(Cl-1)*(Qu*yl*yl+gc)}var Sf=Ai.sub(Hi)._mult(Cl)._add(Hi)._unit()._mult(eo?-1:1);this.addHalfVertex(pr,Sf.x,Sf.y,!1,eo,0,_r)}oi&&this.addCurrentVertex(pr,Ai,-jo,-El,_r)}else if(to==="butt")this.addCurrentVertex(pr,nn,0,0,_r);else if(to==="square"){var Ff=Fr?1:-1;this.addCurrentVertex(pr,nn,Ff,Ff,_r)}else to==="round"&&(Fr&&(this.addCurrentVertex(pr,Hi,0,0,_r),this.addCurrentVertex(pr,Hi,1,1,_r,!0)),oi&&(this.addCurrentVertex(pr,Ai,-1,-1,_r,!0),this.addCurrentVertex(pr,Ai,0,0,_r)));if(ha&&bn<gt-1){var Yh=pr.dist(oi);if(Yh>2*or){var ch=pr.add(oi.sub(pr)._mult(or/Yh)._round());this.updateDistance(pr,ch),this.addCurrentVertex(ch,Ai,0,0,_r),pr=ch}}}}},sh.prototype.addCurrentVertex=function(y,I,U,$,ae,he){he===void 0&&(he=!1);var Oe=I.x+I.y*U,rt=I.y-I.x*U,gt=-I.x+I.y*$,Et=-I.y-I.x*$;this.addHalfVertex(y,Oe,rt,he,!1,U,ae),this.addHalfVertex(y,gt,Et,he,!0,-$,ae),this.distance>tb/2&&this.totalDistance===0&&(this.distance=0,this.addCurrentVertex(y,I,U,$,ae,he))},sh.prototype.addHalfVertex=function(y,I,U,$,ae,he,Oe){var rt=y.x,gt=y.y,Et=this.lineClips?this.scaledDistance*(tb-1):this.scaledDistance,or=Et*Uw;if(this.layoutVertexArray.emplaceBack((rt<<1)+($?1:0),(gt<<1)+(ae?1:0),Math.round(Nw*I)+128,Math.round(Nw*U)+128,(he===0?0:he<0?-1:1)+1|(or&63)<<2,or>>6),this.lineClips){var _r=this.scaledDistance-this.lineClips.start,pr=this.lineClips.end-this.lineClips.start,Fr=_r/pr;this.layoutVertexArray2.emplaceBack(Fr,this.lineClipsArray.length)}var oi=Oe.vertexLength++;this.e1>=0&&this.e2>=0&&(this.indexArray.emplaceBack(this.e1,this.e2,oi),Oe.primitiveLength++),ae?this.e2=oi:this.e1=oi},sh.prototype.updateScaledDistance=function(){this.scaledDistance=this.lineClips?this.lineClips.start+(this.lineClips.end-this.lineClips.start)*this.distance/this.totalDistance:this.distance},sh.prototype.updateDistance=function(y,I){this.distance+=y.dist(I),this.updateScaledDistance()},X("LineBucket",sh,{omit:["layers","patternFeatures"]});var wS=new Nr({"line-cap":new Me(Rn.layout_line["line-cap"]),"line-join":new bt(Rn.layout_line["line-join"]),"line-miter-limit":new Me(Rn.layout_line["line-miter-limit"]),"line-round-limit":new Me(Rn.layout_line["line-round-limit"]),"line-sort-key":new bt(Rn.layout_line["line-sort-key"])}),TS=new Nr({"line-opacity":new bt(Rn.paint_line["line-opacity"]),"line-color":new bt(Rn.paint_line["line-color"]),"line-translate":new Me(Rn.paint_line["line-translate"]),"line-translate-anchor":new Me(Rn.paint_line["line-translate-anchor"]),"line-width":new bt(Rn.paint_line["line-width"]),"line-gap-width":new bt(Rn.paint_line["line-gap-width"]),"line-offset":new bt(Rn.paint_line["line-offset"]),"line-blur":new bt(Rn.paint_line["line-blur"]),"line-dasharray":new Rr(Rn.paint_line["line-dasharray"]),"line-pattern":new zt(Rn.paint_line["line-pattern"]),"line-gradient":new jr(Rn.paint_line["line-gradient"])}),Vw={paint:TS,layout:wS},aO=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.possiblyEvaluate=function(U,$){return $=new Gn(Math.floor($.zoom),{now:$.now,fadeDuration:$.fadeDuration,zoomHistory:$.zoomHistory,transition:$.transition}),m.prototype.possiblyEvaluate.call(this,U,$)},y.prototype.evaluate=function(U,$,ae,he){return $=x({},$,{zoom:Math.floor($.zoom)}),m.prototype.evaluate.call(this,U,$,ae,he)},y}(bt),R=new aO(Vw.paint.properties["line-width"].specification);R.useIntegerZoom=!0;var A=function(m){function y(I){m.call(this,I,Vw),this.gradientVersion=0}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._handleSpecialPaintPropertyUpdate=function(U){if(U==="line-gradient"){var $=this._transitionablePaint._values["line-gradient"].value.expression;this.stepInterpolant=$._styleExpression.expression instanceof _u,this.gradientVersion=(this.gradientVersion+1)%d}},y.prototype.gradientExpression=function(){return this._transitionablePaint._values["line-gradient"].value.expression},y.prototype.recalculate=function(U,$){m.prototype.recalculate.call(this,U,$),this.paint._values["line-floorwidth"]=R.possiblyEvaluate(this._transitioningPaint._values["line-width"].value,U)},y.prototype.createBucket=function(U){return new sh(U)},y.prototype.queryRadius=function(U){var $=U,ae=F(Ad("line-width",this,$),Ad("line-gap-width",this,$)),he=Ad("line-offset",this,$);return ae/2+Math.abs(he)+Pv(this.paint.get("line-translate"))},y.prototype.queryIntersectsFeature=function(U,$,ae,he,Oe,rt,gt){var Et=Jv(U,this.paint.get("line-translate"),this.paint.get("line-translate-anchor"),rt.angle,gt),or=gt/2*F(this.paint.get("line-width").evaluate($,ae),this.paint.get("line-gap-width").evaluate($,ae)),_r=this.paint.get("line-offset").evaluate($,ae);return _r&&(he=W(he,_r*gt)),ou(Et,he,or)},y.prototype.isTileClipped=function(){return!0},y}(mi);function F(m,y){return y>0?y+2*m:m}function W(m,y){for(var I=[],U=new u(0,0),$=0;$<m.length;$++){for(var ae=m[$],he=[],Oe=0;Oe<ae.length;Oe++){var rt=ae[Oe-1],gt=ae[Oe],Et=ae[Oe+1],or=Oe===0?U:gt.sub(rt)._unit()._perp(),_r=Oe===ae.length-1?U:Et.sub(gt)._unit()._perp(),pr=or._add(_r)._unit(),Fr=pr.x*_r.x+pr.y*_r.y;pr._mult(1/Fr),he.push(pr._mult(y)._add(gt))}I.push(he)}return I}var re=Wi([{name:"a_pos_offset",components:4,type:"Int16"},{name:"a_data",components:4,type:"Uint16"},{name:"a_pixeloffset",components:4,type:"Int16"}],4),fe=Wi([{name:"a_projected_pos",components:3,type:"Float32"}],4),pe=Wi([{name:"a_fade_opacity",components:1,type:"Uint32"}],4),ze=Wi([{name:"a_placed",components:2,type:"Uint8"},{name:"a_shift",components:2,type:"Float32"}]),Ke=Wi([{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"}]),ct=Wi([{name:"a_pos",components:2,type:"Int16"},{name:"a_anchor_pos",components:2,type:"Int16"},{name:"a_extrude",components:2,type:"Int16"}],4),Lt=Wi([{name:"a_pos",components:2,type:"Float32"},{name:"a_radius",components:1,type:"Float32"},{name:"a_flags",components:2,type:"Int16"}],4),$t=Wi([{name:"triangle",components:3,type:"Uint16"}]),fr=Wi([{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=Wi([{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"}]),Pr=Wi([{type:"Float32",name:"offsetX"}]),zr=Wi([{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()),Ms.applyArabicShaping&&(m=Ms.applyArabicShaping(m)),m}function yi(m,y,I){return m.sections.forEach(function(U){U.text=ui(U.text,y,I)}),m}function vn(m){var y={},I={},U=[],$=0;function ae(Ai){U.push(m[Ai]),$++}function he(Ai,bn,nn){var xn=I[Ai];return delete I[Ai],I[bn]=xn,U[xn].geometry[0].pop(),U[xn].geometry[0]=U[xn].geometry[0].concat(nn[0]),xn}function Oe(Ai,bn,nn){var xn=y[bn];return delete y[bn],y[Ai]=xn,U[xn].geometry[0].shift(),U[xn].geometry[0]=nn[0].concat(U[xn].geometry[0]),xn}function rt(Ai,bn,nn){var xn=nn?bn[0][bn[0].length-1]:bn[0][0];return Ai+":"+xn.x+":"+xn.y}for(var gt=0;gt<m.length;gt++){var Et=m[gt],or=Et.geometry,_r=Et.text?Et.text.toString():null;if(!_r){ae(gt);continue}var pr=rt(_r,or),Fr=rt(_r,or,!0);if(pr in I&&Fr in y&&I[pr]!==y[Fr]){var oi=Oe(pr,Fr,or),Hi=he(pr,Fr,U[oi].geometry);delete y[pr],delete I[Fr],I[rt(_r,U[Hi].geometry,!0)]=Hi,U[oi].geometry=null}else pr in I?he(pr,Fr,or):Fr in y?Oe(pr,Fr,or):(ae(gt),y[pr]=$-1,I[Fr]=$-1)}return U.filter(function(Ai){return Ai.geometry})}var zi={"!":"\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 un(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)||zi[m[I+1]])&&(!$||!bi($)||zi[m[I-1]]);ae&&zi[m[I]]?y+=zi[m[I]]:y+=m[I]}return y}var Tn=24,pa=function(m,y,I,U,$){var ae,he,Oe=$*8-U-1,rt=(1<<Oe)-1,gt=rt>>1,Et=-7,or=I?$-1:0,_r=I?-1:1,pr=m[y+or];for(or+=_r,ae=pr&(1<<-Et)-1,pr>>=-Et,Et+=Oe;Et>0;ae=ae*256+m[y+or],or+=_r,Et-=8);for(he=ae&(1<<-Et)-1,ae>>=-Et,Et+=U;Et>0;he=he*256+m[y+or],or+=_r,Et-=8);if(ae===0)ae=1-gt;else{if(ae===rt)return he?NaN:(pr?-1:1)*(1/0);he=he+Math.pow(2,U),ae=ae-gt}return(pr?-1:1)*he*Math.pow(2,ae-U)},ro=function(m,y,I,U,$,ae){var he,Oe,rt,gt=ae*8-$-1,Et=(1<<gt)-1,or=Et>>1,_r=$===23?Math.pow(2,-24)-Math.pow(2,-77):0,pr=U?0:ae-1,Fr=U?1:-1,oi=y<0||y===0&&1/y<0?1:0;for(y=Math.abs(y),isNaN(y)||y===1/0?(Oe=isNaN(y)?1:0,he=Et):(he=Math.floor(Math.log(y)/Math.LN2),y*(rt=Math.pow(2,-he))<1&&(he--,rt*=2),he+or>=1?y+=_r/rt:y+=_r*Math.pow(2,1-or),y*rt>=2&&(he++,rt/=2),he+or>=Et?(Oe=0,he=Et):he+or>=1?(Oe=(y*rt-1)*Math.pow(2,$),he=he+or):(Oe=y*Math.pow(2,or-1)*Math.pow(2,$),he=0));$>=8;m[I+pr]=Oe&255,pr+=Fr,Oe/=256,$-=8);for(he=he<<$|Oe,gt+=$;gt>0;m[I+pr]=he&255,pr+=Fr,he/=256,gt-=8);m[I+pr-Fr]|=oi*128},Vo={read:pa,write:ro},Xa=sa;function sa(m){this.buf=ArrayBuffer.isView&&ArrayBuffer.isView(m)?m:new Uint8Array(m||0),this.pos=0,this.type=0,this.length=this.buf.length}sa.Varint=0,sa.Fixed64=1,sa.Bytes=2,sa.Fixed32=5;var Mo=65536*65536,fo=1/Mo,lo=12,Xn=typeof TextDecoder=="undefined"?null:new TextDecoder("utf8");sa.prototype={destroy:function(){this.buf=null},readFields:function(m,y,I){for(I=I||this.length;this.pos<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=Wh(this.buf,this.pos);return this.pos+=4,m},readSFixed32:function(){var m=Fv(this.buf,this.pos);return this.pos+=4,m},readFixed64:function(){var m=Wh(this.buf,this.pos)+Wh(this.buf,this.pos+4)*Mo;return this.pos+=8,m},readSFixed64:function(){var m=Wh(this.buf,this.pos)+Fv(this.buf,this.pos+4)*Mo;return this.pos+=8,m},readFloat:function(){var m=Vo.read(this.buf,this.pos,!0,23,4);return this.pos+=4,m},readDouble:function(){var m=Vo.read(this.buf,this.pos,!0,52,8);return this.pos+=8,m},readVarint:function(m){var y=this.buf,I,U;return U=y[this.pos++],I=U&127,U<128||(U=y[this.pos++],I|=(U&127)<<7,U<128)||(U=y[this.pos++],I|=(U&127)<<14,U<128)||(U=y[this.pos++],I|=(U&127)<<21,U<128)?I:(U=y[this.pos],I|=(U&15)<<28,Ro(I,m,this))},readVarint64:function(){return this.readVarint(!0)},readSVarint:function(){var m=this.readVarint();return m%2===1?(m+1)/-2:m/2},readBoolean:function(){return!!this.readVarint()},readString:function(){var m=this.readVarint()+this.pos,y=this.pos;return this.pos=m,m-y>=lo&&Xn?tu(this.buf,y,m):lv(this.buf,y,m)},readBytes:function(){var m=this.readVarint()+this.pos,y=this.buf.subarray(this.pos,m);return this.pos=m,y},readPackedVarint:function(m,y){if(this.type!==sa.Bytes)return m.push(this.readVarint(y));var I=uo(this);for(m=m||[];this.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),Df(this.buf,m,this.pos),this.pos+=4},writeSFixed32:function(m){this.realloc(4),Df(this.buf,m,this.pos),this.pos+=4},writeFixed64:function(m){this.realloc(8),Df(this.buf,m&-1,this.pos),Df(this.buf,Math.floor(m*fo),this.pos+4),this.pos+=8},writeSFixed64:function(m){this.realloc(8),Df(this.buf,m&-1,this.pos),Df(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&&Qv(y,I,this),this.pos=y-1,this.writeVarint(I),this.pos+=I},writeFloat:function(m){this.realloc(4),Vo.write(this.buf,m,this.pos,!0,23,4),this.pos+=4},writeDouble:function(m){this.realloc(8),Vo.write(this.buf,m,this.pos,!0,52,8),this.pos+=8},writeBytes:function(m){var y=m.length;this.writeVarint(y),this.realloc(y);for(var I=0;I<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&&Qv(I,U,this),this.pos=I-1,this.writeVarint(U),this.pos+=U},writeMessage:function(m,y,I){this.writeTag(m,sa.Bytes),this.writeRawMessage(y,I)},writePackedVarint:function(m,y){y.length&&this.writeMessage(m,ld,y)},writePackedSVarint:function(m,y){y.length&&this.writeMessage(m,Eh,y)},writePackedBoolean:function(m,y){y.length&&this.writeMessage(m,jd,y)},writePackedFloat:function(m,y){y.length&&this.writeMessage(m,Gd,y)},writePackedDouble:function(m,y){y.length&&this.writeMessage(m,Hd,y)},writePackedFixed32:function(m,y){y.length&&this.writeMessage(m,Af,y)},writePackedSFixed32:function(m,y){y.length&&this.writeMessage(m,kh,y)},writePackedFixed64:function(m,y){y.length&&this.writeMessage(m,Ed,y)},writePackedSFixed64:function(m,y){y.length&&this.writeMessage(m,ud,y)},writeBytesField:function(m,y){this.writeTag(m,sa.Bytes),this.writeBytes(y)},writeFixed32Field:function(m,y){this.writeTag(m,sa.Fixed32),this.writeFixed32(y)},writeSFixed32Field:function(m,y){this.writeTag(m,sa.Fixed32),this.writeSFixed32(y)},writeFixed64Field:function(m,y){this.writeTag(m,sa.Fixed64),this.writeFixed64(y)},writeSFixed64Field:function(m,y){this.writeTag(m,sa.Fixed64),this.writeSFixed64(y)},writeVarintField:function(m,y){this.writeTag(m,sa.Varint),this.writeVarint(y)},writeSVarintField:function(m,y){this.writeTag(m,sa.Varint),this.writeSVarint(y)},writeStringField:function(m,y){this.writeTag(m,sa.Bytes),this.writeString(y)},writeFloatField:function(m,y){this.writeTag(m,sa.Fixed32),this.writeFloat(y)},writeDoubleField:function(m,y){this.writeTag(m,sa.Fixed64),this.writeDouble(y)},writeBooleanField:function(m,y){this.writeVarintField(m,!!y)}};function Ro(m,y,I){var U=I.buf,$,ae;if(ae=U[I.pos++],$=(ae&112)>>4,ae<128||(ae=U[I.pos++],$|=(ae&127)<<3,ae<128)||(ae=U[I.pos++],$|=(ae&127)<<10,ae<128)||(ae=U[I.pos++],$|=(ae&127)<<17,ae<128)||(ae=U[I.pos++],$|=(ae&127)<<24,ae<128)||(ae=U[I.pos++],$|=(ae&1)<<31,ae<128))return $o(m,$,y);throw new Error("Expected varint not more than 10 bytes")}function uo(m){return m.type===sa.Bytes?m.readVarint()+m.pos:m.pos+1}function $o(m,y,I){return I?y*4294967296+(m>>>0):(y>>>0)*4294967296+(m>>>0)}function Ju(m,y){var I,U;if(m>=0?(I=m%4294967296|0,U=m/4294967296|0):(I=~(-m%4294967296),U=~(-m/4294967296),I^4294967295?I=I+1|0:(I=0,U=U+1|0)),m>=18446744073709552e3||m<-18446744073709552e3)throw new Error("Given varint doesn't fit into 10 bytes");y.realloc(10),qu(I,U,y),Mh(U,y)}function qu(m,y,I){I.buf[I.pos++]=m&127|128,m>>>=7,I.buf[I.pos++]=m&127|128,m>>>=7,I.buf[I.pos++]=m&127|128,m>>>=7,I.buf[I.pos++]=m&127|128,m>>>=7,I.buf[I.pos]=m&127}function Mh(m,y){var I=(m&7)<<4;y.buf[y.pos++]|=I|((m>>>=3)?128:0),m&&(y.buf[y.pos++]=m&127|((m>>>=7)?128:0),m&&(y.buf[y.pos++]=m&127|((m>>>=7)?128:0),m&&(y.buf[y.pos++]=m&127|((m>>>=7)?128:0),m&&(y.buf[y.pos++]=m&127|((m>>>=7)?128:0),m&&(y.buf[y.pos++]=m&127)))))}function Qv(m,y,I){var U=y<=16383?1:y<=2097151?2:y<=268435455?3:Math.floor(Math.log(y)/(Math.LN2*7));I.realloc(U);for(var $=I.pos-1;$>=m;$--)I.buf[$+U]=I.buf[$]}function ld(m,y){for(var I=0;I<m.length;I++)y.writeVarint(m[I])}function Eh(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 Af(m,y){for(var I=0;I<m.length;I++)y.writeFixed32(m[I])}function kh(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 Wh(m,y){return(m[y]|m[y+1]<<8|m[y+2]<<16)+m[y+3]*16777216}function Df(m,y,I){m[I]=y,m[I+1]=y>>>8,m[I+2]=y>>>16,m[I+3]=y>>>24}function Fv(m,y){return(m[y]|m[y+1]<<8|m[y+2]<<16)+(m[y+3]<<24)}function lv(m,y,I){for(var U="",$=y;$<I;){var ae=m[$],he=null,Oe=ae>239?4:ae>223?3:ae>191?2:1;if($+Oe>I)break;var rt,gt,Et;Oe===1?ae<128&&(he=ae):Oe===2?(rt=m[$+1],(rt&192)===128&&(he=(ae&31)<<6|rt&63,he<=127&&(he=null))):Oe===3?(rt=m[$+1],gt=m[$+2],(rt&192)===128&&(gt&192)===128&&(he=(ae&15)<<12|(rt&63)<<6|gt&63,(he<=2047||he>=55296&&he<=57343)&&(he=null))):Oe===4&&(rt=m[$+1],gt=m[$+2],Et=m[$+3],(rt&192)===128&&(gt&192)===128&&(Et&192)===128&&(he=(ae&15)<<18|(rt&63)<<12|(gt&63)<<6|Et&63,(he<=65535||he>=1114112)&&(he=null))),he===null?(he=65533,Oe=1):he>65535&&(he-=65536,U+=String.fromCharCode(he>>>10&1023|55296),he=56320|he&1023),U+=String.fromCharCode(he),$+=Oe}return U}function tu(m,y,I){return Xn.decode(m.subarray(y,I))}function pc(m,y,I){for(var U=0,$,ae;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 zv(m,y,I){m===1&&I.readMessage(ff,y)}function ff(m,y,I){if(m===3){var U=I.readMessage(P1,{}),$=U.id,ae=U.bitmap,he=U.width,Oe=U.height,rt=U.left,gt=U.top,Et=U.advance;y.push({id:$,bitmap:new Dv({width:he+2*$u,height:Oe+2*$u},ae),metrics:{width:he,height:Oe,left:rt,top:gt,advance:Et}})}}function P1(m,y,I){m===1?y.id=I.readVarint():m===2?y.bitmap=I.readBytes():m===3?y.width=I.readVarint():m===4?y.height=I.readVarint():m===5?y.left=I.readSVarint():m===6?y.top=I.readSVarint():m===7&&(y.advance=I.readVarint())}function v0(m){return new Xa(m).readFields(zv,[])}var Gp=$u;function ep(m){for(var y=0,I=0,U=0,$=m;U<$.length;U+=1){var ae=$[U];y+=ae.w*ae.h,I=Math.max(I,ae.w)}m.sort(function(Hi,Ai){return Ai.h-Hi.h});for(var he=Math.max(Math.ceil(Math.sqrt(y/.95)),I),Oe=[{x:0,y:0,w:he,h:1/0}],rt=0,gt=0,Et=0,or=m;Et<or.length;Et+=1)for(var _r=or[Et],pr=Oe.length-1;pr>=0;pr--){var Fr=Oe[pr];if(!(_r.w>Fr.w||_r.h>Fr.h)){if(_r.x=Fr.x,_r.y=Fr.y,gt=Math.max(gt,_r.y+_r.h),rt=Math.max(rt,_r.x+_r.w),_r.w===Fr.w&&_r.h===Fr.h){var oi=Oe.pop();pr<Oe.length&&(Oe[pr]=oi)}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=$},tp={tl:{configurable:!0},br:{configurable:!0},tlbr:{configurable:!0},displaySize:{configurable:!0}};tp.tl.get=function(){return[this.paddedRect.x+Gc,this.paddedRect.y+Gc]},tp.br.get=function(){return[this.paddedRect.x+this.paddedRect.w-Gc,this.paddedRect.y+this.paddedRect.h-Gc]},tp.tlbr.get=function(){return this.tl.concat(this.br)},tp.displaySize.get=function(){return[(this.paddedRect.w-Gc*2)/this.pixelRatio,(this.paddedRect.h-Gc*2)/this.pixelRatio]},Object.defineProperties(Zf.prototype,tp);var gg=function(y,I){var U={},$={};this.haveRenderCallbacks=[];var ae=[];this.addImages(y,U,ae),this.addImages(I,$,ae);var he=ep(ae),Oe=he.w,rt=he.h,gt=new Sh({width:Oe||1,height:rt||1});for(var Et in y){var or=y[Et],_r=U[Et].paddedRect;Sh.copy(or.data,gt,{x:0,y:0},{x:_r.x+Gc,y:_r.y+Gc},or.data)}for(var pr in I){var Fr=I[pr],oi=$[pr].paddedRect,Hi=oi.x+Gc,Ai=oi.y+Gc,bn=Fr.data.width,nn=Fr.data.height;Sh.copy(Fr.data,gt,{x:0,y:0},{x:Hi,y:Ai},Fr.data),Sh.copy(Fr.data,gt,{x:0,y:nn-1},{x:Hi,y:Ai-1},{width:bn,height:1}),Sh.copy(Fr.data,gt,{x:0,y:0},{x:Hi,y:Ai+nn},{width:bn,height:1}),Sh.copy(Fr.data,gt,{x:bn-1,y:0},{x:Hi-1,y:Ai},{width:1,height:nn}),Sh.copy(Fr.data,gt,{x:0,y:0},{x:Hi+bn,y:Ai},{width:1,height:nn})}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},I1=-17;function AS(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 Gw=57344,p0=63743,dy=function(){this.scale=1,this.fontStack="",this.imageName=null};dy.forText=function(y,I){var U=new dy;return U.scale=y||1,U.fontStack=I,U},dy.forImage=function(y){var I=new dy;return I.imageName=y,I};var Xh=function(){this.text="",this.sectionIndex=[],this.sections=[],this.imageSectionID=null};Xh.fromFeature=function(y,I){for(var U=new Xh,$=0;$<y.sections.length;$++){var ae=y.sections[$];ae.image?U.addImageSection(ae):U.addTextSection(ae,I)}return U},Xh.prototype.length=function(){return this.text.length},Xh.prototype.getSection=function(y){return this.sections[this.sectionIndex[y]]},Xh.prototype.getSectionIndex=function(y){return this.sectionIndex[y]},Xh.prototype.getCharCode=function(y){return this.text.charCodeAt(y)},Xh.prototype.verticalizePunctuation=function(){this.text=un(this.text)},Xh.prototype.trim=function(){for(var y=0,I=0;I<this.text.length&&g0[this.text.charCodeAt(I)];I++)y++;for(var U=this.text.length,$=this.text.length-1;$>=0&&$>=y&&g0[this.text.charCodeAt($)];$--)U--;this.text=this.text.substring(y,U),this.sectionIndex=this.sectionIndex.slice(y,U)},Xh.prototype.substring=function(y,I){var U=new Xh;return U.text=this.text.substring(y,I),U.sectionIndex=this.sectionIndex.slice(y,I),U.sections=this.sections,U},Xh.prototype.toString=function(){return this.text},Xh.prototype.getMaxScale=function(){var y=this;return this.sectionIndex.reduce(function(I,U){return Math.max(I,y.sections[U].scale)},0)},Xh.prototype.addTextSection=function(y,I){this.text+=y.text,this.sections.push(dy.forText(y.scale,y.fontStack||I));for(var U=this.sections.length-1,$=0;$<y.text.length;++$)this.sectionIndex.push(U)},Xh.prototype.addImageSection=function(y){var I=y.image?y.image.name:"";if(I.length===0){te("Can't add FormattedSection with an empty image.");return}var U=this.getNextImageSectionCharCode();if(!U){te("Reached maximum number of images "+(p0-Gw+2));return}this.text+=String.fromCharCode(U),this.sections.push(dy.forImage(I)),this.sectionIndex.push(this.sections.length-1)},Xh.prototype.getNextImageSectionCharCode=function(){return this.imageSectionID?this.imageSectionID>=p0?null:++this.imageSectionID:(this.imageSectionID=Gw,this.imageSectionID)};function oO(m,y){for(var I=[],U=m.text,$=0,ae=0,he=y;ae<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 Hw(m,y,I,U,$,ae,he,Oe,rt,gt,Et,or,_r,pr,Fr,oi){var Hi=Xh.fromFeature(m,$);or===uv.vertical&&Hi.verticalizePunctuation();var Ai,bn=Ms.processBidirectionalText,nn=Ms.processStyledBidirectionalText;if(bn&&Hi.sections.length===1){Ai=[];for(var xn=bn(Hi.toString(),jw(Hi,gt,ae,y,U,pr,Fr)),Pn=0,Zn=xn;Pn<Zn.length;Pn+=1){var ga=Zn[Pn],ha=new Xh;ha.text=ga,ha.sections=Hi.sections;for(var eo=0;eo<ga.length;eo++)ha.sectionIndex.push(0);Ai.push(ha)}}else if(nn){Ai=[];for(var za=nn(Hi.text,Hi.sectionIndex,jw(Hi,gt,ae,y,U,pr,Fr)),Za=0,Ko=za;Za<Ko.length;Za+=1){var to=Ko[Za],ao=new Xh;ao.text=to[0],ao.sectionIndex=to[1],ao.sections=Hi.sections,Ai.push(ao)}}else Ai=oO(Hi,jw(Hi,gt,ae,y,U,pr,Fr));var _s=[],jo={positionedLines:_s,text:Hi.toString(),top:Et[1],bottom:Et[1],left:Et[0],right:Et[0],writingMode:or,iconsInText:!1,verticalizable:!1};return uO(jo,y,I,U,Ai,he,Oe,rt,or,gt,_r,oi),AS(_s)?!1:jo}var g0={};g0[9]=!0,g0[10]=!0,g0[11]=!0,g0[12]=!0,g0[13]=!0,g0[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 ZC(m,y,I,U,$,ae){if(y.imageName){var rt=U[y.imageName];return rt?rt.displaySize[0]*y.scale*Tn/ae+$:0}else{var he=I[y.fontStack],Oe=he&&he[m];return Oe?Oe.metrics.advance*y.scale+$:0}}function sO(m,y,I,U,$,ae){for(var he=0,Oe=0;Oe<m.length();Oe++){var rt=m.getSection(Oe);he+=ZC(m.getCharCode(Oe),rt,U,$,y,ae)}var gt=Math.max(1,Math.ceil(he/I));return he/gt}function YC(m,y,I,U){var $=Math.pow(m-y,2);return U?m<y?$/2:$*2:$+Math.abs(I)*I}function lO(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 yp(m,y,I,U,$,ae){for(var he=null,Oe=YC(y,I,$,ae),rt=0,gt=U;rt<gt.length;rt+=1){var Et=gt[rt],or=y-Et.x,_r=YC(or,I,$,ae)+Et.badness;_r<=Oe&&(he=Et,Oe=_r)}return{index:m,x:y,priorBreak:he,badness:Oe}}function rb(m){return m?rb(m.priorBreak).concat(m.index):[]}function jw(m,y,I,U,$,ae,he){if(ae!=="point")return[];if(!m)return[];for(var Oe=[],rt=sO(m,y,I,U,$,he),gt=m.text.indexOf("\u200B")>=0,Et=0,or=0;or<m.length();or++){var _r=m.getSection(or),pr=m.getCharCode(or);if(g0[pr]||(Et+=ZC(pr,_r,U,$,y,he)),or<m.length()-1){var Fr=Hr(pr);(cv[pr]||Fr||_r.imageName)&&Oe.push(yp(or+1,Et,rt,Oe,lO(pr,m.getCharCode(or+1),Fr&&gt),!1))}}return rb(yp(m.length(),Et,rt,Oe,0,!0))}function SS(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 uO(m,y,I,U,$,ae,he,Oe,rt,gt,Et,or){for(var _r=0,pr=I1,Fr=0,oi=0,Hi=Oe==="right"?1:Oe==="left"?0:.5,Ai=0,bn=0,nn=$;bn<nn.length;bn+=1){var xn=nn[bn];xn.trim();var Pn=xn.getMaxScale(),Zn=(Pn-1)*Tn,ga={positionedGlyphs:[],lineOffset:0};m.positionedLines[Ai]=ga;var ha=ga.positionedGlyphs,eo=0;if(!xn.length()){pr+=ae,++Ai;continue}for(var za=0;za<xn.length();za++){var Za=xn.getSection(za),Ko=xn.getSectionIndex(za),to=xn.getCharCode(za),ao=0,_s=null,jo=null,El=null,Iu=Tn,kl=!(rt===uv.horizontal||!Et&&!qr(to)||Et&&(g0[to]||Zr(to)));if(Za.imageName){var Sf=U[Za.imageName];if(!Sf)continue;El=Za.imageName,m.iconsInText=m.iconsInText||!0,jo=Sf.paddedRect;var Ff=Sf.displaySize;Za.scale=Za.scale*Tn/or,_s={width:Ff[0],height:Ff[1],left:Gc,top:-Gp,advance:kl?Ff[1]:Ff[0]};var Yh=Tn-Ff[1]*Za.scale;ao=Zn+Yh,Iu=_s.advance;var ch=kl?Ff[0]*Za.scale-Tn*Pn:Ff[1]*Za.scale-Tn*Pn;ch>0&&ch>eo&&(eo=ch)}else{var Cl=I[Za.fontStack],yl=Cl&&Cl[to];if(yl&&yl.rect)jo=yl.rect,_s=yl.metrics;else{var Qu=y[Za.fontStack],gc=Qu&&Qu[to];if(!gc)continue;_s=gc.metrics}ao=(Pn-Za.scale)*Tn}kl?(m.verticalizable=!0,ha.push({glyph:to,imageName:El,x:_r,y:pr+ao,vertical:kl,scale:Za.scale,fontStack:Za.fontStack,sectionIndex:Ko,metrics:_s,rect:jo}),_r+=Iu*Za.scale+gt):(ha.push({glyph:to,imageName:El,x:_r,y:pr+ao,vertical:kl,scale:Za.scale,fontStack:Za.fontStack,sectionIndex:Ko,metrics:_s,rect:jo}),_r+=_s.advance*Za.scale+gt)}if(ha.length!==0){var Xd=_r-gt;Fr=Math.max(Xd,Fr),cO(ha,0,ha.length-1,Hi,eo)}_r=0;var Zd=ae*Pn+eo;ga.lineOffset=Math.max(eo,Zn),pr+=Zd,oi=Math.max(Zd,oi),++Ai}var Kh=pr-I1,fv=SS(he),hv=fv.horizontalAlign,Ch=fv.verticalAlign;kd(m.positionedLines,Hi,hv,Ch,Fr,oi,ae,Kh,$.length),m.top+=-Ch*Kh,m.bottom=m.top+Kh,m.left+=-hv*Fr,m.right=m.left+Fr}function cO(m,y,I,U,$){if(!(!U&&!$))for(var ae=m[I],he=ae.metrics.advance*ae.scale,Oe=(m[I].x+he)*U,rt=y;rt<=I;rt++)m[rt].x-=Oe,m[rt].y+=$}function kd(m,y,I,U,$,ae,he,Oe,rt){var gt=(y-I)*$,Et=0;ae!==he?Et=-Oe*U-I1:Et=(-U*rt+.5)*he;for(var or=0,_r=m;or<_r.length;or+=1)for(var pr=_r[or],Fr=0,oi=pr.positionedGlyphs;Fr<oi.length;Fr+=1){var Hi=oi[Fr];Hi.x+=gt,Hi.y+=Et}}function rp(m,y,I){var U=SS(I),$=U.horizontalAlign,ae=U.verticalAlign,he=y[0],Oe=y[1],rt=he-m.displaySize[0]*$,gt=rt+m.displaySize[0],Et=Oe-m.displaySize[1]*ae,or=Et+m.displaySize[1];return{image:m,top:Et,bottom:or,left:rt,right:gt}}function dm(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 Et=y.left*ae,or=y.right*ae,_r,pr,Fr,oi;I==="width"||I==="both"?(oi=$[0]+Et-U[3],pr=$[0]+or+U[1]):(oi=$[0]+(Et+or-he.displaySize[0])/2,pr=oi+he.displaySize[0]);var Hi=y.top*ae,Ai=y.bottom*ae;return I==="height"||I==="both"?(_r=$[1]+Hi-U[0],Fr=$[1]+Ai+U[2]):(_r=$[1]+(Hi+Ai-he.displaySize[1])/2,Fr=_r+he.displaySize[1]),{image:he,top:_r,right:pr,bottom:Fr,left:oi,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 Cd=128;function _p(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 Et=I.evaluate(new Gn(rt)),or=I.evaluate(new Gn(gt));return{kind:"camera",minZoom:rt,maxZoom:gt,minSize:Et,maxSize:or,interpolationType:ae}}}function IQ(m,y,I){var U=y.uSize,$=y.uSizeT,ae=I.lowerSize,he=I.upperSize;return m.kind==="source"?ae/Cd:m.kind==="composite"?nl(ae/Cd,he/Cd,$):U}function RQ(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=nl(m.minSize,m.maxSize,Oe):I=Oe}return{uSizeT:I,uSize:U}}var Aet=Object.freeze({__proto__:null,getSizeData:_p,evaluateSizeForFeature:IQ,evaluateSizeForZoom:RQ,SIZE_PACK_FACTOR:Cd});function DQ(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 Et=m[he-1],or=m[he],_r=m[he+1];if(!_r)return!1;var pr=Et.angleTo(or)-or.angleTo(_r);for(pr=Math.abs((pr+3*Math.PI)%(Math.PI*2)-Math.PI),rt.push({distance:Oe,angleDelta:pr}),gt+=pr;Oe-rt[0].distance>U;)gt-=rt.shift().angleDelta;if(gt>$)return!1;he++,Oe+=or.dist(_r)}return!0}function FQ(m){for(var y=0,I=0;I<m.length-1;I++)y+=m[I].dist(m[I+1]);return y}function zQ(m,y,I){return m?3/5*y*I:0}function OQ(m,y){return Math.max(m?m.right-m.left:0,y?y.right-y.left:0)}function Met(m,y,I,U,$,ae){for(var he=zQ(I,$,ae),Oe=OQ(I,U)*ae,rt=0,gt=FQ(m)/2,Et=0;Et<m.length-1;Et++){var or=m[Et],_r=m[Et+1],pr=or.dist(_r);if(rt+pr>gt){var Fr=(gt-rt)/pr,oi=nl(or.x,_r.x,Fr),Hi=nl(or.y,_r.y,Fr),Ai=new Wd(oi,Hi,_r.angleTo(or),Et);return Ai._round(),!he||DQ(m,Ai,Oe,he,y)?Ai:void 0}rt+=pr}}function Eet(m,y,I,U,$,ae,he,Oe,rt){var gt=zQ(U,ae,he),Et=OQ(U,$),or=Et*he,_r=m[0].x===0||m[0].x===rt||m[0].y===0||m[0].y===rt;y-or<y/4&&(y=or+y/4);var pr=ae*2,Fr=_r?y/2*Oe%y:(Et/2+pr)*he*Oe%y;return qQ(m,Fr,y,gt,I,or,_r,!1,rt)}function qQ(m,y,I,U,$,ae,he,Oe,rt){for(var gt=ae/2,Et=FQ(m),or=0,_r=y-I,pr=[],Fr=0;Fr<m.length-1;Fr++){for(var oi=m[Fr],Hi=m[Fr+1],Ai=oi.dist(Hi),bn=Hi.angleTo(oi);_r+I<or+Ai;){_r+=I;var nn=(_r-or)/Ai,xn=nl(oi.x,Hi.x,nn),Pn=nl(oi.y,Hi.y,nn);if(xn>=0&&xn<rt&&Pn>=0&&Pn<rt&&_r-gt>=0&&_r+gt<=Et){var Zn=new Wd(xn,Pn,bn,Fr);Zn._round(),(!U||DQ(m,Zn,ae,U,$))&&pr.push(Zn)}}or+=Ai}return!Oe&&!pr.length&&!he&&(pr=qQ(m,or/2,I,U,$,ae,he,!0,rt)),pr}function BQ(m,y,I,U,$){for(var ae=[],he=0;he<m.length;he++)for(var Oe=m[he],rt=void 0,gt=0;gt<Oe.length-1;gt++){var Et=Oe[gt],or=Oe[gt+1];Et.x<y&&or.x<y||(Et.x<y?Et=new u(y,Et.y+(or.y-Et.y)*((y-Et.x)/(or.x-Et.x)))._round():or.x<y&&(or=new u(y,Et.y+(or.y-Et.y)*((y-Et.x)/(or.x-Et.x)))._round()),!(Et.y<I&&or.y<I)&&(Et.y<I?Et=new u(Et.x+(or.x-Et.x)*((I-Et.y)/(or.y-Et.y)),I)._round():or.y<I&&(or=new u(Et.x+(or.x-Et.x)*((I-Et.y)/(or.y-Et.y)),I)._round()),!(Et.x>=U&&or.x>=U)&&(Et.x>=U?Et=new u(U,Et.y+(or.y-Et.y)*((U-Et.x)/(or.x-Et.x)))._round():or.x>=U&&(or=new u(U,Et.y+(or.y-Et.y)*((U-Et.x)/(or.x-Et.x)))._round()),!(Et.y>=$&&or.y>=$)&&(Et.y>=$?Et=new u(Et.x+(or.x-Et.x)*(($-Et.y)/(or.y-Et.y)),$)._round():or.y>=$&&(or=new u(Et.x+(or.x-Et.x)*(($-Et.y)/(or.y-Et.y)),$)._round()),(!rt||!Et.equals(rt[rt.length-1]))&&(rt=[Et],ae.push(rt)),rt.push(or)))))}return ae}var Ww=Gc;function NQ(m,y,I,U){var $=[],ae=m.image,he=ae.pixelRatio,Oe=ae.paddedRect.w-2*Ww,rt=ae.paddedRect.h-2*Ww,gt=m.right-m.left,Et=m.bottom-m.top,or=ae.stretchX||[[0,Oe]],_r=ae.stretchY||[[0,rt]],pr=function(Cl,yl){return Cl+yl[1]-yl[0]},Fr=or.reduce(pr,0),oi=_r.reduce(pr,0),Hi=Oe-Fr,Ai=rt-oi,bn=0,nn=Fr,xn=0,Pn=oi,Zn=0,ga=Hi,ha=0,eo=Ai;if(ae.content&&U){var za=ae.content;bn=KC(or,0,za[0]),xn=KC(_r,0,za[1]),nn=KC(or,za[0],za[2]),Pn=KC(_r,za[1],za[3]),Zn=za[0]-bn,ha=za[1]-xn,ga=za[2]-za[0]-nn,eo=za[3]-za[1]-Pn}var Za=function(Cl,yl,Qu,gc){var Sf=JC(Cl.stretch-bn,nn,gt,m.left),Ff=$C(Cl.fixed-Zn,ga,Cl.stretch,Fr),Yh=JC(yl.stretch-xn,Pn,Et,m.top),ch=$C(yl.fixed-ha,eo,yl.stretch,oi),Xd=JC(Qu.stretch-bn,nn,gt,m.left),Zd=$C(Qu.fixed-Zn,ga,Qu.stretch,Fr),Kh=JC(gc.stretch-xn,Pn,Et,m.top),fv=$C(gc.fixed-ha,eo,gc.stretch,oi),hv=new u(Sf,Yh),Ch=new u(Xd,Yh),dv=new u(Xd,Kh),xp=new u(Sf,Kh),gy=new u(Ff/he,ch/he),F1=new u(Zd/he,fv/he),z1=y*Math.PI/180;if(z1){var O1=Math.sin(z1),e3=Math.cos(z1),m0=[e3,-O1,O1,e3];hv._matMult(m0),Ch._matMult(m0),xp._matMult(m0),dv._matMult(m0)}var n6=Cl.stretch+Cl.fixed,yO=Qu.stretch+Qu.fixed,a6=yl.stretch+yl.fixed,_O=gc.stretch+gc.fixed,Hp={x:ae.paddedRect.x+Ww+n6,y:ae.paddedRect.y+Ww+a6,w:yO-n6,h:_O-a6},t3=ga/he/gt,o6=eo/he/Et;return{tl:hv,tr:Ch,bl:xp,br:dv,tex:Hp,writingMode:void 0,glyphOffset:[0,0],sectionIndex:0,pixelOffsetTL:gy,pixelOffsetBR:F1,minFontScaleX:t3,minFontScaleY:o6,isSDF:I}};if(!U||!ae.stretchX&&!ae.stretchY)$.push(Za({fixed:0,stretch:-1},{fixed:0,stretch:-1},{fixed:0,stretch:Oe+1},{fixed:0,stretch:rt+1}));else for(var Ko=UQ(or,Hi,Fr),to=UQ(_r,Ai,oi),ao=0;ao<Ko.length-1;ao++)for(var _s=Ko[ao],jo=Ko[ao+1],El=0;El<to.length-1;El++){var Iu=to[El],kl=to[El+1];$.push(Za(_s,Iu,jo,kl))}return $}function KC(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 UQ(m,y,I){for(var U=[{fixed:-Ww,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+Ww,stretch:I}),U}function JC(m,y,I,U){return m/y*I+U}function $C(m,y,I,U){return m-y*I/U}function ket(m,y,I,U,$,ae,he,Oe){for(var rt=U.layout.get("text-rotate").evaluate(ae,{})*Math.PI/180,gt=[],Et=0,or=y.positionedLines;Et<or.length;Et+=1)for(var _r=or[Et],pr=0,Fr=_r.positionedGlyphs;pr<Fr.length;pr+=1){var oi=Fr[pr];if(oi.rect){var Hi=oi.rect||{},Ai=1,bn=Gp+Ai,nn=!0,xn=1,Pn=0,Zn=($||Oe)&&oi.vertical,ga=oi.metrics.advance*oi.scale/2;if(Oe&&y.verticalizable){var ha=(oi.scale-1)*Tn,eo=(Tn-oi.metrics.width*oi.scale)/2;Pn=_r.lineOffset/2-(oi.imageName?-eo:ha)}if(oi.imageName){var za=he[oi.imageName];nn=za.sdf,xn=za.pixelRatio,bn=Gc/xn}var Za=$?[oi.x+ga,oi.y]:[0,0],Ko=$?[0,0]:[oi.x+ga+I[0],oi.y+I[1]-Pn],to=[0,0];Zn&&(to=Ko,Ko=[0,0]);var ao=(oi.metrics.left-bn)*oi.scale-ga+Ko[0],_s=(-oi.metrics.top-bn)*oi.scale+Ko[1],jo=ao+Hi.w*oi.scale/xn,El=_s+Hi.h*oi.scale/xn,Iu=new u(ao,_s),kl=new u(jo,_s),Cl=new u(ao,El),yl=new u(jo,El);if(Zn){var Qu=new u(-ga,ga-I1),gc=-Math.PI/2,Sf=Tn/2-ga,Ff=oi.imageName?Sf:0,Yh=new u(5-I1-Sf,-Ff),ch=new(Function.prototype.bind.apply(u,[null].concat(to)));Iu._rotateAround(gc,Qu)._add(Yh)._add(ch),kl._rotateAround(gc,Qu)._add(Yh)._add(ch),Cl._rotateAround(gc,Qu)._add(Yh)._add(ch),yl._rotateAround(gc,Qu)._add(Yh)._add(ch)}if(rt){var Xd=Math.sin(rt),Zd=Math.cos(rt),Kh=[Zd,-Xd,Xd,Zd];Iu._matMult(Kh),kl._matMult(Kh),Cl._matMult(Kh),yl._matMult(Kh)}var fv=new u(0,0),hv=new u(0,0),Ch=0,dv=0;gt.push({tl:Iu,tr:kl,bl:Cl,br:yl,tex:Hi,writingMode:y.writingMode,glyphOffset:Za,sectionIndex:oi.sectionIndex,isSDF:nn,pixelOffsetTL:fv,pixelOffsetBR:hv,minFontScaleX:Ch,minFontScaleY:dv})}}return gt}var QC=function(y,I,U,$,ae,he,Oe,rt,gt,Et){if(this.boxStartIndex=y.length,gt){var or=he.top,_r=he.bottom,pr=he.collisionPadding;pr&&(or-=pr[1],_r+=pr[3]);var Fr=_r-or;Fr>0&&(Fr=Math.max(10,Fr),this.circleDiameter=Fr)}else{var oi=he.top*Oe-rt,Hi=he.bottom*Oe+rt,Ai=he.left*Oe-rt,bn=he.right*Oe+rt,nn=he.collisionPadding;if(nn&&(Ai-=nn[0]*Oe,oi-=nn[1]*Oe,bn+=nn[2]*Oe,Hi+=nn[3]*Oe),Et){var xn=new u(Ai,oi),Pn=new u(bn,oi),Zn=new u(Ai,Hi),ga=new u(bn,Hi),ha=Et*Math.PI/180;xn._rotate(ha),Pn._rotate(ha),Zn._rotate(ha),ga._rotate(ha),Ai=Math.min(xn.x,Pn.x,Zn.x,ga.x),bn=Math.max(xn.x,Pn.x,Zn.x,ga.x),oi=Math.min(xn.y,Pn.y,Zn.y,ga.y),Hi=Math.max(xn.y,Pn.y,Zn.y,ga.y)}y.emplaceBack(I.x,I.y,Ai,oi,bn,Hi,U,$,ae)}this.boxEndIndex=y.length},Xw=function(y,I){if(y===void 0&&(y=[]),I===void 0&&(I=Cet),this.data=y,this.length=this.data.length,this.compare=I,this.length>0)for(var U=(this.length>>1)-1;U>=0;U--)this._down(U)};Xw.prototype.push=function(y){this.data.push(y),this.length++,this._up(this.length-1)},Xw.prototype.pop=function(){if(this.length!==0){var y=this.data[0],I=this.data.pop();return this.length--,this.length>0&&(this.data[0]=I,this._down(0)),y}},Xw.prototype.peek=function(){return this.data[0]},Xw.prototype._up=function(y){for(var I=this,U=I.data,$=I.compare,ae=U[y];y>0;){var he=y-1>>1,Oe=U[he];if($(ae,Oe)>=0)break;U[y]=Oe,y=he}U[y]=ae},Xw.prototype._down=function(y){for(var I=this,U=I.data,$=I.compare,ae=this.length>>1,he=U[y];y<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 Cet(m,y){return m<y?-1:m>y?1:0}function Let(m,y,I){y===void 0&&(y=1),I===void 0&&(I=!1);for(var U=1/0,$=1/0,ae=-1/0,he=-1/0,Oe=m[0],rt=0;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 Et=ae-U,or=he-$,_r=Math.min(Et,or),pr=_r/2,Fr=new Xw([],Pet);if(_r===0)return new u(U,$);for(var oi=U;oi<ae;oi+=_r)for(var Hi=$;Hi<he;Hi+=_r)Fr.push(new Zw(oi+pr,Hi+pr,pr,m));for(var Ai=Ret(m),bn=Fr.length;Fr.length;){var nn=Fr.pop();(nn.d>Ai.d||!Ai.d)&&(Ai=nn,I&&console.log("found best %d after %d probes",Math.round(1e4*nn.d)/1e4,bn)),!(nn.max-Ai.d<=y)&&(pr=nn.h/2,Fr.push(new Zw(nn.p.x-pr,nn.p.y-pr,pr,m)),Fr.push(new Zw(nn.p.x+pr,nn.p.y-pr,pr,m)),Fr.push(new Zw(nn.p.x-pr,nn.p.y+pr,pr,m)),Fr.push(new Zw(nn.p.x+pr,nn.p.y+pr,pr,m)),bn+=4)}return I&&(console.log("num probes: "+bn),console.log("best distance: "+Ai.d)),Ai.p}function Pet(m,y){return y.max-m.max}function Zw(m,y,I,U){this.p=new u(m,y),this.h=I,this.d=Iet(this.p,U),this.max=this.d+this.h*Math.SQRT2}function Iet(m,y){for(var I=!1,U=1/0,$=0;$<y.length;$++)for(var ae=y[$],he=0,Oe=ae.length,rt=Oe-1;he<Oe;rt=he++){var gt=ae[he],Et=ae[rt];gt.y>m.y!=Et.y>m.y&&m.x<(Et.x-gt.x)*(m.y-gt.y)/(Et.y-gt.y)+gt.x&&(I=!I),U=Math.min(U,cg(m,gt,Et))}return(I?1:-1)*Math.sqrt(U)}function Ret(m){for(var y=0,I=0,U=0,$=m[0],ae=0,he=$.length,Oe=he-1;ae<he;Oe=ae++){var rt=$[ae],gt=$[Oe],Et=rt.x*gt.y-gt.x*rt.y;I+=(rt.x+gt.x)*Et,U+=(rt.y+gt.y)*Et,y+=Et*3}return new Zw(I/y,U/y,0,m)}var Yw=7,fO=Number.POSITIVE_INFINITY;function VQ(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-Yw;break;case"bottom-right":case"bottom-left":Oe=-rt+Yw;break;case"bottom":Oe=-ae+Yw;break;case"top":Oe=ae-Yw;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-Yw;break;case"bottom-right":case"bottom-left":case"bottom":rt=-he+Yw;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]!==fO?U(m,y[0],y[1]):I(m,y[0])}function Det(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,Et={};if(m.textSizeData.kind==="composite"){var or=m.textSizeData,_r=or.minZoom,pr=or.maxZoom;Et.compositeTextSizes=[gt["text-size"].possiblyEvaluate(new Gn(_r),he),gt["text-size"].possiblyEvaluate(new Gn(pr),he)]}if(m.iconSizeData.kind==="composite"){var Fr=m.iconSizeData,oi=Fr.minZoom,Hi=Fr.maxZoom;Et.compositeIconSizes=[gt["icon-size"].possiblyEvaluate(new Gn(oi),he),gt["icon-size"].possiblyEvaluate(new Gn(Hi),he)]}Et.layoutTextSize=gt["text-size"].possiblyEvaluate(new Gn(m.zoom+1),he),Et.layoutIconSize=gt["icon-size"].possiblyEvaluate(new Gn(m.zoom+1),he),Et.textMaxSize=gt["text-size"].possiblyEvaluate(new Gn(18));for(var Ai=rt.get("text-line-height")*Tn,bn=rt.get("text-rotation-alignment")==="map"&&rt.get("symbol-placement")!=="point",nn=rt.get("text-keep-upright"),xn=rt.get("text-size"),Pn=function(){var ha=ga[Zn],eo=rt.get("text-font").evaluate(ha,{},he).join(","),za=xn.evaluate(ha,{},he),Za=Et.layoutTextSize.evaluate(ha,{},he),Ko=Et.layoutIconSize.evaluate(ha,{},he),to={horizontal:{},vertical:void 0},ao=ha.text,_s=[0,0];if(ao){var jo=ao.toString(),El=rt.get("text-letter-spacing").evaluate(ha,{},he)*Tn,Iu=gr(jo)?El:0,kl=rt.get("text-anchor").evaluate(ha,{},he),Cl=rt.get("text-variable-anchor");if(!Cl){var yl=rt.get("text-radial-offset").evaluate(ha,{},he);yl?_s=VQ(kl,[yl*Tn,fO]):_s=rt.get("text-offset").evaluate(ha,{},he).map(function(gy){return gy*Tn})}var Qu=bn?"center":rt.get("text-justify").evaluate(ha,{},he),gc=rt.get("symbol-placement"),Sf=gc==="point"?rt.get("text-max-width").evaluate(ha,{},he)*Tn:0,Ff=function(){m.allowVerticalPlacement&&jt(jo)&&(to.vertical=Hw(ao,y,I,$,eo,Sf,Ai,kl,"left",Iu,_s,uv.vertical,!0,gc,Za,za))};if(!bn&&Cl){for(var Yh=Qu==="auto"?Cl.map(function(gy){return hO(gy)}):[Qu],ch=!1,Xd=0;Xd<Yh.length;Xd++){var Zd=Yh[Xd];if(!to.horizontal[Zd])if(ch)to.horizontal[Zd]=to.horizontal[0];else{var Kh=Hw(ao,y,I,$,eo,Sf,Ai,"center",Zd,Iu,_s,uv.horizontal,!1,gc,Za,za);Kh&&(to.horizontal[Zd]=Kh,ch=Kh.positionedLines.length===1)}}Ff()}else{Qu==="auto"&&(Qu=hO(kl));var fv=Hw(ao,y,I,$,eo,Sf,Ai,kl,Qu,Iu,_s,uv.horizontal,!1,gc,Za,za);fv&&(to.horizontal[Qu]=fv),Ff(),jt(jo)&&bn&&nn&&(to.vertical=Hw(ao,y,I,$,eo,Sf,Ai,kl,Qu,Iu,_s,uv.vertical,!1,gc,Za,za))}}var hv=void 0,Ch=!1;if(ha.icon&&ha.icon.name){var dv=U[ha.icon.name];dv&&(hv=rp($[ha.icon.name],rt.get("icon-offset").evaluate(ha,{},he),rt.get("icon-anchor").evaluate(ha,{},he)),Ch=dv.sdf,m.sdfIcons===void 0?m.sdfIcons=dv.sdf:m.sdfIcons!==dv.sdf&&te("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 xp=HQ(to.horizontal)||to.vertical;m.iconsInText=xp?xp.iconsInText:!1,(xp||hv)&&Fet(m,ha,to,hv,U,Et,Za,Ko,_s,Ch,he)},Zn=0,ga=m.features;Zn<ga.length;Zn+=1)Pn();ae&&m.generateCollisionDebugBuffers()}function hO(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,Et){var or=ae.textMaxSize.evaluate(y,{});or===void 0&&(or=he);var _r=m.layers[0].layout,pr=_r.get("icon-offset").evaluate(y,{},Et),Fr=HQ(I.horizontal),oi=24,Hi=he/oi,Ai=m.tilePixelRatio*Hi,bn=m.tilePixelRatio*or/oi,nn=m.tilePixelRatio*Oe,xn=m.tilePixelRatio*_r.get("symbol-spacing"),Pn=_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=dm(U,I.vertical,Ko,_r.get("icon-text-fit-padding"),pr,Hi)),Fr&&(U=dm(U,Fr,Ko,_r.get("icon-text-fit-padding"),pr,Hi)));var ao=function(e3,m0){m0.x<0||m0.x>=Ci||m0.y<0||m0.y>=Ci||zet(m,m0,e3,I,U,$,to,m.layers[0],m.collisionBoxArray,y.index,y.sourceLayerIndex,m.index,Ai,Pn,ha,rt,nn,Zn,eo,pr,y,ae,gt,Et,he)};if(za==="line")for(var _s=0,jo=BQ(y.geometry,0,0,Ci,Ci);_s<jo.length;_s+=1)for(var El=jo[_s],Iu=Eet(El,xn,ga,I.vertical||Fr,U,oi,bn,m.overscaling,Ci),kl=0,Cl=Iu;kl<Cl.length;kl+=1){var yl=Cl[kl],Qu=Fr;(!Qu||!Oet(m,Qu.text,Za,yl))&&ao(El,yl)}else if(za==="line-center")for(var gc=0,Sf=y.geometry;gc<Sf.length;gc+=1){var Ff=Sf[gc];if(Ff.length>1){var Yh=Met(Ff,ga,I.vertical||Fr,U,oi,bn);Yh&&ao(Ff,Yh)}}else if(y.type==="Polygon")for(var ch=0,Xd=Ow(y.geometry,0);ch<Xd.length;ch+=1){var Zd=Xd[ch],Kh=Let(Zd,16);ao(Zd[0],new Wd(Kh.x,Kh.y,0))}else if(y.type==="LineString")for(var fv=0,hv=y.geometry;fv<hv.length;fv+=1){var Ch=hv[fv];ao(Ch,new Wd(Ch[0].x,Ch[0].y,0))}else if(y.type==="Point")for(var dv=0,xp=y.geometry;dv<xp.length;dv+=1)for(var gy=xp[dv],F1=0,z1=gy;F1<z1.length;F1+=1){var O1=z1[F1];ao([O1],new Wd(O1.x,O1.y,0))}}var MS=255,R1=MS*Cd;function GQ(m,y,I,U,$,ae,he,Oe,rt,gt,Et,or,_r,pr,Fr){var oi=ket(y,I,Oe,$,ae,he,U,m.allowVerticalPlacement),Hi=m.textSizeData,Ai=null;Hi.kind==="source"?(Ai=[Cd*$.layout.get("text-size").evaluate(he,{})],Ai[0]>R1&&te(m.layerIds[0]+': Value for "text-size" is >= '+MS+'. Reduce your "text-size".')):Hi.kind==="composite"&&(Ai=[Cd*pr.compositeTextSizes[0].evaluate(he,{},Fr),Cd*pr.compositeTextSizes[1].evaluate(he,{},Fr)],(Ai[0]>R1||Ai[1]>R1)&&te(m.layerIds[0]+': Value for "text-size" is >= '+MS+'. Reduce your "text-size".')),m.addSymbols(m.text,oi,Ai,Oe,ae,he,gt,y,rt.lineStartIndex,rt.lineLength,_r,Fr);for(var bn=0,nn=Et;bn<nn.length;bn+=1){var xn=nn[bn];or[xn]=m.text.placedSymbolArray.length-1}return oi.length*4}function HQ(m){for(var y in m)return m[y];return null}function zet(m,y,I,U,$,ae,he,Oe,rt,gt,Et,or,_r,pr,Fr,oi,Hi,Ai,bn,nn,xn,Pn,Zn,ga,ha){var eo,za=m.addToLineVertexArray(y,I),Za,Ko,to,ao,_s=0,jo=0,El=0,Iu=0,kl=-1,Cl=-1,yl={},Qu=K(""),gc=0,Sf=0;if(Oe._unevaluatedLayout.getValue("text-radial-offset")===void 0?(eo=Oe.layout.get("text-offset").evaluate(xn,{},ga).map(function(CS){return CS*Tn}),gc=eo[0],Sf=eo[1]):(gc=Oe.layout.get("text-radial-offset").evaluate(xn,{},ga)*Tn,Sf=fO),m.allowVerticalPlacement&&U.vertical){var Ff=Oe.layout.get("text-rotate").evaluate(xn,{},ga),Yh=Ff+90,ch=U.vertical;to=new QC(rt,y,gt,Et,or,ch,_r,pr,Fr,Yh),he&&(ao=new QC(rt,y,gt,Et,or,he,Hi,Ai,Fr,Yh))}if($){var Xd=Oe.layout.get("icon-rotate").evaluate(xn,{}),Zd=Oe.layout.get("icon-text-fit")!=="none",Kh=NQ($,Xd,Zn,Zd),fv=he?NQ(he,Xd,Zn,Zd):void 0;Ko=new QC(rt,y,gt,Et,or,$,Hi,Ai,!1,Xd),_s=Kh.length*4;var hv=m.iconSizeData,Ch=null;hv.kind==="source"?(Ch=[Cd*Oe.layout.get("icon-size").evaluate(xn,{})],Ch[0]>R1&&te(m.layerIds[0]+': Value for "icon-size" is >= '+MS+'. Reduce your "icon-size".')):hv.kind==="composite"&&(Ch=[Cd*Pn.compositeIconSizes[0].evaluate(xn,{},ga),Cd*Pn.compositeIconSizes[1].evaluate(xn,{},ga)],(Ch[0]>R1||Ch[1]>R1)&&te(m.layerIds[0]+': Value for "icon-size" is >= '+MS+'. Reduce your "icon-size".')),m.addSymbols(m.icon,Kh,Ch,nn,bn,xn,!1,y,za.lineStartIndex,za.lineLength,-1,ga),kl=m.icon.placedSymbolArray.length-1,fv&&(jo=fv.length*4,m.addSymbols(m.icon,fv,Ch,nn,bn,xn,uv.vertical,y,za.lineStartIndex,za.lineLength,-1,ga),Cl=m.icon.placedSymbolArray.length-1)}for(var dv in U.horizontal){var xp=U.horizontal[dv];if(!Za){Qu=K(xp.text);var gy=Oe.layout.get("text-rotate").evaluate(xn,{},ga);Za=new QC(rt,y,gt,Et,or,xp,_r,pr,Fr,gy)}var F1=xp.positionedLines.length===1;if(El+=GQ(m,y,xp,ae,Oe,Fr,xn,oi,za,U.vertical?uv.horizontal:uv.horizontalOnly,F1?Object.keys(U.horizontal):[dv],yl,kl,Pn,ga),F1)break}U.vertical&&(Iu+=GQ(m,y,U.vertical,ae,Oe,Fr,xn,oi,za,uv.vertical,["vertical"],yl,Cl,Pn,ga));var z1=Za?Za.boxStartIndex:m.collisionBoxArray.length,O1=Za?Za.boxEndIndex:m.collisionBoxArray.length,e3=to?to.boxStartIndex:m.collisionBoxArray.length,m0=to?to.boxEndIndex:m.collisionBoxArray.length,n6=Ko?Ko.boxStartIndex:m.collisionBoxArray.length,yO=Ko?Ko.boxEndIndex:m.collisionBoxArray.length,a6=ao?ao.boxStartIndex:m.collisionBoxArray.length,_O=ao?ao.boxEndIndex:m.collisionBoxArray.length,Hp=-1,t3=function(CS,oee){return CS&&CS.circleDiameter?Math.max(CS.circleDiameter,oee):oee};Hp=t3(Za,Hp),Hp=t3(to,Hp),Hp=t3(Ko,Hp),Hp=t3(ao,Hp);var o6=Hp>-1?1:0;o6&&(Hp*=ha/Tn),m.glyphOffsetArray.length>=Pu.MAX_GLYPHS&&te("Too many glyphs being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907"),xn.sortKey!==void 0&&m.addToSortKeyRanges(m.symbolInstances.length,xn.sortKey),m.symbolInstances.emplaceBack(y.x,y.y,yl.right>=0?yl.right:-1,yl.center>=0?yl.center:-1,yl.left>=0?yl.left:-1,yl.vertical||-1,kl,Cl,Qu,z1,O1,e3,m0,n6,yO,a6,_O,gt,El,Iu,_s,jo,o6,0,_r,gc,Sf,Hp)}function Oet(m,y,I,U){var $=m.compareText;if(!(y in $))$[y]=[];else for(var ae=$[y],he=ae.length-1;he>=0;he--)if(U.dist(ae[he])<I)return!0;return $[y].push(U),!1}var qet=pg.VectorTileFeature.types,Bet=[{name:"a_fade_opacity",components:1,type:"Uint8",offset:0}];function e6(m,y,I,U,$,ae,he,Oe,rt,gt,Et,or,_r){var pr=Oe?Math.min(R1,Math.round(Oe[0])):0,Fr=Oe?Math.min(R1,Math.round(Oe[1])):0;m.emplaceBack(y,I,Math.round(U*32),Math.round($*32),ae,he,(pr<<1)+(rt?1:0),Fr,gt*16,Et*16,or*256,_r*256)}function dO(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 Net(m){for(var y=0,I=m.sections;y<I.length;y+=1){var U=I[y];if(Ii(U.text))return!0}return!1}var Kw=function(y){this.layoutVertexArray=new Bn,this.indexArray=new pn,this.programConfigurations=y,this.segments=new io,this.dynamicLayoutVertexArray=new hi,this.opacityVertexArray=new li,this.placedSymbolArray=new zo};Kw.prototype.isEmpty=function(){return this.layoutVertexArray.length===0&&this.indexArray.length===0&&this.dynamicLayoutVertexArray.length===0&&this.opacityVertexArray.length===0},Kw.prototype.upload=function(y,I,U,$){this.isEmpty()||(U&&(this.layoutVertexBuffer=y.createVertexBuffer(this.layoutVertexArray,re.members),this.indexBuffer=y.createIndexBuffer(this.indexArray,I),this.dynamicLayoutVertexBuffer=y.createVertexBuffer(this.dynamicLayoutVertexArray,fe.members,!0),this.opacityVertexBuffer=y.createVertexBuffer(this.opacityVertexArray,Bet,!0),this.opacityVertexBuffer.itemSize=1),(U||$)&&this.programConfigurations.upload(y))},Kw.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",Kw);var ES=function(y,I,U){this.layoutVertexArray=new y,this.layoutAttributes=I,this.indexArray=new U,this.segments=new io,this.collisionVertexArray=new Ni};ES.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)},ES.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.segments.destroy(),this.collisionVertexBuffer.destroy())},X("CollisionBuffers",ES);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=sy([]),this.placementViewportMatrix=sy([]);var I=this.layers[0],U=I._unevaluatedLayout._values;this.textSizeData=_p(this.zoom,U["text-size"]),this.iconSizeData=_p(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 Kw(new fi(this.layers,this.zoom,function(y){return/^text/.test(y)})),this.icon=new Kw(new fi(this.layers,this.zoom,function(y){return/^icon/.test(y)})),this.glyphOffsetArray=new Vl,this.lineVertexArray=new ss,this.symbolInstances=new al},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=zi[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),Et=rt.value.kind!=="constant"||!!rt.value.value||Object.keys(rt.parameters).length>0,or=ae.get("symbol-sort-key");if(this.features=[],!(!gt&&!Et)){for(var _r=I.iconDependencies,pr=I.glyphDependencies,Fr=I.availableImages,oi=new Gn(this.zoom),Hi=0,Ai=y;Hi<Ai.length;Hi+=1){var bn=Ai[Hi],nn=bn.feature,xn=bn.id,Pn=bn.index,Zn=bn.sourceLayerIndex,ga=$._featureFilter.needGeometry,ha=Ja(nn,ga);if($._featureFilter.filter(oi,ha,U)){ga||(ha.geometry=zn(nn));var eo=void 0;if(gt){var za=$.getValueAndResolveTokens("text-field",ha,U,Fr),Za=Jl.factory(za);Net(Za)&&(this.hasRTLText=!0),(!this.hasRTLText||yo()==="unavailable"||this.hasRTLText&&Ms.isParsed())&&(eo=yi(Za,$,ha))}var Ko=void 0;if(Et){var to=$.getValueAndResolveTokens("icon-image",ha,U,Fr);to instanceof fl?Ko=to:Ko=fl.fromString(to)}if(!(!eo&&!Ko)){var ao=this.sortFeaturesByKey?or.evaluate(ha,{},U):void 0,_s={id:xn,text:eo,icon:Ko,index:Pn,sourceLayerIndex:Zn,geometry:ha.geometry,properties:nn.properties,type:qet[nn.type],sortKey:ao};if(this.features.push(_s),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,kl=eo.sections;Iu<kl.length;Iu+=1){var Cl=kl[Iu];if(Cl.image)_r[Cl.image.name]=!0;else{var yl=jt(eo.toString()),Qu=Cl.fontStack||jo,gc=pr[Qu]=pr[Qu]||{};this.calculateGlyphDependencies(Cl.text,gc,El,this.allowVerticalPlacement,yl)}}}}}}ae.get("symbol-placement")==="line"&&(this.features=vn(this.features)),this.sortFeaturesByKey&&this.features.sort(function(Sf,Ff){return Sf.sortKey-Ff.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 Et=he[gt];this.lineVertexArray.emplaceBack(Et.x,Et.y,Et.tileUnitDistanceFromAnchor)}}return{lineStartIndex:U,lineLength:this.lineVertexArray.length-U}},Pu.prototype.addSymbols=function(y,I,U,$,ae,he,Oe,rt,gt,Et,or,_r){for(var pr=y.indexArray,Fr=y.layoutVertexArray,oi=y.segments.prepareSegment(4*I.length,Fr,pr,this.canOverlap?he.sortKey:void 0),Hi=this.glyphOffsetArray.length,Ai=oi.vertexLength,bn=this.allowVerticalPlacement&&Oe===uv.vertical?Math.PI/2:0,nn=he.text&&he.text.sections,xn=0;xn<I.length;xn++){var Pn=I[xn],Zn=Pn.tl,ga=Pn.tr,ha=Pn.bl,eo=Pn.br,za=Pn.tex,Za=Pn.pixelOffsetTL,Ko=Pn.pixelOffsetBR,to=Pn.minFontScaleX,ao=Pn.minFontScaleY,_s=Pn.glyphOffset,jo=Pn.isSDF,El=Pn.sectionIndex,Iu=oi.vertexLength,kl=_s[1];e6(Fr,rt.x,rt.y,Zn.x,kl+Zn.y,za.x,za.y,U,jo,Za.x,Za.y,to,ao),e6(Fr,rt.x,rt.y,ga.x,kl+ga.y,za.x+za.w,za.y,U,jo,Ko.x,Za.y,to,ao),e6(Fr,rt.x,rt.y,ha.x,kl+ha.y,za.x,za.y+za.h,U,jo,Za.x,Ko.y,to,ao),e6(Fr,rt.x,rt.y,eo.x,kl+eo.y,za.x+za.w,za.y+za.h,U,jo,Ko.x,Ko.y,to,ao),dO(y.dynamicLayoutVertexArray,rt,bn),pr.emplaceBack(Iu,Iu+1,Iu+2),pr.emplaceBack(Iu+1,Iu+2,Iu+3),oi.vertexLength+=4,oi.primitiveLength+=2,this.glyphOffsetArray.emplaceBack(_s[0]),(xn===I.length-1||El!==I[xn+1].sectionIndex)&&y.programConfigurations.populatePaintArrays(Fr.length,he,he.index,{},_r,nn&&nn[El])}y.placedSymbolArray.emplaceBack(rt.x,rt.y,Hi,this.glyphOffsetArray.length-Hi,Ai,gt,Et,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,Et=ae.layoutVertexArray,or=ae.collisionVertexArray,_r=Oe.anchorX,pr=Oe.anchorY;this._addCollisionDebugVertex(Et,or,he,_r,pr,new u(y,I)),this._addCollisionDebugVertex(Et,or,he,_r,pr,new u(U,I)),this._addCollisionDebugVertex(Et,or,he,_r,pr,new u(U,$)),this._addCollisionDebugVertex(Et,or,he,_r,pr,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,Et=he.y2;this.addCollisionDebugVertices(Oe,rt,gt,Et,$?this.textCollisionBox:this.iconCollisionBox,he.anchorPoint,U)}},Pu.prototype.generateCollisionDebugBuffers=function(){this.hasDebugData()&&this.destroyDebugData(),this.textCollisionBox=new ES(Ji,ct.members,oa),this.iconCollisionBox=new ES(Ji,ct.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 Et={},or=I;or<U;or++){var _r=y.get(or);Et.textBox={x1:_r.x1,y1:_r.y1,x2:_r.x2,y2:_r.y2,anchorPointX:_r.anchorPointX,anchorPointY:_r.anchorPointY},Et.textFeatureIndex=_r.featureIndex;break}for(var pr=$;pr<ae;pr++){var Fr=y.get(pr);Et.verticalTextBox={x1:Fr.x1,y1:Fr.y1,x2:Fr.x2,y2:Fr.y2,anchorPointX:Fr.anchorPointX,anchorPointY:Fr.anchorPointY},Et.verticalTextFeatureIndex=Fr.featureIndex;break}for(var oi=he;oi<Oe;oi++){var Hi=y.get(oi);Et.iconBox={x1:Hi.x1,y1:Hi.y1,x2:Hi.x2,y2:Hi.y2,anchorPointX:Hi.anchorPointX,anchorPointY:Hi.anchorPointY},Et.iconFeatureIndex=Hi.featureIndex;break}for(var Ai=rt;Ai<gt;Ai++){var bn=y.get(Ai);Et.verticalIconBox={x1:bn.x1,y1:bn.y1,x2:bn.x2,y2:bn.y2,anchorPointX:bn.anchorPointX,anchorPointY:bn.anchorPointY},Et.verticalIconFeatureIndex=bn.featureIndex;break}return Et},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,Et){return $[gt]-$[Et]||ae[Et]-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&&gt.indexOf(Oe)===rt&&I.addIndicesForPlacedSymbol(I.text,Oe)}),he.verticalPlacedTextSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.text,he.verticalPlacedTextSymbolIndex),he.placedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,he.placedIconSymbolIndex),he.verticalPlacedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,he.verticalPlacedIconSymbolIndex)}this.text.indexBuffer&&this.text.indexBuffer.updateData(this.text.indexArray),this.icon.indexBuffer&&this.icon.indexBuffer.updateData(this.icon.indexArray)}},X("SymbolBucket",Pu,{omit:["layers","collisionBoxArray","features","compareText"]}),Pu.MAX_GLYPHS=65535,Pu.addDynamicAttributes=dO;function Uet(m,y){return y.replace(/{([^{}]+)}/g,function(I,U){return U in m?String(m[U]):""})}var Vet=new Nr({"symbol-placement":new Me(Rn.layout_symbol["symbol-placement"]),"symbol-spacing":new Me(Rn.layout_symbol["symbol-spacing"]),"symbol-avoid-edges":new Me(Rn.layout_symbol["symbol-avoid-edges"]),"symbol-sort-key":new bt(Rn.layout_symbol["symbol-sort-key"]),"symbol-z-order":new Me(Rn.layout_symbol["symbol-z-order"]),"icon-allow-overlap":new Me(Rn.layout_symbol["icon-allow-overlap"]),"icon-ignore-placement":new Me(Rn.layout_symbol["icon-ignore-placement"]),"icon-optional":new Me(Rn.layout_symbol["icon-optional"]),"icon-rotation-alignment":new Me(Rn.layout_symbol["icon-rotation-alignment"]),"icon-size":new bt(Rn.layout_symbol["icon-size"]),"icon-text-fit":new Me(Rn.layout_symbol["icon-text-fit"]),"icon-text-fit-padding":new Me(Rn.layout_symbol["icon-text-fit-padding"]),"icon-image":new bt(Rn.layout_symbol["icon-image"]),"icon-rotate":new bt(Rn.layout_symbol["icon-rotate"]),"icon-padding":new Me(Rn.layout_symbol["icon-padding"]),"icon-keep-upright":new Me(Rn.layout_symbol["icon-keep-upright"]),"icon-offset":new bt(Rn.layout_symbol["icon-offset"]),"icon-anchor":new bt(Rn.layout_symbol["icon-anchor"]),"icon-pitch-alignment":new Me(Rn.layout_symbol["icon-pitch-alignment"]),"text-pitch-alignment":new Me(Rn.layout_symbol["text-pitch-alignment"]),"text-rotation-alignment":new Me(Rn.layout_symbol["text-rotation-alignment"]),"text-field":new bt(Rn.layout_symbol["text-field"]),"text-font":new bt(Rn.layout_symbol["text-font"]),"text-size":new bt(Rn.layout_symbol["text-size"]),"text-max-width":new bt(Rn.layout_symbol["text-max-width"]),"text-line-height":new Me(Rn.layout_symbol["text-line-height"]),"text-letter-spacing":new bt(Rn.layout_symbol["text-letter-spacing"]),"text-justify":new bt(Rn.layout_symbol["text-justify"]),"text-radial-offset":new bt(Rn.layout_symbol["text-radial-offset"]),"text-variable-anchor":new Me(Rn.layout_symbol["text-variable-anchor"]),"text-anchor":new bt(Rn.layout_symbol["text-anchor"]),"text-max-angle":new Me(Rn.layout_symbol["text-max-angle"]),"text-writing-mode":new Me(Rn.layout_symbol["text-writing-mode"]),"text-rotate":new bt(Rn.layout_symbol["text-rotate"]),"text-padding":new Me(Rn.layout_symbol["text-padding"]),"text-keep-upright":new Me(Rn.layout_symbol["text-keep-upright"]),"text-transform":new bt(Rn.layout_symbol["text-transform"]),"text-offset":new bt(Rn.layout_symbol["text-offset"]),"text-allow-overlap":new Me(Rn.layout_symbol["text-allow-overlap"]),"text-ignore-placement":new Me(Rn.layout_symbol["text-ignore-placement"]),"text-optional":new Me(Rn.layout_symbol["text-optional"])}),Get=new Nr({"icon-opacity":new bt(Rn.paint_symbol["icon-opacity"]),"icon-color":new bt(Rn.paint_symbol["icon-color"]),"icon-halo-color":new bt(Rn.paint_symbol["icon-halo-color"]),"icon-halo-width":new bt(Rn.paint_symbol["icon-halo-width"]),"icon-halo-blur":new bt(Rn.paint_symbol["icon-halo-blur"]),"icon-translate":new Me(Rn.paint_symbol["icon-translate"]),"icon-translate-anchor":new Me(Rn.paint_symbol["icon-translate-anchor"]),"text-opacity":new bt(Rn.paint_symbol["text-opacity"]),"text-color":new bt(Rn.paint_symbol["text-color"],{runtimeType:ql,getOverride:function(m){return m.textColor},hasOverride:function(m){return!!m.textColor}}),"text-halo-color":new bt(Rn.paint_symbol["text-halo-color"]),"text-halo-width":new bt(Rn.paint_symbol["text-halo-width"]),"text-halo-blur":new bt(Rn.paint_symbol["text-halo-blur"]),"text-translate":new Me(Rn.paint_symbol["text-translate"]),"text-translate-anchor":new Me(Rn.paint_symbol["text-translate-anchor"])}),vO={paint:Get,layout:Vet},Jw=function(y){this.type=y.property.overrides?y.property.overrides.runtimeType:ac,this.defaultValue=y};Jw.prototype.evaluate=function(y){if(y.formattedSection){var I=this.defaultValue.property.overrides;if(I&&I.hasOverride(y.formattedSection))return I.getOverride(y.formattedSection)}return y.feature&&y.featureState?this.defaultValue.evaluate(y.feature,y.featureState):this.defaultValue.property.specification.default},Jw.prototype.eachChild=function(y){if(!this.defaultValue.isConstant()){var I=this.defaultValue.value;y(I._styleExpression.expression)}},Jw.prototype.outputDefined=function(){return!1},Jw.prototype.serialize=function(){return null},X("FormatSectionOverride",Jw,{omit:["defaultValue"]});var Het=function(m){function y(I){m.call(this,I,vO)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.recalculate=function(U,$){if(m.prototype.recalculate.call(this,U,$),this.layout.get("icon-rotation-alignment")==="auto"&&(this.layout.get("symbol-placement")!=="point"?this.layout._values["icon-rotation-alignment"]="map":this.layout._values["icon-rotation-alignment"]="viewport"),this.layout.get("text-rotation-alignment")==="auto"&&(this.layout.get("symbol-placement")!=="point"?this.layout._values["text-rotation-alignment"]="map":this.layout._values["text-rotation-alignment"]="viewport"),this.layout.get("text-pitch-alignment")==="auto"&&(this.layout._values["text-pitch-alignment"]=this.layout.get("text-rotation-alignment")),this.layout.get("icon-pitch-alignment")==="auto"&&(this.layout._values["icon-pitch-alignment"]=this.layout.get("icon-rotation-alignment")),this.layout.get("symbol-placement")==="point"){var ae=this.layout.get("text-writing-mode");if(ae){for(var he=[],Oe=0,rt=ae;Oe<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?Uet($.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,$=vO.paint.overridableProperties;U<$.length;U+=1){var ae=$[U];if(y.hasPaintOverride(this.layout,ae)){var he=this.paint.get(ae),Oe=new Jw(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 dl(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=vO.paint.properties[$],Oe=!1,rt=function(or){for(var _r=0,pr=or;_r<pr.length;_r+=1){var Fr=pr[_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&&Es(or.value)===pl){var _r=or.value;rt(_r.sections)}else or instanceof Gu?rt(or.sections):or.eachChild(gt)},Et=ae.value;Et._styleExpression&&gt(Et._styleExpression.expression)}return Oe},y}(mi),jet=new Nr({"background-color":new Me(Rn.paint_background["background-color"]),"background-pattern":new Rr(Rn.paint_background["background-pattern"]),"background-opacity":new Me(Rn.paint_background["background-opacity"])}),Wet={paint:jet},Xet=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),Zet=new Nr({"raster-opacity":new Me(Rn.paint_raster["raster-opacity"]),"raster-hue-rotate":new Me(Rn.paint_raster["raster-hue-rotate"]),"raster-brightness-min":new Me(Rn.paint_raster["raster-brightness-min"]),"raster-brightness-max":new Me(Rn.paint_raster["raster-brightness-max"]),"raster-saturation":new Me(Rn.paint_raster["raster-saturation"]),"raster-contrast":new Me(Rn.paint_raster["raster-contrast"]),"raster-resampling":new Me(Rn.paint_raster["raster-resampling"]),"raster-fade-duration":new Me(Rn.paint_raster["raster-fade-duration"])}),Yet={paint:Zet},Ket=function(m){function y(I){m.call(this,I,Yet)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y}(mi);function Jet(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 $et=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),Qet={circle:j9,heatmap:Iw,hillshade:xC,fill:Qx,"fill-extrusion":hm,line:A,symbol:Het,background:Xet,raster:Ket};function ett(m){return m.type==="custom"?new $et(m):new Qet[m.type](m)}var jQ=f.HTMLImageElement,WQ=f.HTMLCanvasElement,XQ=f.HTMLVideoElement,ZQ=f.ImageData,t6=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 jQ||y instanceof WQ||y instanceof XQ||y instanceof ZQ||t6&&y instanceof t6?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 Et=U||{x:0,y:0},or=Et.x,_r=Et.y;y instanceof jQ||y instanceof WQ||y instanceof XQ||y instanceof ZQ||t6&&y instanceof t6?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()&&gt.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 pO=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()})};pO.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))},pO.prototype.remove=function(){delete this._channel,this._callback=function(){}};var $w=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 pO(this.process),this.target.addEventListener("message",this.receive,!1),this.globalScope=Ce()?y:f};$w.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})}}},$w.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 Ce()||I.mustQueue?(this.tasks[U]=I,this.taskQueue.push(U),this.invoker.trigger()):this.processTask(U,I)},$w.prototype.process=function(){if(this.taskQueue.length){var y=this.taskQueue.shift(),I=this.tasks[y];delete this.tasks[y],this.taskQueue.length&&this.invoker.trigger(),I&&this.processTask(y,I)}},$w.prototype.processTask=function(y,I){var U=this;if(I.type==="<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,pr){ae=!0,delete U.cancelCallbacks[y],U.target.postMessage({id:y,type:"<response>",sourceMapId:U.mapId,error:_r?He(_r):null,data:He(pr,he)},he)}:function(_r){ae=!0},rt=null,gt=Ye(I.data);if(this.parent[I.type])rt=this.parent[I.type](I.sourceMapId,gt,Oe);else if(this.parent.getWorkerSource){var Et=I.type.split("."),or=this.parent.getWorkerSource(I.sourceMapId,Et[0],gt.source);rt=or[Et[1]](gt,Oe)}else Oe(new Error("Could not find function "+I.type));!ae&&rt&&rt.cancel&&(this.cancelCallbacks[y]=rt.cancel)}},$w.prototype.remove=function(){this.invoker.remove(),this.target.removeEventListener("message",this.receive,!1)};function ttt(m,y,I){y=Math.pow(2,I)-y-1;var U=YQ(m*256,y*256,I),$=YQ((m+1)*256,(y+1)*256,I);return U[0]+","+U[1]+","+$[0]+","+$[1]}function YQ(m,y,I){var U=2*Math.PI*6378137/256/Math.pow(2,I),$=m*U-2*Math.PI*6378137/2,ae=y*U-2*Math.PI*6378137/2;return[$,ae]}var lh=function(y,I){y&&(I?this.setSouthWest(y).setNorthEast(I):y.length===4?this.setSouthWest([y[0],y[1]]).setNorthEast([y[2],y[3]]):this.setSouthWest(y[0]).setNorthEast(y[1]))};lh.prototype.setNorthEast=function(y){return this._ne=y instanceof Hc?new Hc(y.lng,y.lat):Hc.convert(y),this},lh.prototype.setSouthWest=function(y){return this._sw=y instanceof Hc?new Hc(y.lng,y.lat):Hc.convert(y),this},lh.prototype.extend=function(y){var I=this._sw,U=this._ne,$,ae;if(y instanceof Hc)$=y,ae=y;else if(y instanceof lh){if($=y._sw,ae=y._ne,!$||!ae)return this}else{if(Array.isArray(y))if(y.length===4||y.every(Array.isArray)){var he=y;return this.extend(lh.convert(he))}else{var Oe=y;return this.extend(Hc.convert(Oe))}return this}return!I&&!U?(this._sw=new Hc($.lng,$.lat),this._ne=new Hc(ae.lng,ae.lat)):(I.lng=Math.min($.lng,I.lng),I.lat=Math.min($.lat,I.lat),U.lng=Math.max(ae.lng,U.lng),U.lat=Math.max(ae.lat,U.lat)),this},lh.prototype.getCenter=function(){return new Hc((this._sw.lng+this._ne.lng)/2,(this._sw.lat+this._ne.lat)/2)},lh.prototype.getSouthWest=function(){return this._sw},lh.prototype.getNorthEast=function(){return this._ne},lh.prototype.getNorthWest=function(){return new Hc(this.getWest(),this.getNorth())},lh.prototype.getSouthEast=function(){return new Hc(this.getEast(),this.getSouth())},lh.prototype.getWest=function(){return this._sw.lng},lh.prototype.getSouth=function(){return this._sw.lat},lh.prototype.getEast=function(){return this._ne.lng},lh.prototype.getNorth=function(){return this._ne.lat},lh.prototype.toArray=function(){return[this._sw.toArray(),this._ne.toArray()]},lh.prototype.toString=function(){return"LngLatBounds("+this._sw.toString()+", "+this._ne.toString()+")"},lh.prototype.isEmpty=function(){return!(this._sw&&this._ne)},lh.prototype.contains=function(y){var I=Hc.convert(y),U=I.lng,$=I.lat,ae=this._sw.lat<=$&&$<=this._ne.lat,he=this._sw.lng<=U&&U<=this._ne.lng;return this._sw.lng>this._ne.lng&&(he=this._sw.lng>=U&&U>=this._ne.lng),ae&&he},lh.convert=function(y){return!y||y instanceof lh?y:new lh(y)};var KQ=63710088e-1,Hc=function(y,I){if(isNaN(y)||isNaN(I))throw new Error("Invalid LngLat object: ("+y+", "+I+")");if(this.lng=+y,this.lat=+I,this.lat>90||this.lat<-90)throw new Error("Invalid LngLat latitude value: must be between -90 and 90")};Hc.prototype.wrap=function(){return new Hc(k(this.lng,-180,180),this.lat)},Hc.prototype.toArray=function(){return[this.lng,this.lat]},Hc.prototype.toString=function(){return"LngLat("+this.lng+", "+this.lat+")"},Hc.prototype.distanceTo=function(y){var I=Math.PI/180,U=this.lat*I,$=y.lat*I,ae=Math.sin(U)*Math.sin($)+Math.cos(U)*Math.cos($)*Math.cos((y.lng-this.lng)*I),he=KQ*Math.acos(Math.min(ae,1));return he},Hc.prototype.toBounds=function(y){y===void 0&&(y=0);var I=40075017,U=360*y/I,$=U/Math.cos(Math.PI/180*this.lat);return new lh(new Hc(this.lng-$,this.lat-U),new Hc(this.lng+$,this.lat+U))},Hc.convert=function(y){if(y instanceof Hc)return y;if(Array.isArray(y)&&(y.length===2||y.length===3))return new Hc(Number(y[0]),Number(y[1]));if(!Array.isArray(y)&&typeof y=="object"&&y!==null)return new Hc(Number("lng"in y?y.lng:y.lon),Number(y.lat));throw new Error("`LngLatLike` argument must be specified as a LngLat instance, an object {lng: <lng>, lat: <lat>}, an object {lon: <lng>, lat: <lat>}, or an array of [<lng>, <lat>]")};var JQ=2*Math.PI*KQ;function $Q(m){return JQ*Math.cos(m*Math.PI/180)}function QQ(m){return(180+m)/360}function eee(m){return(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+m*Math.PI/360)))/360}function tee(m,y){return m/$Q(y)}function rtt(m){return m*360-180}function gO(m){var y=180-m*360;return 360/Math.PI*Math.atan(Math.exp(y*Math.PI/180))-90}function itt(m,y){return m*$Q(gO(y))}function ntt(m){return 1/Math.cos(m*Math.PI/180)}var nb=function(y,I,U){U===void 0&&(U=0),this.x=+y,this.y=+I,this.z=+U};nb.fromLngLat=function(y,I){I===void 0&&(I=0);var U=Hc.convert(y);return new nb(QQ(U.lng),eee(U.lat),tee(I,U.lat))},nb.prototype.toLngLat=function(){return new Hc(rtt(this.x),gO(this.y))},nb.prototype.toAltitude=function(){return itt(this.z,this.y)},nb.prototype.meterInMercatorCoordinateUnits=function(){return 1/JQ*ntt(gO(this.y))};var ab=function(y,I,U){this.z=y,this.x=I,this.y=U,this.key=kS(0,y,y,I,U)};ab.prototype.equals=function(y){return this.z===y.z&&this.x===y.x&&this.y===y.y},ab.prototype.url=function(y,I){var U=ttt(this.x,this.y,this.z),$=att(this.z,this.x,this.y);return y[(this.x+this.y)%y.length].replace("{prefix}",(this.x%16).toString(16)+(this.y%16).toString(16)).replace("{z}",String(this.z)).replace("{x}",String(this.x)).replace("{y}",String(I==="tms"?Math.pow(2,this.z)-this.y-1:this.y)).replace("{quadkey}",$).replace("{bbox-epsg-3857}",U)},ab.prototype.getTilePoint=function(y){var I=Math.pow(2,this.z);return new u((y.x*I-this.x)*Ci,(y.y*I-this.y)*Ci)},ab.prototype.toString=function(){return this.z+"/"+this.x+"/"+this.y};var ree=function(y,I){this.wrap=y,this.canonical=I,this.key=kS(y,I.z,I.z,I.x,I.y)},uh=function(y,I,U,$,ae){this.overscaledZ=y,this.wrap=I,this.canonical=new ab(U,+$,+ae),this.key=kS(I,y,U,$,ae)};uh.prototype.equals=function(y){return this.overscaledZ===y.overscaledZ&&this.wrap===y.wrap&&this.canonical.equals(y.canonical)},uh.prototype.scaledTo=function(y){var I=this.canonical.z-y;return y>this.canonical.z?new uh(y,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y):new uh(y,this.wrap,y,this.canonical.x>>I,this.canonical.y>>I)},uh.prototype.calculateScaledKey=function(y,I){var U=this.canonical.z-y;return y>this.canonical.z?kS(this.wrap*+I,y,this.canonical.z,this.canonical.x,this.canonical.y):kS(this.wrap*+I,y,y,this.canonical.x>>U,this.canonical.y>>U)},uh.prototype.isChildOf=function(y){if(y.wrap!==this.wrap)return!1;var I=this.canonical.z-y.canonical.z;return y.overscaledZ===0||y.overscaledZ<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 ree(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 kS(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 att(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 vy=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 te('"'+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)]};vy.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])},vy.prototype.getUnpackVector=function(){return this.encoding==="terrarium"?[256,1,1/256,32768]:[6553.6,25.6,.1,1e4]},vy.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)},vy.prototype._unpackMapbox=function(y,I,U){return(y*256*256+I*256+U)/10-1e4},vy.prototype._unpackTerrarium=function(y,I,U){return y*256+I+U/256-32768},vy.prototype.getPixels=function(){return new Sh({width:this.stride,height:this.stride},new Uint8Array(this.data.buffer))},vy.prototype.backfillBorder=function(y,I,U){if(this.dim!==y.dim)throw new Error("dem dimension mismatch");var $=I*this.dim,ae=I*this.dim+this.dim,he=U*this.dim,Oe=U*this.dim+this.dim;switch(I){case-1:$=ae-1;break;case 1:ae=$+1;break}switch(U){case-1:he=Oe-1;break;case 1:Oe=he+1;break}for(var rt=-I*this.dim,gt=-U*this.dim,Et=he;Et<Oe;Et++)for(var or=$;or<ae;or++)this.data[this._idx(or,Et)]=y.data[this._idx(or+rt,Et+gt)]},X("DEMData",vy);function ott(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 Et=gt[rt];I[Et.id]=he}}},$=0,ae=m;$<ae.length;$+=1)U();return I}var r6=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}};r6.prototype.encode=function(y){return this._stringToNumber[y]},r6.prototype.decode=function(y){return this._numberToString[y]};var i6=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},mO={geometry:{configurable:!0}};mO.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},mO.geometry.set=function(m){this._geometry=m},i6.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(i6.prototype,mO);var Qw=function(){this.state={},this.stateChanges={},this.deletedStates={}};Qw.prototype.updateState=function(y,I,U){var $=String(I);if(this.stateChanges[y]=this.stateChanges[y]||{},this.stateChanges[y][$]=this.stateChanges[y][$]||{},x(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]}}},Qw.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}},Qw.prototype.getState=function(y,I){var U=String(I),$=this.state[y]||{},ae=this.stateChanges[y]||{},he=x({},$[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},Qw.prototype.initializeTileState=function(y,I){y.setFeatureState(this.state,I)},Qw.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]={}),x(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 Et in this.deletedStates[Oe]){var or=this.deletedStates[Oe][Et]===null;if(or)this.state[Oe][Et]={};else for(var _r=0,pr=Object.keys(this.deletedStates[Oe][Et]);_r<pr.length;_r+=1){var Fr=pr[_r];delete this.state[Oe][Et][Fr]}rt[Et]=this.state[Oe][Et]}U[Oe]=U[Oe]||{},x(U[Oe],rt)}if(this.stateChanges={},this.deletedStates={},Object.keys(U).length!==0)for(var oi in y){var Hi=y[oi];Hi.setFeatureState(U,I)}};var py=function(y,I){this.tileID=y,this.x=y.canonical.x,this.y=y.canonical.y,this.z=y.canonical.z,this.grid=new au(Ci,16,0),this.grid3D=new au(Ci,16,0),this.featureIndexArray=new Ys,this.promoteId=I};py.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 Et=I[gt],or=[1/0,1/0,-1/0,-1/0],_r=0;_r<Et.length;_r++){var pr=Et[_r];or[0]=Math.min(or[0],pr.x),or[1]=Math.min(or[1],pr.y),or[2]=Math.max(or[2],pr.x),or[3]=Math.max(or[3],pr.y)}or[0]<Ci&&or[1]<Ci&&or[2]>=0&&or[3]>=0&&rt.insert(Oe,or[0],or[1],or[2],or[3])}},py.prototype.loadVTLayers=function(){return this.vtLayers||(this.vtLayers=new pg.VectorTile(new Xa(this.rawTileData)).layers,this.sourceLayerCoder=new r6(this.vtLayers?Object.keys(this.vtLayers).sort():["_geojsonTileLayer"])),this.vtLayers},py.prototype.query=function(y,I,U,$){var ae=this;this.loadVTLayers();for(var he=y.params||{},Oe=Ci/y.tileSize/y.scale,rt=be(he.filter),gt=y.queryGeometry,Et=y.queryPadding*Oe,or=nee(gt),_r=this.grid.query(or.minX-Et,or.minY-Et,or.maxX+Et,or.maxY+Et),pr=nee(y.cameraQueryGeometry),Fr=this.grid3D.query(pr.minX-Et,pr.minY-Et,pr.maxX+Et,pr.maxY+Et,function(Zn,ga,ha,eo){return gp(y.cameraQueryGeometry,Zn-Et,ga-Et,ha+Et,eo+Et)}),oi=0,Hi=Fr;oi<Hi.length;oi+=1){var Ai=Hi[oi];_r.push(Ai)}_r.sort(stt);for(var bn={},nn,xn=function(Zn){var ga=_r[Zn];if(ga!==nn){nn=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=zn(za)),Za.queryIntersectsFeature(gt,za,Ko,eo,ae.z,y.transform,Oe,y.pixelPosMatrix)})}},Pn=0;Pn<_r.length;Pn++)xn(Pn);return bn},py.prototype.loadMatchingFeature=function(y,I,U,$,ae,he,Oe,rt,gt,Et,or){var _r=this.bucketLayerIDs[I];if(!(he&&!N(he,_r))){var pr=this.sourceLayerCoder.decode(U),Fr=this.vtLayers[pr],oi=Fr.feature($);if(ae.needGeometry){var Hi=Ja(oi,!0);if(!ae.filter(new Gn(this.tileID.overscaledZ),Hi,this.tileID.canonical))return}else if(!ae.filter(new Gn(this.tileID.overscaledZ),oi))return;for(var Ai=this.getId(oi,pr),bn=0;bn<_r.length;bn++){var nn=_r[bn];if(!(he&&he.indexOf(nn)<0)){var xn=rt[nn];if(xn){var Pn={};Ai!==void 0&&Et&&(Pn=Et.getState(xn.sourceLayer||"_geojsonTileLayer",Ai));var Zn=x({},gt[nn]);Zn.paint=iee(Zn.paint,xn.paint,oi,Pn,Oe),Zn.layout=iee(Zn.layout,xn.layout,oi,Pn,Oe);var ga=!or||or(oi,xn,Pn);if(ga){var ha=new i6(oi,this.z,this.x,this.y,Ai);ha.layer=Zn;var eo=y[nn];eo===void 0&&(eo=y[nn]=[]),eo.push({featureIndex:$,feature:ha,intersectionZ:ga})}}}}}},py.prototype.lookupSymbolFeatures=function(y,I,U,$,ae,he,Oe,rt){var gt={};this.loadVTLayers();for(var Et=be(ae),or=0,_r=y;or<_r.length;or+=1){var pr=_r[or];this.loadMatchingFeature(gt,U,$,pr,Et,he,Oe,rt,I)}return gt},py.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},py.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",py,{omit:["rawTileData","sourceLayerCoder"]});function iee(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 nee(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 stt(m,y){return y-m}var ltt=3e4,Zh=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"};Zh.prototype.registerFadeDuration=function(y){var I=y+this.timeAdded;I<ut.now()||this.fadeEndTime&&I<this.fadeEndTime||(this.fadeEndTime=I)},Zh.prototype.wasRequested=function(){return this.state==="errored"||this.state==="loaded"||this.state==="reloading"},Zh.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=ott(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,Xs();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)},Zh.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"},Zh.prototype.getBucket=function(y){return this.buckets[y.id]},Zh.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)},Zh.prototype.prepare=function(y){this.imageAtlas&&this.imageAtlas.patchUpdatedImages(y,this.imageAtlasTexture)},Zh.prototype.queryRenderedFeatures=function(y,I,U,$,ae,he,Oe,rt,gt,Et){return!this.latestFeatureIndex||!this.latestFeatureIndex.rawTileData?{}:this.latestFeatureIndex.query({queryGeometry:$,cameraQueryGeometry:ae,scale:he,tileSize:this.tileSize,pixelPosMatrix:Et,transform:rt,params:Oe,queryPadding:this.queryPadding*gt},y,I,U)},Zh.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,Et=rt.x,or=rt.y,_r={z:gt,x:Et,y:or},pr=0;pr<he.length;pr++){var Fr=he.feature(pr);if(Oe.needGeometry){var oi=Ja(Fr,!0);if(!Oe.filter(new Gn(this.tileID.overscaledZ),oi,this.tileID.canonical))continue}else if(!Oe.filter(new Gn(this.tileID.overscaledZ),Fr))continue;var Hi=U.getId(Fr,ae),Ai=new i6(Fr,gt,Et,or,Hi);Ai.tile=_r,y.push(Ai)}}},Zh.prototype.hasData=function(){return this.state==="loaded"||this.state==="reloading"||this.state==="expired"},Zh.prototype.patternsLoaded=function(){return this.imageAtlas&&!!Object.keys(this.imageAtlas.patternPositions).length},Zh.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,ltt):ae=!0}ae?(this.expiredRequestCount++,this.state="expired"):this.expiredRequestCount=0}},Zh.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)},Zh.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)))}}}},Zh.prototype.holdingForFade=function(){return this.symbolFadeHoldUntil!==void 0},Zh.prototype.symbolFadeFinished=function(){return!this.symbolFadeHoldUntil||this.symbolFadeHoldUntil<ut.now()},Zh.prototype.clearFadeHold=function(){this.symbolFadeHoldUntil=void 0},Zh.prototype.setHoldDuration=function(y){this.symbolFadeHoldUntil=ut.now()+y},Zh.prototype.setDependencies=function(y,I){for(var U={},$=0,ae=I;$<ae.length;$+=1){var he=ae[$];U[he]=!0}this.dependencies[y]=U},Zh.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 utt=["type","source","source-layer","minzoom","maxzoom","filter","layout"],D1=f.performance,aee=function(y){this._marks={start:[y.url,"start"].join("#"),end:[y.url,"end"].join("#"),measure:y.url.toString()},D1.mark(this._marks.start)};aee.prototype.finish=function(){D1.mark(this._marks.end);var y=D1.getEntriesByName(this._marks.measure);return y.length===0&&(D1.measure(this._marks.measure,this._marks.start,this._marks.end),y=D1.getEntriesByName(this._marks.measure),D1.clearMarks(this._marks.start),D1.clearMarks(this._marks.end),D1.clearMeasures(this._marks.measure)),y},i.Actor=$w,i.AlphaImage=Dv,i.CanonicalTileID=ab,i.CollisionBoxArray=Va,i.Color=cs,i.DEMData=vy,i.DataConstantProperty=Me,i.DictionaryCoder=r6,i.EXTENT=Ci,i.ErrorEvent=da,i.EvaluationParameters=Gn,i.Event=Wo,i.Evented=Wn,i.FeatureIndex=py,i.FillBucket=mp,i.FillExtrusionBucket=Vp,i.ImageAtlas=gg,i.ImagePosition=Zf,i.LineBucket=sh,i.LngLat=Hc,i.LngLatBounds=lh,i.MercatorCoordinate=nb,i.ONE_EM=Tn,i.OverscaledTileID=uh,i.Point=u,i.Point$1=u,i.Properties=Nr,i.Protobuf=Xa,i.RGBAImage=Sh,i.RequestManager=$e,i.RequestPerformance=aee,i.ResourceType=ra,i.SegmentVector=io,i.SourceFeatureState=Qw,i.StructArrayLayout1ui2=ba,i.StructArrayLayout2f1f2i16=Vi,i.StructArrayLayout2i4=Yr,i.StructArrayLayout3ui6=pn,i.StructArrayLayout4i8=xi,i.SymbolBucket=Pu,i.Texture=ib,i.Tile=Zh,i.Transitionable=Uo,i.Uniform1f=Qe,i.Uniform1i=Ve,i.Uniform2f=at,i.Uniform3f=Ct,i.Uniform4f=Ot,i.UniformColor=Rt,i.UniformMatrix4f=Dt,i.UnwrappedTileID=ree,i.ValidationError=_a,i.WritingMode=uv,i.ZoomHistory=kt,i.add=Rv,i.addDynamicAttributes=dO,i.asyncAll=E,i.bezier=_,i.bindAll=O,i.browser=ut,i.cacheEntryPossiblyAdded=ji,i.clamp=p,i.clearTileCache=wi,i.clipLine=BQ,i.clone=w1,i.clone$1=j,i.clone$2=kw,i.collisionCircleLayout=Lt,i.config=pt,i.create=b1,i.create$1=jh,i.create$2=hg,i.createCommonjsModule=a,i.createExpression=oo,i.createLayout=Wi,i.createStyleLayer=ett,i.cross=B9,i.deepEqual=h,i.dot=q9,i.dot$1=H9,i.ease=b,i.emitValidationErrors=Lu,i.endsWith=V,i.enforceCacheSizeLimit=In,i.evaluateSizeForFeature=IQ,i.evaluateSizeForZoom=RQ,i.evaluateVariableOffset=VQ,i.evented=Ia,i.extend=x,i.featureFilter=be,i.filterObject=Z,i.fromRotation=im,i.getAnchorAlignment=SS,i.getAnchorJustification=hO,i.getArrayBuffer=ri,i.getImage=ua,i.getJSON=Xr,i.getRTLTextPluginStatus=yo,i.getReferrer=Ut,i.getVideo=ma,i.identity=sy,i.invert=nm,i.isChar=nt,i.isMapboxURL=St,i.keysDifference=L,i.makeRequest=Er,i.mapObject=G,i.mercatorXfromLng=QQ,i.mercatorYfromLat=eee,i.mercatorZfromAltitude=tee,i.mul=Nx,i.multiply=am,i.mvt=pg,i.nextPowerOfTwo=T,i.normalize=Ux,i.number=nl,i.offscreenCanvasSupported=Fn,i.ortho=wu,i.parseGlyphPBF=v0,i.pbf=Xa,i.performSymbolLayout=Det,i.perspective=T1,i.pick=C,i.plugin=Ms,i.polygonIntersectsPolygon=so,i.postMapLoadEvent=je,i.postTurnstileEvent=Ge,i.potpack=ep,i.refProperties=utt,i.register=X,i.registerForPluginStateChange=Da,i.renderColorRamp=Hx,i.rotate=oy,i.rotateX=Sd,i.rotateZ=ly,i.scale=eu,i.scale$1=G9,i.scale$2=Cw,i.setCacheLimits=On,i.setRTLTextPlugin=go,i.sphericalToCartesian=Ee,i.sqrLen=aS,i.styleSpec=Rn,i.sub=U9,i.symbolSize=Aet,i.transformMat3=N9,i.transformMat4=uy,i.translate=vc,i.triggerPluginCompletionEvent=ia,i.uniqueId=g,i.validateCustomStyleLayer=Jet,i.validateLight=To,i.validateStyle=wo,i.values=S,i.vectorTile=pg,i.version=o,i.warnOnce=te,i.webpSupported=Zt,i.window=f,i.wrap=k}),n(["./shared"],function(i){"use strict";function a(Ut){var wt=typeof Ut;if(wt==="number"||wt==="boolean"||wt==="string"||Ut===void 0||Ut===null)return JSON.stringify(Ut);if(Array.isArray(Ut)){for(var rr="[",nr=0,Er=Ut;nr<Er.length;nr+=1){var Xr=Er[nr];rr+=a(Xr)+","}return rr+"]"}for(var ri=Object.keys(Ut).sort(),Qr="{",Oi=0;Oi<ri.length;Oi++)Qr+=JSON.stringify(ri[Oi])+":"+a(Ut[ri[Oi]])+",";return Qr+"}"}function o(Ut){for(var wt="",rr=0,nr=i.refProperties;rr<nr.length;rr+=1){var Er=nr[rr];wt+="/"+a(Ut[Er])}return wt}function s(Ut,wt){for(var rr={},nr=0;nr<Ut.length;nr++){var Er=wt&&wt[Ut[nr].id]||o(Ut[nr]);wt&&(wt[Ut[nr].id]=Er);var Xr=rr[Er];Xr||(Xr=rr[Er]=[]),Xr.push(Ut[nr])}var ri=[];for(var Qr in rr)ri.push(rr[Qr]);return ri}var l=function(wt){this.keyCache={},wt&&this.replace(wt)};l.prototype.replace=function(wt){this._layerConfigs={},this._layers={},this.update(wt,[])},l.prototype.update=function(wt,rr){for(var nr=this,Er=0,Xr=wt;Er<Xr.length;Er+=1){var ri=Xr[Er];this._layerConfigs[ri.id]=ri;var Qr=this._layers[ri.id]=i.createStyleLayer(ri);Qr._featureFilter=i.featureFilter(Qr.filter),this.keyCache[ri.id]&&delete this.keyCache[ri.id]}for(var Oi=0,$i=rr;Oi<$i.length;Oi+=1){var tn=$i[Oi];delete this.keyCache[tn],delete this._layerConfigs[tn],delete this._layers[tn]}this.familiesBySource={};for(var fn=s(i.values(this._layerConfigs),this.keyCache),yn=0,Sn=fn;yn<Sn.length;yn+=1){var Ba=Sn[yn],ua=Ba.map(function(Wn){return nr._layers[Wn.id]}),ma=ua[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(ua)}}};var u=1,c=function(wt){var rr={},nr=[];for(var Er in wt){var Xr=wt[Er],ri=rr[Er]={};for(var Qr in Xr){var Oi=Xr[+Qr];if(!(!Oi||Oi.bitmap.width===0||Oi.bitmap.height===0)){var $i={x:0,y:0,w:Oi.bitmap.width+2*u,h:Oi.bitmap.height+2*u};nr.push($i),ri[Qr]={rect:$i,metrics:Oi.metrics}}}}var tn=i.potpack(nr),fn=tn.w,yn=tn.h,Sn=new i.AlphaImage({width:fn||1,height:yn||1});for(var Ba in wt){var ua=wt[Ba];for(var ma in ua){var Wa=ua[+ma];if(!(!Wa||Wa.bitmap.width===0||Wa.bitmap.height===0)){var Fa=rr[Ba][ma].rect;i.AlphaImage.copy(Wa.bitmap,Sn,{x:0,y:0},{x:Fa.x+u,y:Fa.y+u},Wa.bitmap)}}}this.image=Sn,this.positions=rr};i.register("GlyphAtlas",c);var f=function(wt){this.tileID=new i.OverscaledTileID(wt.tileID.overscaledZ,wt.tileID.wrap,wt.tileID.canonical.z,wt.tileID.canonical.x,wt.tileID.canonical.y),this.uid=wt.uid,this.zoom=wt.zoom,this.pixelRatio=wt.pixelRatio,this.tileSize=wt.tileSize,this.source=wt.source,this.overscaling=this.tileID.overscaleFactor(),this.showCollisionBoxes=wt.showCollisionBoxes,this.collectResourceTiming=!!wt.collectResourceTiming,this.returnDependencies=!!wt.returnDependencies,this.promoteId=wt.promoteId};f.prototype.parse=function(wt,rr,nr,Er,Xr){var ri=this;this.status="parsing",this.data=wt,this.collisionBoxArray=new i.CollisionBoxArray;var Qr=new i.DictionaryCoder(Object.keys(wt.layers).sort()),Oi=new i.FeatureIndex(this.tileID,this.promoteId);Oi.bucketLayerIDs=[];var $i={},tn={featureIndex:Oi,iconDependencies:{},patternDependencies:{},glyphDependencies:{},availableImages:nr},fn=rr.familiesBySource[this.source];for(var yn in fn){var Sn=wt.layers[yn];if(Sn){Sn.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=Qr.encode(yn),ua=[],ma=0;ma<Sn.length;ma++){var Wa=Sn.feature(ma),Fa=Oi.getId(Wa,yn);ua.push({feature:Wa,id:Fa,index:ma,sourceLayerIndex:Ba})}for(var Wo=0,da=fn[yn];Wo<da.length;Wo+=1){var Wn=da[Wo],Ha=Wn[0];if(!(Ha.minzoom&&this.zoom<Math.floor(Ha.minzoom))&&!(Ha.maxzoom&&this.zoom>=Ha.maxzoom)&&Ha.visibility!=="none"){h(Wn,this.zoom,nr);var vo=$i[Ha.id]=Ha.createBucket({index:Oi.bucketLayerIDs.length,layers:Wn,zoom:this.zoom,pixelRatio:this.pixelRatio,overscaling:this.overscaling,collisionBoxArray:this.collisionBoxArray,sourceLayerIndex:Ba,sourceID:this.source});vo.populate(ua,tn,this.tileID.canonical),Oi.bucketLayerIDs.push(Wn.map(function(Li){return Li.id}))}}}}var jn,Mt,kr,Jr,vi=i.mapObject(tn.glyphDependencies,function(Li){return Object.keys(Li).map(Number)});Object.keys(vi).length?Er.send("getGlyphs",{uid:this.uid,stacks:vi},function(Li,_n){jn||(jn=Li,Mt=_n,Mn.call(ri))}):Mt={};var hn=Object.keys(tn.iconDependencies);hn.length?Er.send("getImages",{icons:hn,source:this.source,tileID:this.tileID,type:"icons"},function(Li,_n){jn||(jn=Li,kr=_n,Mn.call(ri))}):kr={};var An=Object.keys(tn.patternDependencies);An.length?Er.send("getImages",{icons:An,source:this.source,tileID:this.tileID,type:"patterns"},function(Li,_n){jn||(jn=Li,Jr=_n,Mn.call(ri))}):Jr={},Mn.call(this);function Mn(){if(jn)return Xr(jn);if(Mt&&kr&&Jr){var Li=new c(Mt),_n=new i.ImageAtlas(kr,Jr);for(var ya in $i){var Jn=$i[ya];Jn instanceof i.SymbolBucket?(h(Jn.layers,this.zoom,nr),i.performSymbolLayout(Jn,Mt,Li.positions,kr,_n.iconPositions,this.showCollisionBoxes,this.tileID.canonical)):Jn.hasPattern&&(Jn instanceof i.LineBucket||Jn instanceof i.FillBucket||Jn instanceof i.FillExtrusionBucket)&&(h(Jn.layers,this.zoom,nr),Jn.addFeatures(tn,this.tileID.canonical,_n.patternPositions))}this.status="done",Xr(null,{buckets:i.values($i).filter(function(Ma){return!Ma.isEmpty()}),featureIndex:Oi,collisionBoxArray:this.collisionBoxArray,glyphAtlasImage:Li.image,imageAtlas:_n,glyphMap:this.returnDependencies?Mt:null,iconMap:this.returnDependencies?kr:null,glyphPositions:this.returnDependencies?Li.positions:null})}}};function h(Ut,wt,rr){for(var nr=new i.EvaluationParameters(wt),Er=0,Xr=Ut;Er<Xr.length;Er+=1){var ri=Xr[Er];ri.recalculate(nr,rr)}}function d(Ut,wt){var rr=i.getArrayBuffer(Ut.request,function(nr,Er,Xr,ri){nr?wt(nr):Er&&wt(null,{vectorTile:new i.vectorTile.VectorTile(new i.pbf(Er)),rawData:Er,cacheControl:Xr,expires:ri})});return function(){rr.cancel(),wt()}}var v=function(wt,rr,nr,Er){this.actor=wt,this.layerIndex=rr,this.availableImages=nr,this.loadVectorData=Er||d,this.loading={},this.loaded={}};v.prototype.loadTile=function(wt,rr){var nr=this,Er=wt.uid;this.loading||(this.loading={});var Xr=wt&&wt.request&&wt.request.collectResourceTiming?new i.RequestPerformance(wt.request):!1,ri=this.loading[Er]=new f(wt);ri.abort=this.loadVectorData(wt,function(Qr,Oi){if(delete nr.loading[Er],Qr||!Oi)return ri.status="done",nr.loaded[Er]=ri,rr(Qr);var $i=Oi.rawData,tn={};Oi.expires&&(tn.expires=Oi.expires),Oi.cacheControl&&(tn.cacheControl=Oi.cacheControl);var fn={};if(Xr){var yn=Xr.finish();yn&&(fn.resourceTiming=JSON.parse(JSON.stringify(yn)))}ri.vectorTile=Oi.vectorTile,ri.parse(Oi.vectorTile,nr.layerIndex,nr.availableImages,nr.actor,function(Sn,Ba){if(Sn||!Ba)return rr(Sn);rr(null,i.extend({rawTileData:$i.slice(0)},Ba,tn,fn))}),nr.loaded=nr.loaded||{},nr.loaded[Er]=ri})},v.prototype.reloadTile=function(wt,rr){var nr=this,Er=this.loaded,Xr=wt.uid,ri=this;if(Er&&Er[Xr]){var Qr=Er[Xr];Qr.showCollisionBoxes=wt.showCollisionBoxes;var Oi=function($i,tn){var fn=Qr.reloadCallback;fn&&(delete Qr.reloadCallback,Qr.parse(Qr.vectorTile,ri.layerIndex,nr.availableImages,ri.actor,fn)),rr($i,tn)};Qr.status==="parsing"?Qr.reloadCallback=Oi:Qr.status==="done"&&(Qr.vectorTile?Qr.parse(Qr.vectorTile,this.layerIndex,this.availableImages,this.actor,Oi):Oi())}},v.prototype.abortTile=function(wt,rr){var nr=this.loading,Er=wt.uid;nr&&nr[Er]&&nr[Er].abort&&(nr[Er].abort(),delete nr[Er]),rr()},v.prototype.removeTile=function(wt,rr){var nr=this.loaded,Er=wt.uid;nr&&nr[Er]&&delete nr[Er],rr()};var _=i.window.ImageBitmap,b=function(){this.loaded={}};b.prototype.loadTile=function(wt,rr){var nr=wt.uid,Er=wt.encoding,Xr=wt.rawImageData,ri=_&&Xr instanceof _?this.getImageData(Xr):Xr,Qr=new i.DEMData(nr,ri,Er);this.loaded=this.loaded||{},this.loaded[nr]=Qr,rr(null,Qr)},b.prototype.getImageData=function(wt){(!this.offscreenCanvas||!this.offscreenCanvasContext)&&(this.offscreenCanvas=new OffscreenCanvas(wt.width,wt.height),this.offscreenCanvasContext=this.offscreenCanvas.getContext("2d")),this.offscreenCanvas.width=wt.width,this.offscreenCanvas.height=wt.height,this.offscreenCanvasContext.drawImage(wt,0,0,wt.width,wt.height);var rr=this.offscreenCanvasContext.getImageData(-1,-1,wt.width+2,wt.height+2);return this.offscreenCanvasContext.clearRect(0,0,this.offscreenCanvas.width,this.offscreenCanvas.height),new i.RGBAImage({width:rr.width,height:rr.height},rr.data)},b.prototype.removeTile=function(wt){var rr=this.loaded,nr=wt.uid;rr&&rr[nr]&&delete rr[nr]};var p=k;function k(Ut,wt){var rr=Ut&&Ut.type,nr;if(rr==="FeatureCollection")for(nr=0;nr<Ut.features.length;nr++)k(Ut.features[nr],wt);else if(rr==="GeometryCollection")for(nr=0;nr<Ut.geometries.length;nr++)k(Ut.geometries[nr],wt);else if(rr==="Feature")k(Ut.geometry,wt);else if(rr==="Polygon")E(Ut.coordinates,wt);else if(rr==="MultiPolygon")for(nr=0;nr<Ut.coordinates.length;nr++)E(Ut.coordinates[nr],wt);return Ut}function E(Ut,wt){if(Ut.length!==0){S(Ut[0],wt);for(var rr=1;rr<Ut.length;rr++)S(Ut[rr],!wt)}}function S(Ut,wt){for(var rr=0,nr=0,Er=Ut.length,Xr=Er-1;nr<Er;Xr=nr++)rr+=(Ut[nr][0]-Ut[Xr][0])*(Ut[Xr][1]+Ut[nr][1]);rr>=0!=!!wt&&Ut.reverse()}var L=i.vectorTile.VectorTileFeature.prototype.toGeoJSON,x=function(wt){this._feature=wt,this.extent=i.EXTENT,this.type=wt.type,this.properties=wt.tags,"id"in wt&&!isNaN(wt.id)&&(this.id=parseInt(wt.id,10))};x.prototype.loadGeometry=function(){if(this._feature.type===1){for(var wt=[],rr=0,nr=this._feature.geometry;rr<nr.length;rr+=1){var Er=nr[rr];wt.push([new i.Point$1(Er[0],Er[1])])}return wt}else{for(var Xr=[],ri=0,Qr=this._feature.geometry;ri<Qr.length;ri+=1){for(var Oi=Qr[ri],$i=[],tn=0,fn=Oi;tn<fn.length;tn+=1){var yn=fn[tn];$i.push(new i.Point$1(yn[0],yn[1]))}Xr.push($i)}return Xr}},x.prototype.toGeoJSON=function(wt,rr,nr){return L.call(this,wt,rr,nr)};var C=function(wt){this.layers={_geojsonTileLayer:this},this.name="_geojsonTileLayer",this.extent=i.EXTENT,this.length=wt.length,this._features=wt};C.prototype.feature=function(wt){return new x(this._features[wt])};var M=i.vectorTile.VectorTileFeature,g=P;function P(Ut,wt){this.options=wt||{},this.features=Ut,this.length=Ut.length}P.prototype.feature=function(Ut){return new T(this.features[Ut],this.options.extent)};function T(Ut,wt){this.id=typeof Ut.id=="number"?Ut.id:void 0,this.type=Ut.type,this.rawGeometry=Ut.type===1?[Ut.geometry]:Ut.geometry,this.properties=Ut.tags,this.extent=wt||4096}T.prototype.loadGeometry=function(){var Ut=this.rawGeometry;this.geometry=[];for(var wt=0;wt<Ut.length;wt++){for(var rr=Ut[wt],nr=[],Er=0;Er<rr.length;Er++)nr.push(new i.Point$1(rr[Er][0],rr[Er][1]));this.geometry.push(nr)}return this.geometry},T.prototype.bbox=function(){this.geometry||this.loadGeometry();for(var Ut=this.geometry,wt=1/0,rr=-1/0,nr=1/0,Er=-1/0,Xr=0;Xr<Ut.length;Xr++)for(var ri=Ut[Xr],Qr=0;Qr<ri.length;Qr++){var Oi=ri[Qr];wt=Math.min(wt,Oi.x),rr=Math.max(rr,Oi.x),nr=Math.min(nr,Oi.y),Er=Math.max(Er,Oi.y)}return[wt,nr,rr,Er]},T.prototype.toGeoJSON=M.prototype.toGeoJSON;var z=Z,O=Z,V=j,G=g;function Z(Ut){var wt=new i.pbf;return N(Ut,wt),wt.finish()}function j(Ut,wt){wt=wt||{};var rr={};for(var nr in Ut)rr[nr]=new g(Ut[nr].features,wt),rr[nr].name=nr,rr[nr].version=wt.version,rr[nr].extent=wt.extent;return Z({layers:rr})}function N(Ut,wt){for(var rr in Ut.layers)wt.writeMessage(3,H,Ut.layers[rr])}function H(Ut,wt){wt.writeVarintField(15,Ut.version||1),wt.writeStringField(1,Ut.name||""),wt.writeVarintField(5,Ut.extent||4096);var rr,nr={keys:[],values:[],keycache:{},valuecache:{}};for(rr=0;rr<Ut.length;rr++)nr.feature=Ut.feature(rr),wt.writeMessage(2,te,nr);var Er=nr.keys;for(rr=0;rr<Er.length;rr++)wt.writeStringField(3,Er[rr]);var Xr=nr.values;for(rr=0;rr<Xr.length;rr++)wt.writeMessage(4,me,Xr[rr])}function te(Ut,wt){var rr=Ut.feature;rr.id!==void 0&&wt.writeVarintField(1,rr.id),wt.writeMessage(2,oe,Ut),wt.writeVarintField(3,rr.type),wt.writeMessage(4,Ce,rr)}function oe(Ut,wt){var rr=Ut.feature,nr=Ut.keys,Er=Ut.values,Xr=Ut.keycache,ri=Ut.valuecache;for(var Qr in rr.properties){var Oi=Xr[Qr];typeof Oi=="undefined"&&(nr.push(Qr),Oi=nr.length-1,Xr[Qr]=Oi),wt.writeVarint(Oi);var $i=rr.properties[Qr],tn=typeof $i;tn!=="string"&&tn!=="boolean"&&tn!=="number"&&($i=JSON.stringify($i));var fn=tn+":"+$i,yn=ri[fn];typeof yn=="undefined"&&(Er.push($i),yn=Er.length-1,ri[fn]=yn),wt.writeVarint(yn)}}function _e(Ut,wt){return(wt<<3)+(Ut&7)}function Ee(Ut){return Ut<<1^Ut>>31}function Ce(Ut,wt){for(var rr=Ut.loadGeometry(),nr=Ut.type,Er=0,Xr=0,ri=rr.length,Qr=0;Qr<ri;Qr++){var Oi=rr[Qr],$i=1;nr===1&&($i=Oi.length),wt.writeVarint(_e(1,$i));for(var tn=nr===3?Oi.length-1:Oi.length,fn=0;fn<tn;fn++){fn===1&&nr!==1&&wt.writeVarint(_e(2,tn-1));var yn=Oi[fn].x-Er,Sn=Oi[fn].y-Xr;wt.writeVarint(Ee(yn)),wt.writeVarint(Ee(Sn)),Er+=yn,Xr+=Sn}nr===3&&wt.writeVarint(_e(7,1))}}function me(Ut,wt){var rr=typeof Ut;rr==="string"?wt.writeStringField(1,Ut):rr==="boolean"?wt.writeBooleanField(7,Ut):rr==="number"&&(Ut%1!==0?wt.writeDoubleField(3,Ut):Ut<0?wt.writeSVarintField(6,Ut):wt.writeVarintField(5,Ut))}z.fromVectorTileJs=O,z.fromGeojsonVt=V,z.GeoJSONWrapper=G;function ie(Ut,wt,rr,nr,Er,Xr){if(!(Er-nr<=rr)){var ri=nr+Er>>1;Se(Ut,wt,ri,nr,Er,Xr%2),ie(Ut,wt,rr,nr,ri-1,Xr+1),ie(Ut,wt,rr,ri+1,Er,Xr+1)}}function Se(Ut,wt,rr,nr,Er,Xr){for(;Er>nr;){if(Er-nr>600){var ri=Er-nr+1,Qr=rr-nr+1,Oi=Math.log(ri),$i=.5*Math.exp(2*Oi/3),tn=.5*Math.sqrt(Oi*$i*(ri-$i)/ri)*(Qr-ri/2<0?-1:1),fn=Math.max(nr,Math.floor(rr-Qr*$i/ri+tn)),yn=Math.min(Er,Math.floor(rr+(ri-Qr)*$i/ri+tn));Se(Ut,wt,rr,fn,yn,Xr)}var Sn=wt[2*rr+Xr],Ba=nr,ua=Er;for(Le(Ut,wt,nr,rr),wt[2*Er+Xr]>Sn&&Le(Ut,wt,nr,Er);Ba<ua;){for(Le(Ut,wt,Ba,ua),Ba++,ua--;wt[2*Ba+Xr]<Sn;)Ba++;for(;wt[2*ua+Xr]>Sn;)ua--}wt[2*nr+Xr]===Sn?Le(Ut,wt,nr,ua):(ua++,Le(Ut,wt,ua,Er)),ua<=rr&&(nr=ua+1),rr<=ua&&(Er=ua-1)}}function Le(Ut,wt,rr,nr){Ae(Ut,rr,nr),Ae(wt,2*rr,2*nr),Ae(wt,2*rr+1,2*nr+1)}function Ae(Ut,wt,rr){var nr=Ut[wt];Ut[wt]=Ut[rr],Ut[rr]=nr}function Fe(Ut,wt,rr,nr,Er,Xr,ri){for(var Qr=[0,Ut.length-1,0],Oi=[],$i,tn;Qr.length;){var fn=Qr.pop(),yn=Qr.pop(),Sn=Qr.pop();if(yn-Sn<=ri){for(var Ba=Sn;Ba<=yn;Ba++)$i=wt[2*Ba],tn=wt[2*Ba+1],$i>=rr&&$i<=Er&&tn>=nr&&tn<=Xr&&Oi.push(Ut[Ba]);continue}var ua=Math.floor((Sn+yn)/2);$i=wt[2*ua],tn=wt[2*ua+1],$i>=rr&&$i<=Er&&tn>=nr&&tn<=Xr&&Oi.push(Ut[ua]);var ma=(fn+1)%2;(fn===0?rr<=$i:nr<=tn)&&(Qr.push(Sn),Qr.push(ua-1),Qr.push(ma)),(fn===0?Er>=$i:Xr>=tn)&&(Qr.push(ua+1),Qr.push(yn),Qr.push(ma))}return Oi}function Pe(Ut,wt,rr,nr,Er,Xr){for(var ri=[0,Ut.length-1,0],Qr=[],Oi=Er*Er;ri.length;){var $i=ri.pop(),tn=ri.pop(),fn=ri.pop();if(tn-fn<=Xr){for(var yn=fn;yn<=tn;yn++)ge(wt[2*yn],wt[2*yn+1],rr,nr)<=Oi&&Qr.push(Ut[yn]);continue}var Sn=Math.floor((fn+tn)/2),Ba=wt[2*Sn],ua=wt[2*Sn+1];ge(Ba,ua,rr,nr)<=Oi&&Qr.push(Ut[Sn]);var ma=($i+1)%2;($i===0?rr-Er<=Ba:nr-Er<=ua)&&(ri.push(fn),ri.push(Sn-1),ri.push(ma)),($i===0?rr+Er>=Ba:nr+Er>=ua)&&(ri.push(Sn+1),ri.push(tn),ri.push(ma))}return Qr}function ge(Ut,wt,rr,nr){var Er=Ut-rr,Xr=wt-nr;return Er*Er+Xr*Xr}var Re=function(Ut){return Ut[0]},ce=function(Ut){return Ut[1]},Ze=function(wt,rr,nr,Er,Xr){rr===void 0&&(rr=Re),nr===void 0&&(nr=ce),Er===void 0&&(Er=64),Xr===void 0&&(Xr=Float64Array),this.nodeSize=Er,this.points=wt;for(var ri=wt.length<65536?Uint16Array:Uint32Array,Qr=this.ids=new ri(wt.length),Oi=this.coords=new Xr(wt.length*2),$i=0;$i<wt.length;$i++)Qr[$i]=$i,Oi[2*$i]=rr(wt[$i]),Oi[2*$i+1]=nr(wt[$i]);ie(Qr,Oi,Er,0,Qr.length-1,0)};Ze.prototype.range=function(wt,rr,nr,Er){return Fe(this.ids,this.coords,wt,rr,nr,Er,this.nodeSize)},Ze.prototype.within=function(wt,rr,nr){return Pe(this.ids,this.coords,wt,rr,nr,this.nodeSize)};var ut={minZoom:0,maxZoom:16,minPoints:2,radius:40,extent:512,nodeSize:64,log:!1,generateId:!1,reduce:null,map:function(Ut){return Ut}},pt=function(wt){this.options=cr(Object.create(ut),wt),this.trees=new Array(this.options.maxZoom+1)};pt.prototype.load=function(wt){var rr=this.options,nr=rr.log,Er=rr.minZoom,Xr=rr.maxZoom,ri=rr.nodeSize;nr&&console.time("total time");var Qr="prepare "+wt.length+" points";nr&&console.time(Qr),this.points=wt;for(var Oi=[],$i=0;$i<wt.length;$i++)wt[$i].geometry&&Oi.push(st(wt[$i],$i));this.trees[Xr+1]=new Ze(Oi,$e,St,ri,Float32Array),nr&&console.timeEnd(Qr);for(var tn=Xr;tn>=Er;tn--){var fn=+Date.now();Oi=this._cluster(Oi,tn),this.trees[tn]=new Ze(Oi,$e,St,ri,Float32Array),nr&&console.log("z%d: %d clusters in %dms",tn,Oi.length,+Date.now()-fn)}return nr&&console.timeEnd("total time"),this},pt.prototype.getClusters=function(wt,rr){var nr=((wt[0]+180)%360+360)%360-180,Er=Math.max(-90,Math.min(90,wt[1])),Xr=wt[2]===180?180:((wt[2]+180)%360+360)%360-180,ri=Math.max(-90,Math.min(90,wt[3]));if(wt[2]-wt[0]>=360)nr=-180,Xr=180;else if(nr>Xr){var Qr=this.getClusters([nr,Er,180,ri],rr),Oi=this.getClusters([-180,Er,Xr,ri],rr);return Qr.concat(Oi)}for(var $i=this.trees[this._limitZoom(rr)],tn=$i.range(Nt(nr),Jt(ri),Nt(Xr),Jt(Er)),fn=[],yn=0,Sn=tn;yn<Sn.length;yn+=1){var Ba=Sn[yn],ua=$i.points[Ba];fn.push(ua.numPoints?lt(ua):this.points[ua.index])}return fn},pt.prototype.getChildren=function(wt){var rr=this._getOriginId(wt),nr=this._getOriginZoom(wt),Er="No cluster with the specified id.",Xr=this.trees[nr];if(!Xr)throw new Error(Er);var ri=Xr.points[rr];if(!ri)throw new Error(Er);for(var Qr=this.options.radius/(this.options.extent*Math.pow(2,nr-1)),Oi=Xr.within(ri.x,ri.y,Qr),$i=[],tn=0,fn=Oi;tn<fn.length;tn+=1){var yn=fn[tn],Sn=Xr.points[yn];Sn.parentId===wt&&$i.push(Sn.numPoints?lt(Sn):this.points[Sn.index])}if($i.length===0)throw new Error(Er);return $i},pt.prototype.getLeaves=function(wt,rr,nr){rr=rr||10,nr=nr||0;var Er=[];return this._appendLeaves(Er,wt,rr,nr,0),Er},pt.prototype.getTile=function(wt,rr,nr){var Er=this.trees[this._limitZoom(wt)],Xr=Math.pow(2,wt),ri=this.options,Qr=ri.extent,Oi=ri.radius,$i=Oi/Qr,tn=(nr-$i)/Xr,fn=(nr+1+$i)/Xr,yn={features:[]};return this._addTileFeatures(Er.range((rr-$i)/Xr,tn,(rr+1+$i)/Xr,fn),Er.points,rr,nr,Xr,yn),rr===0&&this._addTileFeatures(Er.range(1-$i/Xr,tn,1,fn),Er.points,Xr,nr,Xr,yn),rr===Xr-1&&this._addTileFeatures(Er.range(0,tn,$i/Xr,fn),Er.points,-1,nr,Xr,yn),yn.features.length?yn:null},pt.prototype.getClusterExpansionZoom=function(wt){for(var rr=this._getOriginZoom(wt)-1;rr<=this.options.maxZoom;){var nr=this.getChildren(wt);if(rr++,nr.length!==1)break;wt=nr[0].properties.cluster_id}return rr},pt.prototype._appendLeaves=function(wt,rr,nr,Er,Xr){for(var ri=this.getChildren(rr),Qr=0,Oi=ri;Qr<Oi.length;Qr+=1){var $i=Oi[Qr],tn=$i.properties;if(tn&&tn.cluster?Xr+tn.point_count<=Er?Xr+=tn.point_count:Xr=this._appendLeaves(wt,tn.cluster_id,nr,Er,Xr):Xr<Er?Xr++:wt.push($i),wt.length===nr)break}return Xr},pt.prototype._addTileFeatures=function(wt,rr,nr,Er,Xr,ri){for(var Qr=0,Oi=wt;Qr<Oi.length;Qr+=1){var $i=Oi[Qr],tn=rr[$i],fn=tn.numPoints,yn={type:1,geometry:[[Math.round(this.options.extent*(tn.x*Xr-nr)),Math.round(this.options.extent*(tn.y*Xr-Er))]],tags:fn?Gt(tn):this.points[tn.index].properties},Sn=void 0;fn?Sn=tn.id:this.options.generateId?Sn=tn.index:this.points[tn.index].id&&(Sn=this.points[tn.index].id),Sn!==void 0&&(yn.id=Sn),ri.features.push(yn)}},pt.prototype._limitZoom=function(wt){return Math.max(this.options.minZoom,Math.min(+wt,this.options.maxZoom+1))},pt.prototype._cluster=function(wt,rr){for(var nr=[],Er=this.options,Xr=Er.radius,ri=Er.extent,Qr=Er.reduce,Oi=Er.minPoints,$i=Xr/(ri*Math.pow(2,rr)),tn=0;tn<wt.length;tn++){var fn=wt[tn];if(!(fn.zoom<=rr)){fn.zoom=rr;for(var yn=this.trees[rr+1],Sn=yn.within(fn.x,fn.y,$i),Ba=fn.numPoints||1,ua=Ba,ma=0,Wa=Sn;ma<Wa.length;ma+=1){var Fa=Wa[ma],Wo=yn.points[Fa];Wo.zoom>rr&&(ua+=Wo.numPoints||1)}if(ua>=Oi){for(var da=fn.x*Ba,Wn=fn.y*Ba,Ha=Qr&&Ba>1?this._map(fn,!0):null,vo=(tn<<5)+(rr+1)+this.points.length,jn=0,Mt=Sn;jn<Mt.length;jn+=1){var kr=Mt[jn],Jr=yn.points[kr];if(!(Jr.zoom<=rr)){Jr.zoom=rr;var vi=Jr.numPoints||1;da+=Jr.x*vi,Wn+=Jr.y*vi,Jr.parentId=vo,Qr&&(Ha||(Ha=this._map(fn,!0)),Qr(Ha,this._map(Jr)))}}fn.parentId=vo,nr.push(Zt(da/ua,Wn/ua,vo,ua,Ha))}else if(nr.push(fn),ua>1)for(var hn=0,An=Sn;hn<An.length;hn+=1){var Mn=An[hn],Li=yn.points[Mn];Li.zoom<=rr||(Li.zoom=rr,nr.push(Li))}}}return nr},pt.prototype._getOriginId=function(wt){return wt-this.points.length>>5},pt.prototype._getOriginZoom=function(wt){return(wt-this.points.length)%32},pt.prototype._map=function(wt,rr){if(wt.numPoints)return rr?cr({},wt.properties):wt.properties;var nr=this.points[wt.index].properties,Er=this.options.map(nr);return rr&&Er===nr?cr({},Er):Er};function Zt(Ut,wt,rr,nr,Er){return{x:Ut,y:wt,zoom:1/0,id:rr,parentId:-1,numPoints:nr,properties:Er}}function st(Ut,wt){var rr=Ut.geometry.coordinates,nr=rr[0],Er=rr[1];return{x:Nt(nr),y:Jt(Er),zoom:1/0,index:wt,parentId:-1}}function lt(Ut){return{type:"Feature",id:Ut.id,properties:Gt(Ut),geometry:{type:"Point",coordinates:[sr(Ut.x),wr(Ut.y)]}}}function Gt(Ut){var wt=Ut.numPoints,rr=wt>=1e4?Math.round(wt/1e3)+"k":wt>=1e3?Math.round(wt/100)/10+"k":wt;return cr(cr({},Ut.properties),{cluster:!0,cluster_id:Ut.id,point_count:wt,point_count_abbreviated:rr})}function Nt(Ut){return Ut/360+.5}function Jt(Ut){var wt=Math.sin(Ut*Math.PI/180),rr=.5-.25*Math.log((1+wt)/(1-wt))/Math.PI;return rr<0?0:rr>1?1:rr}function sr(Ut){return(Ut-.5)*360}function wr(Ut){var wt=(180-Ut*360)*Math.PI/180;return 360*Math.atan(Math.exp(wt))/Math.PI-90}function cr(Ut,wt){for(var rr in wt)Ut[rr]=wt[rr];return Ut}function $e(Ut){return Ut.x}function St(Ut){return Ut.y}function Qt(Ut,wt,rr,nr){for(var Er=nr,Xr=rr-wt>>1,ri=rr-wt,Qr,Oi=Ut[wt],$i=Ut[wt+1],tn=Ut[rr],fn=Ut[rr+1],yn=wt+3;yn<rr;yn+=3){var Sn=Vt(Ut[yn],Ut[yn+1],Oi,$i,tn,fn);if(Sn>Er)Qr=yn,Er=Sn;else if(Sn===Er){var Ba=Math.abs(yn-Xr);Ba<ri&&(Qr=yn,ri=Ba)}}Er>nr&&(Qr-wt>3&&Qt(Ut,wt,Qr,nr),Ut[Qr+2]=Er,rr-Qr>3&&Qt(Ut,Qr,rr,nr))}function Vt(Ut,wt,rr,nr,Er,Xr){var ri=Er-rr,Qr=Xr-nr;if(ri!==0||Qr!==0){var Oi=((Ut-rr)*ri+(wt-nr)*Qr)/(ri*ri+Qr*Qr);Oi>1?(rr=Er,nr=Xr):Oi>0&&(rr+=ri*Oi,nr+=Qr*Oi)}return ri=Ut-rr,Qr=wt-nr,ri*ri+Qr*Qr}function _t(Ut,wt,rr,nr){var Er={id:typeof Ut=="undefined"?null:Ut,type:wt,geometry:rr,tags:nr,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0};return It(Er),Er}function It(Ut){var wt=Ut.geometry,rr=Ut.type;if(rr==="Point"||rr==="MultiPoint"||rr==="LineString")mt(Ut,wt);else if(rr==="Polygon"||rr==="MultiLineString")for(var nr=0;nr<wt.length;nr++)mt(Ut,wt[nr]);else if(rr==="MultiPolygon")for(nr=0;nr<wt.length;nr++)for(var Er=0;Er<wt[nr].length;Er++)mt(Ut,wt[nr][Er])}function mt(Ut,wt){for(var rr=0;rr<wt.length;rr+=3)Ut.minX=Math.min(Ut.minX,wt[rr]),Ut.minY=Math.min(Ut.minY,wt[rr+1]),Ut.maxX=Math.max(Ut.maxX,wt[rr]),Ut.maxY=Math.max(Ut.maxY,wt[rr+1])}function er(Ut,wt){var rr=[];if(Ut.type==="FeatureCollection")for(var nr=0;nr<Ut.features.length;nr++)lr(rr,Ut.features[nr],wt,nr);else Ut.type==="Feature"?lr(rr,Ut,wt):lr(rr,{geometry:Ut},wt);return rr}function lr(Ut,wt,rr,nr){if(wt.geometry){var Er=wt.geometry.coordinates,Xr=wt.geometry.type,ri=Math.pow(rr.tolerance/((1<<rr.maxZoom)*rr.extent),2),Qr=[],Oi=wt.id;if(rr.promoteId?Oi=wt.properties[rr.promoteId]:rr.generateId&&(Oi=nr||0),Xr==="Point")Tr(Er,Qr);else if(Xr==="MultiPoint")for(var $i=0;$i<Er.length;$i++)Tr(Er[$i],Qr);else if(Xr==="LineString")Lr(Er,Qr,ri,!1);else if(Xr==="MultiLineString")if(rr.lineMetrics){for($i=0;$i<Er.length;$i++)Qr=[],Lr(Er[$i],Qr,ri,!1),Ut.push(_t(Oi,"LineString",Qr,wt.properties));return}else ti(Er,Qr,ri,!1);else if(Xr==="Polygon")ti(Er,Qr,ri,!0);else if(Xr==="MultiPolygon")for($i=0;$i<Er.length;$i++){var tn=[];ti(Er[$i],tn,ri,!0),Qr.push(tn)}else if(Xr==="GeometryCollection"){for($i=0;$i<wt.geometry.geometries.length;$i++)lr(Ut,{id:Oi,geometry:wt.geometry.geometries[$i],properties:wt.properties},rr,nr);return}else throw new Error("Input data is not a valid GeoJSON object.");Ut.push(_t(Oi,Xr,Qr,wt.properties))}}function Tr(Ut,wt){wt.push(Br(Ut[0])),wt.push(Vr(Ut[1])),wt.push(0)}function Lr(Ut,wt,rr,nr){for(var Er,Xr,ri=0,Qr=0;Qr<Ut.length;Qr++){var Oi=Br(Ut[Qr][0]),$i=Vr(Ut[Qr][1]);wt.push(Oi),wt.push($i),wt.push(0),Qr>0&&(nr?ri+=(Er*$i-Oi*Xr)/2:ri+=Math.sqrt(Math.pow(Oi-Er,2)+Math.pow($i-Xr,2))),Er=Oi,Xr=$i}var tn=wt.length-3;wt[2]=1,Qt(wt,0,tn,rr),wt[tn+2]=1,wt.size=Math.abs(ri),wt.start=0,wt.end=wt.size}function ti(Ut,wt,rr,nr){for(var Er=0;Er<Ut.length;Er++){var Xr=[];Lr(Ut[Er],Xr,rr,nr),wt.push(Xr)}}function Br(Ut){return Ut/360+.5}function Vr(Ut){var wt=Math.sin(Ut*Math.PI/180),rr=.5-.25*Math.log((1+wt)/(1-wt))/Math.PI;return rr<0?0:rr>1?1:rr}function dt(Ut,wt,rr,nr,Er,Xr,ri,Qr){if(rr/=wt,nr/=wt,Xr>=rr&&ri<nr)return Ut;if(ri<rr||Xr>=nr)return null;for(var Oi=[],$i=0;$i<Ut.length;$i++){var tn=Ut[$i],fn=tn.geometry,yn=tn.type,Sn=Er===0?tn.minX:tn.minY,Ba=Er===0?tn.maxX:tn.maxY;if(Sn>=rr&&Ba<nr){Oi.push(tn);continue}else if(Ba<rr||Sn>=nr)continue;var ua=[];if(yn==="Point"||yn==="MultiPoint")Ge(fn,ua,rr,nr,Er);else if(yn==="LineString")Je(fn,ua,rr,nr,Er,!1,Qr.lineMetrics);else if(yn==="MultiLineString")tt(fn,ua,rr,nr,Er,!1);else if(yn==="Polygon")tt(fn,ua,rr,nr,Er,!0);else if(yn==="MultiPolygon")for(var ma=0;ma<fn.length;ma++){var Wa=[];tt(fn[ma],Wa,rr,nr,Er,!0),Wa.length&&ua.push(Wa)}if(ua.length){if(Qr.lineMetrics&&yn==="LineString"){for(ma=0;ma<ua.length;ma++)Oi.push(_t(tn.id,yn,ua[ma],tn.tags));continue}(yn==="LineString"||yn==="MultiLineString")&&(ua.length===1?(yn="LineString",ua=ua[0]):yn="MultiLineString"),(yn==="Point"||yn==="MultiPoint")&&(yn=ua.length===3?"Point":"MultiPoint"),Oi.push(_t(tn.id,yn,ua,tn.tags))}}return Oi.length?Oi:null}function Ge(Ut,wt,rr,nr,Er){for(var Xr=0;Xr<Ut.length;Xr+=3){var ri=Ut[Xr+Er];ri>=rr&&ri<=nr&&(wt.push(Ut[Xr]),wt.push(Ut[Xr+1]),wt.push(Ut[Xr+2]))}}function Je(Ut,wt,rr,nr,Er,Xr,ri){for(var Qr=je(Ut),Oi=Er===0?Ie:xe,$i=Ut.start,tn,fn,yn=0;yn<Ut.length-3;yn+=3){var Sn=Ut[yn],Ba=Ut[yn+1],ua=Ut[yn+2],ma=Ut[yn+3],Wa=Ut[yn+4],Fa=Er===0?Sn:Ba,Wo=Er===0?ma:Wa,da=!1;ri&&(tn=Math.sqrt(Math.pow(Sn-ma,2)+Math.pow(Ba-Wa,2))),Fa<rr?Wo>rr&&(fn=Oi(Qr,Sn,Ba,ma,Wa,rr),ri&&(Qr.start=$i+tn*fn)):Fa>nr?Wo<nr&&(fn=Oi(Qr,Sn,Ba,ma,Wa,nr),ri&&(Qr.start=$i+tn*fn)):xt(Qr,Sn,Ba,ua),Wo<rr&&Fa>=rr&&(fn=Oi(Qr,Sn,Ba,ma,Wa,rr),da=!0),Wo>nr&&Fa<=nr&&(fn=Oi(Qr,Sn,Ba,ma,Wa,nr),da=!0),!Xr&&da&&(ri&&(Qr.end=$i+tn*fn),wt.push(Qr),Qr=je(Ut)),ri&&($i+=tn)}var Wn=Ut.length-3;Sn=Ut[Wn],Ba=Ut[Wn+1],ua=Ut[Wn+2],Fa=Er===0?Sn:Ba,Fa>=rr&&Fa<=nr&&xt(Qr,Sn,Ba,ua),Wn=Qr.length-3,Xr&&Wn>=3&&(Qr[Wn]!==Qr[0]||Qr[Wn+1]!==Qr[1])&&xt(Qr,Qr[0],Qr[1],Qr[2]),Qr.length&&wt.push(Qr)}function je(Ut){var wt=[];return wt.size=Ut.size,wt.start=Ut.start,wt.end=Ut.end,wt}function tt(Ut,wt,rr,nr,Er,Xr){for(var ri=0;ri<Ut.length;ri++)Je(Ut[ri],wt,rr,nr,Er,Xr,!1)}function xt(Ut,wt,rr,nr){Ut.push(wt),Ut.push(rr),Ut.push(nr)}function Ie(Ut,wt,rr,nr,Er,Xr){var ri=(Xr-wt)/(nr-wt);return Ut.push(Xr),Ut.push(rr+(Er-rr)*ri),Ut.push(1),ri}function xe(Ut,wt,rr,nr,Er,Xr){var ri=(Xr-rr)/(Er-rr);return Ut.push(wt+(nr-wt)*ri),Ut.push(Xr),Ut.push(1),ri}function ke(Ut,wt){var rr=wt.buffer/wt.extent,nr=Ut,Er=dt(Ut,1,-1-rr,rr,0,-1,2,wt),Xr=dt(Ut,1,1-rr,2+rr,0,-1,2,wt);return(Er||Xr)&&(nr=dt(Ut,1,-rr,1+rr,0,-1,2,wt)||[],Er&&(nr=vt(Er,1).concat(nr)),Xr&&(nr=nr.concat(vt(Xr,-1)))),nr}function vt(Ut,wt){for(var rr=[],nr=0;nr<Ut.length;nr++){var Er=Ut[nr],Xr=Er.type,ri;if(Xr==="Point"||Xr==="MultiPoint"||Xr==="LineString")ri=ir(Er.geometry,wt);else if(Xr==="MultiLineString"||Xr==="Polygon"){ri=[];for(var Qr=0;Qr<Er.geometry.length;Qr++)ri.push(ir(Er.geometry[Qr],wt))}else if(Xr==="MultiPolygon")for(ri=[],Qr=0;Qr<Er.geometry.length;Qr++){for(var Oi=[],$i=0;$i<Er.geometry[Qr].length;$i++)Oi.push(ir(Er.geometry[Qr][$i],wt));ri.push(Oi)}rr.push(_t(Er.id,Xr,ri,Er.tags))}return rr}function ir(Ut,wt){var rr=[];rr.size=Ut.size,Ut.start!==void 0&&(rr.start=Ut.start,rr.end=Ut.end);for(var nr=0;nr<Ut.length;nr+=3)rr.push(Ut[nr]+wt,Ut[nr+1],Ut[nr+2]);return rr}function ar(Ut,wt){if(Ut.transformed)return Ut;var rr=1<<Ut.z,nr=Ut.x,Er=Ut.y,Xr,ri,Qr;for(Xr=0;Xr<Ut.features.length;Xr++){var Oi=Ut.features[Xr],$i=Oi.geometry,tn=Oi.type;if(Oi.geometry=[],tn===1)for(ri=0;ri<$i.length;ri+=2)Oi.geometry.push(vr($i[ri],$i[ri+1],wt,rr,nr,Er));else for(ri=0;ri<$i.length;ri++){var fn=[];for(Qr=0;Qr<$i[ri].length;Qr+=2)fn.push(vr($i[ri][Qr],$i[ri][Qr+1],wt,rr,nr,Er));Oi.geometry.push(fn)}}return Ut.transformed=!0,Ut}function vr(Ut,wt,rr,nr,Er,Xr){return[Math.round(rr*(Ut*nr-Er)),Math.round(rr*(wt*nr-Xr))]}function ii(Ut,wt,rr,nr,Er){for(var Xr=wt===Er.maxZoom?0:Er.tolerance/((1<<wt)*Er.extent),ri={features:[],numPoints:0,numSimplified:0,numFeatures:0,source:null,x:rr,y:nr,z:wt,transformed:!1,minX:2,minY:1,maxX:-1,maxY:0},Qr=0;Qr<Ut.length;Qr++){ri.numFeatures++,pi(ri,Ut[Qr],Xr,Er);var Oi=Ut[Qr].minX,$i=Ut[Qr].minY,tn=Ut[Qr].maxX,fn=Ut[Qr].maxY;Oi<ri.minX&&(ri.minX=Oi),$i<ri.minY&&(ri.minY=$i),tn>ri.maxX&&(ri.maxX=tn),fn>ri.maxY&&(ri.maxY=fn)}return ri}function pi(Ut,wt,rr,nr){var Er=wt.geometry,Xr=wt.type,ri=[];if(Xr==="Point"||Xr==="MultiPoint")for(var Qr=0;Qr<Er.length;Qr+=3)ri.push(Er[Qr]),ri.push(Er[Qr+1]),Ut.numPoints++,Ut.numSimplified++;else if(Xr==="LineString")$r(ri,Er,Ut,rr,!1,!1);else if(Xr==="MultiLineString"||Xr==="Polygon")for(Qr=0;Qr<Er.length;Qr++)$r(ri,Er[Qr],Ut,rr,Xr==="Polygon",Qr===0);else if(Xr==="MultiPolygon")for(var Oi=0;Oi<Er.length;Oi++){var $i=Er[Oi];for(Qr=0;Qr<$i.length;Qr++)$r(ri,$i[Qr],Ut,rr,!0,Qr===0)}if(ri.length){var tn=wt.tags||null;if(Xr==="LineString"&&nr.lineMetrics){tn={};for(var fn in wt.tags)tn[fn]=wt.tags[fn];tn.mapbox_clip_start=Er.start/Er.size,tn.mapbox_clip_end=Er.end/Er.size}var yn={geometry:ri,type:Xr==="Polygon"||Xr==="MultiPolygon"?3:Xr==="LineString"||Xr==="MultiLineString"?2:1,tags:tn};wt.id!==null&&(yn.id=wt.id),Ut.features.push(yn)}}function $r(Ut,wt,rr,nr,Er,Xr){var ri=nr*nr;if(nr>0&&wt.size<(Er?ri:nr)){rr.numPoints+=wt.length/3;return}for(var Qr=[],Oi=0;Oi<wt.length;Oi+=3)(nr===0||wt[Oi+2]>ri)&&(rr.numSimplified++,Qr.push(wt[Oi]),Qr.push(wt[Oi+1])),rr.numPoints++;Er&&di(Qr,Xr),Ut.push(Qr)}function di(Ut,wt){for(var rr=0,nr=0,Er=Ut.length,Xr=Er-2;nr<Er;Xr=nr,nr+=2)rr+=(Ut[nr]-Ut[Xr])*(Ut[nr+1]+Ut[Xr+1]);if(rr>0===wt)for(nr=0,Er=Ut.length;nr<Er/2;nr+=2){var ri=Ut[nr],Qr=Ut[nr+1];Ut[nr]=Ut[Er-2-nr],Ut[nr+1]=Ut[Er-1-nr],Ut[Er-2-nr]=ri,Ut[Er-1-nr]=Qr}}function ji(Ut,wt){return new In(Ut,wt)}function In(Ut,wt){wt=this.options=On(Object.create(this.options),wt);var rr=wt.debug;if(rr&&console.time("preprocess data"),wt.maxZoom<0||wt.maxZoom>24)throw new Error("maxZoom should be in the 0-24 range");if(wt.promoteId&&wt.generateId)throw new Error("promoteId and generateId cannot be used together.");var nr=er(Ut,wt);this.tiles={},this.tileCoords=[],rr&&(console.timeEnd("preprocess data"),console.log("index: maxZoom: %d, maxPoints: %d",wt.indexMaxZoom,wt.indexMaxPoints),console.time("generate tiles"),this.stats={},this.total=0),nr=ke(nr,wt),nr.length&&this.splitTile(nr,0,0,0),rr&&(nr.length&&console.log("features: %d, points: %d",this.tiles[0].numFeatures,this.tiles[0].numPoints),console.timeEnd("generate tiles"),console.log("tiles generated:",this.total,JSON.stringify(this.stats)))}In.prototype.options={maxZoom:14,indexMaxZoom:5,indexMaxPoints:1e5,tolerance:3,extent:4096,buffer:64,lineMetrics:!1,promoteId:null,generateId:!1,debug:0},In.prototype.splitTile=function(Ut,wt,rr,nr,Er,Xr,ri){for(var Qr=[Ut,wt,rr,nr],Oi=this.options,$i=Oi.debug;Qr.length;){nr=Qr.pop(),rr=Qr.pop(),wt=Qr.pop(),Ut=Qr.pop();var tn=1<<wt,fn=wi(wt,rr,nr),yn=this.tiles[fn];if(!yn&&($i>1&&console.time("creation"),yn=this.tiles[fn]=ii(Ut,wt,rr,nr,Oi),this.tileCoords.push({z:wt,x:rr,y:nr}),$i)){$i>1&&(console.log("tile z%d-%d-%d (features: %d, points: %d, simplified: %d)",wt,rr,nr,yn.numFeatures,yn.numPoints,yn.numSimplified),console.timeEnd("creation"));var Sn="z"+wt;this.stats[Sn]=(this.stats[Sn]||0)+1,this.total++}if(yn.source=Ut,Er){if(wt===Oi.maxZoom||wt===Er)continue;var Ba=1<<Er-wt;if(rr!==Math.floor(Xr/Ba)||nr!==Math.floor(ri/Ba))continue}else if(wt===Oi.indexMaxZoom||yn.numPoints<=Oi.indexMaxPoints)continue;if(yn.source=null,Ut.length!==0){$i>1&&console.time("clipping");var ua=.5*Oi.buffer/Oi.extent,ma=.5-ua,Wa=.5+ua,Fa=1+ua,Wo,da,Wn,Ha,vo,jn;Wo=da=Wn=Ha=null,vo=dt(Ut,tn,rr-ua,rr+Wa,0,yn.minX,yn.maxX,Oi),jn=dt(Ut,tn,rr+ma,rr+Fa,0,yn.minX,yn.maxX,Oi),Ut=null,vo&&(Wo=dt(vo,tn,nr-ua,nr+Wa,1,yn.minY,yn.maxY,Oi),da=dt(vo,tn,nr+ma,nr+Fa,1,yn.minY,yn.maxY,Oi),vo=null),jn&&(Wn=dt(jn,tn,nr-ua,nr+Wa,1,yn.minY,yn.maxY,Oi),Ha=dt(jn,tn,nr+ma,nr+Fa,1,yn.minY,yn.maxY,Oi),jn=null),$i>1&&console.timeEnd("clipping"),Qr.push(Wo||[],wt+1,rr*2,nr*2),Qr.push(da||[],wt+1,rr*2,nr*2+1),Qr.push(Wn||[],wt+1,rr*2+1,nr*2),Qr.push(Ha||[],wt+1,rr*2+1,nr*2+1)}}},In.prototype.getTile=function(Ut,wt,rr){var nr=this.options,Er=nr.extent,Xr=nr.debug;if(Ut<0||Ut>24)return null;var ri=1<<Ut;wt=(wt%ri+ri)%ri;var Qr=wi(Ut,wt,rr);if(this.tiles[Qr])return ar(this.tiles[Qr],Er);Xr>1&&console.log("drilling down to z%d-%d-%d",Ut,wt,rr);for(var Oi=Ut,$i=wt,tn=rr,fn;!fn&&Oi>0;)Oi--,$i=Math.floor($i/2),tn=Math.floor(tn/2),fn=this.tiles[wi(Oi,$i,tn)];return!fn||!fn.source?null:(Xr>1&&console.log("found parent tile z%d-%d-%d",Oi,$i,tn),Xr>1&&console.time("drilling down"),this.splitTile(fn.source,Oi,$i,tn,Ut,wt,rr),Xr>1&&console.timeEnd("drilling down"),this.tiles[Qr]?ar(this.tiles[Qr],Er):null)};function wi(Ut,wt,rr){return((1<<Ut)*rr+wt)*32+Ut}function On(Ut,wt){for(var rr in wt)Ut[rr]=wt[rr];return Ut}function qn(Ut,wt){var rr=Ut.tileID.canonical;if(!this._geoJSONIndex)return wt(null,null);var nr=this._geoJSONIndex.getTile(rr.z,rr.x,rr.y);if(!nr)return wt(null,null);var Er=new C(nr.features),Xr=z(Er);(Xr.byteOffset!==0||Xr.byteLength!==Xr.buffer.byteLength)&&(Xr=new Uint8Array(Xr)),wt(null,{vectorTile:Er,rawData:Xr.buffer})}var Fn=function(Ut){function wt(rr,nr,Er,Xr){Ut.call(this,rr,nr,Er,qn),Xr&&(this.loadGeoJSON=Xr)}return Ut&&(wt.__proto__=Ut),wt.prototype=Object.create(Ut&&Ut.prototype),wt.prototype.constructor=wt,wt.prototype.loadData=function(nr,Er){this._pendingCallback&&this._pendingCallback(null,{abandoned:!0}),this._pendingCallback=Er,this._pendingLoadDataParams=nr,this._state&&this._state!=="Idle"?this._state="NeedsLoadData":(this._state="Coalescing",this._loadData())},wt.prototype._loadData=function(){var nr=this;if(!(!this._pendingCallback||!this._pendingLoadDataParams)){var Er=this._pendingCallback,Xr=this._pendingLoadDataParams;delete this._pendingCallback,delete this._pendingLoadDataParams;var ri=Xr&&Xr.request&&Xr.request.collectResourceTiming?new i.RequestPerformance(Xr.request):!1;this.loadGeoJSON(Xr,function(Qr,Oi){if(Qr||!Oi)return Er(Qr);if(typeof Oi!="object")return Er(new Error("Input data given to '"+Xr.source+"' is not a valid GeoJSON object."));p(Oi,!0);try{if(Xr.filter){var $i=i.createExpression(Xr.filter,{type:"boolean","property-type":"data-driven",overridable:!1,transition:!1});if($i.result==="error")throw new Error($i.value.map(function(Sn){return Sn.key+": "+Sn.message}).join(", "));var tn=Oi.features.filter(function(Sn){return $i.value.evaluate({zoom:0},Sn)});Oi={type:"FeatureCollection",features:tn}}nr._geoJSONIndex=Xr.cluster?new pt(ra(Xr)).load(Oi.features):ji(Oi,Xr.geojsonVtOptions)}catch(Sn){return Er(Sn)}nr.loaded={};var fn={};if(ri){var yn=ri.finish();yn&&(fn.resourceTiming={},fn.resourceTiming[Xr.source]=JSON.parse(JSON.stringify(yn)))}Er(null,fn)})}},wt.prototype.coalesce=function(){this._state==="Coalescing"?this._state="Idle":this._state==="NeedsLoadData"&&(this._state="Coalescing",this._loadData())},wt.prototype.reloadTile=function(nr,Er){var Xr=this.loaded,ri=nr.uid;return Xr&&Xr[ri]?Ut.prototype.reloadTile.call(this,nr,Er):this.loadTile(nr,Er)},wt.prototype.loadGeoJSON=function(nr,Er){if(nr.request)i.getJSON(nr.request,Er);else if(typeof nr.data=="string")try{return Er(null,JSON.parse(nr.data))}catch(Xr){return Er(new Error("Input data given to '"+nr.source+"' is not a valid GeoJSON object."))}else return Er(new Error("Input data given to '"+nr.source+"' is not a valid GeoJSON object."))},wt.prototype.removeSource=function(nr,Er){this._pendingCallback&&this._pendingCallback(null,{abandoned:!0}),Er()},wt.prototype.getClusterExpansionZoom=function(nr,Er){try{Er(null,this._geoJSONIndex.getClusterExpansionZoom(nr.clusterId))}catch(Xr){Er(Xr)}},wt.prototype.getClusterChildren=function(nr,Er){try{Er(null,this._geoJSONIndex.getChildren(nr.clusterId))}catch(Xr){Er(Xr)}},wt.prototype.getClusterLeaves=function(nr,Er){try{Er(null,this._geoJSONIndex.getLeaves(nr.clusterId,nr.limit,nr.offset))}catch(Xr){Er(Xr)}},wt}(v);function ra(Ut){var wt=Ut.superclusterOptions,rr=Ut.clusterProperties;if(!rr||!wt)return wt;for(var nr={},Er={},Xr={accumulated:null,zoom:0},ri={properties:null},Qr=Object.keys(rr),Oi=0,$i=Qr;Oi<$i.length;Oi+=1){var tn=$i[Oi],fn=rr[tn],yn=fn[0],Sn=fn[1],Ba=i.createExpression(Sn),ua=i.createExpression(typeof yn=="string"?[yn,["accumulated"],["get",tn]]:yn);nr[tn]=Ba.value,Er[tn]=ua.value}return wt.map=function(ma){ri.properties=ma;for(var Wa={},Fa=0,Wo=Qr;Fa<Wo.length;Fa+=1){var da=Wo[Fa];Wa[da]=nr[da].evaluate(Xr,ri)}return Wa},wt.reduce=function(ma,Wa){ri.properties=Wa;for(var Fa=0,Wo=Qr;Fa<Wo.length;Fa+=1){var da=Wo[Fa];Xr.accumulated=ma[da],ma[da]=Er[da].evaluate(Xr,ri)}},wt}var la=function(wt){var rr=this;this.self=wt,this.actor=new i.Actor(wt,this),this.layerIndexes={},this.availableImages={},this.workerSourceTypes={vector:v,geojson:Fn},this.workerSources={},this.demWorkerSources={},this.self.registerWorkerSource=function(nr,Er){if(rr.workerSourceTypes[nr])throw new Error('Worker source with name "'+nr+'" already registered.');rr.workerSourceTypes[nr]=Er},this.self.registerRTLTextPlugin=function(nr){if(i.plugin.isParsed())throw new Error("RTL text plugin already registered.");i.plugin.applyArabicShaping=nr.applyArabicShaping,i.plugin.processBidirectionalText=nr.processBidirectionalText,i.plugin.processStyledBidirectionalText=nr.processStyledBidirectionalText}};return la.prototype.setReferrer=function(wt,rr){this.referrer=rr},la.prototype.setImages=function(wt,rr,nr){this.availableImages[wt]=rr;for(var Er in this.workerSources[wt]){var Xr=this.workerSources[wt][Er];for(var ri in Xr)Xr[ri].availableImages=rr}nr()},la.prototype.setLayers=function(wt,rr,nr){this.getLayerIndex(wt).replace(rr),nr()},la.prototype.updateLayers=function(wt,rr,nr){this.getLayerIndex(wt).update(rr.layers,rr.removedIds),nr()},la.prototype.loadTile=function(wt,rr,nr){this.getWorkerSource(wt,rr.type,rr.source).loadTile(rr,nr)},la.prototype.loadDEMTile=function(wt,rr,nr){this.getDEMWorkerSource(wt,rr.source).loadTile(rr,nr)},la.prototype.reloadTile=function(wt,rr,nr){this.getWorkerSource(wt,rr.type,rr.source).reloadTile(rr,nr)},la.prototype.abortTile=function(wt,rr,nr){this.getWorkerSource(wt,rr.type,rr.source).abortTile(rr,nr)},la.prototype.removeTile=function(wt,rr,nr){this.getWorkerSource(wt,rr.type,rr.source).removeTile(rr,nr)},la.prototype.removeDEMTile=function(wt,rr){this.getDEMWorkerSource(wt,rr.source).removeTile(rr)},la.prototype.removeSource=function(wt,rr,nr){if(!(!this.workerSources[wt]||!this.workerSources[wt][rr.type]||!this.workerSources[wt][rr.type][rr.source])){var Er=this.workerSources[wt][rr.type][rr.source];delete this.workerSources[wt][rr.type][rr.source],Er.removeSource!==void 0?Er.removeSource(rr,nr):nr()}},la.prototype.loadWorkerSource=function(wt,rr,nr){try{this.self.importScripts(rr.url),nr()}catch(Er){nr(Er.toString())}},la.prototype.syncRTLPluginState=function(wt,rr,nr){try{i.plugin.setState(rr);var Er=i.plugin.getPluginURL();if(i.plugin.isLoaded()&&!i.plugin.isParsed()&&Er!=null){this.self.importScripts(Er);var Xr=i.plugin.isParsed(),ri=Xr?void 0:new Error("RTL Text Plugin failed to import scripts from "+Er);nr(ri,Xr)}}catch(Qr){nr(Qr.toString())}},la.prototype.getAvailableImages=function(wt){var rr=this.availableImages[wt];return rr||(rr=[]),rr},la.prototype.getLayerIndex=function(wt){var rr=this.layerIndexes[wt];return rr||(rr=this.layerIndexes[wt]=new l),rr},la.prototype.getWorkerSource=function(wt,rr,nr){var Er=this;if(this.workerSources[wt]||(this.workerSources[wt]={}),this.workerSources[wt][rr]||(this.workerSources[wt][rr]={}),!this.workerSources[wt][rr][nr]){var Xr={send:function(ri,Qr,Oi){Er.actor.send(ri,Qr,Oi,wt)}};this.workerSources[wt][rr][nr]=new this.workerSourceTypes[rr](Xr,this.getLayerIndex(wt),this.getAvailableImages(wt))}return this.workerSources[wt][rr][nr]},la.prototype.getDEMWorkerSource=function(wt,rr){return this.demWorkerSources[wt]||(this.demWorkerSources[wt]={}),this.demWorkerSources[wt][rr]||(this.demWorkerSources[wt][rr]=new b),this.demWorkerSources[wt][rr]},la.prototype.enforceCacheSizeLimit=function(wt,rr){i.enforceCacheSizeLimit(rr)},typeof WorkerGlobalScope!="undefined"&&typeof self!="undefined"&&self instanceof WorkerGlobalScope&&(self.worker=new la(self)),la}),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(Ct){return!J(Ct)}function J(Ct){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(!Xt())return"insufficient ArrayBuffer support";if(!hr())return"insufficient Canvas/getImageData support";if(!Ve(Ct&&Ct.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 Ct=new Blob([""],{type:"text/javascript"}),Ot=URL.createObjectURL(Ct),Rt,Bt;try{Bt=new Worker(Ot),Rt=!0}catch(Dt){Rt=!1}return Bt&&Bt.terminate(),URL.revokeObjectURL(Ot),Rt}function ft(){return"Uint8ClampedArray"in window}function Xt(){return ArrayBuffer.isView}function hr(){var Ct=document.createElement("canvas");Ct.width=Ct.height=1;var Ot=Ct.getContext("2d");if(!Ot)return!1;var Rt=Ot.getImageData(0,0,1,1);return Rt&&Rt.width===Ct.width}var qt={};function Ve(Ct){return qt[Ct]===void 0&&(qt[Ct]=at(Ct)),qt[Ct]}D.webGLContextAttributes={antialias:!1,alpha:!0,stencil:!0,depth:!0};function Qe(Ct){var Ot=document.createElement("canvas"),Rt=Object.create(D.webGLContextAttributes);return Rt.failIfMajorPerformanceCaveat=Ct,Ot.probablySupportsContext?Ot.probablySupportsContext("webgl",Rt)||Ot.probablySupportsContext("experimental-webgl",Rt):Ot.supportsContext?Ot.supportsContext("webgl",Rt)||Ot.supportsContext("experimental-webgl",Rt):Ot.getContext("webgl",Rt)||Ot.getContext("experimental-webgl",Rt)}function at(Ct){var Ot=Qe(Ct);if(!Ot)return!1;var Rt=Ot.createShader(Ot.VERTEX_SHADER);return!Rt||Ot.isContextLost()?!1:(Ot.shaderSource(Rt,"void main() {}"),Ot.compileShader(Rt),Ot.getShaderParameter(Rt,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 _(Y,D,J){var q,K,de,ne=i.browser.devicePixelRatio>1?"@2x":"",we=i.getJSON(D.transformRequest(D.normalizeSpriteURL(Y,ne,".json"),i.ResourceType.SpriteJSON),function(Xt,hr){we=null,de||(de=Xt,q=hr,ft())}),Ue=i.getImage(D.transformRequest(D.normalizeSpriteURL(Y,ne,".png"),i.ResourceType.SpriteImage),function(Xt,hr){Ue=null,de||(de=Xt,K=hr,ft())});function ft(){if(de)J(de);else if(q&&K){var Xt=i.browser.getImageData(K),hr={};for(var qt in q){var Ve=q[qt],Qe=Ve.width,at=Ve.height,Ct=Ve.x,Ot=Ve.y,Rt=Ve.sdf,Bt=Ve.pixelRatio,Dt=Ve.stretchX,yt=Ve.stretchY,Pt=Ve.content,ht=new i.RGBAImage({width:Qe,height:at});i.RGBAImage.copy(Xt,ht,{x:Ct,y:Ot},{x:0,y:0},{width:Qe,height:at}),hr[qt]={data:ht,pixelRatio:Bt,sdf:Rt,stretchX:Dt,stretchY:yt,content:Pt}}J(null,hr)}}return{cancel:function(){we&&(we.cancel(),we=null),Ue&&(Ue.cancel(),Ue=null)}}}function b(Y){var D=Y.userImage;if(D&&D.render){var J=D.render();if(J)return Y.data.replace(new Uint8Array(D.data.buffer)),!0}return!1}var p=1,k=function(Y){function D(){Y.call(this),this.images={},this.updatedImages={},this.callbackDispatchedThisFrame={},this.loaded=!1,this.requestors=[],this.patterns={},this.atlasImage=new i.RGBAImage({width:1,height:1}),this.dirty=!0}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.isLoaded=function(){return this.loaded},D.prototype.setLoaded=function(q){if(this.loaded!==q&&(this.loaded=q,q)){for(var K=0,de=this.requestors;K<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 Xt=this.patterns[ft],hr=Xt.bin,qt=hr.x+p,Ve=hr.y+p,Qe=this.images[ft].data,at=Qe.width,Ct=Qe.height;i.RGBAImage.copy(Qe,Ue,{x:0,y:0},{x:qt,y:Ve},{width:at,height:Ct}),i.RGBAImage.copy(Qe,Ue,{x:0,y:Ct-1},{x:qt,y:Ve-1},{width:at,height:1}),i.RGBAImage.copy(Qe,Ue,{x:0,y:0},{x:qt,y:Ve+Ct},{width:at,height:1}),i.RGBAImage.copy(Qe,Ue,{x:at-1,y:0},{x:qt-1,y:Ve},{width:1,height:Ct}),i.RGBAImage.copy(Qe,Ue,{x:0,y:0},{x:qt+at,y:Ve},{width:1,height:Ct})}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 Xt={},hr=0,qt=i.parseGlyphPBF(ft);hr<qt.length;hr+=1){var Ve=qt[hr];Xt[Ve.id]=Ve}K(null,Xt)}})}var S=C,L=C,x=1e20;function C(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))}C.prototype.draw=function(Y){this.ctx.clearRect(0,0,this.size,this.size),this.ctx.fillText(Y,this.buffer,this.middle);for(var D=this.ctx.getImageData(0,0,this.size,this.size),J=new Uint8ClampedArray(this.size*this.size),q=0;q<this.size*this.size;q++){var K=D.data[q*4+3]/255;this.gridOuter[q]=K===1?0:K===0?x:Math.pow(Math.max(0,.5-K),2),this.gridInner[q]=K===1?x: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]=-x,q[1]=+x;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]=+x}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]]}}S.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,Xt){var hr=ft.stack,qt=ft.id,Ve=q.entries[hr];Ve||(Ve=q.entries[hr]={glyphs:{},requests:{},ranges:{}});var Qe=Ve.glyphs[qt];if(Qe!==void 0){Xt(null,{stack:hr,id:qt,glyph:Qe});return}if(Qe=q._tinySDF(Ve,hr,qt),Qe){Ve.glyphs[qt]=Qe,Xt(null,{stack:hr,id:qt,glyph:Qe});return}var at=Math.floor(qt/256);if(at*256>65535){Xt(new Error("glyphs > 65535 not supported"));return}if(Ve.ranges[at]){Xt(null,{stack:hr,id:qt,glyph:Qe});return}var Ct=Ve.requests[at];Ct||(Ct=Ve.requests[at]=[],P.loadGlyphRange(hr,at,q.url,q.requestManager,function(Ot,Rt){if(Rt){for(var Bt in Rt)q._doesCharSupportLocalGlyph(+Bt)||(Ve.glyphs[+Bt]=Rt[+Bt]);Ve.ranges[at]=!0}for(var Dt=0,yt=Ct;Dt<yt.length;Dt+=1){var Pt=yt[Dt];Pt(Ot,Rt)}delete Ve.requests[at]})),Ct.push(function(Ot,Rt){Ot?Xt(Ot):Rt&&Xt(null,{stack:hr,id:qt,glyph:Rt[qt]||null})})},function(ft,Xt){if(ft)J(ft);else if(Xt){for(var hr={},qt=0,Ve=Xt;qt<Ve.length;qt+=1){var Qe=Ve[qt],at=Qe.stack,Ct=Qe.id,Ot=Qe.glyph;(hr[at]||(hr[at]={}))[Ct]=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=S;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],Xt=1;Xt<D.length;Xt++){Ue=!Ue;var hr=D[Xt];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],Xt=0;Xt<this.width;Xt++){Xt/ft.right>1&&(ft=D[++Ue]);var hr=Math.abs(Xt-ft.left),qt=Math.abs(Xt-ft.right),Ve=Math.min(hr,qt),Qe=void 0,at=de/q*(K+1);if(ft.isDash){var Ct=K-Math.abs(at);Qe=Math.sqrt(Ve*Ve+Ct*Ct)}else Qe=K-Math.sqrt(Ve*Ve+at*at);this.data[we+Xt]=Math.max(0,Math.min(255,Qe+128))}},G.prototype.addRegularDash=function(D){for(var J=D.length-1;J>=0;--J){var q=D[J],K=D[J+1];q.zeroLength?D.splice(J,1):K&&K.isDash===q.isDash&&(K.left=q.left,D.splice(J,1))}var de=D[0],ne=D[D.length-1];de.isDash===ne.isDash&&(de.left=ne.left-this.width,ne.right=de.right+this.width);for(var we=this.width*this.nextRow,Ue=0,ft=D[Ue],Xt=0;Xt<this.width;Xt++){Xt/ft.right>1&&(ft=D[++Ue]);var hr=Math.abs(Xt-ft.left),qt=Math.abs(Xt-ft.right),Ve=Math.min(hr,qt),Qe=ft.isDash?Ve:-Ve;this.data[we+Xt]=Math.max(0,Math.min(255,Qe+128))}},G.prototype.addDash=function(D,J){var q=J?7:0,K=2*q+1;if(this.nextRow+K>this.height)return i.warnOnce("LineAtlas out of space"),null;for(var de=0,ne=0;ne<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 j(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 H=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=j(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),te=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=j(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,Xt=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,Xt.RGBA,{useMipmap:!0}),q.texture.bind(Xt.LINEAR,Xt.CLAMP_TO_EDGE,Xt.LINEAR_MIPMAP_NEAREST),ft.extTextureFilterAnisotropic&&Xt.texParameterf(Xt.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 Xt=i.window.ImageBitmap&&ft instanceof i.window.ImageBitmap&&i.offscreenCanvasSupported(),hr=Xt?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,Xt={};return Xt[new i.OverscaledTileID(q.overscaledZ,we,K.z,ne,K.y).key]={backfilled:!1},Xt[new i.OverscaledTileID(q.overscaledZ,ft,K.z,Ue,K.y).key]={backfilled:!1},K.y>0&&(Xt[new i.OverscaledTileID(q.overscaledZ,we,K.z,ne,K.y-1).key]={backfilled:!1},Xt[new i.OverscaledTileID(q.overscaledZ,q.wrap,K.z,K.x,K.y-1).key]={backfilled:!1},Xt[new i.OverscaledTileID(q.overscaledZ,ft,K.z,Ue,K.y-1).key]={backfilled:!1}),K.y+1<de&&(Xt[new i.OverscaledTileID(q.overscaledZ,we,K.z,ne,K.y+1).key]={backfilled:!1},Xt[new i.OverscaledTileID(q.overscaledZ,q.wrap,K.z,K.x,K.y+1).key]={backfilled:!1},Xt[new i.OverscaledTileID(q.overscaledZ,ft,K.z,Ue,K.y+1).key]={backfilled:!1}),Xt},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}(te),_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),Ee=i.createLayout([{name:"a_pos",type:"Int16",components:2},{name:"a_texture_pos",type:"Int16",components:2}]),Ce=function(Y){function D(J,q,K,de){Y.call(this),this.id=J,this.dispatcher=K,this.coordinates=q.coordinates,this.type="image",this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.tiles={},this._loaded=!1,this.setEventedParent(de),this.options=q}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.load=function(q,K){var de=this;this._loaded=!1,this.fire(new i.Event("dataloading",{dataType:"source"})),this.url=this.options.url,i.getImage(this.map._requestManager.transformRequest(this.url,i.ResourceType.Image),function(ne,we){de._loaded=!0,ne?de.fire(new i.ErrorEvent(ne)):we&&(de.image=we,q&&(de.coordinates=q),K&&K(),de._finishLoading())})},D.prototype.loaded=function(){return this._loaded},D.prototype.updateImage=function(q){var K=this;return!this.image||!q.url?this:(this.options.url=q.url,this.load(q.coordinates,function(){K.texture=null}),this)},D.prototype._finishLoading=function(){this.map&&(this.setCoordinates(this.coordinates),this.fire(new i.Event("data",{dataType:"source",sourceDataType:"metadata"})))},D.prototype.onAdd=function(q){this.map=q,this.load()},D.prototype.setCoordinates=function(q){var K=this;this.coordinates=q;var de=q.map(i.MercatorCoordinate.fromLngLat);this.tileID=me(de),this.minzoom=this.maxzoom=this.tileID.z;var ne=de.map(function(we){return K.tileID.getTilePoint(we)._round()});return this._boundsArray=new i.StructArrayLayout4i8,this._boundsArray.emplaceBack(ne[0].x,ne[0].y,0,0),this._boundsArray.emplaceBack(ne[1].x,ne[1].y,i.EXTENT,0),this._boundsArray.emplaceBack(ne[3].x,ne[3].y,0,i.EXTENT),this._boundsArray.emplaceBack(ne[2].x,ne[2].y,i.EXTENT,i.EXTENT),this.boundsBuffer&&(this.boundsBuffer.destroy(),delete this.boundsBuffer),this.fire(new i.Event("data",{dataType:"source",sourceDataType:"content"})),this},D.prototype.prepare=function(){if(!(Object.keys(this.tiles).length===0||!this.image)){var q=this.map.painter.context,K=q.gl;this.boundsBuffer||(this.boundsBuffer=q.createVertexBuffer(this._boundsArray,Ee.members)),this.boundsSegments||(this.boundsSegments=i.SegmentVector.simpleSegment(0,0,4,2)),this.texture||(this.texture=new i.Texture(q,this.image,K.RGBA),this.texture.bind(K.LINEAR,K.CLAMP_TO_EDGE));for(var de in this.tiles){var ne=this.tiles[de];ne.state!=="loaded"&&(ne.state="loaded",ne.texture=this.texture)}}},D.prototype.loadTile=function(q,K){this.tileID&&this.tileID.equals(q.tileID.canonical)?(this.tiles[String(q.tileID.wrap)]=q,q.buckets={},K(null)):(q.state="errored",K(null))},D.prototype.serialize=function(){return{type:"image",url:this.options.url,coordinates:this.coordinates}},D.prototype.hasTransition=function(){return!1},D}(i.Evented);function me(Y){for(var D=1/0,J=1/0,q=-1/0,K=-1/0,de=0,ne=Y;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,Xt=Math.max(Ue,ft),hr=Math.max(0,Math.floor(-Math.log(Xt)/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,Ee.members)),this.boundsSegments||(this.boundsSegments=i.SegmentVector.simpleSegment(0,0,4,2)),this.texture?this.video.paused||(this.texture.bind(K.LINEAR,K.CLAMP_TO_EDGE),K.texSubImage2D(K.TEXTURE_2D,0,0,0,K.RGBA,K.UNSIGNED_BYTE,this.video)):(this.texture=new i.Texture(q,this.video,K.RGBA),this.texture.bind(K.LINEAR,K.CLAMP_TO_EDGE));for(var de in this.tiles){var ne=this.tiles[de];ne.state!=="loaded"&&(ne.state="loaded",ne.texture=this.texture)}}},D.prototype.serialize=function(){return{type:"video",urls:this.urls,coordinates:this.coordinates}},D.prototype.hasTransition=function(){return this.video&&!this.video.paused},D}(Ce),Se=function(Y){function D(J,q,K,de){Y.call(this,J,q,K,de),q.coordinates?(!Array.isArray(q.coordinates)||q.coordinates.length!==4||q.coordinates.some(function(ne){return!Array.isArray(ne)||ne.length!==2||ne.some(function(we){return typeof we!="number"})}))&&this.fire(new i.ErrorEvent(new i.ValidationError("sources."+J,null,'"coordinates" property must be an array of 4 longitude/latitude array pairs'))):this.fire(new i.ErrorEvent(new i.ValidationError("sources."+J,null,'missing required property "coordinates"'))),q.animate&&typeof q.animate!="boolean"&&this.fire(new i.ErrorEvent(new i.ValidationError("sources."+J,null,'optional "animate" property must be a boolean value'))),q.canvas?typeof q.canvas!="string"&&!(q.canvas instanceof i.window.HTMLCanvasElement)&&this.fire(new i.ErrorEvent(new i.ValidationError("sources."+J,null,'"canvas" must be either a string representing the ID of the canvas element from which to read, or an HTMLCanvasElement instance'))):this.fire(new i.ErrorEvent(new i.ValidationError("sources."+J,null,'missing required property "canvas"'))),this.options=q,this.animate=q.animate!==void 0?q.animate:!0}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.load=function(){if(this._loaded=!0,this.canvas||(this.canvas=this.options.canvas instanceof i.window.HTMLCanvasElement?this.options.canvas:i.window.document.getElementById(this.options.canvas)),this.width=this.canvas.width,this.height=this.canvas.height,this._hasInvalidDimensions()){this.fire(new i.ErrorEvent(new Error("Canvas dimensions cannot be less than or equal to zero.")));return}this.play=function(){this._playing=!0,this.map.triggerRepaint()},this.pause=function(){this._playing&&(this.prepare(),this._playing=!1)},this._finishLoading()},D.prototype.getCanvas=function(){return this.canvas},D.prototype.onAdd=function(q){this.map=q,this.load(),this.canvas&&this.animate&&this.play()},D.prototype.onRemove=function(){this.pause()},D.prototype.prepare=function(){var q=!1;if(this.canvas.width!==this.width&&(this.width=this.canvas.width,q=!0),this.canvas.height!==this.height&&(this.height=this.canvas.height,q=!0),!this._hasInvalidDimensions()&&Object.keys(this.tiles).length!==0){var K=this.map.painter.context,de=K.gl;this.boundsBuffer||(this.boundsBuffer=K.createVertexBuffer(this._boundsArray,Ee.members)),this.boundsSegments||(this.boundsSegments=i.SegmentVector.simpleSegment(0,0,4,2)),this.texture?(q||this._playing)&&this.texture.update(this.canvas,{premultiply:!0}):this.texture=new i.Texture(K,this.canvas,de.RGBA,{premultiply:!0});for(var ne in this.tiles){var we=this.tiles[ne];we.state!=="loaded"&&(we.state="loaded",we.texture=this.texture)}}},D.prototype.serialize=function(){return{type:"canvas",coordinates:this.coordinates}},D.prototype.hasTransition=function(){return this._playing},D.prototype._hasInvalidDimensions=function(){for(var q=0,K=[this.canvas.width,this.canvas.height];q<K.length;q+=1){var de=K[q];if(isNaN(de)||de<=0)return!0}return!1},D}(Ce),Le={vector:H,raster:te,"raster-dem":oe,geojson:_e,video:ie,image:Ce,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},Fe=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 Re(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=Re(K&&K.layers,D,Y.id),we=de.maxPitchScaleFactor(),Ue=Y.tilesIn(q,we,ne);Ue.sort(pt);for(var ft=[],Xt=0,hr=Ue;Xt<hr.length;Xt+=1){var qt=hr[Xt];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=Zt(ft);for(var Qe in Ve)Ve[Qe].forEach(function(at){var Ct=at.feature,Ot=Y.getFeatureState(Ct.layer["source-layer"],Ct.id);Ct.source=Ct.layer.source,Ct.layer["source-layer"]&&(Ct.sourceLayer=Ct.layer["source-layer"]),Ct.state=Ot});return Ve}function Ze(Y,D,J,q,K,de,ne){for(var we={},Ue=de.queryRenderedSymbols(q),ft=[],Xt=0,hr=Object.keys(Ue).map(Number);Xt<hr.length;Xt+=1){var qt=hr[Xt];ft.push(ne[qt])}ft.sort(pt);for(var Ve=function(){var Rt=at[Qe],Bt=Rt.featureIndex.lookupSymbolFeatures(Ue[Rt.bucketInstanceId],D,Rt.bucketIndex,Rt.sourceLayerIndex,K.filter,K.layers,K.availableImages,Y);for(var Dt in Bt){var yt=we[Dt]=we[Dt]||[],Pt=Bt[Dt];Pt.sort(function(Ur,Di){var fi=Rt.featureSortOrder;if(fi){var Ti=fi.indexOf(Ur.featureIndex),gn=fi.indexOf(Di.featureIndex);return gn-Ti}else return Di.featureIndex-Ur.featureIndex});for(var ht=0,ur=Pt;ht<ur.length;ht+=1){var br=ur[ht];yt.push(br)}}},Qe=0,at=ft;Qe<at.length;Qe+=1)Ve();var Ct=function(Rt){we[Rt].forEach(function(Bt){var Dt=Bt.feature,yt=Y[Rt],Pt=J[yt.source],ht=Pt.getFeatureState(Dt.layer["source-layer"],Dt.id);Dt.source=Dt.layer.source,Dt.layer["source-layer"]&&(Dt.sourceLayer=Dt.layer["source-layer"]),Dt.state=ht})};for(var Ot in we)Ct(Ot);return we}function ut(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 Zt(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 Xt=ne[ft],hr=Ue[ft]=Ue[ft]||{},qt=D[ft]=D[ft]||[],Ve=0,Qe=Xt;Ve<Qe.length;Ve+=1){var at=Qe[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 Jt=function(D){this.gl=D.gl,this.default=this.getDefault(),this.current=this.default,this.dirty=!1};Jt.prototype.get=function(){return this.current},Jt.prototype.set=function(D){},Jt.prototype.getDefault=function(){return this.default},Jt.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}(Jt),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}(Jt),cr=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}(Jt),$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(){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}(Jt),St=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}(Jt),Qt=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}(Jt),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{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}(Jt),_t=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}(Jt),It=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}(Jt),mt=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}(Jt),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!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}(Jt),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}(Jt),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}(Jt),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(){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}(Jt),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.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}(Jt),Br=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}(Jt),Vr=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}(Jt),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}(Jt),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}(Jt),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}(Jt),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}(Jt),tt=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}(Jt),xt=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}(Jt),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}(Jt),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}(Jt),ke=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}(Jt),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}(Jt),ir=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}(Jt),ar=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}(Jt),vr=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}(Jt),ii=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}(Jt),pi=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}(Jt),$r=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}(pi),di=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}(pi),ji=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 $r(D,ne),K&&(this.depthAttachment=new di(D,ne))};ji.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 In=519,wi=function(D,J,q){this.func=D,this.mask=J,this.range=q};wi.ReadOnly=!1,wi.ReadWrite=!0,wi.disabled=new wi(In,wi.ReadOnly,[0,1]);var On=519,qn=7680,Fn=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};Fn.disabled=new Fn({func:On,mask:0},0,0,qn,qn,qn);var ra=0,la=1,Ut=771,wt=function(D,J,q){this.blendFunction=D,this.blendColor=J,this.mask=q};wt.Replace=[la,ra],wt.disabled=new wt(wt.Replace,i.Color.transparent,[!1,!1,!1,!1]),wt.unblended=new wt(wt.Replace,i.Color.transparent,[!0,!0,!0,!0]),wt.alphaBlended=new wt([la,Ut],i.Color.transparent,[!0,!0,!0,!0]);var rr=1029,nr=2305,Er=function(D,J,q){this.enable=D,this.mode=J,this.frontFace=q};Er.disabled=new Er(!1,rr,nr),Er.backCCW=new Er(!0,rr,nr);var Xr=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 cr(this),this.colorMask=new $e(this),this.depthMask=new St(this),this.stencilMask=new Qt(this),this.stencilFunc=new Vt(this),this.stencilOp=new _t(this),this.stencilTest=new It(this),this.depthRange=new mt(this),this.depthTest=new er(this),this.depthFunc=new lr(this),this.blend=new Tr(this),this.blendFunc=new Lr(this),this.blendColor=new ti(this),this.blendEquation=new Br(this),this.cullFace=new Vr(this),this.cullFaceSide=new dt(this),this.frontFace=new Ge(this),this.program=new Je(this),this.activeTexture=new je(this),this.viewport=new tt(this),this.bindFramebuffer=new xt(this),this.bindRenderbuffer=new Ie(this),this.bindTexture=new xe(this),this.bindVertexBuffer=new ke(this),this.bindElementBuffer=new vt(this),this.bindVertexArrayOES=this.extVertexArrayObject&&new ir(this),this.pixelStoreUnpack=new ar(this),this.pixelStoreUnpackPremultiplyAlpha=new vr(this),this.pixelStoreUnpackFlipY=new ii(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)};Xr.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()},Xr.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},Xr.prototype.createIndexBuffer=function(D,J){return new lt(this,D,J)},Xr.prototype.createVertexBuffer=function(D,J,q){return new Nt(this,D,J,q)},Xr.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},Xr.prototype.createFramebuffer=function(D,J,q){return new ji(this,D,J,q)},Xr.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)},Xr.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))},Xr.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))},Xr.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}))},Xr.prototype.setColorMode=function(D){i.deepEqual(D.blendFunction,wt.Replace)?this.blend.set(!1):(this.blend.set(!0),this.blendFunc.set(D.blendFunction),this.blendColor.set(D.blendColor)),this.colorMask.set(D.mask)},Xr.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(Qr).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,Xt=Ue.tileID,hr=new i.Point(ft.canonical.x,ft.canonical.y)._rotate(K.transform.angle),qt=new i.Point(Xt.canonical.x,Xt.canonical.y)._rotate(K.transform.angle);return ft.overscaledZ-Xt.overscaledZ||qt.y-hr.y||qt.x-hr.x}).map(function(we){return we.tileID.key}):de.map(function(we){return we.tileID}).sort(Qr).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,Xt){ft.needsHillshadePrepare=!0;var hr=Xt.tileID.canonical.x-ft.tileID.canonical.x,qt=Xt.tileID.canonical.y-ft.tileID.canonical.y,Ve=Math.pow(2,ft.tileID.canonical.z),Qe=Xt.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)),!(!Xt.dem||!ft.dem)&&(ft.dem.backfillBorder(Xt.dem,hr,qt),ft.neighboringTiles&&ft.neighboringTiles[Qe]&&(ft.neighboringTiles[Qe].backfilled=!0)))}},D.prototype.getTile=function(q){return this.getTileByID(q.key)},D.prototype.getTileByID=function(q){return this._tiles[q]},D.prototype._retainLoadedChildren=function(q,K,de,ne){for(var we in this._tiles){var Ue=this._tiles[we];if(!(ne[we]||!Ue.hasData()||Ue.tileID.overscaledZ<=K||Ue.tileID.overscaledZ>de)){for(var ft=Ue.tileID;Ue&&Ue.tileID.overscaledZ>K+1;){var Xt=Ue.tileID.scaledTo(Ue.tileID.overscaledZ-1);Ue=this._tiles[Xt.key],Ue&&Ue.hasData()&&(ft=Xt)}for(var hr=ft;hr.overscaledZ>K;)if(hr=hr.scaledTo(hr.overscaledZ-1),q[hr.key]){ne[ft.key]=ft;break}}}},D.prototype.findLoadedParent=function(q,K){if(q.key in this._loadedParentTiles){var de=this._loadedParentTiles[q.key];return de&&de.tileID.overscaledZ>=K?de:null}for(var ne=q.overscaledZ-1;ne>=K;ne--){var we=q.scaledTo(ne),Ue=this._getLoadedTile(we);if(Ue)return Ue}},D.prototype._getLoadedTile=function(q){var K=this._tiles[q.key];if(K&&K.hasData())return K;var de=this._cache.getByKey(q.wrapped().key);return de},D.prototype.updateCacheSize=function(q){var K=Math.ceil(q.width/this._source.tileSize)+1,de=Math.ceil(q.height/this._source.tileSize)+1,ne=K*de,we=5,Ue=Math.floor(ne*we),ft=typeof this._maxTileCacheSize=="number"?Math.min(this._maxTileCacheSize,Ue):Ue;this._cache.setMaxSize(ft)},D.prototype.handleWrapJump=function(q){var K=this._prevLng===void 0?q:this._prevLng,de=q-K,ne=de/360,we=Math.round(ne);if(this._prevLng=q,we){var Ue={};for(var ft in this._tiles){var Xt=this._tiles[ft];Xt.tileID=Xt.tileID.unwrapTo(Xt.tileID.wrap+we),Ue[Xt.tileID.key]=Xt}this._tiles=Ue;for(var hr in this._timers)clearTimeout(this._timers[hr]),delete this._timers[hr];for(var qt in this._tiles){var Ve=this._tiles[qt];this._setTileReloadTimer(qt,Ve)}}},D.prototype.update=function(q){var K=this;if(this.transform=q,!(!this._sourceLoaded||this._paused)){this.updateCacheSize(q),this.handleWrapJump(this.transform.center.lng),this._coveredTiles={};var de;this.used?this._source.tileID?de=q.getVisibleUnwrappedCoordinates(this._source.tileID).map(function(Ur){return new i.OverscaledTileID(Ur.canonical.z,Ur.wrap,Ur.canonical.z,Ur.canonical.x,Ur.canonical.y)}):(de=q.coveringTiles({tileSize:this._source.tileSize,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:this._source.roundZoom,reparseOverscaled:this._source.reparseOverscaled}),this._source.hasTile&&(de=de.filter(function(Ur){return K._source.hasTile(Ur)}))):de=[];var ne=q.coveringZoomLevel(this._source),we=Math.max(ne-D.maxOverzooming,this._source.minzoom),Ue=Math.max(ne+D.maxUnderzooming,this._source.minzoom),ft=this._updateRetainedTiles(de,ne);if(Oi(this._source.type)){for(var Xt={},hr={},qt=Object.keys(ft),Ve=0,Qe=qt;Ve<Qe.length;Ve+=1){var at=Qe[Ve],Ct=ft[at],Ot=this._tiles[at];if(!(!Ot||Ot.fadeEndTime&&Ot.fadeEndTime<=i.browser.now())){var Rt=this.findLoadedParent(Ct,we);Rt&&(this._addTile(Rt.tileID),Xt[Rt.tileID.key]=Rt.tileID),hr[at]=Ct}}this._retainLoadedChildren(hr,ne,Ue,ft);for(var Bt in Xt)ft[Bt]||(this._coveredTiles[Bt]=!0,ft[Bt]=Xt[Bt])}for(var Dt in ft)this._tiles[Dt].clearFadeHold();for(var yt=i.keysDifference(this._tiles,ft),Pt=0,ht=yt;Pt<ht.length;Pt+=1){var ur=ht[Pt],br=this._tiles[ur];br.hasSymbolBuckets&&!br.holdingForFade()?br.setHoldDuration(this.map._fadeDuration):(!br.hasSymbolBuckets||br.symbolFadeFinished())&&this._removeTile(ur)}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={},Xt=0,hr=q;Xt<hr.length;Xt+=1){var qt=hr[Xt],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 Qe=0,at=q;Qe<at.length;Qe+=1){var Ct=at[Qe],Ot=this._tiles[Ct.key];if(!Ot.hasData()){if(K+1>this._source.maxzoom){var Rt=Ct.children(this._source.maxzoom)[0],Bt=this.getTile(Rt);if(Bt&&Bt.hasData()){de[Rt.key]=Rt;continue}}else{var Dt=Ct.children(this._source.maxzoom);if(de[Dt[0].key]&&de[Dt[1].key]&&de[Dt[2].key]&&de[Dt[3].key])continue}for(var yt=Ot.wasRequested(),Pt=Ct.overscaledZ-1;Pt>=we;--Pt){var ht=Ct.scaledTo(Pt);if(ne[ht.key]||(ne[ht.key]=!0,Ot=this.getTile(ht),!Ot&&yt&&(Ot=this._addTile(ht)),Ot&&(de[ht.key]=ht,yt=Ot.wasRequested(),Ot.hasData())))break}}}return de},D.prototype._updateLoadedParentTileCache=function(){this._loadedParentTiles={};for(var q in this._tiles){for(var K=[],de=void 0,ne=this._tiles[q].tileID;ne.overscaledZ>0;){if(ne.key in this._loadedParentTiles){de=this._loadedParentTiles[ne.key];break}K.push(ne.key);var we=ne.scaledTo(ne.overscaledZ-1);if(de=this._getLoadedTile(we),de)break;ne=we}for(var Ue=0,ft=K;Ue<ft.length;Ue+=1){var Xt=ft[Ue];this._loadedParentTiles[Xt]=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,Xt=q.map(function(Pt){return Ue.pointCoordinate(Pt)}),hr=ft.map(function(Pt){return Ue.pointCoordinate(Pt)}),qt=this.getIds(),Ve=1/0,Qe=1/0,at=-1/0,Ct=-1/0,Ot=0,Rt=hr;Ot<Rt.length;Ot+=1){var Bt=Rt[Ot];Ve=Math.min(Ve,Bt.x),Qe=Math.min(Qe,Bt.y),at=Math.max(at,Bt.x),Ct=Math.max(Ct,Bt.y)}for(var Dt=function(Pt){var ht=ne._tiles[qt[Pt]];if(!ht.holdingForFade()){var ur=ht.tileID,br=Math.pow(2,Ue.zoom-ht.tileID.overscaledZ),Ur=K*ht.queryPadding*i.EXTENT/ht.tileSize/br,Di=[ur.getTilePoint(new i.MercatorCoordinate(Ve,Qe)),ur.getTilePoint(new i.MercatorCoordinate(at,Ct))];if(Di[0].x-Ur<i.EXTENT&&Di[0].y-Ur<i.EXTENT&&Di[1].x+Ur>=0&&Di[1].y+Ur>=0){var fi=Xt.map(function(gn){return ur.getTilePoint(gn)}),Ti=hr.map(function(gn){return ur.getTilePoint(gn)});we.push({tile:ht,tileID:ur,queryGeometry:fi,cameraQueryGeometry:Ti,scale:br})}}},yt=0;yt<qt.length;yt++)Dt(yt);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(Oi(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 Qr(Y,D){var J=Math.abs(Y.wrap*2)-+(Y.wrap<0),q=Math.abs(D.wrap*2)-+(D.wrap<0);return Y.overscaledZ-D.overscaledZ||q-J||D.canonical.y-Y.canonical.y||D.canonical.x-Y.canonical.x}function Oi(Y){return Y==="raster"||Y==="image"||Y==="video"}function $i(){return new i.window.Worker(io.workerUrl)}var tn="mapboxgl_preloaded_worker_pool",fn=function(){this.active={}};fn.prototype.acquire=function(D){if(!this.workers)for(this.workers=[];this.workers.length<fn.workerCount;)this.workers.push(new $i);return this.active[D]=!0,this.workers.slice()},fn.prototype.release=function(D){delete this.active[D],this.numActive()===0&&(this.workers.forEach(function(J){J.terminate()}),this.workers=null)},fn.prototype.isPreloaded=function(){return!!this.active[tn]},fn.prototype.numActive=function(){return Object.keys(this.active).length};var yn=Math.floor(i.browser.hardwareConcurrency/2);fn.workerCount=Math.max(Math.min(yn,6),1);var Sn;function Ba(){return Sn||(Sn=new fn),Sn}function ua(){var Y=Ba();Y.acquire(tn)}function ma(){var Y=Sn;Y&&(Y.isPreloaded()&&Y.numActive()===1?(Y.release(tn),Sn=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 Ha(Y,D,J){D.push({command:da.removeSource,args:[Y]}),J[Y]=!0}function vo(Y,D,J,q){Ha(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 Mt(Y,D,J,q){Y=Y||{},D=D||{};var K;for(K in Y)Y.hasOwnProperty(K)&&(D.hasOwnProperty(K)||Ha(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 kr(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 Jr(Y){return Y.id}function vi(Y,D){return Y[D.id]=D,Y}function hn(Y,D,J){Y=Y||[],D=D||[];var q=Y.map(Jr),K=D.map(Jr),de=Y.reduce(vi,{}),ne=D.reduce(vi,{}),we=q.slice(),Ue=Object.create(null),ft,Xt,hr,qt,Ve,Qe,at;for(ft=0,Xt=0;ft<q.length;ft++)hr=q[ft],ne.hasOwnProperty(hr)?Xt++:(J.push({command:da.removeLayer,args:[hr]}),we.splice(we.indexOf(hr,Xt),1));for(ft=0,Xt=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-Xt),1)):Xt++,Qe=we[we.length-ft],J.push({command:da.addLayer,args:[ne[hr],Qe]}),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]}),Qe=we[we.lastIndexOf(hr)+1],J.push({command:da.addLayer,args:[Ve,Qe]});continue}kr(qt.layout,Ve.layout,J,hr,null,da.setLayoutProperty),kr(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?kr(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?kr(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 An(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=[];Mt(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),hn(de,D.layers,J)}catch(ne){console.warn("Unable to compute style diff:",ne),J=[{command:da.setStyle,args:[D]}]}return J}var Mn=function(D,J){this.reset(D,J)};Mn.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},Mn.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 Li=function(D,J,q){var K=this.boxCells=[],de=this.circleCells=[];this.xCellCount=Math.ceil(D/q),this.yCellCount=Math.ceil(J/q);for(var ne=0;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};Li.prototype.keysLength=function(){return this.boxKeys.length+this.circleKeys.length},Li.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)},Li.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)},Li.prototype._insertBoxCell=function(D,J,q,K,de,ne){this.boxCells[de].push(ne)},Li.prototype._insertCircleCell=function(D,J,q,K,de,ne){this.circleCells[de].push(ne)},Li.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 Xt=this.circles[ft*3],hr=this.circles[ft*3+1],qt=this.circles[ft*3+2];we.push({key:this.circleKeys[ft],x1:Xt-qt,y1:hr-qt,x2:Xt+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}},Li.prototype._queryCircle=function(D,J,q,K,de){var ne=D-q,we=D+q,Ue=J-q,ft=J+q;if(we<0||ne>this.width||ft<0||Ue>this.height)return K?!1:[];var Xt=[],hr={hitTest:K,circle:{x:D,y:J,radius:q},seenUids:{box:{},circle:{}}};return this._forEachCell(ne,Ue,we,ft,this._queryCellCircle,Xt,hr,de),K?Xt.length>0:Xt},Li.prototype.query=function(D,J,q,K,de){return this._query(D,J,q,K,!1,de)},Li.prototype.hitTest=function(D,J,q,K,de){return this._query(D,J,q,K,!0,de)},Li.prototype.hitTestCircle=function(D,J,q,K){return this._queryCircle(D,J,q,!0,K)},Li.prototype._queryCell=function(D,J,q,K,de,ne,we,Ue){var ft=we.seenUids,Xt=this.boxCells[de];if(Xt!==null)for(var hr=this.bboxes,qt=0,Ve=Xt;qt<Ve.length;qt+=1){var Qe=Ve[qt];if(!ft.box[Qe]){ft.box[Qe]=!0;var at=Qe*4;if(D<=hr[at+2]&&J<=hr[at+3]&&q>=hr[at+0]&&K>=hr[at+1]&&(!Ue||Ue(this.boxKeys[Qe]))){if(we.hitTest)return ne.push(!0),!0;ne.push({key:this.boxKeys[Qe],x1:hr[at],y1:hr[at+1],x2:hr[at+2],y2:hr[at+3]})}}}var Ct=this.circleCells[de];if(Ct!==null)for(var Ot=this.circles,Rt=0,Bt=Ct;Rt<Bt.length;Rt+=1){var Dt=Bt[Rt];if(!ft.circle[Dt]){ft.circle[Dt]=!0;var yt=Dt*3;if(this._circleAndRectCollide(Ot[yt],Ot[yt+1],Ot[yt+2],D,J,q,K)&&(!Ue||Ue(this.circleKeys[Dt]))){if(we.hitTest)return ne.push(!0),!0;var Pt=Ot[yt],ht=Ot[yt+1],ur=Ot[yt+2];ne.push({key:this.circleKeys[Dt],x1:Pt-ur,y1:ht-ur,x2:Pt+ur,y2:ht+ur})}}}},Li.prototype._queryCellCircle=function(D,J,q,K,de,ne,we,Ue){var ft=we.circle,Xt=we.seenUids,hr=this.boxCells[de];if(hr!==null)for(var qt=this.bboxes,Ve=0,Qe=hr;Ve<Qe.length;Ve+=1){var at=Qe[Ve];if(!Xt.box[at]){Xt.box[at]=!0;var Ct=at*4;if(this._circleAndRectCollide(ft.x,ft.y,ft.radius,qt[Ct+0],qt[Ct+1],qt[Ct+2],qt[Ct+3])&&(!Ue||Ue(this.boxKeys[at])))return ne.push(!0),!0}}var Ot=this.circleCells[de];if(Ot!==null)for(var Rt=this.circles,Bt=0,Dt=Ot;Bt<Dt.length;Bt+=1){var yt=Dt[Bt];if(!Xt.circle[yt]){Xt.circle[yt]=!0;var Pt=yt*3;if(this._circlesCollide(Rt[Pt],Rt[Pt+1],Rt[Pt+2],ft.x,ft.y,ft.radius)&&(!Ue||Ue(this.circleKeys[yt])))return ne.push(!0),!0}}},Li.prototype._forEachCell=function(D,J,q,K,de,ne,we,Ue){for(var ft=this._convertToXCellCoord(D),Xt=this._convertToYCellCoord(J),hr=this._convertToXCellCoord(q),qt=this._convertToYCellCoord(K),Ve=ft;Ve<=hr;Ve++)for(var Qe=Xt;Qe<=qt;Qe++){var at=this.xCellCount*Qe+Ve;if(de.call(this,D,J,q,K,at,ne,we,Ue))return}},Li.prototype._convertToXCellCoord=function(D){return Math.max(0,Math.min(this.xCellCount-1,Math.floor(D*this.xScale)))},Li.prototype._convertToYCellCoord=function(D){return Math.max(0,Math.min(this.yCellCount-1,Math.floor(D*this.yScale)))},Li.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},Li.prototype._circleAndRectCollide=function(D,J,q,K,de,ne,we){var Ue=(ne-K)/2,ft=Math.abs(D-(K+Ue));if(ft>Ue+q)return!1;var Xt=(we-de)/2,hr=Math.abs(J-(de+Xt));if(hr>Xt+q)return!1;if(ft<=Ue||hr<=Xt)return!0;var qt=ft-Ue,Ve=hr-Xt;return qt*qt+Ve*Ve<=q*q};function _n(Y,D,J,q,K){var de=i.create();return D?(i.scale(de,de,[1/K,1/K,1]),J||i.rotateZ(de,de,q.angle)):i.multiply(de,q.labelPlaneMatrix,Y),de}function ya(Y,D,J,q,K){if(D){var de=i.clone(Y);return i.scale(de,de,[K,K,1]),J||i.rotateZ(de,de,-q.angle),de}else return q.glCoordMatrix}function Jn(Y,D){var J=[Y.x,Y.y,0,1];zl(J,J,D);var q=J[3];return{point:new i.Point(J[0]/q,J[1]/q),signedDistanceFromCamera:q}}function Ma(Y,D){return .5+.5*(Y/D)}function _o(Y,D){var J=Y[0]/Y[3],q=Y[1]/Y[3],K=J>=-D[0]&&J<=D[0]&&q>=-D[1]&&q<=D[1];return K}function No(Y,D,J,q,K,de,ne,we){var Ue=q?Y.textSizeData:Y.iconSizeData,ft=i.evaluateSizeForZoom(Ue,J.transform.zoom),Xt=[256/J.width*2+1,256/J.height*2+1],hr=q?Y.text.dynamicLayoutVertexArray:Y.icon.dynamicLayoutVertexArray;hr.clear();for(var qt=Y.lineVertexArray,Ve=q?Y.text.placedSymbolArray:Y.icon.placedSymbolArray,Qe=J.transform.width/J.transform.height,at=!1,Ct=0;Ct<Ve.length;Ct++){var Ot=Ve.get(Ct);if(Ot.hidden||Ot.writingMode===i.WritingMode.vertical&&!at){ul(Ot.numGlyphs,hr);continue}at=!1;var Rt=[Ot.anchorX,Ot.anchorY,0,1];if(i.transformMat4(Rt,Rt,D),!_o(Rt,Xt)){ul(Ot.numGlyphs,hr);continue}var Bt=Rt[3],Dt=Ma(J.transform.cameraToCenterDistance,Bt),yt=i.evaluateSizeForFeature(Ue,ft,Ot),Pt=ne?yt/Dt:yt*Dt,ht=new i.Point(Ot.anchorX,Ot.anchorY),ur=Jn(ht,K).point,br={},Ur=ko(Ot,Pt,!1,we,D,K,de,Y.glyphOffsetArray,qt,hr,ur,ht,br,Qe);at=Ur.useVertical,(Ur.notEnoughRoom||at||Ur.needsFlipping&&ko(Ot,Pt,!0,we,D,K,de,Y.glyphOffsetArray,qt,hr,ur,ht,br,Qe).notEnoughRoom)&&ul(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,Xt){var hr=we.glyphStartIndex+we.numGlyphs,qt=we.lineStartIndex,Ve=we.lineStartIndex+we.lineLength,Qe=D.getoffsetX(we.glyphStartIndex),at=D.getoffsetX(hr-1),Ct=Fs(Y*Qe,J,q,K,de,ne,we.segment,qt,Ve,Ue,ft,Xt);if(!Ct)return null;var Ot=Fs(Y*at,J,q,K,de,ne,we.segment,qt,Ve,Ue,ft,Xt);return Ot?{first:Ct,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 ko(Y,D,J,q,K,de,ne,we,Ue,ft,Xt,hr,qt,Ve){var Qe=D/24,at=Y.lineOffsetX*Qe,Ct=Y.lineOffsetY*Qe,Ot;if(Y.numGlyphs>1){var Rt=Y.glyphStartIndex+Y.numGlyphs,Bt=Y.lineStartIndex,Dt=Y.lineStartIndex+Y.lineLength,yt=po(Qe,we,at,Ct,J,Xt,hr,Y,Ue,de,qt);if(!yt)return{notEnoughRoom:!0};var Pt=Jn(yt.first.point,ne).point,ht=Jn(yt.last.point,ne).point;if(q&&!J){var ur=Lo(Y.writingMode,Pt,ht,Ve);if(ur)return ur}Ot=[yt.first];for(var br=Y.glyphStartIndex+1;br<Rt-1;br++)Ot.push(Fs(Qe*we.getoffsetX(br),at,Ct,J,Xt,hr,Y.segment,Bt,Dt,Ue,de,qt));Ot.push(yt.last)}else{if(q&&!J){var Ur=Jn(hr,K).point,Di=Y.lineStartIndex+Y.segment+1,fi=new i.Point(Ue.getx(Di),Ue.gety(Di)),Ti=Jn(fi,K),gn=Ti.signedDistanceFromCamera>0?Ti.point:Ds(hr,fi,Ur,1,K),rn=Lo(Y.writingMode,Ur,gn,Ve);if(rn)return rn}var Ci=Fs(Qe*we.getoffsetX(Y.glyphStartIndex),at,Ct,J,Xt,hr,Y.segment,Y.lineStartIndex,Y.lineStartIndex+Y.lineLength,Ue,de,qt);if(!Ci)return{notEnoughRoom:!0};Ot=[Ci]}for(var Bi=0,Gi=Ot;Bi<Gi.length;Bi+=1){var sn=Gi[Bi];i.addDynamicAttributes(ft,sn.point,sn.angle)}return{}}function Ds(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 Fs(Y,D,J,q,K,de,ne,we,Ue,ft,Xt,hr){var qt=q?Y-D:Y+D,Ve=qt>0?1:-1,Qe=0;q&&(Ve*=-1,Qe=Math.PI),Ve<0&&(Qe+=Math.PI);for(var at=Ve>0?we+ne:we+ne+1,Ct=K,Ot=K,Rt=0,Bt=0,Dt=Math.abs(qt),yt=[];Rt+Bt<=Dt;){if(at+=Ve,at<we||at>=Ue)return null;if(Ot=Ct,yt.push(Ct),Ct=hr[at],Ct===void 0){var Pt=new i.Point(ft.getx(at),ft.gety(at)),ht=Jn(Pt,Xt);if(ht.signedDistanceFromCamera>0)Ct=hr[at]=ht.point;else{var ur=at-Ve,br=Rt===0?de:new i.Point(ft.getx(ur),ft.gety(ur));Ct=Ds(br,Pt,Ot,Dt-Rt+1,Xt)}}Rt+=Bt,Bt=Ot.dist(Ct)}var Ur=(Dt-Rt)/Bt,Di=Ct.sub(Ot),fi=Di.mult(Ur)._add(Ot);fi._add(Di._unit()._perp()._mult(J*Ve));var Ti=Qe+Math.atan2(Ct.y-Ot.y,Ct.x-Ot.x);return yt.push(fi),{point:fi,angle:Ti,path:yt}}var ll=new Float32Array([-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0]);function ul(Y,D){for(var J=0;J<Y;J++){var q=D.length;D.resize(q+4),D.float32.set(ll,q*3)}}function zl(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 us=100,il=function(D,J,q){J===void 0&&(J=new Li(D.width+2*us,D.height+2*us,25)),q===void 0&&(q=new Li(D.width+2*us,D.height+2*us,25)),this.transform=D,this.grid=J,this.ignoredGrid=q,this.pitchfactor=Math.cos(D._pitch)*D.cameraToCenterDistance,this.screenRightBoundary=D.width+us,this.screenBottomBoundary=D.height+us,this.gridRightBoundary=D.width+2*us,this.gridBottomBoundary=D.height+2*us};il.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,Xt=D.x2*we+ne.point.x,hr=D.y2*we+ne.point.y;return!this.isInsideGrid(Ue,ft,Xt,hr)||!J&&this.grid.hitTest(Ue,ft,Xt,hr,de)?{box:[],offscreen:!1}:{box:[Ue,ft,Xt,hr],offscreen:this.isOffscreen(Ue,ft,Xt,hr)}},il.prototype.placeCollisionCircles=function(D,J,q,K,de,ne,we,Ue,ft,Xt,hr,qt,Ve){var Qe=[],at=new i.Point(J.anchorX,J.anchorY),Ct=Jn(at,ne),Ot=Ma(this.transform.cameraToCenterDistance,Ct.signedDistanceFromCamera),Rt=Xt?de/Ot:de*Ot,Bt=Rt/i.ONE_EM,Dt=Jn(at,we).point,yt={},Pt=J.lineOffsetX*Bt,ht=J.lineOffsetY*Bt,ur=po(Bt,K,Pt,ht,!1,Dt,at,J,q,we,yt),br=!1,Ur=!1,Di=!0;if(ur){for(var fi=qt*.5*Ot+Ve,Ti=new i.Point(-us,-us),gn=new i.Point(this.screenRightBoundary,this.screenBottomBoundary),rn=new Mn,Ci=ur.first,Bi=ur.last,Gi=[],sn=Ci.path.length-1;sn>=1;sn--)Gi.push(Ci.path[sn]);for(var zn=1;zn<Bi.path.length;zn++)Gi.push(Bi.path[zn]);var Ja=fi*2.5;if(Ue){var co=Gi.map(function(Iv){return Jn(Iv,Ue)});co.some(function(Iv){return Iv.signedDistanceFromCamera<=0})?Gi=[]:Gi=co.map(function(Iv){return Iv.point})}var ts=[];if(Gi.length>0){for(var so=Gi[0].clone(),Zo=Gi[0].clone(),ms=1;ms<Gi.length;ms++)so.x=Math.min(so.x,Gi[ms].x),so.y=Math.min(so.y,Gi[ms].y),Zo.x=Math.max(Zo.x,Gi[ms].x),Zo.y=Math.max(Zo.y,Gi[ms].y);so.x>=Ti.x&&Zo.x<=gn.x&&so.y>=Ti.y&&Zo.y<=gn.y?ts=[Gi]:Zo.x<Ti.x||so.x>gn.x||Zo.y<Ti.y||so.y>gn.y?ts=[]:ts=i.clipLine([Gi],Ti.x,Ti.y,gn.x,gn.y)}for(var ou=0,Cv=ts;ou<Cv.length;ou+=1){var Lv=Cv[ou];rn.reset(Lv,fi*.25);var wd=0;rn.length<=.5*fi?wd=1:wd=Math.ceil(rn.paddedLength/Ja)+1;for(var Kv=0;Kv<wd;Kv++){var cg=Kv/Math.max(wd-1,1),pp=rn.lerp(cg),Td=pp.x+us,gp=pp.y+us;Qe.push(Td,gp,fi,0);var Vd=Td-fi,Ad=gp-fi,Pv=Td+fi,Jv=gp+fi;if(Di=Di&&this.isOffscreen(Vd,Ad,Pv,Jv),Ur=Ur||this.isInsideGrid(Vd,Ad,Pv,Jv),!D&&this.grid.hitTestCircle(Td,gp,fi,hr)&&(br=!0,!ft))return{circles:[],offscreen:!1,collisionDetected:br}}}}return{circles:!ft&&br||!Ur?[]:Qe,offscreen:Di,collisionDetected:br}},il.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],Xt=new i.Point(ft.x+us,ft.y+us);q=Math.min(q,Xt.x),K=Math.min(K,Xt.y),de=Math.max(de,Xt.x),ne=Math.max(ne,Xt.y),J.push(Xt)}for(var hr=this.grid.query(q,K,de,ne).concat(this.ignoredGrid.query(q,K,de,ne)),qt={},Ve={},Qe=0,at=hr;Qe<at.length;Qe+=1){var Ct=at[Qe],Ot=Ct.key;if(qt[Ot.bucketInstanceId]===void 0&&(qt[Ot.bucketInstanceId]={}),!qt[Ot.bucketInstanceId][Ot.featureIndex]){var Rt=[new i.Point(Ct.x1,Ct.y1),new i.Point(Ct.x2,Ct.y1),new i.Point(Ct.x2,Ct.y2),new i.Point(Ct.x1,Ct.y2)];i.polygonIntersectsPolygon(J,Rt)&&(qt[Ot.bucketInstanceId][Ot.featureIndex]=!0,Ve[Ot.bucketInstanceId]===void 0&&(Ve[Ot.bucketInstanceId]=[]),Ve[Ot.bucketInstanceId].push(Ot.featureIndex))}}return Ve},il.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])},il.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])},il.prototype.projectAndGetPerspectiveRatio=function(D,J,q){var K=[J,q,0,1];zl(K,K,D);var de=new i.Point((K[0]/K[3]+1)/2*this.transform.width+us,(-K[1]/K[3]+1)/2*this.transform.height+us);return{point:de,perspectiveRatio:.5+.5*(this.transform.cameraToCenterDistance/K[3])}},il.prototype.isOffscreen=function(D,J,q,K){return q<us||D>=this.screenRightBoundary||K<us||J>this.screenBottomBoundary},il.prototype.isInsideGrid=function(D,J,q,K){return q>=0&&D<this.gridRightBoundary&&K>=0&&J<this.gridBottomBoundary},il.prototype.getViewportMatrix=function(){var D=i.identity([]);return i.translate(D,D,[-us,-us,0]),D};function As(Y,D,J){return D*(i.EXTENT/(Y.tileSize*Math.pow(2,J-Y.tileID.overscaledZ)))}var cl=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};cl.prototype.isHidden=function(){return this.opacity===0&&!this.placed};var Ks=function(D,J,q,K,de){this.text=new cl(D?D.text:null,J,q,de),this.icon=new cl(D?D.icon:null,J,K,de)};Ks.prototype.isHidden=function(){return this.text.isHidden()&&this.icon.isHidden()};var zs=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=[]},ls=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,Xt=i.evaluateVariableOffset(Y,q);return new i.Point(Ue+Xt[0]*K,ft+Xt[1]*K)}function nc(Y,D,J,q,K,de){var ne=Y.x1,we=Y.x2,Ue=Y.y1,ft=Y.y2,Xt=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:Xt,anchorPointY:hr}}var bs=function(D,J,q,K){this.transform=D.clone(),this.collisionIndex=new il(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={}};bs.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),Xt=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",Qe=As(q,1,this.transform.zoom),at=_n(hr,qt,Ve,this.transform,Qe),Ct=null;if(qt){var Ot=ya(hr,qt,Ve,this.transform,Qe);Ct=i.multiply([],this.transform.labelPlaneMatrix,Ot)}this.retainedQueryData[de.bucketInstanceId]=new ls(de.bucketInstanceId,ne,de.sourceLayerIndex,de.index,q.tileID);var Rt={bucket:de,layout:Ue,posMatrix:hr,textLabelPlaneMatrix:at,labelToScreenMatrix:Ct,scale:ft,textPixelRatio:Xt,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,Dt=de.sortKeyRanges;Bt<Dt.length;Bt+=1){var yt=Dt[Bt],Pt=yt.sortKey,ht=yt.symbolInstanceStart,ur=yt.symbolInstanceEnd;D.push({sortKey:Pt,symbolInstanceStart:ht,symbolInstanceEnd:ur,parameters:Rt})}else D.push({symbolInstanceStart:0,symbolInstanceEnd:de.symbolInstances.length,parameters:Rt})}},bs.prototype.attemptAnchorPlacement=function(D,J,q,K,de,ne,we,Ue,ft,Xt,hr,qt,Ve,Qe,at){var Ct=[qt.textOffset0,qt.textOffset1],Ot=Su(D,q,K,Ct,de),Rt=this.collisionIndex.placeCollisionBox(nc(J,Ot.x,Ot.y,ne,we,this.transform.angle),hr,Ue,ft,Xt.predicate);if(at){var Bt=this.collisionIndex.placeCollisionBox(nc(at,Ot.x,Ot.y,ne,we,this.transform.angle),hr,Ue,ft,Xt.predicate);if(Bt.box.length===0)return}if(Rt.box.length>0){var Dt;return this.prevPlacement&&this.prevPlacement.variableOffsets[qt.crossTileID]&&this.prevPlacement.placements[qt.crossTileID]&&this.prevPlacement.placements[qt.crossTileID].text&&(Dt=this.prevPlacement.variableOffsets[qt.crossTileID].anchor),this.variableOffsets[qt.crossTileID]={textOffset:Ct,width:q,height:K,anchor:D,textBoxScale:de,prevAnchor:Dt},this.markUsedJustification(Ve,D,qt,Qe),Ve.allowVerticalPlacement&&(this.markUsedOrientation(Ve,Qe,qt),this.placedOrientations[qt.crossTileID]=Qe),{shift:Ot,placedGlyphBoxes:Rt}}},bs.prototype.placeLayerBucketPart=function(D,J,q){var K=this,de=D.parameters,ne=de.bucket,we=de.layout,Ue=de.posMatrix,ft=de.textLabelPlaneMatrix,Xt=de.labelToScreenMatrix,hr=de.textPixelRatio,qt=de.holdingForFade,Ve=de.collisionBoxArray,Qe=de.partiallyEvaluatedTextSize,at=de.collisionGroup,Ct=we.get("text-optional"),Ot=we.get("icon-optional"),Rt=we.get("text-allow-overlap"),Bt=we.get("icon-allow-overlap"),Dt=we.get("text-rotation-alignment")==="map",yt=we.get("text-pitch-alignment")==="map",Pt=we.get("icon-text-fit")!=="none",ht=we.get("symbol-z-order")==="viewport-y",ur=Rt&&(Bt||!ne.hasIconData()||Ot),br=Bt&&(Rt||!ne.hasTextData()||Ct);!ne.collisionArrays&&Ve&&ne.deserializeCollisionBoxes(Ve);var Ur=function(Ci,Bi){if(!J[Ci.crossTileID]){if(qt){K.placements[Ci.crossTileID]=new zs(!1,!1,!1);return}var Gi=!1,sn=!1,zn=!0,Ja=null,co={box:null,offscreen:null},ts={box:null,offscreen:null},so=null,Zo=null,ms=null,ou=0,Cv=0,Lv=0;Bi.textFeatureIndex?ou=Bi.textFeatureIndex:Ci.useRuntimeCollisionCircles&&(ou=Ci.featureIndex),Bi.verticalTextFeatureIndex&&(Cv=Bi.verticalTextFeatureIndex);var wd=Bi.textBox;if(wd){var Kv=function(vc){var eu=i.WritingMode.horizontal;if(ne.allowVerticalPlacement&&!vc&&K.prevPlacement){var Sd=K.prevPlacement.placedOrientations[Ci.crossTileID];Sd&&(K.placedOrientations[Ci.crossTileID]=Sd,eu=Sd,K.markUsedOrientation(ne,eu,Ci))}return eu},cg=function(vc,eu){if(ne.allowVerticalPlacement&&Ci.numVerticalGlyphVertices>0&&Bi.verticalTextBox)for(var Sd=0,ly=ne.writingModes;Sd<ly.length;Sd+=1){var T1=ly[Sd];if(T1===i.WritingMode.vertical?(co=eu(),ts=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 Pv=function(vc,eu,Sd){for(var ly=vc.x2-vc.x1,T1=vc.y2-vc.y1,wu=Ci.textBoxScale,Nx=Pt&&!Bt?eu:null,om={box:[],offscreen:!1},kw=Rt?Vd.length*2:Vd.length,Rv=0;Rv<kw;++Rv){var sm=Vd[Rv%Vd.length],Cw=Rv>=Vd.length,Ux=K.attemptAnchorPlacement(sm,vc,ly,T1,wu,Dt,yt,hr,Ue,at,Cw,Ci,ne,Sd,Nx);if(Ux&&(om=Ux.placedGlyphBoxes,om&&om.box&&om.box.length)){Gi=!0,Ja=Ux.shift;break}}return om},Jv=function(){return Pv(wd,Bi.iconBox,i.WritingMode.horizontal)},Iv=function(){var vc=Bi.verticalTextBox,eu=co&&co.box&&co.box.length;return ne.allowVerticalPlacement&&!eu&&Ci.numVerticalGlyphVertices>0&&vc?Pv(vc,Bi.verticalIconBox,i.WritingMode.vertical):{box:null,offscreen:null}};cg(Jv,Iv),co&&(Gi=co.box,zn=co.offscreen);var ay=Kv(co&&co.box);if(!Gi&&K.prevPlacement){var fg=K.prevPlacement.variableOffsets[Ci.crossTileID];fg&&(K.variableOffsets[Ci.crossTileID]=fg,K.markUsedJustification(ne,fg.anchor,Ci,ay))}}else{var pp=function(vc,eu){var Sd=K.collisionIndex.placeCollisionBox(vc,Rt,hr,Ue,at.predicate);return Sd&&Sd.box&&Sd.box.length&&(K.markUsedOrientation(ne,eu,Ci),K.placedOrientations[Ci.crossTileID]=eu),Sd},Td=function(){return pp(wd,i.WritingMode.horizontal)},gp=function(){var vc=Bi.verticalTextBox;return ne.allowVerticalPlacement&&Ci.numVerticalGlyphVertices>0&&vc?pp(vc,i.WritingMode.vertical):{box:null,offscreen:null}};cg(Td,gp),Kv(co&&co.box&&co.box.length)}}if(so=co,Gi=so&&so.box&&so.box.length>0,zn=so&&so.offscreen,Ci.useRuntimeCollisionCircles){var oh=ne.text.placedSymbolArray.get(Ci.centerJustifiedTextSymbolIndex),hg=i.evaluateSizeForFeature(ne.textSizeData,Qe,oh),oy=we.get("text-padding"),jh=Ci.collisionCircleDiameter;Zo=K.collisionIndex.placeCollisionCircles(Rt,oh,ne.lineVertexArray,ne.glyphOffsetArray,hg,Ue,ft,Xt,q,yt,at.predicate,jh,oy),Gi=Rt||Zo.circles.length>0&&!Zo.collisionDetected,zn=zn&&Zo.offscreen}if(Bi.iconFeatureIndex&&(Lv=Bi.iconFeatureIndex),Bi.iconBox){var im=function(vc){var eu=Pt&&Ja?nc(vc,Ja.x,Ja.y,Dt,yt,K.transform.angle):vc;return K.collisionIndex.placeCollisionBox(eu,Bt,hr,Ue,at.predicate)};ts&&ts.box&&ts.box.length&&Bi.verticalIconBox?(ms=im(Bi.verticalIconBox),sn=ms.box.length>0):(ms=im(Bi.iconBox),sn=ms.box.length>0),zn=zn&&ms.offscreen}var b1=Ct||Ci.numHorizontalGlyphVertices===0&&Ci.numVerticalGlyphVertices===0,w1=Ot||Ci.numIconVertices===0;if(!b1&&!w1?sn=Gi=sn&&Gi:w1?b1||(sn=sn&&Gi):Gi=sn&&Gi,Gi&&so&&so.box&&(ts&&ts.box&&Cv?K.collisionIndex.insertCollisionBox(so.box,we.get("text-ignore-placement"),ne.bucketInstanceId,Cv,at.ID):K.collisionIndex.insertCollisionBox(so.box,we.get("text-ignore-placement"),ne.bucketInstanceId,ou,at.ID)),sn&&ms&&K.collisionIndex.insertCollisionBox(ms.box,we.get("icon-ignore-placement"),ne.bucketInstanceId,Lv,at.ID),Zo&&(Gi&&K.collisionIndex.insertCollisionCircles(Zo.circles,we.get("text-ignore-placement"),ne.bucketInstanceId,ou,at.ID),q)){var sy=ne.bucketInstanceId,nm=K.collisionCircleArrays[sy];nm===void 0&&(nm=K.collisionCircleArrays[sy]=new Io);for(var am=0;am<Zo.circles.length;am+=4)nm.circles.push(Zo.circles[am+0]),nm.circles.push(Zo.circles[am+1]),nm.circles.push(Zo.circles[am+2]),nm.circles.push(Zo.collisionDetected?1:0)}K.placements[Ci.crossTileID]=new zs(Gi||ur,sn||br,zn||ne.justReloaded),J[Ci.crossTileID]=!0}};if(ht)for(var Di=ne.getSortedSymbolIndexes(this.transform.angle),fi=Di.length-1;fi>=0;--fi){var Ti=Di[fi];Ur(ne.symbolInstances.get(Ti),ne.collisionArrays[Ti])}else for(var gn=D.symbolInstanceStart;gn<D.symbolInstanceEnd;gn++)Ur(ne.symbolInstances.get(gn),ne.collisionArrays[gn]);if(q&&ne.bucketInstanceId in this.collisionCircleArrays){var rn=this.collisionCircleArrays[ne.bucketInstanceId];i.invert(rn.invProjMatrix,Ue),rn.viewportMatrix=this.collisionIndex.getViewportMatrix()}ne.justReloaded=!1},bs.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 Xt=ft[Ue];Xt>=0&&(ne>=0&&Xt!==ne?D.text.placedSymbolArray.get(Xt).crossTileID=0:D.text.placedSymbolArray.get(Xt).crossTileID=q.crossTileID)}},bs.prototype.markUsedOrientation=function(D,J,q){for(var K=J===i.WritingMode.horizontal||J===i.WritingMode.horizontalOnly?J:0,de=J===i.WritingMode.vertical?J:0,ne=[q.leftJustifiedTextSymbolIndex,q.centerJustifiedTextSymbolIndex,q.rightJustifiedTextSymbolIndex],we=0,Ue=ne;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)},bs.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],Xt=de[Ue];Xt?(this.opacities[Ue]=new Ks(Xt,K,ft.text,ft.icon),q=q||ft.text!==Xt.text.placed||ft.icon!==Xt.icon.placed):(this.opacities[Ue]=new Ks(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 Ks(qt,K,!1,!1);Ve.isHidden()||(this.opacities[hr]=Ve,q=q||qt.text.placed||qt.icon.placed)}}for(var Qe in ne)!this.variableOffsets[Qe]&&this.opacities[Qe]&&!this.opacities[Qe].isHidden()&&(this.variableOffsets[Qe]=ne[Qe]);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)},bs.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)}},bs.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 Ks(null,0,!1,!1,!0),we=de.get("text-allow-overlap"),Ue=de.get("icon-allow-overlap"),ft=de.get("text-variable-anchor"),Xt=de.get("text-rotation-alignment")==="map",hr=de.get("text-pitch-alignment")==="map",qt=de.get("icon-text-fit")!=="none",Ve=new Ks(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 Qe=function(Rt,Bt,Dt){for(var yt=0;yt<Bt/4;yt++)Rt.opacityVertexArray.emplaceBack(Dt)},at=function(Rt){var Bt=D.symbolInstances.get(Rt),Dt=Bt.numHorizontalGlyphVertices,yt=Bt.numVerticalGlyphVertices,Pt=Bt.crossTileID,ht=J[Pt],ur=K.opacities[Pt];ht?ur=ne:ur||(ur=Ve,K.opacities[Pt]=ur),J[Pt]=!0;var br=Dt>0||yt>0,Ur=Bt.numIconVertices>0,Di=K.placedOrientations[Bt.crossTileID],fi=Di===i.WritingMode.vertical,Ti=Di===i.WritingMode.horizontal||Di===i.WritingMode.horizontalOnly;if(br){var gn=ac(ur.text),rn=fi?aa:gn;Qe(D.text,Dt,rn);var Ci=Ti?aa:gn;Qe(D.text,yt,Ci);var Bi=ur.text.isHidden();[Bt.rightJustifiedTextSymbolIndex,Bt.centerJustifiedTextSymbolIndex,Bt.leftJustifiedTextSymbolIndex].forEach(function(Lv){Lv>=0&&(D.text.placedSymbolArray.get(Lv).hidden=Bi||fi?1:0)}),Bt.verticalPlacedTextSymbolIndex>=0&&(D.text.placedSymbolArray.get(Bt.verticalPlacedTextSymbolIndex).hidden=Bi||Ti?1:0);var Gi=K.variableOffsets[Bt.crossTileID];Gi&&K.markUsedJustification(D,Gi.anchor,Bt,Di);var sn=K.placedOrientations[Bt.crossTileID];sn&&(K.markUsedJustification(D,"left",Bt,sn),K.markUsedOrientation(D,sn,Bt))}if(Ur){var zn=ac(ur.icon),Ja=!(qt&&Bt.verticalPlacedIconSymbolIndex&&fi);if(Bt.placedIconSymbolIndex>=0){var co=Ja?zn:aa;Qe(D.icon,Bt.numIconVertices,co),D.icon.placedSymbolArray.get(Bt.placedIconSymbolIndex).hidden=ur.icon.isHidden()}if(Bt.verticalPlacedIconSymbolIndex>=0){var ts=Ja?aa:zn;Qe(D.icon,Bt.numVerticalIconVertices,ts),D.icon.placedSymbolArray.get(Bt.verticalPlacedIconSymbolIndex).hidden=ur.icon.isHidden()}}if(D.hasIconCollisionBoxData()||D.hasTextCollisionBoxData()){var so=D.collisionArrays[Rt];if(so){var Zo=new i.Point(0,0);if(so.textBox||so.verticalTextBox){var ms=!0;if(ft){var ou=K.variableOffsets[Pt];ou?(Zo=Su(ou.anchor,ou.width,ou.height,ou.textOffset,ou.textBoxScale),Xt&&Zo._rotate(hr?K.transform.angle:-K.transform.angle)):ms=!1}so.textBox&&Rn(D.textCollisionBox.collisionVertexArray,ur.text.placed,!ms||fi,Zo.x,Zo.y),so.verticalTextBox&&Rn(D.textCollisionBox.collisionVertexArray,ur.text.placed,!ms||Ti,Zo.x,Zo.y)}var Cv=!!(!Ti&&so.verticalIconBox);so.iconBox&&Rn(D.iconCollisionBox.collisionVertexArray,ur.icon.placed,Cv,qt?Zo.x:0,qt?Zo.y:0),so.verticalIconBox&&Rn(D.iconCollisionBox.collisionVertexArray,ur.icon.placed,!Cv,qt?Zo.x:0,qt?Zo.y:0)}}},Ct=0;Ct<D.symbolInstances.length;Ct++)at(Ct);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]}},bs.prototype.symbolFadeChange=function(D){return this.fadeDuration===0?1:(D-this.commitTime)/this.fadeDuration+this.prevZoomAdjustment},bs.prototype.zoomAdjustment=function(D){return Math.max(0,(this.transform.zoom-D)/1.5)},bs.prototype.hasTransitions=function(D){return this.stale||D-this.lastPlacementChangeTime<this.fadeDuration},bs.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},bs.prototype.setStale=function(){this.stale=!0};function Rn(Y,D,J,q,K){Y.emplaceBack(D?1:0,J?1:0,q||0,K||0),Y.emplaceBack(D?1:0,J?1:0,q||0,K||0),Y.emplaceBack(D?1:0,J?1:0,q||0,K||0),Y.emplaceBack(D?1:0,J?1:0,q||0,K||0)}var _a=Math.pow(2,25),Vu=Math.pow(2,24),Ol=Math.pow(2,17),xo=Math.pow(2,16),Yl=Math.pow(2,9),Ns=Math.pow(2,8),Hl=Math.pow(2,1);function ac(Y){if(Y.opacity===0&&!Y.placed)return 0;if(Y.opacity===1&&Y.placed)return 4294967295;var D=Y.placed?1:0,J=Math.floor(Y.opacity*127);return J*_a+D*Vu+J*Ol+D*xo+J*Yl+D*Ns+J*Hl+D}var aa=0,Oo=function(D){this._sortAcrossTiles=D.layout.get("symbol-z-order")!=="viewport-y"&&D.layout.get("symbol-sort-key").constantOr(1)!==void 0,this._currentTileIndex=0,this._currentPartIndex=0,this._seenCrossTileIDs={},this._bucketParts=[]};Oo.prototype.continuePlacement=function(D,J,q,K,de){for(var ne=this._bucketParts;this._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,Xt){return ft.sortKey-Xt.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 bs(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 Xt=this._inProgressLayer.continuePlacement(q[Ue.source],this.placement,this._showCollisionBoxes,Ue,ne);if(Xt)return;delete this._inProgressLayer}this._currentPlacementIndex--}this._done=!0},qo.prototype.commit=function(D){return this.placement.commit(D),this.placement};var ql=512/i.EXTENT/2,Pc=function(D,J,q){this.tileID=D,this.indexedSymbolInstances={},this.bucketInstanceId=q;for(var K=0;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=ql/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,Xt=we;ft<Xt.length;ft+=1){var hr=Xt[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 Xt=Ue[ft];Xt.tileID.isChildOf(D)&&Xt.findMatches(J.symbolInstances,D,ne)}else{var hr=D.scaledTo(Number(we)),qt=Ue[hr.key];qt&&qt.findMatches(J.symbolInstances,D,ne)}}for(var Ve=0;Ve<J.symbolInstances.length;Ve++){var Qe=J.symbolInstances.get(Ve);Qe.crossTileID||(Qe.crossTileID=q.generate(),ne[Qe.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],Xt=ft.getBucket(D);!Xt||D.id!==Xt.layerIds[0]||(Xt.bucketInstanceId||(Xt.bucketInstanceId=++this.maxBucketInstanceId),K.addBucket(ft.tileID,Xt,this.crossTileIDs)&&(de=!0),ne[Xt.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 pl=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"]),Os=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 k,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 Xt=ft.every(function(qt){return qt});if(Xt)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 Xt=K._layers[ft];Xt.source===Ue.id&&K._validateLayer(Xt)}}}})}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(Os,!1)},D.prototype._load=function(q,K){if(!(K&&pl(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(Xt){return Xt.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=_(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 Xt={};for(var hr in this.sourceCaches){var qt=this.sourceCaches[hr];Xt[hr]=qt.used,qt.used=!1}for(var Ve=0,Qe=this._order;Ve<Qe.length;Ve+=1){var at=Qe[Ve],Ct=this._layers[at];Ct.recalculate(q,this._availableImages),!Ct.isHidden(q.zoom)&&Ct.source&&(this.sourceCaches[Ct.source].used=!0)}for(var Ot in Xt){var Rt=this.sourceCaches[Ot];Xt[Ot]!==Rt.used&&Rt.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(),pl(this,i.validateStyle(q)))return!1;q=i.clone$1(q),q.layers=Fa(q.layers);var de=An(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(pl(this,i.validateCustomStyleLayer(q)))return;we=i.createStyleLayer(q)}else{if(typeof q.source=="object"&&(this.addSource(ne,q.source),q=i.clone$1(q),q=i.extend(q,{source:ne})),this._validate(i.validateStyle.layer,"layers."+ne,q,{arrayIndex:-1},de))return;we=i.createStyleLayer(q),this._validateLayer(we),we.setEventedParent(this,{layer:{id:ne}}),this._serializedLayers[we.id]=we.serialize()}var Ue=K?this._order.indexOf(K):this._order.length;if(K&&Ue===-1){this.fire(new i.ErrorEvent(new Error('Layer with id "'+K+'" does not exist on this map.')));return}if(this._order.splice(Ue,0,ne),this._layerOrderChanged=!0,this._layers[ne]=we,this._removedLayers[ne]&&we.source&&we.type!=="custom"){var ft=this._removedLayers[ne];delete this._removedLayers[ne],ft.type!==we.type?this._updatedSources[we.source]="clear":(this._updatedSources[we.source]="reload",this.sourceCaches[we.source].pause())}this._updateLayer(we),we.onAdd&&we.onAdd(this.map)},D.prototype.moveLayer=function(q,K){this._checkLoaded(),this._changed=!0;var de=this._layers[q];if(!de){this.fire(new i.ErrorEvent(new Error("The layer '"+q+"' does not exist in the map's style and cannot be moved.")));return}if(q!==K){var ne=this._order.indexOf(q);this._order.splice(ne,1);var we=K?this._order.indexOf(K):this._order.length;if(K&&we===-1){this.fire(new i.ErrorEvent(new Error('Layer with id "'+K+'" does not exist on this map.')));return}this._order.splice(we,0,q),this._layerOrderChanged=!0}},D.prototype.removeLayer=function(q){this._checkLoaded();var K=this._layers[q];if(!K){this.fire(new i.ErrorEvent(new Error("The layer '"+q+"' does not exist in the map's style and cannot be removed.")));return}K.setEventedParent(null);var de=this._order.indexOf(q);this._order.splice(de,1),this._layerOrderChanged=!0,this._changed=!0,this._removedLayers[q]=K,delete this._layers[q],delete this._serializedLayers[q],delete this._updatedLayers[q],delete this._updatedPaintProps[q],K.onRemove&&K.onRemove(this.map)},D.prototype.getLayer=function(q){return this._layers[q]},D.prototype.hasLayer=function(q){return q in this._layers},D.prototype.setLayerZoomRange=function(q,K,de){this._checkLoaded();var ne=this.getLayer(q);if(!ne){this.fire(new i.ErrorEvent(new Error("The layer '"+q+"' does not exist in the map's style and cannot have zoom extent.")));return}ne.minzoom===K&&ne.maxzoom===de||(K!=null&&(ne.minzoom=K),de!=null&&(ne.maxzoom=de),this._updateLayer(ne))},D.prototype.setFilter=function(q,K,de){de===void 0&&(de={}),this._checkLoaded();var ne=this.getLayer(q);if(!ne){this.fire(new i.ErrorEvent(new Error("The layer '"+q+"' does not exist in the map's style and cannot be filtered.")));return}if(!i.deepEqual(ne.filter,K)){if(K==null){ne.filter=void 0,this._updateLayer(ne);return}this._validate(i.validateStyle.filter,"layers."+ne.id+".filter",K,null,de)||(ne.filter=i.clone$1(K),this._updateLayer(ne))}},D.prototype.getFilter=function(q){return i.clone$1(this.getLayer(q).filter)},D.prototype.setLayoutProperty=function(q,K,de,ne){ne===void 0&&(ne={}),this._checkLoaded();var we=this.getLayer(q);if(!we){this.fire(new i.ErrorEvent(new Error("The layer '"+q+"' does not exist in the map's style and cannot be styled.")));return}i.deepEqual(we.getLayoutProperty(K),de)||(we.setLayoutProperty(K,de,ne),this._updateLayer(we))},D.prototype.getLayoutProperty=function(q,K){var de=this.getLayer(q);if(!de){this.fire(new i.ErrorEvent(new Error("The layer '"+q+"' does not exist in the map's style.")));return}return de.getLayoutProperty(K)},D.prototype.setPaintProperty=function(q,K,de,ne){ne===void 0&&(ne={}),this._checkLoaded();var we=this.getLayer(q);if(!we){this.fire(new i.ErrorEvent(new Error("The layer '"+q+"' does not exist in the map's style and cannot be styled.")));return}if(!i.deepEqual(we.getPaintProperty(K),de)){var Ue=we.setPaintProperty(K,de,ne);Ue&&this._updateLayer(we),this._changed=!0,this._updatedPaintProps[q]=!0}},D.prototype.getPaintProperty=function(q,K){return this.getLayer(q).getPaintProperty(K)},D.prototype.setFeatureState=function(q,K){this._checkLoaded();var de=q.source,ne=q.sourceLayer,we=this.sourceCaches[de];if(we===void 0){this.fire(new i.ErrorEvent(new Error("The source '"+de+"' does not exist in the map's style.")));return}var Ue=we.getSource().type;if(Ue==="geojson"&&ne){this.fire(new i.ErrorEvent(new Error("GeoJSON sources cannot have a sourceLayer parameter.")));return}if(Ue==="vector"&&!ne){this.fire(new i.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")));return}q.id===void 0&&this.fire(new i.ErrorEvent(new Error("The feature id parameter must be provided."))),we.setFeatureState(ne,q.id,K)},D.prototype.removeFeatureState=function(q,K){this._checkLoaded();var de=q.source,ne=this.sourceCaches[de];if(ne===void 0){this.fire(new i.ErrorEvent(new Error("The source '"+de+"' does not exist in the map's style.")));return}var we=ne.getSource().type,Ue=we==="vector"?q.sourceLayer:void 0;if(we==="vector"&&!Ue){this.fire(new i.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")));return}if(K&&typeof q.id!="string"&&typeof q.id!="number"){this.fire(new i.ErrorEvent(new Error("A feature id is required to remove its specific state property.")));return}ne.removeFeatureState(Ue,q.id,K)},D.prototype.getFeatureState=function(q){this._checkLoaded();var K=q.source,de=q.sourceLayer,ne=this.sourceCaches[K];if(ne===void 0){this.fire(new i.ErrorEvent(new Error("The source '"+K+"' does not exist in the map's style.")));return}var we=ne.getSource().type;if(we==="vector"&&!de){this.fire(new i.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")));return}return q.id===void 0&&this.fire(new i.ErrorEvent(new Error("The feature id parameter must be provided."))),ne.getFeatureState(de,q.id)},D.prototype.getTransition=function(){return i.extend({duration:300,delay:0},this.stylesheet&&this.stylesheet.transition)},D.prototype.serialize=function(){return i.filterObject({version:this.stylesheet.version,name:this.stylesheet.name,metadata:this.stylesheet.metadata,light:this.stylesheet.light,center:this.stylesheet.center,zoom:this.stylesheet.zoom,bearing:this.stylesheet.bearing,pitch:this.stylesheet.pitch,sprite:this.stylesheet.sprite,glyphs:this.stylesheet.glyphs,transition:this.stylesheet.transition,sources:i.mapObject(this.sourceCaches,function(q){return q.serialize()}),layers:this._serializeLayers(this._order)},function(q){return q!==void 0})},D.prototype._updateLayer=function(q){this._updatedLayers[q.id]=!0,q.source&&!this._updatedSources[q.source]&&this.sourceCaches[q.source].getSource().type!=="raster"&&(this._updatedSources[q.source]="reload",this.sourceCaches[q.source].pause()),this._changed=!0},D.prototype._flattenAndSortRenderedFeatures=function(q){for(var K=this,de=function(Ti){return K._layers[Ti].type==="fill-extrusion"},ne={},we=[],Ue=this._order.length-1;Ue>=0;Ue--){var ft=this._order[Ue];if(de(ft)){ne[ft]=Ue;for(var Xt=0,hr=q;Xt<hr.length;Xt+=1){var qt=hr[Xt],Ve=qt[ft];if(Ve)for(var Qe=0,at=Ve;Qe<at.length;Qe+=1){var Ct=at[Qe];we.push(Ct)}}}}we.sort(function(Ti,gn){return gn.intersectionZ-Ti.intersectionZ});for(var Ot=[],Rt=this._order.length-1;Rt>=0;Rt--){var Bt=this._order[Rt];if(de(Bt))for(var Dt=we.length-1;Dt>=0;Dt--){var yt=we[Dt].feature;if(ne[yt.layer.id]<Rt)break;Ot.push(yt),we.pop()}else for(var Pt=0,ht=q;Pt<ht.length;Pt+=1){var ur=ht[Pt],br=ur[Bt];if(br)for(var Ur=0,Di=br;Ur<Di.length;Ur+=1){var fi=Di[Ur];Ot.push(fi.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],Xt=this._layers[ft];if(!Xt)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[Xt.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?ut(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:pl(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,Xt={},hr=0,qt=this._order;hr<qt.length;hr+=1){var Ve=qt[hr],Qe=this._layers[Ve];if(Qe.type==="symbol"){if(!Xt[Qe.source]){var at=this.sourceCaches[Qe.source];Xt[Qe.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 Ct=this.crossTileSymbolIndex.addLayer(Qe,Xt[Qe.source],q.center.lng);Ue=Ue||Ct}}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,Xt),this.pauseablePlacement.isDone()&&(this.placement=this.pauseablePlacement.commit(i.browser.now()),ft=!0),Ue&&this.pauseablePlacement.placement.setStale()),ft||Ue)for(var Ot=0,Rt=this._order;Ot<Rt.length;Ot+=1){var Bt=Rt[Ot],Dt=this._layers[Bt];Dt.type==="symbol"&&this.placement.updateLayerOpacities(Dt,Xt[Dt.source])}var yt=!this.pauseablePlacement.isDone()||this.placement.hasTransitions(i.browser.now());return yt},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=Fe,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;}`,Vh=`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
}`,Lf="attribute vec2 a_pos;uniform mat4 u_matrix;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);}",cs=`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);}`,fl="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
}`,Es=`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;}`,Hs=`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;}",ps="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);}",qs="uniform highp vec4 u_color;uniform sampler2D u_overlay;varying vec2 v_uv;void main() {vec4 overlay_color=texture2D(u_overlay,v_uv);gl_FragColor=mix(u_color,overlay_color,overlay_color.a);}",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
}`,yf=`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;}`,Bl=`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
}`,wh=`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
}`,_f="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
}`,Nl=`
#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);}`,gs=`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;}",Gh=`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
}`,Th=`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);}`,js=Us(Cf,sc),Eu=Us(Vh,Lf),Dc=Us(cs,nf),ks=Us(Vf,Jl),bc=Us(fl,lc),hu=Us(Fu,Es),_u=Us(Hs,Go),nl=Us(ps,uc),nh=Us(xl,Gu),Ah=Us(qs,ad),zu=Us(Po,od),Fc=Us(Yo,Pa),wc=Us(af,Hu),bd=Us(bl,Gf),xf=Us(Ic,yf),Pf=Us(Bl,wh),Ou=Us(Qf,_f),bf=Us(Yc,eh),jl=Us(th,ju),lf=Us(Hf,cc),Hh=Us(of,Nl),If=Us(Kc,Rc),Cs=Us(gs,jf),du=Us(Gh,rh),ku=Us(sf,Th),Wf=Us(Mu,ih);function Us(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,Xt,hr,qt){return we[qt]=!0,ft==="define"?`
#ifndef HAS_UNIFORM_u_`+qt+`
varying `+Xt+" "+hr+" "+qt+`;
#else
uniform `+Xt+" "+hr+" u_"+qt+`;
#endif
`:`
#ifdef HAS_UNIFORM_u_`+qt+`
`+Xt+" "+hr+" "+qt+" = u_"+qt+`;
#endif
`}),D=D.replace(J,function(Ue,ft,Xt,hr,qt){var Ve=hr==="float"?"vec2":"vec4",Qe=qt.match(/color/)?"color":Ve;return we[qt]?ft==="define"?`
#ifndef HAS_UNIFORM_u_`+qt+`
uniform lowp float u_`+qt+`_t;
attribute `+Xt+" "+Ve+" a_"+qt+`;
varying `+Xt+" "+hr+" "+qt+`;
#else
uniform `+Xt+" "+hr+" u_"+qt+`;
#endif
`:Qe==="vec4"?`
#ifndef HAS_UNIFORM_u_`+qt+`
`+qt+" = a_"+qt+`;
#else
`+Xt+" "+hr+" "+qt+" = u_"+qt+`;
#endif
`:`
#ifndef HAS_UNIFORM_u_`+qt+`
`+qt+" = unpack_mix_"+Qe+"(a_"+qt+", u_"+qt+`_t);
#else
`+Xt+" "+hr+" "+qt+" = u_"+qt+`;
#endif
`:ft==="define"?`
#ifndef HAS_UNIFORM_u_`+qt+`
uniform lowp float u_`+qt+`_t;
attribute `+Xt+" "+Ve+" a_"+qt+`;
#else
uniform `+Xt+" "+hr+" u_"+qt+`;
#endif
`:Qe==="vec4"?`
#ifndef HAS_UNIFORM_u_`+qt+`
`+Xt+" "+hr+" "+qt+" = a_"+qt+`;
#else
`+Xt+" "+hr+" "+qt+" = u_"+qt+`;
#endif
`:`
#ifndef HAS_UNIFORM_u_`+qt+`
`+Xt+" "+hr+" "+qt+" = unpack_mix_"+Qe+"(a_"+qt+", u_"+qt+`_t);
#else
`+Xt+" "+hr+" "+qt+" = u_"+qt+`;
#endif
`}),{fragmentSource:Y,vertexSource:D,staticAttributes:q,staticUniforms:ne}}var wf=Object.freeze({__proto__:null,prelude:js,background:Eu,backgroundPattern:Dc,circle:ks,clippingMask:bc,heatmap:hu,heatmapTexture:_u,collisionBox:nl,collisionCircle:nh,debug:Ah,fill:zu,fillOutline:Fc,fillOutlinePattern:wc,fillPattern:bd,fillExtrusion:xf,fillExtrusionPattern:Pf,hillshadePrepare:Ou,hillshade:bf,line:jl,lineGradient:lf,linePattern:Hh,lineSDF:If,raster:Cs,symbolIcon:du,symbolSDF:ku,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,Xt=0;!ft&&Xt<K.length;Xt++)this.boundPaintVertexBuffers[Xt]!==K[Xt]&&(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,Xt=this.context,hr=Xt.gl;if(Xt.extVertexArrayObject)this.vao&&this.destroy(),this.vao=Xt.extVertexArrayObject.createVertexArrayOES(),Xt.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=Xt.currentNumAttributes||0;for(var qt=ft;qt<Ue;qt++)hr.disableVertexAttribArray(qt)}J.enableAttributes(hr,D);for(var Ve=0,Qe=q;Ve<Qe.length;Ve+=1){var at=Qe[Ve];at.enableAttributes(hr,D)}ne&&ne.enableAttributes(hr,D),we&&we.enableAttributes(hr,D),J.bind(),J.setVertexAttribPointers(hr,D,de);for(var Ct=0,Ot=q;Ct<Ot.length;Ct+=1){var Rt=Ot[Ct];Rt.bind(),Rt.setVertexAttribPointers(hr,D,de)}ne&&(ne.bind(),ne.setVertexAttribPointers(hr,D,de)),K&&K.bind(),we&&(we.bind(),we.setVertexAttribPointers(hr,D,de)),Xt.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 Rf=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():[],Xt=Ue.concat(ft),hr=q.staticUniforms?Wu(q.staticUniforms):[],qt=K?K.getBinderUniforms():[],Ve=hr.concat(qt),Qe=[],at=0,Ct=Ve;at<Ct.length;at+=1){var Ot=Ct[at];Qe.indexOf(Ot)<0&&Qe.push(Ot)}var Rt=K?K.defines():[];ne&&Rt.push("#define OVERDRAW_INSPECTOR;");var Bt=Rt.concat(js.fragmentSource,q.fragmentSource).join(`
`),Dt=Rt.concat(js.vertexSource,q.vertexSource).join(`
`),yt=we.createShader(we.FRAGMENT_SHADER);if(we.isContextLost()){this.failedToCreate=!0;return}we.shaderSource(yt,Bt),we.compileShader(yt),we.attachShader(this.program,yt);var Pt=we.createShader(we.VERTEX_SHADER);if(we.isContextLost()){this.failedToCreate=!0;return}we.shaderSource(Pt,Dt),we.compileShader(Pt),we.attachShader(this.program,Pt),this.attributes={};var ht={};this.numAttributes=Xt.length;for(var ur=0;ur<this.numAttributes;ur++)Xt[ur]&&(we.bindAttribLocation(this.program,ur,Xt[ur]),this.attributes[Xt[ur]]=ur);we.linkProgram(this.program),we.deleteShader(Pt),we.deleteShader(yt);for(var br=0;br<Qe.length;br++){var Ur=Qe[br];if(Ur&&!ht[Ur]){var Di=we.getUniformLocation(this.program,Ur);Di&&(ht[Ur]=Di)}}this.fixedUniforms=de(D,ht),this.binderUniforms=K?K.getUniforms(D,ht):[]};Rf.prototype.draw=function(D,J,q,K,de,ne,we,Ue,ft,Xt,hr,qt,Ve,Qe,at,Ct){var Ot,Rt=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]);Qe&&Qe.setUniforms(D,this.binderUniforms,qt,{zoom:Ve});for(var Dt=(Ot={},Ot[Rt.LINES]=2,Ot[Rt.TRIANGLES]=3,Ot[Rt.LINE_STRIP]=1,Ot)[J],yt=0,Pt=hr.get();yt<Pt.length;yt+=1){var ht=Pt[yt],ur=ht.vaos||(ht.vaos={}),br=ur[Ue]||(ur[Ue]=new zc);br.bind(D,this,ft,Qe?Qe.getPaintVertexBuffers():[],Xt,ht.vertexOffset,at,Ct),Rt.drawElements(J,ht.primitiveLength*Dt,Rt.UNSIGNED_SHORT,ht.primitiveOffset*Dt*2)}}};function Xu(Y,D,J){var q=1/As(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),Xt=q.tileSize*Math.pow(2,J.transform.tileZoom)/ft,hr=Xt*(q.tileID.canonical.x+q.tileID.wrap*ft),qt=Xt*q.tileID.canonical.y;return{u_image:0,u_pattern_tl_a:K.tl,u_pattern_br_a:K.br,u_pattern_tl_b:de.tl,u_pattern_br_b:de.br,u_texsize:[we,Ue],u_mix:D.t,u_pattern_size_a:K.displaySize,u_pattern_size_b:de.displaySize,u_scale_a:D.fromScale,u_scale_b:D.toScale,u_tile_units_to_pixels:1/As(q,1,J.transform.tileZoom),u_pixel_coord_upper:[hr>>16,qt>>16],u_pixel_coord_lower:[hr&65535,qt&65535]}}var Xf=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_lightpos:new i.Uniform3f(Y,D.u_lightpos),u_lightintensity:new i.Uniform1f(Y,D.u_lightintensity),u_lightcolor:new i.Uniform3f(Y,D.u_lightcolor),u_vertical_gradient:new i.Uniform1f(Y,D.u_vertical_gradient),u_opacity:new i.Uniform1f(Y,D.u_opacity)}},Wl=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_lightpos:new i.Uniform3f(Y,D.u_lightpos),u_lightintensity:new i.Uniform1f(Y,D.u_lightintensity),u_lightcolor:new i.Uniform3f(Y,D.u_lightcolor),u_vertical_gradient:new i.Uniform1f(Y,D.u_vertical_gradient),u_height_factor:new i.Uniform1f(Y,D.u_height_factor),u_image:new i.Uniform1i(Y,D.u_image),u_texsize:new i.Uniform2f(Y,D.u_texsize),u_pixel_coord_upper:new i.Uniform2f(Y,D.u_pixel_coord_upper),u_pixel_coord_lower:new i.Uniform2f(Y,D.u_pixel_coord_lower),u_scale:new i.Uniform3f(Y,D.u_scale),u_fade:new i.Uniform1f(Y,D.u_fade),u_opacity:new i.Uniform1f(Y,D.u_opacity)}},ah=function(Y,D,J,q){var K=D.style.light,de=K.properties.get("position"),ne=[de.x,de.y,de.z],we=i.create$1();K.properties.get("anchor")==="viewport"&&i.fromRotation(we,-D.transform.angle),i.transformMat3(ne,ne,we);var Ue=K.properties.get("color");return{u_matrix:Y,u_lightpos:ne,u_lightintensity:K.properties.get("intensity"),u_lightcolor:[Ue.r,Ue.g,Ue.b],u_vertical_gradient:+J,u_opacity:q}},Zu=function(Y,D,J,q,K,de,ne){return i.extend(ah(Y,D,J,q),Xu(de,D,ne),{u_height_factor:-Math.pow(2,K.overscaledZ)/ne.tileSize/8})},Oc=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix)}},Tc=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_image:new i.Uniform1i(Y,D.u_image),u_texsize:new i.Uniform2f(Y,D.u_texsize),u_pixel_coord_upper:new i.Uniform2f(Y,D.u_pixel_coord_upper),u_pixel_coord_lower:new i.Uniform2f(Y,D.u_pixel_coord_lower),u_scale:new i.Uniform3f(Y,D.u_scale),u_fade:new i.Uniform1f(Y,D.u_fade)}},wl=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_world:new i.Uniform2f(Y,D.u_world)}},vu=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_world:new i.Uniform2f(Y,D.u_world),u_image:new i.Uniform1i(Y,D.u_image),u_texsize:new i.Uniform2f(Y,D.u_texsize),u_pixel_coord_upper:new i.Uniform2f(Y,D.u_pixel_coord_upper),u_pixel_coord_lower:new i.Uniform2f(Y,D.u_pixel_coord_lower),u_scale:new i.Uniform3f(Y,D.u_scale),u_fade:new i.Uniform1f(Y,D.u_fade)}},qc=function(Y){return{u_matrix:Y}},cf=function(Y,D,J,q){return i.extend(qc(Y),Xu(J,D,q))},fc=function(Y,D){return{u_matrix:Y,u_world:D}},Bc=function(Y,D,J,q,K){return i.extend(cf(Y,D,J,q),{u_world:K})},At=function(Y,D){return{u_camera_to_center_distance:new i.Uniform1f(Y,D.u_camera_to_center_distance),u_scale_with_map:new i.Uniform1i(Y,D.u_scale_with_map),u_pitch_with_map:new i.Uniform1i(Y,D.u_pitch_with_map),u_extrude_scale:new i.Uniform2f(Y,D.u_extrude_scale),u_device_pixel_ratio:new i.Uniform1f(Y,D.u_device_pixel_ratio),u_matrix:new i.UniformMatrix4f(Y,D.u_matrix)}},Wt=function(Y,D,J,q){var K=Y.transform,de,ne;if(q.paint.get("circle-pitch-alignment")==="map"){var we=As(J,1,K.zoom);de=!0,ne=[we,we]}else de=!1,ne=K.pixelsToGLUnits;return{u_camera_to_center_distance:K.cameraToCenterDistance,u_scale_with_map:+(q.paint.get("circle-pitch-scale")==="map"),u_matrix:Y.translatePosMatrix(D.posMatrix,J,q.paint.get("circle-translate"),q.paint.get("circle-translate-anchor")),u_pitch_with_map:+de,u_device_pixel_ratio:i.browser.devicePixelRatio,u_extrude_scale:ne}},Cr=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_camera_to_center_distance:new i.Uniform1f(Y,D.u_camera_to_center_distance),u_pixels_to_tile_units:new i.Uniform1f(Y,D.u_pixels_to_tile_units),u_extrude_scale:new i.Uniform2f(Y,D.u_extrude_scale),u_overscale_factor:new i.Uniform1f(Y,D.u_overscale_factor)}},Ar=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_inv_matrix:new i.UniformMatrix4f(Y,D.u_inv_matrix),u_camera_to_center_distance:new i.Uniform1f(Y,D.u_camera_to_center_distance),u_viewport_size:new i.Uniform2f(Y,D.u_viewport_size)}},Kr=function(Y,D,J){var q=As(J,1,D.zoom),K=Math.pow(2,D.zoom-J.tileID.overscaledZ),de=J.tileID.overscaleFactor();return{u_matrix:Y,u_camera_to_center_distance:D.cameraToCenterDistance,u_pixels_to_tile_units:q,u_extrude_scale:[D.pixelsToGLUnits[0]/(q*K),D.pixelsToGLUnits[1]/(q*K)],u_overscale_factor:de}},ki=function(Y,D,J){return{u_matrix:Y,u_inv_matrix:D,u_camera_to_center_distance:J.cameraToCenterDistance,u_viewport_size:[J.width,J.height]}},Xi=function(Y,D){return{u_color:new i.UniformColor(Y,D.u_color),u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_overlay:new i.Uniform1i(Y,D.u_overlay),u_overlay_scale:new i.Uniform1f(Y,D.u_overlay_scale)}},dn=function(Y,D,J){return J===void 0&&(J=1),{u_matrix:Y,u_color:D,u_overlay:0,u_overlay_scale:J}},wn=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix)}},Nn=function(Y){return{u_matrix:Y}},Yi=function(Y,D){return{u_extrude_scale:new i.Uniform1f(Y,D.u_extrude_scale),u_intensity:new i.Uniform1f(Y,D.u_intensity),u_matrix:new i.UniformMatrix4f(Y,D.u_matrix)}},Qi=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_world:new i.Uniform2f(Y,D.u_world),u_image:new i.Uniform1i(Y,D.u_image),u_color_ramp:new i.Uniform1i(Y,D.u_color_ramp),u_opacity:new i.Uniform1f(Y,D.u_opacity)}},on=function(Y,D,J,q){return{u_matrix:Y,u_extrude_scale:As(D,1,J),u_intensity:q}},Fi=function(Y,D,J,q){var K=i.create();i.ortho(K,0,Y.width,Y.height,0,0,1);var de=Y.context.gl;return{u_matrix:K,u_world:[de.drawingBufferWidth,de.drawingBufferHeight],u_image:J,u_color_ramp:q,u_opacity:D.paint.get("heatmap-opacity")}},$n=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_image:new i.Uniform1i(Y,D.u_image),u_latrange:new i.Uniform2f(Y,D.u_latrange),u_light:new i.Uniform2f(Y,D.u_light),u_shadow:new i.UniformColor(Y,D.u_shadow),u_highlight:new i.UniformColor(Y,D.u_highlight),u_accent:new i.UniformColor(Y,D.u_accent)}},Ca=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_image:new i.Uniform1i(Y,D.u_image),u_dimension:new i.Uniform2f(Y,D.u_dimension),u_zoom:new i.Uniform1f(Y,D.u_zoom),u_unpack:new i.Uniform4f(Y,D.u_unpack)}},Ra=function(Y,D,J){var q=J.paint.get("hillshade-shadow-color"),K=J.paint.get("hillshade-highlight-color"),de=J.paint.get("hillshade-accent-color"),ne=J.paint.get("hillshade-illumination-direction")*(Math.PI/180);J.paint.get("hillshade-illumination-anchor")==="viewport"&&(ne-=Y.transform.angle);var we=!Y.options.moving;return{u_matrix:Y.transform.calculatePosMatrix(D.tileID.toUnwrapped(),we),u_image:0,u_latrange:Na(Y,D.tileID),u_light:[J.paint.get("hillshade-exaggeration"),ne],u_shadow:q,u_highlight:K,u_accent:de}},La=function(Y,D){var J=D.stride,q=i.create();return i.ortho(q,0,i.EXTENT,-i.EXTENT,0,0,1),i.translate(q,q,[0,-i.EXTENT,0]),{u_matrix:q,u_image:1,u_dimension:[J,J],u_zoom:Y.overscaledZ,u_unpack:D.getUnpackVector()}};function Na(Y,D){var J=Math.pow(2,D.canonical.z),q=D.canonical.y;return[new i.MercatorCoordinate(0,q/J).toLngLat().lat,new i.MercatorCoordinate(0,(q+1)/J).toLngLat().lat]}var Yn=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_ratio:new i.Uniform1f(Y,D.u_ratio),u_device_pixel_ratio:new i.Uniform1f(Y,D.u_device_pixel_ratio),u_units_to_pixels:new i.Uniform2f(Y,D.u_units_to_pixels)}},Dn=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_ratio:new i.Uniform1f(Y,D.u_ratio),u_device_pixel_ratio:new i.Uniform1f(Y,D.u_device_pixel_ratio),u_units_to_pixels:new i.Uniform2f(Y,D.u_units_to_pixels),u_image:new i.Uniform1i(Y,D.u_image),u_image_height:new i.Uniform1f(Y,D.u_image_height)}},Ka=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_texsize:new i.Uniform2f(Y,D.u_texsize),u_ratio:new i.Uniform1f(Y,D.u_ratio),u_device_pixel_ratio:new i.Uniform1f(Y,D.u_device_pixel_ratio),u_image:new i.Uniform1i(Y,D.u_image),u_units_to_pixels:new i.Uniform2f(Y,D.u_units_to_pixels),u_scale:new i.Uniform3f(Y,D.u_scale),u_fade:new i.Uniform1f(Y,D.u_fade)}},bo=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_ratio:new i.Uniform1f(Y,D.u_ratio),u_device_pixel_ratio:new i.Uniform1f(Y,D.u_device_pixel_ratio),u_units_to_pixels:new i.Uniform2f(Y,D.u_units_to_pixels),u_patternscale_a:new i.Uniform2f(Y,D.u_patternscale_a),u_patternscale_b:new i.Uniform2f(Y,D.u_patternscale_b),u_sdfgamma:new i.Uniform1f(Y,D.u_sdfgamma),u_image:new i.Uniform1i(Y,D.u_image),u_tex_y_a:new i.Uniform1f(Y,D.u_tex_y_a),u_tex_y_b:new i.Uniform1f(Y,D.u_tex_y_b),u_mix:new i.Uniform1f(Y,D.u_mix)}},Xo=function(Y,D,J){var q=Y.transform;return{u_matrix:ml(Y,D,J),u_ratio:1/As(D,1,q.zoom),u_device_pixel_ratio:i.browser.devicePixelRatio,u_units_to_pixels:[1/q.pixelsToGLUnits[0],1/q.pixelsToGLUnits[1]]}},Ss=function(Y,D,J,q){return i.extend(Xo(Y,D,J),{u_image:0,u_image_height:q})},as=function(Y,D,J,q){var K=Y.transform,de=Ho(D,K);return{u_matrix:ml(Y,D,J),u_texsize:D.imageAtlasTexture.size,u_ratio:1/As(D,1,K.zoom),u_device_pixel_ratio:i.browser.devicePixelRatio,u_image:0,u_scale:[de,q.fromScale,q.toScale],u_fade:q.t,u_units_to_pixels:[1/K.pixelsToGLUnits[0],1/K.pixelsToGLUnits[1]]}},ws=function(Y,D,J,q,K){var de=Y.transform,ne=Y.lineAtlas,we=Ho(D,de),Ue=J.layout.get("line-cap")==="round",ft=ne.getDash(q.from,Ue),Xt=ne.getDash(q.to,Ue),hr=ft.width*K.fromScale,qt=Xt.width*K.toScale;return i.extend(Xo(Y,D,J),{u_patternscale_a:[we/hr,-ft.height/2],u_patternscale_b:[we/qt,-Xt.height/2],u_sdfgamma:ne.width/(Math.min(hr,qt)*256*i.browser.devicePixelRatio)/2,u_image:0,u_tex_y_a:ft.y,u_tex_y_b:Xt.y,u_mix:K.t})};function Ho(Y,D){return 1/As(Y,1,D.tileZoom)}function ml(Y,D,J){return Y.translatePosMatrix(D.tileID.posMatrix,D,J.paint.get("line-translate"),J.paint.get("line-translate-anchor"))}var Ws=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_tl_parent:new i.Uniform2f(Y,D.u_tl_parent),u_scale_parent:new i.Uniform1f(Y,D.u_scale_parent),u_buffer_scale:new i.Uniform1f(Y,D.u_buffer_scale),u_fade_t:new i.Uniform1f(Y,D.u_fade_t),u_opacity:new i.Uniform1f(Y,D.u_opacity),u_image0:new i.Uniform1i(Y,D.u_image0),u_image1:new i.Uniform1i(Y,D.u_image1),u_brightness_low:new i.Uniform1f(Y,D.u_brightness_low),u_brightness_high:new i.Uniform1f(Y,D.u_brightness_high),u_saturation_factor:new i.Uniform1f(Y,D.u_saturation_factor),u_contrast_factor:new i.Uniform1f(Y,D.u_contrast_factor),u_spin_weights:new i.Uniform3f(Y,D.u_spin_weights)}},Ls=function(Y,D,J,q,K){return{u_matrix:Y,u_tl_parent:D,u_scale_parent:J,u_buffer_scale:1,u_fade_t:q.mix,u_opacity:q.opacity*K.paint.get("raster-opacity"),u_image0:0,u_image1:1,u_brightness_low:K.paint.get("raster-brightness-min"),u_brightness_high:K.paint.get("raster-brightness-max"),u_saturation_factor:ys(K.paint.get("raster-saturation")),u_contrast_factor:no(K.paint.get("raster-contrast")),u_spin_weights:va(K.paint.get("raster-hue-rotate"))}};function va(Y){Y*=Math.PI/180;var D=Math.sin(Y),J=Math.cos(Y);return[(2*J+1)/3,(-Math.sqrt(3)*D-J+1)/3,(Math.sqrt(3)*D-J+1)/3]}function no(Y){return Y>0?1/(1-Y):1+Y}function ys(Y){return Y>0?1-1/(1.001-Y):-Y}var rs=function(Y,D){return{u_is_size_zoom_constant:new i.Uniform1i(Y,D.u_is_size_zoom_constant),u_is_size_feature_constant:new i.Uniform1i(Y,D.u_is_size_feature_constant),u_size_t:new i.Uniform1f(Y,D.u_size_t),u_size:new i.Uniform1f(Y,D.u_size),u_camera_to_center_distance:new i.Uniform1f(Y,D.u_camera_to_center_distance),u_pitch:new i.Uniform1f(Y,D.u_pitch),u_rotate_symbol:new i.Uniform1i(Y,D.u_rotate_symbol),u_aspect_ratio:new i.Uniform1f(Y,D.u_aspect_ratio),u_fade_change:new i.Uniform1f(Y,D.u_fade_change),u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_label_plane_matrix:new i.UniformMatrix4f(Y,D.u_label_plane_matrix),u_coord_matrix:new i.UniformMatrix4f(Y,D.u_coord_matrix),u_is_text:new i.Uniform1i(Y,D.u_is_text),u_pitch_with_map:new i.Uniform1i(Y,D.u_pitch_with_map),u_texsize:new i.Uniform2f(Y,D.u_texsize),u_texture:new i.Uniform1i(Y,D.u_texture)}},$l=function(Y,D){return{u_is_size_zoom_constant:new i.Uniform1i(Y,D.u_is_size_zoom_constant),u_is_size_feature_constant:new i.Uniform1i(Y,D.u_is_size_feature_constant),u_size_t:new i.Uniform1f(Y,D.u_size_t),u_size:new i.Uniform1f(Y,D.u_size),u_camera_to_center_distance:new i.Uniform1f(Y,D.u_camera_to_center_distance),u_pitch:new i.Uniform1f(Y,D.u_pitch),u_rotate_symbol:new i.Uniform1i(Y,D.u_rotate_symbol),u_aspect_ratio:new i.Uniform1f(Y,D.u_aspect_ratio),u_fade_change:new i.Uniform1f(Y,D.u_fade_change),u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_label_plane_matrix:new i.UniformMatrix4f(Y,D.u_label_plane_matrix),u_coord_matrix:new i.UniformMatrix4f(Y,D.u_coord_matrix),u_is_text:new i.Uniform1i(Y,D.u_is_text),u_pitch_with_map:new i.Uniform1i(Y,D.u_pitch_with_map),u_texsize:new i.Uniform2f(Y,D.u_texsize),u_texture:new i.Uniform1i(Y,D.u_texture),u_gamma_scale:new i.Uniform1f(Y,D.u_gamma_scale),u_device_pixel_ratio:new i.Uniform1f(Y,D.u_device_pixel_ratio),u_is_halo:new i.Uniform1i(Y,D.u_is_halo)}},Cu=function(Y,D){return{u_is_size_zoom_constant:new i.Uniform1i(Y,D.u_is_size_zoom_constant),u_is_size_feature_constant:new i.Uniform1i(Y,D.u_is_size_feature_constant),u_size_t:new i.Uniform1f(Y,D.u_size_t),u_size:new i.Uniform1f(Y,D.u_size),u_camera_to_center_distance:new i.Uniform1f(Y,D.u_camera_to_center_distance),u_pitch:new i.Uniform1f(Y,D.u_pitch),u_rotate_symbol:new i.Uniform1i(Y,D.u_rotate_symbol),u_aspect_ratio:new i.Uniform1f(Y,D.u_aspect_ratio),u_fade_change:new i.Uniform1f(Y,D.u_fade_change),u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_label_plane_matrix:new i.UniformMatrix4f(Y,D.u_label_plane_matrix),u_coord_matrix:new i.UniformMatrix4f(Y,D.u_coord_matrix),u_is_text:new i.Uniform1i(Y,D.u_is_text),u_pitch_with_map:new i.Uniform1i(Y,D.u_pitch_with_map),u_texsize:new i.Uniform2f(Y,D.u_texsize),u_texsize_icon:new i.Uniform2f(Y,D.u_texsize_icon),u_texture:new i.Uniform1i(Y,D.u_texture),u_texture_icon:new i.Uniform1i(Y,D.u_texture_icon),u_gamma_scale:new i.Uniform1f(Y,D.u_gamma_scale),u_device_pixel_ratio:new i.Uniform1f(Y,D.u_device_pixel_ratio),u_is_halo:new i.Uniform1i(Y,D.u_is_halo)}},Yu=function(Y,D,J,q,K,de,ne,we,Ue,ft){var Xt=K.transform;return{u_is_size_zoom_constant:+(Y==="constant"||Y==="source"),u_is_size_feature_constant:+(Y==="constant"||Y==="camera"),u_size_t:D?D.uSizeT:0,u_size:D?D.uSize:0,u_camera_to_center_distance:Xt.cameraToCenterDistance,u_pitch:Xt.pitch/360*2*Math.PI,u_rotate_symbol:+J,u_aspect_ratio:Xt.width/Xt.height,u_fade_change:K.options.fadeDuration?K.symbolFadeChange:1,u_matrix:de,u_label_plane_matrix:ne,u_coord_matrix:we,u_is_text:+Ue,u_pitch_with_map:+q,u_texsize:ft,u_texture:0}},Nc=function(Y,D,J,q,K,de,ne,we,Ue,ft,Xt){var hr=K.transform;return i.extend(Yu(Y,D,J,q,K,de,ne,we,Ue,ft),{u_gamma_scale:q?Math.cos(hr._pitch)*hr.cameraToCenterDistance:1,u_device_pixel_ratio:i.browser.devicePixelRatio,u_is_halo:+Xt})},pu=function(Y,D,J,q,K,de,ne,we,Ue,ft){return i.extend(Nc(Y,D,J,q,K,de,ne,we,!0,Ue,!0),{u_texsize_icon:ft,u_texture_icon:1})},Uc=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_opacity:new i.Uniform1f(Y,D.u_opacity),u_color:new i.UniformColor(Y,D.u_color)}},xu=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_opacity:new i.Uniform1f(Y,D.u_opacity),u_image:new i.Uniform1i(Y,D.u_image),u_pattern_tl_a:new i.Uniform2f(Y,D.u_pattern_tl_a),u_pattern_br_a:new i.Uniform2f(Y,D.u_pattern_br_a),u_pattern_tl_b:new i.Uniform2f(Y,D.u_pattern_tl_b),u_pattern_br_b:new i.Uniform2f(Y,D.u_pattern_br_b),u_texsize:new i.Uniform2f(Y,D.u_texsize),u_mix:new i.Uniform1f(Y,D.u_mix),u_pattern_size_a:new i.Uniform2f(Y,D.u_pattern_size_a),u_pattern_size_b:new i.Uniform2f(Y,D.u_pattern_size_b),u_scale_a:new i.Uniform1f(Y,D.u_scale_a),u_scale_b:new i.Uniform1f(Y,D.u_scale_b),u_pixel_coord_upper:new i.Uniform2f(Y,D.u_pixel_coord_upper),u_pixel_coord_lower:new i.Uniform2f(Y,D.u_pixel_coord_lower),u_tile_units_to_pixels:new i.Uniform1f(Y,D.u_tile_units_to_pixels)}},Ac=function(Y,D,J){return{u_matrix:Y,u_opacity:D,u_color:J}},Ua=function(Y,D,J,q,K,de){return i.extend(uf(q,de,J,K),{u_matrix:Y,u_opacity:D})},oo={fillExtrusion:Xf,fillExtrusionPattern:Wl,fill:Oc,fillPattern:Tc,fillOutline:wl,fillOutlinePattern:vu,circle:At,collisionBox:Cr,collisionCircle:Ar,debug:Xi,clippingMask:wn,heatmap:Yi,heatmapTexture:Qi,hillshade:$n,hillshadePrepare:Ca,line:Yn,lineGradient:Dn,linePattern:Ka,lineSDF:bo,raster:Ws,symbolIcon:rs,symbolSDF:$l,symbolTextAndIcon:Cu,background:Uc,backgroundPattern:xu},Vc;function hc(Y,D,J,q,K,de,ne){for(var we=Y.context,Ue=we.gl,ft=Y.useProgram("collisionBox"),Xt=[],hr=0,qt=0,Ve=0;Ve<q.length;Ve++){var Qe=q[Ve],at=D.getTile(Qe),Ct=at.getBucket(J);if(Ct){var Ot=Qe.posMatrix;(K[0]!==0||K[1]!==0)&&(Ot=Y.translatePosMatrix(Qe.posMatrix,at,K,de));var Rt=ne?Ct.textCollisionBox:Ct.iconCollisionBox,Bt=Ct.collisionCircleArray;if(Bt.length>0){var Dt=i.create(),yt=Ot;i.mul(Dt,Ct.placementInvProjMatrix,Y.transform.glCoordMatrix),i.mul(Dt,Dt,Ct.placementViewportMatrix),Xt.push({circleArray:Bt,circleOffset:qt,transform:yt,invTransform:Dt}),hr+=Bt.length/4,qt=hr}Rt&&ft.draw(we,Ue.LINES,wi.disabled,Fn.disabled,Y.colorModeForRenderPass(),Er.disabled,Kr(Ot,Y.transform,at),J.id,Rt.layoutVertexBuffer,Rt.indexBuffer,Rt.segments,null,Y.transform.zoom,null,null,Rt.collisionVertexBuffer)}}if(!(!ne||!Xt.length)){var Pt=Y.useProgram("collisionCircle"),ht=new i.StructArrayLayout2f1f2i16;ht.resize(hr*4),ht._trim();for(var ur=0,br=0,Ur=Xt;br<Ur.length;br+=1)for(var Di=Ur[br],fi=0;fi<Di.circleArray.length/4;fi++){var Ti=fi*4,gn=Di.circleArray[Ti+0],rn=Di.circleArray[Ti+1],Ci=Di.circleArray[Ti+2],Bi=Di.circleArray[Ti+3];ht.emplace(ur++,gn,rn,Ci,Bi,0),ht.emplace(ur++,gn,rn,Ci,Bi,1),ht.emplace(ur++,gn,rn,Ci,Bi,2),ht.emplace(ur++,gn,rn,Ci,Bi,3)}(!Vc||Vc.length<hr*2)&&(Vc=Ku(hr));for(var Gi=we.createIndexBuffer(Vc,!0),sn=we.createVertexBuffer(ht,i.collisionCircleLayout.members,!0),zn=0,Ja=Xt;zn<Ja.length;zn+=1){var co=Ja[zn],ts=ki(co.transform,co.invTransform,Y.transform);Pt.draw(we,Ue.TRIANGLES,wi.disabled,Fn.disabled,Y.colorModeForRenderPass(),Er.disabled,ts,J.id,sn,Gi,i.SegmentVector.simpleSegment(0,co.circleOffset*2,co.circleArray.length,co.circleArray.length/2),null,Y.transform.zoom,null,null,null)}sn.destroy(),Gi.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=Fn.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,Xt=-(Ue-.5)*J,hr=i.evaluateVariableOffset(Y,q);return new i.Point((ft/K+hr[0])*de,(Xt/K+hr[1])*de)}function Q(Y,D,J,q,K,de,ne){for(var we=D.transform,Ue=K==="map",ft=de==="map",Xt=0,hr=Y;Xt<hr.length;Xt+=1){var qt=hr[Xt],Ve=q.getTile(qt),Qe=Ve.getBucket(J);if(!(!Qe||!Qe.text||!Qe.text.segments.get().length)){var at=Qe.textSizeData,Ct=i.evaluateSizeForZoom(at,we.zoom),Ot=As(Ve,1,D.transform.zoom),Rt=_n(qt.posMatrix,ft,Ue,D.transform,Ot),Bt=J.layout.get("icon-text-fit")!=="none"&&Qe.hasIconData();if(Ct){var Dt=Math.pow(2,we.zoom-Ve.tileID.overscaledZ);ee(Qe,Ue,ft,ne,i.symbolSize,we,Rt,qt.posMatrix,Dt,Ct,Bt)}}}}function ee(Y,D,J,q,K,de,ne,we,Ue,ft,Xt){var hr=Y.text.placedSymbolArray,qt=Y.text.dynamicLayoutVertexArray,Ve=Y.icon.dynamicLayoutVertexArray,Qe={};qt.clear();for(var at=0;at<hr.length;at++){var Ct=hr.get(at),Ot=Y.allowVerticalPlacement&&!Ct.placedOrientation,Rt=!Ct.hidden&&Ct.crossTileID&&!Ot?q[Ct.crossTileID]:null;if(!Rt)ul(Ct.numGlyphs,qt);else{var Bt=new i.Point(Ct.anchorX,Ct.anchorY),Dt=Jn(Bt,J?we:ne),yt=Ma(de.cameraToCenterDistance,Dt.signedDistanceFromCamera),Pt=K.evaluateSizeForFeature(Y.textSizeData,ft,Ct)*yt/i.ONE_EM;J&&(Pt*=Y.tilePixelRatio/Ue);for(var ht=Rt.width,ur=Rt.height,br=Rt.anchor,Ur=Rt.textOffset,Di=Rt.textBoxScale,fi=B(br,ht,ur,Ur,Di,Pt),Ti=J?Jn(Bt.add(fi),ne).point:Dt.point.add(D?fi.rotate(-de.angle):fi),gn=Y.allowVerticalPlacement&&Ct.placedOrientation===i.WritingMode.vertical?Math.PI/2:0,rn=0;rn<Ct.numGlyphs;rn++)i.addDynamicAttributes(qt,Ti,gn);Xt&&Ct.associatedIconIndex>=0&&(Qe[Ct.associatedIconIndex]={shiftedAnchor:Ti,angle:gn})}}if(Xt){Ve.clear();for(var Ci=Y.icon.placedSymbolArray,Bi=0;Bi<Ci.length;Bi++){var Gi=Ci.get(Bi);if(Gi.hidden)ul(Gi.numGlyphs,Ve);else{var sn=Qe[Bi];if(!sn)ul(Gi.numGlyphs,Ve);else for(var zn=0;zn<Gi.numGlyphs;zn++)i.addDynamicAttributes(Ve,sn.shiftedAnchor,sn.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,Xt,hr){for(var qt=Y.context,Ve=qt.gl,Qe=Y.transform,at=we==="map",Ct=Ue==="map",Ot=at&&J.layout.get("symbol-placement")!=="point",Rt=at&&!Ct&&!Ot,Bt=J.layout.get("symbol-sort-key").constantOr(1)!==void 0,Dt=!1,yt=Y.depthModeForSublayer(0,wi.ReadOnly),Pt=J.layout.get("text-variable-anchor"),ht=[],ur=0,br=q;ur<br.length;ur+=1){var Ur=br[ur],Di=D.getTile(Ur),fi=Di.getBucket(J);if(fi){var Ti=K?fi.text:fi.icon;if(!(!Ti||!Ti.segments.get().length)){var gn=Ti.programConfigurations.get(J.id),rn=K||fi.sdfIcons,Ci=K?fi.textSizeData:fi.iconSizeData,Bi=Ct||Qe.pitch!==0,Gi=Y.useProgram(le(rn,K,fi),gn),sn=i.evaluateSizeForZoom(Ci,Qe.zoom),zn=void 0,Ja=[0,0],co=void 0,ts=void 0,so=null,Zo=void 0;if(K){if(co=Di.glyphAtlasTexture,ts=Ve.LINEAR,zn=Di.glyphAtlasTexture.size,fi.iconsInText){Ja=Di.imageAtlasTexture.size,so=Di.imageAtlasTexture;var ms=Ci.kind==="composite"||Ci.kind==="camera";Zo=Bi||Y.options.rotating||Y.options.zooming||ms?Ve.LINEAR:Ve.NEAREST}}else{var ou=J.layout.get("icon-size").constantOr(0)!==1||fi.iconsNeedLinear;co=Di.imageAtlasTexture,ts=rn||Y.options.rotating||Y.options.zooming||ou||Bi?Ve.LINEAR:Ve.NEAREST,zn=Di.imageAtlasTexture.size}var Cv=As(Di,1,Y.transform.zoom),Lv=_n(Ur.posMatrix,Ct,at,Y.transform,Cv),wd=ya(Ur.posMatrix,Ct,at,Y.transform,Cv),Kv=Pt&&fi.hasTextData(),cg=J.layout.get("icon-text-fit")!=="none"&&Kv&&fi.hasIconData();Ot&&No(fi,Ur.posMatrix,Y,K,Lv,wd,Ct,ft);var pp=Y.translatePosMatrix(Ur.posMatrix,Di,de,ne),Td=Ot||K&&Pt||cg?ue:Lv,gp=Y.translatePosMatrix(wd,Di,de,ne,!0),Vd=rn&&J.paint.get(K?"text-halo-width":"icon-halo-width").constantOr(1)!==0,Ad=void 0;rn?fi.iconsInText?Ad=pu(Ci.kind,sn,Rt,Ct,Y,pp,Td,gp,zn,Ja):Ad=Nc(Ci.kind,sn,Rt,Ct,Y,pp,Td,gp,K,zn,!0):Ad=Yu(Ci.kind,sn,Rt,Ct,Y,pp,Td,gp,K,zn);var Pv={program:Gi,buffers:Ti,uniformValues:Ad,atlasTexture:co,atlasTextureIcon:so,atlasInterpolation:ts,atlasInterpolationIcon:Zo,isSDF:rn,hasHalo:Vd};if(Bt&&fi.canOverlap){Dt=!0;for(var Jv=Ti.segments.get(),Iv=0,ay=Jv;Iv<ay.length;Iv+=1){var fg=ay[Iv];ht.push({segments:new i.SegmentVector([fg]),sortKey:fg.sortKey,state:Pv})}}else ht.push({segments:Ti.segments,sortKey:0,state:Pv})}}}Dt&&ht.sort(function(b1,w1){return b1.sortKey-w1.sortKey});for(var oh=0,hg=ht;oh<hg.length;oh+=1){var oy=hg[oh],jh=oy.state;if(qt.activeTexture.set(Ve.TEXTURE0),jh.atlasTexture.bind(jh.atlasInterpolation,Ve.CLAMP_TO_EDGE),jh.atlasTextureIcon&&(qt.activeTexture.set(Ve.TEXTURE1),jh.atlasTextureIcon&&jh.atlasTextureIcon.bind(jh.atlasInterpolationIcon,Ve.CLAMP_TO_EDGE)),jh.isSDF){var im=jh.uniformValues;jh.hasHalo&&(im.u_is_halo=1,Xe(jh.buffers,oy.segments,J,Y,jh.program,yt,Xt,hr,im)),im.u_is_halo=0}Xe(jh.buffers,oy.segments,J,Y,jh.program,yt,Xt,hr,jh.uniformValues)}}function Xe(Y,D,J,q,K,de,ne,we,Ue){var ft=q.context,Xt=ft.gl;K.draw(ft,Xt.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,Xt=Y.depthModeForSublayer(0,wi.ReadOnly),hr=Fn.disabled,qt=Y.colorModeForRenderPass(),Ve=[],Qe=0;Qe<q.length;Qe++){var at=q[Qe],Ct=D.getTile(at),Ot=Ct.getBucket(J);if(Ot){var Rt=Ot.programConfigurations.get(J.id),Bt=Y.useProgram("circle",Rt),Dt=Ot.layoutVertexBuffer,yt=Ot.indexBuffer,Pt=Wt(Y,at,Ct,J),ht={programConfiguration:Rt,program:Bt,layoutVertexBuffer:Dt,indexBuffer:yt,uniformValues:Pt};if(we)for(var ur=Ot.segments.get(),br=0,Ur=ur;br<Ur.length;br+=1){var Di=Ur[br];Ve.push({segments:new i.SegmentVector([Di]),sortKey:Di.sortKey,state:ht})}else Ve.push({segments:Ot.segments,sortKey:0,state:ht})}}we&&Ve.sort(function(co,ts){return co.sortKey-ts.sortKey});for(var fi=0,Ti=Ve;fi<Ti.length;fi+=1){var gn=Ti[fi],rn=gn.state,Ci=rn.programConfiguration,Bi=rn.program,Gi=rn.layoutVertexBuffer,sn=rn.indexBuffer,zn=rn.uniformValues,Ja=gn.segments;Bi.draw(Ue,ft.TRIANGLES,Xt,hr,qt,Er.disabled,zn,J.id,Gi,sn,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=Fn.disabled,we=new wt([de.ONE,de.ONE],i.Color.transparent,[!0,!0,!0,!0]);Yt(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 Xt=D.getTile(ft),hr=Xt.getBucket(J);if(hr){var qt=hr.programConfigurations.get(J.id),Ve=Y.useProgram("heatmap",qt),Qe=Y.transform,at=Qe.zoom;Ve.draw(K,de.TRIANGLES,wi.disabled,ne,we,Er.disabled,on(ft.posMatrix,Xt,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 Yt(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),Kt(Y,D,de,K)}}function Kt(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,wi.disabled,Fn.disabled,Y.colorModeForRenderPass(),Er.disabled,Fi(Y,D,0,1),D.id,Y.viewportBuffer,Y.quadTriangleIndexBuffer,Y.viewportSegments,D.paint,Y.transform.zoom)}}function Ir(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,wi.ReadOnly),we=Y.colorModeForRenderPass(),Ue=J.paint.get("line-dasharray"),ft=J.paint.get("line-pattern"),Xt=ft.constantOr(1),hr=J.paint.get("line-gradient"),qt=J.getCrossfadeParameters(),Ve=Xt?"linePattern":Ue?"lineSDF":hr?"lineGradient":"line",Qe=Y.context,at=Qe.gl,Ct=!0,Ot=0,Rt=q;Ot<Rt.length;Ot+=1){var Bt=Rt[Ot],Dt=D.getTile(Bt);if(!(Xt&&!Dt.patternsLoaded())){var yt=Dt.getBucket(J);if(yt){var Pt=yt.programConfigurations.get(J.id),ht=Y.context.program.get(),ur=Y.useProgram(Ve,Pt),br=Ct||ur.program!==ht,Ur=ft.constantOr(null);if(Ur&&Dt.imageAtlas){var Di=Dt.imageAtlas,fi=Di.patternPositions[Ur.to.toString()],Ti=Di.patternPositions[Ur.from.toString()];fi&&Ti&&Pt.setConstantPatternPositions(fi,Ti)}var gn=Xt?as(Y,Dt,J,qt):Ue?ws(Y,Dt,J,Ue,qt):hr?Ss(Y,Dt,J,yt.lineClipsArray.length):Xo(Y,Dt,J);if(Xt)Qe.activeTexture.set(at.TEXTURE0),Dt.imageAtlasTexture.bind(at.LINEAR,at.CLAMP_TO_EDGE),Pt.updatePaintBuffers(qt);else if(Ue&&(br||Y.lineAtlas.dirty))Qe.activeTexture.set(at.TEXTURE0),Y.lineAtlas.bind(Qe);else if(hr){var rn=yt.gradients[J.id],Ci=rn.texture;if(J.gradientVersion!==rn.version){var Bi=256;if(J.stepInterpolant){var Gi=D.getSource().maxzoom,sn=Bt.canonical.z===Gi?Math.ceil(1<<Y.transform.maxZoom-Bt.canonical.z):1,zn=yt.maxLineLength/i.EXTENT,Ja=1024,co=zn*Ja*sn;Bi=i.clamp(i.nextPowerOfTwo(co),256,Qe.maxTextureSize)}rn.gradient=i.renderColorRamp({expression:J.gradientExpression(),evaluationKey:"lineProgress",resolution:Bi,image:rn.gradient||void 0,clips:yt.lineClipsArray}),rn.texture?rn.texture.update(rn.gradient):rn.texture=new i.Texture(Qe,rn.gradient,at.RGBA),rn.version=J.gradientVersion,Ci=rn.texture}Qe.activeTexture.set(at.TEXTURE0),Ci.bind(J.stepInterpolant?at.NEAREST:at.LINEAR,at.CLAMP_TO_EDGE)}ur.draw(Qe,at.TRIANGLES,ne,Y.stencilModeForClipping(Bt),we,Er.disabled,gn,J.id,yt.layoutVertexBuffer,yt.indexBuffer,yt.segments,J.paint,Y.transform.zoom,Pt,yt.layoutVertexBuffer2),Ct=!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"?wi.ReadWrite:wi.ReadOnly);be(Y,D,J,q,ft,ne,!1)}if(Y.renderPass==="translucent"&&J.paint.get("fill-antialias")){var Xt=Y.depthModeForSublayer(J.getPaintProperty("fill-outline-color")?2:0,wi.ReadOnly);be(Y,D,J,q,Xt,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),Xt=J.getCrossfadeParameters(),hr,qt,Ve,Qe,at;ne?(qt=ft&&!J.getPaintProperty("fill-outline-color")?"fillOutlinePattern":"fillOutline",hr=we.LINES):(qt=ft?"fillPattern":"fill",hr=we.TRIANGLES);for(var Ct=0,Ot=q;Ct<Ot.length;Ct+=1){var Rt=Ot[Ct],Bt=D.getTile(Rt);if(!(ft&&!Bt.patternsLoaded())){var Dt=Bt.getBucket(J);if(Dt){var yt=Dt.programConfigurations.get(J.id),Pt=Y.useProgram(qt,yt);ft&&(Y.context.activeTexture.set(we.TEXTURE0),Bt.imageAtlasTexture.bind(we.LINEAR,we.CLAMP_TO_EDGE),yt.updatePaintBuffers(Xt));var ht=Ue.constantOr(null);if(ht&&Bt.imageAtlas){var ur=Bt.imageAtlas,br=ur.patternPositions[ht.to.toString()],Ur=ur.patternPositions[ht.from.toString()];br&&Ur&&yt.setConstantPatternPositions(br,Ur)}var Di=Y.translatePosMatrix(Rt.posMatrix,Bt,J.paint.get("fill-translate"),J.paint.get("fill-translate-anchor"));if(!ne)Qe=Dt.indexBuffer,at=Dt.segments,Ve=ft?cf(Di,Y,Xt,Bt):qc(Di);else{Qe=Dt.indexBuffer2,at=Dt.segments2;var fi=[we.drawingBufferWidth,we.drawingBufferHeight];Ve=qt==="fillOutlinePattern"&&ft?Bc(Di,Y,Xt,Bt,fi):fc(Di,fi)}Pt.draw(Y.context,hr,K,Y.stencilModeForClipping(Rt),de,Er.disabled,Ve,J.id,Dt.layoutVertexBuffer,Qe,at,J.paint,Y.transform.zoom,yt)}}}}function De(Y,D,J,q){var K=J.paint.get("fill-extrusion-opacity");if(K!==0&&Y.renderPass==="translucent"){var de=new wi(Y.context.gl.LEQUAL,wi.ReadWrite,Y.depthRangeFor3D);if(K===1&&!J.paint.get("fill-extrusion-pattern").constantOr(1)){var ne=Y.colorModeForRenderPass();Be(Y,D,J,q,de,Fn.disabled,ne)}else Be(Y,D,J,q,de,Fn.disabled,wt.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"),Xt=ft.constantOr(1),hr=J.getCrossfadeParameters(),qt=J.paint.get("fill-extrusion-opacity"),Ve=0,Qe=q;Ve<Qe.length;Ve+=1){var at=Qe[Ve],Ct=D.getTile(at),Ot=Ct.getBucket(J);if(Ot){var Rt=Ot.programConfigurations.get(J.id),Bt=Y.useProgram(Xt?"fillExtrusionPattern":"fillExtrusion",Rt);Xt&&(Y.context.activeTexture.set(Ue.TEXTURE0),Ct.imageAtlasTexture.bind(Ue.LINEAR,Ue.CLAMP_TO_EDGE),Rt.updatePaintBuffers(hr));var Dt=ft.constantOr(null);if(Dt&&Ct.imageAtlas){var yt=Ct.imageAtlas,Pt=yt.patternPositions[Dt.to.toString()],ht=yt.patternPositions[Dt.from.toString()];Pt&&ht&&Rt.setConstantPatternPositions(Pt,ht)}var ur=Y.translatePosMatrix(at.posMatrix,Ct,J.paint.get("fill-extrusion-translate"),J.paint.get("fill-extrusion-translate-anchor")),br=J.paint.get("fill-extrusion-vertical-gradient"),Ur=Xt?Zu(ur,Y,br,qt,at,hr,Ct):ah(ur,Y,br,qt);Bt.draw(we,we.gl.TRIANGLES,K,de,ne,Er.backCCW,Ur,J.id,Ot.layoutVertexBuffer,Ot.indexBuffer,Ot.segments,J.paint,Y.transform.zoom,Rt)}}}function et(Y,D,J,q){if(!(Y.renderPass!=="offscreen"&&Y.renderPass!=="translucent")){for(var K=Y.context,de=Y.depthModeForSublayer(0,wi.ReadOnly),ne=Y.colorModeForRenderPass(),we=Y.renderPass==="translucent"?Y.stencilConfigForOverlap(q):[{},q],Ue=we[0],ft=we[1],Xt=0,hr=ft;Xt<hr.length;Xt+=1){var qt=hr[Xt],Ve=D.getTile(qt);Ve.needsHillshadePrepare&&Y.renderPass==="offscreen"?it(Y,Ve,J,de,Fn.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 Xt=Ra(Y,D,J);ft.draw(ne,we.TRIANGLES,q,K,de,Er.disabled,Xt,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,Xt=Ue.stride,hr=Ue.getPixels();if(ne.activeTexture.set(we.TEXTURE1),ne.pixelStoreUnpackPremultiplyAlpha.set(!1),D.demTexture=D.demTexture||Y.getTileTexture(Xt),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 Qe=new i.Texture(ne,{width:ft,height:ft,data:null},we.RGBA);Qe.bind(we.LINEAR,we.CLAMP_TO_EDGE),Ve=D.fbo=ne.createFramebuffer(ft,ft,!0),Ve.colorAttachment.set(Qe.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 Ft(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 Ce?[{},q]:Y.stencilConfigForOverlap(q),Xt=ft[0],hr=ft[1],qt=hr[hr.length-1].overscaledZ,Ve=!Y.options.moving,Qe=0,at=hr;Qe<at.length;Qe+=1){var Ct=at[Qe],Ot=Y.depthModeForSublayer(Ct.overscaledZ-qt,J.paint.get("raster-opacity")===1?wi.ReadWrite:wi.ReadOnly,de.LESS),Rt=D.getTile(Ct),Bt=Y.transform.calculatePosMatrix(Ct.toUnwrapped(),Ve);Rt.registerFadeDuration(J.paint.get("raster-fade-duration"));var Dt=D.findLoadedParent(Ct,0),yt=Ht(Rt,Dt,D,J,Y.transform),Pt=void 0,ht=void 0,ur=J.paint.get("raster-resampling")==="nearest"?de.NEAREST:de.LINEAR;K.activeTexture.set(de.TEXTURE0),Rt.texture.bind(ur,de.CLAMP_TO_EDGE,de.LINEAR_MIPMAP_NEAREST),K.activeTexture.set(de.TEXTURE1),Dt?(Dt.texture.bind(ur,de.CLAMP_TO_EDGE,de.LINEAR_MIPMAP_NEAREST),Pt=Math.pow(2,Dt.tileID.overscaledZ-Rt.tileID.overscaledZ),ht=[Rt.tileID.canonical.x*Pt%1,Rt.tileID.canonical.y*Pt%1]):Rt.texture.bind(ur,de.CLAMP_TO_EDGE,de.LINEAR_MIPMAP_NEAREST);var br=Ls(Bt,ht||[0,0],Pt||1,yt,J);ne instanceof Ce?we.draw(K,de.TRIANGLES,Ot,Fn.disabled,Ue,Er.disabled,br,J.id,ne.boundsBuffer,Y.quadTriangleIndexBuffer,ne.boundsSegments):we.draw(K,de.TRIANGLES,Ot,Xt[Ct.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(),Xt=K.coveringZoomLevel({tileSize:ft.tileSize,roundZoom:ft.roundZoom}),hr=!D||Math.abs(D.tileID.overscaledZ-Xt)>Math.abs(Y.tileID.overscaledZ-Xt),qt=hr&&Y.refreshedUponExpiration?1:i.clamp(hr?we:1-Ue,0,1);return Y.refreshedUponExpiration&&we>=1&&(Y.refreshedUponExpiration=!1),D?{opacity:1,mix:1-qt}:{opacity:qt,mix:0}}else return{opacity:1,mix:0}}function tr(Y,D,J){var q=J.paint.get("background-color"),K=J.paint.get("background-opacity");if(K!==0){var de=Y.context,ne=de.gl,we=Y.transform,Ue=we.tileSize,ft=J.paint.get("background-pattern");if(!Y.isPatternMissing(ft)){var Xt=!ft&&q.a===1&&K===1&&Y.opaquePassEnabledForLayer()?"opaque":"translucent";if(Y.renderPass===Xt){var hr=Fn.disabled,qt=Y.depthModeForSublayer(0,Xt==="opaque"?wi.ReadWrite:wi.ReadOnly),Ve=Y.colorModeForRenderPass(),Qe=Y.useProgram(ft?"backgroundPattern":"background"),at=we.coveringTiles({tileSize:Ue});ft&&(de.activeTexture.set(ne.TEXTURE0),Y.imageManager.bind(Y.context));for(var Ct=J.getCrossfadeParameters(),Ot=0,Rt=at;Ot<Rt.length;Ot+=1){var Bt=Rt[Ot],Dt=Y.transform.calculatePosMatrix(Bt.toUnwrapped()),yt=ft?Ua(Dt,K,Y,ft,{tileID:Bt,tileSize:Ue},Ct):Ac(Dt,K,q);Qe.draw(de,ne.TRIANGLES,qt,hr,Ve,Er.disabled,yt,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),Wr=new i.Color(1,0,1,1),ni=new i.Color(0,1,1,1);function Pi(Y){var D=Y.transform.padding,J=3;ln(Y,Y.transform.height-(D.top||0),J,dr),ln(Y,D.bottom||0,J,Sr),Cn(Y,D.left||0,J,Or),Cn(Y,Y.transform.width-(D.right||0),J,Wr);var q=Y.transform.centerPoint;cn(Y,q.x,Y.transform.height-q.y,ni)}function cn(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 ln(Y,D,J,q){Kn(Y,0,D+J/2,Y.transform.width,J,q)}function Cn(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 Ta(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=wi.disabled,Ue=Fn.disabled,ft=Y.colorModeForRenderPass(),Xt="$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,dn(de,i.Color.red),Xt,Y.debugBuffer,Y.tileBorderIndexBuffer,Y.debugSegments);var hr=D.getTileByID(J.key).latestRawTileData,qt=hr&&hr.byteLength||0,Ve=Math.floor(qt/1024),Qe=D.getTile(J).tileSize,at=512/Math.min(Qe,512)*(J.overscaledZ/Y.transform.zoom)*.5,Ct=J.canonical.toString();J.overscaledZ!==J.canonical.z&&(Ct+=" => "+J.overscaledZ);var Ot=Ct+" "+Ve+"kb";$a(Y,Ot),ne.draw(q,K.TRIANGLES,we,Ue,wt.alphaBlended,Er.disabled,dn(de,i.Color.transparent,at),Xt,Y.debugBuffer,Y.quadTriangleIndexBuffer,Y.debugSegments)}function $a(Y,D){Y.initDebugOverlayCanvas();var J=Y.debugOverlayCanvas,q=Y.context.gl,K=Y.debugOverlayCanvas.getContext("2d");K.clearRect(0,0,J.width,J.height),K.shadowColor="white",K.shadowBlur=2,K.lineWidth=1.5,K.strokeStyle="white",K.textBaseline="top",K.font="bold 36px Open Sans, sans-serif",K.fillText(D,5,5),K.strokeText(D,5,5),Y.debugOverlayTexture.update(J),Y.debugOverlayTexture.bind(q.LINEAR,q.CLAMP_TO_EDGE)}function Co(Y,D,J){var q=Y.context,K=J.implementation;if(Y.renderPass==="offscreen"){var de=K.prerender;de&&(Y.setCustomLayerDefaults(),q.setColorMode(Y.colorModeForRenderPass()),de.call(K,q.gl,Y.transform.customLayerMatrix()),q.setDirty(),Y.setBaseState())}else if(Y.renderPass==="translucent"){Y.setCustomLayerDefaults(),q.setColorMode(Y.colorModeForRenderPass()),q.setStencilMode(Fn.disabled);var ne=K.renderingMode==="3d"?new wi(Y.context.gl.LEQUAL,wi.ReadWrite,Y.depthRangeFor3D):Y.depthModeForSublayer(0,wi.ReadOnly);q.setDepthMode(ne),K.render(q.gl,Y.transform.customLayerMatrix()),q.setDirty(),Y.setBaseState(),q.bindFramebuffer.set(null)}}var Qa={symbol:w,circle:ot,heatmap:Tt,line:Ir,fill:ve,"fill-extrusion":De,hillshade:et,raster:Ft,background:tr,debug:Ta,custom:Co},mo=function(D,J){this.context=new Xr(D),this.transform=J,this._tileTextures={},this.setup(),this.numSublayers=ri.maxUnderzooming+ri.maxOverzooming+1,this.depthEpsilon=1/Math.pow(2,16),this.crossTileSymbolIndex=new Uf,this.gpuTimers={}};mo.prototype.resize=function(D,J){if(this.width=D*i.browser.devicePixelRatio,this.height=J*i.browser.devicePixelRatio,this.context.viewport.set([0,0,this.width,this.height]),this.style)for(var q=0,K=this.style._order;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,Ee.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 Fn({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,wi.disabled,this.stencilClearMode,wt.disabled,Er.disabled,Nn(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(wt.disabled),q.setDepthMode(wi.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,wi.disabled,new Fn({func:K.ALWAYS,mask:0},ft,255,K.KEEP,K.KEEP,K.REPLACE),wt.disabled,Er.disabled,Nn(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 Fn({func:J.NOTEQUAL,mask:255},D,255,J.KEEP,J.KEEP,J.REPLACE)},mo.prototype.stencilModeForClipping=function(D){var J=this.context.gl;return new Fn({func:J.EQUAL,mask:255},this._tileClippingMaskIDs[D.key],0,J.KEEP,J.KEEP,J.REPLACE)},mo.prototype.stencilConfigForOverlap=function(D){var J,q=this.context.gl,K=D.sort(function(ft,Xt){return Xt.overscaledZ-ft.overscaledZ}),de=K[K.length-1].overscaledZ,ne=K[0].overscaledZ-de+1;if(ne>1){this.currentStencilSource=void 0,this.nextStencilID+ne>256&&this.clearStencil();for(var we={},Ue=0;Ue<ne;Ue++)we[Ue+de]=new Fn({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]=Fn.disabled,J),K]},mo.prototype.colorModeForRenderPass=function(){var D=this.context.gl;if(this._showOverdrawInspector){var J=8,q=1/J;return new wt([D.CONSTANT_COLOR,D.ONE],new i.Color(q,q,q,0),[!0,!0,!0,!0])}else return this.renderPass==="opaque"?wt.unblended:wt.alphaBlended},mo.prototype.depthModeForSublayer=function(D,J,q){if(!this.opaquePassEnabledForLayer())return wi.disabled;var K=1-((1+this.currentLayer)*this.numSublayers+D)*this.depthEpsilon;return new wi(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={},Xt={};for(var hr in de){var qt=de[hr];Ue[hr]=qt.getVisibleCoordinates(),ft[hr]=Ue[hr].slice().reverse(),Xt[hr]=qt.getVisibleCoordinates(!0).reverse()}this.opaquePassCutoff=1/0;for(var Ve=0;Ve<K.length;Ve++){var Qe=K[Ve];if(this.style._layers[Qe].is3D()){this.opaquePassCutoff=Ve;break}}this.renderPass="offscreen";for(var at=0,Ct=K;at<Ct.length;at+=1){var Ot=Ct[at],Rt=this.style._layers[Ot];if(!(!Rt.hasOffscreenPass()||Rt.isHidden(this.transform.zoom))){var Bt=ft[Rt.source];Rt.type!=="custom"&&!Bt.length||this.renderLayer(this,de[Rt.source],Rt,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 Dt=this.style._layers[K[this.currentLayer]],yt=de[Dt.source],Pt=Ue[Dt.source];this._renderTileClippingMasks(Dt,Pt),this.renderLayer(this,yt,Dt,Pt)}for(this.renderPass="translucent",this.currentLayer=0;this.currentLayer<K.length;this.currentLayer++){var ht=this.style._layers[K[this.currentLayer]],ur=de[ht.source],br=(ht.type==="symbol"?Xt:ft)[ht.source];this._renderTileClippingMasks(ht,Ue[ht.source]),this.renderLayer(this,ur,ht,br)}if(this.options.showTileBoundaries){var Ur,Di,fi=i.values(this.style._layers);fi.forEach(function(Ti){Ti.source&&!Ti.isHidden(q.transform.zoom)&&(Ti.source!==(Di&&Di.id)&&(Di=q.style.sourceCaches[Ti.source]),(!Ur||Ur.getSource().maxzoom<Di.getSource().maxzoom)&&(Ur=Di))}),Ur&&Qa.debug(this,Ur,Ur.getVisibleCoordinates())}this.options.showPadding&&Pi(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]:As(J,q[0],this.transform.zoom),de?q[1]:As(J,q[1],this.transform.zoom),0],Xt=new Float32Array(16);return i.translate(Xt,D,ft),Xt},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 Rf(this.context,D,wf[D],J,oo[D],this._showOverdrawInspector)),this.cache[q]},mo.prototype.setCustomLayerDefaults=function(){this.context.unbindVAO(),this.context.cullFace.setDefault(),this.context.activeTexture.setDefault(),this.context.pixelStoreUnpack.setDefault(),this.context.pixelStoreUnpackPremultiplyAlpha.setDefault(),this.context.pixelStoreUnpackFlipY.setDefault()},mo.prototype.setBaseState=function(){var D=this.context.gl;this.context.cullFace.set(!1),this.context.viewport.set([0,0,this.width,this.height]),this.context.blendEquation.set(D.FUNC_ADD)},mo.prototype.initDebugOverlayCanvas=function(){if(this.debugOverlayCanvas==null){this.debugOverlayCanvas=i.window.document.createElement("canvas"),this.debugOverlayCanvas.width=512,this.debugOverlayCanvas.height=512;var D=this.context.gl;this.debugOverlayTexture=new i.Texture(this.context,this.debugOverlayCanvas,D.RGBA)}},mo.prototype.destroy=function(){this.emptyTexture.destroy(),this.debugOverlayTexture&&this.debugOverlayTexture.destroy()};var Bo=function(D,J){this.points=D,this.planes=J};Bo.fromInvProjectionMatrix=function(D,J,q){var K=[[-1,1,-1,1],[1,1,-1,1],[1,-1,-1,1],[-1,-1,-1,1],[-1,1,1,1],[1,1,1,1],[1,-1,1,1],[-1,-1,1,1]],de=Math.pow(2,q),ne=K.map(function(ft){return i.transformMat4([],ft,D)}).map(function(ft){return i.scale$1([],ft,1/ft[3]/J*de)}),we=[[0,1,2],[6,5,4],[0,3,7],[2,1,5],[3,2,6],[0,4,5]],Ue=we.map(function(ft){var Xt=i.sub([],ne[ft[0]],ne[ft[1]]),hr=i.sub([],ne[ft[2]],ne[ft[1]]),qt=i.normalize([],i.cross([],Xt,hr)),Ve=-i.dot(qt,ne[ft[1]]);return qt.concat(Ve)});return new Bo(ne,Ue)};var Ps=function(D,J){this.min=D,this.max=J,this.center=i.scale$2([],i.add([],this.min,this.max),.5)};Ps.prototype.quadrant=function(D){for(var J=[D%2===0,D<2],q=i.clone$2(this.min),K=i.clone$2(this.max),de=0;de<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 Ps(q,K)},Ps.prototype.distanceX=function(D){var J=Math.max(Math.min(this.max[0],D[0]),this.min[0]);return J-D[0]},Ps.prototype.distanceY=function(D){var J=Math.max(Math.min(this.max[1],D[1]),this.min[1]);return J-D[1]},Ps.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,Xt=-Number.MAX_VALUE,hr=0;hr<D.points.length;hr++){var qt=D.points[hr][Ue]-this.min[Ue];ft=Math.min(ft,qt),Xt=Math.max(Xt,qt)}if(Xt<0||ft>this.max[Ue]-this.min[Ue])return 0}return 1};var Ts=function(D,J,q,K){if(D===void 0&&(D=0),J===void 0&&(J=0),q===void 0&&(q=0),K===void 0&&(K=0),isNaN(D)||D<0||isNaN(J)||J<0||isNaN(q)||q<0||isNaN(K)||K<0)throw new Error("Invalid value for edge-insets, top, bottom, left and right must all be numbers");this.top=D,this.bottom=J,this.left=q,this.right=K};Ts.prototype.interpolate=function(D,J,q){return J.top!=null&&D.top!=null&&(this.top=i.number(D.top,J.top,q)),J.bottom!=null&&D.bottom!=null&&(this.bottom=i.number(D.bottom,J.bottom,q)),J.left!=null&&D.left!=null&&(this.left=i.number(D.left,J.left,q)),J.right!=null&&D.right!=null&&(this.right=i.number(D.right,J.right,q)),this},Ts.prototype.getCenter=function(D,J){var q=i.clamp((this.left+D-this.right)/2,0,D),K=i.clamp((this.top+J-this.bottom)/2,0,J);return new i.Point(q,K)},Ts.prototype.equals=function(D){return this.top===D.top&&this.bottom===D.bottom&&this.left===D.left&&this.right===D.right},Ts.prototype.clone=function(){return new Ts(this.top,this.bottom,this.left,this.right)},Ts.prototype.toJSON=function(){return{top:this.top,bottom:this.bottom,left:this.left,right:this.right}};var wo=function(D,J,q,K,de){this.tileSize=512,this.maxValidLatitude=85.051129,this._renderWorldCopies=de===void 0?!0:de,this._minZoom=D||0,this._maxZoom=J||22,this._minPitch=q==null?0:q,this._maxPitch=K==null?60:K,this.setMaxBounds(),this.width=0,this.height=0,this._center=new i.LngLat(0,0),this.zoom=0,this.angle=0,this._fov=.6435011087932844,this._pitch=0,this._unmodified=!0,this._edgeInsets=new Ts,this._posMatrixCache={},this._alignedPosMatrixCache={}},To={minZoom:{configurable:!0},maxZoom:{configurable:!0},minPitch:{configurable:!0},maxPitch:{configurable:!0},renderWorldCopies:{configurable:!0},worldSize:{configurable:!0},centerOffset:{configurable:!0},size:{configurable:!0},bearing:{configurable:!0},pitch:{configurable:!0},fov:{configurable:!0},zoom:{configurable:!0},center:{configurable:!0},padding:{configurable:!0},centerPoint:{configurable:!0},unmodified:{configurable:!0},point:{configurable:!0}};wo.prototype.clone=function(){var D=new wo(this._minZoom,this._maxZoom,this._minPitch,this.maxPitch,this._renderWorldCopies);return D.tileSize=this.tileSize,D.latRange=this.latRange,D.width=this.width,D.height=this.height,D._center=this._center,D.zoom=this.zoom,D.angle=this.angle,D._fov=this._fov,D._pitch=this._pitch,D._unmodified=this._unmodified,D._edgeInsets=this._edgeInsets.clone(),D._calcMatrices(),D},To.minZoom.get=function(){return this._minZoom},To.minZoom.set=function(Y){this._minZoom!==Y&&(this._minZoom=Y,this.zoom=Math.max(this.zoom,Y))},To.maxZoom.get=function(){return this._maxZoom},To.maxZoom.set=function(Y){this._maxZoom!==Y&&(this._maxZoom=Y,this.zoom=Math.min(this.zoom,Y))},To.minPitch.get=function(){return this._minPitch},To.minPitch.set=function(Y){this._minPitch!==Y&&(this._minPitch=Y,this.pitch=Math.max(this.pitch,Y))},To.maxPitch.get=function(){return this._maxPitch},To.maxPitch.set=function(Y){this._maxPitch!==Y&&(this._maxPitch=Y,this.pitch=Math.min(this.pitch,Y))},To.renderWorldCopies.get=function(){return this._renderWorldCopies},To.renderWorldCopies.set=function(Y){Y===void 0?Y=!0:Y===null&&(Y=!1),this._renderWorldCopies=Y},To.worldSize.get=function(){return this.tileSize*this.scale},To.centerOffset.get=function(){return this.centerPoint._sub(this.size._div(2))},To.size.get=function(){return new i.Point(this.width,this.height)},To.bearing.get=function(){return-this.angle/Math.PI*180},To.bearing.set=function(Y){var D=-i.wrap(Y,-180,180)*Math.PI/180;this.angle!==D&&(this._unmodified=!1,this.angle=D,this._calcMatrices(),this.rotationMatrix=i.create$2(),i.rotate(this.rotationMatrix,this.rotationMatrix,this.angle))},To.pitch.get=function(){return this._pitch/Math.PI*180},To.pitch.set=function(Y){var D=i.clamp(Y,this.minPitch,this.maxPitch)/180*Math.PI;this._pitch!==D&&(this._unmodified=!1,this._pitch=D,this._calcMatrices())},To.fov.get=function(){return this._fov/Math.PI*180},To.fov.set=function(Y){Y=Math.max(.01,Math.min(60,Y)),this._fov!==Y&&(this._unmodified=!1,this._fov=Y/180*Math.PI,this._calcMatrices())},To.zoom.get=function(){return this._zoom},To.zoom.set=function(Y){var D=Math.min(Math.max(Y,this.minZoom),this.maxZoom);this._zoom!==D&&(this._unmodified=!1,this._zoom=D,this.scale=this.zoomScale(D),this.tileZoom=Math.floor(D),this.zoomFraction=D-this.tileZoom,this._constrain(),this._calcMatrices())},To.center.get=function(){return this._center},To.center.set=function(Y){Y.lat===this._center.lat&&Y.lng===this._center.lng||(this._unmodified=!1,this._center=Y,this._constrain(),this._calcMatrices())},To.padding.get=function(){return this._edgeInsets.toJSON()},To.padding.set=function(Y){this._edgeInsets.equals(Y)||(this._unmodified=!1,this._edgeInsets.interpolate(this._edgeInsets,Y,1),this._calcMatrices())},To.centerPoint.get=function(){return this._edgeInsets.getCenter(this.width,this.height)},wo.prototype.isPaddingEqual=function(D){return this._edgeInsets.equals(D)},wo.prototype.interpolatePadding=function(D,J,q){this._unmodified=!1,this._edgeInsets.interpolate(D,J,q),this._constrain(),this._calcMatrices()},wo.prototype.coveringZoomLevel=function(D){var J=(D.roundZoom?Math.round:Math.floor)(this.zoom+this.scaleZoom(this.tileSize/D.tileSize));return Math.max(0,J)},wo.prototype.getVisibleUnwrappedCoordinates=function(D){var J=[new i.UnwrappedTileID(0,D)];if(this._renderWorldCopies)for(var q=this.pointCoordinate(new i.Point(0,0)),K=this.pointCoordinate(new i.Point(this.width,0)),de=this.pointCoordinate(new i.Point(this.width,this.height)),ne=this.pointCoordinate(new i.Point(0,this.height)),we=Math.floor(Math.min(q.x,K.x,de.x,ne.x)),Ue=Math.floor(Math.max(q.x,K.x,de.x,ne.x)),ft=1,Xt=we-ft;Xt<=Ue+ft;Xt++)Xt!==0&&J.push(new i.UnwrappedTileID(Xt,D));return J},wo.prototype.coveringTiles=function(D){var J=this.coveringZoomLevel(D),q=J;if(D.minzoom!==void 0&&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,Xt=function(fi){return{aabb:new Ps([fi*de,0,0],[(fi+1)*de,de,0]),zoom:0,x:0,y:0,wrap:fi,fullyVisible:!1}},hr=[],qt=[],Ve=J,Qe=D.reparseOverscaled?q:J;if(this._renderWorldCopies)for(var at=1;at<=3;at++)hr.push(Xt(-at)),hr.push(Xt(at));for(hr.push(Xt(0));hr.length>0;){var Ct=hr.pop(),Ot=Ct.x,Rt=Ct.y,Bt=Ct.fullyVisible;if(!Bt){var Dt=Ct.aabb.intersects(we);if(Dt===0)continue;Bt=Dt===2}var yt=Ct.aabb.distanceX(ne),Pt=Ct.aabb.distanceY(ne),ht=Math.max(Math.abs(yt),Math.abs(Pt)),ur=ft+(1<<Ve-Ct.zoom)-2;if(Ct.zoom===Ve||ht>ur&&Ct.zoom>=Ue){qt.push({tileID:new i.OverscaledTileID(Ct.zoom===Ve?Qe:Ct.zoom,Ct.wrap,Ct.zoom,Ot,Rt),distanceSq:i.sqrLen([ne[0]-.5-Ot,ne[1]-.5-Rt])});continue}for(var br=0;br<4;br++){var Ur=(Ot<<1)+br%2,Di=(Rt<<1)+(br>>1);hr.push({aabb:Ct.aabb.quadrant(br),zoom:Ct.zoom+1,x:Ur,y:Di,wrap:Ct.wrap,fullyVisible:Bt})}}return qt.sort(function(fi,Ti){return fi.distanceSq-Ti.distanceSq}).map(function(fi){return fi.tileID})},wo.prototype.resize=function(D,J){this.width=D,this.height=J,this.pixelsToGLUnits=[2/D,-2/J],this._constrain(),this._calcMatrices()},To.unmodified.get=function(){return this._unmodified},wo.prototype.zoomScale=function(D){return Math.pow(2,D)},wo.prototype.scaleZoom=function(D){return Math.log(D)/Math.LN2},wo.prototype.project=function(D){var J=i.clamp(D.lat,-this.maxValidLatitude,this.maxValidLatitude);return new i.Point(i.mercatorXfromLng(D.lng)*this.worldSize,i.mercatorYfromLat(J)*this.worldSize)},wo.prototype.unproject=function(D){return new i.MercatorCoordinate(D.x/this.worldSize,D.y/this.worldSize).toLngLat()},To.point.get=function(){return this.project(this.center)},wo.prototype.setLocationAtPoint=function(D,J){var q=this.pointCoordinate(J),K=this.pointCoordinate(this.centerPoint),de=this.locationCoordinate(D),ne=new i.MercatorCoordinate(de.x-(q.x-K.x),de.y-(q.y-K.y));this.center=this.coordinateLocation(ne),this._renderWorldCopies&&(this.center=this.center.wrap())},wo.prototype.locationPoint=function(D){return this.coordinatePoint(this.locationCoordinate(D))},wo.prototype.pointLocation=function(D){return this.coordinateLocation(this.pointCoordinate(D))},wo.prototype.locationCoordinate=function(D){return i.MercatorCoordinate.fromLngLat(D)},wo.prototype.coordinateLocation=function(D){return D.toLngLat()},wo.prototype.pointCoordinate=function(D){var J=0,q=[D.x,D.y,0,1],K=[D.x,D.y,1,1];i.transformMat4(q,q,this.pixelMatrixInverse),i.transformMat4(K,K,this.pixelMatrixInverse);var de=q[3],ne=K[3],we=q[0]/de,Ue=K[0]/ne,ft=q[1]/de,Xt=K[1]/ne,hr=q[2]/de,qt=K[2]/ne,Ve=hr===qt?0:(J-hr)/(qt-hr);return new i.MercatorCoordinate(i.number(we,Ue,Ve)/this.worldSize,i.number(ft,Xt,Ve)/this.worldSize)},wo.prototype.coordinatePoint=function(D){var J=[D.x*this.worldSize,D.y*this.worldSize,0,1];return i.transformMat4(J,J,this.pixelMatrix),new i.Point(J[0]/J[3],J[1]/J[3])},wo.prototype.getBounds=function(){return new i.LngLatBounds().extend(this.pointLocation(new i.Point(0,0))).extend(this.pointLocation(new i.Point(this.width,0))).extend(this.pointLocation(new i.Point(this.width,this.height))).extend(this.pointLocation(new i.Point(0,this.height)))},wo.prototype.getMaxBounds=function(){return!this.latRange||this.latRange.length!==2||!this.lngRange||this.lngRange.length!==2?null:new i.LngLatBounds([this.lngRange[0],this.latRange[0]],[this.lngRange[1],this.latRange[1]])},wo.prototype.setMaxBounds=function(D){D?(this.lngRange=[D.getWest(),D.getEast()],this.latRange=[D.getSouth(),D.getNorth()],this._constrain()):(this.lngRange=null,this.latRange=[-this.maxValidLatitude,this.maxValidLatitude])},wo.prototype.calculatePosMatrix=function(D,J){J===void 0&&(J=!1);var q=D.key,K=J?this._alignedPosMatrixCache:this._posMatrixCache;if(K[q])return K[q];var de=D.canonical,ne=this.worldSize/this.zoomScale(de.z),we=de.x+Math.pow(2,de.z)*D.wrap,Ue=i.identity(new Float64Array(16));return i.translate(Ue,Ue,[we*ne,de.y*ne,0]),i.scale(Ue,Ue,[ne/i.EXTENT,ne/i.EXTENT,1]),i.multiply(Ue,J?this.alignedProjMatrix:this.projMatrix,Ue),K[q]=new Float32Array(Ue),K[q]},wo.prototype.customLayerMatrix=function(){return this.mercatorMatrix.slice()},wo.prototype._constrain=function(){if(!(!this.center||!this.width||!this.height||this._constraining)){this._constraining=!0;var D=-90,J=90,q=-180,K=180,de,ne,we,Ue,ft=this.size,Xt=this._unmodified;if(this.latRange){var hr=this.latRange;D=i.mercatorYfromLat(hr[1])*this.worldSize,J=i.mercatorYfromLat(hr[0])*this.worldSize,de=J-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,Qe=Math.max(ne||0,de||0);if(Qe){this.center=this.unproject(new i.Point(ne?(K+q)/2:Ve.x,de?(J+D)/2:Ve.y)),this.zoom+=this.scaleZoom(Qe),this._unmodified=Xt,this._constraining=!1;return}if(this.latRange){var at=Ve.y,Ct=ft.y/2;at-Ct<D&&(Ue=D+Ct),at+Ct>J&&(Ue=J-Ct)}if(this.lngRange){var Ot=Ve.x,Rt=ft.x/2;Ot-Rt<q&&(we=q+Rt),Ot+Rt>K&&(we=K-Rt)}(we!==void 0||Ue!==void 0)&&(this.center=this.unproject(new i.Point(we!==void 0?we:Ve.x,Ue!==void 0?Ue:Ve.y))),this._unmodified=Xt,this._constraining=!1}},wo.prototype._calcMatrices=function(){if(this.height){var D=this._fov/2,J=this.centerOffset;this.cameraToCenterDistance=.5/Math.tan(D)*this.height;var q=Math.PI/2+this._pitch,K=this._fov*(.5+J.y/this.height),de=Math.sin(K)*this.cameraToCenterDistance/Math.sin(i.clamp(Math.PI-q-K,.01,Math.PI-.01)),ne=this.point,we=ne.x,Ue=ne.y,ft=Math.cos(Math.PI/2-this._pitch)*de+this.cameraToCenterDistance,Xt=ft*1.01,hr=this.height/50,qt=new Float64Array(16);i.perspective(qt,this._fov,this.width/this.height,hr,Xt),qt[8]=-J.x*2/this.width,qt[9]=J.y*2/this.height,i.scale(qt,qt,[1,-1,1]),i.translate(qt,qt,[0,0,-this.cameraToCenterDistance]),i.rotateX(qt,qt,this._pitch),i.rotateZ(qt,qt,this.angle),i.translate(qt,qt,[-we,-Ue,0]),this.mercatorMatrix=i.scale([],qt,[this.worldSize,this.worldSize,this.worldSize]),i.scale(qt,qt,[1,1,i.mercatorZfromAltitude(1,this.center.lat)*this.worldSize,1]),this.projMatrix=qt,this.invProjMatrix=i.invert([],this.projMatrix);var Ve=this.width%2/2,Qe=this.height%2/2,at=Math.cos(this.angle),Ct=Math.sin(this.angle),Ot=we-Math.round(we)+at*Ve+Ct*Qe,Rt=Ue-Math.round(Ue)+at*Qe+Ct*Ve,Bt=new Float64Array(qt);if(i.translate(Bt,Bt,[Ot>.5?Ot-1:Ot,Rt>.5?Rt-1:Rt,0]),this.alignedProjMatrix=Bt,qt=i.create(),i.scale(qt,qt,[this.width/2,-this.height/2,1]),i.translate(qt,qt,[1,-1,0]),this.labelPlaneMatrix=qt,qt=i.create(),i.scale(qt,qt,[1,-1,1]),i.translate(qt,qt,[-1,-1,0]),i.scale(qt,qt,[2/this.width,2/this.height,1]),this.glCoordMatrix=qt,this.pixelMatrix=i.multiply(new Float64Array(16),this.labelPlaneMatrix,this.projMatrix),qt=i.invert(new Float64Array(16),this.pixelMatrix),!qt)throw new Error("failed to invert matrix");this.pixelMatrixInverse=qt,this._posMatrixCache={},this._alignedPosMatrixCache={}}},wo.prototype.maxPitchScaleFactor=function(){if(!this.pixelMatrixInverse)return 1;var D=this.pointCoordinate(new i.Point(0,0)),J=[D.x*this.worldSize,D.y*this.worldSize,0,1],q=i.transformMat4(J,J,this.pixelMatrix);return q[3]/this.cameraToCenterDistance},wo.prototype.getCameraPoint=function(){var D=this._pitch,J=Math.tan(D)*(this.cameraToCenterDistance||1);return this.centerPoint.add(new i.Point(0,J))},wo.prototype.getCameraQueryGeometry=function(D){var J=this.getCameraPoint();if(D.length===1)return[D[0],J];for(var q=J.x,K=J.y,de=J.x,ne=J.y,we=0,Ue=D;we<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 hl(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 Ul=function(D){this._hashName=D&&encodeURIComponent(D),i.bindAll(["_getCurrentHash","_onHashChange","_updateHash"],this),this._updateHash=hl(this._updateHashUnthrottled.bind(this),30*1e3/100)};Ul.prototype.addTo=function(D){return this._map=D,i.window.addEventListener("hashchange",this._onHashChange,!1),this._map.on("moveend",this._updateHash),this},Ul.prototype.remove=function(){return i.window.removeEventListener("hashchange",this._onHashChange,!1),this._map.off("moveend",this._updateHash),clearTimeout(this._updateHash()),delete this._map,this},Ul.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(),Xt="";if(D?Xt+="/"+ne+"/"+we+"/"+q:Xt+=q+"/"+we+"/"+ne,(Ue||ft)&&(Xt+="/"+Math.round(Ue*10)/10),ft&&(Xt+="/"+Math.round(ft)),this._hashName){var hr=this._hashName,qt=!1,Ve=i.window.location.hash.slice(1).split("&").map(function(Qe){var at=Qe.split("=")[0];return at===hr?(qt=!0,at+"="+Xt):Qe}).filter(function(Qe){return Qe});return qt||Ve.push(hr+"="+Xt),"#"+Ve.join("&")}return"#"+Xt},Ul.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("/")},Ul.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},Ul.prototype._updateHashUnthrottled=function(){var D=i.window.location.href.replace(/(#.+)?$/,this.getHashString());try{i.window.history.replaceState(i.window.history.state,null,D)}catch(J){}};var Lu={linearity:.3,easing:i.bezier(0,0,.3,1)},au=i.extend({deceleration:2500,maxSpeed:1400},Lu),Js=i.extend({deceleration:20,maxSpeed:1400},Lu),Ql=i.extend({deceleration:1e3,maxSpeed:360},Lu),dc=i.extend({deceleration:1e3,maxSpeed:90},Lu),Tl=function(D){this._map=D,this.clear()};Tl.prototype.clear=function(){this._inertiaBuffer=[]},Tl.prototype.record=function(D){this._drainInertiaBuffer(),this._inertiaBuffer.push({time:i.browser.now(),settings:D})},Tl.prototype._drainInertiaBuffer=function(){for(var D=this._inertiaBuffer,J=i.browser.now(),q=160;D.length>0&&J-D[0].time>q;)D.shift()},Tl.prototype._onMoveEnd=function(D){if(this._drainInertiaBuffer(),!(this._inertiaBuffer.length<2)){for(var J={zoom:0,bearing:0,pitch:0,pan:new i.Point(0,0),pinchAround:void 0,around:void 0},q=0,K=this._inertiaBuffer;q<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 Xt=X(J.pan.mag(),Ue,i.extend({},au,D||{}));ft.offset=J.pan.mult(Xt.amount/J.pan.mag()),ft.center=this._map.transform.center,Al(ft,Xt)}if(J.zoom){var hr=X(J.zoom,Ue,Js);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 Qe=J.pinchAround===void 0?J.around:J.pinchAround;ft.around=Qe?this._map.unproject(Qe):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,Qe){return hr.add(qt.div(Qe.length))},new i.Point(0,0)),Xt=K.unproject(ft);Y.call(this,q,{points:we,point:ft,lngLats:Ue,lngLat:Xt,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 kt=function(D,J){this._map=D,this._el=D.getCanvasContainer(),this._container=D.getContainer(),this._clickTolerance=J.clickTolerance||1};kt.prototype.isEnabled=function(){return!!this._enabled},kt.prototype.isActive=function(){return!!this._active},kt.prototype.enable=function(){this.isEnabled()||(this._enabled=!0)},kt.prototype.disable=function(){this.isEnabled()&&(this._enabled=!1)},kt.prototype.mousedown=function(D,J){this.isEnabled()&&D.shiftKey&&D.button===0&&(o.disableDrag(),this._startPos=this._lastPos=J,this._active=!0)},kt.prototype.mousemoveWindow=function(D,J){if(this._active){var q=J;if(!(this._lastPos.equals(q)||!this._box&&q.dist(this._startPos)<this._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"}}},kt.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})}}}},kt.prototype.keydown=function(D){this._active&&D.keyCode===27&&(this.reset(),this._fireEvent("boxzoomcancel",D))},kt.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},kt.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,Hr=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)>Hr)&&(this.aborted=!0)}}},qr.prototype.touchend=function(D,J,q){if((!this.centroid||D.timeStamp-this.startTime>yr)&&(this.aborted=!0),q.length===0){var K=!this.aborted&&this.centroid;if(this.reset(),K)return K}};var _i=function(D){this.singleTap=new qr(D),this.numTaps=D.numTaps,this.reset()};_i.prototype.reset=function(){this.lastTime=1/0,delete this.lastTap,this.count=0,this.singleTap.reset()},_i.prototype.touchstart=function(D,J,q){this.singleTap.touchstart(D,J,q)},_i.prototype.touchmove=function(D,J,q){this.singleTap.touchmove(D,J,q)},_i.prototype.touchend=function(D,J,q){var K=this.singleTap.touchend(D,J,q);if(K){var de=D.timeStamp-this.lastTime<gr,ne=!this.lastTap||this.lastTap.dist(K)<Hr;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 Zr=0,ai=2,gi={};gi[Zr]=1,gi[ai]=2;function Ii(Y,D){var J=gi[D];return Y.buttons===void 0||(Y.buttons&J)!==J}var Si=function(D){this.reset(),this._clickTolerance=D.clickTolerance||1};Si.prototype.reset=function(){this._active=!1,this._moved=!1,delete this._lastPoint,delete this._eventButton},Si.prototype._correctButton=function(D,J){return!1},Si.prototype._move=function(D,J){return{}},Si.prototype.mousedown=function(D,J){if(!this._lastPoint){var q=o.mouseButton(D);this._correctButton(D,q)&&(this._lastPoint=J,this._eventButton=q)}},Si.prototype.mousemoveWindow=function(D,J){var q=this._lastPoint;if(q){if(D.preventDefault(),Ii(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)}},Si.prototype.mouseupWindow=function(D){if(this._lastPoint){var J=o.mouseButton(D);J===this._eventButton&&(this._moved&&o.suppressClick(),this.reset())}},Si.prototype.enable=function(){this._enabled=!0},Si.prototype.disable=function(){this._enabled=!1,this.reset()},Si.prototype.isEnabled=function(){return this._enabled},Si.prototype.isActive=function(){return this._active};var 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.mousedown=function(q,K){Y.prototype.mousedown.call(this,q,K),this._lastPoint&&(this._active=!0)},D.prototype._correctButton=function(q,K){return K===Zr&&!q.ctrlKey},D.prototype._move=function(q,K){return{around:K,panDelta:K.sub(q)}},D}(Si),Ln=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===Zr&&q.ctrlKey||K===ai},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}(Si),En=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===Zr&&q.ctrlKey||K===ai},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}(Si),Un=function(D){this._minTouches=1,this._clickTolerance=D.clickTolerance||1,this.reset()};Un.prototype.reset=function(){this._active=!1,this._touches={},this._sum=new i.Point(0,0)},Un.prototype.touchstart=function(D,J,q){return this._calculateTransform(D,J,q)},Un.prototype.touchmove=function(D,J,q){if(!(!this._active||q.length<this._minTouches))return D.preventDefault(),this._calculateTransform(D,J,q)},Un.prototype.touchend=function(D,J,q){this._calculateTransform(D,J,q),this._active&&q.length<this._minTouches&&this.reset()},Un.prototype.touchcancel=function(){this.reset()},Un.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],Xt=this._touches[Ue];Xt&&(de._add(ft),ne._add(ft.sub(Xt)),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}}}},Un.prototype.enable=function(){this._enabled=!0},Un.prototype.disable=function(){this._enabled=!1,this.reset()},Un.prototype.isEnabled=function(){return this._enabled},Un.prototype.isActive=function(){return this._active};var 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 Is(Y,D){return Y.angleWith(D)*180/Math.PI}var Ms=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:Is(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=Is(q,this._startVector);return Math.abs(ne)<de},D}(ia);function Xs(Y){return Math.abs(Y.y)>Math.abs(Y.x)}var Gn=100,ja=function(Y){function D(){Y.apply(this,arguments)}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.reset=function(){Y.prototype.reset.call(this),this._valid=void 0,delete this._firstMove,delete this._lastPoints},D.prototype._start=function(q){this._lastPoints=q,Xs(q[0].sub(q[1]))&&(this._valid=!1)},D.prototype._move=function(q,K,de){var ne=q[0].sub(this._lastPoints[0]),we=q[1].sub(this._lastPoints[1]);if(this._valid=this.gestureBeginsVertically(ne,we,de.timeStamp),!!this._valid){this._lastPoints=q,this._active=!0;var Ue=(ne.y+we.y)/2,ft=-.5;return{pitchDelta:Ue*ft}}},D.prototype.gestureBeginsVertically=function(q,K,de){if(this._valid!==void 0)return this._valid;var ne=2,we=q.mag()>=ne,Ue=K.mag()>=ne;if(!(!we&&!Ue)){if(!we||!Ue)return this._firstMove===void 0&&(this._firstMove=de),de-this._firstMove<Gn?void 0:!1;var ft=q.y>0==K.y>0;return Xs(q)&&Xs(K)&&ft}},D}(ia),Fo={panStep:100,bearingStep:15,pitchStep:10},Uo=function(){var D=Fo;this._panStep=D.panStep,this._bearingStep=D.bearingStep,this._pitchStep=D.pitchStep,this._rotationDisabled=!1};Uo.prototype.reset=function(){this._active=!1},Uo.prototype.keydown=function(D){var J=this;if(!(D.altKey||D.ctrlKey||D.metaKey)){var q=0,K=0,de=0,ne=0,we=0;switch(D.keyCode){case 61:case 107:case 171:case 187:q=1;break;case 189:case 109:case 173:q=-1;break;case 37:D.shiftKey?K=-1:(D.preventDefault(),ne=-1);break;case 39:D.shiftKey?K=1:(D.preventDefault(),ne=1);break;case 38:D.shiftKey?de=1:(D.preventDefault(),we=-1);break;case 40:D.shiftKey?de=-1:(D.preventDefault(),we=1);break;default:return}return this._rotationDisabled&&(K=0,de=0),{cameraAnimation:function(Ue){var ft=Ue.getZoom();Ue.easeTo({duration:300,easeId:"keyboardHandler",easing:$s,zoom:q?Math.round(ft)+q*(D.shiftKey?2:1):ft,bearing:Ue.getBearing()+K*J._bearingStep,pitch:Ue.getPitch()+de*J._pitchStep,offset:[-ne*J._panStep,-we*J._panStep],center:Ue.getCenter()},{originalEvent:D})}}}},Uo.prototype.enable=function(){this._enabled=!0},Uo.prototype.disable=function(){this._enabled=!1,this.reset()},Uo.prototype.isEnabled=function(){return this._enabled},Uo.prototype.isActive=function(){return this._active},Uo.prototype.disableRotation=function(){this._rotationDisabled=!0},Uo.prototype.enableRotation=function(){this._rotationDisabled=!1};function $s(Y){return Y*(2-Y)}var Sl=4.000244140625,bu=1/100,dl=1/450,Sc=2,Me=function(D,J){this._map=D,this._el=D.getCanvasContainer(),this._handler=J,this._delta=0,this._defaultZoomRate=bu,this._wheelZoomRate=dl,i.bindAll(["_onTimeout"],this)};Me.prototype.setZoomRate=function(D){this._defaultZoomRate=D},Me.prototype.setWheelZoomRate=function(D){this._wheelZoomRate=D},Me.prototype.isEnabled=function(){return!!this._enabled},Me.prototype.isActive=function(){return!!this._active||this._finishTimeout!==void 0},Me.prototype.isZooming=function(){return!!this._zooming},Me.prototype.enable=function(D){this.isEnabled()||(this._enabled=!0,this._aroundCenter=D&&D.around==="center")},Me.prototype.disable=function(){this.isEnabled()&&(this._enabled=!1)},Me.prototype.wheel=function(D){if(this.isEnabled()){var J=D.deltaMode===i.window.WheelEvent.DOM_DELTA_LINE?D.deltaY*40:D.deltaY,q=i.browser.now(),K=q-(this._lastWheelEventTime||0);this._lastWheelEventTime=q,J!==0&&J%Sl===0?this._type="wheel":J!==0&&Math.abs(J)<4?this._type="trackpad":K>400?(this._type=null,this._lastValue=J,this._timeout=setTimeout(this._onTimeout,40,D)):this._type||(this._type=Math.abs(K*J)<200?"trackpad":"wheel",this._timeout&&(clearTimeout(this._timeout),this._timeout=null,J+=this._lastValue)),D.shiftKey&&J&&(J=J/4),this._type&&(this._lastWheelEvent=D,this._delta-=J,this._active||this._start(D)),D.preventDefault()}},Me.prototype._onTimeout=function(D){this._type="wheel",this._delta-=this._lastValue,this._active||this._start(D)},Me.prototype._start=function(D){if(this._delta){this._frameId&&(this._frameId=null),this._active=!0,this.isZooming()||(this._zooming=!0),this._finishTimeout&&(clearTimeout(this._finishTimeout),delete this._finishTimeout);var J=o.mousePos(this._el,D);this._around=i.LngLat.convert(this._aroundCenter?this._map.getCenter():this._map.unproject(J)),this._aroundPoint=this._map.transform.locationPoint(this._around),this._frameId||(this._frameId=!0,this._handler._triggerRenderFrame())}},Me.prototype.renderFrame=function(){var D=this;if(this._frameId&&(this._frameId=null,!!this.isActive())){var J=this._map.transform;if(this._delta!==0){var q=this._type==="wheel"&&Math.abs(this._delta)>Sl?this._wheelZoomRate:this._defaultZoomRate,K=Sc/(1+Math.exp(-Math.abs(this._delta*q)));this._delta<0&&K!==0&&(K=1/K);var de=typeof this._targetZoom=="number"?J.zoomScale(this._targetZoom):J.scale;this._targetZoom=Math.min(J.maxZoom,Math.max(J.minZoom,J.scaleZoom(de*K))),this._type==="wheel"&&(this._startZoom=J.zoom,this._easing=this._smoothOutEasing(200)),this._delta=0}var ne=typeof this._targetZoom=="number"?this._targetZoom:J.zoom,we=this._startZoom,Ue=this._easing,ft=!1,Xt;if(this._type==="wheel"&&we&&Ue){var hr=Math.min((i.browser.now()-this._lastWheelEventTime)/200,1),qt=Ue(hr);Xt=i.number(we,ne,qt),hr<1?this._frameId||(this._frameId=!0):ft=!0}else Xt=ne,ft=!0;return this._active=!0,ft&&(this._active=!1,this._finishTimeout=setTimeout(function(){D._zooming=!1,D._handler._triggerRenderFrame(),delete D._targetZoom,delete D._finishTimeout},200)),{noInertia:!0,needsRenderFrame:!ft,zoomDelta:Xt-J.zoom,around:this._aroundPoint,originalEvent:this._lastWheelEvent}}},Me.prototype._smoothOutEasing=function(D){var J=i.ease;if(this._prevEase){var q=this._prevEase,K=(i.browser.now()-q.start)/q.duration,de=q.easing(K+.01)-q.easing(K),ne=.27/Math.sqrt(de*de+1e-4)*.01,we=Math.sqrt(.27*.27-ne*ne);J=i.bezier(ne,we,.25,1)}return this._prevEase={start:i.browser.now(),duration:D,easing:J},J},Me.prototype.reset=function(){this._active=!1};var bt=function(D,J){this._clickZoom=D,this._tapZoom=J};bt.prototype.enable=function(){this._clickZoom.enable(),this._tapZoom.enable()},bt.prototype.disable=function(){this._clickZoom.disable(),this._tapZoom.disable()},bt.prototype.isEnabled=function(){return this._clickZoom.isEnabled()&&this._tapZoom.isEnabled()},bt.prototype.isActive=function(){return this._clickZoom.isActive()||this._tapZoom.isActive()};var zt=function(){this.reset()};zt.prototype.reset=function(){this._active=!1},zt.prototype.dblclick=function(D,J){return D.preventDefault(),{cameraAnimation:function(q){q.easeTo({duration:300,zoom:q.getZoom()+(D.shiftKey?-1:1),around:q.unproject(J)},{originalEvent:D})}}},zt.prototype.enable=function(){this._enabled=!0},zt.prototype.disable=function(){this._enabled=!1,this.reset()},zt.prototype.isEnabled=function(){return this._enabled},zt.prototype.isActive=function(){return this._active};var Rr=function(){this._tap=new _i({numTouches:1,numTaps:1}),this.reset()};Rr.prototype.reset=function(){this._active=!1,delete this._swipePoint,delete this._swipeTouch,delete this._tapTime,this._tap.reset()},Rr.prototype.touchstart=function(D,J,q){this._swipePoint||(this._tapTime&&D.timeStamp-this._tapTime>gr&&this.reset(),this._tapTime?q.length>0&&(this._swipePoint=J[0],this._swipeTouch=q[0].identifier):this._tap.touchstart(D,J,q))},Rr.prototype.touchmove=function(D,J,q){if(!this._tapTime)this._tap.touchmove(D,J,q);else if(this._swipePoint){if(q[0].identifier!==this._swipeTouch)return;var K=J[0],de=K.y-this._swipePoint.y;return this._swipePoint=K,D.preventDefault(),this._active=!0,{zoomDelta:de/128}}},Rr.prototype.touchend=function(D,J,q){if(this._tapTime)this._swipePoint&&q.length===0&&this.reset();else{var K=this._tap.touchend(D,J,q);K&&(this._tapTime=D.timeStamp)}},Rr.prototype.touchcancel=function(){this.reset()},Rr.prototype.enable=function(){this._enabled=!0},Rr.prototype.disable=function(){this._enabled=!1,this.reset()},Rr.prototype.isEnabled=function(){return this._enabled},Rr.prototype.isActive=function(){return this._active};var jr=function(D,J,q){this._el=D,this._mousePan=J,this._touchPan=q};jr.prototype.enable=function(D){this._inertiaOptions=D||{},this._mousePan.enable(),this._touchPan.enable(),this._el.classList.add("mapboxgl-touch-drag-pan")},jr.prototype.disable=function(){this._mousePan.disable(),this._touchPan.disable(),this._el.classList.remove("mapboxgl-touch-drag-pan")},jr.prototype.isEnabled=function(){return this._mousePan.isEnabled()&&this._touchPan.isEnabled()},jr.prototype.isActive=function(){return this._mousePan.isActive()||this._touchPan.isActive()};var Nr=function(D,J,q){this._pitchWithRotate=D.pitchWithRotate,this._mouseRotate=J,this._mousePitch=q};Nr.prototype.enable=function(){this._mouseRotate.enable(),this._pitchWithRotate&&this._mousePitch.enable()},Nr.prototype.disable=function(){this._mouseRotate.disable(),this._mousePitch.disable()},Nr.prototype.isEnabled=function(){return this._mouseRotate.isEnabled()&&(!this._pitchWithRotate||this._mousePitch.isEnabled())},Nr.prototype.isActive=function(){return this._mouseRotate.isActive()||this._mousePitch.isActive()};var Gr=function(D,J,q,K){this._el=D,this._touchZoom=J,this._touchRotate=q,this._tapDragZoom=K,this._rotationDisabled=!1,this._enabled=!0};Gr.prototype.enable=function(D){this._touchZoom.enable(D),this._rotationDisabled||this._touchRotate.enable(D),this._tapDragZoom.enable(),this._el.classList.add("mapboxgl-touch-zoom-rotate")},Gr.prototype.disable=function(){this._touchZoom.disable(),this._touchRotate.disable(),this._tapDragZoom.disable(),this._el.classList.remove("mapboxgl-touch-zoom-rotate")},Gr.prototype.isEnabled=function(){return this._touchZoom.isEnabled()&&(this._rotationDisabled||this._touchRotate.isEnabled())&&this._tapDragZoom.isEnabled()},Gr.prototype.isActive=function(){return this._touchZoom.isActive()||this._touchRotate.isActive()||this._tapDragZoom.isActive()},Gr.prototype.disableRotation=function(){this._rotationDisabled=!0,this._touchRotate.disable()},Gr.prototype.enableRotation=function(){this._rotationDisabled=!1,this._touchZoom.isEnabled()&&this._touchRotate.enable()};var mi=function(Y){return Y.zoom||Y.drag||Y.pitch||Y.rotate},Ui=function(Y){function D(){Y.apply(this,arguments)}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D}(i.Event);function qi(Y){return Y.panDelta&&Y.panDelta.mag()||Y.zoomDelta||Y.bearingDelta||Y.pitchDelta}var Ei=function(D,J){this._map=D,this._el=this._map.getCanvasContainer(),this._handlers=[],this._handlersById={},this._changes=[],this._inertia=new Tl(D),this._bearingSnap=J.bearingSnap,this._previousActiveHandlers={},this._eventsInProgress={},this._addDefaultHandlers(J),i.bindAll(["handleEvent","handleWindowEvent"],this);var q=this._el;this._listeners=[[q,"touchstart",{passive:!0}],[q,"touchmove",{passive:!1}],[q,"touchend",void 0],[q,"touchcancel",void 0],[q,"mousedown",void 0],[q,"mousemove",void 0],[q,"mouseup",void 0],[i.window.document,"mousemove",{capture:!0}],[i.window.document,"mouseup",void 0],[q,"mouseover",void 0],[q,"mouseout",void 0],[q,"dblclick",void 0],[q,"click",void 0],[q,"keydown",{capture:!1}],[q,"keyup",void 0],[q,"wheel",{passive:!1}],[q,"contextmenu",void 0],[i.window,"blur",void 0]];for(var K=0,de=this._listeners;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)}};Ei.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)}},Ei.prototype._addDefaultHandlers=function(D){var J=this._map,q=J.getCanvasContainer();this._add("mapEvent",new He(J,D));var K=J.boxZoom=new kt(J,D);this._add("boxZoom",K);var de=new bi,ne=new zt;J.doubleClickZoom=new bt(ne,de),this._add("tapZoom",de),this._add("clickZoom",ne);var we=new Rr;this._add("tapDragZoom",we);var Ue=J.touchPitch=new ja;this._add("touchPitch",Ue);var ft=new Ln(D),Xt=new En(D);J.dragRotate=new Nr(D,ft,Xt),this._add("mouseRotate",ft,["mousePitch"]),this._add("mousePitch",Xt,["mouseRotate"]);var hr=new ei(D),qt=new Un(D);J.dragPan=new jr(q,hr,qt),this._add("mousePan",hr),this._add("touchPan",qt,["touchZoom","touchRotate"]);var Ve=new Ms,Qe=new Da;J.touchZoomRotate=new Gr(q,Qe,Ve,we),this._add("touchRotate",Ve,["touchPan","touchZoom"]),this._add("touchZoom",Qe,["touchPan","touchRotate"]);var at=J.scrollZoom=new Me(J,this);this._add("scrollZoom",at,["mousePan"]);var Ct=J.keyboard=new Uo;this._add("keyboard",Ct),this._add("blockableMapEvent",new Ye(J));for(var Ot=0,Rt=["boxZoom","doubleClickZoom","tapDragZoom","touchPitch","dragRotate","dragPan","touchZoomRotate","scrollZoom","keyboard"];Ot<Rt.length;Ot+=1){var Bt=Rt[Ot];D.interactive&&D[Bt]&&J[Bt].enable(D[Bt])}},Ei.prototype._add=function(D,J,q){this._handlers.push({handlerName:D,handler:J,allowed:q}),this._handlersById[D]=J},Ei.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=[]}},Ei.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},Ei.prototype.isZooming=function(){return!!this._eventsInProgress.zoom||this._map.scrollZoom.isZooming()},Ei.prototype.isRotating=function(){return!!this._eventsInProgress.rotate},Ei.prototype.isMoving=function(){return!!mi(this._eventsInProgress)||this.isZooming()},Ei.prototype._blockedByActive=function(D,J,q){for(var K in D)if(K!==q&&(!J||J.indexOf(K)<0))return!0;return!1},Ei.prototype.handleWindowEvent=function(D){this.handleEvent(D,D.type+"Window")},Ei.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},Ei.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,Xt=this._handlers;ft<Xt.length;ft+=1){var hr=Xt[ft],qt=hr.handlerName,Ve=hr.handler,Qe=hr.allowed;if(Ve.isEnabled()){var at=void 0;this._blockedByActive(ne,Qe,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 Ct={};for(var Ot in this._previousActiveHandlers)ne[Ot]||(Ct[Ot]=q);this._previousActiveHandlers=ne,(Object.keys(Ct).length||qi(K))&&(this._changes.push([K,de,Ct]),this._triggerRenderFrame()),(Object.keys(ne).length||qi(K))&&this._map._stop(!0),this._updatingCamera=!1;var Rt=K.cameraAnimation;Rt&&(this._inertia.clear(),this._fireEvents({},{},!0),this._changes=[],Rt(this._map))},Ei.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)}},Ei.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=[]},Ei.prototype._updateMapTransform=function(D,J,q){var K=this._map,de=K.transform;if(!qi(D))return this._fireEvents(J,q,!0);var ne=D.panDelta,we=D.zoomDelta,Ue=D.bearingDelta,ft=D.pitchDelta,Xt=D.around,hr=D.pinchAround;hr!==void 0&&(Xt=hr),K._stop(!0),Xt=Xt||K.transform.centerPoint;var qt=de.pointLocation(ne?Xt.sub(ne):Xt);Ue&&(de.bearing+=Ue),ft&&(de.pitch+=ft),we&&(de.zoom+=we),de.setLocationAtPoint(qt,Xt),this._map._update(),D.noInertia||this._inertia.record(D),this._fireEvents(J,q,!0)},Ei.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],Xt=ft.originalEvent;this._eventsInProgress[Ue]||(we[Ue+"start"]=Xt),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],Qe=Ve.originalEvent;this._fireEvent(qt,Qe)}var at={},Ct;for(var Ot in this._eventsInProgress){var Rt=this._eventsInProgress[Ot],Bt=Rt.handlerName,Dt=Rt.originalEvent;this._handlersById[Bt].isActive()||(delete this._eventsInProgress[Ot],Ct=J[Bt]||Dt,at[Ot+"end"]=Ct)}for(var yt in at)this._fireEvent(yt,at[yt]);var Pt=mi(this._eventsInProgress);if(q&&(de||ne)&&!Pt){this._updatingCamera=!0;var ht=this._inertia._onMoveEnd(this._map.dragPan._inertiaOptions),ur=function(br){return br!==0&&-K._bearingSnap<br&&br<K._bearingSnap};ht?(ur(ht.bearing||this._map.getBearing())&&(ht.bearing=0),this._map.easeTo(ht,{originalEvent:Ct})):(this._map.fire(new i.Event("moveend",{originalEvent:Ct})),ur(this._map.getBearing())&&this._map.resetNorth()),this._updatingCamera=!1}},Ei.prototype._fireEvent=function(D,J){this._map.fire(new i.Event(D,J?{originalEvent:J}:{}))},Ei.prototype._requestFrame=function(){var D=this;return this._map.triggerRepaint(),this._map._renderTaskQueue.add(function(J){delete D._frameId,D.handleEvent(new Ui("renderFrame",{timeStamp:J})),D._applyChanges()})},Ei.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,Xt=ft.padding,hr=ft.project(i.LngLat.convert(q)),qt=ft.project(i.LngLat.convert(K)),Ve=hr.rotate(-de*Math.PI/180),Qe=qt.rotate(-de*Math.PI/180),at=new i.Point(Math.max(Ve.x,Qe.x),Math.max(Ve.y,Qe.y)),Ct=new i.Point(Math.min(Ve.x,Qe.x),Math.min(Ve.y,Qe.y)),Ot=at.sub(Ct),Rt=(ft.width-(Xt.left+Xt.right+ne.padding.left+ne.padding.right))/Ot.x,Bt=(ft.height-(Xt.top+Xt.bottom+ne.padding.top+ne.padding.bottom))/Ot.y;if(Bt<0||Rt<0){i.warnOnce("Map cannot fit within canvas with the given bounds, padding, and/or offset.");return}var Dt=Math.min(ft.scaleZoom(ft.scale*Math.min(Rt,Bt)),ne.maxZoom),yt=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,ur=new i.Point(Pt,ht),br=ur.rotate(de*Math.PI/180),Ur=yt.add(br),Di=Ur.mult(ft.scale/ft.zoomScale(Dt)),fi=ft.unproject(hr.add(qt).div(2).sub(Di));return{center:fi,zoom:Dt,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(),Xt=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,Qe="padding"in q?q.padding:ne.padding,at=i.Point.convert(q.offset),Ct=ne.centerPoint.add(at),Ot=ne.pointLocation(Ct),Rt=i.LngLat.convert(q.center||Ot);this._normalizeCenter(Rt);var Bt=ne.project(Ot),Dt=ne.project(Rt).sub(Bt),yt=ne.zoomScale(hr-we),Pt,ht;q.around&&(Pt=i.LngLat.convert(q.around),ht=ne.locationPoint(Pt));var ur={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(Qe),this._easeId=q.easeId,this._prepareEase(K,q.noMoveStart,ur),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(Xt,Qe,br),Ct=ne.centerPoint.add(at)),Pt)ne.setLocationAtPoint(Pt,ht);else{var Ur=ne.zoomScale(ne.zoom-we),Di=hr>we?Math.min(2,yt):Math.max(.5,yt),fi=Math.pow(Di,1-br),Ti=ne.unproject(Bt.add(Dt.mult(br*fi)).mult(Ur));ne.setLocationAtPoint(ne.renderWorldCopies?Ti.wrap():Ti,Ct)}de._fireMoveEvents(K)},function(br){de._afterEase(K,br)},q),this},D.prototype._prepareEase=function(q,K,de){de===void 0&&(de={}),this._moving=!0,!K&&!de.moving&&this.fire(new i.Event("movestart",q)),this._zooming&&!de.zooming&&this.fire(new i.Event("zoomstart",q)),this._rotating&&!de.rotating&&this.fire(new i.Event("rotatestart",q)),this._pitching&&!de.pitching&&this.fire(new i.Event("pitchstart",q))},D.prototype._fireMoveEvents=function(q){this.fire(new i.Event("move",q)),this._zooming&&this.fire(new i.Event("zoom",q)),this._rotating&&this.fire(new i.Event("rotate",q)),this._pitching&&this.fire(new i.Event("pitch",q))},D.prototype._afterEase=function(q,K){if(!(this._easeId&&K&&this._easeId===K)){delete this._easeId;var de=this._zooming,ne=this._rotating,we=this._pitching;this._moving=!1,this._zooming=!1,this._rotating=!1,this._pitching=!1,this._padding=!1,de&&this.fire(new i.Event("zoomend",q)),ne&&this.fire(new i.Event("rotateend",q)),we&&this.fire(new i.Event("pitchend",q)),this.fire(new i.Event("moveend",q))}},D.prototype.flyTo=function(q,K){var de=this;if(!q.essential&&i.browser.prefersReducedMotion){var ne=i.pick(q,["center","zoom","bearing","pitch","around"]);return this.jumpTo(ne,K)}this.stop(),q=i.extend({offset:[0,0],speed:1.2,curve:1.42,easing:i.ease},q);var we=this.transform,Ue=this.getZoom(),ft=this.getBearing(),Xt=this.getPitch(),hr=this.getPadding(),qt="zoom"in q?i.clamp(+q.zoom,we.minZoom,we.maxZoom):Ue,Ve="bearing"in q?this._normalizeBearing(q.bearing,ft):ft,Qe="pitch"in q?+q.pitch:Xt,at="padding"in q?q.padding:we.padding,Ct=we.zoomScale(qt-Ue),Ot=i.Point.convert(q.offset),Rt=we.centerPoint.add(Ot),Bt=we.pointLocation(Rt),Dt=i.LngLat.convert(q.center||Bt);this._normalizeCenter(Dt);var yt=we.project(Bt),Pt=we.project(Dt).sub(yt),ht=q.curve,ur=Math.max(we.width,we.height),br=ur/Ct,Ur=Pt.mag();if("minZoom"in q){var Di=i.clamp(Math.min(q.minZoom,Ue,qt),we.minZoom,we.maxZoom),fi=ur/we.zoomScale(Di-Ue);ht=Math.sqrt(fi/Ur*2)}var Ti=ht*ht;function gn(so){var Zo=(br*br-ur*ur+(so?-1:1)*Ti*Ti*Ur*Ur)/(2*(so?br:ur)*Ti*Ur);return Math.log(Math.sqrt(Zo*Zo+1)-Zo)}function rn(so){return(Math.exp(so)-Math.exp(-so))/2}function Ci(so){return(Math.exp(so)+Math.exp(-so))/2}function Bi(so){return rn(so)/Ci(so)}var Gi=gn(0),sn=function(so){return Ci(Gi)/Ci(Gi+ht*so)},zn=function(so){return ur*((Ci(Gi)*Bi(Gi+ht*so)-rn(Gi))/Ti)/Ur},Ja=(gn(1)-Gi)/ht;if(Math.abs(Ur)<1e-6||!isFinite(Ja)){if(Math.abs(ur-br)<1e-6)return this.easeTo(q,K);var co=br<ur?-1:1;Ja=Math.abs(Math.log(br/ur))/ht,zn=function(){return 0},sn=function(so){return Math.exp(co*ht*so)}}if("duration"in q)q.duration=+q.duration;else{var ts="screenSpeed"in q?+q.screenSpeed/ht:+q.speed;q.duration=1e3*Ja/ts}return q.maxDuration&&q.duration>q.maxDuration&&(q.duration=0),this._zooming=!0,this._rotating=ft!==Ve,this._pitching=Qe!==Xt,this._padding=!we.isPaddingEqual(at),this._prepareEase(K,!1),this._ease(function(so){var Zo=so*Ja,ms=1/sn(Zo);we.zoom=so===1?qt:Ue+we.scaleZoom(ms),de._rotating&&(we.bearing=i.number(ft,Ve,so)),de._pitching&&(we.pitch=i.number(Xt,Qe,so)),de._padding&&(we.interpolatePadding(hr,at,so),Rt=we.centerPoint.add(Ot));var ou=so===1?Dt:we.unproject(yt.add(Pt.mult(zn(Zo))).mult(ms));we.setLocationAtPoint(we.renderWorldCopies?ou.wrap():ou,Rt),de._fireMoveEvents(K)},function(){return de._afterEase(K)},q),this},D.prototype.isEasing=function(){return!!this._easeFrameId},D.prototype.stop=function(){return this._stop()},D.prototype._stop=function(q,K){if(this._easeFrameId&&(this._cancelRenderFrame(this._easeFrameId),delete this._easeFrameId,delete this._onEaseFrame),this._onEaseEnd){var de=this._onEaseEnd;delete this._onEaseEnd,de.call(this,K)}if(!q){var ne=this.handlers;ne&&ne.stop(!1)}return this},D.prototype._ease=function(q,K,de){de.animate===!1||de.duration===0?(q(1),K()):(this._easeStart=i.browser.now(),this._easeOptions=de,this._onEaseFrame=q,this._onEaseEnd=K,this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback))},D.prototype._renderFrameCallback=function(){var q=Math.min((i.browser.now()-this._easeStart)/this._easeOptions.duration,1);this._onEaseFrame(this._easeOptions.easing(q)),q<1?this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback):this.stop()},D.prototype._normalizeBearing=function(q,K){q=i.wrap(q,-180,180);var de=Math.abs(q-K);return Math.abs(q-360-K)<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),en=function(D){D===void 0&&(D={}),this.options=D,i.bindAll(["_toggleAttribution","_updateEditLink","_updateData","_updateCompact"],this)};en.prototype.getDefaultPosition=function(){return"bottom-right"},en.prototype.onAdd=function(D){var J=this.options&&this.options.compact;return this._map=D,this._container=o.create("div","mapboxgl-ctrl mapboxgl-ctrl-attrib"),this._compactButton=o.create("button","mapboxgl-ctrl-attrib-button",this._container),this._compactButton.addEventListener("click",this._toggleAttribution),this._setElementTitle(this._compactButton,"ToggleAttribution"),this._innerContainer=o.create("div","mapboxgl-ctrl-attrib-inner",this._container),this._innerContainer.setAttribute("role","list"),J&&this._container.classList.add("mapboxgl-compact"),this._updateAttributions(),this._updateEditLink(),this._map.on("styledata",this._updateData),this._map.on("sourcedata",this._updateData),this._map.on("moveend",this._updateEditLink),J===void 0&&(this._map.on("resize",this._updateCompact),this._updateCompact()),this._container},en.prototype.onRemove=function(){o.remove(this._container),this._map.off("styledata",this._updateData),this._map.off("sourcedata",this._updateData),this._map.off("moveend",this._updateEditLink),this._map.off("resize",this._updateCompact),this._map=void 0,this._attribHTML=void 0},en.prototype._setElementTitle=function(D,J){var q=this._map._getUIString("AttributionControl."+J);D.title=q,D.setAttribute("aria-label",q)},en.prototype._toggleAttribution=function(){this._container.classList.contains("mapboxgl-compact-show")?(this._container.classList.remove("mapboxgl-compact-show"),this._compactButton.setAttribute("aria-pressed","false")):(this._container.classList.add("mapboxgl-compact-show"),this._compactButton.setAttribute("aria-pressed","true"))},en.prototype._updateEditLink=function(){var D=this._editLink;D||(D=this._editLink=this._container.querySelector(".mapbox-improve-map"));var J=[{key:"owner",value:this.styleOwner},{key:"id",value:this.styleId},{key:"access_token",value:this._map._requestManager._customAccessToken||i.config.ACCESS_TOKEN}];if(D){var q=J.reduce(function(K,de,ne){return de.value&&(K+=de.key+"="+de.value+(ne<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")}},en.prototype._updateData=function(D){D&&(D.sourceDataType==="metadata"||D.sourceDataType==="visibility"||D.dataType==="style")&&(this._updateAttributions(),this._updateEditLink())},en.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 Xt=ft+1;Xt<D.length;Xt++)if(D[Xt].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)}},en.prototype._updateCompact=function(){this._map.getCanvasContainer().offsetWidth<=640?this._container.classList.add("mapboxgl-compact"):this._container.classList.remove("mapboxgl-compact","mapboxgl-compact-show")};var Wi=function(){i.bindAll(["_updateLogo"],this),i.bindAll(["_updateCompact"],this)};Wi.prototype.onAdd=function(D){this._map=D,this._container=o.create("div","mapboxgl-ctrl");var J=o.create("a","mapboxgl-ctrl-logo");return J.target="_blank",J.rel="noopener nofollow",J.href="https://www.mapbox.com/",J.setAttribute("aria-label",this._map._getUIString("LogoControl.Title")),J.setAttribute("rel","noopener nofollow"),this._container.appendChild(J),this._container.style.display="none",this._map.on("sourcedata",this._updateLogo),this._updateLogo(),this._map.on("resize",this._updateCompact),this._updateCompact(),this._container},Wi.prototype.onRemove=function(){o.remove(this._container),this._map.off("sourcedata",this._updateLogo),this._map.off("resize",this._updateCompact)},Wi.prototype.getDefaultPosition=function(){return"bottom-left"},Wi.prototype._updateLogo=function(D){(!D||D.sourceDataType==="metadata")&&(this._container.style.display=this._logoRequired()?"block":"none")},Wi.prototype._logoRequired=function(){if(this._map.style){var D=this._map.style.sourceCaches;for(var J in D){var q=D[J].getSource();if(q.mapbox_logo)return!0}return!1}},Wi.prototype._updateCompact=function(){var D=this._container.children;if(D.length){var J=D[0];this._map.getCanvasContainer().offsetWidth<250?J.classList.add("mapboxgl-compact"):J.classList.remove("mapboxgl-compact")}};var si=function(){this._queue=[],this._id=0,this._cleared=!1,this._currentlyRunning=!1};si.prototype.add=function(D){var J=++this._id,q=this._queue;return q.push({callback:D,id:J,cancelled:!1}),J},si.prototype.remove=function(D){for(var J=this._currentlyRunning,q=J?this._queue.concat(J):this._queue,K=0,de=q;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,Ri=i.window.ImageBitmap,ci=-2,an=22,Zi=0,Bn=60,hi={center:[0,0],zoom:0,bearing:0,pitch:0,minZoom:ci,maxZoom:an,minPitch:Zi,maxPitch:Bn,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({},hi,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<Zi)throw new Error("minPitch must be greater than or equal to "+Zi);if(q.maxPitch!=null&&q.maxPitch>Bn)throw new Error("maxPitch must be less than or equal to "+Bn);var de=new wo(q.minZoom,q.maxZoom,q.minPitch,q.maxPitch,q.renderWorldCopies);if(Y.call(this,de,q),this._interactive=q.interactive,this._maxTileCacheSize=q.maxTileCacheSize,this._failIfMajorPerformanceCaveat=q.failIfMajorPerformanceCaveat,this._preserveDrawingBuffer=q.preserveDrawingBuffer,this._antialias=q.antialias,this._trackResize=q.trackResize,this._bearingSnap=q.bearingSnap,this._refreshExpiredTiles=q.refreshExpiredTiles,this._fadeDuration=q.fadeDuration,this._crossSourceCollisions=q.crossSourceCollisions,this._crossFadingFactor=1,this._collectResourceTiming=q.collectResourceTiming,this._renderTaskQueue=new si,this._controls=[],this._mapId=i.uniqueId(),this._locale=i.extend({},Mr,q.locale),this._clickTolerance=q.clickTolerance,this._requestManager=new i.RequestManager(q.transformRequest,q.accessToken),typeof q.container=="string"){if(this._container=i.window.document.getElementById(q.container),!this._container)throw new Error("Container '"+q.container+"' not found.")}else if(q.container instanceof xi)this._container=q.container;else throw new Error("Invalid type: 'container' must be a String or HTMLElement.");if(q.maxBounds&&this.setMaxBounds(q.maxBounds),i.bindAll(["_onWindowOnline","_onWindowResize","_onMapScroll","_contextLost","_contextRestored"],this),this._setupContainer(),this._setupPainter(),this.painter===void 0)throw new Error("Failed to initialize WebGL.");this.on("move",function(){return K._update(!1)}),this.on("moveend",function(){return K._update(!1)}),this.on("zoom",function(){return K._update(!0)}),typeof i.window!="undefined"&&(i.window.addEventListener("online",this._onWindowOnline,!1),i.window.addEventListener("resize",this._onWindowResize,!1),i.window.addEventListener("orientationchange",this._onWindowResize,!1)),this.handlers=new Ei(this,q);var ne=typeof q.hash=="string"&&q.hash||void 0;this._hash=q.hash&&new Ul(ne).addTo(this),(!this._hash||!this._hash._onHashChange())&&(this.jumpTo({center:q.center,zoom:q.zoom,bearing:q.bearing,pitch:q.pitch}),q.bounds&&(this.resize(),this.fitBounds(q.bounds,i.extend({},q.fitBoundsOptions,{duration:0})))),this.resize(),this._localIdeographFontFamily=q.localIdeographFontFamily,q.style&&this.setStyle(q.style,{localIdeographFontFamily:q.localIdeographFontFamily}),q.attributionControl&&this.addControl(new en({customAttribution:q.customAttribution})),this.addControl(new Wi,q.logoPosition),this.on("style.load",function(){K.transform.unmodified&&K.jumpTo(K.style.stylesheet)}),this.on("data",function(we){K._update(we.dataType==="style"),K.fire(new i.Event(we.dataType+"data",we))}),this.on("dataloading",function(we){K.fire(new i.Event(we.dataType+"dataloading",we))})}Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D;var J={showTileBoundaries:{configurable:!0},showPadding:{configurable:!0},showCollisionBoxes:{configurable:!0},showOverdrawInspector:{configurable:!0},repaint:{configurable:!0},vertices:{configurable:!0},version:{configurable:!0}};return D.prototype._getMapId=function(){return this._mapId},D.prototype.addControl=function(K,de){if(de===void 0&&(K.getDefaultPosition?de=K.getDefaultPosition():de="top-right"),!K||!K.onAdd)return this.fire(new i.ErrorEvent(new Error("Invalid argument to map.addControl(). Argument must be a control with onAdd and onRemove methods.")));var ne=K.onAdd(this);this._controls.push(K);var we=this._controlPositions[de];return de.indexOf("bottom")!==-1?we.insertBefore(ne,we.firstChild):we.appendChild(ne),this},D.prototype.removeControl=function(K){if(!K||!K.onRemove)return this.fire(new i.ErrorEvent(new Error("Invalid argument to map.removeControl(). Argument must be a control with onAdd and onRemove methods.")));var de=this._controls.indexOf(K);return de>-1&&this._controls.splice(de,1),K.onRemove(this),this},D.prototype.hasControl=function(K){return this._controls.indexOf(K)>-1},D.prototype.resize=function(K){var de=this._containerDimensions(),ne=de[0],we=de[1];this._resizeCanvas(ne,we),this.transform.resize(ne,we),this.painter.resize(ne,we);var Ue=!this._moving;return Ue&&(this.stop(),this.fire(new i.Event("movestart",K)).fire(new i.Event("move",K))),this.fire(new i.Event("resize",K)),Ue&&this.fire(new i.Event("moveend",K)),this},D.prototype.getBounds=function(){return this.transform.getBounds()},D.prototype.getMaxBounds=function(){return this.transform.getMaxBounds()},D.prototype.setMaxBounds=function(K){return this.transform.setMaxBounds(i.LngLatBounds.convert(K)),this._update()},D.prototype.setMinZoom=function(K){if(K=K==null?ci:K,K>=ci&&K<=this.transform.maxZoom)return this.transform.minZoom=K,this._update(),this.getZoom()<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?an: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?Zi:K,K<Zi)throw new Error("minPitch must be greater than or equal to "+Zi);if(K>=Zi&&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 "+Zi+" and the current maxPitch, inclusive")},D.prototype.getMinPitch=function(){return this.transform.minPitch},D.prototype.setMaxPitch=function(K){if(K=K==null?Bn:K,K>Bn)throw new Error("maxPitch must be less than or equal to "+Bn);if(K>=this.transform.minPitch)return this.transform.maxPitch=K,this._update(),this.getPitch()>K&&this.setPitch(K),this;throw new Error("maxPitch must be greater than the current minPitch")},D.prototype.getMaxPitch=function(){return this.transform.maxPitch},D.prototype.getRenderWorldCopies=function(){return this.transform.renderWorldCopies},D.prototype.setRenderWorldCopies=function(K){return this.transform.renderWorldCopies=K,this._update()},D.prototype.project=function(K){return this.transform.locationPoint(i.LngLat.convert(K))},D.prototype.unproject=function(K){return this.transform.pointLocation(i.Point.convert(K))},D.prototype.isMoving=function(){return this._moving||this.handlers.isMoving()},D.prototype.isZooming=function(){return this._zooming||this.handlers.isZooming()},D.prototype.isRotating=function(){return this._rotating||this.handlers.isRotating()},D.prototype._createDelegatedListener=function(K,de,ne){var we=this,Ue;if(K==="mouseenter"||K==="mouseover"){var ft=!1,Xt=function(Ct){var Ot=we.getLayer(de)?we.queryRenderedFeatures(Ct.point,{layers:[de]}):[];Ot.length?ft||(ft=!0,ne.call(we,new se(K,we,Ct.originalEvent,{features:Ot}))):ft=!1},hr=function(){ft=!1};return{layer:de,listener:ne,delegates:{mousemove:Xt,mouseout:hr}}}else if(K==="mouseleave"||K==="mouseout"){var qt=!1,Ve=function(Ct){var Ot=we.getLayer(de)?we.queryRenderedFeatures(Ct.point,{layers:[de]}):[];Ot.length?qt=!0:qt&&(qt=!1,ne.call(we,new se(K,we,Ct.originalEvent)))},Qe=function(Ct){qt&&(qt=!1,ne.call(we,new se(K,we,Ct.originalEvent)))};return{layer:de,listener:ne,delegates:{mousemove:Ve,mouseout:Qe}}}else{var at=function(Ct){var Ot=we.getLayer(de)?we.queryRenderedFeatures(Ct.point,{layers:[de]}):[];Ot.length&&(Ct.features=Ot,ne.call(we,Ct),delete Ct.features)};return{layer:de,listener:ne,delegates:(Ue={},Ue[K]=at,Ue)}}},D.prototype.on=function(K,de,ne){if(ne===void 0)return Y.prototype.on.call(this,K,de);var we=this._createDelegatedListener(K,de,ne);this._delegatedListeners=this._delegatedListeners||{},this._delegatedListeners[K]=this._delegatedListeners[K]||[],this._delegatedListeners[K].push(we);for(var Ue in we.delegates)this.on(Ue,we.delegates[Ue]);return this},D.prototype.once=function(K,de,ne){if(ne===void 0)return Y.prototype.once.call(this,K,de);var we=this._createDelegatedListener(K,de,ne);for(var Ue in we.delegates)this.once(Ue,we.delegates[Ue]);return this},D.prototype.off=function(K,de,ne){var we=this;if(ne===void 0)return Y.prototype.off.call(this,K,de);var Ue=function(ft){for(var Xt=ft[K],hr=0;hr<Xt.length;hr++){var qt=Xt[hr];if(qt.layer===de&&qt.listener===ne){for(var Ve in qt.delegates)we.off(Ve,qt.delegates[Ve]);return Xt.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,Xt){ft?ne.fire(new i.ErrorEvent(ft)):Xt&&ne._updateDiff(Xt,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,Xt=ne.stretchY,hr=ne.content;this._lazyInitEmptyStyle();var qt=0;if(de instanceof Yr||Ri&&de instanceof Ri){var Ve=i.browser.getImageData(de),Qe=Ve.width,at=Ve.height,Ct=Ve.data;this.style.addImage(K,{data:new i.RGBAImage({width:Qe,height:at},Ct),pixelRatio:we,stretchX:ft,stretchY:Xt,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,Rt=de.height,Bt=de.data,Dt=de;this.style.addImage(K,{data:new i.RGBAImage({width:Ot,height:Rt},new Uint8Array(Bt)),pixelRatio:we,stretchX:ft,stretchY:Xt,content:hr,sdf:Ue,version:qt,userImage:Dt}),Dt.onAdd&&Dt.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||Ri&&de instanceof Ri?i.browser.getImageData(de):de,Ue=we.width,ft=we.height,Xt=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||Ri&&de instanceof Ri);ne.data.replace(Xt,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(Xt){ft[Xt]=o.create("div","mapboxgl-ctrl-"+Xt,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 Xt=this.transform.zoom,hr=i.browser.now();this.style.zoomHistory.update(Xt,hr);var qt=new i.EvaluationParameters(Xt,{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 Qe=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:Qe,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 Ct=this._sourcesDirty||this._styleDirty||this._placementDirty;return Ct||this._repaint?this.triggerRepaint():!this.isMoving()&&this.loaded()&&this.fire(new i.Event("idle")),this._loaded&&!this._fullyLoaded&&!Ct&&(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 Ji={showCompass:!0,showZoom:!0,visualizePitch:!1},Vi=function(D){var J=this;this.options=i.extend({},Ji,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))};Vi.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())},Vi.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},Vi.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 Ni(this._map,this._compass,this.options.visualizePitch)),this._container},Vi.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},Vi.prototype._createButton=function(D,J){var q=o.create("button",D,this._container);return q.type="button",q.addEventListener("click",J),q},Vi.prototype._setButtonTitle=function(D,J){var q=this._map._getUIString("NavigationControl."+J);D.title=q,D.setAttribute("aria-label",q)};var Ni=function(D,J,q){q===void 0&&(q=!1),this._clickTolerance=10,this.element=J,this.mouseRotate=new Ln({clickTolerance:D.dragRotate._mouseRotate._clickTolerance}),this.map=D,q&&(this.mousePitch=new En({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)};Ni.prototype.down=function(D,J){this.mouseRotate.mousedown(D,J),this.mousePitch&&this.mousePitch.mousedown(D,J),o.disableDrag()},Ni.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)}},Ni.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()},Ni.prototype.offTemp=function(){o.enableDrag(),o.removeEventListener(i.window,"mousemove",this.mousemove),o.removeEventListener(i.window,"mouseup",this.mouseup)},Ni.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)},Ni.prototype.mousemove=function(D){this.move(D,o.mousePos(this.element,D))},Ni.prototype.mouseup=function(D){this.mouseRotate.mouseupWindow(D),this.mousePitch&&this.mousePitch.mouseupWindow(D),this.offTemp()},Ni.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))},Ni.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))},Ni.prototype.touchend=function(D){D.targetTouches.length===0&&this._startPos&&this._lastPos&&this._startPos.dist(this._lastPos)<this._clickTolerance&&this.element.click(),this.reset()},Ni.prototype.reset=function(){this.mouseRotate.reset(),this.mousePitch&&this.mousePitch.reset(),delete this._startPos,delete this._lastPos,this.offTemp()};function pn(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 Vn={center:"translate(-50%,-50%)",top:"translate(-50%,0)","top-left":"translate(0,0)","top-right":"translate(-100%,0)",bottom:"translate(-50%,-100%)","bottom-left":"translate(0,-100%)","bottom-right":"translate(-100%,-100%)",left:"translate(0,-50%)",right:"translate(-100%,-50%)"};function na(Y,D,J){var q=Y.classList;for(var K in Vn)q.remove("mapboxgl-"+J+"-anchor-"+K);q.add("mapboxgl-"+J+"-anchor-"+D)}var Ki=function(Y){function D(J,q){if(Y.call(this),(J instanceof i.window.HTMLElement||q)&&(J=i.extend({element:J},q)),i.bindAll(["_update","_onMove","_onUp","_addDragHandler","_onMapClick","_onKeyPress"],this),this._anchor=J&&J.anchor||"center",this._color=J&&J.color||"#3FB1CE",this._scale=J&&J.scale||1,this._draggable=J&&J.draggable||!1,this._clickTolerance=J&&J.clickTolerance||0,this._isDragging=!1,this._state="inactive",this._rotation=J&&J.rotation||0,this._rotationAlignment=J&&J.rotationAlignment||"auto",this._pitchAlignment=J&&J.pitchAlignment&&J.pitchAlignment!=="auto"?J.pitchAlignment:this._rotationAlignment,!J||!J.element){this._defaultMarker=!0,this._element=o.create("div"),this._element.setAttribute("aria-label","Map marker");var K=o.createNS("http://www.w3.org/2000/svg","svg"),de=41,ne=27;K.setAttributeNS(null,"display","block"),K.setAttributeNS(null,"height",de+"px"),K.setAttributeNS(null,"width",ne+"px"),K.setAttributeNS(null,"viewBox","0 0 "+ne+" "+de);var we=o.createNS("http://www.w3.org/2000/svg","g");we.setAttributeNS(null,"stroke","none"),we.setAttributeNS(null,"stroke-width","1"),we.setAttributeNS(null,"fill","none"),we.setAttributeNS(null,"fill-rule","evenodd");var Ue=o.createNS("http://www.w3.org/2000/svg","g");Ue.setAttributeNS(null,"fill-rule","nonzero");var ft=o.createNS("http://www.w3.org/2000/svg","g");ft.setAttributeNS(null,"transform","translate(3.0, 29.0)"),ft.setAttributeNS(null,"fill","#000000");for(var Xt=[{rx:"10.5",ry:"5.25002273"},{rx:"10.5",ry:"5.25002273"},{rx:"9.5",ry:"4.77275007"},{rx:"8.5",ry:"4.29549936"},{rx:"7.5",ry:"3.81822308"},{rx:"6.5",ry:"3.34094679"},{rx:"5.5",ry:"2.86367051"},{rx:"4.5",ry:"2.38636864"}],hr=0,qt=Xt;hr<qt.length;hr+=1){var Ve=qt[hr],Qe=o.createNS("http://www.w3.org/2000/svg","ellipse");Qe.setAttributeNS(null,"opacity","0.04"),Qe.setAttributeNS(null,"cx","10.5"),Qe.setAttributeNS(null,"cy","5.80029008"),Qe.setAttributeNS(null,"rx",Ve.rx),Qe.setAttributeNS(null,"ry",Ve.ry),ft.appendChild(Qe)}var at=o.createNS("http://www.w3.org/2000/svg","g");at.setAttributeNS(null,"fill",this._color);var Ct=o.createNS("http://www.w3.org/2000/svg","path");Ct.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(Ct);var Ot=o.createNS("http://www.w3.org/2000/svg","g");Ot.setAttributeNS(null,"opacity","0.25"),Ot.setAttributeNS(null,"fill","#000000");var Rt=o.createNS("http://www.w3.org/2000/svg","path");Rt.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(Rt);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 Dt=o.createNS("http://www.w3.org/2000/svg","g");Dt.setAttributeNS(null,"transform","translate(8.0, 8.0)");var yt=o.createNS("http://www.w3.org/2000/svg","circle");yt.setAttributeNS(null,"fill","#000000"),yt.setAttributeNS(null,"opacity","0.25"),yt.setAttributeNS(null,"cx","5.5"),yt.setAttributeNS(null,"cy","5.5"),yt.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"),Dt.appendChild(yt),Dt.appendChild(Pt),Ue.appendChild(ft),Ue.appendChild(at),Ue.appendChild(Ot),Ue.appendChild(Bt),Ue.appendChild(Dt),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=pn(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,Vn[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),kn={positionOptions:{enableHighAccuracy:!1,maximumAge:0,timeout:6e3},fitBoundsOptions:{maxZoom:15},trackUserLocation:!1,showAccuracyCircle:!0,showUserLocation:!0},ta;function oa(Y){ta!==void 0?Y(ta):i.window.navigator.permissions!==void 0?i.window.navigator.permissions.query({name:"geolocation"}).then(function(D){ta=D.state!=="denied",Y(ta)}):(ta=!!i.window.navigator.geolocation,Y(ta))}var ba=0,is=!1,Zs=function(Y){function D(J){Y.call(this),this.options=i.extend({},kn,J),i.bindAll(["_onSuccess","_onError","_onZoom","_finish","_setupUI","_updateCamera","_updateMarker"],this)}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.onAdd=function(q){return this._map=q,this._container=o.create("div","mapboxgl-ctrl mapboxgl-ctrl-group"),oa(this._setupUI),this._container},D.prototype.onRemove=function(){this._geolocationWatchID!==void 0&&(i.window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0),this.options.showUserLocation&&this._userLocationDotMarker&&this._userLocationDotMarker.remove(),this.options.showAccuracyCircle&&this._accuracyCircleMarker&&this._accuracyCircleMarker.remove(),o.remove(this._container),this._map.off("zoom",this._onZoom),this._map=void 0,ba=0,is=!1},D.prototype._isOutOfMapMaxBounds=function(q){var K=this._map.getMaxBounds(),de=q.coords;return K&&(de.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&&is)return;this._setErrorState()}this._watchState!=="OFF"&&this.options.showUserLocation&&this._dotElement.classList.add("mapboxgl-user-location-dot-stale"),this.fire(new i.Event("error",q)),this._finish()}},D.prototype._finish=function(){this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0},D.prototype._setupUI=function(q){var K=this;if(this._container.addEventListener("contextmenu",function(we){return we.preventDefault()}),this._geolocateButton=o.create("button","mapboxgl-ctrl-geolocate",this._container),o.create("span","mapboxgl-ctrl-icon",this._geolocateButton).setAttribute("aria-hidden",!0),this._geolocateButton.type="button",q===!1){i.warnOnce("Geolocation support is not available so the GeolocateControl will be disabled.");var de=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.disabled=!0,this._geolocateButton.title=de,this._geolocateButton.setAttribute("aria-label",de)}else{var ne=this._map._getUIString("GeolocateControl.FindMyLocation");this._geolocateButton.title=ne,this._geolocateButton.setAttribute("aria-label",ne)}this.options.trackUserLocation&&(this._geolocateButton.setAttribute("aria-pressed","false"),this._watchState="OFF"),this.options.showUserLocation&&(this._dotElement=o.create("div","mapboxgl-user-location-dot"),this._userLocationDotMarker=new Ki(this._dotElement),this._circleElement=o.create("div","mapboxgl-user-location-accuracy-circle"),this._accuracyCircleMarker=new Ki({element:this._circleElement,pitchAlignment:"map"}),this.options.trackUserLocation&&(this._watchState="OFF"),this._map.on("zoom",this._onZoom)),this._geolocateButton.addEventListener("click",this.trigger.bind(this)),this._setup=!0,this.options.trackUserLocation&&this._map.on("movestart",function(we){var Ue=we.originalEvent&&we.originalEvent.type==="resize";!we.geolocateSource&&K._watchState==="ACTIVE_LOCK"&&!Ue&&(K._watchState="BACKGROUND",K._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background"),K._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),K.fire(new i.Event("trackuserlocationend")))})},D.prototype.trigger=function(){if(!this._setup)return i.warnOnce("Geolocate control triggered before added to a map"),!1;if(this.options.trackUserLocation){switch(this._watchState){case"OFF":this._watchState="WAITING_ACTIVE",this.fire(new i.Event("trackuserlocationstart"));break;case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":case"BACKGROUND_ERROR":ba--,is=!1,this._watchState="OFF",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error"),this.fire(new i.Event("trackuserlocationend"));break;case"BACKGROUND":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._lastKnownPosition&&this._updateCamera(this._lastKnownPosition),this.fire(new i.Event("trackuserlocationstart"));break}switch(this._watchState){case"WAITING_ACTIVE":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"ACTIVE_LOCK":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"ACTIVE_ERROR":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error");break;case"BACKGROUND":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background");break;case"BACKGROUND_ERROR":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background-error");break}if(this._watchState==="OFF"&&this._geolocationWatchID!==void 0)this._clearWatch();else if(this._geolocationWatchID===void 0){this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","true"),ba++;var q;ba>1?(q={maximumAge:6e5,timeout:0},is=!0):(q=this.options.positionOptions,is=!1),this._geolocationWatchID=i.window.navigator.geolocation.watchPosition(this._onSuccess,this._onError,q)}}else i.window.navigator.geolocation.getCurrentPosition(this._onSuccess,this._onError,this.options.positionOptions),this._timeoutId=setTimeout(this._finish,1e4);return!0},D.prototype._clearWatch=function(){i.window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0,this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","false"),this.options.showUserLocation&&this._updateMarker(null)},D}(i.Evented),Va={maxWidth:100,unit:"metric"},Ml=function(D){this.options=i.extend({},Va,D),i.bindAll(["_onMove","setUnit"],this)};Ml.prototype.getDefaultPosition=function(){return"bottom-left"},Ml.prototype._onMove=function(){zo(this._map,this._container,this.options)},Ml.prototype.onAdd=function(D){return this._map=D,this._container=o.create("div","mapboxgl-ctrl mapboxgl-ctrl-scale",D.getContainer()),this._map.on("move",this._onMove),this._onMove(),this._container},Ml.prototype.onRemove=function(){o.remove(this._container),this._map.off("move",this._onMove),this._map=void 0},Ml.prototype.setUnit=function(D){this.options.unit=D,zo(this._map,this._container,this.options)};function zo(Y,D,J){var q=J&&J.maxWidth||100,K=Y._container.clientHeight/2,de=Y.unproject([0,K]),ne=Y.unproject([q,K]),we=de.distanceTo(ne);if(J&&J.unit==="imperial"){var Ue=3.2808*we;if(Ue>5280){var ft=Ue/5280;Qs(D,q,ft,Y._getUIString("ScaleControl.Miles"))}else Qs(D,q,Ue,Y._getUIString("ScaleControl.Feet"))}else if(J&&J.unit==="nautical"){var Xt=we/1852;Qs(D,q,Xt,Y._getUIString("ScaleControl.NauticalMiles"))}else we>=1e3?Qs(D,q,we/1e3,Y._getUIString("ScaleControl.Kilometers")):Qs(D,q,we,Y._getUIString("ScaleControl.Meters"))}function Qs(Y,D,J,q){var K=Vl(J),de=K/J;Y.style.width=D*de+"px",Y.innerHTML=K+"&nbsp;"+q}function al(Y){var D=Math.pow(10,Math.ceil(-Math.log(Y)/Math.LN10));return Math.round(Y*D)/D}function Vl(Y){var D=Math.pow(10,(""+Math.floor(Y)).length-1),J=Y/D;return J=J>=10?10:J>=5?5:J>=3?3:J>=2?2:J>=1?1:al(J),D*J}var ss=function(D){this._fullscreen=!1,D&&D.container&&(D.container instanceof i.window.HTMLElement?this._container=D.container:i.warnOnce("Full screen control 'container' must be a DOM element.")),i.bindAll(["_onClickFullscreen","_changeIcon"],this),"onfullscreenchange"in i.window.document?this._fullscreenchange="fullscreenchange":"onmozfullscreenchange"in i.window.document?this._fullscreenchange="mozfullscreenchange":"onwebkitfullscreenchange"in i.window.document?this._fullscreenchange="webkitfullscreenchange":"onmsfullscreenchange"in i.window.document&&(this._fullscreenchange="MSFullscreenChange")};ss.prototype.onAdd=function(D){return this._map=D,this._container||(this._container=this._map.getContainer()),this._controlContainer=o.create("div","mapboxgl-ctrl mapboxgl-ctrl-group"),this._checkFullscreenSupport()?this._setupUI():(this._controlContainer.style.display="none",i.warnOnce("This device does not support fullscreen mode.")),this._controlContainer},ss.prototype.onRemove=function(){o.remove(this._controlContainer),this._map=null,i.window.document.removeEventListener(this._fullscreenchange,this._changeIcon)},ss.prototype._checkFullscreenSupport=function(){return!!(i.window.document.fullscreenEnabled||i.window.document.mozFullScreenEnabled||i.window.document.msFullscreenEnabled||i.window.document.webkitFullscreenEnabled)},ss.prototype._setupUI=function(){var D=this._fullscreenButton=o.create("button","mapboxgl-ctrl-fullscreen",this._controlContainer);o.create("span","mapboxgl-ctrl-icon",D).setAttribute("aria-hidden",!0),D.type="button",this._updateTitle(),this._fullscreenButton.addEventListener("click",this._onClickFullscreen),i.window.document.addEventListener(this._fullscreenchange,this._changeIcon)},ss.prototype._updateTitle=function(){var D=this._getTitle();this._fullscreenButton.setAttribute("aria-label",D),this._fullscreenButton.title=D},ss.prototype._getTitle=function(){return this._map._getUIString(this._isFullscreen()?"FullscreenControl.Exit":"FullscreenControl.Enter")},ss.prototype._isFullscreen=function(){return this._fullscreen},ss.prototype._changeIcon=function(){var D=i.window.document.fullscreenElement||i.window.document.mozFullScreenElement||i.window.document.webkitFullscreenElement||i.window.document.msFullscreenElement;D===this._container!==this._fullscreen&&(this._fullscreen=!this._fullscreen,this._fullscreenButton.classList.toggle("mapboxgl-ctrl-shrink"),this._fullscreenButton.classList.toggle("mapboxgl-ctrl-fullscreen"),this._updateTitle())},ss.prototype._onClickFullscreen=function(){this._isFullscreen()?i.window.document.exitFullscreen?i.window.document.exitFullscreen():i.window.document.mozCancelFullScreen?i.window.document.mozCancelFullScreen():i.window.document.msExitFullscreen?i.window.document.msExitFullscreen():i.window.document.webkitCancelFullScreen&&i.window.document.webkitCancelFullScreen():this._container.requestFullscreen?this._container.requestFullscreen():this._container.mozRequestFullScreen?this._container.mozRequestFullScreen():this._container.msRequestFullscreen?this._container.msRequestFullscreen():this._container.webkitRequestFullscreen&&this._container.webkitRequestFullscreen()};var Vs={closeButton:!0,closeOnClick:!0,focusAfterOpen:!0,className:"",maxWidth:"240px"},Ys=["a[href]","[tabindex]:not([tabindex='-1'])","[contenteditable]:not([contenteditable='false'])","button:not([disabled])","input:not([disabled])","select:not([disabled])","textarea:not([disabled])"].join(", "),wa=function(Y){function D(J){Y.call(this),this.options=i.extend(Object.create(Vs),J),i.bindAll(["_update","_onClose","remove","_onMouseMove","_onMouseUp","_onDrag"],this)}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.addTo=function(q){return this._map&&this.remove(),this._map=q,this.options.closeOnClick&&this._map.on("click",this._onClose),this.options.closeOnMove&&this._map.on("move",this._onClose),this._map.on("remove",this.remove),this._update(),this._focusFirstElement(),this._trackPointer?(this._map.on("mousemove",this._onMouseMove),this._map.on("mouseup",this._onMouseUp),this._container&&this._container.classList.add("mapboxgl-popup-track-pointer"),this._map._canvasContainer.classList.add("mapboxgl-track-pointer")):this._map.on("move",this._update),this.fire(new i.Event("open")),this},D.prototype.isOpen=function(){return!!this._map},D.prototype.remove=function(){return this._content&&o.remove(this._content),this._container&&(o.remove(this._container),delete this._container),this._map&&(this._map.off("move",this._update),this._map.off("move",this._onClose),this._map.off("click",this._onClose),this._map.off("remove",this.remove),this._map.off("mousemove",this._onMouseMove),this._map.off("mouseup",this._onMouseUp),this._map.off("drag",this._onDrag),delete this._map),this.fire(new i.Event("close")),this},D.prototype.getLngLat=function(){return this._lngLat},D.prototype.setLngLat=function(q){return this._lngLat=i.LngLat.convert(q),this._pos=null,this._trackPointer=!1,this._update(),this._map&&(this._map.on("move",this._update),this._map.off("mousemove",this._onMouseMove),this._container&&this._container.classList.remove("mapboxgl-popup-track-pointer"),this._map._canvasContainer.classList.remove("mapboxgl-track-pointer")),this},D.prototype.trackPointer=function(){return this._trackPointer=!0,this._pos=null,this._update(),this._map&&(this._map.off("move",this._update),this._map.on("mousemove",this._onMouseMove),this._map.on("drag",this._onDrag),this._container&&this._container.classList.add("mapboxgl-popup-track-pointer"),this._map._canvasContainer.classList.add("mapboxgl-track-pointer")),this},D.prototype.getElement=function(){return this._container},D.prototype.setText=function(q){return this.setDOMContent(i.window.document.createTextNode(q))},D.prototype.setHTML=function(q){var K=i.window.document.createDocumentFragment(),de=i.window.document.createElement("body"),ne;for(de.innerHTML=q;ne=de.firstChild,!!ne;)K.appendChild(ne);return this.setDOMContent(K)},D.prototype.getMaxWidth=function(){return this._container&&this._container.style.maxWidth},D.prototype.setMaxWidth=function(q){return this.options.maxWidth=q,this._update(),this},D.prototype.setDOMContent=function(q){if(this._content)for(;this._content.hasChildNodes();)this._content.firstChild&&this._content.removeChild(this._content.firstChild);else this._content=o.create("div","mapboxgl-popup-content",this._container);return this._content.appendChild(q),this._createCloseButton(),this._update(),this._focusFirstElement(),this},D.prototype.addClassName=function(q){this._container&&this._container.classList.add(q)},D.prototype.removeClassName=function(q){this._container&&this._container.classList.remove(q)},D.prototype.setOffset=function(q){return this.options.offset=q,this._update(),this},D.prototype.toggleClassName=function(q){if(this._container)return this._container.classList.toggle(q)},D.prototype._createCloseButton=function(){this.options.closeButton&&(this._closeButton=o.create("button","mapboxgl-popup-close-button",this._content),this._closeButton.type="button",this._closeButton.setAttribute("aria-label","Close popup"),this._closeButton.innerHTML="&#215;",this._closeButton.addEventListener("click",this._onClose))},D.prototype._onMouseUp=function(q){this._update(q.point)},D.prototype._onMouseMove=function(q){this._update(q.point)},D.prototype._onDrag=function(q){this._update(q.point)},D.prototype._update=function(q){var K=this,de=this._lngLat||this._trackPointer;if(!(!this._map||!de||!this._content)&&(this._container||(this._container=o.create("div","mapboxgl-popup",this._map.getContainer()),this._tip=o.create("div","mapboxgl-popup-tip",this._container),this._container.appendChild(this._content),this.options.className&&this.options.className.split(" ").forEach(function(Ve){return K._container.classList.add(Ve)}),this._trackPointer&&this._container.classList.add("mapboxgl-popup-track-pointer")),this.options.maxWidth&&this._container.style.maxWidth!==this.options.maxWidth&&(this._container.style.maxWidth=this.options.maxWidth),this._map.transform.renderWorldCopies&&!this._trackPointer&&(this._lngLat=pn(this._lngLat,this._pos,this._map.transform)),!(this._trackPointer&&!q))){var ne=this._pos=this._trackPointer&&q?q:this._map.project(this._lngLat),we=this.options.anchor,Ue=ol(this.options.offset);if(!we){var ft=this._container.offsetWidth,Xt=this._container.offsetHeight,hr;ne.y+Ue.bottom.y<Xt?hr=["top"]:ne.y>this._map.transform.height-Xt?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,Vn[we]+" translate("+qt.x+"px,"+qt.y+"px)"),na(this._container,we,"popup")}},D.prototype._focusFirstElement=function(){if(!(!this.options.focusAfterOpen||!this._container)){var q=this._container.querySelector(Ys);q&&q.focus()}},D.prototype._onClose=function(){this.remove()},D}(i.Evented);function ol(Y){if(Y)if(typeof Y=="number"){var D=Math.round(Math.sqrt(.5*Math.pow(Y,2)));return{center:new i.Point(0,0),top:new i.Point(0,Y),"top-left":new i.Point(D,D),"top-right":new i.Point(-D,D),bottom:new i.Point(0,-Y),"bottom-left":new i.Point(D,-D),"bottom-right":new i.Point(-D,-D),left:new i.Point(Y,0),right:new i.Point(-Y,0)}}else if(Y instanceof i.Point||Array.isArray(Y)){var J=i.Point.convert(Y);return{center:J,top:J,"top-left":J,"top-right":J,bottom:J,"bottom-left":J,"bottom-right":J,left:J,right:J}}else return{center:i.Point.convert(Y.center||[0,0]),top:i.Point.convert(Y.top||[0,0]),"top-left":i.Point.convert(Y["top-left"]||[0,0]),"top-right":i.Point.convert(Y["top-right"]||[0,0]),bottom:i.Point.convert(Y.bottom||[0,0]),"bottom-left":i.Point.convert(Y["bottom-left"]||[0,0]),"bottom-right":i.Point.convert(Y["bottom-right"]||[0,0]),left:i.Point.convert(Y.left||[0,0]),right:i.Point.convert(Y.right||[0,0])};else return ol(new i.Point(0,0))}var io={version:i.version,supported:a,setRTLTextPlugin:i.setRTLTextPlugin,getRTLTextPluginStatus:i.getRTLTextPluginStatus,Map:li,NavigationControl:Vi,GeolocateControl:Zs,AttributionControl:en,ScaleControl:Ml,FullscreenControl:ss,Popup:wa,Marker:Ki,Style:yu,LngLat:i.LngLat,LngLatBounds:i.LngLatBounds,Point:i.Point,MercatorCoordinate:i.MercatorCoordinate,Evented:i.Evented,config:i.config,prewarm:ua,clearPrewarmedResources:ma,get accessToken(){return i.config.ACCESS_TOKEN},set accessToken(Y){i.config.ACCESS_TOKEN=Y},get baseApiUrl(){return i.config.API_URL},set baseApiUrl(Y){i.config.API_URL=Y},get workerCount(){return fn.workerCount},set workerCount(Y){fn.workerCount=Y},get maxParallelImageRequests(){return i.config.MAX_PARALLEL_IMAGE_REQUESTS},set maxParallelImageRequests(Y){i.config.MAX_PARALLEL_IMAGE_REQUESTS=Y},clearStorage:function(D){i.clearTileCache(D)},workerUrl:""};return io}),r})});var fGe=ye((_xr,cGe)=>{"use strict";var iw=Dr(),Fjt=ru().sanitizeHTML,zjt=iJ(),sGe=c1();function lGe(e,t){this.subplot=e,this.uid=e.uid+"-"+t,this.index=t,this.idSource="source-"+this.uid,this.idLayer=sGe.layoutLayerPrefix+this.uid,this.sourceType=null,this.source=null,this.layerType=null,this.below=null,this.visible=!1}var ig=lGe.prototype;ig.update=function(t){this.visible?this.needsNewImage(t)?this.updateImage(t):this.needsNewSource(t)?(this.removeLayer(),this.updateSource(t),this.updateLayer(t)):this.needsNewLayer(t)?this.updateLayer(t):this.updateStyle(t):(this.updateSource(t),this.updateLayer(t)),this.visible=$z(t)};ig.needsNewImage=function(e){var t=this.subplot.map;return t.getSource(this.idSource)&&this.sourceType==="image"&&e.sourcetype==="image"&&(this.source!==e.source||JSON.stringify(this.coordinates)!==JSON.stringify(e.coordinates))};ig.needsNewSource=function(e){return this.sourceType!==e.sourcetype||JSON.stringify(this.source)!==JSON.stringify(e.source)||this.layerType!==e.type};ig.needsNewLayer=function(e){return this.layerType!==e.type||this.below!==this.subplot.belowLookup["layout-"+this.index]};ig.lookupBelow=function(){return this.subplot.belowLookup["layout-"+this.index]};ig.updateImage=function(e){var t=this.subplot.map;t.getSource(this.idSource).updateImage({url:e.source,coordinates:e.coordinates});var r=this.findFollowingMapboxLayerId(this.lookupBelow());r!==null&&this.subplot.map.moveLayer(this.idLayer,r)};ig.updateSource=function(e){var t=this.subplot.map;if(t.getSource(this.idSource)&&t.removeSource(this.idSource),this.sourceType=e.sourcetype,this.source=e.source,!!$z(e)){var r=Ojt(e);t.addSource(this.idSource,r)}};ig.findFollowingMapboxLayerId=function(e){if(e==="traces")for(var t=this.subplot.getMapLayers(),r=0;r<t.length;r++){var n=t[r].id;if(typeof n=="string"&&n.indexOf(sGe.traceLayerPrefix)===0){e=n;break}}return e};ig.updateLayer=function(e){var t=this.subplot,r=uGe(e),n=this.lookupBelow(),i=this.findFollowingMapboxLayerId(n);this.removeLayer(),$z(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($z(e)){var t=uGe(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 $z(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 uGe(e){var t={},r={};switch(e.type){case"circle":iw.extendFlat(r,{"circle-radius":e.circle.radius,"circle-color":e.color,"circle-opacity":e.opacity});break;case"line":iw.extendFlat(r,{"line-width":e.line.width,"line-color":e.color,"line-opacity":e.opacity,"line-dasharray":e.line.dash});break;case"fill":iw.extendFlat(r,{"fill-color":e.color,"fill-outline-color":e.fill.outlinecolor,"fill-opacity":e.opacity});break;case"symbol":var n=e.symbol,i=zjt(n.textposition,n.iconsize);iw.extendFlat(t,{"icon-image":n.icon+"-15","icon-size":n.iconsize/10,"text-field":n.text,"text-size":n.textfont.size,"text-anchor":i.anchor,"text-offset":i.offset,"symbol-placement":n.placement}),iw.extendFlat(r,{"icon-color":e.color,"text-color":n.textfont.color,"text-opacity":e.opacity});break;case"raster":iw.extendFlat(r,{"raster-fade-duration":0,"raster-opacity":e.opacity});break}return{layout:t,paint:r}}function Ojt(e){var t=e.sourcetype,r=e.source,n={type:t},i;return t==="geojson"?i="data":t==="vector"?i=typeof r=="string"?"url":"tiles":t==="raster"?(i="tiles",n.tileSize=256):t==="image"&&(i="url",n.coordinates=e.coordinates),n[i]=r,e.sourceattribution&&(n.attribution=Fjt(e.sourceattribution)),n}cGe.exports=function(t,r,n){var i=new lGe(t,r);return i.update(n),i}});var xGe=ye((xxr,_Ge)=>{"use strict";var cJ=uJ(),fJ=Dr(),pGe=ix(),hGe=qa(),qjt=ho(),Bjt=yv(),Qz=vf(),gGe=Eg(),Njt=gGe.drawMode,Ujt=gGe.selectMode,Vjt=Of().prepSelect,Gjt=Of().clearOutline,Hjt=Of().clearSelectionsCache,jjt=Of().selectOnClick,_x=c1(),Wjt=fGe();function mGe(e,t){this.id=t,this.gd=e;var r=e._fullLayout,n=e._context;this.container=r._glcontainer.node(),this.isStatic=n.staticPlot,this.uid=r._uid+"-"+this.id,this.div=null,this.xaxis=null,this.yaxis=null,this.createFramework(r),this.map=null,this.accessToken=null,this.styleObj=null,this.traceHash={},this.layerList=[],this.belowLookup={},this.dragging=!1,this.wheeling=!1}var Nh=mGe.prototype;Nh.plot=function(e,t,r){var n=this,i=t[n.id];n.map&&i.accesstoken!==n.accessToken&&(n.map.remove(),n.map=null,n.styleObj=null,n.traceHash={},n.layerList=[]);var a;n.map?a=new Promise(function(o,s){n.updateMap(e,t,o,s)}):a=new Promise(function(o,s){n.createMap(e,t,o,s)}),r.push(a)};Nh.createMap=function(e,t,r,n){var i=this,a=t[i.id],o=i.styleObj=yGe(a.style,t);i.accessToken=a.accesstoken;var s=a.bounds,l=s?[[s.west,s.south],[s.east,s.north]]:null,u=i.map=new cJ.Map({container:i.div,style:o.style,center:hJ(a.center),zoom:a.zoom,bearing:a.bearing,pitch:a.pitch,maxBounds:l,interactive:!i.isStatic,preserveDrawingBuffer:i.isStatic,doubleClickZoom:!1,boxZoom:!1,attributionControl:!1}).addControl(new cJ.AttributionControl({compact:!0}));u._canvas.style.left="0px",u._canvas.style.top="0px",i.rejectOnError(n),i.isStatic||i.initFx(e,t);var c=[];c.push(new Promise(function(f){u.once("load",f)})),c=c.concat(pGe.fetchTraceGeoData(e)),Promise.all(c).then(function(){i.fillBelowLookup(e,t),i.updateData(e),i.updateLayout(t),i.resolveOnRender(r)}).catch(n)};Nh.updateMap=function(e,t,r,n){var i=this,a=i.map,o=t[this.id];i.rejectOnError(n);var s=[],l=yGe(o.style,t);JSON.stringify(i.styleObj)!==JSON.stringify(l)&&(i.styleObj=l,a.setStyle(l.style),i.traceHash={},s.push(new Promise(function(u){a.once("styledata",u)}))),s=s.concat(pGe.fetchTraceGeoData(e)),Promise.all(s).then(function(){i.fillBelowLookup(e,t),i.updateData(e),i.updateLayout(t),i.resolveOnRender(r)}).catch(n)};Nh.fillBelowLookup=function(e,t){var r=t[this.id],n=r.layers,i,a,o=this.belowLookup={},s=!1;for(i=0;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 dGe={choroplethmapbox:0,densitymapbox:1,scattermapbox:2};Nh.updateData=function(e){var t=this.traceHash,r,n,i,a,o=e.slice().sort(function(f,h){return dGe[f[0].trace.type]-dGe[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]}};Nh.updateLayout=function(e){var t=this.map,r=e[this.id];!this.dragging&&!this.wheeling&&(t.setCenter(hJ(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()};Nh.resolveOnRender=function(e){var t=this.map;t.on("render",function r(){t.loaded()&&(t.off("render",r),setTimeout(e,10))})};Nh.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)};Nh.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"},qjt.setConvert(t.mockAxis,e)};Nh.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];hGe.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]&&Qz.hover(n,s,r.id)},Qz.hover(n,s,r.id),n._fullLayout._hoversubplot=r.id});function a(){Qz.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];hGe.call("_storeDirectGUIEdit",n.layout,n._fullLayout._preGUI,r.getViewEdits(s));var l=r.viewInitial;i.setCenter(hJ(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(){Hjt(r.dragOptions),Gjt(r.dragOptions.gd)},r.onClickInPanFn=function(s){return function(l){var u=n._fullLayout.clickmode;u.indexOf("select")>-1&&jjt(l.originalEvent,n,[r.xaxis],[r.yaxis],r.id,s),u.indexOf("event")>-1&&Qz.click(n,l.originalEvent)}}};Nh.updateFx=function(e){var t=this,r=t.map,n=t.gd;if(t.isStatic)return;function i(l){var u=t.map.unproject(l);return[u.lng,u.lat]}var a=e.dragmode,o;o=function(l,u){if(u.isRect){var c=l.range={};c[t.id]=[i([u.xmin,u.ymin]),i([u.xmax,u.ymax])]}else{var f=l.lassoPoints={};f[t.id]=u.map(i)}};var s=t.dragOptions;t.dragOptions=fJ.extendDeep(s||{},{dragmode:e.dragmode,element:t.div,gd:n,plotinfo:{id:t.id,domain:e[t.id].domain,xaxis:t.xaxis,yaxis:t.yaxis,fillRangeItems:o},xaxes:[t.xaxis],yaxes:[t.yaxis],subplot:t.id}),r.off("click",t.onClickInPanHandler),Ujt(a)||Njt(a)?(r.dragPan.disable(),r.on("zoomstart",t.clearOutline),t.dragOptions.prepFn=function(l,u,c){Vjt(l,u,c,t.dragOptions,a)},Bjt.init(t.dragOptions)):(r.dragPan.enable(),r.off("zoomstart",t.clearOutline),t.div.onmousedown=null,t.div.ontouchstart=null,t.div.removeEventListener("touchstart",t.div._ontouchstart),t.onClickInPanHandler=t.onClickInPanFn(t.dragOptions),r.on("click",t.onClickInPanHandler))};Nh.updateFramework=function(e){var t=e[this.id].domain,r=e._size,n=this.div.style;n.width=r.w*(t.x[1]-t.x[0])+"px",n.height=r.h*(t.y[1]-t.y[0])+"px",n.left=r.l+t.x[0]*r.w+"px",n.top=r.t+(1-t.y[1])*r.h+"px",this.xaxis._offset=r.l+t.x[0]*r.w,this.xaxis._length=r.w*(t.x[1]-t.x[0]),this.yaxis._offset=r.t+(1-t.y[1])*r.h,this.yaxis._length=r.h*(t.y[1]-t.y[0])};Nh.updateLayers=function(e){var t=e[this.id],r=t.layers,n=this.layerList,i;if(r.length!==n.length){for(i=0;i<n.length;i++)n[i].dispose();for(n=this.layerList=[],i=0;i<r.length;i++)n.push(Wjt(this,i,r[i]))}else for(i=0;i<r.length;i++)n[i].update(r[i])};Nh.destroy=function(){this.map&&(this.map.remove(),this.map=null,this.container.removeChild(this.div))};Nh.toImage=function(){return this.map.stop(),this.map.getCanvas().toDataURL()};Nh.setOptions=function(e,t,r){for(var n in r)this.map[t](e,n,r[n])};Nh.getMapLayers=function(){return this.map.getStyle().layers};Nh.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}fJ.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)};Nh.project=function(e){return this.map.project(new cJ.LngLat(e[0],e[1]))};Nh.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()]}}};Nh.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};Nh.getViewEditsWithDerived=function(e){var t=this.id,r=this.getViewEdits(e);return r[t+"._derived"]=e._derived,r};function yGe(e,t){var r={};if(fJ.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=vGe(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=vGe(_x.styleValueDflt);return r.transition={duration:0,delay:0},r}function vGe(e){return _x.styleUrlPrefix+e+"-"+_x.styleUrlSuffix}function hJ(e){return[e.lon,e.lat]}_Ge.exports=mGe});var TGe=ye((bxr,wGe)=>{"use strict";var dJ=Dr(),Xjt=k_(),Zjt=Yd(),bGe=Nk();wGe.exports=function(t,r,n){Xjt(t,r,n,{type:"mapbox",attributes:bGe,handleDefaults:Yjt,partition:"y",accessToken:r._mapboxAccessToken})};function Yjt(e,t,r,n){r("accesstoken",n.accessToken),r("style"),r("center.lon"),r("center.lat"),r("zoom"),r("bearing"),r("pitch");var i=r("bounds.west"),a=r("bounds.east"),o=r("bounds.south"),s=r("bounds.north");(i===void 0||a===void 0||o===void 0||s===void 0)&&delete t.bounds,Zjt(e,t,{name:"layers",handleItemDefaults:Kjt}),t._input=e}function Kjt(e,t){function r(l,u){return dJ.coerce(e,t,bGe.layers,l,u)}var n=r("visible");if(n){var i=r("sourcetype"),a=i==="raster"||i==="image";r("source"),r("sourceattribution"),i==="vector"&&r("sourcelayer"),i==="image"&&r("coordinates");var o;a&&(o="raster");var s=r("type",o);a&&s!=="raster"&&(s=t.type="raster",dJ.log("Source types *raster* and *image* must drawn *raster* layer type.")),r("below"),r("color"),r("opacity"),r("minzoom"),r("maxzoom"),s==="circle"&&r("circle.radius"),s==="line"&&(r("line.width"),r("line.dash")),s==="fill"&&r("fill.outlinecolor"),s==="symbol"&&(r("symbol.icon"),r("symbol.iconsize"),r("symbol.text"),dJ.coerceFont(r,"symbol.textfont",void 0,{noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0}),r("symbol.textposition"),r("symbol.placement"))}}});var e7=ye(Np=>{"use strict";var AGe=uJ(),rm=Dr(),vJ=rm.strTranslate,Jjt=rm.strScale,$jt=Id().getSubplotCalcData,Qjt=Wp(),eWt=Oa(),SGe=So(),tWt=ru(),rWt=xGe(),xx="mapbox",ey=Np.constants=c1();Np.name=xx;Np.attr="subplot";Np.idRoot=xx;Np.idRegex=Np.attrRegex=rm.counterRegex(xx);var iWt=["mapbox subplots and traces are deprecated!","Please consider switching to `map` subplots and traces.","Learn more at: https://plotly.com/python/maplibre-migration/","as well as https://plotly.com/javascript/maplibre-migration/"].join(" ");Np.attributes={subplot:{valType:"subplotid",dflt:"mapbox",editType:"calc"}};Np.layoutAttributes=Nk();Np.supplyLayoutDefaults=TGe();var MGe=!0;Np.plot=function(t){MGe&&(MGe=!1,rm.warn(iWt));var r=t._fullLayout,n=t.calcdata,i=r._subplots[xx];if(AGe.version!==ey.requiredVersion)throw new Error(ey.wrongVersionErrorMsg);var a=nWt(t,i);AGe.accessToken=a;for(var o=0;o<i.length;o++){var s=i[o],l=$jt(n,xx,s),u=r[s],c=u._subplot;c||(c=new rWt(t,s),r[s]._subplot=c),c.viewInitial||(c.viewInitial={center:rm.extendFlat({},u.center),zoom:u.zoom,bearing:u.bearing,pitch:u.pitch}),c.plot(l,r,t._promises)}};Np.clean=function(e,t,r,n){for(var i=n._subplots[xx]||[],a=0;a<i.length;a++){var o=i[a];!t[o]&&n[o]._subplot&&n[o]._subplot.destroy()}};Np.toSVG=function(e){for(var t=e._fullLayout,r=t._subplots[xx],n=t._size,i=0;i<r.length;i++){var a=t[r[i]],o=a.domain,s=a._subplot,l=s.toImage("png"),u=t._glimages.append("svg:image");u.attr({xmlns:Qjt.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=eWt.select(a._subplot.div),f=c.select(".mapboxgl-ctrl-logo").node().offsetParent===null;if(!f){var h=t._glimages.append("g");h.attr("transform",vJ(n.l+n.w*o.x[0]+10,n.t+n.h*(1-o.y[0])-31)),h.append("path").attr("d",ey.mapboxLogo.path0).style({opacity:.9,fill:"#ffffff","enable-background":"new"}),h.append("path").attr("d",ey.mapboxLogo.path1).style("opacity",.35).style("enable-background","new"),h.append("path").attr("d",ey.mapboxLogo.path2).style("opacity",.35).style("enable-background","new"),h.append("polygon").attr("points",ey.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"),_=v.append("text");_.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=SGe.bBox(_.node()),p=n.w*(o.x[1]-o.x[0]);if(b.width>p/2){var k=d.split("|").join("<br>");_.text(k).attr("data-unformatted",k).call(tWt.convertToTspans,e),b=SGe.bBox(_.node())}_.attr("transform",vJ(-3,-b.height+8)),v.insert("rect",".static-attribution").attr({x:-b.width-6,y:-b.height-3,width:b.width+6,height:b.height+3,fill:"rgba(255, 255, 255, 0.75)"});var E=1;b.width+6>p&&(E=p/(b.width+6));var S=[n.l+n.w*o.x[1],n.t+n.h*(1-o.y[0])];v.attr("transform",vJ(S[0],S[1])+Jjt(E))}};function nWt(e,t){var r=e._fullLayout,n=e._context;if(n.mapboxAccessToken==="")return"";for(var i=[],a=[],o=!1,s=!1,l=0;l<t.length;l++){var u=r[t[l]],c=u.accesstoken;EGe(u.style)&&(c?rm.pushUnique(i,c):(EGe(u._input.style)&&(rm.error("Uses Mapbox map style, but did not set an access token."),o=!0),s=!0)),c&&rm.pushUnique(a,c)}if(s){var f=o?ey.noAccessTokenErrorMsg:ey.missingStyleErrorMsg;throw rm.error(f),new Error(f)}return i.length?(i.length>1&&rm.warn(ey.multipleTokensErrorMsg),i[0]):(a.length&&rm.log(["Listed mapbox access token(s)",a.join(","),"but did not use a Mapbox map style, ignoring token(s)."].join(" ")),"")}function EGe(e){return typeof e=="string"&&(ey.styleValuesMapbox.indexOf(e)!==-1||e.indexOf("mapbox://")===0||e.indexOf("stamen")===0)}Np.updateFx=function(e){for(var t=e._fullLayout,r=t._subplots[xx],n=0;n<r.length;n++){var i=t[r[n]]._subplot;i.updateFx(t)}}});var CGe=ye((Axr,kGe)=>{"use strict";var Txr=["*scattermapbox* trace is deprecated!","Please consider switching to the *scattermap* trace type and `map` subplots.","Learn more at: https://plotly.com/python/maplibre-migration/","as well as https://plotly.com/javascript/maplibre-migration/"].join(" ");kGe.exports={attributes:Wz(),supplyDefaults:NVe(),colorbar:$d(),formatLabels:rJ(),calc:pF(),plot:eGe(),hoverPoints:Jz().hoverPoints,eventData:nGe(),selectPoints:oGe(),styleOnSelect:function(e,t){if(t){var r=t[0].trace;r._glTrace.update(t)}},moduleType:"trace",name:"scattermapbox",basePlotModule:e7(),categories:["mapbox","gl","symbols","showLegend","scatter-like"],meta:{}}});var PGe=ye((Sxr,LGe)=>{"use strict";LGe.exports=CGe()});var pJ=ye((Mxr,IGe)=>{"use strict";var f1=t5(),aWt=Tu(),{hovertemplateAttrs:oWt,templatefallbackAttrs:sWt}=Ll(),lWt=Gl(),bx=Ao().extendFlat;IGe.exports=bx({locations:{valType:"data_array",editType:"calc"},z:{valType:"data_array",editType:"calc"},geojson:{valType:"any",editType:"calc"},featureidkey:bx({},f1.featureidkey,{}),below:{valType:"string",editType:"plot"},text:f1.text,hovertext:f1.hovertext,marker:{line:{color:bx({},f1.marker.line.color,{editType:"plot"}),width:bx({},f1.marker.line.width,{editType:"plot"}),editType:"calc"},opacity:bx({},f1.marker.opacity,{editType:"plot"}),editType:"calc"},selected:{marker:{opacity:bx({},f1.selected.marker.opacity,{editType:"plot"}),editType:"plot"},editType:"plot"},unselected:{marker:{opacity:bx({},f1.unselected.marker.opacity,{editType:"plot"}),editType:"plot"},editType:"plot"},hoverinfo:f1.hoverinfo,hovertemplate:oWt({},{keys:["properties"]}),hovertemplatefallback:sWt(),showlegend:bx({},lWt.showlegend,{dflt:!1})},aWt("",{cLetter:"z",editTypeOverride:"calc"}))});var DGe=ye((Exr,RGe)=>{"use strict";var Hk=Dr(),uWt=Qh(),cWt=pJ();RGe.exports=function(t,r,n,i){function a(c,f){return Hk.coerce(t,r,cWt,c,f)}var o=a("locations"),s=a("z"),l=a("geojson");if(!Hk.isArrayOrTypedArray(o)||!o.length||!Hk.isArrayOrTypedArray(s)||!s.length||!(typeof l=="string"&&l!==""||Hk.isPlainObject(l))){r.visible=!1;return}a("featureidkey"),r._length=Math.min(o.length,s.length),a("below"),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback");var u=a("marker.line.width");u&&a("marker.line.color"),a("marker.opacity"),uWt(t,r,i,a,{prefix:"",cLetter:"z"}),Hk.coerceSelectionMarkerOpacity(r,a)}});var gJ=ye((kxr,OGe)=>{"use strict";var fWt=Eo(),h1=Dr(),hWt=tc(),dWt=So(),vWt=tx().makeBlank,FGe=ix();function pWt(e){var t=e[0].trace,r=t.visible===!0&&t._length!==0,n={layout:{visibility:"none"},paint:{}},i={layout:{visibility:"none"},paint:{}},a=t._opts={fill:n,line:i,geojson:vWt()};if(!r)return a;var o=FGe.extractTraceFeature(e);if(!o)return a;var s=hWt.makeColorScaleFuncFromTrace(t),l=t.marker,u=l.line||{},c;h1.isArrayOrTypedArray(l.opacity)&&(c=function(k){var E=k.mo;return fWt(E)?+h1.constrain(E,0,1):0});var f;h1.isArrayOrTypedArray(u.color)&&(f=function(k){return k.mlc});var h;h1.isArrayOrTypedArray(u.width)&&(h=function(k){return k.mlw});for(var d=0;d<e.length;d++){var v=e[d],_=v.fOut;if(_){var b=_.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=FGe.feature2polygons(_)}}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},zGe(e),a}function zGe(e){var t=e[0].trace,r=t._opts,n;if(t.selectedpoints){for(var i=dWt.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}OGe.exports={convert:pWt,convertOnSelect:zGe}});var VGe=ye((Cxr,UGe)=>{"use strict";var BGe=gJ().convert,gWt=gJ().convertOnSelect,qGe=c1().traceLayerPrefix;function NGe(e,t){this.type="choroplethmapbox",this.subplot=e,this.uid=t,this.sourceId="source-"+t,this.layerList=[["fill",qGe+t+"-fill"],["line",qGe+t+"-line"]],this.below=null}var M5=NGe.prototype;M5.update=function(e){this._update(BGe(e)),e[0].trace._glTrace=this};M5.updateOnSelect=function(e){this._update(gWt(e))};M5._update=function(e){var t=this.subplot,r=this.layerList,n=t.belowLookup["trace-"+this.uid];t.map.getSource(this.sourceId).setData(e.geojson),n!==this.below&&(this._removeLayers(),this._addLayers(e,n),this.below=n);for(var i=0;i<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)}};M5._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)}};M5._removeLayers=function(){for(var e=this.subplot.map,t=this.layerList,r=t.length-1;r>=0;r--)e.removeLayer(t[r][1])};M5.dispose=function(){var e=this.subplot.map;this._removeLayers(),e.removeSource(this.sourceId)};UGe.exports=function(t,r){var n=r[0].trace,i=new NGe(t,n.uid),a=i.sourceId,o=BGe(r),s=i.below=t.belowLookup["trace-"+n.uid];return t.map.addSource(a,{type:"geojson",data:o.geojson}),i._addLayers(o,s),r[0].trace._glTrace=i,i}});var HGe=ye((Pxr,GGe)=>{"use strict";var Lxr=["*choroplethmapbox* trace is deprecated!","Please consider switching to the *choroplethmap* trace type and `map` subplots.","Learn more at: https://plotly.com/python/maplibre-migration/","as well as https://plotly.com/javascript/maplibre-migration/"].join(" ");GGe.exports={attributes:pJ(),supplyDefaults:DGe(),colorbar:S_(),calc:zF(),plot:VGe(),hoverPoints:qF(),eventData:BF(),selectPoints:NF(),styleOnSelect:function(e,t){if(t){var r=t[0].trace;r._glTrace.updateOnSelect(t)}},getBelow:function(e,t){for(var r=t.getMapLayers(),n=r.length-2;n>=0;n--){var i=r[n].id;if(typeof i=="string"&&i.indexOf("water")===0){for(var a=n+1;a<r.length;a++)if(i=r[a].id,typeof i=="string"&&i.indexOf("plotly-")===-1)return i}}},moduleType:"trace",name:"choroplethmapbox",basePlotModule:e7(),categories:["mapbox","gl","noOpacity","showLegend"],meta:{hr_name:"choropleth_mapbox"}}});var WGe=ye((Ixr,jGe)=>{"use strict";jGe.exports=HGe()});var yJ=ye((Rxr,ZGe)=>{"use strict";var mWt=Tu(),{hovertemplateAttrs:yWt,templatefallbackAttrs:_Wt}=Ll(),XGe=Gl(),t7=Wz(),mJ=Ao().extendFlat;ZGe.exports=mJ({lon:t7.lon,lat:t7.lat,z:{valType:"data_array",editType:"calc"},radius:{valType:"number",editType:"plot",arrayOk:!0,min:1,dflt:30},below:{valType:"string",editType:"plot"},text:t7.text,hovertext:t7.hovertext,hoverinfo:mJ({},XGe.hoverinfo,{flags:["lon","lat","z","text","name"]}),hovertemplate:yWt(),hovertemplatefallback:_Wt(),showlegend:mJ({},XGe.showlegend,{dflt:!1})},mWt("",{cLetter:"z",editTypeOverride:"calc"}))});var KGe=ye((Dxr,YGe)=>{"use strict";var xWt=Dr(),bWt=Qh(),wWt=yJ();YGe.exports=function(t,r,n,i){function a(u,c){return xWt.coerce(t,r,wWt,u,c)}var o=a("lon")||[],s=a("lat")||[],l=Math.min(o.length,s.length);if(!l){r.visible=!1;return}r._length=l,a("z"),a("radius"),a("below"),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),bWt(t,r,i,a,{prefix:"",cLetter:"z"})}});var QGe=ye((Fxr,$Ge)=>{"use strict";var _J=Eo(),TWt=Dr().isArrayOrTypedArray,xJ=fs().BADNUM,AWt=gv(),JGe=Dr()._;$Ge.exports=function(t,r){for(var n=r._length,i=new Array(n),a=r.z,o=TWt(a)&&a.length,s=0;s<n;s++){var l=i[s]={},u=r.lon[s],c=r.lat[s];if(l.lonlat=_J(u)&&_J(c)?[+u,+c]:[xJ,xJ],o){var f=a[s];l.z=_J(f)?f:xJ}}return AWt(t,r,{vals:o?a:[0,1],containerStr:"",cLetter:"z"}),n&&(i[0].t={labels:{lat:JGe(t,"lat:")+" ",lon:JGe(t,"lon:")+" "}}),i}});var nHe=ye((zxr,iHe)=>{"use strict";var SWt=Eo(),bJ=Dr(),eHe=ka(),tHe=tc(),rHe=fs().BADNUM,MWt=tx().makeBlank;iHe.exports=function(t){var r=t[0].trace,n=r.visible===!0&&r._length!==0,i={layout:{visibility:"none"},paint:{}},a=r._opts={heatmap:i,geojson:MWt()};if(!n)return a;var o=[],s,l=r.z,u=r.radius,c=bJ.isArrayOrTypedArray(l)&&l.length,f=bJ.isArrayOrTypedArray(u);for(s=0;s<t.length;s++){var h=t[s],d=h.lonlat;if(d[0]!==rHe){var v={};if(c){var _=h.z;v.z=_!==rHe?_:0}f&&(v.r=SWt(u[s])&&u[s]>0?+u[s]:0),o.push({type:"Feature",geometry:{type:"Point",coordinates:d},properties:v})}}var b=tHe.extractOpts(r),p=b.reversescale?tHe.flipScale(b.colorscale):b.colorscale,k=p[0][1],E=eHe.opacity(k)<1?k:eHe.addOpacity(k,0),S=["interpolate",["linear"],["heatmap-density"],0,E];for(s=1;s<p.length;s++)S.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":S,"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 lHe=ye((Oxr,sHe)=>{"use strict";var aHe=nHe(),EWt=c1().traceLayerPrefix;function oHe(e,t){this.type="densitymapbox",this.subplot=e,this.uid=t,this.sourceId="source-"+t,this.layerList=[["heatmap",EWt+t+"-heatmap"]],this.below=null}var r7=oHe.prototype;r7.update=function(e){var t=this.subplot,r=this.layerList,n=aHe(e),i=t.belowLookup["trace-"+this.uid];t.map.getSource(this.sourceId).setData(n.geojson),i!==this.below&&(this._removeLayers(),this._addLayers(n,i),this.below=i);for(var a=0;a<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)}};r7._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)}};r7._removeLayers=function(){for(var e=this.subplot.map,t=this.layerList,r=t.length-1;r>=0;r--)e.removeLayer(t[r][1])};r7.dispose=function(){var e=this.subplot.map;this._removeLayers(),e.removeSource(this.sourceId)};sHe.exports=function(t,r){var n=r[0].trace,i=new oHe(t,n.uid),a=i.sourceId,o=aHe(r),s=i.below=t.belowLookup["trace-"+n.uid];return t.map.addSource(a,{type:"geojson",data:o.geojson}),i._addLayers(o,s),i}});var cHe=ye((qxr,uHe)=>{"use strict";var kWt=ho(),CWt=Jz().hoverPoints,LWt=Jz().getExtraText;uHe.exports=function(t,r,n){var i=CWt(t,r,n);if(i){var a=i[0],o=a.cd,s=o[0].trace,l=o[a.index];if(delete a.color,"z"in l){var u=a.subplot.mockAxis;a.z=l.z,a.zLabel=kWt.tickText(u,u.c2l(l.z),"hover").text}return a.extraText=LWt(s,l,o[0].t.labels),[a]}}});var hHe=ye((Bxr,fHe)=>{"use strict";fHe.exports=function(t,r){return t.lon=r.lon,t.lat=r.lat,t.z=r.z,t}});var vHe=ye((Uxr,dHe)=>{"use strict";var Nxr=["*densitymapbox* trace is deprecated!","Please consider switching to the *densitymap* trace type and `map` subplots.","Learn more at: https://plotly.com/python/maplibre-migration/","as well as https://plotly.com/javascript/maplibre-migration/"].join(" ");dHe.exports={attributes:yJ(),supplyDefaults:KGe(),colorbar:S_(),formatLabels:rJ(),calc:QGe(),plot:lHe(),hoverPoints:cHe(),eventData:hHe(),getBelow:function(e,t){for(var r=t.getMapLayers(),n=0;n<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:e7(),categories:["mapbox","gl","showLegend"],meta:{hr_name:"density_mapbox"}}});var gHe=ye((Vxr,pHe)=>{"use strict";pHe.exports=vHe()});var yHe=ye((Gxr,mHe)=>{mHe.exports={version:8,name:"orto",metadata:{"maputnik:renderer":"mlgljs"},center:[1.537786,41.837539],zoom:12,bearing:0,pitch:0,light:{anchor:"viewport",color:"white",intensity:.4,position:[1.15,45,30]},sources:{ortoEsri:{type:"raster",tiles:["https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}"],tileSize:256,maxzoom:18,attribution:"ESRI &copy; <a href='http://www.esri.com'>ESRI</a>"},ortoInstaMaps:{type:"raster",tiles:["https://tilemaps.icgc.cat/mapfactory/wmts/orto_8_12/CAT3857/{z}/{x}/{y}.png"],tileSize:256,maxzoom:13},ortoICGC:{type:"raster",tiles:["https://geoserveis.icgc.cat/icc_mapesmultibase/noutm/wmts/orto/GRID3857/{z}/{x}/{y}.jpeg"],tileSize:256,minzoom:13.1,maxzoom:20},openmaptiles:{type:"vector",url:"https://geoserveis.icgc.cat/contextmaps/basemap.json"}},sprite:"https://geoserveis.icgc.cat/contextmaps/sprites/sprite@1",glyphs:"https://geoserveis.icgc.cat/contextmaps/glyphs/{fontstack}/{range}.pbf",layers:[{id:"background",type:"background",paint:{"background-color":"#F4F9F4"}},{id:"ortoEsri",type:"raster",source:"ortoEsri",maxzoom:16,layout:{visibility:"visible"}},{id:"ortoICGC",type:"raster",source:"ortoICGC",minzoom:13.1,maxzoom:19,layout:{visibility:"visible"}},{id:"ortoInstaMaps",type:"raster",source:"ortoInstaMaps",maxzoom:13,layout:{visibility:"visible"}},{id:"waterway_tunnel",type:"line",source:"openmaptiles","source-layer":"waterway",minzoom:14,filter:["all",["in","class","river","stream","canal"],["==","brunnel","tunnel"]],layout:{"line-cap":"round"},paint:{"line-color":"#a0c8f0","line-width":{base:1.3,stops:[[13,.5],[20,6]]},"line-dasharray":[2,4]}},{id:"waterway-other",type:"line",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"waterway",filter:["!in","class","canal","river","stream"],layout:{"line-cap":"round"},paint:{"line-color":"#a0c8f0","line-width":{base:1.3,stops:[[13,.5],[20,2]]}}},{id:"waterway-stream-canal",type:"line",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"waterway",filter:["all",["in","class","canal","stream"],["!=","brunnel","tunnel"]],layout:{"line-cap":"round"},paint:{"line-color":"#a0c8f0","line-width":{base:1.3,stops:[[13,.5],[20,6]]}}},{id:"waterway-river",type:"line",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"waterway",filter:["all",["==","class","river"],["!=","brunnel","tunnel"]],layout:{"line-cap":"round"},paint:{"line-color":"#a0c8f0","line-width":{base:1.2,stops:[[10,.8],[20,4]]},"line-opacity":.5}},{id:"water-offset",type:"fill",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"water",maxzoom:8,filter:["==","$type","Polygon"],layout:{visibility:"visible"},paint:{"fill-opacity":0,"fill-color":"#a0c8f0","fill-translate":{base:1,stops:[[6,[2,0]],[8,[0,0]]]}}},{id:"water",type:"fill",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"water",layout:{visibility:"visible"},paint:{"fill-color":"hsl(210, 67%, 85%)","fill-opacity":0}},{id:"water-pattern",type:"fill",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"water",layout:{visibility:"visible"},paint:{"fill-translate":[0,2.5],"fill-pattern":"wave","fill-opacity":1}},{id:"landcover-ice-shelf",type:"fill",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"landcover",filter:["==","subclass","ice_shelf"],layout:{visibility:"visible"},paint:{"fill-color":"#fff","fill-opacity":{base:1,stops:[[0,.9],[10,.3]]}}},{id:"tunnel-service-track-casing",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","service","track"]],layout:{"line-join":"round"},paint:{"line-color":"#cfcdca","line-dasharray":[.5,.25],"line-width":{base:1.2,stops:[[15,1],[16,4],[20,11]]}}},{id:"tunnel-minor-casing",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["==","class","minor"]],layout:{"line-join":"round"},paint:{"line-color":"#cfcdca","line-opacity":{stops:[[12,0],[12.5,1]]},"line-width":{base:1.2,stops:[[12,.5],[13,1],[14,4],[20,15]]}}},{id:"tunnel-secondary-tertiary-casing",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","secondary","tertiary"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[8,1.5],[20,17]]}}},{id:"tunnel-trunk-primary-casing",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","primary","trunk"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-width":{base:1.2,stops:[[5,.4],[6,.6],[7,1.5],[20,22]]},"line-opacity":.7}},{id:"tunnel-motorway-casing",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["==","class","motorway"]],layout:{"line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-dasharray":[.5,.25],"line-width":{base:1.2,stops:[[5,.4],[6,.6],[7,1.5],[20,22]]},"line-opacity":.5}},{id:"tunnel-path",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","brunnel","tunnel"],["==","class","path"]]],paint:{"line-color":"#cba","line-dasharray":[1.5,.75],"line-width":{base:1.2,stops:[[15,1.2],[20,4]]}}},{id:"tunnel-service-track",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","service","track"]],layout:{"line-join":"round"},paint:{"line-color":"#fff","line-width":{base:1.2,stops:[[15.5,0],[16,2],[20,7.5]]}}},{id:"tunnel-minor",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["==","class","minor_road"]],layout:{"line-join":"round"},paint:{"line-color":"#fff","line-opacity":1,"line-width":{base:1.2,stops:[[13.5,0],[14,2.5],[20,11.5]]}}},{id:"tunnel-secondary-tertiary",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","secondary","tertiary"]],layout:{"line-join":"round"},paint:{"line-color":"#fff4c6","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,10]]}}},{id:"tunnel-trunk-primary",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","primary","trunk"]],layout:{"line-join":"round"},paint:{"line-color":"#fff4c6","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]},"line-opacity":.5}},{id:"tunnel-motorway",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["==","class","motorway"]],layout:{"line-join":"round",visibility:"visible"},paint:{"line-color":"#ffdaa6","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]},"line-opacity":.5}},{id:"tunnel-railway",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["==","class","rail"]],paint:{"line-color":"#bbb","line-width":{base:1.4,stops:[[14,.4],[15,.75],[20,2]]},"line-dasharray":[2,2]}},{id:"ferry",type:"line",source:"openmaptiles","source-layer":"transportation",filter:["all",["in","class","ferry"]],layout:{"line-join":"round",visibility:"visible"},paint:{"line-color":"rgba(108, 159, 182, 1)","line-width":1.1,"line-dasharray":[2,2]}},{id:"aeroway-taxiway-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"aeroway",minzoom:12,filter:["all",["in","class","taxiway"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"rgba(153, 153, 153, 1)","line-width":{base:1.5,stops:[[11,2],[17,12]]},"line-opacity":1}},{id:"aeroway-runway-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"aeroway",minzoom:12,filter:["all",["in","class","runway"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"rgba(153, 153, 153, 1)","line-width":{base:1.5,stops:[[11,5],[17,55]]},"line-opacity":1}},{id:"aeroway-taxiway",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"aeroway",minzoom:4,filter:["all",["in","class","taxiway"],["==","$type","LineString"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"rgba(255, 255, 255, 1)","line-width":{base:1.5,stops:[[11,1],[17,10]]},"line-opacity":{base:1,stops:[[11,0],[12,1]]}}},{id:"aeroway-runway",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"aeroway",minzoom:4,filter:["all",["in","class","runway"],["==","$type","LineString"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"rgba(255, 255, 255, 1)","line-width":{base:1.5,stops:[[11,4],[17,50]]},"line-opacity":{base:1,stops:[[11,0],[12,1]]}}},{id:"highway-motorway-link-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:12,filter:["all",["!in","brunnel","bridge","tunnel"],["==","class","motorway_link"]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[12,1],[13,3],[14,4],[20,15]]}}},{id:"highway-link-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:13,filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","primary_link","secondary_link","tertiary_link","trunk_link"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[12,1],[13,3],[14,4],[20,15]]}}},{id:"highway-minor-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!=","brunnel","tunnel"],["in","class","minor","service","track"]]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"#cfcdca","line-opacity":{stops:[[12,0],[12.5,0]]},"line-width":{base:1.2,stops:[[12,.5],[13,1],[14,4],[20,15]]}}},{id:"highway-secondary-tertiary-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","secondary","tertiary"]],layout:{"line-cap":"butt","line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-opacity":.5,"line-width":{base:1.2,stops:[[8,1.5],[20,17]]}}},{id:"highway-primary-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:5,filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","primary"]],layout:{"line-cap":"butt","line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-opacity":{stops:[[7,0],[8,.6]]},"line-width":{base:1.2,stops:[[7,0],[8,.6],[9,1.5],[20,22]]}}},{id:"highway-trunk-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:5,filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","trunk"]],layout:{"line-cap":"butt","line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-opacity":{stops:[[5,0],[6,.5]]},"line-width":{base:1.2,stops:[[5,0],[6,.6],[7,1.5],[20,22]]}}},{id:"highway-motorway-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:4,filter:["all",["!in","brunnel","bridge","tunnel"],["==","class","motorway"]],layout:{"line-cap":"butt","line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-width":{base:1.2,stops:[[4,0],[5,.4],[6,.6],[7,1.5],[20,22]]},"line-opacity":{stops:[[4,0],[5,.5]]}}},{id:"highway-path",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!in","brunnel","bridge","tunnel"],["==","class","path"]]],paint:{"line-color":"#cba","line-dasharray":[1.5,.75],"line-width":{base:1.2,stops:[[15,1.2],[20,4]]}}},{id:"highway-motorway-link",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:12,filter:["all",["!in","brunnel","bridge","tunnel"],["==","class","motorway_link"]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"#fc8","line-width":{base:1.2,stops:[[12.5,0],[13,1.5],[14,2.5],[20,11.5]]}}},{id:"highway-link",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:13,filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","primary_link","secondary_link","tertiary_link","trunk_link"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[12.5,0],[13,1.5],[14,2.5],[20,11.5]]}}},{id:"highway-minor",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!=","brunnel","tunnel"],["in","class","minor","service","track"]]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"#fff","line-opacity":.5,"line-width":{base:1.2,stops:[[13.5,0],[14,2.5],[20,11.5]]}}},{id:"highway-secondary-tertiary",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","secondary","tertiary"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[6.5,0],[8,.5],[20,13]]},"line-opacity":.5}},{id:"highway-primary",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!in","brunnel","bridge","tunnel"],["in","class","primary"]]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[8.5,0],[9,.5],[20,18]]},"line-opacity":0}},{id:"highway-trunk",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!in","brunnel","bridge","tunnel"],["in","class","trunk"]]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]},"line-opacity":.5}},{id:"highway-motorway",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:5,filter:["all",["==","$type","LineString"],["all",["!in","brunnel","bridge","tunnel"],["==","class","motorway"]]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#fc8","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]},"line-opacity":.5}},{id:"railway-transit",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","class","transit"],["!in","brunnel","tunnel"]]],layout:{visibility:"visible"},paint:{"line-color":"hsla(0, 0%, 73%, 0.77)","line-width":{base:1.4,stops:[[14,.4],[20,1]]}}},{id:"railway-transit-hatching",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","class","transit"],["!in","brunnel","tunnel"]]],layout:{visibility:"visible"},paint:{"line-color":"hsla(0, 0%, 73%, 0.68)","line-dasharray":[.2,8],"line-width":{base:1.4,stops:[[14.5,0],[15,2],[20,6]]}}},{id:"railway-service",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","class","rail"],["has","service"]]],paint:{"line-color":"hsla(0, 0%, 73%, 0.77)","line-width":{base:1.4,stops:[[14,.4],[20,1]]}}},{id:"railway-service-hatching",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","class","rail"],["has","service"]]],layout:{visibility:"visible"},paint:{"line-color":"hsla(0, 0%, 73%, 0.68)","line-dasharray":[.2,8],"line-width":{base:1.4,stops:[[14.5,0],[15,2],[20,6]]}}},{id:"railway",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!has","service"],["!in","brunnel","bridge","tunnel"],["==","class","rail"]]],paint:{"line-color":"#bbb","line-width":{base:1.4,stops:[[14,.4],[15,.75],[20,2]]}}},{id:"railway-hatching",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!has","service"],["!in","brunnel","bridge","tunnel"],["==","class","rail"]]],paint:{"line-color":"#bbb","line-dasharray":[.2,8],"line-width":{base:1.4,stops:[[14.5,0],[15,3],[20,8]]}}},{id:"bridge-motorway-link-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","motorway_link"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[12,1],[13,3],[14,4],[20,15]]}}},{id:"bridge-link-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","primary_link","secondary_link","tertiary_link","trunk_link"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[12,1],[13,3],[14,4],[20,15]]}}},{id:"bridge-secondary-tertiary-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","secondary","tertiary"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[8,1.5],[20,28]]}}},{id:"bridge-trunk-primary-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","primary","trunk"]],layout:{"line-join":"round"},paint:{"line-color":"hsl(28, 76%, 67%)","line-width":{base:1.2,stops:[[5,.4],[6,.6],[7,1.5],[20,26]]}}},{id:"bridge-motorway-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","motorway"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-width":{base:1.2,stops:[[5,.4],[6,.6],[7,1.5],[20,22]]},"line-opacity":.5}},{id:"bridge-path-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","brunnel","bridge"],["==","class","path"]]],paint:{"line-color":"#f8f4f0","line-width":{base:1.2,stops:[[15,1.2],[20,18]]}}},{id:"bridge-path",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","brunnel","bridge"],["==","class","path"]]],paint:{"line-color":"#cba","line-width":{base:1.2,stops:[[15,1.2],[20,4]]},"line-dasharray":[1.5,.75]}},{id:"bridge-motorway-link",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","motorway_link"]],layout:{"line-join":"round"},paint:{"line-color":"#fc8","line-width":{base:1.2,stops:[[12.5,0],[13,1.5],[14,2.5],[20,11.5]]}}},{id:"bridge-link",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","primary_link","secondary_link","tertiary_link","trunk_link"]],layout:{"line-join":"round"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[12.5,0],[13,1.5],[14,2.5],[20,11.5]]}}},{id:"bridge-secondary-tertiary",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","secondary","tertiary"]],layout:{"line-join":"round"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,20]]}}},{id:"bridge-trunk-primary",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","primary","trunk"]],layout:{"line-join":"round"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]}}},{id:"bridge-motorway",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","motorway"]],layout:{"line-join":"round"},paint:{"line-color":"#fc8","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]},"line-opacity":.5}},{id:"bridge-railway",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","rail"]],paint:{"line-color":"#bbb","line-width":{base:1.4,stops:[[14,.4],[15,.75],[20,2]]}}},{id:"bridge-railway-hatching",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","rail"]],paint:{"line-color":"#bbb","line-dasharray":[.2,8],"line-width":{base:1.4,stops:[[14.5,0],[15,3],[20,8]]}}},{id:"cablecar",type:"line",source:"openmaptiles","source-layer":"transportation",minzoom:13,filter:["==","class","cable_car"],layout:{visibility:"visible","line-cap":"round"},paint:{"line-color":"hsl(0, 0%, 70%)","line-width":{base:1,stops:[[11,1],[19,2.5]]}}},{id:"cablecar-dash",type:"line",source:"openmaptiles","source-layer":"transportation",minzoom:13,filter:["==","class","cable_car"],layout:{visibility:"visible","line-cap":"round"},paint:{"line-color":"hsl(0, 0%, 70%)","line-width":{base:1,stops:[[11,3],[19,5.5]]},"line-dasharray":[2,3]}},{id:"boundary-land-level-4",type:"line",source:"openmaptiles","source-layer":"boundary",filter:["all",[">=","admin_level",4],["<=","admin_level",8],["!=","maritime",1]],layout:{"line-join":"round"},paint:{"line-color":"#9e9cab","line-dasharray":[3,1,1,1],"line-width":{base:1.4,stops:[[4,.4],[5,1],[12,3]]},"line-opacity":.6}},{id:"boundary-land-level-2",type:"line",source:"openmaptiles","source-layer":"boundary",filter:["all",["==","admin_level",2],["!=","maritime",1],["!=","disputed",1]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"hsl(248, 7%, 66%)","line-width":{base:1,stops:[[0,.6],[4,1.4],[5,2],[12,2]]}}},{id:"boundary-land-disputed",type:"line",source:"openmaptiles","source-layer":"boundary",filter:["all",["!=","maritime",1],["==","disputed",1]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"hsl(248, 7%, 70%)","line-dasharray":[1,3],"line-width":{base:1,stops:[[0,.6],[4,1.4],[5,2],[12,8]]}}},{id:"boundary-water",type:"line",source:"openmaptiles","source-layer":"boundary",filter:["all",["in","admin_level",2,4],["==","maritime",1]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"rgba(154, 189, 214, 1)","line-width":{base:1,stops:[[0,.6],[4,1],[5,1],[12,1]]},"line-opacity":{stops:[[6,0],[10,0]]}}},{id:"waterway-name",type:"symbol",source:"openmaptiles","source-layer":"waterway",minzoom:13,filter:["all",["==","$type","LineString"],["has","name"]],layout:{"text-font":["Noto Sans Italic"],"text-size":14,"text-field":"{name:latin} {name:nonlatin}","text-max-width":5,"text-rotation-alignment":"map","symbol-placement":"line","text-letter-spacing":.2,"symbol-spacing":350},paint:{"text-color":"#74aee9","text-halo-width":1.5,"text-halo-color":"rgba(255,255,255,0.7)"}},{id:"water-name-lakeline",type:"symbol",source:"openmaptiles","source-layer":"water_name",filter:["==","$type","LineString"],layout:{"text-font":["Noto Sans Italic"],"text-size":14,"text-field":`{name:latin}
{name:nonlatin}`,"text-max-width":5,"text-rotation-alignment":"map","symbol-placement":"line","symbol-spacing":350,"text-letter-spacing":.2},paint:{"text-color":"#74aee9","text-halo-width":1.5,"text-halo-color":"rgba(255,255,255,0.7)"}},{id:"water-name-ocean",type:"symbol",source:"openmaptiles","source-layer":"water_name",filter:["all",["==","$type","Point"],["==","class","ocean"]],layout:{"text-font":["Noto Sans Italic"],"text-size":14,"text-field":"{name:latin}","text-max-width":5,"text-rotation-alignment":"map","symbol-placement":"point","symbol-spacing":350,"text-letter-spacing":.2},paint:{"text-color":"#74aee9","text-halo-width":1.5,"text-halo-color":"rgba(255,255,255,0.7)"}},{id:"water-name-other",type:"symbol",source:"openmaptiles","source-layer":"water_name",filter:["all",["==","$type","Point"],["!in","class","ocean"]],layout:{"text-font":["Noto Sans Italic"],"text-size":{stops:[[0,10],[6,14]]},"text-field":`{name:latin}
{name:nonlatin}`,"text-max-width":5,"text-rotation-alignment":"map","symbol-placement":"point","symbol-spacing":350,"text-letter-spacing":.2,visibility:"visible"},paint:{"text-color":"#74aee9","text-halo-width":1.5,"text-halo-color":"rgba(255,255,255,0.7)"}},{id:"poi-level-3",type:"symbol",source:"openmaptiles","source-layer":"poi",minzoom:16,filter:["all",["==","$type","Point"],[">=","rank",25]],layout:{"text-padding":2,"text-font":["Noto Sans Regular"],"text-anchor":"top","icon-image":"{class}_11","text-field":`{name:latin}
{name:nonlatin}`,"text-offset":[0,.6],"text-size":12,"text-max-width":9},paint:{"text-halo-blur":.5,"text-color":"#666","text-halo-width":1,"text-halo-color":"#ffffff"}},{id:"poi-level-2",type:"symbol",source:"openmaptiles","source-layer":"poi",minzoom:15,filter:["all",["==","$type","Point"],["<=","rank",24],[">=","rank",15]],layout:{"text-padding":2,"text-font":["Noto Sans Regular"],"text-anchor":"top","icon-image":"{class}_11","text-field":`{name:latin}
{name:nonlatin}`,"text-offset":[0,.6],"text-size":12,"text-max-width":9},paint:{"text-halo-blur":.5,"text-color":"#666","text-halo-width":1,"text-halo-color":"#ffffff"}},{id:"poi-level-1",type:"symbol",source:"openmaptiles","source-layer":"poi",minzoom:14,filter:["all",["==","$type","Point"],["<=","rank",14],["has","name"]],layout:{"text-padding":2,"text-font":["Noto Sans Regular"],"text-anchor":"top","icon-image":"{class}_11","text-field":`{name:latin}
{name:nonlatin}`,"text-offset":[0,.6],"text-size":11,"text-max-width":9},paint:{"text-halo-blur":.5,"text-color":"rgba(191, 228, 172, 1)","text-halo-width":1,"text-halo-color":"rgba(30, 29, 29, 1)"}},{id:"poi-railway",type:"symbol",source:"openmaptiles","source-layer":"poi",minzoom:13,filter:["all",["==","$type","Point"],["has","name"],["==","class","railway"],["==","subclass","station"]],layout:{"text-padding":2,"text-font":["Noto Sans Regular"],"text-anchor":"top","icon-image":"{class}_11","text-field":`{name:latin}
{name:nonlatin}`,"text-offset":[0,.6],"text-size":12,"text-max-width":9,"icon-optional":!1,"icon-ignore-placement":!1,"icon-allow-overlap":!1,"text-ignore-placement":!1,"text-allow-overlap":!1,"text-optional":!0},paint:{"text-halo-blur":.5,"text-color":"#666","text-halo-width":1,"text-halo-color":"#ffffff"}},{id:"road_oneway",type:"symbol",source:"openmaptiles","source-layer":"transportation",minzoom:15,filter:["all",["==","oneway",1],["in","class","motorway","trunk","primary","secondary","tertiary","minor","service"]],layout:{"symbol-placement":"line","icon-image":"oneway","symbol-spacing":75,"icon-padding":2,"icon-rotation-alignment":"map","icon-rotate":90,"icon-size":{stops:[[15,.5],[19,1]]}},paint:{"icon-opacity":.5}},{id:"road_oneway_opposite",type:"symbol",source:"openmaptiles","source-layer":"transportation",minzoom:15,filter:["all",["==","oneway",-1],["in","class","motorway","trunk","primary","secondary","tertiary","minor","service"]],layout:{"symbol-placement":"line","icon-image":"oneway","symbol-spacing":75,"icon-padding":2,"icon-rotation-alignment":"map","icon-rotate":-90,"icon-size":{stops:[[15,.5],[19,1]]}},paint:{"icon-opacity":.5}},{id:"highway-name-path",type:"symbol",source:"openmaptiles","source-layer":"transportation_name",minzoom:15.5,filter:["==","class","path"],layout:{"text-size":{base:1,stops:[[13,12],[14,13]]},"text-font":["Noto Sans Regular"],"text-field":"{name:latin} {name:nonlatin}","symbol-placement":"line","text-rotation-alignment":"map"},paint:{"text-halo-color":"#f8f4f0","text-color":"hsl(30, 23%, 62%)","text-halo-width":.5}},{id:"highway-name-minor",type:"symbol",source:"openmaptiles","source-layer":"transportation_name",minzoom:15,filter:["all",["==","$type","LineString"],["in","class","minor","service","track"]],layout:{"text-size":{base:1,stops:[[13,12],[14,13]]},"text-font":["Noto Sans Regular"],"text-field":"{name:latin} {name:nonlatin}","symbol-placement":"line","text-rotation-alignment":"map"},paint:{"text-halo-blur":.5,"text-color":"#765","text-halo-width":1}},{id:"highway-name-major",type:"symbol",source:"openmaptiles","source-layer":"transportation_name",minzoom:12.2,filter:["in","class","primary","secondary","tertiary","trunk"],layout:{"text-size":{base:1,stops:[[13,12],[14,13]]},"text-font":["Noto Sans Regular"],"text-field":"{name:latin} {name:nonlatin}","symbol-placement":"line","text-rotation-alignment":"map"},paint:{"text-halo-blur":.5,"text-color":"#765","text-halo-width":1}},{id:"highway-shield",type:"symbol",source:"openmaptiles","source-layer":"transportation_name",minzoom:8,filter:["all",["<=","ref_length",6],["==","$type","LineString"],["!in","network","us-interstate","us-highway","us-state"]],layout:{"text-size":10,"icon-image":"road_{ref_length}","icon-rotation-alignment":"viewport","symbol-spacing":200,"text-font":["Noto Sans Regular"],"symbol-placement":{base:1,stops:[[10,"point"],[11,"line"]]},"text-rotation-alignment":"viewport","icon-size":1,"text-field":"{ref}"},paint:{"text-opacity":1,"text-color":"rgba(20, 19, 19, 1)","text-halo-color":"rgba(230, 221, 221, 0)","text-halo-width":2,"icon-color":"rgba(183, 18, 18, 1)","icon-opacity":.3,"icon-halo-color":"rgba(183, 55, 55, 0)"}},{id:"highway-shield-us-interstate",type:"symbol",source:"openmaptiles","source-layer":"transportation_name",minzoom:7,filter:["all",["<=","ref_length",6],["==","$type","LineString"],["in","network","us-interstate"]],layout:{"text-size":10,"icon-image":"{network}_{ref_length}","icon-rotation-alignment":"viewport","symbol-spacing":200,"text-font":["Noto Sans Regular"],"symbol-placement":{base:1,stops:[[7,"point"],[7,"line"],[8,"line"]]},"text-rotation-alignment":"viewport","icon-size":1,"text-field":"{ref}"},paint:{"text-color":"rgba(0, 0, 0, 1)"}},{id:"highway-shield-us-other",type:"symbol",source:"openmaptiles","source-layer":"transportation_name",minzoom:9,filter:["all",["<=","ref_length",6],["==","$type","LineString"],["in","network","us-highway","us-state"]],layout:{"text-size":10,"icon-image":"{network}_{ref_length}","icon-rotation-alignment":"viewport","symbol-spacing":200,"text-font":["Noto Sans Regular"],"symbol-placement":{base:1,stops:[[10,"point"],[11,"line"]]},"text-rotation-alignment":"viewport","icon-size":1,"text-field":"{ref}"},paint:{"text-color":"rgba(0, 0, 0, 1)"}},{id:"place-other",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",minzoom:12,filter:["!in","class","city","town","village","country","continent"],layout:{"text-letter-spacing":.1,"text-size":{base:1.2,stops:[[12,10],[15,14]]},"text-font":["Noto Sans Bold"],"text-field":`{name:latin}
{name:nonlatin}`,"text-transform":"uppercase","text-max-width":9,visibility:"visible"},paint:{"text-color":"rgba(255,255,255,1)","text-halo-width":1.2,"text-halo-color":"rgba(57, 28, 28, 1)"}},{id:"place-village",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",minzoom:10,filter:["==","class","village"],layout:{"text-font":["Noto Sans Regular"],"text-size":{base:1.2,stops:[[10,12],[15,16]]},"text-field":`{name:latin}
{name:nonlatin}`,"text-max-width":8,visibility:"visible"},paint:{"text-color":"rgba(255, 255, 255, 1)","text-halo-width":1.2,"text-halo-color":"rgba(10, 9, 9, 0.8)"}},{id:"place-town",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["==","class","town"],layout:{"text-font":["Noto Sans Regular"],"text-size":{base:1.2,stops:[[10,14],[15,24]]},"text-field":`{name:latin}
{name:nonlatin}`,"text-max-width":8,visibility:"visible"},paint:{"text-color":"rgba(255, 255, 255, 1)","text-halo-width":1.2,"text-halo-color":"rgba(22, 22, 22, 0.8)"}},{id:"place-city",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["!=","capital",2],["==","class","city"]],layout:{"text-font":["Noto Sans Regular"],"text-size":{base:1.2,stops:[[7,14],[11,24]]},"text-field":`{name:latin}
{name:nonlatin}`,"text-max-width":8,visibility:"visible"},paint:{"text-color":"rgba(0, 0, 0, 1)","text-halo-width":1.2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-city-capital",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["==","capital",2],["==","class","city"]],layout:{"text-font":["Noto Sans Regular"],"text-size":{base:1.2,stops:[[7,14],[11,24]]},"text-field":`{name:latin}
{name:nonlatin}`,"text-max-width":8,"icon-image":"star_11","text-offset":[.4,0],"icon-size":.8,"text-anchor":"left",visibility:"visible"},paint:{"text-color":"#333","text-halo-width":1.2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-country-other",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["==","class","country"],[">=","rank",3],["!has","iso_a2"]],layout:{"text-font":["Noto Sans Italic"],"text-field":"{name:latin}","text-size":{stops:[[3,11],[7,17]]},"text-transform":"uppercase","text-max-width":6.25,visibility:"visible"},paint:{"text-halo-blur":1,"text-color":"#334","text-halo-width":2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-country-3",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["==","class","country"],[">=","rank",3],["has","iso_a2"]],layout:{"text-font":["Noto Sans Bold"],"text-field":"{name:latin}","text-size":{stops:[[3,11],[7,17]]},"text-transform":"uppercase","text-max-width":6.25,visibility:"visible"},paint:{"text-halo-blur":1,"text-color":"#334","text-halo-width":2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-country-2",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["==","class","country"],["==","rank",2],["has","iso_a2"]],layout:{"text-font":["Noto Sans Bold"],"text-field":"{name:latin}","text-size":{stops:[[2,11],[5,17]]},"text-transform":"uppercase","text-max-width":6.25,visibility:"visible"},paint:{"text-halo-blur":1,"text-color":"#334","text-halo-width":2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-country-1",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["==","class","country"],["==","rank",1],["has","iso_a2"]],layout:{"text-font":["Noto Sans Bold"],"text-field":"{name:latin}","text-size":{stops:[[1,11],[4,17]]},"text-transform":"uppercase","text-max-width":6.25,visibility:"visible"},paint:{"text-halo-blur":1,"text-color":"#334","text-halo-width":2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-continent",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",maxzoom:1,filter:["==","class","continent"],layout:{"text-font":["Noto Sans Bold"],"text-field":"{name:latin}","text-size":14,"text-max-width":6.25,"text-transform":"uppercase",visibility:"visible"},paint:{"text-halo-blur":1,"text-color":"#334","text-halo-width":2,"text-halo-color":"rgba(255,255,255,0.8)"}}],id:"qebnlkra6"}});var xHe=ye((Hxr,_He)=>{_He.exports={version:8,name:"orto",metadata:{},center:[1.537786,41.837539],zoom:12,bearing:0,pitch:0,light:{anchor:"viewport",color:"white",intensity:.4,position:[1.15,45,30]},sources:{ortoEsri:{type:"raster",tiles:["https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}"],tileSize:256,maxzoom:18,attribution:"ESRI &copy; <a href='http://www.esri.com'>ESRI</a>"},ortoInstaMaps:{type:"raster",tiles:["https://tilemaps.icgc.cat/mapfactory/wmts/orto_8_12/CAT3857/{z}/{x}/{y}.png"],tileSize:256,maxzoom:13},ortoICGC:{type:"raster",tiles:["https://geoserveis.icgc.cat/icc_mapesmultibase/noutm/wmts/orto/GRID3857/{z}/{x}/{y}.jpeg"],tileSize:256,minzoom:13.1,maxzoom:20},openmaptiles:{type:"vector",url:"https://geoserveis.icgc.cat/contextmaps/basemap.json"}},sprite:"https://geoserveis.icgc.cat/contextmaps/sprites/sprite@1",glyphs:"https://geoserveis.icgc.cat/contextmaps/glyphs/{fontstack}/{range}.pbf",layers:[{id:"background",type:"background",paint:{"background-color":"#F4F9F4"}},{id:"ortoEsri",type:"raster",source:"ortoEsri",maxzoom:16,layout:{visibility:"visible"}},{id:"ortoICGC",type:"raster",source:"ortoICGC",minzoom:13.1,maxzoom:19,layout:{visibility:"visible"}},{id:"ortoInstaMaps",type:"raster",source:"ortoInstaMaps",maxzoom:13,layout:{visibility:"visible"}}]}});var wx=ye((jxr,SHe)=>{"use strict";var PWt=Z1(),IWt=yHe(),RWt=xHe(),DWt='\xA9 <a target="_blank" href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors',bHe="https://basemaps.cartocdn.com/gl/positron-gl-style/style.json",wHe="https://basemaps.cartocdn.com/gl/dark-matter-gl-style/style.json",i7="https://basemaps.cartocdn.com/gl/voyager-gl-style/style.json",FWt="https://basemaps.cartocdn.com/gl/positron-nolabels-gl-style/style.json",zWt="https://basemaps.cartocdn.com/gl/dark-matter-nolabels-gl-style/style.json",OWt="https://basemaps.cartocdn.com/gl/voyager-nolabels-gl-style/style.json",AHe={basic:i7,streets:i7,outdoors:i7,light:bHe,dark:wHe,satellite:RWt,"satellite-streets":IWt,"open-street-map":{id:"osm",version:8,sources:{"plotly-osm-tiles":{type:"raster",attribution:DWt,tiles:["https://tile.openstreetmap.org/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-osm-tiles",type:"raster",source:"plotly-osm-tiles",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"white-bg":{id:"white-bg",version:8,sources:{},layers:[{id:"white-bg",type:"background",paint:{"background-color":"#FFFFFF"},minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"carto-positron":bHe,"carto-darkmatter":wHe,"carto-voyager":i7,"carto-positron-nolabels":FWt,"carto-darkmatter-nolabels":zWt,"carto-voyager-nolabels":OWt},THe=PWt(AHe);SHe.exports={styleValueDflt:"basic",stylesMap:AHe,styleValuesMap:THe,traceLayerPrefix:"plotly-trace-layer-",layoutLayerPrefix:"plotly-layout-layer-",missingStyleErrorMsg:["No valid maplibre style found, please set `map.style` to one of:",THe.join(", "),"or use a tile service."].join(`
`),mapOnErrorMsg:"Map error."}});var jk=ye((Wxr,LHe)=>{"use strict";var MHe=Dr(),EHe=ka().defaultLine,qWt=Cc().attributes,BWt=ec(),NWt=pf().textposition,UWt=mc().overrideAll,VWt=vl().templatedArray,kHe=wx(),CHe=BWt({noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0});CHe.family.dflt="Open Sans Regular, Arial Unicode MS Regular";var GWt=LHe.exports=UWt({_arrayAttrRegexps:[MHe.counterRegex("map",".layers",!0)],domain:qWt({name:"map"}),style:{valType:"any",values:kHe.styleValuesMap,dflt:kHe.styleValueDflt},center:{lon:{valType:"number",dflt:0},lat:{valType:"number",dflt:0}},zoom:{valType:"number",dflt:1},bearing:{valType:"number",dflt:0},pitch:{valType:"number",dflt:0},bounds:{west:{valType:"number"},east:{valType:"number"},south:{valType:"number"},north:{valType:"number"}},layers:VWt("layer",{visible:{valType:"boolean",dflt:!0},sourcetype:{valType:"enumerated",values:["geojson","vector","raster","image"],dflt:"geojson"},source:{valType:"any"},sourcelayer:{valType:"string",dflt:""},sourceattribution:{valType:"string"},type:{valType:"enumerated",values:["circle","line","fill","symbol","raster"],dflt:"circle"},coordinates:{valType:"any"},below:{valType:"string"},color:{valType:"color",dflt:EHe},opacity:{valType:"number",min:0,max:1,dflt:1},minzoom:{valType:"number",min:0,max:24,dflt:0},maxzoom:{valType:"number",min:0,max:24,dflt:24},circle:{radius:{valType:"number",dflt:15}},line:{width:{valType:"number",dflt:2},dash:{valType:"data_array"}},fill:{outlinecolor:{valType:"color",dflt:EHe}},symbol:{icon:{valType:"string",dflt:"marker"},iconsize:{valType:"number",dflt:10},text:{valType:"string",dflt:""},placement:{valType:"enumerated",values:["point","line","line-center"],dflt:"point"},textfont:CHe,textposition:MHe.extendFlat({},NWt,{arrayOk:!1})}})},"plot","from-root");GWt.uirevision={valType:"any",editType:"none"}});var n7=ye((Xxr,DHe)=>{"use strict";var{hovertemplateAttrs:HWt,texttemplateAttrs:jWt,templatefallbackAttrs:PHe}=Ll(),WWt=Cg(),Wk=j2(),E5=pf(),IHe=jk(),XWt=Gl(),ZWt=Tu(),nw=Ao().extendFlat,YWt=mc().overrideAll,KWt=jk(),RHe=Wk.line,k5=Wk.marker;DHe.exports=YWt({lon:Wk.lon,lat:Wk.lat,cluster:{enabled:{valType:"boolean"},maxzoom:nw({},KWt.layers.maxzoom,{}),step:{valType:"number",arrayOk:!0,dflt:-1,min:-1},size:{valType:"number",arrayOk:!0,dflt:20,min:0},color:{valType:"color",arrayOk:!0},opacity:nw({},k5.opacity,{dflt:1})},mode:nw({},E5.mode,{dflt:"markers"}),text:nw({},E5.text,{}),texttemplate:jWt({editType:"plot"},{keys:["lat","lon","text"]}),texttemplatefallback:PHe({editType:"plot"}),hovertext:nw({},E5.hovertext,{}),line:{color:RHe.color,width:RHe.width},connectgaps:E5.connectgaps,marker:nw({symbol:{valType:"string",dflt:"circle",arrayOk:!0},angle:{valType:"number",dflt:"auto",arrayOk:!0},allowoverlap:{valType:"boolean",dflt:!1},opacity:k5.opacity,size:k5.size,sizeref:k5.sizeref,sizemin:k5.sizemin,sizemode:k5.sizemode},ZWt("marker")),fill:Wk.fill,fillcolor:WWt(),textfont:IHe.layers.symbol.textfont,textposition:IHe.layers.symbol.textposition,below:{valType:"string"},selected:{marker:E5.selected.marker},unselected:{marker:E5.unselected.marker},hoverinfo:nw({},XWt.hoverinfo,{flags:["lon","lat","text","name"]}),hovertemplate:HWt(),hovertemplatefallback:PHe()},"calc","nested")});var wJ=ye((Zxr,FHe)=>{"use strict";var JWt=["Metropolis Black Italic","Metropolis Black","Metropolis Bold Italic","Metropolis Bold","Metropolis Extra Bold Italic","Metropolis Extra Bold","Metropolis Extra Light Italic","Metropolis Extra Light","Metropolis Light Italic","Metropolis Light","Metropolis Medium Italic","Metropolis Medium","Metropolis Regular Italic","Metropolis Regular","Metropolis Semi Bold Italic","Metropolis Semi Bold","Metropolis Thin Italic","Metropolis Thin","Open Sans Bold Italic","Open Sans Bold","Open Sans Extrabold Italic","Open Sans Extrabold","Open Sans Italic","Open Sans Light Italic","Open Sans Light","Open Sans Regular","Open Sans Semibold Italic","Open Sans Semibold","Klokantech Noto Sans Bold","Klokantech Noto Sans CJK Bold","Klokantech Noto Sans CJK Regular","Klokantech Noto Sans Italic","Klokantech Noto Sans Regular"];FHe.exports={isSupportedFont:function(e){return JWt.indexOf(e)!==-1}}});var qHe=ye((Yxr,OHe)=>{"use strict";var Xk=Dr(),TJ=Ru(),$Wt=$p(),QWt=R0(),eXt=D0(),tXt=Rg(),zHe=n7(),rXt=wJ().isSupportedFont;OHe.exports=function(t,r,n,i){function a(p,k){return Xk.coerce(t,r,zHe,p,k)}function o(p,k){return Xk.coerce2(t,r,zHe,p,k)}var s=iXt(t,r,a);if(!s){r.visible=!1;return}if(a("text"),a("texttemplate"),a("texttemplatefallback"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),a("mode"),a("below"),TJ.hasMarkers(r)){$Wt(t,r,n,i,a,{noLine:!0,noAngle:!0}),a("marker.allowoverlap"),a("marker.angle");var l=r.marker;l.symbol!=="circle"&&(Xk.isArrayOrTypedArray(l.size)&&(l.size=l.size[0]),Xk.isArrayOrTypedArray(l.color)&&(l.color=l.color[0]))}TJ.hasLines(r)&&(QWt(t,r,n,i,a,{noDash:!0}),a("connectgaps"));var u=o("cluster.maxzoom"),c=o("cluster.step"),f=o("cluster.color",r.marker&&r.marker.color||n),h=o("cluster.size"),d=o("cluster.opacity"),v=u!==!1||c!==!1||f!==!1||h!==!1||d!==!1,_=a("cluster.enabled",v);if(_||TJ.hasText(r)){var b=i.font.family;eXt(t,r,i,a,{noSelect:!0,noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0,font:{family:rXt(b)?b:"Open Sans Regular",weight:i.font.weight,style:i.font.style,size:i.font.size,color:i.font.color}})}a("fill"),r.fill!=="none"&&tXt(t,r,n,a),Xk.coerceSelectionMarkerOpacity(r,a)};function iXt(e,t,r){var n=r("lon")||[],i=r("lat")||[],a=Math.min(n.length,i.length);return t._length=a,a}});var AJ=ye((Kxr,NHe)=>{"use strict";var BHe=ho();NHe.exports=function(t,r,n){var i={},a=n[r.subplot]._subplot,o=a.mockAxis,s=t.lonlat;return i.lonLabel=BHe.tickText(o,o.c2l(s[0]),!0).text,i.latLabel=BHe.tickText(o,o.c2l(s[1]),!0).text,i}});var SJ=ye((Jxr,VHe)=>{"use strict";var UHe=Dr();VHe.exports=function(t,r){var n=t.split(" "),i=n[0],a=n[1],o=UHe.isArrayOrTypedArray(r)?UHe.mean(r):r,s=.5+o/100,l=1.5+o/100,u=["",""],c=[0,0];switch(i){case"top":u[0]="top",c[1]=-l;break;case"bottom":u[0]="bottom",c[1]=l;break}switch(a){case"left":u[1]="right",c[0]=-s;break;case"right":u[1]="left",c[0]=s;break}var f;return u[0]&&u[1]?f=u.join("-"):u[0]?f=u[0]:u[1]?f=u[1]:f="center",{anchor:f,offset:c}}});var ZHe=ye(($xr,XHe)=>{"use strict";var jHe=Eo(),ov=Dr(),nXt=fs().BADNUM,o7=tx(),GHe=tc(),aXt=So(),oXt=k3(),s7=Ru(),sXt=wJ().isSupportedFont,lXt=SJ(),uXt=ip().appendArrayPointValue,cXt=ru().NEWLINES,fXt=ru().BR_TAG_ALL;XHe.exports=function(t,r){var n=r[0].trace,i=n.visible===!0&&n._length!==0,a=n.fill!=="none",o=s7.hasLines(n),s=s7.hasMarkers(n),l=s7.hasText(n),u=s&&n.marker.symbol==="circle",c=s&&n.marker.symbol!=="circle",f=n.cluster&&n.cluster.enabled,h=a7("fill"),d=a7("line"),v=a7("circle"),_=a7("symbol"),b={fill:h,line:d,circle:v,symbol:_};if(!i)return b;var p;if((a||o)&&(p=o7.calcTraceToLineCoords(r)),a&&(h.geojson=o7.makePolygon(p),h.layout.visibility="visible",ov.extendFlat(h.paint,{"fill-color":n.fillcolor})),o&&(d.geojson=o7.makeLine(p),d.layout.visibility="visible",ov.extendFlat(d.paint,{"line-width":n.line.width,"line-color":n.line.color,"line-opacity":n.opacity})),u){var k=hXt(r);v.geojson=k.geojson,v.layout.visibility="visible",f&&(v.filter=["!",["has","point_count"]],b.cluster={type:"circle",filter:["has","point_count"],layout:{visibility:"visible"},paint:{"circle-color":EJ(n.cluster.color,n.cluster.step),"circle-radius":EJ(n.cluster.size,n.cluster.step),"circle-opacity":EJ(n.cluster.opacity,n.cluster.step)}},b.clusterCount={type:"symbol",filter:["has","point_count"],paint:{},layout:{"text-field":"{point_count_abbreviated}","text-font":HHe(n),"text-size":12}}),ov.extendFlat(v.paint,{"circle-color":k.mcc,"circle-radius":k.mrc,"circle-opacity":k.mo})}if(u&&f&&(v.filter=["!",["has","point_count"]]),(c||l)&&(_.geojson=dXt(r,t),ov.extendFlat(_.layout,{visibility:"visible","icon-image":"{symbol}-15","text-field":"{text}"}),c&&(ov.extendFlat(_.layout,{"icon-size":n.marker.size/10}),"angle"in n.marker&&n.marker.angle!=="auto"&&ov.extendFlat(_.layout,{"icon-rotate":{type:"identity",property:"angle"},"icon-rotation-alignment":"map"}),_.layout["icon-allow-overlap"]=n.marker.allowoverlap,ov.extendFlat(_.paint,{"icon-opacity":n.opacity*n.marker.opacity,"icon-color":n.marker.color})),l)){var E=(n.marker||{}).size,S=lXt(n.textposition,E);ov.extendFlat(_.layout,{"text-size":n.textfont.size,"text-anchor":S.anchor,"text-offset":S.offset,"text-font":HHe(n)}),ov.extendFlat(_.paint,{"text-color":n.textfont.color,"text-opacity":n.opacity})}return b};function a7(e){return{type:e,geojson:o7.makeBlank(),layout:{visibility:"none"},filter:null,paint:{}}}function hXt(e){var t=e[0].trace,r=t.marker,n=t.selectedpoints,i=ov.isArrayOrTypedArray(r.color),a=ov.isArrayOrTypedArray(r.size),o=ov.isArrayOrTypedArray(r.opacity),s;function l(E){return t.opacity*E}function u(E){return E/2}var c;i&&(GHe.hasColorscale(t,"marker")?c=GHe.makeColorScaleFuncFromTrace(r):c=ov.identity);var f;a&&(f=oXt(t));var h;o&&(h=function(E){var S=jHe(E)?+ov.constrain(E,0,1):0;return l(S)});var d=[];for(s=0;s<e.length;s++){var v=e[s],_=v.lonlat;if(!WHe(_)){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:_},properties:b})}}var p;if(n)for(p=aXt.makeSelectedPointStyleFns(t),s=0;s<d.length;s++){var k=d[s].properties;p.selectedOpacityFn&&(k.mo=l(p.selectedOpacityFn(k))),p.selectedColorFn&&(k.mcc=p.selectedColorFn(k)),p.selectedSizeFn&&(k.mrc=p.selectedSizeFn(k))}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 dXt(e,t){for(var r=t._fullLayout,n=e[0].trace,i=n.marker||{},a=i.symbol,o=i.angle,s=a!=="circle"?MJ(a):l7,l=o!=="auto"?MJ(o,!0):l7,u=s7.hasText(n)?MJ(n.text):l7,c=[],f=0;f<e.length;f++){var h=e[f];if(!WHe(h.lonlat)){var d=n.texttemplate,v;if(d){var _=Array.isArray(d)?d[f]||"":d,b=n._module.formatLabels(h,n,r),p={};uXt(p,n,h.i),v=ov.texttemplateString({data:[p,h,n._meta],fallback:n.texttemplatefallback,labels:b,locale:r._d3locale,template:_})}else v=u(f);v&&(v=v.replace(cXt,"").replace(fXt,`
`)),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 MJ(e,t){return ov.isArrayOrTypedArray(e)?t?function(r){return jHe(e[r])?+e[r]:0}:function(r){return e[r]}:e?function(){return e}:l7}function l7(){return""}function WHe(e){return e[0]===nXt}function EJ(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 HHe(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"),sXt(s)||(s=r);var l=s.split(", ");return l}});var $He=ye((Qxr,JHe)=>{"use strict";var vXt=Dr(),YHe=ZHe(),C5=wx().traceLayerPrefix,ng={cluster:["cluster","clusterCount","circle"],nonCluster:["fill","line","circle","symbol"]};function KHe(e,t,r,n){this.type="scattermap",this.subplot=e,this.uid=t,this.clusterEnabled=r,this.isHidden=n,this.sourceIds={fill:"source-"+t+"-fill",line:"source-"+t+"-line",circle:"source-"+t+"-circle",symbol:"source-"+t+"-symbol",cluster:"source-"+t+"-circle",clusterCount:"source-"+t+"-circle"},this.layerIds={fill:C5+t+"-fill",line:C5+t+"-line",circle:C5+t+"-circle",symbol:C5+t+"-symbol",cluster:C5+t+"-cluster",clusterCount:C5+t+"-cluster-count"},this.below=null}var Zk=KHe.prototype;Zk.addSource=function(e,t,r){var n={type:"geojson",data:t.geojson};r&&r.enabled&&vXt.extendFlat(n,{cluster:!0,clusterMaxZoom:r.maxzoom});var i=this.subplot.map.getSource(this.sourceIds[e]);i?i.setData(t.geojson):this.subplot.map.addSource(this.sourceIds[e],n)};Zk.setSourceData=function(e,t){this.subplot.map.getSource(this.sourceIds[e]).setData(t.geojson)};Zk.addLayer=function(e,t,r){var n={type:t.type,id:this.layerIds[e],source:this.sourceIds[e],layout:t.layout,paint:t.paint};t.filter&&(n.filter=t.filter);for(var i=this.layerIds[e],a,o=this.subplot.getMapLayers(),s=0;s<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)};Zk.update=function(t){var r=t[0].trace,n=this.subplot,i=n.map,a=YHe(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 S=ng.cluster,L=0;L<S.length;L++){var x=S[L],C=a[x];u.addLayer(x,C,o)}}function f(E){for(var S=ng.cluster,L=S.length-1;L>=0;L--){var x=S[L];i.removeLayer(u.layerIds[x])}E||i.removeSource(u.sourceIds.circle)}function h(E){for(var S=ng.nonCluster,L=0;L<S.length;L++){var x=S[L],C=a[x];E||u.addSource(x,C),u.addLayer(x,C,o)}}function d(E){for(var S=ng.nonCluster,L=S.length-1;L>=0;L--){var x=S[L];i.removeLayer(u.layerIds[x]),E||i.removeSource(u.sourceIds[x])}}function v(E){l?f(E):d(E)}function _(E){s?c(E):h(E)}function b(){for(var E=s?ng.cluster:ng.nonCluster,S=0;S<E.length;S++){var L=E[S],x=a[L];x&&(n.setOptions(u.layerIds[L],"setLayoutProperty",x.layout),x.layout.visibility==="visible"&&(L!=="cluster"&&u.setSourceData(L,x),n.setOptions(u.layerIds[L],"setPaintProperty",x.paint)))}}var p=this.isHidden,k=r.visible!==!0;k?p||v():p?k||_():l!==s?(v(),_()):(this.below!==o&&(v(!0),_(!0)),b()),this.clusterEnabled=s,this.isHidden=k,this.below=o,t[0].trace._glTrace=this};Zk.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])}};JHe.exports=function(t,r){var n=r[0].trace,i=n.cluster&&n.cluster.enabled,a=n.visible!==!0,o=new KHe(t,n.uid,i,a),s=YHe(t.gd,r),l=o.below=t.belowLookup["trace-"+n.uid],u,c,f;if(i)for(o.addSource("circle",s.circle,n.cluster),u=0;u<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 u7=ye((ebr,eje)=>{"use strict";var pXt=vf(),kJ=Dr(),gXt=cT(),mXt=kJ.fillText,yXt=fs().BADNUM,_Xt=wx().traceLayerPrefix;function xXt(e,t,r){var n=e.cd,i=n[0].trace,a=e.xa,o=e.ya,s=e.subplot,l=[],u=_Xt+i.uid+"-circle",c=i.cluster&&i.cluster.enabled;if(c){var f=s.map.queryRenderedFeatures(null,{layers:[u]});l=f.map(function(M){return M.id})}var h=t>=0?Math.floor((t+180)/360):Math.ceil((t-180)/360),d=h*360,v=t-d;function _(M){var g=M.lonlat;if(g[0]===yXt||c&&l.indexOf(M.i+1)===-1)return 1/0;var P=kJ.modHalf(g[0],360),T=g[1],z=s.project([P,T]),O=z.x-a.c2p([v,T]),V=z.y-o.c2p([P,r]),G=Math.max(3,M.mrc||0);return Math.max(Math.sqrt(O*O+V*V)-G,1-3/G)}if(pXt.getClosest(n,_,e),e.index!==!1){var b=n[e.index],p=b.lonlat,k=[kJ.modHalf(p[0],360)+d,p[1]],E=a.c2p(k),S=o.c2p(k),L=b.mrc||1;e.x0=E-L,e.x1=E+L,e.y0=S-L,e.y1=S+L;var x={};x[i.subplot]={_subplot:s};var C=i._module.formatLabels(b,i,x);return e.lonLabel=C.lonLabel,e.latLabel=C.latLabel,e.color=gXt(i,b),e.extraText=QHe(i,b,n[0].t.labels),e.hovertemplate=i.hovertemplate,[e]}}function QHe(e,t,r){if(e.hovertemplate)return;var n=t.hi||e.hoverinfo,i=n.split("+"),a=i.indexOf("all")!==-1,o=i.indexOf("lon")!==-1,s=i.indexOf("lat")!==-1,l=t.lonlat,u=[];function c(f){return f+"\xB0"}return a||o&&s?u.push("("+c(l[1])+", "+c(l[0])+")"):o?u.push(r.lon+c(l[0])):s&&u.push(r.lat+c(l[1])),(a||i.indexOf("text")!==-1)&&mXt(t,e,u),u.join("<br>")}eje.exports={hoverPoints:xXt,getExtraText:QHe}});var rje=ye((tbr,tje)=>{"use strict";tje.exports=function(t,r){return t.lon=r.lon,t.lat=r.lat,t}});var nje=ye((rbr,ije)=>{"use strict";var bXt=Dr(),wXt=Ru(),TXt=fs().BADNUM;ije.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=[],s=n[0].trace,l;if(!wXt.hasMarkers(s))return[];if(r===!1)for(l=0;l<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]!==TXt){var f=[bXt.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 oje=ye((CJ,LJ)=>{(function(e,t){typeof CJ=="object"&&typeof LJ!="undefined"?LJ.exports=t():(e=typeof globalThis!="undefined"?globalThis:e||self,e.maplibregl=t())})(CJ,function(){"use strict";var e={},t={};function r(i,a,o){if(t[i]=o,i==="index"){var s="var sharedModule = {}; ("+t.shared+")(sharedModule); ("+t.worker+")(sharedModule);",l={};return t.shared(l),t.index(e,l),typeof window!="undefined"&&e.setWorkerUrl(window.URL.createObjectURL(new Blob([s],{type:"text/javascript"}))),e}}r("shared",["exports"],function(i){"use strict";function a(R,A,F,W){return new(F||(F=Promise))(function(re,fe){function pe(ct){try{Ke(W.next(ct))}catch(Lt){fe(Lt)}}function ze(ct){try{Ke(W.throw(ct))}catch(Lt){fe(Lt)}}function Ke(ct){var Lt;ct.done?re(ct.value):(Lt=ct.value,Lt instanceof F?Lt:new F(function($t){$t(Lt)})).then(pe,ze)}Ke((W=W.apply(R,A||[])).next())})}function o(R){return R&&R.__esModule&&Object.prototype.hasOwnProperty.call(R,"default")?R.default:R}typeof SuppressedError=="function"&&SuppressedError;var s=l;function l(R,A){this.x=R,this.y=A}l.prototype={clone:function(){return new l(this.x,this.y)},add:function(R){return this.clone()._add(R)},sub:function(R){return this.clone()._sub(R)},multByPoint:function(R){return this.clone()._multByPoint(R)},divByPoint:function(R){return this.clone()._divByPoint(R)},mult:function(R){return this.clone()._mult(R)},div:function(R){return this.clone()._div(R)},rotate:function(R){return this.clone()._rotate(R)},rotateAround:function(R,A){return this.clone()._rotateAround(R,A)},matMult:function(R){return this.clone()._matMult(R)},unit:function(){return this.clone()._unit()},perp:function(){return this.clone()._perp()},round:function(){return this.clone()._round()},mag:function(){return Math.sqrt(this.x*this.x+this.y*this.y)},equals:function(R){return this.x===R.x&&this.y===R.y},dist:function(R){return Math.sqrt(this.distSqr(R))},distSqr:function(R){var A=R.x-this.x,F=R.y-this.y;return A*A+F*F},angle:function(){return Math.atan2(this.y,this.x)},angleTo:function(R){return Math.atan2(this.y-R.y,this.x-R.x)},angleWith:function(R){return this.angleWithSep(R.x,R.y)},angleWithSep:function(R,A){return Math.atan2(this.x*A-this.y*R,this.x*R+this.y*A)},_matMult:function(R){var A=R[2]*this.x+R[3]*this.y;return this.x=R[0]*this.x+R[1]*this.y,this.y=A,this},_add:function(R){return this.x+=R.x,this.y+=R.y,this},_sub:function(R){return this.x-=R.x,this.y-=R.y,this},_mult:function(R){return this.x*=R,this.y*=R,this},_div:function(R){return this.x/=R,this.y/=R,this},_multByPoint:function(R){return this.x*=R.x,this.y*=R.y,this},_divByPoint:function(R){return this.x/=R.x,this.y/=R.y,this},_unit:function(){return this._div(this.mag()),this},_perp:function(){var R=this.y;return this.y=this.x,this.x=-R,this},_rotate:function(R){var A=Math.cos(R),F=Math.sin(R),W=F*this.x+A*this.y;return this.x=A*this.x-F*this.y,this.y=W,this},_rotateAround:function(R,A){var F=Math.cos(R),W=Math.sin(R),re=A.y+W*(this.x-A.x)+F*(this.y-A.y);return this.x=A.x+F*(this.x-A.x)-W*(this.y-A.y),this.y=re,this},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}},l.convert=function(R){return R instanceof l?R:Array.isArray(R)?new l(R[0],R[1]):R};var u=o(s),c=f;function f(R,A,F,W){this.cx=3*R,this.bx=3*(F-R)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*A,this.by=3*(W-A)-this.cy,this.ay=1-this.cy-this.by,this.p1x=R,this.p1y=A,this.p2x=F,this.p2y=W}f.prototype={sampleCurveX:function(R){return((this.ax*R+this.bx)*R+this.cx)*R},sampleCurveY:function(R){return((this.ay*R+this.by)*R+this.cy)*R},sampleCurveDerivativeX:function(R){return(3*this.ax*R+2*this.bx)*R+this.cx},solveCurveX:function(R,A){if(A===void 0&&(A=1e-6),R<0)return 0;if(R>1)return 1;for(var F=R,W=0;W<8;W++){var re=this.sampleCurveX(F)-R;if(Math.abs(re)<A)return F;var fe=this.sampleCurveDerivativeX(F);if(Math.abs(fe)<1e-6)break;F-=re/fe}var pe=0,ze=1;for(F=R,W=0;W<20&&(re=this.sampleCurveX(F),!(Math.abs(re-R)<A));W++)R>re?pe=F:ze=F,F=.5*(ze-pe)+pe;return F},solve:function(R,A){return this.sampleCurveY(this.solveCurveX(R,A))}};var h=o(c);let d,v;function _(){return d==null&&(d=typeof OffscreenCanvas!="undefined"&&new OffscreenCanvas(1,1).getContext("2d")&&typeof createImageBitmap=="function"),d}function b(){if(v==null&&(v=!1,_())){let A=new OffscreenCanvas(5,5).getContext("2d",{willReadFrequently:!0});if(A){for(let W=0;W<5*5;W++){let re=4*W;A.fillStyle=`rgb(${re},${re+1},${re+2})`,A.fillRect(W%5,Math.floor(W/5),1,1)}let F=A.getImageData(0,0,5,5).data;for(let W=0;W<5*5*4;W++)if(W%4!=3&&F[W]!==W){v=!0;break}}}return v||!1}function p(R,A,F,W){let re=new h(R,A,F,W);return fe=>re.solve(fe)}let k=p(.25,.1,.25,1);function E(R,A,F){return Math.min(F,Math.max(A,R))}function S(R,A,F){let W=F-A,re=((R-A)%W+W)%W+A;return re===A?F:re}function L(R,...A){for(let F of A)for(let W in F)R[W]=F[W];return R}let x=1;function C(R,A,F){let W={};for(let re in R)W[re]=A.call(this,R[re],re,R);return W}function M(R,A,F){let W={};for(let re in R)A.call(this,R[re],re,R)&&(W[re]=R[re]);return W}function g(R){return Array.isArray(R)?R.map(g):typeof R=="object"&&R?C(R,g):R}let P={};function T(R){P[R]||(typeof console!="undefined"&&console.warn(R),P[R]=!0)}function z(R,A,F){return(F.y-R.y)*(A.x-R.x)>(A.y-R.y)*(F.x-R.x)}function O(R){return typeof WorkerGlobalScope!="undefined"&&R!==void 0&&R instanceof WorkerGlobalScope}let V=null;function G(R){return typeof ImageBitmap!="undefined"&&R instanceof ImageBitmap}let Z="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVQYV2NgAAIAAAUAAarVyFEAAAAASUVORK5CYII=";function j(R,A,F,W,re){return a(this,void 0,void 0,function*(){if(typeof VideoFrame=="undefined")throw new Error("VideoFrame not supported");let fe=new VideoFrame(R,{timestamp:0});try{let pe=fe==null?void 0:fe.format;if(!pe||!pe.startsWith("BGR")&&!pe.startsWith("RGB"))throw new Error(`Unrecognized format ${pe}`);let ze=pe.startsWith("BGR"),Ke=new Uint8ClampedArray(W*re*4);if(yield fe.copyTo(Ke,function(ct,Lt,$t,fr,mr){let Pr=4*Math.max(-Lt,0),zr=(Math.max(0,$t)-$t)*fr*4+Pr,ui=4*fr,yi=Math.max(0,Lt),vn=Math.max(0,$t);return{rect:{x:yi,y:vn,width:Math.min(ct.width,Lt+fr)-yi,height:Math.min(ct.height,$t+mr)-vn},layout:[{offset:zr,stride:ui}]}}(R,A,F,W,re)),ze)for(let ct=0;ct<Ke.length;ct+=4){let Lt=Ke[ct];Ke[ct]=Ke[ct+2],Ke[ct+2]=Lt}return Ke}finally{fe.close()}})}let N,H,te="AbortError";function oe(){return new Error(te)}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 Ee(R){return _e.REGISTERED_PROTOCOLS[R.substring(0,R.indexOf("://"))]}let Ce="global-dispatcher";class me extends Error{constructor(A,F,W,re){super(`AJAXError: ${F} (${A}): ${W}`),this.status=A,this.statusText=F,this.url=W,this.body=re}}let ie=()=>O(self)?self.worker&&self.worker.referrer:(window.location.protocol==="blob:"?window.parent:window).location.href,Se=function(R,A){if(/:\/\//.test(R.url)&&!/^https?:|^file:/.test(R.url)){let W=Ee(R.url);if(W)return W(R,A);if(O(self)&&self.worker&&self.worker.actor)return self.worker.actor.sendAsync({type:"GR",data:R,targetMapId:Ce},A)}if(!(/^file:/.test(F=R.url)||/^file:/.test(ie())&&!/^\w+:/.test(F))){if(fetch&&Request&&AbortController&&Object.prototype.hasOwnProperty.call(Request.prototype,"signal"))return function(W,re){return a(this,void 0,void 0,function*(){let fe=new Request(W.url,{method:W.method||"GET",body:W.body,credentials:W.credentials,headers:W.headers,cache:W.cache,referrer:ie(),signal:re.signal});W.type!=="json"||fe.headers.has("Accept")||fe.headers.set("Accept","application/json");let pe=yield fetch(fe);if(!pe.ok){let ct=yield pe.blob();throw new me(pe.status,pe.statusText,W.url,ct)}let ze;ze=W.type==="arrayBuffer"||W.type==="image"?pe.arrayBuffer():W.type==="json"?pe.json():pe.text();let Ke=yield ze;if(re.signal.aborted)throw oe();return{data:Ke,cacheControl:pe.headers.get("Cache-Control"),expires:pe.headers.get("Expires")}})}(R,A);if(O(self)&&self.worker&&self.worker.actor)return self.worker.actor.sendAsync({type:"GR",data:R,mustQueue:!0,targetMapId:Ce},A)}var F;return function(W,re){return new Promise((fe,pe)=>{var ze;let Ke=new XMLHttpRequest;Ke.open(W.method||"GET",W.url,!0),W.type!=="arrayBuffer"&&W.type!=="image"||(Ke.responseType="arraybuffer");for(let ct in W.headers)Ke.setRequestHeader(ct,W.headers[ct]);W.type==="json"&&(Ke.responseType="text",!((ze=W.headers)===null||ze===void 0)&&ze.Accept||Ke.setRequestHeader("Accept","application/json")),Ke.withCredentials=W.credentials==="include",Ke.onerror=()=>{pe(new Error(Ke.statusText))},Ke.onload=()=>{if(!re.signal.aborted)if((Ke.status>=200&&Ke.status<300||Ke.status===0)&&Ke.response!==null){let ct=Ke.response;if(W.type==="json")try{ct=JSON.parse(Ke.response)}catch(Lt){return void pe(Lt)}fe({data:ct,cacheControl:Ke.getResponseHeader("Cache-Control"),expires:Ke.getResponseHeader("Expires")})}else{let ct=new Blob([Ke.response],{type:Ke.getResponseHeader("Content-Type")});pe(new me(Ke.status,Ke.statusText,W.url,ct))}},re.signal.addEventListener("abort",()=>{Ke.abort(),pe(oe())}),Ke.send(W.body)})}(R,A)};function Le(R){if(!R||R.indexOf("://")<=0||R.indexOf("data:image/")===0||R.indexOf("blob:")===0)return!0;let A=new URL(R),F=window.location;return A.protocol===F.protocol&&A.host===F.host}function Ae(R,A,F){F[R]&&F[R].indexOf(A)!==-1||(F[R]=F[R]||[],F[R].push(A))}function Fe(R,A,F){if(F&&F[R]){let W=F[R].indexOf(A);W!==-1&&F[R].splice(W,1)}}class Pe{constructor(A,F={}){L(this,F),this.type=A}}class ge extends Pe{constructor(A,F={}){super("error",L({error:A},F))}}class Re{on(A,F){return this._listeners=this._listeners||{},Ae(A,F,this._listeners),this}off(A,F){return Fe(A,F,this._listeners),Fe(A,F,this._oneTimeListeners),this}once(A,F){return F?(this._oneTimeListeners=this._oneTimeListeners||{},Ae(A,F,this._oneTimeListeners),this):new Promise(W=>this.once(A,W))}fire(A,F){typeof A=="string"&&(A=new Pe(A,F||{}));let W=A.type;if(this.listens(W)){A.target=this;let re=this._listeners&&this._listeners[W]?this._listeners[W].slice():[];for(let ze of re)ze.call(this,A);let fe=this._oneTimeListeners&&this._oneTimeListeners[W]?this._oneTimeListeners[W].slice():[];for(let ze of fe)Fe(W,ze,this._oneTimeListeners),ze.call(this,A);let pe=this._eventedParent;pe&&(L(A,typeof this._eventedParentData=="function"?this._eventedParentData():this._eventedParentData),pe.fire(A))}else A instanceof ge&&console.error(A.error);return this}listens(A){return this._listeners&&this._listeners[A]&&this._listeners[A].length>0||this._oneTimeListeners&&this._oneTimeListeners[A]&&this._oneTimeListeners[A].length>0||this._eventedParent&&this._eventedParent.listens(A)}setEventedParent(A,F){return this._eventedParent=A,this._eventedParentData=F,this}}var ce={$version:8,$root:{version:{required:!0,type:"enum",values:[8]},name:{type:"string"},metadata:{type:"*"},center:{type:"array",value:"number"},zoom:{type:"number"},bearing:{type:"number",default:0,period:360,units:"degrees"},pitch:{type:"number",default:0,units:"degrees"},light:{type:"light"},sky:{type:"sky"},projection:{type:"projection"},terrain:{type:"terrain"},sources:{required:!0,type:"sources"},sprite:{type:"sprite"},glyphs:{type:"string"},transition:{type:"transition"},layers:{required:!0,type:"array",value:"layer"}},sources:{"*":{type:"source"}},source:["source_vector","source_raster","source_raster_dem","source_geojson","source_video","source_image"],source_vector:{type:{required:!0,type:"enum",values:{vector:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},attribution:{type:"string"},promoteId:{type:"promoteId"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},source_raster:{type:{required:!0,type:"enum",values:{raster:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},attribution:{type:"string"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},source_raster_dem:{type:{required:!0,type:"enum",values:{"raster-dem":{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},attribution:{type:"string"},encoding:{type:"enum",values:{terrarium:{},mapbox:{},custom:{}},default:"mapbox"},redFactor:{type:"number",default:1},blueFactor:{type:"number",default:1},greenFactor:{type:"number",default:1},baseShift:{type:"number",default:0},volatile:{type:"boolean",default:!1},"*":{type:"*"}},source_geojson:{type:{required:!0,type:"enum",values:{geojson:{}}},data:{required:!0,type:"*"},maxzoom:{type:"number",default:18},attribution:{type:"string"},buffer:{type:"number",default:128,maximum:512,minimum:0},filter:{type:"*"},tolerance:{type:"number",default:.375},cluster:{type:"boolean",default:!1},clusterRadius:{type:"number",default:50,minimum:0},clusterMaxZoom:{type:"number"},clusterMinPoints:{type:"number"},clusterProperties:{type:"*"},lineMetrics:{type:"boolean",default:!1},generateId:{type:"boolean",default:!1},promoteId:{type:"promoteId"}},source_video:{type:{required:!0,type:"enum",values:{video:{}}},urls:{required:!0,type:"array",value:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},source_image:{type:{required:!0,type:"enum",values:{image:{}}},url:{required:!0,type:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},layer:{id:{type:"string",required:!0},type:{type:"enum",values:{fill:{},line:{},symbol:{},circle:{},heatmap:{},"fill-extrusion":{},raster:{},hillshade:{},background:{}},required:!0},metadata:{type:"*"},source:{type:"string"},"source-layer":{type:"string"},minzoom:{type:"number",minimum:0,maximum:24},maxzoom:{type:"number",minimum:0,maximum:24},filter:{type:"filter"},layout:{type:"layout"},paint:{type:"paint"}},layout:["layout_fill","layout_line","layout_circle","layout_heatmap","layout_fill-extrusion","layout_symbol","layout_raster","layout_hillshade","layout_background"],layout_background:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_fill:{"fill-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_circle:{"circle-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_heatmap:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},"layout_fill-extrusion":{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_line:{"line-cap":{type:"enum",values:{butt:{},round:{},square:{}},default:"butt",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-join":{type:"enum",values:{bevel:{},round:{},miter:{}},default:"miter",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"line-miter-limit":{type:"number",default:2,requires:[{"line-join":"miter"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-round-limit":{type:"number",default:1.05,requires:[{"line-join":"round"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_symbol:{"symbol-placement":{type:"enum",values:{point:{},line:{},"line-center":{}},default:"point",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-spacing":{type:"number",default:250,minimum:1,units:"pixels",requires:[{"symbol-placement":"line"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"symbol-avoid-edges":{type:"boolean",default:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"symbol-z-order":{type:"enum",values:{auto:{},"viewport-y":{},source:{}},default:"auto",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-allow-overlap":{type:"boolean",default:!1,requires:["icon-image",{"!":"icon-overlap"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-overlap":{type:"enum",values:{never:{},always:{},cooperative:{}},requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-ignore-placement":{type:"boolean",default:!1,requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-optional":{type:"boolean",default:!1,requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-rotation-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-size":{type:"number",default:1,minimum:0,units:"factor of the original icon size",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-text-fit":{type:"enum",values:{none:{},width:{},height:{},both:{}},default:"none",requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-text-fit-padding":{type:"array",value:"number",length:4,default:[0,0,0,0],units:"pixels",requires:["icon-image","text-field",{"icon-text-fit":["both","width","height"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-image":{type:"resolvedImage",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-padding":{type:"padding",default:[2],units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-keep-upright":{type:"boolean",default:!1,requires:["icon-image",{"icon-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-offset":{type:"array",value:"number",length:2,default:[0,0],requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotation-alignment":{type:"enum",values:{map:{},viewport:{},"viewport-glyph":{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-field":{type:"formatted",default:"",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-font":{type:"array",value:"string",default:["Open Sans Regular","Arial Unicode MS Regular"],requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-size":{type:"number",default:16,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-width":{type:"number",default:10,minimum:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-line-height":{type:"number",default:1.2,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-letter-spacing":{type:"number",default:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-justify":{type:"enum",values:{auto:{},left:{},center:{},right:{}},default:"center",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-radial-offset":{type:"number",units:"ems",default:0,requires:["text-field"],"property-type":"data-driven",expression:{interpolated:!0,parameters:["zoom","feature"]}},"text-variable-anchor":{type:"array",value:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-variable-anchor-offset":{type:"variableAnchorOffsetCollection",requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["text-field",{"!":"text-variable-anchor"}],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-angle":{type:"number",default:45,units:"degrees",requires:["text-field",{"symbol-placement":["line","line-center"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-writing-mode":{type:"array",value:"enum",values:{horizontal:{},vertical:{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-padding":{type:"number",default:2,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-keep-upright":{type:"boolean",default:!0,requires:["text-field",{"text-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-transform":{type:"enum",values:{none:{},uppercase:{},lowercase:{}},default:"none",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-offset":{type:"array",value:"number",units:"ems",length:2,default:[0,0],requires:["text-field",{"!":"text-radial-offset"}],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-allow-overlap":{type:"boolean",default:!1,requires:["text-field",{"!":"text-overlap"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-overlap":{type:"enum",values:{never:{},always:{},cooperative:{}},requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-ignore-placement":{type:"boolean",default:!1,requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-optional":{type:"boolean",default:!1,requires:["text-field","icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_raster:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_hillshade:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},filter:{type:"array",value:"*"},filter_operator:{type:"enum",values:{"==":{},"!=":{},">":{},">=":{},"<":{},"<=":{},in:{},"!in":{},all:{},any:{},none:{},has:{},"!has":{}}},geometry_type:{type:"enum",values:{Point:{},LineString:{},Polygon:{}}},function:{expression:{type:"expression"},stops:{type:"array",value:"function_stop"},base:{type:"number",default:1,minimum:0},property:{type:"string",default:"$zoom"},type:{type:"enum",values:{identity:{},exponential:{},interval:{},categorical:{}},default:"exponential"},colorSpace:{type:"enum",values:{rgb:{},lab:{},hcl:{}},default:"rgb"},default:{type:"*",required:!1}},function_stop:{type:"array",minimum:0,maximum:24,value:["number","color"],length:2},expression:{type:"array",value:"*",minimum:1},light:{anchor:{type:"enum",default:"viewport",values:{map:{},viewport:{}},"property-type":"data-constant",transition:!1,expression:{interpolated:!1,parameters:["zoom"]}},position:{type:"array",default:[1.15,210,30],length:3,value:"number","property-type":"data-constant",transition:!0,expression:{interpolated:!0,parameters:["zoom"]}},color:{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},intensity:{type:"number","property-type":"data-constant",default:.5,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0}},sky:{"sky-color":{type:"color","property-type":"data-constant",default:"#88C6FC",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"horizon-color":{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"fog-color":{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"fog-ground-blend":{type:"number","property-type":"data-constant",default:.5,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"horizon-fog-blend":{type:"number","property-type":"data-constant",default:.8,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"sky-horizon-blend":{type:"number","property-type":"data-constant",default:.8,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"atmosphere-blend":{type:"number","property-type":"data-constant",default:.8,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0}},terrain:{source:{type:"string",required:!0},exaggeration:{type:"number",minimum:0,default:1}},projection:{type:{type:"enum",default:"mercator",values:{mercator:{},globe:{}}}},paint:["paint_fill","paint_line","paint_circle","paint_heatmap","paint_fill-extrusion","paint_symbol","paint_raster","paint_hillshade","paint_background"],paint_fill:{"fill-antialias":{type:"boolean",default:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-outline-color":{type:"color",transition:!0,requires:[{"!":"fill-pattern"},{"fill-antialias":!0}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"}},"paint_fill-extrusion":{"fill-extrusion-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-extrusion-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-extrusion-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"fill-extrusion-height":{type:"number",default:0,minimum:0,units:"meters",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-base":{type:"number",default:0,minimum:0,units:"meters",transition:!0,requires:["fill-extrusion-height"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-vertical-gradient":{type:"boolean",default:!0,transition:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},paint_line:{"line-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"line-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["line-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-width":{type:"number",default:1,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-gap-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-offset":{type:"number",default:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-dasharray":{type:"array",value:"number",minimum:0,transition:!0,units:"line widths",requires:[{"!":"line-pattern"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"line-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"line-gradient":{type:"color",transition:!1,requires:[{"!":"line-dasharray"},{"!":"line-pattern"},{source:"geojson",has:{lineMetrics:!0}}],expression:{interpolated:!0,parameters:["line-progress"]},"property-type":"color-ramp"}},paint_circle:{"circle-radius":{type:"number",default:5,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-blur":{type:"number",default:0,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"circle-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["circle-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-scale":{type:"enum",values:{map:{},viewport:{}},default:"map",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-alignment":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-stroke-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"}},paint_heatmap:{"heatmap-radius":{type:"number",default:30,minimum:1,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-weight":{type:"number",default:1,minimum:0,transition:!1,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-intensity":{type:"number",default:1,minimum:0,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"heatmap-color":{type:"color",default:["interpolate",["linear"],["heatmap-density"],0,"rgba(0, 0, 255, 0)",.1,"royalblue",.3,"cyan",.5,"lime",.7,"yellow",1,"red"],transition:!1,expression:{interpolated:!0,parameters:["heatmap-density"]},"property-type":"color-ramp"},"heatmap-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},paint_symbol:{"icon-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-color":{type:"color",default:"#000000",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["icon-image","icon-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-color":{type:"color",default:"#000000",transition:!0,overridable:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["text-field","text-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},paint_raster:{"raster-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-hue-rotate":{type:"number",default:0,period:360,transition:!0,units:"degrees",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-min":{type:"number",default:0,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-max":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-saturation":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-contrast":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-resampling":{type:"enum",values:{linear:{},nearest:{}},default:"linear",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"raster-fade-duration":{type:"number",default:300,minimum:0,transition:!1,units:"milliseconds",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},paint_hillshade:{"hillshade-illumination-direction":{type:"number",default:335,minimum:0,maximum:359,transition:!1,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-illumination-anchor":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-exaggeration":{type:"number",default:.5,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-shadow-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-highlight-color":{type:"color",default:"#FFFFFF",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-accent-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},paint_background:{"background-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"background-pattern"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"background-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"background-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},transition:{duration:{type:"number",default:300,minimum:0,units:"milliseconds"},delay:{type:"number",default:0,minimum:0,units:"milliseconds"}},"property-type":{"data-driven":{type:"property-type"},"cross-faded":{type:"property-type"},"cross-faded-data-driven":{type:"property-type"},"color-ramp":{type:"property-type"},"data-constant":{type:"property-type"},constant:{type:"property-type"}},promoteId:{"*":{type:"string"}}};let Ze=["type","source","source-layer","minzoom","maxzoom","filter","layout"];function ut(R,A){let F={};for(let W in R)W!=="ref"&&(F[W]=R[W]);return Ze.forEach(W=>{W in A&&(F[W]=A[W])}),F}function pt(R,A){if(Array.isArray(R)){if(!Array.isArray(A)||R.length!==A.length)return!1;for(let F=0;F<R.length;F++)if(!pt(R[F],A[F]))return!1;return!0}if(typeof R=="object"&&R!==null&&A!==null){if(typeof A!="object"||Object.keys(R).length!==Object.keys(A).length)return!1;for(let F in R)if(!pt(R[F],A[F]))return!1;return!0}return R===A}function Zt(R,A){R.push(A)}function st(R,A,F){Zt(F,{command:"addSource",args:[R,A[R]]})}function lt(R,A,F){Zt(A,{command:"removeSource",args:[R]}),F[R]=!0}function Gt(R,A,F,W){lt(R,F,W),st(R,A,F)}function Nt(R,A,F){let W;for(W in R[F])if(Object.prototype.hasOwnProperty.call(R[F],W)&&W!=="data"&&!pt(R[F][W],A[F][W]))return!1;for(W in A[F])if(Object.prototype.hasOwnProperty.call(A[F],W)&&W!=="data"&&!pt(R[F][W],A[F][W]))return!1;return!0}function Jt(R,A,F,W,re,fe){R=R||{},A=A||{};for(let pe in R)Object.prototype.hasOwnProperty.call(R,pe)&&(pt(R[pe],A[pe])||F.push({command:fe,args:[W,pe,A[pe],re]}));for(let pe in A)Object.prototype.hasOwnProperty.call(A,pe)&&!Object.prototype.hasOwnProperty.call(R,pe)&&(pt(R[pe],A[pe])||F.push({command:fe,args:[W,pe,A[pe],re]}))}function sr(R){return R.id}function wr(R,A){return R[A.id]=A,R}class cr{constructor(A,F,W,re){this.message=(A?`${A}: `:"")+W,re&&(this.identifier=re),F!=null&&F.__line__&&(this.line=F.__line__)}}function $e(R,...A){for(let F of A)for(let W in F)R[W]=F[W];return R}class St extends Error{constructor(A,F){super(F),this.message=F,this.key=A}}class Qt{constructor(A,F=[]){this.parent=A,this.bindings={};for(let[W,re]of F)this.bindings[W]=re}concat(A){return new Qt(this,A)}get(A){if(this.bindings[A])return this.bindings[A];if(this.parent)return this.parent.get(A);throw new Error(`${A} not found in scope.`)}has(A){return!!this.bindings[A]||!!this.parent&&this.parent.has(A)}}let Vt={kind:"null"},_t={kind:"number"},It={kind:"string"},mt={kind:"boolean"},er={kind:"color"},lr={kind:"object"},Tr={kind:"value"},Lr={kind:"collator"},ti={kind:"formatted"},Br={kind:"padding"},Vr={kind:"resolvedImage"},dt={kind:"variableAnchorOffsetCollection"};function Ge(R,A){return{kind:"array",itemType:R,N:A}}function Je(R){if(R.kind==="array"){let A=Je(R.itemType);return typeof R.N=="number"?`array<${A}, ${R.N}>`:R.itemType.kind==="value"?"array":`array<${A}>`}return R.kind}let je=[Vt,_t,It,mt,er,ti,lr,Ge(Tr),Br,Vr,dt];function tt(R,A){if(A.kind==="error")return null;if(R.kind==="array"){if(A.kind==="array"&&(A.N===0&&A.itemType.kind==="value"||!tt(R.itemType,A.itemType))&&(typeof R.N!="number"||R.N===A.N))return null}else{if(R.kind===A.kind)return null;if(R.kind==="value"){for(let F of je)if(!tt(F,A))return null}}return`Expected ${Je(R)} but found ${Je(A)} instead.`}function xt(R,A){return A.some(F=>F.kind===R.kind)}function Ie(R,A){return A.some(F=>F==="null"?R===null:F==="array"?Array.isArray(R):F==="object"?R&&!Array.isArray(R)&&typeof R=="object":F===typeof R)}function xe(R,A){return R.kind==="array"&&A.kind==="array"?R.itemType.kind===A.itemType.kind&&typeof R.N=="number":R.kind===A.kind}let ke=.96422,vt=.82521,ir=4/29,ar=6/29,vr=3*ar*ar,ii=ar*ar*ar,pi=Math.PI/180,$r=180/Math.PI;function di(R){return(R%=360)<0&&(R+=360),R}function ji([R,A,F,W]){let re,fe,pe=wi((.2225045*(R=In(R))+.7168786*(A=In(A))+.0606169*(F=In(F)))/1);R===A&&A===F?re=fe=pe:(re=wi((.4360747*R+.3850649*A+.1430804*F)/ke),fe=wi((.0139322*R+.0971045*A+.7141733*F)/vt));let ze=116*pe-16;return[ze<0?0:ze,500*(re-pe),200*(pe-fe),W]}function In(R){return R<=.04045?R/12.92:Math.pow((R+.055)/1.055,2.4)}function wi(R){return R>ii?Math.pow(R,1/3):R/vr+ir}function On([R,A,F,W]){let re=(R+16)/116,fe=isNaN(A)?re:re+A/500,pe=isNaN(F)?re:re-F/200;return re=1*Fn(re),fe=ke*Fn(fe),pe=vt*Fn(pe),[qn(3.1338561*fe-1.6168667*re-.4906146*pe),qn(-.9787684*fe+1.9161415*re+.033454*pe),qn(.0719453*fe-.2289914*re+1.4052427*pe),W]}function qn(R){return(R=R<=.00304?12.92*R:1.055*Math.pow(R,1/2.4)-.055)<0?0:R>1?1:R}function Fn(R){return R>ar?R*R*R:vr*(R-ir)}function ra(R){return parseInt(R.padEnd(2,R),16)/255}function la(R,A){return Ut(A?R/100:R,0,1)}function Ut(R,A,F){return Math.min(Math.max(A,R),F)}function wt(R){return!R.some(Number.isNaN)}let rr={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]};class nr{constructor(A,F,W,re=1,fe=!0){this.r=A,this.g=F,this.b=W,this.a=re,fe||(this.r*=re,this.g*=re,this.b*=re,re||this.overwriteGetter("rgb",[A,F,W,re]))}static parse(A){if(A instanceof nr)return A;if(typeof A!="string")return;let F=function(W){if((W=W.toLowerCase().trim())==="transparent")return[0,0,0,0];let re=rr[W];if(re){let[pe,ze,Ke]=re;return[pe/255,ze/255,Ke/255,1]}if(W.startsWith("#")&&/^#(?:[0-9a-f]{3,4}|[0-9a-f]{6}|[0-9a-f]{8})$/.test(W)){let pe=W.length<6?1:2,ze=1;return[ra(W.slice(ze,ze+=pe)),ra(W.slice(ze,ze+=pe)),ra(W.slice(ze,ze+=pe)),ra(W.slice(ze,ze+pe)||"ff")]}if(W.startsWith("rgb")){let pe=W.match(/^rgba?\(\s*([\de.+-]+)(%)?(?:\s+|\s*(,)\s*)([\de.+-]+)(%)?(?:\s+|\s*(,)\s*)([\de.+-]+)(%)?(?:\s*([,\/])\s*([\de.+-]+)(%)?)?\s*\)$/);if(pe){let[ze,Ke,ct,Lt,$t,fr,mr,Pr,zr,ui,yi,vn]=pe,zi=[Lt||" ",mr||" ",ui].join("");if(zi===" "||zi===" /"||zi===",,"||zi===",,,"){let un=[ct,fr,zr].join(""),Tn=un==="%%%"?100:un===""?255:0;if(Tn){let pa=[Ut(+Ke/Tn,0,1),Ut(+$t/Tn,0,1),Ut(+Pr/Tn,0,1),yi?la(+yi,vn):1];if(wt(pa))return pa}}return}}let fe=W.match(/^hsla?\(\s*([\de.+-]+)(?:deg)?(?:\s+|\s*(,)\s*)([\de.+-]+)%(?:\s+|\s*(,)\s*)([\de.+-]+)%(?:\s*([,\/])\s*([\de.+-]+)(%)?)?\s*\)$/);if(fe){let[pe,ze,Ke,ct,Lt,$t,fr,mr,Pr]=fe,zr=[Ke||" ",Lt||" ",fr].join("");if(zr===" "||zr===" /"||zr===",,"||zr===",,,"){let ui=[+ze,Ut(+ct,0,100),Ut(+$t,0,100),mr?la(+mr,Pr):1];if(wt(ui))return function([yi,vn,zi,un]){function Tn(pa){let ro=(pa+yi/30)%12,Vo=vn*Math.min(zi,1-zi);return zi-Vo*Math.max(-1,Math.min(ro-3,9-ro,1))}return yi=di(yi),vn/=100,zi/=100,[Tn(0),Tn(8),Tn(4),un]}(ui)}}}(A);return F?new nr(...F,!1):void 0}get rgb(){let{r:A,g:F,b:W,a:re}=this,fe=re||1/0;return this.overwriteGetter("rgb",[A/fe,F/fe,W/fe,re])}get hcl(){return this.overwriteGetter("hcl",function(A){let[F,W,re,fe]=ji(A),pe=Math.sqrt(W*W+re*re);return[Math.round(1e4*pe)?di(Math.atan2(re,W)*$r):NaN,pe,F,fe]}(this.rgb))}get lab(){return this.overwriteGetter("lab",ji(this.rgb))}overwriteGetter(A,F){return Object.defineProperty(this,A,{value:F}),F}toString(){let[A,F,W,re]=this.rgb;return`rgba(${[A,F,W].map(fe=>Math.round(255*fe)).join(",")},${re})`}}nr.black=new nr(0,0,0,1),nr.white=new nr(1,1,1,1),nr.transparent=new nr(0,0,0,0),nr.red=new nr(1,0,0,1);class Er{constructor(A,F,W){this.sensitivity=A?F?"variant":"case":F?"accent":"base",this.locale=W,this.collator=new Intl.Collator(this.locale?this.locale:[],{sensitivity:this.sensitivity,usage:"search"})}compare(A,F){return this.collator.compare(A,F)}resolvedLocale(){return new Intl.Collator(this.locale?this.locale:[]).resolvedOptions().locale}}class Xr{constructor(A,F,W,re,fe){this.text=A,this.image=F,this.scale=W,this.fontStack=re,this.textColor=fe}}class ri{constructor(A){this.sections=A}static fromString(A){return new ri([new Xr(A,null,null,null,null)])}isEmpty(){return this.sections.length===0||!this.sections.some(A=>A.text.length!==0||A.image&&A.image.name.length!==0)}static factory(A){return A instanceof ri?A:ri.fromString(A)}toString(){return this.sections.length===0?"":this.sections.map(A=>A.text).join("")}}class Qr{constructor(A){this.values=A.slice()}static parse(A){if(A instanceof Qr)return A;if(typeof A=="number")return new Qr([A,A,A,A]);if(Array.isArray(A)&&!(A.length<1||A.length>4)){for(let F of A)if(typeof F!="number")return;switch(A.length){case 1:A=[A[0],A[0],A[0],A[0]];break;case 2:A=[A[0],A[1],A[0],A[1]];break;case 3:A=[A[0],A[1],A[2],A[1]]}return new Qr(A)}}toString(){return JSON.stringify(this.values)}}let Oi=new Set(["center","left","right","top","bottom","top-left","top-right","bottom-left","bottom-right"]);class $i{constructor(A){this.values=A.slice()}static parse(A){if(A instanceof $i)return A;if(Array.isArray(A)&&!(A.length<1)&&A.length%2==0){for(let F=0;F<A.length;F+=2){let W=A[F],re=A[F+1];if(typeof W!="string"||!Oi.has(W)||!Array.isArray(re)||re.length!==2||typeof re[0]!="number"||typeof re[1]!="number")return}return new $i(A)}}toString(){return JSON.stringify(this.values)}}class tn{constructor(A){this.name=A.name,this.available=A.available}toString(){return this.name}static fromString(A){return A?new tn({name:A,available:!1}):null}}function fn(R,A,F,W){return typeof R=="number"&&R>=0&&R<=255&&typeof A=="number"&&A>=0&&A<=255&&typeof F=="number"&&F>=0&&F<=255?W===void 0||typeof W=="number"&&W>=0&&W<=1?null:`Invalid rgba value [${[R,A,F,W].join(", ")}]: 'a' must be between 0 and 1.`:`Invalid rgba value [${(typeof W=="number"?[R,A,F,W]:[R,A,F]).join(", ")}]: 'r', 'g', and 'b' must be between 0 and 255.`}function yn(R){if(R===null||typeof R=="string"||typeof R=="boolean"||typeof R=="number"||R instanceof nr||R instanceof Er||R instanceof ri||R instanceof Qr||R instanceof $i||R instanceof tn)return!0;if(Array.isArray(R)){for(let A of R)if(!yn(A))return!1;return!0}if(typeof R=="object"){for(let A in R)if(!yn(R[A]))return!1;return!0}return!1}function Sn(R){if(R===null)return Vt;if(typeof R=="string")return It;if(typeof R=="boolean")return mt;if(typeof R=="number")return _t;if(R instanceof nr)return er;if(R instanceof Er)return Lr;if(R instanceof ri)return ti;if(R instanceof Qr)return Br;if(R instanceof $i)return dt;if(R instanceof tn)return Vr;if(Array.isArray(R)){let A=R.length,F;for(let W of R){let re=Sn(W);if(F){if(F===re)continue;F=Tr;break}F=re}return Ge(F||Tr,A)}return lr}function Ba(R){let A=typeof R;return R===null?"":A==="string"||A==="number"||A==="boolean"?String(R):R instanceof nr||R instanceof ri||R instanceof Qr||R instanceof $i||R instanceof tn?R.toString():JSON.stringify(R)}class ua{constructor(A,F){this.type=A,this.value=F}static parse(A,F){if(A.length!==2)return F.error(`'literal' expression requires exactly one argument, but found ${A.length-1} instead.`);if(!yn(A[1]))return F.error("invalid value");let W=A[1],re=Sn(W),fe=F.expectedType;return re.kind!=="array"||re.N!==0||!fe||fe.kind!=="array"||typeof fe.N=="number"&&fe.N!==0||(re=fe),new ua(re,W)}evaluate(){return this.value}eachChild(){}outputDefined(){return!0}}class ma{constructor(A){this.name="ExpressionEvaluationError",this.message=A}toJSON(){return this.message}}let Wa={string:It,number:_t,boolean:mt,object:lr};class Fa{constructor(A,F){this.type=A,this.args=F}static parse(A,F){if(A.length<2)return F.error("Expected at least one argument.");let W,re=1,fe=A[0];if(fe==="array"){let ze,Ke;if(A.length>2){let ct=A[1];if(typeof ct!="string"||!(ct in Wa)||ct==="object")return F.error('The item type argument of "array" must be one of string, number, boolean',1);ze=Wa[ct],re++}else ze=Tr;if(A.length>3){if(A[2]!==null&&(typeof A[2]!="number"||A[2]<0||A[2]!==Math.floor(A[2])))return F.error('The length argument to "array" must be a positive integer literal',2);Ke=A[2],re++}W=Ge(ze,Ke)}else{if(!Wa[fe])throw new Error(`Types doesn't contain name = ${fe}`);W=Wa[fe]}let pe=[];for(;re<A.length;re++){let ze=F.parse(A[re],re,Tr);if(!ze)return null;pe.push(ze)}return new Fa(W,pe)}evaluate(A){for(let F=0;F<this.args.length;F++){let W=this.args[F].evaluate(A);if(!tt(this.type,Sn(W)))return W;if(F===this.args.length-1)throw new ma(`Expected value to be of type ${Je(this.type)}, but found ${Je(Sn(W))} instead.`)}throw new Error}eachChild(A){this.args.forEach(A)}outputDefined(){return this.args.every(A=>A.outputDefined())}}let Wo={"to-boolean":mt,"to-color":er,"to-number":_t,"to-string":It};class da{constructor(A,F){this.type=A,this.args=F}static parse(A,F){if(A.length<2)return F.error("Expected at least one argument.");let W=A[0];if(!Wo[W])throw new Error(`Can't parse ${W} as it is not part of the known types`);if((W==="to-boolean"||W==="to-string")&&A.length!==2)return F.error("Expected one argument.");let re=Wo[W],fe=[];for(let pe=1;pe<A.length;pe++){let ze=F.parse(A[pe],pe,Tr);if(!ze)return null;fe.push(ze)}return new da(re,fe)}evaluate(A){switch(this.type.kind){case"boolean":return!!this.args[0].evaluate(A);case"color":{let F,W;for(let re of this.args){if(F=re.evaluate(A),W=null,F instanceof nr)return F;if(typeof F=="string"){let fe=A.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.`:fn(F[0],F[1],F[2],F[3]),!W))return new nr(F[0]/255,F[1]/255,F[2]/255,F[3])}throw new ma(W||`Could not parse color from value '${typeof F=="string"?F:JSON.stringify(F)}'`)}case"padding":{let F;for(let W of this.args){F=W.evaluate(A);let re=Qr.parse(F);if(re)return re}throw new ma(`Could not parse padding from value '${typeof F=="string"?F:JSON.stringify(F)}'`)}case"variableAnchorOffsetCollection":{let F;for(let W of this.args){F=W.evaluate(A);let re=$i.parse(F);if(re)return re}throw new ma(`Could not parse variableAnchorOffsetCollection from value '${typeof F=="string"?F:JSON.stringify(F)}'`)}case"number":{let F=null;for(let W of this.args){if(F=W.evaluate(A),F===null)return 0;let re=Number(F);if(!isNaN(re))return re}throw new ma(`Could not convert ${JSON.stringify(F)} to number.`)}case"formatted":return ri.fromString(Ba(this.args[0].evaluate(A)));case"resolvedImage":return tn.fromString(Ba(this.args[0].evaluate(A)));default:return Ba(this.args[0].evaluate(A))}}eachChild(A){this.args.forEach(A)}outputDefined(){return this.args.every(A=>A.outputDefined())}}let Wn=["Unknown","Point","LineString","Polygon"];class Ha{constructor(){this.globals=null,this.feature=null,this.featureState=null,this.formattedSection=null,this._parseColorCache={},this.availableImages=null,this.canonical=null}id(){return this.feature&&"id"in this.feature?this.feature.id:null}geometryType(){return this.feature?typeof this.feature.type=="number"?Wn[this.feature.type]:this.feature.type:null}geometry(){return this.feature&&"geometry"in this.feature?this.feature.geometry:null}canonicalID(){return this.canonical}properties(){return this.feature&&this.feature.properties||{}}parseColor(A){let F=this._parseColorCache[A];return F||(F=this._parseColorCache[A]=nr.parse(A)),F}}class vo{constructor(A,F,W=[],re,fe=new Qt,pe=[]){this.registry=A,this.path=W,this.key=W.map(ze=>`[${ze}]`).join(""),this.scope=fe,this.errors=pe,this.expectedType=re,this._isConstant=F}parse(A,F,W,re,fe={}){return F?this.concat(F,W,re)._parse(A,fe):this._parse(A,fe)}_parse(A,F){function W(re,fe,pe){return pe==="assert"?new Fa(fe,[re]):pe==="coerce"?new da(fe,[re]):re}if(A!==null&&typeof A!="string"&&typeof A!="boolean"&&typeof A!="number"||(A=["literal",A]),Array.isArray(A)){if(A.length===0)return this.error('Expected an array with at least one element. If you wanted a literal array, use ["literal", []].');let re=A[0];if(typeof re!="string")return this.error(`Expression name must be a string, but found ${typeof re} instead. If you wanted a literal array, use ["literal", [...]].`,0),null;let fe=this.registry[re];if(fe){let pe=fe.parse(A,this);if(!pe)return null;if(this.expectedType){let ze=this.expectedType,Ke=pe.type;if(ze.kind!=="string"&&ze.kind!=="number"&&ze.kind!=="boolean"&&ze.kind!=="object"&&ze.kind!=="array"||Ke.kind!=="value")if(ze.kind!=="color"&&ze.kind!=="formatted"&&ze.kind!=="resolvedImage"||Ke.kind!=="value"&&Ke.kind!=="string")if(ze.kind!=="padding"||Ke.kind!=="value"&&Ke.kind!=="number"&&Ke.kind!=="array")if(ze.kind!=="variableAnchorOffsetCollection"||Ke.kind!=="value"&&Ke.kind!=="array"){if(this.checkSubtype(ze,Ke))return null}else pe=W(pe,ze,F.typeAnnotation||"coerce");else pe=W(pe,ze,F.typeAnnotation||"coerce");else pe=W(pe,ze,F.typeAnnotation||"coerce");else pe=W(pe,ze,F.typeAnnotation||"assert")}if(!(pe instanceof ua)&&pe.type.kind!=="resolvedImage"&&this._isConstant(pe)){let ze=new Ha;try{pe=new ua(pe.type,pe.evaluate(ze))}catch(Ke){return this.error(Ke.message),null}}return pe}return this.error(`Unknown expression "${re}". If you wanted a literal array, use ["literal", [...]].`,0)}return this.error(A===void 0?"'undefined' value invalid. Use null instead.":typeof A=="object"?'Bare objects invalid. Use ["literal", {...}] instead.':`Expected an array, but found ${typeof A} instead.`)}concat(A,F,W){let re=typeof A=="number"?this.path.concat(A):this.path,fe=W?this.scope.concat(W):this.scope;return new vo(this.registry,this._isConstant,re,F||null,fe,this.errors)}error(A,...F){let W=`${this.key}${F.map(re=>`[${re}]`).join("")}`;this.errors.push(new St(W,A))}checkSubtype(A,F){let W=tt(A,F);return W&&this.error(W),W}}class jn{constructor(A,F){this.type=F.type,this.bindings=[].concat(A),this.result=F}evaluate(A){return this.result.evaluate(A)}eachChild(A){for(let F of this.bindings)A(F[1]);A(this.result)}static parse(A,F){if(A.length<4)return F.error(`Expected at least 3 arguments, but found ${A.length-1} instead.`);let W=[];for(let fe=1;fe<A.length-1;fe+=2){let pe=A[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(A[fe+1],fe+1);if(!ze)return null;W.push([pe,ze])}let re=F.parse(A[A.length-1],A.length-1,F.expectedType,W);return re?new jn(W,re):null}outputDefined(){return this.result.outputDefined()}}class Mt{constructor(A,F){this.type=F.type,this.name=A,this.boundExpression=F}static parse(A,F){if(A.length!==2||typeof A[1]!="string")return F.error("'var' expression requires exactly one string literal argument.");let W=A[1];return F.scope.has(W)?new Mt(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(A){return this.boundExpression.evaluate(A)}eachChild(){}outputDefined(){return!1}}class kr{constructor(A,F,W){this.type=A,this.index=F,this.input=W}static parse(A,F){if(A.length!==3)return F.error(`Expected 2 arguments, but found ${A.length-1} instead.`);let W=F.parse(A[1],1,_t),re=F.parse(A[2],2,Ge(F.expectedType||Tr));return W&&re?new kr(re.type.itemType,W,re):null}evaluate(A){let F=this.index.evaluate(A),W=this.input.evaluate(A);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(A){A(this.index),A(this.input)}outputDefined(){return!1}}class Jr{constructor(A,F){this.type=mt,this.needle=A,this.haystack=F}static parse(A,F){if(A.length!==3)return F.error(`Expected 2 arguments, but found ${A.length-1} instead.`);let W=F.parse(A[1],1,Tr),re=F.parse(A[2],2,Tr);return W&&re?xt(W.type,[mt,It,_t,Vt,Tr])?new Jr(W,re):F.error(`Expected first argument to be of type boolean, string, number or null, but found ${Je(W.type)} instead`):null}evaluate(A){let F=this.needle.evaluate(A),W=this.haystack.evaluate(A);if(!W)return!1;if(!Ie(F,["boolean","string","number","null"]))throw new ma(`Expected first argument to be of type boolean, string, number or null, but found ${Je(Sn(F))} instead.`);if(!Ie(W,["string","array"]))throw new ma(`Expected second argument to be of type array or string, but found ${Je(Sn(W))} instead.`);return W.indexOf(F)>=0}eachChild(A){A(this.needle),A(this.haystack)}outputDefined(){return!0}}class vi{constructor(A,F,W){this.type=_t,this.needle=A,this.haystack=F,this.fromIndex=W}static parse(A,F){if(A.length<=2||A.length>=5)return F.error(`Expected 3 or 4 arguments, but found ${A.length-1} instead.`);let W=F.parse(A[1],1,Tr),re=F.parse(A[2],2,Tr);if(!W||!re)return null;if(!xt(W.type,[mt,It,_t,Vt,Tr]))return F.error(`Expected first argument to be of type boolean, string, number or null, but found ${Je(W.type)} instead`);if(A.length===4){let fe=F.parse(A[3],3,_t);return fe?new vi(W,re,fe):null}return new vi(W,re)}evaluate(A){let F=this.needle.evaluate(A),W=this.haystack.evaluate(A);if(!Ie(F,["boolean","string","number","null"]))throw new ma(`Expected first argument to be of type boolean, string, number or null, but found ${Je(Sn(F))} instead.`);let re;if(this.fromIndex&&(re=this.fromIndex.evaluate(A)),Ie(W,["string"])){let fe=W.indexOf(F,re);return fe===-1?-1:[...W.slice(0,fe)].length}if(Ie(W,["array"]))return W.indexOf(F,re);throw new ma(`Expected second argument to be of type array or string, but found ${Je(Sn(W))} instead.`)}eachChild(A){A(this.needle),A(this.haystack),this.fromIndex&&A(this.fromIndex)}outputDefined(){return!1}}class hn{constructor(A,F,W,re,fe,pe){this.inputType=A,this.type=F,this.input=W,this.cases=re,this.outputs=fe,this.otherwise=pe}static parse(A,F){if(A.length<5)return F.error(`Expected at least 4 arguments, but found only ${A.length-1}.`);if(A.length%2!=1)return F.error("Expected an even number of arguments.");let W,re;F.expectedType&&F.expectedType.kind!=="value"&&(re=F.expectedType);let fe={},pe=[];for(let ct=2;ct<A.length-1;ct+=2){let Lt=A[ct],$t=A[ct+1];Array.isArray(Lt)||(Lt=[Lt]);let fr=F.concat(ct);if(Lt.length===0)return fr.error("Expected at least one branch label.");for(let Pr of Lt){if(typeof Pr!="number"&&typeof Pr!="string")return fr.error("Branch labels must be numbers or strings.");if(typeof Pr=="number"&&Math.abs(Pr)>Number.MAX_SAFE_INTEGER)return fr.error(`Branch labels must be integers no larger than ${Number.MAX_SAFE_INTEGER}.`);if(typeof Pr=="number"&&Math.floor(Pr)!==Pr)return fr.error("Numeric branch labels must be integer values.");if(W){if(fr.checkSubtype(W,Sn(Pr)))return null}else W=Sn(Pr);if(fe[String(Pr)]!==void 0)return fr.error("Branch labels must be unique.");fe[String(Pr)]=pe.length}let mr=F.parse($t,ct,re);if(!mr)return null;re=re||mr.type,pe.push(mr)}let ze=F.parse(A[1],1,Tr);if(!ze)return null;let Ke=F.parse(A[A.length-1],A.length-1,re);return Ke?ze.type.kind!=="value"&&F.concat(1).checkSubtype(W,ze.type)?null:new hn(W,re,ze,fe,pe,Ke):null}evaluate(A){let F=this.input.evaluate(A);return(Sn(F)===this.inputType&&this.outputs[this.cases[F]]||this.otherwise).evaluate(A)}eachChild(A){A(this.input),this.outputs.forEach(A),A(this.otherwise)}outputDefined(){return this.outputs.every(A=>A.outputDefined())&&this.otherwise.outputDefined()}}class An{constructor(A,F,W){this.type=A,this.branches=F,this.otherwise=W}static parse(A,F){if(A.length<4)return F.error(`Expected at least 3 arguments, but found only ${A.length-1}.`);if(A.length%2!=0)return F.error("Expected an odd number of arguments.");let W;F.expectedType&&F.expectedType.kind!=="value"&&(W=F.expectedType);let re=[];for(let pe=1;pe<A.length-1;pe+=2){let ze=F.parse(A[pe],pe,mt);if(!ze)return null;let Ke=F.parse(A[pe+1],pe+1,W);if(!Ke)return null;re.push([ze,Ke]),W=W||Ke.type}let fe=F.parse(A[A.length-1],A.length-1,W);if(!fe)return null;if(!W)throw new Error("Can't infer output type");return new An(W,re,fe)}evaluate(A){for(let[F,W]of this.branches)if(F.evaluate(A))return W.evaluate(A);return this.otherwise.evaluate(A)}eachChild(A){for(let[F,W]of this.branches)A(F),A(W);A(this.otherwise)}outputDefined(){return this.branches.every(([A,F])=>F.outputDefined())&&this.otherwise.outputDefined()}}class Mn{constructor(A,F,W,re){this.type=A,this.input=F,this.beginIndex=W,this.endIndex=re}static parse(A,F){if(A.length<=2||A.length>=5)return F.error(`Expected 3 or 4 arguments, but found ${A.length-1} instead.`);let W=F.parse(A[1],1,Tr),re=F.parse(A[2],2,_t);if(!W||!re)return null;if(!xt(W.type,[Ge(Tr),It,Tr]))return F.error(`Expected first argument to be of type array or string, but found ${Je(W.type)} instead`);if(A.length===4){let fe=F.parse(A[3],3,_t);return fe?new Mn(W.type,W,re,fe):null}return new Mn(W.type,W,re)}evaluate(A){let F=this.input.evaluate(A),W=this.beginIndex.evaluate(A),re;if(this.endIndex&&(re=this.endIndex.evaluate(A)),Ie(F,["string"]))return[...F].slice(W,re).join("");if(Ie(F,["array"]))return F.slice(W,re);throw new ma(`Expected first argument to be of type array or string, but found ${Je(Sn(F))} instead.`)}eachChild(A){A(this.input),A(this.beginIndex),this.endIndex&&A(this.endIndex)}outputDefined(){return!1}}function Li(R,A){let F=R.length-1,W,re,fe=0,pe=F,ze=0;for(;fe<=pe;)if(ze=Math.floor((fe+pe)/2),W=R[ze],re=R[ze+1],W<=A){if(ze===F||A<re)return ze;fe=ze+1}else{if(!(W>A))throw new ma("Input is not a number.");pe=ze-1}return 0}class _n{constructor(A,F,W){this.type=A,this.input=F,this.labels=[],this.outputs=[];for(let[re,fe]of W)this.labels.push(re),this.outputs.push(fe)}static parse(A,F){if(A.length-1<4)return F.error(`Expected at least 4 arguments, but found only ${A.length-1}.`);if((A.length-1)%2!=0)return F.error("Expected an even number of arguments.");let W=F.parse(A[1],1,_t);if(!W)return null;let re=[],fe=null;F.expectedType&&F.expectedType.kind!=="value"&&(fe=F.expectedType);for(let pe=1;pe<A.length;pe+=2){let ze=pe===1?-1/0:A[pe],Ke=A[pe+1],ct=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.',ct);if(re.length&&re[re.length-1][0]>=ze)return F.error('Input/output pairs for "step" expressions must be arranged with input values in strictly ascending order.',ct);let $t=F.parse(Ke,Lt,fe);if(!$t)return null;fe=fe||$t.type,re.push([ze,$t])}return new _n(fe,W,re)}evaluate(A){let F=this.labels,W=this.outputs;if(F.length===1)return W[0].evaluate(A);let re=this.input.evaluate(A);if(re<=F[0])return W[0].evaluate(A);let fe=F.length;return re>=F[fe-1]?W[fe-1].evaluate(A):W[Li(F,re)].evaluate(A)}eachChild(A){A(this.input);for(let F of this.outputs)A(F)}outputDefined(){return this.outputs.every(A=>A.outputDefined())}}function ya(R){return R&&R.__esModule&&Object.prototype.hasOwnProperty.call(R,"default")?R.default:R}var Jn=Ma;function Ma(R,A,F,W){this.cx=3*R,this.bx=3*(F-R)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*A,this.by=3*(W-A)-this.cy,this.ay=1-this.cy-this.by,this.p1x=R,this.p1y=A,this.p2x=F,this.p2y=W}Ma.prototype={sampleCurveX:function(R){return((this.ax*R+this.bx)*R+this.cx)*R},sampleCurveY:function(R){return((this.ay*R+this.by)*R+this.cy)*R},sampleCurveDerivativeX:function(R){return(3*this.ax*R+2*this.bx)*R+this.cx},solveCurveX:function(R,A){if(A===void 0&&(A=1e-6),R<0)return 0;if(R>1)return 1;for(var F=R,W=0;W<8;W++){var re=this.sampleCurveX(F)-R;if(Math.abs(re)<A)return F;var fe=this.sampleCurveDerivativeX(F);if(Math.abs(fe)<1e-6)break;F-=re/fe}var pe=0,ze=1;for(F=R,W=0;W<20&&(re=this.sampleCurveX(F),!(Math.abs(re-R)<A));W++)R>re?pe=F:ze=F,F=.5*(ze-pe)+pe;return F},solve:function(R,A){return this.sampleCurveY(this.solveCurveX(R,A))}};var _o=ya(Jn);function No(R,A,F){return R+F*(A-R)}function po(R,A,F){return R.map((W,re)=>No(W,A[re],F))}let Lo={number:No,color:function(R,A,F,W="rgb"){switch(W){case"rgb":{let[re,fe,pe,ze]=po(R.rgb,A.rgb,F);return new nr(re,fe,pe,ze,!1)}case"hcl":{let[re,fe,pe,ze]=R.hcl,[Ke,ct,Lt,$t]=A.hcl,fr,mr;if(isNaN(re)||isNaN(Ke))isNaN(re)?isNaN(Ke)?fr=NaN:(fr=Ke,pe!==1&&pe!==0||(mr=ct)):(fr=re,Lt!==1&&Lt!==0||(mr=fe));else{let vn=Ke-re;Ke>re&&vn>180?vn-=360:Ke<re&&re-Ke>180&&(vn+=360),fr=re+F*vn}let[Pr,zr,ui,yi]=function([vn,zi,un,Tn]){return vn=isNaN(vn)?0:vn*pi,On([un,Math.cos(vn)*zi,Math.sin(vn)*zi,Tn])}([fr,mr!=null?mr:No(fe,ct,F),No(pe,Lt,F),No(ze,$t,F)]);return new nr(Pr,zr,ui,yi,!1)}case"lab":{let[re,fe,pe,ze]=On(po(R.lab,A.lab,F));return new nr(re,fe,pe,ze,!1)}}},array:po,padding:function(R,A,F){return new Qr(po(R.values,A.values,F))},variableAnchorOffsetCollection:function(R,A,F){let W=R.values,re=A.values;if(W.length!==re.length)throw new ma(`Cannot interpolate values of different length. from: ${R.toString()}, to: ${A.toString()}`);let fe=[];for(let pe=0;pe<W.length;pe+=2){if(W[pe]!==re[pe])throw new ma(`Cannot interpolate values containing mismatched anchors. from[${pe}]: ${W[pe]}, to[${pe}]: ${re[pe]}`);fe.push(W[pe]);let[ze,Ke]=W[pe+1],[ct,Lt]=re[pe+1];fe.push([No(ze,ct,F),No(Ke,Lt,F)])}return new $i(fe)}};class ko{constructor(A,F,W,re,fe){this.type=A,this.operator=F,this.interpolation=W,this.input=re,this.labels=[],this.outputs=[];for(let[pe,ze]of fe)this.labels.push(pe),this.outputs.push(ze)}static interpolationFactor(A,F,W,re){let fe=0;if(A.name==="exponential")fe=Ds(F,A.base,W,re);else if(A.name==="linear")fe=Ds(F,1,W,re);else if(A.name==="cubic-bezier"){let pe=A.controlPoints;fe=new _o(pe[0],pe[1],pe[2],pe[3]).solve(Ds(F,1,W,re))}return fe}static parse(A,F){let[W,re,fe,...pe]=A;if(!Array.isArray(re)||re.length===0)return F.error("Expected an interpolation type expression.",1);if(re[0]==="linear")re={name:"linear"};else if(re[0]==="exponential"){let ct=re[1];if(typeof ct!="number")return F.error("Exponential interpolation requires a numeric base.",1,1);re={name:"exponential",base:ct}}else{if(re[0]!=="cubic-bezier")return F.error(`Unknown interpolation type ${String(re[0])}`,1,0);{let ct=re.slice(1);if(ct.length!==4||ct.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);re={name:"cubic-bezier",controlPoints:ct}}}if(A.length-1<4)return F.error(`Expected at least 4 arguments, but found only ${A.length-1}.`);if((A.length-1)%2!=0)return F.error("Expected an even number of arguments.");if(fe=F.parse(fe,2,_t),!fe)return null;let ze=[],Ke=null;W==="interpolate-hcl"||W==="interpolate-lab"?Ke=er:F.expectedType&&F.expectedType.kind!=="value"&&(Ke=F.expectedType);for(let ct=0;ct<pe.length;ct+=2){let Lt=pe[ct],$t=pe[ct+1],fr=ct+3,mr=ct+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 Pr=F.parse($t,mr,Ke);if(!Pr)return null;Ke=Ke||Pr.type,ze.push([Lt,Pr])}return xe(Ke,_t)||xe(Ke,er)||xe(Ke,Br)||xe(Ke,dt)||xe(Ke,Ge(_t))?new ko(Ke,W,re,fe,ze):F.error(`Type ${Je(Ke)} is not interpolatable.`)}evaluate(A){let F=this.labels,W=this.outputs;if(F.length===1)return W[0].evaluate(A);let re=this.input.evaluate(A);if(re<=F[0])return W[0].evaluate(A);let fe=F.length;if(re>=F[fe-1])return W[fe-1].evaluate(A);let pe=Li(F,re),ze=ko.interpolationFactor(this.interpolation,re,F[pe],F[pe+1]),Ke=W[pe].evaluate(A),ct=W[pe+1].evaluate(A);switch(this.operator){case"interpolate":return Lo[this.type.kind](Ke,ct,ze);case"interpolate-hcl":return Lo.color(Ke,ct,ze,"hcl");case"interpolate-lab":return Lo.color(Ke,ct,ze,"lab")}}eachChild(A){A(this.input);for(let F of this.outputs)A(F)}outputDefined(){return this.outputs.every(A=>A.outputDefined())}}function Ds(R,A,F,W){let re=W-F,fe=R-F;return re===0?0:A===1?fe/re:(Math.pow(A,fe)-1)/(Math.pow(A,re)-1)}class Fs{constructor(A,F){this.type=A,this.args=F}static parse(A,F){if(A.length<2)return F.error("Expectected at least one argument.");let W=null,re=F.expectedType;re&&re.kind!=="value"&&(W=re);let fe=[];for(let ze of A.slice(1)){let Ke=F.parse(ze,1+fe.length,W,void 0,{typeAnnotation:"omit"});if(!Ke)return null;W=W||Ke.type,fe.push(Ke)}if(!W)throw new Error("No output type");let pe=re&&fe.some(ze=>tt(re,ze.type));return new Fs(pe?Tr:W,fe)}evaluate(A){let F,W=null,re=0;for(let fe of this.args)if(re++,W=fe.evaluate(A),W&&W instanceof tn&&!W.available&&(F||(F=W.name),W=null,re===this.args.length&&(W=F)),W!==null)break;return W}eachChild(A){this.args.forEach(A)}outputDefined(){return this.args.every(A=>A.outputDefined())}}function ll(R,A){return R==="=="||R==="!="?A.kind==="boolean"||A.kind==="string"||A.kind==="number"||A.kind==="null"||A.kind==="value":A.kind==="string"||A.kind==="number"||A.kind==="value"}function ul(R,A,F,W){return W.compare(A,F)===0}function zl(R,A,F){let W=R!=="=="&&R!=="!=";return class aje{constructor(fe,pe,ze){this.type=mt,this.lhs=fe,this.rhs=pe,this.collator=ze,this.hasUntypedArgument=fe.type.kind==="value"||pe.type.kind==="value"}static parse(fe,pe){if(fe.length!==3&&fe.length!==4)return pe.error("Expected two or three arguments.");let ze=fe[0],Ke=pe.parse(fe[1],1,Tr);if(!Ke)return null;if(!ll(ze,Ke.type))return pe.concat(1).error(`"${ze}" comparisons are not supported for type '${Je(Ke.type)}'.`);let ct=pe.parse(fe[2],2,Tr);if(!ct)return null;if(!ll(ze,ct.type))return pe.concat(2).error(`"${ze}" comparisons are not supported for type '${Je(ct.type)}'.`);if(Ke.type.kind!==ct.type.kind&&Ke.type.kind!=="value"&&ct.type.kind!=="value")return pe.error(`Cannot compare types '${Je(Ke.type)}' and '${Je(ct.type)}'.`);W&&(Ke.type.kind==="value"&&ct.type.kind!=="value"?Ke=new Fa(ct.type,[Ke]):Ke.type.kind!=="value"&&ct.type.kind==="value"&&(ct=new Fa(Ke.type,[ct])));let Lt=null;if(fe.length===4){if(Ke.type.kind!=="string"&&ct.type.kind!=="string"&&Ke.type.kind!=="value"&&ct.type.kind!=="value")return pe.error("Cannot use collator to compare non-string types.");if(Lt=pe.parse(fe[3],3,Lr),!Lt)return null}return new aje(Ke,ct,Lt)}evaluate(fe){let pe=this.lhs.evaluate(fe),ze=this.rhs.evaluate(fe);if(W&&this.hasUntypedArgument){let Ke=Sn(pe),ct=Sn(ze);if(Ke.kind!==ct.kind||Ke.kind!=="string"&&Ke.kind!=="number")throw new ma(`Expected arguments for "${R}" to be (string, string) or (number, number), but found (${Ke.kind}, ${ct.kind}) instead.`)}if(this.collator&&!W&&this.hasUntypedArgument){let Ke=Sn(pe),ct=Sn(ze);if(Ke.kind!=="string"||ct.kind!=="string")return A(fe,pe,ze)}return this.collator?F(fe,pe,ze,this.collator.evaluate(fe)):A(fe,pe,ze)}eachChild(fe){fe(this.lhs),fe(this.rhs),this.collator&&fe(this.collator)}outputDefined(){return!0}}}let us=zl("==",function(R,A,F){return A===F},ul),il=zl("!=",function(R,A,F){return A!==F},function(R,A,F,W){return!ul(0,A,F,W)}),As=zl("<",function(R,A,F){return A<F},function(R,A,F,W){return W.compare(A,F)<0}),cl=zl(">",function(R,A,F){return A>F},function(R,A,F,W){return W.compare(A,F)>0}),Ks=zl("<=",function(R,A,F){return A<=F},function(R,A,F,W){return W.compare(A,F)<=0}),zs=zl(">=",function(R,A,F){return A>=F},function(R,A,F,W){return W.compare(A,F)>=0});class Io{constructor(A,F,W){this.type=Lr,this.locale=W,this.caseSensitive=A,this.diacriticSensitive=F}static parse(A,F){if(A.length!==2)return F.error("Expected one argument.");let W=A[1];if(typeof W!="object"||Array.isArray(W))return F.error("Collator options argument must be an object.");let re=F.parse(W["case-sensitive"]!==void 0&&W["case-sensitive"],1,mt);if(!re)return null;let fe=F.parse(W["diacritic-sensitive"]!==void 0&&W["diacritic-sensitive"],1,mt);if(!fe)return null;let pe=null;return W.locale&&(pe=F.parse(W.locale,1,It),!pe)?null:new Io(re,fe,pe)}evaluate(A){return new Er(this.caseSensitive.evaluate(A),this.diacriticSensitive.evaluate(A),this.locale?this.locale.evaluate(A):null)}eachChild(A){A(this.caseSensitive),A(this.diacriticSensitive),this.locale&&A(this.locale)}outputDefined(){return!1}}class ls{constructor(A,F,W,re,fe){this.type=It,this.number=A,this.locale=F,this.currency=W,this.minFractionDigits=re,this.maxFractionDigits=fe}static parse(A,F){if(A.length!==3)return F.error("Expected two arguments.");let W=F.parse(A[1],1,_t);if(!W)return null;let re=A[2];if(typeof re!="object"||Array.isArray(re))return F.error("NumberFormat options argument must be an object.");let fe=null;if(re.locale&&(fe=F.parse(re.locale,1,It),!fe))return null;let pe=null;if(re.currency&&(pe=F.parse(re.currency,1,It),!pe))return null;let ze=null;if(re["min-fraction-digits"]&&(ze=F.parse(re["min-fraction-digits"],1,_t),!ze))return null;let Ke=null;return re["max-fraction-digits"]&&(Ke=F.parse(re["max-fraction-digits"],1,_t),!Ke)?null:new ls(W,fe,pe,ze,Ke)}evaluate(A){return new Intl.NumberFormat(this.locale?this.locale.evaluate(A):[],{style:this.currency?"currency":"decimal",currency:this.currency?this.currency.evaluate(A):void 0,minimumFractionDigits:this.minFractionDigits?this.minFractionDigits.evaluate(A):void 0,maximumFractionDigits:this.maxFractionDigits?this.maxFractionDigits.evaluate(A):void 0}).format(this.number.evaluate(A))}eachChild(A){A(this.number),this.locale&&A(this.locale),this.currency&&A(this.currency),this.minFractionDigits&&A(this.minFractionDigits),this.maxFractionDigits&&A(this.maxFractionDigits)}outputDefined(){return!1}}class Zl{constructor(A){this.type=ti,this.sections=A}static parse(A,F){if(A.length<2)return F.error("Expected at least one argument.");let W=A[1];if(!Array.isArray(W)&&typeof W=="object")return F.error("First argument must be an image or text section.");let re=[],fe=!1;for(let pe=1;pe<=A.length-1;++pe){let ze=A[pe];if(fe&&typeof ze=="object"&&!Array.isArray(ze)){fe=!1;let Ke=null;if(ze["font-scale"]&&(Ke=F.parse(ze["font-scale"],1,_t),!Ke))return null;let ct=null;if(ze["text-font"]&&(ct=F.parse(ze["text-font"],1,Ge(It)),!ct))return null;let Lt=null;if(ze["text-color"]&&(Lt=F.parse(ze["text-color"],1,er),!Lt))return null;let $t=re[re.length-1];$t.scale=Ke,$t.font=ct,$t.textColor=Lt}else{let Ke=F.parse(A[pe],1,Tr);if(!Ke)return null;let ct=Ke.type.kind;if(ct!=="string"&&ct!=="value"&&ct!=="null"&&ct!=="resolvedImage")return F.error("Formatted text type must be 'string', 'value', 'image' or 'null'.");fe=!0,re.push({content:Ke,scale:null,font:null,textColor:null})}}return new Zl(re)}evaluate(A){return new ri(this.sections.map(F=>{let W=F.content.evaluate(A);return Sn(W)===Vr?new Xr("",W,null,null,null):new Xr(Ba(W),null,F.scale?F.scale.evaluate(A):null,F.font?F.font.evaluate(A).join(","):null,F.textColor?F.textColor.evaluate(A):null)}))}eachChild(A){for(let F of this.sections)A(F.content),F.scale&&A(F.scale),F.font&&A(F.font),F.textColor&&A(F.textColor)}outputDefined(){return!1}}class Su{constructor(A){this.type=Vr,this.input=A}static parse(A,F){if(A.length!==2)return F.error("Expected two arguments.");let W=F.parse(A[1],1,It);return W?new Su(W):F.error("No image name provided.")}evaluate(A){let F=this.input.evaluate(A),W=tn.fromString(F);return W&&A.availableImages&&(W.available=A.availableImages.indexOf(F)>-1),W}eachChild(A){A(this.input)}outputDefined(){return!1}}class nc{constructor(A){this.type=_t,this.input=A}static parse(A,F){if(A.length!==2)return F.error(`Expected 1 argument, but found ${A.length-1} instead.`);let W=F.parse(A[1],1);return W?W.type.kind!=="array"&&W.type.kind!=="string"&&W.type.kind!=="value"?F.error(`Expected argument of type string or array, but found ${Je(W.type)} instead.`):new nc(W):null}evaluate(A){let F=this.input.evaluate(A);if(typeof F=="string")return[...F].length;if(Array.isArray(F))return F.length;throw new ma(`Expected value to be of type string or array, but found ${Je(Sn(F))} instead.`)}eachChild(A){A(this.input)}outputDefined(){return!1}}let bs=8192;function Rn(R,A){let F=(180+R[0])/360,W=(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+R[1]*Math.PI/360)))/360,re=Math.pow(2,A.z);return[Math.round(F*re*bs),Math.round(W*re*bs)]}function _a(R,A){let F=Math.pow(2,A.z);return[(re=(R[0]/bs+A.x)/F,360*re-180),(W=(R[1]/bs+A.y)/F,360/Math.PI*Math.atan(Math.exp((180-360*W)*Math.PI/180))-90)];var W,re}function Vu(R,A){R[0]=Math.min(R[0],A[0]),R[1]=Math.min(R[1],A[1]),R[2]=Math.max(R[2],A[0]),R[3]=Math.max(R[3],A[1])}function Ol(R,A){return!(R[0]<=A[0]||R[2]>=A[2]||R[1]<=A[1]||R[3]>=A[3])}function xo(R,A,F){let W=R[0]-A[0],re=R[1]-A[1],fe=R[0]-F[0],pe=R[1]-F[1];return W*pe-fe*re==0&&W*fe<=0&&re*pe<=0}function Yl(R,A,F,W){return(re=[W[0]-F[0],W[1]-F[1]])[0]*(fe=[A[0]-R[0],A[1]-R[1]])[1]-re[1]*fe[0]!=0&&!(!qo(R,A,F,W)||!qo(F,W,R,A));var re,fe}function Ns(R,A,F){for(let W of F)for(let re=0;re<W.length-1;++re)if(Yl(R,A,W[re],W[re+1]))return!0;return!1}function Hl(R,A,F=!1){let W=!1;for(let ze of A)for(let Ke=0;Ke<ze.length-1;Ke++){if(xo(R,ze[Ke],ze[Ke+1]))return F;(fe=ze[Ke])[1]>(re=R)[1]!=(pe=ze[Ke+1])[1]>re[1]&&re[0]<(pe[0]-fe[0])*(re[1]-fe[1])/(pe[1]-fe[1])+fe[0]&&(W=!W)}var re,fe,pe;return W}function ac(R,A){for(let F of A)if(Hl(R,F))return!0;return!1}function aa(R,A){for(let F of R)if(!Hl(F,A))return!1;for(let F=0;F<R.length-1;++F)if(Ns(R[F],R[F+1],A))return!1;return!0}function Oo(R,A){for(let F of A)if(aa(R,F))return!0;return!1}function qo(R,A,F,W){let re=W[0]-F[0],fe=W[1]-F[1],pe=(R[0]-F[0])*fe-re*(R[1]-F[1]),ze=(A[0]-F[0])*fe-re*(A[1]-F[1]);return pe>0&&ze<0||pe<0&&ze>0}function ql(R,A,F){let W=[];for(let re=0;re<R.length;re++){let fe=[];for(let pe=0;pe<R[re].length;pe++){let ze=Rn(R[re][pe],F);Vu(A,ze),fe.push(ze)}W.push(fe)}return W}function Pc(R,A,F){let W=[];for(let re=0;re<R.length;re++){let fe=ql(R[re],A,F);W.push(fe)}return W}function Do(R,A,F,W){if(R[0]<F[0]||R[0]>F[2]){let re=.5*W,fe=R[0]-F[0]>re?-W:F[0]-R[0]>re?W:0;fe===0&&(fe=R[0]-F[2]>re?-W:F[2]-R[0]>re?W:0),R[0]+=fe}Vu(A,R)}function rf(R,A,F,W){let re=Math.pow(2,W.z)*bs,fe=[W.x*bs,W.y*bs],pe=[];for(let ze of R)for(let Ke of ze){let ct=[Ke.x+fe[0],Ke.y+fe[1]];Do(ct,A,F,re),pe.push(ct)}return pe}function Uf(R,A,F,W){let re=Math.pow(2,W.z)*bs,fe=[W.x*bs,W.y*bs],pe=[];for(let Ke of R){let ct=[];for(let Lt of Ke){let $t=[Lt.x+fe[0],Lt.y+fe[1]];Vu(A,$t),ct.push($t)}pe.push(ct)}if(A[2]-A[0]<=re/2){(ze=A)[0]=ze[1]=1/0,ze[2]=ze[3]=-1/0;for(let Ke of pe)for(let ct of Ke)Do(ct,A,F,re)}var ze;return pe}class pl{constructor(A,F){this.type=mt,this.geojson=A,this.geometries=F}static parse(A,F){if(A.length!==2)return F.error(`'within' expression requires exactly one argument, but found ${A.length-1} instead.`);if(yn(A[1])){let W=A[1];if(W.type==="FeatureCollection"){let re=[];for(let fe of W.features){let{type:pe,coordinates:ze}=fe.geometry;pe==="Polygon"&&re.push(ze),pe==="MultiPolygon"&&re.push(...ze)}if(re.length)return new pl(W,{type:"MultiPolygon",coordinates:re})}else if(W.type==="Feature"){let re=W.geometry.type;if(re==="Polygon"||re==="MultiPolygon")return new pl(W,W.geometry)}else if(W.type==="Polygon"||W.type==="MultiPolygon")return new pl(W,W)}return F.error("'within' expression requires valid geojson object that contains polygon geometry type.")}evaluate(A){if(A.geometry()!=null&&A.canonicalID()!=null){if(A.geometryType()==="Point")return function(F,W){let re=[1/0,1/0,-1/0,-1/0],fe=[1/0,1/0,-1/0,-1/0],pe=F.canonicalID();if(W.type==="Polygon"){let ze=ql(W.coordinates,fe,pe),Ke=rf(F.geometry(),re,fe,pe);if(!Ol(re,fe))return!1;for(let ct of Ke)if(!Hl(ct,ze))return!1}if(W.type==="MultiPolygon"){let ze=Pc(W.coordinates,fe,pe),Ke=rf(F.geometry(),re,fe,pe);if(!Ol(re,fe))return!1;for(let ct of Ke)if(!ac(ct,ze))return!1}return!0}(A,this.geometries);if(A.geometryType()==="LineString")return function(F,W){let re=[1/0,1/0,-1/0,-1/0],fe=[1/0,1/0,-1/0,-1/0],pe=F.canonicalID();if(W.type==="Polygon"){let ze=ql(W.coordinates,fe,pe),Ke=Uf(F.geometry(),re,fe,pe);if(!Ol(re,fe))return!1;for(let ct of Ke)if(!aa(ct,ze))return!1}if(W.type==="MultiPolygon"){let ze=Pc(W.coordinates,fe,pe),Ke=Uf(F.geometry(),re,fe,pe);if(!Ol(re,fe))return!1;for(let ct of Ke)if(!Oo(ct,ze))return!1}return!0}(A,this.geometries)}return!1}eachChild(){}outputDefined(){return!0}}let Zc=class{constructor(R=[],A=(F,W)=>F<W?-1:F>W?1:0){if(this.data=R,this.length=this.data.length,this.compare=A,this.length>0)for(let F=(this.length>>1)-1;F>=0;F--)this._down(F)}push(R){this.data.push(R),this._up(this.length++)}pop(){if(this.length===0)return;let R=this.data[0],A=this.data.pop();return--this.length>0&&(this.data[0]=A,this._down(0)),R}peek(){return this.data[0]}_up(R){let{data:A,compare:F}=this,W=A[R];for(;R>0;){let re=R-1>>1,fe=A[re];if(F(W,fe)>=0)break;A[R]=fe,R=re}A[R]=W}_down(R){let{data:A,compare:F}=this,W=this.length>>1,re=A[R];for(;R<W;){let fe=1+(R<<1),pe=fe+1;if(pe<this.length&&F(A[pe],A[fe])<0&&(fe=pe),F(A[fe],re)>=0)break;A[R]=A[fe],R=fe}A[R]=re}};function Kl(R,A,F,W,re){Os(R,A,F,W||R.length-1,re||oc)}function Os(R,A,F,W,re){for(;W>F;){if(W-F>600){var fe=W-F+1,pe=A-F+1,ze=Math.log(fe),Ke=.5*Math.exp(2*ze/3),ct=.5*Math.sqrt(ze*Ke*(fe-Ke)/fe)*(pe-fe/2<0?-1:1);Os(R,A,Math.max(F,Math.floor(A-pe*Ke/fe+ct)),Math.min(W,Math.floor(A+(fe-pe)*Ke/fe+ct)),re)}var Lt=R[A],$t=F,fr=W;for(yu(R,F,A),re(R[W],Lt)>0&&yu(R,F,W);$t<fr;){for(yu(R,$t,fr),$t++,fr--;re(R[$t],Lt)<0;)$t++;for(;re(R[fr],Lt)>0;)fr--}re(R[F],Lt)===0?yu(R,F,fr):yu(R,++fr,W),fr<=A&&(F=fr+1),A<=fr&&(W=fr-1)}}function yu(R,A,F){var W=R[A];R[A]=R[F],R[F]=W}function oc(R,A){return R<A?-1:R>A?1:0}function Cf(R,A){if(R.length<=1)return[R];let F=[],W,re;for(let fe of R){let pe=Vh(fe);pe!==0&&(fe.area=Math.abs(pe),re===void 0&&(re=pe<0),re===pe<0?(W&&F.push(W),W=[fe]):W.push(fe))}if(W&&F.push(W),A>1)for(let fe=0;fe<F.length;fe++)F[fe].length<=A||(Kl(F[fe],A,1,F[fe].length-1,sc),F[fe]=F[fe].slice(0,A));return F}function sc(R,A){return A.area-R.area}function Vh(R){let A=0;for(let F,W,re=0,fe=R.length,pe=fe-1;re<fe;pe=re++)F=R[re],W=R[pe],A+=(W.x-F.x)*(F.y+W.y);return A}let Lf=1/298.257223563,cs=Lf*(2-Lf),nf=Math.PI/180;class Vf{constructor(A){let F=6378.137*nf*1e3,W=Math.cos(A*nf),re=1/(1-cs*(1-W*W)),fe=Math.sqrt(re);this.kx=F*fe*W,this.ky=F*fe*re*(1-cs)}distance(A,F){let W=this.wrap(A[0]-F[0])*this.kx,re=(A[1]-F[1])*this.ky;return Math.sqrt(W*W+re*re)}pointOnLine(A,F){let W,re,fe,pe,ze=1/0;for(let Ke=0;Ke<A.length-1;Ke++){let ct=A[Ke][0],Lt=A[Ke][1],$t=this.wrap(A[Ke+1][0]-ct)*this.kx,fr=(A[Ke+1][1]-Lt)*this.ky,mr=0;$t===0&&fr===0||(mr=(this.wrap(F[0]-ct)*this.kx*$t+(F[1]-Lt)*this.ky*fr)/($t*$t+fr*fr),mr>1?(ct=A[Ke+1][0],Lt=A[Ke+1][1]):mr>0&&(ct+=$t/this.kx*mr,Lt+=fr/this.ky*mr)),$t=this.wrap(F[0]-ct)*this.kx,fr=(F[1]-Lt)*this.ky;let Pr=$t*$t+fr*fr;Pr<ze&&(ze=Pr,W=ct,re=Lt,fe=Ke,pe=mr)}return{point:[W,re],index:fe,t:Math.max(0,Math.min(1,pe))}}wrap(A){for(;A<-180;)A+=360;for(;A>180;)A-=360;return A}}function Jl(R,A){return A[0]-R[0]}function fl(R){return R[1]-R[0]+1}function lc(R,A){return R[1]>=R[0]&&R[1]<A}function Fu(R,A){if(R[0]>R[1])return[null,null];let F=fl(R);if(A){if(F===2)return[R,null];let re=Math.floor(F/2);return[[R[0],R[0]+re],[R[0]+re,R[1]]]}if(F===1)return[R,null];let W=Math.floor(F/2)-1;return[[R[0],R[0]+W],[R[0]+W+1,R[1]]]}function Es(R,A){if(!lc(A,R.length))return[1/0,1/0,-1/0,-1/0];let F=[1/0,1/0,-1/0,-1/0];for(let W=A[0];W<=A[1];++W)Vu(F,R[W]);return F}function Hs(R){let A=[1/0,1/0,-1/0,-1/0];for(let F of R)for(let W of F)Vu(A,W);return A}function Go(R){return R[0]!==-1/0&&R[1]!==-1/0&&R[2]!==1/0&&R[3]!==1/0}function ps(R,A,F){if(!Go(R)||!Go(A))return NaN;let W=0,re=0;return R[2]<A[0]&&(W=A[0]-R[2]),R[0]>A[2]&&(W=R[0]-A[2]),R[1]>A[3]&&(re=R[1]-A[3]),R[3]<A[1]&&(re=A[1]-R[3]),F.distance([0,0],[W,re])}function uc(R,A,F){let W=F.pointOnLine(A,R);return F.distance(R,W.point)}function xl(R,A,F,W,re){let fe=Math.min(uc(R,[F,W],re),uc(A,[F,W],re)),pe=Math.min(uc(F,[R,A],re),uc(W,[R,A],re));return Math.min(fe,pe)}function Gu(R,A,F,W,re){if(!lc(A,R.length)||!lc(W,F.length))return 1/0;let fe=1/0;for(let pe=A[0];pe<A[1];++pe){let ze=R[pe],Ke=R[pe+1];for(let ct=W[0];ct<W[1];++ct){let Lt=F[ct],$t=F[ct+1];if(Yl(ze,Ke,Lt,$t))return 0;fe=Math.min(fe,xl(ze,Ke,Lt,$t,re))}}return fe}function qs(R,A,F,W,re){if(!lc(A,R.length)||!lc(W,F.length))return NaN;let fe=1/0;for(let pe=A[0];pe<=A[1];++pe)for(let ze=W[0];ze<=W[1];++ze)if(fe=Math.min(fe,re.distance(R[pe],F[ze])),fe===0)return fe;return fe}function ad(R,A,F){if(Hl(R,A,!0))return 0;let W=1/0;for(let re of A){let fe=re[0],pe=re[re.length-1];if(fe!==pe&&(W=Math.min(W,uc(R,[pe,fe],F)),W===0))return W;let ze=F.pointOnLine(re,R);if(W=Math.min(W,F.distance(R,ze.point)),W===0)return W}return W}function Po(R,A,F,W){if(!lc(A,R.length))return NaN;for(let fe=A[0];fe<=A[1];++fe)if(Hl(R[fe],F,!0))return 0;let re=1/0;for(let fe=A[0];fe<A[1];++fe){let pe=R[fe],ze=R[fe+1];for(let Ke of F)for(let ct=0,Lt=Ke.length,$t=Lt-1;ct<Lt;$t=ct++){let fr=Ke[$t],mr=Ke[ct];if(Yl(pe,ze,fr,mr))return 0;re=Math.min(re,xl(pe,ze,fr,mr,W))}}return re}function od(R,A){for(let F of R)for(let W of F)if(Hl(W,A,!0))return!0;return!1}function Yo(R,A,F,W=1/0){let re=Hs(R),fe=Hs(A);if(W!==1/0&&ps(re,fe,F)>=W)return W;if(Ol(re,fe)){if(od(R,A))return 0}else if(od(A,R))return 0;let pe=1/0;for(let ze of R)for(let Ke=0,ct=ze.length,Lt=ct-1;Ke<ct;Lt=Ke++){let $t=ze[Lt],fr=ze[Ke];for(let mr of A)for(let Pr=0,zr=mr.length,ui=zr-1;Pr<zr;ui=Pr++){let yi=mr[ui],vn=mr[Pr];if(Yl($t,fr,yi,vn))return 0;pe=Math.min(pe,xl($t,fr,yi,vn,F))}}return pe}function Pa(R,A,F,W,re,fe){if(!fe)return;let pe=ps(Es(W,fe),re,F);pe<A&&R.push([pe,fe,[0,0]])}function af(R,A,F,W,re,fe,pe){if(!fe||!pe)return;let ze=ps(Es(W,fe),Es(re,pe),F);ze<A&&R.push([ze,fe,pe])}function Hu(R,A,F,W,re=1/0){let fe=Math.min(W.distance(R[0],F[0][0]),re);if(fe===0)return fe;let pe=new Zc([[0,[0,R.length-1],[0,0]]],Jl),ze=Hs(F);for(;pe.length>0;){let Ke=pe.pop();if(Ke[0]>=fe)continue;let ct=Ke[1],Lt=A?50:100;if(fl(ct)<=Lt){if(!lc(ct,R.length))return NaN;if(A){let $t=Po(R,ct,F,W);if(isNaN($t)||$t===0)return $t;fe=Math.min(fe,$t)}else for(let $t=ct[0];$t<=ct[1];++$t){let fr=ad(R[$t],F,W);if(fe=Math.min(fe,fr),fe===0)return 0}}else{let $t=Fu(ct,A);Pa(pe,fe,W,R,ze,$t[0]),Pa(pe,fe,W,R,ze,$t[1])}}return fe}function bl(R,A,F,W,re,fe=1/0){let pe=Math.min(fe,re.distance(R[0],F[0]));if(pe===0)return pe;let ze=new Zc([[0,[0,R.length-1],[0,F.length-1]]],Jl);for(;ze.length>0;){let Ke=ze.pop();if(Ke[0]>=pe)continue;let ct=Ke[1],Lt=Ke[2],$t=A?50:100,fr=W?50:100;if(fl(ct)<=$t&&fl(Lt)<=fr){if(!lc(ct,R.length)&&lc(Lt,F.length))return NaN;let mr;if(A&&W)mr=Gu(R,ct,F,Lt,re),pe=Math.min(pe,mr);else if(A&&!W){let Pr=R.slice(ct[0],ct[1]+1);for(let zr=Lt[0];zr<=Lt[1];++zr)if(mr=uc(F[zr],Pr,re),pe=Math.min(pe,mr),pe===0)return pe}else if(!A&&W){let Pr=F.slice(Lt[0],Lt[1]+1);for(let zr=ct[0];zr<=ct[1];++zr)if(mr=uc(R[zr],Pr,re),pe=Math.min(pe,mr),pe===0)return pe}else mr=qs(R,ct,F,Lt,re),pe=Math.min(pe,mr)}else{let mr=Fu(ct,A),Pr=Fu(Lt,W);af(ze,pe,re,R,F,mr[0],Pr[0]),af(ze,pe,re,R,F,mr[0],Pr[1]),af(ze,pe,re,R,F,mr[1],Pr[0]),af(ze,pe,re,R,F,mr[1],Pr[1])}}return pe}function Gf(R){return R.type==="MultiPolygon"?R.coordinates.map(A=>({type:"Polygon",coordinates:A})):R.type==="MultiLineString"?R.coordinates.map(A=>({type:"LineString",coordinates:A})):R.type==="MultiPoint"?R.coordinates.map(A=>({type:"Point",coordinates:A})):[R]}class Ic{constructor(A,F){this.type=_t,this.geojson=A,this.geometries=F}static parse(A,F){if(A.length!==2)return F.error(`'distance' expression requires exactly one argument, but found ${A.length-1} instead.`);if(yn(A[1])){let W=A[1];if(W.type==="FeatureCollection")return new Ic(W,W.features.map(re=>Gf(re.geometry)).flat());if(W.type==="Feature")return new Ic(W,Gf(W.geometry));if("type"in W&&"coordinates"in W)return new Ic(W,Gf(W))}return F.error("'distance' expression requires valid geojson object that contains polygon geometry type.")}evaluate(A){if(A.geometry()!=null&&A.canonicalID()!=null){if(A.geometryType()==="Point")return function(F,W){let re=F.geometry(),fe=re.flat().map(Ke=>_a([Ke.x,Ke.y],F.canonical));if(re.length===0)return NaN;let pe=new Vf(fe[0][1]),ze=1/0;for(let Ke of W){switch(Ke.type){case"Point":ze=Math.min(ze,bl(fe,!1,[Ke.coordinates],!1,pe,ze));break;case"LineString":ze=Math.min(ze,bl(fe,!1,Ke.coordinates,!0,pe,ze));break;case"Polygon":ze=Math.min(ze,Hu(fe,!1,Ke.coordinates,pe,ze))}if(ze===0)return ze}return ze}(A,this.geometries);if(A.geometryType()==="LineString")return function(F,W){let re=F.geometry(),fe=re.flat().map(Ke=>_a([Ke.x,Ke.y],F.canonical));if(re.length===0)return NaN;let pe=new Vf(fe[0][1]),ze=1/0;for(let Ke of W){switch(Ke.type){case"Point":ze=Math.min(ze,bl(fe,!0,[Ke.coordinates],!1,pe,ze));break;case"LineString":ze=Math.min(ze,bl(fe,!0,Ke.coordinates,!0,pe,ze));break;case"Polygon":ze=Math.min(ze,Hu(fe,!0,Ke.coordinates,pe,ze))}if(ze===0)return ze}return ze}(A,this.geometries);if(A.geometryType()==="Polygon")return function(F,W){let re=F.geometry();if(re.length===0||re[0].length===0)return NaN;let fe=Cf(re,0).map(Ke=>Ke.map(ct=>ct.map(Lt=>_a([Lt.x,Lt.y],F.canonical)))),pe=new Vf(fe[0][0][0][1]),ze=1/0;for(let Ke of W)for(let ct of fe){switch(Ke.type){case"Point":ze=Math.min(ze,Hu([Ke.coordinates],!1,ct,pe,ze));break;case"LineString":ze=Math.min(ze,Hu(Ke.coordinates,!0,ct,pe,ze));break;case"Polygon":ze=Math.min(ze,Yo(ct,Ke.coordinates,pe,ze))}if(ze===0)return ze}return ze}(A,this.geometries)}return NaN}eachChild(){}outputDefined(){return!0}}let yf={"==":us,"!=":il,">":cl,"<":As,">=":zs,"<=":Ks,array:Fa,at:kr,boolean:Fa,case:An,coalesce:Fs,collator:Io,format:Zl,image:Su,in:Jr,"index-of":vi,interpolate:ko,"interpolate-hcl":ko,"interpolate-lab":ko,length:nc,let:jn,literal:ua,match:hn,number:Fa,"number-format":ls,object:Fa,slice:Mn,step:_n,string:Fa,"to-boolean":da,"to-color":da,"to-number":da,"to-string":da,var:Mt,within:pl,distance:Ic};class Bl{constructor(A,F,W,re){this.name=A,this.type=F,this._evaluate=W,this.args=re}evaluate(A){return this._evaluate(A,this.args)}eachChild(A){this.args.forEach(A)}outputDefined(){return!1}static parse(A,F){let W=A[0],re=Bl.definitions[W];if(!re)return F.error(`Unknown expression "${W}". If you wanted a literal array, use ["literal", [...]].`,0);let fe=Array.isArray(re)?re[0]:re.type,pe=Array.isArray(re)?[[re[1],re[2]]]:re.overloads,ze=pe.filter(([ct])=>!Array.isArray(ct)||ct.length===A.length-1),Ke=null;for(let[ct,Lt]of ze){Ke=new vo(F.registry,eh,F.path,null,F.scope);let $t=[],fr=!1;for(let mr=1;mr<A.length;mr++){let Pr=A[mr],zr=Array.isArray(ct)?ct[mr-1]:ct.type,ui=Ke.parse(Pr,1+$t.length,zr);if(!ui){fr=!0;break}$t.push(ui)}if(!fr)if(Array.isArray(ct)&&ct.length!==$t.length)Ke.error(`Expected ${ct.length} arguments, but found ${$t.length} instead.`);else{for(let mr=0;mr<$t.length;mr++){let Pr=Array.isArray(ct)?ct[mr]:ct.type,zr=$t[mr];Ke.concat(mr+1).checkSubtype(Pr,zr.type)}if(Ke.errors.length===0)return new Bl(W,fe,Lt,$t)}}if(ze.length===1)F.errors.push(...Ke.errors);else{let ct=(ze.length?ze:pe).map(([$t])=>{return fr=$t,Array.isArray(fr)?`(${fr.map(Je).join(", ")})`:`(${Je(fr.type)}...)`;var fr}).join(" | "),Lt=[];for(let $t=1;$t<A.length;$t++){let fr=F.parse(A[$t],1+Lt.length);if(!fr)return null;Lt.push(Je(fr.type))}F.error(`Expected arguments of type ${ct}, but found (${Lt.join(", ")}) instead.`)}return null}static register(A,F){Bl.definitions=F;for(let W in F)A[W]=Bl}}function wh(R,[A,F,W,re]){A=A.evaluate(R),F=F.evaluate(R),W=W.evaluate(R);let fe=re?re.evaluate(R):1,pe=fn(A,F,W,fe);if(pe)throw new ma(pe);return new nr(A/255,F/255,W/255,fe,!1)}function Qf(R,A){return R in A}function _f(R,A){let F=A[R];return F===void 0?null:F}function Yc(R){return{type:R}}function eh(R){if(R instanceof Mt)return eh(R.boundExpression);if(R instanceof Bl&&R.name==="error"||R instanceof Io||R instanceof pl||R instanceof Ic)return!1;let A=R instanceof da||R instanceof Fa,F=!0;return R.eachChild(W=>{F=A?F&&eh(W):F&&W instanceof ua}),!!F&&th(R)&&Hf(R,["zoom","heatmap-density","line-progress","accumulated","is-supported-script"])}function th(R){if(R instanceof Bl&&(R.name==="get"&&R.args.length===1||R.name==="feature-state"||R.name==="has"&&R.args.length===1||R.name==="properties"||R.name==="geometry-type"||R.name==="id"||/^filter-/.test(R.name))||R instanceof pl||R instanceof Ic)return!1;let A=!0;return R.eachChild(F=>{A&&!th(F)&&(A=!1)}),A}function ju(R){if(R instanceof Bl&&R.name==="feature-state")return!1;let A=!0;return R.eachChild(F=>{A&&!ju(F)&&(A=!1)}),A}function Hf(R,A){if(R instanceof Bl&&A.indexOf(R.name)>=0)return!1;let F=!0;return R.eachChild(W=>{F&&!Hf(W,A)&&(F=!1)}),F}function cc(R){return{result:"success",value:R}}function of(R){return{result:"error",value:R}}function Nl(R){return R["property-type"]==="data-driven"||R["property-type"]==="cross-faded-data-driven"}function Kc(R){return!!R.expression&&R.expression.parameters.indexOf("zoom")>-1}function Rc(R){return!!R.expression&&R.expression.interpolated}function gs(R){return R instanceof Number?"number":R instanceof String?"string":R instanceof Boolean?"boolean":Array.isArray(R)?"array":R===null?"null":typeof R}function jf(R){return typeof R=="object"&&R!==null&&!Array.isArray(R)}function Gh(R){return R}function rh(R,A){let F=A.type==="color",W=R.stops&&typeof R.stops[0][0]=="object",re=W||!(W||R.property!==void 0),fe=R.type||(Rc(A)?"exponential":"interval");if(F||A.type==="padding"){let Lt=F?nr.parse:Qr.parse;(R=$e({},R)).stops&&(R.stops=R.stops.map($t=>[$t[0],Lt($t[1])])),R.default=Lt(R.default?R.default:A.default)}if(R.colorSpace&&(pe=R.colorSpace)!=="rgb"&&pe!=="hcl"&&pe!=="lab")throw new Error(`Unknown color space: "${R.colorSpace}"`);var pe;let ze,Ke,ct;if(fe==="exponential")ze=ih;else if(fe==="interval")ze=Mu;else if(fe==="categorical"){ze=Th,Ke=Object.create(null);for(let Lt of R.stops)Ke[Lt[0]]=Lt[1];ct=typeof R.stops[0][0]}else{if(fe!=="identity")throw new Error(`Unknown function type "${fe}"`);ze=js}if(W){let Lt={},$t=[];for(let Pr=0;Pr<R.stops.length;Pr++){let zr=R.stops[Pr],ui=zr[0].zoom;Lt[ui]===void 0&&(Lt[ui]={zoom:ui,type:R.type,property:R.property,default:R.default,stops:[]},$t.push(ui)),Lt[ui].stops.push([zr[0].value,zr[1]])}let fr=[];for(let Pr of $t)fr.push([Lt[Pr].zoom,rh(Lt[Pr],A)]);let mr={name:"linear"};return{kind:"composite",interpolationType:mr,interpolationFactor:ko.interpolationFactor.bind(void 0,mr),zoomStops:fr.map(Pr=>Pr[0]),evaluate:({zoom:Pr},zr)=>ih({stops:fr,base:R.base},A,Pr).evaluate(Pr,zr)}}if(re){let Lt=fe==="exponential"?{name:"exponential",base:R.base!==void 0?R.base:1}:null;return{kind:"camera",interpolationType:Lt,interpolationFactor:ko.interpolationFactor.bind(void 0,Lt),zoomStops:R.stops.map($t=>$t[0]),evaluate:({zoom:$t})=>ze(R,A,$t,Ke,ct)}}return{kind:"source",evaluate(Lt,$t){let fr=$t&&$t.properties?$t.properties[R.property]:void 0;return fr===void 0?sf(R.default,A.default):ze(R,A,fr,Ke,ct)}}}function sf(R,A,F){return R!==void 0?R:A!==void 0?A:F!==void 0?F:void 0}function Th(R,A,F,W,re){return sf(typeof F===re?W[F]:void 0,R.default,A.default)}function Mu(R,A,F){if(gs(F)!=="number")return sf(R.default,A.default);let W=R.stops.length;if(W===1||F<=R.stops[0][0])return R.stops[0][1];if(F>=R.stops[W-1][0])return R.stops[W-1][1];let re=Li(R.stops.map(fe=>fe[0]),F);return R.stops[re][1]}function ih(R,A,F){let W=R.base!==void 0?R.base:1;if(gs(F)!=="number")return sf(R.default,A.default);let re=R.stops.length;if(re===1||F<=R.stops[0][0])return R.stops[0][1];if(F>=R.stops[re-1][0])return R.stops[re-1][1];let fe=Li(R.stops.map(Lt=>Lt[0]),F),pe=function(Lt,$t,fr,mr){let Pr=mr-fr,zr=Lt-fr;return Pr===0?0:$t===1?zr/Pr:(Math.pow($t,zr)-1)/(Math.pow($t,Pr)-1)}(F,W,R.stops[fe][0],R.stops[fe+1][0]),ze=R.stops[fe][1],Ke=R.stops[fe+1][1],ct=Lo[A.type]||Gh;return typeof ze.evaluate=="function"?{evaluate(...Lt){let $t=ze.evaluate.apply(void 0,Lt),fr=Ke.evaluate.apply(void 0,Lt);if($t!==void 0&&fr!==void 0)return ct($t,fr,pe,R.colorSpace)}}:ct(ze,Ke,pe,R.colorSpace)}function js(R,A,F){switch(A.type){case"color":F=nr.parse(F);break;case"formatted":F=ri.fromString(F.toString());break;case"resolvedImage":F=tn.fromString(F.toString());break;case"padding":F=Qr.parse(F);break;default:gs(F)===A.type||A.type==="enum"&&A.values[F]||(F=void 0)}return sf(F,R.default,A.default)}Bl.register(yf,{error:[{kind:"error"},[It],(R,[A])=>{throw new ma(A.evaluate(R))}],typeof:[It,[Tr],(R,[A])=>Je(Sn(A.evaluate(R)))],"to-rgba":[Ge(_t,4),[er],(R,[A])=>{let[F,W,re,fe]=A.evaluate(R).rgb;return[255*F,255*W,255*re,fe]}],rgb:[er,[_t,_t,_t],wh],rgba:[er,[_t,_t,_t,_t],wh],has:{type:mt,overloads:[[[It],(R,[A])=>Qf(A.evaluate(R),R.properties())],[[It,lr],(R,[A,F])=>Qf(A.evaluate(R),F.evaluate(R))]]},get:{type:Tr,overloads:[[[It],(R,[A])=>_f(A.evaluate(R),R.properties())],[[It,lr],(R,[A,F])=>_f(A.evaluate(R),F.evaluate(R))]]},"feature-state":[Tr,[It],(R,[A])=>_f(A.evaluate(R),R.featureState||{})],properties:[lr,[],R=>R.properties()],"geometry-type":[It,[],R=>R.geometryType()],id:[Tr,[],R=>R.id()],zoom:[_t,[],R=>R.globals.zoom],"heatmap-density":[_t,[],R=>R.globals.heatmapDensity||0],"line-progress":[_t,[],R=>R.globals.lineProgress||0],accumulated:[Tr,[],R=>R.globals.accumulated===void 0?null:R.globals.accumulated],"+":[_t,Yc(_t),(R,A)=>{let F=0;for(let W of A)F+=W.evaluate(R);return F}],"*":[_t,Yc(_t),(R,A)=>{let F=1;for(let W of A)F*=W.evaluate(R);return F}],"-":{type:_t,overloads:[[[_t,_t],(R,[A,F])=>A.evaluate(R)-F.evaluate(R)],[[_t],(R,[A])=>-A.evaluate(R)]]},"/":[_t,[_t,_t],(R,[A,F])=>A.evaluate(R)/F.evaluate(R)],"%":[_t,[_t,_t],(R,[A,F])=>A.evaluate(R)%F.evaluate(R)],ln2:[_t,[],()=>Math.LN2],pi:[_t,[],()=>Math.PI],e:[_t,[],()=>Math.E],"^":[_t,[_t,_t],(R,[A,F])=>Math.pow(A.evaluate(R),F.evaluate(R))],sqrt:[_t,[_t],(R,[A])=>Math.sqrt(A.evaluate(R))],log10:[_t,[_t],(R,[A])=>Math.log(A.evaluate(R))/Math.LN10],ln:[_t,[_t],(R,[A])=>Math.log(A.evaluate(R))],log2:[_t,[_t],(R,[A])=>Math.log(A.evaluate(R))/Math.LN2],sin:[_t,[_t],(R,[A])=>Math.sin(A.evaluate(R))],cos:[_t,[_t],(R,[A])=>Math.cos(A.evaluate(R))],tan:[_t,[_t],(R,[A])=>Math.tan(A.evaluate(R))],asin:[_t,[_t],(R,[A])=>Math.asin(A.evaluate(R))],acos:[_t,[_t],(R,[A])=>Math.acos(A.evaluate(R))],atan:[_t,[_t],(R,[A])=>Math.atan(A.evaluate(R))],min:[_t,Yc(_t),(R,A)=>Math.min(...A.map(F=>F.evaluate(R)))],max:[_t,Yc(_t),(R,A)=>Math.max(...A.map(F=>F.evaluate(R)))],abs:[_t,[_t],(R,[A])=>Math.abs(A.evaluate(R))],round:[_t,[_t],(R,[A])=>{let F=A.evaluate(R);return F<0?-Math.round(-F):Math.round(F)}],floor:[_t,[_t],(R,[A])=>Math.floor(A.evaluate(R))],ceil:[_t,[_t],(R,[A])=>Math.ceil(A.evaluate(R))],"filter-==":[mt,[It,Tr],(R,[A,F])=>R.properties()[A.value]===F.value],"filter-id-==":[mt,[Tr],(R,[A])=>R.id()===A.value],"filter-type-==":[mt,[It],(R,[A])=>R.geometryType()===A.value],"filter-<":[mt,[It,Tr],(R,[A,F])=>{let W=R.properties()[A.value],re=F.value;return typeof W==typeof re&&W<re}],"filter-id-<":[mt,[Tr],(R,[A])=>{let F=R.id(),W=A.value;return typeof F==typeof W&&F<W}],"filter->":[mt,[It,Tr],(R,[A,F])=>{let W=R.properties()[A.value],re=F.value;return typeof W==typeof re&&W>re}],"filter-id->":[mt,[Tr],(R,[A])=>{let F=R.id(),W=A.value;return typeof F==typeof W&&F>W}],"filter-<=":[mt,[It,Tr],(R,[A,F])=>{let W=R.properties()[A.value],re=F.value;return typeof W==typeof re&&W<=re}],"filter-id-<=":[mt,[Tr],(R,[A])=>{let F=R.id(),W=A.value;return typeof F==typeof W&&F<=W}],"filter->=":[mt,[It,Tr],(R,[A,F])=>{let W=R.properties()[A.value],re=F.value;return typeof W==typeof re&&W>=re}],"filter-id->=":[mt,[Tr],(R,[A])=>{let F=R.id(),W=A.value;return typeof F==typeof W&&F>=W}],"filter-has":[mt,[Tr],(R,[A])=>A.value in R.properties()],"filter-has-id":[mt,[],R=>R.id()!==null&&R.id()!==void 0],"filter-type-in":[mt,[Ge(It)],(R,[A])=>A.value.indexOf(R.geometryType())>=0],"filter-id-in":[mt,[Ge(Tr)],(R,[A])=>A.value.indexOf(R.id())>=0],"filter-in-small":[mt,[It,Ge(Tr)],(R,[A,F])=>F.value.indexOf(R.properties()[A.value])>=0],"filter-in-large":[mt,[It,Ge(Tr)],(R,[A,F])=>function(W,re,fe,pe){for(;fe<=pe;){let ze=fe+pe>>1;if(re[ze]===W)return!0;re[ze]>W?pe=ze-1:fe=ze+1}return!1}(R.properties()[A.value],F.value,0,F.value.length-1)],all:{type:mt,overloads:[[[mt,mt],(R,[A,F])=>A.evaluate(R)&&F.evaluate(R)],[Yc(mt),(R,A)=>{for(let F of A)if(!F.evaluate(R))return!1;return!0}]]},any:{type:mt,overloads:[[[mt,mt],(R,[A,F])=>A.evaluate(R)||F.evaluate(R)],[Yc(mt),(R,A)=>{for(let F of A)if(F.evaluate(R))return!0;return!1}]]},"!":[mt,[mt],(R,[A])=>!A.evaluate(R)],"is-supported-script":[mt,[It],(R,[A])=>{let F=R.globals&&R.globals.isSupportedScript;return!F||F(A.evaluate(R))}],upcase:[It,[It],(R,[A])=>A.evaluate(R).toUpperCase()],downcase:[It,[It],(R,[A])=>A.evaluate(R).toLowerCase()],concat:[It,Yc(Tr),(R,A)=>A.map(F=>Ba(F.evaluate(R))).join("")],"resolved-locale":[It,[Lr],(R,[A])=>A.evaluate(R).resolvedLocale()]});class Eu{constructor(A,F){var W;this.expression=A,this._warningHistory={},this._evaluator=new Ha,this._defaultValue=F?(W=F).type==="color"&&jf(W.default)?new nr(0,0,0,0):W.type==="color"?nr.parse(W.default)||null:W.type==="padding"?Qr.parse(W.default)||null:W.type==="variableAnchorOffsetCollection"?$i.parse(W.default)||null:W.default===void 0?null:W.default:null,this._enumValues=F&&F.type==="enum"?F.values:null}evaluateWithoutErrorHandling(A,F,W,re,fe,pe){return this._evaluator.globals=A,this._evaluator.feature=F,this._evaluator.featureState=W,this._evaluator.canonical=re,this._evaluator.availableImages=fe||null,this._evaluator.formattedSection=pe,this.expression.evaluate(this._evaluator)}evaluate(A,F,W,re,fe,pe){this._evaluator.globals=A,this._evaluator.feature=F||null,this._evaluator.featureState=W||null,this._evaluator.canonical=re,this._evaluator.availableImages=fe||null,this._evaluator.formattedSection=pe||null;try{let ze=this.expression.evaluate(this._evaluator);if(ze==null||typeof ze=="number"&&ze!=ze)return this._defaultValue;if(this._enumValues&&!(ze in this._enumValues))throw new ma(`Expected value to be one of ${Object.keys(this._enumValues).map(Ke=>JSON.stringify(Ke)).join(", ")}, but found ${JSON.stringify(ze)} instead.`);return ze}catch(ze){return this._warningHistory[ze.message]||(this._warningHistory[ze.message]=!0,typeof console!="undefined"&&console.warn(ze.message)),this._defaultValue}}}function Dc(R){return Array.isArray(R)&&R.length>0&&typeof R[0]=="string"&&R[0]in yf}function ks(R,A){let F=new vo(yf,eh,[],A?function(re){let fe={color:er,string:It,number:_t,enum:It,boolean:mt,formatted:ti,padding:Br,resolvedImage:Vr,variableAnchorOffsetCollection:dt};return re.type==="array"?Ge(fe[re.value]||Tr,re.length):fe[re.type]}(A):void 0),W=F.parse(R,void 0,void 0,void 0,A&&A.type==="string"?{typeAnnotation:"coerce"}:void 0);return W?cc(new Eu(W,A)):of(F.errors)}class bc{constructor(A,F){this.kind=A,this._styleExpression=F,this.isStateDependent=A!=="constant"&&!ju(F.expression)}evaluateWithoutErrorHandling(A,F,W,re,fe,pe){return this._styleExpression.evaluateWithoutErrorHandling(A,F,W,re,fe,pe)}evaluate(A,F,W,re,fe,pe){return this._styleExpression.evaluate(A,F,W,re,fe,pe)}}class hu{constructor(A,F,W,re){this.kind=A,this.zoomStops=W,this._styleExpression=F,this.isStateDependent=A!=="camera"&&!ju(F.expression),this.interpolationType=re}evaluateWithoutErrorHandling(A,F,W,re,fe,pe){return this._styleExpression.evaluateWithoutErrorHandling(A,F,W,re,fe,pe)}evaluate(A,F,W,re,fe,pe){return this._styleExpression.evaluate(A,F,W,re,fe,pe)}interpolationFactor(A,F,W){return this.interpolationType?ko.interpolationFactor(this.interpolationType,A,F,W):0}}function _u(R,A){let F=ks(R,A);if(F.result==="error")return F;let W=F.value.expression,re=th(W);if(!re&&!Nl(A))return of([new St("","data expressions not supported")]);let fe=Hf(W,["zoom"]);if(!fe&&!Kc(A))return of([new St("","zoom expressions not supported")]);let pe=nh(W);return pe||fe?pe instanceof St?of([pe]):pe instanceof ko&&!Rc(A)?of([new St("",'"interpolate" expressions cannot be used with this property')]):cc(pe?new hu(re?"camera":"composite",F.value,pe.labels,pe instanceof ko?pe.interpolation:void 0):new bc(re?"constant":"source",F.value)):of([new St("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.')])}class nl{constructor(A,F){this._parameters=A,this._specification=F,$e(this,rh(this._parameters,this._specification))}static deserialize(A){return new nl(A._parameters,A._specification)}static serialize(A){return{_parameters:A._parameters,_specification:A._specification}}}function nh(R){let A=null;if(R instanceof jn)A=nh(R.result);else if(R instanceof Fs){for(let F of R.args)if(A=nh(F),A)break}else(R instanceof _n||R instanceof ko)&&R.input instanceof Bl&&R.input.name==="zoom"&&(A=R);return A instanceof St||R.eachChild(F=>{let W=nh(F);W instanceof St?A=W:!A&&W?A=new St("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.'):A&&W&&A!==W&&(A=new St("",'Only one zoom-based "step" or "interpolate" subexpression may be used in an expression.'))}),A}function Ah(R){if(R===!0||R===!1)return!0;if(!Array.isArray(R)||R.length===0)return!1;switch(R[0]){case"has":return R.length>=2&&R[1]!=="$id"&&R[1]!=="$type";case"in":return R.length>=3&&(typeof R[1]!="string"||Array.isArray(R[2]));case"!in":case"!has":case"none":return!1;case"==":case"!=":case">":case">=":case"<":case"<=":return R.length!==3||Array.isArray(R[1])||Array.isArray(R[2]);case"any":case"all":for(let A of R.slice(1))if(!Ah(A)&&typeof A!="boolean")return!1;return!0;default:return!0}}let zu={type:"boolean",default:!1,transition:!1,"property-type":"data-driven",expression:{interpolated:!1,parameters:["zoom","feature"]}};function Fc(R){if(R==null)return{filter:()=>!0,needGeometry:!1};Ah(R)||(R=xf(R));let A=ks(R,zu);if(A.result==="error")throw new Error(A.value.map(F=>`${F.key}: ${F.message}`).join(", "));return{filter:(F,W,re)=>A.value.evaluate(F,W,{},re),needGeometry:bd(R)}}function wc(R,A){return R<A?-1:R>A?1:0}function bd(R){if(!Array.isArray(R))return!1;if(R[0]==="within"||R[0]==="distance")return!0;for(let A=1;A<R.length;A++)if(bd(R[A]))return!0;return!1}function xf(R){if(!R)return!0;let A=R[0];return R.length<=1?A!=="any":A==="=="?Pf(R[1],R[2],"=="):A==="!="?jl(Pf(R[1],R[2],"==")):A==="<"||A===">"||A==="<="||A===">="?Pf(R[1],R[2],A):A==="any"?(F=R.slice(1),["any"].concat(F.map(xf))):A==="all"?["all"].concat(R.slice(1).map(xf)):A==="none"?["all"].concat(R.slice(1).map(xf).map(jl)):A==="in"?Ou(R[1],R.slice(2)):A==="!in"?jl(Ou(R[1],R.slice(2))):A==="has"?bf(R[1]):A!=="!has"||jl(bf(R[1]));var F}function Pf(R,A,F){switch(R){case"$type":return[`filter-type-${F}`,A];case"$id":return[`filter-id-${F}`,A];default:return[`filter-${F}`,R,A]}}function Ou(R,A){if(A.length===0)return!1;switch(R){case"$type":return["filter-type-in",["literal",A]];case"$id":return["filter-id-in",["literal",A]];default:return A.length>200&&!A.some(F=>typeof F!=typeof A[0])?["filter-in-large",R,["literal",A.sort(wc)]]:["filter-in-small",R,["literal",A]]}}function bf(R){switch(R){case"$type":return!0;case"$id":return["filter-has-id"];default:return["filter-has",R]}}function jl(R){return["!",R]}function lf(R){let A=typeof R;if(A==="number"||A==="boolean"||A==="string"||R==null)return JSON.stringify(R);if(Array.isArray(R)){let re="[";for(let fe of R)re+=`${lf(fe)},`;return`${re}]`}let F=Object.keys(R).sort(),W="{";for(let re=0;re<F.length;re++)W+=`${JSON.stringify(F[re])}:${lf(R[F[re]])},`;return`${W}}`}function Hh(R){let A="";for(let F of Ze)A+=`/${lf(R[F])}`;return A}function If(R){let A=R.value;return A?[new cr(R.key,A,"constants have been deprecated as of v8")]:[]}function Cs(R){return R instanceof Number||R instanceof String||R instanceof Boolean?R.valueOf():R}function du(R){if(Array.isArray(R))return R.map(du);if(R instanceof Object&&!(R instanceof Number||R instanceof String||R instanceof Boolean)){let A={};for(let F in R)A[F]=du(R[F]);return A}return Cs(R)}function ku(R){let A=R.key,F=R.value,W=R.valueSpec||{},re=R.objectElementValidators||{},fe=R.style,pe=R.styleSpec,ze=R.validateSpec,Ke=[],ct=gs(F);if(ct!=="object")return[new cr(A,F,`object expected, ${ct} found`)];for(let Lt in F){let $t=Lt.split(".")[0],fr=W[$t]||W["*"],mr;if(re[$t])mr=re[$t];else if(W[$t])mr=ze;else if(re["*"])mr=re["*"];else{if(!W["*"]){Ke.push(new cr(A,F[Lt],`unknown property "${Lt}"`));continue}mr=ze}Ke=Ke.concat(mr({key:(A&&`${A}.`)+Lt,value:F[Lt],valueSpec:fr,style:fe,styleSpec:pe,object:F,objectKey:Lt,validateSpec:ze},F))}for(let Lt in W)re[Lt]||W[Lt].required&&W[Lt].default===void 0&&F[Lt]===void 0&&Ke.push(new cr(A,F,`missing required property "${Lt}"`));return Ke}function Wf(R){let A=R.value,F=R.valueSpec,W=R.style,re=R.styleSpec,fe=R.key,pe=R.arrayElementValidator||R.validateSpec;if(gs(A)!=="array")return[new cr(fe,A,`array expected, ${gs(A)} found`)];if(F.length&&A.length!==F.length)return[new cr(fe,A,`array length ${F.length} expected, length ${A.length} found`)];if(F["min-length"]&&A.length<F["min-length"])return[new cr(fe,A,`array length at least ${F["min-length"]} expected, length ${A.length} found`)];let ze={type:F.value,values:F.values};re.$version<7&&(ze.function=F.function),gs(F.value)==="object"&&(ze=F.value);let Ke=[];for(let ct=0;ct<A.length;ct++)Ke=Ke.concat(pe({array:A,arrayIndex:ct,value:A[ct],valueSpec:ze,validateSpec:R.validateSpec,style:W,styleSpec:re,key:`${fe}[${ct}]`}));return Ke}function Us(R){let A=R.key,F=R.value,W=R.valueSpec,re=gs(F);return re==="number"&&F!=F&&(re="NaN"),re!=="number"?[new cr(A,F,`number expected, ${re} found`)]:"minimum"in W&&F<W.minimum?[new cr(A,F,`${F} is less than the minimum value ${W.minimum}`)]:"maximum"in W&&F>W.maximum?[new cr(A,F,`${F} is greater than the maximum value ${W.maximum}`)]:[]}function wf(R){let A=R.valueSpec,F=Cs(R.value.type),W,re,fe,pe={},ze=F!=="categorical"&&R.value.property===void 0,Ke=!ze,ct=gs(R.value.stops)==="array"&&gs(R.value.stops[0])==="array"&&gs(R.value.stops[0][0])==="object",Lt=ku({key:R.key,value:R.value,valueSpec:R.styleSpec.function,validateSpec:R.validateSpec,style:R.style,styleSpec:R.styleSpec,objectElementValidators:{stops:function(mr){if(F==="identity")return[new cr(mr.key,mr.value,'identity function may not have a "stops" property')];let Pr=[],zr=mr.value;return Pr=Pr.concat(Wf({key:mr.key,value:zr,valueSpec:mr.valueSpec,validateSpec:mr.validateSpec,style:mr.style,styleSpec:mr.styleSpec,arrayElementValidator:$t})),gs(zr)==="array"&&zr.length===0&&Pr.push(new cr(mr.key,zr,"array must have at least one stop")),Pr},default:function(mr){return mr.validateSpec({key:mr.key,value:mr.value,valueSpec:A,validateSpec:mr.validateSpec,style:mr.style,styleSpec:mr.styleSpec})}}});return F==="identity"&&ze&&Lt.push(new cr(R.key,R.value,'missing required property "property"')),F==="identity"||R.value.stops||Lt.push(new cr(R.key,R.value,'missing required property "stops"')),F==="exponential"&&R.valueSpec.expression&&!Rc(R.valueSpec)&&Lt.push(new cr(R.key,R.value,"exponential functions not supported")),R.styleSpec.$version>=8&&(Ke&&!Nl(R.valueSpec)?Lt.push(new cr(R.key,R.value,"property functions not supported")):ze&&!Kc(R.valueSpec)&&Lt.push(new cr(R.key,R.value,"zoom functions not supported"))),F!=="categorical"&&!ct||R.value.property!==void 0||Lt.push(new cr(R.key,R.value,'"property" property is required')),Lt;function $t(mr){let Pr=[],zr=mr.value,ui=mr.key;if(gs(zr)!=="array")return[new cr(ui,zr,`array expected, ${gs(zr)} found`)];if(zr.length!==2)return[new cr(ui,zr,`array length 2 expected, length ${zr.length} found`)];if(ct){if(gs(zr[0])!=="object")return[new cr(ui,zr,`object expected, ${gs(zr[0])} found`)];if(zr[0].zoom===void 0)return[new cr(ui,zr,"object stop key must have zoom")];if(zr[0].value===void 0)return[new cr(ui,zr,"object stop key must have value")];if(fe&&fe>Cs(zr[0].zoom))return[new cr(ui,zr[0].zoom,"stop zoom values must appear in ascending order")];Cs(zr[0].zoom)!==fe&&(fe=Cs(zr[0].zoom),re=void 0,pe={}),Pr=Pr.concat(ku({key:`${ui}[0]`,value:zr[0],valueSpec:{zoom:{}},validateSpec:mr.validateSpec,style:mr.style,styleSpec:mr.styleSpec,objectElementValidators:{zoom:Us,value:fr}}))}else Pr=Pr.concat(fr({key:`${ui}[0]`,value:zr[0],valueSpec:{},validateSpec:mr.validateSpec,style:mr.style,styleSpec:mr.styleSpec},zr));return Dc(du(zr[1]))?Pr.concat([new cr(`${ui}[1]`,zr[1],"expressions are not allowed in function stops.")]):Pr.concat(mr.validateSpec({key:`${ui}[1]`,value:zr[1],valueSpec:A,validateSpec:mr.validateSpec,style:mr.style,styleSpec:mr.styleSpec}))}function fr(mr,Pr){let zr=gs(mr.value),ui=Cs(mr.value),yi=mr.value!==null?mr.value:Pr;if(W){if(zr!==W)return[new cr(mr.key,yi,`${zr} stop domain type must match previous stop domain type ${W}`)]}else W=zr;if(zr!=="number"&&zr!=="string"&&zr!=="boolean")return[new cr(mr.key,yi,"stop domain value must be a number, string, or boolean")];if(zr!=="number"&&F!=="categorical"){let vn=`number expected, ${zr} found`;return Nl(A)&&F===void 0&&(vn+='\nIf you intended to use a categorical function, specify `"type": "categorical"`.'),[new cr(mr.key,yi,vn)]}return F!=="categorical"||zr!=="number"||isFinite(ui)&&Math.floor(ui)===ui?F!=="categorical"&&zr==="number"&&re!==void 0&&ui<re?[new cr(mr.key,yi,"stop domain values must appear in ascending order")]:(re=ui,F==="categorical"&&ui in pe?[new cr(mr.key,yi,"stop domain values must be unique")]:(pe[ui]=!0,[])):[new cr(mr.key,yi,`integer expected, found ${ui}`)]}}function zc(R){let A=(R.expressionContext==="property"?_u:ks)(du(R.value),R.valueSpec);if(A.result==="error")return A.value.map(W=>new cr(`${R.key}${W.key}`,R.value,W.message));let F=A.value.expression||A.value._styleExpression.expression;if(R.expressionContext==="property"&&R.propertyKey==="text-font"&&!F.outputDefined())return[new cr(R.key,R.value,`Invalid data expression for "${R.propertyKey}". Output values must be contained as literals within the expression.`)];if(R.expressionContext==="property"&&R.propertyType==="layout"&&!ju(F))return[new cr(R.key,R.value,'"feature-state" data expressions are not supported with layout properties.')];if(R.expressionContext==="filter"&&!ju(F))return[new cr(R.key,R.value,'"feature-state" data expressions are not supported with filters.')];if(R.expressionContext&&R.expressionContext.indexOf("cluster")===0){if(!Hf(F,["zoom","feature-state"]))return[new cr(R.key,R.value,'"zoom" and "feature-state" expressions are not supported with cluster properties.')];if(R.expressionContext==="cluster-initial"&&!th(F))return[new cr(R.key,R.value,"Feature data expressions are not supported with initial expression part of cluster properties.")]}return[]}function Wu(R){let A=R.key,F=R.value,W=R.valueSpec,re=[];return Array.isArray(W.values)?W.values.indexOf(Cs(F))===-1&&re.push(new cr(A,F,`expected one of [${W.values.join(", ")}], ${JSON.stringify(F)} found`)):Object.keys(W.values).indexOf(Cs(F))===-1&&re.push(new cr(A,F,`expected one of [${Object.keys(W.values).join(", ")}], ${JSON.stringify(F)} found`)),re}function Rf(R){return Ah(du(R.value))?zc($e({},R,{expressionContext:"filter",valueSpec:{value:"boolean"}})):Xu(R)}function Xu(R){let A=R.value,F=R.key;if(gs(A)!=="array")return[new cr(F,A,`array expected, ${gs(A)} found`)];let W=R.styleSpec,re,fe=[];if(A.length<1)return[new cr(F,A,"filter array must have at least 1 element")];switch(fe=fe.concat(Wu({key:`${F}[0]`,value:A[0],valueSpec:W.filter_operator,style:R.style,styleSpec:R.styleSpec})),Cs(A[0])){case"<":case"<=":case">":case">=":A.length>=2&&Cs(A[1])==="$type"&&fe.push(new cr(F,A,`"$type" cannot be use with operator "${A[0]}"`));case"==":case"!=":A.length!==3&&fe.push(new cr(F,A,`filter array for operator "${A[0]}" must have 3 elements`));case"in":case"!in":A.length>=2&&(re=gs(A[1]),re!=="string"&&fe.push(new cr(`${F}[1]`,A[1],`string expected, ${re} found`)));for(let pe=2;pe<A.length;pe++)re=gs(A[pe]),Cs(A[1])==="$type"?fe=fe.concat(Wu({key:`${F}[${pe}]`,value:A[pe],valueSpec:W.geometry_type,style:R.style,styleSpec:R.styleSpec})):re!=="string"&&re!=="number"&&re!=="boolean"&&fe.push(new cr(`${F}[${pe}]`,A[pe],`string, number, or boolean expected, ${re} found`));break;case"any":case"all":case"none":for(let pe=1;pe<A.length;pe++)fe=fe.concat(Xu({key:`${F}[${pe}]`,value:A[pe],style:R.style,styleSpec:R.styleSpec}));break;case"has":case"!has":re=gs(A[1]),A.length!==2?fe.push(new cr(F,A,`filter array for "${A[0]}" operator must have 2 elements`)):re!=="string"&&fe.push(new cr(`${F}[1]`,A[1],`string expected, ${re} found`))}return fe}function uf(R,A){let F=R.key,W=R.validateSpec,re=R.style,fe=R.styleSpec,pe=R.value,ze=R.objectKey,Ke=fe[`${A}_${R.layerType}`];if(!Ke)return[];let ct=ze.match(/^(.*)-transition$/);if(A==="paint"&&ct&&Ke[ct[1]]&&Ke[ct[1]].transition)return W({key:F,value:pe,valueSpec:fe.transition,style:re,styleSpec:fe});let Lt=R.valueSpec||Ke[ze];if(!Lt)return[new cr(F,pe,`unknown property "${ze}"`)];let $t;if(gs(pe)==="string"&&Nl(Lt)&&!Lt.tokens&&($t=/^{([^}]+)}$/.exec(pe)))return[new cr(F,pe,`"${ze}" does not support interpolation syntax
Use an identity property function instead: \`{ "type": "identity", "property": ${JSON.stringify($t[1])} }\`.`)];let fr=[];return R.layerType==="symbol"&&(ze==="text-field"&&re&&!re.glyphs&&fr.push(new cr(F,pe,'use of "text-field" requires a style "glyphs" property')),ze==="text-font"&&jf(du(pe))&&Cs(pe.type)==="identity"&&fr.push(new cr(F,pe,'"text-font" does not support identity functions'))),fr.concat(W({key:R.key,value:pe,valueSpec:Lt,style:re,styleSpec:fe,expressionContext:"property",propertyType:A,propertyKey:ze}))}function Xf(R){return uf(R,"paint")}function Wl(R){return uf(R,"layout")}function ah(R){let A=[],F=R.value,W=R.key,re=R.style,fe=R.styleSpec;F.type||F.ref||A.push(new cr(W,F,'either "type" or "ref" is required'));let pe=Cs(F.type),ze=Cs(F.ref);if(F.id){let Ke=Cs(F.id);for(let ct=0;ct<R.arrayIndex;ct++){let Lt=re.layers[ct];Cs(Lt.id)===Ke&&A.push(new cr(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(ct=>{ct in F&&A.push(new cr(W,F[ct],`"${ct}" is prohibited for ref layers`))}),re.layers.forEach(ct=>{Cs(ct.id)===ze&&(Ke=ct)}),Ke?Ke.ref?A.push(new cr(W,F.ref,"ref cannot reference another ref layer")):pe=Cs(Ke.type):A.push(new cr(W,F.ref,`ref layer "${ze}" not found`))}else if(pe!=="background")if(F.source){let Ke=re.sources&&re.sources[F.source],ct=Ke&&Cs(Ke.type);Ke?ct==="vector"&&pe==="raster"?A.push(new cr(W,F.source,`layer "${F.id}" requires a raster source`)):ct!=="raster-dem"&&pe==="hillshade"?A.push(new cr(W,F.source,`layer "${F.id}" requires a raster-dem source`)):ct==="raster"&&pe!=="raster"?A.push(new cr(W,F.source,`layer "${F.id}" requires a vector source`)):ct!=="vector"||F["source-layer"]?ct==="raster-dem"&&pe!=="hillshade"?A.push(new cr(W,F.source,"raster-dem source can only be used with layer type 'hillshade'.")):pe!=="line"||!F.paint||!F.paint["line-gradient"]||ct==="geojson"&&Ke.lineMetrics||A.push(new cr(W,F,`layer "${F.id}" specifies a line-gradient, which requires a GeoJSON source with \`lineMetrics\` enabled.`)):A.push(new cr(W,F,`layer "${F.id}" must specify a "source-layer"`)):A.push(new cr(W,F.source,`source "${F.source}" not found`))}else A.push(new cr(W,F,'missing required property "source"'));return A=A.concat(ku({key:W,value:F,valueSpec:fe.layer,style:R.style,styleSpec:R.styleSpec,validateSpec:R.validateSpec,objectElementValidators:{"*":()=>[],type:()=>R.validateSpec({key:`${W}.type`,value:F.type,valueSpec:fe.layer.type,style:R.style,styleSpec:R.styleSpec,validateSpec:R.validateSpec,object:F,objectKey:"type"}),filter:Rf,layout:Ke=>ku({layer:F,key:Ke.key,value:Ke.value,style:Ke.style,styleSpec:Ke.styleSpec,validateSpec:Ke.validateSpec,objectElementValidators:{"*":ct=>Wl($e({layerType:pe},ct))}}),paint:Ke=>ku({layer:F,key:Ke.key,value:Ke.value,style:Ke.style,styleSpec:Ke.styleSpec,validateSpec:Ke.validateSpec,objectElementValidators:{"*":ct=>Xf($e({layerType:pe},ct))}})}})),A}function Zu(R){let A=R.value,F=R.key,W=gs(A);return W!=="string"?[new cr(F,A,`string expected, ${W} found`)]:[]}let Oc={promoteId:function({key:R,value:A}){if(gs(A)==="string")return Zu({key:R,value:A});{let F=[];for(let W in A)F.push(...Zu({key:`${R}.${W}`,value:A[W]}));return F}}};function Tc(R){let A=R.value,F=R.key,W=R.styleSpec,re=R.style,fe=R.validateSpec;if(!A.type)return[new cr(F,A,'"type" is required')];let pe=Cs(A.type),ze;switch(pe){case"vector":case"raster":return ze=ku({key:F,value:A,valueSpec:W[`source_${pe.replace("-","_")}`],style:R.style,styleSpec:W,objectElementValidators:Oc,validateSpec:fe}),ze;case"raster-dem":return ze=function(Ke){var ct;let Lt=(ct=Ke.sourceName)!==null&&ct!==void 0?ct:"",$t=Ke.value,fr=Ke.styleSpec,mr=fr.source_raster_dem,Pr=Ke.style,zr=[],ui=gs($t);if($t===void 0)return zr;if(ui!=="object")return zr.push(new cr("source_raster_dem",$t,`object expected, ${ui} found`)),zr;let yi=Cs($t.encoding)==="custom",vn=["redFactor","greenFactor","blueFactor","baseShift"],zi=Ke.value.encoding?`"${Ke.value.encoding}"`:"Default";for(let un in $t)!yi&&vn.includes(un)?zr.push(new cr(un,$t[un],`In "${Lt}": "${un}" is only valid when "encoding" is set to "custom". ${zi} encoding found`)):mr[un]?zr=zr.concat(Ke.validateSpec({key:un,value:$t[un],valueSpec:mr[un],validateSpec:Ke.validateSpec,style:Pr,styleSpec:fr})):zr.push(new cr(un,$t[un],`unknown property "${un}"`));return zr}({sourceName:F,value:A,style:R.style,styleSpec:W,validateSpec:fe}),ze;case"geojson":if(ze=ku({key:F,value:A,valueSpec:W.source_geojson,style:re,styleSpec:W,validateSpec:fe,objectElementValidators:Oc}),A.cluster)for(let Ke in A.clusterProperties){let[ct,Lt]=A.clusterProperties[Ke],$t=typeof ct=="string"?[ct,["accumulated"],["get",Ke]]:ct;ze.push(...zc({key:`${F}.${Ke}.map`,value:Lt,validateSpec:fe,expressionContext:"cluster-map"})),ze.push(...zc({key:`${F}.${Ke}.reduce`,value:$t,validateSpec:fe,expressionContext:"cluster-reduce"}))}return ze;case"video":return ku({key:F,value:A,valueSpec:W.source_video,style:re,validateSpec:fe,styleSpec:W});case"image":return ku({key:F,value:A,valueSpec:W.source_image,style:re,validateSpec:fe,styleSpec:W});case"canvas":return[new cr(F,null,"Please use runtime APIs to add canvas sources, rather than including them in stylesheets.","source.canvas")];default:return Wu({key:`${F}.type`,value:A.type,valueSpec:{values:["vector","raster","raster-dem","geojson","video","image"]},style:re,validateSpec:fe,styleSpec:W})}}function wl(R){let A=R.value,F=R.styleSpec,W=F.light,re=R.style,fe=[],pe=gs(A);if(A===void 0)return fe;if(pe!=="object")return fe=fe.concat([new cr("light",A,`object expected, ${pe} found`)]),fe;for(let ze in A){let Ke=ze.match(/^(.*)-transition$/);fe=fe.concat(Ke&&W[Ke[1]]&&W[Ke[1]].transition?R.validateSpec({key:ze,value:A[ze],valueSpec:F.transition,validateSpec:R.validateSpec,style:re,styleSpec:F}):W[ze]?R.validateSpec({key:ze,value:A[ze],valueSpec:W[ze],validateSpec:R.validateSpec,style:re,styleSpec:F}):[new cr(ze,A[ze],`unknown property "${ze}"`)])}return fe}function vu(R){let A=R.value,F=R.styleSpec,W=F.sky,re=R.style,fe=gs(A);if(A===void 0)return[];if(fe!=="object")return[new cr("sky",A,`object expected, ${fe} found`)];let pe=[];for(let ze in A)pe=pe.concat(W[ze]?R.validateSpec({key:ze,value:A[ze],valueSpec:W[ze],style:re,styleSpec:F}):[new cr(ze,A[ze],`unknown property "${ze}"`)]);return pe}function qc(R){let A=R.value,F=R.styleSpec,W=F.terrain,re=R.style,fe=[],pe=gs(A);if(A===void 0)return fe;if(pe!=="object")return fe=fe.concat([new cr("terrain",A,`object expected, ${pe} found`)]),fe;for(let ze in A)fe=fe.concat(W[ze]?R.validateSpec({key:ze,value:A[ze],valueSpec:W[ze],validateSpec:R.validateSpec,style:re,styleSpec:F}):[new cr(ze,A[ze],`unknown property "${ze}"`)]);return fe}function cf(R){let A=[],F=R.value,W=R.key;if(Array.isArray(F)){let re=[],fe=[];for(let pe in F)F[pe].id&&re.includes(F[pe].id)&&A.push(new cr(W,F,`all the sprites' ids must be unique, but ${F[pe].id} is duplicated`)),re.push(F[pe].id),F[pe].url&&fe.includes(F[pe].url)&&A.push(new cr(W,F,`all the sprites' URLs must be unique, but ${F[pe].url} is duplicated`)),fe.push(F[pe].url),A=A.concat(ku({key:`${W}[${pe}]`,value:F[pe],valueSpec:{id:{type:"string",required:!0},url:{type:"string",required:!0}},validateSpec:R.validateSpec}));return A}return Zu({key:W,value:F})}let fc={"*":()=>[],array:Wf,boolean:function(R){let A=R.value,F=R.key,W=gs(A);return W!=="boolean"?[new cr(F,A,`boolean expected, ${W} found`)]:[]},number:Us,color:function(R){let A=R.key,F=R.value,W=gs(F);return W!=="string"?[new cr(A,F,`color expected, ${W} found`)]:nr.parse(String(F))?[]:[new cr(A,F,`color expected, "${F}" found`)]},constants:If,enum:Wu,filter:Rf,function:wf,layer:ah,object:ku,source:Tc,light:wl,sky:vu,terrain:qc,projection:function(R){let A=R.value,F=R.styleSpec,W=F.projection,re=R.style,fe=gs(A);if(A===void 0)return[];if(fe!=="object")return[new cr("projection",A,`object expected, ${fe} found`)];let pe=[];for(let ze in A)pe=pe.concat(W[ze]?R.validateSpec({key:ze,value:A[ze],valueSpec:W[ze],style:re,styleSpec:F}):[new cr(ze,A[ze],`unknown property "${ze}"`)]);return pe},string:Zu,formatted:function(R){return Zu(R).length===0?[]:zc(R)},resolvedImage:function(R){return Zu(R).length===0?[]:zc(R)},padding:function(R){let A=R.key,F=R.value;if(gs(F)==="array"){if(F.length<1||F.length>4)return[new cr(A,F,`padding requires 1 to 4 values; ${F.length} values found`)];let W={type:"number"},re=[];for(let fe=0;fe<F.length;fe++)re=re.concat(R.validateSpec({key:`${A}[${fe}]`,value:F[fe],validateSpec:R.validateSpec,valueSpec:W}));return re}return Us({key:A,value:F,valueSpec:{}})},variableAnchorOffsetCollection:function(R){let A=R.key,F=R.value,W=gs(F),re=R.styleSpec;if(W!=="array"||F.length<1||F.length%2!=0)return[new cr(A,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:`${A}[${pe}]`,value:F[pe],valueSpec:re.layout_symbol["text-anchor"]})),fe=fe.concat(Wf({key:`${A}[${pe+1}]`,value:F[pe+1],valueSpec:{length:2,value:"number"},validateSpec:R.validateSpec,style:R.style,styleSpec:re}));return fe},sprite:cf};function Bc(R){let A=R.value,F=R.valueSpec,W=R.styleSpec;return R.validateSpec=Bc,F.expression&&jf(Cs(A))?wf(R):F.expression&&Dc(du(A))?zc(R):F.type&&fc[F.type]?fc[F.type](R):ku($e({},R,{valueSpec:F.type?W[F.type]:F}))}function At(R){let A=R.value,F=R.key,W=Zu(R);return W.length||(A.indexOf("{fontstack}")===-1&&W.push(new cr(F,A,'"glyphs" url must include a "{fontstack}" token')),A.indexOf("{range}")===-1&&W.push(new cr(F,A,'"glyphs" url must include a "{range}" token'))),W}function Wt(R,A=ce){let F=[];return F=F.concat(Bc({key:"",value:R,valueSpec:A.$root,styleSpec:A,style:R,validateSpec:Bc,objectElementValidators:{glyphs:At,"*":()=>[]}})),R.constants&&(F=F.concat(If({key:"constants",value:R.constants,style:R,styleSpec:A,validateSpec:Bc}))),Ar(F)}function Cr(R){return function(A){return R(q1(mg({},A),{validateSpec:Bc}))}}function Ar(R){return[].concat(R).sort((A,F)=>A.line-F.line)}function Kr(R){return function(...A){return Ar(R.apply(this,A))}}Wt.source=Kr(Cr(Tc)),Wt.sprite=Kr(Cr(cf)),Wt.glyphs=Kr(Cr(At)),Wt.light=Kr(Cr(wl)),Wt.sky=Kr(Cr(vu)),Wt.terrain=Kr(Cr(qc)),Wt.layer=Kr(Cr(ah)),Wt.filter=Kr(Cr(Rf)),Wt.paintProperty=Kr(Cr(Xf)),Wt.layoutProperty=Kr(Cr(Wl));let ki=Wt,Xi=ki.light,dn=ki.sky,wn=ki.paintProperty,Nn=ki.layoutProperty;function Yi(R,A){let F=!1;if(A&&A.length)for(let W of A)R.fire(new ge(new Error(W.message))),F=!0;return F}class Qi{constructor(A,F,W){let re=this.cells=[];if(A instanceof ArrayBuffer){this.arrayBuffer=A;let pe=new Int32Array(this.arrayBuffer);A=pe[0],this.d=(F=pe[1])+2*(W=pe[2]);for(let Ke=0;Ke<this.d*this.d;Ke++){let ct=pe[3+Ke],Lt=pe[3+Ke+1];re.push(ct===Lt?null:pe.subarray(ct,Lt))}let ze=pe[3+re.length+1];this.keys=pe.subarray(pe[3+re.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++)re.push([]);this.keys=[],this.bboxes=[]}this.n=F,this.extent=A,this.padding=W,this.scale=F/A,this.uid=0;let fe=W/F*A;this.min=-fe,this.max=A+fe}insert(A,F,W,re,fe){this._forEachCell(F,W,re,fe,this._insertCell,this.uid++,void 0,void 0),this.keys.push(A),this.bboxes.push(F),this.bboxes.push(W),this.bboxes.push(re),this.bboxes.push(fe)}_insertReadonly(){throw new Error("Cannot insert into a GridIndex created from an ArrayBuffer.")}_insertCell(A,F,W,re,fe,pe){this.cells[fe].push(pe)}query(A,F,W,re,fe){let pe=this.min,ze=this.max;if(A<=pe&&F<=pe&&ze<=W&&ze<=re&&!fe)return Array.prototype.slice.call(this.keys);{let Ke=[];return this._forEachCell(A,F,W,re,this._queryCell,Ke,{},fe),Ke}}_queryCell(A,F,W,re,fe,pe,ze,Ke){let ct=this.cells[fe];if(ct!==null){let Lt=this.keys,$t=this.bboxes;for(let fr=0;fr<ct.length;fr++){let mr=ct[fr];if(ze[mr]===void 0){let Pr=4*mr;(Ke?Ke($t[Pr+0],$t[Pr+1],$t[Pr+2],$t[Pr+3]):A<=$t[Pr+2]&&F<=$t[Pr+3]&&W>=$t[Pr+0]&&re>=$t[Pr+1])?(ze[mr]=!0,pe.push(Lt[mr])):ze[mr]=!1}}}}_forEachCell(A,F,W,re,fe,pe,ze,Ke){let ct=this._convertToCellCoord(A),Lt=this._convertToCellCoord(F),$t=this._convertToCellCoord(W),fr=this._convertToCellCoord(re);for(let mr=ct;mr<=$t;mr++)for(let Pr=Lt;Pr<=fr;Pr++){let zr=this.d*Pr+mr;if((!Ke||Ke(this._convertFromCellCoord(mr),this._convertFromCellCoord(Pr),this._convertFromCellCoord(mr+1),this._convertFromCellCoord(Pr+1)))&&fe.call(this,A,F,W,re,zr,pe,ze,Ke))return}}_convertFromCellCoord(A){return(A-this.padding)/this.scale}_convertToCellCoord(A){return Math.max(0,Math.min(this.d-1,Math.floor(A*this.scale)+this.padding))}toArrayBuffer(){if(this.arrayBuffer)return this.arrayBuffer;let A=this.cells,F=3+this.cells.length+1+1,W=0;for(let pe=0;pe<this.cells.length;pe++)W+=this.cells[pe].length;let re=new Int32Array(F+W+this.keys.length+this.bboxes.length);re[0]=this.extent,re[1]=this.n,re[2]=this.padding;let fe=F;for(let pe=0;pe<A.length;pe++){let ze=A[pe];re[3+pe]=fe,re.set(ze,fe),fe+=ze.length}return re[3+A.length]=fe,re.set(this.keys,fe),fe+=this.keys.length,re[3+A.length+1]=fe,re.set(this.bboxes,fe),fe+=this.bboxes.length,re.buffer}static serialize(A,F){let W=A.toArrayBuffer();return F&&F.push(W),{buffer:W}}static deserialize(A){return new Qi(A.buffer)}}let on={};function Fi(R,A,F={}){if(on[R])throw new Error(`${R} is already registered.`);Object.defineProperty(A,"_classRegistryKey",{value:R,writeable:!1}),on[R]={klass:A,omit:F.omit||[],shallow:F.shallow||[]}}Fi("Object",Object),Fi("TransferableGridIndex",Qi),Fi("Color",nr),Fi("Error",Error),Fi("AJAXError",me),Fi("ResolvedImage",tn),Fi("StylePropertyFunction",nl),Fi("StyleExpression",Eu,{omit:["_evaluator"]}),Fi("ZoomDependentExpression",hu),Fi("ZoomConstantExpression",bc),Fi("CompoundExpression",Bl,{omit:["_evaluate"]});for(let R in yf)yf[R]._classRegistryKey||Fi(`Expression_${R}`,yf[R]);function $n(R){return R&&typeof ArrayBuffer!="undefined"&&(R instanceof ArrayBuffer||R.constructor&&R.constructor.name==="ArrayBuffer")}function Ca(R){return R.$name||R.constructor._classRegistryKey}function Ra(R){return!function(A){if(A===null||typeof A!="object")return!1;let F=Ca(A);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,A){if(Ra(R))return($n(R)||G(R))&&A&&A.push(R),ArrayBuffer.isView(R)&&A&&A.push(R.buffer),R instanceof ImageData&&A&&A.push(R.data.buffer),R;if(Array.isArray(R)){let fe=[];for(let pe of R)fe.push(La(pe,A));return fe}if(typeof R!="object")throw new Error("can't serialize object of type "+typeof R);let F=Ca(R);if(!F)throw new Error(`can't serialize object of unregistered class ${R.constructor.name}`);if(!on[F])throw new Error(`${F} is not registered.`);let{klass:W}=on[F],re=W.serialize?W.serialize(R,A):{};if(W.serialize){if(A&&re===A[A.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)||on[F].omit.indexOf(fe)>=0)continue;let pe=R[fe];re[fe]=on[F].shallow.indexOf(fe)>=0?pe:La(pe,A)}R instanceof Error&&(re.message=R.message)}if(re.$name)throw new Error("$name property is reserved for worker serialization logic.");return F!=="Object"&&(re.$name=F),re}function Na(R){if(Ra(R))return R;if(Array.isArray(R))return R.map(Na);if(typeof R!="object")throw new Error("can't deserialize object of type "+typeof R);let A=Ca(R)||"Object";if(!on[A])throw new Error(`can't deserialize unregistered class ${A}`);let{klass:F}=on[A];if(!F)throw new Error(`can't deserialize unregistered class ${A}`);if(F.deserialize)return F.deserialize(R);let W=Object.create(F.prototype);for(let re of Object.keys(R)){if(re==="$name")continue;let fe=R[re];W[re]=on[A].shallow.indexOf(re)>=0?fe:Na(fe)}return W}class Yn{constructor(){this.first=!0}update(A,F){let W=Math.floor(A);return this.first?(this.first=!1,this.lastIntegerZoom=W,this.lastIntegerZoomTime=0,this.lastZoom=A,this.lastFloorZoom=W,!0):(this.lastFloorZoom>W?(this.lastIntegerZoom=W+1,this.lastIntegerZoomTime=F):this.lastFloorZoom<W&&(this.lastIntegerZoom=W,this.lastIntegerZoomTime=F),A!==this.lastZoom&&(this.lastZoom=A,this.lastFloorZoom=W,!0))}}let Dn={"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 A of R)if(Ho(A.charCodeAt(0)))return!0;return!1}function bo(R){for(let A of R)if(!as(A.charCodeAt(0)))return!1;return!0}function Xo(R){let A=R.map(F=>{try{return new RegExp(`\\p{sc=${F}}`,"u").source}catch(W){return null}}).filter(F=>F);return new RegExp(A.join("|"),"u")}let Ss=Xo(["Arab","Dupl","Mong","Ougr","Syrc"]);function as(R){return!Ss.test(String.fromCodePoint(R))}let ws=Xo(["Bopo","Hani","Hira","Kana","Kits","Nshu","Tang","Yiii"]);function Ho(R){return!(R!==746&&R!==747&&(R<4352||!(Dn["CJK Compatibility Forms"](R)&&!(R>=65097&&R<=65103)||Dn["CJK Compatibility"](R)||Dn["CJK Strokes"](R)||!(!Dn["CJK Symbols and Punctuation"](R)||R>=12296&&R<=12305||R>=12308&&R<=12319||R===12336)||Dn["Enclosed CJK Letters and Months"](R)||Dn["Ideographic Description Characters"](R)||Dn.Kanbun(R)||Dn.Katakana(R)&&R!==12540||!(!Dn["Halfwidth and Fullwidth Forms"](R)||R===65288||R===65289||R===65293||R>=65306&&R<=65310||R===65339||R===65341||R===65343||R>=65371&&R<=65503||R===65507||R>=65512&&R<=65519)||!(!Dn["Small Form Variants"](R)||R>=65112&&R<=65118||R>=65123&&R<=65126)||Dn["Vertical Forms"](R)||Dn["Yijing Hexagram Symbols"](R)||new RegExp("\\p{sc=Cans}","u").test(String.fromCodePoint(R))||new RegExp("\\p{sc=Hang}","u").test(String.fromCodePoint(R))||ws.test(String.fromCodePoint(R)))))}function ml(R){return!(Ho(R)||function(A){return!!(Dn["Latin-1 Supplement"](A)&&(A===167||A===169||A===174||A===177||A===188||A===189||A===190||A===215||A===247)||Dn["General Punctuation"](A)&&(A===8214||A===8224||A===8225||A===8240||A===8241||A===8251||A===8252||A===8258||A===8263||A===8264||A===8265||A===8273)||Dn["Letterlike Symbols"](A)||Dn["Number Forms"](A)||Dn["Miscellaneous Technical"](A)&&(A>=8960&&A<=8967||A>=8972&&A<=8991||A>=8996&&A<=9e3||A===9003||A>=9085&&A<=9114||A>=9150&&A<=9165||A===9167||A>=9169&&A<=9179||A>=9186&&A<=9215)||Dn["Control Pictures"](A)&&A!==9251||Dn["Optical Character Recognition"](A)||Dn["Enclosed Alphanumerics"](A)||Dn["Geometric Shapes"](A)||Dn["Miscellaneous Symbols"](A)&&!(A>=9754&&A<=9759)||Dn["Miscellaneous Symbols and Arrows"](A)&&(A>=11026&&A<=11055||A>=11088&&A<=11097||A>=11192&&A<=11243)||Dn["CJK Symbols and Punctuation"](A)||Dn.Katakana(A)||Dn["Private Use Area"](A)||Dn["CJK Compatibility Forms"](A)||Dn["Small Form Variants"](A)||Dn["Halfwidth and Fullwidth Forms"](A)||A===8734||A===8756||A===8757||A>=9984&&A<=10087||A>=10102&&A<=10131||A===65532||A===65533)}(R))}let Ws=Xo(["Adlm","Arab","Armi","Avst","Chrs","Cprt","Egyp","Elym","Gara","Hatr","Hebr","Hung","Khar","Lydi","Mand","Mani","Mend","Merc","Mero","Narb","Nbat","Nkoo","Orkh","Palm","Phli","Phlp","Phnx","Prti","Rohg","Samr","Sarb","Sogo","Syrc","Thaa","Todr","Yezi"]);function Ls(R){return Ws.test(String.fromCodePoint(R))}function va(R,A){return!(!A&&Ls(R)||R>=2304&&R<=3583||R>=3840&&R<=4255||Dn.Khmer(R))}function no(R){for(let A of R)if(Ls(A.charCodeAt(0)))return!0;return!1}let ys=new class{constructor(){this.applyArabicShaping=null,this.processBidirectionalText=null,this.processStyledBidirectionalText=null,this.pluginStatus="unavailable",this.pluginURL=null}setState(R){this.pluginStatus=R.pluginStatus,this.pluginURL=R.pluginURL}getState(){return{pluginStatus:this.pluginStatus,pluginURL:this.pluginURL}}setMethods(R){this.applyArabicShaping=R.applyArabicShaping,this.processBidirectionalText=R.processBidirectionalText,this.processStyledBidirectionalText=R.processStyledBidirectionalText}isParsed(){return this.applyArabicShaping!=null&&this.processBidirectionalText!=null&&this.processStyledBidirectionalText!=null}getPluginURL(){return this.pluginURL}getRTLTextPluginStatus(){return this.pluginStatus}};class rs{constructor(A,F){this.zoom=A,F?(this.now=F.now,this.fadeDuration=F.fadeDuration,this.zoomHistory=F.zoomHistory,this.transition=F.transition):(this.now=0,this.fadeDuration=0,this.zoomHistory=new Yn,this.transition={})}isSupportedScript(A){return function(F,W){for(let re of F)if(!va(re.charCodeAt(0),W))return!1;return!0}(A,ys.getRTLTextPluginStatus()==="loaded")}crossFadingFactor(){return this.fadeDuration===0?1:Math.min((this.now-this.zoomHistory.lastIntegerZoomTime)/this.fadeDuration,1)}getCrossfadeParameters(){let A=this.zoom,F=A-Math.floor(A),W=this.crossFadingFactor();return A>this.zoomHistory.lastIntegerZoom?{fromScale:2,toScale:1,t:F+(1-F)*W}:{fromScale:.5,toScale:1,t:1-(1-W)*F}}}class $l{constructor(A,F){this.property=A,this.value=F,this.expression=function(W,re){if(jf(W))return new nl(W,re);if(Dc(W)){let fe=_u(W,re);if(fe.result==="error")throw new Error(fe.value.map(pe=>`${pe.key}: ${pe.message}`).join(", "));return fe.value}{let fe=W;return re.type==="color"&&typeof W=="string"?fe=nr.parse(W):re.type!=="padding"||typeof W!="number"&&!Array.isArray(W)?re.type==="variableAnchorOffsetCollection"&&Array.isArray(W)&&(fe=$i.parse(W)):fe=Qr.parse(W),{kind:"constant",evaluate:()=>fe}}}(F===void 0?A.specification.default:F,A.specification)}isDataDriven(){return this.expression.kind==="source"||this.expression.kind==="composite"}possiblyEvaluate(A,F,W){return this.property.possiblyEvaluate(this,A,F,W)}}class Cu{constructor(A){this.property=A,this.value=new $l(A,void 0)}transitioned(A,F){return new Nc(this.property,this.value,F,L({},A.transition,this.transition),A.now)}untransitioned(){return new Nc(this.property,this.value,null,{},0)}}class Yu{constructor(A){this._properties=A,this._values=Object.create(A.defaultTransitionablePropertyValues)}getValue(A){return g(this._values[A].value.value)}setValue(A,F){Object.prototype.hasOwnProperty.call(this._values,A)||(this._values[A]=new Cu(this._values[A].property)),this._values[A].value=new $l(this._values[A].property,F===null?void 0:g(F))}getTransition(A){return g(this._values[A].transition)}setTransition(A,F){Object.prototype.hasOwnProperty.call(this._values,A)||(this._values[A]=new Cu(this._values[A].property)),this._values[A].transition=g(F)||void 0}serialize(){let A={};for(let F of Object.keys(this._values)){let W=this.getValue(F);W!==void 0&&(A[F]=W);let re=this.getTransition(F);re!==void 0&&(A[`${F}-transition`]=re)}return A}transitioned(A,F){let W=new pu(this._properties);for(let re of Object.keys(this._values))W._values[re]=this._values[re].transitioned(A,F._values[re]);return W}untransitioned(){let A=new pu(this._properties);for(let F of Object.keys(this._values))A._values[F]=this._values[F].untransitioned();return A}}class Nc{constructor(A,F,W,re,fe){this.property=A,this.value=F,this.begin=fe+re.delay||0,this.end=this.begin+re.duration||0,A.specification.transition&&(re.delay||re.duration)&&(this.prior=W)}possiblyEvaluate(A,F,W){let re=A.now||0,fe=this.value.possiblyEvaluate(A,F,W),pe=this.prior;if(pe){if(re>this.end)return this.prior=null,fe;if(this.value.isDataDriven())return this.prior=null,fe;if(re<this.begin)return pe.possiblyEvaluate(A,F,W);{let ze=(re-this.begin)/(this.end-this.begin);return this.property.interpolate(pe.possiblyEvaluate(A,F,W),fe,function(Ke){if(Ke<=0)return 0;if(Ke>=1)return 1;let ct=Ke*Ke,Lt=ct*Ke;return 4*(Ke<.5?Lt:3*(Ke-ct)+Lt-.75)}(ze))}}return fe}}class pu{constructor(A){this._properties=A,this._values=Object.create(A.defaultTransitioningPropertyValues)}possiblyEvaluate(A,F,W){let re=new Ac(this._properties);for(let fe of Object.keys(this._values))re._values[fe]=this._values[fe].possiblyEvaluate(A,F,W);return re}hasTransition(){for(let A of Object.keys(this._values))if(this._values[A].prior)return!0;return!1}}class Uc{constructor(A){this._properties=A,this._values=Object.create(A.defaultPropertyValues)}hasValue(A){return this._values[A].value!==void 0}getValue(A){return g(this._values[A].value)}setValue(A,F){this._values[A]=new $l(this._values[A].property,F===null?void 0:g(F))}serialize(){let A={};for(let F of Object.keys(this._values)){let W=this.getValue(F);W!==void 0&&(A[F]=W)}return A}possiblyEvaluate(A,F,W){let re=new Ac(this._properties);for(let fe of Object.keys(this._values))re._values[fe]=this._values[fe].possiblyEvaluate(A,F,W);return re}}class xu{constructor(A,F,W){this.property=A,this.value=F,this.parameters=W}isConstant(){return this.value.kind==="constant"}constantOr(A){return this.value.kind==="constant"?this.value.value:A}evaluate(A,F,W,re){return this.property.evaluate(this.value,this.parameters,A,F,W,re)}}class Ac{constructor(A){this._properties=A,this._values=Object.create(A.defaultPossiblyEvaluatedValues)}get(A){return this._values[A]}}class Ua{constructor(A){this.specification=A}possiblyEvaluate(A,F){if(A.isDataDriven())throw new Error("Value should not be data driven");return A.expression.evaluate(F)}interpolate(A,F,W){let re=Lo[this.specification.type];return re?re(A,F,W):A}}class oo{constructor(A,F){this.specification=A,this.overrides=F}possiblyEvaluate(A,F,W,re){return new xu(this,A.expression.kind==="constant"||A.expression.kind==="camera"?{kind:"constant",value:A.expression.evaluate(F,null,{},W,re)}:A.expression,F)}interpolate(A,F,W){if(A.value.kind!=="constant"||F.value.kind!=="constant")return A;if(A.value.value===void 0||F.value.value===void 0)return new xu(this,{kind:"constant",value:void 0},A.parameters);let re=Lo[this.specification.type];if(re){let fe=re(A.value.value,F.value.value,W);return new xu(this,{kind:"constant",value:fe},A.parameters)}return A}evaluate(A,F,W,re,fe,pe){return A.kind==="constant"?A.value:A.evaluate(F,W,re,fe,pe)}}class Vc extends oo{possiblyEvaluate(A,F,W,re){if(A.value===void 0)return new xu(this,{kind:"constant",value:void 0},F);if(A.expression.kind==="constant"){let fe=A.expression.evaluate(F,null,{},W,re),pe=A.property.specification.type==="resolvedImage"&&typeof fe!="string"?fe.name:fe,ze=this._calculate(pe,pe,pe,F);return new xu(this,{kind:"constant",value:ze},F)}if(A.expression.kind==="camera"){let fe=this._calculate(A.expression.evaluate({zoom:F.zoom-1}),A.expression.evaluate({zoom:F.zoom}),A.expression.evaluate({zoom:F.zoom+1}),F);return new xu(this,{kind:"constant",value:fe},F)}return new xu(this,A.expression,F)}evaluate(A,F,W,re,fe,pe){if(A.kind==="source"){let ze=A.evaluate(F,W,re,fe,pe);return this._calculate(ze,ze,ze,F)}return A.kind==="composite"?this._calculate(A.evaluate({zoom:Math.floor(F.zoom)-1},W,re),A.evaluate({zoom:Math.floor(F.zoom)},W,re),A.evaluate({zoom:Math.floor(F.zoom)+1},W,re),F):A.value}_calculate(A,F,W,re){return re.zoom>re.zoomHistory.lastIntegerZoom?{from:A,to:F}:{from:W,to:F}}interpolate(A){return A}}class hc{constructor(A){this.specification=A}possiblyEvaluate(A,F,W,re){if(A.value!==void 0){if(A.expression.kind==="constant"){let fe=A.expression.evaluate(F,null,{},W,re);return this._calculate(fe,fe,fe,F)}return this._calculate(A.expression.evaluate(new rs(Math.floor(F.zoom-1),F)),A.expression.evaluate(new rs(Math.floor(F.zoom),F)),A.expression.evaluate(new rs(Math.floor(F.zoom+1),F)),F)}}_calculate(A,F,W,re){return re.zoom>re.zoomHistory.lastIntegerZoom?{from:A,to:F}:{from:W,to:F}}interpolate(A){return A}}class Ku{constructor(A){this.specification=A}possiblyEvaluate(A,F,W,re){return!!A.expression.evaluate(F,null,{},W,re)}interpolate(){return!1}}class ue{constructor(A){this.properties=A,this.defaultPropertyValues={},this.defaultTransitionablePropertyValues={},this.defaultTransitioningPropertyValues={},this.defaultPossiblyEvaluatedValues={},this.overridableProperties=[];for(let F in A){let W=A[F];W.specification.overridable&&this.overridableProperties.push(F);let re=this.defaultPropertyValues[F]=new $l(W,void 0),fe=this.defaultTransitionablePropertyValues[F]=new Cu(W);this.defaultTransitioningPropertyValues[F]=fe.untransitioned(),this.defaultPossiblyEvaluatedValues[F]=re.possiblyEvaluate({})}}}Fi("DataDrivenProperty",oo),Fi("DataConstantProperty",Ua),Fi("CrossFadedDataDrivenProperty",Vc),Fi("CrossFadedProperty",hc),Fi("ColorRampProperty",Ku);let w="-transition";class B extends Re{constructor(A,F){if(super(),this.id=A.id,this.type=A.type,this._featureFilter={filter:()=>!0,needGeometry:!1},A.type!=="custom"&&(this.metadata=A.metadata,this.minzoom=A.minzoom,this.maxzoom=A.maxzoom,A.type!=="background"&&(this.source=A.source,this.sourceLayer=A["source-layer"],this.filter=A.filter),F.layout&&(this._unevaluatedLayout=new Uc(F.layout)),F.paint)){this._transitionablePaint=new Yu(F.paint);for(let W in A.paint)this.setPaintProperty(W,A.paint[W],{validate:!1});for(let W in A.layout)this.setLayoutProperty(W,A.layout[W],{validate:!1});this._transitioningPaint=this._transitionablePaint.untransitioned(),this.paint=new Ac(F.paint)}}getCrossfadeParameters(){return this._crossfadeParameters}getLayoutProperty(A){return A==="visibility"?this.visibility:this._unevaluatedLayout.getValue(A)}setLayoutProperty(A,F,W={}){F!=null&&this._validate(Nn,`layers.${this.id}.layout.${A}`,A,F,W)||(A!=="visibility"?this._unevaluatedLayout.setValue(A,F):this.visibility=F)}getPaintProperty(A){return A.endsWith(w)?this._transitionablePaint.getTransition(A.slice(0,-11)):this._transitionablePaint.getValue(A)}setPaintProperty(A,F,W={}){if(F!=null&&this._validate(wn,`layers.${this.id}.paint.${A}`,A,F,W))return!1;if(A.endsWith(w))return this._transitionablePaint.setTransition(A.slice(0,-11),F||void 0),!1;{let re=this._transitionablePaint._values[A],fe=re.property.specification["property-type"]==="cross-faded-data-driven",pe=re.value.isDataDriven(),ze=re.value;this._transitionablePaint.setValue(A,F),this._handleSpecialPaintPropertyUpdate(A);let Ke=this._transitionablePaint._values[A].value;return Ke.isDataDriven()||pe||fe||this._handleOverridablePaintPropertyUpdate(A,ze,Ke)}}_handleSpecialPaintPropertyUpdate(A){}_handleOverridablePaintPropertyUpdate(A,F,W){return!1}isHidden(A){return!!(this.minzoom&&A<this.minzoom)||!!(this.maxzoom&&A>=this.maxzoom)||this.visibility==="none"}updateTransitions(A){this._transitioningPaint=this._transitionablePaint.transitioned(A,this._transitioningPaint)}hasTransition(){return this._transitioningPaint.hasTransition()}recalculate(A,F){A.getCrossfadeParameters&&(this._crossfadeParameters=A.getCrossfadeParameters()),this._unevaluatedLayout&&(this.layout=this._unevaluatedLayout.possiblyEvaluate(A,void 0,F)),this.paint=this._transitioningPaint.possiblyEvaluate(A,void 0,F)}serialize(){let A={id:this.id,type:this.type,source:this.source,"source-layer":this.sourceLayer,metadata:this.metadata,minzoom:this.minzoom,maxzoom:this.maxzoom,filter:this.filter,layout:this._unevaluatedLayout&&this._unevaluatedLayout.serialize(),paint:this._transitionablePaint&&this._transitionablePaint.serialize()};return this.visibility&&(A.layout=A.layout||{},A.layout.visibility=this.visibility),M(A,(F,W)=>!(F===void 0||W==="layout"&&!Object.keys(F).length||W==="paint"&&!Object.keys(F).length))}_validate(A,F,W,re,fe={}){return(!fe||fe.validate!==!1)&&Yi(this,A.call(ki,{key:F,layerType:this.type,objectKey:W,value:re,styleSpec:ce,style:{glyphs:!0,sprite:!0}}))}is3D(){return!1}isTileClipped(){return!1}hasOffscreenPass(){return!1}resize(){}isStateDependent(){for(let A in this.paint._values){let F=this.paint.get(A);if(F instanceof xu&&Nl(F.property.specification)&&(F.value.kind==="source"||F.value.kind==="composite")&&F.value.isStateDependent)return!0}return!1}}let Q={Int8:Int8Array,Uint8:Uint8Array,Int16:Int16Array,Uint16:Uint16Array,Int32:Int32Array,Uint32:Uint32Array,Float32:Float32Array};class ee{constructor(A,F){this._structArray=A,this._pos1=F*this.size,this._pos2=this._pos1/2,this._pos4=this._pos1/4,this._pos8=this._pos1/8}}class le{constructor(){this.isTransferred=!1,this.capacity=-1,this.resize(0)}static serialize(A,F){return A._trim(),F&&(A.isTransferred=!0,F.push(A.arrayBuffer)),{length:A.length,arrayBuffer:A.arrayBuffer}}static deserialize(A){let F=Object.create(this.prototype);return F.arrayBuffer=A.arrayBuffer,F.length=A.length,F.capacity=A.arrayBuffer.byteLength/F.bytesPerElement,F._refreshViews(),F}_trim(){this.length!==this.capacity&&(this.capacity=this.length,this.arrayBuffer=this.arrayBuffer.slice(0,this.length*this.bytesPerElement),this._refreshViews())}clear(){this.length=0}resize(A){this.reserve(A),this.length=A}reserve(A){if(A>this.capacity){this.capacity=Math.max(A,Math.floor(5*this.capacity),128),this.arrayBuffer=new ArrayBuffer(this.capacity*this.bytesPerElement);let F=this.uint8;this._refreshViews(),F&&this.uint8.set(F)}}_refreshViews(){throw new Error("_refreshViews() must be implemented by each concrete StructArray layout")}}function qe(R,A=1){let F=0,W=0;return{members:R.map(re=>{let fe=Q[re.type].BYTES_PER_ELEMENT,pe=F=Xe(F,Math.max(A,fe)),ze=re.components||1;return W=Math.max(W,fe),F+=fe*ze,{name:re.name,type:re.type,components:ze,offset:pe}}),size:Xe(F,Math.max(W,A)),alignment:A}}function Xe(R,A){return Math.ceil(R/A)*A}class ot extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(A,F){let W=this.length;return this.resize(W+1),this.emplace(W,A,F)}emplace(A,F,W){let re=2*A;return this.int16[re+0]=F,this.int16[re+1]=W,A}}ot.prototype.bytesPerElement=4,Fi("StructArrayLayout2i4",ot);class Tt extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(A,F,W){let re=this.length;return this.resize(re+1),this.emplace(re,A,F,W)}emplace(A,F,W,re){let fe=3*A;return this.int16[fe+0]=F,this.int16[fe+1]=W,this.int16[fe+2]=re,A}}Tt.prototype.bytesPerElement=6,Fi("StructArrayLayout3i6",Tt);class Yt extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(A,F,W,re){let fe=this.length;return this.resize(fe+1),this.emplace(fe,A,F,W,re)}emplace(A,F,W,re,fe){let pe=4*A;return this.int16[pe+0]=F,this.int16[pe+1]=W,this.int16[pe+2]=re,this.int16[pe+3]=fe,A}}Yt.prototype.bytesPerElement=8,Fi("StructArrayLayout4i8",Yt);class Kt extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(A,F,W,re,fe,pe){let ze=this.length;return this.resize(ze+1),this.emplace(ze,A,F,W,re,fe,pe)}emplace(A,F,W,re,fe,pe,ze){let Ke=6*A;return this.int16[Ke+0]=F,this.int16[Ke+1]=W,this.int16[Ke+2]=re,this.int16[Ke+3]=fe,this.int16[Ke+4]=pe,this.int16[Ke+5]=ze,A}}Kt.prototype.bytesPerElement=12,Fi("StructArrayLayout2i4i12",Kt);class xr extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(A,F,W,re,fe,pe){let ze=this.length;return this.resize(ze+1),this.emplace(ze,A,F,W,re,fe,pe)}emplace(A,F,W,re,fe,pe,ze){let Ke=4*A,ct=8*A;return this.int16[Ke+0]=F,this.int16[Ke+1]=W,this.uint8[ct+4]=re,this.uint8[ct+5]=fe,this.uint8[ct+6]=pe,this.uint8[ct+7]=ze,A}}xr.prototype.bytesPerElement=8,Fi("StructArrayLayout2i4ub8",xr);class Ir extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(A,F){let W=this.length;return this.resize(W+1),this.emplace(W,A,F)}emplace(A,F,W){let re=2*A;return this.float32[re+0]=F,this.float32[re+1]=W,A}}Ir.prototype.bytesPerElement=8,Fi("StructArrayLayout2f8",Ir);class ve extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(A,F,W,re,fe,pe,ze,Ke,ct,Lt){let $t=this.length;return this.resize($t+1),this.emplace($t,A,F,W,re,fe,pe,ze,Ke,ct,Lt)}emplace(A,F,W,re,fe,pe,ze,Ke,ct,Lt,$t){let fr=10*A;return this.uint16[fr+0]=F,this.uint16[fr+1]=W,this.uint16[fr+2]=re,this.uint16[fr+3]=fe,this.uint16[fr+4]=pe,this.uint16[fr+5]=ze,this.uint16[fr+6]=Ke,this.uint16[fr+7]=ct,this.uint16[fr+8]=Lt,this.uint16[fr+9]=$t,A}}ve.prototype.bytesPerElement=20,Fi("StructArrayLayout10ui20",ve);class be extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(A,F,W,re,fe,pe,ze,Ke,ct,Lt,$t,fr){let mr=this.length;return this.resize(mr+1),this.emplace(mr,A,F,W,re,fe,pe,ze,Ke,ct,Lt,$t,fr)}emplace(A,F,W,re,fe,pe,ze,Ke,ct,Lt,$t,fr,mr){let Pr=12*A;return this.int16[Pr+0]=F,this.int16[Pr+1]=W,this.int16[Pr+2]=re,this.int16[Pr+3]=fe,this.uint16[Pr+4]=pe,this.uint16[Pr+5]=ze,this.uint16[Pr+6]=Ke,this.uint16[Pr+7]=ct,this.int16[Pr+8]=Lt,this.int16[Pr+9]=$t,this.int16[Pr+10]=fr,this.int16[Pr+11]=mr,A}}be.prototype.bytesPerElement=24,Fi("StructArrayLayout4i4ui4i24",be);class De extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(A,F,W){let re=this.length;return this.resize(re+1),this.emplace(re,A,F,W)}emplace(A,F,W,re){let fe=3*A;return this.float32[fe+0]=F,this.float32[fe+1]=W,this.float32[fe+2]=re,A}}De.prototype.bytesPerElement=12,Fi("StructArrayLayout3f12",De);class Be extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer)}emplaceBack(A){let F=this.length;return this.resize(F+1),this.emplace(F,A)}emplace(A,F){return this.uint32[1*A+0]=F,A}}Be.prototype.bytesPerElement=4,Fi("StructArrayLayout1ul4",Be);class et extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(A,F,W,re,fe,pe,ze,Ke,ct){let Lt=this.length;return this.resize(Lt+1),this.emplace(Lt,A,F,W,re,fe,pe,ze,Ke,ct)}emplace(A,F,W,re,fe,pe,ze,Ke,ct,Lt){let $t=10*A,fr=5*A;return this.int16[$t+0]=F,this.int16[$t+1]=W,this.int16[$t+2]=re,this.int16[$t+3]=fe,this.int16[$t+4]=pe,this.int16[$t+5]=ze,this.uint32[fr+3]=Ke,this.uint16[$t+8]=ct,this.uint16[$t+9]=Lt,A}}et.prototype.bytesPerElement=20,Fi("StructArrayLayout6i1ul2ui20",et);class We extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(A,F,W,re,fe,pe){let ze=this.length;return this.resize(ze+1),this.emplace(ze,A,F,W,re,fe,pe)}emplace(A,F,W,re,fe,pe,ze){let Ke=6*A;return this.int16[Ke+0]=F,this.int16[Ke+1]=W,this.int16[Ke+2]=re,this.int16[Ke+3]=fe,this.int16[Ke+4]=pe,this.int16[Ke+5]=ze,A}}We.prototype.bytesPerElement=12,Fi("StructArrayLayout2i2i2i12",We);class it extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(A,F,W,re,fe){let pe=this.length;return this.resize(pe+1),this.emplace(pe,A,F,W,re,fe)}emplace(A,F,W,re,fe,pe){let ze=4*A,Ke=8*A;return this.float32[ze+0]=F,this.float32[ze+1]=W,this.float32[ze+2]=re,this.int16[Ke+6]=fe,this.int16[Ke+7]=pe,A}}it.prototype.bytesPerElement=16,Fi("StructArrayLayout2f1f2i16",it);class Ft extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(A,F,W,re,fe,pe){let ze=this.length;return this.resize(ze+1),this.emplace(ze,A,F,W,re,fe,pe)}emplace(A,F,W,re,fe,pe,ze){let Ke=16*A,ct=4*A,Lt=8*A;return this.uint8[Ke+0]=F,this.uint8[Ke+1]=W,this.float32[ct+1]=re,this.float32[ct+2]=fe,this.int16[Lt+6]=pe,this.int16[Lt+7]=ze,A}}Ft.prototype.bytesPerElement=16,Fi("StructArrayLayout2ub2f2i16",Ft);class Ht extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(A,F,W){let re=this.length;return this.resize(re+1),this.emplace(re,A,F,W)}emplace(A,F,W,re){let fe=3*A;return this.uint16[fe+0]=F,this.uint16[fe+1]=W,this.uint16[fe+2]=re,A}}Ht.prototype.bytesPerElement=6,Fi("StructArrayLayout3ui6",Ht);class tr extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(A,F,W,re,fe,pe,ze,Ke,ct,Lt,$t,fr,mr,Pr,zr,ui,yi){let vn=this.length;return this.resize(vn+1),this.emplace(vn,A,F,W,re,fe,pe,ze,Ke,ct,Lt,$t,fr,mr,Pr,zr,ui,yi)}emplace(A,F,W,re,fe,pe,ze,Ke,ct,Lt,$t,fr,mr,Pr,zr,ui,yi,vn){let zi=24*A,un=12*A,Tn=48*A;return this.int16[zi+0]=F,this.int16[zi+1]=W,this.uint16[zi+2]=re,this.uint16[zi+3]=fe,this.uint32[un+2]=pe,this.uint32[un+3]=ze,this.uint32[un+4]=Ke,this.uint16[zi+10]=ct,this.uint16[zi+11]=Lt,this.uint16[zi+12]=$t,this.float32[un+7]=fr,this.float32[un+8]=mr,this.uint8[Tn+36]=Pr,this.uint8[Tn+37]=zr,this.uint8[Tn+38]=ui,this.uint32[un+10]=yi,this.int16[zi+22]=vn,A}}tr.prototype.bytesPerElement=48,Fi("StructArrayLayout2i2ui3ul3ui2f3ub1ul1i48",tr);class dr extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(A,F,W,re,fe,pe,ze,Ke,ct,Lt,$t,fr,mr,Pr,zr,ui,yi,vn,zi,un,Tn,pa,ro,Vo,Xa,sa,Mo,fo){let lo=this.length;return this.resize(lo+1),this.emplace(lo,A,F,W,re,fe,pe,ze,Ke,ct,Lt,$t,fr,mr,Pr,zr,ui,yi,vn,zi,un,Tn,pa,ro,Vo,Xa,sa,Mo,fo)}emplace(A,F,W,re,fe,pe,ze,Ke,ct,Lt,$t,fr,mr,Pr,zr,ui,yi,vn,zi,un,Tn,pa,ro,Vo,Xa,sa,Mo,fo,lo){let Xn=32*A,Ro=16*A;return this.int16[Xn+0]=F,this.int16[Xn+1]=W,this.int16[Xn+2]=re,this.int16[Xn+3]=fe,this.int16[Xn+4]=pe,this.int16[Xn+5]=ze,this.int16[Xn+6]=Ke,this.int16[Xn+7]=ct,this.uint16[Xn+8]=Lt,this.uint16[Xn+9]=$t,this.uint16[Xn+10]=fr,this.uint16[Xn+11]=mr,this.uint16[Xn+12]=Pr,this.uint16[Xn+13]=zr,this.uint16[Xn+14]=ui,this.uint16[Xn+15]=yi,this.uint16[Xn+16]=vn,this.uint16[Xn+17]=zi,this.uint16[Xn+18]=un,this.uint16[Xn+19]=Tn,this.uint16[Xn+20]=pa,this.uint16[Xn+21]=ro,this.uint16[Xn+22]=Vo,this.uint32[Ro+12]=Xa,this.float32[Ro+13]=sa,this.float32[Ro+14]=Mo,this.uint16[Xn+30]=fo,this.uint16[Xn+31]=lo,A}}dr.prototype.bytesPerElement=64,Fi("StructArrayLayout8i15ui1ul2f2ui64",dr);class Sr extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(A){let F=this.length;return this.resize(F+1),this.emplace(F,A)}emplace(A,F){return this.float32[1*A+0]=F,A}}Sr.prototype.bytesPerElement=4,Fi("StructArrayLayout1f4",Sr);class Or extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(A,F,W){let re=this.length;return this.resize(re+1),this.emplace(re,A,F,W)}emplace(A,F,W,re){let fe=3*A;return this.uint16[6*A+0]=F,this.float32[fe+1]=W,this.float32[fe+2]=re,A}}Or.prototype.bytesPerElement=12,Fi("StructArrayLayout1ui2f12",Or);class Wr extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(A,F,W){let re=this.length;return this.resize(re+1),this.emplace(re,A,F,W)}emplace(A,F,W,re){let fe=4*A;return this.uint32[2*A+0]=F,this.uint16[fe+2]=W,this.uint16[fe+3]=re,A}}Wr.prototype.bytesPerElement=8,Fi("StructArrayLayout1ul2ui8",Wr);class ni extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(A,F){let W=this.length;return this.resize(W+1),this.emplace(W,A,F)}emplace(A,F,W){let re=2*A;return this.uint16[re+0]=F,this.uint16[re+1]=W,A}}ni.prototype.bytesPerElement=4,Fi("StructArrayLayout2ui4",ni);class Pi extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(A){let F=this.length;return this.resize(F+1),this.emplace(F,A)}emplace(A,F){return this.uint16[1*A+0]=F,A}}Pi.prototype.bytesPerElement=2,Fi("StructArrayLayout1ui2",Pi);class cn extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(A,F,W,re){let fe=this.length;return this.resize(fe+1),this.emplace(fe,A,F,W,re)}emplace(A,F,W,re,fe){let pe=4*A;return this.float32[pe+0]=F,this.float32[pe+1]=W,this.float32[pe+2]=re,this.float32[pe+3]=fe,A}}cn.prototype.bytesPerElement=16,Fi("StructArrayLayout4f16",cn);class ln extends ee{get anchorPointX(){return this._structArray.int16[this._pos2+0]}get anchorPointY(){return this._structArray.int16[this._pos2+1]}get x1(){return this._structArray.int16[this._pos2+2]}get y1(){return this._structArray.int16[this._pos2+3]}get x2(){return this._structArray.int16[this._pos2+4]}get y2(){return this._structArray.int16[this._pos2+5]}get featureIndex(){return this._structArray.uint32[this._pos4+3]}get sourceLayerIndex(){return this._structArray.uint16[this._pos2+8]}get bucketIndex(){return this._structArray.uint16[this._pos2+9]}get anchorPoint(){return new u(this.anchorPointX,this.anchorPointY)}}ln.prototype.size=20;class Cn extends et{get(A){return new ln(this,A)}}Fi("CollisionBoxArray",Cn);class Kn extends ee{get anchorX(){return this._structArray.int16[this._pos2+0]}get anchorY(){return this._structArray.int16[this._pos2+1]}get glyphStartIndex(){return this._structArray.uint16[this._pos2+2]}get numGlyphs(){return this._structArray.uint16[this._pos2+3]}get vertexStartIndex(){return this._structArray.uint32[this._pos4+2]}get lineStartIndex(){return this._structArray.uint32[this._pos4+3]}get lineLength(){return this._structArray.uint32[this._pos4+4]}get segment(){return this._structArray.uint16[this._pos2+10]}get lowerSize(){return this._structArray.uint16[this._pos2+11]}get upperSize(){return this._structArray.uint16[this._pos2+12]}get lineOffsetX(){return this._structArray.float32[this._pos4+7]}get lineOffsetY(){return this._structArray.float32[this._pos4+8]}get writingMode(){return this._structArray.uint8[this._pos1+36]}get placedOrientation(){return this._structArray.uint8[this._pos1+37]}set placedOrientation(A){this._structArray.uint8[this._pos1+37]=A}get hidden(){return this._structArray.uint8[this._pos1+38]}set hidden(A){this._structArray.uint8[this._pos1+38]=A}get crossTileID(){return this._structArray.uint32[this._pos4+10]}set crossTileID(A){this._structArray.uint32[this._pos4+10]=A}get associatedIconIndex(){return this._structArray.int16[this._pos2+22]}}Kn.prototype.size=48;class Ta extends tr{get(A){return new Kn(this,A)}}Fi("PlacedSymbolArray",Ta);class fa extends ee{get anchorX(){return this._structArray.int16[this._pos2+0]}get anchorY(){return this._structArray.int16[this._pos2+1]}get rightJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+2]}get centerJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+3]}get leftJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+4]}get verticalPlacedTextSymbolIndex(){return this._structArray.int16[this._pos2+5]}get placedIconSymbolIndex(){return this._structArray.int16[this._pos2+6]}get verticalPlacedIconSymbolIndex(){return this._structArray.int16[this._pos2+7]}get key(){return this._structArray.uint16[this._pos2+8]}get textBoxStartIndex(){return this._structArray.uint16[this._pos2+9]}get textBoxEndIndex(){return this._structArray.uint16[this._pos2+10]}get verticalTextBoxStartIndex(){return this._structArray.uint16[this._pos2+11]}get verticalTextBoxEndIndex(){return this._structArray.uint16[this._pos2+12]}get iconBoxStartIndex(){return this._structArray.uint16[this._pos2+13]}get iconBoxEndIndex(){return this._structArray.uint16[this._pos2+14]}get verticalIconBoxStartIndex(){return this._structArray.uint16[this._pos2+15]}get verticalIconBoxEndIndex(){return this._structArray.uint16[this._pos2+16]}get featureIndex(){return this._structArray.uint16[this._pos2+17]}get numHorizontalGlyphVertices(){return this._structArray.uint16[this._pos2+18]}get numVerticalGlyphVertices(){return this._structArray.uint16[this._pos2+19]}get numIconVertices(){return this._structArray.uint16[this._pos2+20]}get numVerticalIconVertices(){return this._structArray.uint16[this._pos2+21]}get useRuntimeCollisionCircles(){return this._structArray.uint16[this._pos2+22]}get crossTileID(){return this._structArray.uint32[this._pos4+12]}set crossTileID(A){this._structArray.uint32[this._pos4+12]=A}get textBoxScale(){return this._structArray.float32[this._pos4+13]}get collisionCircleDiameter(){return this._structArray.float32[this._pos4+14]}get textAnchorOffsetStartIndex(){return this._structArray.uint16[this._pos2+30]}get textAnchorOffsetEndIndex(){return this._structArray.uint16[this._pos2+31]}}fa.prototype.size=64;class $a extends dr{get(A){return new fa(this,A)}}Fi("SymbolInstanceArray",$a);class Co extends Sr{getoffsetX(A){return this.float32[1*A+0]}}Fi("GlyphOffsetArray",Co);class Qa extends Tt{getx(A){return this.int16[3*A+0]}gety(A){return this.int16[3*A+1]}gettileUnitDistanceFromAnchor(A){return this.int16[3*A+2]}}Fi("SymbolLineVertexArray",Qa);class mo extends ee{get textAnchor(){return this._structArray.uint16[this._pos2+0]}get textOffset0(){return this._structArray.float32[this._pos4+1]}get textOffset1(){return this._structArray.float32[this._pos4+2]}}mo.prototype.size=12;class Bo extends Or{get(A){return new mo(this,A)}}Fi("TextAnchorOffsetArray",Bo);class Ps extends ee{get featureIndex(){return this._structArray.uint32[this._pos4+0]}get sourceLayerIndex(){return this._structArray.uint16[this._pos2+2]}get bucketIndex(){return this._structArray.uint16[this._pos2+3]}}Ps.prototype.size=8;class Ts extends Wr{get(A){return new Ps(this,A)}}Fi("FeatureIndexArray",Ts);class wo extends ot{}class To extends ot{}class hl extends ot{}class Ul extends Kt{}class Lu extends xr{}class au extends Ir{}class Js extends ve{}class Ql extends be{}class dc extends De{}class Tl extends Be{}class Al extends We{}class X extends Ft{}class se extends Ht{}class Te extends ni{}let Ne=qe([{name:"a_pos",components:2,type:"Int16"}],4),{members:He}=Ne;class Ye{constructor(A=[]){this.segments=A}prepareSegment(A,F,W,re){let fe=this.segments[this.segments.length-1];return A>Ye.MAX_VERTEX_ARRAY_LENGTH&&T(`Max vertices per segment is ${Ye.MAX_VERTEX_ARRAY_LENGTH}: bucket requested ${A}`),(!fe||fe.vertexLength+A>Ye.MAX_VERTEX_ARRAY_LENGTH||fe.sortKey!==re)&&(fe={vertexOffset:F.length,primitiveOffset:W.length,vertexLength:0,primitiveLength:0},re!==void 0&&(fe.sortKey=re),this.segments.push(fe)),fe}get(){return this.segments}destroy(){for(let A of this.segments)for(let F in A.vaos)A.vaos[F].destroy()}static simpleSegment(A,F,W,re){return new Ye([{vertexOffset:A,primitiveOffset:F,vertexLength:W,primitiveLength:re,vaos:{},sortKey:0}])}}function kt(R,A){return 256*(R=E(Math.floor(R),0,255))+E(Math.floor(A),0,255)}Ye.MAX_VERTEX_ARRAY_LENGTH=Math.pow(2,16)-1,Fi("SegmentVector",Ye);let nt=qe([{name:"a_pattern_from",components:4,type:"Uint16"},{name:"a_pattern_to",components:4,type:"Uint16"},{name:"a_pixel_ratio_from",components:1,type:"Uint16"},{name:"a_pixel_ratio_to",components:1,type:"Uint16"}]);var jt={exports:{}},gr={exports:{}};gr.exports=function(R,A){var F,W,re,fe,pe,ze,Ke,ct;for(W=R.length-(F=3&R.length),re=A,pe=3432918353,ze=461845907,ct=0;ct<W;)Ke=255&R.charCodeAt(ct)|(255&R.charCodeAt(++ct))<<8|(255&R.charCodeAt(++ct))<<16|(255&R.charCodeAt(++ct))<<24,++ct,re=27492+(65535&(fe=5*(65535&(re=(re^=Ke=(65535&(Ke=(Ke=(65535&Ke)*pe+(((Ke>>>16)*pe&65535)<<16)&4294967295)<<15|Ke>>>17))*ze+(((Ke>>>16)*ze&65535)<<16)&4294967295)<<13|re>>>19))+((5*(re>>>16)&65535)<<16)&4294967295))+((58964+(fe>>>16)&65535)<<16);switch(Ke=0,F){case 3:Ke^=(255&R.charCodeAt(ct+2))<<16;case 2:Ke^=(255&R.charCodeAt(ct+1))<<8;case 1:re^=Ke=(65535&(Ke=(Ke=(65535&(Ke^=255&R.charCodeAt(ct)))*pe+(((Ke>>>16)*pe&65535)<<16)&4294967295)<<15|Ke>>>17))*ze+(((Ke>>>16)*ze&65535)<<16)&4294967295}return re^=R.length,re=2246822507*(65535&(re^=re>>>16))+((2246822507*(re>>>16)&65535)<<16)&4294967295,re=3266489909*(65535&(re^=re>>>13))+((3266489909*(re>>>16)&65535)<<16)&4294967295,(re^=re>>>16)>>>0};var yr=gr.exports,Hr={exports:{}};Hr.exports=function(R,A){for(var F,W=R.length,re=A^W,fe=0;W>=4;)F=1540483477*(65535&(F=255&R.charCodeAt(fe)|(255&R.charCodeAt(++fe))<<8|(255&R.charCodeAt(++fe))<<16|(255&R.charCodeAt(++fe))<<24))+((1540483477*(F>>>16)&65535)<<16),re=1540483477*(65535&re)+((1540483477*(re>>>16)&65535)<<16)^(F=1540483477*(65535&(F^=F>>>24))+((1540483477*(F>>>16)&65535)<<16)),W-=4,++fe;switch(W){case 3:re^=(255&R.charCodeAt(fe+2))<<16;case 2:re^=(255&R.charCodeAt(fe+1))<<8;case 1:re=1540483477*(65535&(re^=255&R.charCodeAt(fe)))+((1540483477*(re>>>16)&65535)<<16)}return re=1540483477*(65535&(re^=re>>>13))+((1540483477*(re>>>16)&65535)<<16),(re^=re>>>15)>>>0};var qr=yr,_i=Hr.exports;jt.exports=qr,jt.exports.murmur3=qr,jt.exports.murmur2=_i;var bi=o(jt.exports);class Zr{constructor(){this.ids=[],this.positions=[],this.indexed=!1}add(A,F,W,re){this.ids.push(ai(A)),this.positions.push(F,W,re)}getPositions(A){if(!this.indexed)throw new Error("Trying to get index, but feature positions are not indexed");let F=ai(A),W=0,re=this.ids.length-1;for(;W<re;){let pe=W+re>>1;this.ids[pe]>=F?re=pe:W=pe+1}let fe=[];for(;this.ids[W]===F;)fe.push({index:this.positions[3*W],start:this.positions[3*W+1],end:this.positions[3*W+2]}),W++;return fe}static serialize(A,F){let W=new Float64Array(A.ids),re=new Uint32Array(A.positions);return gi(W,re,0,W.length-1),F&&F.push(W.buffer,re.buffer),{ids:W,positions:re}}static deserialize(A){let F=new Zr;return F.ids=A.ids,F.positions=A.positions,F.indexed=!0,F}}function ai(R){let A=+R;return!isNaN(A)&&A<=Number.MAX_SAFE_INTEGER?A:bi(String(R))}function gi(R,A,F,W){for(;F<W;){let re=R[F+W>>1],fe=F-1,pe=W+1;for(;;){do fe++;while(R[fe]<re);do pe--;while(R[pe]>re);if(fe>=pe)break;Ii(R,fe,pe),Ii(A,3*fe,3*pe),Ii(A,3*fe+1,3*pe+1),Ii(A,3*fe+2,3*pe+2)}pe-F<W-pe?(gi(R,A,F,pe),F=pe+1):(gi(R,A,pe+1,W),W=pe)}}function Ii(R,A,F){let W=R[A];R[A]=R[F],R[F]=W}Fi("FeaturePositionMap",Zr);class Si{constructor(A,F){this.gl=A.gl,this.location=F}}class ei extends Si{constructor(A,F){super(A,F),this.current=0}set(A){this.current!==A&&(this.current=A,this.gl.uniform1f(this.location,A))}}class Ln extends Si{constructor(A,F){super(A,F),this.current=[0,0,0,0]}set(A){A[0]===this.current[0]&&A[1]===this.current[1]&&A[2]===this.current[2]&&A[3]===this.current[3]||(this.current=A,this.gl.uniform4f(this.location,A[0],A[1],A[2],A[3]))}}class En extends Si{constructor(A,F){super(A,F),this.current=nr.transparent}set(A){A.r===this.current.r&&A.g===this.current.g&&A.b===this.current.b&&A.a===this.current.a||(this.current=A,this.gl.uniform4f(this.location,A.r,A.g,A.b,A.a))}}let Un=new Float32Array(16);function ia(R){return[kt(255*R.r,255*R.g),kt(255*R.b,255*R.a)]}class Ea{constructor(A,F,W){this.value=A,this.uniformNames=F.map(re=>`u_${re}`),this.type=W}setUniform(A,F,W){A.set(W.constantOr(this.value))}getBinding(A,F,W){return this.type==="color"?new En(A,F):new ei(A,F)}}class Ia{constructor(A,F){this.uniformNames=F.map(W=>`u_${W}`),this.patternFrom=null,this.patternTo=null,this.pixelRatioFrom=1,this.pixelRatioTo=1}setConstantPatternPositions(A,F){this.pixelRatioFrom=F.pixelRatio,this.pixelRatioTo=A.pixelRatio,this.patternFrom=F.tlbr,this.patternTo=A.tlbr}setUniform(A,F,W,re){let fe=re==="u_pattern_to"?this.patternTo:re==="u_pattern_from"?this.patternFrom:re==="u_pixel_ratio_to"?this.pixelRatioTo:re==="u_pixel_ratio_from"?this.pixelRatioFrom:null;fe&&A.set(fe)}getBinding(A,F,W){return W.substr(0,9)==="u_pattern"?new Ln(A,F):new ei(A,F)}}class yo{constructor(A,F,W,re){this.expression=A,this.type=W,this.maxValue=0,this.paintVertexAttributes=F.map(fe=>({name:`a_${fe}`,type:"Float32",components:W==="color"?2:1,offset:0})),this.paintVertexArray=new re}populatePaintArray(A,F,W,re,fe){let pe=this.paintVertexArray.length,ze=this.expression.evaluate(new rs(0),F,{},re,[],fe);this.paintVertexArray.resize(A),this._setPaintValue(pe,A,ze)}updatePaintArray(A,F,W,re){let fe=this.expression.evaluate({zoom:0},W,re);this._setPaintValue(A,F,fe)}_setPaintValue(A,F,W){if(this.type==="color"){let re=ia(W);for(let fe=A;fe<F;fe++)this.paintVertexArray.emplace(fe,re[0],re[1])}else{for(let re=A;re<F;re++)this.paintVertexArray.emplace(re,W);this.maxValue=Math.max(this.maxValue,Math.abs(W))}}upload(A){this.paintVertexArray&&this.paintVertexArray.arrayBuffer&&(this.paintVertexBuffer&&this.paintVertexBuffer.buffer?this.paintVertexBuffer.updateData(this.paintVertexArray):this.paintVertexBuffer=A.createVertexBuffer(this.paintVertexArray,this.paintVertexAttributes,this.expression.isStateDependent))}destroy(){this.paintVertexBuffer&&this.paintVertexBuffer.destroy()}}class Da{constructor(A,F,W,re,fe,pe){this.expression=A,this.uniformNames=F.map(ze=>`u_${ze}_t`),this.type=W,this.useIntegerZoom=re,this.zoom=fe,this.maxValue=0,this.paintVertexAttributes=F.map(ze=>({name:`a_${ze}`,type:"Float32",components:W==="color"?4:2,offset:0})),this.paintVertexArray=new pe}populatePaintArray(A,F,W,re,fe){let pe=this.expression.evaluate(new rs(this.zoom),F,{},re,[],fe),ze=this.expression.evaluate(new rs(this.zoom+1),F,{},re,[],fe),Ke=this.paintVertexArray.length;this.paintVertexArray.resize(A),this._setPaintValue(Ke,A,pe,ze)}updatePaintArray(A,F,W,re){let fe=this.expression.evaluate({zoom:this.zoom},W,re),pe=this.expression.evaluate({zoom:this.zoom+1},W,re);this._setPaintValue(A,F,fe,pe)}_setPaintValue(A,F,W,re){if(this.type==="color"){let fe=ia(W),pe=ia(re);for(let ze=A;ze<F;ze++)this.paintVertexArray.emplace(ze,fe[0],fe[1],pe[0],pe[1])}else{for(let fe=A;fe<F;fe++)this.paintVertexArray.emplace(fe,W,re);this.maxValue=Math.max(this.maxValue,Math.abs(W),Math.abs(re))}}upload(A){this.paintVertexArray&&this.paintVertexArray.arrayBuffer&&(this.paintVertexBuffer&&this.paintVertexBuffer.buffer?this.paintVertexBuffer.updateData(this.paintVertexArray):this.paintVertexBuffer=A.createVertexBuffer(this.paintVertexArray,this.paintVertexAttributes,this.expression.isStateDependent))}destroy(){this.paintVertexBuffer&&this.paintVertexBuffer.destroy()}setUniform(A,F){let W=this.useIntegerZoom?Math.floor(F.zoom):F.zoom,re=E(this.expression.interpolationFactor(W,this.zoom,this.zoom+1),0,1);A.set(re)}getBinding(A,F,W){return new ei(A,F)}}class go{constructor(A,F,W,re,fe,pe){this.expression=A,this.type=F,this.useIntegerZoom=W,this.zoom=re,this.layerId=pe,this.zoomInPaintVertexArray=new fe,this.zoomOutPaintVertexArray=new fe}populatePaintArray(A,F,W){let re=this.zoomInPaintVertexArray.length;this.zoomInPaintVertexArray.resize(A),this.zoomOutPaintVertexArray.resize(A),this._setPaintValues(re,A,F.patterns&&F.patterns[this.layerId],W)}updatePaintArray(A,F,W,re,fe){this._setPaintValues(A,F,W.patterns&&W.patterns[this.layerId],fe)}_setPaintValues(A,F,W,re){if(!re||!W)return;let{min:fe,mid:pe,max:ze}=W,Ke=re[fe],ct=re[pe],Lt=re[ze];if(Ke&&ct&&Lt)for(let $t=A;$t<F;$t++)this.zoomInPaintVertexArray.emplace($t,ct.tl[0],ct.tl[1],ct.br[0],ct.br[1],Ke.tl[0],Ke.tl[1],Ke.br[0],Ke.br[1],ct.pixelRatio,Ke.pixelRatio),this.zoomOutPaintVertexArray.emplace($t,ct.tl[0],ct.tl[1],ct.br[0],ct.br[1],Lt.tl[0],Lt.tl[1],Lt.br[0],Lt.br[1],ct.pixelRatio,Lt.pixelRatio)}upload(A){this.zoomInPaintVertexArray&&this.zoomInPaintVertexArray.arrayBuffer&&this.zoomOutPaintVertexArray&&this.zoomOutPaintVertexArray.arrayBuffer&&(this.zoomInPaintVertexBuffer=A.createVertexBuffer(this.zoomInPaintVertexArray,nt.members,this.expression.isStateDependent),this.zoomOutPaintVertexBuffer=A.createVertexBuffer(this.zoomOutPaintVertexArray,nt.members,this.expression.isStateDependent))}destroy(){this.zoomOutPaintVertexBuffer&&this.zoomOutPaintVertexBuffer.destroy(),this.zoomInPaintVertexBuffer&&this.zoomInPaintVertexBuffer.destroy()}}class Is{constructor(A,F,W){this.binders={},this._buffers=[];let re=[];for(let fe in A.paint._values){if(!W(fe))continue;let pe=A.paint.get(fe);if(!(pe instanceof xu&&Nl(pe.property.specification)))continue;let ze=Xs(fe,A.type),Ke=pe.value,ct=pe.property.specification.type,Lt=pe.property.useIntegerZoom,$t=pe.property.specification["property-type"],fr=$t==="cross-faded"||$t==="cross-faded-data-driven";if(Ke.kind==="constant")this.binders[fe]=fr?new Ia(Ke.value,ze):new Ea(Ke.value,ze,ct),re.push(`/u_${fe}`);else if(Ke.kind==="source"||fr){let mr=Gn(fe,ct,"source");this.binders[fe]=fr?new go(Ke,ct,Lt,F,mr,A.id):new yo(Ke,ze,ct,mr),re.push(`/a_${fe}`)}else{let mr=Gn(fe,ct,"composite");this.binders[fe]=new Da(Ke,ze,ct,Lt,F,mr),re.push(`/z_${fe}`)}}this.cacheKey=re.sort().join("")}getMaxValue(A){let F=this.binders[A];return F instanceof yo||F instanceof Da?F.maxValue:0}populatePaintArrays(A,F,W,re,fe){for(let pe in this.binders){let ze=this.binders[pe];(ze instanceof yo||ze instanceof Da||ze instanceof go)&&ze.populatePaintArray(A,F,W,re,fe)}}setConstantPatternPositions(A,F){for(let W in this.binders){let re=this.binders[W];re instanceof Ia&&re.setConstantPatternPositions(A,F)}}updatePaintArrays(A,F,W,re,fe){let pe=!1;for(let ze in A){let Ke=F.getPositions(ze);for(let ct of Ke){let Lt=W.feature(ct.index);for(let $t in this.binders){let fr=this.binders[$t];if((fr instanceof yo||fr instanceof Da||fr instanceof go)&&fr.expression.isStateDependent===!0){let mr=re.paint.get($t);fr.expression=mr.value,fr.updatePaintArray(ct.start,ct.end,Lt,A[ze],fe),pe=!0}}}}return pe}defines(){let A=[];for(let F in this.binders){let W=this.binders[F];(W instanceof Ea||W instanceof Ia)&&A.push(...W.uniformNames.map(re=>`#define HAS_UNIFORM_${re}`))}return A}getBinderAttributes(){let A=[];for(let F in this.binders){let W=this.binders[F];if(W instanceof yo||W instanceof Da)for(let re=0;re<W.paintVertexAttributes.length;re++)A.push(W.paintVertexAttributes[re].name);else if(W instanceof go)for(let re=0;re<nt.members.length;re++)A.push(nt.members[re].name)}return A}getBinderUniforms(){let A=[];for(let F in this.binders){let W=this.binders[F];if(W instanceof Ea||W instanceof Ia||W instanceof Da)for(let re of W.uniformNames)A.push(re)}return A}getPaintVertexBuffers(){return this._buffers}getUniforms(A,F){let W=[];for(let re in this.binders){let fe=this.binders[re];if(fe instanceof Ea||fe instanceof Ia||fe instanceof Da){for(let pe of fe.uniformNames)if(F[pe]){let ze=fe.getBinding(A,F[pe],pe);W.push({name:pe,property:re,binding:ze})}}}return W}setUniforms(A,F,W,re){for(let{name:fe,property:pe,binding:ze}of F)this.binders[pe].setUniform(ze,re,W.get(pe),fe)}updatePaintBuffers(A){this._buffers=[];for(let F in this.binders){let W=this.binders[F];if(A&&W instanceof go){let re=A.fromScale===2?W.zoomInPaintVertexBuffer:W.zoomOutPaintVertexBuffer;re&&this._buffers.push(re)}else(W instanceof yo||W instanceof Da)&&W.paintVertexBuffer&&this._buffers.push(W.paintVertexBuffer)}}upload(A){for(let F in this.binders){let W=this.binders[F];(W instanceof yo||W instanceof Da||W instanceof go)&&W.upload(A)}this.updatePaintBuffers()}destroy(){for(let A in this.binders){let F=this.binders[A];(F instanceof yo||F instanceof Da||F instanceof go)&&F.destroy()}}}class Ms{constructor(A,F,W=()=>!0){this.programConfigurations={};for(let re of A)this.programConfigurations[re.id]=new Is(re,F,W);this.needsUpload=!1,this._featureMap=new Zr,this._bufferOffset=0}populatePaintArrays(A,F,W,re,fe,pe){for(let ze in this.programConfigurations)this.programConfigurations[ze].populatePaintArrays(A,F,re,fe,pe);F.id!==void 0&&this._featureMap.add(F.id,W,this._bufferOffset,A),this._bufferOffset=A,this.needsUpload=!0}updatePaintArrays(A,F,W,re){for(let fe of W)this.needsUpload=this.programConfigurations[fe.id].updatePaintArrays(A,this._featureMap,F,fe,re)||this.needsUpload}get(A){return this.programConfigurations[A]}upload(A){if(this.needsUpload){for(let F in this.programConfigurations)this.programConfigurations[F].upload(A);this.needsUpload=!1}}destroy(){for(let A in this.programConfigurations)this.programConfigurations[A].destroy()}}function Xs(R,A){return{"text-opacity":["opacity"],"icon-opacity":["opacity"],"text-color":["fill_color"],"icon-color":["fill_color"],"text-halo-color":["halo_color"],"icon-halo-color":["halo_color"],"text-halo-blur":["halo_blur"],"icon-halo-blur":["halo_blur"],"text-halo-width":["halo_width"],"icon-halo-width":["halo_width"],"line-gap-width":["gapwidth"],"line-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"],"fill-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"],"fill-extrusion-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"]}[R]||[R.replace(`${A}-`,"").replace(/-/g,"_")]}function Gn(R,A,F){let W={color:{source:Ir,composite:cn},number:{source:Sr,composite:Ir}},re=function(fe){return{"line-pattern":{source:Js,composite:Js},"fill-pattern":{source:Js,composite:Js},"fill-extrusion-pattern":{source:Js,composite:Js}}[fe]}(R);return re&&re[F]||W[A][F]}Fi("ConstantBinder",Ea),Fi("CrossFadedConstantBinder",Ia),Fi("SourceExpressionBinder",yo),Fi("CrossFadedCompositeBinder",go),Fi("CompositeExpressionBinder",Da),Fi("ProgramConfiguration",Is,{omit:["_buffers"]}),Fi("ProgramConfigurationSet",Ms);let ja=8192,Fo=Math.pow(2,14)-1,Uo=-Fo-1;function $s(R){let A=ja/R.extent,F=R.loadGeometry();for(let W=0;W<F.length;W++){let re=F[W];for(let fe=0;fe<re.length;fe++){let pe=re[fe],ze=Math.round(pe.x*A),Ke=Math.round(pe.y*A);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,A){return{type:R.type,id:R.id,properties:R.properties,geometry:A?$s(R):[]}}function bu(R,A,F,W,re){R.emplaceBack(2*A+(W+1)/2,2*F+(re+1)/2)}class dl{constructor(A){this.zoom=A.zoom,this.overscaling=A.overscaling,this.layers=A.layers,this.layerIds=this.layers.map(F=>F.id),this.index=A.index,this.hasPattern=!1,this.layoutVertexArray=new To,this.indexArray=new se,this.segments=new Ye,this.programConfigurations=new Ms(A.layers,A.zoom),this.stateDependentLayerIds=this.layers.filter(F=>F.isStateDependent()).map(F=>F.id)}populate(A,F,W){let re=this.layers[0],fe=[],pe=null,ze=!1;re.type==="circle"&&(pe=re.layout.get("circle-sort-key"),ze=!pe.isConstant());for(let{feature:Ke,id:ct,index:Lt,sourceLayerIndex:$t}of A){let fr=this.layers[0]._featureFilter.needGeometry,mr=Sl(Ke,fr);if(!this.layers[0]._featureFilter.filter(new rs(this.zoom),mr,W))continue;let Pr=ze?pe.evaluate(mr,{},W):void 0,zr={id:ct,properties:Ke.properties,type:Ke.type,sourceLayerIndex:$t,index:Lt,geometry:fr?mr.geometry:$s(Ke),patterns:{},sortKey:Pr};fe.push(zr)}ze&&fe.sort((Ke,ct)=>Ke.sortKey-ct.sortKey);for(let Ke of fe){let{geometry:ct,index:Lt,sourceLayerIndex:$t}=Ke,fr=A[Lt].feature;this.addFeature(Ke,ct,Lt,W),F.featureIndex.insert(fr,ct,Lt,$t,this.index)}}update(A,F,W){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(A,F,this.stateDependentLayers,W)}isEmpty(){return this.layoutVertexArray.length===0}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(A){this.uploaded||(this.layoutVertexBuffer=A.createVertexBuffer(this.layoutVertexArray,He),this.indexBuffer=A.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(A),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())}addFeature(A,F,W,re){for(let fe of F)for(let pe of fe){let ze=pe.x,Ke=pe.y;if(ze<0||ze>=ja||Ke<0||Ke>=ja)continue;let ct=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray,A.sortKey),Lt=ct.vertexLength;bu(this.layoutVertexArray,ze,Ke,-1,-1),bu(this.layoutVertexArray,ze,Ke,1,-1),bu(this.layoutVertexArray,ze,Ke,1,1),bu(this.layoutVertexArray,ze,Ke,-1,1),this.indexArray.emplaceBack(Lt,Lt+1,Lt+2),this.indexArray.emplaceBack(Lt,Lt+3,Lt+2),ct.vertexLength+=4,ct.primitiveLength+=2}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,A,W,{},re)}}function Sc(R,A){for(let F=0;F<R.length;F++)if(Ui(A,R[F]))return!0;for(let F=0;F<A.length;F++)if(Ui(R,A[F]))return!0;return!!Rr(R,A)}function Me(R,A,F){return!!Ui(R,A)||!!Nr(A,R,F)}function bt(R,A){if(R.length===1)return mi(A,R[0]);for(let F=0;F<A.length;F++){let W=A[F];for(let re=0;re<W.length;re++)if(Ui(R,W[re]))return!0}for(let F=0;F<R.length;F++)if(mi(A,R[F]))return!0;for(let F=0;F<A.length;F++)if(Rr(R,A[F]))return!0;return!1}function zt(R,A,F){if(R.length>1){if(Rr(R,A))return!0;for(let W=0;W<A.length;W++)if(Nr(A[W],R,F))return!0}for(let W=0;W<R.length;W++)if(Nr(R[W],A,F))return!0;return!1}function Rr(R,A){if(R.length===0||A.length===0)return!1;for(let F=0;F<R.length-1;F++){let W=R[F],re=R[F+1];for(let fe=0;fe<A.length-1;fe++)if(jr(W,re,A[fe],A[fe+1]))return!0}return!1}function jr(R,A,F,W){return z(R,F,W)!==z(A,F,W)&&z(R,A,F)!==z(R,A,W)}function Nr(R,A,F){let W=F*F;if(A.length===1)return R.distSqr(A[0])<W;for(let re=1;re<A.length;re++)if(Gr(R,A[re-1],A[re])<W)return!0;return!1}function Gr(R,A,F){let W=A.distSqr(F);if(W===0)return R.distSqr(A);let re=((R.x-A.x)*(F.x-A.x)+(R.y-A.y)*(F.y-A.y))/W;return R.distSqr(re<0?A:re>1?F:F.sub(A)._mult(re)._add(A))}function mi(R,A){let F,W,re,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],re=F[Ke],W.y>A.y!=re.y>A.y&&A.x<(re.x-W.x)*(A.y-W.y)/(re.y-W.y)+W.x&&(fe=!fe)}return fe}function Ui(R,A){let F=!1;for(let W=0,re=R.length-1;W<R.length;re=W++){let fe=R[W],pe=R[re];fe.y>A.y!=pe.y>A.y&&A.x<(pe.x-fe.x)*(A.y-fe.y)/(pe.y-fe.y)+fe.x&&(F=!F)}return F}function qi(R,A,F){let W=F[0],re=F[2];if(R.x<W.x&&A.x<W.x||R.x>re.x&&A.x>re.x||R.y<W.y&&A.y<W.y||R.y>re.y&&A.y>re.y)return!1;let fe=z(R,A,F[0]);return fe!==z(R,A,F[1])||fe!==z(R,A,F[2])||fe!==z(R,A,F[3])}function Ei(R,A,F){let W=A.paint.get(R).value;return W.kind==="constant"?W.value:F.programConfigurations.get(A.id).getMaxValue(R)}function Hn(R){return Math.sqrt(R[0]*R[0]+R[1]*R[1])}function en(R,A,F,W,re){if(!A[0]&&!A[1])return R;let fe=u.convert(A)._mult(re);F==="viewport"&&fe._rotate(-W);let pe=[];for(let ze=0;ze<R.length;ze++)pe.push(R[ze].sub(fe));return pe}let Wi,si;Fi("CircleBucket",dl,{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 Wi=Wi||new ue({"circle-sort-key":new oo(ce.layout_circle["circle-sort-key"])})}},Yr=1e-6,xi=typeof Float32Array!="undefined"?Float32Array:Array;function Ri(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,A,F){var W=A[0],re=A[1],fe=A[2],pe=A[3],ze=A[4],Ke=A[5],ct=A[6],Lt=A[7],$t=A[8],fr=A[9],mr=A[10],Pr=A[11],zr=A[12],ui=A[13],yi=A[14],vn=A[15],zi=F[0],un=F[1],Tn=F[2],pa=F[3];return R[0]=zi*W+un*ze+Tn*$t+pa*zr,R[1]=zi*re+un*Ke+Tn*fr+pa*ui,R[2]=zi*fe+un*ct+Tn*mr+pa*yi,R[3]=zi*pe+un*Lt+Tn*Pr+pa*vn,R[4]=(zi=F[4])*W+(un=F[5])*ze+(Tn=F[6])*$t+(pa=F[7])*zr,R[5]=zi*re+un*Ke+Tn*fr+pa*ui,R[6]=zi*fe+un*ct+Tn*mr+pa*yi,R[7]=zi*pe+un*Lt+Tn*Pr+pa*vn,R[8]=(zi=F[8])*W+(un=F[9])*ze+(Tn=F[10])*$t+(pa=F[11])*zr,R[9]=zi*re+un*Ke+Tn*fr+pa*ui,R[10]=zi*fe+un*ct+Tn*mr+pa*yi,R[11]=zi*pe+un*Lt+Tn*Pr+pa*vn,R[12]=(zi=F[12])*W+(un=F[13])*ze+(Tn=F[14])*$t+(pa=F[15])*zr,R[13]=zi*re+un*Ke+Tn*fr+pa*ui,R[14]=zi*fe+un*ct+Tn*mr+pa*yi,R[15]=zi*pe+un*Lt+Tn*Pr+pa*vn,R}Math.hypot||(Math.hypot=function(){for(var R=0,A=arguments.length;A--;)R+=arguments[A]*arguments[A];return Math.sqrt(R)});var an,Zi=ci;function Bn(R,A,F){var W=A[0],re=A[1],fe=A[2],pe=A[3];return R[0]=F[0]*W+F[4]*re+F[8]*fe+F[12]*pe,R[1]=F[1]*W+F[5]*re+F[9]*fe+F[13]*pe,R[2]=F[2]*W+F[6]*re+F[10]*fe+F[14]*pe,R[3]=F[3]*W+F[7]*re+F[11]*fe+F[15]*pe,R}an=new xi(4),xi!=Float32Array&&(an[0]=0,an[1]=0,an[2]=0,an[3]=0);class hi extends B{constructor(A){super(A,Mr)}createBucket(A){return new dl(A)}queryRadius(A){let F=A;return Ei("circle-radius",this,F)+Ei("circle-stroke-width",this,F)+Hn(this.paint.get("circle-translate"))}queryIntersectsFeature(A,F,W,re,fe,pe,ze,Ke){let ct=en(A,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),$t=this.paint.get("circle-pitch-alignment")==="map",fr=$t?ct:function(Pr,zr){return Pr.map(ui=>li(ui,zr))}(ct,Ke),mr=$t?Lt*ze:Lt;for(let Pr of re)for(let zr of Pr){let ui=$t?zr:li(zr,Ke),yi=mr,vn=Bn([],[zr.x,zr.y,0,1],Ke);if(this.paint.get("circle-pitch-scale")==="viewport"&&this.paint.get("circle-pitch-alignment")==="map"?yi*=vn[3]/pe.cameraToCenterDistance:this.paint.get("circle-pitch-scale")==="map"&&this.paint.get("circle-pitch-alignment")==="viewport"&&(yi*=pe.cameraToCenterDistance/vn[3]),Me(fr,ui,yi))return!0}return!1}}function li(R,A){let F=Bn([],[R.x,R.y,0,1],A);return new u(F[0]/F[3],F[1]/F[3])}class mn extends dl{}let Ji;Fi("HeatmapBucket",mn,{omit:["layers"]});var Vi={get paint(){return Ji=Ji||new ue({"heatmap-radius":new oo(ce.paint_heatmap["heatmap-radius"]),"heatmap-weight":new oo(ce.paint_heatmap["heatmap-weight"]),"heatmap-intensity":new Ua(ce.paint_heatmap["heatmap-intensity"]),"heatmap-color":new Ku(ce.paint_heatmap["heatmap-color"]),"heatmap-opacity":new Ua(ce.paint_heatmap["heatmap-opacity"])})}};function Ni(R,{width:A,height:F},W,re){if(re){if(re instanceof Uint8ClampedArray)re=new Uint8Array(re.buffer);else if(re.length!==A*F*W)throw new RangeError(`mismatched image size. expected: ${re.length} but got: ${A*F*W}`)}else re=new Uint8Array(A*F*W);return R.width=A,R.height=F,R.data=re,R}function pn(R,{width:A,height:F},W){if(A===R.width&&F===R.height)return;let re=Ni({},{width:A,height:F},W);Vn(R,re,{x:0,y:0},{x:0,y:0},{width:Math.min(R.width,A),height:Math.min(R.height,F)},W),R.width=A,R.height=F,R.data=re.data}function Vn(R,A,F,W,re,fe){if(re.width===0||re.height===0)return A;if(re.width>R.width||re.height>R.height||F.x>R.width-re.width||F.y>R.height-re.height)throw new RangeError("out of range source coordinates for image copy");if(re.width>A.width||re.height>A.height||W.x>A.width-re.width||W.y>A.height-re.height)throw new RangeError("out of range destination coordinates for image copy");let pe=R.data,ze=A.data;if(pe===ze)throw new Error("srcData equals dstData, so image is already copied");for(let Ke=0;Ke<re.height;Ke++){let ct=((F.y+Ke)*R.width+F.x)*fe,Lt=((W.y+Ke)*A.width+W.x)*fe;for(let $t=0;$t<re.width*fe;$t++)ze[Lt+$t]=pe[ct+$t]}return A}class na{constructor(A,F){Ni(this,A,1,F)}resize(A){pn(this,A,1)}clone(){return new na({width:this.width,height:this.height},new Uint8Array(this.data))}static copy(A,F,W,re,fe){Vn(A,F,W,re,fe,1)}}class Ki{constructor(A,F){Ni(this,A,4,F)}resize(A){pn(this,A,4)}replace(A,F){F?this.data.set(A):this.data=A instanceof Uint8ClampedArray?new Uint8Array(A.buffer):A}clone(){return new Ki({width:this.width,height:this.height},new Uint8Array(this.data))}static copy(A,F,W,re,fe){Vn(A,F,W,re,fe,4)}}function kn(R){let A={},F=R.resolution||256,W=R.clips?R.clips.length:1,re=R.image||new Ki({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)=>{A[R.evaluationKey]=Ke;let ct=R.expression.evaluate(A);re.data[pe+ze+0]=Math.floor(255*ct.r/ct.a),re.data[pe+ze+1]=Math.floor(255*ct.g/ct.a),re.data[pe+ze+2]=Math.floor(255*ct.b/ct.a),re.data[pe+ze+3]=Math.floor(255*ct.a)};if(R.clips)for(let pe=0,ze=0;pe<W;++pe,ze+=4*F)for(let Ke=0,ct=0;Ke<F;Ke++,ct+=4){let Lt=Ke/(F-1),{start:$t,end:fr}=R.clips[pe];fe(ze,ct,$t*(1-Lt)+fr*Lt)}else for(let pe=0,ze=0;pe<F;pe++,ze+=4)fe(0,ze,pe/(F-1));return re}Fi("AlphaImage",na),Fi("RGBAImage",Ki);let ta="big-fb";class oa extends B{createBucket(A){return new mn(A)}constructor(A){super(A,Vi),this.heatmapFbos=new Map,this._updateColorRamp()}_handleSpecialPaintPropertyUpdate(A){A==="heatmap-color"&&this._updateColorRamp()}_updateColorRamp(){this.colorRamp=kn({expression:this._transitionablePaint._values["heatmap-color"].value.expression,evaluationKey:"heatmapDensity",image:this.colorRamp}),this.colorRampTexture=null}resize(){this.heatmapFbos.has(ta)&&this.heatmapFbos.delete(ta)}queryRadius(){return 0}queryIntersectsFeature(){return!1}hasOffscreenPass(){return this.paint.get("heatmap-opacity")!==0&&this.visibility!=="none"}}let ba;var is={get paint(){return ba=ba||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 Zs extends B{constructor(A){super(A,is)}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,A,F=2){let W=A&&A.length,re=W?A[0]*F:R.length,fe=Qs(R,0,re,F,!0),pe=[];if(!fe||fe.next===fe.prev)return pe;let ze,Ke,ct;if(W&&(fe=function(Lt,$t,fr,mr){let Pr=[];for(let zr=0,ui=$t.length;zr<ui;zr++){let yi=Qs(Lt,$t[zr]*mr,zr<ui-1?$t[zr+1]*mr:Lt.length,mr,!1);yi===yi.next&&(yi.steiner=!0),Pr.push(J(yi))}Pr.sort(ol);for(let zr=0;zr<Pr.length;zr++)fr=io(Pr[zr],fr);return fr}(R,A,fe,F)),R.length>80*F){ze=1/0,Ke=1/0;let Lt=-1/0,$t=-1/0;for(let fr=F;fr<re;fr+=F){let mr=R[fr],Pr=R[fr+1];mr<ze&&(ze=mr),Pr<Ke&&(Ke=Pr),mr>Lt&&(Lt=mr),Pr>$t&&($t=Pr)}ct=Math.max(Lt-ze,$t-Ke),ct=ct!==0?32767/ct:0}return Vl(fe,pe,F,ze,Ke,ct,0),pe}function Qs(R,A,F,W,re){let fe;if(re===function(pe,ze,Ke,ct){let Lt=0;for(let $t=ze,fr=Ke-ct;$t<Ke;$t+=ct)Lt+=(pe[fr]-pe[$t])*(pe[$t+1]+pe[fr+1]),fr=$t;return Lt}(R,A,F,W)>0)for(let pe=A;pe<F;pe+=W)fe=qt(pe/W|0,R[pe],R[pe+1],fe);else for(let pe=F-W;pe>=A;pe-=W)fe=qt(pe/W|0,R[pe],R[pe+1],fe);return fe&&ne(fe,fe.next)&&(Ve(fe),fe=fe.next),fe}function al(R,A){if(!R)return R;A||(A=R);let F,W=R;do if(F=!1,W.steiner||!ne(W,W.next)&&de(W.prev,W,W.next)!==0)W=W.next;else{if(Ve(W),W=A=W.prev,W===W.next)break;F=!0}while(F||W!==A);return A}function Vl(R,A,F,W,re,fe,pe){if(!R)return;!pe&&fe&&function(Ke,ct,Lt,$t){let fr=Ke;do fr.z===0&&(fr.z=D(fr.x,fr.y,ct,Lt,$t)),fr.prevZ=fr.prev,fr.nextZ=fr.next,fr=fr.next;while(fr!==Ke);fr.prevZ.nextZ=null,fr.prevZ=null,function(mr){let Pr,zr=1;do{let ui,yi=mr;mr=null;let vn=null;for(Pr=0;yi;){Pr++;let zi=yi,un=0;for(let pa=0;pa<zr&&(un++,zi=zi.nextZ,zi);pa++);let Tn=zr;for(;un>0||Tn>0&&zi;)un!==0&&(Tn===0||!zi||yi.z<=zi.z)?(ui=yi,yi=yi.nextZ,un--):(ui=zi,zi=zi.nextZ,Tn--),vn?vn.nextZ=ui:mr=ui,ui.prevZ=vn,vn=ui;yi=zi}vn.nextZ=null,zr*=2}while(Pr>1)}(fr)}(R,W,re,fe);let ze=R;for(;R.prev!==R.next;){let Ke=R.prev,ct=R.next;if(fe?Vs(R,W,re,fe):ss(R))A.push(Ke.i,R.i,ct.i),Ve(R),R=ct.next,ze=ct.next;else if((R=ct)===ze){pe?pe===1?Vl(R=Ys(al(R),A),A,F,W,re,fe,2):pe===2&&wa(R,A,F,W,re,fe):Vl(al(R),A,F,W,re,fe,1);break}}}function ss(R){let A=R.prev,F=R,W=R.next;if(de(A,F,W)>=0)return!1;let re=A.x,fe=F.x,pe=W.x,ze=A.y,Ke=F.y,ct=W.y,Lt=re<fe?re<pe?re:pe:fe<pe?fe:pe,$t=ze<Ke?ze<ct?ze:ct:Ke<ct?Ke:ct,fr=re>fe?re>pe?re:pe:fe>pe?fe:pe,mr=ze>Ke?ze>ct?ze:ct:Ke>ct?Ke:ct,Pr=W.next;for(;Pr!==A;){if(Pr.x>=Lt&&Pr.x<=fr&&Pr.y>=$t&&Pr.y<=mr&&q(re,ze,fe,Ke,pe,ct,Pr.x,Pr.y)&&de(Pr.prev,Pr,Pr.next)>=0)return!1;Pr=Pr.next}return!0}function Vs(R,A,F,W){let re=R.prev,fe=R,pe=R.next;if(de(re,fe,pe)>=0)return!1;let ze=re.x,Ke=fe.x,ct=pe.x,Lt=re.y,$t=fe.y,fr=pe.y,mr=ze<Ke?ze<ct?ze:ct:Ke<ct?Ke:ct,Pr=Lt<$t?Lt<fr?Lt:fr:$t<fr?$t:fr,zr=ze>Ke?ze>ct?ze:ct:Ke>ct?Ke:ct,ui=Lt>$t?Lt>fr?Lt:fr:$t>fr?$t:fr,yi=D(mr,Pr,A,F,W),vn=D(zr,ui,A,F,W),zi=R.prevZ,un=R.nextZ;for(;zi&&zi.z>=yi&&un&&un.z<=vn;){if(zi.x>=mr&&zi.x<=zr&&zi.y>=Pr&&zi.y<=ui&&zi!==re&&zi!==pe&&q(ze,Lt,Ke,$t,ct,fr,zi.x,zi.y)&&de(zi.prev,zi,zi.next)>=0||(zi=zi.prevZ,un.x>=mr&&un.x<=zr&&un.y>=Pr&&un.y<=ui&&un!==re&&un!==pe&&q(ze,Lt,Ke,$t,ct,fr,un.x,un.y)&&de(un.prev,un,un.next)>=0))return!1;un=un.nextZ}for(;zi&&zi.z>=yi;){if(zi.x>=mr&&zi.x<=zr&&zi.y>=Pr&&zi.y<=ui&&zi!==re&&zi!==pe&&q(ze,Lt,Ke,$t,ct,fr,zi.x,zi.y)&&de(zi.prev,zi,zi.next)>=0)return!1;zi=zi.prevZ}for(;un&&un.z<=vn;){if(un.x>=mr&&un.x<=zr&&un.y>=Pr&&un.y<=ui&&un!==re&&un!==pe&&q(ze,Lt,Ke,$t,ct,fr,un.x,un.y)&&de(un.prev,un,un.next)>=0)return!1;un=un.nextZ}return!0}function Ys(R,A){let F=R;do{let W=F.prev,re=F.next.next;!ne(W,re)&&we(W,F,F.next,re)&&Xt(W,re)&&Xt(re,W)&&(A.push(W.i,F.i,re.i),Ve(F),Ve(F.next),F=R=re),F=F.next}while(F!==R);return al(F)}function wa(R,A,F,W,re,fe){let pe=R;do{let ze=pe.next.next;for(;ze!==pe.prev;){if(pe.i!==ze.i&&K(pe,ze)){let Ke=hr(pe,ze);return pe=al(pe,pe.next),Ke=al(Ke,Ke.next),Vl(pe,A,F,W,re,fe,0),void Vl(Ke,A,F,W,re,fe,0)}ze=ze.next}pe=pe.next}while(pe!==R)}function ol(R,A){return R.x-A.x}function io(R,A){let F=function(re,fe){let pe=fe,ze=re.x,Ke=re.y,ct,Lt=-1/0;do{if(Ke<=pe.y&&Ke>=pe.next.y&&pe.next.y!==pe.y){let zr=pe.x+(Ke-pe.y)*(pe.next.x-pe.x)/(pe.next.y-pe.y);if(zr<=ze&&zr>Lt&&(Lt=zr,ct=pe.x<pe.next.x?pe:pe.next,zr===ze))return ct}pe=pe.next}while(pe!==fe);if(!ct)return null;let $t=ct,fr=ct.x,mr=ct.y,Pr=1/0;pe=ct;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);Xt(pe,re)&&(zr<Pr||zr===Pr&&(pe.x>ct.x||pe.x===ct.x&&Y(ct,pe)))&&(ct=pe,Pr=zr)}pe=pe.next}while(pe!==$t);return ct}(R,A);if(!F)return A;let W=hr(F,R);return al(W,W.next),al(F,F.next)}function Y(R,A){return de(R.prev,R,A.prev)<0&&de(A.next,R,R.next)<0}function D(R,A,F,W,re){return(R=1431655765&((R=858993459&((R=252645135&((R=16711935&((R=(R-F)*re|0)|R<<8))|R<<4))|R<<2))|R<<1))|(A=1431655765&((A=858993459&((A=252645135&((A=16711935&((A=(A-W)*re|0)|A<<8))|A<<4))|A<<2))|A<<1))<<1}function J(R){let A=R,F=R;do(A.x<F.x||A.x===F.x&&A.y<F.y)&&(F=A),A=A.next;while(A!==R);return F}function q(R,A,F,W,re,fe,pe,ze){return(re-pe)*(A-ze)>=(R-pe)*(fe-ze)&&(R-pe)*(W-ze)>=(F-pe)*(A-ze)&&(F-pe)*(fe-ze)>=(re-pe)*(W-ze)}function K(R,A){return R.next.i!==A.i&&R.prev.i!==A.i&&!function(F,W){let re=F;do{if(re.i!==F.i&&re.next.i!==F.i&&re.i!==W.i&&re.next.i!==W.i&&we(re,re.next,F,W))return!0;re=re.next}while(re!==F);return!1}(R,A)&&(Xt(R,A)&&Xt(A,R)&&function(F,W){let re=F,fe=!1,pe=(F.x+W.x)/2,ze=(F.y+W.y)/2;do re.y>ze!=re.next.y>ze&&re.next.y!==re.y&&pe<(re.next.x-re.x)*(ze-re.y)/(re.next.y-re.y)+re.x&&(fe=!fe),re=re.next;while(re!==F);return fe}(R,A)&&(de(R.prev,R,A.prev)||de(R,A.prev,A))||ne(R,A)&&de(R.prev,R,R.next)>0&&de(A.prev,A,A.next)>0)}function de(R,A,F){return(A.y-R.y)*(F.x-A.x)-(A.x-R.x)*(F.y-A.y)}function ne(R,A){return R.x===A.x&&R.y===A.y}function we(R,A,F,W){let re=ft(de(R,A,F)),fe=ft(de(R,A,W)),pe=ft(de(F,W,R)),ze=ft(de(F,W,A));return re!==fe&&pe!==ze||!(re!==0||!Ue(R,F,A))||!(fe!==0||!Ue(R,W,A))||!(pe!==0||!Ue(F,R,W))||!(ze!==0||!Ue(F,A,W))}function Ue(R,A,F){return A.x<=Math.max(R.x,F.x)&&A.x>=Math.min(R.x,F.x)&&A.y<=Math.max(R.y,F.y)&&A.y>=Math.min(R.y,F.y)}function ft(R){return R>0?1:R<0?-1:0}function Xt(R,A){return de(R.prev,R,R.next)<0?de(R,A,R.next)>=0&&de(R,R.prev,A)>=0:de(R,A,R.prev)<0||de(R,R.next,A)<0}function hr(R,A){let F=Qe(R.i,R.x,R.y),W=Qe(A.i,A.x,A.y),re=R.next,fe=A.prev;return R.next=A,A.prev=R,F.next=re,re.prev=F,W.next=F,F.prev=W,fe.next=W,W.prev=fe,W}function qt(R,A,F,W){let re=Qe(R,A,F);return W?(re.next=W.next,re.prev=W,W.next.prev=re,W.next=re):(re.prev=re,re.next=re),re}function Ve(R){R.next.prev=R.prev,R.prev.next=R.next,R.prevZ&&(R.prevZ.nextZ=R.nextZ),R.nextZ&&(R.nextZ.prevZ=R.prevZ)}function Qe(R,A,F){return{i:R,x:A,y:F,prev:null,next:null,z:0,prevZ:null,nextZ:null,steiner:!1}}function at(R,A,F){let W=F.patternDependencies,re=!1;for(let fe of A){let pe=fe.paint.get(`${R}-pattern`);pe.isConstant()||(re=!0);let ze=pe.constantOr(null);ze&&(re=!0,W[ze.to]=!0,W[ze.from]=!0)}return re}function Ct(R,A,F,W,re){let fe=re.patternDependencies;for(let pe of A){let ze=pe.paint.get(`${R}-pattern`).value;if(ze.kind!=="constant"){let Ke=ze.evaluate({zoom:W-1},F,{},re.availableImages),ct=ze.evaluate({zoom:W},F,{},re.availableImages),Lt=ze.evaluate({zoom:W+1},F,{},re.availableImages);Ke=Ke&&Ke.name?Ke.name:Ke,ct=ct&&ct.name?ct.name:ct,Lt=Lt&&Lt.name?Lt.name:Lt,fe[Ke]=!0,fe[ct]=!0,fe[Lt]=!0,F.patterns[pe.id]={min:Ke,mid:ct,max:Lt}}}return F}class Ot{constructor(A){this.zoom=A.zoom,this.overscaling=A.overscaling,this.layers=A.layers,this.layerIds=this.layers.map(F=>F.id),this.index=A.index,this.hasPattern=!1,this.patternFeatures=[],this.layoutVertexArray=new hl,this.indexArray=new se,this.indexArray2=new Te,this.programConfigurations=new Ms(A.layers,A.zoom),this.segments=new Ye,this.segments2=new Ye,this.stateDependentLayerIds=this.layers.filter(F=>F.isStateDependent()).map(F=>F.id)}populate(A,F,W){this.hasPattern=at("fill",this.layers,F);let re=this.layers[0].layout.get("fill-sort-key"),fe=!re.isConstant(),pe=[];for(let{feature:ze,id:Ke,index:ct,sourceLayerIndex:Lt}of A){let $t=this.layers[0]._featureFilter.needGeometry,fr=Sl(ze,$t);if(!this.layers[0]._featureFilter.filter(new rs(this.zoom),fr,W))continue;let mr=fe?re.evaluate(fr,{},W,F.availableImages):void 0,Pr={id:Ke,properties:ze.properties,type:ze.type,sourceLayerIndex:Lt,index:ct,geometry:$t?fr.geometry:$s(ze),patterns:{},sortKey:mr};pe.push(Pr)}fe&&pe.sort((ze,Ke)=>ze.sortKey-Ke.sortKey);for(let ze of pe){let{geometry:Ke,index:ct,sourceLayerIndex:Lt}=ze;if(this.hasPattern){let $t=Ct("fill",this.layers,ze,this.zoom,F);this.patternFeatures.push($t)}else this.addFeature(ze,Ke,ct,W,{});F.featureIndex.insert(A[ct].feature,Ke,ct,Lt,this.index)}}update(A,F,W){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(A,F,this.stateDependentLayers,W)}addFeatures(A,F,W){for(let re of this.patternFeatures)this.addFeature(re,re.geometry,re.index,F,W)}isEmpty(){return this.layoutVertexArray.length===0}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(A){this.uploaded||(this.layoutVertexBuffer=A.createVertexBuffer(this.layoutVertexArray,Ml),this.indexBuffer=A.createIndexBuffer(this.indexArray),this.indexBuffer2=A.createIndexBuffer(this.indexArray2)),this.programConfigurations.upload(A),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.indexBuffer2.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.segments2.destroy())}addFeature(A,F,W,re,fe){for(let pe of Cf(F,500)){let ze=0;for(let mr of pe)ze+=mr.length;let Ke=this.segments.prepareSegment(ze,this.layoutVertexArray,this.indexArray),ct=Ke.vertexLength,Lt=[],$t=[];for(let mr of pe){if(mr.length===0)continue;mr!==pe[0]&&$t.push(Lt.length/2);let Pr=this.segments2.prepareSegment(mr.length,this.layoutVertexArray,this.indexArray2),zr=Pr.vertexLength;this.layoutVertexArray.emplaceBack(mr[0].x,mr[0].y),this.indexArray2.emplaceBack(zr+mr.length-1,zr),Lt.push(mr[0].x),Lt.push(mr[0].y);for(let ui=1;ui<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);Pr.vertexLength+=mr.length,Pr.primitiveLength+=mr.length}let fr=zo(Lt,$t);for(let mr=0;mr<fr.length;mr+=3)this.indexArray.emplaceBack(ct+fr[mr],ct+fr[mr+1],ct+fr[mr+2]);Ke.vertexLength+=ze,Ke.primitiveLength+=fr.length/3}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,A,W,fe,re)}}let Rt,Bt;Fi("FillBucket",Ot,{omit:["layers","patternFeatures"]});var Dt={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 Rt=Rt||new ue({"fill-sort-key":new oo(ce.layout_fill["fill-sort-key"])})}};class yt extends B{constructor(A){super(A,Dt)}recalculate(A,F){super.recalculate(A,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(A){return new Ot(A)}queryRadius(){return Hn(this.paint.get("fill-translate"))}queryIntersectsFeature(A,F,W,re,fe,pe,ze){return bt(en(A,this.paint.get("fill-translate"),this.paint.get("fill-translate-anchor"),pe.angle,ze),re)}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:ur}=Pt;var br={},Ur=s,Di=fi;function fi(R,A,F,W,re){this.properties={},this.extent=F,this.type=0,this._pbf=R,this._geometry=-1,this._keys=W,this._values=re,R.readFields(Ti,this,A)}function Ti(R,A,F){R==1?A.id=F.readVarint():R==2?function(W,re){for(var fe=W.readVarint()+W.pos;W.pos<fe;){var pe=re._keys[W.readVarint()],ze=re._values[W.readVarint()];re.properties[pe]=ze}}(F,A):R==3?A.type=F.readVarint():R==4&&(A._geometry=F.pos)}function gn(R){for(var A,F,W=0,re=0,fe=R.length,pe=fe-1;re<fe;pe=re++)W+=((F=R[pe]).x-(A=R[re]).x)*(A.y+F.y);return W}fi.types=["Unknown","Point","LineString","Polygon"],fi.prototype.loadGeometry=function(){var R=this._pbf;R.pos=this._geometry;for(var A,F=R.readVarint()+R.pos,W=1,re=0,fe=0,pe=0,ze=[];R.pos<F;){if(re<=0){var Ke=R.readVarint();W=7&Ke,re=Ke>>3}if(re--,W===1||W===2)fe+=R.readSVarint(),pe+=R.readSVarint(),W===1&&(A&&ze.push(A),A=[]),A.push(new Ur(fe,pe));else{if(W!==7)throw new Error("unknown command "+W);A&&A.push(A[0].clone())}}return A&&ze.push(A),ze},fi.prototype.bbox=function(){var R=this._pbf;R.pos=this._geometry;for(var A=R.readVarint()+R.pos,F=1,W=0,re=0,fe=0,pe=1/0,ze=-1/0,Ke=1/0,ct=-1/0;R.pos<A;){if(W<=0){var Lt=R.readVarint();F=7&Lt,W=Lt>>3}if(W--,F===1||F===2)(re+=R.readSVarint())<pe&&(pe=re),re>ze&&(ze=re),(fe+=R.readSVarint())<Ke&&(Ke=fe),fe>ct&&(ct=fe);else if(F!==7)throw new Error("unknown command "+F)}return[pe,Ke,ze,ct]},fi.prototype.toGeoJSON=function(R,A,F){var W,re,fe=this.extent*Math.pow(2,F),pe=this.extent*R,ze=this.extent*A,Ke=this.loadGeometry(),ct=fi.types[this.type];function Lt(mr){for(var Pr=0;Pr<mr.length;Pr++){var zr=mr[Pr];mr[Pr]=[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 $t=[];for(W=0;W<Ke.length;W++)$t[W]=Ke[W][0];Lt(Ke=$t);break;case 2:for(W=0;W<Ke.length;W++)Lt(Ke[W]);break;case 3:for(Ke=function(mr){var Pr=mr.length;if(Pr<=1)return[mr];for(var zr,ui,yi=[],vn=0;vn<Pr;vn++){var zi=gn(mr[vn]);zi!==0&&(ui===void 0&&(ui=zi<0),ui===zi<0?(zr&&yi.push(zr),zr=[mr[vn]]):zr.push(mr[vn]))}return zr&&yi.push(zr),yi}(Ke),W=0;W<Ke.length;W++)for(re=0;re<Ke[W].length;re++)Lt(Ke[W][re])}Ke.length===1?Ke=Ke[0]:ct="Multi"+ct;var fr={type:"Feature",geometry:{type:ct,coordinates:Ke},properties:this.properties};return"id"in this&&(fr.id=this.id),fr};var rn=Di,Ci=Bi;function Bi(R,A){this.version=1,this.name=null,this.extent=4096,this.length=0,this._pbf=R,this._keys=[],this._values=[],this._features=[],R.readFields(Gi,this,A),this.length=this._features.length}function Gi(R,A,F){R===15?A.version=F.readVarint():R===1?A.name=F.readString():R===5?A.extent=F.readVarint():R===2?A._features.push(F.pos):R===3?A._keys.push(F.readString()):R===4&&A._values.push(function(W){for(var re=null,fe=W.readVarint()+W.pos;W.pos<fe;){var pe=W.readVarint()>>3;re=pe===1?W.readString():pe===2?W.readFloat():pe===3?W.readDouble():pe===4?W.readVarint64():pe===5?W.readVarint():pe===6?W.readSVarint():pe===7?W.readBoolean():null}return re}(F))}Bi.prototype.feature=function(R){if(R<0||R>=this._features.length)throw new Error("feature index out of bounds");this._pbf.pos=this._features[R];var A=this._pbf.readVarint()+this._pbf.pos;return new rn(this._pbf,A,this.extent,this._keys,this._values)};var sn=Ci;function zn(R,A,F){if(R===3){var W=new sn(F,F.readVarint()+F.pos);W.length&&(A[W.name]=W)}}br.VectorTile=function(R,A){this.layers=R.readFields(zn,{},A)},br.VectorTileFeature=Di,br.VectorTileLayer=Ci;let Ja=br.VectorTileFeature.types,co=Math.pow(2,13);function ts(R,A,F,W,re,fe,pe,ze){R.emplaceBack(A,F,2*Math.floor(W*co)+pe,re*co*2,fe*co*2,Math.round(ze))}class so{constructor(A){this.zoom=A.zoom,this.overscaling=A.overscaling,this.layers=A.layers,this.layerIds=this.layers.map(F=>F.id),this.index=A.index,this.hasPattern=!1,this.layoutVertexArray=new Ul,this.centroidVertexArray=new wo,this.indexArray=new se,this.programConfigurations=new Ms(A.layers,A.zoom),this.segments=new Ye,this.stateDependentLayerIds=this.layers.filter(F=>F.isStateDependent()).map(F=>F.id)}populate(A,F,W){this.features=[],this.hasPattern=at("fill-extrusion",this.layers,F);for(let{feature:re,id:fe,index:pe,sourceLayerIndex:ze}of A){let Ke=this.layers[0]._featureFilter.needGeometry,ct=Sl(re,Ke);if(!this.layers[0]._featureFilter.filter(new rs(this.zoom),ct,W))continue;let Lt={id:fe,sourceLayerIndex:ze,index:pe,geometry:Ke?ct.geometry:$s(re),properties:re.properties,type:re.type,patterns:{}};this.hasPattern?this.features.push(Ct("fill-extrusion",this.layers,Lt,this.zoom,F)):this.addFeature(Lt,Lt.geometry,pe,W,{}),F.featureIndex.insert(re,Lt.geometry,pe,ze,this.index,!0)}}addFeatures(A,F,W){for(let re of this.features){let{geometry:fe}=re;this.addFeature(re,fe,re.index,F,W)}}update(A,F,W){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(A,F,this.stateDependentLayers,W)}isEmpty(){return this.layoutVertexArray.length===0&&this.centroidVertexArray.length===0}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(A){this.uploaded||(this.layoutVertexBuffer=A.createVertexBuffer(this.layoutVertexArray,ur),this.centroidVertexBuffer=A.createVertexBuffer(this.centroidVertexArray,ht.members,!0),this.indexBuffer=A.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(A),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.centroidVertexBuffer.destroy())}addFeature(A,F,W,re,fe){for(let pe of Cf(F,500)){let ze={x:0,y:0,vertexCount:0},Ke=0;for(let Pr of pe)Ke+=Pr.length;let ct=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray);for(let Pr of pe){if(Pr.length===0||ms(Pr))continue;let zr=0;for(let ui=0;ui<Pr.length;ui++){let yi=Pr[ui];if(ui>=1){let vn=Pr[ui-1];if(!Zo(yi,vn)){ct.vertexLength+4>Ye.MAX_VERTEX_ARRAY_LENGTH&&(ct=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray));let zi=yi.sub(vn)._perp()._unit(),un=vn.dist(yi);zr+un>32768&&(zr=0),ts(this.layoutVertexArray,yi.x,yi.y,zi.x,zi.y,0,0,zr),ts(this.layoutVertexArray,yi.x,yi.y,zi.x,zi.y,0,1,zr),ze.x+=2*yi.x,ze.y+=2*yi.y,ze.vertexCount+=2,zr+=un,ts(this.layoutVertexArray,vn.x,vn.y,zi.x,zi.y,0,0,zr),ts(this.layoutVertexArray,vn.x,vn.y,zi.x,zi.y,0,1,zr),ze.x+=2*vn.x,ze.y+=2*vn.y,ze.vertexCount+=2;let Tn=ct.vertexLength;this.indexArray.emplaceBack(Tn,Tn+2,Tn+1),this.indexArray.emplaceBack(Tn+1,Tn+2,Tn+3),ct.vertexLength+=4,ct.primitiveLength+=2}}}}if(ct.vertexLength+Ke>Ye.MAX_VERTEX_ARRAY_LENGTH&&(ct=this.segments.prepareSegment(Ke,this.layoutVertexArray,this.indexArray)),Ja[A.type]!=="Polygon")continue;let Lt=[],$t=[],fr=ct.vertexLength;for(let Pr of pe)if(Pr.length!==0){Pr!==pe[0]&&$t.push(Lt.length/2);for(let zr=0;zr<Pr.length;zr++){let ui=Pr[zr];ts(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,$t);for(let Pr=0;Pr<mr.length;Pr+=3)this.indexArray.emplaceBack(fr+mr[Pr],fr+mr[Pr+2],fr+mr[Pr+1]);ct.primitiveLength+=mr.length/3,ct.vertexLength+=Ke;for(let Pr=0;Pr<ze.vertexCount;Pr++){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,A,W,fe,re)}}function Zo(R,A){return R.x===A.x&&(R.x<0||R.x>ja)||R.y===A.y&&(R.y<0||R.y>ja)}function ms(R){return R.every(A=>A.x<0)||R.every(A=>A.x>ja)||R.every(A=>A.y<0)||R.every(A=>A.y>ja)}let ou;Fi("FillExtrusionBucket",so,{omit:["layers","features"]});var Cv={get paint(){return ou=ou||new ue({"fill-extrusion-opacity":new Ua(ce["paint_fill-extrusion"]["fill-extrusion-opacity"]),"fill-extrusion-color":new oo(ce["paint_fill-extrusion"]["fill-extrusion-color"]),"fill-extrusion-translate":new Ua(ce["paint_fill-extrusion"]["fill-extrusion-translate"]),"fill-extrusion-translate-anchor":new Ua(ce["paint_fill-extrusion"]["fill-extrusion-translate-anchor"]),"fill-extrusion-pattern":new Vc(ce["paint_fill-extrusion"]["fill-extrusion-pattern"]),"fill-extrusion-height":new oo(ce["paint_fill-extrusion"]["fill-extrusion-height"]),"fill-extrusion-base":new oo(ce["paint_fill-extrusion"]["fill-extrusion-base"]),"fill-extrusion-vertical-gradient":new Ua(ce["paint_fill-extrusion"]["fill-extrusion-vertical-gradient"])})}};class Lv extends B{constructor(A){super(A,Cv)}createBucket(A){return new so(A)}queryRadius(){return Hn(this.paint.get("fill-extrusion-translate"))}is3D(){return!0}queryIntersectsFeature(A,F,W,re,fe,pe,ze,Ke){let ct=en(A,this.paint.get("fill-extrusion-translate"),this.paint.get("fill-extrusion-translate-anchor"),pe.angle,ze),Lt=this.paint.get("fill-extrusion-height").evaluate(F,W),$t=this.paint.get("fill-extrusion-base").evaluate(F,W),fr=function(Pr,zr,ui,yi){let vn=[];for(let zi of Pr){let un=[zi.x,zi.y,0,1];Bn(un,un,zr),vn.push(new u(un[0]/un[3],un[1]/un[3]))}return vn}(ct,Ke),mr=function(Pr,zr,ui,yi){let vn=[],zi=[],un=yi[8]*zr,Tn=yi[9]*zr,pa=yi[10]*zr,ro=yi[11]*zr,Vo=yi[8]*ui,Xa=yi[9]*ui,sa=yi[10]*ui,Mo=yi[11]*ui;for(let fo of Pr){let lo=[],Xn=[];for(let Ro of fo){let uo=Ro.x,$o=Ro.y,Ju=yi[0]*uo+yi[4]*$o+yi[12],qu=yi[1]*uo+yi[5]*$o+yi[13],Mh=yi[2]*uo+yi[6]*$o+yi[14],Qv=yi[3]*uo+yi[7]*$o+yi[15],ld=Mh+pa,Eh=Qv+ro,Gd=Ju+Vo,Hd=qu+Xa,jd=Mh+sa,Af=Qv+Mo,kh=new u((Ju+un)/Eh,(qu+Tn)/Eh);kh.z=ld/Eh,lo.push(kh);let Ed=new u(Gd/Af,Hd/Af);Ed.z=jd/Af,Xn.push(Ed)}vn.push(lo),zi.push(Xn)}return[vn,zi]}(re,$t,Lt,Ke);return function(Pr,zr,ui){let yi=1/0;bt(ui,zr)&&(yi=Kv(ui,zr[0]));for(let vn=0;vn<zr.length;vn++){let zi=zr[vn],un=Pr[vn];for(let Tn=0;Tn<zi.length-1;Tn++){let pa=zi[Tn],ro=[pa,zi[Tn+1],un[Tn+1],un[Tn],pa];Sc(ui,ro)&&(yi=Math.min(yi,Kv(ui,ro)))}}return yi!==1/0&&yi}(mr[0],mr[1],fr)}}function wd(R,A){return R.x*A.x+R.y*A.y}function Kv(R,A){if(R.length===1){let F=0,W=A[F++],re;for(;!re||W.equals(re);)if(re=A[F++],!re)return 1/0;for(;F<A.length;F++){let fe=A[F],pe=R[0],ze=re.sub(W),Ke=fe.sub(W),ct=pe.sub(W),Lt=wd(ze,ze),$t=wd(ze,Ke),fr=wd(Ke,Ke),mr=wd(ct,ze),Pr=wd(ct,Ke),zr=Lt*fr-$t*$t,ui=(fr*mr-$t*Pr)/zr,yi=(Lt*Pr-$t*mr)/zr,vn=W.z*(1-ui-yi)+re.z*ui+fe.z*yi;if(isFinite(vn))return vn}return 1/0}{let F=1/0;for(let W of A)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:pp}=cg,Td=qe([{name:"a_uv_x",components:1,type:"Float32"},{name:"a_split_index",components:1,type:"Float32"}]),{members:gp}=Td,Vd=br.VectorTileFeature.types,Ad=Math.cos(Math.PI/180*37.5),Pv=Math.pow(2,14)/.5;class Jv{constructor(A){this.zoom=A.zoom,this.overscaling=A.overscaling,this.layers=A.layers,this.layerIds=this.layers.map(F=>F.id),this.index=A.index,this.hasPattern=!1,this.patternFeatures=[],this.lineClipsArray=[],this.gradients={},this.layers.forEach(F=>{this.gradients[F.id]={}}),this.layoutVertexArray=new Lu,this.layoutVertexArray2=new au,this.indexArray=new se,this.programConfigurations=new Ms(A.layers,A.zoom),this.segments=new Ye,this.maxLineLength=0,this.stateDependentLayerIds=this.layers.filter(F=>F.isStateDependent()).map(F=>F.id)}populate(A,F,W){this.hasPattern=at("line",this.layers,F);let re=this.layers[0].layout.get("line-sort-key"),fe=!re.isConstant(),pe=[];for(let{feature:ze,id:Ke,index:ct,sourceLayerIndex:Lt}of A){let $t=this.layers[0]._featureFilter.needGeometry,fr=Sl(ze,$t);if(!this.layers[0]._featureFilter.filter(new rs(this.zoom),fr,W))continue;let mr=fe?re.evaluate(fr,{},W):void 0,Pr={id:Ke,properties:ze.properties,type:ze.type,sourceLayerIndex:Lt,index:ct,geometry:$t?fr.geometry:$s(ze),patterns:{},sortKey:mr};pe.push(Pr)}fe&&pe.sort((ze,Ke)=>ze.sortKey-Ke.sortKey);for(let ze of pe){let{geometry:Ke,index:ct,sourceLayerIndex:Lt}=ze;if(this.hasPattern){let $t=Ct("line",this.layers,ze,this.zoom,F);this.patternFeatures.push($t)}else this.addFeature(ze,Ke,ct,W,{});F.featureIndex.insert(A[ct].feature,Ke,ct,Lt,this.index)}}update(A,F,W){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(A,F,this.stateDependentLayers,W)}addFeatures(A,F,W){for(let re of this.patternFeatures)this.addFeature(re,re.geometry,re.index,F,W)}isEmpty(){return this.layoutVertexArray.length===0}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(A){this.uploaded||(this.layoutVertexArray2.length!==0&&(this.layoutVertexBuffer2=A.createVertexBuffer(this.layoutVertexArray2,gp)),this.layoutVertexBuffer=A.createVertexBuffer(this.layoutVertexArray,pp),this.indexBuffer=A.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(A),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())}lineFeatureClips(A){if(A.properties&&Object.prototype.hasOwnProperty.call(A.properties,"mapbox_clip_start")&&Object.prototype.hasOwnProperty.call(A.properties,"mapbox_clip_end"))return{start:+A.properties.mapbox_clip_start,end:+A.properties.mapbox_clip_end}}addFeature(A,F,W,re,fe){let pe=this.layers[0].layout,ze=pe.get("line-join").evaluate(A,{}),Ke=pe.get("line-cap"),ct=pe.get("line-miter-limit"),Lt=pe.get("line-round-limit");this.lineClips=this.lineFeatureClips(A);for(let $t of F)this.addLine($t,A,ze,Ke,ct,Lt);this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,A,W,fe,re)}addLine(A,F,W,re,fe,pe){if(this.distance=0,this.scaledDistance=0,this.totalDistance=0,this.lineClips){this.lineClipsArray.push(this.lineClips);for(let yi=0;yi<A.length-1;yi++)this.totalDistance+=A[yi].dist(A[yi+1]);this.updateScaledDistance(),this.maxLineLength=Math.max(this.maxLineLength,this.totalDistance)}let ze=Vd[F.type]==="Polygon",Ke=A.length;for(;Ke>=2&&A[Ke-1].equals(A[Ke-2]);)Ke--;let ct=0;for(;ct<Ke-1&&A[ct].equals(A[ct+1]);)ct++;if(Ke<(ze?3:2))return;W==="bevel"&&(fe=1.05);let Lt=this.overscaling<=16?15*ja/(512*this.overscaling):0,$t=this.segments.prepareSegment(10*Ke,this.layoutVertexArray,this.indexArray),fr,mr,Pr,zr,ui;this.e1=this.e2=-1,ze&&(fr=A[Ke-2],ui=A[ct].sub(fr)._unit()._perp());for(let yi=ct;yi<Ke;yi++){if(Pr=yi===Ke-1?ze?A[ct+1]:void 0:A[yi+1],Pr&&A[yi].equals(Pr))continue;ui&&(zr=ui),fr&&(mr=fr),fr=A[yi],ui=Pr?Pr.sub(fr)._unit()._perp():zr,zr=zr||ui;let vn=zr.add(ui);vn.x===0&&vn.y===0||vn._unit();let zi=zr.x*ui.x+zr.y*ui.y,un=vn.x*ui.x+vn.y*ui.y,Tn=un!==0?1/un:1/0,pa=2*Math.sqrt(2-2*un),ro=un<Ad&&mr&&Pr,Vo=zr.x*ui.y-zr.y*ui.x>0;if(ro&&yi>ct){let Mo=fr.dist(mr);if(Mo>2*Lt){let fo=fr.sub(fr.sub(mr)._mult(Lt/Mo)._round());this.updateDistance(mr,fo),this.addCurrentVertex(fo,zr,0,0,$t),mr=fo}}let Xa=mr&&Pr,sa=Xa?W:ze?"butt":re;if(Xa&&sa==="round"&&(Tn<pe?sa="miter":Tn<=2&&(sa="fakeround")),sa==="miter"&&Tn>fe&&(sa="bevel"),sa==="bevel"&&(Tn>2&&(sa="flipbevel"),Tn<fe&&(sa="miter")),mr&&this.updateDistance(mr,fr),sa==="miter")vn._mult(Tn),this.addCurrentVertex(fr,vn,0,0,$t);else if(sa==="flipbevel"){if(Tn>100)vn=ui.mult(-1);else{let Mo=Tn*zr.add(ui).mag()/zr.sub(ui).mag();vn._perp()._mult(Mo*(Vo?-1:1))}this.addCurrentVertex(fr,vn,0,0,$t),this.addCurrentVertex(fr,vn.mult(-1),0,0,$t)}else if(sa==="bevel"||sa==="fakeround"){let Mo=-Math.sqrt(Tn*Tn-1),fo=Vo?Mo:0,lo=Vo?0:Mo;if(mr&&this.addCurrentVertex(fr,zr,fo,lo,$t),sa==="fakeround"){let Xn=Math.round(180*pa/Math.PI/20);for(let Ro=1;Ro<Xn;Ro++){let uo=Ro/Xn;if(uo!==.5){let Ju=uo-.5;uo+=uo*Ju*(uo-1)*((1.0904+zi*(zi*(3.55645-1.43519*zi)-3.2452))*Ju*Ju+(.848013+zi*(.215638*zi-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,$t)}}Pr&&this.addCurrentVertex(fr,ui,-fo,-lo,$t)}else if(sa==="butt")this.addCurrentVertex(fr,vn,0,0,$t);else if(sa==="square"){let Mo=mr?1:-1;this.addCurrentVertex(fr,vn,Mo,Mo,$t)}else sa==="round"&&(mr&&(this.addCurrentVertex(fr,zr,0,0,$t),this.addCurrentVertex(fr,zr,1,1,$t,!0)),Pr&&(this.addCurrentVertex(fr,ui,-1,-1,$t,!0),this.addCurrentVertex(fr,ui,0,0,$t)));if(ro&&yi<Ke-1){let Mo=fr.dist(Pr);if(Mo>2*Lt){let fo=fr.add(Pr.sub(fr)._mult(Lt/Mo)._round());this.updateDistance(fr,fo),this.addCurrentVertex(fo,ui,0,0,$t),fr=fo}}}}addCurrentVertex(A,F,W,re,fe,pe=!1){let ze=F.y*re-F.x,Ke=-F.y-F.x*re;this.addHalfVertex(A,F.x+F.y*W,F.y-F.x*W,pe,!1,W,fe),this.addHalfVertex(A,ze,Ke,pe,!0,-re,fe),this.distance>Pv/2&&this.totalDistance===0&&(this.distance=0,this.updateScaledDistance(),this.addCurrentVertex(A,F,W,re,fe,pe))}addHalfVertex({x:A,y:F},W,re,fe,pe,ze,Ke){let ct=.5*(this.lineClips?this.scaledDistance*(Pv-1):this.scaledDistance);this.layoutVertexArray.emplaceBack((A<<1)+(fe?1:0),(F<<1)+(pe?1:0),Math.round(63*W)+128,Math.round(63*re)+128,1+(ze===0?0:ze<0?-1:1)|(63&ct)<<2,ct>>6),this.lineClips&&this.layoutVertexArray2.emplaceBack((this.scaledDistance-this.lineClips.start)/(this.lineClips.end-this.lineClips.start),this.lineClipsArray.length);let Lt=Ke.vertexLength++;this.e1>=0&&this.e2>=0&&(this.indexArray.emplaceBack(this.e1,this.e2,Lt),Ke.primitiveLength++),pe?this.e2=Lt:this.e1=Lt}updateScaledDistance(){this.scaledDistance=this.lineClips?this.lineClips.start+(this.lineClips.end-this.lineClips.start)*this.distance/this.totalDistance:this.distance}updateDistance(A,F){this.distance+=A.dist(F),this.updateScaledDistance()}}let Iv,ay;Fi("LineBucket",Jv,{omit:["layers","patternFeatures"]});var fg={get paint(){return ay=ay||new ue({"line-opacity":new oo(ce.paint_line["line-opacity"]),"line-color":new oo(ce.paint_line["line-color"]),"line-translate":new Ua(ce.paint_line["line-translate"]),"line-translate-anchor":new Ua(ce.paint_line["line-translate-anchor"]),"line-width":new oo(ce.paint_line["line-width"]),"line-gap-width":new oo(ce.paint_line["line-gap-width"]),"line-offset":new oo(ce.paint_line["line-offset"]),"line-blur":new oo(ce.paint_line["line-blur"]),"line-dasharray":new hc(ce.paint_line["line-dasharray"]),"line-pattern":new Vc(ce.paint_line["line-pattern"]),"line-gradient":new Ku(ce.paint_line["line-gradient"])})},get layout(){return Iv=Iv||new ue({"line-cap":new Ua(ce.layout_line["line-cap"]),"line-join":new oo(ce.layout_line["line-join"]),"line-miter-limit":new Ua(ce.layout_line["line-miter-limit"]),"line-round-limit":new Ua(ce.layout_line["line-round-limit"]),"line-sort-key":new oo(ce.layout_line["line-sort-key"])})}};class oh extends oo{possiblyEvaluate(A,F){return F=new rs(Math.floor(F.zoom),{now:F.now,fadeDuration:F.fadeDuration,zoomHistory:F.zoomHistory,transition:F.transition}),super.possiblyEvaluate(A,F)}evaluate(A,F,W,re){return F=L({},F,{zoom:Math.floor(F.zoom)}),super.evaluate(A,F,W,re)}}let hg;class oy extends B{constructor(A){super(A,fg),this.gradientVersion=0,hg||(hg=new oh(fg.paint.properties["line-width"].specification),hg.useIntegerZoom=!0)}_handleSpecialPaintPropertyUpdate(A){if(A==="line-gradient"){let F=this.gradientExpression();this.stepInterpolant=!!function(W){return W._styleExpression!==void 0}(F)&&F._styleExpression.expression instanceof _n,this.gradientVersion=(this.gradientVersion+1)%Number.MAX_SAFE_INTEGER}}gradientExpression(){return this._transitionablePaint._values["line-gradient"].value.expression}recalculate(A,F){super.recalculate(A,F),this.paint._values["line-floorwidth"]=hg.possiblyEvaluate(this._transitioningPaint._values["line-width"].value,A)}createBucket(A){return new Jv(A)}queryRadius(A){let F=A,W=jh(Ei("line-width",this,F),Ei("line-gap-width",this,F)),re=Ei("line-offset",this,F);return W/2+Math.abs(re)+Hn(this.paint.get("line-translate"))}queryIntersectsFeature(A,F,W,re,fe,pe,ze){let Ke=en(A,this.paint.get("line-translate"),this.paint.get("line-translate-anchor"),pe.angle,ze),ct=ze/2*jh(this.paint.get("line-width").evaluate(F,W),this.paint.get("line-gap-width").evaluate(F,W)),Lt=this.paint.get("line-offset").evaluate(F,W);return Lt&&(re=function($t,fr){let mr=[];for(let Pr=0;Pr<$t.length;Pr++){let zr=$t[Pr],ui=[];for(let yi=0;yi<zr.length;yi++){let vn=zr[yi-1],zi=zr[yi],un=zr[yi+1],Tn=yi===0?new u(0,0):zi.sub(vn)._unit()._perp(),pa=yi===zr.length-1?new u(0,0):un.sub(zi)._unit()._perp(),ro=Tn._add(pa)._unit(),Vo=ro.x*pa.x+ro.y*pa.y;Vo!==0&&ro._mult(1/Vo),ui.push(ro._mult(fr)._add(zi))}mr.push(ui)}return mr}(re,Lt*ze)),function($t,fr,mr){for(let Pr=0;Pr<fr.length;Pr++){let zr=fr[Pr];if($t.length>=3){for(let ui=0;ui<zr.length;ui++)if(Ui($t,zr[ui]))return!0}if(zt($t,zr,mr))return!0}return!1}(Ke,re,ct)}isTileClipped(){return!0}}function jh(R,A){return A>0?A+2*R:R}let im=qe([{name:"a_pos_offset",components:4,type:"Int16"},{name:"a_data",components:4,type:"Uint16"},{name:"a_pixeloffset",components:4,type:"Int16"}],4),b1=qe([{name:"a_projected_pos",components:3,type:"Float32"}],4);qe([{name:"a_fade_opacity",components:1,type:"Uint32"}],4);let w1=qe([{name:"a_placed",components:2,type:"Uint8"},{name:"a_shift",components:2,type:"Float32"},{name:"a_box_real",components:2,type:"Int16"}]);qe([{type:"Int16",name:"anchorPointX"},{type:"Int16",name:"anchorPointY"},{type:"Int16",name:"x1"},{type:"Int16",name:"y1"},{type:"Int16",name:"x2"},{type:"Int16",name:"y2"},{type:"Uint32",name:"featureIndex"},{type:"Uint16",name:"sourceLayerIndex"},{type:"Uint16",name:"bucketIndex"}]);let sy=qe([{name:"a_pos",components:2,type:"Int16"},{name:"a_anchor_pos",components:2,type:"Int16"},{name:"a_extrude",components:2,type:"Int16"}],4),nm=qe([{name:"a_pos",components:2,type:"Float32"},{name:"a_radius",components:1,type:"Float32"},{name:"a_flags",components:2,type:"Int16"}],4);function am(R,A,F){return R.sections.forEach(W=>{W.text=function(re,fe,pe){let ze=fe.layout.get("text-transform").evaluate(pe,{});return ze==="uppercase"?re=re.toLocaleUpperCase():ze==="lowercase"&&(re=re.toLocaleLowerCase()),ys.applyArabicShaping&&(re=ys.applyArabicShaping(re)),re}(W.text,A,F)}),R}qe([{name:"triangle",components:3,type:"Uint16"}]),qe([{type:"Int16",name:"anchorX"},{type:"Int16",name:"anchorY"},{type:"Uint16",name:"glyphStartIndex"},{type:"Uint16",name:"numGlyphs"},{type:"Uint32",name:"vertexStartIndex"},{type:"Uint32",name:"lineStartIndex"},{type:"Uint32",name:"lineLength"},{type:"Uint16",name:"segment"},{type:"Uint16",name:"lowerSize"},{type:"Uint16",name:"upperSize"},{type:"Float32",name:"lineOffsetX"},{type:"Float32",name:"lineOffsetY"},{type:"Uint8",name:"writingMode"},{type:"Uint8",name:"placedOrientation"},{type:"Uint8",name:"hidden"},{type:"Uint32",name:"crossTileID"},{type:"Int16",name:"associatedIconIndex"}]),qe([{type:"Int16",name:"anchorX"},{type:"Int16",name:"anchorY"},{type:"Int16",name:"rightJustifiedTextSymbolIndex"},{type:"Int16",name:"centerJustifiedTextSymbolIndex"},{type:"Int16",name:"leftJustifiedTextSymbolIndex"},{type:"Int16",name:"verticalPlacedTextSymbolIndex"},{type:"Int16",name:"placedIconSymbolIndex"},{type:"Int16",name:"verticalPlacedIconSymbolIndex"},{type:"Uint16",name:"key"},{type:"Uint16",name:"textBoxStartIndex"},{type:"Uint16",name:"textBoxEndIndex"},{type:"Uint16",name:"verticalTextBoxStartIndex"},{type:"Uint16",name:"verticalTextBoxEndIndex"},{type:"Uint16",name:"iconBoxStartIndex"},{type:"Uint16",name:"iconBoxEndIndex"},{type:"Uint16",name:"verticalIconBoxStartIndex"},{type:"Uint16",name:"verticalIconBoxEndIndex"},{type:"Uint16",name:"featureIndex"},{type:"Uint16",name:"numHorizontalGlyphVertices"},{type:"Uint16",name:"numVerticalGlyphVertices"},{type:"Uint16",name:"numIconVertices"},{type:"Uint16",name:"numVerticalIconVertices"},{type:"Uint16",name:"useRuntimeCollisionCircles"},{type:"Uint32",name:"crossTileID"},{type:"Float32",name:"textBoxScale"},{type:"Float32",name:"collisionCircleDiameter"},{type:"Uint16",name:"textAnchorOffsetStartIndex"},{type:"Uint16",name:"textAnchorOffsetEndIndex"}]),qe([{type:"Float32",name:"offsetX"}]),qe([{type:"Int16",name:"x"},{type:"Int16",name:"y"},{type:"Int16",name:"tileUnitDistanceFromAnchor"}]),qe([{type:"Uint16",name:"textAnchor"},{type:"Float32",components:2,name:"textOffset"}]);let vc={"!":"\uFE15","#":"\uFF03",$:"\uFF04","%":"\uFF05","&":"\uFF06","(":"\uFE35",")":"\uFE36","*":"\uFF0A","+":"\uFF0B",",":"\uFE10","-":"\uFE32",".":"\u30FB","/":"\uFF0F",":":"\uFE13",";":"\uFE14","<":"\uFE3F","=":"\uFF1D",">":"\uFE40","?":"\uFE16","@":"\uFF20","[":"\uFE47","\\":"\uFF3C","]":"\uFE48","^":"\uFF3E",_:"\uFE33","`":"\uFF40","{":"\uFE37","|":"\u2015","}":"\uFE38","~":"\uFF5E","\xA2":"\uFFE0","\xA3":"\uFFE1","\xA5":"\uFFE5","\xA6":"\uFFE4","\xAC":"\uFFE2","\xAF":"\uFFE3","\u2013":"\uFE32","\u2014":"\uFE31","\u2018":"\uFE43","\u2019":"\uFE44","\u201C":"\uFE41","\u201D":"\uFE42","\u2026":"\uFE19","\u2027":"\u30FB","\u20A9":"\uFFE6","\u3001":"\uFE11","\u3002":"\uFE12","\u3008":"\uFE3F","\u3009":"\uFE40","\u300A":"\uFE3D","\u300B":"\uFE3E","\u300C":"\uFE41","\u300D":"\uFE42","\u300E":"\uFE43","\u300F":"\uFE44","\u3010":"\uFE3B","\u3011":"\uFE3C","\u3014":"\uFE39","\u3015":"\uFE3A","\u3016":"\uFE17","\u3017":"\uFE18","\uFF01":"\uFE15","\uFF08":"\uFE35","\uFF09":"\uFE36","\uFF0C":"\uFE10","\uFF0D":"\uFE32","\uFF0E":"\u30FB","\uFF1A":"\uFE13","\uFF1B":"\uFE14","\uFF1C":"\uFE3F","\uFF1E":"\uFE40","\uFF1F":"\uFE16","\uFF3B":"\uFE47","\uFF3D":"\uFE48","\uFF3F":"\uFE33","\uFF5B":"\uFE37","\uFF5C":"\u2015","\uFF5D":"\uFE38","\uFF5F":"\uFE35","\uFF60":"\uFE36","\uFF61":"\uFE12","\uFF62":"\uFE41","\uFF63":"\uFE42"};var eu=24,Sd=wu,ly=function(R,A,F,W,re){var fe,pe,ze=8*re-W-1,Ke=(1<<ze)-1,ct=Ke>>1,Lt=-7,$t=F?re-1:0,fr=F?-1:1,mr=R[A+$t];for($t+=fr,fe=mr&(1<<-Lt)-1,mr>>=-Lt,Lt+=ze;Lt>0;fe=256*fe+R[A+$t],$t+=fr,Lt-=8);for(pe=fe&(1<<-Lt)-1,fe>>=-Lt,Lt+=W;Lt>0;pe=256*pe+R[A+$t],$t+=fr,Lt-=8);if(fe===0)fe=1-ct;else{if(fe===Ke)return pe?NaN:1/0*(mr?-1:1);pe+=Math.pow(2,W),fe-=ct}return(mr?-1:1)*pe*Math.pow(2,fe-W)},T1=function(R,A,F,W,re,fe){var pe,ze,Ke,ct=8*fe-re-1,Lt=(1<<ct)-1,$t=Lt>>1,fr=re===23?Math.pow(2,-24)-Math.pow(2,-77):0,mr=W?0:fe-1,Pr=W?1:-1,zr=A<0||A===0&&1/A<0?1:0;for(A=Math.abs(A),isNaN(A)||A===1/0?(ze=isNaN(A)?1:0,pe=Lt):(pe=Math.floor(Math.log(A)/Math.LN2),A*(Ke=Math.pow(2,-pe))<1&&(pe--,Ke*=2),(A+=pe+$t>=1?fr/Ke:fr*Math.pow(2,1-$t))*Ke>=2&&(pe++,Ke/=2),pe+$t>=Lt?(ze=0,pe=Lt):pe+$t>=1?(ze=(A*Ke-1)*Math.pow(2,re),pe+=$t):(ze=A*Math.pow(2,$t-1)*Math.pow(2,re),pe=0));re>=8;R[F+mr]=255&ze,mr+=Pr,ze/=256,re-=8);for(pe=pe<<re|ze,ct+=re;ct>0;R[F+mr]=255&pe,mr+=Pr,pe/=256,ct-=8);R[F+mr-Pr]|=128*zr};function wu(R){this.buf=ArrayBuffer.isView&&ArrayBuffer.isView(R)?R:new Uint8Array(R||0),this.pos=0,this.type=0,this.length=this.buf.length}wu.Varint=0,wu.Fixed64=1,wu.Bytes=2,wu.Fixed32=5;var Nx=4294967296,om=1/Nx,kw=typeof TextDecoder=="undefined"?null:new TextDecoder("utf-8");function Rv(R){return R.type===wu.Bytes?R.readVarint()+R.pos:R.pos+1}function sm(R,A,F){return F?4294967296*A+(R>>>0):4294967296*(A>>>0)+(R>>>0)}function Cw(R,A,F){var W=A<=16383?1:A<=2097151?2:A<=268435455?3:Math.floor(Math.log(A)/(7*Math.LN2));F.realloc(W);for(var re=F.pos-1;re>=R;re--)F.buf[re+W]=F.buf[re]}function Ux(R,A){for(var F=0;F<R.length;F++)A.writeVarint(R[F])}function q9(R,A){for(var F=0;F<R.length;F++)A.writeSVarint(R[F])}function B9(R,A){for(var F=0;F<R.length;F++)A.writeFloat(R[F])}function N9(R,A){for(var F=0;F<R.length;F++)A.writeDouble(R[F])}function U9(R,A){for(var F=0;F<R.length;F++)A.writeBoolean(R[F])}function LQ(R,A){for(var F=0;F<R.length;F++)A.writeFixed32(R[F])}function V9(R,A){for(var F=0;F<R.length;F++)A.writeSFixed32(R[F])}function G9(R,A){for(var F=0;F<R.length;F++)A.writeFixed64(R[F])}function H9(R,A){for(var F=0;F<R.length;F++)A.writeSFixed64(R[F])}function uy(R,A){return(R[A]|R[A+1]<<8|R[A+2]<<16)+16777216*R[A+3]}function Vx(R,A,F){R[F]=A,R[F+1]=A>>>8,R[F+2]=A>>>16,R[F+3]=A>>>24}function mC(R,A){return(R[A]|R[A+1]<<8|R[A+2]<<16)+(R[A+3]<<24)}wu.prototype={destroy:function(){this.buf=null},readFields:function(R,A,F){for(F=F||this.length;this.pos<F;){var W=this.readVarint(),re=W>>3,fe=this.pos;this.type=7&W,R(re,A,this),this.pos===fe&&this.skip(W)}return A},readMessage:function(R,A){return this.readFields(R,A,this.readVarint()+this.pos)},readFixed32:function(){var R=uy(this.buf,this.pos);return this.pos+=4,R},readSFixed32:function(){var R=mC(this.buf,this.pos);return this.pos+=4,R},readFixed64:function(){var R=uy(this.buf,this.pos)+uy(this.buf,this.pos+4)*Nx;return this.pos+=8,R},readSFixed64:function(){var R=uy(this.buf,this.pos)+mC(this.buf,this.pos+4)*Nx;return this.pos+=8,R},readFloat:function(){var R=ly(this.buf,this.pos,!0,23,4);return this.pos+=4,R},readDouble:function(){var R=ly(this.buf,this.pos,!0,52,8);return this.pos+=8,R},readVarint:function(R){var A,F,W=this.buf;return A=127&(F=W[this.pos++]),F<128?A:(A|=(127&(F=W[this.pos++]))<<7,F<128?A:(A|=(127&(F=W[this.pos++]))<<14,F<128?A:(A|=(127&(F=W[this.pos++]))<<21,F<128?A:function(re,fe,pe){var ze,Ke,ct=pe.buf;if(ze=(112&(Ke=ct[pe.pos++]))>>4,Ke<128||(ze|=(127&(Ke=ct[pe.pos++]))<<3,Ke<128)||(ze|=(127&(Ke=ct[pe.pos++]))<<10,Ke<128)||(ze|=(127&(Ke=ct[pe.pos++]))<<17,Ke<128)||(ze|=(127&(Ke=ct[pe.pos++]))<<24,Ke<128)||(ze|=(1&(Ke=ct[pe.pos++]))<<31,Ke<128))return sm(re,ze,fe);throw new Error("Expected varint not more than 10 bytes")}(A|=(15&(F=W[this.pos]))<<28,R,this))))},readVarint64:function(){return this.readVarint(!0)},readSVarint:function(){var R=this.readVarint();return R%2==1?(R+1)/-2:R/2},readBoolean:function(){return!!this.readVarint()},readString:function(){var R=this.readVarint()+this.pos,A=this.pos;return this.pos=R,R-A>=12&&kw?function(F,W,re){return kw.decode(F.subarray(W,re))}(this.buf,A,R):function(F,W,re){for(var fe="",pe=W;pe<re;){var ze,Ke,ct,Lt=F[pe],$t=null,fr=Lt>239?4:Lt>223?3:Lt>191?2:1;if(pe+fr>re)break;fr===1?Lt<128&&($t=Lt):fr===2?(192&(ze=F[pe+1]))==128&&($t=(31&Lt)<<6|63&ze)<=127&&($t=null):fr===3?(Ke=F[pe+2],(192&(ze=F[pe+1]))==128&&(192&Ke)==128&&(($t=(15&Lt)<<12|(63&ze)<<6|63&Ke)<=2047||$t>=55296&&$t<=57343)&&($t=null)):fr===4&&(Ke=F[pe+2],ct=F[pe+3],(192&(ze=F[pe+1]))==128&&(192&Ke)==128&&(192&ct)==128&&(($t=(15&Lt)<<18|(63&ze)<<12|(63&Ke)<<6|63&ct)<=65535||$t>=1114112)&&($t=null)),$t===null?($t=65533,fr=1):$t>65535&&($t-=65536,fe+=String.fromCharCode($t>>>10&1023|55296),$t=56320|1023&$t),fe+=String.fromCharCode($t),pe+=fr}return fe}(this.buf,A,R)},readBytes:function(){var R=this.readVarint()+this.pos,A=this.buf.subarray(this.pos,R);return this.pos=R,A},readPackedVarint:function(R,A){if(this.type!==wu.Bytes)return R.push(this.readVarint(A));var F=Rv(this);for(R=R||[];this.pos<F;)R.push(this.readVarint(A));return R},readPackedSVarint:function(R){if(this.type!==wu.Bytes)return R.push(this.readSVarint());var A=Rv(this);for(R=R||[];this.pos<A;)R.push(this.readSVarint());return R},readPackedBoolean:function(R){if(this.type!==wu.Bytes)return R.push(this.readBoolean());var A=Rv(this);for(R=R||[];this.pos<A;)R.push(this.readBoolean());return R},readPackedFloat:function(R){if(this.type!==wu.Bytes)return R.push(this.readFloat());var A=Rv(this);for(R=R||[];this.pos<A;)R.push(this.readFloat());return R},readPackedDouble:function(R){if(this.type!==wu.Bytes)return R.push(this.readDouble());var A=Rv(this);for(R=R||[];this.pos<A;)R.push(this.readDouble());return R},readPackedFixed32:function(R){if(this.type!==wu.Bytes)return R.push(this.readFixed32());var A=Rv(this);for(R=R||[];this.pos<A;)R.push(this.readFixed32());return R},readPackedSFixed32:function(R){if(this.type!==wu.Bytes)return R.push(this.readSFixed32());var A=Rv(this);for(R=R||[];this.pos<A;)R.push(this.readSFixed32());return R},readPackedFixed64:function(R){if(this.type!==wu.Bytes)return R.push(this.readFixed64());var A=Rv(this);for(R=R||[];this.pos<A;)R.push(this.readFixed64());return R},readPackedSFixed64:function(R){if(this.type!==wu.Bytes)return R.push(this.readSFixed64());var A=Rv(this);for(R=R||[];this.pos<A;)R.push(this.readSFixed64());return R},skip:function(R){var A=7&R;if(A===wu.Varint)for(;this.buf[this.pos++]>127;);else if(A===wu.Bytes)this.pos=this.readVarint()+this.pos;else if(A===wu.Fixed32)this.pos+=4;else{if(A!==wu.Fixed64)throw new Error("Unimplemented type: "+A);this.pos+=8}},writeTag:function(R,A){this.writeVarint(R<<3|A)},realloc:function(R){for(var A=this.length||16;A<this.pos+R;)A*=2;if(A!==this.length){var F=new Uint8Array(A);F.set(this.buf),this.buf=F,this.length=A}},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*om),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*om),this.pos+4),this.pos+=8},writeVarint:function(R){(R=+R||0)>268435455||R<0?function(A,F){var W,re;if(A>=0?(W=A%4294967296|0,re=A/4294967296|0):(re=~(-A/4294967296),4294967295^(W=~(-A%4294967296))?W=W+1|0:(W=0,re=re+1|0)),A>=18446744073709552e3||A<-18446744073709552e3)throw new Error("Given varint doesn't fit into 10 bytes");F.realloc(10),function(fe,pe,ze){ze.buf[ze.pos++]=127&fe|128,fe>>>=7,ze.buf[ze.pos++]=127&fe|128,fe>>>=7,ze.buf[ze.pos++]=127&fe|128,fe>>>=7,ze.buf[ze.pos++]=127&fe|128,ze.buf[ze.pos]=127&(fe>>>=7)}(W,0,F),function(fe,pe){var ze=(7&fe)<<4;pe.buf[pe.pos++]|=ze|((fe>>>=3)?128:0),fe&&(pe.buf[pe.pos++]=127&fe|((fe>>>=7)?128:0),fe&&(pe.buf[pe.pos++]=127&fe|((fe>>>=7)?128:0),fe&&(pe.buf[pe.pos++]=127&fe|((fe>>>=7)?128:0),fe&&(pe.buf[pe.pos++]=127&fe|((fe>>>=7)?128:0),fe&&(pe.buf[pe.pos++]=127&fe)))))}(re,F)}(R,this):(this.realloc(4),this.buf[this.pos++]=127&R|(R>127?128:0),R<=127||(this.buf[this.pos++]=127&(R>>>=7)|(R>127?128:0),R<=127||(this.buf[this.pos++]=127&(R>>>=7)|(R>127?128:0),R<=127||(this.buf[this.pos++]=R>>>7&127))))},writeSVarint:function(R){this.writeVarint(R<0?2*-R-1:2*R)},writeBoolean:function(R){this.writeVarint(!!R)},writeString:function(R){R=String(R),this.realloc(4*R.length),this.pos++;var A=this.pos;this.pos=function(W,re,fe){for(var pe,ze,Ke=0;Ke<re.length;Ke++){if((pe=re.charCodeAt(Ke))>55295&&pe<57344){if(!ze){pe>56319||Ke+1===re.length?(W[fe++]=239,W[fe++]=191,W[fe++]=189):ze=pe;continue}if(pe<56320){W[fe++]=239,W[fe++]=191,W[fe++]=189,ze=pe;continue}pe=ze-55296<<10|pe-56320|65536,ze=null}else ze&&(W[fe++]=239,W[fe++]=191,W[fe++]=189,ze=null);pe<128?W[fe++]=pe:(pe<2048?W[fe++]=pe>>6|192:(pe<65536?W[fe++]=pe>>12|224:(W[fe++]=pe>>18|240,W[fe++]=pe>>12&63|128),W[fe++]=pe>>6&63|128),W[fe++]=63&pe|128)}return fe}(this.buf,R,this.pos);var F=this.pos-A;F>=128&&Cw(A,F,this),this.pos=A-1,this.writeVarint(F),this.pos+=F},writeFloat:function(R){this.realloc(4),T1(this.buf,R,this.pos,!0,23,4),this.pos+=4},writeDouble:function(R){this.realloc(8),T1(this.buf,R,this.pos,!0,52,8),this.pos+=8},writeBytes:function(R){var A=R.length;this.writeVarint(A),this.realloc(A);for(var F=0;F<A;F++)this.buf[this.pos++]=R[F]},writeRawMessage:function(R,A){this.pos++;var F=this.pos;R(A,this);var W=this.pos-F;W>=128&&Cw(F,W,this),this.pos=F-1,this.writeVarint(W),this.pos+=W},writeMessage:function(R,A,F){this.writeTag(R,wu.Bytes),this.writeRawMessage(A,F)},writePackedVarint:function(R,A){A.length&&this.writeMessage(R,Ux,A)},writePackedSVarint:function(R,A){A.length&&this.writeMessage(R,q9,A)},writePackedBoolean:function(R,A){A.length&&this.writeMessage(R,U9,A)},writePackedFloat:function(R,A){A.length&&this.writeMessage(R,B9,A)},writePackedDouble:function(R,A){A.length&&this.writeMessage(R,N9,A)},writePackedFixed32:function(R,A){A.length&&this.writeMessage(R,LQ,A)},writePackedSFixed32:function(R,A){A.length&&this.writeMessage(R,V9,A)},writePackedFixed64:function(R,A){A.length&&this.writeMessage(R,G9,A)},writePackedSFixed64:function(R,A){A.length&&this.writeMessage(R,H9,A)},writeBytesField:function(R,A){this.writeTag(R,wu.Bytes),this.writeBytes(A)},writeFixed32Field:function(R,A){this.writeTag(R,wu.Fixed32),this.writeFixed32(A)},writeSFixed32Field:function(R,A){this.writeTag(R,wu.Fixed32),this.writeSFixed32(A)},writeFixed64Field:function(R,A){this.writeTag(R,wu.Fixed64),this.writeFixed64(A)},writeSFixed64Field:function(R,A){this.writeTag(R,wu.Fixed64),this.writeSFixed64(A)},writeVarintField:function(R,A){this.writeTag(R,wu.Varint),this.writeVarint(A)},writeSVarintField:function(R,A){this.writeTag(R,wu.Varint),this.writeSVarint(A)},writeStringField:function(R,A){this.writeTag(R,wu.Bytes),this.writeString(A)},writeFloatField:function(R,A){this.writeTag(R,wu.Fixed32),this.writeFloat(A)},writeDoubleField:function(R,A){this.writeTag(R,wu.Fixed64),this.writeDouble(A)},writeBooleanField:function(R,A){this.writeVarintField(R,!!A)}};var nS=o(Sd);let aS=3;function PQ(R,A,F){R===1&&F.readMessage(j9,A)}function j9(R,A,F){if(R===3){let{id:W,bitmap:re,width:fe,height:pe,left:ze,top:Ke,advance:ct}=F.readMessage(yC,{});A.push({id:W,bitmap:new na({width:fe+2*aS,height:pe+2*aS},re),metrics:{width:fe,height:pe,left:ze,top:Ke,advance:ct}})}}function yC(R,A,F){R===1?A.id=F.readVarint():R===2?A.bitmap=F.readBytes():R===3?A.width=F.readVarint():R===4?A.height=F.readVarint():R===5?A.left=F.readSVarint():R===6?A.top=F.readSVarint():R===7&&(A.advance=F.readVarint())}let _C=aS;function oS(R){let A=0,F=0;for(let pe of R)A+=pe.w*pe.h,F=Math.max(F,pe.w);R.sort((pe,ze)=>ze.h-pe.h);let W=[{x:0,y:0,w:Math.max(Math.ceil(Math.sqrt(A/.95)),F),h:1/0}],re=0,fe=0;for(let pe of R)for(let ze=W.length-1;ze>=0;ze--){let Ke=W[ze];if(!(pe.w>Ke.w||pe.h>Ke.h)){if(pe.x=Ke.x,pe.y=Ke.y,fe=Math.max(fe,pe.y+pe.h),re=Math.max(re,pe.x+pe.w),pe.w===Ke.w&&pe.h===Ke.h){let ct=W.pop();ze<W.length&&(W[ze]=ct)}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:re,h:fe,fill:A/(re*fe)||0}}let Md=1;class Lw{constructor(A,{pixelRatio:F,version:W,stretchX:re,stretchY:fe,content:pe,textFitWidth:ze,textFitHeight:Ke}){this.paddedRect=A,this.pixelRatio=F,this.stretchX=re,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 Pw{constructor(A,F){let W={},re={};this.haveRenderCallbacks=[];let fe=[];this.addImages(A,W,fe),this.addImages(F,re,fe);let{w:pe,h:ze}=oS(fe),Ke=new Ki({width:pe||1,height:ze||1});for(let ct in A){let Lt=A[ct],$t=W[ct].paddedRect;Ki.copy(Lt.data,Ke,{x:0,y:0},{x:$t.x+Md,y:$t.y+Md},Lt.data)}for(let ct in F){let Lt=F[ct],$t=re[ct].paddedRect,fr=$t.x+Md,mr=$t.y+Md,Pr=Lt.data.width,zr=Lt.data.height;Ki.copy(Lt.data,Ke,{x:0,y:0},{x:fr,y:mr},Lt.data),Ki.copy(Lt.data,Ke,{x:0,y:zr-1},{x:fr,y:mr-1},{width:Pr,height:1}),Ki.copy(Lt.data,Ke,{x:0,y:0},{x:fr,y:mr+zr},{width:Pr,height:1}),Ki.copy(Lt.data,Ke,{x:Pr-1,y:0},{x:fr-1,y:mr},{width:1,height:zr}),Ki.copy(Lt.data,Ke,{x:0,y:0},{x:fr+Pr,y:mr},{width:1,height:zr})}this.image=Ke,this.iconPositions=W,this.patternPositions=re}addImages(A,F,W){for(let re in A){let fe=A[re],pe={x:0,y:0,w:fe.data.width+2*Md,h:fe.data.height+2*Md};W.push(pe),F[re]=new Lw(pe,fe),fe.hasRenderCallback&&this.haveRenderCallbacks.push(re)}}patchUpdatedImages(A,F){A.dispatchRenderCallbacks(this.haveRenderCallbacks);for(let W in A.updatedImages)this.patchUpdatedImage(this.iconPositions[W],A.getImage(W),F),this.patchUpdatedImage(this.patternPositions[W],A.getImage(W),F)}patchUpdatedImage(A,F,W){if(!A||!F||A.version===F.version)return;A.version=F.version;let[re,fe]=A.tl;W.update(F.data,void 0,{x:re,y:fe})}}var Dv;Fi("ImagePosition",Lw),Fi("ImageAtlas",Pw),i.ah=void 0,(Dv=i.ah||(i.ah={}))[Dv.none=0]="none",Dv[Dv.horizontal=1]="horizontal",Dv[Dv.vertical=2]="vertical",Dv[Dv.horizontalOnly=3]="horizontalOnly";let Sh=-17;class Gx{constructor(){this.scale=1,this.fontStack="",this.imageName=null}static forText(A,F){let W=new Gx;return W.scale=A||1,W.fontStack=F,W}static forImage(A){let F=new Gx;return F.imageName=A,F}}class A1{constructor(){this.text="",this.sectionIndex=[],this.sections=[],this.imageSectionID=null}static fromFeature(A,F){let W=new A1;for(let re=0;re<A.sections.length;re++){let fe=A.sections[re];fe.image?W.addImageSection(fe):W.addTextSection(fe,F)}return W}length(){return this.text.length}getSection(A){return this.sections[this.sectionIndex[A]]}getSectionIndex(A){return this.sectionIndex[A]}getCharCode(A){return this.text.charCodeAt(A)}verticalizePunctuation(){this.text=function(A){let F="";for(let W=0;W<A.length;W++){let re=A.charCodeAt(W+1)||null,fe=A.charCodeAt(W-1)||null;F+=re&&ml(re)&&!vc[A[W+1]]||fe&&ml(fe)&&!vc[A[W-1]]||!vc[A[W]]?A[W]:vc[A[W]]}return F}(this.text)}trim(){let A=0;for(let W=0;W<this.text.length&&Iw[this.text.charCodeAt(W)];W++)A++;let F=this.text.length;for(let W=this.text.length-1;W>=0&&W>=A&&Iw[this.text.charCodeAt(W)];W--)F--;this.text=this.text.substring(A,F),this.sectionIndex=this.sectionIndex.slice(A,F)}substring(A,F){let W=new A1;return W.text=this.text.substring(A,F),W.sectionIndex=this.sectionIndex.slice(A,F),W.sections=this.sections,W}toString(){return this.text}getMaxScale(){return this.sectionIndex.reduce((A,F)=>Math.max(A,this.sections[F].scale),0)}addTextSection(A,F){this.text+=A.text,this.sections.push(Gx.forText(A.scale,A.fontStack||F));let W=this.sections.length-1;for(let re=0;re<A.text.length;++re)this.sectionIndex.push(W)}addImageSection(A){let F=A.image?A.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,A,F,W,re,fe,pe,ze,Ke,ct,Lt,$t,fr,mr,Pr){let zr=A1.fromFeature(R,re),ui;$t===i.ah.vertical&&zr.verticalizePunctuation();let{processBidirectionalText:yi,processStyledBidirectionalText:vn}=ys;if(yi&&zr.sections.length===1){ui=[];let Tn=yi(zr.toString(),S1(zr,ct,fe,A,W,mr));for(let pa of Tn){let ro=new A1;ro.text=pa,ro.sections=zr.sections;for(let Vo=0;Vo<pa.length;Vo++)ro.sectionIndex.push(0);ui.push(ro)}}else if(vn){ui=[];let Tn=vn(zr.text,zr.sectionIndex,S1(zr,ct,fe,A,W,mr));for(let pa of Tn){let ro=new A1;ro.text=pa[0],ro.sectionIndex=pa[1],ro.sections=zr.sections,ui.push(ro)}}else ui=function(Tn,pa){let ro=[],Vo=Tn.text,Xa=0;for(let sa of pa)ro.push(Tn.substring(Xa,sa)),Xa=sa;return Xa<Vo.length&&ro.push(Tn.substring(Xa,Vo.length)),ro}(zr,S1(zr,ct,fe,A,W,mr));let zi=[],un={positionedLines:zi,text:zr.toString(),top:Lt[1],bottom:Lt[1],left:Lt[0],right:Lt[0],writingMode:$t,iconsInText:!1,verticalizable:!1};return function(Tn,pa,ro,Vo,Xa,sa,Mo,fo,lo,Xn,Ro,uo){let $o=0,Ju=Sh,qu=0,Mh=0,Qv=fo==="right"?1:fo==="left"?0:.5,ld=0;for(let Af of Xa){Af.trim();let kh=Af.getMaxScale(),Ed=(kh-1)*eu,ud={positionedGlyphs:[],lineOffset:0};Tn.positionedLines[ld]=ud;let Wh=ud.positionedGlyphs,Df=0;if(!Af.length()){Ju+=sa,++ld;continue}for(let lv=0;lv<Af.length();lv++){let tu=Af.getSection(lv),pc=Af.getSectionIndex(lv),$u=Af.getCharCode(lv),zv=0,ff=null,P1=null,v0=null,Gp=eu,ep=!(lo===i.ah.horizontal||!Ro&&!Ho($u)||Ro&&(Iw[$u]||(Eh=$u,new RegExp("\\p{sc=Arab}","u").test(String.fromCodePoint(Eh)))));if(tu.imageName){let Gc=Vo[tu.imageName];if(!Gc)continue;v0=tu.imageName,Tn.iconsInText=Tn.iconsInText||!0,P1=Gc.paddedRect;let Zf=Gc.displaySize;tu.scale=tu.scale*eu/uo,ff={width:Zf[0],height:Zf[1],left:Md,top:-_C,advance:ep?Zf[1]:Zf[0]},zv=Ed+(eu-Zf[1]*tu.scale),Gp=ff.advance;let tp=ep?Zf[0]*tu.scale-eu*kh:Zf[1]*tu.scale-eu*kh;tp>0&&tp>Df&&(Df=tp)}else{let Gc=ro[tu.fontStack],Zf=Gc&&Gc[$u];if(Zf&&Zf.rect)P1=Zf.rect,ff=Zf.metrics;else{let tp=pa[tu.fontStack],gg=tp&&tp[$u];if(!gg)continue;ff=gg.metrics}zv=(kh-tu.scale)*eu}ep?(Tn.verticalizable=!0,Wh.push({glyph:$u,imageName:v0,x:$o,y:Ju+zv,vertical:ep,scale:tu.scale,fontStack:tu.fontStack,sectionIndex:pc,metrics:ff,rect:P1}),$o+=Gp*tu.scale+Xn):(Wh.push({glyph:$u,imageName:v0,x:$o,y:Ju+zv,vertical:ep,scale:tu.scale,fontStack:tu.fontStack,sectionIndex:pc,metrics:ff,rect:P1}),$o+=ff.advance*tu.scale+Xn)}Wh.length!==0&&(qu=Math.max($o-Xn,qu),lm(Wh,0,Wh.length-1,Qv,Df)),$o=0;let Fv=sa*kh+Df;ud.lineOffset=Math.max(Df,Ed),Ju+=Fv,Mh=Math.max(Fv,Mh),++ld}var Eh;let Gd=Ju-Sh,{horizontalAlign:Hd,verticalAlign:jd}=Dw(Mo);(function(Af,kh,Ed,ud,Wh,Df,Fv,lv,tu){let pc=(kh-Ed)*Wh,$u=0;$u=Df!==Fv?-lv*ud-Sh:(-ud*tu+.5)*Fv;for(let zv of Af)for(let ff of zv.positionedGlyphs)ff.x+=pc,ff.y+=$u})(Tn.positionedLines,Qv,Hd,jd,qu,Mh,sa,Gd,Xa.length),Tn.top+=-jd*Gd,Tn.bottom=Tn.top+Gd,Tn.left+=-Hd*qu,Tn.right=Tn.left+qu}(un,A,F,W,ui,pe,ze,Ke,$t,ct,fr,Pr),!function(Tn){for(let pa of Tn)if(pa.positionedGlyphs.length!==0)return!1;return!0}(zi)&&un}let Iw={9:!0,10:!0,11:!0,12:!0,13:!0,32:!0},W9={10:!0,32:!0,38:!0,41:!0,43:!0,45:!0,47:!0,173:!0,183:!0,8203:!0,8208:!0,8211:!0,8231:!0},X9={40:!0};function xC(R,A,F,W,re,fe){if(A.imageName){let pe=W[A.imageName];return pe?pe.displaySize[0]*A.scale*eu/fe+re:0}{let pe=F[A.fontStack],ze=pe&&pe[R];return ze?ze.metrics.advance*A.scale+re:0}}function bC(R,A,F,W){let re=Math.pow(R-A,2);return W?R<A?re/2:2*re:re+Math.abs(F)*F}function Z9(R,A,F){let W=0;return R===10&&(W-=1e4),F&&(W+=150),R!==40&&R!==65288||(W+=50),A!==41&&A!==65289||(W+=50),W}function Rw(R,A,F,W,re,fe){let pe=null,ze=bC(A,F,re,fe);for(let Ke of W){let ct=bC(A-Ke.x,F,re,fe)+Ke.badness;ct<=ze&&(pe=Ke,ze=ct)}return{index:R,x:A,priorBreak:pe,badness:ze}}function wC(R){return R?wC(R.priorBreak).concat(R.index):[]}function S1(R,A,F,W,re,fe){if(!R)return[];let pe=[],ze=function($t,fr,mr,Pr,zr,ui){let yi=0;for(let vn=0;vn<$t.length();vn++){let zi=$t.getSection(vn);yi+=xC($t.getCharCode(vn),zi,Pr,zr,fr,ui)}return yi/Math.max(1,Math.ceil(yi/mr))}(R,A,F,W,re,fe),Ke=R.text.indexOf("\u200B")>=0,ct=0;for(let $t=0;$t<R.length();$t++){let fr=R.getSection($t),mr=R.getCharCode($t);if(Iw[mr]||(ct+=xC(mr,fr,W,re,A,fe)),$t<R.length()-1){let Pr=!((Lt=mr)<11904)&&(!!Dn["CJK Compatibility Forms"](Lt)||!!Dn["CJK Compatibility"](Lt)||!!Dn["CJK Strokes"](Lt)||!!Dn["CJK Symbols and Punctuation"](Lt)||!!Dn["Enclosed CJK Letters and Months"](Lt)||!!Dn["Halfwidth and Fullwidth Forms"](Lt)||!!Dn["Ideographic Description Characters"](Lt)||!!Dn["Vertical Forms"](Lt)||ws.test(String.fromCodePoint(Lt)));(W9[mr]||Pr||fr.imageName||$t!==R.length()-2&&X9[R.getCharCode($t+1)])&&pe.push(Rw($t+1,ct,ze,pe,Z9(mr,R.getCharCode($t+1),Pr&&Ke),!1))}}var Lt;return wC(Rw(R.length(),ct,ze,pe,0,!0))}function Dw(R){let A=.5,F=.5;switch(R){case"right":case"top-right":case"bottom-right":A=1;break;case"left":case"top-left":case"bottom-left":A=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:A,verticalAlign:F}}function lm(R,A,F,W,re){if(!W&&!re)return;let fe=R[F],pe=(R[F].x+fe.metrics.advance*fe.scale)*W;for(let ze=A;ze<=F;ze++)R[ze].x-=pe,R[ze].y+=re}function jx(R,A,F){let{horizontalAlign:W,verticalAlign:re}=Dw(F),fe=A[0]-R.displaySize[0]*W,pe=A[1]-R.displaySize[1]*re;return{image:R,top:pe,bottom:pe+R.displaySize[1],left:fe,right:fe+R.displaySize[0]}}function TC(R){var A,F;let W=R.left,re=R.top,fe=R.right-W,pe=R.bottom-re,ze=(A=R.image.textFitWidth)!==null&&A!==void 0?A:"stretchOrShrink",Ke=(F=R.image.textFitHeight)!==null&&F!==void 0?F:"stretchOrShrink",ct=(R.image.content[2]-R.image.content[0])/(R.image.content[3]-R.image.content[1]);if(Ke==="proportional"){if(ze==="stretchOnly"&&fe/pe<ct||ze==="proportional"){let Lt=Math.ceil(pe*ct);W*=Lt/fe,fe=Lt}}else if(ze==="proportional"&&Ke==="stretchOnly"&&ct!==0&&fe/pe>ct){let Lt=Math.ceil(fe/ct);re*=Lt/pe,pe=Lt}return{x1:W,y1:re,x2:W+fe,y2:re+pe}}function AC(R,A,F,W,re,fe){let pe=R.image,ze;if(pe.content){let ui=pe.content,yi=pe.pixelRatio||1;ze=[ui[0]/yi,ui[1]/yi,pe.displaySize[0]-ui[2]/yi,pe.displaySize[1]-ui[3]/yi]}let Ke=A.left*fe,ct=A.right*fe,Lt,$t,fr,mr;F==="width"||F==="both"?(mr=re[0]+Ke-W[3],$t=re[0]+ct+W[1]):(mr=re[0]+(Ke+ct-pe.displaySize[0])/2,$t=mr+pe.displaySize[0]);let Pr=A.top*fe,zr=A.bottom*fe;return F==="height"||F==="both"?(Lt=re[1]+Pr-W[0],fr=re[1]+zr+W[2]):(Lt=re[1]+(Pr+zr-pe.displaySize[1])/2,fr=Lt+pe.displaySize[1]),{image:pe,top:Lt,right:$t,bottom:fr,left:mr,collisionPadding:ze}}let Wx=255,d0=128,um=Wx*d0;function SC(R,A){let{expression:F}=A;if(F.kind==="constant")return{kind:"constant",layoutSize:F.evaluate(new rs(R+1))};if(F.kind==="source")return{kind:"source"};{let{zoomStops:W,interpolationType:re}=F,fe=0;for(;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:re}:{kind:"camera",minZoom:ze,maxZoom:Ke,minSize:F.evaluate(new rs(ze)),maxSize:F.evaluate(new rs(Ke)),interpolationType:re}}}function sS(R,A,F){let W="never",re=R.get(A);return re?W=re:R.get(F)&&(W="always"),W}let Y9=br.VectorTileFeature.types,K9=[{name:"a_fade_opacity",components:1,type:"Uint8",offset:0}];function Fw(R,A,F,W,re,fe,pe,ze,Ke,ct,Lt,$t,fr){let mr=ze?Math.min(um,Math.round(ze[0])):0,Pr=ze?Math.min(um,Math.round(ze[1])):0;R.emplaceBack(A,F,Math.round(32*W),Math.round(32*re),fe,pe,(mr<<1)+(Ke?1:0),Pr,16*ct,16*Lt,256*$t,256*fr)}function lS(R,A,F){R.emplaceBack(A.x,A.y,F),R.emplaceBack(A.x,A.y,F),R.emplaceBack(A.x,A.y,F),R.emplaceBack(A.x,A.y,F)}function uS(R){for(let A of R.sections)if(no(A.text))return!0;return!1}class cS{constructor(A){this.layoutVertexArray=new Ql,this.indexArray=new se,this.programConfigurations=A,this.segments=new Ye,this.dynamicLayoutVertexArray=new dc,this.opacityVertexArray=new Tl,this.hasVisibleVertices=!1,this.placedSymbolArray=new Ta}isEmpty(){return this.layoutVertexArray.length===0&&this.indexArray.length===0&&this.dynamicLayoutVertexArray.length===0&&this.opacityVertexArray.length===0}upload(A,F,W,re){this.isEmpty()||(W&&(this.layoutVertexBuffer=A.createVertexBuffer(this.layoutVertexArray,im.members),this.indexBuffer=A.createIndexBuffer(this.indexArray,F),this.dynamicLayoutVertexBuffer=A.createVertexBuffer(this.dynamicLayoutVertexArray,b1.members,!0),this.opacityVertexBuffer=A.createVertexBuffer(this.opacityVertexArray,K9,!0),this.opacityVertexBuffer.itemSize=1),(W||re)&&this.programConfigurations.upload(A))}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.dynamicLayoutVertexBuffer.destroy(),this.opacityVertexBuffer.destroy())}}Fi("SymbolBuffers",cS);class cm{constructor(A,F,W){this.layoutVertexArray=new A,this.layoutAttributes=F,this.indexArray=new W,this.segments=new Ye,this.collisionVertexArray=new X}upload(A){this.layoutVertexBuffer=A.createVertexBuffer(this.layoutVertexArray,this.layoutAttributes),this.indexBuffer=A.createIndexBuffer(this.indexArray),this.collisionVertexBuffer=A.createVertexBuffer(this.collisionVertexArray,w1.members,!0)}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.segments.destroy(),this.collisionVertexBuffer.destroy())}}Fi("CollisionBuffers",cm);class M1{constructor(A){this.collisionBoxArray=A.collisionBoxArray,this.zoom=A.zoom,this.overscaling=A.overscaling,this.layers=A.layers,this.layerIds=this.layers.map(pe=>pe.id),this.index=A.index,this.pixelRatio=A.pixelRatio,this.sourceLayerIndex=A.sourceLayerIndex,this.hasPattern=!1,this.hasRTLText=!1,this.sortKeyRanges=[],this.collisionCircleArray=[],this.placementInvProjMatrix=Ri([]),this.placementViewportMatrix=Ri([]);let F=this.layers[0]._unevaluatedLayout._values;this.textSizeData=SC(this.zoom,F["text-size"]),this.iconSizeData=SC(this.zoom,F["icon-size"]);let W=this.layers[0].layout,re=W.get("symbol-sort-key"),fe=W.get("symbol-z-order");this.canOverlap=sS(W,"text-overlap","text-allow-overlap")!=="never"||sS(W,"icon-overlap","icon-allow-overlap")!=="never"||W.get("text-ignore-placement")||W.get("icon-ignore-placement"),this.sortFeaturesByKey=fe!=="viewport-y"&&!re.isConstant(),this.sortFeaturesByY=(fe==="viewport-y"||fe==="auto"&&!this.sortFeaturesByKey)&&this.canOverlap,W.get("symbol-placement")==="point"&&(this.writingModes=W.get("text-writing-mode").map(pe=>i.ah[pe])),this.stateDependentLayerIds=this.layers.filter(pe=>pe.isStateDependent()).map(pe=>pe.id),this.sourceID=A.sourceID}createArrays(){this.text=new cS(new Ms(this.layers,this.zoom,A=>/^text/.test(A))),this.icon=new cS(new Ms(this.layers,this.zoom,A=>/^icon/.test(A))),this.glyphOffsetArray=new Co,this.lineVertexArray=new Qa,this.symbolInstances=new $a,this.textAnchorOffsets=new Bo}calculateGlyphDependencies(A,F,W,re,fe){for(let pe=0;pe<A.length;pe++)if(F[A.charCodeAt(pe)]=!0,(W||re)&&fe){let ze=vc[A.charAt(pe)];ze&&(F[ze.charCodeAt(0)]=!0)}}populate(A,F,W){let re=this.layers[0],fe=re.layout,pe=fe.get("text-font"),ze=fe.get("text-field"),Ke=fe.get("icon-image"),ct=(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,$t=fe.get("symbol-sort-key");if(this.features=[],!ct&&!Lt)return;let fr=F.iconDependencies,mr=F.glyphDependencies,Pr=F.availableImages,zr=new rs(this.zoom);for(let{feature:ui,id:yi,index:vn,sourceLayerIndex:zi}of A){let un=re._featureFilter.needGeometry,Tn=Sl(ui,un);if(!re._featureFilter.filter(zr,Tn,W))continue;let pa,ro;if(un||(Tn.geometry=$s(ui)),ct){let Xa=re.getValueAndResolveTokens("text-field",Tn,W,Pr),sa=ri.factory(Xa),Mo=this.hasRTLText=this.hasRTLText||uS(sa);(!Mo||ys.getRTLTextPluginStatus()==="unavailable"||Mo&&ys.isParsed())&&(pa=am(sa,re,Tn))}if(Lt){let Xa=re.getValueAndResolveTokens("icon-image",Tn,W,Pr);ro=Xa instanceof tn?Xa:tn.fromString(Xa)}if(!pa&&!ro)continue;let Vo=this.sortFeaturesByKey?$t.evaluate(Tn,{},W):void 0;if(this.features.push({id:yi,text:pa,icon:ro,index:vn,sourceLayerIndex:zi,geometry:Tn.geometry,properties:ui.properties,type:Y9[ui.type],sortKey:Vo}),ro&&(fr[ro.name]=!0),pa){let Xa=pe.evaluate(Tn,{},W).join(","),sa=fe.get("text-rotation-alignment")!=="viewport"&&fe.get("symbol-placement")!=="point";this.allowVerticalPlacement=this.writingModes&&this.writingModes.indexOf(i.ah.vertical)>=0;for(let Mo of pa.sections)if(Mo.image)fr[Mo.image.name]=!0;else{let fo=Ka(pa.toString()),lo=Mo.fontStack||Xa,Xn=mr[lo]=mr[lo]||{};this.calculateGlyphDependencies(Mo.text,Xn,sa,this.allowVerticalPlacement,fo)}}}fe.get("symbol-placement")==="line"&&(this.features=function(ui){let yi={},vn={},zi=[],un=0;function Tn(Xa){zi.push(ui[Xa]),un++}function pa(Xa,sa,Mo){let fo=vn[Xa];return delete vn[Xa],vn[sa]=fo,zi[fo].geometry[0].pop(),zi[fo].geometry[0]=zi[fo].geometry[0].concat(Mo[0]),fo}function ro(Xa,sa,Mo){let fo=yi[sa];return delete yi[sa],yi[Xa]=fo,zi[fo].geometry[0].shift(),zi[fo].geometry[0]=Mo[0].concat(zi[fo].geometry[0]),fo}function Vo(Xa,sa,Mo){let fo=Mo?sa[0][sa[0].length-1]:sa[0][0];return`${Xa}:${fo.x}:${fo.y}`}for(let Xa=0;Xa<ui.length;Xa++){let sa=ui[Xa],Mo=sa.geometry,fo=sa.text?sa.text.toString():null;if(!fo){Tn(Xa);continue}let lo=Vo(fo,Mo),Xn=Vo(fo,Mo,!0);if(lo in vn&&Xn in yi&&vn[lo]!==yi[Xn]){let Ro=ro(lo,Xn,Mo),uo=pa(lo,Xn,zi[Ro].geometry);delete yi[lo],delete vn[Xn],vn[Vo(fo,zi[uo].geometry,!0)]=uo,zi[Ro].geometry=null}else lo in vn?pa(lo,Xn,Mo):Xn in yi?ro(lo,Xn,Mo):(Tn(Xa),yi[lo]=un-1,vn[Xn]=un-1)}return zi.filter(Xa=>Xa.geometry)}(this.features)),this.sortFeaturesByKey&&this.features.sort((ui,yi)=>ui.sortKey-yi.sortKey)}update(A,F,W){this.stateDependentLayers.length&&(this.text.programConfigurations.updatePaintArrays(A,F,this.layers,W),this.icon.programConfigurations.updatePaintArrays(A,F,this.layers,W))}isEmpty(){return this.symbolInstances.length===0&&!this.hasRTLText}uploadPending(){return!this.uploaded||this.text.programConfigurations.needsUpload||this.icon.programConfigurations.needsUpload}upload(A){!this.uploaded&&this.hasDebugData()&&(this.textCollisionBox.upload(A),this.iconCollisionBox.upload(A)),this.text.upload(A,this.sortFeaturesByY,!this.uploaded,this.text.programConfigurations.needsUpload),this.icon.upload(A,this.sortFeaturesByY,!this.uploaded,this.icon.programConfigurations.needsUpload),this.uploaded=!0}destroyDebugData(){this.textCollisionBox.destroy(),this.iconCollisionBox.destroy()}destroy(){this.text.destroy(),this.icon.destroy(),this.hasDebugData()&&this.destroyDebugData()}addToLineVertexArray(A,F){let W=this.lineVertexArray.length;if(A.segment!==void 0){let re=A.dist(F[A.segment+1]),fe=A.dist(F[A.segment]),pe={};for(let ze=A.segment+1;ze<F.length;ze++)pe[ze]={x:F[ze].x,y:F[ze].y,tileUnitDistanceFromAnchor:re},ze<F.length-1&&(re+=F[ze+1].dist(F[ze]));for(let ze=A.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(A,F,W,re,fe,pe,ze,Ke,ct,Lt,$t,fr){let mr=A.indexArray,Pr=A.layoutVertexArray,zr=A.segments.prepareSegment(4*F.length,Pr,mr,this.canOverlap?pe.sortKey:void 0),ui=this.glyphOffsetArray.length,yi=zr.vertexLength,vn=this.allowVerticalPlacement&&ze===i.ah.vertical?Math.PI/2:0,zi=pe.text&&pe.text.sections;for(let un=0;un<F.length;un++){let{tl:Tn,tr:pa,bl:ro,br:Vo,tex:Xa,pixelOffsetTL:sa,pixelOffsetBR:Mo,minFontScaleX:fo,minFontScaleY:lo,glyphOffset:Xn,isSDF:Ro,sectionIndex:uo}=F[un],$o=zr.vertexLength,Ju=Xn[1];Fw(Pr,Ke.x,Ke.y,Tn.x,Ju+Tn.y,Xa.x,Xa.y,W,Ro,sa.x,sa.y,fo,lo),Fw(Pr,Ke.x,Ke.y,pa.x,Ju+pa.y,Xa.x+Xa.w,Xa.y,W,Ro,Mo.x,sa.y,fo,lo),Fw(Pr,Ke.x,Ke.y,ro.x,Ju+ro.y,Xa.x,Xa.y+Xa.h,W,Ro,sa.x,Mo.y,fo,lo),Fw(Pr,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),lS(A.dynamicLayoutVertexArray,Ke,vn),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]),un!==F.length-1&&uo===F[un+1].sectionIndex||A.programConfigurations.populatePaintArrays(Pr.length,pe,pe.index,{},fr,zi&&zi[uo])}A.placedSymbolArray.emplaceBack(Ke.x,Ke.y,ui,this.glyphOffsetArray.length-ui,yi,ct,Lt,Ke.segment,W?W[0]:0,W?W[1]:0,re[0],re[1],ze,0,!1,0,$t)}_addCollisionDebugVertex(A,F,W,re,fe,pe){return F.emplaceBack(0,0),A.emplaceBack(W.x,W.y,re,fe,Math.round(pe.x),Math.round(pe.y))}addCollisionDebugVertices(A,F,W,re,fe,pe,ze){let Ke=fe.segments.prepareSegment(4,fe.layoutVertexArray,fe.indexArray),ct=Ke.vertexLength,Lt=fe.layoutVertexArray,$t=fe.collisionVertexArray,fr=ze.anchorX,mr=ze.anchorY;this._addCollisionDebugVertex(Lt,$t,pe,fr,mr,new u(A,F)),this._addCollisionDebugVertex(Lt,$t,pe,fr,mr,new u(W,F)),this._addCollisionDebugVertex(Lt,$t,pe,fr,mr,new u(W,re)),this._addCollisionDebugVertex(Lt,$t,pe,fr,mr,new u(A,re)),Ke.vertexLength+=4;let Pr=fe.indexArray;Pr.emplaceBack(ct,ct+1),Pr.emplaceBack(ct+1,ct+2),Pr.emplaceBack(ct+2,ct+3),Pr.emplaceBack(ct+3,ct),Ke.primitiveLength+=4}addDebugCollisionBoxes(A,F,W,re){for(let fe=A;fe<F;fe++){let pe=this.collisionBoxArray.get(fe);this.addCollisionDebugVertices(pe.x1,pe.y1,pe.x2,pe.y2,re?this.textCollisionBox:this.iconCollisionBox,pe.anchorPoint,W)}}generateCollisionDebugBuffers(){this.hasDebugData()&&this.destroyDebugData(),this.textCollisionBox=new cm(Al,sy.members,Te),this.iconCollisionBox=new cm(Al,sy.members,Te);for(let A=0;A<this.symbolInstances.length;A++){let F=this.symbolInstances.get(A);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(A,F,W,re,fe,pe,ze,Ke,ct){let Lt={};for(let $t=F;$t<W;$t++){let fr=A.get($t);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 $t=re;$t<fe;$t++){let fr=A.get($t);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 $t=pe;$t<ze;$t++){let fr=A.get($t);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 $t=Ke;$t<ct;$t++){let fr=A.get($t);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(A){this.collisionArrays=[];for(let F=0;F<this.symbolInstances.length;F++){let W=this.symbolInstances.get(F);this.collisionArrays.push(this._deserializeCollisionBoxesForSymbol(A,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(A,F){let W=A.placedSymbolArray.get(F),re=W.vertexStartIndex+4*W.numGlyphs;for(let fe=W.vertexStartIndex;fe<re;fe+=4)A.indexArray.emplaceBack(fe,fe+1,fe+2),A.indexArray.emplaceBack(fe+1,fe+2,fe+3)}getSortedSymbolIndexes(A){if(this.sortedAngle===A&&this.symbolInstanceIndexes!==void 0)return this.symbolInstanceIndexes;let F=Math.sin(A),W=Math.cos(A),re=[],fe=[],pe=[];for(let ze=0;ze<this.symbolInstances.length;++ze){pe.push(ze);let Ke=this.symbolInstances.get(ze);re.push(0|Math.round(F*Ke.anchorX+W*Ke.anchorY)),fe.push(Ke.featureIndex)}return pe.sort((ze,Ke)=>re[ze]-re[Ke]||fe[Ke]-fe[ze]),pe}addToSortKeyRanges(A,F){let W=this.sortKeyRanges[this.sortKeyRanges.length-1];W&&W.sortKey===F?W.symbolInstanceEnd=A+1:this.sortKeyRanges.push({sortKey:F,symbolInstanceStart:A,symbolInstanceEnd:A+1})}sortFeatures(A){if(this.sortFeaturesByY&&this.sortedAngle!==A&&!(this.text.segments.get().length>1||this.icon.segments.get().length>1)){this.symbolInstanceIndexes=this.getSortedSymbolIndexes(A),this.sortedAngle=A,this.text.indexArray.clear(),this.icon.indexArray.clear(),this.featureSortOrder=[];for(let F of this.symbolInstanceIndexes){let W=this.symbolInstances.get(F);this.featureSortOrder.push(W.featureIndex),[W.rightJustifiedTextSymbolIndex,W.centerJustifiedTextSymbolIndex,W.leftJustifiedTextSymbolIndex].forEach((re,fe,pe)=>{re>=0&&pe.indexOf(re)===fe&&this.addIndicesForPlacedSymbol(this.text,re)}),W.verticalPlacedTextSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.text,W.verticalPlacedTextSymbolIndex),W.placedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,W.placedIconSymbolIndex),W.verticalPlacedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,W.verticalPlacedIconSymbolIndex)}this.text.indexBuffer&&this.text.indexBuffer.updateData(this.text.indexArray),this.icon.indexBuffer&&this.icon.indexBuffer.updateData(this.icon.indexArray)}}}let Tf,Xx;Fi("SymbolBucket",M1,{omit:["layers","collisionBoxArray","features","compareText"]}),M1.MAX_GLYPHS=65535,M1.addDynamicAttributes=lS;var zw={get paint(){return Xx=Xx||new ue({"icon-opacity":new oo(ce.paint_symbol["icon-opacity"]),"icon-color":new oo(ce.paint_symbol["icon-color"]),"icon-halo-color":new oo(ce.paint_symbol["icon-halo-color"]),"icon-halo-width":new oo(ce.paint_symbol["icon-halo-width"]),"icon-halo-blur":new oo(ce.paint_symbol["icon-halo-blur"]),"icon-translate":new Ua(ce.paint_symbol["icon-translate"]),"icon-translate-anchor":new Ua(ce.paint_symbol["icon-translate-anchor"]),"text-opacity":new oo(ce.paint_symbol["text-opacity"]),"text-color":new oo(ce.paint_symbol["text-color"],{runtimeType:er,getOverride:R=>R.textColor,hasOverride:R=>!!R.textColor}),"text-halo-color":new oo(ce.paint_symbol["text-halo-color"]),"text-halo-width":new oo(ce.paint_symbol["text-halo-width"]),"text-halo-blur":new oo(ce.paint_symbol["text-halo-blur"]),"text-translate":new Ua(ce.paint_symbol["text-translate"]),"text-translate-anchor":new Ua(ce.paint_symbol["text-translate-anchor"])})},get layout(){return Tf=Tf||new ue({"symbol-placement":new Ua(ce.layout_symbol["symbol-placement"]),"symbol-spacing":new Ua(ce.layout_symbol["symbol-spacing"]),"symbol-avoid-edges":new Ua(ce.layout_symbol["symbol-avoid-edges"]),"symbol-sort-key":new oo(ce.layout_symbol["symbol-sort-key"]),"symbol-z-order":new Ua(ce.layout_symbol["symbol-z-order"]),"icon-allow-overlap":new Ua(ce.layout_symbol["icon-allow-overlap"]),"icon-overlap":new Ua(ce.layout_symbol["icon-overlap"]),"icon-ignore-placement":new Ua(ce.layout_symbol["icon-ignore-placement"]),"icon-optional":new Ua(ce.layout_symbol["icon-optional"]),"icon-rotation-alignment":new Ua(ce.layout_symbol["icon-rotation-alignment"]),"icon-size":new oo(ce.layout_symbol["icon-size"]),"icon-text-fit":new Ua(ce.layout_symbol["icon-text-fit"]),"icon-text-fit-padding":new Ua(ce.layout_symbol["icon-text-fit-padding"]),"icon-image":new oo(ce.layout_symbol["icon-image"]),"icon-rotate":new oo(ce.layout_symbol["icon-rotate"]),"icon-padding":new oo(ce.layout_symbol["icon-padding"]),"icon-keep-upright":new Ua(ce.layout_symbol["icon-keep-upright"]),"icon-offset":new oo(ce.layout_symbol["icon-offset"]),"icon-anchor":new oo(ce.layout_symbol["icon-anchor"]),"icon-pitch-alignment":new Ua(ce.layout_symbol["icon-pitch-alignment"]),"text-pitch-alignment":new Ua(ce.layout_symbol["text-pitch-alignment"]),"text-rotation-alignment":new Ua(ce.layout_symbol["text-rotation-alignment"]),"text-field":new oo(ce.layout_symbol["text-field"]),"text-font":new oo(ce.layout_symbol["text-font"]),"text-size":new oo(ce.layout_symbol["text-size"]),"text-max-width":new oo(ce.layout_symbol["text-max-width"]),"text-line-height":new Ua(ce.layout_symbol["text-line-height"]),"text-letter-spacing":new oo(ce.layout_symbol["text-letter-spacing"]),"text-justify":new oo(ce.layout_symbol["text-justify"]),"text-radial-offset":new oo(ce.layout_symbol["text-radial-offset"]),"text-variable-anchor":new Ua(ce.layout_symbol["text-variable-anchor"]),"text-variable-anchor-offset":new oo(ce.layout_symbol["text-variable-anchor-offset"]),"text-anchor":new oo(ce.layout_symbol["text-anchor"]),"text-max-angle":new Ua(ce.layout_symbol["text-max-angle"]),"text-writing-mode":new Ua(ce.layout_symbol["text-writing-mode"]),"text-rotate":new oo(ce.layout_symbol["text-rotate"]),"text-padding":new Ua(ce.layout_symbol["text-padding"]),"text-keep-upright":new Ua(ce.layout_symbol["text-keep-upright"]),"text-transform":new oo(ce.layout_symbol["text-transform"]),"text-offset":new oo(ce.layout_symbol["text-offset"]),"text-allow-overlap":new Ua(ce.layout_symbol["text-allow-overlap"]),"text-overlap":new Ua(ce.layout_symbol["text-overlap"]),"text-ignore-placement":new Ua(ce.layout_symbol["text-ignore-placement"]),"text-optional":new Ua(ce.layout_symbol["text-optional"])})}};class Zx{constructor(A){if(A.property.overrides===void 0)throw new Error("overrides must be provided to instantiate FormatSectionOverride class");this.type=A.property.overrides?A.property.overrides.runtimeType:Vt,this.defaultValue=A}evaluate(A){if(A.formattedSection){let F=this.defaultValue.property.overrides;if(F&&F.hasOverride(A.formattedSection))return F.getOverride(A.formattedSection)}return A.feature&&A.featureState?this.defaultValue.evaluate(A.feature,A.featureState):this.defaultValue.property.specification.default}eachChild(A){this.defaultValue.isConstant()||A(this.defaultValue.value._styleExpression.expression)}outputDefined(){return!1}serialize(){return null}}Fi("FormatSectionOverride",Zx,{omit:["defaultValue"]});class cy extends B{constructor(A){super(A,zw)}recalculate(A,F){if(super.recalculate(A,F),this.layout.get("icon-rotation-alignment")==="auto"&&(this.layout._values["icon-rotation-alignment"]=this.layout.get("symbol-placement")!=="point"?"map":"viewport"),this.layout.get("text-rotation-alignment")==="auto"&&(this.layout._values["text-rotation-alignment"]=this.layout.get("symbol-placement")!=="point"?"map":"viewport"),this.layout.get("text-pitch-alignment")==="auto"&&(this.layout._values["text-pitch-alignment"]=this.layout.get("text-rotation-alignment")==="map"?"map":"viewport"),this.layout.get("icon-pitch-alignment")==="auto"&&(this.layout._values["icon-pitch-alignment"]=this.layout.get("icon-rotation-alignment")),this.layout.get("symbol-placement")==="point"){let W=this.layout.get("text-writing-mode");if(W){let re=[];for(let fe of W)re.indexOf(fe)<0&&re.push(fe);this.layout._values["text-writing-mode"]=re}else this.layout._values["text-writing-mode"]=["horizontal"]}this._setPaintOverrides()}getValueAndResolveTokens(A,F,W,re){let fe=this.layout.get(A).evaluate(F,{},W,re),pe=this._unevaluatedLayout._values[A];return pe.isDataDriven()||Dc(pe.value)||!fe?fe:function(ze,Ke){return Ke.replace(/{([^{}]+)}/g,(ct,Lt)=>ze&&Lt in ze?String(ze[Lt]):"")}(F.properties,fe)}createBucket(A){return new M1(A)}queryRadius(){return 0}queryIntersectsFeature(){throw new Error("Should take a different path in FeatureIndex")}_setPaintOverrides(){for(let A of zw.paint.overridableProperties){if(!cy.hasPaintOverride(this.layout,A))continue;let F=this.paint.get(A),W=new Zx(F),re=new Eu(W,F.property.specification),fe=null;fe=F.value.kind==="constant"||F.value.kind==="source"?new bc("source",re):new hu("composite",re,F.value.zoomStops),this.paint._values[A]=new xu(F.property,fe,F.parameters)}}_handleOverridablePaintPropertyUpdate(A,F,W){return!(!this.layout||F.isDataDriven()||W.isDataDriven())&&cy.hasPaintOverride(this.layout,A)}static hasPaintOverride(A,F){let W=A.get("text-field"),re=zw.paint.properties[F],fe=!1,pe=ze=>{for(let Ke of ze)if(re.overrides&&re.overrides.hasOverride(Ke))return void(fe=!0)};if(W.value.kind==="constant"&&W.value.value instanceof ri)pe(W.value.value.sections);else if(W.value.kind==="source"){let ze=ct=>{fe||(ct instanceof ua&&Sn(ct.value)===ti?pe(ct.value.sections):ct instanceof Zl?pe(ct.sections):ct.eachChild(ze))},Ke=W.value;Ke._styleExpression&&ze(Ke._styleExpression.expression)}return fe}}let MC;var Yx={get paint(){return MC=MC||new ue({"background-color":new Ua(ce.paint_background["background-color"]),"background-pattern":new hc(ce.paint_background["background-pattern"]),"background-opacity":new Ua(ce.paint_background["background-opacity"])})}};class J9 extends B{constructor(A){super(A,Yx)}}let fS;var EC={get paint(){return fS=fS||new ue({"raster-opacity":new Ua(ce.paint_raster["raster-opacity"]),"raster-hue-rotate":new Ua(ce.paint_raster["raster-hue-rotate"]),"raster-brightness-min":new Ua(ce.paint_raster["raster-brightness-min"]),"raster-brightness-max":new Ua(ce.paint_raster["raster-brightness-max"]),"raster-saturation":new Ua(ce.paint_raster["raster-saturation"]),"raster-contrast":new Ua(ce.paint_raster["raster-contrast"]),"raster-resampling":new Ua(ce.paint_raster["raster-resampling"]),"raster-fade-duration":new Ua(ce.paint_raster["raster-fade-duration"])})}};class Kx extends B{constructor(A){super(A,EC)}}class hS extends B{constructor(A){super(A,{}),this.onAdd=F=>{this.implementation.onAdd&&this.implementation.onAdd(F,F.painter.context.gl)},this.onRemove=F=>{this.implementation.onRemove&&this.implementation.onRemove(F,F.painter.context.gl)},this.implementation=A}is3D(){return this.implementation.renderingMode==="3d"}hasOffscreenPass(){return this.implementation.prerender!==void 0}recalculate(){}updateTransitions(){}hasTransition(){return!1}serialize(){throw new Error("Custom layers cannot be serialized")}}class dS{constructor(A){this._methodToThrottle=A,this._triggered=!1,typeof MessageChannel!="undefined"&&(this._channel=new MessageChannel,this._channel.port2.onmessage=()=>{this._triggered=!1,this._methodToThrottle()})}trigger(){this._triggered||(this._triggered=!0,this._channel?this._channel.port1.postMessage(!0):setTimeout(()=>{this._triggered=!1,this._methodToThrottle()},0))}remove(){delete this._channel,this._methodToThrottle=()=>{}}}let vS=63710088e-1;class dg{constructor(A,F){if(isNaN(A)||isNaN(F))throw new Error(`Invalid LngLat object: (${A}, ${F})`);if(this.lng=+A,this.lat=+F,this.lat>90||this.lat<-90)throw new Error("Invalid LngLat latitude value: must be between -90 and 90")}wrap(){return new dg(S(this.lng,-180,180),this.lat)}toArray(){return[this.lng,this.lat]}toString(){return`LngLat(${this.lng}, ${this.lat})`}distanceTo(A){let F=Math.PI/180,W=this.lat*F,re=A.lat*F,fe=Math.sin(W)*Math.sin(re)+Math.cos(W)*Math.cos(re)*Math.cos((A.lng-this.lng)*F);return vS*Math.acos(Math.min(fe,1))}static convert(A){if(A instanceof dg)return A;if(Array.isArray(A)&&(A.length===2||A.length===3))return new dg(Number(A[0]),Number(A[1]));if(!Array.isArray(A)&&typeof A=="object"&&A!==null)return new dg(Number("lng"in A?A.lng:A.lon),Number(A.lat));throw new Error("`LngLatLike` argument must be specified as a LngLat instance, an object {lng: <lng>, lat: <lat>}, an object {lon: <lng>, lat: <lat>}, or an array of [<lng>, <lat>]")}}let E1=2*Math.PI*vS;function kC(R){return E1*Math.cos(R*Math.PI/180)}function Ow(R){return(180+R)/360}function CC(R){return(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+R*Math.PI/360)))/360}function qw(R,A){return R/kC(A)}function Jx(R){return 360/Math.PI*Math.atan(Math.exp((180-360*R)*Math.PI/180))-90}class $x{constructor(A,F,W=0){this.x=+A,this.y=+F,this.z=+W}static fromLngLat(A,F=0){let W=dg.convert(A);return new $x(Ow(W.lng),CC(W.lat),qw(F,W.lat))}toLngLat(){return new dg(360*this.x-180,Jx(this.y))}toAltitude(){return this.z*kC(Jx(this.y))}meterInMercatorCoordinateUnits(){return 1/E1*(A=Jx(this.y),1/Math.cos(A*Math.PI/180));var A}}function mp(R,A,F){var W=2*Math.PI*6378137/256/Math.pow(2,F);return[R*W-2*Math.PI*6378137/2,A*W-2*Math.PI*6378137/2]}class pS{constructor(A,F,W){if(!function(re,fe,pe){return!(re<0||re>25||pe<0||pe>=Math.pow(2,re)||fe<0||fe>=Math.pow(2,re))}(A,F,W))throw new Error(`x=${F}, y=${W}, z=${A} outside of bounds. 0<=x<${Math.pow(2,A)}, 0<=y<${Math.pow(2,A)} 0<=z<=25 `);this.z=A,this.x=F,this.y=W,this.key=Qx(0,A,A,F,W)}equals(A){return this.z===A.z&&this.x===A.x&&this.y===A.y}url(A,F,W){let re=(pe=this.y,ze=this.z,Ke=mp(256*(fe=this.x),256*(pe=Math.pow(2,ze)-pe-1),ze),ct=mp(256*(fe+1),256*(pe+1),ze),Ke[0]+","+Ke[1]+","+ct[0]+","+ct[1]);var fe,pe,ze,Ke,ct;let Lt=function($t,fr,mr){let Pr,zr="";for(let ui=$t;ui>0;ui--)Pr=1<<ui-1,zr+=(fr&Pr?1:0)+(mr&Pr?2:0);return zr}(this.z,this.x,this.y);return A[(this.x+this.y)%A.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,re)}isChildOf(A){let F=this.z-A.z;return F>0&&A.x===this.x>>F&&A.y===this.y>>F}getTilePoint(A){let F=Math.pow(2,this.z);return new u((A.x*F-this.x)*ja,(A.y*F-this.y)*ja)}toString(){return`${this.z}/${this.x}/${this.y}`}}class LC{constructor(A,F){this.wrap=A,this.canonical=F,this.key=Qx(A,F.z,F.z,F.x,F.y)}}class $v{constructor(A,F,W,re,fe){if(A<W)throw new Error(`overscaledZ should be >= z; overscaledZ = ${A}; z = ${W}`);this.overscaledZ=A,this.wrap=F,this.canonical=new pS(W,+re,+fe),this.key=Qx(F,A,W,re,fe)}clone(){return new $v(this.overscaledZ,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y)}equals(A){return this.overscaledZ===A.overscaledZ&&this.wrap===A.wrap&&this.canonical.equals(A.canonical)}scaledTo(A){if(A>this.overscaledZ)throw new Error(`targetZ > this.overscaledZ; targetZ = ${A}; overscaledZ = ${this.overscaledZ}`);let F=this.canonical.z-A;return A>this.canonical.z?new $v(A,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y):new $v(A,this.wrap,A,this.canonical.x>>F,this.canonical.y>>F)}calculateScaledKey(A,F){if(A>this.overscaledZ)throw new Error(`targetZ > this.overscaledZ; targetZ = ${A}; overscaledZ = ${this.overscaledZ}`);let W=this.canonical.z-A;return A>this.canonical.z?Qx(this.wrap*+F,A,this.canonical.z,this.canonical.x,this.canonical.y):Qx(this.wrap*+F,A,A,this.canonical.x>>W,this.canonical.y>>W)}isChildOf(A){if(A.wrap!==this.wrap)return!1;let F=this.canonical.z-A.canonical.z;return A.overscaledZ===0||A.overscaledZ<this.overscaledZ&&A.canonical.x===this.canonical.x>>F&&A.canonical.y===this.canonical.y>>F}children(A){if(this.overscaledZ>=A)return[new $v(this.overscaledZ+1,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y)];let F=this.canonical.z+1,W=2*this.canonical.x,re=2*this.canonical.y;return[new $v(F,this.wrap,F,W,re),new $v(F,this.wrap,F,W+1,re),new $v(F,this.wrap,F,W,re+1),new $v(F,this.wrap,F,W+1,re+1)]}isLessThan(A){return this.wrap<A.wrap||!(this.wrap>A.wrap)&&(this.overscaledZ<A.overscaledZ||!(this.overscaledZ>A.overscaledZ)&&(this.canonical.x<A.canonical.x||!(this.canonical.x>A.canonical.x)&&this.canonical.y<A.canonical.y))}wrapped(){return new $v(this.overscaledZ,0,this.canonical.z,this.canonical.x,this.canonical.y)}unwrapTo(A){return new $v(this.overscaledZ,A,this.canonical.z,this.canonical.x,this.canonical.y)}overscaleFactor(){return Math.pow(2,this.overscaledZ-this.canonical.z)}toUnwrapped(){return new LC(this.wrap,this.canonical)}toString(){return`${this.overscaledZ}/${this.canonical.x}/${this.canonical.y}`}getTilePoint(A){return this.canonical.getTilePoint(new $x(A.x-this.wrap,A.y))}}function Qx(R,A,F,W,re){(R*=2)<0&&(R=-1*R-1);let fe=1<<F;return(fe*fe*R+fe*re+W).toString(36)+F.toString(36)+A.toString(36)}Fi("CanonicalTileID",pS),Fi("OverscaledTileID",$v,{omit:["posMatrix"]});class PC{constructor(A,F,W,re=1,fe=1,pe=1,ze=0){if(this.uid=A,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=re,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 ct=0;ct<Ke;ct++)this.data[this._idx(-1,ct)]=this.data[this._idx(0,ct)],this.data[this._idx(Ke,ct)]=this.data[this._idx(Ke-1,ct)],this.data[this._idx(ct,-1)]=this.data[this._idx(ct,0)],this.data[this._idx(ct,Ke)]=this.data[this._idx(ct,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 ct=0;ct<Ke;ct++)for(let Lt=0;Lt<Ke;Lt++){let $t=this.get(ct,Lt);$t>this.max&&(this.max=$t),$t<this.min&&(this.min=$t)}}get(A,F){let W=new Uint8Array(this.data.buffer),re=4*this._idx(A,F);return this.unpack(W[re],W[re+1],W[re+2])}getUnpackVector(){return[this.redFactor,this.greenFactor,this.blueFactor,this.baseShift]}_idx(A,F){if(A<-1||A>=this.dim+1||F<-1||F>=this.dim+1)throw new RangeError("out of range source coordinates for DEM data");return(F+1)*this.stride+(A+1)}unpack(A,F,W){return A*this.redFactor+F*this.greenFactor+W*this.blueFactor-this.baseShift}getPixels(){return new Ki({width:this.stride,height:this.stride},new Uint8Array(this.data.buffer))}backfillBorder(A,F,W){if(this.dim!==A.dim)throw new Error("dem dimension mismatch");let re=F*this.dim,fe=F*this.dim+this.dim,pe=W*this.dim,ze=W*this.dim+this.dim;switch(F){case-1:re=fe-1;break;case 1:fe=re+1}switch(W){case-1:pe=ze-1;break;case 1:ze=pe+1}let Ke=-F*this.dim,ct=-W*this.dim;for(let Lt=pe;Lt<ze;Lt++)for(let $t=re;$t<fe;$t++)this.data[this._idx($t,Lt)]=A.data[this._idx($t+Ke,Lt+ct)]}}Fi("DEMData",PC);class IC{constructor(A){this._stringToNumber={},this._numberToString=[];for(let F=0;F<A.length;F++){let W=A[F];this._stringToNumber[W]=F,this._numberToString[F]=W}}encode(A){return this._stringToNumber[A]}decode(A){if(A>=this._numberToString.length)throw new Error(`Out of bounds. Index requested n=${A} can't be >= this._numberToString.length ${this._numberToString.length}`);return this._numberToString[A]}}class gS{constructor(A,F,W,re,fe){this.type="Feature",this._vectorTileFeature=A,A._z=F,A._x=W,A._y=re,this.properties=A.properties,this.id=fe}get geometry(){return this._geometry===void 0&&(this._geometry=this._vectorTileFeature.toGeoJSON(this._vectorTileFeature._x,this._vectorTileFeature._y,this._vectorTileFeature._z).geometry),this._geometry}set geometry(A){this._geometry=A}toJSON(){let A={geometry:this.geometry};for(let F in this)F!=="_geometry"&&F!=="_vectorTileFeature"&&(A[F]=this[F]);return A}}class fy{constructor(A,F){this.tileID=A,this.x=A.canonical.x,this.y=A.canonical.y,this.z=A.canonical.z,this.grid=new Qi(ja,16,0),this.grid3D=new Qi(ja,16,0),this.featureIndexArray=new Ts,this.promoteId=F}insert(A,F,W,re,fe,pe){let ze=this.featureIndexArray.length;this.featureIndexArray.emplaceBack(W,re,fe);let Ke=pe?this.grid3D:this.grid;for(let ct=0;ct<F.length;ct++){let Lt=F[ct],$t=[1/0,1/0,-1/0,-1/0];for(let fr=0;fr<Lt.length;fr++){let mr=Lt[fr];$t[0]=Math.min($t[0],mr.x),$t[1]=Math.min($t[1],mr.y),$t[2]=Math.max($t[2],mr.x),$t[3]=Math.max($t[3],mr.y)}$t[0]<ja&&$t[1]<ja&&$t[2]>=0&&$t[3]>=0&&Ke.insert(ze,$t[0],$t[1],$t[2],$t[3])}}loadVTLayers(){return this.vtLayers||(this.vtLayers=new br.VectorTile(new nS(this.rawTileData)).layers,this.sourceLayerCoder=new IC(this.vtLayers?Object.keys(this.vtLayers).sort():["_geojsonTileLayer"])),this.vtLayers}query(A,F,W,re){this.loadVTLayers();let fe=A.params||{},pe=ja/A.tileSize/A.scale,ze=Fc(fe.filter),Ke=A.queryGeometry,ct=A.queryPadding*pe,Lt=DC(Ke),$t=this.grid.query(Lt.minX-ct,Lt.minY-ct,Lt.maxX+ct,Lt.maxY+ct),fr=DC(A.cameraQueryGeometry),mr=this.grid3D.query(fr.minX-ct,fr.minY-ct,fr.maxX+ct,fr.maxY+ct,(ui,yi,vn,zi)=>function(un,Tn,pa,ro,Vo){for(let sa of un)if(Tn<=sa.x&&pa<=sa.y&&ro>=sa.x&&Vo>=sa.y)return!0;let Xa=[new u(Tn,pa),new u(Tn,Vo),new u(ro,Vo),new u(ro,pa)];if(un.length>2){for(let sa of Xa)if(Ui(un,sa))return!0}for(let sa=0;sa<un.length-1;sa++)if(qi(un[sa],un[sa+1],Xa))return!0;return!1}(A.cameraQueryGeometry,ui-ct,yi-ct,vn+ct,zi+ct));for(let ui of mr)$t.push(ui);$t.sort($9);let Pr={},zr;for(let ui=0;ui<$t.length;ui++){let yi=$t[ui];if(yi===zr)continue;zr=yi;let vn=this.featureIndexArray.get(yi),zi=null;this.loadMatchingFeature(Pr,vn.bucketIndex,vn.sourceLayerIndex,vn.featureIndex,ze,fe.layers,fe.availableImages,F,W,re,(un,Tn,pa)=>(zi||(zi=$s(un)),Tn.queryIntersectsFeature(Ke,un,pa,zi,this.z,A.transform,pe,A.pixelPosMatrix)))}return Pr}loadMatchingFeature(A,F,W,re,fe,pe,ze,Ke,ct,Lt,$t){let fr=this.bucketLayerIDs[F];if(pe&&!function(ui,yi){for(let vn=0;vn<ui.length;vn++)if(yi.indexOf(ui[vn])>=0)return!0;return!1}(pe,fr))return;let mr=this.sourceLayerCoder.decode(W),Pr=this.vtLayers[mr].feature(re);if(fe.needGeometry){let ui=Sl(Pr,!0);if(!fe.filter(new rs(this.tileID.overscaledZ),ui,this.tileID.canonical))return}else if(!fe.filter(new rs(this.tileID.overscaledZ),Pr))return;let zr=this.getId(Pr,mr);for(let ui=0;ui<fr.length;ui++){let yi=fr[ui];if(pe&&pe.indexOf(yi)<0)continue;let vn=Ke[yi];if(!vn)continue;let zi={};zr&&Lt&&(zi=Lt.getState(vn.sourceLayer||"_geojsonTileLayer",zr));let un=L({},ct[yi]);un.paint=RC(un.paint,vn.paint,Pr,zi,ze),un.layout=RC(un.layout,vn.layout,Pr,zi,ze);let Tn=!$t||$t(Pr,vn,zi);if(!Tn)continue;let pa=new gS(Pr,this.z,this.x,this.y,zr);pa.layer=un;let ro=A[yi];ro===void 0&&(ro=A[yi]=[]),ro.push({featureIndex:re,feature:pa,intersectionZ:Tn})}}lookupSymbolFeatures(A,F,W,re,fe,pe,ze,Ke){let ct={};this.loadVTLayers();let Lt=Fc(fe);for(let $t of A)this.loadMatchingFeature(ct,W,re,$t,Lt,pe,ze,Ke,F);return ct}hasLayer(A){for(let F of this.bucketLayerIDs)for(let W of F)if(A===W)return!0;return!1}getId(A,F){let W=A.id;return this.promoteId&&(W=A.properties[typeof this.promoteId=="string"?this.promoteId:this.promoteId[F]],typeof W=="boolean"&&(W=Number(W))),W}}function RC(R,A,F,W,re){return C(R,(fe,pe)=>{let ze=A instanceof Ac?A.get(pe):null;return ze&&ze.evaluate?ze.evaluate(F,W,re):ze})}function DC(R){let A=1/0,F=1/0,W=-1/0,re=-1/0;for(let fe of R)A=Math.min(A,fe.x),F=Math.min(F,fe.y),W=Math.max(W,fe.x),re=Math.max(re,fe.y);return{minX:A,minY:F,maxX:W,maxY:re}}function $9(R,A){return A-R}function FC(R,A,F,W,re){let fe=[];for(let pe=0;pe<R.length;pe++){let ze=R[pe],Ke;for(let ct=0;ct<ze.length-1;ct++){let Lt=ze[ct],$t=ze[ct+1];Lt.x<A&&$t.x<A||(Lt.x<A?Lt=new u(A,Lt.y+(A-Lt.x)/($t.x-Lt.x)*($t.y-Lt.y))._round():$t.x<A&&($t=new u(A,Lt.y+(A-Lt.x)/($t.x-Lt.x)*($t.y-Lt.y))._round()),Lt.y<F&&$t.y<F||(Lt.y<F?Lt=new u(Lt.x+(F-Lt.y)/($t.y-Lt.y)*($t.x-Lt.x),F)._round():$t.y<F&&($t=new u(Lt.x+(F-Lt.y)/($t.y-Lt.y)*($t.x-Lt.x),F)._round()),Lt.x>=W&&$t.x>=W||(Lt.x>=W?Lt=new u(W,Lt.y+(W-Lt.x)/($t.x-Lt.x)*($t.y-Lt.y))._round():$t.x>=W&&($t=new u(W,Lt.y+(W-Lt.x)/($t.x-Lt.x)*($t.y-Lt.y))._round()),Lt.y>=re&&$t.y>=re||(Lt.y>=re?Lt=new u(Lt.x+(re-Lt.y)/($t.y-Lt.y)*($t.x-Lt.x),re)._round():$t.y>=re&&($t=new u(Lt.x+(re-Lt.y)/($t.y-Lt.y)*($t.x-Lt.x),re)._round()),Ke&&Lt.equals(Ke[Ke.length-1])||(Ke=[Lt],fe.push(Ke)),Ke.push($t)))))}}return fe}Fi("FeatureIndex",fy,{omit:["rawTileData","sourceLayerCoder"]});class vg extends u{constructor(A,F,W,re){super(A,F),this.angle=W,re!==void 0&&(this.segment=re)}clone(){return new vg(this.x,this.y,this.angle,this.segment)}}function mS(R,A,F,W,re){if(A.segment===void 0||F===0)return!0;let fe=A,pe=A.segment+1,ze=0;for(;ze>-F/2;){if(pe--,pe<0)return!1;ze-=R[pe].dist(fe),fe=R[pe]}ze+=R[pe].dist(R[pe+1]),pe++;let Ke=[],ct=0;for(;ze<F/2;){let Lt=R[pe],$t=R[pe+1];if(!$t)return!1;let fr=R[pe-1].angleTo(Lt)-Lt.angleTo($t);for(fr=Math.abs((fr+3*Math.PI)%(2*Math.PI)-Math.PI),Ke.push({distance:ze,angleDelta:fr}),ct+=fr;ze-Ke[0].distance>W;)ct-=Ke.shift().angleDelta;if(ct>re)return!1;pe++,ze+=Lt.dist($t)}return!0}function zC(R){let A=0;for(let F=0;F<R.length-1;F++)A+=R[F].dist(R[F+1]);return A}function OC(R,A,F){return R?.6*A*F:0}function qC(R,A){return Math.max(R?R.right-R.left:0,A?A.right-A.left:0)}function Q9(R,A,F,W,re,fe){let pe=OC(F,re,fe),ze=qC(F,W)*fe,Ke=0,ct=zC(R)/2;for(let Lt=0;Lt<R.length-1;Lt++){let $t=R[Lt],fr=R[Lt+1],mr=$t.dist(fr);if(Ke+mr>ct){let Pr=(ct-Ke)/mr,zr=Lo.number($t.x,fr.x,Pr),ui=Lo.number($t.y,fr.y,Pr),yi=new vg(zr,ui,fr.angleTo($t),Lt);return yi._round(),!pe||mS(R,yi,ze,pe,A)?yi:void 0}Ke+=mr}}function eO(R,A,F,W,re,fe,pe,ze,Ke){let ct=OC(W,fe,pe),Lt=qC(W,re),$t=Lt*pe,fr=R[0].x===0||R[0].x===Ke||R[0].y===0||R[0].y===Ke;return A-$t<A/4&&(A=$t+A/4),BC(R,fr?A/2*ze%A:(Lt/2+2*fe)*pe*ze%A,A,ct,F,$t,fr,!1,Ke)}function BC(R,A,F,W,re,fe,pe,ze,Ke){let ct=fe/2,Lt=zC(R),$t=0,fr=A-F,mr=[];for(let Pr=0;Pr<R.length-1;Pr++){let zr=R[Pr],ui=R[Pr+1],yi=zr.dist(ui),vn=ui.angleTo(zr);for(;fr+F<$t+yi;){fr+=F;let zi=(fr-$t)/yi,un=Lo.number(zr.x,ui.x,zi),Tn=Lo.number(zr.y,ui.y,zi);if(un>=0&&un<Ke&&Tn>=0&&Tn<Ke&&fr-ct>=0&&fr+ct<=Lt){let pa=new vg(un,Tn,vn,Pr);pa._round(),W&&!mS(R,pa,fe,W,re)||mr.push(pa)}}$t+=yi}return ze||mr.length||pe||(mr=BC(R,$t/2,F,W,re,fe,pe,!0,Ke)),mr}Fi("Anchor",vg);let k1=Md;function NC(R,A,F,W){let re=[],fe=R.image,pe=fe.pixelRatio,ze=fe.paddedRect.w-2*k1,Ke=fe.paddedRect.h-2*k1,ct={x1:R.left,y1:R.top,x2:R.right,y2:R.bottom},Lt=fe.stretchX||[[0,ze]],$t=fe.stretchY||[[0,Ke]],fr=(Xn,Ro)=>Xn+Ro[1]-Ro[0],mr=Lt.reduce(fr,0),Pr=$t.reduce(fr,0),zr=ze-mr,ui=Ke-Pr,yi=0,vn=mr,zi=0,un=Pr,Tn=0,pa=zr,ro=0,Vo=ui;if(fe.content&&W){let Xn=fe.content,Ro=Xn[2]-Xn[0],uo=Xn[3]-Xn[1];(fe.textFitWidth||fe.textFitHeight)&&(ct=TC(R)),yi=pg(Lt,0,Xn[0]),zi=pg($t,0,Xn[1]),vn=pg(Lt,Xn[0],Xn[2]),un=pg($t,Xn[1],Xn[3]),Tn=Xn[0]-yi,ro=Xn[1]-zi,pa=Ro-vn,Vo=uo-un}let Xa=ct.x1,sa=ct.y1,Mo=ct.x2-Xa,fo=ct.y2-sa,lo=(Xn,Ro,uo,$o)=>{let Ju=Bw(Xn.stretch-yi,vn,Mo,Xa),qu=C1(Xn.fixed-Tn,pa,Xn.stretch,mr),Mh=Bw(Ro.stretch-zi,un,fo,sa),Qv=C1(Ro.fixed-ro,Vo,Ro.stretch,Pr),ld=Bw(uo.stretch-yi,vn,Mo,Xa),Eh=C1(uo.fixed-Tn,pa,uo.stretch,mr),Gd=Bw($o.stretch-zi,un,fo,sa),Hd=C1($o.fixed-ro,Vo,$o.stretch,Pr),jd=new u(Ju,Mh),Af=new u(ld,Mh),kh=new u(ld,Gd),Ed=new u(Ju,Gd),ud=new u(qu/pe,Qv/pe),Wh=new u(Eh/pe,Hd/pe),Df=A*Math.PI/180;if(Df){let tu=Math.sin(Df),pc=Math.cos(Df),$u=[pc,-tu,tu,pc];jd._matMult($u),Af._matMult($u),Ed._matMult($u),kh._matMult($u)}let Fv=Xn.stretch+Xn.fixed,lv=Ro.stretch+Ro.fixed;return{tl:jd,tr:Af,bl:Ed,br:kh,tex:{x:fe.paddedRect.x+k1+Fv,y:fe.paddedRect.y+k1+lv,w:uo.stretch+uo.fixed-Fv,h:$o.stretch+$o.fixed-lv},writingMode:void 0,glyphOffset:[0,0],sectionIndex:0,pixelOffsetTL:ud,pixelOffsetBR:Wh,minFontScaleX:pa/pe/Mo,minFontScaleY:Vo/pe/fo,isSDF:F}};if(W&&(fe.stretchX||fe.stretchY)){let Xn=UC(Lt,zr,mr),Ro=UC($t,ui,Pr);for(let uo=0;uo<Xn.length-1;uo++){let $o=Xn[uo],Ju=Xn[uo+1];for(let qu=0;qu<Ro.length-1;qu++)re.push(lo($o,Ro[qu],Ju,Ro[qu+1]))}}else re.push(lo({fixed:0,stretch:-1},{fixed:0,stretch:-1},{fixed:0,stretch:ze+1},{fixed:0,stretch:Ke+1}));return re}function pg(R,A,F){let W=0;for(let re of R)W+=Math.max(A,Math.min(F,re[1]))-Math.max(A,Math.min(F,re[0]));return W}function UC(R,A,F){let W=[{fixed:-k1,stretch:0}];for(let[re,fe]of R){let pe=W[W.length-1];W.push({fixed:re-pe.stretch,stretch:pe.stretch}),W.push({fixed:re-pe.stretch,stretch:pe.stretch+(fe-re)})}return W.push({fixed:A+k1,stretch:F}),W}function Bw(R,A,F,W){return R/A*F+W}function C1(R,A,F,W){return R-A*F/W}class fm{constructor(A,F,W,re,fe,pe,ze,Ke,ct,Lt){var $t;if(this.boxStartIndex=A.length,ct){let fr=pe.top,mr=pe.bottom,Pr=pe.collisionPadding;Pr&&(fr-=Pr[1],mr+=Pr[3]);let zr=mr-fr;zr>0&&(zr=Math.max(10,zr),this.circleDiameter=zr)}else{let fr=!(($t=pe.image)===null||$t===void 0)&&$t.content&&(pe.image.textFitWidth||pe.image.textFitHeight)?TC(pe):{x1:pe.left,y1:pe.top,x2:pe.right,y2:pe.bottom};fr.y1=fr.y1*ze-Ke[0],fr.y2=fr.y2*ze+Ke[2],fr.x1=fr.x1*ze-Ke[3],fr.x2=fr.x2*ze+Ke[1];let mr=pe.collisionPadding;if(mr&&(fr.x1-=mr[0]*ze,fr.y1-=mr[1]*ze,fr.x2+=mr[2]*ze,fr.y2+=mr[3]*ze),Lt){let Pr=new u(fr.x1,fr.y1),zr=new u(fr.x2,fr.y1),ui=new u(fr.x1,fr.y2),yi=new u(fr.x2,fr.y2),vn=Lt*Math.PI/180;Pr._rotate(vn),zr._rotate(vn),ui._rotate(vn),yi._rotate(vn),fr.x1=Math.min(Pr.x,zr.x,ui.x,yi.x),fr.x2=Math.max(Pr.x,zr.x,ui.x,yi.x),fr.y1=Math.min(Pr.y,zr.y,ui.y,yi.y),fr.y2=Math.max(Pr.y,zr.y,ui.y,yi.y)}A.emplaceBack(F.x,F.y,fr.x1,fr.y1,fr.x2,fr.y2,W,re,fe)}this.boxEndIndex=A.length}}class Vp{constructor(A=[],F=(W,re)=>W<re?-1:W>re?1:0){if(this.data=A,this.length=this.data.length,this.compare=F,this.length>0)for(let W=(this.length>>1)-1;W>=0;W--)this._down(W)}push(A){this.data.push(A),this._up(this.length++)}pop(){if(this.length===0)return;let A=this.data[0],F=this.data.pop();return--this.length>0&&(this.data[0]=F,this._down(0)),A}peek(){return this.data[0]}_up(A){let{data:F,compare:W}=this,re=F[A];for(;A>0;){let fe=A-1>>1,pe=F[fe];if(W(re,pe)>=0)break;F[A]=pe,A=fe}F[A]=re}_down(A){let{data:F,compare:W}=this,re=this.length>>1,fe=F[A];for(;A<re;){let pe=1+(A<<1),ze=pe+1;if(ze<this.length&&W(F[ze],F[pe])<0&&(pe=ze),W(F[pe],fe)>=0)break;F[A]=F[pe],A=pe}F[A]=fe}}function tO(R,A=1,F=!1){let W=1/0,re=1/0,fe=-1/0,pe=-1/0,ze=R[0];for(let mr=0;mr<ze.length;mr++){let Pr=ze[mr];(!mr||Pr.x<W)&&(W=Pr.x),(!mr||Pr.y<re)&&(re=Pr.y),(!mr||Pr.x>fe)&&(fe=Pr.x),(!mr||Pr.y>pe)&&(pe=Pr.y)}let Ke=Math.min(fe-W,pe-re),ct=Ke/2,Lt=new Vp([],rO);if(Ke===0)return new u(W,re);for(let mr=W;mr<fe;mr+=Ke)for(let Pr=re;Pr<pe;Pr+=Ke)Lt.push(new L1(mr+ct,Pr+ct,ct,R));let $t=function(mr){let Pr=0,zr=0,ui=0,yi=mr[0];for(let vn=0,zi=yi.length,un=zi-1;vn<zi;un=vn++){let Tn=yi[vn],pa=yi[un],ro=Tn.x*pa.y-pa.x*Tn.y;zr+=(Tn.x+pa.x)*ro,ui+=(Tn.y+pa.y)*ro,Pr+=3*ro}return new L1(zr/Pr,ui/Pr,0,mr)}(R),fr=Lt.length;for(;Lt.length;){let mr=Lt.pop();(mr.d>$t.d||!$t.d)&&($t=mr,F&&console.log("found best %d after %d probes",Math.round(1e4*mr.d)/1e4,fr)),mr.max-$t.d<=A||(ct=mr.h/2,Lt.push(new L1(mr.p.x-ct,mr.p.y-ct,ct,R)),Lt.push(new L1(mr.p.x+ct,mr.p.y-ct,ct,R)),Lt.push(new L1(mr.p.x-ct,mr.p.y+ct,ct,R)),Lt.push(new L1(mr.p.x+ct,mr.p.y+ct,ct,R)),fr+=4)}return F&&(console.log(`num probes: ${fr}`),console.log(`best distance: ${$t.d}`)),$t.p}function rO(R,A){return A.max-R.max}function L1(R,A,F,W){this.p=new u(R,A),this.h=F,this.d=function(re,fe){let pe=!1,ze=1/0;for(let Ke=0;Ke<fe.length;Ke++){let ct=fe[Ke];for(let Lt=0,$t=ct.length,fr=$t-1;Lt<$t;fr=Lt++){let mr=ct[Lt],Pr=ct[fr];mr.y>re.y!=Pr.y>re.y&&re.x<(Pr.x-mr.x)*(re.y-mr.y)/(Pr.y-mr.y)+mr.x&&(pe=!pe),ze=Math.min(ze,Gr(re,mr,Pr))}}return(pe?1:-1)*Math.sqrt(ze)}(this.p,W),this.max=this.d+this.h*Math.SQRT2}var sd;i.aq=void 0,(sd=i.aq||(i.aq={}))[sd.center=1]="center",sd[sd.left=2]="left",sd[sd.right=3]="right",sd[sd.top=4]="top",sd[sd.bottom=5]="bottom",sd[sd["top-left"]=6]="top-left",sd[sd["top-right"]=7]="top-right",sd[sd["bottom-left"]=8]="bottom-left",sd[sd["bottom-right"]=9]="bottom-right";let hm=7,hy=Number.POSITIVE_INFINITY;function yS(R,A){return A[1]!==hy?function(F,W,re){let fe=0,pe=0;switch(W=Math.abs(W),re=Math.abs(re),F){case"top-right":case"top-left":case"top":pe=re-hm;break;case"bottom-right":case"bottom-left":case"bottom":pe=-re+hm}switch(F){case"top-right":case"bottom-right":case"right":fe=-W;break;case"top-left":case"bottom-left":case"left":fe=W}return[fe,pe]}(R,A[0],A[1]):function(F,W){let re=0,fe=0;W<0&&(W=0);let pe=W/Math.SQRT2;switch(F){case"top-right":case"top-left":fe=pe-hm;break;case"bottom-right":case"bottom-left":fe=-pe+hm;break;case"bottom":fe=-W+hm;break;case"top":fe=W-hm}switch(F){case"top-right":case"bottom-right":re=-pe;break;case"top-left":case"bottom-left":re=pe;break;case"left":re=W;break;case"right":re=-W}return[re,fe]}(R,A[0])}function VC(R,A,F){var W;let re=R.layout,fe=(W=re.get("text-variable-anchor-offset"))===null||W===void 0?void 0:W.evaluate(A,{},F);if(fe){let ze=fe.values,Ke=[];for(let ct=0;ct<ze.length;ct+=2){let Lt=Ke[ct]=ze[ct],$t=ze[ct+1].map(fr=>fr*eu);Lt.startsWith("top")?$t[1]-=hm:Lt.startsWith("bottom")&&($t[1]+=hm),Ke[ct+1]=$t}return new $i(Ke)}let pe=re.get("text-variable-anchor");if(pe){let ze;ze=R._unevaluatedLayout.getValue("text-radial-offset")!==void 0?[re.get("text-radial-offset").evaluate(A,{},F)*eu,hy]:re.get("text-offset").evaluate(A,{},F).map(ct=>ct*eu);let Ke=[];for(let ct of pe)Ke.push(ct,yS(ct,ze));return new $i(Ke)}return null}function _S(R){switch(R){case"right":case"top-right":case"bottom-right":return"right";case"left":case"top-left":case"bottom-left":return"left"}return"center"}function iO(R,A,F,W,re,fe,pe,ze,Ke,ct,Lt){let $t=fe.textMaxSize.evaluate(A,{});$t===void 0&&($t=pe);let fr=R.layers[0].layout,mr=fr.get("icon-offset").evaluate(A,{},Lt),Pr=HC(F.horizontal),zr=pe/24,ui=R.tilePixelRatio*zr,yi=R.tilePixelRatio*$t/24,vn=R.tilePixelRatio*ze,zi=R.tilePixelRatio*fr.get("symbol-spacing"),un=fr.get("text-padding")*R.tilePixelRatio,Tn=function(Xn,Ro,uo,$o=1){let Ju=Xn.get("icon-padding").evaluate(Ro,{},uo),qu=Ju&&Ju.values;return[qu[0]*$o,qu[1]*$o,qu[2]*$o,qu[3]*$o]}(fr,A,Lt,R.tilePixelRatio),pa=fr.get("text-max-angle")/180*Math.PI,ro=fr.get("text-rotation-alignment")!=="viewport"&&fr.get("symbol-placement")!=="point",Vo=fr.get("icon-rotation-alignment")==="map"&&fr.get("symbol-placement")!=="point",Xa=fr.get("symbol-placement"),sa=zi/2,Mo=fr.get("icon-text-fit"),fo;W&&Mo!=="none"&&(R.allowVerticalPlacement&&F.vertical&&(fo=AC(W,F.vertical,Mo,fr.get("icon-text-fit-padding"),mr,zr)),Pr&&(W=AC(W,Pr,Mo,fr.get("icon-text-fit-padding"),mr,zr)));let lo=(Xn,Ro)=>{Ro.x<0||Ro.x>=ja||Ro.y<0||Ro.y>=ja||function(uo,$o,Ju,qu,Mh,Qv,ld,Eh,Gd,Hd,jd,Af,kh,Ed,ud,Wh,Df,Fv,lv,tu,pc,$u,zv,ff,P1){let v0=uo.addToLineVertexArray($o,Ju),Gp,ep,Gc,Zf,tp=0,gg=0,uv=0,I1=0,AS=-1,Gw=-1,p0={},dy=bi("");if(uo.allowVerticalPlacement&&qu.vertical){let kd=Eh.layout.get("text-rotate").evaluate(pc,{},ff)+90;Gc=new fm(Gd,$o,Hd,jd,Af,qu.vertical,kh,Ed,ud,kd),ld&&(Zf=new fm(Gd,$o,Hd,jd,Af,ld,Df,Fv,ud,kd))}if(Mh){let kd=Eh.layout.get("icon-rotate").evaluate(pc,{}),rp=Eh.layout.get("icon-text-fit")!=="none",dm=NC(Mh,kd,zv,rp),Wd=ld?NC(ld,kd,zv,rp):void 0;ep=new fm(Gd,$o,Hd,jd,Af,Mh,Df,Fv,!1,kd),tp=4*dm.length;let Cd=uo.iconSizeData,_p=null;Cd.kind==="source"?(_p=[d0*Eh.layout.get("icon-size").evaluate(pc,{})],_p[0]>um&&T(`${uo.layerIds[0]}: Value for "icon-size" is >= ${Wx}. Reduce your "icon-size".`)):Cd.kind==="composite"&&(_p=[d0*$u.compositeIconSizes[0].evaluate(pc,{},ff),d0*$u.compositeIconSizes[1].evaluate(pc,{},ff)],(_p[0]>um||_p[1]>um)&&T(`${uo.layerIds[0]}: Value for "icon-size" is >= ${Wx}. Reduce your "icon-size".`)),uo.addSymbols(uo.icon,dm,_p,tu,lv,pc,i.ah.none,$o,v0.lineStartIndex,v0.lineLength,-1,ff),AS=uo.icon.placedSymbolArray.length-1,Wd&&(gg=4*Wd.length,uo.addSymbols(uo.icon,Wd,_p,tu,lv,pc,i.ah.vertical,$o,v0.lineStartIndex,v0.lineLength,-1,ff),Gw=uo.icon.placedSymbolArray.length-1)}let Xh=Object.keys(qu.horizontal);for(let kd of Xh){let rp=qu.horizontal[kd];if(!Gp){dy=bi(rp.text);let Wd=Eh.layout.get("text-rotate").evaluate(pc,{},ff);Gp=new fm(Gd,$o,Hd,jd,Af,rp,kh,Ed,ud,Wd)}let dm=rp.positionedLines.length===1;if(uv+=GC(uo,$o,rp,Qv,Eh,ud,pc,Wh,v0,qu.vertical?i.ah.horizontal:i.ah.horizontalOnly,dm?Xh:[kd],p0,AS,$u,ff),dm)break}qu.vertical&&(I1+=GC(uo,$o,qu.vertical,Qv,Eh,ud,pc,Wh,v0,i.ah.vertical,["vertical"],p0,Gw,$u,ff));let oO=Gp?Gp.boxStartIndex:uo.collisionBoxArray.length,Hw=Gp?Gp.boxEndIndex:uo.collisionBoxArray.length,g0=Gc?Gc.boxStartIndex:uo.collisionBoxArray.length,cv=Gc?Gc.boxEndIndex:uo.collisionBoxArray.length,ZC=ep?ep.boxStartIndex:uo.collisionBoxArray.length,sO=ep?ep.boxEndIndex:uo.collisionBoxArray.length,YC=Zf?Zf.boxStartIndex:uo.collisionBoxArray.length,lO=Zf?Zf.boxEndIndex:uo.collisionBoxArray.length,yp=-1,rb=(kd,rp)=>kd&&kd.circleDiameter?Math.max(kd.circleDiameter,rp):rp;yp=rb(Gp,yp),yp=rb(Gc,yp),yp=rb(ep,yp),yp=rb(Zf,yp);let jw=yp>-1?1:0;jw&&(yp*=P1/eu),uo.glyphOffsetArray.length>=M1.MAX_GLYPHS&&T("Too many glyphs being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907"),pc.sortKey!==void 0&&uo.addToSortKeyRanges(uo.symbolInstances.length,pc.sortKey);let SS=VC(Eh,pc,ff),[uO,cO]=function(kd,rp){let dm=kd.length,Wd=rp==null?void 0:rp.values;if((Wd==null?void 0:Wd.length)>0)for(let Cd=0;Cd<Wd.length;Cd+=2){let _p=Wd[Cd+1];kd.emplaceBack(i.aq[Wd[Cd]],_p[0],_p[1])}return[dm,kd.length]}(uo.textAnchorOffsets,SS);uo.symbolInstances.emplaceBack($o.x,$o.y,p0.right>=0?p0.right:-1,p0.center>=0?p0.center:-1,p0.left>=0?p0.left:-1,p0.vertical||-1,AS,Gw,dy,oO,Hw,g0,cv,ZC,sO,YC,lO,Hd,uv,I1,tp,gg,jw,0,kh,yp,uO,cO)}(R,Ro,Xn,F,W,re,fo,R.layers[0],R.collisionBoxArray,A.index,A.sourceLayerIndex,R.index,ui,[un,un,un,un],ro,Ke,vn,Tn,Vo,mr,A,fe,ct,Lt,pe)};if(Xa==="line")for(let Xn of FC(A.geometry,0,0,ja,ja)){let Ro=eO(Xn,zi,pa,F.vertical||Pr,W,24,yi,R.overscaling,ja);for(let uo of Ro)Pr&&nO(R,Pr.text,sa,uo)||lo(Xn,uo)}else if(Xa==="line-center"){for(let Xn of A.geometry)if(Xn.length>1){let Ro=Q9(Xn,pa,F.vertical||Pr,W,24,yi);Ro&&lo(Xn,Ro)}}else if(A.type==="Polygon")for(let Xn of Cf(A.geometry,0)){let Ro=tO(Xn,16);lo(Xn[0],new vg(Ro.x,Ro.y,0))}else if(A.type==="LineString")for(let Xn of A.geometry)lo(Xn,new vg(Xn[0].x,Xn[0].y,0));else if(A.type==="Point")for(let Xn of A.geometry)for(let Ro of Xn)lo([Ro],new vg(Ro.x,Ro.y,0))}function GC(R,A,F,W,re,fe,pe,ze,Ke,ct,Lt,$t,fr,mr,Pr){let zr=function(vn,zi,un,Tn,pa,ro,Vo,Xa){let sa=Tn.layout.get("text-rotate").evaluate(ro,{})*Math.PI/180,Mo=[];for(let fo of zi.positionedLines)for(let lo of fo.positionedGlyphs){if(!lo.rect)continue;let Xn=lo.rect||{},Ro=_C+1,uo=!0,$o=1,Ju=0,qu=(pa||Xa)&&lo.vertical,Mh=lo.metrics.advance*lo.scale/2;if(Xa&&zi.verticalizable&&(Ju=fo.lineOffset/2-(lo.imageName?-(eu-lo.metrics.width*lo.scale)/2:(lo.scale-1)*eu)),lo.imageName){let tu=Vo[lo.imageName];uo=tu.sdf,$o=tu.pixelRatio,Ro=Md/$o}let Qv=pa?[lo.x+Mh,lo.y]:[0,0],ld=pa?[0,0]:[lo.x+Mh+un[0],lo.y+un[1]-Ju],Eh=[0,0];qu&&(Eh=ld,ld=[0,0]);let Gd=lo.metrics.isDoubleResolution?2:1,Hd=(lo.metrics.left-Ro)*lo.scale-Mh+ld[0],jd=(-lo.metrics.top-Ro)*lo.scale+ld[1],Af=Hd+Xn.w/Gd*lo.scale/$o,kh=jd+Xn.h/Gd*lo.scale/$o,Ed=new u(Hd,jd),ud=new u(Af,jd),Wh=new u(Hd,kh),Df=new u(Af,kh);if(qu){let tu=new u(-Mh,Mh-Sh),pc=-Math.PI/2,$u=eu/2-Mh,zv=new u(5-Sh-$u,-(lo.imageName?$u:0)),ff=new u(...Eh);Ed._rotateAround(pc,tu)._add(zv)._add(ff),ud._rotateAround(pc,tu)._add(zv)._add(ff),Wh._rotateAround(pc,tu)._add(zv)._add(ff),Df._rotateAround(pc,tu)._add(zv)._add(ff)}if(sa){let tu=Math.sin(sa),pc=Math.cos(sa),$u=[pc,-tu,tu,pc];Ed._matMult($u),ud._matMult($u),Wh._matMult($u),Df._matMult($u)}let Fv=new u(0,0),lv=new u(0,0);Mo.push({tl:Ed,tr:ud,bl:Wh,br:Df,tex:Xn,writingMode:zi.writingMode,glyphOffset:Qv,sectionIndex:lo.sectionIndex,isSDF:uo,pixelOffsetTL:Fv,pixelOffsetBR:lv,minFontScaleX:0,minFontScaleY:0})}return Mo}(0,F,ze,re,fe,pe,W,R.allowVerticalPlacement),ui=R.textSizeData,yi=null;ui.kind==="source"?(yi=[d0*re.layout.get("text-size").evaluate(pe,{})],yi[0]>um&&T(`${R.layerIds[0]}: Value for "text-size" is >= ${Wx}. Reduce your "text-size".`)):ui.kind==="composite"&&(yi=[d0*mr.compositeTextSizes[0].evaluate(pe,{},Pr),d0*mr.compositeTextSizes[1].evaluate(pe,{},Pr)],(yi[0]>um||yi[1]>um)&&T(`${R.layerIds[0]}: Value for "text-size" is >= ${Wx}. Reduce your "text-size".`)),R.addSymbols(R.text,zr,yi,ze,fe,pe,ct,A,Ke.lineStartIndex,Ke.lineLength,fr,Pr);for(let vn of Lt)$t[vn]=R.text.placedSymbolArray.length-1;return 4*zr.length}function HC(R){for(let A in R)return R[A];return null}function nO(R,A,F,W){let re=R.compareText;if(A in re){let fe=re[A];for(let pe=fe.length-1;pe>=0;pe--)if(W.dist(fe[pe])<F)return!0}else re[A]=[];return re[A].push(W),!1}let jC=[Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];class xS{static from(A){if(!(A instanceof ArrayBuffer))throw new Error("Data must be an instance of ArrayBuffer.");let[F,W]=new Uint8Array(A,0,2);if(F!==219)throw new Error("Data does not appear to be in a KDBush format.");let re=W>>4;if(re!==1)throw new Error(`Got v${re} data when expected v1.`);let fe=jC[15&W];if(!fe)throw new Error("Unrecognized array type.");let[pe]=new Uint16Array(A,2,1),[ze]=new Uint32Array(A,4,1);return new xS(ze,pe,fe,A)}constructor(A,F=64,W=Float64Array,re){if(isNaN(A)||A<0)throw new Error(`Unpexpected numItems value: ${A}.`);this.numItems=+A,this.nodeSize=Math.min(Math.max(+F,2),65535),this.ArrayType=W,this.IndexArrayType=A<65536?Uint16Array:Uint32Array;let fe=jC.indexOf(this.ArrayType),pe=2*A*this.ArrayType.BYTES_PER_ELEMENT,ze=A*this.IndexArrayType.BYTES_PER_ELEMENT,Ke=(8-ze%8)%8;if(fe<0)throw new Error(`Unexpected typed array class: ${W}.`);re&&re instanceof ArrayBuffer?(this.data=re,this.ids=new this.IndexArrayType(this.data,8,A),this.coords=new this.ArrayType(this.data,8+ze+Ke,2*A),this._pos=2*A,this._finished=!0):(this.data=new ArrayBuffer(8+pe+ze+Ke),this.ids=new this.IndexArrayType(this.data,8,A),this.coords=new this.ArrayType(this.data,8+ze+Ke,2*A),this._pos=0,this._finished=!1,new Uint8Array(this.data,0,2).set([219,16+fe]),new Uint16Array(this.data,2,1)[0]=F,new Uint32Array(this.data,4,1)[0]=A)}add(A,F){let W=this._pos>>1;return this.ids[W]=W,this.coords[this._pos++]=A,this.coords[this._pos++]=F,W}finish(){let A=this._pos>>1;if(A!==this.numItems)throw new Error(`Added ${A} items when expected ${this.numItems}.`);return Nw(this.ids,this.coords,this.nodeSize,0,this.numItems-1,0),this._finished=!0,this}range(A,F,W,re){if(!this._finished)throw new Error("Data not yet indexed - call index.finish().");let{ids:fe,coords:pe,nodeSize:ze}=this,Ke=[0,fe.length-1,0],ct=[];for(;Ke.length;){let Lt=Ke.pop()||0,$t=Ke.pop()||0,fr=Ke.pop()||0;if($t-fr<=ze){for(let ui=fr;ui<=$t;ui++){let yi=pe[2*ui],vn=pe[2*ui+1];yi>=A&&yi<=W&&vn>=F&&vn<=re&&ct.push(fe[ui])}continue}let mr=fr+$t>>1,Pr=pe[2*mr],zr=pe[2*mr+1];Pr>=A&&Pr<=W&&zr>=F&&zr<=re&&ct.push(fe[mr]),(Lt===0?A<=Pr:F<=zr)&&(Ke.push(fr),Ke.push(mr-1),Ke.push(1-Lt)),(Lt===0?W>=Pr:re>=zr)&&(Ke.push(mr+1),Ke.push($t),Ke.push(1-Lt))}return ct}within(A,F,W){if(!this._finished)throw new Error("Data not yet indexed - call index.finish().");let{ids:re,coords:fe,nodeSize:pe}=this,ze=[0,re.length-1,0],Ke=[],ct=W*W;for(;ze.length;){let Lt=ze.pop()||0,$t=ze.pop()||0,fr=ze.pop()||0;if($t-fr<=pe){for(let ui=fr;ui<=$t;ui++)XC(fe[2*ui],fe[2*ui+1],A,F)<=ct&&Ke.push(re[ui]);continue}let mr=fr+$t>>1,Pr=fe[2*mr],zr=fe[2*mr+1];XC(Pr,zr,A,F)<=ct&&Ke.push(re[mr]),(Lt===0?A-W<=Pr:F-W<=zr)&&(ze.push(fr),ze.push(mr-1),ze.push(1-Lt)),(Lt===0?A+W>=Pr:F+W>=zr)&&(ze.push(mr+1),ze.push($t),ze.push(1-Lt))}return Ke}}function Nw(R,A,F,W,re,fe){if(re-W<=F)return;let pe=W+re>>1;WC(R,A,pe,W,re,fe),Nw(R,A,F,W,pe-1,1-fe),Nw(R,A,F,pe+1,re,1-fe)}function WC(R,A,F,W,re,fe){for(;re>W;){if(re-W>600){let ct=re-W+1,Lt=F-W+1,$t=Math.log(ct),fr=.5*Math.exp(2*$t/3),mr=.5*Math.sqrt($t*fr*(ct-fr)/ct)*(Lt-ct/2<0?-1:1);WC(R,A,F,Math.max(W,Math.floor(F-Lt*fr/ct+mr)),Math.min(re,Math.floor(F+(ct-Lt)*fr/ct+mr)),fe)}let pe=A[2*F+fe],ze=W,Ke=re;for(eb(R,A,W,F),A[2*re+fe]>pe&&eb(R,A,W,re);ze<Ke;){for(eb(R,A,ze,Ke),ze++,Ke--;A[2*ze+fe]<pe;)ze++;for(;A[2*Ke+fe]>pe;)Ke--}A[2*W+fe]===pe?eb(R,A,W,Ke):(Ke++,eb(R,A,Ke,re)),Ke<=F&&(W=Ke+1),F<=Ke&&(re=Ke-1)}}function eb(R,A,F,W){bS(R,F,W),bS(A,2*F,2*W),bS(A,2*F+1,2*W+1)}function bS(R,A,F){let W=R[A];R[A]=R[F],R[F]=W}function XC(R,A,F,W){let re=R-F,fe=A-W;return re*re+fe*fe}var Uw;i.bg=void 0,(Uw=i.bg||(i.bg={})).create="create",Uw.load="load",Uw.fullLoad="fullLoad";let tb=null,sh=[],wS=1e3/60,TS="loadTime",Vw="fullLoadTime",aO={mark(R){performance.mark(R)},frame(R){let A=R;tb!=null&&sh.push(A-tb),tb=A},clearMetrics(){tb=null,sh=[],performance.clearMeasures(TS),performance.clearMeasures(Vw);for(let R in i.bg)performance.clearMarks(i.bg[R])},getPerformanceMetrics(){performance.measure(TS,i.bg.create,i.bg.load),performance.measure(Vw,i.bg.create,i.bg.fullLoad);let R=performance.getEntriesByName(TS)[0].duration,A=performance.getEntriesByName(Vw)[0].duration,F=sh.length,W=1/(sh.reduce((fe,pe)=>fe+pe,0)/F/1e3),re=sh.filter(fe=>fe>wS).reduce((fe,pe)=>fe+(pe-wS)/wS,0);return{loadTime:R,fullLoadTime:A,fps:W,percentDroppedFrames:re/(F+re)*100,totalFrames:F}}};i.$=class extends Yt{},i.A=xi,i.B=dn,i.C=function(R){if(V==null){let A=R.navigator?R.navigator.userAgent:null;V=!!R.safari||!(!A||!(/\b(iPad|iPhone|iPod)\b/.test(A)||A.match("Safari")&&!A.match("Chrome")))}return V},i.D=Ua,i.E=Re,i.F=class{constructor(R,A){this.target=R,this.mapId=A,this.resolveRejects={},this.tasks={},this.taskQueue=[],this.abortControllers={},this.messageHandlers={},this.invoker=new dS(()=>this.process()),this.subscription=function(F,W,re,fe){return F.addEventListener(W,re,!1),{unsubscribe:()=>{F.removeEventListener(W,re,!1)}}}(this.target,"message",F=>this.receive(F)),this.globalScope=O(self)?R:window}registerMessageHandler(R,A){this.messageHandlers[R]=A}sendAsync(R,A){return new Promise((F,W)=>{let re=Math.round(1e18*Math.random()).toString(36).substring(0,10);this.resolveRejects[re]={resolve:F,reject:W},A&&A.signal.addEventListener("abort",()=>{delete this.resolveRejects[re];let ze={id:re,type:"<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:re,sourceMapId:this.mapId,origin:location.origin,data:La(R.data,fe)});this.target.postMessage(pe,{transfer:fe})})}receive(R){let A=R.data,F=A.id;if(!(A.origin!=="file://"&&location.origin!=="file://"&&A.origin!=="resource://android"&&location.origin!=="resource://android"&&A.origin!==location.origin||A.targetMapId&&this.mapId!==A.targetMapId)){if(A.type==="<cancel>"){delete this.tasks[F];let W=this.abortControllers[F];return delete this.abortControllers[F],void(W&&W.abort())}if(O(self)||A.mustQueue)return this.tasks[F]=A,this.taskQueue.push(F),void this.invoker.trigger();this.processTask(F,A)}}process(){if(this.taskQueue.length===0)return;let R=this.taskQueue.shift(),A=this.tasks[R];delete this.tasks[R],this.taskQueue.length>0&&this.invoker.trigger(),A&&this.processTask(R,A)}processTask(R,A){return a(this,void 0,void 0,function*(){if(A.type==="<response>"){let re=this.resolveRejects[R];return delete this.resolveRejects[R],re?void(A.error?re.reject(Na(A.error)):re.resolve(Na(A.data))):void 0}if(!this.messageHandlers[A.type])return void this.completeTask(R,new Error(`Could not find a registered handler for ${A.type}, map ID: ${this.mapId}, available handlers: ${Object.keys(this.messageHandlers).join(", ")}`));let F=Na(A.data),W=new AbortController;this.abortControllers[R]=W;try{let re=yield this.messageHandlers[A.type](A.sourceMapId,F,W);this.completeTask(R,null,re)}catch(re){this.completeTask(R,re)}})}completeTask(R,A,F){let W=[];delete this.abortControllers[R];let re={id:R,type:"<response>",sourceMapId:this.mapId,origin:location.origin,error:A?La(A):null,data:La(F,W)};this.target.postMessage(re,{transfer:W})}remove(){this.invoker.remove(),this.subscription.unsubscribe()}},i.G=Ce,i.H=function(){var R=new xi(16);return xi!=Float32Array&&(R[1]=0,R[2]=0,R[3]=0,R[4]=0,R[6]=0,R[7]=0,R[8]=0,R[9]=0,R[11]=0,R[12]=0,R[13]=0,R[14]=0),R[0]=1,R[5]=1,R[10]=1,R[15]=1,R},i.I=Lw,i.J=function(R,A,F){var W,re,fe,pe,ze,Ke,ct,Lt,$t,fr,mr,Pr,zr=F[0],ui=F[1],yi=F[2];return A===R?(R[12]=A[0]*zr+A[4]*ui+A[8]*yi+A[12],R[13]=A[1]*zr+A[5]*ui+A[9]*yi+A[13],R[14]=A[2]*zr+A[6]*ui+A[10]*yi+A[14],R[15]=A[3]*zr+A[7]*ui+A[11]*yi+A[15]):(re=A[1],fe=A[2],pe=A[3],ze=A[4],Ke=A[5],ct=A[6],Lt=A[7],$t=A[8],fr=A[9],mr=A[10],Pr=A[11],R[0]=W=A[0],R[1]=re,R[2]=fe,R[3]=pe,R[4]=ze,R[5]=Ke,R[6]=ct,R[7]=Lt,R[8]=$t,R[9]=fr,R[10]=mr,R[11]=Pr,R[12]=W*zr+ze*ui+$t*yi+A[12],R[13]=re*zr+Ke*ui+fr*yi+A[13],R[14]=fe*zr+ct*ui+mr*yi+A[14],R[15]=pe*zr+Lt*ui+Pr*yi+A[15]),R},i.K=function(R,A,F){var W=F[0],re=F[1],fe=F[2];return R[0]=A[0]*W,R[1]=A[1]*W,R[2]=A[2]*W,R[3]=A[3]*W,R[4]=A[4]*re,R[5]=A[5]*re,R[6]=A[6]*re,R[7]=A[7]*re,R[8]=A[8]*fe,R[9]=A[9]*fe,R[10]=A[10]*fe,R[11]=A[11]*fe,R[12]=A[12],R[13]=A[13],R[14]=A[14],R[15]=A[15],R},i.L=ci,i.M=function(R,A){let F={};for(let W=0;W<A.length;W++){let re=A[W];re in R&&(F[re]=R[re])}return F},i.N=dg,i.O=Ow,i.P=u,i.Q=CC,i.R=Ki,i.S=$v,i.T=Yu,i.U=_,i.V=b,i.W=j,i.X=ja,i.Y=qe,i.Z=$x,i._=a,i.a=_e,i.a$=function(R,A){var F=R[0],W=R[1],re=R[2],fe=R[3],pe=R[4],ze=R[5],Ke=R[6],ct=R[7],Lt=R[8],$t=R[9],fr=R[10],mr=R[11],Pr=R[12],zr=R[13],ui=R[14],yi=R[15],vn=A[0],zi=A[1],un=A[2],Tn=A[3],pa=A[4],ro=A[5],Vo=A[6],Xa=A[7],sa=A[8],Mo=A[9],fo=A[10],lo=A[11],Xn=A[12],Ro=A[13],uo=A[14],$o=A[15];return Math.abs(F-vn)<=Yr*Math.max(1,Math.abs(F),Math.abs(vn))&&Math.abs(W-zi)<=Yr*Math.max(1,Math.abs(W),Math.abs(zi))&&Math.abs(re-un)<=Yr*Math.max(1,Math.abs(re),Math.abs(un))&&Math.abs(fe-Tn)<=Yr*Math.max(1,Math.abs(fe),Math.abs(Tn))&&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(ct-Xa)<=Yr*Math.max(1,Math.abs(ct),Math.abs(Xa))&&Math.abs(Lt-sa)<=Yr*Math.max(1,Math.abs(Lt),Math.abs(sa))&&Math.abs($t-Mo)<=Yr*Math.max(1,Math.abs($t),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(Pr-Xn)<=Yr*Math.max(1,Math.abs(Pr),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=pS,i.a2=cr,i.a3=R=>{let A=window.document.createElement("video");return A.muted=!0,new Promise(F=>{A.onloadstart=()=>{F(A)};for(let W of R){let re=window.document.createElement("source");Le(W)||(A.crossOrigin="Anonymous"),re.src=W,A.appendChild(re)}})},i.a4=function(){return x++},i.a5=Cn,i.a6=M1,i.a7=Fc,i.a8=Sl,i.a9=gS,i.aA=function(R){if(R.type==="custom")return new hS(R);switch(R.type){case"background":return new J9(R);case"circle":return new hi(R);case"fill":return new yt(R);case"fill-extrusion":return new Lv(R);case"heatmap":return new oa(R);case"hillshade":return new Zs(R);case"line":return new oy(R);case"raster":return new Kx(R);case"symbol":return new cy(R)}},i.aB=g,i.aC=function(R,A){if(!R)return[{command:"setStyle",args:[A]}];let F=[];try{if(!pt(R.version,A.version))return[{command:"setStyle",args:[A]}];pt(R.center,A.center)||F.push({command:"setCenter",args:[A.center]}),pt(R.zoom,A.zoom)||F.push({command:"setZoom",args:[A.zoom]}),pt(R.bearing,A.bearing)||F.push({command:"setBearing",args:[A.bearing]}),pt(R.pitch,A.pitch)||F.push({command:"setPitch",args:[A.pitch]}),pt(R.sprite,A.sprite)||F.push({command:"setSprite",args:[A.sprite]}),pt(R.glyphs,A.glyphs)||F.push({command:"setGlyphs",args:[A.glyphs]}),pt(R.transition,A.transition)||F.push({command:"setTransition",args:[A.transition]}),pt(R.light,A.light)||F.push({command:"setLight",args:[A.light]}),pt(R.terrain,A.terrain)||F.push({command:"setTerrain",args:[A.terrain]}),pt(R.sky,A.sky)||F.push({command:"setSky",args:[A.sky]}),pt(R.projection,A.projection)||F.push({command:"setProjection",args:[A.projection]});let W={},re=[];(function(pe,ze,Ke,ct){let Lt;for(Lt in ze=ze||{},pe=pe||{})Object.prototype.hasOwnProperty.call(pe,Lt)&&(Object.prototype.hasOwnProperty.call(ze,Lt)||lt(Lt,Ke,ct));for(Lt in ze)Object.prototype.hasOwnProperty.call(ze,Lt)&&(Object.prototype.hasOwnProperty.call(pe,Lt)?pt(pe[Lt],ze[Lt])||(pe[Lt].type==="geojson"&&ze[Lt].type==="geojson"&&Nt(pe,ze,Lt)?Zt(Ke,{command:"setGeoJSONSourceData",args:[Lt,ze[Lt].data]}):Gt(Lt,ze,Ke,ct)):st(Lt,ze,Ke))})(R.sources,A.sources,re,W);let fe=[];R.layers&&R.layers.forEach(pe=>{"source"in pe&&W[pe.source]?F.push({command:"removeLayer",args:[pe.id]}):fe.push(pe)}),F=F.concat(re),function(pe,ze,Ke){ze=ze||[];let ct=(pe=pe||[]).map(sr),Lt=ze.map(sr),$t=pe.reduce(wr,{}),fr=ze.reduce(wr,{}),mr=ct.slice(),Pr=Object.create(null),zr,ui,yi,vn,zi;for(let un=0,Tn=0;un<ct.length;un++)zr=ct[un],Object.prototype.hasOwnProperty.call(fr,zr)?Tn++:(Zt(Ke,{command:"removeLayer",args:[zr]}),mr.splice(mr.indexOf(zr,Tn),1));for(let un=0,Tn=0;un<Lt.length;un++)zr=Lt[Lt.length-1-un],mr[mr.length-1-un]!==zr&&(Object.prototype.hasOwnProperty.call($t,zr)?(Zt(Ke,{command:"removeLayer",args:[zr]}),mr.splice(mr.lastIndexOf(zr,mr.length-Tn),1)):Tn++,vn=mr[mr.length-un],Zt(Ke,{command:"addLayer",args:[fr[zr],vn]}),mr.splice(mr.length-un,0,zr),Pr[zr]=!0);for(let un=0;un<Lt.length;un++)if(zr=Lt[un],ui=$t[zr],yi=fr[zr],!Pr[zr]&&!pt(ui,yi))if(pt(ui.source,yi.source)&&pt(ui["source-layer"],yi["source-layer"])&&pt(ui.type,yi.type)){for(zi in Jt(ui.layout,yi.layout,Ke,zr,null,"setLayoutProperty"),Jt(ui.paint,yi.paint,Ke,zr,null,"setPaintProperty"),pt(ui.filter,yi.filter)||Zt(Ke,{command:"setFilter",args:[zr,yi.filter]}),pt(ui.minzoom,yi.minzoom)&&pt(ui.maxzoom,yi.maxzoom)||Zt(Ke,{command:"setLayerZoomRange",args:[zr,yi.minzoom,yi.maxzoom]}),ui)Object.prototype.hasOwnProperty.call(ui,zi)&&zi!=="layout"&&zi!=="paint"&&zi!=="filter"&&zi!=="metadata"&&zi!=="minzoom"&&zi!=="maxzoom"&&(zi.indexOf("paint.")===0?Jt(ui[zi],yi[zi],Ke,zr,zi.slice(6),"setPaintProperty"):pt(ui[zi],yi[zi])||Zt(Ke,{command:"setLayerProperty",args:[zr,zi,yi[zi]]}));for(zi in yi)Object.prototype.hasOwnProperty.call(yi,zi)&&!Object.prototype.hasOwnProperty.call(ui,zi)&&zi!=="layout"&&zi!=="paint"&&zi!=="filter"&&zi!=="metadata"&&zi!=="minzoom"&&zi!=="maxzoom"&&(zi.indexOf("paint.")===0?Jt(ui[zi],yi[zi],Ke,zr,zi.slice(6),"setPaintProperty"):pt(ui[zi],yi[zi])||Zt(Ke,{command:"setLayerProperty",args:[zr,zi,yi[zi]]}))}else Zt(Ke,{command:"removeLayer",args:[zr]}),vn=mr[mr.lastIndexOf(zr)+1],Zt(Ke,{command:"addLayer",args:[yi,vn]})}(fe,A.layers,F)}catch(W){console.warn("Unable to compute style diff:",W),F=[{command:"setStyle",args:[A]}]}return F},i.aD=function(R){let A=[],F=R.id;return F===void 0&&A.push({message:`layers.${F}: missing required property "id"`}),R.render===void 0&&A.push({message:`layers.${F}: missing required method "render"`}),R.renderingMode&&R.renderingMode!=="2d"&&R.renderingMode!=="3d"&&A.push({message:`layers.${F}: property "renderingMode" must be either "2d" or "3d"`}),A},i.aE=function R(A,F){if(Array.isArray(A)){if(!Array.isArray(F)||A.length!==F.length)return!1;for(let W=0;W<A.length;W++)if(!R(A[W],F[W]))return!1;return!0}if(typeof A=="object"&&A!==null&&F!==null){if(typeof F!="object"||Object.keys(A).length!==Object.keys(F).length)return!1;for(let W in A)if(!R(A[W],F[W]))return!1;return!0}return A===F},i.aF=C,i.aG=M,i.aH=class extends Si{constructor(R,A){super(R,A),this.current=0}set(R){this.current!==R&&(this.current=R,this.gl.uniform1i(this.location,R))}},i.aI=ei,i.aJ=class extends Si{constructor(R,A){super(R,A),this.current=Un}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 A=1;A<16;A++)if(R[A]!==this.current[A]){this.current=R,this.gl.uniformMatrix4fv(this.location,!1,R);break}}},i.aK=Ln,i.aL=En,i.aM=nr,i.aN=class extends Si{constructor(R,A){super(R,A),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 Si{constructor(R,A){super(R,A),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,A,F,W,re,fe,pe){var ze=1/(A-F),Ke=1/(W-re),ct=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*ct,R[11]=0,R[12]=(A+F)*ze,R[13]=(re+W)*Ke,R[14]=(pe+fe)*ct,R[15]=1,R},i.aQ=Zi,i.aR=class extends it{},i.aS=nm,i.aT=class extends Ht{},i.aU=ta,i.aV=function(R){return R<=1?1:Math.pow(2,Math.ceil(Math.log(R)/Math.LN2))},i.aW=kn,i.aX=wo,i.aY=se,i.aZ=class extends Pi{},i.a_=function(R,A){return R[0]===A[0]&&R[1]===A[1]&&R[2]===A[2]&&R[3]===A[3]&&R[4]===A[4]&&R[5]===A[5]&&R[6]===A[6]&&R[7]===A[7]&&R[8]===A[8]&&R[9]===A[9]&&R[10]===A[10]&&R[11]===A[11]&&R[12]===A[12]&&R[13]===A[13]&&R[14]===A[14]&&R[15]===A[15]},i.aa=function(R){let A={};if(R.replace(/(?:^|(?:\s*\,\s*))([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)(?:\=(?:([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)|(?:\"((?:[^"\\]|\\.)*)\")))?/g,(F,W,re,fe)=>{let pe=re||fe;return A[W]=!pe||pe.toLowerCase(),""}),A["max-age"]){let F=parseInt(A["max-age"],10);isNaN(F)?delete A["max-age"]:A["max-age"]=F}return A},i.ab=function(R,A){let F=[];for(let W in R)W in A||F.push(W);return F},i.ac=E,i.ad=function(R,A,F){var W=Math.sin(F),re=Math.cos(F),fe=A[0],pe=A[1],ze=A[2],Ke=A[3],ct=A[4],Lt=A[5],$t=A[6],fr=A[7];return A!==R&&(R[8]=A[8],R[9]=A[9],R[10]=A[10],R[11]=A[11],R[12]=A[12],R[13]=A[13],R[14]=A[14],R[15]=A[15]),R[0]=fe*re+ct*W,R[1]=pe*re+Lt*W,R[2]=ze*re+$t*W,R[3]=Ke*re+fr*W,R[4]=ct*re-fe*W,R[5]=Lt*re-pe*W,R[6]=$t*re-ze*W,R[7]=fr*re-Ke*W,R},i.ae=function(R){var A=new xi(16);return A[0]=R[0],A[1]=R[1],A[2]=R[2],A[3]=R[3],A[4]=R[4],A[5]=R[5],A[6]=R[6],A[7]=R[7],A[8]=R[8],A[9]=R[9],A[10]=R[10],A[11]=R[11],A[12]=R[12],A[13]=R[13],A[14]=R[14],A[15]=R[15],A},i.af=Bn,i.ag=function(R,A){let F=0,W=0;if(R.kind==="constant")W=R.layoutSize;else if(R.kind!=="source"){let{interpolationType:re,minZoom:fe,maxZoom:pe}=R,ze=re?E(ko.interpolationFactor(re,A,fe,pe),0,1):0;R.kind==="camera"?W=Lo.number(R.minSize,R.maxSize,ze):F=ze}return{uSizeT:F,uSize:W}},i.ai=function(R,{uSize:A,uSizeT:F},{lowerSize:W,upperSize:re}){return R.kind==="source"?W/d0:R.kind==="composite"?Lo.number(W/d0,re/d0,F):A},i.aj=lS,i.ak=function(R,A,F,W){let re=A.y-R.y,fe=A.x-R.x,pe=W.y-F.y,ze=W.x-F.x,Ke=pe*fe-ze*re;if(Ke===0)return null;let ct=(ze*(R.y-F.y)-pe*(R.x-F.x))/Ke;return new u(R.x+ct*fe,R.y+ct*re)},i.al=FC,i.am=Sc,i.an=Ri,i.ao=function(R){let A=1/0,F=1/0,W=-1/0,re=-1/0;for(let fe of R)A=Math.min(A,fe.x),F=Math.min(F,fe.y),W=Math.max(W,fe.x),re=Math.max(re,fe.y);return[A,F,W,re]},i.ap=eu,i.ar=sS,i.as=function(R,A){var F=A[0],W=A[1],re=A[2],fe=A[3],pe=A[4],ze=A[5],Ke=A[6],ct=A[7],Lt=A[8],$t=A[9],fr=A[10],mr=A[11],Pr=A[12],zr=A[13],ui=A[14],yi=A[15],vn=F*ze-W*pe,zi=F*Ke-re*pe,un=F*ct-fe*pe,Tn=W*Ke-re*ze,pa=W*ct-fe*ze,ro=re*ct-fe*Ke,Vo=Lt*zr-$t*Pr,Xa=Lt*ui-fr*Pr,sa=Lt*yi-mr*Pr,Mo=$t*ui-fr*zr,fo=$t*yi-mr*zr,lo=fr*yi-mr*ui,Xn=vn*lo-zi*fo+un*Mo+Tn*sa-pa*Xa+ro*Vo;return Xn?(R[0]=(ze*lo-Ke*fo+ct*Mo)*(Xn=1/Xn),R[1]=(re*fo-W*lo-fe*Mo)*Xn,R[2]=(zr*ro-ui*pa+yi*Tn)*Xn,R[3]=(fr*pa-$t*ro-mr*Tn)*Xn,R[4]=(Ke*sa-pe*lo-ct*Xa)*Xn,R[5]=(F*lo-re*sa+fe*Xa)*Xn,R[6]=(ui*un-Pr*ro-yi*zi)*Xn,R[7]=(Lt*ro-fr*un+mr*zi)*Xn,R[8]=(pe*fo-ze*sa+ct*Vo)*Xn,R[9]=(W*sa-F*fo-fe*Vo)*Xn,R[10]=(Pr*pa-zr*un+yi*vn)*Xn,R[11]=($t*un-Lt*pa-mr*vn)*Xn,R[12]=(ze*Xa-pe*Mo-Ke*Vo)*Xn,R[13]=(F*Mo-W*Xa+re*Vo)*Xn,R[14]=(zr*zi-Pr*Tn-ui*vn)*Xn,R[15]=(Lt*Tn-$t*zi+fr*vn)*Xn,R):null},i.at=_S,i.au=Dw,i.av=xS,i.aw=function(){let R={},A=ce.$version;for(let F in ce.$root){let W=ce.$root[F];if(W.required){let re=null;re=F==="version"?A:W.type==="array"?[]:{},re!=null&&(R[F]=re)}}return R},i.ax=Yn,i.ay=ie,i.az=function(R){R=R.slice();let A=Object.create(null);for(let F=0;F<R.length;F++)A[R[F].id]=R[F];for(let F=0;F<R.length;F++)"ref"in R[F]&&(R[F]=ut(R[F],A[R[F].ref]));return R},i.b=G,i.b0=function(R,A){return R[0]=A[0],R[1]=A[1],R[2]=A[2],R[3]=A[3],R[4]=A[4],R[5]=A[5],R[6]=A[6],R[7]=A[7],R[8]=A[8],R[9]=A[9],R[10]=A[10],R[11]=A[11],R[12]=A[12],R[13]=A[13],R[14]=A[14],R[15]=A[15],R},i.b1=function(R,A,F){return R[0]=A[0]*F[0],R[1]=A[1]*F[1],R[2]=A[2]*F[2],R[3]=A[3]*F[3],R},i.b2=function(R,A){return R[0]*A[0]+R[1]*A[1]+R[2]*A[2]+R[3]*A[3]},i.b3=S,i.b4=LC,i.b5=qw,i.b6=function(R,A,F,W,re){var fe,pe=1/Math.tan(A/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,re!=null&&re!==1/0?(R[10]=(re+W)*(fe=1/(W-re)),R[14]=2*re*W*fe):(R[10]=-1,R[14]=-2*W),R},i.b7=function(R,A,F){var W=Math.sin(F),re=Math.cos(F),fe=A[4],pe=A[5],ze=A[6],Ke=A[7],ct=A[8],Lt=A[9],$t=A[10],fr=A[11];return A!==R&&(R[0]=A[0],R[1]=A[1],R[2]=A[2],R[3]=A[3],R[12]=A[12],R[13]=A[13],R[14]=A[14],R[15]=A[15]),R[4]=fe*re+ct*W,R[5]=pe*re+Lt*W,R[6]=ze*re+$t*W,R[7]=Ke*re+fr*W,R[8]=ct*re-fe*W,R[9]=Lt*re-pe*W,R[10]=$t*re-ze*W,R[11]=fr*re-Ke*W,R},i.b8=p,i.b9=k,i.bA=Sd,i.bB=function(R){return R.message===te},i.bC=ks,i.bD=ys,i.ba=function(R){return R*Math.PI/180},i.bb=function(R,A){let{x:F,y:W}=$x.fromLngLat(A);return!(R<0||R>25||W<0||W>=1||F<0||F>=1)},i.bc=function(R,A){return R[0]=A[0],R[1]=0,R[2]=0,R[3]=0,R[4]=0,R[5]=A[1],R[6]=0,R[7]=0,R[8]=0,R[9]=0,R[10]=A[2],R[11]=0,R[12]=0,R[13]=0,R[14]=0,R[15]=1,R},i.bd=class extends Tt{},i.be=vS,i.bf=aO,i.bh=me,i.bi=function(R,A){_e.REGISTERED_PROTOCOLS[R]=A},i.bj=function(R){delete _e.REGISTERED_PROTOCOLS[R]},i.bk=function(R,A){let F={};for(let re=0;re<R.length;re++){let fe=A&&A[R[re].id]||Hh(R[re]);A&&(A[R[re].id]=fe);let pe=F[fe];pe||(pe=F[fe]=[]),pe.push(R[re])}let W=[];for(let re in F)W.push(F[re]);return W},i.bl=Fi,i.bm=IC,i.bn=fy,i.bo=Pw,i.bp=function(R){R.bucket.createArrays(),R.bucket.tilePixelRatio=ja/(512*R.bucket.overscaling),R.bucket.compareText={},R.bucket.iconsNeedLinear=!1;let A=R.bucket.layers[0],F=A.layout,W=A._unevaluatedLayout._values,re={layoutIconSize:W["icon-size"].possiblyEvaluate(new rs(R.bucket.zoom+1),R.canonical),layoutTextSize:W["text-size"].possiblyEvaluate(new rs(R.bucket.zoom+1),R.canonical),textMaxSize:W["text-size"].possiblyEvaluate(new rs(18))};if(R.bucket.textSizeData.kind==="composite"){let{minZoom:ct,maxZoom:Lt}=R.bucket.textSizeData;re.compositeTextSizes=[W["text-size"].possiblyEvaluate(new rs(ct),R.canonical),W["text-size"].possiblyEvaluate(new rs(Lt),R.canonical)]}if(R.bucket.iconSizeData.kind==="composite"){let{minZoom:ct,maxZoom:Lt}=R.bucket.iconSizeData;re.compositeIconSizes=[W["icon-size"].possiblyEvaluate(new rs(ct),R.canonical),W["icon-size"].possiblyEvaluate(new rs(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 ct of R.bucket.features){let Lt=F.get("text-font").evaluate(ct,{},R.canonical).join(","),$t=Ke.evaluate(ct,{},R.canonical),fr=re.layoutTextSize.evaluate(ct,{},R.canonical),mr=re.layoutIconSize.evaluate(ct,{},R.canonical),Pr={horizontal:{},vertical:void 0},zr=ct.text,ui,yi=[0,0];if(zr){let un=zr.toString(),Tn=F.get("text-letter-spacing").evaluate(ct,{},R.canonical)*eu,pa=bo(un)?Tn:0,ro=F.get("text-anchor").evaluate(ct,{},R.canonical),Vo=VC(A,ct,R.canonical);if(!Vo){let fo=F.get("text-radial-offset").evaluate(ct,{},R.canonical);yi=fo?yS(ro,[fo*eu,hy]):F.get("text-offset").evaluate(ct,{},R.canonical).map(lo=>lo*eu)}let Xa=pe?"center":F.get("text-justify").evaluate(ct,{},R.canonical),sa=F.get("symbol-placement")==="point"?F.get("text-max-width").evaluate(ct,{},R.canonical)*eu:1/0,Mo=()=>{R.bucket.allowVerticalPlacement&&Ka(un)&&(Pr.vertical=Hx(zr,R.glyphMap,R.glyphPositions,R.imagePositions,Lt,sa,fe,ro,"left",pa,yi,i.ah.vertical,!0,fr,$t))};if(!pe&&Vo){let fo=new Set;if(Xa==="auto")for(let Xn=0;Xn<Vo.values.length;Xn+=2)fo.add(_S(Vo.values[Xn]));else fo.add(Xa);let lo=!1;for(let Xn of fo)if(!Pr.horizontal[Xn])if(lo)Pr.horizontal[Xn]=Pr.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,$t);Ro&&(Pr.horizontal[Xn]=Ro,lo=Ro.positionedLines.length===1)}Mo()}else{Xa==="auto"&&(Xa=_S(ro));let fo=Hx(zr,R.glyphMap,R.glyphPositions,R.imagePositions,Lt,sa,fe,ro,Xa,pa,yi,i.ah.horizontal,!1,fr,$t);fo&&(Pr.horizontal[Xa]=fo),Mo(),Ka(un)&&pe&&ze&&(Pr.vertical=Hx(zr,R.glyphMap,R.glyphPositions,R.imagePositions,Lt,sa,fe,ro,Xa,pa,yi,i.ah.vertical,!1,fr,$t))}}let vn=!1;if(ct.icon&&ct.icon.name){let un=R.imageMap[ct.icon.name];un&&(ui=jx(R.imagePositions[ct.icon.name],F.get("icon-offset").evaluate(ct,{},R.canonical),F.get("icon-anchor").evaluate(ct,{},R.canonical)),vn=!!un.sdf,R.bucket.sdfIcons===void 0?R.bucket.sdfIcons=vn:R.bucket.sdfIcons!==vn&&T("Style sheet warning: Cannot mix SDF and non-SDF icons in one buffer"),(un.pixelRatio!==R.bucket.pixelRatio||F.get("icon-rotate").constantOr(1)!==0)&&(R.bucket.iconsNeedLinear=!0))}let zi=HC(Pr.horizontal)||Pr.vertical;R.bucket.iconsInText=!!zi&&zi.iconsInText,(zi||ui)&&iO(R.bucket,ct,Pr,ui,R.imageMap,re,fr,mr,yi,vn,R.canonical)}R.showCollisionBoxes&&R.bucket.generateCollisionDebugBuffers()},i.bq=Jv,i.br=Ot,i.bs=so,i.bt=br,i.bu=nS,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,A,F,W,re){return a(this,void 0,void 0,function*(){if(b())try{return yield j(R,A,F,W,re)}catch(fe){}return function(fe,pe,ze,Ke,ct){let Lt=fe.width,$t=fe.height;N&&H||(N=new OffscreenCanvas(Lt,$t),H=N.getContext("2d",{willReadFrequently:!0})),N.width=Lt,N.height=$t,H.drawImage(fe,0,0,Lt,$t);let fr=H.getImageData(pe,ze,Ke,ct);return H.clearRect(0,0,Lt,$t),fr.data}(R,A,F,W,re)})},i.bx=PC,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 A=new Blob([new Uint8Array(R)],{type:"image/png"});try{return createImageBitmap(A)}catch(F){throw new Error(`Could not load image because of ${F.message}. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported.`)}}),i.e=L,i.f=R=>new Promise((A,F)=>{let W=new Image;W.onload=()=>{A(W),URL.revokeObjectURL(W.src),W.onload=null,window.requestAnimationFrame(()=>{W.src=Z})},W.onerror=()=>F(new Error("Could not load image. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."));let re=new Blob([new Uint8Array(R)],{type:"image/png"});W.src=R.byteLength?URL.createObjectURL(re):Z}),i.g=Ee,i.h=(R,A)=>Se(L(R,{type:"json"}),A),i.i=O,i.j=ge,i.k=Pe,i.l=(R,A)=>Se(L(R,{type:"arrayBuffer"}),A),i.m=Se,i.n=function(R){return new nS(R).readFields(PQ,[])},i.o=na,i.p=oS,i.q=ue,i.r=Xi,i.s=Le,i.t=Yi,i.u=ki,i.v=ce,i.w=T,i.x=function([R,A,F]){return A+=90,A*=Math.PI/180,F*=Math.PI/180,{x:R*Math.cos(A)*Math.sin(F),y:R*Math.sin(A)*Math.sin(F),z:R*Math.cos(F)}},i.y=Lo,i.z=rs}),r("worker",["./shared"],function(i){"use strict";class a{constructor(Ge){this.keyCache={},Ge&&this.replace(Ge)}replace(Ge){this._layerConfigs={},this._layers={},this.update(Ge,[])}update(Ge,Je){for(let tt of Ge){this._layerConfigs[tt.id]=tt;let xt=this._layers[tt.id]=i.aA(tt);xt._featureFilter=i.a7(xt.filter),this.keyCache[tt.id]&&delete this.keyCache[tt.id]}for(let tt of Je)delete this.keyCache[tt],delete this._layerConfigs[tt],delete this._layers[tt];this.familiesBySource={};let je=i.bk(Object.values(this._layerConfigs),this.keyCache);for(let tt of je){let xt=tt.map(ar=>this._layers[ar.id]),Ie=xt[0];if(Ie.visibility==="none")continue;let xe=Ie.source||"",ke=this.familiesBySource[xe];ke||(ke=this.familiesBySource[xe]={});let vt=Ie.sourceLayer||"_geojsonTileLayer",ir=ke[vt];ir||(ir=ke[vt]=[]),ir.push(xt)}}}class o{constructor(Ge){let Je={},je=[];for(let xe in Ge){let ke=Ge[xe],vt=Je[xe]={};for(let ir in ke){let ar=ke[+ir];if(!ar||ar.bitmap.width===0||ar.bitmap.height===0)continue;let vr={x:0,y:0,w:ar.bitmap.width+2,h:ar.bitmap.height+2};je.push(vr),vt[ir]={rect:vr,metrics:ar.metrics}}}let{w:tt,h:xt}=i.p(je),Ie=new i.o({width:tt||1,height:xt||1});for(let xe in Ge){let ke=Ge[xe];for(let vt in ke){let ir=ke[+vt];if(!ir||ir.bitmap.width===0||ir.bitmap.height===0)continue;let ar=Je[xe][vt].rect;i.o.copy(ir.bitmap,Ie,{x:0,y:0},{x:ar.x+1,y:ar.y+1},ir.bitmap)}}this.image=Ie,this.positions=Je}}i.bl("GlyphAtlas",o);class s{constructor(Ge){this.tileID=new i.S(Ge.tileID.overscaledZ,Ge.tileID.wrap,Ge.tileID.canonical.z,Ge.tileID.canonical.x,Ge.tileID.canonical.y),this.uid=Ge.uid,this.zoom=Ge.zoom,this.pixelRatio=Ge.pixelRatio,this.tileSize=Ge.tileSize,this.source=Ge.source,this.overscaling=this.tileID.overscaleFactor(),this.showCollisionBoxes=Ge.showCollisionBoxes,this.collectResourceTiming=!!Ge.collectResourceTiming,this.returnDependencies=!!Ge.returnDependencies,this.promoteId=Ge.promoteId,this.inFlightDependencies=[]}parse(Ge,Je,je,tt){return i._(this,void 0,void 0,function*(){this.status="parsing",this.data=Ge,this.collisionBoxArray=new i.a5;let xt=new i.bm(Object.keys(Ge.layers).sort()),Ie=new i.bn(this.tileID,this.promoteId);Ie.bucketLayerIDs=[];let xe={},ke={featureIndex:Ie,iconDependencies:{},patternDependencies:{},glyphDependencies:{},availableImages:je},vt=Je.familiesBySource[this.source];for(let qn in vt){let Fn=Ge.layers[qn];if(!Fn)continue;Fn.version===1&&i.w(`Vector tile source "${this.source}" layer "${qn}" does not use vector tile spec v2 and therefore may have some rendering errors.`);let ra=xt.encode(qn),la=[];for(let Ut=0;Ut<Fn.length;Ut++){let wt=Fn.feature(Ut),rr=Ie.getId(wt,qn);la.push({feature:wt,id:rr,index:Ut,sourceLayerIndex:ra})}for(let Ut of vt[qn]){let wt=Ut[0];wt.source!==this.source&&i.w(`layer.source = ${wt.source} does not equal this.source = ${this.source}`),wt.minzoom&&this.zoom<Math.floor(wt.minzoom)||wt.maxzoom&&this.zoom>=wt.maxzoom||wt.visibility!=="none"&&(l(Ut,this.zoom,je),(xe[wt.id]=wt.createBucket({index:Ie.bucketLayerIDs.length,layers:Ut,zoom:this.zoom,pixelRatio:this.pixelRatio,overscaling:this.overscaling,collisionBoxArray:this.collisionBoxArray,sourceLayerIndex:ra,sourceID:this.source})).populate(la,ke,this.tileID.canonical),Ie.bucketLayerIDs.push(Ut.map(rr=>rr.id)))}}let ir=i.aF(ke.glyphDependencies,qn=>Object.keys(qn).map(Number));this.inFlightDependencies.forEach(qn=>qn==null?void 0:qn.abort()),this.inFlightDependencies=[];let ar=Promise.resolve({});if(Object.keys(ir).length){let qn=new AbortController;this.inFlightDependencies.push(qn),ar=tt.sendAsync({type:"GG",data:{stacks:ir,source:this.source,tileID:this.tileID,type:"glyphs"}},qn)}let vr=Object.keys(ke.iconDependencies),ii=Promise.resolve({});if(vr.length){let qn=new AbortController;this.inFlightDependencies.push(qn),ii=tt.sendAsync({type:"GI",data:{icons:vr,source:this.source,tileID:this.tileID,type:"icons"}},qn)}let pi=Object.keys(ke.patternDependencies),$r=Promise.resolve({});if(pi.length){let qn=new AbortController;this.inFlightDependencies.push(qn),$r=tt.sendAsync({type:"GI",data:{icons:pi,source:this.source,tileID:this.tileID,type:"patterns"}},qn)}let[di,ji,In]=yield Promise.all([ar,ii,$r]),wi=new o(di),On=new i.bo(ji,In);for(let qn in xe){let Fn=xe[qn];Fn instanceof i.a6?(l(Fn.layers,this.zoom,je),i.bp({bucket:Fn,glyphMap:di,glyphPositions:wi.positions,imageMap:ji,imagePositions:On.iconPositions,showCollisionBoxes:this.showCollisionBoxes,canonical:this.tileID.canonical})):Fn.hasPattern&&(Fn instanceof i.bq||Fn instanceof i.br||Fn instanceof i.bs)&&(l(Fn.layers,this.zoom,je),Fn.addFeatures(ke,this.tileID.canonical,On.patternPositions))}return this.status="done",{buckets:Object.values(xe).filter(qn=>!qn.isEmpty()),featureIndex:Ie,collisionBoxArray:this.collisionBoxArray,glyphAtlasImage:wi.image,imageAtlas:On,glyphMap:this.returnDependencies?di:null,iconMap:this.returnDependencies?ji:null,glyphPositions:this.returnDependencies?wi.positions:null}})}}function l(dt,Ge,Je){let je=new i.z(Ge);for(let tt of dt)tt.recalculate(je,Je)}class u{constructor(Ge,Je,je){this.actor=Ge,this.layerIndex=Je,this.availableImages=je,this.fetching={},this.loading={},this.loaded={}}loadVectorTile(Ge,Je){return i._(this,void 0,void 0,function*(){let je=yield i.l(Ge.request,Je);try{return{vectorTile:new i.bt.VectorTile(new i.bu(je.data)),rawData:je.data,cacheControl:je.cacheControl,expires:je.expires}}catch(tt){let xt=new Uint8Array(je.data),Ie=`Unable to parse the tile at ${Ge.request.url}, `;throw Ie+=xt[0]===31&&xt[1]===139?"please make sure the data is not gzipped and that you have configured the relevant header in the server":`got error: ${tt.message}`,new Error(Ie)}})}loadTile(Ge){return i._(this,void 0,void 0,function*(){let Je=Ge.uid,je=!!(Ge&&Ge.request&&Ge.request.collectResourceTiming)&&new i.bv(Ge.request),tt=new s(Ge);this.loading[Je]=tt;let xt=new AbortController;tt.abort=xt;try{let Ie=yield this.loadVectorTile(Ge,xt);if(delete this.loading[Je],!Ie)return null;let xe=Ie.rawData,ke={};Ie.expires&&(ke.expires=Ie.expires),Ie.cacheControl&&(ke.cacheControl=Ie.cacheControl);let vt={};if(je){let ar=je.finish();ar&&(vt.resourceTiming=JSON.parse(JSON.stringify(ar)))}tt.vectorTile=Ie.vectorTile;let ir=tt.parse(Ie.vectorTile,this.layerIndex,this.availableImages,this.actor);this.loaded[Je]=tt,this.fetching[Je]={rawTileData:xe,cacheControl:ke,resourceTiming:vt};try{let ar=yield ir;return i.e({rawTileData:xe.slice(0)},ar,ke,vt)}finally{delete this.fetching[Je]}}catch(Ie){throw delete this.loading[Je],tt.status="done",this.loaded[Je]=tt,Ie}})}reloadTile(Ge){return i._(this,void 0,void 0,function*(){let Je=Ge.uid;if(!this.loaded||!this.loaded[Je])throw new Error("Should not be trying to reload a tile that was never loaded or has been removed");let je=this.loaded[Je];if(je.showCollisionBoxes=Ge.showCollisionBoxes,je.status==="parsing"){let tt=yield je.parse(je.vectorTile,this.layerIndex,this.availableImages,this.actor),xt;if(this.fetching[Je]){let{rawTileData:Ie,cacheControl:xe,resourceTiming:ke}=this.fetching[Je];delete this.fetching[Je],xt=i.e({rawTileData:Ie.slice(0)},tt,xe,ke)}else xt=tt;return xt}if(je.status==="done"&&je.vectorTile)return je.parse(je.vectorTile,this.layerIndex,this.availableImages,this.actor)})}abortTile(Ge){return i._(this,void 0,void 0,function*(){let Je=this.loading,je=Ge.uid;Je&&Je[je]&&Je[je].abort&&(Je[je].abort.abort(),delete Je[je])})}removeTile(Ge){return i._(this,void 0,void 0,function*(){this.loaded&&this.loaded[Ge.uid]&&delete this.loaded[Ge.uid]})}}class c{constructor(){this.loaded={}}loadTile(Ge){return i._(this,void 0,void 0,function*(){let{uid:Je,encoding:je,rawImageData:tt,redFactor:xt,greenFactor:Ie,blueFactor:xe,baseShift:ke}=Ge,vt=tt.width+2,ir=tt.height+2,ar=i.b(tt)?new i.R({width:vt,height:ir},yield i.bw(tt,-1,-1,vt,ir)):tt,vr=new i.bx(Je,ar,je,xt,Ie,xe,ke);return this.loaded=this.loaded||{},this.loaded[Je]=vr,vr})}removeTile(Ge){let Je=this.loaded,je=Ge.uid;Je&&Je[je]&&delete Je[je]}}function f(dt,Ge){if(dt.length!==0){h(dt[0],Ge);for(var Je=1;Je<dt.length;Je++)h(dt[Je],!Ge)}}function h(dt,Ge){for(var Je=0,je=0,tt=0,xt=dt.length,Ie=xt-1;tt<xt;Ie=tt++){var xe=(dt[tt][0]-dt[Ie][0])*(dt[Ie][1]+dt[tt][1]),ke=Je+xe;je+=Math.abs(Je)>=Math.abs(xe)?Je-ke+xe:xe-ke+Je,Je=ke}Je+je>=0!=!!Ge&&dt.reverse()}var d=i.by(function dt(Ge,Je){var je,tt=Ge&&Ge.type;if(tt==="FeatureCollection")for(je=0;je<Ge.features.length;je++)dt(Ge.features[je],Je);else if(tt==="GeometryCollection")for(je=0;je<Ge.geometries.length;je++)dt(Ge.geometries[je],Je);else if(tt==="Feature")dt(Ge.geometry,Je);else if(tt==="Polygon")f(Ge.coordinates,Je);else if(tt==="MultiPolygon")for(je=0;je<Ge.coordinates.length;je++)f(Ge.coordinates[je],Je);return Ge});let v=i.bt.VectorTileFeature.prototype.toGeoJSON;var _={exports:{}},b=i.bz,p=i.bt.VectorTileFeature,k=E;function E(dt,Ge){this.options=Ge||{},this.features=dt,this.length=dt.length}function S(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 S(this.features[dt],this.options.extent)},S.prototype.loadGeometry=function(){var dt=this.rawGeometry;this.geometry=[];for(var Ge=0;Ge<dt.length;Ge++){for(var Je=dt[Ge],je=[],tt=0;tt<Je.length;tt++)je.push(new b(Je[tt][0],Je[tt][1]));this.geometry.push(je)}return this.geometry},S.prototype.bbox=function(){this.geometry||this.loadGeometry();for(var dt=this.geometry,Ge=1/0,Je=-1/0,je=1/0,tt=-1/0,xt=0;xt<dt.length;xt++)for(var Ie=dt[xt],xe=0;xe<Ie.length;xe++){var ke=Ie[xe];Ge=Math.min(Ge,ke.x),Je=Math.max(Je,ke.x),je=Math.min(je,ke.y),tt=Math.max(tt,ke.y)}return[Ge,je,Je,tt]},S.prototype.toGeoJSON=p.prototype.toGeoJSON;var L=i.bA,x=k;function C(dt){var Ge=new L;return function(Je,je){for(var tt in Je.layers)je.writeMessage(3,M,Je.layers[tt])}(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 tt=je.keys;for(Je=0;Je<tt.length;Je++)Ge.writeStringField(3,tt[Je]);var xt=je.values;for(Je=0;Je<xt.length;Je++)Ge.writeMessage(4,V,xt[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,tt=dt.values,xt=dt.keycache,Ie=dt.valuecache;for(var xe in Je.properties){var ke=Je.properties[xe],vt=xt[xe];if(ke!==null){vt===void 0&&(je.push(xe),xt[xe]=vt=je.length-1),Ge.writeVarint(vt);var ir=typeof ke;ir!=="string"&&ir!=="boolean"&&ir!=="number"&&(ke=JSON.stringify(ke));var ar=ir+":"+ke,vr=Ie[ar];vr===void 0&&(tt.push(ke),Ie[ar]=vr=tt.length-1),Ge.writeVarint(vr)}}}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,tt=0,xt=0,Ie=Je.length,xe=0;xe<Ie;xe++){var ke=Je[xe],vt=1;je===1&&(vt=ke.length),Ge.writeVarint(T(1,vt));for(var ir=je===3?ke.length-1:ke.length,ar=0;ar<ir;ar++){ar===1&&je!==1&&Ge.writeVarint(T(2,ir-1));var vr=ke[ar].x-tt,ii=ke[ar].y-xt;Ge.writeVarint(z(vr)),Ge.writeVarint(z(ii)),tt+=vr,xt+=ii}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))}_.exports=C,_.exports.fromVectorTileJs=C,_.exports.fromGeojsonVt=function(dt,Ge){Ge=Ge||{};var Je={};for(var je in dt)Je[je]=new x(dt[je].features,Ge),Je[je].name=je,Je[je].version=Ge.version,Je[je].extent=Ge.extent;return C({layers:Je})},_.exports.GeoJSONWrapper=x;var G=i.by(_.exports);let Z={minZoom:0,maxZoom:16,minPoints:2,radius:40,extent:512,nodeSize:64,log:!1,generateId:!1,reduce:null,map:dt=>dt},j=Math.fround||(N=new Float32Array(1),dt=>(N[0]=+dt,N[0]));var N;let H=3,te=5,oe=6;class _e{constructor(Ge){this.options=Object.assign(Object.create(Z),Ge),this.trees=new Array(this.options.maxZoom+1),this.stride=this.options.reduce?7:6,this.clusterProps=[]}load(Ge){let{log:Je,minZoom:je,maxZoom:tt}=this.options;Je&&console.time("total time");let xt=`prepare ${Ge.length} points`;Je&&console.time(xt),this.points=Ge;let Ie=[];for(let ke=0;ke<Ge.length;ke++){let vt=Ge[ke];if(!vt.geometry)continue;let[ir,ar]=vt.geometry.coordinates,vr=j(me(ir)),ii=j(ie(ar));Ie.push(vr,ii,1/0,ke,-1,1),this.options.reduce&&Ie.push(0)}let xe=this.trees[tt+1]=this._createTree(Ie);Je&&console.timeEnd(xt);for(let ke=tt;ke>=je;ke--){let vt=+Date.now();xe=this.trees[ke]=this._createTree(this._cluster(xe,ke)),Je&&console.log("z%d: %d clusters in %dms",ke,xe.numItems,+Date.now()-vt)}return Je&&console.timeEnd("total time"),this}getClusters(Ge,Je){let je=((Ge[0]+180)%360+360)%360-180,tt=Math.max(-90,Math.min(90,Ge[1])),xt=Ge[2]===180?180:((Ge[2]+180)%360+360)%360-180,Ie=Math.max(-90,Math.min(90,Ge[3]));if(Ge[2]-Ge[0]>=360)je=-180,xt=180;else if(je>xt){let ar=this.getClusters([je,tt,180,Ie],Je),vr=this.getClusters([-180,tt,xt,Ie],Je);return ar.concat(vr)}let xe=this.trees[this._limitZoom(Je)],ke=xe.range(me(je),ie(Ie),me(xt),ie(tt)),vt=xe.data,ir=[];for(let ar of ke){let vr=this.stride*ar;ir.push(vt[vr+te]>1?Ee(vt,vr,this.clusterProps):this.points[vt[vr+H]])}return ir}getChildren(Ge){let Je=this._getOriginId(Ge),je=this._getOriginZoom(Ge),tt="No cluster with the specified id.",xt=this.trees[je];if(!xt)throw new Error(tt);let Ie=xt.data;if(Je*this.stride>=Ie.length)throw new Error(tt);let xe=this.options.radius/(this.options.extent*Math.pow(2,je-1)),ke=xt.within(Ie[Je*this.stride],Ie[Je*this.stride+1],xe),vt=[];for(let ir of ke){let ar=ir*this.stride;Ie[ar+4]===Ge&&vt.push(Ie[ar+te]>1?Ee(Ie,ar,this.clusterProps):this.points[Ie[ar+H]])}if(vt.length===0)throw new Error(tt);return vt}getLeaves(Ge,Je,je){let tt=[];return this._appendLeaves(tt,Ge,Je=Je||10,je=je||0,0),tt}getTile(Ge,Je,je){let tt=this.trees[this._limitZoom(Ge)],xt=Math.pow(2,Ge),{extent:Ie,radius:xe}=this.options,ke=xe/Ie,vt=(je-ke)/xt,ir=(je+1+ke)/xt,ar={features:[]};return this._addTileFeatures(tt.range((Je-ke)/xt,vt,(Je+1+ke)/xt,ir),tt.data,Je,je,xt,ar),Je===0&&this._addTileFeatures(tt.range(1-ke/xt,vt,1,ir),tt.data,xt,je,xt,ar),Je===xt-1&&this._addTileFeatures(tt.range(0,vt,ke/xt,ir),tt.data,-1,je,xt,ar),ar.features.length?ar:null}getClusterExpansionZoom(Ge){let Je=this._getOriginZoom(Ge)-1;for(;Je<=this.options.maxZoom;){let je=this.getChildren(Ge);if(Je++,je.length!==1)break;Ge=je[0].properties.cluster_id}return Je}_appendLeaves(Ge,Je,je,tt,xt){let Ie=this.getChildren(Je);for(let xe of Ie){let ke=xe.properties;if(ke&&ke.cluster?xt+ke.point_count<=tt?xt+=ke.point_count:xt=this._appendLeaves(Ge,ke.cluster_id,je,tt,xt):xt<tt?xt++:Ge.push(xe),Ge.length===je)break}return xt}_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,tt,xt,Ie){for(let xe of Ge){let ke=xe*this.stride,vt=Je[ke+te]>1,ir,ar,vr;if(vt)ir=Ce(Je,ke,this.clusterProps),ar=Je[ke],vr=Je[ke+1];else{let $r=this.points[Je[ke+H]];ir=$r.properties;let[di,ji]=$r.geometry.coordinates;ar=me(di),vr=ie(ji)}let ii={type:1,geometry:[[Math.round(this.options.extent*(ar*xt-je)),Math.round(this.options.extent*(vr*xt-tt))]],tags:ir},pi;pi=vt||this.options.generateId?Je[ke+H]:this.points[Je[ke+H]].id,pi!==void 0&&(ii.id=pi),Ie.features.push(ii)}}_limitZoom(Ge){return Math.max(this.options.minZoom,Math.min(Math.floor(+Ge),this.options.maxZoom+1))}_cluster(Ge,Je){let{radius:je,extent:tt,reduce:xt,minPoints:Ie}=this.options,xe=je/(tt*Math.pow(2,Je)),ke=Ge.data,vt=[],ir=this.stride;for(let ar=0;ar<ke.length;ar+=ir){if(ke[ar+2]<=Je)continue;ke[ar+2]=Je;let vr=ke[ar],ii=ke[ar+1],pi=Ge.within(ke[ar],ke[ar+1],xe),$r=ke[ar+te],di=$r;for(let ji of pi){let In=ji*ir;ke[In+2]>Je&&(di+=ke[In+te])}if(di>$r&&di>=Ie){let ji,In=vr*$r,wi=ii*$r,On=-1,qn=((ar/ir|0)<<5)+(Je+1)+this.points.length;for(let Fn of pi){let ra=Fn*ir;if(ke[ra+2]<=Je)continue;ke[ra+2]=Je;let la=ke[ra+te];In+=ke[ra]*la,wi+=ke[ra+1]*la,ke[ra+4]=qn,xt&&(ji||(ji=this._map(ke,ar,!0),On=this.clusterProps.length,this.clusterProps.push(ji)),xt(ji,this._map(ke,ra)))}ke[ar+4]=qn,vt.push(In/di,wi/di,1/0,qn,-1,di),xt&&vt.push(On)}else{for(let ji=0;ji<ir;ji++)vt.push(ke[ar+ji]);if(di>1)for(let ji of pi){let In=ji*ir;if(!(ke[In+2]<=Je)){ke[In+2]=Je;for(let wi=0;wi<ir;wi++)vt.push(ke[In+wi])}}}}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+te]>1){let Ie=this.clusterProps[Ge[Je+oe]];return je?Object.assign({},Ie):Ie}let tt=this.points[Ge[Je+H]].properties,xt=this.options.map(tt);return je&&xt===tt?Object.assign({},xt):xt}}function Ee(dt,Ge,Je){return{type:"Feature",id:dt[Ge+H],properties:Ce(dt,Ge,Je),geometry:{type:"Point",coordinates:[(je=dt[Ge],360*(je-.5)),Se(dt[Ge+1])]}};var je}function Ce(dt,Ge,Je){let je=dt[Ge+te],tt=je>=1e4?`${Math.round(je/1e3)}k`:je>=1e3?Math.round(je/100)/10+"k":je,xt=dt[Ge+oe],Ie=xt===-1?{}:Object.assign({},Je[xt]);return Object.assign(Ie,{cluster:!0,cluster_id:dt[Ge+H],point_count:je,point_count_abbreviated:tt})}function me(dt){return dt/360+.5}function ie(dt){let Ge=Math.sin(dt*Math.PI/180),Je=.5-.25*Math.log((1+Ge)/(1-Ge))/Math.PI;return Je<0?0:Je>1?1:Je}function Se(dt){let Ge=(180-360*dt)*Math.PI/180;return 360*Math.atan(Math.exp(Ge))/Math.PI-90}function Le(dt,Ge,Je,je){let tt=je,xt=Ge+(Je-Ge>>1),Ie,xe=Je-Ge,ke=dt[Ge],vt=dt[Ge+1],ir=dt[Je],ar=dt[Je+1];for(let vr=Ge+3;vr<Je;vr+=3){let ii=Ae(dt[vr],dt[vr+1],ke,vt,ir,ar);if(ii>tt)Ie=vr,tt=ii;else if(ii===tt){let pi=Math.abs(vr-xt);pi<xe&&(Ie=vr,xe=pi)}}tt>je&&(Ie-Ge>3&&Le(dt,Ge,Ie,je),dt[Ie+2]=tt,Je-Ie>3&&Le(dt,Ie,Je,je))}function Ae(dt,Ge,Je,je,tt,xt){let Ie=tt-Je,xe=xt-je;if(Ie!==0||xe!==0){let ke=((dt-Je)*Ie+(Ge-je)*xe)/(Ie*Ie+xe*xe);ke>1?(Je=tt,je=xt):ke>0&&(Je+=Ie*ke,je+=xe*ke)}return Ie=dt-Je,xe=Ge-je,Ie*Ie+xe*xe}function Fe(dt,Ge,Je,je){let tt={id:dt==null?null:dt,type:Ge,geometry:Je,tags:je,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0};if(Ge==="Point"||Ge==="MultiPoint"||Ge==="LineString")Pe(tt,Je);else if(Ge==="Polygon")Pe(tt,Je[0]);else if(Ge==="MultiLineString")for(let xt of Je)Pe(tt,xt);else if(Ge==="MultiPolygon")for(let xt of Je)Pe(tt,xt[0]);return tt}function Pe(dt,Ge){for(let Je=0;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 tt=Ge.geometry.coordinates;if(tt&&tt.length===0)return;let xt=Ge.geometry.type,Ie=Math.pow(Je.tolerance/((1<<Je.maxZoom)*Je.extent),2),xe=[],ke=Ge.id;if(Je.promoteId?ke=Ge.properties[Je.promoteId]:Je.generateId&&(ke=je||0),xt==="Point")Re(tt,xe);else if(xt==="MultiPoint")for(let vt of tt)Re(vt,xe);else if(xt==="LineString")ce(tt,xe,Ie,!1);else if(xt==="MultiLineString"){if(Je.lineMetrics){for(let vt of tt)xe=[],ce(vt,xe,Ie,!1),dt.push(Fe(ke,"LineString",xe,Ge.properties));return}Ze(tt,xe,Ie,!1)}else if(xt==="Polygon")Ze(tt,xe,Ie,!0);else{if(xt!=="MultiPolygon"){if(xt==="GeometryCollection"){for(let vt of Ge.geometry.geometries)ge(dt,{id:ke,geometry:vt,properties:Ge.properties},Je,je);return}throw new Error("Input data is not a valid GeoJSON object.")}for(let vt of tt){let ir=[];Ze(vt,ir,Ie,!0),xe.push(ir)}}dt.push(Fe(ke,xt,xe,Ge.properties))}function Re(dt,Ge){Ge.push(ut(dt[0]),pt(dt[1]),0)}function ce(dt,Ge,Je,je){let tt,xt,Ie=0;for(let ke=0;ke<dt.length;ke++){let vt=ut(dt[ke][0]),ir=pt(dt[ke][1]);Ge.push(vt,ir,0),ke>0&&(Ie+=je?(tt*ir-vt*xt)/2:Math.sqrt(Math.pow(vt-tt,2)+Math.pow(ir-xt,2))),tt=vt,xt=ir}let xe=Ge.length-3;Ge[2]=1,Le(Ge,0,xe,Je),Ge[xe+2]=1,Ge.size=Math.abs(Ie),Ge.start=0,Ge.end=Ge.size}function Ze(dt,Ge,Je,je){for(let tt=0;tt<dt.length;tt++){let xt=[];ce(dt[tt],xt,Je,je),Ge.push(xt)}}function ut(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 Zt(dt,Ge,Je,je,tt,xt,Ie,xe){if(je/=Ge,xt>=(Je/=Ge)&&Ie<je)return dt;if(Ie<Je||xt>=je)return null;let ke=[];for(let vt of dt){let ir=vt.geometry,ar=vt.type,vr=tt===0?vt.minX:vt.minY,ii=tt===0?vt.maxX:vt.maxY;if(vr>=Je&&ii<je){ke.push(vt);continue}if(ii<Je||vr>=je)continue;let pi=[];if(ar==="Point"||ar==="MultiPoint")st(ir,pi,Je,je,tt);else if(ar==="LineString")lt(ir,pi,Je,je,tt,!1,xe.lineMetrics);else if(ar==="MultiLineString")Nt(ir,pi,Je,je,tt,!1);else if(ar==="Polygon")Nt(ir,pi,Je,je,tt,!0);else if(ar==="MultiPolygon")for(let $r of ir){let di=[];Nt($r,di,Je,je,tt,!0),di.length&&pi.push(di)}if(pi.length){if(xe.lineMetrics&&ar==="LineString"){for(let $r of pi)ke.push(Fe(vt.id,ar,$r,vt.tags));continue}ar!=="LineString"&&ar!=="MultiLineString"||(pi.length===1?(ar="LineString",pi=pi[0]):ar="MultiLineString"),ar!=="Point"&&ar!=="MultiPoint"||(ar=pi.length===3?"Point":"MultiPoint"),ke.push(Fe(vt.id,ar,pi,vt.tags))}}return ke.length?ke:null}function st(dt,Ge,Je,je,tt){for(let xt=0;xt<dt.length;xt+=3){let Ie=dt[xt+tt];Ie>=Je&&Ie<=je&&Jt(Ge,dt[xt],dt[xt+1],dt[xt+2])}}function lt(dt,Ge,Je,je,tt,xt,Ie){let xe=Gt(dt),ke=tt===0?sr:wr,vt,ir,ar=dt.start;for(let di=0;di<dt.length-3;di+=3){let ji=dt[di],In=dt[di+1],wi=dt[di+2],On=dt[di+3],qn=dt[di+4],Fn=tt===0?ji:In,ra=tt===0?On:qn,la=!1;Ie&&(vt=Math.sqrt(Math.pow(ji-On,2)+Math.pow(In-qn,2))),Fn<Je?ra>Je&&(ir=ke(xe,ji,In,On,qn,Je),Ie&&(xe.start=ar+vt*ir)):Fn>je?ra<je&&(ir=ke(xe,ji,In,On,qn,je),Ie&&(xe.start=ar+vt*ir)):Jt(xe,ji,In,wi),ra<Je&&Fn>=Je&&(ir=ke(xe,ji,In,On,qn,Je),la=!0),ra>je&&Fn<=je&&(ir=ke(xe,ji,In,On,qn,je),la=!0),!xt&&la&&(Ie&&(xe.end=ar+vt*ir),Ge.push(xe),xe=Gt(dt)),Ie&&(ar+=vt)}let vr=dt.length-3,ii=dt[vr],pi=dt[vr+1],$r=tt===0?ii:pi;$r>=Je&&$r<=je&&Jt(xe,ii,pi,dt[vr+2]),vr=xe.length-3,xt&&vr>=3&&(xe[vr]!==xe[0]||xe[vr+1]!==xe[1])&&Jt(xe,xe[0],xe[1],xe[2]),xe.length&&Ge.push(xe)}function Gt(dt){let Ge=[];return Ge.size=dt.size,Ge.start=dt.start,Ge.end=dt.end,Ge}function Nt(dt,Ge,Je,je,tt,xt){for(let Ie of dt)lt(Ie,Ge,Je,je,tt,xt,!1)}function Jt(dt,Ge,Je,je){dt.push(Ge,Je,je)}function sr(dt,Ge,Je,je,tt,xt){let Ie=(xt-Ge)/(je-Ge);return Jt(dt,xt,Je+(tt-Je)*Ie,1),Ie}function wr(dt,Ge,Je,je,tt,xt){let Ie=(xt-Je)/(tt-Je);return Jt(dt,Ge+(je-Ge)*Ie,xt,1),Ie}function cr(dt,Ge){let Je=[];for(let je=0;je<dt.length;je++){let tt=dt[je],xt=tt.type,Ie;if(xt==="Point"||xt==="MultiPoint"||xt==="LineString")Ie=$e(tt.geometry,Ge);else if(xt==="MultiLineString"||xt==="Polygon"){Ie=[];for(let xe of tt.geometry)Ie.push($e(xe,Ge))}else if(xt==="MultiPolygon"){Ie=[];for(let xe of tt.geometry){let ke=[];for(let vt of xe)ke.push($e(vt,Ge));Ie.push(ke)}}Je.push(Fe(tt.id,xt,Ie,tt.tags))}return Je}function $e(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 St(dt,Ge){if(dt.transformed)return dt;let Je=1<<dt.z,je=dt.x,tt=dt.y;for(let xt of dt.features){let Ie=xt.geometry,xe=xt.type;if(xt.geometry=[],xe===1)for(let ke=0;ke<Ie.length;ke+=2)xt.geometry.push(Qt(Ie[ke],Ie[ke+1],Ge,Je,je,tt));else for(let ke=0;ke<Ie.length;ke++){let vt=[];for(let ir=0;ir<Ie[ke].length;ir+=2)vt.push(Qt(Ie[ke][ir],Ie[ke][ir+1],Ge,Je,je,tt));xt.geometry.push(vt)}}return dt.transformed=!0,dt}function Qt(dt,Ge,Je,je,tt,xt){return[Math.round(Je*(dt*je-tt)),Math.round(Je*(Ge*je-xt))]}function Vt(dt,Ge,Je,je,tt){let xt=Ge===tt.maxZoom?0:tt.tolerance/((1<<Ge)*tt.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)_t(Ie,xe,xt,tt);return Ie}function _t(dt,Ge,Je,je){let tt=Ge.geometry,xt=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),xt==="Point"||xt==="MultiPoint")for(let xe=0;xe<tt.length;xe+=3)Ie.push(tt[xe],tt[xe+1]),dt.numPoints++,dt.numSimplified++;else if(xt==="LineString")It(Ie,tt,dt,Je,!1,!1);else if(xt==="MultiLineString"||xt==="Polygon")for(let xe=0;xe<tt.length;xe++)It(Ie,tt[xe],dt,Je,xt==="Polygon",xe===0);else if(xt==="MultiPolygon")for(let xe=0;xe<tt.length;xe++){let ke=tt[xe];for(let vt=0;vt<ke.length;vt++)It(Ie,ke[vt],dt,Je,!0,vt===0)}if(Ie.length){let xe=Ge.tags||null;if(xt==="LineString"&&je.lineMetrics){xe={};for(let vt in Ge.tags)xe[vt]=Ge.tags[vt];xe.mapbox_clip_start=tt.start/tt.size,xe.mapbox_clip_end=tt.end/tt.size}let ke={geometry:Ie,type:xt==="Polygon"||xt==="MultiPolygon"?3:xt==="LineString"||xt==="MultiLineString"?2:1,tags:xe};Ge.id!==null&&(ke.id=Ge.id),dt.features.push(ke)}}function It(dt,Ge,Je,je,tt,xt){let Ie=je*je;if(je>0&&Ge.size<(tt?Ie:je))return void(Je.numPoints+=Ge.length/3);let xe=[];for(let ke=0;ke<Ge.length;ke+=3)(je===0||Ge[ke+2]>Ie)&&(Je.numSimplified++,xe.push(Ge[ke],Ge[ke+1])),Je.numPoints++;tt&&function(ke,vt){let ir=0;for(let ar=0,vr=ke.length,ii=vr-2;ar<vr;ii=ar,ar+=2)ir+=(ke[ar]-ke[ii])*(ke[ar+1]+ke[ii+1]);if(ir>0===vt)for(let ar=0,vr=ke.length;ar<vr/2;ar+=2){let ii=ke[ar],pi=ke[ar+1];ke[ar]=ke[vr-2-ar],ke[ar+1]=ke[vr-1-ar],ke[vr-2-ar]=ii,ke[vr-1-ar]=pi}}(xe,xt),dt.push(xe)}let mt={maxZoom:14,indexMaxZoom:5,indexMaxPoints:1e5,tolerance:3,extent:4096,buffer:64,lineMetrics:!1,promoteId:null,generateId:!1,debug:0};class er{constructor(Ge,Je){let je=(Je=this.options=function(xt,Ie){for(let xe in Ie)xt[xe]=Ie[xe];return xt}(Object.create(mt),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 tt=function(xt,Ie){let xe=[];if(xt.type==="FeatureCollection")for(let ke=0;ke<xt.features.length;ke++)ge(xe,xt.features[ke],Ie,ke);else ge(xe,xt.type==="Feature"?xt:{geometry:xt},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),tt=function(xt,Ie){let xe=Ie.buffer/Ie.extent,ke=xt,vt=Zt(xt,1,-1-xe,xe,0,-1,2,Ie),ir=Zt(xt,1,1-xe,2+xe,0,-1,2,Ie);return(vt||ir)&&(ke=Zt(xt,1,-xe,1+xe,0,-1,2,Ie)||[],vt&&(ke=cr(vt,1).concat(ke)),ir&&(ke=ke.concat(cr(ir,-1)))),ke}(tt,Je),tt.length&&this.splitTile(tt,0,0,0),je&&(tt.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,tt,xt,Ie,xe){let ke=[Ge,Je,je,tt],vt=this.options,ir=vt.debug;for(;ke.length;){tt=ke.pop(),je=ke.pop(),Je=ke.pop(),Ge=ke.pop();let ar=1<<Je,vr=lr(Je,je,tt),ii=this.tiles[vr];if(!ii&&(ir>1&&console.time("creation"),ii=this.tiles[vr]=Vt(Ge,Je,je,tt,vt),this.tileCoords.push({z:Je,x:je,y:tt}),ir)){ir>1&&(console.log("tile z%d-%d-%d (features: %d, points: %d, simplified: %d)",Je,je,tt,ii.numFeatures,ii.numPoints,ii.numSimplified),console.timeEnd("creation"));let la=`z${Je}`;this.stats[la]=(this.stats[la]||0)+1,this.total++}if(ii.source=Ge,xt==null){if(Je===vt.indexMaxZoom||ii.numPoints<=vt.indexMaxPoints)continue}else{if(Je===vt.maxZoom||Je===xt)continue;if(xt!=null){let la=xt-Je;if(je!==Ie>>la||tt!==xe>>la)continue}}if(ii.source=null,Ge.length===0)continue;ir>1&&console.time("clipping");let pi=.5*vt.buffer/vt.extent,$r=.5-pi,di=.5+pi,ji=1+pi,In=null,wi=null,On=null,qn=null,Fn=Zt(Ge,ar,je-pi,je+di,0,ii.minX,ii.maxX,vt),ra=Zt(Ge,ar,je+$r,je+ji,0,ii.minX,ii.maxX,vt);Ge=null,Fn&&(In=Zt(Fn,ar,tt-pi,tt+di,1,ii.minY,ii.maxY,vt),wi=Zt(Fn,ar,tt+$r,tt+ji,1,ii.minY,ii.maxY,vt),Fn=null),ra&&(On=Zt(ra,ar,tt-pi,tt+di,1,ii.minY,ii.maxY,vt),qn=Zt(ra,ar,tt+$r,tt+ji,1,ii.minY,ii.maxY,vt),ra=null),ir>1&&console.timeEnd("clipping"),ke.push(In||[],Je+1,2*je,2*tt),ke.push(wi||[],Je+1,2*je,2*tt+1),ke.push(On||[],Je+1,2*je+1,2*tt),ke.push(qn||[],Je+1,2*je+1,2*tt+1)}}getTile(Ge,Je,je){Ge=+Ge,Je=+Je,je=+je;let tt=this.options,{extent:xt,debug:Ie}=tt;if(Ge<0||Ge>24)return null;let xe=1<<Ge,ke=lr(Ge,Je=Je+xe&xe-1,je);if(this.tiles[ke])return St(this.tiles[ke],xt);Ie>1&&console.log("drilling down to z%d-%d-%d",Ge,Je,je);let vt,ir=Ge,ar=Je,vr=je;for(;!vt&&ir>0;)ir--,ar>>=1,vr>>=1,vt=this.tiles[lr(ir,ar,vr)];return vt&&vt.source?(Ie>1&&(console.log("found parent tile z%d-%d-%d",ir,ar,vr),console.time("drilling down")),this.splitTile(vt.source,ir,ar,vr,Ge,Je,je),Ie>1&&console.timeEnd("drilling down"),this.tiles[ke]?St(this.tiles[ke],xt):null):null}}function lr(dt,Ge,Je){return 32*((1<<dt)*Je+Ge)+dt}function Tr(dt,Ge){return Ge?dt.properties[Ge]:dt.id}function Lr(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 tt=Tr(je,Ge);if(tt==null||Je.has(tt))return!1;Je.add(tt)}return!0}return!1}function ti(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 Br 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 tt=this._geoJSONIndex.getTile(je.z,je.x,je.y);if(!tt)return null;let xt=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(ke){this._feature=ke,this.extent=i.X,this.type=ke.type,this.properties=ke.tags,"id"in ke&&!isNaN(ke.id)&&(this.id=parseInt(ke.id,10))}loadGeometry(){if(this._feature.type===1){let ke=[];for(let vt of this._feature.geometry)ke.push([new i.P(vt[0],vt[1])]);return ke}{let ke=[];for(let vt of this._feature.geometry){let ir=[];for(let ar of vt)ir.push(new i.P(ar[0],ar[1]));ke.push(ir)}return ke}}toGeoJSON(ke,vt,ir){return v.call(this,ke,vt,ir)}}(this._features[xe])}}(tt.features),Ie=G(xt);return Ie.byteOffset===0&&Ie.byteLength===Ie.buffer.byteLength||(Ie=new Uint8Array(Ie)),{vectorTile:xt,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 ke={},vt={},ir={accumulated:null,zoom:0},ar={properties:null},vr=Object.keys(xe);for(let ii of vr){let[pi,$r]=xe[ii],di=i.bC($r),ji=i.bC(typeof pi=="string"?[pi,["accumulated"],["get",ii]]:pi);ke[ii]=di.value,vt[ii]=ji.value}return Ie.map=ii=>{ar.properties=ii;let pi={};for(let $r of vr)pi[$r]=ke[$r].evaluate(ir,ar);return pi},Ie.reduce=(ii,pi)=>{ar.properties=pi;for(let $r of vr)ir.accumulated=ii[$r],ii[$r]=vt[$r].evaluate(ir,ar)},Ie}(Ge)).load((yield this._pendingData).features):(tt=yield this._pendingData,new er(tt,Ge.geojsonVtOptions)),this.loaded={};let xt={};if(je){let Ie=je.finish();Ie&&(xt.resourceTiming={},xt.resourceTiming[Ge.source]=JSON.parse(JSON.stringify(Ie)))}return xt}catch(xt){if(delete this._pendingRequest,i.bB(xt))return{abandoned:!0};throw xt}var tt})}getData(){return i._(this,void 0,void 0,function*(){return this._pendingData})}reloadTile(Ge){let Je=this.loaded;return Je&&Je[Ge.uid]?super.reloadTile(Ge):this.loadTile(Ge)}loadAndProcessGeoJSON(Ge,Je){return i._(this,void 0,void 0,function*(){let je=yield this.loadGeoJSON(Ge,Je);if(delete this._pendingRequest,typeof je!="object")throw new Error(`Input data given to '${Ge.source}' is not a valid GeoJSON object.`);if(d(je,!0),Ge.filter){let tt=i.bC(Ge.filter,{type:"boolean","property-type":"data-driven",overridable:!1,transition:!1});if(tt.result==="error")throw new Error(tt.value.map(Ie=>`${Ie.key}: ${Ie.message}`).join(", "));je={type:"FeatureCollection",features:je.features.filter(Ie=>tt.value.evaluate({zoom:0},Ie))}}return je})}loadGeoJSON(Ge,Je){return i._(this,void 0,void 0,function*(){let{promoteId:je}=Ge;if(Ge.request){let tt=yield i.h(Ge.request,Je);return this._dataUpdateable=Lr(tt.data,je)?ti(tt.data,je):void 0,tt.data}if(typeof Ge.data=="string")try{let tt=JSON.parse(Ge.data);return this._dataUpdateable=Lr(tt,je)?ti(tt,je):void 0,tt}catch(tt){throw new Error(`Input data given to '${Ge.source}' is not a valid GeoJSON object.`)}if(!Ge.dataDiff)throw new Error(`Input data given to '${Ge.source}' is not a valid GeoJSON object.`);if(!this._dataUpdateable)throw new Error(`Cannot update existing geojson data in ${Ge.source}`);return function(tt,xt,Ie){var xe,ke,vt,ir;if(xt.removeAll&&tt.clear(),xt.remove)for(let ar of xt.remove)tt.delete(ar);if(xt.add)for(let ar of xt.add){let vr=Tr(ar,Ie);vr!=null&&tt.set(vr,ar)}if(xt.update)for(let ar of xt.update){let vr=tt.get(ar.id);if(vr==null)continue;let ii=!ar.removeAllProperties&&(((xe=ar.removeProperties)===null||xe===void 0?void 0:xe.length)>0||((ke=ar.addOrUpdateProperties)===null||ke===void 0?void 0:ke.length)>0);if((ar.newGeometry||ar.removeAllProperties||ii)&&(vr=Object.assign({},vr),tt.set(ar.id,vr),ii&&(vr.properties=Object.assign({},vr.properties))),ar.newGeometry&&(vr.geometry=ar.newGeometry),ar.removeAllProperties)vr.properties={};else if(((vt=ar.removeProperties)===null||vt===void 0?void 0:vt.length)>0)for(let pi of ar.removeProperties)Object.prototype.hasOwnProperty.call(vr.properties,pi)&&delete vr.properties[pi];if(((ir=ar.addOrUpdateProperties)===null||ir===void 0?void 0:ir.length)>0)for(let{key:pi,value:$r}of ar.addOrUpdateProperties)vr.properties[pi]=$r}}(this._dataUpdateable,Ge.dataDiff,je),{type:"FeatureCollection",features:Array.from(this._dataUpdateable.values())}})}removeSource(Ge){return i._(this,void 0,void 0,function*(){this._pendingRequest&&this._pendingRequest.abort()})}getClusterExpansionZoom(Ge){return this._geoJSONIndex.getClusterExpansionZoom(Ge.clusterId)}getClusterChildren(Ge){return this._geoJSONIndex.getChildren(Ge.clusterId)}getClusterLeaves(Ge){return this._geoJSONIndex.getLeaves(Ge.clusterId,Ge.limit,Ge.offset)}}class Vr{constructor(Ge){this.self=Ge,this.actor=new i.F(Ge),this.layerIndexes={},this.availableImages={},this.workerSources={},this.demWorkerSources={},this.externalWorkerSourceTypes={},this.self.registerWorkerSource=(Je,je)=>{if(this.externalWorkerSourceTypes[Je])throw new Error(`Worker source with name "${Je}" already registered.`);this.externalWorkerSourceTypes[Je]=je},this.self.addProtocol=i.bi,this.self.removeProtocol=i.bj,this.self.registerRTLTextPlugin=Je=>{if(i.bD.isParsed())throw new Error("RTL text plugin already registered.");i.bD.setMethods(Je)},this.actor.registerMessageHandler("LDT",(Je,je)=>this._getDEMWorkerSource(Je,je.source).loadTile(je)),this.actor.registerMessageHandler("RDT",(Je,je)=>i._(this,void 0,void 0,function*(){this._getDEMWorkerSource(Je,je.source).removeTile(je)})),this.actor.registerMessageHandler("GCEZ",(Je,je)=>i._(this,void 0,void 0,function*(){return this._getWorkerSource(Je,je.type,je.source).getClusterExpansionZoom(je)})),this.actor.registerMessageHandler("GCC",(Je,je)=>i._(this,void 0,void 0,function*(){return this._getWorkerSource(Je,je.type,je.source).getClusterChildren(je)})),this.actor.registerMessageHandler("GCL",(Je,je)=>i._(this,void 0,void 0,function*(){return this._getWorkerSource(Je,je.type,je.source).getClusterLeaves(je)})),this.actor.registerMessageHandler("LD",(Je,je)=>this._getWorkerSource(Je,je.type,je.source).loadData(je)),this.actor.registerMessageHandler("GD",(Je,je)=>this._getWorkerSource(Je,je.type,je.source).getData()),this.actor.registerMessageHandler("LT",(Je,je)=>this._getWorkerSource(Je,je.type,je.source).loadTile(je)),this.actor.registerMessageHandler("RT",(Je,je)=>this._getWorkerSource(Je,je.type,je.source).reloadTile(je)),this.actor.registerMessageHandler("AT",(Je,je)=>this._getWorkerSource(Je,je.type,je.source).abortTile(je)),this.actor.registerMessageHandler("RMT",(Je,je)=>this._getWorkerSource(Je,je.type,je.source).removeTile(je)),this.actor.registerMessageHandler("RS",(Je,je)=>i._(this,void 0,void 0,function*(){if(!this.workerSources[Je]||!this.workerSources[Je][je.type]||!this.workerSources[Je][je.type][je.source])return;let tt=this.workerSources[Je][je.type][je.source];delete this.workerSources[Je][je.type][je.source],tt.removeSource!==void 0&&tt.removeSource(je)})),this.actor.registerMessageHandler("RM",Je=>i._(this,void 0,void 0,function*(){delete this.layerIndexes[Je],delete this.availableImages[Je],delete this.workerSources[Je],delete this.demWorkerSources[Je]})),this.actor.registerMessageHandler("SR",(Je,je)=>i._(this,void 0,void 0,function*(){this.referrer=je})),this.actor.registerMessageHandler("SRPS",(Je,je)=>this._syncRTLPluginState(Je,je)),this.actor.registerMessageHandler("IS",(Je,je)=>i._(this,void 0,void 0,function*(){this.self.importScripts(je)})),this.actor.registerMessageHandler("SI",(Je,je)=>this._setImages(Je,je)),this.actor.registerMessageHandler("UL",(Je,je)=>i._(this,void 0,void 0,function*(){this._getLayerIndex(Je).update(je.layers,je.removedIds)})),this.actor.registerMessageHandler("SL",(Je,je)=>i._(this,void 0,void 0,function*(){this._getLayerIndex(Je).replace(je)}))}_setImages(Ge,Je){return i._(this,void 0,void 0,function*(){this.availableImages[Ge]=Je;for(let je in this.workerSources[Ge]){let tt=this.workerSources[Ge][je];for(let xt in tt)tt[xt].availableImages=Je}})}_syncRTLPluginState(Ge,Je){return i._(this,void 0,void 0,function*(){if(i.bD.isParsed())return i.bD.getState();if(Je.pluginStatus!=="loading")return i.bD.setState(Je),Je;let je=Je.pluginURL;if(this.self.importScripts(je),i.bD.isParsed()){let tt={pluginStatus:"loaded",pluginURL:je};return i.bD.setState(tt),tt}throw i.bD.setState({pluginStatus:"error",pluginURL:""}),new Error(`RTL Text Plugin failed to import scripts from ${je}`)})}_getAvailableImages(Ge){let Je=this.availableImages[Ge];return Je||(Je=[]),Je}_getLayerIndex(Ge){let Je=this.layerIndexes[Ge];return Je||(Je=this.layerIndexes[Ge]=new a),Je}_getWorkerSource(Ge,Je,je){if(this.workerSources[Ge]||(this.workerSources[Ge]={}),this.workerSources[Ge][Je]||(this.workerSources[Ge][Je]={}),!this.workerSources[Ge][Je][je]){let tt={sendAsync:(xt,Ie)=>(xt.targetMapId=Ge,this.actor.sendAsync(xt,Ie))};switch(Je){case"vector":this.workerSources[Ge][Je][je]=new u(tt,this._getLayerIndex(Ge),this._getAvailableImages(Ge));break;case"geojson":this.workerSources[Ge][Je][je]=new Br(tt,this._getLayerIndex(Ge),this._getAvailableImages(Ge));break;default:this.workerSources[Ge][Je][je]=new this.externalWorkerSourceTypes[Je](tt,this._getLayerIndex(Ge),this._getAvailableImages(Ge))}}return this.workerSources[Ge][Je][je]}_getDEMWorkerSource(Ge,Je){return this.demWorkerSources[Ge]||(this.demWorkerSources[Ge]={}),this.demWorkerSources[Ge][Je]||(this.demWorkerSources[Ge][Je]=new c),this.demWorkerSources[Ge][Je]}}return i.i(self)&&(self.worker=new Vr(self)),Vr}),r("index",["exports","./shared"],function(i,a){"use strict";var o="4.7.1";let s,l,u={now:typeof performance!="undefined"&&performance&&performance.now?performance.now.bind(performance):Date.now.bind(Date),frameAsync:ue=>new Promise((w,B)=>{let Q=requestAnimationFrame(w);ue.signal.addEventListener("abort",()=>{cancelAnimationFrame(Q),B(a.c())})}),getImageData(ue,w=0){return this.getImageCanvasContext(ue).getImageData(-w,-w,ue.width+2*w,ue.height+2*w)},getImageCanvasContext(ue){let w=window.document.createElement("canvas"),B=w.getContext("2d",{willReadFrequently:!0});if(!B)throw new Error("failed to create canvas 2d context");return w.width=ue.width,w.height=ue.height,B.drawImage(ue,0,0,ue.width,ue.height),B},resolveURL:ue=>(s||(s=document.createElement("a")),s.href=ue,s.href),hardwareConcurrency:typeof navigator!="undefined"&&navigator.hardwareConcurrency||4,get prefersReducedMotion(){return!!matchMedia&&(l==null&&(l=matchMedia("(prefers-reduced-motion: reduce)")),l.matches)}};class c{static testProp(w){if(!c.docStyle)return w[0];for(let B=0;B<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&&(_?b(ue):h=ue)}},h,d,v=!1,_=!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,_=!0},d.onerror=()=>{v=!0,h=null},d.src="data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA="),function(ue){let w,B,Q,ee;ue.resetRequestQueue=()=>{w=[],B=0,Q=0,ee={}},ue.addThrottleControl=ot=>{let Tt=Q++;return ee[Tt]=ot,Tt},ue.removeThrottleControl=ot=>{delete ee[ot],qe()},ue.getImage=(ot,Tt,Yt=!0)=>new Promise((Kt,xr)=>{f.supported&&(ot.headers||(ot.headers={}),ot.headers.accept="image/webp,*/*"),a.e(ot,{type:"image"}),w.push({abortController:Tt,requestParameters:ot,supportImageRefresh:Yt,state:"queued",onError:Ir=>{xr(Ir)},onSuccess:Ir=>{Kt(Ir)}}),qe()});let le=ot=>a._(this,void 0,void 0,function*(){ot.state="running";let{requestParameters:Tt,supportImageRefresh:Yt,onError:Kt,onSuccess:xr,abortController:Ir}=ot,ve=Yt===!1&&!a.i(self)&&!a.g(Tt.url)&&(!Tt.headers||Object.keys(Tt.headers).reduce((Be,et)=>Be&&et==="accept",!0));B++;let be=ve?Xe(Tt,Ir):a.m(Tt,Ir);try{let Be=yield be;delete ot.abortController,ot.state="completed",Be.data instanceof HTMLImageElement||a.b(Be.data)?xr(Be):Be.data&&xr({data:yield(De=Be.data,typeof createImageBitmap=="function"?a.d(De):a.f(De)),cacheControl:Be.cacheControl,expires:Be.expires})}catch(Be){delete ot.abortController,Kt(Be)}finally{B--,qe()}var De}),qe=()=>{let ot=(()=>{for(let Tt of Object.keys(ee))if(ee[Tt]())return!0;return!1})()?a.a.MAX_PARALLEL_IMAGE_REQUESTS_PER_FRAME:a.a.MAX_PARALLEL_IMAGE_REQUESTS;for(let Tt=B;Tt<ot&&w.length>0;Tt++){let Yt=w.shift();Yt.abortController.signal.aborted?Tt--:le(Yt)}},Xe=(ot,Tt)=>new Promise((Yt,Kt)=>{let xr=new Image,Ir=ot.url,ve=ot.credentials;ve&&ve==="include"?xr.crossOrigin="use-credentials":(ve&&ve==="same-origin"||!a.s(Ir))&&(xr.crossOrigin="anonymous"),Tt.signal.addEventListener("abort",()=>{xr.src="",Kt(a.c())}),xr.fetchPriority="high",xr.onload=()=>{xr.onerror=xr.onload=null,Yt({data:xr})},xr.onerror=()=>{xr.onerror=xr.onload=null,Tt.signal.aborted||Kt(new Error("Could not load image. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."))},xr.src=Ir})}(p||(p={})),p.resetRequestQueue();class k{constructor(w){this._transformRequestFn=w}transformRequest(w,B){return this._transformRequestFn&&this._transformRequestFn(w,B)||{url:w}}setTransformRequest(w){this._transformRequestFn=w}}function E(ue){var w=new a.A(3);return w[0]=ue[0],w[1]=ue[1],w[2]=ue[2],w}var S,L=function(ue,w,B){return ue[0]=w[0]-B[0],ue[1]=w[1]-B[1],ue[2]=w[2]-B[2],ue};S=new a.A(3),a.A!=Float32Array&&(S[0]=0,S[1]=0,S[2]=0);var x=function(ue){var w=ue[0],B=ue[1];return w*w+B*B};function C(ue){let w=[];if(typeof ue=="string")w.push({id:"default",url:ue});else if(ue&&ue.length>0){let B=[];for(let{id:Q,url:ee}of ue){let le=`${Q}${ee}`;B.indexOf(le)===-1&&(B.push(le),w.push({id:Q,url:ee}))}}return w}function M(ue,w,B){let Q=ue.split("?");return Q[0]+=`${w}${B}`,Q.join("?")}(function(){var ue=new a.A(2);a.A!=Float32Array&&(ue[0]=0,ue[1]=0)})();class g{constructor(w,B,Q,ee){this.context=w,this.format=Q,this.texture=w.gl.createTexture(),this.update(B,ee)}update(w,B,Q){let{width:ee,height:le}=w,qe=!(this.size&&this.size[0]===ee&&this.size[1]===le||Q),{context:Xe}=this,{gl:ot}=Xe;if(this.useMipmap=!!(B&&B.useMipmap),ot.bindTexture(ot.TEXTURE_2D,this.texture),Xe.pixelStoreUnpackFlipY.set(!1),Xe.pixelStoreUnpack.set(1),Xe.pixelStoreUnpackPremultiplyAlpha.set(this.format===ot.RGBA&&(!B||B.premultiply!==!1)),qe)this.size=[ee,le],w instanceof HTMLImageElement||w instanceof HTMLCanvasElement||w instanceof HTMLVideoElement||w instanceof ImageData||a.b(w)?ot.texImage2D(ot.TEXTURE_2D,0,this.format,this.format,ot.UNSIGNED_BYTE,w):ot.texImage2D(ot.TEXTURE_2D,0,this.format,ee,le,0,this.format,ot.UNSIGNED_BYTE,w.data);else{let{x:Tt,y:Yt}=Q||{x:0,y:0};w instanceof HTMLImageElement||w instanceof HTMLCanvasElement||w instanceof HTMLVideoElement||w instanceof ImageData||a.b(w)?ot.texSubImage2D(ot.TEXTURE_2D,0,Tt,Yt,ot.RGBA,ot.UNSIGNED_BYTE,w):ot.texSubImage2D(ot.TEXTURE_2D,0,Tt,Yt,ee,le,ot.RGBA,ot.UNSIGNED_BYTE,w.data)}this.useMipmap&&this.isSizePowerOfTwo()&&ot.generateMipmap(ot.TEXTURE_2D)}bind(w,B,Q){let{context:ee}=this,{gl:le}=ee;le.bindTexture(le.TEXTURE_2D,this.texture),Q!==le.LINEAR_MIPMAP_NEAREST||this.isSizePowerOfTwo()||(Q=le.LINEAR),w!==this.filter&&(le.texParameteri(le.TEXTURE_2D,le.TEXTURE_MAG_FILTER,w),le.texParameteri(le.TEXTURE_2D,le.TEXTURE_MIN_FILTER,Q||w),this.filter=w),B!==this.wrap&&(le.texParameteri(le.TEXTURE_2D,le.TEXTURE_WRAP_S,B),le.texParameteri(le.TEXTURE_2D,le.TEXTURE_WRAP_T,B),this.wrap=B)}isSizePowerOfTwo(){return this.size[0]===this.size[1]&&Math.log(this.size[0])/Math.LN2%1==0}destroy(){let{gl:w}=this.context;w.deleteTexture(this.texture),this.texture=null}}function P(ue){let{userImage:w}=ue;return!!(w&&w.render&&w.render())&&(ue.data.replace(new Uint8Array(w.data.buffer)),!0)}class T extends a.E{constructor(){super(),this.images={},this.updatedImages={},this.callbackDispatchedThisFrame={},this.loaded=!1,this.requestors=[],this.patterns={},this.atlasImage=new a.R({width:1,height:1}),this.dirty=!0}isLoaded(){return this.loaded}setLoaded(w){if(this.loaded!==w&&(this.loaded=w,w)){for(let{ids:B,promiseResolve:Q}of this.requestors)Q(this._getImagesForIds(B));this.requestors=[]}}getImage(w){let B=this.images[w];if(B&&!B.data&&B.spriteData){let Q=B.spriteData;B.data=new a.R({width:Q.width,height:Q.height},Q.context.getImageData(Q.x,Q.y,Q.width,Q.height).data),B.spriteData=null}return B}addImage(w,B){if(this.images[w])throw new Error(`Image id ${w} already exist, use updateImage instead`);this._validate(w,B)&&(this.images[w]=B)}_validate(w,B){let Q=!0,ee=B.data||B.spriteData;return this._validateStretch(B.stretchX,ee&&ee.width)||(this.fire(new a.j(new Error(`Image "${w}" has invalid "stretchX" value`))),Q=!1),this._validateStretch(B.stretchY,ee&&ee.height)||(this.fire(new a.j(new Error(`Image "${w}" has invalid "stretchY" value`))),Q=!1),this._validateContent(B.content,B)||(this.fire(new a.j(new Error(`Image "${w}" has invalid "content" value`))),Q=!1),Q}_validateStretch(w,B){if(!w)return!0;let Q=0;for(let ee of w){if(ee[0]<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,Yt=Tt.width,Kt=Tt.height;a.R.copy(Tt,ee,{x:0,y:0},{x:Xe,y:ot},{width:Yt,height:Kt}),a.R.copy(Tt,ee,{x:0,y:Kt-1},{x:Xe,y:ot-1},{width:Yt,height:1}),a.R.copy(Tt,ee,{x:0,y:0},{x:Xe,y:ot+Kt},{width:Yt,height:1}),a.R.copy(Tt,ee,{x:Yt-1,y:0},{x:Xe-1,y:ot},{width:1,height:Kt}),a.R.copy(Tt,ee,{x:0,y:0},{x:Xe+Yt,y:ot},{width:1,height:Kt})}this.dirty=!0}beginFrame(){this.callbackDispatchedThisFrame={}}dispatchRenderCallbacks(w){for(let B of w){if(this.callbackDispatchedThisFrame[B])continue;this.callbackDispatchedThisFrame[B]=!0;let Q=this.getImage(B);Q||a.w(`Image with ID: "${B}" was not found`),P(Q)&&this.updateImage(B,Q)}}}let z=1e20;function O(ue,w,B,Q,ee,le,qe,Xe,ot){for(let Tt=w;Tt<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 Yt=Xe*Xe;do{let Kt=le[ot];Tt=(ee[Xe]-ee[Kt]+Yt-Kt*Kt)/(Xe-Kt)/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],Yt=Xe-Tt;ue[w+Xe*B]=ee[Tt]+Yt*Yt}}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,Yt=ot+2*this.buffer,Kt=Math.max(Tt*Yt,0),xr=new Uint8ClampedArray(Kt),Ir={data:xr,width:Tt,height:Yt,glyphWidth:Xe,glyphHeight:ot,glyphTop:qe,glyphLeft:0,glyphAdvance:w};if(Xe===0||ot===0)return Ir;let{ctx:ve,buffer:be,gridInner:De,gridOuter:Be}=this;ve.clearRect(be,be,Xe,ot),ve.fillText(ue,be,be+qe);let et=ve.getImageData(be,be,Xe,ot);Be.fill(z,0,Kt),De.fill(0,0,Kt);for(let We=0;We<ot;We++)for(let it=0;it<Xe;it++){let Ft=et.data[4*(We*Xe+it)+3]/255;if(Ft===0)continue;let Ht=(We+be)*Tt+it+be;if(Ft===1)Be[Ht]=0,De[Ht]=z;else{let tr=.5-Ft;Be[Ht]=tr>0?tr*tr:0,De[Ht]=tr<0?tr*tr:0}}O(Be,0,0,Tt,Yt,Tt,this.f,this.v,this.z),O(De,be,be,Xe,ot,Tt,this.f,this.v,this.z);for(let We=0;We<Kt;We++){let it=Math.sqrt(Be[We])-Math.sqrt(De[We]);xr[We]=Math.round(255-255*(it/this.radius+this.cutoff))}return Ir}};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 j;class N extends a.E{constructor(w){super(),j=j||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(j),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 H=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 te extends a.E{constructor(w){super(),this._transitionable=new a.T(H),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 Yt=w[Tt];le=ot*Q,ot+=Yt,qe=ot*Q,ee.push({left:le,right:qe,isDash:Xe,zeroLength:Yt===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 Yt=Math.abs(Tt-ot.left),Kt=Math.abs(Tt-ot.right),xr=Math.min(Yt,Kt),Ir,ve=le/Q*(ee+1);if(ot.isDash){let be=ee-Math.abs(ve);Ir=Math.sqrt(xr*xr+be*be)}else Ir=ee-Math.sqrt(xr*xr+ve*ve);this.data[qe+Tt]=Math.max(0,Math.min(255,Ir+128))}}}addRegularDash(w){for(let Xe=w.length-1;Xe>=0;--Xe){let ot=w[Xe],Tt=w[Xe+1];ot.zeroLength?w.splice(Xe,1):Tt&&Tt.isDash===ot.isDash&&(Tt.left=ot.left,w.splice(Xe,1))}let B=w[0],Q=w[w.length-1];B.isDash===Q.isDash&&(B.left=Q.left-this.width,Q.right=B.right+this.width);let ee=this.width*this.nextRow,le=0,qe=w[le];for(let Xe=0;Xe<this.width;Xe++){Xe/qe.right>1&&(qe=w[++le]);let ot=Math.abs(Xe-qe.left),Tt=Math.abs(Xe-qe.right),Yt=Math.min(ot,Tt);this.data[ee+Xe]=Math.max(0,Math.min(255,(qe.isDash?Yt:-Yt)+128))}}addDash(w,B){let Q=B?7:0,ee=2*Q+1;if(this.nextRow+ee>this.height)return a.w("LineAtlas out of space"),null;let le=0;for(let Xe=0;Xe<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 Ee{constructor(){this.active={}}acquire(w){if(!this.workers)for(this.workers=[];this.workers.length<Ee.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 Ce=Math.floor(u.hardwareConcurrency/2),me,ie;function Se(){return me||(me=new Ee),me}Ee.workerCount=a.C(globalThis)?Math.max(Math.min(Ce,3),1):1;class Le{constructor(w,B){this.workerPool=w,this.actors=[],this.currentActor=0,this.id=B;let Q=this.workerPool.acquire(B);for(let ee=0;ee<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 Fe(ue,w){let B=a.H();return a.J(B,B,[1,1,0]),a.K(B,B,[.5*ue.width,.5*ue.height,1]),a.L(B,B,ue.calculatePosMatrix(w.toUnwrapped()))}function Pe(ue,w,B,Q,ee,le){let qe=function(Kt,xr,Ir){if(Kt)for(let ve of Kt){let be=xr[ve];if(be&&be.source===Ir&&be.type==="fill-extrusion")return!0}else for(let ve in xr){let be=xr[ve];if(be.source===Ir&&be.type==="fill-extrusion")return!0}return!1}(ee&&ee.layers,w,ue.id),Xe=le.maxPitchScaleFactor(),ot=ue.tilesIn(Q,Xe,qe);ot.sort(ge);let Tt=[];for(let Kt of ot)Tt.push({wrappedTileID:Kt.tileID.wrapped().key,queryResults:Kt.tile.queryRenderedFeatures(w,B,ue._state,Kt.queryGeometry,Kt.cameraQueryGeometry,Kt.scale,ee,le,Xe,Fe(ue.transform,Kt.tileID))});let Yt=function(Kt){let xr={},Ir={};for(let ve of Kt){let be=ve.queryResults,De=ve.wrappedTileID,Be=Ir[De]=Ir[De]||{};for(let et in be){let We=be[et],it=Be[et]=Be[et]||{},Ft=xr[et]=xr[et]||[];for(let Ht of We)it[Ht.featureIndex]||(it[Ht.featureIndex]=!0,Ft.push(Ht))}}return xr}(Tt);for(let Kt in Yt)Yt[Kt].forEach(xr=>{let Ir=xr.feature,ve=ue.getFeatureState(Ir.layer["source-layer"],Ir.id);Ir.source=Ir.layer.source,Ir.layer["source-layer"]&&(Ir.sourceLayer=Ir.layer["source-layer"]),Ir.state=ve});return Yt}function ge(ue,w){let B=ue.tileID,Q=w.tileID;return B.overscaledZ-Q.overscaledZ||B.canonical.y-Q.canonical.y||B.wrap-Q.wrap||B.canonical.x-Q.canonical.x}function Re(ue,w,B){return a._(this,void 0,void 0,function*(){let Q=ue;if(ue.url?Q=(yield a.h(w.transformRequest(ue.url,"Source"),B)).data:yield u.frameAsync(B),!Q)return null;let ee=a.M(a.e(Q,ue),["tiles","minzoom","maxzoom","attribution","bounds","scheme","tileSize","encoding"]);return"vector_layers"in Q&&Q.vector_layers&&(ee.vectorLayerIds=Q.vector_layers.map(le=>le.id)),ee})}class ce{constructor(w,B){w&&(B?this.setSouthWest(w).setNorthEast(B):Array.isArray(w)&&(w.length===4?this.setSouthWest([w[0],w[1]]).setNorthEast([w[2],w[3]]):this.setSouthWest(w[0]).setNorthEast(w[1])))}setNorthEast(w){return this._ne=w instanceof a.N?new a.N(w.lng,w.lat):a.N.convert(w),this}setSouthWest(w){return this._sw=w instanceof a.N?new a.N(w.lng,w.lat):a.N.convert(w),this}extend(w){let B=this._sw,Q=this._ne,ee,le;if(w instanceof a.N)ee=w,le=w;else{if(!(w instanceof ce))return Array.isArray(w)?w.length===4||w.every(Array.isArray)?this.extend(ce.convert(w)):this.extend(a.N.convert(w)):w&&("lng"in w||"lon"in w)&&"lat"in w?this.extend(a.N.convert(w)):this;if(ee=w._sw,le=w._ne,!ee||!le)return this}return B||Q?(B.lng=Math.min(ee.lng,B.lng),B.lat=Math.min(ee.lat,B.lat),Q.lng=Math.max(le.lng,Q.lng),Q.lat=Math.max(le.lat,Q.lat)):(this._sw=new a.N(ee.lng,ee.lat),this._ne=new a.N(le.lng,le.lat)),this}getCenter(){return new a.N((this._sw.lng+this._ne.lng)/2,(this._sw.lat+this._ne.lat)/2)}getSouthWest(){return this._sw}getNorthEast(){return this._ne}getNorthWest(){return new a.N(this.getWest(),this.getNorth())}getSouthEast(){return new a.N(this.getEast(),this.getSouth())}getWest(){return this._sw.lng}getSouth(){return this._sw.lat}getEast(){return this._ne.lng}getNorth(){return this._ne.lat}toArray(){return[this._sw.toArray(),this._ne.toArray()]}toString(){return`LngLatBounds(${this._sw.toString()}, ${this._ne.toString()})`}isEmpty(){return!(this._sw&&this._ne)}contains(w){let{lng:B,lat:Q}=a.N.convert(w),ee=this._sw.lng<=B&&B<=this._ne.lng;return this._sw.lng>this._ne.lng&&(ee=this._sw.lng>=B&&B>=this._ne.lng),this._sw.lat<=Q&&Q<=this._ne.lat&&ee}static convert(w){return w instanceof ce?w:w&&new ce(w)}static fromLngLat(w,B=0){let Q=360*B/40075017,ee=Q/Math.cos(Math.PI/180*w.lat);return new ce(new a.N(w.lng-ee,w.lat-Q),new a.N(w.lng+ee,w.lat+Q))}adjustAntiMeridian(){let w=new a.N(this._sw.lng,this._sw.lat),B=new a.N(this._ne.lng,this._ne.lat);return new ce(w,w.lng>B.lng?new a.N(B.lng+360,B.lat):B)}}class Ze{constructor(w,B,Q){this.bounds=ce.convert(this.validateBounds(w)),this.minzoom=B||0,this.maxzoom=Q||24}validateBounds(w){return Array.isArray(w)&&w.length===4?[Math.max(-180,w[0]),Math.max(-90,w[1]),Math.min(180,w[2]),Math.min(90,w[3])]:[-180,-90,180,90]}contains(w){let B=Math.pow(2,w.z),Q=Math.floor(a.O(this.bounds.getWest())*B),ee=Math.floor(a.Q(this.bounds.getNorth())*B),le=Math.ceil(a.O(this.bounds.getEast())*B),qe=Math.ceil(a.Q(this.bounds.getSouth())*B);return w.x>=Q&&w.x<le&&w.y>=ee&&w.y<qe}}class ut extends a.E{constructor(w,B,Q,ee){if(super(),this.id=w,this.dispatcher=Q,this.type="vector",this.minzoom=0,this.maxzoom=22,this.scheme="xyz",this.tileSize=512,this.reparseOverscaled=!0,this.isTileClipped=!0,this._loaded=!1,a.e(this,a.M(B,["url","scheme","tileSize","promoteId"])),this._options=a.e({type:"vector"},B),this._collectResourceTiming=B.collectResourceTiming,this.tileSize!==512)throw new Error("vector tile sources must have a tileSize of 512");this.setEventedParent(ee)}load(){return a._(this,void 0,void 0,function*(){this._loaded=!1,this.fire(new a.k("dataloading",{dataType:"source"})),this._tileJSONRequest=new AbortController;try{let w=yield Re(this._options,this.map._requestManager,this._tileJSONRequest);this._tileJSONRequest=null,this._loaded=!0,this.map.style.sourceCaches[this.id].clearTiles(),w&&(a.e(this,w),w.bounds&&(this.tileBounds=new 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 Re(this._options,this.map._requestManager,this._tileJSONRequest);this._tileJSONRequest=null,this._loaded=!0,w&&(a.e(this,w),w.bounds&&(this.tileBounds=new Ze(w.bounds,this.minzoom,this.maxzoom)),this.fire(new a.k("data",{dataType:"source",sourceDataType:"metadata"})),this.fire(new a.k("data",{dataType:"source",sourceDataType:"content"})))}catch(w){this._tileJSONRequest=null,this.fire(new a.j(w))}})}loaded(){return this._loaded}onAdd(w){this.map=w,this.load()}onRemove(){this._tileJSONRequest&&(this._tileJSONRequest.abort(),this._tileJSONRequest=null)}setSourceProperty(w){this._tileJSONRequest&&(this._tileJSONRequest.abort(),this._tileJSONRequest=null),w(),this.load()}setTiles(w){return this.setSourceProperty(()=>{this._options.tiles=w}),this}setUrl(w){return this.setSourceProperty(()=>{this.url=w,this._options.url=w}),this}serialize(){return a.e({},this._options)}hasTile(w){return!this.tileBounds||this.tileBounds.contains(w.canonical)}loadTile(w){return a._(this,void 0,void 0,function*(){let B=w.tileID.canonical.url(this.tiles,this.map.getPixelRatio(),this.scheme);w.abortController=new AbortController;try{let Q=yield p.getImage(this.map._requestManager.transformRequest(B,"Tile"),w.abortController,this.map._refreshExpiredTiles);if(delete w.abortController,w.aborted)return void(w.state="unloaded");if(Q&&Q.data){this.map._refreshExpiredTiles&&Q.cacheControl&&Q.expires&&w.setExpiryData({cacheControl:Q.cacheControl,expires:Q.expires});let ee=this.map.painter.context,le=ee.gl,qe=Q.data;w.texture=this.map.painter.getTileTexture(qe.width),w.texture?w.texture.update(qe,{useMipmap:!0}):(w.texture=new g(ee,qe,le.RGBA,{useMipmap:!0}),w.texture.bind(le.LINEAR,le.CLAMP_TO_EDGE,le.LINEAR_MIPMAP_NEAREST)),w.state="loaded"}}catch(Q){if(delete w.abortController,w.aborted)w.state="unloaded";else if(Q)throw w.state="errored",Q}})}abortTile(w){return a._(this,void 0,void 0,function*(){w.abortController&&(w.abortController.abort(),delete w.abortController)})}unloadTile(w){return a._(this,void 0,void 0,function*(){w.texture&&this.map.painter.saveTileTexture(w.texture)})}hasTransition(){return!1}}class Zt extends pt{constructor(w,B,Q,ee){super(w,B,Q,ee),this.type="raster-dem",this.maxzoom=22,this._options=a.e({type:"raster-dem"},B),this.encoding=B.encoding||"mapbox",this.redFactor=B.redFactor,this.greenFactor=B.greenFactor,this.blueFactor=B.blueFactor,this.baseShift=B.baseShift}loadTile(w){return a._(this,void 0,void 0,function*(){let B=w.tileID.canonical.url(this.tiles,this.map.getPixelRatio(),this.scheme),Q=this.map._requestManager.transformRequest(B,"Tile");w.neighboringTiles=this._getNeighboringTiles(w.tileID),w.abortController=new AbortController;try{let ee=yield p.getImage(Q,w.abortController,this.map._refreshExpiredTiles);if(delete w.abortController,w.aborted)return void(w.state="unloaded");if(ee&&ee.data){let le=ee.data;this.map._refreshExpiredTiles&&ee.cacheControl&&ee.expires&&w.setExpiryData({cacheControl:ee.cacheControl,expires:ee.expires});let qe=a.b(le)&&a.U()?le:yield this.readImageNow(le),Xe={type:this.type,uid:w.uid,source:this.id,rawImageData:qe,encoding:this.encoding,redFactor:this.redFactor,greenFactor:this.greenFactor,blueFactor:this.blueFactor,baseShift:this.baseShift};if(!w.actor||w.state==="expired"){w.actor=this.dispatcher.getActor();let ot=yield w.actor.sendAsync({type:"LDT",data:Xe});w.dem=ot,w.needsHillshadePrepare=!0,w.needsTerrainPrepare=!0,w.state="loaded"}}}catch(ee){if(delete w.abortController,w.aborted)w.state="unloaded";else if(ee)throw w.state="errored",ee}})}readImageNow(w){return a._(this,void 0,void 0,function*(){if(typeof VideoFrame!="undefined"&&a.V()){let B=w.width+2,Q=w.height+2;try{return new a.R({width:B,height:Q},yield a.W(w,-1,-1,B,Q))}catch(ee){}}return u.getImageData(w,1)})}_getNeighboringTiles(w){let B=w.canonical,Q=Math.pow(2,B.z),ee=(B.x-1+Q)%Q,le=B.x===0?w.wrap-1:w.wrap,qe=(B.x+1+Q)%Q,Xe=B.x+1===Q?w.wrap+1:w.wrap,ot={};return ot[new a.S(w.overscaledZ,le,B.z,ee,B.y).key]={backfilled:!1},ot[new a.S(w.overscaledZ,Xe,B.z,qe,B.y).key]={backfilled:!1},B.y>0&&(ot[new a.S(w.overscaledZ,le,B.z,ee,B.y-1).key]={backfilled:!1},ot[new a.S(w.overscaledZ,w.wrap,B.z,B.x,B.y-1).key]={backfilled:!1},ot[new a.S(w.overscaledZ,Xe,B.z,qe,B.y-1).key]={backfilled:!1}),B.y+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),Yt=Math.max(0,Math.floor(-Math.log(Tt)/Math.LN2)),Kt=Math.pow(2,Yt);return new a.a1(Yt,Math.floor((le+Xe)/2*Kt),Math.floor((qe+ot)/2*Kt))}(B),this.minzoom=this.maxzoom=this.tileID.z;let Q=B.map(ee=>this.tileID.getTilePoint(ee)._round());return this._boundsArray=new a.$,this._boundsArray.emplaceBack(Q[0].x,Q[0].y,0,0),this._boundsArray.emplaceBack(Q[1].x,Q[1].y,a.X,0),this._boundsArray.emplaceBack(Q[3].x,Q[3].y,0,a.X),this._boundsArray.emplaceBack(Q[2].x,Q[2].y,a.X,a.X),this.boundsBuffer&&(this.boundsBuffer.destroy(),delete this.boundsBuffer),this.fire(new a.k("data",{dataType:"source",sourceDataType:"content"})),this}prepare(){if(Object.keys(this.tiles).length===0||!this.image)return;let w=this.map.painter.context,B=w.gl;this.boundsBuffer||(this.boundsBuffer=w.createVertexBuffer(this._boundsArray,lt.members)),this.boundsSegments||(this.boundsSegments=a.a0.simpleSegment(0,0,4,2)),this.texture||(this.texture=new g(w,this.image,B.RGBA),this.texture.bind(B.LINEAR,B.CLAMP_TO_EDGE));let Q=!1;for(let ee in this.tiles){let le=this.tiles[ee];le.state!=="loaded"&&(le.state="loaded",le.texture=this.texture,Q=!0)}Q&&this.fire(new a.k("data",{dataType:"source",sourceDataType:"idle",sourceId:this.id}))}loadTile(w){return a._(this,void 0,void 0,function*(){this.tileID&&this.tileID.equals(w.tileID.canonical)?(this.tiles[String(w.tileID.wrap)]=w,w.buckets={}):w.state="errored"})}serialize(){return{type:"image",url:this.options.url,coordinates:this.coordinates}}hasTransition(){return!1}}class Nt extends Gt{constructor(w,B,Q,ee){super(w,B,Q,ee),this.roundZoom=!0,this.type="video",this.options=B}load(){return a._(this,void 0,void 0,function*(){this._loaded=!1;let w=this.options;this.urls=[];for(let B of w.urls)this.urls.push(this.map._requestManager.transformRequest(B,"Source").url);try{let B=yield a.a3(this.urls);if(this._loaded=!0,!B)return;this.video=B,this.video.loop=!0,this.video.addEventListener("playing",()=>{this.map.triggerRepaint()}),this.map&&this.video.play(),this._finishLoading()}catch(B){this.fire(new a.j(B))}})}pause(){this.video&&this.video.pause()}play(){this.video&&this.video.play()}seek(w){if(this.video){let B=this.video.seekable;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 Jt extends Gt{constructor(w,B,Q,ee){super(w,B,Q,ee),B.coordinates?Array.isArray(B.coordinates)&&B.coordinates.length===4&&!B.coordinates.some(le=>!Array.isArray(le)||le.length!==2||le.some(qe=>typeof qe!="number"))||this.fire(new a.j(new a.a2(`sources.${w}`,null,'"coordinates" property must be an array of 4 longitude/latitude array pairs'))):this.fire(new a.j(new a.a2(`sources.${w}`,null,'missing required property "coordinates"'))),B.animate&&typeof B.animate!="boolean"&&this.fire(new a.j(new a.a2(`sources.${w}`,null,'optional "animate" property must be a boolean value'))),B.canvas?typeof B.canvas=="string"||B.canvas instanceof HTMLCanvasElement||this.fire(new a.j(new a.a2(`sources.${w}`,null,'"canvas" must be either a string representing the ID of the canvas element from which to read, or an HTMLCanvasElement instance'))):this.fire(new a.j(new a.a2(`sources.${w}`,null,'missing required property "canvas"'))),this.options=B,this.animate=B.animate===void 0||B.animate}load(){return a._(this,void 0,void 0,function*(){this._loaded=!0,this.canvas||(this.canvas=this.options.canvas instanceof HTMLCanvasElement?this.options.canvas:document.getElementById(this.options.canvas)),this.width=this.canvas.width,this.height=this.canvas.height,this._hasInvalidDimensions()?this.fire(new a.j(new Error("Canvas dimensions cannot be less than or equal to zero."))):(this.play=function(){this._playing=!0,this.map.triggerRepaint()},this.pause=function(){this._playing&&(this.prepare(),this._playing=!1)},this._finishLoading())})}getCanvas(){return this.canvas}onAdd(w){this.map=w,this.load(),this.canvas&&this.animate&&this.play()}onRemove(){this.pause()}prepare(){let w=!1;if(this.canvas.width!==this.width&&(this.width=this.canvas.width,w=!0),this.canvas.height!==this.height&&(this.height=this.canvas.height,w=!0),this._hasInvalidDimensions()||Object.keys(this.tiles).length===0)return;let B=this.map.painter.context,Q=B.gl;this.boundsBuffer||(this.boundsBuffer=B.createVertexBuffer(this._boundsArray,lt.members)),this.boundsSegments||(this.boundsSegments=a.a0.simpleSegment(0,0,4,2)),this.texture?(w||this._playing)&&this.texture.update(this.canvas,{premultiply:!0}):this.texture=new g(B,this.canvas,Q.RGBA,{premultiply:!0});let ee=!1;for(let le in this.tiles){let qe=this.tiles[le];qe.state!=="loaded"&&(qe.state="loaded",qe.texture=this.texture,ee=!0)}ee&&this.fire(new a.k("data",{dataType:"source",sourceDataType:"idle",sourceId:this.id}))}serialize(){return{type:"canvas",coordinates:this.coordinates}}hasTransition(){return this._playing}_hasInvalidDimensions(){for(let w of[this.canvas.width,this.canvas.height])if(isNaN(w)||w<=0)return!0;return!1}}let sr={},wr=ue=>{switch(ue){case"geojson":return st;case"image":return Gt;case"raster":return pt;case"raster-dem":return Zt;case"vector":return ut;case"video":return Nt;case"canvas":return Jt}return sr[ue]},cr="RTLPluginLoaded";class $e extends a.E{constructor(){super(...arguments),this.status="unavailable",this.url=null,this.dispatcher=Ae()}_syncState(w){return this.status=w,this.dispatcher.broadcast("SRPS",{pluginStatus:w,pluginURL:this.url}).catch(B=>{throw this.status="error",B})}getRTLTextPluginStatus(){return this.status}clearRTLTextPlugin(){this.status="unavailable",this.url=null}setRTLTextPlugin(w){return a._(this,arguments,void 0,function*(B,Q=!1){if(this.url)throw new Error("setRTLTextPlugin cannot be called multiple times.");if(this.url=u.resolveURL(B),!this.url)throw new Error(`requested url ${B} is invalid`);if(this.status==="unavailable"){if(!Q)return this._requestImport();this.status="deferred",this._syncState(this.status)}else if(this.status==="requested")return this._requestImport()})}_requestImport(){return a._(this,void 0,void 0,function*(){yield this._syncState("loading"),this.status="loaded",this.fire(new a.k(cr))})}lazyLoad(){this.status==="unavailable"?this.status="requested":this.status==="deferred"&&this._requestImport()}}let St=null;function Qt(){return St||(St=new $e),St}class Vt{constructor(w,B){this.timeAdded=0,this.fadeEndTime=0,this.tileID=w,this.uid=a.a4(),this.uses=0,this.tileSize=B,this.buckets={},this.expirationTime=null,this.queryPadding=0,this.hasSymbolBuckets=!1,this.hasRTLText=!1,this.dependencies={},this.rtt=[],this.rttCoords={},this.expiredRequestCount=0,this.state="loading"}registerFadeDuration(w){let B=w+this.timeAdded;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(Yt=>Yt.id===Tt)[0]));for(let Tt of ot)qe[Tt.id]=Xe}}return qe}(w.buckets,B.style),this.hasSymbolBuckets=!1;for(let ee in this.buckets){let le=this.buckets[ee];if(le instanceof a.a6){if(this.hasSymbolBuckets=!0,!Q)break;le.justReloaded=!0}}if(this.hasRTLText=!1,this.hasSymbolBuckets)for(let ee in this.buckets){let le=this.buckets[ee];if(le instanceof a.a6&&le.hasRTLText){this.hasRTLText=!0,Qt().lazyLoad();break}}this.queryPadding=0;for(let ee in this.buckets){let le=this.buckets[ee];this.queryPadding=Math.max(this.queryPadding,B.style.getLayer(ee).queryRadius(le))}w.imageAtlas&&(this.imageAtlas=w.imageAtlas),w.glyphAtlasImage&&(this.glyphAtlasImage=w.glyphAtlasImage)}else this.collisionBoxArray=new a.a5}unloadVectorData(){for(let w in this.buckets)this.buckets[w].destroy();this.buckets={},this.imageAtlasTexture&&this.imageAtlasTexture.destroy(),this.imageAtlas&&(this.imageAtlas=null),this.glyphAtlasTexture&&this.glyphAtlasTexture.destroy(),this.latestFeatureIndex=null,this.state="unloaded"}getBucket(w){return this.buckets[w.id]}upload(w){for(let Q in this.buckets){let ee=this.buckets[Q];ee.uploadPending()&&ee.upload(w)}let B=w.gl;this.imageAtlas&&!this.imageAtlas.uploaded&&(this.imageAtlasTexture=new g(w,this.imageAtlas.image,B.RGBA),this.imageAtlas.uploaded=!0),this.glyphAtlasImage&&(this.glyphAtlasTexture=new g(w,this.glyphAtlasImage,B.ALPHA),this.glyphAtlasImage=null)}prepare(w){this.imageAtlas&&this.imageAtlas.patchUpdatedImages(w,this.imageAtlasTexture)}queryRenderedFeatures(w,B,Q,ee,le,qe,Xe,ot,Tt,Yt){return this.latestFeatureIndex&&this.latestFeatureIndex.rawTileData?this.latestFeatureIndex.query({queryGeometry:ee,cameraQueryGeometry:le,scale:qe,tileSize:this.tileSize,pixelPosMatrix:Yt,transform:ot,params:Xe,queryPadding:this.queryPadding*Tt},w,B,Q):{}}querySourceFeatures(w,B){let Q=this.latestFeatureIndex;if(!Q||!Q.rawTileData)return;let ee=Q.loadVTLayers(),le=B&&B.sourceLayer?B.sourceLayer:"",qe=ee._geojsonTileLayer||ee[le];if(!qe)return;let Xe=a.a7(B&&B.filter),{z:ot,x:Tt,y:Yt}=this.tileID.canonical,Kt={z:ot,x:Tt,y:Yt};for(let xr=0;xr<qe.length;xr++){let Ir=qe.feature(xr);if(Xe.needGeometry){let De=a.a8(Ir,!0);if(!Xe.filter(new a.z(this.tileID.overscaledZ),De,this.tileID.canonical))continue}else if(!Xe.filter(new a.z(this.tileID.overscaledZ),Ir))continue;let ve=Q.getId(Ir,le),be=new a.a9(Ir,ot,Tt,Yt,ve);be.tile=Kt,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 _t{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 It{constructor(){this.state={},this.stateChanges={},this.deletedStates={}}updateState(w,B,Q){let ee=String(B);if(this.stateChanges[w]=this.stateChanges[w]||{},this.stateChanges[w][ee]=this.stateChanges[w][ee]||{},a.e(this.stateChanges[w][ee],Q),this.deletedStates[w]===null){this.deletedStates[w]={};for(let le in this.state[w])le!==ee&&(this.deletedStates[w][le]=null)}else if(this.deletedStates[w]&&this.deletedStates[w][ee]===null){this.deletedStates[w][ee]={};for(let le in this.state[w][ee])Q[le]||(this.deletedStates[w][ee][le]=null)}else for(let le in Q)this.deletedStates[w]&&this.deletedStates[w][ee]&&this.deletedStates[w][ee][le]===null&&delete this.deletedStates[w][ee][le]}removeFeatureState(w,B,Q){if(this.deletedStates[w]===null)return;let ee=String(B);if(this.deletedStates[w]=this.deletedStates[w]||{},Q&&B!==void 0)this.deletedStates[w][ee]!==null&&(this.deletedStates[w][ee]=this.deletedStates[w][ee]||{},this.deletedStates[w][ee][Q]=null);else if(B!==void 0)if(this.stateChanges[w]&&this.stateChanges[w][ee])for(Q in this.deletedStates[w][ee]={},this.stateChanges[w][ee])this.deletedStates[w][ee][Q]=null;else this.deletedStates[w][ee]=null;else this.deletedStates[w]=null}getState(w,B){let Q=String(B),ee=a.e({},(this.state[w]||{})[Q],(this.stateChanges[w]||{})[Q]);if(this.deletedStates[w]===null)return{};if(this.deletedStates[w]){let le=this.deletedStates[w][B];if(le===null)return{};for(let qe in le)delete ee[qe]}return ee}initializeTileState(w,B){w.setFeatureState(this.state,B)}coalesceChanges(w,B){let Q={};for(let ee in this.stateChanges){this.state[ee]=this.state[ee]||{};let le={};for(let qe in this.stateChanges[ee])this.state[ee][qe]||(this.state[ee][qe]={}),a.e(this.state[ee][qe],this.stateChanges[ee][qe]),le[qe]=this.state[ee][qe];Q[ee]=le}for(let ee in this.deletedStates){this.state[ee]=this.state[ee]||{};let le={};if(this.deletedStates[ee]===null)for(let qe in this.state[ee])le[qe]={},this.state[ee][qe]={};else for(let qe in this.deletedStates[ee]){if(this.deletedStates[ee][qe]===null)this.state[ee][qe]={};else for(let Xe of Object.keys(this.deletedStates[ee][qe]))delete this.state[ee][qe][Xe];le[qe]=this.state[ee][qe]}Q[ee]=Q[ee]||{},a.e(Q[ee],le)}if(this.stateChanges={},this.deletedStates={},Object.keys(Q).length!==0)for(let ee in w)w[ee].setFeatureState(Q,B)}}class mt extends a.E{constructor(w,B,Q){super(),this.id=w,this.dispatcher=Q,this.on("data",ee=>this._dataHandler(ee)),this.on("dataloading",()=>{this._sourceErrored=!1}),this.on("error",()=>{this._sourceErrored=this._source.loaded()}),this._source=((ee,le,qe,Xe)=>{let ot=new(wr(le.type))(ee,le,qe,Xe);if(ot.id!==ee)throw new Error(`Expected Source id to be ${ee} instead of ${ot.id}`);return ot})(w,B,Q,this),this._tiles={},this._cache=new _t(0,ee=>this._unloadTile(ee)),this._timers={},this._cacheTimers={},this._maxTileCacheSize=null,this._maxTileCacheZoomLevels=null,this._loadedParentTiles={},this._coveredTiles={},this._state=new It,this._didEmitContent=!1,this._updated=!1}onAdd(w){this.map=w,this._maxTileCacheSize=w?w._maxTileCacheSize:null,this._maxTileCacheZoomLevels=w?w._maxTileCacheZoomLevels:null,this._source&&this._source.onAdd&&this._source.onAdd(w)}onRemove(w){this.clearTiles(),this._source&&this._source.onRemove&&this._source.onRemove(w)}loaded(){if(this._sourceErrored)return!0;if(!this._sourceLoaded||!this._source.loaded())return!1;if(!(this.used===void 0&&this.usedForTerrain===void 0||this.used||this.usedForTerrain))return!0;if(!this._updated)return!1;for(let w in this._tiles){let B=this._tiles[w];if(B.state!=="loaded"&&B.state!=="errored")return!1}return!0}getSource(){return this._source}pause(){this._paused=!0}resume(){if(!this._paused)return;let w=this._shouldReloadOnResume;this._paused=!1,this._shouldReloadOnResume=!1,w&&this.reload(),this.transform&&this.update(this.transform,this.terrain)}_loadTile(w,B,Q){return a._(this,void 0,void 0,function*(){try{yield this._source.loadTile(w),this._tileLoaded(w,B,Q)}catch(ee){w.state="errored",ee.status!==404?this._source.fire(new a.j(ee,{tile:w})):this.update(this.transform,this.terrain)}})}_unloadTile(w){this._source.unloadTile&&this._source.unloadTile(w)}_abortTile(w){this._source.abortTile&&this._source.abortTile(w),this._source.fire(new a.k("dataabort",{tile:w,coord:w.tileID,dataType:"source"}))}serialize(){return this._source.serialize()}prepare(w){this._source.prepare&&this._source.prepare(),this._state.coalesceChanges(this._tiles,this.map?this.map.painter:null);for(let B in this._tiles){let Q=this._tiles[B];Q.upload(w),Q.prepare(this.map.style.imageManager)}}getIds(){return Object.values(this._tiles).map(w=>w.tileID).sort(er).map(w=>w.key)}getRenderableIds(w){let B=[];for(let Q in this._tiles)this._isIdRenderable(Q,w)&&B.push(this._tiles[Q]);return w?B.sort((Q,ee)=>{let le=Q.tileID,qe=ee.tileID,Xe=new a.P(le.canonical.x,le.canonical.y)._rotate(this.transform.angle),ot=new a.P(qe.canonical.x,qe.canonical.y)._rotate(this.transform.angle);return le.overscaledZ-qe.overscaledZ||ot.y-Xe.y||ot.x-Xe.x}).map(Q=>Q.tileID.key):B.map(Q=>Q.tileID).sort(er).map(Q=>Q.key)}hasRenderableParent(w){let B=this.findLoadedParent(w,0);return!!B&&this._isIdRenderable(B.tileID.key)}_isIdRenderable(w,B){return this._tiles[w]&&this._tiles[w].hasData()&&!this._coveredTiles[w]&&(B||!this._tiles[w].holdingForFade())}reload(){if(this._paused)this._shouldReloadOnResume=!0;else{this._cache.reset();for(let w in this._tiles)this._tiles[w].state!=="errored"&&this._reloadTile(w,"reloading")}}_reloadTile(w,B){return a._(this,void 0,void 0,function*(){let Q=this._tiles[w];Q&&(Q.state!=="loading"&&(Q.state=B),yield this._loadTile(Q,w,B))})}_tileLoaded(w,B,Q){w.timeAdded=u.now(),Q==="expired"&&(w.refreshedUponExpiration=!0),this._setTileReloadTimer(B,w),this.getSource().type==="raster-dem"&&w.dem&&this._backfillDEM(w),this._state.initializeTileState(w,this.map?this.map.painter:null),w.aborted||this._source.fire(new a.k("data",{dataType:"source",tile:w,coord:w.tileID}))}_backfillDEM(w){let B=this.getRenderableIds();for(let ee=0;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),Yt=u.now();for(let Kt of Tt){let xr=w[Kt],Ir=this._tiles[Kt];if(!Ir||Ir.fadeEndTime!==0&&Ir.fadeEndTime<=Yt)continue;let ve=this.findLoadedParent(xr,B),be=this.findLoadedSibling(xr),De=ve||be||null;De&&(this._addTile(De.tileID),Xe[De.tileID.key]=De.tileID),ot[Kt]=xr}this._retainLoadedChildren(ot,ee,Q,w);for(let Kt in Xe)w[Kt]||(this._coveredTiles[Kt]=!0,w[Kt]=Xe[Kt]);if(qe){let Kt={},xr={};for(let Ir of le)this._tiles[Ir.key].hasData()?Kt[Ir.key]=Ir:xr[Ir.key]=Ir;for(let Ir in xr){let ve=xr[Ir].children(this._source.maxzoom);this._tiles[ve[0].key]&&this._tiles[ve[1].key]&&this._tiles[ve[2].key]&&this._tiles[ve[3].key]&&(Kt[ve[0].key]=w[ve[0].key]=ve[0],Kt[ve[1].key]=w[ve[1].key]=ve[1],Kt[ve[2].key]=w[ve[2].key]=ve[2],Kt[ve[3].key]=w[ve[3].key]=ve[3],delete xr[Ir])}for(let Ir in xr){let ve=xr[Ir],be=this.findLoadedParent(ve,this._source.minzoom),De=this.findLoadedSibling(ve),Be=be||De||null;if(Be){Kt[Be.tileID.key]=w[Be.tileID.key]=Be.tileID;for(let et in Kt)Kt[et].isChildOf(Be.tileID)&&delete Kt[et]}}for(let Ir in this._tiles)Kt[Ir]||(this._coveredTiles[Ir]=!0)}}update(w,B){if(!this._sourceLoaded||this._paused)return;let Q;this.transform=w,this.terrain=B,this.updateCacheSize(w),this.handleWrapJump(this.transform.center.lng),this._coveredTiles={},this.used||this.usedForTerrain?this._source.tileID?Q=w.getVisibleUnwrappedCoordinates(this._source.tileID).map(Yt=>new a.S(Yt.canonical.z,Yt.wrap,Yt.canonical.z,Yt.canonical.x,Yt.canonical.y)):(Q=w.coveringTiles({tileSize:this.usedForTerrain?this.tileSize:this._source.tileSize,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:!this.usedForTerrain&&this._source.roundZoom,reparseOverscaled:this._source.reparseOverscaled,terrain:B}),this._source.hasTile&&(Q=Q.filter(Yt=>this._source.hasTile(Yt)))):Q=[];let ee=w.coveringZoomLevel(this._source),le=Math.max(ee-mt.maxOverzooming,this._source.minzoom),qe=Math.max(ee+mt.maxUnderzooming,this._source.minzoom);if(this.usedForTerrain){let Yt={};for(let Kt of Q)if(Kt.canonical.z>this._source.minzoom){let xr=Kt.scaledTo(Kt.canonical.z-1);Yt[xr.key]=xr;let Ir=Kt.scaledTo(Math.max(this._source.minzoom,Math.min(Kt.canonical.z,5)));Yt[Ir.key]=Ir}Q=Q.concat(Object.values(Yt))}let Xe=Q.length===0&&!this._updated&&this._didEmitContent;this._updated=!0,Xe&&this.fire(new a.k("data",{sourceDataType:"idle",dataType:"source",sourceId:this.id}));let ot=this._updateRetainedTiles(Q,ee);lr(this._source.type)&&this._updateCoveredAndRetainedTiles(ot,le,qe,ee,Q,B);for(let Yt in ot)this._tiles[Yt].clearFadeHold();let Tt=a.ab(this._tiles,ot);for(let Yt of Tt){let Kt=this._tiles[Yt];Kt.hasSymbolBuckets&&!Kt.holdingForFade()?Kt.setHoldDuration(this.map._fadeDuration):Kt.hasSymbolBuckets&&!Kt.symbolFadeFinished()||this._removeTile(Yt)}this._updateLoadedParentTileCache(),this._updateLoadedSiblingTileCache()}releaseSymbolFadeTiles(){for(let w in this._tiles)this._tiles[w].holdingForFade()&&this._removeTile(w)}_updateRetainedTiles(w,B){var Q;let ee={},le={},qe=Math.max(B-mt.maxOverzooming,this._source.minzoom),Xe=Math.max(B+mt.maxUnderzooming,this._source.minzoom),ot={};for(let Tt of w){let Yt=this._addTile(Tt);ee[Tt.key]=Tt,Yt.hasData()||B<this._source.maxzoom&&(ot[Tt.key]=Tt)}this._retainLoadedChildren(ot,B,Xe,ee);for(let Tt of w){let Yt=this._tiles[Tt.key];if(Yt.hasData())continue;if(B+1>this._source.maxzoom){let xr=Tt.children(this._source.maxzoom)[0],Ir=this.getTile(xr);if(Ir&&Ir.hasData()){ee[xr.key]=xr;continue}}else{let xr=Tt.children(this._source.maxzoom);if(ee[xr[0].key]&&ee[xr[1].key]&&ee[xr[2].key]&&ee[xr[3].key])continue}let Kt=Yt.wasRequested();for(let xr=Tt.overscaledZ-1;xr>=qe;--xr){let Ir=Tt.scaledTo(xr);if(le[Ir.key])break;if(le[Ir.key]=!0,Yt=this.getTile(Ir),!Yt&&Kt&&(Yt=this._addTile(Ir)),Yt){let ve=Yt.hasData();if((ve||!(!((Q=this.map)===null||Q===void 0)&&Q.cancelPendingTileRequestsWhileZooming)||Kt)&&(ee[Ir.key]=Ir),Kt=Yt.wasRequested(),ve)break}}}return ee}_updateLoadedParentTileCache(){this._loadedParentTiles={};for(let w in this._tiles){let B=[],Q,ee=this._tiles[w].tileID;for(;ee.overscaledZ>0;){if(ee.key in this._loadedParentTiles){Q=this._loadedParentTiles[ee.key];break}B.push(ee.key);let le=ee.scaledTo(ee.overscaledZ-1);if(Q=this._getLoadedTile(le),Q)break;ee=le}for(let le of B)this._loadedParentTiles[le]=Q}}_updateLoadedSiblingTileCache(){this._loadedSiblingTiles={};for(let w in this._tiles){let B=this._tiles[w].tileID,Q=this._getLoadedTile(B);this._loadedSiblingTiles[B.key]=Q}}_addTile(w){let B=this._tiles[w.key];if(B)return B;B=this._cache.getAndRemove(w),B&&(this._setTileReloadTimer(w.key,B),B.tileID=w,this._state.initializeTileState(B,this.map?this.map.painter:null),this._cacheTimers[w.key]&&(clearTimeout(this._cacheTimers[w.key]),delete this._cacheTimers[w.key],this._setTileReloadTimer(w.key,B)));let Q=B;return B||(B=new Vt(w,this._source.tileSize*w.overscaleFactor()),this._loadTile(B,w.key,B.state)),B.uses++,this._tiles[w.key]=B,Q||this._source.fire(new a.k("dataloading",{tile:B,coord:B.tileID,dataType:"source"})),B}_setTileReloadTimer(w,B){w in this._timers&&(clearTimeout(this._timers[w]),delete this._timers[w]);let Q=B.getExpiryTimeout();Q&&(this._timers[w]=setTimeout(()=>{this._reloadTile(w,"expired"),delete this._timers[w]},Q))}_removeTile(w){let B=this._tiles[w];B&&(B.uses--,delete this._tiles[w],this._timers[w]&&(clearTimeout(this._timers[w]),delete this._timers[w]),B.uses>0||(B.hasData()&&B.state!=="reloading"?this._cache.add(B.tileID,B,B.getExpiryTimeout()):(B.aborted=!0,this._abortTile(B),this._unloadTile(B))))}_dataHandler(w){let B=w.sourceDataType;w.dataType==="source"&&B==="metadata"&&(this._sourceLoaded=!0),this._sourceLoaded&&!this._paused&&w.dataType==="source"&&B==="content"&&(this.reload(),this.transform&&this.update(this.transform,this.terrain),this._didEmitContent=!0)}clearTiles(){this._shouldReloadOnResume=!1,this._paused=!1;for(let w in this._tiles)this._removeTile(w);this._cache.reset()}tilesIn(w,B,Q){let ee=[],le=this.transform;if(!le)return ee;let qe=Q?le.getCameraQueryGeometry(w):w,Xe=w.map(ve=>le.pointCoordinate(ve,this.terrain)),ot=qe.map(ve=>le.pointCoordinate(ve,this.terrain)),Tt=this.getIds(),Yt=1/0,Kt=1/0,xr=-1/0,Ir=-1/0;for(let ve of ot)Yt=Math.min(Yt,ve.x),Kt=Math.min(Kt,ve.y),xr=Math.max(xr,ve.x),Ir=Math.max(Ir,ve.y);for(let ve=0;ve<Tt.length;ve++){let be=this._tiles[Tt[ve]];if(be.holdingForFade())continue;let De=be.tileID,Be=Math.pow(2,le.zoom-be.tileID.overscaledZ),et=B*be.queryPadding*a.X/be.tileSize/Be,We=[De.getTilePoint(new a.Z(Yt,Kt)),De.getTilePoint(new a.Z(xr,Ir))];if(We[0].x-et<a.X&&We[0].y-et<a.X&&We[1].x+et>=0&&We[1].y+et>=0){let it=Xe.map(Ht=>De.getTilePoint(Ht)),Ft=ot.map(Ht=>De.getTilePoint(Ht));ee.push({tile:be,tileID:De,queryGeometry:it,cameraQueryGeometry:Ft,scale:Be})}}return ee}getVisibleCoordinates(w){let B=this.getRenderableIds(w).map(Q=>this._tiles[Q].tileID);for(let Q of B)Q.posMatrix=this.transform.calculatePosMatrix(Q.toUnwrapped());return B}hasTransition(){if(this._source.hasTransition())return!0;if(lr(this._source.type)){let w=u.now();for(let B in this._tiles)if(this._tiles[B].fadeEndTime>=w)return!0}return!1}setFeatureState(w,B,Q){this._state.updateState(w=w||"_geojsonTileLayer",B,Q)}removeFeatureState(w,B,Q){this._state.removeFeatureState(w=w||"_geojsonTileLayer",B,Q)}getFeatureState(w,B){return this._state.getState(w=w||"_geojsonTileLayer",B)}setDependencies(w,B,Q){let ee=this._tiles[w];ee&&ee.setDependencies(B,Q)}reloadTilesForDependencies(w,B){for(let Q in this._tiles)this._tiles[Q].hasDependency(w,B)&&this._reloadTile(Q,"reloading");this._cache.filter(Q=>!Q.hasDependency(w,B))}}function er(ue,w){let B=Math.abs(2*ue.wrap)-+(ue.wrap<0),Q=Math.abs(2*w.wrap)-+(w.wrap<0);return ue.overscaledZ-w.overscaledZ||Q-B||w.canonical.y-ue.canonical.y||w.canonical.x-ue.canonical.x}function lr(ue){return ue==="raster"||ue==="image"||ue==="video"}mt.maxOverzooming=10,mt.maxUnderzooming=3;class Tr{constructor(w,B){this.reset(w,B)}reset(w,B){this.points=w||[],this._distances=[0];for(let Q=1;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 Lr(ue,w){let B=!0;return ue==="always"||ue!=="never"&&w!=="never"||(B=!1),B}class ti{constructor(w,B,Q){let ee=this.boxCells=[],le=this.circleCells=[];this.xCellCount=Math.ceil(w/Q),this.yCellCount=Math.ceil(B/Q);for(let qe=0;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 Yt=this.circles[3*Tt],Kt=this.circles[3*Tt+1],xr=this.circles[3*Tt+2];ot.push({key:this.circleKeys[Tt],x1:Yt-xr,y1:Kt-xr,x2:Yt+xr,y2:Kt+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 Yt=[];return this._forEachCell(qe,ot,Xe,Tt,this._queryCellCircle,Yt,{hitTest:!0,overlapMode:ee,circle:{x:w,y:B,radius:Q},seenUids:{box:{},circle:{}}},le),Yt.length>0}_queryCell(w,B,Q,ee,le,qe,Xe,ot){let{seenUids:Tt,hitTest:Yt,overlapMode:Kt}=Xe,xr=this.boxCells[le];if(xr!==null){let ve=this.bboxes;for(let be of xr)if(!Tt.box[be]){Tt.box[be]=!0;let De=4*be,Be=this.boxKeys[be];if(w<=ve[De+2]&&B<=ve[De+3]&&Q>=ve[De+0]&&ee>=ve[De+1]&&(!ot||ot(Be))&&(!Yt||!Lr(Kt,Be.overlapMode))&&(qe.push({key:Be,x1:ve[De],y1:ve[De+1],x2:ve[De+2],y2:ve[De+3]}),Yt))return!0}}let Ir=this.circleCells[le];if(Ir!==null){let ve=this.circles;for(let be of Ir)if(!Tt.circle[be]){Tt.circle[be]=!0;let De=3*be,Be=this.circleKeys[be];if(this._circleAndRectCollide(ve[De],ve[De+1],ve[De+2],w,B,Q,ee)&&(!ot||ot(Be))&&(!Yt||!Lr(Kt,Be.overlapMode))){let et=ve[De],We=ve[De+1],it=ve[De+2];if(qe.push({key:Be,x1:et-it,y1:We-it,x2:et+it,y2:We+it}),Yt)return!0}}}return!1}_queryCellCircle(w,B,Q,ee,le,qe,Xe,ot){let{circle:Tt,seenUids:Yt,overlapMode:Kt}=Xe,xr=this.boxCells[le];if(xr!==null){let ve=this.bboxes;for(let be of xr)if(!Yt.box[be]){Yt.box[be]=!0;let De=4*be,Be=this.boxKeys[be];if(this._circleAndRectCollide(Tt.x,Tt.y,Tt.radius,ve[De+0],ve[De+1],ve[De+2],ve[De+3])&&(!ot||ot(Be))&&!Lr(Kt,Be.overlapMode))return qe.push(!0),!0}}let Ir=this.circleCells[le];if(Ir!==null){let ve=this.circles;for(let be of Ir)if(!Yt.circle[be]){Yt.circle[be]=!0;let De=3*be,Be=this.circleKeys[be];if(this._circlesCollide(ve[De],ve[De+1],ve[De+2],Tt.x,Tt.y,Tt.radius)&&(!ot||ot(Be))&&!Lr(Kt,Be.overlapMode))return qe.push(!0),!0}}}_forEachCell(w,B,Q,ee,le,qe,Xe,ot){let Tt=this._convertToXCellCoord(w),Yt=this._convertToYCellCoord(B),Kt=this._convertToXCellCoord(Q),xr=this._convertToYCellCoord(ee);for(let Ir=Tt;Ir<=Kt;Ir++)for(let ve=Yt;ve<=xr;ve++)if(le.call(this,w,B,Q,ee,this.xCellCount*ve+Ir,qe,Xe,ot))return}_convertToXCellCoord(w){return Math.max(0,Math.min(this.xCellCount-1,Math.floor(w*this.xScale)))}_convertToYCellCoord(w){return Math.max(0,Math.min(this.yCellCount-1,Math.floor(w*this.yScale)))}_circlesCollide(w,B,Q,ee,le,qe){let Xe=ee-w,ot=le-B,Tt=Q+qe;return Tt*Tt>Xe*Xe+ot*ot}_circleAndRectCollide(w,B,Q,ee,le,qe,Xe){let ot=(qe-ee)/2,Tt=Math.abs(w-(ee+ot));if(Tt>ot+Q)return!1;let Yt=(Xe-le)/2,Kt=Math.abs(B-(le+Yt));if(Kt>Yt+Q)return!1;if(Tt<=ot||Kt<=Yt)return!0;let xr=Tt-ot,Ir=Kt-Yt;return xr*xr+Ir*Ir<=Q*Q}}function Br(ue,w,B,Q,ee){let le=a.H();return w?(a.K(le,le,[1/ee,1/ee,1]),B||a.ad(le,le,Q.angle)):a.L(le,Q.labelPlaneMatrix,ue),le}function Vr(ue,w,B,Q,ee){if(w){let le=a.ae(ue);return a.K(le,le,[ee,ee,1]),B||a.ad(le,le,-Q.angle),le}return Q.glCoordMatrix}function dt(ue,w,B,Q){let ee;Q?(ee=[ue,w,Q(ue,w),1],a.af(ee,ee,B)):(ee=[ue,w,0,1],$r(ee,ee,B));let le=ee[3];return{point:new a.P(ee[0]/le,ee[1]/le),signedDistanceFromCamera:le,isOccluded:!1}}function Ge(ue,w){return .5+ue/w*.5}function Je(ue,w){return ue.x>=-w[0]&&ue.x<=w[0]&&ue.y>=-w[1]&&ue.y<=w[1]}function je(ue,w,B,Q,ee,le,qe,Xe,ot,Tt,Yt,Kt,xr,Ir,ve){let be=Q?ue.textSizeData:ue.iconSizeData,De=a.ag(be,B.transform.zoom),Be=[256/B.width*2+1,256/B.height*2+1],et=Q?ue.text.dynamicLayoutVertexArray:ue.icon.dynamicLayoutVertexArray;et.clear();let We=ue.lineVertexArray,it=Q?ue.text.placedSymbolArray:ue.icon.placedSymbolArray,Ft=B.transform.width/B.transform.height,Ht=!1;for(let tr=0;tr<it.length;tr++){let dr=it.get(tr);if(dr.hidden||dr.writingMode===a.ah.vertical&&!Ht){pi(dr.numGlyphs,et);continue}Ht=!1;let Sr=dt(dr.anchorX,dr.anchorY,w,ve);if(!Je(Sr.point,Be)){pi(dr.numGlyphs,et);continue}let Or=Ge(B.transform.cameraToCenterDistance,Sr.signedDistanceFromCamera),Wr=a.ai(be,De,dr),ni=qe?Wr/Or:Wr*Or,Pi={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:Yt,width:Kt,height:xr,translation:Ir},cn=Ie(Pi,dr,ni,!1,Xe,w,le,ue.glyphOffsetArray,et,Ft,ot);Ht=cn.useVertical,(cn.notEnoughRoom||Ht||cn.needsFlipping&&Ie(Pi,dr,ni,!0,Xe,w,le,ue.glyphOffsetArray,et,Ft,ot).notEnoughRoom)&&pi(dr.numGlyphs,et)}Q?ue.text.dynamicLayoutVertexBuffer.updateData(et):ue.icon.dynamicLayoutVertexBuffer.updateData(et)}function tt(ue,w,B,Q,ee,le,qe,Xe){let ot=le.glyphStartIndex+le.numGlyphs,Tt=le.lineStartIndex,Yt=le.lineStartIndex+le.lineLength,Kt=w.getoffsetX(le.glyphStartIndex),xr=w.getoffsetX(ot-1),Ir=vr(ue*Kt,B,Q,ee,le.segment,Tt,Yt,Xe,qe);if(!Ir)return null;let ve=vr(ue*xr,B,Q,ee,le.segment,Tt,Yt,Xe,qe);return ve?Xe.projectionCache.anyProjectionOccluded?null:{first:Ir,last:ve}:null}function xt(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,Yt){let Kt=B/24,xr=w.lineOffsetX*Kt,Ir=w.lineOffsetY*Kt,ve;if(w.numGlyphs>1){let be=w.glyphStartIndex+w.numGlyphs,De=w.lineStartIndex,Be=w.lineStartIndex+w.lineLength,et=tt(Kt,Xe,xr,Ir,Q,w,Yt,ue);if(!et)return{notEnoughRoom:!0};let We=dt(et.first.point.x,et.first.point.y,qe,ue.getElevation).point,it=dt(et.last.point.x,et.last.point.y,qe,ue.getElevation).point;if(ee&&!Q){let Ft=xt(w.writingMode,We,it,Tt);if(Ft)return Ft}ve=[et.first];for(let Ft=w.glyphStartIndex+1;Ft<be-1;Ft++)ve.push(vr(Kt*Xe.getoffsetX(Ft),xr,Ir,Q,w.segment,De,Be,ue,Yt));ve.push(et.last)}else{if(ee&&!Q){let De=dt(ue.tileAnchorPoint.x,ue.tileAnchorPoint.y,le,ue.getElevation).point,Be=w.lineStartIndex+w.segment+1,et=new a.P(ue.lineVertexArray.getx(Be),ue.lineVertexArray.gety(Be)),We=dt(et.x,et.y,le,ue.getElevation),it=We.signedDistanceFromCamera>0?We.point:function(Ht,tr,dr,Sr,Or,Wr){return xe(Ht,tr,dr,1,Or,Wr)}(ue.tileAnchorPoint,et,De,0,le,ue),Ft=xt(w.writingMode,De,it,Tt);if(Ft)return Ft}let be=vr(Kt*Xe.getoffsetX(w.glyphStartIndex),xr,Ir,Q,w.segment,w.lineStartIndex,w.lineStartIndex+w.lineLength,ue,Yt);if(!be||ue.projectionCache.anyProjectionOccluded)return{notEnoughRoom:!0};ve=[be]}for(let be of ve)a.aj(ot,be.point,be.angle);return{}}function xe(ue,w,B,Q,ee,le){let qe=ue.add(ue.sub(w)._unit()),Xe=ee!==void 0?dt(qe.x,qe.y,ee,le.getElevation).point:vt(qe.x,qe.y,le).point,ot=B.sub(Xe);return B.add(ot._mult(Q/ot.mag()))}function ke(ue,w,B){let Q=w.projectionCache;if(Q.projections[ue])return Q.projections[ue];let ee=new a.P(w.lineVertexArray.getx(ue),w.lineVertexArray.gety(ue)),le=vt(ee.x,ee.y,w);if(le.signedDistanceFromCamera>0)return Q.projections[ue]=le.point,Q.anyProjectionOccluded=Q.anyProjectionOccluded||le.isOccluded,le.point;let qe=ue-B.direction;return function(Xe,ot,Tt,Yt,Kt){return xe(Xe,ot,Tt,Yt,void 0,Kt)}(B.distanceFromAnchor===0?w.tileAnchorPoint:new a.P(w.lineVertexArray.getx(qe),w.lineVertexArray.gety(qe)),ee,B.previousVertex,B.absOffsetX-B.distanceFromAnchor+1,w)}function vt(ue,w,B){let Q=ue+B.translation[0],ee=w+B.translation[1],le;return!B.pitchWithMap&&B.projection.useSpecialProjectionForSymbols?(le=B.projection.projectTileCoordinates(Q,ee,B.unwrappedTileID,B.getElevation),le.point.x=(.5*le.point.x+.5)*B.width,le.point.y=(.5*-le.point.y+.5)*B.height):(le=dt(Q,ee,B.labelPlaneMatrix,B.getElevation),le.isOccluded=!1),le}function ir(ue,w,B){return ue._unit()._perp()._mult(w*B)}function ar(ue,w,B,Q,ee,le,qe,Xe,ot){if(Xe.projectionCache.offsets[ue])return Xe.projectionCache.offsets[ue];let Tt=B.add(w);if(ue+ot.direction<Q||ue+ot.direction>=ee)return Xe.projectionCache.offsets[ue]=Tt,Tt;let Yt=ke(ue+ot.direction,Xe,ot),Kt=ir(Yt.sub(B),qe,ot.direction),xr=B.add(Kt),Ir=Yt.add(Kt);return Xe.projectionCache.offsets[ue]=a.ak(le,Tt,xr,Ir)||Tt,Xe.projectionCache.offsets[ue]}function vr(ue,w,B,Q,ee,le,qe,Xe,ot){let Tt=Q?ue-w:ue+w,Yt=Tt>0?1:-1,Kt=0;Q&&(Yt*=-1,Kt=Math.PI),Yt<0&&(Kt+=Math.PI);let xr,Ir=Yt>0?le+ee:le+ee+1;Xe.projectionCache.cachedAnchorPoint?xr=Xe.projectionCache.cachedAnchorPoint:(xr=vt(Xe.tileAnchorPoint.x,Xe.tileAnchorPoint.y,Xe).point,Xe.projectionCache.cachedAnchorPoint=xr);let ve,be,De=xr,Be=xr,et=0,We=0,it=Math.abs(Tt),Ft=[],Ht;for(;et+We<=it;){if(Ir+=Yt,Ir<le||Ir>=qe)return null;et+=We,Be=De,be=ve;let Sr={absOffsetX:it,direction:Yt,distanceFromAnchor:et,previousVertex:Be};if(De=ke(Ir,Xe,Sr),B===0)Ft.push(Be),Ht=De.sub(Be);else{let Or,Wr=De.sub(Be);Or=Wr.mag()===0?ir(ke(Ir+Yt,Xe,Sr).sub(De),B,Yt):ir(Wr,B,Yt),be||(be=Be.add(Or)),ve=ar(Ir,Or,De,le,qe,be,B,Xe,Sr),Ft.push(be),Ht=ve.sub(be)}We=Ht.mag()}let tr=Ht._mult((it-et)/We)._add(be||Be),dr=Kt+Math.atan2(De.y-Be.y,De.x-Be.x);return Ft.push(tr),{point:tr,angle:ot?dr:0,path:Ft}}let ii=new Float32Array([-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0]);function pi(ue,w){for(let B=0;B<ue;B++){let Q=w.length;w.resize(Q+4),w.float32.set(ii,3*Q)}}function $r(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 di=100;class ji{constructor(w,B,Q=new ti(w.width+200,w.height+200,25),ee=new ti(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+di,this.screenBottomBoundary=w.height+di,this.gridRightBoundary=w.width+200,this.gridBottomBoundary=w.height+200,this.perspectiveRatioCutoff=.6}placeCollisionBox(w,B,Q,ee,le,qe,Xe,ot,Tt,Yt,Kt){let xr=w.anchorPointX+ot[0],Ir=w.anchorPointY+ot[1],ve=this.projectAndGetPerspectiveRatio(ee,xr,Ir,le,Yt),be=Q*ve.perspectiveRatio,De;if(qe||Xe)De=this._projectCollisionBox(w,be,ee,le,qe,Xe,ot,ve,Yt,Kt);else{let Ft=ve.point.x+(Kt?Kt.x*be:0),Ht=ve.point.y+(Kt?Kt.y*be:0);De={allPointsOccluded:!1,box:[Ft+w.x1*be,Ht+w.y1*be,Ft+w.x2*be,Ht+w.y2*be]}}let[Be,et,We,it]=De.box;return this.mapProjection.useSpecialProjectionForSymbols&&(qe?De.allPointsOccluded:this.mapProjection.isOccluded(xr,Ir,le))||ve.perspectiveRatio<this.perspectiveRatioCutoff||!this.isInsideGrid(Be,et,We,it)||B!=="always"&&this.grid.hitTest(Be,et,We,it,B,Tt)?{box:[Be,et,We,it],placeable:!1,offscreen:!1}:{box:[Be,et,We,it],placeable:!0,offscreen:this.isOffscreen(Be,et,We,it)}}placeCollisionCircles(w,B,Q,ee,le,qe,Xe,ot,Tt,Yt,Kt,xr,Ir,ve,be,De){let Be=[],et=new a.P(B.anchorX,B.anchorY),We=this.getPerspectiveRatio(qe,et.x,et.y,Xe,De),it=(Kt?le/We:le*We)/a.ap,Ft={getElevation:De,labelPlaneMatrix:ot,lineVertexArray:Q,pitchWithMap:Kt,projectionCache:{projections:{},offsets:{},cachedAnchorPoint:void 0,anyProjectionOccluded:!1},projection:this.mapProjection,tileAnchorPoint:et,unwrappedTileID:Xe,width:this.transform.width,height:this.transform.height,translation:be},Ht=tt(it,ee,B.lineOffsetX*it,B.lineOffsetY*it,!1,B,!1,Ft),tr=!1,dr=!1,Sr=!0;if(Ht){let Or=.5*Ir*We+ve,Wr=new a.P(-100,-100),ni=new a.P(this.screenRightBoundary,this.screenBottomBoundary),Pi=new Tr,cn=Ht.first,ln=Ht.last,Cn=[];for(let fa=cn.path.length-1;fa>=1;fa--)Cn.push(cn.path[fa]);for(let fa=1;fa<ln.path.length;fa++)Cn.push(ln.path[fa]);let Kn=2.5*Or;if(Tt){let fa=this.projectPathToScreenSpace(Cn,Ft,Tt);Cn=fa.some($a=>$a.signedDistanceFromCamera<=0)?[]:fa.map($a=>$a.point)}let Ta=[];if(Cn.length>0){let fa=Cn[0].clone(),$a=Cn[0].clone();for(let Co=1;Co<Cn.length;Co++)fa.x=Math.min(fa.x,Cn[Co].x),fa.y=Math.min(fa.y,Cn[Co].y),$a.x=Math.max($a.x,Cn[Co].x),$a.y=Math.max($a.y,Cn[Co].y);Ta=fa.x>=Wr.x&&$a.x<=ni.x&&fa.y>=Wr.y&&$a.y<=ni.y?[Cn]:$a.x<Wr.x||fa.x>ni.x||$a.y<Wr.y||fa.y>ni.y?[]:a.al([Cn],Wr.x,Wr.y,ni.x,ni.y)}for(let fa of Ta){Pi.reset(fa,.25*Or);let $a=0;$a=Pi.length<=.5*Or?1:Math.ceil(Pi.paddedLength/Kn)+1;for(let Co=0;Co<$a;Co++){let Qa=Co/Math.max($a-1,1),mo=Pi.lerp(Qa),Bo=mo.x+di,Ps=mo.y+di;Be.push(Bo,Ps,Or,0);let Ts=Bo-Or,wo=Ps-Or,To=Bo+Or,hl=Ps+Or;if(Sr=Sr&&this.isOffscreen(Ts,wo,To,hl),dr=dr||this.isInsideGrid(Ts,wo,To,hl),w!=="always"&&this.grid.hitTestCircle(Bo,Ps,Or,w,xr)&&(tr=!0,!Yt))return{circles:[],offscreen:!1,collisionDetected:tr}}}}return{circles:!Yt&&tr||!dr||We<this.perspectiveRatioCutoff?[]:Be,offscreen:Sr,collisionDetected:tr}}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 Yt of w){let Kt=new a.P(Yt.x+di,Yt.y+di);Q=Math.min(Q,Kt.x),ee=Math.min(ee,Kt.y),le=Math.max(le,Kt.x),qe=Math.max(qe,Kt.y),B.push(Kt)}let Xe=this.grid.query(Q,ee,le,qe).concat(this.ignoredGrid.query(Q,ee,le,qe)),ot={},Tt={};for(let Yt of Xe){let Kt=Yt.key;if(ot[Kt.bucketInstanceId]===void 0&&(ot[Kt.bucketInstanceId]={}),ot[Kt.bucketInstanceId][Kt.featureIndex])continue;let xr=[new a.P(Yt.x1,Yt.y1),new a.P(Yt.x2,Yt.y1),new a.P(Yt.x2,Yt.y2),new a.P(Yt.x1,Yt.y2)];a.am(B,xr)&&(ot[Kt.bucketInstanceId][Kt.featureIndex]=!0,Tt[Kt.bucketInstanceId]===void 0&&(Tt[Kt.bucketInstanceId]=[]),Tt[Kt.bucketInstanceId].push(Kt.featureIndex))}return Tt}insertCollisionBox(w,B,Q,ee,le,qe){(Q?this.ignoredGrid:this.grid).insert({bucketInstanceId:ee,featureIndex:le,collisionGroupID:qe,overlapMode:B},w[0],w[1],w[2],w[3])}insertCollisionCircles(w,B,Q,ee,le,qe){let Xe=Q?this.ignoredGrid:this.grid,ot={bucketInstanceId:ee,featureIndex:le,collisionGroupID:qe,overlapMode:B};for(let Tt=0;Tt<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],$r(qe,qe,w));let Xe=qe[3];return{point:new a.P((qe[0]/Xe+1)/2*this.transform.width+di,(-qe[1]/Xe+1)/2*this.transform.height+di),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<di||w>=this.screenRightBoundary||ee<di||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,Yt){let Kt=new a.P(1,0),xr=new a.P(0,1),Ir=new a.P(w.anchorPointX+Xe[0],w.anchorPointY+Xe[1]);if(qe&&!le){let Sr=this.projectAndGetPerspectiveRatio(Q,Ir.x+1,Ir.y,ee,Tt).point.sub(ot.point).unit(),Or=Math.atan(Sr.y/Sr.x)+(Sr.x<0?Math.PI:0),Wr=Math.sin(Or),ni=Math.cos(Or);Kt=new a.P(ni,Wr),xr=new a.P(-Wr,ni)}else if(!qe&&le){let Sr=-this.transform.angle,Or=Math.sin(Sr),Wr=Math.cos(Sr);Kt=new a.P(Wr,Or),xr=new a.P(-Or,Wr)}let ve=ot.point,be=B;if(le){ve=Ir;let Sr=this.transform.zoom-Math.floor(this.transform.zoom);be=Math.pow(2,-Sr),be*=this.mapProjection.getPitchedTextCorrection(this.transform,Ir,ee),Yt||(be*=a.ac(.5+ot.signedDistanceFromCamera/this.transform.cameraToCenterDistance*.5,0,4))}Yt&&(ve=ve.add(Kt.mult(Yt.x*be)).add(xr.mult(Yt.y*be)));let De=w.x1*be,Be=w.x2*be,et=(De+Be)/2,We=w.y1*be,it=w.y2*be,Ft=(We+it)/2,Ht=[{offsetX:De,offsetY:We},{offsetX:et,offsetY:We},{offsetX:Be,offsetY:We},{offsetX:Be,offsetY:Ft},{offsetX:Be,offsetY:it},{offsetX:et,offsetY:it},{offsetX:De,offsetY:it},{offsetX:De,offsetY:Ft}],tr=[];for(let{offsetX:Sr,offsetY:Or}of Ht)tr.push(new a.P(ve.x+Kt.x*Sr+xr.x*Or,ve.y+Kt.y*Sr+xr.y*Or));let dr=!1;if(le){let Sr=tr.map(Or=>this.projectAndGetPerspectiveRatio(Q,Or.x,Or.y,ee,Tt));dr=Sr.some(Or=>!Or.isOccluded),tr=Sr.map(Or=>Or.point)}else dr=!0;return{box:a.ao(tr),allPointsOccluded:!dr}}}function In(ue,w,B){return w*(a.X/(ue.tileSize*Math.pow(2,B-ue.tileID.overscaledZ)))}class wi{constructor(w,B,Q,ee){this.opacity=w?Math.max(0,Math.min(1,w.opacity+(w.placed?B:-B))):ee&&Q?1:0,this.placed=Q}isHidden(){return this.opacity===0&&!this.placed}}class On{constructor(w,B,Q,ee,le){this.text=new wi(w?w.text:null,B,Q,le),this.icon=new wi(w?w.icon:null,B,ee,le)}isHidden(){return this.text.isHidden()&&this.icon.isHidden()}}class qn{constructor(w,B,Q){this.text=w,this.icon=B,this.skipFade=Q}}class Fn{constructor(){this.invProjMatrix=a.H(),this.viewportMatrix=a.H(),this.circles=[]}}class ra{constructor(w,B,Q,ee,le){this.bucketInstanceId=w,this.featureIndex=B,this.sourceLayerIndex=Q,this.bucketIndex=ee,this.tileID=le}}class la{constructor(w){this.crossSourceCollisions=w,this.maxGroupID=0,this.collisionGroups={}}get(w){if(this.crossSourceCollisions)return{ID:0,predicate:null};if(!this.collisionGroups[w]){let B=++this.maxGroupID;this.collisionGroups[w]={ID:B,predicate:Q=>Q.collisionGroupID===B}}return this.collisionGroups[w]}}function Ut(ue,w,B,Q,ee){let{horizontalAlign:le,verticalAlign:qe}=a.au(ue);return new a.P(-(le-.5)*w+Q[0]*ee,-(qe-.5)*B+Q[1]*ee)}class wt{constructor(w,B,Q,ee,le,qe){this.transform=w.clone(),this.terrain=Q,this.collisionIndex=new ji(this.transform,B),this.placements={},this.opacities={},this.variableOffsets={},this.stale=!1,this.commitTime=0,this.fadeDuration=ee,this.retainedQueryData={},this.collisionGroups=new la(le),this.collisionCircleArrays={},this.collisionBoxArrays=new Map,this.prevPlacement=qe,qe&&(qe.prevPlacement=void 0),this.placedOrientations={}}_getTerrainElevationFunc(w){let B=this.terrain;return B?(Q,ee)=>B.getElevation(w,Q,ee):null}getBucketParts(w,B,Q,ee){let le=Q.getBucket(B),qe=Q.latestFeatureIndex;if(!le||!qe||B.id!==le.layerIds[0])return;let Xe=Q.collisionBoxArray,ot=le.layers[0].layout,Tt=le.layers[0].paint,Yt=Math.pow(2,this.transform.zoom-Q.tileID.overscaledZ),Kt=Q.tileSize/a.X,xr=Q.tileID.toUnwrapped(),Ir=this.transform.calculatePosMatrix(xr),ve=ot.get("text-pitch-alignment")==="map",be=ot.get("text-rotation-alignment")==="map",De=In(Q,1,this.transform.zoom),Be=this.collisionIndex.mapProjection.translatePosition(this.transform,Q,Tt.get("text-translate"),Tt.get("text-translate-anchor")),et=this.collisionIndex.mapProjection.translatePosition(this.transform,Q,Tt.get("icon-translate"),Tt.get("icon-translate-anchor")),We=Br(Ir,ve,be,this.transform,De),it=null;if(ve){let Ht=Vr(Ir,ve,be,this.transform,De);it=a.L([],this.transform.labelPlaneMatrix,Ht)}this.retainedQueryData[le.bucketInstanceId]=new ra(le.bucketInstanceId,qe,le.sourceLayerIndex,le.index,Q.tileID);let Ft={bucket:le,layout:ot,translationText:Be,translationIcon:et,posMatrix:Ir,unwrappedTileID:xr,textLabelPlaneMatrix:We,labelToScreenMatrix:it,scale:Yt,textPixelRatio:Kt,holdingForFade:Q.holdingForFade(),collisionBoxArray:Xe,partiallyEvaluatedTextSize:a.ag(le.textSizeData,this.transform.zoom),collisionGroup:this.collisionGroups.get(le.sourceID)};if(ee)for(let Ht of le.sortKeyRanges){let{sortKey:tr,symbolInstanceStart:dr,symbolInstanceEnd:Sr}=Ht;w.push({sortKey:tr,symbolInstanceStart:dr,symbolInstanceEnd:Sr,parameters:Ft})}else w.push({symbolInstanceStart:0,symbolInstanceEnd:le.symbolInstances.length,parameters:Ft})}attemptAnchorPlacement(w,B,Q,ee,le,qe,Xe,ot,Tt,Yt,Kt,xr,Ir,ve,be,De,Be,et,We){let it=a.aq[w.textAnchor],Ft=[w.textOffset0,w.textOffset1],Ht=Ut(it,Q,ee,Ft,le),tr=this.collisionIndex.placeCollisionBox(B,xr,ot,Tt,Yt,Xe,qe,De,Kt.predicate,We,Ht);if((!et||this.collisionIndex.placeCollisionBox(et,xr,ot,Tt,Yt,Xe,qe,Be,Kt.predicate,We,Ht).placeable)&&tr.placeable){let dr;if(this.prevPlacement&&this.prevPlacement.variableOffsets[Ir.crossTileID]&&this.prevPlacement.placements[Ir.crossTileID]&&this.prevPlacement.placements[Ir.crossTileID].text&&(dr=this.prevPlacement.variableOffsets[Ir.crossTileID].anchor),Ir.crossTileID===0)throw new Error("symbolInstance.crossTileID can't be 0");return this.variableOffsets[Ir.crossTileID]={textOffset:Ft,width:Q,height:ee,anchor:it,textBoxScale:le,prevAnchor:dr},this.markUsedJustification(ve,it,Ir,be),ve.allowVerticalPlacement&&(this.markUsedOrientation(ve,be,Ir),this.placedOrientations[Ir.crossTileID]=be),{shift:Ht,placedGlyphBoxes:tr}}}placeLayerBucketPart(w,B,Q){let{bucket:ee,layout:le,translationText:qe,translationIcon:Xe,posMatrix:ot,unwrappedTileID:Tt,textLabelPlaneMatrix:Yt,labelToScreenMatrix:Kt,textPixelRatio:xr,holdingForFade:Ir,collisionBoxArray:ve,partiallyEvaluatedTextSize:be,collisionGroup:De}=w.parameters,Be=le.get("text-optional"),et=le.get("icon-optional"),We=a.ar(le,"text-overlap","text-allow-overlap"),it=We==="always",Ft=a.ar(le,"icon-overlap","icon-allow-overlap"),Ht=Ft==="always",tr=le.get("text-rotation-alignment")==="map",dr=le.get("text-pitch-alignment")==="map",Sr=le.get("icon-text-fit")!=="none",Or=le.get("symbol-z-order")==="viewport-y",Wr=it&&(Ht||!ee.hasIconData()||et),ni=Ht&&(it||!ee.hasTextData()||Be);!ee.collisionArrays&&ve&&ee.deserializeCollisionBoxes(ve);let Pi=this._getTerrainElevationFunc(this.retainedQueryData[ee.bucketInstanceId].tileID),cn=(ln,Cn,Kn)=>{var Ta,fa;if(B[ln.crossTileID])return;if(Ir)return void(this.placements[ln.crossTileID]=new qn(!1,!1,!1));let $a=!1,Co=!1,Qa=!0,mo=null,Bo={box:null,placeable:!1,offscreen:null},Ps={box:null,placeable:!1,offscreen:null},Ts=null,wo=null,To=null,hl=0,Ul=0,Lu=0;Cn.textFeatureIndex?hl=Cn.textFeatureIndex:ln.useRuntimeCollisionCircles&&(hl=ln.featureIndex),Cn.verticalTextFeatureIndex&&(Ul=Cn.verticalTextFeatureIndex);let au=Cn.textBox;if(au){let Tl=Te=>{let Ne=a.ah.horizontal;if(ee.allowVerticalPlacement&&!Te&&this.prevPlacement){let He=this.prevPlacement.placedOrientations[ln.crossTileID];He&&(this.placedOrientations[ln.crossTileID]=He,Ne=He,this.markUsedOrientation(ee,Ne,ln))}return Ne},Al=(Te,Ne)=>{if(ee.allowVerticalPlacement&&ln.numVerticalGlyphVertices>0&&Cn.verticalTextBox){for(let He of ee.writingModes)if(He===a.ah.vertical?(Bo=Ne(),Ps=Bo):Bo=Te(),Bo&&Bo.placeable)break}else Bo=Te()},X=ln.textAnchorOffsetStartIndex,se=ln.textAnchorOffsetEndIndex;if(se===X){let Te=(Ne,He)=>{let Ye=this.collisionIndex.placeCollisionBox(Ne,We,xr,ot,Tt,dr,tr,qe,De.predicate,Pi);return Ye&&Ye.placeable&&(this.markUsedOrientation(ee,He,ln),this.placedOrientations[ln.crossTileID]=He),Ye};Al(()=>Te(au,a.ah.horizontal),()=>{let Ne=Cn.verticalTextBox;return ee.allowVerticalPlacement&&ln.numVerticalGlyphVertices>0&&Ne?Te(Ne,a.ah.vertical):{box:null,offscreen:null}}),Tl(Bo&&Bo.placeable)}else{let Te=a.aq[(fa=(Ta=this.prevPlacement)===null||Ta===void 0?void 0:Ta.variableOffsets[ln.crossTileID])===null||fa===void 0?void 0:fa.anchor],Ne=(Ye,kt,nt)=>{let jt=Ye.x2-Ye.x1,gr=Ye.y2-Ye.y1,yr=ln.textBoxScale,Hr=Sr&&Ft==="never"?kt:null,qr=null,_i=We==="never"?1:2,bi="never";Te&&_i++;for(let Zr=0;Zr<_i;Zr++){for(let ai=X;ai<se;ai++){let gi=ee.textAnchorOffsets.get(ai);if(Te&&gi.textAnchor!==Te)continue;let Ii=this.attemptAnchorPlacement(gi,Ye,jt,gr,yr,tr,dr,xr,ot,Tt,De,bi,ln,ee,nt,qe,Xe,Hr,Pi);if(Ii&&(qr=Ii.placedGlyphBoxes,qr&&qr.placeable))return $a=!0,mo=Ii.shift,qr}Te?Te=null:bi=We}return Q&&!qr&&(qr={box:this.collisionIndex.placeCollisionBox(au,"always",xr,ot,Tt,dr,tr,qe,De.predicate,Pi,new a.P(0,0)).box,offscreen:!1,placeable:!1}),qr};Al(()=>Ne(au,Cn.iconBox,a.ah.horizontal),()=>{let Ye=Cn.verticalTextBox;return ee.allowVerticalPlacement&&(!Bo||!Bo.placeable)&&ln.numVerticalGlyphVertices>0&&Ye?Ne(Ye,Cn.verticalIconBox,a.ah.vertical):{box:null,occluded:!0,offscreen:null}}),Bo&&($a=Bo.placeable,Qa=Bo.offscreen);let He=Tl(Bo&&Bo.placeable);if(!$a&&this.prevPlacement){let Ye=this.prevPlacement.variableOffsets[ln.crossTileID];Ye&&(this.variableOffsets[ln.crossTileID]=Ye,this.markUsedJustification(ee,Ye.anchor,ln,He))}}}if(Ts=Bo,$a=Ts&&Ts.placeable,Qa=Ts&&Ts.offscreen,ln.useRuntimeCollisionCircles){let Tl=ee.text.placedSymbolArray.get(ln.centerJustifiedTextSymbolIndex),Al=a.ai(ee.textSizeData,be,Tl),X=le.get("text-padding");wo=this.collisionIndex.placeCollisionCircles(We,Tl,ee.lineVertexArray,ee.glyphOffsetArray,Al,ot,Tt,Yt,Kt,Q,dr,De.predicate,ln.collisionCircleDiameter,X,qe,Pi),wo.circles.length&&wo.collisionDetected&&!Q&&a.w("Collisions detected, but collision boxes are not shown"),$a=it||wo.circles.length>0&&!wo.collisionDetected,Qa=Qa&&wo.offscreen}if(Cn.iconFeatureIndex&&(Lu=Cn.iconFeatureIndex),Cn.iconBox){let Tl=Al=>this.collisionIndex.placeCollisionBox(Al,Ft,xr,ot,Tt,dr,tr,Xe,De.predicate,Pi,Sr&&mo?mo:void 0);Ps&&Ps.placeable&&Cn.verticalIconBox?(To=Tl(Cn.verticalIconBox),Co=To.placeable):(To=Tl(Cn.iconBox),Co=To.placeable),Qa=Qa&&To.offscreen}let Js=Be||ln.numHorizontalGlyphVertices===0&&ln.numVerticalGlyphVertices===0,Ql=et||ln.numIconVertices===0;Js||Ql?Ql?Js||(Co=Co&&$a):$a=Co&&$a:Co=$a=Co&&$a;let dc=Co&&To.placeable;if($a&&Ts.placeable&&this.collisionIndex.insertCollisionBox(Ts.box,We,le.get("text-ignore-placement"),ee.bucketInstanceId,Ps&&Ps.placeable&&Ul?Ul:hl,De.ID),dc&&this.collisionIndex.insertCollisionBox(To.box,Ft,le.get("icon-ignore-placement"),ee.bucketInstanceId,Lu,De.ID),wo&&$a&&this.collisionIndex.insertCollisionCircles(wo.circles,We,le.get("text-ignore-placement"),ee.bucketInstanceId,hl,De.ID),Q&&this.storeCollisionData(ee.bucketInstanceId,Kn,Cn,Ts,To,wo),ln.crossTileID===0)throw new Error("symbolInstance.crossTileID can't be 0");if(ee.bucketInstanceId===0)throw new Error("bucket.bucketInstanceId can't be 0");this.placements[ln.crossTileID]=new qn($a||Wr,Co||ni,Qa||ee.justReloaded),B[ln.crossTileID]=!0};if(Or){if(w.symbolInstanceStart!==0)throw new Error("bucket.bucketInstanceId should be 0");let ln=ee.getSortedSymbolIndexes(this.transform.angle);for(let Cn=ln.length-1;Cn>=0;--Cn){let Kn=ln[Cn];cn(ee.symbolInstances.get(Kn),ee.collisionArrays[Kn],Kn)}}else for(let ln=w.symbolInstanceStart;ln<w.symbolInstanceEnd;ln++)cn(ee.symbolInstances.get(ln),ee.collisionArrays[ln],ln);if(Q&&ee.bucketInstanceId in this.collisionCircleArrays){let ln=this.collisionCircleArrays[ee.bucketInstanceId];a.as(ln.invProjMatrix,ot),ln.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 Fn);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],Yt=le[ot];Yt?(this.opacities[ot]=new On(Yt,ee,Tt.text,Tt.icon),Q=Q||Tt.text!==Yt.text.placed||Tt.icon!==Yt.icon.placed):(this.opacities[ot]=new On(null,ee,Tt.text,Tt.icon,Tt.skipFade),Q=Q||Tt.text||Tt.icon)}for(let ot in le){let Tt=le[ot];if(!this.opacities[ot]){let Yt=new On(Tt,ee,!1,!1);Yt.isHidden()||(this.opacities[ot]=Yt,Q=Q||Tt.text.placed||Tt.icon.placed)}}for(let ot in qe)this.variableOffsets[ot]||!this.opacities[ot]||this.opacities[ot].isHidden()||(this.variableOffsets[ot]=qe[ot]);for(let ot in Xe)this.placedOrientations[ot]||!this.opacities[ot]||this.opacities[ot].isHidden()||(this.placedOrientations[ot]=Xe[ot]);if(B&&B.lastPlacementChangeTime===void 0)throw new Error("Last placement time for previous placement is not defined");Q?this.lastPlacementChangeTime=w:typeof this.lastPlacementChangeTime!="number"&&(this.lastPlacementChangeTime=B?B.lastPlacementChangeTime:w)}updateLayerOpacities(w,B){let Q={};for(let ee of B){let le=ee.getBucket(w);le&&ee.latestFeatureIndex&&w.id===le.layerIds[0]&&this.updateBucketOpacities(le,ee.tileID,Q,ee.collisionBoxArray)}}updateBucketOpacities(w,B,Q,ee){w.hasTextData()&&(w.text.opacityVertexArray.clear(),w.text.hasVisibleVertices=!1),w.hasIconData()&&(w.icon.opacityVertexArray.clear(),w.icon.hasVisibleVertices=!1),w.hasIconCollisionBoxData()&&w.iconCollisionBox.collisionVertexArray.clear(),w.hasTextCollisionBoxData()&&w.textCollisionBox.collisionVertexArray.clear();let le=w.layers[0],qe=le.layout,Xe=new On(null,0,!1,!1,!0),ot=qe.get("text-allow-overlap"),Tt=qe.get("icon-allow-overlap"),Yt=le._unevaluatedLayout.hasValue("text-variable-anchor")||le._unevaluatedLayout.hasValue("text-variable-anchor-offset"),Kt=qe.get("text-rotation-alignment")==="map",xr=qe.get("text-pitch-alignment")==="map",Ir=qe.get("icon-text-fit")!=="none",ve=new On(null,0,ot&&(Tt||!w.hasIconData()||qe.get("icon-optional")),Tt&&(ot||!w.hasTextData()||qe.get("text-optional")),!0);!w.collisionArrays&&ee&&(w.hasIconCollisionBoxData()||w.hasTextCollisionBoxData())&&w.deserializeCollisionBoxes(ee);let be=(Be,et,We)=>{for(let it=0;it<et/4;it++)Be.opacityVertexArray.emplaceBack(We);Be.hasVisibleVertices=Be.hasVisibleVertices||We!==fn},De=this.collisionBoxArrays.get(w.bucketInstanceId);for(let Be=0;Be<w.symbolInstances.length;Be++){let et=w.symbolInstances.get(Be),{numHorizontalGlyphVertices:We,numVerticalGlyphVertices:it,crossTileID:Ft}=et,Ht=this.opacities[Ft];Q[Ft]?Ht=Xe:Ht||(Ht=ve,this.opacities[Ft]=Ht),Q[Ft]=!0;let tr=et.numIconVertices>0,dr=this.placedOrientations[et.crossTileID],Sr=dr===a.ah.vertical,Or=dr===a.ah.horizontal||dr===a.ah.horizontalOnly;if(We>0||it>0){let ni=tn(Ht.text);be(w.text,We,Sr?fn:ni),be(w.text,it,Or?fn:ni);let Pi=Ht.text.isHidden();[et.rightJustifiedTextSymbolIndex,et.centerJustifiedTextSymbolIndex,et.leftJustifiedTextSymbolIndex].forEach(Cn=>{Cn>=0&&(w.text.placedSymbolArray.get(Cn).hidden=Pi||Sr?1:0)}),et.verticalPlacedTextSymbolIndex>=0&&(w.text.placedSymbolArray.get(et.verticalPlacedTextSymbolIndex).hidden=Pi||Or?1:0);let cn=this.variableOffsets[et.crossTileID];cn&&this.markUsedJustification(w,cn.anchor,et,dr);let ln=this.placedOrientations[et.crossTileID];ln&&(this.markUsedJustification(w,"left",et,ln),this.markUsedOrientation(w,ln,et))}if(tr){let ni=tn(Ht.icon),Pi=!(Ir&&et.verticalPlacedIconSymbolIndex&&Sr);et.placedIconSymbolIndex>=0&&(be(w.icon,et.numIconVertices,Pi?ni:fn),w.icon.placedSymbolArray.get(et.placedIconSymbolIndex).hidden=Ht.icon.isHidden()),et.verticalPlacedIconSymbolIndex>=0&&(be(w.icon,et.numVerticalIconVertices,Pi?fn:ni),w.icon.placedSymbolArray.get(et.verticalPlacedIconSymbolIndex).hidden=Ht.icon.isHidden())}let Wr=De&&De.has(Be)?De.get(Be):{text:null,icon:null};if(w.hasIconCollisionBoxData()||w.hasTextCollisionBoxData()){let ni=w.collisionArrays[Be];if(ni){let Pi=new a.P(0,0);if(ni.textBox||ni.verticalTextBox){let cn=!0;if(Yt){let ln=this.variableOffsets[Ft];ln?(Pi=Ut(ln.anchor,ln.width,ln.height,ln.textOffset,ln.textBoxScale),Kt&&Pi._rotate(xr?this.transform.angle:-this.transform.angle)):cn=!1}if(ni.textBox||ni.verticalTextBox){let ln;ni.textBox&&(ln=Sr),ni.verticalTextBox&&(ln=Or),rr(w.textCollisionBox.collisionVertexArray,Ht.text.placed,!cn||ln,Wr.text,Pi.x,Pi.y)}}if(ni.iconBox||ni.verticalIconBox){let cn=!!(!Or&&ni.verticalIconBox),ln;ni.iconBox&&(ln=cn),ni.verticalIconBox&&(ln=!cn),rr(w.iconCollisionBox.collisionVertexArray,Ht.icon.placed,ln,Wr.icon,Ir?Pi.x:0,Ir?Pi.y:0)}}}}if(w.sortFeatures(this.transform.angle),this.retainedQueryData[w.bucketInstanceId]&&(this.retainedQueryData[w.bucketInstanceId].featureSortOrder=w.featureSortOrder),w.hasTextData()&&w.text.opacityVertexBuffer&&w.text.opacityVertexBuffer.updateData(w.text.opacityVertexArray),w.hasIconData()&&w.icon.opacityVertexBuffer&&w.icon.opacityVertexBuffer.updateData(w.icon.opacityVertexArray),w.hasIconCollisionBoxData()&&w.iconCollisionBox.collisionVertexBuffer&&w.iconCollisionBox.collisionVertexBuffer.updateData(w.iconCollisionBox.collisionVertexArray),w.hasTextCollisionBoxData()&&w.textCollisionBox.collisionVertexBuffer&&w.textCollisionBox.collisionVertexBuffer.updateData(w.textCollisionBox.collisionVertexArray),w.text.opacityVertexArray.length!==w.text.layoutVertexArray.length/4)throw new Error(`bucket.text.opacityVertexArray.length (= ${w.text.opacityVertexArray.length}) !== bucket.text.layoutVertexArray.length (= ${w.text.layoutVertexArray.length}) / 4`);if(w.icon.opacityVertexArray.length!==w.icon.layoutVertexArray.length/4)throw new Error(`bucket.icon.opacityVertexArray.length (= ${w.icon.opacityVertexArray.length}) !== bucket.icon.layoutVertexArray.length (= ${w.icon.layoutVertexArray.length}) / 4`);if(w.bucketInstanceId in this.collisionCircleArrays){let Be=this.collisionCircleArrays[w.bucketInstanceId];w.placementInvProjMatrix=Be.invProjMatrix,w.placementViewportMatrix=Be.viewportMatrix,w.collisionCircleArray=Be.circles,delete this.collisionCircleArrays[w.bucketInstanceId]}}symbolFadeChange(w){return this.fadeDuration===0?1:(w-this.commitTime)/this.fadeDuration+this.prevZoomAdjustment}zoomAdjustment(w){return Math.max(0,(this.transform.zoom-w)/1.5)}hasTransitions(w){return this.stale||w-this.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 rr(ue,w,B,Q,ee,le){Q&&Q.length!==0||(Q=[0,0,0,0]);let qe=Q[0]-di,Xe=Q[1]-di,ot=Q[2]-di,Tt=Q[3]-di;ue.emplaceBack(w?1:0,B?1:0,ee||0,le||0,qe,Xe),ue.emplaceBack(w?1:0,B?1:0,ee||0,le||0,ot,Xe),ue.emplaceBack(w?1:0,B?1:0,ee||0,le||0,ot,Tt),ue.emplaceBack(w?1:0,B?1:0,ee||0,le||0,qe,Tt)}let nr=Math.pow(2,25),Er=Math.pow(2,24),Xr=Math.pow(2,17),ri=Math.pow(2,16),Qr=Math.pow(2,9),Oi=Math.pow(2,8),$i=Math.pow(2,1);function tn(ue){if(ue.opacity===0&&!ue.placed)return 0;if(ue.opacity===1&&ue.placed)return 4294967295;let w=ue.placed?1:0,B=Math.floor(127*ue.opacity);return B*nr+w*Er+B*Xr+w*ri+B*Qr+w*Oi+B*$i+w}let fn=0;function yn(){return{isOccluded:(ue,w,B)=>!1,getPitchedTextCorrection:(ue,w,B)=>1,get useSpecialProjectionForSymbols(){return!1},projectTileCoordinates(ue,w,B,Q){throw new Error("Not implemented.")},translatePosition:(ue,w,B,Q)=>function(ee,le,qe,Xe,ot=!1){if(!qe[0]&&!qe[1])return[0,0];let Tt=ot?Xe==="map"?ee.angle:0:Xe==="viewport"?-ee.angle:0;if(Tt){let Yt=Math.sin(Tt),Kt=Math.cos(Tt);qe=[qe[0]*Kt-qe[1]*Yt,qe[0]*Yt+qe[1]*Kt]}return[ot?qe[0]:In(le,qe[0],ee.zoom),ot?qe[1]:In(le,qe[1],ee.zoom)]}(ue,w,B,Q),getCircleRadiusCorrection:ue=>1}}class Sn{constructor(w){this._sortAcrossTiles=w.layout.get("symbol-z-order")!=="viewport-y"&&!w.layout.get("symbol-sort-key").isConstant(),this._currentTileIndex=0,this._currentPartIndex=0,this._seenCrossTileIDs={},this._bucketParts=[]}continuePlacement(w,B,Q,ee,le){let qe=this._bucketParts;for(;this._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 wt(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 Sn(qe)),this._inProgressLayer.continuePlacement(Q[qe.source],this.placement,this._showCollisionBoxes,qe,le))return;delete this._inProgressLayer}this._currentPlacementIndex--}this._done=!0}commit(w){return this.placement.commit(w),this.placement}}let ua=512/a.X/2;class ma{constructor(w,B,Q){this.tileID=w,this.bucketInstanceId=Q,this._symbolsByKey={};let ee=new Map;for(let le=0;le<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*ua),y:Math.floor(ot.anchorY*ua)})),crossTileIDs:qe.map(ot=>ot.crossTileID)};if(Xe.positions.length>128){let ot=new a.av(Xe.positions.length,16,Uint16Array);for(let{x:Tt,y:Yt}of Xe.positions)ot.add(Tt,Yt);ot.finish(),delete Xe.positions,Xe.index=ot}this._symbolsByKey[le]=Xe}}getScaledCoordinates(w,B){let{x:Q,y:ee,z:le}=this.tileID.canonical,{x:qe,y:Xe,z:ot}=B.canonical,Tt=ua/Math.pow(2,ot-le),Yt=(Xe*a.X+w.anchorY)*Tt,Kt=ee*a.X*ua;return{x:Math.floor((qe*a.X+w.anchorX)*Tt-Q*a.X*ua),y:Math.floor(Yt-Kt)}}findMatches(w,B,Q){let ee=this.tileID.canonical.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 Yt of Tt){let Kt=Xe.crossTileIDs[Yt];if(!Q[Kt]){Q[Kt]=!0,qe.crossTileID=Kt;break}}}else if(Xe.positions)for(let Tt=0;Tt<Xe.positions.length;Tt++){let Yt=Xe.positions[Tt],Kt=Xe.crossTileIDs[Tt];if(Math.abs(Yt.x-ot.x)<=ee&&Math.abs(Yt.y-ot.y)<=ee&&!Q[Kt]){Q[Kt]=!0,qe.crossTileID=Kt;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 Ha extends a.E{constructor(w,B={}){super(),this._rtlPluginLoaded=()=>{for(let Q in this.sourceCaches){let ee=this.sourceCaches[Q].getSource().type;ee!=="vector"&&ee!=="geojson"||this.sourceCaches[Q].reload()}},this.map=w,this.dispatcher=new Le(Se(),w._getMapId()),this.dispatcher.registerMessageHandler("GG",(Q,ee)=>this.getGlyphs(Q,ee)),this.dispatcher.registerMessageHandler("GI",(Q,ee)=>this.getImages(Q,ee)),this.imageManager=new T,this.imageManager.setEventedParent(this),this.glyphManager=new G(w._requestManager,B.localIdeographFontFamily),this.lineAtlas=new oe(256,512),this.crossTileSymbolIndex=new Wo,this._spritesImagesIds={},this._layers={},this._order=[],this.sourceCaches={},this.zoomHistory=new a.ax,this._loaded=!1,this._availableImages=[],this._resetUpdates(),this.dispatcher.broadcast("SR",a.ay()),Qt().on(cr,this._rtlPluginLoaded),this.on("data",Q=>{if(Q.dataType!=="source"||Q.sourceDataType!=="metadata")return;let ee=this.sourceCaches[Q.sourceId];if(!ee)return;let le=ee.getSource();if(le&&le.vectorLayerIds)for(let qe in this._layers){let Xe=this._layers[qe];Xe.source===le.id&&this._validateLayer(Xe)}})}loadURL(w,B={},Q){this.fire(new a.k("dataloading",{dataType:"style"})),B.validate=typeof B.validate!="boolean"||B.validate;let ee=this.map._requestManager.transformRequest(w,"Style");this._loadStyleRequest=new AbortController;let le=this._loadStyleRequest;a.h(ee,this._loadStyleRequest).then(qe=>{this._loadStyleRequest=null,this._load(qe.data,B,Q)}).catch(qe=>{this._loadStyleRequest=null,qe&&!le.signal.aborted&&this.fire(new a.j(qe))})}loadJSON(w,B={},Q){this.fire(new a.k("dataloading",{dataType:"style"})),this._frameRequest=new AbortController,u.frameAsync(this._frameRequest).then(()=>{this._frameRequest=null,B.validate=B.validate!==!1,this._load(w,B,Q)}).catch(()=>{})}loadEmpty(){this.fire(new a.k("dataloading",{dataType:"style"})),this._load(Wn,{validate:!1})}_load(w,B,Q){var ee;let le=B.transformStyle?B.transformStyle(Q,w):w;if(!B.validate||!da(this,a.u(le))){this._loaded=!0,this.stylesheet=le;for(let qe in le.sources)this.addSource(qe,le.sources[qe],{validate:!1});le.sprite?this._loadSprite(le.sprite):this.imageManager.setLoaded(!0),this.glyphManager.setURL(le.glyphs),this._createLayers(),this.light=new N(this.stylesheet.light),this.sky=new te(this.stylesheet.sky),this.map.setTerrain((ee=this.stylesheet.terrain)!==null&&ee!==void 0?ee:null),this.fire(new a.k("data",{dataType:"style"})),this.fire(new a.k("style.load"))}}_createLayers(){let w=a.az(this.stylesheet.layers);this.dispatcher.broadcast("SL",w),this._order=w.map(B=>B.id),this._layers={},this._serializedLayers=null;for(let B of w){let Q=a.aA(B);Q.setEventedParent(this,{layer:{id:B.id}}),this._layers[B.id]=Q}}_loadSprite(w,B=!1,Q=void 0){let ee;this.imageManager.setLoaded(!1),this._spriteRequest=new AbortController,function(le,qe,Xe,ot){return a._(this,void 0,void 0,function*(){let Tt=C(le),Yt=Xe>1?"@2x":"",Kt={},xr={};for(let{id:Ir,url:ve}of Tt){let be=qe.transformRequest(M(ve,Yt,".json"),"SpriteJSON");Kt[Ir]=a.h(be,ot);let De=qe.transformRequest(M(ve,Yt,".png"),"SpriteImage");xr[Ir]=p.getImage(De,ot)}return yield Promise.all([...Object.values(Kt),...Object.values(xr)]),function(Ir,ve){return a._(this,void 0,void 0,function*(){let be={};for(let De in Ir){be[De]={};let Be=u.getImageCanvasContext((yield ve[De]).data),et=(yield Ir[De]).data;for(let We in et){let{width:it,height:Ft,x:Ht,y:tr,sdf:dr,pixelRatio:Sr,stretchX:Or,stretchY:Wr,content:ni,textFitWidth:Pi,textFitHeight:cn}=et[We];be[De][We]={data:null,pixelRatio:Sr,sdf:dr,stretchX:Or,stretchY:Wr,content:ni,textFitWidth:Pi,textFitHeight:cn,spriteData:{width:it,height:Ft,x:Ht,y:tr,context:Be}}}}return be})}(Kt,xr)})}(w,this.map._requestManager,this.map.getPixelRatio(),this._spriteRequest).then(le=>{if(this._spriteRequest=null,le)for(let qe in le){this._spritesImagesIds[qe]=[];let Xe=this._spritesImagesIds[qe]?this._spritesImagesIds[qe].filter(ot=>!(ot in le)):[];for(let ot of Xe)this.imageManager.removeImage(ot),this._changedImages[ot]=!0;for(let ot in le[qe]){let Tt=qe==="default"?ot:`${qe}:${ot}`;this._spritesImagesIds[qe].push(Tt),Tt in this.imageManager.images?this.imageManager.updateImage(Tt,le[qe][ot],!1):this.imageManager.addImage(Tt,le[qe][ot]),B&&(this._changedImages[Tt]=!0)}}}).catch(le=>{this._spriteRequest=null,ee=le,this.fire(new a.j(ee))}).finally(()=>{this.imageManager.setLoaded(!0),this._availableImages=this.imageManager.listImages(),B&&(this._changed=!0),this.dispatcher.broadcast("SI",this._availableImages),this.fire(new a.k("data",{dataType:"style"})),Q&&Q(ee)})}_unloadSprite(){for(let w of Object.values(this._spritesImagesIds).flat())this.imageManager.removeImage(w),this._changedImages[w]=!0;this._spritesImagesIds={},this._availableImages=this.imageManager.listImages(),this._changed=!0,this.dispatcher.broadcast("SI",this._availableImages),this.fire(new a.k("data",{dataType:"style"}))}_validateLayer(w){let B=this.sourceCaches[w.source];if(!B)return;let Q=w.sourceLayer;if(!Q)return;let ee=B.getSource();(ee.type==="geojson"||ee.vectorLayerIds&&ee.vectorLayerIds.indexOf(Q)===-1)&&this.fire(new a.j(new Error(`Source layer "${Q}" does not exist on source "${ee.id}" as specified by style layer "${w.id}".`)))}loaded(){if(!this._loaded||Object.keys(this._updatedSources).length)return!1;for(let w in this.sourceCaches)if(!this.sourceCaches[w].loaded())return!1;return!!this.imageManager.isLoaded()}_serializeByIds(w,B=!1){let Q=this._serializedAllLayers();if(!w||w.length===0)return Object.values(B?a.aB(Q):Q);let ee=[];for(let le of w)if(Q[le]){let qe=B?a.aB(Q[le]):Q[le];ee.push(qe)}return ee}_serializedAllLayers(){let w=this._serializedLayers;if(w)return w;w=this._serializedLayers={};let B=Object.keys(this._layers);for(let Q of B){let ee=this._layers[Q];ee.type!=="custom"&&(w[Q]=ee.serialize())}return w}hasTransitions(){if(this.light&&this.light.hasTransition()||this.sky&&this.sky.hasTransition())return!0;for(let w in this.sourceCaches)if(this.sourceCaches[w].hasTransition())return!0;for(let w in this._layers)if(this._layers[w].hasTransition())return!0;return!1}_checkLoaded(){if(!this._loaded)throw new Error("Style is not done loading.")}update(w){if(!this._loaded)return;let B=this._changed;if(B){let ee=Object.keys(this._updatedLayers),le=Object.keys(this._removedLayers);(ee.length||le.length)&&this._updateWorkerLayers(ee,le);for(let qe in this._updatedSources){let Xe=this._updatedSources[qe];if(Xe==="reload")this._reloadSource(qe);else{if(Xe!=="clear")throw new Error(`Invalid action ${Xe}`);this._clearSource(qe)}}this._updateTilesForChangedImages(),this._updateTilesForChangedGlyphs();for(let qe in this._updatedPaintProps)this._layers[qe].updateTransitions(w);this.light.updateTransitions(w),this.sky.updateTransitions(w),this._resetUpdates()}let Q={};for(let ee in this.sourceCaches){let le=this.sourceCaches[ee];Q[ee]=le.used,le.used=!1}for(let ee of this._order){let le=this._layers[ee];le.recalculate(w,this._availableImages),!le.isHidden(w.zoom)&&le.source&&(this.sourceCaches[le.source].used=!0)}for(let ee in Q){let le=this.sourceCaches[ee];!!Q[ee]!=!!le.used&&le.fire(new a.k("data",{sourceDataType:"visibility",dataType:"source",sourceId:ee}))}this.light.recalculate(w),this.sky.recalculate(w),this.z=w.zoom,B&&this.fire(new a.k("data",{dataType:"style"}))}_updateTilesForChangedImages(){let w=Object.keys(this._changedImages);if(w.length){for(let B in this.sourceCaches)this.sourceCaches[B].reloadTilesForDependencies(["icons","patterns"],w);this._changedImages={}}}_updateTilesForChangedGlyphs(){if(this._glyphsDidChange){for(let w in this.sourceCaches)this.sourceCaches[w].reloadTilesForDependencies(["glyphs"],[""]);this._glyphsDidChange=!1}}_updateWorkerLayers(w,B){this.dispatcher.broadcast("UL",{layers:this._serializeByIds(w,!1),removedIds:B})}_resetUpdates(){this._changed=!1,this._updatedLayers={},this._removedLayers={},this._updatedSources={},this._updatedPaintProps={},this._changedImages={},this._glyphsDidChange=!1}setState(w,B={}){var Q;this._checkLoaded();let ee=this.serialize();if(w=B.transformStyle?B.transformStyle(ee,w):w,((Q=B.validate)===null||Q===void 0||Q)&&da(this,a.u(w)))return!1;(w=a.aB(w)).layers=a.az(w.layers);let le=a.aC(ee,w),qe=this._getOperationsToPerform(le);if(qe.unimplemented.length>0)throw new Error(`Unimplemented: ${qe.unimplemented.join(", ")}.`);if(qe.operations.length===0)return!1;for(let Xe of qe.operations)Xe();return this.stylesheet=w,this._serializedLayers=null,!0}_getOperationsToPerform(w){let B=[],Q=[];for(let ee of w)switch(ee.command){case"setCenter":case"setZoom":case"setBearing":case"setPitch":continue;case"addLayer":B.push(()=>this.addLayer.apply(this,ee.args));break;case"removeLayer":B.push(()=>this.removeLayer.apply(this,ee.args));break;case"setPaintProperty":B.push(()=>this.setPaintProperty.apply(this,ee.args));break;case"setLayoutProperty":B.push(()=>this.setLayoutProperty.apply(this,ee.args));break;case"setFilter":B.push(()=>this.setFilter.apply(this,ee.args));break;case"addSource":B.push(()=>this.addSource.apply(this,ee.args));break;case"removeSource":B.push(()=>this.removeSource.apply(this,ee.args));break;case"setLayerZoomRange":B.push(()=>this.setLayerZoomRange.apply(this,ee.args));break;case"setLight":B.push(()=>this.setLight.apply(this,ee.args));break;case"setGeoJSONSourceData":B.push(()=>this.setGeoJSONSourceData.apply(this,ee.args));break;case"setGlyphs":B.push(()=>this.setGlyphs.apply(this,ee.args));break;case"setSprite":B.push(()=>this.setSprite.apply(this,ee.args));break;case"setSky":B.push(()=>this.setSky.apply(this,ee.args));break;case"setTerrain":B.push(()=>this.map.setTerrain.apply(this,ee.args));break;case"setTransition":B.push(()=>{});break;default:Q.push(ee.command)}return{operations:B,unimplemented:Q}}addImage(w,B){if(this.getImage(w))return this.fire(new a.j(new Error(`An image named "${w}" already exists.`)));this.imageManager.addImage(w,B),this._afterImageUpdated(w)}updateImage(w,B){this.imageManager.updateImage(w,B)}getImage(w){return this.imageManager.getImage(w)}removeImage(w){if(!this.getImage(w))return this.fire(new a.j(new Error(`An image named "${w}" does not exist.`)));this.imageManager.removeImage(w),this._afterImageUpdated(w)}_afterImageUpdated(w){this._availableImages=this.imageManager.listImages(),this._changedImages[w]=!0,this._changed=!0,this.dispatcher.broadcast("SI",this._availableImages),this.fire(new a.k("data",{dataType:"style"}))}listImages(){return this._checkLoaded(),this.imageManager.listImages()}addSource(w,B,Q={}){if(this._checkLoaded(),this.sourceCaches[w]!==void 0)throw new Error(`Source "${w}" already exists.`);if(!B.type)throw new Error(`The type property must be defined, but only the following properties were given: ${Object.keys(B).join(", ")}.`);if(["vector","raster","geojson","video","image"].indexOf(B.type)>=0&&this._validate(a.u.source,`sources.${w}`,B,null,Q))return;this.map&&this.map._collectResourceTiming&&(B.collectResourceTiming=!0);let ee=this.sourceCaches[w]=new mt(w,B,this.dispatcher);ee.style=this,ee.setEventedParent(this,()=>({isSourceLoaded:ee.loaded(),source:ee.serialize(),sourceId:w})),ee.onAdd(this.map),this._changed=!0}removeSource(w){if(this._checkLoaded(),this.sourceCaches[w]===void 0)throw new Error("There is no source with this ID");for(let Q in this._layers)if(this._layers[Q].source===w)return this.fire(new a.j(new Error(`Source "${w}" cannot be removed while layer "${Q}" is using it.`)));let B=this.sourceCaches[w];delete this.sourceCaches[w],delete this._updatedSources[w],B.fire(new a.k("data",{sourceDataType:"metadata",dataType:"source",sourceId:w})),B.setEventedParent(null),B.onRemove(this.map),this._changed=!0}setGeoJSONSourceData(w,B){if(this._checkLoaded(),this.sourceCaches[w]===void 0)throw new Error(`There is no source with this ID=${w}`);let Q=this.sourceCaches[w].getSource();if(Q.type!=="geojson")throw new Error(`geojsonSource.type is ${Q.type}, which is !== 'geojson`);Q.setData(B),this._changed=!0}getSource(w){return this.sourceCaches[w]&&this.sourceCaches[w].getSource()}addLayer(w,B,Q={}){this._checkLoaded();let ee=w.id;if(this.getLayer(ee))return void this.fire(new a.j(new Error(`Layer "${ee}" already exists on this map.`)));let le;if(w.type==="custom"){if(da(this,a.aD(w)))return;le=a.aA(w)}else{if("source"in w&&typeof w.source=="object"&&(this.addSource(ee,w.source),w=a.aB(w),w=a.e(w,{source:ee})),this._validate(a.u.layer,`layers.${ee}`,w,{arrayIndex:-1},Q))return;le=a.aA(w),this._validateLayer(le),le.setEventedParent(this,{layer:{id:ee}})}let qe=B?this._order.indexOf(B):this._order.length;if(B&&qe===-1)this.fire(new a.j(new Error(`Cannot add layer "${ee}" before non-existing layer "${B}".`)));else{if(this._order.splice(qe,0,ee),this._layerOrderChanged=!0,this._layers[ee]=le,this._removedLayers[ee]&&le.source&&le.type!=="custom"){let Xe=this._removedLayers[ee];delete this._removedLayers[ee],Xe.type!==le.type?this._updatedSources[le.source]="clear":(this._updatedSources[le.source]="reload",this.sourceCaches[le.source].pause())}this._updateLayer(le),le.onAdd&&le.onAdd(this.map)}}moveLayer(w,B){if(this._checkLoaded(),this._changed=!0,!this._layers[w])return void this.fire(new a.j(new Error(`The layer '${w}' does not exist in the map's style and cannot be moved.`)));if(w===B)return;let Q=this._order.indexOf(w);this._order.splice(Q,1);let ee=B?this._order.indexOf(B):this._order.length;B&&ee===-1?this.fire(new a.j(new Error(`Cannot move layer "${w}" before non-existing layer "${B}".`))):(this._order.splice(ee,0,w),this._layerOrderChanged=!0)}removeLayer(w){this._checkLoaded();let B=this._layers[w];if(!B)return void this.fire(new a.j(new Error(`Cannot remove non-existing layer "${w}".`)));B.setEventedParent(null);let Q=this._order.indexOf(w);this._order.splice(Q,1),this._layerOrderChanged=!0,this._changed=!0,this._removedLayers[w]=B,delete this._layers[w],this._serializedLayers&&delete this._serializedLayers[w],delete this._updatedLayers[w],delete this._updatedPaintProps[w],B.onRemove&&B.onRemove(this.map)}getLayer(w){return this._layers[w]}getLayersOrder(){return[...this._order]}hasLayer(w){return w in this._layers}setLayerZoomRange(w,B,Q){this._checkLoaded();let ee=this.getLayer(w);ee?ee.minzoom===B&&ee.maxzoom===Q||(B!=null&&(ee.minzoom=B),Q!=null&&(ee.maxzoom=Q),this._updateLayer(ee)):this.fire(new a.j(new Error(`Cannot set the zoom range of non-existing layer "${w}".`)))}setFilter(w,B,Q={}){this._checkLoaded();let ee=this.getLayer(w);if(ee){if(!a.aE(ee.filter,B))return B==null?(ee.filter=void 0,void this._updateLayer(ee)):void(this._validate(a.u.filter,`layers.${ee.id}.filter`,B,null,Q)||(ee.filter=a.aB(B),this._updateLayer(ee)))}else this.fire(new a.j(new Error(`Cannot filter non-existing layer "${w}".`)))}getFilter(w){return a.aB(this.getLayer(w).filter)}setLayoutProperty(w,B,Q,ee={}){this._checkLoaded();let le=this.getLayer(w);le?a.aE(le.getLayoutProperty(B),Q)||(le.setLayoutProperty(B,Q,ee),this._updateLayer(le)):this.fire(new a.j(new Error(`Cannot style non-existing layer "${w}".`)))}getLayoutProperty(w,B){let Q=this.getLayer(w);if(Q)return Q.getLayoutProperty(B);this.fire(new a.j(new Error(`Cannot get style of non-existing layer "${w}".`)))}setPaintProperty(w,B,Q,ee={}){this._checkLoaded();let le=this.getLayer(w);le?a.aE(le.getPaintProperty(B),Q)||(le.setPaintProperty(B,Q,ee)&&this._updateLayer(le),this._changed=!0,this._updatedPaintProps[w]=!0,this._serializedLayers=null):this.fire(new a.j(new Error(`Cannot style non-existing layer "${w}".`)))}getPaintProperty(w,B){return this.getLayer(w).getPaintProperty(B)}setFeatureState(w,B){this._checkLoaded();let Q=w.source,ee=w.sourceLayer,le=this.sourceCaches[Q];if(le===void 0)return void this.fire(new a.j(new Error(`The source '${Q}' does not exist in the map's style.`)));let qe=le.getSource().type;qe==="geojson"&&ee?this.fire(new a.j(new Error("GeoJSON sources cannot have a sourceLayer parameter."))):qe!=="vector"||ee?(w.id===void 0&&this.fire(new a.j(new Error("The feature id parameter must be provided."))),le.setFeatureState(ee,w.id,B)):this.fire(new a.j(new Error("The sourceLayer parameter must be provided for vector source types.")))}removeFeatureState(w,B){this._checkLoaded();let Q=w.source,ee=this.sourceCaches[Q];if(ee===void 0)return void this.fire(new a.j(new Error(`The source '${Q}' does not exist in the map's style.`)));let le=ee.getSource().type,qe=le==="vector"?w.sourceLayer:void 0;le!=="vector"||qe?B&&typeof w.id!="string"&&typeof w.id!="number"?this.fire(new a.j(new Error("A feature id is required to remove its specific state property."))):ee.removeFeatureState(qe,w.id,B):this.fire(new a.j(new Error("The sourceLayer parameter must be provided for vector source types.")))}getFeatureState(w){this._checkLoaded();let B=w.source,Q=w.sourceLayer,ee=this.sourceCaches[B];if(ee!==void 0)return ee.getSource().type!=="vector"||Q?(w.id===void 0&&this.fire(new a.j(new Error("The feature id parameter must be provided."))),ee.getFeatureState(Q,w.id)):void this.fire(new a.j(new Error("The sourceLayer parameter must be provided for vector source types.")));this.fire(new a.j(new Error(`The source '${B}' does not exist in the map's style.`)))}getTransition(){return a.e({duration:300,delay:0},this.stylesheet&&this.stylesheet.transition)}serialize(){if(!this._loaded)return;let w=a.aF(this.sourceCaches,le=>le.serialize()),B=this._serializeByIds(this._order,!0),Q=this.map.getTerrain()||void 0,ee=this.stylesheet;return a.aG({version:ee.version,name:ee.name,metadata:ee.metadata,light:ee.light,sky:ee.sky,center:ee.center,zoom:ee.zoom,bearing:ee.bearing,pitch:ee.pitch,sprite:ee.sprite,glyphs:ee.glyphs,transition:ee.transition,sources:w,layers:B,terrain:Q},le=>le!==void 0)}_updateLayer(w){this._updatedLayers[w.id]=!0,w.source&&!this._updatedSources[w.source]&&this.sourceCaches[w.source].getSource().type!=="raster"&&(this._updatedSources[w.source]="reload",this.sourceCaches[w.source].pause()),this._serializedLayers=null,this._changed=!0}_flattenAndSortRenderedFeatures(w){let B=qe=>this._layers[qe].type==="fill-extrusion",Q={},ee=[];for(let qe=this._order.length-1;qe>=0;qe--){let Xe=this._order[qe];if(B(Xe)){Q[Xe]=qe;for(let ot of w){let Tt=ot[Xe];if(Tt)for(let Yt of Tt)ee.push(Yt)}}}ee.sort((qe,Xe)=>Xe.intersectionZ-qe.intersectionZ);let le=[];for(let qe=this._order.length-1;qe>=0;qe--){let Xe=this._order[qe];if(B(Xe))for(let ot=ee.length-1;ot>=0;ot--){let Tt=ee[ot].feature;if(Q[Tt.layer.id]<qe)break;le.push(Tt),ee.pop()}else for(let ot of w){let Tt=ot[Xe];if(Tt)for(let Yt of Tt)le.push(Yt.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,Yt,Kt,xr,Ir){let ve={},be=xr.queryRenderedSymbols(Yt),De=[];for(let Be of Object.keys(be).map(Number))De.push(Ir[Be]);De.sort(ge);for(let Be of De){let et=Be.featureIndex.lookupSymbolFeatures(be[Be.bucketInstanceId],ot,Be.bucketIndex,Be.sourceLayerIndex,Kt.filter,Kt.layers,Kt.availableImages,Xe);for(let We in et){let it=ve[We]=ve[We]||[],Ft=et[We];Ft.sort((Ht,tr)=>{let dr=Be.featureSortOrder;if(dr){let Sr=dr.indexOf(Ht.featureIndex);return dr.indexOf(tr.featureIndex)-Sr}return tr.featureIndex-Ht.featureIndex});for(let Ht of Ft)it.push(Ht)}}for(let Be in ve)ve[Be].forEach(et=>{let We=et.feature,it=Tt[Xe[Be].source].getFeatureState(We.layer["source-layer"],We.id);We.source=We.layer.source,We.layer["source-layer"]&&(We.sourceLayer=We.layer["source-layer"]),We.state=it});return ve}(this._layers,qe,this.sourceCaches,w,B,this.placement.collisionIndex,this.placement.retainedQueryData)),this._flattenAndSortRenderedFeatures(le)}querySourceFeatures(w,B){B&&B.filter&&this._validate(a.u.filter,"querySourceFeatures.filter",B.filter,null,B);let Q=this.sourceCaches[w];return Q?function(ee,le){let qe=ee.getRenderableIds().map(Tt=>ee.getTileByID(Tt)),Xe=[],ot={};for(let Tt=0;Tt<qe.length;Tt++){let Yt=qe[Tt],Kt=Yt.tileID.canonical.key;ot[Kt]||(ot[Kt]=!0,Yt.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),Qt().off(cr,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 Yt=this._layers[Tt];if(Yt.type!=="symbol")continue;if(!ot[Yt.source]){let xr=this.sourceCaches[Yt.source];ot[Yt.source]=xr.getRenderableIds(!0).map(Ir=>xr.getTileByID(Ir)).sort((Ir,ve)=>ve.tileID.overscaledZ-Ir.tileID.overscaledZ||(Ir.tileID.isLessThan(ve.tileID)?-1:1))}let Kt=this.crossTileSymbolIndex.addLayer(Yt,ot[Yt.source],w.center.lng);qe=qe||Kt}if(this.crossTileSymbolIndex.pruneUnusedLayers(this._order),((le=le||this._layerOrderChanged||Q===0)||!this.pauseablePlacement||this.pauseablePlacement.isDone()&&!this.placement.stillRecent(u.now(),w.zoom))&&(this.pauseablePlacement=new Ba(w,this.map.terrain,this._order,le,B,Q,ee,this.placement),this._layerOrderChanged=!1),this.pauseablePlacement.isDone()?this.placement.setStale():(this.pauseablePlacement.continuePlacement(this._order,this._layers,ot),this.pauseablePlacement.isDone()&&(this.placement=this.pauseablePlacement.commit(u.now()),Xe=!0),qe&&this.pauseablePlacement.placement.setStale()),Xe||qe)for(let Tt of this._order){let Yt=this._layers[Tt];Yt.type==="symbol"&&this.placement.updateLayerOpacities(Yt,ot[Yt.source])}return!this.pauseablePlacement.isDone()||this.placement.hasTransitions(u.now())}_releaseSymbolFadeTiles(){for(let w in this.sourceCaches)this.sourceCaches[w].releaseSymbolFadeTiles()}getImages(w,B){return a._(this,void 0,void 0,function*(){let Q=yield this.imageManager.getImages(B.icons);this._updateTilesForChangedImages();let ee=this.sourceCaches[B.source];return ee&&ee.setDependencies(B.tileID.key,B.type,B.icons),Q})}getGlyphs(w,B){return a._(this,void 0,void 0,function*(){let Q=yield this.glyphManager.getGlyphs(B.stacks),ee=this.sourceCaches[B.source];return ee&&ee.setDependencies(B.tileID.key,B.type,[""]),Q})}getGlyphsUrl(){return this.stylesheet.glyphs||null}setGlyphs(w,B={}){this._checkLoaded(),w&&this._validate(a.u.glyphs,"glyphs",w,null,B)||(this._glyphsDidChange=!0,this.stylesheet.glyphs=w,this.glyphManager.entries={},this.glyphManager.setURL(w))}addSprite(w,B,Q={},ee){this._checkLoaded();let le=[{id:w,url:B}],qe=[...C(this.stylesheet.sprite),...le];this._validate(a.u.sprite,"sprite",qe,null,Q)||(this.stylesheet.sprite=qe,this._loadSprite(le,!0,ee))}removeSprite(w){this._checkLoaded();let B=C(this.stylesheet.sprite);if(B.find(Q=>Q.id===w)){if(this._spritesImagesIds[w])for(let Q of this._spritesImagesIds[w])this.imageManager.removeImage(Q),this._changedImages[Q]=!0;B.splice(B.findIndex(Q=>Q.id===w),1),this.stylesheet.sprite=B.length>0?B:void 0,delete this._spritesImagesIds[w],this._availableImages=this.imageManager.listImages(),this._changed=!0,this.dispatcher.broadcast("SI",this._availableImages),this.fire(new a.k("data",{dataType:"style"}))}else this.fire(new a.j(new Error(`Sprite "${w}" doesn't exists on this map.`)))}getSprite(){return C(this.stylesheet.sprite)}setSprite(w,B={},Q){this._checkLoaded(),w&&this._validate(a.u.sprite,"sprite",w,null,B)||(this.stylesheet.sprite=w,w?this._loadSprite(w,!0,Q):(this._unloadSprite(),Q&&Q(null)))}}var vo=a.Y([{name:"a_pos",type:"Int16",components:2}]);let jn={prelude:Mt(`#ifdef GL_ES
precision mediump float;
#else
#if !defined(lowp)
#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:Mt(`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:Mt(`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:Mt(`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:Mt("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:Mt(`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:Mt(`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:Mt("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:Mt("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:Mt("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:Mt(`#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:Mt(`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:Mt(`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:Mt(`#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:Mt(`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:Mt(`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:Mt(`#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:Mt(`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:Mt(`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:Mt(`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:Mt(`#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:Mt(`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:Mt(`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:Mt(`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:Mt(`#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:Mt(`#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:Mt("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:Mt("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:Mt("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:Mt("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 Mt(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,Yt,Kt,xr)=>(Xe[xr]=!0,Tt==="define"?`
#ifndef HAS_UNIFORM_u_${xr}
varying ${Yt} ${Kt} ${xr};
#else
uniform ${Yt} ${Kt} u_${xr};
#endif
`:`
#ifdef HAS_UNIFORM_u_${xr}
${Yt} ${Kt} ${xr} = u_${xr};
#endif
`)),vertexSource:w=w.replace(B,(ot,Tt,Yt,Kt,xr)=>{let Ir=Kt==="float"?"vec2":"vec4",ve=xr.match(/color/)?"color":Ir;return Xe[xr]?Tt==="define"?`
#ifndef HAS_UNIFORM_u_${xr}
uniform lowp float u_${xr}_t;
attribute ${Yt} ${Ir} a_${xr};
varying ${Yt} ${Kt} ${xr};
#else
uniform ${Yt} ${Kt} u_${xr};
#endif
`:ve==="vec4"?`
#ifndef HAS_UNIFORM_u_${xr}
${xr} = a_${xr};
#else
${Yt} ${Kt} ${xr} = u_${xr};
#endif
`:`
#ifndef HAS_UNIFORM_u_${xr}
${xr} = unpack_mix_${ve}(a_${xr}, u_${xr}_t);
#else
${Yt} ${Kt} ${xr} = u_${xr};
#endif
`:Tt==="define"?`
#ifndef HAS_UNIFORM_u_${xr}
uniform lowp float u_${xr}_t;
attribute ${Yt} ${Ir} a_${xr};
#else
uniform ${Yt} ${Kt} u_${xr};
#endif
`:ve==="vec4"?`
#ifndef HAS_UNIFORM_u_${xr}
${Yt} ${Kt} ${xr} = a_${xr};
#else
${Yt} ${Kt} ${xr} = u_${xr};
#endif
`:`
#ifndef HAS_UNIFORM_u_${xr}
${Yt} ${Kt} ${xr} = unpack_mix_${ve}(a_${xr}, u_${xr}_t);
#else
${Yt} ${Kt} ${xr} = u_${xr};
#endif
`}),staticAttributes:Q,staticUniforms:qe}}class kr{constructor(){this.boundProgram=null,this.boundLayoutVertexBuffer=null,this.boundPaintVertexBuffers=[],this.boundIndexBuffer=null,this.boundVertexOffset=null,this.boundDynamicVertexBuffer=null,this.vao=null}bind(w,B,Q,ee,le,qe,Xe,ot,Tt){this.context=w;let Yt=this.boundPaintVertexBuffers.length!==ee.length;for(let Kt=0;!Yt&&Kt<ee.length;Kt++)this.boundPaintVertexBuffers[Kt]!==ee[Kt]&&(Yt=!0);!this.vao||this.boundProgram!==B||this.boundLayoutVertexBuffer!==Q||Yt||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,Yt=this.context,Kt=Yt.gl;this.vao&&this.destroy(),this.vao=Yt.createVertexArray(),Yt.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(Kt,w);for(let xr of Q)xr.enableAttributes(Kt,w);qe&&qe.enableAttributes(Kt,w),Xe&&Xe.enableAttributes(Kt,w),ot&&ot.enableAttributes(Kt,w),B.bind(),B.setVertexAttribPointers(Kt,w,le);for(let xr of Q)xr.bind(),xr.setVertexAttribPointers(Kt,w,le);qe&&(qe.bind(),qe.setVertexAttribPointers(Kt,w,le)),ee&&ee.bind(),Xe&&(Xe.bind(),Xe.setVertexAttribPointers(Kt,w,le)),ot&&(ot.bind(),ot.setVertexAttribPointers(Kt,w,le)),Yt.currentNumAttributes=Tt}destroy(){this.vao&&(this.context.deleteVertexArray(this.vao),this.vao=null)}}let Jr=(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 vi(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 hn{constructor(w,B,Q,ee,le,qe){let Xe=w.gl;this.program=Xe.createProgram();let ot=vi(B.staticAttributes),Tt=Q?Q.getBinderAttributes():[],Yt=ot.concat(Tt),Kt=jn.prelude.staticUniforms?vi(jn.prelude.staticUniforms):[],xr=B.staticUniforms?vi(B.staticUniforms):[],Ir=Q?Q.getBinderUniforms():[],ve=Kt.concat(xr).concat(Ir),be=[];for(let Ht of ve)be.indexOf(Ht)<0&&be.push(Ht);let De=Q?Q.defines():[];le&&De.push("#define OVERDRAW_INSPECTOR;"),qe&&De.push("#define TERRAIN3D;");let Be=De.concat(jn.prelude.fragmentSource,B.fragmentSource).join(`
`),et=De.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,et),Xe.compileShader(it),!Xe.getShaderParameter(it,Xe.COMPILE_STATUS))throw new Error(`Could not compile vertex shader: ${Xe.getShaderInfoLog(it)}`);Xe.attachShader(this.program,it),this.attributes={};let Ft={};this.numAttributes=Yt.length;for(let Ht=0;Ht<this.numAttributes;Ht++)Yt[Ht]&&(Xe.bindAttribLocation(this.program,Ht,Yt[Ht]),this.attributes[Yt[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 tr=be[Ht];if(tr&&!Ft[tr]){let dr=Xe.getUniformLocation(this.program,tr);dr&&(Ft[tr]=dr)}}this.fixedUniforms=ee(w,Ft),this.terrainUniforms=((Ht,tr)=>({u_depth:new a.aH(Ht,tr.u_depth),u_terrain:new a.aH(Ht,tr.u_terrain),u_terrain_dim:new a.aI(Ht,tr.u_terrain_dim),u_terrain_matrix:new a.aJ(Ht,tr.u_terrain_matrix),u_terrain_unpack:new a.aK(Ht,tr.u_terrain_unpack),u_terrain_exaggeration:new a.aI(Ht,tr.u_terrain_exaggeration)}))(w,Ft),this.binderUniforms=Q?Q.getUniforms(w,Ft):[]}draw(w,B,Q,ee,le,qe,Xe,ot,Tt,Yt,Kt,xr,Ir,ve,be,De,Be,et){let We=w.gl;if(this.failedToCreate)return;if(w.program.set(this.program),w.setDepthMode(Q),w.setStencilMode(ee),w.setColorMode(le),w.setCullFace(qe),ot){w.activeTexture.set(We.TEXTURE2),We.bindTexture(We.TEXTURE_2D,ot.depthTexture),w.activeTexture.set(We.TEXTURE3),We.bindTexture(We.TEXTURE_2D,ot.texture);for(let Ft in this.terrainUniforms)this.terrainUniforms[Ft].set(ot[Ft])}for(let Ft in this.fixedUniforms)this.fixedUniforms[Ft].set(Xe[Ft]);be&&be.setUniforms(w,this.binderUniforms,Ir,{zoom:ve});let it=0;switch(B){case We.LINES:it=2;break;case We.TRIANGLES:it=3;break;case We.LINE_STRIP:it=1}for(let Ft of xr.get()){let Ht=Ft.vaos||(Ft.vaos={});(Ht[Tt]||(Ht[Tt]=new kr)).bind(w,this,Yt,be?be.getPaintVertexBuffers():[],Kt,Ft.vertexOffset,De,Be,et),We.drawElements(B,Ft.primitiveLength*it,We.UNSIGNED_SHORT,Ft.primitiveOffset*it*2)}}}function An(ue,w,B){let Q=1/In(B,1,w.transform.tileZoom),ee=Math.pow(2,B.tileID.overscaledZ),le=B.tileSize*Math.pow(2,w.transform.tileZoom)/ee,qe=le*(B.tileID.canonical.x+B.tileID.wrap*ee),Xe=le*B.tileID.canonical.y;return{u_image:0,u_texsize:B.imageAtlasTexture.size,u_scale:[Q,ue.fromScale,ue.toScale],u_fade:ue.t,u_pixel_coord_upper:[qe>>16,Xe>>16],u_pixel_coord_lower:[65535&qe,65535&Xe]}}let Mn=(ue,w,B,Q)=>{let ee=w.style.light,le=ee.properties.get("position"),qe=[le.x,le.y,le.z],Xe=function(){var Tt=new a.A(9);return a.A!=Float32Array&&(Tt[1]=0,Tt[2]=0,Tt[3]=0,Tt[5]=0,Tt[6]=0,Tt[7]=0),Tt[0]=1,Tt[4]=1,Tt[8]=1,Tt}();ee.properties.get("anchor")==="viewport"&&function(Tt,Yt){var Kt=Math.sin(Yt),xr=Math.cos(Yt);Tt[0]=xr,Tt[1]=Kt,Tt[2]=0,Tt[3]=-Kt,Tt[4]=xr,Tt[5]=0,Tt[6]=0,Tt[7]=0,Tt[8]=1}(Xe,-w.transform.angle),function(Tt,Yt,Kt){var xr=Yt[0],Ir=Yt[1],ve=Yt[2];Tt[0]=xr*Kt[0]+Ir*Kt[3]+ve*Kt[6],Tt[1]=xr*Kt[1]+Ir*Kt[4]+ve*Kt[7],Tt[2]=xr*Kt[2]+Ir*Kt[5]+ve*Kt[8]}(qe,qe,Xe);let ot=ee.properties.get("color");return{u_matrix:ue,u_lightpos:qe,u_lightintensity:ee.properties.get("intensity"),u_lightcolor:[ot.r,ot.g,ot.b],u_vertical_gradient:+B,u_opacity:Q}},Li=(ue,w,B,Q,ee,le,qe)=>a.e(Mn(ue,w,B,Q),An(le,w,qe),{u_height_factor:-Math.pow(2,ee.overscaledZ)/qe.tileSize/8}),_n=ue=>({u_matrix:ue}),ya=(ue,w,B,Q)=>a.e(_n(ue),An(B,w,Q)),Jn=(ue,w)=>({u_matrix:ue,u_world:w}),Ma=(ue,w,B,Q,ee)=>a.e(ya(ue,w,B,Q),{u_world:ee}),_o=(ue,w,B,Q)=>{let ee=ue.transform,le,qe;if(Q.paint.get("circle-pitch-alignment")==="map"){let Xe=In(B,1,ee.zoom);le=!0,qe=[Xe,Xe]}else le=!1,qe=ee.pixelsToGLUnits;return{u_camera_to_center_distance:ee.cameraToCenterDistance,u_scale_with_map:+(Q.paint.get("circle-pitch-scale")==="map"),u_matrix:ue.translatePosMatrix(w.posMatrix,B,Q.paint.get("circle-translate"),Q.paint.get("circle-translate-anchor")),u_pitch_with_map:+le,u_device_pixel_ratio:ue.pixelRatio,u_extrude_scale:qe}},No=(ue,w,B)=>({u_matrix:ue,u_inv_matrix:w,u_camera_to_center_distance:B.cameraToCenterDistance,u_viewport_size:[B.width,B.height]}),po=(ue,w,B=1)=>({u_matrix:ue,u_color:w,u_overlay:0,u_overlay_scale:B}),Lo=ue=>({u_matrix:ue}),ko=(ue,w,B,Q)=>({u_matrix:ue,u_extrude_scale:In(w,1,B),u_intensity:Q}),Ds=(ue,w,B,Q)=>{let ee=a.H();a.aP(ee,0,ue.width,ue.height,0,0,1);let le=ue.context.gl;return{u_matrix:ee,u_world:[le.drawingBufferWidth,le.drawingBufferHeight],u_image:B,u_color_ramp:Q,u_opacity:w.paint.get("heatmap-opacity")}};function Fs(ue,w){let B=Math.pow(2,w.canonical.z),Q=w.canonical.y;return[new a.Z(0,Q/B).toLngLat().lat,new a.Z(0,(Q+1)/B).toLngLat().lat]}let ll=(ue,w,B,Q)=>{let ee=ue.transform;return{u_matrix:As(ue,w,B,Q),u_ratio:1/In(w,1,ee.zoom),u_device_pixel_ratio:ue.pixelRatio,u_units_to_pixels:[1/ee.pixelsToGLUnits[0],1/ee.pixelsToGLUnits[1]]}},ul=(ue,w,B,Q,ee)=>a.e(ll(ue,w,B,ee),{u_image:0,u_image_height:Q}),zl=(ue,w,B,Q,ee)=>{let le=ue.transform,qe=il(w,le);return{u_matrix:As(ue,w,B,ee),u_texsize:w.imageAtlasTexture.size,u_ratio:1/In(w,1,le.zoom),u_device_pixel_ratio:ue.pixelRatio,u_image:0,u_scale:[qe,Q.fromScale,Q.toScale],u_fade:Q.t,u_units_to_pixels:[1/le.pixelsToGLUnits[0],1/le.pixelsToGLUnits[1]]}},us=(ue,w,B,Q,ee,le)=>{let qe=ue.lineAtlas,Xe=il(w,ue.transform),ot=B.layout.get("line-cap")==="round",Tt=qe.getDash(Q.from,ot),Yt=qe.getDash(Q.to,ot),Kt=Tt.width*ee.fromScale,xr=Yt.width*ee.toScale;return a.e(ll(ue,w,B,le),{u_patternscale_a:[Xe/Kt,-Tt.height/2],u_patternscale_b:[Xe/xr,-Yt.height/2],u_sdfgamma:qe.width/(256*Math.min(Kt,xr)*ue.pixelRatio)/2,u_image:0,u_tex_y_a:Tt.y,u_tex_y_b:Yt.y,u_mix:ee.t})};function il(ue,w){return 1/In(ue,1,w.tileZoom)}function As(ue,w,B,Q){return ue.translatePosMatrix(Q?Q.posMatrix:w.tileID.posMatrix,w,B.paint.get("line-translate"),B.paint.get("line-translate-anchor"))}let cl=(ue,w,B,Q,ee)=>{return{u_matrix:ue,u_tl_parent:w,u_scale_parent:B,u_buffer_scale:1,u_fade_t:Q.mix,u_opacity:Q.opacity*ee.paint.get("raster-opacity"),u_image0:0,u_image1:1,u_brightness_low:ee.paint.get("raster-brightness-min"),u_brightness_high:ee.paint.get("raster-brightness-max"),u_saturation_factor:(qe=ee.paint.get("raster-saturation"),qe>0?1-1/(1.001-qe):-qe),u_contrast_factor:(le=ee.paint.get("raster-contrast"),le>0?1/(1-le):1+le),u_spin_weights:Ks(ee.paint.get("raster-hue-rotate"))};var le,qe};function Ks(ue){ue*=Math.PI/180;let w=Math.sin(ue),B=Math.cos(ue);return[(2*B+1)/3,(-Math.sqrt(3)*w-B+1)/3,(Math.sqrt(3)*w-B+1)/3]}let zs=(ue,w,B,Q,ee,le,qe,Xe,ot,Tt,Yt,Kt,xr,Ir)=>{let ve=qe.transform;return{u_is_size_zoom_constant:+(ue==="constant"||ue==="source"),u_is_size_feature_constant:+(ue==="constant"||ue==="camera"),u_size_t:w?w.uSizeT:0,u_size:w?w.uSize:0,u_camera_to_center_distance:ve.cameraToCenterDistance,u_pitch:ve.pitch/360*2*Math.PI,u_rotate_symbol:+B,u_aspect_ratio:ve.width/ve.height,u_fade_change:qe.options.fadeDuration?qe.symbolFadeChange:1,u_matrix:Xe,u_label_plane_matrix:ot,u_coord_matrix:Tt,u_is_text:+Kt,u_pitch_with_map:+Q,u_is_along_line:ee,u_is_variable_anchor:le,u_texsize:xr,u_texture:0,u_translation:Yt,u_pitched_scale:Ir}},Io=(ue,w,B,Q,ee,le,qe,Xe,ot,Tt,Yt,Kt,xr,Ir,ve)=>{let be=qe.transform;return a.e(zs(ue,w,B,Q,ee,le,qe,Xe,ot,Tt,Yt,Kt,xr,ve),{u_gamma_scale:Q?Math.cos(be._pitch)*be.cameraToCenterDistance:1,u_device_pixel_ratio:qe.pixelRatio,u_is_halo:+Ir})},ls=(ue,w,B,Q,ee,le,qe,Xe,ot,Tt,Yt,Kt,xr,Ir)=>a.e(Io(ue,w,B,Q,ee,le,qe,Xe,ot,Tt,Yt,!0,Kt,!0,Ir),{u_texsize_icon:xr,u_texture_icon:1}),Zl=(ue,w,B)=>({u_matrix:ue,u_opacity:w,u_color:B}),Su=(ue,w,B,Q,ee,le)=>a.e(function(qe,Xe,ot,Tt){let Yt=ot.imageManager.getPattern(qe.from.toString()),Kt=ot.imageManager.getPattern(qe.to.toString()),{width:xr,height:Ir}=ot.imageManager.getPixelSize(),ve=Math.pow(2,Tt.tileID.overscaledZ),be=Tt.tileSize*Math.pow(2,ot.transform.tileZoom)/ve,De=be*(Tt.tileID.canonical.x+Tt.tileID.wrap*ve),Be=be*Tt.tileID.canonical.y;return{u_image:0,u_pattern_tl_a:Yt.tl,u_pattern_br_a:Yt.br,u_pattern_tl_b:Kt.tl,u_pattern_br_b:Kt.br,u_texsize:[xr,Ir],u_mix:Xe.t,u_pattern_size_a:Yt.displaySize,u_pattern_size_b:Kt.displaySize,u_scale_a:Xe.fromScale,u_scale_b:Xe.toScale,u_tile_units_to_pixels:1/In(Tt,1,ot.transform.tileZoom),u_pixel_coord_upper:[De>>16,Be>>16],u_pixel_coord_lower:[65535&De,65535&Be]}}(Q,le,B,ee),{u_matrix:ue,u_opacity:w}),nc={fillExtrusion:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_lightpos:new a.aN(ue,w.u_lightpos),u_lightintensity:new a.aI(ue,w.u_lightintensity),u_lightcolor:new a.aN(ue,w.u_lightcolor),u_vertical_gradient:new a.aI(ue,w.u_vertical_gradient),u_opacity:new a.aI(ue,w.u_opacity)}),fillExtrusionPattern:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_lightpos:new a.aN(ue,w.u_lightpos),u_lightintensity:new a.aI(ue,w.u_lightintensity),u_lightcolor:new a.aN(ue,w.u_lightcolor),u_vertical_gradient:new a.aI(ue,w.u_vertical_gradient),u_height_factor:new a.aI(ue,w.u_height_factor),u_image:new a.aH(ue,w.u_image),u_texsize:new a.aO(ue,w.u_texsize),u_pixel_coord_upper:new a.aO(ue,w.u_pixel_coord_upper),u_pixel_coord_lower:new a.aO(ue,w.u_pixel_coord_lower),u_scale:new a.aN(ue,w.u_scale),u_fade:new a.aI(ue,w.u_fade),u_opacity:new a.aI(ue,w.u_opacity)}),fill:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix)}),fillPattern:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_image:new a.aH(ue,w.u_image),u_texsize:new a.aO(ue,w.u_texsize),u_pixel_coord_upper:new a.aO(ue,w.u_pixel_coord_upper),u_pixel_coord_lower:new a.aO(ue,w.u_pixel_coord_lower),u_scale:new a.aN(ue,w.u_scale),u_fade:new a.aI(ue,w.u_fade)}),fillOutline:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_world:new a.aO(ue,w.u_world)}),fillOutlinePattern:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_world:new a.aO(ue,w.u_world),u_image:new a.aH(ue,w.u_image),u_texsize:new a.aO(ue,w.u_texsize),u_pixel_coord_upper:new a.aO(ue,w.u_pixel_coord_upper),u_pixel_coord_lower:new a.aO(ue,w.u_pixel_coord_lower),u_scale:new a.aN(ue,w.u_scale),u_fade:new a.aI(ue,w.u_fade)}),circle:(ue,w)=>({u_camera_to_center_distance:new a.aI(ue,w.u_camera_to_center_distance),u_scale_with_map:new a.aH(ue,w.u_scale_with_map),u_pitch_with_map:new a.aH(ue,w.u_pitch_with_map),u_extrude_scale:new a.aO(ue,w.u_extrude_scale),u_device_pixel_ratio:new a.aI(ue,w.u_device_pixel_ratio),u_matrix:new a.aJ(ue,w.u_matrix)}),collisionBox:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_pixel_extrude_scale:new a.aO(ue,w.u_pixel_extrude_scale)}),collisionCircle:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_inv_matrix:new a.aJ(ue,w.u_inv_matrix),u_camera_to_center_distance:new a.aI(ue,w.u_camera_to_center_distance),u_viewport_size:new a.aO(ue,w.u_viewport_size)}),debug:(ue,w)=>({u_color:new a.aL(ue,w.u_color),u_matrix:new a.aJ(ue,w.u_matrix),u_overlay:new a.aH(ue,w.u_overlay),u_overlay_scale:new a.aI(ue,w.u_overlay_scale)}),clippingMask:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix)}),heatmap:(ue,w)=>({u_extrude_scale:new a.aI(ue,w.u_extrude_scale),u_intensity:new a.aI(ue,w.u_intensity),u_matrix:new a.aJ(ue,w.u_matrix)}),heatmapTexture:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_world:new a.aO(ue,w.u_world),u_image:new a.aH(ue,w.u_image),u_color_ramp:new a.aH(ue,w.u_color_ramp),u_opacity:new a.aI(ue,w.u_opacity)}),hillshade:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_image:new a.aH(ue,w.u_image),u_latrange:new a.aO(ue,w.u_latrange),u_light:new a.aO(ue,w.u_light),u_shadow:new a.aL(ue,w.u_shadow),u_highlight:new a.aL(ue,w.u_highlight),u_accent:new a.aL(ue,w.u_accent)}),hillshadePrepare:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_image:new a.aH(ue,w.u_image),u_dimension:new a.aO(ue,w.u_dimension),u_zoom:new a.aI(ue,w.u_zoom),u_unpack:new a.aK(ue,w.u_unpack)}),line:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_ratio:new a.aI(ue,w.u_ratio),u_device_pixel_ratio:new a.aI(ue,w.u_device_pixel_ratio),u_units_to_pixels:new a.aO(ue,w.u_units_to_pixels)}),lineGradient:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_ratio:new a.aI(ue,w.u_ratio),u_device_pixel_ratio:new a.aI(ue,w.u_device_pixel_ratio),u_units_to_pixels:new a.aO(ue,w.u_units_to_pixels),u_image:new a.aH(ue,w.u_image),u_image_height:new a.aI(ue,w.u_image_height)}),linePattern:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_texsize:new a.aO(ue,w.u_texsize),u_ratio:new a.aI(ue,w.u_ratio),u_device_pixel_ratio:new a.aI(ue,w.u_device_pixel_ratio),u_image:new a.aH(ue,w.u_image),u_units_to_pixels:new a.aO(ue,w.u_units_to_pixels),u_scale:new a.aN(ue,w.u_scale),u_fade:new a.aI(ue,w.u_fade)}),lineSDF:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_ratio:new a.aI(ue,w.u_ratio),u_device_pixel_ratio:new a.aI(ue,w.u_device_pixel_ratio),u_units_to_pixels:new a.aO(ue,w.u_units_to_pixels),u_patternscale_a:new a.aO(ue,w.u_patternscale_a),u_patternscale_b:new a.aO(ue,w.u_patternscale_b),u_sdfgamma:new a.aI(ue,w.u_sdfgamma),u_image:new a.aH(ue,w.u_image),u_tex_y_a:new a.aI(ue,w.u_tex_y_a),u_tex_y_b:new a.aI(ue,w.u_tex_y_b),u_mix:new a.aI(ue,w.u_mix)}),raster:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_tl_parent:new a.aO(ue,w.u_tl_parent),u_scale_parent:new a.aI(ue,w.u_scale_parent),u_buffer_scale:new a.aI(ue,w.u_buffer_scale),u_fade_t:new a.aI(ue,w.u_fade_t),u_opacity:new a.aI(ue,w.u_opacity),u_image0:new a.aH(ue,w.u_image0),u_image1:new a.aH(ue,w.u_image1),u_brightness_low:new a.aI(ue,w.u_brightness_low),u_brightness_high:new a.aI(ue,w.u_brightness_high),u_saturation_factor:new a.aI(ue,w.u_saturation_factor),u_contrast_factor:new a.aI(ue,w.u_contrast_factor),u_spin_weights:new a.aN(ue,w.u_spin_weights)}),symbolIcon:(ue,w)=>({u_is_size_zoom_constant:new a.aH(ue,w.u_is_size_zoom_constant),u_is_size_feature_constant:new a.aH(ue,w.u_is_size_feature_constant),u_size_t:new a.aI(ue,w.u_size_t),u_size:new a.aI(ue,w.u_size),u_camera_to_center_distance:new a.aI(ue,w.u_camera_to_center_distance),u_pitch:new a.aI(ue,w.u_pitch),u_rotate_symbol:new a.aH(ue,w.u_rotate_symbol),u_aspect_ratio:new a.aI(ue,w.u_aspect_ratio),u_fade_change:new a.aI(ue,w.u_fade_change),u_matrix:new a.aJ(ue,w.u_matrix),u_label_plane_matrix:new a.aJ(ue,w.u_label_plane_matrix),u_coord_matrix:new a.aJ(ue,w.u_coord_matrix),u_is_text:new a.aH(ue,w.u_is_text),u_pitch_with_map:new a.aH(ue,w.u_pitch_with_map),u_is_along_line:new a.aH(ue,w.u_is_along_line),u_is_variable_anchor:new a.aH(ue,w.u_is_variable_anchor),u_texsize:new a.aO(ue,w.u_texsize),u_texture:new a.aH(ue,w.u_texture),u_translation:new a.aO(ue,w.u_translation),u_pitched_scale:new a.aI(ue,w.u_pitched_scale)}),symbolSDF:(ue,w)=>({u_is_size_zoom_constant:new a.aH(ue,w.u_is_size_zoom_constant),u_is_size_feature_constant:new a.aH(ue,w.u_is_size_feature_constant),u_size_t:new a.aI(ue,w.u_size_t),u_size:new a.aI(ue,w.u_size),u_camera_to_center_distance:new a.aI(ue,w.u_camera_to_center_distance),u_pitch:new a.aI(ue,w.u_pitch),u_rotate_symbol:new a.aH(ue,w.u_rotate_symbol),u_aspect_ratio:new a.aI(ue,w.u_aspect_ratio),u_fade_change:new a.aI(ue,w.u_fade_change),u_matrix:new a.aJ(ue,w.u_matrix),u_label_plane_matrix:new a.aJ(ue,w.u_label_plane_matrix),u_coord_matrix:new a.aJ(ue,w.u_coord_matrix),u_is_text:new a.aH(ue,w.u_is_text),u_pitch_with_map:new a.aH(ue,w.u_pitch_with_map),u_is_along_line:new a.aH(ue,w.u_is_along_line),u_is_variable_anchor:new a.aH(ue,w.u_is_variable_anchor),u_texsize:new a.aO(ue,w.u_texsize),u_texture:new a.aH(ue,w.u_texture),u_gamma_scale:new a.aI(ue,w.u_gamma_scale),u_device_pixel_ratio:new a.aI(ue,w.u_device_pixel_ratio),u_is_halo:new a.aH(ue,w.u_is_halo),u_translation:new a.aO(ue,w.u_translation),u_pitched_scale:new a.aI(ue,w.u_pitched_scale)}),symbolTextAndIcon:(ue,w)=>({u_is_size_zoom_constant:new a.aH(ue,w.u_is_size_zoom_constant),u_is_size_feature_constant:new a.aH(ue,w.u_is_size_feature_constant),u_size_t:new a.aI(ue,w.u_size_t),u_size:new a.aI(ue,w.u_size),u_camera_to_center_distance:new a.aI(ue,w.u_camera_to_center_distance),u_pitch:new a.aI(ue,w.u_pitch),u_rotate_symbol:new a.aH(ue,w.u_rotate_symbol),u_aspect_ratio:new a.aI(ue,w.u_aspect_ratio),u_fade_change:new a.aI(ue,w.u_fade_change),u_matrix:new a.aJ(ue,w.u_matrix),u_label_plane_matrix:new a.aJ(ue,w.u_label_plane_matrix),u_coord_matrix:new a.aJ(ue,w.u_coord_matrix),u_is_text:new a.aH(ue,w.u_is_text),u_pitch_with_map:new a.aH(ue,w.u_pitch_with_map),u_is_along_line:new a.aH(ue,w.u_is_along_line),u_is_variable_anchor:new a.aH(ue,w.u_is_variable_anchor),u_texsize:new a.aO(ue,w.u_texsize),u_texsize_icon:new a.aO(ue,w.u_texsize_icon),u_texture:new a.aH(ue,w.u_texture),u_texture_icon:new a.aH(ue,w.u_texture_icon),u_gamma_scale:new a.aI(ue,w.u_gamma_scale),u_device_pixel_ratio:new a.aI(ue,w.u_device_pixel_ratio),u_is_halo:new a.aH(ue,w.u_is_halo),u_translation:new a.aO(ue,w.u_translation),u_pitched_scale:new a.aI(ue,w.u_pitched_scale)}),background:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_opacity:new a.aI(ue,w.u_opacity),u_color:new a.aL(ue,w.u_color)}),backgroundPattern:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_opacity:new a.aI(ue,w.u_opacity),u_image:new a.aH(ue,w.u_image),u_pattern_tl_a:new a.aO(ue,w.u_pattern_tl_a),u_pattern_br_a:new a.aO(ue,w.u_pattern_br_a),u_pattern_tl_b:new a.aO(ue,w.u_pattern_tl_b),u_pattern_br_b:new a.aO(ue,w.u_pattern_br_b),u_texsize:new a.aO(ue,w.u_texsize),u_mix:new a.aI(ue,w.u_mix),u_pattern_size_a:new a.aO(ue,w.u_pattern_size_a),u_pattern_size_b:new a.aO(ue,w.u_pattern_size_b),u_scale_a:new a.aI(ue,w.u_scale_a),u_scale_b:new a.aI(ue,w.u_scale_b),u_pixel_coord_upper:new a.aO(ue,w.u_pixel_coord_upper),u_pixel_coord_lower:new a.aO(ue,w.u_pixel_coord_lower),u_tile_units_to_pixels:new a.aI(ue,w.u_tile_units_to_pixels)}),terrain:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_texture:new a.aH(ue,w.u_texture),u_ele_delta:new a.aI(ue,w.u_ele_delta),u_fog_matrix:new a.aJ(ue,w.u_fog_matrix),u_fog_color:new a.aL(ue,w.u_fog_color),u_fog_ground_blend:new a.aI(ue,w.u_fog_ground_blend),u_fog_ground_blend_opacity:new a.aI(ue,w.u_fog_ground_blend_opacity),u_horizon_color:new a.aL(ue,w.u_horizon_color),u_horizon_fog_blend:new a.aI(ue,w.u_horizon_fog_blend)}),terrainDepth:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_ele_delta:new a.aI(ue,w.u_ele_delta)}),terrainCoords:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_texture:new a.aH(ue,w.u_texture),u_terrain_coords_id:new a.aI(ue,w.u_terrain_coords_id),u_ele_delta:new a.aI(ue,w.u_ele_delta)}),sky:(ue,w)=>({u_sky_color:new a.aL(ue,w.u_sky_color),u_horizon_color:new a.aL(ue,w.u_horizon_color),u_horizon:new a.aI(ue,w.u_horizon),u_sky_horizon_blend:new a.aI(ue,w.u_sky_horizon_blend)})};class bs{constructor(w,B,Q){this.context=w;let ee=w.gl;this.buffer=ee.createBuffer(),this.dynamicDraw=!!Q,this.context.unbindVAO(),w.bindElementBuffer.set(this.buffer),ee.bufferData(ee.ELEMENT_ARRAY_BUFFER,B.arrayBuffer,this.dynamicDraw?ee.DYNAMIC_DRAW:ee.STATIC_DRAW),this.dynamicDraw||delete B.arrayBuffer}bind(){this.context.bindElementBuffer.set(this.buffer)}updateData(w){let B=this.context.gl;if(!this.dynamicDraw)throw new Error("Attempted to update data while not in dynamic mode.");this.context.unbindVAO(),this.bind(),B.bufferSubData(B.ELEMENT_ARRAY_BUFFER,0,w.arrayBuffer)}destroy(){this.buffer&&(this.context.gl.deleteBuffer(this.buffer),delete this.buffer)}}let Rn={Int8:"BYTE",Uint8:"UNSIGNED_BYTE",Int16:"SHORT",Uint16:"UNSIGNED_SHORT",Int32:"INT",Uint32:"UNSIGNED_INT",Float32:"FLOAT"};class _a{constructor(w,B,Q,ee){this.length=B.length,this.attributes=Q,this.itemSize=B.bytesPerElement,this.dynamicDraw=ee,this.context=w;let le=w.gl;this.buffer=le.createBuffer(),w.bindVertexBuffer.set(this.buffer),le.bufferData(le.ARRAY_BUFFER,B.arrayBuffer,this.dynamicDraw?le.DYNAMIC_DRAW:le.STATIC_DRAW),this.dynamicDraw||delete B.arrayBuffer}bind(){this.context.bindVertexBuffer.set(this.buffer)}updateData(w){if(w.length!==this.length)throw new Error(`Length of new data is ${w.length}, which doesn't match current length of ${this.length}`);let B=this.context.gl;this.bind(),B.bufferSubData(B.ARRAY_BUFFER,0,w.arrayBuffer)}enableAttributes(w,B){for(let Q=0;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[Rn[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 Ol(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 Ns 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 ql 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 pl 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 Os 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 Vh 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 Lf 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 cs 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 fl 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;Ol(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 Es 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 Hs 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 ps 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 ps(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 qs{constructor(w,B,Q){this.blendFunction=w,this.blendColor=B,this.mask=Q}}qs.Replace=[1,0],qs.disabled=new qs(qs.Replace,a.aM.transparent,[!1,!1,!1,!1]),qs.unblended=new qs(qs.Replace,a.aM.transparent,[!0,!0,!0,!0]),qs.alphaBlended=new qs([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 Ns(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 ql(this),this.stencilTest=new Pc(this),this.depthRange=new Do(this),this.depthTest=new rf(this),this.depthFunc=new Uf(this),this.blend=new pl(this),this.blendFunc=new Zc(this),this.blendColor=new Kl(this),this.blendEquation=new Os(this),this.cullFace=new yu(this),this.cullFaceSide=new oc(this),this.frontFace=new Cf(this),this.program=new sc(this),this.activeTexture=new Vh(this),this.viewport=new Lf(this),this.bindFramebuffer=new cs(this),this.bindRenderbuffer=new nf(this),this.bindTexture=new Vf(this),this.bindVertexBuffer=new Jl(this),this.bindElementBuffer=new fl(this),this.bindVertexArray=new lc(this),this.pixelStoreUnpack=new Fu(this),this.pixelStoreUnpackPremultiplyAlpha=new Es(this),this.pixelStoreUnpackFlipY=new Hs(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),Ol(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 bs(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,qs.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 Ol(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 Ol(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,Yt=0;for(let Be=0;Be<Q.length;Be++){let et=Q[Be],We=w.getTile(et).getBucket(B);if(!We)continue;let it=ee?We.textCollisionBox:We.iconCollisionBox,Ft=We.collisionCircleArray;if(Ft.length>0){let Ht=a.H();a.aQ(Ht,We.placementInvProjMatrix,ue.transform.glCoordMatrix),a.aQ(Ht,Ht,We.placementViewportMatrix),ot.push({circleArray:Ft,circleOffset:Yt,transform:et.posMatrix,invTransform:Ht,coord:et}),Tt+=Ft.length/4,Yt=Tt}it&&Xe.draw(le,qe.LINES,Po.disabled,Yo.disabled,ue.colorModeForRenderPass(),Pa.disabled,{u_matrix:et.posMatrix,u_pixel_extrude_scale:[1/(Kt=ue.transform).width,1/Kt.height]},ue.style.map.terrain&&ue.style.map.terrain.getTerrainData(et),B.id,it.layoutVertexBuffer,it.indexBuffer,it.segments,null,ue.transform.zoom,null,null,it.collisionVertexBuffer)}var Kt;if(!ee||!ot.length)return;let xr=ue.useProgram("collisionCircle"),Ir=new a.aR;Ir.resize(4*Tt),Ir._trim();let ve=0;for(let Be of ot)for(let et=0;et<Be.circleArray.length/4;et++){let We=4*et,it=Be.circleArray[We+0],Ft=Be.circleArray[We+1],Ht=Be.circleArray[We+2],tr=Be.circleArray[We+3];Ir.emplace(ve++,it,Ft,Ht,tr,0),Ir.emplace(ve++,it,Ft,Ht,tr,1),Ir.emplace(ve++,it,Ft,Ht,tr,2),Ir.emplace(ve++,it,Ft,Ht,tr,3)}(!af||af.length<2*Tt)&&(af=function(Be){let et=2*Be,We=new a.aT;We.resize(et),We._trim();for(let it=0;it<et;it++){let Ft=6*it;We.uint16[Ft+0]=4*it+0,We.uint16[Ft+1]=4*it+1,We.uint16[Ft+2]=4*it+2,We.uint16[Ft+3]=4*it+2,We.uint16[Ft+4]=4*it+3,We.uint16[Ft+5]=4*it+0}return We}(Tt));let be=le.createIndexBuffer(af,!0),De=le.createVertexBuffer(Ir,a.aS.members,!0);for(let Be of ot){let et=No(Be.transform,Be.invTransform,ue.transform);xr.draw(le,qe.TRIANGLES,Po.disabled,Yo.disabled,ue.colorModeForRenderPass(),Pa.disabled,et,ue.style.map.terrain&&ue.style.map.terrain.getTerrainData(Be.coord),B.id,De,be,a.a0.simpleSegment(0,2*Be.circleOffset,Be.circleArray.length,Be.circleArray.length/2),null,ue.transform.zoom,null,null,null)}De.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 yf(ue,w,B,Q,ee,le,qe,Xe,ot,Tt,Yt,Kt,xr,Ir){let ve=ue.text.placedSymbolArray,be=ue.text.dynamicLayoutVertexArray,De=ue.icon.dynamicLayoutVertexArray,Be={};be.clear();for(let et=0;et<ve.length;et++){let We=ve.get(et),it=We.hidden||!We.crossTileID||ue.allowVerticalPlacement&&!We.placedOrientation?null:Q[We.crossTileID];if(it){let Ft=new a.P(We.anchorX,We.anchorY),Ht={getElevation:Ir,width:ee.width,height:ee.height,labelPlaneMatrix:le,lineVertexArray:null,pitchWithMap:B,projection:Yt,projectionCache:null,tileAnchorPoint:Ft,translation:Kt,unwrappedTileID:xr},tr=B?dt(Ft.x,Ft.y,qe,Ir):vt(Ft.x,Ft.y,Ht),dr=Ge(ee.cameraToCenterDistance,tr.signedDistanceFromCamera),Sr=a.ai(ue.textSizeData,ot,We)*dr/a.ap;B&&(Sr*=ue.tilePixelRatio/Xe);let{width:Or,height:Wr,anchor:ni,textOffset:Pi,textBoxScale:cn}=it,ln=Gf(ni,Or,Wr,Pi,cn,Sr),Cn=Yt.getPitchedTextCorrection(ee,Ft.add(new a.P(Kt[0],Kt[1])),xr),Kn=Ic(tr.point,Ht,w,ln,ee.angle,Cn),Ta=ue.allowVerticalPlacement&&We.placedOrientation===a.ah.vertical?Math.PI/2:0;for(let fa=0;fa<We.numGlyphs;fa++)a.aj(be,Kn,Ta);Tt&&We.associatedIconIndex>=0&&(Be[We.associatedIconIndex]={shiftedAnchor:Kn,angle:Ta})}else pi(We.numGlyphs,be)}if(Tt){De.clear();let et=ue.icon.placedSymbolArray;for(let We=0;We<et.length;We++){let it=et.get(We);if(it.hidden)pi(it.numGlyphs,De);else{let Ft=Be[We];if(Ft)for(let Ht=0;Ht<it.numGlyphs;Ht++)a.aj(De,Ft.shiftedAnchor,Ft.angle);else pi(it.numGlyphs,De)}}ue.icon.dynamicLayoutVertexBuffer.updateData(De)}ue.text.dynamicLayoutVertexBuffer.updateData(be)}function Bl(ue,w,B){return B.iconsInText&&w?"symbolTextAndIcon":ue?"symbolSDF":"symbolIcon"}function wh(ue,w,B,Q,ee,le,qe,Xe,ot,Tt,Yt,Kt){let xr=ue.context,Ir=xr.gl,ve=ue.transform,be=yn(),De=Xe==="map",Be=ot==="map",et=Xe!=="viewport"&&B.layout.get("symbol-placement")!=="point",We=De&&!Be&&!et,it=!Be&&et,Ft=!B.layout.get("symbol-sort-key").isConstant(),Ht=!1,tr=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 Wr of Q){let ni=w.getTile(Wr),Pi=ni.getBucket(B);if(!Pi)continue;let cn=ee?Pi.text:Pi.icon;if(!cn||!cn.segments.get().length||!cn.hasVisibleVertices)continue;let ln=cn.programConfigurations.get(B.id),Cn=ee||Pi.sdfIcons,Kn=ee?Pi.textSizeData:Pi.iconSizeData,Ta=Be||ve.pitch!==0,fa=ue.useProgram(Bl(Cn,ee,Pi),ln),$a=a.ag(Kn,ve.zoom),Co=ue.style.map.terrain&&ue.style.map.terrain.getTerrainData(Wr),Qa,mo,Bo,Ps,Ts=[0,0],wo=null;if(ee)mo=ni.glyphAtlasTexture,Bo=Ir.LINEAR,Qa=ni.glyphAtlasTexture.size,Pi.iconsInText&&(Ts=ni.imageAtlasTexture.size,wo=ni.imageAtlasTexture,Ps=Ta||ue.options.rotating||ue.options.zooming||Kn.kind==="composite"||Kn.kind==="camera"?Ir.LINEAR:Ir.NEAREST);else{let Ye=B.layout.get("icon-size").constantOr(0)!==1||Pi.iconsNeedLinear;mo=ni.imageAtlasTexture,Bo=Cn||ue.options.rotating||ue.options.zooming||Ye||Ta?Ir.LINEAR:Ir.NEAREST,Qa=ni.imageAtlasTexture.size}let To=In(ni,1,ue.transform.zoom),hl=it?Wr.posMatrix:bl,Ul=Br(hl,Be,De,ue.transform,To),Lu=Vr(hl,Be,De,ue.transform,To),au=Vr(Wr.posMatrix,Be,De,ue.transform,To),Js=be.translatePosition(ue.transform,ni,le,qe),Ql=dr&&Pi.hasTextData(),dc=B.layout.get("icon-text-fit")!=="none"&&Ql&&Pi.hasIconData();if(et){let Ye=ue.style.map.terrain?(nt,jt)=>ue.style.map.terrain.getElevation(Wr,nt,jt):null,kt=B.layout.get("text-rotation-alignment")==="map";je(Pi,Wr.posMatrix,ue,ee,Ul,au,Be,Tt,kt,be,Wr.toUnwrapped(),ve.width,ve.height,Js,Ye)}let Tl=Wr.posMatrix,Al=ee&&dr||dc,X=et||Al?bl:Ul,se=Lu,Te=Cn&&B.paint.get(ee?"text-halo-width":"icon-halo-width").constantOr(1)!==0,Ne;Ne=Cn?Pi.iconsInText?ls(Kn.kind,$a,We,Be,et,Al,ue,Tl,X,se,Js,Qa,Ts,Or):Io(Kn.kind,$a,We,Be,et,Al,ue,Tl,X,se,Js,ee,Qa,!0,Or):zs(Kn.kind,$a,We,Be,et,Al,ue,Tl,X,se,Js,ee,Qa,Or);let He={program:fa,buffers:cn,uniformValues:Ne,atlasTexture:mo,atlasTextureIcon:wo,atlasInterpolation:Bo,atlasInterpolationIcon:Ps,isSDF:Cn,hasHalo:Te};if(Ft&&Pi.canOverlap){Ht=!0;let Ye=cn.segments.get();for(let kt of Ye)Sr.push({segments:new a.a0([kt]),sortKey:kt.sortKey,state:He,terrainData:Co})}else Sr.push({segments:cn.segments,sortKey:0,state:He,terrainData:Co})}Ht&&Sr.sort((Wr,ni)=>Wr.sortKey-ni.sortKey);for(let Wr of Sr){let ni=Wr.state;if(xr.activeTexture.set(Ir.TEXTURE0),ni.atlasTexture.bind(ni.atlasInterpolation,Ir.CLAMP_TO_EDGE),ni.atlasTextureIcon&&(xr.activeTexture.set(Ir.TEXTURE1),ni.atlasTextureIcon&&ni.atlasTextureIcon.bind(ni.atlasInterpolationIcon,Ir.CLAMP_TO_EDGE)),ni.isSDF){let Pi=ni.uniformValues;ni.hasHalo&&(Pi.u_is_halo=1,Qf(ni.buffers,Wr.segments,B,ue,ni.program,tr,Yt,Kt,Pi,Wr.terrainData)),Pi.u_is_halo=0}Qf(ni.buffers,Wr.segments,B,ue,ni.program,tr,Yt,Kt,ni.uniformValues,Wr.terrainData)}}function Qf(ue,w,B,Q,ee,le,qe,Xe,ot,Tt){let Yt=Q.context;ee.draw(Yt,Yt.gl.TRIANGLES,le,qe,Xe,Pa.disabled,ot,Tt,B.id,ue.layoutVertexBuffer,ue.indexBuffer,w,B.paint,Q.transform.zoom,ue.programConfigurations.get(B.id),ue.dynamicLayoutVertexBuffer,ue.opacityVertexBuffer)}function _f(ue,w,B,Q){let ee=ue.context,le=ee.gl,qe=Yo.disabled,Xe=new qs([le.ONE,le.ONE],a.aM.transparent,[!0,!0,!0,!0]),ot=w.getBucket(B);if(!ot)return;let Tt=Q.key,Yt=B.heatmapFbos.get(Tt);Yt||(Yt=eh(ee,w.tileSize,w.tileSize),B.heatmapFbos.set(Tt,Yt)),ee.bindFramebuffer.set(Yt.framebuffer),ee.viewport.set([0,0,w.tileSize,w.tileSize]),ee.clear({color:a.aM.transparent});let Kt=ot.programConfigurations.get(B.id),xr=ue.useProgram("heatmap",Kt),Ir=ue.style.map.terrain.getTerrainData(Q);xr.draw(ee,le.TRIANGLES,Po.disabled,qe,Xe,Pa.disabled,ko(Q.posMatrix,w,ue.transform.zoom,B.paint.get("heatmap-intensity")),Ir,B.id,ot.layoutVertexBuffer,ot.indexBuffer,ot.segments,B.paint,ue.transform.zoom,Kt)}function Yc(ue,w,B){let Q=ue.context,ee=Q.gl;Q.setColorMode(ue.colorModeForRenderPass());let le=th(Q,w),qe=B.key,Xe=w.heatmapFbos.get(qe);Xe&&(Q.activeTexture.set(ee.TEXTURE0),ee.bindTexture(ee.TEXTURE_2D,Xe.colorAttachment.get()),Q.activeTexture.set(ee.TEXTURE1),le.bind(ee.LINEAR,ee.CLAMP_TO_EDGE),ue.useProgram("heatmapTexture").draw(Q,ee.TRIANGLES,Po.disabled,Yo.disabled,ue.colorModeForRenderPass(),Pa.disabled,Ds(ue,w,0,1),null,w.id,ue.rasterBoundsBuffer,ue.quadTriangleIndexBuffer,ue.rasterBoundsSegments,w.paint,ue.transform.zoom),Xe.destroy(),w.heatmapFbos.delete(qe))}function eh(ue,w,B){var Q,ee;let le=ue.gl,qe=le.createTexture();le.bindTexture(le.TEXTURE_2D,qe),le.texParameteri(le.TEXTURE_2D,le.TEXTURE_WRAP_S,le.CLAMP_TO_EDGE),le.texParameteri(le.TEXTURE_2D,le.TEXTURE_WRAP_T,le.CLAMP_TO_EDGE),le.texParameteri(le.TEXTURE_2D,le.TEXTURE_MIN_FILTER,le.LINEAR),le.texParameteri(le.TEXTURE_2D,le.TEXTURE_MAG_FILTER,le.LINEAR);let Xe=(Q=ue.HALF_FLOAT)!==null&&Q!==void 0?Q:le.UNSIGNED_BYTE,ot=(ee=ue.RGBA16F)!==null&&ee!==void 0?ee:le.RGBA;le.texImage2D(le.TEXTURE_2D,0,ot,w,B,0,le.RGBA,Xe,null);let Tt=ue.createFramebuffer(w,B,!1,!1);return Tt.colorAttachment.set(qe),Tt}function th(ue,w){return w.colorRampTexture||(w.colorRampTexture=new g(ue,w.colorRamp,ue.gl.RGBA)),w.colorRampTexture}function ju(ue,w,B,Q,ee){if(!B||!Q||!Q.imageAtlas)return;let le=Q.imageAtlas.patternPositions,qe=le[B.to.toString()],Xe=le[B.from.toString()];if(!qe&&Xe&&(qe=Xe),!Xe&&qe&&(Xe=qe),!qe||!Xe){let ot=ee.getPaintProperty(w);qe=le[ot],Xe=le[ot]}qe&&Xe&&ue.setConstantPatternPositions(qe,Xe)}function Hf(ue,w,B,Q,ee,le,qe){let Xe=ue.context.gl,ot="fill-pattern",Tt=B.paint.get(ot),Yt=Tt&&Tt.constantOr(1),Kt=B.getCrossfadeParameters(),xr,Ir,ve,be,De;qe?(Ir=Yt&&!B.getPaintProperty("fill-outline-color")?"fillOutlinePattern":"fillOutline",xr=Xe.LINES):(Ir=Yt?"fillPattern":"fill",xr=Xe.TRIANGLES);let Be=Tt.constantOr(null);for(let et of Q){let We=w.getTile(et);if(Yt&&!We.patternsLoaded())continue;let it=We.getBucket(B);if(!it)continue;let Ft=it.programConfigurations.get(B.id),Ht=ue.useProgram(Ir,Ft),tr=ue.style.map.terrain&&ue.style.map.terrain.getTerrainData(et);Yt&&(ue.context.activeTexture.set(Xe.TEXTURE0),We.imageAtlasTexture.bind(Xe.LINEAR,Xe.CLAMP_TO_EDGE),Ft.updatePaintBuffers(Kt)),ju(Ft,ot,Be,We,B);let dr=tr?et:null,Sr=ue.translatePosMatrix(dr?dr.posMatrix:et.posMatrix,We,B.paint.get("fill-translate"),B.paint.get("fill-translate-anchor"));if(qe){be=it.indexBuffer2,De=it.segments2;let Or=[Xe.drawingBufferWidth,Xe.drawingBufferHeight];ve=Ir==="fillOutlinePattern"&&Yt?Ma(Sr,ue,Kt,We,Or):Jn(Sr,Or)}else be=it.indexBuffer,De=it.segments,ve=Yt?ya(Sr,ue,Kt,We):_n(Sr);Ht.draw(ue.context,xr,ee,ue.stencilModeForClipping(et),le,Pa.disabled,ve,tr,B.id,it.layoutVertexBuffer,be,De,B.paint,ue.transform.zoom,Ft)}}function cc(ue,w,B,Q,ee,le,qe){let Xe=ue.context,ot=Xe.gl,Tt="fill-extrusion-pattern",Yt=B.paint.get(Tt),Kt=Yt.constantOr(1),xr=B.getCrossfadeParameters(),Ir=B.paint.get("fill-extrusion-opacity"),ve=Yt.constantOr(null);for(let be of Q){let De=w.getTile(be),Be=De.getBucket(B);if(!Be)continue;let et=ue.style.map.terrain&&ue.style.map.terrain.getTerrainData(be),We=Be.programConfigurations.get(B.id),it=ue.useProgram(Kt?"fillExtrusionPattern":"fillExtrusion",We);Kt&&(ue.context.activeTexture.set(ot.TEXTURE0),De.imageAtlasTexture.bind(ot.LINEAR,ot.CLAMP_TO_EDGE),We.updatePaintBuffers(xr)),ju(We,Tt,ve,De,B);let Ft=ue.translatePosMatrix(be.posMatrix,De,B.paint.get("fill-extrusion-translate"),B.paint.get("fill-extrusion-translate-anchor")),Ht=B.paint.get("fill-extrusion-vertical-gradient"),tr=Kt?Li(Ft,ue,Ht,Ir,be,xr,De):Mn(Ft,ue,Ht,Ir);it.draw(Xe,Xe.gl.TRIANGLES,ee,le,qe,Pa.backCCW,tr,et,B.id,Be.layoutVertexBuffer,Be.indexBuffer,Be.segments,B.paint,ue.transform.zoom,We,ue.style.map.terrain&&Be.centroidVertexBuffer)}}function of(ue,w,B,Q,ee,le,qe){let Xe=ue.context,ot=Xe.gl,Tt=B.fbo;if(!Tt)return;let Yt=ue.useProgram("hillshade"),Kt=ue.style.map.terrain&&ue.style.map.terrain.getTerrainData(w);Xe.activeTexture.set(ot.TEXTURE0),ot.bindTexture(ot.TEXTURE_2D,Tt.colorAttachment.get()),Yt.draw(Xe,ot.TRIANGLES,ee,le,qe,Pa.disabled,((xr,Ir,ve,be)=>{let De=ve.paint.get("hillshade-shadow-color"),Be=ve.paint.get("hillshade-highlight-color"),et=ve.paint.get("hillshade-accent-color"),We=ve.paint.get("hillshade-illumination-direction")*(Math.PI/180);ve.paint.get("hillshade-illumination-anchor")==="viewport"&&(We-=xr.transform.angle);let it=!xr.options.moving;return{u_matrix:be?be.posMatrix:xr.transform.calculatePosMatrix(Ir.tileID.toUnwrapped(),it),u_image:0,u_latrange:Fs(0,Ir.tileID),u_light:[ve.paint.get("hillshade-exaggeration"),We],u_shadow:De,u_highlight:Be,u_accent:et}})(ue,B,Q,Kt?w:null),Kt,Q.id,ue.rasterBoundsBuffer,ue.quadTriangleIndexBuffer,ue.rasterBoundsSegments)}function Nl(ue,w,B,Q,ee,le){let qe=ue.context,Xe=qe.gl,ot=w.dem;if(ot&&ot.data){let Tt=ot.dim,Yt=ot.stride,Kt=ot.getPixels();if(qe.activeTexture.set(Xe.TEXTURE1),qe.pixelStoreUnpackPremultiplyAlpha.set(!1),w.demTexture=w.demTexture||ue.getTileTexture(Yt),w.demTexture){let Ir=w.demTexture;Ir.update(Kt,{premultiply:!1}),Ir.bind(Xe.NEAREST,Xe.CLAMP_TO_EDGE)}else w.demTexture=new g(qe,Kt,Xe.RGBA,{premultiply:!1}),w.demTexture.bind(Xe.NEAREST,Xe.CLAMP_TO_EDGE);qe.activeTexture.set(Xe.TEXTURE0);let xr=w.fbo;if(!xr){let Ir=new g(qe,{width:Tt,height:Tt,data:null},Xe.RGBA);Ir.bind(Xe.LINEAR,Xe.CLAMP_TO_EDGE),xr=w.fbo=qe.createFramebuffer(Tt,Tt,!0,!1),xr.colorAttachment.set(Ir.texture)}qe.bindFramebuffer.set(xr.framebuffer),qe.viewport.set([0,0,Tt,Tt]),ue.useProgram("hillshadePrepare").draw(qe,Xe.TRIANGLES,Q,ee,le,Pa.disabled,((Ir,ve)=>{let be=ve.stride,De=a.H();return a.aP(De,0,a.X,-a.X,0,0,1),a.J(De,De,[0,-a.X,0]),{u_matrix:De,u_image:1,u_dimension:[be,be],u_zoom:Ir.overscaledZ,u_unpack:ve.getUnpackVector()}})(w.tileID,ot),null,B.id,ue.rasterBoundsBuffer,ue.quadTriangleIndexBuffer,ue.rasterBoundsSegments),w.needsHillshadePrepare=!1}}function Kc(ue,w,B,Q,ee,le){let qe=Q.paint.get("raster-fade-duration");if(!le&&qe>0){let Xe=u.now(),ot=(Xe-ue.timeAdded)/qe,Tt=w?(Xe-w.timeAdded)/qe:-1,Yt=B.getSource(),Kt=ee.coveringZoomLevel({tileSize:Yt.tileSize,roundZoom:Yt.roundZoom}),xr=!w||Math.abs(w.tileID.overscaledZ-Kt)>Math.abs(ue.tileID.overscaledZ-Kt),Ir=xr&&ue.refreshedUponExpiration?1:a.ac(xr?ot:1-Tt,0,1);return ue.refreshedUponExpiration&&ot>=1&&(ue.refreshedUponExpiration=!1),w?{opacity:1,mix:1-Ir}:{opacity:Ir,mix:0}}return{opacity:1,mix:0}}let Rc=new a.aM(1,0,0,1),gs=new a.aM(0,1,0,1),jf=new a.aM(0,0,1,1),Gh=new a.aM(1,0,1,1),rh=new a.aM(0,1,1,1);function sf(ue,w,B,Q){Mu(ue,0,w+B/2,ue.transform.width,B,Q)}function Th(ue,w,B,Q){Mu(ue,w-B/2,0,B,ue.transform.height,Q)}function Mu(ue,w,B,Q,ee,le){let qe=ue.context,Xe=qe.gl;Xe.enable(Xe.SCISSOR_TEST),Xe.scissor(w*ue.pixelRatio,B*ue.pixelRatio,Q*ue.pixelRatio,ee*ue.pixelRatio),qe.clear({color:le}),Xe.disable(Xe.SCISSOR_TEST)}function ih(ue,w,B){let Q=ue.context,ee=Q.gl,le=B.posMatrix,qe=ue.useProgram("debug"),Xe=Po.disabled,ot=Yo.disabled,Tt=ue.colorModeForRenderPass(),Yt="$debug",Kt=ue.style.map.terrain&&ue.style.map.terrain.getTerrainData(B);Q.activeTexture.set(ee.TEXTURE0);let xr=w.getTileByID(B.key).latestRawTileData,Ir=Math.floor((xr&&xr.byteLength||0)/1024),ve=w.getTile(B).tileSize,be=512/Math.min(ve,512)*(B.overscaledZ/ue.transform.zoom)*.5,De=B.canonical.toString();B.overscaledZ!==B.canonical.z&&(De+=` => ${B.overscaledZ}`),function(Be,et){Be.initDebugOverlayCanvas();let We=Be.debugOverlayCanvas,it=Be.context.gl,Ft=Be.debugOverlayCanvas.getContext("2d");Ft.clearRect(0,0,We.width,We.height),Ft.shadowColor="white",Ft.shadowBlur=2,Ft.lineWidth=1.5,Ft.strokeStyle="white",Ft.textBaseline="top",Ft.font="bold 36px Open Sans, sans-serif",Ft.fillText(et,5,5),Ft.strokeText(et,5,5),Be.debugOverlayTexture.update(We),Be.debugOverlayTexture.bind(it.LINEAR,it.CLAMP_TO_EDGE)}(ue,`${De} ${Ir}kB`),qe.draw(Q,ee.TRIANGLES,Xe,ot,qs.alphaBlended,Pa.disabled,po(le,a.aM.transparent,be),null,Yt,ue.debugBuffer,ue.quadTriangleIndexBuffer,ue.debugSegments),qe.draw(Q,ee.LINE_STRIP,Xe,ot,Tt,Pa.disabled,po(le,a.aM.red),Kt,Yt,ue.debugBuffer,ue.tileBorderIndexBuffer,ue.debugSegments)}function js(ue,w,B){let Q=ue.context,ee=Q.gl,le=ue.colorModeForRenderPass(),qe=new Po(ee.LEQUAL,Po.ReadWrite,ue.depthRangeFor3D),Xe=ue.useProgram("terrain"),ot=w.getTerrainMesh();Q.bindFramebuffer.set(null),Q.viewport.set([0,0,ue.width,ue.height]);for(let Tt of B){let Yt=ue.renderToTexture.getTexture(Tt),Kt=w.getTerrainData(Tt.tileID);Q.activeTexture.set(ee.TEXTURE0),ee.bindTexture(ee.TEXTURE_2D,Yt.texture);let xr=ue.transform.calculatePosMatrix(Tt.tileID.toUnwrapped()),Ir=w.getMeshFrameDelta(ue.transform.zoom),ve=ue.transform.calculateFogMatrix(Tt.tileID.toUnwrapped()),be=Jr(xr,Ir,ve,ue.style.sky,ue.transform.pitch);Xe.draw(Q,ee.TRIANGLES,qe,Yo.disabled,le,Pa.backCCW,be,Kt,"terrain",ot.vertexBuffer,ot.indexBuffer,ot.segments)}}class Eu{constructor(w,B,Q){this.vertexBuffer=w,this.indexBuffer=B,this.segments=Q}destroy(){this.vertexBuffer.destroy(),this.indexBuffer.destroy(),this.segments.destroy(),this.vertexBuffer=null,this.indexBuffer=null,this.segments=null}}class Dc{constructor(w,B){this.context=new ad(w),this.transform=B,this._tileTextures={},this.terrainFacilitator={dirty:!0,matrix:a.an(new Float64Array(16)),renderTime:0},this.setup(),this.numSublayers=mt.maxUnderzooming+mt.maxOverzooming+1,this.depthEpsilon=1/Math.pow(2,16),this.crossTileSymbolIndex=new Wo}resize(w,B,Q){if(this.width=Math.floor(w*Q),this.height=Math.floor(B*Q),this.pixelRatio=Q,this.context.viewport.set([0,0,this.width,this.height]),this.style)for(let ee of this.style._order)this.style._layers[ee].resize()}setup(){let w=this.context,B=new a.aX;B.emplaceBack(0,0),B.emplaceBack(a.X,0),B.emplaceBack(0,a.X),B.emplaceBack(a.X,a.X),this.tileExtentBuffer=w.createVertexBuffer(B,vo.members),this.tileExtentSegments=a.a0.simpleSegment(0,0,4,2);let Q=new a.aX;Q.emplaceBack(0,0),Q.emplaceBack(a.X,0),Q.emplaceBack(0,a.X),Q.emplaceBack(a.X,a.X),this.debugBuffer=w.createVertexBuffer(Q,vo.members),this.debugSegments=a.a0.simpleSegment(0,0,4,5);let ee=new a.$;ee.emplaceBack(0,0,0,0),ee.emplaceBack(a.X,0,a.X,0),ee.emplaceBack(0,a.X,0,a.X),ee.emplaceBack(a.X,a.X,a.X,a.X),this.rasterBoundsBuffer=w.createVertexBuffer(ee,lt.members),this.rasterBoundsSegments=a.a0.simpleSegment(0,0,4,2);let le=new a.aX;le.emplaceBack(0,0),le.emplaceBack(1,0),le.emplaceBack(0,1),le.emplaceBack(1,1),this.viewportBuffer=w.createVertexBuffer(le,vo.members),this.viewportSegments=a.a0.simpleSegment(0,0,4,2);let qe=new a.aZ;qe.emplaceBack(0),qe.emplaceBack(1),qe.emplaceBack(3),qe.emplaceBack(2),qe.emplaceBack(0),this.tileBorderIndexBuffer=w.createIndexBuffer(qe);let Xe=new a.aY;Xe.emplaceBack(0,1,2),Xe.emplaceBack(2,1,3),this.quadTriangleIndexBuffer=w.createIndexBuffer(Xe);let ot=this.context.gl;this.stencilClearMode=new Yo({func:ot.ALWAYS,mask:0},0,255,ot.ZERO,ot.ZERO,ot.ZERO)}clearStencil(){let w=this.context,B=w.gl;this.nextStencilID=1,this.currentStencilSource=void 0;let Q=a.H();a.aP(Q,0,this.width,this.height,0,0,1),a.K(Q,Q,[B.drawingBufferWidth,B.drawingBufferHeight,0]),this.useProgram("clippingMask").draw(w,B.TRIANGLES,Po.disabled,this.stencilClearMode,qs.disabled,Pa.disabled,Lo(Q),null,"$clipping",this.viewportBuffer,this.quadTriangleIndexBuffer,this.viewportSegments)}_renderTileClippingMasks(w,B){if(this.currentStencilSource===w.source||!w.isTileClipped()||!B||!B.length)return;this.currentStencilSource=w.source;let Q=this.context,ee=Q.gl;this.nextStencilID+B.length>256&&this.clearStencil(),Q.setColorMode(qs.disabled),Q.setDepthMode(Po.disabled);let le=this.useProgram("clippingMask");this._tileClippingMaskIDs={};for(let qe of B){let Xe=this._tileClippingMaskIDs[qe.key]=this.nextStencilID++,ot=this.style.map.terrain&&this.style.map.terrain.getTerrainData(qe);le.draw(Q,ee.TRIANGLES,Po.disabled,new Yo({func:ee.ALWAYS,mask:0},Xe,255,ee.KEEP,ee.KEEP,ee.REPLACE),qs.disabled,Pa.disabled,Lo(qe.posMatrix),ot,"$clipping",this.tileExtentBuffer,this.quadTriangleIndexBuffer,this.tileExtentSegments)}}stencilModeFor3D(){this.currentStencilSource=void 0,this.nextStencilID+1>256&&this.clearStencil();let w=this.nextStencilID++,B=this.context.gl;return new Yo({func:B.NOTEQUAL,mask:255},w,255,B.KEEP,B.KEEP,B.REPLACE)}stencilModeForClipping(w){let B=this.context.gl;return new Yo({func:B.EQUAL,mask:255},this._tileClippingMaskIDs[w.key],0,B.KEEP,B.KEEP,B.REPLACE)}stencilConfigForOverlap(w){let B=this.context.gl,Q=w.sort((qe,Xe)=>Xe.overscaledZ-qe.overscaledZ),ee=Q[Q.length-1].overscaledZ,le=Q[0].overscaledZ-ee+1;if(le>1){this.currentStencilSource=void 0,this.nextStencilID+le>256&&this.clearStencil();let qe={};for(let Xe=0;Xe<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 qs([w.CONSTANT_COLOR,w.ONE],new a.aM(.125,.125,.125,0),[!0,!0,!0,!0]):this.renderPass==="opaque"?qs.unblended:qs.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 Yt=qe[Tt.source];(Tt.type==="custom"||Yt.length)&&this.renderLayer(this,ee[Tt.source],Tt,Yt)}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 Yt=ot.context,Kt=Yt.gl,xr=((Be,et,We)=>({u_sky_color:Be.properties.get("sky-color"),u_horizon_color:Be.properties.get("horizon-color"),u_horizon:(et.height/2+et.getHorizon())*We,u_sky_horizon_blend:Be.properties.get("sky-horizon-blend")*et.height/2*We}))(Tt,ot.style.map.transform,ot.pixelRatio),Ir=new Po(Kt.LEQUAL,Po.ReadWrite,[0,1]),ve=Yo.disabled,be=ot.colorModeForRenderPass(),De=ot.useProgram("sky");if(!Tt.mesh){let Be=new a.aX;Be.emplaceBack(-1,-1),Be.emplaceBack(1,-1),Be.emplaceBack(1,1),Be.emplaceBack(-1,1);let et=new a.aY;et.emplaceBack(0,1,2),et.emplaceBack(0,2,3),Tt.mesh=new Eu(Yt.createVertexBuffer(Be,vo.members),Yt.createIndexBuffer(et),a.a0.simpleSegment(0,0,Be.length,et.length))}De.draw(Yt,Kt.TRIANGLES,Ir,ve,be,Pa.disabled,xr,void 0,"sky",Tt.mesh.vertexBuffer,Tt.mesh.indexBuffer,Tt.mesh.segments)}(this,this.style.sky),this._showOverdrawInspector=B.showOverdrawInspector,this.depthRangeFor3D=[0,1-(w._order.length+2)*this.numSublayers*this.depthEpsilon],!this.renderToTexture)for(this.renderPass="opaque",this.currentLayer=Q.length-1;this.currentLayer>=0;this.currentLayer--){let ot=this.style._layers[Q[this.currentLayer]],Tt=ee[ot.source],Yt=le[ot.source];this._renderTileClippingMasks(ot,Yt),this.renderLayer(this,Tt,ot,Yt)}for(this.renderPass="translucent",this.currentLayer=0;this.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 Yt=(ot.type==="symbol"?Xe:qe)[ot.source];this._renderTileClippingMasks(ot,le[ot.source]),this.renderLayer(this,Tt,ot,Yt)}if(this.options.showTileBoundaries){let ot=function(Tt,Yt){let Kt=null,xr=Object.values(Tt._layers).flatMap(De=>De.source&&!De.isHidden(Yt)?[Tt.sourceCaches[De.source]]:[]),Ir=xr.filter(De=>De.getSource().type==="vector"),ve=xr.filter(De=>De.getSource().type!=="vector"),be=De=>{(!Kt||Kt.getSource().maxzoom<De.getSource().maxzoom)&&(Kt=De)};return Ir.forEach(De=>be(De)),Kt||ve.forEach(De=>be(De)),Kt}(this.style,this.transform.zoom);ot&&function(Tt,Yt,Kt){for(let xr=0;xr<Kt.length;xr++)ih(Tt,Yt,Kt[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,gs),Th(ot,Tt.left||0,3,jf),Th(ot,ot.transform.width-(Tt.right||0),3,Gh);let Yt=ot.transform.centerPoint;(function(Kt,xr,Ir,ve){Mu(Kt,xr-1,Ir-10,2,20,ve),Mu(Kt,xr-10,Ir-1,20,2,ve)})(ot,Yt.x,ot.transform.height-Yt.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=qs.unblended,Yt=new Po(ot.LEQUAL,Po.ReadWrite,[0,1]),Kt=qe.getTerrainMesh(),xr=qe.sourceCache.getRenderableTiles(),Ir=le.useProgram("terrainDepth");Xe.bindFramebuffer.set(qe.getFramebuffer("depth").framebuffer),Xe.viewport.set([0,0,le.width/devicePixelRatio,le.height/devicePixelRatio]),Xe.clear({color:a.aM.transparent,depth:1});for(let ve of xr){let be=qe.getTerrainData(ve.tileID),De={u_matrix:le.transform.calculatePosMatrix(ve.tileID.toUnwrapped()),u_ele_delta:qe.getMeshFrameDelta(le.transform.zoom)};Ir.draw(Xe,ot.TRIANGLES,Yt,Yo.disabled,Tt,Pa.backCCW,De,be,"terrain",Kt.vertexBuffer,Kt.indexBuffer,Kt.segments)}Xe.bindFramebuffer.set(null),Xe.viewport.set([0,0,le.width,le.height])}(this,this.style.map.terrain),function(le,qe){let Xe=le.context,ot=Xe.gl,Tt=qs.unblended,Yt=new Po(ot.LEQUAL,Po.ReadWrite,[0,1]),Kt=qe.getTerrainMesh(),xr=qe.getCoordsTexture(),Ir=qe.sourceCache.getRenderableTiles(),ve=le.useProgram("terrainCoords");Xe.bindFramebuffer.set(qe.getFramebuffer("coords").framebuffer),Xe.viewport.set([0,0,le.width/devicePixelRatio,le.height/devicePixelRatio]),Xe.clear({color:a.aM.transparent,depth:1}),qe.coordsIndex=[];for(let be of Ir){let De=qe.getTerrainData(be.tileID);Xe.activeTexture.set(ot.TEXTURE0),ot.bindTexture(ot.TEXTURE_2D,xr.texture);let Be={u_matrix:le.transform.calculatePosMatrix(be.tileID.toUnwrapped()),u_terrain_coords_id:(255-qe.coordsIndex.length)/255,u_texture:0,u_ele_delta:qe.getMeshFrameDelta(le.transform.zoom)};ve.draw(Xe,ot.TRIANGLES,Yt,Yo.disabled,Tt,Pa.backCCW,Be,De,"terrain",Kt.vertexBuffer,Kt.indexBuffer,Kt.segments),qe.coordsIndex.push(be.tileID.key)}Xe.bindFramebuffer.set(null),Xe.viewport.set([0,0,le.width,le.height])}(this,this.style.map.terrain))}renderLayer(w,B,Q,ee){if(!Q.isHidden(this.transform.zoom)&&(Q.type==="background"||Q.type==="custom"||(ee||[]).length))switch(this.id=Q.id,Q.type){case"symbol":(function(le,qe,Xe,ot,Tt){if(le.renderPass!=="translucent")return;let Yt=Yo.disabled,Kt=le.colorModeForRenderPass();(Xe._unevaluatedLayout.hasValue("text-variable-anchor")||Xe._unevaluatedLayout.hasValue("text-variable-anchor-offset"))&&function(xr,Ir,ve,be,De,Be,et,We,it){let Ft=Ir.transform,Ht=yn(),tr=De==="map",dr=Be==="map";for(let Sr of xr){let Or=be.getTile(Sr),Wr=Or.getBucket(ve);if(!Wr||!Wr.text||!Wr.text.segments.get().length)continue;let ni=a.ag(Wr.textSizeData,Ft.zoom),Pi=In(Or,1,Ir.transform.zoom),cn=Br(Sr.posMatrix,dr,tr,Ir.transform,Pi),ln=ve.layout.get("icon-text-fit")!=="none"&&Wr.hasIconData();if(ni){let Cn=Math.pow(2,Ft.zoom-Or.tileID.overscaledZ),Kn=Ir.style.map.terrain?(fa,$a)=>Ir.style.map.terrain.getElevation(Sr,fa,$a):null,Ta=Ht.translatePosition(Ft,Or,et,We);yf(Wr,tr,dr,it,Ft,cn,Sr.posMatrix,Cn,ni,ln,Ht,Ta,Sr.toUnwrapped(),Kn)}}}(ot,le,Xe,qe,Xe.layout.get("text-rotation-alignment"),Xe.layout.get("text-pitch-alignment"),Xe.paint.get("text-translate"),Xe.paint.get("text-translate-anchor"),Tt),Xe.paint.get("icon-opacity").constantOr(1)!==0&&wh(le,qe,Xe,ot,!1,Xe.paint.get("icon-translate"),Xe.paint.get("icon-translate-anchor"),Xe.layout.get("icon-rotation-alignment"),Xe.layout.get("icon-pitch-alignment"),Xe.layout.get("icon-keep-upright"),Yt,Kt),Xe.paint.get("text-opacity").constantOr(1)!==0&&wh(le,qe,Xe,ot,!0,Xe.paint.get("text-translate"),Xe.paint.get("text-translate-anchor"),Xe.layout.get("text-rotation-alignment"),Xe.layout.get("text-pitch-alignment"),Xe.layout.get("text-keep-upright"),Yt,Kt),qe.map.showCollisionBoxes&&(Hu(le,qe,Xe,ot,!0),Hu(le,qe,Xe,ot,!1))})(w,B,Q,ee,this.style.placement.variableOffsets);break;case"circle":(function(le,qe,Xe,ot){if(le.renderPass!=="translucent")return;let Tt=Xe.paint.get("circle-opacity"),Yt=Xe.paint.get("circle-stroke-width"),Kt=Xe.paint.get("circle-stroke-opacity"),xr=!Xe.layout.get("circle-sort-key").isConstant();if(Tt.constantOr(1)===0&&(Yt.constantOr(1)===0||Kt.constantOr(1)===0))return;let Ir=le.context,ve=Ir.gl,be=le.depthModeForSublayer(0,Po.ReadOnly),De=Yo.disabled,Be=le.colorModeForRenderPass(),et=[];for(let We=0;We<ot.length;We++){let it=ot[We],Ft=qe.getTile(it),Ht=Ft.getBucket(Xe);if(!Ht)continue;let tr=Ht.programConfigurations.get(Xe.id),dr=le.useProgram("circle",tr),Sr=Ht.layoutVertexBuffer,Or=Ht.indexBuffer,Wr=le.style.map.terrain&&le.style.map.terrain.getTerrainData(it),ni={programConfiguration:tr,program:dr,layoutVertexBuffer:Sr,indexBuffer:Or,uniformValues:_o(le,it,Ft,Xe),terrainData:Wr};if(xr){let Pi=Ht.segments.get();for(let cn of Pi)et.push({segments:new a.a0([cn]),sortKey:cn.sortKey,state:ni})}else et.push({segments:Ht.segments,sortKey:0,state:ni})}xr&&et.sort((We,it)=>We.sortKey-it.sortKey);for(let We of et){let{programConfiguration:it,program:Ft,layoutVertexBuffer:Ht,indexBuffer:tr,uniformValues:dr,terrainData:Sr}=We.state;Ft.draw(Ir,ve.TRIANGLES,be,De,Be,Pa.disabled,dr,Sr,Xe.id,Ht,tr,We.segments,Xe.paint,le.transform.zoom,it)}})(w,B,Q,ee);break;case"heatmap":(function(le,qe,Xe,ot){if(Xe.paint.get("heatmap-opacity")===0)return;let Tt=le.context;if(le.style.map.terrain){for(let Yt of ot){let Kt=qe.getTile(Yt);qe.hasRenderableParent(Yt)||(le.renderPass==="offscreen"?_f(le,Kt,Xe,Yt):le.renderPass==="translucent"&&Yc(le,Xe,Yt))}Tt.viewport.set([0,0,le.width,le.height])}else le.renderPass==="offscreen"?function(Yt,Kt,xr,Ir){let ve=Yt.context,be=ve.gl,De=Yo.disabled,Be=new qs([be.ONE,be.ONE],a.aM.transparent,[!0,!0,!0,!0]);(function(et,We,it){let Ft=et.gl;et.activeTexture.set(Ft.TEXTURE1),et.viewport.set([0,0,We.width/4,We.height/4]);let Ht=it.heatmapFbos.get(a.aU);Ht?(Ft.bindTexture(Ft.TEXTURE_2D,Ht.colorAttachment.get()),et.bindFramebuffer.set(Ht.framebuffer)):(Ht=eh(et,We.width/4,We.height/4),it.heatmapFbos.set(a.aU,Ht))})(ve,Yt,xr),ve.clear({color:a.aM.transparent});for(let et=0;et<Ir.length;et++){let We=Ir[et];if(Kt.hasRenderableParent(We))continue;let it=Kt.getTile(We),Ft=it.getBucket(xr);if(!Ft)continue;let Ht=Ft.programConfigurations.get(xr.id),tr=Yt.useProgram("heatmap",Ht),{zoom:dr}=Yt.transform;tr.draw(ve,be.TRIANGLES,Po.disabled,De,Be,Pa.disabled,ko(We.posMatrix,it,dr,xr.paint.get("heatmap-intensity")),null,xr.id,Ft.layoutVertexBuffer,Ft.indexBuffer,Ft.segments,xr.paint,Yt.transform.zoom,Ht)}ve.viewport.set([0,0,Yt.width,Yt.height])}(le,qe,Xe,ot):le.renderPass==="translucent"&&function(Yt,Kt){let xr=Yt.context,Ir=xr.gl;xr.setColorMode(Yt.colorModeForRenderPass());let ve=Kt.heatmapFbos.get(a.aU);ve&&(xr.activeTexture.set(Ir.TEXTURE0),Ir.bindTexture(Ir.TEXTURE_2D,ve.colorAttachment.get()),xr.activeTexture.set(Ir.TEXTURE1),th(xr,Kt).bind(Ir.LINEAR,Ir.CLAMP_TO_EDGE),Yt.useProgram("heatmapTexture").draw(xr,Ir.TRIANGLES,Po.disabled,Yo.disabled,Yt.colorModeForRenderPass(),Pa.disabled,Ds(Yt,Kt,0,1),null,Kt.id,Yt.viewportBuffer,Yt.quadTriangleIndexBuffer,Yt.viewportSegments,Kt.paint,Yt.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"),Yt=Xe.paint.get("line-width");if(Tt.constantOr(1)===0||Yt.constantOr(1)===0)return;let Kt=le.depthModeForSublayer(0,Po.ReadOnly),xr=le.colorModeForRenderPass(),Ir=Xe.paint.get("line-dasharray"),ve=Xe.paint.get("line-pattern"),be=ve.constantOr(1),De=Xe.paint.get("line-gradient"),Be=Xe.getCrossfadeParameters(),et=be?"linePattern":Ir?"lineSDF":De?"lineGradient":"line",We=le.context,it=We.gl,Ft=!0;for(let Ht of ot){let tr=qe.getTile(Ht);if(be&&!tr.patternsLoaded())continue;let dr=tr.getBucket(Xe);if(!dr)continue;let Sr=dr.programConfigurations.get(Xe.id),Or=le.context.program.get(),Wr=le.useProgram(et,Sr),ni=Ft||Wr.program!==Or,Pi=le.style.map.terrain&&le.style.map.terrain.getTerrainData(Ht),cn=ve.constantOr(null);if(cn&&tr.imageAtlas){let Kn=tr.imageAtlas,Ta=Kn.patternPositions[cn.to.toString()],fa=Kn.patternPositions[cn.from.toString()];Ta&&fa&&Sr.setConstantPatternPositions(Ta,fa)}let ln=Pi?Ht:null,Cn=be?zl(le,tr,Xe,Be,ln):Ir?us(le,tr,Xe,Ir,Be,ln):De?ul(le,tr,Xe,dr.lineClipsArray.length,ln):ll(le,tr,Xe,ln);if(be)We.activeTexture.set(it.TEXTURE0),tr.imageAtlasTexture.bind(it.LINEAR,it.CLAMP_TO_EDGE),Sr.updatePaintBuffers(Be);else if(Ir&&(ni||le.lineAtlas.dirty))We.activeTexture.set(it.TEXTURE0),le.lineAtlas.bind(We);else if(De){let Kn=dr.gradients[Xe.id],Ta=Kn.texture;if(Xe.gradientVersion!==Kn.version){let fa=256;if(Xe.stepInterpolant){let $a=qe.getSource().maxzoom,Co=Ht.canonical.z===$a?Math.ceil(1<<le.transform.maxZoom-Ht.canonical.z):1;fa=a.ac(a.aV(dr.maxLineLength/a.X*1024*Co),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,Ta=Kn.texture}We.activeTexture.set(it.TEXTURE0),Ta.bind(Xe.stepInterpolant?it.NEAREST:it.LINEAR,it.CLAMP_TO_EDGE)}Wr.draw(We,it.TRIANGLES,Kt,le.stencilModeForClipping(Ht),xr,Pa.disabled,Cn,Pi,Xe.id,dr.layoutVertexBuffer,dr.indexBuffer,dr.segments,Xe.paint,le.transform.zoom,Sr,dr.layoutVertexBuffer2),Ft=!1}})(w,B,Q,ee);break;case"fill":(function(le,qe,Xe,ot){let Tt=Xe.paint.get("fill-color"),Yt=Xe.paint.get("fill-opacity");if(Yt.constantOr(1)===0)return;let Kt=le.colorModeForRenderPass(),xr=Xe.paint.get("fill-pattern"),Ir=le.opaquePassEnabledForLayer()&&!xr.constantOr(1)&&Tt.constantOr(a.aM.transparent).a===1&&Yt.constantOr(0)===1?"opaque":"translucent";if(le.renderPass===Ir){let ve=le.depthModeForSublayer(1,le.renderPass==="opaque"?Po.ReadWrite:Po.ReadOnly);Hf(le,qe,Xe,ot,ve,Kt,!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,Kt,!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 Yt=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,Yt,Yo.disabled,qs.disabled),cc(le,qe,Xe,ot,Yt,le.stencilModeFor3D(),le.colorModeForRenderPass());else{let Kt=le.colorModeForRenderPass();cc(le,qe,Xe,ot,Yt,Yo.disabled,Kt)}}})(w,B,Q,ee);break;case"hillshade":(function(le,qe,Xe,ot){if(le.renderPass!=="offscreen"&&le.renderPass!=="translucent")return;let Tt=le.context,Yt=le.depthModeForSublayer(0,Po.ReadOnly),Kt=le.colorModeForRenderPass(),[xr,Ir]=le.renderPass==="translucent"?le.stencilConfigForOverlap(ot):[{},ot];for(let ve of Ir){let be=qe.getTile(ve);be.needsHillshadePrepare!==void 0&&be.needsHillshadePrepare&&le.renderPass==="offscreen"?Nl(le,be,Xe,Yt,Yo.disabled,Kt):le.renderPass==="translucent"&&of(le,ve,be,Xe,Yt,xr[ve.overscaledZ],Kt)}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,Yt=Tt.gl,Kt=qe.getSource(),xr=le.useProgram("raster"),Ir=le.colorModeForRenderPass(),[ve,be]=Kt instanceof Gt?[{},ot]:le.stencilConfigForOverlap(ot),De=be[be.length-1].overscaledZ,Be=!le.options.moving;for(let et of be){let We=le.depthModeForSublayer(et.overscaledZ-De,Xe.paint.get("raster-opacity")===1?Po.ReadWrite:Po.ReadOnly,Yt.LESS),it=qe.getTile(et);it.registerFadeDuration(Xe.paint.get("raster-fade-duration"));let Ft=qe.findLoadedParent(et,0),Ht=qe.findLoadedSibling(et),tr=Kc(it,Ft||Ht||null,qe,Xe,le.transform,le.style.map.terrain),dr,Sr,Or=Xe.paint.get("raster-resampling")==="nearest"?Yt.NEAREST:Yt.LINEAR;Tt.activeTexture.set(Yt.TEXTURE0),it.texture.bind(Or,Yt.CLAMP_TO_EDGE,Yt.LINEAR_MIPMAP_NEAREST),Tt.activeTexture.set(Yt.TEXTURE1),Ft?(Ft.texture.bind(Or,Yt.CLAMP_TO_EDGE,Yt.LINEAR_MIPMAP_NEAREST),dr=Math.pow(2,Ft.tileID.overscaledZ-it.tileID.overscaledZ),Sr=[it.tileID.canonical.x*dr%1,it.tileID.canonical.y*dr%1]):it.texture.bind(Or,Yt.CLAMP_TO_EDGE,Yt.LINEAR_MIPMAP_NEAREST),it.texture.useMipmap&&Tt.extTextureFilterAnisotropic&&le.transform.pitch>20&&Yt.texParameterf(Yt.TEXTURE_2D,Tt.extTextureFilterAnisotropic.TEXTURE_MAX_ANISOTROPY_EXT,Tt.extTextureFilterAnisotropicMax);let Wr=le.style.map.terrain&&le.style.map.terrain.getTerrainData(et),ni=Wr?et:null,Pi=ni?ni.posMatrix:le.transform.calculatePosMatrix(et.toUnwrapped(),Be),cn=cl(Pi,Sr||[0,0],dr||1,tr,Xe);Kt instanceof Gt?xr.draw(Tt,Yt.TRIANGLES,We,Yo.disabled,Ir,Pa.disabled,cn,Wr,Xe.id,Kt.boundsBuffer,le.quadTriangleIndexBuffer,Kt.boundsSegments):xr.draw(Tt,Yt.TRIANGLES,We,ve[et.overscaledZ],Ir,Pa.disabled,cn,Wr,Xe.id,le.rasterBoundsBuffer,le.quadTriangleIndexBuffer,le.rasterBoundsSegments)}})(w,B,Q,ee);break;case"background":(function(le,qe,Xe,ot){let Tt=Xe.paint.get("background-color"),Yt=Xe.paint.get("background-opacity");if(Yt===0)return;let Kt=le.context,xr=Kt.gl,Ir=le.transform,ve=Ir.tileSize,be=Xe.paint.get("background-pattern");if(le.isPatternMissing(be))return;let De=!be&&Tt.a===1&&Yt===1&&le.opaquePassEnabledForLayer()?"opaque":"translucent";if(le.renderPass!==De)return;let Be=Yo.disabled,et=le.depthModeForSublayer(0,De==="opaque"?Po.ReadWrite:Po.ReadOnly),We=le.colorModeForRenderPass(),it=le.useProgram(be?"backgroundPattern":"background"),Ft=ot||Ir.coveringTiles({tileSize:ve,terrain:le.style.map.terrain});be&&(Kt.activeTexture.set(xr.TEXTURE0),le.imageManager.bind(le.context));let Ht=Xe.getCrossfadeParameters();for(let tr of Ft){let dr=ot?tr.posMatrix:le.transform.calculatePosMatrix(tr.toUnwrapped()),Sr=be?Su(dr,Yt,le,be,{tileID:tr,tileSize:ve},Ht):Zl(dr,Yt,Tt),Or=le.style.map.terrain&&le.style.map.terrain.getTerrainData(tr);it.draw(Kt,xr.TRIANGLES,et,Be,We,Pa.disabled,Sr,Or,Xe.id,le.tileExtentBuffer,le.quadTriangleIndexBuffer,le.tileExtentSegments)}})(w,0,Q,ee);break;case"custom":(function(le,qe,Xe){let ot=le.context,Tt=Xe.implementation;if(le.renderPass==="offscreen"){let Yt=Tt.prerender;Yt&&(le.setCustomLayerDefaults(),ot.setColorMode(le.colorModeForRenderPass()),Yt.call(Tt,ot.gl,le.transform.customLayerMatrix()),ot.setDirty(),le.setBaseState())}else if(le.renderPass==="translucent"){le.setCustomLayerDefaults(),ot.setColorMode(le.colorModeForRenderPass()),ot.setStencilMode(Yo.disabled);let Yt=Tt.renderingMode==="3d"?new Po(le.context.gl.LEQUAL,Po.ReadWrite,le.depthRangeFor3D):le.depthModeForSublayer(0,Po.ReadOnly);ot.setDepthMode(Yt),Tt.render(ot.gl,le.transform.customLayerMatrix(),{farZ:le.transform.farZ,nearZ:le.transform.nearZ,fov:le.transform._fov,modelViewProjectionMatrix:le.transform.modelViewProjectionMatrix,projectionMatrix:le.transform.projectionMatrix}),ot.setDirty(),le.setBaseState(),ot.bindFramebuffer.set(null)}})(w,0,Q)}}translatePosMatrix(w,B,Q,ee,le){if(!Q[0]&&!Q[1])return w;let qe=le?ee==="map"?this.transform.angle:0:ee==="viewport"?-this.transform.angle:0;if(qe){let Tt=Math.sin(qe),Yt=Math.cos(qe);Q=[Q[0]*Yt-Q[1]*Tt,Q[0]*Tt+Q[1]*Yt]}let Xe=[le?Q[0]:In(B,Q[0],this.transform.zoom),le?Q[1]:In(B,Q[1],this.transform.zoom),0],ot=new Float32Array(16);return a.J(ot,w,Xe),ot}saveTileTexture(w){let B=this._tileTextures[w.size[0]];B?B.push(w):this._tileTextures[w.size[0]]=[w]}getTileTexture(w){let B=this._tileTextures[w];return B&&B.length>0?B.pop():null}isPatternMissing(w){if(!w)return!1;if(!w.from||!w.to)return!0;let B=this.imageManager.getPattern(w.from.toString()),Q=this.imageManager.getPattern(w.to.toString());return!B||!Q}useProgram(w,B){this.cache=this.cache||{};let Q=w+(B?B.cacheKey:"")+(this._showOverdrawInspector?"/overdraw":"")+(this.style.map.terrain?"/terrain":"");return this.cache[Q]||(this.cache[Q]=new hn(this.context,jn[w],B,nc[w],this._showOverdrawInspector,this.style.map.terrain)),this.cache[Q]}setCustomLayerDefaults(){this.context.unbindVAO(),this.context.cullFace.setDefault(),this.context.activeTexture.setDefault(),this.context.pixelStoreUnpack.setDefault(),this.context.pixelStoreUnpackPremultiplyAlpha.setDefault(),this.context.pixelStoreUnpackFlipY.setDefault()}setBaseState(){let w=this.context.gl;this.context.cullFace.set(!1),this.context.viewport.set([0,0,this.width,this.height]),this.context.blendEquation.set(w.FUNC_ADD)}initDebugOverlayCanvas(){this.debugOverlayCanvas==null&&(this.debugOverlayCanvas=document.createElement("canvas"),this.debugOverlayCanvas.width=512,this.debugOverlayCanvas.height=512,this.debugOverlayTexture=new g(this.context,this.debugOverlayCanvas,this.context.gl.RGBA))}destroy(){this.debugOverlayTexture&&this.debugOverlayTexture.destroy()}overLimit(){let{drawingBufferWidth:w,drawingBufferHeight:B}=this.context.gl;return this.width!==w||this.height!==B}}class ks{constructor(w,B){this.points=w,this.planes=B}static fromInvProjectionMatrix(w,B,Q){let ee=Math.pow(2,Q),le=[[-1,1,-1,1],[1,1,-1,1],[1,-1,-1,1],[-1,-1,-1,1],[-1,1,1,1],[1,1,1,1],[1,-1,1,1],[-1,-1,1,1]].map(Xe=>{let ot=1/(Xe=a.af([],Xe,w))[3]/B*ee;return a.b1(Xe,Xe,[ot,ot,1/Xe[3],ot])}),qe=[[0,1,2],[6,5,4],[0,3,7],[2,1,5],[3,2,6],[0,4,5]].map(Xe=>{let ot=function(xr,Ir){var ve=Ir[0],be=Ir[1],De=Ir[2],Be=ve*ve+be*be+De*De;return Be>0&&(Be=1/Math.sqrt(Be)),xr[0]=Ir[0]*Be,xr[1]=Ir[1]*Be,xr[2]=Ir[2]*Be,xr}([],function(xr,Ir,ve){var be=Ir[0],De=Ir[1],Be=Ir[2],et=ve[0],We=ve[1],it=ve[2];return xr[0]=De*it-Be*We,xr[1]=Be*et-be*it,xr[2]=be*We-De*et,xr}([],L([],le[Xe[0]],le[Xe[1]]),L([],le[Xe[2]],le[Xe[1]]))),Tt=-((Yt=ot)[0]*(Kt=le[Xe[1]])[0]+Yt[1]*Kt[1]+Yt[2]*Kt[2]);var Yt,Kt;return ot.concat(Tt)});return new ks(le,qe)}}class bc{constructor(w,B){this.min=w,this.max=B,this.center=function(Q,ee,le){return Q[0]=.5*ee[0],Q[1]=.5*ee[1],Q[2]=.5*ee[2],Q}([],function(Q,ee,le){return Q[0]=ee[0]+le[0],Q[1]=ee[1]+le[1],Q[2]=ee[2]+le[2],Q}([],this.min,this.max))}quadrant(w){let B=[w%2==0,w<2],Q=E(this.min),ee=E(this.max);for(let le=0;le<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 hu{constructor(w=0,B=0,Q=0,ee=0){if(isNaN(w)||w<0||isNaN(B)||B<0||isNaN(Q)||Q<0||isNaN(ee)||ee<0)throw new Error("Invalid value for edge-insets, top, bottom, left and right must all be numbers");this.top=w,this.bottom=B,this.left=Q,this.right=ee}interpolate(w,B,Q){return B.top!=null&&w.top!=null&&(this.top=a.y.number(w.top,B.top,Q)),B.bottom!=null&&w.bottom!=null&&(this.bottom=a.y.number(w.bottom,B.bottom,Q)),B.left!=null&&w.left!=null&&(this.left=a.y.number(w.left,B.left,Q)),B.right!=null&&w.right!=null&&(this.right=a.y.number(w.right,B.right,Q)),this}getCenter(w,B){let Q=a.ac((this.left+w-this.right)/2,0,w),ee=a.ac((this.top+B-this.bottom)/2,0,B);return new a.P(Q,ee)}equals(w){return this.top===w.top&&this.bottom===w.bottom&&this.left===w.left&&this.right===w.right}clone(){return new hu(this.top,this.bottom,this.left,this.right)}toJSON(){return{top:this.top,bottom:this.bottom,left:this.left,right:this.right}}}let _u=85.051129;class nl{constructor(w,B,Q,ee,le){this.tileSize=512,this._renderWorldCopies=le===void 0||!!le,this._minZoom=w||0,this._maxZoom=B||22,this._minPitch=Q==null?0:Q,this._maxPitch=ee==null?60:ee,this.setMaxBounds(),this.width=0,this.height=0,this._center=new a.N(0,0),this._elevation=0,this.zoom=0,this.angle=0,this._fov=.6435011087932844,this._pitch=0,this._unmodified=!0,this._edgeInsets=new hu,this._posMatrixCache={},this._alignedPosMatrixCache={},this._fogMatrixCache={},this.minElevationForCurrentTile=0}clone(){let w=new nl(this._minZoom,this._maxZoom,this._minPitch,this.maxPitch,this._renderWorldCopies);return w.apply(this),w}apply(w){this.tileSize=w.tileSize,this.latRange=w.latRange,this.lngRange=w.lngRange,this.width=w.width,this.height=w.height,this._center=w._center,this._elevation=w._elevation,this.minElevationForCurrentTile=w.minElevationForCurrentTile,this.zoom=w.zoom,this.angle=w.angle,this._fov=w._fov,this._pitch=w._pitch,this._unmodified=w._unmodified,this._edgeInsets=w._edgeInsets.clone(),this._calcMatrices()}get minZoom(){return this._minZoom}set minZoom(w){this._minZoom!==w&&(this._minZoom=w,this.zoom=Math.max(this.zoom,w))}get maxZoom(){return this._maxZoom}set maxZoom(w){this._maxZoom!==w&&(this._maxZoom=w,this.zoom=Math.min(this.zoom,w))}get minPitch(){return this._minPitch}set minPitch(w){this._minPitch!==w&&(this._minPitch=w,this.pitch=Math.max(this.pitch,w))}get maxPitch(){return this._maxPitch}set maxPitch(w){this._maxPitch!==w&&(this._maxPitch=w,this.pitch=Math.min(this.pitch,w))}get renderWorldCopies(){return this._renderWorldCopies}set renderWorldCopies(w){w===void 0?w=!0:w===null&&(w=!1),this._renderWorldCopies=w}get worldSize(){return this.tileSize*this.scale}get centerOffset(){return this.centerPoint._sub(this.size._div(2))}get size(){return new a.P(this.width,this.height)}get bearing(){return-this.angle/Math.PI*180}set bearing(w){let B=-a.b3(w,-180,180)*Math.PI/180;this.angle!==B&&(this._unmodified=!1,this.angle=B,this._calcMatrices(),this.rotationMatrix=function(){var Q=new a.A(4);return a.A!=Float32Array&&(Q[1]=0,Q[2]=0),Q[0]=1,Q[3]=1,Q}(),function(Q,ee,le){var qe=ee[0],Xe=ee[1],ot=ee[2],Tt=ee[3],Yt=Math.sin(le),Kt=Math.cos(le);Q[0]=qe*Kt+ot*Yt,Q[1]=Xe*Kt+Tt*Yt,Q[2]=qe*-Yt+ot*Kt,Q[3]=Xe*-Yt+Tt*Kt}(this.rotationMatrix,this.rotationMatrix,this.angle))}get pitch(){return this._pitch/Math.PI*180}set pitch(w){let B=a.ac(w,this.minPitch,this.maxPitch)/180*Math.PI;this._pitch!==B&&(this._unmodified=!1,this._pitch=B,this._calcMatrices())}get fov(){return this._fov/Math.PI*180}set fov(w){w=Math.max(.01,Math.min(60,w)),this._fov!==w&&(this._unmodified=!1,this._fov=w/180*Math.PI,this._calcMatrices())}get zoom(){return this._zoom}set zoom(w){let B=Math.min(Math.max(w,this.minZoom),this.maxZoom);this._zoom!==B&&(this._unmodified=!1,this._zoom=B,this.tileZoom=Math.max(0,Math.floor(B)),this.scale=this.zoomScale(B),this._constrain(),this._calcMatrices())}get center(){return this._center}set center(w){w.lat===this._center.lat&&w.lng===this._center.lng||(this._unmodified=!1,this._center=w,this._constrain(),this._calcMatrices())}get elevation(){return this._elevation}set elevation(w){w!==this._elevation&&(this._elevation=w,this._constrain(),this._calcMatrices())}get padding(){return this._edgeInsets.toJSON()}set padding(w){this._edgeInsets.equals(w)||(this._unmodified=!1,this._edgeInsets.interpolate(this._edgeInsets,w,1),this._calcMatrices())}get centerPoint(){return this._edgeInsets.getCenter(this.width,this.height)}isPaddingEqual(w){return this._edgeInsets.equals(w)}interpolatePadding(w,B,Q){this._unmodified=!1,this._edgeInsets.interpolate(w,B,Q),this._constrain(),this._calcMatrices()}coveringZoomLevel(w){let B=(w.roundZoom?Math.round:Math.floor)(this.zoom+this.scaleZoom(this.tileSize/w.tileSize));return Math.max(0,B)}getVisibleUnwrappedCoordinates(w){let B=[new a.b4(0,w)];if(this._renderWorldCopies){let Q=this.pointCoordinate(new a.P(0,0)),ee=this.pointCoordinate(new a.P(this.width,0)),le=this.pointCoordinate(new a.P(this.width,this.height)),qe=this.pointCoordinate(new a.P(0,this.height)),Xe=Math.floor(Math.min(Q.x,ee.x,le.x,qe.x)),ot=Math.floor(Math.max(Q.x,ee.x,le.x,qe.x)),Tt=1;for(let Yt=Xe-Tt;Yt<=ot+Tt;Yt++)Yt!==0&&B.push(new a.b4(Yt,w))}return B}coveringTiles(w){var B,Q;let ee=this.coveringZoomLevel(w),le=ee;if(w.minzoom!==void 0&&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],Yt=[ot*Xe.x,ot*Xe.y,0],Kt=ks.fromInvProjectionMatrix(this.invModelViewProjectionMatrix,this.worldSize,ee),xr=w.minzoom||0;!w.terrain&&this.pitch<=60&&this._edgeInsets.top<.1&&(xr=ee);let Ir=w.terrain?2/Math.min(this.tileSize,w.tileSize)*this.tileSize:3,ve=We=>({aabb:new bc([We*ot,0,0],[(We+1)*ot,ot,0]),zoom:0,x:0,y:0,wrap:We,fullyVisible:!1}),be=[],De=[],Be=ee,et=w.reparseOverscaled?le:ee;if(this._renderWorldCopies)for(let We=1;We<=3;We++)be.push(ve(-We)),be.push(ve(We));for(be.push(ve(0));be.length>0;){let We=be.pop(),it=We.x,Ft=We.y,Ht=We.fullyVisible;if(!Ht){let Wr=We.aabb.intersects(Kt);if(Wr===0)continue;Ht=Wr===2}let tr=w.terrain?Tt:Yt,dr=We.aabb.distanceX(tr),Sr=We.aabb.distanceY(tr),Or=Math.max(Math.abs(dr),Math.abs(Sr));if(We.zoom===Be||Or>Ir+(1<<Be-We.zoom)-2&&We.zoom>=xr){let Wr=Be-We.zoom,ni=Tt[0]-.5-(it<<Wr),Pi=Tt[1]-.5-(Ft<<Wr);De.push({tileID:new a.S(We.zoom===Be?et:We.zoom,We.wrap,We.zoom,it,Ft),distanceSq:x([Yt[0]-.5-it,Yt[1]-.5-Ft]),tileDistanceToCamera:Math.sqrt(ni*ni+Pi*Pi)})}else for(let Wr=0;Wr<4;Wr++){let ni=(it<<1)+Wr%2,Pi=(Ft<<1)+(Wr>>1),cn=We.zoom+1,ln=We.aabb.quadrant(Wr);if(w.terrain){let Cn=new a.S(cn,We.wrap,cn,ni,Pi),Kn=w.terrain.getMinMaxElevation(Cn),Ta=(B=Kn.minElevation)!==null&&B!==void 0?B:this.elevation,fa=(Q=Kn.maxElevation)!==null&&Q!==void 0?Q:this.elevation;ln=new bc([ln.min[0],ln.min[1],Ta],[ln.max[0],ln.max[1],fa])}be.push({aabb:ln,zoom:cn,x:ni,y:Pi,wrap:We.wrap,fullyVisible:Ht})}}return De.sort((We,it)=>We.distanceSq-it.distanceSq).map(We=>We.tileID)}resize(w,B){this.width=w,this.height=B,this.pixelsToGLUnits=[2/w,-2/B],this._constrain(),this._calcMatrices()}get unmodified(){return this._unmodified}zoomScale(w){return Math.pow(2,w)}scaleZoom(w){return Math.log(w)/Math.LN2}project(w){let B=a.ac(w.lat,-85.051129,_u);return new a.P(a.O(w.lng)*this.worldSize,a.Q(B)*this.worldSize)}unproject(w){return new a.Z(w.x/this.worldSize,w.y/this.worldSize).toLngLat()}get point(){return this.project(this.center)}getCameraPosition(){return{lngLat:this.pointLocation(this.getCameraPoint()),altitude:Math.cos(this._pitch)*this.cameraToCenterDistance/this._pixelPerMeter+this.elevation}}recalculateZoom(w){let B=this.elevation,Q=Math.cos(this._pitch)*this.cameraToCenterDistance/this._pixelPerMeter,ee=this.pointLocation(this.centerPoint,w),le=w.getElevationForLngLatZoom(ee,this.tileZoom);if(!(this.elevation-le))return;let qe=Q+B-le,Xe=Math.cos(this._pitch)*this.cameraToCenterDistance/qe/a.b5(1,ee.lat),ot=this.scaleZoom(Xe/this.tileSize);this._elevation=le,this._center=ee,this.zoom=ot}setLocationAtPoint(w,B){let Q=this.pointCoordinate(B),ee=this.pointCoordinate(this.centerPoint),le=this.locationCoordinate(w),qe=new a.Z(le.x-(Q.x-ee.x),le.y-(Q.y-ee.y));this.center=this.coordinateLocation(qe),this._renderWorldCopies&&(this.center=this.center.wrap())}locationPoint(w,B){return B?this.coordinatePoint(this.locationCoordinate(w),B.getElevationForLngLatZoom(w,this.tileZoom),this.pixelMatrix3D):this.coordinatePoint(this.locationCoordinate(w))}pointLocation(w,B){return this.coordinateLocation(this.pointCoordinate(w,B))}locationCoordinate(w){return a.Z.fromLngLat(w)}coordinateLocation(w){return w&&w.toLngLat()}pointCoordinate(w,B){if(B){let xr=B.pointCoordinate(w);if(xr!=null)return xr}let Q=[w.x,w.y,0,1],ee=[w.x,w.y,1,1];a.af(Q,Q,this.pixelMatrixInverse),a.af(ee,ee,this.pixelMatrixInverse);let le=Q[3],qe=ee[3],Xe=Q[1]/le,ot=ee[1]/qe,Tt=Q[2]/le,Yt=ee[2]/qe,Kt=Tt===Yt?0:(0-Tt)/(Yt-Tt);return new a.Z(a.y.number(Q[0]/le,ee[0]/qe,Kt)/this.worldSize,a.y.number(Xe,ot,Kt)/this.worldSize)}coordinatePoint(w,B=0,Q=this.pixelMatrix){let ee=[w.x*this.worldSize,w.y*this.worldSize,B,1];return a.af(ee,ee,Q),new a.P(ee[0]/ee[3],ee[1]/ee[3])}getBounds(){let w=Math.max(0,this.height/2-this.getHorizon());return new ce().extend(this.pointLocation(new a.P(0,w))).extend(this.pointLocation(new a.P(this.width,w))).extend(this.pointLocation(new a.P(this.width,this.height))).extend(this.pointLocation(new a.P(0,this.height)))}getMaxBounds(){return this.latRange&&this.latRange.length===2&&this.lngRange&&this.lngRange.length===2?new ce([this.lngRange[0],this.latRange[0]],[this.lngRange[1],this.latRange[1]]):null}getHorizon(){return Math.tan(Math.PI/2-this._pitch)*this.cameraToCenterDistance*.85}setMaxBounds(w){w?(this.lngRange=[w.getWest(),w.getEast()],this.latRange=[w.getSouth(),w.getNorth()],this._constrain()):(this.lngRange=null,this.latRange=[-85.051129,_u])}calculateTileMatrix(w){let B=w.canonical,Q=this.worldSize/this.zoomScale(B.z),ee=B.x+Math.pow(2,B.z)*w.wrap,le=a.an(new Float64Array(16));return a.J(le,le,[ee*Q,B.y*Q,0]),a.K(le,le,[Q/a.X,Q/a.X,1]),le}calculatePosMatrix(w,B=!1){let Q=w.key,ee=B?this._alignedPosMatrixCache:this._posMatrixCache;if(ee[Q])return ee[Q];let le=this.calculateTileMatrix(w);return a.L(le,B?this.alignedModelViewProjectionMatrix:this.modelViewProjectionMatrix,le),ee[Q]=new Float32Array(le),ee[Q]}calculateFogMatrix(w){let B=w.key,Q=this._fogMatrixCache;if(Q[B])return Q[B];let ee=this.calculateTileMatrix(w);return a.L(ee,this.fogMatrix,ee),Q[B]=new Float32Array(ee),Q[B]}customLayerMatrix(){return this.mercatorMatrix.slice()}getConstrained(w,B){B=a.ac(+B,this.minZoom,this.maxZoom);let Q={center:new a.N(w.lng,w.lat),zoom:B},ee=this.lngRange;if(!this._renderWorldCopies&&ee===null){let We=179.9999999999;ee=[-We,We]}let le=this.tileSize*this.zoomScale(Q.zoom),qe=0,Xe=le,ot=0,Tt=le,Yt=0,Kt=0,{x:xr,y:Ir}=this.size;if(this.latRange){let We=this.latRange;qe=a.Q(We[1])*le,Xe=a.Q(We[0])*le,Xe-qe<Ir&&(Yt=Ir/(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&&(Kt=xr/(Tt-ot)));let{x:ve,y:be}=this.project.call({worldSize:le},w),De,Be,et=Math.max(Kt||0,Yt||0);if(et){let We=new a.P(Kt?(Tt+ot)/2:ve,Yt?(Xe+qe)/2:be);return Q.center=this.unproject.call({worldSize:le},We).wrap(),Q.zoom+=this.scaleZoom(et),Q}if(this.latRange){let We=Ir/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 Ft=xr/2;it-Ft<ot&&(De=ot+Ft),it+Ft>Tt&&(De=Tt-Ft)}if(De!==void 0||Be!==void 0){let We=new a.P(De!=null?De:ve,Be!=null?Be:be);Q.center=this.unproject.call({worldSize:le},We).wrap()}return Q}_constrain(){if(!this.center||!this.width||!this.height||this._constraining)return;this._constraining=!0;let w=this._unmodified,{center:B,zoom:Q}=this.getConstrained(this.center,this.zoom);this.center=B,this.zoom=Q,this._unmodified=w,this._constraining=!1}_calcMatrices(){if(!this.height)return;let w=this.centerOffset,B=this.point.x,Q=this.point.y;this.cameraToCenterDistance=.5/Math.tan(this._fov/2)*this.height,this._pixelPerMeter=a.b5(1,this.center.lat)*this.worldSize;let ee=a.an(new Float64Array(16));a.K(ee,ee,[this.width/2,-this.height/2,1]),a.J(ee,ee,[1,-1,0]),this.labelPlaneMatrix=ee,ee=a.an(new Float64Array(16)),a.K(ee,ee,[1,-1,1]),a.J(ee,ee,[-1,-1,0]),a.K(ee,ee,[2/this.width,2/this.height,1]),this.glCoordMatrix=ee;let le=this.cameraToCenterDistance+this._elevation*this._pixelPerMeter/Math.cos(this._pitch),qe=Math.min(this.elevation,this.minElevationForCurrentTile),Xe=le-qe*this._pixelPerMeter/Math.cos(this._pitch),ot=qe<0?Xe:le,Tt=Math.PI/2+this._pitch,Yt=this._fov*(.5+w.y/this.height),Kt=Math.sin(Yt)*ot/Math.sin(a.ac(Math.PI-Tt-Yt,.01,Math.PI-.01)),xr=this.getHorizon(),Ir=2*Math.atan(xr/this.cameraToCenterDistance)*(.5+w.y/(2*xr)),ve=Math.sin(Ir)*ot/Math.sin(a.ac(Math.PI-Tt-Ir,.01,Math.PI-.01)),be=Math.min(Kt,ve);this.farZ=1.01*(Math.cos(Math.PI/2-this._pitch)*be+ot),this.nearZ=this.height/50,ee=new Float64Array(16),a.b6(ee,this._fov,this.width/this.height,this.nearZ,this.farZ),ee[8]=2*-w.x/this.width,ee[9]=2*w.y/this.height,this.projectionMatrix=a.ae(ee),a.K(ee,ee,[1,-1,1]),a.J(ee,ee,[0,0,-this.cameraToCenterDistance]),a.b7(ee,ee,this._pitch),a.ad(ee,ee,this.angle),a.J(ee,ee,[-B,-Q,0]),this.mercatorMatrix=a.K([],ee,[this.worldSize,this.worldSize,this.worldSize]),a.K(ee,ee,[1,1,this._pixelPerMeter]),this.pixelMatrix=a.L(new Float64Array(16),this.labelPlaneMatrix,ee),a.J(ee,ee,[0,0,-this.elevation]),this.modelViewProjectionMatrix=ee,this.invModelViewProjectionMatrix=a.as([],ee),this.fogMatrix=new Float64Array(16),a.b6(this.fogMatrix,this._fov,this.width/this.height,le,this.farZ),this.fogMatrix[8]=2*-w.x/this.width,this.fogMatrix[9]=2*w.y/this.height,a.K(this.fogMatrix,this.fogMatrix,[1,-1,1]),a.J(this.fogMatrix,this.fogMatrix,[0,0,-this.cameraToCenterDistance]),a.b7(this.fogMatrix,this.fogMatrix,this._pitch),a.ad(this.fogMatrix,this.fogMatrix,this.angle),a.J(this.fogMatrix,this.fogMatrix,[-B,-Q,0]),a.K(this.fogMatrix,this.fogMatrix,[1,1,this._pixelPerMeter]),a.J(this.fogMatrix,this.fogMatrix,[0,0,-this.elevation]),this.pixelMatrix3D=a.L(new Float64Array(16),this.labelPlaneMatrix,ee);let De=this.width%2/2,Be=this.height%2/2,et=Math.cos(this.angle),We=Math.sin(this.angle),it=B-Math.round(B)+et*De+We*Be,Ft=Q-Math.round(Q)+et*Be+We*De,Ht=new Float64Array(ee);if(a.J(Ht,Ht,[it>.5?it-1:it,Ft>.5?Ft-1:Ft,0]),this.alignedModelViewProjectionMatrix=Ht,ee=a.as(new Float64Array(16),this.pixelMatrix),!ee)throw new Error("failed to invert matrix");this.pixelMatrixInverse=ee,this._posMatrixCache={},this._alignedPosMatrixCache={},this._fogMatrixCache={}}maxPitchScaleFactor(){if(!this.pixelMatrixInverse)return 1;let w=this.pointCoordinate(new a.P(0,0)),B=[w.x*this.worldSize,w.y*this.worldSize,0,1];return a.af(B,B,this.pixelMatrix)[3]/this.cameraToCenterDistance}getCameraPoint(){let w=Math.tan(this._pitch)*(this.cameraToCenterDistance||1);return this.centerPoint.add(new a.P(0,w))}getCameraQueryGeometry(w){let B=this.getCameraPoint();if(w.length===1)return[w[0],B];{let Q=B.x,ee=B.y,le=B.x,qe=B.y;for(let Xe of w)Q=Math.min(Q,Xe.x),ee=Math.min(ee,Xe.y),le=Math.max(le,Xe.x),qe=Math.max(qe,Xe.y);return[new a.P(Q,ee),new a.P(le,ee),new a.P(le,qe),new a.P(Q,qe),new a.P(Q,ee)]}}lngLatToCameraDepth(w,B){let Q=this.locationCoordinate(w),ee=[Q.x*this.worldSize,Q.y*this.worldSize,B,1];return a.af(ee,ee,this.modelViewProjectionMatrix),ee[2]/ee[3]}}function nh(ue,w){let B,Q=!1,ee=null,le=null,qe=()=>{ee=null,Q&&(ue.apply(le,B),ee=setTimeout(qe,w),Q=!1)};return(...Xe)=>(Q=!0,le=this,B=Xe,ee||qe(),ee)}class Ah{constructor(w){this._getCurrentHash=()=>{let B=window.location.hash.replace("#","");if(this._hashName){let Q;return B.split("&").map(ee=>ee.split("=")).forEach(ee=>{ee[0]===this._hashName&&(Q=ee)}),(Q&&Q[1]||"").split("/")}return B.split("/")},this._onHashChange=()=>{let B=this._getCurrentHash();if(B.length>=3&&!B.some(Q=>isNaN(Q))){let Q=this._map.dragRotate.isEnabled()&&this._map.touchZoomRotate.isEnabled()?+(B[3]||0):this._map.getBearing();return this._map.jumpTo({center:[+B[2],+B[1]],zoom:+B[0],bearing:Q,pitch:+(B[4]||0)}),!0}return!1},this._updateHashUnthrottled=()=>{let B=window.location.href.replace(/(#.*)?$/,this.getHashString());window.history.replaceState(window.history.state,null,B)},this._removeHash=()=>{let B=this._getCurrentHash();if(B.length===0)return;let Q=B.join("/"),ee=Q;ee.split("&").length>0&&(ee=ee.split("&")[0]),this._hashName&&(ee=`${this._hashName}=${Q}`);let le=window.location.hash.replace(ee,"");le.startsWith("#&")?le=le.slice(0,1)+le.slice(2):le==="#"&&(le="");let qe=window.location.href.replace(/(#.+)?$/,le);qe=qe.replace("&&","&"),window.history.replaceState(window.history.state,null,qe)},this._updateHash=nh(this._updateHashUnthrottled,300),this._hashName=w&&encodeURIComponent(w)}addTo(w){return this._map=w,addEventListener("hashchange",this._onHashChange,!1),this._map.on("moveend",this._updateHash),this}remove(){return removeEventListener("hashchange",this._onHashChange,!1),this._map.off("moveend",this._updateHash),clearTimeout(this._updateHash()),this._removeHash(),delete this._map,this}getHashString(w){let B=this._map.getCenter(),Q=Math.round(100*this._map.getZoom())/100,ee=Math.ceil((Q*Math.LN2+Math.log(512/360/.5))/Math.LN10),le=Math.pow(10,ee),qe=Math.round(B.lng*le)/le,Xe=Math.round(B.lat*le)/le,ot=this._map.getBearing(),Tt=this._map.getPitch(),Yt="";if(Yt+=w?`/${qe}/${Xe}/${Q}`:`${Q}/${Xe}/${qe}`,(ot||Tt)&&(Yt+="/"+Math.round(10*ot)/10),Tt&&(Yt+=`/${Math.round(Tt)}`),this._hashName){let Kt=this._hashName,xr=!1,Ir=window.location.hash.slice(1).split("&").map(ve=>{let be=ve.split("=")[0];return be===Kt?(xr=!0,`${be}=${Yt}`):ve}).filter(ve=>ve);return xr||Ir.push(`${Kt}=${Yt}`),`#${Ir.join("&")}`}return`#${Yt}`}}let zu={linearity:.3,easing:a.b8(0,0,.3,1)},Fc=a.e({deceleration:2500,maxSpeed:1400},zu),wc=a.e({deceleration:20,maxSpeed:1400},zu),bd=a.e({deceleration:1e3,maxSpeed:360},zu),xf=a.e({deceleration:1e3,maxSpeed:90},zu);class Pf{constructor(w){this._map=w,this.clear()}clear(){this._inertiaBuffer=[]}record(w){this._drainInertiaBuffer(),this._inertiaBuffer.push({time:u.now(),settings:w})}_drainInertiaBuffer(){let w=this._inertiaBuffer,B=u.now();for(;w.length>0&&B-w[0].time>160;)w.shift()}_onMoveEnd(w){if(this._drainInertiaBuffer(),this._inertiaBuffer.length<2)return;let B={zoom:0,bearing:0,pitch:0,pan:new a.P(0,0),pinchAround:void 0,around:void 0};for(let{settings:le}of this._inertiaBuffer)B.zoom+=le.zoomDelta||0,B.bearing+=le.bearingDelta||0,B.pitch+=le.pitchDelta||0,le.panDelta&&B.pan._add(le.panDelta),le.around&&(B.around=le.around),le.pinchAround&&(B.pinchAround=le.pinchAround);let Q=this._inertiaBuffer[this._inertiaBuffer.length-1].time-this._inertiaBuffer[0].time,ee={};if(B.pan.mag()){let le=bf(B.pan.mag(),Q,a.e({},Fc,w||{}));ee.offset=B.pan.mult(le.amount/B.pan.mag()),ee.center=this._map.transform.center,Ou(ee,le)}if(B.zoom){let le=bf(B.zoom,Q,wc);ee.zoom=this._map.transform.zoom+le.amount,Ou(ee,le)}if(B.bearing){let le=bf(B.bearing,Q,bd);ee.bearing=this._map.transform.bearing+a.ac(le.amount,-179,179),Ou(ee,le)}if(B.pitch){let le=bf(B.pitch,Q,xf);ee.pitch=this._map.transform.pitch+le.amount,Ou(ee,le)}if(ee.zoom||ee.bearing){let le=B.pinchAround===void 0?B.around:B.pinchAround;ee.around=le?this._map.unproject(le):this._map.getCenter()}return this.clear(),a.e(ee,{noMoveStart:!0})}}function Ou(ue,w){(!ue.duration||ue.duration<w.duration)&&(ue.duration=w.duration,ue.easing=w.easing)}function bf(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,Yt,Kt)=>ot.add(Tt.div(Kt.length)),new a.P(0,0));super(w,{points:le,point:Xe,lngLats:qe,lngLat:B.unproject(Xe),originalEvent:Q}),this._defaultPrevented=!1}}class Hh extends a.k{preventDefault(){this._defaultPrevented=!0}get defaultPrevented(){return this._defaultPrevented}constructor(w,B,Q){super(w,{originalEvent:Q}),this._defaultPrevented=!1}}class If{constructor(w,B){this._map=w,this._clickTolerance=B.clickTolerance}reset(){delete this._mousedownPos}wheel(w){return this._firePreventable(new Hh(w.type,this._map,w))}mousedown(w,B){return this._mousedownPos=B,this._firePreventable(new jl(w.type,this._map,w))}mouseup(w){this._map.fire(new jl(w.type,this._map,w))}click(w,B){this._mousedownPos&&this._mousedownPos.dist(B)>=this._clickTolerance||this._map.fire(new jl(w.type,this._map,w))}dblclick(w){return this._firePreventable(new jl(w.type,this._map,w))}mouseover(w){this._map.fire(new jl(w.type,this._map,w))}mouseout(w){this._map.fire(new jl(w.type,this._map,w))}touchstart(w){return this._firePreventable(new lf(w.type,this._map,w))}touchmove(w){this._map.fire(new lf(w.type,this._map,w))}touchend(w){this._map.fire(new lf(w.type,this._map,w))}touchcancel(w){this._map.fire(new lf(w.type,this._map,w))}_firePreventable(w){if(this._map.fire(w),w.defaultPrevented)return{}}isEnabled(){return!0}isActive(){return!1}enable(){}disable(){}}class Cs{constructor(w){this._map=w}reset(){this._delayContextMenu=!1,this._ignoreContextMenu=!0,delete this._contextMenuEvent}mousemove(w){this._map.fire(new jl(w.type,this._map,w))}mousedown(){this._delayContextMenu=!0,this._ignoreContextMenu=!1}mouseup(){this._delayContextMenu=!1,this._contextMenuEvent&&(this._map.fire(new jl("contextmenu",this._map,this._contextMenuEvent)),delete this._contextMenuEvent)}contextmenu(w){this._delayContextMenu?this._contextMenuEvent=w:this._ignoreContextMenu||this._map.fire(new jl(w.type,this._map,w)),this._map.listens("contextmenu")&&w.preventDefault()}isEnabled(){return!0}isActive(){return!1}enable(){}disable(){}}class du{constructor(w){this._map=w}get transform(){return this._map._requestedCameraState||this._map.transform}get center(){return{lng:this.transform.center.lng,lat:this.transform.center.lat}}get zoom(){return this.transform.zoom}get pitch(){return this.transform.pitch}get bearing(){return this.transform.bearing}unproject(w){return this.transform.pointLocation(a.P.convert(w),this._map.terrain)}}class ku{constructor(w,B){this._map=w,this._tr=new du(w),this._el=w.getCanvasContainer(),this._container=w.getContainer(),this._clickTolerance=B.clickTolerance||1}isEnabled(){return!!this._enabled}isActive(){return!!this._active}enable(){this.isEnabled()||(this._enabled=!0)}disable(){this.isEnabled()&&(this._enabled=!1)}mousedown(w,B){this.isEnabled()&&w.shiftKey&&w.button===0&&(c.disableDrag(),this._startPos=this._lastPos=B,this._active=!0)}mousemoveWindow(w,B){if(!this._active)return;let Q=B;if(this._lastPos.equals(Q)||!this._box&&Q.dist(this._startPos)<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 Us{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 wf{constructor(w){this.singleTap=new Us(w),this.numTaps=w.numTaps,this.reset()}reset(){this.lastTime=1/0,delete this.lastTap,this.count=0,this.singleTap.reset()}touchstart(w,B,Q){this.singleTap.touchstart(w,B,Q)}touchmove(w,B,Q){this.singleTap.touchmove(w,B,Q)}touchend(w,B,Q){let ee=this.singleTap.touchend(w,B,Q);if(ee){let le=w.timeStamp-this.lastTime<500,qe=!this.lastTap||this.lastTap.dist(ee)<30;if(le&&qe||this.reset(),this.count++,this.lastTime=w.timeStamp,this.lastTap=ee,this.count===this.numTaps)return this.reset(),ee}}}class zc{constructor(w){this._tr=new du(w),this._zoomIn=new wf({numTouches:1,numTaps:2}),this._zoomOut=new wf({numTouches:2,numTaps:1}),this.reset()}reset(){this._active=!1,this._zoomIn.reset(),this._zoomOut.reset()}touchstart(w,B,Q){this._zoomIn.touchstart(w,B,Q),this._zoomOut.touchstart(w,B,Q)}touchmove(w,B,Q){this._zoomIn.touchmove(w,B,Q),this._zoomOut.touchmove(w,B,Q)}touchend(w,B,Q){let ee=this._zoomIn.touchend(w,B,Q),le=this._zoomOut.touchend(w,B,Q),qe=this._tr;return ee?(this._active=!0,w.preventDefault(),setTimeout(()=>this.reset(),0),{cameraAnimation:Xe=>Xe.easeTo({duration:300,zoom:qe.zoom+1,around:qe.unproject(ee)},{originalEvent:w})}):le?(this._active=!0,w.preventDefault(),setTimeout(()=>this.reset(),0),{cameraAnimation:Xe=>Xe.easeTo({duration:300,zoom:qe.zoom-1,around:qe.unproject(le)},{originalEvent:w})}):void 0}touchcancel(){this.reset()}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class Wu{constructor(w){this._enabled=!!w.enable,this._moveStateManager=w.moveStateManager,this._clickTolerance=w.clickTolerance||1,this._moveFunction=w.move,this._activateOnStart=!!w.activateOnStart,w.assignEvents(this),this.reset()}reset(w){this._active=!1,this._moved=!1,delete this._lastPoint,this._moveStateManager.endMove(w)}_move(...w){let B=this._moveFunction(...w);if(B.bearingDelta||B.pitchDelta||B.around||B.panDelta)return this._active=!0,B}dragStart(w,B){this.isEnabled()&&!this._lastPoint&&this._moveStateManager.isValidStartEvent(w)&&(this._moveStateManager.startMove(w),this._lastPoint=B.length?B[0]:B,this._activateOnStart&&this._lastPoint&&(this._active=!0))}dragMove(w,B){if(!this.isEnabled())return;let Q=this._lastPoint;if(!Q)return;if(w.preventDefault(),!this._moveStateManager.isValidMoveEvent(w))return void this.reset(w);let ee=B.length?B[0]:B;return!this._moved&&ee.dist(Q)<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 Rf={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=Rf[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 Yt=ee[Tt],Kt=this._touches[Tt];Kt&&(le._add(Yt),qe._add(Yt.sub(Kt)),Xe++,ee[Tt]=Yt)}if(this._touches=ee,this._shouldBePrevented(Xe)||!qe.mag())return;let ot=qe.div(Xe);return this._sum._add(ot),this._sum.mag()<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 vu 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 Wt{constructor(w){this._tr=new du(w);let B=At;this._panStep=B.panStep,this._bearingStep=B.bearingStep,this._pitchStep=B.pitchStep,this._rotationDisabled=!1}reset(){this._active=!1}keydown(w){if(w.altKey||w.ctrlKey||w.metaKey)return;let B=0,Q=0,ee=0,le=0,qe=0;switch(w.keyCode){case 61:case 107:case 171:case 187:B=1;break;case 189:case 109:case 173:B=-1;break;case 37:w.shiftKey?Q=-1:(w.preventDefault(),le=-1);break;case 39:w.shiftKey?Q=1:(w.preventDefault(),le=1);break;case 38:w.shiftKey?ee=1:(w.preventDefault(),qe=-1);break;case 40:w.shiftKey?ee=-1:(w.preventDefault(),qe=1);break;default:return}return this._rotationDisabled&&(Q=0,ee=0),{cameraAnimation:Xe=>{let ot=this._tr;Xe.easeTo({duration:300,easeId:"keyboardHandler",easing:Cr,zoom:B?Math.round(ot.zoom)+B*(w.shiftKey?2:1):ot.zoom,bearing:ot.bearing+Q*this._bearingStep,pitch:ot.pitch+ee*this._pitchStep,offset:[-le*this._panStep,-qe*this._panStep],center:ot.center},{originalEvent:w})}}}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}disableRotation(){this._rotationDisabled=!0}enableRotation(){this._rotationDisabled=!1}}function Cr(ue){return ue*(2-ue)}let Ar=4.000244140625;class Kr{constructor(w,B){this._onTimeout=Q=>{this._type="wheel",this._delta-=this._lastValue,this._active||this._start(Q)},this._map=w,this._tr=new du(w),this._triggerRenderFrame=B,this._delta=0,this._defaultZoomRate=.01,this._wheelZoomRate=.0022222222222222222}setZoomRate(w){this._defaultZoomRate=w}setWheelZoomRate(w){this._wheelZoomRate=w}isEnabled(){return!!this._enabled}isActive(){return!!this._active||this._finishTimeout!==void 0}isZooming(){return!!this._zooming}enable(w){this.isEnabled()||(this._enabled=!0,this._aroundCenter=!!w&&w.around==="center")}disable(){this.isEnabled()&&(this._enabled=!1)}_shouldBePrevented(w){return!!this._map.cooperativeGestures.isEnabled()&&!(w.ctrlKey||this._map.cooperativeGestures.isBypassed(w))}wheel(w){if(!this.isEnabled())return;if(this._shouldBePrevented(w))return void this._map.cooperativeGestures.notifyGestureBlocked("wheel_zoom",w);let B=w.deltaMode===WheelEvent.DOM_DELTA_LINE?40*w.deltaY:w.deltaY,Q=u.now(),ee=Q-(this._lastWheelEventTime||0);this._lastWheelEventTime=Q,B!==0&&B%Ar==0?this._type="wheel":B!==0&&Math.abs(B)<4?this._type="trackpad":ee>400?(this._type=null,this._lastValue=B,this._timeout=setTimeout(this._onTimeout,40,w)):this._type||(this._type=Math.abs(ee*B)<200?"trackpad":"wheel",this._timeout&&(clearTimeout(this._timeout),this._timeout=null,B+=this._lastValue)),w.shiftKey&&B&&(B/=4),this._type&&(this._lastWheelEvent=w,this._delta-=B,this._active||this._start(w)),w.preventDefault()}_start(w){if(!this._delta)return;this._frameId&&(this._frameId=null),this._active=!0,this.isZooming()||(this._zooming=!0),this._finishTimeout&&(clearTimeout(this._finishTimeout),delete this._finishTimeout);let B=c.mousePos(this._map.getCanvas(),w),Q=this._tr;this._around=B.y>Q.transform.height/2-Q.transform.getHorizon()?a.N.convert(this._aroundCenter?Q.center:Q.unproject(B)):a.N.convert(Q.center),this._aroundPoint=Q.transform.locationPoint(this._around),this._frameId||(this._frameId=!0,this._triggerRenderFrame())}renderFrame(){if(!this._frameId||(this._frameId=null,!this.isActive()))return;let w=this._tr.transform;if(this._delta!==0){let ot=this._type==="wheel"&&Math.abs(this._delta)>Ar?this._wheelZoomRate:this._defaultZoomRate,Tt=2/(1+Math.exp(-Math.abs(this._delta*ot)));this._delta<0&&Tt!==0&&(Tt=1/Tt);let Yt=typeof this._targetZoom=="number"?w.zoomScale(this._targetZoom):w.scale;this._targetZoom=Math.min(w.maxZoom,Math.max(w.minZoom,w.scaleZoom(Yt*Tt))),this._type==="wheel"&&(this._startZoom=w.zoom,this._easing=this._smoothOutEasing(200)),this._delta=0}let B=typeof this._targetZoom=="number"?this._targetZoom:w.zoom,Q=this._startZoom,ee=this._easing,le,qe=!1,Xe=u.now()-this._lastWheelEventTime;if(this._type==="wheel"&&Q&&ee&&Xe){let ot=Math.min(Xe/200,1),Tt=ee(ot);le=a.y.number(Q,B,Tt),ot<1?this._frameId||(this._frameId=!0):qe=!0}else le=B,qe=!0;return this._active=!0,qe&&(this._active=!1,this._finishTimeout=setTimeout(()=>{this._zooming=!1,this._triggerRenderFrame(),delete this._targetZoom,delete this._finishTimeout},200)),{noInertia:!0,needsRenderFrame:!qe,zoomDelta:le-w.zoom,around:this._aroundPoint,originalEvent:this._lastWheelEvent}}_smoothOutEasing(w){let B=a.b9;if(this._prevEase){let Q=this._prevEase,ee=(u.now()-Q.start)/Q.duration,le=Q.easing(ee+.01)-Q.easing(ee),qe=.27/Math.sqrt(le*le+1e-4)*.01,Xe=Math.sqrt(.0729-qe*qe);B=a.b8(qe,Xe,.25,1)}return this._prevEase={start:u.now(),duration:w,easing:B},B}reset(){this._active=!1,this._zooming=!1,delete this._targetZoom,this._finishTimeout&&(clearTimeout(this._finishTimeout),delete this._finishTimeout)}}class ki{constructor(w,B){this._clickZoom=w,this._tapZoom=B}enable(){this._clickZoom.enable(),this._tapZoom.enable()}disable(){this._clickZoom.disable(),this._tapZoom.disable()}isEnabled(){return this._clickZoom.isEnabled()&&this._tapZoom.isEnabled()}isActive(){return this._clickZoom.isActive()||this._tapZoom.isActive()}}class Xi{constructor(w){this._tr=new du(w),this.reset()}reset(){this._active=!1}dblclick(w,B){return w.preventDefault(),{cameraAnimation:Q=>{Q.easeTo({duration:300,zoom:this._tr.zoom+(w.shiftKey?-1:1),around:this._tr.unproject(B)},{originalEvent:w})}}}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class dn{constructor(){this._tap=new wf({numTouches:1,numTaps:1}),this.reset()}reset(){this._active=!1,delete this._swipePoint,delete this._swipeTouch,delete this._tapTime,delete this._tapPoint,this._tap.reset()}touchstart(w,B,Q){if(!this._swipePoint)if(this._tapTime){let ee=B[0],le=w.timeStamp-this._tapTime<500,qe=this._tapPoint.dist(ee)<30;le&&qe?Q.length>0&&(this._swipePoint=ee,this._swipeTouch=Q[0].identifier):this.reset()}else this._tap.touchstart(w,B,Q)}touchmove(w,B,Q){if(this._tapTime){if(this._swipePoint){if(Q[0].identifier!==this._swipeTouch)return;let ee=B[0],le=ee.y-this._swipePoint.y;return this._swipePoint=ee,w.preventDefault(),this._active=!0,{zoomDelta:le/128}}}else this._tap.touchmove(w,B,Q)}touchend(w,B,Q){if(this._tapTime)this._swipePoint&&Q.length===0&&this.reset();else{let ee=this._tap.touchend(w,B,Q);ee&&(this._tapTime=w.timeStamp,this._tapPoint=ee)}}touchcancel(){this.reset()}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class wn{constructor(w,B,Q){this._el=w,this._mousePan=B,this._touchPan=Q}enable(w){this._inertiaOptions=w||{},this._mousePan.enable(),this._touchPan.enable(),this._el.classList.add("maplibregl-touch-drag-pan")}disable(){this._mousePan.disable(),this._touchPan.disable(),this._el.classList.remove("maplibregl-touch-drag-pan")}isEnabled(){return this._mousePan.isEnabled()&&this._touchPan.isEnabled()}isActive(){return this._mousePan.isActive()||this._touchPan.isActive()}}class Nn{constructor(w,B,Q){this._pitchWithRotate=w.pitchWithRotate,this._mouseRotate=B,this._mousePitch=Q}enable(){this._mouseRotate.enable(),this._pitchWithRotate&&this._mousePitch.enable()}disable(){this._mouseRotate.disable(),this._mousePitch.disable()}isEnabled(){return this._mouseRotate.isEnabled()&&(!this._pitchWithRotate||this._mousePitch.isEnabled())}isActive(){return this._mouseRotate.isActive()||this._mousePitch.isActive()}}class Yi{constructor(w,B,Q,ee){this._el=w,this._touchZoom=B,this._touchRotate=Q,this._tapDragZoom=ee,this._rotationDisabled=!1,this._enabled=!0}enable(w){this._touchZoom.enable(w),this._rotationDisabled||this._touchRotate.enable(w),this._tapDragZoom.enable(),this._el.classList.add("maplibregl-touch-zoom-rotate")}disable(){this._touchZoom.disable(),this._touchRotate.disable(),this._tapDragZoom.disable(),this._el.classList.remove("maplibregl-touch-zoom-rotate")}isEnabled(){return this._touchZoom.isEnabled()&&(this._rotationDisabled||this._touchRotate.isEnabled())&&this._tapDragZoom.isEnabled()}isActive(){return this._touchZoom.isActive()||this._touchRotate.isActive()||this._tapDragZoom.isActive()}disableRotation(){this._rotationDisabled=!0,this._touchRotate.disable()}enableRotation(){this._rotationDisabled=!1,this._touchZoom.isEnabled()&&this._touchRotate.enable()}}class Qi{constructor(w,B){this._bypassKey=navigator.userAgent.indexOf("Mac")!==-1?"metaKey":"ctrlKey",this._map=w,this._options=B,this._enabled=!1}isActive(){return!1}reset(){}_setupUI(){if(this._container)return;let w=this._map.getCanvasContainer();w.classList.add("maplibregl-cooperative-gestures"),this._container=c.create("div","maplibregl-cooperative-gesture-screen",w);let B=this._map._getUIString("CooperativeGesturesHandler.WindowsHelpText");this._bypassKey==="metaKey"&&(B=this._map._getUIString("CooperativeGesturesHandler.MacHelpText"));let Q=this._map._getUIString("CooperativeGesturesHandler.MobileHelpText"),ee=document.createElement("div");ee.className="maplibregl-desktop-message",ee.textContent=B,this._container.appendChild(ee);let le=document.createElement("div");le.className="maplibregl-mobile-message",le.textContent=Q,this._container.appendChild(le),this._container.setAttribute("aria-hidden","true")}_destroyUI(){this._container&&(c.remove(this._container),this._map.getCanvasContainer().classList.remove("maplibregl-cooperative-gestures")),delete this._container}enable(){this._setupUI(),this._enabled=!0}disable(){this._enabled=!1,this._destroyUI()}isEnabled(){return this._enabled}isBypassed(w){return w[this._bypassKey]}notifyGestureBlocked(w,B){this._enabled&&(this._map.fire(new a.k("cooperativegestureprevented",{gestureType:w,originalEvent:B})),this._container.classList.add("maplibregl-show"),setTimeout(()=>{this._container.classList.remove("maplibregl-show")},100))}}let on=ue=>ue.zoom||ue.drag||ue.pitch||ue.rotate;class Fi extends a.k{}function $n(ue){return ue.panDelta&&ue.panDelta.mag()||ue.zoomDelta||ue.bearingDelta||ue.pitchDelta}class Ca{constructor(w,B){this.handleWindowEvent=ee=>{this.handleEvent(ee,`${ee.type}Window`)},this.handleEvent=(ee,le)=>{if(ee.type==="blur")return void this.stop(!0);this._updatingCamera=!0;let qe=ee.type==="renderFrame"?void 0:ee,Xe={needsRenderFrame:!1},ot={},Tt={},Yt=ee.touches,Kt=Yt?this._getMapTouches(Yt):void 0,xr=Kt?c.touchPos(this._map.getCanvas(),Kt):c.mousePos(this._map.getCanvas(),ee);for(let{handlerName:be,handler:De,allowed:Be}of this._handlers){if(!De.isEnabled())continue;let et;this._blockedByActive(Tt,Be,be)?De.reset():De[le||ee.type]&&(et=De[le||ee.type](ee,xr,Kt),this.mergeHandlerResult(Xe,ot,et,be,qe),et&&et.needsRenderFrame&&this._triggerRenderFrame()),(et||De.isActive())&&(Tt[be]=De)}let Ir={};for(let be in this._previousActiveHandlers)Tt[be]||(Ir[be]=qe);this._previousActiveHandlers=Tt,(Object.keys(Ir).length||$n(Xe))&&(this._changes.push([Xe,ot,Ir]),this._triggerRenderFrame()),(Object.keys(Tt).length||$n(Xe))&&this._map._stop(!0),this._updatingCamera=!1;let{cameraAnimation:ve}=Xe;ve&&(this._inertia.clear(),this._fireEvents({},{},!0),this._changes=[],ve(this._map))},this._map=w,this._el=this._map.getCanvasContainer(),this._handlers=[],this._handlersById={},this._changes=[],this._inertia=new Pf(w),this._bearingSnap=B.bearingSnap,this._previousActiveHandlers={},this._eventsInProgress={},this._addDefaultHandlers(B);let Q=this._el;this._listeners=[[Q,"touchstart",{passive:!0}],[Q,"touchmove",{passive:!1}],[Q,"touchend",void 0],[Q,"touchcancel",void 0],[Q,"mousedown",void 0],[Q,"mousemove",void 0],[Q,"mouseup",void 0],[document,"mousemove",{capture:!0}],[document,"mouseup",void 0],[Q,"mouseover",void 0],[Q,"mouseout",void 0],[Q,"dblclick",void 0],[Q,"click",void 0],[Q,"keydown",{capture:!1}],[Q,"keyup",void 0],[Q,"wheel",{passive:!1}],[Q,"contextmenu",void 0],[window,"blur",void 0]];for(let[ee,le,qe]of this._listeners)c.addEventListener(ee,le,ee===document?this.handleWindowEvent:this.handleEvent,qe)}destroy(){for(let[w,B,Q]of this._listeners)c.removeEventListener(w,B,w===document?this.handleWindowEvent:this.handleEvent,Q)}_addDefaultHandlers(w){let B=this._map,Q=B.getCanvasContainer();this._add("mapEvent",new If(B,w));let ee=B.boxZoom=new ku(B,w);this._add("boxZoom",ee),w.interactive&&w.boxZoom&&ee.enable();let le=B.cooperativeGestures=new Qi(B,w.cooperativeGestures);this._add("cooperativeGestures",le),w.cooperativeGestures&&le.enable();let qe=new zc(B),Xe=new Xi(B);B.doubleClickZoom=new ki(Xe,qe),this._add("tapZoom",qe),this._add("clickZoom",Xe),w.interactive&&w.doubleClickZoom&&B.doubleClickZoom.enable();let ot=new dn;this._add("tapDragZoom",ot);let Tt=B.touchPitch=new Bc(B);this._add("touchPitch",Tt),w.interactive&&w.touchPitch&&B.touchPitch.enable(w.touchPitch);let Yt=Wl(w),Kt=ah(w);B.dragRotate=new Nn(w,Yt,Kt),this._add("mouseRotate",Yt,["mousePitch"]),this._add("mousePitch",Kt,["mouseRotate"]),w.interactive&&w.dragRotate&&B.dragRotate.enable();let xr=(({enable:et,clickTolerance:We})=>{let it=new Xu({checkCorrectEvent:Ft=>c.mouseButton(Ft)===0&&!Ft.ctrlKey});return new Wu({clickTolerance:We,move:(Ft,Ht)=>({around:Ht,panDelta:Ht.sub(Ft)}),activateOnStart:!0,moveStateManager:it,enable:et,assignEvents:Xf})})(w),Ir=new Zu(w,B);B.dragPan=new wn(Q,xr,Ir),this._add("mousePan",xr),this._add("touchPan",Ir,["touchZoom","touchRotate"]),w.interactive&&w.dragPan&&B.dragPan.enable(w.dragPan);let ve=new cf,be=new vu;B.touchZoomRotate=new Yi(Q,be,ve,ot),this._add("touchRotate",ve,["touchPan","touchZoom"]),this._add("touchZoom",be,["touchPan","touchRotate"]),w.interactive&&w.touchZoomRotate&&B.touchZoomRotate.enable(w.touchZoomRotate);let De=B.scrollZoom=new Kr(B,()=>this._triggerRenderFrame());this._add("scrollZoom",De,["mousePan"]),w.interactive&&w.scrollZoom&&B.scrollZoom.enable(w.scrollZoom);let Be=B.keyboard=new Wt(B);this._add("keyboard",Be),w.interactive&&w.keyboard&&B.keyboard.enable(),this._add("blockableMapEvent",new Cs(B))}_add(w,B,Q){this._handlers.push({handlerName:w,handler:B,allowed:Q}),this._handlersById[w]=B}stop(w){if(!this._updatingCamera){for(let{handler:B}of this._handlers)B.reset();this._inertia.clear(),this._fireEvents({},{},w),this._changes=[]}}isActive(){for(let{handler:w}of this._handlers)if(w.isActive())return!0;return!1}isZooming(){return!!this._eventsInProgress.zoom||this._map.scrollZoom.isZooming()}isRotating(){return!!this._eventsInProgress.rotate}isMoving(){return!!on(this._eventsInProgress)||this.isZooming()}_blockedByActive(w,B,Q){for(let ee in w)if(ee!==Q&&(!B||B.indexOf(ee)<0))return!0;return!1}_getMapTouches(w){let B=[];for(let Q of w)this._el.contains(Q.target)&&B.push(Q);return B}mergeHandlerResult(w,B,Q,ee,le){if(!Q)return;a.e(w,Q);let qe={handlerName:ee,originalEvent:Q.originalEvent||le};Q.zoomDelta!==void 0&&(B.zoom=qe),Q.panDelta!==void 0&&(B.drag=qe),Q.pitchDelta!==void 0&&(B.pitch=qe),Q.bearingDelta!==void 0&&(B.rotate=qe)}_applyChanges(){let w={},B={},Q={};for(let[ee,le,qe]of this._changes)ee.panDelta&&(w.panDelta=(w.panDelta||new a.P(0,0))._add(ee.panDelta)),ee.zoomDelta&&(w.zoomDelta=(w.zoomDelta||0)+ee.zoomDelta),ee.bearingDelta&&(w.bearingDelta=(w.bearingDelta||0)+ee.bearingDelta),ee.pitchDelta&&(w.pitchDelta=(w.pitchDelta||0)+ee.pitchDelta),ee.around!==void 0&&(w.around=ee.around),ee.pinchAround!==void 0&&(w.pinchAround=ee.pinchAround),ee.noInertia&&(w.noInertia=ee.noInertia),a.e(B,le),a.e(Q,qe);this._updateMapTransform(w,B,Q),this._changes=[]}_updateMapTransform(w,B,Q){let ee=this._map,le=ee._getTransformForUpdate(),qe=ee.terrain;if(!($n(w)||qe&&this._terrainMovement))return this._fireEvents(B,Q,!0);let{panDelta:Xe,zoomDelta:ot,bearingDelta:Tt,pitchDelta:Yt,around:Kt,pinchAround:xr}=w;xr!==void 0&&(Kt=xr),ee._stop(!0),Kt=Kt||ee.transform.centerPoint;let Ir=le.pointLocation(Xe?Kt.sub(Xe):Kt);Tt&&(le.bearing+=Tt),Yt&&(le.pitch+=Yt),ot&&(le.zoom+=ot),qe?this._terrainMovement||!B.drag&&!B.zoom?B.drag&&this._terrainMovement?le.center=le.pointLocation(le.centerPoint.sub(Xe)):le.setLocationAtPoint(Ir,Kt):(this._terrainMovement=!0,this._map._elevationFreeze=!0,le.setLocationAtPoint(Ir,Kt)):le.setLocationAtPoint(Ir,Kt),ee._applyUpdatedTransform(le),this._map._update(),w.noInertia||this._inertia.record(w),this._fireEvents(B,Q,!0)}_fireEvents(w,B,Q){let ee=on(this._eventsInProgress),le=on(w),qe={};for(let Kt in w){let{originalEvent:xr}=w[Kt];this._eventsInProgress[Kt]||(qe[`${Kt}start`]=xr),this._eventsInProgress[Kt]=w[Kt]}!ee&&le&&this._fireEvent("movestart",le.originalEvent);for(let Kt in qe)this._fireEvent(Kt,qe[Kt]);le&&this._fireEvent("move",le.originalEvent);for(let Kt in w){let{originalEvent:xr}=w[Kt];this._fireEvent(Kt,xr)}let Xe={},ot;for(let Kt in this._eventsInProgress){let{handlerName:xr,originalEvent:Ir}=this._eventsInProgress[Kt];this._handlersById[xr].isActive()||(delete this._eventsInProgress[Kt],ot=B[xr]||Ir,Xe[`${Kt}end`]=ot)}for(let Kt in Xe)this._fireEvent(Kt,Xe[Kt]);let Tt=on(this._eventsInProgress),Yt=(ee||le)&&!Tt;if(Yt&&this._terrainMovement){this._map._elevationFreeze=!1,this._terrainMovement=!1;let Kt=this._map._getTransformForUpdate();Kt.recalculateZoom(this._map.terrain),this._map._applyUpdatedTransform(Kt)}if(Q&&Yt){this._updatingCamera=!0;let Kt=this._inertia._onMoveEnd(this._map.dragPan._inertiaOptions),xr=Ir=>Ir!==0&&-this._bearingSnap<Ir&&Ir<this._bearingSnap;!Kt||!Kt.essential&&u.prefersReducedMotion?(this._map.fire(new a.k("moveend",{originalEvent:ot})),xr(this._map.getBearing())&&this._map.resetNorth()):(xr(Kt.bearing||this._map.getBearing())&&(Kt.bearing=0),Kt.freezeElevation=!0,this._map.easeTo(Kt,{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 Fi("renderFrame",{timeStamp:w})),this._applyChanges()})}_triggerRenderFrame(){this._frameId===void 0&&(this._frameId=this._requestFrame())}}class Ra extends a.E{constructor(w,B){super(),this._renderFrameCallback=()=>{let Q=Math.min((u.now()-this._easeStart)/this._easeOptions.duration,1);this._onEaseFrame(this._easeOptions.easing(Q)),Q<1&&this._easeFrameId?this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback):this.stop()},this._moving=!1,this._zooming=!1,this.transform=w,this._bearingSnap=B.bearingSnap,this.on("moveend",()=>{delete this._requestedCameraState})}getCenter(){return new a.N(this.transform.center.lng,this.transform.center.lat)}setCenter(w,B){return this.jumpTo({center:w},B)}panBy(w,B,Q){return w=a.P.convert(w).mult(-1),this.panTo(this.transform.center,a.e({offset:w},B),Q)}panTo(w,B,Q){return this.easeTo(a.e({center:w},B),Q)}getZoom(){return this.transform.zoom}setZoom(w,B){return this.jumpTo({zoom:w},B),this}zoomTo(w,B,Q){return this.easeTo(a.e({zoom:w},B),Q)}zoomIn(w,B){return this.zoomTo(this.getZoom()+1,w,B),this}zoomOut(w,B){return this.zoomTo(this.getZoom()-1,w,B),this}getBearing(){return this.transform.bearing}setBearing(w,B){return this.jumpTo({bearing:w},B),this}getPadding(){return this.transform.padding}setPadding(w,B){return this.jumpTo({padding:w},B),this}rotateTo(w,B,Q){return this.easeTo(a.e({bearing:w},B),Q)}resetNorth(w,B){return this.rotateTo(0,a.e({duration:1e3},w),B),this}resetNorthPitch(w,B){return this.easeTo(a.e({bearing:0,pitch:0,duration:1e3},w),B),this}snapToNorth(w,B){return Math.abs(this.getBearing())<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 Wr=ee.padding;ee.padding={top:Wr,bottom:Wr,right:Wr,left:Wr}}ee.padding=a.e(le,ee.padding);let qe=this.transform,Xe=qe.padding,ot=new ce(w,B),Tt=qe.project(ot.getNorthWest()),Yt=qe.project(ot.getNorthEast()),Kt=qe.project(ot.getSouthEast()),xr=qe.project(ot.getSouthWest()),Ir=a.ba(-Q),ve=Tt.rotate(Ir),be=Yt.rotate(Ir),De=Kt.rotate(Ir),Be=xr.rotate(Ir),et=new a.P(Math.max(ve.x,be.x,Be.x,De.x),Math.max(ve.y,be.y,Be.y,De.y)),We=new a.P(Math.min(ve.x,be.x,Be.x,De.x),Math.min(ve.y,be.y,Be.y,De.y)),it=et.sub(We),Ft=(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||Ft<0)return void a.w("Map cannot fit within canvas with the given bounds, padding, and/or offset.");let tr=Math.min(qe.scaleZoom(qe.scale*Math.min(Ft,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(tr));return{center:qe.unproject(Tt.add(Kt).div(2).sub(Or)),zoom:tr,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,Yt=Math.hypot(Xe,ot,Tt);if(Yt===0)throw new Error("Can't calculate camera options with same From and To");let Kt=Math.hypot(Xe,ot),xr=this.transform.scaleZoom(this.transform.cameraToCenterDistance/Yt/this.transform.tileSize),Ir=180*Math.atan2(Xe,-ot)/Math.PI,ve=180*Math.acos(Kt/Yt)/Math.PI;return ve=Tt<0?90-ve:90+ve,{center:qe.toLngLat(),zoom:xr,pitch:ve,bearing:Ir}}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,Yt="pitch"in w?+w.pitch:Xe,Kt="padding"in w?w.padding:ee.padding,xr=a.P.convert(w.offset),Ir=ee.centerPoint.add(xr),ve=ee.pointLocation(Ir),{center:be,zoom:De}=ee.getConstrained(a.N.convert(w.center||ve),(Q=w.zoom)!==null&&Q!==void 0?Q:le);this._normalizeCenter(be,ee);let Be=ee.project(ve),et=ee.project(be).sub(Be),We=ee.zoomScale(De-le),it,Ft;w.around&&(it=a.N.convert(w.around),Ft=ee.locationPoint(it));let Ht={moving:this._moving,zooming:this._zooming,rotating:this._rotating,pitching:this._pitching};return this._zooming=this._zooming||De!==le,this._rotating=this._rotating||qe!==Tt,this._pitching=this._pitching||Yt!==Xe,this._padding=!ee.isPaddingEqual(Kt),this._easeId=w.easeId,this._prepareEase(B,w.noMoveStart,Ht),this.terrain&&this._prepareElevation(be),this._ease(tr=>{if(this._zooming&&(ee.zoom=a.y.number(le,De,tr)),this._rotating&&(ee.bearing=a.y.number(qe,Tt,tr)),this._pitching&&(ee.pitch=a.y.number(Xe,Yt,tr)),this._padding&&(ee.interpolatePadding(ot,Kt,tr),Ir=ee.centerPoint.add(xr)),this.terrain&&!w.freezeElevation&&this._updateElevation(tr),it)ee.setLocationAtPoint(it,Ft);else{let dr=ee.zoomScale(ee.zoom-le),Sr=De>le?Math.min(2,We):Math.max(.5,We),Or=Math.pow(Sr,1-tr),Wr=ee.unproject(Be.add(et.mult(tr*Or)).mult(dr));ee.setLocationAtPoint(ee.renderWorldCopies?Wr.wrap():Wr,Ir)}this._applyUpdatedTransform(ee),this._fireMoveEvents(B)},tr=>{this.terrain&&w.freezeElevation&&this._finalizeElevation(),this._afterEase(B,tr)},w),this}_prepareEase(w,B,Q={}){this._moving=!0,B||Q.moving||this.fire(new a.k("movestart",w)),this._zooming&&!Q.zooming&&this.fire(new a.k("zoomstart",w)),this._rotating&&!Q.rotating&&this.fire(new a.k("rotatestart",w)),this._pitching&&!Q.pitching&&this.fire(new a.k("pitchstart",w))}_prepareElevation(w){this._elevationCenter=w,this._elevationStart=this.transform.elevation,this._elevationTarget=this.terrain.getElevationForLngLatZoom(w,this.transform.tileZoom),this._elevationFreeze=!0}_updateElevation(w){this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this._elevationCenter,this.transform.tileZoom);let B=this.terrain.getElevationForLngLatZoom(this._elevationCenter,this.transform.tileZoom);if(w<1&&B!==this._elevationTarget){let Q=this._elevationTarget-this._elevationStart;this._elevationStart+=w*(Q-(B-(Q*w+this._elevationStart))/(1-w)),this._elevationTarget=B}this.transform.elevation=a.y.number(this._elevationStart,this._elevationTarget,w)}_finalizeElevation(){this._elevationFreeze=!1,this.transform.recalculateZoom(this.terrain)}_getTransformForUpdate(){return this.transformCameraUpdate||this.terrain?(this._requestedCameraState||(this._requestedCameraState=this.transform.clone()),this._requestedCameraState):this.transform}_elevateCameraIfInsideTerrain(w){let B=w.getCameraPosition(),Q=this.terrain.getElevationForLngLatZoom(B.lngLat,w.zoom);if(B.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:Yt}=ee(le);qe&&(le.center=qe),Xe!==void 0&&(le.zoom=Xe),ot!==void 0&&(le.pitch=ot),Tt!==void 0&&(le.bearing=Tt),Yt!==void 0&&(le.elevation=Yt),Q.apply(le)}this.transform.apply(Q)}_fireMoveEvents(w){this.fire(new a.k("move",w)),this._zooming&&this.fire(new a.k("zoom",w)),this._rotating&&this.fire(new a.k("rotate",w)),this._pitching&&this.fire(new a.k("pitch",w))}_afterEase(w,B){if(this._easeId&&B&&this._easeId===B)return;delete this._easeId;let Q=this._zooming,ee=this._rotating,le=this._pitching;this._moving=!1,this._zooming=!1,this._rotating=!1,this._pitching=!1,this._padding=!1,Q&&this.fire(new a.k("zoomend",w)),ee&&this.fire(new a.k("rotateend",w)),le&&this.fire(new a.k("pitchend",w)),this.fire(new a.k("moveend",w))}flyTo(w,B){var Q;if(!w.essential&&u.prefersReducedMotion){let Cn=a.M(w,["center","zoom","bearing","pitch","around"]);return this.jumpTo(Cn,B)}this.stop(),w=a.e({offset:[0,0],speed:1.2,curve:1.42,easing:a.b9},w);let ee=this._getTransformForUpdate(),le=ee.zoom,qe=ee.bearing,Xe=ee.pitch,ot=ee.padding,Tt="bearing"in w?this._normalizeBearing(w.bearing,qe):qe,Yt="pitch"in w?+w.pitch:Xe,Kt="padding"in w?w.padding:ee.padding,xr=a.P.convert(w.offset),Ir=ee.centerPoint.add(xr),ve=ee.pointLocation(Ir),{center:be,zoom:De}=ee.getConstrained(a.N.convert(w.center||ve),(Q=w.zoom)!==null&&Q!==void 0?Q:le);this._normalizeCenter(be,ee);let Be=ee.zoomScale(De-le),et=ee.project(ve),We=ee.project(be).sub(et),it=w.curve,Ft=Math.max(ee.width,ee.height),Ht=Ft/Be,tr=We.mag();if("minZoom"in w){let Cn=a.ac(Math.min(w.minZoom,le,De),ee.minZoom,ee.maxZoom),Kn=Ft/ee.zoomScale(Cn-le);it=Math.sqrt(Kn/tr*2)}let dr=it*it;function Sr(Cn){let Kn=(Ht*Ht-Ft*Ft+(Cn?-1:1)*dr*dr*tr*tr)/(2*(Cn?Ht:Ft)*dr*tr);return Math.log(Math.sqrt(Kn*Kn+1)-Kn)}function Or(Cn){return(Math.exp(Cn)-Math.exp(-Cn))/2}function Wr(Cn){return(Math.exp(Cn)+Math.exp(-Cn))/2}let ni=Sr(!1),Pi=function(Cn){return Wr(ni)/Wr(ni+it*Cn)},cn=function(Cn){return Ft*((Wr(ni)*(Or(Kn=ni+it*Cn)/Wr(Kn))-Or(ni))/dr)/tr;var Kn},ln=(Sr(!0)-ni)/it;if(Math.abs(tr)<1e-6||!isFinite(ln)){if(Math.abs(Ft-Ht)<1e-6)return this.easeTo(w,B);let Cn=Ht<Ft?-1:1;ln=Math.abs(Math.log(Ht/Ft))/it,cn=()=>0,Pi=Kn=>Math.exp(Cn*it*Kn)}return w.duration="duration"in w?+w.duration:1e3*ln/("screenSpeed"in w?+w.screenSpeed/it:+w.speed),w.maxDuration&&w.duration>w.maxDuration&&(w.duration=0),this._zooming=!0,this._rotating=qe!==Tt,this._pitching=Yt!==Xe,this._padding=!ee.isPaddingEqual(Kt),this._prepareEase(B,!1),this.terrain&&this._prepareElevation(be),this._ease(Cn=>{let Kn=Cn*ln,Ta=1/Pi(Kn);ee.zoom=Cn===1?De:le+ee.scaleZoom(Ta),this._rotating&&(ee.bearing=a.y.number(qe,Tt,Cn)),this._pitching&&(ee.pitch=a.y.number(Xe,Yt,Cn)),this._padding&&(ee.interpolatePadding(ot,Kt,Cn),Ir=ee.centerPoint.add(xr)),this.terrain&&!w.freezeElevation&&this._updateElevation(Cn);let fa=Cn===1?be:ee.unproject(et.add(We.mult(cn(Kn))).mult(Ta));ee.setLocationAtPoint(ee.renderWorldCopies?fa.wrap():fa,Ir),this._applyUpdatedTransform(ee),this._fireMoveEvents(B)},()=>{this.terrain&&w.freezeElevation&&this._finalizeElevation(),this._afterEase(B)},w),this}isEasing(){return!!this._easeFrameId}stop(){return this._stop()}_stop(w,B){var Q;if(this._easeFrameId&&(this._cancelRenderFrame(this._easeFrameId),delete this._easeFrameId,delete this._onEaseFrame),this._onEaseEnd){let ee=this._onEaseEnd;delete this._onEaseEnd,ee.call(this,B)}return w||(Q=this.handlers)===null||Q===void 0||Q.stop(!1),this}_ease(w,B,Q){Q.animate===!1||Q.duration===0?(w(1),B()):(this._easeStart=u.now(),this._easeOptions=Q,this._onEaseFrame=w,this._onEaseEnd=B,this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback))}_normalizeBearing(w,B){w=a.b3(w,-180,180);let Q=Math.abs(w-B);return Math.abs(w-360-B)<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 Dn{constructor(){this._queue=[],this._id=0,this._cleared=!1,this._currentlyRunning=!1}add(w){let B=++this._id;return this._queue.push({callback:w,id:B,cancelled:!1}),B}remove(w){let B=this._currentlyRunning,Q=B?this._queue.concat(B):this._queue;for(let ee of Q)if(ee.id===w)return void(ee.cancelled=!0)}run(w=0){if(this._currentlyRunning)throw new Error("Attempting to run(), but is already running.");let B=this._currentlyRunning=this._queue;this._queue=[];for(let Q of B)if(!Q.cancelled&&(Q.callback(w),this._cleared))break;this._cleared=!1,this._currentlyRunning=!1}clear(){this._currentlyRunning&&(this._cleared=!0),this._queue=[]}}var Ka=a.Y([{name:"a_pos3d",type:"Int16",components:3}]);class bo extends a.E{constructor(w){super(),this.sourceCache=w,this._tiles={},this._renderableTilesKeys=[],this._sourceTileCache={},this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.deltaZoom=1,w.usedForTerrain=!0,w.tileSize=this.tileSize*2**this.deltaZoom}destruct(){this.sourceCache.usedForTerrain=!1,this.sourceCache.tileSize=null}update(w,B){this.sourceCache.update(w,B),this._renderableTilesKeys=[];let Q={};for(let ee of w.coveringTiles({tileSize:this.tileSize,minzoom:this.minzoom,maxzoom:this.maxzoom,reparseOverscaled:!1,terrain:B}))Q[ee.key]=!0,this._renderableTilesKeys.push(ee.key),this._tiles[ee.key]||(ee.posMatrix=new Float64Array(16),a.aP(ee.posMatrix,0,a.X,0,a.X,0,1),this._tiles[ee.key]=new Vt(ee,this.tileSize));for(let ee in this._tiles)Q[ee]||delete this._tiles[ee]}freeRtt(w){for(let B in this._tiles){let Q=this._tiles[B];(!w||Q.tileID.equals(w)||Q.tileID.isChildOf(w)||w.isChildOf(Q.tileID))&&(Q.rtt=[])}}getRenderableTiles(){return this._renderableTilesKeys.map(w=>this.getTileByID(w))}getTileByID(w){return this._tiles[w]}getTerrainCoords(w){let B={};for(let Q of this._renderableTilesKeys){let ee=this._tiles[Q].tileID;if(ee.canonical.equals(w.canonical)){let le=w.clone();le.posMatrix=new Float64Array(16),a.aP(le.posMatrix,0,a.X,0,a.X,0,1),B[Q]=le}else if(ee.canonical.isChildOf(w.canonical)){let le=w.clone();le.posMatrix=new Float64Array(16);let qe=ee.canonical.z-w.canonical.z,Xe=ee.canonical.x-(ee.canonical.x>>qe<<qe),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,De){var Be=be[0],et=be[1];return ve[0]=De[0]*Be+De[4]*et+De[12],ve[1]=De[1]*Be+De[5]*et+De[13],ve}([],[B/ee*a.X,Q/ee*a.X],qe.u_terrain_matrix),Tt=[ot[0]*Xe.dim,ot[1]*Xe.dim],Yt=Math.floor(Tt[0]),Kt=Math.floor(Tt[1]),xr=Tt[0]-Yt,Ir=Tt[1]-Kt;return Xe.get(Yt,Kt)*(1-xr)*(1-Ir)+Xe.get(Yt+1,Kt)*xr*(1-Ir)+Xe.get(Yt,Kt+1)*(1-xr)*Ir+Xe.get(Yt+1,Kt+1)*xr*Ir}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),Yt=this.coordsIndex[255-B[3]],Kt=Yt&&this.sourceCache.getTileByID(Yt);if(!Kt)return null;let xr=this._coordsTextureSize,Ir=(1<<Kt.tileID.canonical.z)*xr;return new a.Z((Kt.tileID.canonical.x*xr+ot)/Ir+Kt.tileID.wrap,(Kt.tileID.canonical.y*xr+Tt)/Ir,this.getElevation(Kt.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 Kt=0;Kt<=ee;Kt++)for(let xr=0;xr<=ee;xr++)B.emplaceBack(xr*le,Kt*le,0);for(let Kt=0;Kt<qe;Kt+=ee+1)for(let xr=0;xr<ee;xr++)Q.emplaceBack(xr+Kt,ee+xr+Kt+1,ee+xr+Kt+2),Q.emplaceBack(xr+Kt,ee+xr+Kt+2,xr+Kt+1);let Xe=B.length,ot=Xe+2*(ee+1);for(let Kt of[0,1])for(let xr=0;xr<=ee;xr++)for(let Ir of[0,1])B.emplaceBack(xr*le,Kt*a.X,Ir);for(let Kt=0;Kt<2*ee;Kt+=2)Q.emplaceBack(ot+Kt,ot+Kt+1,ot+Kt+3),Q.emplaceBack(ot+Kt,ot+Kt+3,ot+Kt+2),Q.emplaceBack(Xe+Kt,Xe+Kt+3,Xe+Kt+1),Q.emplaceBack(Xe+Kt,Xe+Kt+2,Xe+Kt+3);let Tt=B.length,Yt=Tt+2*(ee+1);for(let Kt of[0,1])for(let xr=0;xr<=ee;xr++)for(let Ir of[0,1])B.emplaceBack(Kt*a.X,xr*le,Ir);for(let Kt=0;Kt<2*ee;Kt+=2)Q.emplaceBack(Tt+Kt,Tt+Kt+1,Tt+Kt+3),Q.emplaceBack(Tt+Kt,Tt+Kt+3,Tt+Kt+2),Q.emplaceBack(Yt+Kt,Yt+Kt+3,Yt+Kt+1),Q.emplaceBack(Yt+Kt,Yt+Kt+2,Yt+Kt+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 Ss{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 as={background:!0,fill:!0,line:!0,raster:!0,hillshade:!0};class ws{constructor(w,B){this.painter=w,this.terrain=B,this.pool=new Ss(w.context,30,B.sourceCache.tileSize*B.qualityFactor)}destruct(){this.pool.destruct()}getTexture(w){return this.pool.getObjectForId(w.rtt[this._stacks.length-1].id).texture}prepareForRender(w,B){this._stacks=[],this._prevType=null,this._rttTiles=[],this._renderableTiles=this.terrain.sourceCache.getRenderableTiles(),this._renderableLayerIds=w._order.filter(Q=>!w._layers[Q].isHidden(B)),this._coordsDescendingInv={};for(let Q in w.sourceCaches){this._coordsDescendingInv[Q]={};let ee=w.sourceCaches[Q].getVisibleCoordinates();for(let le of ee){let qe=this.terrain.sourceCache.getTerrainCoords(le);for(let Xe in qe)this._coordsDescendingInv[Q][Xe]||(this._coordsDescendingInv[Q][Xe]=[]),this._coordsDescendingInv[Q][Xe].push(qe[Xe])}}this._coordsDescendingInvStr={};for(let Q of w._order){let ee=w._layers[Q],le=ee.source;if(as[ee.type]&&!this._coordsDescendingInvStr[le]){this._coordsDescendingInvStr[le]={};for(let qe in this._coordsDescendingInv[le])this._coordsDescendingInvStr[le][qe]=this._coordsDescendingInv[le][qe].map(Xe=>Xe.key).sort().join()}}for(let Q of this._renderableTiles)for(let ee in this._coordsDescendingInvStr){let le=this._coordsDescendingInvStr[ee][Q.tileID.key];le&&le!==Q.rttCoords[ee]&&(Q.rtt=[])}}renderLayer(w){if(w.isHidden(this.painter.transform.zoom))return!1;let B=w.type,Q=this.painter,ee=this._renderableLayerIds[this._renderableLayerIds.length-1]===w.id;if(as[B]&&(this._prevType&&as[this._prevType]||this._stacks.push([]),this._prevType=B,this._stacks[this._stacks.length-1].push(w.id),!ee))return!0;if(as[this._prevType]||as[B]&&ee){this._prevType=B;let le=this._stacks.length-1,qe=this._stacks[le]||[];for(let Xe of this._renderableTiles){if(this.pool.isFull()&&(js(this.painter,this.terrain,this._rttTiles),this._rttTiles=[],this.pool.freeAllObjects()),this._rttTiles.push(Xe),Xe.rtt[le]){let Tt=this.pool.getObjectForId(Xe.rtt[le].id);if(Tt.stamp===Xe.rtt[le].stamp){this.pool.useObject(Tt);continue}}let ot=this.pool.getOrCreateFreeObject();this.pool.useObject(ot),this.pool.stampObject(ot),Xe.rtt[le]={id:ot.id,stamp:ot.stamp},Q.context.bindFramebuffer.set(ot.fbo.framebuffer),Q.context.clear({color:a.aM.transparent,stencil:0}),Q.currentStencilSource=void 0;for(let Tt=0;Tt<qe.length;Tt++){let Yt=Q.style._layers[qe[Tt]],Kt=Yt.source?this._coordsDescendingInv[Yt.source][Xe.tileID.key]:[Xe.tileID];Q.context.viewport.set([0,0,ot.fbo.width,ot.fbo.height]),Q._renderTileClippingMasks(Yt,Kt),Q.renderLayer(Q,Q.style.sourceCaches[Yt.source],Yt,Kt),Yt.source&&(Xe.rttCoords[Yt.source]=this._coordsDescendingInvStr[Yt.source][Xe.tileID.key])}}return js(this.painter,this.terrain,this._rttTiles),this._rttTiles=[],this.pool.freeAllObjects(),as[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"},ml=o,Ws={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},Ls=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:(Yt,Kt)=>({bearingDelta:(Kt.x-Yt.x)*ot}),moveStateManager:Tt,enable:qe,assignEvents:Ls})})({clickTolerance:ee,enable:!0}),this.map=w,Q&&(this.mousePitch=ah({clickTolerance:le,enable:!0}),this.touchPitch=(({enable:qe,clickTolerance:Xe,pitchDegreesPerPixelMoved:ot=-.5})=>{let Tt=new uf;return new Wu({clickTolerance:Xe,move:(Yt,Kt)=>({pitchDelta:(Kt.y-Yt.y)*ot}),moveStateManager:Tt,enable:qe,assignEvents:Ls})})({clickTolerance:le,enable:!0})),c.addEventListener(B,"mousedown",this.mousedown),c.addEventListener(B,"touchstart",this.touchstart,{passive:!1}),c.addEventListener(B,"touchcancel",this.reset)}startMouse(w,B){this.mouseRotate.dragStart(w,B),this.mousePitch&&this.mousePitch.dragStart(w,B),c.disableDrag()}startTouch(w,B){this.touchRotate.dragStart(w,B),this.touchPitch&&this.touchPitch.dragStart(w,B),c.disableDrag()}moveMouse(w,B){let Q=this.map,{bearingDelta:ee}=this.mouseRotate.dragMove(w,B)||{};if(ee&&Q.setBearing(Q.getBearing()+ee),this.mousePitch){let{pitchDelta:le}=this.mousePitch.dragMove(w,B)||{};le&&Q.setPitch(Q.getPitch()+le)}}moveTouch(w,B){let Q=this.map,{bearingDelta:ee}=this.touchRotate.dragMove(w,B)||{};if(ee&&Q.setBearing(Q.getBearing()+ee),this.touchPitch){let{pitchDelta:le}=this.touchPitch.dragMove(w,B)||{};le&&Q.setPitch(Q.getPitch()+le)}}off(){let w=this.element;c.removeEventListener(w,"mousedown",this.mousedown),c.removeEventListener(w,"touchstart",this.touchstart,{passive:!1}),c.removeEventListener(window,"touchmove",this.touchmove,{passive:!1}),c.removeEventListener(window,"touchend",this.touchend),c.removeEventListener(w,"touchcancel",this.reset),this.offTemp()}offTemp(){c.enableDrag(),c.removeEventListener(window,"mousemove",this.mousemove),c.removeEventListener(window,"mouseup",this.mouseup),c.removeEventListener(window,"touchmove",this.touchmove,{passive:!1}),c.removeEventListener(window,"touchend",this.touchend)}}let ys;function rs(ue,w,B){let Q=new a.N(ue.lng,ue.lat);if(ue=new a.N(ue.lng,ue.lat),w){let ee=new a.N(ue.lng-360,ue.lat),le=new a.N(ue.lng+360,ue.lat),qe=B.locationPoint(ue).distSqr(w);B.locationPoint(ee).distSqr(w)<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 Cu(ue,w,B){let Q=ue.classList;for(let ee in $l)Q.remove(`maplibregl-${B}-anchor-${ee}`);Q.add(`maplibregl-${B}-anchor-${w}`)}class Yu extends a.E{constructor(w){if(super(),this._onKeyPress=B=>{let Q=B.code,ee=B.charCode||B.keyCode;Q!=="Space"&&Q!=="Enter"&&ee!==32&&ee!==13||this.togglePopup()},this._onMapClick=B=>{let Q=B.originalEvent.target,ee=this._element;this._popup&&(Q===ee||ee.contains(Q))&&this.togglePopup()},this._update=B=>{var Q;if(!this._map)return;let ee=this._map.loaded()&&!this._map.isMoving();((B==null?void 0:B.type)==="terrain"||(B==null?void 0:B.type)==="render"&&!ee)&&this._map.once("render",this._update),this._lngLat=this._map.transform.renderWorldCopies?rs(this._lngLat,this._flatPos,this._map.transform):(Q=this._lngLat)===null||Q===void 0?void 0:Q.wrap(),this._flatPos=this._pos=this._map.project(this._lngLat)._add(this._offset),this._map.terrain&&(this._flatPos=this._map.transform.locationPoint(this._lngLat)._add(this._offset));let le="";this._rotationAlignment==="viewport"||this._rotationAlignment==="auto"?le=`rotateZ(${this._rotation}deg)`:this._rotationAlignment==="map"&&(le=`rotateZ(${this._rotation-this._map.getBearing()}deg)`);let qe="";this._pitchAlignment==="viewport"||this._pitchAlignment==="auto"?qe="rotateX(0deg)":this._pitchAlignment==="map"&&(qe=`rotateX(${this._map.getPitch()}deg)`),this._subpixelPositioning||B&&B.type!=="moveend"||(this._pos=this._pos.round()),c.setTransform(this._element,`${$l[this._anchor]} translate(${this._pos.x}px, ${this._pos.y}px) ${qe} ${le}`),u.frameAsync(new AbortController).then(()=>{this._updateOpacity(B&&B.type==="moveend")}).catch(()=>{})},this._onMove=B=>{if(!this._isDragging){let Q=this._clickTolerance||this._map._clickTolerance;this._isDragging=B.point.dist(this._pointerdownPos)>=Q}this._isDragging&&(this._pos=B.point.sub(this._positionDelta),this._lngLat=this._map.unproject(this._pos),this.setLngLat(this._lngLat),this._element.style.pointerEvents="none",this._state==="pending"&&(this._state="active",this.fire(new a.k("dragstart"))),this.fire(new a.k("drag")))},this._onUp=()=>{this._element.style.pointerEvents="auto",this._positionDelta=null,this._pointerdownPos=null,this._isDragging=!1,this._map.off("mousemove",this._onMove),this._map.off("touchmove",this._onMove),this._state==="active"&&this.fire(new a.k("dragend")),this._state="inactive"},this._addDragHandler=B=>{this._element.contains(B.originalEvent.target)&&(B.preventDefault(),this._positionDelta=B.point.sub(this._pos).add(this._offset),this._pointerdownPos=B.point,this._state="pending",this._map.on("mousemove",this._onMove),this._map.on("touchmove",this._onMove),this._map.once("mouseup",this._onUp),this._map.once("touchend",this._onUp))},this._anchor=w&&w.anchor||"center",this._color=w&&w.color||"#3FB1CE",this._scale=w&&w.scale||1,this._draggable=w&&w.draggable||!1,this._clickTolerance=w&&w.clickTolerance||0,this._subpixelPositioning=w&&w.subpixelPositioning||!1,this._isDragging=!1,this._state="inactive",this._rotation=w&&w.rotation||0,this._rotationAlignment=w&&w.rotationAlignment||"auto",this._pitchAlignment=w&&w.pitchAlignment&&w.pitchAlignment!=="auto"?w.pitchAlignment:this._rotationAlignment,this.setOpacity(),this.setOpacity(w==null?void 0:w.opacity,w==null?void 0:w.opacityWhenCovered),w&&w.element)this._element=w.element,this._offset=a.P.convert(w&&w.offset||[0,0]);else{this._defaultMarker=!0,this._element=c.create("div");let B=c.createNS("http://www.w3.org/2000/svg","svg"),Q=41,ee=27;B.setAttributeNS(null,"display","block"),B.setAttributeNS(null,"height",`${Q}px`),B.setAttributeNS(null,"width",`${ee}px`),B.setAttributeNS(null,"viewBox",`0 0 ${ee} ${Q}`);let le=c.createNS("http://www.w3.org/2000/svg","g");le.setAttributeNS(null,"stroke","none"),le.setAttributeNS(null,"stroke-width","1"),le.setAttributeNS(null,"fill","none"),le.setAttributeNS(null,"fill-rule","evenodd");let qe=c.createNS("http://www.w3.org/2000/svg","g");qe.setAttributeNS(null,"fill-rule","nonzero");let Xe=c.createNS("http://www.w3.org/2000/svg","g");Xe.setAttributeNS(null,"transform","translate(3.0, 29.0)"),Xe.setAttributeNS(null,"fill","#000000");let ot=[{rx:"10.5",ry:"5.25002273"},{rx:"10.5",ry:"5.25002273"},{rx:"9.5",ry:"4.77275007"},{rx:"8.5",ry:"4.29549936"},{rx:"7.5",ry:"3.81822308"},{rx:"6.5",ry:"3.34094679"},{rx:"5.5",ry:"2.86367051"},{rx:"4.5",ry:"2.38636864"}];for(let Be of ot){let et=c.createNS("http://www.w3.org/2000/svg","ellipse");et.setAttributeNS(null,"opacity","0.04"),et.setAttributeNS(null,"cx","10.5"),et.setAttributeNS(null,"cy","5.80029008"),et.setAttributeNS(null,"rx",Be.rx),et.setAttributeNS(null,"ry",Be.ry),Xe.appendChild(et)}let Tt=c.createNS("http://www.w3.org/2000/svg","g");Tt.setAttributeNS(null,"fill",this._color);let Yt=c.createNS("http://www.w3.org/2000/svg","path");Yt.setAttributeNS(null,"d","M27,13.5 C27,19.074644 20.250001,27.000002 14.75,34.500002 C14.016665,35.500004 12.983335,35.500004 12.25,34.500002 C6.7499993,27.000002 0,19.222562 0,13.5 C0,6.0441559 6.0441559,0 13.5,0 C20.955844,0 27,6.0441559 27,13.5 Z"),Tt.appendChild(Yt);let Kt=c.createNS("http://www.w3.org/2000/svg","g");Kt.setAttributeNS(null,"opacity","0.25"),Kt.setAttributeNS(null,"fill","#000000");let xr=c.createNS("http://www.w3.org/2000/svg","path");xr.setAttributeNS(null,"d","M13.5,0 C6.0441559,0 0,6.0441559 0,13.5 C0,19.222562 6.7499993,27 12.25,34.5 C13,35.522727 14.016664,35.500004 14.75,34.5 C20.250001,27 27,19.074644 27,13.5 C27,6.0441559 20.955844,0 13.5,0 Z M13.5,1 C20.415404,1 26,6.584596 26,13.5 C26,15.898657 24.495584,19.181431 22.220703,22.738281 C19.945823,26.295132 16.705119,30.142167 13.943359,33.908203 C13.743445,34.180814 13.612715,34.322738 13.5,34.441406 C13.387285,34.322738 13.256555,34.180814 13.056641,33.908203 C10.284481,30.127985 7.4148684,26.314159 5.015625,22.773438 C2.6163816,19.232715 1,15.953538 1,13.5 C1,6.584596 6.584596,1 13.5,1 Z"),Kt.appendChild(xr);let Ir=c.createNS("http://www.w3.org/2000/svg","g");Ir.setAttributeNS(null,"transform","translate(6.0, 7.0)"),Ir.setAttributeNS(null,"fill","#FFFFFF");let ve=c.createNS("http://www.w3.org/2000/svg","g");ve.setAttributeNS(null,"transform","translate(8.0, 8.0)");let be=c.createNS("http://www.w3.org/2000/svg","circle");be.setAttributeNS(null,"fill","#000000"),be.setAttributeNS(null,"opacity","0.25"),be.setAttributeNS(null,"cx","5.5"),be.setAttributeNS(null,"cy","5.5"),be.setAttributeNS(null,"r","5.4999962");let De=c.createNS("http://www.w3.org/2000/svg","circle");De.setAttributeNS(null,"fill","#FFFFFF"),De.setAttributeNS(null,"cx","5.5"),De.setAttributeNS(null,"cy","5.5"),De.setAttributeNS(null,"r","5.4999962"),ve.appendChild(be),ve.appendChild(De),qe.appendChild(Xe),qe.appendChild(Tt),qe.appendChild(Kt),qe.appendChild(Ir),qe.appendChild(ve),B.appendChild(qe),B.setAttributeNS(null,"height",Q*this._scale+"px"),B.setAttributeNS(null,"width",ee*this._scale+"px"),this._element.appendChild(B),this._offset=a.P.convert(w&&w.offset||[0,-14])}if(this._element.classList.add("maplibregl-marker"),this._element.addEventListener("dragstart",B=>{B.preventDefault()}),this._element.addEventListener("mousedown",B=>{B.preventDefault()}),Cu(this._element,this._anchor,"marker"),w&&w.className)for(let B of w.className.split(" "))this._element.classList.add(B);this._popup=null}addTo(w){return this.remove(),this._map=w,this._element.setAttribute("aria-label",w._getUIString("Marker.Title")),w.getCanvasContainer().appendChild(this._element),w.on("move",this._update),w.on("moveend",this._update),w.on("terrain",this._update),this.setDraggable(this._draggable),this._update(),this._map.on("click",this._onMapClick),this}remove(){return this._opacityTimeout&&(clearTimeout(this._opacityTimeout),delete this._opacityTimeout),this._map&&(this._map.off("click",this._onMapClick),this._map.off("move",this._update),this._map.off("moveend",this._update),this._map.off("terrain",this._update),this._map.off("mousedown",this._addDragHandler),this._map.off("touchstart",this._addDragHandler),this._map.off("mouseup",this._onUp),this._map.off("touchend",this._onUp),this._map.off("mousemove",this._onMove),this._map.off("touchmove",this._onMove),delete this._map),c.remove(this._element),this._popup&&this._popup.remove(),this}getLngLat(){return this._lngLat}setLngLat(w){return this._lngLat=a.N.convert(w),this._pos=null,this._popup&&this._popup.setLngLat(this._lngLat),this._update(),this}getElement(){return this._element}setPopup(w){if(this._popup&&(this._popup.remove(),this._popup=null,this._element.removeEventListener("keypress",this._onKeyPress),this._originalTabIndex||this._element.removeAttribute("tabindex")),w){if(!("offset"in w.options)){let ee=Math.abs(13.5)/Math.SQRT2;w.options.offset=this._defaultMarker?{top:[0,0],"top-left":[0,0],"top-right":[0,0],bottom:[0,-38.1],"bottom-left":[ee,-1*(38.1-13.5+ee)],"bottom-right":[-ee,-1*(38.1-13.5+ee)],left:[13.5,-1*(38.1-13.5)],right:[-13.5,-1*(38.1-13.5)]}:this._offset}this._popup=w,this._originalTabIndex=this._element.getAttribute("tabindex"),this._originalTabIndex||this._element.setAttribute("tabindex","0"),this._element.addEventListener("keypress",this._onKeyPress)}return this}setSubpixelPositioning(w){return this._subpixelPositioning=w,this}getPopup(){return this._popup}togglePopup(){let w=this._popup;return this._element.style.opacity===this._opacityWhenCovered?this:w?(w.isOpen()?w.remove():(w.setLngLat(this._lngLat),w.addTo(this._map)),this):this}_updateOpacity(w=!1){var B,Q;if(!(!((B=this._map)===null||B===void 0)&&B.terrain))return void(this._element.style.opacity!==this._opacity&&(this._element.style.opacity=this._opacity));if(w)this._opacityTimeout=null;else{if(this._opacityTimeout)return;this._opacityTimeout=setTimeout(()=>{this._opacityTimeout=null},100)}let ee=this._map,le=ee.terrain.depthAtPoint(this._pos),qe=ee.terrain.getElevationForLngLatZoom(this._lngLat,ee.transform.tileZoom);if(ee.transform.lngLatToCameraDepth(this._lngLat,qe)-le<.006)return void(this._element.style.opacity=this._opacity);let Xe=-this._offset.y/ee.transform._pixelPerMeter,ot=Math.sin(ee.getPitch()*Math.PI/180)*Xe,Tt=ee.terrain.depthAtPoint(new a.P(this._pos.x,this._pos.y-this._offset.y)),Yt=ee.transform.lngLatToCameraDepth(this._lngLat,qe+ot)-Tt>.006;!((Q=this._popup)===null||Q===void 0)&&Q.isOpen()&&Yt&&this._popup.remove(),this._element.style.opacity=Yt?this._opacityWhenCovered:this._opacity}getOffset(){return this._offset}setOffset(w){return this._offset=a.P.convert(w),this._update(),this}addClassName(w){this._element.classList.add(w)}removeClassName(w){this._element.classList.remove(w)}toggleClassName(w){return this._element.classList.toggle(w)}setDraggable(w){return this._draggable=!!w,this._map&&(w?(this._map.on("mousedown",this._addDragHandler),this._map.on("touchstart",this._addDragHandler)):(this._map.off("mousedown",this._addDragHandler),this._map.off("touchstart",this._addDragHandler))),this}isDraggable(){return this._draggable}setRotation(w){return this._rotation=w||0,this._update(),this}getRotation(){return this._rotation}setRotationAlignment(w){return this._rotationAlignment=w||"auto",this._update(),this}getRotationAlignment(){return this._rotationAlignment}setPitchAlignment(w){return this._pitchAlignment=w&&w!=="auto"?w:this._rotationAlignment,this._update(),this}getPitchAlignment(){return this._pitchAlignment}setOpacity(w,B){return w===void 0&&B===void 0&&(this._opacity="1",this._opacityWhenCovered="0.2"),w!==void 0&&(this._opacity=w),B!==void 0&&(this._opacityWhenCovered=B),this._map&&this._updateOpacity(!0),this}}let Nc={positionOptions:{enableHighAccuracy:!1,maximumAge:0,timeout:6e3},fitBoundsOptions:{maxZoom:15},trackUserLocation:!1,showAccuracyCircle:!0,showUserLocation:!0},pu=0,Uc=!1,xu={maxWidth:100,unit:"metric"};function Ac(ue,w,B){let Q=B&&B.maxWidth||100,ee=ue._container.clientHeight/2,le=ue.unproject([0,ee]),qe=ue.unproject([Q,ee]),Xe=le.distanceTo(qe);if(B&&B.unit==="imperial"){let ot=3.2808*Xe;ot>5280?Ua(w,Q,ot/5280,ue._getUIString("ScaleControl.Miles")):Ua(w,Q,ot,ue._getUIString("ScaleControl.Feet"))}else B&&B.unit==="nautical"?Ua(w,Q,Xe/1852,ue._getUIString("ScaleControl.NauticalMiles")):Xe>=1e3?Ua(w,Q,Xe/1e3,ue._getUIString("ScaleControl.Kilometers")):Ua(w,Q,Xe,ue._getUIString("ScaleControl.Meters"))}function Ua(ue,w,B,Q){let ee=function(le){let qe=Math.pow(10,`${Math.floor(le)}`.length-1),Xe=le/qe;return Xe=Xe>=10?10:Xe>=5?5:Xe>=3?3:Xe>=2?2:Xe>=1?1:function(ot){let Tt=Math.pow(10,Math.ceil(-Math.log(ot)/Math.LN10));return Math.round(ot*Tt)/Tt}(Xe),qe*Xe}(B);ue.style.width=w*(ee/B)+"px",ue.innerHTML=`${ee}&nbsp;${Q}`}let oo={closeButton:!0,closeOnClick:!0,focusAfterOpen:!0,className:"",maxWidth:"240px",subpixelPositioning:!1},Vc=["a[href]","[tabindex]:not([tabindex='-1'])","[contenteditable]:not([contenteditable='false'])","button:not([disabled])","input:not([disabled])","select:not([disabled])","textarea:not([disabled])"].join(", ");function hc(ue){if(ue){if(typeof ue=="number"){let w=Math.round(Math.abs(ue)/Math.SQRT2);return{center:new a.P(0,0),top:new a.P(0,ue),"top-left":new a.P(w,w),"top-right":new a.P(-w,w),bottom:new a.P(0,-ue),"bottom-left":new a.P(w,-w),"bottom-right":new a.P(-w,-w),left:new a.P(ue,0),right:new a.P(-ue,0)}}if(ue instanceof a.P||Array.isArray(ue)){let w=a.P.convert(ue);return{center:w,top:w,"top-left":w,"top-right":w,bottom:w,"bottom-left":w,"bottom-right":w,left:w,right:w}}return{center:a.P.convert(ue.center||[0,0]),top:a.P.convert(ue.top||[0,0]),"top-left":a.P.convert(ue["top-left"]||[0,0]),"top-right":a.P.convert(ue["top-right"]||[0,0]),bottom:a.P.convert(ue.bottom||[0,0]),"bottom-left":a.P.convert(ue["bottom-left"]||[0,0]),"bottom-right":a.P.convert(ue["bottom-right"]||[0,0]),left:a.P.convert(ue.left||[0,0]),right:a.P.convert(ue.right||[0,0])}}return hc(new a.P(0,0))}let Ku=o;i.AJAXError=a.bh,i.Evented=a.E,i.LngLat=a.N,i.MercatorCoordinate=a.Z,i.Point=a.P,i.addProtocol=a.bi,i.config=a.a,i.removeProtocol=a.bj,i.AttributionControl=Na,i.BoxZoomHandler=ku,i.CanvasSource=Jt,i.CooperativeGesturesHandler=Qi,i.DoubleClickZoomHandler=ki,i.DragPanHandler=wn,i.DragRotateHandler=Nn,i.EdgeInsets=hu,i.FullscreenControl=class extends a.E{constructor(ue={}){super(),this._onFullscreenChange=()=>{var w;let B=window.document.fullscreenElement||window.document.mozFullScreenElement||window.document.webkitFullscreenElement||window.document.msFullscreenElement;for(;!((w=B==null?void 0:B.shadowRoot)===null||w===void 0)&&w.fullscreenElement;)B=B.shadowRoot.fullscreenElement;B===this._container!==this._fullscreen&&this._handleFullscreenChange()},this._onClickFullscreen=()=>{this._isFullscreen()?this._exitFullscreen():this._requestFullscreen()},this._fullscreen=!1,ue&&ue.container&&(ue.container instanceof HTMLElement?this._container=ue.container:a.w("Full screen control 'container' must be a DOM element.")),"onfullscreenchange"in document?this._fullscreenchange="fullscreenchange":"onmozfullscreenchange"in document?this._fullscreenchange="mozfullscreenchange":"onwebkitfullscreenchange"in document?this._fullscreenchange="webkitfullscreenchange":"onmsfullscreenchange"in document&&(this._fullscreenchange="MSFullscreenChange")}onAdd(ue){return this._map=ue,this._container||(this._container=this._map.getContainer()),this._controlContainer=c.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._setupUI(),this._controlContainer}onRemove(){c.remove(this._controlContainer),this._map=null,window.document.removeEventListener(this._fullscreenchange,this._onFullscreenChange)}_setupUI(){let ue=this._fullscreenButton=c.create("button","maplibregl-ctrl-fullscreen",this._controlContainer);c.create("span","maplibregl-ctrl-icon",ue).setAttribute("aria-hidden","true"),ue.type="button",this._updateTitle(),this._fullscreenButton.addEventListener("click",this._onClickFullscreen),window.document.addEventListener(this._fullscreenchange,this._onFullscreenChange)}_updateTitle(){let ue=this._getTitle();this._fullscreenButton.setAttribute("aria-label",ue),this._fullscreenButton.title=ue}_getTitle(){return this._map._getUIString(this._isFullscreen()?"FullscreenControl.Exit":"FullscreenControl.Enter")}_isFullscreen(){return this._fullscreen}_handleFullscreenChange(){this._fullscreen=!this._fullscreen,this._fullscreenButton.classList.toggle("maplibregl-ctrl-shrink"),this._fullscreenButton.classList.toggle("maplibregl-ctrl-fullscreen"),this._updateTitle(),this._fullscreen?(this.fire(new a.k("fullscreenstart")),this._prevCooperativeGesturesEnabled=this._map.cooperativeGestures.isEnabled(),this._map.cooperativeGestures.disable()):(this.fire(new a.k("fullscreenend")),this._prevCooperativeGesturesEnabled&&this._map.cooperativeGestures.enable())}_exitFullscreen(){window.document.exitFullscreen?window.document.exitFullscreen():window.document.mozCancelFullScreen?window.document.mozCancelFullScreen():window.document.msExitFullscreen?window.document.msExitFullscreen():window.document.webkitCancelFullScreen?window.document.webkitCancelFullScreen():this._togglePseudoFullScreen()}_requestFullscreen(){this._container.requestFullscreen?this._container.requestFullscreen():this._container.mozRequestFullScreen?this._container.mozRequestFullScreen():this._container.msRequestFullscreen?this._container.msRequestFullscreen():this._container.webkitRequestFullscreen?this._container.webkitRequestFullscreen():this._togglePseudoFullScreen()}_togglePseudoFullScreen(){this._container.classList.toggle("maplibregl-pseudo-fullscreen"),this._handleFullscreenChange(),this._map.resize()}},i.GeoJSONSource=st,i.GeolocateControl=class extends a.E{constructor(ue){super(),this._onSuccess=w=>{if(this._map){if(this._isOutOfMapMaxBounds(w))return this._setErrorState(),this.fire(new a.k("outofmaxbounds",w)),this._updateMarker(),void this._finish();if(this.options.trackUserLocation)switch(this._lastKnownPosition=w,this._watchState){case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active");break;case"BACKGROUND":case"BACKGROUND_ERROR":this._watchState="BACKGROUND",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-background");break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}this.options.showUserLocation&&this._watchState!=="OFF"&&this._updateMarker(w),this.options.trackUserLocation&&this._watchState!=="ACTIVE_LOCK"||this._updateCamera(w),this.options.showUserLocation&&this._dotElement.classList.remove("maplibregl-user-location-dot-stale"),this.fire(new a.k("geolocate",w)),this._finish()}},this._updateCamera=w=>{let B=new a.N(w.coords.longitude,w.coords.latitude),Q=w.coords.accuracy,ee=this._map.getBearing(),le=a.e({bearing:ee},this.options.fitBoundsOptions),qe=ce.fromLngLat(B,Q);this._map.fitBounds(qe,le,{geolocateSource:!0})},this._updateMarker=w=>{if(w){let B=new a.N(w.coords.longitude,w.coords.latitude);this._accuracyCircleMarker.setLngLat(B).addTo(this._map),this._userLocationDotMarker.setLngLat(B).addTo(this._map),this._accuracy=w.coords.accuracy,this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()}else this._userLocationDotMarker.remove(),this._accuracyCircleMarker.remove()},this._onZoom=()=>{this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()},this._onError=w=>{if(this._map){if(this.options.trackUserLocation)if(w.code===1){this._watchState="OFF",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background-error"),this._geolocateButton.disabled=!0;let B=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.title=B,this._geolocateButton.setAttribute("aria-label",B),this._geolocationWatchID!==void 0&&this._clearWatch()}else{if(w.code===3&&Uc)return;this._setErrorState()}this._watchState!=="OFF"&&this.options.showUserLocation&&this._dotElement.classList.add("maplibregl-user-location-dot-stale"),this.fire(new a.k("error",w)),this._finish()}},this._finish=()=>{this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0},this._setupUI=()=>{this._map&&(this._container.addEventListener("contextmenu",w=>w.preventDefault()),this._geolocateButton=c.create("button","maplibregl-ctrl-geolocate",this._container),c.create("span","maplibregl-ctrl-icon",this._geolocateButton).setAttribute("aria-hidden","true"),this._geolocateButton.type="button",this._geolocateButton.disabled=!0)},this._finishSetupUI=w=>{if(this._map){if(w===!1){a.w("Geolocation support is not available so the GeolocateControl will be disabled.");let B=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.disabled=!0,this._geolocateButton.title=B,this._geolocateButton.setAttribute("aria-label",B)}else{let B=this._map._getUIString("GeolocateControl.FindMyLocation");this._geolocateButton.disabled=!1,this._geolocateButton.title=B,this._geolocateButton.setAttribute("aria-label",B)}this.options.trackUserLocation&&(this._geolocateButton.setAttribute("aria-pressed","false"),this._watchState="OFF"),this.options.showUserLocation&&(this._dotElement=c.create("div","maplibregl-user-location-dot"),this._userLocationDotMarker=new Yu({element:this._dotElement}),this._circleElement=c.create("div","maplibregl-user-location-accuracy-circle"),this._accuracyCircleMarker=new Yu({element:this._circleElement,pitchAlignment:"map"}),this.options.trackUserLocation&&(this._watchState="OFF"),this._map.on("zoom",this._onZoom)),this._geolocateButton.addEventListener("click",()=>this.trigger()),this._setup=!0,this.options.trackUserLocation&&this._map.on("movestart",B=>{B.geolocateSource||this._watchState!=="ACTIVE_LOCK"||B.originalEvent&&B.originalEvent.type==="resize"||(this._watchState="BACKGROUND",this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this.fire(new a.k("trackuserlocationend")),this.fire(new a.k("userlocationlostfocus")))})}},this.options=a.e({},Nc,ue)}onAdd(ue){return this._map=ue,this._container=c.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._setupUI(),function(){return a._(this,arguments,void 0,function*(w=!1){if(ys!==void 0&&!w)return ys;if(window.navigator.permissions===void 0)return ys=!!window.navigator.geolocation,ys;try{ys=(yield window.navigator.permissions.query({name:"geolocation"})).state!=="denied"}catch(B){ys=!!window.navigator.geolocation}return ys})}().then(w=>this._finishSetupUI(w)),this._container}onRemove(){this._geolocationWatchID!==void 0&&(window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0),this.options.showUserLocation&&this._userLocationDotMarker&&this._userLocationDotMarker.remove(),this.options.showAccuracyCircle&&this._accuracyCircleMarker&&this._accuracyCircleMarker.remove(),c.remove(this._container),this._map.off("zoom",this._onZoom),this._map=void 0,pu=0,Uc=!1}_isOutOfMapMaxBounds(ue){let w=this._map.getMaxBounds(),B=ue.coords;return w&&(B.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":pu--,Uc=!1,this._watchState="OFF",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background-error"),this.fire(new a.k("trackuserlocationend"));break;case"BACKGROUND":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._lastKnownPosition&&this._updateCamera(this._lastKnownPosition),this.fire(new a.k("trackuserlocationstart")),this.fire(new a.k("userlocationfocus"));break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}switch(this._watchState){case"WAITING_ACTIVE":this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active");break;case"ACTIVE_LOCK":this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active");break;case"OFF":break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}if(this._watchState==="OFF"&&this._geolocationWatchID!==void 0)this._clearWatch();else if(this._geolocationWatchID===void 0){let ue;this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","true"),pu++,pu>1?(ue={maximumAge:6e5,timeout:0},Uc=!0):(ue=this.options.positionOptions,Uc=!1),this._geolocationWatchID=window.navigator.geolocation.watchPosition(this._onSuccess,this._onError,ue)}}else window.navigator.geolocation.getCurrentPosition(this._onSuccess,this._onError,this.options.positionOptions),this._timeoutId=setTimeout(this._finish,1e4);return!0}_clearWatch(){window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0,this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","false"),this.options.showUserLocation&&this._updateMarker(null)}},i.Hash=Ah,i.ImageSource=Gt,i.KeyboardHandler=Wt,i.LngLatBounds=ce,i.LogoControl=Yn,i.Map=class extends Ra{constructor(ue){a.bf.mark(a.bg.create);let w=Object.assign(Object.assign({},Ws),ue);if(w.minZoom!=null&&w.maxZoom!=null&&w.minZoom>w.maxZoom)throw new Error("maxZoom must be greater than or equal to minZoom");if(w.minPitch!=null&&w.maxPitch!=null&&w.minPitch>w.maxPitch)throw new Error("maxPitch must be greater than or equal to minPitch");if(w.minPitch!=null&&w.minPitch<0)throw new Error("minPitch must be greater than or equal to 0");if(w.maxPitch!=null&&w.maxPitch>85)throw new Error("maxPitch must be less than or equal to 85");if(super(new nl(w.minZoom,w.maxZoom,w.minPitch,w.maxPitch,w.renderWorldCopies),{bearingSnap:w.bearingSnap}),this._idleTriggered=!1,this._crossFadingFactor=1,this._renderTaskQueue=new Dn,this._controls=[],this._mapId=a.a4(),this._contextLost=B=>{B.preventDefault(),this._frameRequest&&(this._frameRequest.abort(),this._frameRequest=null),this.fire(new a.k("webglcontextlost",{originalEvent:B}))},this._contextRestored=B=>{this._setupPainter(),this.resize(),this._update(),this.fire(new a.k("webglcontextrestored",{originalEvent:B}))},this._onMapScroll=B=>{if(B.target===this._container)return this._container.scrollTop=0,this._container.scrollLeft=0,!1},this._onWindowOnline=()=>{this._update()},this._interactive=w.interactive,this._maxTileCacheSize=w.maxTileCacheSize,this._maxTileCacheZoomLevels=w.maxTileCacheZoomLevels,this._failIfMajorPerformanceCaveat=w.failIfMajorPerformanceCaveat===!0,this._preserveDrawingBuffer=w.preserveDrawingBuffer===!0,this._antialias=w.antialias===!0,this._trackResize=w.trackResize===!0,this._bearingSnap=w.bearingSnap,this._refreshExpiredTiles=w.refreshExpiredTiles===!0,this._fadeDuration=w.fadeDuration,this._crossSourceCollisions=w.crossSourceCollisions===!0,this._collectResourceTiming=w.collectResourceTiming===!0,this._locale=Object.assign(Object.assign({},Ho),w.locale),this._clickTolerance=w.clickTolerance,this._overridePixelRatio=w.pixelRatio,this._maxCanvasSize=w.maxCanvasSize,this.transformCameraUpdate=w.transformCameraUpdate,this.cancelPendingTileRequestsWhileZooming=w.cancelPendingTileRequestsWhileZooming===!0,this._imageQueueHandle=p.addThrottleControl(()=>this.isMoving()),this._requestManager=new k(w.transformRequest),typeof w.container=="string"){if(this._container=document.getElementById(w.container),!this._container)throw new Error(`Container '${w.container}' not found.`)}else{if(!(w.container instanceof HTMLElement))throw new Error("Invalid type: 'container' must be a String or HTMLElement.");this._container=w.container}if(w.maxBounds&&this.setMaxBounds(w.maxBounds),this._setupContainer(),this._setupPainter(),this.on("move",()=>this._update(!1)).on("moveend",()=>this._update(!1)).on("zoom",()=>this._update(!0)).on("terrain",()=>{this.painter.terrainFacilitator.dirty=!0,this._update(!0)}).once("idle",()=>{this._idleTriggered=!0}),typeof window!="undefined"){addEventListener("online",this._onWindowOnline,!1);let B=!1,Q=nh(ee=>{this._trackResize&&!this._removed&&(this.resize(ee),this.redraw())},50);this._resizeObserver=new ResizeObserver(ee=>{B?Q(ee):B=!0}),this._resizeObserver.observe(this._container)}this.handlers=new Ca(this,w),this._hash=w.hash&&new Ah(typeof w.hash=="string"&&w.hash||void 0).addTo(this),this._hash&&this._hash._onHashChange()||(this.jumpTo({center:w.center,zoom:w.zoom,bearing:w.bearing,pitch:w.pitch}),w.bounds&&(this.resize(),this.fitBounds(w.bounds,a.e({},w.fitBoundsOptions,{duration:0})))),this.resize(),this._localIdeographFontFamily=w.localIdeographFontFamily,this._validateStyle=w.validateStyle,w.style&&this.setStyle(w.style,{localIdeographFontFamily:w.localIdeographFontFamily}),w.attributionControl&&this.addControl(new Na(typeof w.attributionControl=="boolean"?void 0:w.attributionControl)),w.maplibreLogo&&this.addControl(new Yn,w.logoPosition),this.on("style.load",()=>{this.transform.unmodified&&this.jumpTo(this.style.stylesheet)}),this.on("data",B=>{this._update(B.dataType==="style"),this.fire(new a.k(`${B.dataType}data`,B))}),this.on("dataloading",B=>{this.fire(new a.k(`${B.dataType}dataloading`,B))}),this.on("dataabort",B=>{this.fire(new a.k("sourcedataabort",B))})}_getMapId(){return this._mapId}addControl(ue,w){if(w===void 0&&(w=ue.getDefaultPosition?ue.getDefaultPosition():"top-right"),!ue||!ue.onAdd)return this.fire(new a.j(new Error("Invalid argument to map.addControl(). Argument must be a control with onAdd and onRemove methods.")));let B=ue.onAdd(this);this._controls.push(ue);let Q=this._controlPositions[w];return w.indexOf("bottom")!==-1?Q.insertBefore(B,Q.firstChild):Q.appendChild(B),this}removeControl(ue){if(!ue||!ue.onRemove)return this.fire(new a.j(new Error("Invalid argument to map.removeControl(). Argument must be a control with onAdd and onRemove methods.")));let w=this._controls.indexOf(ue);return w>-1&&this._controls.splice(w,1),ue.onRemove(this),this}hasControl(ue){return this._controls.indexOf(ue)>-1}calculateCameraOptionsFromTo(ue,w,B,Q){return Q==null&&this.terrain&&(Q=this.terrain.getElevationForLngLatZoom(B,this.transform.tileZoom)),super.calculateCameraOptionsFromTo(ue,w,B,Q)}resize(ue){var w;let B=this._containerDimensions(),Q=B[0],ee=B[1],le=this._getClampedPixelRatio(Q,ee);if(this._resizeCanvas(Q,ee,le),this.painter.resize(Q,ee,le),this.painter.overLimit()){let Xe=this.painter.context.gl;this._maxCanvasSize=[Xe.drawingBufferWidth,Xe.drawingBufferHeight];let ot=this._getClampedPixelRatio(Q,ee);this._resizeCanvas(Q,ee,ot),this.painter.resize(Q,ee,ot)}this.transform.resize(Q,ee),(w=this._requestedCameraState)===null||w===void 0||w.resize(Q,ee);let qe=!this._moving;return qe&&(this.stop(),this.fire(new a.k("movestart",ue)).fire(new a.k("move",ue))),this.fire(new a.k("resize",ue)),qe&&this.fire(new a.k("moveend",ue)),this}_getClampedPixelRatio(ue,w){let{0:B,1:Q}=this._maxCanvasSize,ee=this.getPixelRatio(),le=ue*ee,qe=w*ee;return Math.min(le>B?B/le:1,qe>Q?Q/qe:1)*ee}getPixelRatio(){var ue;return(ue=this._overridePixelRatio)!==null&&ue!==void 0?ue:devicePixelRatio}setPixelRatio(ue){this._overridePixelRatio=ue,this.resize()}getBounds(){return this.transform.getBounds()}getMaxBounds(){return this.transform.getMaxBounds()}setMaxBounds(ue){return this.transform.setMaxBounds(ce.convert(ue)),this._update()}setMinZoom(ue){if((ue=ue==null?-2:ue)>=-2&&ue<=this.transform.maxZoom)return this.transform.minZoom=ue,this._update(),this.getZoom()<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 Ha(this,w||{}),this.style.setEventedParent(this,{style:this.style}),typeof ue=="string"?this.style.loadURL(ue,w,B):this.style.loadJSON(ue,w,B),this):(delete this.style,this)}_lazyInitEmptyStyle(){this.style||(this.style=new Ha(this,{}),this.style.setEventedParent(this,{style:this.style}),this.style.loadEmpty())}_diffStyle(ue,w){if(typeof ue=="string"){let B=this._requestManager.transformRequest(ue,"Style");a.h(B,new AbortController).then(Q=>{this._updateDiff(Q.data,w)}).catch(Q=>{Q&&this.fire(new a.j(Q))})}else typeof ue=="object"&&this._updateDiff(ue,w)}_updateDiff(ue,w){try{this.style.setState(ue,w)&&this._update(!0)}catch(B){a.w(`Unable to perform style diff: ${B.message||B.error||B}. Rebuilding the style from scratch.`),this._updateStyle(ue,w)}}getStyle(){if(this.style)return this.style.serialize()}isStyleLoaded(){return this.style?this.style.loaded():a.w("There is no style added to the map.")}addSource(ue,w){return this._lazyInitEmptyStyle(),this.style.addSource(ue,w),this._update(!0)}isSourceLoaded(ue){let w=this.style&&this.style.sourceCaches[ue];if(w!==void 0)return w.loaded();this.fire(new a.j(new Error(`There is no source with ID '${ue}'`)))}setTerrain(ue){if(this.style._checkLoaded(),this._terrainDataCallback&&this.style.off("data",this._terrainDataCallback),ue){let w=this.style.sourceCaches[ue.source];if(!w)throw new Error(`cannot load terrain, because there exists no source with ID: ${ue.source}`);this.terrain===null&&w.reload();for(let B in this.style._layers){let Q=this.style._layers[B];Q.type==="hillshade"&&Q.source===ue.source&&a.w("You are using the same source for a hillshade layer and for 3D terrain. Please consider using two separate sources to improve rendering quality.")}this.terrain=new Xo(this.painter,w,ue),this.painter.renderToTexture=new ws(this.painter,this.terrain),this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this.transform.elevation=this.terrain.getElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this._terrainDataCallback=B=>{B.dataType==="style"?this.terrain.sourceCache.freeRtt():B.dataType==="source"&&B.tile&&(B.sourceId!==ue.source||this._elevationFreeze||(this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this.transform.elevation=this.terrain.getElevationForLngLatZoom(this.transform.center,this.transform.tileZoom)),this.terrain.sourceCache.freeRtt(B.tile.tileID))},this.style.on("data",this._terrainDataCallback)}else this.terrain&&this.terrain.sourceCache.destruct(),this.terrain=null,this.painter.renderToTexture&&this.painter.renderToTexture.destruct(),this.painter.renderToTexture=null,this.transform.minElevationForCurrentTile=0,this.transform.elevation=0;return this.fire(new a.k("terrain",{terrain:ue})),this}getTerrain(){var ue,w;return(w=(ue=this.terrain)===null||ue===void 0?void 0:ue.options)!==null&&w!==void 0?w:null}areTilesLoaded(){let ue=this.style&&this.style.sourceCaches;for(let w in ue){let B=ue[w]._tiles;for(let Q in B){let ee=B[Q];if(ee.state!=="loaded"&&ee.state!=="errored")return!1}}return!0}removeSource(ue){return this.style.removeSource(ue),this._update(!0)}getSource(ue){return this.style.getSource(ue)}addImage(ue,w,B={}){let{pixelRatio:Q=1,sdf:ee=!1,stretchX:le,stretchY:qe,content:Xe,textFitWidth:ot,textFitHeight:Tt}=B;if(this._lazyInitEmptyStyle(),!(w instanceof HTMLImageElement||a.b(w))){if(w.width===void 0||w.height===void 0)return this.fire(new a.j(new Error("Invalid arguments to map.addImage(). The second argument must be an `HTMLImageElement`, `ImageData`, `ImageBitmap`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`")));{let{width:Yt,height:Kt,data:xr}=w,Ir=w;return this.style.addImage(ue,{data:new a.R({width:Yt,height:Kt},new Uint8Array(xr)),pixelRatio:Q,stretchX:le,stretchY:qe,content:Xe,textFitWidth:ot,textFitHeight:Tt,sdf:ee,version:0,userImage:Ir}),Ir.onAdd&&Ir.onAdd(this,ue),this}}{let{width:Yt,height:Kt,data:xr}=u.getImageData(w);this.style.addImage(ue,{data:new a.R({width:Yt,height:Kt},xr),pixelRatio:Q,stretchX:le,stretchY:qe,content:Xe,textFitWidth:ot,textFitHeight:Tt,sdf:ee,version:0})}}updateImage(ue,w){let B=this.style.getImage(ue);if(!B)return this.fire(new a.j(new Error("The map has no image with that id. If you are adding a new image use `map.addImage(...)` instead.")));let Q=w instanceof HTMLImageElement||a.b(w)?u.getImageData(w):w,{width:ee,height:le,data:qe}=Q;if(ee===void 0||le===void 0)return this.fire(new a.j(new Error("Invalid arguments to map.updateImage(). The second argument must be an `HTMLImageElement`, `ImageData`, `ImageBitmap`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`")));if(ee!==B.data.width||le!==B.data.height)return this.fire(new a.j(new Error("The width and height of the updated image must be that same as the previous version of the image")));let Xe=!(w instanceof HTMLImageElement||a.b(w));return B.data.replace(qe,Xe),this.style.updateImage(ue,B),this}getImage(ue){return this.style.getImage(ue)}hasImage(ue){return ue?!!this.style.getImage(ue):(this.fire(new a.j(new Error("Missing required image id"))),!1)}removeImage(ue){this.style.removeImage(ue)}loadImage(ue){return p.getImage(this._requestManager.transformRequest(ue,"Image"),new AbortController)}listImages(){return this.style.listImages()}addLayer(ue,w){return this._lazyInitEmptyStyle(),this.style.addLayer(ue,w),this._update(!0)}moveLayer(ue,w){return this.style.moveLayer(ue,w),this._update(!0)}removeLayer(ue){return this.style.removeLayer(ue),this._update(!0)}getLayer(ue){return this.style.getLayer(ue)}getLayersOrder(){return this.style.getLayersOrder()}setLayerZoomRange(ue,w,B){return this.style.setLayerZoomRange(ue,w,B),this._update(!0)}setFilter(ue,w,B={}){return this.style.setFilter(ue,w,B),this._update(!0)}getFilter(ue){return this.style.getFilter(ue)}setPaintProperty(ue,w,B,Q={}){return this.style.setPaintProperty(ue,w,B,Q),this._update(!0)}getPaintProperty(ue,w){return this.style.getPaintProperty(ue,w)}setLayoutProperty(ue,w,B,Q={}){return this.style.setLayoutProperty(ue,w,B,Q),this._update(!0)}getLayoutProperty(ue,w){return this.style.getLayoutProperty(ue,w)}setGlyphs(ue,w={}){return this._lazyInitEmptyStyle(),this.style.setGlyphs(ue,w),this._update(!0)}getGlyphs(){return this.style.getGlyphsUrl()}addSprite(ue,w,B={}){return this._lazyInitEmptyStyle(),this.style.addSprite(ue,w,B,Q=>{Q||this._update(!0)}),this}removeSprite(ue){return this._lazyInitEmptyStyle(),this.style.removeSprite(ue),this._update(!0)}getSprite(){return this.style.getSprite()}setSprite(ue,w={}){return this._lazyInitEmptyStyle(),this.style.setSprite(ue,w,B=>{B||this._update(!0)}),this}setLight(ue,w={}){return this._lazyInitEmptyStyle(),this.style.setLight(ue,w),this._update(!0)}getLight(){return this.style.getLight()}setSky(ue){return this._lazyInitEmptyStyle(),this.style.setSky(ue),this._update(!0)}getSky(){return this.style.getSky()}setFeatureState(ue,w){return this.style.setFeatureState(ue,w),this._update()}removeFeatureState(ue,w){return this.style.removeFeatureState(ue,w),this._update()}getFeatureState(ue){return this.style.getFeatureState(ue)}getContainer(){return this._container}getCanvasContainer(){return this._canvasContainer}getCanvas(){return this._canvas}_containerDimensions(){let ue=0,w=0;return this._container&&(ue=this._container.clientWidth||400,w=this._container.clientHeight||300),[ue,w]}_setupContainer(){let ue=this._container;ue.classList.add("maplibregl-map");let w=this._canvasContainer=c.create("div","maplibregl-canvas-container",ue);this._interactive&&w.classList.add("maplibregl-interactive"),this._canvas=c.create("canvas","maplibregl-canvas",w),this._canvas.addEventListener("webglcontextlost",this._contextLost,!1),this._canvas.addEventListener("webglcontextrestored",this._contextRestored,!1),this._canvas.setAttribute("tabindex",this._interactive?"0":"-1"),this._canvas.setAttribute("aria-label",this._getUIString("Map.Title")),this._canvas.setAttribute("role","region");let B=this._containerDimensions(),Q=this._getClampedPixelRatio(B[0],B[1]);this._resizeCanvas(B[0],B[1],Q);let ee=this._controlContainer=c.create("div","maplibregl-control-container",ue),le=this._controlPositions={};["top-left","top-right","bottom-left","bottom-right"].forEach(qe=>{le[qe]=c.create("div",`maplibregl-ctrl-${qe} `,ee)}),this._container.addEventListener("scroll",this._onMapScroll,!1)}_resizeCanvas(ue,w,B){this._canvas.width=Math.floor(B*ue),this._canvas.height=Math.floor(B*w),this._canvas.style.width=`${ue}px`,this._canvas.style.height=`${w}px`}_setupPainter(){let ue={alpha:!0,stencil:!0,depth:!0,failIfMajorPerformanceCaveat:this._failIfMajorPerformanceCaveat,preserveDrawingBuffer:this._preserveDrawingBuffer,antialias:this._antialias||!1},w=null;this._canvas.addEventListener("webglcontextcreationerror",Q=>{w={requestedAttributes:ue},Q&&(w.statusMessage=Q.statusMessage,w.type=Q.type)},{once:!0});let B=this._canvas.getContext("webgl2",ue)||this._canvas.getContext("webgl",ue);if(!B){let Q="Failed to initialize WebGL";throw w?(w.message=Q,new Error(JSON.stringify(w))):new Error(Q)}this.painter=new Dc(B,this.transform),f.testSupport(B)}loaded(){return!this._styleDirty&&!this._sourcesDirty&&!!this.style&&this.style.loaded()}_update(ue){return this.style&&this.style._loaded?(this._styleDirty=this._styleDirty||ue,this._sourcesDirty=!0,this.triggerRepaint(),this):this}_requestRenderFrame(ue){return this._update(),this._renderTaskQueue.add(ue)}_cancelRenderFrame(ue){this._renderTaskQueue.remove(ue)}_render(ue){let w=this._idleTriggered?this._fadeDuration:0;if(this.painter.context.setDirty(),this.painter.setBaseState(),this._renderTaskQueue.run(ue),this._removed)return;let B=!1;if(this.style&&this._styleDirty){this._styleDirty=!1;let ee=this.transform.zoom,le=u.now();this.style.zoomHistory.update(ee,le);let qe=new a.z(ee,{now:le,fadeDuration:w,zoomHistory:this.style.zoomHistory,transition:this.style.getTransition()}),Xe=qe.crossFadingFactor();Xe===1&&Xe===this._crossFadingFactor||(B=!0,this._crossFadingFactor=Xe),this.style.update(qe)}this.style&&this._sourcesDirty&&(this._sourcesDirty=!1,this.style._updateSources(this.transform)),this.terrain?(this.terrain.sourceCache.update(this.transform,this.terrain),this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this._elevationFreeze||(this.transform.elevation=this.terrain.getElevationForLngLatZoom(this.transform.center,this.transform.tileZoom))):(this.transform.minElevationForCurrentTile=0,this.transform.elevation=0),this._placementDirty=this.style&&this.style._updatePlacement(this.painter.transform,this.showCollisionBoxes,w,this._crossSourceCollisions),this.painter.render(this.style,{showTileBoundaries:this.showTileBoundaries,showOverdrawInspector:this._showOverdrawInspector,rotating:this.isRotating(),zooming:this.isZooming(),moving:this.isMoving(),fadeDuration:w,showPadding:this.showPadding}),this.fire(new a.k("render")),this.loaded()&&!this._loaded&&(this._loaded=!0,a.bf.mark(a.bg.load),this.fire(new a.k("load"))),this.style&&(this.style.hasTransitions()||B)&&(this._styleDirty=!0),this.style&&!this._placementDirty&&this.style._releaseSymbolFadeTiles();let Q=this._sourcesDirty||this._styleDirty||this._placementDirty;return Q||this._repaint?this.triggerRepaint():!this.isMoving()&&this.loaded()&&this.fire(new a.k("idle")),!this._loaded||this._fullyLoaded||Q||(this._fullyLoaded=!0,a.bf.mark(a.bg.fullLoad)),this}redraw(){return this.style&&(this._frameRequest&&(this._frameRequest.abort(),this._frameRequest=null),this._render(0)),this}remove(){var ue;this._hash&&this._hash.remove();for(let B of this._controls)B.onRemove(this);this._controls=[],this._frameRequest&&(this._frameRequest.abort(),this._frameRequest=null),this._renderTaskQueue.clear(),this.painter.destroy(),this.handlers.destroy(),delete this.handlers,this.setStyle(null),typeof window!="undefined"&&removeEventListener("online",this._onWindowOnline,!1),p.removeThrottleControl(this._imageQueueHandle),(ue=this._resizeObserver)===null||ue===void 0||ue.disconnect();let w=this.painter.context.gl.getExtension("WEBGL_lose_context");w!=null&&w.loseContext&&w.loseContext(),this._canvas.removeEventListener("webglcontextrestored",this._contextRestored,!1),this._canvas.removeEventListener("webglcontextlost",this._contextLost,!1),c.remove(this._canvasContainer),c.remove(this._controlContainer),this._container.classList.remove("maplibregl-map"),a.bf.clearMetrics(),this._removed=!0,this.fire(new a.k("remove"))}triggerRepaint(){this.style&&!this._frameRequest&&(this._frameRequest=new AbortController,u.frameAsync(this._frameRequest).then(ue=>{a.bf.frame(ue),this._frameRequest=null,this._render(ue)}).catch(()=>{}))}get showTileBoundaries(){return!!this._showTileBoundaries}set showTileBoundaries(ue){this._showTileBoundaries!==ue&&(this._showTileBoundaries=ue,this._update())}get showPadding(){return!!this._showPadding}set showPadding(ue){this._showPadding!==ue&&(this._showPadding=ue,this._update())}get showCollisionBoxes(){return!!this._showCollisionBoxes}set showCollisionBoxes(ue){this._showCollisionBoxes!==ue&&(this._showCollisionBoxes=ue,ue?this.style._generateCollisionBoxes():this._update())}get showOverdrawInspector(){return!!this._showOverdrawInspector}set showOverdrawInspector(ue){this._showOverdrawInspector!==ue&&(this._showOverdrawInspector=ue,this._update())}get repaint(){return!!this._repaint}set repaint(ue){this._repaint!==ue&&(this._repaint=ue,this.triggerRepaint())}get vertices(){return!!this._vertices}set vertices(ue){this._vertices=ue,this._update()}get version(){return ml}getCameraTargetElevation(){return this.transform.elevation}},i.MapMouseEvent=jl,i.MapTouchEvent=lf,i.MapWheelEvent=Hh,i.Marker=Yu,i.NavigationControl=class{constructor(ue){this._updateZoomButtons=()=>{let w=this._map.getZoom(),B=w===this._map.getMaxZoom(),Q=w===this._map.getMinZoom();this._zoomInButton.disabled=B,this._zoomOutButton.disabled=Q,this._zoomInButton.setAttribute("aria-disabled",B.toString()),this._zoomOutButton.setAttribute("aria-disabled",Q.toString())},this._rotateCompassArrow=()=>{let w=this.options.visualizePitch?`scale(${1/Math.pow(Math.cos(this._map.transform.pitch*(Math.PI/180)),.5)}) rotateX(${this._map.transform.pitch}deg) rotateZ(${this._map.transform.angle*(180/Math.PI)}deg)`:`rotate(${this._map.transform.angle*(180/Math.PI)}deg)`;this._compassIcon.style.transform=w},this._setButtonTitle=(w,B)=>{let Q=this._map._getUIString(`NavigationControl.${B}`);w.title=Q,w.setAttribute("aria-label",Q)},this.options=a.e({},va,ue),this._container=c.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._container.addEventListener("contextmenu",w=>w.preventDefault()),this.options.showZoom&&(this._zoomInButton=this._createButton("maplibregl-ctrl-zoom-in",w=>this._map.zoomIn({},{originalEvent:w})),c.create("span","maplibregl-ctrl-icon",this._zoomInButton).setAttribute("aria-hidden","true"),this._zoomOutButton=this._createButton("maplibregl-ctrl-zoom-out",w=>this._map.zoomOut({},{originalEvent:w})),c.create("span","maplibregl-ctrl-icon",this._zoomOutButton).setAttribute("aria-hidden","true")),this.options.showCompass&&(this._compass=this._createButton("maplibregl-ctrl-compass",w=>{this.options.visualizePitch?this._map.resetNorthPitch({},{originalEvent:w}):this._map.resetNorth({},{originalEvent:w})}),this._compassIcon=c.create("span","maplibregl-ctrl-icon",this._compass),this._compassIcon.setAttribute("aria-hidden","true"))}onAdd(ue){return this._map=ue,this.options.showZoom&&(this._setButtonTitle(this._zoomInButton,"ZoomIn"),this._setButtonTitle(this._zoomOutButton,"ZoomOut"),this._map.on("zoom",this._updateZoomButtons),this._updateZoomButtons()),this.options.showCompass&&(this._setButtonTitle(this._compass,"ResetBearing"),this.options.visualizePitch&&this._map.on("pitch",this._rotateCompassArrow),this._map.on("rotate",this._rotateCompassArrow),this._rotateCompassArrow(),this._handler=new no(this._map,this._compass,this.options.visualizePitch)),this._container}onRemove(){c.remove(this._container),this.options.showZoom&&this._map.off("zoom",this._updateZoomButtons),this.options.showCompass&&(this.options.visualizePitch&&this._map.off("pitch",this._rotateCompassArrow),this._map.off("rotate",this._rotateCompassArrow),this._handler.off(),delete this._handler),delete this._map}_createButton(ue,w){let B=c.create("button",ue,this._container);return B.type="button",B.addEventListener("click",w),B}},i.Popup=class extends a.E{constructor(ue){super(),this.remove=()=>(this._content&&c.remove(this._content),this._container&&(c.remove(this._container),delete this._container),this._map&&(this._map.off("move",this._update),this._map.off("move",this._onClose),this._map.off("click",this._onClose),this._map.off("remove",this.remove),this._map.off("mousemove",this._onMouseMove),this._map.off("mouseup",this._onMouseUp),this._map.off("drag",this._onDrag),this._map._canvasContainer.classList.remove("maplibregl-track-pointer"),delete this._map,this.fire(new a.k("close"))),this),this._onMouseUp=w=>{this._update(w.point)},this._onMouseMove=w=>{this._update(w.point)},this._onDrag=w=>{this._update(w.point)},this._update=w=>{var B;if(!this._map||!this._lngLat&&!this._trackPointer||!this._content)return;if(!this._container){if(this._container=c.create("div","maplibregl-popup",this._map.getContainer()),this._tip=c.create("div","maplibregl-popup-tip",this._container),this._container.appendChild(this._content),this.options.className)for(let Xe of this.options.className.split(" "))this._container.classList.add(Xe);this._closeButton&&this._closeButton.setAttribute("aria-label",this._map._getUIString("Popup.Close")),this._trackPointer&&this._container.classList.add("maplibregl-popup-track-pointer")}if(this.options.maxWidth&&this._container.style.maxWidth!==this.options.maxWidth&&(this._container.style.maxWidth=this.options.maxWidth),this._lngLat=this._map.transform.renderWorldCopies&&!this._trackPointer?rs(this._lngLat,this._flatPos,this._map.transform):(B=this._lngLat)===null||B===void 0?void 0:B.wrap(),this._trackPointer&&!w)return;let Q=this._flatPos=this._pos=this._trackPointer&&w?w:this._map.project(this._lngLat);this._map.terrain&&(this._flatPos=this._trackPointer&&w?w:this._map.transform.locationPoint(this._lngLat));let ee=this.options.anchor,le=hc(this.options.offset);if(!ee){let Xe=this._container.offsetWidth,ot=this._container.offsetHeight,Tt;Tt=Q.y+le.bottom.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)`),Cu(this._container,ee,"popup")},this._onClose=()=>{this.remove()},this.options=a.e(Object.create(oo),ue)}addTo(ue){return this._map&&this.remove(),this._map=ue,this.options.closeOnClick&&this._map.on("click",this._onClose),this.options.closeOnMove&&this._map.on("move",this._onClose),this._map.on("remove",this.remove),this._update(),this._focusFirstElement(),this._trackPointer?(this._map.on("mousemove",this._onMouseMove),this._map.on("mouseup",this._onMouseUp),this._container&&this._container.classList.add("maplibregl-popup-track-pointer"),this._map._canvasContainer.classList.add("maplibregl-track-pointer")):this._map.on("move",this._update),this.fire(new a.k("open")),this}isOpen(){return!!this._map}getLngLat(){return this._lngLat}setLngLat(ue){return this._lngLat=a.N.convert(ue),this._pos=null,this._flatPos=null,this._trackPointer=!1,this._update(),this._map&&(this._map.on("move",this._update),this._map.off("mousemove",this._onMouseMove),this._container&&this._container.classList.remove("maplibregl-popup-track-pointer"),this._map._canvasContainer.classList.remove("maplibregl-track-pointer")),this}trackPointer(){return this._trackPointer=!0,this._pos=null,this._flatPos=null,this._update(),this._map&&(this._map.off("move",this._update),this._map.on("mousemove",this._onMouseMove),this._map.on("drag",this._onDrag),this._container&&this._container.classList.add("maplibregl-popup-track-pointer"),this._map._canvasContainer.classList.add("maplibregl-track-pointer")),this}getElement(){return this._container}setText(ue){return this.setDOMContent(document.createTextNode(ue))}setHTML(ue){let w=document.createDocumentFragment(),B=document.createElement("body"),Q;for(B.innerHTML=ue;Q=B.firstChild,Q;)w.appendChild(Q);return this.setDOMContent(w)}getMaxWidth(){var ue;return(ue=this._container)===null||ue===void 0?void 0:ue.style.maxWidth}setMaxWidth(ue){return this.options.maxWidth=ue,this._update(),this}setDOMContent(ue){if(this._content)for(;this._content.hasChildNodes();)this._content.firstChild&&this._content.removeChild(this._content.firstChild);else this._content=c.create("div","maplibregl-popup-content",this._container);return this._content.appendChild(ue),this._createCloseButton(),this._update(),this._focusFirstElement(),this}addClassName(ue){return this._container&&this._container.classList.add(ue),this}removeClassName(ue){return this._container&&this._container.classList.remove(ue),this}setOffset(ue){return this.options.offset=ue,this._update(),this}toggleClassName(ue){if(this._container)return this._container.classList.toggle(ue)}setSubpixelPositioning(ue){this.options.subpixelPositioning=ue}_createCloseButton(){this.options.closeButton&&(this._closeButton=c.create("button","maplibregl-popup-close-button",this._content),this._closeButton.type="button",this._closeButton.innerHTML="&#215;",this._closeButton.addEventListener("click",this._onClose))}_focusFirstElement(){if(!this.options.focusAfterOpen||!this._container)return;let ue=this._container.querySelector(Vc);ue&&ue.focus()}},i.RasterDEMTileSource=Zt,i.RasterTileSource=pt,i.ScaleControl=class{constructor(ue){this._onMove=()=>{Ac(this._map,this._container,this.options)},this.setUnit=w=>{this.options.unit=w,Ac(this._map,this._container,this.options)},this.options=Object.assign(Object.assign({},xu),ue)}getDefaultPosition(){return"bottom-left"}onAdd(ue){return this._map=ue,this._container=c.create("div","maplibregl-ctrl maplibregl-ctrl-scale",ue.getContainer()),this._map.on("move",this._onMove),this._onMove(),this._container}onRemove(){c.remove(this._container),this._map.off("move",this._onMove),this._map=void 0}},i.ScrollZoomHandler=Kr,i.Style=Ha,i.TerrainControl=class{constructor(ue){this._toggleTerrain=()=>{this._map.getTerrain()?this._map.setTerrain(null):this._map.setTerrain(this.options),this._updateTerrainIcon()},this._updateTerrainIcon=()=>{this._terrainButton.classList.remove("maplibregl-ctrl-terrain"),this._terrainButton.classList.remove("maplibregl-ctrl-terrain-enabled"),this._map.terrain?(this._terrainButton.classList.add("maplibregl-ctrl-terrain-enabled"),this._terrainButton.title=this._map._getUIString("TerrainControl.Disable")):(this._terrainButton.classList.add("maplibregl-ctrl-terrain"),this._terrainButton.title=this._map._getUIString("TerrainControl.Enable"))},this.options=ue}onAdd(ue){return this._map=ue,this._container=c.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._terrainButton=c.create("button","maplibregl-ctrl-terrain",this._container),c.create("span","maplibregl-ctrl-icon",this._terrainButton).setAttribute("aria-hidden","true"),this._terrainButton.type="button",this._terrainButton.addEventListener("click",this._toggleTerrain),this._updateTerrainIcon(),this._map.on("terrain",this._updateTerrainIcon),this._container}onRemove(){c.remove(this._container),this._map.off("terrain",this._updateTerrainIcon),this._map=void 0}},i.TwoFingersTouchPitchHandler=Bc,i.TwoFingersTouchRotateHandler=cf,i.TwoFingersTouchZoomHandler=vu,i.TwoFingersTouchZoomRotateHandler=Yi,i.VectorTileSource=ut,i.VideoSource=Nt,i.addSourceType=(ue,w)=>a._(void 0,void 0,void 0,function*(){if(wr(ue))throw new Error(`A source type called "${ue}" already exists.`);((B,Q)=>{sr[B]=Q})(ue,w)}),i.clearPrewarmedResources=function(){let ue=me;ue&&(ue.isPreloaded()&&ue.numActive()===1?(ue.release(_e),me=null):console.warn("Could not clear WebWorkers since there are active Map instances that still reference it. The pre-warmed WebWorker pool can only be cleared when all map instances have been removed with map.remove()"))},i.getMaxParallelImageRequests=function(){return a.a.MAX_PARALLEL_IMAGE_REQUESTS},i.getRTLTextPluginStatus=function(){return Qt().getRTLTextPluginStatus()},i.getVersion=function(){return Ku},i.getWorkerCount=function(){return Ee.workerCount},i.getWorkerUrl=function(){return a.a.WORKER_URL},i.importScriptInWorkers=function(ue){return Ae().broadcast("IS",ue)},i.prewarm=function(){Se().acquire(_e)},i.setMaxParallelImageRequests=function(ue){a.a.MAX_PARALLEL_IMAGE_REQUESTS=ue},i.setRTLTextPlugin=function(ue,w){return Qt().setRTLTextPlugin(ue,w)},i.setWorkerCount=function(ue){Ee.workerCount=ue},i.setWorkerUrl=function(ue){a.a.WORKER_URL=ue}});var n=e;return n})});var fje=ye((Ebr,cje)=>{"use strict";var aw=Dr(),AXt=ru().sanitizeHTML,SXt=SJ(),sje=wx();function lje(e,t){this.subplot=e,this.uid=e.uid+"-"+t,this.index=t,this.idSource="source-"+this.uid,this.idLayer=sje.layoutLayerPrefix+this.uid,this.sourceType=null,this.source=null,this.layerType=null,this.below=null,this.visible=!1}var ag=lje.prototype;ag.update=function(t){this.visible?this.needsNewImage(t)?this.updateImage(t):this.needsNewSource(t)?(this.removeLayer(),this.updateSource(t),this.updateLayer(t)):this.needsNewLayer(t)?this.updateLayer(t):this.updateStyle(t):(this.updateSource(t),this.updateLayer(t)),this.visible=c7(t)};ag.needsNewImage=function(e){var t=this.subplot.map;return t.getSource(this.idSource)&&this.sourceType==="image"&&e.sourcetype==="image"&&(this.source!==e.source||JSON.stringify(this.coordinates)!==JSON.stringify(e.coordinates))};ag.needsNewSource=function(e){return this.sourceType!==e.sourcetype||JSON.stringify(this.source)!==JSON.stringify(e.source)||this.layerType!==e.type};ag.needsNewLayer=function(e){return this.layerType!==e.type||this.below!==this.subplot.belowLookup["layout-"+this.index]};ag.lookupBelow=function(){return this.subplot.belowLookup["layout-"+this.index]};ag.updateImage=function(e){var t=this.subplot.map;t.getSource(this.idSource).updateImage({url:e.source,coordinates:e.coordinates});var r=this.findFollowingMapLayerId(this.lookupBelow());r!==null&&this.subplot.map.moveLayer(this.idLayer,r)};ag.updateSource=function(e){var t=this.subplot.map;if(t.getSource(this.idSource)&&t.removeSource(this.idSource),this.sourceType=e.sourcetype,this.source=e.source,!!c7(e)){var r=MXt(e);t.addSource(this.idSource,r)}};ag.findFollowingMapLayerId=function(e){if(e==="traces")for(var t=this.subplot.getMapLayers(),r=0;r<t.length;r++){var n=t[r].id;if(typeof n=="string"&&n.indexOf(sje.traceLayerPrefix)===0){e=n;break}}return e};ag.updateLayer=function(e){var t=this.subplot,r=uje(e),n=this.lookupBelow(),i=this.findFollowingMapLayerId(n);this.removeLayer(),c7(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(c7(e)){var t=uje(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 c7(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 aw.isPlainObject(t)||typeof t=="string"&&t.length>0}function uje(e){var t={},r={};switch(e.type){case"circle":aw.extendFlat(r,{"circle-radius":e.circle.radius,"circle-color":e.color,"circle-opacity":e.opacity});break;case"line":aw.extendFlat(r,{"line-width":e.line.width,"line-color":e.color,"line-opacity":e.opacity,"line-dasharray":e.line.dash});break;case"fill":aw.extendFlat(r,{"fill-color":e.color,"fill-outline-color":e.fill.outlinecolor,"fill-opacity":e.opacity});break;case"symbol":var n=e.symbol,i=SXt(n.textposition,n.iconsize);aw.extendFlat(t,{"icon-image":n.icon+"-15","icon-size":n.iconsize/10,"text-field":n.text,"text-size":n.textfont.size,"text-anchor":i.anchor,"text-offset":i.offset,"symbol-placement":n.placement}),aw.extendFlat(r,{"icon-color":e.color,"text-color":n.textfont.color,"text-opacity":e.opacity});break;case"raster":aw.extendFlat(r,{"raster-fade-duration":0,"raster-opacity":e.opacity});break}return{layout:t,paint:r}}function MXt(e){var t=e.sourcetype,r=e.source,n={type:t},i;return t==="geojson"?i="data":t==="vector"?i=typeof r=="string"?"url":"tiles":t==="raster"?(i="tiles",n.tileSize=256):t==="image"&&(i="url",n.coordinates=e.coordinates),n[i]=r,e.sourceattribution&&(n.attribution=AXt(e.sourceattribution)),n}cje.exports=function(t,r,n){var i=new lje(t,r);return i.update(n),i}});var _je=ye((kbr,yje)=>{"use strict";var PJ=oje(),IJ=Dr(),vje=ix(),hje=qa(),EXt=ho(),kXt=yv(),f7=vf(),pje=Eg(),CXt=pje.drawMode,LXt=pje.selectMode,PXt=Of().prepSelect,IXt=Of().clearOutline,RXt=Of().clearSelectionsCache,DXt=Of().selectOnClick,ow=wx(),FXt=fje();function gje(e,t){this.id=t,this.gd=e;var r=e._fullLayout,n=e._context;this.container=r._glcontainer.node(),this.isStatic=n.staticPlot,this.uid=r._uid+"-"+this.id,this.div=null,this.xaxis=null,this.yaxis=null,this.createFramework(r),this.map=null,this.styleObj=null,this.traceHash={},this.layerList=[],this.belowLookup={},this.dragging=!1,this.wheeling=!1}var Uh=gje.prototype;Uh.plot=function(e,t,r){var n=this,i;n.map?i=new Promise(function(a,o){n.updateMap(e,t,a,o)}):i=new Promise(function(a,o){n.createMap(e,t,a,o)}),r.push(i)};Uh.createMap=function(e,t,r,n){var i=this,a=t[i.id],o=i.styleObj=mje(a.style),s=a.bounds,l=s?[[s.west,s.south],[s.east,s.north]]:null,u=i.map=new PJ.Map({container:i.div,style:o.style,center:RJ(a.center),zoom:a.zoom,bearing:a.bearing,pitch:a.pitch,maxBounds:l,interactive:!i.isStatic,preserveDrawingBuffer:i.isStatic,doubleClickZoom:!1,boxZoom:!1,attributionControl:!1}).addControl(new PJ.AttributionControl({compact:!0})),c={};u.on("styleimagemissing",function(h){var d=h.id;if(!c[d]&&d.includes("-15")){c[d]=!0;var v=new Image(15,15);v.onload=function(){u.addImage(d,v)},v.crossOrigin="Anonymous",v.src="https://unpkg.com/maki@2.1.0/icons/"+d+".svg"}}),u.setTransformRequest(function(h){return h=h.replace("https://fonts.openmaptiles.org/Open Sans Extrabold","https://fonts.openmaptiles.org/Open Sans Extra Bold"),h=h.replace("https://tiles.basemaps.cartocdn.com/fonts/Open Sans Extrabold","https://fonts.openmaptiles.org/Open Sans Extra Bold"),h=h.replace("https://fonts.openmaptiles.org/Open Sans Regular,Arial Unicode MS Regular","https://fonts.openmaptiles.org/Klokantech Noto Sans Regular"),{url:h}}),u._canvas.style.left="0px",u._canvas.style.top="0px",i.rejectOnError(n),i.isStatic||i.initFx(e,t);var f=[];f.push(new Promise(function(h){u.once("load",h)})),f=f.concat(vje.fetchTraceGeoData(e)),Promise.all(f).then(function(){i.fillBelowLookup(e,t),i.updateData(e),i.updateLayout(t),i.resolveOnRender(r)}).catch(n)};Uh.updateMap=function(e,t,r,n){var i=this,a=i.map,o=t[this.id];i.rejectOnError(n);var s=[],l=mje(o.style);JSON.stringify(i.styleObj)!==JSON.stringify(l)&&(i.styleObj=l,a.setStyle(l.style),i.traceHash={},s.push(new Promise(function(u){a.once("styledata",u)}))),s=s.concat(vje.fetchTraceGeoData(e)),Promise.all(s).then(function(){i.fillBelowLookup(e,t),i.updateData(e),i.updateLayout(t),i.resolveOnRender(r)}).catch(n)};Uh.fillBelowLookup=function(e,t){var r=t[this.id],n=r.layers,i,a,o=this.belowLookup={},s=!1;for(i=0;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 dje={choroplethmap:0,densitymap:1,scattermap:2};Uh.updateData=function(e){var t=this.traceHash,r,n,i,a,o=e.slice().sort(function(f,h){return dje[f[0].trace.type]-dje[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]}};Uh.updateLayout=function(e){var t=this.map,r=e[this.id];!this.dragging&&!this.wheeling&&(t.setCenter(RJ(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()};Uh.resolveOnRender=function(e){var t=this.map;t.on("render",function r(){t.loaded()&&(t.off("render",r),setTimeout(e,10))})};Uh.rejectOnError=function(e){var t=this.map;function r(){e(new Error(ow.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)};Uh.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"},EXt.setConvert(t.mockAxis,e)};Uh.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];hje.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]&&f7.hover(n,s,r.id)},f7.hover(n,s,r.id),n._fullLayout._hoversubplot=r.id});function a(){f7.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];hje.call("_storeDirectGUIEdit",n.layout,n._fullLayout._preGUI,r.getViewEdits(s));var l=r.viewInitial;i.setCenter(RJ(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(){RXt(r.dragOptions),IXt(r.dragOptions.gd)},r.onClickInPanFn=function(s){return function(l){var u=n._fullLayout.clickmode;u.indexOf("select")>-1&&DXt(l.originalEvent,n,[r.xaxis],[r.yaxis],r.id,s),u.indexOf("event")>-1&&f7.click(n,l.originalEvent)}}};Uh.updateFx=function(e){var t=this,r=t.map,n=t.gd;if(t.isStatic)return;function i(l){var u=t.map.unproject(l);return[u.lng,u.lat]}var a=e.dragmode,o;o=function(l,u){if(u.isRect){var c=l.range={};c[t.id]=[i([u.xmin,u.ymin]),i([u.xmax,u.ymax])]}else{var f=l.lassoPoints={};f[t.id]=u.map(i)}};var s=t.dragOptions;t.dragOptions=IJ.extendDeep(s||{},{dragmode:e.dragmode,element:t.div,gd:n,plotinfo:{id:t.id,domain:e[t.id].domain,xaxis:t.xaxis,yaxis:t.yaxis,fillRangeItems:o},xaxes:[t.xaxis],yaxes:[t.yaxis],subplot:t.id}),r.off("click",t.onClickInPanHandler),LXt(a)||CXt(a)?(r.dragPan.disable(),r.on("zoomstart",t.clearOutline),t.dragOptions.prepFn=function(l,u,c){PXt(l,u,c,t.dragOptions,a)},kXt.init(t.dragOptions)):(r.dragPan.enable(),r.off("zoomstart",t.clearOutline),t.div.onmousedown=null,t.div.ontouchstart=null,t.div.removeEventListener("touchstart",t.div._ontouchstart),t.onClickInPanHandler=t.onClickInPanFn(t.dragOptions),r.on("click",t.onClickInPanHandler))};Uh.updateFramework=function(e){var t=e[this.id].domain,r=e._size,n=this.div.style;n.width=r.w*(t.x[1]-t.x[0])+"px",n.height=r.h*(t.y[1]-t.y[0])+"px",n.left=r.l+t.x[0]*r.w+"px",n.top=r.t+(1-t.y[1])*r.h+"px",this.xaxis._offset=r.l+t.x[0]*r.w,this.xaxis._length=r.w*(t.x[1]-t.x[0]),this.yaxis._offset=r.t+(1-t.y[1])*r.h,this.yaxis._length=r.h*(t.y[1]-t.y[0])};Uh.updateLayers=function(e){var t=e[this.id],r=t.layers,n=this.layerList,i;if(r.length!==n.length){for(i=0;i<n.length;i++)n[i].dispose();for(n=this.layerList=[],i=0;i<r.length;i++)n.push(FXt(this,i,r[i]))}else for(i=0;i<r.length;i++)n[i].update(r[i])};Uh.destroy=function(){this.map&&(this.map.remove(),this.map=null,this.container.removeChild(this.div))};Uh.toImage=function(){return this.map.stop(),this.map.getCanvas().toDataURL()};Uh.setOptions=function(e,t,r){for(var n in r)this.map[t](e,n,r[n])};Uh.getMapLayers=function(){return this.map.getStyle().layers};Uh.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}IJ.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)};Uh.project=function(e){return this.map.project(new PJ.LngLat(e[0],e[1]))};Uh.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()]}}};Uh.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};Uh.getViewEditsWithDerived=function(e){var t=this.id,r=this.getViewEdits(e);return r[t+"._derived"]=e._derived,r};function mje(e){var t={};return IJ.isPlainObject(e)?(t.id=e.id,t.style=e):typeof e=="string"?(t.id=e,ow.stylesMap[e]?t.style=ow.stylesMap[e]:t.style=e):(t.id=ow.styleValueDflt,t.style=zXt(ow.styleValueDflt)),t.transition={duration:0,delay:0},t}function zXt(e){return ow.styleUrlPrefix+e+"-"+ow.styleUrlSuffix}function RJ(e){return[e.lon,e.lat]}yje.exports=gje});var wje=ye((Cbr,bje)=>{"use strict";var DJ=Dr(),OXt=k_(),qXt=Yd(),xje=jk();bje.exports=function(t,r,n){OXt(t,r,n,{type:"map",attributes:xje,handleDefaults:BXt,partition:"y"})};function BXt(e,t,r){r("style"),r("center.lon"),r("center.lat"),r("zoom"),r("bearing"),r("pitch");var n=r("bounds.west"),i=r("bounds.east"),a=r("bounds.south"),o=r("bounds.north");(n===void 0||i===void 0||a===void 0||o===void 0)&&delete t.bounds,qXt(e,t,{name:"layers",handleItemDefaults:NXt}),t._input=e}function NXt(e,t){function r(l,u){return DJ.coerce(e,t,xje.layers,l,u)}var n=r("visible");if(n){var i=r("sourcetype"),a=i==="raster"||i==="image";r("source"),r("sourceattribution"),i==="vector"&&r("sourcelayer"),i==="image"&&r("coordinates");var o;a&&(o="raster");var s=r("type",o);a&&s!=="raster"&&(s=t.type="raster",DJ.log("Source types *raster* and *image* must drawn *raster* layer type.")),r("below"),r("color"),r("opacity"),r("minzoom"),r("maxzoom"),s==="circle"&&r("circle.radius"),s==="line"&&(r("line.width"),r("line.dash")),s==="fill"&&r("fill.outlinecolor"),s==="symbol"&&(r("symbol.icon"),r("symbol.iconsize"),r("symbol.text"),DJ.coerceFont(r,"symbol.textfont",void 0,{noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0}),r("symbol.textposition"),r("symbol.placement"))}}});var d7=ye(l0=>{"use strict";var h7=Dr(),Tje=h7.strTranslate,UXt=h7.strScale,VXt=Id().getSubplotCalcData,GXt=Wp(),HXt=Oa(),Aje=So(),jXt=ru(),WXt=_je(),Tx="map";l0.name=Tx;l0.attr="subplot";l0.idRoot=Tx;l0.idRegex=l0.attrRegex=h7.counterRegex(Tx);l0.attributes={subplot:{valType:"subplotid",dflt:"map",editType:"calc"}};l0.layoutAttributes=jk();l0.supplyLayoutDefaults=wje();l0.plot=function(t){for(var r=t._fullLayout,n=t.calcdata,i=r._subplots[Tx],a=0;a<i.length;a++){var o=i[a],s=VXt(n,Tx,o),l=r[o],u=l._subplot;u||(u=new WXt(t,o),r[o]._subplot=u),u.viewInitial||(u.viewInitial={center:h7.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:GXt.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=HXt.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=Aje.bBox(d.node()),_=n.w*(o.x[1]-o.x[0]);if(v.width>_/2){var b=f.split("|").join("<br>");d.text(b).attr("data-unformatted",b).call(jXt.convertToTspans,e),v=Aje.bBox(d.node())}d.attr("transform",Tje(-3,-v.height+8)),h.insert("rect",".static-attribution").attr({x:-v.width-6,y:-v.height-3,width:v.width+6,height:v.height+3,fill:"rgba(255, 255, 255, 0.75)"});var p=1;v.width+6>_&&(p=_/(v.width+6));var k=[n.l+n.w*o.x[1],n.t+n.h*(1-o.y[0])];h.attr("transform",Tje(k[0],k[1])+UXt(p))}};l0.updateFx=function(e){for(var t=e._fullLayout,r=t._subplots[Tx],n=0;n<r.length;n++){var i=t[r[n]]._subplot;i.updateFx(t)}}});var Mje=ye((Pbr,Sje)=>{"use strict";Sje.exports={attributes:n7(),supplyDefaults:qHe(),colorbar:$d(),formatLabels:AJ(),calc:pF(),plot:$He(),hoverPoints:u7().hoverPoints,eventData:rje(),selectPoints:nje(),styleOnSelect:function(e,t){if(t){var r=t[0].trace;r._glTrace.update(t)}},moduleType:"trace",name:"scattermap",basePlotModule:d7(),categories:["map","gl","symbols","showLegend","scatter-like"],meta:{}}});var kje=ye((Ibr,Eje)=>{"use strict";Eje.exports=Mje()});var FJ=ye((Rbr,Cje)=>{"use strict";var d1=t5(),XXt=Tu(),{hovertemplateAttrs:ZXt,templatefallbackAttrs:YXt}=Ll(),KXt=Gl(),Ax=Ao().extendFlat;Cje.exports=Ax({locations:{valType:"data_array",editType:"calc"},z:{valType:"data_array",editType:"calc"},geojson:{valType:"any",editType:"calc"},featureidkey:Ax({},d1.featureidkey,{}),below:{valType:"string",editType:"plot"},text:d1.text,hovertext:d1.hovertext,marker:{line:{color:Ax({},d1.marker.line.color,{editType:"plot"}),width:Ax({},d1.marker.line.width,{editType:"plot"}),editType:"calc"},opacity:Ax({},d1.marker.opacity,{editType:"plot"}),editType:"calc"},selected:{marker:{opacity:Ax({},d1.selected.marker.opacity,{editType:"plot"}),editType:"plot"},editType:"plot"},unselected:{marker:{opacity:Ax({},d1.unselected.marker.opacity,{editType:"plot"}),editType:"plot"},editType:"plot"},hoverinfo:d1.hoverinfo,hovertemplate:ZXt({},{keys:["properties"]}),hovertemplatefallback:YXt(),showlegend:Ax({},KXt.showlegend,{dflt:!1})},XXt("",{cLetter:"z",editTypeOverride:"calc"}))});var Pje=ye((Dbr,Lje)=>{"use strict";var Yk=Dr(),JXt=Qh(),$Xt=FJ();Lje.exports=function(t,r,n,i){function a(c,f){return Yk.coerce(t,r,$Xt,c,f)}var o=a("locations"),s=a("z"),l=a("geojson");if(!Yk.isArrayOrTypedArray(o)||!o.length||!Yk.isArrayOrTypedArray(s)||!s.length||!(typeof l=="string"&&l!==""||Yk.isPlainObject(l))){r.visible=!1;return}a("featureidkey"),r._length=Math.min(o.length,s.length),a("below"),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback");var u=a("marker.line.width");u&&a("marker.line.color"),a("marker.opacity"),JXt(t,r,i,a,{prefix:"",cLetter:"z"}),Yk.coerceSelectionMarkerOpacity(r,a)}});var zJ=ye((Fbr,Dje)=>{"use strict";var QXt=Eo(),v1=Dr(),eZt=tc(),tZt=So(),rZt=tx().makeBlank,Ije=ix();function iZt(e){var t=e[0].trace,r=t.visible===!0&&t._length!==0,n={layout:{visibility:"none"},paint:{}},i={layout:{visibility:"none"},paint:{}},a=t._opts={fill:n,line:i,geojson:rZt()};if(!r)return a;var o=Ije.extractTraceFeature(e);if(!o)return a;var s=eZt.makeColorScaleFuncFromTrace(t),l=t.marker,u=l.line||{},c;v1.isArrayOrTypedArray(l.opacity)&&(c=function(k){var E=k.mo;return QXt(E)?+v1.constrain(E,0,1):0});var f;v1.isArrayOrTypedArray(u.color)&&(f=function(k){return k.mlc});var h;v1.isArrayOrTypedArray(u.width)&&(h=function(k){return k.mlw});for(var d=0;d<e.length;d++){var v=e[d],_=v.fOut;if(_){var b=_.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=Ije.feature2polygons(_)}}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},Rje(e),a}function Rje(e){var t=e[0].trace,r=t._opts,n;if(t.selectedpoints){for(var i=tZt.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}Dje.exports={convert:iZt,convertOnSelect:Rje}});var Bje=ye((zbr,qje)=>{"use strict";var zje=zJ().convert,nZt=zJ().convertOnSelect,Fje=wx().traceLayerPrefix;function Oje(e,t){this.type="choroplethmap",this.subplot=e,this.uid=t,this.sourceId="source-"+t,this.layerList=[["fill",Fje+t+"-fill"],["line",Fje+t+"-line"]],this.below=null}var L5=Oje.prototype;L5.update=function(e){this._update(zje(e)),e[0].trace._glTrace=this};L5.updateOnSelect=function(e){this._update(nZt(e))};L5._update=function(e){var t=this.subplot,r=this.layerList,n=t.belowLookup["trace-"+this.uid];t.map.getSource(this.sourceId).setData(e.geojson),n!==this.below&&(this._removeLayers(),this._addLayers(e,n),this.below=n);for(var i=0;i<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)}};L5._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)}};L5._removeLayers=function(){for(var e=this.subplot.map,t=this.layerList,r=t.length-1;r>=0;r--)e.removeLayer(t[r][1])};L5.dispose=function(){var e=this.subplot.map;this._removeLayers(),e.removeSource(this.sourceId)};qje.exports=function(t,r){var n=r[0].trace,i=new Oje(t,n.uid),a=i.sourceId,o=zje(r),s=i.below=t.belowLookup["trace-"+n.uid];return t.map.addSource(a,{type:"geojson",data:o.geojson}),i._addLayers(o,s),r[0].trace._glTrace=i,i}});var Uje=ye((Obr,Nje)=>{"use strict";Nje.exports={attributes:FJ(),supplyDefaults:Pje(),colorbar:S_(),calc:zF(),plot:Bje(),hoverPoints:qF(),eventData:BF(),selectPoints:NF(),styleOnSelect:function(e,t){if(t){var r=t[0].trace;r._glTrace.updateOnSelect(t)}},getBelow:function(e,t){for(var r=t.getMapLayers(),n=r.length-2;n>=0;n--){var i=r[n].id;if(typeof i=="string"&&i.indexOf("water")===0){for(var a=n+1;a<r.length;a++)if(i=r[a].id,typeof i=="string"&&i.indexOf("plotly-")===-1)return i}}},moduleType:"trace",name:"choroplethmap",basePlotModule:d7(),categories:["map","gl","noOpacity","showLegend"],meta:{hr_name:"choropleth_map"}}});var Gje=ye((qbr,Vje)=>{"use strict";Vje.exports=Uje()});var qJ=ye((Bbr,jje)=>{"use strict";var aZt=Tu(),{hovertemplateAttrs:oZt,templatefallbackAttrs:sZt}=Ll(),Hje=Gl(),v7=n7(),OJ=Ao().extendFlat;jje.exports=OJ({lon:v7.lon,lat:v7.lat,z:{valType:"data_array",editType:"calc"},radius:{valType:"number",editType:"plot",arrayOk:!0,min:1,dflt:30},below:{valType:"string",editType:"plot"},text:v7.text,hovertext:v7.hovertext,hoverinfo:OJ({},Hje.hoverinfo,{flags:["lon","lat","z","text","name"]}),hovertemplate:oZt(),hovertemplatefallback:sZt(),showlegend:OJ({},Hje.showlegend,{dflt:!1})},aZt("",{cLetter:"z",editTypeOverride:"calc"}))});var Xje=ye((Nbr,Wje)=>{"use strict";var lZt=Dr(),uZt=Qh(),cZt=qJ();Wje.exports=function(t,r,n,i){function a(u,c){return lZt.coerce(t,r,cZt,u,c)}var o=a("lon")||[],s=a("lat")||[],l=Math.min(o.length,s.length);if(!l){r.visible=!1;return}r._length=l,a("z"),a("radius"),a("below"),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),uZt(t,r,i,a,{prefix:"",cLetter:"z"})}});var Kje=ye((Ubr,Yje)=>{"use strict";var BJ=Eo(),fZt=Dr().isArrayOrTypedArray,NJ=fs().BADNUM,hZt=gv(),Zje=Dr()._;Yje.exports=function(t,r){for(var n=r._length,i=new Array(n),a=r.z,o=fZt(a)&&a.length,s=0;s<n;s++){var l=i[s]={},u=r.lon[s],c=r.lat[s];if(l.lonlat=BJ(u)&&BJ(c)?[+u,+c]:[NJ,NJ],o){var f=a[s];l.z=BJ(f)?f:NJ}}return hZt(t,r,{vals:o?a:[0,1],containerStr:"",cLetter:"z"}),n&&(i[0].t={labels:{lat:Zje(t,"lat:")+" ",lon:Zje(t,"lon:")+" "}}),i}});var tWe=ye((Vbr,eWe)=>{"use strict";var dZt=Eo(),UJ=Dr(),Jje=ka(),$je=tc(),Qje=fs().BADNUM,vZt=tx().makeBlank;eWe.exports=function(t){var r=t[0].trace,n=r.visible===!0&&r._length!==0,i={layout:{visibility:"none"},paint:{}},a=r._opts={heatmap:i,geojson:vZt()};if(!n)return a;var o=[],s,l=r.z,u=r.radius,c=UJ.isArrayOrTypedArray(l)&&l.length,f=UJ.isArrayOrTypedArray(u);for(s=0;s<t.length;s++){var h=t[s],d=h.lonlat;if(d[0]!==Qje){var v={};if(c){var _=h.z;v.z=_!==Qje?_:0}f&&(v.r=dZt(u[s])&&u[s]>0?+u[s]:0),o.push({type:"Feature",geometry:{type:"Point",coordinates:d},properties:v})}}var b=$je.extractOpts(r),p=b.reversescale?$je.flipScale(b.colorscale):b.colorscale,k=p[0][1],E=Jje.opacity(k)<1?k:Jje.addOpacity(k,0),S=["interpolate",["linear"],["heatmap-density"],0,E];for(s=1;s<p.length;s++)S.push(p[s][0],p[s][1]);var L=["interpolate",["linear"],["get","z"],b.min,0,b.max,1];return UJ.extendFlat(a.heatmap.paint,{"heatmap-weight":c?L:1/(b.max-b.min),"heatmap-color":S,"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 aWe=ye((Gbr,nWe)=>{"use strict";var rWe=tWe(),pZt=wx().traceLayerPrefix;function iWe(e,t){this.type="densitymap",this.subplot=e,this.uid=t,this.sourceId="source-"+t,this.layerList=[["heatmap",pZt+t+"-heatmap"]],this.below=null}var p7=iWe.prototype;p7.update=function(e){var t=this.subplot,r=this.layerList,n=rWe(e),i=t.belowLookup["trace-"+this.uid];t.map.getSource(this.sourceId).setData(n.geojson),i!==this.below&&(this._removeLayers(),this._addLayers(n,i),this.below=i);for(var a=0;a<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)}};p7._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)}};p7._removeLayers=function(){for(var e=this.subplot.map,t=this.layerList,r=t.length-1;r>=0;r--)e.removeLayer(t[r][1])};p7.dispose=function(){var e=this.subplot.map;this._removeLayers(),e.removeSource(this.sourceId)};nWe.exports=function(t,r){var n=r[0].trace,i=new iWe(t,n.uid),a=i.sourceId,o=rWe(r),s=i.below=t.belowLookup["trace-"+n.uid];return t.map.addSource(a,{type:"geojson",data:o.geojson}),i._addLayers(o,s),i}});var sWe=ye((Hbr,oWe)=>{"use strict";var gZt=ho(),mZt=u7().hoverPoints,yZt=u7().getExtraText;oWe.exports=function(t,r,n){var i=mZt(t,r,n);if(i){var a=i[0],o=a.cd,s=o[0].trace,l=o[a.index];if(delete a.color,"z"in l){var u=a.subplot.mockAxis;a.z=l.z,a.zLabel=gZt.tickText(u,u.c2l(l.z),"hover").text}return a.extraText=yZt(s,l,o[0].t.labels),[a]}}});var uWe=ye((jbr,lWe)=>{"use strict";lWe.exports=function(t,r){return t.lon=r.lon,t.lat=r.lat,t.z=r.z,t}});var fWe=ye((Wbr,cWe)=>{"use strict";cWe.exports={attributes:qJ(),supplyDefaults:Xje(),colorbar:S_(),formatLabels:AJ(),calc:Kje(),plot:aWe(),hoverPoints:sWe(),eventData:uWe(),getBelow:function(e,t){for(var r=t.getMapLayers(),n=0;n<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:d7(),categories:["map","gl","showLegend"],meta:{hr_name:"density_map"}}});var dWe=ye((Xbr,hWe)=>{"use strict";hWe.exports=fWe()});var GJ=ye((Ybr,yWe)=>{"use strict";var _Zt=ec(),xZt=Gl(),vWe=Lh(),VJ=a3(),bZt=Cc().attributes,{hovertemplateAttrs:pWe,templatefallbackAttrs:gWe}=Ll(),wZt=Tu(),TZt=vl().templatedArray,AZt=df().descriptionOnlyNumbers,mWe=Ao().extendFlat,SZt=mc().overrideAll,Zbr=yWe.exports=SZt({hoverinfo:mWe({},xZt.hoverinfo,{flags:[],arrayOk:!1}),hoverlabel:VJ.hoverlabel,domain:bZt({name:"sankey",trace:!0}),orientation:{valType:"enumerated",values:["v","h"],dflt:"h"},valueformat:{valType:"string",dflt:".3s",description:AZt("value")},valuesuffix:{valType:"string",dflt:""},arrangement:{valType:"enumerated",values:["snap","perpendicular","freeform","fixed"],dflt:"snap"},textfont:_Zt({autoShadowDflt:!0}),customdata:void 0,node:{label:{valType:"data_array",dflt:[]},groups:{valType:"info_array",impliedEdits:{x:[],y:[]},dimensions:2,freeLength:!0,dflt:[],items:{valType:"number",editType:"calc"}},x:{valType:"data_array",dflt:[]},y:{valType:"data_array",dflt:[]},color:{valType:"color",arrayOk:!0},customdata:{valType:"data_array",editType:"calc"},line:{color:{valType:"color",dflt:vWe.defaultLine,arrayOk:!0},width:{valType:"number",min:0,dflt:.5,arrayOk:!0}},pad:{valType:"number",arrayOk:!1,min:0,dflt:20},thickness:{valType:"number",arrayOk:!1,min:1,dflt:20},hoverinfo:{valType:"enumerated",values:["all","none","skip"],dflt:"all"},hoverlabel:VJ.hoverlabel,hovertemplate:pWe({},{keys:["value","label"]}),hovertemplatefallback:gWe(),align:{valType:"enumerated",values:["justify","left","right","center"],dflt:"justify"}},link:{arrowlen:{valType:"number",min:0,dflt:0},label:{valType:"data_array",dflt:[]},color:{valType:"color",arrayOk:!0},hovercolor:{valType:"color",arrayOk:!0},customdata:{valType:"data_array",editType:"calc"},line:{color:{valType:"color",dflt:vWe.defaultLine,arrayOk:!0},width:{valType:"number",min:0,dflt:0,arrayOk:!0}},source:{valType:"data_array",dflt:[]},target:{valType:"data_array",dflt:[]},value:{valType:"data_array",dflt:[]},hoverinfo:{valType:"enumerated",values:["all","none","skip"],dflt:"all"},hoverlabel:VJ.hoverlabel,hovertemplate:pWe({},{keys:["value","label"]}),hovertemplatefallback:gWe(),colorscales:TZt("concentrationscales",{editType:"calc",label:{valType:"string",editType:"calc",dflt:""},cmax:{valType:"number",editType:"calc",dflt:1},cmin:{valType:"number",editType:"calc",dflt:0},colorscale:mWe(wZt().colorscale,{dflt:[[0,"white"],[1,"black"]]})})}},"calc","nested")});var TWe=ye((Kbr,wWe)=>{"use strict";var P5=Dr(),g7=GJ(),MZt=ka(),_We=cd(),EZt=Cc().defaults,xWe=hM(),bWe=vl(),kZt=Yd();wWe.exports=function(t,r,n,i){function a(S,L){return P5.coerce(t,r,g7,S,L)}var o=P5.extendDeep(i.hoverlabel,t.hoverlabel),s=t.node,l=bWe.newContainer(r,"node");function u(S,L){return P5.coerce(s,l,g7.node,S,L)}u("label"),u("groups"),u("x"),u("y"),u("pad"),u("thickness"),u("line.color"),u("line.width"),u("hoverinfo",t.hoverinfo),xWe(s,l,u,o),u("hovertemplate"),u("align");var c=i.colorway,f=function(S){return c[S%c.length]};u("color",l.label.map(function(S,L){return MZt.addOpacity(f(L),.8)})),u("customdata");var h=t.link||{},d=bWe.newContainer(r,"link");function v(S,L){return P5.coerce(h,d,g7.link,S,L)}v("label"),v("arrowlen"),v("source"),v("target"),v("value"),v("line.color"),v("line.width"),v("hoverinfo",t.hoverinfo),xWe(h,d,v,o),v("hovertemplate");var _=_We(i.paper_bgcolor).getLuminance()<.333,b=_?"rgba(255, 255, 255, 0.6)":"rgba(0, 0, 0, 0.2)",p=v("color",b);function k(S){var L=_We(S);if(!L.isValid())return S;var x=L.getAlpha();return x<=.8?L.setAlpha(x+.2):L=_?L.brighten():L.darken(),L.toRgbString()}v("hovercolor",Array.isArray(p)?p.map(k):k(p)),v("customdata"),kZt(h,d,{name:"colorscales",handleItemDefaults:CZt}),EZt(r,i,a),a("orientation"),a("valueformat"),a("valuesuffix");var E;l.x.length&&l.y.length&&(E="freeform"),a("arrangement",E),P5.coerceFont(a,"textfont",i.font,{autoShadowDflt:!0}),r._length=null};function CZt(e,t){function r(n,i){return P5.coerce(e,t,g7.link.colorscales,n,i)}r("label"),r("cmin"),r("cmax"),r("colorscale")}});var HJ=ye((Jbr,AWe)=>{"use strict";AWe.exports=LZt;function LZt(e){for(var t=e.length,r=new Array(t),n=new Array(t),i=new Array(t),a=new Array(t),o=new Array(t),s=new Array(t),l=0;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],k=[b];for(r[b]=n[b]=u,i[b]=!0,u+=1;k.length>0;){b=k[k.length-1];var E=e[b];if(a[b]<E.length){for(var S=a[b];S<E.length;++S){var L=E[S];if(r[L]<0){r[L]=n[L]=u,i[L]=!0,u+=1,p.push(L),k.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]=S}else{if(n[b]===r[b]){for(var x=[],C=[],M=0,S=p.length-1;S>=0;--S){var g=p[S];if(i[g]=!1,x.push(g),C.push(s[g]),M+=s[g].length,o[g]=c.length,g===b){p.length=S;break}}c.push(x);for(var P=new Array(M),S=0;S<C.length;S++)for(var T=0;T<C[S].length;T++)P[--M]=C[S][T];f.push(P)}k.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,k){return p-k}),d=[v[0]];for(var _=1;_<v.length;_++)v[_]!==v[_-1]&&d.push(v[_]);f[l]=d}}return{components:c,adjacencyList:f}}});var kWe=ye(($br,EWe)=>{"use strict";var PZt=HJ(),I5=Dr(),IZt=Jm().wrap,Kk=I5.isArrayOrTypedArray,SWe=I5.isIndex,MWe=tc();function RZt(e){var t=e.node,r=e.link,n=[],i=Kk(r.color),a=Kk(r.hovercolor),o=Kk(r.customdata),s={},l={},u=r.colorscales.length,c;for(c=0;c<u;c++){var f=r.colorscales[c],h=MWe.extractScale(f,{cLetter:"c"}),d=MWe.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 _=v+1;e.node._count=_;var b,p=e.node.groups,k={};for(c=0;c<p.length;c++){var E=p[c];for(b=0;b<E.length;b++){var S=E[b],L=_+c;k.hasOwnProperty(S)?I5.warn("Node "+S+" is already part of a group."):k[S]=L}}var x={source:[],target:[]};for(c=0;c<r.value.length;c++){var C=r.value[c],M=r.source[c],g=r.target[c];if(C>0&&SWe(M,_)&&SWe(g,_)&&!(k.hasOwnProperty(M)&&k.hasOwnProperty(g)&&k[M]===k[g])){k.hasOwnProperty(g)&&(g=k[g]),k.hasOwnProperty(M)&&(M=k[M]),M=+M,g=+g,s[M]=s[g]=!0;var P="";r.label&&r.label[c]&&(P=r.label[c]);var T=null;P&&l.hasOwnProperty(P)&&(T=l[P]),n.push({pointNumber:c,label:P,color:i?r.color[c]:r.color,hovercolor:a?r.hovercolor[c]:r.hovercolor,customdata:o?r.customdata[c]:r.customdata,concentrationscale:T,source:M,target:g,value:+C}),x.source.push(M),x.target.push(g)}}var z=_+p.length,O=Kk(t.color),V=Kk(t.customdata),G=[];for(c=0;c<z;c++)if(s[c]){var Z=t.label[c];G.push({group:c>_-1,childrenNodes:[],pointNumber:c,label:Z,color:O?t.color[c]:t.color,customdata:V?t.customdata[c]:t.customdata})}var j=!1;return DZt(z,x.source,x.target)&&(j=!0),{circular:j,links:n,nodes:G,groups:p,groupLookup:k}}function DZt(e,t,r){for(var n=I5.init2dArray(e,0),i=0;i<Math.min(t.length,r.length);i++)if(I5.isIndex(t[i],e)&&I5.isIndex(r[i],e)){if(t[i]===r[i])return!0;n[t[i]].push(r[i])}var a=PZt(n);return a.components.some(function(o){return o.length>1})}EWe.exports=function(t,r){var n=RZt(r);return IZt({circular:n.circular,_nodes:n.nodes,_links:n.links,_groups:n.groups,_groupLookup:n.groupLookup})}});var LWe=ye((m7,CWe)=>{(function(e,t){typeof m7=="object"&&typeof CWe!="undefined"?t(m7):(e=e||self,t(e.d3=e.d3||{}))})(m7,function(e){"use strict";function t(C){var M=+this._x.call(null,C),g=+this._y.call(null,C);return r(this.cover(M,g),M,g,C)}function r(C,M,g,P){if(isNaN(M)||isNaN(g))return C;var T,z=C._root,O={data:P},V=C._x0,G=C._y0,Z=C._x1,j=C._y1,N,H,te,oe,_e,Ee,Ce,me;if(!z)return C._root=O,C;for(;z.length;)if((_e=M>=(N=(V+Z)/2))?V=N:Z=N,(Ee=g>=(H=(G+j)/2))?G=H:j=H,T=z,!(z=z[Ce=Ee<<1|_e]))return T[Ce]=O,C;if(te=+C._x.call(null,z.data),oe=+C._y.call(null,z.data),M===te&&g===oe)return O.next=z,T?T[Ce]=O:C._root=O,C;do T=T?T[Ce]=new Array(4):C._root=new Array(4),(_e=M>=(N=(V+Z)/2))?V=N:Z=N,(Ee=g>=(H=(G+j)/2))?G=H:j=H;while((Ce=Ee<<1|_e)===(me=(oe>=H)<<1|te>=N));return T[me]=z,T[Ce]=O,C}function n(C){var M,g,P=C.length,T,z,O=new Array(P),V=new Array(P),G=1/0,Z=1/0,j=-1/0,N=-1/0;for(g=0;g<P;++g)isNaN(T=+this._x.call(null,M=C[g]))||isNaN(z=+this._y.call(null,M))||(O[g]=T,V[g]=z,T<G&&(G=T),T>j&&(j=T),z<Z&&(Z=z),z>N&&(N=z));if(G>j||Z>N)return this;for(this.cover(G,Z).cover(j,N),g=0;g<P;++g)r(this,O[g],V[g],C[g]);return this}function i(C,M){if(isNaN(C=+C)||isNaN(M=+M))return this;var g=this._x0,P=this._y0,T=this._x1,z=this._y1;if(isNaN(g))T=(g=Math.floor(C))+1,z=(P=Math.floor(M))+1;else{for(var O=T-g,V=this._root,G,Z;g>C||C>=T||P>M||M>=z;)switch(Z=(M<P)<<1|C<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 C=[];return this.visit(function(M){if(!M.length)do C.push(M.data);while(M=M.next)}),C}function o(C){return arguments.length?this.cover(+C[0][0],+C[0][1]).cover(+C[1][0],+C[1][1]):isNaN(this._x0)?void 0:[[this._x0,this._y0],[this._x1,this._y1]]}function s(C,M,g,P,T){this.node=C,this.x0=M,this.y0=g,this.x1=P,this.y1=T}function l(C,M,g){var P,T=this._x0,z=this._y0,O,V,G,Z,j=this._x1,N=this._y1,H=[],te=this._root,oe,_e;for(te&&H.push(new s(te,T,z,j,N)),g==null?g=1/0:(T=C-g,z=M-g,j=C+g,N=M+g,g*=g);oe=H.pop();)if(!(!(te=oe.node)||(O=oe.x0)>j||(V=oe.y0)>N||(G=oe.x1)<T||(Z=oe.y1)<z))if(te.length){var Ee=(O+G)/2,Ce=(V+Z)/2;H.push(new s(te[3],Ee,Ce,G,Z),new s(te[2],O,Ce,Ee,Z),new s(te[1],Ee,V,G,Ce),new s(te[0],O,V,Ee,Ce)),(_e=(M>=Ce)<<1|C>=Ee)&&(oe=H[H.length-1],H[H.length-1]=H[H.length-1-_e],H[H.length-1-_e]=oe)}else{var me=C-+this._x.call(null,te.data),ie=M-+this._y.call(null,te.data),Se=me*me+ie*ie;if(Se<g){var Le=Math.sqrt(g=Se);T=C-Le,z=M-Le,j=C+Le,N=M+Le,P=te.data}}return P}function u(C){if(isNaN(j=+this._x.call(null,C))||isNaN(N=+this._y.call(null,C)))return this;var M,g=this._root,P,T,z,O=this._x0,V=this._y0,G=this._x1,Z=this._y1,j,N,H,te,oe,_e,Ee,Ce;if(!g)return this;if(g.length)for(;;){if((oe=j>=(H=(O+G)/2))?O=H:G=H,(_e=N>=(te=(V+Z)/2))?V=te:Z=te,M=g,!(g=g[Ee=_e<<1|oe]))return this;if(!g.length)break;(M[Ee+1&3]||M[Ee+2&3]||M[Ee+3&3])&&(P=M,Ce=Ee)}for(;g.data!==C;)if(T=g,!(g=g.next))return this;return(z=g.next)&&delete g.next,T?(z?T.next=z:delete T.next,this):M?(z?M[Ee]=z:delete M[Ee],(g=M[0]||M[1]||M[2]||M[3])&&g===(M[3]||M[2]||M[1]||M[0])&&!g.length&&(P?P[Ce]=g:this._root=g),this):(this._root=z,this)}function c(C){for(var M=0,g=C.length;M<g;++M)this.remove(C[M]);return this}function f(){return this._root}function h(){var C=0;return this.visit(function(M){if(!M.length)do++C;while(M=M.next)}),C}function d(C){var M=[],g,P=this._root,T,z,O,V,G;for(P&&M.push(new s(P,this._x0,this._y0,this._x1,this._y1));g=M.pop();)if(!C(P=g.node,z=g.x0,O=g.y0,V=g.x1,G=g.y1)&&P.length){var Z=(z+V)/2,j=(O+G)/2;(T=P[3])&&M.push(new s(T,Z,j,V,G)),(T=P[2])&&M.push(new s(T,z,j,Z,G)),(T=P[1])&&M.push(new s(T,Z,O,V,j)),(T=P[0])&&M.push(new s(T,z,O,Z,j))}return this}function v(C){var M=[],g=[],P;for(this._root&&M.push(new s(this._root,this._x0,this._y0,this._x1,this._y1));P=M.pop();){var T=P.node;if(T.length){var z,O=P.x0,V=P.y0,G=P.x1,Z=P.y1,j=(O+G)/2,N=(V+Z)/2;(z=T[0])&&M.push(new s(z,O,V,j,N)),(z=T[1])&&M.push(new s(z,j,V,G,N)),(z=T[2])&&M.push(new s(z,O,N,j,Z)),(z=T[3])&&M.push(new s(z,j,N,G,Z))}g.push(P)}for(;P=g.pop();)C(P.node,P.x0,P.y0,P.x1,P.y1);return this}function _(C){return C[0]}function b(C){return arguments.length?(this._x=C,this):this._x}function p(C){return C[1]}function k(C){return arguments.length?(this._y=C,this):this._y}function E(C,M,g){var P=new S(M==null?_:M,g==null?p:g,NaN,NaN,NaN,NaN);return C==null?P:P.addAll(C)}function S(C,M,g,P,T,z){this._x=C,this._y=M,this._x0=g,this._y0=P,this._x1=T,this._y1=z,this._root=void 0}function L(C){for(var M={data:C.data},g=M;C=C.next;)g=g.next={data:C.data};return M}var x=E.prototype=S.prototype;x.copy=function(){var C=new S(this._x,this._y,this._x0,this._y0,this._x1,this._y1),M=this._root,g,P;if(!M)return C;if(!M.length)return C._root=L(M),C;for(g=[{source:M,target:C._root=new Array(4)}];M=g.pop();)for(var T=0;T<4;++T)(P=M.source[T])&&(P.length?g.push({source:P,target:M.target[T]=new Array(4)}):M.target[T]=L(P));return C},x.add=t,x.addAll=n,x.cover=i,x.data=a,x.extent=o,x.find=l,x.remove=u,x.removeAll=c,x.root=f,x.size=h,x.visit=d,x.visitAfter=v,x.x=b,x.y=k,e.quadtree=E,Object.defineProperty(e,"__esModule",{value:!0})})});var _7=ye((y7,PWe)=>{(function(e,t){t(typeof y7=="object"&&typeof PWe!="undefined"?y7:e.d3=e.d3||{})})(y7,function(e){"use strict";var t="$";function r(){}r.prototype=n.prototype={constructor:r,has:function(_){return t+_ in this},get:function(_){return this[t+_]},set:function(_,b){return this[t+_]=b,this},remove:function(_){var b=t+_;return b in this&&delete this[b]},clear:function(){for(var _ in this)_[0]===t&&delete this[_]},keys:function(){var _=[];for(var b in this)b[0]===t&&_.push(b.slice(1));return _},values:function(){var _=[];for(var b in this)b[0]===t&&_.push(this[b]);return _},entries:function(){var _=[];for(var b in this)b[0]===t&&_.push({key:b.slice(1),value:this[b]});return _},size:function(){var _=0;for(var b in this)b[0]===t&&++_;return _},empty:function(){for(var _ in this)if(_[0]===t)return!1;return!0},each:function(_){for(var b in this)b[0]===t&&_(this[b],b.slice(1),this)}};function n(_,b){var p=new r;if(_ instanceof r)_.each(function(x,C){p.set(C,x)});else if(Array.isArray(_)){var k=-1,E=_.length,S;if(b==null)for(;++k<E;)p.set(k,_[k]);else for(;++k<E;)p.set(b(S=_[k],k,_),S)}else if(_)for(var L in _)p.set(L,_[L]);return p}function i(){var _=[],b=[],p,k,E;function S(x,C,M,g){if(C>=_.length)return p!=null&&x.sort(p),k!=null?k(x):x;for(var P=-1,T=x.length,z=_[C++],O,V,G=n(),Z,j=M();++P<T;)(Z=G.get(O=z(V=x[P])+""))?Z.push(V):G.set(O,[V]);return G.each(function(N,H){g(j,H,S(N,C,M,g))}),j}function L(x,C){if(++C>_.length)return x;var M,g=b[C-1];return k!=null&&C>=_.length?M=x.entries():(M=[],x.each(function(P,T){M.push({key:T,values:L(P,C)})})),g!=null?M.sort(function(P,T){return g(P.key,T.key)}):M}return E={object:function(x){return S(x,0,a,o)},map:function(x){return S(x,0,s,l)},entries:function(x){return L(S(x,0,s,l),0)},key:function(x){return _.push(x),E},sortKeys:function(x){return b[_.length-1]=x,E},sortValues:function(x){return p=x,E},rollup:function(x){return k=x,E}}}function a(){return{}}function o(_,b,p){_[b]=p}function s(){return n()}function l(_,b,p){_.set(b,p)}function u(){}var c=n.prototype;u.prototype=f.prototype={constructor:u,has:c.has,add:function(_){return _+="",this[t+_]=_,this},remove:c.remove,clear:c.clear,values:c.keys,size:c.size,empty:c.empty,each:c.each};function f(_,b){var p=new u;if(_ instanceof u)_.each(function(S){p.add(S)});else if(_){var k=-1,E=_.length;if(b==null)for(;++k<E;)p.add(_[k]);else for(;++k<E;)p.add(b(_[k],k,_))}return p}function h(_){var b=[];for(var p in _)b.push(p);return b}function d(_){var b=[];for(var p in _)b.push(_[p]);return b}function v(_){var b=[];for(var p in _)b.push({key:p,value:_[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 RWe=ye((x7,IWe)=>{(function(e,t){typeof x7=="object"&&typeof IWe!="undefined"?t(x7):(e=e||self,t(e.d3=e.d3||{}))})(x7,function(e){"use strict";var t={value:function(){}};function r(){for(var s=0,l=arguments.length,u={},c;s<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 FWe=ye((b7,DWe)=>{(function(e,t){typeof b7=="object"&&typeof DWe!="undefined"?t(b7):(e=e||self,t(e.d3=e.d3||{}))})(b7,function(e){"use strict";var t=0,r=0,n=0,i=1e3,a,o,s=0,l=0,u=0,c=typeof performance=="object"&&performance.now?performance:Date,f=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(C){setTimeout(C,17)};function h(){return l||(f(d),l=c.now()+u)}function d(){l=0}function v(){this._call=this._time=this._next=null}v.prototype=_.prototype={constructor:v,restart:function(C,M,g){if(typeof C!="function")throw new TypeError("callback is not a function");g=(g==null?h():+g)+(M==null?0:+M),!this._next&&o!==this&&(o?o._next=this:a=this,o=this),this._call=C,this._time=g,S()},stop:function(){this._call&&(this._call=null,this._time=1/0,S())}};function _(C,M,g){var P=new v;return P.restart(C,M,g),P}function b(){h(),++t;for(var C=a,M;C;)(M=l-C._time)>=0&&C._call.call(null,M),C=C._next;--t}function p(){l=(s=c.now())+u,t=r=0;try{b()}finally{t=0,E(),l=0}}function k(){var C=c.now(),M=C-s;M>i&&(u-=M,s=C)}function E(){for(var C,M=a,g,P=1/0;M;)M._call?(P>M._time&&(P=M._time),C=M,M=M._next):(g=M._next,M._next=null,M=C?C._next=g:a=g);o=C,S(P)}function S(C){if(!t){r&&(r=clearTimeout(r));var M=C-l;M>24?(C<1/0&&(r=setTimeout(p,C-c.now()-u)),n&&(n=clearInterval(n))):(n||(s=c.now(),n=setInterval(k,i)),t=1,f(p))}}function L(C,M,g){var P=new v;return M=M==null?0:+M,P.restart(function(T){P.stop(),C(T+M)},M,g),P}function x(C,M,g){var P=new v,T=M;return M==null?(P.restart(C,M,g),P):(M=+M,g=g==null?h():+g,P.restart(function z(O){O+=T,P.restart(z,T+=M,g),C(O)},M,g),P)}e.interval=x,e.now=h,e.timeout=L,e.timer=_,e.timerFlush=b,Object.defineProperty(e,"__esModule",{value:!0})})});var OWe=ye((w7,zWe)=>{(function(e,t){typeof w7=="object"&&typeof zWe!="undefined"?t(w7,LWe(),_7(),RWe(),FWe()):t(e.d3=e.d3||{},e.d3,e.d3,e.d3,e.d3)})(w7,function(e,t,r,n,i){"use strict";function a(C,M){var g;C==null&&(C=0),M==null&&(M=0);function P(){var T,z=g.length,O,V=0,G=0;for(T=0;T<z;++T)O=g[T],V+=O.x,G+=O.y;for(V=V/z-C,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?(C=+T,P):C},P.y=function(T){return arguments.length?(M=+T,P):M},P}function o(C){return function(){return C}}function s(){return(Math.random()-.5)*1e-6}function l(C){return C.x+C.vx}function u(C){return C.y+C.vy}function c(C){var M,g,P=1,T=1;typeof C!="function"&&(C=o(C==null?1:+C));function z(){for(var G,Z=M.length,j,N,H,te,oe,_e,Ee=0;Ee<T;++Ee)for(j=t.quadtree(M,l,u).visitAfter(O),G=0;G<Z;++G)N=M[G],oe=g[N.index],_e=oe*oe,H=N.x+N.vx,te=N.y+N.vy,j.visit(Ce);function Ce(me,ie,Se,Le,Ae){var Fe=me.data,Pe=me.r,ge=oe+Pe;if(Fe){if(Fe.index>N.index){var Re=H-Fe.x-Fe.vx,ce=te-Fe.y-Fe.vy,Ze=Re*Re+ce*ce;Ze<ge*ge&&(Re===0&&(Re=s(),Ze+=Re*Re),ce===0&&(ce=s(),Ze+=ce*ce),Ze=(ge-(Ze=Math.sqrt(Ze)))/Ze*P,N.vx+=(Re*=Ze)*(ge=(Pe*=Pe)/(_e+Pe)),N.vy+=(ce*=Ze)*ge,Fe.vx-=Re*(ge=1-ge),Fe.vy-=ce*ge)}return}return ie>H+ge||Le<H-ge||Se>te+ge||Ae<te-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,j;for(g=new Array(Z),G=0;G<Z;++G)j=M[G],g[j.index]=+C(j,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?(C=typeof G=="function"?G:o(+G),V(),z):C},z}function f(C){return C.index}function h(C,M){var g=C.get(M);if(!g)throw new Error("missing: "+M);return g}function d(C){var M=f,g=j,P,T=o(30),z,O,V,G,Z=1;C==null&&(C=[]);function j(_e){return 1/Math.min(V[_e.source.index],V[_e.target.index])}function N(_e){for(var Ee=0,Ce=C.length;Ee<Z;++Ee)for(var me=0,ie,Se,Le,Ae,Fe,Pe,ge;me<Ce;++me)ie=C[me],Se=ie.source,Le=ie.target,Ae=Le.x+Le.vx-Se.x-Se.vx||s(),Fe=Le.y+Le.vy-Se.y-Se.vy||s(),Pe=Math.sqrt(Ae*Ae+Fe*Fe),Pe=(Pe-z[me])/Pe*_e*P[me],Ae*=Pe,Fe*=Pe,Le.vx-=Ae*(ge=G[me]),Le.vy-=Fe*ge,Se.vx+=Ae*(ge=1-ge),Se.vy+=Fe*ge}function H(){if(O){var _e,Ee=O.length,Ce=C.length,me=r.map(O,M),ie;for(_e=0,V=new Array(Ee);_e<Ce;++_e)ie=C[_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(Ce);_e<Ce;++_e)ie=C[_e],G[_e]=V[ie.source.index]/(V[ie.source.index]+V[ie.target.index]);P=new Array(Ce),te(),z=new Array(Ce),oe()}}function te(){if(O)for(var _e=0,Ee=C.length;_e<Ee;++_e)P[_e]=+g(C[_e],_e,C)}function oe(){if(O)for(var _e=0,Ee=C.length;_e<Ee;++_e)z[_e]=+T(C[_e],_e,C)}return N.initialize=function(_e){O=_e,H()},N.links=function(_e){return arguments.length?(C=_e,H(),N):C},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),te(),N):g},N.distance=function(_e){return arguments.length?(T=typeof _e=="function"?_e:o(+_e),oe(),N):T},N}function v(C){return C.x}function _(C){return C.y}var b=10,p=Math.PI*(3-Math.sqrt(5));function k(C){var M,g=1,P=.001,T=1-Math.pow(P,1/300),z=0,O=.6,V=r.map(),G=i.timer(j),Z=n.dispatch("tick","end");C==null&&(C=[]);function j(){N(),Z.call("tick",M),g<P&&(G.stop(),Z.call("end",M))}function N(oe){var _e,Ee=C.length,Ce;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<Ee;++_e)Ce=C[_e],Ce.fx==null?Ce.x+=Ce.vx*=O:(Ce.x=Ce.fx,Ce.vx=0),Ce.fy==null?Ce.y+=Ce.vy*=O:(Ce.y=Ce.fy,Ce.vy=0);return M}function H(){for(var oe=0,_e=C.length,Ee;oe<_e;++oe){if(Ee=C[oe],Ee.index=oe,Ee.fx!=null&&(Ee.x=Ee.fx),Ee.fy!=null&&(Ee.y=Ee.fy),isNaN(Ee.x)||isNaN(Ee.y)){var Ce=b*Math.sqrt(oe),me=oe*p;Ee.x=Ce*Math.cos(me),Ee.y=Ce*Math.sin(me)}(isNaN(Ee.vx)||isNaN(Ee.vy))&&(Ee.vx=Ee.vy=0)}}function te(oe){return oe.initialize&&oe.initialize(C),oe}return H(),M={tick:N,restart:function(){return G.restart(j),M},stop:function(){return G.stop(),M},nodes:function(oe){return arguments.length?(C=oe,H(),V.each(te),M):C},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,te(_e)),M):V.get(oe)},find:function(oe,_e,Ee){var Ce=0,me=C.length,ie,Se,Le,Ae,Fe;for(Ee==null?Ee=1/0:Ee*=Ee,Ce=0;Ce<me;++Ce)Ae=C[Ce],ie=oe-Ae.x,Se=_e-Ae.y,Le=ie*ie+Se*Se,Le<Ee&&(Fe=Ae,Ee=Le);return Fe},on:function(oe,_e){return arguments.length>1?(Z.on(oe,_e),M):Z.on(oe)}}}function E(){var C,M,g,P=o(-30),T,z=1,O=1/0,V=.81;function G(H){var te,oe=C.length,_e=t.quadtree(C,v,_).visitAfter(j);for(g=H,te=0;te<oe;++te)M=C[te],_e.visit(N)}function Z(){if(C){var H,te=C.length,oe;for(T=new Array(te),H=0;H<te;++H)oe=C[H],T[oe.index]=+P(oe,H,C)}}function j(H){var te=0,oe,_e,Ee=0,Ce,me,ie;if(H.length){for(Ce=me=ie=0;ie<4;++ie)(oe=H[ie])&&(_e=Math.abs(oe.value))&&(te+=oe.value,Ee+=_e,Ce+=_e*oe.x,me+=_e*oe.y);H.x=Ce/Ee,H.y=me/Ee}else{oe=H,oe.x=oe.data.x,oe.y=oe.data.y;do te+=T[oe.data.index];while(oe=oe.next)}H.value=te}function N(H,te,oe,_e){if(!H.value)return!0;var Ee=H.x-M.x,Ce=H.y-M.y,me=_e-te,ie=Ee*Ee+Ce*Ce;if(me*me/V<ie)return ie<O&&(Ee===0&&(Ee=s(),ie+=Ee*Ee),Ce===0&&(Ce=s(),ie+=Ce*Ce),ie<z&&(ie=Math.sqrt(z*ie)),M.vx+=Ee*H.value*g/ie,M.vy+=Ce*H.value*g/ie),!0;if(H.length||ie>=O)return;(H.data!==M||H.next)&&(Ee===0&&(Ee=s(),ie+=Ee*Ee),Ce===0&&(Ce=s(),ie+=Ce*Ce),ie<z&&(ie=Math.sqrt(z*ie)));do H.data!==M&&(me=T[H.data.index]*g/ie,M.vx+=Ee*me,M.vy+=Ce*me);while(H=H.next)}return G.initialize=function(H){C=H,Z()},G.strength=function(H){return arguments.length?(P=typeof H=="function"?H:o(+H),Z(),G):P},G.distanceMin=function(H){return arguments.length?(z=H*H,G):Math.sqrt(z)},G.distanceMax=function(H){return arguments.length?(O=H*H,G):Math.sqrt(O)},G.theta=function(H){return arguments.length?(V=H*H,G):Math.sqrt(V)},G}function S(C,M,g){var P,T=o(.1),z,O;typeof C!="function"&&(C=o(+C)),M==null&&(M=0),g==null&&(g=0);function V(Z){for(var j=0,N=P.length;j<N;++j){var H=P[j],te=H.x-M||1e-6,oe=H.y-g||1e-6,_e=Math.sqrt(te*te+oe*oe),Ee=(O[j]-_e)*z[j]*Z/_e;H.vx+=te*Ee,H.vy+=oe*Ee}}function G(){if(P){var Z,j=P.length;for(z=new Array(j),O=new Array(j),Z=0;Z<j;++Z)O[Z]=+C(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?(C=typeof Z=="function"?Z:o(+Z),G(),V):C},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(C){var M=o(.1),g,P,T;typeof C!="function"&&(C=o(C==null?0:+C));function z(V){for(var G=0,Z=g.length,j;G<Z;++G)j=g[G],j.vx+=(T[G]-j.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]=+C(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?(C=typeof V=="function"?V:o(+V),O(),z):C},z}function x(C){var M=o(.1),g,P,T;typeof C!="function"&&(C=o(C==null?0:+C));function z(V){for(var G=0,Z=g.length,j;G<Z;++G)j=g[G],j.vy+=(T[G]-j.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]=+C(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?(C=typeof V=="function"?V:o(+V),O(),z):C},z}e.forceCenter=a,e.forceCollide=c,e.forceLink=d,e.forceManyBody=E,e.forceRadial=S,e.forceSimulation=k,e.forceX=L,e.forceY=x,Object.defineProperty(e,"__esModule",{value:!0})})});var BWe=ye((T7,qWe)=>{(function(e,t){typeof T7=="object"&&typeof qWe!="undefined"?t(T7):(e=e||self,t(e.d3=e.d3||{}))})(T7,function(e){"use strict";var t=Math.PI,r=2*t,n=1e-6,i=r-n;function a(){this._x0=this._y0=this._x1=this._y1=null,this._=""}function o(){return new a}a.prototype=o.prototype={constructor:a,moveTo:function(s,l){this._+="M"+(this._x0=this._x1=+s)+","+(this._y0=this._y1=+l)},closePath:function(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._+="Z")},lineTo:function(s,l){this._+="L"+(this._x1=+s)+","+(this._y1=+l)},quadraticCurveTo:function(s,l,u,c){this._+="Q"+ +s+","+ +l+","+(this._x1=+u)+","+(this._y1=+c)},bezierCurveTo:function(s,l,u,c,f,h){this._+="C"+ +s+","+ +l+","+ +u+","+ +c+","+(this._x1=+f)+","+(this._y1=+h)},arcTo:function(s,l,u,c,f){s=+s,l=+l,u=+u,c=+c,f=+f;var h=this._x1,d=this._y1,v=u-s,_=c-l,b=h-s,p=d-l,k=b*b+p*p;if(f<0)throw new Error("negative radius: "+f);if(this._x1===null)this._+="M"+(this._x1=s)+","+(this._y1=l);else if(k>n)if(!(Math.abs(p*v-_*b)>n)||!f)this._+="L"+(this._x1=s)+","+(this._y1=l);else{var E=u-h,S=c-d,L=v*v+_*_,x=E*E+S*S,C=Math.sqrt(L),M=Math.sqrt(k),g=f*Math.tan((t-Math.acos((L+k-x)/(2*C*M)))/2),P=g/M,T=g/C;Math.abs(P-1)>n&&(this._+="L"+(s+P*b)+","+(l+P*p)),this._+="A"+f+","+f+",0,0,"+ +(p*E>b*S)+","+(this._x1=s+T*v)+","+(this._y1=l+T*_)}},arc:function(s,l,u,c,f,h){s=+s,l=+l,u=+u,h=!!h;var d=u*Math.cos(c),v=u*Math.sin(c),_=s+d,b=l+v,p=1^h,k=h?c-f:f-c;if(u<0)throw new Error("negative radius: "+u);this._x1===null?this._+="M"+_+","+b:(Math.abs(this._x1-_)>n||Math.abs(this._y1-b)>n)&&(this._+="L"+_+","+b),u&&(k<0&&(k=k%r+r),k>i?this._+="A"+u+","+u+",0,1,"+p+","+(s-d)+","+(l-v)+"A"+u+","+u+",0,1,"+p+","+(this._x1=_)+","+(this._y1=b):k>n&&(this._+="A"+u+","+u+",0,"+ +(k>=t)+","+p+","+(this._x1=s+u*Math.cos(f))+","+(this._y1=l+u*Math.sin(f))))},rect:function(s,l,u,c){this._+="M"+(this._x0=this._x1=+s)+","+(this._y0=this._y1=+l)+"h"+ +u+"v"+ +c+"h"+-u+"Z"},toString:function(){return this._}},e.path=o,Object.defineProperty(e,"__esModule",{value:!0})})});var jJ=ye((A7,NWe)=>{(function(e,t){typeof A7=="object"&&typeof NWe!="undefined"?t(A7,BWe()):(e=e||self,t(e.d3=e.d3||{},e.d3))})(A7,function(e,t){"use strict";function r(Mt){return function(){return Mt}}var n=Math.abs,i=Math.atan2,a=Math.cos,o=Math.max,s=Math.min,l=Math.sin,u=Math.sqrt,c=1e-12,f=Math.PI,h=f/2,d=2*f;function v(Mt){return Mt>1?0:Mt<-1?f:Math.acos(Mt)}function _(Mt){return Mt>=1?h:Mt<=-1?-h:Math.asin(Mt)}function b(Mt){return Mt.innerRadius}function p(Mt){return Mt.outerRadius}function k(Mt){return Mt.startAngle}function E(Mt){return Mt.endAngle}function S(Mt){return Mt&&Mt.padAngle}function L(Mt,kr,Jr,vi,hn,An,Mn,Li){var _n=Jr-Mt,ya=vi-kr,Jn=Mn-hn,Ma=Li-An,_o=Ma*_n-Jn*ya;if(!(_o*_o<c))return _o=(Jn*(kr-An)-Ma*(Mt-hn))/_o,[Mt+_o*_n,kr+_o*ya]}function x(Mt,kr,Jr,vi,hn,An,Mn){var Li=Mt-Jr,_n=kr-vi,ya=(Mn?An:-An)/u(Li*Li+_n*_n),Jn=ya*_n,Ma=-ya*Li,_o=Mt+Jn,No=kr+Ma,po=Jr+Jn,Lo=vi+Ma,ko=(_o+po)/2,Ds=(No+Lo)/2,Fs=po-_o,ll=Lo-No,ul=Fs*Fs+ll*ll,zl=hn-An,us=_o*Lo-po*No,il=(ll<0?-1:1)*u(o(0,zl*zl*ul-us*us)),As=(us*ll-Fs*il)/ul,cl=(-us*Fs-ll*il)/ul,Ks=(us*ll+Fs*il)/ul,zs=(-us*Fs+ll*il)/ul,Io=As-ko,ls=cl-Ds,Zl=Ks-ko,Su=zs-Ds;return Io*Io+ls*ls>Zl*Zl+Su*Su&&(As=Ks,cl=zs),{cx:As,cy:cl,x01:-Jn,y01:-Ma,x11:As*(hn/zl-1),y11:cl*(hn/zl-1)}}function C(){var Mt=b,kr=p,Jr=r(0),vi=null,hn=k,An=E,Mn=S,Li=null;function _n(){var ya,Jn,Ma=+Mt.apply(this,arguments),_o=+kr.apply(this,arguments),No=hn.apply(this,arguments)-h,po=An.apply(this,arguments)-h,Lo=n(po-No),ko=po>No;if(Li||(Li=ya=t.path()),_o<Ma&&(Jn=_o,_o=Ma,Ma=Jn),!(_o>c))Li.moveTo(0,0);else if(Lo>d-c)Li.moveTo(_o*a(No),_o*l(No)),Li.arc(0,0,_o,No,po,!ko),Ma>c&&(Li.moveTo(Ma*a(po),Ma*l(po)),Li.arc(0,0,Ma,po,No,ko));else{var Ds=No,Fs=po,ll=No,ul=po,zl=Lo,us=Lo,il=Mn.apply(this,arguments)/2,As=il>c&&(vi?+vi.apply(this,arguments):u(Ma*Ma+_o*_o)),cl=s(n(_o-Ma)/2,+Jr.apply(this,arguments)),Ks=cl,zs=cl,Io,ls;if(As>c){var Zl=_(As/Ma*l(il)),Su=_(As/_o*l(il));(zl-=Zl*2)>c?(Zl*=ko?1:-1,ll+=Zl,ul-=Zl):(zl=0,ll=ul=(No+po)/2),(us-=Su*2)>c?(Su*=ko?1:-1,Ds+=Su,Fs-=Su):(us=0,Ds=Fs=(No+po)/2)}var nc=_o*a(Ds),bs=_o*l(Ds),Rn=Ma*a(ul),_a=Ma*l(ul);if(cl>c){var Vu=_o*a(Fs),Ol=_o*l(Fs),xo=Ma*a(ll),Yl=Ma*l(ll),Ns;if(Lo<f&&(Ns=L(nc,bs,xo,Yl,Vu,Ol,Rn,_a))){var Hl=nc-Ns[0],ac=bs-Ns[1],aa=Vu-Ns[0],Oo=Ol-Ns[1],qo=1/l(v((Hl*aa+ac*Oo)/(u(Hl*Hl+ac*ac)*u(aa*aa+Oo*Oo)))/2),ql=u(Ns[0]*Ns[0]+Ns[1]*Ns[1]);Ks=s(cl,(Ma-ql)/(qo-1)),zs=s(cl,(_o-ql)/(qo+1))}}us>c?zs>c?(Io=x(xo,Yl,nc,bs,_o,zs,ko),ls=x(Vu,Ol,Rn,_a,_o,zs,ko),Li.moveTo(Io.cx+Io.x01,Io.cy+Io.y01),zs<cl?Li.arc(Io.cx,Io.cy,zs,i(Io.y01,Io.x01),i(ls.y01,ls.x01),!ko):(Li.arc(Io.cx,Io.cy,zs,i(Io.y01,Io.x01),i(Io.y11,Io.x11),!ko),Li.arc(0,0,_o,i(Io.cy+Io.y11,Io.cx+Io.x11),i(ls.cy+ls.y11,ls.cx+ls.x11),!ko),Li.arc(ls.cx,ls.cy,zs,i(ls.y11,ls.x11),i(ls.y01,ls.x01),!ko))):(Li.moveTo(nc,bs),Li.arc(0,0,_o,Ds,Fs,!ko)):Li.moveTo(nc,bs),!(Ma>c)||!(zl>c)?Li.lineTo(Rn,_a):Ks>c?(Io=x(Rn,_a,Vu,Ol,Ma,-Ks,ko),ls=x(nc,bs,xo,Yl,Ma,-Ks,ko),Li.lineTo(Io.cx+Io.x01,Io.cy+Io.y01),Ks<cl?Li.arc(Io.cx,Io.cy,Ks,i(Io.y01,Io.x01),i(ls.y01,ls.x01),!ko):(Li.arc(Io.cx,Io.cy,Ks,i(Io.y01,Io.x01),i(Io.y11,Io.x11),!ko),Li.arc(0,0,Ma,i(Io.cy+Io.y11,Io.cx+Io.x11),i(ls.cy+ls.y11,ls.cx+ls.x11),ko),Li.arc(ls.cx,ls.cy,Ks,i(ls.y11,ls.x11),i(ls.y01,ls.x01),!ko))):Li.arc(0,0,Ma,ul,ll,ko)}if(Li.closePath(),ya)return Li=null,ya+""||null}return _n.centroid=function(){var ya=(+Mt.apply(this,arguments)+ +kr.apply(this,arguments))/2,Jn=(+hn.apply(this,arguments)+ +An.apply(this,arguments))/2-f/2;return[a(Jn)*ya,l(Jn)*ya]},_n.innerRadius=function(ya){return arguments.length?(Mt=typeof ya=="function"?ya:r(+ya),_n):Mt},_n.outerRadius=function(ya){return arguments.length?(kr=typeof ya=="function"?ya:r(+ya),_n):kr},_n.cornerRadius=function(ya){return arguments.length?(Jr=typeof ya=="function"?ya:r(+ya),_n):Jr},_n.padRadius=function(ya){return arguments.length?(vi=ya==null?null:typeof ya=="function"?ya:r(+ya),_n):vi},_n.startAngle=function(ya){return arguments.length?(hn=typeof ya=="function"?ya:r(+ya),_n):hn},_n.endAngle=function(ya){return arguments.length?(An=typeof ya=="function"?ya:r(+ya),_n):An},_n.padAngle=function(ya){return arguments.length?(Mn=typeof ya=="function"?ya:r(+ya),_n):Mn},_n.context=function(ya){return arguments.length?(Li=ya==null?null:ya,_n):Li},_n}function M(Mt){this._context=Mt}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(Mt,kr){switch(Mt=+Mt,kr=+kr,this._point){case 0:this._point=1,this._line?this._context.lineTo(Mt,kr):this._context.moveTo(Mt,kr);break;case 1:this._point=2;default:this._context.lineTo(Mt,kr);break}}};function g(Mt){return new M(Mt)}function P(Mt){return Mt[0]}function T(Mt){return Mt[1]}function z(){var Mt=P,kr=T,Jr=r(!0),vi=null,hn=g,An=null;function Mn(Li){var _n,ya=Li.length,Jn,Ma=!1,_o;for(vi==null&&(An=hn(_o=t.path())),_n=0;_n<=ya;++_n)!(_n<ya&&Jr(Jn=Li[_n],_n,Li))===Ma&&((Ma=!Ma)?An.lineStart():An.lineEnd()),Ma&&An.point(+Mt(Jn,_n,Li),+kr(Jn,_n,Li));if(_o)return An=null,_o+""||null}return Mn.x=function(Li){return arguments.length?(Mt=typeof Li=="function"?Li:r(+Li),Mn):Mt},Mn.y=function(Li){return arguments.length?(kr=typeof Li=="function"?Li:r(+Li),Mn):kr},Mn.defined=function(Li){return arguments.length?(Jr=typeof Li=="function"?Li:r(!!Li),Mn):Jr},Mn.curve=function(Li){return arguments.length?(hn=Li,vi!=null&&(An=hn(vi)),Mn):hn},Mn.context=function(Li){return arguments.length?(Li==null?vi=An=null:An=hn(vi=Li),Mn):vi},Mn}function O(){var Mt=P,kr=null,Jr=r(0),vi=T,hn=r(!0),An=null,Mn=g,Li=null;function _n(Jn){var Ma,_o,No,po=Jn.length,Lo,ko=!1,Ds,Fs=new Array(po),ll=new Array(po);for(An==null&&(Li=Mn(Ds=t.path())),Ma=0;Ma<=po;++Ma){if(!(Ma<po&&hn(Lo=Jn[Ma],Ma,Jn))===ko)if(ko=!ko)_o=Ma,Li.areaStart(),Li.lineStart();else{for(Li.lineEnd(),Li.lineStart(),No=Ma-1;No>=_o;--No)Li.point(Fs[No],ll[No]);Li.lineEnd(),Li.areaEnd()}ko&&(Fs[Ma]=+Mt(Lo,Ma,Jn),ll[Ma]=+Jr(Lo,Ma,Jn),Li.point(kr?+kr(Lo,Ma,Jn):Fs[Ma],vi?+vi(Lo,Ma,Jn):ll[Ma]))}if(Ds)return Li=null,Ds+""||null}function ya(){return z().defined(hn).curve(Mn).context(An)}return _n.x=function(Jn){return arguments.length?(Mt=typeof Jn=="function"?Jn:r(+Jn),kr=null,_n):Mt},_n.x0=function(Jn){return arguments.length?(Mt=typeof Jn=="function"?Jn:r(+Jn),_n):Mt},_n.x1=function(Jn){return arguments.length?(kr=Jn==null?null:typeof Jn=="function"?Jn:r(+Jn),_n):kr},_n.y=function(Jn){return arguments.length?(Jr=typeof Jn=="function"?Jn:r(+Jn),vi=null,_n):Jr},_n.y0=function(Jn){return arguments.length?(Jr=typeof Jn=="function"?Jn:r(+Jn),_n):Jr},_n.y1=function(Jn){return arguments.length?(vi=Jn==null?null:typeof Jn=="function"?Jn:r(+Jn),_n):vi},_n.lineX0=_n.lineY0=function(){return ya().x(Mt).y(Jr)},_n.lineY1=function(){return ya().x(Mt).y(vi)},_n.lineX1=function(){return ya().x(kr).y(Jr)},_n.defined=function(Jn){return arguments.length?(hn=typeof Jn=="function"?Jn:r(!!Jn),_n):hn},_n.curve=function(Jn){return arguments.length?(Mn=Jn,An!=null&&(Li=Mn(An)),_n):Mn},_n.context=function(Jn){return arguments.length?(Jn==null?An=Li=null:Li=Mn(An=Jn),_n):An},_n}function V(Mt,kr){return kr<Mt?-1:kr>Mt?1:kr>=Mt?0:NaN}function G(Mt){return Mt}function Z(){var Mt=G,kr=V,Jr=null,vi=r(0),hn=r(d),An=r(0);function Mn(Li){var _n,ya=Li.length,Jn,Ma,_o=0,No=new Array(ya),po=new Array(ya),Lo=+vi.apply(this,arguments),ko=Math.min(d,Math.max(-d,hn.apply(this,arguments)-Lo)),Ds,Fs=Math.min(Math.abs(ko)/ya,An.apply(this,arguments)),ll=Fs*(ko<0?-1:1),ul;for(_n=0;_n<ya;++_n)(ul=po[No[_n]=_n]=+Mt(Li[_n],_n,Li))>0&&(_o+=ul);for(kr!=null?No.sort(function(zl,us){return kr(po[zl],po[us])}):Jr!=null&&No.sort(function(zl,us){return Jr(Li[zl],Li[us])}),_n=0,Ma=_o?(ko-ya*ll)/_o:0;_n<ya;++_n,Lo=Ds)Jn=No[_n],ul=po[Jn],Ds=Lo+(ul>0?ul*Ma:0)+ll,po[Jn]={data:Li[Jn],index:_n,value:ul,startAngle:Lo,endAngle:Ds,padAngle:Fs};return po}return Mn.value=function(Li){return arguments.length?(Mt=typeof Li=="function"?Li:r(+Li),Mn):Mt},Mn.sortValues=function(Li){return arguments.length?(kr=Li,Jr=null,Mn):kr},Mn.sort=function(Li){return arguments.length?(Jr=Li,kr=null,Mn):Jr},Mn.startAngle=function(Li){return arguments.length?(vi=typeof Li=="function"?Li:r(+Li),Mn):vi},Mn.endAngle=function(Li){return arguments.length?(hn=typeof Li=="function"?Li:r(+Li),Mn):hn},Mn.padAngle=function(Li){return arguments.length?(An=typeof Li=="function"?Li:r(+Li),Mn):An},Mn}var j=H(g);function N(Mt){this._curve=Mt}N.prototype={areaStart:function(){this._curve.areaStart()},areaEnd:function(){this._curve.areaEnd()},lineStart:function(){this._curve.lineStart()},lineEnd:function(){this._curve.lineEnd()},point:function(Mt,kr){this._curve.point(kr*Math.sin(Mt),kr*-Math.cos(Mt))}};function H(Mt){function kr(Jr){return new N(Mt(Jr))}return kr._curve=Mt,kr}function te(Mt){var kr=Mt.curve;return Mt.angle=Mt.x,delete Mt.x,Mt.radius=Mt.y,delete Mt.y,Mt.curve=function(Jr){return arguments.length?kr(H(Jr)):kr()._curve},Mt}function oe(){return te(z().curve(j))}function _e(){var Mt=O().curve(j),kr=Mt.curve,Jr=Mt.lineX0,vi=Mt.lineX1,hn=Mt.lineY0,An=Mt.lineY1;return Mt.angle=Mt.x,delete Mt.x,Mt.startAngle=Mt.x0,delete Mt.x0,Mt.endAngle=Mt.x1,delete Mt.x1,Mt.radius=Mt.y,delete Mt.y,Mt.innerRadius=Mt.y0,delete Mt.y0,Mt.outerRadius=Mt.y1,delete Mt.y1,Mt.lineStartAngle=function(){return te(Jr())},delete Mt.lineX0,Mt.lineEndAngle=function(){return te(vi())},delete Mt.lineX1,Mt.lineInnerRadius=function(){return te(hn())},delete Mt.lineY0,Mt.lineOuterRadius=function(){return te(An())},delete Mt.lineY1,Mt.curve=function(Mn){return arguments.length?kr(H(Mn)):kr()._curve},Mt}function Ee(Mt,kr){return[(kr=+kr)*Math.cos(Mt-=Math.PI/2),kr*Math.sin(Mt)]}var Ce=Array.prototype.slice;function me(Mt){return Mt.source}function ie(Mt){return Mt.target}function Se(Mt){var kr=me,Jr=ie,vi=P,hn=T,An=null;function Mn(){var Li,_n=Ce.call(arguments),ya=kr.apply(this,_n),Jn=Jr.apply(this,_n);if(An||(An=Li=t.path()),Mt(An,+vi.apply(this,(_n[0]=ya,_n)),+hn.apply(this,_n),+vi.apply(this,(_n[0]=Jn,_n)),+hn.apply(this,_n)),Li)return An=null,Li+""||null}return Mn.source=function(Li){return arguments.length?(kr=Li,Mn):kr},Mn.target=function(Li){return arguments.length?(Jr=Li,Mn):Jr},Mn.x=function(Li){return arguments.length?(vi=typeof Li=="function"?Li:r(+Li),Mn):vi},Mn.y=function(Li){return arguments.length?(hn=typeof Li=="function"?Li:r(+Li),Mn):hn},Mn.context=function(Li){return arguments.length?(An=Li==null?null:Li,Mn):An},Mn}function Le(Mt,kr,Jr,vi,hn){Mt.moveTo(kr,Jr),Mt.bezierCurveTo(kr=(kr+vi)/2,Jr,kr,hn,vi,hn)}function Ae(Mt,kr,Jr,vi,hn){Mt.moveTo(kr,Jr),Mt.bezierCurveTo(kr,Jr=(Jr+hn)/2,vi,Jr,vi,hn)}function Fe(Mt,kr,Jr,vi,hn){var An=Ee(kr,Jr),Mn=Ee(kr,Jr=(Jr+hn)/2),Li=Ee(vi,Jr),_n=Ee(vi,hn);Mt.moveTo(An[0],An[1]),Mt.bezierCurveTo(Mn[0],Mn[1],Li[0],Li[1],_n[0],_n[1])}function Pe(){return Se(Le)}function ge(){return Se(Ae)}function Re(){var Mt=Se(Fe);return Mt.angle=Mt.x,delete Mt.x,Mt.radius=Mt.y,delete Mt.y,Mt}var ce={draw:function(Mt,kr){var Jr=Math.sqrt(kr/f);Mt.moveTo(Jr,0),Mt.arc(0,0,Jr,0,d)}},Ze={draw:function(Mt,kr){var Jr=Math.sqrt(kr/5)/2;Mt.moveTo(-3*Jr,-Jr),Mt.lineTo(-Jr,-Jr),Mt.lineTo(-Jr,-3*Jr),Mt.lineTo(Jr,-3*Jr),Mt.lineTo(Jr,-Jr),Mt.lineTo(3*Jr,-Jr),Mt.lineTo(3*Jr,Jr),Mt.lineTo(Jr,Jr),Mt.lineTo(Jr,3*Jr),Mt.lineTo(-Jr,3*Jr),Mt.lineTo(-Jr,Jr),Mt.lineTo(-3*Jr,Jr),Mt.closePath()}},ut=Math.sqrt(1/3),pt=ut*2,Zt={draw:function(Mt,kr){var Jr=Math.sqrt(kr/pt),vi=Jr*ut;Mt.moveTo(0,-Jr),Mt.lineTo(vi,0),Mt.lineTo(0,Jr),Mt.lineTo(-vi,0),Mt.closePath()}},st=.8908130915292852,lt=Math.sin(f/10)/Math.sin(7*f/10),Gt=Math.sin(d/10)*lt,Nt=-Math.cos(d/10)*lt,Jt={draw:function(Mt,kr){var Jr=Math.sqrt(kr*st),vi=Gt*Jr,hn=Nt*Jr;Mt.moveTo(0,-Jr),Mt.lineTo(vi,hn);for(var An=1;An<5;++An){var Mn=d*An/5,Li=Math.cos(Mn),_n=Math.sin(Mn);Mt.lineTo(_n*Jr,-Li*Jr),Mt.lineTo(Li*vi-_n*hn,_n*vi+Li*hn)}Mt.closePath()}},sr={draw:function(Mt,kr){var Jr=Math.sqrt(kr),vi=-Jr/2;Mt.rect(vi,vi,Jr,Jr)}},wr=Math.sqrt(3),cr={draw:function(Mt,kr){var Jr=-Math.sqrt(kr/(wr*3));Mt.moveTo(0,Jr*2),Mt.lineTo(-wr*Jr,-Jr),Mt.lineTo(wr*Jr,-Jr),Mt.closePath()}},$e=-.5,St=Math.sqrt(3)/2,Qt=1/Math.sqrt(12),Vt=(Qt/2+1)*3,_t={draw:function(Mt,kr){var Jr=Math.sqrt(kr/Vt),vi=Jr/2,hn=Jr*Qt,An=vi,Mn=Jr*Qt+Jr,Li=-An,_n=Mn;Mt.moveTo(vi,hn),Mt.lineTo(An,Mn),Mt.lineTo(Li,_n),Mt.lineTo($e*vi-St*hn,St*vi+$e*hn),Mt.lineTo($e*An-St*Mn,St*An+$e*Mn),Mt.lineTo($e*Li-St*_n,St*Li+$e*_n),Mt.lineTo($e*vi+St*hn,$e*hn-St*vi),Mt.lineTo($e*An+St*Mn,$e*Mn-St*An),Mt.lineTo($e*Li+St*_n,$e*_n-St*Li),Mt.closePath()}},It=[ce,Ze,Zt,sr,Jt,cr,_t];function mt(){var Mt=r(ce),kr=r(64),Jr=null;function vi(){var hn;if(Jr||(Jr=hn=t.path()),Mt.apply(this,arguments).draw(Jr,+kr.apply(this,arguments)),hn)return Jr=null,hn+""||null}return vi.type=function(hn){return arguments.length?(Mt=typeof hn=="function"?hn:r(hn),vi):Mt},vi.size=function(hn){return arguments.length?(kr=typeof hn=="function"?hn:r(+hn),vi):kr},vi.context=function(hn){return arguments.length?(Jr=hn==null?null:hn,vi):Jr},vi}function er(){}function lr(Mt,kr,Jr){Mt._context.bezierCurveTo((2*Mt._x0+Mt._x1)/3,(2*Mt._y0+Mt._y1)/3,(Mt._x0+2*Mt._x1)/3,(Mt._y0+2*Mt._y1)/3,(Mt._x0+4*Mt._x1+kr)/6,(Mt._y0+4*Mt._y1+Jr)/6)}function Tr(Mt){this._context=Mt}Tr.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:lr(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(Mt,kr){switch(Mt=+Mt,kr=+kr,this._point){case 0:this._point=1,this._line?this._context.lineTo(Mt,kr):this._context.moveTo(Mt,kr);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:lr(this,Mt,kr);break}this._x0=this._x1,this._x1=Mt,this._y0=this._y1,this._y1=kr}};function Lr(Mt){return new Tr(Mt)}function ti(Mt){this._context=Mt}ti.prototype={areaStart:er,areaEnd:er,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x2,this._y2),this._context.closePath();break}case 2:{this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break}case 3:{this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4);break}}},point:function(Mt,kr){switch(Mt=+Mt,kr=+kr,this._point){case 0:this._point=1,this._x2=Mt,this._y2=kr;break;case 1:this._point=2,this._x3=Mt,this._y3=kr;break;case 2:this._point=3,this._x4=Mt,this._y4=kr,this._context.moveTo((this._x0+4*this._x1+Mt)/6,(this._y0+4*this._y1+kr)/6);break;default:lr(this,Mt,kr);break}this._x0=this._x1,this._x1=Mt,this._y0=this._y1,this._y1=kr}};function Br(Mt){return new ti(Mt)}function Vr(Mt){this._context=Mt}Vr.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(Mt,kr){switch(Mt=+Mt,kr=+kr,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var Jr=(this._x0+4*this._x1+Mt)/6,vi=(this._y0+4*this._y1+kr)/6;this._line?this._context.lineTo(Jr,vi):this._context.moveTo(Jr,vi);break;case 3:this._point=4;default:lr(this,Mt,kr);break}this._x0=this._x1,this._x1=Mt,this._y0=this._y1,this._y1=kr}};function dt(Mt){return new Vr(Mt)}function Ge(Mt,kr){this._basis=new Tr(Mt),this._beta=kr}Ge.prototype={lineStart:function(){this._x=[],this._y=[],this._basis.lineStart()},lineEnd:function(){var Mt=this._x,kr=this._y,Jr=Mt.length-1;if(Jr>0)for(var vi=Mt[0],hn=kr[0],An=Mt[Jr]-vi,Mn=kr[Jr]-hn,Li=-1,_n;++Li<=Jr;)_n=Li/Jr,this._basis.point(this._beta*Mt[Li]+(1-this._beta)*(vi+_n*An),this._beta*kr[Li]+(1-this._beta)*(hn+_n*Mn));this._x=this._y=null,this._basis.lineEnd()},point:function(Mt,kr){this._x.push(+Mt),this._y.push(+kr)}};var Je=function Mt(kr){function Jr(vi){return kr===1?new Tr(vi):new Ge(vi,kr)}return Jr.beta=function(vi){return Mt(+vi)},Jr}(.85);function je(Mt,kr,Jr){Mt._context.bezierCurveTo(Mt._x1+Mt._k*(Mt._x2-Mt._x0),Mt._y1+Mt._k*(Mt._y2-Mt._y0),Mt._x2+Mt._k*(Mt._x1-kr),Mt._y2+Mt._k*(Mt._y1-Jr),Mt._x2,Mt._y2)}function tt(Mt,kr){this._context=Mt,this._k=(1-kr)/6}tt.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:je(this,this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(Mt,kr){switch(Mt=+Mt,kr=+kr,this._point){case 0:this._point=1,this._line?this._context.lineTo(Mt,kr):this._context.moveTo(Mt,kr);break;case 1:this._point=2,this._x1=Mt,this._y1=kr;break;case 2:this._point=3;default:je(this,Mt,kr);break}this._x0=this._x1,this._x1=this._x2,this._x2=Mt,this._y0=this._y1,this._y1=this._y2,this._y2=kr}};var xt=function Mt(kr){function Jr(vi){return new tt(vi,kr)}return Jr.tension=function(vi){return Mt(+vi)},Jr}(0);function Ie(Mt,kr){this._context=Mt,this._k=(1-kr)/6}Ie.prototype={areaStart:er,areaEnd:er,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3),this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3),this._context.closePath();break}case 3:{this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5);break}}},point:function(Mt,kr){switch(Mt=+Mt,kr=+kr,this._point){case 0:this._point=1,this._x3=Mt,this._y3=kr;break;case 1:this._point=2,this._context.moveTo(this._x4=Mt,this._y4=kr);break;case 2:this._point=3,this._x5=Mt,this._y5=kr;break;default:je(this,Mt,kr);break}this._x0=this._x1,this._x1=this._x2,this._x2=Mt,this._y0=this._y1,this._y1=this._y2,this._y2=kr}};var xe=function Mt(kr){function Jr(vi){return new Ie(vi,kr)}return Jr.tension=function(vi){return Mt(+vi)},Jr}(0);function ke(Mt,kr){this._context=Mt,this._k=(1-kr)/6}ke.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(Mt,kr){switch(Mt=+Mt,kr=+kr,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:je(this,Mt,kr);break}this._x0=this._x1,this._x1=this._x2,this._x2=Mt,this._y0=this._y1,this._y1=this._y2,this._y2=kr}};var vt=function Mt(kr){function Jr(vi){return new ke(vi,kr)}return Jr.tension=function(vi){return Mt(+vi)},Jr}(0);function ir(Mt,kr,Jr){var vi=Mt._x1,hn=Mt._y1,An=Mt._x2,Mn=Mt._y2;if(Mt._l01_a>c){var Li=2*Mt._l01_2a+3*Mt._l01_a*Mt._l12_a+Mt._l12_2a,_n=3*Mt._l01_a*(Mt._l01_a+Mt._l12_a);vi=(vi*Li-Mt._x0*Mt._l12_2a+Mt._x2*Mt._l01_2a)/_n,hn=(hn*Li-Mt._y0*Mt._l12_2a+Mt._y2*Mt._l01_2a)/_n}if(Mt._l23_a>c){var ya=2*Mt._l23_2a+3*Mt._l23_a*Mt._l12_a+Mt._l12_2a,Jn=3*Mt._l23_a*(Mt._l23_a+Mt._l12_a);An=(An*ya+Mt._x1*Mt._l23_2a-kr*Mt._l12_2a)/Jn,Mn=(Mn*ya+Mt._y1*Mt._l23_2a-Jr*Mt._l12_2a)/Jn}Mt._context.bezierCurveTo(vi,hn,An,Mn,Mt._x2,Mt._y2)}function ar(Mt,kr){this._context=Mt,this._alpha=kr}ar.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(Mt,kr){if(Mt=+Mt,kr=+kr,this._point){var Jr=this._x2-Mt,vi=this._y2-kr;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(Jr*Jr+vi*vi,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(Mt,kr):this._context.moveTo(Mt,kr);break;case 1:this._point=2;break;case 2:this._point=3;default:ir(this,Mt,kr);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=Mt,this._y0=this._y1,this._y1=this._y2,this._y2=kr}};var vr=function Mt(kr){function Jr(vi){return kr?new ar(vi,kr):new tt(vi,0)}return Jr.alpha=function(vi){return Mt(+vi)},Jr}(.5);function ii(Mt,kr){this._context=Mt,this._alpha=kr}ii.prototype={areaStart:er,areaEnd:er,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3),this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3),this._context.closePath();break}case 3:{this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5);break}}},point:function(Mt,kr){if(Mt=+Mt,kr=+kr,this._point){var Jr=this._x2-Mt,vi=this._y2-kr;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(Jr*Jr+vi*vi,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=Mt,this._y3=kr;break;case 1:this._point=2,this._context.moveTo(this._x4=Mt,this._y4=kr);break;case 2:this._point=3,this._x5=Mt,this._y5=kr;break;default:ir(this,Mt,kr);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=Mt,this._y0=this._y1,this._y1=this._y2,this._y2=kr}};var pi=function Mt(kr){function Jr(vi){return kr?new ii(vi,kr):new Ie(vi,0)}return Jr.alpha=function(vi){return Mt(+vi)},Jr}(.5);function $r(Mt,kr){this._context=Mt,this._alpha=kr}$r.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(Mt,kr){if(Mt=+Mt,kr=+kr,this._point){var Jr=this._x2-Mt,vi=this._y2-kr;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(Jr*Jr+vi*vi,this._alpha))}switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:ir(this,Mt,kr);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=Mt,this._y0=this._y1,this._y1=this._y2,this._y2=kr}};var di=function Mt(kr){function Jr(vi){return kr?new $r(vi,kr):new ke(vi,0)}return Jr.alpha=function(vi){return Mt(+vi)},Jr}(.5);function ji(Mt){this._context=Mt}ji.prototype={areaStart:er,areaEnd:er,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(Mt,kr){Mt=+Mt,kr=+kr,this._point?this._context.lineTo(Mt,kr):(this._point=1,this._context.moveTo(Mt,kr))}};function In(Mt){return new ji(Mt)}function wi(Mt){return Mt<0?-1:1}function On(Mt,kr,Jr){var vi=Mt._x1-Mt._x0,hn=kr-Mt._x1,An=(Mt._y1-Mt._y0)/(vi||hn<0&&-0),Mn=(Jr-Mt._y1)/(hn||vi<0&&-0),Li=(An*hn+Mn*vi)/(vi+hn);return(wi(An)+wi(Mn))*Math.min(Math.abs(An),Math.abs(Mn),.5*Math.abs(Li))||0}function qn(Mt,kr){var Jr=Mt._x1-Mt._x0;return Jr?(3*(Mt._y1-Mt._y0)/Jr-kr)/2:kr}function Fn(Mt,kr,Jr){var vi=Mt._x0,hn=Mt._y0,An=Mt._x1,Mn=Mt._y1,Li=(An-vi)/3;Mt._context.bezierCurveTo(vi+Li,hn+Li*kr,An-Li,Mn-Li*Jr,An,Mn)}function ra(Mt){this._context=Mt}ra.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:Fn(this,this._t0,qn(this,this._t0));break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(Mt,kr){var Jr=NaN;if(Mt=+Mt,kr=+kr,!(Mt===this._x1&&kr===this._y1)){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(Mt,kr):this._context.moveTo(Mt,kr);break;case 1:this._point=2;break;case 2:this._point=3,Fn(this,qn(this,Jr=On(this,Mt,kr)),Jr);break;default:Fn(this,this._t0,Jr=On(this,Mt,kr));break}this._x0=this._x1,this._x1=Mt,this._y0=this._y1,this._y1=kr,this._t0=Jr}}};function la(Mt){this._context=new Ut(Mt)}(la.prototype=Object.create(ra.prototype)).point=function(Mt,kr){ra.prototype.point.call(this,kr,Mt)};function Ut(Mt){this._context=Mt}Ut.prototype={moveTo:function(Mt,kr){this._context.moveTo(kr,Mt)},closePath:function(){this._context.closePath()},lineTo:function(Mt,kr){this._context.lineTo(kr,Mt)},bezierCurveTo:function(Mt,kr,Jr,vi,hn,An){this._context.bezierCurveTo(kr,Mt,vi,Jr,An,hn)}};function wt(Mt){return new ra(Mt)}function rr(Mt){return new la(Mt)}function nr(Mt){this._context=Mt}nr.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var Mt=this._x,kr=this._y,Jr=Mt.length;if(Jr)if(this._line?this._context.lineTo(Mt[0],kr[0]):this._context.moveTo(Mt[0],kr[0]),Jr===2)this._context.lineTo(Mt[1],kr[1]);else for(var vi=Er(Mt),hn=Er(kr),An=0,Mn=1;Mn<Jr;++An,++Mn)this._context.bezierCurveTo(vi[0][An],hn[0][An],vi[1][An],hn[1][An],Mt[Mn],kr[Mn]);(this._line||this._line!==0&&Jr===1)&&this._context.closePath(),this._line=1-this._line,this._x=this._y=null},point:function(Mt,kr){this._x.push(+Mt),this._y.push(+kr)}};function Er(Mt){var kr,Jr=Mt.length-1,vi,hn=new Array(Jr),An=new Array(Jr),Mn=new Array(Jr);for(hn[0]=0,An[0]=2,Mn[0]=Mt[0]+2*Mt[1],kr=1;kr<Jr-1;++kr)hn[kr]=1,An[kr]=4,Mn[kr]=4*Mt[kr]+2*Mt[kr+1];for(hn[Jr-1]=2,An[Jr-1]=7,Mn[Jr-1]=8*Mt[Jr-1]+Mt[Jr],kr=1;kr<Jr;++kr)vi=hn[kr]/An[kr-1],An[kr]-=vi,Mn[kr]-=vi*Mn[kr-1];for(hn[Jr-1]=Mn[Jr-1]/An[Jr-1],kr=Jr-2;kr>=0;--kr)hn[kr]=(Mn[kr]-hn[kr+1])/An[kr];for(An[Jr-1]=(Mt[Jr]+hn[Jr-1])/2,kr=0;kr<Jr-1;++kr)An[kr]=2*Mt[kr+1]-hn[kr+1];return[hn,An]}function Xr(Mt){return new nr(Mt)}function ri(Mt,kr){this._context=Mt,this._t=kr}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(Mt,kr){switch(Mt=+Mt,kr=+kr,this._point){case 0:this._point=1,this._line?this._context.lineTo(Mt,kr):this._context.moveTo(Mt,kr);break;case 1:this._point=2;default:{if(this._t<=0)this._context.lineTo(this._x,kr),this._context.lineTo(Mt,kr);else{var Jr=this._x*(1-this._t)+Mt*this._t;this._context.lineTo(Jr,this._y),this._context.lineTo(Jr,kr)}break}}this._x=Mt,this._y=kr}};function Qr(Mt){return new ri(Mt,.5)}function Oi(Mt){return new ri(Mt,0)}function $i(Mt){return new ri(Mt,1)}function tn(Mt,kr){if((Mn=Mt.length)>1)for(var Jr=1,vi,hn,An=Mt[kr[0]],Mn,Li=An.length;Jr<Mn;++Jr)for(hn=An,An=Mt[kr[Jr]],vi=0;vi<Li;++vi)An[vi][1]+=An[vi][0]=isNaN(hn[vi][1])?hn[vi][0]:hn[vi][1]}function fn(Mt){for(var kr=Mt.length,Jr=new Array(kr);--kr>=0;)Jr[kr]=kr;return Jr}function yn(Mt,kr){return Mt[kr]}function Sn(){var Mt=r([]),kr=fn,Jr=tn,vi=yn;function hn(An){var Mn=Mt.apply(this,arguments),Li,_n=An.length,ya=Mn.length,Jn=new Array(ya),Ma;for(Li=0;Li<ya;++Li){for(var _o=Mn[Li],No=Jn[Li]=new Array(_n),po=0,Lo;po<_n;++po)No[po]=Lo=[0,+vi(An[po],_o,po,An)],Lo.data=An[po];No.key=_o}for(Li=0,Ma=kr(Jn);Li<ya;++Li)Jn[Ma[Li]].index=Li;return Jr(Jn,Ma),Jn}return hn.keys=function(An){return arguments.length?(Mt=typeof An=="function"?An:r(Ce.call(An)),hn):Mt},hn.value=function(An){return arguments.length?(vi=typeof An=="function"?An:r(+An),hn):vi},hn.order=function(An){return arguments.length?(kr=An==null?fn:typeof An=="function"?An:r(Ce.call(An)),hn):kr},hn.offset=function(An){return arguments.length?(Jr=An==null?tn:An,hn):Jr},hn}function Ba(Mt,kr){if((vi=Mt.length)>0){for(var Jr,vi,hn=0,An=Mt[0].length,Mn;hn<An;++hn){for(Mn=Jr=0;Jr<vi;++Jr)Mn+=Mt[Jr][hn][1]||0;if(Mn)for(Jr=0;Jr<vi;++Jr)Mt[Jr][hn][1]/=Mn}tn(Mt,kr)}}function ua(Mt,kr){if((_n=Mt.length)>0)for(var Jr,vi=0,hn,An,Mn,Li,_n,ya=Mt[kr[0]].length;vi<ya;++vi)for(Mn=Li=0,Jr=0;Jr<_n;++Jr)(An=(hn=Mt[kr[Jr]][vi])[1]-hn[0])>0?(hn[0]=Mn,hn[1]=Mn+=An):An<0?(hn[1]=Li,hn[0]=Li+=An):(hn[0]=0,hn[1]=An)}function ma(Mt,kr){if((hn=Mt.length)>0){for(var Jr=0,vi=Mt[kr[0]],hn,An=vi.length;Jr<An;++Jr){for(var Mn=0,Li=0;Mn<hn;++Mn)Li+=Mt[Mn][Jr][1]||0;vi[Jr][1]+=vi[Jr][0]=-Li/2}tn(Mt,kr)}}function Wa(Mt,kr){if(!(!((Mn=Mt.length)>0)||!((An=(hn=Mt[kr[0]]).length)>0))){for(var Jr=0,vi=1,hn,An,Mn;vi<An;++vi){for(var Li=0,_n=0,ya=0;Li<Mn;++Li){for(var Jn=Mt[kr[Li]],Ma=Jn[vi][1]||0,_o=Jn[vi-1][1]||0,No=(Ma-_o)/2,po=0;po<Li;++po){var Lo=Mt[kr[po]],ko=Lo[vi][1]||0,Ds=Lo[vi-1][1]||0;No+=ko-Ds}_n+=Ma,ya+=No*Ma}hn[vi-1][1]+=hn[vi-1][0]=Jr,_n&&(Jr-=ya/_n)}hn[vi-1][1]+=hn[vi-1][0]=Jr,tn(Mt,kr)}}function Fa(Mt){var kr=Mt.map(Wo);return fn(Mt).sort(function(Jr,vi){return kr[Jr]-kr[vi]})}function Wo(Mt){for(var kr=-1,Jr=0,vi=Mt.length,hn,An=-1/0;++kr<vi;)(hn=+Mt[kr][1])>An&&(An=hn,Jr=kr);return Jr}function da(Mt){var kr=Mt.map(Wn);return fn(Mt).sort(function(Jr,vi){return kr[Jr]-kr[vi]})}function Wn(Mt){for(var kr=0,Jr=-1,vi=Mt.length,hn;++Jr<vi;)(hn=+Mt[Jr][1])&&(kr+=hn);return kr}function Ha(Mt){return da(Mt).reverse()}function vo(Mt){var kr=Mt.length,Jr,vi,hn=Mt.map(Wn),An=Fa(Mt),Mn=0,Li=0,_n=[],ya=[];for(Jr=0;Jr<kr;++Jr)vi=An[Jr],Mn<Li?(Mn+=hn[vi],_n.push(vi)):(Li+=hn[vi],ya.push(vi));return ya.reverse().concat(_n)}function jn(Mt){return fn(Mt).reverse()}e.arc=C,e.area=O,e.areaRadial=_e,e.curveBasis=Lr,e.curveBasisClosed=Br,e.curveBasisOpen=dt,e.curveBundle=Je,e.curveCardinal=xt,e.curveCardinalClosed=xe,e.curveCardinalOpen=vt,e.curveCatmullRom=vr,e.curveCatmullRomClosed=pi,e.curveCatmullRomOpen=di,e.curveLinear=g,e.curveLinearClosed=In,e.curveMonotoneX=wt,e.curveMonotoneY=rr,e.curveNatural=Xr,e.curveStep=Qr,e.curveStepAfter=$i,e.curveStepBefore=Oi,e.line=z,e.lineRadial=oe,e.linkHorizontal=Pe,e.linkRadial=Re,e.linkVertical=ge,e.pie=Z,e.pointRadial=Ee,e.radialArea=_e,e.radialLine=oe,e.stack=Sn,e.stackOffsetDiverging=ua,e.stackOffsetExpand=Ba,e.stackOffsetNone=tn,e.stackOffsetSilhouette=ma,e.stackOffsetWiggle=Wa,e.stackOrderAppearance=Fa,e.stackOrderAscending=da,e.stackOrderDescending=Ha,e.stackOrderInsideOut=vo,e.stackOrderNone=fn,e.stackOrderReverse=jn,e.symbol=mt,e.symbolCircle=ce,e.symbolCross=Ze,e.symbolDiamond=Zt,e.symbolSquare=sr,e.symbolStar=Jt,e.symbolTriangle=cr,e.symbolWye=_t,e.symbols=It,Object.defineProperty(e,"__esModule",{value:!0})})});var VWe=ye((S7,UWe)=>{(function(e,t){typeof S7=="object"&&typeof UWe!="undefined"?t(S7,nk(),_7(),jJ()):t(e.d3=e.d3||{},e.d3,e.d3,e.d3)})(S7,function(e,t,r,n){"use strict";function i(g){return g.target.depth}function a(g){return g.depth}function o(g,P){return P-1-g.height}function s(g,P){return g.sourceLinks.length?g.depth:P-1}function l(g){return g.targetLinks.length?g.depth:g.sourceLinks.length?t.min(g.sourceLinks,i)-1:0}function u(g){return function(){return g}}function c(g,P){return h(g.source,P.source)||g.index-P.index}function f(g,P){return h(g.target,P.target)||g.index-P.index}function h(g,P){return g.y0-P.y0}function d(g){return g.value}function v(g){return(g.y0+g.y1)/2}function _(g){return v(g.source)*g.value}function b(g){return v(g.target)*g.value}function p(g){return g.index}function k(g){return g.nodes}function E(g){return g.links}function S(g,P){var T=g.get(P);if(!T)throw new Error("missing: "+P);return T}var L=function(){var g=0,P=0,T=1,z=1,O=24,V=8,G=p,Z=s,j=k,N=E,H=32,te=2/3;function oe(){var Se={nodes:j.apply(null,arguments),links:N.apply(null,arguments)};return _e(Se),Ee(Se),Ce(Se),me(Se,H),ie(Se),Se}oe.update=function(Se){return ie(Se),Se},oe.nodeId=function(Se){return arguments.length?(G=typeof Se=="function"?Se:u(Se),oe):G},oe.nodeAlign=function(Se){return arguments.length?(Z=typeof Se=="function"?Se:u(Se),oe):Z},oe.nodeWidth=function(Se){return arguments.length?(O=+Se,oe):O},oe.nodePadding=function(Se){return arguments.length?(V=+Se,oe):V},oe.nodes=function(Se){return arguments.length?(j=typeof Se=="function"?Se:u(Se),oe):j},oe.links=function(Se){return arguments.length?(N=typeof Se=="function"?Se:u(Se),oe):N},oe.size=function(Se){return arguments.length?(g=P=0,T=+Se[0],z=+Se[1],oe):[T-g,z-P]},oe.extent=function(Se){return arguments.length?(g=+Se[0][0],T=+Se[1][0],P=+Se[0][1],z=+Se[1][1],oe):[[g,P],[T,z]]},oe.iterations=function(Se){return arguments.length?(H=+Se,oe):H};function _e(Se){Se.nodes.forEach(function(Ae,Fe){Ae.index=Fe,Ae.sourceLinks=[],Ae.targetLinks=[]});var Le=r.map(Se.nodes,G);Se.links.forEach(function(Ae,Fe){Ae.index=Fe;var Pe=Ae.source,ge=Ae.target;typeof Pe!="object"&&(Pe=Ae.source=S(Le,Pe)),typeof ge!="object"&&(ge=Ae.target=S(Le,ge)),Pe.sourceLinks.push(Ae),ge.targetLinks.push(Ae)})}function Ee(Se){Se.nodes.forEach(function(Le){Le.value=Math.max(t.sum(Le.sourceLinks,d),t.sum(Le.targetLinks,d))})}function Ce(Se){var Le,Ae,Fe;for(Le=Se.nodes,Ae=[],Fe=0;Le.length;++Fe,Le=Ae,Ae=[])Le.forEach(function(ge){ge.depth=Fe,ge.sourceLinks.forEach(function(Re){Ae.indexOf(Re.target)<0&&Ae.push(Re.target)})});for(Le=Se.nodes,Ae=[],Fe=0;Le.length;++Fe,Le=Ae,Ae=[])Le.forEach(function(ge){ge.height=Fe,ge.targetLinks.forEach(function(Re){Ae.indexOf(Re.source)<0&&Ae.push(Re.source)})});var Pe=(T-g-O)/(Fe-1);Se.nodes.forEach(function(ge){ge.x1=(ge.x0=g+Math.max(0,Math.min(Fe-1,Math.floor(Z.call(null,ge,Fe))))*Pe)+O})}function me(Se){var Le=r.nest().key(function(Ze){return Ze.x0}).sortKeys(t.ascending).entries(Se.nodes).map(function(Ze){return Ze.values});Pe(),ce();for(var Ae=1,Fe=H;Fe>0;--Fe)Re(Ae*=.99),ce(),ge(Ae),ce();function Pe(){var Ze=t.max(Le,function(Zt){return Zt.length}),ut=te*(z-P)/(Ze-1);V>ut&&(V=ut);var pt=t.min(Le,function(Zt){return(z-P-(Zt.length-1)*V)/t.sum(Zt,d)});Le.forEach(function(Zt){Zt.forEach(function(st,lt){st.y1=(st.y0=lt)+st.value*pt})}),Se.links.forEach(function(Zt){Zt.width=Zt.value*pt})}function ge(Ze){Le.forEach(function(ut){ut.forEach(function(pt){if(pt.targetLinks.length){var Zt=(t.sum(pt.targetLinks,_)/t.sum(pt.targetLinks,d)-v(pt))*Ze;pt.y0+=Zt,pt.y1+=Zt}})})}function Re(Ze){Le.slice().reverse().forEach(function(ut){ut.forEach(function(pt){if(pt.sourceLinks.length){var Zt=(t.sum(pt.sourceLinks,b)/t.sum(pt.sourceLinks,d)-v(pt))*Ze;pt.y0+=Zt,pt.y1+=Zt}})})}function ce(){Le.forEach(function(Ze){var ut,pt,Zt=P,st=Ze.length,lt;for(Ze.sort(h),lt=0;lt<st;++lt)ut=Ze[lt],pt=Zt-ut.y0,pt>0&&(ut.y0+=pt,ut.y1+=pt),Zt=ut.y1+V;if(pt=Zt-V-z,pt>0)for(Zt=ut.y0-=pt,ut.y1-=pt,lt=st-2;lt>=0;--lt)ut=Ze[lt],pt=ut.y1+V-Zt,pt>0&&(ut.y0-=pt,ut.y1-=pt),Zt=ut.y0})}}function ie(Se){Se.nodes.forEach(function(Le){Le.sourceLinks.sort(f),Le.targetLinks.sort(c)}),Se.nodes.forEach(function(Le){var Ae=Le.y0,Fe=Ae;Le.sourceLinks.forEach(function(Pe){Pe.y0=Ae+Pe.width/2,Ae+=Pe.width}),Le.targetLinks.forEach(function(Pe){Pe.y1=Fe+Pe.width/2,Fe+=Pe.width})})}return oe};function x(g){return[g.source.x1,g.y0]}function C(g){return[g.target.x0,g.y1]}var M=function(){return n.linkHorizontal().source(x).target(C)};e.sankey=L,e.sankeyCenter=l,e.sankeyLeft=a,e.sankeyRight=o,e.sankeyJustify=s,e.sankeyLinkHorizontal=M,Object.defineProperty(e,"__esModule",{value:!0})})});var HWe=ye((Qbr,GWe)=>{var FZt=HJ();GWe.exports=function(t,r){var n=[],i=[],a=[],o={},s=[],l;function u(E){a[E]=!1,o.hasOwnProperty(E)&&Object.keys(o[E]).forEach(function(S){delete o[E][S],a[S]&&u(S)})}function c(E){var S=!1;i.push(E),a[E]=!0;var L,x;for(L=0;L<s[E].length;L++)x=s[E][L],x===l?(f(l,i),S=!0):a[x]||(S=c(x));if(S)u(E);else for(L=0;L<s[E].length;L++){x=s[E][L];var C=o[x];C||(C={},o[x]=C),C[x]=!0}return i.pop(),S}function f(E,S){var L=[].concat(S).concat(E);r?r(c):n.push(L)}function h(E){for(var S=0;S<t.length;S++)S<E&&(t[S]=[]),t[S]=t[S].filter(function(L){return L>=E})}function d(E){h(E);for(var S=t,L=FZt(S),x=L.components.filter(function(O){return O.length>1}),C=1/0,M,g=0;g<x.length;g++)for(var P=0;P<x[g].length;P++)x[g][P]<C&&(C=x[g][P],M=g);var T=x[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:C,adjList:z}}l=0;for(var v=t.length;l<v;){var _=d(l);if(l=_.leastVertex,s=_.adjList,s){for(var b=0;b<s.length;b++)for(var p=0;p<s[b].length;p++){var k=s[b][p];a[+k]=!1,o[k]={}}c(l),l=l+1}else l=v}if(!r)return n}});var WWe=ye((M7,jWe)=>{(function(e,t){typeof M7=="object"&&typeof jWe!="undefined"?t(M7,nk(),_7(),jJ(),HWe()):t(e.d3=e.d3||{},e.d3,e.d3,e.d3,null)})(M7,function(e,t,r,n,i){"use strict";i=i&&i.hasOwnProperty("default")?i.default:i;function a(st){return st.target.depth}function o(st){return st.depth}function s(st,lt){return lt-1-st.height}function l(st,lt){return st.sourceLinks.length?st.depth:lt-1}function u(st){return st.targetLinks.length?st.depth:st.sourceLinks.length?t.min(st.sourceLinks,a)-1:0}function c(st){return function(){return st}}var f=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(st){return typeof st}:function(st){return st&&typeof Symbol=="function"&&st.constructor===Symbol&&st!==Symbol.prototype?"symbol":typeof st};function h(st,lt){return v(st.source,lt.source)||st.index-lt.index}function d(st,lt){return v(st.target,lt.target)||st.index-lt.index}function v(st,lt){return st.partOfCycle===lt.partOfCycle?st.y0-lt.y0:st.circularLinkType==="top"||lt.circularLinkType==="bottom"?-1:1}function _(st){return st.value}function b(st){return(st.y0+st.y1)/2}function p(st){return b(st.source)}function k(st){return b(st.target)}function E(st){return st.index}function S(st){return st.nodes}function L(st){return st.links}function x(st,lt){var Gt=st.get(lt);if(!Gt)throw new Error("missing: "+lt);return Gt}function C(st,lt){return lt(st)}var M=25,g=10,P=.3;function T(){var st=0,lt=0,Gt=1,Nt=1,Jt=24,sr,wr=E,cr=l,$e=S,St=L,Qt=32,Vt=2,_t,It=null;function mt(){var dt={nodes:$e.apply(null,arguments),links:St.apply(null,arguments)};er(dt),z(dt,wr,It),lr(dt),ti(dt),O(dt,wr),Br(dt,Qt,wr),Vr(dt);for(var Ge=4,Je=0;Je<Ge;Je++)Re(dt,Nt,wr),ce(dt,Nt,wr),Fe(dt,lt,Nt,wr),Re(dt,Nt,wr),ce(dt,Nt,wr);return Zt(dt,lt,Nt),H(dt,Vt,Nt,wr),dt}mt.nodeId=function(dt){return arguments.length?(wr=typeof dt=="function"?dt:c(dt),mt):wr},mt.nodeAlign=function(dt){return arguments.length?(cr=typeof dt=="function"?dt:c(dt),mt):cr},mt.nodeWidth=function(dt){return arguments.length?(Jt=+dt,mt):Jt},mt.nodePadding=function(dt){return arguments.length?(sr=+dt,mt):sr},mt.nodes=function(dt){return arguments.length?($e=typeof dt=="function"?dt:c(dt),mt):$e},mt.links=function(dt){return arguments.length?(St=typeof dt=="function"?dt:c(dt),mt):St},mt.size=function(dt){return arguments.length?(st=lt=0,Gt=+dt[0],Nt=+dt[1],mt):[Gt-st,Nt-lt]},mt.extent=function(dt){return arguments.length?(st=+dt[0][0],Gt=+dt[1][0],lt=+dt[0][1],Nt=+dt[1][1],mt):[[st,lt],[Gt,Nt]]},mt.iterations=function(dt){return arguments.length?(Qt=+dt,mt):Qt},mt.circularLinkGap=function(dt){return arguments.length?(Vt=+dt,mt):Vt},mt.nodePaddingRatio=function(dt){return arguments.length?(_t=+dt,mt):_t},mt.sortNodes=function(dt){return arguments.length?(It=dt,mt):It},mt.update=function(dt){return O(dt,wr),Vr(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)}),Re(dt,Nt,wr,!1),ce(dt,Nt,wr),H(dt,Vt,Nt,wr),dt};function er(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 tt=Je.source,xt=Je.target;(typeof tt=="undefined"?"undefined":f(tt))!=="object"&&(tt=Je.source=x(Ge,tt)),(typeof xt=="undefined"?"undefined":f(xt))!=="object"&&(xt=Je.target=x(Ge,xt)),tt.sourceLinks.push(Je),xt.targetLinks.push(Je)}),dt}function lr(dt){dt.nodes.forEach(function(Ge){Ge.partOfCycle=!1,Ge.value=Math.max(t.sum(Ge.sourceLinks,_),t.sum(Ge.targetLinks,_)),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,tt=0,xt=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&&(tt=tt+Ie.width),Ie.source.column==xt&&(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,tt=tt>0?tt+M+g:tt,{top:Ge,bottom:Je,left:tt,right:je}}function Lr(dt,Ge){var Je=t.max(dt.nodes,function(vt){return vt.column}),je=Gt-st,tt=Nt-lt,xt=je+Ge.right+Ge.left,Ie=tt+Ge.top+Ge.bottom,xe=je/xt,ke=tt/Ie;return st=st*xe+Ge.left,Gt=Ge.right==0?Gt:Gt*xe,lt=lt*ke+Ge.top,Nt=Nt*ke,dt.nodes.forEach(function(vt){vt.x0=st+vt.column*((Gt-st-Jt)/Je),vt.x1=vt.x0+Jt}),ke}function ti(dt){var Ge,Je,je;for(Ge=dt.nodes,Je=[],je=0;Ge.length;++je,Ge=Je,Je=[])Ge.forEach(function(tt){tt.depth=je,tt.sourceLinks.forEach(function(xt){Je.indexOf(xt.target)<0&&!xt.circular&&Je.push(xt.target)})});for(Ge=dt.nodes,Je=[],je=0;Ge.length;++je,Ge=Je,Je=[])Ge.forEach(function(tt){tt.height=je,tt.targetLinks.forEach(function(xt){Je.indexOf(xt.source)<0&&!xt.circular&&Je.push(xt.source)})});dt.nodes.forEach(function(tt){tt.column=Math.floor(cr.call(null,tt,je))})}function Br(dt,Ge,Je){var je=r.nest().key(function(vt){return vt.column}).sortKeys(t.ascending).entries(dt.nodes).map(function(vt){return vt.values});Ie(Je),ke();for(var tt=1,xt=Ge;xt>0;--xt)xe(tt*=.99,Je),ke();function Ie(vt){if(_t){var ir=1/0;je.forEach(function(pi){var $r=Nt*_t/(pi.length+1);ir=$r<ir?$r:ir}),sr=ir}var ar=t.min(je,function(pi){return(Nt-lt-(pi.length-1)*sr)/t.sum(pi,_)});ar=ar*P,dt.links.forEach(function(pi){pi.width=pi.value*ar});var vr=Tr(dt),ii=Lr(dt,vr);ar=ar*ii,dt.links.forEach(function(pi){pi.width=pi.value*ar}),je.forEach(function(pi){var $r=pi.length;pi.forEach(function(di,ji){di.depth==je.length-1&&$r==1||di.depth==0&&$r==1?(di.y0=Nt/2-di.value*ar,di.y1=di.y0+di.value*ar):di.partOfCycle?Z(di,vt)==0?(di.y0=Nt/2+ji,di.y1=di.y0+di.value*ar):di.circularLinkType=="top"?(di.y0=lt+ji,di.y1=di.y0+di.value*ar):(di.y0=Nt-di.value*ar-ji,di.y1=di.y0+di.value*ar):vr.top==0||vr.bottom==0?(di.y0=(Nt-lt)/$r*ji,di.y1=di.y0+di.value*ar):(di.y0=(Nt-lt)/2-$r/2+ji,di.y1=di.y0+di.value*ar)})})}function xe(vt,ir){var ar=je.length;je.forEach(function(vr){var ii=vr.length,pi=vr[0].depth;vr.forEach(function($r){var di;if(($r.sourceLinks.length||$r.targetLinks.length)&&!($r.partOfCycle&&Z($r,ir)>0))if(pi==0&&ii==1)di=$r.y1-$r.y0,$r.y0=Nt/2-di/2,$r.y1=Nt/2+di/2;else if(pi==ar-1&&ii==1)di=$r.y1-$r.y0,$r.y0=Nt/2-di/2,$r.y1=Nt/2+di/2;else{var ji=0,In=t.mean($r.sourceLinks,k),wi=t.mean($r.targetLinks,p);In&&wi?ji=(In+wi)/2:ji=In||wi;var On=(ji-b($r))*vt;$r.y0+=On,$r.y1+=On}})})}function ke(){je.forEach(function(vt){var ir,ar,vr=lt,ii=vt.length,pi;for(vt.sort(v),pi=0;pi<ii;++pi)ir=vt[pi],ar=vr-ir.y0,ar>0&&(ir.y0+=ar,ir.y1+=ar),vr=ir.y1+sr;if(ar=vr-sr-Nt,ar>0)for(vr=ir.y0-=ar,ir.y1-=ar,pi=ii-2;pi>=0;--pi)ir=vt[pi],ar=ir.y1+sr-vr,ar>0&&(ir.y0-=ar,ir.y1-=ar),vr=ir.y0})}}function Vr(dt){dt.nodes.forEach(function(Ge){Ge.sourceLinks.sort(d),Ge.targetLinks.sort(h)}),dt.nodes.forEach(function(Ge){var Je=Ge.y0,je=Je,tt=Ge.y1,xt=tt;Ge.sourceLinks.forEach(function(Ie){Ie.circular?(Ie.y0=tt-Ie.width/2,tt=tt-Ie.width):(Ie.y0=Je+Ie.width/2,Je+=Ie.width)}),Ge.targetLinks.forEach(function(Ie){Ie.circular?(Ie.y1=xt-Ie.width/2,xt=xt-Ie.width):(Ie.y1=je+Ie.width/2,je+=Ie.width)})})}return mt}function z(st,lt,Gt){var Nt=0;if(Gt===null){for(var Jt=[],sr=0;sr<st.links.length;sr++){var wr=st.links[sr],cr=wr.source.index,$e=wr.target.index;Jt[cr]||(Jt[cr]=[]),Jt[$e]||(Jt[$e]=[]),Jt[cr].indexOf($e)===-1&&Jt[cr].push($e)}var St=i(Jt);St.sort(function(It,mt){return It.length-mt.length});var Qt={};for(sr=0;sr<St.length;sr++){var Vt=St[sr],_t=Vt.slice(-2);Qt[_t[0]]||(Qt[_t[0]]={}),Qt[_t[0]][_t[1]]=!0}st.links.forEach(function(It){var mt=It.target.index,er=It.source.index;mt===er||Qt[er]&&Qt[er][mt]?(It.circular=!0,It.circularLinkID=Nt,Nt=Nt+1):It.circular=!1})}else st.links.forEach(function(It){It.source[Gt]<It.target[Gt]?It.circular=!1:(It.circular=!0,It.circularLinkID=Nt,Nt=Nt+1)})}function O(st,lt){var Gt=0,Nt=0;st.links.forEach(function(Jt){Jt.circular&&(Jt.source.circularLinkType||Jt.target.circularLinkType?Jt.circularLinkType=Jt.source.circularLinkType?Jt.source.circularLinkType:Jt.target.circularLinkType:Jt.circularLinkType=Gt<Nt?"top":"bottom",Jt.circularLinkType=="top"?Gt=Gt+1:Nt=Nt+1,st.nodes.forEach(function(sr){(C(sr,lt)==C(Jt.source,lt)||C(sr,lt)==C(Jt.target,lt))&&(sr.circularLinkType=Jt.circularLinkType)}))}),st.links.forEach(function(Jt){Jt.circular&&(Jt.source.circularLinkType==Jt.target.circularLinkType&&(Jt.circularLinkType=Jt.source.circularLinkType),pt(Jt,lt)&&(Jt.circularLinkType=Jt.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(Jt){Gt=Jt.circular&&!pt(Jt,lt)?Gt+1:Gt});var Nt=0;return st.targetLinks.forEach(function(Jt){Nt=Jt.circular&&!pt(Jt,lt)?Nt+1:Nt}),Gt+Nt}function j(st){var lt=st.source.sourceLinks,Gt=0;lt.forEach(function(sr){Gt=sr.circular?Gt+1:Gt});var Nt=st.target.targetLinks,Jt=0;return Nt.forEach(function(sr){Jt=sr.circular?Jt+1:Jt}),!(Gt>1||Jt>1)}function N(st,lt,Gt){return st.sort(oe),st.forEach(function(Nt,Jt){var sr=0;if(pt(Nt,Gt)&&j(Nt))Nt.circularPathData.verticalBuffer=sr+Nt.width/2;else{var wr=0;for(wr;wr<Jt;wr++)if(G(st[Jt],st[wr])){var cr=st[wr].circularPathData.verticalBuffer+st[wr].width/2+lt;sr=cr>sr?cr:sr}Nt.circularPathData.verticalBuffer=sr+Nt.width/2}}),st}function H(st,lt,Gt,Nt){var Jt=5,sr=t.min(st.links,function($e){return $e.source.y0});st.links.forEach(function($e){$e.circular&&($e.circularPathData={})});var wr=st.links.filter(function($e){return $e.circularLinkType=="top"});N(wr,lt,Nt);var cr=st.links.filter(function($e){return $e.circularLinkType=="bottom"});N(cr,lt,Nt),st.links.forEach(function($e){if($e.circular){if($e.circularPathData.arcRadius=$e.width+g,$e.circularPathData.leftNodeBuffer=Jt,$e.circularPathData.rightNodeBuffer=Jt,$e.circularPathData.sourceWidth=$e.source.x1-$e.source.x0,$e.circularPathData.sourceX=$e.source.x0+$e.circularPathData.sourceWidth,$e.circularPathData.targetX=$e.target.x0,$e.circularPathData.sourceY=$e.y0,$e.circularPathData.targetY=$e.y1,pt($e,Nt)&&j($e))$e.circularPathData.leftSmallArcRadius=g+$e.width/2,$e.circularPathData.leftLargeArcRadius=g+$e.width/2,$e.circularPathData.rightSmallArcRadius=g+$e.width/2,$e.circularPathData.rightLargeArcRadius=g+$e.width/2,$e.circularLinkType=="bottom"?($e.circularPathData.verticalFullExtent=$e.source.y1+M+$e.circularPathData.verticalBuffer,$e.circularPathData.verticalLeftInnerExtent=$e.circularPathData.verticalFullExtent-$e.circularPathData.leftLargeArcRadius,$e.circularPathData.verticalRightInnerExtent=$e.circularPathData.verticalFullExtent-$e.circularPathData.rightLargeArcRadius):($e.circularPathData.verticalFullExtent=$e.source.y0-M-$e.circularPathData.verticalBuffer,$e.circularPathData.verticalLeftInnerExtent=$e.circularPathData.verticalFullExtent+$e.circularPathData.leftLargeArcRadius,$e.circularPathData.verticalRightInnerExtent=$e.circularPathData.verticalFullExtent+$e.circularPathData.rightLargeArcRadius);else{var St=$e.source.column,Qt=$e.circularLinkType,Vt=st.links.filter(function(mt){return mt.source.column==St&&mt.circularLinkType==Qt});$e.circularLinkType=="bottom"?Vt.sort(Ee):Vt.sort(_e);var _t=0;Vt.forEach(function(mt,er){mt.circularLinkID==$e.circularLinkID&&($e.circularPathData.leftSmallArcRadius=g+$e.width/2+_t,$e.circularPathData.leftLargeArcRadius=g+$e.width/2+er*lt+_t),_t=_t+mt.width}),St=$e.target.column,Vt=st.links.filter(function(mt){return mt.target.column==St&&mt.circularLinkType==Qt}),$e.circularLinkType=="bottom"?Vt.sort(me):Vt.sort(Ce),_t=0,Vt.forEach(function(mt,er){mt.circularLinkID==$e.circularLinkID&&($e.circularPathData.rightSmallArcRadius=g+$e.width/2+_t,$e.circularPathData.rightLargeArcRadius=g+$e.width/2+er*lt+_t),_t=_t+mt.width}),$e.circularLinkType=="bottom"?($e.circularPathData.verticalFullExtent=Math.max(Gt,$e.source.y1,$e.target.y1)+M+$e.circularPathData.verticalBuffer,$e.circularPathData.verticalLeftInnerExtent=$e.circularPathData.verticalFullExtent-$e.circularPathData.leftLargeArcRadius,$e.circularPathData.verticalRightInnerExtent=$e.circularPathData.verticalFullExtent-$e.circularPathData.rightLargeArcRadius):($e.circularPathData.verticalFullExtent=sr-M-$e.circularPathData.verticalBuffer,$e.circularPathData.verticalLeftInnerExtent=$e.circularPathData.verticalFullExtent+$e.circularPathData.leftLargeArcRadius,$e.circularPathData.verticalRightInnerExtent=$e.circularPathData.verticalFullExtent+$e.circularPathData.rightLargeArcRadius)}$e.circularPathData.leftInnerExtent=$e.circularPathData.sourceX+$e.circularPathData.leftNodeBuffer,$e.circularPathData.rightInnerExtent=$e.circularPathData.targetX-$e.circularPathData.rightNodeBuffer,$e.circularPathData.leftFullExtent=$e.circularPathData.sourceX+$e.circularPathData.leftLargeArcRadius+$e.circularPathData.leftNodeBuffer,$e.circularPathData.rightFullExtent=$e.circularPathData.targetX-$e.circularPathData.rightLargeArcRadius-$e.circularPathData.rightNodeBuffer}if($e.circular)$e.path=te($e);else{var It=n.linkHorizontal().source(function(mt){var er=mt.source.x0+(mt.source.x1-mt.source.x0),lr=mt.y0;return[er,lr]}).target(function(mt){var er=mt.target.x0,lr=mt.y1;return[er,lr]});$e.path=It($e)}})}function te(st){var lt="";return st.circularLinkType=="top"?lt="M"+st.circularPathData.sourceX+" "+st.circularPathData.sourceY+" L"+st.circularPathData.leftInnerExtent+" "+st.circularPathData.sourceY+" A"+st.circularPathData.leftLargeArcRadius+" "+st.circularPathData.leftSmallArcRadius+" 0 0 0 "+st.circularPathData.leftFullExtent+" "+(st.circularPathData.sourceY-st.circularPathData.leftSmallArcRadius)+" L"+st.circularPathData.leftFullExtent+" "+st.circularPathData.verticalLeftInnerExtent+" A"+st.circularPathData.leftLargeArcRadius+" "+st.circularPathData.leftLargeArcRadius+" 0 0 0 "+st.circularPathData.leftInnerExtent+" "+st.circularPathData.verticalFullExtent+" L"+st.circularPathData.rightInnerExtent+" "+st.circularPathData.verticalFullExtent+" A"+st.circularPathData.rightLargeArcRadius+" "+st.circularPathData.rightLargeArcRadius+" 0 0 0 "+st.circularPathData.rightFullExtent+" "+st.circularPathData.verticalRightInnerExtent+" L"+st.circularPathData.rightFullExtent+" "+(st.circularPathData.targetY-st.circularPathData.rightSmallArcRadius)+" A"+st.circularPathData.rightLargeArcRadius+" "+st.circularPathData.rightSmallArcRadius+" 0 0 0 "+st.circularPathData.rightInnerExtent+" "+st.circularPathData.targetY+" L"+st.circularPathData.targetX+" "+st.circularPathData.targetY:lt="M"+st.circularPathData.sourceX+" "+st.circularPathData.sourceY+" L"+st.circularPathData.leftInnerExtent+" "+st.circularPathData.sourceY+" A"+st.circularPathData.leftLargeArcRadius+" "+st.circularPathData.leftSmallArcRadius+" 0 0 1 "+st.circularPathData.leftFullExtent+" "+(st.circularPathData.sourceY+st.circularPathData.leftSmallArcRadius)+" L"+st.circularPathData.leftFullExtent+" "+st.circularPathData.verticalLeftInnerExtent+" A"+st.circularPathData.leftLargeArcRadius+" "+st.circularPathData.leftLargeArcRadius+" 0 0 1 "+st.circularPathData.leftInnerExtent+" "+st.circularPathData.verticalFullExtent+" L"+st.circularPathData.rightInnerExtent+" "+st.circularPathData.verticalFullExtent+" A"+st.circularPathData.rightLargeArcRadius+" "+st.circularPathData.rightLargeArcRadius+" 0 0 1 "+st.circularPathData.rightFullExtent+" "+st.circularPathData.verticalRightInnerExtent+" L"+st.circularPathData.rightFullExtent+" "+(st.circularPathData.targetY+st.circularPathData.rightSmallArcRadius)+" A"+st.circularPathData.rightLargeArcRadius+" "+st.circularPathData.rightSmallArcRadius+" 0 0 1 "+st.circularPathData.rightInnerExtent+" "+st.circularPathData.targetY+" L"+st.circularPathData.targetX+" "+st.circularPathData.targetY,lt}function oe(st,lt){return ie(st)==ie(lt)?st.circularLinkType=="bottom"?Ee(st,lt):_e(st,lt):ie(lt)-ie(st)}function _e(st,lt){return st.y0-lt.y0}function Ee(st,lt){return lt.y0-st.y0}function Ce(st,lt){return st.y1-lt.y1}function me(st,lt){return lt.y1-st.y1}function ie(st){return st.target.column-st.source.column}function Se(st){return st.target.x0-st.source.x1}function Le(st,lt){var Gt=V(st),Nt=Se(lt)/Math.tan(Gt),Jt=ut(st)=="up"?st.y1+Nt:st.y1-Nt;return Jt}function Ae(st,lt){var Gt=V(st),Nt=Se(lt)/Math.tan(Gt),Jt=ut(st)=="up"?st.y1-Nt:st.y1+Nt;return Jt}function Fe(st,lt,Gt,Nt){st.links.forEach(function(Jt){if(!Jt.circular&&Jt.target.column-Jt.source.column>1){var sr=Jt.source.column+1,wr=Jt.target.column-1,cr=1,$e=wr-sr+1;for(cr=1;sr<=wr;sr++,cr++)st.nodes.forEach(function(St){if(St.column==sr){var Qt=cr/($e+1),Vt=Math.pow(1-Qt,3),_t=3*Qt*Math.pow(1-Qt,2),It=3*Math.pow(Qt,2)*(1-Qt),mt=Math.pow(Qt,3),er=Vt*Jt.y0+_t*Jt.y0+It*Jt.y1+mt*Jt.y1,lr=er-Jt.width/2,Tr=er+Jt.width/2,Lr;lr>St.y0&&lr<St.y1?(Lr=St.y1-lr+10,Lr=St.circularLinkType=="bottom"?Lr:-Lr,St=ge(St,Lr,lt,Gt),st.nodes.forEach(function(ti){C(ti,Nt)==C(St,Nt)||ti.column!=St.column||Pe(St,ti)&&ge(ti,Lr,lt,Gt)})):Tr>St.y0&&Tr<St.y1?(Lr=Tr-St.y0+10,St=ge(St,Lr,lt,Gt),st.nodes.forEach(function(ti){C(ti,Nt)==C(St,Nt)||ti.column!=St.column||ti.y0<St.y1&&ti.y1>St.y1&&ge(ti,Lr,lt,Gt)})):lr<St.y0&&Tr>St.y1&&(Lr=Tr-St.y0+10,St=ge(St,Lr,lt,Gt),st.nodes.forEach(function(ti){C(ti,Nt)==C(St,Nt)||ti.column!=St.column||ti.y0<St.y1&&ti.y1>St.y1&&ge(ti,Lr,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(Jt){Jt.y1=Jt.y1+lt}),st.sourceLinks.forEach(function(Jt){Jt.y0=Jt.y0+lt})),st}function Re(st,lt,Gt,Nt){st.nodes.forEach(function(Jt){Nt&&Jt.y+(Jt.y1-Jt.y0)>lt&&(Jt.y=Jt.y-(Jt.y+(Jt.y1-Jt.y0)-lt));var sr=st.links.filter(function($e){return C($e.source,Gt)==C(Jt,Gt)}),wr=sr.length;wr>1&&sr.sort(function($e,St){if(!$e.circular&&!St.circular){if($e.target.column==St.target.column)return $e.y1-St.y1;if(Ze($e,St)){if($e.target.column>St.target.column){var Qt=Ae(St,$e);return $e.y1-Qt}if(St.target.column>$e.target.column){var Vt=Ae($e,St);return Vt-St.y1}}else return $e.y1-St.y1}if($e.circular&&!St.circular)return $e.circularLinkType=="top"?-1:1;if(St.circular&&!$e.circular)return St.circularLinkType=="top"?1:-1;if($e.circular&&St.circular)return $e.circularLinkType===St.circularLinkType&&$e.circularLinkType=="top"?$e.target.column===St.target.column?$e.target.y1-St.target.y1:St.target.column-$e.target.column:$e.circularLinkType===St.circularLinkType&&$e.circularLinkType=="bottom"?$e.target.column===St.target.column?St.target.y1-$e.target.y1:$e.target.column-St.target.column:$e.circularLinkType=="top"?-1:1});var cr=Jt.y0;sr.forEach(function($e){$e.y0=cr+$e.width/2,cr=cr+$e.width}),sr.forEach(function($e,St){if($e.circularLinkType=="bottom"){var Qt=St+1,Vt=0;for(Qt;Qt<wr;Qt++)Vt=Vt+sr[Qt].width;$e.y0=Jt.y1-Vt-$e.width/2}})})}function ce(st,lt,Gt){st.nodes.forEach(function(Nt){var Jt=st.links.filter(function(cr){return C(cr.target,Gt)==C(Nt,Gt)}),sr=Jt.length;sr>1&&Jt.sort(function(cr,$e){if(!cr.circular&&!$e.circular){if(cr.source.column==$e.source.column)return cr.y0-$e.y0;if(Ze(cr,$e)){if($e.source.column<cr.source.column){var St=Le($e,cr);return cr.y0-St}if(cr.source.column<$e.source.column){var Qt=Le(cr,$e);return Qt-$e.y0}}else return cr.y0-$e.y0}if(cr.circular&&!$e.circular)return cr.circularLinkType=="top"?-1:1;if($e.circular&&!cr.circular)return $e.circularLinkType=="top"?1:-1;if(cr.circular&&$e.circular)return cr.circularLinkType===$e.circularLinkType&&cr.circularLinkType=="top"?cr.source.column===$e.source.column?cr.source.y1-$e.source.y1:cr.source.column-$e.source.column:cr.circularLinkType===$e.circularLinkType&&cr.circularLinkType=="bottom"?cr.source.column===$e.source.column?cr.source.y1-$e.source.y1:$e.source.column-cr.source.column:cr.circularLinkType=="top"?-1:1});var wr=Nt.y0;Jt.forEach(function(cr){cr.y1=wr+cr.width/2,wr=wr+cr.width}),Jt.forEach(function(cr,$e){if(cr.circularLinkType=="bottom"){var St=$e+1,Qt=0;for(St;St<sr;St++)Qt=Qt+Jt[St].width;cr.y1=Nt.y1-Qt-cr.width/2}})})}function Ze(st,lt){return ut(st)==ut(lt)}function ut(st){return st.y0-st.y1>0?"up":"down"}function pt(st,lt){return C(st.source,lt)==C(st.target,lt)}function Zt(st,lt,Gt){var Nt=st.nodes,Jt=st.links,sr=!1,wr=!1;if(Jt.forEach(function(_t){_t.circularLinkType=="top"?sr=!0:_t.circularLinkType=="bottom"&&(wr=!0)}),sr==!1||wr==!1){var cr=t.min(Nt,function(_t){return _t.y0}),$e=t.max(Nt,function(_t){return _t.y1}),St=$e-cr,Qt=Gt-lt,Vt=Qt/St;Nt.forEach(function(_t){var It=(_t.y1-_t.y0)*Vt;_t.y0=(_t.y0-cr)*Vt,_t.y1=_t.y0+It}),Jt.forEach(function(_t){_t.y0=(_t.y0-cr)*Vt,_t.y1=(_t.y1-cr)*Vt,_t.width=_t.width*Vt})}}e.sankeyCircular=T,e.sankeyCenter=u,e.sankeyLeft=o,e.sankeyRight=s,e.sankeyJustify=l,Object.defineProperty(e,"__esModule",{value:!0})})});var WJ=ye((e2r,XWe)=>{"use strict";XWe.exports={nodeTextOffsetHorizontal:4,nodeTextOffsetVertical:3,nodePadAcross:10,sankeyIterations:50,forceIterations:5,forceTicksPerFrame:10,duration:500,ease:"linear",cn:{sankey:"sankey",sankeyLinks:"sankey-links",sankeyLink:"sankey-link",sankeyNodeSet:"sankey-node-set",sankeyNode:"sankey-node",nodeRect:"node-rect",nodeLabel:"node-label"}}});var oXe=ye((t2r,aXe)=>{"use strict";var ZWe=OWe(),zZt=(F2(),ob(D2)).interpolateNumber,R5=Oa(),Jk=VWe(),OZt=WWe(),Nu=WJ(),D5=cd(),sw=ka(),qZt=So(),p1=Dr(),YJ=p1.strTranslate,BZt=p1.strRotate,KJ=Jm(),$k=KJ.keyFun,E7=KJ.repeat,eXe=KJ.unwrap,YWe=ru(),NZt=qa(),tXe=$h(),UZt=tXe.CAP_SHIFT,VZt=tXe.LINE_SPACING,GZt=3;function HZt(e,t,r){var n=eXe(t),i=n.trace,a=i.domain,o=i.orientation==="h",s=i.node.pad,l=i.node.thickness,u={justify:Jk.sankeyJustify,left:Jk.sankeyLeft,right:Jk.sankeyRight,center:Jk.sankeyCenter}[i.node.align],c=e.width*(a.x[1]-a.x[0]),f=e.height*(a.y[1]-a.y[0]),h=n._nodes,d=n._links,v=n.circular,_;v?_=OZt.sankeyCircular().circularLinkGap(0):_=Jk.sankey(),_.iterations(Nu.sankeyIterations).size(o?[c,f]:[f,c]).nodeWidth(l).nodePadding(s).nodeId(function(V){return V.pointNumber}).nodeAlign(u).nodes(h).links(d);var b=_();_.nodePadding()<s&&p1.warn("node.pad was reduced to ",_.nodePadding()," to fit within the figure.");var p,k,E;for(var S in n._groupLookup){var L=parseInt(n._groupLookup[S]),x;for(p=0;p<b.nodes.length;p++)if(b.nodes[p].pointNumber===L){x=b.nodes[p];break}if(x){var C={pointNumber:parseInt(S),x0:x.x0,x1:x.x1,y0:x.y0,y1:x.y1,partOfGroup:!0,sourceLinks:[],targetLinks:[]};b.nodes.unshift(C),x.childrenNodes.unshift(C)}}function M(){for(p=0;p<b.nodes.length;p++){var V=b.nodes[p],G={},Z,j;for(k=0;k<V.targetLinks.length;k++)j=V.targetLinks[k],Z=j.source.pointNumber+":"+j.target.pointNumber,G.hasOwnProperty(Z)||(G[Z]=[]),G[Z].push(j);var N=Object.keys(G);for(k=0;k<N.length;k++){Z=N[k];var H=G[Z],te=0,oe={};for(E=0;E<H.length;E++)j=H[E],oe[j.label]||(oe[j.label]=0),oe[j.label]+=j.value,te+=j.value;for(E=0;E<H.length;E++)j=H[E],j.flow={value:te,labelConcentration:oe[j.label]/te,concentration:j.value/te,links:H},j.concentrationscale&&(j.color=D5(j.concentrationscale(j.flow.labelConcentration)))}var _e=0;for(k=0;k<V.sourceLinks.length;k++)_e+=V.sourceLinks[k].value;for(k=0;k<V.sourceLinks.length;k++)j=V.sourceLinks[k],j.concentrationOut=j.value/_e;var Ee=0;for(k=0;k<V.targetLinks.length;k++)Ee+=V.targetLinks[k].value;for(k=0;k<V.targetLinks.length;k++)j=V.targetLinks[k],j.concenrationIn=j.value/Ee}}M();function g(V){V.forEach(function(G){var Z,j,N=0,H=G.length,te;for(G.sort(function(oe,_e){return oe.y0-_e.y0}),te=0;te<H;++te)Z=G[te],Z.y0>=N||(j=N-Z.y0,j>1e-6&&(Z.y0+=j,Z.y1+=j)),N=Z.y1+s})}function P(V){var G=V.map(function(_e,Ee){return{x0:_e.x0,index:Ee}}).sort(function(_e,Ee){return _e.x0-Ee.x0}),Z=[],j=-1,N,H=-1/0,te;for(p=0;p<G.length;p++){var oe=V[G[p].index];oe.x0>H+l&&(j+=1,N=oe.x0),H=oe.x0,Z[j]||(Z[j]=[]),Z[j].push(oe),te=N-oe.x0,oe.x0+=te,oe.x1+=te}return Z}if(i.node.x.length&&i.node.y.length){for(p=0;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)}_.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:_,graph:b,forceLayouts:{},interactionState:{dragInProgress:!1,hovered:!1}}}function jZt(e,t,r){var n=D5(t.color),i=D5(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:sw.tinyRGB(n),tinyColorAlpha:n.getAlpha(),tinyColorHoverHue:sw.tinyRGB(i),tinyColorHoverAlpha:i.getAlpha(),linkPath:JJ,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 WZt(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 JJ(){var e=.5;function t(r){var n=r.linkArrowLength;if(r.link.circular)return WZt(r.link,n);var i=Math.abs((r.link.target.x0-r.link.source.x1)/2);n>i&&(n=i);var a=r.link.source.x1,o=r.link.target.x0-n,s=zZt(a,o),l=s(e),u=s(1-e),c=r.link.y0-r.link.width/2,f=r.link.y0+r.link.width/2,h=r.link.y1-r.link.width/2,d=r.link.y1+r.link.width/2,v="M"+a+","+c,_="C"+l+","+c+" "+u+","+h+" "+o+","+h,b="C"+u+","+d+" "+l+","+f+" "+a+","+f,p=n>0?"L"+(o+n)+","+(h+r.link.width/2):"";return p+="L"+o+","+d,v+_+p+b+"Z"}return t}function XZt(e,t){var r=D5(t.color),n=Nu.nodePadAcross,i=e.nodePad/2;t.dx=t.x1-t.x0,t.dy=t.y1-t.y0;var a=t.dx,o=Math.max(.5,t.dy),s="node_"+t.pointNumber;return t.group&&(s=p1.randstr()),t.trace=e.trace,t.curveNumber=e.trace.index,{index:t.pointNumber,key:s,partOfGroup:t.partOfGroup||!1,group:t.group,traceId:e.key,trace:e.trace,node:t,nodePad:e.nodePad,nodeLineColor:e.nodeLineColor,nodeLineWidth:e.nodeLineWidth,textFont:e.textFont,size:e.horizontal?e.height:e.width,visibleWidth:Math.ceil(a),visibleHeight:o,zoneX:-n,zoneY:-i,zoneWidth:a+2*n,zoneHeight:o+2*i,labelY:e.horizontal?t.dy/2+1:t.dx/2+1,left:t.originalLayer===1,sizeAcross:e.width,forceLayouts:e.forceLayouts,horizontal:e.horizontal,darkBackground:r.getBrightness()<=128,tinyColorHue:sw.tinyRGB(r),tinyColorAlpha:r.getAlpha(),valueFormat:e.valueFormat,valueSuffix:e.valueSuffix,sankey:e.sankey,graph:e.graph,arrangement:e.arrangement,uniqueNodeLabelPathId:[e.guid,e.key,s].join("_"),interactionState:e.interactionState,figure:e}}function ZJ(e){e.attr("transform",function(t){return YJ(t.node.x0.toFixed(3),t.node.y0.toFixed(3))})}function ZZt(e){e.call(ZJ)}function rXe(e,t){e.call(ZZt),t.attr("d",JJ())}function KWe(e){e.attr("width",function(t){return t.node.x1-t.node.x0}).attr("height",function(t){return t.visibleHeight})}function XJ(e){return e.link.width>1||e.linkLineWidth>0}function JWe(e){var t=YJ(e.translateX,e.translateY);return t+(e.horizontal?"matrix(1 0 0 1 0 0)":"matrix(0 1 1 0 0 0)")}function $We(e,t,r){e.on(".basic",null).on("mouseover.basic",function(n){!n.interactionState.dragInProgress&&!n.partOfGroup&&(r.hover(this,n,t),n.interactionState.hovered=[this,n])}).on("mousemove.basic",function(n){!n.interactionState.dragInProgress&&!n.partOfGroup&&(r.follow(this,n),n.interactionState.hovered=[this,n])}).on("mouseout.basic",function(n){!n.interactionState.dragInProgress&&!n.partOfGroup&&(r.unhover(this,n,t),n.interactionState.hovered=!1)}).on("click.basic",function(n){n.interactionState.hovered&&(r.unhover(this,n,t),n.interactionState.hovered=!1),!n.interactionState.dragInProgress&&!n.partOfGroup&&r.select(this,n,t)})}function YZt(e,t,r,n){var i=R5.behavior.drag().origin(function(a){return{x:a.node.x0+a.visibleWidth/2,y:a.node.y0+a.visibleHeight/2}}).on("dragstart",function(a){if(a.arrangement!=="fixed"&&(p1.ensureSingle(n._fullLayout._infolayer,"g","dragcover",function(s){n._fullLayout._dragCover=s}),p1.raiseToTop(this),a.interactionState.dragInProgress=a.node,QWe(a.node),a.interactionState.hovered&&(r.nodeEvents.unhover.apply(0,a.interactionState.hovered),a.interactionState.hovered=!1),a.arrangement==="snap")){var o=a.traceId+"|"+a.key;a.forceLayouts[o]?a.forceLayouts[o].alpha(1):KZt(e,o,a,n),JZt(e,t,a,o,n)}}).on("drag",function(a){if(a.arrangement!=="fixed"){var o=R5.event.x,s=R5.event.y;a.arrangement==="snap"?(a.node.x0=o-a.visibleWidth/2,a.node.x1=o+a.visibleWidth/2,a.node.y0=s-a.visibleHeight/2,a.node.y1=s+a.visibleHeight/2):(a.arrangement==="freeform"&&(a.node.x0=o-a.visibleWidth/2,a.node.x1=o+a.visibleWidth/2),s=Math.max(0,Math.min(a.size-a.visibleHeight/2,s)),a.node.y0=s-a.visibleHeight/2,a.node.y1=s+a.visibleHeight/2),QWe(a.node),a.arrangement!=="snap"&&(a.sankey.update(a.graph),rXe(e.filter(nXe(a)),t))}}).on("dragend",function(a){if(a.arrangement!=="fixed"){a.interactionState.dragInProgress=!1;for(var o=0;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"&&iXe(a,n)}});e.on(".drag",null).call(i)}function KZt(e,t,r,n){eYt(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]=ZWe.forceSimulation(i).alphaDecay(0).force("collide",ZWe.forceCollide().radius(function(a){return a.dy/2+r.nodePad/2}).strength(1).iterations(Nu.forceIterations)).force("constrain",$Zt(e,t,i,r,n)).stop()}function JZt(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(tYt(s),r.sankey.update(r.graph),rXe(e.filter(nXe(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,iXe(r,i)}})}function $Zt(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 iXe(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)}NZt.call("_guiRestyle",t,{"node.x":[r],"node.y":[n]},e.trace.index).then(function(){t._fullLayout._dragCover&&t._fullLayout._dragCover.remove()})}function QZt(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 QWe(e){e.lastDraggedX=e.x0+e.dx/2,e.lastDraggedY=e.y0+e.dy/2}function nXe(e){return function(t){return t.node.originalX===e.node.originalX}}function eYt(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 tYt(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}aXe.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 eXe(b).trace.visible}).map(HZt.bind(null,n)),u=t.selectAll("."+Nu.cn.sankey).data(l,$k);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",JWe),u.each(function(b,p){e._fullData[p]._sankey=b;var k="bgsankey-"+b.trace.uid+"-"+p;p1.ensureSingle(e._fullLayout._draggers,"rect",k),e._fullData[p]._bgRect=R5.select("."+k),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",JWe);var c=u.selectAll("."+Nu.cn.sankeyLinks).data(E7,$k);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(k){return k.value}).map(jZt.bind(null,b))},$k);f.enter().append("path").classed(Nu.cn.sankeyLink,!0).call($We,u,i.linkEvents),f.style("stroke",function(b){return XJ(b)?sw.tinyRGB(D5(b.linkLineColor)):b.tinyColorHue}).style("stroke-opacity",function(b){return XJ(b)?sw.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 XJ(b)?b.linkLineWidth:1}).attr("d",JJ()),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(E7,$k);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 QZt(p),p.map(XZt.bind(null,b))},$k);d.enter().append("g").classed(Nu.cn.sankeyNode,!0).call(ZJ).style("opacity",function(b){return(e._context.staticPlot||o)&&!b.partOfGroup?1:0}),d.call($We,u,i.nodeEvents).call(YZt,f,i,e),d.transition().ease(Nu.ease).duration(Nu.duration).call(ZJ).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(E7);v.enter().append("rect").classed(Nu.cn.nodeRect,!0).call(KWe),v.style("stroke-width",function(b){return b.nodeLineWidth}).style("stroke",function(b){return sw.tinyRGB(D5(b.nodeLineColor))}).style("stroke-opacity",function(b){return sw.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(KWe);var _=d.selectAll("."+Nu.cn.nodeLabel).data(E7);_.enter().append("text").classed(Nu.cn.nodeLabel,!0).style("cursor","default"),_.attr("data-notex",1).text(function(b){return b.node.label}).each(function(b){var p=R5.select(this);qZt.font(p,b.textFont),YWe.convertToTspans(p,e)}).attr("text-anchor",function(b){return b.horizontal&&b.left?"end":"start"}).attr("transform",function(b){var p=R5.select(this),k=YWe.lineCount(p),E=b.textFont.size*((k-1)*VZt-UZt),S=b.nodeLineWidth/2+GZt,L=((b.horizontal?b.visibleHeight:b.visibleWidth)-E)/2;b.horizontal&&(b.left?S=-S:S+=b.visibleWidth);var x=b.horizontal?"":"scale(-1,1)"+BZt(90);return YJ(b.horizontal?S:L,b.horizontal?L:S)+x}),_.transition().ease(Nu.ease).duration(Nu.duration)}});var e$=ye((r2r,pXe)=>{"use strict";var Zv=Oa(),QJ=Dr(),k7=QJ.numberFormat,rYt=oXe(),F5=vf(),iYt=ka(),Sx=WJ().cn,Qk=QJ._;function sXe(e){return e!==""}function z5(e,t){return e.filter(function(r){return r.key===t.traceId})}function lXe(e,t){Zv.select(e).select("path").style("fill-opacity",t),Zv.select(e).select("rect").style("fill-opacity",t)}function uXe(e){Zv.select(e).select("text.name").style("fill","black")}function cXe(e){return function(t){return e.node.sourceLinks.indexOf(t.link)!==-1||e.node.targetLinks.indexOf(t.link)!==-1}}function fXe(e){return function(t){return t.node.sourceLinks.indexOf(e.link)!==-1||t.node.targetLinks.indexOf(e.link)!==-1}}function hXe(e,t,r){t&&r&&z5(r,t).selectAll("."+Sx.sankeyLink).filter(cXe(t)).call(dXe.bind(0,t,r,!1))}function $J(e,t,r){t&&r&&z5(r,t).selectAll("."+Sx.sankeyLink).filter(cXe(t)).call(vXe.bind(0,t,r,!1))}function dXe(e,t,r,n){n.style("fill",function(i){if(!i.link.concentrationscale)return i.tinyColorHoverHue}).style("fill-opacity",function(i){if(!i.link.concentrationscale)return i.tinyColorHoverAlpha}),n.each(function(i){var a=i.link.label;a!==""&&z5(t,e).selectAll("."+Sx.sankeyLink).filter(function(o){return o.link.label===a}).style("fill",function(o){if(!o.link.concentrationscale)return o.tinyColorHoverHue}).style("fill-opacity",function(o){if(!o.link.concentrationscale)return o.tinyColorHoverAlpha})}),r&&z5(t,e).selectAll("."+Sx.sankeyNode).filter(fXe(e)).call(hXe)}function vXe(e,t,r,n){n.style("fill",function(i){return i.tinyColorHue}).style("fill-opacity",function(i){return i.tinyColorAlpha}),n.each(function(i){var a=i.link.label;a!==""&&z5(t,e).selectAll("."+Sx.sankeyLink).filter(function(o){return o.link.label===a}).style("fill",function(o){return o.tinyColorHue}).style("fill-opacity",function(o){return o.tinyColorAlpha})}),r&&z5(t,e).selectAll(Sx.sankeyNode).filter(fXe(e)).call($J)}function kf(e,t){var r=e.hoverlabel||{},n=QJ.nestedProperty(r,t).get();return Array.isArray(n)?!1:n}pXe.exports=function(t,r){for(var n=t._fullLayout,i=n._paper,a=n._size,o=0;o<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,x){var C=x.link;C.originalEvent=Zv.event,t._hoverdata=[C],F5.click(t,{target:!0})},u=function(L,x,C){t._fullLayout.hovermode!==!1&&(Zv.select(L).call(dXe.bind(0,x,C,!0)),x.link.trace.link.hoverinfo!=="skip"&&(x.link.fullData=x.link.trace,t.emit("plotly_hover",{event:Zv.event,points:[x.link]})))},c=Qk(t,"source:")+" ",f=Qk(t,"target:")+" ",h=Qk(t,"concentration:")+" ",d=Qk(t,"incoming flow count:")+" ",v=Qk(t,"outgoing flow count:")+" ",_=function(L,x){if(t._fullLayout.hovermode===!1)return;var C=x.link.trace.link;if(C.hoverinfo==="none"||C.hoverinfo==="skip")return;var M=[];function g(Z){var j,N;Z.circular?(j=(Z.circularPathData.leftInnerExtent+Z.circularPathData.rightInnerExtent)/2,N=Z.circularPathData.verticalFullExtent):(j=(Z.source.x1+Z.target.x0)/2,N=(Z.y0+Z.y1)/2);var H=[j,N];return Z.trace.orientation==="v"&&H.reverse(),H[0]+=x.parent.translateX,H[1]+=x.parent.translateY,H}for(var P=0,T=0;T<x.flow.links.length;T++){var z=x.flow.links[T];if(!(t._fullLayout.hovermode==="closest"&&x.link.pointNumber!==z.pointNumber)){x.link.pointNumber===z.pointNumber&&(P=T),z.fullData=z.trace,C=x.link.trace.link;var O=g(z),V={valueLabel:k7(x.valueFormat)(z.value)+x.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+k7("%0.2f")(z.flow.labelConcentration):""].filter(sXe).join("<br>"),color:kf(C,"bgcolor")||iYt.addOpacity(z.color,1),borderColor:kf(C,"bordercolor"),fontFamily:kf(C,"font.family"),fontSize:kf(C,"font.size"),fontColor:kf(C,"font.color"),fontWeight:kf(C,"font.weight"),fontStyle:kf(C,"font.style"),fontVariant:kf(C,"font.variant"),fontTextcase:kf(C,"font.textcase"),fontLineposition:kf(C,"font.lineposition"),fontShadow:kf(C,"font.shadow"),nameLength:kf(C,"namelength"),textAlign:kf(C,"align"),idealAlign:Zv.event.x<O[0]?"right":"left",hovertemplate:C.hovertemplate,hovertemplateLabels:V,eventData:[z]})}}var G=F5.loneHover(M,{container:n._hoverlayer.node(),outerContainer:n._paper.node(),gd:t,anchorIndex:P});G.each(function(){var Z=this;x.link.concentrationscale||lXe(Z,.65),uXe(Z)})},b=function(L,x,C){t._fullLayout.hovermode!==!1&&(Zv.select(L).call(vXe.bind(0,x,C,!0)),x.link.trace.link.hoverinfo!=="skip"&&(x.link.fullData=x.link.trace,t.emit("plotly_unhover",{event:Zv.event,points:[x.link]})),F5.loneUnhover(n._hoverlayer.node()))},p=function(L,x,C){var M=x.node;M.originalEvent=Zv.event,t._hoverdata=[M],Zv.select(L).call($J,x,C),F5.click(t,{target:!0})},k=function(L,x,C){t._fullLayout.hovermode!==!1&&(Zv.select(L).call(hXe,x,C),x.node.trace.node.hoverinfo!=="skip"&&(x.node.fullData=x.node.trace,t.emit("plotly_hover",{event:Zv.event,points:[x.node]})))},E=function(L,x){if(t._fullLayout.hovermode!==!1){var C=x.node.trace.node;if(!(C.hoverinfo==="none"||C.hoverinfo==="skip")){var M=Zv.select(L).select("."+Sx.nodeRect),g=t._fullLayout._paperdiv.node().getBoundingClientRect(),P=M.node().getBoundingClientRect(),T=P.left-2-g.left,z=P.right+2-g.left,O=P.top+P.height/4-g.top,V={valueLabel:k7(x.valueFormat)(x.node.value)+x.valueSuffix};x.node.fullData=x.node.trace,t._fullLayout._calcInverseTransform(t);var G=t._fullLayout._invScaleX,Z=t._fullLayout._invScaleY,j=F5.loneHover({x0:G*T,x1:G*z,y:Z*O,name:k7(x.valueFormat)(x.node.value)+x.valueSuffix,text:[x.node.label,d+x.node.targetLinks.length,v+x.node.sourceLinks.length].filter(sXe).join("<br>"),color:kf(C,"bgcolor")||x.tinyColorHue,borderColor:kf(C,"bordercolor"),fontFamily:kf(C,"font.family"),fontSize:kf(C,"font.size"),fontColor:kf(C,"font.color"),fontWeight:kf(C,"font.weight"),fontStyle:kf(C,"font.style"),fontVariant:kf(C,"font.variant"),fontTextcase:kf(C,"font.textcase"),fontLineposition:kf(C,"font.lineposition"),fontShadow:kf(C,"font.shadow"),nameLength:kf(C,"namelength"),textAlign:kf(C,"align"),idealAlign:"left",hovertemplate:C.hovertemplate,hovertemplateLabels:V,eventData:[x.node]},{container:n._hoverlayer.node(),outerContainer:n._paper.node(),gd:t});lXe(j,.85),uXe(j)}}},S=function(L,x,C){t._fullLayout.hovermode!==!1&&(Zv.select(L).call($J,x,C),x.node.trace.node.hoverinfo!=="skip"&&(x.node.fullData=x.node.trace,t.emit("plotly_unhover",{event:Zv.event,points:[x.node]})),F5.loneUnhover(n._hoverlayer.node()))};rYt(t,i,r,{width:a.w,height:a.h,margin:{t:a.t,r:a.r,b:a.b,l:a.l}},{linkEvents:{hover:u,follow:_,unhover:b,select:l},nodeEvents:{hover:k,follow:E,unhover:S,select:p}})}});var gXe=ye(lw=>{"use strict";var nYt=mc().overrideAll,aYt=Id().getModuleCalcData,oYt=e$(),sYt=B1(),lYt=Sg(),uYt=yv(),cYt=Of().prepSelect,t$=Dr(),fYt=qa(),C7="sankey";lw.name=C7;lw.baseLayoutAttrOverrides=nYt({hoverlabel:sYt.hoverlabel},"plot","nested");lw.plot=function(e){var t=aYt(e.calcdata,C7)[0];oYt(e,t),lw.updateFx(e)};lw.clean=function(e,t,r,n){var i=n._has&&n._has(C7),a=t._has&&t._has(C7);i&&!a&&(n._paperdiv.selectAll(".sankey").remove(),n._paperdiv.selectAll(".bgsankey").remove())};lw.updateFx=function(e){for(var t=0;t<e._fullData.length;t++)hYt(e,t)};function hYt(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")){lYt(o,a);var s={_id:"x",c2p:t$.identity,_offset:r._sankey.translateX,_length:r._sankey.width},l={_id:"y",c2p:t$.identity,_offset:r._sankey.translateY,_length:r._sankey.height},u={gd:e,element:o.node(),plotinfo:{id:t,xaxis:s,yaxis:l,fillRangeItems:t$.noop},subplot:t,xaxes:[s],yaxes:[l],doneFnCompleted:function(c){var f=e._fullData[t],h,d=f.node.groups.slice(),v=[];function _(E){for(var S=f._sankey.graph.nodes,L=0;L<S.length;L++)if(S[L].pointNumber===E)return S[L]}for(var b=0;b<c.length;b++){var p=_(c[b].pointNumber);if(p)if(p.group){for(var k=0;k<p.childrenNodes.length;k++)v.push(p.childrenNodes[k].pointNumber);d[p.pointNumber-f.node._count]=!1}else v.push(p.pointNumber)}h=d.filter(Boolean).concat([v]),fYt.call("_guiRestyle",e,{"node.groups":[h]},t)}};u.prepFn=function(c,f,h){cYt(c,f,h,u,i)},uYt.init(u)}}});var yXe=ye((n2r,mXe)=>{"use strict";mXe.exports=function(t,r){for(var n=t.cd,i=[],a=n[0].trace,o=a._sankey.graph.nodes,s=0;s<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 xXe=ye((a2r,_Xe)=>{"use strict";_Xe.exports={attributes:GJ(),supplyDefaults:TWe(),calc:kWe(),plot:e$(),moduleType:"trace",name:"sankey",basePlotModule:gXe(),selectPoints:yXe(),categories:["noOpacity"],meta:{}}});var wXe=ye((o2r,bXe)=>{"use strict";bXe.exports=xXe()});var AXe=ye(O5=>{"use strict";var TXe=Mc();O5.name="indicator";O5.plot=function(e,t,r,n){TXe.plotBasePlot(O5.name,e,t,r,n)};O5.clean=function(e,t,r,n){TXe.cleanBasePlot(O5.name,e,t,r,n)}});var i$=ye((l2r,LXe)=>{"use strict";var Mx=Ao().extendFlat,MXe=Ao().extendDeep,dYt=mc().overrideAll,EXe=ec(),kXe=Lh(),vYt=Cc().attributes,Bf=Rd(),pYt=vl().templatedArray,L7=XT(),SXe=df().descriptionOnlyNumbers,r$=EXe({editType:"plot",colorEditType:"plot"}),eC={color:{valType:"color",editType:"plot"},line:{color:{valType:"color",dflt:kXe.defaultLine,editType:"plot"},width:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"calc"},thickness:{valType:"number",min:0,max:1,dflt:1,editType:"plot"},editType:"calc"},CXe={valType:"info_array",items:[{valType:"number",editType:"plot"},{valType:"number",editType:"plot"}],editType:"plot"},gYt=pYt("step",MXe({},eC,{range:CXe}));LXe.exports={mode:{valType:"flaglist",editType:"calc",flags:["number","delta","gauge"],dflt:"number"},value:{valType:"number",editType:"calc",anim:!0},align:{valType:"enumerated",values:["left","center","right"],editType:"plot"},domain:vYt({name:"indicator",trace:!0,editType:"calc"}),title:{text:{valType:"string",editType:"plot"},align:{valType:"enumerated",values:["left","center","right"],editType:"plot"},font:Mx({},r$,{}),editType:"plot"},number:{valueformat:{valType:"string",dflt:"",editType:"plot",description:SXe("value")},font:Mx({},r$,{}),prefix:{valType:"string",dflt:"",editType:"plot"},suffix:{valType:"string",dflt:"",editType:"plot"},editType:"plot"},delta:{reference:{valType:"number",editType:"calc"},position:{valType:"enumerated",values:["top","bottom","left","right"],dflt:"bottom",editType:"plot"},relative:{valType:"boolean",editType:"plot",dflt:!1},valueformat:{valType:"string",editType:"plot",description:SXe("value")},increasing:{symbol:{valType:"string",dflt:L7.INCREASING.SYMBOL,editType:"plot"},color:{valType:"color",dflt:L7.INCREASING.COLOR,editType:"plot"},editType:"plot"},decreasing:{symbol:{valType:"string",dflt:L7.DECREASING.SYMBOL,editType:"plot"},color:{valType:"color",dflt:L7.DECREASING.COLOR,editType:"plot"},editType:"plot"},font:Mx({},r$,{}),prefix:{valType:"string",dflt:"",editType:"plot"},suffix:{valType:"string",dflt:"",editType:"plot"},editType:"calc"},gauge:{shape:{valType:"enumerated",editType:"plot",dflt:"angular",values:["angular","bullet"]},bar:MXe({},eC,{color:{dflt:"green"}}),bgcolor:{valType:"color",editType:"plot"},bordercolor:{valType:"color",dflt:kXe.defaultLine,editType:"plot"},borderwidth:{valType:"number",min:0,dflt:1,editType:"plot"},axis:dYt({range:CXe,visible:Mx({},Bf.visible,{dflt:!0}),tickmode:Bf.minor.tickmode,nticks:Bf.nticks,tick0:Bf.tick0,dtick:Bf.dtick,tickvals:Bf.tickvals,ticktext:Bf.ticktext,ticks:Mx({},Bf.ticks,{dflt:"outside"}),ticklen:Bf.ticklen,tickwidth:Bf.tickwidth,tickcolor:Bf.tickcolor,ticklabelstep:Bf.ticklabelstep,showticklabels:Bf.showticklabels,labelalias:Bf.labelalias,tickfont:EXe({}),tickangle:Bf.tickangle,tickformat:Bf.tickformat,tickformatstops:Bf.tickformatstops,tickprefix:Bf.tickprefix,showtickprefix:Bf.showtickprefix,ticksuffix:Bf.ticksuffix,showticksuffix:Bf.showticksuffix,separatethousands:Bf.separatethousands,exponentformat:Bf.exponentformat,minexponent:Bf.minexponent,showexponent:Bf.showexponent,editType:"plot"},"plot"),steps:gYt,threshold:{line:{color:Mx({},eC.line.color,{}),width:Mx({},eC.line.width,{dflt:1}),editType:"plot"},thickness:Mx({},eC.thickness,{dflt:.85}),value:{valType:"number",editType:"calc",dflt:!1},editType:"plot"},editType:"plot"}}});var n$=ye((u2r,PXe)=>{"use strict";PXe.exports={defaultNumberFontSize:80,bulletNumberDomainSize:.25,bulletPadding:.025,innerRadius:.75,valueThickness:.5,titlePadding:5,horizontalPadding:10}});var DXe=ye((c2r,RXe)=>{"use strict";var ty=Dr(),I7=i$(),mYt=Cc().defaults,IXe=vl(),yYt=Yd(),P7=n$(),_Yt=bb(),xYt=M3(),bYt=e_(),wYt=t_();function TYt(e,t,r,n){function i(x,C){return ty.coerce(e,t,I7,x,C)}mYt(t,n,i),i("mode"),t._hasNumber=t.mode.indexOf("number")!==-1,t._hasDelta=t.mode.indexOf("delta")!==-1,t._hasGauge=t.mode.indexOf("gauge")!==-1;var a=i("value");t._range=[0,typeof a=="number"?1.5*a:1];var o=new Array(2),s;if(t._hasNumber){i("number.valueformat");var l=ty.extendFlat({},n.font);l.size=void 0,ty.coerceFont(i,"number.font",l),t.number.font.size===void 0&&(t.number.font.size=P7.defaultNumberFontSize,o[0]=!0),i("number.prefix"),i("number.suffix"),s=t.number.font.size}var u;if(t._hasDelta){var c=ty.extendFlat({},n.font);c.size=void 0,ty.coerceFont(i,"delta.font",c),t.delta.font.size===void 0&&(t.delta.font.size=(t._hasNumber?.5:1)*(s||P7.defaultNumberFontSize),o[1]=!0),i("delta.reference",t.value),i("delta.relative"),i("delta.valueformat",t.delta.relative?"2%":""),i("delta.increasing.symbol"),i("delta.increasing.color"),i("delta.decreasing.symbol"),i("delta.decreasing.color"),i("delta.position"),i("delta.prefix"),i("delta.suffix"),u=t.delta.font.size}t._scaleNumbers=(!t._hasNumber||o[0])&&(!t._hasDelta||o[1])||!1;var f=ty.extendFlat({},n.font);f.size=.25*(s||u||P7.defaultNumberFontSize),ty.coerceFont(i,"title.font",f),i("title.text");var h,d,v,_;function b(x,C){return ty.coerce(h,d,I7.gauge,x,C)}function p(x,C){return ty.coerce(v,_,I7.gauge.axis,x,C)}if(t._hasGauge){h=e.gauge,h||(h={}),d=IXe.newContainer(t,"gauge"),b("shape");var k=t._isBullet=t.gauge.shape==="bullet";k||i("title.align","center");var E=t._isAngular=t.gauge.shape==="angular";E||i("align","center"),b("bgcolor",n.paper_bgcolor),b("borderwidth"),b("bordercolor"),b("bar.color"),b("bar.line.color"),b("bar.line.width");var S=P7.valueThickness*(t.gauge.shape==="bullet"?.5:1);b("bar.thickness",S),yYt(h,d,{name:"steps",handleItemDefaults:AYt}),b("threshold.value"),b("threshold.thickness"),b("threshold.line.width"),b("threshold.line.color"),v={},h&&(v=h.axis||{}),_=IXe.newContainer(d,"axis"),p("visible"),t._range=p("range",t._range);var L={font:n.font,noAutotickangles:!0,outerTicks:!0,noTicklabelshift:!0,noTicklabelstandoff:!0};_Yt(v,_,p,"linear"),wYt(v,_,p,"linear",L),bYt(v,_,p,"linear",L),xYt(v,_,p,L)}else i("title.align","center"),i("align","center"),t._isAngular=t._isBullet=!1;t._length=null}function AYt(e,t){function r(n,i){return ty.coerce(e,t,I7.gauge.steps,n,i)}r("color"),r("line.color"),r("line.width"),r("range"),r("thickness")}RXe.exports={supplyDefaults:TYt}});var zXe=ye((f2r,FXe)=>{"use strict";function SYt(e,t){var r=[],n=t.value;typeof t._lastValue!="number"&&(t._lastValue=t.value);var i=t._lastValue,a=i;return t._hasDelta&&typeof t.delta.reference=="number"&&(a=t.delta.reference),r[0]={y:n,lastY:i,delta:n-a,relativeDelta:(n-a)/a},r}FXe.exports={calc:SYt}});var VXe=ye((h2r,UXe)=>{"use strict";var dw=Oa(),MYt=(F2(),ob(D2)).interpolate,OXe=(F2(),ob(D2)).interpolateNumber,Ex=Dr(),EYt=Ex.strScale,rC=Ex.strTranslate,kYt=Ex.rad2deg,CYt=$h().MID_SHIFT,hw=So(),uw=n$(),D7=ru(),sv=ho(),LYt=i4(),PYt=uI(),IYt=Rd(),q5=ka(),a$={left:"start",center:"middle",right:"end"},cw={left:0,center:.5,right:1},qXe=/[yzafpnµmkMGTPEZY]/;function iC(e){return e&&e.duration>0}UXe.exports=function(t,r,n,i){var a=t._fullLayout,o;iC(n)&&i&&(o=i()),Ex.makeTraceGroups(a._indicatorlayer,r,"trace").each(function(s){var l=s[0],u=l.trace,c=dw.select(this),f=u._hasGauge,h=u._isAngular,d=u._isBullet,v=u.domain,_={w:a._size.w*(v.x[1]-v.x[0]),h:a._size.h*(v.y[1]-v.y[0]),l:a._size.l+a._size.w*v.x[0],r:a._size.r+a._size.w*(1-v.x[1]),t:a._size.t+a._size.h*(1-v.y[1]),b:a._size.b+a._size.h*v.y[0]},b=_.l+_.w/2,p=_.t+_.h/2,k=Math.min(_.w/2,_.h),E=uw.innerRadius*k,S,L,x,C=u.align||"center";if(L=p,!f)S=_.l+cw[C]*_.w,x=function(j){return BXe(j,_.w,_.h)};else if(h&&(S=b,L=p+k/2,x=function(j){return OYt(j,.9*E)}),d){var M=uw.bulletPadding,g=1-uw.bulletNumberDomainSize+M;S=_.l+(g+(1-g)*cw[C])*_.w,x=function(j){return BXe(j,(uw.bulletNumberDomainSize-M)*_.w,_.h)}}FYt(t,c,s,{numbersX:S,numbersY:L,numbersScaler:x,transitionOpts:n,onComplete:o});var P,T;f&&(P={range:u.gauge.axis.range,color:u.gauge.bgcolor,line:{color:u.gauge.bordercolor,width:0},thickness:1},T={range:u.gauge.axis.range,color:"rgba(0, 0, 0, 0)",line:{color:u.gauge.bordercolor,width:u.gauge.borderwidth},thickness:1});var z=c.selectAll("g.angular").data(h?s:[]);z.exit().remove();var O=c.selectAll("g.angularaxis").data(h?s:[]);O.exit().remove(),h&&DYt(t,c,s,{radius:k,innerRadius:E,gauge:z,layer:O,size:_,gaugeBg:P,gaugeOutline:T,transitionOpts:n,onComplete:o});var V=c.selectAll("g.bullet").data(d?s:[]);V.exit().remove();var G=c.selectAll("g.bulletaxis").data(d?s:[]);G.exit().remove(),d&&RYt(t,c,s,{gauge:V,layer:G,size:_,gaugeBg:P,gaugeOutline:T,transitionOpts:n,onComplete:o});var Z=c.selectAll("text.title").data(s);Z.exit().remove(),Z.enter().append("text").classed("title",!0),Z.attr("text-anchor",function(){return d?a$.right:a$[u.title.align]}).text(u.title.text).call(hw.font,u.title.font).call(D7.convertToTspans,t),Z.attr("transform",function(){var j=_.l+_.w*cw[u.title.align],N,H=uw.titlePadding,te=hw.bBox(Z.node());if(f){if(h)if(u.gauge.axis.visible){var oe=hw.bBox(O.node());N=oe.top-H-te.bottom}else N=_.t+_.h/2-k/2-te.bottom-H;d&&(N=L-(te.top+te.bottom)/2,j=_.l-uw.bulletPadding*_.w)}else N=u._numbersTop-H-te.bottom;return rC(j,N)})})};function RYt(e,t,r,n){var i=r[0].trace,a=n.gauge,o=n.layer,s=n.gaugeBg,l=n.gaugeOutline,u=n.size,c=i.domain,f=n.transitionOpts,h=n.onComplete,d,v,_,b,p;a.enter().append("g").classed("bullet",!0),a.attr("transform",rC(u.l,u.t)),o.enter().append("g").classed("bulletaxis",!0).classed("crisp",!0),o.selectAll("g.xbulletaxistick,path,text").remove();var k=u.h,E=i.gauge.bar.thickness*k,S=c.x[0],L=c.x[0]+(c.x[1]-c.x[0])*(i._hasNumber||i._hasDelta?1-uw.bulletNumberDomainSize:1);d=tC(e,i.gauge.axis),d._id="xbulletaxis",d.domain=[S,L],d.setScale(),v=sv.calcTicks(d),_=sv.makeTransTickFn(d),b=sv.getTickSigns(d)[2],p=u.t+u.h,d.visible&&(sv.drawTicks(e,d,{vals:d.ticks==="inside"?sv.clipEnds(d,v):v,layer:o,path:sv.makeTickPath(d,p,b),transFn:_}),sv.drawLabels(e,d,{vals:v,layer:o,transFn:_,labelFns:sv.makeLabelFns(d,p)}));function x(O){O.attr("width",function(V){return Math.max(0,d.c2p(V.range[1])-d.c2p(V.range[0]))}).attr("x",function(V){return d.c2p(V.range[0])}).attr("y",function(V){return .5*(1-V.thickness)*k}).attr("height",function(V){return V.thickness*k})}var C=[s].concat(i.gauge.steps),M=a.selectAll("g.bg-bullet").data(C);M.enter().append("g").classed("bg-bullet",!0).append("rect"),M.select("rect").call(x).call(fw),M.exit().remove();var g=a.selectAll("g.value-bullet").data([i.gauge.bar]);g.enter().append("g").classed("value-bullet",!0).append("rect"),g.select("rect").attr("height",E).attr("y",(k-E)/2).call(fw),iC(f)?g.select("rect").transition().duration(f.duration).ease(f.easing).each("end",function(){h&&h()}).each("interrupt",function(){h&&h()}).attr("width",Math.max(0,d.c2p(Math.min(i.gauge.axis.range[1],r[0].y)))):g.select("rect").attr("width",typeof r[0].y=="number"?Math.max(0,d.c2p(Math.min(i.gauge.axis.range[1],r[0].y))):0),g.exit().remove();var P=r.filter(function(){return i.gauge.threshold.value||i.gauge.threshold.value===0}),T=a.selectAll("g.threshold-bullet").data(P);T.enter().append("g").classed("threshold-bullet",!0).append("line"),T.select("line").attr("x1",d.c2p(i.gauge.threshold.value)).attr("x2",d.c2p(i.gauge.threshold.value)).attr("y1",(1-i.gauge.threshold.thickness)/2*k).attr("y2",(1-(1-i.gauge.threshold.thickness)/2)*k).call(q5.stroke,i.gauge.threshold.line.color).style("stroke-width",i.gauge.threshold.line.width),T.exit().remove();var z=a.selectAll("g.gauge-outline").data([l]);z.enter().append("g").classed("gauge-outline",!0).append("rect"),z.select("rect").call(x).call(fw),z.exit().remove()}function DYt(e,t,r,n){var i=r[0].trace,a=n.size,o=n.radius,s=n.innerRadius,l=n.gaugeBg,u=n.gaugeOutline,c=[a.l+a.w/2,a.t+a.h/2+o/2],f=n.gauge,h=n.layer,d=n.transitionOpts,v=n.onComplete,_=Math.PI/2;function b(_e){var Ee=i.gauge.axis.range[0],Ce=i.gauge.axis.range[1],me=(_e-Ee)/(Ce-Ee)*Math.PI-_;return me<-_?-_:me>_?_:me}function p(_e){return dw.svg.arc().innerRadius((s+o)/2-_e/2*(o-s)).outerRadius((s+o)/2+_e/2*(o-s)).startAngle(-_)}function k(_e){_e.attr("d",function(Ee){return p(Ee.thickness).startAngle(b(Ee.range[0])).endAngle(b(Ee.range[1]))()})}var E,S,L,x;f.enter().append("g").classed("angular",!0),f.attr("transform",rC(c[0],c[1])),h.enter().append("g").classed("angularaxis",!0).classed("crisp",!0),h.selectAll("g.xangularaxistick,path,text").remove(),E=tC(e,i.gauge.axis),E.type="linear",E.range=i.gauge.axis.range,E._id="xangularaxis",E.ticklabeloverflow="allow",E.setScale();var C=function(_e){return(E.range[0]-_e.x)/(E.range[1]-E.range[0])*Math.PI+Math.PI},M={},g=sv.makeLabelFns(E,0),P=g.labelStandoff;M.xFn=function(_e){var Ee=C(_e);return Math.cos(Ee)*P},M.yFn=function(_e){var Ee=C(_e),Ce=Math.sin(Ee)>0?.2:1;return-Math.sin(Ee)*(P+_e.fontSize*Ce)+Math.abs(Math.cos(Ee))*(_e.fontSize*CYt)},M.anchorFn=function(_e){var Ee=C(_e),Ce=Math.cos(Ee);return Math.abs(Ce)<.1?"middle":Ce>0?"start":"end"},M.heightFn=function(_e,Ee,Ce){var me=C(_e);return-.5*(1+Math.sin(me))*Ce};var T=function(_e){return rC(c[0]+o*Math.cos(_e),c[1]-o*Math.sin(_e))};L=function(_e){return T(C(_e))};var z=function(_e){var Ee=C(_e);return T(Ee)+"rotate("+-kYt(Ee)+")"};if(S=sv.calcTicks(E),x=sv.getTickSigns(E)[2],E.visible){x=E.ticks==="inside"?-1:1;var O=(E.linewidth||1)/2;sv.drawTicks(e,E,{vals:S,layer:h,path:"M"+x*O+",0h"+x*E.ticklen,transFn:z}),sv.drawLabels(e,E,{vals:S,layer:h,transFn:L,labelFns:M})}var V=[l].concat(i.gauge.steps),G=f.selectAll("g.bg-arc").data(V);G.enter().append("g").classed("bg-arc",!0).append("path"),G.select("path").call(k).call(fw),G.exit().remove();var Z=p(i.gauge.bar.thickness),j=f.selectAll("g.value-arc").data([i.gauge.bar]);j.enter().append("g").classed("value-arc",!0).append("path");var N=j.select("path");iC(d)?(N.transition().duration(d.duration).ease(d.easing).each("end",function(){v&&v()}).each("interrupt",function(){v&&v()}).attrTween("d",zYt(Z,b(r[0].lastY),b(r[0].y))),i._lastValue=r[0].y):N.attr("d",typeof r[0].y=="number"?Z.endAngle(b(r[0].y)):"M0,0Z"),N.call(fw),j.exit().remove(),V=[];var H=i.gauge.threshold.value;(H||H===0)&&V.push({range:[H,H],color:i.gauge.threshold.color,line:{color:i.gauge.threshold.line.color,width:i.gauge.threshold.line.width},thickness:i.gauge.threshold.thickness});var te=f.selectAll("g.threshold-arc").data(V);te.enter().append("g").classed("threshold-arc",!0).append("path"),te.select("path").call(k).call(fw),te.exit().remove();var oe=f.selectAll("g.gauge-outline").data([u]);oe.enter().append("g").classed("gauge-outline",!0).append("path"),oe.select("path").call(k).call(fw),oe.exit().remove()}function FYt(e,t,r,n){var i=r[0].trace,a=n.numbersX,o=n.numbersY,s=i.align||"center",l=a$[s],u=n.transitionOpts,c=n.onComplete,f=Ex.ensureSingle(t,"g","numbers"),h,d,v,_=[];i._hasNumber&&_.push("number"),i._hasDelta&&(_.push("delta"),i.delta.position==="left"&&_.reverse());var b=f.selectAll("text").data(_);b.enter().append("text"),b.attr("text-anchor",function(){return l}).attr("class",function(T){return T}).attr("x",null).attr("y",null).attr("dx",null).attr("dy",null),b.exit().remove();function p(T,z,O,V){if(T.match("s")&&O>=0!=V>=0&&!z(O).slice(-1).match(qXe)&&!z(V).slice(-1).match(qXe)){var G=T.slice().replace("s","f").replace(/\d+/,function(j){return parseInt(j)-1}),Z=tC(e,{tickformat:G});return function(j){return Math.abs(j)<1?sv.tickText(Z,j).text:z(j)}}else return z}function k(){var T=tC(e,{tickformat:i.number.valueformat},i._range);T.setScale(),sv.prepTicks(T);var z=function(j){return sv.tickText(T,j).text},O=i.number.suffix,V=i.number.prefix,G=f.select("text.number");function Z(){var j=typeof r[0].y=="number"?V+z(r[0].y)+O:"-";G.text(j).call(hw.font,i.number.font).call(D7.convertToTspans,e)}return iC(u)?G.transition().duration(u.duration).ease(u.easing).each("end",function(){Z(),c&&c()}).each("interrupt",function(){Z(),c&&c()}).attrTween("text",function(){var j=dw.select(this),N=OXe(r[0].lastY,r[0].y);i._lastValue=r[0].y;var H=p(i.number.valueformat,z,r[0].lastY,r[0].y);return function(te){j.text(V+H(N(te))+O)}}):Z(),h=NXe(V+z(r[0].y)+O,i.number.font,l,e),G}function E(){var T=tC(e,{tickformat:i.delta.valueformat},i._range);T.setScale(),sv.prepTicks(T);var z=function(te){return sv.tickText(T,te).text},O=i.delta.suffix,V=i.delta.prefix,G=function(te){var oe=i.delta.relative?te.relativeDelta:te.delta;return oe},Z=function(te,oe){return te===0||typeof te!="number"||isNaN(te)?"-":(te>0?i.delta.increasing.symbol:i.delta.decreasing.symbol)+V+oe(te)+O},j=function(te){return te.delta>=0?i.delta.increasing.color:i.delta.decreasing.color};i._deltaLastValue===void 0&&(i._deltaLastValue=G(r[0]));var N=f.select("text.delta");N.call(hw.font,i.delta.font).call(q5.fill,j({delta:i._deltaLastValue}));function H(){N.text(Z(G(r[0]),z)).call(q5.fill,j(r[0])).call(D7.convertToTspans,e)}return iC(u)?N.transition().duration(u.duration).ease(u.easing).tween("text",function(){var te=dw.select(this),oe=G(r[0]),_e=i._deltaLastValue,Ee=p(i.delta.valueformat,z,_e,oe),Ce=OXe(_e,oe);return i._deltaLastValue=oe,function(me){te.text(Z(Ce(me),Ee)),te.call(q5.fill,j({delta:Ce(me)}))}}).each("end",function(){H(),c&&c()}).each("interrupt",function(){H(),c&&c()}):H(),d=NXe(Z(G(r[0]),z),i.delta.font,l,e),N}var S=i.mode+i.align,L;if(i._hasDelta&&(L=E(),S+=i.delta.position+i.delta.font.size+i.delta.font.family+i.delta.valueformat,S+=i.delta.increasing.symbol+i.delta.decreasing.symbol,v=d),i._hasNumber&&(k(),S+=i.number.font.size+i.number.font.family+i.number.valueformat+i.number.suffix+i.number.prefix,v=h),i._hasDelta&&i._hasNumber){var x=[(h.left+h.right)/2,(h.top+h.bottom)/2],C=[(d.left+d.right)/2,(d.top+d.bottom)/2],M,g,P=.75*i.delta.font.size;i.delta.position==="left"&&(M=R7(i,"deltaPos",0,-1*(h.width*cw[i.align]+d.width*(1-cw[i.align])+P),S,Math.min),g=x[1]-C[1],v={width:h.width+d.width+P,height:Math.max(h.height,d.height),left:d.left+M,right:h.right,top:Math.min(h.top,d.top+g),bottom:Math.max(h.bottom,d.bottom+g)}),i.delta.position==="right"&&(M=R7(i,"deltaPos",0,h.width*(1-cw[i.align])+d.width*cw[i.align]+P,S,Math.max),g=x[1]-C[1],v={width:h.width+d.width+P,height:Math.max(h.height,d.height),left:h.left,right:d.right+M,top:Math.min(h.top,d.top+g),bottom:Math.max(h.bottom,d.bottom+g)}),i.delta.position==="bottom"&&(M=null,g=d.height,v={width:Math.max(h.width,d.width),height:h.height+d.height,left:Math.min(h.left,d.left),right:Math.max(h.right,d.right),top:h.bottom-h.height,bottom:h.bottom+d.height}),i.delta.position==="top"&&(M=null,g=h.top,v={width:Math.max(h.width,d.width),height:h.height+d.height,left:Math.min(h.left,d.left),right:Math.max(h.right,d.right),top:h.bottom-h.height-d.height,bottom:h.bottom}),L.attr({dx:M,dy:g})}(i._hasNumber||i._hasDelta)&&f.attr("transform",function(){var T=n.numbersScaler(v);S+=T[2];var z=R7(i,"numbersScale",1,T[0],S,Math.min),O;i._scaleNumbers||(z=1),i._isAngular?O=o-z*v.bottom:O=o-z*(v.top+v.bottom)/2,i._numbersTop=z*v.top+O;var V=v[s];s==="center"&&(V=(v.left+v.right)/2);var G=a-z*V;return G=R7(i,"numbersTranslate",0,G,S,Math.max),rC(G,O)+EYt(z)})}function fw(e){e.each(function(t){q5.stroke(dw.select(this),t.line.color)}).each(function(t){q5.fill(dw.select(this),t.color)}).style("stroke-width",function(t){return t.line.width})}function zYt(e,t,r){return function(){var n=MYt(t,r);return function(i){return e.endAngle(n(i))()}}}function tC(e,t,r){var n=e._fullLayout,i=Ex.extendFlat({type:"linear",ticks:"outside",range:r,showline:!0},t),a={type:"linear",_id:"x"+t._id},o={letter:"x",font:n.font,noAutotickangles:!0,noHover:!0,noTickson:!0};function s(l,u){return Ex.coerce(i,a,IYt,l,u)}return LYt(i,a,s,o,n),PYt(i,a,s,o),a}function BXe(e,t,r){var n=Math.min(t/e.width,r/e.height);return[n,e,t+"x"+r]}function OYt(e,t){var r=Math.sqrt(e.width/2*(e.width/2)+e.height*e.height),n=t/r;return[n,e,t]}function NXe(e,t,r,n){var i=document.createElementNS("http://www.w3.org/2000/svg","text"),a=dw.select(i);return a.text(e).attr("x",0).attr("y",0).attr("text-anchor",r).attr("data-unformatted",e).call(D7.convertToTspans,n).call(hw.font,t),hw.bBox(a.node())}function R7(e,t,r,n,i,a){var o="_cache"+t;e[o]&&e[o].key===i||(e[o]={key:i,value:r});var s=Ex.aggNums(a,null,[e[o].value,n],2);return e[o].value=s,s}});var HXe=ye((d2r,GXe)=>{"use strict";GXe.exports={moduleType:"trace",name:"indicator",basePlotModule:AXe(),categories:["svg","noOpacity","noHover"],animatable:!0,attributes:i$(),supplyDefaults:DXe().supplyDefaults,calc:zXe().calc,plot:VXe(),meta:{}}});var WXe=ye((v2r,jXe)=>{"use strict";jXe.exports=HXe()});var o$=ye((g2r,KXe)=>{"use strict";var XXe=Ub(),F7=Ao().extendFlat,qYt=mc().overrideAll,ZXe=ec(),BYt=Cc().attributes,YXe=df().descriptionOnlyNumbers,p2r=KXe.exports=qYt({domain:BYt({name:"table",trace:!0}),columnwidth:{valType:"number",arrayOk:!0,dflt:null},columnorder:{valType:"data_array"},header:{values:{valType:"data_array",dflt:[]},format:{valType:"data_array",dflt:[],description:YXe("cell value")},prefix:{valType:"string",arrayOk:!0,dflt:null},suffix:{valType:"string",arrayOk:!0,dflt:null},height:{valType:"number",dflt:28},align:F7({},XXe.align,{arrayOk:!0}),line:{width:{valType:"number",arrayOk:!0,dflt:1},color:{valType:"color",arrayOk:!0,dflt:"grey"}},fill:{color:{valType:"color",arrayOk:!0,dflt:"white"}},font:F7({},ZXe({arrayOk:!0}))},cells:{values:{valType:"data_array",dflt:[]},format:{valType:"data_array",dflt:[],description:YXe("cell value")},prefix:{valType:"string",arrayOk:!0,dflt:null},suffix:{valType:"string",arrayOk:!0,dflt:null},height:{valType:"number",dflt:20},align:F7({},XXe.align,{arrayOk:!0}),line:{width:{valType:"number",arrayOk:!0,dflt:1},color:{valType:"color",arrayOk:!0,dflt:"grey"}},fill:{color:{valType:"color",arrayOk:!0,dflt:"white"}},font:F7({},ZXe({arrayOk:!0}))}},"calc","from-root")});var $Xe=ye((m2r,JXe)=>{"use strict";var s$=Dr(),NYt=o$(),UYt=Cc().defaults;function VYt(e,t){for(var r=e.columnorder||[],n=e.header.values.length,i=r.slice(0,n),a=i.slice().sort(function(l,u){return l-u}),o=i.map(function(l){return a.indexOf(l)}),s=o.length;s<n;s++)o.push(s);t("columnorder",o)}JXe.exports=function(t,r,n,i){function a(o,s){return s$.coerce(t,r,NYt,o,s)}UYt(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"),s$.coerceFont(a,"header.font",i.font),VYt(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"),s$.coerceFont(a,"cells.font",i.font),r._length=null}});var eZe=ye((y2r,QXe)=>{"use strict";var GYt=Jm().wrap;QXe.exports=function(){return GYt({})}});var l$=ye((_2r,tZe)=>{"use strict";tZe.exports={cellPad:8,columnExtentOffset:10,columnTitleOffset:28,emptyHeaderHeight:16,latexCheck:/^\$.*\$$/,goldenRatio:1.618,lineBreaker:"<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 cZe=ye((x2r,uZe)=>{"use strict";var rZe=l$(),c$=Ao().extendFlat,HYt=Eo(),jYt=vv().isTypedArray,z7=vv().isArrayOrTypedArray;uZe.exports=function(t,r){var n=u$(r.cells.values),i=function(g){return g.slice(r.header.values.length,g.length)},a=u$(r.header.values);a.length&&!a[0].length&&(a[0]=[""],a=u$(a));var o=a.concat(i(n).map(function(){return lZe((a[0]||[""]).length)})),s=r.domain,l=Math.floor(t._fullLayout._size.w*(s.x[1]-s.x[0])),u=Math.floor(t._fullLayout._size.h*(s.y[1]-s.y[0])),c=r.header.values.length?o[0].map(function(){return r.header.height}):[rZe.emptyHeaderHeight],f=n.length?n[0].map(function(){return r.cells.height}):[],h=c.reduce(iZe,0),d=u-h,v=d+rZe.uplift,_=oZe(f,v),b=oZe(c,h),p=aZe(b,[]),k=aZe(_,p),E={},S=r._fullInput.columnorder;z7(S)&&(S=Array.from(S)),S=S.concat(i(n.map(function(g,P){return P})));var L=o.map(function(g,P){var T=z7(r.columnwidth)?r.columnwidth[Math.min(P,r.columnwidth.length-1)]:r.columnwidth;return HYt(T)?Number(T):1}),x=L.reduce(iZe,0);L=L.map(function(g){return g/x*l});var C=Math.max(f$(r.header.line.width),f$(r.cells.line.width)),M={key:r.uid+t._context.staticPlot,translateX:s.x[0]*t._fullLayout._size.w,translateY:t._fullLayout._size.h*(1-s.y[1]),size:t._fullLayout._size,width:l,maxLineWidth:C,height:u,columnOrder:S,groupHeight:u,rowBlocks:k,headerRowBlocks:p,scrollY:0,cells:c$({},r.cells,{values:n}),headerCells:c$({},r.header,{values:o}),gdColumns:o.map(function(g){return g[0]}),gdColumnsOriginalOrder:o.map(function(g){return g[0]}),prevPages:[0,0],scrollbarState:{scrollbarScrollInProgress:!1},columns:o.map(function(g,P){var T=E[g];E[g]=(T||0)+1;var z=g+"__"+E[g];return{key:z,label:g,specIndex:P,xIndex:S[P],xScale:nZe,x:void 0,calcdata:void 0,columnWidth:L[P]}})};return M.columns.forEach(function(g){g.calcdata=M,g.x=nZe(g)}),M};function f$(e){if(z7(e)){for(var t=0,r=0;r<e.length;r++)t=Math.max(t,f$(e[r]));return t}return e}function iZe(e,t){return e+t}function u$(e){var t=e.slice(),r=1/0,n=0,i;for(i=0;i<t.length;i++)jYt(t[i])?t[i]=Array.from(t[i]):z7(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(lZe(a)))}return t}function lZe(e){for(var t=new Array(e),r=0;r<e;r++)t[r]="";return t}function nZe(e){return e.calcdata.columns.reduce(function(t,r){return r.xIndex<e.xIndex?t+r.columnWidth:t},0)}function aZe(e,t){var r=Object.keys(e);return r.map(function(n){return c$({},e[n],{auxiliaryBlocks:t})})}function oZe(e,t){for(var r={},n,i=0,a=0,o=sZe(),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=sZe(),i+=a,s=u+1,a=0);return r}function sZe(){return{firstRowIndex:null,lastRowIndex:null,rows:[]}}});var fZe=ye(h$=>{"use strict";var O7=Ao().extendFlat;h$.splitToPanels=function(e){var t=[0,0],r=O7({},e,{key:"header",type:"header",page:0,prevPages:t,currentRepaint:[null,null],dragHandle:!0,values:e.calcdata.headerCells.values[e.specIndex],rowBlocks:e.calcdata.headerRowBlocks,calcdata:O7({},e.calcdata,{cells:e.calcdata.headerCells})}),n=O7({},e,{key:"cells1",type:"cells",page:0,prevPages:t,currentRepaint:[null,null],dragHandle:!1,values:e.calcdata.cells.values[e.specIndex],rowBlocks:e.calcdata.rowBlocks}),i=O7({},e,{key:"cells2",type:"cells",page:1,prevPages:t,currentRepaint:[null,null],dragHandle:!1,values:e.calcdata.cells.values[e.specIndex],rowBlocks:e.calcdata.rowBlocks});return[n,i,r]};h$.splitToCells=function(e){var t=WYt(e);return(e.values||[]).slice(t[0],t[1]).map(function(r,n){var i=typeof r=="string"&&r.match(/[<$&> ]/)?"_keybuster_"+Math.random():"";return{keyWithinBlock:n+i,key:t[0]+n,column:e,calcdata:e.calcdata,page:e.page,rowBlocks:e.rowBlocks,value:r}})};function WYt(e){var t=e.rowBlocks[e.page],r=t?t.rows[0].rowIndex:0,n=t?r+t.rows.length:0;return[r,n]}});var w$=ye((w2r,wZe)=>{"use strict";var Ya=l$(),tf=Oa(),d$=Dr(),XYt=d$.numberFormat,Uu=Jm(),v$=So(),ZYt=ru(),YYt=Dr().raiseToTop,og=Dr().strTranslate,KYt=Dr().cancelTransition,JYt=cZe(),yZe=fZe(),hZe=ka();wZe.exports=function(t,r){var n=!t._context.staticPlot,i=t._fullLayout._paper.selectAll("."+Ya.cn.table).data(r.map(function(k){var E=Uu.unwrap(k),S=E.trace;return JYt(t,S)}),Uu.keyFun);i.exit().remove(),i.enter().append("g").classed(Ya.cn.table,!0).attr("overflow","visible").style("box-sizing","content-box").style("position","absolute").style("left",0).style("overflow","visible").style("shape-rendering","crispEdges").style("pointer-events","all"),i.attr("width",function(k){return k.width+k.size.l+k.size.r}).attr("height",function(k){return k.height+k.size.t+k.size.b}).attr("transform",function(k){return og(k.translateX,k.translateY)});var a=i.selectAll("."+Ya.cn.tableControlView).data(Uu.repeat,Uu.keyFun),o=a.enter().append("g").classed(Ya.cn.tableControlView,!0).style("box-sizing","content-box");if(n){var s="onwheel"in document?"wheel":"mousewheel";o.on("mousemove",function(k){a.filter(function(E){return k===E}).call(nC,t)}).on(s,function(k){if(!k.scrollbarState.wheeling){k.scrollbarState.wheeling=!0;var E=k.scrollY+tf.event.deltaY,S=B7(t,a,null,E)(k);S||(tf.event.stopPropagation(),tf.event.preventDefault()),k.scrollbarState.wheeling=!1}}).call(nC,t,!0)}a.attr("transform",function(k){return og(k.size.l,k.size.t)});var l=a.selectAll("."+Ya.cn.scrollBackground).data(Uu.repeat,Uu.keyFun);l.enter().append("rect").classed(Ya.cn.scrollBackground,!0).attr("fill","none"),l.attr("width",function(k){return k.width}).attr("height",function(k){return k.height}),a.each(function(k){v$.setClipUrl(tf.select(this),dZe(t,k),t)});var u=a.selectAll("."+Ya.cn.yColumn).data(function(k){return k.columns},Uu.keyFun);u.enter().append("g").classed(Ya.cn.yColumn,!0),u.exit().remove(),u.attr("transform",function(k){return og(k.x,0)}),n&&u.call(tf.behavior.drag().origin(function(k){var E=tf.select(this);return gZe(E,k,-Ya.uplift),YYt(this),k.calcdata.columnDragInProgress=!0,nC(a.filter(function(S){return k.calcdata.key===S.key}),t),k}).on("drag",function(k){var E=tf.select(this),S=function(C){return(k===C?tf.event.x:C.x)+C.columnWidth/2};k.x=Math.max(-Ya.overdrag,Math.min(k.calcdata.width+Ya.overdrag-k.columnWidth,tf.event.x));var L=_Ze(u).filter(function(C){return C.calcdata.key===k.calcdata.key}),x=L.sort(function(C,M){return S(C)-S(M)});x.forEach(function(C,M){C.xIndex=M,C.x=k===C?C.x:C.xScale(C)}),u.filter(function(C){return k!==C}).transition().ease(Ya.transitionEase).duration(Ya.transitionDuration).attr("transform",function(C){return og(C.x,0)}),E.call(KYt).attr("transform",og(k.x,-Ya.uplift))}).on("dragend",function(k){var E=tf.select(this),S=k.calcdata;k.x=k.xScale(k),k.calcdata.columnDragInProgress=!1,gZe(E,k,0),sKt(t,S,S.columns.map(function(L){return L.xIndex}))})),u.each(function(k){v$.setClipUrl(tf.select(this),vZe(t,k),t)});var c=u.selectAll("."+Ya.cn.columnBlock).data(yZe.splitToPanels,Uu.keyFun);c.enter().append("g").classed(Ya.cn.columnBlock,!0).attr("id",function(k){return k.key}),c.style("cursor",function(k){return k.dragHandle?"ew-resize":k.calcdata.scrollbarState.barWiggleRoom?"ns-resize":"default"});var f=c.filter(lKt),h=c.filter(_$);n&&h.call(tf.behavior.drag().origin(function(k){return tf.event.stopPropagation(),k}).on("drag",B7(t,a,-1)).on("dragend",function(){})),p$(t,a,f,c),p$(t,a,h,c);var d=a.selectAll("."+Ya.cn.scrollAreaClip).data(Uu.repeat,Uu.keyFun);d.enter().append("clipPath").classed(Ya.cn.scrollAreaClip,!0).attr("id",function(k){return dZe(t,k)});var v=d.selectAll("."+Ya.cn.scrollAreaClipRect).data(Uu.repeat,Uu.keyFun);v.enter().append("rect").classed(Ya.cn.scrollAreaClipRect,!0).attr("x",-Ya.overdrag).attr("y",-Ya.uplift).attr("fill","none"),v.attr("width",function(k){return k.width+2*Ya.overdrag}).attr("height",function(k){return k.height+Ya.uplift});var _=u.selectAll("."+Ya.cn.columnBoundary).data(Uu.repeat,Uu.keyFun);_.enter().append("g").classed(Ya.cn.columnBoundary,!0);var b=u.selectAll("."+Ya.cn.columnBoundaryClippath).data(Uu.repeat,Uu.keyFun);b.enter().append("clipPath").classed(Ya.cn.columnBoundaryClippath,!0),b.attr("id",function(k){return vZe(t,k)});var p=b.selectAll("."+Ya.cn.columnBoundaryRect).data(Uu.repeat,Uu.keyFun);p.enter().append("rect").classed(Ya.cn.columnBoundaryRect,!0).attr("fill","none"),p.attr("width",function(k){return k.columnWidth+2*q7(k)}).attr("height",function(k){return k.calcdata.height+2*q7(k)+Ya.uplift}).attr("x",function(k){return-q7(k)}).attr("y",function(k){return-q7(k)}),x$(null,h,a)};function q7(e){return Math.ceil(e.calcdata.maxLineWidth/2)}function dZe(e,t){return"clip"+e._fullLayout._uid+"_scrollAreaBottomClip_"+t.key}function vZe(e,t){return"clip"+e._fullLayout._uid+"_columnBoundaryClippath_"+t.calcdata.key+"_"+t.specIndex}function _Ze(e){return[].concat.apply([],e.map(function(t){return t})).map(function(t){return t.__data__})}function nC(e,t,r){function n(u){var c=u.rowBlocks;return m$(c,c.length-1)+(c.length?N7(c[c.length-1],1/0):1)}var i=e.selectAll("."+Ya.cn.scrollbarKit).data(Uu.repeat,Uu.keyFun);i.enter().append("g").classed(Ya.cn.scrollbarKit,!0).style("shape-rendering","geometricPrecision"),i.each(function(u){var c=u.scrollbarState;c.totalHeight=n(u),c.scrollableAreaHeight=u.groupHeight-g$(u),c.currentlyVisibleHeight=Math.min(c.totalHeight,c.scrollableAreaHeight),c.ratio=c.currentlyVisibleHeight/c.totalHeight,c.barLength=Math.max(c.ratio*c.currentlyVisibleHeight,Ya.goldenRatio*Ya.scrollbarWidth),c.barWiggleRoom=c.currentlyVisibleHeight-c.barLength,c.wiggleRoom=Math.max(0,c.totalHeight-c.scrollableAreaHeight),c.topY=c.barWiggleRoom===0?0:u.scrollY/c.wiggleRoom*c.barWiggleRoom,c.bottomY=c.topY+c.barLength,c.dragMultiplier=c.wiggleRoom/c.barWiggleRoom}).attr("transform",function(u){var c=u.width+Ya.scrollbarWidth/2+Ya.scrollbarOffset;return og(c,g$(u))});var a=i.selectAll("."+Ya.cn.scrollbar).data(Uu.repeat,Uu.keyFun);a.enter().append("g").classed(Ya.cn.scrollbar,!0);var o=a.selectAll("."+Ya.cn.scrollbarSlider).data(Uu.repeat,Uu.keyFun);o.enter().append("g").classed(Ya.cn.scrollbarSlider,!0),o.attr("transform",function(u){return og(0,u.scrollbarState.topY||0)});var s=o.selectAll("."+Ya.cn.scrollbarGlyph).data(Uu.repeat,Uu.keyFun);s.enter().append("line").classed(Ya.cn.scrollbarGlyph,!0).attr("stroke","black").attr("stroke-width",Ya.scrollbarWidth).attr("stroke-linecap","round").attr("y1",Ya.scrollbarWidth/2),s.attr("y2",function(u){return u.scrollbarState.barLength-Ya.scrollbarWidth/2}).attr("stroke-opacity",function(u){return u.columnDragInProgress||!u.scrollbarState.barWiggleRoom||r?0:.4}),s.transition().delay(0).duration(0),s.transition().delay(Ya.scrollbarHideDelay).duration(Ya.scrollbarHideDuration).attr("stroke-opacity",0);var l=a.selectAll("."+Ya.cn.scrollbarCaptureZone).data(Uu.repeat,Uu.keyFun);l.enter().append("line").classed(Ya.cn.scrollbarCaptureZone,!0).attr("stroke","white").attr("stroke-opacity",.01).attr("stroke-width",Ya.scrollbarCaptureWidth).attr("stroke-linecap","butt").attr("y1",0).on("mousedown",function(u){var c=tf.event.y,f=this.getBoundingClientRect(),h=u.scrollbarState,d=c-f.top,v=tf.scale.linear().domain([0,h.scrollableAreaHeight]).range([0,h.totalHeight]).clamp(!0);h.topY<=d&&d<=h.bottomY||B7(t,e,null,v(d-h.barLength/2))(u)}).call(tf.behavior.drag().origin(function(u){return tf.event.stopPropagation(),u.scrollbarState.scrollbarScrollInProgress=!0,u}).on("drag",B7(t,e)).on("dragend",function(){})),l.attr("y2",function(u){return u.scrollbarState.scrollableAreaHeight}),t._context.staticPlot&&(s.remove(),l.remove())}function p$(e,t,r,n){var i=$Yt(r),a=QYt(i);iKt(a);var o=eKt(a);aKt(o);var s=rKt(a),l=tKt(s);nKt(l),xZe(l,t,n,e),b$(a)}function $Yt(e){var t=e.selectAll("."+Ya.cn.columnCells).data(Uu.repeat,Uu.keyFun);return t.enter().append("g").classed(Ya.cn.columnCells,!0),t.exit().remove(),t}function QYt(e){var t=e.selectAll("."+Ya.cn.columnCell).data(yZe.splitToCells,function(r){return r.keyWithinBlock});return t.enter().append("g").classed(Ya.cn.columnCell,!0),t.exit().remove(),t}function eKt(e){var t=e.selectAll("."+Ya.cn.cellRect).data(Uu.repeat,function(r){return r.keyWithinBlock});return t.enter().append("rect").classed(Ya.cn.cellRect,!0),t}function tKt(e){var t=e.selectAll("."+Ya.cn.cellText).data(Uu.repeat,function(r){return r.keyWithinBlock});return t.enter().append("text").classed(Ya.cn.cellText,!0).style("cursor",function(){return"auto"}).on("mousedown",function(){tf.event.stopPropagation()}),t}function rKt(e){var t=e.selectAll("."+Ya.cn.cellTextHolder).data(Uu.repeat,function(r){return r.keyWithinBlock});return t.enter().append("g").classed(Ya.cn.cellTextHolder,!0).style("shape-rendering","geometricPrecision"),t}function iKt(e){e.each(function(t,r){var n=t.calcdata.cells.font,i=t.column.specIndex,a={size:Yv(n.size,i,r),color:Yv(n.color,i,r),family:Yv(n.family,i,r),weight:Yv(n.weight,i,r),style:Yv(n.style,i,r),variant:Yv(n.variant,i,r),textcase:Yv(n.textcase,i,r),lineposition:Yv(n.lineposition,i,r),shadow:Yv(n.shadow,i,r)};t.rowNumber=t.key,t.align=Yv(t.calcdata.cells.align,i,r),t.cellBorderWidth=Yv(t.calcdata.cells.line.width,i,r),t.font=a})}function nKt(e){e.each(function(t){v$.font(tf.select(this),t.font)})}function aKt(e){e.attr("width",function(t){return t.column.columnWidth}).attr("stroke-width",function(t){return t.cellBorderWidth}).each(function(t){var r=tf.select(this);hZe.stroke(r,Yv(t.calcdata.cells.line.color,t.column.specIndex,t.rowNumber)),hZe.fill(r,Yv(t.calcdata.cells.fill.color,t.column.specIndex,t.rowNumber))})}function xZe(e,t,r,n){e.text(function(i){var a=i.column.specIndex,o=i.rowNumber,s=i.value,l=typeof s=="string",u=l&&s.match(/<br>/i),c=!l||u;i.mayHaveMarkup=l&&s.match(/[<&>]/);var f=oKt(s);i.latex=f;var h=f?"":Yv(i.calcdata.cells.prefix,a,o)||"",d=f?"":Yv(i.calcdata.cells.suffix,a,o)||"",v=f?null:Yv(i.calcdata.cells.format,a,o)||null,_=h+(v?XYt(v)(i.value):i.value)+d,b;i.wrappingNeeded=!i.wrapped&&!c&&!f&&(b=pZe(_)),i.cellHeightMayIncrease=u||f||i.mayHaveMarkup||(b===void 0?pZe(_):b),i.needsConvertToTspans=i.mayHaveMarkup||i.wrappingNeeded||i.latex;var p;if(i.wrappingNeeded){var k=Ya.wrapSplitCharacter===" "?_.replace(/<a href=/ig,"<a_href="):_,E=k.split(Ya.wrapSplitCharacter),S=Ya.wrapSplitCharacter===" "?E.map(function(L){return L.replace(/<a_href=/ig,"<a href=")}):E;i.fragments=S.map(function(L){return{text:L,width:null}}),i.fragments.push({fragment:Ya.wrapSpacer,width:null}),p=S.join(Ya.lineBreaker)+Ya.lineBreaker+Ya.wrapSpacer}else delete i.fragments,p=_;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?cKt:fKt;i.needsConvertToTspans?ZYt.convertToTspans(o,n,s(r,a,t,n,i)):tf.select(a.parentNode).attr("transform",function(l){return og(bZe(l),Ya.cellPad)}).attr("text-anchor",function(l){return{left:"start",center:"middle",right:"end"}[l.align]})})}function oKt(e){return typeof e=="string"&&e.match(Ya.latexCheck)}function pZe(e){return e.indexOf(Ya.wrapSplitCharacter)!==-1}function sKt(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 Yv(e,t,r){if(d$.isArrayOrTypedArray(e)){var n=e[Math.min(t,e.length-1)];return d$.isArrayOrTypedArray(n)?n[Math.min(r,n.length-1)]:n}else return e}function gZe(e,t,r){e.transition().ease(Ya.releaseTransitionEase).duration(Ya.releaseTransitionDuration).attr("transform",og(t.x,r))}function _$(e){return e.type==="cells"}function lKt(e){return e.type==="header"}function g$(e){var t=e.rowBlocks.length?e.rowBlocks[0].auxiliaryBlocks:[];return t.reduce(function(r,n){return r+N7(n,1/0)},0)}function uKt(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 x$(e,t,r){var n=_Ze(t)[0];if(n!==void 0){var i=n.rowBlocks,a=n.calcdata,o=m$(i,i.length),s=n.calcdata.groupHeight-g$(n),l=a.scrollY=Math.max(0,Math.min(o-s,a.scrollY)),u=uKt(i,l,s);u.length===1&&(u[0]===i.length-1?u.unshift(u[0]-1):u.push(u[0]+1)),u[0]%2&&u.reverse(),t.each(function(c,f){c.page=u[f],c.scrollY=l}),t.attr("transform",function(c){var f=m$(c.rowBlocks,c.page)-c.scrollY;return og(0,f)}),e&&(mZe(e,r,t,u,n.prevPages,n,0),mZe(e,r,t,u,n.prevPages,n,1),nC(r,e))}}function B7(e,t,r,n){return function(a){var o=a.calcdata?a.calcdata:a,s=t.filter(function(f){return o.key===f.key}),l=r||o.scrollbarState.dragMultiplier,u=o.scrollY;o.scrollY=n===void 0?o.scrollY+l*tf.event.dy:n;var c=s.selectAll("."+Ya.cn.yColumn).selectAll("."+Ya.cn.columnBlock).filter(_$);return x$(e,c,s),o.scrollY===u}}function mZe(e,t,r,n,i,a,o){var s=n[o]!==i[o];s&&(clearTimeout(a.currentRepaint[o]),a.currentRepaint[o]=setTimeout(function(){var l=r.filter(function(u,c){return c===o&&n[c]!==i[c]});p$(e,t,l,r),i[o]=n[o]}))}function cKt(e,t,r,n){return function(){var a=tf.select(t.parentNode);a.each(function(o){var s=o.fragments;a.selectAll("tspan.line").each(function(_,b){s[b].width=this.getComputedTextLength()});var l=s[s.length-1].width,u=s.slice(0,-1),c=[],f,h,d=0,v=o.column.columnWidth-2*Ya.cellPad;for(o.value="";u.length;)f=u.shift(),h=f.width+l,d+h>v&&(o.value+=c.join(Ya.wrapSpacer)+Ya.lineBreaker,c=[],d=0),c.push(f.text),d+=h;d&&(o.value+=c.join(Ya.wrapSpacer)),o.wrapped=!0}),a.selectAll("tspan.line").remove(),xZe(a.select("."+Ya.cn.cellText),r,e,n),tf.select(t.parentNode.parentNode).call(b$)}}function fKt(e,t,r,n,i){return function(){if(!i.settledY){var o=tf.select(t.parentNode),s=y$(i),l=i.key-s.firstRowIndex,u=s.rows[l].rowHeight,c=i.cellHeightMayIncrease?t.parentNode.getBoundingClientRect().height+2*Ya.cellPad:u,f=Math.max(c,u),h=f-s.rows[l].rowHeight;h&&(s.rows[l].rowHeight=f,e.selectAll("."+Ya.cn.columnCell).call(b$),x$(null,e.filter(_$),0),nC(r,n,!0)),o.attr("transform",function(){var d=this,v=d.parentNode,_=v.getBoundingClientRect(),b=tf.select(d.parentNode).select("."+Ya.cn.cellRect).node().getBoundingClientRect(),p=d.transform.baseVal.consolidate(),k=b.top-_.top+(p?p.matrix.f:Ya.cellPad);return og(bZe(i,tf.select(d.parentNode).select("."+Ya.cn.cellTextHolder).node().getBoundingClientRect().width),k)}),i.settledY=!0}}}function bZe(e,t){switch(e.align){case"left":return Ya.cellPad;case"right":return e.column.columnWidth-(t||0)-Ya.cellPad;case"center":return(e.column.columnWidth-(t||0))/2;default:return Ya.cellPad}}function b$(e){e.attr("transform",function(t){var r=t.rowBlocks[0].auxiliaryBlocks.reduce(function(o,s){return o+N7(s,1/0)},0),n=y$(t),i=N7(n,t.key),a=i+r;return og(0,a)}).selectAll("."+Ya.cn.cellRect).attr("height",function(t){return dKt(y$(t),t.key).rowHeight})}function m$(e,t){for(var r=0,n=t-1;n>=0;n--)r+=hKt(e[n]);return r}function N7(e,t){for(var r=0,n=0;n<e.rows.length&&e.rows[n].rowIndex<t;n++)r+=e.rows[n].rowHeight;return r}function hKt(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 y$(e){return e.rowBlocks[e.page]}function dKt(e,t){return e.rows[t-e.firstRowIndex]}});var TZe=ye(V7=>{"use strict";var vKt=Id().getModuleCalcData,pKt=w$(),U7="table";V7.name=U7;V7.plot=function(e){var t=vKt(e.calcdata,U7)[0];t.length&&pKt(e,t)};V7.clean=function(e,t,r,n){var i=n._has&&n._has(U7),a=t._has&&t._has(U7);i&&!a&&n._paperdiv.selectAll(".table").remove()}});var SZe=ye((A2r,AZe)=>{"use strict";AZe.exports={attributes:o$(),supplyDefaults:$Xe(),calc:eZe(),plot:w$(),moduleType:"trace",name:"table",basePlotModule:TZe(),categories:["noOpacity"],meta:{}}});var EZe=ye((S2r,MZe)=>{"use strict";MZe.exports=SZe()});var IZe=ye((M2r,PZe)=>{"use strict";var kZe=ec(),CZe=Lh(),T$=Rd(),gKt=df().descriptionWithDates,mKt=mc().overrideAll,LZe=Pd().dash,A$=Ao().extendFlat;PZe.exports={color:{valType:"color",editType:"calc"},smoothing:{valType:"number",dflt:1,min:0,max:1.3,editType:"calc"},title:{text:{valType:"string",dflt:"",editType:"calc"},font:kZe({editType:"calc"}),offset:{valType:"number",dflt:10,editType:"calc"},editType:"calc"},type:{valType:"enumerated",values:["-","linear","date","category"],dflt:"-",editType:"calc"},autotypenumbers:T$.autotypenumbers,autorange:{valType:"enumerated",values:[!0,!1,"reversed"],dflt:!0,editType:"calc"},rangemode:{valType:"enumerated",values:["normal","tozero","nonnegative"],dflt:"normal",editType:"calc"},range:{valType:"info_array",editType:"calc",items:[{valType:"any",editType:"calc"},{valType:"any",editType:"calc"}]},fixedrange:{valType:"boolean",dflt:!1,editType:"calc"},cheatertype:{valType:"enumerated",values:["index","value"],dflt:"value",editType:"calc"},tickmode:{valType:"enumerated",values:["linear","array"],dflt:"array",editType:"calc"},nticks:{valType:"integer",min:0,dflt:0,editType:"calc"},tickvals:{valType:"data_array",editType:"calc"},ticktext:{valType:"data_array",editType:"calc"},showticklabels:{valType:"enumerated",values:["start","end","both","none"],dflt:"start",editType:"calc"},labelalias:A$({},T$.labelalias,{editType:"calc"}),tickfont:kZe({editType:"calc"}),tickangle:{valType:"angle",dflt:"auto",editType:"calc"},tickprefix:{valType:"string",dflt:"",editType:"calc"},showtickprefix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"calc"},ticksuffix:{valType:"string",dflt:"",editType:"calc"},showticksuffix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"calc"},showexponent:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"calc"},exponentformat:{valType:"enumerated",values:["none","e","E","power","SI","B","SI extended"],dflt:"B",editType:"calc"},minexponent:{valType:"number",dflt:3,min:0,editType:"calc"},separatethousands:{valType:"boolean",dflt:!1,editType:"calc"},tickformat:{valType:"string",dflt:"",editType:"calc",description:gKt("tick label")},tickformatstops:mKt(T$.tickformatstops,"calc","from-root"),categoryorder:{valType:"enumerated",values:["trace","category ascending","category descending","array"],dflt:"trace",editType:"calc"},categoryarray:{valType:"data_array",editType:"calc"},labelpadding:{valType:"integer",dflt:10,editType:"calc"},labelprefix:{valType:"string",editType:"calc"},labelsuffix:{valType:"string",dflt:"",editType:"calc"},showline:{valType:"boolean",dflt:!1,editType:"calc"},linecolor:{valType:"color",dflt:CZe.defaultLine,editType:"calc"},linewidth:{valType:"number",min:0,dflt:1,editType:"calc"},gridcolor:{valType:"color",editType:"calc"},gridwidth:{valType:"number",min:0,dflt:1,editType:"calc"},griddash:A$({},LZe,{editType:"calc"}),showgrid:{valType:"boolean",dflt:!0,editType:"calc"},minorgridcount:{valType:"integer",min:0,dflt:0,editType:"calc"},minorgridwidth:{valType:"number",min:0,dflt:1,editType:"calc"},minorgriddash:A$({},LZe,{editType:"calc"}),minorgridcolor:{valType:"color",dflt:CZe.lightLine,editType:"calc"},startline:{valType:"boolean",editType:"calc"},startlinecolor:{valType:"color",editType:"calc"},startlinewidth:{valType:"number",dflt:1,editType:"calc"},endline:{valType:"boolean",editType:"calc"},endlinewidth:{valType:"number",dflt:1,editType:"calc"},endlinecolor:{valType:"color",editType:"calc"},tick0:{valType:"number",min:0,dflt:0,editType:"calc"},dtick:{valType:"number",min:0,dflt:1,editType:"calc"},arraytick0:{valType:"integer",min:0,dflt:0,editType:"calc"},arraydtick:{valType:"integer",min:1,dflt:1,editType:"calc"},editType:"calc"}});var H7=ye((E2r,FZe)=>{"use strict";var yKt=ec(),RZe=IZe(),DZe=Lh(),G7=yKt({editType:"calc"}),_Kt=pf().zorder;G7.family.dflt='"Open Sans", verdana, arial, sans-serif';G7.size.dflt=12;G7.color.dflt=DZe.defaultLine;FZe.exports={carpet:{valType:"string",editType:"calc"},x:{valType:"data_array",editType:"calc+clearAxisTypes"},y:{valType:"data_array",editType:"calc+clearAxisTypes"},a:{valType:"data_array",editType:"calc"},a0:{valType:"number",dflt:0,editType:"calc"},da:{valType:"number",dflt:1,editType:"calc"},b:{valType:"data_array",editType:"calc"},b0:{valType:"number",dflt:0,editType:"calc"},db:{valType:"number",dflt:1,editType:"calc"},cheaterslope:{valType:"number",dflt:1,editType:"calc"},aaxis:RZe,baxis:RZe,font:G7,color:{valType:"color",dflt:DZe.defaultLine,editType:"plot"},zorder:_Kt}});var qZe=ye((k2r,OZe)=>{"use strict";var zZe=Dr().isArray1D;OZe.exports=function(t,r,n){var i=n("x"),a=i&&i.length,o=n("y"),s=o&&o.length;if(!a&&!s)return!1;if(r._cheater=!i,(!a||zZe(i))&&(!s||zZe(o))){var l=a?i.length:1/0;s&&(l=Math.min(l,o.length)),r.a&&r.a.length&&(l=Math.min(l,r.a.length)),r.b&&r.b.length&&(l=Math.min(l,r.b.length)),r._length=l}else r._length=null;return!0}});var UZe=ye((C2r,NZe)=>{"use strict";var xKt=H7(),BZe=ka().addOpacity,bKt=qa(),aC=Dr(),wKt=bb(),TKt=e_(),AKt=t_(),SKt=oI(),MKt=ym(),EKt=R3();NZe.exports=function(t,r,n){var i=n.letter,a=n.font||{},o=xKt[i+"axis"];function s(g,P){return aC.coerce(t,r,o,g,P)}function l(g,P){return aC.coerce2(t,r,o,g,P)}n.name&&(r._name=n.name,r._id=n.name),s("autotypenumbers",n.autotypenumbersDflt);var u=s("type");if(u==="-"&&(n.data&&kKt(r,n.data),r.type==="-"?r.type="linear":u=t.type=r.type),s("smoothing"),s("cheatertype"),s("showticklabels"),s("labelprefix",i+" = "),s("labelsuffix"),s("showtickprefix"),s("showticksuffix"),s("separatethousands"),s("tickformat"),s("exponentformat"),s("minexponent"),s("showexponent"),s("categoryorder"),s("tickmode"),s("tickvals"),s("ticktext"),s("tick0"),s("dtick"),r.tickmode==="array"&&(s("arraytick0"),s("arraydtick")),s("labelpadding"),r._hovertitle=i,u==="date"){var c=bKt.getComponentMethod("calendars","handleDefaults");c(t,r,"calendar",n.calendar)}MKt(r,n.fullLayout),r.c2p=aC.identity;var f=s("color",n.dfltColor),h=f===t.color?f:a.color,d=s("title.text");d&&(aC.coerceFont(s,"title.font",a,{overrideDflt:{size:aC.bigFont(a.size),color:h}}),s("title.offset")),s("tickangle");var v=s("autorange",!r.isValidRange(t.range));v&&s("rangemode"),s("range"),r.cleanRange(),s("fixedrange"),wKt(t,r,s,u),AKt(t,r,s,u,n),TKt(t,r,s,u,n),SKt(t,r,s,{data:n.data,dataAttr:i});var _=l("gridcolor",BZe(f,.3)),b=l("gridwidth"),p=l("griddash"),k=s("showgrid");k||(delete r.gridcolor,delete r.gridwidth,delete r.griddash);var E=l("startlinecolor",f),S=l("startlinewidth",b),L=s("startline",r.showgrid||!!E||!!S);L||(delete r.startlinecolor,delete r.startlinewidth);var x=l("endlinecolor",f),C=l("endlinewidth",b),M=s("endline",r.showgrid||!!x||!!C);return M||(delete r.endlinecolor,delete r.endlinewidth),k?(s("minorgridcount"),s("minorgridwidth",b),s("minorgriddash",p),s("minorgridcolor",BZe(_,.06)),r.minorgridcount||(delete r.minorgridwidth,delete r.minorgriddash,delete r.minorgridcolor)):(delete r.gridcolor,delete r.gridwidth,delete r.griddash),r.showticklabels==="none"&&(delete r.tickfont,delete r.tickangle,delete r.showexponent,delete r.exponentformat,delete r.minexponent,delete r.tickformat,delete r.showticksuffix,delete r.showtickprefix),r.showticksuffix||delete r.ticksuffix,r.showtickprefix||delete r.tickprefix,s("tickmode"),r};function kKt(e,t){if(e.type==="-"){var r=e._id,n=r.charAt(0),i=n+"calendar",a=e[i];e.type=EKt(t,a,{autotypenumbers:e.autotypenumbers})}}});var GZe=ye((L2r,VZe)=>{"use strict";var CKt=UZe(),LKt=vl();VZe.exports=function(t,r,n,i,a){var o=i("a");o||(i("da"),i("a0"));var s=i("b");s||(i("db"),i("b0")),PKt(t,r,n,a)};function PKt(e,t,r,n){var i=["aaxis","baxis"];i.forEach(function(a){var o=a.charAt(0),s=e[a]||{},l=LKt.newContainer(t,a),u={noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0,noTicklabelstep:!0,tickfont:"x",id:o+"axis",letter:o,font:t.font,name:a,data:e[o],calendar:t.calendar,dfltColor:n,bgColor:r.paper_bgcolor,autotypenumbersDflt:r.autotypenumbers,fullLayout:r};CKt(s,l,u),l._categories=l._categories||[],!e[a]&&s.type!=="-"&&(e[a]={type:s.type})})}});var WZe=ye((P2r,jZe)=>{"use strict";var HZe=Dr(),IKt=qZe(),RKt=GZe(),DKt=H7(),FKt=Lh();jZe.exports=function(t,r,n,i){function a(l,u){return HZe.coerce(t,r,DKt,l,u)}r._clipPathId="clip"+r.uid+"carpet";var o=a("color",FKt.defaultLine);if(HZe.coerceFont(a,"font",i.font),a("carpet"),RKt(t,r,i,a,o),!r.a||!r.b){r.visible=!1;return}r.a.length<3&&(r.aaxis.smoothing=0),r.b.length<3&&(r.baxis.smoothing=0);var s=IKt(t,r,a);s||(r.visible=!1),r._cheater&&a("cheaterslope"),a("zorder")}});var S$=ye((I2r,XZe)=>{"use strict";var zKt=Dr().isArrayOrTypedArray;XZe.exports=function(t,r,n){var i;for(zKt(t)?t.length>r.length&&(t=t.slice(0,r.length)):t=[],i=0;i<r.length;i++)t[i]=n(r[i]);return t}});var M$=ye((R2r,ZZe)=>{"use strict";ZZe.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 KZe=ye((D2r,YZe)=>{"use strict";YZe.exports=function(t,r,n,i,a,o){var s=a[0]*t.dpdx(r),l=a[1]*t.dpdy(n),u=1,c=1;if(o){var f=Math.sqrt(a[0]*a[0]+a[1]*a[1]),h=Math.sqrt(o[0]*o[0]+o[1]*o[1]),d=(a[0]*o[0]+a[1]*o[1])/f/h;c=Math.max(0,d)}var v=Math.atan2(l,s)*180/Math.PI;return v<-90?(v+=180,u=-u):v>90&&(v-=180,u=-u),{angle:v,flip:u,p:t.c2p(i,r,n),offsetMultplier:c}}});var nYe=ye((F2r,iYe)=>{"use strict";var Z7=Oa(),j7=So(),W7=S$(),QZe=M$(),oC=KZe(),E$=ru(),Up=Dr(),eYe=Up.strRotate,X7=Up.strTranslate,tYe=$h();iYe.exports=function(t,r,n,i){var a=t._context.staticPlot,o=r.xaxis,s=r.yaxis,l=t._fullLayout,u=l._clips;Up.makeTraceGroups(i,n,"trace").each(function(c){var f=Z7.select(this),h=c[0],d=h.trace,v=d.aaxis,_=d.baxis,b=Up.ensureSingle(f,"g","minorlayer"),p=Up.ensureSingle(f,"g","majorlayer"),k=Up.ensureSingle(f,"g","boundarylayer"),E=Up.ensureSingle(f,"g","labellayer");f.style("opacity",d.opacity),B5(o,s,p,v,"a",v._gridlines,!0,a),B5(o,s,p,_,"b",_._gridlines,!0,a),B5(o,s,b,v,"a",v._minorgridlines,!0,a),B5(o,s,b,_,"b",_._minorgridlines,!0,a),B5(o,s,k,v,"a-boundary",v._boundarylines,a),B5(o,s,k,_,"b-boundary",_._boundarylines,a);var S=JZe(t,o,s,d,h,E,v._labels,"a-label"),L=JZe(t,o,s,d,h,E,_._labels,"b-label");qKt(t,E,d,h,o,s,S,L),OKt(d,h,u,o,s)})};function OKt(e,t,r,n,i){var a,o,s,l,u=r.select("#"+e._clipPathId);u.size()||(u=r.append("clipPath").classed("carpetclip",!0));var c=Up.ensureSingle(u,"path","carpetboundary"),f=t.clipsegments,h=[];for(l=0;l<f.length;l++)a=f[l],o=W7([],a.x,n.c2p),s=W7([],a.y,i.c2p),h.push(QZe(o,s,a.bicubic));var d="M"+h.join("L")+"Z";u.attr("id",e._clipPathId),c.attr("d",d)}function B5(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=W7([],f,e.c2p),v=W7([],h,t.c2p),_="M"+QZe(d,v,c.smoothing),b=Z7.select(this);b.attr("d",_).style("stroke-width",c.width).style("stroke",c.color).style("stroke-dasharray",j7.dashStyle(c.dash,c.width)).style("fill","none")}),l.exit().remove()}function JZe(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=oC(n,t,r,f.xy,f.dxy);else{var v=(f.axis.tickangle+180)*Math.PI/180;d=oC(n,t,r,f.xy,[Math.cos(v),Math.sin(v)])}h||(c={angle:d.angle,flip:d.flip});var _=(f.endAnchor?-1:1)*d.flip,b=Z7.select(this).attr({"text-anchor":_>0?"start":"end","data-notex":1}).call(j7.font,f.font).text(f.text).call(E$.convertToTspans,e),p=j7.bBox(this);b.attr("transform",X7(d.p[0],d.p[1])+eYe(d.angle)+X7(f.axis.labelpadding*_,p.height*.3)),u=Math.max(u,p.width+f.axis.labelpadding)}),l.exit().remove(),c.maxExtent=u,c}function qKt(e,t,r,n,i,a,o,s){var l,u,c,f,h=Up.aggNums(Math.min,null,r.a),d=Up.aggNums(Math.max,null,r.a),v=Up.aggNums(Math.min,null,r.b),_=Up.aggNums(Math.max,null,r.b);l=.5*(h+d),u=v,c=r.ab2xy(l,u,!0),f=r.dxyda_rough(l,u),o.angle===void 0&&Up.extendFlat(o,oC(r,i,a,c,r.dxydb_rough(l,u))),$Ze(e,t,r,n,c,f,r.aaxis,i,a,o,"a-title"),l=h,u=.5*(v+_),c=r.ab2xy(l,u,!0),f=r.dxydb_rough(l,u),s.angle===void 0&&Up.extendFlat(s,oC(r,i,a,c,r.dxyda_rough(l,u))),$Ze(e,t,r,n,c,f,r.baxis,i,a,s,"b-title")}var rYe=tYe.LINE_SPACING,BKt=(1-tYe.MID_SHIFT)/rYe+1;function $Ze(e,t,r,n,i,a,o,s,l,u,c){var f=[];o.title.text&&f.push(o.title.text);var h=t.selectAll("text."+c).data(f),d=u.maxExtent;h.enter().append("text").classed(c,!0),h.each(function(){var v=oC(r,s,l,i,a);["start","both"].indexOf(o.showticklabels)===-1&&(d=0);var _=o.title.font.size;d+=_+o.title.offset;var b=u.angle+(u.flip<0?180:0),p=(b-v.angle+450)%360,k=p>90&&p<270,E=Z7.select(this);E.text(o.title.text).call(E$.convertToTspans,e),k&&(d=(-E$.lineCount(E)+BKt)*rYe*_-d),E.attr("transform",X7(v.p[0],v.p[1])+eYe(v.angle)+X7(0,d)).attr("text-anchor","middle").call(j7.font,o.title.font)}),h.exit().remove()}});var oYe=ye((z2r,aYe)=>{"use strict";var Y7=Dr().isArrayOrTypedArray;aYe.exports=function(e,t,r){var n,i,a,o,s,l,u=[],c=Y7(e)?e.length:e,f=Y7(t)?t.length:t,h=Y7(e)?e:null,d=Y7(t)?t:null;h&&(a=(h.length-1)/(h[h.length-1]-h[0])/(c-1)),d&&(o=(d.length-1)/(d[d.length-1]-d[0])/(f-1));var v,_=1/0,b=-1/0;for(i=0;i<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,_=Math.min(v,_),b=Math.max(v,b),u[i][n]=v;var p=1/(b-_),k=-_*p;for(i=0;i<f;i++)for(n=0;n<c;n++)u[i][n]=p*u[i][n]+k;return u}});var cYe=ye((O2r,uYe)=>{"use strict";var sYe=Dr().isArrayOrTypedArray;uYe.exports=function(e){return lYe(e,0)};function lYe(e,t){if(!sYe(e)||t>=10)return null;for(var r=1/0,n=-1/0,i=e.length,a=0;a<i;a++){var o=e[a];if(sYe(o)){var s=lYe(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 hYe=ye((q2r,fYe)=>{"use strict";var NKt=ho(),kx=Ao().extendFlat;fYe.exports=function(t,r,n){var i,a,o,s,l,u,c,f,h,d,v,_,b,p,k=t["_"+r],E=t[r+"axis"],S=E._gridlines=[],L=E._minorgridlines=[],x=E._boundarylines=[],C=t["_"+n],M=t[n+"axis"];E.tickmode==="array"&&(E.tickvals=k.slice());var g=t._xctrl,P=t._yctrl,T=g[0].length,z=g.length,O=t._a.length,V=t._b.length;NKt.prepTicks(E),E.tickmode==="array"&&delete E.tickvals;var G=E.smoothing?3:1;function Z(N){var H,te,oe,_e,Ee,Ce,me,ie,Se,Le,Ae,Fe,Pe=[],ge=[],Re={};if(r==="b")for(te=t.b2j(N),oe=Math.floor(Math.max(0,Math.min(V-2,te))),_e=te-oe,Re.length=V,Re.crossLength=O,Re.xy=function(ce){return t.evalxy([],ce,te)},Re.dxy=function(ce,Ze){return t.dxydi([],ce,oe,Ze,_e)},H=0;H<O;H++)Ce=Math.min(O-2,H),me=H-Ce,ie=t.evalxy([],H,te),M.smoothing&&H>0&&(Se=t.dxydi([],H-1,oe,0,_e),Pe.push(Ee[0]+Se[0]/3),ge.push(Ee[1]+Se[1]/3),Le=t.dxydi([],H-1,oe,1,_e),Pe.push(ie[0]-Le[0]/3),ge.push(ie[1]-Le[1]/3)),Pe.push(ie[0]),ge.push(ie[1]),Ee=ie;else for(H=t.a2i(N),Ce=Math.floor(Math.max(0,Math.min(O-2,H))),me=H-Ce,Re.length=O,Re.crossLength=V,Re.xy=function(ce){return t.evalxy([],H,ce)},Re.dxy=function(ce,Ze){return t.dxydj([],Ce,ce,me,Ze)},te=0;te<V;te++)oe=Math.min(V-2,te),_e=te-oe,ie=t.evalxy([],H,te),M.smoothing&&te>0&&(Ae=t.dxydj([],Ce,te-1,me,0),Pe.push(Ee[0]+Ae[0]/3),ge.push(Ee[1]+Ae[1]/3),Fe=t.dxydj([],Ce,te-1,me,1),Pe.push(ie[0]-Fe[0]/3),ge.push(ie[1]-Fe[1]/3)),Pe.push(ie[0]),ge.push(ie[1]),Ee=ie;return Re.axisLetter=r,Re.axis=E,Re.crossAxis=M,Re.value=N,Re.constvar=n,Re.index=f,Re.x=Pe,Re.y=ge,Re.smoothing=M.smoothing,Re}function j(N){var H,te,oe,_e,Ee,Ce=[],me=[],ie={};if(ie.length=k.length,ie.crossLength=C.length,r==="b")for(oe=Math.max(0,Math.min(V-2,N)),Ee=Math.min(1,Math.max(0,N-oe)),ie.xy=function(Se){return t.evalxy([],Se,N)},ie.dxy=function(Se,Le){return t.dxydi([],Se,oe,Le,Ee)},H=0;H<T;H++)Ce[H]=g[N*G][H],me[H]=P[N*G][H];else for(te=Math.max(0,Math.min(O-2,N)),_e=Math.min(1,Math.max(0,N-te)),ie.xy=function(Se){return t.evalxy([],N,Se)},ie.dxy=function(Se,Le){return t.dxydj([],te,Se,_e,Le)},H=0;H<z;H++)Ce[H]=g[H][N*G],me[H]=P[H][N*G];return ie.axisLetter=r,ie.axis=E,ie.crossAxis=M,ie.value=k[N],ie.constvar=n,ie.index=N,ie.x=Ce,ie.y=me,ie.smoothing=M.smoothing,ie}if(E.tickmode==="array"){for(s=5e-15,l=[Math.floor((k.length-1-E.arraytick0)/E.arraydtick*(1+s)),Math.ceil(-E.arraytick0/E.arraydtick/(1+s))].sort(function(N,H){return N-H}),u=l[0]-1,c=l[1]+1,f=u;f<c;f++)a=E.arraytick0+E.arraydtick*f,!(a<0||a>k.length-1)&&S.push(kx(j(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,k.length-1),!(o<0||o>k.length-1)&&!(v<0||v>k.length-1))for(_=k[o],b=k[v],i=0;i<E.minorgridcount;i++)p=v-o,!(p<=0)&&(d=_+(b-_)*(i+1)/(E.minorgridcount+1)*(E.arraydtick/p),!(d<k[0]||d>k[k.length-1])&&L.push(kx(Z(d),{color:E.minorgridcolor,width:E.minorgridwidth,dash:E.minorgriddash})));E.startline&&x.push(kx(j(0),{color:E.startlinecolor,width:E.startlinewidth})),E.endline&&x.push(kx(j(k.length-1),{color:E.endlinecolor,width:E.endlinewidth}))}else{for(s=5e-15,l=[Math.floor((k[k.length-1]-E.tick0)/E.dtick*(1+s)),Math.ceil((k[0]-E.tick0)/E.dtick/(1+s))].sort(function(N,H){return N-H}),u=l[0],c=l[1],f=u;f<=c;f++)h=E.tick0+E.dtick*f,S.push(kx(Z(h),{color:E.gridcolor,width:E.gridwidth,dash:E.griddash}));for(f=u-1;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<k[0]||d>k[k.length-1])&&L.push(kx(Z(d),{color:E.minorgridcolor,width:E.minorgridwidth,dash:E.minorgriddash}));E.startline&&x.push(kx(Z(k[0]),{color:E.startlinecolor,width:E.startlinewidth})),E.endline&&x.push(kx(Z(k[k.length-1]),{color:E.endlinecolor,width:E.endlinewidth}))}}});var gYe=ye((B2r,pYe)=>{"use strict";var dYe=ho(),vYe=Ao().extendFlat;pYe.exports=function(t,r){var n,i,a,o,s,l=r._labels=[],u=r._gridlines;for(n=0;n<u.length;n++)s=u[n],["start","both"].indexOf(r.showticklabels)!==-1&&(i=dYe.tickText(r,s.value),vYe(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=dYe.tickText(r,s.value),vYe(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 yYe=ye((N2r,mYe)=>{"use strict";mYe.exports=function(t,r,n,i){var a,o,s,l=[],u=!!n.smoothing,c=!!i.smoothing,f=t[0].length-1,h=t.length-1;for(a=0,o=[],s=[];a<=f;a++)o[a]=t[0][a],s[a]=r[0][a];for(l.push({x:o,y:s,bicubic:u}),a=0,o=[],s=[];a<=h;a++)o[a]=t[a][f],s[a]=r[a][f];for(l.push({x:o,y:s,bicubic:c}),a=f,o=[],s=[];a>=0;a--)o[f-a]=t[h][a],s[f-a]=r[h][a];for(l.push({x:o,y:s,bicubic:u}),a=h,o=[],s=[];a>=0;a--)o[h-a]=t[a][0],s[h-a]=r[a][0];return l.push({x:o,y:s,bicubic:c}),l}});var xYe=ye((U2r,_Ye)=>{"use strict";var UKt=Dr();_Ye.exports=function(t,r,n){var i,a,o,s=[],l=[],u=t[0].length,c=t.length;function f(oe,_e){var Ee=0,Ce,me=0;return oe>0&&(Ce=t[_e][oe-1])!==void 0&&(me++,Ee+=Ce),oe<u-1&&(Ce=t[_e][oe+1])!==void 0&&(me++,Ee+=Ce),_e>0&&(Ce=t[_e-1][oe])!==void 0&&(me++,Ee+=Ce),_e<c-1&&(Ce=t[_e+1][oe])!==void 0&&(me++,Ee+=Ce),Ee/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,_,b,p,k,E,S,L,x,C,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,j,N,H,te;i===0?(H=Math.min(u-1,2),j=r[H],N=r[1],G=t[a][H],Z=t[a][1],V+=Z+(Z-G)*(r[0]-N)/(N-j),O++):i===u-1&&(H=Math.max(0,u-3),j=r[H],N=r[u-2],G=t[a][H],Z=t[a][u-2],V+=Z+(Z-G)*(r[u-1]-N)/(N-j),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?(te=Math.min(c-1,2),j=n[te],N=n[1],G=t[te][i],Z=t[1][i],V+=Z+(Z-G)*(n[0]-N)/(N-j),O++):a===c-1&&(te=Math.max(0,c-3),j=n[te],N=n[c-2],G=t[te][i],Z=t[c-2][i],V+=Z+(Z-G)*(n[c-1]-N)/(N-j),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:(_=r[i+1]-r[i],b=r[i]-r[i-1],p=n[a+1]-n[a],k=n[a]-n[a-1],E=_*b*(_+b),S=p*k*(p+k),V=(E*(k*t[a+1][i]+p*t[a-1][i])+S*(b*t[a][i+1]+_*t[a][i-1]))/(S*(b+_)+E*(k+p))),L=V-t[a][i],x=L/h,g+=x*x,C=O?0:.85,t[a][i]+=L*(1+C)}g=Math.sqrt(g)}while(T++<P&&g>M);return UKt.log("Smoother converged to",g,"after",T,"iterations"),t}});var wYe=ye((V2r,bYe)=>{"use strict";bYe.exports={RELATIVE_CULL_TOLERANCE:1e-6}});var SYe=ye((G2r,AYe)=>{"use strict";var TYe=.5;AYe.exports=function(t,r,n,i){var a=t[0]-r[0],o=t[1]-r[1],s=n[0]-r[0],l=n[1]-r[1],u=Math.pow(a*a+o*o,TYe/2),c=Math.pow(s*s+l*l,TYe/2),f=(c*c*a-u*u*s)*i,h=(c*c*o-u*u*l)*i,d=c*(u+c)*3,v=u*(u+c)*3;return[[r[0]+(d&&f/d),r[1]+(d&&h/d)],[r[0]-(v&&f/v),r[1]-(v&&h/v)]]}});var EYe=ye((H2r,MYe)=>{"use strict";var k$=SYe(),K7=Dr().ensureArray;function N5(e,t,r){var n=-.5*r[0]+1.5*t[0],i=-.5*r[1]+1.5*t[1];return[(2*n+e[0])/3,(2*i+e[1])/3]}MYe.exports=function(t,r,n,i,a,o){var s,l,u,c,f,h,d,v,_,b,p=n[0].length,k=n.length,E=a?3*p-2:p,S=o?3*k-2:k;for(t=K7(t,S),r=K7(r,S),u=0;u<S;u++)t[u]=K7(t[u],E),r[u]=K7(r[u],E);for(l=0,c=0;l<k;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<k;l++,c+=o?3:1){for(s=1,u=3;s<p-1;s++,u+=3)_=k$([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]=_[0][0],r[c][u-1]=_[0][1],t[c][u+1]=_[1][0],r[c][u+1]=_[1][1];b=N5([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=N5([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<S-3;c+=3)_=k$([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]=_[0][0],r[c-1][u]=_[0][1],t[c+1][u]=_[1][0],r[c+1][u]=_[1][1];b=N5([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=N5([t[S-1][u],r[S-1][u]],[t[S-3][u],r[S-3][u]],[t[S-4][u],r[S-4][u]]),t[S-2][u]=b[0],r[S-2][u]=b[1]}if(a&&o)for(c=1;c<S;c+=(c+1)%3===0?2:1){for(u=3;u<E-3;u+=3)_=k$([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]+_[0][0]),r[c][u-1]=.5*(r[c][u-1]+_[0][1]),t[c][u+1]=.5*(t[c][u+1]+_[1][0]),r[c][u+1]=.5*(r[c][u+1]+_[1][1]);b=N5([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=N5([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((j2r,kYe)=>{"use strict";kYe.exports=function(e,t,r,n,i){var a=t-2,o=r-2;return n&&i?function(s,l,u){s||(s=[]);var c,f,h,d,v,_,b=Math.max(0,Math.min(Math.floor(l),a)),p=Math.max(0,Math.min(Math.floor(u),o)),k=Math.max(0,Math.min(1,l-b)),E=Math.max(0,Math.min(1,u-p));b*=3,p*=3;var S=k*k,L=S*k,x=1-k,C=x*x,M=C*x,g=E*E,P=g*E,T=1-E,z=T*T,O=z*T;for(_=0;_<e.length;_++)v=e[_],c=M*v[p][b]+3*(C*k*v[p][b+1]+x*S*v[p][b+2])+L*v[p][b+3],f=M*v[p+1][b]+3*(C*k*v[p+1][b+1]+x*S*v[p+1][b+2])+L*v[p+1][b+3],h=M*v[p+2][b]+3*(C*k*v[p+2][b+1]+x*S*v[p+2][b+2])+L*v[p+2][b+3],d=M*v[p+3][b]+3*(C*k*v[p+3][b+1]+x*S*v[p+3][b+2])+L*v[p+3][b+3],s[_]=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,_,b,p,k,E;c*=3;var S=h*h,L=S*h,x=1-h,C=x*x,M=C*x,g=1-d;for(k=0;k<e.length;k++)E=e[k],v=g*E[f][c]+d*E[f+1][c],_=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[k]=M*v+3*(C*h*_+x*S*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,_,b,p,k,E;f*=3;var S=d*d,L=S*d,x=1-d,C=x*x,M=C*x,g=1-h;for(k=0;k<e.length;k++)E=e[k],v=g*E[f][c]+h*E[f][c+1],_=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[k]=M*v+3*(C*d*_+x*S*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,_,b,p,k=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],_=E*p[f+1][c]+h*p[f+1][c+1],s[b]=k*v+d*_;return s}}});var PYe=ye((W2r,LYe)=>{"use strict";LYe.exports=function(e,t,r){return t&&r?function(n,i,a,o,s){n||(n=[]);var l,u,c,f,h,d;i*=3,a*=3;var v=o*o,_=1-o,b=_*_,p=_*o*2,k=-3*b,E=3*(b-p),S=3*(p-v),L=3*v,x=s*s,C=x*s,M=1-s,g=M*M,P=g*M;for(d=0;d<e.length;d++)h=e[d],l=k*h[a][i]+E*h[a][i+1]+S*h[a][i+2]+L*h[a][i+3],u=k*h[a+1][i]+E*h[a+1][i+1]+S*h[a+1][i+2]+L*h[a+1][i+3],c=k*h[a+2][i]+E*h[a+2][i+1]+S*h[a+2][i+2]+L*h[a+2][i+3],f=k*h[a+3][i]+E*h[a+3][i+1]+S*h[a+3][i+2]+L*h[a+3][i+3],n[d]=P*l+3*(g*s*u+M*x*c)+C*f;return n}:t?function(n,i,a,o,s){n||(n=[]);var l,u,c,f;i*=3;var h=o*o,d=1-o,v=d*d,_=d*o*2,b=-3*v,p=3*(v-_),k=3*(_-h),E=3*h,S=1-s;for(c=0;c<e.length;c++)f=e[c],l=b*f[a][i]+p*f[a][i+1]+k*f[a][i+2]+E*f[a][i+3],u=b*f[a+1][i]+p*f[a+1][i+1]+k*f[a+1][i+2]+E*f[a+1][i+3],n[c]=S*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,_=v*s,b=1-s,p=b*b,k=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]=k*l+3*(p*s*u+b*v*c)+_*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 RYe=ye((X2r,IYe)=>{"use strict";IYe.exports=function(e,t,r){return t&&r?function(n,i,a,o,s){n||(n=[]);var l,u,c,f,h,d;i*=3,a*=3;var v=o*o,_=v*o,b=1-o,p=b*b,k=p*b,E=s*s,S=1-s,L=S*S,x=S*s*2,C=-3*L,M=3*(L-x),g=3*(x-E),P=3*E;for(d=0;d<e.length;d++)h=e[d],l=C*h[a][i]+M*h[a+1][i]+g*h[a+2][i]+P*h[a+3][i],u=C*h[a][i+1]+M*h[a+1][i+1]+g*h[a+2][i+1]+P*h[a+3][i+1],c=C*h[a][i+2]+M*h[a+1][i+2]+g*h[a+2][i+2]+P*h[a+3][i+2],f=C*h[a][i+3]+M*h[a+1][i+3]+g*h[a+2][i+3]+P*h[a+3][i+3],n[d]=k*l+3*(p*o*u+b*v*c)+_*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,_=v*s,b=1-s,p=b*b,k=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]=k*l+3*(p*s*u+b*v*c)+_*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,_=v*v,b=v*s*2,p=-3*_,k=3*(_-b),E=3*(b-d),S=3*d;for(c=0;c<e.length;c++)f=e[c],l=p*f[a][i]+k*f[a+1][i]+E*f[a+2][i]+S*f[a+3][i],u=p*f[a][i+1]+k*f[a+1][i+1]+E*f[a+2][i+1]+S*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 OYe=ye((Z2r,zYe)=>{"use strict";var DYe=wYe(),FYe=R6().findBin,VKt=EYe(),GKt=CYe(),HKt=PYe(),jKt=RYe();zYe.exports=function(t){var r=t._a,n=t._b,i=r.length,a=n.length,o=t.aaxis,s=t.baxis,l=r[0],u=r[i-1],c=n[0],f=n[a-1],h=r[r.length-1]-r[0],d=n[n.length-1]-n[0],v=h*DYe.RELATIVE_CULL_TOLERANCE,_=d*DYe.RELATIVE_CULL_TOLERANCE;l-=v,u+=v,c-=_,f+=_,t.isVisible=function(b,p){return b>l&&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,k=VKt(t._xctrl,t._yctrl,b,p,o.smoothing,s.smoothing);t._xctrl=k[0],t._yctrl=k[1],t.evalxy=GKt([t._xctrl,t._yctrl],i,a,o.smoothing,s.smoothing),t.dxydi=HKt([t._xctrl,t._yctrl],o.smoothing,s.smoothing),t.dxydj=jKt([t._xctrl,t._yctrl],o.smoothing,s.smoothing)},t.i2a=function(b){var p=Math.max(0,Math.floor(b[0]),i-2),k=b[0]-p;return(1-k)*r[p]+k*r[p+1]},t.j2b=function(b){var p=Math.max(0,Math.floor(b[1]),i-2),k=b[1]-p;return(1-k)*n[p]+k*n[p+1]},t.ij2ab=function(b){return[t.i2a(b[0]),t.j2b(b[1])]},t.a2i=function(b){var p=Math.max(0,Math.min(FYe(b,r),i-2)),k=r[p],E=r[p+1];return Math.max(0,Math.min(i-1,p+(b-k)/(E-k)))},t.b2j=function(b){var p=Math.max(0,Math.min(FYe(b,n),a-2)),k=n[p],E=n[p+1];return Math.max(0,Math.min(a-1,p+(b-k)/(E-k)))},t.ab2ij=function(b){return[t.a2i(b[0]),t.b2j(b[1])]},t.i2c=function(b,p){return t.evalxy([],b,p)},t.ab2xy=function(b,p,k){if(!k&&(b<r[0]||b>r[i-1]|p<n[0]||p>n[a-1]))return[!1,!1];var E=t.a2i(b),S=t.b2j(p),L=t.evalxy([],E,S);if(k){var x=0,C=0,M=[],g,P,T,z;b<r[0]?(g=0,P=0,x=(b-r[0])/(r[1]-r[0])):b>r[i-1]?(g=i-2,P=1,x=(b-r[i-1])/(r[i-1]-r[i-2])):(g=Math.max(0,Math.min(i-2,Math.floor(E))),P=E-g),p<n[0]?(T=0,z=0,C=(p-n[0])/(n[1]-n[0])):p>n[a-1]?(T=a-2,z=1,C=(p-n[a-1])/(n[a-1]-n[a-2])):(T=Math.max(0,Math.min(a-2,Math.floor(S))),z=S-T),x&&(t.dxydi(M,g,T,P,z),L[0]+=M[0]*x,L[1]+=M[1]*x),C&&(t.dxydj(M,g,T,P,z),L[0]+=M[0]*C,L[1]+=M[1]*C)}return L},t.c2p=function(b,p,k){return[p.c2p(b[0]),k.c2p(b[1])]},t.p2x=function(b,p,k){return[p.p2c(b[0]),k.p2c(b[1])]},t.dadi=function(b){var p=Math.max(0,Math.min(r.length-2,b));return r[p+1]-r[p]},t.dbdj=function(b){var p=Math.max(0,Math.min(n.length-2,b));return n[p+1]-n[p]},t.dxyda=function(b,p,k,E){var S=t.dxydi(null,b,p,k,E),L=t.dadi(b,k);return[S[0]/L,S[1]/L]},t.dxydb=function(b,p,k,E){var S=t.dxydj(null,b,p,k,E),L=t.dbdj(p,E);return[S[0]/L,S[1]/L]},t.dxyda_rough=function(b,p,k){var E=h*(k||.1),S=t.ab2xy(b+E,p,!0),L=t.ab2xy(b-E,p,!0);return[(S[0]-L[0])*.5/E,(S[1]-L[1])*.5/E]},t.dxydb_rough=function(b,p,k){var E=d*(k||.1),S=t.ab2xy(b,p+E,!0),L=t.ab2xy(b,p-E,!0);return[(S[0]-L[0])*.5/E,(S[1]-L[1])*.5/E]},t.dpdx=function(b){return b._m},t.dpdy=function(b){return b._m}}});var jYe=ye((Y2r,HYe)=>{"use strict";var J7=ho(),qYe=Dr().isArray1D,WKt=oYe(),BYe=cYe(),NYe=hYe(),UYe=gYe(),XKt=yYe(),VYe=a8(),GYe=xYe(),ZKt=i8(),YKt=OYe();HYe.exports=function(t,r){var n=J7.getFromId(t,r.xaxis),i=J7.getFromId(t,r.yaxis),a=r.aaxis,o=r.baxis,s=r.x,l=r.y,u=[];s&&qYe(s)&&u.push("x"),l&&qYe(l)&&u.push("y"),u.length&&ZKt(r,a,o,"a","b",u);var c=r._a=r._a||r.a,f=r._b=r._b||r.b;s=r._x||r.x,l=r._y||r.y;var h={};if(r._cheater){var d=a.cheatertype==="index"?c.length:c,v=o.cheatertype==="index"?f.length:f;s=WKt(d,v,r.cheaterslope)}r._x=s=VYe(s),r._y=l=VYe(l),GYe(s,c,f),GYe(l,c,f),YKt(r),r.setScale();var _=BYe(s),b=BYe(l),p=.5*(_[1]-_[0]),k=.5*(_[1]+_[0]),E=.5*(b[1]-b[0]),S=.5*(b[1]+b[0]),L=1.3;return _=[k-p*L,k+p*L],b=[S-E*L,S+E*L],r._extremes[n._id]=J7.findExtremes(n,_,{padded:!0}),r._extremes[i._id]=J7.findExtremes(i,b,{padded:!0}),NYe(r,"a","b"),NYe(r,"b","a"),UYe(r,a),UYe(r,o),h.clipsegments=XKt(r._xctrl,r._yctrl,a,o),h.x=s,h.y=l,h.a=c,h.b=f,[h]}});var XYe=ye((K2r,WYe)=>{"use strict";WYe.exports={attributes:H7(),supplyDefaults:WZe(),plot:nYe(),calc:jYe(),animatable:!0,isContainer:!0,moduleType:"trace",name:"carpet",basePlotModule:ph(),categories:["cartesian","svg","carpet","carpetAxis","notLegendIsolatable","noMultiCategory","noHover","noSortingByValue"],meta:{}}});var YYe=ye((J2r,ZYe)=>{"use strict";ZYe.exports=XYe()});var C$=ye(($2r,$Ye)=>{"use strict";var KKt=Cg(),u0=pf(),JKt=Gl(),{hovertemplateAttrs:$Kt,texttemplateAttrs:QKt,templatefallbackAttrs:KYe}=Ll(),JYe=Tu(),Cx=Ao().extendFlat,sg=u0.marker,U5=u0.line,eJt=sg.line;$Ye.exports={carpet:{valType:"string",editType:"calc"},a:{valType:"data_array",editType:"calc"},b:{valType:"data_array",editType:"calc"},mode:Cx({},u0.mode,{dflt:"markers"}),text:Cx({},u0.text,{}),texttemplate:QKt({editType:"plot"},{keys:["a","b","text"]}),texttemplatefallback:KYe({editType:"plot"}),hovertext:Cx({},u0.hovertext,{}),line:{color:U5.color,width:U5.width,dash:U5.dash,backoff:U5.backoff,shape:Cx({},U5.shape,{values:["linear","spline"]}),smoothing:U5.smoothing,editType:"calc"},connectgaps:u0.connectgaps,fill:Cx({},u0.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:KKt(),marker:Cx({symbol:sg.symbol,opacity:sg.opacity,maxdisplayed:sg.maxdisplayed,angle:sg.angle,angleref:sg.angleref,standoff:sg.standoff,size:sg.size,sizeref:sg.sizeref,sizemin:sg.sizemin,sizemode:sg.sizemode,line:Cx({width:eJt.width,editType:"calc"},JYe("marker.line")),gradient:sg.gradient,editType:"calc"},JYe("marker")),textfont:u0.textfont,textposition:u0.textposition,selected:u0.selected,unselected:u0.unselected,hoverinfo:Cx({},JKt.hoverinfo,{flags:["a","b","text","name"]}),hoveron:u0.hoveron,hovertemplate:$Kt(),hovertemplatefallback:KYe(),zorder:u0.zorder}});var rKe=ye((Q2r,tKe)=>{"use strict";var QYe=Dr(),tJt=Sm(),V5=Ru(),rJt=$p(),iJt=R0(),eKe=tT(),nJt=D0(),aJt=Rg(),oJt=C$();tKe.exports=function(t,r,n,i){function a(h,d){return QYe.coerce(t,r,oJt,h,d)}a("carpet"),r.xaxis="x",r.yaxis="y";var o=a("a"),s=a("b"),l=Math.min(o.length,s.length);if(!l){r.visible=!1;return}r._length=l,a("text"),a("texttemplate"),a("texttemplatefallback"),a("hovertext");var u=l<tJt.PTS_LINESONLY?"lines+markers":"lines";a("mode",u),V5.hasMarkers(r)&&rJt(t,r,n,i,a,{gradient:!0}),V5.hasLines(r)&&(iJt(t,r,n,i,a,{backoff:!0}),eKe(t,r,a),a("connectgaps")),V5.hasText(r)&&nJt(t,r,i,a);var c=[];(V5.hasMarkers(r)||V5.hasText(r))&&(a("marker.maxdisplayed"),c.push("points")),a("fill"),r.fill!=="none"&&(aJt(t,r,n,a),V5.hasLines(r)||eKe(t,r,a)),(r.fill==="tonext"||r.fill==="toself")&&c.push("fills");var f=a("hoveron",c.join("+")||"points");f!=="fills"&&(a("hovertemplate"),a("hovertemplatefallback")),a("zorder"),QYe.coerceSelectionMarkerOpacity(r,a)}});var nKe=ye((ewr,iKe)=>{"use strict";iKe.exports=function(t,r){var n={},i=r._carpet,a=i.ab2ij([t.a,t.b]),o=Math.floor(a[0]),s=a[0]-o,l=Math.floor(a[1]),u=a[1]-l,c=i.evalxy([],o,l,s,u);return n.yLabel=c[1].toFixed(3),n}});var $7=ye((twr,aKe)=>{"use strict";aKe.exports=function(e,t){for(var r=e._fullData.length,n,i=0;i<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 lKe=ye((rwr,sKe)=>{"use strict";var oKe=Eo(),sJt=F0(),lJt=km(),uJt=z0(),cJt=O0().calcMarkerSize,fJt=$7();sKe.exports=function(t,r){var n=r._carpetTrace=fJt(t,r);if(!(!n||!n.visible||n.visible==="legendonly")){var i;r.xaxis=n.xaxis,r.yaxis=n.yaxis;var a=r._length,o=new Array(a),s,l,u=!1;for(i=0;i<a;i++)if(s=r.a[i],l=r.b[i],oKe(s)&&oKe(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,cJt(r,a),sJt(t,r),lJt(o,r),uJt(o,r),o}}});var fKe=ye((iwr,cKe)=>{"use strict";var hJt=sT(),uKe=ho(),dJt=So();cKe.exports=function(t,r,n,i){var a,o,s,l=n[0][0].carpet,u=uKe.getFromId(t,l.xaxis||"x"),c=uKe.getFromId(t,l.yaxis||"y"),f={xaxis:u,yaxis:c,plot:r.plot};for(a=0;a<n.length;a++)o=n[a][0].trace,o._xA=u,o._yA=c;for(hJt(t,f,n,i),a=0;a<n.length;a++)o=n[a][0].trace,s=i.selectAll("g.trace"+o.uid+" .js-line"),dJt.setClipUrl(s,n[a][0].carpet._clipPathId,t)}});var dKe=ye((nwr,hKe)=>{"use strict";var vJt=fT(),pJt=Dr().fillText;hKe.exports=function(t,r,n,i){var a=vJt(t,r,n,i);if(!a||a[0].index===!1)return;var o=a[0];if(o.index===void 0){var s=1-o.y0/t.ya._length,l=t.xa._length,u=l*s/2,c=l-u;return o.x0=Math.max(Math.min(o.x0,c),u),o.x1=Math.max(Math.min(o.x1,c),u),a}var f=o.cd[o.index];o.a=f.a,o.b=f.b,o.xLabelVal=void 0,o.yLabelVal=void 0;var h=o.trace,d=h._carpet,v=h._module.formatLabels(f,h);o.yLabel=v.yLabel,delete o.text;var _=[];function b(E,S){var L;E.labelprefix&&E.labelprefix.length>0?L=E.labelprefix.replace(/ = $/,""):L=E._hovertitle,_.push(L+": "+S.toFixed(3)+E.labelsuffix)}if(!h.hovertemplate){var p=f.hi||h.hoverinfo,k=p.split("+");k.indexOf("all")!==-1&&(k=["a","b","text"]),k.indexOf("a")!==-1&&b(d.aaxis,f.a),k.indexOf("b")!==-1&&b(d.baxis,f.b),_.push("y: "+o.yLabel),k.indexOf("text")!==-1&&pJt(f,h,_),o.extraText=_.join("<br>")}return a}});var pKe=ye((awr,vKe)=>{"use strict";vKe.exports=function(t,r,n,i,a){var o=i[a];return t.a=o.a,t.b=o.b,t.y=o.y,t}});var mKe=ye((owr,gKe)=>{"use strict";gKe.exports={attributes:C$(),supplyDefaults:rKe(),colorbar:$d(),formatLabels:nKe(),calc:lKe(),plot:fKe(),style:op().style,styleOnSelect:op().styleOnSelect,hoverPoints:dKe(),selectPoints:hT(),eventData:pKe(),moduleType:"trace",name:"scattercarpet",basePlotModule:ph(),categories:["svg","carpet","symbols","showLegend","carpetDependent","zoomScale"],meta:{}}});var _Ke=ye((swr,yKe)=>{"use strict";yKe.exports=mKe()});var L$=ye((lwr,xKe)=>{"use strict";var lg=PT(),g1=C4(),gJt=Tu(),mJt=Ao().extendFlat,ry=g1.contours;xKe.exports=mJt({carpet:{valType:"string",editType:"calc"},z:lg.z,a:lg.x,a0:lg.x0,da:lg.dx,b:lg.y,b0:lg.y0,db:lg.dy,text:lg.text,hovertext:lg.hovertext,transpose:lg.transpose,atype:lg.xtype,btype:lg.ytype,fillcolor:g1.fillcolor,autocontour:g1.autocontour,ncontours:g1.ncontours,contours:{type:ry.type,start:ry.start,end:ry.end,size:ry.size,coloring:{valType:"enumerated",values:["fill","lines","none"],dflt:"fill",editType:"calc"},showlines:ry.showlines,showlabels:ry.showlabels,labelfont:ry.labelfont,labelformat:ry.labelformat,operation:ry.operation,value:ry.value,editType:"calc",impliedEdits:{autocontour:!1}},line:{color:g1.line.color,width:g1.line.width,dash:g1.line.dash,smoothing:g1.line.smoothing,editType:"plot"},zorder:g1.zorder},gJt("",{cLetter:"z",autoColorDflt:!1}))});var P$=ye((uwr,TKe)=>{"use strict";var bKe=Dr(),yJt=e8(),wKe=L$(),_Jt=MG(),xJt=A8(),bJt=S8();TKe.exports=function(t,r,n,i){function a(u,c){return bKe.coerce(t,r,wKe,u,c)}function o(u){return bKe.coerce2(t,r,wKe,u)}if(a("carpet"),t.a&&t.b){var s=yJt(t,r,a,i,"a","b");if(!s){r.visible=!1;return}a("text");var l=a("contours.type")==="constraint";l?_Jt(t,r,a,i,n,{hasHover:!1}):(xJt(t,r,a,o),bJt(t,r,a,i,{hasHover:!1}))}else r._defaultColor=n,r._length=null;a("zorder")}});var EKe=ye((cwr,MKe)=>{"use strict";var wJt=gv(),AKe=Dr(),TJt=i8(),AJt=a8(),SJt=o8(),MJt=s8(),SKe=YV(),EJt=P$(),kJt=$7(),CJt=vG();MKe.exports=function(t,r){var n=r._carpetTrace=kJt(t,r);if(!(!n||!n.visible||n.visible==="legendonly")){if(!r.a||!r.b){var i=t.data[n.index],a=t.data[r.index];a.a||(a.a=i.a),a.b||(a.b=i.b),EJt(a,r,r._defaultColor,t._fullLayout)}var o=LJt(t,r);return CJt(r,r._z),o}};function LJt(e,t){var r=t._carpetTrace,n=r.aaxis,i=r.baxis,a,o,s,l,u,c,f;n._minDtick=0,i._minDtick=0,AKe.isArray1D(t.z)&&TJt(t,n,i,"a","b",["z"]),a=t._a=t._a||t.a,l=t._b=t._b||t.b,a=a?n.makeCalcdata(t,"_a"):[],l=l?i.makeCalcdata(t,"_b"):[],o=t.a0||0,s=t.da||1,u=t.b0||0,c=t.db||1,f=t._z=AJt(t._z||t.z,t.transpose),t._emptypoints=MJt(f),SJt(f,t._emptypoints);var h=AKe.maxRowLength(f),d=t.xtype==="scaled"?"":a,v=SKe(t,d,o,s,h,n),_=t.ytype==="scaled"?"":l,b=SKe(t,_,u,c,f.length,i),p={a:v,b,z:f};return t.contours.type==="levels"&&t.contours.coloring!=="none"&&wJt(e,t,{vals:f,containerStr:"",cLetter:"z"}),[p]}});var CKe=ye((fwr,kKe)=>{"use strict";var PJt=Dr().isArrayOrTypedArray;kKe.exports=function(e,t,r,n){var i,a,o,s,l,u,c,f,h,d,v,_,b,p=PJt(r)?"a":"b",k=p==="a"?e.aaxis:e.baxis,E=k.smoothing,S=p==="a"?e.a2i:e.b2j,L=p==="a"?r:n,x=p==="a"?n:r,C=p==="a"?t.a.length:t.b.length,M=p==="a"?t.b.length:t.a.length,g=Math.floor(p==="a"?e.b2j(x):e.a2i(x)),P=p==="a"?function(_e){return e.evalxy([],_e,g)}:function(_e){return e.evalxy([],g,_e)};E&&(o=Math.max(0,Math.min(M-2,g)),s=g-o,a=p==="a"?function(_e,Ee){return e.dxydi([],_e,o,Ee,s)}:function(_e,Ee){return e.dxydj([],o,_e,s,Ee)});var T=S(L[0]),z=S(L[1]),O=T<z?1:-1,V=(z-T)*1e-8,G=O>0?Math.floor:Math.ceil,Z=O>0?Math.ceil:Math.floor,j=O>0?Math.min:Math.max,N=O>0?Math.max:Math.min,H=G(T+V),te=Z(z-V);c=P(T);var oe=[[c]];for(i=H;i*O<te*O;i+=O)l=[],v=N(T,i),_=j(z,i+O),b=_-v,u=Math.max(0,Math.min(C-2,Math.floor(.5*(v+_)))),f=P(_),E&&(h=a(u,v-u),d=a(u,_-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 zKe=ye((hwr,FKe)=>{"use strict";var e9=Oa(),t9=S$(),DKe=M$(),sC=So(),m1=Dr(),IJt=gG(),RJt=mG(),vw=k8(),Q7=P4(),DJt=bG(),FJt=xG(),zJt=wG(),OJt=$7(),LKe=CKe();FKe.exports=function(t,r,n,i){var a=r.xaxis,o=r.yaxis;m1.makeTraceGroups(i,n,"contour").each(function(s){var l=e9.select(this),u=s[0],c=u.trace,f=c._carpetTrace=OJt(t,c),h=t.calcdata[f.index][0];if(!f.visible||f.visible==="legendonly")return;var d=u.a,v=u.b,_=c.contours,b=FJt(_,r,u),p=_.type==="constraint",k=_._operation,E=p?k==="="?"lines":"fill":_.coloring;function S(G){var Z=f.ab2xy(G[0],G[1],!0);return[a.c2p(Z[0]),o.c2p(Z[1])]}var L=[[d[0],v[v.length-1]],[d[d.length-1],v[v.length-1]],[d[d.length-1],v[0]],[d[0],v[0]]];IJt(b);var x=(d[d.length-1]-d[0])*1e-8,C=(v[v.length-1]-v[0])*1e-8;RJt(b,x,C);var M=b;_.type==="constraint"&&(M=DJt(b,k)),qJt(b,S);var g,P,T,z,O=[];for(z=h.clipsegments.length-1;z>=0;z--)g=h.clipsegments[z],P=t9([],g.x,a.c2p),T=t9([],g.y,o.c2p),P.reverse(),T.reverse(),O.push(DKe(P,T,g.bicubic));var V="M"+O.join("L")+"Z";UJt(l,h.clipsegments,a,o,p,E),VJt(c,l,a,o,M,L,S,f,h,E,V),BJt(l,b,t,u,_,r,f),sC.setClipUrl(l,f._clipPathId,t)})};function qJt(e,t){var r,n,i,a,o,s,l,u,c;for(r=0;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 BJt(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=vw.createLines(l,u||c,t,s),d=vw.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 _=a.xaxis,b=a.yaxis,p=_._length,k=b._length,E=[[[0,0],[p,0],[p,k],[0,k]]],S=[];m1.clearLocationCache();var L=vw.labelFormatter(r,n),x=sC.tester.append("text").attr("data-notex",1).call(sC.font,i.labelfont),C={left:0,right:p,center:p/2,top:0,bottom:k,middle:k/2},M=Math.sqrt(p*p+k*k),g=Q7.LABELDISTANCE*M/Math.max(1,t.length/Q7.LABELINCREASE);h.each(function(P){var T=vw.calcTextOpts(P.level,L,x,r);e9.select(this).selectAll("path").each(function(z){var O=this,V=m1.getVisibleSegment(O,C,T.height/2);if(V&&(NJt(O,z,P,V,o,T.height),!(V.len<(T.width+T.height)*Q7.LABELMIN)))for(var G=Math.min(Math.ceil(V.len/g),Q7.LABELMAX),Z=0;Z<G;Z++){var j=vw.findBestTextLocation(O,V,T,S,C);if(!j)break;vw.addLabelData(j,T,S,E)}})}),x.remove(),vw.drawLabels(v,S,r,d,f?E:null)}c&&!u&&h.remove()}function NJt(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,k){var E=0,S,L=.1;return(Math.abs(p[0]-l)<L||Math.abs(p[0]-u)<L)&&(S=IKe(i.dxydb_rough(p[0],p[1],L)),E=Math.max(E,a*RKe(k,S)/2)),(Math.abs(p[1]-c)<L||Math.abs(p[1]-f)<L)&&(S=IKe(i.dxyda_rough(p[0],p[1],L)),E=Math.max(E,a*RKe(k,S)/2)),E}var d=PKe(e,0,1),v=PKe(e,n.total,n.total-1),_=h(o[0],d),b=n.total-h(o[o.length-1],v);n.min<_&&(n.min=_),n.max>b&&(n.max=b),n.len=n.max-n.min}function PKe(e,t,r){var n=e.getPointAtLength(t),i=e.getPointAtLength(r),a=i.x-n.x,o=i.y-n.y,s=Math.sqrt(a*a+o*o);return[a/s,o/s]}function IKe(e){var t=Math.sqrt(e[0]*e[0]+e[1]*e[1]);return[e[0]/t,e[1]/t]}function RKe(e,t){var r=Math.abs(e[0]*t[0]+e[1]*t[1]),n=Math.sqrt(1-r*r);return n/r}function UJt(e,t,r,n,i,a){var o,s,l,u,c=m1.ensureSingle(e,"g","contourbg"),f=c.selectAll("path").data(a==="fill"&&!i?[0]:[]);f.enter().append("path"),f.exit().remove();var h=[];for(u=0;u<t.length;u++)o=t[u],s=t9([],o.x,r.c2p),l=t9([],o.y,n.c2p),h.push(DKe(s,l,o.bicubic));f.attr("d","M"+h.join("L")+"Z").style("stroke","none")}function VJt(e,t,r,n,i,a,o,s,l,u,c){var f=u==="fill";f&&zJt(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 _=(v.prefixBoundary?c:"")+GJt(e,v,a,o,s,l,r,n);_?e9.select(this).attr("d",_).style("stroke","none"):e9.select(this).remove()})}function GJt(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,_,b,p,k=Math.abs(r[0][0]-r[2][0])*1e-4,E=Math.abs(r[0][1]-r[2][1])*1e-4;function S(T){return Math.abs(T[1]-r[0][1])<E}function L(T){return Math.abs(T[1]-r[2][1])<E}function x(T){return Math.abs(T[0]-r[0][0])<k}function C(T){return Math.abs(T[0]-r[2][0])<k}function M(T,z){var O,V,G,Z,j="";for(S(T)&&!C(T)||L(T)&&!x(T)?(Z=i.aaxis,G=LKe(i,a,[T[0],z[0]],.5*(T[1]+z[1]))):(Z=i.baxis,G=LKe(i,a,.5*(T[0]+z[0]),[T[1],z[1]])),O=1;O<G.length;O++)for(j+=Z.smoothing?"C":"L",V=0;V<G[O].length;V++){var N=G[O][V];j+=[o.c2p(N[0]),s.c2p(N[1])]+" "}return j}for(l=0,h=null;c.length;){var g=t.edgepaths[l][0];for(h&&(u+=M(h,g)),p=sC.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],_=-1,v=0;v<4;v++){if(!h){m1.log("Missing end?",l,t);break}for(S(h)&&!C(h)?d=r[1]:x(h)?d=r[0]:L(h)?d=r[3]:C(h)&&(d=r[2]),b=0;b<t.edgepaths.length;b++){var P=t.edgepaths[b][0];Math.abs(h[0]-d[0])<k?Math.abs(h[0]-P[0])<k&&(P[1]-h[1])*(d[1]-P[1])>=0&&(d=P,_=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,_=b):m1.log("endpt to newendpt is not vert. or horz.",h,d,P)}if(_>=0)break;u+=M(h,d),h=d}if(_===t.edgepaths.length){m1.log("unclosed perimeter path");break}l=_,f=c.indexOf(l)===-1,f&&(l=c[0],u+=M(h,d)+"Z",h=null)}for(l=0;l<t.paths.length;l++)u+=sC.smoothclosed(t.paths[l].map(n),t.smoothing);return u}});var qKe=ye((dwr,OKe)=>{"use strict";OKe.exports={attributes:L$(),supplyDefaults:P$(),colorbar:P8(),calc:EKe(),plot:zKe(),style:L8(),moduleType:"trace",name:"contourcarpet",basePlotModule:ph(),categories:["cartesian","svg","carpet","contour","symbols","showLegend","hasLines","carpetDependent","noHover","noSortingByValue"],meta:{}}});var NKe=ye((vwr,BKe)=>{"use strict";BKe.exports=qKe()});var i9=ye((pwr,jKe)=>{"use strict";var r9=Dr().extendFlat,lC=pf(),UKe=df().axisHoverFormat,{hovertemplateAttrs:HJt,templatefallbackAttrs:jJt}=Ll(),GKe=Pd().dash,WJt=a3(),HKe=XT(),XJt=HKe.INCREASING.COLOR,ZJt=HKe.DECREASING.COLOR,I$=lC.line;function VKe(e){return{line:{color:r9({},I$.color,{dflt:e}),width:I$.width,dash:GKe,editType:"style"},editType:"style"}}jKe.exports={xperiod:lC.xperiod,xperiod0:lC.xperiod0,xperiodalignment:lC.xperiodalignment,xhoverformat:UKe("x"),yhoverformat:UKe("y"),x:{valType:"data_array",editType:"calc+clearAxisTypes"},open:{valType:"data_array",editType:"calc"},high:{valType:"data_array",editType:"calc"},low:{valType:"data_array",editType:"calc"},close:{valType:"data_array",editType:"calc"},line:{width:r9({},I$.width,{}),dash:r9({},GKe,{}),editType:"style"},increasing:VKe(XJt),decreasing:VKe(ZJt),text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertemplate:HJt({},{keys:["open","high","low","close"]}),hovertemplatefallback:jJt(),tickwidth:{valType:"number",min:0,max:.5,dflt:.3,editType:"calc"},hoverlabel:r9({},WJt.hoverlabel,{split:{valType:"boolean",dflt:!1,editType:"style"}}),zorder:lC.zorder}});var R$=ye((gwr,WKe)=>{"use strict";var YJt=qa(),KJt=Dr();WKe.exports=function(t,r,n,i){var a=n("x"),o=n("open"),s=n("high"),l=n("low"),u=n("close");n("hoverlabel.split");var c=YJt.getComponentMethod("calendars","handleTraceDefaults");if(c(t,r,["x"],i),!!(o&&s&&l&&u)){var f=Math.min(o.length,s.length,l.length,u.length);return a&&(f=Math.min(f,KJt.minRowLength(a))),r._length=f,f}}});var YKe=ye((mwr,ZKe)=>{"use strict";var JJt=Dr(),$Jt=R$(),QJt=Ig(),e$t=i9();ZKe.exports=function(t,r,n,i){function a(s,l){return JJt.coerce(t,r,e$t,s,l)}var o=$Jt(t,r,a,i);if(!o){r.visible=!1;return}QJt(t,r,i,a,{x:!0}),a("xhoverformat"),a("yhoverformat"),a("line.width"),a("line.dash"),XKe(t,r,a,"increasing"),XKe(t,r,a,"decreasing"),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),a("tickwidth"),i._requestRangeslider[r.xaxis]=!0,a("zorder")};function XKe(e,t,r,n){r(n+".line.color"),r(n+".line.width",t.line.width),r(n+".line.dash",t.line.dash)}});var D$=ye((ywr,JKe)=>{"use strict";var G5=Dr(),n9=G5._,a9=ho(),t$t=Dg(),uC=fs().BADNUM;function r$t(e,t){var r=a9.getFromId(e,t.xaxis),n=a9.getFromId(e,t.yaxis),i=n$t(e,r,t),a=t._minDiff;t._minDiff=null;var o=t._origX;t._origX=null;var s=t._xcalc;t._xcalc=null;var l=KKe(e,t,o,s,n,i$t);return t._extremes[r._id]=a9.findExtremes(r,s,{vpad:a/2}),l.length?(G5.extendFlat(l[0].t,{wHover:a/2,tickLen:i}),l):[{t:{empty:!0}}]}function i$t(e,t,r,n){return{o:e,h:t,l:r,c:n}}function KKe(e,t,r,n,i,a){for(var o=i.makeCalcdata(t,"open"),s=i.makeCalcdata(t,"high"),l=i.makeCalcdata(t,"low"),u=i.makeCalcdata(t,"close"),c=G5.isArrayOrTypedArray(t.text),f=G5.isArrayOrTypedArray(t.hovertext),h=!0,d=null,v=!!t.xperiodalignment,_=[],b=0;b<n.length;b++){var p=n[b],k=o[b],E=s[b],S=l[b],L=u[b];if(p!==uC&&k!==uC&&E!==uC&&S!==uC&&L!==uC){L===k?d!==null&&L!==d&&(h=L>d):h=L>k,d=L;var x=a(k,E,S,L);x.pos=p,x.yc=(k+L)/2,x.i=b,x.dir=h?"increasing":"decreasing",x.x=x.pos,x.y=[S,E],v&&(x.orig_p=r[b]),c&&(x.tx=t.text[b]),f&&(x.htx=t.hovertext[b]),_.push(x)}else _.push({pos:p,empty:!0})}return t._extremes[i._id]=a9.findExtremes(i,G5.concat(l,s),{padded:!0}),_.length&&(_[0].t={labels:{open:n9(e,"open:")+" ",high:n9(e,"high:")+" ",low:n9(e,"low:")+" ",close:n9(e,"close:")+" "}}),_}function n$t(e,t,r){var n=r._minDiff;if(!n){var i=e._fullData,a=[];n=1/0;var o;for(o=0;o<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=t$t(r,t,"x",l).vals;s._xcalc=u;var c=G5.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}JKe.exports={calc:r$t,calcCommon:KKe}});var eJe=ye((_wr,QKe)=>{"use strict";var a$t=Oa(),$Ke=Dr();QKe.exports=function(t,r,n,i){var a=r.yaxis,o=r.xaxis,s=!!o.rangebreaks;$Ke.makeTraceGroups(i,n,"trace ohlc").each(function(l){var u=a$t.select(this),c=l[0],f=c.t,h=c.trace;if(h.visible!==!0||f.empty){u.remove();return}var d=f.tickLen,v=u.selectAll("path").data($Ke.identity);v.enter().append("path"),v.exit().remove(),v.attr("d",function(_){if(_.empty)return"M0,0Z";var b=o.c2p(_.pos-d,!0),p=o.c2p(_.pos+d,!0),k=s?(b+p)/2:o.c2p(_.pos,!0),E=a.c2p(_.o,!0),S=a.c2p(_.h,!0),L=a.c2p(_.l,!0),x=a.c2p(_.c,!0);return"M"+b+","+E+"H"+k+"M"+k+","+S+"V"+L+"M"+p+","+x+"H"+k})})}});var rJe=ye((xwr,tJe)=>{"use strict";var F$=Oa(),o$t=So(),s$t=ka();tJe.exports=function(t,r,n){var i=n||F$.select(t).selectAll("g.ohlclayer").selectAll("g.trace");i.style("opacity",function(a){return a[0].trace.opacity}),i.each(function(a){var o=a[0].trace;F$.select(this).selectAll("path").each(function(s){if(!s.empty){var l=o[s.dir].line;F$.select(this).style("fill","none").call(s$t.stroke,l.color).call(o$t.dashLine,l.dash,l.width).style("opacity",o.selectedpoints&&!s.selected?.3:1)}})})}});var O$=ye((bwr,sJe)=>{"use strict";var z$=ho(),l$t=Dr(),o9=vf(),u$t=ka(),c$t=Dr().fillText,iJe=XT(),f$t={increasing:iJe.INCREASING.SYMBOL,decreasing:iJe.DECREASING.SYMBOL};function h$t(e,t,r,n){var i=e.cd,a=i[0].trace;return a.hoverlabel.split?aJe(e,t,r,n):oJe(e,t,r,n)}function nJe(e,t,r,n){var i=e.cd,a=e.xa,o=i[0].trace,s=i[0].t,l=o.type,u=l==="ohlc"?"l":"min",c=l==="ohlc"?"h":"max",f,h,d=s.bPos||0,v=function(P){return P.pos+d-t},_=s.bdPos||s.tickLen,b=s.wHover,p=Math.min(1,_/Math.abs(a.r2c(a.range[1])-a.r2c(a.range[0])));f=e.maxHoverDistance-p,h=e.maxSpikeDistance-p;function k(P){var T=v(P);return o9.inbox(T-b,T+b,f)}function E(P){var T=P[u],z=P[c];return T===z||o9.inbox(T-r,z-r,f)}function S(P){return(k(P)+E(P))/2}var L=o9.getDistanceFunction(n,k,E,S);if(o9.getClosest(i,L,e),e.index===!1)return null;var x=i[e.index];if(x.empty)return null;var C=x.dir,M=o[C],g=M.line.color;return u$t.opacity(g)&&M.line.width?e.color=g:e.color=M.fillcolor,e.x0=a.c2p(x.pos+d-_,!0),e.x1=a.c2p(x.pos+d+_,!0),e.xLabelVal=x.orig_p!==void 0?x.orig_p:x.pos,e.spikeDistance=S(x)*h/f,e.xSpike=a.c2p(x.pos,!0),e}function aJe(e,t,r,n){var i=e.cd,a=e.ya,o=i[0].trace,s=i[0].t,l=[],u=nJe(e,t,r,n);if(!u)return[];var c=i[u.index],f=c.hi||o.hoverinfo||"";if(f==="none"||f==="skip")return[];for(var h=["high","open","close","low"],d={},v=0;v<h.length;v++){var _=h[v],b=o[_][u.index],p=a.c2p(b,!0),k;b in d?(k=d[b],k.yLabel+="<br>"+s.labels[_]+z$.hoverLabelText(a,b,o.yhoverformat)):(k=l$t.extendFlat({},u),k.y0=k.y1=p,k.yLabelVal=b,k.yLabel=s.labels[_]+z$.hoverLabelText(a,b,o.yhoverformat),k.name="",l.push(k),d[b]=k)}return l}function oJe(e,t,r,n){var i=e.cd,a=e.ya,o=i[0].trace,s=i[0].t,l=nJe(e,t,r,n);if(!l)return[];var u=l.index,c=i[u],f=l.index=c.i,h=c.dir;function d(S){return s.labels[S]+z$.hoverLabelText(a,o[S][f],o.yhoverformat)}var v=c.hi||o.hoverinfo||"",_=v.split("+"),b=v==="all",p=b||_.indexOf("y")!==-1,k=b||_.indexOf("text")!==-1,E=p?[d("open"),d("high"),d("low"),d("close")+" "+f$t[h]]:[];return k&&c$t(c,o,E),l.extraText=E.join("<br>"),l.y0=l.y1=a.c2p(c.yc,!0),[l]}sJe.exports={hoverPoints:h$t,hoverSplit:aJe,hoverOnPoints:oJe}});var q$=ye((wwr,lJe)=>{"use strict";lJe.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=[],s,l=n[0].t.bPos||0;if(r===!1)for(s=0;s<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 cJe=ye((Twr,uJe)=>{"use strict";uJe.exports={moduleType:"trace",name:"ohlc",basePlotModule:ph(),categories:["cartesian","svg","showLegend"],meta:{},attributes:i9(),supplyDefaults:YKe(),calc:D$().calc,plot:eJe(),style:rJe(),hoverPoints:O$().hoverPoints,selectPoints:q$()}});var hJe=ye((Awr,fJe)=>{"use strict";fJe.exports=cJe()});var N$=ye((Swr,pJe)=>{"use strict";var B$=Dr().extendFlat,dJe=df().axisHoverFormat,dp=i9(),H5=x4();function vJe(e){return{line:{color:B$({},H5.line.color,{dflt:e}),width:H5.line.width,editType:"style"},fillcolor:H5.fillcolor,editType:"style"}}pJe.exports={xperiod:dp.xperiod,xperiod0:dp.xperiod0,xperiodalignment:dp.xperiodalignment,xhoverformat:dJe("x"),yhoverformat:dJe("y"),x:dp.x,open:dp.open,high:dp.high,low:dp.low,close:dp.close,line:{width:B$({},H5.line.width,{}),editType:"style"},increasing:vJe(dp.increasing.line.color.dflt),decreasing:vJe(dp.decreasing.line.color.dflt),text:dp.text,hovertext:dp.hovertext,hovertemplate:dp.hovertemplate,hovertemplatefallback:dp.hovertemplatefallback,whiskerwidth:B$({},H5.whiskerwidth,{dflt:0}),hoverlabel:dp.hoverlabel,zorder:H5.zorder}});var yJe=ye((Mwr,mJe)=>{"use strict";var d$t=Dr(),v$t=ka(),p$t=R$(),g$t=Ig(),m$t=N$();mJe.exports=function(t,r,n,i){function a(s,l){return d$t.coerce(t,r,m$t,s,l)}var o=p$t(t,r,a,i);if(!o){r.visible=!1;return}g$t(t,r,i,a,{x:!0}),a("xhoverformat"),a("yhoverformat"),a("line.width"),gJe(t,r,a,"increasing"),gJe(t,r,a,"decreasing"),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),a("whiskerwidth"),i._requestRangeslider[r.xaxis]=!0,a("zorder")};function gJe(e,t,r,n){var i=r(n+".line.color");r(n+".line.width",t.line.width),r(n+".fillcolor",v$t.addOpacity(i,.5))}});var wJe=ye((Ewr,bJe)=>{"use strict";var _Je=Dr(),xJe=ho(),y$t=Dg(),_$t=D$().calcCommon;bJe.exports=function(e,t){var r=e._fullLayout,n=xJe.getFromId(e,t.xaxis),i=xJe.getFromId(e,t.yaxis),a=n.makeCalcdata(t,"x"),o=y$t(t,n,"x",a).vals,s=_$t(e,t,a,o,i,x$t);return s.length?(_Je.extendFlat(s[0].t,{num:r._numBoxes,dPos:_Je.distinctVals(o).minDiff/2,posLetter:"x",valLetter:"y"}),r._numBoxes++,s):[{t:{empty:!0}}]};function x$t(e,t,r,n){return{min:r,q1:Math.min(e,n),med:n,q3:Math.max(e,n),max:t}}});var AJe=ye((kwr,TJe)=>{"use strict";TJe.exports={moduleType:"trace",name:"candlestick",basePlotModule:ph(),categories:["cartesian","svg","showLegend","candlestick","boxLayout"],meta:{},attributes:N$(),layoutAttributes:b4(),supplyLayoutDefaults:ZI().supplyLayoutDefaults,crossTraceCalc:KI().crossTraceCalc,supplyDefaults:yJe(),calc:wJe(),plot:JI().plot,layerName:"boxlayer",style:$I().style,hoverPoints:O$().hoverPoints,selectPoints:q$()}});var MJe=ye((Cwr,SJe)=>{"use strict";SJe.exports=AJe()});var V$=ye((Lwr,EJe)=>{"use strict";var l9=Dr(),b$t=ym(),s9=l9.deg2rad,U$=l9.rad2deg;EJe.exports=function(t,r,n){switch(b$t(t,n),t._id){case"x":case"radialaxis":w$t(t,r);break;case"angularaxis":S$t(t,r);break}};function w$t(e,t){var r=t._subplot;e.setGeometry=function(){var n=e._rl[0],i=e._rl[1],a=r.innerRadius,o=(r.radius-a)/(i-n),s=a/o,l=n>i?function(u){return u<=0}:function(u){return u>=0};e.c2g=function(u){var c=e.c2l(u)-n;return(l(c)?c:0)+s},e.g2c=function(u){return e.l2c(u+n-s)},e.g2p=function(u){return u*o},e.c2p=function(u){return e.g2p(e.c2g(u))}}}function T$t(e,t){return t==="degrees"?s9(e):e}function A$t(e,t){return t==="degrees"?U$(e):e}function S$t(e,t){var r=e.type;if(r==="linear"){var n=e.d2c,i=e.c2d;e.d2c=function(a,o){return T$t(n(a),o)},e.c2d=function(a,o){return i(A$t(a,o))}}e.makeCalcdata=function(a,o){var s=a[o],l=a._length,u,c,f=function(b){return e.d2c(b,a.thetaunit)};if(s)for(u=new Array(l),c=0;c<l;c++)u[c]=f(s[c]);else{var h=o+"0",d="d"+o,v=h in a?f(a[h]):0,_=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*_}return u},e.setGeometry=function(){var a=t.sector,o=a.map(s9),s={clockwise:-1,counterclockwise:1}[e.direction],l=s9(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=l9.identity,v=s9,d=U$,e.range=l9.isFullCircle(o)?[a[0],a[0]+360]:o.map(c).map(U$);break;case"category":var _=e._categories.length,b=e.period?Math.max(e.period,_):_;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 u9=ye((Pwr,kJe)=>{"use strict";kJe.exports={attr:"subplot",name:"polar",axisNames:["angularaxis","radialaxis"],axisName2dataArray:{angularaxis:"theta",radialaxis:"r"},layerNames:["draglayer","plotbg","backplot","angular-grid","radial-grid","frontplot","angular-line","radial-line","angular-axis","radial-axis"],radialDragBoxSize:50,angularDragBoxSize:30,cornerLen:25,cornerHalfWidth:2,MINDRAG:8,MINZOOM:20,OFFEDGE:20}});var f9=ye((Iwr,RJe)=>{"use strict";var pw=Dr(),CJe=kM().tester,G$=pw.findIndexOfMin,PJe=pw.isAngleInsideSector,M$t=pw.angleDelta,LJe=pw.angleDist;function E$t(e,t,r,n,i){if(!PJe(t,n))return!1;var a,o;r[0]<r[1]?(a=r[0],o=r[1]):(a=r[1],o=r[0]);var s=CJe(j5(a,n[0],n[1],i)),l=CJe(j5(o,n[0],n[1],i)),u=[e*Math.cos(t),e*Math.sin(t)];return l.contains(u)&&!s.contains(u)}function IJe(e,t,r,n){var i,a,o=n[0],s=n[1],l=c9(Math.sin(t)-Math.sin(e)),u=c9(Math.cos(t)-Math.cos(e)),c=Math.tan(r),f=c9(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 k$t(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 C$t(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 L$t(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,k,E){return IJe(p,k,E,l(p))}function c(p){return pw.mod(p,i)}function f(p){return PJe(p,[t,r])}var h=G$(n,function(p){return f(p)?LJe(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 _=G$(n,function(p){return f(p)?LJe(p,r):1/0}),b=u(n[_],n[c(_+1)],r);return a.push(b),a.push([0,0]),a.push(a[0].slice()),a}function j5(e,t,r,n){return pw.isFullCircle([t,r])?C$t(e,n):L$t(e,t,r,n)}function P$t(e,t,r,n){for(var i=1/0,a=1/0,o=j5(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 I$t(e,t){var r=function(a){var o=M$t(a,e);return o>0?o:1/0},n=G$(t,r),i=pw.mod(n+1,t.length);return[t[n],t[i]]}function c9(e){return Math.abs(e)>1e-10?e:0}function H$(e,t,r){t=t||0,r=r||0;for(var n=e.length,i=new Array(n),a=0;a<n;a++){var o=e[a];i[a]=[t+o[0],r-o[1]]}return i}function R$t(e,t,r,n,i,a){var o=j5(e,t,r,n);return"M"+H$(o,i,a).join("L")}function D$t(e,t,r,n,i,a,o){var s,l;e<t?(s=e,l=t):(s=t,l=e);var u=H$(j5(s,r,n,i),a,o),c=H$(j5(l,r,n,i),a,o);return"M"+c.reverse().join("L")+"M"+u.join("L")}RJe.exports={isPtInsidePolygon:E$t,findPolygonOffset:P$t,findEnclosingVertexAngles:I$t,findIntersectionXY:IJe,findXYatLength:k$t,clampTiny:c9,pathPolygon:R$t,pathPolygonAnnulus:D$t}});var j$=ye((Rwr,zJe)=>{"use strict";function DJe(e){return e<0?-1:e>0?1:0}function W5(e){var t=e[0],r=e[1];if(!isFinite(t)||!isFinite(r))return[1,0];var n=(t+1)*(t+1)+r*r;return[(t*t+r*r-1)/n,2*r/n]}function X5(e,t){var r=t[0],n=t[1];return[r*e.radius+e.cx,-n*e.radius+e.cy]}function FJe(e,t){return t*e.radius}function F$t(e,t,r,n){var i=X5(e,W5([r,t])),a=i[0],o=i[1],s=X5(e,W5([n,t])),l=s[0],u=s[1];if(t===0)return["M"+a+","+o,"L"+l+","+u].join(" ");var c=FJe(e,1/Math.abs(t));return["M"+a+","+o,"A"+c+","+c+" 0 0,"+(t<0?1:0)+" "+l+","+u].join(" ")}function z$t(e,t,r,n){var i=FJe(e,1/(t+1)),a=X5(e,W5([t,r])),o=a[0],s=a[1],l=X5(e,W5([t,n])),u=l[0],c=l[1];if(DJe(r)!==DJe(n)){var f=X5(e,W5([t,0])),h=f[0],d=f[1];return["M"+o+","+s,"A"+i+","+i+" 0 0,"+(0<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(" ")}zJe.exports={smith:W5,reactanceArc:F$t,resistanceArc:z$t,smithTransform:X5}});var Z$=ye((Dwr,jJe)=>{"use strict";var gw=Oa(),O$t=cd(),yw=qa(),Xc=Dr(),iy=Xc.strRotate,xd=Xc.strTranslate,W$=ka(),cC=So(),q$t=Mc(),vp=ho(),B$t=ym(),N$t=V$(),U$t=Ag().doAutoRange,y1=NN(),v9=yv(),OJe=vf(),V$t=Eb(),G$t=Of().prepSelect,H$t=Of().selectOnClick,X$=Of().clearOutline,qJe=Sg(),BJe=vM(),NJe=wM().redrawReglTraces,j$t=$h().MID_SHIFT,Lx=u9(),_1=f9(),p9=j$(),h9=p9.smith,W$t=p9.reactanceArc,X$t=p9.resistanceArc,d9=p9.smithTransform,Z$t=Xc._,UJe=Xc.mod,Px=Xc.deg2rad,mw=Xc.rad2deg;function VJe(e,t,r){this.isSmith=r||!1,this.id=t,this.gd=e,this._hasClipOnAxisFalse=null,this.vangles=null,this.radialAxisAngle=null,this.traceHash={},this.layers={},this.clipPaths={},this.clipIds={},this.viewInitial={};var n=e._fullLayout,i="clip"+n._uid+t;this.clipIds.forTraces=i+"-for-traces",this.clipPaths.forTraces=n._clips.append("clipPath").attr("id",this.clipIds.forTraces),this.clipPaths.forTraces.append("path"),this.framework=n["_"+(r?"smith":"polar")+"layer"].append("g").attr("class",t),this.getHole=function(a){return this.isSmith?0:a.hole},this.getSector=function(a){return this.isSmith?[0,360]:a.sector},this.getRadial=function(a){return this.isSmith?a.realaxis:a.radialaxis},this.getAngular=function(a){return this.isSmith?a.imaginaryaxis:a.angularaxis},r||(this.radialTickLayout=null,this.angularTickLayout=null)}var Nd=VJe.prototype;jJe.exports=function(t,r,n){return new VJe(t,r,n)};Nd.plot=function(e,t){for(var r=this,n=t[r.id],i=!1,a=0;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),q$t.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 _=i[v]=gw.select(this);switch(v){case"frontplot":n||_.append("g").classed("barlayer",!0),_.append("g").classed("scatterlayer",!0);break;case"backplot":_.append("g").classed("maplayer",!0);break;case"plotbg":i.bg=_.append("path");break;case"radial-grid":_.style("fill","none");break;case"angular-grid":_.style("fill","none");break;case"radial-line":_.append("line").style("fill","none");break;case"angular-line":_.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=Y$t(f),d=h[2]-h[0],v=h[3]-h[1],_=c/u,b=Math.abs(v/d),p,k,E,S,L;_>b?(p=u,k=u*b,L=(c-k)/i.h/2,E=[s[0],s[1]],S=[l[0]+L,l[1]-L]):(p=c/b,k=c,L=(u-p)/i.w/2,E=[s[0]+L,s[1]-L],S=[l[0],l[1]]),r.xLength2=p,r.yLength2=k,r.xDomain2=E,r.yDomain2=S;var x=r.xOffset2=i.l+i.w*E[0],C=r.yOffset2=i.t+i.h*(1-S[1]),M=r.radius=p/d,g=r.innerRadius=r.getHole(t)*M,P=r.cx=x-M*h[0],T=r.cy=C+M*h[3],z=r.cxx=P-x,O=r.cyy=T-C,V=a.side,G;V==="counterclockwise"?(G=V,V="top"):V==="clockwise"&&(G=V,V="bottom"),r.radialAxis=r.mockAxis(e,t,a,{_id:"x",side:V,_trueSide:G,domain:[g/i.w,M/i.w]}),r.angularAxis=r.mockAxis(e,t,o,{side:"right",domain:[0,Math.PI],autorange:!1}),r.doAutoRange(e,t),r.updateAngularAxis(e,t),r.updateRadialAxis(e,t),r.updateRadialAxisTitle(e,t),r.xaxis=r.mockCartesianAxis(e,t,{_id:"x",domain:E}),r.yaxis=r.mockCartesianAxis(e,t,{_id:"y",domain:S});var Z=r.pathSubplot();r.clipPaths.forTraces.select("path").attr("d",Z).attr("transform",xd(z,O)),n.frontplot.attr("transform",xd(x,C)).call(cC.setClipUrl,r._hasClipOnAxisFalse?null:r.clipIds.forTraces,r.gd),n.bg.attr("d",Z).attr("transform",xd(P,T)).call(W$.fill,t.bgcolor)};Nd.mockAxis=function(e,t,r,n){var i=Xc.extendFlat({},r,n);return N$t(i,t,e),i};Nd.mockCartesianAxis=function(e,t,r){var n=this,i=n.isSmith,a=r._id,o=Xc.extendFlat({type:"linear"},r);B$t(o,e);var s={x:[0,2],y:[1,3]};return o.setRange=function(){var l=n.sectorBBox,u=s[a],c=n.radialAxis._rl,f=(c[1]-c[0])/(1-n.getHole(t));o.range=[l[u[0]]*f,l[u[1]]*f]},o.isPtWithinRange=a==="x"&&!i?function(l){return n.isPtInside(l)}:function(){return!0},o.setRange(),o.setScale(),o};Nd.doAutoRange=function(e,t){var r=this,n=r.gd,i=r.radialAxis,a=r.getRadial(t);U$t(n,i);var o=i.range;if(a.range=o.slice(),a._input.range=o.slice(),i._rl=[i.r2l(o[0],null,"gregorian"),i.r2l(o[1],null,"gregorian")],i.minallowed!==void 0){var s=i.r2l(i.minallowed);i._rl[0]>i._rl[1]?i._rl[1]=Math.max(i._rl[1],s):i._rl[0]=Math.max(i._rl[0],s)}if(i.maxallowed!==void 0){var l=i.r2l(i.maxallowed);i._rl[0]<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=UJe(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=d9(r,h9([M.x,0]));return xd(g[0]-s,g[1]-l)}:function(M){return xd(f.l2p(M.x)+o,0)},_=d?function(M){return X$t(r,M.x,-1/0,1/0)}:function(M){return r.pathArc(f.r2p(M.x)+o)},b=GJe(u);if(r.radialTickLayout!==b&&(i["radial-axis"].selectAll(".xtick").remove(),r.radialTickLayout=b),h){f.setScale();var p=0,k=d?(f.tickvals||[]).filter(function(M){return M>=0}).map(function(M){return vp.tickText(f,M,!0,!1)}):vp.calcTicks(f),E=d?k:vp.clipEnds(f,k),S=vp.getTickSigns(f)[2];d&&((f.ticks==="top"&&f.side==="bottom"||f.ticks==="bottom"&&f.side==="top")&&(S=-S),f.ticks==="top"&&f.side==="top"&&(p=-f.ticklen),f.ticks==="bottom"&&f.side==="bottom"&&(p=f.ticklen)),vp.drawTicks(n,f,{vals:k,layer:i["radial-axis"],path:vp.makeTickPath(f,0,S),transFn:v,crisp:!1}),vp.drawGrid(n,f,{vals:E,layer:i["radial-grid"],path:_,transFn:Xc.noop,crisp:!1}),vp.drawLabels(n,f,{vals:k,layer:i["radial-axis"],transFn:v,labelFns:vp.makeLabelFns(f,p)})}var L=r.radialAxisAngle=r.vangles?mw(HJe(Px(u.angle),r.vangles)):u.angle,x=xd(s,l),C=x+iy(-L);fC(i["radial-axis"],h&&(u.showticklabels||u.ticks),{transform:C}),fC(i["radial-grid"],h&&u.showgrid,{transform:d?"":x}),fC(i["radial-line"].select("line"),h&&u.showline,{x1:d?-a:o,y1:0,x2:a,y2:0,transform:C}).attr("stroke-width",u.linewidth).call(W$.stroke,u.linecolor)};Nd.updateRadialAxisTitle=function(e,t,r){if(!this.isSmith){var n=this,i=n.gd,a=n.radius,o=n.cx,s=n.cy,l=n.getRadial(t),u=n.id+"title",c=0;if(l.title){var f=cC.bBox(n.layers["radial-axis"].node()).height,h=l.title.font.size,d=l.side;c=d==="top"?h:d==="counterclockwise"?-(f+h*.4):f+h*.8}var v=r!==void 0?r:n.radialAxisAngle,_=Px(v),b=Math.cos(_),p=Math.sin(_),k=o+a/2*b+c*p,E=s-a/2*p+c*b;n.layers["radial-axis-title"]=V$t.draw(i,u,{propContainer:l,propName:n.id+".radialaxis.title.text",placeholder:Z$t(i,"Click to enter radial axis title"),attributes:{x:k,y:E,"text-anchor":"middle"},transform:{rotate:-v}})}};Nd.updateAngularAxis=function(e,t){var r=this,n=r.gd,i=r.layers,a=r.radius,o=r.innerRadius,s=r.cx,l=r.cy,u=r.getAngular(t),c=r.angularAxis,f=r.isSmith;f||(r.fillViewInitialKey("angularaxis.rotation",u.rotation),c.setGeometry(),c.setScale());var h=f?function(g){var P=d9(r,h9([0,g.x]));return Math.atan2(P[0]-s,P[1]-l)-Math.PI/2}:function(g){return c.t2g(g.x)};c.type==="linear"&&c.thetaunit==="radians"&&(c.tick0=mw(c.tick0),c.dtick=mw(c.dtick));var d=function(g){return xd(s+a*Math.cos(g),l-a*Math.sin(g))},v=f?function(g){var P=d9(r,h9([0,g.x]));return xd(P[0],P[1])}:function(g){return d(h(g))},_=f?function(g){var P=d9(r,h9([0,g.x])),T=Math.atan2(P[0]-s,P[1]-l)-Math.PI/2;return xd(P[0],P[1])+iy(-mw(T))}:function(g){var P=h(g);return d(P)+iy(-mw(P))},b=f?function(g){return W$t(r,g.x,0,1/0)}:function(g){var P=h(g),T=Math.cos(P),z=Math.sin(P);return"M"+[s+o*T,l-o*z]+"L"+[s+a*T,l-a*z]},p=vp.makeLabelFns(c,0),k=p.labelStandoff,E={};E.xFn=function(g){var P=h(g);return Math.cos(P)*k},E.yFn=function(g){var P=h(g),T=Math.sin(P)>0?.2:1;return-Math.sin(P)*(k+g.fontSize*T)+Math.abs(Math.cos(P))*(g.fontSize*j$t)},E.anchorFn=function(g){var P=h(g),T=Math.cos(P);return Math.abs(T)<.1?"middle":T>0?"start":"end"},E.heightFn=function(g,P,T){var z=h(g);return-.5*(1+Math.sin(z))*T};var S=GJe(u);r.angularTickLayout!==S&&(i["angular-axis"].selectAll("."+c._id+"tick").remove(),r.angularTickLayout=S);var L=f?[1/0].concat(c.tickvals||[]).map(function(g){return vp.tickText(c,g,!0,!1)}):vp.calcTicks(c);f&&(L[0].text="\u221E",L[0].fontSize*=1.75);var x;if(t.gridshape==="linear"?(x=L.map(h),Xc.angleDelta(x[0],x[1])<0&&(x=x.slice().reverse())):x=null,r.vangles=x,c.type==="category"&&(L=L.filter(function(g){return Xc.isAngleInsideSector(h(g),r.sectorInRad)})),c.visible){var C=c.ticks==="inside"?-1:1,M=(c.linewidth||1)/2;vp.drawTicks(n,c,{vals:L,layer:i["angular-axis"],path:"M"+C*M+",0h"+C*c.ticklen,transFn:_,crisp:!1}),vp.drawGrid(n,c,{vals:L,layer:i["angular-grid"],path:b,transFn:Xc.noop,crisp:!1}),vp.drawLabels(n,c,{vals:L,layer:i["angular-axis"],repositionOnUpdate:!0,transFn:v,labelFns:E})}fC(i["angular-line"].select("path"),u.showline,{d:r.pathSubplot(),transform:xd(s,l)}).attr("stroke-width",u.linewidth).call(W$.stroke,u.linecolor)};Nd.updateFx=function(e,t){if(!this.gd._context.staticPlot){var r=!this.isSmith;r&&(this.updateAngularDrag(e),this.updateRadialDrag(e,t,0),this.updateRadialDrag(e,t,1)),this.updateHoverAndMainDrag(e)}};Nd.updateHoverAndMainDrag=function(e){var t=this,r=t.isSmith,n=t.gd,i=t.layers,a=e._zoomlayer,o=Lx.MINZOOM,s=Lx.OFFEDGE,l=t.radius,u=t.innerRadius,c=t.cx,f=t.cy,h=t.cxx,d=t.cyy,v=t.sectorInRad,_=t.vangles,b=t.radialAxis,p=_1.clampTiny,k=_1.findXYatLength,E=_1.findEnclosingVertexAngles,S=Lx.cornerHalfWidth,L=Lx.cornerLen/2,x,C,M=y1.makeDragger(i,"path","maindrag",e.dragmode===!1?"none":"crosshair");gw.select(M).attr("d",t.pathSubplot()).attr("transform",xd(c,f)),M.onmousemove=function(ce){OJe.hover(n,ce,t.id),n._fullLayout._lasthover=M,n._fullLayout._hoversubplot=t.id},M.onmouseout=function(ce){n._dragging||v9.unhover(n,ce)};var g={element:M,gd:n,subplot:t.id,plotinfo:{id:t.id,xaxis:t.xaxis,yaxis:t.yaxis},xaxes:[t.xaxis],yaxes:[t.yaxis]},P,T,z,O,V,G,Z,j,N;function H(ce,Ze){return Math.sqrt(ce*ce+Ze*Ze)}function te(ce,Ze){return H(ce-h,Ze-d)}function oe(ce,Ze){return Math.atan2(d-Ze,ce-h)}function _e(ce,Ze){return[ce*Math.cos(Ze),ce*Math.sin(-Ze)]}function Ee(ce,Ze){if(ce===0)return t.pathSector(2*S);var ut=L/ce,pt=Ze-ut,Zt=Ze+ut,st=Math.max(0,Math.min(ce,l)),lt=st-S,Gt=st+S;return"M"+_e(lt,pt)+"A"+[lt,lt]+" 0,0,0 "+_e(lt,Zt)+"L"+_e(Gt,Zt)+"A"+[Gt,Gt]+" 0,0,1 "+_e(Gt,pt)+"Z"}function Ce(ce,Ze,ut){if(ce===0)return t.pathSector(2*S);var pt=_e(ce,Ze),Zt=_e(ce,ut),st=p((pt[0]+Zt[0])/2),lt=p((pt[1]+Zt[1])/2),Gt,Nt;if(st&&lt){var Jt=lt/st,sr=-1/Jt,wr=k(S,Jt,st,lt);Gt=k(L,sr,wr[0][0],wr[0][1]),Nt=k(L,sr,wr[1][0],wr[1][1])}else{var cr,$e;lt?(cr=L,$e=S):(cr=S,$e=L),Gt=[[st-cr,lt-$e],[st+cr,lt-$e]],Nt=[[st-cr,lt+$e],[st+cr,lt+$e]]}return"M"+Gt.join("L")+"L"+Nt.reverse().join("L")+"Z"}function me(){z=null,O=null,V=t.pathSubplot(),G=!1;var ce=n._fullLayout[t.id];Z=O$t(ce.bgcolor).getLuminance(),j=y1.makeZoombox(a,Z,c,f,V),j.attr("fill-rule","evenodd"),N=y1.makeCorners(a,c,f),X$(n)}function ie(ce,Ze){return Ze=Math.max(Math.min(Ze,l),u),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",j.attr("d",ce),N.attr("d",Ze),y1.transitionZoombox(j,N,G,Z),G=!0;var ut={};ge(ut),n.emit("plotly_relayouting",ut)}function Le(ce,Ze){ce=ce*x,Ze=Ze*C;var ut=P+ce,pt=T+Ze,Zt=te(P,T),st=Math.min(te(ut,pt),l),lt=oe(P,T),Gt,Nt;ie(Zt,st)&&(Gt=V+t.pathSector(O),z&&(Gt+=t.pathSector(z)),Nt=Ee(z,lt)+Ee(O,lt)),Se(Gt,Nt)}function Ae(ce,Ze,ut,pt){var Zt=_1.findIntersectionXY(ut,pt,ut,[ce-h,d-Ze]);return H(Zt[0],Zt[1])}function Fe(ce,Ze){var ut=P+ce,pt=T+Ze,Zt=oe(P,T),st=oe(ut,pt),lt=E(Zt,_),Gt=E(st,_),Nt=Ae(P,T,lt[0],lt[1]),Jt=Math.min(Ae(ut,pt,Gt[0],Gt[1]),l),sr,wr;ie(Nt,Jt)&&(sr=V+t.pathSector(O),z&&(sr+=t.pathSector(z)),wr=[Ce(z,lt[0],lt[1]),Ce(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),yw.call("_guiRelayout",n,ce)}}function ge(ce){var Ze=b._rl,ut=(Ze[1]-Ze[0])/(1-u/l)/l,pt=[Ze[0]+(z-u)*ut,Ze[0]+(O-u)*ut];ce[t.id+".radialaxis.range"]=pt}function Re(ce,Ze){var ut=n._fullLayout.clickmode;if(y1.removeZoombox(n),ce===2){var pt={};for(var Zt in t.viewInitial)pt[t.id+"."+Zt]=t.viewInitial[Zt];n.emit("plotly_doubleclick",null),yw.call("_guiRelayout",n,pt)}ut.indexOf("select")>-1&&ce===1&&H$t(Ze,n,[t.xaxis],[t.yaxis],t.id,g),ut.indexOf("event")>-1&&OJe.click(n,Ze,t.id)}g.prepFn=function(ce,Ze,ut){var pt=n._fullLayout.dragmode,Zt=M.getBoundingClientRect();n._fullLayout._calcInverseTransform(n);var st=n._fullLayout._invTransform;x=n._fullLayout._invScaleX,C=n._fullLayout._invScaleY;var lt=Xc.apply3DTransform(st)(Ze-Zt.left,ut-Zt.top);if(P=lt[0],T=lt[1],_){var Gt=_1.findPolygonOffset(l,v[0],v[1],_);P+=h+Gt[0],T+=d+Gt[1]}switch(pt){case"zoom":g.clickFn=Re,r||(_?g.moveFn=Fe:g.moveFn=Le,g.doneFn=Pe,me(ce,Ze,ut));break;case"select":case"lasso":G$t(ce,Ze,ut,g,pt);break}},v9.init(g)};Nd.updateRadialDrag=function(e,t,r){var n=this,i=n.gd,a=n.layers,o=n.radius,s=n.innerRadius,l=n.cx,u=n.cy,c=n.radialAxis,f=Lx.radialDragBoxSize,h=f/2;if(!c.visible)return;var d=Px(n.radialAxisAngle),v=c._rl,_=v[0],b=v[1],p=v[r],k=.75*(v[1]-v[0])/(1-n.getHole(t))/o,E,S,L;r?(E=l+(o+h)*Math.cos(d),S=u-(o+h)*Math.sin(d),L="radialdrag"):(E=l+(s-h)*Math.cos(d),S=u-(s-h)*Math.sin(d),L="radialdrag-inner");var x=y1.makeRectDragger(a,L,"crosshair",-h,-h,f,f),C={element:x,gd:i};e.dragmode===!1&&(C.dragmode=!1),fC(gw.select(x),c.visible&&s<o,{transform:xd(E,S)});var M,g,P;function T(Z,j){if(M)M(Z,j);else{var N=[Z,-j],H=[Math.cos(d),Math.sin(d)],te=Math.abs(Xc.dot(N,H)/Math.sqrt(Xc.dot(N,N)));isNaN(te)||(M=te<.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?yw.call("_guiRelayout",i,n.id+".radialaxis.angle",g):P!==null&&yw.call("_guiRelayout",i,n.id+".radialaxis.range["+r+"]",P)}function V(Z,j){if(r!==0){var N=E+Z,H=S+j;g=Math.atan2(u-H,N-l),n.vangles&&(g=HJe(g,n.vangles)),g=mw(g);var te=xd(l,u)+iy(-g);a["radial-axis"].attr("transform",te),a["radial-line"].select("line").attr("transform",te);var oe=n.gd._fullLayout,_e=oe[n.id];n.updateRadialAxisTitle(oe,_e,g)}}function G(Z,j){var N=Xc.dot([Z,-j],[Math.cos(d),Math.sin(d)]);if(P=p-k*N,k>0!=(r?P>_:P<b)){P=null;return}var H=i._fullLayout,te=H[n.id];c.range[r]=P,c._rl[r]=P,n.updateRadialAxis(H,te),n.xaxis.setRange(),n.xaxis.setScale(),n.yaxis.setRange(),n.yaxis.setScale();var oe=!1;for(var _e in n.traceHash){var Ee=n.traceHash[_e],Ce=Xc.filterVisible(Ee),me=Ee[0][0].trace._module;me.plot(i,n,Ce,te),yw.traceIs(_e,"gl")&&Ce.length&&(oe=!0)}oe&&(BJe(i),NJe(i))}C.prepFn=function(){M=null,g=null,P=null,C.moveFn=T,C.doneFn=O,X$(i)},C.clampFn=function(Z,j){return Math.sqrt(Z*Z+j*j)<Lx.MINDRAG&&(Z=0,j=0),[Z,j]},v9.init(C)};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:gw.select(f).attr("d",t.pathAnnulus(i,i+c)).attr("transform",xd(o,s)).call(qJe,"move");function d(P,T){return Math.atan2(u+c-T,P-l-c)}var v=n.frontplot.select(".scatterlayer").selectAll(".trace"),_=v.selectAll(".point"),b=v.selectAll(".textpoint"),p,k,E,S,L,x;function C(P,T){var z=t.gd._fullLayout,O=z[t.id],V=p+P*e._invScaleX,G=k+T*e._invScaleY,Z=d(V,G),j=mw(Z-x);if(S=E+j,n.frontplot.attr("transform",xd(t.xOffset2,t.yOffset2)+iy([-j,l,u])),t.vangles){L=t.radialAxisAngle+j;var N=xd(o,s)+iy(-j),H=xd(o,s)+iy(-L);n.bg.attr("transform",N),n["radial-grid"].attr("transform",N),n["radial-axis"].attr("transform",H),n["radial-line"].select("line").attr("transform",H),t.updateRadialAxisTitle(z,O,L)}else t.clipPaths.forTraces.select("path").attr("transform",xd(l,u)+iy(j));_.each(function(){var ie=gw.select(this),Se=cC.getTranslate(ie);ie.attr("transform",xd(Se.x,Se.y)+iy([j]))}),b.each(function(){var ie=gw.select(this),Se=ie.select("text"),Le=cC.getTranslate(ie);ie.attr("transform",iy([j,Se.attr("x"),Se.attr("y")])+xd(Le.x,Le.y))}),a.rotation=Xc.modHalf(S,360),t.updateAngularAxis(z,O),t._hasClipOnAxisFalse&&!Xc.isFullCircle(t.sectorInRad)&&v.call(cC.hideOutsideRangePoints,t);var te=!1;for(var oe in t.traceHash)if(yw.traceIs(oe,"gl")){var _e=t.traceHash[oe],Ee=Xc.filterVisible(_e),Ce=_e[0][0].trace._module;Ce.plot(r,t,Ee,O),Ee.length&&(te=!0)}te&&(BJe(r),NJe(r));var me={};M(me),r.emit("plotly_relayouting",me)}function M(P){P[t.id+".angularaxis.rotation"]=S,t.vangles&&(P[t.id+".radialaxis.angle"]=L)}function g(){b.select("text").attr("transform",null);var P={};M(P),yw.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,k=z-V.top,r._fullLayout._calcInverseTransform(r);var G=Xc.apply3DTransform(e._invTransform)(p,k);p=G[0],k=G[1],x=d(p,k),h.moveFn=C,h.doneFn=g,X$(r)},t.vangles&&!Xc.isFullCircle(t.sectorInRad)&&(h.prepFn=Xc.noop,qJe(gw.select(f),null)),v9.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 GJe(e){var t=e.ticks+String(e.ticklen)+String(e.showticklabels);return"side"in e&&(t+=e.side),t}function Y$t(e){var t=e[0],r=e[1],n=r-t,i=UJe(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 HJe(e,t){var r=function(i){return Xc.angleDist(e,i)},n=Xc.findIndexOfMin(t,r);return t[n]}function fC(e,t,r){return t?(e.attr("display",null),e.attr(r)):e&&e.attr("display","none"),e}});var Y$=ye((Fwr,JJe)=>{"use strict";var K$t=Lh(),os=Rd(),J$t=Cc().attributes,c0=Dr().extendFlat,WJe=mc().overrideAll,XJe=WJe({color:os.color,showline:c0({},os.showline,{dflt:!0}),linecolor:os.linecolor,linewidth:os.linewidth,showgrid:c0({},os.showgrid,{dflt:!0}),gridcolor:os.gridcolor,gridwidth:os.gridwidth,griddash:os.griddash},"plot","from-root"),ZJe=WJe({tickmode:os.minor.tickmode,nticks:os.nticks,tick0:os.tick0,dtick:os.dtick,tickvals:os.tickvals,ticktext:os.ticktext,ticks:os.ticks,ticklen:os.ticklen,tickwidth:os.tickwidth,tickcolor:os.tickcolor,ticklabelstep:os.ticklabelstep,showticklabels:os.showticklabels,labelalias:os.labelalias,minorloglabels:os.minorloglabels,showtickprefix:os.showtickprefix,tickprefix:os.tickprefix,showticksuffix:os.showticksuffix,ticksuffix:os.ticksuffix,showexponent:os.showexponent,exponentformat:os.exponentformat,minexponent:os.minexponent,separatethousands:os.separatethousands,tickfont:os.tickfont,tickangle:os.tickangle,tickformat:os.tickformat,tickformatstops:os.tickformatstops,layer:os.layer},"plot","from-root"),YJe={visible:c0({},os.visible,{dflt:!0}),type:c0({},os.type,{values:["-","linear","log","date","category"]}),autotypenumbers:os.autotypenumbers,autorangeoptions:{minallowed:os.autorangeoptions.minallowed,maxallowed:os.autorangeoptions.maxallowed,clipmin:os.autorangeoptions.clipmin,clipmax:os.autorangeoptions.clipmax,include:os.autorangeoptions.include,editType:"plot"},autorange:c0({},os.autorange,{editType:"plot"}),rangemode:{valType:"enumerated",values:["tozero","nonnegative","normal"],dflt:"tozero",editType:"calc"},minallowed:c0({},os.minallowed,{editType:"plot"}),maxallowed:c0({},os.maxallowed,{editType:"plot"}),range:c0({},os.range,{items:[{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}}],editType:"plot"}),categoryorder:os.categoryorder,categoryarray:os.categoryarray,angle:{valType:"angle",editType:"plot"},autotickangles:os.autotickangles,side:{valType:"enumerated",values:["clockwise","counterclockwise"],dflt:"clockwise",editType:"plot"},title:{text:c0({},os.title.text,{editType:"plot",dflt:""}),font:c0({},os.title.font,{editType:"plot"}),editType:"plot"},hoverformat:os.hoverformat,uirevision:{valType:"any",editType:"none"},editType:"calc"};c0(YJe,XJe,ZJe);var KJe={visible:c0({},os.visible,{dflt:!0}),type:{valType:"enumerated",values:["-","linear","category"],dflt:"-",editType:"calc",_noTemplating:!0},autotypenumbers:os.autotypenumbers,categoryorder:os.categoryorder,categoryarray:os.categoryarray,thetaunit:{valType:"enumerated",values:["radians","degrees"],dflt:"degrees",editType:"calc"},period:{valType:"number",editType:"calc",min:0},direction:{valType:"enumerated",values:["counterclockwise","clockwise"],dflt:"counterclockwise",editType:"calc"},rotation:{valType:"angle",editType:"calc"},hoverformat:os.hoverformat,uirevision:{valType:"any",editType:"none"},editType:"calc"};c0(KJe,XJe,ZJe);JJe.exports={domain:J$t({name:"polar",editType:"plot"}),sector:{valType:"info_array",items:[{valType:"number",editType:"plot"},{valType:"number",editType:"plot"}],dflt:[0,360],editType:"plot"},hole:{valType:"number",min:0,max:1,dflt:0,editType:"plot"},bgcolor:{valType:"color",editType:"plot",dflt:K$t.background},radialaxis:YJe,angularaxis:KJe,gridshape:{valType:"enumerated",values:["circular","linear"],dflt:"circular",editType:"plot"},uirevision:{valType:"any",editType:"none"},editType:"calc"}});var t$e=ye((zwr,e$e)=>{"use strict";var g9=Dr(),$$t=ka(),Q$t=vl(),eQt=k_(),tQt=Id().getSubplotData,rQt=bb(),iQt=M3(),nQt=e_(),aQt=t_(),oQt=oI(),sQt=t4(),lQt=_B(),uQt=R3(),QJe=Y$(),cQt=V$(),m9=u9(),$Je=m9.axisNames;function fQt(e,t,r,n){var i=r("bgcolor");n.bgColor=$$t.combine(i,n.paper_bgcolor);var a=r("sector");r("hole");var o=tQt(n.fullData,m9.name,n.id),s=n.layoutOut,l;function u(j,N){return r(l+"."+j,N)}for(var c=0;c<$Je.length;c++){l=$Je[c],g9.isPlainObject(e[l])||(e[l]={});var f=e[l],h=Q$t.newContainer(t,l);h._id=h._name=l,h._attr=n.id+"."+l,h._traceIndices=o.map(function(j){return j.index});var d=m9.axisName2dataArray[l],v=hQt(f,h,u,o,d,n);oQt(f,h,u,{axData:o,dataAttr:d});var _=u("visible");switch(cQt(h,t,s),u("uirevision",t.uirevision),h._m=1,l){case"radialaxis":u("minallowed"),u("maxallowed");var b=u("range"),p=h.getAutorangeDflt(b),k=u("autorange",p),E;b&&(b[0]===null&&b[1]===null||(b[0]===null||b[1]===null)&&(k==="reversed"||k===!0)||b[0]!==null&&(k==="min"||k==="max reversed")||b[1]!==null&&(k==="max"||k==="min reversed"))&&(b=void 0,delete h.range,h.autorange=!0,E=!0),E||(p=h.getAutorangeDflt(b),k=u("autorange",p)),f.autorange=k,k&&(lQt(u,k,b),(v==="linear"||v==="-")&&u("rangemode"),h.isReversed()&&(h._m=-1)),h.cleanRange("range",{dfltRange:[0,1]});break;case"angularaxis":if(v==="date"){g9.log("Polar plots do not support date angular axes yet.");for(var S=0;S<o.length;S++)o[S].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(aQt(f,h,u,h.type,{tickSuffixDflt:h.thetaunit==="degrees"?"\xB0":void 0}),_){var x,C,M,g,P,T,z,O,V,G,Z=n.font||{};x=u("color"),C=x===f.color?x: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,rQt(f,h,u,h.type),nQt(f,h,u,h.type,{font:{weight:P,style:T,variant:z,textcase:O,lineposition:V,shadow:G,color:C,size:M,family:g},noAutotickangles:l==="angularaxis",noTicklabelshift:!0,noTicklabelstandoff:!0}),iQt(f,h,u,{outerTicks:!0}),sQt(f,h,u,{dfltColor:x,bgColor:n.bgColor,blend:60,showLine:!0,showGrid:!0,noZeroLine:!0,attributes:QJe[l]}),u("layer"),l==="radialaxis"&&(u("side"),u("angle",a[0]),u("title.text"),g9.coerceFont(u,"title.font",{weight:P,style:T,variant:z,textcase:O,lineposition:V,shadow:G,color:C,size:g9.bigFont(M),family:g}))}v!=="category"&&u("hoverformat"),h._input=f}t.angularaxis.type==="category"&&r("gridshape")}function hQt(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=uQt(l[i],"gregorian",{noMultiCategory:!0,autotypenumbers:o})),t.type==="-"?t.type="linear":e.type=t.type}return t.type}e$e.exports=function(t,r,n){eQt(t,r,n,{type:m9.name,attributes:QJe,handleDefaults:fQt,font:r.font,autotypenumbersDflt:r.autotypenumbers,paper_bgcolor:r.paper_bgcolor,fullData:n,layoutOut:r})}});var y9=ye((Owr,o$e)=>{"use strict";var dQt=Id().getSubplotCalcData,vQt=Dr().counterRegex,pQt=Z$(),i$e=u9(),n$e=i$e.attr,_w=i$e.name,r$e=vQt(_w),a$e={};a$e[n$e]={valType:"subplotid",dflt:_w,editType:"calc"};function gQt(e){for(var t=e._fullLayout,r=e.calcdata,n=t._subplots[_w],i=0;i<n.length;i++){var a=n[i],o=dQt(r,_w,a),s=t[a]._subplot;s||(s=pQt(e,a),t[a]._subplot=s),s.plot(o,t,e._promises)}}function mQt(e,t,r,n){for(var i=n._subplots[_w]||[],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)}}o$e.exports={attr:n$e,name:_w,idRoot:_w,idRegex:r$e,attrRegex:r$e,attributes:a$e,layoutAttributes:Y$(),supplyLayoutDefaults:t$e(),plot:gQt,clean:mQt,toSVG:ph().toSVG}});var hC=ye((qwr,l$e)=>{"use strict";var{hovertemplateAttrs:yQt,texttemplateAttrs:_Qt,templatefallbackAttrs:s$e}=Ll(),_9=Ao().extendFlat,xQt=Cg(),f0=pf(),bQt=Gl(),Z5=f0.line;l$e.exports={mode:f0.mode,r:{valType:"data_array",editType:"calc+clearAxisTypes"},theta:{valType:"data_array",editType:"calc+clearAxisTypes"},r0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes"},dr:{valType:"number",dflt:1,editType:"calc"},theta0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes"},dtheta:{valType:"number",editType:"calc"},thetaunit:{valType:"enumerated",values:["radians","degrees","gradians"],dflt:"degrees",editType:"calc+clearAxisTypes"},text:f0.text,texttemplate:_Qt({editType:"plot"},{keys:["r","theta","text"]}),texttemplatefallback:s$e({editType:"plot"}),hovertext:f0.hovertext,line:{color:Z5.color,width:Z5.width,dash:Z5.dash,backoff:Z5.backoff,shape:_9({},Z5.shape,{values:["linear","spline"]}),smoothing:Z5.smoothing,editType:"calc"},connectgaps:f0.connectgaps,marker:f0.marker,cliponaxis:_9({},f0.cliponaxis,{dflt:!1}),textposition:f0.textposition,textfont:f0.textfont,fill:_9({},f0.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:xQt(),hoverinfo:_9({},bQt.hoverinfo,{flags:["r","theta","text","name"]}),hoveron:f0.hoveron,hovertemplate:yQt(),hovertemplatefallback:s$e(),selected:f0.selected,unselected:f0.unselected}});var b9=ye((Bwr,f$e)=>{"use strict";var x9=Dr(),Y5=Ru(),wQt=$p(),TQt=R0(),u$e=tT(),AQt=D0(),SQt=Rg(),MQt=Sm().PTS_LINESONLY,EQt=hC();function kQt(e,t,r,n){function i(s,l){return x9.coerce(e,t,EQt,s,l)}var a=c$e(e,t,n,i);if(!a){t.visible=!1;return}i("thetaunit"),i("mode",a<MQt?"lines+markers":"lines"),i("text"),i("hovertext"),t.hoveron!=="fills"&&(i("hovertemplate"),i("hovertemplatefallback")),Y5.hasMarkers(t)&&wQt(e,t,r,n,i,{gradient:!0}),Y5.hasLines(t)&&(TQt(e,t,r,n,i,{backoff:!0}),u$e(e,t,i),i("connectgaps")),Y5.hasText(t)&&(i("texttemplate"),i("texttemplatefallback"),AQt(e,t,n,i));var o=[];(Y5.hasMarkers(t)||Y5.hasText(t))&&(i("cliponaxis"),i("marker.maxdisplayed"),o.push("points")),i("fill"),t.fill!=="none"&&(SQt(e,t,r,i),Y5.hasLines(t)||u$e(e,t,i)),(t.fill==="tonext"||t.fill==="toself")&&o.push("fills"),i("hoveron",o.join("+")||"points"),x9.coerceSelectionMarkerOpacity(t,i)}function c$e(e,t,r,n){var i=n("r"),a=n("theta");x9.isTypedArray(i)&&(t.r=i=Array.from(i)),x9.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}f$e.exports={handleRThetaDefaults:c$e,supplyDefaults:kQt}});var w9=ye((Nwr,d$e)=>{"use strict";var CQt=Dr(),h$e=ho();d$e.exports=function(t,r,n){var i={},a=n[r.subplot]._subplot,o,s;a?(o=a.radialAxis,s=a.angularAxis):(a=n[r.subplot],o=a.radialaxis,s=a.angularaxis);var l=o.c2l(t.r);i.rLabel=h$e.tickText(o,l,!0).text;var u=s.thetaunit==="degrees"?CQt.rad2deg(t.theta):t.theta;return i.thetaLabel=h$e.tickText(s,u,!0).text,i}});var g$e=ye((Uwr,p$e)=>{"use strict";var v$e=Eo(),LQt=fs().BADNUM,PQt=ho(),IQt=F0(),RQt=km(),DQt=z0(),FQt=O0().calcMarkerSize;p$e.exports=function(t,r){for(var n=t._fullLayout,i=r.subplot,a=n[i].radialaxis,o=n[i].angularaxis,s=a.makeCalcdata(r,"r"),l=o.makeCalcdata(r,"theta"),u=r._length,c=new Array(u),f=0;f<u;f++){var h=s[f],d=l[f],v=c[f]={};v$e(h)&&v$e(d)?(v.r=h,v.theta=d):v.r=LQt}var _=FQt(r,u);return r._extremes.x=PQt.findExtremes(a,s,{ppad:_}),IQt(t,r),RQt(c,r),DQt(c,r),c}});var _$e=ye((Vwr,y$e)=>{"use strict";var zQt=sT(),m$e=fs().BADNUM;y$e.exports=function(t,r,n){for(var i=r.layers.frontplot.select("g.scatterlayer"),a=r.xaxis,o=r.yaxis,s={xaxis:a,yaxis:o,plot:r.framework,layerClipId:r._hasClipOnAxisFalse?r.clipIds.forTraces:null},l=r.radialAxis,u=r.angularAxis,c=0;c<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===m$e)d.x=d.y=m$e;else{var _=l.c2g(v),b=u.c2g(d.theta);d.x=_*Math.cos(b),d.y=_*Math.sin(b)}}zQt(t,s,n,i)}});var T9=ye((Gwr,b$e)=>{"use strict";var OQt=fT();function qQt(e,t,r,n){var i=OQt(e,t,r,n);if(!(!i||i[0].index===!1)){var a=i[0];if(a.index===void 0)return i;var o=e.subplot,s=a.cd[a.index],l=a.trace;if(o.isPtInside(s))return a.xLabelVal=void 0,a.yLabelVal=void 0,x$e(s,l,o,a),a.hovertemplate=l.hovertemplate,i}}function x$e(e,t,r,n){var i=r.radialAxis,a=r.angularAxis;i._hovertitle="r",a._hovertitle="\u03B8";var o={};o[t.subplot]={_subplot:r};var s=t._module.formatLabels(e,t,o);n.rLabel=s.rLabel,n.thetaLabel=s.thetaLabel;var l=e.hi||t.hoverinfo,u=[];function c(h,d){u.push(h._hovertitle+": "+d)}if(!t.hovertemplate){var f=l.split("+");f.indexOf("all")!==-1&&(f=["r","theta","text"]),f.indexOf("r")!==-1&&c(i,n.rLabel),f.indexOf("theta")!==-1&&c(a,n.thetaLabel),f.indexOf("text")!==-1&&n.text&&(u.push(n.text),delete n.text),n.extraText=u.join("<br>")}}b$e.exports={hoverPoints:qQt,makeHoverPointText:x$e}});var T$e=ye((Hwr,w$e)=>{"use strict";w$e.exports={moduleType:"trace",name:"scatterpolar",basePlotModule:y9(),categories:["polar","symbols","showLegend","scatter-like"],attributes:hC(),supplyDefaults:b9().supplyDefaults,colorbar:$d(),formatLabels:w9(),calc:g$e(),plot:_$e(),style:op().style,styleOnSelect:op().styleOnSelect,hoverPoints:T9().hoverPoints,selectPoints:hT(),meta:{}}});var S$e=ye((jwr,A$e)=>{"use strict";A$e.exports=T$e()});var K$=ye((Zwr,E$e)=>{"use strict";var M$e=hC(),{cliponaxis:Wwr,hoveron:Xwr}=M$e,BQt=uee(M$e,["cliponaxis","hoveron"]),{connectgaps:NQt,line:{color:UQt,dash:VQt,width:GQt},fill:HQt,fillcolor:jQt,marker:WQt,textfont:XQt,textposition:ZQt}=lk();E$e.exports=q1(mg({},BQt),{connectgaps:NQt,fill:HQt,fillcolor:jQt,line:{color:UQt,dash:VQt,editType:"calc",width:GQt},marker:WQt,textfont:XQt,textposition:ZQt})});var L$e=ye((Kwr,C$e)=>{"use strict";var k$e=Dr(),J$=Ru(),YQt=b9().handleRThetaDefaults,KQt=$p(),JQt=R0(),$Qt=D0(),QQt=Rg(),eer=Sm().PTS_LINESONLY,ter=K$();C$e.exports=function(t,r,n,i){function a(s,l){return k$e.coerce(t,r,ter,s,l)}var o=YQt(t,r,i,a);if(!o){r.visible=!1;return}a("thetaunit"),a("mode",o<eer?"lines+markers":"lines"),a("text"),a("hovertext"),r.hoveron!=="fills"&&(a("hovertemplate"),a("hovertemplatefallback")),J$.hasMarkers(r)&&KQt(t,r,n,i,a,{noAngleRef:!0,noStandOff:!0}),J$.hasLines(r)&&(JQt(t,r,n,i,a),a("connectgaps")),J$.hasText(r)&&(a("texttemplate"),a("texttemplatefallback"),$Qt(t,r,i,a,{noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0})),a("fill"),r.fill!=="none"&&QQt(t,r,n,a),k$e.coerceSelectionMarkerOpacity(r,a)}});var I$e=ye((Jwr,P$e)=>{"use strict";var rer=w9();P$e.exports=function(t,r,n){var i=t.i;return"r"in t||(t.r=r._r[i]),"theta"in t||(t.theta=r._theta[i]),rer(t,r,n)}});var D$e=ye(($wr,R$e)=>{"use strict";var ier=F0(),ner=O0().calcMarkerSize,aer=J2(),oer=ho(),ser=ox().TOO_MANY_POINTS;R$e.exports=function(t,r){var n=t._fullLayout,i=r.subplot,a=n[i].radialaxis,o=n[i].angularaxis,s=r._r=a.makeCalcdata(r,"r"),l=r._theta=o.makeCalcdata(r,"theta"),u=r._length,c={};u<s.length&&(s=s.slice(0,u)),u<l.length&&(l=l.slice(0,u)),c.r=s,c.theta=l,ier(t,r);var f=c.opts=aer.style(t,r),h;return u<ser?h=ner(r,u):f.marker&&(h=2*(f.marker.sizeAvg||Math.max(f.marker.size,3))),r._extremes.x=oer.findExtremes(a,s,{ppad:h}),[{x:!1,y:!1,t:c,trace:r}]}});var z$e=ye((Qwr,F$e)=>{"use strict";var ler=UF(),uer=T9().makeHoverPointText;function cer(e,t,r,n){var i=e.cd,a=i[0].t,o=a.r,s=a.theta,l=ler.hoverPoints(e,t,r,n);if(!(!l||l[0].index===!1)){var u=l[0];if(u.index===void 0)return l;var c=e.subplot,f=u.cd[u.index],h=u.trace;if(f.r=o[u.index],f.theta=s[u.index],!!c.isPtInside(f))return u.xLabelVal=void 0,u.yLabelVal=void 0,uer(f,h,c,u),l}}F$e.exports={hoverPoints:cer}});var q$e=ye((e3r,O$e)=>{"use strict";O$e.exports={moduleType:"trace",name:"scatterpolargl",basePlotModule:y9(),categories:["gl","regl","polar","symbols","showLegend","scatter-like"],attributes:K$(),supplyDefaults:L$e(),colorbar:$d(),formatLabels:I$e(),calc:D$e(),hoverPoints:z$e().hoverPoints,selectPoints:uY(),meta:{}}});var B$e=ye((t3r,$$)=>{"use strict";var fer=HF(),her=Eo(),der=dK(),ver=oY(),A9=J2(),S9=Dr(),per=ox().TOO_MANY_POINTS,ger={};$$.exports=function(t,r,n){if(n.length){var i=r.radialAxis,a=r.angularAxis,o=ver(t,r);return n.forEach(function(s){if(!(!s||!s[0]||!s[0].trace)){var l=s[0],u=l.trace,c=l.t,f=u._length,h=c.r,d=c.theta,v=c.opts,_,b=h.slice(),p=d.slice();for(_=0;_<h.length;_++)r.isPtInside({r:h[_],theta:d[_]})||(b[_]=NaN,p[_]=NaN);var k=new Array(f*2),E=Array(f),S=Array(f);for(_=0;_<f;_++){var L=b[_],x,C;if(her(L)){var M=i.c2g(L),g=a.c2g(p[_],u.thetaunit);x=M*Math.cos(g),C=M*Math.sin(g)}else x=C=NaN;E[_]=k[_*2]=x,S[_]=k[_*2+1]=C}c.tree=fer(k),v.marker&&f>=per&&(v.marker.cluster=c.tree),v.marker&&(v.markerSel.positions=v.markerUnsel.positions=v.marker.positions=k),v.line&&k.length>1&&S9.extendFlat(v.line,A9.linePositions(t,u,k)),v.text&&(S9.extendFlat(v.text,{positions:k},A9.textPosition(t,u,v.text,v.marker)),S9.extendFlat(v.textSel,{positions:k},A9.textPosition(t,u,v.text,v.markerSel)),S9.extendFlat(v.textUnsel,{positions:k},A9.textPosition(t,u,v.text,v.markerUnsel))),v.fill&&!o.fill2d&&(o.fill2d=!0),v.marker&&!o.scatter2d&&(o.scatter2d=!0),v.line&&!o.line2d&&(o.line2d=!0),v.text&&!o.glText&&(o.glText=!0),o.lineOptions.push(v.line),o.fillOptions.push(v.fill),o.markerOptions.push(v.marker),o.markerSelectedOptions.push(v.markerSel),o.markerUnselectedOptions.push(v.markerUnsel),o.textOptions.push(v.text),o.textSelectedOptions.push(v.textSel),o.textUnselectedOptions.push(v.textUnsel),o.selectBatch.push([]),o.unselectBatch.push([]),c.x=E,c.y=S,c.rawx=E,c.rawy=S,c.r=h,c.theta=d,c.positions=k,c._scene=o,c.index=o.count,o.count++}}),der(t,r,n)}};$$.exports.reglPrecompiled=ger});var V$e=ye((r3r,U$e)=>{"use strict";var N$e=q$e();N$e.plot=B$e();U$e.exports=N$e});var H$e=ye((i3r,G$e)=>{"use strict";G$e.exports=V$e()});var Q$=ye((n3r,j$e)=>{"use strict";var{hovertemplateAttrs:mer,templatefallbackAttrs:yer}=Ll(),K5=Ao().extendFlat,Ix=hC(),Rx=Lm();j$e.exports={r:Ix.r,theta:Ix.theta,r0:Ix.r0,dr:Ix.dr,theta0:Ix.theta0,dtheta:Ix.dtheta,thetaunit:Ix.thetaunit,base:K5({},Rx.base,{}),offset:K5({},Rx.offset,{}),width:K5({},Rx.width,{}),text:K5({},Rx.text,{}),hovertext:K5({},Rx.hovertext,{}),marker:_er(),hoverinfo:Ix.hoverinfo,hovertemplate:mer(),hovertemplatefallback:yer(),selected:Rx.selected,unselected:Rx.unselected};function _er(){var e=K5({},Rx.marker);return delete e.cornerradius,e}});var eQ=ye((a3r,W$e)=>{"use strict";W$e.exports={barmode:{valType:"enumerated",values:["stack","overlay"],dflt:"stack",editType:"calc"},bargap:{valType:"number",dflt:.1,min:0,max:1,editType:"calc"}}});var Y$e=ye((o3r,Z$e)=>{"use strict";var X$e=Dr(),xer=b9().handleRThetaDefaults,ber=VI(),wer=Q$();Z$e.exports=function(t,r,n,i){function a(s,l){return X$e.coerce(t,r,wer,s,l)}var o=xer(t,r,i,a);if(!o){r.visible=!1;return}a("thetaunit"),a("base"),a("offset"),a("width"),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),ber(t,r,a,n,i),X$e.coerceSelectionMarkerOpacity(r,a)}});var J$e=ye((s3r,K$e)=>{"use strict";var Ter=Dr(),Aer=eQ();K$e.exports=function(e,t,r){var n={},i;function a(l,u){return Ter.coerce(e[i]||{},t[i],Aer,l,u)}for(var o=0;o<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 tQ=ye((l3r,eQe)=>{"use strict";var $$e=pv().hasColorscale,Q$e=gv(),Ser=Dr().isArrayOrTypedArray,Mer=g4(),Eer=jb().setGroupPositions,ker=z0(),Cer=qa().traceIs,Ler=Dr().extendFlat;function Per(e,t){for(var r=e._fullLayout,n=t.subplot,i=r[n].radialaxis,a=r[n].angularaxis,o=i.makeCalcdata(t,"r"),s=a.makeCalcdata(t,"theta"),l=t._length,u=new Array(l),c=o,f=s,h=0;h<l;h++)u[h]={p:f[h],s:c[h]};function d(v){var _=t[v];_!==void 0&&(t["_"+v]=Ser(_)?a.makeCalcdata(t,v):a.d2c(_,t.thetaunit))}return a.type==="linear"&&(d("width"),d("offset")),$$e(t,"marker")&&Q$e(e,t,{vals:t.marker.color,containerStr:"marker",cLetter:"c"}),$$e(t,"marker.line")&&Q$e(e,t,{vals:t.marker.line.color,containerStr:"marker.line",cLetter:"c"}),Mer(u,t),ker(u,t),u}function Ier(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&&Cer(s,"bar")&&s.subplot===r&&i.push(o)}var l=Ler({},t.radialaxis,{_id:"x"}),u=t.angularaxis;Eer(e,u,l,i,{mode:t.barmode,norm:t.barnorm,gap:t.bargap,groupgap:t.bargroupgap})}eQe.exports={calc:Per,crossTraceCalc:Ier}});var iQe=ye((u3r,rQe)=>{"use strict";var tQe=Oa(),M9=Eo(),J5=Dr(),Rer=So(),rQ=f9();rQe.exports=function(t,r,n){var i=t._context.staticPlot,a=r.xaxis,o=r.yaxis,s=r.radialAxis,l=r.angularAxis,u=Der(r),c=r.layers.frontplot.select("g.barlayer");J5.makeTraceGroups(c,n,"trace bars").each(function(){var f=tQe.select(this),h=J5.ensureSingle(f,"g","points"),d=h.selectAll("g.point").data(J5.identity);d.enter().append("g").style("vector-effect",i?"none":"non-scaling-stroke").style("stroke-miterlimit",2).classed("point",!0),d.exit().remove(),d.each(function(v){var _=tQe.select(this),b=v.rp0=s.c2p(v.s0),p=v.rp1=s.c2p(v.s1),k=v.thetag0=l.c2g(v.p0),E=v.thetag1=l.c2g(v.p1),S;if(!M9(b)||!M9(p)||!M9(k)||!M9(E)||b===p||k===E)S="M0,0Z";else{var L=s.c2g(v.s1),x=(k+E)/2;v.ct=[a.c2p(L*Math.cos(x)),o.c2p(L*Math.sin(x))],S=u(b,p,k,E)}J5.ensureSingle(_,"path").attr("d",S)}),Rer.setClipUrl(f,r._hasClipOnAxisFalse?r.clipIds.forTraces:null,t)})};function Der(e){var t=e.cxx,r=e.cyy;return e.vangles?function(n,i,a,o){var s,l;J5.angleDelta(a,o)>0?(s=a,l=o):(s=o,l=a);var u=rQ.findEnclosingVertexAngles(s,e.vangles)[0],c=rQ.findEnclosingVertexAngles(l,e.vangles)[1],f=[u,(s+l)/2,c];return rQ.pathPolygonAnnulus(n,i,s,l,f,t,r)}:function(n,i,a,o){return J5.pathAnnulus(n,i,a,o,t,r)}}});var aQe=ye((c3r,nQe)=>{"use strict";var Fer=vf(),iQ=Dr(),zer=ET().getTraceColor,Oer=iQ.fillText,qer=T9().makeHoverPointText,Ber=f9().isPtInsidePolygon;nQe.exports=function(t,r,n){var i=t.cd,a=i[0].trace,o=t.subplot,s=o.radialAxis,l=o.angularAxis,u=o.vangles,c=u?Ber:iQ.isPtInsideSector,f=t.maxHoverDistance,h=l._period||2*Math.PI,d=Math.abs(s.g2p(Math.sqrt(r*r+n*n))),v=Math.atan2(n,r);s.range[0]>s.range[1]&&(v+=Math.PI);var _=function(E){return c(d,v,[E.rp0,E.rp1],[E.thetag0,E.thetag1],u)?f+Math.min(1,Math.abs(E.thetag1-E.thetag0)/h)-1+(E.rp1-d)/(E.rp1-E.rp0)-1:1/0};if(Fer.getClosest(i,_,t),t.index!==!1){var b=t.index,p=i[b];t.x0=t.x1=p.ct[0],t.y0=t.y1=p.ct[1];var k=iQ.extendFlat({},p,{r:p.s,theta:p.p});return Oer(p,a,t),qer(k,a,o,t),t.hovertemplate=a.hovertemplate,t.color=zer(a,p),t.xLabelVal=t.yLabelVal=void 0,p.s<0&&(t.idealAlign="left"),[t]}}});var sQe=ye((f3r,oQe)=>{"use strict";oQe.exports={moduleType:"trace",name:"barpolar",basePlotModule:y9(),categories:["polar","bar","showLegend"],attributes:Q$(),layoutAttributes:eQ(),supplyDefaults:Y$e(),supplyLayoutDefaults:J$e(),calc:tQ().calc,crossTraceCalc:tQ().crossTraceCalc,plot:iQe(),colorbar:$d(),formatLabels:w9(),style:N0().style,styleOnSelect:N0().styleOnSelect,hoverPoints:aQe(),selectPoints:kT(),meta:{}}});var uQe=ye((h3r,lQe)=>{"use strict";lQe.exports=sQe()});var nQ=ye((d3r,cQe)=>{"use strict";cQe.exports={attr:"subplot",name:"smith",axisNames:["realaxis","imaginaryaxis"],axisName2dataArray:{imaginaryaxis:"imag",realaxis:"real"}}});var aQ=ye((v3r,vQe)=>{"use strict";var Ner=Lh(),Nf=Rd(),Uer=Cc().attributes,Dx=Dr().extendFlat,fQe=mc().overrideAll,hQe=fQe({color:Nf.color,showline:Dx({},Nf.showline,{dflt:!0}),linecolor:Nf.linecolor,linewidth:Nf.linewidth,showgrid:Dx({},Nf.showgrid,{dflt:!0}),gridcolor:Nf.gridcolor,gridwidth:Nf.gridwidth,griddash:Nf.griddash},"plot","from-root"),dQe=fQe({ticklen:Nf.ticklen,tickwidth:Dx({},Nf.tickwidth,{dflt:2}),tickcolor:Nf.tickcolor,showticklabels:Nf.showticklabels,labelalias:Nf.labelalias,showtickprefix:Nf.showtickprefix,tickprefix:Nf.tickprefix,showticksuffix:Nf.showticksuffix,ticksuffix:Nf.ticksuffix,tickfont:Nf.tickfont,tickformat:Nf.tickformat,hoverformat:Nf.hoverformat,layer:Nf.layer},"plot","from-root"),Ver=Dx({visible:Dx({},Nf.visible,{dflt:!0}),tickvals:{dflt:[.2,.5,1,2,5],valType:"data_array",editType:"plot"},tickangle:Dx({},Nf.tickangle,{dflt:90}),ticks:{valType:"enumerated",values:["top","bottom",""],editType:"ticks"},side:{valType:"enumerated",values:["top","bottom"],dflt:"top",editType:"plot"},editType:"calc"},hQe,dQe),Ger=Dx({visible:Dx({},Nf.visible,{dflt:!0}),tickvals:{valType:"data_array",editType:"plot"},ticks:Nf.ticks,editType:"calc"},hQe,dQe);vQe.exports={domain:Uer({name:"smith",editType:"plot"}),bgcolor:{valType:"color",editType:"plot",dflt:Ner.background},realaxis:Ver,imaginaryaxis:Ger,editType:"calc"}});var mQe=ye((p3r,gQe)=>{"use strict";var $5=Dr(),Her=ka(),jer=vl(),Wer=k_(),Xer=Id().getSubplotData,Zer=t_(),Yer=e_(),Ker=t4(),Jer=ym(),Q5=aQ(),oQ=nQ(),pQe=oQ.axisNames,$er=etr(function(e){return $5.isTypedArray(e)&&(e=Array.from(e)),e.slice().reverse().map(function(t){return-t}).concat([0]).concat(e)},String);function Qer(e,t,r,n){var i=r("bgcolor");n.bgColor=Her.combine(i,n.paper_bgcolor);var a=Xer(n.fullData,oQ.name,n.id),o=n.layoutOut,s;function l(L,x){return r(s+"."+L,x)}for(var u=0;u<pQe.length;u++){s=pQe[u],$5.isPlainObject(e[s])||(e[s]={});var c=e[s],f=jer.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",Jer(f,o),Zer(c,f,l,f.type),h){var d=s==="realaxis";if(d&&l("side"),d)l("tickvals");else{var v=$er(t.realaxis.tickvals||Q5.realaxis.tickvals.dflt);l("tickvals",v)}$5.isTypedArray(f.tickvals)&&(f.tickvals=Array.from(f.tickvals));var _,b,p,k,E=n.font||{};h&&(_=l("color"),b=_===c.color?_:E.color,p=E.size,k=E.family),Yer(c,f,l,f.type,{noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0,noTicklabelstep:!0,noAng:!d,noExp:!0,font:{color:b,size:p,family:k}}),$5.coerce2(e,t,Q5,s+".ticklen"),$5.coerce2(e,t,Q5,s+".tickwidth"),$5.coerce2(e,t,Q5,s+".tickcolor",t.color);var S=l("ticks");S||(delete t[s].ticklen,delete t[s].tickwidth,delete t[s].tickcolor),Ker(c,f,l,{dfltColor:_,bgColor:n.bgColor,blend:60,showLine:!0,showGrid:!0,noZeroLine:!0,attributes:Q5[s]}),l("layer")}l("hoverformat"),delete f.type,f._input=c}}gQe.exports=function(t,r,n){Wer(t,r,n,{noUirevision:!0,type:oQ.name,attributes:Q5,handleDefaults:Qer,font:r.font,paper_bgcolor:r.paper_bgcolor,fullData:n,layoutOut:r})};function etr(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((g3r,wQe)=>{"use strict";var ttr=Id().getSubplotCalcData,rtr=Dr().counterRegex,itr=Z$(),_Qe=nQ(),xQe=_Qe.attr,xw=_Qe.name,yQe=rtr(xw),bQe={};bQe[xQe]={valType:"subplotid",dflt:xw,editType:"calc"};function ntr(e){for(var t=e._fullLayout,r=e.calcdata,n=t._subplots[xw],i=0;i<n.length;i++){var a=n[i],o=ttr(r,xw,a),s=t[a]._subplot;s||(s=itr(e,a,!0),t[a]._subplot=s),s.plot(o,t,e._promises)}}function atr(e,t,r,n){for(var i=n._subplots[xw]||[],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()}}}wQe.exports={attr:xQe,name:xw,idRoot:xw,idRegex:yQe,attrRegex:yQe,attributes:bQe,layoutAttributes:aQ(),supplyLayoutDefaults:mQe(),plot:ntr,clean:atr,toSVG:ph().toSVG}});var sQ=ye((m3r,SQe)=>{"use strict";var{hovertemplateAttrs:otr,texttemplateAttrs:str,templatefallbackAttrs:AQe}=Ll(),E9=Ao().extendFlat,ltr=Cg(),h0=pf(),utr=Gl(),eS=h0.line;SQe.exports={mode:h0.mode,real:{valType:"data_array",editType:"calc+clearAxisTypes"},imag:{valType:"data_array",editType:"calc+clearAxisTypes"},text:h0.text,texttemplate:str({editType:"plot"},{keys:["real","imag","text"]}),texttemplatefallback:AQe({editType:"plot"}),hovertext:h0.hovertext,line:{color:eS.color,width:eS.width,dash:eS.dash,backoff:eS.backoff,shape:E9({},eS.shape,{values:["linear","spline"]}),smoothing:eS.smoothing,editType:"calc"},connectgaps:h0.connectgaps,marker:h0.marker,cliponaxis:E9({},h0.cliponaxis,{dflt:!1}),textposition:h0.textposition,textfont:h0.textfont,fill:E9({},h0.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:ltr(),hoverinfo:E9({},utr.hoverinfo,{flags:["real","imag","text","name"]}),hoveron:h0.hoveron,hovertemplate:otr(),hovertemplatefallback:AQe(),selected:h0.selected,unselected:h0.unselected}});var kQe=ye((y3r,EQe)=>{"use strict";var k9=Dr(),tS=Ru(),ctr=$p(),ftr=R0(),MQe=tT(),htr=D0(),dtr=Rg(),vtr=Sm().PTS_LINESONLY,ptr=sQ();EQe.exports=function(t,r,n,i){function a(l,u){return k9.coerce(t,r,ptr,l,u)}var o=gtr(t,r,i,a);if(!o){r.visible=!1;return}a("mode",o<vtr?"lines+markers":"lines"),a("text"),a("hovertext"),r.hoveron!=="fills"&&(a("hovertemplate"),a("hovertemplatefallback")),tS.hasMarkers(r)&&ctr(t,r,n,i,a,{gradient:!0}),tS.hasLines(r)&&(ftr(t,r,n,i,a,{backoff:!0}),MQe(t,r,a),a("connectgaps")),tS.hasText(r)&&(a("texttemplate"),a("texttemplatefallback"),htr(t,r,i,a));var s=[];(tS.hasMarkers(r)||tS.hasText(r))&&(a("cliponaxis"),a("marker.maxdisplayed"),s.push("points")),a("fill"),r.fill!=="none"&&(dtr(t,r,n,a),tS.hasLines(r)||MQe(t,r,a)),(r.fill==="tonext"||r.fill==="toself")&&s.push("fills"),a("hoveron",s.join("+")||"points"),k9.coerceSelectionMarkerOpacity(r,a)};function gtr(e,t,r,n){var i=n("real"),a=n("imag"),o;return i&&a&&(o=Math.min(i.length,a.length)),k9.isTypedArray(i)&&(t.real=i=Array.from(i)),k9.isTypedArray(a)&&(t.imag=a=Array.from(a)),t._length=o,o}});var PQe=ye((_3r,LQe)=>{"use strict";var CQe=ho();LQe.exports=function(t,r,n){var i={},a=n[r.subplot]._subplot;return i.realLabel=CQe.tickText(a.radialAxis,t.real,!0).text,i.imagLabel=CQe.tickText(a.angularAxis,t.imag,!0).text,i}});var DQe=ye((x3r,RQe)=>{"use strict";var IQe=Eo(),mtr=fs().BADNUM,ytr=F0(),_tr=km(),xtr=z0(),btr=O0().calcMarkerSize;RQe.exports=function(t,r){for(var n=t._fullLayout,i=r.subplot,a=n[i].realaxis,o=n[i].imaginaryaxis,s=a.makeCalcdata(r,"real"),l=o.makeCalcdata(r,"imag"),u=r._length,c=new Array(u),f=0;f<u;f++){var h=s[f],d=l[f],v=c[f]={};IQe(h)&&IQe(d)?(v.real=h,v.imag=d):v.real=mtr}return btr(r,u),ytr(t,r),_tr(c,r),xtr(c,r),c}});var OQe=ye((b3r,zQe)=>{"use strict";var wtr=sT(),FQe=fs().BADNUM,Ttr=j$(),Atr=Ttr.smith;zQe.exports=function(t,r,n){for(var i=r.layers.frontplot.select("g.scatterlayer"),a=r.xaxis,o=r.yaxis,s={xaxis:a,yaxis:o,plot:r.framework,layerClipId:r._hasClipOnAxisFalse?r.clipIds.forTraces:null},l=0;l<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===FQe)f.x=f.y=FQe;else{var d=Atr([h,f.imag]);f.x=d[0],f.y=d[1]}}wtr(t,s,n,i)}});var NQe=ye((w3r,BQe)=>{"use strict";var Str=fT();function Mtr(e,t,r,n){var i=Str(e,t,r,n);if(!(!i||i[0].index===!1)){var a=i[0];if(a.index===void 0)return i;var o=e.subplot,s=a.cd[a.index],l=a.trace;if(o.isPtInside(s))return a.xLabelVal=void 0,a.yLabelVal=void 0,qQe(s,l,o,a),a.hovertemplate=l.hovertemplate,i}}function qQe(e,t,r,n){var i=r.radialAxis,a=r.angularAxis;i._hovertitle="real",a._hovertitle="imag";var o={};o[t.subplot]={_subplot:r};var s=t._module.formatLabels(e,t,o);n.realLabel=s.realLabel,n.imagLabel=s.imagLabel;var l=e.hi||t.hoverinfo,u=[];function c(h,d){u.push(h._hovertitle+": "+d)}if(!t.hovertemplate){var f=l.split("+");f.indexOf("all")!==-1&&(f=["real","imag","text"]),f.indexOf("real")!==-1&&c(i,n.realLabel),f.indexOf("imag")!==-1&&c(a,n.imagLabel),f.indexOf("text")!==-1&&n.text&&(u.push(n.text),delete n.text),n.extraText=u.join("<br>")}}BQe.exports={hoverPoints:Mtr,makeHoverPointText:qQe}});var VQe=ye((T3r,UQe)=>{"use strict";UQe.exports={moduleType:"trace",name:"scattersmith",basePlotModule:TQe(),categories:["smith","symbols","showLegend","scatter-like"],attributes:sQ(),supplyDefaults:kQe(),colorbar:$d(),formatLabels:PQe(),calc:DQe(),plot:OQe(),style:op().style,styleOnSelect:op().styleOnSelect,hoverPoints:NQe().hoverPoints,selectPoints:hT(),meta:{}}});var HQe=ye((A3r,GQe)=>{"use strict";GQe.exports=VQe()});var kv=ye((S3r,WQe)=>{var L9=Oh();function jQe(){this.regionalOptions=[],this.regionalOptions[""]={invalidCalendar:"Calendar {0} not found",invalidDate:"Invalid {0} date",invalidMonth:"Invalid {0} month",invalidYear:"Invalid {0} year",differentCalendars:"Cannot mix {0} and {1} dates"},this.local=this.regionalOptions[""],this.calendars={},this._localCals={}}L9(jQe.prototype,{instance:function(e,t){e=(e||"gregorian").toLowerCase(),t=t||"";var r=this._localCals[e+"-"+t];if(!r&&this.calendars[e]&&(r=new this.calendars[e](t),this._localCals[e+"-"+t]=r),!r)throw(this.local.invalidCalendar||this.regionalOptions[""].invalidCalendar).replace(/\{0\}/,e);return r},newDate:function(e,t,r,n,i){return n=(e!=null&&e.year?e.calendar():typeof n=="string"?this.instance(n,i):n)||this.instance(),n.newDate(e,t,r)},substituteDigits:function(e){return function(t){return(t+"").replace(/[0-9]/g,function(r){return e[r]})}},substituteChineseDigits:function(e,t){return function(r){for(var n="",i=0;r>0;){var a=r%10;n=(a===0?"":e[a]+t[i])+n,i++,r=Math.floor(r/10)}return n.indexOf(e[1]+t[1])===0&&(n=n.substr(1)),n||e[0]}}});function lQ(e,t,r,n){if(this._calendar=e,this._year=t,this._month=r,this._day=n,this._calendar._validateLevel===0&&!this._calendar.isValid(this._year,this._month,this._day))throw(Gs.local.invalidDate||Gs.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name)}function C9(e,t){return e=""+e,"000000".substring(0,t-e.length)+e}L9(lQ.prototype,{newDate:function(e,t,r){return this._calendar.newDate(e==null?this:e,t,r)},year:function(e){return arguments.length===0?this._year:this.set(e,"y")},month:function(e){return arguments.length===0?this._month:this.set(e,"m")},day:function(e){return arguments.length===0?this._day:this.set(e,"d")},date:function(e,t,r){if(!this._calendar.isValid(e,t,r))throw(Gs.local.invalidDate||Gs.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name);return this._year=e,this._month=t,this._day=r,this},leapYear:function(){return this._calendar.leapYear(this)},epoch:function(){return this._calendar.epoch(this)},formatYear:function(){return this._calendar.formatYear(this)},monthOfYear:function(){return this._calendar.monthOfYear(this)},weekOfYear:function(){return this._calendar.weekOfYear(this)},daysInYear:function(){return this._calendar.daysInYear(this)},dayOfYear:function(){return this._calendar.dayOfYear(this)},daysInMonth:function(){return this._calendar.daysInMonth(this)},dayOfWeek:function(){return this._calendar.dayOfWeek(this)},weekDay:function(){return this._calendar.weekDay(this)},extraInfo:function(){return this._calendar.extraInfo(this)},add:function(e,t){return this._calendar.add(this,e,t)},set:function(e,t){return this._calendar.set(this,e,t)},compareTo:function(e){if(this._calendar.name!==e._calendar.name)throw(Gs.local.differentCalendars||Gs.regionalOptions[""].differentCalendars).replace(/\{0\}/,this._calendar.local.name).replace(/\{1\}/,e._calendar.local.name);var t=this._year!==e._year?this._year-e._year:this._month!==e._month?this.monthOfYear()-e.monthOfYear():this._day-e._day;return t===0?0:t<0?-1:1},calendar:function(){return this._calendar},toJD:function(){return this._calendar.toJD(this)},fromJD:function(e){return this._calendar.fromJD(e)},toJSDate:function(){return this._calendar.toJSDate(this)},fromJSDate:function(e){return this._calendar.fromJSDate(e)},toString:function(){return(this.year()<0?"-":"")+C9(Math.abs(this.year()),4)+"-"+C9(this.month(),2)+"-"+C9(this.day(),2)}});function uQ(){this.shortYearCutoff="+10"}L9(uQ.prototype,{_validateLevel:0,newDate:function(e,t,r){return e==null?this.today():(e.year&&(this._validate(e,t,r,Gs.local.invalidDate||Gs.regionalOptions[""].invalidDate),r=e.day(),t=e.month(),e=e.year()),new lQ(this,e,t,r))},today:function(){return this.fromJSDate(new Date)},epoch:function(e){var t=this._validate(e,this.minMonth,this.minDay,Gs.local.invalidYear||Gs.regionalOptions[""].invalidYear);return t.year()<0?this.local.epochs[0]:this.local.epochs[1]},formatYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,Gs.local.invalidYear||Gs.regionalOptions[""].invalidYear);return(t.year()<0?"-":"")+C9(Math.abs(t.year()),4)},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Gs.local.invalidYear||Gs.regionalOptions[""].invalidYear),12},monthOfYear:function(e,t){var r=this._validate(e,t,this.minDay,Gs.local.invalidMonth||Gs.regionalOptions[""].invalidMonth);return(r.month()+this.monthsInYear(r)-this.firstMonth)%this.monthsInYear(r)+this.minMonth},fromMonthOfYear:function(e,t){var r=(t+this.firstMonth-2*this.minMonth)%this.monthsInYear(e)+this.minMonth;return this._validate(e,r,this.minDay,Gs.local.invalidMonth||Gs.regionalOptions[""].invalidMonth),r},daysInYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,Gs.local.invalidYear||Gs.regionalOptions[""].invalidYear);return this.leapYear(t)?366:365},dayOfYear:function(e,t,r){var n=this._validate(e,t,r,Gs.local.invalidDate||Gs.regionalOptions[""].invalidDate);return n.toJD()-this.newDate(n.year(),this.fromMonthOfYear(n.year(),this.minMonth),this.minDay).toJD()+1},daysInWeek:function(){return 7},dayOfWeek:function(e,t,r){var n=this._validate(e,t,r,Gs.local.invalidDate||Gs.regionalOptions[""].invalidDate);return(Math.floor(this.toJD(n))+2)%this.daysInWeek()},extraInfo:function(e,t,r){return this._validate(e,t,r,Gs.local.invalidDate||Gs.regionalOptions[""].invalidDate),{}},add:function(e,t,r){return this._validate(e,this.minMonth,this.minDay,Gs.local.invalidDate||Gs.regionalOptions[""].invalidDate),this._correctAdd(e,this._add(e,t,r),t,r)},_add:function(e,t,r){if(this._validateLevel++,r==="d"||r==="w"){var n=e.toJD()+t*(r==="w"?this.daysInWeek():1),i=e.calendar().fromJD(n);return this._validateLevel--,[i.year(),i.month(),i.day()]}try{var a=e.year()+(r==="y"?t:0),o=e.monthOfYear()+(r==="m"?t:0),i=e.day(),s=function(c){for(;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,Gs.local.invalidDate||Gs.regionalOptions[""].invalidDate);var n=r==="y"?t:e.year(),i=r==="m"?t:e.month(),a=r==="d"?t:e.day();return(r==="y"||r==="m")&&(a=Math.min(a,this.daysInMonth(n,i))),e.date(n,i,a)},isValid:function(e,t,r){this._validateLevel++;var n=this.hasYearZero||e!==0;if(n){var i=this.newDate(e,t,this.minDay);n=t>=this.minMonth&&t-this.minMonth<this.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,Gs.local.invalidDate||Gs.regionalOptions[""].invalidDate);return Gs.instance().fromJD(this.toJD(n)).toJSDate()},fromJSDate:function(e){return this.fromJD(Gs.instance().fromJSDate(e).toJD())},_validate:function(e,t,r,n){if(e.year){if(this._validateLevel===0&&this.name!==e.calendar().name)throw(Gs.local.differentCalendars||Gs.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 cQ(e){this.local=this.regionalOptions[e]||this.regionalOptions[""]}cQ.prototype=new uQ;L9(cQ.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,Gs.local.invalidYear||Gs.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,Gs.local.invalidMonth||Gs.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,Gs.local.invalidDate||Gs.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,Gs.local.invalidDate||Gs.regionalOptions[""].invalidDate),i=new Date(n.year(),n.month()-1,n.day());return i.setHours(0),i.setMinutes(0),i.setSeconds(0),i.setMilliseconds(0),i.setHours(i.getHours()>12?i.getHours()+2:0),i},fromJSDate:function(e){return this.newDate(e.getFullYear(),e.getMonth()+1,e.getDate())}});var Gs=WQe.exports=new jQe;Gs.cdate=lQ;Gs.baseCalendar=uQ;Gs.calendars.gregorian=cQ});var XQe=ye(()=>{var fQ=Oh(),Ud=kv();fQ(Ud.regionalOptions[""],{invalidArguments:"Invalid arguments",invalidFormat:"Cannot format a date from another calendar",missingNumberAt:"Missing number at position {0}",unknownNameAt:"Unknown name at position {0}",unexpectedLiteralAt:"Unexpected literal at position {0}",unexpectedText:"Additional text found at end"});Ud.local=Ud.regionalOptions[""];fQ(Ud.cdate.prototype,{formatDate:function(e,t){return typeof e!="string"&&(t=e,e=""),this._calendar.formatDate(e||"",this,t)}});fQ(Ud.baseCalendar.prototype,{UNIX_EPOCH:Ud.instance().newDate(1970,1,1).toJD(),SECS_PER_DAY:24*60*60,TICKS_EPOCH:Ud.instance().jdEpoch,TICKS_PER_DAY:24*60*60*1e7,ATOM:"yyyy-mm-dd",COOKIE:"D, dd M yyyy",FULL:"DD, MM d, yyyy",ISO_8601:"yyyy-mm-dd",JULIAN:"J",RFC_822:"D, d M yy",RFC_850:"DD, dd-M-yy",RFC_1036:"D, d M yy",RFC_1123:"D, d M yyyy",RFC_2822:"D, d M yyyy",RSS:"D, d M yy",TICKS:"!",TIMESTAMP:"@",W3C:"yyyy-mm-dd",formatDate:function(e,t,r){if(typeof e!="string"&&(r=t,t=e,e=""),!t)return"";if(t.calendar()!==this)throw Ud.local.invalidFormat||Ud.regionalOptions[""].invalidFormat;e=e||this.local.dateFormat,r=r||{};for(var n=r.dayNamesShort||this.local.dayNamesShort,i=r.dayNames||this.local.dayNames,a=r.monthNumbers||this.local.monthNumbers,o=r.monthNamesShort||this.local.monthNamesShort,s=r.monthNames||this.local.monthNames,l=r.calculateWeek||this.local.calculateWeek,u=function(S,L){for(var x=1;E+x<e.length&&e.charAt(E+x)===S;)x++;return E+=x-1,Math.floor(x/(L||1))>1},c=function(S,L,x,C){var M=""+L;if(u(S,C))for(;M.length<x;)M="0"+M;return M},f=function(S,L,x,C){return u(S)?C[L]:x[L]},h=this,d=function(S){return typeof a=="function"?a.call(h,S,u("m")):b(c("m",S.month(),2))},v=function(S,L){return L?typeof s=="function"?s.call(h,S):s[S.month()-h.minMonth]:typeof o=="function"?o.call(h,S):o[S.month()-h.minMonth]},_=this.local.digits,b=function(S){return r.localNumbers&&_?_(S):S},p="",k=!1,E=0;E<e.length;E++)if(k)e.charAt(E)==="'"&&!u("'")?k=!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+="'":k=!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,_=!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},k=function(z,O){var V=p(z,O),G=[2,3,V?4:2,V?4:2,10,11,20]["oyYJ@!".indexOf(z)+1],Z=new RegExp("^-?\\d{1,"+G+"}"),j=t.substring(M).match(Z);if(!j)throw(Ud.local.missingNumberAt||Ud.regionalOptions[""].missingNumberAt).replace(/\{0\}/,M);return M+=j[0].length,parseInt(j[0],10)},E=this,S=function(){if(typeof s=="function"){p("m");var z=s.call(E,t.substring(M));return M+=z.length,z}return k("m")},L=function(z,O,V,G){for(var Z=p(z,G)?V:O,j=0;j<Z.length;j++)if(t.substr(M,Z[j].length).toLowerCase()===Z[j].toLowerCase())return M+=Z[j].length,j+E.minMonth;throw(Ud.local.unknownNameAt||Ud.regionalOptions[""].unknownNameAt).replace(/\{0\}/,M)},x=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)},C=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:C();else switch(e.charAt(g)){case"d":d=k("d");break;case"D":L("D",i,a);break;case"o":v=k("o");break;case"w":k("w");break;case"m":h=S();break;case"M":h=x();break;case"y":var P=g;_=!p("y",2),g=P,f=k("y",2);break;case"Y":f=k("Y",2);break;case"J":c=k("J")+.5,t.charAt(M)==="."&&(M++,k("J"));break;case"@":c=k("@")/this.SECS_PER_DAY+this.UNIX_EPOCH;break;case"!":c=k("!")/this.TICKS_PER_DAY+this.TICKS_EPOCH;break;case"*":M=t.length;break;case"'":p("'")?C():b=!0;break;default:C()}if(M<t.length)throw Ud.local.unexpectedText||Ud.regionalOptions[""].unexpectedText;if(f===-1?f=this.today().year():f<100&&_&&(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 ZQe=ye(()=>{var Fx=kv(),Etr=Oh(),hQ=Fx.instance();function P9(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}P9.prototype=new Fx.baseCalendar;Etr(P9.prototype,{name:"Chinese",jdEpoch:17214255e-1,hasYearZero:!1,minMonth:0,firstMonth:0,minDay:1,regionalOptions:{"":{name:"Chinese",epochs:["BEC","EC"],monthNumbers:function(e,t){if(typeof e=="string"){var r=e.match(Ctr);return r?r[0]:""}var n=this._validateYear(e),i=e.month(),a=""+this.toChineseMonth(n,i);return t&&a.length<2&&(a="0"+a),this.isIntercalaryMonth(n,i)&&(a+="i"),a},monthNames:function(e){if(typeof e=="string"){var t=e.match(Ltr);return t?t[0]:""}var r=this._validateYear(e),n=e.month(),i=this.toChineseMonth(r,n),a=["\u4E00\u6708","\u4E8C\u6708","\u4E09\u6708","\u56DB\u6708","\u4E94\u6708","\u516D\u6708","\u4E03\u6708","\u516B\u6708","\u4E5D\u6708","\u5341\u6708","\u5341\u4E00\u6708","\u5341\u4E8C\u6708"][i-1];return this.isIntercalaryMonth(r,n)&&(a="\u95F0"+a),a},monthNamesShort:function(e){if(typeof e=="string"){var t=e.match(Ptr);return t?t[0]:""}var r=this._validateYear(e),n=e.month(),i=this.toChineseMonth(r,n),a=["\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341","\u5341\u4E00","\u5341\u4E8C"][i-1];return this.isIntercalaryMonth(r,n)&&(a="\u95F0"+a),a},parseMonth:function(e,t){e=this._validateYear(e);var r=parseInt(t),n;if(isNaN(r))t[0]==="\u95F0"&&(n=!0,t=t.substring(1)),t[t.length-1]==="\u6708"&&(t=t.substring(0,t.length-1)),r=1+["\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341","\u5341\u4E00","\u5341\u4E8C"].indexOf(t);else{var i=t[t.length-1];n=i==="i"||i==="I"}var a=this.toMonthIndex(e,r,n);return a},dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:1,isRTL:!1}},_validateYear:function(e,t){if(e.year&&(e=e.year()),typeof e!="number"||e<1888||e>2111)throw t.replace(/\{0\}/,this.local.name);return e},toMonthIndex:function(e,t,r){var n=this.intercalaryMonth(e),i=r&&t!==n;if(i||t<1||t>12)throw Fx.local.invalidMonth.replace(/\{0\}/,this.local.name);var a;return n?!r&&t<=n?a=t-1:a=t:a=t-1,a},toChineseMonth:function(e,t){e.year&&(e=e.year(),t=e.month());var r=this.intercalaryMonth(e),n=r?12:11;if(t<0||t>n)throw Fx.local.invalidMonth.replace(/\{0\}/,this.local.name);var i;return r?t<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=hQ.newDate(a,o,s),l.add(4-(l.dayOfWeek()||7),"d");var u=this.toJD(e,t,r)-l.toJD();return 1+Math.floor(u/7)},monthsInYear:function(e){return this.leapYear(e)?13:12},daysInMonth:function(e,t){e.year&&(t=e.month(),e=e.year()),e=this._validateYear(e);var r=zx[e-zx[0]],n=r>>13,i=n?12:11;if(t>i)throw Fx.local.invalidMonth.replace(/\{0\}/,this.local.name);var a=r&1<<12-t?30:29;return a},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(e,t,r){var n=this._validate(e,a,r,Fx.local.invalidDate);e=this._validateYear(n.year()),t=n.month(),r=n.day();var i=this.isIntercalaryMonth(e,t),a=this.toChineseMonth(e,t),o=Rtr(e,a,r,i);return hQ.toJD(o.year,o.month,o.day)},fromJD:function(e){var t=hQ.fromJD(e),r=Itr(t.year(),t.month(),t.day()),n=this.toMonthIndex(r.year,r.month,r.isIntercalary);return this.newDate(r.year,n,r.day)},fromString:function(e){var t=e.match(ktr),r=this._validateYear(+t[1]),n=+t[2],i=!!t[3],a=this.toMonthIndex(r,n,i),o=+t[4];return this.newDate(r,a,o)},add:function(e,t,r){var n=e.year(),i=e.month(),a=this.isIntercalaryMonth(n,i),o=this.toChineseMonth(n,i),s=Object.getPrototypeOf(P9.prototype).add.call(this,e,t,r);if(r==="y"){var l=s.year(),u=s.month(),c=this.isIntercalaryMonth(l,o),f=a&&c?this.toMonthIndex(l,o,!0):this.toMonthIndex(l,o,!1);f!==u&&s.month(f)}return s}});var ktr=/^\s*(-?\d\d\d\d|\d\d)[-/](\d?\d)([iI]?)[-/](\d?\d)/m,Ctr=/^\d?\d[iI]?/m,Ltr=/^闰?十?[一二三四五六七八九]?月/m,Ptr=/^闰?十?[一二三四五六七八九]?/m;Fx.calendars.chinese=P9;var zx=[1887,5780,5802,19157,2742,50359,1198,2646,46378,7466,3412,30122,5482,67949,2396,5294,43597,6732,6954,36181,2772,4954,18781,2396,54427,5274,6730,47781,5800,6868,21210,4790,59703,2350,5270,46667,3402,3496,38325,1388,4782,18735,2350,52374,6804,7498,44457,2906,1388,29294,4700,63789,6442,6804,56138,5802,2772,38235,1210,4698,22827,5418,63125,3476,5802,43701,2484,5302,27223,2646,70954,7466,3412,54698,5482,2412,38062,5294,2636,32038,6954,60245,2772,4826,43357,2394,5274,39501,6730,72357,5800,5844,53978,4790,2358,38039,5270,87627,3402,3496,54708,5484,4782,43311,2350,3222,27978,7498,68965,2904,5484,45677,4700,6444,39573,6804,6986,19285,2772,62811,1210,4698,47403,5418,5780,38570,5546,76469,2420,5302,51799,2646,5414,36501,3412,5546,18869,2412,54446,5276,6732,48422,6822,2900,28010,4826,92509,2394,5274,55883,6730,6820,47956,5812,2778,18779,2358,62615,5270,5450,46757,3492,5556,27318,4718,67887,2350,3222,52554,7498,3428,38252,5468,4700,31022,6444,64149,6804,6986,43861,2772,5338,35421,2650,70955,5418,5780,54954,5546,2740,38074,5302,2646,29991,3366,61011,3412,5546,43445,2412,5294,35406,6732,72998,6820,6996,52586,2778,2396,38045,5274,6698,23333,6820,64338,5812,2746,43355,2358,5270,39499,5450,79525,3492,5548],Ox=[1887,966732,967231,967733,968265,968766,969297,969798,970298,970829,971330,971830,972362,972863,973395,973896,974397,974928,975428,975929,976461,976962,977462,977994,978494,979026,979526,980026,980558,981059,981559,982091,982593,983124,983624,984124,984656,985157,985656,986189,986690,987191,987722,988222,988753,989254,989754,990286,990788,991288,991819,992319,992851,993352,993851,994383,994885,995385,995917,996418,996918,997450,997949,998481,998982,999483,1000014,1000515,1001016,1001548,1002047,1002578,1003080,1003580,1004111,1004613,1005113,1005645,1006146,1006645,1007177,1007678,1008209,1008710,1009211,1009743,1010243,1010743,1011275,1011775,1012306,1012807,1013308,1013840,1014341,1014841,1015373,1015874,1016404,1016905,1017405,1017937,1018438,1018939,1019471,1019972,1020471,1021002,1021503,1022035,1022535,1023036,1023568,1024069,1024568,1025100,1025601,1026102,1026633,1027133,1027666,1028167,1028666,1029198,1029699,1030199,1030730,1031231,1031763,1032264,1032764,1033296,1033797,1034297,1034828,1035329,1035830,1036362,1036861,1037393,1037894,1038394,1038925,1039427,1039927,1040459,1040959,1041491,1041992,1042492,1043023,1043524,1044024,1044556,1045057,1045558,1046090,1046590,1047121,1047622,1048122,1048654,1049154,1049655,1050187,1050689,1051219,1051720,1052220,1052751,1053252,1053752,1054284,1054786,1055285,1055817,1056317,1056849,1057349,1057850,1058382,1058883,1059383,1059915,1060415,1060947,1061447,1061947,1062479,1062981,1063480,1064012,1064514,1065014,1065545,1066045,1066577,1067078,1067578,1068110,1068611,1069112,1069642,1070142,1070674,1071175,1071675,1072207,1072709,1073209,1073740,1074241,1074741,1075273,1075773,1076305,1076807,1077308,1077839,1078340,1078840,1079372,1079871,1080403,1080904];function Itr(e,t,r,n){var i,a;if(typeof e=="object")i=e,a=t||{};else{var o=typeof e=="number"&&e>=1888&&e<=2111;if(!o)throw new Error("Solar year outside range 1888-2111");var s=typeof t=="number"&&t>=1&&t<=12;if(!s)throw new Error("Solar month outside range 1 - 12");var l=typeof r=="number"&&r>=1&&r<=31;if(!l)throw new Error("Solar day outside range 1 - 31");i={year:e,month:t,day:r},a=n||{}}var u=Ox[i.year-Ox[0]],c=i.year<<9|i.month<<5|i.day;a.year=c>=u?i.year:i.year-1,u=Ox[a.year-Ox[0]];var f=u>>9&4095,h=u>>5&15,d=u&31,v,_=new Date(f,h-1,d),b=new Date(i.year,i.month-1,i.day);v=Math.round((b-_)/(24*3600*1e3));var p=zx[a.year-zx[0]],k;for(k=0;k<13;k++){var E=p&1<<12-k?30:29;if(v<E)break;v-=E}var S=p>>13;return!S||k<S?(a.isIntercalary=!1,a.month=1+k):k===S?(a.isIntercalary=!0,a.month=k):(a.isIntercalary=!1,a.month=k),a.day=1+v,a}function Rtr(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 _=0;_<v;_++){var b=h&1<<12-_?30:29;f+=b}var p=Ox[o.year-Ox[0]],k=p>>9&4095,E=p>>5&15,S=p&31,L=new Date(k,E-1,S+f);return a.year=L.getFullYear(),a.month=1+L.getMonth(),a.day=L.getDate(),a}});var YQe=ye(()=>{var bw=kv(),Dtr=Oh();function dQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}dQ.prototype=new bw.baseCalendar;Dtr(dQ.prototype,{name:"Coptic",jdEpoch:18250295e-1,daysPerMonth:[30,30,30,30,30,30,30,30,30,30,30,30,5],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Coptic",epochs:["BAM","AM"],monthNames:["Thout","Paopi","Hathor","Koiak","Tobi","Meshir","Paremhat","Paremoude","Pashons","Paoni","Epip","Mesori","Pi Kogi Enavot"],monthNamesShort:["Tho","Pao","Hath","Koi","Tob","Mesh","Pat","Pad","Pash","Pao","Epi","Meso","PiK"],dayNames:["Tkyriaka","Pesnau","Pshoment","Peftoou","Ptiou","Psoou","Psabbaton"],dayNamesShort:["Tky","Pes","Psh","Pef","Pti","Pso","Psa"],dayNamesMin:["Tk","Pes","Psh","Pef","Pt","Pso","Psa"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(r){var t=this._validate(r,this.minMonth,this.minDay,bw.local.invalidYear),r=t.year()+(t.year()<0?1:0);return r%4===3||r%4===-1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,bw.local.invalidYear||bw.regionalOptions[""].invalidYear),13},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,bw.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===13&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(e,t,r){var n=this._validate(e,t,r,bw.local.invalidDate);return e=n.year(),e<0&&e++,n.day()+(n.month()-1)*30+(e-1)*365+Math.floor(e/4)+this.jdEpoch-1},fromJD:function(e){var t=Math.floor(e)+.5-this.jdEpoch,r=Math.floor((t-Math.floor((t+366)/1461))/365)+1;r<=0&&r--,t=Math.floor(e)+.5-this.newDate(r,1,1).toJD();var n=Math.floor(t/30)+1,i=t-(n-1)*30+1;return this.newDate(r,n,i)}});bw.calendars.coptic=dQ});var KQe=ye(()=>{var x1=kv(),Ftr=Oh();function vQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}vQ.prototype=new x1.baseCalendar;Ftr(vQ.prototype,{name:"Discworld",jdEpoch:17214255e-1,daysPerMonth:[16,32,32,32,32,32,32,32,32,32,32,32,32],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Discworld",epochs:["BUC","UC"],monthNames:["Ick","Offle","February","March","April","May","June","Grune","August","Spune","Sektober","Ember","December"],monthNamesShort:["Ick","Off","Feb","Mar","Apr","May","Jun","Gru","Aug","Spu","Sek","Emb","Dec"],dayNames:["Sunday","Octeday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Oct","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Oc","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:2,isRTL:!1}},leapYear:function(e){return this._validate(e,this.minMonth,this.minDay,x1.local.invalidYear),!1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,x1.local.invalidYear),13},daysInYear:function(e){return this._validate(e,this.minMonth,this.minDay,x1.local.invalidYear),400},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/8)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,x1.local.invalidMonth);return this.daysPerMonth[r.month()-1]},daysInWeek:function(){return 8},dayOfWeek:function(e,t,r){var n=this._validate(e,t,r,x1.local.invalidDate);return(n.day()+1)%8},weekDay:function(e,t,r){var n=this.dayOfWeek(e,t,r);return n>=2&&n<=6},extraInfo:function(e,t,r){var n=this._validate(e,t,r,x1.local.invalidDate);return{century:ztr[Math.floor((n.year()-1)/100)+1]||""}},toJD:function(e,t,r){var n=this._validate(e,t,r,x1.local.invalidDate);return e=n.year()+(n.year()<0?1:0),t=n.month(),r=n.day(),r+(t>1?16:0)+(t>2?(t-2)*32:0)+(e-1)*400+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e+.5)-Math.floor(this.jdEpoch)-1;var t=Math.floor(e/400)+1;e-=(t-1)*400,e+=e>15?16:0;var r=Math.floor(e/32)+1,n=e-(r-1)*32+1;return this.newDate(t<=0?t-1:t,r,n)}});var ztr={20:"Fruitbat",21:"Anchovy"};x1.calendars.discworld=vQ});var JQe=ye(()=>{var ww=kv(),Otr=Oh();function pQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}pQ.prototype=new ww.baseCalendar;Otr(pQ.prototype,{name:"Ethiopian",jdEpoch:17242205e-1,daysPerMonth:[30,30,30,30,30,30,30,30,30,30,30,30,5],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Ethiopian",epochs:["BEE","EE"],monthNames:["Meskerem","Tikemet","Hidar","Tahesas","Tir","Yekatit","Megabit","Miazia","Genbot","Sene","Hamle","Nehase","Pagume"],monthNamesShort:["Mes","Tik","Hid","Tah","Tir","Yek","Meg","Mia","Gen","Sen","Ham","Neh","Pag"],dayNames:["Ehud","Segno","Maksegno","Irob","Hamus","Arb","Kidame"],dayNamesShort:["Ehu","Seg","Mak","Iro","Ham","Arb","Kid"],dayNamesMin:["Eh","Se","Ma","Ir","Ha","Ar","Ki"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(r){var t=this._validate(r,this.minMonth,this.minDay,ww.local.invalidYear),r=t.year()+(t.year()<0?1:0);return r%4===3||r%4===-1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,ww.local.invalidYear||ww.regionalOptions[""].invalidYear),13},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,ww.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===13&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(e,t,r){var n=this._validate(e,t,r,ww.local.invalidDate);return e=n.year(),e<0&&e++,n.day()+(n.month()-1)*30+(e-1)*365+Math.floor(e/4)+this.jdEpoch-1},fromJD:function(e){var t=Math.floor(e)+.5-this.jdEpoch,r=Math.floor((t-Math.floor((t+366)/1461))/365)+1;r<=0&&r--,t=Math.floor(e)+.5-this.newDate(r,1,1).toJD();var n=Math.floor(t/30)+1,i=t-(n-1)*30+1;return this.newDate(r,n,i)}});ww.calendars.ethiopian=pQ});var $Qe=ye(()=>{var qx=kv(),qtr=Oh();function gQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}gQ.prototype=new qx.baseCalendar;qtr(gQ.prototype,{name:"Hebrew",jdEpoch:347995.5,daysPerMonth:[30,29,30,29,30,29,30,29,30,29,30,29,29],hasYearZero:!1,minMonth:1,firstMonth:7,minDay:1,regionalOptions:{"":{name:"Hebrew",epochs:["BAM","AM"],monthNames:["Nisan","Iyar","Sivan","Tammuz","Av","Elul","Tishrei","Cheshvan","Kislev","Tevet","Shevat","Adar","Adar II"],monthNamesShort:["Nis","Iya","Siv","Tam","Av","Elu","Tis","Che","Kis","Tev","She","Ada","Ad2"],dayNames:["Yom Rishon","Yom Sheni","Yom Shlishi","Yom Revi'i","Yom Chamishi","Yom Shishi","Yom Shabbat"],dayNamesShort:["Ris","She","Shl","Rev","Cha","Shi","Sha"],dayNamesMin:["Ri","She","Shl","Re","Ch","Shi","Sha"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,qx.local.invalidYear);return this._leapYear(t.year())},_leapYear:function(e){return e=e<0?e+1:e,I9(e*7+1,19)<7},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,qx.local.invalidYear),this._leapYear(e.year?e.year():e)?13:12},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,qx.local.invalidYear);return e=t.year(),this.toJD(e===-1?1:e+1,7,1)-this.toJD(e,7,1)},daysInMonth:function(e,t){return e.year&&(t=e.month(),e=e.year()),this._validate(e,t,this.minDay,qx.local.invalidMonth),t===12&&this.leapYear(e)||t===8&&I9(this.daysInYear(e),10)===5?30:t===9&&I9(this.daysInYear(e),10)===3?29:this.daysPerMonth[t-1]},weekDay:function(e,t,r){return this.dayOfWeek(e,t,r)!==6},extraInfo:function(e,t,r){var n=this._validate(e,t,r,qx.local.invalidDate);return{yearType:(this.leapYear(n)?"embolismic":"common")+" "+["deficient","regular","complete"][this.daysInYear(n)%10-3]}},toJD:function(e,t,r){var n=this._validate(e,t,r,qx.local.invalidDate);e=n.year(),t=n.month(),r=n.day();var i=e<=0?e+1:e,a=this.jdEpoch+this._delay1(i)+this._delay2(i)+r+1;if(t<7){for(var o=7;o<=this.monthsInYear(e);o++)a+=this.daysInMonth(e,o);for(var o=1;o<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 I9(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 I9(e,t){return e-t*Math.floor(e/t)}qx.calendars.hebrew=gQ});var QQe=ye(()=>{var dC=kv(),Btr=Oh();function mQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}mQ.prototype=new dC.baseCalendar;Btr(mQ.prototype,{name:"Islamic",jdEpoch:19484395e-1,daysPerMonth:[30,29,30,29,30,29,30,29,30,29,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Islamic",epochs:["BH","AH"],monthNames:["Muharram","Safar","Rabi' al-awwal","Rabi' al-thani","Jumada al-awwal","Jumada al-thani","Rajab","Sha'aban","Ramadan","Shawwal","Dhu al-Qi'dah","Dhu al-Hijjah"],monthNamesShort:["Muh","Saf","Rab1","Rab2","Jum1","Jum2","Raj","Sha'","Ram","Shaw","DhuQ","DhuH"],dayNames:["Yawm al-ahad","Yawm al-ithnayn","Yawm ath-thulaathaa'","Yawm al-arbi'aa'","Yawm al-kham\u012Bs","Yawm al-jum'a","Yawm as-sabt"],dayNamesShort:["Aha","Ith","Thu","Arb","Kha","Jum","Sab"],dayNamesMin:["Ah","It","Th","Ar","Kh","Ju","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!1}},leapYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,dC.local.invalidYear);return(t.year()*11+14)%30<11},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(e){return this.leapYear(e)?355:354},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,dC.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===12&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return this.dayOfWeek(e,t,r)!==5},toJD:function(e,t,r){var n=this._validate(e,t,r,dC.local.invalidDate);return e=n.year(),t=n.month(),r=n.day(),e=e<=0?e+1:e,r+Math.ceil(29.5*(t-1))+(e-1)*354+Math.floor((3+11*e)/30)+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e)+.5;var t=Math.floor((30*(e-this.jdEpoch)+10646)/10631);t=t<=0?t-1:t;var r=Math.min(12,Math.ceil((e-29-this.toJD(t,1,1))/29.5)+1),n=e-this.toJD(t,r,1)+1;return this.newDate(t,r,n)}});dC.calendars.islamic=mQ});var eet=ye(()=>{var vC=kv(),Ntr=Oh();function yQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}yQ.prototype=new vC.baseCalendar;Ntr(yQ.prototype,{name:"Julian",jdEpoch:17214235e-1,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Julian",epochs:["BC","AD"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"mm/dd/yyyy",firstDay:0,isRTL:!1}},leapYear:function(r){var t=this._validate(r,this.minMonth,this.minDay,vC.local.invalidYear),r=t.year()<0?t.year()+1:t.year();return r%4===0},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(4-(n.dayOfWeek()||7),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,vC.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===2&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(e,t,r){var n=this._validate(e,t,r,vC.local.invalidDate);return e=n.year(),t=n.month(),r=n.day(),e<0&&e++,t<=2&&(e--,t+=12),Math.floor(365.25*(e+4716))+Math.floor(30.6001*(t+1))+r-1524.5},fromJD:function(e){var t=Math.floor(e+.5),r=t+1524,n=Math.floor((r-122.1)/365.25),i=Math.floor(365.25*n),a=Math.floor((r-i)/30.6001),o=a-Math.floor(a<14?1:13),s=n-Math.floor(o>2?4716:4715),l=r-i-Math.floor(30.6001*a);return s<=0&&s--,this.newDate(s,o,l)}});vC.calendars.julian=yQ});var ret=ye(()=>{var ug=kv(),Utr=Oh();function xQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}xQ.prototype=new ug.baseCalendar;Utr(xQ.prototype,{name:"Mayan",jdEpoch:584282.5,hasYearZero:!0,minMonth:0,firstMonth:0,minDay:0,regionalOptions:{"":{name:"Mayan",epochs:["",""],monthNames:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17"],monthNamesShort:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17"],dayNames:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],dayNamesShort:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],dayNamesMin:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],digits:null,dateFormat:"YYYY.m.d",firstDay:0,isRTL:!1,haabMonths:["Pop","Uo","Zip","Zotz","Tzec","Xul","Yaxkin","Mol","Chen","Yax","Zac","Ceh","Mac","Kankin","Muan","Pax","Kayab","Cumku","Uayeb"],tzolkinMonths:["Imix","Ik","Akbal","Kan","Chicchan","Cimi","Manik","Lamat","Muluc","Oc","Chuen","Eb","Ben","Ix","Men","Cib","Caban","Etznab","Cauac","Ahau"]}},leapYear:function(e){return this._validate(e,this.minMonth,this.minDay,ug.local.invalidYear),!1},formatYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,ug.local.invalidYear);e=t.year();var r=Math.floor(e/400);e=e%400,e+=e<0?400:0;var n=Math.floor(e/20);return r+"."+n+"."+e%20},forYear:function(e){if(e=e.split("."),e.length<3)throw"Invalid Mayan year";for(var t=0,r=0;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=_Q(e+8+17*20,365);return[Math.floor(t/20)+1,_Q(t,20)]},_toTzolkin:function(e){return e-=this.jdEpoch,[tet(e+20,20),tet(e+4,13)]},toJD:function(e,t,r){var n=this._validate(e,t,r,ug.local.invalidDate);return n.day()+n.month()*20+n.year()*360+this.jdEpoch},fromJD:function(e){e=Math.floor(e)+.5-this.jdEpoch;var t=Math.floor(e/360);e=e%360,e+=e<0?360:0;var r=Math.floor(e/20),n=e%20;return this.newDate(t,r,n)}});function _Q(e,t){return e-t*Math.floor(e/t)}function tet(e,t){return _Q(e-1,t)+1}ug.calendars.mayan=xQ});var net=ye(()=>{var Tw=kv(),Vtr=Oh();function bQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}bQ.prototype=new Tw.baseCalendar;var iet=Tw.instance("gregorian");Vtr(bQ.prototype,{name:"Nanakshahi",jdEpoch:22576735e-1,daysPerMonth:[31,31,31,31,31,30,30,30,30,30,30,30],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Nanakshahi",epochs:["BN","AN"],monthNames:["Chet","Vaisakh","Jeth","Harh","Sawan","Bhadon","Assu","Katak","Maghar","Poh","Magh","Phagun"],monthNamesShort:["Che","Vai","Jet","Har","Saw","Bha","Ass","Kat","Mgr","Poh","Mgh","Pha"],dayNames:["Somvaar","Mangalvar","Budhvaar","Veervaar","Shukarvaar","Sanicharvaar","Etvaar"],dayNamesShort:["Som","Mangal","Budh","Veer","Shukar","Sanichar","Et"],dayNamesMin:["So","Ma","Bu","Ve","Sh","Sa","Et"],digits:null,dateFormat:"dd-mm-yyyy",firstDay:0,isRTL:!1}},leapYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,Tw.local.invalidYear||Tw.regionalOptions[""].invalidYear);return iet.leapYear(t.year()+(t.year()<1?1:0)+1469)},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(1-(n.dayOfWeek()||7),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,Tw.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===12&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(i,t,r){var n=this._validate(i,t,r,Tw.local.invalidMonth),i=n.year();i<0&&i++;for(var a=n.day(),o=1;o<n.month();o++)a+=this.daysPerMonth[o-1];return a+iet.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)}});Tw.calendars.nanakshahi=bQ});var aet=ye(()=>{var Aw=kv(),Gtr=Oh();function wQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}wQ.prototype=new Aw.baseCalendar;Gtr(wQ.prototype,{name:"Nepali",jdEpoch:17007095e-1,daysPerMonth:[31,31,32,32,31,30,30,29,30,29,30,30],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,daysPerYear:365,regionalOptions:{"":{name:"Nepali",epochs:["BBS","ABS"],monthNames:["Baisakh","Jestha","Ashadh","Shrawan","Bhadra","Ashwin","Kartik","Mangsir","Paush","Mangh","Falgun","Chaitra"],monthNamesShort:["Bai","Je","As","Shra","Bha","Ash","Kar","Mang","Pau","Ma","Fal","Chai"],dayNames:["Aaitabaar","Sombaar","Manglbaar","Budhabaar","Bihibaar","Shukrabaar","Shanibaar"],dayNamesShort:["Aaita","Som","Mangl","Budha","Bihi","Shukra","Shani"],dayNamesMin:["Aai","So","Man","Bu","Bi","Shu","Sha"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:1,isRTL:!1}},leapYear:function(e){return this.daysInYear(e)!==this.daysPerYear},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,Aw.local.invalidYear);if(e=t.year(),typeof this.NEPALI_CALENDAR_DATA[e]=="undefined")return this.daysPerYear;for(var r=0,n=this.minMonth;n<=12;n++)r+=this.NEPALI_CALENDAR_DATA[e][n];return r},daysInMonth:function(e,t){return e.year&&(t=e.month(),e=e.year()),this._validate(e,t,this.minDay,Aw.local.invalidMonth),typeof this.NEPALI_CALENDAR_DATA[e]=="undefined"?this.daysPerMonth[t-1]:this.NEPALI_CALENDAR_DATA[e][t]},weekDay:function(e,t,r){return this.dayOfWeek(e,t,r)!==6},toJD:function(e,t,r){var n=this._validate(e,t,r,Aw.local.invalidDate);e=n.year(),t=n.month(),r=n.day();var i=Aw.instance(),a=0,o=t,s=e;this._createMissingCalendarData(e);var l=e-(o>9||o===9&&r>=this.NEPALI_CALENDAR_DATA[s][0]?56:57);for(t!==9&&(a=r,o--);o!==9;)o<=0&&(o=12,s--),a+=this.NEPALI_CALENDAR_DATA[s][o],o--;return t===9?(a+=r-this.NEPALI_CALENDAR_DATA[s][0],a<0&&(a+=i.daysInYear(l))):a+=this.NEPALI_CALENDAR_DATA[s][9]-this.NEPALI_CALENDAR_DATA[s][0],i.newDate(l,1,1).add(a,"d").toJD()},fromJD:function(e){var t=Aw.instance(),r=t.fromJD(e),n=r.year(),i=r.dayOfYear(),a=n+56;this._createMissingCalendarData(a);for(var o=9,s=this.NEPALI_CALENDAR_DATA[a][0],l=this.NEPALI_CALENDAR_DATA[a][o]-s+1;i>l;)o++,o>12&&(o=1,a++),l+=this.NEPALI_CALENDAR_DATA[a][o];var u=this.NEPALI_CALENDAR_DATA[a][o]-(l-i);return this.newDate(a,o,u)},_createMissingCalendarData:function(e){var t=this.daysPerMonth.slice(0);t.unshift(17);for(var r=e-1;r<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]}});Aw.calendars.nepali=wQ});var oet=ye(()=>{var rS=kv(),Htr=Oh();function D9(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}function R9(e){var t=e-475;e<0&&t++;var r=.242197,n=r*t,i=r*(t+1),a=n-Math.floor(n),o=i-Math.floor(i);return a>o}D9.prototype=new rS.baseCalendar;Htr(D9.prototype,{name:"Persian",jdEpoch:19483205e-1,daysPerMonth:[31,31,31,31,31,31,30,30,30,30,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Persian",epochs:["BP","AP"],monthNames:["Farvardin","Ordibehesht","Khordad","Tir","Mordad","Shahrivar","Mehr","Aban","Azar","Dey","Bahman","Esfand"],monthNamesShort:["Far","Ord","Kho","Tir","Mor","Sha","Meh","Aba","Aza","Dey","Bah","Esf"],dayNames:["Yekshanbeh","Doshanbeh","Seshanbeh","Chah\u0101rshanbeh","Panjshanbeh","Jom'eh","Shanbeh"],dayNamesShort:["Yek","Do","Se","Cha","Panj","Jom","Sha"],dayNamesMin:["Ye","Do","Se","Ch","Pa","Jo","Sh"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!1}},leapYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,rS.local.invalidYear);return R9(t.year())},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-((n.dayOfWeek()+1)%7),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,rS.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===12&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return this.dayOfWeek(e,t,r)!==5},toJD:function(e,t,r){var n=this._validate(e,t,r,rS.local.invalidDate);e=n.year(),t=n.month(),r=n.day();var i=0;if(e>0)for(var a=1;a<e;a++)R9(a)&&i++;else if(e<0)for(var a=e;a<0;a++)R9(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,R9(r)?30:29)&&(r++,r===0&&r++);var n=e-this.toJD(r,1,1)+1,i=n<=186?Math.ceil(n/31):Math.ceil((n-6)/30),a=e-this.toJD(r,i,1)+1;return this.newDate(r,i,a)}});rS.calendars.persian=D9;rS.calendars.jalali=D9});var set=ye(()=>{var Sw=kv(),jtr=Oh(),F9=Sw.instance();function TQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}TQ.prototype=new Sw.baseCalendar;jtr(TQ.prototype,{name:"Taiwan",jdEpoch:24194025e-1,yearsOffset:1911,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Taiwan",epochs:["BROC","ROC"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:1,isRTL:!1}},leapYear:function(r){var t=this._validate(r,this.minMonth,this.minDay,Sw.local.invalidYear),r=this._t2gYear(t.year());return F9.leapYear(r)},weekOfYear:function(i,t,r){var n=this._validate(i,this.minMonth,this.minDay,Sw.local.invalidYear),i=this._t2gYear(n.year());return F9.weekOfYear(i,n.month(),n.day())},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,Sw.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===2&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(i,t,r){var n=this._validate(i,t,r,Sw.local.invalidDate),i=this._t2gYear(n.year());return F9.toJD(i,n.month(),n.day())},fromJD:function(e){var t=F9.fromJD(e),r=this._g2tYear(t.year());return this.newDate(r,t.month(),t.day())},_t2gYear:function(e){return e+this.yearsOffset+(e>=-this.yearsOffset&&e<=-1?1:0)},_g2tYear:function(e){return e-this.yearsOffset-(e>=1&&e<=this.yearsOffset?1:0)}});Sw.calendars.taiwan=TQ});var uet=ye(()=>{var Mw=kv(),Wtr=Oh(),z9=Mw.instance();function AQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}AQ.prototype=new Mw.baseCalendar;Wtr(AQ.prototype,{name:"Thai",jdEpoch:15230985e-1,yearsOffset:543,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Thai",epochs:["BBE","BE"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(r){var t=this._validate(r,this.minMonth,this.minDay,Mw.local.invalidYear),r=this._t2gYear(t.year());return z9.leapYear(r)},weekOfYear:function(i,t,r){var n=this._validate(i,this.minMonth,this.minDay,Mw.local.invalidYear),i=this._t2gYear(n.year());return z9.weekOfYear(i,n.month(),n.day())},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,Mw.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===2&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(i,t,r){var n=this._validate(i,t,r,Mw.local.invalidDate),i=this._t2gYear(n.year());return z9.toJD(i,n.month(),n.day())},fromJD:function(e){var t=z9.fromJD(e),r=this._g2tYear(t.year());return this.newDate(r,t.month(),t.day())},_t2gYear:function(e){return e-this.yearsOffset-(e>=1&&e<=this.yearsOffset?1:0)},_g2tYear:function(e){return e+this.yearsOffset+(e>=-this.yearsOffset&&e<=-1?1:0)}});Mw.calendars.thai=AQ});var cet=ye(()=>{var Ew=kv(),Xtr=Oh();function SQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}SQ.prototype=new Ew.baseCalendar;Xtr(SQ.prototype,{name:"UmmAlQura",hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Umm al-Qura",epochs:["BH","AH"],monthNames:["Al-Muharram","Safar","Rabi' al-awwal","Rabi' Al-Thani","Jumada Al-Awwal","Jumada Al-Thani","Rajab","Sha'aban","Ramadan","Shawwal","Dhu al-Qi'dah","Dhu al-Hijjah"],monthNamesShort:["Muh","Saf","Rab1","Rab2","Jum1","Jum2","Raj","Sha'","Ram","Shaw","DhuQ","DhuH"],dayNames:["Yawm al-Ahad","Yawm al-Ithnain","Yawm al-Thal\u0101th\u0101\u2019","Yawm al-Arba\u2018\u0101\u2019","Yawm al-Kham\u012Bs","Yawm al-Jum\u2018a","Yawm al-Sabt"],dayNamesMin:["Ah","Ith","Th","Ar","Kh","Ju","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!0}},leapYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,Ew.local.invalidYear);return this.daysInYear(t.year())===355},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(e){for(var t=0,r=1;r<=12;r++)t+=this.daysInMonth(e,r);return t},daysInMonth:function(e,t){for(var r=this._validate(e,t,this.minDay,Ew.local.invalidMonth),n=r.toJD()-24e5+.5,i=0,a=0;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,Ew.local.invalidDate),i=12*(n.year()-1)+n.month()-15292,a=n.day()+Bx[i-1]-1;return a+24e5-.5},fromJD:function(e){for(var t=e-24e5+.5,r=0,n=0;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=Ew.baseCalendar.prototype.isValid.apply(this,arguments);return n&&(e=e.year!=null?e.year:e,n=e>=1276&&e<=1500),n},_validate:function(e,t,r,n){var i=Ew.baseCalendar.prototype._validate.apply(this,arguments);if(i.year<1276||i.year>1500)throw n.replace(/\{0\}/,this.local.name);return i}});Ew.calendars.ummalqura=SQ;var Bx=[20,50,79,109,138,168,197,227,256,286,315,345,374,404,433,463,492,522,551,581,611,641,670,700,729,759,788,818,847,877,906,936,965,995,1024,1054,1083,1113,1142,1172,1201,1231,1260,1290,1320,1350,1379,1409,1438,1468,1497,1527,1556,1586,1615,1645,1674,1704,1733,1763,1792,1822,1851,1881,1910,1940,1969,1999,2028,2058,2087,2117,2146,2176,2205,2235,2264,2294,2323,2353,2383,2413,2442,2472,2501,2531,2560,2590,2619,2649,2678,2708,2737,2767,2796,2826,2855,2885,2914,2944,2973,3003,3032,3062,3091,3121,3150,3180,3209,3239,3268,3298,3327,3357,3386,3416,3446,3476,3505,3535,3564,3594,3623,3653,3682,3712,3741,3771,3800,3830,3859,3889,3918,3948,3977,4007,4036,4066,4095,4125,4155,4185,4214,4244,4273,4303,4332,4362,4391,4421,4450,4480,4509,4539,4568,4598,4627,4657,4686,4716,4745,4775,4804,4834,4863,4893,4922,4952,4981,5011,5040,5070,5099,5129,5158,5188,5218,5248,5277,5307,5336,5366,5395,5425,5454,5484,5513,5543,5572,5602,5631,5661,5690,5720,5749,5779,5808,5838,5867,5897,5926,5956,5985,6015,6044,6074,6103,6133,6162,6192,6221,6251,6281,6311,6340,6370,6399,6429,6458,6488,6517,6547,6576,6606,6635,6665,6694,6724,6753,6783,6812,6842,6871,6901,6930,6960,6989,7019,7048,7078,7107,7137,7166,7196,7225,7255,7284,7314,7344,7374,7403,7433,7462,7492,7521,7551,7580,7610,7639,7669,7698,7728,7757,7787,7816,7846,7875,7905,7934,7964,7993,8023,8053,8083,8112,8142,8171,8201,8230,8260,8289,8319,8348,8378,8407,8437,8466,8496,8525,8555,8584,8614,8643,8673,8702,8732,8761,8791,8821,8850,8880,8909,8938,8968,8997,9027,9056,9086,9115,9145,9175,9205,9234,9264,9293,9322,9352,9381,9410,9440,9470,9499,9529,9559,9589,9618,9648,9677,9706,9736,9765,9794,9824,9853,9883,9913,9943,9972,10002,10032,10061,10090,10120,10149,10178,10208,10237,10267,10297,10326,10356,10386,10415,10445,10474,10504,10533,10562,10592,10621,10651,10680,10710,10740,10770,10799,10829,10858,10888,10917,10947,10976,11005,11035,11064,11094,11124,11153,11183,11213,11242,11272,11301,11331,11360,11389,11419,11448,11478,11507,11537,11567,11596,11626,11655,11685,11715,11744,11774,11803,11832,11862,11891,11921,11950,11980,12010,12039,12069,12099,12128,12158,12187,12216,12246,12275,12304,12334,12364,12393,12423,12453,12483,12512,12542,12571,12600,12630,12659,12688,12718,12747,12777,12807,12837,12866,12896,12926,12955,12984,13014,13043,13072,13102,13131,13161,13191,13220,13250,13280,13310,13339,13368,13398,13427,13456,13486,13515,13545,13574,13604,13634,13664,13693,13723,13752,13782,13811,13840,13870,13899,13929,13958,13988,14018,14047,14077,14107,14136,14166,14195,14224,14254,14283,14313,14342,14372,14401,14431,14461,14490,14520,14550,14579,14609,14638,14667,14697,14726,14756,14785,14815,14844,14874,14904,14933,14963,14993,15021,15051,15081,15110,15140,15169,15199,15228,15258,15287,15317,15347,15377,15406,15436,15465,15494,15524,15553,15582,15612,15641,15671,15701,15731,15760,15790,15820,15849,15878,15908,15937,15966,15996,16025,16055,16085,16114,16144,16174,16204,16233,16262,16292,16321,16350,16380,16409,16439,16468,16498,16528,16558,16587,16617,16646,16676,16705,16734,16764,16793,16823,16852,16882,16912,16941,16971,17001,17030,17060,17089,17118,17148,17177,17207,17236,17266,17295,17325,17355,17384,17414,17444,17473,17502,17532,17561,17591,17620,17650,17679,17709,17738,17768,17798,17827,17857,17886,17916,17945,17975,18004,18034,18063,18093,18122,18152,18181,18211,18241,18270,18300,18330,18359,18388,18418,18447,18476,18506,18535,18565,18595,18625,18654,18684,18714,18743,18772,18802,18831,18860,18890,18919,18949,18979,19008,19038,19068,19098,19127,19156,19186,19215,19244,19274,19303,19333,19362,19392,19422,19452,19481,19511,19540,19570,19599,19628,19658,19687,19717,19746,19776,19806,19836,19865,19895,19924,19954,19983,20012,20042,20071,20101,20130,20160,20190,20219,20249,20279,20308,20338,20367,20396,20426,20455,20485,20514,20544,20573,20603,20633,20662,20692,20721,20751,20780,20810,20839,20869,20898,20928,20957,20987,21016,21046,21076,21105,21135,21164,21194,21223,21253,21282,21312,21341,21371,21400,21430,21459,21489,21519,21548,21578,21607,21637,21666,21696,21725,21754,21784,21813,21843,21873,21902,21932,21962,21991,22021,22050,22080,22109,22138,22168,22197,22227,22256,22286,22316,22346,22375,22405,22434,22464,22493,22522,22552,22581,22611,22640,22670,22700,22730,22759,22789,22818,22848,22877,22906,22936,22965,22994,23024,23054,23083,23113,23143,23173,23202,23232,23261,23290,23320,23349,23379,23408,23438,23467,23497,23527,23556,23586,23616,23645,23674,23704,23733,23763,23792,23822,23851,23881,23910,23940,23970,23999,24029,24058,24088,24117,24147,24176,24206,24235,24265,24294,24324,24353,24383,24413,24442,24472,24501,24531,24560,24590,24619,24648,24678,24707,24737,24767,24796,24826,24856,24885,24915,24944,24974,25003,25032,25062,25091,25121,25150,25180,25210,25240,25269,25299,25328,25358,25387,25416,25446,25475,25505,25534,25564,25594,25624,25653,25683,25712,25742,25771,25800,25830,25859,25888,25918,25948,25977,26007,26037,26067,26096,26126,26155,26184,26214,26243,26272,26302,26332,26361,26391,26421,26451,26480,26510,26539,26568,26598,26627,26656,26686,26715,26745,26775,26805,26834,26864,26893,26923,26952,26982,27011,27041,27070,27099,27129,27159,27188,27218,27248,27277,27307,27336,27366,27395,27425,27454,27484,27513,27542,27572,27602,27631,27661,27691,27720,27750,27779,27809,27838,27868,27897,27926,27956,27985,28015,28045,28074,28104,28134,28163,28193,28222,28252,28281,28310,28340,28369,28399,28428,28458,28488,28517,28547,28577,28607,28636,28665,28695,28724,28754,28783,28813,28843,28872,28901,28931,28960,28990,29019,29049,29078,29108,29137,29167,29196,29226,29255,29285,29315,29345,29375,29404,29434,29463,29492,29522,29551,29580,29610,29640,29669,29699,29729,29759,29788,29818,29847,29876,29906,29935,29964,29994,30023,30053,30082,30112,30141,30171,30200,30230,30259,30289,30318,30348,30378,30408,30437,30467,30496,30526,30555,30585,30614,30644,30673,30703,30732,30762,30791,30821,30850,30880,30909,30939,30968,30998,31027,31057,31086,31116,31145,31175,31204,31234,31263,31293,31322,31352,31381,31411,31441,31471,31500,31530,31559,31589,31618,31648,31676,31706,31736,31766,31795,31825,31854,31884,31913,31943,31972,32002,32031,32061,32090,32120,32150,32180,32209,32239,32268,32298,32327,32357,32386,32416,32445,32475,32504,32534,32563,32593,32622,32652,32681,32711,32740,32770,32799,32829,32858,32888,32917,32947,32976,33006,33035,33065,33094,33124,33153,33183,33213,33243,33272,33302,33331,33361,33390,33420,33450,33479,33509,33539,33568,33598,33627,33657,33686,33716,33745,33775,33804,33834,33863,33893,33922,33952,33981,34011,34040,34069,34099,34128,34158,34187,34217,34247,34277,34306,34336,34365,34395,34424,34454,34483,34512,34542,34571,34601,34631,34660,34690,34719,34749,34778,34808,34837,34867,34896,34926,34955,34985,35015,35044,35074,35103,35133,35162,35192,35222,35251,35280,35310,35340,35370,35399,35429,35458,35488,35517,35547,35576,35605,35635,35665,35694,35723,35753,35782,35811,35841,35871,35901,35930,35960,35989,36019,36048,36078,36107,36136,36166,36195,36225,36254,36284,36314,36343,36373,36403,36433,36462,36492,36521,36551,36580,36610,36639,36669,36698,36728,36757,36786,36816,36845,36875,36904,36934,36963,36993,37022,37052,37081,37111,37141,37170,37200,37229,37259,37288,37318,37347,37377,37406,37436,37465,37495,37524,37554,37584,37613,37643,37672,37701,37731,37760,37790,37819,37849,37878,37908,37938,37967,37997,38027,38056,38085,38115,38144,38174,38203,38233,38262,38292,38322,38351,38381,38410,38440,38469,38499,38528,38558,38587,38617,38646,38676,38705,38735,38764,38794,38823,38853,38882,38912,38941,38971,39001,39030,39059,39089,39118,39148,39178,39208,39237,39267,39297,39326,39355,39385,39414,39444,39473,39503,39532,39562,39592,39621,39650,39680,39709,39739,39768,39798,39827,39857,39886,39916,39946,39975,40005,40035,40064,40094,40123,40153,40182,40212,40241,40271,40300,40330,40359,40389,40418,40448,40477,40507,40536,40566,40595,40625,40655,40685,40714,40744,40773,40803,40832,40862,40892,40921,40951,40980,41009,41039,41068,41098,41127,41157,41186,41216,41245,41275,41304,41334,41364,41393,41422,41452,41481,41511,41540,41570,41599,41629,41658,41688,41718,41748,41777,41807,41836,41865,41894,41924,41953,41983,42012,42042,42072,42102,42131,42161,42190,42220,42249,42279,42308,42337,42367,42397,42426,42456,42485,42515,42545,42574,42604,42633,42662,42692,42721,42751,42780,42810,42839,42869,42899,42929,42958,42988,43017,43046,43076,43105,43135,43164,43194,43223,43253,43283,43312,43342,43371,43401,43430,43460,43489,43519,43548,43578,43607,43637,43666,43696,43726,43755,43785,43814,43844,43873,43903,43932,43962,43991,44021,44050,44080,44109,44139,44169,44198,44228,44258,44287,44317,44346,44375,44405,44434,44464,44493,44523,44553,44582,44612,44641,44671,44700,44730,44759,44788,44818,44847,44877,44906,44936,44966,44996,45025,45055,45084,45114,45143,45172,45202,45231,45261,45290,45320,45350,45380,45409,45439,45468,45498,45527,45556,45586,45615,45644,45674,45704,45733,45763,45793,45823,45852,45882,45911,45940,45970,45999,46028,46058,46088,46117,46147,46177,46206,46236,46265,46295,46324,46354,46383,46413,46442,46472,46501,46531,46560,46590,46620,46649,46679,46708,46738,46767,46797,46826,46856,46885,46915,46944,46974,47003,47033,47063,47092,47122,47151,47181,47210,47240,47269,47298,47328,47357,47387,47417,47446,47476,47506,47535,47565,47594,47624,47653,47682,47712,47741,47771,47800,47830,47860,47890,47919,47949,47978,48008,48037,48066,48096,48125,48155,48184,48214,48244,48273,48303,48333,48362,48392,48421,48450,48480,48509,48538,48568,48598,48627,48657,48687,48717,48746,48776,48805,48834,48864,48893,48922,48952,48982,49011,49041,49071,49100,49130,49160,49189,49218,49248,49277,49306,49336,49365,49395,49425,49455,49484,49514,49543,49573,49602,49632,49661,49690,49720,49749,49779,49809,49838,49868,49898,49927,49957,49986,50016,50045,50075,50104,50133,50163,50192,50222,50252,50281,50311,50340,50370,50400,50429,50459,50488,50518,50547,50576,50606,50635,50665,50694,50724,50754,50784,50813,50843,50872,50902,50931,50960,50990,51019,51049,51078,51108,51138,51167,51197,51227,51256,51286,51315,51345,51374,51403,51433,51462,51492,51522,51552,51582,51611,51641,51670,51699,51729,51758,51787,51816,51846,51876,51906,51936,51965,51995,52025,52054,52083,52113,52142,52171,52200,52230,52260,52290,52319,52349,52379,52408,52438,52467,52497,52526,52555,52585,52614,52644,52673,52703,52733,52762,52792,52822,52851,52881,52910,52939,52969,52998,53028,53057,53087,53116,53146,53176,53205,53235,53264,53294,53324,53353,53383,53412,53441,53471,53500,53530,53559,53589,53619,53648,53678,53708,53737,53767,53796,53825,53855,53884,53913,53943,53973,54003,54032,54062,54092,54121,54151,54180,54209,54239,54268,54297,54327,54357,54387,54416,54446,54476,54505,54535,54564,54593,54623,54652,54681,54711,54741,54770,54800,54830,54859,54889,54919,54948,54977,55007,55036,55066,55095,55125,55154,55184,55213,55243,55273,55302,55332,55361,55391,55420,55450,55479,55508,55538,55567,55597,55627,55657,55686,55716,55745,55775,55804,55834,55863,55892,55922,55951,55981,56011,56040,56070,56100,56129,56159,56188,56218,56247,56276,56306,56335,56365,56394,56424,56454,56483,56513,56543,56572,56601,56631,56660,56690,56719,56749,56778,56808,56837,56867,56897,56926,56956,56985,57015,57044,57074,57103,57133,57162,57192,57221,57251,57280,57310,57340,57369,57399,57429,57458,57487,57517,57546,57576,57605,57634,57664,57694,57723,57753,57783,57813,57842,57871,57901,57930,57959,57989,58018,58048,58077,58107,58137,58167,58196,58226,58255,58285,58314,58343,58373,58402,58432,58461,58491,58521,58551,58580,58610,58639,58669,58698,58727,58757,58786,58816,58845,58875,58905,58934,58964,58994,59023,59053,59082,59111,59141,59170,59200,59229,59259,59288,59318,59348,59377,59407,59436,59466,59495,59525,59554,59584,59613,59643,59672,59702,59731,59761,59791,59820,59850,59879,59909,59939,59968,59997,60027,60056,60086,60115,60145,60174,60204,60234,60264,60293,60323,60352,60381,60411,60440,60469,60499,60528,60558,60588,60618,60648,60677,60707,60736,60765,60795,60824,60853,60883,60912,60942,60972,61002,61031,61061,61090,61120,61149,61179,61208,61237,61267,61296,61326,61356,61385,61415,61445,61474,61504,61533,61563,61592,61621,61651,61680,61710,61739,61769,61799,61828,61858,61888,61917,61947,61976,62006,62035,62064,62094,62123,62153,62182,62212,62242,62271,62301,62331,62360,62390,62419,62448,62478,62507,62537,62566,62596,62625,62655,62685,62715,62744,62774,62803,62832,62862,62891,62921,62950,62980,63009,63039,63069,63099,63128,63157,63187,63216,63246,63275,63305,63334,63363,63393,63423,63453,63482,63512,63541,63571,63600,63630,63659,63689,63718,63747,63777,63807,63836,63866,63895,63925,63955,63984,64014,64043,64073,64102,64131,64161,64190,64220,64249,64279,64309,64339,64368,64398,64427,64457,64486,64515,64545,64574,64603,64633,64663,64692,64722,64752,64782,64811,64841,64870,64899,64929,64958,64987,65017,65047,65076,65106,65136,65166,65195,65225,65254,65283,65313,65342,65371,65401,65431,65460,65490,65520,65549,65579,65608,65638,65667,65697,65726,65755,65785,65815,65844,65874,65903,65933,65963,65992,66022,66051,66081,66110,66140,66169,66199,66228,66258,66287,66317,66346,66376,66405,66435,66465,66494,66524,66553,66583,66612,66641,66671,66700,66730,66760,66789,66819,66849,66878,66908,66937,66967,66996,67025,67055,67084,67114,67143,67173,67203,67233,67262,67292,67321,67351,67380,67409,67439,67468,67497,67527,67557,67587,67617,67646,67676,67705,67735,67764,67793,67823,67852,67882,67911,67941,67971,68e3,68030,68060,68089,68119,68148,68177,68207,68236,68266,68295,68325,68354,68384,68414,68443,68473,68502,68532,68561,68591,68620,68650,68679,68708,68738,68768,68797,68827,68857,68886,68916,68946,68975,69004,69034,69063,69092,69122,69152,69181,69211,69240,69270,69300,69330,69359,69388,69418,69447,69476,69506,69535,69565,69595,69624,69654,69684,69713,69743,69772,69802,69831,69861,69890,69919,69949,69978,70008,70038,70067,70097,70126,70156,70186,70215,70245,70274,70303,70333,70362,70392,70421,70451,70481,70510,70540,70570,70599,70629,70658,70687,70717,70746,70776,70805,70835,70864,70894,70924,70954,70983,71013,71042,71071,71101,71130,71159,71189,71218,71248,71278,71308,71337,71367,71397,71426,71455,71485,71514,71543,71573,71602,71632,71662,71691,71721,71751,71781,71810,71839,71869,71898,71927,71957,71986,72016,72046,72075,72105,72135,72164,72194,72223,72253,72282,72311,72341,72370,72400,72429,72459,72489,72518,72548,72577,72607,72637,72666,72695,72725,72754,72784,72813,72843,72872,72902,72931,72961,72991,73020,73050,73080,73109,73139,73168,73197,73227,73256,73286,73315,73345,73375,73404,73434,73464,73493,73523,73552,73581,73611,73640,73669,73699,73729,73758,73788,73818,73848,73877,73907,73936,73965,73995,74024,74053,74083,74113,74142,74172,74202,74231,74261,74291,74320,74349,74379,74408,74437,74467,74497,74526,74556,74586,74615,74645,74675,74704,74733,74763,74792,74822,74851,74881,74910,74940,74969,74999,75029,75058,75088,75117,75147,75176,75206,75235,75264,75294,75323,75353,75383,75412,75442,75472,75501,75531,75560,75590,75619,75648,75678,75707,75737,75766,75796,75826,75856,75885,75915,75944,75974,76003,76032,76062,76091,76121,76150,76180,76210,76239,76269,76299,76328,76358,76387,76416,76446,76475,76505,76534,76564,76593,76623,76653,76682,76712,76741,76771,76801,76830,76859,76889,76918,76948,76977,77007,77036,77066,77096,77125,77155,77185,77214,77243,77273,77302,77332,77361,77390,77420,77450,77479,77509,77539,77569,77598,77627,77657,77686,77715,77745,77774,77804,77833,77863,77893,77923,77952,77982,78011,78041,78070,78099,78129,78158,78188,78217,78247,78277,78307,78336,78366,78395,78425,78454,78483,78513,78542,78572,78601,78631,78661,78690,78720,78750,78779,78808,78838,78867,78897,78926,78956,78985,79015,79044,79074,79104,79133,79163,79192,79222,79251,79281,79310,79340,79369,79399,79428,79458,79487,79517,79546,79576,79606,79635,79665,79695,79724,79753,79783,79812,79841,79871,79900,79930,79960,79990]});var het=ye((rTr,fet)=>{"use strict";fet.exports=kv();XQe();ZQe();YQe();KQe();JQe();$Qe();QQe();eet();ret();net();aet();oet();set();uet();cet()});var _et=ye((iTr,yet)=>{"use strict";var vet=het(),pC=Dr(),pet=fs(),Ztr=pet.EPOCHJD,Ytr=pet.ONEDAY,kQ={valType:"enumerated",values:pC.sortObjectKeys(vet.calendars),editType:"calc",dflt:"gregorian"},get=function(e,t,r,n){var i={};return i[r]=kQ,pC.coerce(e,t,i,r,n)},Ktr=function(e,t,r,n){for(var i=0;i<r.length;i++)get(e,t,r[i]+"calendar",n.calendar)},Jtr={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"},$tr={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"},Qtr={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"]},O9="##",err={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:O9,w:O9,c:{0:"D M d %X yyyy","-":"D M d %X yyyy"},x:{0:"mm/dd/yyyy","-":"mm/dd/yyyy"}};function trr(e,t,r){for(var n=Math.floor((t+.05)/Ytr)+Ztr,i=met(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=err[s],u?(u===O9?c=O9:c=i.formatDate(u[o]),e=e.slice(0,a)+c+e.slice(a+l),a+=c.length):a+=l;return e}var det={};function met(e){var t=det[e];return t||(t=det[e]=vet.instance(e),t)}function gC(e){return pC.extendFlat({},kQ,{description:e})}function CQ(e){return"Sets the calendar system to use with `"+e+"` date data."}var EQ={xcalendar:gC(CQ("x"))},ny=pC.extendFlat({},EQ,{ycalendar:gC(CQ("y"))}),MQ=pC.extendFlat({},ny,{zcalendar:gC(CQ("z"))}),iS=gC(["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(" "));yet.exports={moduleType:"component",name:"calendars",schema:{traces:{scatter:ny,bar:ny,box:ny,heatmap:ny,contour:ny,histogram:ny,histogram2d:ny,histogram2dcontour:ny,scatter3d:MQ,surface:MQ,mesh3d:MQ,scattergl:ny,ohlc:EQ,candlestick:EQ},layout:{calendar:gC(["Sets the default calendar system to use for interpreting and","displaying dates throughout the plot."].join(" "))},subplots:{xaxis:{calendar:iS},yaxis:{calendar:iS},scene:{xaxis:{calendar:iS},yaxis:{calendar:iS},zaxis:{calendar:iS}},polar:{radialaxis:{calendar:iS}}}},layoutAttributes:kQ,handleDefaults:get,handleTraceDefaults:Ktr,CANONICAL_SUNDAY:$tr,CANONICAL_TICK:Jtr,DFLTRANGE:Qtr,getCal:met,worldCalFmt:trr}});var bet=ye((nTr,xet)=>{"use strict";xet.exports=_et()});var rrr=ye((aTr,Tet)=>{var wet=iye();wet.register([o1e(),X1e(),sxe(),kxe(),Vxe(),qbe(),Jbe(),q2e(),dwe(),Ywe(),z3e(),ZEe(),Oke(),k6e(),gLe(),XLe(),mPe(),VIe(),s8e(),S8e(),O8e(),J8e(),hRe(),kRe(),rFe(),wFe(),BBe(),BNe(),YUe(),bVe(),PGe(),WGe(),gHe(),kje(),Gje(),dWe(),wXe(),WXe(),EZe(),YYe(),_Ke(),NKe(),hJe(),MJe(),S$e(),H$e(),uQe(),HQe(),bet()]);Tet.exports=wet});return rrr();})();
/*!
* pad-left <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.
*/
/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh <https://feross.org/opensource> */
/*!
* The buffer module from node.js, for the browser.
*
* @author Feross Aboukhadijeh <https://feross.org>
* @license MIT
*/
/*!
* Determine if an object is a Buffer
*
* @author Feross Aboukhadijeh <https://feross.org>
* @license MIT
*/
/*! 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;
}));</script> <div id="e261a6a6-6f07-4f6e-af5b-045bf00e2dfd" class="plotly-graph-div" style="height:100%; width:100%;"></div> <script type="text/javascript"> window.PLOTLYENV=window.PLOTLYENV || {}; if (document.getElementById("e261a6a6-6f07-4f6e-af5b-045bf00e2dfd")) { Plotly.newPlot( "e261a6a6-6f07-4f6e-af5b-045bf00e2dfd", [{"close":{"dtype":"f8","bdata":"9ihcj0LypkBcj8L1qO+mQM3MzMxM9qZACtejcL30pkDhehSuR\u002fmmQDMzMzMz+6ZA7FG4HoXzpkD2KFyPwvGmQFK4HoVr8qZA4XoUrsf2pkDXo3A9ivamQBSuR+H6+qZArkfhepT6pkApXI\u002fCdemmQMP1KFyP7qZAZmZmZubmpkDNzMzMTOqmQAAAAAAA7qZAzczMzEzwpkBmZmZm5vCmQDMzMzOz8qZAKVyPwnX0pkBmZmZm5vGmQHE9Ctcj8qZAUrgehevzpkApXI\u002fCdfCmQOF6FK7H6aZAj8L1KNznpkCF61G4nuymQB+F61G476ZAH4XrUTjwpkAUrkfhevGmQMP1KFyP6KZAPQrXo3DqpkDXo3A9CuymQEjhehSu8KZAXI\u002fC9ajopkC4HoXr0eWmQIXrUbie36ZAexSuR+HjpkApXI\u002fC9eimQKRwPQrX7qZAKVyPwvXvpkCF61G4nu6mQPYoXI9C6aZAXI\u002fC9ajkpkCamZmZmeqmQIXrUbge9KZArkfhehTopkDhehSuR+imQJqZmZmZ36ZAKVyPwvXipkBcj8L1qOOmQB+F61G43aZA16NwPYrcpkC4HoXr0d2mQAAAAAAA2qZAw\u002fUoXA\u002fYpkAAAAAAANamQKRwPQrX4aZAhetRuJ75pkDD9Shcj\u002famQArXo3C986ZAzczMzMzzpkDD9Shcj\u002femQK5H4XoUBqdAXI\u002fC9SgNp0DhehSuRw2nQNejcD0KEKdAAAAAAIAFp0AUrkfh+gWnQD0K16PwCqdAH4XrUbgUp0CkcD0K1xWnQIXrUbgeFadAexSuR+ETp0B7FK5H4ROnQClcj8J1B6dAPQrXo3AHp0BxPQrXIwGnQDMzMzMzAqdAj8L1KFwEp0DsUbgeBQWnQHE9Ctej\u002fKZACtejcD36pkDNzMzMTP2mQAAAAAAA8qZAH4XrUbjxpkCF61G4nvOmQOF6FK7H9qZAuB6F69H5pkDhehSux\u002fimQFK4HoXr+6ZAhetRuB7+pkDsUbgeBQSnQJqZmZkZA6dAuB6F61H\u002fpkAfhetROAGnQOxRuB4FBqdAj8L1KFwJp0BI4XoULganQOxRuB6FB6dAmpmZmZkEp0DhehSuRwGnQPYoXI9CBadASOF6FC4Kp0DsUbgeBQ2nQD0K16PwCKdAMzMzMzMBp0C4HoXrUQOnQM3MzMxMBqdASOF6FK4Jp0BI4XoUrgqnQAAAAAAADKdA7FG4HoUNp0CkcD0K1wqnQClcj8J1PKdAw\u002fUoXI9Pp0BSuB6F61enQArXo3C9XqdAMzMzMzNCp0DXo3A9Cj+nQPYoXI9CPadAH4XrUbhKp0D2KFyPwkanQAAAAAAATadAH4XrUThEp0B7FK5HYUGnQJqZmZkZRqdAKVyPwnVGp0BI4XoULkKnQOF6FK5HPKdASOF6FK41p0BxPQrXozmnQClcj8J1PadAhetRuJ49p0DD9Shcj0SnQLgehevRR6dA7FG4HoVNp0CF61G4HlGnQOxRuB4FSqdAmpmZmRlOp0CuR+F6lEqnQOF6FK7HRqdAuB6F69FEp0AzMzMzs0anQGZmZmbmQ6dAcT0K1yNFp0BxPQrXo0unQK5H4XoUSqdAzczMzEw8p0CkcD0KV0CnQBSuR+H6PqdAUrgehWs\u002fp0AAAAAAgEKnQIXrUbgePadAKVyPwnU\u002fp0DD9Shcjz+nQEjhehQuQ6dAAAAAAABGp0AUrkfhekSnQNejcD0KTKdAPQrXo\u002fA7p0AfhetRuEOnQLgehetRSqdA16NwPYpGp0DXo3A9Ck2nQIXrUbieTqdAhetRuB5Op0ApXI\u002fCdUunQI\u002fC9ShcSqdAPQrXo\u002fBHp0B7FK5H4UKnQOxRuB6FQ6dAmpmZmRlFp0BxPQrXo0enQI\u002fC9SjcS6dAPQrXo\u002fBLp0AK16NwvUunQDMzMzMzUKdAhetRuB5Tp0CuR+F6FFenQGZmZmbmT6dAAAAAAABWp0CamZmZmVinQIXrUbieWadA16NwPYpXp0BSuB6F61KnQGZmZmbmLqdACtejcD0yp0DD9ShcjzunQLgehetRRKdA16NwPYpDp0DNzMzMzDKnQFK4HoVrLqdAMzMzM7Mmp0BxPQrXozWnQHsUrkfhTKdA4XoUrkdtp0BSuB6Fa2anQFyPwvUoP6dAXI\u002fC9ahAp0DNzMzMzDynQM3MzMxMO6dAcT0K1yM6p0AUrkfhekSnQKRwPQrXPqdACtejcL1Kp0CF61G4Hk6nQAAAAAAAWKdAAAAAAABgp0AUrkfh+linQM3MzMxMR6dAZmZmZmZNp0BxPQrXo0inQI\u002fC9ShcXadAw\u002fUoXI9ap0DsUbgeBV2nQI\u002fC9ShcTadASOF6FC5Hp0B7FK5HYUSnQHE9CtcjRadAUrgehetCp0ApXI\u002fCdUunQMP1KFyPTqdAzczMzMxOp0DD9Shcj0SnQB+F61G4P6dAH4XrUThKp0BxPQrXI0mnQB+F61G4S6dArkfhehRRp0CuR+F6FEinQB+F61E4NKdAzczMzMw+p0C4HoXrUT+nQClcj8L1P6dACtejcL05p0BxPQrXozinQLgehetRPKdAUrgehWs\u002fp0D2KFyPQjynQPYoXI9CPadAmpmZmZk6p0AAAAAAADqnQMP1KFwPNadAhetRuJ4rp0DsUbgeBTWnQFK4HoXrKadA7FG4HoUSp0DD9ShcjxSnQI\u002fC9SjcGqdArkfhehQop0AUrkfhejCnQI\u002fC9SjcMadAUrgehWsvp0A9Ctej8CunQLgehevRMadAXI\u002fC9Sg3p0BxPQrXozSnQBSuR+H6M6dAcT0K1yMvp0CF61G4HjCnQGZmZmZmNadA16NwPYovp0BmZmZm5i2nQB+F61G4LadAzczMzEwop0B7FK5H4SanQOxRuB4FJadAmpmZmRkbp0AK16NwvRqnQM3MzMzMHadAuB6F69Eep0CuR+F6FB+nQI\u002fC9ShcJ6dAj8L1KNwlp0AfhetROCGnQEjhehSuI6dA9ihcj8Ijp0CkcD0K1yWnQOF6FK5HKKdA9ihcj8Itp0AAAAAAgC6nQEjhehSuMKdAKVyPwnUvp0DXo3A9CjSnQHE9CtcjMadAj8L1KNwzp0AK16NwPTGnQClcj8L1L6dA9ihcj0Irp0AAAAAAACqnQKRwPQpXLadAAAAAAAAsp0DXo3A9CjGnQFyPwvUoMKdAKVyPwnU0p0DNzMzMzDSnQBSuR+H6NqdAPQrXo\u002fAzp0B7FK5HYTinQIXrUbieNadAAAAAAIA0p0BmZmZm5jOnQHsUrkdhNadAXI\u002fC9ag4p0A9CtejcDinQGZmZmZmL6dAzczMzMwrp0BxPQrXIyqnQArXo3A9JadAexSuR2Esp0AzMzMzMzCnQKRwPQrXL6dAMzMzM7Msp0AUrkfhejCnQMP1KFwPLadACtejcD0rp0DNzMzMTCqnQClcj8L1J6dAFK5H4folp0AzMzMzsy+nQJqZmZmZSadA7FG4HoVFp0DNzMzMTEOnQEjhehSuTadA7FG4HoVEp0BmZmZm5kmnQOxRuB6FSqdArkfhepRGp0DNzMzMzESnQAAAAACAR6dAZmZmZmZCp0AK16NwPUmnQD0K16NwR6dAZmZmZuZGp0AzMzMzM0WnQKRwPQrXRqdAuB6F69FAp0CamZmZGUOnQOF6FK5HQKdAFK5H4fpHp0CuR+F6FEinQArXo3A9R6dAFK5H4XpKp0CkcD0KV0enQI\u002fC9ShcQadAFK5H4Xo9p0BSuB6F6zqnQFyPwvUoOKdAUrgehWsrp0DNzMzMTDCnQLgehevRMKdAAAAAAAAyp0B7FK5HYTKnQLgehetRNadAH4XrUbgzp0AUrkfhejSnQArXo3C9OqdAPQrXo\u002fA0p0AAAAAAgDSnQOF6FK7HMqdArkfhepQ2p0C4HoXr0TSnQHE9CtcjNadAH4XrUbgzp0BmZmZmZi+nQDMzMzOzOadA9ihcj8I5p0CPwvUoXDinQArXo3C9OadA4XoUrsc9p0C4HoXrUUOnQGZmZmZmP6dA4XoUrsdBp0CF61G4nkKnQArXo3C9QadAZmZmZmY9p0CkcD0KVzunQHE9CtcjPadA16NwPQpAp0DXo3A9CkGnQMP1KFwPP6dApHA9Ctc\u002fp0CamZmZmT+nQKRwPQpXQqdAXI\u002fC9ag8p0AfhetRODynQDMzMzOzPadAuB6F69E8p0DXo3A9CjynQArXo3C9OKdA7FG4HgU7p0DsUbgehTynQIXrUbgeN6dAXI\u002fC9Sg5p0C4HoXr0TunQArXo3C9OKdA9ihcj0I9p0AAAAAAAD6nQM3MzMzMPKdAuB6F61E+p0DXo3A9Cj+nQHE9CtejQadArkfhepREp0Bcj8L1qEGnQOF6FK7HPqdAhetRuB49p0BxPQrXIz+nQJqZmZkZOqdAcT0K16Mxp0CamZmZmSunQK5H4XoULadAw\u002fUoXI8vp0CF61G4HjCnQClcj8L1NqdAmpmZmZk6p0CamZmZGTmnQB+F61G4OKdA7FG4HgU3p0CPwvUoXDinQHsUrkfhNqdAAAAAAAA8p0DsUbgeBT2nQDMzMzMzPadAcT0K16NAp0Bcj8L1KD+nQK5H4XqUPqdA16NwPYpCp0DsUbgehUOnQB+F61E4RqdA4XoUrkdEp0BI4XoULkGnQAAAAAAAP6dAH4XrUTg\u002fp0BmZmZmZkOnQOF6FK7HRKdAzczMzMxCp0BmZmZmZkenQClcj8J1SKdAUrgehetSp0CkcD0KV1GnQFyPwvUoUqdACtejcL1Sp0B7FK5HYVunQDMzMzMzWqdAH4XrUbhhp0D2KFyPQm2nQMP1KFyPaqdAuB6F69Fop0ApXI\u002fC9XCnQClcj8L1ZadAhetRuJ5qp0Bcj8L1qGanQOxRuB4FbqdAw\u002fUoXI9qp0DNzMzMTGqnQHE9CtcjaKdAKVyPwnVcp0AUrkfh+lunQHsUrkfhV6dAMzMzM7NOp0CuR+F6FFSnQOF6FK5HWadA16NwPQpYp0DsUbgeBVqnQI\u002fC9ShcYqdAZmZmZuZkp0DD9ShcD2KnQB+F61E4W6dAzczMzMxWp0CF61G4nlunQI\u002fC9ShcX6dA4XoUrkdsp0Bcj8L1KGenQBSuR+H6cadASOF6FC6Qp0AfhetROIynQOF6FK5Hg6dACtejcD2Dp0AAAAAAAICnQJqZmZkZb6dACtejcL1pp0DD9ShcD2qnQI\u002fC9SjcWKdAhetRuB5dp0AUrkfhemGnQLgehetRYKdAAAAAAABUp0Bcj8L1KEWnQLgehetRPKdAzczMzMw4p0BSuB6Faz+nQHsUrkdhOqdAAAAAAABIp0AzMzMzM0enQOF6FK5HU6dAhetRuB5Pp0CuR+F6lFCnQA=="},"decreasing":{"line":{"color":"#ef5350"}},"high":{"dtype":"f8","bdata":"KVyPwvXypkBSuB6Fa\u002fGmQLgehetR9qZAuB6F61H+pkAAAAAAAPqmQDMzMzMz+6ZASOF6FC77pkAUrkfhevamQFK4HoXr9KZAXI\u002fC9aj3pkA9CtejcPimQI\u002fC9Shc\u002faZAAAAAAAD+pkBxPQrXI\u002fymQJqZmZmZ76ZAmpmZmZnupkDD9Shcj+qmQM3MzMzM8KZAXI\u002fC9SjypkC4HoXrUfOmQMP1KFyP9aZAexSuR2H2pkDD9Shcj\u002fmmQHsUrkdh9qZAFK5H4Xr0pkAK16NwvfWmQD0K16Pw8qZAPQrXo\u002fDrpkD2KFyPwuymQD0K16Nw8KZAexSuR+HxpkD2KFyPwvOmQDMzMzMz8qZAAAAAAIDrpkC4HoXrUfGmQEjhehSu8KZArkfhepTwpkAfhetROOmmQFyPwvWo6KZAZmZmZubjpkAAAAAAAOymQAAAAAAA9KZAFK5H4frxpkAK16NwvfCmQB+F61E48KZAAAAAAIDrpkAAAAAAAOumQGZmZmZm9KZAzczMzEz1pkCkcD0KV+qmQM3MzMxM6KZAmpmZmZnkpkBI4XoULuWmQFyPwvWo46ZAuB6F69HepkDD9ShcD+CmQJqZmZmZ36ZAexSuR+HbpkBcj8L1KNqmQKRwPQrX4aZAUrgehev5pkAAAAAAgP+mQHsUrkdh+aZA7FG4HoX1pkDD9Shcj\u002femQFK4HoXrCadAhetRuB4Up0C4HoXr0RWnQD0K16PwE6dAcT0K16MQp0AAAAAAAAinQD0K16PwCqdAj8L1KFwWp0DXo3A9ihqnQHE9CtejGKdAw\u002fUoXA8Xp0AzMzMzsxenQHsUrkdhFqdA16NwPQoLp0B7FK5HYQinQFyPwvWoBadAj8L1KFwEp0DsUbgeBQWnQOxRuB6FBadAAAAAAAD9pkAfhetROP6mQLgehetR\u002faZArkfhehT2pkAzMzMzM\u002famQArXo3C996ZAZmZmZub7pkApXI\u002fC9fqmQClcj8L1\u002fKZAcT0K16MCp0BSuB6FawWnQOF6FK5HDadAAAAAAAAEp0AAAAAAAAKnQM3MzMzMCqdAFK5H4foJp0AAAAAAAAynQAAAAAAACqdAw\u002fUoXA8Ip0CamZmZmQSnQAAAAAAABqdAuB6F69EKp0DsUbgeBQ+nQAAAAAAAFqdAj8L1KFwJp0BSuB6FawWnQOF6FK7HB6dArkfhehQNp0ApXI\u002fC9Q2nQAAAAAAADKdA9ihcj0IOp0DXo3A9ig2nQB+F61E4PadAw\u002fUoXA9Vp0B7FK5H4XSnQLgehetRbKdAmpmZmZlhp0DD9Shcj0mnQB+F61G4SqdAPQrXo3BRp0AfhetROFOnQAAAAAAATadAZmZmZuZOp0DNzMzMzEWnQFyPwvWoR6dAH4XrUbhKp0AK16NwPUinQPYoXI9CQqdA16NwPQo\u002fp0AzMzMzsz2nQMP1KFyPQadAAAAAAIBDp0DD9Shcj0SnQM3MzMxMSadAhetRuJ5Wp0AfhetROFOnQIXrUbieVqdArkfhepRQp0AAAAAAAFCnQM3MzMxMT6dAFK5H4XpKp0CPwvUoXEmnQB+F61G4RqdAmpmZmZlJp0AzMzMzs0ynQOxRuB4FUKdArkfhehRKp0CuR+F6FEGnQJqZmZmZQKdAmpmZmRlCp0AzMzMzs0OnQAAAAACAQqdAzczMzMxEp0C4HoXr0UGnQBSuR+F6Q6dAhetRuJ5Ip0AfhetROEanQLgehetRT6dA7FG4HgVMp0AfhetRuEOnQClcj8J1TKdApHA9CldKp0CamZmZmU6nQM3MzMzMT6dAFK5H4fpRp0D2KFyPwlCnQJqZmZkZUKdAj8L1KFxKp0A9Ctej8EenQOxRuB6FQ6dAKVyPwnVFp0Bcj8L1qEenQFyPwvWoTKdAKVyPwvVTp0CamZmZmVWnQJqZmZkZUqdAj8L1KFxVp0DsUbgehV2nQEjhehSuW6dAzczMzExXp0D2KFyPQlmnQOF6FK7HW6dAexSuR2Fap0AzMzMzM1inQD0K16PwUqdA9ihcj8I9p0C4HoXrUUGnQK5H4XqURKdAPQrXo\u002fBWp0DD9Shcj0KnQAAAAAAAOKdAcT0K1yNEp0AfhetRuDanQHsUrkfhTKdAexSuR+GAp0D2KFyPQnanQKRwPQrXcqdA4XoUrkdKp0BxPQrXI0mnQNejcD2KSKdAj8L1KNxCp0DXo3A9Ck2nQMP1KFwPT6dArkfhepRRp0AUrkfh+k+nQAAAAAAAWKdAUrgehetjp0DNzMzMTGinQOxRuB6FX6dAuB6F69FQp0D2KFyPwlSnQI\u002fC9ShcXadAMzMzMzNjp0AAAAAAAGGnQClcj8J1YKdAcT0K1yNTp0AAAAAAAEinQClcj8J1R6dAAAAAAABIp0Bcj8L1KE+nQEjhehSuUKdA9ihcj8JTp0AUrkfhelKnQM3MzMzMR6dAj8L1KFxLp0DNzMzMzE2nQI\u002fC9SjcS6dAcT0K1yNRp0CamZmZGVGnQK5H4XoUSKdA9ihcj8JDp0BI4XoULkSnQFyPwvWoQadAFK5H4fpDp0DhehSuxzqnQBSuR+H6PadAAAAAAIBAp0AAAAAAAEKnQAAAAACAPqdAw\u002fUoXI9Cp0Bcj8L1qDqnQKRwPQpXOqdAexSuR+E4p0DNzMzMzDinQOxRuB4FNadAUrgehespp0A9CtejcBanQNejcD2KG6dAAAAAAIAyp0AfhetRODOnQD0K16PwOqdAj8L1KNwxp0BSuB6Fay+nQAAAAACAM6dASOF6FC43p0DsUbgeBTmnQAAAAAAANqdAMzMzMzM5p0CPwvUoXDSnQGZmZmZmN6dAAAAAAAA3p0B7FK5H4TGnQM3MzMzML6dAw\u002fUoXI8wp0DD9ShcjyunQHsUrkfhJ6dA16NwPQolp0CamZmZGR2nQOF6FK7HIKdAuB6F69Ejp0BI4XoUrh+nQFK4HoXrKKdApHA9Ctcnp0CPwvUo3CWnQBSuR+H6J6dAexSuR2Emp0DsUbgehSanQAAAAAAAMKdA9ihcj8Itp0AAAAAAgC6nQNejcD0KM6dACtejcL0yp0AAAAAAgDSnQMP1KFwPNKdAZmZmZuY0p0CuR+F6FDSnQIXrUbieNadAMzMzMzMwp0D2KFyPQiunQDMzMzMzMKdAj8L1KFwtp0BI4XoULjKnQArXo3A9OKdAH4XrUTg1p0BI4XoULjenQI\u002fC9SjcPadA16NwPQo3p0AAAAAAgDinQHsUrkdhOKdArkfhepQ3p0B7FK5HYTWnQD0K16NwNadApHA9Ctc5p0AfhetRuDunQBSuR+F6OKdAj8L1KFwxp0CkcD0KVyynQNejcD0KLadASOF6FK4tp0Bcj8L1qDOnQDMzMzMzMKdApHA9Ctcvp0CF61G4njGnQAAAAACAMKdA4XoUrkcvp0CuR+F6lCunQEjhehQuK6dAexSuR+Erp0BmZmZmZjCnQM3MzMzMSqdAFK5H4XpNp0CF61G4HkanQEjhehSuTadAAAAAAABQp0AAAAAAAE6nQAAAAAAATqdA4XoUrkdLp0C4HoXrUUenQHE9CtejR6dAAAAAAIBHp0DXo3A9ikmnQGZmZmbmSadA4XoUrsdKp0BSuB6F60anQOxRuB4FS6dAhetRuJ5Mp0AAAAAAAESnQFyPwvWoRKdA7FG4HgVJp0AfhetRuEqnQMP1KFwPTadASOF6FC5Mp0D2KFyPwkynQKRwPQpXR6dAPQrXo\u002fBBp0AK16NwPT6nQNejcD2KPadASOF6FC44p0CF61G4njGnQAAAAAAAMqdAcT0K1yM0p0B7FK5HYTOnQGZmZmZmN6dAH4XrUTg2p0DsUbgehTmnQAAAAACAO6dA9ihcj8I6p0DNzMzMTDWnQDMzMzMzOKdA7FG4HgU3p0DsUbgehTinQGZmZmZmNadAXI\u002fC9ag4p0AK16NwvTOnQDMzMzOzO6dAFK5H4fo7p0BSuB6F6zqnQKRwPQpXPadAzczMzMw9p0DNzMzMzESnQFK4HoXrQ6dAj8L1KNxCp0D2KFyPwkOnQHE9CtejQqdA9ihcj8JBp0DhehSuxz2nQHE9CtcjPqdAPQrXo\u002fBAp0CuR+F6lEGnQNejcD0KQadAMzMzM7NCp0AAAAAAgECnQKRwPQpXQqdApHA9CldCp0CF61G4Hj2nQDMzMzMzPqdAKVyPwvU9p0CamZmZmT2nQMP1KFwPPKdAAAAAAAA8p0DXo3A9ijynQD0K16NwPadAH4XrUbg5p0BmZmZmZj6nQD0K16NwPadAj8L1KNw+p0DsUbgehT6nQAAAAAAAQKdAzczMzMw\u002fp0AAAAAAAECnQFyPwvUoRadA4XoUrsdEp0AfhetRuESnQFyPwvWoQadAAAAAAIBAp0AzMzMzsz+nQArXo3A9P6dAhetRuB46p0CuR+F6lDKnQI\u002fC9ShcL6dAexSuR2Exp0CuR+F6lDCnQAAAAAAAOKdAmpmZmZk6p0BI4XoUrjunQEjhehSuO6dAAAAAAAA6p0AzMzMzMzmnQMP1KFwPOadArkfhepQ\u002fp0BI4XoUrj2nQAAAAACAP6dAmpmZmRlBp0DNzMzMzEGnQKRwPQrXQKdAAAAAAABDp0CuR+F6lEenQBSuR+H6SadAAAAAAABGp0AAAAAAgESnQDMzMzOzQqdAPQrXo\u002fA\u002fp0AAAAAAAESnQJqZmZmZRadAzczMzMxEp0CuR+F6FEinQAAAAAAASqdAAAAAAABUp0D2KFyPwlenQAAAAAAAVKdAUrgehWtUp0Bcj8L1qF2nQD0K16NwXqdA9ihcj8Jmp0BmZmZmZm6nQNejcD2KbadA7FG4HgV0p0BSuB6F63KnQB+F61G4cadAmpmZmRltp0CuR+F6lG6nQOF6FK5HbqdArkfhepRwp0BSuB6F62ynQMP1KFyPbKdAj8L1KFxpp0Bcj8L1KGOnQNejcD0KX6dAAAAAAABYp0D2KFyPQlinQKRwPQpXWadA7FG4HoVbp0DsUbgehVunQGZmZmbmYqdAuB6F69Fop0A9CtejcGenQMP1KFwPYqdA7FG4HgVcp0AUrkfh+l2nQAAAAAAAYKdA9ihcj8Jtp0DNzMzMTGynQAAAAAAAcqdAFK5H4fqnp0BI4XoUrpKnQDMzMzOzkadAAAAAAACIp0DsUbgehYanQFyPwvUohadAFK5H4fp8p0AK16NwPW6nQHE9Cteja6dApHA9Ctdpp0AAAAAAAGSnQAAAAAAAYqdAAAAAAABip0AUrkfh+lanQFK4HoVrRqdAPQrXo3BFp0AAAAAAAESnQNejcD2KPqdAH4XrUThPp0AAAAAAgFCnQJqZmZmZVKdA7FG4HoVUp0BxPQrXI1inQA=="},"increasing":{"line":{"color":"#26a69a"}},"low":{"dtype":"f8","bdata":"MzMzM7PspkAUrkfh+u2mQGZmZmbm7qZAUrgehevxpkBcj8L1qPOmQDMzMzMz86ZA7FG4HgXzpkCPwvUo3PCmQFyPwvUo7KZA4XoUrsfwpkD2KFyPwvSmQLgehetR9aZACtejcD36pkCF61G4HuimQClcj8J16aZAexSuR+HmpkDsUbgeBeamQJqZmZkZ6KZAPQrXo3DtpkDhehSux+6mQAAAAAAA8KZAuB6F61HqpkCuR+F6lPGmQI\u002fC9Shc8aZA7FG4HgXxpkDXo3A9Cu+mQPYoXI9C5KZAmpmZmZnlpkCkcD0K1+emQOxRuB6F7KZAzczMzMzupkB7FK5H4e2mQBSuR+H65qZACtejcD3npkD2KFyPwummQFyPwvWo5aZAcT0K16PopkCPwvUo3OSmQDMzMzMz3aZAj8L1KFzXpkBmZmZmZuKmQClcj8L16KZA16NwPYrspkAK16NwPemmQAAAAAAA6aZAXI\u002fC9ajkpkCPwvUoXOCmQClcj8J16aZA9ihcj0LnpkAK16NwveWmQGZmZmbm1KZAKVyPwvXdpkBSuB6Fa9amQLgehetR3aZA4XoUrkfVpkCuR+F6FNymQAAAAAAA2qZAzczMzEzXpkAAAAAAgNSmQEjhehQuzKZApHA9ClfhpkBI4XoUrvKmQMP1KFyP76ZApHA9ClfxpkDD9ShcD\u002fKmQM3MzMzM9qZA16NwPYoCp0BSuB6FawunQOF6FK5HDadAUrgehWsBp0CamZmZGQKnQBSuR+H6BadAZmZmZmYKp0AzMzMzsxSnQGZmZmZmEqdAzczMzEwTp0BxPQrXoxOnQDMzMzMzB6dAMzMzMzMHp0BxPQrXIwGnQHE9CtcjAadAhetRuB77pkA9Ctej8ACnQAAAAAAA+6ZAw\u002fUoXI\u002f1pkBmZmZm5vimQOF6FK7H76ZA9ihcj8LvpkBSuB6Fa\u002fGmQHE9Ctej8aZACtejcD30pkC4HoXr0famQMP1KFwP9qZAXI\u002fC9aj7pkCF61G4Hv6mQFyPwvWoAadAFK5H4fr+pkApXI\u002fCdf6mQI\u002fC9Sjc\u002fqZA9ihcj0ICp0BI4XoULganQD0K16NwBKdAexSuR2EEp0B7FK5HYf6mQK5H4XoUAKdAcT0K1yMEp0CPwvUo3AWnQAAAAAAABqdAPQrXo3AAp0BI4XoULgGnQJqZmZmZAadAPQrXo\u002fAEp0D2KFyPQgmnQAAAAAAACqdApHA9ClcLp0DXo3A9igqnQIXrUbieCadAw\u002fUoXI86p0DXo3A9Ck+nQI\u002fC9SjcV6dAKVyPwvU0p0AAAAAAAD6nQFK4HoXrN6dAMzMzMzM6p0CkcD0KV0anQD0K16NwQqdASOF6FC5Ep0BxPQrXoz+nQBSuR+F6OadAAAAAAABCp0BSuB6FazynQHE9CtcjO6dAXI\u002fC9Sg0p0CF61G4njWnQHE9CtejOadAKVyPwnU9p0Bcj8L1KDunQLgehevRP6dAcT0K1yNHp0BmZmZm5kunQAAAAAAASqdAAAAAAABKp0CamZmZGUqnQFyPwvUoRadA7FG4HgVDp0CamZmZmUOnQGZmZmZmQadA4XoUrkdDp0CamZmZmUKnQB+F61E4RadA4XoUrsc5p0DNzMzMTDynQBSuR+H6OqdA7FG4HgU6p0AAAAAAAD6nQHsUrkdhPKdAcT0K16M7p0DNzMzMzD6nQIXrUbgePadAzczMzMxBp0D2KFyPwkGnQClcj8J1RKdAhetRuB46p0AAAAAAADqnQDMzMzMzQqdAuB6F61FFp0DXo3A9ikanQDMzMzMzSqdASOF6FK5Jp0BxPQrXI0qnQD0K16PwSKdAcT0K1yNDp0AAAAAAAEKnQIXrUbieP6dA16NwPQpBp0AAAAAAAESnQPYoXI\u002fCQ6dA16NwPQpIp0AK16NwPUinQHE9CtcjSqdAUrgehetLp0AAAAAAAFOnQAAAAACATKdAj8L1KFxOp0B7FK5HYVOnQDMzMzMzVadASOF6FC5Vp0BSuB6F61KnQAAAAAAAIKdA16NwPQosp0ApXI\u002fCdTCnQOxRuB4FOKdA16NwPQpCp0BxPQrXozCnQOF6FK5HGqdApHA9Clcmp0BI4XoULiSnQD0K16PwMadAZmZmZmZKp0AAAAAAAF6nQGZmZmZmMqdAuB6F69E1p0DD9ShcjzinQAAAAACAMadAZmZmZmYyp0A9CtejcDqnQKRwPQrXPqdAUrgehes+p0CamZmZGUOnQAAAAAAARqdAexSuR+FXp0AUrkfhelenQNejcD0KRKdArkfhehRHp0DXo3A9CkenQIXrUbieRqdAUrgehWtUp0AzMzMzs1WnQI\u002fC9ShcTadAH4XrUbhBp0CamZmZmTynQEjhehQuP6dAMzMzM7M+p0BSuB6F60KnQAAAAACAR6dA4XoUrkdLp0DXo3A9ikSnQDMzMzOzPKdAAAAAAAA+p0D2KFyPwkanQDMzMzOzRadAXI\u002fC9ShLp0B7FK5H4UanQEjhehQuKqdAcT0K16Mzp0CamZmZGTqnQEjhehSuNqdA4XoUrsc3p0DhehSuxzKnQK5H4XoUN6dAZmZmZmY2p0BI4XoULjKnQAAAAAAAOqdAmpmZmRk6p0CPwvUoXDenQOF6FK7HNKdA9ihcj8Iep0CF61G4niqnQHE9CtcjKKdAKVyPwvX\u002fpkDhehSuxwunQK5H4XqUE6dAj8L1KNwap0AK16NwPSanQKRwPQrXLqdAmpmZmZkqp0BxPQrXIyunQEjhehQuK6dAzczMzMwtp0BSuB6FazKnQOxRuB4FLadA4XoUrsctp0AAAAAAgC6nQLgehetRLqdAzczMzMwup0AAAAAAACynQDMzMzOzK6dAw\u002fUoXA8op0CkcD0K1yanQHE9CtejIKdAj8L1KFwap0B7FK5HYRanQB+F61G4EqdAw\u002fUoXA8bp0AzMzMzMxynQK5H4XoUH6dAexSuR+Ehp0AzMzMzMyGnQB+F61E4IadAFK5H4fohp0CuR+F6FCGnQLgehevRJadA16NwPYonp0AfhetROCqnQFyPwvUoLKdAzczMzMwrp0AAAAAAAC6nQArXo3C9L6dAPQrXo3Awp0AK16NwPTGnQGZmZmZmL6dApHA9Clcop0DhehSuRyinQI\u002fC9SjcKKdAPQrXo3Aop0CamZmZGSunQFK4HoXrLKdAKVyPwvUsp0BI4XoUrjKnQOxRuB6FMKdArkfhehQyp0D2KFyPQjOnQJqZmZkZNadAAAAAAAA0p0ApXI\u002fCdTOnQKRwPQpXMadAj8L1KFw1p0AUrkfh+jenQBSuR+F6LadAH4XrUTgop0CuR+F6lCinQKRwPQpXIqdAPQrXo\u002fAkp0CamZmZmSmnQFK4HoVrJKdA9ihcj8Irp0CF61G4niynQAAAAAAAKqdAuB6F61Epp0ApXI\u002fC9SenQK5H4XoUJqdA9ihcj0Iip0AUrkfheiKnQOF6FK7HLqdAcT0K16NCp0CuR+F6lD6nQM3MzMxMQ6dA7FG4HoVEp0C4HoXr0USnQPYoXI\u002fCSadAZmZmZuZEp0DXo3A9ikKnQMP1KFwPPKdACtejcD1Ap0CuR+F6lECnQFK4HoVrRKdAMzMzMzNFp0ApXI\u002fC9UGnQClcj8J1RKdAuB6F69FAp0DNzMzMTD6nQAAAAACAPqdA4XoUrkc5p0BmZmZmZkanQNejcD2KQ6dA9ihcj0JFp0DhehSux0WnQAAAAAAAPqdACtejcD08p0CkcD0K1zqnQEjhehSuNqdAAAAAAIAqp0CPwvUoXCmnQMP1KFwPLqdAuB6F69Ewp0CF61G4njCnQArXo3A9MadASOF6FC4zp0AAAAAAADGnQNejcD0KNKdAmpmZmZkzp0BI4XoULjGnQAAAAAAAMqdAuB6F69Eyp0DNzMzMzDSnQM3MzMzMMadAH4XrUbgzp0D2KFyPQi6nQHsUrkdhL6dAAAAAAIA4p0DhehSuxzanQFyPwvUoOKdAw\u002fUoXI84p0DNzMzMzD2nQGZmZmZmPqdACtejcL0+p0AAAAAAAECnQAAAAAAAQKdAzczMzEw6p0CkcD0KVzunQKRwPQpXO6dAUrgehWs8p0AK16NwvT+nQHE9CtejPKdAw\u002fUoXA8\u002fp0DhehSuRz2nQJqZmZmZP6dAzczMzMw6p0CPwvUo3DqnQDMzMzMzPKdAzczMzMw6p0DXo3A9ijqnQOxRuB6FN6dAzczMzEw5p0AAAAAAADqnQK5H4XoUN6dArkfhehQyp0DNzMzMTDmnQFyPwvWoNqdAexSuR+E4p0DsUbgeBT2nQGZmZmbmO6dA4XoUrsc7p0DNzMzMTD6nQAAAAAAAP6dArkfhehRAp0CkcD0K1zynQAAAAAAAPKdAFK5H4fo8p0AK16NwPTynQGZmZmZmOadAZmZmZmYwp0AfhetRuCSnQFK4HoXrJqdAFK5H4Xoqp0DD9Shcjy+nQMP1KFyPL6dAZmZmZuYyp0AAAAAAADSnQOF6FK7HN6dAAAAAAAA3p0CPwvUo3DanQOF6FK7HNqdAuB6F69E2p0AK16NwPTqnQIXrUbiePKdAUrgehWs8p0BSuB6F6z6nQD0K16NwPqdAexSuR2E+p0DXo3A9ikKnQOxRuB6FQ6dAexSuR2E+p0CkcD0KV0CnQB+F61G4PKdAAAAAAAA8p0AzMzMzMz+nQPYoXI9CQqdAzczMzMxBp0AAAAAAgECnQAAAAAAARadAhetRuJ5Gp0CkcD0KV1GnQGZmZmbmT6dAcT0K16NPp0D2KFyPwlGnQAAAAACAV6dAMzMzMzNap0DsUbgehWCnQOxRuB6FY6dArkfhepRop0CkcD0K12inQDMzMzMzZadAKVyPwvVlp0D2KFyPwmWnQFyPwvWoZqdApHA9Cldop0AUrkfhemanQB+F61G4Z6dAPQrXo3Bcp0CamZmZGVunQMP1KFwPVKdA16NwPQpOp0BSuB6Fa02nQBSuR+H6UadA4XoUrsdTp0AAAAAAgFanQAAAAAAAWqdAAAAAAABip0CamZmZmWGnQAAAAAAAWadA7FG4HgVWp0DNzMzMzFanQB+F61E4WqdAAAAAAABfp0BmZmZm5mOnQGZmZmZmZqdA4XoUrkdqp0A9Ctej8IenQOF6FK5Hg6dAAAAAAACAp0D2KFyPQn+nQClcj8J1badA9ihcj0Jjp0DsUbgeBWKnQI\u002fC9SjcSKdAXI\u002fC9ShVp0AAAAAAAFinQJqZmZkZVqdAAAAAAABUp0CuR+F6FDGnQArXo3A9MadAhetRuB41p0CPwvUo3DinQAAAAAAALKdA7FG4HoUzp0ApXI\u002fC9UKnQMP1KFyPQ6dAKVyPwnVJp0DhehSuR0unQA=="},"name":"K线","open":{"dtype":"f8","bdata":"MzMzM7PspkBSuB6Fa\u002fGmQFyPwvWo76ZAuB6F61H2pkAzMzMzM\u002fWmQOF6FK5H+aZASOF6FC77pkDXo3A9ivOmQB+F61G48KZAcT0K1yPxpkDNzMzMzPamQNejcD2K9qZAFK5H4fr6pkCamZmZmfqmQJqZmZmZ6aZArkfhepTupkB7FK5H4eamQOF6FK5H6qZAAAAAAADupkDNzMzMTPCmQGZmZmbm8KZAKVyPwnXypkA9Ctej8PSmQHsUrkfh8aZAXI\u002fC9SjypkA9Ctej8POmQClcj8J18KZApHA9ClfopkCkcD0K1+emQIXrUbie7KZAH4XrUbjvpkAzMzMzM\u002fCmQDMzMzMz8qZAw\u002fUoXI\u002fopkA9CtejcOqmQJqZmZkZ66ZArkfhepTwpkBxPQrXo+imQLgehevR5aZAcT0K16PfpkB7FK5H4eOmQClcj8L16KZAH4XrUbjvpkDhehSux++mQHE9Ctej7qZACtejcD3ppkBcj8L1qOSmQIXrUbie6qZAhetRuB70pkCuR+F6FOimQOF6FK5H6KZAmpmZmZnfpkBSuB6Fa+KmQFyPwvWo46ZAMzMzM7PdpkDXo3A9itymQM3MzMzM3aZA7FG4HgXapkDD9ShcD9imQAAAAAAA1qZApHA9ClfhpkA9Ctej8PimQMP1KFyP9qZAH4XrUbjzpkC4HoXr0fOmQMP1KFyP96ZAj8L1KNwFp0Bcj8L1KA2nQM3MzMxMDadA7FG4HgUQp0ApXI\u002fCdQSnQBSuR+H6BadAKVyPwvUKp0AzMzMzsxSnQLgehevRFadAcT0K1yMVp0CPwvUo3BOnQHsUrkfhE6dAKVyPwnUHp0DD9ShcjwanQHE9CtcjAadAH4XrUTgCp0CkcD0KVwSnQOxRuB4FBadAXI\u002fC9aj8pkAK16NwPfqmQM3MzMxM\u002faZAAAAAAADypkAAAAAAgPGmQJqZmZmZ86ZAzczMzMz2pkC4HoXr0fmmQM3MzMzM+KZAPQrXo\u002fD7pkCF61G4Hv6mQOxRuB4FBKdAhetRuB4Dp0C4HoXrUf+mQB+F61E4AadA7FG4HgUGp0CkcD0KVwmnQEjhehQuBqdA7FG4HoUHp0CamZmZmQSnQOF6FK5HAadA9ihcj0IFp0Bcj8L1KAqnQArXo3C9DKdAPQrXo\u002fAIp0AzMzMzMwGnQLgehetRA6dAuB6F61EGp0AzMzMzswmnQEjhehSuCqdAAAAAAAAMp0DXo3A9ig2nQKRwPQrXCqdAUrgehWs7p0DD9Shcj0+nQI\u002fC9SjcV6dAUrgehWtdp0BxPQrXo0CnQNejcD0KP6dASOF6FK49p0DsUbgeBUynQPYoXI\u002fCRqdAFK5H4fpMp0AfhetROESnQDMzMzOzQadAmpmZmRlGp0A9CtejcEanQHE9CtcjQqdA4XoUrkc8p0BI4XoUrjWnQHE9CtejOadAFK5H4Xo9p0CkcD0KVz2nQIXrUbieRKdAzczMzMxHp0DsUbgehU2nQJqZmZkZUadAAAAAAABKp0CamZmZGU2nQK5H4XqUSqdA4XoUrsdGp0C4HoXr0USnQB+F61G4RqdA4XoUrkdDp0CF61G4HkWnQIXrUbieS6dArkfhehRKp0DNzMzMTDynQI\u002fC9ShcQKdAAAAAAAA\u002fp0DNzMzMzD6nQBSuR+F6QqdAhetRuB49p0ApXI\u002fCdT+nQNejcD2KP6dAMzMzMzNDp0AUrkfh+kWnQClcj8J1RKdA7FG4HgVMp0A9Ctej8DunQDMzMzOzQ6dApHA9CldKp0DXo3A9ikanQNejcD0KTadAmpmZmZlOp0CF61G4Hk6nQClcj8J1S6dApHA9CldKp0A9Ctej8EenQHsUrkfhQqdAAAAAAIBDp0CamZmZGUWnQI\u002fC9ShcR6dAcT0K1yNMp0BSuB6F60unQPYoXI\u002fCS6dAMzMzMzNQp0BxPQrXI1OnQK5H4XoUV6dAZmZmZuZPp0AUrkfh+lWnQIXrUbieWKdAcT0K16NZp0DXo3A9ilenQFK4HoXrUqdAPQrXo3Aup0AK16NwPTKnQKRwPQrXO6dA4XoUrkdEp0DXo3A9ikKnQPYoXI\u002fCMadAAAAAAAAvp0Bcj8L1KCanQIXrUbieNadAcT0K16NLp0AUrkfh+m+nQGZmZmZmZqdAAAAAAAA+p0AUrkfhekCnQM3MzMzMPKdA4XoUrkc7p0A9CtejcDqnQBSuR+F6RKdAj8L1KFw\u002fp0AK16NwvUqnQJqZmZkZTqdAj8L1KFxYp0AAAAAAAGCnQBSuR+H6WKdAuB6F61FHp0BmZmZmZk2nQFyPwvWoSKdAw\u002fUoXA9fp0DD9Shcj1qnQNejcD0KXadAj8L1KFxNp0Bcj8L1KEenQLgehetRRadA7FG4HoVEp0BSuB6F60KnQBSuR+F6S6dA16NwPYpOp0C4HoXr0U6nQNejcD2KRKdAMzMzM7M\u002fp0DD9ShcD0qnQHE9CtcjSadAMzMzM7NLp0CamZmZGVGnQK5H4XoUSKdAH4XrUTg0p0DNzMzMzD6nQLgehetRP6dAKVyPwvU\u002fp0AzMzMzMzqnQHE9CtejOKdApHA9Clc8p0BSuB6Faz+nQPYoXI9CPKdACtejcD09p0CamZmZmTqnQAAAAAAAOqdArkfhehQ1p0CF61G4niunQAAAAAAANadAUrgehespp0DsUbgehRKnQD0K16PwFKdAj8L1KNwap0DD9ShcDyinQClcj8J1MKdAj8L1KNwxp0BmZmZmZi+nQMP1KFwPLadAuB6F69Exp0Bcj8L1KDenQFyPwvUoNKdArkfhepQ0p0BxPQrXIy+nQIXrUbgeMKdAZmZmZmY1p0DXo3A9ii+nQGZmZmbmLadAH4XrUbgtp0DNzMzMTCinQBSuR+F6JqdA16NwPQolp0CamZmZGRunQOxRuB4FG6dAuB6F69Edp0C4HoXr0R6nQK5H4XoUH6dAexSuR2Enp0CkcD0K1yWnQB+F61E4IadASOF6FK4jp0D2KFyPwiOnQLgehevRJadAzczMzEwop0AK16NwvS2nQAAAAACAL6dASOF6FK4wp0ApXI\u002fCdS+nQM3MzMxMM6dAcT0K1yMxp0B7FK5H4TOnQArXo3A9MadAPQrXo\u002fAvp0D2KFyPQiunQOxRuB4FKqdAj8L1KFwtp0AAAAAAACynQIXrUbgeMKdASOF6FC4wp0AUrkfhejSnQOF6FK7HNKdAKVyPwvU2p0ApXI\u002fC9TOnQHsUrkdhOKdAhetRuJ41p0AUrkfhejSnQHsUrkfhM6dAexSuR2E1p0BxPQrXozinQD0K16NwOKdAKVyPwnUvp0DNzMzMzCunQGZmZmZmKqdA9ihcj0Ilp0B7FK5HYSynQM3MzMzML6dApHA9Ctcvp0AzMzMzsyynQClcj8J1MKdAw\u002fUoXA8tp0AK16NwPSunQM3MzMxMKqdAKVyPwvUnp0AUrkfh+iWnQClcj8L1LqdArkfhepRJp0DsUbgehUWnQLgehetRQ6dAFK5H4fpOp0DNzMzMTEWnQGZmZmbmSadA16NwPYpKp0CuR+F6lEanQLgehevRRKdAFK5H4XpHp0A9Ctej8EGnQPYoXI9CSadAPQrXo3BHp0BmZmZm5kanQEjhehQuRadA9ihcj8JGp0DhehSux0CnQJqZmZkZQ6dA4XoUrkdAp0AAAAAAAEinQJqZmZkZSKdACtejcD1Hp0AUrkfhekqnQLgehetRR6dAj8L1KFxBp0ApXI\u002fCdT2nQD0K16PwOqdAXI\u002fC9Sg4p0A9CtejcCunQM3MzMxMMKdAuB6F69Ewp0DsUbgeBTKnQHsUrkdhMqdAuB6F61E1p0AfhetRuDOnQBSuR+F6NKdA9ihcj8I6p0ApXI\u002fC9TSnQAAAAACANKdAFK5H4fozp0AAAAAAADenQKRwPQrXNKdAcT0K1yM1p0AfhetRuDOnQHsUrkdhL6dAMzMzM7M5p0DhehSuxzmnQHsUrkdhOKdA9ihcj8I5p0AUrkfh+j2nQKRwPQpXQ6dAexSuR2E\u002fp0DXo3A9CkGnQIXrUbieQqdACtejcL1Bp0BmZmZmZj2nQI\u002fC9ShcO6dAhetRuB49p0DXo3A9CkCnQNejcD0KQadAw\u002fUoXA8\u002fp0CkcD0K1z+nQIXrUbieP6dApHA9CldCp0Bcj8L1qDynQDMzMzMzPKdASOF6FK49p0C4HoXr0TynQNejcD0KPKdAuB6F61E5p0DsUbgeBTunQD0K16NwPadAFK5H4fo2p0C4HoXrUTmnQLgehevRO6dAexSuR+E4p0ApXI\u002fC9T2nQOxRuB4FPqdAzczMzMw8p0DNzMzMTD6nQNejcD0KP6dAcT0K16NBp0DD9Shcj0SnQFyPwvWoQadA4XoUrsc+p0BxPQrXIz2nQHE9CtcjP6dAmpmZmRk6p0CuR+F6lDKnQJqZmZmZK6dArkfhehQtp0DD9Shcjy+nQIXrUbgeMKdAKVyPwvU2p0BI4XoUrjqnQJqZmZkZOadASOF6FK44p0DsUbgeBTenQIXrUbieN6dAZmZmZuY2p0AAAAAAADynQAAAAAAAPadAH4XrUTg9p0Bcj8L1qECnQEjhehQuP6dAmpmZmZk+p0DXo3A9ikKnQOxRuB6FQ6dAZmZmZmZFp0DNzMzMTESnQEjhehQuQadAAAAAAAA\u002fp0AzMzMzMz+nQGZmZmZmQ6dAzczMzMxEp0DNzMzMzEKnQGZmZmZmR6dAPQrXo3BIp0BmZmZm5lKnQLgehetRUadAXI\u002fC9ShSp0AfhetRuFKnQD0K16PwWqdAMzMzMzNap0AfhetRuGGnQI\u002fC9SjcbKdArkfhepRqp0CkcD0K12inQJqZmZkZcKdAKVyPwvVlp0CF61G4nmqnQFyPwvWoZqdAAAAAAABup0DD9Shcj2qnQOF6FK5HaqdAhetRuB5op0DhehSux1ynQBSuR+H6W6dAZmZmZuZXp0AAAAAAAE6nQMP1KFwPVKdA9ihcj0JZp0DD9ShcD1inQOxRuB4FWqdAj8L1KFxip0BmZmZm5mSnQMP1KFwPYqdA7FG4HgVcp0DNzMzMzFanQIXrUbieW6dAzczMzMxfp0DhehSuR2ynQFyPwvUoZ6dAAAAAAAByp0AzMzMzM5CnQB+F61E4jKdA4XoUrkeDp0AK16NwPYOnQFK4HoXrfKdAexSuR+Fup0AfhetRuGmnQMP1KFwPaqdAexSuR+FYp0DhehSuR1ynQBSuR+F6YadAAAAAAIBgp0D2KFyPwlSnQMP1KFwPRKdAuB6F61E8p0CPwvUo3DinQMP1KFwPPadAj8L1KFw6p0DhehSuR0inQB+F61E4R6dAzczMzExTp0CamZmZGU+nQA=="},"x":["2025-12-29T22:20:00.000","2025-12-29T22:25:00.000","2025-12-29T22:30:00.000","2025-12-29T22:35:00.000","2025-12-29T22:40:00.000","2025-12-29T22:45:00.000","2025-12-29T22:50:00.000","2025-12-29T22:55:00.000","2025-12-29T23:00:00.000","2025-12-29T23:05:00.000","2025-12-29T23:10:00.000","2025-12-29T23:15:00.000","2025-12-29T23:20:00.000","2025-12-29T23:25:00.000","2025-12-29T23:30:00.000","2025-12-29T23:35:00.000","2025-12-29T23:40:00.000","2025-12-29T23:45:00.000","2025-12-29T23:50:00.000","2025-12-29T23:55:00.000","2025-12-30T00:00:00.000","2025-12-30T00:05:00.000","2025-12-30T00:10:00.000","2025-12-30T00:15:00.000","2025-12-30T00:20:00.000","2025-12-30T00:25:00.000","2025-12-30T00:30:00.000","2025-12-30T00:35:00.000","2025-12-30T00:40:00.000","2025-12-30T00:45:00.000","2025-12-30T00:50:00.000","2025-12-30T00:55:00.000","2025-12-30T01:00:00.000","2025-12-30T01:05:00.000","2025-12-30T01:10:00.000","2025-12-30T01:15:00.000","2025-12-30T01:20:00.000","2025-12-30T01:25:00.000","2025-12-30T01:30:00.000","2025-12-30T01:35:00.000","2025-12-30T01:40:00.000","2025-12-30T01:45:00.000","2025-12-30T01:50:00.000","2025-12-30T01:55:00.000","2025-12-30T02:00:00.000","2025-12-30T02:05:00.000","2025-12-30T02:10:00.000","2025-12-30T02:15:00.000","2025-12-30T02:20:00.000","2025-12-30T02:25:00.000","2025-12-30T02:30:00.000","2025-12-30T02:35:00.000","2025-12-30T02:40:00.000","2025-12-30T02:45:00.000","2025-12-30T02:50:00.000","2025-12-30T02:55:00.000","2025-12-30T03:00:00.000","2025-12-30T03:05:00.000","2025-12-30T03:10:00.000","2025-12-30T03:15:00.000","2025-12-30T03:20:00.000","2025-12-30T03:25:00.000","2025-12-30T03:30:00.000","2025-12-30T03:35:00.000","2025-12-30T03:40:00.000","2025-12-30T03:45:00.000","2025-12-30T03:50:00.000","2025-12-30T03:55:00.000","2025-12-30T04:00:00.000","2025-12-30T04:05:00.000","2025-12-30T04:10:00.000","2025-12-30T04:15:00.000","2025-12-30T04:20:00.000","2025-12-30T04:25:00.000","2025-12-30T04:30:00.000","2025-12-30T04:35:00.000","2025-12-30T04:40:00.000","2025-12-30T04:45:00.000","2025-12-30T04:50:00.000","2025-12-30T04:55:00.000","2025-12-30T05:00:00.000","2025-12-30T05:05:00.000","2025-12-30T05:10:00.000","2025-12-30T05:15:00.000","2025-12-30T05:20:00.000","2025-12-30T05:25:00.000","2025-12-30T05:30:00.000","2025-12-30T05:35:00.000","2025-12-30T05:40:00.000","2025-12-30T05:45:00.000","2025-12-30T05:50:00.000","2025-12-30T05:55:00.000","2025-12-30T06:00:00.000","2025-12-30T06:05:00.000","2025-12-30T06:10:00.000","2025-12-30T06:15:00.000","2025-12-30T06:20:00.000","2025-12-30T06:25:00.000","2025-12-30T06:30:00.000","2025-12-30T06:35:00.000","2025-12-30T06:40:00.000","2025-12-30T06:45:00.000","2025-12-30T06:50:00.000","2025-12-30T06:55:00.000","2025-12-30T07:00:00.000","2025-12-30T07:05:00.000","2025-12-30T07:10:00.000","2025-12-30T07:15:00.000","2025-12-30T07:20:00.000","2025-12-30T07:25:00.000","2025-12-30T07:30:00.000","2025-12-30T07:35:00.000","2025-12-30T07:40:00.000","2025-12-30T07:45:00.000","2025-12-30T07:50:00.000","2025-12-30T07:55:00.000","2025-12-30T08:00:00.000","2025-12-30T08:05:00.000","2025-12-30T08:10:00.000","2025-12-30T08:15:00.000","2025-12-30T08:20:00.000","2025-12-30T08:25:00.000","2025-12-30T08:30:00.000","2025-12-30T08:35:00.000","2025-12-30T08:40:00.000","2025-12-30T08:45:00.000","2025-12-30T08:50:00.000","2025-12-30T08:55:00.000","2025-12-30T09:00:00.000","2025-12-30T09:05:00.000","2025-12-30T09:10:00.000","2025-12-30T09:15:00.000","2025-12-30T09:20:00.000","2025-12-30T09:25:00.000","2025-12-30T09:30:00.000","2025-12-30T09:35:00.000","2025-12-30T09:40:00.000","2025-12-30T09:45:00.000","2025-12-30T09:50:00.000","2025-12-30T09:55:00.000","2025-12-30T10:00:00.000","2025-12-30T10:05:00.000","2025-12-30T10:10:00.000","2025-12-30T10:15:00.000","2025-12-30T10:20:00.000","2025-12-30T10:25:00.000","2025-12-30T10:30:00.000","2025-12-30T10:35:00.000","2025-12-30T10:40:00.000","2025-12-30T10:45:00.000","2025-12-30T10:50:00.000","2025-12-30T10:55:00.000","2025-12-30T11:00:00.000","2025-12-30T11:05:00.000","2025-12-30T11:10:00.000","2025-12-30T11:15:00.000","2025-12-30T11:20:00.000","2025-12-30T11:25:00.000","2025-12-30T11:30:00.000","2025-12-30T11:35:00.000","2025-12-30T11:40:00.000","2025-12-30T11:45:00.000","2025-12-30T11:50:00.000","2025-12-30T11:55:00.000","2025-12-30T12:00:00.000","2025-12-30T12:05:00.000","2025-12-30T12:10:00.000","2025-12-30T12:15:00.000","2025-12-30T12:20:00.000","2025-12-30T12:25:00.000","2025-12-30T12:30:00.000","2025-12-30T12:35:00.000","2025-12-30T12:40:00.000","2025-12-30T12:45:00.000","2025-12-30T12:50:00.000","2025-12-30T12:55:00.000","2025-12-30T13:00:00.000","2025-12-30T13:05:00.000","2025-12-30T13:10:00.000","2025-12-30T13:15:00.000","2025-12-30T13:20:00.000","2025-12-30T13:25:00.000","2025-12-30T13:30:00.000","2025-12-30T13:35:00.000","2025-12-30T13:40:00.000","2025-12-30T13:45:00.000","2025-12-30T13:50:00.000","2025-12-30T13:55:00.000","2025-12-30T14:00:00.000","2025-12-30T14:05:00.000","2025-12-30T14:10:00.000","2025-12-30T14:15:00.000","2025-12-30T14:20:00.000","2025-12-30T14:25:00.000","2025-12-30T14:30:00.000","2025-12-30T14:35:00.000","2025-12-30T14:40:00.000","2025-12-30T14:45:00.000","2025-12-30T14:50:00.000","2025-12-30T14:55:00.000","2025-12-30T15:00:00.000","2025-12-30T15:05:00.000","2025-12-30T15:10:00.000","2025-12-30T15:15:00.000","2025-12-30T15:20:00.000","2025-12-30T15:25:00.000","2025-12-30T15:30:00.000","2025-12-30T15:35:00.000","2025-12-30T15:40:00.000","2025-12-30T15:45:00.000","2025-12-30T15:50:00.000","2025-12-30T15:55:00.000","2025-12-30T16:00:00.000","2025-12-30T16:05:00.000","2025-12-30T16:10:00.000","2025-12-30T16:15:00.000","2025-12-30T16:20:00.000","2025-12-30T16:25:00.000","2025-12-30T16:30:00.000","2025-12-30T16:35:00.000","2025-12-30T16:40:00.000","2025-12-30T16:45:00.000","2025-12-30T16:50:00.000","2025-12-30T16:55:00.000","2025-12-30T17:00:00.000","2025-12-30T17:05:00.000","2025-12-30T17:10:00.000","2025-12-30T17:15:00.000","2025-12-30T17:20:00.000","2025-12-30T17:25:00.000","2025-12-30T17:30:00.000","2025-12-30T17:35:00.000","2025-12-30T17:40:00.000","2025-12-30T17:45:00.000","2025-12-30T17:50:00.000","2025-12-30T17:55:00.000","2025-12-30T18:00:00.000","2025-12-30T18:05:00.000","2025-12-30T18:10:00.000","2025-12-30T18:15:00.000","2025-12-30T18:20:00.000","2025-12-30T18:25:00.000","2025-12-30T18:30:00.000","2025-12-30T18:35:00.000","2025-12-30T18:40:00.000","2025-12-30T18:45:00.000","2025-12-30T18:50:00.000","2025-12-30T18:55:00.000","2025-12-30T19:00:00.000","2025-12-30T19:05:00.000","2025-12-30T19:10:00.000","2025-12-30T19:15:00.000","2025-12-30T19:20:00.000","2025-12-30T19:25:00.000","2025-12-30T19:30:00.000","2025-12-30T19:35:00.000","2025-12-30T19:40:00.000","2025-12-30T19:45:00.000","2025-12-30T19:50:00.000","2025-12-30T19:55:00.000","2025-12-30T20:00:00.000","2025-12-30T20:05:00.000","2025-12-30T20:10:00.000","2025-12-30T20:15:00.000","2025-12-30T20:20:00.000","2025-12-30T20:25:00.000","2025-12-30T20:30:00.000","2025-12-30T20:35:00.000","2025-12-30T20:40:00.000","2025-12-30T20:45:00.000","2025-12-30T20:50:00.000","2025-12-30T20:55:00.000","2025-12-30T21:00:00.000","2025-12-30T21:05:00.000","2025-12-30T21:10:00.000","2025-12-30T21:15:00.000","2025-12-30T21:20:00.000","2025-12-30T21:25:00.000","2025-12-30T21:30:00.000","2025-12-30T21:35:00.000","2025-12-30T21:40:00.000","2025-12-30T21:45:00.000","2025-12-30T21:50:00.000","2025-12-30T21:55:00.000","2025-12-30T22:00:00.000","2025-12-30T22:05:00.000","2025-12-30T22:10:00.000","2025-12-30T22:15:00.000","2025-12-30T22:20:00.000","2025-12-30T22:25:00.000","2025-12-30T22:30:00.000","2025-12-30T22:35:00.000","2025-12-30T22:40:00.000","2025-12-30T22:45:00.000","2025-12-30T22:50:00.000","2025-12-30T22:55:00.000","2025-12-30T23:00:00.000","2025-12-30T23:05:00.000","2025-12-30T23:10:00.000","2025-12-30T23:15:00.000","2025-12-30T23:20:00.000","2025-12-30T23:25:00.000","2025-12-30T23:30:00.000","2025-12-30T23:35:00.000","2025-12-30T23:40:00.000","2025-12-30T23:45:00.000","2025-12-30T23:50:00.000","2025-12-30T23:55:00.000","2025-12-31T00:00:00.000","2025-12-31T00:05:00.000","2025-12-31T00:10:00.000","2025-12-31T00:15:00.000","2025-12-31T00:20:00.000","2025-12-31T00:25:00.000","2025-12-31T00:30:00.000","2025-12-31T00:35:00.000","2025-12-31T00:40:00.000","2025-12-31T00:45:00.000","2025-12-31T00:50:00.000","2025-12-31T00:55:00.000","2025-12-31T01:00:00.000","2025-12-31T01:05:00.000","2025-12-31T01:10:00.000","2025-12-31T01:15:00.000","2025-12-31T01:20:00.000","2025-12-31T01:25:00.000","2025-12-31T01:30:00.000","2025-12-31T01:35:00.000","2025-12-31T01:40:00.000","2025-12-31T01:45:00.000","2025-12-31T01:50:00.000","2025-12-31T01:55:00.000","2025-12-31T02:00:00.000","2025-12-31T02:05:00.000","2025-12-31T02:10:00.000","2025-12-31T02:15:00.000","2025-12-31T02:20:00.000","2025-12-31T02:25:00.000","2025-12-31T02:30:00.000","2025-12-31T02:35:00.000","2025-12-31T02:40:00.000","2025-12-31T02:45:00.000","2025-12-31T02:50:00.000","2025-12-31T02:55:00.000","2025-12-31T03:00:00.000","2025-12-31T03:05:00.000","2025-12-31T03:10:00.000","2025-12-31T03:15:00.000","2025-12-31T03:20:00.000","2025-12-31T03:25:00.000","2025-12-31T03:30:00.000","2025-12-31T03:35:00.000","2025-12-31T03:40:00.000","2025-12-31T03:45:00.000","2025-12-31T03:50:00.000","2025-12-31T03:55:00.000","2025-12-31T04:00:00.000","2025-12-31T04:05:00.000","2025-12-31T04:10:00.000","2025-12-31T04:15:00.000","2025-12-31T04:20:00.000","2025-12-31T04:25:00.000","2025-12-31T04:30:00.000","2025-12-31T04:35:00.000","2025-12-31T04:40:00.000","2025-12-31T04:45:00.000","2025-12-31T04:50:00.000","2025-12-31T04:55:00.000","2025-12-31T05:00:00.000","2025-12-31T05:05:00.000","2025-12-31T05:10:00.000","2025-12-31T05:15:00.000","2025-12-31T05:20:00.000","2025-12-31T05:25:00.000","2025-12-31T05:30:00.000","2025-12-31T05:35:00.000","2025-12-31T05:40:00.000","2025-12-31T05:45:00.000","2025-12-31T05:50:00.000","2025-12-31T05:55:00.000","2025-12-31T06:00:00.000","2025-12-31T06:05:00.000","2025-12-31T06:10:00.000","2025-12-31T06:15:00.000","2025-12-31T06:20:00.000","2025-12-31T06:25:00.000","2025-12-31T06:30:00.000","2025-12-31T06:35:00.000","2025-12-31T06:40:00.000","2025-12-31T06:45:00.000","2025-12-31T06:50:00.000","2025-12-31T06:55:00.000","2025-12-31T07:00:00.000","2025-12-31T07:05:00.000","2025-12-31T07:10:00.000","2025-12-31T07:15:00.000","2025-12-31T07:20:00.000","2025-12-31T07:25:00.000","2025-12-31T07:30:00.000","2025-12-31T07:35:00.000","2025-12-31T07:40:00.000","2025-12-31T07:45:00.000","2025-12-31T07:50:00.000","2025-12-31T07:55:00.000","2025-12-31T08:00:00.000","2025-12-31T08:05:00.000","2025-12-31T08:10:00.000","2025-12-31T08:15:00.000","2025-12-31T08:20:00.000","2025-12-31T08:25:00.000","2025-12-31T08:30:00.000","2025-12-31T08:35:00.000","2025-12-31T08:40:00.000","2025-12-31T08:45:00.000","2025-12-31T08:50:00.000","2025-12-31T08:55:00.000","2025-12-31T09:00:00.000","2025-12-31T09:05:00.000","2025-12-31T09:10:00.000","2025-12-31T09:15:00.000","2025-12-31T09:20:00.000","2025-12-31T09:25:00.000","2025-12-31T09:30:00.000","2025-12-31T09:35:00.000","2025-12-31T09:40:00.000","2025-12-31T09:45:00.000","2025-12-31T09:50:00.000","2025-12-31T09:55:00.000","2025-12-31T10:00:00.000","2025-12-31T10:05:00.000","2025-12-31T10:10:00.000","2025-12-31T10:15:00.000","2025-12-31T10:20:00.000","2025-12-31T10:25:00.000","2025-12-31T10:30:00.000","2025-12-31T10:35:00.000","2025-12-31T10:40:00.000","2025-12-31T10:45:00.000","2025-12-31T10:50:00.000","2025-12-31T10:55:00.000","2025-12-31T11:00:00.000","2025-12-31T11:05:00.000","2025-12-31T11:10:00.000","2025-12-31T11:15:00.000","2025-12-31T11:20:00.000","2025-12-31T11:25:00.000","2025-12-31T11:30:00.000","2025-12-31T11:35:00.000","2025-12-31T11:40:00.000","2025-12-31T11:45:00.000","2025-12-31T11:50:00.000","2025-12-31T11:55:00.000","2025-12-31T12:00:00.000","2025-12-31T12:05:00.000","2025-12-31T12:10:00.000","2025-12-31T12:15:00.000","2025-12-31T12:20:00.000","2025-12-31T12:25:00.000","2025-12-31T12:30:00.000","2025-12-31T12:35:00.000","2025-12-31T12:40:00.000","2025-12-31T12:45:00.000","2025-12-31T12:50:00.000","2025-12-31T12:55:00.000","2025-12-31T13:00:00.000","2025-12-31T13:05:00.000","2025-12-31T13:10:00.000","2025-12-31T13:15:00.000","2025-12-31T13:20:00.000","2025-12-31T13:25:00.000","2025-12-31T13:30:00.000","2025-12-31T13:35:00.000","2025-12-31T13:40:00.000","2025-12-31T13:45:00.000","2025-12-31T13:50:00.000","2025-12-31T13:55:00.000","2025-12-31T14:00:00.000","2025-12-31T14:05:00.000","2025-12-31T14:10:00.000","2025-12-31T14:15:00.000","2025-12-31T14:20:00.000","2025-12-31T14:25:00.000","2025-12-31T14:30:00.000","2025-12-31T14:35:00.000","2025-12-31T14:40:00.000","2025-12-31T14:45:00.000","2025-12-31T14:50:00.000","2025-12-31T14:55:00.000","2025-12-31T15:00:00.000","2025-12-31T15:05:00.000","2025-12-31T15:10:00.000","2025-12-31T15:15:00.000","2025-12-31T15:20:00.000","2025-12-31T15:25:00.000","2025-12-31T15:30:00.000","2025-12-31T15:35:00.000","2025-12-31T15:40:00.000","2025-12-31T15:45:00.000","2025-12-31T15:50:00.000","2025-12-31T15:55:00.000"],"type":"candlestick"},{"hoverinfo":"text","marker":{"color":["#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350","#26a69a","#ef5350"],"size":8},"mode":"markers","name":"开仓","text":["做空 @ 2936.20\u003cbr\u003e2025-12-30 06:25:00","做多 @ 2940.26\u003cbr\u003e2025-12-30 06:35:00","做空 @ 2939.96\u003cbr\u003e2025-12-30 06:45:00","做多 @ 2939.04\u003cbr\u003e2025-12-30 06:55:00","做空 @ 2936.58\u003cbr\u003e2025-12-30 07:00:00","做多 @ 2942.23\u003cbr\u003e2025-12-30 07:20:00","做空 @ 2934.45\u003cbr\u003e2025-12-30 07:35:00","做多 @ 2932.73\u003cbr\u003e2025-12-30 07:40:00","做空 @ 2932.58\u003cbr\u003e2025-12-30 07:45:00","做多 @ 2935.62\u003cbr\u003e2025-12-30 07:50:00","做空 @ 2935.77\u003cbr\u003e2025-12-30 07:55:00","做多 @ 2938.56\u003cbr\u003e2025-12-30 08:10:00","做空 @ 2935.65\u003cbr\u003e2025-12-30 08:30:00","做多 @ 2932.01\u003cbr\u003e2025-12-30 08:40:00","做空 @ 2936.03\u003cbr\u003e2025-12-30 08:55:00","做多 @ 2936.95\u003cbr\u003e2025-12-30 09:00:00","做空 @ 2932.91\u003cbr\u003e2025-12-30 09:10:00","做多 @ 2928.84\u003cbr\u003e2025-12-30 09:35:00","做空 @ 2929.23\u003cbr\u003e2025-12-30 09:40:00","做多 @ 2933.33\u003cbr\u003e2025-12-30 09:45:00","做空 @ 2935.94\u003cbr\u003e2025-12-30 09:55:00","做多 @ 2935.50\u003cbr\u003e2025-12-30 10:00:00","做空 @ 2931.73\u003cbr\u003e2025-12-30 10:05:00","做多 @ 2934.29\u003cbr\u003e2025-12-30 10:15:00","做空 @ 2936.48\u003cbr\u003e2025-12-30 10:20:00","做多 @ 2929.25\u003cbr\u003e2025-12-30 10:35:00","做空 @ 2928.92\u003cbr\u003e2025-12-30 10:40:00","做多 @ 2925.63\u003cbr\u003e2025-12-30 11:05:00","做空 @ 2923.70\u003cbr\u003e2025-12-30 11:10:00","做多 @ 2930.89\u003cbr\u003e2025-12-30 11:20:00","做空 @ 2938.88\u003cbr\u003e2025-12-30 11:30:00","做多 @ 2938.34\u003cbr\u003e2025-12-30 11:40:00","做空 @ 2951.56\u003cbr\u003e2025-12-30 12:05:00","做多 @ 2947.24\u003cbr\u003e2025-12-30 12:15:00","做空 @ 2954.73\u003cbr\u003e2025-12-30 12:30:00","做多 @ 2954.68\u003cbr\u003e2025-12-30 12:35:00","做空 @ 2953.73\u003cbr\u003e2025-12-30 12:45:00","做多 @ 2945.47\u003cbr\u003e2025-12-30 13:00:00","做空 @ 2945.82\u003cbr\u003e2025-12-30 13:10:00","做多 @ 2938.88\u003cbr\u003e2025-12-30 13:35:00","做空 @ 2936.81\u003cbr\u003e2025-12-30 13:40:00","做多 @ 2939.92\u003cbr\u003e2025-12-30 13:50:00","做空 @ 2940.41\u003cbr\u003e2025-12-30 13:55:00","做多 @ 2940.56\u003cbr\u003e2025-12-30 14:00:00","做空 @ 2945.03\u003cbr\u003e2025-12-30 14:15:00","做多 @ 2945.70\u003cbr\u003e2025-12-30 14:20:00","做空 @ 2944.29\u003cbr\u003e2025-12-30 14:30:00","做多 @ 2947.29\u003cbr\u003e2025-12-30 15:05:00","做空 @ 2948.27\u003cbr\u003e2025-12-30 15:10:00","做多 @ 2945.89\u003cbr\u003e2025-12-30 15:25:00","做空 @ 2945.31\u003cbr\u003e2025-12-30 15:30:00","做多 @ 2947.65\u003cbr\u003e2025-12-30 15:35:00","做空 @ 2949.18\u003cbr\u003e2025-12-30 15:45:00","做多 @ 2982.50\u003cbr\u003e2025-12-30 16:05:00","做空 @ 2990.22\u003cbr\u003e2025-12-30 16:20:00","做多 @ 2974.93\u003cbr\u003e2025-12-30 16:35:00","做空 @ 2978.50\u003cbr\u003e2025-12-30 16:45:00","做多 @ 2977.16\u003cbr\u003e2025-12-30 17:00:00","做空 @ 2978.32\u003cbr\u003e2025-12-30 17:05:00","做多 @ 2971.94\u003cbr\u003e2025-12-30 17:25:00","做空 @ 2974.09\u003cbr\u003e2025-12-30 17:40:00","做多 @ 2979.48\u003cbr\u003e2025-12-30 17:45:00","做空 @ 2983.96\u003cbr\u003e2025-12-30 18:00:00","做多 @ 2982.19\u003cbr\u003e2025-12-30 18:05:00","做空 @ 2982.37\u003cbr\u003e2025-12-30 18:10:00","做多 @ 2978.42\u003cbr\u003e2025-12-30 18:35:00","做空 @ 2978.26\u003cbr\u003e2025-12-30 18:40:00","做多 @ 2976.45\u003cbr\u003e2025-12-30 18:55:00","做空 @ 2975.50\u003cbr\u003e2025-12-30 19:00:00","做多 @ 2975.72\u003cbr\u003e2025-12-30 19:05:00","做空 @ 2975.64\u003cbr\u003e2025-12-30 19:10:00","做多 @ 2975.45\u003cbr\u003e2025-12-30 19:20:00","做空 @ 2978.53\u003cbr\u003e2025-12-30 19:40:00","做多 @ 2978.49\u003cbr\u003e2025-12-30 19:45:00","做空 @ 2980.76\u003cbr\u003e2025-12-30 19:50:00","做多 @ 2976.65\u003cbr\u003e2025-12-30 19:55:00","做空 @ 2980.06\u003cbr\u003e2025-12-30 20:05:00","做多 @ 2979.90\u003cbr\u003e2025-12-30 20:10:00","做空 @ 2981.44\u003cbr\u003e2025-12-30 20:15:00","做多 @ 2982.68\u003cbr\u003e2025-12-30 21:05:00","做空 @ 2981.94\u003cbr\u003e2025-12-30 21:10:00","做多 @ 2986.05\u003cbr\u003e2025-12-30 21:25:00","做空 @ 2986.88\u003cbr\u003e2025-12-30 21:30:00","做多 @ 2985.15\u003cbr\u003e2025-12-30 21:35:00","做空 @ 2985.98\u003cbr\u003e2025-12-30 21:40:00","做多 @ 2988.74\u003cbr\u003e2025-12-30 21:45:00","做空 @ 2987.42\u003cbr\u003e2025-12-30 21:55:00","做多 @ 2973.45\u003cbr\u003e2025-12-30 22:05:00","做空 @ 2968.49\u003cbr\u003e2025-12-30 22:10:00","做多 @ 2975.33\u003cbr\u003e2025-12-30 22:15:00","做空 @ 2977.65\u003cbr\u003e2025-12-30 22:25:00","做多 @ 2967.77\u003cbr\u003e2025-12-30 22:35:00","做空 @ 2993.03\u003cbr\u003e2025-12-30 22:55:00","做多 @ 2973.26\u003cbr\u003e2025-12-30 23:25:00","做空 @ 2976.57\u003cbr\u003e2025-12-30 23:30:00","做多 @ 2976.36\u003cbr\u003e2025-12-30 23:35:00","做空 @ 2979.47\u003cbr\u003e2025-12-30 23:40:00","做多 @ 2989.65\u003cbr\u003e2025-12-30 23:50:00","做空 @ 2990.73\u003cbr\u003e2025-12-30 23:55:00","做多 @ 2982.60\u003cbr\u003e2025-12-31 00:05:00","做空 @ 2981.69\u003cbr\u003e2025-12-31 00:10:00","做多 @ 2981.11\u003cbr\u003e2025-12-31 00:15:00","做空 @ 2987.23\u003cbr\u003e2025-12-31 00:20:00","做多 @ 2990.92\u003cbr\u003e2025-12-31 00:30:00","做空 @ 2980.07\u003cbr\u003e2025-12-31 00:35:00","做多 @ 2978.65\u003cbr\u003e2025-12-31 00:45:00","做空 @ 2982.77\u003cbr\u003e2025-12-31 01:05:00","做多 @ 2983.44\u003cbr\u003e2025-12-31 01:10:00","做空 @ 2976.57\u003cbr\u003e2025-12-31 01:15:00","做多 @ 2982.86\u003cbr\u003e2025-12-31 01:25:00","做空 @ 2980.42\u003cbr\u003e2025-12-31 01:30:00","做多 @ 2982.29\u003cbr\u003e2025-12-31 01:35:00","做空 @ 2983.64\u003cbr\u003e2025-12-31 01:40:00","做多 @ 2973.42\u003cbr\u003e2025-12-31 01:50:00","做空 @ 2973.64\u003cbr\u003e2025-12-31 01:55:00","做多 @ 2974.77\u003cbr\u003e2025-12-31 02:20:00","做空 @ 2975.20\u003cbr\u003e2025-12-31 02:25:00","做多 @ 2971.35\u003cbr\u003e2025-12-31 02:50:00","做空 @ 2968.94\u003cbr\u003e2025-12-31 03:00:00","做多 @ 2954.62\u003cbr\u003e2025-12-31 03:15:00","做空 @ 2968.70\u003cbr\u003e2025-12-31 03:35:00","做多 @ 2966.55\u003cbr\u003e2025-12-31 03:45:00","做空 @ 2968.12\u003cbr\u003e2025-12-31 03:50:00","做多 @ 2968.48\u003cbr\u003e2025-12-31 04:10:00","做空 @ 2967.90\u003cbr\u003e2025-12-31 04:15:00","做多 @ 2965.05\u003cbr\u003e2025-12-31 04:40:00","做空 @ 2963.20\u003cbr\u003e2025-12-31 04:45:00","做多 @ 2957.43\u003cbr\u003e2025-12-31 05:00:00","做空 @ 2959.24\u003cbr\u003e2025-12-31 05:10:00","做多 @ 2959.58\u003cbr\u003e2025-12-31 05:15:00","做空 @ 2962.30\u003cbr\u003e2025-12-31 05:20:00","做多 @ 2961.38\u003cbr\u003e2025-12-31 05:30:00","做空 @ 2961.43\u003cbr\u003e2025-12-31 05:35:00","做多 @ 2962.25\u003cbr\u003e2025-12-31 05:40:00","做空 @ 2965.97\u003cbr\u003e2025-12-31 05:55:00","做多 @ 2967.38\u003cbr\u003e2025-12-31 06:00:00","做空 @ 2968.14\u003cbr\u003e2025-12-31 06:05:00","做多 @ 2968.93\u003cbr\u003e2025-12-31 06:20:00","做空 @ 2969.48\u003cbr\u003e2025-12-31 06:25:00","做多 @ 2965.21\u003cbr\u003e2025-12-31 06:45:00","做空 @ 2966.12\u003cbr\u003e2025-12-31 06:50:00","做多 @ 2970.94\u003cbr\u003e2025-12-31 07:10:00","做空 @ 2970.35\u003cbr\u003e2025-12-31 07:15:00","做多 @ 2970.47\u003cbr\u003e2025-12-31 07:25:00","做空 @ 2971.45\u003cbr\u003e2025-12-31 07:30:00","做多 @ 2970.94\u003cbr\u003e2025-12-31 07:50:00","做空 @ 2972.19\u003cbr\u003e2025-12-31 08:00:00","做多 @ 2965.35\u003cbr\u003e2025-12-31 08:15:00","做空 @ 2965.00\u003cbr\u003e2025-12-31 08:25:00","做多 @ 2966.87\u003cbr\u003e2025-12-31 08:40:00","做空 @ 2967.61\u003cbr\u003e2025-12-31 08:45:00","做多 @ 2969.47\u003cbr\u003e2025-12-31 09:15:00","做空 @ 2978.08\u003cbr\u003e2025-12-31 09:25:00","做多 @ 2978.02\u003cbr\u003e2025-12-31 09:30:00","做空 @ 2981.11\u003cbr\u003e2025-12-31 09:35:00","做多 @ 2980.00\u003cbr\u003e2025-12-31 09:40:00","做空 @ 2978.63\u003cbr\u003e2025-12-31 09:55:00","做多 @ 2978.70\u003cbr\u003e2025-12-31 10:00:00","做空 @ 2979.30\u003cbr\u003e2025-12-31 10:05:00","做多 @ 2981.27\u003cbr\u003e2025-12-31 10:55:00","做空 @ 2979.48\u003cbr\u003e2025-12-31 11:05:00","做多 @ 2973.88\u003cbr\u003e2025-12-31 11:30:00","做空 @ 2971.62\u003cbr\u003e2025-12-31 11:35:00","做多 @ 2967.83\u003cbr\u003e2025-12-31 11:40:00","做空 @ 2967.34\u003cbr\u003e2025-12-31 11:45:00","做多 @ 2968.50\u003cbr\u003e2025-12-31 11:50:00","做空 @ 2969.13\u003cbr\u003e2025-12-31 12:00:00","做多 @ 2969.68\u003cbr\u003e2025-12-31 12:35:00","做空 @ 2970.05\u003cbr\u003e2025-12-31 12:45:00","做多 @ 2968.42\u003cbr\u003e2025-12-31 13:00:00","做空 @ 2976.77\u003cbr\u003e2025-12-31 13:30:00","做多 @ 2976.36\u003cbr\u003e2025-12-31 13:35:00","做空 @ 2976.49\u003cbr\u003e2025-12-31 13:40:00","做多 @ 2974.01\u003cbr\u003e2025-12-31 14:00:00","做空 @ 2974.27\u003cbr\u003e2025-12-31 14:05:00","做多 @ 2976.51\u003cbr\u003e2025-12-31 14:10:00","做空 @ 2976.35\u003cbr\u003e2025-12-31 14:15:00","做多 @ 2975.86\u003cbr\u003e2025-12-31 14:20:00","做空 @ 2975.79\u003cbr\u003e2025-12-31 14:25:00","做多 @ 2975.84\u003cbr\u003e2025-12-31 14:30:00","做空 @ 2976.72\u003cbr\u003e2025-12-31 14:35:00","做多 @ 2974.18\u003cbr\u003e2025-12-31 14:45:00","做空 @ 2974.60\u003cbr\u003e2025-12-31 14:50:00","做多 @ 2972.92\u003cbr\u003e2025-12-31 15:05:00","做空 @ 2973.23\u003cbr\u003e2025-12-31 15:10:00","做多 @ 2974.51\u003cbr\u003e2025-12-31 15:15:00","做空 @ 2970.51\u003cbr\u003e2025-12-31 15:20:00","做多 @ 2972.94\u003cbr\u003e2025-12-31 15:25:00","做空 @ 2973.49\u003cbr\u003e2025-12-31 15:30:00","做多 @ 2972.88\u003cbr\u003e2025-12-31 15:35:00","做空 @ 2974.20\u003cbr\u003e2025-12-31 15:50:00","做多 @ 2975.41\u003cbr\u003e2025-12-31 15:55:00","做空 @ 2976.39\u003cbr\u003e2025-12-31 16:05:00","做多 @ 2974.84\u003cbr\u003e2025-12-31 16:25:00","做空 @ 2975.24\u003cbr\u003e2025-12-31 16:30:00","做多 @ 2968.19\u003cbr\u003e2025-12-31 16:55:00","做空 @ 2967.97\u003cbr\u003e2025-12-31 17:00:00","做多 @ 2971.79\u003cbr\u003e2025-12-31 17:25:00","做空 @ 2971.96\u003cbr\u003e2025-12-31 17:30:00","做多 @ 2971.56\u003cbr\u003e2025-12-31 17:35:00","做空 @ 2973.15\u003cbr\u003e2025-12-31 17:40:00","做多 @ 2974.68\u003cbr\u003e2025-12-31 17:50:00","做空 @ 2978.66\u003cbr\u003e2025-12-31 18:20:00","做多 @ 2975.65\u003cbr\u003e2025-12-31 18:40:00","做空 @ 2978.16\u003cbr\u003e2025-12-31 18:50:00","做多 @ 2987.21\u003cbr\u003e2025-12-31 19:10:00","做空 @ 2984.41\u003cbr\u003e2025-12-31 19:15:00","做多 @ 2989.22\u003cbr\u003e2025-12-31 19:35:00","做空 @ 2996.71\u003cbr\u003e2025-12-31 19:45:00","做多 @ 2997.66\u003cbr\u003e2025-12-31 19:50:00","做空 @ 2999.13\u003cbr\u003e2025-12-31 20:00:00","做多 @ 2996.67\u003cbr\u003e2025-12-31 20:05:00","做空 @ 2996.53\u003cbr\u003e2025-12-31 20:10:00","做多 @ 2995.99\u003cbr\u003e2025-12-31 20:15:00","做空 @ 2997.78\u003cbr\u003e2025-12-31 20:20:00","做多 @ 2992.17\u003cbr\u003e2025-12-31 20:40:00","做空 @ 2989.86\u003cbr\u003e2025-12-31 20:45:00","做多 @ 2984.88\u003cbr\u003e2025-12-31 20:55:00","做空 @ 2985.03\u003cbr\u003e2025-12-31 21:00:00","做多 @ 2988.22\u003cbr\u003e2025-12-31 21:10:00","做空 @ 2994.03\u003cbr\u003e2025-12-31 21:25:00","做多 @ 2988.27\u003cbr\u003e2025-12-31 21:40:00","做空 @ 2996.06\u003cbr\u003e2025-12-31 21:55:00","做多 @ 2996.43\u003cbr\u003e2025-12-31 22:00:00","做空 @ 3013.45\u003cbr\u003e2025-12-31 22:15:00","做多 @ 2991.30\u003cbr\u003e2025-12-31 22:50:00","做空 @ 2989.85\u003cbr\u003e2025-12-31 22:55:00","做多 @ 2992.35\u003cbr\u003e2025-12-31 23:05:00","做空 @ 2983.92\u003cbr\u003e2025-12-31 23:10:00","做多 @ 2972.99\u003cbr\u003e2025-12-31 23:25:00","做空 @ 2974.62\u003cbr\u003e2025-12-31 23:30:00","做多 @ 2982.27\u003cbr\u003e2025-12-31 23:40:00","做空 @ 2983.63\u003cbr\u003e2025-12-31 23:50:00"],"x":["2025-12-29T22:25:00","2025-12-29T22:35:00","2025-12-29T22:45:00","2025-12-29T22:55:00","2025-12-29T23:00:00","2025-12-29T23:20:00","2025-12-29T23:35:00","2025-12-29T23:40:00","2025-12-29T23:45:00","2025-12-29T23:50:00","2025-12-29T23:55:00","2025-12-30T00:10:00","2025-12-30T00:30:00","2025-12-30T00:40:00","2025-12-30T00:55:00","2025-12-30T01:00:00","2025-12-30T01:10:00","2025-12-30T01:35:00","2025-12-30T01:40:00","2025-12-30T01:45:00","2025-12-30T01:55:00","2025-12-30T02:00:00","2025-12-30T02:05:00","2025-12-30T02:15:00","2025-12-30T02:20:00","2025-12-30T02:35:00","2025-12-30T02:40:00","2025-12-30T03:05:00","2025-12-30T03:10:00","2025-12-30T03:20:00","2025-12-30T03:30:00","2025-12-30T03:40:00","2025-12-30T04:05:00","2025-12-30T04:15:00","2025-12-30T04:30:00","2025-12-30T04:35:00","2025-12-30T04:45:00","2025-12-30T05:00:00","2025-12-30T05:10:00","2025-12-30T05:35:00","2025-12-30T05:40:00","2025-12-30T05:50:00","2025-12-30T05:55:00","2025-12-30T06:00:00","2025-12-30T06:15:00","2025-12-30T06:20:00","2025-12-30T06:30:00","2025-12-30T07:05:00","2025-12-30T07:10:00","2025-12-30T07:25:00","2025-12-30T07:30:00","2025-12-30T07:35:00","2025-12-30T07:45:00","2025-12-30T08:05:00","2025-12-30T08:20:00","2025-12-30T08:35:00","2025-12-30T08:45:00","2025-12-30T09:00:00","2025-12-30T09:05:00","2025-12-30T09:25:00","2025-12-30T09:40:00","2025-12-30T09:45:00","2025-12-30T10:00:00","2025-12-30T10:05:00","2025-12-30T10:10:00","2025-12-30T10:35:00","2025-12-30T10:40:00","2025-12-30T10:55:00","2025-12-30T11:00:00","2025-12-30T11:05:00","2025-12-30T11:10:00","2025-12-30T11:20:00","2025-12-30T11:40:00","2025-12-30T11:45:00","2025-12-30T11:50:00","2025-12-30T11:55:00","2025-12-30T12:05:00","2025-12-30T12:10:00","2025-12-30T12:15:00","2025-12-30T13:05:00","2025-12-30T13:10:00","2025-12-30T13:25:00","2025-12-30T13:30:00","2025-12-30T13:35:00","2025-12-30T13:40:00","2025-12-30T13:45:00","2025-12-30T13:55:00","2025-12-30T14:05:00","2025-12-30T14:10:00","2025-12-30T14:15:00","2025-12-30T14:25:00","2025-12-30T14:35:00","2025-12-30T14:55:00","2025-12-30T15:25:00","2025-12-30T15:30:00","2025-12-30T15:35:00","2025-12-30T15:40:00","2025-12-30T15:50:00","2025-12-30T15:55:00","2025-12-30T16:05:00","2025-12-30T16:10:00","2025-12-30T16:15:00","2025-12-30T16:20:00","2025-12-30T16:30:00","2025-12-30T16:35:00","2025-12-30T16:45:00","2025-12-30T17:05:00","2025-12-30T17:10:00","2025-12-30T17:15:00","2025-12-30T17:25:00","2025-12-30T17:30:00","2025-12-30T17:35:00","2025-12-30T17:40:00","2025-12-30T17:50:00","2025-12-30T17:55:00","2025-12-30T18:20:00","2025-12-30T18:25:00","2025-12-30T18:50:00","2025-12-30T19:00:00","2025-12-30T19:15:00","2025-12-30T19:35:00","2025-12-30T19:45:00","2025-12-30T19:50:00","2025-12-30T20:10:00","2025-12-30T20:15:00","2025-12-30T20:40:00","2025-12-30T20:45:00","2025-12-30T21:00:00","2025-12-30T21:10:00","2025-12-30T21:15:00","2025-12-30T21:20:00","2025-12-30T21:30:00","2025-12-30T21:35:00","2025-12-30T21:40:00","2025-12-30T21:55:00","2025-12-30T22:00:00","2025-12-30T22:05:00","2025-12-30T22:20:00","2025-12-30T22:25:00","2025-12-30T22:45:00","2025-12-30T22:50:00","2025-12-30T23:10:00","2025-12-30T23:15:00","2025-12-30T23:25:00","2025-12-30T23:30:00","2025-12-30T23:50:00","2025-12-31T00:00:00","2025-12-31T00:15:00","2025-12-31T00:25:00","2025-12-31T00:40:00","2025-12-31T00:45:00","2025-12-31T01:15:00","2025-12-31T01:25:00","2025-12-31T01:30:00","2025-12-31T01:35:00","2025-12-31T01:40:00","2025-12-31T01:55:00","2025-12-31T02:00:00","2025-12-31T02:05:00","2025-12-31T02:55:00","2025-12-31T03:05:00","2025-12-31T03:30:00","2025-12-31T03:35:00","2025-12-31T03:40:00","2025-12-31T03:45:00","2025-12-31T03:50:00","2025-12-31T04:00:00","2025-12-31T04:35:00","2025-12-31T04:45:00","2025-12-31T05:00:00","2025-12-31T05:30:00","2025-12-31T05:35:00","2025-12-31T05:40:00","2025-12-31T06:00:00","2025-12-31T06:05:00","2025-12-31T06:10:00","2025-12-31T06:15:00","2025-12-31T06:20:00","2025-12-31T06:25:00","2025-12-31T06:30:00","2025-12-31T06:35:00","2025-12-31T06:45:00","2025-12-31T06:50:00","2025-12-31T07:05:00","2025-12-31T07:10:00","2025-12-31T07:15:00","2025-12-31T07:20:00","2025-12-31T07:25:00","2025-12-31T07:30:00","2025-12-31T07:35:00","2025-12-31T07:50:00","2025-12-31T07:55:00","2025-12-31T08:05:00","2025-12-31T08:25:00","2025-12-31T08:30:00","2025-12-31T08:55:00","2025-12-31T09:00:00","2025-12-31T09:25:00","2025-12-31T09:30:00","2025-12-31T09:35:00","2025-12-31T09:40:00","2025-12-31T09:50:00","2025-12-31T10:20:00","2025-12-31T10:40:00","2025-12-31T10:50:00","2025-12-31T11:10:00","2025-12-31T11:15:00","2025-12-31T11:35:00","2025-12-31T11:45:00","2025-12-31T11:50:00","2025-12-31T12:00:00","2025-12-31T12:05:00","2025-12-31T12:10:00","2025-12-31T12:15:00","2025-12-31T12:20:00","2025-12-31T12:40:00","2025-12-31T12:45:00","2025-12-31T12:55:00","2025-12-31T13:00:00","2025-12-31T13:10:00","2025-12-31T13:25:00","2025-12-31T13:40:00","2025-12-31T13:55:00","2025-12-31T14:00:00","2025-12-31T14:15:00","2025-12-31T14:50:00","2025-12-31T14:55:00","2025-12-31T15:05:00","2025-12-31T15:10:00","2025-12-31T15:25:00","2025-12-31T15:30:00","2025-12-31T15:40:00","2025-12-31T15:50:00"],"y":[2936.2033333333334,2940.2566666666667,2939.96,2939.036666666667,2936.5833333333335,2942.2299999999996,2934.4533333333334,2932.73,2932.58,2935.62,2935.766666666667,2938.5633333333335,2935.65,2932.0099999999998,2936.0266666666666,2936.953333333333,2932.9066666666668,2928.8433333333332,2929.2333333333336,2933.326666666667,2935.94,2935.503333333333,2931.7333333333336,2934.2900000000004,2936.4766666666665,2929.246666666667,2928.92,2925.633333333333,2923.7033333333334,2930.8933333333334,2938.8833333333337,2938.34,2951.5633333333335,2947.243333333333,2954.73,2954.6766666666667,2953.73,2945.4733333333334,2945.8233333333333,2938.883333333333,2936.8133333333335,2939.9199999999996,2940.4066666666668,2940.563333333333,2945.0266666666666,2945.7033333333334,2944.2933333333335,2947.2933333333335,2948.27,2945.89,2945.3066666666664,2947.646666666667,2949.1766666666667,2982.5,2990.2233333333334,2974.9266666666667,2978.5033333333336,2977.1633333333334,2978.3166666666666,2971.94,2974.0933333333332,2979.4833333333336,2983.96,2982.19,2982.366666666667,2978.42,2978.26,2976.4466666666667,2975.496666666667,2975.72,2975.64,2975.4533333333334,2978.5333333333333,2978.49,2980.7566666666667,2976.65,2980.0566666666664,2979.903333333333,2981.4366666666665,2982.68,2981.9366666666665,2986.0466666666666,2986.883333333333,2985.1466666666665,2985.983333333333,2988.736666666667,2987.42,2973.4533333333334,2968.4866666666667,2975.3333333333335,2977.6466666666665,2967.766666666667,2993.0333333333333,2973.26,2976.5666666666666,2976.36,2979.4733333333334,2989.65,2990.7266666666665,2982.596666666667,2981.6866666666665,2981.1133333333332,2987.23,2990.92,2980.0666666666666,2978.653333333333,2982.766666666667,2983.4433333333336,2976.57,2982.8633333333337,2980.416666666667,2982.29,2983.6433333333334,2973.42,2973.6366666666668,2974.773333333333,2975.1966666666667,2971.3533333333335,2968.9433333333336,2954.6200000000003,2968.6966666666667,2966.5466666666666,2968.116666666667,2968.476666666667,2967.8966666666665,2965.0533333333333,2963.2033333333334,2957.43,2959.2433333333333,2959.5833333333335,2962.2999999999997,2961.38,2961.4300000000003,2962.25,2965.9700000000003,2967.3766666666666,2968.1433333333334,2968.9300000000003,2969.4766666666665,2965.21,2966.116666666667,2970.943333333333,2970.346666666667,2970.4733333333334,2971.4533333333334,2970.94,2972.1866666666665,2965.346666666667,2965.0033333333336,2966.8733333333334,2967.6099999999997,2969.47,2978.0833333333335,2978.02,2981.1133333333332,2980.0033333333336,2978.63,2978.6966666666667,2979.3033333333333,2981.273333333333,2979.4766666666665,2973.883333333333,2971.616666666667,2967.8333333333335,2967.34,2968.4966666666664,2969.13,2969.6766666666667,2970.0466666666666,2968.42,2976.77,2976.3566666666666,2976.49,2974.0133333333333,2974.2733333333335,2976.5066666666667,2976.3533333333335,2975.86,2975.79,2975.84,2976.7166666666667,2974.1833333333334,2974.6,2972.92,2973.226666666667,2974.51,2970.5066666666667,2972.943333333333,2973.4933333333333,2972.883333333333,2974.1966666666667,2975.413333333333,2976.3866666666668,2974.8366666666666,2975.2366666666667,2968.1933333333336,2967.9666666666667,2971.786666666667,2971.9566666666665,2971.5633333333335,2973.15,2974.6800000000003,2978.6600000000003,2975.646666666667,2978.16,2987.206666666667,2984.4100000000003,2989.2233333333334,2996.706666666667,2997.6633333333334,2999.1266666666666,2996.67,2996.5333333333333,2995.99,2997.7833333333333,2992.173333333333,2989.8566666666666,2984.883333333333,2985.0266666666666,2988.2233333333334,2994.0266666666666,2988.27,2996.06,2996.4333333333334,3013.4466666666667,2991.2966666666666,2989.8533333333335,2992.353333333333,2983.9166666666665,2972.9866666666667,2974.616666666667,2982.2733333333335,2983.63],"type":"scatter"}], {"template":{"data":{"histogram2dcontour":[{"type":"histogram2dcontour","colorbar":{"outlinewidth":0,"ticks":""},"colorscale":[[0.0,"#0d0887"],[0.1111111111111111,"#46039f"],[0.2222222222222222,"#7201a8"],[0.3333333333333333,"#9c179e"],[0.4444444444444444,"#bd3786"],[0.5555555555555556,"#d8576b"],[0.6666666666666666,"#ed7953"],[0.7777777777777778,"#fb9f3a"],[0.8888888888888888,"#fdca26"],[1.0,"#f0f921"]]}],"choropleth":[{"type":"choropleth","colorbar":{"outlinewidth":0,"ticks":""}}],"histogram2d":[{"type":"histogram2d","colorbar":{"outlinewidth":0,"ticks":""},"colorscale":[[0.0,"#0d0887"],[0.1111111111111111,"#46039f"],[0.2222222222222222,"#7201a8"],[0.3333333333333333,"#9c179e"],[0.4444444444444444,"#bd3786"],[0.5555555555555556,"#d8576b"],[0.6666666666666666,"#ed7953"],[0.7777777777777778,"#fb9f3a"],[0.8888888888888888,"#fdca26"],[1.0,"#f0f921"]]}],"heatmap":[{"type":"heatmap","colorbar":{"outlinewidth":0,"ticks":""},"colorscale":[[0.0,"#0d0887"],[0.1111111111111111,"#46039f"],[0.2222222222222222,"#7201a8"],[0.3333333333333333,"#9c179e"],[0.4444444444444444,"#bd3786"],[0.5555555555555556,"#d8576b"],[0.6666666666666666,"#ed7953"],[0.7777777777777778,"#fb9f3a"],[0.8888888888888888,"#fdca26"],[1.0,"#f0f921"]]}],"contourcarpet":[{"type":"contourcarpet","colorbar":{"outlinewidth":0,"ticks":""}}],"contour":[{"type":"contour","colorbar":{"outlinewidth":0,"ticks":""},"colorscale":[[0.0,"#0d0887"],[0.1111111111111111,"#46039f"],[0.2222222222222222,"#7201a8"],[0.3333333333333333,"#9c179e"],[0.4444444444444444,"#bd3786"],[0.5555555555555556,"#d8576b"],[0.6666666666666666,"#ed7953"],[0.7777777777777778,"#fb9f3a"],[0.8888888888888888,"#fdca26"],[1.0,"#f0f921"]]}],"surface":[{"type":"surface","colorbar":{"outlinewidth":0,"ticks":""},"colorscale":[[0.0,"#0d0887"],[0.1111111111111111,"#46039f"],[0.2222222222222222,"#7201a8"],[0.3333333333333333,"#9c179e"],[0.4444444444444444,"#bd3786"],[0.5555555555555556,"#d8576b"],[0.6666666666666666,"#ed7953"],[0.7777777777777778,"#fb9f3a"],[0.8888888888888888,"#fdca26"],[1.0,"#f0f921"]]}],"mesh3d":[{"type":"mesh3d","colorbar":{"outlinewidth":0,"ticks":""}}],"scatter":[{"fillpattern":{"fillmode":"overlay","size":10,"solidity":0.2},"type":"scatter"}],"parcoords":[{"type":"parcoords","line":{"colorbar":{"outlinewidth":0,"ticks":""}}}],"scatterpolargl":[{"type":"scatterpolargl","marker":{"colorbar":{"outlinewidth":0,"ticks":""}}}],"bar":[{"error_x":{"color":"#2a3f5f"},"error_y":{"color":"#2a3f5f"},"marker":{"line":{"color":"#E5ECF6","width":0.5},"pattern":{"fillmode":"overlay","size":10,"solidity":0.2}},"type":"bar"}],"scattergeo":[{"type":"scattergeo","marker":{"colorbar":{"outlinewidth":0,"ticks":""}}}],"scatterpolar":[{"type":"scatterpolar","marker":{"colorbar":{"outlinewidth":0,"ticks":""}}}],"histogram":[{"marker":{"pattern":{"fillmode":"overlay","size":10,"solidity":0.2}},"type":"histogram"}],"scattergl":[{"type":"scattergl","marker":{"colorbar":{"outlinewidth":0,"ticks":""}}}],"scatter3d":[{"type":"scatter3d","line":{"colorbar":{"outlinewidth":0,"ticks":""}},"marker":{"colorbar":{"outlinewidth":0,"ticks":""}}}],"scattermap":[{"type":"scattermap","marker":{"colorbar":{"outlinewidth":0,"ticks":""}}}],"scattermapbox":[{"type":"scattermapbox","marker":{"colorbar":{"outlinewidth":0,"ticks":""}}}],"scatterternary":[{"type":"scatterternary","marker":{"colorbar":{"outlinewidth":0,"ticks":""}}}],"scattercarpet":[{"type":"scattercarpet","marker":{"colorbar":{"outlinewidth":0,"ticks":""}}}],"carpet":[{"aaxis":{"endlinecolor":"#2a3f5f","gridcolor":"white","linecolor":"white","minorgridcolor":"white","startlinecolor":"#2a3f5f"},"baxis":{"endlinecolor":"#2a3f5f","gridcolor":"white","linecolor":"white","minorgridcolor":"white","startlinecolor":"#2a3f5f"},"type":"carpet"}],"table":[{"cells":{"fill":{"color":"#EBF0F8"},"line":{"color":"white"}},"header":{"fill":{"color":"#C8D4E3"},"line":{"color":"white"}},"type":"table"}],"barpolar":[{"marker":{"line":{"color":"#E5ECF6","width":0.5},"pattern":{"fillmode":"overlay","size":10,"solidity":0.2}},"type":"barpolar"}],"pie":[{"automargin":true,"type":"pie"}]},"layout":{"autotypenumbers":"strict","colorway":["#636efa","#EF553B","#00cc96","#ab63fa","#FFA15A","#19d3f3","#FF6692","#B6E880","#FF97FF","#FECB52"],"font":{"color":"#2a3f5f"},"hovermode":"closest","hoverlabel":{"align":"left"},"paper_bgcolor":"white","plot_bgcolor":"#E5ECF6","polar":{"bgcolor":"#E5ECF6","angularaxis":{"gridcolor":"white","linecolor":"white","ticks":""},"radialaxis":{"gridcolor":"white","linecolor":"white","ticks":""}},"ternary":{"bgcolor":"#E5ECF6","aaxis":{"gridcolor":"white","linecolor":"white","ticks":""},"baxis":{"gridcolor":"white","linecolor":"white","ticks":""},"caxis":{"gridcolor":"white","linecolor":"white","ticks":""}},"coloraxis":{"colorbar":{"outlinewidth":0,"ticks":""}},"colorscale":{"sequential":[[0.0,"#0d0887"],[0.1111111111111111,"#46039f"],[0.2222222222222222,"#7201a8"],[0.3333333333333333,"#9c179e"],[0.4444444444444444,"#bd3786"],[0.5555555555555556,"#d8576b"],[0.6666666666666666,"#ed7953"],[0.7777777777777778,"#fb9f3a"],[0.8888888888888888,"#fdca26"],[1.0,"#f0f921"]],"sequentialminus":[[0.0,"#0d0887"],[0.1111111111111111,"#46039f"],[0.2222222222222222,"#7201a8"],[0.3333333333333333,"#9c179e"],[0.4444444444444444,"#bd3786"],[0.5555555555555556,"#d8576b"],[0.6666666666666666,"#ed7953"],[0.7777777777777778,"#fb9f3a"],[0.8888888888888888,"#fdca26"],[1.0,"#f0f921"]],"diverging":[[0,"#8e0152"],[0.1,"#c51b7d"],[0.2,"#de77ae"],[0.3,"#f1b6da"],[0.4,"#fde0ef"],[0.5,"#f7f7f7"],[0.6,"#e6f5d0"],[0.7,"#b8e186"],[0.8,"#7fbc41"],[0.9,"#4d9221"],[1,"#276419"]]},"xaxis":{"gridcolor":"white","linecolor":"white","ticks":"","title":{"standoff":15},"zerolinecolor":"white","automargin":true,"zerolinewidth":2},"yaxis":{"gridcolor":"white","linecolor":"white","ticks":"","title":{"standoff":15},"zerolinecolor":"white","automargin":true,"zerolinewidth":2},"scene":{"xaxis":{"backgroundcolor":"#E5ECF6","gridcolor":"white","linecolor":"white","showbackground":true,"ticks":"","zerolinecolor":"white","gridwidth":2},"yaxis":{"backgroundcolor":"#E5ECF6","gridcolor":"white","linecolor":"white","showbackground":true,"ticks":"","zerolinecolor":"white","gridwidth":2},"zaxis":{"backgroundcolor":"#E5ECF6","gridcolor":"white","linecolor":"white","showbackground":true,"ticks":"","zerolinecolor":"white","gridwidth":2}},"shapedefaults":{"line":{"color":"#2a3f5f"}},"annotationdefaults":{"arrowcolor":"#2a3f5f","arrowhead":0,"arrowwidth":1},"geo":{"bgcolor":"white","landcolor":"#E5ECF6","subunitcolor":"white","showland":true,"showlakes":true,"lakecolor":"white"},"title":{"x":0.05},"mapbox":{"style":"light"}}},"xaxis":{"rangeslider":{"visible":true},"type":"date","showgrid":false},"yaxis":{"showgrid":false,"fixedrange":false},"font":{"color":"#d1d4dc"},"title":{"text":"三分之一回归策略回测(交互式)"},"plot_bgcolor":"#0b0e11","paper_bgcolor":"#0b0e11","hovermode":"x unified","dragmode":"zoom"}, {"responsive": true} ) }; </script> </div>
</body>
</html>